Bir qancha hujum saytlari zararli dasturlar bilan birga tarqatiladi, lekin koʻpchiligi egalarining ruxsatisiz va bilimisiz xavfli ekanligi ma`lum boʻladi.
">
+
+
+
+ manzilidagi veb-sahifasi tarkibida shubhali dasturiy taâminot borligi xabar berilgan va shu sababli xavfsizlik parametrlariga koâra bloklangan.">
+Shubhali dasturiy mahsulot bor sahifalar sizni aldaydigan va tizimingizga kutilmagan yoâllar bilan taâsir koârsatuvchi dasturlarni oârnatishga urinib koâradi.">
+
+
+
+ qalbaki veb sayt sifatida maâlumot berilgan. Xavfsizlik moslamalaringiz asosida bloklangan.">
+Qalbaki saytlar zararli dasturlarni oârnatish kabi xavfli amallarni bajarish uchun, parol, telefon raqamlari yoki kredit karta maâlumotlari kabi shaxsiy maâlumotlaringizni oâgâirlash uchun yaratiladi.
Bunday sahifalarga maâlumotlar kiritsangiz, ularni oâgârilanishi yoki boshqa yomon maqsadlarda foydalanilishi mumkin.
">
+
diff --git a/browser/chrome/browser/safebrowsing/report-phishing.dtd b/browser/chrome/browser/safebrowsing/report-phishing.dtd
new file mode 100644
index 00000000000..24c118c29d1
--- /dev/null
+++ b/browser/chrome/browser/safebrowsing/report-phishing.dtd
@@ -0,0 +1,13 @@
+
+
+
+
+
+
diff --git a/browser/chrome/browser/search.properties b/browser/chrome/browser/search.properties
new file mode 100644
index 00000000000..f8689a6df69
--- /dev/null
+++ b/browser/chrome/browser/search.properties
@@ -0,0 +1,50 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+searchtip=%Sdan foydalanib izlash
+
+# LOCALIZATION NOTE (searchPlaceholder): this is shown in the searchbox when
+# the user hasn't typed anything yet.
+searchPlaceholder=Izlash
+
+# LOCALIZATION NOTE (searchHeader): this is displayed at the top of the panel
+# showing search suggestions.
+# %S is replaced with the name of the current default search engine.
+searchHeader=%S izlash
+
+# LOCALIZATION NOTE (cmd_pasteAndSearch): "Search" is a verb, this is the
+# search bar equivalent to the url bar's "Paste & Go"
+cmd_pasteAndSearch=Qoâyish va izlash
+
+cmd_clearHistory=Izlash tarixini tozalash
+cmd_clearHistory_accesskey=H
+
+cmd_showSuggestions=Tavsiyalarni koârsatish
+cmd_showSuggestions_accesskey=S
+
+# LOCALIZATION NOTE (cmd_addFoundEngine): %S is replaced by the name of
+# a search engine offered by a web page. Each engine is displayed as a
+# menuitem at the bottom of the search panel.
+cmd_addFoundEngine="%S"ni qoâshish
+# LOCALIZATION NOTE (cmd_addFoundEngineMenu): When more than 5 engines
+# are offered by a web page, instead of listing all of them in the
+# search panel using the cmd_addFoundEngine string, they will be
+# grouped in a submenu using cmd_addFoundEngineMenu as a label.
+cmd_addFoundEngineMenu=Qidiruv tizimini qoʻshish
+
+# LOCALIZATION NOTE (searchForSomethingWith):
+# This string is used to build the header above the list of one-click
+# search providers: "Search for with:"
+# NB: please leave the and its class exactly as it is in English.
+searchForSomethingWith= matnini bunda qidirish:
+
+# LOCALIZATION NOTE (searchWithHeader):
+# The wording of this string should be as close as possible to
+# searchForSomethingWith. This string will be used when the user
+# has not typed anything.
+searchWithHeader=Izlash:
+
+# LOCALIZATION NOTE (searchSettings):
+# This is the label for the button that opens Search preferences.
+searchSettings=Qidiruv sozlamalarini oâzgartirish
diff --git a/browser/chrome/browser/setDesktopBackground.dtd b/browser/chrome/browser/setDesktopBackground.dtd
new file mode 100644
index 00000000000..f62ae62ee09
--- /dev/null
+++ b/browser/chrome/browser/setDesktopBackground.dtd
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/browser/chrome/browser/shellservice.properties b/browser/chrome/browser/shellservice.properties
new file mode 100644
index 00000000000..feddff40fb0
--- /dev/null
+++ b/browser/chrome/browser/shellservice.properties
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+optionsLabel=%S &moslamalari
+safeModeLabel=%S &xavfsiz usuli
+
+# LOCALIZATION NOTE (setDefaultBrowserMessage2, setDefaultBrowserConfirm.label):
+# %S will be replaced by brandShortName
+setDefaultBrowserMessage2 = %Sni asosiy brauzeringiz sifatida oârnatib, koâplab natijalarga erishing
+setDefaultBrowserConfirm.label = %Sni asosiy brauzerim sifatida foydalanaman
+setDefaultBrowserConfirm.accesskey = f
+setDefaultBrowserOptions.label = Moslamalar
+setDefaultBrowserOptions.accesskey = M
+setDefaultBrowserNotNow.label = Hozir emas
+setDefaultBrowserNotNow.accesskey = H
+setDefaultBrowserNever.label = Yana soâralmasin
+setDefaultBrowserNever.accesskey = Y
+
+# LOCALIZATION NOTE (setDefaultBrowserTitle, setDefaultBrowserMessage, setDefaultBrowserDontAsk, setDefaultBrowserAlertConfirm.label, setDefaultBrowserAlertNotNow.label):
+# These strings are used as an alternative to the ones above, in a modal dialog.
+# %S will be replaced by brandShortName
+setDefaultBrowserTitle=Standart brauzer
+setDefaultBrowserMessage=%S hozirda standart brauzeringiz sifatida oʻrnatilmagan. Uni standart brazeringiz sifatida oʻrnatishni xohlaysizmi?
+setDefaultBrowserDontAsk=%S ishga tushirilayotganda, doimo tekshirish amalga oshirilsin.
+setDefaultBrowserAlertConfirm.label=%Sni asosiy brauzerim sifatida &foydalanaman
+setDefaultBrowserAlertNotNow.label=Hozir emas
+
+desktopBackgroundLeafNameWin=Ish stoli orqa foni.bmp
+DesktopBackgroundDownloading=Rasm saqlanmoqdaâ¦
+DesktopBackgroundSet=Ish stoli orqa foni sifatida oârnatish
diff --git a/browser/chrome/browser/siteData.properties b/browser/chrome/browser/siteData.properties
new file mode 100644
index 00000000000..bea4b88ccf2
--- /dev/null
+++ b/browser/chrome/browser/siteData.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+clearSiteDataPromptTitle=Barcha kuki va sayt maâlumotlarini tozalash
+# LOCALIZATION NOTE (clearSiteDataPromptText): %S = brandShortName
+clearSiteDataPromptText="Tozalash" tugmasini bossangiz, %S joylagan sayt maâlumotlari va kukilari oâchiriladi. Saytlardagi hisobingizchan chiqarilishingiz va oflayn kontentlarning tozalanishiga sabab boâladi.
+clearSiteDataNow=Tozalash
diff --git a/browser/chrome/browser/sitePermissions.properties b/browser/chrome/browser/sitePermissions.properties
new file mode 100644
index 00000000000..5d6d915cddb
--- /dev/null
+++ b/browser/chrome/browser/sitePermissions.properties
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = Doimo soâralsin
+state.multichoice.allow = Ruxsat berish
+state.multichoice.allowForSession = Seans uchun ruxsat berish
+state.multichoice.block = Bloklash
+
+permission.cookie.label = Kukilarni oârnatish
+permission.desktop-notification2.label = Eslatma olish
+permission.image.label = Rasmlarni yuklash
+permission.camera.label = Kameradan foydalanish
+permission.microphone.label = Mikrofondan foydalanish
+permission.install.label = Qoâshimcha dasturni oârnatish
+permission.popup.label = Paydo boâluvchi oynalarni ochish
+permission.geo.label = Manzilingizga kirish
+permission.indexedDB.label = Oflayn saqlashga asoslangan
diff --git a/browser/chrome/browser/syncBrand.dtd b/browser/chrome/browser/syncBrand.dtd
new file mode 100644
index 00000000000..f9a6ab8bc24
--- /dev/null
+++ b/browser/chrome/browser/syncBrand.dtd
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/browser/chrome/browser/syncSetup.properties b/browser/chrome/browser/syncSetup.properties
new file mode 100644
index 00000000000..1f86de52ee8
--- /dev/null
+++ b/browser/chrome/browser/syncSetup.properties
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
+
+# Firefox Accounts based setup.
+continue.label = Davom etish
+
+# LOCALIZATION NOTE (disconnect.label, disconnect.verify.title, disconnect.verify.bodyHeading, disconnect.verify.bodyText):
+# These strings are used in the confirmation dialog shown when the user hits the disconnect button
+# LOCALIZATION NOTE (disconnect.label): This is the label for the disconnect button
+disconnect.label = Aloqani uzish
+disconnect.verify.title = Aloqani uzish
+disconnect.verify.bodyHeading = Sinxronlashni uzishni xohlaysizmi?
+disconnect.verify.bodyText = Kirilgan saytlar maâlumotlari kompyuteringizda qoladi, ammo u endi hisobingiz bilan sinxronlaymaydi.
+
+relinkVerify.title = Birlashtirish ogohlantirishi
+relinkVerify.heading = Sinxronizatsiyalash uchun kirmoqchi ekanligingizga ishonchingiz komilmi?
+# LOCALIZATION NOTE (relinkVerify.description): Email address of a user previously signed into sync.
+relinkVerify.description = Ushbu kompyuterdan oldinroq boshqa foydalanuvchi sinxronizatsiyani amalga oshirgan. Sinxronizatsiyalash %S bilan xatchoʻplar, parollar va boshqa moslamalarni birlashtiradi.
diff --git a/browser/chrome/browser/tabbrowser.properties b/browser/chrome/browser/tabbrowser.properties
new file mode 100644
index 00000000000..033798983ed
--- /dev/null
+++ b/browser/chrome/browser/tabbrowser.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tabs.emptyTabTitle=Yangi ichki oyna
+tabs.closeTab=Ichki oynani yopish
+tabs.close=Yopish
+tabs.closeWarningTitle=Yopishni tasdiqlash
+# LOCALIZATION NOTE (tabs.closeWarningMultiple):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeWarningMultiple=;#1 ta ichki oynani yopish arafasidasiz. Davom ettirishni xohlaysizmi?
+tabs.closeButtonMultiple=Ichki oynalarni yopish
+tabs.closeWarningPromptMe=Bir nechta ichki oynalarni yopayotganimda meni ogohlantir
+
+tabs.closeTab.tooltip=Ichki oynani yopish
+# LOCALIZATION NOTE (tabs.closeSelectedTab.tooltip):
+# %S is the keyboard shortcut for closing the current tab
+tabs.closeSelectedTab.tooltip=Ichki oynani yopish (%S)
+# LOCALIZATION NOTE (tabs.muteAudio.tooltip):
+# %S is the keyboard shortcut for "Mute tab"
+tabs.muteAudio.tooltip=Ichki oyna ovozini oâchirib qoâyish (%S)
+# LOCALIZATION NOTE (tabs.unmuteAudio.tooltip):
+# %S is the keyboard shortcut for "Unmute tab"
+tabs.unmuteAudio.tooltip=Ichki oyna ovozini yoqish (%S)
+tabs.muteAudio.background.tooltip=Ichki oyna ovozini oâchirish
+tabs.unmuteAudio.background.tooltip=Ichki oyna ovozini yoqish
+
+
+# LOCALIZATION NOTE (tabs.allowTabFocusByPromptForSite):
+# %S is the hostname of the site where dialogs are allowed to switch tabs
+tabs.allowTabFocusByPromptForSite=%S saytidagi dialog qutilari oâzlarining ichki oynalariga oâtkazishiga ruxsat berilsin
+
+# LOCALIZATION NOTE (tabs.containers.tooltip):
+# Displayed as a tooltip on container tabs
+# %1$S is the title of the current tab
+# %2$S is the name of the current container
diff --git a/browser/chrome/browser/taskbar.properties b/browser/chrome/browser/taskbar.properties
new file mode 100644
index 00000000000..7054107cf9c
--- /dev/null
+++ b/browser/chrome/browser/taskbar.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+taskbar.tasks.newTab.label=Yangi ichki oyna ochish
+taskbar.tasks.newTab.description=Yangi brauze ichki oynasini ochish
+taskbar.tasks.newWindow.label=Yangi oyna ochish
+taskbar.tasks.newWindow.description=Yangi brauzer ichki oynasini ochish
+taskbar.tasks.newPrivateWindow.label=Yangi shaxsiy oyna
+taskbar.tasks.newPrivateWindow.description=Yangi oyna maxfiy koârish usulida ochilsin.
+taskbar.frequent.label=Muntazam
+taskbar.recent.label=Soânggi
diff --git a/browser/chrome/browser/translation.dtd b/browser/chrome/browser/translation.dtd
new file mode 100644
index 00000000000..c3f0cae3387
--- /dev/null
+++ b/browser/chrome/browser/translation.dtd
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/browser/chrome/browser/translation.properties b/browser/chrome/browser/translation.properties
new file mode 100644
index 00000000000..2d1fffa318a
--- /dev/null
+++ b/browser/chrome/browser/translation.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.label):
+# %S is a language name coming from the global/languageNames.properties file.
+translation.options.neverForLanguage.label=%S hech qachon tarjima qilinmasin
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.accesskey):
+# The accesskey value used here should not clash with the values used for
+# translation.options.*.accesskey in translation.dtd
+translation.options.neverForLanguage.accesskey=h
diff --git a/browser/chrome/browser/uiDensity.properties b/browser/chrome/browser/uiDensity.properties
new file mode 100644
index 00000000000..0b6954a0746
--- /dev/null
+++ b/browser/chrome/browser/uiDensity.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+uiDensity.menuitem-touch.acceltext=Planshet rejimi yoqildi
diff --git a/browser/chrome/browser/webrtcIndicator.properties b/browser/chrome/browser/webrtcIndicator.properties
new file mode 100644
index 00000000000..02ec0d9e2a3
--- /dev/null
+++ b/browser/chrome/browser/webrtcIndicator.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the webrtc global indicator strings
+
+# LOCALIZATION NOTE (webrtcIndicator.windowtitle): %S is the brand name (e.g. Firefox).
+# This string is used so that the window has a title in tools that enumerate/look for window
+# titles. It is not normally visible anywhere.
+webrtcIndicator.windowtitle = %S - boâlishish indikatori
+
+webrtcIndicator.sharingCameraAndMicrophone.tooltip = Kamera va mikrofoningizdan oâzaro foydalanilmoqda. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingCamera.tooltip = Kamerangiz boâlishilgan. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingMicrophone.tooltip = Mikrofoningiz boâlishilgan. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingApplication.tooltip = Ilova dasturingiz boâlishilgan. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingScreen.tooltip = Ekraningiz boâlishilgan. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingWindow.tooltip = Oynangiz boâlishilgan. Boâlishishni boshqarish uchun bosing.
+webrtcIndicator.sharingBrowser.tooltip = Ichki oynangiz boâlishiladi. Boâlishishni boshqarish uchun bosing.
+
+
+# LOCALIZATION NOTE : The following strings are only used on Mac for
+# menus attached to icons near the clock on the mac menubar.
+
+# LOCALIZATION NOTE (webrtcIndicator.sharing*With.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.sharingCameraWith.menuitem = Kamerani "%S" bilan boâlishish
+webrtcIndicator.sharingMicrophoneWith.menuitem = Mikrofonni "%S" bilan boâlishish
+webrtcIndicator.sharingApplicationWith.menuitem = Ilova dasturni "%S" bilan boâlishish
+webrtcIndicator.sharingScreenWith.menuitem = Ekranni "%S" bilan boâlishish
+webrtcIndicator.sharingWindowWith.menuitem = Oynani "%S" bilan boâlishish
+webrtcIndicator.sharingBrowserWith.menuitem = Ichki oynai "%S" bilan boâlishish
+webrtcIndicator.controlSharing.menuitem = Boâlishishni boshqarish
+# LOCALIZATION NOTE (webrtcIndicator.sharingCameraWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingCameraWithNTabs.menuitem = Kamerani #1 ta ichki oyna bilan boâlishish;Kamerani #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.sharingMicrophoneWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingMicrophoneWithNTabs.menuitem = Mikrofonni #1 ta ichki oyna bilan boâlishish;Mikrofonni #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.sharingApplicationWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingApplicationWithNTabs.menuitem = Ilova dasturni #1 ta ichki oyna bilan boâlishish;Ilova dasturni #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.sharingScreenWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingScreenWithNTabs.menuitem = Ekranni #1 ta ichki oyna bilan boâlishish;Ekranni #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.sharingWindowWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingWindowWithNTabs.menuitem = Oynani #1 ta ichki oyna bilan boâlishish;Oynani #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.sharingBrowserWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtcIndicator.sharingBrowserWithNTabs.menuitem = Ichki oynani #1 ta ichki oyna bilan boâlishish;Ichki oynani #1 ta ichki oyna bilan boâlishish
+# LOCALIZATION NOTE (webrtcIndicator.controlSharingOn.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.controlSharingOn.menuitem = "%S"dagi boâlishishni boshqarish
diff --git a/browser/chrome/overrides/appstrings.properties b/browser/chrome/overrides/appstrings.properties
new file mode 100644
index 00000000000..9f9cbc998ca
--- /dev/null
+++ b/browser/chrome/overrides/appstrings.properties
@@ -0,0 +1,41 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+malformedURI=URL toʻgʻri emas, shuning uchun uni yuklab boʻlmaydi.
+fileNotFound=Firefox %S faylini topa olmadi.
+fileAccessDenied=%S faylini oâqib boâlmaydi.
+dnsNotFound=Firefox %S serverini topa olmadi.
+unknownProtocolFound=Firefox ushbu manzilni qanday ochishni bilmaydi, chunki quyidagi protokollardan (%S) biri hech qanday dastur bilan bogâlanmagan yoki ushbu matnga ruxsat berilmagan.
+connectionFailure=Firefox %S serveriga ulana olmadi.
+netInterrupt=%Sâga ulanish sahifa yuklanayotganda uzilib qoldi.
+netTimeout=%S serveridan javob olish vaqti oâtib ketdi.
+redirectLoop=Firefox serverning soʻralgan manzilni hech qachon tugamaydigan yoʻlga yoʻnaltirayotganligini aniqladi.\u0020
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, donât translate "%S"
+confirmRepostPrompt=%S ushbu sahifani koÊ»rsatish uchun oldinroq bajarilgan (qidiruv yoki tasdiqlash buyrugâi kabi) amalni qaytarish uchun maâlumot joânatishi kerak.
+resendButton.label=Qayta joânatish
+unknownSocketType=Firefox server bilan qanday bogʻlanishni bilmaydi.
+netReset=Sahifa yuklanayotganda serverga ulanish uzilib qoldi.
+notCached=Ushbu hujjat endi mavjud emas.
+netOffline=Firefox hozida oflayn usuluda, shuning uchun internetni koâra olmaysiz.
+isprinting=Hujjat "Chop qilish" yoki "Chop qilishni koʻrish" usulida boʻlganda, uni oʻzgartira olmaysiz.
+deniedPortAccess=Manzil boshqa maqsadlarda ishlatiladigan tarmoq portidan foydalanadi, shu sababli Firefox sizni himoyalash maqsadida soʻrovni bekor qildi.
+proxyResolveFailure=Firefox topilmaydigan proksi serverdan foydalanishga moslangan.
+proxyConnectFailure=Firefox ulanishlarni rad qiladigan proksi serverga moslangan.
+contentEncodingError=Ochmoqchi boʻlgan sahifangizni koʻrib boʻlmaydi, chunki u xato yoki mos kelmaydigan siqish shaklidan foydalanadi.
+unsafeContentType=Siz koʻrmoqchi boʻlgan sahifani koʻrsatib boʻlmaydi, chunki sahifada ochsa xavfli boʻlishi mumkin boʻlgan turdagi fayl mavjud. Iltimos, veb sayt egasi bilan bogʻlaning va bu muammo haqida xabar bering.
+externalProtocolTitle=Tashqi protokol soʻrovi
+externalProtocolPrompt=Tashqi ilova dastur %1$S: linklarga bogʻlangan holda ishga tushirilishi kerak.\n\n\nSoʻralgan link:\n\n%2$S\n\nIlova dastur: %3$S\n\n\nAgar ushbu soʻrovni kutmagan boʻlsangiz, u boshqa dasturlarga zarar yetkazishi mumkin. Bu dasturning zararsiz ekanligiga ishonmasangiz, bekor qiling.\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=
+externalProtocolChkMsg=Ushbu turdagi barcha linklar uchun tanlovimni eslab qol.
+externalProtocolLaunchBtn=Ilova dasturni ishga tushirish
+malwareBlocked=%S sayti hujum qiluvchi sayt sifatida maâlumot berilgan va xavfsizlik moslamalaringizga asoslanib bloklangan.
+unwantedBlocked=%S saytida zararli dastur bor deb xabar berilgan, shuning uchun xavfsizlik moslamalaringizga asoslanib bloklandi.
+deceptiveBlocked=%S sayti hujum qalbaki sayt sifatida maâlumot berilgan va xavfsizlik moslamalaringizga asoslanib bloklangan.
+cspBlocked=Bu sahifa ushbu ushbu usulda yuklashga halaqit beradigan xavfsizlik siyosatiga ega.
+corruptedContentErrorv2=%S sayti tarmoq protokoli zararlangan, uni toâgârilab boâlmaydi.
+remoteXUL=Ushbu sahifa hozircha standart Firefoxâda mavjud boÊ»lmagan va qoÊ»llanmaydigan texnologiyadan foydalangan.
+## LOCALIZATION NOTE (sslv3Used) - Do not translate "%S".
+sslv3Used=Firefox %Sâdagi maâlumotlaringizning xavfsizligi uchun kafolat bera olmaydi, chunki u buzilgan xavfsizlik protokoli - SSLv3 protokolidan foydalanmoqda.
+inadequateSecurityError=Sayt xavfsizlikning talabga javob bermaydigan dajarasida aloqa olib borishga urinmoqda.
diff --git a/browser/chrome/overrides/netError.dtd b/browser/chrome/overrides/netError.dtd
new file mode 100644
index 00000000000..b32a2222cbe
--- /dev/null
+++ b/browser/chrome/overrides/netError.dtd
@@ -0,0 +1,124 @@
+
+
+
+%brandDTD;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Manzil toâgâri kiritilganligini tekshiring. Masalan, www.example.com oârnigaww.example.com kiritilgan boâlishi mumkin.
Agar birorta ham sahifa yuklanmagan boâlsa, kompyuterning tarmoqqa ulanganini tekshirib koâring.
Agar kompyuter yoki tarmoq fayervol bilan himoyalangan boâlsa, &brandShortName;ning internetga kirishdan toâsilmaganligini tekshirib koâring.
">
+
+
+
Fayl nomlarining katta-kichik harfdaligi yoki matndagi boshqa xatolarini tekshiring.
Fayl oâchirilgan, nomi oâzgargan yoki koâchirilgan boâlishi mumkin.
">
+
+
+
Oâchirib tashlangan, koâchirilgan yoki foydalanishga ruxsat berilmagan boâlishi mumkin.
">
+
+
+&brandShortName; ushbu sahifani baâzi sabablarga koâra yuklay olmadi.">
+
+
+Internetdan foydalanish uchun tarmoqda roâyxatdan oâtishingiz lozim.">
+
+
+
+
+
Veb manzillar, odatda, quyidagicha:http://www.example.com/ yoziladi
Agar kompyuteringiz yoki tarmogâingiz fayervol yoki proksi bilan himoyalanganboâlsa, &brandShortName;ning internetga kirishi cheklanmaganligini tekshirib koâring.
">
+
+
+
Ushbu muammo baâzida kukilarni oâchirilishiga yoki rozilikni rad qilinishiga sabab boâlishi mumkin.
">
+
+
+
Shaxsiy xavfsizlik boshqaruvchisi (PSM) tizimingizda oârnatilganligini tekshirib koâring.
Bu serveringizning nostandart moslanganligidan ham boâlishi mumkin.
">
+
+
+
Siz koârmoqchi boâlgan sahifani koârsatib boâlmaydi, chunki olingan fayllar tasdiqdan oâtmagan.
Ushbu muammo haqida xabar berish uchun vebsahifa egasi bilan bogâlaning.
">
+
+
+
+ egasi veb-saytini notoâgâri sozlagan. Maâlumotlaringizni oâgâirlanishdan himoyalash maqsadida, &brandShortName; bu veb-saytga ulanmadi.">
+
+
Bu sayt vaqtinchalik ishlamayotgan yoki juda band boâlishi mumkin. Bir ozdan soâng urinib koâring.
Agar birorta ham sahifa yuklanmasa, kompyuteringizni tarmoqqa ulanishini tekshirib koâring.
Agar kompyuter yoki tarmogâingiz fayervol yoki proksi bilan himoyalangan boâlsa, &brandShortName;ning internetga kirishi cheklanmaganligini tekshirib koâring.
">
+
+
+&brandShortName; ushbu sahifani bu yoâlda yuklashga toâsqinlik qildi, chunki sahifadagi xavfsizlik siyosati bunga ruxsat bermadi.">
+
+
+Siz koârmoqchi boâlgan sahifani koârsatib boâlmaydi, chunki maâlumotlarni uzatishda xato aniqlandi.
Ushbu muammo haqida xabar berish uchun veb sayt egasi bilan bogâlaning.
">
+
+
+
+
+
+
+
+
+
Muammo haqida xabar berish uchun veb sayt egasi bilan bogâlaning.
">
+
+
+
+
+
+
+ &brandShortName; ga ulana olmadi, chunki kompyuteringizning soati notoâgâri. Shu sababli xavfsiz ulana olmayapti.
Kompyuteringizning soati: , lekin real vaqt: . Bu muammoni hal etish uchun sana va vaqt sozlamalarini toâgârilang.
">
+ &brandShortName; ga ulana olmadi, chunki kompyuteringizning soati notoâgâri. Shu sababli xavfsiz ulana olmayapti.
Kompyuteringizning soati: . Bu muammoni hal etish uchun sana va vaqt sozlamalarini toâgârilang.
">
+
+
+
+
+
+
+
+ hujumlarga chidamsiz va eskirgan xavfsizlik texnonolgiyasidan foydalanadi. Xakker siz xavfsiz deb oâylaydigan maâlumotlarni osongina ochib koârishi mumkin. Siz saytga kira olishingiz uchun avvalo sayt administratori serverni toâgârilashi kerak.
Xatolik kodi: NS_ERROR_NET_INADEQUATE_SECURITY
">
+
+
+
diff --git a/browser/chrome/overrides/settingsChange.dtd b/browser/chrome/overrides/settingsChange.dtd
new file mode 100644
index 00000000000..083ca92f2bb
--- /dev/null
+++ b/browser/chrome/overrides/settingsChange.dtd
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/browser/crashreporter/crashreporter-override.ini b/browser/crashreporter/crashreporter-override.ini
new file mode 100644
index 00000000000..5fa7818df00
--- /dev/null
+++ b/browser/crashreporter/crashreporter-override.ini
@@ -0,0 +1,8 @@
+; This Source Code Form is subject to the terms of the Mozilla Public
+; License, v. 2.0. If a copy of the MPL was not distributed with this
+; file, You can obtain one at http://mozilla.org/MPL/2.0/.
+; This file is in the UTF-8 encoding
+[Strings]
+; LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2="Firefox"da muammo va nosozlik mavjud . U qayta ishga tushirilganda barcha oynalarni tiklashga harakat qilamiz.\n\nBaxtga qarshi, nosozlik ma`lumotini bergich xabar joʻnata olmadi.\n\nTafsilotlar: %s
+CrashReporterDescriptionText2="Firefox"da muammo va nosozik mavjud. U qayta ishga tushirilganda barcha oynalarni tiklashga harakat qilamiz.\n\nMuammoni aniqlashimizga va bartaraf etishimiz uchun bizga nosozlik ma`lumotini joʻnatishingiz kerak.
diff --git a/browser/defines.inc b/browser/defines.inc
new file mode 100644
index 00000000000..2a8277635f9
--- /dev/null
+++ b/browser/defines.inc
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+
+# variable definition and use the format specified.
+
+#define MOZ_LANGPACK_CONTRIBUTORS Akmal XushvaqovAkmal Xushavqov
+
+#unfilter emptyLines
diff --git a/browser/firefox-l10n.js b/browser/firefox-l10n.js
new file mode 100644
index 00000000000..b410ad9aef4
--- /dev/null
+++ b/browser/firefox-l10n.js
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
diff --git a/browser/installer/custom.properties b/browser/installer/custom.properties
new file mode 100644
index 00000000000..2e611e977aa
--- /dev/null
+++ b/browser/installer/custom.properties
@@ -0,0 +1,85 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=$BrandShortName vebsahifalarni xavfsiz va oson koârishingizni taâminlaydi. Qulay foydalanish interfeysi, maâlumotlaringizni oâgÊ»irlashdan himoya qiluvchi keng xavfsizlik xususiyatlari va izlashga moslangan funksiyalar internetdan yuqori darajada foydalanish imkonini beradi.
+CONTEXT_OPTIONS=$BrandShortName &sozlamalari
+CONTEXT_SAFE_MODE=$BrandShortName &xavfsiz usulda
+OPTIONS_PAGE_TITLE=Oârnatish turi
+OPTIONS_PAGE_SUBTITLE=Oârnatish moslamalarini tanlash
+SHORTCUTS_PAGE_TITLE=Yorliqlarni moslash
+SHORTCUTS_PAGE_SUBTITLE=Dastur nishonchalarini yaratish
+COMPONENTS_PAGE_TITLE=Tanlanadigan komponentlarni moslash
+COMPONENTS_PAGE_SUBTITLE=Har qanday tavsiya qilinadigan komponentlar
+OPTIONAL_COMPONENTS_DESC=Asosiy xizmat $BrandShortNameâni tinchgina orqa fonda yangilash imkonini beradi.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=&Asosiy xizmatni oârnatish
+SUMMARY_PAGE_TITLE=Natija
+SUMMARY_PAGE_SUBTITLE=$BrandShortNameâni oârnatishni boshlashga tayyor
+SUMMARY_INSTALLED_TO=$BrandShortName quyidagi manzilga oârnatiladi:
+SUMMARY_REBOOT_REQUIRED_INSTALL=Oârnatishni tugatish uchun kompyuteringizni oâchirib-yoqish talab qilinishi mumkin.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Oâchirish jarayonini tugatish uchun kompyuteringizni oâchirib-yoqish talab qilinishi mumkin.
+SUMMARY_TAKE_DEFAULTS=$BrandShortNameâdan asosiy brauzer sifatida &foydalanilsin
+SUMMARY_INSTALL_CLICK=Davom etish uchun "Oârnatish"ni bosing.
+SUMMARY_UPGRADE_CLICK=Davom etish uchun "Yangilash"ni bosing.
+SURVEY_TEXT=Bizga $BrandShortName haqidagi fikrlaringizni &ayting
+LAUNCH_TEXT=$BrandShortName hozir ishga &tushirilsin
+CREATE_ICONS_DESC=$BrandShortName uchun nishonchalar yaratish:
+ICONS_DESKTOP=&Ish stolimda
+ICONS_STARTMENU="Boshlash" menyusidagi "Dasturlar" jildida
+ICONS_QUICKLAUNCH="&Tez ishga tushirish" panelida
+WARN_MANUALLY_CLOSE_APP_INSTALL=Oârnatishni amalga oshirish uchun $BrandShortName yopilishi kerak.\n\nDavom etish uchun $BrandShortNameâni yoping.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=Oâchirishni amalga oshirish uchun $BrandShortName yopilishi kerak.\n\nDavom etish uchun $BrandShortNameâni yoping.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName allaqachon ishga tushirilgan.\n\nHozir oârnatilgan $BrandShortName versiyasini ishga tushirish uchun oldingisini yoping.
+WARN_WRITE_ACCESS=Oârnatish direktoriyasiga yozish huquqiga ega emassiz.\n\nBoshqa direktoriyani tanlash uchun "OK"ni bosing.
+WARN_DISK_SPACE=Ushbu manzilga oârnatish uchun diskda yetarlicha boâsh joy mavjud emas.\n\nBoshqa manzilni tanlash uchun "OK" tugmasini bosing.
+WARN_MIN_SUPPORTED_OSVER_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi ${MinSupportedVer} yoki yangiroq versiyasini talab qiladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_MIN_SUPPORTED_CPU_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi kamida ${MinSupportedCPU} bilan ishlay oladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi ${MinSupportedVer} yoki kamida ${MinSupportedCPU} bilan ishlay oladigan yangiroâgini talab qiladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_RESTART_REQUIRED_UNINSTALL=$BrandShortNameâning oldingisini oâchirish jarayonini tugatish uchun kompyuteringiz oâchirib-yoqilishi kerak. Hozir oâchirib-yoqishni xohlaysizmi?
+WARN_RESTART_REQUIRED_UPGRADE=$BrandShortNameâning oldingi yangilash jarayonini tugatish uchun kompyuteringiz oâchirib-yoqilishi kerak. Hozir oâchirib-yoqishni xohlaysizmi?
+ERROR_CREATE_DIRECTORY_PREFIX=Direktoriya yaratishda xato:
+ERROR_CREATE_DIRECTORY_SUFFIX=Oârnatishni toâxtatish uchun "Bekor qilish"ni bosing yoki\nqaytadan urinib koârish uchun "Qayta urinish"ni bosing.
+
+UN_CONFIRM_PAGE_TITLE=$BrandFullNameâni oâchirish
+UN_CONFIRM_PAGE_SUBTITLE=$BrandFullName kompyuteringizdan oâchiriladi.
+UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName quyidagi manzildan oâchiriladi:
+UN_CONFIRM_CLICK=Davom etish uchun "Oâchirish"ni bosing.
+
+BANNER_CHECK_EXISTING=Mavjud oârnatish tekshirilmoqdaâ¦
+
+STATUS_INSTALL_APP=$BrandShortName oârnatilmoqdaâ¦
+STATUS_INSTALL_LANG=Til fayllari (${AB_CD}) oârnatilmoqdaâ¦
+STATUS_UNINSTALL_MAIN=$BrandShortName oâchirilmoqdaâ¦
+STATUS_CLEANUP=Biroz uy ishlari bilan band boâlamizâ¦
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Oârnatish turini tanlang, soângra "Keyingi" tugmasini bosing.
+# One line
+OPTION_STANDARD_DESC=$BrandShortName umumiy moslash usulida oârnatiladi.
+OPTION_STANDARD_RADIO=&Standart
+# Two lines
+OPTION_CUSTOM_DESC=oârnatish uchun individual moslash usulini tanlashingiz mumkin. Bu tajribali foydalanuvchilarga tavsiya qilinadi.
+OPTION_CUSTOM_RADIO=&Boshqa
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=&Yangilash
diff --git a/browser/installer/mui.properties b/browser/installer/mui.properties
new file mode 100644
index 00000000000..62d14c23d79
--- /dev/null
+++ b/browser/installer/mui.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+MUI_TEXT_WELCOME_INFO_TITLE=$BrandFullNameDA oârnatish ustasiga xush kelibsiz
+MUI_TEXT_WELCOME_INFO_TEXT=Usta $BrandFullNameDA brauzerini oârnatish jarayonida yordam beradi.\n\nOârnatishni boshlashdan oldin barcha dasturlarni yopishingiz kerak. Bu tizimga tegishli fayllarni kompyuterni oâchirib-yoqmasdan yangilash imkonini beradi. \n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Komponentlarni tanlash
+MUI_TEXT_COMPONENTS_SUBTITLE=$BrandFullNameDAâning oârnatilishi kerak boâlgan xususiyatlarini tanlang.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Taârifi
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Komponentning taârifini koârish uchun sichqoncha koârsatkichini uning ustiga olib keling.
+MUI_TEXT_DIRECTORY_TITLE=Oârnatiladigan manzilni tanlang
+MUI_TEXT_DIRECTORY_SUBTITLE=$BrandFullNameDA oârnatiladigan jildni tanlang.
+MUI_TEXT_INSTALLING_TITLE=Oârnatilmoqda
+MUI_TEXT_INSTALLING_SUBTITLE=$BrandFullNameDA oârnatilib boâlinishini kuting.
+MUI_TEXT_FINISH_TITLE=Oârnatish tugadi
+MUI_TEXT_FINISH_SUBTITLE=Oârnatish muvaffaqiyatli yakunlandi.
+MUI_TEXT_ABORT_TITLE=Oârnatish bekor qilindi
+MUI_TEXT_ABORT_SUBTITLE=Oârnatish omadsiz yakunlandi.
+MUI_BUTTONTEXT_FINISH=&Tugatish
+MUI_TEXT_FINISH_INFO_TITLE=$BrandFullNameDA oârnatish ustasi jarayonni tugatmoqda
+MUI_TEXT_FINISH_INFO_TEXT=$BrandFullNameDA kompyuteringizga oârnatildi.\n\nUshbu ustani yopish uchun "Tugatish"ni bosing.
+MUI_TEXT_FINISH_INFO_REBOOT=$BrandFullNameDA brauzerining oârnatish jarayoni tugashi uchun kompyuter oâchirib-yoqilishi kerak. Hozir oâchirib-yoqishni xohlaysizmi?
+MUI_TEXT_FINISH_REBOOTNOW=Hozir oâchirib-yoqish
+MUI_TEXT_FINISH_REBOOTLATER=Keyinoq oâchirib-yoqmoqchiman
+MUI_TEXT_STARTMENU_TITLE="Boshlash" menyusi jildini tanlang
+MUI_TEXT_STARTMENU_SUBTITLE=$BrandFullNameDA yorliqlari uchun "Boshlash" menyusi jildini tanlang.
+MUI_INNERTEXT_STARTMENU_TOP=Xohlagan dasturingizning yorligÊ»ini yaratmoqchi boâlsangiz "Boshlash" menyusi jildini tanlang. Shuningdek, yangi jild yaratib, nom qoâyishingiz ham mumkin.
+MUI_TEXT_ABORTWARNING=$BrandFullName brauzerini oârnatish jarayonidan chiqishni xohlaysizmi?
+MUI_UNTEXT_WELCOME_INFO_TITLE=$BrandFullNameDA oâchirish ustasiga xush kelibsiz
+MUI_UNTEXT_WELCOME_INFO_TEXT=Ushbu usta $BrandFullNameDA brauzerini oâchirishingizda yordam beradi.\n\nOâchirish jarayonini boshlashdan oldin, $BrandFullNameDA brauzerining ishlamayotganligiga ishonch hosil qiling.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=$BrandFullNameDA brauzerini oâchirish
+MUI_UNTEXT_CONFIRM_SUBTITLE=$BrandFullNameDA brauzerini kompyuteringizdan olib tashlash.
+MUI_UNTEXT_UNINSTALLING_TITLE=Oâchirilmoqda
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=$BrandFullNameDA oâchirib boâlinishini kuting.
+MUI_UNTEXT_FINISH_TITLE=Oâchirish tugadi
+MUI_UNTEXT_FINISH_SUBTITLE=Oâchirish muvaffaqiyatli yakunlandi.
+MUI_UNTEXT_ABORT_TITLE=Oâchirish bekor qilindi
+MUI_UNTEXT_ABORT_SUBTITLE=Oâchirish muvaffaqiyatsiz yakunlandi.
+MUI_UNTEXT_FINISH_INFO_TITLE=$BrandFullNameDA oâchirish ustasi ishini tugatish
+MUI_UNTEXT_FINISH_INFO_TEXT=$BrandFullNameDA kompyuteringizdan muvaffaqiyatli oâchirildi.\n\nUshbu ustani yopish uchun "Tugatish"ni bosing.
+MUI_UNTEXT_FINISH_INFO_REBOOT=$BrandFullNameDA brauzerini oâchirish jarayonini tugatish uchun kompyuteringizni oâchirib-yoqishingiz kerak. Hozir buni amalga oshirmoqchimisiz?
+MUI_UNTEXT_ABORTWARNING=$BrandFullName brauzerini oâchirishni bekor qilmoqchimisiz?
diff --git a/browser/installer/nsisstrings.properties b/browser/installer/nsisstrings.properties
new file mode 100644
index 00000000000..6f04cadd464
--- /dev/null
+++ b/browser/installer/nsisstrings.properties
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+
+
+WARN_MIN_SUPPORTED_OSVER_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi ${MinSupportedVer} yoki yangiroq versiyasini talab qiladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_MIN_SUPPORTED_CPU_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi kamida ${MinSupportedCPU} bilan ishlay oladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Kechirasiz, $BrandShortName oârnatilmaydi. $BrandShortName dasturinig ushbu versiyasi ${MinSupportedVer} yoki kamida ${MinSupportedCPU} bilan ishlay oladigan yangiroâgini talab qiladi. Qoâshimcha maâlumot olish uchun OK tugmasini bosing.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName allaqachon ishga tushirilgan.\n\nHozir oârnatilgan $BrandShortName versiyasini ishga tushirish uchun eskisini yoping.
+
+
diff --git a/browser/installer/override.properties b/browser/installer/override.properties
new file mode 100644
index 00000000000..07bc08f506e
--- /dev/null
+++ b/browser/installer/override.properties
@@ -0,0 +1,86 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=$BrandFullName brauzerini oârnatish
+UninstallCaption=$BrandFullName brauzerini oâchirish
+BackBtn=< &Orqaga
+NextBtn=&Keyingi >
+AcceptBtn=Men litsenziya bitimi shartlariga &roziman
+DontAcceptBtn=Men litsenziya shartlariga rozi &emasman
+InstallBtn=&Oârnatish
+UninstallBtn=&Oâchirish
+CancelBtn=Bekor qilish
+CloseBtn=&Yopish
+BrowseBtn=&Koârish
+ShowDetailsBtn=Tafsilotlarni &koârsatish
+ClickNext=Davom etish uchun "Keyingi"ni bosing.
+ClickInstall=Oârnatishni boshlash uchun "Oârnatish"ni bosing.
+ClickUninstall=Oâchirishni boshlash uchun "Oâchirish"ni bosing.
+Completed=Tugadi
+LicenseTextRB=$BrandFullNameDA brauzerini oârnatishdan oldin litsenziya shartlari bilan tanishib chiqing. Agar bitimning barcha shartlariga rozi boâlsangiz, quyidagi birinchi bandni tanlang. $_CLICK
+ComponentsText=Oârnatilishi kerak boâlgan komponentlarni belgilang, oârnatilishini xohlamaganlaringizni belgilamang. $_CLICK
+ComponentsSubText2_NoInstTypes=Oârnatilishi kerak boâlgan komponentlarni belgilang:
+DirText=$BrandFullNameDA quyidagi jildga oârnatiladi. Boshqa jildga oârnatish uchun "Koârish"ni bosing va boshqa jildni tanlang. $_CLICK
+DirSubText=Moâljaldagi jild
+DirBrowseText=$BrandFullNameDA oârnatiladigan jildni tanlang:
+SpaceAvailable="Mavjud boâsh joy: "
+SpaceRequired="Talab qilinadigan boâsh joy: "
+UninstallingText=$BrandFullNameDA quyidagi jilddan oâchirildi. $_CLICK
+UninstallingSubText=Bu yerdan oâchirilmoqda:
+FileError=Yozish uchun faylni ochishda xatolik: \r\n\r\n$0\r\n\r\nOârnatishni toâxtatish uchun "Bekor qilish"ni bosing",\r\nYana urinish uchun "Qayta urinish"ni bosing yoki\r\nushbu faylni tashlab ketish uchun "Rad qilish"ni bosing.
+FileError_NoIgnore=Yozish uchun faylni ochishda xato: \r\n\r\n$0\r\n\r\nYana urinish uchun "Qayta urinish"ni bosing yoki\r\noârnatishni toâxtatish uchun "Bekor qilish"ni bosing.
+CantWrite="Yozib boâlmadi: "
+CopyFailed=Nusxalash amalga oshmadi
+CopyTo="Nusxa koâchirish"
+Registering="Roâyxatdan oâtkazilmoqda: "
+Unregistering="Roâyxatdan chiqarilmoqda: "
+SymbolNotFound="Simvol topilmadi: "
+CouldNotLoad="Yuklanmadi: "
+CreateFolder="Jild yaratish: "
+CreateShortcut="Yorliq yaratish: "
+CreatedUninstaller="oâchirgich yaratildi: "
+Delete="Faylni oâchirish: "
+DeleteOnReboot="Qayta ishga tushirganda oâchirish: "
+ErrorCreatingShortcut="Yorliq yaratishda xatolik: "
+ErrorCreating="Yaratishda xatolik:"
+ErrorDecompressing=Maâlumotlarni ajratishda xato! Oârnatgich buzilganmi?
+ErrorRegistering=DLLâni roâyxatdan oâtkazishda xato
+ExecShell="ExecShell: "
+Exec="Bajarish: "
+Extract="Ajratish: "
+ErrorWriting="Ajratish: faylga yozishda xatolik "
+InvalidOpcode=Oârnatgich buzilgan: xato kod
+NoOLE="OLE uchun yoâq: "
+OutputFolder="Chiqish jildi: "
+RemoveFolder="Jildni oâchirish:"
+RenameOnReboot="Qayta ishga tushirishda nomini oâzgartirish: "
+Rename="Nomini oâzgartirish: "
+Skipped="Tashlab ketildi: "
+CopyDetails=Tafsilotlarni vaqtinchalik xotiraga nusxa olib turish
+LogInstall=Oârnatish jarayoni maâlumotlari
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/browser/pdfviewer/chrome.properties b/browser/pdfviewer/chrome.properties
new file mode 100644
index 00000000000..fa71c5c0065
--- /dev/null
+++ b/browser/pdfviewer/chrome.properties
@@ -0,0 +1,19 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Chrome notification bar messages and buttons
+unsupported_feature=Bu PDF hujjat toʻgʻri koʻrsatilmasligi mumkin.
+unsupported_feature_forms=PDF faylalrda toâldirish uchun shakllar bor. Hozirda shakllarni toâldirish xususiyati qoâshilmagan.\u0020
+open_with_different_viewer=Boshqa koʻruvchi dastur bilan ochish
+open_with_different_viewer.accessKey=o
diff --git a/browser/pdfviewer/viewer.properties b/browser/pdfviewer/viewer.properties
new file mode 100644
index 00000000000..e451c74fff2
--- /dev/null
+++ b/browser/pdfviewer/viewer.properties
@@ -0,0 +1,169 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Main toolbar buttons (tooltips and alt text for images)
+previous.title=Oldingi sahifa
+previous_label=Oldingi
+next.title=Keyingi sahifa
+next_label=Keyingi
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
+# representing the total number of pages in the document.
+of_pages=/{{pagesCount}}
+# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}"
+# will be replaced by a number representing the currently visible page,
+# respectively a number representing the total number of pages in the document.
+
+zoom_out.title=Kichiklashtirish
+zoom_out_label=Kichiklashtirish
+zoom_in.title=Kattalashtirish
+zoom_in_label=Kattalashtirish
+zoom.title=Masshtab
+presentation_mode.title=Namoyish usuliga oʻtish
+presentation_mode_label=Namoyish usuli
+open_file.title=Faylni ochish
+open_file_label=Ochish
+print.title=Chop qilish
+print_label=Chop qilish
+download.title=Yuklab olish
+download_label=Yuklab olish
+bookmark.title=Joriy koʻrinish (nusxa oling yoki yangi oynada oching)
+bookmark_label=Joriy koʻrinish
+
+# Secondary toolbar and context menu
+tools.title=Vositalar
+tools_label=Vositalar
+first_page.title=Birinchi sahifaga oʻtish
+first_page.label=Birinchi sahifaga oʻtish
+first_page_label=Birinchi sahifaga oʻtish
+last_page.title=Soʻnggi sahifaga oʻtish
+last_page.label=Soʻnggi sahifaga oʻtish
+last_page_label=Soʻnggi sahifaga oʻtish
+page_rotate_cw.title=Soat yoʻnalishi boʻyicha burish
+page_rotate_cw.label=Soat yoʻnalishi boʻyicha burish
+page_rotate_cw_label=Soat yoʻnalishi boʻyicha burish
+page_rotate_ccw.title=Soat yoʻnalishiga qarshi burish
+page_rotate_ccw.label=Soat yoʻnalishiga qarshi burish
+page_rotate_ccw_label=Soat yoʻnalishiga qarshi burish
+
+
+# Document properties dialog box
+document_properties.title=Hujjat xossalari
+document_properties_label=Hujjat xossalari
+document_properties_file_name=Fayl nomi:
+document_properties_file_size=Fayl hajmi:
+# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in kilobytes, respectively in bytes.
+document_properties_kb={{size_kb}} KB ({{size_b}} bytes)
+# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in megabytes, respectively in bytes.
+document_properties_mb={{size_mb}} MB ({{size_b}} bytes)
+document_properties_title=Nomi:
+document_properties_author=Muallifi:
+document_properties_subject=Mavzusi:
+document_properties_keywords=Kalit soâzlar
+document_properties_creation_date=Yaratilgan sanasi:
+document_properties_modification_date=Oâzgartirilgan sanasi
+# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}"
+# will be replaced by the creation/modification date, and time, of the PDF file.
+document_properties_date_string={{date}}, {{time}}
+document_properties_creator=Yaratuvchi:
+document_properties_producer=PDF ishlab chiqaruvchi:
+document_properties_version=PDF versiyasi:
+document_properties_page_count=Sahifa soni:
+document_properties_close=Yopish
+
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+
+# Tooltips and alt text for side panel toolbar buttons
+# (the _label strings are alt text for the buttons, the .title strings are
+# tooltips)
+toggle_sidebar.title=Yon panelni yoqib/oʻchirib qoʻyish
+toggle_sidebar_label=Yon panelni yoqib/oʻchirib qoʻyish
+document_outline_label=Hujjat tuzilishi
+attachments.title=Ilovalarni koârsatish
+attachments_label=Ilovalar
+thumbs.title=Nishonchalarni koʻrsatish
+thumbs_label=Nishoncha
+findbar.title=Hujjat ichidan topish
+
+# Thumbnails panel item (tooltip and alt text for images)
+# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
+# number.
+thumb_page_title={{page}} sahifa
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas={{page}} sahifa nishonchasi
+
+# Find panel button title and messages
+find_previous.title=Soʻzlardagi oldingi hodisani topish
+find_previous_label=Oldingi
+find_next.title=Iboradagi keyingi hodisani topish
+find_next_label=Keyingi
+find_highlight=Barchasini ajratib koʻrsatish
+find_match_case_label=Katta-kichik harflarni farqlash
+find_reached_top=Hujjatning boshigacha yetib keldik, pastdan davom ettiriladi
+find_reached_bottom=Hujjatning oxiriga yetib kelindi, yuqoridan davom ettirladi
+find_not_found=Soʻzlar topilmadi
+
+# Error panel labels
+error_more_info=Koʻproq ma`lumot
+error_less_info=Kamroq ma`lumot
+error_close=Yopish
+# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be
+# replaced by the PDF.JS version and build ID.
+error_version_info=PDF.js v{{version}} (build: {{build}})
+# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an
+# english string describing the error.
+error_message=Xabar: {{message}}
+# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack
+# trace.
+error_stack=Toʻplam: {{stack}}
+# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename
+error_file=Fayl: {{file}}
+# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number
+error_line=Satr: {{line}}
+rendering_error=Sahifa renderlanayotganda xato yuz berdi.
+
+# Predefined zoom values
+page_scale_width=Sahifa eni
+page_scale_fit=Sahifani moslashtirish
+page_scale_auto=Avtomatik masshtab
+page_scale_actual=Haqiqiy hajmi
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading_error_indicator=Xato
+loading_error=PDF yuklanayotganda xato yuz berdi.
+invalid_file_error=Xato yoki buzuq PDF fayli.
+missing_file_error=PDF fayl kerak.
+unexpected_response_error=Kutilmagan server javobi.
+
+# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
+# "{{type}}" will be replaced with an annotation type from a list defined in
+# the PDF spec (32000-1:2008 Table 169 â Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+text_annotation_type.alt=[{{type}} Annotation]
+password_label=PDF faylni ochish uchun parolni kiriting.
+password_invalid=Parol - notoʻgʻri. Qaytadan urinib koʻring.
+password_ok=OK
+
+printing_not_supported=Diqqat: chop qilish bruzer tomonidan toʻliq qoʻllab-quvvatlanmaydi.
+printing_not_ready=Diqqat: PDF fayl chop qilish uchun toʻliq yuklanmadi.
+web_fonts_disabled=Veb shriftlar oʻchirilgan: ichki PDF shriftlardan foydalanib boʻlmmaydi.
+document_colors_not_allowed=PDF hujjat oʻzining ranglaridan foydalanishga ruxsat bermaydi: 'Sahifalarga oʻzining rangidan foydalanishga ruxsat berish' ushbu brauzerda oʻchirib qoʻyilgan.
diff --git a/browser/profile/bookmarks.inc b/browser/profile/bookmarks.inc
new file mode 100644
index 00000000000..b1c23e4b8aa
--- /dev/null
+++ b/browser/profile/bookmarks.inc
@@ -0,0 +1,151 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#filter emptyLines
+
+# LOCALIZATION NOTE: The 'en-US' strings in the URLs will be replaced with
+
+# your locale code, and link to your translated pages as soon as they're
+
+# live.
+
+
+#define bookmarks_title Xatchoʻplar
+
+
+#define bookmarks_heading Xatchoʻplar
+
+
+#define bookmarks_toolbarfolder Xatchoʻplar asboblar paneli jildi
+
+
+#define bookmarks_toolbarfolder_description Xatchoʻplarni "Xatchoʻplar panelida" koʻrish uchun, ularni ushbu jilga qoʻshing\u0020
+
+
+# LOCALIZATION NOTE (getting_started):
+
+
+# link title for https://www.mozilla.org/en-US/firefox/central/
+
+
+#define getting_started Ishlashni boshlash
+
+
+# LOCALIZATION NOTE (firefox_heading):
+
+
+# Firefox links folder name
+
+
+#define firefox_heading Mozilla Firefox
+
+
+# LOCALIZATION NOTE (firefox_help):
+
+
+# link title for https://www.mozilla.org/en-US/firefox/help/
+
+
+#define firefox_help Yordam va qoʻllanmalar
+
+
+# LOCALIZATION NOTE (firefox_customize):
+
+
+# link title for https://www.mozilla.org/en-US/firefox/customize/
+
+
+#define firefox_customize "Firefox"ni moslash
+
+
+# LOCALIZATION NOTE (firefox_community):
+
+
+# link title for https://www.mozilla.org/en-US/contribute/
+
+
+#define firefox_community Hissangizni qoʻshing!
+
+
+# LOCALIZATION NOTE (firefox_about):
+
+
+# link title for https://www.mozilla.org/en-US/about/
+
+
+#define firefox_about Biz haqimizda
+
+
+# LOCALIZATION NOTE (nightly_heading):
+
+
+# Firefox Nightly links folder name
+
+
+#define nightly_heading Firefox Nightly manbalari
+
+
+# LOCALIZATION NOTE (nightly_blog):
+
+
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+
+
+#define nightly_blog Firefox Nightly blogi
+
+
+# LOCALIZATION NOTE (bugzilla):
+
+
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+
+
+#define bugzilla Mozilla Bug Tracker
+
+
+# LOCALIZATION NOTE (mdn):
+
+
+# Nightly builds only, link title for https://developer.mozilla.org/
+
+
+#define mdn Mozilla dasturchilar tarmogâi
+
+
+# LOCALIZATION NOTE (nightly_tester_tools):
+
+
+# Nightly builds only, link title for https://addons.mozilla.org/en-US/firefox/addon/nightly-tester-tools/
+
+
+#define nightly_tester_tools Nightly sinov vositalari
+
+
+# LOCALIZATION NOTE (crashes):
+
+
+# Nightly builds only, link title for about:crashes
+
+
+#define crashes Barcha nosozliklar
+
+
+# LOCALIZATION NOTE (irc):
+
+
+# Nightly builds only, link title for ircs://irc.mozilla.org/nightly
+
+
+#define irc Nightly boâyicha IRC kanalda suhbatlashish
+
+
+# LOCALIZATION NOTE (planet):
+
+
+# Nightly builds only, link title for https://planet.mozilla.org/
+
+
+#define planet Mozilla sayyorasi
+
+
+#unfilter emptyLines
diff --git a/browser/updater/updater.ini b/browser/updater/updater.ini
new file mode 100644
index 00000000000..c70818282e7
--- /dev/null
+++ b/browser/updater/updater.ini
@@ -0,0 +1,9 @@
+; This Source Code Form is subject to the terms of the Mozilla Public
+; License, v. 2.0. If a copy of the MPL was not distributed with this
+; file, You can obtain one at http://mozilla.org/MPL/2.0/.
+; This file is in the UTF-8 encoding
+; All strings must be less than 600 chars.
+[Strings]
+TitleText=%MOZ_APP_DISPLAYNAME%`ni yangilash
+InfoText=%MOZ_APP_DISPLAYNAME% yangilanishlarni oÊ»rnatishni bir ozdan keyin boshlaydiâ¦
+MozillaMaintenanceDescription=Mozilla xizmat markazi kompyuteringizdada yangi va xavfsiz Mozilla Firefox versiyasi oʻrnatilganligiga amin emas.Onlayn xavfsizligingiz uchun "Mozilla Firefoxni" yangilash juda muhim, shuning uchun Mozilla ushbu xizmatni yoqib qoʻyishni tavsiya qiladi.\u0020
diff --git a/calendar/chrome/calendar/calendar-alarms.properties b/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 00000000000..08114bf68fe
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-alarms.properties
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reminderCustomTitle):
+# %1$S = unit, %2$S = reminderCustomOrigin
+# Example: "3 minutes" "before the task starts"
+reminderCustomTitle=%1$S %2$S
+reminderTitleAtStartEvent=Tadbir boshlanadigan lahza
+reminderTitleAtStartTask=Vazifa boshlanadigan lahza
+reminderTitleAtEndEvent=Tadbir tugaydigan lahza
+reminderTitleAtEndTask=Vazifa tugaydigan lahza
+
+# LOCALIZATION NOTE (reminderSnoozeOkA11y)
+# This string is not seen in the UI, it is read by screen readers when the user
+# focuses the "OK" button in the "Snooze for..." popup of the alarm dialog.
+# %1$S = any of unit*
+reminderSnoozeOkA11y=%1$S uchun eslatkichni orqaga surish
+
+reminderCustomOriginBeginBeforeEvent=tadbir boshlanishidan oldin
+reminderCustomOriginBeginAfterEvent=tadbir boshlanishidan keyin
+reminderCustomOriginEndBeforeEvent=tadbir tugashidan oldin
+reminderCustomOriginEndAfterEvent=tadbir tugashidan keyin
+reminderCustomOriginBeginBeforeTask=vazifa boshlanishidan oldin
+reminderCustomOriginBeginAfterTask=vazifa boshlanishidan keyin
+reminderCustomOriginEndBeforeTask=vazifa tugashidan oldin
+reminderCustomOriginEndAfterTask=vazifa tugashidan keyin
+
+reminderErrorMaxCountReachedEvent=Tanlangan taqvimda har bir tadbir uchun #1 ta eslatkich cheklovi bor.;Tanlangan taqvimda har bir tadbir uchun #1 ta eslatkich cheklovi bor.
+reminderErrorMaxCountReachedTask=Tanlangan taqvimda har bir vazifa uchun #1 ta eslatkich cheklovi bor.;Tanlangan taqvimda har bir vazifa uchun #1 ta eslatkich cheklovi bor.
diff --git a/calendar/chrome/calendar/calendar-event-dialog-attendees.properties b/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 00000000000..56ad8b1a418
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+event.attendee.role.required = Majburiy ishtirokchilar
+event.attendee.role.optional = Ixtiyoriy ishtirokchilar
+event.attendee.role.nonparticipant = Qatnashmaydiganlar
+event.attendee.role.chair = Rais
+event.attendee.role.unknown = Nomaâlum ishtirokchi (%1$S)
+
+event.attendee.usertype.individual = Alohida
+event.attendee.usertype.group = Guruh
+event.attendee.usertype.resource = Manba
+event.attendee.usertype.room = Xona
+event.attendee.usertype.unknown = Nomaâlum tur (%1$S)
diff --git a/calendar/chrome/calendar/calendar-event-dialog.dtd b/calendar/chrome/calendar/calendar-event-dialog.dtd
new file mode 100644
index 00000000000..013669e94bf
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,413 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar-event-dialog.properties b/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 00000000000..a1638da9948
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-event-dialog.properties
@@ -0,0 +1,442 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dailyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Daily repeat rules
+# #1 - number
+# e.g. "every 4 days"
+dailyEveryNth=har kuni;har #1 kunda
+repeatDetailsRuleDaily4=har hafta kuni
+
+# LOCALIZATION NOTE (weeklyNthOnNounclass...)
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday (one or more)
+# #2 - week interval
+# e.g. "every 3 weeks on Tuesday, Wednesday and Thursday
+weeklyNthOnNounclass1=har %1$S;har #2 hafta %1$Sâda
+weeklyNthOnNounclass2=har %1$S;har #2 hafta %1$Sâda
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=har hafta;har #1 hafta
+
+# LOCALIZATION NOTE ('repeatDetailsDay...' and 'repeatDetailsDay...Nounclass'):
+# Week days names and week days noun classes (feminine/masculine grammatical
+# gender) for languages that need different localization when weekdays nouns
+# have different noun classes (genders).
+# For every weekday, in 'repeatDetailsDay...Nounclass' strings write:
+# "nounclass1" for languages with grammatical genders -> MASCULINE gender;
+# for languages with noun classes -> a noun class;
+# for languages without noun classes or grammatical gender.
+#
+# "nounclass2" for languages with grammatical genders -> FEMININE gender;
+# for languages with noun classes -> a different noun class.
+#
+# "nounclass3", "nounclass4" and so on for languages that need more than two
+# noun classes for weekdays. In this case add corresponding
+# rule string with "Nounclass..." suffix and ordinal string
+# "repeatOrdinalxNounclass..."
+# Will be used rule strings with "Nounclass..." suffix corresponding to the
+# following strings if there is a weekday in the rule string.
+repeatDetailsDay1=Yakshanba
+repeatDetailsDay1Nounclass=nounclass1
+repeatDetailsDay2=Dushanba
+repeatDetailsDay2Nounclass=nounclass1
+repeatDetailsDay3=Seshanba
+repeatDetailsDay3Nounclass=nounclass1
+repeatDetailsDay4=Chorchanba
+repeatDetailsDay4Nounclass=nounclass1
+repeatDetailsDay5=Payshanba
+repeatDetailsDay5Nounclass=nounclass1
+repeatDetailsDay6=Juma
+repeatDetailsDay6Nounclass=nounclass1
+repeatDetailsDay7=Shanba
+repeatDetailsDay7Nounclass=nounclass1
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=va
+
+# LOCALIZATION NOTE (monthlyRuleNthOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of weekdays with ordinal, article and noun class/gender
+# (ordinal and weekday of every element in the list follow the order
+# and the rule of ordinalWeekdayOrder string)
+# #2 - interval
+# e.g. "the first Monday and the last Friday of every 3 months"
+monthlyRuleNthOfEveryNounclass1=har hafta %1$S;har hafta %1$S #2 oy
+monthlyRuleNthOfEveryNounclass2=har hafta %1$S;har hafta%1$S #2 oy
+
+# LOCALIZATION NOTE (ordinalWeekdayOrder):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# This string allows to change the order of the elements "ordinal" and
+# "weekday" (or to insert a word between them) for the argument %1$S of the
+# string monthlyRuleNthOfEveryNounclass...
+# Without changing this string, the order is that one required from most
+# languages: ordinal + weekday (e.g. "'the first' 'Monday' of every 2 months").
+# %1$S - ordinal with article
+# %2$S - weekday noun
+# e.g. "'the first' 'Monday'"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+ordinalWeekdayOrder=%1$S %2$S
+
+# LOCALIZATION NOTE (monthlyEveryOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of single weekdays and/or weekdays with ordinal, article and
+# noun class/gender when rule contains also specific day in the month
+# #2 - interval
+# e.g. "every Monday, Tuesday and the second Sunday of every month"
+monthlyEveryOfEveryNounclass1=har oyda har %1$S;har #2 oyda har %1$S
+monthlyEveryOfEveryNounclass2=har oyda har %1$S;har #2 oyda har %1$S
+
+# LOCALIZATION NOTE (monthlyDaysOfNth_day):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month or a sequence of days of month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties) separated with commas;
+# e.g. "days 3, 6 and 9" or "days 3rd, 6th and 9th"
+monthlyDaysOfNth_day=%1$S kuni;%1$S kunlari
+
+# LOCALIZATION NOTE (monthlyDaysOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - it's the string monthlyDaysOfNth_day: day of month or a sequence of days
+# of month, possibly followed by an ordinal symbol, separated with commas;
+# #2 - monthly interval
+# e.g. "days 3, 6, 9 and 12 of every 3 months"
+monthlyDaysOfNth=har hafta %1$S;har hafta %1$S #2 oy
+
+# LOCALIZATION NOTE (monthlyLastDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month
+# #2 - month interval
+# e.g. "the last day of every 3 months"
+monthlyLastDayOfNth=oyning soânggi kuni; har #1 oyning soânggi kuni
+
+# LOCALIZATION NOTE (monthlyEveryDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# #2 - month interval
+# e.g. "every day of the month every 4 months"
+monthlyEveryDayOfNth=har oyning har kuni;har #2 oyning har kuni
+
+# LOCALIZATION NOTE (repeatOrdinal...Nounclass...):
+# Ordinal numbers nouns for every noun class (grammatical genders) of weekdays
+# considered in 'repeatDetailsDayxNounclass' strings. For languages that need
+# localization according to genders or noun classes.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add 'repeatOrdinal...Nounclass' strings with suffix 3, 4 and so on for
+# languages with more than two noun classes for weekdays. In this case
+# must be added corresponding rule strings with 'Nounclass...' suffix and
+# corresponding values "nounclass..." must be written in
+# 'repeatDetailsDayxNounclass' strings.
+repeatOrdinal1Nounclass1=birnchi
+repeatOrdinal2Nounclass1=ikkinchi
+repeatOrdinal3Nounclass1=uchinchi
+repeatOrdinal4Nounclass1=toârtinchi
+repeatOrdinal5Nounclass1=berishni\u0020
+repeatOrdinal-1Nounclass1=soânggi
+repeatOrdinal1Nounclass2=birinchi
+repeatOrdinal2Nounclass2=ikkinchi
+repeatOrdinal3Nounclass2=uchinchi
+repeatOrdinal4Nounclass2=toârtinchi
+repeatOrdinal5Nounclass2=beshinchi
+repeatOrdinal-1Nounclass2=soânggi
+
+# LOCALIZATION NOTE (yearlyNthOn):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# %1$S - month name
+# %2$S - day of month possibly followed by an ordinal symbol (depending on the string
+# dayOrdinalSymbol in dateFormat.properties)
+# #3 - yearly interval
+# e.g. "every 3 years on December 14"
+# "every 2 years on December 8th"
+yearlyNthOn=har %1$S %2$S;har #3 yilda %1$S %2$S
+
+# LOCALIZATION NOTE (yearlyNthOnNthOfNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - ordinal with article and noun class/gender corresponding to weekday
+# %2$S - weekday
+# %3$S - month
+# #4 - yearly interval
+# e.g. "the second Monday of every March"
+# e.g "every 3 years the second Monday of March"
+yearlyNthOnNthOfNounclass1=har %3$S/%1$S %2$S;har #4 yilda %1$S %2$S/%3$S
+yearlyNthOnNthOfNounclass2=%1$S %2$S/har %3$S;har #4 yilda %1$S %2$S/%3$S
+
+# LOCALIZATION NOTE (yearlyOnEveryNthOfNthNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday
+# %2$S - month
+# #3 - yearly interval
+# e.g. "every Thursday of March"
+# e.g "every 3 years on every Thursday of March"
+yearlyOnEveryNthOfNthNounclass1=har %1$S/%2$S;har #3 yilda har %1$S/%2$S
+yearlyOnEveryNthOfNthNounclass2=har %1$S/%2$S;har #3 yilda har %1$S/%2$S
+
+#LOCALIZATION NOTE (yearlyEveryDayOf):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# This string describes part of a yearly rule which includes every day of a month.
+# %1$S - month
+# #2 - yearly interval
+# e.g. "every day of December"
+# e.g. "every 3 years every day of December"
+yearlyEveryDayOf=har %1$S kuni;har #2 yilning har %1$S kuni
+
+repeatDetailsMonth1=Yanvar
+repeatDetailsMonth2=Fevral
+repeatDetailsMonth3=Mart
+repeatDetailsMonth4=Aprel
+repeatDetailsMonth5=May
+repeatDetailsMonth6=Iyun
+repeatDetailsMonth7=Iyul
+repeatDetailsMonth8=Avgust
+repeatDetailsMonth9=Sentabr
+repeatDetailsMonth10=Oktabr
+repeatDetailsMonth11=Noyabr
+repeatDetailsMonth12=Dekabr
+
+# LOCALIZATION NOTE (repeatCount):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# #5 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# from 5:00 PM to 6:00 PM"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times
+# from 5:00 PM to 6:00 PM"
+repeatCount=Yuz beradi: %1$S\namalda: %2$S for #5 time\nboshlanishi: %3$S tugashi: %4$S.;Yuz beradi: %1$S\namalda: %2$S uchun #5 uchun vaqtlar\nboshlanishi: %3$S tugashi: %4$S.
+
+# LOCALIZATION NOTE (repeatCountAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# #3 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times"
+repeatCountAllDay=Yuz beradi: %1$S\namalda: %2$S #3 uchun vaqt.;Yuz beradi: %1$S\namalda: %2$S #3 uchun vaqtlar.
+
+# LOCALIZATION NOTE (repeatDetailsUntil):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# %4$S - event start time (e.g. hh:mm (PM/AM))
+# %5$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with weeklyNthOn:
+# "Occurs every 2 weeks on Sunday and Friday
+# effective 1/1/2009 until 1/1/2010
+# from 5:00 PM to 6:00 PM"
+repeatDetailsUntil=Hodisalar %1$S\namalda: %2$S %3$Sâgacha\nboshlanishi: %4$S tugashi: %5$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntilAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009 until 1/1/2010"
+repeatDetailsUntilAllDay=Yuz beradi: %1$S\namalda: %2$S %3$S gacha.
+
+# LOCALIZATION NOTE (repeatDetailsInfinite):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with monthlyDaysOfNth:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009
+# from 5:00 PM to 6:00 PM"
+repeatDetailsInfinite=Yuz beradi: %1$S\nkuchga kiradi: %2$S\nboshlanishi: %3$S tugashi: %4$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfiniteAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009"
+repeatDetailsInfiniteAllDay=Yuz beradi: %1$S\nkuchga kiradi: %2$S.
+
+# LOCALIZATION NOTE (monthlyLastDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# A monthly rule with one or more days of the month (monthlyDaysOfNth) and the
+# string "the last day" of the month.
+# e.g.: "Occurs day 15, 20, 25 and the last day of every 3 months"
+monthlyLastDay=soânggi kun
+
+# LOCALIZATION NOTE (ruleTooComplex):
+# This string is shown in the repeat details area if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplex=Tafsilotlar uchun bu yerga bosing
+
+# LOCALIZATION NOTE (ruleTooComplexSummary):
+# This string is shown in the event summary dialog if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplexSummary=Nomaâlum holatdagi tafsilotlarni qaytarish
+
+# differences between the dialog for an Event or a Task
+newEvent=Yangi tadbir
+newTask=Yangi vazifa
+itemMenuLabelEvent=Tadbir
+itemMenuAccesskeyEvent2=T
+itemMenuLabelTask=Vazifa
+itemMenuAccesskeyTask2=T
+
+emailSubjectReply=Qayta: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Marhamat, havola manzilini koârsating
+enterLinkLocation=Veb sahifa yoki hujjat manzilini kiriting.
+
+summaryDueTaskLabel=Tugash sanasi:
+
+# Attach File Dialog
+attachViaFilelink=Fayl %1$Sâdan foydalanmoqda
+selectAFile=Ilova qilinadigan fayllarni tanlasg
+removeCalendarsTitle=Biriktirlgan fayllarni oâchirish
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=#1 ta biriktirmani olib tashlashni xohlaysizmi?;#1 ta biriktirmani olib tashlashni xohlaysizmi?
+
+# Recurrence Dialog Widget Order
+# LOCALIZATION NOTE: You can change the order of below params
+# Edit recurrence window -> Recurrence pattern -> Repeat monthly
+# %1$S - ordinal with article, %2$S - weekday
+# e.g. "the First Saturday"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+monthlyOrder=%1$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - day of month, %2$S - of, %3$S - month
+# e.g. "6 [of] September"
+# If you don't need %2$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder=%1$S %3$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - ordinal with article, %2$S - weekday, %3$S - of, %4$S - month
+# e.g. "the First Saturday of September"
+# If you don't need %3$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder2=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (pluralForWeekdays):
+# This string allows to set the use of weekdays nouns in plural form for
+# languages that need them in sentences like "every Monday" or "every Sunday
+# of March" etc.
+# Rule strings involved by this setting are:
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+# In your local write:
+# "true" if sentences like those above need weekday in plural form;
+# "false" if sentences like those above don't need weekday in plural form;
+pluralForWeekdays=yolgâon
+
+# LOCALIZATION NOTE (repeatDetailsDayxxxPlural):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# Weekdays in plural form used inside sentences like "every Monday" or
+# "every Sunday of May" etc. for languages that need them.
+# These plurals will be used inside the following rule strings only if string
+# 'pluralForWeekdays' (see above) is set to "true":
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+repeatDetailsDay1Plural=Yakshanba
+repeatDetailsDay2Plural=Dushanba
+repeatDetailsDay3Plural=Seshanba
+repeatDetailsDay4Plural=Chorchanba
+repeatDetailsDay5Plural=Payshanba
+repeatDetailsDay6Plural=Juma
+repeatDetailsDay7Plural=Shanba
+
+# LOCALIZATION NOTE (eventRecurrenceForeverLabel):
+# Edit/New Event dialog -> datepicker that sets the until date.
+# For recurring rules that repeat forever, this labels appears in the
+# datepicker, below the minimonth, as an option for the until date.
+eventRecurrenceForeverLabel=Abadiy
+
+# LOCALIZATION NOTE (eventRecurrenceMonthlyLastDayLabel):
+# Edit dialog recurrence -> Monthly Recurrence pattern -> Monthly daypicker
+# The label on the monthly daypicker's last button that allows to select
+# the last day of the month inside a BYMONTHDAY rule.
+eventRecurrenceMonthlyLastDayLabel=Soânggi kun
+
+# LOCALIZATION NOTE (counterSummaryAccepted) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+
+# LOCALIZATION NOTE (counterSummaryDeclined) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+
+# LOCALIZATION NOTE (counterSummaryDelegated) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+
+# LOCALIZATION NOTE (counterSummaryNeedsAction) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+
+# LOCALIZATION NOTE (counterSummaryTentative) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
diff --git a/calendar/chrome/calendar/calendar-extract.properties b/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 00000000000..6352c714ac3
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-extract.properties
@@ -0,0 +1,280 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+# Strings here are used to create events and tasks with start and end times
+# based on email content.
+# None of the strings are displayed in the user interface.
+#
+# You don't have to fill all from.*, until.*, *.prefix and *.suffix patterns.
+# It's ok to leave some empty.
+# Please consider declensions and gender if your language has them.
+# Don't just translate directly. The number of variants doesn't have to be
+# the same as in en-US. All of 0, 1, 2, etc is allowed in patterns except alphabet
+# pattern. You can and should add language specific variants.
+#
+# There are two different ways to find a start time text in email:
+# 1) it matches a from.* pattern and does not have end.prefix or end.suffix next to it
+# 2) it matches until.* pattern and has start.prefix or start.suffix next to it
+# Similar inverse logic applies to end times.
+# These rules enable using prefix and suffix values with only start.* or only until.*
+# patterns localized for some languages and thus not having to repeat the same
+# values in both.
+#
+# Patterns are partially space-insensitive.
+# "deadline is" pattern will find both "deadlineis" and "deadline is"
+# but "deadlineis" won't find "deadline is" or "deadline is".
+# Therefore you should include all spaces that are valid within a pattern.
+
+# LOCALIZATION NOTE (start.prefix):
+# datetimes with these in front are extracted as start times
+# can be a list of values, separate variants by |
+start.prefix =
+
+# LOCALIZATION NOTE (start.suffix):
+# datetimes followed by these are extracted as start times
+start.suffix = ...dan | ...gacha | ...ga | - | ...gacha | ...gacha | va
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = ...dan | ...gacha | ga | - | gacha | gacha | va | muddati: | muddat | tugaydi | tugash_vaqti: | tugash_vaqti::
+
+# LOCALIZATION NOTE (end.suffix):
+# datetimes followed by these are extracted as end times
+# can be a list of values, separate variants by |
+end.suffix =
+
+# LOCALIZATION NOTE (no.datetime.prefix):
+# datetimes with these in front won't be used
+# specify full words here
+no.datetime.prefix = soânggi hafta | joânatildi | e-pochta | e-pochta | oârniga: | > | baxtga qarshi | ichida | emas
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = qavat | qvt | : | e-pochta | e-pochta | > | % | usd | dollar | $
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = bugun
+
+from.tomorrow = ertaga
+# LOCALIZATION NOTE (until.*):
+# can be a list of values, separate variants by |
+until.tomorrow =
+
+# LOCALIZATION NOTE (from.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+# should not have "#1" as this would match any single number in email to a time
+from.ordinal.date = #1- | #1- | #1- | #1-
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = peshin
+until.noon =
+
+# LOCALIZATION NOTE (from.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should not have "#1" as this would match any single number in email to a time
+
+# LOCALIZATION NOTE (until.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+
+# LOCALIZATION NOTE (until.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.am =
+
+# LOCALIZATION NOTE (from.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+
+# LOCALIZATION NOTE (until.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.pm =
+
+# LOCALIZATION NOTE (from.half.hour.before):
+# denotes times 30 minutes before next full hour
+from.half.hour.before = #1âdan yarim soat oldin
+
+# LOCALIZATION NOTE (until.half.hour.before):
+# denotes times 30 minutes before next full hour
+until.half.hour.before =
+
+# LOCALIZATION NOTE (from.half.hour.after):
+# denotes times 30 minutes after last full hour
+from.half.hour.after = #1 yarim
+
+# LOCALIZATION NOTE (until.half.hour.after):
+# denotes times 30 minutes after last full hour
+until.half.hour.after =
+
+# LOCALIZATION NOTE (from.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+
+# LOCALIZATION NOTE (until.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes =
+
+# LOCALIZATION NOTE (from.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+
+# LOCALIZATION NOTE (until.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.am =
+
+# LOCALIZATION NOTE (from.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+
+# LOCALIZATION NOTE (until.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.pm =
+
+# LOCALIZATION NOTE (from.monthname.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches monthname
+
+# LOCALIZATION NOTE (until.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+until.monthname.day =
+
+# LOCALIZATION NOTE (from.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+
+# LOCALIZATION NOTE (until.month.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches numbers 1-12
+until.month.day =
+
+# LOCALIZATION NOTE (from.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+
+# LOCALIZATION NOTE (until.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+until.year.month.day =
+
+# LOCALIZATION NOTE (from.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+
+# LOCALIZATION NOTE (until.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+until.year.monthname.day =
+
+# LOCALIZATION NOTE (duration.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (duration.minutes):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = yanvar | yan | yan.
+month.2 = fevral | fev | fev.
+month.3 = mart | mar | mar.
+month.4 = aprel | apr | apr.
+month.5 = may
+month.6 = iyun | iyun | iyun.
+month.7 = iyul | iyul | iyul.
+month.8 = avgust | avg | avg.
+month.9 = sentabr | sen | sen. | sent.
+month.10 = oktaber | okt | okt.
+month.11 = noyabr | noy | noy.
+month.12 = dekabr | dek | dek.
+
+# LOCALIZATION NOTE (from.weekday.*):
+# used to derive start date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (from.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+from.weekday.0 = yakshanba | yakshanba kunlari
+from.weekday.1 = dushanba | dushanba kunlari
+from.weekday.2 = seshanba | seshanba kunlari
+from.weekday.3 = chorshanba | chorshanba kunlari
+from.weekday.4 = payshanba | payshanba kunlari
+from.weekday.5 = juma | juma kunlari
+from.weekday.6 = shanba | shanba kunlari
+
+# LOCALIZATION NOTE (until.weekday.*):
+# used to derive end date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (until.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+until.weekday.0 =
+until.weekday.1 =
+until.weekday.2 =
+until.weekday.3 =
+until.weekday.4 =
+until.weekday.5 =
+until.weekday.6 =
+
+# LOCALIZATION NOTE (number.*):
+# used within other patterns to understand dates where day of month isn't written with digits
+# can be a list of values, separate variants by |
+number.0 = nol
+number.1 = bir | birinchi
+number.2 = ikki | ikkinchi
+number.3 = uch | uchinchi
+number.4 = toârt | toârtinchi
+number.5 = besh | beshinchi
+number.6 = olti | oltinchi
+number.7 = yetti | yettinchi
+number.8 = sakkiz | sakkizinchi
+number.9 = toâqqiz | toâqqizinchi
+number.10 = oân | oâninchi
+number.11 = oân bir | oân birinchi
+number.12 = oân ikki | oân ikkinchi
+number.13 = oân uch | oân uchinchi
+number.14 = oân toârt | oân toârtinchi
+number.15 = oân besh | oân beshinchi
+number.16 = oân olti | oân oltinchi
+number.17 = oân yetti | oân yettinchi
+number.18 = oân sakkiz | oân sakkizinchi
+number.19 = oân toâqqiz | oân toâqqizinchi
+number.20 = yigirma | yigirmanchi
+number.21 = yigirma bir | yigirma birinchi
+number.22 = yigirma ikki | yigirma ikkinchi
+number.23 = yigirma uch | yigirma uchinchi
+number.24 = yigirma toârt | yigirma toârtinchi
+number.25 = yigirma besh | yigirma beshinchi
+number.26 = yigirma olti | yigirma oltinchi
+number.27 = yigirma yetti | yigirma yettinchi
+number.28 = yigirma sakkiz | yigirma sakkizinchi
+number.29 = yigirma toâqqiz | yigirma toâqqizinchi
+number.30 = oâttiz | oâttizinchi
+number.31 = oâttiz bir | oâttiz birinchi
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
diff --git a/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 00000000000..bfe53445966
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-invitations-dialog.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar-occurrence-prompt.dtd b/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 00000000000..5864a9335f4
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar-occurrence-prompt.properties b/calendar/chrome/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 00000000000..3e7ae1aaa86
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-occurrence-prompt.properties
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+header.isrepeating.event.label=â takrorlanadigan tadbir
+header.isrepeating.task.label=â takrorlanadigan vazifa
+
+windowtitle.event.delete=Takroriy tadbirni oâchirish
+windowtitle.task.delete=Takroriy vazifani oâchirish
+windowtitle.event.edit=Takroriu tadbormo tahrirlash
+windowtitle.task.edit=Takroriy vazifani tahrirlash
+
+buttons.occurrence.delete.label=Hozirgi ushbu hodisani oâchirish
+buttons.occurrence.edit.label=Hozirgi ushbu hodisani tahrirlash
+
+buttons.allfollowing.delete.label=Bu va barcha kelajakdagi hodisalarni oâchirish
+buttons.allfollowing.edit.label=Bu va barcha kelajakdagi hodisalarni tahrirlash
+
+buttons.parent.delete.label=Barcha hodisalarni oâchirish
+buttons.parent.edit.label=Barcha hodisalarni tahrirlash
diff --git a/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd b/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
new file mode 100644
index 00000000000..c84df148524
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar.dtd b/calendar/chrome/calendar/calendar.dtd
new file mode 100644
index 00000000000..4df49fa54c4
--- /dev/null
+++ b/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,374 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar.properties b/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 00000000000..dc8b15e8914
--- /dev/null
+++ b/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,732 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Misc. strings in JS
+
+# LOCALIZATION NOTE (PrintPreviewWindowTitle):
+# %1$S will be replaced with the title of a html frame
+PrintPreviewWindowTitle=Chop qilish uchun %1$S koârinishi
+Untitled=Nomsiz
+
+# Default name for new events
+newEvent=Yangi tadbir
+
+# Titles for the event/task dialog
+newEventDialog=Yangi tadbir
+editEventDialog=Tadbirni tahrirlash
+newTaskDialog=Yangi vazifa
+editTaskDialog=Vazifani tahrirlash
+
+# Do you want to save changes?
+askSaveTitleEvent=Tadbirni saqlash
+askSaveTitleTask=Vazifani saqlash
+askSaveMessageEvent=Tadbir saqlanmadi. Tadbirni saqlashni xohlaysizmi?
+askSaveMessageTask=Vazifa saqlanmadi. Vazifani saqlashni xohlaysizmi?
+
+# Event Dialog Warnings
+warningEndBeforeStart=Siz kiritgan hodisaning tugash sanasi boshlanish sanasidan oldingi sana
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Uy
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Nomsiz taqvim
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Noaniq
+statusConfirmed =Tasdiqlandi
+eventStatusCancelled=Bekor qilindi
+todoStatusCancelled =Bekor qilindi
+statusNeedsAction =Kerakli amallar
+statusInProcess =Amalda
+statusCompleted =Tugadi
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Yuqori
+normalPriority=Oârtacha
+lowPriority=Past
+
+importPrompt=Ushbu elementlar ichiga qaysi taqvimni import qilmoqchisiz?
+exportPrompt=Qaysi taqvimni exsport qilmoqchisiz?
+publishPrompt=Qaysi taqvimni eâlon qilmoqchisiz?
+
+# LOCALIZATION NOTE (importItemsFailed):
+# %1$S will be replaced with number of failed items
+# %2$S will be replaced with last error code / error string
+importItemsFailed=%1$S ta element import qilinmadi. Soânggi xatolik: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile):
+# %1$S will be replaced with file path
+
+#spaces needed at the end of the following lines
+eventDescription=Taârifi:
+
+unableToRead=Fayldan oâqib boâlmadi:
+unableToWrite=Faylga yozib boâlmadi:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Mozilla taqvimi
+
+# LOCALIZATION NOTE (timezoneError):
+# used for an error message like 'An unknown and undefined timezone was found while reading c:\Mycalendarfile.ics'
+# %1$S will be replaced with the path to a file
+timezoneError=%1$S oâqilayotganda nomaâlum va noaniq vaqt hududi topildi.
+
+# LOCALIZATION NOTE (duplicateError):
+# %1$S will be replaced with number of duplicate items
+# %2$S will be replaced with a file path pointing to a calendar
+duplicateError=%1$S ta element manzil %2$S va taqvimida borligi uchun rad qilindi.
+
+unableToCreateProvider=%1$S manzilida joylashgan taqzimni foyalanish uchun tayyorlashda xatolik yuz berdi. U mavjud boâlmaydi.
+unknownTimezonesError=%1$S manzilida joylashgan taqzimni foyalanish uchun tayyorlashda xatolik yuz berdi. U mavjud boâlmaydi. Taqvimda nomaâlum vaqt hududi boâlishi mumkin. Eng soânggi calendar-timezones.xpi kengaytmasini oârnatish uchun urinib koâring.
+missingCalendarTimezonesError=Hech qanday vaqt hududi topilmadi. calendar-timezones.xpi kengaytmasini oârnating.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem="%2$S"da "%1$S" nomaâlum vaqt hududi. 'floating' vaqt hududi sifatida oârniga qabul qilinadi: %3$S
+TimezoneErrorsAlertTitle=Vaqt hududi boâyicha xatoliklar
+TimezoneErrorsSeeConsole=Xatol terminalini koâring: Nomaâlum vaqt hududlari 'floating' mahalliy vaqt hududi sifatida qabul qilinadi.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Taqvimni olib tashlash
+removeCalendarButtonDelete=Taqvimni oâchirish
+removeCalendarButtonUnsubscribe=Obunadan voz kechish
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe="%1$S" taqvimini olib tashlamoqchimisiz? Obunadan voz kechish taqvimni roâyxatdan olib tashlaydi, oâchirish esa uning maâlumotlarini butunlay tozalab tashlaydi.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete="%1$S" taqvimini butunlay oâchirib tashlashni xohlaysizmi?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe="%1$S" taqvimi obunasidan voz kechishni xohlaysizmi?
+
+WeekTitle=%1$S-hafta
+None=Yoâq
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+tooNewSchemaErrorBoxTitle=Taqvimingiz maâlumotlari %1$S versiyasi bilan mos emas
+
+# LOCALIZATION NOTE (tooNewSchemaErrorBoxTextLightning):
+# %1$S will be replaced with the name of the calendar application e.g. 'Lightning'
+# %2$S will be replaced with the name of the host application 'calendar'
+tooNewSchemaErrorBoxTextLightning=Profilingizdagi taqvim maâlumotlari %1$Sâning yangiroq versiyasiga yangilandi va davom etilsa, maâlumotlar yoâqolishi yoki buzilishiga sabab boâlishi mumkin. %1$S hozir oâchirib qoâyiladi va %2$S qayta ishga tushiriladi.
+
+# LOCALIZATION NOTE (tooNewSchemaButtonRestart):
+# %1$S will be replaced with the name of the host application 'Calendar'
+tooNewSchemaButtonRestart=%1$Sâni qayta ishga tushirish
+
+# LOCALIZATION NOTE (tooNewSchemaButtonQuit):
+# %1$S will be replaced with the name of the host application 'Calendar'
+tooNewSchemaButtonQuit=%1$Sâdan chiqish
+
+# List of events or todos (unifinder)
+eventUntitled=Nomsiz
+
+# Tooltips of events or todos
+tooltipTitle=Sarlavha:
+tooltipLocation=Manzili:
+# event date, usually an interval, such as
+# Date: 7:00--8:00 Thu 9 Oct 2011
+# Date: Thu 9 Oct 2000 -- Fri 10 Oct 2000
+tooltipDate=Sana:
+# event calendar name
+tooltipCalName=Taqvim nomi:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Holati:
+# event organizer
+tooltipOrganizer=Tashkilotchi:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Boshlanishi:
+tooltipDue=Tugash sanasi
+tooltipPriority=Muhimligi:
+tooltipPercent=% tugadi:
+tooltipCompleted=Tugadi:
+
+# Tooltips for attendees and organizer in event and summary dialog
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendee.combined): tooltip for itip icon in summary/event dialog.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of dialog.tooltip.attendeeRole2.*
+# %2$S - value of dialog.tooltip.attendeePartStat2.*
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.CHAIR): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.NON-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.OPT-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeRole2.REQ-PARTICIPANT): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - value of dialog.tooltip.attendeeUserType2.*
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.ACCEPTED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.DECLINED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.DELEGATED): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.NEEDS-ACTION): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(dialog.tooltip.attendeePartStat2.TENTATIVE): used to compose
+# dialog.tooltip.attendee.combined
+# %1$S - common name or email address of the attendee
+
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.INDIVIDUAL): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name representing individual attendee
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.GROUP): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name representing a group (e.g. a distribution list)
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.RESOURCE): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name representing a resource (e.g. projector)
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.ROOM): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name representing a room
+# LOCALIZATION_NOTE(dialog.tooltip.attendeeUserType2.UNKNOWN): used to compose
+# dialog.tooltip.attendeeRole2.*
+# %1$S - email address or common name representing an attendee of unknown type
+
+#File commands and dialogs
+New=Yangi
+Open=Ochish
+filepickerTitleImport=Import
+filepickerTitleExport=Eksport
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+filterIcs=iCalendar (%1$S)
+filterXml=XML hujjat (%1$S)
+filterHtml=Veb sahifa (%1$S)
+filterOutlookCsv=Vergul bilan ajaratilgan qiymat koârinishi (%1$S)
+filterWav=Audio signali shakli (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Xatolik yuz berdi
+httpPutError=Taqvim faylini eâlon qilish amalga oshmadi.\nKod holati: %1$S: %2$S
+otherPutError=Taqvim faylini eâlon qilish amalga oshmadi.\nKod holati: 0x%1$S
+
+# LOCALIZATION NOTE (readOnlyMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+readOnlyMode=Taqvim uchun maâlumotlarni oâqishda xatolik yuz berdi: %1$S. U faaqat oâqish rejimida joylashgan, taqvimga oâzgartirishlar kiritilgandan soâng maâlumotlardagi natijalar yoâqolganga oâxshaydi. Siz ushbu sozlamani 'Taqvimni tahrirlash'ni tanlab oâzgartirishingiz mumkin.
+
+# LOCALIZATION NOTE (disabledMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+disabledMode=Taqvim uchun maâlumotlarni oâqishda xatolik yuz berdi: %1$S. U foydalanish uchun xavfsiz boâlgunga qadar oâchirib qoâyildi.
+
+# LOCALIZATION NOTE (minorError):
+# used for an message like 'There has been an error reading data for calendar: Home. However this...'
+# %1$S will be replaced with the name of a calendar
+minorError=Taqvim uchun maâlumotlarni oâqishda xatolik yuz berdi: %1$S. Bu xatoni ahamiyatsiz deb hisoblasangiz, dastur davom etishga harakat qiladi.
+
+# LOCALIZATION NOTE (stillReadOnlyError):
+# used for an message like 'There has been an error reading data for calendar: Home.'
+# %1$S will be replaced with the name of a calendar
+stillReadOnlyError=Taqvim uchun maâlumotlarni oâqishda xatolik yuz berdi: %1$S.
+utf8DecodeError=iCalendar (ics) fayli UTF-8 sifatida dekodlangayotganda xatolik yuz berdi. Faylda simvollar va kam uchraydigan harflar UTF-8 kodlash usulida kodlanganligini tekshirib koâring.
+icsMalformedError=iCalendar (ics) faylini ajratib boâlmadi. Bu faylni iCalendar (ics) fayl sintaksisiga muvofiqligini tekshirib koâring.
+itemModifiedOnServerTitle=Element serverda oâzgartirildi
+itemModifiedOnServer=Element tezda serverda oâzgartirildi.\n
+modifyWillLoseData=Oâzgarishlarni amalga oshirish serveda qilinga oâzgarishlar ustidan yoziladi.
+deleteWillLoseData=Bu elementni oâchirish serverda qilinga oâzgarishlarning yoâqolishiga sabab boâladi.
+updateFromServer=Oâzgarishlar rad qilinsin va qayta yuklansin
+proceedModify=Men qilgan oâzgarishlar amalga oshirilsin
+proceedDelete=Oâchirilsin
+dav_notDav=%1$S manbasi DAV toâplam emas yoki mavjud emas
+dav_davNotCaldav=%1$S manbasi DAV toâplam, ammo CalDAV taqvimi emas
+itemPutError=Elementni serverga joylashtirishda xatolik yuz berdi.
+itemDeleteError=Serverdan elementni oâchirishda xatolik yuz berdi.
+caldavRequestError=Taklif joânatilayotganda xatolik yuz berdi.
+caldavResponseError=Javob joânatilayotganda xatolik yuz berdi.
+caldavRequestStatusCode=Holat kodi: %1$S
+caldavRequestStatusCodeStringGeneric=Soârov amalga oshmadi.
+caldavRequestStatusCodeString400=Soârovda yomon sintaksis mavjud, shuning uchun bajarib boâlmaydi.\u0020
+caldavRequestStatusCodeString403=Foydalanuvchi soârovni amalga oshirishi uchun kerakli ruxsat yetishmaydi.
+caldavRequestStatusCodeString404=Manba topilmadi.
+caldavRequestStatusCodeString409=Manbada ziddiyat yuz berdi.
+caldavRequestStatusCodeString412=Shart muvaffaqiyatsiz tugadi.
+caldavRequestStatusCodeString500=Serverda ichki xatolik.
+caldavRequestStatusCodeString502=Yomon darvoza (Proksini moslashda?).
+caldavRequestStatusCodeString503=Serverda ichki xatolik (Server vaqtincha oâchirilganmidi?)
+caldavRedirectTitle=%1$S taqvimi uchun joylashuv yangilansinmi?
+caldavRedirectText=%1$S uchun soârov yangi joylashuvga qayta yoâantiriladi. Quyidagi qiymatdagi joylashuvga oâzgartirishni xohlaysizmi?
+caldavRedirectDisableCalendar=Taqvimni oâchirib qoâyish
+
+
+# LOCALIZATION NOTE (likelyTimezone):
+# Translators, please put the most likely timezone(s) where the people using
+# your locale will be. Use the Olson ZoneInfo timezone name *in English*,
+# ie "Europe/Paris", (continent or ocean)/(largest city in timezone).
+# Order does not matter, except if two historically different zones now match,
+# such as America/New_York and America/Toronto, will only find first listed.
+# (Particularly needed to guess the most relevant timezones if there are
+# similar timezones at the same June/December GMT offsets with alphabetically
+# earlier ZoneInfo timezone names. Sample explanations for English below.)
+# for english-US:
+# America/Los_Angeles likelier than America/Dawson
+# America/New_York likelier than America/Detroit (NY for US-EasternTime)
+# for english:
+# Europe/London likelier than Atlantic/Canary
+# Europe/Paris likelier than Africa/Ceuta (for WestEuropeanTime)
+# America/Halifax likelier than America/Glace_Bay (Canada-AtlanticTime)
+# America/Mexico_City likelier than America/Cancun
+# America/Argentina/Buenos_Aires likelier than America/Araguaina
+# America/Sao_Paolo (may not recognize: summer-time dates change every year)
+# Asia/Singapore likelier than Antarctica/Casey
+# Asia/Tokyo likelier than Asia/Dili
+# Africa/Lagos likelier than Africa/Algiers (for WestAfricanTime)
+# Africa/Johannesburg likelier than Africa/Blantyre (for SouthAfricanStdTime)
+# Africa/Nairobi likelier than Africa/Addis_Ababa (for EastAfricanTime)
+# Australia/Brisbane likelier than Antarctica/DumontDUrville
+# Australia/Sydney likelier than Australia/Currie or Australia/Hobart
+# Pacific/Auckland likelier than Antarctica/McMurdo
+likelyTimezone=Amerika/New_York, Amerika/Chikago, Amerika/Denver, Amerika/Foeniks, Amerika/Los_Angeles, Amerika/Anchoreyj, Amerika/Adak, Tinch_okeani/Honolulu, Amerika/Puerto_Riko, Amerika/Halifaliklar, Amerika/Meksika_shahri, Amerika/Argentina/Buenos_Ayres, Amerika/Sao_Paulo, Yeropa/London, Yevropa/Parij, Osiyo/Singapur, Osiyo/Tokyo, Africk/Lagos, Afrika/Johannesburg, Afrika/Nayrobi, Avstralia/Brisbane, Avstralia/Sydney, Tinch_okeani/Auklend
+
+# Guessed Timezone errors and warnings.
+# Testing note:
+# * remove preference for calendar.timezone.default in userprofile/prefs.js
+# * repeat
+# - set OS timezone to a city (windows: click right on clock in taskbar)
+# - restart: sunbird -jsconsole
+# - observe guess in error console and verify whether guessed timezone city
+# makes sense for OS city.
+#
+# 'Warning: Operating system timezone "E. South America Standard Time"
+# no longer matches ZoneInfo timezone "America/Sao_Paulo".'
+# Testing notes:
+# - Brasil DST change dates are set every year by decree, so likely out of sync.
+# - Only appears on OSes from which timezone can be obtained
+# (windows; or TZ env var, /etc/localtime target path, or line in
+# /etc/timezone or /etc/sysconfig/clock contains ZoneInfo timezone id).
+# - Windows: turning off "Automatically adjust clock for daylight saving time"
+# can also trigger this warning.
+WarningOSTZNoMatch=Diqqat: Operatsion tizim vaqt hududi â "%1$S"\nichki ZoneInfo "%2$S" vaqt hududiga endi toâgâri kelmaydi.
+
+# "Skipping Operating System timezone 'Pacific/New_Country'."
+# Testing note: not easily testable. May occur someday if (non-windows)
+# OS uses different version of ZoneInfo database which has a timezone name
+# that is not included in our current ZoneInfo database (or if the mapping
+# mapping from windows to ZoneInfo timezone ids does).
+SkippingOSTimezone=Operatsion tizim '%1$S' vaqt hududi tashlab ketilmoqda.
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=Mahalliy '%1$S' vaqt hududi tashlab ketilmoqda.
+
+# Testing note: "No match" timezones include Bucharest on W2k.
+# Brazil timezones may be "No match" (change every year, so often out of date,
+# and changes are often more than a week different).
+warningUsingFloatingTZNoMatch=Diqqat: "floating" vaqt hududidan foydalanilmoqda.\nZoneInfo vaqt hududi maâlumotlari operatsion tizim vaqt hududi maâlumotlariga mos keldi.
+
+# "Warning: Using guessed timezone
+# America/New York (UTC-0500/-0400).
+# [rfc2445 summer daylight saving shift rules for timezone]
+# This ZoneInfo timezone almost matches/seems to match..."
+# This ZoneInfo timezone was chosen based on ... "
+WarningUsingGuessedTZ=Diqqat: Vaqt hududini aniqlashdan foydalanilmoqda\n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Ushbu ZoneInfo vaqt hududi deyarli operatsion tizim vaqt hududiga mos kelmoqda.\nUshbu qoida uchun, standart vaqt va kunduzi oârtasidagi keyingi tarjimalar operatsion tizim \nvaqt hududi oâtishlaridan koâpi bilan bir hafta farq qiladi.\nBoshlanish vaqtida farqlar, yoki farqli qoida yoki Gregoriy taqvimi qoidasi uchun taxminlar\n kabi maâlumotlarda tafovut boâlishi mumkin.
+
+TZSeemsToMatchOS=Ushbu ZoneInfo vaqt hududi bu yil uchun operatsion tizim vaqt hududiga mos kelganga oâxshaydi.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Ushbu ZoneInfo vaqt hududi operatsion tizim vaqt hududi identifikatori\n"%1$S"ga asoslanib tanlangan.
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Ushbu ZoneInfo vaqt hududi internet foydalanuvchilari foydalanadigan Inglizhcha (AQSH) \nuchun vaqt hududiga oâxshagan operatsion tizim vaqt hududiga mos ravishda asoslanib tanlangan.
+
+TZFromKnownTimezones=Ushbu ZoneInfo vaqt hududi vaqt hududi Id raqamini alifbo tartibida keltirilgan maâlum vaqt\nhududlari bilan operatsion tizim vaqt hududiga mos ravishda asoslanib tanlangan.
+
+# Print Layout
+formatListName = Roʻyxat
+weekPrinterName = Hafatlik rejalashtirgich
+monthPrinterName = Oylik panjara
+tasksWithNoDueDate = Tugash muddati koârsatilmagan vazifalar
+
+# Providers
+caldavName=CalDAV
+compositeName=Aralash
+icsName=iCalendar (ICS)
+memoryName=Vaqtinchalik (xotira)
+storageName=Mahalliy (SQLite)
+
+# Used in created html code for list layout print and html export
+htmlPrefixTitle=Nomi
+htmlPrefixWhen=Qachon
+htmlPrefixLocation=Manzili
+htmlPrefixDescription=Taârifi
+htmlTaskCompleted=%1$S (tugadi)
+
+# Categories
+addCategory=Turkum qoâshish
+multipleCategories=Bir nechta kategoriya
+
+today=Bugun
+tomorrow=Ertaga
+yesterday=Kecha
+
+#Today pane
+eventsonly=Tadbirlar
+eventsandtasks=&Tadbirlar va vazifalar
+tasksonly=Vazifalar
+shortcalendarweek=CW
+
+go=Oâtish
+
+# Some languages have different conjugations of 'next' and 'last'. If yours
+# does not, simply repeat the value. This will be used with day names, as in
+# 'next Sunday'.
+next1=keyingi
+next2=keyingi
+last1=soânggi
+last2=soânggi
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 eslatkich;#1 eslatkich
+
+# LOCALIZATION NOTE (alarmStarts):
+# used for a display the start of an alarm like 'Starts: Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmStarts=Boshlanadi: %1$S
+
+# LOCALIZATION NOTE (alarmTodayAt):
+# used for a display the date-time of an alarm like 'Today at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTodayAt=Bugun: %1$S
+
+# LOCALIZATION NOTE (alarmTomorrowAt):
+# used for a display the date-time of an alarm like 'Tomorrow at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTomorrowAt=Ertaga: %1$S
+
+# LOCALIZATION NOTE (alarmYesterdayAt):
+# used for a display the date-time of an alarm like 'Yesterday at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmYesterdayAt=Kecha: %1$S
+
+# Alarm interface strings
+# LOCALIZATION NOTE: These strings do not get displayed. They are only visible
+# when exporting an item with i.e a DISPLAY alarm, that doesn't have a
+# description set, or an EMAIL alarm that doesn't have a summary set.
+alarmDefaultDescription=Asosiy Mozilla taârifi
+alarmDefaultSummary=Asosiy Mozilla qisqacha maâlumoti
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+
+taskDetailsStatusNeedsAction=Bajariladigan amallar
+
+# LOCALIZATION NOTE (taskDetailsStatusInProgress):
+# used for a display of how much of a task is completed '25% Complete'
+# %1$S will be replaced with the number of percentage completed
+taskDetailsStatusInProgress=%1$S%% tugadi
+taskDetailsStatusCompleted=Tugadi
+
+# LOCALIZATION NOTE (taskDetailsStatusCompletedOn):
+# used for a display of completion date like 'Completed on Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with the completion date-time of the task
+taskDetailsStatusCompletedOn=%1$Sâda tugadi
+taskDetailsStatusCancelled=Bekor qilindi
+
+gettingCalendarInfoCommon=Taqvimlar tekshirlmoqdaâ¦
+
+# LOCALIZATION NOTE (gettingCalendarInfoDetail):
+# used for a progress-display of processed like 'Checking Calendar 5 of 10'
+# %1$S will be replaced with the index of the currently processed calendar
+# %2$S will be replaced with the total numbers of calendars
+gettingCalendarInfoDetail=Taqvim tekshirilmoqda: %1$S/%2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Xatolik kodi: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Taârifi: %1$S
+
+# LOCALIZATION NOTE (errorWriting):
+# used for an message like 'An error occurred when writing to the calendar Home!'
+# %1$S will be replaced with the name of a calendar
+errorWriting=\u0020%1$S taqvimiga yozishda xatolik yuz berdi!
+
+# LOCALIZATION NOTE (tooltipCalendarDisabled):
+# used for an alert-message like 'The calendar Home is momentarily not available'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarDisabled=%1$S taqvimi lahzalik mavjud emas
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarReadOnly=%1$S taqvimiga faqat oâqish uchun ruxsat berilgan
+
+taskEditInstructions=Yangi vazifa qoâshish uchun bu yerga bosing
+taskEditInstructionsReadonly=Yozsa boâladigan taqvimni tanlang
+taskEditInstructionsCapability=Vazifalarni qoâllab-quvvatlovchi taqvimni tanlang
+
+eventDetailsStartDate=Boshi:
+eventDetailsEndDate=Oxiri:
+
+# LOCALIZATION NOTE (datetimeWithTimezone):
+# used for a display of a date-time with timezone 'Thu 2 Oct 2008 13:21', Europe/Paris
+# %1$S will be replaced with the completion date-time
+# %2$S will be replaced with the name of the timezone
+datetimeWithTimezone=%1$S, %2$S
+
+# LOCALIZATION NOTE (singleLongCalendarWeek):
+# used for display of calendar weeks in short form like 'Calendar Week 43'
+# %1$S will be replaced with the index of the week
+singleLongCalendarWeek=Taqvim haftasi: %1$S
+
+# LOCALIZATION NOTE (severalLongCalendarWeeks):
+# used for display of calendar weeks in short form like 'Calendar Weeks 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalLongCalendarWeeks=Taqvim haftalari: %1$S-%2$S
+
+# LOCALIZATION NOTE (singleShortCalendarWeek):
+# used for display of calendar weeks in short form like 'CW 43'
+# %1$S will be replaced with the index of the week
+singleShortCalendarWeek=CW: %1$S
+
+# LOCALIZATION NOTE (severalShortCalendarWeeks):
+# used for display of calendar weeks in short form like 'CWs 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalShortCalendarWeeks=CWâlar: %1$S-%2$S
+
+# LOCALIZATION NOTE (abbreviationOfWeek):
+# Used for displaying the week number in the first day box of every week
+# in multiweek and month views.
+# It allows to localize the label with the week number in case your locale
+# requires it.
+# Take into account that this label is placed in the same room of the day label
+# inside the day boxes, exactly on left side, hence a possible string shouldn't
+# be too long otherwise it will create confusion between the week number and
+# the day number other than a possible crop when the window is resized.
+#
+# %1$S is a number from 1 to 53 that represents the week number.
+
+# Task tree, "Due In" column.
+# LOCALIZATION NOTE (dueInDays, dueInHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+dueInDays=#1 kun;#1 kun
+dueInHours=#1 soat;#1 soat
+dueInLessThanOneHour=< 1 soat
+
+# LOCALIZATION NOTE (monthInYear):
+# used for display of Month-dates like 'December 2008'
+# %1$S will be replaced with name of the month
+# %2$S will be replaced with the year
+monthInYear=%1$S %2$S
+
+# LOCALIZATION NOTE (monthInYear.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+monthInYear.monthFormat=nomzod
+
+# LOCALIZATION NOTE (formatDateLong):
+# used for display dates in long format like 'Mon 15 Oct 2008' when it's
+# impossible to retrieve the formatatted date from the OS.
+# %1$S will be replaced with name of the day in short format;
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties);
+# %3$S will be replaced with the name of the month in short format;
+# %4$S will be replaced with the year.
+formatDateLong=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (dayHeaderLabel):
+# used for display the labels in the header of the days in day/week views in short
+# or long format. For example: 'Monday 6 Oct.' or 'Mon. 6 Oct.'
+# %1$S will be replaced with name of the day in short or long format
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties), plus the name
+# of the month in short format (the day/month order depends on the OS settings).
+dayHeaderLabel=%1$S %2$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth):
+# used for display of intervals in the form of 'March 3 - 9, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %4$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalInMonth=%1$S %2$S â %3$S, %4$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalInMonth.monthFormat=nomzod
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths):
+# used for display of intervals in the form 'September 29 - October 5, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with name of the month of the end date
+# %4$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %5$S will be replaced with the commmon year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenMonths=%1$S %2$S â %3$S %4$S, %5$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenMonths.monthFormat=nomzod
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears):
+# used for display of intervals in the form 'December 29, 2008 - January 4, 2009'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the year of the start date
+# %4$S will be replaced with name of the month of the end date
+# %5$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %6$S will be replaced with the year of the end date
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenYears=%1$S %2$S, %3$S â %4$S %5$S, %6$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenYears.monthFormat=nomzod
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDateTime):
+# used for intervals where end is equals to start
+# displayed form is '5 Jan 2006 13:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalOnSameDateTime=%1$S %2$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDay):
+# used for intervals where end is on the same day as start, so we can leave out the
+# end date but still include end time
+# displayed form is '5 Jan 2006 13:00 - 17:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the time of the end date
+datetimeIntervalOnSameDay=%1$S %2$S â %3$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSeveralDays):
+# used for intervals spanning multiple days by including date and time
+# displayed form is '5 Jan 2006 13:00 - 7 Jan 2006 9:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the date of the end date
+# %4$S will be replaced with the time of the end date
+datetimeIntervalOnSeveralDays=%1$S %2$S â %3$S %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= boshlanish va tugash vaqti koârsatilmagan
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDueDate):
+# used for intervals in task with only start date
+# displayed form is 'start date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalTaskWithoutDueDate=boshlanish sanasi: %1$S %2$S
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutStartDate):
+# used for intervals in task with only due date
+# displayed form is 'due date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the due date
+# %2$S will be replaced with the time of the due date
+datetimeIntervalTaskWithoutStartDate=Tugash sanasi: %1$S %2$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Vaqt boshlanishi
+dragLabelTasksWithOnlyDueDate=Tugaydi:
+
+deleteTaskLabel=Vazifani oâchirish
+deleteTaskMessage=Bu vazifani oâchirishni xohlaysizmi?
+deleteTaskAccesskey=l
+deleteItemLabel=Oâchirish
+deleteItemMessage=Bu elementni oâchirishni xohlaysizmi?
+deleteItemAccesskey=l
+deleteEventLabel=Tadbirni oâchirish
+deleteEventMessage=Bu tadbirni oâchirishni xohlaysizmi?
+deleteEventAccesskey=l
+
+calendarPropertiesEveryMinute=Har daqiqa;Har #1 daqiqa
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=%1$Sâdan foydalanilmoqda
+
+# LOCALIZATION NOTE (extractUsingRegion)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+# %2$S will be replaced with region like US in en-US
+extractUsingRegion=%1$S (%2$S)dan foydalanilmoqda
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 daqiqa;#1 daqiqa
+unitHours=#1 soat;#1 soat
+unitDays=#1 kun;#1 kun
+unitWeeks=#1 hafta;#1 hafta
+
+# LOCALIZATION NOTE (showCalendar)
+# Used in calendar list context menu
+# %1$S will be replaced with the calendar name
+# uses the access key calendar.context.togglevisible.accesskey
+showCalendar=%1$Sâni koârsatish
+hideCalendar=%1$Sâni yashirish
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Faqat %1$Sâni koârsatish
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Elementni oâzgartirishda ziddiyat yuz berdi
+modifyConflictPromptMessage=Oynadagi tahrirlanadigan element ochilguniga qadar oâzgartirilgan edi.
+modifyConflictPromptButton1=Boshqa oâzgarishlar ustidan yozilsin
+modifyConflictPromptButton2=Oâzgarishlar rad qilinsin
+
+# LOCALIZATION_NOTE(dialog.attendee.append.delegatedFrom): this is appended behind an attendee name
+# in the tooltip and the visible name for an attendee in the event summary dialog - don't add
+# leading or trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+# delegation is different from simple invitation forwarding - in case of delegation the orignal
+# invited attendee gets replaced
+# LOCALIZATION_NOTE(dialog.attendee.append.delegatedTo): this is appended behind an attendee name
+# in the tooltip for an attendee in the event summary dialog - don't add leading or trailing
+# whitespaces here
+# delegation is different from simple invitation forwarding - in case of delegation the orignal
+# invited attendee gets replaced
+
+# Accessible description of a grid calendar with no selected date
diff --git a/calendar/chrome/calendar/calendarCreation.dtd b/calendar/chrome/calendar/calendarCreation.dtd
new file mode 100644
index 00000000000..c26f5b266c4
--- /dev/null
+++ b/calendar/chrome/calendar/calendarCreation.dtd
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendarCreation.properties b/calendar/chrome/calendar/calendarCreation.properties
new file mode 100644
index 00000000000..3cd605a2a11
--- /dev/null
+++ b/calendar/chrome/calendar/calendarCreation.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+error.invalidUri=Toâgâri joylashuvni kiriting.
+error.alreadyExists=Bu joylashuvdagi taqvimga allaqachon obuna boâlgansiz.
diff --git a/calendar/chrome/calendar/categories.properties b/calendar/chrome/calendar/categories.properties
new file mode 100644
index 00000000000..ee4961ff177
--- /dev/null
+++ b/calendar/chrome/calendar/categories.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# default categories
+
+categories2=Yubiley,Tugâilgan mun,Biznes,Qoângâiroqlar,Mjozlar,Musobaqa,Xaridor,Sevimli ishlar,Kuzatish,Sovgâalar,Bayramlar,Gâoyalar,Muammolar,Uchrashuv,Har xil,Shaxsiy,Loyihalar,Ommaviy bayram,Holat,Taâminotchilar,Sayohat,Hordiq
diff --git a/calendar/chrome/calendar/dateFormat.properties b/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 00000000000..92a3de25dd8
--- /dev/null
+++ b/calendar/chrome/calendar/dateFormat.properties
@@ -0,0 +1,146 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# In case you are looking for the note about different declensions on date
+# formats, here it is. If your language doesn't use different declensions of
+# month names, you shouldn't have much work. Just leave the *.monthFormat
+# string on "nominative" and the string month.*.name will be filled in.
+#
+# If you need a different form for a string, you can change the
+# *.monthFormat to a different value. Supported values are currently:
+# nominative (default), genitive
+# The modified month name form will then be filled in accordingly. If this
+# system does not suit your needs, please file a bug!
+
+# LOCALIZATION NOTE (month.*.name):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "nominative" or in places
+# where using a different declension is not yet supported.
+month.1.name=Yanvar
+month.2.name=Fevral
+month.3.name=Mart
+month.4.name=Aprel
+month.5.name=May
+month.6.name=Iyun
+month.7.name=Iyul
+month.8.name=Avgust
+month.9.name=Sentabr
+month.10.name=Oktabr
+month.11.name=Noyabr
+month.12.name=Dekabr
+
+# LOCALIZATION NOTE (month.*.genitive):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "genitive"
+# If your language doesn't use different declensions, just set the same
+# values as for month.*.name.
+month.1.genitive=Yanvar
+month.2.genitive=Fevral
+month.3.genitive=Mart
+month.4.genitive=Aprel
+month.5.genitive=May
+month.6.genitive=Iyun
+month.7.genitive=Iyul
+month.8.genitive=Avgust
+month.9.genitive=Sentabr
+month.10.genitive=Oktabr
+month.11.genitive=Noyabr
+month.12.genitive=Dekabr
+
+month.1.Mmm=Yan
+month.2.Mmm=Fev
+month.3.Mmm=Mar
+month.4.Mmm=Apr
+month.5.Mmm=May
+month.6.Mmm=Iyun
+month.7.Mmm=Iyul
+month.8.Mmm=Avg
+month.9.Mmm=Sen
+month.10.Mmm=Okt
+month.11.Mmm=Noy
+month.12.Mmm=Dek
+
+day.1.name=Yakshanba
+day.2.name=Dushanba
+day.3.name=Seshanba
+day.4.name=Chorchanba
+day.5.name=Payshanba
+day.6.name=Juma
+day.7.name=Shanba
+
+day.1.Mmm=Yak
+day.2.Mmm=Dush
+day.3.Mmm=Sesh
+day.4.Mmm=Chor
+day.5.Mmm=Pay
+day.6.Mmm=Jum
+day.7.Mmm=Shan
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=Ya
+day.2.short=Du
+day.3.short=Se
+day.4.short=Cho
+day.5.short=Pa
+day.6.short=Ju
+day.7.short=Sh
+
+# Localizable day's date
+day.1.number=1
+day.2.number=2
+day.3.number=3
+day.4.number=4
+day.5.number=5
+day.6.number=6
+day.7.number=7
+day.8.number=8
+day.9.number=9
+day.10.number=10
+day.11.number=11
+day.12.number=12
+day.13.number=13
+day.14.number=14
+day.15.number=15
+day.16.number=16
+day.17.number=17
+day.18.number=18
+day.19.number=19
+day.20.number=20
+day.21.number=21
+day.22.number=22
+day.23.number=23
+day.24.number=24
+day.25.number=25
+day.26.number=26
+day.27.number=27
+day.28.number=28
+day.29.number=29
+day.30.number=30
+day.31.number=31
+
+# LOCALIZATION NOTE (dayOrdinalSymbol):
+# Allows to insert a string, a character or a symbol after the number of a
+# monthday in order to give it the meaning of ordinal number e.g. 1 -> 1st etc.
+# It's mainly used when formatting dates with both monthday and month name. It
+# affects the following localizable strings that hence must be localized *without*
+# any ordinal symbol for the monthday number:
+# dayHeaderLabel, monthlyDaysOfNth_day,
+# yearlyNthOn, daysIntervalBetweenYears,
+# daysIntervalBetweenMonths, daysIntervalInMonth.
+# Write only a single string if the ordinal symbol is the same for every monthday, otherwise
+# write a sequence of _31_ strings (one for each monthday) separated with commas.
+# If your language doesn't require that in the mentioned strings, leave it empty.
+# e.g.
+# dayOrdinalSymbol=.
+# -> daysIntervalInMonth: 'March 3. - 9., 2008'
+# dayOrdinalSymbol=st,nd,rd,th,th,th,th,th,th,th,th,th,th,th,th,
+# th,th,th,th,th,st,nd,rd,th,th,th,th,th,th,th,st
+# -> daysIntervalBetweenMonths: 'September 29th - November 1st, 2008'
+dayOrdinalSymbol=
+
+noon=Peshin
+midnight=Yarim kecha
+
+AllDay=Kun bo'yi
+Repeating=(Qaytarilmoqda)
diff --git a/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd b/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 00000000000..7c388868d9f
--- /dev/null
+++ b/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/global.dtd b/calendar/chrome/calendar/global.dtd
new file mode 100644
index 00000000000..6ade27020d8
--- /dev/null
+++ b/calendar/chrome/calendar/global.dtd
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/menuOverlay.dtd b/calendar/chrome/calendar/menuOverlay.dtd
new file mode 100644
index 00000000000..aec30764d51
--- /dev/null
+++ b/calendar/chrome/calendar/menuOverlay.dtd
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/migration.dtd b/calendar/chrome/calendar/migration.dtd
new file mode 100644
index 00000000000..a6b5376bc05
--- /dev/null
+++ b/calendar/chrome/calendar/migration.dtd
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/migration.properties b/calendar/chrome/calendar/migration.properties
new file mode 100644
index 00000000000..9600b34d64b
--- /dev/null
+++ b/calendar/chrome/calendar/migration.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migratingApp = %1$S koâchirib oâtkazilmoqdaâ¦
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = %1$S: Maâlumotlari importi
+migrationDescription=Koâpgina mashhur ilova dasturlardan %1$S taqvimni import qila oladi. Kompyuteringizdagi quyidagi dasturlardan maâlumotlar topildi. Xohlaganingizni tanlab, undan maâlumotlarni import qilishingiz mumkin.
+finished = Tugatish
+disableExtTitle = Mos kelmaydigan kengaytma topildi
+disableExtText = Kompyuteringizda Lighting bilan mos kelmaydigan eski Mozilla taqvimi kengaytmasi oârnatilgan. U oâchirib qoâyiladi va %1$S qaytadan ishga tushiriladi.
diff --git a/calendar/chrome/calendar/preferences/alarms.dtd b/calendar/chrome/calendar/preferences/alarms.dtd
new file mode 100644
index 00000000000..ad709151f1c
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/alarms.dtd
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/categories.dtd b/calendar/chrome/calendar/preferences/categories.dtd
new file mode 100644
index 00000000000..f6ae9b4211c
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/categories.dtd
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/general.dtd b/calendar/chrome/calendar/preferences/general.dtd
new file mode 100644
index 00000000000..0c3b87e467e
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/general.dtd
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/preferences.dtd b/calendar/chrome/calendar/preferences/preferences.dtd
new file mode 100644
index 00000000000..7c98ef79204
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/preferences.dtd
@@ -0,0 +1,8 @@
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/views.dtd b/calendar/chrome/calendar/preferences/views.dtd
new file mode 100644
index 00000000000..a0197f739fa
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/views.dtd
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/provider-uninstall.dtd b/calendar/chrome/calendar/provider-uninstall.dtd
new file mode 100644
index 00000000000..85df94ee9e3
--- /dev/null
+++ b/calendar/chrome/calendar/provider-uninstall.dtd
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/providers/gdata/amo.properties b/calendar/chrome/calendar/providers/gdata/amo.properties
new file mode 100644
index 00000000000..4fd978ac9f8
--- /dev/null
+++ b/calendar/chrome/calendar/providers/gdata/amo.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The addon name and short description are localized in gdata.properties
+
+# This is the addon description. The en-US version will sometimes have
+# additional news items at the end of the description. If you notice this and
+# would like them translated, please email the author directly.
+# params: %1$S - See amo.faqlocation
+# %2$S - See amo.website
+# NOTE: This is a multiline string, be sure to end lines with \n\ to make sure
+# it stays that way.
+amo.description=Ushbu kengaytma Lightning qoâshimcha dasturiga Google Taqvimâdagi tadbirlar va vazifalarrni oâqish, yozish imkonini beradi.\n\nNosozlik haqida maâlumot joânatishdan oldin batafil maâlumot olish uchun Savol-javoblarni oâqib chiqing. Shuningdek, munozara forumlariga tashrif buyuring, chunki siz yubormoqchi boâlgan nosozlik maâlumot uchun allaqachon yechim topilgan boâlishi mumkin!\n\nIzlash va nosozlik haqida maâlumot joânatish uchun http://bugzilla.mozilla.org/ saytiga tashrif buyuring \nMahsulot: Taqvim\nKomponent: Taâmonotchi: GData
+
+# You can change this if you have localized the FAQ on wiki.mozilla.org
+amo.faqlocation=http://wiki.mozilla.org/Calendar:GDATA_Provider
+
+# You can change this if you would like to provide localized support.
+amo.email=
+amo.website=http://groups.google.com/group/provider-for-google-calendar
diff --git a/calendar/chrome/calendar/providers/gdata/gdata.dtd b/calendar/chrome/calendar/providers/gdata/gdata.dtd
new file mode 100644
index 00000000000..355c5d91e13
--- /dev/null
+++ b/calendar/chrome/calendar/providers/gdata/gdata.dtd
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/providers/gdata/gdata.properties b/calendar/chrome/calendar/providers/gdata/gdata.properties
new file mode 100644
index 00000000000..2f6b4d5cffc
--- /dev/null
+++ b/calendar/chrome/calendar/providers/gdata/gdata.properties
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# If you wish to be mentioned as a translator, please make sure your name and
+# email is in the licence block as a contributor. Multiple names are fine too.
+
+# extension information.
+# When localizing, please keep in mind that these strings had to be approved by
+# the Google Brand Features Team. Be sure to make clear that this extension is
+# *FOR* Google Calendar and not *BY* Google. Also, it was explicitly stated,
+# that the phrase "Google Calendar" should be localized just as it is on the
+# localized versions of the Google Calendar UI.
+
+# Extension Manager strings
+extensions.{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}.description=Google Taqvimâdan ikki tomonlama foydalanish imkonini beradi
+extensions.{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}.name=Google Taqvim uchun taâminotchi
+
+# LOCALIZATION NOTE (busyTitle):
+# Events with only free/busy access don't have a title, they will use this
+# title instead. The calendar name is used as a parameter, since its often
+# named after the person whose calendar you are viewing.
+# %1$S = The calendar name
+busyTitle=Band (%1$S)
+
+# LOCALIZATION NOTE (quotaExceeded):
+# This is shown when the request quota has been exceeded.
+# %1$S = The session id (what the user enters as an email
+# in the new calendar dialog)
+quotaExceeded=%1$S uchun boâsh joy tugadi, keyinroq urinib koâring.
+providerOutdated=Taâminotchinig ushbu versiyasi eskirgan, soânggi versiyasiga yangilang.
+
+reminderOutOfRange=Google Taqvim eslatkichlarga faqatgina tadbir boshlanishidan oldin 4 haftagacha ruxsat beradi.
+
+# LOCALIZATION NOTE (syncProgressEvent):
+# %1$S = The name of the calendar that is being synchronized
+# %2$S = The number of events that have been synchronzed
+# %3$S = The total number of events in the synchronization run
+syncProgressEvent=%1$S taqvimidagi %2$S/%3$S ta tadbir sinxronlanmoqda
+
+# LOCALIZATION NOTE (syncProgressTask):
+# %1$S = The name of the calendar that is being synchronized
+# %2$S = The number of tasks that have been synchronzed
+# %3$S = The total number of tasks in the synchronization run
+syncProgressTask=%1$S taqvimidagi %2$S/%3$S ta vazifa sinxronlanmoqda
+
+# LOCALIZATION NOTE (syncStatus):
+# %1$S = The name of the calendar that is being synchronized
+syncStatus=%1$S taqvimi sinxronlanmoqda
+
+# LOCALIZATION NOTE (requestWindowDescription):
+# %1$S - The session id (email) used for authentication
+requestWindowDescription=Google Taqvim uchun taâminotchi tadbirlar va vazifalarni olish uchun %1$S hisobiga kirmoqchi. Shaxsiy maâlumotlar va taqvim maâlumotlari kompyuteringiz va Google orasida oâzaro oâtkaziladi. Uchinchi tomon saytlar ishtirok etmaydi.
+
+# LOCALIZATION NOTE (requestWindowTitle)
+# %1$S - The session id (email) used for authentication
diff --git a/calendar/chrome/calendar/providers/wcap/wcap.properties b/calendar/chrome/calendar/providers/wcap/wcap.properties
new file mode 100644
index 00000000000..67753a3172a
--- /dev/null
+++ b/calendar/chrome/calendar/providers/wcap/wcap.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# args: host
+accessingServerFailedError.text=%1$S serveriga kirib boâlmadi!
+loginFailed.text=Kirish amalga oshmadi yoki seans Id raqami notoâgâri
+accessDenied.text=Foydalanuvchi kirishni rad etdi.
+
+# args: host
+noHttpsConfirmation.text=%1$Sâda xavfli login!\nDavom etasizmi?
+noHttpsConfirmation.check.text=Yana soâralmasin
+noHttpsConfirmation.label=Diqqat!
+
+# args: host, prodId, serverVersion, wcapVersion
+insufficientWcapVersionConfirmation.text=%1$S (%2$S, v%3$S, WCAP v%4$S) serveri yetarlicha WCAP versiyasini qoâllab-quvvatlamaydi! Soâralgan versiya kamida 3.0.0. boâlishi kerak\nDavom etasizmi?
+insufficientWcapVersionConfirmation.label=WCAP versiyasi yetarli emas!
+
+loginDialog.label=Taqvim serveri paroli soâralmoqda
+
+privateItem.title.text=Shaxsiy
+confidentialItem.title.text=Maxfiy
+busyItem.title.text=Band
diff --git a/calendar/chrome/calendar/timezones.properties b/calendar/chrome/calendar/timezones.properties
new file mode 100644
index 00000000000..1302a51f259
--- /dev/null
+++ b/calendar/chrome/calendar/timezones.properties
@@ -0,0 +1,117 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# extension:
+extensions.calendar-timezones@mozilla.org.name=Mozilla taqvimi uchun vaqt hudulari aniqlanishlari
+extensions.calendar-timezones@mozilla.org.creator=Mozilla taqvim loyihasi
+
+pref.timezone.floating=Mahalliy vaqt
+pref.timezone.UTC=UTC/GMT
+
+# I've derived this list out of timezones.dtd
+# - replaced '_' with ' ' on value side
+# - corrected 'St xyz' to 'St. xyz'
+
+# timezone names:
+pref.timezone.Africa.Abidjan=Afrika/Abidjan
+pref.timezone.Africa.Accra=Afrika/Akkra
+pref.timezone.Africa.Addis_Ababa=Afrika/Addis-Abiba
+pref.timezone.Africa.Algiers=Afrika/Jazoyir
+pref.timezone.Africa.Asmara=Afrika/Asmara
+pref.timezone.Africa.Bamako=Afrika/Bamako
+pref.timezone.Africa.Bangui=Afrika/Bangui
+pref.timezone.Africa.Banjul=Afrika/Banjul
+pref.timezone.Africa.Bissau=Afrika/Bissau
+pref.timezone.Africa.Blantyre=Afrika/Blantyre
+pref.timezone.Africa.Brazzaville=Afrika/Brazzaville
+pref.timezone.Africa.Bujumbura=Afrika/Bujumbura
+pref.timezone.Africa.Cairo=Afrika/Kairo
+pref.timezone.Africa.Casablanca=Afrika/Kasablanka
+pref.timezone.Africa.Ceuta=Afrika/Keuta
+pref.timezone.Africa.Conakry=Afrika/Konakry
+pref.timezone.Africa.Dakar=Afrika/Dakar
+pref.timezone.Africa.Dar_es_Salaam=Afrika/Dar es Salaam
+pref.timezone.Africa.Djibouti=Afrika/Jibuti
+pref.timezone.Africa.Douala=Afrika/Douala
+pref.timezone.Africa.El_Aaiun=Afrika/El Aaiun
+pref.timezone.Africa.Freetown=Afrika/Freetown
+pref.timezone.Africa.Gaborone=Afrika/Gaborone
+pref.timezone.Africa.Harare=Afrika/Harare
+pref.timezone.Africa.Johannesburg=Afrika/Johannesburg
+pref.timezone.Africa.Kampala=Afrika/Kampala
+pref.timezone.Africa.Khartoum=Afrika/Xartum
+pref.timezone.Africa.Kigali=Afrika/Kigali
+pref.timezone.Africa.Kinshasa=Afrika/Kinshasa
+pref.timezone.Africa.Lagos=Afrika/Lagos
+pref.timezone.Africa.Libreville=Afrika/Libreville
+pref.timezone.Africa.Lome=Afrika/Lome
+pref.timezone.Africa.Luanda=Afrika/Luanda
+pref.timezone.Africa.Lubumbashi=Afrika/Lubumbashi
+pref.timezone.Africa.Lusaka=Afrika/Lusaka
+pref.timezone.Africa.Malabo=Afrika/Bamako
+pref.timezone.Africa.Maputo=Afrika/Maputo
+pref.timezone.Africa.Maseru=Afrika/Maseru
+pref.timezone.Africa.Mbabane=Afrika/Mbabane
+pref.timezone.Africa.Mogadishu=Afrika/Mogadishu
+pref.timezone.Africa.Monrovia=Afrika/Monrovia
+pref.timezone.Africa.Nairobi=Afrika/Nairobi
+pref.timezone.Africa.Ndjamena=Afrika/Ndjamena
+pref.timezone.Africa.Niamey=Afrika/Niamey
+pref.timezone.Africa.Nouakchott=Afrika/Nouakchott
+pref.timezone.Africa.Ouagadougou=Afrika/Ouagadougou
+pref.timezone.Africa.Porto-Novo=Afrika/Porto-Novo
+pref.timezone.Africa.Sao_Tome=Afrika/Sao Tome
+pref.timezone.Africa.Tripoli=Afrika/Tripoli
+pref.timezone.Africa.Tunis=Afrika/Tunis
+pref.timezone.Africa.Windhoek=Afrika/Windhoek
+pref.timezone.America.Adak=Amerika/Adak
+pref.timezone.America.Anchorage=Amerika/Anchorage
+pref.timezone.America.Anguilla=Amerika/Anguilla
+pref.timezone.America.Antigua=Amerika/Antigua
+pref.timezone.America.Araguaina=Amerika/Araguaina
+pref.timezone.America.Argentina.Buenos_Aires=Amerika/Argentina/Buenos Aires
+pref.timezone.America.Argentina.Catamarca=Amerika/Argentina/Katamarka
+pref.timezone.America.Argentina.Cordoba=Amerika/Argentina/Kordoba
+pref.timezone.America.Argentina.Jujuy=Amerika/Argentina/Jujuy
+pref.timezone.America.Argentina.La_Rioja=Amerika/Argentina/La Rioja
+pref.timezone.America.Argentina.Mendoza=Amerika/Argentina/Mendoza
+pref.timezone.America.Argentina.Rio_Gallegos=Amerika/Argentina/Rio Gallegos
+pref.timezone.America.Argentina.San_Juan=Amerika/Argentina/San Juan
+pref.timezone.America.Argentina.Tucuman=Amerika/Argentina/Tukuman
+pref.timezone.America.Argentina.Ushuaia=Amerika/Argentina/Ushuaia
+pref.timezone.America.Aruba=Amerika/Aruba
+pref.timezone.America.Asuncion=Amerika/Asuncion
+pref.timezone.America.Atikokan=Amerika/Atikokan
+pref.timezone.America.Bahia=Amerika/Bahia
+pref.timezone.America.Barbados=Amerika/Barbados
+pref.timezone.America.Belem=Amerika/Belem
+pref.timezone.America.Belize=Amerika/Belize
+
+# the following have been missing
+
+# added with 2008d:
+
+# added with 2008i:
+
+# added with 2010i
+
+#added with 2011b
+
+#added with 2011n
+
+#added with 2013a
+
+#added with 2014b
+
+#added with 2014j
+
+#added with 2.2015g
+
+#added with 2.2016b
+
+#added with 2.2016i
+
+#added with 2.2016j
+
+#added with 2.2017b
diff --git a/calendar/chrome/lightning/lightning-toolbar.dtd b/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 00000000000..77019ea2a61
--- /dev/null
+++ b/calendar/chrome/lightning/lightning-toolbar.dtd
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/lightning/lightning.dtd b/calendar/chrome/lightning/lightning.dtd
new file mode 100644
index 00000000000..b0e3b3ee343
--- /dev/null
+++ b/calendar/chrome/lightning/lightning.dtd
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/lightning/lightning.properties b/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 00000000000..8fe5d610d3f
--- /dev/null
+++ b/calendar/chrome/lightning/lightning.properties
@@ -0,0 +1,174 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# addon description:
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.name=Chaqmoq
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.creator=Mozilla taqvim loyihasi
+
+# Lightning branding
+brandShortName=Lightning
+
+# Task mode title
+taskModeApplicationTitle=Vazifalar
+
+# Tab titles
+tabTitleCalendar=Taqvim
+tabTitleTasks=Vazifalar
+
+# Html event display in message
+imipHtml.header=Tadbir taklifi
+imipHtml.summary=Sarlavha:
+imipHtml.location=Manzili:
+imipHtml.when=Qachon:
+imipHtml.organizer=Tashkilotchi:
+imipHtml.description=Taârifi:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.comment=Izoh:
+imipHtml.attendees=Ishtirokchilar:
+# LOCALIZATION_NOTE(imipHtml.url): This is a label for a reference to an (alternate) online
+# representation of the event (either directly human readable or not).
+imipHtml.canceledOccurrences=Bekor qilingan hodisalar:
+imipHtml.modifiedOccurrences=Oâzgartirilgan hodisalar:
+imipHtml.newLocation=Yangi manzil: %1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedFrom): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegator or a comma separated list of delegators
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedTo): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+
+# LOCALIZATION_NOTE(imipHtml.attendee.combined): tooltip for itip icon in email invitation preview.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of imipHtml.attendeeRole2.*
+# %2$S - value of imipHtml.attendeePartStat2.*
+
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.CHAIR): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.ACCEPTED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DECLINED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DELEGATED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# %2$S - single delegatee or comma separated list of delegatees
+# delegation is different from invitation forwarding - in case of the former the original attendee
+# is replaced, while on the latter the receiver may take part additionally
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.NEEDS-ACTION): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.TENTATIVE): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.INDIVIDUAL): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing an individual attendee
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.GROUP): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a group (e.g. a distribution list)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.RESOURCE): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a resource (e.g. projector)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.ROOM): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a room
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.UNKNOWN): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing an attendee of unknown type
+
+imipBarCancelText=Ushbu xabarda tadbirni bekor qilish haqida maâlumot bor.
+imipBarRefreshText=Ushbu xabarda tadbirni yangilash soâralmoqda.
+imipBarPublishText=Ushbu xabarda tadbir bor.
+imipBarRequestText=Ushbu xabarda tadbirga taklif bor.
+imipBarUpdateText=Ushbu xabarda mavjud tadbirga yangilash mavjud.
+imipBarAlreadyProcessedText=Ushbu xabarda allaqachon oâtib ketgan tadbir bor.
+imipBarProcessedNeedsAction=Xabarda siz haligacha javob qaytarmagan tadbir bor.
+imipBarReplyText=Ushbu xabarda taklifga javob bor.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+imipBarUnsupportedText=Ushbu xabarda Lightning dasturining ushbu versiyasi koârsata olmaydigan tadbir bor.
+imipBarProcessingFailed=Xabarni qayta ishlab boâlmadi. Holati: %1$S.
+imipBarNotWritable=Yozib boâlmaydigan taqvimlar takliflar uchun moslangan, taqvim xossalarini tekrishib koâring.
+imipSendMail.title=E-pochta eslatmalari
+imipSendMail.text=E-pochtaga eslatmalarni hozir joânatishni xohlaysizmi?
+imipSendMail.Outlook2000CompatMode.text=Outlook 2000 and Outlook 2002/XP bilan ishlay oladi
+imipNoIdentity=Yoâq
+
+itipReplySubject=Tadbirga taklifga javob: %1$S
+itipReplyBodyAccept=Sizning tadbirga taklifingizni %1$S qabul qildi.
+itipReplyBodyDecline=Sizning tadbirga taklifingizni %1$S rad qildi.
+itipReplySubjectAccept=Tadbirga taklifga javob: (Qabul qilindi): %1$S
+itipReplySubjectDecline=Tadbirga taklifga javob: (Rad qilindi): %1$S
+itipReplySubjectTentative=Tadbir taklifiga javob: (Noaniq): %1$S
+itipRequestSubject=Tadbir taklifi: %1$S
+itipRequestUpdatedSubject=Tadbirga taklif yangilandi: %1$S
+itipRequestBody=%1$S sizni %2$S tadbiriga taklif qilgan
+itipCancelSubject=Tadbir bekor qilindi: %1$S
+
+confirmProcessInvitation=Siz yaqinda ushbu bandni oâchirgansiz, ushbu taklifni amalga oshirishni rostdan xohlaysizmi?
+confirmProcessInvitationTitle=Taklif amalga oshirilsinmi?
+
+invitationsLink.label=Takliflar: %1$S
+
+# LOCALIZATION_NOTE(binaryComponentKnown): This is shown when Lightning is
+# missing the binary component and knows how to calculate the expected version
+# number. To test, remove the binary component from the components/
+# subdirectory and start Lightning, or force install into a different
+# Thunderbird version. In the last part of the sentence it should be made clear
+# that the user can install e.g. 3.7, 3.7.1 or anything other 3.7.x version
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The current Lightning version
+# %3$S - The expected Lightning version
+
+# LOCALIZATION_NOTE(binaryComponentUnknown): This is shown when Lightning is
+# missing the binary component but can't calculate the expected version. This
+# happens in the rare case that Lightning is installed into something other
+# than Thunderbird or Seamonkey. You may link to a different page if you can
+# commit to keeping it up to date, I'd recommend staying with the English page.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The application brand name, e.g. Postbox
+# %3$S - The application version
+# %3$S - The current Lightning version
+
+# LOCALIZATION_NOTE(binaryComponentTitle): The title for the dialog that
+# notifies about a version mismatch.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+
+# LOCALIZATION_NOTE(integrationLabel): Used by the notification bar shown when
+# Lightning is installed from the distribution folder. To trigger it, start a
+# new profile without Lightning in a previous Thunderbird version, then upgrade
+# to a Thunderbird that has Lightning packaged. See bug 1130852 for details.
+integrationLearnMoreButton=Koâproq oârganish
+integrationLearnMoreAccessKey=m
+integrationOptOutButton=Oâchirib qoâyish
+integrationOptOutAccessKey=D
+integrationKeepItButton=Saqlash
+integrationKeepItAccessKey=K
+
+# LOCALIZATION_NOTE(integrationRestartLabel): At the current time its not yet
+# clear if we will be completely uninstalling Lightning or disabling it. Please
+# translate this string in a general manner, so that it makes sense for both
+# options.
+integrationRestartLabel=Keyingi safar %2$S qayta ishga tushirilganda %1$S olib tashlanadi. Qoâshimcha dasturlar menejeri orqali xohlagan vaqingizda uni yana qoâshishingiz mumkin.
+integrationRestartButton=Hozir qayta ishga tushirish
+integrationRestartAccessKey=R
+integrationUndoButton=Qaytarish
+integrationUndoAccessKey=U
diff --git a/chat/accounts.dtd b/chat/accounts.dtd
new file mode 100644
index 00000000000..c0bb4d1b365
--- /dev/null
+++ b/chat/accounts.dtd
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/chat/accounts.properties b/chat/accounts.properties
new file mode 100644
index 00000000000..0a193a68eb1
--- /dev/null
+++ b/chat/accounts.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (passwordPromptTitle, passwordPromptText):
+# %S is replaced with the name of the account
+passwordPromptTitle=%S uchun parol
+passwordPromptText=%Sni ulash uchun parolni kiriting.
+passwordPromptSaveCheckbox=Ushbu parol eslab qolinishi uchun "Parol menejeri"dan foydalaning.
diff --git a/chat/commands.properties b/chat/commands.properties
new file mode 100644
index 00000000000..341efd92c84
--- /dev/null
+++ b/chat/commands.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (commands):
+# %S is a comma separated list of command names.
+commands=Buyruqlar: %S.\nKoâproq maâlumot olish uchun /help <buyruq> buyrugâidan foydalaning.
+# LOCALIZATION NOTE (noCommand, noHelp):
+# %S is the command name the user typed.
+noCommand='%S' buyrugâi yoâq.
+noHelp='%S' buyrugâi uchun yordam xabari yoâq, kechirasiz!
+
+sayHelpString=Buyruqlarni klaviaturadan termasdan xabar joânatish uchun <message>: deb ayting.
+rawHelpString=raw <message>: HTML nomlardan qochishsiz xabarni joânatish.
+helpHelpString=help <name>: <name> buyrugâi yoki parametersiz foydalanilgan mavjud buyurqlar roâyxati uchun yordam xabarini koârsatish.
+
+# LOCALIZATION NOTE (statusCommand):
+# %1$S is replaced with a status command name
+# (one of "back", "away", "busy", "dnd", or "offline").
+# %2$S is replaced with the localized version of that status type
+# (one of the 5 strings below).
+statusCommand=%1$S <status message>: ixtiyoriy holat xabari bilan birga %2$S holatini oârnatish.
+back=mavjud
+away=tashqarida
+busy=mavjud emas
+dnd=mavjud emas
+offline=oflayn
diff --git a/chat/contacts.properties b/chat/contacts.properties
new file mode 100644
index 00000000000..feda374eaeb
--- /dev/null
+++ b/chat/contacts.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (defaultGroup):
+# This is the name of the group that will automatically be created when adding a
+# buddy without specifying a group.
+defaultGroup=Kontaktlar
diff --git a/chat/conversations.properties b/chat/conversations.properties
new file mode 100644
index 00000000000..3866906a560
--- /dev/null
+++ b/chat/conversations.properties
@@ -0,0 +1,80 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (targetChanged):
+# %1$S is the new conversation title (display name of the new target),
+# %2$S is the protocol name used for the new target.
+targetChanged=Suhbat %1$S bilan %2$S yordamida davom etadi.
+
+# LOCALIZATION NOTE (statusChanged):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+statusChanged=%1$S - hozir %2$S.
+# LOCALIZATION NOTE (statusChangedWithStatusText):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+# %3$S is the status text (eg. "I'm currently away from the computer").
+statusChangedWithStatusText=%1$S - hozir %2$S: %3$S.
+# LOCALIZATION NOTE (statusChangedFromUnknown[WithStatusText]):
+# special case of the previous 2 strings for when the status was
+# previously unknown. These 2 strings should not mislead the user
+# into thinking the person's status has just changed.
+statusChangedFromUnknown=%1$S - %2$S.
+statusChangedFromUnknownWithStatusText=%1$S - %2$S: %3$S.
+# LOCALIZATION NOTE (statusKnown[WithStatusText]):
+# special case of the previous 2 strings for when an account has just
+# been reconnected, so the status is now known. These 2 strings should not
+# mislead the user into thinking the person's status has just changed.
+statusKnown=Hisobingiz qaytadan ulangan (%1$S is %2$S).
+statusKnownWithStatusText=Hisobingiz qaytadan ulanadi (%1$S is %2$S: %3$S).
+# LOCALIZATION NOTE (statusUnknown):
+# %S is the display name of the contact.
+statusUnknown=Hisobingiz uzilgan (%S holati endi mavjud emas).
+
+accountDisconnected=Hisobingiz uzilgan
+accountReconnected=Hisobingiz uzib qoâyilgan
+
+# LOCALIZATION NOTE (autoReply):
+# %S is replaced by the text of a message that was sent as an automatic reply.
+autoReply=Auto-javob - %S
+
+# LOCALIZATION NOTE (noTopic):
+# Displayed instead of the topic when no topic is set.
+noTopic=Ushbu xonada mavzu xabari yoâq.
+
+# LOCALIZATION NOTE (topicSet):
+# %1$S is the conversation name, %2$S is the topic.
+topicSet=%1$S uchun mavzu: %2$S.
+# LOCALIZATION NOTE (topicNotSet):
+# %S is the conversation name.
+topicNotSet=%S uchun mavzu yoâq.
+# LOCALIZATION NOTE (topicChanged):
+# %1$S is the user who changed the topic, %2$S is the new topic.
+topicChanged=%1$S mavzuni oâzgartirdi: %2$S
+# LOCALIZATION NOTE (topicCleared):
+# %1$S is the user who cleared the topic.
+topicCleared=%1$S mavzuni tozalab tashladi.
+
+# LOCALIZATION NOTE (nickSet):
+# This is displayed as a system message when a participant changes his/her
+# nickname in a conversation.
+# %1$S is the old nick.
+# %2$S is the new nick.
+nickSet=%1$S endi %2$S.
+# LOCALIZATION NOTE (nickSet.you):
+# This is displayed as a system message when your nickname is changed.
+# %S is your new nick.
+nickSet.you=Siz endi %S.
+
+# LOCALIZATION NOTE (messenger.conversations.selections.ellipsis):
+# ellipsis is used when copying a part of a message to show that the message was cut
+messenger.conversations.selections.ellipsis=[â¦]
+
+# LOCALIZATION NOTE (messenger.conversations.selections.{system,content,action}MessagesTemplate):
+# These 3 templates are used to format selected messages before copying them.
+# Do not translate the texts between % characters, but feel free to adjust
+# whitespace and separators to make them fit your locale.
+messenger.conversations.selections.systemMessagesTemplate=%time% - %message%
+messenger.conversations.selections.contentMessagesTemplate=%time% - %sender%: %message%
+messenger.conversations.selections.actionMessagesTemplate=%time% * %sender% %message%
diff --git a/chat/dateFormat.properties b/chat/dateFormat.properties
new file mode 100644
index 00000000000..009a86f873b
--- /dev/null
+++ b/chat/dateFormat.properties
@@ -0,0 +1,62 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+month.1.Mmm=Yan
+month.2.Mmm=Fev
+month.3.Mmm=Mar
+month.4.Mmm=Apr
+month.5.Mmm=May
+month.6.Mmm=Iyun
+month.7.Mmm=Iyul
+month.8.Mmm=Avg
+month.9.Mmm=Sen
+month.10.Mmm=Okt
+month.11.Mmm=Noy
+month.12.Mmm=Dek
+
+month.1.name=Yanvar
+month.2.name=Fevral
+month.3.name=Mart
+month.4.name=Aprel
+month.5.name=Ðай
+month.6.name=Iyun
+month.7.name=Iyul
+month.8.name=Avgust
+month.9.name=Sentabr
+month.10.name=Oktabr
+month.11.name=Noyabr
+month.12.name=Dekabr
+
+day.1.name=Yakshanba
+day.2.name=Dushanba
+day.3.name=Seshanba
+day.4.name=Chorshanba
+day.5.name=Payshanba
+day.6.name=Juma
+day.7.name=Shanba
+
+day.1.Mmm=Yaksh
+day.2.Mmm=Dush
+day.3.Mmm=Sesh
+day.4.Mmm=Chor
+day.5.Mmm=Pay
+day.6.Mmm=Jum
+day.7.Mmm=Shan
+
+day.1.short=Ya
+day.2.short=Du
+day.3.short=Se
+day.4.short=Cho
+day.5.short=Pa
+day.6.short=Ju
+day.7.short=Sh
+
+noon=Peshin
+midnight=Yarim kecha
+
+AllDay=Kun boâyi
+
+# LOCALIZATION NOTE (finduri-MonthYear):
+# %1$S is the month name, %2$S is the year (4 digits format).
+finduri-MonthYear=%1$S %2$S
diff --git a/chat/facebook.properties b/chat/facebook.properties
new file mode 100644
index 00000000000..123296184e1
--- /dev/null
+++ b/chat/facebook.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+facebook.chat.name=Facebook suhbati
+facebook.disabled=Facebook XMPP darvozani yopganligi uchun "Facebook Chat" xizmati ishlamaydi.
diff --git a/chat/imtooltip.properties b/chat/imtooltip.properties
new file mode 100644
index 00000000000..f69251bda02
--- /dev/null
+++ b/chat/imtooltip.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+buddy.username=Foydalanuvchi nomi
+buddy.account=Hisob
+contact.tags=Teglar
diff --git a/chat/irc.properties b/chat/irc.properties
new file mode 100644
index 00000000000..f7c6f845f97
--- /dev/null
+++ b/chat/irc.properties
@@ -0,0 +1,209 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (irc.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring an IRC account.
+irc.usernameHint=taxallus
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if the account is
+# disconnected because of an error.
+connection.error.lost=Server bilan ulanish yoâqoldi
+connection.error.timeOut=Ulanish vaqti oâtib ketdi
+connection.error.invalidUsername=%S foydalanuvchi nomiga ruxsat bermadi
+connection.error.invalidPassword=Server paroli notoâgâri
+connection.error.passwordRequired=Parol soâralmoqda
+
+# LOCALIZATION NOTE (joinChat.*):
+# These show up on the join chat menu. An underscore is for the access key.
+joinChat.channel=_Kanal
+joinChat.password=_Parol
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.server=Server
+options.port=Port
+options.ssl=SSLâdan foydalanish
+options.encoding=Kodlash usulini oârnatish
+options.quitMessage=Xabardan chiqish
+options.partMessage=Xabar qismi
+options.showServerTab=Serverdan xabarlarni koârsatish
+options.alternateNicks=Muqobil taxalluslar
+
+# LOCALIZATION NOTE (ctcp.version):
+# %1$S is the nickname of the user whose version was requested.
+# %2$S is the version response from the client.
+ctcp.version=%1$S â "%2$S"dan foydalanmoqda.
+# LOCALIZATION NOTE (ctcp.time):
+# %1$S is the nickname of the user whose time was requested.
+# %2$S is the time response.
+ctcp.time=%1$S uchun vaqt â %2$S.
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.action=%S <bajarish uchun amal>: Amalni bajarish.
+command.ban=%S <nick!user@host>: Berilgan namunaga mos keluvchi foydalanuvchilarni blokang.
+command.ctcp=%S <nick> <msg>: CTCP xabarni taxallusga joânatadi.
+command.chanserv=%S <command>: ChanServâga buyruq joânatish.
+command.deop=%S <nick1>[,<nick2>]*: Kanal operatori holatini biror kishidan olib tashlash. Buni amalga oshirish uchun siz kanal operatori boâlishingiz kerak.
+command.devoice=%S <nick1>[,<nick2>]*: Agar kanal boshqalar tomonidan boshqarilayotgan boâlsa va biror kishi gapirishga toâsqinlik qilayotgan boâlsa, biror kishidan kanal ovozi holati olib tashlash.
+command.invite2=%S <nick>[ <nick>]* [<channel>]: Bir yoki bir nechta taxallusli insonlarni joriy kanalga yoki koârsatilgan kanalga qoâshilishi uchun taklif qilish.
+command.join=%S <room1>[ <key1>][,<room2>[ <key2>]]*: Bir yoki bir nechta kanalni kiritish. Agar kerak boâlsa, har biri uchun kanal kaliti ixtiyoriy keltirilgan.
+command.kick=%S <nick> [<message>]: Biror kishini kanaldan olib tashlash. Buning uchun siz kanal operatori boâlishingiz kerak.
+command.list=%S: Tarmoqda suhbat xonalarining barcha roâyxatini koârsatish. Diqqat, siz buni amalga oshirayotgan vaqtingizda baâzi serverlar uzilib qolishi mumkin.
+command.memoserv=%S <command>: MemoServâga buyruq joânatish.
+command.modeUser2=%S <nick> [(+|-)<mode>]: Foydalanuvchi rejimini oling, sozlang yoki sozlamalarni bekor qiling.
+command.modeChannel2=%S <channel>[ (+|-)<new mode> [<parameter>][,<parameter>]*]: Kanal rejimiga oâting, oârnating yoki uni bekor qiling.
+command.msg=%S <nick> <message>: Maxfiy xabarni foydalanuvchiga (kanalga qarama-qarshi sifatida) joânatish.
+command.nick=%S <new nickname>: Taxallusingizni oâzgartirish
+command.nickserv=%S <command>: NickServ serveriga buyruq joânatish.
+command.notice=%S <target> <message>: Foydalanuvchi yoki kanalga eslatma joânatish
+command.op=%S <nick1>[,<nick2>]*: Biror kishiga kanal operatori darajasini berish. Buni amalga oshirish uchun siz kanal operatori boâlishingiz kerak.
+command.operserv=%S <command>: OperServ serveriga buyruq joânatish.
+command.part=%S [message]: Ixtiyoriy xabar bilan joriy kanalni qoldirish.
+command.ping=%S [<nick>]: Qancha foydalanuvchi kechikkanligini (yoki foydalanuvchi koârsatilmagan boâlsa, serverni) soârash.
+command.quit=%S <message>: Ixtiyoriy xabar bilan serverdan aloqani uzish.
+command.quote=%S <command>: Buyruq qatorini serverga joânatish.
+command.time=%S: IRC serverda joriy mahalliy vaqtni koârsatadi.
+command.topic=%S [<new topic>]: Ushbu kanal mavzusini oârnatish.
+command.umode=%S (+|-)<yangi rejim>: Foydalanuvchi rejimini oârnatish yoki bekor qilish
+command.version=%S <nick>: Foydalanuvchi mijozi versiyasini soârash.
+command.voice=%S <nick1>[,<nick2>]*: Biror kishiga kanal ovozi darajasini. Buni amalga oshirish uchun siz kanal operatori boâlshingiz kerak.
+command.whois2=%S [<nick>]: Foydalanuvchi haqida maâlumot olish.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the nick and %2$S is the nick and host of the user who joined.
+message.join=%1$S [%2$S] xonaga kirdi.
+message.rejoined=Siz xonaga yana kirdingiz.
+# %1$S is the nick of who kicked you.
+# %2$S is message.kicked.reason, if a kick message was given.
+message.kicked.you=Sizga %1$S%2$S tepki joânatdi.
+# %1$S is the nick that is kicked, %2$S the nick of the person who kicked
+# %1$S. %3$S is message.kicked.reason, if a kick message was given.
+message.kicked=%1$S nomli â %2$S%3$S tomonidan tepki joânatildi.
+# %S is the kick message
+message.kicked.reason=: %S
+# %1$S is the new mode, %2$S is the nickname of the user whose mode
+# was changed, and %3$S is who set the mode.
+message.usermode=%1$S rejimi %2$S uchun %3$S tomonidan oârnatilgan.
+# %1$S is the new channel mode and %2$S is who set the mode.
+message.channelmode=%1$S kanal rejimi %2$S tomonidan oârnatilgan.
+# %S is the user's mode.
+message.yourmode=Sizning rejimingiz: %S.
+# Could not change the nickname. %S is the user's nick.
+message.nick.fail=Soâralgan taxallusdan foydalanib boâlmadi. Taxallusingiz quyidagicha qolyapti: %S
+# The parameter is the message.parted.reason, if a part message is given.
+message.parted.you=Siz xonadan chiqdingiz (Part%1$S).
+# %1$S is the user's nick, %2$S is message.parted.reason, if a part message is given.
+message.parted=%1$S xonadan chiqdi (Part%2$S).
+# %S is the part message supplied by the user.
+message.parted.reason=: %S
+# %1$S is the user's nick, %2$S is message.quit2 if a quit message is given.
+message.quit=%1$S xonadan chiqdi (Quit%2$S).
+# The parameter is the quit message given by the user.
+message.quit2=: %S
+# %1$S is the nickname of the user that invited us, %2$S is the conversation
+# name.
+message.inviteReceived=%1$S sizni %2$S suhbatga taklif qildi.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to.
+message.invited=%1$S sizni muvaffaqiyatli tarzda %2$S suhbatga taklif qildi.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to but are already in
+message.alreadyInChannel=%1$S allaqachon %2$S suhbatida.
+# %S is the nickname of the user who was summoned.
+message.summoned=%S chaqirilgan edi.
+# %S is the nickname of the user whose WHOIS information follows this message.
+message.whois=%S uchun WHOIS maâlumoti:
+# %1$S is the nickname of the (offline) user whose WHOWAS information follows this message.
+message.whowas=%1$S oflayn. %1$S uchun WHOWAS maâlumoti:
+# %1$S is the entry description (from tooltip.*), %2$S is its value.
+message.whoisEntry=\u00A0Â Â Â %1$S: %2$S
+# %S is the nickname that is not known to the server.
+message.unknownNick=%S â nomaâlum taxallus.
+# %1$S is the nickname of the user who changed the mode and %2$S is the new
+# channel key (password).
+message.channelKeyAdded=%1$S kanal parolini oâzgartirdi: %2$S.
+message.channelKeyRemoved=%S kanal parolini olib tashladi.
+# This will be followed by a list of ban masks.
+message.banMasks=Quyidagi manzildan ulangan foydalanuvchilar %Sâdan bloklandi:
+message.noBanMasks=%S uchun hech qanday manzil bloklanmagan.
+message.banMaskAdded=%1$Sâga mos kelgan manzillardan ulangan foydalanuvchilar %2$S tomonidan bloklangan.
+message.banMaskRemoved=%1$Sâga mos kelgan manzillardan ulangan foydalanuvchilar %2$S tomonidan bloklanishi bekor qilindi.
+# LOCALIZATION NOTE (message.ping): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %1$S is the nickname of the user or the server that was pinged.
+# #2 is the delay (in milliseconds).
+message.ping=Ping soâroviga %1$Sâdan javob #2 millisoniyada.;Ping soâroviga %1$Sâdan javob #2 millisoniyada
+
+
+# LOCALIZATION NOTE (error.*):
+# These are shown as error messages in the conversation or server tab.
+# %S is the channel name.
+error.noChannel=Hech qanday kanal mavjud emas: %S.
+error.tooManyChannels=Siz %S suhbatiga qoâshila olmaysiz, chunki siz juda koâp kanallarga qoâshilgansiz.
+# %1$S is your new nick, %2$S is the kill message from the server.
+error.nickCollision=Taxallusdan foydalanilmoqda, taxallus %1$S [%2$S]ga oâzgartirilmoqda.
+error.erroneousNickname=%S taxallusga ruxsat bermagan.
+error.banned=Sizni ushbu server bloklagan.
+error.bannedSoon=Sizni server tezda bloklaydi.
+error.mode.wrongUser=Boshqa foydalanuvchilar uchun rejimlarni oâzgartirib boâlmaydi.
+# %S is the nickname or channel name that isn't available.
+error.noSuchNick=%S onlayn emas.
+error.wasNoSuchNick=Bunday taxallus mavjud emas: %S
+error.noSuchChannel=Bunday kanal yoâq: %S.
+error.unavailable=%S vaqtinchalik mavjud emas.
+# %S is the channel name.
+error.channelBanned=Sizni %S bloklagan.
+error.cannotSendToChannel=Siz xabarlarni %Sâga joânata olmaysiz.
+error.channelFull=%S kanali toâla.
+error.inviteOnly=Siz %S suhbatiga qoâshilishga taklif qilingansiz.
+error.nonUniqueTarget=%S â yagona user@host yoki qisqa nom emas yoki siz juda koâp kanallarga qoâshilishga urinib koârgansiz.
+error.notChannelOp=Siz %Sâda .nal operatori emassiz.
+error.notChannelOwner=Siz %S suhbati kanali egasi emassiz.
+error.wrongKey=%S suhbatiga qoâshila olmadi, chunki kanal paroli notoâgâri.
+error.sendMessageFailed=Soânggi xabar joânatilayotganda xatolik yuz bergan. Aloqa qayta oârnatilgandan soâng qaytadan urinib koâring.
+# %1$S is the channel the user tried to join, %2$S is the channel
+# he was forwarded to.
+error.channelForward=Siz %1$S kanaliga qoâshila olmaysiz, shuning uchun avtomatik tarzda %2$S kanaliga yoânaltirildingiz.
+# %S is the mode that the user tried to set but was not recognized
+# by the server as a valid mode.
+error.unknownMode="%S" serverdagi yaroqli foydalanuvchi rejimi emas.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from a whois response.
+# The human readable ("realname") description of the user.
+tooltip.realname=Nomi
+tooltip.server=...ga ulandi
+# The username and hostname that the user connects from (usually based on the
+# reverse DNS of the user's IP, but often mangled by the server to
+# protect users).
+tooltip.connectedFrom=...dan ulandi
+tooltip.registered=Roâyxatdan oâtdi
+tooltip.registeredAs=Quyidagicha roâyxatdan oâtdi
+tooltip.secure=Xavfsiz ulanishda foydalanish
+# The away message of the user
+tooltip.away=Tashqarida
+tooltip.ircOp=IRC operatori
+tooltip.bot=Bot
+tooltip.lastActivity=Soânggi faoliyat
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S oldin
+tooltip.channels=Hozirda:
+
+# %1$S is the server name, %2$S is some generic server information (usually a
+# location or the date the user was last seen).
+tooltip.serverValue=%1$S (%2$S)
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ha
+no=Yoâq
diff --git a/chat/logger.properties b/chat/logger.properties
new file mode 100644
index 00000000000..278997b9baf
--- /dev/null
+++ b/chat/logger.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (badLogfile):
+# %S is the filename of the log file.
+badLogfile=Boâsh yoki buzuq jurnal fayli: %S
diff --git a/chat/matrix.properties b/chat/matrix.properties
new file mode 100644
index 00000000000..cea6e9c94d1
--- /dev/null
+++ b/chat/matrix.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.connectServer=Server
+options.connectPort=Port
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for Matrix accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Xona
diff --git a/chat/skype.properties b/chat/skype.properties
new file mode 100644
index 00000000000..c7bf1e65fc8
--- /dev/null
+++ b/chat/skype.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (connection.*):
+# These will show in the account manager to show progress during a connection.
+connecting.authenticating=Tasdiqdan oâtkazilmoqda
+connecting.registrationToken=Roâyxatdan oâtish maâlumotlari olinmoqda
+
+# LOCALIZATION NOTE (error.*):
+# These will show in the account manager if the account is disconnected
+# because of an error.
+error.auth=Serverdan tasdiqdan oâtmadi
+error.registrationToken=Roâyxatdan oâtish maâlumotlarini olishda xatolik yuz berdi
diff --git a/chat/status.properties b/chat/status.properties
new file mode 100644
index 00000000000..71becbaa440
--- /dev/null
+++ b/chat/status.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+availableStatusType=Mavjud
+awayStatusType=Tashqarida
+unavailableStatusType=Mavjud emas
+offlineStatusType=Oflayn
+invisibleStatusType=Koârinadigan
+idleStatusType=Kompyuter oldida emas
+mobileStatusType=Mobil
+# LOCALIZATION NOTE (unknownStatusType):
+# the status of a buddy is unknown when it's in the list of a disconnected account
+unknownStatusType=Nomaâlum
+
+# LOCALIZATION NOTE (statusWithStatusMessage):
+# Used to display the status of a buddy together with its status message.
+# %1$S is the status type, %2$S is the status message text.
+statusWithStatusMessage=%1$S - %2$S
+
+# LOCALIZATION NOTE (messenger.status.defaultIdleAwayMessage):
+# This will be the away message put automatically when the user is idle.
+messenger.status.defaultIdleAwayMessage=Men hozirda kompyuter yonida emasman.
diff --git a/chat/twitter.properties b/chat/twitter.properties
new file mode 100644
index 00000000000..940ea0427bc
--- /dev/null
+++ b/chat/twitter.properties
@@ -0,0 +1,120 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (twitter.protocolName)
+# This name is used whenever the name of the protocol is shown.
+twitter.protocolName=Twitter
+
+# LOCALIZATION NOTE (error.*):
+# These are errors that will be shown to the user in conversation.
+error.tooLong=Holat 140 ta belgis atrofida boâlishi kerak.
+# LOCALIZATION NOTE (error.general, error.retweet, error.delete):
+# %1$S will be either the error string returned by the twitter server,
+# in English, inside parenthesis, or the empty string if we have no specific
+# message for the error.
+# %2$S is the message that caused the error.
+error.general=%2$S joânatilayotganda %1$S xatoligi yuz berdi
+error.retweet=%2$S tviti boshqalar bilan ulashilayotganda %1$S xatoligi yuz berdi
+error.delete=%2$S oâchirilayotganda %1$S xatoligi yuz berdi
+error.like="Yoqdi" amali bajarilayotganda, xatolik (%1$S) yuz berdi: %2$S
+error.unlike=%2$S oâchirilayotganda %1$S xatoligi yuz berdi
+# LOCALIZATION NOTE (error.descriptionTooLong)
+# %S is the truncated string that was sent to the server.
+error.descriptionTooLong=Taârif maksimal (160 ta belgi) belgi atrofida, u avtomatik tarzda %Sga boâlinadi.
+
+# LOCALIZATION NOTE (timeline):
+# This is the title of the conversation tab, %S will be replaced by
+# @.
+timeline=%S vaqt hududi
+
+# LOCALIZATION NOTE (action.*):
+# This will be an action in the context menu of displayed tweets.
+action.copyLink=Linkdan tvitga nusxa koâchirish
+action.retweet=Tvitni boshqalar bilan ulashish
+action.reply=Javob qaytarish
+action.delete=Oâchirish
+# LOCALIZATION NOTE (action.follow, action.stopFollowing):
+# %S will be replaced by the screen name of a twitter user.
+action.follow=%Sni kuzatish
+action.stopFollowing=%Sni kuzatishni toâxtatish
+action.like=Yoqdi
+action.unlike="Yoqdi" funksiyasini olib tashlash
+
+# LOCALIZATION NOTE (event.follow, event.unfollow, event.followed):
+# This will be displayed in system messages inside the timeline conversation.
+# %S will be replaced by the screen name of a twitter user.
+event.follow=Siz hozir %Sni kuzatyasiz.
+event.unfollow=Siz endi %Sni kuzatmayapsiz.
+event.followed=%S hozirda sizni kuzatmoqda.
+# LOCALIZATION NOTE (event.deleted):
+# %S will be replaced by the text of the deleted tweet.
+event.deleted=Siz "%S" tvitni oâchirgansiz.
+
+# LOCALIZATION NOTE (replyingToStatusText):
+# This will be visible in the status bar of the conversation window
+# while the user is typing a reply to a tweet.
+# %S will be replaced by the text of the tweet the user is replying to.
+replyingToStatusText=%Sga qaytarilmoqda
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds ⦠at the end, so do not include
+# periods at the end of these messages.)
+connection.initAuth=Tasdiqdan oâtkazish jarayoni ishga tushirilmoqda
+connection.requestAuth=Tasdiqdan oâtishingiz kutilmoqda
+connection.requestAccess=Tasdiqdan oâtkazish tugallanmoqda
+connection.requestTimelines=Foydalanuvchi vaqt hududi soâralmoqda
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.userMismatch=Foydalanuvchi nomi topilmadi
+connection.error.failedToken=Olinmani olish soârovi amalga oshmadi.
+connection.error.authCancelled=Tasdiqdan oâtkazish jarayonini bekor qildingiz.
+connection.error.authFailed=Tasdiqdan oâtkazish amalga oshmadi.
+connection.error.noNetwork=Birorta ham ulanish uchun tarmoq mavjud emas.
+
+# LOCALIZATION NOTE (authPrompt):
+# This is the prompt in the browser window that pops up to authorize us
+# to use a Twitter account. It is shown in the title bar of the authorization
+# window.
+authPrompt=Twitter hisobingizdan foydalanish uchun ruxsat bering
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.track=Kuzatilgan kalit soâzlar
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the Twitter information that will appear in the tooltip
+# for each participant on the home timeline.
+# LOCALIZATION NOTE (tooltip.created_at): the date the user joined.
+tooltip.created_at=Foydalanishni boshlagan sanasi:
+tooltip.location=Manzili
+tooltip.lang=Til
+tooltip.time_zone=Vaqt hududi
+tooltip.url=Bosh sahifa
+# LOCALIZATION NOTE (tooltip.protected):
+# whether the user's tweets are publicly visible.
+tooltip.protected=Tvitlarni himoya qiladi
+# LOCALIZATION NOTE (tooltip.following):
+# whether you are subscribed to the user's tweets.
+tooltip.following=Hozirda kuzatilmoqda
+tooltip.name=Nomi
+tooltip.description=Taârifi
+# LOCALIZATION NOTE (tooltip.*_count):
+# Please see the right side of the official Twitter website UI.
+tooltip.friends_count=Kuzatilmoqda
+tooltip.statuses_count=Tvitlar
+tooltip.followers_count=Kuzatuvchilar
+tooltip.listed_count=Roâyxatga qoâshilgan
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ha
+no=Yoâq
+
+command.follow=%S <username>[ <username>]*: Foydalanuvchi (lar)ni kuzatishni boshlang.
+command.unfollow=%S <username>[ <username>]*: Foydalanuvchi (lar)ni kuzatishni toâxtating.
diff --git a/chat/xmpp.properties b/chat/xmpp.properties
new file mode 100644
index 00000000000..b6f7a389655
--- /dev/null
+++ b/chat/xmpp.properties
@@ -0,0 +1,271 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (connection.*)
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds ⦠at the end, so do not include
+# periods at the end of these messages.)
+connection.initializingStream=Oqim ishga tushirilmoqda
+connection.initializingEncryption=Kodlash boshlanmoqda
+connection.authenticating=Tasdiqdan oâtkazilmoqda
+connection.gettingResource=Manba olinmoqda
+connection.downloadingRoster=Kontakt roâyxati yuklab olinmoqda
+connection.srvLookup=SRV yozuvi qidirilmoqda
+
+# LOCALIZATION NOTE (connection.error.*)
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.invalidUsername=Foydalanuvchi nomi notoâri (foydalanuvchi nomida "@" belgisi boâlishi kerak)
+connection.error.failedToCreateASocket=Sokket yaratib boâlmadi (Oflaynmisiz?)
+connection.error.serverClosedConnection=Server ulanishni yopib qoâydi
+connection.error.resetByPeer=Ulanish manba tomonidan uzilib qoldi
+connection.error.timedOut=Ulanish vaqti oâtib ketdi
+connection.error.receivedUnexpectedData=Kutilmagan maâlumot qabul qilindi
+connection.error.incorrectResponse=Xato javob qabul qilindi
+connection.error.startTLSRequired=Server kodlashni talab qilmoqda, ammo siz uni oâchirgansiz
+connection.error.startTLSNotSupported=Serverda kodlash ishlamaydi, lekin moslamalaringiz uni talab qilmoqda
+connection.error.failedToStartTLS=Kodlash boshlanmadi
+connection.error.noAuthMec=Server tomonidan tasdiqdan oâtkazish mexanizm taklif qilinmagan
+connection.error.noCompatibleAuthMec=Server tomonidan taklif qilingan tasdiqdan oâtkazish mexanizmining birortasi ham ishlamaydi
+connection.error.notSendingPasswordInClear=Server faqat ochiq parollarni joânatishni tasdiqdan oâtkazishni qoâllab-quvvatlaydi
+connection.error.authenticationFailure=Tasdiqdan oâtkazish amalga oshmadi
+connection.error.notAuthorized=Tasdiqdan oâtkazilmadi (Xato parol kiritdingizmi?)
+connection.error.failedToGetAResource=Manba olinmadi
+connection.error.failedMaxResourceLimit=Bu hisob bir vaqtning oâzida koâplab joylardan ulangan.
+connection.error.failedResourceNotValid=Manba mavjud emas.
+connection.error.XMPPNotSupported=Bu server XMPP serveri bilan ishlay olmaydi
+
+# LOCALIZATION NOTE (conversation.error.notDelivered):
+# This is displayed in a conversation as an error message when a message
+# the user has sent wasn't delivered.
+# %S is replaced by the text of the message that wasn't delivered.
+conversation.error.notDelivered=Ushbu xabar yetib bormadi: %S
+# This is displayed in a conversation as an error message when joining a MUC
+# fails.
+# %S is the name of the MUC.
+conversation.error.joinFailed=%S qoâshilmadi
+# This is displayed in a conversation as an error message when the user is
+# banned from a room.
+# %S is the name of the MUC room.
+conversation.error.joinForbidden=%S qoâshila olmadi, chunki siz ushbu xonadan uni ban qilgansiz.
+conversation.error.joinFailedNotAuthorized=Roâyxatdan oâtishingiz kerak: Siz ushbu xonaga qoâshilish uchun hisobingizga kirishingiz kerak.
+conversation.error.creationFailedNotAllowed=Kirish cheklangan: Sizga xonalar yaratishga ruxsat berilmagan.
+# This is displayed in a conversation as an error message when remote server
+# is not found.
+# %S is the name of MUC room.
+conversation.error.joinFailedRemoteServerNotFound=%S xonasiga qoâshilib boâlmadi, chunki xona imkon boâlmagan hostda joylashgan.
+conversation.error.changeTopicFailedNotAuthorized=Ushbu xonaga mavzu qoâyish uchun siz tasdiqdan oâtishingiz kerak.
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that he is not in.
+# %1$S is the name of MUC room.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsNotInRoom=Xabar %1$Sâga joânatilmadi, chunki xona ichida emassiz: %2$S
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that the recipient is not in.
+# %1$S is the jid of the recipient.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsRecipientNotInRoom=Xabar %1$Sâga joânatilmadi, chunki qabul qiluvchi xona ichida emas: %2$S
+# These are displayed in a conversation as a system error message.
+conversation.error.remoteServerNotFound=Qabul qiluvchining serveri olinmadi
+conversation.error.unknownSendError=Ushbu xabarni yuborishda nomaâlum xatolik yuz berdi.
+# %S is the name of the message recipient.
+conversation.error.sendServiceUnavailable=Ayni damda xabarlarni %Sga yuborish mumkin emas.
+# %S is the nick of participant that is not in room.
+conversation.error.nickNotInRoom=%S xonada emas.
+conversation.error.banCommandAnonymousRoom=Anonim xonalar ishtirokchilarini bloklay olmaysiz. Oârniga /kick buyrugâidan foydalaning.
+conversation.error.banKickCommandNotAllowed=Xonadan ishtirokchini olib tashlash uchun sizga huquq berilmagan.
+conversation.error.banKickCommandConflict=Kechirasiz, xonadan oâzingizni olib tashlay olmaysiz.
+conversation.error.changeNickFailedConflict=Taxallusingizni %S nomiga oâzgartirib boâlmadi, chunki bu taxallusdan kimdir foydalanmoqda.
+conversation.error.changeNickFailedNotAcceptable=Taxallusingizni %S nomiga oâzgartirib boâlmadi, chunki bu xonada taxalluslar bloklab qoâyilgan.
+conversation.error.inviteFailedForbidden=Ushbu xonaga taklif qilish uchun sizga huquq berilmagan.
+# %S is the jid of user that is invited.
+conversation.error.failedJIDNotFound=%S olinmadi.
+# %S is the jid that is invalid.
+conversation.error.invalidJID=%S - yaroqsiz jid (Jabber hisobi user@domain shaklida boâlishi kerak).
+conversation.error.commandFailedNotInRoom=Bu buyruqdan foydalanish uchun xonaga qayta kirishingiz kerak.
+# %S is the name of the recipient.
+conversation.error.resourceNotAvailable=Bittadan ortiq mijoz bilan gaplashish uchun %S sifatida gaplashishingiz kerak.
+
+# LOCALIZATION NOTE (conversation.error.version.*):
+# %S is the name of the recipient.
+conversation.error.version.unknown=%S mijozi oâz dasturi versiyasi uchun soârovlarni qoâllab-quvvatlamaydi.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the titles of lines of information that will appear in
+# the tooltip showing details about a contact or conversation.
+# LOCALIZATION NOTE (tooltip.status):
+# %S will be replaced by the XMPP resource identifier
+tooltip.status=Holati (%S)
+tooltip.statusNoResource=Holati
+tooltip.subscription=Obuna
+tooltip.fullName=Toâliq ismi
+tooltip.nickname=Taxallusi
+tooltip.email=E-pochta
+tooltip.birthday=Tugâilgan kun
+tooltip.userName=Foydalanuvchi
+tooltip.title=Sarlavha
+tooltip.organization=Tashkilot
+tooltip.locality=Joylashuvi
+tooltip.country=Mamlakat
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for XMPP accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Xona
+chatRoomField.server=_Server
+chatRoomField.nick=_Taxallus
+chatRoomField.password=_Parol
+
+# LOCALIZATION NOTE (conversation.muc.*):
+# These are displayed as a system message when a chatroom invitation is
+# received.
+# %1$S is the inviter.
+# %2$S is the room.
+# %3$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2=%1$S sizni %2$Sâga qoâshilishni taklif qildi: %3$S
+# %3$S is the password of the room.
+# %4$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2.password=%1$S sizni %2$S ga %3$S paroli bilan kirish uchun taklif qildi: %4$S
+conversation.muc.invitationWithoutReason=%1$S sizni %2$Sâga qoâshilish uchun taklif qildi
+# %3$S is the password of the room.
+conversation.muc.invitationWithoutReason.password=%1$S sizni %2$S ga %3$S paroli bilan kirish uchun taklif qildi
+
+# LOCALIZATION NOTE (conversation.muc.join):
+# This is displayed as a system message when a participant joins room.
+# %S is the nick of the participant.
+conversation.message.join=%S xonaga kirdi.
+
+# LOCALIZATION NOTE (conversation.muc.rejoined):
+# This is displayed as a system message when a participant rejoins room after
+# parting it.
+conversation.message.rejoined=Siz xonaga yana kirdingiz.
+
+# LOCALIZATION NOTE (conversation.message.parted.*):
+# These are displayed as a system message when a participant parts a room.
+# %S is the part message supplied by the user.
+conversation.message.parted.you=Xonadan chiqishingiz kerak.
+conversation.message.parted.you.reason=Xonadan chiqishingiz kerak: %S
+# %1$S is the participant that is leaving.
+# %2$S is the part message supplied by the participant.
+conversation.message.parted=%1$S xonadan chiqib ketdi.
+conversation.message.parted.reason=%1$S xonadan chiqdi: %2$S
+
+# LOCALIZATION NOTE (conversation.message.invitationDeclined*):
+# %1$S is the invitee that declined the invitation.
+# %2$S is the decline message supplied by the invitee.
+conversation.message.invitationDeclined=%1$S taklifingizni rad etdi.
+conversation.message.invitationDeclined.reason=%1$S taklifingizni rad etdi: %2$S
+
+# LOCALIZATION NOTE (conversation.message.banned.*):
+# These are displayed as a system message when a participant is banned from
+# a room.
+# %1$S is the participant that is banned.
+# %2$S is the reason.
+# %3$S is the person who is banning.
+conversation.message.banned=%1$S xona uchun bloklangan.
+conversation.message.banned.reason=%1$S xona uchun bloklangan: %2$S
+# %1$S is the person who is banning.
+# %2$S is the participant that is banned.
+# %3$S is the reason.
+conversation.message.banned.actor=%1$S - %2$Sâni xona uchun bloklagan.
+conversation.message.banned.actor.reason=%1$S xona uchun %2$Sâni bloklagan: %3$S
+conversation.message.banned.you=Siz xona uchun bloklangansiz.
+# %1$S is the reason.
+conversation.message.banned.you.reason=Siz xona uchun bloklangansiz: %1$S
+# %1$S is the person who is banning.
+# %2$S is the reason.
+conversation.message.banned.you.actor=%1$S sizni xona uchun bloklagan.
+conversation.message.banned.you.actor.reason=%1$S sizni xona uchun bloklagan: %2$S
+
+# LOCALIZATION NOTE (conversation.message.kicked.*):
+# These are displayed as a system message when a participant is kicked from
+# a room.
+# %1$S is the participant that is kicked.
+# %2$S is the reason.
+conversation.message.kicked=%1$S xonadan haydalgan.
+conversation.message.kicked.reason=%1$S xonadan haydalgan: %2$S
+# %1$S is the person who is kicking.
+# %2$S is the participant that is kicked.
+# %3$S is the reason.
+conversation.message.kicked.actor=%1$S %2$Sâni xonadan haydagan.
+conversation.message.kicked.actor.reason=%1$S %2$Sâni xonadan haydagan: %3$S
+conversation.message.kicked.you=Siz xonadan haydalgansiz.
+# %1$S is the reason.
+conversation.message.kicked.you.reason=Siz xonadan haydalgansiz: %1$S
+# %1$S is the person who is kicking.
+# %2$S is the reason.
+conversation.message.kicked.you.actor=%1$S sizni xonadan haydagan.
+conversation.message.kicked.you.actor.reason=%1$S sizni xonadan haydagan: %2$S
+
+# LOCALIZATION NOTE (conversation.message.removedNonMember.*):
+# These are displayed as a system message when a participant is removed from
+# a room because the room has been changed to members-only.
+# %1$S is the participant that is removed.
+# %2$S is the person who changed the room configuration.
+conversation.message.removedNonMember=%1$S xonadan olib tashlangan, chunki uning sozlamasi faqat aâzolarga oâzgartirilgan.
+conversation.message.removedNonMember.actor=%1$S xonadan olib tashlangan, chunki %2$S uni faqat aâzolarga deb oâzgartirgtan.
+conversation.message.removedNonMember.you=Siz xonadan olib tashlangansiz, chunki uning konfiguratisyasi "faqat aâzolarga" deb oâzgartirilgan.
+# %1$S is the person who changed the room configuration.
+conversation.message.removedNonMember.you.actor=Siz xonadan olib tashlangansiz, chunki %1$S uni "faqat aâzolarga" deb oâzgartirdi.
+
+# LOCALIZATION NOTE (conversation.message.MUCShutdown):
+# These are displayed as a system message when a participant is removed from
+# a room because of a system shutdown.
+conversation.message.mucShutdown=Siz xonadan olib tashlandingiz, chunki tizim oâchirilgan.
+
+# LOCALIZATION NOTE (conversation.message.version*):
+# %1$S is the name of the user whose version was requested.
+# %2$S is the client name response from the client.
+# %3$S is the client version response from the client.
+# %4$S is the operating system(OS) response from the client.
+conversation.message.version=%1$S foydalanmoqda: "%2$S %3$S".
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.resource=Manba
+options.priority=Muhimlik darajasi
+options.connectionSecurity=Ulanish xavvsizligi
+options.connectionSecurity.requireEncryption=Kodlashingiz kerak
+options.connectionSecurity.opportunisticTLS=Agar mavjud boâlsa, kodlashdan foydalaning
+options.connectionSecurity.allowUnencryptedAuth=Kodlanmagan parolni joânatishga ruxsat berish
+options.connectServer=Server
+options.connectPort=Port
+options.domain=Domen
+
+# LOCALIZATION NOTE (*.protocolName)
+# This name is used whenever the name of the protocol is shown.
+gtalk.protocolName=Google Talk
+odnoklassniki.protocolName=Odnoklassniki
+
+# LOCALIZATION NOTE (gtalk.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Google Talk account.
+gtalk.usernameHint=e-pochta manzili
+
+# LOCALIZATION NOTE (odnoklassniki.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Odnoklassniki account.
+odnoklassniki.usernameHint=Profil ID raqami
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command.
+command.join3=%S [<room>[@<server>][/<nick>]] [<password>]: Xonaga qoâshiling, ixtiyriy boshqa server yoki taxallu yoki parolni ni koârsatmoqda.
+command.part2=%S [<message>]: Joriy xonani ixtiyoriy xabarsiz tashlab chiqish.
+command.topic=%S [<new topic>]: Ushbu xonaning suhbat mavzusini oârnating.
+command.ban=%S <nick>[<message>]: Xonadagi biror kishini bloklash. Buni amalga oshirish uchun xona adminsitratori boâlishingiz kerak.
+command.kick=%S <nick>[<message>]: Xonadagi biror kishini bloklash. Buni amalga oshirish uchun xona moderatori boâlishingiz kerak.
+command.invite=%S <jid>[<message>]:Majburiy boâlmagan havola yordamida foydalanuvchini joriy xonaga qoâshilish uchun taklif qiling.
+command.me=%S <bajarish uchun amal>: Amalni bajarish.
+command.nick=%S <yangi taxallus>: Taxallusingizni oâzgartirish
+command.msg=%S <nick> <message>: Maxfiy xabarni xonadagi ishtirokchiga joânating.
diff --git a/devtools/client/VariablesView.dtd b/devtools/client/VariablesView.dtd
new file mode 100644
index 00000000000..ab7ad37da6d
--- /dev/null
+++ b/devtools/client/VariablesView.dtd
@@ -0,0 +1,12 @@
+
+
+
+
+
+
diff --git a/devtools/client/aboutdebugging.dtd b/devtools/client/aboutdebugging.dtd
new file mode 100644
index 00000000000..e1a3121da9b
--- /dev/null
+++ b/devtools/client/aboutdebugging.dtd
@@ -0,0 +1,5 @@
+
+
+
diff --git a/devtools/client/aboutdebugging.properties b/devtools/client/aboutdebugging.properties
new file mode 100644
index 00000000000..1df3ffd9e1f
--- /dev/null
+++ b/devtools/client/aboutdebugging.properties
@@ -0,0 +1,172 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (debug):
+# This string is displayed as a label of the button that starts
+# debugging a service worker.
+debug = Tuzatish
+
+# LOCALIZATION NOTE (push):
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+push = Turtish
+
+# LOCALIZATION NOTE (start):
+# This string is displayed as a label of the button that starts a service worker.
+start = Boshlash
+
+scope = Doira
+unregister = roâyxatdan chiqarish
+
+pushService = Push xizmati
+
+# LOCALIZATION NOTE (fetch):
+# Fetch is an event type and should not be translated.
+
+# LOCALIZATION NOTE (listeningForFetchEvents):
+# This is used to display the state of the SW in regard to fetch events.
+
+# LOCALIZATION NOTE (notListeningForFetchEvents):
+# This is used to display the state of the SW in regard to fetch events.
+
+# LOCALIZATION NOTE (addons):
+# This string is displayed as a header of the about:debugging#addons page.
+addons = Qoâshimcha dasturlar
+
+# LOCALIZATION NOTE (addonDebugging.label):
+# This string is displayed next to a check box that enables the user to switch
+# addon debugging on/off.
+addonDebugging.label = Qoâshimcha dasturlarni tuzatishni ishga tushirish
+
+# LOCALIZATION NOTE (addonDebugging.tooltip):
+# This string is displayed in a tooltip that appears when hovering over a check
+# box that switches addon debugging on/off.
+addonDebugging.tooltip = Bu funksiyani yoqib qoâysangiz, qoâshimcha dastur va brauzerning chrome boâlimidagi har xil boshqa qismlarini tuzatish imkoni paydo boâladi.
+
+# LOCALIZATION NOTE (addonDebugging.learnMore):
+# This string is displayed as a link next to addonDebugging.label and leads the user to
+# the MDN documentation page for about:debugging.
+# (https://developer.mozilla.org/docs/Tools/about:debugging#Enabling_add-on_debugging)
+
+# LOCALIZATION NOTE (loadTemporaryAddon):
+# This string is displayed as a label of a button that allows the user to
+# load additional add-ons.
+loadTemporaryAddon = Vaqtinchalik qoâshimcha dasturni yuklash
+
+# LOCALIZATION NOTE (retryTemporaryInstall):
+# This string is displayed as a label of a button that allows the user to
+# retry a failed installation of a temporary add-on.
+
+# LOCALIZATION NOTE (extensions):
+# This string is displayed as a header above the list of loaded add-ons.
+extensions = Kengaytmalar
+
+# LOCALIZATION NOTE (temporaryExtensions):
+# This string is displayed as a header above the list of temporarily loaded add-ons.
+
+# LOCALIZATION NOTE (internalUUID):
+# This string is displayed as a label for the internal UUID of an extension.
+# The UUID is generated for this profile on install.
+
+# LOCALIZATION NOTE (extensionID):
+# This string is displayed as a label for the ID of an extension. This is not the same as the internal UUID.
+
+# LOCALIZATION NOTE (manifestURL):
+# This string is displayed as a link for the manifest of an extension,
+# accessible in a browser, such as moz-extension://[internalUUID]/manifest.json.
+
+# LOCALIZATION NOTE (webExtTip):
+# This string is displayed as a message below the list of temporarily loaded add-ons.
+# Web-ext is a command line tool for web-extensions developers.
+# See https://developer.mozilla.org/Add-ons/WebExtensions/Getting_started_with_web-ext
+
+# LOCALIZATION NOTE (webExtTip.learnMore):
+# This string is displayed as a link next to webExtTip and leads the user to the MDN
+# documentation page for web-ext.
+# (https://developer.mozilla.org/Add-ons/WebExtensions/Getting_started_with_web-ext)
+
+# LOCALIZATION NOTE (temporaryID):
+# This string is displayed as a message about the add-on having a temporaryID.
+
+# LOCALIZATION NOTE (temporaryID.learnMore):
+# This string is displayed as a link next to the temporaryID message and leads
+# the user to MDN.
+
+# LOCALIZATION NOTE (selectAddonFromFile2):
+# This string is displayed as the title of the file picker that appears when
+# the user clicks the 'Load Temporary Add-on' button
+selectAddonFromFile2 = Manifest fayli yoki paketini (.xpi) tanlang
+
+# LOCALIZATION NOTE (reload):
+# This string is displayed as a label of the button that reloads a given addon.
+reload = Qayta yuklash
+
+# LOCALIZATION NOTE (remove):
+# This string is displayed as a label of the button that will remove a given addon.
+
+# LOCALIZATION NOTE (location):
+# This string is displayed as a label for the filesystem location of an extension.
+
+# LOCALIZATION NOTE (workers):
+# This string is displayed as a header of the about:debugging#workers page.
+workers = Workers
+
+serviceWorkers = Service Workers
+sharedWorkers = Shared Workers
+otherWorkers = Other Workers
+
+# LOCALIZATION NOTE (running):
+# This string is displayed as the state of a service worker in RUNNING state.
+
+# LOCALIZATION NOTE (stopped):
+# This string is displayed as the state of a service worker in STOPPED state.
+
+# LOCALIZATION NOTE (registering):
+# This string is displayed as the state of a service worker for which no service worker
+# registration could be found yet. Only active registrations are visible from
+# about:debugging, so such service workers are considered as registering.
+
+# LOCALIZATION NOTE (tabs):
+# This string is displayed as a header of the about:debugging#tabs page.
+tabs = Ichki oynalar
+
+# LOCALIZATION NOTE (pageNotFound):
+# This string is displayed as the main message at any error/invalid page.
+pageNotFound = Sahifa topilmadi
+
+# LOCALIZATION NOTE (doesNotExist):
+# This string is displayed as an error message when navigating to an invalid page
+# %S will be replaced by the name of the page at run-time.
+doesNotExist = #%S mavjud emas!
+
+# LOCALIZATION NOTE (nothing):
+# This string is displayed when the list of workers is empty.
+nothing = Hozircha hech narsa yoâq.
+
+# LOCALIZATION NOTE (configurationIsNotCompatible.label):
+# This string is displayed in about:debugging#workers if the current configuration of the
+# browser is incompatible with service workers. More details at
+# https://developer.mozilla.org/en-US/docs/Tools/about%3Adebugging#Service_workers_not_compatible
+
+# LOCALIZATION NOTE (configurationIsNotCompatible.learnMore):
+# This string is displayed as a link next to configurationIsNotCompatible.label and leads
+# the user to the MDN documentation page for about:debugging, on the section explaining
+# why service workers might not be available.
+# (https://developer.mozilla.org/en-US/docs/Tools/about%3Adebugging#Service_workers_not_compatible)
+
+# LOCALIZATION NOTE (multiProcessWarningTitle):
+# This string is displayed as a warning message on top of the about:debugging#workers
+# page when multi-e10s is enabled
+
+# LOCALIZATION NOTE (multiProcessWarningMessage):
+# This string is displayed in the warning section for multi-e10s in
+# about:debugging#workers
+
+# LOCALIZATION NOTE (multiProcessWarningLink):
+# This string is the text content of a link in the warning section for multi-e10s in
+# about:debugging#workers. The link updates the pref and restarts the browser.
+
+# LOCALIZATION NOTE (multiProcessWarningConfirmUpdate):
+# This string is displayed as a confirmation message when the user clicks on
+# the multiProcessWarningUpdateLink in about:debugging#workers
diff --git a/devtools/client/animationinspector.properties b/devtools/client/animationinspector.properties
new file mode 100644
index 00000000000..f09ce81f48e
--- /dev/null
+++ b/devtools/client/animationinspector.properties
@@ -0,0 +1,180 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Animation inspector
+# which is available as a sidebar panel in the Inspector.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (panel.invalidElementSelected):
+# This is the label shown in the panel when an invalid node is currently
+# selected in the inspector (i.e. a non-element node or a node that is not
+# animated).
+panel.invalidElementSelected=Joriy element uchun birorta ham animatsiya topilmadi.
+
+# LOCALIZATION NOTE (panel.selectElement): This is the label shown in the panel
+# when an invalid node is currently selected in the inspector, to invite the
+# user to select a new node by clicking on the element-picker icon.
+
+# LOCALIZATION NOTE (panel.allAnimations): This is the label shown at the bottom of
+# the panel, in a toolbar, to let the user know the toolbar applies to all
+# animations, not just the ones applying to the current element.
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=Davomiyligi:
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=Ushlab turish:
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=Kechikishning oxiri:
+
+# LOCALIZATION NOTE (player.animationRateLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation playback rate.
+player.animationRateLabel=Ijro tezligi:
+
+# LOCALIZATION NOTE (player.animationIterationCountLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the number of times the animation is set to repeat.
+player.animationIterationCountLabel=Takrorlanishlar:
+
+# LOCALIZATION NOTE (player.infiniteIterationCount):
+# In case the animation repeats infinitely, this string is displayed next to the
+# player.animationIterationCountLabel string, instead of a number.
+player.infiniteIterationCount=∞
+
+# LOCALIZATION NOTE (player.infiniteIterationCountText):
+# See player.infiniteIterationCount for a description of what this is.
+# Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
+# a tooltip.
+player.infiniteIterationCountText=â
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# iterationStart value.
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start
+player.animationIterationStartLabel=Takrorlanishning boshi: %1$S (%2$Ss)
+
+# LOCALIZATION NOTE (player.animationOverallEasingLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the easing
+# that applies to a whole iteration of an animation as opposed to the
+# easing that applies between animation keyframes.
+
+# LOCALIZATION NOTE (player.animationFillLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# fill mode value.
+
+# LOCALIZATION NOTE (player.animationDirectionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# direction value.
+
+# LOCALIZATION NOTE (player.timeLabel):
+# This string is displayed in each animation player widget, to indicate either
+# how long (in seconds) the animation lasts, or what is the animation's current
+# time (in seconds too);
+player.timeLabel=%Ss
+
+# LOCALIZATION NOTE (player.playbackRateLabel):
+# This string is displayed in each animation player widget, as the label of
+# drop-down list items that can be used to change the rate at which the
+# animation runs (1Ã being the default, 2Ã being twice as fast).
+player.playbackRateLabel=%SÃ
+
+# LOCALIZATION NOTE (player.runningOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that the
+# animation is running on the compositor thread.
+player.runningOnCompositorTooltip=Bu animatsiya kompozitor yoâlagida bajarilmoqda
+
+# LOCALIZATION NOTE (player.allPropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is running on the compositor thread.
+player.allPropertiesOnCompositorTooltip=Barcha animatsiya xossalari optimallashtirilgan
+
+# LOCALIZATION NOTE (player.somePropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is not running on the compositor thread.
+player.somePropertiesOnCompositorTooltip=Baâzo animatsiya xossalari optimallashtirilgan
+
+# LOCALIZATION NOTE (timeline.rateSelectorTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# drop-down list that can be used to change the rate at which the animations
+# run.
+timeline.rateSelectorTooltip=Animatsiya tezligi nisbatini oârnatish
+
+# LOCALIZATION NOTE (timeline.pauseResumeButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.pausedButtonTooltip=Animatsiyani davom etttirish
+
+# LOCALIZATION NOTE (timeline.pauseResumeButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.resumedButtonTooltip=Animatsiyani toâxtatib turish
+
+# LOCALIZATION NOTE (timeline.rewindButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# rewind button that can be used to rewind the animations
+timeline.rewindButtonTooltip=Animatsiyalarni boshiga qaytarish
+
+# LOCALIZATION NOTE (timeline.timeGraduationLabel):
+# This string is displayed at the top of the animation panel, next to each time
+# graduation, to indicate what duration (in milliseconds) this graduation
+# corresponds to.
+timeline.timeGraduationLabel=%Sms
+
+# LOCALIZATION NOTE (timeline.cssanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.cssanimation.nameLabel=%S - CSS animatsiyasi
+
+# LOCALIZATION NOTE (timeline.csstransition.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Transition in the timeline UI.
+# %S will be replaced by the name of the transition at run-time.
+timeline.csstransition.nameLabel=%S - CSS oâtish effekti
+
+# LOCALIZATION NOTE (timeline.scriptanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a script-generated animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.scriptanimation.nameLabel=%S - Animatsiya skripti
+
+# LOCALIZATION NOTE (timeline.scriptanimation.unnamedLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over an unnamed script-generated animation in the timeline UI.
+timeline.scriptanimation.unnamedLabel=Animatsiya skripti
+
+# LOCALIZATION NOTE (timeline.unknown.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of an unknown animation type in the timeline UI.
+# This can happen if devtools couldn't figure out the type of the animation.
+# %S will be replaced by the name of the transition at run-time.
+timeline.unknown.nameLabel=%S
+
+# LOCALIZATION NOTE (detail.propertiesHeader.percentage):
+# This string is displayed on header label in .animated-properties-header.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+
+# LOCALIZATION NOTE (detail.headerTitle):
+# This string is displayed on header label in .animation-detail-header.
+
+# LOCALIZATION NOTE (detail.header.closeLabel):
+# This string is displayed in a tooltip of close button for animated properties
diff --git a/devtools/client/app-manager.properties b/devtools/client/app-manager.properties
new file mode 100644
index 00000000000..369fcdea518
--- /dev/null
+++ b/devtools/client/app-manager.properties
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+validator.nonExistingFolder=Loyiha jildi mavjud emas
+validator.expectProjectFolder=Loyiha jildi fayl boâlib tugaydi
+validator.noManifestFile=Paketlangan ilova dasturlar uchun "manifest.webapp" yoki qoâshimcha dasturlar uchun "manifest.json" nomli loyiha asos jildida manifest fayli boâlishi shart.
+validator.invalidManifestURL=Manifest URL '%S' manzili - notoâgâri
+# LOCALIZATION NOTE (validator.invalidManifestJSON, validator.noAccessManifestURL):
+# %1$S is the error message, %2$S is the URI of the manifest.
+validator.invalidManifestJSON=webapp manifest toâgâri JSON fayli emas: %1$S, %2$S da
+validator.noAccessManifestURL=Manifest faylini oâqib boâlmadi: %1$S, %2$S da
+# LOCALIZATION NOTE (validator.invalidHostedManifestURL): %1$S is the URI of
+# the manifest, %2$S is the error message.
+validator.invalidHostedManifestURL=Xato hostga joylashtirilgan manifest URL manzili '%1$S': %2$S
+validator.invalidProjectType=Nomaâlum loyiha turi: '%S'
+# LOCALIZATION NOTE (validator.missNameManifestProperty, validator.missIconsManifestProperty):
+# don't translate 'icons' and 'name'.
+validator.missNameManifestProperty=Manifestda kerakli 'name' kiritilishi kerak.
+validator.missIconsManifestProperty=Manifestga 'icons' kiritish kerak.
+validator.missIconMarketplace2=Doâkonga ilova qoâshish uchun kamida 128px hajmdagi nishoncha boâlishi kerak
+validator.invalidAppType=Nomaâlum ilova turi: '%S'.
+validator.invalidHostedPriviledges=Hostga joylashtirilgan ilova '%S' turda boâlmasligi kerak.
+validator.noCertifiedSupport='certified' ilovalar "Ilovalar menejeri"da toâliq qoâllab-quvvatlanmaydi.
+validator.nonAbsoluteLaunchPath='/' bilan boshlanadigan mutlaq yoâlga ega yoâlni ishga tushiring: '%S'
+validator.accessFailedLaunchPath='%S' hujjatini ishga tushiruvchi ilovadan foydalanib boâlmadi
+# LOCALIZATION NOTE (validator.accessFailedLaunchPathBadHttpCode): %1$S is the URI of
+# the launch document, %2$S is the http error code.
+validator.accessFailedLaunchPathBadHttpCode=HTTP kod %2$S ga ega '%1$S' hujjatini ishga tushiruvchi ilovadan foydalanib boâlmadi
diff --git a/devtools/client/boxmodel.properties b/devtools/client/boxmodel.properties
new file mode 100644
index 00000000000..00eb9700f38
--- /dev/null
+++ b/devtools/client/boxmodel.properties
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the Layout View strings.
+# The Layout View is a panel displayed in the computed view tab of the Inspector sidebar.
+
+# LOCALIZATION NOTE : FILE The correct localization of this file might be to
+# keep it in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (boxmodel.title) This is the title of the box model panel and is
+# displayed as a label.
+boxmodel.title=Blok modeli
+
+# LOCALIZATION NOTE (boxmodel.margin) This refers to the margin in the box model and
+# might be displayed as a label or as a tooltip.
+boxmodel.margin=chetlari
+
+# LOCALIZATION NOTE (boxmodel.border) This refers to the border in the box model and
+# might be displayed as a label or as a tooltip.
+boxmodel.border=chegara
+
+# LOCALIZATION NOTE (boxmodel.padding) This refers to the padding in the box model and
+# might be displayed as a label or as a tooltip.
+boxmodel.padding=padding
+
+# LOCALIZATION NOTE (boxmodel.content) This refers to the content in the box model and
+# might be displayed as a label or as a tooltip.
+boxmodel.content=tarkibi
+
+# LOCALIZATION NOTE: (boxmodel.geometryButton.tooltip) This label is displayed as a
+# tooltip that appears when hovering over the button that allows users to edit the
+# position of an element in the page.
+boxmodel.geometryButton.tooltip=Joylashuvni tahrirlash
+
+# LOCALIZATION NOTE: (boxmodel.propertiesLabel) This label is displayed as the header
+# for showing and collapsing the properties underneath the box model in the layout view
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent) This label is displayed inside the list of
+# properties, below the box model, in the layout view. It is displayed next to the
+# position property, when position is absolute, relative, sticky. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
diff --git a/devtools/client/canvasdebugger.dtd b/devtools/client/canvasdebugger.dtd
new file mode 100644
index 00000000000..a9f73053a04
--- /dev/null
+++ b/devtools/client/canvasdebugger.dtd
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/devtools/client/canvasdebugger.properties b/devtools/client/canvasdebugger.properties
new file mode 100644
index 00000000000..894eec4f52e
--- /dev/null
+++ b/devtools/client/canvasdebugger.properties
@@ -0,0 +1,70 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Canvas Debugger
+# which is available from the Web Developer sub-menu -> 'Canvas'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (noSnapshotsText): The text to display in the snapshots menu
+# when there are no recorded snapshots yet.
+noSnapshotsText=Haligacha rasmlar yoâq.
+
+# LOCALIZATION NOTE (snapshotsList.itemLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# identifying a set of function calls of a recorded animation frame.
+snapshotsList.itemLabel=Rasm #%S
+
+# LOCALIZATION NOTE (snapshotsList.loadingLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# for an item that has not finished loading.
+snapshotsList.loadingLabel=Yuklanmoqda...
+
+# LOCALIZATION NOTE (snapshotsList.saveLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# for saving an item to disk.
+snapshotsList.saveLabel=Saqlash
+
+# LOCALIZATION NOTE (snapshotsList.savingLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# while saving an item to disk.
+snapshotsList.savingLabel=Saqlanmoqdaâ¦
+
+# LOCALIZATION NOTE (snapshotsList.loadedLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# for an item which was loaded from disk
+snapshotsList.loadedLabel=Diskdan yuklangan
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogTitle):
+# This string is displayed as a title for saving a snapshot to disk.
+snapshotsList.saveDialogTitle=Animatsiya kadr rasmini saqlashâ¦
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogJSONFilter):
+# This string is displayed as a filter for saving a snapshot to disk.
+snapshotsList.saveDialogJSONFilter=JSON fayllar
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogAllFilter):
+# This string is displayed as a filter for saving a snapshot to disk.
+snapshotsList.saveDialogAllFilter=Barcha fayllar
+
+# LOCALIZATION NOTE (snapshotsList.drawCallsLabel):
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# as a generic description about how many draw calls were made.
+snapshotsList.drawCallsLabel=#1 draw;#1 draws
+
+# LOCALIZATION NOTE (snapshotsList.functionCallsLabel):
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# as a generic description about how many function calls were made in total.
+snapshotsList.functionCallsLabel=#1 qoângâiroq;#1 qoângâiroq
+
+# LOCALIZATION NOTE (recordingTimeoutFailure):
+# This notification alert is displayed when attempting to record a requestAnimationFrame
+# cycle in the Canvas Debugger and no cycles detected. This alerts the user that no
+# loops were found.
+recordingTimeoutFailure="Canvas Debugger" requestAnimationFrame yoki setTimeout halqasini topa olmadi.
diff --git a/devtools/client/components.properties b/devtools/client/components.properties
new file mode 100644
index 00000000000..818acc603e3
--- /dev/null
+++ b/devtools/client/components.properties
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the shared React components,
+# so files in `devtools/client/shared/components/*`.
+
+# LOCALIZATION NOTE (frame.unknownSource): When we do not know the source filename of
+# a frame, we use this string instead.
+frame.unknownSource=(nomaʼlum)
+
+# LOCALIZATION NOTE (viewsourceindebugger): The label for the tooltip when hovering over
+# a source link that links to the debugger.
+# %S represents the URL to match in the debugger.
+frame.viewsourceindebugger=Tuzatgichda manbani koârish â %S
+
+# LOCALIZATION NOTE (notificationBox.closeTooltip): The content of a tooltip that
+# appears when hovering over the close button in a notification box.
diff --git a/devtools/client/connection-screen.dtd b/devtools/client/connection-screen.dtd
new file mode 100644
index 00000000000..b8493089ac4
--- /dev/null
+++ b/devtools/client/connection-screen.dtd
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/devtools/client/connection-screen.properties b/devtools/client/connection-screen.properties
new file mode 100644
index 00000000000..08139e2c0d6
--- /dev/null
+++ b/devtools/client/connection-screen.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the Remote Connection strings.
+# The Remote Connection window can reached from the "connectâ¦" menuitem
+# in the Web Developer menu.
+
+mainProcess=Asosiy jarayon
diff --git a/devtools/client/debugger.properties b/devtools/client/debugger.properties
new file mode 100644
index 00000000000..f52c6f1ed39
--- /dev/null
+++ b/devtools/client/debugger.properties
@@ -0,0 +1,574 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Debugger
+# which is available from the Web Developer sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (collapsePanes): This is the tooltip for the button
+# that collapses the left and right panes in the debugger UI.
+collapsePanes=Panellarni yigâish
+
+# LOCALIZATION NOTE (copySourceUrl): This is the text that appears in the
+# context menu to copy the source URL of file open.
+
+# LOCALIZATION NOTE (copySourceUrl.accesskey): Access key to copy the source URL of a file from
+# the context menu.
+
+# LOCALIZATION NOTE (copyStackTrace): This is the text that appears in the
+# context menu to copy the stack trace methods, file names and row number.
+
+# LOCALIZATION NOTE (copyStackTrace.accesskey): Access key to copy the stack trace data from
+# the context menu.
+
+# LOCALIZATION NOTE (expandPanes): This is the tooltip for the button
+# that expands the left and right panes in the debugger UI.
+expandPanes=Panellarni yoyish
+
+# LOCALIZATION NOTE (pauseButtonTooltip): The tooltip that is displayed for the pause
+# button when the debugger is in a running state.
+
+# LOCALIZATION NOTE (pausePendingButtonTooltip): The tooltip that is displayed for
+# the pause button after it's been clicked but before the next JavaScript to run.
+pausePendingButtonTooltip=Keyingi bajarish kutilmoqda
+
+# LOCALIZATION NOTE (resumeButtonTooltip): The label that is displayed on the pause
+# button when the debugger is in a paused state.
+
+# LOCALIZATION NOTE (stepOverTooltip): The label that is displayed on the
+# button that steps over a function call.
+
+# LOCALIZATION NOTE (stepInTooltip): The label that is displayed on the
+# button that steps into a function call.
+
+# LOCALIZATION NOTE (stepOutTooltip): The label that is displayed on the
+# button that steps out of a function call.
+
+# LOCALIZATION NOTE (noWorkersText): The text to display in the workers list
+# when there are no workers.
+noWorkersText=Bu sahifada workers yoâq.
+
+# LOCALIZATION NOTE (noSourcesText): The text to display in the sources list
+# when there are no sources.
+noSourcesText=Ushbu sahifada manbalar yoâq.
+
+# LOCALIZATION NOTE (noEventListenersText): The text to display in the events tab
+# when there are no events.
+noEventListenersText=Hodisalarni tinglovchilar yoâq
+
+# LOCALIZATION NOTE (eventListenersHeader): The text to display in the events
+# header.
+
+# LOCALIZATION NOTE (noStackFramesText): The text to display in the call stack tab
+# when there are no stack frames.
+noStackFramesText=Koârsatish uchun kadrlar yigâindisi yoâq
+
+# LOCALIZATION NOTE (eventCheckboxTooltip): The tooltip text to display when
+# the user hovers over the checkbox used to toggle an event breakpoint.
+eventCheckboxTooltip=Ushbu hodisani toâxtatishni yoqish
+
+# LOCALIZATION NOTE (eventOnSelector): The text to display in the events tab
+# for every event item, between the event type and event selector.
+eventOnSelector=da
+
+# LOCALIZATION NOTE (eventInSource): The text to display in the events tab
+# for every event item, between the event selector and listener's owner source.
+eventInSource=da
+
+# LOCALIZATION NOTE (eventNodes): The text to display in the events tab when
+# an event is listened on more than one target node.
+eventNodes=%S tugunlar
+
+# LOCALIZATION NOTE (eventNative): The text to display in the events tab when
+# a listener is added from plugins, thus getting translated to native code.
+eventNative=[oâz kodi]
+
+# LOCALIZATION NOTE (*Events): The text to display in the events tab for
+# each group of sub-level event entries.
+animationEvents=Animatsiya
+audioEvents=Audio
+batteryEvents=Batareya
+clipboardEvents=Klipbord
+compositionEvents=Kompozitsiya
+deviceEvents=Qurilma
+displayEvents=Koârsatish
+dragAndDropEvents=Sudrab kelib tashlash
+gamepadEvents=Geympad
+indexedDBEvents=IndexedDB
+interactionEvents=Hamkorlik
+keyboardEvents=Klaviatura
+mediaEvents=HTML5 media
+mouseEvents=Sichqoncha
+mutationEvents=Mutatsiya
+navigationEvents=Navigatsiya
+pointerLockEvents=Koârsatkichni qulflash
+sensorEvents=Sensor
+storageEvents=Ombor
+timeEvents=Vaqt
+touchEvents=Teginish
+otherEvents=Boshqa
+
+# LOCALIZATION NOTE (blackboxCheckboxTooltip2): The tooltip text to display when
+# the user hovers over the checkbox used to toggle blackboxing its associated
+# source.
+
+# LOCALIZATION NOTE (sources.search.key2): Key shortcut to open the search for
+# searching all the source files the debugger has seen.
+
+# LOCALIZATION NOTE (sources.search.alt.key): A second key shortcut to open the
+# search for searching all the source files the debugger has seen.
+
+# LOCALIZATION NOTE (projectTextSearch.key): A key shortcut to open the
+# full project text search for searching all the files the debugger has seen.
+
+# LOCALIZATION NOTE (sources.noSourcesAvailable): Text shown when the debugger
+# does not have any sources.
+
+# LOCALIZATION NOTE (sourcesPane.showSourcesTooltip): The tooltip shown when
+# the user will navigate to the source tree view.
+
+# LOCALIZATION NOTE (sourcesPane.showOutlineTooltip): The tooltip shown when
+# the user will navigate to the source outline view.
+
+# LOCALIZATION NOTE (sourceSearch.search.key2): Key shortcut to open the search
+# for searching within a the currently opened files in the editor
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder): placeholder text in
+# the source search input bar
+
+# LOCALIZATION NOTE (sourceSearch.search.again.key2): Key shortcut to highlight
+# the next occurrence of the last search triggered from a source search
+
+# LOCALIZATION NOTE (sourceSearch.search.againPrev.key2): Key shortcut to highlight
+# the previous occurrence of the last search triggered from a source search
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary1): Shows a summary of
+# the number of matches for autocomplete
+
+# LOCALIZATION NOTE (noMatchingStringsText): The text to display in the
+# global search results when there are no matching strings after filtering.
+noMatchingStringsText=Mos keladigan hech narsa topilmadi
+
+# LOCALIZATION NOTE (emptySearchText): This is the text that appears in the
+# filter text box when it is empty and the scripts container is selected.
+emptySearchText=Skriptlarni izlash (%S)
+
+# LOCALIZATION NOTE (emptyVariablesFilterText): This is the text that
+# appears in the filter text box for the variables view container.
+emptyVariablesFilterText=Oâzgaruvchan qiymatlar filteri
+
+# LOCALIZATION NOTE (emptyPropertiesFilterText): This is the text that
+# appears in the filter text box for the editor's variables view bubble.
+emptyPropertiesFilterText=Printer xossalari
+
+# LOCALIZATION NOTE (searchPanelFilter): This is the text that appears in the
+# filter panel popup for the filter scripts operation.
+searchPanelFilter=Skriptlar filteri (%S)
+
+# LOCALIZATION NOTE (searchPanelGlobal): This is the text that appears in the
+# filter panel popup for the global search operation.
+searchPanelGlobal=Barcha fayllar ichidan izlash (%S)
+
+# LOCALIZATION NOTE (searchPanelFunction): This is the text that appears in the
+# filter panel popup for the function search operation.
+searchPanelFunction=Funksiyalarni aniqlashni izlash (%S)
+
+# LOCALIZATION NOTE (searchPanelToken): This is the text that appears in the
+# filter panel popup for the token search operation.
+searchPanelToken=Ushbu sahifadan topish (%S)
+
+# LOCALIZATION NOTE (searchPanelGoToLine): This is the text that appears in the
+# filter panel popup for the line search operation.
+searchPanelGoToLine=Qatorga oâtish (%S)
+
+# LOCALIZATION NOTE (searchPanelVariable): This is the text that appears in the
+# filter panel popup for the variables search operation.
+searchPanelVariable=Oâzgaruvchan qiymatlar filteri (%S)
+
+# LOCALIZATION NOTE (breakpointMenuItem): The text for all the elements that
+# are displayed in the breakpoints menu item popup.
+breakpointMenuItem.setConditional=Muhit toâxtash nuqtasini moslash
+breakpointMenuItem.enableSelf=Toâxtash nuqtasini yoqib qoâyish
+breakpointMenuItem.disableSelf=Toâxtash nuqtasini oâchirib qoâyish
+breakpointMenuItem.deleteSelf=Toâxtash nuqtasini olib tashlash
+breakpointMenuItem.enableOthers=Boshqalarini yoqish
+breakpointMenuItem.disableOthers=Boshqalarini oâchirish
+breakpointMenuItem.deleteOthers=Boshqalarini oâchirish
+breakpointMenuItem.enableAll=Barcha toâxtash nuqtalarini olib tashlash
+breakpointMenuItem.disableAll=Barcha toâxtash nuqtalarini olib tashlash
+breakpointMenuItem.deleteAll=Barcha toâxtash nuqtalarini olib tashlash
+
+# LOCALIZATION NOTE (breakpoints.header): Breakpoints right sidebar pane header.
+
+# LOCALIZATION NOTE (breakpoints.none): The text that appears when there are
+# no breakpoints present
+
+# LOCALIZATION NOTE (breakpoints.enable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+
+# LOCALIZATION NOTE (breakpoints.disable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+
+# LOCALIZATION NOTE (breakpoints.removeBreakpointTooltip): The tooltip that is displayed
+# for remove breakpoint button in right sidebar
+
+# LOCALIZATION NOTE (callStack.header): Call Stack right sidebar pane header.
+
+# LOCALIZATION NOTE (callStack.notPaused): Call Stack right sidebar pane
+# message when not paused.
+
+# LOCALIZATION NOTE (callStack.collapse): Call Stack right sidebar pane
+# message to hide some of the frames that are shown.
+
+# LOCALIZATION NOTE (callStack.expand): Call Stack right sidebar pane
+# message to show more of the frames.
+
+# LOCALIZATION NOTE (editor.searchResults): Editor Search bar message
+# for the summarizing the selected search result. e.g. 5 of 10 results.
+
+# LOCALIZATION NOTE (sourceSearch.singleResult): Copy shown when there is one result.
+
+# LOCALIZATION NOTE (editor.noResults): Editor Search bar message
+# for when no results found.
+
+# LOCALIZATION NOTE (editor.searchResults.nextResult): Editor Search bar
+# tooltip for traversing to the Next Result
+
+# LOCALIZATION NOTE (editor.searchResults.prevResult): Editor Search bar
+# tooltip for traversing to the Previous Result
+
+# LOCALIZATION NOTE (editor.searchTypeToggleTitle): Search bar title for
+# toggling search type buttons(function search, variable search)
+
+# LOCALIZATION NOTE (editor.addBreakpoint): Editor gutter context menu item
+# for adding a breakpoint on a line.
+
+# LOCALIZATION NOTE (editor.disableBreakpoint): Editor gutter context menu item
+# for disabling a breakpoint on a line.
+
+# LOCALIZATION NOTE (editor.enableBreakpoint): Editor gutter context menu item
+# for enabling a breakpoint on a line.
+
+# LOCALIZATION NOTE (editor.removeBreakpoint): Editor gutter context menu item
+# for removing a breakpoint on a line.
+
+# LOCALIZATION NOTE (editor.editBreakpoint): Editor gutter context menu item
+# for setting a breakpoint condition on a line.
+
+# LOCALIZATION NOTE (editor.addConditionalBreakpoint): Editor gutter context
+# menu item for adding a breakpoint condition on a line.
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder): Placeholder text for
+# input element inside ConditionalPanel component
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder): Tooltip text for
+# close button inside ConditionalPanel component
+
+# LOCALIZATION NOTE (editor.jumpToMappedLocation1): Context menu item
+# for navigating to a source mapped location
+
+# LOCALIZATION NOTE (framework.disableGrouping): This is the text that appears in the
+# context menu to disable framework grouping.
+
+# LOCALIZATION NOTE (framework.disableGrouping.accesskey): Access key to toggle
+# framework grouping from the context menu.
+
+# LOCALIZATION NOTE (framework.enableGrouping): This is the text that appears in the
+# context menu to enable framework grouping.
+
+# LOCALIZATION NOTE (framework.enableGrouping.accesskey): Access key to toggle
+# framework grouping from the context menu.
+
+# LOCALIZATION NOTE (generated): Source Map term for a server source location
+
+# LOCALIZATION NOTE (original): Source Map term for a debugger UI source location
+
+# LOCALIZATION NOTE (expressions.placeholder): Placeholder text for expression
+# input element
+
+# LOCALIZATION NOTE (sourceTabs.closeTab): Editor source tab context menu item
+# for closing the selected tab below the mouse.
+
+# LOCALIZATION NOTE (sourceTabs.closeTab.accesskey): Access key to close the currently select
+# source tab from the editor context menu item.
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs): Editor source tab context menu item
+# for closing the other tabs.
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs.accesskey): Access key to close other source tabs
+# from the editor context menu.
+
+# LOCALIZATION NOTE (sourceTabs.closeTabsToEnd): Editor source tab context menu item
+# for closing the tabs to the end (the right for LTR languages) of the selected tab.
+
+# LOCALIZATION NOTE (sourceTabs.closeTabsToEnd.accesskey): Access key to close source tabs
+# after the selected tab from the editor context menu.
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs): Editor source tab context menu item
+# for closing all tabs.
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs.accesskey): Access key to close all tabs from the
+# editor context menu.
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree): Editor source tab context menu item
+# for revealing source in tree.
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree.accesskey): Access key to reveal a source in the
+# tree from the context menu.
+
+# LOCALIZATION NOTE (sourceTabs.copyLink): Editor source tab context menu item
+# for copying a link address.
+
+# LOCALIZATION NOTE (sourceTabs.copyLink.accesskey): Access key to copy a link addresss from the
+# editor context menu.
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint): Editor source tab context menu item
+# for pretty printing the source.
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint.accesskey): Access key to pretty print a source from
+# the editor context menu.
+
+# LOCALIZATION NOTE (sourceFooter.blackbox): Tooltip text associated
+# with the blackbox button
+
+# LOCALIZATION NOTE (sourceFooter.unblackbox): Tooltip text associated
+# with the blackbox button
+
+# LOCALIZATION NOTE (sourceFooter.unblackbox.accesskey): Access key to blackbox
+# an associated source
+
+# LOCALIZATION NOTE (sourceFooter.blackbox.accesskey): Access key to blackbox
+# an associated source
+
+# LOCALIZATION NOTE (sourceFooter.blackboxed): Text associated
+# with a blackboxed source
+
+# LOCALIZATION NOTE (sourceTabs.closeTabButtonTooltip): The tooltip that is displayed
+# for close tab button in source tabs.
+
+# LOCALIZATION NOTE (sourceTabs.newTabButtonTooltip): The tooltip that is displayed for
+# new tab button in source tabs.
+
+# LOCALIZATION NOTE (scopes.header): Scopes right sidebar pane header.
+
+# LOCALIZATION NOTE (scopes.notAvailable): Scopes right sidebar pane message
+# for when the debugger is paused, but there isn't pause data.
+
+# LOCALIZATION NOTE (scopes.notPaused): Scopes right sidebar pane message
+# for when the debugger is not paused.
+
+# LOCALIZATION NOTE (scopes.block): Refers to a block of code in
+# the scopes pane when the debugger is paused.
+
+# LOCALIZATION NOTE (sources.header): Sources left sidebar header
+
+# LOCALIZATION NOTE (sources.search): Sources left sidebar prompt
+# e.g. Cmd+P to search. On a mac, we use the command unicode character.
+# On windows, it's ctrl.
+
+# LOCALIZATION NOTE (watchExpressions.header): Watch Expressions right sidebar
+# pane header.
+
+# LOCALIZATION NOTE (watchExpressions.refreshButton): Watch Expressions header
+# button for refreshing the expressions.
+
+# LOCALIZATION NOTE (welcome.search): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+
+# LOCALIZATION NOTE (sourceSearch.search): The center pane Source Search
+# prompt for searching for files.
+
+# LOCALIZATION NOTE (sourceSearch.noResults): The center pane Source Search
+# message when the query did not match any of the sources.
+
+# LOCALIZATION NOTE (ignoreExceptions): The pause on exceptions button tooltip
+# when the debugger will not pause on exceptions.
+
+# LOCALIZATION NOTE (pauseOnUncaughtExceptions): The pause on exceptions button
+# tooltip when the debugger will pause on uncaught exceptions.
+
+# LOCALIZATION NOTE (pauseOnExceptions): The pause on exceptions button tooltip
+# when the debugger will pause on all exceptions.
+
+# LOCALIZATION NOTE (loadingText): The text that is displayed in the script
+# editor when the loading process has started but there is no file to display
+# yet.
+loadingText=Yuklanmoqda...
+
+# LOCALIZATION NOTE (errorLoadingText2): The text that is displayed in the debugger
+# viewer when there is an error loading a file
+errorLoadingText2=Ushbu URL manzilni yuklashda xatolik: %S
+
+# LOCALIZATION NOTE (addWatchExpressionText): The text that is displayed in the
+# watch expressions list to add a new item.
+addWatchExpressionText=Kuzatish ifodasini qoâshish
+
+# LOCALIZATION NOTE (addWatchExpressionButton): The button that is displayed in the
+# variables view popup.
+addWatchExpressionButton=Kuzatish
+
+# LOCALIZATION NOTE (emptyVariablesText): The text that is displayed in the
+# variables pane when there are no variables to display.
+emptyVariablesText=Koârsatish uchun oâzgaruvchan qiymat
+
+# LOCALIZATION NOTE (scopeLabel): The text that is displayed in the variables
+# pane as a header for each variable scope (e.g. "Global scope, "With scope",
+# etc.).
+scopeLabel=%S harakat hududi
+
+# LOCALIZATION NOTE (watchExpressionsScopeLabel): The name of the watch
+# expressions scope. This text is displayed in the variables pane as a header for
+# the watch expressions scope.
+watchExpressionsScopeLabel=Kuzatish uchun ifoda
+
+# LOCALIZATION NOTE (globalScopeLabel): The name of the global scope. This text
+# is added to scopeLabel and displayed in the variables pane as a header for
+# the global scope.
+globalScopeLabel=Global
+
+# LOCALIZATION NOTE (variablesViewErrorStacktrace): This is the text that is
+# shown before the stack trace in an error.
+variablesViewErrorStacktrace=Stek-treys:
+
+# LOCALIZATION NOTE (variablesViewMoreObjects): the text that is displayed
+# when you have an object preview that does not show all of the elements. At the end of the list
+# you see "N more..." in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of remaining items in the object
+# example: 3 moreâ¦
+variablesViewMoreObjects=#1 ta koâproqâ¦;#1 ta koâproqâ¦
+
+# LOCALIZATION NOTE (variablesEditableNameTooltip): The text that is displayed
+# in the variables list on an item with an editable name.
+variablesEditableNameTooltip=Tahrirlash uchun ikki marta bosing
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in the variables list on an item with an editable value.
+variablesEditableValueTooltip=Qiymatni oâzgartirish uchun bosing
+
+# LOCALIZATION NOTE (variablesCloseButtonTooltip): The text that is displayed
+# in the variables list on an item which can be removed.
+variablesCloseButtonTooltip=Oâchirish uchun bosing
+
+# LOCALIZATION NOTE (variablesEditButtonTooltip): The text that is displayed
+# in the variables list on a getter or setter which can be edited.
+variablesEditButtonTooltip=Qiymatni oârnatish uchun bosing
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in a tooltip on the "open in inspector" button in the the variables list for a
+# DOMNode item.
+variablesDomNodeValueTooltip=Nazorat qilgichdagi tugunlarni tanlash uchun bosing
+
+# LOCALIZATION NOTE (configurable|...|Tooltip): The text that is displayed
+# in the variables list on certain variables or properties as tooltips.
+# Expanations of what these represent can be found at the following links:
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
+# It's probably best to keep these in English.
+configurableTooltip=configurable
+enumerableTooltip=enumerable
+writableTooltip=writable
+frozenTooltip=frozen
+sealedTooltip=sealed
+extensibleTooltip=extensible
+overriddenTooltip=overridden
+WebIDLTooltip=WebIDL
+
+# LOCALIZATION NOTE (variablesSeparatorLabel): The text that is displayed
+# in the variables list as a separator between the name and value.
+variablesSeparatorLabel=:
+
+# LOCALIZATION NOTE (watchExpressionsSeparatorLabel2): The text that is displayed
+# in the watch expressions list as a separator between the code and evaluation.
+watchExpressionsSeparatorLabel2=\u00A0â
+
+# LOCALIZATION NOTE (functionSearchSeparatorLabel): The text that is displayed
+# in the functions search panel as a separator between function's inferred name
+# and its real name (if available).
+functionSearchSeparatorLabel=â
+
+# LOCALIZATION NOTE(symbolSearch.search.functionsPlaceholder): The placeholder
+# text displayed when the user searches for functions in a file
+
+# LOCALIZATION NOTE(symbolSearch.search.variablesPlaceholder): The placeholder
+# text displayed when the user searches for variables in a file
+
+# LOCALIZATION NOTE(symbolSearch.search.key2): The Key Shortcut for
+# searching for a function or variable
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.regex): A search option
+# when searching text in a file
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.caseSensitive): A search option
+# when searching text in a file
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.wholeWord): A search option
+# when searching text in a file
+
+# LOCALIZATION NOTE (resumptionOrderPanelTitle): This is the text that appears
+# as a description in the notification panel popup, when multiple debuggers are
+# open in separate tabs and the user tries to resume them in the wrong order.
+# The substitution parameter is the URL of the last paused window that must be
+# resumed first.
+resumptionOrderPanelTitle=Bir yoki bir nechta toâxtatilgan tuzatgichlar bor. Avval eng soânggi toâxtatilgan tuzatgichlarni davom ettiring: %S
+
+variablesViewOptimizedOut=(optimallashtirilganligini ifodalaydi)
+variablesViewUninitialized=(Ishga tushirib boâlmaydigan)
+variablesViewMissingArgs=(mavjud emas)
+
+anonymousSourcesLabel=Anonim manba
+
+experimental=Bu sinovdagi xususiyat
+
+# LOCALIZATION NOTE (whyPaused.debuggerStatement): The text that is displayed
+# in a info block explaining how the debugger is currently paused due to a `debugger`
+# statement in the code
+
+# LOCALIZATION NOTE (whyPaused.breakpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a breakpoint
+
+# LOCALIZATION NOTE (whyPaused.exception): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an exception
+
+# LOCALIZATION NOTE (whyPaused.resumeLimit): The text that is displayed
+# in a info block explaining how the debugger is currently paused while stepping
+# in or out of the stack
+
+# LOCALIZATION NOTE (whyPaused.pauseOnDOMEvents): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# dom event
+
+# LOCALIZATION NOTE (whyPaused.breakpointConditionThrown): The text that is displayed
+# in an info block when evaluating a conditional breakpoint throws an error
+
+# LOCALIZATION NOTE (whyPaused.xhr): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an
+# xml http request
+
+# LOCALIZATION NOTE (whyPaused.promiseRejection): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# promise rejection
+
+# LOCALIZATION NOTE (whyPaused.assert): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an
+# assert
+
+# LOCALIZATION NOTE (whyPaused.debugCommand): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# debugger statement
+
+# LOCALIZATION NOTE (whyPaused.other): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an event
+# listener breakpoint set
+
+# LOCALIZATION NOTE (ctrl): The text that is used for documenting
+# keyboard shortcuts that use the control key
diff --git a/devtools/client/device.properties b/devtools/client/device.properties
new file mode 100644
index 00000000000..e73478dc990
--- /dev/null
+++ b/devtools/client/device.properties
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside Device Emulation developer
+# tools. The correct localization of this file might be to keep it in English,
+# or another language commonly spoken among web developers. You want to make
+# that choice consistent across the developer tools. A good criteria is the
+# language in which you'd find the best documentation on web development on the
+# web.
+
+# LOCALIZATION NOTE:
+# These strings are category names in a list of devices that a user can choose
+# to simulate (e.g. "ZTE Open C", "VIA Vixen", "720p HD Television", etc).
+device.phones=Telefonlar
+device.tablets=Planshetlar
+device.laptops=Noutbuklar
+device.televisions=Televizorlar
+device.consoles=Oâyin terminallari
+device.watches=Soatlar
diff --git a/devtools/client/dom.properties b/devtools/client/dom.properties
new file mode 100644
index 00000000000..fdb0ddc6936
--- /dev/null
+++ b/devtools/client/dom.properties
@@ -0,0 +1,19 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Web Developer sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (dom.filterDOMPanel): A placeholder text used for
+# DOM panel search box.
+dom.filterDOMPanel=DOM panelini filterlash
+
+# LOCALIZATION NOTE (dom.refresh): A label for Refresh button in
+# DOM panel toolbar
+dom.refresh=Yangilash
diff --git a/devtools/client/filterwidget.properties b/devtools/client/filterwidget.properties
new file mode 100644
index 00000000000..18460d812c8
--- /dev/null
+++ b/devtools/client/filterwidget.properties
@@ -0,0 +1,59 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the CSS Filter Editor Widget
+# which can be found in a tooltip that appears in the Rule View when clicking
+# on a filter swatch displayed next to CSS declarations like 'filter: blur(2px)'.
+
+# LOCALIZATION NOTE (emptyFilterList):
+# This string is displayed when filter's list is empty
+# (no filter specified / all removed)
+emptyFilterList=Filter koârsatilmagan
+
+# LOCALIZATION NOTE (emptyPresetList):
+# This string is displayed when preset's list is empty
+emptyPresetList=Siz birorta ham tayyor sozlamalarni saqlamagansiz. Siz filter tayyor sozlamalarining nomini tanlab, soângra ularni saqlab joylashtirishingiz mumkin. Tayyor sozlamalardan tezkor foydalanish mumkin va ulardan qayta foydalanish oson boâladi.
+
+# LOCALIZATION NOTE (addUsingList):
+# This string is displayed under [emptyFilterList] when filter's
+# list is empty, guiding user to add a filter using the list below it
+addUsingList=Quyidagi roâyxatdan foydalanib, filter qoâshing
+
+# LOCALIZATION NOTE (dropShadowPlaceholder):
+# This string is used as a placeholder for drop-shadow's input
+# in the filter list (shown when is empty)
+dropShadowPlaceholder=z y radius rangi
+
+# LOCALIZATION NOTE (dragHandleTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# drag handles of filters which are used to re-order filters
+dragHandleTooltipText=Filterni qayta tartiblash uchun uni sudrang yok itashlang
+
+# LOCALIZATION NOTE (labelDragTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# filters' labels which can be dragged left/right to increase/decrease
+# the filter's value (like photoshop)
+labelDragTooltipText=Qiymatni kattaalshtirish yoki kichiklashtirish uchun chapga yoki oângga buringl
+
+# LOCALIZATION NOTE (filterListSelectPlaceholder):
+# This string is used as a preview option in the list of possible filters
+#