">
+
+
+&brandShortName; prevented this page from loading in this way because the page has a content security policy that disallows it.">
+
+
+पà¥à¤·à¥à¤ à¤à¤¿à¤¸à¥ à¤à¤ª दà¥à¤à¤¨à¥ à¤à¥ à¤à¥à¤¶à¤¿à¤¶ à¤à¤° रहॠहà¥à¤ नहà¥à¤ दिà¤à¤¾à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हॠà¤à¥à¤¯à¥à¤à¤à¤¿ à¤à¤à¤à¤¡à¤¼à¤¾ सà¤à¤à¤¾à¤°à¤£ मà¥à¤ तà¥à¤°à¥à¤à¤¿ पाया à¤à¤¯à¤¾.
">
+
+
+
+
+
+
+
+
diff --git a/browser/chrome/overrides/settingsChange.dtd b/browser/chrome/overrides/settingsChange.dtd
new file mode 100644
index 00000000000..df8aa7f6a8e
--- /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..86d60278021
--- /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 मà¥à¤ समसà¥à¤¯à¤¾ थॠà¤à¤° à¤à¥à¤°à¥à¤¶ à¤à¤° à¤à¤¯à¤¾. हम à¤à¤ªà¤à¥ à¤à¥à¤¬ à¤à¤° विà¤à¤¡à¥ à¤à¥ वापस à¤à¤°à¤¨à¥ à¤à¥ à¤à¥à¤¶à¤¿à¤¶ à¤à¤°à¥à¤à¤à¥ à¤à¤¬ यह फिर à¤à¤°à¤à¤ हà¥à¤¤à¤¾ हà¥.\n\nदà¥à¤°à¥à¤à¤¾à¤à¥à¤¯ सॠà¤à¥à¤°à¥à¤¶ रिपà¥à¤°à¥à¤à¤° à¤à¤¿à¤¸à¥ à¤à¥à¤°à¥à¤¶ रिपà¥à¤°à¥à¤ à¤à¥ सà¥à¤ªà¥à¤°à¥à¤¦ à¤à¤°à¤¨à¥ मà¥à¤ ठसमरà¥à¤¥ था.\n\nविवरण: %s
+CrashReporterDescriptionText2=Firefox मà¥à¤ समसà¥à¤¯à¤¾ थॠà¤à¤° à¤à¥à¤°à¥à¤¶ à¤à¤° à¤à¤¯à¤¾. हम à¤à¤ªà¤à¥ à¤à¥à¤¬ à¤à¤° विà¤à¤¡à¥ à¤à¥ वापस à¤à¤°à¤¨à¥ à¤à¥ à¤à¥à¤¶à¤¿à¤¶ à¤à¤°à¥à¤à¤à¥ à¤à¤¬ यह à¤à¤°à¤à¤ हà¥à¤¤à¤¾ हà¥.\n\nसमसà¥à¤¯à¤¾ पता à¤à¤°à¤¨à¥ व फिà¤à¥à¤¸ à¤à¤°à¤¨à¥ à¤à¥ लिà¤, à¤à¤ª à¤à¤ à¤à¥à¤°à¥à¤¶ रिपà¥à¤°à¥à¤ à¤à¥à¤ सà¤à¤¤à¥ हà¥à¤.
diff --git a/browser/defines.inc b/browser/defines.inc
new file mode 100644
index 00000000000..32c8b2abee1
--- /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 Rajesh RanjanVaibhav Agarwal
+
+#unfilter emptyLines
diff --git a/browser/extensions/formautofill/formautofill.properties b/browser/extensions/formautofill/formautofill.properties
new file mode 100644
index 00000000000..6d75aeae93f
--- /dev/null
+++ b/browser/extensions/formautofill/formautofill.properties
@@ -0,0 +1,182 @@
+# 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 (saveAddressesMessage): %S is brandShortName. This string is used on the doorhanger to
+# notify users that addresses are saved.
+saveAddressesMessage = %S ठब पतॠसहà¥à¤à¤¤à¤¾ हॠताà¤à¤¿ à¤à¤ª पà¥à¤°à¤ªà¤¤à¥à¤° ठधिठतà¥à¤à¤¼à¥ सॠà¤à¤° सà¤à¥à¤.
+# LOCALIZATION NOTE (autofillOptionsLink, autofillOptionsLinkOSX): These strings are used in the doorhanger for
+# updating addresses. The link leads users to Form Autofill browser preferences.
+autofillOptionsLink = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤à¤ à¤à¤°à¤£ विà¤à¤²à¥à¤ª
+autofillOptionsLinkOSX = फ़à¥à¤°à¥à¤® सà¥à¤µà¤¤à¤ à¤à¤°à¤£ वरà¥à¤¯à¤¤à¤¾à¤à¤
+# LOCALIZATION NOTE (autofillSecurityOptionsLink, autofillSecurityOptionsLinkOSX): These strings are used
+# in the doorhanger for saving credit card info. The link leads users to Form Autofill browser preferences.
+autofillSecurityOptionsLink = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤: à¤à¤°à¤£ तथा सà¥à¤°à¤à¥à¤·à¤¾ विà¤à¤²à¥à¤ª
+autofillSecurityOptionsLinkOSX = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤: à¤à¤°à¤£ तथा सà¥à¤°à¤à¥à¤·à¤¾ वरà¥à¤¯à¤¤à¤¾à¤à¤
+# LOCALIZATION NOTE (changeAutofillOptions, changeAutofillOptionsOSX): These strings are used on the doorhanger
+# that notifies users that addresses are saved. The button leads users to Form Autofill browser preferences.
+changeAutofillOptions = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤: à¤à¤°à¤£ विà¤à¤²à¥à¤ªà¥à¤ à¤à¥ बदलà¥à¤
+changeAutofillOptionsOSX = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤: à¤à¤°à¤£ वरियताà¤à¤ à¤à¥ बदलà¥à¤
+changeAutofillOptionsAccessKey = C
+# LOCALIZATION NOTE (addressesSyncCheckbox): If Sync is enabled, this checkbox is displayed on the doorhanger
+# shown when saving addresses.
+addressesSyncCheckbox = सà¤à¤à¤²à¤¿à¤¤ à¤à¤ªà¤à¤°à¤£à¥à¤ à¤à¥ साथ पतॠसाà¤à¤¾ à¤à¤°à¥à¤
+# LOCALIZATION NOTE (creditCardsSyncCheckbox): If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+creditCardsSyncCheckbox = सà¤à¤à¤²à¤¿à¤¤ à¤à¤ªà¤à¤°à¤£à¥à¤ à¤à¥ साथ à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ साà¤à¤¾ à¤à¤°à¥à¤
+# LOCALIZATION NOTE (updateAddressMessage, updateAddressDescriptionLabel, createAddressLabel, updateAddressLabel):
+# Used on the doorhanger when an address change is detected.
+updateAddressMessage = à¤à¥à¤¯à¤¾ à¤à¤ª ठपनॠपतॠà¤à¥ à¤à¤¸ नयॠà¤à¤¾à¤¨à¤à¤¾à¤°à¥ à¤à¥ साथ ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¥à¤à¤à¥?
+updateAddressDescriptionLabel = ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¤¨à¥ हà¥à¤¤à¥ पता:
+createAddressLabel = नया पता बनाà¤à¤
+createAddressAccessKey = C
+updateAddressLabel = पता नवà¥à¤¨à¥à¤à¥à¤¤ à¤à¤°à¥à¤
+updateAddressAccessKey = U
+# LOCALIZATION NOTE (saveCreditCardMessage, saveCreditCardDescriptionLabel, saveCreditCardLabel, cancelCreditCardLabel, neverSaveCreditCardLabel):
+# Used on the doorhanger when users submit payment with credit card.
+# LOCALIZATION NOTE (saveCreditCardMessage): %S is brandShortName.
+saveCreditCardMessage = à¤à¥à¤¯à¤¾ à¤à¤ª %S à¤à¥ यह à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ सहà¥à¤à¤¨à¤¾ à¤à¤¾à¤¹à¥à¤à¤à¥? (सà¥à¤°à¤à¥à¤·à¤¾ à¤à¥à¤¡ नहà¥à¤ सहà¥à¤à¤¾ à¤à¤¾à¤à¤à¤¾)
+saveCreditCardDescriptionLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ à¤à¥ सहà¥à¤à¤¨à¥ हà¥à¤¤à¥:
+saveCreditCardLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ सहà¥à¤à¥à¤
+saveCreditCardAccessKey = S
+cancelCreditCardLabel = मत सहà¥à¤à¥à¤â
+cancelCreditCardAccessKey = D
+neverSaveCreditCardLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ à¤à¤à¥ नहà¥à¤ सहà¥à¤à¥à¤
+neverSaveCreditCardAccessKey = N
+# LOCALIZATION NOTE (updateCreditCardMessage, updateCreditCardDescriptionLabel, createCreditCardLabel, updateCreditCardLabel):
+# Used on the doorhanger when an credit card change is detected.
+updateCreditCardMessage = à¤à¥à¤¯à¤¾ à¤à¤ª à¤à¤¸ नà¤à¤ à¤à¤¾à¤¨à¤à¤¾à¤°à¥ à¤à¥ साथ ठपनॠà¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ à¤à¥ ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¥à¤à¤à¥?
+updateCreditCardDescriptionLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¤¨à¥ हà¥à¤¤à¥:
+createCreditCardLabel = नया à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ बनाà¤à¤
+createCreditCardAccessKey = C
+updateCreditCardLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¥à¤
+updateCreditCardAccessKey = U
+# LOCALIZATION NOTE (openAutofillMessagePanel): Tooltip label for Form Autofill doorhanger icon on address bar.
+openAutofillMessagePanel = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤à¤ à¤à¤°à¤£ सà¤à¤¦à¥à¤¶ पà¤à¥à¤à¤¿à¤à¤¾ à¤à¥à¤²à¥à¤
+
+# LOCALIZATION NOTE ( (autocompleteFooterOptionShort, autocompleteFooterOptionOSXShort): Used as a label for the button,
+# displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOptionShort = ठधिठविà¤à¤²à¥à¤ª
+autocompleteFooterOptionOSXShort = पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾à¤à¤
+# LOCALIZATION NOTE (category.address, category.name, category.organization2, category.tel, category.email):
+# Used in autofill drop down suggestion to indicate what other categories Form Autofill will attempt to fill.
+category.address = पताâ
+category.name = नामâ
+category.organization2 = सà¤à¤¸à¥à¤¥à¤¾
+category.tel = फ़à¥à¤¨
+category.email = à¤-मà¥à¤²
+# LOCALIZATION NOTE (fieldNameSeparator): This is used as a separator between categories.
+fieldNameSeparator = ,\u0020
+# LOCALIZATION NOTE (phishingWarningMessage, phishingWarningMessage2): The warning
+# text that is displayed for informing users what categories are about to be filled.
+# "%S" will be replaced with a list generated from the pre-defined categories.
+# The text would be e.g. Also autofills organization, phone, email.
+phishingWarningMessage = %S à¤à¥ सà¥à¤µà¤¤: à¤à¤°à¤¤à¤¾ हà¥à¤
+phishingWarningMessage2 = %S सà¥à¤µà¤¤: à¤à¤°à¤¤à¤¾ हà¥
+# LOCALIZATION NOTE (insecureFieldWarningDescription): %S is brandShortName. This string is used in drop down
+# suggestion when users try to autofill credit card on an insecure website (without https).
+insecureFieldWarningDescription = %S नॠà¤à¤ ठसà¥à¤°à¤à¥à¤·à¤¿à¤¤ साà¤à¤ à¤à¤¾ पता लà¤à¤¾à¤¯à¤¾ हà¥. पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤: à¤à¤°à¤£ à¤à¥à¤ समय à¤à¥ लिठठà¤à¥à¤·à¤® à¤à¤° दिया à¤à¤¯à¤¾ हà¥
+# LOCALIZATION NOTE (clearFormBtnLabel2): Label for the button in the dropdown menu that used to clear the populated
+# form.
+clearFormBtnLabel2 = सà¥à¤µà¤¤: à¤à¤°à¤£ पà¥à¤°à¤ªà¤¤à¥à¤° मिà¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (autofillDescription): %S is brandShortName.
+# LOCALIZATION NOTE (autofillAddressesCheckbox): Label for the checkbox that enables autofilling addresses.
+autofillAddressesCheckbox = पतॠसà¥à¤µà¤¤: à¤à¤°à¥à¤
+# LOCALIZATION NOTE (learnMoreLabel): Label for the link that leads users to the Form Autofill SUMO page.
+learnMoreLabel = à¤à¤° à¤à¤¾à¤¨à¥à¤
+# LOCALIZATION NOTE (savedAddressesBtnLabel): Label for the button that opens a dialog that shows the
+# list of saved addresses.
+savedAddressesBtnLabel = सहà¥à¤à¥ à¤à¤ पतà¥â¦
+# LOCALIZATION NOTE (autofillCreditCardsCheckbox): Label for the checkbox that enables autofilling credit cards.
+autofillCreditCardsCheckbox = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ सà¥à¤µà¤¤: à¤à¤°à¥à¤
+# LOCALIZATION NOTE (savedCreditCardsBtnLabel): Label for the button that opens a dialog that shows the list
+# of saved credit cards.
+savedCreditCardsBtnLabel = सहà¥à¤à¥ à¤à¤ à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡â¦
+
+# LOCALIZATION NOTE (manageAddressesTitle, manageCreditCardsTitle): The dialog title for the list of addresses or
+# credit cards in browser preferences.
+manageAddressesTitle = सहà¥à¤à¥ à¤à¤ पतà¥
+manageCreditCardsTitle = सहà¥à¤à¥ à¤à¤ à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡
+# LOCALIZATION NOTE (addressesListHeader, creditCardsListHeader): The header for the list of addresses or credit cards
+# in browser preferences.
+addressesListHeader = पतà¥
+creditCardsListHeader = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡
+showCreditCardsBtnLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ दिà¤à¤¾à¤à¤
+hideCreditCardsBtnLabel = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ à¤à¤¿à¤ªà¤¾à¤à¤
+removeBtnLabel = हà¤à¤¾à¤à¤
+addBtnLabel = à¤à¥à¥à¥à¤â¦
+editBtnLabel = सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤â¦
+# LOCALIZATION NOTE (manageDialogsWidth): This strings sets the default width for windows used to manage addresses and
+# credit cards.
+manageDialogsWidth = 560px
+
+# LOCALIZATION NOTE (addNewAddressTitle, editAddressTitle): The dialog title for creating or editing addresses
+# in browser preferences.
+addNewAddressTitle = नया पता à¤à¥à¤¡à¤¼à¥à¤
+editAddressTitle = पता सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+givenName = पà¥à¤°à¤¥à¤® नाम
+additionalName = मधà¥à¤¯ नाम
+familyName = ठà¤à¤¤à¤¿à¤® नाम
+organization2 = सà¤à¤¸à¥à¤¥à¤¾
+streetAddress = à¤à¤²à¥ à¤à¤¾ पता
+
+## address-level-3 (Sublocality) names
+# LOCALIZATION NOTE (neighborhood): Used in IR, MX
+neighborhood = पड़à¥à¤¸
+# LOCALIZATION NOTE (village_township): Used in MY
+village_township = à¤à¤¾à¤à¤µ या à¤à¤ªà¤¨à¤à¤°
+# LOCALIZATION NOTE (townland): Used in IE
+
+## address-level-2 names
+city = शहर
+# LOCALIZATION NOTE (district): Used in HK, SD, SY, TR as Address Level-2
+# and used in KR as Sublocality.
+# LOCALIZATION NOTE (post_town): Used in GB, NO, SE
+# LOCALIZATION NOTE (suburb): Used in AU as Address Level-2
+# and used in ZZ as Sublocality.
+
+# address-level-1 names
+province = पà¥à¤°à¤¾à¤à¤¤
+state = राà¤à¥à¤¯
+# LOCALIZATION NOTE (parish): Used in BB, JM
+# LOCALIZATION NOTE (prefecture): Used in JP
+# LOCALIZATION NOTE (area): Used in HK
+# LOCALIZATION NOTE (do_si): Used in KR
+# LOCALIZATION NOTE (department): Used in NI, CO
+# LOCALIZATION NOTE (emirate): Used in AE
+# LOCALIZATION NOTE (oblast): Used in RU and UA
+
+# LOCALIZATION NOTE (pin, postalCode, zip, eircode): Postal code name types
+# LOCALIZATION NOTE (pin): Used in IN
+pin = पिन
+postalCode = डाठà¤à¥à¤¡
+zip = à¤à¤¼à¤¿à¤ª à¤à¥à¤¡
+# LOCALIZATION NOTE (eircode): Used in IE
+
+country = दà¥à¤¶ या à¤à¥à¤·à¥à¤¤à¥à¤°
+tel = फ़à¥à¤¨
+email = à¤à¤®à¥à¤²
+cancelBtnLabel = रदà¥à¤¦ à¤à¤°à¥à¤
+saveBtnLabel = सहà¥à¤à¥à¤
+countryWarningMessage2 = पà¥à¤°à¤ªà¤¤à¥à¤° सà¥à¤µà¤¤à¤ à¤à¤°à¤¨à¥ à¤à¥ सà¥à¤µà¤¿à¤§à¤¾ फिलहाल à¤à¥à¤µà¤² à¤à¥à¤ दà¥à¤¶à¥à¤ à¤à¥ लिठà¤à¤ªà¤²à¤¬à¥à¤§ हà¥.
+
+# LOCALIZATION NOTE (addNewCreditCardTitle, editCreditCardTitle): The dialog title for creating or editing
+# credit cards in browser preferences.
+addNewCreditCardTitle = नया à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ à¤à¥à¤¡à¤¼à¥
+editCreditCardTitle = à¤à¥à¤°à¥à¤¡à¤¿à¤ à¤à¤¾à¤°à¥à¤¡ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+cardNumber = à¤à¤¾à¤°à¥à¤¡ नà¤à¤¬à¤°
+invalidCardNumber = à¤à¤ वà¥à¤§ à¤à¤¾à¤°à¥à¤¡ नà¤à¤¬à¤° डालà¥à¤
+nameOnCard = à¤à¤¾à¤°à¥à¤¡ पर नाम
+billingAddress = बिल à¤à¥à¤à¤¨à¥ à¤à¤¾ पता
+cardNetwork = à¤à¤¾à¤°à¥à¤¡ पà¥à¤°à¤à¤¾à¤°
+# LOCALIZATION NOTE (cardCVV): Credit card security code https://en.wikipedia.org/wiki/Card_security_code
+
+# LOCALIZATION NOTE: (cardNetwork.*): These are brand names and should only be translated when a locale-specific name for that brand is in common use
+cardNetwork.discover = पता लà¤à¤¾à¤à¤
+cardNetwork.jcb = JCB
+cardNetwork.mastercard = MasterCard
+cardNetwork.mir = MIR
+cardNetwork.visa = Visa
+
+# LOCALIZATION NOTE (editCreditCardPasswordPrompt.*, useCreditCardPasswordPrompt.*): %S is brandShortName.
diff --git a/browser/extensions/fxmonitor/fxmonitor.properties b/browser/extensions/fxmonitor/fxmonitor.properties
new file mode 100644
index 00000000000..2b34a903891
--- /dev/null
+++ b/browser/extensions/fxmonitor/fxmonitor.properties
@@ -0,0 +1,35 @@
+# 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 of the popup
+# Firefox Monitor must be treated as a brand, and kept in English.
+# It cannot be:
+# - Declined to adapt to grammatical case.
+# - Transliterated.
+# - Translated.
+# Tooltip text for the popup's anchor icon in the URL bar
+# %S is replaced with fxmonitor.brandName.
+# Text content of popup. Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This version is only used when the number of accounts is smaller than 100,000.
+# The placeholders are:
+# #1: The exact number of accounts compromised in the breach.
+# #2: The name of the breached site.
+# #3: The year of the breach.
+# #4: The brand name ("Firefox Monitor").
+# Text content of popup. Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This version is only used when the number of accounts is greater than 100,000.
+# The placeholders are:
+# #1: The number of accounts compromised in the breach, rounded down to the
+# most significant digit.
+# Ex.: 234,567 -> More than 200,000 accounts [...]
+# 345,678,901 -> More than 300,000,000 accounts [...]
+# 4,567,890,123 -> More than 4,000,000,000 accounts [...]
+# #2: The name of the breached site.
+# #3: The year of the breach.
+# #4: The brand name ("Firefox Monitor").
+# %S is replaced with fxmonitor.brandName.
+fxmonitor.dismissButton.label=à¤à¤¾à¤°à¤¿à¤
+# %S is replaced with fxmonitor.brandName.
diff --git a/browser/extensions/report-site-issue/webcompat.properties b/browser/extensions/report-site-issue/webcompat.properties
new file mode 100644
index 00000000000..8eac0f0055a
--- /dev/null
+++ b/browser/extensions/report-site-issue/webcompat.properties
@@ -0,0 +1,10 @@
+# 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(wc-reporter.label2): This string will be used in the
+# Firefox page actions menu. Localized length should be considered.
+wc-reporter.label2=साà¤à¤ समसà¥à¤¯à¤¾ à¤à¥ रिपà¥à¤°à¥à¤ à¤à¤°à¥à¤â¦
+# LOCALIZATION NOTE(wc-reporter.tooltip): A site compatibility issue is
+# a website bug that exists in one browser (Firefox), but not another.
+wc-reporter.tooltip=à¤à¤ साà¤à¤ ठनà¥à¤à¥à¤²à¤¤à¤¾ समसà¥à¤¯à¤¾ à¤à¥ रिपà¥à¤°à¥à¤ à¤à¤°à¥à¤
diff --git a/browser/extensions/webcompat-reporter/webcompat.properties b/browser/extensions/webcompat-reporter/webcompat.properties
new file mode 100644
index 00000000000..8eac0f0055a
--- /dev/null
+++ b/browser/extensions/webcompat-reporter/webcompat.properties
@@ -0,0 +1,10 @@
+# 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(wc-reporter.label2): This string will be used in the
+# Firefox page actions menu. Localized length should be considered.
+wc-reporter.label2=साà¤à¤ समसà¥à¤¯à¤¾ à¤à¥ रिपà¥à¤°à¥à¤ à¤à¤°à¥à¤â¦
+# LOCALIZATION NOTE(wc-reporter.tooltip): A site compatibility issue is
+# a website bug that exists in one browser (Firefox), but not another.
+wc-reporter.tooltip=à¤à¤ साà¤à¤ ठनà¥à¤à¥à¤²à¤¤à¤¾ समसà¥à¤¯à¤¾ à¤à¥ रिपà¥à¤°à¥à¤ à¤à¤°à¥à¤
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..ceb67bf64b2
--- /dev/null
+++ b/browser/installer/custom.properties
@@ -0,0 +1,87 @@
+# 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 delivers safe, easy web browsing. A familiar user interface, enhanced security features including protection from online identity theft, and integrated search let you get the most out of the web.
+CONTEXT_OPTIONS=$BrandShortName &Options
+CONTEXT_SAFE_MODE=$BrandShortName &Safe Mode
+OPTIONS_PAGE_TITLE=Setup Type
+OPTIONS_PAGE_SUBTITLE=Choose setup options
+SHORTCUTS_PAGE_TITLE=लà¤à¥ पथ वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¿à¤¤ à¤à¤°à¥à¤\u0020
+SHORTCUTS_PAGE_SUBTITLE=Create Program Icons
+COMPONENTS_PAGE_TITLE=Set Up Optional Components
+COMPONENTS_PAGE_SUBTITLE=Optional Recommended Components
+OPTIONAL_COMPONENTS_DESC=The Maintenance Service will allow you to update $BrandShortName silently in the background.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=Install &Maintenance Service
+SUMMARY_PAGE_TITLE=साराà¤à¤¶
+SUMMARY_PAGE_SUBTITLE=Ready to start installing $BrandShortName
+SUMMARY_INSTALLED_TO=$BrandShortName निमà¥à¤¨ सà¥à¤¥à¤¾à¤¨ पर सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾à¤à¤à¤¾:
+SUMMARY_REBOOT_REQUIRED_INSTALL=A restart of your computer may be required to complete the installation.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=A restart of your computer may be required to complete the uninstall.
+SUMMARY_TAKE_DEFAULTS=U&se $BrandShortName as my default web browser
+SUMMARY_INSTALL_CLICK=Click Install to continue.
+SUMMARY_UPGRADE_CLICK=Click Upgrade to continue.
+SURVEY_TEXT=&Tell us what you thought of $BrandShortName
+LAUNCH_TEXT=&Launch $BrandShortName now
+CREATE_ICONS_DESC=Create icons for $BrandShortName:
+ICONS_DESKTOP=On my &Desktop
+ICONS_STARTMENU=In my &Start Menu Programs folder
+ICONS_QUICKLAUNCH=In my &Quick Launch bar
+WARN_MANUALLY_CLOSE_APP_INSTALL=$BrandShortName must be closed to proceed with the installation.\n\nPlease close $BrandShortName to continue.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=$BrandShortName must be closed to proceed with the uninstall.\n\nPlease close $BrandShortName to continue.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName is already running.\n\nPlease close $BrandShortName prior to launching the version you have just installed.
+WARN_WRITE_ACCESS=You don't have access to write to the installation directory.\n\nClick OK to select a different directory.
+WARN_DISK_SPACE=You don't have sufficient disk space to install to this location.\n\nClick OK to select a different location.
+WARN_MIN_SUPPORTED_OSVER_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedVer} या नवà¥à¤¨à¤¤à¤® à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_MIN_SUPPORTED_CPU_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedCPU} सहयà¥à¤ à¤à¥ साथ à¤à¤ सà¤à¤¸à¤¾à¤§à¤ à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedVer} या नवà¥à¤¨à¤¤à¤® à¤à¤° ${MinSupportedCPU} सहयà¥à¤ à¤à¥ साथ à¤à¤ सà¤à¤¸à¤¾à¤§à¤ à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_RESTART_REQUIRED_UNINSTALL=Your computer must be restarted to complete a previous uninstall of $BrandShortName. Do you want to reboot now?
+WARN_RESTART_REQUIRED_UPGRADE=Your computer must be restarted to complete a previous upgrade of $BrandShortName. Do you want to reboot now?
+ERROR_CREATE_DIRECTORY_PREFIX=Error creating directory:
+ERROR_CREATE_DIRECTORY_SUFFIX=Click Cancel to stop the installation or\nRetry to try again.
+
+UN_CONFIRM_PAGE_TITLE=Uninstall $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=ठपनॠà¤à¤à¤ªà¥à¤¯à¥à¤à¤° सॠ$BrandFullName निà¤à¤¾à¤²à¥à¤.
+UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName will be uninstalled from the following location:
+UN_CONFIRM_CLICK=Click Uninstall to continue.
+
+BANNER_CHECK_EXISTING=Checking existing installationâ¦
+
+STATUS_INSTALL_APP=Installing $BrandShortNameâ¦
+STATUS_INSTALL_LANG=Installing Language Files (${AB_CD})â¦
+STATUS_UNINSTALL_MAIN=Uninstalling $BrandShortNameâ¦
+STATUS_CLEANUP=A Little Housekeepingâ¦
+
+UN_SURVEY_CHECKBOX_LABEL=Mozilla à¤à¥ à¤à¤¾à¤¨à¤à¤¾à¤°à¥ दà¥à¤ à¤à¤¿ à¤à¤ªà¤¨à¥ $BrandShortName ठसà¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¥à¤¯à¥à¤ à¤à¤¿à¤¯à¤¾
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Choose the type of setup you prefer, then click Next.
+# One line
+OPTION_STANDARD_DESC=$BrandShortName will be installed with the most common options.
+OPTION_STANDARD_RADIO=&Standard
+# Two lines
+OPTION_CUSTOM_DESC=You may choose individual options to be installed. Recommended for experienced users.
+OPTION_CUSTOM_RADIO=&Custom
+
+# 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=ठपडà¥à¤
diff --git a/browser/installer/mui.properties b/browser/installer/mui.properties
new file mode 100644
index 00000000000..38236521ec8
--- /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=Welcome to the $BrandFullNameDA Setup Wizard
+MUI_TEXT_WELCOME_INFO_TEXT=This wizard will guide you through the installation of $BrandFullNameDA.\n\nIt is recommended that you close all other applications before starting Setup. This will make it possible to update relevant system files without having to reboot your computer.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=ठवयव à¤à¥à¤¨à¥à¤
+MUI_TEXT_COMPONENTS_SUBTITLE=Choose which features of $BrandFullNameDA you want to install.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Description
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=ठपनॠमाà¤à¤¸ à¤à¥ à¤à¤ ठवयव à¤à¥ à¤à¤ªà¤° à¤à¤¸à¤à¥ वरà¥à¤£à¤¨ à¤à¥ दà¥à¤à¤¨à¥ à¤à¥ लिठवà¥à¤¯à¤µà¤¸à¥à¤¥à¤¿à¤¤ à¤à¤°à¥à¤.
+MUI_TEXT_DIRECTORY_TITLE=Choose Install Location
+MUI_TEXT_DIRECTORY_SUBTITLE=Choose the folder in which to install $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ à¤à¤¾à¤°à¥
+MUI_TEXT_INSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being installed.
+MUI_TEXT_FINISH_TITLE=Installation Complete
+MUI_TEXT_FINISH_SUBTITLE=Setup was completed successfully.
+MUI_TEXT_ABORT_TITLE=Installation Aborted
+MUI_TEXT_ABORT_SUBTITLE=Setup was not completed successfully.
+MUI_BUTTONTEXT_FINISH=&Finish
+MUI_TEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Setup Wizard
+MUI_TEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been installed on your computer.\n\nClick Finish to close this wizard.
+MUI_TEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the installation of $BrandFullNameDA. Do you want to reboot now?
+MUI_TEXT_FINISH_REBOOTNOW=Reboot now
+MUI_TEXT_FINISH_REBOOTLATER=I want to manually reboot later
+MUI_TEXT_STARTMENU_TITLE=Choose Start Menu Folder
+MUI_TEXT_STARTMENU_SUBTITLE=Choose a Start Menu folder for the $BrandFullNameDA shortcuts.
+MUI_INNERTEXT_STARTMENU_TOP=Select the Start Menu folder in which you would like to create the program's shortcuts. You can also enter a name to create a new folder.
+MUI_TEXT_ABORTWARNING=Are you sure you want to quit $BrandFullName Setup?
+MUI_UNTEXT_WELCOME_INFO_TITLE=Welcome to the $BrandFullNameDA Uninstall Wizard
+MUI_UNTEXT_WELCOME_INFO_TEXT=This wizard will guide you through the uninstallation of $BrandFullNameDA.\n\nBefore starting the uninstallation, make sure $BrandFullNameDA is not running.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Uninstall $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=ठपनॠà¤à¤à¤ªà¥à¤¯à¥à¤à¤° सॠ$BrandFullNameDA निà¤à¤¾à¤²à¥à¤.
+MUI_UNTEXT_UNINSTALLING_TITLE=Uninstalling
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being uninstalled.
+MUI_UNTEXT_FINISH_TITLE=Uninstallation Complete
+MUI_UNTEXT_FINISH_SUBTITLE=Uninstall was completed successfully.
+MUI_UNTEXT_ABORT_TITLE=Uninstallation Aborted
+MUI_UNTEXT_ABORT_SUBTITLE=Uninstall was not completed successfully.
+MUI_UNTEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Uninstall Wizard
+MUI_UNTEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been uninstalled from your computer.\n\nClick Finish to close this wizard.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the uninstallation of $BrandFullNameDA. Do you want to reboot now?
+MUI_UNTEXT_ABORTWARNING=à¤à¥à¤¯à¤¾ à¤à¤ª $BrandFullName à¤à¥ ठसà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ सॠबाहर निà¤à¤²à¤¨à¥ à¤à¥ लिठनिशà¥à¤à¤¿à¤¤ हà¥à¤?
diff --git a/browser/installer/nsisstrings.properties b/browser/installer/nsisstrings.properties
new file mode 100644
index 00000000000..ec95f907d0c
--- /dev/null
+++ b/browser/installer/nsisstrings.properties
@@ -0,0 +1,52 @@
+# 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.
+
+INSTALLER_WIN_CAPTION=$BrandShortName सà¥à¤¥à¤¾à¤ªà¤¨à¤à¤°à¥à¤¤à¤¾
+
+# The \n in the next two strings can be moved or deleted as needed to make
+# the string fit in the 3 lines of space available.
+STUB_CLEANUP_PAVEOVER_HEADER=$BrandShortName पहलॠसॠसà¥à¤¥à¤¾à¤ªà¤¨à¤à¤°à¥à¤¤à¤¾ हà¥à¤.\nà¤à¤²à¤¿à¤ à¤à¤¸à¥ ठदà¥à¤¯à¤¤à¤¨ à¤à¤°à¥à¤.
+STUB_CLEANUP_REINSTALL_HEADER=$BrandShortName पहलॠसॠसà¥à¤¥à¤¾à¤ªà¤¿à¤¤ हà¥à¤.\nà¤à¤²à¤¿à¤ à¤à¤ªà¤à¥ नठपà¥à¤°à¤¤à¤¿ दिलाà¤à¤.
+STUB_CLEANUP_PAVEOVER_BUTTON=ठदà¥à¤¯à¤¤à¤¨
+STUB_CLEANUP_REINSTALL_BUTTON=पà¥à¤¨à¤-&सà¥à¤¥à¤¾à¤ªà¤¨
+STUB_CLEANUP_CHECKBOX_LABEL=&à¤à¤·à¥à¤à¤¤à¤® पà¥à¤°à¤¦à¤°à¥à¤¶à¤¨ à¤à¥ लिठमà¥à¤² सà¥à¤à¤¿à¤à¤ पà¥à¤¨à¤°à¥à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¥à¤ à¤à¤° पà¥à¤°à¤¾à¤¨à¥ à¤à¤¡-à¤à¤¨ हà¤à¤¾ दà¥à¤
+
+STUB_INSTALLING_LABEL2=ठब सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ रहा हà¥â¦
+STUB_BLURB_FIRST1=ठब तठà¤à¤¾ सबसॠतà¥à¤à¤¼, सबसॠठनà¥à¤à¥à¤°à¤¿à¤¯à¤¾à¤¶à¥à¤² $BrandShortName
+STUB_BLURB_SECOND1=ठधिठतà¥à¤à¤¼ पà¥à¤·à¥à¤ लà¥à¤¡à¤¿à¤à¤ à¤à¤° à¤à¥à¤¬ सà¥à¤µà¤¿à¤à¤¿à¤à¤
+STUB_BLURB_THIRD1=शà¤à¥à¤¤à¤¿à¤¶à¤¾à¤²à¥ निà¤à¥ बà¥à¤°à¤¾à¤à¤à¤¼à¤¿à¤à¤
+STUB_BLURB_FOOTER2=लà¥à¤à¥à¤ à¤à¥ लिठनिरà¥à¤®à¤¿à¤¤, लाठà¤à¥ लिठनहà¥à¤
+
+WARN_MIN_SUPPORTED_OSVER_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedVer} या नवà¥à¤¨à¤¤à¤® à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_MIN_SUPPORTED_CPU_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedCPU} सहयà¥à¤ à¤à¥ साथ à¤à¤ सà¤à¤¸à¤¾à¤§à¤ à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=à¤à¥à¤·à¤®à¤¾ à¤à¤°à¥à¤, $BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥. $BrandShortName à¤à¥ à¤à¤¸ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ ${MinSupportedVer} या नवà¥à¤¨à¤¤à¤® à¤à¤° ${MinSupportedCPU} सहयà¥à¤ à¤à¥ साथ à¤à¤ सà¤à¤¸à¤¾à¤§à¤ à¤à¥ à¤à¤°à¥à¤°à¤¤ हà¥. ठतिरिà¤à¥à¤¤ सà¥à¤à¤¨à¤¾ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ OK बà¤à¤¨ दबाà¤à¤.
+WARN_WRITE_ACCESS_QUIT=à¤à¤ªà¤à¥ पास सà¥à¤¥à¤¾à¤ªà¤¨à¤¾ डिरà¥à¤à¥à¤à¤°à¥ मà¥à¤ लिà¤à¤¨à¥ à¤à¥ लिठपहà¥à¤à¤ नहà¥à¤ हà¥
+WARN_DISK_SPACE_QUIT=सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¤ªà¤à¥ पास परà¥à¤¯à¤¾à¤ªà¥à¤¤ मà¥à¤®à¥à¤°à¥ नहॠहà¥à¤.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName पहलॠसॠà¤à¤² रहा हà¥.\n\nà¤à¤ªà¤à¥ दà¥à¤µà¤¾à¤°à¤¾ हालिया सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ लà¥à¤¨à¥à¤ हà¥à¤¨à¥ à¤à¥ पहलॠà¤à¥à¤ªà¤¯à¤¾ $BrandShortName बà¤à¤¦ à¤à¤°à¥à¤.
+
+ERROR_DOWNLOAD_CONT=हाà¤. à¤à¤¿à¤¸à¥ à¤à¤¾à¤°à¤£à¤µà¤¶ हम $BrandShortName सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¥.\nपà¥à¤¨à¤ शà¥à¤°à¥ à¤à¤°à¤¨à¥ à¤à¥ लिठठà¥à¤ à¤à¥à¤¨à¥à¤.
+
+STUB_CANCEL_PROMPT_HEADING=à¤à¥à¤¯à¤¾ à¤à¤ª $BrandShortName à¤à¥ सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+STUB_CANCEL_PROMPT_MESSAGE=यदि à¤à¤ª रदà¥à¤¦ à¤à¤°à¤¤à¥ हà¥à¤, तॠ$BrandShortName सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ नहà¥à¤ हà¥à¤à¤¾|
+STUB_CANCEL_PROMPT_BUTTON_CONTINUE=$BrandShortName सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¥à¤
+STUB_CANCEL_PROMPT_BUTTON_EXIT=रदà¥à¤¦ à¤à¤°à¥à¤
+
+VERSION_32BIT=32-बिठ$BrandShortName
+VERSION_64BIT=64-बिठ$BrandShortName
diff --git a/browser/installer/override.properties b/browser/installer/override.properties
new file mode 100644
index 00000000000..aeadd0889db
--- /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 Setup
+UninstallCaption=$BrandFullName Uninstall
+BackBtn=< &Back
+NextBtn=&Next >
+AcceptBtn=I &accept the terms in the License Agreement
+DontAcceptBtn=I &do not accept the terms in the License Agreement
+InstallBtn=&Install
+UninstallBtn=&Uninstall
+CancelBtn=Cancel
+CloseBtn=&Close
+BrowseBtn=B&rowseâ¦
+ShowDetailsBtn=Show &details
+ClickNext=à¤à¤¾à¤°à¥ रà¤à¤¨à¥ à¤à¥ लिठठà¤à¤²à¤¾ दबाà¤à¤.
+ClickInstall=सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¤¨à¥ à¤à¥ लिठसà¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¤¨à¤¾ दबाà¤à¤.
+ClickUninstall=ठसà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¤¨à¥ à¤à¥ लिठठसà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ दबाà¤à¤.
+Completed=Completed
+LicenseTextRB=à¤à¥à¤ªà¤¯à¤¾ $BrandFullNameDA सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¤¨à¥ सॠपहलॠठनà¥à¤à¥à¤à¤ªà¥à¤¤à¤¿ à¤à¤¼à¤°à¤¾à¤° à¤à¥ समà¥à¤à¥à¤·à¤¾ à¤à¤°à¥à¤. यदि à¤à¤ªà¤à¥ à¤à¤¼à¤°à¤¾à¤° à¤à¥ सà¤à¥ शरà¥à¤¤à¥à¤ सà¥à¤µà¥à¤à¤¾à¤° हà¥à¤, तॠनà¥à¤à¥ दिया à¤à¤¯à¤¾ पहला विà¤à¤²à¥à¤ª à¤à¥à¤¨à¥à¤. $_CLICK
+ComponentsText=Check the components you want to install and uncheck the components you don't want to install. $_CLICK
+ComponentsSubText2_NoInstTypes=ठवयवà¥à¤ à¤à¥ सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤¨à¥à¤:\u0020
+DirText=Setup will install $BrandFullNameDA in the following folder. To install in a different folder, click Browse and select another folder. $_CLICK
+DirSubText=à¤à¤à¤¤à¤µà¥à¤¯ फ़à¥à¤²à¥à¤¡à¤°
+DirBrowseText=Select the folder to install $BrandFullNameDA in:
+SpaceAvailable="सà¥à¤¥à¤¾à¤¨ à¤à¤ªà¤²à¤¬à¥à¤§: "
+SpaceRequired="Space required: "
+UninstallingText=$BrandFullNameDA will be uninstalled from the following folder. $_CLICK
+UninstallingSubText=Uninstalling from:
+FileError=Error opening file for writing: \r\n\r\n$0\r\n\r\nClick Abort to stop the installation,\r\nRetry to try again, or\r\nIgnore to skip this file.
+FileError_NoIgnore=लà¥à¤à¤¨ हà¥à¤¤à¥ फ़ाà¤à¤² à¤à¥à¤²à¤¨à¥ मà¥à¤ तà¥à¤°à¥à¤à¤¿: \r\n\r\n$0\r\n\r\nफिर सॠà¤à¥à¤¶à¤¿à¤¶ à¤à¤°à¤¨à¥ à¤à¥ लिठपà¥à¤¨à¤ पà¥à¤°à¤¯à¤¾à¤¶ दबाà¤à¤, या\r\nसà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ रà¥à¤à¤¨à¥ à¤à¥ लिठरदà¥à¤¦ à¤à¤°à¥à¤.
+CantWrite="Can't write: "
+CopyFailed=पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ विफल
+CopyTo="Copy to "
+Registering="Registering: "
+Unregistering="Unregistering: "
+SymbolNotFound="Could not find symbol: "
+CouldNotLoad="Could not load: "
+CreateFolder="Create folder: "
+CreateShortcut="शà¥à¤°à¥à¤à¤à¤ बनाà¤à¤: "
+CreatedUninstaller="Created uninstaller: "
+Delete="Delete file: "
+DeleteOnReboot="रिबà¥à¤ पर हà¤à¤¾à¤à¤:"
+ErrorCreatingShortcut="Error creating shortcut: "
+ErrorCreating="Error creating: "
+ErrorDecompressing=Error decompressing data! Corrupted installer?
+ErrorRegistering=Error registering DLL
+ExecShell="ExecShell: "
+Exec="Execute: "
+Extract="Extract: "
+ErrorWriting="Extract: error writing to file "
+InvalidOpcode=Installer corrupted: invalid opcode
+NoOLE="No OLE for: "
+OutputFolder="Output folder: "
+RemoveFolder="फ़à¥à¤²à¥à¤¡à¤° निà¤à¤¾à¤²à¥à¤:"
+RenameOnReboot="Rename on reboot: "
+Rename="Rename: "
+Skipped="Skipped: "
+CopyDetails=Copy Details To Clipboard
+LogInstall=Log install process
+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..47d7ca2d4b4
--- /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=PDF दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ सहॠदिठनहà¥à¤ सà¤à¤¤à¤¾ हà¥.
+unsupported_feature_forms=à¤à¤¸ PDF दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ मà¥à¤ फ़à¥à¤°à¥à¤® हà¥à¤. फ़à¥à¤°à¥à¤® à¤à¥à¤·à¥à¤¤à¥à¤° à¤à¤°à¤¨à¥ à¤à¥ सà¥à¤µà¤¿à¤§à¤¾ समरà¥à¤¥à¤¿à¤¤ नहà¥à¤ हà¥.
+open_with_different_viewer=\u0020à¤à¤¿à¤¨à¥à¤¨ पà¥à¤°à¤¦à¤°à¥à¤¶à¤ à¤à¥ साथ à¤à¥à¤²à¥à¤
+open_with_different_viewer.accessKey=o
diff --git a/browser/pdfviewer/viewer.properties b/browser/pdfviewer/viewer.properties
new file mode 100644
index 00000000000..67d000538dc
--- /dev/null
+++ b/browser/pdfviewer/viewer.properties
@@ -0,0 +1,228 @@
+# 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=पिà¤à¤²à¤¾ पà¥à¤·à¥à¤
+previous_label=पिà¤à¤²à¤¾
+next.title=ठà¤à¤²à¤¾ पà¥à¤·à¥à¤
+next_label=à¤à¤à¥
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+page.title=पà¥à¤·à¥à¤ :
+# 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.
+page_of_pages=({{pageNumber}} of {{pagesCount}})
+
+zoom_out.title=\u0020à¤à¥à¤à¤¾ à¤à¤°à¥à¤
+zoom_out_label=\u0020à¤à¥à¤à¤¾ à¤à¤°à¥à¤
+zoom_in.title=बड़ा à¤à¤°à¥à¤
+zoom_in_label=बड़ा à¤à¤°à¥à¤
+zoom.title=बड़ा-à¤à¥à¤à¤¾ à¤à¤°à¥à¤
+presentation_mode.title=पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ ठवसà¥à¤¥à¤¾ मà¥à¤ à¤à¤¾à¤à¤
+presentation_mode_label=\u0020पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ ठवसà¥à¤¥à¤¾
+open_file.title=फ़ाà¤à¤² à¤à¥à¤²à¥à¤
+open_file_label=\u0020à¤à¥à¤²à¥à¤
+print.title=à¤à¤¾à¤ªà¥à¤
+print_label=\u0020à¤à¤¾à¤ªà¥à¤
+download.title=डाà¤à¤¨à¤²à¥à¤¡
+download_label=डाà¤à¤¨à¤²à¥à¤¡
+bookmark.title=मà¥à¤à¥à¤¦à¤¾ दà¥à¤¶à¥à¤¯ (नठविà¤à¤¡à¥ मà¥à¤ नà¤à¤¼à¤² लà¥à¤ या à¤à¥à¤²à¥à¤)
+bookmark_label=\u0020मà¥à¤à¥à¤¦à¤¾ दà¥à¤¶à¥à¤¯
+
+# Secondary toolbar and context menu
+tools.title=à¤à¤à¤¼à¤¾à¤°
+tools_label=à¤à¤à¤¼à¤¾à¤°
+first_page.title=पà¥à¤°à¤¥à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+first_page.label=\u0020पà¥à¤°à¤¥à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+first_page_label=पà¥à¤°à¤¥à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+last_page.title=ठà¤à¤¤à¤¿à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+last_page.label=\u0020ठà¤à¤¤à¤¿à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+last_page_label=\u0020ठà¤à¤¤à¤¿à¤® पà¥à¤·à¥à¤ पर à¤à¤¾à¤à¤
+page_rotate_cw.title=à¤à¤¡à¤¼à¥ à¤à¥ दिशा मà¥à¤ à¤à¥à¤®à¤¾à¤à¤
+page_rotate_cw.label=à¤à¤¡à¤¼à¥ à¤à¥ दिशा मà¥à¤ à¤à¥à¤®à¤¾à¤à¤
+page_rotate_cw_label=à¤à¤¡à¤¼à¥ à¤à¥ दिशा मà¥à¤ à¤à¥à¤®à¤¾à¤à¤
+page_rotate_ccw.title=à¤à¤¡à¤¼à¥ à¤à¥ दिशा सॠà¤à¤²à¥à¤à¤¾ à¤à¥à¤®à¤¾à¤à¤
+page_rotate_ccw.label=à¤à¤¡à¤¼à¥ à¤à¥ दिशा सॠà¤à¤²à¥à¤à¤¾ à¤à¥à¤®à¤¾à¤à¤
+page_rotate_ccw_label=\u0020à¤à¤¡à¤¼à¥ à¤à¥ दिशा सॠà¤à¤²à¥à¤à¤¾ à¤à¥à¤®à¤¾à¤à¤
+
+cursor_text_select_tool.title=पाठà¤à¤¯à¤¨ à¤à¤ªà¤à¤°à¤£ सà¤à¥à¤·à¤® à¤à¤°à¥à¤
+cursor_text_select_tool_label=पाठà¤à¤¯à¤¨ à¤à¤ªà¤à¤°à¤£
+cursor_hand_tool.title=हसà¥à¤¤ à¤à¤ªà¤à¤°à¤£ सà¤à¥à¤·à¤® à¤à¤°à¥à¤
+cursor_hand_tool_label=हसà¥à¤¤ à¤à¤ªà¤à¤°à¤£
+
+scroll_vertical.title=लà¤à¤¬à¤µà¤¤ सà¥à¤à¥à¤°à¥à¤²à¤¿à¤à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¥à¤
+scroll_vertical_label=लà¤à¤¬à¤µà¤¤ सà¥à¤à¥à¤°à¥à¤²à¤¿à¤à¤
+scroll_horizontal.title=à¤à¥à¤·à¤¿à¤¤à¤¿à¤à¤¿à¤¯ सà¥à¤à¥à¤°à¥à¤²à¤¿à¤à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¥à¤
+scroll_horizontal_label=à¤à¥à¤·à¤¿à¤¤à¤¿à¤à¤¿à¤¯ सà¥à¤à¥à¤°à¥à¤²à¤¿à¤à¤
+scroll_wrapped.title=वà¥à¤°à¤¾à¤ªà¥à¤ªà¥à¤¡ सà¥à¤à¥à¤°à¥à¤²à¤¿à¤à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¥à¤
+
+spread_none_label=à¤à¥à¤ सà¥à¤ªà¥à¤°à¥à¤¡ à¤à¤ªà¤²à¤¬à¥à¤§ नहà¥à¤
+spread_odd_label=विषम फà¥à¤²à¤¾à¤µ
+
+# Document properties dialog box
+document_properties.title=दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ विशà¥à¤·à¤¤à¤¾...
+document_properties_label=दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ विशà¥à¤·à¤¤à¤¾...
+document_properties_file_name=फ़ाà¤à¤² नाम:
+document_properties_file_size=फाà¤à¤² à¤à¤à¤¾à¤°à¤
+# 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=शà¥à¤°à¥à¤·à¤:
+document_properties_author=लà¥à¤à¤à¤
+document_properties_subject=विषय:
+document_properties_keywords=à¤à¥à¤à¤à¥-शबà¥à¤¦:
+document_properties_creation_date=निरà¥à¤®à¤¾à¤£ दिनाà¤à¤:
+document_properties_modification_date=सà¤à¤¶à¥à¤§à¤¨ दिनाà¤à¤:
+# 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=निरà¥à¤®à¤¾à¤¤à¤¾:
+document_properties_producer=PDF à¤à¤¤à¥à¤ªà¤¾à¤¦à¤:
+document_properties_version=PDF सà¤à¤¸à¥à¤à¤°à¤£:
+document_properties_page_count=पà¥à¤·à¥à¤ à¤à¤¿à¤¨à¤¤à¥:
+document_properties_page_size=पà¥à¤·à¥à¤ à¤à¤à¤¾à¤°:
+document_properties_page_size_unit_inches=à¤à¤à¤
+document_properties_page_size_unit_millimeters=मिमà¥
+document_properties_page_size_orientation_portrait=पà¥à¤°à¥à¤à¥à¤°à¥à¤
+document_properties_page_size_orientation_landscape=लà¥à¤à¤¡à¤¸à¥à¤à¥à¤ª
+document_properties_page_size_name_a3=A3
+document_properties_page_size_name_a4=A4
+document_properties_page_size_name_letter=पतà¥à¤°
+document_properties_page_size_name_legal=à¥à¤¾à¤¨à¥à¤¨à¥
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+document_properties_page_size_dimension_string={{width}} Ã {{height}} {{unit}} ({{orientation}})
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+document_properties_page_size_dimension_name_string={{width}} Ã {{height}} {{unit}} ({{name}}, {{orientation}})
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=तà¥à¤µà¥à¤° वà¥à¤¬ वà¥à¤¯à¥:
+document_properties_linearized_yes=हाà¤
+document_properties_linearized_no=नहà¥à¤
+document_properties_close=बà¤à¤¦ à¤à¤°à¥à¤
+
+print_progress_message=à¤à¤ªà¤¾à¤ à¤à¥ लिठदसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ à¤à¥ तà¥à¤¯à¤¾à¤° à¤à¤¿à¤¯à¤¾ à¤à¤¾ रहा हà¥...
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+print_progress_percent={{progress}}%
+print_progress_close=रदà¥à¤¦ à¤à¤°à¥à¤
+
+# 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=\u0020सà¥à¤²à¤¾à¤à¤¡à¤° à¤à¥à¤à¤² à¤à¤°à¥à¤
+toggle_sidebar_notification.title=साà¤à¤¡à¤¬à¤¾à¤° à¤à¥à¤à¤² à¤à¤°à¥à¤ (दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ मà¥à¤ रà¥à¤ªà¤°à¥à¤à¤¾ शामिल हà¥/attachments)
+toggle_sidebar_label=सà¥à¤²à¤¾à¤à¤¡à¤° à¤à¥à¤à¤² à¤à¤°à¥à¤
+document_outline.title=दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ à¤à¥ रà¥à¤ªà¤°à¥à¤à¤¾ दिà¤à¤¾à¤à¤ (सारॠवसà¥à¤¤à¥à¤à¤ à¤à¥ फलनॠठथवा समà¥à¤à¤¨à¥ à¤à¥ लिठदॠबार à¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤)
+document_outline_label=दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ à¤à¤à¤à¤²à¤¾à¤à¤¨
+attachments.title=सà¤à¤²à¤à¥à¤¨à¤ दिà¤à¤¾à¤¯à¥à¤
+attachments_label=सà¤à¤²à¤à¥à¤¨à¤
+thumbs.title=लà¤à¥à¤à¤µà¤¿à¤¯à¤¾à¤ दिà¤à¤¾à¤à¤
+thumbs_label=लà¤à¥ à¤à¤µà¤¿
+findbar.title=\u0020दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ मà¥à¤ ढà¥à¤à¤¢à¤¼à¥à¤
+findbar_label=ढà¥à¤à¤¢à¥à¤
+
+# 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}}
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas=पà¥à¤·à¥à¤ {{page}} à¤à¥ लà¤à¥-à¤à¤µà¤¿
+
+# Find panel button title and messages
+find_input.title=ढà¥à¤à¤¢à¥à¤
+find_input.placeholder=दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ मà¥à¤ à¤à¥à¤à¥à¤...
+find_previous.title=वाà¤à¥à¤¯à¤¾à¤à¤¶ à¤à¥ पिà¤à¤²à¥ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿ ढà¥à¤à¤¢à¤¼à¥à¤
+find_previous_label=पिà¤à¤²à¤¾
+find_next.title=वाà¤à¥à¤¯à¤¾à¤à¤¶ à¤à¥ ठà¤à¤²à¥ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿ ढà¥à¤à¤¢à¤¼à¥à¤
+find_next_label=ठà¤à¤²à¤¾
+find_highlight=\u0020सà¤à¥ à¤à¤²à¥à¤à¤¿à¤¤ à¤à¤°à¥à¤
+find_match_case_label=मिलान सà¥à¤¥à¤¿à¤¤à¤¿
+find_entire_word_label=सà¤à¤ªà¥à¤°à¥à¤£ शबà¥à¤¦
+find_reached_top=पà¥à¤·à¥à¤ à¤à¥ à¤à¤ªà¤° पहà¥à¤à¤ à¤à¤¯à¤¾, नà¥à¤à¥ सॠà¤à¤¾à¤°à¥ रà¤à¥à¤
+find_reached_bottom=पà¥à¤·à¥à¤ à¤à¥ नà¥à¤à¥ मà¥à¤ à¤à¤¾ पहà¥à¤à¤à¤¾, à¤à¤ªà¤° सॠà¤à¤¾à¤°à¥
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
+find_not_found=वाà¤à¥à¤¯à¤¾à¤à¤¶ नहà¥à¤ मिला
+
+# Error panel labels
+error_more_info=ठधिठसà¥à¤à¤¨à¤¾
+error_less_info=à¤à¤® सà¥à¤à¤¨à¤¾
+error_close=बà¤à¤¦ à¤à¤°à¥à¤
+# 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=\u0020सà¤à¤¦à¥à¤¶: {{message}}
+# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack
+# trace.
+error_stack=सà¥à¤à¥à¤: {{stack}}
+# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename
+error_file=फ़ाà¤à¤²: {{file}}
+# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number
+error_line=पà¤à¤à¥à¤¤à¤¿: {{line}}
+rendering_error=पà¥à¤·à¥à¤ रà¥à¤à¤¡à¤°à¤¿à¤à¤ à¤à¥ दà¥à¤°à¤¾à¤¨ तà¥à¤°à¥à¤à¤¿ à¤à¤.
+
+# Predefined zoom values
+page_scale_width=\u0020पà¥à¤·à¥à¤ à¤à¥à¤¡à¤¼à¤¾à¤
+page_scale_fit=पà¥à¤·à¥à¤ फिà¤
+page_scale_auto=सà¥à¤µà¤à¤¾à¤²à¤¿à¤¤ à¤à¥à¤®
+page_scale_actual=वासà¥à¤¤à¤µà¤¿à¤ à¤à¤à¤¾à¤°
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading_error_indicator=तà¥à¤°à¥à¤à¤¿
+loading_error=PDF लà¥à¤¡ à¤à¤°à¤¤à¥ समय à¤à¤ तà¥à¤°à¥à¤à¤¿ हà¥à¤.
+invalid_file_error=ठमानà¥à¤¯ या à¤à¥à¤°à¤·à¥à¤ PDF फ़ाà¤à¤².
+missing_file_error=\u0020ठनà¥à¤ªà¤¸à¥à¤¥à¤¿à¤¤ PDF फ़ाà¤à¤².
+unexpected_response_error=ठपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ सरà¥à¤µà¤° पà¥à¤°à¤¤à¤¿à¤à¥à¤°à¤¿à¤¯à¤¾.
+
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
+# 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=\u0020[{{type}} Annotation]
+password_label=à¤à¤¸ PDF फ़ाà¤à¤² à¤à¥ à¤à¥à¤²à¤¨à¥ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ à¤à¥à¤à¤¶à¤¬à¥à¤¦ à¤à¤°à¥à¤.
+password_invalid=ठवà¥à¤§ à¤à¥à¤à¤¶à¤¬à¥à¤¦, à¤à¥à¤ªà¤¯à¤¾ फिर à¤à¥à¤¶à¤¿à¤¶ à¤à¤°à¥à¤.
+password_ok=OK
+password_cancel=रदà¥à¤¦ à¤à¤°à¥à¤
+
+printing_not_supported=à¤à¥à¤¤à¤¾à¤µà¤¨à¥: à¤à¤¸ बà¥à¤°à¤¾à¤à¤à¤¼à¤° पर à¤à¤ªà¤¾à¤ पà¥à¤°à¥ तरह सॠसमरà¥à¤¥à¤¿à¤¤ नहà¥à¤ हà¥.
+printing_not_ready=à¤à¥à¤¤à¤¾à¤µà¤¨à¥: PDF à¤à¤ªà¤¾à¤ à¤à¥ लिठपà¥à¤°à¥ तरह सॠलà¥à¤¡ नहà¥à¤ हà¥.
+web_fonts_disabled=वà¥à¤¬ फà¥à¤¨à¥à¤à¥à¤¸ निषà¥à¤à¥à¤°à¤¿à¤¯ हà¥à¤: ठà¤à¤¤à¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ PDF फà¥à¤¨à¥à¤à¤¸ à¤à¥ à¤à¤ªà¤¯à¥à¤ मà¥à¤ ठसमरà¥à¤¥.
+document_colors_not_allowed=PDF दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ à¤à¤¨à¤à¥ ठपनॠरà¤à¤ à¤à¥ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ à¤à¥ लिठठनà¥à¤®à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ हà¥: "पà¥à¤·à¥à¤ à¥à¤ à¤à¥ à¤à¤¨à¤à¥ ठपनॠरà¤à¤ à¤à¥ à¤à¥à¤¨à¤¨à¥ à¤à¥ लिठसà¥à¤µà¥à¤à¥à¤¤à¤¿ दà¥à¤" à¤à¤¿ वह à¤à¤¸ बà¥à¤°à¤¾à¤à¤à¤¼à¤° मà¥à¤ निषà¥à¤à¥à¤°à¤¿à¤¯ हà¥.
diff --git a/browser/profile/bookmarks.inc b/browser/profile/bookmarks.inc
new file mode 100644
index 00000000000..1c865ad88aa
--- /dev/null
+++ b/browser/profile/bookmarks.inc
@@ -0,0 +1,72 @@
+# 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 बà¥à¤à¤®à¤¾à¤°à¥à¤
+#define bookmarks_heading बà¥à¤à¤®à¤¾à¤°à¥à¤
+
+#define bookmarks_toolbarfolder बà¥à¤à¤®à¤¾à¤°à¥à¤à¥à¤¸ à¤à¥à¤²à¤¬à¤¾à¤° फ़à¥à¤²à¥à¤¡à¤°
+#define bookmarks_toolbarfolder_description à¤à¤¸ फ़à¥à¤²à¥à¤¡à¤° मà¥à¤ बà¥à¤à¤®à¤¾à¤°à¥à¤ à¤à¥à¤¡à¤¼à¥à¤ ताà¤à¤¿ वह à¤à¤à¤¾à¤° पà¤à¥à¤à¥ पर पà¥à¤°à¤¦à¤°à¥à¤¶à¤¿à¤¤ हà¥à¤.
+
+# LOCALIZATION NOTE (getting_started):
+# link title for https://www.mozilla.org/en-US/firefox/central/
+#define getting_started शà¥à¤°à¥ à¤à¤°à¤¨à¤¾
+
+# 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 मदद à¤à¤° à¤à¥à¤¯à¥à¤à¥à¤°à¤¿à¤¯à¤²
+
+# LOCALIZATION NOTE (firefox_customize):
+# link title for https://www.mozilla.org/en-US/firefox/customize/
+#define firefox_customize Firefox मनपसà¤à¤¦ बनाà¤à¤
+
+# LOCALIZATION NOTE (firefox_community):
+# link title for https://www.mozilla.org/en-US/contribute/
+#define firefox_community शामिल हà¥à¤
+
+# LOCALIZATION NOTE (firefox_about):
+# link title for https://www.mozilla.org/en-US/about/
+#define firefox_about हमारा परिà¤à¤¯
+
+# LOCALIZATION NOTE (nightly_heading):
+# Firefox Nightly links folder name
+#define nightly_heading Firefox Nightly à¤à¥ साधन
+
+# LOCALIZATION NOTE (nightly_blog):
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+#define nightly_blog Firefox Nightly à¤à¥ बà¥à¤²à¥à¤
+
+# LOCALIZATION NOTE (bugzilla):
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+#define bugzilla Mozilla दà¥à¤· सà¤à¤µà¤¾à¤¦à¤¦à¤¾à¤¤à¤¾\u0020
+
+# LOCALIZATION NOTE (mdn):
+# Nightly builds only, link title for https://developer.mozilla.org/
+#define mdn Mozilla डà¥à¤µà¤²à¤ªà¤° नà¥à¤à¤µà¤°à¥à¤
+
+# 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 परà¥à¤à¥à¤·à¤ à¤à¤ªà¤à¤°à¤£
+
+# LOCALIZATION NOTE (crashes):
+# Nightly builds only, link title for about:crashes
+#define crashes à¤à¤ªà¤à¥ सà¤à¥ à¤à¥à¤°à¥à¤¶
+
+# LOCALIZATION NOTE (irc):
+# Nightly builds only, link title for ircs://irc.mozilla.org/nightly
+#define irc Nightly à¤à¥ बारॠमॠबातà¤à¥à¤¤ IRC पर
+
+# LOCALIZATION NOTE (planet):
+# Nightly builds only, link title for https://planet.mozilla.org/
+#define planet पà¥à¤²à¤¾à¤¨à¥à¤ Mozilla
+
+#unfilter emptyLines
diff --git a/browser/updater/updater.ini b/browser/updater/updater.ini
new file mode 100644
index 00000000000..750a5ccd99e
--- /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% ठदà¥à¤¯à¤¤à¤¨
+InfoText=%MOZ_APP_DISPLAYNAME% ठदà¥à¤¯à¤¤à¤¨ सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤° रहा हॠà¤à¤° à¤à¥à¤ सà¥à¤à¥à¤à¤¡ मà¥à¤ à¤à¤°à¤à¤ हà¥à¤à¤¾â¦
+MozillaMaintenanceDescription=मà¥à¤à¤¼à¤¿à¤²à¤¾ रà¤à¤°à¤à¤¾à¤µ सà¥à¤µà¤¾ सà¥à¤¨à¤¿à¤¶à¥à¤à¤¿à¤¤ à¤à¤°à¤¤à¤¾ हॠà¤à¤¿ à¤à¤ª ठपनॠà¤à¤à¤ªà¥à¤¯à¥à¤à¤° पर मà¥à¤à¤¼à¤¿à¤²à¤¾ फ़ायरफ़à¥à¤à¥à¤¸ à¤à¥ नवà¥à¤¨à¤¤à¤® à¤à¤° सबसॠसà¥à¤°à¤à¥à¤·à¤¿à¤¤ सà¤à¤¸à¥à¤à¤°à¤£ हà¥à¥¤ फ़ायरफ़à¥à¤à¥à¤¸ तारà¥à¤ à¤à¥ धà¥à¤¯à¤¾à¤¨ मà¥à¤ रà¤à¤¤à¥ हà¥à¤ à¤à¤ªà¤à¥ à¤à¤¨à¤²à¤¾à¤à¤¨ सà¥à¤°à¤à¥à¤·à¤¾ à¤à¥ लिठबहà¥à¤¤ महतà¥à¤µà¤ªà¥à¤°à¥à¤£ हà¥, à¤à¤° मà¥à¤à¤¼à¤¿à¤²à¤¾ पà¥à¤°à¤à¥à¤° ठनà¥à¤¶à¤à¤¸à¤¾ à¤à¤°à¤¤à¤¾ हॠà¤à¤¿ à¤à¤ª à¤à¤¸ सà¥à¤µà¤¾ सà¤à¥à¤·à¤® रà¤à¥à¤à¥¤
diff --git a/calendar/chrome/calendar/calendar-alarms.properties b/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 00000000000..6e15888475c
--- /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=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ à¤à¤¾ समय
+reminderTitleAtStartTask=à¤à¤¾à¤°à¥à¤¯ पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ à¤à¤¾ समय
+reminderTitleAtEndEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¤¼à¤¤à¥à¤® हà¥à¤¨à¥ à¤à¤¾ समय
+reminderTitleAtEndTask=à¤à¤¾à¤°à¥à¤¯ समापà¥à¤¤ हà¥à¤¤à¥ समय
+
+# 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 à¤à¥ लियॠà¤à¤à¤à¤¾à¤ सà¥à¤®à¤°à¤£à¤ªà¤¤à¥à¤°
+
+reminderCustomOriginBeginBeforeEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ à¤à¥ पहलà¥
+reminderCustomOriginBeginAfterEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ à¤à¥ बाद
+reminderCustomOriginEndBeforeEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® समापà¥à¤¤ हà¥à¤¨à¥ à¤à¥ पहलà¥
+reminderCustomOriginEndAfterEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® समापà¥à¤¤ हà¥à¤¨à¥ à¤à¥ बाद
+reminderCustomOriginBeginBeforeTask=à¤à¤¾à¤°à¥à¤¯ पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ सॠपहलà¥
+reminderCustomOriginBeginAfterTask=à¤à¤¾à¤°à¥à¤¯ पà¥à¤°à¤¾à¤°à¤à¤ हà¥à¤¨à¥ à¤à¥ बाद
+reminderCustomOriginEndBeforeTask=à¤à¤¾à¤°à¥à¤¯ समापà¥à¤¤ हà¥à¤¨à¥ सॠपहलà¥
+reminderCustomOriginEndAfterTask=à¤à¤¾à¤°à¥à¤¯ समापà¥à¤¤ हà¥à¤¨à¥ à¤à¥ बाद
+
+reminderErrorMaxCountReachedEvent=à¤à¤¯à¤¨à¤¿à¤¤ à¤à¥à¤²à¤à¤¡à¤° à¤à¥ पास à¤à¤ सà¥à¤®à¤¾ हॠà¤à¥ à¤à¥ #1 हर à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¥ लिठà¤à¤ सà¥à¤®à¤°à¤£à¤ªà¤¤à¥à¤° हà¥.;à¤à¤¯à¤¨à¤¿à¤¤ à¤à¥à¤²à¤à¤¡à¤° à¤à¥ पास à¤à¤ सà¥à¤®à¤¾ हॠà¤à¥ à¤à¥ #1 हर à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¥ लिठà¤à¤ सà¥à¤®à¤°à¤£à¤ªà¤¤à¥à¤° हà¥.
+reminderErrorMaxCountReachedTask=à¤à¤¯à¤¨à¤¿à¤¤ à¤à¥à¤²à¤à¤¡à¤° à¤à¥ पास à¤à¤ सà¥à¤®à¤¾ हॠà¤à¥ à¤à¥ #1 हर à¤à¤¾à¤°à¥à¤¯ à¤à¥ लिठà¤à¤ सà¥à¤®à¤°à¤£à¤ªà¤¤à¥à¤° हà¥.;à¤à¤¯à¤¨à¤¿à¤¤ à¤à¥à¤²à¤à¤¡à¤° à¤à¥ पास à¤à¤ सà¥à¤®à¤¾ हॠà¤à¥ à¤à¥ #1 हर à¤à¤¾à¤°à¥à¤¯ à¤à¥ लिठà¤à¤ सà¥à¤®à¤°à¤£à¤ªà¤¤à¥à¤° हà¥.
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..6f38e9b1e5a
--- /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 = à¤à¤µà¤¶à¥à¤¯à¤ पà¥à¤°à¤¤à¤¿à¤à¤¾à¤à¥
+event.attendee.role.optional = वà¥à¤à¤²à¥à¤ªà¤¿à¤ सहà¤à¤¾à¤à¥
+event.attendee.role.nonparticipant = à¤à¥à¤°-सहà¤à¤¾à¤à¥
+event.attendee.role.chair = à¤à¥à¤°à¥à¤¸à¥
+event.attendee.role.unknown = ठà¤à¥à¤à¤¾à¤¤ पà¥à¤°à¤¤à¤¿à¤à¤¾à¤à¥ (%1$S)
+
+event.attendee.usertype.individual = वà¥à¤¯à¤à¥à¤¤à¤¿
+event.attendee.usertype.group = समà¥à¤¹
+event.attendee.usertype.resource = सà¤à¤¸à¤¾à¤§à¤¨
+event.attendee.usertype.room = à¤à¤®à¤°à¤¾
+event.attendee.usertype.unknown = ठà¤à¥à¤à¤¾à¤¤ à¤à¤¼à¤¿à¤¸à¥à¤® (%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..c623d6a70d6
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,418 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar-event-dialog.properties b/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 00000000000..7ad1c7c31a1
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-event-dialog.properties
@@ -0,0 +1,444 @@
+# 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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ दिन ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #1 दिन
+repeatDetailsRuleDaily4=पà¥à¤°à¤¤à¥à¤¯à¥à¤ सापà¥à¤¤à¤¾à¤¹à¤¿à¤ दिन
+
+# 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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S;पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 सापà¥à¤¤à¤¾à¤¹ पर %1$S
+weeklyNthOnNounclass2=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S;पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 सापà¥à¤¤à¤¾à¤¹ पर %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=पà¥à¤°à¤¤à¥à¤¯à¥à¤ सापà¥à¤¤à¤¾à¤¹;पà¥à¤°à¤¤à¥à¤¯à¥à¤ #1 सापà¥à¤¤à¤¾à¤¹
+
+# 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=रविवार
+repeatDetailsDay1Nounclass=nounclass1
+repeatDetailsDay2=सà¥à¤®à¤µà¤¾à¤°
+repeatDetailsDay2Nounclass=nounclass1
+repeatDetailsDay3=मà¤à¤à¤²à¤µà¤¾à¤°
+repeatDetailsDay4=बà¥à¤§à¤µà¤¾à¤°
+repeatDetailsDay5=à¤à¤°à¥à¤µà¤¾à¤°
+repeatDetailsDay6=शà¥à¤à¥à¤°à¤µà¤¾à¤°
+repeatDetailsDay7=शनिवार
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=à¤à¤°
+
+# 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=%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ माह ;%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 माह
+monthlyRuleNthOfEveryNounclass2=%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ माह ;%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2माह
+
+# 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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ महà¥à¤¨à¥ ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 महà¥à¤¨à¥
+monthlyEveryOfEveryNounclass2=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ महà¥à¤¨à¥ ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 महà¥à¤¨à¥
+
+# 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 ; दिनॠ%1$S
+
+# 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=%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ माह ;%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 माह
+
+# 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=महà¥à¤¨à¥ à¤à¤¾ à¤à¤à¤¼à¤°à¥ दिन ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #1 महà¥à¤¨à¥ à¤à¤¾ à¤à¤à¤¼à¤°à¥ दिन
+
+# 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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ माह à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ दिन ;पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 माह माह à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ दिन
+
+# 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=पहला
+repeatOrdinal2Nounclass1=दà¥à¤¸à¤°à¤¾
+repeatOrdinal3Nounclass1=तà¥à¤¸à¤°à¤¾
+repeatOrdinal4Nounclass1=à¤à¥à¤¥à¤¾
+repeatOrdinal5Nounclass1=पाà¤à¤à¤µà¤¾à¤
+repeatOrdinal-1Nounclass1=ठà¤à¤¤à¤¿à¤®
+repeatOrdinal1Nounclass2=पहला
+repeatOrdinal2Nounclass2=दà¥à¤¸à¤°à¤¾
+repeatOrdinal3Nounclass2=तà¥à¤¸à¤°à¤¾
+repeatOrdinal4Nounclass2=à¤à¥à¤¥à¤¾
+repeatOrdinal5Nounclass2=पाà¤à¤à¤µà¤¾à¤
+repeatOrdinal-1Nounclass2=ठà¤à¤¤à¤¿à¤®
+
+# 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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S %2$S ;पà¥à¤°à¤¤à¥à¤¯à¥à¤ #3 साल मॠ%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=%1$S %2$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ %3$S ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #4 वरà¥à¤· मॠ%1$S %2$S à¤à¥ %3$S à¤à¥
+yearlyNthOnNthOfNounclass2=%1$S %2$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ %3$S ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #4 वरà¥à¤· मॠ%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=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ %2$S ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #3 वरà¥à¤· मॠपà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ %2$S à¤à¥
+yearlyOnEveryNthOfNthNounclass2=पà¥à¤°à¤¤à¥à¤¯à¥à¤ %1$S à¤à¥ %2$S ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #3 वरà¥à¤· मॠपà¥à¤°à¤¤à¥à¤¯à¥à¤ %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=%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ दिन ; पà¥à¤°à¤¤à¥à¤¯à¥à¤ #2 वरà¥à¤· मॠ%1$S à¤à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤ दिन\u0020
+
+repeatDetailsMonth1=à¤à¤¨à¤µà¤°à¥
+repeatDetailsMonth2=फ़रवरà¥
+repeatDetailsMonth3=मारà¥à¤
+repeatDetailsMonth4=ठपà¥à¤°à¥à¤²
+repeatDetailsMonth5=मà¤
+repeatDetailsMonth6=à¤à¥à¤¨
+repeatDetailsMonth7=à¤à¥à¤²à¤¾à¤
+repeatDetailsMonth8=ठà¤à¤¸à¥à¤¤
+repeatDetailsMonth9=सितमà¥à¤¬à¤°
+repeatDetailsMonth10=ठà¤à¥à¤à¥à¤¬à¤°
+repeatDetailsMonth11=नवमà¥à¤¬à¤°
+repeatDetailsMonth12=दिसबà¤à¤°
+
+# 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=%1$S निरà¥à¤®à¤¿à¤¤\nठसरदार %2$S à¤à¥ लियॠ#5 बार\n%3$S सॠ%4$S तà¤.;%1$S निरà¥à¤®à¤¿à¤¤\nठसरदार %2$S à¤à¥ लियॠ#5 बार\n%3$S सॠ%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=%1$S निरà¥à¤®à¤¿à¤¤\n#3 बार पà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %2$S à¤à¥ लियà¥.; %1$S निरà¥à¤®à¤¿à¤¤\n#3 बार पà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %2$S à¤à¥ लियà¥.
+
+# 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=à¤à¤à¤¿à¤¤ %1$S\nपà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %2$S परà¥à¤¯à¤¤ %3$S\n%4$S सॠ%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=à¤à¤à¤¿à¤¤ %1$S\nपà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %2$S परà¥à¤¯à¤¤ %3$S.
+
+# 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=à¤à¤à¤¿à¤¤ हà¥à¤ %1$S\nपà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %2$S\n%3$S सॠ%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=à¤à¤à¤¿à¤¤ हà¥à¤ %1$S\nपà¥à¤°à¤à¤¾à¤µà¤¶à¤¾à¤²à¥ %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=à¤à¤à¤°à¥ दिन
+
+# 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=विवरण à¤à¥ लिठयहाठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# 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=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ विवरण ठà¤à¥à¤à¤¾à¤¤
+
+# differences between the dialog for an Event or a Task
+newEvent=नया à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤®
+newTask=नया à¤à¤¾à¤°à¥à¤¯
+itemMenuLabelEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤®
+itemMenuAccesskeyEvent2=T
+itemMenuLabelTask=à¤à¤¾à¤°à¥à¤¯
+itemMenuAccesskeyTask2=T
+
+emailSubjectReply=à¤à¤µà¤¾à¤¬: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=à¤à¥à¤ªà¤¯à¤¾ लिà¤à¤ सà¥à¤¥à¤¾à¤¨ à¤à¤¾ विसà¥à¤¤à¥à¤¤ विवरण दà¥à¤
+enterLinkLocation=वà¥à¤¬ पà¥à¤·à¥à¤ या दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ सà¥à¤¥à¤¾à¤¨ पà¥à¤°à¤µà¤¿à¤·à¥à¤ à¤à¤°à¥à¤
+
+summaryDueTaskLabel=शà¥à¤· :
+
+# Attach File Dialog
+attachViaFilelink=%1$S फाà¤à¤² à¤à¤¾ à¤à¤¸à¥à¤¤à¥à¤®à¤¾à¤² à¤à¤°à¤¤à¥ हà¥à¤
+selectAFile=à¤à¥à¤ªà¤¯à¤¾ सà¤à¤²à¤à¥à¤¨ à¤à¤°à¤¨à¥ à¤à¥ लिठफाà¤à¤²à¥à¤ à¤à¤¾ à¤à¤¯à¤¨ à¤à¤°à¥à¤â
+removeCalendarsTitle=सà¤à¤²à¤à¥à¤¨à¤ हà¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=à¤à¥à¤¯à¤¾ à¤à¤ª सà¤à¤®à¥à¤ #1 सà¤à¤²à¤à¥à¤¨à¤ हà¤à¤¾à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?; à¤à¥à¤¯à¤¾ à¤à¤ª सà¤à¤®à¥à¤ #1 सà¤à¤²à¤à¥à¤¨à¤ हà¤à¤¾à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+
+# 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=à¤à¤²à¤¤
+
+# 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=रविवार
+repeatDetailsDay2Plural=सà¥à¤®à¤µà¤¾à¤°
+repeatDetailsDay3Plural=मà¤à¤à¤²à¤µà¤¾à¤°
+repeatDetailsDay4Plural=बà¥à¤§à¤µà¤¾à¤°
+repeatDetailsDay5Plural=à¤à¤°à¥à¤µà¤¾à¤°
+repeatDetailsDay6Plural=शà¥à¤à¥à¤°à¤µà¤¾à¤°
+repeatDetailsDay7Plural=शनिवार
+
+# 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=सदà¥à¤µ
+
+# 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=ठà¤à¤¤à¤¿à¤® दिन
+
+# 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
+counterSummaryAccepted=%1$S नॠà¤à¤®à¤à¤¤à¥à¤°à¤£ सà¥à¤µà¥à¤à¤¾à¤° à¤à¤° लिया हà¥, परà¤à¤¤à¥ à¤à¤ विपरà¥à¤¤ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ बनाया हà¥:
+
+# 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
+counterSummaryDeclined=%1$S नॠà¤à¤®à¤à¤¤à¥à¤°à¤£ ठसà¥à¤µà¥à¤à¤¾à¤° à¤à¤° दिया हà¥, परà¤à¤¤à¥ à¤à¤ विपरà¥à¤¤ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ बनाया हà¥:
+
+# 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
+counterSummaryDelegated=%1$S नॠà¤à¤®à¤à¤¤à¥à¤°à¤£ पà¥à¤°à¤¤à¥à¤¯à¤¾à¤¯à¥à¤à¥à¤¤ à¤à¤° दिया हà¥, परà¤à¤¤à¥ à¤à¤ पà¥à¤°à¤¤à¤¿ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ à¤à¥à¤à¤¾ हà¥:
+
+# 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
+counterSummaryNeedsAction=%1$S नॠहिसà¥à¤¸à¤¾ लà¥à¤¨à¥ à¤à¤¾ निरà¥à¤£à¤¯ तॠनहà¥à¤ लिया हà¥,परà¤à¤¤à¥ à¤à¤ पà¥à¤°à¤¤à¤¿ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ à¤à¥à¤à¤¾ हà¥:
+
+# 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
+counterSummaryTentative=%1$S नॠà¤à¥à¤µà¤² ठसà¥à¤¥à¤¾à¤¯à¥ तà¥à¤° सॠà¤à¤®à¤à¤¤à¥à¤°à¤£ सà¥à¤µà¥à¤à¤¾à¤° à¤à¤¿à¤¯à¤¾ हà¥, परà¤à¤¤à¥ à¤à¤ पà¥à¤°à¤¤à¤¿ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ à¤à¥à¤à¤¾ हà¥:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=यह à¤à¤ पà¥à¤°à¤¤à¤¿ पà¥à¤°à¤¸à¥à¤¤à¤¾à¤µ हॠà¤à¤¸ à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¥ पिà¤à¤²à¥ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ लिà¤.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=à¤à¤ªà¤¨à¥ पà¥à¤°à¤¤à¥à¤¯à¥à¤¤à¥à¤¤à¤° à¤à¥ रदà¥à¤¦ à¤à¤¿à¤¯à¤¾ à¤à¤¬ à¤à¤®à¤à¤¤à¥à¤°à¤£ à¤à¥à¤ रहॠथà¥\u0020
diff --git a/calendar/chrome/calendar/calendar-extract.properties b/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 00000000000..789a4ca95ac
--- /dev/null
+++ b/calendar/chrome/calendar/calendar-extract.properties
@@ -0,0 +1,260 @@
+# 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
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+
+# 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
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = à¤à¤
+
+from.tomorrow = à¤à¤²
+# 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
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = दà¥à¤ªà¤¹à¤°
+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
+
+# 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
+
+# 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
+from.month.day = #2/#1
+
+# 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
+duration.hours = #1 à¤à¤à¤à¤¾ |#1 à¤à¤à¤à¥
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = #1 दिन
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = à¤à¤¨à¤µà¤°à¥ | à¤à¥à¤¨ | à¤à¥à¤¨.
+month.2 = फरवरॠ| फà¥à¤¬ | फà¥à¤¬.
+month.5 = मà¤
+
+# 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.
+
+# 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 = शà¥à¤¨à¥à¤¯
+number.1 = à¤à¤ | पहला
+number.2 = दॠ| दà¥à¤¸à¤°à¤¾
+number.3 = तà¥à¤¨ | तà¥à¤¸à¤°à¤¾
+number.4 = à¤à¤¾à¤° | à¤à¥à¤¥à¤¾
+number.5 = पà¤à¥à¤ | पाà¤à¤à¤µà¤¾
+number.6 = à¤à¤¹ | à¤à¤à¤¾
+number.7 = सात | सातवा
+number.8 = à¤à¤ | à¤à¤ वा
+number.9 = नॠ| नà¥à¤µà¤¾
+number.10 = दस | दसवा
+number.11 = à¤à¥à¤¯à¤¾à¤°à¤¹ | à¤à¥à¤¯à¤¾à¤°à¤µà¤¾à¤
+number.12 = बारा | बरवा
+number.13 = तà¥à¤°à¤¹ | तà¥à¤°à¤µà¤¾
+number.14 = à¤à¥à¤¦à¤¾ | à¤à¥à¤¦à¤µà¤¾
+number.15 = पà¤à¤¦à¥à¤°à¤¹ | पà¤à¤¦à¤°à¤µà¤¾
+number.16 = सà¥à¤²à¤¹ | सà¥à¤²à¥à¤µà¤¾
+number.17 = सतरा | सतरवा
+number.18 = ठठारह | ठठरवा
+number.19 = à¤à¤¨à¥à¤¨à¥à¤¸ | à¤à¤¨à¥à¤¨à¥à¤¸à¤µà¤¾à¤
+number.20 = बà¥à¤¸ | बà¥à¤¸à¤µà¤¾à¤
+number.21 = à¤à¤à¥à¤à¥à¤¸ | à¤à¤à¥à¤à¥à¤¸à¤µà¤¾à¤
+number.22 = बाà¤à¤¸ | बाà¤à¤¸à¤µà¤¾à¤
+number.23 = तà¥à¤à¤¸ | तà¥à¤à¤¸à¤µà¤¾
+number.24 = à¤à¥à¤¬à¥à¤¸ | à¤à¥à¤¬à¥à¤¸à¤µà¤¾
+number.25 = पà¤à¥à¤à¥à¤¸ | पà¤à¥à¤à¥à¤¸à¤µà¤¾
+number.26 = à¤à¤¬à¥à¤¬à¥à¤¸ | à¤à¤¬à¥à¤¬à¥à¤¸à¤µà¤¾
+number.27 = सतà¥à¤¤à¤¾à¤à¤¸ | सतà¥à¤¤à¤¾à¤à¤¸à¤µà¤¾
+number.28 = ठठाà¤à¤¸ | ठठाà¤à¤¸à¤µà¤¾
+number.29 = à¤à¤¨à¥à¤¤à¥à¤¸ | à¤à¤¨à¥à¤¤à¥à¤¸à¤µà¤¾
+number.30 = तà¥à¤¸ | तà¥à¤¸à¤µà¤¾
+number.31 = à¤à¤à¤¤à¥à¤¤à¥à¤¸ | à¤à¤à¤¤à¥à¤¤à¥à¤¸à¤µà¤¾
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
diff --git a/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 00000000000..89eb6c3fbf0
--- /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..c774314c486
--- /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=à¤à¤ पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® हà¥
+header.isrepeating.task.label=à¤à¤ पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯ हà¥
+
+windowtitle.event.delete=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¥ मिà¤à¤¾à¤à¤
+windowtitle.task.delete=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯ à¤à¥ मिà¤à¤¾à¤à¤
+windowtitle.event.edit=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¤¾ सà¤à¤ªà¤¾à¤¦à¤¨ à¤à¤°à¥à¤
+windowtitle.task.edit=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¤¾à¤°à¥à¤¯ à¤à¤¾ सà¤à¤ªà¤¾à¤¦à¤¨ à¤à¤°à¥à¤
+
+buttons.occurrence.delete.label=à¤à¤¸ à¤à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¥ मिà¤à¤¾à¤à¤
+buttons.occurrence.edit.label=à¤à¤¸ à¤à¤µà¥à¤¤à¥à¤¤à¤¿ à¤à¥ समà¥à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+buttons.allfollowing.delete.label=à¤à¤¸à¥ तथा सà¤à¥ à¤à¤¾à¤µà¥ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿à¤¯à¥à¤ à¤à¥ मिà¤à¤¾à¤¯à¥à¤
+buttons.allfollowing.edit.label=à¤à¤¸à¥ तथा सà¤à¥ à¤à¤¾à¤µà¥ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿à¤¯à¥à¤ à¤à¥ समà¥à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+buttons.parent.delete.label=सà¤à¥ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿à¤¯à¥à¤ à¤à¥ मिà¤à¤¾à¤à¤
+buttons.parent.edit.label=सà¤à¥ à¤à¤µà¥à¤¤à¥à¤¤à¤¿à¤¯à¥à¤ à¤à¥ समà¥à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
diff --git a/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd b/calendar/chrome/calendar/calendar-subscriptions-dialog.dtd
new file mode 100644
index 00000000000..469388e042e
--- /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..2b7290d5ce5
--- /dev/null
+++ b/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,375 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/calendar.properties b/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 00000000000..63d2b73a8d7
--- /dev/null
+++ b/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,556 @@
+# 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=%1$S à¤à¤¾ à¤à¤ªà¤¾à¤ पà¥à¤°à¥à¤µà¤¾à¤µà¤²à¥à¤à¤¨\u0020
+Untitled=बà¥à¤¨à¤¾à¤®
+
+# Default name for new events
+newEvent=नया à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤®
+
+# Titles for the event/task dialog
+newEventDialog=नया à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤®
+editEventDialog=à¤à¤à¤¨à¤¾ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+newTaskDialog=नया à¤à¤¾à¤°à¥à¤¯
+editTaskDialog=à¤à¤¾à¤°à¥à¤¯ समà¥à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+# Do you want to save changes?
+askSaveTitleEvent=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® सहà¥à¤à¥à¤
+askSaveTitleTask=à¤à¤¾à¤°à¥à¤¯ सहà¥à¤à¥à¤
+askSaveMessageEvent=à¤à¤à¤¨à¤¾ सà¤à¤à¥à¤°à¤¹à¤¿à¤¤ नहà¥à¤ हà¥à¤¯à¥ हॠ| à¤à¥à¤¯à¤¾ à¤à¤ª à¤à¤à¤¨à¤¾ सà¤à¤à¥à¤°à¤¹à¤¿à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+askSaveMessageTask=à¤à¤¾à¤°à¥à¤¯ सà¤à¤à¥à¤°à¤¹à¤¿à¤¤ नहà¥à¤ हà¥à¤¯à¥ हॠ| à¤à¥à¤¯à¤¾ à¤à¤ª à¤à¤¾à¤°à¥à¤¯ सà¤à¤à¥à¤°à¤¹à¤¿à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+
+# Event Dialog Warnings
+warningEndBeforeStart=à¤à¤ªà¤¨à¥ à¤à¥ समापà¥à¤¤à¤¿ तिथि à¤à¤°à¥ हॠपà¥à¤°à¤¾à¤°à¤à¤à¤¿à¤ तिथि सॠपहलॠठरहॠहà¥
+
+# The name of the calendar provided with the application by default
+homeCalendarName=à¤à¤°
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=बà¥à¤¨à¤¾à¤® पà¤à¤à¤¾à¤à¤
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =सà¤à¤à¤¾à¤µà¤¿à¤¤
+statusConfirmed =सà¤à¤ªà¥à¤·à¥à¤ à¤à¤°à¥à¤
+eventStatusCancelled=रदà¥à¤¦
+todoStatusCancelled =रदà¥à¤¦
+statusNeedsAction =à¤à¤¾à¤°à¥à¤°à¤µà¤¾à¤ à¤à¥ à¤à¤µà¤¶à¥à¤¯à¤à¤¤à¤¾ हà¥
+statusInProcess =पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ मà¥à¤
+statusCompleted =पà¥à¤°à¥à¤£
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=à¤à¤à¥à¤
+normalPriority=सामानà¥à¤¯
+lowPriority=निमà¥à¤¨
+
+importPrompt=à¤à¤ª à¤à¤¿à¤¸ पà¤à¤à¤¾à¤à¤ मà¥à¤ यॠवसà¥à¤¤à¥à¤à¤ à¤à¤¯à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤ |
+exportPrompt=à¤à¤ª à¤à¤¿à¤¸ पà¤à¤à¤¾à¤à¤ मà¥à¤ सॠनिरà¥à¤¯à¤¾à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+publishPrompt=à¤à¤ª à¤à¤¿à¤¸ पà¤à¤à¤¾à¤à¤ à¤à¥ पà¥à¤°à¤à¤¾à¤¶à¤¿à¤¤ à¤à¤°à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+
+# 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 वसà¥à¤¤à¥à¤à¤ à¤à¤¯à¤¾à¤¤ à¤à¤°à¤¨à¥ मà¥à¤ ठसमरà¥à¤¥. पिà¤à¤²à¥ तà¥à¤°à¥à¤à¤¿ थà¥: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile):
+# %1$S will be replaced with file path
+noItemsInCalendarFile=%1$S सॠà¤à¤¯à¤¤ à¤à¤°à¤¨à¥ मॠठसफल. à¤à¤¸ फाà¤à¤² मॠà¤à¤¯à¤¤ à¤à¤°à¤¨à¥ à¤à¥ वसà¥à¤¤à¥ नहà¥à¤ हà¥.
+
+#spaces needed at the end of the following lines
+eventDescription=वरà¥à¤£à¤¨à¤
+
+unableToRead=फाà¤à¤² सॠपà¥à¤¨à¥ मॠठसमरà¥à¤¥
+unableToWrite=फाà¤à¤² सॠलिà¤à¤¨à¥ मॠठसफल:
+HTMLTitle=Mozilla पà¤à¤à¤¾à¤à¤
+
+# 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 पà¥à¤¾ à¤à¤¾ रहा था |
+
+# 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 वसà¥à¤¤à¥(à¤à¤) नà¤à¤°à¤ à¤à¤¦à¤¾à¤ हà¥à¤ à¤à¤¬à¤¸à¥ वॠदà¥à¤¨à¥à¤ à¤à¤à¤¹à¥à¤ à¤à¥ पà¤à¤à¤¾à¤à¤ मॠà¤à¤° %2$S मà¥à¥à¥à¤¦ हॠ|
+
+unableToCreateProvider=पà¤à¤à¤¾à¤à¤ तà¥à¤¯à¤¾à¤° à¤à¤°à¤¤à¥ समय à¤à¤ तà¥à¤°à¥à¤à¤¿ पायॠà¤à¤¯à¥ थॠà¤à¥ à¤à¥ %1$S पर à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ à¤à¥ लिठसà¥à¤¥à¤¿à¤¤ था. यह à¤à¤ªà¤²à¤¬à¥à¤§ नहà¥à¤ हà¥à¤à¤¾.
+missingCalendarTimezonesError=à¤à¥à¤ समय à¤à¥à¤·à¥à¤¤à¥à¤° पाठनहà¥à¤ à¤à¤! à¤à¥à¤ªà¤¯à¤¾ calendar-timezones.xpi सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¿à¤¤ à¤à¤°à¥à¤.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+TimezoneErrorsAlertTitle=समय à¤à¥à¤·à¥à¤¤à¥à¤° तà¥à¤°à¥à¤à¤¿
+TimezoneErrorsSeeConsole=तà¥à¤°à¥à¤à¤¿ à¤à¤à¤¸à¥à¤² दà¥à¤à¥à¤: ठà¤à¥à¤à¤¾à¤¤ समयà¤à¥à¤·à¥à¤¤à¥à¤° à¤à¥ 'ठसà¥à¤¥à¤¿à¤°' सà¥à¤¥à¤¾à¤¨à¥à¤¯ समयà¤à¥à¤·à¥à¤¤à¥à¤° à¤à¥ तरह बरà¥à¤¤à¤¾à¤µ à¤à¤¿à¤¯à¤¾ à¤à¤¾à¤¤à¤¾ हà¥à¤.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=à¤à¥à¤²à¥à¤à¤¡à¤° निà¤à¤¾à¤²à¥à¤
+removeCalendarButtonDelete=à¤à¥à¤²à¥à¤à¤¡à¤° हà¤à¤¾à¤à¤
+removeCalendarButtonUnsubscribe=सदसà¥à¤¯à¤¤à¤¾ रदà¥à¤¦ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=à¤à¥à¤¯à¤¾ à¤à¤ª à¤à¥à¤²à¥à¤à¤¡à¤° "%1$S" à¤à¥ हà¤à¤¾à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤? सदसà¥à¤¯à¤¤à¤¾ रदà¥à¤¦ à¤à¤°à¤¤à¥ हॠसà¥à¤à¥ सॠà¤à¥à¤²à¥à¤à¤¡à¤° निà¤à¤¾à¤² दिया à¤à¤¾à¤à¤à¤¾, हà¤à¤¾à¤ à¤à¤¾à¤¨à¥ सॠà¤à¤¸à¤à¤¾ डाà¤à¤¾ पà¥à¤°à¥ तरह निà¤à¤¾à¤² दिठà¤à¤¾à¤¯à¥à¤à¤à¥.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=à¤à¥à¤¯à¤¾ à¤à¤ª सà¥à¤¥à¤¾à¤¯à¥ रà¥à¤ª सॠà¤à¥à¤²à¥à¤à¤¡à¤° "%1$S" मिà¤à¤¾à¤¨à¤¾ à¤à¤¾à¤¹à¤¤à¥ हà¥à¤?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+
+# 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'
+
+# LOCALIZATION NOTE (tooNewSchemaButtonRestart):
+# %1$S will be replaced with the name of the host application 'Calendar'
+
+# LOCALIZATION NOTE (tooNewSchemaButtonQuit):
+# %1$S will be replaced with the name of the host application 'Calendar'
+
+# List of events or todos (unifinder)
+
+# Tooltips of events or todos
+tooltipTitle=शà¥à¤°à¥à¤·à¤:
+# 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
+# event calendar name
+# event status: tentative, confirmed, cancelled
+# event organizer
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+
+# 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
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+
+# Remote calendar errors
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+
+# 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
+
+# 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.
+
+# "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).
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+
+# 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).
+
+# "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 ... "
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+
+
+# Print Layout
+
+# Providers
+
+# Used in created html code for list layout print and html export
+
+# Categories
+
+
+#Today pane
+
+
+# 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'.
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+# 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.
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+
+
+# 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
+
+# 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
+
+
+# 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
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+
+# 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
+
+# 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
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+
+
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+# 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
+
+# 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.
+
+# 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.
+
+# 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).
+
+# 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
+
+# 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.
+
+# 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
+
+# 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.
+
+# 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
+
+# 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.
+
+# 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
+
+# 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
+
+# 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
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+# 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
+# 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
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+
+
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+
+# 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
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+
+# 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
+# uses the access key calendar.context.showonly.accesskey
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+
+# 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..fb381c0f864
--- /dev/null
+++ b/calendar/chrome/calendar/calendarCreation.dtd
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/dateFormat.properties b/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 00000000000..7ea979bfbc0
--- /dev/null
+++ b/calendar/chrome/calendar/dateFormat.properties
@@ -0,0 +1,54 @@
+# 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.
+
+# 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.
+
+
+
+
+# Can someone tell me why we're not counting from zero?
+
+# Localizable day's date
+
+# 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=
+
+
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..db93fe230b2
--- /dev/null
+++ b/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/alarms.dtd b/calendar/chrome/calendar/preferences/alarms.dtd
new file mode 100644
index 00000000000..7a6ed4f95c5
--- /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..3e50ddfc7fc
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/categories.dtd
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/general.dtd b/calendar/chrome/calendar/preferences/general.dtd
new file mode 100644
index 00000000000..5e47f35f4cb
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/general.dtd
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/preferences/preferences.dtd b/calendar/chrome/calendar/preferences/preferences.dtd
new file mode 100644
index 00000000000..34018cc4596
--- /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..445171831bd
--- /dev/null
+++ b/calendar/chrome/calendar/preferences/views.dtd
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/calendar/providers/gdata/amo.properties b/calendar/chrome/calendar/providers/gdata/amo.properties
new file mode 100644
index 00000000000..3d41f3ae4df
--- /dev/null
+++ b/calendar/chrome/calendar/providers/gdata/amo.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/.
+
+# 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.
+
+# You can change this if you have localized the FAQ on wiki.mozilla.org
+
+# You can change this if you would like to provide localized support.
+amo.email=
diff --git a/calendar/chrome/lightning/lightning-toolbar.dtd b/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 00000000000..67797f5aa0f
--- /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..89c50a3517e
--- /dev/null
+++ b/calendar/chrome/lightning/lightning.dtd
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/calendar/chrome/lightning/lightning.properties b/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 00000000000..b767d323f6a
--- /dev/null
+++ b/calendar/chrome/lightning/lightning.properties
@@ -0,0 +1,138 @@
+# 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=बिà¤à¤²à¥-à¤à¤¿à¤°à¤¨à¤¾
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.creator=Mozilla पà¤à¤à¤¾à¤à¤ पà¥à¤°à¥à¤à¥à¤à¥à¤
+
+# Lightning branding
+brandShortName=बिà¤à¤²à¥-à¤à¤¿à¤°à¤¨à¤¾
+
+# Task mode title
+taskModeApplicationTitle=à¤à¤¾à¤°à¥à¤¯
+
+# Tab titles
+tabTitleCalendar=पà¤à¤à¤¾à¤à¤
+tabTitleTasks=à¤à¤¾à¤°à¥à¤¯
+
+# Html event display in message
+imipHtml.header=à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® à¤à¤®à¤à¤¤à¥à¤°à¤£
+imipHtml.summary=शà¥à¤°à¥à¤·à¤
+imipHtml.location=सà¥à¤¥à¤¾à¤¨
+imipHtml.when=à¤à¤¬
+imipHtml.organizer=à¤à¤¯à¥à¤âà¤:
+imipHtml.description=विवरण:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=सà¤à¤²à¤à¥à¤¨à¤:
+imipHtml.comment=à¤à¤¿à¤ªà¥à¤ªà¤£à¥:
+imipHtml.attendees=सहà¤à¤¾à¤à¥:
+# 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.url=सà¤à¤¬à¤à¤§à¤¿à¤¤ à¤à¥à¥:
+imipHtml.canceledOccurrences=à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿ रदà¥à¤¦:
+imipHtml.modifiedOccurrences=सà¤à¤¶à¥à¤§à¤¿à¤¤ à¤à¤ªà¤¸à¥à¤¥à¤¿à¤¤à¤¿:
+imipHtml.newLocation=नया सà¥à¤¥à¤¾à¤¨:%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
+
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+
+
+
+
+# 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=ठधिठà¤à¤¾à¤¨à¥à¤
+
+# 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.
diff --git a/devtools/client/VariablesView.dtd b/devtools/client/VariablesView.dtd
new file mode 100644
index 00000000000..6572675d8dc
--- /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..6e5531d0521
--- /dev/null
+++ b/devtools/client/aboutdebugging.dtd
@@ -0,0 +1,5 @@
+
+
+
diff --git a/devtools/client/aboutdebugging.ftl b/devtools/client/aboutdebugging.ftl
new file mode 100644
index 00000000000..5c126aca734
--- /dev/null
+++ b/devtools/client/aboutdebugging.ftl
@@ -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/.
+
+
+### These strings are used inside the about:debugging UI.
+
+
+# Page Title strings
+
+
+# Sidebar strings
+
+# Display name of the runtime for the currently running instance of Firefox. Used in the
+# Sidebar and in the Setup page.
+about-debugging-this-firefox-runtime-name = यह { -brand-shorter-name }
+# Sidebar heading for selecting the currently running instance of Firefox
+about-debugging-sidebar-this-firefox =
+ .name = { about-debugging-this-firefox-runtime-name }
+# Title for runtime sidebar items that are related to a specific device (USB, WiFi).
+about-debugging-sidebar-runtime-item-name =
+ .title = { $displayName } ({ $deviceName })
+# Title for runtime sidebar items where we cannot get device information (network
+# locations).
+about-debugging-sidebar-runtime-item-name-no-device =
+ .title = { $displayName }
+
+# Setup Page strings
+
+# Text of a button displayed after the network locations "Host" input.
+# Clicking on it will add the new network location to the list.
+about-debugging-network-locations-add-button = à¤à¥à¤¡à¤¼à¥à¤
+# Text of a button displayed next to existing network locations in the Connect page.
+# Clicking on it removes the network location from the list.
+about-debugging-network-locations-remove-button = हà¤à¤¾à¤à¤
+
+# Runtime Page strings
+
+# Displayed for runtime info in runtime pages.
+# { $name } is brand name such as "Firefox Nightly"
+# { $version } is version such as "64.0a1"
+about-debugging-runtime-name = { $name } ({ $version })
+
+# Debug Targets strings
+
+# Displayed in the categories of "runtime" pages that don't have any debug target to
+# show. Debug targets depend on the category (extensions, tabs, workers...).
+about-debugging-debug-target-list-empty = ठà¤à¥ तठà¤à¥à¤ नहà¥à¤.
+# Text of a button displayed next to debug targets of "runtime" pages. Clicking on this
+# button will open a DevTools toolbox that will allow inspecting the target.
+# A target can be an addon, a tab, a worker...
+about-debugging-debug-target-inspect-button = à¤à¤¾à¤à¤à¥à¤
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will uninstall the extension and remove it from the page.
+about-debugging-tmp-extension-remove-button = हà¤à¤¾à¤à¤
+# Text displayed for extensions (temporary extensions only) in "runtime" pages, before
+# displaying the location of the temporary extension.
+about-debugging-extension-location =
+ .label = सà¥à¤¥à¤¾à¤¨
+# Label text used for default state of details of message component.
+about-debugging-message-details-label = विवरण
diff --git a/devtools/client/aboutdebugging.properties b/devtools/client/aboutdebugging.properties
new file mode 100644
index 00000000000..902621b41da
--- /dev/null
+++ b/devtools/client/aboutdebugging.properties
@@ -0,0 +1,218 @@
+# 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 = दà¥à¤·à¤¸à¥à¤§à¤¾à¤°
+
+# LOCALIZATION NOTE (push):
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+push = दबाà¤à¤
+
+# LOCALIZATION NOTE (start):
+# This string is displayed as a label of the button that starts a service worker.
+start = पà¥à¤°à¤¾à¤°à¤à¤
+
+scope = पà¥à¤°à¤¯à¥à¤à¤¨\u0020
+unregister = ठपà¤à¤à¥à¤à¥à¤¤
+
+pushService = सà¥à¤µà¤¾ दबाà¤à¤
+
+# LOCALIZATION NOTE (fetch):
+# Fetch is an event type and should not be translated.
+fetch = पाà¤à¤
+
+# LOCALIZATION NOTE (listeningForFetchEvents):
+# This is used to display the state of the SW in regard to fetch events.
+listeningForFetchEvents = à¤à¥à¤ à¤à¤¯à¥à¤à¤¨à¥ à¤à¥ बारॠमà¥à¤ सà¥à¤¨à¤¨à¤¾à¥¤
+
+# LOCALIZATION NOTE (notListeningForFetchEvents):
+# This is used to display the state of the SW in regard to fetch events.
+notListeningForFetchEvents = à¤à¥à¤ à¤à¤¯à¥à¤à¤¨à¥ à¤à¥ बारॠमà¥à¤ नहà¥à¤ सà¥à¤¨à¤¨à¤¾à¥¤
+
+# LOCALIZATION NOTE (addons):
+# This string is displayed as a header of the about:debugging#addons page.
+addons = सहयà¥à¤à¥à¤¤à¤¿à¤¯à¤¾à¤
+
+# 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 = सहयà¥à¤à¥à¤¤à¤¿ दà¥à¤·à¤¸à¥à¤§à¤¾à¤° सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+
+# 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 = à¤à¤¸à¥ à¤à¤¾à¤²à¥ à¤à¤°à¤¨à¥ सॠसहयà¥à¤à¥à¤¤à¤¿à¤¯à¤¾à¤ à¤à¤° à¤à¥à¤°à¥à¤® बà¥à¤°à¤¾à¤à¤à¤¼à¤° à¤à¥ ठनà¥à¤¯ विà¤à¤¿à¤¨à¥à¤¨ à¤à¤¾à¤à¥à¤ à¤à¤¾ दà¥à¤·à¤¸à¥à¤§à¤¾à¤° à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¤ªà¤à¥ ठनà¥à¤®à¤¤à¤¿ दà¥à¤à¤¾
+
+# 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)
+addonDebugging.learnMore = ठधिठà¤à¤¾à¤¨à¥à¤
+
+# LOCALIZATION NOTE (loadTemporaryAddon):
+# This string is displayed as a label of a button that allows the user to
+# load additional add-ons.
+loadTemporaryAddon = ठसà¥à¤¥à¤¾à¤¯à¥ à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¿ लà¥à¤¡ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (loadTemporaryAddon2):
+# This string is displayed as a label of a button that allows the user to
+# load additional add-ons.
+
+# LOCALIZATION NOTE (addonInstallError):
+# This string is displayed when an error occurs while installing an addon.
+# %S will be replaced with the error message.
+addonInstallError = सà¤à¤¸à¥à¤¥à¤¾à¤ªà¤¨ à¤à¥ दà¥à¤°à¤¾à¤¨ à¤à¤ तà¥à¤°à¥à¤à¤¿ थà¥: %S
+
+# 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.
+retryTemporaryInstall = पà¥à¤¨à¤ à¤à¥à¤¶à¤¿à¤¶ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (extensions):
+# This string is displayed as a header above the list of loaded add-ons.
+extensions = विसà¥à¤¤à¤¾à¤°
+
+# LOCALIZATION NOTE (temporaryExtensions):
+# This string is displayed as a header above the list of temporarily loaded add-ons.
+temporaryExtensions = ठसà¥à¤¥à¤¾à¤¯à¥ à¤à¤à¥à¤¸à¤à¥à¤à¤¶à¤¨
+
+# LOCALIZATION NOTE (systemExtensions):
+# This string is displayed as a header above the list of system add-ons.
+systemExtensions = सिसà¥à¤à¤® à¤à¤à¥à¤¸à¤à¥à¤à¤¶à¤¨
+
+# 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.
+internalUUID = à¤à¤à¤¤à¤°à¤¿à¤ UUID
+
+# 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.
+extensionID = à¤à¤à¥à¤¸à¤à¥à¤à¤¶à¤¨ ID
+
+# 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.
+manifestURL = मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ URL
+
+# 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
+webExtTip = à¤à¤ª à¤à¤®à¤¾à¤à¤¡ लाà¤à¤¨ सॠठसà¥à¤¥à¤¾à¤¯à¥ WebExtensions लà¥à¤¡ à¤à¤°à¤¨à¥ à¤à¥ लिठ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)
+webExtTip.learnMore = ठधिठà¤à¤¾à¤¨à¥à¤
+
+# LOCALIZATION NOTE (temporaryID):
+# This string is displayed as a message about the add-on having a temporaryID.
+temporaryID = यह WebExtension à¤à¥ à¤à¤ ठसà¥à¤¥à¤¾à¤ à¤à¤à¤¡à¥ हà¥à¤.
+
+# LOCALIZATION NOTE (temporaryID.learnMore):
+# This string is displayed as a link next to the temporaryID message and leads
+# the user to MDN.
+temporaryID.learnMore = ठधिठà¤à¤¾à¤¨à¥à¤
+
+# LOCALIZATION NOTE (legacyExtensionWarning):
+# This string is displayed as a warning message when loading a temporary legacy extension.
+legacyExtensionWarning = यह à¤à¤ पà¥à¤°à¤¾à¤¤à¤¨ à¤à¤à¥à¤¸à¤à¥à¤à¤¶à¤¨ हà¥, धà¥à¤¯à¤¾à¤¨ रà¤à¥à¤ à¤à¤¿ यॠठब पà¥à¤°à¥ तरह समरà¥à¤¥à¤¿à¤¤ नहà¥à¤ हà¥à¤. à¤à¥à¤ªà¤¯à¤¾ लिà¤à¤ à¤à¤¿à¤ à¤à¤ दसà¥à¤¤à¤¾à¤µà¥à¤à¤¼ à¤à¥ पढ़à¥à¤ à¤à¤° फिर सावधानॠà¤à¥ साथ à¤à¤à¥ बढ़à¥à¤.
+
+# LOCALIZATION NOTE (legacyExtensionWarning.learnMore):
+# This string is displayed as a link next to the legacyExtensionWarning message and leads
+# the user to https://wiki.mozilla.org/Add-ons/Future_of_Bootstrap.
+legacyExtensionWarning.learnMore = ठधिठà¤à¤¾à¤¨à¥à¤
+
+# 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 = à¤à¥à¤·à¤£à¤¾à¤ªà¤¤à¥à¤° फ़ाà¤à¤² या पà¥à¤à¥à¤ à¤à¥à¤¨à¥à¤ (.xpi)
+
+# LOCALIZATION NOTE (reload):
+# This string is displayed as a label of the button that reloads a given addon.
+reload = फिर लà¥à¤¡ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (remove):
+# This string is displayed as a label of the button that will remove a given addon.
+remove = हà¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (location):
+# This string is displayed as a label for the filesystem location of an extension.
+location = सà¥à¤¥à¤¾à¤¨
+
+# LOCALIZATION NOTE (workers):
+# This string is displayed as a header of the about:debugging#workers page.
+workers = शà¥à¤°à¤®à¤¿à¤
+
+serviceWorkers = सà¥à¤µà¤¾ शà¥à¤°à¤®à¤¿à¤
+sharedWorkers = साà¤à¤¾ शà¥à¤°à¤®à¤¿à¤
+otherWorkers = ठनà¥à¤¯ शà¥à¤°à¤®à¤¿à¤
+
+# LOCALIZATION NOTE (running):
+# This string is displayed as the state of a service worker in RUNNING state.
+running = à¤à¤² रहा हà¥
+
+# LOCALIZATION NOTE (stopped):
+# This string is displayed as the state of a service worker in STOPPED state.
+stopped = रà¥à¤à¤¾ हà¥à¤
+
+# 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.
+registering = पà¤à¤à¥à¤à¥à¤¤ à¤à¤°à¤¾à¤¨à¤¾
+
+# LOCALIZATION NOTE (tabs):
+# This string is displayed as a header of the about:debugging#tabs page.
+tabs = à¤à¥à¤¬à¥à¤¸
+
+# LOCALIZATION NOTE (pageNotFound):
+# This string is displayed as the main message at any error/invalid page.
+pageNotFound = पà¥à¤·à¥à¤ नहà¥à¤ मिला\u0020
+
+# 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 ठसà¥à¤¤à¤¿à¤¤à¥à¤µ मà¥à¤ नहà¥à¤ हà¥!
+
+# LOCALIZATION NOTE (nothing):
+# This string is displayed when the list of workers is empty.
+nothing = ठà¤à¥ तठà¤à¥à¤ नहà¥à¤|
+
+# 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
+configurationIsNotCompatible.label = à¤à¤ªà¤à¤¾ बà¥à¤°à¤¾à¤à¤à¤¼à¤° विनà¥à¤¯à¤¾à¤¸ सà¥à¤µà¤¾ शà¥à¤°à¤®à¤¿à¤à¥à¤ à¤à¥ साथ ठसà¤à¤à¤¤ हà¥.
+
+# 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)
+configurationIsNotCompatible.learnMore = ठधिठà¤à¤¾à¤¨à¥à¤
+
+# LOCALIZATION NOTE (multiProcessWarningTitle):
+# This string is displayed as a warning message on top of the about:debugging#workers
+# page when multi-e10s is enabled
+multiProcessWarningTitle = सà¥à¤µà¤¾ शà¥à¤°à¤®à¤¿à¤ दà¥à¤·à¤¸à¥à¤§à¤¾à¤° à¤à¤¸ समय à¤à¤à¤¾à¤§à¤¿à¤ सामà¤à¥à¤°à¥ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾à¤à¤ à¤à¥ साथ सà¤à¤à¤¤ नहà¥à¤ हà¥.
+
+# LOCALIZATION NOTE (multiProcessWarningMessage2):
+# This string is displayed in the warning section for multi-e10s in
+# about:debugging#workers
+multiProcessWarningMessage2 = वरà¥à¤¤à¤®à¤¾à¤¨ सà¤à¤¸à¥à¤à¤°à¤£ à¤à¥ लिठà¤à¤à¤² सामà¤à¥à¤°à¥ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¥ लाà¤à¥ à¤à¤°à¤¨à¥ à¤à¥ लिठâdom.ipc.multiOptOutâ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤à¥ सà¤à¤¶à¥à¤§à¤¿à¤¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥.
+
+# LOCALIZATION NOTE (multiProcessWarningUpdateLink2):
+# 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.
+multiProcessWarningUpdateLink2 = à¤à¤à¤¾à¤§à¤¿à¤ सामà¤à¥à¤°à¥ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾à¤à¤ सॠबाहर रहà¥à¤
+
+# LOCALIZATION NOTE (multiProcessWarningConfirmUpdate2):
+# This string is displayed as a confirmation message when the user clicks on
+# the multiProcessWarningUpdateLink in about:debugging#workers
+multiProcessWarningConfirmUpdate2 = à¤à¤à¤¾à¤§à¤¿à¤ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾à¤à¤ सॠबाहर रहà¥à¤?
diff --git a/devtools/client/accessibility.properties b/devtools/client/accessibility.properties
new file mode 100644
index 00000000000..7bb45d960ce
--- /dev/null
+++ b/devtools/client/accessibility.properties
@@ -0,0 +1,197 @@
+# 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 Accessibility panel
+# which is available from the Web Developer sub-menu -> 'Accessibility'.
+# 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 (accessibility.role): A title text used for Accessibility
+# tree header column that represents accessible element role.
+accessibility.role=à¤à¥à¤®à¤¿à¤à¤¾
+
+# LOCALIZATION NOTE (accessibility.name): A title text used for Accessibility
+# tree header column that represents accessible element name.
+accessibility.name=नाम
+
+# LOCALIZATION NOTE (accessibility.logo): A title text used for Accessibility
+# logo used on the accessibility panel landing page.
+accessibility.logo=सरल à¤à¤ªà¤¯à¥à¤ à¤à¤¿à¤¨à¥à¤¹
+
+# LOCALIZATION NOTE (accessibility.properties): A title text used for header
+# for Accessibility details sidebar.
+accessibility.properties=à¤à¥à¤£
+
+# LOCALIZATION NOTE (accessibility.treeName): A title text used for
+# Accessibility tree (that represents accessible element name) container.
+accessibility.treeName=ठà¤à¤¿à¤à¤®à¥à¤¯à¤¤à¤¾ शà¥à¤°à¥à¤à¤à¤²à¤¾
+
+# LOCALIZATION NOTE (accessibility.accessible.notAvailable): A title text
+# displayed when accessible sidebar panel does not have an accessible object to
+# display.
+accessibility.accessible.notAvailable=सà¥à¤²à¤ à¤à¤¾à¤¨à¤à¤¾à¤°à¥ ठनà¥à¤ªà¤²à¤¬à¥à¤§
+
+# LOCALIZATION NOTE (accessibility.enable): A title text for Enable
+# accessibility button used to enable accessibility service.
+accessibility.enable=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¿à¤§à¤¾à¤à¤ à¤à¤¾à¤²à¥ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (accessibility.enabling): A title text for Enable
+# accessibility button used when accessibility service is being enabled.
+accessibility.enabling=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¿à¤§à¤¾ शà¥à¤°à¥ हॠरहॠहà¥â¦
+
+# LOCALIZATION NOTE (accessibility.disable): A title text for Disable
+# accessibility button used to disable accessibility service.
+accessibility.disable=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¿à¤§à¤¾à¤à¤ बà¤à¤¦ à¤à¤°à¥
+
+# LOCALIZATION NOTE (accessibility.disabling): A title text for Disable
+# accessibility button used when accessibility service is being
+# disabled.
+accessibility.disabling=सरल à¤à¤ªà¤¯à¥à¤ बà¤à¤¦ हॠरहॠहà¥â¦
+
+# LOCALIZATION NOTE (accessibility.pick): A title text for Picker button
+# button used to pick accessible objects from the page.
+accessibility.pick=पà¥à¤·à¥à¤ सॠसà¥à¤²à¤ वसà¥à¤¤à¥ à¤à¥à¤¨à¥à¤
+
+# LOCALIZATION NOTE (accessibility.disable.disabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can not
+# be disabled. It is the case when a user is using a 3rd party accessibility
+# tool such as screen reader.
+accessibility.disable.disabledTitle=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¾ बà¤à¤¦ नहà¥à¤ à¤à¥ à¤à¤¾ सà¤à¤¤à¥ । यह डà¥à¤µà¤²à¤ªà¤° सà¥à¤µà¤¾ सॠबाहर à¤à¤ªà¤¯à¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ रहा हॠ।
+
+# LOCALIZATION NOTE (accessibility.disable.enabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can be
+# disabled.
+accessibility.disable.enabledTitle=सà¤à¥ à¤à¥à¤¬ à¤à¤° विà¤à¤¡à¥ à¤à¥ लिठसरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¾ बà¤à¤¦ à¤à¤° दॠà¤à¤¾à¤à¤à¥
+
+# LOCALIZATION NOTE (accessibility.enable.disabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can not
+# be enabled.
+accessibility.enable.disabledTitle=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¾ पà¥à¤°à¤¾à¤°à¤à¤ नहà¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ यह पहà¥à¤à¤ यà¥à¤à¥à¤¯à¤¤à¤¾ सà¥à¤µà¤¾à¤à¤ à¤à¥ दà¥à¤µà¤¾à¤°à¤¾ सॠबà¤à¤¦ हà¥
+
+# LOCALIZATION NOTE (accessibility.enable.enabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can be
+# enabled.
+accessibility.enable.enabledTitle=सà¤à¥ à¤à¥à¤¬ à¤à¤° विà¤à¤¡à¥ à¤à¥ लिठसरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¾ à¤à¤¾à¤²à¥ à¤à¥ à¤à¤¾à¤à¤à¥
+
+# LOCALIZATION NOTE (accessibility.learnMore): A text that is used as is or as textual
+# description in places that link to accessibility inspector documentation.
+accessibility.learnMore=ठधिठà¤à¤¾à¤¨à¥à¤
+
+# LOCALIZATION NOTE (accessibility.description.general): A title text used when
+# accessibility service description is provided before accessibility inspector
+# is enabled.
+accessibility.description.general=सरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¿à¤§à¤¾à¤à¤ सामानà¥à¤¯ रà¥à¤ª सॠनिषà¥à¤à¥à¤°à¤¿à¤¯ हà¥à¤¤à¥ हà¥à¤ à¤à¥à¤¯à¥à¤à¤à¤¿ वॠà¤à¤¾à¤°à¥à¤¯ à¤à¥ नà¤à¤¾à¤°à¤¾à¤¤à¥à¤®à¤ रà¥à¤ª सॠपà¥à¤°à¤à¤¾à¤µà¤¿à¤¤ à¤à¤°à¤¤à¥ हà¥à¤à¥¤ ठनà¥à¤¯ डà¥à¤µà¤²à¤ªà¤° à¤à¤ªà¤à¤°à¤£ पà¥à¤¨à¤²à¥à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ सॠपहलॠसरल à¤à¤ªà¤¯à¥à¤ सà¥à¤µà¤¿à¤§à¤¾à¤à¤ à¤à¥ बà¤à¤¦ à¤à¤°à¤¨à¥ पर विà¤à¤¾à¤° à¤à¤°à¥à¤à¥¤
+
+# LOCALIZATION NOTE (accessibility.description.general.p1): A title text for the first
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+
+# LOCALIZATION NOTE (accessibility.description.general.p2): A title text for the second
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled.
+
+# LOCALIZATION NOTE (accessibility.description.oldVersion): A title text used
+# when accessibility service description is provided when a client is connected
+# to an older version of accessibility actor.
+accessibility.description.oldVersion=à¤à¤ª à¤à¥ डिबà¤à¤° सरà¥à¤µà¤° सॠà¤à¥à¤¡à¤¼à¥ हà¥à¤ हà¥à¤ वह बहà¥à¤¤ पà¥à¤°à¤¾à¤¨à¤¾ हà¥à¥¤ सरल à¤à¤ªà¤¯à¥à¤ पà¥à¤¨à¤² à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ à¤à¥ लिà¤, à¤à¥à¤ªà¤¯à¤¾ नवà¥à¤¨à¤¤à¤® डà¥à¤¬à¤à¤° सरà¥à¤µà¤° सà¤à¤¸à¥à¤à¤°à¤£ सॠà¤à¥à¤¡à¤¼à¥à¥¤
+
+# LOCALIZATION NOTE (accessibility.tree.menu.printToJSON): A title text used when a
+# context menu item for printing an accessible tree to JSON is rendered after triggering a
+# context menu for an accessible tree row.
+
+# LOCALIZATION NOTE (accessibility.checks): A title text used for header for checks
+# section in Accessibility details sidebar.
+
+# LOCALIZATION NOTE (accessibility.checks.empty): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+
+# LOCALIZATION NOTE (accessibility.checks.empty2): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+
+# LOCALIZATION NOTE (accessibility.contrast.header): A title text used for header for
+# checks related to color and contrast.
+
+# LOCALIZATION NOTE (accessibility.contrast.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+
+# LOCALIZATION NOTE (accessibility.contrast.large.text): A title text for the color
+# contrast ratio label indicating that the color contrast criteria used is if for large
+# text. This is lower case because it's used as a label for a tree item in accessibility
+# tree.
+
+# LOCALIZATION NOTE (accessibility.contrast.large.title): A title text for the tooltip
+# used for the large text label (see accessibility.contrast.large.text).
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AA): A title text for the paragraph
+# describing that the given colour contrast satisfies AA standard from Web Content
+# Accessibility Guidelines. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AAA): A title text for the
+# paragraph describing that the given colour contrast satisfies AAA standard from Web
+# Content Accessibility Guidelines. %S in the content will be replaced by a link at run
+# time with the accessibility.learnMore string.
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.fail): A title text for the
+# paragraph describing that the given colour contrast fails to meet the minimum level from
+# Web Content Accessibility Guidelines. %S in the content will be replaced by a link at
+# run time with the accessibility.learnMore string.
+
+# LOCALIZATION NOTE (accessibility.badges): A title text for the group of badges
+# that are rendered for each accessible row within the accessibility tree when
+# one or more accessibility checks fail.
+
+# LOCALIZATION NOTE (accessibility.filter.all): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a button that
+# filters the tree based on all accessibility failures within it.
+accessibility.filter.all=सà¤à¥
+
+# LOCALIZATION NOTE (accessibility.badge.contrast): A title text for the badge
+# that is rendered within the accessible row in the accessibility tree for a
+# given accessible object that does not satisfy the WCAG guideline for colour
+# contrast.
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.warning): A label for the
+# badge and attached warning icon that is rendered within the accessible row in
+# the accessibility tree for a given accessible object that does not satisfy the
+# WCAG guideline for colour contrast.
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for text
+# alternative.
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.tooltip): A title text for the
+# badge tooltip that is rendered on mouse hover over the badge in the accessible
+# row in the accessibility tree for a given accessible object that does not
+# satisfy the WCAG guideline for colour contrast.
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for text alternative.
+
+# LOCALIZATION NOTE (accessibility.tree.filters): A title text for the toolbar
+# within the main accessibility panel that contains a list of filters to be for
+# accessibility audit.
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is starting up.
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is running showing
+# the number of nodes being audited. Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+
+# LOCALIZATION NOTE (accessibility.progress.finishing): A title text for the
+# accessibility panel overlay shown when accessibility audit is finishing up.
+
+# LOCALIZATION NOTE (accessibility.beta): A title text for the features in the
+# accessibility panel that are currently in beta.
diff --git a/devtools/client/animationinspector.properties b/devtools/client/animationinspector.properties
new file mode 100644
index 00000000000..94bc0bd657e
--- /dev/null
+++ b/devtools/client/animationinspector.properties
@@ -0,0 +1,219 @@
+# 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=वरà¥à¤¤à¤®à¤¾à¤¨ ततà¥à¤µ à¤à¥ लिठà¤à¥à¤ à¤à¤²-à¤à¤µà¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ हà¥à¤.
+
+# 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.
+panel.selectElement=पà¥à¤·à¥à¤ सॠदà¥à¤¸à¤°à¤¾ ततà¥à¤µ à¤à¥à¤¨à¥à¤.
+
+# LOCALIZATION NOTE (panel.noAnimation):
+# This is the label shown in the panel when there are no displayable animations.
+# (e.g. In case of user selected a non-element node or a node that is not animated).
+panel.noAnimation=वरà¥à¤¤à¤®à¤¾à¤¨ ततà¥à¤µ à¤à¥ लिठà¤à¥à¤ à¤à¤¨à¤¿à¤®à¥à¤¶à¤¨ नहà¥à¤ मिलà¥.\nपà¥à¤·à¥à¤ सॠठनà¥à¤¯ ततà¥à¤µ à¤à¥à¤¨à¥à¤.
+
+# 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.
+panel.allAnimations=सà¤à¥ à¤à¤²-à¤à¤µà¤¿
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=ठवधिà¤
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in a tooltip on animation player widget, in case the
+# duration of the animation is infinite.
+player.infiniteDurationText=â
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=दà¥à¤°à¥à¤
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=समापन विलà¤à¤¬:
+
+# 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=पà¥à¤²à¥à¤¬à¥à¤ दर
+
+# 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=दà¥à¤¹à¤°à¤¾à¤à¤:
+
+# 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=पà¥à¤¨à¤°à¤¾à¤µà¥à¤¤à¥à¤¤à¤¿ पà¥à¤°à¤¾à¤°à¤à¤: %1$S (%2$Ss)
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel2):
+# 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 without time unit
+# e.g.
+# If iterationStart of animation is 0.5 and duration is 1 sec, the string will be
+# "Iteration start: 0.5 (0.5s)"
+
+# 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.
+player.animationOverallEasingLabel=वà¥à¤¯à¤¾à¤ªà¤ सरलà¥à¤à¤°à¤£:
+
+# LOCALIZATION NOTE (player.animationTimingFunctionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the
+# animation-timing-function for CSS Animations.
+player.animationTimingFunctionLabel=à¤à¤¨à¤¿à¤®à¥à¤¶à¤¨ समय फ़à¤à¤à¥à¤¶à¤¨:
+
+# 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.
+player.animationFillLabel=à¤à¤°à¥à¤:
+
+# 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.
+player.animationDirectionLabel=दिशाà¤
+
+# 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.infiniteDurationText):
+# This string is displayed in animation player widget, in case the duration of the
+# animation is infinite.
+player.infiniteTimeLabel=â
+
+# 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=यह à¤à¤¨à¥à¤®à¥à¤¶à¤¨ à¤à¤à¤ªà¥à¤à¤¼à¤¿à¤à¤° थà¥à¤°à¥à¤¡ पर à¤à¤² रहा हà¥
+
+# 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=सà¤à¥ सà¤à¤²à¤à¤¿à¤¤à¥à¤° विशà¥à¤·à¤¤à¤¾à¤à¤ ठनà¥à¤à¥à¤²à¤¿à¤¤ हà¥à¤\u0020
+
+# 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=à¤à¥à¤ सà¤à¤²à¤à¤¿à¤¤à¥à¤° विशà¥à¤·à¤¤à¤¾à¤à¤ ठनà¥à¤à¥à¤²à¤¿à¤¤ हà¥à¤\u0020
+
+# 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=सà¤à¤²à¤à¤¿à¤¤à¥à¤° à¤à¤²à¤¨à¥ à¤à¥ दर à¤à¥ वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¿à¤¤ à¤à¤°à¥
+
+# LOCALIZATION NOTE (timeline.pausedButtonTooltip):
+# 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=सà¤à¤²à¤à¤¿à¤¤à¥à¤° à¤à¥ पà¥à¤¨à¤ à¤à¤°à¤®à¥à¤ à¤à¤°à¥
+
+# LOCALIZATION NOTE (timeline.resumedButtonTooltip):
+# 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=सà¤à¤²à¤à¤¿à¤¤à¥à¤° à¤à¥ विराम दà¥à¤
+
+# 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=सà¤à¤²à¤à¤¿à¤¤à¥à¤° à¤à¥ à¤à¤²à¥à¤à¤¾ फिराà¤
+
+# 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 à¤à¤²-à¤à¤µà¤¿
+
+# 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 सà¤à¤à¥à¤°à¤®à¤£
+
+# 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 - लिपि सà¤à¤²à¤à¤¿à¤¤à¥à¤°\u0020
+
+# 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=लिपि सà¤à¤²à¤à¤¿à¤¤à¥à¤°
+
+# 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 "%"
+detail.propertiesHeader.percentage=%S%%
+
+# LOCALIZATION NOTE (detail.headerTitle):
+# This string is displayed on header label in .animation-detail-header.
+detail.headerTitle=à¤à¤¨à¤¿à¤®à¥à¤à¥à¤¡ à¤à¥à¤£ à¤à¥ लिà¤
+
+# LOCALIZATION NOTE (detail.header.closeLabel):
+# This string is displayed in a tooltip of close button for animated properties
+detail.header.closeLabel=à¤à¤¨à¤¿à¤®à¥à¤à¥à¤¡ à¤à¥à¤£ पà¥à¤¨à¤² बà¤à¤¦ à¤à¤°à¥
diff --git a/devtools/client/app-manager.properties b/devtools/client/app-manager.properties
new file mode 100644
index 00000000000..9fb59dd5682
--- /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=परियà¥à¤à¤¨à¤¾ फ़à¥à¤²à¥à¤¡à¤° मà¥à¤à¥à¤¦ नहà¥à¤ हà¥
+validator.expectProjectFolder=परियà¥à¤à¤¨à¤¾ फ़à¥à¤²à¥à¤¡à¤° à¤à¤ फाà¤à¤² à¤à¥ रà¥à¤ª मà¥à¤ समापà¥à¤¤ हà¥à¤¤à¤¾ हà¥
+validator.noManifestFile=à¤à¤¸ पà¥à¤°à¥à¤à¥à¤à¥à¤ à¤à¥ मà¥à¤à¥à¤¯ फ़à¥à¤²à¥à¤¡à¤° मà¥à¤ à¤à¤ मà¥à¤¨à¥à¤«à¥à¤¸à¥à¤ फाà¤à¤² à¤à¥ à¥à¤°à¥à¤°à¤¤ हà¥, à¤à¤¿à¤¸à¤à¤¾ नाम 'manifest.webapp' हà¥à¤à¤¾ पà¥à¤à¥à¤ à¤à¤ª ठलिठया फिर 'manifest.json' नाम हà¥à¤à¤¾ à¤à¤¡-à¤à¤¨à¥à¤¸ à¤à¥ लिà¤.
+validator.invalidManifestURL=ठवà¥à¤§ मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ URL â%Sâ
+# LOCALIZATION NOTE (validator.invalidManifestJSON, validator.noAccessManifestURL):
+# %1$S is the error message, %2$S is the URI of the manifest.
+validator.invalidManifestJSON=वà¥à¤¬ ठनà¥à¤ªà¥à¤°à¤¯à¥à¤ मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ à¤à¤ मानà¥à¤¯ JSON फ़ाà¤à¤² नहà¥à¤ हà¥.: %1$S पर: %2$S
+validator.noAccessManifestURL=मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ फ़ाà¤à¤² पढ़नॠमà¥à¤ ठसमरà¥à¤¥: %1$S पर: %2$S
+# LOCALIZATION NOTE (validator.invalidHostedManifestURL): %1$S is the URI of
+# the manifest, %2$S is the error message.
+validator.invalidHostedManifestURL=ठवà¥à¤§ हà¥à¤¸à¥à¤ à¤à¥ हà¥à¤ मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ URL â%1$Sâ: %2$S
+validator.invalidProjectType=ठà¤à¥à¤à¤¾à¤¤ परियà¥à¤à¤¨à¤¾ पà¥à¤°à¤à¤¾à¤° '%S'
+# LOCALIZATION NOTE (validator.missNameManifestProperty, validator.missIconsManifestProperty):
+# don't translate 'icons' and 'name'.
+validator.missNameManifestProperty=मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ मà¥à¤ ठनिवारà¥à¤¯ 'नाम' à¤à¥à¤®.
+validator.missIconsManifestProperty=मà¥à¤¨à¤¿à¤«à¤¼à¥à¤¸à¥à¤ मà¥à¤ 'à¤à¤à¤à¥à¤¨' à¤à¥à¤®.
+validator.missIconMarketplace2=मारà¥à¤à¥à¤à¤ªà¥à¤²à¥à¤¸ à¤à¤ªà¥à¤²à¤¿à¤à¥à¤¶à¤¨ à¤à¥ पà¥à¤°à¤¸à¥à¤¤à¥à¤¤ à¤à¤°à¤¨à¥ मà¥à¤ à¤à¤ 128px à¤à¤à¤à¤¨ à¤à¥ à¤à¤°à¥à¤°à¤¤
+validator.invalidAppType=ठà¤à¥à¤à¤¾à¤¤ ठनà¥à¤ªà¥à¤°à¤¯à¥à¤ पà¥à¤°à¤à¤¾à¤°: '%S'.
+validator.invalidHostedPriviledges=हà¥à¤¸à¥à¤ à¤à¤¿à¤¯à¤¾ ठनà¥à¤ªà¥à¤°à¤¯à¥à¤ '%S' पà¥à¤°à¤à¤¾à¤° नहà¥à¤ हॠसà¤à¤¤à¤¾ हà¥.
+validator.noCertifiedSupport='पà¥à¤°à¤®à¤¾à¤£à¤¿à¤¤' ठनà¥à¤ªà¥à¤°à¤¯à¥à¤ पà¥à¤°à¥ तरह सॠठनà¥à¤ªà¥à¤°à¤¯à¥à¤ पà¥à¤°à¤¬à¤à¤§à¤ पर समरà¥à¤¥à¤¿à¤¤ नहà¥à¤ हà¥à¤.
+validator.nonAbsoluteLaunchPath='/' à¤à¥ साथ निरपà¥à¤à¥à¤· पथ à¤à¥ साथ à¤à¤°à¤à¤ हà¥à¤¨à¥ à¤à¥ लिठपथ लà¥à¤¨à¥à¤ à¤à¤°à¥à¤: '%S'
+validator.accessFailedLaunchPath=शà¥à¤°à¥à¤à¤¤ à¤à¥ à¤à¤ªà¥à¤ªà¥à¤¸ दसà¥à¤¤à¤¾à¤µà¥à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ मà¥à¤ ठसमरà¥à¤¥ '%S'
+# LOCALIZATION NOTE (validator.accessFailedLaunchPathBadHttpCode): %1$S is the URI of
+# the launch document, %2$S is the http error code.
+validator.accessFailedLaunchPathBadHttpCode=शà¥à¤°à¥à¤à¤¤ à¤à¥ à¤à¤ªà¥à¤ªà¥à¤¸ दसà¥à¤¤à¤¾à¤µà¥à¤ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤¨à¥ मà¥à¤ ठसमरà¥à¤¥ '%1$S', got HTTP code %2$S
diff --git a/devtools/client/application.ftl b/devtools/client/application.ftl
new file mode 100644
index 00000000000..ddfceaf83e2
--- /dev/null
+++ b/devtools/client/application.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+
+### These strings are used inside the Application panel which is available
+### by setting the preference `devtools-application-enabled` to true.
+
+
+### 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.
+
+# Text for the button to unregister a Service Worker. Displayed for active Service Workers.
+serviceworker-worker-unregister = ठपà¤à¤à¥à¤à¥à¤¤
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start = शà¥à¤°à¥ à¤à¤°à¥à¤
+# Text displayed next to the URL for the source of the service worker (e-g. "Source my/path/to/worker-js")
+serviceworker-worker-source = सà¥à¤°à¥à¤¤
+# Text displayed next to the current status of the service worker.
+serviceworker-worker-status = सà¥à¤¥à¤¿à¤¤à¤¿
+
+## Service Worker status strings: all serviceworker-worker-status-* strings are also
+## defined in aboutdebugging.properties and should be synchronized with them.
+
+# Service Worker status. A running service worker is registered, currently executed, can
+# be debugged and stopped.
+serviceworker-worker-status-running = à¤à¥à¤°à¤¿à¤¯à¤¾à¤¶à¥à¤²
+# Service Worker status. A stopped service worker is registered but not currently active.
+serviceworker-worker-status-stopped = रà¥à¤à¥ हà¥à¤
+# Service Worker status. A registering service worker is not yet registered and cannot be
+# started or debugged.
+serviceworker-worker-status-registering = पà¤à¤à¥à¤à¥à¤¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ रहा हà¥
diff --git a/devtools/client/boxmodel.properties b/devtools/client/boxmodel.properties
new file mode 100644
index 00000000000..d1fa9dd547b
--- /dev/null
+++ b/devtools/client/boxmodel.properties
@@ -0,0 +1,51 @@
+# 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=बà¥à¤à¥à¤¸ मà¥à¤¡à¤²
+
+# LOCALIZATION NOTE (boxmodel.position) This refers to the position in the box model and
+# might be displayed as a label or as a tooltip.
+boxmodel.position=सà¥à¤¥à¤¿à¤¤à¤¿
+
+# 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=हाशिया
+
+# 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=à¤à¤¿à¤¨à¤¾à¤°à¤¾
+
+# 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=पà¥à¤¡à¤¿à¤à¤
+
+# 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=ठà¤à¤¤à¤°à¥à¤µà¤¸à¥à¤¤à¥
+
+# 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=सà¥à¤¥à¤¿à¤¤à¤¿ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+# 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
+boxmodel.propertiesLabel=बà¥à¤à¥à¤¸ मà¥à¤¡à¤² à¤à¥à¤£à¤§à¤°à¥à¤®
+
+# 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.
+boxmodel.offsetParent=à¤à¤«à¤¼à¤¸à¥à¤
diff --git a/devtools/client/canvasdebugger.dtd b/devtools/client/canvasdebugger.dtd
new file mode 100644
index 00000000000..52882a9a535
--- /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..ab0c50018a1
--- /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=ठबतठà¤à¥à¤ सà¥à¤¨à¥à¤ªà¤¶à¥à¤ नहà¥à¤ हà¥.
+
+# 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=सà¥à¤¨à¥à¤ªà¤¶à¥à¤ #%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=लà¥à¤¡ à¤à¤° रहा हà¥â¦
+
+# LOCALIZATION NOTE (snapshotsList.saveLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# for saving an item to disk.
+snapshotsList.saveLabel=सहà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (snapshotsList.savingLabel):
+# This string is displayed in the snapshots list of the Canvas Debugger,
+# while saving an item to disk.
+snapshotsList.savingLabel=सहà¥à¤ रहा हà¥â¦
+
+# 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=डिसà¥à¤ सॠलà¥à¤¡
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogTitle):
+# This string is displayed as a title for saving a snapshot to disk.
+snapshotsList.saveDialogTitle=à¤à¤²-à¤à¤µà¤¿ फà¥à¤°à¥à¤® सà¥à¤¨à¥à¤ªà¤¶à¥à¤ सहà¥à¤à¥à¤â¦
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogJSONFilter):
+# This string is displayed as a filter for saving a snapshot to disk.
+snapshotsList.saveDialogJSONFilter=JSON फ़ाà¤à¤²
+
+# LOCALIZATION NOTE (snapshotsList.saveDialogAllFilter):
+# This string is displayed as a filter for saving a snapshot to disk.
+snapshotsList.saveDialogAllFilter=सà¤à¥ फ़ाà¤à¤²
+
+# 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 à¤à¥à¤²;#1 à¤à¥à¤²à¥à¤¸
+
+# 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=à¤à¥à¤¨à¤µà¤¾à¤¸ डà¥à¤¬à¤à¤° requestAnimationFrame या setTimeout à¤à¤à¥à¤° à¤à¥ नहà¥à¤ à¤à¥à¤ पा रहा हà¥.
diff --git a/devtools/client/changes.properties b/devtools/client/changes.properties
new file mode 100644
index 00000000000..9b6fa815c0f
--- /dev/null
+++ b/devtools/client/changes.properties
@@ -0,0 +1,55 @@
+# 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 contains the strings for the Changes panel accessible from
+# the Inspector sidebar.
+
+# LOCALIZATION NOTE (changes.noChanges): This text is shown when no changes are available.
+
+# LOCALIZATION NOTE (changes.noChangesDescription): This text is shown when no changes are
+# available and provides additional context for the purpose of the Changes panel.
+
+# LOCALIZATION NOTE (changes.inlineStyleSheetLabel): This label appears in the Changes
+# panel above changes done to inline stylesheets. The variable will be replaced with the
+# index of the stylesheet within its document like so: Inline #1
+
+# LOCALIZATION NOTE (changes.elementStyleLabel): This label appears in the Changes
+# panel above changes done to element styles.
+
+# LOCALIZATION NOTE (changes.iframeLabel): This label appears next to URLs of stylesheets
+# and element inline styles hosted by iframes. Lowercase intentional.
+
+# LOCALIZATION NOTE (changes.contextmenu.copy): Label for "Copy" option in Changes panel
+# context menu
+changes.contextmenu.copy=à¤à¥à¤ªà¥ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (changes.contextmenu.copy.accessKey): Access key for "Copy"
+# option in the Changes panel.
+changes.contextmenu.copy.accessKey=C
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChanges): Label for "Copy All Changes"
+# option in Changes panel context menu which copies all changed CSS declarations from a
+# stylesheet
+changes.contextmenu.copyAllChanges=सà¤à¥ बदलाव à¤à¥ à¤à¥à¤ªà¥ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChangesDescription): Detailed explanation
+# for "Copy All Changes" option in Changes panel. Used as title attribute on "Copy All
+# Changes" button
+
+# LOCALIZATION NOTE (changes.contextmenu.copyDeclaration): Label for "Copy Declaration"
+# option in Changes panel context menu which copies the target CSS declaration.
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRule): Label for "Copy Rule" option in
+# Changes panel context menu which copies the complete contents of a CSS rule.
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRuleDescription): Detailed explanation for
+# "Copy Rule" option in Changes panel. Used as title attribute on "Copy Rule" button.
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll): Label for "Select All" option in the
+# Changes panel context menu to select all text content.
+changes.contextmenu.selectAll=सà¤à¥ à¤à¥à¤¨à¥à¤
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll.accessKey): Access key for "Select All"
+# option in the Changes panel.
+changes.contextmenu.selectAll.accessKey=A
diff --git a/devtools/client/components.properties b/devtools/client/components.properties
new file mode 100644
index 00000000000..8cc315067f5
--- /dev/null
+++ b/devtools/client/components.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 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=(ठà¤à¥à¤à¤¾à¤¤)
+
+# 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=सà¥à¤°à¥à¤¤ à¤à¥ डà¥à¤¬à¤à¤° मà¥à¤ दà¥à¤à¥à¤ â %S
+
+# LOCALIZATION NOTE (notificationBox.closeTooltip): The content of a tooltip that
+# appears when hovering over the close button in a notification box.
+notificationBox.closeTooltip=à¤à¤¸ सà¤à¤¦à¥à¤¶ à¤à¥ बà¤à¤¦ à¤à¤°à¥à¤
diff --git a/devtools/client/connection-screen.dtd b/devtools/client/connection-screen.dtd
new file mode 100644
index 00000000000..ee133026f54
--- /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..63c97c18ea9
--- /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=मà¥à¤à¥à¤¯ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾
diff --git a/devtools/client/debugger.properties b/devtools/client/debugger.properties
new file mode 100644
index 00000000000..629a017c6e3
--- /dev/null
+++ b/devtools/client/debugger.properties
@@ -0,0 +1,1108 @@
+# 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 (collapseSources): This is the tooltip for the button
+# that collapses the Sources and Outlines panes in the debugger UI.
+
+# LOCALIZATION NOTE (collapseBreakpoints): This is the tooltip for the button
+# that collapses the Breakpoints panes in the debugger UI.
+
+# LOCALIZATION NOTE (copyToClipboard.label): This is the text that appears in the
+# context menu to copy the complete source of the open file.
+copyToClipboard.label=à¤à¥à¤²à¤¿à¤ªà¤¬à¥à¤°à¥à¤¡ पर नà¥à¤² à¤à¤°à¥à¤
+copyToClipboard.accesskey=C
+
+# LOCALIZATION NOTE (copySource.label): This is the text that appears in the
+# context menu to copy the selected source of file open.
+copySource=नà¤à¤¼à¤² à¤à¤°à¥à¤
+copySource.label=सà¥à¤°à¥à¤¤ पाठà¥à¤¯ à¤à¤¾à¤ à¤à¥ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ बनाà¤à¤
+copySource.accesskey=y
+
+# LOCALIZATION NOTE (copySourceUri2): This is the text that appears in the
+# context menu to copy the source URI of file open.
+copySourceUri2=सà¥à¤°à¥à¤¤ URI à¤à¥ पà¥à¤°à¤¤à¤¿à¤²à¤¿à¤ªà¤¿ बनाà¤à¤
+copySourceUri2.accesskey=u
+
+# LOCALIZATION NOTE (collapseAll.label): This is the text that appears in the
+# context menu to collapse a directory and all of its subdirectories.
+collapseAll.label=सब समà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (expandAll.label): This is the text that appears in the
+# context menu to expand a directory and all of its subdirectories.
+expandAll.label=सà¤à¥ à¤à¤¾ विसà¥à¤¤à¤¾à¤° à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (setDirectoryRoot.label): This is the text that appears in the
+# context menu to set a directory as root directory
+setDirectoryRoot.label=निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ रà¥à¤ सà¥à¤ à¤à¤°à¥à¤
+setDirectoryRoot.accesskey=r
+
+# LOCALIZATION NOTE (removeDirectoryRoot.label): This is the text that appears in the
+# context menu to remove a directory as root directory
+removeDirectoryRoot.label=निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ रà¥à¤ हà¤à¤¾à¤¯à¥à¤
+removeDirectoryRoot.accesskey=d
+
+# LOCALIZATION NOTE (copyFunction.label): This is the text that appears in the
+# context menu to copy the function the user selected
+copyFunction.label=फà¤à¤à¥à¤¶à¤¨ नà¤à¤¼à¤² à¤à¤°à¥à¤
+copyFunction.accesskey=F
+
+# LOCALIZATION NOTE (copyStackTrace): This is the text that appears in the
+# context menu to copy the stack trace methods, file names and row number.
+copyStackTrace=सà¥à¤à¥à¤ à¤à¥à¤°à¥à¤¸ नà¤à¤¼à¤² à¤à¤°à¥à¤
+copyStackTrace.accesskey=c
+
+# LOCALIZATION NOTE (expandSources): This is the tooltip for the button
+# that expands the Sources and Outlines panes in the debugger UI.
+
+# LOCALIZATION NOTE (expandBreakpoints): This is the tooltip for the button
+# that expands the Breakpoints panes in the debugger UI.
+
+# LOCALIZATION NOTE (evaluateInConsole.label): Editor right-click menu item
+# to execute selected text in browser console.
+evaluateInConsole.label=à¤à¤à¤¸à¥à¤² मà¥à¤ मà¥à¤²à¥à¤¯à¤¾à¤à¤à¤¨ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (pauseButtonTooltip): The tooltip that is displayed for the pause
+# button when the debugger is in a running state.
+pauseButtonTooltip=%S रà¥à¤à¥à¤
+
+# 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=ठà¤à¤²à¥ à¤à¥à¤°à¤¿à¤¯à¤¾à¤¨à¥à¤µà¤¯à¤¨ à¤à¤¾ à¤à¤à¤¤à¥à¤¾à¤° हà¥
+
+# LOCALIZATION NOTE (resumeButtonTooltip): The label that is displayed on the pause
+# button when the debugger is in a paused state.
+resumeButtonTooltip=पà¥à¤¨à¤°à¤¾à¤°à¤à¤ %S
+
+# LOCALIZATION NOTE (stepOverTooltip): The label that is displayed on the
+# button that steps over a function call.
+stepOverTooltip=à¤à¤¸à¤à¥ à¤à¤ªà¤° à¤à¤¾à¤à¤ %S
+
+# LOCALIZATION NOTE (stepInTooltip): The label that is displayed on the
+# button that steps into a function call.
+stepInTooltip=à¤à¤¸à¤à¥ ठà¤à¤¦à¤° à¤à¤¾à¤à¤ %S
+
+# LOCALIZATION NOTE (stepOutTooltip): The label that is displayed on the
+# button that steps out of a function call.
+stepOutTooltip=बाहर à¤à¤¾à¤à¤ %S
+
+# LOCALIZATION NOTE (skipPausingTooltip.label): The tooltip text for disabling all
+# breakpoints and pausing triggers
+skipPausingTooltip.label=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (undoSkipPausingTooltip.label): The tooltip text for enabling all
+# breakpoints and pausing triggers
+
+# LOCALIZATION NOTE (pauseButtonItem): The label that is displayed for the dropdown pause
+# list item when the debugger is in a running state.
+pauseButtonItem=ठà¤à¤²à¥ वाà¤à¥à¤¯ पर रà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (ignoreExceptionsItem): The pause on exceptions button description
+# when the debugger will not pause on exceptions.
+ignoreExceptionsItem=ठपवादà¥à¤ पर धà¥à¤¯à¤¾à¤¨ न दà¥à¤
+
+# LOCALIZATION NOTE (pauseOnUncaughtExceptionsItem): The pause on exceptions dropdown
+# item shown when a user is adding a new breakpoint.
+pauseOnUncaughtExceptionsItem=पà¤à¥ मà¥à¤ न à¤à¤¯à¥ ठपवादà¥à¤ पर रà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (pauseOnExceptionsItem2): The pause on exceptions checkbox description
+# when the debugger will pause on all exceptions.
+pauseOnExceptionsItem2=à¤à¤ªà¤µà¤¾à¤¦à¥à¤ पर ठहरिà¤
+
+# LOCALIZATION NOTE (ignoreCaughtExceptionsItem): The pause on exceptions checkbox description
+# when the debugger will not pause on any caught exception
+ignoreCaughtExceptionsItem=पायॠà¤à¤ à¤à¤ªà¤µà¤¾à¤¦à¥à¤ à¤à¥ नà¥à¤°à¤ à¤à¤¦à¤¾à¥ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (pauseOnCaughtExceptionsItem): The pause on exceptions checkbox description
+# when the debugger should pause on caught exceptions
+
+# LOCALIZATION NOTE (workersHeader): The text to display in the events
+# header.
+workersHeader=शà¥à¤°à¤®à¤¿à¤
+
+# LOCALIZATION NOTE (threadsHeader): The text to describe the threads header
+threadsHeader=à¤à¥à¤°à¤®
+
+# LOCALIZATION NOTE (mainThread): The text to describe the thread of the
+# program as opposed to worker threads.
+mainThread=मà¥à¤à¥à¤¯ à¤à¥à¤°à¤®
+
+# LOCALIZATION NOTE (noWorkersText): The text to display in the workers list
+# when there are no workers.
+noWorkersText=à¤à¤¸ पà¥à¤·à¥à¤ मà¥à¤ à¤à¥à¤ शà¥à¤°à¤®à¤¿à¤ नहà¥à¤ हà¥.
+
+# LOCALIZATION NOTE (noSourcesText): The text to display in the sources list
+# when there are no sources.
+noSourcesText=à¤à¤¸ पà¥à¤·à¥à¤ मà¥à¤ à¤à¥à¤ सà¥à¤°à¥à¤¤ नहà¥à¤ हà¥.
+
+# LOCALIZATION NOTE (noEventListenersText): The text to display in the events tab
+# when there are no events.
+noEventListenersText=दिà¤à¤¾à¤¨à¥ à¤à¥ लिठà¤à¥à¤ à¤à¤à¤¨à¤¾ सà¥à¤°à¥à¤¤à¤¾ नहà¥à¤
+
+# LOCALIZATION NOTE (eventListenersHeader): The text to display in the events
+# header.
+eventListenersHeader=à¤à¤à¤¨à¤¾ शà¥à¤°à¥à¤¤à¤¾
+
+# LOCALIZATION NOTE (noStackFramesText): The text to display in the call stack tab
+# when there are no stack frames.
+noStackFramesText=दिà¤à¤¾à¤¨à¥ à¤à¥ लिठà¤à¥à¤ सà¥à¤à¥à¤ नहà¥à¤
+
+# LOCALIZATION NOTE (eventCheckboxTooltip): The tooltip text to display when
+# the user hovers over the checkbox used to toggle an event breakpoint.
+eventCheckboxTooltip=à¤à¤¸ à¤à¤à¤¨à¤¾ मà¥à¤ बà¥à¤°à¥à¤à¤¿à¤à¤ à¤à¥à¤à¤² à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (eventOnSelector): The text to display in the events tab
+# for every event item, between the event type and event selector.
+eventOnSelector=पर
+
+# 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=à¤à¤à¤
+
+# LOCALIZATION NOTE (eventNodes): The text to display in the events tab when
+# an event is listened on more than one target node.
+eventNodes=%S नà¥à¤¡
+
+# 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=[native code]
+
+# LOCALIZATION NOTE (*Events): The text to display in the events tab for
+# each group of sub-level event entries.
+animationEvents=à¤à¤²-à¤à¤µà¤¿
+audioEvents=à¤à¤¡à¤¿à¤¯à¥
+batteryEvents=बà¥à¤à¤°à¥
+clipboardEvents=à¤à¥à¤²à¤¿à¤ªà¤¬à¥à¤°à¥à¤¡
+compositionEvents=à¤à¤à¤
+deviceEvents=यà¥à¤à¥à¤¤à¤¿
+displayEvents=दिà¤à¤¾à¤à¤
+dragAndDropEvents=à¤à¥à¤à¤à¥à¤ व à¤à¤¿à¤°à¤¾à¤à¤
+gamepadEvents=à¤à¥à¤®à¤ªà¥à¤¡
+indexedDBEvents=IndexedDB
+interactionEvents=ठà¤à¤¤à¤à¤à¥à¤°à¤¿à¤¯à¤¾
+keyboardEvents=à¤à¥à¤¬à¥à¤°à¥à¤¡
+mediaEvents=HTML5 मà¥à¤¡à¤¿à¤¯à¤¾
+mouseEvents=माà¤à¤¸
+mutationEvents=मà¥à¤¯à¥à¤à¥à¤¶à¤¨
+navigationEvents=सà¤à¤à¤°à¤£
+pointerLockEvents=पà¥à¤à¤à¤à¤° सà¥à¤à¤
+sensorEvents=सà¥à¤à¤¸à¤°
+storageEvents=à¤à¤à¤¡à¤¾à¤°à¤£
+timeEvents=à¤à¤¾à¤à¤²
+touchEvents=à¤à¤
+otherEvents=ठनà¥à¤¯
+
+# LOCALIZATION NOTE (blackboxCheckboxTooltip2): The tooltip text to display when
+# the user hovers over the checkbox used to toggle blackboxing its associated
+# source.
+blackboxCheckboxTooltip2=बà¥à¤²à¥à¤à¤¬à¥à¤à¥à¤¸à¤¿à¤à¤ à¤à¥à¤à¤² à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (sources.search.key2): Key shortcut to open the search for
+# searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+P", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.key2=CmdOrCtrl+P
+
+# LOCALIZATION NOTE (sources.search.alt.key): A second key shortcut to open the
+# search for searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.alt.key=CmdOrCtrl+O
+
+# LOCALIZATION NOTE (projectTextSearch.key): A key shortcut to open the
+# full project text search for searching all the files the debugger has seen.
+# Do not localize "CmdOrCtrl+Shift+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+projectTextSearch.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (allShortcut.key): A key shortcut to open the
+# modal of full shortcuts list.
+# Do not localize "CmdOrCtrl+/", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+allShortcut.key=CmdOrCtrl+/
+
+# LOCALIZATION NOTE (functionSearch.key): A key shortcut to open the
+# modal for searching functions in a file.
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+functionSearch.key=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE (toggleBreakpoint.key): A key shortcut to toggle
+# breakpoints.
+# Do not localize "CmdOrCtrl+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleBreakpoint.key=CmdOrCtrl+B
+
+# LOCALIZATION NOTE (toggleCondPanel.breakpoint.key): A key shortcut to toggle
+# the conditional panel for breakpoints.
+# Do not localize "CmdOrCtrl+Shift+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.breakpoint.key=CmdOrCtrl+Shift+B
+
+# LOCALIZATION NOTE (toggleCondPanel.logPoint.key): A key shortcut to toggle
+# the conditional panel for log points.
+# Do not localize "CmdOrCtrl+Shift+Y", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.logPoint.key=CmdOrCtrl+Shift+Y
+
+# LOCALIZATION NOTE (stepOut.key): A key shortcut to
+# step out.
+stepOut.key=Shift+F11
+
+# LOCALIZATION NOTE (shortcuts.header.editor): Sections header in
+# the shortcuts modal for keyboard shortcuts related to editing.
+shortcuts.header.editor=सà¤à¤ªà¤¾à¤¦à¤
+
+# LOCALIZATION NOTE (shortcuts.header.stepping): Sections header in
+# the shortcuts modal for keyboard shortcuts related to stepping.
+shortcuts.header.stepping=à¤à¤¼à¤¦à¤® बढ़ातॠहà¥à¤
+
+# LOCALIZATION NOTE (shortcuts.header.search): Sections header in
+# the shortcuts modal for keyboard shortcuts related to search.
+shortcuts.header.search=à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (projectTextSearch.placeholder): A placeholder shown
+# when searching across all of the files in a project.
+projectTextSearch.placeholder=फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤à¥à¤â¦
+
+# LOCALIZATION NOTE (projectTextSearch.noResults): The center pane Text Search
+# message when the query did not match any text of all files in a project.
+projectTextSearch.noResults=à¤à¥à¤ परिणाम नहॠमिला
+
+# LOCALIZATION NOTE (sources.noSourcesAvailable): Text shown when the debugger
+# does not have any sources.
+sources.noSourcesAvailable=à¤à¤¸ पà¥à¤·à¥à¤ मà¥à¤ à¤à¥à¤ सà¥à¤°à¥à¤¤ नहà¥à¤ हà¥
+
+# LOCALIZATION NOTE (sources.noSourcesAvailableRoot): Text shown when the debugger
+# does not have any sources under a specific directory root.
+sources.noSourcesAvailableRoot=à¤à¤¸ निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ रà¥à¤ à¤à¥ à¤à¥à¤ सà¥à¤°à¥à¤¤ नहà¥à¤ हà¥
+
+# LOCALIZATION NOTE (sourceSearch.search.key2): Key shortcut to open the search
+# for searching within a the currently opened files in the editor
+# Do not localize "CmdOrCtrl+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.key2=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder=फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤à¥à¤â¦
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder2): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder2=फ़ाà¤à¤² मà¥à¤ à¤à¥à¤à¥à¤â¦
+
+# LOCALIZATION NOTE (sourceSearch.search.again.key2): Key shortcut to highlight
+# the next occurrence of the last search triggered from a source search
+# Do not localize "CmdOrCtrl+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.again.key2=CmdOrCtrl+G
+
+# LOCALIZATION NOTE (sourceSearch.search.againPrev.key2): Key shortcut to highlight
+# the previous occurrence of the last search triggered from a source search
+# Do not localize "CmdOrCtrl+Shift+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.againPrev.key2=CmdOrCtrl+Shift+G
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary1): Shows a summary of
+# the number of matches for autocomplete
+sourceSearch.resultsSummary1=%d परिणाम
+
+# LOCALIZATION NOTE (sourceSearch.search.again.key3): Key shortcut to highlight
+# the next occurrence of the last search triggered from a source search
+# Do not localize "Cmd+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.again.key3=Cmd+G
+
+# LOCALIZATION NOTE (sourceSearch.search.againPrev.key3): Key shortcut to highlight
+# the previous occurrence of the last search triggered from a source search
+# Do not localize "Cmd+Shift+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.againPrev.key3=Cmd+Shift+G
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# 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=No matches found
+
+# 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=लिपियà¥à¤ (%S) à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (emptyVariablesFilterText): This is the text that
+# appears in the filter text box for the variables view container.
+emptyVariablesFilterText=à¤à¤° à¤à¥ फ़िलà¥à¤à¤° à¤à¤°à¥à¤\u0020
+
+# LOCALIZATION NOTE (emptyPropertiesFilterText): This is the text that
+# appears in the filter text box for the editor's variables view bubble.
+emptyPropertiesFilterText=फ़िलà¥à¤à¤° à¤à¥à¤£
+
+# LOCALIZATION NOTE (searchPanelFilter): This is the text that appears in the
+# filter panel popup for the filter scripts operation.
+searchPanelFilter=फिलà¥à¤à¤° सà¥à¤à¥à¤°à¤¿à¤ªà¥à¤à¥à¤¸ (%S)
+
+# LOCALIZATION NOTE (searchPanelGlobal): This is the text that appears in the
+# filter panel popup for the global search operation.
+searchPanelGlobal=सà¤à¥ फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤à¥à¤ (%S)
+
+# LOCALIZATION NOTE (searchPanelFunction): This is the text that appears in the
+# filter panel popup for the function search operation.
+searchPanelFunction=फà¤à¤à¥à¤¶à¤¨ परिà¤à¤¾à¤·à¤¾ (%S) à¤à¥ लिठà¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (searchPanelFunction2): This is the text that appears in the
+# filter panel popup for the function search operation.
+searchPanelFunction2=à¤à¤¾à¤°à¥à¤¯ परिà¤à¤¾à¤·à¤¾ à¤à¥à¤à¥à¤ (%S)
+
+# LOCALIZATION NOTE (searchPanelToken): This is the text that appears in the
+# filter panel popup for the token search operation.
+searchPanelToken=à¤à¤¸ फ़ाà¤à¤² मà¥à¤ ढà¥à¤à¤¢à¤¼à¥à¤ (%S)
+
+# LOCALIZATION NOTE (searchPanelGoToLine): This is the text that appears in the
+# filter panel popup for the line search operation.
+searchPanelGoToLine=पà¤à¤à¥à¤¤à¤¿ पर à¤à¤¾à¤à¤ (%S)\u0020
+
+# LOCALIZATION NOTE (searchPanelVariable): This is the text that appears in the
+# filter panel popup for the variables search operation.
+searchPanelVariable=à¤à¤° à¤à¥ फ़िलà¥à¤à¤° à¤à¤°à¥à¤ (%S)
+
+# LOCALIZATION NOTE (breakpointHeadingMenuItem.*): The text for all the elements
+# that are displayed in the breakpoint headings menu item popup.
+breakpointHeadingsMenuItem.enableInSource.label=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointHeadingsMenuItem.enableInSource.accesskey=E
+breakpointHeadingsMenuItem.disableInSource.label=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointHeadingsMenuItem.disableInSource.accesskey=D
+breakpointHeadingsMenuItem.removeInSource.label=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ हà¤à¤¾à¤à¤
+breakpointHeadingsMenuItem.removeInSource.accesskey=R
+
+# LOCALIZATION NOTE (breakpointMenuItem): The text for all the elements that
+# are displayed in the breakpoints menu item popup.
+breakpointMenuItem.setConditional=सशरà¥à¤¤ विराम बिà¤à¤¦à¥ à¤à¥à¤¨à¥à¤«à¤¼à¤¿à¤à¤° à¤à¤°à¥à¤
+breakpointMenuItem.enableSelf2.label=सà¤à¥à¤·à¤®
+breakpointMenuItem.enableSelf2.accesskey=E
+breakpointMenuItem.disableSelf2.label=निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableSelf2.accesskey=D
+breakpointMenuItem.deleteSelf2.label=हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteSelf2.accesskey=R
+breakpointMenuItem.enableOthers2.label=ठनà¥à¤¯ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.enableOthers2.accesskey=o
+breakpointMenuItem.disableOthers2.label=ठनà¥à¤¯ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableOthers2.accesskey=s
+breakpointMenuItem.deleteOthers2.label=ठनà¥à¤¯ हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteOthers2.accesskey=h
+breakpointMenuItem.enableAll2.label=सà¤à¥ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.enableAll2.accesskey=b
+breakpointMenuItem.disableAll2.label=सà¤à¥ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableAll2.accesskey=k
+breakpointMenuItem.deleteAll2.label=सà¤à¥ हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteAll2.accesskey=a
+breakpointMenuItem.removeCondition2.label=शरà¥à¤¤ हà¤à¤¾à¤à¤
+breakpointMenuItem.removeCondition2.accesskey=c
+breakpointMenuItem.addCondition2.label=शरà¥à¤¤ à¤à¥à¤¡à¤¼à¥à¤
+breakpointMenuItem.addCondition2.accesskey=A
+breakpointMenuItem.editCondition2.label=शरà¥à¤¤ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+breakpointMenuItem.editCondition2.accesskey=n
+breakpointMenuItem.enableSelf=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.enableSelf.accesskey=E
+breakpointMenuItem.disableSelf=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableSelf.accesskey=D
+breakpointMenuItem.deleteSelf=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteSelf.accesskey=R
+breakpointMenuItem.enableOthers=ठनà¥à¤¯ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.enableOthers.accesskey=o
+breakpointMenuItem.disableOthers=ठनà¥à¤¯ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableOthers.accesskey=s
+breakpointMenuItem.deleteOthers=ठनà¥à¤¯ हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteOthers.accesskey=h
+breakpointMenuItem.enableAll=सà¤à¥ बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.enableAll.accesskey=b
+breakpointMenuItem.disableAll=सà¤à¥ बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+breakpointMenuItem.disableAll.accesskey=k
+breakpointMenuItem.deleteAll=सà¤à¥ बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ हà¤à¤¾à¤à¤
+breakpointMenuItem.deleteAll.accesskey=a
+breakpointMenuItem.removeCondition.label=विराम बिà¤à¤¦à¥ शरà¥à¤¤ हà¤à¤¾à¤à¤
+breakpointMenuItem.removeCondition.accesskey=c
+breakpointMenuItem.editCondition.label=विराम बिà¤à¤¦à¥ शरà¥à¤¤ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+breakpointMenuItem.editCondition.accesskey=n
+
+# LOCALIZATION NOTE (breakpoints.header): Breakpoints right sidebar pane header.
+breakpoints.header=à¤à¤£à¥à¤¡à¤¨ बिनà¥à¤¦à¥
+
+# LOCALIZATION NOTE (breakpoints.none): The text that appears when there are
+# no breakpoints present
+breakpoints.none=à¤à¥à¤ à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ नहà¥
+
+# LOCALIZATION NOTE (breakpoints.enable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+breakpoints.enable=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (breakpoints.disable): The text that may appear as a tooltip
+# when hovering over the 'disable breakpoints' switch button in right sidebar
+breakpoints.disable=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (breakpoints.removeBreakpointTooltip): The tooltip that is displayed
+# for remove breakpoint button in right sidebar
+breakpoints.removeBreakpointTooltip=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ हà¤à¤¾à¤¯à¥
+
+# LOCALIZATION NOTE (callStack.header): Call Stack right sidebar pane header.
+callStack.header=à¤à¥à¤² ढà¥à¤°à¥
+
+# LOCALIZATION NOTE (callStack.notPaused): Call Stack right sidebar pane
+# message when not paused.
+callStack.notPaused=नहà¥à¤ रà¥à¤à¤¾ हà¥à¤
+
+# LOCALIZATION NOTE (callStack.collapse): Call Stack right sidebar pane
+# message to hide some of the frames that are shown.
+callStack.collapse=पà¤à¤à¥à¤¤à¤¿à¤¯à¥à¤ à¤à¥ समà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (callStack.expand): Call Stack right sidebar pane
+# message to show more of the frames.
+callStack.expand=पà¤à¤à¥à¤¤à¤¿à¤¯à¥à¤ à¤à¥ फà¥à¤²à¤¾à¤à¤
+
+# LOCALIZATION NOTE (callStack.group.expandTooltip): The text that will appear
+# when hovering a collapsed Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Show React frames`.
+callStack.group.expandTooltip=%S फà¥à¤°à¥à¤® दिà¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (callStack.group.collapseTooltip): The text that will appear
+# when hovering an expanded Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Collapse React frames`.
+callStack.group.collapseTooltip=%S फà¥à¤°à¥à¤® समà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (components.header): Header for the
+# Framework Components pane in the right sidebar.
+components.header=à¤à¤à¤
+
+# LOCALIZATION NOTE (editor.searchResults): Editor Search bar message
+# for the summarizing the selected search result. e.g. 5 of 10 results.
+editor.searchResults=%d à¤à¥ %d परिणाम
+
+# LOCALIZATION NOTE (editor.searchResults1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Editor Search bar message to summarize the selected search result. e.g. 5 of 10 results.
+
+# LOCALIZATION NOTE (editor.singleResult): Copy shown when there is one result.
+editor.singleResult=1 परिणाम
+
+# LOCALIZATION NOTE (editor.noResultsFound): Editor Search bar message
+# for when no results found.
+editor.noResultsFound=à¤à¥à¤ परिणाम नहॠमिला
+
+# LOCALIZATION NOTE (editor.searchResults.nextResult): Editor Search bar
+# tooltip for traversing to the Next Result
+editor.searchResults.nextResult=ठà¤à¤²à¥ परिणाम
+
+# LOCALIZATION NOTE (editor.searchResults.prevResult): Editor Search bar
+# tooltip for traversing to the Previous Result
+editor.searchResults.prevResult=पिà¤à¤²à¥ परिणाम
+
+# LOCALIZATION NOTE (editor.searchTypeToggleTitle): Search bar title for
+# toggling search type buttons(function search, variable search)
+editor.searchTypeToggleTitle=à¤à¤¸à¤à¥ लिठà¤à¥à¤à¥à¤:
+
+# LOCALIZATION NOTE (editor.continueToHere.label): Editor gutter context
+# menu item for jumping to a new paused location
+editor.continueToHere.label=यहाठà¤à¥ à¤à¤¾à¤°à¥ रà¤à¥à¤
+editor.continueToHere.accesskey=H
+
+# LOCALIZATION NOTE (editor.addBreakpoint): Editor gutter context menu item
+# for adding a breakpoint on a line.
+editor.addBreakpoint=बà¥à¤°à¥à¤à¤ªà¤¾à¤à¤à¤ à¤à¥à¤¡à¤¼à¥à¤
+
+# LOCALIZATION NOTE (editor.disableBreakpoint): Editor gutter context menu item
+# for disabling a breakpoint on a line.
+editor.disableBreakpoint=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ निषà¥à¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+editor.disableBreakpoint.accesskey=D
+
+# LOCALIZATION NOTE (editor.enableBreakpoint): Editor gutter context menu item
+# for enabling a breakpoint on a line.
+editor.enableBreakpoint=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (editor.removeBreakpoint): Editor gutter context menu item
+# for removing a breakpoint on a line.
+editor.removeBreakpoint=à¤à¤£à¥à¤¡à¤¨à¤¬à¤¿à¤¨à¥à¤¦à¥ हà¤à¤¾à¤¯à¥
+
+# LOCALIZATION NOTE (editor.addConditionBreakpoint): Editor gutter context
+# menu item for adding a breakpoint condition on a line.
+editor.addConditionBreakpoint=शरà¥à¤¤ à¤à¥à¤¡à¤¼à¥à¤
+editor.addConditionBreakpoint.accesskey=c
+
+# LOCALIZATION NOTE (editor.editConditionBreakpoint): Editor gutter context menu item
+# for setting a breakpoint condition on a line.
+editor.editConditionBreakpoint=शरà¥à¤¤ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (editor.addConditionalBreakpoint): Editor gutter context menu item
+# for creating a breakpoint with a condition
+editor.addConditionalBreakpoint=सशरà¥à¤¤ विरामबिà¤à¤¦à¥ à¤à¥à¤¡à¤¼à¥à¤
+
+# LOCALIZATION NOTE (editor.addLogBreakpoint): Editor gutter context menu item
+# for creating a breakpoint with a log
+
+# LOCALIZATION NOTE (editor.addLogPoint): Editor gutter context
+# menu item for adding a log point on a line.
+editor.addLogPoint=लà¥à¤ à¤à¥à¤¡à¤¼à¥à¤
+editor.addLogPoint.accesskey=l
+
+# LOCALIZATION NOTE (editor.editLogPoint): Editor gutter context menu item
+# for editing a log point already set on a line.
+editor.editLogPoint=लà¥à¤ सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (editor.removeLogPoint): Context menu item for removing
+# a log point on a line.
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder): Placeholder text for
+# input element inside ConditionalPanel component
+editor.conditionalPanel.placeholder=ठà¤à¤¿à¤µà¥à¤¯à¤à¥à¤¤à¤¿ à¤à¥ सहॠहà¥à¤¨à¥ पर यह विराम बिà¤à¤¦à¥ रà¥à¤ à¤à¤¾à¤à¤à¤¾
+
+# LOCALIZATION NOTE (editor.conditionalPanel.logPoint.placeholder): Placeholder text for
+# input element inside ConditionalPanel component when a log point is set
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component
+
+# LOCALIZATION NOTE (editor.conditionalPanel.logPoint.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component when a log point is set
+
+# LOCALIZATION NOTE (editor.conditionalPanel.close): Tooltip text for
+# close button inside ConditionalPanel component
+editor.conditionalPanel.close=सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ रदà¥à¤¦ à¤à¤° बà¤à¤¦ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (editor.jumpToMappedLocation1): Context menu item
+# for navigating to a source mapped location
+editor.jumpToMappedLocation1=%S सà¥à¤¥à¤¾à¤¨ पर à¤à¤¾à¤¯à¥à¤
+editor.jumpToMappedLocation1.accesskey=m
+
+# LOCALIZATION NOTE (downloadFile.label): Context menu item
+# for downloading a source's content
+downloadFile.label=फाà¤à¤² डाà¤à¤¨à¤²à¥à¤¡ à¤à¤°à¥à¤
+downloadFile.accesskey=d
+
+# LOCALIZATION NOTE (framework.disableGrouping): This is the text that appears in the
+# context menu to disable framework grouping.
+framework.disableGrouping=फà¥à¤°à¥à¤®à¤µà¤°à¥à¤ समà¥à¤¹à¥à¤à¤°à¤£ ठà¤à¥à¤·à¤® à¤à¤°à¥à¤
+framework.disableGrouping.accesskey=u
+
+# LOCALIZATION NOTE (framework.enableGrouping): This is the text that appears in the
+# context menu to enable framework grouping.
+framework.enableGrouping=फà¥à¤°à¥à¤®à¤µà¤°à¥à¤ समà¥à¤¹à¥à¤à¤°à¤£ सà¤à¥à¤·à¤® à¤à¤°à¥à¤
+framework.enableGrouping.accesskey=u
+
+# LOCALIZATION NOTE (generated): Source Map term for a server source location
+generated=तà¥à¤¯à¤¾à¤° à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (original): Source Map term for a debugger UI source location
+original=ठसलà¥
+
+# LOCALIZATION NOTE (expressions.placeholder): Placeholder text for expression
+# input element
+expressions.placeholder=ठà¤à¤¿à¤µà¥à¤¯à¤à¥à¤¤à¤¿ दà¥à¤à¤¨à¥ à¤à¥ लिठà¤à¥à¤¡à¤¼à¥à¤
+
+# LOCALIZATION NOTE (expressions.errorMsg): Error text for expression
+# input element
+expressions.errorMsg=ठमानà¥à¤¯ वà¥à¤¯à¤à¤à¤â¦
+expressions.label=à¤à¤à¥à¤¸à¤ªà¥à¤°à¥à¤¶à¤¨ à¤à¥à¤à¤¸à¥ à¤à¥à¤¡à¤¼à¥à¤
+expressions.accesskey=e
+expressions.key=CmdOrCtrl+Shift+E
+
+# LOCALIZATION NOTE (xhrBreakpoints.header): The pause on any XHR breakpoints headings
+xhrBreakpoints.header=XHR à¤à¤£à¥à¤¡à¤¨ बिनà¥à¤¦à¥
+
+# LOCALIZATION NOTE (xhrBreakpoints.item.label): message displayed when reaching a breakpoint for XHR requests. %S is replaced by the path provided as condition for the breakpoint.
+
+# LOCALIZATION NOTE (pauseOnAnyXHR): The pause on any XHR checkbox description
+# when the debugger will pause on any XHR requests.
+pauseOnAnyXHR=à¤à¤¿à¤¸à¥ à¤à¥ URL पर रà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (sourceTabs.closeTab): Editor source tab context menu item
+# for closing the selected tab below the mouse.
+sourceTabs.closeTab=à¤à¥à¤¬ बà¤à¤¦ à¤à¤°à¥à¤
+sourceTabs.closeTab.accesskey=c
+sourceTabs.closeTab.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs): Editor source tab context menu item
+# for closing the other tabs.
+sourceTabs.closeOtherTabs=ठनà¥à¤¯ à¤à¥à¤¬ बà¤à¤¦ à¤à¤°à¥à¤
+sourceTabs.closeOtherTabs.accesskey=o
+
+# 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.
+sourceTabs.closeTabsToEnd=दाहिनॠतरफ à¤à¥ à¤à¥à¤¬à¥à¤¸ बà¤à¤¦ à¤à¤°à¥à¤
+sourceTabs.closeTabsToEnd.accesskey=e
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs): Editor source tab context menu item
+# for closing all tabs.
+sourceTabs.closeAllTabs=सà¤à¥ à¤à¥à¤¬ बà¤à¤¦ à¤à¤°à¥à¤
+sourceTabs.closeAllTabs.accesskey=a
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree): Editor source tab context menu item
+# for revealing source in tree.
+sourceTabs.revealInTree=वà¥à¤à¥à¤· मà¥à¤ पà¥à¤°à¤à¤ à¤à¤°à¥à¤
+sourceTabs.revealInTree.accesskey=r
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint): Editor source tab context menu item
+# for pretty printing the source.
+sourceTabs.prettyPrint=सà¥à¤°à¥à¤¤ सà¥à¤à¤¦à¤°à¥à¤à¤°à¤£
+sourceTabs.prettyPrint.accesskey=p
+
+# LOCALIZATION NOTE (sourceFooter.blackbox): Tooltip text associated
+# with the blackbox button
+sourceFooter.blackbox=बà¥à¤²à¥à¤à¤¬à¥à¤à¥à¤¸ सà¥à¤°à¥à¤¤
+sourceFooter.blackbox.accesskey=B
+
+# LOCALIZATION NOTE (sourceFooter.unblackbox): Tooltip text associated
+# with the blackbox button
+sourceFooter.unblackbox=ठनबà¥à¤²à¥à¤à¤¬à¥à¤à¥à¤¸ सà¥à¤°à¥à¤¤
+sourceFooter.unblackbox.accesskey=b
+
+# LOCALIZATION NOTE (sourceFooter.mappedSource): Text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSource=(%S सà¥â)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSourceTooltip): Tooltip text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSourceTooltip=(%S सॠमापा à¤à¤¯à¤¾ सà¥à¤°à¥à¤¤)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSuffix): Text associated
+# with a mapped source. Displays next to URLs in tree and tabs.
+sourceFooter.mappedSuffix=(मà¥à¤ª à¤à¤¿à¤¯à¤¾ à¤à¤¯à¤¾)
+
+# LOCALIZATION NOTE (sourceFooter.codeCoverage): Text associated
+# with a code coverage button
+sourceFooter.codeCoverage=à¤à¥à¤¡ à¤à¤µà¥à¤¤à¥à¤¤à¤¿
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition=(%1$S, %2$S)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition.tooltip): Text associated
+# with the current cursor line and column
+
+# LOCALIZATION NOTE (sourceTabs.closeTabButtonTooltip): The tooltip that is displayed
+# for close tab button in source tabs.
+sourceTabs.closeTabButtonTooltip=à¤à¥à¤¬ बà¤à¤¦ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (scopes.header): Scopes right sidebar pane header.
+scopes.header=वà¥à¤¯à¤¾à¤ªà¤à¤¤à¤¾
+
+# LOCALIZATION NOTE (scopes.notAvailable): Scopes right sidebar pane message
+# for when the debugger is paused, but there isn't pause data.
+scopes.notAvailable=ठनà¥à¤ªà¤²à¤¬à¥à¤§ सà¥à¤à¥à¤ªà¥à¤¸
+
+# LOCALIZATION NOTE (scopes.notPaused): Scopes right sidebar pane message
+# for when the debugger is not paused.
+scopes.notPaused=नहà¥à¤ ठहरा हà¥à¤
+
+# LOCALIZATION NOTE (scopes.mapping.label): Scopes right sidebar pane
+# tooltip for checkbox and label
+
+# LOCALIZATION NOTE (scopes.helpTooltip.label): Scopes right sidebar pane
+# icon tooltip for link to MDN
+
+# LOCALIZATION NOTE (scopes.map.label): Checkbox label to map scopes
+scopes.map.label=मà¥à¤ª
+
+# LOCALIZATION NOTE (scopes.block): Refers to a block of code in
+# the scopes pane when the debugger is paused.
+scopes.block=रà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (sources.header): Sources left sidebar header
+sources.header=सà¥à¤°à¥à¤¤
+
+# LOCALIZATION NOTE (outline.header): Outline left sidebar header
+outline.header=पà¥à¤°à¤¾à¤°à¥à¤ª
+
+# LOCALIZATION NOTE (scopes.mapScopes): Label for toggling scope mappings
+
+# LOCALIZATION NOTE (outline.placeholder): Placeholder text for the filter input
+# element
+outline.placeholder=फलनà¥à¤ à¤à¥ à¥à¤¿à¤²à¥à¤à¤° à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (outline.sortLabel): Label for the sort button
+outline.sortLabel=नामानà¥à¤¸à¤¾à¤° à¤à¤¾à¤à¤à¥à¤
+
+# LOCALIZATION NOTE (outline.noFunctions): Outline text when there are no functions to display
+outline.noFunctions=à¤à¥à¤ फ़à¤à¤à¥à¤¶à¤¨ नहà¥à¤
+
+# LOCALIZATION NOTE (outline.noFileSelected): Outline text when there are no files selected
+outline.noFileSelected=à¤à¥à¤ फ़ाà¤à¤² à¤à¤¯à¤¨à¤¿à¤¤ नहà¥à¤
+
+# 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.
+sources.search=%S à¤à¥ ढà¥à¤à¤¢à¤¨à¤¾
+
+# LOCALIZATION NOTE (watchExpressions.header): Watch Expressions right sidebar
+# pane header.
+watchExpressions.header=ठà¤à¤¿à¤µà¥à¤¯à¤à¥à¤¤à¤¿à¤¯à¤¾à¤ दà¥à¤à¥à¤
+
+# LOCALIZATION NOTE (watchExpressions.refreshButton): Watch Expressions header
+# button for refreshing the expressions.
+watchExpressions.refreshButton=ताà¤à¤¼à¤¾ à¤à¤°à¥à¤
+
+# 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.
+welcome.search=सà¥à¤°à¥à¤¤ à¤à¥à¤à¤¨à¥ à¤à¥ लिठ%S
+
+# LOCALIZATION NOTE (welcome.search2): 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.
+welcome.search2=%S à¥à¤¾à¤à¤² पर à¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (welcome.findInFiles): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles=%S à¤à¥ फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤
+
+# LOCALIZATION NOTE (welcome.findInFiles2): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles2=%S फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (welcome.searchFunction): Label displayed in the welcome
+# panel. %S is replaced by the keyboard shortcut to search for functions.
+welcome.searchFunction=फ़ाà¤à¤² मà¥à¤ फ़à¤à¤à¥à¤¶à¤¨ à¤à¥à¤à¤¨à¥ à¤à¥ लिठ%S
+
+# LOCALIZATION NOTE (welcome.allShortcuts): The label to open the modal of
+# shortcuts, displayed in the welcome panel.
+welcome.allShortcuts=सà¤à¥ शà¥à¤°à¥à¤à¤à¤ दिà¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (sourceSearch.search): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search=सà¥à¤°à¥à¤¤ à¤à¥à¤à¥à¤...
+
+# LOCALIZATION NOTE (sourceSearch.search2): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search2=à¥à¤¾à¤à¤² पर à¤à¤¾à¤à¤â¦
+
+# LOCALIZATION NOTE (sourceSearch.noResults2): The center pane Source Search
+# message when the query did not match any of the sources.
+sourceSearch.noResults2=à¤à¥à¤ परिणाम नहॠमिला
+
+# LOCALIZATION NOTE (ignoreExceptions): The pause on exceptions button tooltip
+# when the debugger will not pause on exceptions.
+ignoreExceptions=ठपवादà¥à¤ à¤à¥ ठनदà¥à¤à¤¾ à¤à¤°à¥à¤. नहॠपाठà¤à¤¯à¥ ठपवादà¥à¤ पर रà¥à¤à¤¨à¥ à¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (pauseOnUncaughtExceptions): The pause on exceptions button
+# tooltip when the debugger will pause on uncaught exceptions.
+pauseOnUncaughtExceptions=नहॠपाठà¤à¤¯à¥ ठपवादà¥à¤ पर रà¥à¤à¥à¤. सारॠठपवादà¥à¤ पर रà¥à¤à¤¨à¥ à¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (pauseOnExceptions): The pause on exceptions button tooltip
+# when the debugger will pause on all exceptions.
+pauseOnExceptions=सारॠठपवादà¥à¤ पर रà¥à¤à¥à¤. नà¤à¤¼à¤°à¤ à¤à¤¦à¤¾à¤à¤¼ ठपवादà¥à¤ पर à¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# 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=लà¥à¤¡à¤¿à¤à¤â¦
+
+# LOCALIZATION NOTE (wasmIsNotAvailable): The text that is displayed in the
+# script editor when the WebAssembly source is not available.
+wasmIsNotAvailable=à¤à¥à¤ªà¤¯à¤¾ à¤à¤¸ मà¥à¤¡à¥à¤¯à¥à¤² à¤à¥ डिबठà¤à¤°à¤¨à¥ à¤à¥ लिठरिफà¥à¤°à¥à¤¶ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (errorLoadingText3): The text that is displayed in the debugger
+# viewer when there is an error loading a file
+errorLoadingText3=यह URI लà¥à¤¡ à¤à¤°à¤¨à¥ मà¥à¤ तà¥à¤°à¥à¤à¤¿ ठरहॠहà¥: %S
+
+# LOCALIZATION NOTE (addWatchExpressionText): The text that is displayed in the
+# watch expressions list to add a new item.
+addWatchExpressionText=ठà¤à¤¿à¤µà¥à¤¯à¤à¥à¤¤à¤¿ दà¥à¤à¤¨à¥ à¤à¥ लिठà¤à¥à¤¡à¤¼à¥à¤
+
+# LOCALIZATION NOTE (addWatchExpressionButton): The button that is displayed in the
+# variables view popup.
+addWatchExpressionButton=निà¤à¤°à¤¾à¤¨à¥
+
+# LOCALIZATION NOTE (extensionsText): The text that is displayed to represent
+# "moz-extension" directories in the source tree
+extensionsText=à¤à¤à¥à¤¸à¤à¥à¤à¤¶à¤¨
+
+# LOCALIZATION NOTE (emptyVariablesText): The text that is displayed in the
+# variables pane when there are no variables to display.
+emptyVariablesText=दिà¤à¤¾à¤¨à¥ à¤à¥ लिठà¤à¥à¤ à¤à¤° नहà¥à¤\u0020
+
+# 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 सà¥à¤à¥à¤ª
+
+# 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=ठà¤à¤¿à¤µà¥à¤¯à¤à¥à¤¤à¤¿
+
+# 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=वà¥à¤¶à¥à¤µà¤¿à¤
+
+# LOCALIZATION NOTE (variablesViewErrorStacktrace): This is the text that is
+# shown before the stack trace in an error.
+variablesViewErrorStacktrace=सà¥à¤à¥à¤ à¤à¥à¤°à¥à¤¸à¤
+
+# 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 ठधिà¤â¦;#1 ठधिà¤â¦
+
+# LOCALIZATION NOTE (variablesEditableNameTooltip): The text that is displayed
+# in the variables list on an item with an editable name.
+variablesEditableNameTooltip=सà¤à¤ªà¤¾à¤¦à¤¿à¤¤ à¤à¤°à¤¨à¥ à¤à¥ लिठडबल à¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in the variables list on an item with an editable value.
+variablesEditableValueTooltip=मान à¤à¥ बदलनॠà¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (variablesCloseButtonTooltip): The text that is displayed
+# in the variables list on an item which can be removed.
+variablesCloseButtonTooltip=दà¥à¤° à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (variablesEditButtonTooltip): The text that is displayed
+# in the variables list on a getter or setter which can be edited.
+variablesEditButtonTooltip=मान à¤à¥ सà¥à¤ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (variablesDomNodeValueTooltip): The text that is displayed
+# in a tooltip on the "open in inspector" button in the the variables list for a
+# DOMNode item.
+variablesDomNodeValueTooltip=à¤à¤à¤¸à¥à¤ªà¥à¤à¥à¤à¤° मà¥à¤ नà¥à¤¡ à¤à¤¾ à¤à¤¯à¤¨ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤²à¤¿à¤ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (configurable|...|Tooltip): The text that is displayed
+# in the variables list on certain variables or properties as tooltips.
+# Explanations 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=विनà¥à¤¯à¤¾à¤¸ यà¥à¤à¥à¤¯
+enumerableTooltip=à¤à¤£à¤¨à¥à¤¯ यà¥à¤à¥à¤¯
+writableTooltip=लिà¤à¤¨à¥ यà¥à¤à¥à¤¯
+frozenTooltip=à¤à¥à¥à¤à¥à¤¤
+sealedTooltip=मà¥à¤¹à¤°à¤¬à¤à¤¦
+extensibleTooltip=विसà¥à¤¤à¤¾à¤°à¤¯à¥à¤à¥à¤¯
+overriddenTooltip=ठधिरà¥à¤¹à¤¿à¤¤
+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=\u0020â
+
+# 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(gotoLineModal.placeholder): The placeholder
+# text displayed when the user searches for specific lines in a file
+gotoLineModal.placeholder=पà¤à¤à¥à¤¤à¤¿ पर à¤à¤¾à¤à¤â¦
+
+# LOCALIZATION NOTE(gotoLineModal.title): The message shown to users
+# to open the go to line modal
+gotoLineModal.title=à¤à¤¿à¤¸à¥ फ़ाà¤à¤² मà¥à¤ पà¤à¤à¥à¤¤à¤¿ à¤à¥à¤°à¤®à¤¾à¤à¤ पर à¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE(gotoLineModal.key2): The shortcut for opening the
+# go to line modal
+# Do not localize "CmdOrCtrl+;", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+gotoLineModal.key2=CmdOrCtrl+;
+
+# LOCALIZATION NOTE(gotoLineModal.key3): The shortcut for opening the
+# go to line modal
+# Do not localize "Ctrl+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+gotoLineModal.key3=Ctrl+G
+
+# LOCALIZATION NOTE(symbolSearch.search.functionsPlaceholder): The placeholder
+# text displayed when the user searches for functions in a file
+symbolSearch.search.functionsPlaceholder=फ़à¤à¤à¥à¤¶à¤¨ à¤à¥à¤à¥à¤â¦
+symbolSearch.search.functionsPlaceholder.title=à¤à¤¿à¤¸à¥ फ़ाà¤à¤² मà¥à¤ à¤à¥à¤ फ़à¤à¤à¥à¤¶à¤¨ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE(symbolSearch.search.variablesPlaceholder): The placeholder
+# text displayed when the user searches for variables in a file
+symbolSearch.search.variablesPlaceholder=à¤à¤° वसà¥à¤¤à¥à¤à¤ à¤à¥à¤à¥à¤...
+symbolSearch.search.variablesPlaceholder.title=à¤à¤¿à¤¸à¥ फ़ाà¤à¤² मà¥à¤ à¤à¥à¤ à¤à¤° à¤à¥ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE(symbolSearch.search.key2): The Key Shortcut for
+# searching for a function or variable
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+symbolSearch.search.key2=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.modifiersLabel): A label
+# preceding the group of modifiers
+symbolSearch.searchModifier.modifiersLabel=सà¤à¤¶à¥à¤§à¤:
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.regex): A search option
+# when searching text in a file
+symbolSearch.searchModifier.regex=रà¥à¤à¥à¤à¥à¤¸
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.caseSensitive): A search option
+# when searching text in a file
+symbolSearch.searchModifier.caseSensitive=à¤à¥à¤à¤¾-बà¥à¤¾ सà¤à¤µà¥à¤¦à¥
+
+# LOCALIZATION NOTE(symbolSearch.searchModifier.wholeWord): A search option
+# when searching text in a file
+symbolSearch.searchModifier.wholeWord=पà¥à¤°à¥à¤£ शबà¥à¤¦
+
+# 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=वहाठà¤à¤ या ठधिठठहरॠहà¥à¤ डिबà¤à¤° हà¥à¤. à¤à¥à¤ªà¤¯à¤¾ सबसॠहालिया ठहरॠहà¥à¤ डिबà¤à¤° à¤à¥ पहलॠपà¥à¤¨à¤°à¥à¤¬à¤¹à¤¾à¤² à¤à¤°à¥à¤: %S
+
+variablesViewOptimizedOut=(optimized away)
+variablesViewUninitialized=(à¤à¥à¤° à¤à¤°à¤à¤à¥à¤à¥à¤¤)
+variablesViewMissingArgs=(ठनà¥à¤ªà¤²à¤¬à¥à¤§)
+
+anonymousSourcesLabel=ठनà¤à¤¾à¤¨ सà¥à¤°à¥à¤¤
+
+experimental=यह à¤à¤ पà¥à¤°à¤¾à¤¯à¥à¤à¤¿à¤ विशà¥à¤·à¤¤à¤¾ हà¥\u0020
+
+# 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
+whyPaused.debuggerStatement=डà¥à¤¬à¤à¤° à¤à¤¥à¤¨ पर रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.breakpoint): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a breakpoint
+whyPaused.breakpoint=बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ पर रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.exception): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an exception
+whyPaused.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
+whyPaused.resumeLimit=निà¤à¤²à¤¤à¥ हà¥à¤ रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.pauseOnDOMEvents): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# dom event
+whyPaused.pauseOnDOMEvents=à¤à¤¯à¥à¤à¤¿à¤¤ शà¥à¤°à¥à¤¤à¤¾à¤ à¤à¥ रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.breakpointConditionThrown): The text that is displayed
+# in an info block when evaluating a conditional breakpoint throws an error
+whyPaused.breakpointConditionThrown=पà¥à¤°à¤¤à¤¿à¤¬à¤à¤§à¤¾à¤¤à¥à¤®à¤ बà¥à¤°à¥à¤à¤ªà¥à¤à¤à¤ à¤à¥ साथ तà¥à¤°à¥à¤à¤¿
+
+# 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
+whyPaused.xhr=XMLHttpRequest पर रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.promiseRejection): The text that is displayed
+# in a info block explaining how the debugger is currently paused on a
+# promise rejection
+whyPaused.promiseRejection=वादा ठसà¥à¤µà¥à¤à¥à¤¤à¤¿ पर रà¥à¤ दिया à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (whyPaused.assert): The text that is displayed
+# in a info block explaining how the debugger is currently paused on an
+# assert
+whyPaused.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
+whyPaused.debugCommand=डà¥à¤¬à¤ फ़à¤à¤à¥à¤¶à¤¨ पर रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# 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
+whyPaused.other=डà¥à¤¬à¤à¤° रà¥à¤à¤¾ à¤à¤¯à¤¾
+
+# LOCALIZATION NOTE (ctrl): The text that is used for documenting
+# keyboard shortcuts that use the control key
+ctrl=Ctrl
+
+# LOCALIZATION NOTE (anonymousFunction): this string is used to display
+# JavaScript functions that have no given name - they are said to be
+# anonymous.
+anonymousFunction=
+
+# LOCALIZATION NOTE (shortcuts.toggleBreakpoint): text describing
+# keyboard shortcut action for toggling breakpoint
+shortcuts.toggleBreakpoint=बà¥à¤°à¥à¤à¤ªà¤¾à¤à¤¨à¥à¤ à¤à¥à¤à¤² à¤à¤°à¥à¤
+shortcuts.toggleBreakpoint.accesskey=B
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.breakpoint): text describing
+# keyboard shortcut action for toggling conditional panel for breakpoints
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.logPoint): text describing
+# keyboard shortcut action for toggling conditional panel for log points
+
+# LOCALIZATION NOTE (shortcuts.pauseOrResume): text describing
+# keyboard shortcut action for pause of resume
+shortcuts.pauseOrResume=रà¥à¤à¥à¤/फिर शà¥à¤°à¥ à¤à¤°à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.stepOver): text describing
+# keyboard shortcut action for stepping over
+shortcuts.stepOver=à¤à¤à¥ बढ़à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.stepIn): text describing
+# keyboard shortcut action for stepping in
+shortcuts.stepIn=ठà¤à¤¦à¤° à¤à¤à¤
+
+# LOCALIZATION NOTE (shortcuts.stepOut): text describing
+# keyboard shortcut action for stepping out
+shortcuts.stepOut=बाहर à¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (shortcuts.fileSearch): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch=सà¥à¤°à¥à¤¤ फ़ाà¤à¤² à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.fileSearch2): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch2=à¥à¤¾à¤à¤² पर à¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (shortcuts.gotoLine): text describing
+# keyboard shortcut for jumping to a specific line
+shortcuts.gotoLine=पà¤à¤à¥à¤¤à¤¿ पर à¤à¤¾à¤à¤
+
+# LOCALIZATION NOTE (shortcuts.searchAgain): text describing
+# keyboard shortcut action for searching again
+shortcuts.searchAgain=पà¥à¤¨à¤ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.searchAgain2): text describing
+# keyboard shortcut action for searching again
+shortcuts.searchAgain2=ठà¤à¤²à¤¾ पाà¤à¤
+
+# LOCALIZATION NOTE (shortcuts.projectSearch): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch=पà¥à¤°à¥à¤£ परियà¥à¤à¤¨à¤¾ à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.projectSearch2): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch2=फ़ाà¤à¤²à¥à¤ मà¥à¤ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.functionSearch): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch=फ़à¤à¤à¥à¤¶à¤¨ à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.functionSearch2): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch2=फलन à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (shortcuts.buttonName): text describing
+# keyboard shortcut button text
+shortcuts.buttonName=à¤à¥à¤¬à¥à¤°à¥à¤¡ शà¥à¤°à¥à¤à¤à¤
diff --git a/devtools/client/device.properties b/devtools/client/device.properties
new file mode 100644
index 00000000000..d6f58a4dac8
--- /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=फà¥à¤¨
+device.tablets=तालिà¤à¤¾à¤à¤
+device.laptops=लà¥à¤ªà¤à¥à¤ª
+device.televisions=TVs
+device.consoles=à¤à¥à¤®à¤¿à¤à¤ à¤à¤à¤¸à¥à¤²
+device.watches=à¤à¤¡à¤¼à¥
diff --git a/devtools/client/dom.properties b/devtools/client/dom.properties
new file mode 100644
index 00000000000..b41de942598
--- /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 पà¥à¤¨à¤² फ़िलà¥à¤à¤° à¤à¤°à¥à¤.
+
+# LOCALIZATION NOTE (dom.refresh): A label for Refresh button in
+# DOM panel toolbar
+dom.refresh=ताà¤à¤¼à¤¾ à¤à¤°à¥à¤
diff --git a/devtools/client/filterwidget.properties b/devtools/client/filterwidget.properties
new file mode 100644
index 00000000000..3589d38c26e
--- /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=à¤à¥à¤ फ़िलà¥à¤à¤° निरà¥à¤¦à¤¿à¤·à¥à¤ नहà¥à¤
+
+# LOCALIZATION NOTE (emptyPresetList):
+# This string is displayed when preset's list is empty
+emptyPresetList=à¤à¤ªà¤à¥ पास à¤à¥à¤ à¤à¥ पà¥à¤°à¤¾à¤¨à¤¾ पà¥à¤°à¥à¤¸à¥à¤à¥à¤¸ नहà¥à¤ हà¥à¤, à¤à¤ª à¤à¥à¤ नाम à¤à¥à¤¨à¤à¤° तथा à¤à¤¸à¥ सà¤à¤à¤¿à¤¤ à¤à¤° à¥à¤¿à¤²à¥à¤à¤° पà¥à¤°à¥à¤¸à¥à¤à¥à¤¸ à¤à¤¾ à¤à¤£à¥à¤¡à¤¾à¤°à¤£ à¤à¤° सà¤à¤¤à¥ हà¥à¤. पà¥à¤°à¥à¤¸à¥à¤à¥à¤¸ à¤à¥ शà¥à¤à¥à¤°à¤¤à¤¾à¤ªà¥à¤°à¥à¤µà¤ à¤à¤à¥à¤¸à¥à¤¸ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हॠव à¤à¤¸à¤¾à¤¨à¥ सॠपà¥à¤¨à¤ à¤à¤ªà¤¯à¥à¤ à¤à¤¿à¤¯à¤¾ à¤à¤¾ सà¤à¤¤à¤¾ हà¥.
+
+# 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=नà¥à¤à¥ सà¥à¤à¥ à¤à¤¾ à¤à¤ªà¤¯à¥à¤ à¤à¤°à¤à¥ à¤à¤ फिलà¥à¤à¤° à¤à¥à¤¡à¤¼à¥à¤
+
+# LOCALIZATION NOTE (dropShadowPlaceholder):
+# This string is used as a placeholder for drop-shadow's input
+# in the filter list (shown when is empty)
+dropShadowPlaceholder=x y तà¥à¤°à¤¿à¤à¥à¤¯à¤¾ रà¤à¤
+
+# 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=à¥à¤¿à¤²à¥à¤à¤° à¤à¥ पà¥à¤¨à¤ à¤à¤à¥à¤¤à¤¿ मà¥à¤ लानॠà¤à¥ लिठà¤à¤ªà¤° या नà¥à¤à¥ à¤à¥à¤à¤à¥à¤
+
+# 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=मान à¤à¤à¤¾à¤¨à¥ या बà¥à¤¾à¤¨à¥ à¤à¥ लिठदाà¤à¤¯à¤¾ या बाà¤à¤¯à¤¾ à¤à¥à¤à¥à¤
+
+# LOCALIZATION NOTE (filterListSelectPlaceholder):
+# This string is used as a preview option in the list of possible filters
+#