summaryrefslogtreecommitdiffstats
path: root/thunderbird-l10n/br/chrome/br/locale/br/global
diff options
context:
space:
mode:
Diffstat (limited to 'thunderbird-l10n/br/chrome/br/locale/br/global')
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/aboutStudies.properties33
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/appstrings.properties37
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/autocomplete.properties9
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/browser.properties7
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/commonDialogs.properties49
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/contentAreaCommands.properties28
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/css.properties53
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/dialog.properties12
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/dom/dom.properties498
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/extensions.properties26
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/fallbackMenubar.properties8
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/filepicker.properties21
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/global-strres.properties5
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/intl.css11
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/intl.properties43
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/keys.properties78
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/layout/HtmlForm.properties35
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/layout/MediaDocument.properties23
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/layout/htmlparser.properties145
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/layout/xmlparser.properties48
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/layout_errors.properties59
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/mathml/mathml.properties15
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/narrate.properties26
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/nsWebBrowserPersist.properties17
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/printdialog.properties52
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/printing.properties56
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/resetProfile.properties14
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/security/caps.properties9
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/security/csp.properties138
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/security/security.properties179
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/svg/svg.properties5
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/viewSource.properties16
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/wizard.properties8
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/xslt/xslt.properties39
-rw-r--r--thunderbird-l10n/br/chrome/br/locale/br/global/xul.properties5
35 files changed, 1807 insertions, 0 deletions
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/aboutStudies.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/aboutStudies.properties
new file mode 100644
index 0000000000..ce4cc4222b
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/aboutStudies.properties
@@ -0,0 +1,33 @@
+# 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 (title): keep "Shield" in English. See
+# https://wiki.mozilla.org/Firefox/Shield/Shield_Studies for more information
+title = Studioù Shield
+removeButton = Dilemel
+
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of active studies
+activeStudiesList = Studiadennoù oberiant
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of completed studies
+completedStudiesList = Studiadennoù echuet
+# LOCALIZATION NOTE (activeStatus): Displayed for an active study
+activeStatus = Oberiant
+
+# LOCALIZATION NOTE (completeStatus): Displayed for a study that is already complete
+completeStatus = Peurechu
+
+updateButtonWin = Hizivaat an dibarzhioù
+updateButtonUnix = Hizivaat ar Gwellvezioù
+learnMore = Gouzout hiroc'h
+noStudies = N'ho peus ket kemeret-perzh e studiadenn ebet.
+disabledList = An dra-se a zo ur roll eus an holl studiadennoù ho peus kemeret perzh enno. Ne vo lañset studiadenn ebet all.
+# LOCALIZATION NOTE (enabledList): %S is brandShortName (e.g. Firefox)
+enabledList = Petra eo an dra-se? %S a stalio hag a loc'ho studiadennoù bep a vare.
+
+# LOCALIZATION NOTE (preferenceStudyDescription) $1%S will be replaced with the
+# name of a preference (such as "stream.improvesearch.topSiteSearchShortcuts")
+# and $2%S will be replaced with the value of that preference. Both values will
+# be formatted differently than the surrounding text.
+preferenceStudyDescription = Ar studiadenn-mañ a lak %1$S da vezañ %2$S.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/appstrings.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/appstrings.properties
new file mode 100644
index 0000000000..22aa4351f5
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/appstrings.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/.
+
+malformedURI2=Gwiriekait eo reizh an URL ha klaskit en-dro.
+fileNotFound=Firefox n'eo ket evit kavout ar restr e %S.
+fileAccessDenied=N'haller ket lenn ar restr e %S.
+dnsNotFound2=Firefox n'eo ket evit kavout an dafariad e %S.
+unknownProtocolFound=Unan eus ar c'homenadoù da-heul (%S) n'eo ket ur c'homenad marilhet pe n'eo ket aotreet e-barzh ar c'hemperzh-mañ.
+connectionFailure=N'hall ket Firefox sevel ur c'hennask ouzh an dafariad e %S.
+netInterrupt=Troc'het eo bet ar c'hennask ouzh %S e-pad ma oa ar bajennad o vezañ karget.
+netTimeout=Re hir eo an dafariad e %S evit respont.
+redirectLoop=Dinoet eo bet gant Firefox emañ an dafariad o treuzhentañ an azgoulenn evit ar chomlec'h-mañ gant un doare na vo biken echuet.
+confirmRepostPrompt=Evit skrammañ ar bajennad-mañ e rank an arload kas stlennoù a arreo forzh peseurt ober (evel kadarnaat ur c'hlask pe un urzh) a zo bet graet a-raok.
+resendButton.label=Kas en-dro
+unknownSocketType=Ne oar ket Firefox penaos mont e darempred gant an dafariad.
+netReset=Adderaouekaet eo bet ar c'hennaskañ e-pad ma oa ar bajennad o vezañ karget.
+notCached=N'eo ket mui hegerz an teul-mañ.
+netOffline=Emañ Firefox en e vod digennasket ha n'hall ket merdeiñ war internet.
+isprinting=N'hall ket bezañ kemmet an teul e-pad ar moullañ pe gant an alberz moullañ.
+deniedPortAccess=Ar chomlec'h-mañ a ra gant ur porzh rouedad hag a vez arveret ent boaz evit palioù all eget merdeiñ war internet. Dilezet eo bet an azgoulenn gant Firefox evit ho kwarez.
+proxyResolveFailure=Kefluniet eo Firefox evit arverañ un dafariad proksi n'hall ket bezañ kavet.
+proxyConnectFailure=Kefluniet eo Firefox evit arverañ un dafariad proksi o nac'hañ ar c'hennaskadurioù.
+contentEncodingError=Ar bajennad emaoc'h o klask gwelout n'hall ket bezañ diskouezet rak un doare koazhañ anskor pe didalvoudek zo arveret ganti.
+unsafeContentType=Ar bajennad emaoc'h o klask gwelout n'hall ket bezañ diskouezet rak enni ez eus ur rizh restr a vefe arvarus da zigeriñ. Kit e darempred gant perc'henned al lec'hienn evit kas keloù dezho a-zivout ar gudenn-mañ.
+malwareBlocked=Marilhet eo bet al lec'hienn e %S evel ul lec'hienn dagus ha skoilhet eo bet hervez ho kwellvezioù a-fet diogelroez.
+harmfulBlocked=Danevellet eo bet al lec'hienn e %S evel ul lec'hienn a c'hell bezañ arvarus ha stanket eo bet hervez ho dibaboù diogelroez.
+unwantedBlocked=Marilhet eo bet al lec'hienn e %S evel ul lec'hienn o kinnig meziantoù dic'hoantaet ha skoilhet eo bet hervez ho kwellvezioù a-fet diogelroez.
+deceptiveBlocked=Marilhet eo bet ar bajenn-mañ e %S evel ur bajenn dagus ha harzet eo bet gant ho kwellvezioù diogelroez.
+cspBlocked=Ar bajennad-mañ he deus ur reolenn diogelroez a-fet endalc'hadoù a vir anezhi ouzh bezañ enframmet gant an doare-mañ.
+xfoBlocked=Ur reolenn X-Frame-Options a zo gant ar bajenn a vir anezhi da vezañ karget er c'hemperzh-mañ.
+corruptedContentErrorv2=Un dagadenn komenad rouedad a zo bet gant al lec'hienn e %S ha n'hall ket bezañ ratreet.
+sslv3Used=N'eus gwarant ebet war diogelroez ho roadennoù war %S dre ma implij SSLv3, ur c'homenad diogelroez torret.
+weakCryptoUsed=En un doare dizereat eo bet kefluniet o lec'hienn gant %S. Evit gwareziñ ho titouroù da vezañ laeret, n'eo ket bet kennasket d'al lec'hienn.
+inadequateSecurityError=Ul live direizh a ziogelroez a zo bet klasket da gevraouiñ gant al lec'hienn.
+blockedByPolicy=Stanket eo bet ar bajenn pe al lec'hienn-mañ gant hoc'h aozadur.
+networkProtocolError=Arnodet ez eus bet ur gwallerezh komenad rouedad gant FIrefox ha n'hall ket bezañ ratreet.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/autocomplete.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/autocomplete.properties
new file mode 100644
index 0000000000..105e0ff25c
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/autocomplete.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (bookmarkKeywordSearch): This is the title of autocomplete
+# entries that are bookmark keyword searches. %1$S will be replaced with the
+# domain name of the bookmark, and %2$S will be replaced with the keyword
+# search text that the user is typing. %2$S will not be empty.
+bookmarkKeywordSearch = %1$S: %2$S
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/browser.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/browser.properties
new file mode 100644
index 0000000000..a08755dc4a
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/browser.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+formPostSecureToInsecureWarning.title = Kemenn diogelroez
+formPostSecureToInsecureWarning.message = An titouroù bet enlakaet ganeoc'h war ar bajenn-mañ a vo kaset dre ur c'hennask arvarus ha gallout a rafe bezañ lennet gant tud all.\n\nHa sur oc'h e fell deoc'h kas an titouroù-se?
+formPostSecureToInsecureWarning.continue = Kenderc'hel ganti
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/commonDialogs.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/commonDialogs.properties
new file mode 100644
index 0000000000..57df231776
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/commonDialogs.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/.
+
+Alert=Galv Diwall
+Confirm=Kadarnaat
+ConfirmCheck=Kadarnaat
+Prompt=Kemenn
+# LOCALIZATION NOTE - %S is brandFullName
+PromptUsernameAndPassword3=Gwiriekadur rediet - %S
+# LOCALIZATION NOTE - %S is brandFullName
+PromptPassword3=Ger-tremen rekis - %S
+Select=Diuzañ
+OK=Mat eo
+Cancel=Nullañ
+Yes=&Ya
+No=&Ket
+Save=&Enrollañ
+Revert=&War an tu gin
+DontSave=&Na enrollañ
+ScriptDlgGenericHeading=[Arload JavaScript]
+ScriptDlgHeading=Ar bajenn war %S a lâr:
+ScriptDialogLabel=Mirout ar bajennad-mañ ouzh krouiñ boestadoù emziviz ouzhpenn
+# LOCALIZATION NOTE (ScriptDialogLabelContentPrincipal):
+# %S is either the domain and port of the site prompting, or the name of
+# an add-on prompting.
+ScriptDialogLabelContentPrincipal=Na aotren %S da c’houlenn en-dro diganeoc’h
+ScriptDialogPreventTitle=Kadarnaat gwellvez ar voestad emziviz
+# LOCALIZATION NOTE (EnterLoginForRealm3, EnterLoginForProxy3):
+# %1 is an untrusted string provided by a remote server. It could try to
+# take advantage of sentence structure in order to mislead the user (see
+# bug 244273). %1 should be integrated into the translated sentences as
+# little as possible. %2 is the url of the site being accessed.
+EnterLoginForRealm3=Emañ ar proksi %2$S oc'h azgoulenn un anv arveriad hag ur ger-tremen. Emañ al lec'hienn o lavarout: “%1$S”
+EnterLoginForProxy3=Emañ ar proksi %2$S oc'h azgoulenn un anv arveriad hag ur ger-tremen. Emañ al lec'hienn o lavarout: “%1$S”
+EnterUserPasswordFor2=Emañ ar proksi %1$S oc'h azgoulenn un anv arveriad hag ur ger-tremen.
+EnterUserPasswordForCrossOrigin2=Emañ ar proksi %1$S oc'h azgoulenn un anv arveriad hag ur ger-tremen. DIWALLIT: Ne vo ket kaset ho ker-tremen d'al lec'hienn emaoc'h o weladenniñ!
+EnterPasswordFor=Enankit ur ger-tremen evit %1$S war %2$S
+# %S is the username for which a password is requested.
+# %S is the domain of the site being accessed.
+SignIn=Kennaskañ
+
+ScriptDlgNullPrincipalHeading=This page says:
+ScriptDialogLabelNullPrincipal=Don’t allow this site to prompt you again
+EnterCredentials=This site is asking you to sign in.
+# %S is the username for which a password is requested.
+EnterPasswordOnlyFor=This site is asking you to sign in as %S.
+# %S is the domain of the site being accessed.
+EnterCredentialsCrossOrigin=This site is asking you to sign in. Warning: Your login information will be shared with %S, not the website you are currently visiting.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/contentAreaCommands.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/contentAreaCommands.properties
new file mode 100644
index 0000000000..1ef5a065da
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/contentAreaCommands.properties
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# context menu strings
+
+SaveImageTitle=Enrollañ ar skeudenn
+SaveMediaTitle=Enrollañ ar media
+SaveVideoTitle=Enrollañ ar video
+SaveAudioTitle=Enrollañ ar son
+SaveLinkTitle=Enrollañ evel
+WebPageCompleteFilter=Pajennad web, klok
+WebPageHTMLOnlyFilter=Pajennad Web, HTML hepken
+WebPageXHTMLOnlyFilter=Pajennad Web, XHTML hepken
+WebPageSVGOnlyFilter=Pajennad Web, SVG hepken
+WebPageXMLOnlyFilter=Pajennad Web, XML hepken
+
+# LOCALIZATION NOTE (UntitledSaveFileName):
+# This is the default filename used when saving a file if a filename could
+# not be determined or if a filename was invalid. A period and file
+# extension may be appended to this string.
+UntitledSaveFileName=Titl ebet
+
+# LOCALIZATION NOTE (filesFolder):
+# This is the name of the folder that is created parallel to a HTML file
+# when it is saved "With Images". The %S section is replaced with the
+# leaf name of the file being saved (minus extension).
+filesFolder=%S_files
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/css.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/css.properties
new file mode 100644
index 0000000000..aa0da855a2
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/css.properties
@@ -0,0 +1,53 @@
+# 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=N'eo ket bet karget ar pajennaozañ %1$S peogwir n'eo ket "testenn/css" e rizh MIME, "%2$S".
+MimeNotCssWarn=Karget eo bet ar pajennaozad %1$S evel CSS daoust dezhañ bezañ MIME e rizh, "%2$S", n'eo ket "text/css".
+
+PEDeclDropped=Diskleriadur dilezet.
+PEDeclSkipped=Lammat betek an diskleriadur war-lerc'h.
+PEUnknownProperty=Perzh dianav '%1$S'.
+PEValueParsingError=Fazi en ur zezrannañ ar werzh evit '%1$S'.
+PEUnknownAtRule=Reolenn "at" dianavezet pe fazi en ur zezrannañ ar reolenn "at" '%1$S'.
+PEMQUnexpectedOperator=Oberataer dic'hortoz e-barzh ar roll mediaoù.
+PEMQUnexpectedToken=Odeer dic'hortoz ‘%1$S’ e-barzh ar roll mediaoù.
+PEAtNSUnexpected=Reveziadenn dic'hortoz e @namespace: '%1$S'.
+PEKeyframeBadName=Gortozet e oa un naoudi evit anv ar reolenn @keyframes.
+PEBadSelectorRSIgnored=Reolennaoueg laosket a-gostez en abeg d'un diuzer fall.
+PEBadSelectorKeyframeRuleIgnored=Laosket eo bet a-gostez ar reolenn Keyframe en abeg d'un diuzer dizereat.
+PESelectorGroupNoSelector=Diuzer gortozet.
+PESelectorGroupExtraCombinator=Kedaozerez vomedus.
+PEClassSelNotIdent=Gortozet e oa un naoudi evit an diuzer rummad met kavet eo bet '%1$S'.
+PETypeSelNotType=Gortozet e oa anv an elfenn pe '*' met kavet eo bet '%1$S'.
+PEUnknownNamespacePrefix=Rakger anv domani dianav '%1$S'.
+PEAttributeNameExpected=Gortozet e oa un naoudi evit un anv doareenn met kavet eo bet '%1$S'.
+PEAttributeNameOrNamespaceExpected=Gortozet e oa anv an doareenn pe anv an domani met kavet eo bet '%1$S'.
+PEAttSelNoBar=Gortozet e oa '|' met kavet eo bet '%1$S'.
+PEAttSelUnexpected=Reveziadenn dic'hortoz en diuzer doareenn: '%1$S'.
+PEAttSelBadValue=Gortozet e oa un naoudi pe un hedad evit ar werzh e diuzer an doareenn met kavet eo bet '%1$S'.
+PEPseudoSelBadName=Gortozet e oa un naoudi evit ar brizhrummad pe vrizhelfenn met kavet eo bet '%1$S'.
+PEPseudoSelEndOrUserActionPC=Gortozet e oa dibenn an diuzer pe ur brizhrummad gwezh arveriad goude ar brizhelfenn met kavet eo bet '%1$S'.
+PEPseudoSelUnknown=Brizhrummad pe vrizhelfenn dianav '%1$S'.
+PEPseudoClassArgNotIdent=Naoudi gortozet evit an arventenn brizhrummad met kavez eo bet '%1$S'.
+PEColorNotColor=Gortozet e oa ul liv met kavet eo bet '%1$S'.
+PEParseDeclarationDeclExpected=Diskleriadur gortozet met kavet eo bet '%1$S'.
+PEUnknownFontDesc=Taolenner '%1$S' dianav e-barzh ar reolenn @font-face.
+PEMQExpectedFeatureName=Gortozet e oa anv keweriuster ur media met kavet eo bet '%1$S'.
+PEMQNoMinMaxWithoutValue=Ret eo da geweriusterioù ar media gant min- pe max- kaout ur werzh.
+PEMQExpectedFeatureValue=Kavet ez eus bet ur werzh didalvoudek evit ar c'heweriuster media.
+PEExpectedNoneOrURL=Gortozet e oa 'none' pe un URL met kavet eo bet '%1$S'.
+PEExpectedNoneOrURLOrFilterFunction=Gortozet e oa 'none', un URL pe un arc'hwel silañ met kavet eo bet '%1$S'.
+PEDisallowedImportRule=Ar reolennoù @import n'int ket talvoudek evit ar poent er follennoù stil savet.
+
+TooLargeDashedRadius=Re ledan eo skin ar riblenn evit ar stil ‘dashed’ (100000piksel eo ar vevenn). Deouezañ evel unvan .
+TooLargeDottedRadius=Re ledan eo skin ar riblenn evit ar stil ‘dotted’ (100000piksel eo ar vevenn). Deouezañ evel unvan.
+
+PEPRSyntaxFieldEmptyInput=@property syntax descriptor is empty.
+PEPRSyntaxFieldExpectedPipe=@property syntax descriptor ‘%S’ contains components without a pipe between them.
+PEPRSyntaxFieldInvalidNameStart=@property syntax descriptor ‘%S’ contains a component name that starts with an invalid character.
+PEPRSyntaxFieldInvalidName=@property syntax descriptor ‘%S’ contains a component name with an invalid character.
+PEPRSyntaxFieldUnclosedDataTypeName=@property syntax descriptor ‘%S’ contains an unclosed data type name.
+PEPRSyntaxFieldUnexpectedEOF=@property syntax descriptor ‘%S’ is incomplete.
+PEPRSyntaxFieldUnknownDataTypeName=@property syntax descriptor ‘%S’ contains an unknown data type name.
+PENeverMatchingHostSelector=:host selector in ‘%S’ is not featureless and will never match. Maybe you intended to use :host()?
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/dialog.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/dialog.properties
new file mode 100644
index 0000000000..f39ca9ce99
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/dialog.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+button-accept=Mat eo
+button-cancel=Nullañ
+button-help=Skoazell
+button-disclosure=Muioc'h a ditouroù
+accesskey-accept=
+accesskey-cancel=
+accesskey-help=s
+accesskey-disclosure=m
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/dom/dom.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/dom/dom.properties
new file mode 100644
index 0000000000..bb3043cdf4
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/dom/dom.properties
@@ -0,0 +1,498 @@
+# 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=Evezh: skript anrespontus
+KillScriptMessage=Ur skript war ar bajennad-mañ a c'hallfe bezañ ac'hubet pe ne respont ket ken. Arsaviñ ar skript bremañ a c'hallit pe, kenderc'hel gant sellout mar bez echuet gant ar skript.
+KillScriptWithDebugMessage=Ur skript war ar bajennad-mañ a c'hallfe bezañ ac'hubet pe ne respont ket ken. Arsaviñ ar skript bremañ a c'hallit pe zigeriñ ar skript en un diveugerez pe leuskel ar skript da vont en-dro.
+KillScriptLocation=Skript: %S
+
+KillAddonScriptTitle=Evezh: skript askouezh anrespontus
+# LOCALIZATION NOTE (KillAddonScriptMessage): %1$S is the name of an extension.
+# %2$S is the name of the application (e.g., Firefox).
+KillAddonScriptMessage=Ur skript eus an askouezh “%1$S” a zo lañset war ar bajenn-mañ, ha lakaat a ra %2$S da vezañ anrespontus.\n\nGallout a ra bezañ ac'hubet, pe marteze en deus paouezet da respont penn-da-benn. Gallout a rit herzel ar skript bremañ, pe gallout a rit kenderc'hel ha gwelet ma vo echuet.
+KillAddonScriptGlobalMessage=Mirout ar skript anrespontus da vezañ lañset war ar bajenn-mañ a-raok ma vefe adkarget.
+
+StopScriptButton=Arsaviñ ar skript
+DebugScriptButton=Skript diveugañ
+WaitForScriptButton=Kenderc'hel ganti
+DontAskAgain=&Na c'houlenn diganin en-dro
+WindowCloseBlockedWarning=Skriptoù n'int ket evit serriñ prenestroù nad int ket bet digoret gant ur skript.
+OnBeforeUnloadTitle=Sur oc'h?
+OnBeforeUnloadStayButton=Chom war ar bajenn
+OnBeforeUnloadLeaveButton=Kuitaat ar bajenn
+EmptyGetElementByIdParam=Hedad goullo zo tremenet betek getElementById().
+DocumentWriteIgnored=Laosket a-gostez ez eus bet ur galv da document.write() a-berzh ur skript diavaez karget ent angoubred.
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=C'hwitadenn en ul lakaat ur restr en un elfenn contenteditable: %S
+FormValidationTextTooLong=Mar plij, lakait an destenn gant %S arouezenn pe nebeutoc'h (bremañ ez eus %S arouezenn).
+FormValidationTextTooShort=Grit gant %S arouezenn da nebeutañ (oc’h ober gant %S arouezenn emaoc’h evit poent).
+FormValidationValueMissing=Mar plij, leugnit ar maez-mañ.
+FormValidationCheckboxMissing=Mar plij, kevaskit ar voest-mañ mar fell deoc'h kenderc'hel.
+FormValidationRadioMissing=Mar plij, diuzit unan eus an dibarzhioù-mañ.
+FormValidationFileMissing=Mar plij, diuzit ur restr.
+FormValidationSelectMissing=Mar plij, diuzit un elfenn war ar roll.
+FormValidationInvalidEmail=Mar plij, biziatait ur chomlec'h postel.
+FormValidationInvalidURL=Mar plij, biziatait un URL.
+FormValidationInvalidDate=Enankit un deiziad talvoudek.
+FormValidationPatternMismatch=Mar plij, lakait ar werzh da genglotañ gant ar mentrezh azgoulennet.
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=Mar plij, lakait ar werzh da genglotañ gant ar mentrezh azgoulennet: %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=Diuzit ur werzh vihanoc'h eget %S pe kevatal.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeOverflow): %S is a date or a time.
+FormValidationDateTimeRangeOverflow=Enankit un talvoud bihanoc'h pe kevatal da %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=Diuzit ur werzh vrasoc'h eget %S pe kevatal.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeUnderflow): %S is a date or a time.
+FormValidationDateTimeRangeUnderflow=Enankit un talvoud brasoc'h pe kevatal da %S.
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=Diuzit ur werzh talvoudek mar plij. Ar gwerzhioù talvoudek tostañ zo %S ha %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=Diuzit ur werzh talvoudek mar plij. Ar werzh talvoudek tostañ zo %S.
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationBadInputNumber=Biziatait un niver mar plij.
+FullscreenDeniedDisabled=Nac'het eo bet goulenn ar mod skramm a-bezh rak gweredekaet eo an API « skramm a-bezh » e-barzh gwellvezioù an arveriad.
+FullscreenDeniedFocusedPlugin=Nac'het eo bet goulenn ar mod skramm a-bezh rak diuzet eo prenestr un enlugellad.
+FullscreenDeniedHidden=Nac'het eo bet goulenn ar mod skramm a-bezh rak n'eo ket mui gwelus an teul.
+FullscreenDeniedContainerNotAllowed=Nac'het eo bet goulenn ar mod skramm a-bezh rak unan eus elfennoù endalc'had an teul n'eo ket un iframe pe n'eus ket an doareenn "allowfullscreen" ganti.
+FullscreenDeniedNotInputDriven=Nac'het eo bet goulenn ar mod skramm a-bezh rak n'eo ket bet galvet Element.requestFullscreen() diouzh un ardoer degouezh krouet gant an arveriad
+FullscreenDeniedMouseEventOnlyLeftBtn=Nac'het eo bet ar goulenn skramm a-bezh peogwir eo bet galvet Element.requestFullscreen() adalek un ardoer darvoudoù logodenn n'eo ket bet delusket gant an afell logodenn kleiz.
+FullscreenDeniedNotHTMLSVGOrMathML=Nac'het eo bet goulenn ar mod skramm a-bezh rak n'eo ket mui <svg>, <math> pe un elfenn HTML an elfenn he deus graet ar goulenn.
+FullscreenDeniedNotInDocument=Nac'het eo bet goulenn ar mod skramm a-bezh rak n'eo ket mui e-barzh he zeul an elfenn he deus graet ar goulenn.
+FullscreenDeniedMovedDocument=Nac'het eo bet goulenn ar mod skramm a-bezh rak dilec'hiet eo bet an teul gant an elfenn he deus graet ar goulenn.
+FullscreenDeniedLostWindow=Nac'het eo bet goulenn ar mod skramm a-bezh rak n'eus ket mui prenestr ebet.
+FullscreenDeniedSubDocFullscreen=Nac'het eo bet goulenn ar mod skramm a-bezh rak skrammet eo an teul a c'houlenn ar skramm a-bezh war ar skramm a-bezh endeo.
+FullscreenDeniedNotFocusedTab=Nac'het eo bet goulenn ar mod skramm a-bezh rak an elfenn he deus graet ar goulenn n'eo ket e-barzh an ivinell bremanel.
+FullscreenDeniedFeaturePolicy=Goulenn skramm a-bezh nac'het abalamour d'ar sturiad FeaturePolicy.
+FullscreenExitWindowFocus=O kuitaat ar skramm a-bezh rak stiet eo bet ur prenestr.
+RemovedFullscreenElement=Kuitaet eo bet ar mod skramm a-bezh rak lamet eo bet an elfenn skrammet eus an teul.
+FocusedWindowedPluginWhileFullscreen=Kuitaet eo bet ar mod skramm a-bezh rak gweredekaet eo bet prenestr un enlugellad.
+PointerLockDeniedDisabled=Nac'het eo bet goulenn prennañ al logodenn rak diweredekaet eo an API « Prennañ al logodenn » e-barzh gwellvezioù an arveriad.
+PointerLockDeniedInUse=Nac’het eo bet ar goulenn prennañ al logodenn dre m’eo reoliet gant un teul all.
+PointerLockDeniedNotInDocument=Nac'het eo bet ar goulenn prennañ al logodenn dre n'eo ket un teul an elfenn a c'houlenn.
+PointerLockDeniedSandboxed=Nac’het eo bet ar goulenn prennañ al logodenn dre m’eo bevennet an API Prennañ al logodenn d'ar poull-traezh.
+PointerLockDeniedHidden=Nac'het eo bet ar goulenn prennañ al logodenn rak n'eo ket mui gwelus an teul.
+PointerLockDeniedNotFocused=Nac'het eo bet ar goulenn prennañ al logodenn rak n'eo ket stiet an teul.
+PointerLockDeniedMovedDocument=Nac'het eo bet goulenn prennañ al logodenn rak dilec'hiet eo bet an teul gant an elfenn he deus graet ar goulenn.
+PointerLockDeniedNotInputDriven=Nac'het eo bet goulenn prennañ al logodenn rak n'eo ket bet galvet Element.requestPointerLock() adalek un ardoer darvoudoù a erounezadur berr ganet gant an arveriad, hah an teul n'eo ket er skramm-bezh.
+PointerLockDeniedFailedToLock=Nac'het eo bet goulenn prennañ al logodenn peogwir en deus c'hwitet ar merdeer prennañ al logodenn.
+HTMLSyncXHRWarning=An dezrannañ HTML e-barzh XMLHttpRequest n'eo ket skoret e-barzh ar mod goubred.
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=Nac'het eo bet lakaat un talbenn difennet: %S
+ResponseTypeSyncXHRWarning=N'eo ket mui skoret arver eus doareenn « responseType » evit XMLHttpRequest e-barzh ar mod goubred e-barzh ar c'hemperzh prenestr.
+TimeoutSyncXHRWarning=N'eo ket skoret arver eus doareenn « timeout » XMLHttpRequest e-barzh ar mod goubred e-barzh ar c'hemperzh prenestr.
+# LOCALIZATION NOTE: Do not translate navigator.sendBeacon, unload, pagehide, or XMLHttpRequest.
+UseSendBeaconDuringUnloadAndPagehideWarning=Arverañ navigator.sendBeacon kentoc'h eget XMLHttpRequest goubred e-pad unload ha pagehide a wella an arnod arveriad.
+JSONCharsetWarning=Klasket eo bet diskleriañ ur bonegañ nad eo ket UTF-8 evit testenn JSON atoret en ur arverañ XMLHttpRequest. Skoret eo UTF-8 hepken evit bonegañ testenn JSON.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=Ul loaz liesorin a zo gant an HTMLMediaElement tremenet da createMediaElementSource. Didrouz a vo ec'hanket gant an neudenn.
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=Ul loaz liesorin a zo gant an MediaStream tremenet da createMediaStreamSource. Didrouz a vo ec'hanket gant an neudenn.
+# LOCALIZATION NOTE : Do not translate MediaStreamTrack and createMediaStreamTrackSource.
+MediaStreamTrackAudioSourceNodeCrossOrigin=Ul loaz liesorin eo ar MediaStreamTrack kaset da createMediaStreamTrackSource. Didrouz a vo ec'hanket gant an neudenn.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementAudioCaptureOfMediaStreamError=The captured HTMLMediaElement is playing a MediaStream. Applying volume or mute status is not currently supported.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaLoadExhaustedCandidates=C'hwitet en deus kargadur an holl loazioù. Ehanet eo bet kargadur ar media.
+MediaLoadSourceMissingSrc=An elfenn <source> n'he deus doareenn "src" ebet. C'hwitet en deus kargadur loaz ar media.
+MediaStreamAudioSourceNodeDifferentRate=Ar c'hennask ouzh AudioNodes eus AudioContexts gant ur feur standilhonañ disheñvel n'eo ket skoret.
+# 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=C'hwitet en deus ar c'hargadur HTTP gant ar stad %1$S. C'hwitet en deus kargadur loaz ar media %2$S.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=URI didalvoudek. C'hwitet en deus kargadur loaz ar media %S.
+# 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=N'eo ket skoret an doareenn "type" eus "%1$S". C'hwitet en deus kargadur loaz ar media %2$S.
+MediaLoadUnsupportedTypeAttributeLoadingNextChild=An doareen "type" despizet e “%1$S” n'eo ket skoret. N'haller ket kargañ al loaz media %2$S. O klask kargañ adalek an elfenn <source> da heul.
+# 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=N'eo ket skoret an talbenn HTTP "Content-Type" "%1$S". C'hwitet en deus kargadur loaz ar media %2$S.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=N'haller ket ezvonegañ loaz ar media %S.
+MediaWidevineNoWMF=Trying to play Widevine with no Windows Media Foundation. 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=Evit lenn ar mentrezh video %S ho peus ezhomm da staliañ meziantoù Microsoft ouzhpenn, lennit 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')
+MediaPlatformDecoderNotFound=N’haller ket lenn ar video war ar bajennad-mañ. N’eus ket an enboneger-ezvoneger video azgoulennet war ho reizhiad evit: %S
+MediaUnsupportedLibavcodec=N'haller ket lenn ar video war ar bajenn-mañ. Un handelv anskor eus libavcodec a zo gant ho reizhiad
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeError=Al loaz media %1$S n'hall ket bezañ ezvoneget, fazi: %2$S
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeWarning=Al loaz media %1$S a zo bet ezvoneget, met gant ur fazi: %2$S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=N’haller ket lenn ar media. N’eus ezvoneger ebet evit ar mentrezh azgoulennet: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=N’eus ezvoneger ebet evit ul lodenn eus ar mentrezhoù azgoulennet: %S
+MediaCannotInitializePulseAudio=N'haller ket arverañ PulseAudio
+# LOCALIZATION NOTE: %S is the URL of the web page which is not served on HTTPS and thus is not encrypted and considered insecure.
+MediaEMEInsecureContextDeprecatedWarning=Arverañ an Encrypted Media Extensions war %S en ur c'hemperzh diziogel (d.l.e. n'eo ket HTTPS) a zo diamzeret hag a vo lamet kuit a-benn nebeut. Ret e vefe deoc'h tremen d'un orin diogel evel HTTPS.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (either an audioCapabilities or a videoCapabilities) that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCapabilitiesDeprecatedWarning=Gervel navigator.requestMediaKeySystemAccess() (e %S) hep tremen ur MediaKeySystemConfiguration emstriver oc'h enderc'hel audioCapabilities pe videoCapabilities a zo diamzeret hag ne vo ket skoret a-benn nebeut.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (a "codecs" string in the "contentType") that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCodecsDeprecatedWarning=Gervel navigator.requestMediaKeySystemAccess() (e %S) o tremen un emstriver MediaKeySystemConfiguration oc'h enderc'hel audioCapabilities pe videoCapabilities hep ur contentType gant ur chadenn “codecs” a zo diamzeret ha ne vo ket skoret ken a-ben nebeut.
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=Diamzeret eo arver eus « Mutation Events ». Arverit « MutationObserver » en e lec'h.
+BlockAutoplayError=Al lenn emgefreek a zo aotreet p’eo asantet gant an arveriad, gweredekaet al lec'hienn gant an arveriad pe lakaet mud ar media hepken.
+BlockAutoplayWebAudioStartError=Difennet eo bet d'un AudioContext da gregiñ ent emgefreek. Dav eo dezhañ bezañ krouet pe kendalc'het goude ur jestr war ar bajenn.
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=Diamzeret eo an ergorenn « Components ». Dilamet e vo a-benn nebeut.
+PluginHangUITitle=Evezh: enlugellad anrespontus
+PluginHangUIMessage=Ac'hubet eo %S marteze pe en deus paouezet da respont. Gallout a rit paouez an enlugellad diouzhtu pe c'hortoz evit leuskel anezhañ da beurechuiñ.
+PluginHangUIWaitButton=Kenderc'hel
+PluginHangUIStopButton=Paouez an enlugellad
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=Ur c'halv da z/detach() war NodeIterator n'eus ket efedoù ken.
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=Laosket eo bet a-gostez ar c'haout (get) pe kemm (set) ar perzhioù eus [LenientThis] rak direizh eo an ergorenn "this".
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=Diamzeret eo arver eus captureEvents(). Arverit an hentenn DOM 2 addEventListener() evit hizivaat ho tarzh. Sellit ouzh http://developer.mozilla.org/en/docs/DOM:element.addEventListener evit kaout muioc'h a ditouroù.
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=Diamzeret eo arver eus releaseEvents(). Arverit an hentenn DOM 2 removeEventListener() evit hizivaat ho tarzh. Sellit ouzh http://developer.mozilla.org/en/docs/DOM:element.removeEventListener evit kaout muioc'h a ditouroù.
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=Diamzeret eo arver eus XMLHttpRequest goubred e-barzh an neudenn pennañ abalamour d'an efedoù fall war merdeiñ an arveriad. Lennit http://xhr.spec.whatwg.org/ evit kaout muioc'h a ditouroù.
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+# LOCALIZATION NOTE: Do not translate "window.controllers/Controllers"
+Window_Cc_ontrollersWarning=Diamzeret eo window.controllers/Controllers. Na arverit ket anezhañ evit dinoiñ ar Gwezher arveriad.
+ImportXULIntoContentWarning=Diamzeret eo enporzhiañ klomoù XUL e-barzh un teul. Lamet e vo ar c'heweriuster-mañ a-benn nebeut.
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=Dilezet ez eus bet un treuzgread IndexedDB na oa ket echu c'hoazh en abeg d'ur merdeiñ e-touez pajennoù.
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=Bevezerezh memor ar will-change a zo re uhel. Ar budjet a zo maez gorread an teul lieskementet dre %1$S (%2$S piksel). An holl elfennoù will-change en teul a zo laosket da gostez pa za dreist d'ar budjet.
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=Ur Worker n'hall ket bezañ loc'het diouzhtu rak teulioù all en hevelep orin a arver an niver uc'hek a labourerien. Lakaet eo bet ar Worker el lost ha loc'het e vo goude ma vo echu gant labourerien all.
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=Diamzeret eo an API Krubuilh Arload (AppCache) ha dilamet e vo diwezhatoc'h. Arverit ServiceWorker evit ur skor ezlinenn.
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=O klask krouiñ ul labourer adalek ur mammenn goulo. Moarvat n'eo ket graet a-ratozh.
+NavigatorGetUserMediaWarning=navigator.mozGetUserMedia a zo bet amsavet gant navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=Diamzeret eo an RTCPeerConnection.getLocalStreams/getRemoteStreams. Arverit RTCPeerConnection.getSenders/getReceivers e plas.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=C'hwitet eo bet kargadur '%S'. Dastapet eo bet an azgoulenn gant ur ServiceWorker ha c'hoarvezet eo bet ur fazi dianav.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "cors", "Response", "same-origin" or "Request". %1$S is a URL, %2$S is a URL.
+CorsResponseForSameOriginRequest=C'hwitadenn en ur gargañ ‘%1$S’ en ru respont ‘%2$S’. Ur ServiceWorker n'eo ket aotreet da gevanaozañ ur Respont CORS evit un azgoulenn same-origin.
+# 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=C'hwitet war kargadur '%1$S'. Un objed Response divoull a zo bet tremenet da FetchEvent.respondWith() e-pad ma oa o merañ ur FetchEvent '%2$S'. Ar respontoù divoull a zo talvoudek pa vez ar RequestMode e "no-cors" nemetken.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=C'hwitet eo bet kargadur '%S'. Un objed Error Response a zo bet tremenet da FetchEvent.respondWith() gant ServiceWorker. Talvezout a ra kement-se eo bet graet ur fetch() didalvoud gant ServiceWorker.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=C'hwitet eo bet kargadur '%S'. Un objed Reponse arveret a zo bet tremenet gant ServiceWorker da FetchEvent.respondWith(). Korf ur respont n'hall bezañ lennet ur wech nemetken.Arverit Response.clone() evit haeziñ ar c'horf meur a wech.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %S is a URL.
+BadOpaqueRedirectInterceptionWithURL=C'hwitet war kargadur '%S'. Tremenet eo bet un objed Respont divoull-eeun da FetchEvent.respondWith() gant ServiceWorker pa oa o merañ ur FetchEvent nann-merdeiñ.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=C'hwitet war kargadur '%S'. Tremenet eo bet un objed Respont adheñchet da FetchEvent.respondWith() gant ServiceWorker pa ne oa ket ar RedirectMode da ‘follow’.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=C'hwitet eo bet kargadur '%S'. Nullet eo bet ar c'hargadur gant ur ServiceWorker en ur gervel FetchEvent.preventDefault().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=C'hwitet war kargadur '%1$S'. Tremenet eo bet ur promise da FetchEvent.respondWith() a zo bet nac'het gant '%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=C'hwitet war kargadur '%1$S'. Tremenet eo bet ur promise da FetchEvent.respondWith() a zo bet diskoulmet gant un talvoud nann-Respont '%2$S'.
+
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=C'hwitadenn war enrolladenn ur ServiceWorker: Treug al ledennad roet '%1$S' n'eo ket el ledennad vrasañ aotreet '%2$S'. Kengeidit al ledennad, dilec'hiit ar skript ServiceWorker pe arverit an talbenn HTTP Service-Worker-Allowed evit aotren al ledennad.
+# 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=C'hwitadenn en ur enrollañ/hizivaat ur ServiceWorker evit al ledennad ‘%1$S’: C'hwitadenn war gargadur gant ar statud %2$S evit ar skript ‘%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.
+ServiceWorkerRegisterMimeTypeError2=C'hwitadenn en ur enskrivañ/hizivaat ur ServiceWorker evit al ledennad ‘%1$S’: Content-Type didalvoudek,‘%2$S’ degemeret evit ar skript ‘%3$S’. Dav eo dezhañ bezaéñ ur riezh MIME JavaScript.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerRegisterStorageError=C'hwitadenn en ur enrollañ/hizivaat ur ServiceWorker evit al ledennad ‘%S’: haeziñ ar c'hadaviñ a zo bevennet er c'hemperzh-mañ abalamour da arventennoù an arveriad pe ar mod merdeiñ prevez.
+ServiceWorkerGetRegistrationStorageError=C'hwitadenn en ur gaout enrolladennoù ar service worker: bevennet eo haeziñ ar c'hadaviñ abalamour da arventennoù an arveriad pe ar mod merdeiñ prevez.
+ServiceWorkerGetClientStorageError=C'hwitadenn en ur gaout arvaloù ar service worker: bevennet eo haeziñ ar c'hadaviñ abalamour da arventennoù an arveriad pe ar mod merdeiñ prevez.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" and "postMessage". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerPostMessageStorageError=Ar ServiceWorker evit al ledennad ‘%S’ en deus c'hwitet erounezadur ‘postMessage‘ peogwir eo bevennet an haeziñ d'ar c'hadaviñ er c'hemperzh-mañ abalamour da arventennoù an arveriad pe d'ar mod merdeiñ prevez.
+# 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.
+# LOCALIZATION NOTE (ServiceWorkerNoFetchHandler): Do not translate "Fetch".
+ServiceWorkerNoFetchHandler=Fetch event handlers must be added during the worker script’s initial evaluation.
+ExecCommandCutCopyDeniedNotInputDriven=Nac'het eo bet document.execCommand('cut'/'copy') peogwir n'eo ket bet galvet e diabarzh un ardoer degouezhioù arveriad-ganet a erounezadur prim.
+ManifestShouldBeObject=Un objed e rank bezañ Manifest.
+ManifestScopeURLInvalid=Direizh eo ledennad an URL.
+ManifestScopeNotSameOrigin=Ledennad an URL a rank bezañ gant an hevelep orin hag an teul.
+ManifestStartURLOutsideScope=Maez al ledennad eo an URL deraouiñ, direizh eo al ledennad eta.
+ManifestStartURLInvalid=Direizh eo an URL deraouiñ.
+ManifestStartURLShouldBeSameOrigin=Gant an hevelep orin hag an teul e rank bezañ an URL deraouiñ.
+# 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=Gortozet oa %3$S evit ezel %2$S %1$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 n'eo ket ul liv CSS reoliek.
+# 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. "lang: 42 is not a valid language code."
+ManifestLangIsInvalid=%1$S: %2$S n'eo ket ur boneg yezh talvoudek
+# LOCALIZATION NOTE: %1$S is the name of the parent property whose value is invalid (e.g., "icons"). %2$S is the index of the image object that is invalid (from 0). %3$S is the name of actual member that is invalid. %4$S is the invalid value. E.g. "icons item at index 2 is invalid. The src member is an invalid URL http://:Invalid"
+ManifestImageURLIsInvalid=An ergorenn %1$S en ibil %2$S a zo didalvoudek. An ezel %3$S a zo un URL didalvoudek %4$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that that contains the unusable image object (e.g., "icons"). %2$S is the index of the image object that is unusable (from 0). E.g. "icons item at index 2 lacks a usable purpose. It will be ignored."
+ManifestImageUnusable=Mankout a ra ur pal arveradus evit an elfenn %1$S en ibil %2$S. Laosket e vo a-gostez.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that contains the unsupported value (e.g., "icons"). %2$S is the index of the image object that has the unsupported value (from 0). %3$S are the unknown purposes. E.g. "icons item at index 2 includes unsupported purpose(s): a b."
+ManifestImageUnsupportedPurposes=Palioù anskor a zo gant an ergorenn %1$S en ibil %2$S: %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that has a repeated purpose (e.g., "icons"). %2$S is the index of the image object that has the repeated purpose (from 0). %3$S is the repeated purposes. E.g. "icons item at index 2 includes repeated purpose(s): a b."
+ManifestImageRepeatedPurposes=Palioù adlâret a zo gant an ergorenn %1$S en ibil %2$S: %3$S.
+PatternAttributeCompileFailure=N'haller ket gwiriekaat <input pattern='%S'> dre ma n'eo ket ur bomm reol talvoudek ar patrom: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=C'hwitadenn en ur erounit 'postMessage' war 'DOMWindow': Ne glot ket orin ar vukenn ('%S') gant orin prenestr an degemerer ('%S').
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=Oc’h adskrivañ enkorfadur kozh Youtube Flash (%S) d’un enkorfadur iframe (%S). Hizivait ar bajenn da arverañ un iframe e plas un enkorfadur/objed, m’eo posupl.
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=Oc’h adskrivañ enkorfadur kozh Youtube Flash (%S) d'un enkorfadur iframe (%S). Hizivait ar bajenn da arverañ un iframe e plas un enkorfadur/objed, m’eo posupl.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. An talbenn 'Encryption' a rank enderc'hel un arventenn 'salt' evit pep kemennadenn. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 evit kaout titouroù ouzhpenn.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. An talbenn 'Crypto-Key' a rank enkorfañ un arventenn 'dh' oc'h enderc'hel alc'hwez foran an dafariad arload. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 evit kaout titouroù ouzhpenn.
+# 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=C’hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. An talbenn 'Encryption-Key' a rank enkorfañ un arventenn 'dh'. Diamzeret eo an talbenn-se ha dilamet e vo a-benn nebeut. Arverit 'Crypto-Key' gant 'Content-Encoding: aesgcm' e plas. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 evit kaout titouroù ouzhpenn.
+# 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=C’hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. An talbenn 'Content-Encoding' a rank bezañ 'aesgcm'. Aotreet eo ‘aesgcm128‘ met diamzeret eo ha dilamet e vo a-benn nebeut. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 evit kaout titouroù ouzhpenn.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. Arventenn 'dh' an talbenn 'Crypto-Key' a rank bezañ alc'hwez foran Diffie-Hellman dafariad an arload, enrineget e base64url (https://tools.ietf.org/html/rfc7515#appendix-C) hag er stumm "digoazhet" pe "diaoz" (65 eizhbit a-raok an enrinegañ). Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 evit kaout titouroù ouzhpenn.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. Arventenn 'salt' an talbenn 'Encryption' a rank bezañ enrineget e base64url (https://tools.ietf.org/html/rfc7515#appendix-C) ha 16 eizhbit a-raok an enrinegañ. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 evit kaout titouroù ouzhpenn.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit al ledennad ‘%1$S’. An arventenn 'rs' en talbenn 'Encryption' a rank bezañ etre %2$S ha 2^36-31, pe a rank bezañ ezvezant. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 evit kaout titouroù ouzhpenn.
+# 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=C'hwitadenn war ezrinegañ ur gemennadenn push evit ServiceWorker al ledennad ‘%1$S’. Un enrolladenn er gemennadenn enrineget n'eo ket bet leuniet en un doare reizh. Lennit https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 evit kaout titouroù ouzhpenn.
+# 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=Ur fazi a zo c'hoarvezet en un ezrinegañ ur gemennadenn push gant ar ServiceWorker evit al ledennad '%1$S'. Evit kaout skoazell gant an enrinegañ, lennit https://developer.mozilla.org/en-US/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=O leuskel ar galv ‘preventDefault()’ a-gostez war un darvoud a rizh ‘%1$S’ a-berzh ur selaouer marilhet evel ‘passive’.
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmapWarning=Diamzeret eo ImageBitmapRenderingContext.transferImageBitmap ah lamet e vo kuit a-benn nebeut amzer. Arverit ImageBitmapRenderingContext.transferFromImageBitmap e plas.
+IIRFilterChannelCountChangeWarning=Kemmañ niver ar sanell IIRFilterNode a c'hall krouiñ beugoù aodio.
+BiquadFilterChannelCountChangeWarning=Kemmañ niver ar sanell BiquadFilterNode a c'hall krouiñ beugoù aodio.
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=skeudenn.png
+GenericFileName=restr
+GeolocationInsecureRequestIsForbidden=A Geolocation request can only be fulfilled in a secure context.
+NotificationsInsecureRequestIsForbidden=Aa aotre rebuziñ n'hall bezañ goulennet en ur c'hemperzh diogel nemetken.
+NotificationsCrossOriginIframeRequestIsForbidden=An aotre rebuziñ n'hall bezañ goulennet nemet e live uhelañ an teul pe en iframe gant an hevelep orin.
+NotificationsRequireUserGesture=An aotre Rebuziñ n'hall bezañ goulennet e-diabarzh un ardoer darvoudoù ganet gant an arveriad berr e badelezh.
+NotificationsRequireUserGestureDeprecationWarning=Goulenn un aotre rebuziñ e diavaez ur dornataer darvoudoù berr e badelezh savet gant an arveriad a zo diamzeret ha ne vo ket skoret en dazont.
+# LOCALIZATION NOTE: Do not translate "content", "Window", and "window.top"
+WindowContentUntrustedWarning=An doareenn ‘content’ war an ergorennoù Window a zo diamzeret. Grit gant ‘window.top’ kentoc'h.
+# LOCALIZATION NOTE: The first %S is the tag name of the element that starts the loop, the second %S is the element's ID.
+SVGRefLoopWarning=An SVG <%S> gant an naoudi “%S” en deus ur c'helc'hiad a zaveoù.
+# LOCALIZATION NOTE: The first %S is the tag name of the element in the chain where the chain was broken, the second %S is the element's ID.
+SVGRefChainLengthExceededWarning=Ur chadenn dave SAV <%S> a oa re hir ha dilezet eo bet e live an elfenn gant an naoudi “%S”.
+# LOCALIZATION NOTE: Do not translate SVGSVGElement.deselectAll.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceEmpty=Doareenn ‘%S’ an elfenn <script> a zo goulo.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceInvalidUri=Doareen ‘%S’ an elfenn <script> n'eo ket un URI talvoudek: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceLoadFailed=Fazi en ur gargañ er <script> gant an tarzh “%S”.
+ModuleSourceLoadFailed=Fazi en ur gargañ er mollad gant an tarzh “%S”.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceMalformed=Tarzh URI ar <script> a zo stummet fall: “%S”.
+ModuleSourceMalformed=URI tarzh ar mollad a zo stummet fall: “%S”.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceNotAllowed=URI tarzh ar <script> n'eo ket aotreet en teul-se: “%S”.
+ModuleSourceNotAllowed=URI tarzh ar mollad n'eo ket aotreet en teul-se: “%S”.
+# %1$S is the specifier key, %2$S is the URL.
+# LOCALIZATION NOTE: Do not translate "<script type='importmap'>", "src".
+# LOCALIZATION NOTE: %1$S is the invalid property value and %2$S is the property name.
+InvalidKeyframePropertyValue=Gwerzh perzh ar c'h/keyframe “%1$S” a zo didalvoudek hervez ar c'hevreadur evit “%2$S”.
+# LOCALIZATION NOTE: Do not translate "ReadableStream".
+ReadableStreamReadingFailed=Fazi en ul lenn ar roadennoù adalek ar ReadableStream: “%S”.
+# LOCALIZATION NOTE: Do not translate "registerProtocolHandler"
+RegisterProtocolHandlerPrivateBrowsingWarning=N'haller ket arverañ registerProtocolHandler er mod merdeiñ prevez.
+MotionEventWarning=Diamzeret eo arver an dinoer fiñv.
+OrientationEventWarning=Diamzeret eo arver an dioner tuadur.
+ProximityEventWarning=Diamzeret eo arver an dinoer tostidigezh.
+AmbientLightEventWarning=Diamzeret eo arver an dinoer gouloù.
+UnsupportedEntryTypesIgnored=Na ober van ouzh an entryTypes: %S.
+AllEntryTypesIgnored=N'eus entryTypes talvoudek ebet; o nullañ ar marilhadur.
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=Darvoud alc'hwez dihegerz evit GTK2: key=“%S” modifiers=“%S” id=“%S”
+WinConflict2=N'eo ket hegerz ar stokell degouezh war kempennadur klavieroù zo: stokell="%S" daskemmerioù="%S" naoudi="%S"
+# LOCALIZATION NOTE: do not translated "document.domain"
+
+#LOCALIZATION NOTE(DeprecatedTestingInterfaceWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingInterfaceWarning=TestingDeprecatedInterface is a testing-only interface and this is its testing deprecation message.
+#LOCALIZATION NOTE(DeprecatedTestingMethodWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingMethodWarning=TestingDeprecatedInterface.deprecatedMethod() is a testing-only method and this is its testing deprecation message.
+#LOCALIZATION NOTE(DeprecatedTestingAttributeWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingAttributeWarning=TestingDeprecatedInterface.deprecatedAttribute is a testing-only attribute and this is its testing deprecation message.
+# LOCALIZATION NOTE (CreateImageBitmapCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D and createImageBitmap.
+CreateImageBitmapCanvasRenderingContext2DWarning=Diamzeret eo arver CanvasRenderingContext2D e createImageBitmap.
+
+# LOCALIZATION NOTE (DrawWindowCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D, drawWindow and tabs.captureTab.
+
+# LOCALIZATION NOTE (MozRequestFullScreenDeprecatedPrefixWarning): Do not translate mozRequestFullScreen.
+MozRequestFullScreenDeprecatedPrefixWarning=Diamzeret eo mozRequestFullScreen().
+# LOCALIZATION NOTE (MozfullscreenchangeDeprecatedPrefixWarning): Do not translate onmozfullscreenchange.
+MozfullscreenchangeDeprecatedPrefixWarning=Diamzeret eo onmozfullscreenchange.
+# LOCALIZATION NOTE (MozfullscreenerrorDeprecatedPrefixWarning): Do not translate onmozfullscreenerror.
+MozfullscreenerrorDeprecatedPrefixWarning=Diamzeret eo onmozfullscreenerror.
+# LOCALIZATION NOTE(External_AddSearchProviderWarning): Do not translate AddSearchProvider.
+External_AddSearchProviderWarning=Diamzeret eo AddSearchProvider.
+
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozPressure" and "PointerEvent.pressure".
+MouseEvent_MozPressureWarning=Diamzeret eo MouseEvent.mozPressure. Arverit PointerEvent.pressure e plas.
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozInputSource" and "PointerEvent.pointerType".
+# LOCALIZATION NOTE: Do not translate "initMouseEvent()" and "MouseEvent()".
+# LOCALIZATION NOTE: Do not translate "initNSMouseEvent()" and "MouseEvent()".
+# LOCALIZATION NOTE: Do not translate MathML. %S is the deprecated length value.
+# LOCALIZATION NOTE: Do not translate mathvariant or MathML. %S is the deprecated value of the mathvariant attribute.
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+
+# LOCALIZATION NOTE: Do not translate "sizeToContent()".
+
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), Permissions Policy and storage-access.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess()
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "agent cluster".
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "partition key".
+# LOCALIZATION NOTE: Do not translate "Element.setCapture()" and "Element.setPointerCapture()"".
+# LOCALIZATION NOTE: Do not translate "Element.releaseCapture()" and "Element.releasePointerCapture()".
+# LOCALIZATION NOTE: Do not translate "Document.releaseCapture()" and "Element.releasePointerCapture()".
+
+# LOCALIZATION NOTE: Don't translate browser.runtime.lastError, %S is the error message from the unchecked value set on browser.runtime.lastError.
+
+# LOCALIZATION NOTE: Do not translate "OffscreenCanvas.toBlob()" and "OffscreenCanvas.convertToBlob()".
+
+# LOCALIZATION NOTE: Do not translate "InstallTrigger"
+# LOCALIZATION NOTE: Do not translate "InstallTrigger.install()"
+
+# LOCALIZATION NOTE: Do not translate "HTMLOptionsCollection.length". %1$S is the invalid value, %2$S is the current limit.
+
+# LOCALIZATION NOTE: Do not translate "isExternalCTAP2SecurityKeySupported".
+
+# LOCALIZATION NOTE: Do not translate "name="
+
+OnBeforeUnloadMessage2=This page is asking you to confirm that you want to leave — information you’ve entered may not be saved.
+SpeculationFailed2=An unbalanced tree was written using document.write() causing data from the network to be reparsed. More information: https://developer.mozilla.org/en-US/docs/Glossary/speculative_parsing
+FormValidationInvalidTime=Please enter a valid time.
+FormValidationInvalidDateTime=Please enter valid date and time.
+FormValidationInvalidDateMonth=Please enter a valid month.
+FormValidationInvalidDateWeek=Please enter a valid week.
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationTimeReversedRangeUnderflowAndOverflow=Please select a value between %1$S and %2$S.
+FullscreenDeniedHTMLDialog=Request for fullscreen was denied because requesting element is a <dialog> element.
+FullscreenDeniedPopoverOpen=Request for fullscreen was denied because the element is already open as a popover.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementStreamCaptureCycle=The MediaStream assigned to srcObject comes from a capture of this HTMLMediaElement, forming a cycle, assignment ignored.
+ManifestIdIsInvalid=The id member did not resolve to a valid URL.
+ManifestIdNotSameOrigin=The id member must have the same origin as the start_url member.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+SVGNearestViewportElement=SVGGraphicsElement.nearestViewportElement is deprecated and will be removed at a future date. Use SVGElement.viewportElement instead.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+SVGFarthestViewportElement=SVGGraphicsElement.farthestViewportElement is deprecated and will be removed at a future date.
+WebExtContentScriptModuleSourceNotAllowed=WebExtension content scripts may only load modules with moz-extension URLs and not: “%S”.
+ModuleResolveFailureNoWarn=Error resolving module specifier “%S”.
+ModuleResolveFailureWarnRelative=Error resolving module specifier “%S”. Relative module specifiers must start with “./”, “../” or “/”.
+ImportMapInvalidTopLevelKey=An invalid top-level key “%S” was present in the import map.
+ImportMapEmptySpecifierKeys=Specifier keys cannot be empty strings.
+ImportMapAddressesNotStrings=Addresses need to be strings.
+ImportMapInvalidAddress=Address “%S” was invalid.
+# %1$S is the specifier key, %2$S is the URL.
+ImportMapAddressNotEndsWithSlash=An invalid address was given for the specifier key “%1$S”; since “%1$S” ended in a slash, the address “%2$S” needs to as well.
+ImportMapScopePrefixNotParseable=The scope prefix URL “%S” was not parseable.
+ImportMapResolutionBlockedByNullEntry=Resolution of specifier “%S” was blocked by a null entry.
+ImportMapResolutionBlockedByAfterPrefix=Resolution of specifier “%S” was blocked since the substring after prefix could not be parsed as a URL relative to the address in the import map.
+ImportMapResolutionBlockedByBacktrackingPrefix=Resolution of specifier “%S” was blocked since the parsed URL does not start with the address in the import map.
+ImportMapResolveInvalidBareSpecifierWarnRelative=The specifier “%S” was a bare specifier, but was not remapped to anything. Relative module specifiers must start with “./”, “../” or “/”.
+# LOCALIZATION NOTE: Do not translate "<script type='importmap'>", "src".
+ImportMapExternalNotSupported=External import maps are not supported: <script type='importmap'> with a src attribute is currently not supported.
+ImportMapNotAllowedMultiple=Multiple import maps are not allowed.
+ImportMapNotAllowedAfterModuleLoad=Import maps are not allowed after a module load or preload has started.
+# LOCALIZATION NOTE: do not trnaslated "document.domain"
+DocumentSetDomainNotAllowedWarning=Setting document.domain in a cross-origin isolated environment is not allowed.
+# LOCALIZATION NOTE (DrawWindowCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D, drawWindow and tabs.captureTab.
+DrawWindowCanvasRenderingContext2DWarning=Use of drawWindow method from CanvasRenderingContext2D is deprecated. Use tabs.captureTab extensions API instead https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+MathML_DeprecatedMathSizeValueWarning=“small”, “normal” and “big” are deprecated values for the mathsize attribute and will be removed at a future date.
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+MathML_DeprecatedMathSpaceValueWarning=“veryverythinmathspace”, “verythinmathspace”, “thinmathspace”, “mediummathspace”, “thickmathspace”, “verythickmathspace” and “veryverythickmathspace” are deprecated values for MathML lengths and will be removed at a future date.
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+MathML_DeprecatedStyleAttributeWarning=MathML attributes “background”, “color”, “fontfamily”, “fontsize”, “fontstyle” and “fontweight” are deprecated and will be removed at a future date.
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+MathML_DeprecatedStixgeneralOperatorStretchingWarning=Support for rendering stretched MathML operators with STIXGeneral fonts is deprecated and may be removed at a future date. For details about newer fonts that will continue to be supported, see %S
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+MathML_DeprecatedScriptminsizeAttributeWarning=MathML attribute “scriptminsize” is deprecated and will be removed at a future date.
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+MathML_DeprecatedScriptsizemultiplierAttributeWarning=MathML attribute “scriptsizemultiplier” is deprecated and will be removed at a future date.
+FormSubmissionUntrustedEventWarning=Form submission via untrusted submit event is deprecated and will be removed at a future date.
+WebShareAPI_Failed=The share operation has failed.
+WebShareAPI_Aborted=The share operation was aborted.
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+UnknownProtocolNavigationPrevented=Prevented navigation to “%1$S” due to an unknown protocol.
+PostMessageSharedMemoryObjectToCrossOriginWarning=Cannot post message containing a shared memory object to a cross-origin window.
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+UnusedLinkPreloadPending=The resource at “%S” preloaded with link preload was not used within a few seconds. Make sure all attributes of the preload tag are set correctly.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+RequestStorageAccessNullPrincipal=document.requestStorageAccess() may not be called on a document with an opaque origin, such as a sandboxed iframe without allow-same-origin in its sandbox attribute.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+RequestStorageAccessSandboxed=document.requestStorageAccess() may not be called in a sandboxed iframe without allow-storage-access-by-user-activation in its sandbox attribute.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+RequestStorageAccessNested=document.requestStorageAccess() may not be called in a nested iframe.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+RequestStorageAccessUserGesture=document.requestStorageAccess() may only be requested from inside a short running user-generated event handler.
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+LocChangeFloodingPrevented=Too many calls to Location or History APIs within a short timeframe.
+FolderUploadPrompt.title = Confirm Upload
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+FolderUploadPrompt.message = Are you sure you want to upload all files from “%S”? Only do this if you trust the site.
+FolderUploadPrompt.acceptButtonLabel = Upload
+InputPickerBlockedNoUserActivation=<input> picker was blocked due to lack of user activation.
+ExternalProtocolFrameBlockedNoUserActivation=Iframe with external protocol was blocked due to lack of user activation, or because not enough time has passed since the last such iframe was loaded.
+MultiplePopupsBlockedNoUserActivation=Opening multiple popups was blocked due to lack of user activation.
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+PreloadIgnoredInvalidAttr=Preload of %S was ignored due to unknown “as” or “type” values, or non-matching “media” attribute.
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "agent cluster".
+BlobDifferentClusterError=Cannot access blob URL “%S” from a different agent cluster.
+# LOCALIZATION NOTE: Do not translate "Element.setCapture()" and "Element.setPointerCapture()"".
+ElementSetCaptureWarning=Element.setCapture() is deprecated. Use Element.setPointerCapture() instead. For more help https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture
+# LOCALIZATION NOTE: Do not translate "Element.releaseCapture()" and "Element.releasePointerCapture()".
+ElementReleaseCaptureWarning=Element.releaseCapture() is deprecated. Use Element.releasePointerCapture() instead. For more help https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+# LOCALIZATION NOTE: Do not translate "Document.releaseCapture()" and "Element.releasePointerCapture()".
+DocumentReleaseCaptureWarning=Document.releaseCapture() is deprecated. Use Element.releasePointerCapture() instead. For more help https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+# LOCALIZATION NOTE: Don't translate browser.runtime.lastError, %S is the error message from the unchecked value set on browser.runtime.lastError.
+WebExtensionUncheckedLastError=browser.runtime.lastError value was not checked: %S
+# LOCALIZATION NOTE: Do not translate "OffscreenCanvas.toBlob()" and "OffscreenCanvas.convertToBlob()".
+OffscreenCanvasToBlobWarning=OffscreenCanvas.toBlob() is deprecated. Use OffscreenCanvas.convertToBlob() instead.
+# LOCALIZATION NOTE: Do not translate "InstallTrigger"
+InstallTriggerDeprecatedWarning=InstallTrigger is deprecated and will be removed in the future.
+# LOCALIZATION NOTE: Do not translate "InstallTrigger.install()"
+InstallTriggerInstallDeprecatedWarning=InstallTrigger.install() is deprecated and will be removed in the future. For more help https://extensionworkshop.com/documentation/publish/self-distribution/
+# LOCALIZATION NOTE: Do not translate "HTMLOptionsCollection.length". %1$S is the invalid value, %2$S is the current limit.
+SelectOptionsLengthAssignmentWarning=Refused to expand <select> option list via assignment to HTMLOptionsCollection.length (value %1$S). The maximum supported size is %2$S.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/extensions.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/extensions.properties
new file mode 100644
index 0000000000..3ee4850f9b
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/extensions.properties
@@ -0,0 +1,26 @@
+# 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 (uninstall.confirmation.title) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.title = Distaliañ %S
+
+#LOCALIZATION NOTE (uninstall.confirmation.message) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.message = Goulenn a ra an askouezh "%S" da vezañ distaliet. Petra a fell deoc'h ober?
+
+uninstall.confirmation.button-0.label = Distaliañ
+uninstall.confirmation.button-1.label = Derc'hel staliet
+
+saveaspdf.saveasdialog.title = Enrollañ evel
+
+#LOCALIZATION NOTE (newTabControlled.message2) %S is the icon and name of the extension which updated the New Tab page.
+newTabControlled.message2 = Un askouezh, %S, en deus kemmet ar bajenn a welit pa tigorit un ivinell nevez.
+newTabControlled.learnMore = Gouzout hiroc'h
+
+#LOCALIZATION NOTE (homepageControlled.message) %S is the icon and name of the extension which updated the homepage.
+homepageControlled.message = Un askouezh, %S, en deus kemmet ar bajenn a welit pa zigorit ho pennbajenn hag ur prenestr nevez.
+homepageControlled.learnMore = Gouzout hiroc'h
+
+#LOCALIZATION NOTE (tabHideControlled.message) %1$S is the icon and name of the extension which hid tabs, %2$S is the icon of the all tabs button.
+tabHideControlled.message = Un askouezh, %1$S, a guzh darn hoc'h ivinelloù. Gallout a rit tizhout holl hoc'h ivinelloù adalek %2$S.
+tabHideControlled.learnMore = Gouzout hiroc'h
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/fallbackMenubar.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/fallbackMenubar.properties
new file mode 100644
index 0000000000..3f42e26011
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/fallbackMenubar.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/.
+
+# OSX only. Default menu label when there is no xul menubar.
+
+quitMenuitem.label=Kuitaat
+quitMenuitem.key=q
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/filepicker.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/filepicker.properties
new file mode 100644
index 0000000000..b667b92cc2
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/filepicker.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: The extensions to which these descriptions refer
+# now live in toolkit/content/filepicker.properties
+allTitle=An holl restroù
+htmlTitle=Restroù HTML
+textTitle=Restroù Testenn
+imageTitle=Restroù Skeudenn
+xmlTitle=Restroù XML
+xulTitle=Restroù XUL
+appsTitle=Arloadoù
+audioTitle=Restroù klevet
+videoTitle=Restroù Video
+
+pdfTitle=Restroù PDF
+
+formatLabel=Mentrezh:
+
+selectedFileNotReadableError=Selected file does not have read permission
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/global-strres.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/global-strres.properties
new file mode 100644
index 0000000000..ae60b24b2d
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/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=C’hoarvezet ez eus bet ur fazi dianav (%1$S)
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/intl.css b/thunderbird-l10n/br/chrome/br/locale/br/global/intl.css
new file mode 100644
index 0000000000..2f54eb367d
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/intl.css
@@ -0,0 +1,11 @@
+/* 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 contains all localizable skin settings such as
+ * font, layout, and geometry
+ */
+window {
+ font: 3mm tahoma,arial,helvetica,sans-serif;
+}
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/intl.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/intl.properties
new file mode 100644
index 0000000000..d3064b33e4
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/intl.properties
@@ -0,0 +1,43 @@
+# 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 (intl.accept_languages):
+# This is a comma-separated list of valid BCP 47 language tags.
+#
+# Begin with the value of 'general.useragent.locale'. Next, include language
+# tags for other languages that you expect most users of your locale to be
+# able to speak, so that their browsing experience degrades gracefully if
+# content is not available in their primary language.
+#
+# It is recommended that you include "en-US, en" at the end of the list as a
+# last resort. However, if you know that users of your locale would prefer a
+# different variety of English, or if they are not likely to understand
+# English at all, you may opt to include a different English language tag, or
+# to exclude English altogether.
+#
+# For example, the Breton [br] locale might consider including French and
+# British English in their list, since those languages are commonly spoken in
+# the same area as Breton:
+# intl.accept_languages=br, fr-FR, fr, en-GB, en
+intl.accept_languages=br, fr-FR, fr, en-US, en
+
+# LOCALIZATION NOTE (font.language.group):
+# This preference controls the initial setting of the language drop-down menu
+# in the Content > Fonts & Colors > Advanced preference panel.
+#
+# Set it to the value of one of the menuitems in the "selectLangs" menulist in
+# http://dxr.mozilla.org/mozilla-central/source/browser/components/preferences/fonts.xul
+font.language.group=x-western
+
+# LOCALIZATION NOTE (pluralRule): Pick the appropriate plural rule for your
+# language. This will determine how many plural forms of a word you will need
+# to provide and in what order.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+pluralRule=16
+
+# LOCALIZATION NOTE (intl.menuitems.alwaysappendaccesskeys, intl.menuitems.insertseparatorbeforeaccesskeys):
+# Valid values are: true, false, <empty string>
+# Missing preference or empty value equals false.
+intl.menuitems.alwaysappendaccesskeys=
+intl.menuitems.insertseparatorbeforeaccesskeys=true
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/keys.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/keys.properties
new file mode 100644
index 0000000000..80b3751112
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/keys.properties
@@ -0,0 +1,78 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevelant kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# LOCALIZATION NOTE : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevalent kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# F1..F10 should probably not be translated unless there are keyboards that actually have other labels
+# F11..F20 might be something else, but are really keyboard specific and not region/language specific
+# there are actually two different F11/F12 keys, I don't know which one these labels represent.
+# eg, F13..F20 on a sparc keyboard are labeled Props, Again .. Find, Cut
+# sparc also has Stop, Again and F11/F12. VK_F11/VK_F12 probably map to Stop/Again
+# LOCALIZATION NOTE : BLOCK Do not translate the next block
+VK_F1=F1
+VK_F2=F2
+VK_F3=F3
+VK_F4=F4
+VK_F5=F5
+VK_F6=F6
+VK_F7=F7
+VK_F8=F8
+VK_F9=F9
+VK_F10=F10
+
+VK_F11=F11
+VK_F12=F12
+VK_F13=F13
+VK_F14=F14
+VK_F15=F15
+VK_F16=F16
+VK_F17=F17
+VK_F18=F18
+VK_F19=F19
+VK_F20=F20
+# LOCALIZATION NOTE : BLOCK end do not translate block
+
+# LOCALIZATION NOTE : BLOCK GLYPHS, DO translate this block
+VK_UP=Bir pignat
+VK_DOWN=Bir diskenn
+VK_LEFT=Bir kleiz
+VK_RIGHT=Bir dehou
+VK_PAGE_UP=Pignat gant ar bajenn
+VK_PAGE_DOWN=Diskenn ar bajenn
+# LOCALIZATION NOTE : BLOCK end GLYPHS
+
+# Enter, backspace, and Tab might have both glyphs and text
+# if the keyboards usually have a glyph,
+# if there is a meaningful translation,
+# or if keyboards are localized
+# then translate them or insert the appropriate glyph
+# otherwise you should probably just translate the glyph regions
+
+VK_TAB=Taol
+VK_BACK=Kilesaouiñ
+VK_DELETE=Dil
+# LOCALIZATION NOTE : BLOCK end maybe GLYPHS
+# LOCALIZATION NOTE : BLOCK typing state keys
+VK_HOME=Derou
+VK_END=Dibenn
+
+VK_ESCAPE=Achp
+VK_INSERT=Enl
+# LOCALIZATION NOTE : BLOCK end
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/layout/HtmlForm.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/HtmlForm.properties
new file mode 100644
index 0000000000..919e1c7d68
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/HtmlForm.properties
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+Reset=Adderaouekaat
+Submit=Kinnig un azgoulenn
+Browse=Furchal…
+FileUpload=Kargañ ar restr
+DirectoryUpload=Diuzit un teuliad da bellgas
+DirectoryPickerOkButtonLabel=Pellgas
+ForgotPostWarning=Enderc'hel a ra ar furmskrid enctype=%S, met n'endalc'h ket method=post. Kasit ent reizh gant method=GET hag enctype ebet kentoc'h.
+ForgotFileEnctypeWarning=Enderc'hel a ra ar furmskrid un enankad restr, met mankout a ra method=POST hag enctype=multipart/form-data war ar furmskrid. Ne vo ket kaset ar restr.
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=Furmskrid kaset a-berzh %S
+CannotEncodeAllUnicode=Treuzkaset ez eus bet ur furmskrid e-barzh ar bonegañ %S na c'hall ket bonegañ an holl arouezennoù Unicode ha kontronet e c'hell bezañ bizskrivañ an arveriad eta. A-benn tremen e-biou ar gudenn-mañ e tlefe ar bajennad bezañ kemmet evit treuzkas ar furmskrid e-barzh ar bonegañ UTF-8 pe en ur gemmañ bonegañ ar bajenn da UTF-8 pe en ur erspizañ « accept-charset=utf-8 » e-barzh elfenn ar furmskrid.
+AllSupportedTypes=An holl rizhoù skoret
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=Restr ebet bet diuzet.
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=Restr ebet bet diuzet.
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=N'eus teuliad dibabet ebet.
+# 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=Diuzet ez eus bet %S restr.
+ColorPicker=Dibab ul liv
+# 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=Munudoù
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/layout/MediaDocument.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/MediaDocument.properties
new file mode 100644
index 0000000000..1bd4c7e0fa
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/MediaDocument.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#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 (Skeudenn %S, %Sx%S a bikselioù)
+ImageTitleWithoutDimensions=%S (Skeudenn %S)
+ImageTitleWithDimensions2=(Skeudenn %S, %Sx%S a bikselioù)
+ImageTitleWithNeitherDimensionsNorFile=(Skeudenn %S)
+MediaTitleWithFile=%S (Ergorenn %S)
+MediaTitleWithNoInfo=(Ergorenn %S)
+
+InvalidImage=En abeg da fazioù enni, n'hall ket ar skeudenn “%S” bezañ skrammet.
+ScaledImage=Skeulaet (%S%%)
+
+TitleWithStatus=%S - %S
+
+UnsupportedImage=The image “%S” cannot be displayed because it requires unsupported features.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/layout/htmlparser.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/htmlparser.properties
new file mode 100644
index 0000000000..a0af13af39
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/htmlparser.properties
@@ -0,0 +1,145 @@
+# 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=N'eo ket bet diskleriet bonegañ an arouezennoù eus un teuliad e-barzh ur framm. An teuliad a c'hell bezañ skrammet en un doare disheñvel ma'z eo gwelet er-maez eus an teuliad a framm anezhañ.
+EncMetaUnsupported=Diskleriet ez eus bet ur bonegañ arouezennoù anskoret evit an teuliad e HTML en ur arverañ ur c'hlav « meta ». Laosket eo bet an diskleriadur a-gostez.
+EncProtocolUnsupported=Diskleriet ez eus bet ur bonegañ arouezennoù anskoret e-barzh ar c'homenad treuzkas. Laosket eo bet an diskleriadur a-gostez.
+EncMetaUtf16=Arveret ez eus bet ur c'hlav « meta » evit diskleriañ bonegañ an arouezennoù evel UTF-16. Dewezhiet eo bet an dra-mañ evel un diskleriadur UTF-8 en e lec'h.
+EncMetaUserDefined=Arveret ez eus bet ur c'hlav « meta » evit diskleriañ bonegañ an arouezennoù evel x-user-defined. Dewezhiet eo bet an dra-mañ evel un diskleriadur windows-1252 en e lec'h evit bezañ keverlec'h gant nodrezhoù kozh ha n'int ket enrineget mat. Al lec'hienn-mañ a rankfe emdizhañ etrezek Unicode.
+
+# The bulk of the messages below are derived from
+# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=Roadennoù direizh goude “</”.
+errLtSlashGt=“</>” kavet. Abegoù gwirheñvel: “<” ket gwarezet (gwareziñ anezhañ gant “&lt;”) pe glav dibenn skrivet fall.
+errCharRefLacksSemicolon=Ar meneg arouezenn ne gloze ket gant ur gourskej.
+errNoDigitsInNCR=Niver ebet e-barzh ur meneg arouezenn niverel.
+errGtInSystemId=“>” e-barzh an naoudi reizhiad.
+errGtInPublicId=“>” e-barzh an naoudi foran.
+errNamelessDoctype=doctype hep anv.
+errConsecutiveHyphens=Barrennigoù lerc'h-ouzh-lerc'h ne gloze ket un askelenn. “--” n'eo ket aotreet e-barzh un askelenn met aotreet eo “- -” da skouer.
+errPrematureEndOfComment=Dibenn an askelenn re abred. Arverit “-->” evit klozañ un askelenn ent dereat.
+errBogusComment=Askelenn fazius.
+errUnquotedAttributeLt=“<” kavet e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abeg gwirheñvel: “>” o vankout a-raok.
+errUnquotedAttributeGrave=“`” kavet e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abeg gwirheñvel: arver eus un arouezenn fall e-lec'h un ask.
+errUnquotedAttributeQuote=Ask kavet e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abegoù gwirheñvel: doareennoù mesket pe hedad azgoulenn URL e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù.
+errUnquotedAttributeEquals=“=” kavet e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abegoù gwirheñvel: doareennoù mesket pe hedad azgoulenn URL e-barzh gwerzh un doareenn nad eo ket bevennet gant daouaskoù.
+errSlashNotFollowedByGt=Ur veskell ne oa ket heuliet gant “>”.
+errNoSpaceBetweenAttributes=Esaouenn ebet etre doareennoù.
+errUnquotedAttributeStartLt=“<” kavet e penn-kentañ gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abeg gwirheñvel: “>” o vankout a-raok.
+errUnquotedAttributeStartGrave=“`” kavet e penn-kentañ gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abeg gwirheñvel: arver eus un arouezenn fall e-lec'h un ask.
+errUnquotedAttributeStartEquals=“=” kavet e penn-kentañ gwerzh un doareenn nad eo ket bevennet gant daouaskoù. Abegoù gwirheñvel: arouezenn “=” arredaolet dic'hortoz.
+errAttributeValueMissing=Gwerzh an doareenn o vankout.
+errBadCharBeforeAttributeNameLt=“<” kavet pa oa gortozet anv an doareenn. Abeg gwirheñvel: “>” o vankout a-raok.
+errEqualsSignBeforeAttributeName=“<” kavet pa oa gortozet anv an doareenn. Abeg gwirheñvel: anv an doareenn o vankout.
+errBadCharAfterLt=Arouezenn fall goude “<”. Abeg gwirheñvel: “<” ket gwarezet. Klaskit gwareziñ anezhañ gant “&lt;”.
+errLtGt=“<>” kavet. Abeg gwirheñvel: “<” ket gwarezet (gwareziñ anezhañ gant “&lt;”) pe glav kentañ skrivet fall.
+errProcessingInstruction=“<?” kavet. Abeg gwirheñvel: klasket eo bet arverañ un ditour keweriañ XML e-barzh un destenn mod HTML. (N'eo ket skoret an ditouroù keweriañ XML e-barzh testennoù mod HTML.)
+errUnescapedAmpersandInterpretedAsCharacterReference=Dewezhiet eo bet an hedad a heuilh “&” evel ur meneg arouezenn. (“&” a zlefe bezañ gwarezet gant “&amp;” emichañs.)
+errNotSemicolonTerminated=Ur meneg arouezenn anvet ne oa ket klozet gant ur gourskej. (Pe “&” a zlefe bezañ gwarezet gant “&amp;”.)
+errNoNamedCharacterMatch=“&” ne kroge ket ur meneg arouezenn. (“&” a zlefe bezañ gwarezet gant “&amp;” emichañs.)
+errQuoteBeforeAttributeName=Kavet ez eus bet un daouask pa oa gortozet anv un doareenn. Abeg gwirheñvel: “=” o vankout a-raok.
+errLtInAttributeName=“<” kavet e-barzh anv un doareenn. Abeg gwirheñvel: “>” o vankout a-raok.
+errQuoteInAttributeName=Kavet ez eus bet un daouask e-barzh anv un doareenn. Abeg gwirheñvel: daouask kenglotus o vankout en un tu bennak a-raok.
+errExpectedPublicId=Gortozet e oa un naoudi foran met echu eo an doctype.
+errBogusDoctype=doctype fazius.
+maybeErrAttributesOnEndTag=Ar c'hlav dibenn en deus doareennoù.
+maybeErrSlashInEndTag=“/” dic'hortoz e dibenn ar c'hlav dibenn.
+errNcrNonCharacter=Kavet ez eus bet roadennoù n'int ket esaouioù e-barzh endalc'h ar meneg arouezenn.
+errNcrSurrogate=Kavet ez eus bet un hedad erlec'hiadur (surrogate) e-barzh endalc'h ar meneg arouezenn.
+errNcrControlChar=Kavet ez eus bet un nod lankañ e-barzh endalc'h ar meneg arouezenn.
+errNcrCr=Kavet ez eus bet un nod pennlinennañ e-barzh endalc'h ar meneg arouezenn niverel.
+errNcrInC1Range=Kavet ez eus bet un etremez nod lankañ C1 e-barzh endalc'h ar meneg arouezenn niverel.
+errEofInPublicId=Dibenn restr e-barzh un naoudi foran.
+errEofInComment=Dibenn restr e-barzh un askelenn.
+errEofInDoctype=Dibenn restr e-barzh un doctype.
+errEofInAttributeValue=Dibenn restr tizhet e-barzh gwerzh un doareenn. Klav laosket a-gostez.
+errEofInAttributeName=Dibenn restr tizhet e-barzh anv un doareenn. Klav laosket a-gostez.
+errEofWithoutGt=Tizhet eo bet dibenn ar restr hep ar c'hlav a-raok oc'h echuiñ gant “>”. Klav laosket a-gostez.
+errEofInTagName=Tizhet eo bet dibenn ar restr pa oa klasket anv ur c'hlav. Klav laosket a-gostez.
+errEofInEndTag=Tizhet eo bet dibenn ar restr e-barzh ar c'hlav dibenn. Klav laosket a-gostez.
+errEofAfterLt=Tizhet eo bet dibenn ar restr goude “<”.
+errNcrOutOfRange=Meneg arouezenn er-maez eus an etremez Unicode aotreet.
+errNcrUnassigned=Kavet ez eus bet ur poent boneg andeverket ent padel e-barzh ar meneg arouezenn.
+errDuplicateAttribute=Doareenn arredaolet.
+errEofInSystemId=Dibenn restr e-barzh un naoudi reizhiad.
+errExpectedSystemId=Gortozet e oa un naoudi reizhiad met klozet e oa an doctype.
+errMissingSpaceBeforeDoctypeName=Esaouenn o vankout a-raok anv an doctype.
+errNcrZero=Kavet ez eus bet zero e-barzh endalc'h ar meneg arouezenn.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=Esaouenn ebet etre ger-alc'hwez “SYSTEM” an doctype hag an daouask.
+errNoSpaceBetweenPublicAndSystemIds=Esaouenn ebet etre an naoudioù foran ha reizhiad eus an doctype.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=Esaouenn ebet etre ger-alc'hwez “PUBLIC” an doctype hag an daouask.
+
+# Tree builder errors
+errDeepTree=Re zonn eo gwezenn an teul. Bihanaet e vo da 513 elfenn donnder.
+errStrayStartTag2=Klav penn-kentañ “%1$S” dic'hortoz.
+errStrayEndTag=Klav dibenn “%1$S” dic'hortoz.
+errUnclosedElements=Kavet ez eus bet ur c'hlav dibenn “%1$S” met bez e oa elfennoù digor.
+errUnclosedElementsImplied=Kavet ez eus bet ur c'hlav dibenn “%1$S” emplegat met bez e oa elfennoù digor.
+errUnclosedElementsCell=Klozet ez eus bet ur gellig taolenn ent emplegat met bez e oa elfennoù digor.
+errStrayDoctype=Doctype dic'hortoz.
+errAlmostStandardsDoctype=Doctype ar mod peuzskoueriek. Gortozet e oa “<!DOCTYPE html>”.
+errQuirkyDoctype=Doctype drol. Gortozet e oa “<!DOCTYPE html>”.
+errNonSpaceInTrailer=Arouezenn disheñvel diouzh un esaouenn e-barzh an diaz-pajenn.
+errNonSpaceAfterFrameset=Arouezenn disheñvel diouzh un esaouenn goude “frameset”.
+errNonSpaceInFrameset=Arouezenn disheñvel diouzh un esaouenn e-barzh “frameset”.
+errNonSpaceAfterBody=Arouezenn disheñvel diouzh un esaouenn goude ar c'horf.
+errNonSpaceInColgroupInFragment=Arouezenn disheñvel diouzh un esaouenn e-barzh “colgroup” pa oa o tezrannañ ur vruzhunenn.
+errNonSpaceInNoscriptInHead=Arouezenn disheñvel diouzh un esaouenn e-barzh “noscript” a zo e-barzh “head”.
+errFooBetweenHeadAndBody=Elfenn “%1$S” etre “head” ha “body”.
+errStartTagWithoutDoctype=Klav penn-kentañ kavet hep kavout un doctype a-raok. Gortozet e oa “<!DOCTYPE html>”.
+errNoSelectInTableScope=“select” ebet e-barzh ledennad an daolenn.
+errStartSelectWhereEndSelectExpected=Klav penn-kentañ “select” kavet pa oa gortozet ur c'hlav dibenn.
+errStartTagWithSelectOpen=Klav penn-kentañ “%1$S” gant “select” digor.
+errBadStartTagInNoscriptInHead=Balizenn zigeriñ fall “%1$S” e-barzh “noscript” en “head”.
+errImage=Kavet ez eus bet ur c'hlav penn-kentañ “image”.
+errFooSeenWhenFooOpen2=Balizenn loc'hañ “%1$S” bet gwelet met un elfenn heñvel he doare a oa digoret dija.
+errHeadingWhenHeadingOpen=Un talbenn n'hall bezañ bugel un talbenn all.
+errFramesetStart=Kavet ez eus bet ur c'hlav penn-kentañ “frameset”.
+errNoCellToClose=Kellig ebet da serriñ.
+errStartTagInTable=Kavet ez eus bet ur c'hlav penn-kentañ “%1$S” e-barzh “table”.
+errFormWhenFormOpen=Kavet ez eus bet ur c'hlav penn-kentañ “form” met bez e oa un elfenn “form” oberiant endeo. N'eo ket aotreet ar furmskridoù kenempret. Klav laosket a-gostez.
+errTableSeenWhileTableOpen=Kavet ez eus bet ur c'hlav penn-kentañ “table” met digor eo an daolenn kent c'hoazh.
+errStartTagInTableBody=Kavet ez eus bet ur c'hlav penn-kentañ “%1$S” e-barzh korf an daolenn.
+errEndTagSeenWithoutDoctype=Kavet ez eus bet ur c'hlav dibenn hep kavout un doctype a-raok. Gortozet e oa “<!DOCTYPE html>”.
+errEndTagAfterBody=Kavet ez eus bet ur c'hlav dibenn goude klozañ ar c'hlav “body”.
+errEndTagSeenWithSelectOpen=Kavet ez eus bet ur c'hlav dibenn “%1$S” gant “select” digor.
+errGarbageInColgroup=Roadennoù direizh e-barzh ur vruzhunenn “colgroup”.
+errEndTagBr=Klav dibenn “br”.
+errNoElementToCloseButEndTagSeen=Elfenn “%1$S” ebet el ledennad met kavet ez eus bet ur c'hlav dibenn “%1$S”.
+errHtmlStartTagInForeignContext=Klav penn-kentañ HTML “%1$S” e-barzh kemperzh un egorenn anvioù estren.
+errNoTableRowToClose=Renk taolenn ebet da serriñ.
+errNonSpaceInTable=Arouezennoù disheñvel diouzh esaouioù lec'hiet fall e-barzh un daolenn.
+errUnclosedChildrenInRuby=Bugel anklozet e-barzh “ruby”.
+errStartTagSeenWithoutRuby=Kavet ez eus bet ur c'hlav penn-kentañ “%1$S” hep un elfenn “ruby” digor.
+errSelfClosing=Kevreadur klozañ emgefreek (“/>”) arveret e-barzh un elfenn HTML n'eo ket goullo. Beskell laosket a-gostez ha keweriet evel ur c'hlav penn-kentañ.
+errNoCheckUnclosedElementsOnStack=Elfennoù anklozet war an torn.
+errEndTagDidNotMatchCurrentOpenElement=Ne genglote ket ar c'hlav dibenn “%1$S” gant anv an elfenn digor vremanel (“%2$S”).
+errEndTagViolatesNestingRules=Ar c'hlav dibenn “%1$S” a dorr ar reolennoù kenemprañ.
+errEndWithUnclosedElements=Kavet ez eus bet ur c'hlav dibenn “%1$S” met bez e oa elfennoù digor.
+
+EncXmlDecl=The character encoding of an HTML document was declared using the XML declaration syntax. This is non-conforming, and declaring the encoding using a meta tag at the start of the head part is more efficient.
+EncMetaTooLate=A meta tag attempting to declare the character encoding declaration was found too late, and the encoding was guessed from content instead. The meta tag needs to be moved to the start of the head part of the document.
+EncMetaTooLateFrame=A meta tag attempting to declare the character encoding declaration was found too late, and the encoding of the parent document was used instead. The meta tag needs to be moved to the start of the head part of the document.
+EncMetaAfterHeadInKilobyte=The meta tag declaring the character encoding of the document should be moved to start of the head part of the document.
+EncNoDecl=The character encoding of the document was not declared, so the encoding was guessed from content. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
+EncNoDeclPlain=The character encoding of the document was not declared, so the encoding was guessed from content. The character encoding needs to be declared in the Content-Type HTTP header or using a byte order mark.
+EncMetaReplacement=A meta tag was used to declare an encoding that is a cross-site scripting hazard. The replacement encoding was used instead.
+EncProtocolReplacement=An encoding that is a cross-site scripting hazard was declared on the transfer protocol level. The replacement encoding was used instead.
+EncDetectorReload=The character encoding of the document was not declared, and the encoding was guessable from content only late. This caused the document to be reloaded. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
+EncDetectorReloadPlain=The character encoding of the document was not declared, and the encoding was guessable from content only late. This caused the document to be reloaded. The character encoding needs to be declared in the Content-Type HTTP header or using a byte order mark.
+EncError=The byte stream was erroneous according to the character encoding that was declared. The character encoding declaration may be incorrect.
+EncErrorFrame=The byte stream was erroneous according to the character encoding that was inherited from the parent document. The character encoding needs to be declared in the Content-Type HTTP header, using a meta tag, or using a byte order mark.
+EncErrorFramePlain=The byte stream was erroneous according to the character encoding that was inherited from the parent document. The character encoding needs to be declared in the Content-Type HTTP header or using a byte order mark.
+EncSpeculationFailMeta=The start of the document was reparsed, because there were non-ASCII characters before the meta tag that declared the encoding. The meta should be the first child of head without non-ASCII comments before.
+EncSpeculationFailXml=The start of the document was reparsed, because there were non-ASCII characters in the part of the document that was unsuccessfully searched for a meta tag before falling back to the XML declaration syntax. A meta tag at the start of the head part should be used instead of the XML declaration syntax.
+# The audience of the following message isn't the author of the document but other people debugging browser behavior.
+EncSpeculationFail2022=The start of the document was reparsed, because ISO-2022-JP is an ASCII-incompatible encoding.
+errNestedComment=Saw “<!--” within a comment. Probable cause: Nested comment (not allowed).
+errAlmostStandardsDoctypeVerbose=This page is in Almost Standards Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”.
+errQuirkyDoctypeVerbose=This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use “<!DOCTYPE html>”.
+errListUnclosedStartTags=Unclosed element or elements.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/layout/xmlparser.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/layout/xmlparser.properties
new file mode 100644
index 0000000000..53350728d2
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/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 = n'eus memor ken
+2 = fazi kevreadur
+3 = elfenn wrizienn ebet bet kavet
+4 = ket stummet mat
+5 = reveziadenn diserr
+6 = arouezenn darnel
+7 = klav digenglotus
+8 = eilañ an doareenn
+9 = lastez goude elfenn an teul
+10 = daveenn an arventenn hennad andezvek
+11 = ergorenn andespizet
+12 = daveenn an hennad askizat
+13 = hennad angoubred
+14 = daveenn ouzh un niverenn eus un arouezenn didalvoudek
+15 = daveenn ouzh an hennad daouredel
+16 = dave ouzh hennad diavaez en doareenn
+17 = n'emañ ket an diskleriadenn XML e loc'hadur un hennad diavaez
+18 = bonegañ dianav
+19 = n'eo ket reizh ar bonegañ erspizet en diskleriadennoù XML
+20 = estez CDATA diserr
+21 = fazi e-pad renabliñ an ergorenn diabarzh
+22 = an teul n'eo ket emren
+23 = stad an dielfenner kevreadur dic'hortoz
+24 = hennad diskleriet en arventenn hennad
+27 = ar rakger n'eo ket kevreet ouzh un anv domani
+28 = ne rank ket diziskleriañ ar rakger
+29 = kresk diglok e hennad an arventenn
+30 = N'eo ket stummet mat an diskleriadenn XML
+31 = arabat d'ar rakger bezañ kevreet ouzh unan eus an anvioù domani URIs amberzet
+32 = arouezenn(où) andezvek en naoudi (id) foran
+38 = ret eo d'ar rakger amberzet (xml) bezañ diziskleriet pe gevreet ouzh un anv domani all
+39 = arabat d'ar rakger amberzet (xmlns) bezañ diskleriet pe diziskleriet
+40 = arabat eo d'ar rakger bezañ kevreet ouzh unan eus an anvioù domani amberzet
+
+# %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 = Fazi dezrannañ kevreadur XML: %1$S\nLec'hiadur: %2$S\nNiverenn al linenn %3$u, Bann %4$u:
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . Azgoulennet: </%S>.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/layout_errors.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/layout_errors.properties
new file mode 100644
index 0000000000..8eee5167cb
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/layout_errors.properties
@@ -0,0 +1,59 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ImageMapRectBoundsError=An doareenn "coords" eus ar c'hlav <area shape="rect"> n'eo ket er mentrezh "left,top,right,bottom".
+ImageMapCircleWrongNumberOfCoords=An doareenn "coords" eus ar c'hlav <area shape="circle"> n'eo ket er mentrezh "center-x,center-y,radius".
+ImageMapCircleNegativeRadius=An doareenn "coords" eus ar c'hlav <area shape="circle"> zo gant ur radiuz lieiel.
+ImageMapPolyWrongNumberOfCoords=An doareenn "coords" eus ar c'hlav <area shape="poly"> n'eo ket er mentrezh "x1,y1,x2,y2 …".
+ImageMapPolyOddNumberOfCoords=Gant an doareenn ”coords” eus ar c'hlav <area shape="poly"> e vank ar ”y” diwezhañ (ar mentrezh reizh zo: ”x1,y1,x2,y2…”).
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLargeArea):
+## %1$S is an integer value of the area of the frame
+## %2$S is an integer value of the area of a limit based on the viewport size
+CompositorAnimationWarningContentTooLargeArea=N’haller ket erounit bliverezhioù war ar c’henaozer dre m’eo re vras maezienn ar skeudenn (%1$S) e-keñver ar prenestr skrammañ (brasoc’h eget %2$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge2):
+## (%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 a limit based on the viewport size
+## (%5$S, %6$S) is a pair of integer values of an absolute limit
+CompositorAnimationWarningContentTooLarge2=Animation cannot be run on the compositor because the frame size (%1$S, %2$S) is too large relative to the viewport (larger than (%3$S, %4$S)) or larger than the maximum allowed value (%5$S, %6$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=Ar bliverezh treuzfurmiñ 'backface-visibility: hidden' n'hall ket bezañ erounezet war ar c'henaozer
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformWithSyncGeometricAnimations,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=Ar bliverezhioù 'transform' war elfennoù gant treuzfurmadurioù SVG n’hallont ket bezañ erounezet war ar c’henaozer
+CompositorAnimationWarningTransformWithGeometricProperties=Ar bliverezhioù 'transform' n’hallont ket bezañ erounezet war ar c’henaozer p’eo blivet ar perzhioù mentoniezh war an hevelep elfenn d'an hevelep mare
+CompositorAnimationWarningTransformWithSyncGeometricAnimations=Animation of ‘transform’ cannot be run on the compositor because it should be synchronized with animations of geometric properties that started at the same time
+CompositorAnimationWarningTransformFrameInactive=N’hall ket ar bliverezh bezañ erounezet war ar c’henaozer dre ma n’eo ket bet merket gweredekaet ar framm evit ar bliverezh 'transform'
+CompositorAnimationWarningOpacityFrameInactive=N'hall ket ar bliverezh bezañ erounezet war ar c'henaozer dre ma n'eo ket bet merket gweredekaet ar framm evit ar bliverezh 'opacity'
+CompositorAnimationWarningHasRenderingObserver=N'haller ket erounit ar bliverezh war ar c'henaozer dre ma zo evezhieroù deoueziñ gant an elfenn (-moz-element pe dic'hronnañ/masklañ)
+
+## LOCALIZATION NOTE: Do not translate zoom, calc(), "transform", "transform-origin: 0 0"
+ZoomPropertyWarning=Ar bajenn-mañ a implij un doare "zoom" divoutin. Klaskit implijout calc() evit an talvoudoù a-bouez pe implijit “transform” gant “transform-origin: 0 0”.
+
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+
+
+ScrollLinkedEffectFound3=This site appears to use a scroll-linked positioning effect. This may not work well with asynchronous panning; see https://firefox-source-docs.mozilla.org/performance/scroll-linked_effects.html for further details and to join the discussion on related tools and features!
+CompositorAnimationWarningTransformIsBlockedByImportantRules=Transform animation cannot be run on the compositor because transform-related properties are overridden by !important rules
+CompositorAnimationWarningHasCurrentColor=Animations of ‘background-color’ cannot be run on the compositor with ‘current-color’ keyframe.
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+PrincipalWritingModePropagationWarning=When rendering the <html> element, the used values of CSS properties “writing-mode”, “direction”, and “text-orientation” on the <html> element are taken from the computed values of the <body> element, not from the <html> element’s own values. Consider setting these properties on the :root CSS pseudo-class. For more information see “The Principal Writing Mode” in https://www.w3.org/TR/css-writing-modes-3/#principal-flow
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+ScrollAnchoringDisabledInContainer=Scroll anchoring was disabled in a scroll container because of too many consecutive adjustments (%1$S) with too little total distance (%2$S px average, %3$S px total).
+ForcedLayoutStart=Layout was forced before the page was fully loaded. If stylesheets are not yet loaded this may cause a flash of unstyled content.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/mathml/mathml.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/mathml/mathml.properties
new file mode 100644
index 0000000000..e9b0233b6d
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/mathml/mathml.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/.
+
+InvalidChild=Klav didalvoudek: <%1$S> n'eo ket aotreet evel bugel eus <%2$S>.
+ChildCountIncorrect=Klav didalvoudek: direizh eo an niver a vugale evit ar c'hlav <%1$S/>.
+DuplicateMprescripts=Klav didalvoudek: kavet ez eus bet meur a glav <mprescripts/> e-barzh <mmultiscripts/>.
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=Klav didalvoudek: gortozet e oa un elfenn Base rik-ha-rik e-barzh <mmultiscripts/>. N'eo ket bet kavet hini ebet.
+SubSupMismatch=Klav didalvoudek: diglok eo ar c'houblad subscript/superscript e-barzh <mmultiscripts/>.
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=Fazi e-pad dezrannañ ar werzh '%1$S' evit an doareenn '%2$S' eus <%3$S/>. Laosket eo bet an doareenn a-gostez.
+AttributeParsingErrorNoTag=Fazi e-pad dezrannañ ar werzh '%1$S' evit an doareenn '%2$S'. Laosket eo bet an doareenn a-gostez.
+LengthParsingError=Fazi e-pad dezrannañ ar werzh doareenn MathML '%1$S' evel hirder. Laosket eo bet an doareenn a-gostez.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/narrate.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/narrate.properties
new file mode 100644
index 0000000000..d3c81c2802
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/narrate.properties
@@ -0,0 +1,26 @@
+# 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/.
+
+back = Distro
+# %S is the keyboard shortcut for the start command
+start-label = Loc'hañ (%S)
+# %S is the keyboard shortcut for the stop command
+stop-label = Paouez (%S)
+# Keyboard shortcut to toggle the narrate feature
+narrate-key-shortcut = N
+forward = War-raok
+speed = Tizh
+selectvoicelabel = Mouezh:
+# Default voice is determined by the language of the document.
+defaultvoice = Dre ziouer
+
+# Voice name and language.
+# eg. David (English)
+voiceLabel = %S (%S)
+
+# "Listen, which allows users to listen to Firefox reading the text,
+# instead of having to read it themselves." This is the name
+# of the feature and it is the label for the popup button.
+# %S is the keyboard shortcut for the listen command
+listen-label = Listen (%S)
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/nsWebBrowserPersist.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/nsWebBrowserPersist.properties
new file mode 100644
index 0000000000..38f0eba505
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/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 n'hall ket bezañ enrollet rak n'hall ket tarzhioù ar restr bezañ lennet.\n\nKlaskit en-dro diwezhatoc'h pe kit e darempred gant hoc'h ardoer.
+writeError=%S ne c’hall ket bezañ enrollet rak ur fazi dianav zo c’hoarvezet.\n\nKlaskit enrollañ ar restr en ul lec’h all.
+launchError=%S ne c’hall ket bezañ digoret rak ur fazi dianav zo c’hoarvezet.\n\nKlaskit enrollañ war ar gantenn da gentañ ha digorit ar restr da-c’houde.
+diskFull=N'eus ket plas a-walc'h war ar gantenn evit enrollañ %S.\n\nDilamit ar restroù diret diwar ar gantenn ha klaskit en-dro, pe klaskit enrollañ en ul lec'h all.
+readOnly=%S n'hall ket bezañ enrollet rak gwarezet a-enep ar skrivañ eo ar gantenn, an teuliad pe ar restr.\n\nGweredekait ar skrivañ evit ar gantenn ha klaskit en-dro pe klaskit enrollañ en ul lec'h all.
+accessError=%S n'hall ket bezañ enrollet rak n'hallit ket kemmañ endalc'had an teuliad-mañ.\n\nKemmit perzhioù an teuliad ha klaskit en-dro pe klaskit enrollañ en ul lec'h all.
+SDAccessErrorCardReadOnly=Ar restr n'hall ket bezañ pellgarget rak ar gartenn SD zo war arver.
+SDAccessErrorCardMissing=Ar restr n'hall ket bezañ pellgarget rak mankout a ra ar gartenn SD.
+helperAppNotFound=%S n'hall ket bezañ digoret rak an arload skoazell n'eus ket anezhañ. Kemmit ar c'hevread e-touez ho kwellvezioù.
+noMemory=N'eus ket memor a-walc'h evit peurechuiñ ar gwezh hoc'h eus azgoulennet.\n\nSerrit arloadoù zo ha klaskit en-dro.
+title=O pellgargañ %S
+fileAlreadyExistsError=%S n'hall ket bezañ enrollet rak ur restr gant un anv heñvel zo anezhi endeo evel kavlec'hiad ar restroù.\n\nKlaskit enrollañ en ul lec'h disheñvel.
+fileNameTooLongError=%S n'hall ket bezañ enrollet rak re hir eo an anv.\n\nKlaskit enrollañ gant un anv berroc'h.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/printdialog.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/printdialog.properties
new file mode 100644
index 0000000000..626a35431e
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/printdialog.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/.
+
+# These strings are used in the native GTK, Mac and Windows print dialogs.
+
+# GTK titles:
+printTitleGTK=Moullañ
+optionsTabLabelGTK=Dibarzhioù
+
+# Mac titles:
+optionsTitleMac=Dibarzhioù:
+appearanceTitleMac=Neuz:
+pageHeadersTitleMac=Talbenn pajenn:
+pageFootersTitleMac=Diaz pajenn:
+
+# Windows titles:
+optionsTitleWindows=Dibarzhioù
+
+# TRANSLATOR NOTE: For radio button labels and check button labels, an underscore _
+# before a character will turn that character into an accesskey in the GTK dialog.
+# e.g. "_As laid out" will make A the accesskey.
+# In the Windows labels, use an ampersand (&).
+# On Mac, underscores will be stripped.
+
+shrinkToFit=Leuskel a-gostez Skeulaat ha striz_hañ da genglotañ gant led ar bajenn
+selectionOnly=Moullañ an diuzad _nemetken
+printBGOptions=Moullañ an drekleurioù
+printBGColors=Moullañ _livioù an drekleur
+printBGImages=Moullañ _skeudennoù an drekleur
+headerFooter=Talbenn ha diaz pajenn
+left=Kleiz
+center=Kreizañ
+right=Dehou
+headerFooterBlank=--gwenn--
+headerFooterTitle=Titl
+headerFooterURL=URL
+headerFooterDate=Deiziad/Eur
+headerFooterPage=Pajenn #
+headerFooterPageTotal=Pajenn # eus #
+headerFooterCustom=Personelaet…
+customHeaderFooterPrompt=Bizskrivit ho testenn talbenn/diaz pajenn bersonel
+
+summarySelectionOnlyTitle=Moullañ an diuzad
+summaryShrinkToFitTitle=Strizhañ da genglotañ
+summaryPrintBGColorsTitle=Moullañ livioù an drekleur
+summaryPrintBGImagesTitle=Moullañ skeudennoù an drekleur
+summaryHeaderTitle=Talbenn pajenn
+summaryFooterTitle=Diaz pajenn
+summaryNAValue=N/A
+summaryOnValue=Gweredekaet
+summaryOffValue=Diweredekaet
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/printing.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/printing.properties
new file mode 100644
index 0000000000..5dad159805
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/printing.properties
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# 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 eus %2$d
+
+PrintToFile=Moullañ en ur restr
+print_error_dialog_title=Fazi moullerez
+printpreview_error_dialog_title=Fazi gant Moullañ an alberz
+
+# 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=Degouezhet ez eus bet ur fazi e-pad ar moullañ.
+
+PERR_ABORT=Paouezet eo bet al labour moullañ pe nullet.
+PERR_NOT_AVAILABLE=Keweriusterioù moullañ zo n'int ket hegerz bremañ.
+PERR_NOT_IMPLEMENTED=Keweriusterioù moullañ zo n'int ket kefloueret c'hoazh.
+PERR_OUT_OF_MEMORY=N'eus ket memor dieub a-walc'h evit moullañ.
+PERR_UNEXPECTED=Ur gudenn dic'hortoz zo degouezhet e-pad ar moullañ.
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=Moullerez ebet hegerz.
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=Moullerez ebet hegerz, n'haller ket diskouez alberz ar moullañ.
+PERR_GFX_PRINTER_NAME_NOT_FOUND=N'hall ket bezañ kavet ar voullerez bet diuzet.
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=Ar restrad roadennoù ec'hankañ n'hall ket bezañ digoret.
+PERR_GFX_PRINTER_STARTDOC=C'hwitadenn war ar moullañ pa oa o kregiñ al labour.
+PERR_GFX_PRINTER_ENDDOC=C'hwitadenn war ar moullañ pa oa oc'h echuiñ al labour.
+PERR_GFX_PRINTER_STARTPAGE=C'hwitadenn war ar moullañ pa oa o kregiñ ur bajenn nevez.
+PERR_GFX_PRINTER_DOC_IS_BUSY=N'hall ket bezañ moullet an teul-mañ rak emañ o vezañ karget c'hoazh.
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=N'haller ket gwelout alberz ar moullañ c'hoazh rak emañ o vezañ karget c'hoazh.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/resetProfile.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/resetProfile.properties
new file mode 100644
index 0000000000..970e497166
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/resetProfile.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE: These strings are used for profile reset.
+
+# LOCALIZATION NOTE (resetUnusedProfile.message): %S is brandShortName.
+resetUnusedProfile.message=N’hoc’h eus ket loc’het %S abaoe pell war ar seblant. Fellout a ra deoc’h naetaat anezhañ evel m’ho pefe un staliadur nevez-flamm? Ha laouen omp oc’h adkavout ac’hanoc’h!
+# LOCALIZATION NOTE (resetUninstalled.message): %S is brandShortName.
+resetUninstalled.message=War a-seblant ho peus adstaliet %S. Fellout a ra deoc'h e naetfemp anezhañ evit ober evel ma vefe nevez-flamm?
+
+# LOCALIZATION NOTE (refreshProfile.resetButton.label): %S is brandShortName.
+refreshProfile.resetButton.label=Azbevaat %S…
+refreshProfile.resetButton.accesskey=A
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/security/caps.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/security/caps.properties
new file mode 100644
index 0000000000..3795555cb0
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/security/caps.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+CheckLoadURIError = Fazi diogelroez: Marteze n'hallo ket an endalc'had kargañ e %S pe ereañ roadennoù ouzh %S.
+CheckSameOriginError = Fazi diogelroez: Marteze n'hallo ket an endalc'had e %S kargañ roadennoù diouzh %S.
+ExternalDataError = Fazi diogelroez: un endalc'had e %S en deus klasket kargañ %S, met gallout a ra chom hep kargañ roadennoù diavaez p’eo arveret evel ur skeudenn.
+
+CreateWrapperDenied = Aotre nac'het evit krouiñ un ambaperenn evit an ergorenn he rummad %S
+CreateWrapperDeniedForOrigin = Aotre nac'het da <%2$S> evit krouiñ un ambaperenn evit an ergorenn he rummad %1$S
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/security/csp.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/security/csp.properties
new file mode 100644
index 0000000000..90d32847f0
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/security/csp.properties
@@ -0,0 +1,138 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = Harzet eo bet kargadur ul loaz gant arventennoù ar bajenn: %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 = Harzet eo bet kargadur ul loaz e %2$S ("%1$S") gant arventennoù ar bajenn.
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = Degouezhet ez eus bet un dorridigezh eus ar reolenn CSP report-only ("%1$S"). Aotreet eo bet an emzalc'h ha kaset ez eus bet un danevell CSP.
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = Klasket eo bet kas un danevell d'un URI didalvoudek: ”%1$S”
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = n'haller ket dezrannañ URI an danevell: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = N'haller ket keweriañ ar sturiad dianav '%1$S'
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = O leuskel an dibarzh dianav %1$S a-gostez
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = O leuskel a-gostez mammennoù eilet %1$S
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = An tarzh '%1$S' a zo bet laosket a-gostez (Ne vez ket skoret p’eo degaset gant un elfenn meta).
+# LOCALIZATION NOTE (ignoringSrcWithinNonceOrHashDirective):
+# %1$S is the ignored src (e.g. "unsafe-inline")
+# %2$S is the directive (e.g. "script-src-elem")
+# LOCALIZATION NOTE (ignoringScriptSrcForStrictDynamic):
+# %1$S is the ignored src
+# %1$S is the directive src (e.g. "script-src-elem")
+# 'strict-dynamic' should not be localized
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = O leuskel an tarzh “%1$S” a-gostez (N'eo skoret e script-src nemetken).
+# LOCALIZATION NOTE (ignoringUnsafeEval):
+# %1$S is the csp directive (e.g. script-src-elem)
+# 'unsafe-eval' and 'wasm-unsafe-eval' should not be localized
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = Ar ger-alc'hwez ‘strict-dynamic’ e “%1$S” hep nonce pe hash talvoudek a c'hall stankañ an holl skriptoù da gargañ
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = URI an danevell (%1$S) a zlefe bezañ un URI HTTP pe HTTPS.
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = Al lec'hienn-mañ (%1$S) he deus ur reolenn Report-Only hep URI evit an danevelloù. CSP ne yelo ket en-dro ha ne c'hello ket danevelliñ torridigezh ar reolenn-mañ.
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = C'hwitadenn war dezrannañ an tarzh dianav %1$S
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = Oc'h hizivaat an azgoulenn arvarus '%1$S' evit arverañ '%2$S'
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = O leuskel an tarzhioù evit ar sturiad '%1$S'
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = Dewezhiet eo bet %1$S evel un anv ostiz ha n'eo ket bet evel ur ger-alc'hwez. Arverit '%2$S' (lakaet etre askoù) ma oa an dra-mañ ur ger-alc'hwez.
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = N'eo ket skoret ar sturiad '%1$S'. Laosket e vo ar sturiad hag ar gwerzhioù a-gostez.
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = O stankañ an azgoulenn arvarus '%1$S'.
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values
+ignoringDirectiveWithNoValues = O leuskel ‘%1$S‘ dre ma n'endalc'h arventenn ebet.
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = O leuskel ar sturiad poull-traezh p’eo kaser en ur reolenn danevelliñ hepken ‘%1$S’
+# LOCALIZATION NOTE (IgnoringSrcBecauseOfDirective):
+# %1$S is the name of the src that is ignored.
+# %2$S is the name of the directive that causes the src to be ignored.
+IgnoringSrcBecauseOfDirective=Laosket ‘%1$S’ a-gostez abalamour d'ur sturiad ‘%2$S’.
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+# %2$S is the directive which supports src
+IgnoringSourceWithinDirective = Leuskel an tarzh “%1$S” a-gostez (ne vez ket kemeret e karg e-barzh ‘%2$S’).
+
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = N'haller ket dezrannañ an tarzh didalvoudek %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = N'haller ket dezrannañ an ostiz didalvoudek %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = N'haller ket dezrannañ ar porzh e-barzh %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = Kavet ez eus bet sturiadoù %1$S arredaolet. Laosket e vo an holl erioloù a-gostez nemet an hini kentañ.
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = N'haller ket dezrannañ ar banniel poull-traezh didalvoudek ‘%1$S’
+
+
+# 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 (ignoringNonAsciiToken):
+# %1$S defines the name of the directive
+# %2$S is the token string containing non-ASCII characters.
+ignoringNonAsciiToken = Ignoring directive ‘%1$S’ with the non-ASCII token ‘%2$S’
+# LOCALIZATION NOTE (ignoringSrcWithinNonceOrHashDirective):
+# %1$S is the ignored src (e.g. "unsafe-inline")
+# %2$S is the directive (e.g. "script-src-elem")
+ignoringSrcWithinNonceOrHashDirective = Ignoring “%1$S” within %2$S: nonce-source or hash-source specified
+# LOCALIZATION NOTE (ignoringScriptSrcForStrictDynamic):
+# %1$S is the ignored src
+# %1$S is the directive src (e.g. "script-src-elem")
+# 'strict-dynamic' should not be localized
+ignoringScriptSrcForStrictDynamic = Ignoring “%1$S” within %2$S: ‘strict-dynamic’ specified
+# LOCALIZATION NOTE (ignoringUnsafeEval):
+# %1$S is the csp directive (e.g. script-src-elem)
+# 'unsafe-eval' and 'wasm-unsafe-eval' should not be localized
+ignoringUnsafeEval = Ignoring ‘unsafe-eval’ or ‘wasm-unsafe-eval’ inside “%1$S”.
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+obsoleteBlockAllMixedContent = Ignoring ‘%1$S’ because mixed content display upgrading makes block-all-mixed-content obsolete.
+# LOCALIZATION NOTE (CSPMessagePrefix):
+# Do not translate "Content-Security-Policy", only handle spacing for the colon.
+# %S is a console message that is being prefixed here.
+CSPMessagePrefix = Content-Security-Policy: %S
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/security/security.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/security/security.properties
new file mode 100644
index 0000000000..a04625be51
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/security/security.properties
@@ -0,0 +1,179 @@
+# 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/.
+
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = Harzadur ouzh kargañ an endalc'had kemmesk dioberiant "%1$S"
+BlockMixedActiveContent = Harzadur ouzh kargañ an endalc'had kemmesk oberiant "%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=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: CORS diweredekaet).
+CORSOriginHeaderNotAdded=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: talbenn CORS ‘Origin’ n'hall ket bezañ ouzhpennet).
+CORSExternalRedirectNotAllowed=Goulenn liesorin stanket: ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: ar goulenn adheñchañ diavaez CORS n'eo ket aotreet).
+CORSRequestNotHttp=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: ar goulenn CORS n'eo ket http).
+CORSMultipleAllowOriginNotAllowed=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: n'eo ket aotreet an talbenn CORS lies ‘Access-Control-Allow-Origin’).
+CORSAllowOriginNotMatchingOrigin=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: an talbenn CORS ‘Access-Control-Allow-Origin’ na glot ket gant ‘%2$S’).
+CORSNotSupportingCredentials=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e ‘%1$S’. (Abeg: n’eo ket skoret an titouroù kennaskañ m’eo ‘*’ an talbenn CORS ‘Access-Control-Allow-Origin’).
+CORSMethodNotFound=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: n'eo ket bet kavet an hentenn en talbenn CORS ‘Access-Control-Allow-Methods’)
+CORSMissingAllowCredentials=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: gortozet oa ‘true’ en talbenn CORS ‘Access-Control-Allow-Credentials’)
+CORSInvalidAllowMethod=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: odeer ‘%2$S’ direizh en talbenn CORS ‘Access-Control-Allow-Methods’).
+CORSInvalidAllowHeader=Goulenn liesorin stanket: Ar reolenn a-fet memes orin a vir da lenn al loaz a-bell e %1$S. (Abeg: odeer ‘%2$S’ direizh en talbenn CORS ‘Access-Control-Allow-Headers’).
+CORSMissingAllowHeaderFromPreflight2=Goulenn liesorin stanket: Reolad an orin heñvel (Same Origin Policy) ne aotren ket lenn an danvezioù a-bell e %1$S. (Abeg: an talbenn ‘%2$S’ n'eo ket aotreet hervez an talbenn ‘Access-Control-Allow-Headers’ deus respont rak-gwiriañ ar goulennoù CORS).
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: ur fazi dianav a zo c'hoarvezet e-pad keweriañ an talbenn erspizet gant al lec'hienn.
+STSCouldNotParseHeader=Strict-Transport-Security: Erspizet eo bet un talbenn n'haller ket dezrannañ gant al lec'hienn.
+STSNoMaxAge=Strict-Transport-Security: Erspizet eo bet un talbenn na endalc'h ket a sturiad 'max-age' gant al lec'hienn.
+STSMultipleMaxAges=Strict-Transport-Security: Erspizet eo bet un talbenn oc'h enderc'hel meur a sturiad 'max-age' gant al lec'hienn.
+STSInvalidMaxAge=Strict-Transport-Security: Erspizet eo bet un talbenn oc'h enderc'hel ur sturiad 'max-age' didalvoud gant al lec'hienn.
+STSMultipleIncludeSubdomains=Strict-Transport-Security: Erspizet eo bet un talbenn oc'h enderc'hel meur a sturiad 'includeSubDomains' gant al lec'hienn.
+STSInvalidIncludeSubdomains=Strict-Transport-Security: Erspizet eo bet un talbenn oc'h enderc'hel ur sturiad ‘includeSubDomains’ didalvoud gant al lec'hienn.
+STSCouldNotSaveState=Strict-Transport-Security: ur fazi a zo c'hoarvezet en ur merkañ al lec'hienn evel un ostiz Strict-Transport-Security.
+
+InsecurePasswordsPresentOnPage=Bez ez eus maeziennoù ger-tremen war ur bajenn diziogel (http://). Ur riskl diogelroez eo hag a ro tro laerezh eus naoudi kennaskañ an arveriad.
+InsecureFormActionPasswordsPresent=Bez ez eus maeziennoù ger-tremen e-barzh ur furmskrid gant ur gwezh furmskrid diziogel (http://). Ur riskl diogelroez eo hag a ro tro laerezh eus naoudi kennaskañ an arveriad.
+InsecurePasswordsPresentOnIframe=Bez ez eus maeziennoù ger-tremen war un iframe diziogel (http://). Ur riskl diogelroez eo hag a ro tro laerezh eus naoudi kennaskañ an arveriad.
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=Kargadur endalc'hadoù kemmesk oberiant (diziogel) war ur bajenn diogel "%1$S"
+LoadingMixedDisplayContent2=Kargadur endalc'hadoù kemmesk dioberiant (diziogel) war ur bajenn diogel "%1$S"
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=Un iframe hag en deus allow-scripts hag allow-same-origin evit e vailh traezh a c'hell mont kuit eus e vailh traezh.
+
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=Un enneg stummet fall a zo gant elfenn ar skript en e zoareen anterinder: “%1$S”. Ar stumm talvoudek a zo “<treal enneg>-<talvoud enneg>”.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=Un hirder fall a zo gant an enneg ebarzhet en doareen anterinder.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=N'haller ket ezvonegañ an enneg ebarzhet en doareen anterinder.
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource="%1$S" n’eo ket dec’havael evit gwiriadurioù anterinder dre m’eo na CORS-gweredekaet, nag eus an hevelep orin.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=Treol enneg anskor en doareenn anterinder: “%1$S”
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=N'eus metaroadenn talvoudek ebet ebarzhet en doareen anterinder.
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=An hedad RC4 a zo implijet gant al lec'hienn-mañ evit an enrinegañ, ar pezh a zo diamzeret hag arvarus.
+
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch2=Stanket eo bet al loaz e “%1$S” abalamour d'ur fazi kenglotadur rizh MIME (“%2$S”) (X-Content-Type-Options: nosniff).
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XCTOHeaderValueMissing=Diwall talbenn X-Content-Type-Options: “%1$S” oa ar gwerzh; fellout a rae deoc'h kas “nosniff”?
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XTCOWithMIMEValueMissing=N'eo ket bet diskouezet an danvez eus “%1$S” abalamour d'ur rizh MIME dianav, fall pe a vank ((X-Content-Type-Options: nosniff).
+
+BlockScriptWithWrongMimeType2=Stanket eo bet ar skript e “%1$S” abalamour d'ur rizh MIME diaotreet (“%2$S”).
+WarnScriptWithWrongMimeType=Karget eo bet ar skript e “%1$S” zoken ma ne oa ket talvoudek ur eizh MIME JavaScript talvoudek ar rizh MIME (“%2$S”)
+# LOCALIZATION NOTE: Do not translate "importScripts()"
+BlockImportScriptsWithWrongMimeType=Kargadur ar skript e “%1$S” gant importScripts() a zo bet stanket abalamour d'ur rizh MIME diaotreet (“%2$S”).
+BlockWorkerWithWrongMimeType=Stanket eo bet kargadenn ar worker eus “%1$S” peogwir n'eo ket aotreet ar rizh MIME (“%2$S”).
+BlockModuleWithWrongMimeType=Stanket eo bet kargadenn ar mollad eus “%1$S” dre ma n'eo ket aotreet ar rizh MIME (“%2$S”).
+
+# LOCALIZATION NOTE: Do not translate "data: URI".
+BlockTopLevelDataURINavigation=Merdeiñ d'ar roadennoù el live uhelañ: N'eo ket aotreet URI (stanket kargadenn “%1$S”)
+
+
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+# LOCALIZATION NOTE (RunningClearSiteDataValue):
+# %S is the URI of the resource whose data was cleaned up
+RunningClearSiteDataValue=Talbenn Clear-Site-Data en deus rediet skarzhadur roadennoù “%S”.
+UnknownClearSiteDataValue=Talbenn Clear-Site-Data kavet. Talvoud dianav “%S”.
+
+# Reporting API
+ReportingHeaderInvalidJSON=Talbenn danevell: gwerzh JSON didalvoudek resevet.
+ReportingHeaderInvalidNameItem=Talbenn danevell: anv didalvoudek evit ar strollad.
+ReportingHeaderDuplicateGroup=Talbenn danevell: laosket eo bet ar strollad eilet “%S” e anv a-gostez.
+ReportingHeaderInvalidItem=Talbenn danevell: laosket eo bet an elfenn “%S” hec'h anv a-gostez.
+ReportingHeaderInvalidEndpoint=Talbenn danevell: laosket eo bet ar poent dibenn a-gostez evit an elfenn anvet “%S”.
+# LOCALIZATION NOTE(ReportingHeaderInvalidURLEndpoint): %1$S is the invalid URL, %2$S is the group name
+ReportingHeaderInvalidURLEndpoint=Talbenn danevell: laosket eo bet a-gostez URL ar poent dibenn “%1$S” evit an elfenn anvet “%2$S”.
+
+FeaturePolicyUnsupportedFeatureName=Reolenn geweriuster: o leuskel ar c'heweriuster “%S" e anv a-gostez.
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidEmptyAllowValue= Reolenn geweriuster: tremen ar roll aotren goullo evit ar c'heweriuster: “%S”.
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidAllowValue=Reolenn geweriuster: o tremen ar gwerzh aotren anskor “%S".
+
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+
+# X-Frame-Options
+# LOCALIZATION NOTE(XFrameOptionsInvalid): %1$S is the header value, %2$S is frame URI. Do not translate "X-Frame-Options".
+XFrameOptionsInvalid = Un talbenn X-Frame-Options didalvoudek a zo bet kavet e-pad kargadur “%2$S”: “%1$S” n'eo ket ur sturiad talvoudek.
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+# LOCALIZATION NOTE: %1$S is the URL of request.
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+# LOCALIZATION NOTE: "Sanitizer" is the name of the API. Please do not localize.
+
+
+CORSDidNotSucceed2=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS request did not succeed). Status code: %2$S.
+CORSMissingAllowOrigin2=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: %2$S.
+CORSPreflightDidNotSucceed3=Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at %1$S. (Reason: CORS preflight response did not succeed). Status code: %2$S.
+CORSAllowHeaderFromPreflightDeprecation=Cross-Origin Request Warning: The Same Origin Policy will disallow reading the remote resource at %1$S soon. (Reason: When the `Access-Control-Allow-Headers` is `*`, the `Authorization` header is not covered. To include the `Authorization` header, it must be explicitly listed in CORS header `Access-Control-Allow-Headers`).
+LoadingMixedDisplayObjectSubrequestDeprecation=Loading mixed (insecure) content “%1$S” within a plugin on a secure page is discouraged and will be blocked soon.
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+MixedContentBlockedDownload = Blocked downloading insecure content “%S”.
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+BothAllowTopNavigationAndUserActivationPresent=An iframe which has both allow-top-navigation and allow-top-navigation-by-user-activation for its sandbox attribute will permit top navigations.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorithm in use (e.g. "sha256"). "%2$S" is the value we saw.
+IntegrityMismatch2=None of the “%1$S” hashes in the integrity attribute match the content of the subresource. The computed hash is “%2$S”.
+DeprecatedTLSVersion2=This site uses a deprecated version of TLS. Please upgrade to TLS 1.2 or 1.3.
+BlockRedirectToDataURI=Redirecting to data: URI not allowed (Blocked loading of: “%1$S”)
+# LOCALIZATION NOTE: Do not translate "file: URI". “%1$S” is the whole URI of the loaded file. “%2$S” is the MIME type e.g. "text/plain".
+BlockFileScriptWithWrongMimeType=Loading script from file: URI (“%1$S”) was blocked because its MIME type (“%2$S”) is not a valid JavaScript MIME type.
+# LOCALIZATION NOTE: “%S” is the whole URI of the loaded file.
+BlockExtensionScriptWithWrongExt=Loading script with URI “%S” was blocked because the file extension is not allowed.
+RestrictBrowserEvalUsage=eval() and eval-like uses are not allowed in the Parent Process or in System Contexts (Blocked usage in “%1$S”)
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+MixedContentAutoUpgrade=Upgrading insecure display request ‘%1$S’ to use ‘%2$S’
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerLengthOverLimitation=HTTP Referrer header: Length is over “%1$S” bytes limit - stripping referrer header down to origin: “%2$S”
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerOriginLengthOverLimitation=HTTP Referrer header: Length of origin within referrer is over “%1$S” bytes limit - removing referrer with origin “%2$S”.
+# LOCALIZATION NOTE: Do not translate "no-referrer-when-downgrade", "origin-when-cross-origin" and "unsafe-url". %S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingWarning=Referrer Policy: Less restricted policies, including ‘no-referrer-when-downgrade’, ‘origin-when-cross-origin’ and ‘unsafe-url’, will be ignored soon for the cross-site request: %S
+# LOCALIZATION NOTE: %1$S is the ignored referrer policy, %2$S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingMessage=Referrer Policy: Ignoring the less restricted referrer policy “%1$S” for the cross-site request: %2$S
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+XFrameOptionsDeny=The loading of “%2$S” in a frame is denied by “X-Frame-Options“ directive set to “%1$S“.
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeRequest = Upgrading insecure request “%1$S” to use “%2$S”.
+# LOCALIZATION NOTE: %1$S is the URL of request.
+HTTPSOnlyNoUpgradeException = Not upgrading insecure request “%1$S” because it is exempt.
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+HTTPSOnlyFailedRequest = Upgrading insecure request “%1$S” failed. (%2$S)
+# LOCALIZATION NOTE: %S is the URL of the failed request;
+HTTPSOnlyFailedDowngradeAgain = Upgrading insecure request “%S” failed. Downgrading to “http” again.
+# LOCALIZATION NOTE: Hints or indicates a new transaction for a URL is likely coming soon. We use
+# a speculative connection to start a TCP connection so that the resource is immediately ready
+# when the transaction is actually submitted. HTTPS-Only and HTTPS-First will upgrade such
+# speculative TCP connections from http to https.
+# %1$S is the URL of the upgraded speculative TCP connection; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeSpeculativeConnection = Upgrading insecure speculative TCP connection “%1$S” to use “%2$S”.
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+IframeSandboxBlockedDownload = Download of “%S” was blocked because the triggering iframe has the sandbox flag set.
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+SandboxBlockedCustomProtocols = Blocked navigation to custom protocol “%S” from a sandboxed context.
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+SanitizerRcvdNoInput = Received empty or no input. Returning an empty DocumentFragment.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/svg/svg.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/svg/svg.properties
new file mode 100644
index 0000000000..88db6403b5
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/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=Gwerz %2$S dic'hortoz o tezrannañ doareenn %1$S.
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/viewSource.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/viewSource.properties
new file mode 100644
index 0000000000..3c4395ac9f
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/viewSource.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+goToLineTitle = Mont d'al linenn
+goToLineText = Roit un niverenn arroudenn
+invalidInputTitle = Enankad didalvoudek
+invalidInputText = Didalvoudek eo an niverenn arroudenn enanket.
+outOfRangeTitle = N'eo ket bet kavet an arroudenn
+outOfRangeText = N'eo ket bet kavet an arroudenn erspizet.
+viewSelectionSourceTitle = Tarzh an diuzad DOM
+
+context_goToLine_label = Mont d'al linenn…
+context_goToLine_accesskey = L
+context_wrapLongLines_label = Troc'hañ al linennoù hir
+context_highlightSyntax_label = Sklerijennañ ar c'hevreadur
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/wizard.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/wizard.properties
new file mode 100644
index 0000000000..15f104beba
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/wizard.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/.
+
+default-first-title=Donemat war %S
+default-last-title=Oc'h echuiñ %S
+default-first-title-mac=Rakskrid
+default-last-title-mac=Klozadenn
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/xslt/xslt.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/xslt/xslt.properties
new file mode 100644
index 0000000000..a54fd23467
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/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 = C'hwitadenn war dezrannañ follennad stil an XSLT.
+2 = C'hwitadenn war dezrannañ ar riñvenn XPath.
+3 =
+4 = C'hwitadenn war an treuzfurmiñ XSLT.
+5 = Arc'hwel XSLT/XPath didalvoudek.
+6 = Marteze ez eus un askizadenn er follennad stil XSLT.
+7 = Gwerzh an doareenn andezvek e XSLT 1.0.
+8 = Gortozet e oa ur riñvenn XPath evit mont d'ur Spletad Klomoù.
+9 = Peurechuet eo bet an treuzfurmiñ XSLT gant <xsl:message>.
+10 = Ur fazi gant ar genrouedad a zegouezhas e-pad pellgargañ ar follennad stil XSLT:
+11 = N'eus ket ur rizh MIME XML er follennad stil XSLT:
+12 = Enporzhiet pe enlakaet e vez end-eeun pe dieeun gant ur follennad stil XSLT drezi hec'h-unan:
+13 = Un arc'hwel XPath zo bet galvet gant an niverenn arguzenn fall.
+14 = Galvet ez eus bet un arc'hwel askouezhiañ dianav mod XPath.
+15 = C'hwitadenn war dezrannañ an XPath: ‘)’ gortozet:
+16 = C'hwitadenn war dezrannañ an XPath: ahel didalvoudek:
+17 = C'hwitadenn war dezrannañ an XPath: Anv pe rizh klom gortozet:
+18 = C'hwitadenn war dezrannañ an XPath: ‘]’ gortozet:
+19 = C'hwitadenn war dezrannañ an XPath: anv argemmenn didalvoudek:
+20 = C'hwitadenn war dezrannañ an XPath: dibenn riñvenn dic'hortozet:
+21 = C'hwitadenn war dezrannañ an XPath: niñvader gortozet:
+22 = C'hwitadenn war dezrannañ an XPath: vi-koukoug:
+23 = C'hwitadenn war dezrannañ an XPath: ‘:’ dic'hortozet:
+24 = C'hwitadenn war dezrannañ an XPath: ‘!’ dic'hortozet, ‘not()’ eo an nac'hañ:
+25 = C'hwitadenn war dezrannañ an XPath: un arouezenn andezvek zo bet kavet:
+26 = C'hwitadenn war dezrannañ an XPath: niñvader daouredel gortozet:
+27 = Kargadur ur follennad stil zo bet harzet en abeg d'an diogelroez.
+28 = O priziañ ar riñvenn didalvoudek.
+29 = Briataenn digempouez.
+30 = O krouiñ un elfenn gant un anv QName didalvoudek.
+31 = Liamm an argemmenn a zaougementiñ liamm an argemmenn e-barzh an hevelep patrom.
+32 = N'eo ket aotreet ar galv d'an arc'hwel alc'hwez
+
+LoadingError = Fazi en ur gargañ ar stil follennad: %S
+TransformError = Fazi e-pad treuzfurmiñ XSLT: %S
diff --git a/thunderbird-l10n/br/chrome/br/locale/br/global/xul.properties b/thunderbird-l10n/br/chrome/br/locale/br/global/xul.properties
new file mode 100644
index 0000000000..99c2103a93
--- /dev/null
+++ b/thunderbird-l10n/br/chrome/br/locale/br/global/xul.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/.
+
+PINotInProlog=n'eus tamm efed ebet ken gant ditour keweriañ <?%1$S?> er-maez eus ar prolog (gwelout Beug 360119).