Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand

Downloads:

2,542,256

Downloads of v 78.7.0:

13,576

Last Update:

26 Jan 2021

Package Maintainer(s):

Software Author(s):

  • Mozilla

Tags:

browser mozilla firefox admin foss cross-platform

Mozilla Firefox

This is not the latest version of Mozilla Firefox available.

  • 1
  • 2
  • 3

78.7.0 | Updated: 26 Jan 2021

Downloads:

2,542,256

Downloads of v 78.7.0:

13,576

Maintainer(s):

Software Author(s):

  • Mozilla

Mozilla Firefox 78.7.0

This is not the latest version of Mozilla Firefox available.

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Successful:

No detections found in any package files

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Mozilla Firefox, run the following command from the command line or from PowerShell:

>

To upgrade Mozilla Firefox, run the following command from the command line or from PowerShell:

>

To uninstall Mozilla Firefox, run the following command from the command line or from PowerShell:

>

Deployment Method:

NOTE

This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade firefoxesr -y --source="'INTERNAL REPO URL'" --version="'78.7.0'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade firefoxesr -y --source="'INTERNAL REPO URL'" --version="'78.7.0'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install firefoxesr
  win_chocolatey:
    name: firefoxesr
    version: '78.7.0'
    source: INTERNAL REPO URL
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'firefoxesr' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '78.7.0'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller firefoxesr
{
    Name     = "firefoxesr"
    Version  = "78.7.0"
    Source   = "INTERNAL REPO URL"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'firefoxesr':
  ensure   => '78.7.0',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 26 Jan 2021.

Description

Bringing together all kinds of awesomeness to make browsing better for you.

Features

This Package installs Firefox ESR

  • A powerful, new engine that’s built for rapidfire performance.
  • Better, faster page loading that uses less computer memory.
  • Gorgeous design and smart features for intelligent browsing.
  • Instantly import your online info and favorites from any other browser.
  • The most powerful private browsing mode with added tracking protection.
  • Firefox Quantum features: screenshots, pocket, gaming & VR, library.
  • Customization Features - addons & extensions, themes, toolbar.
  • Synced across devices - passwords, bookmarks, tabs and more.
  • Ad tracker blocking

Package Parameters

  • /l:LOCALE - Install given Firefox locale. See the official page for a complete list of available locales.

Command-line options for installer configuration. See the official page for details and defaults.

  • /InstallDir:PATH
  • /NoTaskbarShortcut Do not create Taskbar Shortcut
  • /NoDesktopShortcut Do not create Desktop Shortcut
  • /NoStartMenuShortcut Do not create Start Menu Shortcut
  • /NoMaintenanceService Do not install Maintenance Service
  • /RemoveDistributionDir Remove Distribution directory on installation/update. (This is the default behavior of the Firefox Installer, but not for this Chocolatey Package)
  • /NoAutoUpdate Sets a policies.json file to not update Firefox and does not install the Maintenance Service

Examples

choco install Firefox --params "/l:en-GB"
choco install Firefox --params "/NoTaskbarShortcut /NoDesktopShortcut /NoAutoUpdate"
choco install Firefox --params "/l:en-GB /RemoveDistributionDir"

Notes

  • Looking for Firefox Developer Edition? Install the firefox-dev package.
  • Looking for Firefox for Personal Use? Install the Firefox package.
  • If locale package parameter is not present, this package installs Firefox ESR in the first language which matches this list:
    1. If Firefox ESR is already installed it uses the same language as the already installed one.
    2. The Windows system language.
    3. If Firefox ESR does not support the system language, it will fall back to en-US.

tools\chocolateyUninstall.ps1
$ErrorActionPreference = 'Stop';

$packageName = 'FirefoxESR'

$uninstalled = $false
[array]$key = Get-UninstallRegistryKey -SoftwareName 'Mozilla Firefox*ESR*' | Where-Object { $_.DisplayName -notmatch "ESR" }

if ($key.Count -eq 1) {
  $key | ForEach-Object {
    $packageArgs = @{
      packageName = $packageName
      fileType    = 'exe'
      silentArgs  = '-ms'
      validExitCodes= @(0)
      file          = "$($_.UninstallString.Trim('"'))"
    }

    Uninstall-ChocolateyPackage @packageArgs

    Write-Warning "Auto Uninstaller may detect Mozilla Maintenance Service."
    Write-Warning "This should not be uninstalled if any other Mozilla product is installed."
  }
} elseif ($key.Count -eq 0) {
  Write-Warning "$packageName has already been uninstalled by other means."
} elseif ($key.Count -gt 1) {
  Write-Warning "$($key.Count) matches found!"
  Write-Warning "To prevent accidental data loss, no programs will be uninstalled."
  Write-Warning "Please alert package maintainer the following keys were matched:"
  $key | ForEach-Object {Write-Warning "- $($_.DisplayName)"}
}
tools\helpers.ps1
function GetUninstallPath() {
  param(
    [Parameter(Mandatory = $true)]
    [string]$product
  )
  $regUninstallDir = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\'
  $regUninstallDirWow64 = 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\'

  $uninstallPaths = $(Get-ChildItem $regUninstallDir).Name

  if (Test-Path $regUninstallDirWow64) {
    $uninstallPaths += $(Get-ChildItem $regUninstallDirWow64).Name
  }

  $uninstallPath = $uninstallPaths -match "$product [\d\.]+ \([^\s]+ [a-zA-Z\-]+\)" | Select-Object -first 1
  return $uninstallPath
}

function GetLocale {
  param(
    [Parameter(Mandatory = $true)]
    [string]$localeFile,
    [Parameter(Mandatory = $true)]
    [string]$product
  )
  #$availableLocales = Get-WebContent $localeUrl 2>$null
  $availableLocales = Get-Content $localeFile | ForEach-Object { $_ -split '\|' | Select-Object -first 1 } | Select-Object -Unique

  $PackageParameters = Get-PackageParameters

  if ($PackageParameters['l']) {
    $localeFromPackageParameters =  $PackageParameters['l']
    Write-Verbose "User chooses '$localeFromPackageParameters' as a locale..."
    $localeFromPackageParametersTwoLetter = $localeFromPackageParameters -split '\-' | Select-Object -first 1
    Write-Verbose "With fallback to '$localeFromPackageParametersTwoLetter' as locale..."
    }

  $uninstallPath = GetUninstallPath -product $product

  $alreadyInstalledLocale = $uninstallPath -replace ".+\s([a-zA-Z\-]+)\)",'$1'
  Write-Verbose "Installed locale is: '$alreadyInstalledLocale'..."

  $systemLocalizeAndCountry = (Get-UICulture).Name
  $systemLocaleTwoLetter = (Get-UICulture).TwoLetterISOLanguageName
  Write-Verbose "System locale is: '$locale'..."
  $fallbackLocale = 'en-US'

  $locales = $localeFromPackageParameters,$localeFromPackageParametersTwoLetter, `
    $alreadyInstalledLocale, $systemLocalizeAndCountry, $systemLocaleTwoLetter, `
    $fallbackLocale

    foreach ($locale in $locales) {
      $localeMatch = $availableLocales | Where-Object { $_ -eq $locale } | Select-Object -first 1
      if ($localeMatch -and $locale -ne $null) {
        Write-Verbose "Using locale '$locale'..."
        break
      }
    }

    return $locale
}

function AlreadyInstalled() {
  param(
    [Parameter(Mandatory = $true)]
    [string]$product,
    [Parameter(Mandatory = $true)]
    [string]$version
  )
  $uninstallEntry = $(
    "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$product $version*"
  )
  $uninstallEntryWow64 = $(
    "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\$product $version*"
  )

  if ((Test-Path $uninstallEntry) -or (Test-Path $uninstallEntryWow64)) {
    return $true
  }

  return $false
}

function Get-32bitOnlyInstalled() {
  param(
    [Parameter(Mandatory = $true)]
    [string]$product
  )
  $systemIs64bit = Get-OSArchitectureWidth 64

  if (-Not $systemIs64bit) {
    return $false
  }

  $registryPaths = @(
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'
    'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall'
  )

  $installedVersions = Get-ChildItem $registryPaths | Where-Object { $_.Name -match "$product [\d\.]+ \(x(64|86)" }

  if (
    $installedVersions -match 'x86' `
    -and $installedVersions -notmatch 'x64' `
    -and $systemIs64bit
  ) {
    return $true
  }
}

function GetChecksums() {
  param(
    [Parameter(Mandatory = $true)]
    [string]$language,
    [Parameter(Mandatory = $true)]
    $checksumFile
  )
  Write-Debug "Loading checksums from: $checksumFile"
  $checksumContent = Get-Content $checksumFile
  $checksum32 = ($checksumContent -match "$language\|32") -split '\|' | Select-Object -last 1
  $checksum64 = ($checksumContent -match "$language\|64") -split '\|' | Select-Object -last 1

  return @{
    "Win32" = $checksum32
    "Win64" = $checksum64
  }
}
tools\LanguageChecksums.csv
ach|32|5c19eff1c29340455b7750b795551cfaf303040cb4c91e688ec019bb4f6b2c53d0f198a9effe1580b6e35e323017e71c955246f9d69d6dc9cee895967ac5c1c0
af|32|4adc2fbcbeed69b1e924005acd5b4d8455e75ed7719c40bbc889d7796ce28d55608ba20cfd7814382bc530e2a738ce2a7b71498dd24870a6bc1bb405095baf6b
an|32|3ce992cacce987222a096da8410f907e5d518e7690b38ad456b4415d46e2da34507755a481e492a83bc5a8c6bb7e7c002ec93f869595c91fd7bfad0197aa002a
ar|32|845cbcd10be74a96b5383849441a8e3b4885e614971de8186a00eea78b12efaec43344685421ed4a9e7c7d62fcec3c223f51c981161026981c6253a783310d90
ast|32|f089cb39e1f5ca3ada1aaabe339b0c280ad852782aa9099f568c8695888145984d1b2890109bac3b50d19956a267d06849ff642c1c9351c1ae09503278e80db9
az|32|9413b22584c887f47bcf95f8fed7cc2c76f2c63af63779b2c8c1e4db55f1cdceb5ef44d31488bb5fa58bcf185b18bb3c69a8f0d7576371485fed4a45ad6f6266
be|32|849a8f744fe4b934febede561ba58ea8ce1ad6418f65b96b3b647a5d868faf26b592590469eb95194d65e3bc66e3315a37a96875509659e1c4430f39635d3570
bg|32|9d7c295b6693f6b88c8d6cae7afd5602e0d4c76af0720b154ee9e7f899ef13c674bdc75b953a44e2b2fef6595b97e71266e9205c21c6be7a1d3c106156a0967b
bn|32|90d0bfa0322c1109f66fad52b08f45a34033e79e8c2ff89aa2bfbb1cfa8341feebfd1cbbd37e3bd4b8ff2bb0084550d6c2936f1cb30bf2304751146de09e197c
br|32|650eed473b4db06d79c321179698c8909e7a18fd449c44109c1d981b5d73a6efeb27ba00e0a42b4dd7fee15d0973a8ea8a73ae6ab1edc78b1b9031593c6cdb11
bs|32|c17fd55e4e1d2154b249cfee1f0f7078ca49eb51faf82bbb1199e1d09f31a456e0cd141768a5f27589c94e9f3cad0b9fbc744815addd83b1db931a7bdcbd0b1b
ca-valencia|32|2aaa876e397d7bc1a43b71391425e7b772c581a18a69ee0e176736938827f5a71629cdef7c61f5b10975efd315a579305769911a3b48e7684b0294f6c50a6f19
ca|32|f365480b62174159ef669f1529d5cb28f90d6f55fb805252b96cdaf2443c17405e4631d500128ad1cd34d6c427c633baa586dc58b5f029962ff41893ba2bb4fd
cak|32|7d41fb1ca255c5c4c61b3995366d9869d8c40b5fbed774afb1b9a7d8b3044dc0be5d19b8d718efa98c065f47dca9469262804570c11ef1b26696f5f33d75c9ea
cs|32|1ea46413ab5bddba6250ac80caf0e94c916037a42783560bae9b9fbfdbeb27a782fcce7378f3780a9812eec672a172fbaa9b44c2645e90eaf37c4ac9ead52088
cy|32|9d959cb23d12996d74d3e38ddfb112336dec666b8ca76f90090cad78c75fafb0cdd17c9d6dec6f0146b18fa7f2ab28dd5e8b046685ad7e58c9f4130bbd3b323a
da|32|cc1ad834c957628bbf0f577db9deebe070e00e752dae74178c2cb2918d9169a231ad7a210c2379ce9bd6fbb470010f4aab3128ce01009d0813165724ea993098
de|32|068f8fc8105cff9663d2e38af71047eb30a1e224cfbf7bba50a4a018c8deec7a7c0966fa36556032aadeb523c790d8be5328e03e48f97e90d105b1c719a2f54b
dsb|32|8e487e493f88605da41085f8c1fda78e71abc2e57b25b2badc3f8f61c3cc20b36d6cd36e926510363671bb59bff2c08e4beb02c8e1574e314fe11b6b8f28e04d
el|32|afdb9ec5d1098a370f6032066fea02b2c1a3afa5ddc30724e92305017680b7493846d52d6693546cc72d30c4d1a778c51a9bec21cde796101c39bbe562248a30
en-CA|32|1278e568576c05a252a883108bd7f5e0983e933d634ec73a94fe34d39b10665cd5e949ec3f95b606e4bb6ba8fd390efc04565de6fa3c519b8c3e1d96511ef07c
en-GB|32|e6579a908178177f65f52efeabe5ac7108a5c1b437b4d5e3725c71766b1854b86ce427574d4e73558045f1bedba800ea11a680943c1841ee69e1cd43aadd746d
en-US|32|dfbbb39d9f1feb0ac1c868b738506729a2f314b2feb012d26f66bec5f97410979e0c229661c8f2bc9f80f55abc5cdd0755a6973ec395811fd4b006318a4d9aeb
eo|32|6ba54bcb161941170d1b752fdc23ebf0c11fe4c835280385c72ad98d43bd792e8cc3bf8a727b6271c68af6cba9a2129f0aecc049fa2e3461a8c5feb800fc55c0
es-AR|32|69d7bc4932d81f01bdbcc5a79dc858b2ff482110cb8427a6dbe1a483cb3ada6a38962afbd9d4bf9ffe1453b30e3bfc31faa315aea264c0f55192cc70dfb502c6
es-CL|32|beee924b2b7cded7b443828ae7e27da3c2807894865c70c8dece5dea7f85f55f283afe21ec2cf5ffb9e0ad6a93001476ef95412158e14ba7d40d4e718e5948cf
es-ES|32|3fd5ec196bd9e36c32cc58044e71d578df22840281c6a2742e73d74134c51b11f9473b48ae32ed8e3f2ed81c2e2c065f04bde449dbbae279c9f98ed3549424c1
es-MX|32|40ee1a1ba7f6b52a6fe0c14eeff8bfbeb225937c63c75bc6ac01920150aa032ba6248ef2295ed7f897d43e1688eb8549c5e92d5f82beac5ba2a3327c1fb98e2c
et|32|217e055fa351103d3153dd65f86f5f67047a8c0721941c3dfc4bb107777cd1dae264bdbd7262fd657ad9a76554c42561502cb593605b72e124c8c2268fb963fa
eu|32|e116ee2b75fd96c54c036f6438398ef91df6354cefe1e9b22f7ec77a5f3c6e66911102fc8acf4728bc9b3cfb7f142f8d2961a27c37ab0e4d5160abf7239570e9
fa|32|b3ceb4a6628abe0a020da22ba82dc63578122d01166ac92e8d790f59115c9baf81ef72c699e4173d7a94ead3ae97057f50b58a7695a2444feb24392b015f4a72
ff|32|892a8edb5fdc1f2f5fe7d5c0cde612338ba542a20bb2f979d904cd177b328da34308d2b0ca0e8a42d36f1756ef904c806481704ed67063f5c394c3b8fdefda17
fi|32|632a4510d41ce472fee6cf0f5c0553b4464931e0f236c02603dffca47af24a714e8ced867b7200ea39f9696006243d2392be0876664d860eea898ceff521097b
fr|32|fae757f95687086c1df2b64efcb69f080061ac4ce2a6dcd436b871c1f02041e1530fcf10c89dcd69029a0d9fe1c99a103bcfbc1671f00741b796c25678633ada
fy-NL|32|1eb9e4da2ca2d8515dbbc1a3c811623b9ff24d33ff6a6ebb4c89f219361a442a05fb663a00719c83c918d0748545f1a32c5653729bd54bb08e6e54201674da52
ga-IE|32|b37bf390a5a34b8cbb8b157c42ea25e750c9b57a04e963ad7f0b68220a0ea0657526a837520737af30bdbe02dd4731170db21d2dbc0659a8d04f30b6c7379e45
gd|32|60cef1cbfafc7110d7aa455ebdbcfafde5c63191c1e9b22a4d4cea12dca168383ba476094aa9e3eff7c101e9bbe7c6972302d56fef986af2c4a5e4b5aab5a304
gl|32|000dd5076ba46f3ba4a5449a39de76c4fcb2566f7f0c468fdfbacf8e11f02553f8ea0e92d22a09f0f3182124c3757405c2f191a1c3dc70b3c45070302c90f3d4
gn|32|7b1861a16d053f41f6ffe0ee790804976c196ea539d1bc7e8e7d16d2c5cedf3d0e78c760d0133e5e6bf1268d30c1bdeea79337ed85cf5faaefc998723e097a85
gu-IN|32|427f8228ea69ba89a5c08a2839b1c01d2dc44765900d3b3ce2e2e6c7dc562c7ed163cef1fbbdf83c066a971194305fdc837935e1b110bf783d1963be04c3a8ab
he|32|7d9e31f39940831da5f2acdc650d7b797b373dc131bbbcb694a891e0ba838a097c5ff707f6787a924a29f626c2fb329fa82cc55649ff8285350e7f1be2fe43da
hi-IN|32|3608e7c25aff2f01e1ae31ed6cd0bc06c8c1940b16340b102a12d7cebd603883e50063403aba19f9179225c7cae7fc51a1dfb9de21bf22c357395f8ad600a411
hr|32|a3be52483817abf055b646a81b7ee53baaac21d05249072d9490d83c7c8649a1fbc112e196abbbcff864d0fece35a40193a52e42c2dfb6e813aa642bb247f9b8
hsb|32|133c082cddc3438e73fab5e840420fee76467d88510d79ab6d4c47c1e1fdf6b7392cc16d959b06c8e8645616238c5730ccf5507b66edf735ac897cc9a966abdf
hu|32|b8b83b21f0e5b8a58d608cd390cabebf32306bf54a7a91f248885e972b5baca5310ea78eeb4a7a49b87103ca9e623f1c832c648de8ab1aed752a4dcb2e6375d0
hy-AM|32|e1e758fadcdbbdee65b99ad4a3b7ce60633c01be54f306d41bbb704c4d68148a3a0abe53b95aed9f574d9d665f4ad0960b1dd85d6f30f70edbba8a553815c130
ia|32|f0d68abfd371e5a8eaed07bb6a58fcaf6ff03c48814efee4a6220e41d0fbf2cf2415014b5a572de98608c71048d2ffcc1d2a06c4d30ef1c43008785ead0ae883
id|32|f3db49a7e4b6bad74e78bb0f480fbacaf6bd13d8c789140c4756ddde004b4d572dd0397147184e4f82d6c7e9cd070b756d43b26b7951d5b62e670deea91994e5
is|32|8c1365dccaaf7d665f9abf03626093ead4d3e421f3103cf2008495517addd254b947cf20160b0ba082b9ae2dc07c0dc2162e39a9d7bfd4d087697a300e9b3047
it|32|358ec676f2dc6546eef4d8c34246402b6bfd8d982653d758ed5a9e4e59412f32a23699844df60edc9be9bbf92c7662851305896d2c1d265a5fe5d964bdce48a7
ja|32|38130d41f8aaee395e3a9b95790420159b8291c8b3d0b4ae962333ed4f4d3e7ee0690c33a2784d29926b7660d9e4f26e7cda1ef96d8c2a2f55b0fe08326b674d
ka|32|ce99e5f5cb05cfdd0f47b052cb7403f094f8256aa126a3fb4aff5eaa37fbbf513a0ac693caa987052ce37de29a10b597cec51cf951f593fddb2b2c451c34f7f9
kab|32|a9c041b359cdd1d9c92495b309ada253d1e28eed387af3709240299b8e3c5a48a2428586e027cf82263096ad8127c21f0bda00f90564e58ccc46e91b2df76810
kk|32|9107e638277d302d168904e1f22e99d592d5c0a7463b52e26679cb0c06343de00e1b0887fb7afdca2760f30dde7fd216fbf1caef241fdc03420bbc88843f4043
km|32|134ef805fefa9ffad8c8c45ad890d8040e70c8d9755afe0d6b125664c6bfb974341135084c8aba624b14f050c1872bccf262520be80c5660d438aa143f5bac66
kn|32|834794794ecf5ae083c449bec5054e4af39335c53e072d7c3bdfaf297c3adc3e3e95607be63d14f4bbcc2ed21e0f76d8bcc8ee7d4429d49592c3a25a4b4c1efb
ko|32|e53529b9b2870ade308355bacd4f2f372ca1d7dc4ed76bb585935c828d3309b0d777d6a85bbbd272d3d466babaa157893c5eb7f7d5ef708d078c0ecdac82f7b0
lij|32|b0e9db45319a02d966eacd6e964574458ffb49dcb12480d70a7062b829caa19f81d9aa78644c4f2d123230a99181f18cf74d9de61b9188998a33aebf648ee293
lt|32|a3c183f53fa1c97329b9c79a498e8974621b793976f5b3dd403e9d03d0d2446110ad639d94e2499ca7018e80b4249304415793bdeac27b4d41c6a720cddd6c38
lv|32|38f15d976c1ee49a425b04b74c042a0b5653d22839e4d37c0690458151b6cce161389a4f961f10c31a9d9b2cf94c48943dd0b925811265fd43e9fe017a2ae530
mk|32|aebef0adc10473152e992f6562aa6e5bcc82e6a590d43a769f73d0933872d08263798132f009731d3543101eca762eb0185b30367735d18f556b2584311379c2
mr|32|4d5264132333750c63f42221916dfe39ffc4361b2e0e40bd16b8ff0aa055172e0bcf7980ef3711e8de399dfc1f336c08a9b3eae87178933d61800511a2d0024d
ms|32|a5833cd68654c4b39f0966da7fcdb0b52a51a664a11b793162313339053422efb5e0a205d8ce6edbb4af135c48cefcbc917b88a52e79167f6a48b12e6c08c3ef
my|32|8d3ca71feed7ca9a620225d949f363ee977ca924ad30a6a308145f476cbbf7ec9eff1c79157fe1c08fe135b4154a15420462dbac924fbccabb9aa5e3c564ffc2
nb-NO|32|4fbb2d02d98394f94407ca05ab49a04e0b5a69c1d2af448a385d92d89a6d5e12054540f1bf5f17ff4532273e85d472d65fd57d4108743e4ce271a69a1e910382
ne-NP|32|b6b136c413fb7f8964af9d00ebfd2f8f0aa934edde28cfec8e832e0ac5b77d5c17f0ca9ae2d387f8fbdfe247254739cdff9c927cad7a778ed8501437dc0d62fd
nl|32|49b9d2ebfd7a5788e70ca03f562e896add5cc0e7578b864c3adf19c23b12bab0f46006e9fe461fd133be1906d42eeefcc36c9526adecc17d070950d0a9fe372e
nn-NO|32|5f83fb16d309931c830beb292fb5da7c4b13e126e61a207c6181af50f033af911120a3d5a32d6e7379791eaa3da2c756f10d74838faded459026e7beb446d690
oc|32|39162df7b7b4cc3cbe9b4a41eaa064d5dec3c3f4fae4787fa37aac8aa65e3ad7657d602e320bac0dd7035a0113675255db04f9b10e03bf889d7f5100b2767295
pa-IN|32|abd228addb43d30de1c7927eb71112cfe9310f48aee6e68646b3bbb502897b69be3f8aeb9705d886e8139822f970010bc275a905f1e3f9c56229143825f6a38c
pl|32|aaa75a2e2017d154d1ec313936892c23615224b471e75b2e38d4dca54561d39c4e53ea3c4e79ab8066536bfa858c9c64d7ca9ad7de098965250743d90255f8b7
pt-BR|32|5bc6381870613b2dd055849a3766fd8cc72318c6e70906e57f0816439bd1a4691fcd89155e827862044fa06ae9efbd135bbe1e06c8d8115b68fa397fb2867f97
pt-PT|32|0a0e86f960cb8032c2bf9941d925ee9165ff3894ad0b027962fdf8704f826af5fc90ddc1b4989c1df47120dbcd676ce995f34c8c8420b6fdbbace93d9a7090bf
rm|32|80fd35fbd7baa5cc0421dfbf6da7c74fe239cf1a1e3393c43bed15670800d1322b79a8626aea56a807cf9a7a5163fca62718acaacee6b81447e3432364b4c084
ro|32|36df42e38f86b951a2b881852a10d5f77291e2ffb1a52f0a6c6b4f8a314338c9032510d9da723ee57c5ba316d795934286f05703afa9bb22ecd5cceb1852f6b3
ru|32|0ea84dbce007a5b4fc7f60a1df28f1f7812b6bfdd276e1c3564fa1e8fe8cbd4634a117e04cd193f40b8788b0e8cf8e3a3f2fc5b0ddbdc68c6502ce6c9ea39059
si|32|8185d09503ecae77e2d7d6a4a933a6da82a880702c346655f50b2e3cd3af5e1f06bf2885530630e1648d0a628a8f816eafbbbe85ba43c9faaafd1904cf97af13
sk|32|7453ccf5772a396d83b3584592eae412c8e98c7d8b86bacc135b5b93dc1992afc7b01e5a8ced516f97290a332cf72f199075eed3d0fcb8cd665eccd06cb5c476
sl|32|f54b292282cb23d3484b923777ffe54669c0f54093949513f326096c4b502c1e14f6858c98760ba21cbf6793895f9cae94d7dad284082da7c1e7df2ad29f3b9f
son|32|99aa685272e246431aa24287f922973bd15bbf55a18d45e7c5c8144ea56fc0c3f602c6b7a7ac94549faa2927242877faaf6af38298d8d43023f17e61676b1269
sq|32|364b050e143ec9d99a94de21d3e205334f6f05c05e1d4ecb8dfffe1741c87e59c0293fbc8cbea680e77c426e11a9c6a9782ade7280be1e835436abfebbf4d09f
sr|32|eb7e426e1688691248be7be7365c0e009f57171679588634e1f696872400436a00cc59a5ca86b5db794e6deca84be1c5a87c1b94c3e21777a09845cca6a9be50
sv-SE|32|40fbaf683994978daff3132bfd7d5cbf60eb605a4b5bc5f037b5c6af9bf7ac0bb3406514afa324a85e5b5094622902d958a83723d927212d5e96e5b6d0b25990
ta|32|f6840eb1762002735135f82d77ab917f308d4daa15e1392de9bf9bf309d5238ec3aff76c15f901fe9b9aec5fc0e554256117740bcca421504f3a572dad9c9aa4
te|32|389716385a0855b1c98015de3756a61343af364a67a6f4c35b2bc48a8c2cad307bb1d8d42a286a6db7f87a0bf26b9874ffbbd98a7939f76ede59eb460aedf759
th|32|f069f21aa6145273d0e55e2aaa373b8064ac46d62f38dc50059f81c71599fa54a97d8c0794e5d39161c901b9a2ccf6addb37945af86b6dba44a95436c451f58f
tl|32|fa2051755a9e0aa1f331413229626aba3e7033b001179eff3dbd9dfe3f58fb42945d4c7f481f30d24b8aa8aca97b6b462047523560518625fe4facdc54f656e6
tr|32|e690f78376cd247f3e31df8e1b67b4e7876bae7e60213f47f04fe5077b17d7e7310290901076a6ac0695e70cc585a8eb693e4a42fff1f021f41be430126ce18b
trs|32|29d6343b2a9d0ba5c5a087093628fa1eee7f0a42b299a208129ca3d4d6b47b7e179ee2487a1068f14e3dc103c2c723f3a53f8426b6a0d36368dba2a8d659e269
uk|32|725b39a44cfb0769c77f8ba5c074ed033e31066495f062664c3396d58f4b6da3f107655baf18dfc97874a08d098a7cddb410fbde355935970af0e5cc26c50848
ur|32|eda5019754d7b513803b7b4ebf36aa19fd2e0a0e0b719e367ef7505e53de759a06498f5ba696636d1d8c72f7272e834b96139a76ba046712b508262d316beaba
uz|32|8fd3f1f02dac37644fbcdc3092167bd93fb6a714ee66318755c3381edfc0e8857bd0c79f1897d27764478067626d5fba058ff3e49c83757270ce519d931bd727
vi|32|b9785d102a1c6f365e0dc00011ebdf377fc27ca62ad3108754270c3fbaba76fce17b93e8e03a535d1e05bf3df1967fecd5f6245abfab7728429c0e25094cb06f
xh|32|48b52627567f440e0cbc621c364399fa46749d0153d24614432ee7fcf4a9c2ee9bf3281bfd7f2ee1457ef156a7619e639e65239ed355385472ce8809573f5ba5
zh-CN|32|a00b1888bfa45ef39e14ae6442d5cee26d0d5c85c45730d07b87d6623e64f4ebc55f9111509cd030ecf08d989d09cf8b4e5f46760667eaed4fb6548f3366f961
zh-TW|32|e93a41462cc1888a8b896c295bb23a22d9a9d9c27193c89c54af32eaf202e1516e2103a0f8927f8dbca054311c3d519de60af4d35a6835963d6b3b4cdea5f2f4
ach|64|d084d0f199fdb7e87007fcc30b004ce57528f34ee720efade4ba0dbf6fd88f7600f3bde7065a0f7a38e444ef867123f1a6215157c8acd2f4be08552c58f4b83a
af|64|d88b3b82e040625d04e02fbf366d3e66d0d3ae7c93785f403a7f4acd73a932ab84cbf426821fd2c55fe961422c6e5a2b484855269d44829eb11336f40f415c4d
an|64|bc533126602699226ec489390e79bf200c5e9c2a897cd505febf77c0e70a854f7e4d2f99d451101f5059c592de7395f69ec0917aa1d581dda8e53450104fc3b5
ar|64|0783e9101f5ef1b933ddda0c82c5348f32e229536d58fc4a731711d9d58d35c49e5072725bb00a389942b2148f078b3fec2822c7b997cc1bf3764d5ce6b8aa44
ast|64|c59e99d8af3a981f60b78cbee7144ce95a4694248d50ba84d749870fbdb28c5861447134c15cefd0224d852df28d3ef7247ba0763456cf9b3e6959619928b330
az|64|96f281397a9a99acc7412667e5dae20b250f84a417607892650565428dac8df92cf8aaa5a82a68d66bddff01d0f0491b4fe3063caa881e5a3313517cd0c36afb
be|64|f71affb555f5aa665eacad369b92b4b0e9ef301008fbbdb1ba15eff051efcb6f433c4b324dd5c64096fc6b0c09bbff65612d743e50ee19c6aac55ae0e2163615
bg|64|aaa8ab03e74ba6d5ba2c9ce02d52efdcfd5f48880b2a3ec30e4de53827e81243b32879dbd22bb757bedc4d95be13cd9d5c450a45adc069cbdcd58e3ae7fdeff7
bn|64|8a58aac3269c5078ecfe6d6006d6ded85a33277f50c7d12339dcbcb4d4560188066b288926fcd458495031294b23b10947f8141db970a32079303f6066da6ac4
br|64|b22cd0c6c8079785d8745a65bd7185ef3a950a0fd8f3700f343d3fa86b8ae2f9c398285aeb10d5218d2440b2c46d05275a63b49cda312c92c750671f2fd44090
bs|64|5bf8a06b958c8c733a561d1024c63a164a2b753c76c21c7cc3b9067906e73732dd7934c74e171ff098f826d4872eb1fb29745bc6b48a95a8ffc313352a9105d3
ca-valencia|64|e16376c5cf8111aa6a57344e7747a48420251e21dcfecb68290fd896e7b021903505d493a4c98586ae1d1296d53a2c0dfce8264a9e5ed99edaad28f612b7e59b
ca|64|794a38103528a91c7ed032a3eb490091a4c301658b412a74be93fdbc4c3ed1cd05a302e2a28e9c5992af9f394a3a163c9791001d97ea81bdc2bfb81d7c3d9cab
cak|64|9a05c342550e2d94c32f74942b860113d87a583597766c7f8860e5d45b10a01cd3b5afc644156ce532b98d2695b2382cf4405e8806ec65233f7c8ee94078fe3d
cs|64|084a93cb0794946021e9b8b9ddf2a1b4387bb065188b4dd8acd2ec7fdadddc740a1b4023e47bb6e1c416baeabdf06480e7c4e53f846e1c38595d91f22b89309c
cy|64|b4210c1581658d9c518c710447159d9c196d3a7015da62f87cf7463e92a2f0e103abf6123ad27fc103660d1d407b748459ec6a905626f5fef411d89c4be9e0db
da|64|9b70689f5dc26cd597b3b93d7fba00cbc3435ce3e5ee5e49b7f78a7b7aea5f0f99c71a37d531cc7e5c1f785d737fc8cd9c77914384a34bedb94f7059c4a72d4a
de|64|7948177f7409984e14e50b8368540e53fa77c8ecdfa502b1ef6a5eafe1a6020bb442d6254cef97743b506fb8cdbd28f871f3fee164faaf8cf638018128578a07
dsb|64|6d6526237b809b0df265feda6c4dc07a8c380500d77dd6e9d064ced3b8dfda22ae1712601ee12e67012127b433ee1a507663401acde5c7bdb4920d73ff34a5e0
el|64|d7a75309bf20a326398a7d97169202f174bdbdffbe06bc063a70bf4113de558241338e23cdcb73ee3963560e44e7b4b1acafcb435febc0bd2ea6d56911d0d5c9
en-CA|64|1b840d46814d2c7de9f09d23db7a2e9b2128cb6febde5a23ac869e9878a399f74eaafa6d79e64e1c1b6b82c1d34c5398306621db38fe66b7253302cd97f262af
en-GB|64|f69af98b80c361cdeaaccee57945d20380053b56e8df4de42be8fa4d037e7342f7df80cef70e1aa4054bb45021b65e48d08112488a045687293b949d8532037f
en-US|64|9dbea0bce29eba326f0628c6139fb28b6ad2a2831463db0e30733f019202fd2e5c2a011506fac0b0d05218025ce31b1754559b5843150ad6850944516e9204a3
eo|64|d52930ec43f23e99aff463b159bc4e7a931fbe1886b54f106472231597de411949282772971e409927860b78e82459d49767d41a109ad59ebe6f035776d511dd
es-AR|64|ce5e6884d1a19d26fcbedf6ab53f9ec2e76dc2e4aea52c914935a5040359233e2b1ae951fc122814a7ae9347b2ce5503a3d23d83519b6b4ac0de70ea1ef26720
es-CL|64|6e53d12bb4c1fb381f78536e53191d8bb2a85ee55af366ee2d62b4d9909f35941a495a6ce17c1b9b17039b6f278f13ade5690cf5ba9b1bc4ce17fe4707b3ec0e
es-ES|64|1d04f93c1ba4af6f8d83dcc5c2a2e71fb5bcc5074b5ba9f2f28d949e095a625bfbaf62b10db86963951f9ccae29bc5736969e8af79ba30e1cde49f3cb7bdeaac
es-MX|64|82a76c13e1614590cad48c1618a89669578ea7fbd7919cfc6a0a5a38e3ac73591380abba861271fdffc5d69084e2197b607d92c4463a47c53a99c2bc1d63d157
et|64|14009cea4cea198333674b30518f5ec8fbc83c841073589bef3b317ce6b8f0615578ccc78c8dcfc66935af20876aad24ae9f80471e9696e948c96454bc55c238
eu|64|f5d43e3a5b6c274d084125f887b5e5ce9ef4acebe09ef4c17b922ddc282985db0895ca7ccd6fcd8f7a958a7725e23f6b4596feb86973eec5cd63c4e94e45a3fe
fa|64|50bb36210c310737d014ec16ccb2e5ee5bfd38634694d35d7f459686186ff98e9ebe949ca2a9e1a53364332b33d27269f493b8c8711f6b690a419d9239addc21
ff|64|81eef21ee3d21352770678413e31d3b09d6e487c34b7590a4d01b623621370f91982caf104ebf5a6fb16eb8491f616ed31d16176f6b2199de5bd5fa51a1fb2ff
fi|64|02a273e127ef3b0e8687a5e0272f0ad6bd9da93d03db0fd7a3011b726348c83df3c4fe0250590806286b1fc6abfc392b75df097e9ff45f196cf13ac0714f8b78
fr|64|f1c54ec5a88f5103e9f39c4034dc24a4b01ba4c3b853261c1c81b93d65b4c7ba31209f82804f163ac0e7ccd0af57497d02de46fc894105e756b7633eb296c64e
fy-NL|64|eadb466fa7cf964e120c69c14c572f39bc42f6582e1195be17f35284138f0834ceaf00685d0cce2760b83bf09453813946c9a4a7e85dfceed034c4bff06ef7b8
ga-IE|64|4ee029e5829db2462f1ed39e459ecfb75b8a24b1224ee3d2b40b4ce87ece0bbea7d0d48e176bf8e7fa17b7136761e31dfa97f233392bf57ce78a0fa8b5ddd694
gd|64|aeb18d9d37a13c2fef3eed731ac08756b85c707bc2a87d8f5b1d1ebd9faa8896ccc58f66950efe20a18700f33978b30aa2e0f7ef94977acd37ffa9a1df3d5338
gl|64|06521c52f811f56c9547a881b84cdb84d44710a57e788d5d31d1a86738f745dadf7aa4025107aad1ab1ad2811a6dc12fec0df3689871a3ba4d7ca8ceca0ae9bf
gn|64|52ff4ef6505b42561afb4819b4c0812fe0ddf2e877d35d8d5b26e9b001f72f1ecfba8d9b3b136f8c015a6a3bf22d2b074c5a1478a2557d561e2b36fa203fd36f
gu-IN|64|93c81844bc7db0033652b129c47c6b0daf4a147893b7c357bded13585e2ccd9cb6f935f37623b7e4f64aa5bc5e40f951e28a9b2904cccbae64373eb6713286bf
he|64|6e301bcb72c67136b48441b28a47ca0b73df28657cde3b0d337aea0077624f5b8cefd276e5454c54b253d7d1de034e759206149f3a29703e635003eb06d154e8
hi-IN|64|91c14faa738e80af02f7cd7c236286c64a962e202e1e615d6bfbe9acd76723ad2955e6d439e5ac4bed1586fe823b62328ed1603cc0871e9d3191840d63df4893
hr|64|dd4ea2ee36591123c7efe506de61babbfc31f1b313af3bc9ff969e682cf98d8ca4ee03e675ac5cb27e2549ac08bc59b78796852374d63a016935c6610c832fd7
hsb|64|a6c46fe0cdd7ae04bd617fa2683fe673f84ae0ef97c7dbaa6434b586226c055531429d2cb709658f425152591a07b1657ba0c458e63ef092d31a38df7bde016e
hu|64|2105a9b8c89979f5a5d6da37426d6b196322f5733677fda37819324e634d63f1185aea1874910db7b714bc21e9c3227c2fd76427b767023e3c0988ebc6b3e3a2
hy-AM|64|3f6c401efa34a7b2667cca004a62a975a69fc1e8697cea9fa8518556fb851f7ed2d6141d688528f9f747ee379ac7915079787fb82d3016cd1231ee1186610580
ia|64|ef2314d30428fa7e91cef9ebc7b013f5ad75f2c88bbe6429b460b7cd3c398ffec29c1fb1cef76e99b2119e1ac89ebdd5d9c1b75b30f2e2cdb567cbf4bb832d2a
id|64|b831d1c883fe48ef647b6d5a6883b76495e7ec379724dde31160573b62d8f24b1cffa0d492efa4aa48802348c3ca828a792c4ac45144d3bd7acaa3592ee9d1cc
is|64|d9733bf82d533d63dfbebb6e3dc9db1d69492c16255ebd37d4fbb79ff9ce92dc7998e647d70ab7bcbc19dbfda00154e1e43bbdd985c84bf8470a53d0ab61934d
it|64|0a0b68d4846e64249f702a1b3df082a89935afd173f5f0ad51ded0ef7ab97f35d75df8b96ff3410e05a9b77420678996fa3bb6221ba57928d823326e8840c98f
ja|64|661882ad350efb4d8646cd8a90675b192ed20706ec01bea24836c410bf99065463cd30b4b21f20ca72c60a38251d36d22822eb80aca78a8bdf6a58e3241e4f63
ka|64|ad54135315480ae396f81d346d5fe9a7b0acd8d0c3b9bd558e81d17dc9bf595d8aa3abfeed86e747c58e95e4f76285c0582e6cf38a4a822f9d8216623164a46c
kab|64|ef90cd27515c8a22b9901f6225c498f2f2ba88e555ad3f6999a1c95f6e52f97ba4fb1c5a2c24221d6de2d3679df22712aabbec28a565ffeaf8ee640a01e30760
kk|64|7a30f7d4013c981dd47789f0f06396ba8d70b54230427596a44cd6d4bdbbc75012687f965e8fb96b425657f7b51cc27cb7094e36fc3a5b32d00ec0babc4d474d
km|64|e7db23054cd65fb247347a388fec80e5d5f81e3057f06777ade1a5e613d78f792ab54fba3e3b8ba95e0b5d61972c9d69adf056c1d328a8296217a5d321fbda13
kn|64|0b511de8cf5fa67b39fa20e2ccaa88823f47252aaa0596c44e1d11d457ba1ca684f4d18adb59a3af5df2fdf86b8301a4b68b3574f5502ad29ec112e371cead0c
ko|64|8b0bc24553d1e2281e02129a03ccdf6670f4f559359e3f120dd03967cb564f0f7f7c306d010b6498b897722053e19ca58fb0f03bdbaaf38fa60ea0b940993359
lij|64|fa8e9ead69c19e65fe1ab20f43e44736938af76f0498d5d636bc5c7501a28b51462df05c254a2f65f24d16040a005f97c6254e220af879590975b14205c4164b
lt|64|ae584d1db7fffcc74be60d712002dc144a6a056cd2120df061a0fecb23555e47593f5f14ae25e524e900bf5278f090b42eaef84b58a5a648bcd3267822710b0b
lv|64|b0d12bdc4d00cf6584e03fccf82a6a48e371fcebb67e2667ddb4c8515bca1b342417d3869a7f0453edea158e642e5dd9c34c5b918587edd341aa9079ed071031
mk|64|bf5e27bd1457965d97b0755bad09d7e18a4fe1ad954dbcf7a986aa81f0286d50827afd6ccec91533a63f2431d1cb79bca14e750582566d0d6a220110e2510cdf
mr|64|696f5485f28c9f3ff55cc3c84090fed5936a7f4c7e655650066b7c7d8097b9971943d0e5b07e00dc753a42dcace3e829325beb37cd3f547357e90507fd5ca717
ms|64|45fd9f948650df7a71733d3cdf101e1820f1b3b347de0bfce0594350184976d89b818e35b68d92b41546fa32a83aed135eeff550b9f767b872775fae81587cc3
my|64|edbb93762e5773d6e02e0d81932da924e06b62c72a88c2150b4f25a49f85bdac921f46f254ae437eb557d38baa5d3bb99d373b26f5f9d8b94768c39094b06784
nb-NO|64|45bcb5ee575a33c368eb029e85e9980b5b5fdaeea45a6a39600d2dc3e7f00ec5cdf8cb20d7077722a91b9e8989df794c45b9f63e7aca5d56af768ec79f857e31
ne-NP|64|be4f4f568208f5410b392d6b307faf090d4f62c6b924cedd0e6dd6af54d8bf04461743effb3bbb7f6fd651873a099d0fd9e310fff13eefadb1865e6373950e67
nl|64|939f42e66114db79f25846345ecf79a0a76df8af695f61df69e14010b2a2f72a64d59c8ed66cc5094cb7696ddf6e4998d4196ff1d37ecbf0d4a1280bb4f1774e
nn-NO|64|9d1b22b38abcb48903c4f925cd8581d6e8681a80f098e6da0d622d637f64fa4580cc43d4b0feb236b7fad5fec8ff9f51df9ebae31ab001df815ee1798e7d0f14
oc|64|166bb34dba1493865f54b39739c43b1b877a39070d091b09dc9c407aaad39782e85b0dcad600f94e9083d2c5b4ee878f80d95fe5d4a4f9185c6cd97adf980363
pa-IN|64|cb22928afb076b1e11ba7ae9c95bc65f61ffd2c749da26c9c404db72354c5e0e7fcc9429c05ca31cf17422fa50ad49f8c42f03d4880e5aec6176e37014049d56
pl|64|7f06e62c90296afec16a134f7e22021c0dca720a4991803947c16c0c263ea85b8025dbdbc1e937713b996be982edea9ab71cbf8c2ba32bab49ca64bca57560bf
pt-BR|64|ffacac7d7316f379b18e58cf3d74f36ec01049998ab14de09fa2460275d571fc8e573c376750cd0bebba5ef0a17d931248b191ec154480c22ae0dd7d192bdf87
pt-PT|64|c60bc768bd8087a9ad6e9f2bc3dfd2b75645e630fd5f3b65934f5f0c2cd0319b2c634b5e57f5b3bf58ec8147f786648fdf506dfff2fc9204edec8b48c16728d1
rm|64|fa83f071bf7b22105e7c01ce1eaa996eff3d927895080a63050dc7d24b49e9cc7850f67c42aa21190b75547d24775f0089db8b751f08fccfa36cc05aad6be51f
ro|64|a5a36d9d2e69b21e2b9ff1bd043e941f705f7da0c14782e081ab68ece5d60782f500b5366a732d53602f903e890ab6e5d5d489ff61863b587a29f8ea81c9bcda
ru|64|91fef48f2236de0d4bfa97296a898cc31fb8001569118c813dc68244a32c1c4650ee795e046da149b7c396f6be2fa6cf3ba78e0f41597c86a309caa182349d46
si|64|6ac69946822de107cae55d08ce6fa2cecc2464772fc06539b9cab4f0a4296680f16e417f7671c365997eaf8a6bdeccfd7c719da1a4097b8ff24909299a816f54
sk|64|8346a85c485ae85c024c6de6f66bb2e248f9830bba56036c2d9b26843b59c7bd31f6b39b5a055229c4a2183a5eb59e42a73446cf7818e9973c554a066283ddc1
sl|64|462d769efa61b845461ac4400ee668d679fb8273d47f84c9ca06a01563cbd36f1c67d82833a85e70fb4cc2f51091a0db8c8fb104337967b9df55fa5c198de116
son|64|d07684cb4611c91df2bdcfcca1e1121a41afa6eb5c0afa037f5963686a7ccc89a9893f6f34938f3464b43b2843a3352956282ddacbdf88e8a93e51fc2e7dff00
sq|64|1223243495c2f2af316c5f9e8fc211b2950c0707051276da90a394e5f3623bbd22a826395fcce76f83d164430190b97b29915096789d14644caf02791dad8367
sr|64|fb5597e27ba8dbcfe0125445ececd37109682347ad616788ab08d1f67dcbaaa826c16fd0492a82c61704f2d763717507641871828ac35838ecd89debc35a8f69
sv-SE|64|55144de50297ecd9c1da42180939a7675cc79830ed18ae73c6d4b1fc67b703f9ab1fe32636a83d7290e2aef93c07b9c36b1f1e790d37cccb5cf785e43739d6aa
ta|64|842d065ed4535eb06dafdbb2840d313e396ce071623430012ccd6efe07121e76e5ac58a62e94b96f9a87a500c5e4dcd221aeb86ae9f5916bfe5ffcfb0b18d249
te|64|1f40f0f9e8cb48a82fea0bfd25181f51a7a048633904b1de53eda4f32aba18987400b828d89ee3a7cf9ad14f87e6834765c468349f96f7b8f58d781bc9a091ed
th|64|a75218a297c8830f3cb9b8a653f909d6ae1ce8b4d964c3afad8a5db12f6c6e03c68d67f3b1e6a9c549c55a9254454e5a4f35ed2acc2793d0f3e79ed2c7865cff
tl|64|ccae9b0babf1e90e2d6f5810b40c5f18c6c8934b800efbce6eb1990f8d00f5e5f98866e96b753cea3c49e74a9d1253536c1497e4bd181bed39002d0876d12a8a
tr|64|faff39ea9c9ec9b683a96c0e34b9d3e3bde31f2cc10e122d5d057be6bdc9d1055e3dffa8e734df40651b574c6c22e415d428852b8198506bce6078e4e5693eca
trs|64|5d75b82a8e312445934a2ec59e6a05fb5c060b5fd8b2913f6ef5be096d1be5481a4ed6be1fdb71e5e09b21029af92f97439243a0f35c34e145ddd3ea499bdc42
uk|64|263f3d09a5f945e41f11848a8df7e49d61fd4d9bea785d9666744160026846e9b7be5e623a08eefc2ccbf502d1e347935bbf2fabe4609a3ba96b27f0250f5adf
ur|64|81083d3562fb910e983d2d913b74ea9c92774b3e844d4f1aab8871bdc6d5296b9251ce78da60db751ae7c5178f15bf8f9deef06f13730df354d29135bf2b7ff0
uz|64|517c3d493e833c5365b03feef6bb9c06a049ae8577a5ce077a2a1e689a546d0c97e3e138915911cda2ca953865a07ea443cc6ca884be918f3ab21d5964e2b65b
vi|64|c48072ad47f4463bf7c145ff27b9033b21d1c793a173042611fd184cedfa6f91d7f26a0bff6bfc2462eb4df057cd3951bd0dab9f2a48b79fa6b665e9bb8f2ec7
xh|64|9b1355d3264ab43d53d7768d623058a5f5941e98c777a9863b3675b74ea0d78a22322c97ac2a6eebe5cb8f73cb6a37575931723e09b38e72d28e7f25c0c270bc
zh-CN|64|0c2fd1c3d5a64ea1ee89fb0eb13e2dae1376f1f7f64ea1f623f96d374a1f9a61d250cfff6f76e2012b590c92242f8e5b5b244fd105059009cea4b0944862f87c
zh-TW|64|3960d0fa2937996c39686d5ff755100a5eb3ac28b95a96d38f7abe49105441a4f85a647f7bf06c06879e75b16131cad48bd7794aa479fee40c91c6df6aad467e
tools\chocolateyInstall.ps1
$ErrorActionPreference = 'Stop'
# This is the general install script for Mozilla products (Firefox and Thunderbird).
# This file must be identical for all Choco packages for Mozilla products in this repository.
$toolsPath = Split-Path $MyInvocation.MyCommand.Definition
. $toolsPath\helpers.ps1

$packageName = 'FirefoxESR'
$softwareName = 'Mozilla Firefox*ESR'

$pp = Get-PackageParameters

$alreadyInstalled = (AlreadyInstalled -product $softwareName -version '78.7.0')

if (Get-32bitOnlyInstalled -product $softwareName) {
  Write-Output $(
    'Detected the 32-bit version of Firefox on a 64-bit system. ' +
    'This package will continue to install the 32-bit version of Firefox ' +
    'unless the 32-bit version is uninstalled.'
  )
}

$sa = ""

# Command Line Options from the Firefox installer
# https://firefox-source-docs.mozilla.org/browser/installer/windows/installer/FullConfig.html

# Always prevent Firefox installer to require a reboot
$sa += " /PreventRebootRequired=true"

# Prevent RemoveDistributionDir by default
$sa += " /RemoveDistributionDir=false"


$sa += if ($pp.InstallDir) { " /InstallDirectoryPath=" + $pp.InstallDir }

$sa += if ($pp.NoTaskbarShortcut) { " /TaskbarShortcut=false" }

$sa += if ($pp.NoDesktopShortcut) { " /DesktopShortcut=false" }

$sa += if ($pp.NoStartMenuShortcut) { " /StartMenuShortcut=false" }

$sa += if ($pp.NoMaintenanceService) { " /MaintenanceService=false" }

$sa += if ($pp.RemoveDistributionDir) { " /RemoveDistributionDir=true" }

$sa += if ($pp.NoAutoUpdate) { " /MaintenanceService=false" }

if ($alreadyInstalled -and !$env:ChocolateyForce) {
  Write-Output $(
    "Firefox is already installed. " +
    'No need to download and re-install.'
  )
}
else {
  $locale = 'en-US' #https://github.com/chocolatey/chocolatey-coreteampackages/issues/933
  $locale = GetLocale -localeFile "$toolsPath\LanguageChecksums.csv" -product $softwareName
  $checksums = GetChecksums -language $locale -checksumFile "$toolsPath\LanguageChecksums.csv"

  $packageArgs = @{
    packageName    = $packageName
    fileType       = 'exe'
    softwareName   = "$softwareName*"
    Checksum       = $checksums.Win32
    ChecksumType   = 'sha512'
    Url            = "https://download.mozilla.org/?product=firefox-78.7.0esr-ssl&os=win&lang=${locale}"
    silentArgs     = "$sa /S"
    validExitCodes = @(0)
  }

  if (!(Get-32bitOnlyInstalled($softwareName)) -and (Get-OSArchitectureWidth 64)) {
    $packageArgs.Checksum64 = $checksums.Win64
    $packageArgs.ChecksumType64 = 'sha512'
    $packageArgs.Url64 = "https://download.mozilla.org/?product=firefox-78.7.0esr-ssl&os=win64&lang=${locale}"
  }

  Install-ChocolateyPackage @packageArgs
}

if ($pp.InstallDir) {
  $installPath = $pp.InstallDir
}
else {
  $installPath = Get-AppInstallLocation $softwareName
}

if (-Not(Test-Path ($installPath + "\distribution\policies.json") -ErrorAction SilentlyContinue) -and ($pp.NoAutoUpdate) ) {
  if (-Not(Test-Path ($installPath + "\distribution") -ErrorAction SilentlyContinue)) {
    new-item ($installPath + "\distribution") -itemtype directory
  }

  $policies = @{
    policies = @{
      "DisableAppUpdate" = $true
    }
  }
  $policies | ConvertTo-Json | Out-File -FilePath ($installPath + "\distribution\policies.json") -Encoding ascii

}

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
Mozilla Firefox 115.9.1 18949 Friday, March 22, 2024 Approved
Mozilla Firefox 115.9.0 22021 Tuesday, March 19, 2024 Approved
Mozilla Firefox 115.8.0 31624 Tuesday, February 20, 2024 Approved
Mozilla Firefox 115.7.0 29073 Tuesday, January 23, 2024 Approved
Mozilla Firefox 115.6.0 31239 Tuesday, December 19, 2023 Approved
Mozilla Firefox 115.5.0 31771 Tuesday, November 21, 2023 Approved
Mozilla Firefox 115.4.0 29948 Tuesday, October 24, 2023 Approved
Mozilla Firefox 115.3.1 25614 Thursday, September 28, 2023 Approved
Mozilla Firefox 115.3.0 9618 Tuesday, September 26, 2023 Approved
Mozilla Firefox 102.15.1 19574 Tuesday, September 12, 2023 Approved
Mozilla Firefox 102.15.0 20189 Tuesday, August 29, 2023 Approved
Mozilla Firefox 102.14.0 27960 Tuesday, August 1, 2023 Approved
Mozilla Firefox 102.13.0 34763 Tuesday, July 4, 2023 Approved
Mozilla Firefox 102.12.0 26625 Tuesday, June 6, 2023 Approved
Mozilla Firefox 102.11.0 27006 Tuesday, May 9, 2023 Approved
Mozilla Firefox 102.10.0 31523 Tuesday, April 11, 2023 Approved
Mozilla Firefox 102.9.0 36766 Tuesday, March 14, 2023 Approved
Mozilla Firefox 102.8.0 35651 Tuesday, February 14, 2023 Approved
Mozilla Firefox 102.7.0 34270 Wednesday, January 18, 2023 Approved
Mozilla Firefox 102.6.0 34586 Tuesday, December 13, 2022 Approved
Mozilla Firefox 102.5.0 33043 Tuesday, November 15, 2022 Approved
Mozilla Firefox 102.4.0 35681 Tuesday, October 18, 2022 Approved
Mozilla Firefox 102.3.0 32984 Tuesday, September 20, 2022 Approved
Mozilla Firefox 91.13.0 30267 Tuesday, August 23, 2022 Approved
Mozilla Firefox 91.12.0 31809 Tuesday, July 26, 2022 Approved
Mozilla Firefox 91.11.0 31749 Tuesday, June 28, 2022 Approved
Mozilla Firefox 91.10.0 30258 Tuesday, May 31, 2022 Approved
Mozilla Firefox 91.9.1 17355 Friday, May 20, 2022 Approved
Mozilla Firefox 91.9.0 23547 Tuesday, May 3, 2022 Approved
Mozilla Firefox 91.8.0 32688 Tuesday, April 5, 2022 Approved
Mozilla Firefox 91.7.1 32124 Monday, March 14, 2022 Approved
Mozilla Firefox 91.7.0 16694 Tuesday, March 8, 2022 Approved
Mozilla Firefox 91.6.1 12368 Saturday, March 5, 2022 Approved
Mozilla Firefox 91.6.0 34595 Tuesday, February 8, 2022 Approved
Mozilla Firefox 91.5.1 22454 Thursday, January 27, 2022 Approved
Mozilla Firefox 91.5.0 27553 Tuesday, January 11, 2022 Approved
Mozilla Firefox 91.4.1 25837 Thursday, December 16, 2021 Approved
Mozilla Firefox 91.4.0 17635 Tuesday, December 7, 2021 Approved
Mozilla Firefox 91.3.0 32547 Tuesday, November 2, 2021 Approved
Mozilla Firefox 78.15.0.20211014 23535 Thursday, October 14, 2021 Approved
Mozilla Firefox 78.15.0.20211011 11429 Monday, October 11, 2021 Approved
Mozilla Firefox 78.15.0 16148 Tuesday, October 5, 2021 Approved
Mozilla Firefox 78.14.0 40559 Tuesday, September 7, 2021 Approved
Mozilla Firefox 78.13.0 31934 Tuesday, August 10, 2021 Approved
Mozilla Firefox 78.12.0 25259 Tuesday, July 13, 2021 Approved
Mozilla Firefox 78.11.0 34838 Tuesday, June 1, 2021 Approved
Mozilla Firefox 78.10.1 23945 Tuesday, May 4, 2021 Approved
Mozilla Firefox 78.10.0 17372 Monday, April 19, 2021 Approved
Mozilla Firefox 78.9.0 25496 Tuesday, March 23, 2021 Approved
Mozilla Firefox 78.8.0 24768 Tuesday, February 23, 2021 Approved
Mozilla Firefox 78.7.1 17470 Friday, February 5, 2021 Approved
Mozilla Firefox 78.7.0 13576 Tuesday, January 26, 2021 Approved
Mozilla Firefox 78.6.1 17964 Wednesday, January 6, 2021 Approved
Mozilla Firefox 78.6.0 17023 Tuesday, December 15, 2020 Approved
Mozilla Firefox 78.5.0 23365 Tuesday, November 17, 2020 Approved
Mozilla Firefox 78.4.1 13252 Monday, November 9, 2020 Approved
Mozilla Firefox 78.4.0 20426 Tuesday, October 20, 2020 Approved
Mozilla Firefox 78.3.1 20582 Thursday, October 1, 2020 Approved
Mozilla Firefox 78.3.0 15604 Tuesday, September 22, 2020 Approved
Mozilla Firefox 68.12.0 43080 Tuesday, August 25, 2020 Approved
Mozilla Firefox 68.11.0 33694 Tuesday, July 28, 2020 Approved
Mozilla Firefox 68.10.0 19805 Tuesday, June 30, 2020 Approved
Mozilla Firefox 68.9.0 19545 Tuesday, June 2, 2020 Approved
Mozilla Firefox 68.8.0 19358 Tuesday, May 5, 2020 Approved
Mozilla Firefox 68.7.0 19600 Tuesday, April 7, 2020 Approved
Mozilla Firefox 68.6.1 6479 Friday, April 3, 2020 Approved
Mozilla Firefox 68.6.0 21232 Tuesday, March 10, 2020 Approved
Mozilla Firefox 68.5.0 33126 Tuesday, February 11, 2020 Approved
Mozilla Firefox 68.4.2 26098 Monday, January 20, 2020 Approved
Mozilla Firefox 68.4.1 19438 Wednesday, January 8, 2020 Approved
Mozilla Firefox 68.4.0 5283 Tuesday, January 7, 2020 Approved
Mozilla Firefox 68.3.0 27048 Tuesday, December 3, 2019 Approved
Mozilla Firefox 68.2.0 42830 Tuesday, October 22, 2019 Approved
Mozilla Firefox 60.9.0 50953 Wednesday, September 4, 2019 Approved
Mozilla Firefox 60.8.0 44202 Tuesday, July 9, 2019 Approved
Mozilla Firefox 60.7.2 16422 Thursday, June 20, 2019 Approved
Mozilla Firefox 60.7.1 4928 Tuesday, June 18, 2019 Approved
Mozilla Firefox 60.7.0 19077 Wednesday, May 22, 2019 Approved
Mozilla Firefox 60.6.2 14888 Monday, May 6, 2019 Approved
Mozilla Firefox 60.6.1 26572 Friday, March 22, 2019 Approved
Mozilla Firefox 60.6.0 6018 Tuesday, March 19, 2019 Approved
Mozilla Firefox 60.5.1 24251 Wednesday, February 13, 2019 Approved
Mozilla Firefox 60.5.0 13785 Tuesday, January 29, 2019 Approved
Mozilla Firefox 60.4.0 26433 Tuesday, December 11, 2018 Approved
Mozilla Firefox 60.3.0 37710 Tuesday, October 23, 2018 Approved
Mozilla Firefox 60.2.2 22245 Wednesday, October 3, 2018 Approved
Mozilla Firefox 60.2.1 24530 Saturday, September 22, 2018 Approved
Mozilla Firefox 60.2.0 39168 Thursday, September 6, 2018 Approved
Mozilla Firefox ESR 60.0 40287 Wednesday, May 9, 2018 Approved
Mozilla Firefox 52.9.0 1477 Tuesday, June 26, 2018 Approved
Mozilla Firefox 52.8.1 456 Thursday, June 7, 2018 Approved
Mozilla Firefox 52.8.0 1841 Saturday, May 12, 2018 Approved
Mozilla Firefox ESR 52.7.4 3062 Monday, May 7, 2018 Approved
Mozilla Firefox ESR 52.7.3 23539 Tuesday, March 27, 2018 Approved
Mozilla Firefox ESR 52.7.2 13945 Friday, March 16, 2018 Approved
Mozilla Firefox ESR 52.7.1 3363 Wednesday, March 14, 2018 Approved
Mozilla Firefox ESR 52.7.0 2435 Tuesday, March 13, 2018 Approved
Mozilla Firefox ESR 52.6.0 47182 Tuesday, January 23, 2018 Approved
Mozilla Firefox ESR 52.5.3 16610 Thursday, December 28, 2017 Approved
Mozilla Firefox ESR 52.5.2 12510 Friday, December 8, 2017 Approved
Mozilla Firefox ESR 52.5.0.20171115 16743 Wednesday, November 15, 2017 Approved
Mozilla Firefox ESR 52.5.0 1840 Tuesday, November 14, 2017 Approved
Mozilla Firefox ESR 52.4.1 12835 Tuesday, October 10, 2017 Approved
Mozilla Firefox ESR 52.4.0 4969 Thursday, September 28, 2017 Approved
Mozilla Firefox ESR 52.3.0 15357 Tuesday, August 8, 2017 Approved
Mozilla Firefox ESR 52.2.1 16371 Friday, June 30, 2017 Approved
Mozilla Firefox ESR 52.2.0 7922 Wednesday, June 14, 2017 Approved
Mozilla Firefox ESR 52.1.2 8925 Friday, May 19, 2017 Approved
Mozilla Firefox ESR 52.1.1 2904 Friday, May 5, 2017 Approved
Mozilla Firefox ESR 52.1.0 3979 Wednesday, April 19, 2017 Approved
Mozilla Firefox ESR 52.0.2 3275 Thursday, March 30, 2017 Approved
Mozilla Firefox ESR 52.0.1 2254 Saturday, March 18, 2017 Approved
Mozilla Firefox ESR 52.0 1968 Wednesday, March 8, 2017 Approved
Mozilla Firefox ESR 45.8.0 1636 Tuesday, March 7, 2017 Approved
Mozilla Firefox ESR 45.7.0 2881 Thursday, February 2, 2017 Approved
Mozilla Firefox ESR 45.5.1 3836 Thursday, December 1, 2016 Approved
Mozilla Firefox ESR 45.3.0 7306 Thursday, September 1, 2016 Approved
Mozilla Firefox ESR 45.2.0 2368 Tuesday, July 19, 2016 Approved
Mozilla Firefox ESR 38.5.2 3983 Tuesday, January 5, 2016 Approved
Mozilla Firefox ESR 38.2.0.2015081001 478 Tuesday, August 11, 2015 Approved
Mozilla Firefox ESR 38.2.0 442 Tuesday, August 11, 2015 Approved
Mozilla Firefox ESR 38.1.1 2046 Tuesday, August 11, 2015 Approved
Mozilla Firefox ESR 38.1.0 580 Friday, July 10, 2015 Approved
Mozilla Firefox ESR 31.5.0 6595 Thursday, February 26, 2015 Approved
Mozilla Firefox ESR 31.2.0 4334 Thursday, November 6, 2014 Approved
Mozilla Firefox ESR 31.1.0 823 Thursday, September 11, 2014 Approved
Mozilla Firefox ESR 24.2.0.20140209 1042 Sunday, February 9, 2014 Exempted
Mozilla Firefox ESR 24.2.0 700 Friday, February 7, 2014 Exempted
Discussion for the Mozilla Firefox Package

Ground Rules:

  • This discussion is only about Mozilla Firefox and the Mozilla Firefox package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Mozilla Firefox, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus