summaryrefslogtreecommitdiffstats
path: root/dom/locales
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /dom/locales
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'dom/locales')
-rw-r--r--dom/locales/en-US/chrome/accessibility/AccessFu.properties358
-rw-r--r--dom/locales/en-US/chrome/accessibility/mac/accessible.properties52
-rw-r--r--dom/locales/en-US/chrome/accessibility/unix/accessible.properties17
-rw-r--r--dom/locales/en-US/chrome/accessibility/win/accessible.properties17
-rw-r--r--dom/locales/en-US/chrome/appstrings.properties40
-rw-r--r--dom/locales/en-US/chrome/dom/dom.properties322
-rw-r--r--dom/locales/en-US/chrome/global-strres.properties5
-rw-r--r--dom/locales/en-US/chrome/global.dtd5
-rw-r--r--dom/locales/en-US/chrome/layout/HtmlForm.properties49
-rw-r--r--dom/locales/en-US/chrome/layout/MediaDocument.properties21
-rw-r--r--dom/locales/en-US/chrome/layout/css.properties182
-rw-r--r--dom/locales/en-US/chrome/layout/htmlparser.properties132
-rw-r--r--dom/locales/en-US/chrome/layout/layout_errors.properties38
-rw-r--r--dom/locales/en-US/chrome/layout/printing.properties60
-rw-r--r--dom/locales/en-US/chrome/layout/xbl.properties15
-rw-r--r--dom/locales/en-US/chrome/layout/xmlparser.properties48
-rw-r--r--dom/locales/en-US/chrome/layout/xul.properties8
-rw-r--r--dom/locales/en-US/chrome/mathml/mathml.properties17
-rw-r--r--dom/locales/en-US/chrome/netError.dtd99
-rw-r--r--dom/locales/en-US/chrome/netErrorApp.dtd23
-rw-r--r--dom/locales/en-US/chrome/nsWebBrowserPersist.properties17
-rw-r--r--dom/locales/en-US/chrome/plugins.properties37
-rw-r--r--dom/locales/en-US/chrome/security/caps.properties112
-rw-r--r--dom/locales/en-US/chrome/security/csp.properties116
-rw-r--r--dom/locales/en-US/chrome/security/security.properties83
-rw-r--r--dom/locales/en-US/chrome/svg/svg.properties5
-rw-r--r--dom/locales/en-US/chrome/xml/prettyprint.dtd5
-rw-r--r--dom/locales/en-US/chrome/xslt/xslt.properties39
-rw-r--r--dom/locales/jar.mn35
-rw-r--r--dom/locales/moz.build7
30 files changed, 1964 insertions, 0 deletions
diff --git a/dom/locales/en-US/chrome/accessibility/AccessFu.properties b/dom/locales/en-US/chrome/accessibility/AccessFu.properties
new file mode 100644
index 000000000..52c1d7525
--- /dev/null
+++ b/dom/locales/en-US/chrome/accessibility/AccessFu.properties
@@ -0,0 +1,358 @@
+# 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/.
+
+# Screen reader started/stopped
+screenReaderStarted = Screen reader started
+screenReaderStopped = Screen reader stopped
+
+# Roles
+menubar = menu bar
+scrollbar = scroll bar
+grip = grip
+alert = alert
+menupopup = menu popup
+document = document
+pane = pane
+dialog = dialog
+separator = separator
+toolbar = toolbar
+statusbar = status bar
+table = table
+columnheader = column header
+rowheader = row header
+column = column
+row = row
+cell = cell
+link = link
+list = list
+listitem = list item
+outline = outline
+outlineitem = outline item
+pagetab = tab
+propertypage = property page
+graphic = graphic
+switch = switch
+pushbutton = button
+checkbutton = check button
+radiobutton = radio button
+combobox = combo box
+progressbar = progress bar
+slider = slider
+spinbutton = spin button
+diagram = diagram
+animation = animation
+equation = equation
+buttonmenu = button menu
+whitespace = white space
+pagetablist = tab list
+canvas = canvas
+checkmenuitem = check menu item
+label = label
+passwordtext = password text
+radiomenuitem = radio menu item
+textcontainer = text container
+togglebutton = toggle button
+treetable = tree table
+header = header
+footer = footer
+paragraph = paragraph
+entry = entry
+caption = caption
+heading = heading
+section = section
+form = form
+comboboxlist = combo box list
+comboboxoption = combo box option
+imagemap = image map
+listboxoption = option
+listbox = list box
+flatequation = flat equation
+gridcell = gridcell
+note = note
+figure = figure
+definitionlist = definition list
+term = term
+definition = definition
+
+mathmltable = math table
+mathmlcell = cell
+mathmlenclosed = enclosed
+mathmlfraction = fraction
+mathmlfractionwithoutbar = fraction without bar
+mathmlroot = root
+mathmlscripted = scripted
+mathmlsquareroot = square root
+
+# More sophisticated roles which are not actual numeric roles
+textarea = text area
+
+base = base
+close-fence = closing fence
+denominator = denominator
+numerator = numerator
+open-fence = opening fence
+overscript = overscript
+presubscript = presubscript
+presuperscript = presuperscript
+root-index = root index
+subscript = subscript
+superscript = superscript
+underscript = underscript
+
+# Text input types
+textInputType_date = date
+textInputType_email = e-mail
+textInputType_search = search
+textInputType_tel = telephone
+textInputType_url = URL
+
+# More sophisticated object descriptions
+headingLevel = heading level %S
+
+# more sophisticated list announcement
+listStart = First item
+listEnd = Last item
+# LOCALIZATION NOTE (listItemsCount): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+listItemsCount = 1 item;#1 items
+
+# LOCALIZATION NOTE: # %1$S is the position of the item n the set.
+# %2$S is the total number of such items in the set.
+# An expanded example would read "2 of 5".
+objItemOfN = %1$S of %2$S
+
+# Landmark announcements
+banner = banner
+complementary = complementary
+contentinfo = content info
+main = main
+navigation = navigation
+search = search
+
+# LOCALIZATION NOTE (tblColumnInfo): Semi-colon list of plural forms.
+# Number of columns within the table.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblColumnInfo = with 1 column;with #1 columns
+# LOCALIZATION NOTE (tblRowInfo): Semi-colon list of plural forms.
+# Number of rows within the table or grid.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblRowInfo = and 1 row;and #1 rows
+
+# table or grid cell information
+columnInfo = Column %S
+rowInfo = Row %S
+spansColumns = spans %S columns
+spansRows = spans %S rows
+
+# Invoked actions
+jumpAction = jumped
+pressAction = pressed
+checkAction = checked
+uncheckAction = unchecked
+onAction = on
+offAction = off
+selectAction = selected
+unselectAction = unselected
+openAction = opened
+closeAction = closed
+switchAction = switched
+clickAction = clicked
+collapseAction = collapsed
+expandAction = expanded
+activateAction = activated
+cycleAction = cycled
+
+# Live regions
+# 'hidden' will be spoken when something disappears in a live region.
+hidden = hidden
+
+# Tab states
+tabLoading = loading
+tabLoaded = loaded
+tabNew = new tab
+tabLoadStopped = loading stopped
+tabReload = reloading
+
+# Object states
+stateChecked = checked
+stateOn = on
+stateNotChecked = not checked
+stateOff = off
+statePressed = pressed
+# No string for a not pressed toggle button
+stateExpanded = expanded
+stateCollapsed = collapsed
+stateUnavailable = unavailable
+stateReadonly = readonly
+stateRequired = required
+stateTraversed = visited
+stateHasPopup = has pop up
+stateSelected = selected
+
+# App modes
+editingMode = editing
+navigationMode = navigating
+
+# Quick navigation modes
+quicknav_Simple = Default
+quicknav_Anchor = Anchors
+quicknav_Button = Buttons
+quicknav_Combobox = Combo boxes
+quicknav_Landmark = Landmarks
+quicknav_Entry = Entries
+quicknav_FormElement = Form elements
+quicknav_Graphic = Images
+quicknav_Heading = Headings
+quicknav_ListItem = List items
+quicknav_Link = Links
+quicknav_List = Lists
+quicknav_PageTab = Page tabs
+quicknav_RadioButton = Radio buttons
+quicknav_Separator = Separators
+quicknav_Table = Tables
+quicknav_Checkbox = Check boxes
+
+# MathML menclose notations.
+# See developer.mozilla.org/docs/Web/MathML/Element/menclose#attr-notation
+notation-longdiv = long division
+notation-actuarial = actuarial
+notation-phasorangle = phasor angle
+notation-radical = radical
+notation-box = box
+notation-roundedbox = rounded box
+notation-circle = circle
+notation-left = left
+notation-right = right
+notation-top = top
+notation-bottom = bottom
+notation-updiagonalstrike = up diagonal strike
+notation-downdiagonalstrike = down diagonal strike
+notation-verticalstrike = vertical strike
+notation-horizontalstrike = horizontal strike
+notation-updiagonalarrow = up diagonal arrow
+notation-madruwb = madruwb
+
+# Shortened role names for braille
+menubarAbbr = menu bar
+scrollbarAbbr = scroll bar
+gripAbbr = grip
+alertAbbr = alert
+menupopupAbbr = menu popup
+documentAbbr = document
+paneAbbr = pane
+dialogAbbr = dialog
+separatorAbbr = separator
+toolbarAbbr = toolbar
+statusbarAbbr = status bar
+tableAbbr = tbl
+columnheaderAbbr = column header
+rowheaderAbbr = row header
+columnAbbr = column
+rowAbbr = row
+cellAbbr = cell
+linkAbbr = lnk
+listAbbr = list
+listitemAbbr = list item
+outlineAbbr = outline
+outlineitemAbbr = outline item
+pagetabAbbr = tab
+propertypageAbbr = property page
+graphicAbbr = graphic
+pushbuttonAbbr = btn
+checkbuttonAbbr = check button
+radiobuttonAbbr = radio button
+comboboxAbbr = combo box
+progressbarAbbr = progress bar
+sliderAbbr = slider
+spinbuttonAbbr = spin button
+diagramAbbr = diagram
+animationAbbr = animation
+equationAbbr = equation
+buttonmenuAbbr = button menu
+whitespaceAbbr = white space
+pagetablistAbbr = tab list
+canvasAbbr = canvas
+checkmenuitemAbbr = check menu item
+labelAbbr = label
+passwordtextAbbr = passwdtxt
+radiomenuitemAbbr = radio menu item
+textcontainerAbbr = text container
+togglebuttonAbbr = toggle button
+treetableAbbr = tree table
+headerAbbr = header
+footerAbbr = footer
+paragraphAbbr = paragraph
+entryAbbr = entry
+captionAbbr = caption
+headingAbbr = heading
+sectionAbbr = section
+formAbbr = form
+comboboxlistAbbr = combo box list
+comboboxoptionAbbr = combo box option
+imagemapAbbr = imgmap
+listboxoptionAbbr = option
+listboxAbbr = list box
+flatequationAbbr = flat equation
+gridcellAbbr = gridcell
+noteAbbr = note
+figureAbbr = fig
+definitionlistAbbr = definition list
+termAbbr = term
+definitionAbbr = definition
+textareaAbbr = txtarea
+
+# LOCALIZATION NOTE (tblColumnInfoAbbr): Semi-colon list of plural forms.
+# Number of columns within the table.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblColumnInfoAbbr = #1c;#1c
+# LOCALIZATION NOTE (tblRowInfoAbbr): Semi-colon list of plural forms.
+# Number of rows within the table or grid.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+tblRowInfoAbbr = #1r;#1r
+cellInfoAbbr = c%Sr%S
+
+stateCheckedAbbr = (x)
+stateUncheckedAbbr = ( )
+statePressedAbbr = (x)
+stateUnpressedAbbr = ( )
+
+mathmlenclosedAbbr = enclosed
+mathmltableAbbr = tbl
+mathmlcellAbbr = cell
+mathmlfractionAbbr = frac
+mathmlfractionwithoutbarAbbr = frac no bar
+mathmlrootAbbr = root
+mathmlscriptedAbbr = scripted
+mathmlsquarerootAbbr = sqrt
+
+baseAbbr = base
+close-fenceAbbr = close
+denominatorAbbr = den
+numeratorAbbr = num
+open-fenceAbbr = open
+overscriptAbbr = over
+presubscriptAbbr = presub
+presuperscriptAbbr = presup
+root-indexAbbr = index
+subscriptAbbr = sub
+superscriptAbbr = sup
+underscriptAbbr = under
+
+notation-longdivAbbr = longdiv
+notation-actuarialAbbr = act
+notation-phasorangleAbbr = phasang
+notation-radicalAbbr = rad
+notation-boxAbbr = box
+notation-roundedboxAbbr = rndbox
+notation-circleAbbr = circ
+notation-leftAbbr = lft
+notation-rightAbbr = rght
+notation-topAbbr = top
+notation-bottomAbbr = bot
+notation-updiagonalstrikeAbbr = updiagstrike
+notation-downdiagonalstrikeAbbr = dwndiagstrike
+notation-verticalstrikeAbbr = vstrike
+notation-horizontalstrikeAbbr = hstrike
+notation-updiagonalarrowAbbr = updiagarrow
+notation-madruwbAbbr = madruwb
diff --git a/dom/locales/en-US/chrome/accessibility/mac/accessible.properties b/dom/locales/en-US/chrome/accessibility/mac/accessible.properties
new file mode 100644
index 000000000..88bdda619
--- /dev/null
+++ b/dom/locales/en-US/chrome/accessibility/mac/accessible.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/.
+
+jump = Jump
+press = Press
+check = Check
+uncheck = Uncheck
+select = Select
+open = Open
+close = Close
+switch = Switch
+click = Click
+collapse= Collapse
+expand = Expand
+activate= Activate
+cycle = Cycle
+
+# Universal Access API support
+# (Mac Only)
+# The Role Description for AXWebArea (the web widget). Like in Safari.
+htmlContent = HTML Content
+# The Role Description for the Tab button.
+tab = tab
+# The Role Description for definition list dl, dt and dd
+term = term
+definition = definition
+# The Role Description for an input type="search" text field
+searchTextField = search text field
+# The Role Description for WAI-ARIA Landmarks
+application = application
+search = search
+banner = banner
+navigation = navigation
+complementary = complementary
+content = content
+main = main
+# The (spoken) role description for various WAI-ARIA roles
+alert = alert
+alertDialog = alert dialog
+article = article
+document = document
+log = log
+marquee = marquee
+math = math
+note = note
+region = region
+status = application status
+timer = timer
+tooltip = tooltip
+separator = separator
+tabPanel = tab panel
diff --git a/dom/locales/en-US/chrome/accessibility/unix/accessible.properties b/dom/locales/en-US/chrome/accessibility/unix/accessible.properties
new file mode 100644
index 000000000..5a3536e3f
--- /dev/null
+++ b/dom/locales/en-US/chrome/accessibility/unix/accessible.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = Jump
+press = Press
+check = Check
+uncheck = Uncheck
+select = Select
+open = Open
+close = Close
+switch = Switch
+click = Click
+collapse= Collapse
+expand = Expand
+activate= Activate
+cycle = Cycle
diff --git a/dom/locales/en-US/chrome/accessibility/win/accessible.properties b/dom/locales/en-US/chrome/accessibility/win/accessible.properties
new file mode 100644
index 000000000..5a3536e3f
--- /dev/null
+++ b/dom/locales/en-US/chrome/accessibility/win/accessible.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = Jump
+press = Press
+check = Check
+uncheck = Uncheck
+select = Select
+open = Open
+close = Close
+switch = Switch
+click = Click
+collapse= Collapse
+expand = Expand
+activate= Activate
+cycle = Cycle
diff --git a/dom/locales/en-US/chrome/appstrings.properties b/dom/locales/en-US/chrome/appstrings.properties
new file mode 100644
index 000000000..25e5d35e3
--- /dev/null
+++ b/dom/locales/en-US/chrome/appstrings.properties
@@ -0,0 +1,40 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+malformedURI=The URL is not valid and cannot be loaded.
+fileNotFound=The file %S cannot be found. Please check the location and try again.
+fileAccessDenied=The file at %S is not readable.
+dnsNotFound=%S could not be found. Please check the name and try again.
+unknownProtocolFound=One of the following (%S) is not a registered protocol or is not allowed in this context.
+connectionFailure=The connection was refused when attempting to contact %S.
+netInterrupt=The connection to %S has terminated unexpectedly. Some data may have been transferred.
+netTimeout=The operation timed out when attempting to contact %S.
+redirectLoop=Redirection limit for this URL exceeded. Unable to load the requested page. This may be caused by cookies that are blocked.
+confirmRepostPrompt=To display this page, the application must send information that will repeat any action (such as a search or order confirmation) that was performed earlier.
+resendButton.label=Resend
+unknownSocketType=This document cannot be displayed unless you install the Personal Security Manager (PSM). Download and install PSM and try again, or contact your system administrator.
+netReset=The document contains no data.
+notCached=This document is no longer available.
+netOffline=This document cannot be displayed while offline. To go online, uncheck Work Offline from the File menu.
+isprinting=The document cannot change while Printing or in Print Preview.
+deniedPortAccess=Access to the port number given has been disabled for security reasons.
+proxyResolveFailure=The proxy server you have configured could not be found. Please check your proxy settings and try again.
+proxyConnectFailure=The connection was refused when attempting to contact the proxy server you have configured. Please check your proxy settings and try again.
+contentEncodingError=The page you are trying to view cannot be shown because it uses an invalid or unsupported form of compression.
+unsafeContentType=The page you are trying to view cannot be shown because it is contained in a file type that may not be safe to open. Please contact the website owners to inform them of this problem.
+externalProtocolTitle=External Protocol Request
+externalProtocolPrompt=An external application must be launched to handle %1$S: links.\n\n\nRequested link:\n\n%2$S\n\nApplication: %3$S\n\n\nIf you were not expecting this request it may be an attempt to exploit a weakness in that other program. Cancel this request unless you are sure it is not malicious.\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=<Unknown>
+externalProtocolChkMsg=Remember my choice for all links of this type.
+externalProtocolLaunchBtn=Launch application
+malwareBlocked=The site at %S has been reported as an attack site and has been blocked based on your security preferences.
+unwantedBlocked=The site at %S has been reported as serving unwanted software and has been blocked based on your security preferences.
+deceptiveBlocked=This web page at %S has been reported as a deceptive site and has been blocked based on your security preferences.
+cspBlocked=This page has a content security policy that prevents it from being loaded in this way.
+corruptedContentErrorv2=The site at %S has experienced a network protocol violation that cannot be repaired.
+remoteXUL=This page uses an unsupported technology that is no longer available by default.
+sslv3Used=The safety of your data on %S could not be guaranteed because it uses SSLv3, a broken security protocol.
+weakCryptoUsed=The owner of %S has configured their website improperly. To protect your information from being stolen, the connection to this website has not been established.
+inadequateSecurityError=The website tried to negotiate an inadequate level of security.
diff --git a/dom/locales/en-US/chrome/dom/dom.properties b/dom/locales/en-US/chrome/dom/dom.properties
new file mode 100644
index 000000000..ec0356c04
--- /dev/null
+++ b/dom/locales/en-US/chrome/dom/dom.properties
@@ -0,0 +1,322 @@
+# 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/.
+
+KillScriptTitle=Warning: Unresponsive script
+KillScriptMessage=A script on this page may be busy, or it may have stopped responding. You can stop the script now, or you can continue to see if the script will complete.
+KillScriptWithDebugMessage=A script on this page may be busy, or it may have stopped responding. You can stop the script now, open the script in the debugger, or let the script continue.
+KillScriptLocation=Script: %S
+StopScriptButton=Stop script
+DebugScriptButton=Debug script
+WaitForScriptButton=Continue
+DontAskAgain=&Don’t ask me again
+JSURLLoadBlockedWarning=Attempt to load a javascript: URL from one host\nin a window displaying content from another host\nwas blocked by the security manager.
+WindowCloseBlockedWarning=Scripts may not close windows that were not opened by script.
+OnBeforeUnloadTitle=Are you sure?
+OnBeforeUnloadMessage=This page is asking you to confirm that you want to leave - data you have entered may not be saved.
+OnBeforeUnloadStayButton=Stay on Page
+OnBeforeUnloadLeaveButton=Leave Page
+UnexpectedCanvasVariantStyle=canvas: an attempt to set strokeStyle or fillStyle to a value that is neither a string, a CanvasGradient, or a CanvasPattern was ignored.
+EmptyGetElementByIdParam=Empty string passed to getElementById().
+LowMemoryTitle=Warning: Low memory
+LowMemoryMessage=A script on this page has been stopped due to a low memory condition.
+SpeculationFailed=An unbalanced tree was written using document.write() causing data from the network to be reparsed. For more information https://developer.mozilla.org/en/Optimizing_Your_Pages_for_Speculative_Parsing
+DocumentWriteIgnored=A call to document.write() from an asynchronously-loaded external script was ignored.
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=Dropping a file into a contenteditable element failed: %S.
+FormValidationTextTooLong=Please shorten this text to %S characters or less (you are currently using %S characters).
+FormValidationTextTooShort=Please use at least %S characters (you are currently using %S characters).
+FormValidationValueMissing=Please fill out this field.
+FormValidationCheckboxMissing=Please check this box if you want to proceed.
+FormValidationRadioMissing=Please select one of these options.
+FormValidationFileMissing=Please select a file.
+FormValidationSelectMissing=Please select an item in the list.
+FormValidationInvalidEmail=Please enter an email address.
+FormValidationInvalidURL=Please enter a URL.
+FormValidationPatternMismatch=Please match the requested format.
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=Please match the requested format: %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=Please select a value that is no more than %S.
+# LOCALIZATION NOTE (FormValidationDateRangeOverflow): %S is a date.
+FormValidationDateRangeOverflow=Please select a value that is no later than %S.
+# LOCALIZATION NOTE (FormValidationTimeRangeOverflow): %S is a time.
+FormValidationTimeRangeOverflow=Please select a value that is no later than %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=Please select a value that is no less than %S.
+# LOCALIZATION NOTE (FormValidationDateRangeUnderflow): %S is a date.
+FormValidationDateRangeUnderflow=Please select a value that is no earlier than %S.
+# LOCALIZATION NOTE (FormValidationTimeRangeUnderflow): %S is a time.
+FormValidationTimeRangeUnderflow=Please select a value that is no earlier than %S.
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=Please select a valid value. The two nearest valid values are %S and %S.
+# LOCALIZATION NOTE (FormValidationStepMismatchOneValue): %S can be a number, a date or a time. This is called instead of FormValidationStepMismatch when the second value is the same as the first.
+FormValidationStepMismatchOneValue=Please select a valid value. The nearest valid value is %S.
+FormValidationBadInputNumber=Please enter a number.
+GetAttributeNodeWarning=Use of getAttributeNode() is deprecated. Use getAttribute() instead.
+SetAttributeNodeWarning=Use of setAttributeNode() is deprecated. Use setAttribute() instead.
+GetAttributeNodeNSWarning=Use of getAttributeNodeNS() is deprecated. Use getAttributeNS() instead.
+SetAttributeNodeNSWarning=Use of setAttributeNodeNS() is deprecated. Use setAttributeNS() instead.
+RemoveAttributeNodeWarning=Use of removeAttributeNode() is deprecated. Use removeAttribute() instead.
+CreateAttributeWarning=Use of document.createAttribute() is deprecated. Use element.setAttribute() instead.
+CreateAttributeNSWarning=Use of document.createAttributeNS() is deprecated. Use element.setAttributeNS() instead.
+NodeValueWarning=Use of attributes’ nodeValue attribute is deprecated. Use value instead.
+TextContentWarning=Use of attributes’ textContent attribute is deprecated. Use value instead.
+EnablePrivilegeWarning=Use of enablePrivilege is deprecated. Please use code that runs with the system principal (e.g. an extension) instead.
+nsIJSONDecodeDeprecatedWarning=nsIJSON.decode is deprecated. Please use JSON.parse instead.
+nsIJSONEncodeDeprecatedWarning=nsIJSON.encode is deprecated. Please use JSON.stringify instead.
+nsIDOMWindowInternalWarning=Use of nsIDOMWindowInternal is deprecated. Use nsIDOMWindow instead.
+FullscreenDeniedDisabled=Request for fullscreen was denied because Fullscreen API is disabled by user preference.
+FullscreenDeniedFocusedPlugin=Request for fullscreen was denied because a windowed plugin is focused.
+FullscreenDeniedHidden=Request for fullscreen was denied because the document is no longer visible.
+FullscreenDeniedContainerNotAllowed=Request for fullscreen was denied because at least one of the document’s containing elements is not an iframe or does not have an “allowfullscreen” attribute.
+FullscreenDeniedNotInputDriven=Request for fullscreen was denied because Element.requestFullscreen() was not called from inside a short running user-generated event handler.
+FullscreenDeniedNotHTMLSVGOrMathML=Request for fullscreen was denied because requesting element is not <svg>, <math>, or an HTML element.
+FullscreenDeniedNotInDocument=Request for fullscreen was denied because requesting element is no longer in its document.
+FullscreenDeniedMovedDocument=Request for fullscreen was denied because requesting element has moved document.
+FullscreenDeniedLostWindow=Request for fullscreen was denied because we no longer have a window.
+FullscreenDeniedSubDocFullscreen=Request for fullscreen was denied because a subdocument of the document requesting fullscreen is already fullscreen.
+FullscreenDeniedNotDescendant=Request for fullscreen was denied because requesting element is not a descendant of the current fullscreen element.
+FullscreenDeniedNotFocusedTab=Request for fullscreen was denied because requesting element is not in the currently focused tab.
+RemovedFullscreenElement=Exited fullscreen because fullscreen element was removed from document.
+FocusedWindowedPluginWhileFullscreen=Exited fullscreen because windowed plugin was focused.
+PointerLockDeniedDisabled=Request for pointer lock was denied because Pointer Lock API is disabled by user preference.
+PointerLockDeniedInUse=Request for pointer lock was denied because the pointer is currently controlled by a different document.
+PointerLockDeniedNotInDocument=Request for pointer lock was denied because the requesting element is not in a document.
+PointerLockDeniedSandboxed=Request for pointer lock was denied because Pointer Lock API is restricted via sandbox.
+PointerLockDeniedHidden=Request for pointer lock was denied because the document is not visible.
+PointerLockDeniedNotFocused=Request for pointer lock was denied because the document is not focused.
+PointerLockDeniedMovedDocument=Request for pointer lock was denied because the requesting element has moved document.
+PointerLockDeniedNotInputDriven=Request for pointer lock was denied because Element.requestPointerLock() was not called from inside a short running user-generated event handler, and the document is not in full screen.
+PointerLockDeniedFailedToLock=Request for pointer lock was denied because the browser failed to lock the pointer.
+HTMLSyncXHRWarning=HTML parsing in XMLHttpRequest is not supported in the synchronous mode.
+InvalidRedirectChannelWarning=Unable to redirect to %S because the channel doesn’t implement nsIWritablePropertyBag2.
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=Attempt to set a forbidden header was denied: %S
+ResponseTypeSyncXHRWarning=Use of XMLHttpRequest’s responseType attribute is no longer supported in the synchronous mode in window context.
+TimeoutSyncXHRWarning=Use of XMLHttpRequest’s timeout attribute is not supported in the synchronous mode in window context.
+JSONCharsetWarning=An attempt was made to declare a non-UTF-8 encoding for JSON retrieved using XMLHttpRequest. Only UTF-8 is supported for decoding JSON.
+# LOCALIZATION NOTE: Do not translate AudioBufferSourceNode
+MediaBufferSourceNodeResampleOutOfMemory=Insufficient memory to resample the AudioBufferSourceNode for playback.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataUnknownContentType=The buffer passed to decodeAudioData contains an unknown content type.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataUnknownError=An unknown error occurred while processing decodeAudioData.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataInvalidContent=The buffer passed to decodeAudioData contains invalid content which cannot be decoded successfully.
+# LOCALIZATION NOTE: Do not translate decodeAudioData.
+MediaDecodeAudioDataNoAudio=The buffer passed to decodeAudioData does not contain any audio.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=The HTMLMediaElement passed to createMediaElementSource has a cross-origin resource, the node will output silence.
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=The MediaStream passed to createMediaStreamSource has a cross-origin resource, the node will output silence.
+MediaLoadExhaustedCandidates=All candidate resources failed to load. Media load paused.
+MediaLoadSourceMissingSrc=<source> element has no “src” attribute. Media resource load failed.
+# LOCALIZATION NOTE: %1$S is the Http error code the server returned (e.g. 404, 500, etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadHttpError=HTTP load failed with status %1$S. Load of media resource %2$S failed.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=Invalid URI. Load of media resource %S failed.
+# LOCALIZATION NOTE: %1$S is the media resource's format/codec type (basically equivalent to the file type, e.g. MP4,AVI,WMV,MOV etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedTypeAttribute=Specified “type” attribute of “%1$S” is not supported. Load of media resource %2$S failed.
+# LOCALIZATION NOTE: %1$S is the "media" attribute value of the <source> element. It is a media query. %2$S is the URL of the media resource which failed to load.
+MediaLoadSourceMediaNotMatched=Specified “media” attribute of “%1$S” does not match the environment. Load of media resource %2$S failed.
+# LOCALIZATION NOTE: %1$S is the MIME type HTTP header being sent by the web server, %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedMimeType=HTTP “Content-Type” of “%1$S” is not supported. Load of media resource %2$S failed.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=Media resource %S could not be decoded.
+MediaWidevineNoWMFNoSilverlight=Trying to play Widevine with no Windows Media Foundation (nor Silverlight fallback), see https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaWMFNeeded=To play video formats %S, you need to install extra Microsoft software, see https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaUnsupportedBeforeWindowsVista=Video formats %S unsupported by Microsoft before Windows Vista
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaPlatformDecoderNotFound=The video on this page can’t be played. Your system may not have the required video codecs for: %S
+MediaUnsupportedLibavcodec=The video on this page can’t be played. Your system has an unsupported version of libavcodec
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=Cannot play media. No decoders for requested formats: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=No decoders for some of the requested formats: %S
+MediaCannotInitializePulseAudio=Unable to use PulseAudio
+# LOCALIZATION NOTE: Do not translate "MediaRecorder".
+MediaRecorderMultiTracksNotSupported=MediaRecorder does not support recording multiple tracks of the same type at this time.
+# LOCALIZATION NOTE: %S is the ID of the MediaStreamTrack passed to MediaStream.addTrack(). Do not translate "MediaStreamTrack" and "AudioChannel".
+MediaStreamAddTrackDifferentAudioChannel=MediaStreamTrack %S could not be added since it belongs to a different AudioChannel.
+# LOCALIZATION NOTE: Do not translate "MediaStream", "stop()" and "MediaStreamTrack"
+MediaStreamStopDeprecatedWarning=MediaStream.stop() is deprecated and will soon be removed. Use MediaStreamTrack.stop() instead.
+# LOCALIZATION NOTE: Do not translate "DOMException", "code" and "name"
+DOMExceptionCodeWarning=Use of DOMException’s code attribute is deprecated. Use name instead.
+# LOCALIZATION NOTE: Do not translate "__exposedProps__"
+NoExposedPropsWarning=Exposing chrome JS objects to content without __exposedProps__ is insecure and deprecated. See https://developer.mozilla.org/en/XPConnect_wrappers for more information.
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=Use of Mutation Events is deprecated. Use MutationObserver instead.
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=The Components object is deprecated. It will soon be removed.
+PluginHangUITitle=Warning: Unresponsive plugin
+PluginHangUIMessage=%S may be busy, or it may have stopped responding. You can stop the plugin now, or you can continue to see if the plugin will complete.
+PluginHangUIWaitButton=Continue
+PluginHangUIStopButton=Stop plugin
+PrefixedFullscreenAPIWarning=Prefixed Fullscreen API is deprecated. Please use unprefixed API for fullscreen. For more help https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=Calling detach() on a NodeIterator no longer has an effect.
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=Ignoring get or set of property that has [LenientThis] because the “this” object is incorrect.
+# LOCALIZATION NOTE: Do not translate "nsIDOMWindowUtils", "getWindowWithOuterId", or "nsIWindowMediator"
+GetWindowWithOuterIdWarning=Use of nsIDOMWindowUtils.getOuterWindowWithId() is deprecated. Instead, use the nsIWindowMediator method of the same name.
+# LOCALIZATION NOTE: Do not translate "getPreventDefault" or "defaultPrevented".
+GetPreventDefaultWarning=Use of getPreventDefault() is deprecated. Use defaultPrevented instead.
+# LOCALIZATION NOTE: Do not translate "getUserData", "setUserData", "WeakMap", or "element.dataset".
+GetSetUserDataWarning=Use of getUserData() or setUserData() is deprecated. Use WeakMap or element.dataset instead.
+# LOCALIZATION NOTE: Do not translate "mozGetAsFile" or "toBlob"
+MozGetAsFileWarning=The non-standard mozGetAsFile method is deprecated and will soon be removed. Use the standard toBlob method instead.
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=Use of captureEvents() is deprecated. To upgrade your code, use the DOM 2 addEventListener() method. For more help http://developer.mozilla.org/en/docs/DOM:element.addEventListener
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=Use of releaseEvents() is deprecated. To upgrade your code, use the DOM 2 removeEventListener() method. For more help http://developer.mozilla.org/en/docs/DOM:element.removeEventListener
+# LOCALIZATION NOTE: Do not translate "document.load()" or "XMLHttpRequest"
+UseOfDOM3LoadMethodWarning=Use of document.load() is deprecated. To upgrade your code, use the DOM XMLHttpRequest object. For more help https://developer.mozilla.org/en/XMLHttpRequest
+# LOCALIZATION NOTE: Do not translate "window.showModalDialog()" or "window.open()"
+ShowModalDialogWarning=Use of window.showModalDialog() is deprecated. Use window.open() instead. For more help https://developer.mozilla.org/en-US/docs/Web/API/Window.open
+# LOCALIZATION NOTE: Do not translate "window._content" or "window.content"
+Window_ContentWarning=window._content is deprecated. Please use window.content instead.
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user’s experience. For more help http://xhr.spec.whatwg.org/
+ImplicitMetaViewportTagFallback=No meta-viewport tag found. Please explicitly specify one to prevent unexpected behavioural changes in future versions. For more help https://developer.mozilla.org/en/docs/Mozilla/Mobile/Viewport_meta_tag
+# LOCALIZATION NOTE: Do not translate "DataContainerEvent" or "CustomEvent"
+DataContainerEventWarning=Use of DataContainerEvent is deprecated. Use CustomEvent instead.
+# LOCALIZATION NOTE: Do not translate "window.controllers"
+Window_ControllersWarning=window.controllers is deprecated. Do not use it for UA detection.
+ImportXULIntoContentWarning=Importing XUL nodes into a content document is deprecated. This functionality may be removed soon.
+XMLDocumentLoadPrincipalMismatch=Use of document.load forbidden on Documents that come from other Windows. Only the Window in which a Document was created is allowed to call .load on that Document. Preferably, use XMLHttpRequest instead.
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=An IndexedDB transaction that was not yet complete has been aborted due to page navigation.
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=Will-change memory consumption is too high. Budget limit is the document surface area multiplied by %1$S (%2$S px). Occurrences of will-change over the budget will be ignored.
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=A Worker could not be started immediately because other documents in the same origin are already using the maximum number of workers. The Worker is now queued and will be started after some of the other workers have completed.
+# LOCALIZATION NOTE: Do not translate "setVelocity", "PannerNode", "AudioListener", "speedOfSound" and "dopplerFactor"
+PannerNodeDopplerWarning=Use of setVelocity on the PannerNode and AudioListener, and speedOfSound and dopplerFactor on the AudioListener are deprecated and those members will be removed. For more help https://developer.mozilla.org/en-US/docs/Web/API/AudioListener#Deprecated_features
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=The Application Cache API (AppCache) is deprecated and will be removed at a future date. Please consider using ServiceWorker for offline support.
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=Attempting to create a Worker from an empty source. This is probably unintentional.
+WebrtcDeprecatedPrefixWarning=WebRTC interfaces with the “moz” prefix (mozRTCPeerConnection, mozRTCSessionDescription, mozRTCIceCandidate) have been deprecated.
+NavigatorGetUserMediaWarning=navigator.mozGetUserMedia has been replaced by navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=RTCPeerConnection.getLocalStreams/getRemoteStreams are deprecated. Use RTCPeerConnection.getSenders/getReceivers instead.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=Failed to load ‘%S’. A ServiceWorker intercepted the request and encountered an unexpected error.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "FetchEvent.respondWith()", "FetchEvent", "no-cors", "opaque", "Response", or "RequestMode". %1$S is a URL. %2$S is a RequestMode value.
+BadOpaqueInterceptionRequestModeWithURL=Failed to load ‘%1$S’. A ServiceWorker passed an opaque Response to FetchEvent.respondWith() while handling a ‘%2$S’ FetchEvent. Opaque Response objects are only valid when the RequestMode is ‘no-cors’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=Failed to load ‘%S’. A ServiceWorker passed an Error Response to FetchEvent.respondWith(). This typically means the ServiceWorker performed an invalid fetch() call.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=Failed to load ‘%S’. A ServiceWorker passed a used Response to FetchEvent.respondWith(). The body of a Response may only be read once. Use Response.clone() to access the body multiple times.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %s is a URL.
+BadOpaqueRedirectInterceptionWithURL=Failed to load ‘%S’. A ServiceWorker passed an opaqueredirect Response to FetchEvent.respondWith() while handling a non-navigation FetchEvent.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=Failed to load ‘%S’. A ServiceWorker passed a redirected Response to FetchEvent.respondWith() while RedirectMode is not ‘follow’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=Failed to load ‘%S’. A ServiceWorker canceled the load by calling FetchEvent.preventDefault().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=Failed to load ‘%1$S’. A ServiceWorker passed a promise to FetchEvent.respondWith() that rejected with ‘%2$S’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", "FetchEvent.respondWith()", or "Response". %1$S is a URL. %2$S is an error string.
+InterceptedNonResponseWithURL=Failed to load ‘%1$S’. A ServiceWorker passed a promise to FetchEvent.respondWith() that resolved with non-Response value ‘%2$S’.
+# LOCALIZATION NOTE: Do not translate "mozImageSmoothingEnabled", or "imageSmoothingEnabled"
+PrefixedImageSmoothingEnabledWarning=Use of mozImageSmoothingEnabled is deprecated. Please use the unprefixed imageSmoothingEnabled property instead.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=Failed to register a ServiceWorker: The path of the provided scope ‘%1$S’ is not under the max scope allowed ‘%2$S’. Adjust the scope, move the Service Worker script, or use the Service-Worker-Allowed HTTP header to allow the scope.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a stringified numeric HTTP status code like "404" and %3$S is a URL.
+ServiceWorkerRegisterNetworkError=Failed to register/update a ServiceWorker for scope ‘%1$S’: Load failed with status %2$S for script ‘%3$S’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a MIME Media Type like "text/plain" and %3$S is a URL.
+ServiceWorkerRegisterMimeTypeError=Failed to register/update a ServiceWorker for scope ‘%1$S’: Bad Content-Type of ‘%2$S’ received for script ‘%3$S’. Must be ‘text/javascript’, ‘application/x-javascript’, or ‘application/javascript’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerGraceTimeoutTermination=Terminating ServiceWorker for scope ‘%1$S’ with pending waitUntil/respondWith promises because of grace timeout.
+ExecCommandCutCopyDeniedNotInputDriven=document.execCommand(‘cut’/‘copy’) was denied because it was not called from inside a short running user-generated event handler.
+ManifestShouldBeObject=Manifest should be an object.
+ManifestScopeURLInvalid=The scope URL is invalid.
+ManifestScopeNotSameOrigin=The scope URL must be same origin as document.
+ManifestStartURLOutsideScope=The start URL is outside the scope, so the scope is invalid.
+ManifestStartURLInvalid=The start URL is invalid.
+ManifestStartURLShouldBeSameOrigin=The start URL must be same origin as document.
+# LOCALIZATION NOTE: %1$S is the name of the object whose property is invalid. %2$S is the name of the invalid property. %3$S is the expected type of the property value. E.g. "Expected the manifest's start_url member to be a string."
+ManifestInvalidType=Expected the %1$S’s %2$S member to be a %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "theme_color: 42 is not a valid CSS color."
+ManifestInvalidCSSColor=%1$S: %2$S is not a valid CSS color.
+PatternAttributeCompileFailure=Unable to check <input pattern='%S'> because the pattern is not a valid regexp: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=Failed to execute ‘postMessage’ on ‘DOMWindow’: The target origin provided (‘%S’) does not match the recipient window’s origin (‘%S’).
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=Rewriting old-style YouTube Flash embed (%S) to iframe embed (%S). Please update page to use iframe instead of embed/object, if possible.
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=Rewriting old-style YouTube Flash embed (%S) to iframe embed (%S). Params were unsupported by iframe embeds and converted. Please update page to use iframe instead of embed/object, if possible.
+# LOCALIZATION NOTE: This error is reported when the "Encryption" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Encryption", and "salt". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionHeader=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘Encryption’ header must include a unique ‘salt‘ parameter for each message. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 for more information.
+# LOCALIZATION NOTE: This error is reported when the "Crypto-Key" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Crypto-Key", and "dh". %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoKeyHeader=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘Crypto-Key‘ header must include a ‘dh‘ parameter containing the app server’s public key. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt because the deprecated
+# "Encryption-Key" header for an incoming push message is missing or invalid.
+# Do not translate "ServiceWorker", "Encryption-Key", "dh", "Crypto-Key", and
+# "Content-Encoding: aesgcm". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionKeyHeader=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘Encryption-Key’ header must include a ‘dh‘ parameter. This header is deprecated and will soon be removed. Please use ‘Crypto-Key‘ with ‘Content-Encoding: aesgcm‘ instead. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "Content-Encoding" header is missing or contains an
+# unsupported encoding. Do not translate "ServiceWorker", "Content-Encoding",
+# "aesgcm", and "aesgcm128". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncodingHeader=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘Content-Encoding‘ header must be ‘aesgcm‘. ‘aesgcm128‘ is allowed, but deprecated and will soon be removed. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "dh" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "dh", "Crypto-Key", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSenderKey=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘dh‘ parameter in the ‘Crypto-Key‘ header must be the app server’s Diffie-Hellman public key, base64url-encoded (https://tools.ietf.org/html/rfc7515#appendix-C) and in “uncompressed” or “raw” form (65 bytes before encoding). See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "salt" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "salt", "Encryption", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSalt=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘salt‘ parameter in the ‘Encryption‘ header must be base64url-encoded (https://tools.ietf.org/html/rfc7515#appendix-C), and be at least 16 bytes before encoding. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "rs" parameter is not a number, or is less than the pad size.
+# Do not translate "ServiceWorker", "rs", or "Encryption". %1$S is the
+# ServiceWorker scope URL. %2$S is the minimum value (1 for aesgcm128, 2 for
+# aesgcm).
+PushMessageBadRecordSize=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. The ‘rs‘ parameter of the ‘Encryption‘ header must be between %2$S and 2^36-31, or omitted entirely. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 for more information.
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because an encrypted record is shorter than the pad size, the pad is larger
+# than the record, or any of the padding bytes are non-zero. Do not translate
+# "ServiceWorker". %1$S is the ServiceWorker scope URL. %2$S is the pad size
+# (1 for aesgcm128, 2 for aesgcm).
+PushMessageBadPaddingError=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. A record in the encrypted message was not padded correctly. See https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 for more information.
+# LOCALIZATION NOTE: This error is reported when push message decryption fails
+# and no specific error info is available. Do not translate "ServiceWorker".
+# %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoError=The ServiceWorker for scope ‘%1$S’ failed to decrypt a push message. For help with encryption, please see https://developer.mozilla.org/docs/Web/API/Push_API/Using_the_Push_API#Encryption
+# LOCALIZATION NOTE: %1$S is the type of a DOM event. 'passive' is a literal parameter from the DOM spec.
+PreventDefaultFromPassiveListenerWarning=Ignoring ‘preventDefault()’ call on event of type ‘%1$S’ from a listener registered as ‘passive’.
+FileLastModifiedDateWarning=File.lastModifiedDate is deprecated. Use File.lastModified instead.
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmap=ImageBitmapRenderingContext.transferImageBitmap is deprecated and will be removed soon. Use ImageBitmapRenderingContext.transferFromImageBitmap instead.
+ChromeScriptedDOMParserWithoutPrincipal=Creating DOMParser without a principal is deprecated.
+IIRFilterChannelCountChangeWarning=IIRFilterNode channel count changes may produce audio glitches.
+BiquadFilterChannelCountChangeWarning=BiquadFilterNode channel count changes may produce audio glitches.
+# LOCALIZATION NOTE: %1$S is the unanimatable paced property.
+UnanimatablePacedProperty=Paced property ‘%1$S’ is not an animatable property.
+# LOCALIZATION NOTE: Do not translate ".jpeg"
+GenericImageNameJPEG=image.jpeg
+# LOCALIZATION NOTE: Do not translate ".gif"
+GenericImageNameGIF=image.gif
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=image.png
+GenericFileName=file
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationSuccess=This page was loaded in a new process due to a Large-Allocation header.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name. Do not translate GET.
+LargeAllocationNonGetRequest=A Large-Allocation header was ignored due to the load being triggered by a non-GET request.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationRelatedBrowsingContexts=A Large-Allocation header was ignored due to the presence of windows which have a reference to this browsing context.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationInIFrame=A Large-Allocation header was ignored due to the load occuring within an iframe.
+# LOCALIZATION NOTE: Do not translate "Large-Allocation", as it is a literal header name
+LargeAllocationNonE10S=A Large-Allocation header was ignored due to the document not being loaded out of process.
diff --git a/dom/locales/en-US/chrome/global-strres.properties b/dom/locales/en-US/chrome/global-strres.properties
new file mode 100644
index 000000000..b63767e22
--- /dev/null
+++ b/dom/locales/en-US/chrome/global-strres.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+16389=An unknown error has occurred (%1$S)
diff --git a/dom/locales/en-US/chrome/global.dtd b/dom/locales/en-US/chrome/global.dtd
new file mode 100644
index 000000000..661fb351f
--- /dev/null
+++ b/dom/locales/en-US/chrome/global.dtd
@@ -0,0 +1,5 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY locale.dir "ltr">
diff --git a/dom/locales/en-US/chrome/layout/HtmlForm.properties b/dom/locales/en-US/chrome/layout/HtmlForm.properties
new file mode 100644
index 000000000..621a0b2b3
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/HtmlForm.properties
@@ -0,0 +1,49 @@
+# 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/.
+
+Reset=Reset
+Submit=Submit Query
+Browse=Browse…
+FileUpload=File Upload
+DirectoryUpload=Select Folder to Upload
+DirectoryPickerOkButtonLabel=Upload
+# LOCALIZATION NOTE (IsIndexPromptWithSpace): The last character of the string
+# should be a space (U+0020) in most locales. The prompt is followed by an
+# input field. The space needs be escaped in the property file to avoid
+# trimming.
+IsIndexPromptWithSpace=This is a searchable index. Enter search keywords:\u0020
+ForgotPostWarning=Form contains enctype=%S, but does not contain method=post. Submitting normally with method=GET and no enctype instead.
+ForgotFileEnctypeWarning=Form contains a file input, but is missing method=POST and enctype=multipart/form-data on the form. The file will not be sent.
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=Form Post from %S
+CannotEncodeAllUnicode=A form was submitted in the %S encoding which cannot encode all Unicode characters, so user input may get corrupted. To avoid this problem, the page should be changed so that the form is submitted in the UTF-8 encoding either by changing the encoding of the page itself to UTF-8 or by specifying accept-charset=utf-8 on the form element.
+AllSupportedTypes=All Supported Types
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=No file selected.
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=No files selected.
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=No directory selected.
+# LOCALIZATION NOTE (XFilesSelected): this string is shown on a
+# <input type='file' multiple> when there are more than one selected file.
+# %S will be a number greater or equal to 2.
+XFilesSelected=%S files selected.
+ColorPicker=Choose a color
+DatePicker=Choose a date
+# LOCALIZATION NOTE (AndNMoreFiles): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is shown at the end of the tooltip text for <input type='file'
+# multiple> when there are more than 21 files selected (when we will only list
+# the first 20, plus an "and X more" line). #1 represents the number of files
+# minus 20 and will always be a number equal to or greater than 2. So the
+# singular case will never be used.
+AndNMoreFiles=and one more;and #1 more
+# LOCALIZATION NOTE (DefaultSummary): this string is shown on a <details> when
+# it has no direct <summary> child. Google Chrome should already have this
+# string translated.
+DefaultSummary=Details
diff --git a/dom/locales/en-US/chrome/layout/MediaDocument.properties b/dom/locales/en-US/chrome/layout/MediaDocument.properties
new file mode 100644
index 000000000..2e93011c5
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/MediaDocument.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#LOCALIZATION NOTE (ImageTitleWithDimensions2AndFile): first %S is filename, second %S is type, third %S is width and fourth %S is height
+#LOCALIZATION NOTE (ImageTitleWithoutDimensions): first %S is filename, second %S is type
+#LOCALIZATION NOTE (ImageTitleWithDimensions2): first %S is type, second %S is width and third %S is height
+#LOCALIZATION NOTE (ImageTitleWithNeitherDimensionsNorFile): first %S is type
+#LOCALIZATION NOTE (MediaTitleWithFile): first %S is filename, second %S is type
+#LOCALIZATION NOTE (MediaTitleWithNoInfo): first %S is type
+ImageTitleWithDimensions2AndFile=%S (%S Image, %S\u00A0\u00D7\u00A0%S pixels)
+ImageTitleWithoutDimensions=%S (%S Image)
+ImageTitleWithDimensions2=(%S Image, %S\u00A0\u00D7\u00A0%S pixels)
+ImageTitleWithNeitherDimensionsNorFile=(%S Image)
+MediaTitleWithFile=%S (%S Object)
+MediaTitleWithNoInfo=(%S Object)
+
+InvalidImage=The image \u201c%S\u201d cannot be displayed because it contains errors.
+ScaledImage=Scaled (%S%%)
+
+TitleWithStatus=%S - %S
diff --git a/dom/locales/en-US/chrome/layout/css.properties b/dom/locales/en-US/chrome/layout/css.properties
new file mode 100644
index 000000000..94a990f30
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/css.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/.
+
+MimeNotCss=The stylesheet %1$S was not loaded because its MIME type, “%2$S”, is not “text/css”.
+MimeNotCssWarn=The stylesheet %1$S was loaded as CSS even though its MIME type, “%2$S”, is not “text/css”.
+
+PEUnexpEOF2=Unexpected end of file while searching for %1$S.
+PEParseRuleWSOnly=Whitespace-only string given to be parsed as rule.
+PEDeclDropped=Declaration dropped.
+PEDeclSkipped=Skipped to next declaration.
+PEUnknownProperty=Unknown property ‘%1$S’.
+PEValueParsingError=Error in parsing value for ‘%1$S’.
+PEExpectEndValue=Expected end of value but found ‘%1$S’.
+PERuleTrailing=Expected end of rule but found ‘%1$S’.
+PESkipAtRuleEOF2=end of at-rule
+PEUnknownAtRule=Unrecognized at-rule or error parsing at-rule ‘%1$S’.
+PECharsetRuleEOF=charset string in @charset rule
+PECharsetRuleNotString=Expected charset string but found ‘%1$S’.
+PEGatherMediaEOF=end of media list in @import or @media rule
+PEGatherMediaNotComma=Expected ‘,’ in media list but found ‘%1$S’.
+PEGatherMediaNotIdent=Expected identifier in media list but found ‘%1$S’.
+PEGatherMediaReservedMediaType=Found reserved keyword ‘%1$S’ when looking for media type.
+PEParseSourceSizeListEOF=length value for matched media condition
+PEParseSourceSizeListNotComma=Expected ‘,’ after value but found ‘%1$S’
+PEImportNotURI=Expected URI in @import rule but found ‘%1$S’.
+PEImportBadURI=Invalid URI in @import rule: ‘%1$S’.
+PEImportUnexpected=Found unexpected ‘%1$S’ within @import.
+PEGroupRuleEOF2=end of @media, @supports or @-moz-document rule
+PEGroupRuleNestedAtRule=%1$S rule not allowed within @media or @-moz-document rule.
+PEMozDocRuleBadFunc2=Expected url(), url-prefix(), domain() or regexp() in @-moz-document rule but found ‘%1$S’.
+PEMozDocRuleNotURI=Expected URI in @-moz-document rule but found ‘%1$S’.
+PEMozDocRuleNotString=Expected string in @-moz-document rule regexp() function but found ‘%1$S’.
+PEMozDocRuleEOF=next URI in @-moz-document rule
+PEAtNSPrefixEOF=namespace prefix in @namespace rule
+PEAtNSURIEOF=namespace URI in @namespace rule
+PEAtNSUnexpected=Unexpected token within @namespace: ‘%1$S’.
+PEKeyframeNameEOF=name of @keyframes rule.
+PEKeyframeBadName=Expected identifier for name of @keyframes rule.
+PEKeyframeBrace=Expected opening { of @keyframes rule.
+PESkipDeclBraceEOF=closing } of declaration block
+PESkipRSBraceEOF=closing } of invalid rule set
+PEBadSelectorRSIgnored=Ruleset ignored due to bad selector.
+PEBadSelectorKeyframeRuleIgnored=Keyframe rule ignored due to bad selector.
+PESelectorListExtraEOF=‘,’ or ‘{’
+PESelectorListExtra=Expected ‘,’ or ‘{’ but found ‘%1$S’.
+PESelectorGroupNoSelector=Selector expected.
+PESelectorGroupExtraCombinator=Dangling combinator.
+PECounterStyleNotIdent=Expected identifier for name of @counter-style rule.
+PECounterStyleBadName=Name of @counter-style rule can’t be ‘%1$S’.
+PECounterStyleBadBlockStart=Expected ‘{’ to begin @counter-style rule but found ‘%1$S’.
+PECounterStyleEOF=closing ‘}’ of @counter-style block
+PECounterDescExpected=Expected counter descriptor but found ‘%1$S’.
+PEUnknownCounterDesc=Unknown descriptor ‘%1$S’ in @counter-style rule.
+PECounterExtendsNotIdent=Expected identifier for extends system but found ‘%1$S’.
+PECounterASWeight=Each weight in the additive-symbols descriptor must be smaller than the previous weight.
+PEClassSelEOF=class name
+PEClassSelNotIdent=Expected identifier for class selector but found ‘%1$S’.
+PECoordinatePair=Expected coordinate pair but found ‘%1$S’.
+PETypeSelEOF=element type
+PETypeSelNotType=Expected element name or ‘*’ but found ‘%1$S’.
+PEUnknownNamespacePrefix=Unknown namespace prefix ‘%1$S’.
+PEAttributeNameEOF=attribute name
+PEAttributeNameExpected=Expected identifier for attribute name but found ‘%1$S’.
+PEAttributeNameOrNamespaceExpected=Expected attribute name or namespace but found ‘%1$S’.
+PEAttSelNoBar=Expected ‘|’ but found ‘%1$S’.
+PEAttSelInnerEOF=part of attribute selector
+PEAttSelUnexpected=Unexpected token in attribute selector: ‘%1$S’.
+PEAttSelValueEOF=attribute value
+PEAttSelCloseEOF=‘]’ to end attribute selector
+PEAttSelNoClose=Expected ‘]’ to terminate attribute selector but found ‘%1$S’.
+PEAttSelBadValue=Expected identifier or string for value in attribute selector but found ‘%1$S’.
+PEPseudoSelEOF=name of pseudo-class or pseudo-element
+PEPseudoSelBadName=Expected identifier for pseudo-class or pseudo-element but found ‘%1$S’.
+PEPseudoSelNonFunc=Function token for non-function pseudo-class or pseudo-element, or the other way around, when reading ‘%1$S’.
+PEPseudoSelNotPE=Expected pseudo-element but found ‘%1$S’.
+PEPseudoSelDoubleNot=Negation pseudo-class can’t be negated ‘%1$S’.
+PEPseudoSelPEInNot=Pseudo-elements can’t be negated ‘%1$S’.
+PEPseudoSelNewStyleOnly=This pseudo-element must use the “::” form: ‘%1$S’.
+PEPseudoSelEndOrUserActionPC=Expected end of selector or a user action pseudo-class after pseudo-element but found ‘%1$S’.
+PEPseudoSelNoUserActionPC=Expected end of selector after pseudo-element that does not support user action pseudo-classes but found ‘%1$S’.
+PEPseudoSelMultiplePE=Extra pseudo-element ‘%1$S’.
+PEPseudoSelUnknown=Unknown pseudo-class or pseudo-element ‘%1$S’.
+PENegationEOF=selector within negation
+PENegationBadInner=Malformed simple selector as negation pseudo-class argument ‘%1$S’.
+PENegationNoClose=Missing closing ‘)’ in negation pseudo-class ‘%1$S’.
+PENegationBadArg=Missing argument in negation pseudo-class ‘%1$S’.
+PEPseudoClassArgEOF=argument to pseudo-class selector
+PEPseudoClassArgNotIdent=Expected identifier for pseudo-class parameter but found ‘%1$S’.
+PEPseudoClassArgNotNth=Expected part of argument to pseudo-class but found ‘%1$S’.
+PEPseudoClassNoClose=Missing closing ‘)’ in pseudo-class, found ‘%1$S’ instead.
+PEPseudoClassNoArg=Missing argument in pseudo-class ‘%1$S’.
+PEPseudoClassNotUserAction=Expected end of selector or a user action pseudo-class after pseudo-element but found pseudo-class ‘%1$S’.
+PESelectorEOF=selector
+PEBadDeclBlockStart=Expected ‘{’ to begin declaration block but found ‘%1$S’.
+PEColorEOF=color
+PEColorNotColor=Expected color but found ‘%1$S’.
+PEColorComponentEOF=color component
+PEExpectedPercent=Expected a percentage but found ‘%1$S’.
+PEExpectedInt=Expected an integer but found ‘%1$S’.
+PEExpectedNumberOrAngle=Expected a number or an angle but found ‘%1$S’.
+PEExpectedNumberOrPercent=Expected a number or a percentage but found ‘%1$S’.
+PEColorBadRGBContents=Expected number or percentage in rgb() but found ‘%1$S’.
+PEColorComponentBadTerm=Expected ‘%2$S’ but found ‘%1$S’.
+PEColorHueEOF=hue
+PEExpectedComma=Expected ‘,’ but found ‘%1$S’.
+PEColorSaturationEOF=saturation
+PEColorLightnessEOF=lightness
+PEColorOpacityEOF=opacity in color value
+PEExpectedNumber=Expected a number but found ‘%1$S’.
+PEPositionEOF=<position>
+PEExpectedPosition=Expected <position> but found ‘%1$S’.
+PEExpectedRadius=Expected radius but found ‘%1$S’.
+PEExpectedCloseParen=Expected ‘)’ but found ‘%1$S’.
+PEDeclEndEOF=‘;’ or ‘}’ to end declaration
+PEParseDeclarationNoColon=Expected ‘:’ but found ‘%1$S’.
+PEParseDeclarationDeclExpected=Expected declaration but found ‘%1$S’.
+PEEndOfDeclEOF=end of declaration
+PEImportantEOF=important
+PEExpectedImportant=Expected ‘important’ but found ‘%1$S’.
+PEBadDeclEnd=Expected ‘;’ to terminate declaration but found ‘%1$S’.
+PEBadDeclOrRuleEnd2=Expected ‘;’ or ‘}’ to terminate declaration but found ‘%1$S’.
+PEInaccessibleProperty2=Cannot specify value for internal property.
+PECommentEOF=end of comment
+SEUnterminatedString=Found unclosed string ‘%1$S’.
+PEFontDescExpected=Expected font descriptor but found ‘%1$S’.
+PEUnknownFontDesc=Unknown descriptor ‘%1$S’ in @font-face rule.
+PEMQExpectedExpressionStart=Expected ‘(’ to start media query expression but found ‘%1$S’.
+PEMQExpressionEOF=contents of media query expression
+PEMQExpectedFeatureName=Expected media feature name but found ‘%1$S’.
+PEMQExpectedFeatureNameEnd=Expected ‘:’ or ‘)’ after media feature name but found ‘%1$S’.
+PEMQNoMinMaxWithoutValue=Media features with min- or max- must have a value.
+PEMQExpectedFeatureValue=Found invalid value for media feature.
+PEBadFontBlockStart=Expected ‘{’ to begin @font-face rule but found ‘%1$S’.
+PEBadFontBlockEnd=Expected ‘}’ to end @font-face rule but found ‘%1$S’.
+PEAnonBoxNotAlone=Did not expect anonymous box.
+PEFFVUnexpectedEOF=Unexpected end of @font-feature-values rule.
+PEFFVBlockStart=Expected opening { of @font-feature-values rule but found ‘%1$S’.
+PEFFVValueSetStart=Expected opening { of feature value set but found ‘%1$S’.
+PEFFVNoFamily=Expected font family list for @font-feature-values rule but found ‘%1$S’.
+PEFFVUnexpectedBlockEnd=Expected ‘}’ to end @font-feature-values rule but found ‘%1$S’.
+PEFFVUnknownFontVariantPropValue=Unknown font-variant property value ‘%1$S’.
+PEFFVExpectedIdent=Expected identifier but found ‘%1$S’.
+PEFFVExpectedValue=Expected non-negative integer value but found ‘%1$S’.
+PEFFVTooManyValues=Too many values for feature type ‘%1$S’.
+PEFFVGenericInFamilyList=Family list cannot contain generic font family name.
+PEFFVValueDefinitionTrailing=Expected end of value definition but found ‘%1$S’.
+PEBadDirValue=Expected ‘ltr’ or ‘rtl’ in direction selector but found ‘%1$S’.
+PESupportsConditionStartEOF2=‘not’, ‘(’, or function
+PESupportsConditionInParensEOF=‘)’
+PESupportsConditionNotEOF=‘not’
+PESupportsWhitespaceRequired=Expected whitespace after ‘not’, ‘and’, or ‘or’.
+PESupportsConditionExpectedOpenParenOrFunction=Expected ‘(’ or function while parsing supports condition but found ‘%1$S’.
+PESupportsConditionExpectedCloseParen=Expected ‘)’ while parsing supports condition but found ‘%1$S’.
+PESupportsConditionExpectedStart2=Expected ‘not’, ‘(’, or function while parsing supports condition but found ‘%1$S’.
+PESupportsConditionExpectedNot=Expected ‘not’ while parsing supports condition but found ‘%1$S’.
+PESupportsGroupRuleStart=Expected ‘{’ to begin @supports rule but found ‘%1$S’.
+PEFilterEOF=filter
+PEExpectedNoneOrURL=Expected ‘none’ or URL but found ‘%1$S’.
+PEExpectedNoneOrURLOrFilterFunction=Expected ‘none’, URL, or filter function but found ‘%1$S’.
+PEExpectedNonnegativeNP=Expected non-negative number or percentage.
+PEFilterFunctionArgumentsParsingError=Error in parsing arguments for filter function.
+PEVariableEOF=variable
+PEVariableEmpty=Expected variable value but found ‘%1$S’.
+# LOCALIZATION NOTE(PEValueWithVariablesParsingErrorInValue): %1$S is replaced
+# with the property name and %2$S is replaced with the property value.
+PEValueWithVariablesParsingErrorInValue=Error in parsing value for ‘%1$S’ after substituting variables. Generated value was ‘%2$S’.
+PEValueWithVariablesFallbackInherit=Falling back to ‘inherit’.
+PEValueWithVariablesFallbackInitial=Falling back to ‘initial’.
+PEInvalidVariableReference=Property contained reference to invalid variable.
+PEInvalidVariableTokenFallback=Found invalid token ‘%1$S’ at top level of variable reference fallback.
+PEExpectedVariableNameEOF=identifier for variable name
+PEExpectedVariableName=Expected identifier for variable name but found ‘%1$S’.
+PEExpectedVariableFallback=Expected variable reference fallback after ‘,’.
+PEExpectedVariableCommaOrCloseParen=Expected ‘,’ or ‘)’ after variable name in variable reference but found ‘%1$S’.
+PESubgridNotSupported=Support for the ‘subgrid’ keyword of CSS Grid is not enabled.
+PEMoreThanOneGridRepeatAutoFillInNameList=Only one repeat(auto-fill, …) is allowed in a name list for a subgrid.
+PEMoreThanOneGridRepeatAutoFillFitInTrackList=Only one repeat(auto-fill, …) or repeat(auto-fit, …) is allowed in a track list.
+PEMoreThanOneGridRepeatTrackSize=Only one track size is allowed inside repeat(auto-fit/auto-fill, …).
+
+TooLargeDashedRadius=Border radius is too large for ‘dashed’ style (the limit is 100000px). Rendering as solid.
+TooLargeDottedRadius=Border radius is too large for ‘dotted’ style (the limit is 100000px). Rendering as solid.
diff --git a/dom/locales/en-US/chrome/layout/htmlparser.properties b/dom/locales/en-US/chrome/layout/htmlparser.properties
new file mode 100644
index 000000000..7b08270fb
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/htmlparser.properties
@@ -0,0 +1,132 @@
+# 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/.
+
+# Encoding warnings and errors
+EncNoDeclarationFrame=The character encoding of a framed document was not declared. The document may appear different if viewed without the document framing it.
+EncNoDeclarationPlain=The character encoding of the plain text document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the file needs to be declared in the transfer protocol or file needs to use a byte order mark as an encoding signature.
+EncNoDeclaration=The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol.
+EncLateMetaFrame=The character encoding declaration of the framed HTML document was not found when prescanning the first 1024 bytes of the file. When viewed without the document framing it, the page will reload automatically. The encoding declaration needs to be moved to be within the first 1024 bytes of the file.
+EncLateMeta=The character encoding declaration of the HTML document was not found when prescanning the first 1024 bytes of the file. When viewed in a differently-configured browser, this page will reload automatically. The encoding declaration needs to be moved to be within the first 1024 bytes of the file.
+EncLateMetaReload=The page was reloaded, because the character encoding declaration of the HTML document was not found when prescanning the first 1024 bytes of the file. The encoding declaration needs to be moved to be within the first 1024 bytes of the file.
+EncLateMetaTooLate=The character encoding declaration of document was found too late for it to take effect. The encoding declaration needs to be moved to be within the first 1024 bytes of the file.
+EncMetaUnsupported=An unsupported character encoding was declared for the HTML document using a meta tag. The declaration was ignored.
+EncProtocolUnsupported=An unsupported character encoding was declared on the transfer protocol level. The declaration was ignored.
+EncBomlessUtf16=Detected UTF-16-encoded Basic Latin-only text without a byte order mark and without a transfer protocol-level declaration. Encoding this content in UTF-16 is inefficient and the character encoding should have been declared in any case.
+EncMetaUtf16=A meta tag was used to declare the character encoding as UTF-16. This was interpreted as an UTF-8 declaration instead.
+EncMetaUserDefined=A meta tag was used to declare the character encoding as x-user-defined. This was interpreted as a windows-1252 declaration instead for compatibility with intentionally mis-encoded legacy fonts. This site should migrate to Unicode.
+
+# The bulk of the messages below are derived from
+# http://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=Garbage after “</”.
+errLtSlashGt=Saw “</>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped end tag.
+errCharRefLacksSemicolon=Character reference was not terminated by a semicolon.
+errNoDigitsInNCR=No digits in numeric character reference.
+errGtInSystemId=“>” in system identifier.
+errGtInPublicId=“>” in public identifier.
+errNamelessDoctype=Nameless doctype.
+errConsecutiveHyphens=Consecutive hyphens did not terminate a comment. “--” is not permitted inside a comment, but e.g. “- -” is.
+errPrematureEndOfComment=Premature end of comment. Use “-->” to end a comment properly.
+errBogusComment=Bogus comment.
+errUnquotedAttributeLt=“<” in an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeGrave=“`” in an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeQuote=Quote in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errUnquotedAttributeEquals=“=” in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errSlashNotFollowedByGt=A slash was not immediately followed by “>”.
+errNoSpaceBetweenAttributes=No space between attributes.
+errUnquotedAttributeStartLt=“<” at the start of an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeStartGrave=“`” at the start of an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeStartEquals=“=” at the start of an unquoted attribute value. Probable cause: Stray duplicate equals sign.
+errAttributeValueMissing=Attribute value missing.
+errBadCharBeforeAttributeNameLt=Saw “<” when expecting an attribute name. Probable cause: Missing “>” immediately before.
+errEqualsSignBeforeAttributeName=Saw “=” when expecting an attribute name. Probable cause: Attribute name missing.
+errBadCharAfterLt=Bad character after “<”. Probable cause: Unescaped “<”. Try escaping it as “&lt;”.
+errLtGt=Saw “<>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped start tag.
+errProcessingInstruction=Saw “<?”. Probable cause: Attempt to use an XML processing instruction in HTML. (XML processing instructions are not supported in HTML.)
+errUnescapedAmpersandInterpretedAsCharacterReference=The string following “&” was interpreted as a character reference. (“&” probably should have been escaped as “&amp;”.)
+errNotSemicolonTerminated=Named character reference was not terminated by a semicolon. (Or “&” should have been escaped as “&amp;”.)
+errNoNamedCharacterMatch=“&” did not start a character reference. (“&” probably should have been escaped as “&amp;”.)
+errQuoteBeforeAttributeName=Saw a quote when expecting an attribute name. Probable cause: “=” missing immediately before.
+errLtInAttributeName=“<” in attribute name. Probable cause: “>” missing immediately before.
+errQuoteInAttributeName=Quote in attribute name. Probable cause: Matching quote missing somewhere earlier.
+errExpectedPublicId=Expected a public identifier but the doctype ended.
+errBogusDoctype=Bogus doctype.
+maybeErrAttributesOnEndTag=End tag had attributes.
+maybeErrSlashInEndTag=Stray “/” at the end of an end tag.
+errNcrNonCharacter=Character reference expands to a non-character.
+errNcrSurrogate=Character reference expands to a surrogate.
+errNcrControlChar=Character reference expands to a control character.
+errNcrCr=A numeric character reference expanded to carriage return.
+errNcrInC1Range=A numeric character reference expanded to the C1 controls range.
+errEofInPublicId=End of file inside public identifier.
+errEofInComment=End of file inside comment.
+errEofInDoctype=End of file inside doctype.
+errEofInAttributeValue=End of file reached when inside an attribute value. Ignoring tag.
+errEofInAttributeName=End of file occurred in an attribute name. Ignoring tag.
+errEofWithoutGt=Saw end of file without the previous tag ending with “>”. Ignoring tag.
+errEofInTagName=End of file seen when looking for tag name. Ignoring tag.
+errEofInEndTag=End of file inside end tag. Ignoring tag.
+errEofAfterLt=End of file after “<”.
+errNcrOutOfRange=Character reference outside the permissible Unicode range.
+errNcrUnassigned=Character reference expands to a permanently unassigned code point.
+errDuplicateAttribute=Duplicate attribute.
+errEofInSystemId=End of file inside system identifier.
+errExpectedSystemId=Expected a system identifier but the doctype ended.
+errMissingSpaceBeforeDoctypeName=Missing space before doctype name.
+errHyphenHyphenBang=“--!” found in comment.
+errNcrZero=Character reference expands to zero.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=No space between the doctype “SYSTEM” keyword and the quote.
+errNoSpaceBetweenPublicAndSystemIds=No space between the doctype public and system identifiers.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=No space between the doctype “PUBLIC” keyword and the quote.
+
+# Tree builder errors
+errStrayStartTag2=Stray start tag “%1$S”.
+errStrayEndTag=Stray end tag “%1$S”.
+errUnclosedElements=End tag “%1$S” seen, but there were open elements.
+errUnclosedElementsImplied=End tag “%1$S” implied, but there were open elements.
+errUnclosedElementsCell=A table cell was implicitly closed, but there were open elements.
+errStrayDoctype=Stray doctype.
+errAlmostStandardsDoctype=Almost standards mode doctype. Expected “<!DOCTYPE html>”.
+errQuirkyDoctype=Quirky doctype. Expected “<!DOCTYPE html>”.
+errNonSpaceInTrailer=Non-space character in page trailer.
+errNonSpaceAfterFrameset=Non-space after “frameset”.
+errNonSpaceInFrameset=Non-space in “frameset”.
+errNonSpaceAfterBody=Non-space character after body.
+errNonSpaceInColgroupInFragment=Non-space in “colgroup” when parsing fragment.
+errNonSpaceInNoscriptInHead=Non-space character inside “noscript” inside “head”.
+errFooBetweenHeadAndBody=“%1$S” element between “head” and “body”.
+errStartTagWithoutDoctype=Start tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errNoSelectInTableScope=No “select” in table scope.
+errStartSelectWhereEndSelectExpected=“select” start tag where end tag expected.
+errStartTagWithSelectOpen=“%1$S” start tag with “select” open.
+errBadStartTagInHead2=Bad start tag “%1$S” in “head”.
+errImage=Saw a start tag “image”.
+errIsindex=“isindex” seen.
+errFooSeenWhenFooOpen=An “%1$S” start tag seen but an element of the same type was already open.
+errHeadingWhenHeadingOpen=Heading cannot be a child of another heading.
+errFramesetStart=“frameset” start tag seen.
+errNoCellToClose=No cell to close.
+errStartTagInTable=Start tag “%1$S” seen in “table”.
+errFormWhenFormOpen=Saw a “form” start tag, but there was already an active “form” element. Nested forms are not allowed. Ignoring the tag.
+errTableSeenWhileTableOpen=Start tag for “table” seen but the previous “table” is still open.
+errStartTagInTableBody=“%1$S” start tag in table body.
+errEndTagSeenWithoutDoctype=End tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errEndTagAfterBody=Saw an end tag after “body” had been closed.
+errEndTagSeenWithSelectOpen=“%1$S” end tag with “select” open.
+errGarbageInColgroup=Garbage in “colgroup” fragment.
+errEndTagBr=End tag “br”.
+errNoElementToCloseButEndTagSeen=No “%1$S” element in scope but a “%1$S” end tag seen.
+errHtmlStartTagInForeignContext=HTML start tag “%1$S” in a foreign namespace context.
+errTableClosedWhileCaptionOpen=“table” closed but “caption” was still open.
+errNoTableRowToClose=No table row to close.
+errNonSpaceInTable=Misplaced non-space characters inside a table.
+errUnclosedChildrenInRuby=Unclosed children in “ruby”.
+errStartTagSeenWithoutRuby=Start tag “%1$S” seen without a “ruby” element being open.
+errSelfClosing=Self-closing syntax (“/>”) used on a non-void HTML element. Ignoring the slash and treating as a start tag.
+errNoCheckUnclosedElementsOnStack=Unclosed elements on stack.
+errEndTagDidNotMatchCurrentOpenElement=End tag “%1$S” did not match the name of the current open element (“%2$S”).
+errEndTagViolatesNestingRules=End tag “%1$S” violates nesting rules.
+errEndWithUnclosedElements=End tag for “%1$S” seen, but there were unclosed elements. \ No newline at end of file
diff --git a/dom/locales/en-US/chrome/layout/layout_errors.properties b/dom/locales/en-US/chrome/layout/layout_errors.properties
new file mode 100644
index 000000000..e35999d21
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/layout_errors.properties
@@ -0,0 +1,38 @@
+# 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/.
+
+ImageMapRectBoundsError=The “coords” attribute of the <area shape="rect"> tag is not in the “left,top,right,bottom” format.
+ImageMapCircleWrongNumberOfCoords=The “coords” attribute of the <area shape="circle"> tag is not in the “center-x,center-y,radius” format.
+ImageMapCircleNegativeRadius=The “coords” attribute of the <area shape="circle"> tag has a negative radius.
+ImageMapPolyWrongNumberOfCoords=The “coords” attribute of the <area shape="poly"> tag is not in the “x1,y1,x2,y2 …” format.
+ImageMapPolyOddNumberOfCoords=The “coords” attribute of the <area shape="poly"> tag is missing the last “y” coordinate (the correct format is “x1,y1,x2,y2 …”).
+
+TablePartRelPosWarning=Relative positioning of table rows and row groups is now supported. This site may need to be updated because it may depend on this feature having no effect.
+ScrollLinkedEffectFound2=This site appears to use a scroll-linked positioning effect. This may not work well with asynchronous panning; see https://developer.mozilla.org/docs/Mozilla/Performance/ScrollLinkedEffects for further details and to join the discussion on related tools and features!
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooSmall):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+CompositorAnimationWarningContentTooSmall=Animation cannot be run on the compositor because frame size (%1$S, %2$S) is smaller than (16, 16)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+## (%3$S, %4$S) is a pair of integer values of the viewport size
+## (%5$S, %6$S) is a pair of integer values of the visual rectangle size
+## (%7$S) is an integer value
+CompositorAnimationWarningContentTooLarge=Animation cannot be run on the compositor because the frame size (%1$S, %2$S) is bigger than the viewport (%3$S, %4$S) or the visual rectangle (%5$S, %6$S) is larger than the maximum allowed value (%7$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=Animations of ‘backface-visibility: hidden’ transforms cannot be run on the compositor
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformPreserve3D):
+## 'transform-style: preserve-3d' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformPreserve3D=Animations of ‘transform-style: preserve-3d’ transforms cannot be run on the compositor
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=Animations of ‘transform’ on elements with SVG transforms cannot be run on the compositor
+CompositorAnimationWarningTransformWithGeometricProperties=Animations of ‘transform’ cannot be run on the compositor when geometric properties are animated on the same element at the same time
+CompositorAnimationWarningTransformFrameInactive=Animation cannot be run on the compositor because the frame was not marked active for ‘transform’ animation
+CompositorAnimationWarningOpacityFrameInactive=Animation cannot be run on the compositor because the frame was not marked active for ‘opacity’ animation
+CompositorAnimationWarningHasRenderingObserver=Animation cannot be run on the compositor because the element has rendering observers (-moz-element or SVG clipping/masking)
diff --git a/dom/locales/en-US/chrome/layout/printing.properties b/dom/locales/en-US/chrome/layout/printing.properties
new file mode 100644
index 000000000..282f11c71
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/printing.properties
@@ -0,0 +1,60 @@
+# 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/.
+
+# Page number formatting
+## @page_number The current page number
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+pagenumber=%1$d
+
+# Page number formatting
+## @page_number The current page number
+## @page_total The total number of pages
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+# the second %ld will receive the total number of pages
+pageofpages=%1$d of %2$d
+
+noprinter=No printers available.
+PrintToFile=Print To File
+noPrintFilename.title=Filename is missing
+noPrintFilename.alert=You have selected “Print To File”, and the filename is empty!
+fileConfirm.exists=%S already exists.\nDo you want to replace it?
+print_error_dialog_title=Printer Error
+printpreview_error_dialog_title=Print Preview Error
+
+# Printing error messages.
+#LOCALIZATION NOTE: Some of these messages come in pairs, one
+# for printing and one for print previewing. You can remove that
+# distinction in your language by removing the entity with the _PP
+# suffix; then the entity without a suffix will be used for both.
+# You can also add that distinction to any of the messages that don't
+# already have it by adding a new entity with a _PP suffix.
+#
+# For instance, if you delete PERR_GFX_PRINTER_DOC_IS_BUSY_PP, then
+# the PERR_GFX_PRINTER_DOC_IS_BUSY message will be used for that error
+# condition when print previewing as well as when printing. If you
+# add PERR_FAILURE_PP, then PERR_FAILURE will only be used when
+# printing, and PERR_FAILURE_PP will be used under the same conditions
+# when print previewing.
+#
+PERR_FAILURE=An error occurred while printing.
+
+PERR_ABORT=The print job was aborted, or canceled.
+PERR_NOT_AVAILABLE=Some printing functionality is not currently available.
+PERR_NOT_IMPLEMENTED=Some printing functionality is not implemented yet.
+PERR_OUT_OF_MEMORY=There is not enough free memory to print.
+PERR_UNEXPECTED=There was an unexpected problem while printing.
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=No printers available.
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=No printers available, cannot show print preview.
+PERR_GFX_PRINTER_NAME_NOT_FOUND=The selected printer could not be found.
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=Failed to open output file for print to file.
+PERR_GFX_PRINTER_STARTDOC=Printing failed while starting the print job.
+PERR_GFX_PRINTER_ENDDOC=Printing failed while completing the print job.
+PERR_GFX_PRINTER_STARTPAGE=Printing failed while starting a new page.
+PERR_GFX_PRINTER_DOC_IS_BUSY=Cannot print this document yet, it is still being loaded.
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=Cannot print-preview this document yet, it is still being loaded.
diff --git a/dom/locales/en-US/chrome/layout/xbl.properties b/dom/locales/en-US/chrome/layout/xbl.properties
new file mode 100644
index 000000000..6e8e2a2de
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/xbl.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/.
+
+UnexpectedElement=Unexpected <%1$S> element.
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=Key event not available on GTK2: key=“%S” modifiers=“%S” id=“%S”
+WinConflict2=Key event not available on some keyboard layouts: key=“%S” modifiers=“%S” id=“%S”
+TooDeepBindingRecursion=The XBL binding “%S” is already used by too many ancestor elements; not applying it to prevent infinite recursion.
+CircularExtendsBinding=Extending the XBL binding “%S” with “%S” would lead to it extending itself
+# LOCALIZATION NOTE: do not localize <handler command="…">
+CommandNotInChrome=Use of <handler command="…"> not allowed outside chrome.
+MalformedXBL = An XBL file is malformed. Did you forget the XBL namespace on the bindings tag?
+InvalidExtendsBinding=Extending “%S” is invalid. In general, do not extend tag names.
+MissingIdAttr = An “id” attribute missing on the binding tag.
diff --git a/dom/locales/en-US/chrome/layout/xmlparser.properties b/dom/locales/en-US/chrome/layout/xmlparser.properties
new file mode 100644
index 000000000..2bbb57c68
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/xmlparser.properties
@@ -0,0 +1,48 @@
+# 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/.
+
+# Map Expat error codes to error strings
+1 = out of memory
+2 = syntax error
+3 = no root element found
+4 = not well-formed
+5 = unclosed token
+6 = partial character
+7 = mismatched tag
+8 = duplicate attribute
+9 = junk after document element
+10 = illegal parameter entity reference
+11 = undefined entity
+12 = recursive entity reference
+13 = asynchronous entity
+14 = reference to invalid character number
+15 = reference to binary entity
+16 = reference to external entity in attribute
+17 = XML or text declaration not at start of entity
+18 = unknown encoding
+19 = encoding specified in XML declaration is incorrect
+20 = unclosed CDATA section
+21 = error in processing external entity reference
+22 = document is not standalone
+23 = unexpected parser state
+24 = entity declared in parameter entity
+27 = prefix not bound to a namespace
+28 = must not undeclare prefix
+29 = incomplete markup in parameter entity
+30 = XML declaration not well-formed
+31 = text declaration not well-formed
+32 = illegal character(s) in public id
+38 = reserved prefix (xml) must not be undeclared or bound to another namespace name
+39 = reserved prefix (xmlns) must not be declared or undeclared
+40 = prefix must not be bound to one of the reserved namespace names
+
+# %1$S is replaced by the Expat error string, may be followed by Expected (see below)
+# %2$S is replaced by URL
+# %3$u is replaced by line number
+# %4$u is replaced by column number
+XMLParsingError = XML Parsing Error: %1$S\nLocation: %2$S\nLine Number %3$u, Column %4$u:
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . Expected: </%S>.
diff --git a/dom/locales/en-US/chrome/layout/xul.properties b/dom/locales/en-US/chrome/layout/xul.properties
new file mode 100644
index 000000000..844f7301f
--- /dev/null
+++ b/dom/locales/en-US/chrome/layout/xul.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+MissingOverlay=Failed to load overlay from %1$S.
+PINotInProlog=<?%1$S?> processing instruction does not have any effect outside the prolog anymore (see bug 360119).
+NeededToWrapXUL=XUL box for %1$S element contained an inline %2$S child, forcing all its children to be wrapped in a block.
+NeededToWrapXULInlineBox=XUL box for %1$S element contained an inline %2$S child, forcing all its children to be wrapped in a block. This can often be fixed by replacing “display: -moz-inline-box” with “display: -moz-inline-box; display: inline-block”.
diff --git a/dom/locales/en-US/chrome/mathml/mathml.properties b/dom/locales/en-US/chrome/mathml/mathml.properties
new file mode 100644
index 000000000..421859504
--- /dev/null
+++ b/dom/locales/en-US/chrome/mathml/mathml.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+InvalidChild=Invalid markup: <%1$S> is not allowed as a child of <%2$S>.
+ChildCountIncorrect=Invalid markup: Incorrect number of children for <%1$S/> tag.
+DuplicateMprescripts=Invalid markup: More than one <mprescripts/> in <mmultiscripts/>.
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=Invalid markup: Expected exactly one Base element in <mmultiscripts/>. Found none.
+SubSupMismatch=Invalid markup: Incomplete subscript/superscript pair in <mmultiscripts/>.
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=Error in parsing the value ‘%1$S’ for ‘%2$S’ attribute of <%3$S/>. Attribute ignored.
+AttributeParsingErrorNoTag=Error in parsing the value ‘%1$S’ for ‘%2$S’ attribute. Attribute ignored.
+LengthParsingError=Error in parsing MathML attribute value ‘%1$S’ as length. Attribute ignored.
+DeprecatedSupersededBy=‘%1$S’ is deprecated in MathML 3, superseded by ‘%2$S’.
+UnitlessValuesAreDeprecated=Unitless values are deprecated in MathML 3.
diff --git a/dom/locales/en-US/chrome/netError.dtd b/dom/locales/en-US/chrome/netError.dtd
new file mode 100644
index 000000000..b141af1cb
--- /dev/null
+++ b/dom/locales/en-US/chrome/netError.dtd
@@ -0,0 +1,99 @@
+<!-- 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/. -->
+
+<!ENTITY loadError.label "Page Load Error">
+<!ENTITY retry.label "Try Again">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "Failed to Connect">
+<!ENTITY connectionFailure.longDesc "<p>Though the site seems valid, the browser was unable to establish a connection.</p><ul><li>Could the site be temporarily unavailable? Try again later.</li><li>Are you unable to browse other sites? Check the computer’s network connection.</li><li>Is your computer or network protected by a firewall or proxy? Incorrect settings can interfere with Web browsing.</li></ul>">
+
+<!ENTITY deniedPortAccess.title "Port Restricted for Security Reasons">
+<!ENTITY deniedPortAccess.longDesc "<p>The requested address specified a port (e.g. <q>mozilla.org:80</q> for port 80 on mozilla.org) normally used for purposes <em>other</em> than Web browsing. The browser has canceled the request for your protection and security.</p>">
+
+<!ENTITY dnsNotFound.title "Address Not Found">
+<!ENTITY dnsNotFound.longDesc "<p>The browser could not find the host server for the provided address.</p><ul><li>Did you make a mistake when typing the domain? (e.g. <q><strong>ww</strong>.mozilla.org</q> instead of <q><strong>www</strong>.mozilla.org</q>)</li><li>Are you certain this domain address exists? Its registration may have expired.</li><li>Are you unable to browse other sites? Check your network connection and DNS server settings.</li><li>Is your computer or network protected by a firewall or proxy? Incorrect settings can interfere with Web browsing.</li></ul>">
+
+<!ENTITY fileNotFound.title "File Not Found">
+<!ENTITY fileNotFound.longDesc "<ul><li>Could the item have been renamed, removed, or relocated?</li><li>Is there a spelling, capitalization, or other typographical error in the address?</li><li>Do you have sufficient access permissions to the requested item?</li></ul>">
+
+<!ENTITY fileAccessDenied.title "Access to the file was denied">
+<!ENTITY fileAccessDenied.longDesc "<ul><li>It may have been removed, moved, or file permissions may be preventing access.</li></ul>">
+
+<!ENTITY generic.title "Cannot Complete Request">
+<!ENTITY generic.longDesc "<p>Additional information about this problem or error is currently unavailable.</p>">
+
+<!ENTITY malformedURI.title "Invalid Address">
+<!ENTITY malformedURI.longDesc "<p>The provided address is not in a recognized format. Please check the location bar for mistakes and try again.</p>">
+
+<!ENTITY netInterrupt.title "Data Transfer Interrupted">
+<!ENTITY netInterrupt.longDesc "<p>The browser connected successfully, but the connection was interrupted while transferring information. Please try again.</p><ul><li>Are you unable to browse other sites? Check the computer’s network connection.</li><li>Still having trouble? Consult your network administrator or Internet provider for assistance.</li></ul>">
+
+<!ENTITY notCached.title "Document Expired">
+<!ENTITY notCached.longDesc "<p>The requested document is not available in the browser’s cache.</p><ul><li>As a security precaution, the browser does not automatically re-request sensitive documents.</li><li>Click Try Again to re-request the document from the website.</li></ul>">
+
+<!ENTITY netOffline.title "Offline Mode">
+<!ENTITY netOffline.longDesc2 "<p>The browser is operating in its offline mode and cannot connect to the requested item.</p><ul><li>Is the computer connected to an active network?</li><li>Press &quot;Try Again&quot; to switch to online mode and reload the page.</li></ul>">
+
+<!ENTITY contentEncodingError.title "Content Encoding Error">
+<!ENTITY contentEncodingError.longDesc "<p>The page you are trying to view cannot be shown because it uses an invalid or unsupported form of compression.</p><ul><li>Please contact the website owners to inform them of this problem.</li></ul>">
+
+<!ENTITY unsafeContentType.title "Unsafe File Type">
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Please contact the website owners to inform them of this problem.</li>
+</ul>
+">
+
+<!ENTITY netReset.title "Connection Interrupted">
+<!ENTITY netReset.longDesc "<p>The network link was interrupted while negotiating a connection. Please try again.</p>">
+
+<!ENTITY netTimeout.title "Network Timeout">
+<!ENTITY netTimeout.longDesc "<p>The requested site did not respond to a connection request and the browser has stopped waiting for a reply.</p><ul><li>Could the server be experiencing high demand or a temporary outage? Try again later.</li><li>Are you unable to browse other sites? Check the computer’s network connection.</li><li>Is your computer or network protected by a firewall or proxy? Incorrect settings can interfere with Web browsing.</li><li>Still having trouble? Consult your network administrator or Internet provider for assistance.</li></ul>">
+
+<!ENTITY unknownProtocolFound.title "Unknown Protocol">
+<!ENTITY unknownProtocolFound.longDesc "<p>The address specifies a protocol (e.g. <q>wxyz://</q>) the browser does not recognize, so the browser cannot properly connect to the site.</p><ul><li>Are you trying to access multimedia or other non-text services? Check the site for extra requirements.</li><li>Some protocols may require third-party software or plugins before the browser can recognize them.</li></ul>">
+
+<!ENTITY proxyConnectFailure.title "Proxy Server Refused Connection">
+<!ENTITY proxyConnectFailure.longDesc "<p>The browser is configured to use a proxy server, but the proxy refused a connection.</p><ul><li>Is the browser’s proxy configuration correct? Check the settings and try again.</li><li>Does the proxy service allow connections from this network?</li><li>Still having trouble? Consult your network administrator or Internet provider for assistance.</li></ul>">
+
+<!ENTITY proxyResolveFailure.title "Proxy Server Not Found">
+<!ENTITY proxyResolveFailure.longDesc "<p>The browser is configured to use a proxy server, but the proxy could not be found.</p><ul><li>Is the browser’s proxy configuration correct? Check the settings and try again.</li><li>Is the computer connected to an active network?</li><li>Still having trouble? Consult your network administrator or Internet provider for assistance.</li></ul>">
+
+<!ENTITY redirectLoop.title "Redirect Loop">
+<!ENTITY redirectLoop.longDesc "<p>The browser has stopped trying to retrieve the requested item. The site is redirecting the request in a way that will never complete.</p><ul><li>Have you disabled or blocked cookies required by this site?</li><li><em>NOTE</em>: If accepting the site’s cookies does not resolve the problem, it is likely a server configuration issue and not your computer.</li></ul>">
+
+<!ENTITY unknownSocketType.title "Incorrect Response">
+<!ENTITY unknownSocketType.longDesc "<p>The site responded to the network request in an unexpected way and the browser cannot continue.</p>">
+
+<!ENTITY nssFailure2.title "Secure Connection Failed">
+<!ENTITY nssFailure2.longDesc2 "<p>The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.</p><ul><li>Please contact the website owners to inform them of this problem.</li></ul>">
+
+<!ENTITY nssBadCert.title "Secure Connection Failed">
+<!ENTITY nssBadCert.longDesc2 "<ul>
+<li>This could be a problem with the server’s configuration, or it could be someone trying to impersonate the server.</li>
+<li>If you have connected to this server successfully in the past, the error may be temporary, and you can try again later.</li>
+</ul>
+">
+
+<!ENTITY securityOverride.linkText "Or you can add an exception…">
+<!ENTITY securityOverride.warningContent "
+<p>You should not add an exception if you are using an internet connection that you do not trust completely or if you are not used to seeing a warning for this server.</p>
+<p>If you still wish to add an exception for this site, you can do so in your advanced encryption settings.</p>
+">
+
+<!ENTITY cspBlocked.title "Blocked by Content Security Policy">
+<!ENTITY cspBlocked.longDesc "<p>The browser prevented this page from loading in this way because the page has a content security policy that disallows it.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Corrupted Content Error">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>The page you are trying to view cannot be shown because an error in the data transmission was detected.</p><ul><li>Please contact the website owners to inform them of this problem.</li></ul>">
+
+<!ENTITY remoteXUL.title "Remote XUL">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Please contact the website owners to inform them of this problem.</li></ul></p>">
+
+<!ENTITY inadequateSecurityError.title "Your connection is not secure">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "<p><span class='hostname'></span> uses security technology that is outdated and vulnerable to attack. An attacker could easily reveal information which you thought to be safe. The website administrator will need to fix the server first before you can visit the site.</p><p>Error code: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
diff --git a/dom/locales/en-US/chrome/netErrorApp.dtd b/dom/locales/en-US/chrome/netErrorApp.dtd
new file mode 100644
index 000000000..d24555538
--- /dev/null
+++ b/dom/locales/en-US/chrome/netErrorApp.dtd
@@ -0,0 +1,23 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- This file exists to allow applications to override one or more messages
+ from netError.dtd; Applications which want to do this should override
+ this file with their own version of netErrorApp.dtd -->
+
+<!-- An example (from Firefox):
+
+<!ENTITY securityOverride.linkText "Or you can add an exception…">
+<!ENTITY securityOverride.getMeOutOfHereButton "Get me out of here!">
+<!ENTITY securityOverride.exceptionButtonLabel "Add Exception…">
+
+<!ENTITY securityOverride.warningContent "
+<p>You should not add an exception if you are using an internet connection that you do not trust completely or if you are not used to seeing a warning for this server.</p>
+<p>If you still wish to add an exception for this site, you can do so in your advanced encryption settings.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+-->
diff --git a/dom/locales/en-US/chrome/nsWebBrowserPersist.properties b/dom/locales/en-US/chrome/nsWebBrowserPersist.properties
new file mode 100644
index 000000000..cd7be6e06
--- /dev/null
+++ b/dom/locales/en-US/chrome/nsWebBrowserPersist.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+readError=%S could not be saved, because the source file could not be read.\n\nTry again later, or contact the server administrator.
+writeError=%S could not be saved, because an unknown error occurred.\n\nTry saving to a different location.
+launchError=%S could not be opened, because an unknown error occurred.\n\nTry saving to disk first and then opening the file.
+diskFull=There is not enough room on the disk to save %S.\n\nRemove unnecessary files from the disk and try again, or try saving in a different location.
+readOnly=%S could not be saved, because the disk, folder, or file is write-protected.\n\nWrite-enable the disk and try again, or try saving in a different location.
+accessError=%S could not be saved, because you cannot change the contents of that folder.\n\nChange the folder properties and try again, or try saving in a different location.
+SDAccessErrorCardReadOnly=Cannot download file because the SD card is in use.
+SDAccessErrorCardMissing=Cannot download file because the SD card is missing.
+helperAppNotFound=%S could not be opened, because the associated helper application does not exist. Change the association in your preferences.
+noMemory=There is not sufficient memory to complete the action you requested.\n\nQuit some applications and try again.
+title=Downloading %S
+fileAlreadyExistsError=%S could not be saved, because a file already exists with the same name as the ‘_files’ directory.\n\nTry saving to a different location.
+fileNameTooLongError=%S could not be saved, because the file name was too long.\n\nTry saving with a shorter file name.
diff --git a/dom/locales/en-US/chrome/plugins.properties b/dom/locales/en-US/chrome/plugins.properties
new file mode 100644
index 000000000..ee8d25c88
--- /dev/null
+++ b/dom/locales/en-US/chrome/plugins.properties
@@ -0,0 +1,37 @@
+# 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 (plugins.properties):
+# Those strings are inserted into an HTML page, so all HTML characters
+# have to be escaped in a way that they show up correctly in HTML!
+
+title_label=About Plugins
+installedplugins_label=Installed plugins
+nopluginsareinstalled_label=No installed plugins found
+findpluginupdates_label=Find updates for installed plugins at
+file_label=File:
+path_label=Path:
+version_label=Version:
+state_label=State:
+state_enabled=Enabled
+state_disabled=Disabled
+mimetype_label=MIME Type
+description_label=Description
+suffixes_label=Suffixes
+learn_more_label=Learn More
+
+deprecation_description=Missing something? Some plugins are no longer supported.
+deprecation_learn_more=Learn More.
+
+# GMP Plugins
+gmp_license_info=License information
+gmp_privacy_info=Privacy Information
+
+openH264_name=OpenH264 Video Codec provided by Cisco Systems, Inc.
+openH264_description2=This plugin is automatically installed by Mozilla to comply with the WebRTC specification and to enable WebRTC calls with devices that require the H.264 video codec. Visit http://www.openh264.org/ to view the codec source code and learn more about the implementation.
+
+eme-adobe_name=Primetime Content Decryption Module provided by Adobe Systems, Incorporated
+eme-adobe_description=Play back protected web video.
+
+widevine_description=Widevine Content Decryption Module provided by Google Inc.
diff --git a/dom/locales/en-US/chrome/security/caps.properties b/dom/locales/en-US/chrome/security/caps.properties
new file mode 100644
index 000000000..22b1f963e
--- /dev/null
+++ b/dom/locales/en-US/chrome/security/caps.properties
@@ -0,0 +1,112 @@
+# 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/.
+CheckLoadURIError = Security Error: Content at %S may not load or link to %S.
+CheckSameOriginError = Security Error: Content at %S may not load data from %S.
+ExternalDataError = Security Error: Content at %S attempted to load %S, but may not load external data when being used as an image.
+
+# LOCALIZATION NOTE (GetPropertyDeniedOrigins):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+GetPropertyDeniedOrigins = Permission denied for <%1$S> to get property %2$S.%3$S from <%4$S>.
+# LOCALIZATION NOTE (GetPropertyDeniedOriginsSubjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain".
+GetPropertyDeniedOriginsSubjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to get property %2$S.%3$S from <%4$S> (document.domain has not been set).
+# LOCALIZATION NOTE (GetPropertyDeniedOriginsObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+GetPropertyDeniedOriginsObjectDomain = Permission denied for <%1$S> (document.domain has not been set) to get property %2$S.%3$S from <%4$S> (document.domain=<%5$S>).
+# LOCALIZATION NOTE (GetPropertyDeniedOriginsSubjectDomainObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain"
+# %6$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+GetPropertyDeniedOriginsSubjectDomainObjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to get property %2$S.%3$S from <%4$S> (document.domain=<%6$S>).
+
+# LOCALIZATION NOTE (SetPropertyDeniedOrigins):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+SetPropertyDeniedOrigins = Permission denied for <%1$S> to set property %2$S.%3$S on <%4$S>.
+# LOCALIZATION NOTE (SetPropertyDeniedOriginsSubjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain".
+SetPropertyDeniedOriginsSubjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to set property %2$S.%3$S on <%4$S> (document.domain has not been set).
+# LOCALIZATION NOTE (SetPropertyDeniedOriginsObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+SetPropertyDeniedOriginsObjectDomain = Permission denied for <%1$S> (document.domain has not been set) to set property %2$S.%3$S on <%4$S> (document.domain=<%5$S>).
+# LOCALIZATION NOTE (SetPropertyDeniedOriginsSubjectDomainObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the property of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain"
+# %6$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+SetPropertyDeniedOriginsSubjectDomainObjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to set property %2$S.%3$S on <%4$S> (document.domain=<%6$S>).
+
+# LOCALIZATION NOTE (CallMethodDeniedOrigins):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the method of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+CallMethodDeniedOrigins = Permission denied for <%1$S> to call method %2$S.%3$S on <%4$S>.
+# LOCALIZATION NOTE (CallMethodDeniedOriginsSubjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the method of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain".
+CallMethodDeniedOriginsSubjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to call method %2$S.%3$S on <%4$S> (document.domain has not been set).
+# LOCALIZATION NOTE (CallMethodDeniedOriginsObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the method of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+CallMethodDeniedOriginsObjectDomain = Permission denied for <%1$S> (document.domain has not been set) to call method %2$S.%3$S on <%4$S> (document.domain=<%5$S>).
+# LOCALIZATION NOTE (CallMethodDeniedOriginsSubjectDomainObjectDomain):
+# %1$S is the origin of the script which was denied access.
+# %2$S is the type of object it was.
+# %3$S is the method of that object that access was denied for.
+# %4$S is the origin of the object access was denied to.
+# %5$S is the value of document.domain for the script which was denied access;
+# don't translate "document.domain"
+# %6$S is the value of document.domain for the object being accessed;
+# don't translate "document.domain".
+CallMethodDeniedOriginsSubjectDomainObjectDomain = Permission denied for <%1$S> (document.domain=<%5$S>) to call method %2$S.%3$S on <%4$S> (document.domain=<%6$S>).
+
+GetPropertyDeniedOriginsOnlySubject = Permission denied for <%S> to get property %S.%S
+SetPropertyDeniedOriginsOnlySubject = Permission denied for <%S> to set property %S.%S
+CallMethodDeniedOriginsOnlySubject = Permission denied for <%S> to call method %S.%S
+CreateWrapperDenied = Permission denied to create wrapper for object of class %S
+CreateWrapperDeniedForOrigin = Permission denied for <%2$S> to create wrapper for object of class %1$S
+ProtocolFlagError = Warning: Protocol handler for ‘%S’ doesn’t advertise a security policy. While loading of such protocols is allowed for now, this is deprecated. Please see the documentation in nsIProtocolHandler.idl.
diff --git a/dom/locales/en-US/chrome/security/csp.properties b/dom/locales/en-US/chrome/security/csp.properties
new file mode 100644
index 000000000..fc7fc04ba
--- /dev/null
+++ b/dom/locales/en-US/chrome/security/csp.properties
@@ -0,0 +1,116 @@
+# 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/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = The page’s settings blocked the loading of a resource: %1$S
+# LOCALIZATION NOTE (CSPViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPViolationWithURI = The page’s settings blocked the loading of a resource at %2$S (“%1$S”).
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = A violation occurred for a report-only CSP policy (“%1$S”). The behavior was allowed, and a CSP report was sent.
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPROViolationWithURI = The page’s settings observed the loading of a resource at %2$S (“%1$S”). A CSP report is being sent.
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = Tried to send report to invalid URI: “%1$S”
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = couldn’t parse report URI: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = Couldn’t process unknown directive ‘%1$S’
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = Ignoring unknown option %1$S
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = Ignoring duplicate source %1$S
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = Ignoring source ‘%1$S’ (Not supported when delivered via meta element).
+# LOCALIZATION NOTE (ignoringSrcWithinScriptStyleSrc):
+# %1$S is the ignored src
+# script-src and style-src are directive names and should not be localized
+ignoringSrcWithinScriptStyleSrc = Ignoring “%1$S” within script-src or style-src: nonce-source or hash-source specified
+# LOCALIZATION NOTE (ignoringSrcForStrictDynamic):
+# %1$S is the ignored src
+# script-src, as well as 'strict-dynamic' should not be localized
+ignoringSrcForStrictDynamic = Ignoring “%1$S” within script-src: ‘strict-dynamic’ specified
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = Ignoring source “%1$S” (Only supported within script-src).
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = Keyword ‘strict-dynamic’ within “%1$S” with no valid nonce or hash might block all scripts from loading
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = The report URI (%1$S) should be an HTTP or HTTPS URI.
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = This site (%1$S) has a Report-Only policy without a report URI. CSP will not block and cannot report violations of this policy.
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = Failed to parse unrecognized source %1$S
+# LOCALIZATION NOTE (inlineScriptBlocked):
+# inline script refers to JavaScript code that is embedded into the HTML document.
+inlineScriptBlocked = An attempt to execute inline scripts has been blocked
+# LOCALIZATION NOTE (inlineStyleBlocked):
+# inline style refers to CSS code that is embedded into the HTML document.
+inlineStyleBlocked = An attempt to apply inline style sheets has been blocked
+# LOCALIZATION NOTE (scriptFromStringBlocked):
+# eval is a name and should not be localized.
+scriptFromStringBlocked = An attempt to call JavaScript from a string (by calling a function like eval) has been blocked
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = Upgrading insecure request ‘%1$S’ to use ‘%2$S’
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = Ignoring srcs for directive ‘%1$S’
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = Interpreting %1$S as a hostname, not a keyword. If you intended this to be a keyword, use ‘%2$S’ (wrapped in single quotes).
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = Not supporting directive ‘%1$S’. Directive and values will be ignored.
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = Blocking insecure request ‘%1$S’.
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values (e.g., 'require-sri-for')
+ignoringDirectiveWithNoValues = Ignoring ‘%1$S’ since it does not contain any parameters.
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = Ignoring sandbox directive when delivered in a report-only policy ‘%1$S’
+# LOCALIZATION NOTE (deprecatedReferrerDirective):
+# %1$S is the value of the deprecated Referrer Directive.
+deprecatedReferrerDirective = Referrer Directive ‘%1$S’ has been deprecated. Please use the Referrer-Policy header instead.
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = Couldn’t parse invalid source %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = Couldn’t parse invalid host %1$S
+# LOCALIZATION NOTE (couldntParseScheme):
+# %1$S is the string source
+couldntParseScheme = Couldn’t parse scheme in %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = Couldn’t parse port in %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = Duplicate %1$S directives detected. All but the first instance will be ignored.
+# LOCALIZATION NOTE (deprecatedDirective):
+# %1$S is the name of the deprecated directive, %2$S is the name of the replacement.
+deprecatedDirective = Directive ‘%1$S’ has been deprecated. Please use directive ‘%2$S’ instead.
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = Couldn’t parse invalid sandbox flag ‘%1$S’
diff --git a/dom/locales/en-US/chrome/security/security.properties b/dom/locales/en-US/chrome/security/security.properties
new file mode 100644
index 000000000..8b66cc265
--- /dev/null
+++ b/dom/locales/en-US/chrome/security/security.properties
@@ -0,0 +1,83 @@
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = Blocked loading mixed display content “%1$S”
+BlockMixedActiveContent = Blocked loading mixed active content “%1$S”
+
+# CORS
+# LOCALIZATION NOTE: Do not translate "Access-Control-Allow-Origin", Access-Control-Allow-Credentials, Access-Control-Allow-Methods, Access-Control-Allow-Headers
+CORSDisabled=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS disabled).
+CORSRequestNotHttp=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS request not http).
+CORSMissingAllowOrigin=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).
+CORSAllowOriginNotMatchingOrigin=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS header ‘Access-Control-Allow-Origin’ does not match ‘%2$S’).
+CORSNotSupportingCredentials=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at ‘%1$S’. (Reason: Credential is not supported if the CORS header ‘Access-Control-Allow-Origin’ is ‘*’).
+CORSMethodNotFound=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: Did not find method in CORS header ‘Access-Control-Allow-Methods’).
+CORSMissingAllowCredentials=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: expected ‘true’ in CORS header ‘Access-Control-Allow-Credentials’).
+CORSPreflightDidNotSucceed=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS preflight channel did not succeed).
+CORSInvalidAllowMethod=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: invalid token ‘%2$S’ in CORS header ‘Access-Control-Allow-Methods’).
+CORSInvalidAllowHeader=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: invalid token ‘%2$S’ in CORS header ‘Access-Control-Allow-Headers’).
+CORSMissingAllowHeaderFromPreflight=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: missing token ‘%2$S’ in CORS header ‘Access-Control-Allow-Headers’ from CORS preflight channel).
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: An unknown error occurred processing the header specified by the site.
+STSUntrustworthyConnection=Strict-Transport-Security: The connection to the site is untrustworthy, so the specified header was ignored.
+STSCouldNotParseHeader=Strict-Transport-Security: The site specified a header that could not be parsed successfully.
+STSNoMaxAge=Strict-Transport-Security: The site specified a header that did not include a ‘max-age’ directive.
+STSMultipleMaxAges=Strict-Transport-Security: The site specified a header that included multiple ‘max-age’ directives.
+STSInvalidMaxAge=Strict-Transport-Security: The site specified a header that included an invalid ‘max-age’ directive.
+STSMultipleIncludeSubdomains=Strict-Transport-Security: The site specified a header that included multiple ‘includeSubDomains’ directives.
+STSInvalidIncludeSubdomains=Strict-Transport-Security: The site specified a header that included an invalid ‘includeSubDomains’ directive.
+STSCouldNotSaveState=Strict-Transport-Security: An error occurred noting the site as a Strict-Transport-Security host.
+
+# LOCALIZATION NOTE: Do not translate "Public-Key-Pins", "HPKP", "max-age", "report-uri" or "includeSubDomains"
+PKPUnknownError=Public-Key-Pins: An unknown error occurred processing the header specified by the site.
+PKPUntrustworthyConnection=Public-Key-Pins: The connection to the site is untrustworthy, so the specified header was ignored.
+PKPCouldNotParseHeader=Public-Key-Pins: The site specified a header that could not be parsed successfully.
+PKPNoMaxAge=Public-Key-Pins: The site specified a header that did not include a ‘max-age’ directive.
+PKPMultipleMaxAges=Public-Key-Pins: The site specified a header that included multiple ‘max-age’ directives.
+PKPInvalidMaxAge=Public-Key-Pins: The site specified a header that included an invalid ‘max-age’ directive.
+PKPMultipleIncludeSubdomains=Public-Key-Pins: The site specified a header that included multiple ‘includeSubDomains’ directives.
+PKPInvalidIncludeSubdomains=Public-Key-Pins: The site specified a header that included an invalid ‘includeSubDomains’ directive.
+PKPInvalidPin=Public-Key-Pins: The site specified a header that included an invalid pin.
+PKPMultipleReportURIs=Public-Key-Pins: The site specified a header that included multiple ‘report-uri’ directives.
+PKPPinsetDoesNotMatch=Public-Key-Pins: The site specified a header that did not include a matching pin.
+PKPNoBackupPin=Public-Key-Pins: The site specified a header that did not include a backup pin.
+PKPCouldNotSaveState=Public-Key-Pins: An error occurred noting the site as a Public-Key-Pins host.
+PKPRootNotBuiltIn=Public-Key-Pins: The certificate used by the site was not issued by a certificate in the default root certificate store. To prevent accidental breakage, the specified header was ignored.
+
+# LOCALIZATION NOTE: Do not translate "SHA-1"
+SHA1Sig=This site makes use of a SHA-1 Certificate; it’s recommended you use certificates with signature algorithms that use hash functions stronger than SHA-1.
+InsecurePasswordsPresentOnPage=Password fields present on an insecure (http://) page. This is a security risk that allows user login credentials to be stolen.
+InsecureFormActionPasswordsPresent=Password fields present in a form with an insecure (http://) form action. This is a security risk that allows user login credentials to be stolen.
+InsecurePasswordsPresentOnIframe=Password fields present on an insecure (http://) iframe. This is a security risk that allows user login credentials to be stolen.
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=Loading mixed (insecure) active content “%1$S” on a secure page
+LoadingMixedDisplayContent2=Loading mixed (insecure) display content “%1$S” on a secure page
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=An iframe which has both allow-scripts and allow-same-origin for its sandbox attribute can remove its sandboxing.
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=The script element has a malformed hash in its integrity attribute: “%1$S”. The correct format is “<hash algorithm>-<hash value>”.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=The hash contained in the integrity attribute has the wrong length.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=The hash contained in the integrity attribute could not be decoded.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorigthm in use (e.g. "sha256").
+IntegrityMismatch=None of the “%1$S” hashes in the integrity attribute match the content of the subresource.
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource=“%1$S” is not eligible for integrity checks since it’s neither CORS-enabled nor same-origin.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=Unsupported hash algorithm in the integrity attribute: “%1$S”
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=The integrity attribute does not contain any valid metadata.
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=This site uses the cipher RC4 for encryption, which is deprecated and insecure.
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch=The resource from “%1$S” was blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not trasnlate "nosniff".
+XCTOHeaderValueMissing=X-Content-Type-Options header warning: value was “%1$S”; did you mean to send “nosniff”?
+
+BlockScriptWithWrongMimeType=Script from “%1$S” was blocked because of a disallowed MIME type.
diff --git a/dom/locales/en-US/chrome/svg/svg.properties b/dom/locales/en-US/chrome/svg/svg.properties
new file mode 100644
index 000000000..7012ec4d3
--- /dev/null
+++ b/dom/locales/en-US/chrome/svg/svg.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+AttributeParseWarning=Unexpected value %2$S parsing %1$S attribute.
diff --git a/dom/locales/en-US/chrome/xml/prettyprint.dtd b/dom/locales/en-US/chrome/xml/prettyprint.dtd
new file mode 100644
index 000000000..5e0e5eab8
--- /dev/null
+++ b/dom/locales/en-US/chrome/xml/prettyprint.dtd
@@ -0,0 +1,5 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY xml.nostylesheet "This XML file does not appear to have any style information associated with it. The document tree is shown below.">
diff --git a/dom/locales/en-US/chrome/xslt/xslt.properties b/dom/locales/en-US/chrome/xslt/xslt.properties
new file mode 100644
index 000000000..5b26cd001
--- /dev/null
+++ b/dom/locales/en-US/chrome/xslt/xslt.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+1 = Parsing an XSLT stylesheet failed.
+2 = Parsing an XPath expression failed.
+3 =
+4 = XSLT transformation failed.
+5 = Invalid XSLT/XPath function.
+6 = XSLT Stylesheet (possibly) contains a recursion.
+7 = Attribute value illegal in XSLT 1.0.
+8 = An XPath expression was expected to return a NodeSet.
+9 = XSLT transformation was terminated by <xsl:message>.
+10 = A network error occurred loading an XSLT stylesheet:
+11 = An XSLT stylesheet does not have an XML mimetype:
+12 = An XSLT stylesheet directly or indirectly imports or includes itself:
+13 = An XPath function was called with the wrong number of arguments.
+14 = An unknown XPath extension function was called.
+15 = XPath parse failure: ‘)’ expected:
+16 = XPath parse failure: invalid axis:
+17 = XPath parse failure: Name or Nodetype test expected:
+18 = XPath parse failure: ‘]’ expected:
+19 = XPath parse failure: invalid variable name:
+20 = XPath parse failure: unexpected end of expression:
+21 = XPath parse failure: operator expected:
+22 = XPath parse failure: unclosed literal:
+23 = XPath parse failure: ‘:’ unexpected:
+24 = XPath parse failure: ‘!’ unexpected, negation is not():
+25 = XPath parse failure: illegal character found:
+26 = XPath parse failure: binary operator expected:
+27 = An XSLT stylesheet load was blocked for security reasons.
+28 = Evaluating an invalid expression.
+29 = Unbalanced curly brace.
+30 = Creating an element with an invalid QName.
+31 = Variable binding shadows variable binding within the same template.
+32 = Call to the key function not allowed.
+
+LoadingError = Error loading stylesheet: %S
+TransformError = Error during XSLT transformation: %S
diff --git a/dom/locales/jar.mn b/dom/locales/jar.mn
new file mode 100644
index 000000000..fadab2a3e
--- /dev/null
+++ b/dom/locales/jar.mn
@@ -0,0 +1,35 @@
+#filter substitution
+# 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/.
+
+
+@AB_CD@.jar:
+ locale/@AB_CD@/global/css.properties (%chrome/layout/css.properties)
+ locale/@AB_CD@/global/xbl.properties (%chrome/layout/xbl.properties)
+ locale/@AB_CD@/global/xul.properties (%chrome/layout/xul.properties)
+ locale/@AB_CD@/global/printing.properties (%chrome/layout/printing.properties)
+ locale/@AB_CD@/global/layout_errors.properties (%chrome/layout/layout_errors.properties)
+ locale/@AB_CD@/global/netError.dtd (%chrome/netError.dtd)
+ locale/@AB_CD@/global/netErrorApp.dtd (%chrome/netErrorApp.dtd)
+ locale/@AB_CD@/global/global.dtd (%chrome/global.dtd)
+ locale/@AB_CD@/global/appstrings.properties (%chrome/appstrings.properties)
+ locale/@AB_CD@/global/global-strres.properties (%chrome/global-strres.properties)
+ locale/@AB_CD@/global/plugins.properties (%chrome/plugins.properties)
+ locale/@AB_CD@/global/nsWebBrowserPersist.properties (%chrome/nsWebBrowserPersist.properties)
+ locale/@AB_CD@/global/xslt/xslt.properties (%chrome/xslt/xslt.properties)
+ locale/@AB_CD@/global/dom/dom.properties (%chrome/dom/dom.properties)
+ locale/@AB_CD@/global/svg/svg.properties (%chrome/svg/svg.properties)
+ locale/@AB_CD@/global/layout/MediaDocument.properties (%chrome/layout/MediaDocument.properties)
+ locale/@AB_CD@/global/layout/htmlparser.properties (%chrome/layout/htmlparser.properties)
+ locale/@AB_CD@/global/layout/xmlparser.properties (%chrome/layout/xmlparser.properties)
+ locale/@AB_CD@/global/layout/HtmlForm.properties (%chrome/layout/HtmlForm.properties)
+ locale/@AB_CD@/global/security/caps.properties (%chrome/security/caps.properties)
+ locale/@AB_CD@/global/security/csp.properties (%chrome/security/csp.properties)
+ locale/@AB_CD@/global/security/security.properties (%chrome/security/security.properties)
+ locale/@AB_CD@/global/xml/prettyprint.dtd (%chrome/xml/prettyprint.dtd)
+ locale/@AB_CD@/global-platform/win/accessible.properties (%chrome/accessibility/win/accessible.properties)
+ locale/@AB_CD@/global-platform/mac/accessible.properties (%chrome/accessibility/mac/accessible.properties)
+ locale/@AB_CD@/global-platform/unix/accessible.properties (%chrome/accessibility/unix/accessible.properties)
+ locale/@AB_CD@/global/AccessFu.properties (%chrome/accessibility/AccessFu.properties)
+ locale/@AB_CD@/global/mathml/mathml.properties (%chrome/mathml/mathml.properties)
diff --git a/dom/locales/moz.build b/dom/locales/moz.build
new file mode 100644
index 000000000..eb4454d28
--- /dev/null
+++ b/dom/locales/moz.build
@@ -0,0 +1,7 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file