aboutsummaryrefslogtreecommitdiffstats
path: root/src/_locales/pl/messages.json
blob: cd06493ab5de5c3a0a045830651c813bc0beea47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
{
  "extName":{
    "message":"uBlock",
    "description":"extension name."
  },
  "extShortDesc":{
    "message":"Nareszcie, wydajne blokowanie reklam. Niskie użycie procesora i pamięci.",
    "description":"this will be in the chrome web store: must be 132 characters or less"
  },
  "dashboardName":{
    "message":"uBlock — Kokpit",
    "description":"English: uBlock — Dashboard"
  },
  "settingsPageName":{
    "message":"Ustawienia",
    "description":"appears as tab name in dashboard"
  },
  "3pPageName":{
    "message":"Lista filtrów",
    "description":"appears as tab name in dashboard"
  },
  "1pPageName":{
    "message":"Moje filtry",
    "description":"appears as tab name in dashboard"
  },
  "rulesPageName":{
    "message":"Moje reguły",
    "description":"appears as tab name in dashboard"
  },
  "whitelistPageName":{
    "message":"Biała lista",
    "description":"appears as tab name in dashboard"
  },
  "statsPageName":{
    "message":"uBlock — Dziennik żądań sieciowych",
    "description":"Title for the network request log window"
  },
  "aboutPageName":{
    "message":"O rozszerzeniu",
    "description":"appears as tab name in dashboard"
  },
  "popupPowerSwitchInfo":{
    "message":"Kliknij, aby włączyć\/wyłączyć uBlock dla tej witryny.\n\nKliknij z wciśniętym klawiszem Ctrl, aby wyłączyć uBlock tylko dla tej strony.",
    "description":"English: Click: disable\/enable uBlock for this site.\n\nCtrl+click: disable uBlock only on this page."
  },
  "popupBlockedRequestPrompt":{
    "message":"zablokowane żądania",
    "description":"English: requests blocked"
  },
  "popupBlockedOnThisPagePrompt":{
    "message":"na tej stronie",
    "description":"English: on this page"
  },
  "popupBlockedStats":{
    "message":"{{count}} ({{percent}}%)",
    "description":"Example: 15 or 13%"
  },
  "popupBlockedSinceInstallPrompt":{
    "message":"od instalacji",
    "description":"English: since install"
  },
  "popupOr":{
    "message":"lub",
    "description":"English: or"
  },
  "popupTipDashboard":{
    "message":"Kliknij, aby otworzyć kokpit",
    "description":"English: Click to open the dashboard"
  },
  "popupTipPicker":{
    "message":"Przejdź do trybu zaznaczania elementów",
    "description":"English: Enter element picker mode"
  },
  "popupTipLog":{
    "message":"Przejdź do dziennika żądań",
    "description":"English: Go to request log"
  },
  "popupSiteInlineScriptEnabled":{
    "message":"Wbudowane tagi <code>script<\/code> są <b>dozwolone<\/b> na tej stronie",
    "description":""
  },
  "popupSiteInlineScriptDisabled":{
    "message":"Wbudowane tagi <code>script<\/code> są <b>zablokowane<\/b> na tej stronie",
    "description":""
  },
  "popupSite1pScriptEnabled":{
    "message":"Skrypty pochodzące bezpośrednio z tej strony są <b>dozwolone<\/b> na tej stronie",
    "description":""
  },
  "popupSite1pScriptDisabled":{
    "message":"Skrypty pochodzące bezpośrednio z tej strony są <b>zablokowane<\/b> na tej stronie",
    "description":""
  },
  "popupSite3pScriptEnabled":{
    "message":"Skrypty pochodzące ze stron zewnętrznych są <b>dozwolone<\/b> na tej stronie",
    "description":""
  },
  "popupSite3pScriptDisabled":{
    "message":"Skrypty pochodzące ze stron zewnętrznych są <b>zablokowane<\/b> na tej stronie",
    "description":""
  },
  "popupSite1pFrameEnabled":{
    "message":"Ramki pochodzące bezpośrednio z tej strony są <b>dozwolone<\/b> na tej stronie",
    "description":""
  },
  "popupSite1pFrameDisabled":{
    "message":"Ramki pochodzące bezpośrednio z tej strony są <b>zablokowane<\/b> na tej stronie",
    "description":""
  },
  "popupSite3pFrameEnabled":{
    "message":"Ramki pochodzące ze stron zewnętrznych są <b>dozwolone<\/b> na tej stronie",
    "description":""
  },
  "popupSite3pFrameDisabled":{
    "message":"Ramki pochodzące ze stron zewnętrznych są <b>zablokowane<\/b> na tej stronie",
    "description":""
  },
  "popupDefaultInlineScriptEnabled":{
    "message":"Wbudowane tagi <code>script<\/code> są domyślnie wszędzie <b>dozwolone<\/b>",
    "description":""
  },
  "popupDefaultInlineScriptDisabled":{
    "message":"Wbudowane tagi <code>script<\/code> są domyślnie wszędzie <b>zablokowane<\/b>",
    "description":""
  },
  "popupDefault1pScriptEnabled":{
    "message":"Skrypty pochodzące bezpośrednio z tej strony są domyślnie <b>dozwolone<\/b>",
    "description":""
  },
  "popupDefault1pScriptDisabled":{
    "message":"Skrypty pochodzące bezpośrednio z tej strony są domyślnie <b>zablokowane<\/b>",
    "description":""
  },
  "popupDefault3pScriptEnabled":{
    "message":"Skrypty pochodzące ze stron zewnętrznych są domyślnie <b>dozwolone<\/b>",
    "description":""
  },
  "popupDefault3pScriptDisabled":{
    "message":"Skrypty pochodzące ze stron zewnętrznych są domyślnie <b>zablokowane<\/b>",
    "description":""
  },
  "popupDefault1pFrameEnabled":{
    "message":"Ramki pochodzące bezpośrednio z tej strony są domyślnie <b>dozwolone<\/b>",
    "description":""
  },
  "popupDefault1pFrameDisabled":{
    "message":"Ramki pochodzące bezpośrednio z tej strony są domyślnie <b>zablokowane<\/b>",
    "description":""
  },
  "popupDefault3pFrameEnabled":{
    "message":"Ramki pochodzące ze stron zewnętrznych są domyślnie <b>dozwolone<\/b>",
    "description":""
  },
  "popupDefault3pFrameDisabled":{
    "message":"Ramki pochodzące ze stron zewnętrznych są domyślnie <b>zablokowane<\/b>",
    "description":""
  },
  "popupAnyRulePrompt":{
    "message":"wszystko",
    "description":""
  },
  "popupImageRulePrompt":{
    "message":"obrazki",
    "description":""
  },
  "popup3pAnyRulePrompt":{
    "message":"ze stron zewnętrznych",
    "description":""
  },
  "popupInlineScriptRulePrompt":{
    "message":"zagnieżdżone skrypty",
    "description":""
  },
  "popup1pScriptRulePrompt":{
    "message":"skrypty pochodzące bezpośrednio z tej strony",
    "description":""
  },
  "popup3pScriptRulePrompt":{
    "message":"skrypty pochodzące ze stron zewnętrznych",
    "description":""
  },
  "popup3pFrameRulePrompt":{
    "message":"ramki pochodzące ze stron zewnętrznych",
    "description":""
  },
  "popupHitDomainCountPrompt":{
    "message":"podłączonych domen",
    "description":"appears in popup"
  },
  "popupHitDomainCount":{
    "message":"{{count}} z {{total}}",
    "description":"appears in popup"
  },
  "pickerCreate":{
    "message":"Utwórz",
    "description":"English: Create"
  },
  "pickerPick":{
    "message":"Wybierz",
    "description":"English: Pick"
  },
  "pickerQuit":{
    "message":"Zamknij",
    "description":"English: Quit"
  },
  "pickerNetFilters":{
    "message":"Filtry sieciowe",
    "description":"English: Net filters"
  },
  "pickerCosmeticFilters":{
    "message":"Filtry kosmetyczne",
    "description":"English: Cosmetic filters"
  },
  "pickerCosmeticFiltersHint":{
    "message":"Kliknięcie, kliknięcie z Ctrl",
    "description":"English: Click, Ctrl-click"
  },
  "pickerContextMenuEntry":{
    "message":"Blokuj element",
    "description":"English: Block element"
  },
  "settingsCollapseBlockedPrompt":{
    "message":"Ukryj pozostałości po zablokowanych elementach",
    "description":"English: Hide placeholders of blocked elements"
  },
  "settingsIconBadgePrompt":{
    "message":"Pokaż liczbę zablokowanych żądań przy ikonie",
    "description":"English: Show the number of blocked requests on the icon"
  },
  "settingsContextMenuPrompt":{
    "message":"Używaj menu kontekstowego, gdzie to możliwe",
    "description":"English: Make use of context menu where appropriate"
  },
  "settingsAdvancedUserPrompt":{
    "message":"Jestem zaawansowanym użytkownikiem (<a href='https:\/\/github.com\/gorhill\/uBlock\/wiki\/Advanced-user-features'>Więcej<\/a>)",
    "description":"English: "
  },
  "settingsExperimentalPrompt":{
    "message":"Włącz funkcje eksperymentalne (<a href='https:\/\/github.com\/gorhill\/uBlock\/wiki\/Experimental-features'>Więcej<\/a>)",
    "description":"English: Enable experimental features"
  },
  "settingsStorageUsed":{
    "message":"Użycie pamięci masowej: {{value}} bajtów",
    "description":"English: Storage used: {{}} bytes"
  },
  "settingsLastRestorePrompt":{
    "message":"Ostatnie przywrócenie:",
    "description":"English: Last restore:"
  },
  "settingsLastBackupPrompt":{
    "message":"Ostatnia kopia zapasowa:",
    "description":"English: Last backup:"
  },
  "3pListsOfBlockedHostsPrompt":{
    "message":"{{netFilterCount}} filtry sieciowe + {{cosmeticFilterCount}} filtry kosmetyczne z:",
    "description":"English: {{netFilterCount}} network filters + {{cosmeticFilterCount}} cosmetic filters from:"
  },
  "3pListsOfBlockedHostsPerListStats":{
    "message":"{{used}} użytych z {{total}}",
    "description":"English: {{used}} used out of {{total}}"
  },
  "3pAutoUpdatePrompt1":{
    "message":"Automatycznie aktualizuj listy filtrów.",
    "description":"English: Auto-update filter lists."
  },
  "3pUpdateNow":{
    "message":"Zaktualizuj teraz",
    "description":"English: Update now"
  },
  "3pPurgeAll":{
    "message":"Wyczyść całą pamięć podręczną",
    "description":"English: Purge all caches"
  },
  "3pParseAllABPHideFiltersPrompt1":{
    "message":"Przetwarzaj i egzekwuj filtry kosmetyczne.",
    "description":"English: Parse and enforce Adblock+ element hiding filters."
  },
  "3pParseAllABPHideFiltersInfo":{
    "message":"<p>Opcja ta włącza przetwarzanie i używanie filtrów <a href=\"https:\/\/adblockplus.org\/en\/faq_internal#elemhide\">ukrywania elementów kompatybilnych z Adblock Plus<\/a>. Filtry te są głównie kosmetyczne, służą do ukrycia elementów uważanych za wizualne uciążliwe, które nie mogą zostać ukryte przez blokowanie żądań sieciowych.<\/p><p>Włączenie tej funkcji zwiększa zużycie pamięci przez <i>uBlock<\/i>.<\/p>",
    "description":"English: see English messages.json"
  },
  "3pListsOfBlockedHostsHeader":{
    "message":"Lista blokowanych hostów",
    "description":"English: Lists of blocked hosts"
  },
  "3pApplyChanges":{
    "message":"Zastosuj zmiany",
    "description":"English: Apply changes"
  },
  "3pGroupAds":{
    "message":"Reklamy",
    "description":"English: Ads"
  },
  "3pGroupPrivacy":{
    "message":"Prywatność",
    "description":"English: Privacy"
  },
  "3pGroupMalware":{
    "message":"Szkodliwe domeny",
    "description":"English: Malware domains"
  },
  "3pGroupSocial":{
    "message":"Media społecznościowe",
    "description":"English: Social"
  },
  "3pGroupMultipurpose":{
    "message":"Wielofunkcyjne",
    "description":"English: Multipurpose"
  },
  "3pGroupRegions":{
    "message":"Regiony, języki",
    "description":"English: Regions, languages"
  },
  "3pGroupCustom":{
    "message":"Niestandardowe",
    "description":"English: Custom"
  },
  "3pExternalListsHint":{
    "message":"Jeden URL na linię. Linie poprzedzone znakiem &lsquo;!&rsquo; będą pominięte. Błędne URL zostaną zignorowane.",
    "description":"English: One URL per line. Lines prefixed with &lsquo;!&rsquo; will be ignored. Invalid URLs will be silently ignored."
  },
  "3pExternalListsApply":{
    "message":"Zastosuj",
    "description":"English: Parse"
  },
  "3pExternalListPurge":{
    "message":"wyczyść pamięć podręczną",
    "description":"English: purge cache"
  },
  "3pExternalListNew":{
    "message":"dostępna nowa wersja",
    "description":"English: new version available"
  },
  "3pExternalListObsolete":{
    "message":"nieaktualne",
    "description":"English: outdated"
  },
  "3pLastUpdate":{
    "message":"Zaktualizowano: {{ago}}",
    "description":"English: Last update: {{ago}}, where 'ago' will be replaced with something like '2 days ago'"
  },
  "1pFormatHint":{
    "message":"Jeden filtr na linię. Filtrem może być nazwa hosta, albo filtr kompatybilny z Adblock Plus. Linie poprzedzone znakiem &lsquo;!&rsquo; będą ignorowane.",
    "description":"English: One filter per line. A filter can be a plain hostname, or an Adblock Plus-compatible filter. Lines prefixed with &lsquo;!&rsquo; will be ignored."
  },
  "1pImport":{
    "message":"Importuj i dołącz",
    "description":"English: Import and append"
  },
  "1pExport":{
    "message":"Eksportuj",
    "description":"English: Export"
  },
  "1pExportFilename":{
    "message":"my-ublock-custom-filters_{{datetime}}.txt",
    "description":"English: my-ublock-static-filters_{{datetime}}.txt"
  },
  "1pApplyChanges":{
    "message":"Zastosuj zmiany",
    "description":"English: Apply changes"
  },
  "rulesPermanentHeader":{
    "message":"Reguły stałe",
    "description":"header"
  },
  "rulesTemporaryHeader":{
    "message":"Reguły tymczasowe",
    "description":"header"
  },
  "rulesRevert":{
    "message":"Przywróć",
    "description":"This will remove all temporary rules"
  },
  "rulesCommit":{
    "message":"Zatwierdź",
    "description":"This will persist temporary rules"
  },
  "rulesEdit":{
    "message":"Edytuj",
    "description":"Will enable manual-edit mode (textarea)"
  },
  "rulesEditSave":{
    "message":"Zapisz",
    "description":"Will save manually-edited content and exit manual-edit mode"
  },
  "rulesEditDiscard":{
    "message":"Odrzuć",
    "description":"Will discard manually-edited content and exit manual-edit mode"
  },
  "rulesImport":{
    "message":"Importuj z pliku...",
    "description":""
  },
  "rulesExport":{
    "message":"Eksportuj do pliku...",
    "description":""
  },
  "rulesDefaultFileName":{
    "message":"my-ublock-dynamic-rules_{{datetime}}.txt",
    "description":"default file name to use"
  },
  "rulesHint":{
    "message":"Lista twoich reguł dynamicznego filtrowania.",
    "description":"English: List of your dynamic filtering rules."
  },
  "rulesFormatHint":{
    "message":"Składnia reguły: <code>źródło przeznaczenie typ akcja<\/code> (<a href='https:\/\/github.com\/gorhill\/uBlock\/wiki\/Dynamic-filtering:-rule-syntax'>pełna dokumentacja<\/a>).",
    "description":"English: dynamic rule syntax and full documentation."
  },
  "whitelistPrompt":{
    "message":"Twoja lista nazw hostów, na których µBlock zostanie wyłączony. Jeden wpis na linię. Błędne nazwy hostów zostaną zignorowane.",
    "description":"English: Your list of host names for which uBlock will be disabled. One host name per line. Invalid host names will be silently ignored."
  },
  "whitelistImport":{
    "message":"Importuj i dołącz",
    "description":"English: Import and append"
  },
  "whitelistExport":{
    "message":"Eksportuj",
    "description":"English: Export"
  },
  "whitelistExportFilename":{
    "message":"ublock-whitelist_{{datetime}}.txt",
    "description":"English: my-ublock-whitelist_{{datetime}}.txt"
  },
  "whitelistApply":{
    "message":"Zastosuj zmiany",
    "description":"English: Apply changes"
  },
  "logNetRequestsPrompt":{
    "message":"Włącz rejestrowanie żądań sieciowych",
    "description":"English: Enable the logging of network requests"
  },
  "logNetRequestsHelp":{
    "message":"Możesz zobaczyć dokładne informacje o żądaniach sieciowych poprzez włączenie tej opcji. Rejestrowanie żądań zwiększa użycie pamięci przez uBlock. Ponieważ większość użytkowników nigdy nie używa tej opcji, domyślnie jest wyłączona.",
    "description":"English: see _locales\/en\/messages.log"
  },
  "logBlockedRequestsHeader":{
    "message":"Zablokowane żądania",
    "description":"English: Blocked requests"
  },
  "logAllowedRequestsHeader":{
    "message":"Dozwolone żądania",
    "description":"English: Allowed requests"
  },
  "logRequestsHeaderType":{
    "message":"Typ",
    "description":"English: Type"
  },
  "logRequestsHeaderDomain":{
    "message":"Domena",
    "description":"English: Domain"
  },
  "logRequestsHeaderURL":{
    "message":"URL",
    "description":"English: URL"
  },
  "logRequestsHeaderFilter":{
    "message":"Filtr",
    "description":"English: Filter"
  },
  "logBlockedRequestsEmpty":{
    "message":"Nie zarejestrowano zablokowanych żądań dla tej strony",
    "description":"English: No blocked requests logged for this page"
  },
  "logAllowedRequestsEmpty":{
    "message":"Nie zarejestrowano nieblokowanych żądań dla tej strony",
    "description":"English: No non-blocked requests logged for this page"
  },
  "logBehindTheScene":{
    "message":"Za kulisami",
    "description":"Pretty name for behind-the-scene network requests"
  },
  "logFilterPrompt":{
    "message":"filtruj wpisy w logu",
    "description":"English: filter log entries"
  },
  "logMaxEntriesTip":{
    "message":"Maksymalna liczba wpisów do wyświetlenia",
    "description":"Tooltip informaing that the input field is to set the maximum number of entries in the log"
  },
  "aboutChangelog":{
    "message":"Dziennik zmian",
    "description":"English: Change log"
  },
  "aboutWiki":{
    "message":"Wiki",
    "description":"English: project' wiki on Github"
  },
  "aboutCode":{
    "message":"Kod źródłowy (GPLv3)",
    "description":"English: Source code (GPLv3)"
  },
  "aboutContributors":{
    "message":"Autorzy",
    "description":"English: Contributors"
  },
  "aboutBackupDataButton":{
    "message":"Stwórz kopię zapasową do pliku",
    "description":"English: Backup to file"
  },
  "aboutBackupFilename":{
    "message":"my-ublock-backup_{{datetime}}.txt",
    "description":"English: my-ublock-backup_{{datetime}}.txt"
  },
  "aboutRestoreDataButton":{
    "message":"Przywróć z pliku...",
    "description":"English: Restore from file..."
  },
  "aboutResetDataButton":{
    "message":"Przywróć domyślne ustawienia...",
    "description":"English: Reset to default settings..."
  },
  "aboutRestoreDataConfirm":{
    "message":"Wszystkie twoje ustawienia zostaną nadpisane przez kopię stworzoną {{time}}. uBlock zostanie uruchomiony ponownie.\n\nPrzywrócić ustawienia z kopii zapasowej?",
    "description":"Message asking user to confirm restore"
  },
  "aboutRestoreDataError":{
    "message":"Dane nieprawidłowe lub niemożliwe do odczytu",
    "description":"Message to display when an error occurred during restore"
  },
  "aboutResetDataConfirm":{
    "message":"Wszystkie twoje ustawienia zostaną usunięte, µBlock uruchomi się ponownie.\n\nCzy chcesz przywrócić domyślne ustawienia?",
    "description":"Message asking user to confirm reset"
  },
  "errorCantConnectTo":{
    "message":"Nie można połączyć się z {{url}}",
    "description":"English: Network error: unable to connect to {{url}}"
  },
  "subscriberConfirm":{
    "message":"µBlock: Dodać następujący URL do Twojej niestandardowej listy filtrów?\n\nTytuł: \"{{title}}\"\nURL: {{url}}",
    "description":"English: The message seen by the user to confirm subscription to a ABP filter list"
  },
  "elapsedOneMinuteAgo":{
    "message":"minutę temu",
    "description":"English: a minute ago"
  },
  "elapsedManyMinutesAgo":{
    "message":"{{value}} minut temu",
    "description":"English: {{value}} minutes ago"
  },
  "elapsedOneHourAgo":{
    "message":"godzinę temu",
    "description":"English: an hour ago"
  },
  "elapsedManyHoursAgo":{
    "message":"{{value}} godzin temu",
    "description":"English: {{value}} hours ago"
  },
  "elapsedOneDayAgo":{
    "message":"wczoraj",
    "description":"English: a day ago"
  },
  "elapsedManyDaysAgo":{
    "message":"{{value}} dni temu",
    "description":"English: {{value}} days ago"
  },
  "showDashboardButton":{
    "message":"Otwórz kokpit",
    "description":"Firefox\/Fennec-specific: Show Dashboard"
  },
  "showNetworkLogButton":{
    "message":"Otwórz dziennik żądań",
    "description":"Firefox\/Fennec-specific: Show Network Request Log"
  },
  "fennecMenuItemBlockingOff":{
    "message":"wyłączony",
    "description":"Firefox-specific: appears as 'uBlock (off)'"
  },
  "dummy":{
    "message":"Ta pozycja musi być ostatnia",
    "description":"so we dont need to deal with comma for last entry"
  }
}