public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2011-03-28 19:18 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2011-03-28 19:18 UTC (permalink / raw
  To: gentoo-commits

commit:     428964f11b368f10290eadcb1cd364e22f977a83
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 28 19:18:53 2011 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Mon Mar 28 19:18:53 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=428964f1

revert changes for firefox as cairo is not a dep of it but xul

---
 www-client/firefox/Manifest                        |    3 +-
 .../files/mozilla-2.0-gconf-config-update.patch    |   25 --------------------
 ...firefox-4.0-r3.ebuild => firefox-4.0-r2.ebuild} |    6 +---
 3 files changed, 3 insertions(+), 31 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 5ca4caa..2281fa6 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -3,7 +3,6 @@ AUX fix-preferences-gentoo.patch 426 RMD160 83075ec3c2e4c39ba298096bd08447bb94ca
 AUX icon/firefox-1.5-unbranded.desktop 258 RMD160 32ebb016d6a4d3d2728c031f3b3762796e02f5d3 SHA1 69820d445d06b90d7ac35ffd39dad5926caa0862 SHA256 f2bf5c237a5c56b443c20fd16d3da429bf3b99e9fe27b661a1a462aa46ed25d3
 AUX icon/firefox-1.5.desktop 255 RMD160 4ef1cf548f11057274620b82f0728958a3424bea SHA1 6a440f817072fb60516c1a1d999dffb6d3fa1583 SHA256 9bf6e1264d986c68d64831d166ed6b506bff6df8b56d21bfc166aee09cbc753f
 AUX icon/firefox.desktop 276 RMD160 92a5671cd09e399b3330c4be31b7ac7583747031 SHA1 b757763670a00982f3cb38b8d41d7faa6eee3818 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5
-AUX mozilla-2.0-gconf-config-update.patch 827 RMD160 9de17d272f6e5899f79d713b965537f66d17db79 SHA1 5f575306bec598b1ff31dccccf42fd87de25c36c SHA256 d9c53a9a728cd4e350fb4a55ab6a0783b38e4c695946b63574e7179a84c346c8
 DIST firefox-4.0-af.xpi 220420 RMD160 ee8e95bbaf9e548082aca0a8029edc4cc6557afd SHA1 3a2da0b247983cdcf20a14faa2e3c1b6e3906264 SHA256 d4062ced61ccb4f1c37ee6c8793675e1c5da4d2a5e91ddf4c2d9f36561353492
 DIST firefox-4.0-ak.xpi 222040 RMD160 0ba8ab5ec79abafe126a8045844e4839a772d1e8 SHA1 4979d5ecfdd90a723d95984f57b07ddc6ed2df57 SHA256 4a050f68c9f4c51f89bb946c2aec22b5e81ae6b8a1835f601fc747c692e4dc37
 DIST firefox-4.0-ar.xpi 241600 RMD160 d22109a623f83319d64e16bba931bdecc7b71831 SHA1 d4bc970bcb8ccc6c0a5ff6cbcce157727261756e SHA256 be5d98d19c926861dd545bad492043983cd709f409cb88eb1931bd82ca816c79
@@ -81,4 +80,4 @@ DIST firefox-4.0-uk.xpi 260129 RMD160 4a7cda6a1ae6dd31d3b089b05e6bc4f85d0b0a3e S
 DIST firefox-4.0-vi.xpi 239966 RMD160 94f90afd4a26b6f9b220a1f096f4259f1c4339ed SHA1 7b5602a5b9e0e67b31b27bc125eb3a62e0c71319 SHA256 9927c8bd3bbd796805bd70eb5a4b37d113715333542b7a262623e0f09b8aa2a6
 DIST firefox-4.0-zu.xpi 227605 RMD160 56d91ea40c9983dc28db96af51a18cdd0b22a50d SHA1 a73c237b85bbb17924a2a2fc8499db380caa0f03 SHA256 474dfa2edf6cd692dbc05c9569d263ea326b02d91feb335a1e2e360117f524ae
 DIST firefox-4.0.source.tar.bz2 66024327 RMD160 2d1a3cf0f37ddbf4a5be9b83949f8f8236e2081d SHA1 403da9dd65662e5c4dd34299214e04cb6f80575e SHA256 78b1e0a66be3604af49b81193e557c27ffaee16b8c26fead052455dd42c9150f
-EBUILD firefox-4.0-r3.ebuild 8115 RMD160 574d7235da409914448e4cd00f01a7ded5705f2e SHA1 e33c379aa651daccf61dfe1c9a7a5c8518088cd2 SHA256 639c33ee97d609e1673aa13f2a9fcf6d9e79a55bb2ec1034209ceab62e84dff2
+EBUILD firefox-4.0-r2.ebuild 8003 RMD160 e8f05a2ee352537d60781adcd12049cef1f3d68e SHA1 f2ab4c81ed4dffdf098189b55d1a31b9b5b25480 SHA256 673e5fe37ee86198799789254ea80a9afd83d79cde7a42a8ac8f334315ba0e20

diff --git a/www-client/firefox/files/mozilla-2.0-gconf-config-update.patch b/www-client/firefox/files/mozilla-2.0-gconf-config-update.patch
deleted file mode 100644
index 464e1e1..0000000
--- a/www-client/firefox/files/mozilla-2.0-gconf-config-update.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/configure.in b/configure.in
---- a/configure.in
-+++ b/configure.in
-@@ -5701,16 +5701,21 @@ then
- 
-     AC_SUBST(MOZ_ENABLE_GIO)
-     AC_SUBST(MOZ_GIO_CFLAGS)
-     AC_SUBST(MOZ_GIO_LIBS)
-    
-     dnl ========================================================
-     dnl = GConf support module
-     dnl ========================================================
-+    MOZ_ARG_DISABLE_BOOL(gconf,
-+    [  --disable-gconf      Disable Gconf support ],
-+        MOZ_ENABLE_GCONF=,
-+        MOZ_ENABLE_GCONF=force)
-+
-     if test "$MOZ_ENABLE_GCONF"
-     then
-         PKG_CHECK_MODULES(MOZ_GCONF, gconf-2.0 >= $GCONF_VERSION gobject-2.0 ,[
-             MOZ_GCONF_LIBS=`echo $MOZ_GCONF_LIBS | sed 's/-llinc\>//'`
-             MOZ_ENABLE_GCONF=1
-         ],[
-             if test "$MOZ_ENABLE_GCONF" = "force"
-             then

diff --git a/www-client/firefox/firefox-4.0-r3.ebuild b/www-client/firefox/firefox-4.0-r2.ebuild
similarity index 98%
rename from www-client/firefox/firefox-4.0-r3.ebuild
rename to www-client/firefox/firefox-4.0-r2.ebuild
index da13998..ce9926c 100644
--- a/www-client/firefox/firefox-4.0-r3.ebuild
+++ b/www-client/firefox/firefox-4.0-r2.ebuild
@@ -22,7 +22,7 @@ HOMEPAGE="http://www.mozilla.com/firefox"
 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
 SLOT="0"
 LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
-IUSE="bindist gconf +ipc system-sqlite +webm"
+IUSE="bindist +ipc system-sqlite +webm"
 
 REL_URI="http://releases.mozilla.org/pub/mozilla.org/firefox/releases"
 # More URIs appended below...
@@ -35,11 +35,10 @@ RDEPEND="
 	>=dev-libs/nss-3.12.9
 	>=dev-libs/nspr-4.8.7
 	>=dev-libs/glib-2.26
-	gconf? ( >=gnome-base/gconf-1.2.1:2 )
 	media-libs/libpng[apng]
 	x11-libs/pango[X]
 	system-sqlite? ( >=dev-db/sqlite-3.7.4[fts3,secure-delete,unlock-notify,debug=] )
-	~net-libs/xulrunner-${XUL_PV}[wifi=,libnotify=,system-sqlite=,webm=,gconf=]
+	~net-libs/xulrunner-${XUL_PV}[wifi=,libnotify=,system-sqlite=,webm=]
 	webm? ( media-libs/libvpx
 		media-libs/alsa-lib )"
 
@@ -137,7 +136,6 @@ src_prepare() {
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}"
 
-	epatch "${FILESDIR}"/mozilla-2.0-gconf-config-update.patch
 	epatch "${FILESDIR}"/fix-preferences-gentoo.patch
 
 	# Allow user to apply any additional patches without modifing ebuild



^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2011-12-11 18:50 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2011-12-11 18:50 UTC (permalink / raw
  To: gentoo-commits

commit:     89bbab4cec7770bca934d3dbc87b52de2baa29ad
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 11 18:50:46 2011 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Sun Dec 11 18:50:46 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=89bbab4c

leave all addons enabled by default

---
 www-client/firefox/Manifest                        |    4 ++--
 ...-default-prefs.js => gentoo-default-prefs.js-1} |    1 +
 .../{firefox-8.0.ebuild => firefox-8.0-r1.ebuild}  |    2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index fa6aeed..a3f7a8d 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,4 +1,4 @@
-AUX gentoo-default-prefs.js 677 RMD160 73ec130da332c1d6517a6f838d5fab0cc134289a SHA1 b9efc3ef5e95ad3081f6b68d771e32e848b4b9ac SHA256 53493080276f221f1619153c114caf268206a6fa107972b33a4eb7f1c1cf6fe8
+AUX gentoo-default-prefs.js-1 718 RMD160 ebfcee09e56484204688b8e7e6ce1daca63580aa SHA1 37665e439aa79e261f096185455d4e107fd5b118 SHA256 5d343f07b27b50542517253b25c6d3043591492e1ce955e50b44317fe984513f
 AUX icon/firefox.desktop 276 RMD160 92a5671cd09e399b3330c4be31b7ac7583747031 SHA1 b757763670a00982f3cb38b8d41d7faa6eee3818 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5
 DIST firefox-8.0-af.xpi 227038 RMD160 2e8ddd25cdb6a25f6a3a7ff38528342136e712a9 SHA1 4893b99cdf7020d608af2e4805af312e3e559421 SHA256 5c63d809c19a6332a728bc1a818b804c09b2ec122f42e773285c8f247529c7e9
 DIST firefox-8.0-ak.xpi 228653 RMD160 64726a43b8cf4d1ca6a8c896655c4e222e55a98f SHA1 985510e14a3ad29308e492747a0a1fd5e84b3e37 SHA256 926dee62d6c8cb24892d9a5bc38943f20213f408d58c1fcf441e8d566cc7323c
@@ -84,4 +84,4 @@ DIST firefox-8.0-zh-CN.xpi 243430 RMD160 50781f9c1e56671b71958962d8047f1c1e69e99
 DIST firefox-8.0-zh-TW.xpi 244296 RMD160 b61ad8ada60b9841a23c72579b9f903773b70e77 SHA1 faa4fa00a67585fd9cfba9e6cea2d4e4dce0f938 SHA256 bf988457d2174eaeba9272a6d049e27431fc2413f3b43ee8bab2924675dc24fa
 DIST firefox-8.0-zu.xpi 234633 RMD160 c8163fab204bf8b412345089cdc9a2a79aea4b27 SHA1 5120fdf77cbfd09d7cf211cfb1ec988eae1654b9 SHA256 856bfe9ea1251e1104046c1da1452298cd12280b8e281fa00a0618d7e91ab01f
 DIST firefox-8.0.source.tar.bz2 70377448 RMD160 f87ec7668b2dcc1bb581b97e1dbe85e4b97cb31c SHA1 843cf4ad70d2fc4b16654c3ff9b080d3eb357452 SHA256 d950324ecd5362a648a891a66c3f2dde5e69b09f30ef8470b7759ec007691139
-EBUILD firefox-8.0.ebuild 11321 RMD160 5443df8f498301db440ffba2847b02a08710bfc2 SHA1 e82026df826470f2dd2047198e5bf4b5dde9dddb SHA256 0d8f0684852d94cd20775bd2eb1e3ff454d1a73af510325aa50aa44c5521623e
+EBUILD firefox-8.0-r1.ebuild 11323 RMD160 a26767985609fb1aab0fa48cd1be5f465ce3b7b2 SHA1 18ef0e399f0d59b3cf77d0962af0137950c18997 SHA256 2da02d5445ae7e57b6294fa78b171de9227366f014eb89f098516b9b90ce4041

diff --git a/www-client/firefox/files/gentoo-default-prefs.js b/www-client/firefox/files/gentoo-default-prefs.js-1
similarity index 94%
rename from www-client/firefox/files/gentoo-default-prefs.js
rename to www-client/firefox/files/gentoo-default-prefs.js-1
index 4546d3f..0d9aff8 100644
--- a/www-client/firefox/files/gentoo-default-prefs.js
+++ b/www-client/firefox/files/gentoo-default-prefs.js-1
@@ -12,3 +12,4 @@ pref("browser.shell.checkDefaultBrowser",  false);
 pref("browser.EULA.override",              true); 
 pref("general.useragent.vendor", "Gentoo");
 pref("intl.locale.matchOS", true);
+pref("extensions.autoDisableScopes", 0);

diff --git a/www-client/firefox/firefox-8.0.ebuild b/www-client/firefox/firefox-8.0-r1.ebuild
similarity index 99%
rename from www-client/firefox/firefox-8.0.ebuild
rename to www-client/firefox/firefox-8.0-r1.ebuild
index 89e3c3a..bb1b9fa 100644
--- a/www-client/firefox/firefox-8.0.ebuild
+++ b/www-client/firefox/firefox-8.0-r1.ebuild
@@ -291,7 +291,7 @@ src_install() {
 	pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell
 
 	# Add our default prefs for firefox + xulrunner
-	cp "${FILESDIR}"/gentoo-default-prefs.js \
+	cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
 		"${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js" || die
 
 	MOZ_MAKE_FLAGS="${MAKEOPTS}" \



^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2011-12-18 20:47 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2011-12-18 20:47 UTC (permalink / raw
  To: gentoo-commits

commit:     09a2868b481fa4e2c2c50e7e061216e62fe39fb4
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 18 20:46:20 2011 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Sun Dec 18 20:46:20 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=09a2868b

Enable system DPI and finish setting locale correctly

---
 www-client/firefox/Manifest                        |    2 +-
 www-client/firefox/files/gentoo-default-prefs.js-1 |    2 ++
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index a3f7a8d..e272378 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,4 +1,4 @@
-AUX gentoo-default-prefs.js-1 718 RMD160 ebfcee09e56484204688b8e7e6ce1daca63580aa SHA1 37665e439aa79e261f096185455d4e107fd5b118 SHA256 5d343f07b27b50542517253b25c6d3043591492e1ce955e50b44317fe984513f
+AUX gentoo-default-prefs.js-1 821 RMD160 13a7be3a165b7059e51fab2cc7fc8d31a82260eb SHA1 333339c4deb4fd41527fd87e1acf0af12cf1007c SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de
 AUX icon/firefox.desktop 276 RMD160 92a5671cd09e399b3330c4be31b7ac7583747031 SHA1 b757763670a00982f3cb38b8d41d7faa6eee3818 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5
 DIST firefox-8.0-af.xpi 227038 RMD160 2e8ddd25cdb6a25f6a3a7ff38528342136e712a9 SHA1 4893b99cdf7020d608af2e4805af312e3e559421 SHA256 5c63d809c19a6332a728bc1a818b804c09b2ec122f42e773285c8f247529c7e9
 DIST firefox-8.0-ak.xpi 228653 RMD160 64726a43b8cf4d1ca6a8c896655c4e222e55a98f SHA1 985510e14a3ad29308e492747a0a1fd5e84b3e37 SHA256 926dee62d6c8cb24892d9a5bc38943f20213f408d58c1fcf441e8d566cc7323c

diff --git a/www-client/firefox/files/gentoo-default-prefs.js-1 b/www-client/firefox/files/gentoo-default-prefs.js-1
index 0d9aff8..22a51ff 100644
--- a/www-client/firefox/files/gentoo-default-prefs.js-1
+++ b/www-client/firefox/files/gentoo-default-prefs.js-1
@@ -12,4 +12,6 @@ pref("browser.shell.checkDefaultBrowser",  false);
 pref("browser.EULA.override",              true); 
 pref("general.useragent.vendor", "Gentoo");
 pref("intl.locale.matchOS", true);
+pref("general.useragent.locale", "chrome://global/locale/intl.properties");
 pref("extensions.autoDisableScopes", 0);
+pref("layout.css.dpi", 0);



^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2012-06-04 11:52 Nirbheek Chauhan
  0 siblings, 0 replies; 30+ messages in thread
From: Nirbheek Chauhan @ 2012-06-04 11:52 UTC (permalink / raw
  To: gentoo-commits

commit:     371d63c6f908f966d9bcba5a67bd544520716ce6
Author:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  4 11:29:29 2012 +0000
Commit:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
CommitDate: Mon Jun  4 11:52:48 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=371d63c6

firefox: add patches to support h.264 and aac/mp3 properly

---
 www-client/firefox/Manifest                        |    7 ++
 .../files/firefox-14.0_alpha2-gst-aac-mp3.patch    |   70 ++++++++++++++++++++
 .../firefox-14.0_alpha2-gst-youtube-h264.patch     |   26 +++++++
 ...alpha2.ebuild => firefox-14.0_alpha2-r1.ebuild} |    4 +-
 4 files changed, 106 insertions(+), 1 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 44d7a9a..caac62a 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,3 +1,5 @@
+AUX firefox-14.0_alpha2-gst-aac-mp3.patch 2454 RMD160 47fe9e90b2d5acf6f25d4641b983a5a077d89a57 SHA1 234ccafcb7df3f55d4cee6f776a01987068bb685 SHA256 ef3e6539d292629a52a592cecd90a23562480d7280cfd3883d4407ad06e418a7
+AUX firefox-14.0_alpha2-gst-youtube-h264.patch 1437 RMD160 48daef08188b9862cef5af9192f029347a7a0a9b SHA1 03bde68c29b6acd50e4b6b6eac5fa2c12053b216 SHA256 9b871769727e6d16939c55695b4f08c6b460c3f6cf5bce46ce429f40c4801669
 AUX gentoo-default-prefs.js-1 821 RMD160 13a7be3a165b7059e51fab2cc7fc8d31a82260eb SHA1 333339c4deb4fd41527fd87e1acf0af12cf1007c SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de
 AUX icon/firefox.desktop 276 RMD160 92a5671cd09e399b3330c4be31b7ac7583747031 SHA1 b757763670a00982f3cb38b8d41d7faa6eee3818 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5
 DIST firefox-12.0-af.xpi 248464 RMD160 84e4439e4f316e068293645ec9f65371109bfabd SHA1 954468cb4d2e7b833f0a320311ce7892993727ba SHA256 eb4da7b66f26286917239430a3072afc6c4b00b39e4547271f4f2689888b4f21
@@ -88,5 +90,10 @@ DIST firefox-12.0-zu.xpi 255708 RMD160 42b5013ff842ed74bcb70bacf338b6239340a1c6
 DIST firefox-12.0.source.tar.bz2 78956707 RMD160 d83eb97543fc09f84b30a46ba8217c17f30bd572 SHA1 0177185e54b7d63dc36bd5bd5c80ba6afd52e199 SHA256 9a232a10e5803b0e4a85bd986e3e88b87ccde7bdc3363ea7022d5761944dbb1d
 DIST firefox-14.0-patches-0.1.tar.xz 9832 RMD160 70d23bc9e3860c405126bcb3a1365e81fd46fce6 SHA1 71a3c33ffa4423db46c4758690424e33a7f386da SHA256 9490723fc44e89dbf541d3427796cdab1a9398e43f869a30e35455c7fb5ee8b5
 DIST firefox-14.0a2_7f3c5dd8e78f.source.tar.bz2 81112940 RMD160 e5412ebb1fbe471b04aeba1ad18b579224c9e2b4 SHA1 8ba004b4b6a8b31fba50c12926113e141ac917fd SHA256 c02f8e267d61ad9be7837645bf02b71a3df125c681a4a639abbfdad73b75e466
+<<<<<<< HEAD
 EBUILD firefox-12.0-r2.ebuild 11062 RMD160 de99a90c98c63eeb6da65eb3d928889955d33790 SHA1 54ccc5f19e61f5f980a6ae86d41c5149d1201c96 SHA256 d73ebb5e37fd56105cc3b420dab845328ae44504f221976a3334733bc338a410
 EBUILD firefox-14.0_alpha2.ebuild 11434 RMD160 a2bfb110306199466256300389ff1073be9939ab SHA1 a094bbf18a7fc08a17a87e29b7ce4f2465a39afc SHA256 0f4d5a55aac63caad61161f41183279ff18a086bfc863f935da8400048c7b5c6
+=======
+EBUILD firefox-12.0-r1.ebuild 11124 RMD160 8226d263a1232057d29c01917dc97d6c1ae663de SHA1 8f8c00c0611c9b3117c806a4c7a6664ebd6917b1 SHA256 a54edd364c3857119a54726004a9bbad657a542c1b467d7e90a489eea66b4cad
+EBUILD firefox-14.0_alpha2-r1.ebuild 11473 RMD160 38b67289f2b15c556a7655b38741e81267ef394a SHA1 1ee60c849bbe0f56c1c06c19cbb21115d791a3c0 SHA256 ab80136e68ade3730557f93e0c385ba47b2b49e49cc99abeda259b2f62b97b18
+>>>>>>> firefox: add patches to support h.264 and aac/mp3 properly

diff --git a/www-client/firefox/files/firefox-14.0_alpha2-gst-aac-mp3.patch b/www-client/firefox/files/firefox-14.0_alpha2-gst-aac-mp3.patch
new file mode 100644
index 0000000..136375a
--- /dev/null
+++ b/www-client/firefox/files/firefox-14.0_alpha2-gst-aac-mp3.patch
@@ -0,0 +1,70 @@
+diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h
+--- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:37:25.791017257 +0530
++++ mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:38:22.259014896 +0530
+@@ -305,8 +305,10 @@ public:
+ #ifdef MOZ_GSTREAMER
+   static bool IsH264Enabled();
+   static bool IsH264Type(const nsACString& aType);
++  static bool IsSupportedAudioType(const nsACString& aType);
+   static const char gH264Types[3][17];
+   static char const *const gH264Codecs[6];
++  static const char gSupportedAudioTypes[2][11];
+ #endif
+ 
+   /**
+diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp
+--- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:37:25.834017256 +0530
++++ mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:40:04.358010627 +0530
+@@ -1865,6 +1865,11 @@ char const *const nsHTMLMediaElement::gH
+   nsnull
+ };
+ 
++const char nsHTMLMediaElement::gSupportedAudioTypes[2][11] = {
++  "audio/mp4",
++  "audio/mpeg",
++};
++
+ bool
+ nsHTMLMediaElement::IsH264Enabled()
+ {
+@@ -1886,6 +1891,18 @@ nsHTMLMediaElement::IsH264Type(const nsA
+ 
+   return false;
+ }
++
++bool
++nsHTMLMediaElement::IsSupportedAudioType(const nsACString& aType)
++{
++  for (PRUint32 i = 0; i < ArrayLength(gSupportedAudioTypes); ++i) {
++    if (aType.EqualsASCII(gSupportedAudioTypes[i])) {
++      return true;
++    }
++  }
++
++  return false;
++}
+ #endif
+ 
+ /* static */
+@@ -1919,6 +1936,11 @@ nsHTMLMediaElement::CanHandleMediaType(c
+ #endif
+ 
+ #ifdef MOZ_GSTREAMER
++  if (IsSupportedAudioType(nsDependentCString(aMIMEType))) {
++    *aCodecList = NULL;
++    return CANPLAY_MAYBE;
++  }
++
+   if (IsH264Type(nsDependentCString(aMIMEType))) {
+     *aCodecList = gH264Codecs;
+     return CANPLAY_YES;
+@@ -1992,7 +2014,8 @@ nsHTMLMediaElement::GetCanPlay(const nsA
+   while (tokenizer.hasMoreTokens()) {
+     const nsSubstring& token = tokenizer.nextToken();
+ 
+-    if (!CodecListContains(supportedCodecs, token)) {
++    if (supportedCodecs == NULL ||
++        !CodecListContains(supportedCodecs, token)) {
+       // Totally unsupported codec
+       return CANPLAY_NO;
+     }

diff --git a/www-client/firefox/files/firefox-14.0_alpha2-gst-youtube-h264.patch b/www-client/firefox/files/firefox-14.0_alpha2-gst-youtube-h264.patch
new file mode 100644
index 0000000..c9002c7
--- /dev/null
+++ b/www-client/firefox/files/firefox-14.0_alpha2-gst-youtube-h264.patch
@@ -0,0 +1,26 @@
+diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h
+--- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:48:14.664990120 +0530
++++ mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:48:43.970988893 +0530
+@@ -307,7 +307,7 @@ public:
+   static bool IsH264Type(const nsACString& aType);
+   static bool IsSupportedAudioType(const nsACString& aType);
+   static const char gH264Types[3][17];
+-  static char const *const gH264Codecs[6];
++  static char const *const gH264Codecs[7];
+   static const char gSupportedAudioTypes[2][11];
+ #endif
+ 
+diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp
+--- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:48:14.667990120 +0530
++++ mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:49:18.261987460 +0530
+@@ -1856,8 +1856,9 @@ const char nsHTMLMediaElement::gH264Type
+   "video/quicktime",
+ };
+ 
+-char const *const nsHTMLMediaElement::gH264Codecs[6] = {
++char const *const nsHTMLMediaElement::gH264Codecs[7] = {
+   "avc1.42E01E",
++  "avc1.42001E",
+   "avc1.58A01E",
+   "avc1.4D401E",
+   "avc1.64001E",

diff --git a/www-client/firefox/firefox-14.0_alpha2.ebuild b/www-client/firefox/firefox-14.0_alpha2-r1.ebuild
similarity index 99%
rename from www-client/firefox/firefox-14.0_alpha2.ebuild
rename to www-client/firefox/firefox-14.0_alpha2-r1.ebuild
index 68683f1..a1e4c76 100644
--- a/www-client/firefox/firefox-14.0_alpha2.ebuild
+++ b/www-client/firefox/firefox-14.0_alpha2-r1.ebuild
@@ -143,6 +143,8 @@ src_prepare() {
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
 
+	epatch "${FILESDIR}"/${P}-gst-*.patch
+
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user
 
@@ -174,7 +176,7 @@ src_prepare() {
 		-i "${S}"/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \
 		-i "${S}"/config/system-headers \
 		-i "${S}"/js/src/config/system-headers || die "Sed failed"
-	
+
 	eautoreconf
 }
 



^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2012-07-18 12:17 Nirbheek Chauhan
  0 siblings, 0 replies; 30+ messages in thread
From: Nirbheek Chauhan @ 2012-07-18 12:17 UTC (permalink / raw
  To: gentoo-commits

commit:     6d893f6364382630163d10bf1ab7ec713b0ef77a
Author:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 18 12:16:55 2012 +0000
Commit:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
CommitDate: Wed Jul 18 12:17:00 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=6d893f63

firefox: add crasher gstreamer fix that didn't make it into 15

---
 www-client/firefox/Manifest                        |    1 +
 .../firefox-15.0-fix-gstreamer-html5-crash.patch   |   26 ++++++++++++++++++++
 2 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 4d500c7..a7752eb 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,5 +1,6 @@
 AUX firefox-14.0_beta7-gst-aac-mp3.patch 2454 SHA256 ef3e6539d292629a52a592cecd90a23562480d7280cfd3883d4407ad06e418a7 SHA512 ecd4b594371b6ff00980fd79959805e87e2f54deb5b790c246c7e592b5c29e7e847c3a9863730c891532a5180c67937e73f8474aa3e4a16b94a35ba4e29624ad WHIRLPOOL cc977bd7cc1b48162e906ad4541592b153d9a0434c8d608fdb2b281ba143385a95808135e967876813435a31caf323f4f0b28bc6751d5285969d7c6dfe46874e
 AUX firefox-14.0_beta7-gst-youtube-h264.patch 1437 SHA256 9b871769727e6d16939c55695b4f08c6b460c3f6cf5bce46ce429f40c4801669 SHA512 b5964f9e569281209db492d27f6f1c12fb316fd52bb67e624ed438a3c005018f1c5554f6c976ab226541dc86a3ac47e26a07146c1cf9f549685d03605e217909 WHIRLPOOL 928bb7abe481188ad229fd833fd282e388cbf65166477c65e166f0af83784e4d3219cc4d2b8127df2cad13213d1cecfbb26afe9f6dc2059618c7f7c39c52fd6a
+AUX firefox-15.0-fix-gstreamer-html5-crash.patch 1094 SHA256 1fa2a1963ef3146ef71a51affc46179fdae5fcd5a4bfdf5acb3da0f035b482f2 SHA512 42b8fc013ee061f9b7c00d347fe2712c2a1110574f578ae815dd4b5287dfa27b5643c74d41f2e2913d147017026d61f8b7a3603b2a40586f30f0e70c41f6af74 WHIRLPOOL dae601e40e1e9cfcb9775313ef5f5b57af40124a64e204261ef6de05b01533df36e28e333356ba2d09ada996e82a882ef492fa0efbd4c7cc06572dde16d83346
 AUX firefox-15.0_beta1-fix-packager-xargs-rm.patch 1250 SHA256 e3eb098642cbdcb5b02d2ee52ae7d13b4989e41dc789e4c0f9aea9f071aa0895 SHA512 f161953e01ccb2db73727db79362164fa35763f5785bf82e087a57bf1f83bb755bde9a96b905649c351489545923515548b46cad39acdc09210e960a9b691714 WHIRLPOOL 57cf2e4eb21762c70ae0c2d3cc2a8d165eaf165756b8b37c7327ab25a95e2a3916d81590cd95dd42104330034beb11e61953cfab0486652f3c304c15321b29bf
 AUX gentoo-default-prefs.js-1 821 SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de SHA512 b63542c51edfe0158ce487b317ea6d36ffc17cf8457534adb6aa3f613d9a027f4285c9dcf76eb1b96de6bbc10ba09948fa6c081e00cfb25ca47450cbc32923f2 WHIRLPOOL 770d4b15f1b142ee1f59ce47f7b6d9e4bf4adb20a8a9fc104ea7d6c2481edb0d685c2e672008dbd869d92e8b24ea6ad8efdb4180421ff19ae88d0a9f6f752121
 AUX icon/firefox.desktop 276 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5 SHA512 3ab9aa94d3006518fb154c887e9be99fd372a75ac128b8d37debe5d72f26fb7103dd36f75bb6111750e93d520b730a29a8118805fe84be8f3021e4528c0ec47e WHIRLPOOL 9722c40c167bb1a76e7a81e3b1aedbb3cd10a09e00361fe1678883feff33e1d9ce31379f150a757d8b2667715175c2bbc16a714164d02210b4284ee91a25f8f5

diff --git a/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch b/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch
new file mode 100644
index 0000000..85d6999
--- /dev/null
+++ b/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch
@@ -0,0 +1,26 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=761030
+
+Went into Fx 16, but not 15
+
+diff -r 07d362aa2c1b content/media/gstreamer/nsGStreamerReader.cpp
+--- a/content/media/gstreamer/nsGStreamerReader.cpp	Sun Jun 03 12:04:40 2012 -0700
++++ b/content/media/gstreamer/nsGStreamerReader.cpp	Sun Jun 03 14:37:55 2012 -0700
+@@ -447,16 +447,18 @@ bool nsGStreamerReader::DecodeVideoFrame
+   for(int i = 0; i < 3; i++) {
+     b.mPlanes[i].mData = data + gst_video_format_get_component_offset(format, i,
+         width, height);
+     b.mPlanes[i].mStride = gst_video_format_get_row_stride(format, i, width);
+     b.mPlanes[i].mHeight = gst_video_format_get_component_height(format,
+         i, height);
+     b.mPlanes[i].mWidth = gst_video_format_get_component_width(format,
+         i, width);
++    b.mPlanes[i].mOffset = 0;
++    b.mPlanes[i].mSkip = 0;
+   }
+
+   bool isKeyframe = !GST_BUFFER_FLAG_IS_SET(buffer,
+       GST_BUFFER_FLAG_DELTA_UNIT);
+   /* XXX ? */
+   PRInt64 offset = 0;
+   VideoData *video = VideoData::Create(mInfo,
+                                        mDecoder->GetImageContainer(),



^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-04-21 21:58 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-04-21 21:58 UTC (permalink / raw
  To: gentoo-commits

commit:     11f7160ab8f074efab59898614941370d8d1462b
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 21 21:57:47 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Sun Apr 21 21:57:47 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=11f7160a

Update hunspell patchset to pref, set default pref via ebuild.

---
 www-client/firefox/Manifest                        |    6 +++---
 www-client/firefox/files/gentoo-default-prefs.js-1 |    2 ++
 ...efox-20.0.1.ebuild => firefox-20.0.1-r1.ebuild} |    7 ++++++-
 3 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 04c6eb5..666fa3b 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,7 +1,7 @@
 AUX firefox-14.0_beta7-gst-aac-mp3.patch 2454 SHA256 ef3e6539d292629a52a592cecd90a23562480d7280cfd3883d4407ad06e418a7 SHA512 ecd4b594371b6ff00980fd79959805e87e2f54deb5b790c246c7e592b5c29e7e847c3a9863730c891532a5180c67937e73f8474aa3e4a16b94a35ba4e29624ad WHIRLPOOL cc977bd7cc1b48162e906ad4541592b153d9a0434c8d608fdb2b281ba143385a95808135e967876813435a31caf323f4f0b28bc6751d5285969d7c6dfe46874e
 AUX firefox-14.0_beta7-gst-youtube-h264.patch 1437 SHA256 9b871769727e6d16939c55695b4f08c6b460c3f6cf5bce46ce429f40c4801669 SHA512 b5964f9e569281209db492d27f6f1c12fb316fd52bb67e624ed438a3c005018f1c5554f6c976ab226541dc86a3ac47e26a07146c1cf9f549685d03605e217909 WHIRLPOOL 928bb7abe481188ad229fd833fd282e388cbf65166477c65e166f0af83784e4d3219cc4d2b8127df2cad13213d1cecfbb26afe9f6dc2059618c7f7c39c52fd6a
 AUX firefox-15.0-fix-gstreamer-html5-crash.patch 1094 SHA256 1fa2a1963ef3146ef71a51affc46179fdae5fcd5a4bfdf5acb3da0f035b482f2 SHA512 42b8fc013ee061f9b7c00d347fe2712c2a1110574f578ae815dd4b5287dfa27b5643c74d41f2e2913d147017026d61f8b7a3603b2a40586f30f0e70c41f6af74 WHIRLPOOL dae601e40e1e9cfcb9775313ef5f5b57af40124a64e204261ef6de05b01533df36e28e333356ba2d09ada996e82a882ef492fa0efbd4c7cc06572dde16d83346
-AUX gentoo-default-prefs.js-1 821 SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de SHA512 b63542c51edfe0158ce487b317ea6d36ffc17cf8457534adb6aa3f613d9a027f4285c9dcf76eb1b96de6bbc10ba09948fa6c081e00cfb25ca47450cbc32923f2 WHIRLPOOL 770d4b15f1b142ee1f59ce47f7b6d9e4bf4adb20a8a9fc104ea7d6c2481edb0d685c2e672008dbd869d92e8b24ea6ad8efdb4180421ff19ae88d0a9f6f752121
+AUX gentoo-default-prefs.js-1 823 SHA256 fed1c9624330ce31b1395ac8852f58abdc91d6d341923a5af886f441936fab56 SHA512 82ba3329df760ead8573598d40e82e4c2c008227acb03793017f4f92508c8b66452e89b30b5a39a3820a1e8b752a23de1f9278b8549ebc871318ef24a300f7dc WHIRLPOOL 1b793f6b812ecc7f880dd3475a38b67170100a5f3408f1e5a1629baafaee5ed605e49896b485000a28d3bede21cf314366930b19c69fa83866925a225f744761
 AUX icon/firefox.desktop 276 SHA256 06565ade11b6e4b448cf10339696c43f31e73cb6824491094bb6e0ab902c7cf5 SHA512 3ab9aa94d3006518fb154c887e9be99fd372a75ac128b8d37debe5d72f26fb7103dd36f75bb6111750e93d520b730a29a8118805fe84be8f3021e4528c0ec47e WHIRLPOOL 9722c40c167bb1a76e7a81e3b1aedbb3cd10a09e00361fe1678883feff33e1d9ce31379f150a757d8b2667715175c2bbc16a714164d02210b4284ee91a25f8f5
 DIST firefox-17.0-patches-0.5.tar.xz 52792 SHA256 832d8bb1575473773dc78a66ab2bbf14a1de429f3ca8dc09600f0aa41747b1e1 SHA512 7a28c4c8253e73ab9ffa273ea6b8da7bf2a9422e31dcc1ec6fad1c17e5d8490c9432b517952c1db4b29ea93bbbb8e0f5727dd6ac476d670115810d4cf4b002b7 WHIRLPOOL a2a4c1a9d0503471c206def35452b113e9aadd3a8136d343e45955dba70fb39dfa6f649fdacab54e1b1f606037189e3cbc42743a6ed43aa912a42e4fe43e3529
 DIST firefox-17.0.5esr-af.xpi 281146 SHA256 1c7f0f11ea1efad528253c5d399a31ab3cc87f6faa2a7057a6fcbbde938758d0 SHA512 ed6609965b3bdd626b0fec72fae636c15ae639cd136b74cb517e689dc582809e7ced27a293f7ff8a5657dccfede238a44fbcb70b3ba281944bcf5a55bb3ce73c WHIRLPOOL 5f4d144b5f8449e4025dea7bb7f481d91151b38b510298ed5681bcfaa05e65b350f29ee8d186d7466417998f08e3383b34a3bec70e6d3ec58e391c085f7b0ffa
@@ -90,7 +90,7 @@ DIST firefox-17.0.5esr-zh-CN.xpi 304251 SHA256 339a161d6e85d6b2ec7713a7616d9e060
 DIST firefox-17.0.5esr-zh-TW.xpi 305438 SHA256 53b06efdfc8f08d9f779b626769b75d3462b1e1cacc12c4fb698afd3e438a403 SHA512 cd8c58585d1d8927ac27c8655695c29ba49f3939e0b6fea86a12ff1a1334e288dea6ee8843d5676aa7fa102cc30e82a6874508aaf27c3886463cf5fbf7a6b6fd WHIRLPOOL 874e8f2a5063f52ab5576e8b757bb678f7c41e9c5eb316102d07c8dc245a95c97f3445a28a3eb0cafb8414a129791cf1ec17f71008ef3d28e4fdba6a30ba37b5
 DIST firefox-17.0.5esr-zu.xpi 296595 SHA256 b63cdc27afda7be4904b7ca11672bb35d55570198e3a79527f79e502a51a99cd SHA512 9f6d6b79b3c9b903550ae47a9502044cc43f9c77faf99e0281b1fde638249ad149cd87d94d1b200380b8c1cf33ee491421067ed866bcf21f168421254f02889a WHIRLPOOL 72327cb131ff45623d252b62c7020bae42a65afdad03777074089c26c570af5f45f04d04c547e0918467fe7c207d05262bd2724d490bac5ecfc3c83652f5f116
 DIST firefox-17.0.5esr.source.tar.bz2 91105421 SHA256 ba2cb1c1bf747190dceb71a31a187811c9c6fc1da56c9a9db70cfd5a1780eb14 SHA512 fb3ae697d089b835c30c5075206fd1378d244d9138b593a53b9640226afb397d41d6f8ab403151347a364d2b29f156f06e275378e910213e6bf850af2b94269d WHIRLPOOL 1cd89125c0d3936158b2f0f6251bdb5304a2988a98284934e6e07ade939c75b9b769e1539e1bc587ec433433c94b22a87490e6492e7f5d3e33c2f4b93afb6786
-DIST firefox-20.0-patches-0.2.tar.xz 7736 SHA256 749f71d84f9745f488f16287840723304b899f1c356100cf387cc98188df10fc SHA512 e058dcec4ac2ed6a2dea268eb44e588c4f7d310a07970248468e996842df154cb800aa8841164a38544b2a07d91b5389d85539965680253a1c9cc4cb377d7bcb WHIRLPOOL 8f29c2c03f3320d05f3c435400a32e7d078f2c921f9b226699dfe78a38d897447dd44a8230a653796bf3db0a6cb4f5a180aefcf57a8a89e45a019a5ed70ba975
+DIST firefox-20.0-patches-0.3.tar.xz 7256 SHA256 a726998305a3227bae13348aaf67fd9288770c7f88b6480e311e2aa335ea8812 SHA512 fc895b7bd2d5c4e3a1c8ee13ca6e7debc57f72d5bd5a5beaa9bb29802877237cb3256549f1c34bd1aaa84e1f4d4b8dcf2edb5d746f9d8602bdecf9db5642d50e WHIRLPOOL 119b37c3666001119110a91fc15aed43e192fd0fc756cf6413cc7628866eea68992c19ff995d86d415a02cdc01e3601677a7ddf6a32d3dba7a2b95a5ded56d00
 DIST firefox-20.0.1-af.xpi 301044 SHA256 906b1e149770794c6b00bcd581032c6d890d2ecc4ab7c8588bb1ea4821e138e0 SHA512 05c02e9460d855ea9e278e1659a06f575ab3694e96b68746dcd2f970f57dd9eab7b8f11405be7dc3e9ce9caf4cd24698eec6a62ba3d177d438e571ede36d19b1 WHIRLPOOL 8e77efe069ac919e93dbb5f3ceecaa11e3003fefee0464b2815b368ef397bdda6ec96dace26c9736516d3eb8233f301dc4717adb6bb522c245caf1146534b0d3
 DIST firefox-20.0.1-ak.xpi 303973 SHA256 457f2f802e3d58c0f93e1f63928d9ae0132c6cc3b5db918a3a1c2f0ac918eae2 SHA512 4544a1d2a724d83cfd2ec60f20c2f24a079e86bc94e8503429dbfc8b3c17991329fd09b96c97ccc9145599ca5bfd792951786be1c5daa9e4f4ce03dc2271d35c WHIRLPOOL bfe97f92ce9f9a7fe0fb9bb20a1ea8089735effbc62e7c5f91a98b760c76dfc14a015ae82cb6166f0e43b8f48ee61a7f13fa0f18d968052dbbe46865a12a3e07
 DIST firefox-20.0.1-ar.xpi 329939 SHA256 3ae6d60a0fca1afc576444728a77b7134aa491b468490e2835209838da933c8f SHA512 f49bb0323f63ef3d8e41c1c2501b024b998e164683f7648da1e37e73fad68632a59fcd0e20e37c8e34a5da4a660e341a82688691a0f526d961d4232ed5d2e236 WHIRLPOOL 0cf2079c47449c19f054751a20503b5814b8ce00296f4de0d5aa9b6d6632c338a7a7bc59372c7eb4cf752ae3c311af66252c8c95c2db92e77b3115ebd5223527
@@ -178,4 +178,4 @@ DIST firefox-20.0.1-zh-TW.xpi 324198 SHA256 c6d6da4e2d86252c099427a7a9ac8188fb19
 DIST firefox-20.0.1-zu.xpi 315412 SHA256 67cf6d8ba1c3fef4a78f22380c7e7ce0f04822e707d2b3c1f57bb11c00e1f314 SHA512 37b5080322819d3a18fcdd6fff24ccb323a5f0fe5c6e0f67dd9ba8fa6cdde1c9f55e4a5ec97377cff357dda915e077bb0289e5625174b210b063243b5841b342 WHIRLPOOL 0077b9dafbd40455788bfb689eefea88528c96ebd9a326e770c0caeef258c44600fee1a4e278f1fb31d53b10a3218c765d3ade421050fee478b421f4baf61a43
 DIST firefox-20.0.1.source.tar.bz2 100154949 SHA256 03fe28c82d6577e9af8659f2ee44d5f05950353732d47a0ade562855ba564cf4 SHA512 07b280de2f48ae994e74945011da45d4737a9e17b4d4377725f6968598d992e6dd6c6929690815bf4bb554499a3e4fe17bfef652c3d762caa2e8af100a5d0359 WHIRLPOOL c385c1da6b9252983fd9bf3d2cce505032d2cc2a343a0846a0807fe658d37874152a51903b23aa36a04a67ebf6e3a7fdfaccf934256bf478068a43a71f735bc4
 EBUILD firefox-17.0.5.ebuild 11771 SHA256 55badf96f2e515e1c80544c40e61cfee3534cb0745bbe492633442ab5d3e8bb2 SHA512 e941e0379fec82d2358ba8d451f6332e3b6986394122f23a5b36ecfcdb361604fccdae278d36927f314a2d467010a050f3315e78a741f0c80ea9ebf81cbd7e17 WHIRLPOOL 940dbb62e589b40aff7a7d1e815e9720d029c6da53d09ca524deed2eac2d39ab7cb1c5368c4625d8dce2c5487771e83e299369a7248171c47b8b64ae5494e66b
-EBUILD firefox-20.0.1.ebuild 11483 SHA256 9d1cc62a7118d876ee3128faa5a9aab16253909a20f8687dc185497fe718581f SHA512 782789ca1eb582ec46de2b21a05c1431871885da1ad905d40e1388d429aefa71859ce68f047e347928117fd9f9f52dc0c2c1b0b8a84dc4daa4acfc7f6c0505da WHIRLPOOL 9c878d3d8577cf82a063ef793b7486646f802e08f5c14c5c0f744b4151a54cb2eff745bd630066eedb02de47c87e99f307c844a09ac766df7b18e518cd7fe94d
+EBUILD firefox-20.0.1-r1.ebuild 11700 SHA256 401e2b92e7c7f73cc4ca774a2ab66391ed4cebc06cb066357b8b3483cccfca64 SHA512 6e3b59e8bdeab25e89b87ef2a647db5eccff9e79a8024ca4f942e864deb1d13be8f23c0241267b8906f584f7bc1410bcde7037a4b770a60cd653af858d3191f9 WHIRLPOOL 45a3c6bcd481ea66bfd143844edb1b160b6a4c5970f8ba579e0e757b50d7201458c94fb903332a3f030e4426e928130bab762c21f0192ac02b75f68e60f406eb

diff --git a/www-client/firefox/files/gentoo-default-prefs.js-1 b/www-client/firefox/files/gentoo-default-prefs.js-1
index 22a51ff..c398c58 100644
--- a/www-client/firefox/files/gentoo-default-prefs.js-1
+++ b/www-client/firefox/files/gentoo-default-prefs.js-1
@@ -15,3 +15,5 @@ pref("intl.locale.matchOS", true);
 pref("general.useragent.locale", "chrome://global/locale/intl.properties");
 pref("extensions.autoDisableScopes", 0);
 pref("layout.css.dpi", 0);
+
+

diff --git a/www-client/firefox/firefox-20.0.1.ebuild b/www-client/firefox/firefox-20.0.1-r1.ebuild
similarity index 97%
rename from www-client/firefox/firefox-20.0.1.ebuild
rename to www-client/firefox/firefox-20.0.1-r1.ebuild
index 10c1c12..d69e75f 100644
--- a/www-client/firefox/firefox-20.0.1.ebuild
+++ b/www-client/firefox/firefox-20.0.1-r1.ebuild
@@ -25,7 +25,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-20.0-patches-0.2"
+PATCH="${PN}-20.0-patches-0.3"
 # Upstream ftp release URI that's used by mozlinguas.eclass
 # We don't use the http mirror because it deletes old tarballs.
 MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
@@ -279,6 +279,7 @@ src_compile() {
 
 src_install() {
 	MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+	DICTPATH="\"${EPREFIX}/usr/share/myspell\""
 
 	# MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc.
 	local obj_dir="$(echo */config.log)"
@@ -292,6 +293,10 @@ src_install() {
 	cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
 		"${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js" || die
 
+	# Set default path to search for dictionaries.
+	echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
+		>> "${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js"
+
 	if ! use libnotify; then
 		echo "pref(\"browser.download.manager.showAlertOnComplete\", false);" \
 			>> "${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js"


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-04-23 13:07 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-04-23 13:07 UTC (permalink / raw
  To: gentoo-commits

commit:     0d6d9b06aaa0246c1126bb3eddd9534ba302405b
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 23 13:06:40 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Tue Apr 23 13:06:40 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=0d6d9b06

firefox: misc fixups to work around compilation failures

---
 www-client/firefox/Manifest                  |    3 +-
 www-client/firefox/files/bug-846986.patch    |   29 ++++++++++++++++++++++++++
 www-client/firefox/firefox-21.0_beta3.ebuild |    7 ++++-
 3 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 5b54027..7d7b088 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,3 +1,4 @@
+AUX bug-846986.patch 749 SHA256 81cfda43f97b153c1918311bdd6c7c5d131bb2ee886c59ba2093d1d952e7e466 SHA512 b9ffd5a83538f545155ab37c8b533940aefe8d07f78b7a50ee9670d0f2ae5a2eb0c8c501ef87948060d7d4f6e01bc2f9e22fb92752957ba87514c77382a32852 WHIRLPOOL 6ab558d9083c51487e52b53af7b8b8523ee04889015a8ca2eaa2c7b80f25266ea5b5b7749c7806b63703c8f11385b6c340452a6fa5c9182d48b3395da42adc39
 AUX firefox-14.0_beta7-gst-aac-mp3.patch 2454 SHA256 ef3e6539d292629a52a592cecd90a23562480d7280cfd3883d4407ad06e418a7 SHA512 ecd4b594371b6ff00980fd79959805e87e2f54deb5b790c246c7e592b5c29e7e847c3a9863730c891532a5180c67937e73f8474aa3e4a16b94a35ba4e29624ad WHIRLPOOL cc977bd7cc1b48162e906ad4541592b153d9a0434c8d608fdb2b281ba143385a95808135e967876813435a31caf323f4f0b28bc6751d5285969d7c6dfe46874e
 AUX firefox-14.0_beta7-gst-youtube-h264.patch 1437 SHA256 9b871769727e6d16939c55695b4f08c6b460c3f6cf5bce46ce429f40c4801669 SHA512 b5964f9e569281209db492d27f6f1c12fb316fd52bb67e624ed438a3c005018f1c5554f6c976ab226541dc86a3ac47e26a07146c1cf9f549685d03605e217909 WHIRLPOOL 928bb7abe481188ad229fd833fd282e388cbf65166477c65e166f0af83784e4d3219cc4d2b8127df2cad13213d1cecfbb26afe9f6dc2059618c7f7c39c52fd6a
 AUX firefox-15.0-fix-gstreamer-html5-crash.patch 1094 SHA256 1fa2a1963ef3146ef71a51affc46179fdae5fcd5a4bfdf5acb3da0f035b482f2 SHA512 42b8fc013ee061f9b7c00d347fe2712c2a1110574f578ae815dd4b5287dfa27b5643c74d41f2e2913d147017026d61f8b7a3603b2a40586f30f0e70c41f6af74 WHIRLPOOL dae601e40e1e9cfcb9775313ef5f5b57af40124a64e204261ef6de05b01533df36e28e333356ba2d09ada996e82a882ef492fa0efbd4c7cc06572dde16d83346
@@ -93,4 +94,4 @@ DIST firefox-17.0.5esr.source.tar.bz2 91105421 SHA256 ba2cb1c1bf747190dceb71a31a
 DIST firefox-21.0-patches-0.1.tar.xz 7056 SHA256 b4c1c796da7ac15edda87160a6d2f6db02d089c5119e6882570c7cfd2c62875a SHA512 2b9b1dd1d29a4ec6b1787b1bef8e74f4669022b574536f25aed327b55051c38100f7bf389bd70c5b4f2c5997f94f0c2f03ff6a3f074d8ee2417880a3520c69cc WHIRLPOOL f92027b3cb4d80b30ec9cd6f21204f0a38706fe7a8c7a29a75a7781450a0f2da56a42d393133c473c7a2fdcf218a552cab14fff769642df9544acf11a0594477
 DIST firefox-21.0b3.source.tar.bz2 105415290 SHA256 7361cefa8c23a7fb2b4372afd2dcccba305e05679c4b5501b1e8cd35627d7392 SHA512 92b2d1af5e146068be2156eb6b20739f3572c465ba85ebc900b80e9cd2c9a9aaeaf36872f9272001ae08da374d36622185bce224b7fbbd0c9a0abd1b03592cc6 WHIRLPOOL 43c7081ed4b8138303dcd70191d5adb0887f8df3c88a9e250903854386576f57734cbfdc73ffd92968e52bdb4f75b635aed9d9993d4feacee925e79e9a33916e
 EBUILD firefox-17.0.5-r1.ebuild 11995 SHA256 56bda12b3558a84d8b2de4b2cfc9f80f0134d35c3fe45a0e23f9115b625ca29b SHA512 b23b3279032a6031855240cbe251a07bc738f0fd54824d6689b67639c54d464a54084c9fd1c27d96e257bf4cda54e19dfc37011e4780582e6dbede2848225f8e WHIRLPOOL 08b2b681e816b6a7b9d204da97a84280e59359ba6ede6287c9582ef843937a51e3b49d8c1090c55e9c643bfbde214fb9d2c599b6a3f4f97bf48a2626d6d3d917
-EBUILD firefox-21.0_beta3.ebuild 11716 SHA256 a7df802d42eee5c8d74da645dbcd58efc68809962475f13d085556efd561a600 SHA512 bd7768d3d840f1f305a966a92c0ce3108c9c6df06b4d1e0ada4b32aeb096da18905f57c740a6aac177f77e1264f6e1506c11979732ccf5594380a6ecf38fce6d WHIRLPOOL 5b22960e6a8edab05f8e14e1fef81704d77cfa2fe2c7c1f5157046c4dd4d25fc5ecdaed3b950f50cd38e00f020ffb55abf27ca3866949dd78efb5c2837c186ff
+EBUILD firefox-21.0_beta3.ebuild 11818 SHA256 84c6387c48755f9252b17caadb4575675bf0d646f3e668cae8357e9eb7a30691 SHA512 7248c94555666886852cca5febfc1c96b5b7d98719d57fd02df7f5969dccf85d727efe9b8cc2d20d0d426db99ce0b08d4b68d40c975dbeeba18635cb9ed7bc90 WHIRLPOOL 05c448fae5578e19329e70ae82c8e9d8c5d5ef8631fe156e400a32dc2aadf75a66eb72faad336e08bfe2959968b5ffab7a5df44d205e3ae83e6b9050d68fe179

diff --git a/www-client/firefox/files/bug-846986.patch b/www-client/firefox/files/bug-846986.patch
new file mode 100644
index 0000000..df4f1a5
--- /dev/null
+++ b/www-client/firefox/files/bug-846986.patch
@@ -0,0 +1,29 @@
+# HG changeset patch
+# Parent fd0973ef9744d3a0e4f6febf7e83c3b7f94de899
+# User Steve Singer <steve@ssinger.info>
+Bug 846986 - Include inline member functions in SPSProfiler to avoid undefined symbols at link time
+
+diff --git a/js/src/vm/SPSProfiler.cpp b/js/src/vm/SPSProfiler.cpp
+--- a/js/src/vm/SPSProfiler.cpp
++++ b/js/src/vm/SPSProfiler.cpp
+@@ -10,16 +10,19 @@
+ #include "jsnum.h"
+ #include "jsscript.h"
+ 
+ #include "methodjit/MethodJIT.h"
+ #include "methodjit/Compiler.h"
+ 
+ #include "vm/SPSProfiler.h"
+ #include "vm/StringBuffer.h"
++#include "jsatominlines.h"
++#include "jscntxtinlines.h"
++#include "jsobjinlines.h"
+ 
+ using namespace js;
+ 
+ using mozilla::DebugOnly;
+ 
+ SPSProfiler::SPSProfiler(JSRuntime *rt)
+   : rt(rt),
+     stack_(NULL),
+

diff --git a/www-client/firefox/firefox-21.0_beta3.ebuild b/www-client/firefox/firefox-21.0_beta3.ebuild
index 01acffc..2016973 100644
--- a/www-client/firefox/firefox-21.0_beta3.ebuild
+++ b/www-client/firefox/firefox-21.0_beta3.ebuild
@@ -150,6 +150,9 @@ src_prepare() {
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
 
+	# Undefined reference fix
+	epatch "${FILESDIR}"/bug-846986.patch
+
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user
 
@@ -267,11 +270,11 @@ src_compile() {
 		shopt -u nullglob
 
 		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
-		MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
 		Xemake -f client.mk profiledbuild || die "Xemake failed"
 	else
 		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
-		MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
 		emake -f client.mk || die "emake failed"
 	fi
 


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-04-24  1:47 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-04-24  1:47 UTC (permalink / raw
  To: gentoo-commits

commit:     dce53a77941ddae5398a7aec4c4fd8b12cef168e
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 24 01:47:02 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Wed Apr 24 01:47:02 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=dce53a77

Update patch for no-jit

---
 www-client/firefox/Manifest               |    2 +-
 www-client/firefox/files/bug-846986.patch |   18 +++++++++---------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 7d7b088..ebc37a5 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,4 +1,4 @@
-AUX bug-846986.patch 749 SHA256 81cfda43f97b153c1918311bdd6c7c5d131bb2ee886c59ba2093d1d952e7e466 SHA512 b9ffd5a83538f545155ab37c8b533940aefe8d07f78b7a50ee9670d0f2ae5a2eb0c8c501ef87948060d7d4f6e01bc2f9e22fb92752957ba87514c77382a32852 WHIRLPOOL 6ab558d9083c51487e52b53af7b8b8523ee04889015a8ca2eaa2c7b80f25266ea5b5b7749c7806b63703c8f11385b6c340452a6fa5c9182d48b3395da42adc39
+AUX bug-846986.patch 774 SHA256 5aedbb6cc5d130b189a7b6957a410816848d21e390f15a4ae12085ebea5cec06 SHA512 7796b9be215c3b8e8e74c823ed88833323ca250e480682a8c773ec0031e9f8945c15e955afea47a2f191b07cab631562668792352c0e6c0609fc9379518559b2 WHIRLPOOL a743f65cfb6f42a8596d50be26e0e8d47ba10fa8226d1b91c4f7f30d8a7c2d313f56577f2bb4ff7b4505520056ac5e057324da116388739cc4a8579610908e98
 AUX firefox-14.0_beta7-gst-aac-mp3.patch 2454 SHA256 ef3e6539d292629a52a592cecd90a23562480d7280cfd3883d4407ad06e418a7 SHA512 ecd4b594371b6ff00980fd79959805e87e2f54deb5b790c246c7e592b5c29e7e847c3a9863730c891532a5180c67937e73f8474aa3e4a16b94a35ba4e29624ad WHIRLPOOL cc977bd7cc1b48162e906ad4541592b153d9a0434c8d608fdb2b281ba143385a95808135e967876813435a31caf323f4f0b28bc6751d5285969d7c6dfe46874e
 AUX firefox-14.0_beta7-gst-youtube-h264.patch 1437 SHA256 9b871769727e6d16939c55695b4f08c6b460c3f6cf5bce46ce429f40c4801669 SHA512 b5964f9e569281209db492d27f6f1c12fb316fd52bb67e624ed438a3c005018f1c5554f6c976ab226541dc86a3ac47e26a07146c1cf9f549685d03605e217909 WHIRLPOOL 928bb7abe481188ad229fd833fd282e388cbf65166477c65e166f0af83784e4d3219cc4d2b8127df2cad13213d1cecfbb26afe9f6dc2059618c7f7c39c52fd6a
 AUX firefox-15.0-fix-gstreamer-html5-crash.patch 1094 SHA256 1fa2a1963ef3146ef71a51affc46179fdae5fcd5a4bfdf5acb3da0f035b482f2 SHA512 42b8fc013ee061f9b7c00d347fe2712c2a1110574f578ae815dd4b5287dfa27b5643c74d41f2e2913d147017026d61f8b7a3603b2a40586f30f0e70c41f6af74 WHIRLPOOL dae601e40e1e9cfcb9775313ef5f5b57af40124a64e204261ef6de05b01533df36e28e333356ba2d09ada996e82a882ef492fa0efbd4c7cc06572dde16d83346

diff --git a/www-client/firefox/files/bug-846986.patch b/www-client/firefox/files/bug-846986.patch
index df4f1a5..7969f65 100644
--- a/www-client/firefox/files/bug-846986.patch
+++ b/www-client/firefox/files/bug-846986.patch
@@ -1,13 +1,14 @@
 # HG changeset patch
-# Parent fd0973ef9744d3a0e4f6febf7e83c3b7f94de899
-# User Steve Singer <steve@ssinger.info>
-Bug 846986 - Include inline member functions in SPSProfiler to avoid undefined symbols at link time
+# User Jeff Walden <jwalden@mit.edu>
+# Date 1365111823 25200
+# Node ID 489ab986ea69e1ba7746e383a267483db9d861ea
+# Parent  04f2c0f0a220b409af15722eaec46304979f04ac
+#include jsscriptinlines.h in SPSProfiler.cpp so that it builds in no-jit configurations.  No bug, r=sparky
 
 diff --git a/js/src/vm/SPSProfiler.cpp b/js/src/vm/SPSProfiler.cpp
 --- a/js/src/vm/SPSProfiler.cpp
 +++ b/js/src/vm/SPSProfiler.cpp
-@@ -10,16 +10,19 @@
- #include "jsnum.h"
+@@ -11,16 +11,18 @@
  #include "jsscript.h"
  
  #include "methodjit/MethodJIT.h"
@@ -15,10 +16,9 @@ diff --git a/js/src/vm/SPSProfiler.cpp b/js/src/vm/SPSProfiler.cpp
  
  #include "vm/SPSProfiler.h"
  #include "vm/StringBuffer.h"
-+#include "jsatominlines.h"
-+#include "jscntxtinlines.h"
-+#include "jsobjinlines.h"
  
++#include "jsscriptinlines.h"
++
  using namespace js;
  
  using mozilla::DebugOnly;
@@ -26,4 +26,4 @@ diff --git a/js/src/vm/SPSProfiler.cpp b/js/src/vm/SPSProfiler.cpp
  SPSProfiler::SPSProfiler(JSRuntime *rt)
    : rt(rt),
      stack_(NULL),
-
+     size_(NULL),


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-06-19  3:30 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-06-19  3:30 UTC (permalink / raw
  To: gentoo-commits

commit:     a29c8d7fb3d70411acc777d99084b2210c6d2d90
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 19 03:29:40 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Wed Jun 19 03:29:40 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=a29c8d7f

Initial preperation for final release

---
 www-client/firefox/Manifest                        | 89 +---------------------
 www-client/firefox/files/bug-846986.patch          | 29 -------
 .../files/firefox-14.0_beta7-gst-aac-mp3.patch     | 70 -----------------
 .../firefox-14.0_beta7-gst-youtube-h264.patch      | 26 -------
 .../firefox-15.0-fix-gstreamer-html5-crash.patch   | 26 -------
 ...refox-21.0.ebuild => firefox-22.0_beta6.ebuild} | 10 +--
 6 files changed, 6 insertions(+), 244 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index ce9b0b6..fe16925 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,87 +1,2 @@
-DIST firefox-21.0-af.xpi 318641 SHA256 d91b65f1e680204cb8a8ba051bdc5591e77f9b00bf1acd9fa58ff1f1a860c7cb SHA512 4fdf175f1a6d99730af779fd7c5f87f6cf7a656cd3e2db18bac4411b112ba146a012b46456b795d7f41b0999a8b9acee344bd6217ac236ed57fdf62221384815 WHIRLPOOL 59e224e7f487f1c861198c398a0d1320d257d02539c4c0bf4a51cf51314dc72db084458db20f355ceeec29929e5940021bdd7ecee251d26ec8e97936bbc24e76
-DIST firefox-21.0-ak.xpi 321495 SHA256 078ed1f45674076fc8d14dcebba1a9ad2872ddd62169bb138e3ebde402095c4d SHA512 073ef8ee167fdd29cb5ca22f38b9ae19441d7747a5674f1868c1210285ebe9fcf7e97acc52d53d1d92bea2ab58c595b5c467387c419d69733ce35b0c5dd532ca WHIRLPOOL 926ed65034db0f5925fb8a764da8d33b65a887e9a5bddbb77aab4eaf771407ccbfb8be793ad0475b7ae3c6ca52be9351efcc1a8187562e98ab6c59dd510b2b85
-DIST firefox-21.0-ar.xpi 347274 SHA256 f79cf049e24de3a1f89ca7c46de86d15f32e080ad1b6c9fcdadbff748bbbe080 SHA512 4b405ee836c36bc4d493ea899913ff04cabaf6c42a599d80aad7eca434bbfb2e04a6974ae993c6ac095e6ef50509dfed8a8e9b43561ae5fd86d43907436b53d0 WHIRLPOOL 17bd64c8f2ed9cbb68ed6c888b3f2e586bbad82334184d169cf2a05ef4a6c36aa132adadcc6cb5bac7b171e0fc3c85d142666738b3e06932304a96a7e1853e2e
-DIST firefox-21.0-as.xpi 367994 SHA256 309176b77857dc7d2f0c67f98de939358b469a4d8b54b362e965de319dc182de SHA512 da55c2636a499ffbe3233eb64aa45643c8fbfb520494343395c2a2377118fe2ba0e8a668a5ab464c01bcfa5e5a9e1afc9397cb0b913518a24d057ade5bcef7ed WHIRLPOOL a9372a4850840b5339aeea67617b3f054a4707e60296ab9b4fde29f7814c7f80623914a8d5fb8122cea0f7d912a4d43217a70667c0bee960b134996f2a856802
-DIST firefox-21.0-ast.xpi 289085 SHA256 3224bdb898cc450964c9df9887dfa6a9384bd7621ea5b6dd7ccdb8f1a5571285 SHA512 149d1e34a5420990fdd19fe9cd42dc13ddffaf0eea33b9ad8399fdcd8ca01cf818d3f5abf6094cb72e00e5d839f0d41cd8178a2c032a913723bdf557a36728fc WHIRLPOOL 526b0331508e03f20a96662251c59522ec76b8c46fc8f73ca620767edb77e77df54dcf683cca9045e3d94b5e5cf03782157ac5e299e083cc2cbaf02d034f2891
-DIST firefox-21.0-be.xpi 317302 SHA256 0da399a18cf75ddd2d8c457905020e9c93bd0b99dcca4832395e01905d25dd3d SHA512 1e5678a1f31a4005f9906070493d4264ab1153c5998d0faec4bb086a2460b83e7020afa858914607d414739cc0a45f5c713ced66148525a3654b5a1b48031530 WHIRLPOOL 50bc11b911a0130a906cfe04b70ed8fd1c8cf1fe2c7e68757e9ef9d0d8533e10f923de8e46c47b2f38ed904fead3ef39bcbb0850e44dd8835bf992811544e068
-DIST firefox-21.0-bg.xpi 367093 SHA256 eda2fa21c592289fd86d9a52845f0314432a5bbab1b70c2cc6f2083ec34b4ccf SHA512 7af4ca41a36d49b51120e9fdd53b3f51acb92cc93e3065ff51e670f43a071123586fbb55254da6e43361837206e6b511b9b2d9f4b696317536988835658cc9a4 WHIRLPOOL 85778fc66bf29ccbea1bc3b53cbd67b3e4538879330e5264c5e601dd2f7a8dbf1f81ab5723d0f33e61055b17a2c9e4ef325a957451182b3205228d1a586cba54
-DIST firefox-21.0-bn-BD.xpi 378027 SHA256 e23cbd6ceef5a217c3cd426b986eaf181caa3a909976c5f53447c43f76797eaa SHA512 7bbef876a1a1b3924e63bea5914bb121ab5dabc6c65e8b242e875e929c6c4d7673344821284633b568675196412c97e6fabf3842822e5713f02eccc8b96ff5e5 WHIRLPOOL bf1289bb524199842d20afe75c36202c6834e8eeb1f8e1e029cf5810ccf5d9f589e6e14a35872c6a2c79ada5837e52a9c8d4a622a2cfebdffdedfe09813a14eb
-DIST firefox-21.0-bn-IN.xpi 413566 SHA256 f017c31b8221c9afc05d77d5585a2b731a1898cefabd2f9c11ad645f77451330 SHA512 1d32bb16e6749720c171e9223f80f410b4be7753f9f4a02c25ee38ef98b38321dde6c1ee399378b98354fbddb77fcd49b68c32ca16833fa866ea872b706d4bb7 WHIRLPOOL 4a615be65242078c4b7aa0120d7569ba68da726db887b62ca554af88d910428d0883c36c8e8d1fee20203f85f11138ba303d49b63568ed51471853ceb7e6d6ec
-DIST firefox-21.0-br.xpi 325665 SHA256 07acbb38237e145a55851dc239dfd0bc10dfdd14d0690dcc74d4c8f39a30abc3 SHA512 f22aa70c8d5f3f4f4f012c2cf3fca747fa84273cff2f738f3161e4171d3f894dc4cb5568ce3aa465fd67fde397544f865d67dde469152b0faaea9ab00a3528fe WHIRLPOOL ba1aa76447cc8f9b31733e21478ebacb7e6d429944dbc373aa90402c2f244bc02ce18f5628d8596292e66c81e5fc7ad08fc6a67d55def4b0e9d239787830850b
-DIST firefox-21.0-bs.xpi 325640 SHA256 1091a3ccec3e617f80e226f165f87da1fc10600ff4324c2d5bfd7365292f68d2 SHA512 a58c7cc0f5e79293d45ab96fef36b52d5f6825f22731e6a03d0655c7adbae3f7b5de8b90a2a344401726a50d2b7fb57b3b437501a695943841c0283e664aea69 WHIRLPOOL 85b60654326b57737df3238eda236bb61aa30f7fc3a6885b64bb233618f44fc046427b228e44659d1763cefecca17a05680ba857333aa3954979bff2d0d7ae68
-DIST firefox-21.0-ca.xpi 330920 SHA256 e62d2b679ffd4f88d438708120f15db04ecac2782795e3393a6ef4ab7de84120 SHA512 59d5c908f86bf19fb764866e1acd4322199ad9d0e33ddcecd6730e3a71945bfaac8faf5b218ced8e705544f57402bd0a4141799a8a417da5d48ba73567ac158a WHIRLPOOL f90fd3266b5bae9e3afea960a4744fcb9e31bcd37708f93c81c506df2cfb7e7388cc935c175fbf0c93a5b436a9a414e654d1b5d1e88aa1fb0b214583027595cc
-DIST firefox-21.0-cs.xpi 326640 SHA256 f963ee1c6fdee5aec4e772e11353c5e2b3d9151e48c4e18f892f0e311c1f21ef SHA512 10d0fed24bfabf1c91541279761284ba320d3d71fae9fefff2209ea18a134d052d28754c33b5b8ebd2284bb22f692663aa8dc801faa1f3770f7728fdf4143177 WHIRLPOOL 4d64f578e11f541e9cc68dcec99c465a0c4db593a38077cc484844be798330a58ce271bf4fe10bddba86f9951f5d5a9faf8d4b7a990bcdbeb86f58129c7fe910
-DIST firefox-21.0-csb.xpi 328692 SHA256 13490eb2398d694b6a89d37794beed96d7e4c969d52d88a63e16dbe2fc4f5413 SHA512 044e99650efeaa0cee5230f089a7b8a9e030b42be61ecc81dc61236258f8aba68cd81e1bec2da67ab295f9010d34cd3ec6a0a3adc7c1fec3fa632ebf1504bdf3 WHIRLPOOL ccd21222aec7fabbc5e776add4cb3c08b80c254d8283159c54984a9d2c31f7eba14b36ad3c5257804641e6f64f8027ded4c35295c91072bf46b12d5b7564e618
-DIST firefox-21.0-cy.xpi 321683 SHA256 a478ca2619ac06602370f430ea01178548e1cf88798dd6ba85028c27a30680fb SHA512 ce6bf44f0a6e548a9dcaf71cfdb5e1c1182ed513f0eb0b070d51bb9ba047e5b5bd6e40de369111be1ab9320af2c6bff3f6475e523039c12208554c79d589a7a2 WHIRLPOOL ba63bb8f97de407fd56b6b77547ed0e178965faf9b90657c0990b43d4e3ba2f36b53b8479b8479fa8c5248850626db84c22d610979feae717a76319cb2e89d0c
-DIST firefox-21.0-da.xpi 316083 SHA256 a2e6029ab9258609d2879aa6e27c88c991ceb3c638bdf72042c4c52af06c7c3e SHA512 418ef2669672820603713b800dd20a3890b7b7bc16fd750537dd8d0ded7fc8d6267fbaa1f1529d1c8ffe7131aabfa817e4869526ac6ea7d5668d80bd6f3ce74b WHIRLPOOL 4d32563e576fff7fc6593c20268f2fd14218ad93192f78008f6df46b70a302ce57f48bfa0d303f1ceb721fb561547b3a7b1603fa0950a2882cb88df51a02d439
-DIST firefox-21.0-de.xpi 310198 SHA256 f6c887d35c4c0f52dce0a09db3289c2e1cd3ffa99487ca5ab46984d2e93dfd62 SHA512 fc17008108bb37e77568e3f3c0f942cd594220be0e180bd12ab7186a62ceeec264f5aa6aea935778d49bee260ea5b91424b31b2370388b9888529c0b9ae1d134 WHIRLPOOL 33171e0c0ba465938445ece28c137d365ea72d49ee43682e6772dfa05375e9da897814a06b21c7f6337801d460efd3c4ebd3b2d69941aac430e558102223fe90
-DIST firefox-21.0-el.xpi 353583 SHA256 db01d0c1eb70ebf67f15e7fb358ade422e19b5bbac2236825252ed41254ed006 SHA512 9d49bf5b84e20f0650633f0af16e62441030e9b9b92b10b04677030cb0f6141368c8fbaca8c80357f19a4ba80f0cdcf0682d82162101b1ddf5dff7b9d2894aa0 WHIRLPOOL 2d2f9930fda844c26bbaf7fcf20fbcc453fe3a528e9e31d323735cb8e395836a29ad4d606707cc4efdcaeb4d6c8065c9b2213e924bc08c8bfec027ab1a32a2de
-DIST firefox-21.0-en-GB.xpi 307352 SHA256 c6a61daec35b30570efc21da16ae784fd380f5536a866d97467a6495d315c8e5 SHA512 a2e6ef9eb1670ba56d37ff57dc00ada89507c5f369b80a807101980a4dc1d674599f6d5b5988fe92898a8c5573fcaba9fd6ac81f8d7e3eedd83b6683464d594a WHIRLPOOL 27ac8af60c6c3f7c99b2c865650fba94f5fc74818c64a0908c780fcc342d20b3b5e5ee8955b33de736c70eec88d268a864060bbfb2968e50a1041de4bec96f94
-DIST firefox-21.0-en-ZA.xpi 307069 SHA256 2ed61210763076948e6f3d0f206970e19b97b4644b38931df0429d2ec2874069 SHA512 b20948854009ba663165dfb25a358577ecf895fe3519ab3d4ec7d341195db85186452ea88c06dda0854ed10625f9743a1c2067068fdcdd475805afdf1daad127 WHIRLPOOL 9b3065d778df67637ff4961dd3d690ba2310a1739f5d7c5ae0bc55f66babd2f6f5a60305201d51cac94013c0aa8cc239efb75d416d7ef7584682afda3bbe55de
-DIST firefox-21.0-eo.xpi 321797 SHA256 a50ffcc6969a9352473799efe6d4c04d0ae80b4a224fc76c7c91c96c11a21456 SHA512 9dc2aa7ef91d01a503748d8dffbddeaf8ae66174da143c128701c91bd86cb57d15470eac381289543907674a9eef306798d2b1d1c38d2a776c76a98aef7782dc WHIRLPOOL 429a1b3fe8f5301f9ee15ab652a6c7d3e126eee9dd87a1dedd65385a2a45669389091c105e5e396bf8cb12200c8e494f33777d6885181f1d3e2496025bb4e101
-DIST firefox-21.0-es-AR.xpi 324484 SHA256 8ab0176a2f84cf73e4c170c6e957cc28b8a861c9066e11a76c7347b704c0bca1 SHA512 deb7c9dfebb44444ed811371812e5983679b6627b55b82116acda49709390d23b1df17fff2aa26f908f654f6b57f712954496690441bb157dbcf43de5ef42e31 WHIRLPOOL 32e7ced455c3eb8fa4ca30e6914a4b982eed27e0e70a0997f5cf9275cbebb5d6f88b94524b1b8c39d781e2d7b000a61b65db41dc6c227ff6890464454a732e53
-DIST firefox-21.0-es-CL.xpi 287532 SHA256 3ed1f1496757c78b4b767324db3a8e61995fe223602a9f59e9ae5a12a67cb664 SHA512 b120dd37fe4edc97dbc9e3b9fe03778c82496dbea29a7eadfc2d72bc8f929a7cafd472d041d57a9432efc2319af8bb1adbf19604c884e48fe8378f9f4c8348c9 WHIRLPOOL df77c2c4a6647dbb7700f0d3b8024baa2e72c0ae64c24230779a4dcd5b96da1e0c0cc174f79e0f2bf1c4527aa4804ea352c849d3746cb107788c8a6b2399b85f
-DIST firefox-21.0-es-ES.xpi 273792 SHA256 1c832e813c2b92c6f4abfadc411f1a75fac9c850b77900424028199da4ffead2 SHA512 75593ac1cf884817933fe6a06e7cffe77d970dea6dac389303f93d774d0bd27525c947db18924fb2dec8d69857f41a95c7856ad97b5bbfd183064bf8210e5cac WHIRLPOOL f2aa6cb876051778f0627a1f7d37e39065df5865922e22af9a74ee54c08f944770238bd80dbd42a584cad08738b44c122e9a9d66495922b4b779e955c7282c54
-DIST firefox-21.0-es-MX.xpi 287118 SHA256 3723073c5eedef92be2366fa73d442e47ee8f1cb9b769a0589966605ee24a321 SHA512 f6cf88f63ce75f942ab5f49d27115ed79e79f5d50936a821f30e8fcae5c257bed2a79fa1ad4d0bf9cf7f2549f8459369d3c96b771ea6fd8b627eb5c714597f32 WHIRLPOOL 037bcec91f3154fbf7a6b9a60683649a689df5a606a5e1577e2e904f61493d3f54d4c7bf2dfa4c4ddfcbabb62ee176c89b1277532a8e1386681796de61662c8d
-DIST firefox-21.0-et.xpi 318479 SHA256 8678a0181a137eb495bed99d5f236ec0677bdb21fbbafb9caaa6dcaf5b7a6b13 SHA512 6c8c3c141a7b01d496214c13dcaa8fb15016becedb492b04c9a367a14c0baa53a620a3ced9b93556af8a36b9c5b1e2fcc48dcce5fa09f772c19552da96fffea5 WHIRLPOOL 25bd6094a33bfd4348eb66a002cfbbabb7b2b6669166864350f732a50263d787ad97219dc7bacbcf7fb4bc5b49640156aaee936d01ec9906d37da6f34ac5bcf4
-DIST firefox-21.0-eu.xpi 321179 SHA256 7cf2e599fb384d0adcabf5b3c8a2d5b14080dac34ba5e3700276ca561d384ac7 SHA512 468bcdb50ac855a4b1e64b42458e85653000ad3abd8595791ec8287855b10518ed1108a2db306f32aa867842a2510306caae8849e6254a4d84745583c431a219 WHIRLPOOL 99f58ef3bc8f24ff672883fb22d2fb19c752a1b9fc40f8fe9b8129ba4358fc764b1616de3d2f4506a213762b0e1b003e9e80e099e717c57ca46b460882844c1f
-DIST firefox-21.0-fa.xpi 358522 SHA256 02057d02a762c2a084d0ed8b8f661b569133cde2d58f43cced1b67b65f308e57 SHA512 7e6513e362bd6f803853446bad2b144dfc33cd0e37a440b2541e7a7be0e811853898a50c861c1e46e1a3f60e8dc3db9bd871c50e9a64d84e8150d21e4b2e57c2 WHIRLPOOL 0a0480eb60364b557d84180777af4199d17b995e1fd7b42f208d08ae09b7acd623e2afbd574423dd5a3f412a58765841a07b67b26d6ffef56c18e2ab74fad35b
-DIST firefox-21.0-fi.xpi 322166 SHA256 2bdce20a98718146395168da752a20b3ebfb8c43f835a333ddb8bb57affb2337 SHA512 678acc0d9c812a83ff144e129a9832b6aed53a2f6c4e3945c64d3b0919110e567ef5707e88a04e78c49d7f6abb8653f7af7f61246022c002f3d6523344a53361 WHIRLPOOL 11a34ebe1f03d98dac046988f4c12884dd386650563f9021eb9e1bd0ffdab26a6332d285d678ebc5ae8c04dbe28e2b2dc625c697d7f0e719e35312f4b9e5ccab
-DIST firefox-21.0-fr.xpi 329129 SHA256 6e298d28b9fd921a0a512fd912835ff837a7a7979eb77d91e3856104c44a4c58 SHA512 485292c2bf3e5a5876d5a970305435eef9cb0dc3b2177177ad8ce84c32b5f551698ca796f6e9c091d9f2e455947bc73e4853c9f1ea153b4c7a81f9f217501fb3 WHIRLPOOL d44c47cdb3e752e853f412f0d738268becae9df15a935f60009cdf7952c3b78c2c13e5f701e6e013626c23f2e72d2c4d40531084c8fd3a437fa422b94e2c5f35
-DIST firefox-21.0-fy-NL.xpi 327270 SHA256 6fd5a3e75859aaec3c1c34bb76438759749af3d51a5ddbca6d0e1e70ed049c6d SHA512 3fbdaab4dd5d6ece944988e43606ece0f11131a9a16e464f00195cb32679a5d7ac1ebfc44270f3d280a29d4f8efd2258fcc47bb309b69811d6e7dbc57666479b WHIRLPOOL 8e715af4649eda68b17a9ccd5a30c87c53f0089f70b6979565dae06ec147244f142e318562300fa7575e6e944eaa560d3444562828f2b36823b2556a23dd01f7
-DIST firefox-21.0-ga-IE.xpi 335644 SHA256 f54ab0324e87bfbd8898391545e619d7ef766fdf33678f9e76e7b5e2c307cdf1 SHA512 8030c32ce1ee26c34fef4916a891e28c230ca2f38f449eb3dc75d8a2e83f242489b0ab7e0afd6edb84299e7902df0f97ec843c217a13064563049c1fa64dcf88 WHIRLPOOL 06289cf4de7b0080fd40d567d712c4d244164a24e64921baad518c7c71459b0da498351410ddc87eeb8f367878ff56eab8b8f95d15a1a103382328804707d81a
-DIST firefox-21.0-gd.xpi 335037 SHA256 8e91c1907a9597b0a4d9cd155245f4901623b4b1e939c6f16634e27aa75a15e7 SHA512 fc76f8b078160350f930e89c060b14501b251601843f70c5303133c03da271e203c00bf2d573e0c8135640b55b63bddbddad70eba1361cc656903971c39d0244 WHIRLPOOL f8479ddeaa42c311f89a683afcdae4628b7341c3865b037143ceb47a8a00d914944c5c0ff7087e16c4cd6b5df53f493af47c872d6e308da7825bc676afa2f8d7
-DIST firefox-21.0-gl.xpi 320857 SHA256 93ce41e57481663f6c953b21198561da6ca3039549ae44b401735cc635b849a0 SHA512 e3e13f35e70069f4ac54d21a52d57d27cb06500e63a0b5261a48ae466332e671a328bc5f5b16a1512222c667d87f98a4986c12c1ce4178654d280b4c7f8e5fb8 WHIRLPOOL c2cde87de36047c697559c9a618eab82350b367bddcc5bf263b27c8432ec1d767d514d9e6f8bea582e3b8eb65001d319d50b2c683c0c3b69aba21ae94a3f69cd
-DIST firefox-21.0-gu-IN.xpi 358012 SHA256 5c4f31da953eceedcda9409f0836a72391ee2e890926f4e12360ff064552c5b8 SHA512 509925197da3cee3323904f0fbda7b15452ce2fa012243e22d686da9db19d629320c776275003cbeeb0b26dbd7e8495538631a02bf9b6cc38c1fcb81d5cc479b WHIRLPOOL 8f86825d958ecbd6be65ed6460223fcc703ed9f0abd7d3e1eb288d887f677756c30315f0e8312d58457b86f62e1604a31a609718b8fb1a330057bb0389c1074c
-DIST firefox-21.0-he.xpi 338629 SHA256 cd50bf5d59cdc64abd3c1ba1b38f6a997aaae846586d6cd5b8fe25211b682672 SHA512 3dadfdde300ce59d2b6867fd208b4c0fad90801d25eb32e755c9f0f5410a8212c8cdeb7494d86834318e60075a37c14936817f17740cc7b22229bc4ca28f6585 WHIRLPOOL 4e37735d1aced5f6f8e3c3641ab00f8de131ba32e5adaa9049878b56e34e150bfdc98adf5d3d83e06f0ed365581d4db3a79293fcd1860bd0f9eaef2701049529
-DIST firefox-21.0-hi-IN.xpi 368980 SHA256 2c47be3f4bc6427c09144e44c8a2d5f67849d1e53d5f627b6c5a3aff517bcc5a SHA512 f8e42beb1f28c4a8286d1fc6e688d05253334e45c94693834acbedbcb1d49b0f0dc74a68105cf07d419137cd35f695e956b3a3d0f4417b3eb9cc818c909cbf3f WHIRLPOOL 7dac245cc558a66e9c44f80879faa3ce21ad3e4f342e1cee6299e026f78e3896e227d0e78c3725b421c26edc09b0740ef46b1cbbcbcd78b7de726dc5b96cda79
-DIST firefox-21.0-hr.xpi 324263 SHA256 fec1435dcb959740381adafabcc16101bc021b1bf09ffb183381796d60788e7e SHA512 c4fcce4b818c400984982b40770143e222a50cb70220836cd053d0b422be5abf51016dfd5c27dbb09ab4e43bea4dc8521485c8ff4a56325040b507ab7e761882 WHIRLPOOL a14d60eec89d8b742cb6abdd77dedf855b1ee6902a0052e1cf054e78f212daa0020b4564f38775720a23755f31f1fac8f8683fbb1e52c703bad5aab930700a82
-DIST firefox-21.0-hu.xpi 337300 SHA256 69ac63c8a0be5a27cee5dd1d436da132cabb84cc33013f81d5b87c5d1d2636e9 SHA512 26646175ef2fd998536150a2aa016f25cf7f56d3bf65d68ffe5d635eef1f544520e0838825296f21d017897321f1004e40115249160e23e94b1904f0d6655aa2 WHIRLPOOL 95f789de827d0a8e91dea467c90ad0096caf6aea5ff523907241c72cb8f0cc5a10c528cd503121c2902dab9cf25713a37f1e24446e2d727fd21ae125e2c25a1f
-DIST firefox-21.0-hy-AM.xpi 364317 SHA256 90cfc6f4a11b63ba0c002cb47414bc28067b611b8120a7b8824c0d737d893583 SHA512 9bf07f9fecee621c2d2ca5d459278a243bcee0abf80b371dee947f358080f6ed7cdb6ac8d071c36580b830b1dd68a14c94aa59a35aa956d468aefd9fcbfcc536 WHIRLPOOL 6692a6a236bf4bbdef4912a6858d470d1021eda09e09556e0d7b7ebb7b838b825aa1c69bed7281ace29a3d65873cf2b98987b3c9f0cb4a5c21301ec874a3e809
-DIST firefox-21.0-id.xpi 310856 SHA256 d9945e962aed1ef3627a3d093b7c64a50b41af609915838c7ea2076b27303f62 SHA512 a537ac739a6776ab594bc38cdb9ab658ee048851fa5463e884648acb5006f640f2d6722374acea6542a1486d522466580def8effc7044fede02760d238a152ca WHIRLPOOL 25a91fae0e51a45a766e4f412b4b694d13555b7cac6d1134788786ef1d22cd5d86461c56bcf9df839c16f525cdbfa59360ee1baf3443efeeac8693cc7bc70b91
-DIST firefox-21.0-is.xpi 319738 SHA256 0aea68e55cd3b27694a92bb14f1c90cf25aad68f1ef19bf7c544e498ce43cad8 SHA512 2ccc47fe6391e3a4b73c14cae52c8586bcd72a9e2ece53d8eb07ea3e9ab56342aaf94566e48bb15eb69a25e78fc122a9f0b884d2ca1c186e7c40ae851ad1d1ec WHIRLPOOL cc5ca4ebdcfd8111d30521c6884b11312c15d406de90bfcad5ee328c9d14b566e95b6ef39051fc57a731ee271d6cd79bbc58f2c426b6ad037362b2af7e0be0a1
-DIST firefox-21.0-it.xpi 268668 SHA256 7dadc34b271d930c2d58e6aa6f3b7b081815421dff08fb8c5c678e98872df65d SHA512 fbb2691f14fdb868be196e83bddfd62fe64935e3822eb599790d8db8f844d6c2f0972e364235d4846a12b959e187cb5431e39749379f0e080a8defb480eb5039 WHIRLPOOL a6018dcde2075fd8694b5d722caa90a49a4d45a014c079313115d001c6e151f99e66c9b787862e902be62d4f21e95758607250f4dae5ccbded2ef5dbd762ed2e
-DIST firefox-21.0-ja.xpi 362631 SHA256 fe35481016bd26c7cbeccc96e511e9046a017c55a05a23039e267a9a940ea144 SHA512 2cc4e114be90fc04eb9cb4b9b0a0fa54762041af1586992de231a9e38af1e21eb0747c0ec78266a04794ca15bfd3620e58a43439e749b869e2d738b7a6945332 WHIRLPOOL 8457d822e469993f1e37511434a0d2a3006e8cc1be7ce2eaa2e95cd516f1e53ea68317242d22ab558bcf465da8926eed9f7ab964f7b711d8548ced77b684ad3e
-DIST firefox-21.0-kk.xpi 368768 SHA256 9800b19f4ed0b2591bfe0bd77b0d0cf71deb4865bf7cc0aa802c2efeedeca2e9 SHA512 3b64e4fd879b29f59e9025a532c3db7fc0162fea6da0605e3a9cd3b8d97425bf6ffbfc96ac61ef1ec7fbbd1a583fb2d57995687634275659921254fc74768f15 WHIRLPOOL f8904317651cd17ab4f0e630b33189f0adef0eb5bef91edc88b62239ab1beef3e55eb28452e1771bd7774a2c8ecbba56e645539962c7d52d17ac01408d655941
-DIST firefox-21.0-km.xpi 386278 SHA256 85d455b1f5ee7ddf3121b4dffa5885dc8763a2afd9c686112763ee3d9c4cbcbc SHA512 6a5da34976b51a73fc08bd550ac32ba4a9cf71f38d570f84116a6cdef976a90dc18acd3477487e3cdbf135d24ed7f4675226a6aaba54a2211283ee84229d2fce WHIRLPOOL de4871c6d71ed3b7225d51313db38c2500a116f560e3d9a001d09eb6732400854da1e077491de97d72ee60cea71cb356422384c7510388a5e7124b658acb2d29
-DIST firefox-21.0-kn.xpi 393583 SHA256 0d56dea84c3c8a0f44879893565739c753a550adc1b47a58b39431eb4983b745 SHA512 b5489f4b6747bb7c3f1924ddbefa163d4a0d1a2ecdac96b1ea9fdb513db24446b66c77d289c3534e8c33b24b0db916c029c0f45ce66c0b9d1ba1ee71e75d7350 WHIRLPOOL e3c1343dce295afa50037f3745c05882d0b6fb674e12c8d89ea800409dd4d68ad49fd853ce66217ac8ec61de2004b3c524dd337b5c7c24854bdabe2ad1205ad2
-DIST firefox-21.0-ko.xpi 335343 SHA256 2e5c3559ae54de3b05de09492513fa2c666b6f5da769d5564ae25e78488d76e9 SHA512 231021f622ef7fb1e578c7769ce6e639ca406851b2a5209063323c3d0a4662fa7ad8d250fbbb4f7422566c9428bbd8634fb753790329dfa86bd643cc1b158912 WHIRLPOOL 0b11125c2f4bb6ad18b6b4f583d74be070a96eb8cd46b1af9d50a9df896ed77c2d38c896f606b1a09650c987ef840df7370ece086fb40a962d3d7566d9c40498
-DIST firefox-21.0-ku.xpi 342565 SHA256 03677d0be9b6dcfa8428f4f8d2ca561712180c19801074dbd9697513aeb85eae SHA512 5dc43f357d7e0575c7dba76d8964f486c89919cff9c4b13a6fe8c56c6e6fc223626db96ce379102662a5b2ce7bc9d13b726a428888051f2e818cc48d0955c6da WHIRLPOOL 8d6d33d0d221a5bc3277aac3f57f5a9cfcd18911dfd92aa99b1869fc999e23f484f9b0a6f6fe9efcfcdf6c5605589e18225d8b9c5cc544ae36ea090005fcb59e
-DIST firefox-21.0-lg.xpi 331051 SHA256 380c95c60af4204699e58054788f40cfc40140ef875e893352d3d265c7a6daa7 SHA512 634f7998164330f178441a58b39d434902e260f7aa9981d43d85ccaed4864636a5c2ca9ad7c253614fbbbd2f2dcf9bae7ecaa0d16bbf1d14665724168eaa85ab WHIRLPOOL e50f800a7cc9997691324ef8f5046c787e9e5d470daefedd8e6d99cd48d6f3b06649375ea1240d5a20296682ee71ca3183f4ab9eab5dee5a8047f32893282e31
-DIST firefox-21.0-lt.xpi 339596 SHA256 06c6001ce8f2a82bb5b6076e729097e71553ee9ef94451181fca67fc6a3ca8c7 SHA512 c3cec5f016a13895e1a2d228edc711a76f0ba1178399a71dfe1b0366250b3d71e0738d3e7e905db5c625266202e82ecd12e48f80c5674aecc2c467a8b32afe57 WHIRLPOOL 568e969b53d08fca612b1b2007ad20092161bf93beba668ccb3a4bed8062af5d472a739a291fa7e57e420caef01764cf57fb2c41e48f5ed6244192196b6f3dcd
-DIST firefox-21.0-lv.xpi 320707 SHA256 fe6685d0c687898d9383f442bd763fa207751c3e5c50d4080280ea7158446824 SHA512 65ad341d77e548816d31226bfca64a0c63947e21e5c2e7a6ff823c8b816b74dbe45e33bee3c52dfb0d64e4b11ecd48c1f99b106caa3b5dc97f2389a2e4280c65 WHIRLPOOL 5bb1b2f73a47aef18ef8e37731b61a71f1f3c39a4b3d22f2158b6f0790d5c906cb6d3fcc79967a8e31c5278eb29c9b233c90e727aeb13e9d3cac7735cc46af34
-DIST firefox-21.0-mai.xpi 366681 SHA256 29b18c2909ea33e61f07ac7b5bf5a7f9876157ebb4bf1088752a983e1692ba31 SHA512 f526ee09aa50e17b5a42379c8295dab69b1162ec7890ad2979968cb44ce0369ccebfc3d0039ab01494416cc0377703001b9374764446b96dc0df473efd031168 WHIRLPOOL d84f5af463c33f4498c98436c5d3673130a3f38c859b80bb14c61c7a864fe154177f18f064789060ec66b725887f4688e46f4a375176ed78905a42e114122d2f
-DIST firefox-21.0-mk.xpi 356067 SHA256 25e537bdc48f42a2655ebc1862e01ef23f8ad0686e931b0e9618f1b42f1180eb SHA512 6aa023257f3b1a3fc99ec1807f8b0458f77ba73695cba6617a57e1a8e98980ddc6089b56d07438e1efca77e68e557a026779a148af799cab874c6031984f61d9 WHIRLPOOL a1c72cc97fb389de5355aed57c65f75cd442dac23b5ad3a6b5c95c966d573cf50db875b9e8e9b000fb042004e39a864f5ced428aa772b89b6ce5bcd3b47f1bfd
-DIST firefox-21.0-ml.xpi 401282 SHA256 074ef7580ba043772cff91597b042c3aba35f2738039484ffc7d26902055db75 SHA512 707bf5d5c16219fcad34fba173e92100913041ff8411afe9528a5df2d3941d2fa005d2a12c8d037fd99236fdfcc5d32705ef6147454b740a909297a3615218c5 WHIRLPOOL ea4e661c2f9ea2d85037ef5251cb3633470c82dcbf95dc807ec50e5c3b84c0b2fb3da5b1d075a88c3d41653bdab53a4c745e94aaf4ccf6db72a1b4f24c5b693d
-DIST firefox-21.0-mr.xpi 368873 SHA256 fc4e867eb61848d403170c75e1fe374b3aca1fa1197ed0e1a62d27ec83903e65 SHA512 29dcab8ab1cc3610acd784c7c985a3978d23683f1b1a7308128560f677133f44455c0854bea5757484026026182b91cc3b7c4f25b69dee06f8eccde6eba02e2d WHIRLPOOL b620085ac87d68e02ef0c9615059c7f2e78d16888bc4cdcbb123d2e38dd464af121feab58b60a8ed274e340e72c114e6ab493b8ebbd606392c530453a1c312eb
-DIST firefox-21.0-nb-NO.xpi 320828 SHA256 700293ba88debdb6fcde750fcbf6e722a2d294f3c497831edac924b2fc004b75 SHA512 139f83fcb4bbdc18f354d35aa6245d0e78a7cff94660cbc5330f9bc98129b447bd63f74f0001397b945f3fad00aea737d19340a0a92653bab5ef1d79f1047a2f WHIRLPOOL 7b8e28988d65e34726d77743c16d684966de59f0e80f6217e227ba8163052755c62233ddb8afd97630936f80d3f85ad316884fc6020c2dab69d761c260d4e9de
-DIST firefox-21.0-nl.xpi 321288 SHA256 7e5c3727e5bfad3c071e9335ef0f2a837cf8ca65cbbd93f8efc10fae39300532 SHA512 d694a76d29f870a5cce9071213cfa31f05a2ca13be10f43ccb7ecabe454ad2283baa6cf443f86cc3318e5416e1498152b895fe2c6b62695e395c30783e8ff2c5 WHIRLPOOL 5d1811daad16b20ec6e34ac39a7b98e5939a14f4283c519d9b2a9e1022fe00933b318922ac032d618042a37dbfed090d46420d1b7f55ccc555617ec7a778634b
-DIST firefox-21.0-nn-NO.xpi 321067 SHA256 b1ffef0b121dae5d7f7af773a7b447d364ef2bc4eb096241d5aeca3b4a4542da SHA512 8c1949d9b077d676c08b8323da1694fea88d5e3b5d0809b706863ff407484d39c308193e2d5642e6fe1e6eaff252de6a5336d1c65a18cfd0a9a981b360fefc2e WHIRLPOOL 00775bf06d7ddca877256e9a4df7a8fca3d6d71faf5bab5f6fef8c341ba9cc125a110a177e2f02a078ef6c55cef7551b1ff8e92c2ac5727db6c5e3946959df01
-DIST firefox-21.0-nso.xpi 326539 SHA256 a4a8d95e903bc3a24210034459333db08f5485f09ac207569ef74918aefff8d8 SHA512 d3e5246931cdaebaf48848eb73dad30296533730e39c2c3ea79c41701920782fa377fdf787ed71e4d1e50768e6f4daf8a427397801d74fccc8e23e14bfa14758 WHIRLPOOL 6c512956c1ac383137581d454cbf1f270952f15531d46badaddc8568a603151b555795431d304f857293868613271debf0a856dae063e758c56e6076d61acec2
-DIST firefox-21.0-or.xpi 368889 SHA256 f915a2831675202ecc44f3cbf0c55eac90c0259234f1fb31b90c5f4eba6f595b SHA512 b8e1cea465774534e7e519b497ddd59d6269a0c5954a6afabc3981d7a18988d707ad3c927f324de249cbdac4fbc46a0ff2ccceb982250e831484d7e6249537ed WHIRLPOOL 38df1b04ec1151a757936a87714a44473e02e7286dca29ddadf732bb712dc247df56eacc681d0c099da1f818826c73dc7e9edf125ef515047afe8ed2803ab14a
-DIST firefox-21.0-pa-IN.xpi 355004 SHA256 8ff787f43910d4096f8d140af416f63887923fa11597c7791d86bafcbb36cd18 SHA512 5139cc13f32adadef3f61c37bf67673512251e29d5db6d95c4850956837a1655bc9eeb3a970db96208abaf47c37cfa548a39e831bb6e1b91245b9e6605d55dd0 WHIRLPOOL d7b141672c3a06cfe74996d5e182653e9ddfd40cfd6ecb1f6beee443aa7e9d4288b2d8f4c26c378357c7b2b0ae60c50a77a166335d248957e1c4b6a379d3e302
-DIST firefox-21.0-patches-0.1.tar.xz 7056 SHA256 b4c1c796da7ac15edda87160a6d2f6db02d089c5119e6882570c7cfd2c62875a SHA512 2b9b1dd1d29a4ec6b1787b1bef8e74f4669022b574536f25aed327b55051c38100f7bf389bd70c5b4f2c5997f94f0c2f03ff6a3f074d8ee2417880a3520c69cc WHIRLPOOL f92027b3cb4d80b30ec9cd6f21204f0a38706fe7a8c7a29a75a7781450a0f2da56a42d393133c473c7a2fdcf218a552cab14fff769642df9544acf11a0594477
-DIST firefox-21.0-pl.xpi 333450 SHA256 16f3192cf1f8cd3eea87e7bf9514fbb2cf6d775272a68c23d9d25b1289586496 SHA512 e0cc7abb660ba95b9503874610c26bc33153f7b261bde009b7c9312e949c77ffde8bdb8b75fd54ff0cc0fddc77f3acabf788f2ce84105fa70fdfef0e3d771125 WHIRLPOOL 1e89c2e2c257cb7be599928838e5d96d70683ef6ea3731575e58bd0df3bb1878c3fca799ab0ead6ec355a9f4e7f20fb0501433fa8f82d1b4ba222533ea618920
-DIST firefox-21.0-pt-BR.xpi 324499 SHA256 fe55931120c4de4c84ff66ca0f7699e26060120e92e0056df5ea9e7f2d1908ce SHA512 f16bedce70298356a4402bee28fa1c88913aed8697e49bf326d7580c736030c239c884a98059c0bc2ac4c06fd6a5feb14a2385be1afca7600452cb14ead6dbf4 WHIRLPOOL 0f6998f1a08b2662bf1530421fe46a4e630471db23028961d2f0e926392e749f222c057a301d4f8be870a66f45df9e8172bd5321370dd68833b9da0f1d7fe9bf
-DIST firefox-21.0-pt-PT.xpi 323613 SHA256 dd84a0c02aae2114fa4c2d453616a974faa1f2ea6341b38a302ad691ef5ff58d SHA512 0539997be0facb7013c446be3b31a1b70df1aff8f4f03ba79fc33e71a8d17195fe19e596c500b38d821f532c73d221643a5c7fb00e71885d5fffddcf8322d8b8 WHIRLPOOL 80d31c0a04968161658c2902f49816e02ab9a52d83c2e8996db9edf652d548d866ac06dff21be7e117fc7378c42950a3936215260e8dfad86408add5e4c766b5
-DIST firefox-21.0-rm.xpi 322600 SHA256 56e817478e8d388650f4e27d22d114ffb96af078c2e54ed4b6a03427efceedf0 SHA512 c526fff37707dbe43d66959a629cf8ac916f3e406f2b2c589b93a93533d70bdf9e6110c0c8abfccd100c9b7b20a6addd86c5231af1b367898f534f5fe864d1cf WHIRLPOOL 000e00853a0c6f05802802359c0025192eb983ea5512036e0d4a4394fabd2316526c2d3fcd76cca8b7faf09214dcd9825436daa3a1237cec63c561864eb7fa71
-DIST firefox-21.0-ro.xpi 348788 SHA256 d725a49c3391b50a9ca1d6340759e9ea0ad9fa4befba26070bd51e4419990753 SHA512 64a2b4f495fcd7ed2bf2f8eebbf4b5d231131f802f5fb02bfb4ad0158c953985e5732b79ce3256a6e7f49de4c3e7672a946695adc3f473af3dfeadb8439f68ce WHIRLPOOL 8fb4c453212a9ca854a22d50a21701e8567066e41f013006d454fab010f08863a088d2e4d44c9caba6cb556248a444aef4d3eddf4acd755b6af81c3d188b03d8
-DIST firefox-21.0-ru.xpi 320297 SHA256 ad098d073d4484d5a937545e72cd96e3595558d6db011beb6b4b15fda02e1724 SHA512 28bc7ddadfe2fb9a847610b65434de06b6c641e2a9f7c5b1112a3b5e73644980bf25977010a13612306b856996ac7bbbe1687ebdd7ddd8d353721bc25873546c WHIRLPOOL 69f90e0554fc7a36a74dbdc2bf07fa42fd6a11c16cd8013c0e1ceb33834b2da707f36015eb2ae66f2c109ec23309a6fe88277e005ac88b45bacf443e685ca1d0
-DIST firefox-21.0-si.xpi 357551 SHA256 bfe1632fc097b46cb625acbf516e6bb8f2a94c665c9e1395ddf72cba56ddd5f0 SHA512 f8f810d98c5a2bd914215f9cda03df71a49c637d3d937c56d4b8dc455c5b1925238bbcf7e4343887df0d40f7fc6e0c013f1e5853bc85004e70bea66ba84d90e6 WHIRLPOOL 4f8501fb656cdc1ec272077f1437e3ebb2a73ac190f56b67d646b8f893f76094072da55859ee718e20e38a052e58828ea483a1a9eca792e9ed008d24683caf3f
-DIST firefox-21.0-sk.xpi 337765 SHA256 00c76a66c658757e941291af7414471d72ba3f567873c95c6c74b93c4e9a2d36 SHA512 61f79b93e6413b84ac2f2a5b98e96f7212888b0dbc825516988e6dc1111d4ddd6e3452feaa7f66791950d78238cd305281ad8b64cd3068549fb74d85faadf151 WHIRLPOOL 251ab123caef1c9ead8917c778ed507fd00fc7cec7326b875e9f48986f0a2a159388efd828a395df58ccd4a6b10879c82b7d4a1decbd14fa07000d15c80d98f1
-DIST firefox-21.0-sl.xpi 322254 SHA256 b8f4d1c6cbc87570ed1d1e0c106fa378737f416f9ca3123e51c2978565d69126 SHA512 1546beeeb36c24bddee87cbdf60d62f9de70f55ca08d4cf7891938fbb6fa760097f395bfb41bfbd4210558d2829031f4e081c8c61debb030205e47014b1a31b7 WHIRLPOOL b256115da90b4b714412a9896be0e53e2d78c24d9a1d6a4e5161193add1be90c0b1525f204f899b6ca3df4fb384780adde166822dfd69f74611c17e61fca2105
-DIST firefox-21.0-son.xpi 322783 SHA256 9d7c697351010d6bb0464c10ddbeb0f286ba5b867e59ab5aa2578703ece0e160 SHA512 d101253713b7aacb6d000d03357eded80c103bf70a188f3e4351ed106c46cb06987b08e9ad0cc684b717d545b572be43798a50574c3c4f9b5a4a761aa2ff50f1 WHIRLPOOL 3b7cadfd2e94d1950cde2ba26a9bf3eadf9ce641c3bb796ca7298b6c2ffdb78cf5c91e91764388aae9cc4919aca82c476756278d7f77ee856579f4ccb4ede2a9
-DIST firefox-21.0-sq.xpi 324894 SHA256 ed935aff66159a4f231d8769bbf24f398cbf9091011dc18e1b491bddbb7333b0 SHA512 87b8704cd2f7c1beea47c58b16f622cb28c0ef64dca465a9243f778d56470f5a8e87d2fda8a4694970c326a52ae76bdcb164a2af2dbb0eaafaef39efed9bafc0 WHIRLPOOL db62edfeebe59e3e1b25c5eae8afe0c55725981d9b0ac2d842c98f1872532998366803795c3a3c8c9e96f48003d469562ff5507e828de4cb9a679cb1932ebb67
-DIST firefox-21.0-sr.xpi 372544 SHA256 98e7a08e8a0fe9ca42904ac0c3ec432b44639c1e3953054e07f95a8caed273ca SHA512 6195ca68c48c436bddd7107e543f6e7f4193bcbb2a9545dd5023a6b41fa80677a0f0e988c4519f3edb8d6f15f31a71fd1c8fd0b6b32f8e6c7db1cefdcba39e73 WHIRLPOOL caf24d4ba38af82978e9dc48ea3ff4c0969f4d4092d695bb4778f0d8f0f4c2edee4c12efcc35e03d8206ea655eab236c46a95403e659428f72429066225f1a95
-DIST firefox-21.0-sv-SE.xpi 323159 SHA256 f34a2124a32a464f09c945c5ada0d704a5a4d822898aad0b7e4ad4aaa2e86718 SHA512 7b24c81034edd55e73f9f60eb718915722caed4ed5e2d602dace408c4cefab3c6e648bed3f714481648a1a10243f35e0fb1376f3b18ca5d975fdcdeca1a971e6 WHIRLPOOL 23356536b65eacee038ec50464fdf15bae1ab8adb2506e79870caa9532610157c2ba1949049d6a3fc6fa5e2f0fceea0902c5429023323312f992c9e186a8357b
-DIST firefox-21.0-ta-LK.xpi 372949 SHA256 2b6f9446f97daa707499f38067af75723f0b27575dfa95696f62f5f11d64f088 SHA512 4685a341e2c28c8ae0f0f37851360340098a7547d0846f9b2fa41b2e0bac3c2ef39c3f125e14d13a322164cbca24b0491c511a6ca8b6c5abc9c62b17e25c19aa WHIRLPOOL 055935be33ebba769722cabead9ca87e8c694166a8cb979cef572630eaba54329b42a1de1831bcce18701934afe933ba750291981adaf254217f2866fd91afae
-DIST firefox-21.0-ta.xpi 359609 SHA256 428d7e21cc339343b2638bfbd60e118673b197463a009b086a1a6ac40cdfaa6f SHA512 01bde7115b219bc473268f4581ef34e0109be55d8a7f516e0ac1653757ab683c9b311f6b44ab8c8fdc19e9b1252cbcd22a0b0d529203d8c424d80e18da4297e3 WHIRLPOOL 2a0a9708e0319c96596f6c9f5bc7d74cca4b4d24afe61eb12a258c66f37954af68bd6b94e5abaa6115713cb847343f10c6f2787058e76fa340d36947c155ead4
-DIST firefox-21.0-te.xpi 379199 SHA256 acd03a08516c5bf039494e7a85245955d503169ba035fd2f3e6bb7fb23bc0e61 SHA512 69b898b875a5a2b1a309de884d60add981a9ee3a99535b64cccd35973d2386ebfa1d11b0312dd23f1008b257124de6ee4c8ec2f0c372a553d3215c81005f96e0 WHIRLPOOL 43fc565ba57b62ae46c185090ef698c336e26476d4e72ba46b0b6756799bc658c452b1422cbbd255c4ed55c972c5922389067fdc44ad57a7a5f53e1762b780dd
-DIST firefox-21.0-th.xpi 363589 SHA256 e55b8861d3678f870bb3790c0cde64ee2c865aca588d1dc535e3ccdfbd2f2e44 SHA512 7b78beedd3b27455ba4e53692f6ccac195a25ef4bd0d46a83742ff128fac3734c786a1ea365412c2949309cb597e8951e69354d5d654bb429d184dbbff17b605 WHIRLPOOL 10e377b3df4fab06400762df9fe9c004b68ac0fabbb82bc836f5c02b09e040009578764df609c08dac017570374ba84de2674de6d231aa4289198930f7844f1e
-DIST firefox-21.0-tr.xpi 330174 SHA256 12dc5f9339d21b45631221989abbff2b97635b0e54fe6ef5a94163d47f4780f6 SHA512 f9da2257a07ee2ca204b95836d58c70f8768c5d70f8fcb46ffba06895ff048ade164e9ea16eea6a73146252703ca8310a2fdc501273845bc61942d011f581e85 WHIRLPOOL b8ae73dd91996342a6efc61d1040006ef8261a4ec19f067afd323851980861d32a3f205ba8b36f813c4e110a9636427a8f1f9b9d9ab776473642b8730474e7ab
-DIST firefox-21.0-uk.xpi 359925 SHA256 dd391246136caec28f7a6cdb05f5052bf87b3b92dc50585b70bcab46307541b9 SHA512 11c227976be9113d141cba8fe350855648ec9fc63a2cb78e89a29166a3937b7da5b84b35d330758d40cbae509a1ec120520c51e19ba428b038792ca988ffbeb0 WHIRLPOOL 4011a31d373fcd3387a04b6ce62e2a42b6c1e6ddc3c72e4fcad332a20c43ef57f11826a62bb18faf6cf56f40cfa42809d3d13a73a3119cdfb8d17a1faf05cb58
-DIST firefox-21.0-vi.xpi 350534 SHA256 c24d046cb79a9bcfb5b08cf8c6dfde6ee14ce4c5188082baf39e0c5a4de70d2f SHA512 1463bcc1ee87655460d77b7a65be941ccfabe79cd1b5a93d5fe9a932b717d82f10d2e1dfa34491c38b057b503c1f261cbb89f0ded76bec0f439ea3a78f091e9e WHIRLPOOL a7b1c6dc3c131631cf10733eb015e033aa1474b9b4afc8f888f717edf6b2431f4b260d102f8ac0d90e61729d16a1a80152e74f7ba8cdcd0493879e87fdc5ce4c
-DIST firefox-21.0-zh-CN.xpi 347323 SHA256 ab29a17d43ab28c90546fcc78e60b7d426f0bd1b9b6bb0957569ed24086f501f SHA512 404cb2281bacf3220d4863fb38a7824d388a6c603e38b71b03ef5fa8e729f9fb4a1e00653f6055bf6c79c0e25a31d49a3059f602c2772b3ba846050fda0383d1 WHIRLPOOL cd5391857f3e9c9a4de246b2a8adf70d0626747845e2d90626e3e86f1af961733c945175f20f0b6cac64fc76fda2319d41ed8e9d25e4fa546016e5ae0108f587
-DIST firefox-21.0-zh-TW.xpi 341743 SHA256 aaffd78b270c95f941bcadf719db8e45e5b4dbccd5193125ac4abbec3ae947be SHA512 78465b202ce4d4f5c584a4ce47bbfc55adf715e5faf0e789a3d6797e7a2d451e9d93952d88b70e2da7fafca97664c0145adc4c1a2ae844cd1d1ac90d8beceecc WHIRLPOOL 35fe065757fe64a11cb6b5318a4e7d29135b955aadce7a3cc6f532d604b1405df29758d39d86afb3cfd4410881845eabc5f75c6942e08a66660f44a2d53185ef
-DIST firefox-21.0-zu.xpi 333719 SHA256 1ec202d0bffa5c7e0715087eb25266fa54cfba543c4677ce234a0e26d9629e99 SHA512 94a8ddbb260ff891be65b190587057d81de1971ed1dadaf678ee7e97d46ff30219014f81be7d35628985c2ec9a98a3717ffc3f8cf3117a404b7a687c5204a0b5 WHIRLPOOL 71f7c8aab5bc3f6088dbdede6da327c407398914ca37a30eae4775a45f924e19f047cddd4e01a2fe29edb3e0886d214b1ff52a158c94bb56b86a26e47c045291
-DIST firefox-21.0.source.tar.bz2 105558931 SHA256 3909031cb5d403b12c796afb7775b4950f0347786ffd06028761852a1074d91c SHA512 0607e587a03c7402b186bc6e254f79a6cc29dfdd1836d3857233a0175e0d7e9f03ab69261e98b503ae6b5b47deac8ebbb982649729e3ed4d9e646f13073e0822 WHIRLPOOL 5b0413dfa40c34447bd566a26f3f0d79bf51d4fa15d493e5d327c3dc87491848944d80b7477585a730f2a78862d7df95b1bcf1a36eb8f5a6f2935707c295beb5
+DIST firefox-22.0-patches-0.1.tar.xz 6072 SHA256 e53ab009f07e602615e11485cd54eaf8677070b9ac524dcc5efece4cfdba1e13 SHA512 69d82c2182a0b91054ef139170fc76a7962f397cbdd5fbc15a9ac98c4c39d1ab9c1d24b56ea02e99588638925e2cb57490cdd8a0fc9cc428f9c06570387c3ae3 WHIRLPOOL ec5c333f66aa9c00483818f91ad820a92293c7efbefe291d1b7e699250ec3565f2176e8a56d79b86fb1406f2fa0151cea60ef714988b14de43d405e59a4525eb
+DIST firefox-22.0b6.source.tar.bz2 111424221 SHA256 94e8fa2e0beaebe61edcc8adcb2827cbdfbba5098fa49c91dd4cb72f3f61fe4b SHA512 e9df0c683331a1e30b2ce37f4013315831ca1bb24c896fa1bd0effce61fe2c8cc7ec0b2f8440c9f896c8954dbbc8247a87060e5c07f902a9b6e969f6d2a9d7c9 WHIRLPOOL aed19ab8b30a345a2d63ec76c9cb5a7e9ba6f54883d9d44933567041aa708ee8f1e626c5f4eee948fe583af56759ac351ad2a095affc770014b9aaa36fef7de2

diff --git a/www-client/firefox/files/bug-846986.patch b/www-client/firefox/files/bug-846986.patch
deleted file mode 100644
index 7969f65..0000000
--- a/www-client/firefox/files/bug-846986.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-# HG changeset patch
-# User Jeff Walden <jwalden@mit.edu>
-# Date 1365111823 25200
-# Node ID 489ab986ea69e1ba7746e383a267483db9d861ea
-# Parent  04f2c0f0a220b409af15722eaec46304979f04ac
-#include jsscriptinlines.h in SPSProfiler.cpp so that it builds in no-jit configurations.  No bug, r=sparky
-
-diff --git a/js/src/vm/SPSProfiler.cpp b/js/src/vm/SPSProfiler.cpp
---- a/js/src/vm/SPSProfiler.cpp
-+++ b/js/src/vm/SPSProfiler.cpp
-@@ -11,16 +11,18 @@
- #include "jsscript.h"
- 
- #include "methodjit/MethodJIT.h"
- #include "methodjit/Compiler.h"
- 
- #include "vm/SPSProfiler.h"
- #include "vm/StringBuffer.h"
- 
-+#include "jsscriptinlines.h"
-+
- using namespace js;
- 
- using mozilla::DebugOnly;
- 
- SPSProfiler::SPSProfiler(JSRuntime *rt)
-   : rt(rt),
-     stack_(NULL),
-     size_(NULL),

diff --git a/www-client/firefox/files/firefox-14.0_beta7-gst-aac-mp3.patch b/www-client/firefox/files/firefox-14.0_beta7-gst-aac-mp3.patch
deleted file mode 100644
index 136375a..0000000
--- a/www-client/firefox/files/firefox-14.0_beta7-gst-aac-mp3.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h
---- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:37:25.791017257 +0530
-+++ mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:38:22.259014896 +0530
-@@ -305,8 +305,10 @@ public:
- #ifdef MOZ_GSTREAMER
-   static bool IsH264Enabled();
-   static bool IsH264Type(const nsACString& aType);
-+  static bool IsSupportedAudioType(const nsACString& aType);
-   static const char gH264Types[3][17];
-   static char const *const gH264Codecs[6];
-+  static const char gSupportedAudioTypes[2][11];
- #endif
- 
-   /**
-diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp
---- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:37:25.834017256 +0530
-+++ mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:40:04.358010627 +0530
-@@ -1865,6 +1865,11 @@ char const *const nsHTMLMediaElement::gH
-   nsnull
- };
- 
-+const char nsHTMLMediaElement::gSupportedAudioTypes[2][11] = {
-+  "audio/mp4",
-+  "audio/mpeg",
-+};
-+
- bool
- nsHTMLMediaElement::IsH264Enabled()
- {
-@@ -1886,6 +1891,18 @@ nsHTMLMediaElement::IsH264Type(const nsA
- 
-   return false;
- }
-+
-+bool
-+nsHTMLMediaElement::IsSupportedAudioType(const nsACString& aType)
-+{
-+  for (PRUint32 i = 0; i < ArrayLength(gSupportedAudioTypes); ++i) {
-+    if (aType.EqualsASCII(gSupportedAudioTypes[i])) {
-+      return true;
-+    }
-+  }
-+
-+  return false;
-+}
- #endif
- 
- /* static */
-@@ -1919,6 +1936,11 @@ nsHTMLMediaElement::CanHandleMediaType(c
- #endif
- 
- #ifdef MOZ_GSTREAMER
-+  if (IsSupportedAudioType(nsDependentCString(aMIMEType))) {
-+    *aCodecList = NULL;
-+    return CANPLAY_MAYBE;
-+  }
-+
-   if (IsH264Type(nsDependentCString(aMIMEType))) {
-     *aCodecList = gH264Codecs;
-     return CANPLAY_YES;
-@@ -1992,7 +2014,8 @@ nsHTMLMediaElement::GetCanPlay(const nsA
-   while (tokenizer.hasMoreTokens()) {
-     const nsSubstring& token = tokenizer.nextToken();
- 
--    if (!CodecListContains(supportedCodecs, token)) {
-+    if (supportedCodecs == NULL ||
-+        !CodecListContains(supportedCodecs, token)) {
-       // Totally unsupported codec
-       return CANPLAY_NO;
-     }

diff --git a/www-client/firefox/files/firefox-14.0_beta7-gst-youtube-h264.patch b/www-client/firefox/files/firefox-14.0_beta7-gst-youtube-h264.patch
deleted file mode 100644
index c9002c7..0000000
--- a/www-client/firefox/files/firefox-14.0_beta7-gst-youtube-h264.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h
---- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:48:14.664990120 +0530
-+++ mozilla-aurora-7f3c5dd8e78f/content/html/content/public/nsHTMLMediaElement.h	2012-06-04 11:48:43.970988893 +0530
-@@ -307,7 +307,7 @@ public:
-   static bool IsH264Type(const nsACString& aType);
-   static bool IsSupportedAudioType(const nsACString& aType);
-   static const char gH264Types[3][17];
--  static char const *const gH264Codecs[6];
-+  static char const *const gH264Codecs[7];
-   static const char gSupportedAudioTypes[2][11];
- #endif
- 
-diff -urNp mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp
---- mozilla-aurora-7f3c5dd8e78f.old/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:48:14.667990120 +0530
-+++ mozilla-aurora-7f3c5dd8e78f/content/html/content/src/nsHTMLMediaElement.cpp	2012-06-04 11:49:18.261987460 +0530
-@@ -1856,8 +1856,9 @@ const char nsHTMLMediaElement::gH264Type
-   "video/quicktime",
- };
- 
--char const *const nsHTMLMediaElement::gH264Codecs[6] = {
-+char const *const nsHTMLMediaElement::gH264Codecs[7] = {
-   "avc1.42E01E",
-+  "avc1.42001E",
-   "avc1.58A01E",
-   "avc1.4D401E",
-   "avc1.64001E",

diff --git a/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch b/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch
deleted file mode 100644
index 85d6999..0000000
--- a/www-client/firefox/files/firefox-15.0-fix-gstreamer-html5-crash.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-https://bugzilla.mozilla.org/show_bug.cgi?id=761030
-
-Went into Fx 16, but not 15
-
-diff -r 07d362aa2c1b content/media/gstreamer/nsGStreamerReader.cpp
---- a/content/media/gstreamer/nsGStreamerReader.cpp	Sun Jun 03 12:04:40 2012 -0700
-+++ b/content/media/gstreamer/nsGStreamerReader.cpp	Sun Jun 03 14:37:55 2012 -0700
-@@ -447,16 +447,18 @@ bool nsGStreamerReader::DecodeVideoFrame
-   for(int i = 0; i < 3; i++) {
-     b.mPlanes[i].mData = data + gst_video_format_get_component_offset(format, i,
-         width, height);
-     b.mPlanes[i].mStride = gst_video_format_get_row_stride(format, i, width);
-     b.mPlanes[i].mHeight = gst_video_format_get_component_height(format,
-         i, height);
-     b.mPlanes[i].mWidth = gst_video_format_get_component_width(format,
-         i, width);
-+    b.mPlanes[i].mOffset = 0;
-+    b.mPlanes[i].mSkip = 0;
-   }
-
-   bool isKeyframe = !GST_BUFFER_FLAG_IS_SET(buffer,
-       GST_BUFFER_FLAG_DELTA_UNIT);
-   /* XXX ? */
-   PRInt64 offset = 0;
-   VideoData *video = VideoData::Create(mInfo,
-                                        mDecoder->GetImageContainer(),

diff --git a/www-client/firefox/firefox-21.0.ebuild b/www-client/firefox/firefox-22.0_beta6.ebuild
similarity index 98%
rename from www-client/firefox/firefox-21.0.ebuild
rename to www-client/firefox/firefox-22.0_beta6.ebuild
index 964b07c..f5f8446 100644
--- a/www-client/firefox/firefox-21.0.ebuild
+++ b/www-client/firefox/firefox-22.0_beta6.ebuild
@@ -25,7 +25,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-21.0-patches-0.1"
+PATCH="${PN}-22.0-patches-0.1"
 # Upstream ftp release URI that's used by mozlinguas.eclass
 # We don't use the http mirror because it deletes old tarballs.
 MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
@@ -51,8 +51,8 @@ ASM_DEPEND=">=dev-lang/yasm-1.1"
 # Mesa 7.10 needed for WebGL + bugfixes
 RDEPEND="
 	>=sys-devel/binutils-2.16.1
-	>=dev-libs/nss-3.14.3
-	>=dev-libs/nspr-4.9.6
+	>=dev-libs/nss-3.15
+	>=dev-libs/nspr-4.10
 	>=dev-libs/glib-2.26:2
 	>=media-libs/mesa-7.10
 	>=media-libs/libpng-1.5.13[apng]
@@ -148,14 +148,12 @@ src_prepare() {
 	if ! use system-cairo ; then
 		export EPATCH_EXCLUDE="6009_fix_system_cairo_support.patch"
 	fi
+
 	# Apply our patches
 	EPATCH_SUFFIX="patch" \
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
 
-	# Undefined reference fix
-	epatch "${FILESDIR}"/bug-846986.patch
-
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user
 


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-10-31 13:10 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-10-31 13:10 UTC (permalink / raw
  To: gentoo-commits

commit:     71da92d6d9860fc1d5127adf47278f668e05a019
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 31 13:09:50 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Thu Oct 31 13:10:23 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=71da92d6

Firefox-25.0 for ~testing

---
 www-client/firefox/Manifest                        |  87 +++++
 .../firefox/files/moz25-drop-Wl-build-id.patch     |  34 ++
 www-client/firefox/firefox-25.0.ebuild             | 380 +++++++++++++++++++++
 3 files changed, 501 insertions(+)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 568608c..b76e741 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -85,3 +85,90 @@ DIST firefox-24.1.0esr-zh-CN.xpi 364889 SHA256 d379a3a7e19536a27d2c619853ec959e4
 DIST firefox-24.1.0esr-zh-TW.xpi 360655 SHA256 eb7900101d7c6437dceff4e98b605b2b648c4905a7be6ee714832fbd617a3814 SHA512 a1a2b467dd24504bb3ecc5202f78a744a546803741e2f1370640327588aeff927ecebe84523cd2743cf942e1ac7b278992ea6db83e0e243b304e97a3431f410a WHIRLPOOL cf01b3645274e6fd786c99e32b9dc9ccfb67eb4709abc81aa203db8da103a735b841cbd49878c3562a72774c8a1a6daac0eb1405abcfdbfea10e769932a4a249
 DIST firefox-24.1.0esr-zu.xpi 347838 SHA256 ba3a4384097675b79b52c26612be8e137c0af4dc092eeaa773621462a7943d73 SHA512 a63c97013e13b41d2ec31943088e8e89c2a1c54f1faf8f5bd900861472e675985e8eaf9f557fd5e6d5a0a0c8aa6e365f2c817e3f8388864da68f35d70c774820 WHIRLPOOL 19371efaccca5521dee1e5a13360ac081eaa2313d1d38c56ff2adbd2dc8cda7ee31c6b63bf55e96f7ae8c18d8ebae1206f7407edd25a647bbdbad36637c7868b
 DIST firefox-24.1.0esr.source.tar.bz2 119816789 SHA256 92dcc2bacaf00cb36004236440635613a27d1528e927d205b424a92c8f58b35e SHA512 0ddc38d98e57e0cb0b648c11a4bd43847d0327817a7cd632921a1f6509d8651ae5cca39bc2aedf8fe0513838aa5ea22b5274ec9082b6091399528fb7664fd934 WHIRLPOOL 35ce73c0a03d049bc7618321865cd8bf68fe859653d20015fb35bad558586cf4c40c6ef207332fb955c1f8937dbd5d4ef758001a5030e41b742c7c9ac83bdbbb
+DIST firefox-25.0-af.xpi 337523 SHA256 b1f6b75394b9b5531055b8aa5d43b5ea67cf90f87efc5d5b65328c947d98b701 SHA512 be92e33098abde8cd8fbfb996933c3353d8c0cf1df75463266d42fade3bff03bed45896339b2b5bdd3788dfedbaa02073f1ce04e284e8a1cff89b3331c9968c4 WHIRLPOOL c395b016f856a13340761bccd8b1f273bc35bf00df8c39ec01f83a6bc900b29178961660cacea7f7ff5c2156b3ceb36a03006b99fe2a26ee3c0fa3b200c6f068
+DIST firefox-25.0-ak.xpi 340608 SHA256 1040de78d4808c3a25d2c2bd6592ee21e6253db42d22b73b7391f7a9f2e74fd6 SHA512 70cd2b5b4d65a607bb3ff63020d6a338fb4c7f60441afc6008faebdef9ca5b96b2da447e8d1ed007af9d45a8e43b5cd54561f57f5be49ca762e8d9eb520b095a WHIRLPOOL c1c0796e7fe48a06bba1cdea53e98ba0666be05f217352576e7a0cab0b9f63795b1ff750c505ff76391b35df53d18a462513039f70351c0694150d2fc7aef564
+DIST firefox-25.0-ar.xpi 365874 SHA256 065f4423db512cbae9661ad44c338eff8589272dd4282d0ffcc6467b4203e110 SHA512 f69b285149e3a202a40d8076de75ef766dd2de133631d859201050bcd91eb695dd96365cd682968547de878564e5baed8ac2fb651a7a90310fea38dbdce0c92f WHIRLPOOL d5377390360861d03b2c1374a8e9869e5b195f52df2ae7d8c05cd981c14b6c8fd5d16ca906a16900d62a4519b092de2b853b7d328c707a49a439205416347365
+DIST firefox-25.0-as.xpi 383811 SHA256 0f2e1e1d1ce9623d5b6928c81eb45f25e426d6553a02cd1b5156bcbca97610db SHA512 ca979244a512486d46df726bfe35be9fba604bc9956366baa22d95e6da68f4797fcbbf494e5ac080325bfca2cf8effcc63b8a5066208a47c597b610b7aa998d1 WHIRLPOOL 5fcd57412bf139829cdfe64ddc7add1dbb4247cc7ddd2218713710406f1d274f2cf5099e6e5ce9d31c3560563375e47372733d4aa9e8f9e4427ed03b9ec64e01
+DIST firefox-25.0-ast.xpi 296145 SHA256 9e2b9da63a0de91511a289576fbacf590d6fe8dd1580311e3a58ff03eb85ea87 SHA512 d47144adcc1abf0d4364c4bdbbb85f58d522fc8866715556e87bcb64f0acb33d668405cdc1bcb4b2c4f6b3f053efdf3db464ea2a24c17dba9ccd9e2333ad5c81 WHIRLPOOL b9ef2252848264c63d87f05cb24e5b5e1d0d653f65ec47aec24c0bc49539182ceb324f8b5cb4f37bade3a12999485e40c6c821b00f4630fcb1db87ddbc27434b
+DIST firefox-25.0-be.xpi 323733 SHA256 1e5c9f4e7833d931b5d65014edad5cc9f66cfdeb48a8e151ca3cdc37881cdda0 SHA512 2e16a1a8e79f3089f78fa387f1f1d900e1532abd8f1a867f2a4552cc799b5842bd20071955de6924c61ff5b66757dba06286f5d264a8618fb7d8067113208d64 WHIRLPOOL a37958e2a8bf6472635d6067e774eb453bf4888d0037a742259b57a7a812a347ef1ae932845f7f3305520b4440a0a8ed1ee60253a7cd291eccaf7dceb68d21d2
+DIST firefox-25.0-bg.xpi 378427 SHA256 8fa6971aa4cf479810dd07d0d4cbaf204f8a365f6a4039561c7f966b5f633f14 SHA512 6579a54f9761716082ea6a293f8d377f60c90de589335a61714a16b79eb312415b00f822f59d9cdbacf07130ae9013982448c1768769a7d019262b452575ef2f WHIRLPOOL 9a564517aa4320a29b9fa06cda9017b31bacf7e25dfc40c1be388ef2be1673821d05ddf4ea7d4cdbcf903f16940d7a25668ae3497209c70b3f11707a984cf3ad
+DIST firefox-25.0-bn-BD.xpi 399942 SHA256 4927cd69d1942ca0b5c46efbcdaf009b9e64d79006f6f9655d165d3e8ee6a437 SHA512 fb60570404f47388dbc35914de4c9e4a6d3ecc935fe0ddb16f348338d5fc6a458c5c04b7c987268f0b06a0e521eabda64e48db58862478abef3c403bef0f279f WHIRLPOOL 554367bdce9853832bd19043f64ded7e58f9fd812f6e7baba82bdb04d14e9bfdf773712760bfc8d44aff4e159af794d1467d089482f3ddb5bf5a8691605eaeac
+DIST firefox-25.0-bn-IN.xpi 432587 SHA256 262d58103f9b74b7c8389ab737c47e88e2a154f9bcd417adc6f0ee20e1dbd7ab SHA512 593b62c74d7d781e238978ee5151b1268419743a58bb9fdd807013898bdf25380c6ed344e387f67665ed153842fa148bbf2d5845b964c38fa4ee6d166b2f2b9c WHIRLPOOL 342d117aa16f6d1c2b1458f3a778d43e7cd6ce9c359bd8abea2278c4915dc7cec2997fcf96a2fec2d80918c57533568d94e745da75b669e6d74d2a3e6e8aa185
+DIST firefox-25.0-br.xpi 335564 SHA256 833fa833d6fe1b696bd9b040973c083731d39a2c616c2ec6f83515a28c204f7b SHA512 0391aa19632b5d723e15e7627df3ff2b9c9880d8a41cb1b6127234581bd735e0d1555330df6433a6ad220a48859bc0293051dad2aa2369e36bf4f246b1934178 WHIRLPOOL 5d32e150604773fa1200720af730ec761428a4927927267fe661c92b325aa488311cbba4759db3ec40e519dbc60d574c6acd341f9dc19520384be6f9a9055258
+DIST firefox-25.0-bs.xpi 342858 SHA256 d6e9e0c7307c840e2219426482e56e7c53c761365ee43d99178dec8f8426f792 SHA512 ad0f84eb9ab825465a62a958006895a43d6e3be9747a914366bd40f8b473e0cd9c0c0901b1e94dbfd7aee0b9328e46450d2069a740e6b9504a696abe4087a40c WHIRLPOOL a8e7d9991957733aa4d50bfc1268f7d8bacea072eca27f1d31c0369020558f88146c7b092212f19d660e2bf2d012a7b39ecf97a7933a0b01f5afccd6a8e6ad78
+DIST firefox-25.0-ca.xpi 345740 SHA256 0edced68f08bbf8402b4657e85203c1dc29574f291ca6fab8f962812ed1e31a5 SHA512 f25a62131c5445e1579e535be058788b8cdce398e94357c7024298e5bd9515408e65b45476b6a9f0e01efd7f3f77796a4773abaf3f471ffa422f9a73961281a6 WHIRLPOOL 35d53be418b74d1fe08eedf38ffae596349070bdff05f5707bddcebb60c28f761e0af14950b891084d173de1325a2fe7369f28967edb4019a97798d65268e33a
+DIST firefox-25.0-cs.xpi 341127 SHA256 e1975627edad3c6891a58b483f24ddbd38c343f2b9fc9ccb1fbb550b718ce727 SHA512 72af7d0c01afbbd584725401adf50fa0cbbfaadf8d8f78642d94f4f3b075f787a92ded669fbeb2e66496783041ba312176f5c1190d423a1ba2670b26cfe8b8e5 WHIRLPOOL 7e3262fe8a487a6187538f5e02e2a59bd887508e2e021710089e522bb9a8ddc03f80365c63ae648446821c30ae05a71a9b7dfed5a1551e5105aef18485eac7d0
+DIST firefox-25.0-csb.xpi 332254 SHA256 1d1627a1b094387f8b335389a38e5283d9bff16e137a7fcc7b19acbd941cc954 SHA512 fdd91230dc0af299e9fd7fc6eae43086f1cfb8883c27df3b1487aa59c2525f968fac1bde8b38bbe3a2b8abbb02e3654ec1a13bc97145336c5616f2a282b24891 WHIRLPOOL b9ab32971ccd619e017b305c2fcba79477196f92a7dea58a9826339f03e2721649f06c10d913503cac886b8fdcac4e676aa20fc54e9e7a86b585da627bbebdb4
+DIST firefox-25.0-cy.xpi 335103 SHA256 a8af669bed2d860d8656956c1f2bbacbc9c06d6445545578ab9a9fc76061f170 SHA512 4b0143d7a55341e9fd9c3f4a0424ee6b6f87559bb404e4acbb272cecab3f08994c6c5a82628e90045b47aee90352331513de9ce59fd387d99cd92efbe7ae7a2d WHIRLPOOL cb6da43ec458caccb8c403b71ad94f6e874cc453e7231b34a7b71851ea367f1ba6cded63d3eafdf54f6890af031e5e214a111b4cd6ff2e852bf8cbbbc61ed95e
+DIST firefox-25.0-da.xpi 331218 SHA256 430499259053c2d5fa49c7bebd6d5a755a727613a9e23125219d32a058181fa9 SHA512 a0a09245e322404def3975ce0f6a5fbf64ea53a885c94ab0a30540a191a8deb8bb59e01a6cddeb7dd2977dd7c4ec839b80d97fcc99a09d4293ee5cc4565fa31a WHIRLPOOL 42575c22953221077b83976839e3baf94ada1602dc7d2da0d6d16017b00f8bb937d6c7bc31bc70e17a2c12ba902e94800821efa5df4c68a4ff625c9dedac96c4
+DIST firefox-25.0-de.xpi 328227 SHA256 cb462aa43bffd28b13305c29fccd4fc050ed3d5be470a764d8a355f6d5dfdd1e SHA512 2559ec24fae13921c01b80e50eb15f0d7d11e9f1006d58429e52e6e596e372aa485c7b8f818bee198820c72edc4a52674f2ce5e9c51efb2aa574ea9e5e6c8688 WHIRLPOOL 010cb729bb245460d35a3247794331eaece3b9289ac725adca5039b950985b2e13daf6890e80a8ff3844cfb72330489d89083e7e7069e247df2524b575b0bc14
+DIST firefox-25.0-el.xpi 366496 SHA256 e2c2dc01bef0390ece24865f279b8884d15564a01d9d1f3f5b9f0abee1e6ab42 SHA512 fafb69f1e737685f68638978ce8112672a48f59435a780e448fcc23446f4227f735195fdf2e0d4dd463db54e023db0210cf9579d81d219d7d8b1adf0290c1824 WHIRLPOOL adad8e859d7e5af4d3d2996a02077e1bc7d3568b6b86118b96784513d7e1995f01fdc6cf316679f1b5908c0980102d2d12e6fb21ca48ac4f6630d1885c68c1af
+DIST firefox-25.0-en-GB.xpi 322367 SHA256 6a5b4236d789d80c77965805649de5f5a9dd563301d5701ebff488e4074836cf SHA512 26ff05d72de14e2beb7dde335e4a5cfc5c709db543d1a32bcaa1524358caabf5fc58699263d97032c984a04718b94ce12106ddea377e9de55c924deea405f8ea WHIRLPOOL 2c9014a76465351c4fd879530108e6d48b73dcc1968a97d28f866fab908b58f387c6fd3f18aba4d9a40144290756377b5cb55637b77e316d08e0c59b9f517d00
+DIST firefox-25.0-en-ZA.xpi 324437 SHA256 5033da059dd06ad871a2d80ac8a77ea3633b50887639de250cbc4438556e83d7 SHA512 c5b97a80ae159f7dfb107fda22df961e3059755247b7bf605cd9f958fe0a47fa19313aeca02d636866011b08fa17cb5c3984e3e80ae4fa90e525bb7d05d0dbd4 WHIRLPOOL ef24f5bb9be800dbf5d62c1f7f3b517e4320fd50c3bdffc1b60ffe56b0994250ea0038e63dbbfe887d1fa75a9a6abeb4d921f781cf8b30d45abfee994c1914bf
+DIST firefox-25.0-eo.xpi 339399 SHA256 6bc7d70fc14f9f3360f35034cd41a565ae584077d7be22167c4666717b934c3f SHA512 5a64afc9b8e2a0e552f5ba330a973a8de4648dc28e6106ecb48a0bfaae7192f36cca2a94420254d5c68b612961e38c90019fda8717fda68070cf48022bf986ed WHIRLPOOL 7ae4ac08625f3a452624b42598173e4c1c16524304e6a3214752f80236bbdef1285cba4a6351f79a687c9ca782dd3c1715a9c288416a615be3b225ecac49dcb7
+DIST firefox-25.0-es-AR.xpi 338922 SHA256 693d5209fde017a0391a66233d91b0170ad89faf86594f56ad664710dd16cd61 SHA512 b7be3a6bb8fbbe09251cdd5ea43c7ab30ef31be0ee4a77ff61826c0ab2291314bd2f45016fa394877d3bff77d64efdb2cfda9dc85a7c5b29ed5b25ca957ec636 WHIRLPOOL 265c145ad1ed5545c6759ec3fa14e94eaa1d74db49084a375bae1f610172a1f4d7124988c36433ac488b3fdf40f1ceb56a5d93bc45a152655d57ae523d2b434e
+DIST firefox-25.0-es-CL.xpi 289383 SHA256 e94bd8892e2838a975ae4d6dcc8618e541e1a9f617147da7539075283406327b SHA512 1f97fdb3a4ba0e2887d8915429ef39ee7850630343196ad3763cf25bec30e62329b1c6e3eeb6a5ce2da93cd3efbdff74f50da087cd7ff3ac7e9ccfa0f84eaaae WHIRLPOOL 15f58eddc2ef847400f4ce96dea94786fd1bb99c33476eb057d353f95fe9ee27910cd9723993f52f3e92aa00f760c57d96ce78cf1e34dfbb80269d9b3aae4fe7
+DIST firefox-25.0-es-ES.xpi 280667 SHA256 bc011e8154a10d9be4bc823901b1f440ed55943df0e5d1972d431b449bf795a7 SHA512 a1062b62a09c95caeda993742aedeb5b262cae3fb4fdc82ebe0ecafe5d978d005371447da82655dc762da371b37f517f39fd633d6c0d24b4076493b24fd8712a WHIRLPOOL 1b04e07d6e3023d38f2091afac12f388a27baadce60253189eddf3f48c3de6f1e77cae53c47ec1dc6606c1dfcb801c645b85ea4c000fce3cffefdf8b12518633
+DIST firefox-25.0-es-MX.xpi 307266 SHA256 3b6b2c3bcc4db0bdffd212918cf84eccf6e57682749b2a48aaa6962f96adadf7 SHA512 bb78a6a0912ba3114a07b5ae50c1c9b46b4844ac34afb97aca08d3318181cbdff2df49d415b4667071ea945cefd3704f7e5c0d04a27a2929ef7c55ceef96996c WHIRLPOOL b241bbadd60c9ecb3d77e9ff592dcb26d104d1c38d27d44604b6731d286d0e598697b59c988622586086d9c44c73f01f4082eba08971987f105c80ae7470cb0a
+DIST firefox-25.0-et.xpi 331904 SHA256 674c72c6276dcaa5d3d812ee8c6fb59bf9425bd65a142b62b4b1e3e3dce1d3b4 SHA512 72f101119ff8a0a6046fe95c2f424da35cefa8c50a4dbb4a5710db5e394ea363459f720eadd6645073d4b6165b923cf9d4bc8d71ea7ab53778b91ef7c548b48c WHIRLPOOL aeb78bef6a4e212373cabb7db5fbea721bc4715976bdf00033b69c8fd431e794ffd3cb1863f2fa1787dd3c5ecaef281771e1d5c2c75c64750c590a6739b24d10
+DIST firefox-25.0-eu.xpi 336890 SHA256 398db9bb8672e0e5b82ecf0c5a39e19a123f101b2afbb99922d1084c012db951 SHA512 8aba31e4df8fd12ca4afebf26b3c665a32773ced4a0a5dea8a953abbd96bfb420cfb63d23d7c112bb255c4c32466231adf9f8f91b73cdaaba8d6139af34f078f WHIRLPOOL 7c1e6c79ae772a10162ee337afd16b4f711410d8064c0be49dd4ac37ba1876ffa97f91d7355498a2660501a0f12d0b78bd133e338f3a14fbecb180ed5c4218b3
+DIST firefox-25.0-fa.xpi 380482 SHA256 7cf015b521d69875c6ed29e696e166359a50f4e75a9a09f27b03d5a8888693de SHA512 c05afa5f2e1db33ae63a0ae58ae4bb1b899ec901eb910b7bbeedac88540a910fe275b83b764e62dcb84fc553ddd3f1f21430d0b3963abe8f1683c97888dedb91 WHIRLPOOL 19ddf71578960716f96c25caef5cd759947d41c06e0596dacf7207ea4b65f04e0a32ea015a69f07e9c9f5ce8b574c5f23ac2863f8054a7047c7ade46ca9e3b40
+DIST firefox-25.0-fi.xpi 332154 SHA256 6fe46784228af8faaca3ca3840e122a2d5c424199c65baaeab4953627b617282 SHA512 8c1b958b1c9bfe458ca79f0ad602f022d0df5355634f58a3dbc505a48688790cbb6e7d57cd9058c3d0371cc777b836557f4a8a94c3d2aa002583f52b5ff2a53f WHIRLPOOL 3c04036f6345e3cb6f8f01a917ea9e181f350fe02dda5014d77ccaefc94cf87fbf3fc708de3ca31d7d0f9ba5bd6a51c3b3d7577bbc33868e09124453de227cb9
+DIST firefox-25.0-fr.xpi 343539 SHA256 b6e9bfecf4a808306619f9a82b6e04a51b40fdcab9ee1672c2012cd194aba268 SHA512 9a1af70efac0897460ff2cd1a38bee9ae8566620098a287e58eb0eee17ca19f61783584dcef30db15f684d0a0430b3530663e7119d8955386f70c6330843e616 WHIRLPOOL fb86f7a29c3551dd8ca6a4811ed41b150c10e8ed7ccc4c11e1436e5e24820a785ddb3eb0f80a69d490d97c0a7b68a06e7b37f4cb5f1abb6cc17bc11d400ea497
+DIST firefox-25.0-fy-NL.xpi 341586 SHA256 78f257a1a76ba4a333b940f36b475d93387895973d0b2f8a82cba53a1815d538 SHA512 8e1764802cbc52f2dd19fdf16a7789dc23bd6dca13795b4e2579143b4dc12846343210d0c8b821b6f40931224f6d3986ec1da3d85731b07099c90c297e69e350 WHIRLPOOL 2146d4e2cab65817e47fea7bc3a7566bec9c8d2888692f50fa506789f3c78469b2a7411645a70be4cb5955def21835c0e52f4f704e0950a438f8c7285ad5b933
+DIST firefox-25.0-ga-IE.xpi 350376 SHA256 2a72626e841da23baf51e50d520f96cf8f4efc6ce4f5e16c7d42a7ed6e1f3fd2 SHA512 e6789c22da350c057c3de6c34eea56c967863c738f60fa6a9b349e8fb112df525261e3f3de1536715dac609de0aa8324b0239279d8b51a7ee4531bc0adc28bd1 WHIRLPOOL 8306b391ac5c22018ed61e553f0fe9fd1a68f7fe26346c0d1ad22fe893badaa4282a7ddc4e0f2ab1ddbf7b49641673390629a17d72c2450bd5958fa7ee418534
+DIST firefox-25.0-gd.xpi 346857 SHA256 40b72c49048358786563b182a03f446177ec8dc2a63544e4df3ec50d2eab6662 SHA512 2a7f674f8e4abf23e9966dad7aababbacd8dfd4efbb48c083e9def513b0ebf7011be86ac7d946e96e5ec7d271b5be0e34cc67e83468b25360fe806756750e66c WHIRLPOOL d133887197c7f37b3384d9cf7a5b967cb3e3b59214a644af1752ce80cbdc15ae70a72be7f3350d94a6abab7f15f7c2cd7b4fd3cb5653685b569637625f05acd6
+DIST firefox-25.0-gl.xpi 341940 SHA256 047bbc823b604ffc553c938d1ee9360857b565603f50a7c040de4bd372b5acee SHA512 823ddadffa28c2d119f2aaf8e0f76aa5c9df60c03964705f6f1a1a39dd7ef2d087328447effeea4e34e882e938f7dd5c650b6116e2a2eb677e0a074f551f9ba6 WHIRLPOOL aa61d4e39069c2e86b9404e5e746234383f410c0721c1b2075729642422034ce9a16e1b9b3e5ba8c39850edac1b7ace45366bbbded1963275b48a4a6ef7c3a80
+DIST firefox-25.0-gu-IN.xpi 365746 SHA256 34ebebd4cfd66cc7e87bdc6e9f44fde9e66d663ee826d1144cfa10fbf9b921bb SHA512 8036c71a1af12d70e7a0ab09546798ef0e3dd406237a37dfe476e100e165cb64533b138965bdf82c809875f650578cdf8b9f478b0a8a9d10544d7a8b5915ff59 WHIRLPOOL dec0a8777b7741c73f4fc0842db400c8a82c3824fc3a23d13535037a43808cd3892364484df2df3dd415c7b6e93b59bf415c4bf1e11d571ceb0811fad0aaec76
+DIST firefox-25.0-he.xpi 359421 SHA256 0890b59118084ec740b42da65a1f60d8649255581c7e43050a98856fe6f30309 SHA512 53264bab400943f4289de9d21995b55fddd70b69b7a65eaa180e351c7b21df2beb0cdade4168f4c2e51dcc175c59192eba25168ce26244d0af5c0719daaf0e29 WHIRLPOOL 4d3baba9c0fe405c0d6e464b2ebeff1e1fddeb21bcf2ef718989ea5176f530fbd3c4aa5631a05e467110453e3f2ad351f54ef2d0672db3bb7d2e258556d0611f
+DIST firefox-25.0-hi-IN.xpi 384800 SHA256 4bf7a3b3a79e9ea9ae4565d03c118a74aaa165c70a9b517195084f3989317e44 SHA512 f6818dfaf9f537655080e4166f2375b4419fbf3ad981298db1688ea3b228d22208e3b226f09c6795c2e91856b2089b48e14b814d2c2ed699cd2ea512c77b5d39 WHIRLPOOL 7b5ee03b3db75950ac27ffcce4b8a60fb4acffd6e9f2c728a5449ac467bc9adb90f1a203a56e1d47bf50d2bbf9706f6b157ec53c6f7cb9de13c6643e0f793e1c
+DIST firefox-25.0-hr.xpi 342099 SHA256 6ffa4adba132d5fd0a5022a0a6aa7a05f789199f89cf149d0c3da9b9b966275a SHA512 ceed0ce791738279d689bf1a54b5a5a00edcfaa5befded9b5fd0004e0f75d5fd7b866fa1ce0925e95daba68da032b6857af39126801fa373da71730293187e9c WHIRLPOOL 4d958f36310bb83611ea88d96f3b9576a79bf5fb678de222861ff0db7c8a8c85a1bf8ee1297dc62a5c35025539e0abce5a6e7312734a8848c24544a36bb0a721
+DIST firefox-25.0-hu.xpi 348622 SHA256 5ea95e21f644504114ec23d26f900bf4202766cd1152f647f0758c8d70f9ed2f SHA512 d6e49253172ea6123d43fe424eae36e892fa3371a8ed4609b721f5a4e738490ba47664c3d5569fbdb316c98ace8807af6e6610968efe62292c4b38761b942c02 WHIRLPOOL cb3923941b9cd6cf531544e82d931dbb7f5b907c5ff7e5319d9e6d9ba1be663f3cd5b24e39d1a4cdaf0c9a07ae4b4770c4c94bae2c035a7a97282ab3480ab7a0
+DIST firefox-25.0-hy-AM.xpi 390236 SHA256 49714aa81f3dd3b03c7354fc394a5b14a54534629dd868d4af804cbe9568eed0 SHA512 efe93c13889170efcce27fb50f84410631e58522b761c8ba5b4a0d6e1220f9e3b92159dad105a2a8b9cb183e8e23a535ca465212aac52ed3ed88852d3a9adfad WHIRLPOOL f3744d257fc35283147518f2730dbcea440bb14ad244494d626d7de4d788db28b8789c86ae121f8ac3fc3a7777c3b6cf6753bd4d6c8676d21d6faa702d5ddb2a
+DIST firefox-25.0-id.xpi 324850 SHA256 01ea71d9f126843c50c4892f09fb3c911c2cfce3a5397d631a277781cac35ff3 SHA512 93ced314777b7e1b1f393bf95f7b3d11dc9cd992b6bd9d63f80938578bffc3a66da795296b95bf4624096294eaacb18ff1da9202610804ffaafdd900cf6e4cbe WHIRLPOOL 010f44fb57e8dd04ba8a250ce7a11ce0a884937f99f7391e18c5da08b58d7fa9fee2c417b18410e4eb01a173fec0dd5684ed4102856fe70cca3a67dc09ec761e
+DIST firefox-25.0-is.xpi 336094 SHA256 203b14a18c92a50230134ce128472169860e622ea3ad63d69feaafebd81c2992 SHA512 ebec3c5bd3a3c4306a43f0692928dc42ea8e7287dc958784f8599f355ddd36b45157c966b9cf6b3e077535c304954cd8726df15338994a16e9e591c574fb0e8a WHIRLPOOL 9a2cc3784d1c959843d54fa2b4265b3220cf01110b8c80565fff457c11c7fb007e2f854412ac30ec061584e372c8fab9a774f4ec8c13abaf6d034b0df212b579
+DIST firefox-25.0-it.xpi 275093 SHA256 ad03940bdb97f594cc132ddf9ba35acece1a2e825bba8e5fb6ba224e69130c06 SHA512 4bc342383dc5138baa61049ddeaefad9087d21e7d6a2dd6c344dbff8ba4eab9abc345732d7ee4d16c20ef52f579e01fe02c649ccf62c87ab7bc7c169b4381c4a WHIRLPOOL f4da90fe913f3a506e3c270609ec6854cbe679bf2f69637c31035904afc4c805846dc56a914a5432914dd24002bc5ed583d3d5981afcb69f2a8c9ceb979e24c1
+DIST firefox-25.0-ja.xpi 375773 SHA256 3c39f196ce153574967a392af1ab9d602cf27aa0ac4664c7d6c19831d56b0c35 SHA512 ba491440c079b1f416dbf0b5fcb1ea2205094a37e8c8d542d33d62d4866dc022f7edc6441672c7b3b81ef5a7cb7f99063303605f2486bda6d88efdbdc28d602d WHIRLPOOL 3aeeb478719cb6ae1d66bfee99c24401d45223432ba4d78de3123b7b97440f36c0618b1b6ab1bced551bc57c059e26183d1502a31a7c2611f6a779bb1e44bbf8
+DIST firefox-25.0-kk.xpi 383175 SHA256 023e33fd33ecd03193ee522a5f8b49650f5e48f2382dc34392d2da9ded07f163 SHA512 2f71e723ca47fa54abc7c4a1a135a20616f0303cc478ccf352711b962dd26ac5f6a6af030a2b0d918022637f7651974a7a0d52749b5777501afb01a132ae4bdc WHIRLPOOL 3e823db7b87002b416359a752f528e1cf683a78ec0899642f4b95d9595e14b586e89041189951012c337aa5cd8dab612c3138a6882d2aa380bf3961b64a541b5
+DIST firefox-25.0-km.xpi 405628 SHA256 5059edf8d3de4f36298fdc521cbba644d44291010d413cc8aa949f37bacb5e35 SHA512 ce892c5da5d10e13e1b3e5725e7d169c288d5863ea7f261d662fc421fe9b253e34492676b9fa866f3e06a3941df9b4fdc9a8ca18dc3b4318cc004fb01b3aa332 WHIRLPOOL d88a9d1969d591ffbda5837cbd03659d5432a0d2f6898e7b5f4d7da48440bf1f8be37a6e8c3db59790bfb2b3a32c3bcde349aa3b3fe244892215d900d552386b
+DIST firefox-25.0-kn.xpi 397092 SHA256 f08119f50a7b43afe22c274ac2355dc681eaa65d67b58d3e803fd4fb97533742 SHA512 1ecb0080cd6efd9394e9e81a877ea516042fe1ebe205b2ef95feac3a3b2f216729ab9607697fdf341b20c5343ae03b89747ee5b6c116bdc565834711012dd9da WHIRLPOOL af2bb4d47726fcec68c217444279d24902d571763811e8f9cb7556d55befe8d2b255c80b0813bf280fe48b5badbc3d4c34f84b84a3fe0b20ece917865b2d58db
+DIST firefox-25.0-ko.xpi 350905 SHA256 17162ac02d87075b829eae65752137e85db741f9ab2ec8e2d04c2b887d5f2bc2 SHA512 2408483abb635276581762f893b12d5da263d2b5f9a68990bfc9fffde725224c251d61a80a4d79c23a58526130f6c911d23f33a8b2e8b361877bf2067b15a638 WHIRLPOOL 994a2ef61443e403c56109cf357509741ca720e17b70e03f36802c9394373599f57c52b77b0ceb32ddb59ae44bbffd3eb4d0398a256e04f8ebd0d5ce44faf3fd
+DIST firefox-25.0-ku.xpi 359755 SHA256 a80f19f8b1dcb864f348b07ffd1cc86031ac8794ccfe9d2e4150f45b3791f802 SHA512 9154bd4f1e617ea856ce4c3488a0cfc7e501365483c4a1e8a4cc85d7a71b51ae97e90a7582bee956c67438410ad9c32d4a959ba51ab2cbe43b376ca145682ef2 WHIRLPOOL e07be175a12fd9341f0845c592057cc363434a89f35fa7c4a5af9d85863fedf0da83d423fdd73ab170956c2c5e9674adcb4bb656d45dad207ba17dbad9555e5e
+DIST firefox-25.0-lg.xpi 355900 SHA256 e4bc0bc67d5d55103bdda18f13fb18fec221631a3c43cfaea986117d773e4d8e SHA512 f468fba61175568c863581a8577752bee3655d45cc24a3e96b103e1514d8929be097d34a3af8916998594bba09887c0a6fac63b021ed9e851d3d7f9236024d40 WHIRLPOOL e81bf4271797d6e55b41792a947e7575a94b5ea227ce91b4ef455ed268f21f0e5aafa47101e62309e4d8f22ed000faa49e15078af2b96b1aae6c6183afc74dd1
+DIST firefox-25.0-lt.xpi 357522 SHA256 60945b6d5c7683bc8c3a99f8227250faee786fa8ba9f282527d85c3e5d36afd9 SHA512 d2e1f29b7f6c07d167776ba008de9e7b0b2ceabebda6603c65e1058a893d8e176cb97476a30f9d27ee51a20fa85a8f620815bc6e7ab2cd87cc10b55d32e8d109 WHIRLPOOL 3a6318e43240315dd75d3f3ed299e1605e9a8c2f025cd00b3fe8d50074e3a65aacb1b6ea77710b7897fc6130aca4bb656daf1aa4d23477b7f01fdb22fc854a56
+DIST firefox-25.0-lv.xpi 333411 SHA256 abe18b0cf8c033549d40510e110bb4fba1614b691ad0a7c530deaaa2c3afc720 SHA512 9622e16b695667b09946f4cd5aad132e09271d0c758d0aef7906728a4ff2b9a7ac5b886b3534644bcb720de1f2740149a955965087723a73ecfd466829efd321 WHIRLPOOL f207a1a659aa4425bdfb6aacd58d003a97ad64a2664637703db99d58dd939017ed6152f2a910d45f3aaaa05ec2891411446bb95c14f3636a48e95632b68087ed
+DIST firefox-25.0-mai.xpi 385172 SHA256 0e25a52ada8762a897b2f67432fa8dacfe336bc512952a7ebf359c40e80eb7a1 SHA512 412051e528ea44557e54c1884a683070aab5fe3931712415a24645525b819bc055ca7a463f46c3ea8672f172ed5f82e9026b826ccd81681bae0586c1acf2fc37 WHIRLPOOL 2e2b4efb527fcba75b4fcf5e960bb00106ef2280d6e07e0b1ee7ab8adbb68f87273d3875b58090a84ee468e5c9b8fdcb0aaa391278c4ed01bf6d5965bd581b9d
+DIST firefox-25.0-mk.xpi 381440 SHA256 0d0ba30027a324d7af195c8af3365170098e6bcf90c87f93af6393b20878e1c9 SHA512 cab9e34c10ed633c4f3293d7bebbad822a7dcad98bcba73c1c08c279de69b32acf9f2238da523d5d0d50c86306593333f2c8d25dab570d286939bfc31a9a45f6 WHIRLPOOL 4159c073a9dbc9ee103fc3536242dbbc33ad5131e925c845a21f406cfe332c03a38ace8016c8bdb5aa6269e7bfc5da90a674164e1bb89a8517fe22664aae710a
+DIST firefox-25.0-ml.xpi 405448 SHA256 cc799ba508fd71cc6ffc7bf15377004c045a24ff9ca5f604554f5c778974cd47 SHA512 fb9fbd77b2e3f4bbe69c459fa65568f2a04054b8920560c715755ff3cf0708f5fc08b89e943a4e0a80cc08355398ba4ebace7f3edc58a2d8afa884f1101db288 WHIRLPOOL 97c287f3b054967fa00830146b25f6d04d5318924900ef89a5450ec1f8fa43c70bc2db7150f896331276ecb2e907e860e636104fa88e331af8595ee28dca798f
+DIST firefox-25.0-mr.xpi 385447 SHA256 ce47fe75e385623bff6c5db89f973226cc28043c44485422bc1184ad7138a1bf SHA512 c2ca51c5e55ceb9e7068d90799f1d132fbab98656babfd7d45dd62e94a2382fd0471a064c5efc8b331eef14511e065290760731ac6eacec4025228f4cae09aa3 WHIRLPOOL fdec3120c4b354f4e9181a9b7954a8dc1b4e59d27225e9b55347a9028102f5764a38e8584fefa529aa92fda7fb2430379ef607d894c8b4a0973b1e7f8d245642
+DIST firefox-25.0-nb-NO.xpi 331707 SHA256 badb166f625c48e73db67ae565415fb55ea6f1e240e9cc0647232072a19a34d0 SHA512 503927b8dfbcf70b98d50aaa03e0fdaaabe56c01333e1a0f48c49606d0b688fdefffd84825eb3b19ca2adef68c335d7b09abc4ce1aefdceb97354c918da2b011 WHIRLPOOL 31d5d42213c5dc25488add0c856dc38a8f6f63b1d6354959c1d7891b13eaee45bdb2c302b7c7f3ec2a4759c804953614f583d996ddfbee75b7a515bdf7f53ba6
+DIST firefox-25.0-nl.xpi 336247 SHA256 9673e531ee0ffd9521c9ed2b9ca3f866a18de872411408e349ace1232b61468a SHA512 15e7866a9c3a05ec6250d1428604fdc74a58c651bc59fae266c2da2ecc97cf5e4c5db22e0acfcd6a8704ae0662940159f64f90edf2f5bbb7ed01423890d3557e WHIRLPOOL 0a376dbc870d44af260aa7cf079754e5d6c2ea3ae875a051a72c435bb170264222c5eb90dde0c8103f32402b3816cf8815f0c4239b3cf18d416aaebda02f76ca
+DIST firefox-25.0-nn-NO.xpi 332940 SHA256 8ce93d94fb7333edb9cef192a46e89174d8cc49766825472f70c3d7d42972ce6 SHA512 e7f6066965304986a47c9ce0e4e44f6b5164bfb6837d24099ab4f40f0aa4022d4bf543c907b9a943b19e40ab8f2289f375d8cc04eec340ba73d8dc4c0776c2c3 WHIRLPOOL 68cf862d19ca7fb63eba60c298b91a757805a3f5ba232b6ea8f5d0848326711aa89a446d917831b321f5f8ba7cd299ac33f871cba08962e955f65a0fcf736dec
+DIST firefox-25.0-nso.xpi 341523 SHA256 2a46e3bd80f79b64c30ea56a60c3e6f3a0469e5034c735962864ceef095b8d6e SHA512 ed10070c8706bf3ae3b9b0f861497099c51bbcfa778fb76230a06516787926a6375ea880dcddd3b8752da5d9c41b4d620cefc9a238cd9b9e7fa09ae26fbccd3a WHIRLPOOL d178eb2bd25c04c1eefb4bbf3968a7e4a97c254e7cdf7bca37c77ca2cde12ddda7ae23c7b007ec74aebf4a3e9eb293260e80b0485d174fb9cf599d0e53d054f9
+DIST firefox-25.0-or.xpi 370901 SHA256 4093e6a122c50148eaaf72a59d0efa315aee7ca4962585f9d0e381598f08c305 SHA512 8d664663e12f0a39a08e914904ea86d2603a0d62fe7e0e005bc98dcfd55a1548a49bc2e83d705d06b3c9fb8e0931e2ea105681c84c66528bb3de7994fab73f7f WHIRLPOOL f1c5493c7ff24aadce416749d73fbb5c75f7330a450f8ebe308b58b7acf96ba751462e756c8094b636f89311be4aeafbdc2273b05640b61492eacc74bcc09be0
+DIST firefox-25.0-pa-IN.xpi 370128 SHA256 e040f4a1ec159ff4705ac21ad492835f0ad87e9d0394866b2b14ccc8d21e4d80 SHA512 9b76905d354079c956bda77b72073acb89b12aa60814e8b2809738f188bcd9570c0c02a2c438872c80e0b792daf379b07d11984fec72a0dd570fbc0e91c2acc1 WHIRLPOOL bd2d5f60af29e07a3e003f37400d0f13c4a561b484baf63145883170a018efc41bad4bad61de28c91175e2e6964f01112330c14ff36b9fcc3f4b04b11bd70791
+DIST firefox-25.0-patches-0.2.tar.xz 7284 SHA256 351a2dc8d051ab251f060052cec396a85893de1a3d953d2bd277d08f4a340ab4 SHA512 9d0940c9c852aa090cb3886c504c50c1089b80a752199a98a45d5986950b3caca500cee159873691ede50fbacc73e0c3b18e5f11ec9bdac26e6704e86d3b618f WHIRLPOOL 96d2191bb537bbd4345d7a2f87f2b7b93b435d3e91c547394c265cb800e2fa796266b9a49ed89a16e48682bd6411841c6ccfacd00c292f4050f1a0f1129b95f8
+DIST firefox-25.0-pl.xpi 342013 SHA256 6770cb1e255082f78ffd2f3637693a891a61cb51c93cdc87804b88a988e3c77d SHA512 563edeb1465263e94402727f1aad0737b9c8dabdbba75b38845ce8139365e6f687a8d2bc45ffc35d7acd20d4134a2885514da0c6d6eb70d4ba28d8cf153875d7 WHIRLPOOL e2bbf5cc92d4cc9a8b37fb1c8418c612b7e1ea2afd83e93794ae89bce08f60fa1586648eba3fe5ea3804bb36550e82f60376372431b01b4d7ebedf3781c32b9d
+DIST firefox-25.0-pt-BR.xpi 339035 SHA256 2db8e2904331b559dad102c4f4bf0444643ed162e6d6d6853802a14991df3f86 SHA512 7930788617e1c90fce9fb25ffbbc96d6cecd72fa201af82d9e2d2138bfbbf328f9a7cf18ad5c0f02f481ee0d7fcceffa50f25eda143e1fed3675dffc3145f1d5 WHIRLPOOL d8a33e05f908121eea10bfa6dcfa436e40796badd2d3998ef9c76342f30f82c7bbef1663b4ef184574fbb555233618f77cb9d5a39aae43aa8addcce664feea9e
+DIST firefox-25.0-pt-PT.xpi 337163 SHA256 41d73bc8c90cd4c5a67359c68a042ff32825e0736b5481c7998e55720a8c3f54 SHA512 0d7bb46824c6e5ef8e606a6fc4bbbd9f36241f56f93c883a3d2c2496e93d882e048ff30adb2948d3cfd9a05ee0c45d6c239e09b97e77c70fefcb3c1d73bbc1fd WHIRLPOOL 86ad9e3b8914a59543d70c7b04ff1c4cc67f97ade03e82dd4dc85cd7775c42538f9a42c254d91e49c736c264207069f0b91f3414a2a9436783e3e76cbe677152
+DIST firefox-25.0-rm.xpi 338411 SHA256 01a445dbff142201c5a26608a85614b85bbcf07b3f37432c00a5c9cdf25da3f8 SHA512 9b63512994cda1ac61f5aa132839e05b5aec9d125af2c363ed7d674a0e45a52c6877dc05bbb85dfa4f9f8db26d81af9c006c54ce0f574110b367104597acadd3 WHIRLPOOL 9787e3e535d5d562791378b781df69e145b5e5f46e93a51621622ae96f97ef644cf1e267923fc7895033c37ea9e715d7732a2d73a7146df3ffebc2a5ae382e05
+DIST firefox-25.0-ro.xpi 367206 SHA256 6bf644689598a8fef7cf3b931612cd40f9f4c1904746dd959ad7e1c26a71aa89 SHA512 27caaf3e067f5eb9702148f1ff480fc67e7c827d6eb02e3de96e549d36d4f6490a528112599bfaba71c5c75d1ec438b5060805fc5f552be32bbb6a987dba2ced WHIRLPOOL be0476dcd08e7315ecb4c25d90663a3f7671e80ec003e81e32fc6818698ff3a3290d0d640acbdae4d896ad8cc51c0ec8bb04c05de788e65d53f3a9af7971192c
+DIST firefox-25.0-ru.xpi 326389 SHA256 472f5c889b5a52b00bb2bbefdc5faf91b7645722d8ded36b1e4723f65811ecaf SHA512 dcd9e71450ad9ad8a4b125ddd79cdf83f068e5bda93b729084e1d8bc6d53fa02d6eb9ef220d0a9bf5bbdb3085f6b59901cfb0821d37fdff56803e8ed4c6c3e03 WHIRLPOOL b298cfb398abcf8307057ea2d0604f73dbf7cfe4bf2513ca6d51f7e1b10bfb97add2a909331652dc6e5bcb39832cff2cd46ec88fed475733a3872484de42ec9e
+DIST firefox-25.0-si.xpi 377197 SHA256 d2ead64714e8108eaeacd6646e58c7c4acfcc9506c01ce3e2e9c6ad02447894e SHA512 3a9ae26859de6d482b54cb82486a9799d59194fd8433aacd959b09b41fba117e819496e7060950e4541b868a0368f3481fb24ccc58272a24df7c012bc3e8087a WHIRLPOOL 758c28a0fc993da65a197790570084481dc2de7f060f5988f422d0bad5cadc6eba21bdad9766247ec5765cdf0e091ab4e633582c6e3b5102c9d09a326b1f2325
+DIST firefox-25.0-sk.xpi 352372 SHA256 d331a9080edff70ecd6642c2e38a3bab42fdb811ec2081f6fe827cd70a5135f4 SHA512 8d624c578ee9f5ea10f2fcd7cf67803776c38c33d65f7d4bf5ab021f7b083d7f2086d9b18736b510263206538be1909674f30eb5c87c1e42b13fc3804f07c192 WHIRLPOOL 00e6ccc7cb659f01165b96c3ea479892af20b4717265a2a41c52e06b56272dfe56c67667e6d25628c2f4802b93b1c942f42ffb78a990e66d5eeb0fb0a0c7ccea
+DIST firefox-25.0-sl.xpi 336782 SHA256 3c74ee0af31d2997fb6cf38a1b9953019f8d12ff3704337bf6659768b2fc6285 SHA512 a3d43b3da73242d9debf0a07dba4d54ac63ed9532deda52057170a73d56bf7fc18581e5ee445acd00662966cb5f55ac8821b7b96592475a66dada787f929ff35 WHIRLPOOL a8fed20c406c5f7b9e64731c5f0c23bbb76fe189138b21202e1833d1c9fc7fa2161daccda66ea37e83e539bcea2ab62f7a191bbed1e599fb79b1a9b04605ec54
+DIST firefox-25.0-son.xpi 334537 SHA256 6d3bdea5e77ec26cc3d087c04b536118561ef001649050788396b085e86d1147 SHA512 8a7b6f7f6e6a871e3907b7c6090e9301c4ac057205471993a2c6970c8e27e81f115b8332b99b2b2bf84b2c6a10e5737e28cfe28f9d48f157e4794a3c809acc17 WHIRLPOOL 391d90a298309e0d1b09fc3fa393bd9955c137995b541015bccbacca83af99572ed5374e834783de97cbe5642ce8f337eed378784815ad711fa079ca899b54aa
+DIST firefox-25.0-sq.xpi 345881 SHA256 39518d0e9c7695447e68c695a6ef3a6687817bd0765f5d01149c61fc6a271902 SHA512 38f9a171c0f05a20d55e08bf2369de74cd6412110b0d59d2f4607d15df70559562cd7dca8e8dbc1095fabcd9b26673558f41cb2b7ac8e376e0a60c93bee157ad WHIRLPOOL e47f8a5f40924746f61b8ebde5e90e8dc2c8bb0cad5b7f10579c674e6964ae938010a43d2be25300ec3bda6ec28b8cbb923218e1a7d8902b29060bb6e45bfc66
+DIST firefox-25.0-sr.xpi 389358 SHA256 9f41425288f70ed793333f36004a675997cbec4b61d259bab7e9547055699b88 SHA512 9e0df2512d5ec0363e1b94e229efe1eda4648d397adf0b4b16b5988a1b1c9c1fd83c300766b1d266640ebd70c1d2ab884dafd0a79e6e3e55b7a075f42a9a7425 WHIRLPOOL b22e96b980c78f31c230e8bfb1374953c6d9def887bb7150a564fbb84fe633c753301593c543f8da68f3f3030c384c2e6f17ffae06a7c472ad1d5b56172b59ee
+DIST firefox-25.0-sv-SE.xpi 337972 SHA256 5ad378fadde14523763bc3a48345332b5d4d30fedbb42098b5e87fb0481ceb1d SHA512 bc6b9b07b06b33d8e93db390f5aaaf52d2d9348231b5764a99f1b8fc22d0a6e88bcae7adfcf4488adb211a277e5d1e18b8afae514d8b054d5295cab8c1d86a12 WHIRLPOOL 97ec6250073710a9ae66c1570a13b790189d7d83e4ab6a6bf2eda3648b876d195cd4f85465f40d8781e572e38feaeeab81b769ca82d3b51450dfc5c26a9633f3
+DIST firefox-25.0-ta-LK.xpi 388329 SHA256 6f91f4ec09944ba1c5e75519b06be9706081d70b5ff45a0de3bf147220c8f771 SHA512 e251671819178e2a734bf048884b2ac94fc1e3c4cda21a880546d0d452ce71f0dacbaeb90455f1c9ea469abc46f37dfe9181fdcada0919984aba11bc6a730a0e WHIRLPOOL e2b981fa161575f60f08fdf5866300fb5c63ace15a3f980a1f260ac73a6a05edc7b18007a6cd0edcdf71c307546f221352a0c1680d3786437d613d6c760c9fe8
+DIST firefox-25.0-ta.xpi 387412 SHA256 d583b211e84fc1dfc595de4a30bb68ce738d396871023d1e008218d3ca8487ab SHA512 501a92db1fc38aeff08d4d929e25e083fb4f812438afc8dcf3471eca234ffb92cac2feb278d35161938fbb24213e224fdaa2132bd2b906ab70465edbc3d760d6 WHIRLPOOL 4b0b5daf895a77541cc0e8a4686c0a75b82314ef28746a64be7288ba8b762a4c821041706864206fcc6e528d5f90ebab5f185d226fa52ee1e770a83eb4cad86a
+DIST firefox-25.0-te.xpi 400288 SHA256 f6e2bfbe3b8fe85ccb0ca9f777cb0434201e188a702a6698557769dfd56c6532 SHA512 1dba35999736fca5fb4574dca197dfe42641eb52d3b176f67b6d17e6d513f333b368340c810be022893a8fd4fbdd634ee352fa37a9df73e3c995d96fff7d5972 WHIRLPOOL 434b731179f7a4164311b77413fb65087c45167288f887b98513b048343e9c794a341505d8f25e0a990e6d57d0e754cfdf7a47b28ca3d19dad3376a8cdc2afea
+DIST firefox-25.0-th.xpi 383265 SHA256 9c2d80d460efdc1e19ec1e1b4779f6f7c2a6a982fe392d3eb5792c0656ffa41b SHA512 2a0f0c068b99a462b82780005dc2c8d197262e59f0dc21bc52693505b1207ef9586965527d5452a656dc18faa7c58c48b90c6fc2e2cb2eec0045333ae6dfd88f WHIRLPOOL b04d47f7abecdcb0b0ce49c8e58af0c726ce3f611d215f14c77ae38005468ef19a61456d1e4624e9f5429acf30450e1aa651e2d25732da0ca916c1e7bbc232a9
+DIST firefox-25.0-tr.xpi 345007 SHA256 32c38bad2c5874e3445d84f3ba9d6e56a2d013cc2e0c28e8e72d644f8d5b528c SHA512 b40b6dfb4e6dc037bd7c603435b63a85a5b3456bbb39378c207fe9001414950e698da1e380ef65bd76b5d1394099024e80c4c5a3ee86bcaf6832180e77a27824 WHIRLPOOL 01d63a4486307c2aa7b132c86ae7527f18291adf0825d9cd72c95718b47df4da65b4ecd1ecc8f2c155380d1ff247896ddfe4eb2d5076213d40171f3a221fd34f
+DIST firefox-25.0-uk.xpi 371149 SHA256 8759767c9456f21e3338a3be52c65cee532e760becc20903648df405ea53b8eb SHA512 12c806b0bf25ea85e45849fac2bb3818bc8588b7d5cb959bcce877d5c3b0763d4e3e0be9e9902da71abef16ccd495aa5a3a26e9b8fdb62fc665e81bb2b9b74cc WHIRLPOOL e54dc09ada46b316dddeaa26a29b4d2c74b29e8727a1c2060d4c4226aced620f1e617c04baabe7f78df1995966f28027b91b0c03165a57fdb96aa1e11dfb4cbc
+DIST firefox-25.0-vi.xpi 364103 SHA256 2c0f4ee5dadd19fea118d8ba5317728ea5267296656d7ba607c0216a6bd38198 SHA512 d4785ec367f2f4d3eaec9f2a0f56b5d283c13e4b9fd2621f131b47d0bec8e0785b16de0b3698dff8a6098075ac1c1c46593aa3e7365196dfe98c7354f72b95c9 WHIRLPOOL 9cd2156b0e250977e912bd1f6072278fae8677d79d9e88d389f63c9049599ce0be7dfa98338f5001be2d4790009fbd1de750db7b54bbe7861b591efd0facccc1
+DIST firefox-25.0-zh-CN.xpi 363975 SHA256 49d47c1b008cdfe1737093fb802f37de586d873e29ef6aa43f965b2e2f879b35 SHA512 e5ace7f88d9c0c86d8f5f1c502e2fedff760492df62bab8a9996eac7efbc4ed43d688fc41cbeebf63fed149424b345162eb574fc521fe9bde4f108f0eac68f29 WHIRLPOOL e1407a76ae63077dd164aa2e096ea0d4d1835ddc4f202e13d1807f807691ff4bf9999a6e531957b09b1f98f46836921c189c764e8e3be123cfb5206c8f5c399d
+DIST firefox-25.0-zh-TW.xpi 356557 SHA256 34f1f86cbc370f8b85a07da3170099a0fe6bce1f0b367972bb7cb6c7f390983e SHA512 c5e5f95b3827ce1459117522081e670709ab72b1ec0c16a388a6579161a9c2d65c2b1b6e345777170a216536896543ed9ad73ff06c7f8555d398c188e0c15871 WHIRLPOOL fc690e41497d2eb33773c0c3b7416f898b547e510b05f661a102eb3926505d1055b4a07a68fb3e352f0b1ded8ef0256ecceb656f247ea9f4a71819af01fed4e0
+DIST firefox-25.0-zu.xpi 346212 SHA256 ca32c7e028a56c9b0f43dc479f6ec5250c5fc89a18d657a448bf282598858ba9 SHA512 0fa98cc52d995d11ba2c0033e8415f3792120912dea64e4080cbf33bdc03ce9ec1d795baf697f6d232974e92cc145f2fe4ccef7ab163fb5350a4cfd7139e62b1 WHIRLPOOL 830808b7e9739a6f3733ffbea1cffd83661367988a22471355180fd7e322afacabf6250f614f8453ab4d596cb0433741462fc2bc84f12935bfa9cf2413c08f89
+DIST firefox-25.0.source.tar.bz2 127524815 SHA256 5463cc625ac2a06d4d33b43dfb6365da830eef11f3ef5c0512714baaded59272 SHA512 debec2cc87da1e68739ddadcb35a027cf6f980471c85ea2e6a85f5b0b4861415659c74b5e57b6cb06bcdf6ecf4722e1c08d98a4256aefdf5bf285c9806f5a13f WHIRLPOOL 4df6bc4c384044698329d38ae2f7a28f7ac0e2c9632f3e3468c63937721ba5e555957ff8c416ba7f0a81b0161a53b5759df3f5f6b5cf70d6859b043e895cfc12

diff --git a/www-client/firefox/files/moz25-drop-Wl-build-id.patch b/www-client/firefox/files/moz25-drop-Wl-build-id.patch
new file mode 100644
index 0000000..221566c
--- /dev/null
+++ b/www-client/firefox/files/moz25-drop-Wl-build-id.patch
@@ -0,0 +1,34 @@
+--- comm-beta/mozilla/configure.in
++++ comm-beta/mozilla/configure.in
+@@ -1285,15 +1285,6 @@
+                   AC_MSG_RESULT([no])
+                   LDFLAGS=$_SAVE_LDFLAGS)
+ 
+-    AC_MSG_CHECKING([for --build-id option to ld])
+-    _SAVE_LDFLAGS=$LDFLAGS
+-    LDFLAGS="$LDFLAGS -Wl,--build-id"
+-    AC_TRY_LINK(,,AC_MSG_RESULT([yes])
+-                  [NSPR_LDFLAGS="$NSPR_LDFLAGS -Wl,--build-id"],
+-                  AC_MSG_RESULT([no])
+-                  LDFLAGS=$_SAVE_LDFLAGS)
+-
+-
+     # Check for -mssse3 on $CC
+     AC_MSG_CHECKING([if toolchain supports -mssse3 option])
+     HAVE_TOOLCHAIN_SUPPORT_MSSSE3=
+--- comm-beta/mozilla/js/src/configure.in
++++ comm-beta/mozilla/js/src/configure.in
+@@ -1096,13 +1096,6 @@
+                   AC_MSG_RESULT([no])
+                   LDFLAGS=$_SAVE_LDFLAGS)
+ 
+-    AC_MSG_CHECKING([for --build-id option to ld])
+-    _SAVE_LDFLAGS=$LDFLAGS
+-    LDFLAGS="$LDFLAGS -Wl,--build-id"
+-    AC_TRY_LINK(,,AC_MSG_RESULT([yes]),
+-                  AC_MSG_RESULT([no])
+-                  LDFLAGS=$_SAVE_LDFLAGS)
+-
+     # Turn on GNU-specific warnings:
+     # -Wall - turn on a lot of warnings
+     # -Wpointer-arith - good to have

diff --git a/www-client/firefox/firefox-25.0.ebuild b/www-client/firefox/firefox-25.0.ebuild
new file mode 100644
index 0000000..d114c25
--- /dev/null
+++ b/www-client/firefox/firefox-25.0.ebuild
@@ -0,0 +1,380 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-24.0-r1.ebuild,v 1.7 2013/10/26 02:13:18 anarchy Exp $
+
+EAPI="3"
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=(af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr
+fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku
+lg lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro
+ru si sk sl son sq sr sv-SE ta ta-LK te th tr uk vi zh-CN zh-TW zu )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
+
+if [[ ${MOZ_ESR} == 1 ]]; then
+	# ESR releases have slightly version numbers
+	MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-25.0-patches-0.2"
+# Upstream ftp release URI that's used by mozlinguas.eclass
+# We don't use the http mirror because it deletes old tarballs.
+MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
+MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/"
+
+inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-3 multilib pax-utils fdo-mime autotools virtualx mozlinguas
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="http://www.mozilla.com/firefox"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist gstreamer +jit +minimal pgo pulseaudio selinux system-cairo system-icu system-jpeg system-sqlite"
+
+# More URIs appended below...
+SRC_URI="${SRC_URI}
+	http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz
+	http://dev.gentoo.org/~nirbheek/mozilla/patchsets/${PATCH}.tar.xz"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+# Mesa 7.10 needed for WebGL + bugfixes
+RDEPEND="
+	>=dev-libs/nss-3.15.1
+	>=dev-libs/nspr-4.10
+	>=dev-libs/glib-2.26:2
+	>=media-libs/mesa-7.10
+	>=media-libs/libpng-1.5.13[apng]
+	virtual/libffi
+	gstreamer? ( media-plugins/gst-plugins-meta:0.10[ffmpeg] )
+	pulseaudio? ( media-sound/pulseaudio )
+	system-cairo? ( >=x11-libs/cairo-1.12[X] )
+	system-icu? ( >=dev-libs/icu-0.51.1 )
+	system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+	system-sqlite? ( >=dev-db/sqlite-3.7.17:3[secure-delete,debug=] )
+	>=media-libs/libvpx-1.0.0
+	kernel_linux? ( media-libs/alsa-lib )
+	selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${RDEPEND}
+	>=sys-devel/binutils-2.16.1
+	virtual/pkgconfig
+	pgo? (
+		>=sys-devel/gcc-4.5 )
+	amd64? ( ${ASM_DEPEND}
+		virtual/opengl )
+	x86? ( ${ASM_DEPEND}
+		virtual/opengl )"
+
+# No source releases for alpha|beta
+if [[ ${PV} =~ alpha ]]; then
+	CHANGESET="8a3042764de7"
+	SRC_URI="${SRC_URI}
+		http://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2"
+	S="${WORKDIR}/mozilla-aurora-${CHANGESET}"
+elif [[ ${PV} =~ beta ]]; then
+	S="${WORKDIR}/mozilla-beta"
+	SRC_URI="${SRC_URI}
+		${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2
+		${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
+else
+	SRC_URI="${SRC_URI}
+		${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2
+		${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
+	if [[ ${MOZ_ESR} == 1 ]]; then
+		S="${WORKDIR}/mozilla-esr${PV%%.*}"
+	else
+		S="${WORKDIR}/mozilla-release"
+	fi
+fi
+
+QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox"
+
+pkg_setup() {
+	moz_pkgsetup
+
+	# Avoid PGO profiling problems due to enviroment leakage
+	# These should *always* be cleaned up anyway
+	unset DBUS_SESSION_BUS_ADDRESS \
+		DISPLAY \
+		ORBIT_SOCKETDIR \
+		SESSION_MANAGER \
+		XDG_SESSION_COOKIE \
+		XAUTHORITY
+
+	if ! use bindist; then
+		einfo
+		elog "You are enabling official branding. You may not redistribute this build"
+		elog "to any users on your network or the internet. Doing so puts yourself into"
+		elog "a legal problem with Mozilla Foundation"
+		elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+	fi
+
+	if use pgo; then
+		einfo
+		ewarn "You will do a double build for profile guided optimization."
+		ewarn "This will result in your build taking at least twice as long as before."
+	fi
+
+	# Ensure we have enough disk space to compile
+	if use pgo || use debug || use test ; then
+		CHECKREQS_DISK_BUILD="8G"
+	else
+		CHECKREQS_DISK_BUILD="4G"
+	fi
+	check-reqs_pkg_setup
+}
+
+src_unpack() {
+	unpack ${A}
+
+	# Unpack language packs
+	mozlinguas_src_unpack
+}
+
+src_prepare() {
+	# Apply our patches
+	EPATCH_SUFFIX="patch" \
+	EPATCH_FORCE="yes" \
+	epatch "${WORKDIR}/firefox"
+	# drop -Wl,--build-id from LDFLAGS, bug #465466
+	epatch "${FILESDIR}"/moz${PV%%\.*}-drop-Wl-build-id.patch
+
+	# Allow user to apply any additional patches without modifing ebuild
+	epatch_user
+
+	# Enable gnomebreakpad
+	if use debug ; then
+		sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+			"${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+	fi
+
+	# Ensure that our plugins dir is enabled as default
+	sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+		"${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+	sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+		"${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+	# Fix sandbox violations during make clean, bug 372817
+	sed -e "s:\(/no-such-file\):${T}\1:g" \
+		-i "${S}"/config/rules.mk \
+		-i "${S}"/js/src/config/rules.mk \
+		-i "${S}"/nsprpub/configure{.in,} \
+		|| die
+
+	# Don't exit with error when some libs are missing which we have in
+	# system.
+	sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+		-i "${S}"/browser/installer/Makefile.in || die
+
+	# Don't error out when there's no files to be removed:
+	sed 's@\(xargs rm\)$@\1 -f@' \
+		-i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+	eautoreconf
+
+	# Must run autoconf in js/src
+	cd "${S}"/js/src
+	eautoconf
+}
+
+src_configure() {
+	MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+	MEXTENSIONS="default"
+
+	####################################
+	#
+	# mozconfig, CFLAGS and CXXFLAGS setup
+	#
+	####################################
+
+	mozconfig_init
+	mozconfig_config
+
+	# It doesn't compile on alpha without this LDFLAGS
+	use alpha && append-ldflags "-Wl,--no-relax"
+
+	# We must force enable jemalloc 3 threw .mozconfig
+	echo "export MOZ_JEMALLOC=1" >> ${S}/.mozconfig
+
+	mozconfig_annotate '' --enable-jemalloc
+	mozconfig_annotate '' --enable-replace-malloc
+	mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+	mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+	mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+	mozconfig_annotate '' --disable-gconf
+	mozconfig_annotate '' --disable-mailnews
+	mozconfig_annotate '' --with-system-png
+	mozconfig_annotate '' --enable-system-ffi
+
+	# Other ff-specific settings
+	mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+	mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
+	mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
+
+	mozconfig_use_enable gstreamer
+	mozconfig_use_enable pulseaudio
+	mozconfig_use_enable system-cairo
+	mozconfig_use_enable system-sqlite
+	mozconfig_use_with system-jpeg
+	mozconfig_use_with system-icu
+	mozconfig_use_enable system-icu intl-api
+	# Feature is know to cause problems on hardened
+	mozconfig_use_enable jit ion
+
+	# Allow for a proper pgo build
+	if use pgo; then
+		echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
+	fi
+
+	# Finalize and report settings
+	mozconfig_final
+
+	if [[ $(gcc-major-version) -lt 4 ]]; then
+		append-cxxflags -fno-stack-protector
+	elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then
+		if use amd64 || use x86; then
+			append-flags -mno-avx
+		fi
+	fi
+}
+
+src_compile() {
+	if use pgo; then
+		addpredict /root
+		addpredict /etc/gconf
+		# Reset and cleanup environment variables used by GNOME/XDG
+		gnome2_environment_reset
+
+		# Firefox tries to use dri stuff when it's run, see bug 380283
+		shopt -s nullglob
+		cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+		if test -z "${cards}"; then
+			cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
+			if test -n "${cards}"; then
+				# Binary drivers seem to cause access violations anyway, so
+				# let's use indirect rendering so that the device files aren't
+				# touched at all. See bug 394715.
+				export LIBGL_ALWAYS_INDIRECT=1
+			fi
+		fi
+		shopt -u nullglob
+		addpredict "${cards}"
+
+		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
+		Xemake -f client.mk profiledbuild || die "Xemake failed"
+	else
+		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
+		emake -f client.mk || die "emake failed"
+	fi
+
+}
+
+src_install() {
+	MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+	DICTPATH="\"${EPREFIX}/usr/share/myspell\""
+
+	# MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc.
+	local obj_dir="$(echo */config.log)"
+	obj_dir="${obj_dir%/*}"
+	cd "${S}/${obj_dir}"
+
+	# Pax mark xpcshell for hardened support, only used for startupcache creation.
+	pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell
+
+	# Add our default prefs for firefox
+	cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+		"${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+
+	# Set default path to search for dictionaries.
+	echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
+		>> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+
+	if ! use libnotify; then
+		echo "pref(\"browser.download.manager.showAlertOnComplete\", false);" \
+			>> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+	fi
+
+	echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+		"${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+
+	MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+	emake DESTDIR="${D}" install || die "emake install failed"
+
+	# Install language packs
+	mozlinguas_src_install
+
+	local size sizes icon_path icon name
+	if use bindist; then
+		sizes="16 32 48"
+		icon_path="${S}/browser/branding/aurora"
+		# Firefox's new rapid release cycle means no more codenames
+		# Let's just stick with this one...
+		icon="aurora"
+		name="Aurora"
+	else
+		sizes="16 22 24 32 256"
+		icon_path="${S}/browser/branding/official"
+		icon="${PN}"
+		name="Mozilla Firefox"
+	fi
+
+	# Install icons and .desktop for menu entry
+	for size in ${sizes}; do
+		insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+		newins "${icon_path}/default${size}.png" "${icon}.png" || die
+	done
+	# The 128x128 icon has a different name
+	insinto "/usr/share/icons/hicolor/128x128/apps"
+	newins "${icon_path}/mozicon128.png" "${icon}.png" || die
+	# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+	newicon "${icon_path}/content/icon48.png" "${icon}.png" || die
+	newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" || die
+	sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
+		"${ED}/usr/share/applications/${PN}.desktop" || die
+
+	# Add StartupNotify=true bug 237317
+	if use startup-notification ; then
+		echo "StartupNotify=true" >> "${ED}/usr/share/applications/${PN}.desktop"
+	fi
+
+	# Required in order to use plugins and even run firefox on hardened.
+	pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
+
+	if use minimal; then
+		rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} || \
+			die "Failed to remove sdk and headers"
+	fi
+
+	# very ugly hack to make firefox not sigbus on sparc
+	# FIXME: is this still needed??
+	use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \
+					 -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" || \
+					 die "sparc sed failed"; }
+}
+
+pkg_preinst() {
+	gnome2_icon_savelist
+}
+
+pkg_postinst() {
+	# Update mimedb for the new .desktop file
+	fdo-mime_desktop_database_update
+	gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+	gnome2_icon_cache_update
+}


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2013-11-01 13:14 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2013-11-01 13:14 UTC (permalink / raw
  To: gentoo-commits

commit:     aad9d7869e1120a35fe8b5073f8e708cfdcbfcd0
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Fri Nov  1 13:13:35 2013 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Fri Nov  1 13:13:35 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=aad9d786

Update patchset to include symbols version fix and move build-id patch
to patchset

---
 www-client/firefox/Manifest                        |  2 +-
 .../firefox/files/moz25-drop-Wl-build-id.patch     | 34 ----------------------
 ...{firefox-25.0.ebuild => firefox-25.0-r1.ebuild} |  4 +--
 3 files changed, 2 insertions(+), 38 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index b76e741..67a5522 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -147,7 +147,7 @@ DIST firefox-25.0-nn-NO.xpi 332940 SHA256 8ce93d94fb7333edb9cef192a46e89174d8cc4
 DIST firefox-25.0-nso.xpi 341523 SHA256 2a46e3bd80f79b64c30ea56a60c3e6f3a0469e5034c735962864ceef095b8d6e SHA512 ed10070c8706bf3ae3b9b0f861497099c51bbcfa778fb76230a06516787926a6375ea880dcddd3b8752da5d9c41b4d620cefc9a238cd9b9e7fa09ae26fbccd3a WHIRLPOOL d178eb2bd25c04c1eefb4bbf3968a7e4a97c254e7cdf7bca37c77ca2cde12ddda7ae23c7b007ec74aebf4a3e9eb293260e80b0485d174fb9cf599d0e53d054f9
 DIST firefox-25.0-or.xpi 370901 SHA256 4093e6a122c50148eaaf72a59d0efa315aee7ca4962585f9d0e381598f08c305 SHA512 8d664663e12f0a39a08e914904ea86d2603a0d62fe7e0e005bc98dcfd55a1548a49bc2e83d705d06b3c9fb8e0931e2ea105681c84c66528bb3de7994fab73f7f WHIRLPOOL f1c5493c7ff24aadce416749d73fbb5c75f7330a450f8ebe308b58b7acf96ba751462e756c8094b636f89311be4aeafbdc2273b05640b61492eacc74bcc09be0
 DIST firefox-25.0-pa-IN.xpi 370128 SHA256 e040f4a1ec159ff4705ac21ad492835f0ad87e9d0394866b2b14ccc8d21e4d80 SHA512 9b76905d354079c956bda77b72073acb89b12aa60814e8b2809738f188bcd9570c0c02a2c438872c80e0b792daf379b07d11984fec72a0dd570fbc0e91c2acc1 WHIRLPOOL bd2d5f60af29e07a3e003f37400d0f13c4a561b484baf63145883170a018efc41bad4bad61de28c91175e2e6964f01112330c14ff36b9fcc3f4b04b11bd70791
-DIST firefox-25.0-patches-0.2.tar.xz 7284 SHA256 351a2dc8d051ab251f060052cec396a85893de1a3d953d2bd277d08f4a340ab4 SHA512 9d0940c9c852aa090cb3886c504c50c1089b80a752199a98a45d5986950b3caca500cee159873691ede50fbacc73e0c3b18e5f11ec9bdac26e6704e86d3b618f WHIRLPOOL 96d2191bb537bbd4345d7a2f87f2b7b93b435d3e91c547394c265cb800e2fa796266b9a49ed89a16e48682bd6411841c6ccfacd00c292f4050f1a0f1129b95f8
+DIST firefox-25.0-patches-0.3.tar.xz 8904 SHA256 57f19551fa52e74d253fad9fa4980e00ee152fb1e4b893772303334441da02ce SHA512 211b7e9d0d858b94ab292bd0aa1ca8392d8319646dff7dc47e6048de311898f74c27843651e8c6152b6541f6918ddb0a34fd2bf2445cb48ac6463638c265db42 WHIRLPOOL 98eb119aa3966af647d332583b0de3dcc997d6429542e3c8ab6bc263e368416c0785b76b472c6bfcbb91cda56f985b857b8b3802e5cc10a106bd57b4ba967b36
 DIST firefox-25.0-pl.xpi 342013 SHA256 6770cb1e255082f78ffd2f3637693a891a61cb51c93cdc87804b88a988e3c77d SHA512 563edeb1465263e94402727f1aad0737b9c8dabdbba75b38845ce8139365e6f687a8d2bc45ffc35d7acd20d4134a2885514da0c6d6eb70d4ba28d8cf153875d7 WHIRLPOOL e2bbf5cc92d4cc9a8b37fb1c8418c612b7e1ea2afd83e93794ae89bce08f60fa1586648eba3fe5ea3804bb36550e82f60376372431b01b4d7ebedf3781c32b9d
 DIST firefox-25.0-pt-BR.xpi 339035 SHA256 2db8e2904331b559dad102c4f4bf0444643ed162e6d6d6853802a14991df3f86 SHA512 7930788617e1c90fce9fb25ffbbc96d6cecd72fa201af82d9e2d2138bfbbf328f9a7cf18ad5c0f02f481ee0d7fcceffa50f25eda143e1fed3675dffc3145f1d5 WHIRLPOOL d8a33e05f908121eea10bfa6dcfa436e40796badd2d3998ef9c76342f30f82c7bbef1663b4ef184574fbb555233618f77cb9d5a39aae43aa8addcce664feea9e
 DIST firefox-25.0-pt-PT.xpi 337163 SHA256 41d73bc8c90cd4c5a67359c68a042ff32825e0736b5481c7998e55720a8c3f54 SHA512 0d7bb46824c6e5ef8e606a6fc4bbbd9f36241f56f93c883a3d2c2496e93d882e048ff30adb2948d3cfd9a05ee0c45d6c239e09b97e77c70fefcb3c1d73bbc1fd WHIRLPOOL 86ad9e3b8914a59543d70c7b04ff1c4cc67f97ade03e82dd4dc85cd7775c42538f9a42c254d91e49c736c264207069f0b91f3414a2a9436783e3e76cbe677152

diff --git a/www-client/firefox/files/moz25-drop-Wl-build-id.patch b/www-client/firefox/files/moz25-drop-Wl-build-id.patch
deleted file mode 100644
index 221566c..0000000
--- a/www-client/firefox/files/moz25-drop-Wl-build-id.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- comm-beta/mozilla/configure.in
-+++ comm-beta/mozilla/configure.in
-@@ -1285,15 +1285,6 @@
-                   AC_MSG_RESULT([no])
-                   LDFLAGS=$_SAVE_LDFLAGS)
- 
--    AC_MSG_CHECKING([for --build-id option to ld])
--    _SAVE_LDFLAGS=$LDFLAGS
--    LDFLAGS="$LDFLAGS -Wl,--build-id"
--    AC_TRY_LINK(,,AC_MSG_RESULT([yes])
--                  [NSPR_LDFLAGS="$NSPR_LDFLAGS -Wl,--build-id"],
--                  AC_MSG_RESULT([no])
--                  LDFLAGS=$_SAVE_LDFLAGS)
--
--
-     # Check for -mssse3 on $CC
-     AC_MSG_CHECKING([if toolchain supports -mssse3 option])
-     HAVE_TOOLCHAIN_SUPPORT_MSSSE3=
---- comm-beta/mozilla/js/src/configure.in
-+++ comm-beta/mozilla/js/src/configure.in
-@@ -1096,13 +1096,6 @@
-                   AC_MSG_RESULT([no])
-                   LDFLAGS=$_SAVE_LDFLAGS)
- 
--    AC_MSG_CHECKING([for --build-id option to ld])
--    _SAVE_LDFLAGS=$LDFLAGS
--    LDFLAGS="$LDFLAGS -Wl,--build-id"
--    AC_TRY_LINK(,,AC_MSG_RESULT([yes]),
--                  AC_MSG_RESULT([no])
--                  LDFLAGS=$_SAVE_LDFLAGS)
--
-     # Turn on GNU-specific warnings:
-     # -Wall - turn on a lot of warnings
-     # -Wpointer-arith - good to have

diff --git a/www-client/firefox/firefox-25.0.ebuild b/www-client/firefox/firefox-25.0-r1.ebuild
similarity index 98%
rename from www-client/firefox/firefox-25.0.ebuild
rename to www-client/firefox/firefox-25.0-r1.ebuild
index d114c25..42b0d84 100644
--- a/www-client/firefox/firefox-25.0.ebuild
+++ b/www-client/firefox/firefox-25.0-r1.ebuild
@@ -25,7 +25,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-25.0-patches-0.2"
+PATCH="${PN}-25.0-patches-0.3"
 # Upstream ftp release URI that's used by mozlinguas.eclass
 # We don't use the http mirror because it deletes old tarballs.
 MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
@@ -147,8 +147,6 @@ src_prepare() {
 	EPATCH_SUFFIX="patch" \
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
-	# drop -Wl,--build-id from LDFLAGS, bug #465466
-	epatch "${FILESDIR}"/moz${PV%%\.*}-drop-Wl-build-id.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2014-10-31 19:08 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2014-10-31 19:08 UTC (permalink / raw
  To: gentoo-commits

commit:     a5ee1cbf16727382aabe194a46fc59bd4a5c1c0e
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 28 18:53:57 2014 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Tue Oct 28 18:59:34 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/mozilla.git;a=commit;h=a5ee1cbf

bump 34.0 beta, add patch to fix webm segfault

---
 www-client/firefox/Manifest                        |  2 +-
 ...refox-31.0-webm-disallow-negative-samples.patch | 29 ++++++++++++++++++++++
 ...34.0_beta2.ebuild => firefox-34.0_beta4.ebuild} |  2 ++
 3 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index a55d4f9..04ae2ce 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -83,4 +83,4 @@ DIST firefox-33.0-zh-TW.xpi 422430 SHA256 88e13c51ab2cde95ca274c458c73af74fe2b4a
 DIST firefox-33.0-zu.xpi 443460 SHA256 6deb6b853ec1923ab325332d2eb5e96e6a0cea443d447203dff0cff5352c15bf SHA512 39cf08663bf7ea3668bbddba84aa4c27fa365e6a43132c02ce78c6a63327bbc212ea179fcdd562c1962b4d167b17186c5d56dafe3267dcc4f32ee22c671b1e1f WHIRLPOOL 56a5729de1f5daf0d5c177e40e8e58def910558c6837c40b3fb22cdb11dec347894fd23c1bd2aa4fe3f42937dadba87bf932bcff7c053300abb408b0f852fcd8
 DIST firefox-33.0.source.tar.bz2 155177527 SHA256 1018c2fae8c54c8a45f5a3ce348a2617a3f8039a789b09b7cfa5a27be069b229 SHA512 856585bedb0c0cc2a5c8591a5a3d373dca66fd8c15dd2c04b09e17e9a2da2bf978e4bff872a814b42e1963c3a6def05ccc0b68d9a8f4e7c9152dca878cf17e51 WHIRLPOOL be267b29bc9d21b6f0d35d1e42410afe9a0d6bed9174f5de5bfd80898fd1a73fc4e762a7e606c94c99562c6ac2b99eb33022509a85f5a762685cf26496a2744b
 DIST firefox-34.0-patches-0.1.tar.xz 4412 SHA256 29cd2fee297ca23b9552c134051d663ad5d7b2f7acdec8e441889cc82553d373 SHA512 dd2099cb8f5c8a411439afc4aa16cfabc8bab56ff090c4e84cbe54143b177ae141c48398b6a71c7506bada50223e01a8b1eec12b5e274353803b50de6c253b8c WHIRLPOOL 71ae7630bb5b0eff082d7a7cc89b3524b886bfe3af5556c27a47643839b166d36945a2f7e0afbd9b36ea8b4c0629daa660aeed23ad548f9a9d079a4252c1c363
-DIST firefox-34.0b2.source.tar.bz2 164311277 SHA256 7087f7b36c2f7aaabcbb11f94a0a7d5e4ea0b17a6ac54f6fe7ba947566d03097 SHA512 2d263ea92c54ad87f390acd6c2bdf3ce5713f22b902efba28e8b5f0a7a97eec2bd4748b49842700d0e13ea4179b95c2c498d5071f4d6f066455af7ed003978f2 WHIRLPOOL 4393eda13fb1f8fa0cfed91424db7682779c5db492fcb1e641885bafd4c2e6f8eb17f38d23fe1900e2ea655cad0f51dc663eb788abd29f37f01f50084db04883
+DIST firefox-34.0b4.source.tar.bz2 164290577 SHA256 b37a84e6fcf262ce3d4e9244150033d7fd5893ac954b5347c129ac65840e56a1 SHA512 16225804242952ab68526c543b36daf4fc66026ee9264f0e8c113151f54cae9ce90f18e85ad6f66244006a5156eb4d67d4bd793bb7b06a00132b746ce1c853ac WHIRLPOOL 22e7b97c567d2803e2e377f2f09535682515f3d4f764bafa1dfce72960bc125290ea63cff1781152f1181efa61e9b6eac6c852d18d2da46c0e39f70f20ddae0b

diff --git a/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch b/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch
new file mode 100644
index 0000000..bccc25e
--- /dev/null
+++ b/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch
@@ -0,0 +1,29 @@
+--- a/content/media/webm/WebMReader.cpp	2014-10-20 21:59:39.000000000 -0400
++++ b/content/media/webm/WebMReader.cpp	2014-10-28 09:06:51.959665416 -0400
+@@ -668,7 +668,15 @@
+           return true;
+         }
+         int32_t keepFrames = frames - skipFrames;
++        if (keepFrames < 0) {
++          NS_WARNING("Int overflow in keepFrames");
++          return false;
++	}
+         int samples = keepFrames * channels;
++	if (samples < 0) {
++          NS_WARNING("Int overflow in samples");
++          return false;
++	}
+         nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
+         for (int i = 0; i < samples; i++)
+           trimBuffer[i] = buffer[skipFrames*channels + i];
+@@ -691,6 +699,10 @@
+         int32_t keepFrames = frames - discardFrames.value();
+         if (keepFrames > 0) {
+           int samples = keepFrames * channels;
++          if (samples < 0) {
++            NS_WARNING("Int overflow in samples");
++            return false;
++          }
+           nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
+           for (int i = 0; i < samples; i++)
+             trimBuffer[i] = buffer[i];

diff --git a/www-client/firefox/firefox-34.0_beta2.ebuild b/www-client/firefox/firefox-34.0_beta4.ebuild
similarity index 99%
rename from www-client/firefox/firefox-34.0_beta2.ebuild
rename to www-client/firefox/firefox-34.0_beta4.ebuild
index 3f28ef9..26857ae 100644
--- a/www-client/firefox/firefox-34.0_beta2.ebuild
+++ b/www-client/firefox/firefox-34.0_beta4.ebuild
@@ -147,6 +147,8 @@ src_prepare() {
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
 
+	epatch "${FILESDIR}"/${PN}-31.0-webm-disallow-negative-samples.patch # bug 527010
+
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user
 


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2015-04-06 22:39 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2015-04-06 22:39 UTC (permalink / raw
  To: gentoo-commits

commit:     997de327a732abee46eb3f7f80dd0633886e7909
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  6 22:39:24 2015 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Mon Apr  6 22:39:24 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=997de327

Firefox-37: fixed redundant pax-mark; fixed a new bashism in jemalloc configure.ac

 .../files/firefox-37.0-jemalloc_configure_unbashify.patch     | 11 +++++++++++
 www-client/firefox/firefox-37.0.1.ebuild                      |  1 +
 2 files changed, 12 insertions(+)

diff --git a/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch b/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch
new file mode 100644
index 0000000..b5278b1
--- /dev/null
+++ b/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch
@@ -0,0 +1,11 @@
+--- a/memory/jemalloc/src/configure.ac	2015-03-30 18:54:42.000000000 -0400
++++ b/memory/jemalloc/src/configure.ac	2015-04-06 16:23:52.170389285 -0400
+@@ -989,7 +989,7 @@
+ AC_ARG_WITH([lg_page],
+   [AS_HELP_STRING([--with-lg-page=<lg-page>], [Base 2 log of system page size])],
+   [LG_PAGE="$with_lg_page"], [LG_PAGE="detect"])
+-if test "x$LG_PAGE" == "xdetect"; then
++if test "x$LG_PAGE" = "xdetect"; then
+   AC_CACHE_CHECK([LG_PAGE],
+                [je_cv_lg_page],
+                AC_RUN_IFELSE([AC_LANG_PROGRAM(

diff --git a/www-client/firefox/firefox-37.0.1.ebuild b/www-client/firefox/firefox-37.0.1.ebuild
index 9b93052..b190ff0 100644
--- a/www-client/firefox/firefox-37.0.1.ebuild
+++ b/www-client/firefox/firefox-37.0.1.ebuild
@@ -147,6 +147,7 @@ src_prepare() {
 	epatch "${WORKDIR}/firefox"
 
 	epatch "${FILESDIR}"/${PN}-35.0-gmp-clearkey-sprintf.patch
+	epatch "${FILESDIR}"/${PN}-37.0-jemalloc_configure_unbashify.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2015-10-22 18:06 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2015-10-22 18:06 UTC (permalink / raw
  To: gentoo-commits

commit:     e523f3623a71c92739775476319a72bec6d97637
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 22 18:05:44 2015 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Thu Oct 22 18:05:44 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=e523f362

Removed 41.0.2-r1, the experiment failed.

 www-client/firefox/Manifest                 |   2 +-
 www-client/firefox/files/jit-hardened.patch |  11 -
 www-client/firefox/firefox-41.0.2-r1.ebuild | 420 ----------------------------
 3 files changed, 1 insertion(+), 432 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index df16049..d581e14 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -80,4 +80,4 @@ DIST firefox-41.0.2-zh-CN.xpi 486222 SHA256 8c49c52b80937a00da8953ecb1bdd1c6505e
 DIST firefox-41.0.2-zh-TW.xpi 479033 SHA256 a1b3661c004ead49b5b1adac7515de402319ae82b06121313deb51b1ec7fcb20 SHA512 08a7e516fb556b1134a9a05c782b0312c5b4d8907d671be47a0aeedd1a0933fb22b0fd5ab6fcc7888a00258b06b420555752baeccacbea7de8e2d996578ba95b WHIRLPOOL 40f955c3d9d96fa2a2a5ffdab65260d7dd06e9d10b855a0397baf72305002b517dfba55d75e762dbe1a3ea237a691c082b9a6cf1d0241fa055232f02349b46db
 DIST firefox-41.0.2.source.tar.xz 159761468 SHA256 ff00689f4d2ff54c5eb7b3aa367560a3645800eb0c96e73a795e461461b1970e SHA512 700c1f355436747f8707b4086dfa0865c87ca7d1c3a5a879347e3460b26158681716addf085dc2446b1eeaccf328b3f3d6282df8e00cd97d8affd97dd780b409 WHIRLPOOL dd52ac3fa4c97ff0252eaf8530340a9baf515a0ad7afd121391c05de7fa030cd5151476073665a917568fe9c81cddc67109d19ad8f453ce601ff7ef4de148f08
 DIST firefox-42.0-patches-01b2.tar.xz 6424 SHA256 6c8a89c75ea4a359bf720f011e1bb856b653cd6676767b33ccb9d2f807a089e3 SHA512 d40266c98aa5bfeed243e3bd42f9146bc73492bd20bd07ac4941df83793a7e3a832220b65fc8c9eeb5f3a00089087251a2b758df5fc0d3dd3403468ec0b9eb53 WHIRLPOOL 93356507e31a5dca653a5fcc844c24acc1de6b2a01f3dbd7227c1e23eda4e8799a59cf1a50bb49b721249cb82c744d49f4671bfb7188275101c6de955afdb149
-DIST firefox-42.0b6.source.tar.xz 165774656 SHA256 fbf1674306c4bf97c5f420811ccf761ef729148669560fd384355467d5f1dc0a SHA512 ae5c30b4592bee65d3f4efbd7ceb383390534ccb0cd58a36b57f4a07af02d6a7bcebb3d98368714ffe5a228ab4a715ffdb75f7ddf8f50d6d1971fb9e1b05091e WHIRLPOOL 7c9fa4f5e0a53fea6c8a0654d85c9b3673aa3fba38adc129cf1990b3b2cd558d966c4a7f1bdf35902489f6921560985a9637e94abf83dc3247c24a81472f8102
+DIST firefox-42.0b8.source.tar.xz 165772404 SHA256 f813958903af24e0dd29c0647ff90e18596283b60fa10ea27f3b9c7fa1f10e82 SHA512 e436607ba62604f7543fad30da33c49996f04895e3ba5c67ce69241a75ef34282e7e24cf986da54e226810815f21a005dd73b878ecc20ea098d46e26bf961d70 WHIRLPOOL e210343f74a7cb15f7526a4aeaca2727012c14518bf394163ec1b4b16f8f9cb1c24c6c8203e007bdea44d3d74204ff138a1f989c9159a586a3a883532d19f5a7

diff --git a/www-client/firefox/files/jit-hardened.patch b/www-client/firefox/files/jit-hardened.patch
deleted file mode 100644
index 9fb48ea..0000000
--- a/www-client/firefox/files/jit-hardened.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/js/src/jit/ExecutableAllocator.cpp	2015-10-19 19:19:40.000000000 -0400
-+++ b/js/src/jit/ExecutableAllocator.cpp	2015-10-20 12:35:37.995626076 -0400
-@@ -88,7 +88,7 @@
-     }
- }
- 
--#if TARGET_OS_IPHONE
-+#if ! TARGET_OS_IPHONE
- bool ExecutableAllocator::nonWritableJitCode = true;
- #else
- bool ExecutableAllocator::nonWritableJitCode = false;

diff --git a/www-client/firefox/firefox-41.0.2-r1.ebuild b/www-client/firefox/firefox-41.0.2-r1.ebuild
deleted file mode 100644
index 99807ee..0000000
--- a/www-client/firefox/firefox-41.0.2-r1.ebuild
+++ /dev/null
@@ -1,420 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-VIRTUALX_REQUIRED="pgo"
-WANT_AUTOCONF="2.1"
-MOZ_ESR=""
-
-# This list can be updated with scripts/get_langs.sh from the mozilla overlay
-# No official support as of fetch time
-# csb
-MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs cy da de el en
-en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gd
-gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko lt lv mai mk ml mr
-nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te
-th tr uk vi xh zh-CN zh-TW )
-
-# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
-MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
-MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
-MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
-
-if [[ ${MOZ_ESR} == 1 ]]; then
-	# ESR releases have slightly version numbers
-	MOZ_PV="${MOZ_PV}esr"
-fi
-
-# Patch version
-PATCH="${PN}-41.0-patches-01"
-MOZ_HTTP_URI="http://archive.mozilla.org/pub/${PN}/releases"
-
-MOZCONFIG_OPTIONAL_GTK3=1
-MOZCONFIG_OPTIONAL_WIFI=1
-# MOZCONFIG_OPTIONAL_JIT="enabled"
-
-inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6.41 multilib pax-utils fdo-mime autotools virtualx mozlinguas
-
-DESCRIPTION="Firefox Web Browser"
-HOMEPAGE="http://www.mozilla.com/firefox"
-
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-
-SLOT="0"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-IUSE="bindist egl hardened +minimal neon pgo selinux +gmp-autoupdate test"
-RESTRICT="!bindist? ( bindist )"
-
-# More URIs appended below...
-SRC_URI="${SRC_URI}
-	https://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz
-	https://dev.gentoo.org/~axs/mozilla/patchsets/${PATCH}.tar.xz
-	https://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz"
-
-ASM_DEPEND=">=dev-lang/yasm-1.1"
-
-# Mesa 7.10 needed for WebGL + bugfixes
-RDEPEND="
-	>=dev-libs/nss-3.19.2
-	>=dev-libs/nspr-4.10.8
-	selinux? ( sec-policy/selinux-mozilla )"
-
-DEPEND="${RDEPEND}
-	pgo? (
-		>=sys-devel/gcc-4.5 )
-	amd64? ( ${ASM_DEPEND}
-		virtual/opengl )
-	x86? ( ${ASM_DEPEND}
-		virtual/opengl )"
-
-# No source releases for alpha|beta
-if [[ ${PV} =~ alpha ]]; then
-	CHANGESET="8a3042764de7"
-	SRC_URI="${SRC_URI}
-		https://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.xz"
-	S="${WORKDIR}/mozilla-aurora-${CHANGESET}"
-elif [[ ${PV} =~ beta ]]; then
-	S="${WORKDIR}/mozilla-beta"
-	SRC_URI="${SRC_URI}
-		${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
-else
-	SRC_URI="${SRC_URI}
-		${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
-	if [[ ${MOZ_ESR} == 1 ]]; then
-		S="${WORKDIR}/mozilla-esr${PV%%.*}"
-	else
-		S="${WORKDIR}/mozilla-release"
-	fi
-fi
-
-QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox"
-
-BUILD_OBJ_DIR="${S}/ff"
-
-pkg_setup() {
-	moz_pkgsetup
-
-	# Avoid PGO profiling problems due to enviroment leakage
-	# These should *always* be cleaned up anyway
-	unset DBUS_SESSION_BUS_ADDRESS \
-		DISPLAY \
-		ORBIT_SOCKETDIR \
-		SESSION_MANAGER \
-		XDG_SESSION_COOKIE \
-		XAUTHORITY
-
-	if ! use bindist; then
-		einfo
-		elog "You are enabling official branding. You may not redistribute this build"
-		elog "to any users on your network or the internet. Doing so puts yourself into"
-		elog "a legal problem with Mozilla Foundation"
-		elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
-	fi
-
-	if use pgo; then
-		einfo
-		ewarn "You will do a double build for profile guided optimization."
-		ewarn "This will result in your build taking at least twice as long as before."
-	fi
-}
-
-pkg_pretend() {
-	# Ensure we have enough disk space to compile
-	if use pgo || use debug || use test ; then
-		CHECKREQS_DISK_BUILD="8G"
-	else
-		CHECKREQS_DISK_BUILD="4G"
-	fi
-	check-reqs_pkg_setup
-}
-
-src_unpack() {
-	unpack ${A}
-
-	# Unpack language packs
-	mozlinguas_src_unpack
-}
-
-src_prepare() {
-	# Apply our patches
-	EPATCH_SUFFIX="patch" \
-	EPATCH_FORCE="yes" \
-	epatch "${WORKDIR}/firefox"
-
-	# a hack for now to enable nonWritableJitCode so jit can work on hardened.
-	use hardened && epatch "${FILESDIR}"/jit-hardened.patch
-
-	# Allow user to apply any additional patches without modifing ebuild
-	epatch_user
-
-	# Enable gnomebreakpad
-	if use debug ; then
-		sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
-			"${S}"/build/unix/run-mozilla.sh || die "sed failed!"
-	fi
-
-	# Ensure that our plugins dir is enabled as default
-	sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
-		"${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
-	sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
-		"${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
-
-	# Fix sandbox violations during make clean, bug 372817
-	sed -e "s:\(/no-such-file\):${T}\1:g" \
-		-i "${S}"/config/rules.mk \
-		-i "${S}"/nsprpub/configure{.in,} \
-		|| die
-
-	# Don't exit with error when some libs are missing which we have in
-	# system.
-	sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
-		-i "${S}"/browser/installer/Makefile.in || die
-
-	# Don't error out when there's no files to be removed:
-	sed 's@\(xargs rm\)$@\1 -f@' \
-		-i "${S}"/toolkit/mozapps/installer/packager.mk || die
-
-	# Keep codebase the same even if not using official branding
-	sed '/^MOZ_DEV_EDITION=1/d' \
-		-i "${S}"/browser/branding/aurora/configure.sh || die
-
-	eautoreconf
-
-	# Must run autoconf in js/src
-	cd "${S}"/js/src || die
-	eautoconf
-
-	# Need to update jemalloc's configure
-	cd "${S}"/memory/jemalloc/src || die
-	WANT_AUTOCONF= eautoconf
-}
-
-src_configure() {
-	MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
-	MEXTENSIONS="default"
-	# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
-	# Note: These are for Gentoo Linux use ONLY. For your own distribution, please
-	# get your own set of keys.
-	_google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
-
-	####################################
-	#
-	# mozconfig, CFLAGS and CXXFLAGS setup
-	#
-	####################################
-
-	mozconfig_init
-	mozconfig_config
-
-	# It doesn't compile on alpha without this LDFLAGS
-	use alpha && append-ldflags "-Wl,--no-relax"
-
-	# Add full relro support for hardened
-	use hardened && append-ldflags "-Wl,-z,relro,-z,now"
-
-	# enable non-writable-jit-code for hardened and force jit on
-#	use hardened && \
-#		echo "mk_add_options MOZ_ENABLE_NON_WRITABLE_JIT_CODE=1" >> "${S}"/.mozconfig
-	mozconfig_annotate 'Gentoo testing of forced jit' --enable-ion
-
-	if use neon ; then
-		mozconfig_annotate '' --with-fpu=neon
-		mozconfig_annotate '' --with-thumb=yes
-		mozconfig_annotate '' --with-thumb-interwork=no
-	fi
-
-	if [[ ${CHOST} == armv* ]] ; then
-		mozconfig_annotate '' --with-float-abi=hard
-		mozconfig_annotate '' --enable-skia
-
-		if ! use system-libvpx ; then
-			sed -i -e "s|softfp|hard|" \
-				"${S}"/media/libvpx/moz.build
-		fi
-	fi
-
-	use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
-
-	# Setup api key for location services
-	echo -n "${_google_api_key}" > "${S}"/google-api-key
-	mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"
-
-	mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
-	mozconfig_annotate '' --disable-mailnews
-
-	# Other ff-specific settings
-	mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
-
-	# Allow for a proper pgo build
-	if use pgo; then
-		echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
-	fi
-
-	echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
-
-	# Finalize and report settings
-	mozconfig_final
-
-	if [[ $(gcc-major-version) -lt 4 ]]; then
-		append-cxxflags -fno-stack-protector
-	fi
-
-	# workaround for funky/broken upstream configure...
-	emake -f client.mk configure
-}
-
-src_compile() {
-	if use pgo; then
-		addpredict /root
-		addpredict /etc/gconf
-		# Reset and cleanup environment variables used by GNOME/XDG
-		gnome2_environment_reset
-
-		# Firefox tries to use dri stuff when it's run, see bug 380283
-		shopt -s nullglob
-		cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
-		if test -z "${cards}"; then
-			cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
-			if test -n "${cards}"; then
-				# Binary drivers seem to cause access violations anyway, so
-				# let's use indirect rendering so that the device files aren't
-				# touched at all. See bug 394715.
-				export LIBGL_ALWAYS_INDIRECT=1
-			fi
-		fi
-		shopt -u nullglob
-		addpredict "${cards}"
-
-		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
-		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
-		Xemake -f client.mk profiledbuild || die "Xemake failed"
-	else
-		CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
-		MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
-		emake -f client.mk realbuild
-	fi
-
-}
-
-src_install() {
-	MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
-	DICTPATH="\"${EPREFIX}/usr/share/myspell\""
-
-	cd "${BUILD_OBJ_DIR}" || die
-
-	# Pax mark xpcshell for hardened support, only used for startupcache creation.
-	pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
-
-	# Add our default prefs for firefox
-	cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
-		"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
-		|| die
-
-	# Set default path to search for dictionaries.
-	echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
-		>> "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
-		|| die
-
-	echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
-		"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
-		|| die
-
-	local plugin
-	use gmp-autoupdate || for plugin in \
-	gmp-gmpopenh264 ; do
-		echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
-			"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
-			|| die
-	done
-
-	MOZ_MAKE_FLAGS="${MAKEOPTS}" \
-	emake DESTDIR="${D}" install
-
-	# Install language packs
-	mozlinguas_src_install
-
-	local size sizes icon_path icon name
-	if use bindist; then
-		sizes="16 32 48"
-		icon_path="${S}/browser/branding/aurora"
-		# Firefox's new rapid release cycle means no more codenames
-		# Let's just stick with this one...
-		icon="aurora"
-		name="Aurora"
-
-		# Override preferences to set the MOZ_DEV_EDITION defaults, since we
-		# don't define MOZ_DEV_EDITION to avoid profile debaucles.
-		# (source: browser/app/profile/firefox.js)
-		cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
-pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
-sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
-sticky_pref("browser.devedition.theme.enabled", true);
-sticky_pref("devtools.theme", "dark");
-PROFILE_EOF
-
-	else
-		sizes="16 22 24 32 256"
-		icon_path="${S}/browser/branding/official"
-		icon="${PN}"
-		name="Mozilla Firefox"
-	fi
-
-	# Install icons and .desktop for menu entry
-	for size in ${sizes}; do
-		insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
-		newins "${icon_path}/default${size}.png" "${icon}.png"
-	done
-	# The 128x128 icon has a different name
-	insinto "/usr/share/icons/hicolor/128x128/apps"
-	newins "${icon_path}/mozicon128.png" "${icon}.png"
-	# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
-	newicon "${icon_path}/content/icon48.png" "${icon}.png"
-	newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop"
-	sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
-		"${ED}/usr/share/applications/${PN}.desktop" || die
-
-	# Add StartupNotify=true bug 237317
-	if use startup-notification ; then
-		echo "StartupNotify=true"\
-			 >> "${ED}/usr/share/applications/${PN}.desktop" \
-			|| die
-	fi
-
-	# Required in order to use plugins and even run firefox on hardened.
-#	if use jit; then
-#		pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
-#	else
-		pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container
-#	fi
-
-	if use minimal; then
-		rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \
-			|| die "Failed to remove sdk and headers"
-	fi
-
-	# very ugly hack to make firefox not sigbus on sparc
-	# FIXME: is this still needed??
-	use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \
-					 -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \
-					|| die "sparc sed failed"; }
-
-	# revdep-rebuild entry
-	insinto /etc/revdep-rebuild
-	echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10firefox
-	doins "${T}"/10${PN} || die
-}
-
-pkg_preinst() {
-	gnome2_icon_savelist
-}
-
-pkg_postinst() {
-	# Update mimedb for the new .desktop file
-	fdo-mime_desktop_database_update
-	gnome2_icon_cache_update
-}
-
-pkg_postrm() {
-	gnome2_icon_cache_update
-}


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
  2015-11-30 16:16 [gentoo-commits] proj/mozilla:crossdev " Ian Stakenvicius
@ 2015-11-30 16:13 ` Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2015-11-30 16:13 UTC (permalink / raw
  To: gentoo-commits

commit:     46a7beff9c65976bccd3ef07a8ad98c9c4ddf213
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 30 16:13:39 2015 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Mon Nov 30 16:13:39 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=46a7beff

added patch to fix USE=-jit builds

 www-client/firefox/files/jit-none.patch      | 135 +++++++++++++++++++++++++++
 www-client/firefox/firefox-43.0_beta7.ebuild |   1 +
 2 files changed, 136 insertions(+)

diff --git a/www-client/firefox/files/jit-none.patch b/www-client/firefox/files/jit-none.patch
new file mode 100644
index 0000000..7da33d7
--- /dev/null
+++ b/www-client/firefox/files/jit-none.patch
@@ -0,0 +1,135 @@
+
+# HG changeset patch
+# User Steve Singer <steve@ssinger.info>
+# Date 1443349020 -7200
+# Node ID aa7e651a038a95c1f2eba8d869d66fb568c8b88c
+# Parent  c634c30551b04b8d214e7ae54c79af8d87b24445
+Bug 1208867 - Add xxx64 operations to MacroAssembler-none. r=sstangl
+
+diff --git a/js/src/jit/none/Lowering-none.h b/js/src/jit/none/Lowering-none.h
+--- a/js/src/jit/none/Lowering-none.h
++++ b/js/src/jit/none/Lowering-none.h
+@@ -82,16 +82,17 @@ class LIRGeneratorNone : public LIRGener
+ 
+     LTableSwitch* newLTableSwitch(LAllocation, LDefinition, MTableSwitch*) { MOZ_CRASH(); }
+     LTableSwitchV* newLTableSwitchV(MTableSwitch*) { MOZ_CRASH(); }
+     void visitSimdSelect(MSimdSelect* ins) { MOZ_CRASH(); }
+     void visitSimdSplatX4(MSimdSplatX4* ins) { MOZ_CRASH(); }
+     void visitSimdValueX4(MSimdValueX4* lir) { MOZ_CRASH(); }
+     void visitSubstr(MSubstr*) { MOZ_CRASH(); }
+     void visitSimdBinaryArith(js::jit::MSimdBinaryArith*) { MOZ_CRASH(); }
++    void visitRandom(js::jit::MRandom*) { MOZ_CRASH(); }
+ 
+ };
+ 
+ typedef LIRGeneratorNone LIRGeneratorSpecific;
+ 
+ } // namespace jit
+ } // namespace js
+ 
+diff --git a/js/src/jit/none/MacroAssembler-none.h b/js/src/jit/none/MacroAssembler-none.h
+--- a/js/src/jit/none/MacroAssembler-none.h
++++ b/js/src/jit/none/MacroAssembler-none.h
+@@ -233,20 +233,22 @@ class MacroAssemblerNone : public Assemb
+     void testObjectSet(Condition, ValueOperand, Register) { MOZ_CRASH(); }
+     void testUndefinedSet(Condition, ValueOperand, Register) { MOZ_CRASH(); }
+ 
+     template <typename T, typename S> void cmpPtrSet(Condition, T, S, Register) { MOZ_CRASH(); }
+     template <typename T, typename S> void cmp32Set(Condition, T, S, Register) { MOZ_CRASH(); }
+ 
+     template <typename T, typename S> void add32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void addPtr(T, S) { MOZ_CRASH(); }
++    template <typename T, typename S> void add64(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void sub32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void subPtr(T, S) { MOZ_CRASH(); }
+     void neg32(Register) { MOZ_CRASH(); }
+     void mulBy3(Register, Register) { MOZ_CRASH(); }
++    void mul64(Imm64, const Register64&) { MOZ_CRASH(); }
+ 
+     void negateDouble(FloatRegister) { MOZ_CRASH(); }
+     void addDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
+     void subDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
+     void mulDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
+     void divDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
+ 
+     template <typename T, typename S> void branch32(Condition, T, S, Label*) { MOZ_CRASH(); }
+@@ -254,22 +256,24 @@ class MacroAssemblerNone : public Assemb
+     template <typename T, typename S> void branchAdd32(Condition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchSub32(Condition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchTestPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchDouble(DoubleCondition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchFloat(DoubleCondition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void branchPrivatePtr(Condition, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void decBranchPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
++    template <typename T, typename S> void branchTest64(Condition, T, T, S, Label*) { MOZ_CRASH(); }
+     template <typename T, typename S> void mov(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void movq(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void movePtr(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void move32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void moveFloat32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void moveDouble(T, S) { MOZ_CRASH(); }
++    template <typename T, typename S> void move64(T, S) { MOZ_CRASH(); }
+     template <typename T> CodeOffsetLabel movWithPatch(T, Register) { MOZ_CRASH(); }
+ 
+     template <typename T> void loadInt32x1(T, FloatRegister dest) { MOZ_CRASH(); }
+     template <typename T> void loadInt32x2(T, FloatRegister dest) { MOZ_CRASH(); }
+     template <typename T> void loadInt32x3(T, FloatRegister dest) { MOZ_CRASH(); }
+     template <typename T> void loadFloat32x3(T, FloatRegister dest) { MOZ_CRASH(); }
+ 
+     template <typename T> void loadPtr(T, Register) { MOZ_CRASH(); }
+@@ -280,32 +284,34 @@ class MacroAssemblerNone : public Assemb
+     template <typename T> void loadUnalignedInt32x4(T, FloatRegister) { MOZ_CRASH(); }
+     template <typename T> void loadAlignedFloat32x4(T, FloatRegister) { MOZ_CRASH(); }
+     template <typename T> void loadUnalignedFloat32x4(T, FloatRegister) { MOZ_CRASH(); }
+     template <typename T> void loadPrivate(T, Register) { MOZ_CRASH(); }
+     template <typename T> void load8SignExtend(T, Register) { MOZ_CRASH(); }
+     template <typename T> void load8ZeroExtend(T, Register) { MOZ_CRASH(); }
+     template <typename T> void load16SignExtend(T, Register) { MOZ_CRASH(); }
+     template <typename T> void load16ZeroExtend(T, Register) { MOZ_CRASH(); }
++    template <typename T> void load64(T, Register64 ) { MOZ_CRASH(); }
+ 
+     template <typename T, typename S> void storePtr(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void store32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void store32_NoSecondScratch(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeFloat32(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeDouble(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeAlignedInt32x4(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeUnalignedInt32x4(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeAlignedFloat32x4(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeUnalignedFloat32x4(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void store8(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void store16(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeInt32x1(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeInt32x2(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeInt32x3(T, S) { MOZ_CRASH(); }
+     template <typename T, typename S> void storeFloat32x3(T, S) { MOZ_CRASH(); }
++    template <typename T, typename S> void store64(T, S) { MOZ_CRASH(); }
+ 
+     template <typename T> void computeEffectiveAddress(T, Register) { MOZ_CRASH(); }
+ 
+     template <typename T> void compareExchange8SignExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
+     template <typename T> void compareExchange8ZeroExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
+     template <typename T> void compareExchange16SignExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
+     template <typename T> void compareExchange16ZeroExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
+     template <typename T> void compareExchange32(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
+@@ -393,16 +399,18 @@ class MacroAssemblerNone : public Assemb
+     void convertDoubleToInt32(FloatRegister, Register, Label*, bool v = true) { MOZ_CRASH(); }
+     void convertBoolToInt32(Register, Register) { MOZ_CRASH(); }
+ 
+     void convertDoubleToFloat32(FloatRegister, FloatRegister) { MOZ_CRASH(); }
+     void convertInt32ToFloat32(Register, FloatRegister) { MOZ_CRASH(); }
+ 
+     template <typename T> void convertInt32ToDouble(T, FloatRegister) { MOZ_CRASH(); }
+     void convertFloat32ToDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
++    void convertUInt64ToDouble(Register64, Register, FloatRegister) { MOZ_CRASH(); }
++    void mulDoublePtr(ImmPtr, Register, FloatRegister) { MOZ_CRASH(); }
+ 
+     void branchTruncateDouble(FloatRegister, Register, Label*) { MOZ_CRASH(); }
+     void branchTruncateFloat32(FloatRegister, Register, Label*) { MOZ_CRASH(); }
+ 
+     void boolValueToDouble(ValueOperand, FloatRegister) { MOZ_CRASH(); }
+     void boolValueToFloat32(ValueOperand, FloatRegister) { MOZ_CRASH(); }
+     void int32ValueToDouble(ValueOperand, FloatRegister) { MOZ_CRASH(); }
+     void int32ValueToFloat32(ValueOperand, FloatRegister) { MOZ_CRASH(); }
+

diff --git a/www-client/firefox/firefox-43.0_beta7.ebuild b/www-client/firefox/firefox-43.0_beta7.ebuild
index eeec89b..8b97558 100644
--- a/www-client/firefox/firefox-43.0_beta7.ebuild
+++ b/www-client/firefox/firefox-43.0_beta7.ebuild
@@ -148,6 +148,7 @@ src_prepare() {
 	EPATCH_EXCLUDE="8002_jemalloc_configure_unbashify.patch
 			8011_bug1194520-freetype261_until_moz43.patch" \
 	epatch "${WORKDIR}/firefox"
+	epatch "${FILESDIR}"/jit-none.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2015-12-03  0:18 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2015-12-03  0:18 UTC (permalink / raw
  To: gentoo-commits

commit:     14c7044a83b0888c9a59d4adecde710274dc2721
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  3 00:18:20 2015 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Thu Dec  3 00:18:20 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=14c7044a

bump ff43b7 to b8

 www-client/firefox/Manifest                        |   2 +-
 www-client/firefox/files/jit-none.patch            | 135 ---------------------
 ...43.0_beta7.ebuild => firefox-43.0_beta8.ebuild} |   1 -
 3 files changed, 1 insertion(+), 137 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index cde2cee..886194f 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -79,4 +79,4 @@ DIST firefox-42.0-xh.xpi 455527 SHA256 1a1776e5770dd361d0adc85ed80bb1e81dd5436a0
 DIST firefox-42.0-zh-CN.xpi 491278 SHA256 46bb4b1b67494004441135dbf3051501e0580fb8da29548de73f2e0fe12f7834 SHA512 af6b29e0b75b213ad82d8b6d9d0222f58a2992c3758fb6de2ea7e6d85736889eb0e66d45f3ef112eb5bc1b194ee747f5cf4eed73f153d6e35e031d2c36339993 WHIRLPOOL eeee742d90de3e7e5266617565a953a04f5c0736d76fef83710cd308150fa4509d5195b5a334097303896a1cc6fcb5070258c25fb2bea7862b77e8d0e7a28d77
 DIST firefox-42.0-zh-TW.xpi 482387 SHA256 ef4e9b5e01b85564b935a5f9bc663ffac61ce0f3ca166c316b1aee648832d458 SHA512 35993b713480d68d647c0bcee9ccb8b58949097663ea839ed4ff9de3d11081863db5ab035f74b61beaabc448440c2aa5f6f6955112a23c8702adb8d7af57cd4b WHIRLPOOL 6aea103b3298a07490af7d067df61e0c5693416d8003272478e7c73bb5f36e92fb2f5c96f8b86f83faffe46c5ed7eb142ecfce300e215096585a8eace330ac1e
 DIST firefox-42.0.source.tar.xz 165766832 SHA256 994a346699298277b64ec0cab72660b8d3e5b879a2ac79207576f7e6c33da3ae SHA512 d38f48047233bf68929bd05276165266d341c0186214687405010cac7ccbb266618eec43849b05fa12358eb43a106494d8dce9683bae62e133b7f990bb4c8aaf WHIRLPOOL 2ecb00867045f13739dc58838675f0620e3f0e69f7b446a99e9306061f1d44296fb054a8e19fda3f082f0c11f54c4e81810700705df574ee00d96f6332e1b0e1
-DIST firefox-43.0b7.source.tar.xz 175452128 SHA256 4ee0779c3c18f89b0c5bdf46c10b0de17811926bb1d7659afba8a43cf106e56b SHA512 bbee06acf2c8e38db26405f3c766a7930bd1a459140b3b392386eca52694dec05333bfa1baebbc68932065ad43489f91b24f7bf05761ca70194104464af1f34f WHIRLPOOL 38a66d5487e6366a7e9c56bd5825594b1a9fbb037028848a0a1dbaeb4510531dbad3c693932fe07abad3e5c73e77af8e0b4c214b137d8b32f6d465768d8c231b
+DIST firefox-43.0b8.source.tar.xz 175435072 SHA256 5025fe1b36f6ddf29884d5071e978f067c5903e333f4cd8acd30edfbffaf94af SHA512 129b9666bbcc47cea845a35e99f8066ef7ffe42766f83b26f479b7fce150dd970998b904ba7aed27d0fa7da6e901d56a9858f96ad83fca3a2bf4dd0d510f6011 WHIRLPOOL bfb10671d078ec706e6d9683d6f00f4b050a58fd968c6ac86c38b08d3273c768e5c2932f454dfded182a3d56b6042a0e088bec3d62158b306c4f422174be272b

diff --git a/www-client/firefox/files/jit-none.patch b/www-client/firefox/files/jit-none.patch
deleted file mode 100644
index 7da33d7..0000000
--- a/www-client/firefox/files/jit-none.patch
+++ /dev/null
@@ -1,135 +0,0 @@
-
-# HG changeset patch
-# User Steve Singer <steve@ssinger.info>
-# Date 1443349020 -7200
-# Node ID aa7e651a038a95c1f2eba8d869d66fb568c8b88c
-# Parent  c634c30551b04b8d214e7ae54c79af8d87b24445
-Bug 1208867 - Add xxx64 operations to MacroAssembler-none. r=sstangl
-
-diff --git a/js/src/jit/none/Lowering-none.h b/js/src/jit/none/Lowering-none.h
---- a/js/src/jit/none/Lowering-none.h
-+++ b/js/src/jit/none/Lowering-none.h
-@@ -82,16 +82,17 @@ class LIRGeneratorNone : public LIRGener
- 
-     LTableSwitch* newLTableSwitch(LAllocation, LDefinition, MTableSwitch*) { MOZ_CRASH(); }
-     LTableSwitchV* newLTableSwitchV(MTableSwitch*) { MOZ_CRASH(); }
-     void visitSimdSelect(MSimdSelect* ins) { MOZ_CRASH(); }
-     void visitSimdSplatX4(MSimdSplatX4* ins) { MOZ_CRASH(); }
-     void visitSimdValueX4(MSimdValueX4* lir) { MOZ_CRASH(); }
-     void visitSubstr(MSubstr*) { MOZ_CRASH(); }
-     void visitSimdBinaryArith(js::jit::MSimdBinaryArith*) { MOZ_CRASH(); }
-+    void visitRandom(js::jit::MRandom*) { MOZ_CRASH(); }
- 
- };
- 
- typedef LIRGeneratorNone LIRGeneratorSpecific;
- 
- } // namespace jit
- } // namespace js
- 
-diff --git a/js/src/jit/none/MacroAssembler-none.h b/js/src/jit/none/MacroAssembler-none.h
---- a/js/src/jit/none/MacroAssembler-none.h
-+++ b/js/src/jit/none/MacroAssembler-none.h
-@@ -233,20 +233,22 @@ class MacroAssemblerNone : public Assemb
-     void testObjectSet(Condition, ValueOperand, Register) { MOZ_CRASH(); }
-     void testUndefinedSet(Condition, ValueOperand, Register) { MOZ_CRASH(); }
- 
-     template <typename T, typename S> void cmpPtrSet(Condition, T, S, Register) { MOZ_CRASH(); }
-     template <typename T, typename S> void cmp32Set(Condition, T, S, Register) { MOZ_CRASH(); }
- 
-     template <typename T, typename S> void add32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void addPtr(T, S) { MOZ_CRASH(); }
-+    template <typename T, typename S> void add64(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void sub32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void subPtr(T, S) { MOZ_CRASH(); }
-     void neg32(Register) { MOZ_CRASH(); }
-     void mulBy3(Register, Register) { MOZ_CRASH(); }
-+    void mul64(Imm64, const Register64&) { MOZ_CRASH(); }
- 
-     void negateDouble(FloatRegister) { MOZ_CRASH(); }
-     void addDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
-     void subDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
-     void mulDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
-     void divDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
- 
-     template <typename T, typename S> void branch32(Condition, T, S, Label*) { MOZ_CRASH(); }
-@@ -254,22 +256,24 @@ class MacroAssemblerNone : public Assemb
-     template <typename T, typename S> void branchAdd32(Condition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchSub32(Condition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchTestPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchDouble(DoubleCondition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchFloat(DoubleCondition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void branchPrivatePtr(Condition, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void decBranchPtr(Condition, T, S, Label*) { MOZ_CRASH(); }
-+    template <typename T, typename S> void branchTest64(Condition, T, T, S, Label*) { MOZ_CRASH(); }
-     template <typename T, typename S> void mov(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void movq(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void movePtr(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void move32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void moveFloat32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void moveDouble(T, S) { MOZ_CRASH(); }
-+    template <typename T, typename S> void move64(T, S) { MOZ_CRASH(); }
-     template <typename T> CodeOffsetLabel movWithPatch(T, Register) { MOZ_CRASH(); }
- 
-     template <typename T> void loadInt32x1(T, FloatRegister dest) { MOZ_CRASH(); }
-     template <typename T> void loadInt32x2(T, FloatRegister dest) { MOZ_CRASH(); }
-     template <typename T> void loadInt32x3(T, FloatRegister dest) { MOZ_CRASH(); }
-     template <typename T> void loadFloat32x3(T, FloatRegister dest) { MOZ_CRASH(); }
- 
-     template <typename T> void loadPtr(T, Register) { MOZ_CRASH(); }
-@@ -280,32 +284,34 @@ class MacroAssemblerNone : public Assemb
-     template <typename T> void loadUnalignedInt32x4(T, FloatRegister) { MOZ_CRASH(); }
-     template <typename T> void loadAlignedFloat32x4(T, FloatRegister) { MOZ_CRASH(); }
-     template <typename T> void loadUnalignedFloat32x4(T, FloatRegister) { MOZ_CRASH(); }
-     template <typename T> void loadPrivate(T, Register) { MOZ_CRASH(); }
-     template <typename T> void load8SignExtend(T, Register) { MOZ_CRASH(); }
-     template <typename T> void load8ZeroExtend(T, Register) { MOZ_CRASH(); }
-     template <typename T> void load16SignExtend(T, Register) { MOZ_CRASH(); }
-     template <typename T> void load16ZeroExtend(T, Register) { MOZ_CRASH(); }
-+    template <typename T> void load64(T, Register64 ) { MOZ_CRASH(); }
- 
-     template <typename T, typename S> void storePtr(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void store32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void store32_NoSecondScratch(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeFloat32(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeDouble(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeAlignedInt32x4(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeUnalignedInt32x4(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeAlignedFloat32x4(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeUnalignedFloat32x4(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void store8(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void store16(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeInt32x1(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeInt32x2(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeInt32x3(T, S) { MOZ_CRASH(); }
-     template <typename T, typename S> void storeFloat32x3(T, S) { MOZ_CRASH(); }
-+    template <typename T, typename S> void store64(T, S) { MOZ_CRASH(); }
- 
-     template <typename T> void computeEffectiveAddress(T, Register) { MOZ_CRASH(); }
- 
-     template <typename T> void compareExchange8SignExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
-     template <typename T> void compareExchange8ZeroExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
-     template <typename T> void compareExchange16SignExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
-     template <typename T> void compareExchange16ZeroExtend(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
-     template <typename T> void compareExchange32(const T& mem, Register oldval, Register newval, Register output) { MOZ_CRASH(); }
-@@ -393,16 +399,18 @@ class MacroAssemblerNone : public Assemb
-     void convertDoubleToInt32(FloatRegister, Register, Label*, bool v = true) { MOZ_CRASH(); }
-     void convertBoolToInt32(Register, Register) { MOZ_CRASH(); }
- 
-     void convertDoubleToFloat32(FloatRegister, FloatRegister) { MOZ_CRASH(); }
-     void convertInt32ToFloat32(Register, FloatRegister) { MOZ_CRASH(); }
- 
-     template <typename T> void convertInt32ToDouble(T, FloatRegister) { MOZ_CRASH(); }
-     void convertFloat32ToDouble(FloatRegister, FloatRegister) { MOZ_CRASH(); }
-+    void convertUInt64ToDouble(Register64, Register, FloatRegister) { MOZ_CRASH(); }
-+    void mulDoublePtr(ImmPtr, Register, FloatRegister) { MOZ_CRASH(); }
- 
-     void branchTruncateDouble(FloatRegister, Register, Label*) { MOZ_CRASH(); }
-     void branchTruncateFloat32(FloatRegister, Register, Label*) { MOZ_CRASH(); }
- 
-     void boolValueToDouble(ValueOperand, FloatRegister) { MOZ_CRASH(); }
-     void boolValueToFloat32(ValueOperand, FloatRegister) { MOZ_CRASH(); }
-     void int32ValueToDouble(ValueOperand, FloatRegister) { MOZ_CRASH(); }
-     void int32ValueToFloat32(ValueOperand, FloatRegister) { MOZ_CRASH(); }
-

diff --git a/www-client/firefox/firefox-43.0_beta7.ebuild b/www-client/firefox/firefox-43.0_beta8.ebuild
similarity index 99%
rename from www-client/firefox/firefox-43.0_beta7.ebuild
rename to www-client/firefox/firefox-43.0_beta8.ebuild
index 8b97558..eeec89b 100644
--- a/www-client/firefox/firefox-43.0_beta7.ebuild
+++ b/www-client/firefox/firefox-43.0_beta8.ebuild
@@ -148,7 +148,6 @@ src_prepare() {
 	EPATCH_EXCLUDE="8002_jemalloc_configure_unbashify.patch
 			8011_bug1194520-freetype261_until_moz43.patch" \
 	epatch "${WORKDIR}/firefox"
-	epatch "${FILESDIR}"/jit-none.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
  2015-12-23 21:30 [gentoo-commits] proj/mozilla:crossdev " Ian Stakenvicius
@ 2015-12-16 18:27 ` Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2015-12-16 18:27 UTC (permalink / raw
  To: gentoo-commits

commit:     2b12277bd9f0874a386c47be2aa0372bffac2504
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 16 18:25:00 2015 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Wed Dec 16 18:27:01 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=2b12277b

www-client/firefox: bump to v.43, add hwaccel use flag to allow it to be disabled

Note that gtk3 is still not default-enabled upstream for release builds, as of v43.

Package-Manager: portage-2.2.24
Manifest-Sign-Key: 009C547C2B6559ED!

 www-client/firefox/Manifest                        | 91 +++++++++++++++++++++-
 www-client/firefox/files/gentoo-default-prefs.js-1 | 17 ++++
 www-client/firefox/files/gentoo-hwaccel-prefs.js-1 |  2 +
 ...refox-43.0_beta9.ebuild => firefox-43.0.ebuild} |  9 ++-
 www-client/firefox/metadata.xml                    |  2 +
 5 files changed, 118 insertions(+), 3 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 3579685..ff36b8f 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,3 +1,6 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
 DIST firefox-42.0-af.xpi 491004 SHA256 087fc72613b98336eefc5db701b361188d7e3950365650651c2b53ced362eea6 SHA512 26f91ea0b77d0377d37bce5ad0930baa518c3d60413f0595b5d9177793c5be3a475099aab1cdbcd9ce11c0242cde7a8ee3e51df891f9e967188e389b31a5e9f5 WHIRLPOOL 3ee69baf40b53bbe38d459a810c17767a34cee96182095bb6e399f7f699382be3212beaddfaf5214ab8648cace56e4a4f856dc0ce690b5f492f7051427df9d86
 DIST firefox-42.0-ar.xpi 527045 SHA256 c4bd2e007fffa25743e8f20f70baf3abcef6aee59b82fc1360a9a2ebf120da69 SHA512 48c521587f3f9f56389fec7e9f8a1a859c690cc38bf53c59ad0c04efcc141c3da49341da9d68038a1a099ad84a893eb24931ccfa27cef07319173181beb33533 WHIRLPOOL 605618b4dd95d7eefec2a8a9b5eea7424a7c44115c9a7fee39ad626639fe9f0e30fd983b18068810851414ac91f7c1b7892edec22ebb3eff51b238d1b4c1124a
 DIST firefox-42.0-as.xpi 516804 SHA256 397f51b49a9a5c754079561e5245e2e61508e61b1f1386e80fb9aaa91b4424c8 SHA512 3e8f232dc66c361635de4adc289de2b2dd1b68789a6f737f00682547f4f0f54ed1e8d4ded952129cae643e49c82265657b11471d5afc1d231771e981b796ae87 WHIRLPOOL 3552dc8d850625566f01204389fbb92521b42bde5e43d12f9604ab273ba870870b36e68613a3aab633d29082554c05644db0affd8db8262a93dc7c9e4c30dd9e
@@ -79,4 +82,90 @@ DIST firefox-42.0-xh.xpi 455527 SHA256 1a1776e5770dd361d0adc85ed80bb1e81dd5436a0
 DIST firefox-42.0-zh-CN.xpi 491278 SHA256 46bb4b1b67494004441135dbf3051501e0580fb8da29548de73f2e0fe12f7834 SHA512 af6b29e0b75b213ad82d8b6d9d0222f58a2992c3758fb6de2ea7e6d85736889eb0e66d45f3ef112eb5bc1b194ee747f5cf4eed73f153d6e35e031d2c36339993 WHIRLPOOL eeee742d90de3e7e5266617565a953a04f5c0736d76fef83710cd308150fa4509d5195b5a334097303896a1cc6fcb5070258c25fb2bea7862b77e8d0e7a28d77
 DIST firefox-42.0-zh-TW.xpi 482387 SHA256 ef4e9b5e01b85564b935a5f9bc663ffac61ce0f3ca166c316b1aee648832d458 SHA512 35993b713480d68d647c0bcee9ccb8b58949097663ea839ed4ff9de3d11081863db5ab035f74b61beaabc448440c2aa5f6f6955112a23c8702adb8d7af57cd4b WHIRLPOOL 6aea103b3298a07490af7d067df61e0c5693416d8003272478e7c73bb5f36e92fb2f5c96f8b86f83faffe46c5ed7eb142ecfce300e215096585a8eace330ac1e
 DIST firefox-42.0.source.tar.xz 165766832 SHA256 994a346699298277b64ec0cab72660b8d3e5b879a2ac79207576f7e6c33da3ae SHA512 d38f48047233bf68929bd05276165266d341c0186214687405010cac7ccbb266618eec43849b05fa12358eb43a106494d8dce9683bae62e133b7f990bb4c8aaf WHIRLPOOL 2ecb00867045f13739dc58838675f0620e3f0e69f7b446a99e9306061f1d44296fb054a8e19fda3f082f0c11f54c4e81810700705df574ee00d96f6332e1b0e1
-DIST firefox-43.0b9.source.tar.xz 175426232 SHA256 4ca14dd3a22bd8ef697f3ca15a53500f4079498147355ba38b7930d6355cf45b SHA512 3cf0d179c00f87ea15b928c0da64a1d3ba89745b6cab946120be3c0f50c6a28214672e6e243f94b137a780381419769f12032f0d283e065f44525dc9761dacfa WHIRLPOOL 14968fea04998cbd14608ab58eb6fb3885e23c3b7e15ccac09b2051bbeedab46650fd99d774c6ec7e532e61bd65f27175b7070b4d68de7e119773f45aba20739
+DIST firefox-43.0-af.xpi 493733 SHA256 180ca0809e10b7a2e4d75cbed04394e1965187bfb018d9dca9128ae6d773de28 SHA512 5e51836b4bbfe51e283d8fc2daf3c971fcaf0aa6a58789d062de87c21898e61283b80e7e4861265fe9b1e33b47b3d8473bb0e343007196dacea1d21038ca57d9 WHIRLPOOL b48249bfa32b6ea9d6749c4ff429c19aae29d15ec288164623eea4daba90f5ba9a7c43b8d5b2519e96ff31bbdbff805de3e373d76ee7e44e8c546bff5a09fe20
+DIST firefox-43.0-ar.xpi 531444 SHA256 052f40e5c7c6540aaa37bc7f63ec9f7ee7d8554a3da0a5655cd7802f1cd17d9c SHA512 7ac14b4df9a9a15d892dfede4496a9b1615e2fa452d48befe11a1d0aa06b12dda41634dd7dccb0c206725848fa4a73ef160f7639a7f09175ff7ff479a18a9688 WHIRLPOOL d2c5ab81bcab0258948efe6c75f9da0233b5d1fe3a1dee22863993e4d399b81be13be1ab0230c846334918d4251f31314210e25235b9bdbb19c051f741c8babe
+DIST firefox-43.0-as.xpi 520379 SHA256 734c837c556346e1cbbf823d4587acde37ea1a1a2661ab225babc817d8a879ab SHA512 58651c76664a36d3fb241fdf68f40854ae49ef0456353b292670a80826b195fc9dff269a89737593602721c0f5d8e0b3273736330015a0c9806ba791c7f7124d WHIRLPOOL b5275d94042e4a072b5991befe3e3d9665a8b23bcf9ba50b4ad3af964f4cac2fd9bc7f3bf2b02ac14b585919e337c8429053b8e52c23f93507bb5dfb38e3fcfa
+DIST firefox-43.0-ast.xpi 414848 SHA256 ede7e21f36e207e4e0b15dd508f4cd182c7e6b6d95ef3492a44ab4aa72f87c83 SHA512 f32250f32c4f675ebf5a99be4f1fb5c26203cb6b7922fa73f92973b19cb76c3f9aebcb1be12553c873d2c6a3f0a87eff2aa5cd6542f410f1ffff1edba536ae01 WHIRLPOOL 1ddd887cec728dc31d847fc0218a3345f67a3270bd10521870b7a36ef6241cc733cfeac2ef86bc694cf60318e886097d8e23dfe5243b4197a61062824e2d0694
+DIST firefox-43.0-be.xpi 462184 SHA256 b3c0f019e5d37b3591904c79de04042d97acb7d6439a7e7abf54f49afbda95ac SHA512 3fc12633f7ec53d69e3b5f4ff81cd92991de6820cb9eb7cc7cf39ce3bd82eaa64678a1e292886056c3b42fa4cb8ce51003277861d65e5d87b83fb803bd7db25b WHIRLPOOL 657f4a0a2b5449a14818a9ed4636d13a57646f9c2b4c660f73255d88bc399f0da2d9d24b89031d77b2cde72209260933451882b1ea3082fb6028c6790aa0ad7b
+DIST firefox-43.0-bg.xpi 503613 SHA256 e6a0121f1e03017938cafb3db12113e86e662efcb04bd276d1b48f5ca307ce15 SHA512 afb08e59d0fc701462e7edc9c032c8445db431c235664e1a7e258d5256916d6532a0b9e620d38ffa7b68cb3d5ba872c93cc072dba000e4999d3a48a4af01a167 WHIRLPOOL 330cd83e971fc4788b5c3bfa3ec2b45a8b6cdce1ea7490ab44c0154acf635a22b5a3a7b0369c2b2697501f163d2b59d30c73154875a43ac2727e845c204cfb6e
+DIST firefox-43.0-bn-BD.xpi 550337 SHA256 d5d40903d83ed016efa50b9e8ff4ff29e43063cc9548baab7ae8907957b1c5b7 SHA512 cf22b6d33f4f16217580df8f08616e6f6a6a56ac88b566057526cccad669d74f68d23f0863ca77dd0ef82d0c82e72128e55859b87ef1de4bd23451793d57bd6b WHIRLPOOL 56c11a71f19a5d02896760e037e6f31f71423b9144ef2d65feb4235dc1cdd4f3d608dc3085fe379cb4280091191e0e52b291fd992f05ec75322b9ea05d00b947
+DIST firefox-43.0-bn-IN.xpi 541695 SHA256 441dc10f8a8b5ded1d37b9ab41c630272c4d1a4e03d469bff7f83ccdc1192c18 SHA512 e11f373916b3dd38b31e1177041982d035932e5cc3e962ea2cb37e238f48ca85f20982c00a5e43ab838efc80def7131156bd748bf3e8d83be02e71581a749c77 WHIRLPOOL 462f675616b29c2828be766a930a9a7d6ca00e0e328bee504b545af27cfa21640d3ab6aee891b276291dfec3739f33293c2a39a8a12f68593a36a69fec5c75b9
+DIST firefox-43.0-br.xpi 452044 SHA256 8da826f3a61e1b12d700ded5c905bf9c734f66ed9989e85021d8c8de0547e81a SHA512 ad3ac22c0a55204acf81d1113eb5251f8188c6fbe7f4f948f87ce5e1c6ade45f351dfa4b0a67339311d0b0af15b9d22ba98af6b953ad2ccceba52c9ea7a3733b WHIRLPOOL fbb13aded0f7ad787ef212f9228a1fc789306ef5f46e8248f77799e87804000f06bf78efa05ee5c6163124587d5bdc682c113da041ebeda55c246e4c67850d15
+DIST firefox-43.0-bs.xpi 491001 SHA256 ea3adaf1eb8b5fdd48b836bbeebe43f1fe717f5592b18486592632cffc70b4d7 SHA512 652d359e7fba0cf57d3c659e3af4ce52bc1807353e0795d9bfa7aeeb165cba43f44aa84ec0f28afbf657ab03afd4868f3cc87ae42ca9c15e0c106e15c6b8ddca WHIRLPOOL e9ce70815658b3026631e0047b51dd8d0e35746ea7d290538d5f717d6660958cd1d532845302e07c27ff3291ca083ce79191dbb287b3d3db386c1513570d6b7a
+DIST firefox-43.0-ca.xpi 469147 SHA256 67bcce2ee0c8006ea5fc2a472e5a0796683d92e516ace6a2437f139b1d82eec8 SHA512 9ab5c8b90938c214b0e0315f80eae0d39bddaae81ebf62283b3766c5bd3bc42d06229f33ab0acf55b35f57d1b439bf9ac1e9a165b99a01553b4aaf4c637e75cc WHIRLPOOL 5328d7fc4540159ad45b76665aca9c50b3174bcc3f8bd0669978abedb1d591a54b4bec091565962132185153a77d1af0555bc47209f3cb7bd8c9c90db254ad5f
+DIST firefox-43.0-cs.xpi 458382 SHA256 2769d5894095289660ae8a1e10ac94aeb73a0562ce6fd87a743ddf2ecde2248c SHA512 d04b118c00698bb9dee661ec82b152d22fcac4778a0fc56b99512708efbc02a3e8045212d0b851dfcee6cc3cdfb46adfb258c1265967f46936e5062823978500 WHIRLPOOL 13a976132d299b92547d27cc711afe16e0d3c90f335ea6c8055775bcc4ae8f6c1b57b874bea5f558f032bf311bd9ab9ad78ac198a696cb672fbfb2c3feebefe5
+DIST firefox-43.0-cy.xpi 454623 SHA256 d4de7555bc1cf528400d16e68872171116db6b969ed14a94cf8adfe4deae7d9e SHA512 8b56994d268bbbd5d9662ad168bc2327eeeac923ef11a560fdb4fb7cd32b6835303579c72f962cfd7e583f8fb711eef02fa25b824c89bd5660c5b5d8eb9f7d06 WHIRLPOOL 9dbb04513cbf38a269f932aa103e38be6f5d716019c04492b8864135360aaf369adcca3941846993cf2b0a1bc516234c7fc49a4fc8796a625bd13c89b9b8bd75
+DIST firefox-43.0-da.xpi 462527 SHA256 d796b27050648c0344c329ef0fb5c4d378351c802a496470e665ece2e1a27691 SHA512 cacc225b856ffc9dfb7f5fcfa17d266a77c90f90f5f4c513462d25fcbedcd137a9f081fa075e04dcc5bb4d9a52e267f23f9da9f68fc6f9189b678d41d2094879 WHIRLPOOL 02be3d8bf4b0dc9eee7581ef9805bfd5a11fbc0a18f6aae910cfb35a438664f4854c8dd29dee838e8a109eed6fc82ef2083ff6624bfbdaa0f14ff5383899ded8
+DIST firefox-43.0-de.xpi 463838 SHA256 e9f7735510f34f0cab6e742dc5b41d7c72f2e1cc25ef524267703971b6b9991a SHA512 00ce200b87acadc09403215885399e4df3107da097b1e3e0808c0adf62a171e2ca361c0b3f2886105e777ce208a2f82a9dc969c8f96aee066cb96e976a983c2a WHIRLPOOL 57546cb29cfef9c7eead1c8480e327ba38e945c2d22c1ef98f56718389a53318b54855cc942c291ddab4f03c834b81f386ddfc555e111de0ac47b7812faaaec5
+DIST firefox-43.0-el.xpi 508363 SHA256 587fdcb068bdee4bf8eb8e45d2d76afa9e5f516ae1bb8cda2af39da45e3e5630 SHA512 20c91691ec6dd5919a92d36d8ccaf72d14d48220feb8afae22205630f14a0f1ab754cdbbc3f8251f1fe35c0a14383d7ec81e47ae19e28dba275767e9433e0453 WHIRLPOOL efab18973f51c3909d27cd13a0d4b2b1a35e2ccb5494d7519d66f4ecfb4ae45622c171fe630bffb6d0093620bfd19b2a9b4ec00cf87f7be2ae30e1441cb988cf
+DIST firefox-43.0-en-GB.xpi 448387 SHA256 6c0b8dd0efe578eb8fd9546440dbc481e8ad175ed4a02271610a1cc43e838922 SHA512 efaf4d614b8e38b94ea805119fd2aac6129a3c7a7cd97fa62f2ce5c95aedc9be2b8598982fe88bb52d10ada8ed116318cb7ff9502082d206b5559f06f0cf2320 WHIRLPOOL db819a7242673c5bde1425f16b8e1336f114a5b328ff199d23a13d87a4b42fac7299e2ed499d5161476e184e03bdefe9b0dcfdb6c10d410dad5cfdac400cd266
+DIST firefox-43.0-en-ZA.xpi 453304 SHA256 e01def0453ce51d40c4fc9783e54bd93948dd75ab7902d341b83d74c76e8db2c SHA512 9d18125def313dbca75c3ad97c59e0ccec3d3b4aef0e2c3be45314c0588fd9860c13272289a4c11a01d0996216d1fb7df874e9b284f0923b1ed93bcd50dbfc14 WHIRLPOOL f3a1352b65dcf591e8c39e4746383352d4e2ae8b2f488f4dbdb1e6094d9a60a63c60c2c8fe4af03a44b3a9e6e82f3c0c0dc4802ee57d1b94011477d8c7d3e084
+DIST firefox-43.0-eo.xpi 494359 SHA256 13b1949c73bbc5dc81acd56012def20650a573e24b61320deab99c3ff019e3c6 SHA512 333a934a5f3207d6be210fdc8b01516fa9d6b50e9874816586f04a31d82951a52c16971ec178f882fbd9e6cc1de28d7427e4744de7892832f246cc8ba984386c WHIRLPOOL 00ee8643227af1e2818016a99cc93077af154dfc2b392d435ec253a8c586fcd5aa38dccf5dd65282f305ec74511655c61c57d8dfa835190b33cc42f4b737f5d5
+DIST firefox-43.0-es-AR.xpi 462416 SHA256 3bbeef6354c91fefc75f7222e39f0c2a34d79b4ce8f85a7d5dc080f85cd17b2b SHA512 cc3dfdac6620f25bd2821eeb89117ea75834c9dc1084594b3ddd6e687b208f012fd22cfa9adcd16ec647ee498799fe1613614f7ec8d72dfdb222da78c6cea33c WHIRLPOOL c331f995844478e5aa5f0f7c081bb4ae8a5ea8215782f82ec6c250b8300f8424bd0bc2565f81c326f5a3a76cbfb5eaff37d167ce90963a46ab49a767748ecd23
+DIST firefox-43.0-es-CL.xpi 388433 SHA256 9b217b02c75ad153ab6608b3b07f4cc93acd517fe856d177ca77eb66fd2b0144 SHA512 9b2b1a9151a3e98cbaf390da81b6a2f653817b3b92a09c906f949876ee5a06e5338720929863af769359d1c4ea13573dbaa27200e85fde8c48160da13d4f51f5 WHIRLPOOL aede7dfadeb319d3fdab65ac4c0bfa4673ea2db38ba4e2b15e0c6ba2a769797d03e438816a61a159ed27fb7d2a3ab2f3e99233d29d1b07f504ead3b9f54920ba
+DIST firefox-43.0-es-ES.xpi 375331 SHA256 75f03fed082391c5c315e86342c72b6f118dd5389dcf9dc1dd83aa0879aa3944 SHA512 addfab6bb71264a6a54f0c10e2e5cfef3b687613c002a9b620a4b92424a3e09159f2dddbe177954ffc5c0e13de1a76d585bf7923f395a8bea9bd22f4a51029aa WHIRLPOOL 87a315535d3a6357d2d64a7f1d57daaad17b3e028725e706db3eb40edc500dce96f7560aa59b5ca43e00c9b9a22ee379314b20ccb447d5d68752acec85c1aab3
+DIST firefox-43.0-es-MX.xpi 468293 SHA256 4228035182cdcf87c0754b87c9b0806d373f9ea874bfbd9d1e43960bc3a10bd5 SHA512 8b4eeb71f995a8a6f3e34706b922746652bd0253a998012e867023dde66ec9917ed0eeb4945a11126af5bb0fd624cd0fc9d78ea46770db4ef1d21081eba1dd4e WHIRLPOOL 1c110340161b488560be63a6f955bca25f2f917c359df2bbc92d58f63df2838abaf63d52fe8d4ee75f6f315d60e432b33d2789e1af568e2ec1b527d91c5c2b0c
+DIST firefox-43.0-et.xpi 455407 SHA256 1dd00b402340a71a7b55ae2863aa1a413493a85c48ea1f7c5f8b51366c7002cd SHA512 28b4e60a2c753c8be88b248fc85437eead70bc77836a82456656317906d60a95322937af8b98d3f24ec23401dfc6fd42852b21ad73af3d5e27718b4b8149bcf4 WHIRLPOOL 70cf64d0cd325a0245ac8944a18365cbf3957637ed0589c3088fad36e5f891afbedd72bb16d41adb6d89946ac390132de350ab5d73774e72eb29983b7bc538c1
+DIST firefox-43.0-eu.xpi 477495 SHA256 09117eade214d245c30f1aeff87e8f7152e0cb7b282049da8c30509c3e81ebcd SHA512 2eab6b700306f3644ffee09e536ec64b7a50eeb6bd733da4826f8009daa8b50c03a7cc68c56d5c1884d23598b5babe1e5b943e5bb3d93c8924a97a58903bf6b3 WHIRLPOOL 0daf336ffcd746d045bcb4c091da33678801220ac30aa9bca423903bb4de10bc75aa4869843dfce4317445ec9e572e6082a1f5edf366e1380ab437dd3fe3f259
+DIST firefox-43.0-fa.xpi 529696 SHA256 da4df284787b71339f31a1741aa8176f33833e09749400482eb7bf0a28c0f575 SHA512 1edb8b1c15264ca0fd4c6b0a36b653ec243cecc01d4d4058202a246148baaf609fbaa7d65f73802210cacdd14f8af44d2cec5fd5fe92135e964e395f3d97b168 WHIRLPOOL 91df7192437000bca6e3249e011cd870c09a45971b592037864de746d4afee1c09abe1d24553a50be14111da54f153e762ba320bd155882ffa4e5ba12f4d89b6
+DIST firefox-43.0-fi.xpi 454716 SHA256 1f2c6283ad55a5f51fd936df96c5ad12576af5101aebebb59640959657105993 SHA512 f3a16976e21d2d81f75d8acef4b54ba55b123ac8ba8521b5481b37f56d3ae18732a6853d5019ec9a55e4ece9108d474ce11bc94ce864e72ae6c6ac63c3638125 WHIRLPOOL 3ba46cb5afccafe0d5fdfc9423d655ccb371749ee36e7a69dff462cb6e69eeb3334f59dcd575f0f1973b3a8babf3c0fdb07d3421b00c6360ce5a25540c9c1089
+DIST firefox-43.0-fr.xpi 473567 SHA256 0d9bdab9b3e7de4aace3cd887c202d1b5ce94578afeccd27f7abcaa0f29bee8a SHA512 bda04b379d086dbd01241776bb8cd283f84145d4662cb7aa12b3926b96c2fbdf97604c97b0f26c9288e86aace04f766873a1ef3c0dd4c6e3c4b92de5e08a87af WHIRLPOOL 3c2f0d3b30be1014d3f1aca189640cf041dd6116847d59fae00c752ca29823240aeae9ee707c08cb004ca846de39f4ea5090a63a1dc12f3094b2dcf2189628fc
+DIST firefox-43.0-fy-NL.xpi 466643 SHA256 ae5f8a371b5e7af949c10d2a85a84853b7d5a0d4bb0acb1ff0a507fa95627379 SHA512 65f7efd1cfa19ce12f1879b5d026be1a908b5c8f0c53436da209d19cca4a9e9edd1daf3ab12d884b802642a232db1026154e272650bd3b3fe77df62ab83a4951 WHIRLPOOL d123947d2270ca85d96210d7634b22b6b421ada61173c2825d58b7717f9473014f9a932807b55e7e4922a02ee834a62d0004f5e114723eae0967a5485702ae5d
+DIST firefox-43.0-ga-IE.xpi 478965 SHA256 d3a5bd8a179e94e046782b46aec9f9aa3e704b7f5dc1ed0afb29482e749db3aa SHA512 b49c9640e98f7a33714ea4d52bd1f3a97b71a220b5fb61794459cec458ce8ebf53e0748fe8dc2d2034f192272ed476a37e943b2f9f8e1def2c0d0e32f3030458 WHIRLPOOL e3c58b2c73e724f4caca0e0f8169ee04e53a98c74a76f70795c50dc7e364bb6acc121176fa081427aab92e8483e335c9fa1a3e7e07ee41d92ff7ee43fce920e5
+DIST firefox-43.0-gd.xpi 464867 SHA256 6054fe8ad1dc52a9a4e44b9d0a0041d5a1a5e4c44f00e13b51da04bdd9835a24 SHA512 0cfb57f1d0d1f135b8586701e49a296d2b5db1902a78dd2cc2d74e7ff3e5cbcf04a4af931d2a4217b5e4fb2ec513f2e08871d7df698ce2193e1017c33692c031 WHIRLPOOL f9ce372b9c33368c20c65872c1692b7522287a5a3227a4c82ecbe2a6ae1720a703586086ceed76001de6e434f3a2e43a6d887a9b9657239d5cfd079b7536bed8
+DIST firefox-43.0-gl.xpi 454572 SHA256 dc8822ad694c1e1084763e5b8ce87ada3fdf07f91fa6bba39cde3e726ae8afc0 SHA512 7887583d51e6ddc00479791c4ad7961533d2a6c362145d660f2abffd76b58acf3fba112f273da06e11499a5e4bc173844ff4914e9003ec023d93fa6212b27241 WHIRLPOOL 921f36f4756b13be6684c65646e88718673e7d1c261f59d0e028cea60300bd3252e4722322c4f0c2a348215376d8fa556ec8f79b17309908de69bcc3c2024043
+DIST firefox-43.0-gu-IN.xpi 495780 SHA256 30468dd8973c4c048a9f7c696245a2f829b89c2a79dce9047910286e1c625f5e SHA512 6a36dc17bd750d542765e8e8f86443347458e074305c67f57147111cddc8ffdd175ec0af037f6975852b2416de68593622394ba59c8b06d33bfbdb92c294aee6 WHIRLPOOL 3b5cc686b0bb9e0489b3e4e66d9ad926eb3d92feb323ef2d0da7f834f09ff88cf8358f8ad81f61101054c2aae594a098f5ae1c8f69578eaa6ab0c313158112a3
+DIST firefox-43.0-he.xpi 484108 SHA256 f3ce8f23a772b944aee103d74b371cc14c0b78deac152231340d5cad15d0379e SHA512 dd80e0abf9efaff10d71f59af7f79877452592369a0292b579f30ae355bad941db239706a509ced4e4e3fa1667033780c8ce060b6278fa53f33e5905c74fba69 WHIRLPOOL 52ac5cce5ba50bd53cd559e7226eff9df5f15c4b7e4b64aa5f390da0eb9daeb983902483c471045b1b1f144cd3ecfdf0153c60b93d97f3a08f5b83c4dcae7e8d
+DIST firefox-43.0-hi-IN.xpi 519472 SHA256 2b0ec3e6a920e1c266ce7636ae58f405c6846943a96c14fb0798767e6fa72a26 SHA512 bf969e0de595866cb3a68b48f93574b703c2cf210da70cc7bce0dfdf1f9a59b2e1400ece110842a0575a3064eea48946e052b81947a8da9e8c52910e85143ab4 WHIRLPOOL 03d703efd8160d5fd49f5804e5dca7d6b0a1faed30675c67b82394d0b3c1daa5979b37e9de64c415c922c21d516dbfc4b3c02fb92498ce845fb268d30d6f8a50
+DIST firefox-43.0-hr.xpi 489137 SHA256 f6bf0f17b16f182fcc35763c910f66aff492c10992f5a30262d9d902837b3010 SHA512 ad7ce372b38efd0e56ff5332fafa06cf8d41d1ccc0340b8ef3f187906ee6659abf11c76f22b54a79ecb36a29a143a6991bb0c50cb1530f55aaed2e6aa3a14f85 WHIRLPOOL e75026cfd538a83018f861c4d096228db02ea32949d8a7690372d7e692bb562472a56c403a2b16dafd3c36cc964bcbd61e5ef95747e16fefc30bbe714834accb
+DIST firefox-43.0-hu.xpi 464706 SHA256 7e150a90460234e7aec18adc9a22898d038165e72853cfa084b8e94e52b04f97 SHA512 5ebc94baa54bbc506c5791b85bde4d21d0305a2499bf40d3f28c13d9d355f78338a60f089a3fb582bbb0c46aa97824cd60b41a00d2d281017163fe2bcb4528bc WHIRLPOOL 20ca6bbaba1ae796c5cc5935f0e486d390cbd0988478ba06edb91af3e9d137beb38ba0a6172a474a798f22b53c7821025b3d128d685691a3f6bb38e52e987b5c
+DIST firefox-43.0-hy-AM.xpi 548745 SHA256 e8c55c8d35e30ef89101074e475887d62df5e1bd45861b47072e568087b1db98 SHA512 94f98657059ec3e86f65eb4801225c6127791e72ebb943c841b1a0fb06f78f5a3d5f15067cb26f0279b02e71bfffb708f83113111290fff950935c50d3b1730f WHIRLPOOL 09ebabbf0349004021fd896054366b98a7431efd02c3a8cd8024b6810b3d276fe7325509599ff8b46d87aaa153cfa045c24319aedee679e73559c9fbe911eb1a
+DIST firefox-43.0-id.xpi 443808 SHA256 c39dd9abfc83f3bfb07ab981a93ba87ce6ecc5a32d43c3a604d1eeb00270fae1 SHA512 31767fd2d94ff6e80709837b2aacd6a884d57b80c1e3f714c785352cbd71dbdf3bb215fbe34347170eaba39cf79b46c007945915c2fb814bf152275eb60efe71 WHIRLPOOL e57a5c3b9b9ee4714a06509ee0e88acc890c7ea21203ac58982130a3861fb12d8150b48f5051cc3094a8bff1d8fffe0be4898fa138e56d887785f20809f157cb
+DIST firefox-43.0-is.xpi 495903 SHA256 9bd135ae55b859b73d6652b256925aabad6b6a682d5fc25a2c59cdf16fa25602 SHA512 9c36ce12b984f5c958cba82f63e0d0016326836a26d67eb6d6d99c826f6578ede8ba970fbdf1fd4682e3abe1ae9a66841a7edce628a06312b697e5cf6a36dec4 WHIRLPOOL 97628ed4b7b069fa27e242f38db5f525b9b85f394cd2de8255be12dfd113bcb57fdd15e0cc67a6a6f9654b28942544d2cd17c5fcb22ba424fece81a40a09adfb
+DIST firefox-43.0-it.xpi 369328 SHA256 cc6e3904f6f47cc2e9a97e81abcbcaa77d12998875e1b2591ee6ab57c880af78 SHA512 c1436f45e9c03cab9d4549053f0de5d2376376cb00bd2c77a1377efee184adb54a7affb61ebf2d2727a393aac342ed040abac0d9d024e53bbe3f686eeff2fd44 WHIRLPOOL 8344b10cf143e33133d7544142944ef72d8c0d0566f3a77db0b5fea27d1f2937001528a2c2605f31a1511d0ac3f958db8a2890e067281cca6533d0c1f8339257
+DIST firefox-43.0-ja.xpi 491471 SHA256 5813f20c7c3f596554af2eccd33cc07e9e6d20f841dcd7170dd15d5c82c26874 SHA512 808f3126bcb5b1b2274bf2215cbcc101f7627975277ffea2c4b82785f790657482f8ad241d00d0775c933e66b622da936af32717d58375abfde7fbfb358b6223 WHIRLPOOL f90e7861cb97c36b11dcab86ebe22db148f62ea351f7ace911d9580025b06083496ed1444b2f4e6c049fb2ff0e83be3228a6a3c837507616156cbb2952a8eabd
+DIST firefox-43.0-kk.xpi 516824 SHA256 0cda2982d9d0f6bd414af2881fc96515498d10bf5236b1d9eec6c1a913240d0b SHA512 18e57836e712aedf028cbd1d7b5d33eb003f7d6e59dd90129ef50da62b8215d880e28cd50e860220ddefade98c00f3bcab590cf9cdb0006db14ee89fafae93e2 WHIRLPOOL 899a6a4504872a12820962e29cdab14841d488180c1187cfedd9451f103f3d2b788a42dc9a1b8367ffe8c7af5d191628980d56775f550914e39533937b987097
+DIST firefox-43.0-km.xpi 581655 SHA256 884e57663c7b26b1e081ffb256437579356e660f79e832ba38f44acb181fb8b2 SHA512 73c5d4ca2250a72aa45506376876d27d1152ea78cde4bc8ed4b6de8f7b75849c99e1f0cd70db214c09af9e146179be2c73c29ab4aa0e9b02924b29ef562e4c15 WHIRLPOOL 4da6fd2d263560aea79bb79aa5d1dcc661817e0766bc2eaedb45d5026638d8293948c0531916a1b94e4d4827290b7c63250ca7f4751883586135f431efb26e83
+DIST firefox-43.0-kn.xpi 548584 SHA256 4b7d44f69494731c58b1a7662c1449a4074b26af4065c7dd1760ea30c70ea136 SHA512 c4b041b2897ce3ad0299c6871aa925c795d8df3fa4a54817b5137a390542e14c802fae15e7d46c2eb8667b6857a71a49697b0b0f29df3c81fe9e3527c710713d WHIRLPOOL ca63d17d6eb29310022f0c41e85eb2633d81cbd8cd96f2254a0305f05140132d7d52b4b40790e135c939dc21d5742026a0e409106dd841e5c79807c102118255
+DIST firefox-43.0-ko.xpi 477481 SHA256 30eef1e9ccf6424d2c9f5721599dd4ac0791195b5cdc5f781454cd14811a919c SHA512 6c443214596c764644ac8be520e411093f6a1fec3b4d37dd9fa8d79bbb5c878a805f70293ead1c6daefed0ac4e8d588f99d131b249e9fd57a5c09ab9e6231ae2 WHIRLPOOL 5620b7625849c07ddcd505cceb0b85e30dbc550732c5d261744142605a37c29e7c56e1f7a23f222186fe6fb2ba930f03ed5fde3e2afeb60915242a990b18dee4
+DIST firefox-43.0-lt.xpi 498171 SHA256 476d124015e140254dbf3dc8eed5ab4e13c754d5e3642698c3af42f4d027a0ec SHA512 b37a4c282b98a4bbae962d8b5c658b5bbbfc9fc14e094084357ece6cd3d1782aa77771ac8b81dc452e4d0ef795bb70037cb699677707cb4b522a16a4a4169742 WHIRLPOOL 251324466880940519325f3f905170e2a219fb1c18c6a59ba5a39f3cb7abd09367f74f8fa0918de3abcf399721cf186df7499013e09be57fbf2acdf88cca9ec7
+DIST firefox-43.0-lv.xpi 478095 SHA256 772e85d5d01934cd8dd3ab5a56fddcddb2167f47fb7e6f5b4bacb617979a0ec6 SHA512 22829c87729e38c43af515acf733c07dd51da31e63891653d5e03bb1c77b548e82ba29b109bdf6e5d98790826fc4324a4269f5cf3adf935f05ac1e3e9ef76e85 WHIRLPOOL 60469678fb0b980851856adb8c7c500d8c4f115bb961e7ed08371ed42efdf53cb8875ff4fb476740e2d3b2cfce63cc0c444a84f0b6827bee85728540bd6a18ab
+DIST firefox-43.0-mai.xpi 527785 SHA256 935891c42c61580d95a9b6f858a46ac2d69edea0fa3a7845cb11c4729eb5e344 SHA512 7905380ff6eaae895f971a2a6ca943bb002c0a696ba4fd8829a3267404aadb9f45d653e4c8df04a64cbcb9006bb0cf67630d2bb727c14f0d6274de29469a0daf WHIRLPOOL 408d30869a01f46adf9cd347548590a8527729fb5683c7d482be05b6fcdfe781922391051247b076a7c68683b04ce1555d32bfb5371eef0c84d11af4b0ad2bb1
+DIST firefox-43.0-mk.xpi 537950 SHA256 aacd0b020ed882083879d37cb050b6f155fba47359ca03122230c6a5189c4611 SHA512 4ec972bdff91d0bee7fa110d1773c33d204ba49da65685c16c4a09b311272c0834cb8df07fdb64e0247461b69d28ca37a9b675939ea9af71062541b987893741 WHIRLPOOL a84e206f13089d3bc3915ddaf3d8479153b8b7887427428423495d0ae85137bff4e576c88f43c9e7881126f88c92322915ab21c066f82ade1c5b316d9c171efc
+DIST firefox-43.0-ml.xpi 537547 SHA256 a277d1faf91d189f19eaa01d5ffb07dbbd36dcddb5d42b3ef6e4f143a98e068c SHA512 29a25822725bd4f655ff23b12290ee6cc729a6b68dbb1f29b4863d42d74fd8f559007fb5a0ba6d4f20d015b439da1ce6c282e3eb5348ce30116add743ac25c39 WHIRLPOOL 8b0eeb9852dcc3f805638772d3928a16a74ce267a039567deaab92e07fce40a15fcf6ebdb32e11cb5d2f535a6bc3a8c4b38befd7b6027ff3fa8ef6618773183d
+DIST firefox-43.0-mr.xpi 527026 SHA256 18698ac9fb2b4f606a22e883ca7765482d2408f77fe2466c271696f72c49e3da SHA512 1712ae876936b0de2104cdba4c59476911ff4f4ca8d379fae3e96b22d3c10206977858c01d2c5ab475b0745cf3de8bd46cfefc883e1cb0e1ad09c0304c640644 WHIRLPOOL d96fc9814a57702780b69b3769bc0ae45f8038273700673129705a6724c9710eae0838e5efcd8897698dfbbcb73f92005fc3df45706b71f7243cc21675c604de
+DIST firefox-43.0-nb-NO.xpi 456064 SHA256 66b9b339aa4b4d28773745f89db1d1ace9e4fabe49c59ac9430a6bdccf6be866 SHA512 78cc98dd88cfe148a47f09f84ff791b05c5eee298c392bfe6b939d21357ff78bc5eaafef061f8a6a2ebd5276a5fe6be09f10a70db233926a9e7f8f6d2ed4833d WHIRLPOOL 82f3fcb5d793eefc8444d7d0d70d4439091cf0eef67b31298a518e13226238dc15e195f81c07b0006cfcfd9ac45359568a397e7d3bd568624ebf57096962813c
+DIST firefox-43.0-nl.xpi 454466 SHA256 8ac68a97e0aebdf63dd6691a279af5f5c107c7a497974866966fb060ba19281a SHA512 f4599043089401df12f8ecd841e92810c95317e08dc26ba78b304d17e0a5c0ca071db83ad75504c317ca132cdbdd7b37ab22a6ecfa537239b4bcb10f06cd41e8 WHIRLPOOL 6c54d65fcf002719c348b4ead36d7020ab137fb809aaa6f0f8d2b16639282e16f1823962948016062b627912d82c9a8cc673d783d4d7da7ae476e9ccd93f3a8d
+DIST firefox-43.0-nn-NO.xpi 450232 SHA256 6766906de580f7de713c5a46c91782251075c736ebfbea4a2c0ec54dbe4a06e4 SHA512 8007c9ec91793716dbb183bdbbd5d074c5e4f142f062fcc217245ddd2fc530513980e5d97bca86dcc5d52ab93ccf6f17bed3fe563ed03baaedc63c7e46a5e3ff WHIRLPOOL af7eb9c66e8c2f880e1d70f20dd32468411a33a4755c84f064ba252c77a111c29cb68121dd4c20ef806801df783b0966f0d13b63522f00b68d0e2929b6cf1182
+DIST firefox-43.0-or.xpi 536910 SHA256 b3f76ca55ac07a60a81dee0988ac99275d973c34636a5295a5a1b61227cdacc7 SHA512 4710154668816bd7b05fd678199cdd1d0d58c0e4db3c84caf39239f1a5d08fcf96a53c7099452af809b9563e2d5e48de916d1e61767241e935336c5ad92652c3 WHIRLPOOL 5eb2b658a2c5a03277c5f15e694d1d8a62ed7ab992e28283dc2cf6c09720298b61640e847eaad38a0925267c7d9656ec46e0b08de878f8026a9581b71c275edc
+DIST firefox-43.0-pa-IN.xpi 511158 SHA256 366a751f0c541549808e4f758e3d89429ed9dc1ca87948cacbc1ecd45547238d SHA512 ce512a642e9681118776e6cbc1d3bbeb884a53acdbc32606657685827e2b9fc8ea287d33562febb8cae877e8ac09e326938422a7109599829300857a04e3d400 WHIRLPOOL d09bad42d028d9267dff4569e081abaee570368ed716032d8bbb35780b979cd099799d9b45397fc7746a367be1eab2cf28e8592497ec9080212d2484ba9dea57
+DIST firefox-43.0-pl.xpi 404459 SHA256 70421961674fde783e70065664025b16398f2647e749c8fc9e8d15105c4c8560 SHA512 17728603bb62a7dbe413f1a126c0e82881be472d00c88be1dc5201d6728365f904c840387a0937265143e4823d1a73569cdec643d8a6ac04e7400390c27100c9 WHIRLPOOL 8fd16a95dde9aad7628ff039600531e84b612a10ad49bf670f0673144ba88e89e74b1b3e2435177da1b11a5bda8e716957a44e0c0b6bcc574d980420ceb71d95
+DIST firefox-43.0-pt-BR.xpi 473005 SHA256 390cae963b46fb20ce1eca25e55461559ff34f17f8cc2cd4933e81311c868e81 SHA512 d14d447b24a8114670a7f6159d648dcc563faed4b31a2d516ee1794c7cc9682f61deeef3c549ce4e04c0cb9f64e7f9b2ffdfb85ee91f5d92c2560245d7cf4c04 WHIRLPOOL fd2f6cafbd5e6894476b2936d1a680aee0fc31fbd39f69b405a376fe19c442cacd4e954291ced998eb6116519e3664e7f93b5d96edea7189fa5737c0045b9400
+DIST firefox-43.0-pt-PT.xpi 451857 SHA256 fc5f47bfb04fa48f8c69f5e2bf85dd7fb1f58f87a3fe6c2130df947cf4587e50 SHA512 cf47aee9052d8a61d5b5f2a2cc896e52cdfebf232ee158606720395db65c0cb05588210e4f72bc378c12cd4f5b517021f656637c261d3a4151a5e0466bee42a8 WHIRLPOOL 0f73ddf480264416eb0732b40bb187e8892f1ac339f787f54034ebe0ed454a01eac055bbbaf229f976812ce163f86cd4a7fa77d2202411aa71a46354b53547ff
+DIST firefox-43.0-rm.xpi 457313 SHA256 4196a0cf866253eb914723c4d5257411faf80f8abe38bdb659960e6dc5be2f29 SHA512 f04b489bd1d2318bcee3536a6043523ad17ba39f5a7438505035042dfd5e9ec133e7cd8389ae62f9f1c340bf8afbf27dca9e4c0548474c8c9acde61454ae4a39 WHIRLPOOL 83e5992702be7c4ec7aa69b8a6f82f0048be404a3aabb20eb4be580db19929afea07d438ef2db5d55e15806acdfd5af0f3e9617e8f1dee5345f1ad61bd09d3d1
+DIST firefox-43.0-ro.xpi 505832 SHA256 1d67763e94d33f2d4ed08b59a0582340f12153448f1dbcf4da8ce6ce2ebdc2a9 SHA512 fd6b27cdab709dc595a8380b061e1552106436c6ee245bada76e64dbf26c8841d2105243188171ce56458a5554ab6c8327c81327ca628ecb64f0269a0230626f WHIRLPOOL 212eeaa123cddabeeb089591c3e3c53ccf3e71bb305f4fbebb7ee8fdc4fb49d7ea31a728a8866929b18df9c54e18073a9550b9aa94b91493b2f41b0854cc6b23
+DIST firefox-43.0-ru.xpi 417904 SHA256 9cd929152d325f703607d50faaf771ab2f424f87bc19e4af2c9a75615194e366 SHA512 cc74b74efa325f5e6fcc7cc20e7d2696452ebcbc367754a404d4c056b4d8ed7813e8967fc18af9a885a6674807e1abc57c91f93371d180098f293c939564ec3a WHIRLPOOL a15f1aca59df28a38f44eb157fc51a13b5782900279fb0224d396352fc6e494e46bbe8e40aa846cefe8d27605dfa9c7b495d8c3b5d388a22ba5d7b3323df2918
+DIST firefox-43.0-si.xpi 548391 SHA256 bdbdb92280d46784bed8c7c706f501f19630647177f7ad2e2d11f38d3dd84029 SHA512 a8e3b9e37db4e46435cd490da545fb95d5bf7a1e891d5712f9d2ad97c7e770c00f1a9d7e0a50f927d56e502bb666a846d78dca242278f4af03235921c03c746a WHIRLPOOL 2018c9641d91adfe2fafad89f848df772264a827329a87a9a524f3d99d77017867918962dec5ad1cc79c588a4ff9532c341aec6b5ed3d3b51e13c51ee76cc5e8
+DIST firefox-43.0-sk.xpi 480518 SHA256 272b4f17c16e947c86fb92823bde2fb9fdd23ca76f9cd9e6b749afbff63a4827 SHA512 c6e55d982447bd395e9f4ee8d8f180ead9a8bf8d4aa3ab0cc5964da1bf4048e4ba99c8c119a26c736f9793e13047796c9af159e6c19a7d3a7d8686d6e03b5422 WHIRLPOOL 7cfd701eeb22611e5e53fe2f55f6013068ceb563f03ac31529b6a83701a035b80b344c7a274c127c9e802463965fe8e18cc39db9fe1575b940dbe49dc7b4a77b
+DIST firefox-43.0-sl.xpi 453337 SHA256 4e65ab619fa3c7dcbe96c8e045753fbf888cd8f8b43620aaf2dee721fd62ec85 SHA512 493006bded1898d06424ae8ad7b3c888e46fa506c4d9122bb14da9d7ed2b7fd3624ea1958111beacb8c5ea5891b3f73942a1bcd4dfc34459751bed03ef2a9540 WHIRLPOOL e6f3a92b7830f5d95435e7fe3b1dc7c3ab07cc8d91a2dd1bbca8169eafe14bb5928bfa863de802cad1c5f20f780119a0f833ea3d51e55312d46adf1042059398
+DIST firefox-43.0-son.xpi 462150 SHA256 7a5bd49bce76fb5345ff9a1272bcb980ebea19c7c44b5112dfdfca43bd7a7763 SHA512 10e74d588f325061af1c5542247145b4684f2167577ae10116ebfddfb7caa7f1c3cf5de69721a9eee36ed4fc5efe6e887ac4161fac4e8e0e73c1457ab741ac34 WHIRLPOOL 3bfd63f0f832e36a73eb46d8b8c3b811181ebd2abc049891fc4afc8e9f00a2e6130878f4713dbff8e5cc4ae21e551d56de4769b1628df11a72363323eed4b8d0
+DIST firefox-43.0-sq.xpi 497505 SHA256 544adce6795116edb9afa90affa7257784ee8fc48466291ab1dadfc6fa24dfb8 SHA512 788fe39d3c3f8863c552ecf12c53aa054573f7bd390d901587d0bac0a68b2c55baf46622b4b2b1b9c9a7cbba13ae7f8bc0f2b3dfd10fd6beefb0b42f22c2a92f WHIRLPOOL fc53a6212c77e60e25563e956969a1e1634292e5c7f2527d9105d5548e94558266bc32cae85c2c2e207e3fdf387fd8367841b40933cc61208d2400702d9616c2
+DIST firefox-43.0-sr.xpi 489348 SHA256 f36b0b495d0ddbd513a0e766176d9277c27fa4d75bdc03beb3b5528e67145872 SHA512 ea5edbdd586c504a80bc165350d7399641c71f8bf48ecbe3112dc1e4e774c629d48b7a97c40f43a427edd338752ac2e959f92d448b27056abf19ad95ca3c334a WHIRLPOOL 0d038ba0df1286f5d3e64efe36346010be625f95af2be2e8845164f0f1f0f2df0a9426eb8cb6eac0c4d4d39b264acb4e20bf028d5c9bcfd9437563e5611d5728
+DIST firefox-43.0-sv-SE.xpi 463026 SHA256 ce72df8bbc670b9c1919bf03d8f28a884ddff5852cbe15aec4f18efb800e7880 SHA512 a79f2ebb17389fc13097574d208e2025ba393d08ecb594deba92db62954227e83711bcfa72929ea44c56652f81e2cad87f94cf88d8e8547189a5fe31ea1e188b WHIRLPOOL e77196f0491660f03d3aaff792046480443245c0759169f9fb7aada642d143929579f6b5907f2d672a82eb0265e62426857c1383a45f0af7e25c393a2f74684e
+DIST firefox-43.0-ta.xpi 519588 SHA256 17610620319a3b5130e461bef650bd57e36b23193e8f3967630b082d76bf4013 SHA512 7ebfa17bbe2162f6f6681fbda6a41db3443b5c3a931ce1a6fe6fad6a9f741ad49e2084dda9551bf06283b13ef473b909b213a76f3be0357c72afadf0ec9af84e WHIRLPOOL dd215ad96901539e7430df727789d1377d15b5a16db6d817f0e7fe06f4387fd81da51cf0cd6bf80b709bb4fdb22f859848672b987140b397025b92f1b0b827db
+DIST firefox-43.0-te.xpi 537275 SHA256 dbae929748c411806220f676df7588e653594cb7ad451fa4bfbb265513aac204 SHA512 d39f3fff81bd2cb357cea9eab1cae203929a9b3196ef1ff8aa1d95a3562a3e45ab1a58382d7ec2865e69f77cd18079516e9b689928e1c0586fae21aca8d62156 WHIRLPOOL 8602a40eab1a0bf68c86209931fb9cc77a697d3bace33bb865a52dd06a880cfe3f8cba1b482303c09bd42cfd1e2b983be9802e14baa4c4f1c3013e55b2bb58cd
+DIST firefox-43.0-th.xpi 546507 SHA256 a251f642989c8e00dadb204767713e33a9e24f025d65218ae4cb9315ce240ac9 SHA512 ea41b9f2d113f643d5f0c00dc5ea530f284400d35f59dc7d998a9749bc71a38eb57be9d7112ec9fc2985a96e129f528c6ba4049be850c317bbdf505fd5a73062 WHIRLPOOL c4eaf342c4ed3b3bcfa968b0ac8814481582587ca216638b6fc970bf59117873c4c8e095044fa0c3dd8dd42829a8ca388fee7f263f701d645b7cdc691c09d61d
+DIST firefox-43.0-tr.xpi 492359 SHA256 d2248600b77bc5d38497c6590de89b94ae581b1734742fd7aa65d6827c7febbd SHA512 0379f705d070bf1961b04c93c10af781f43f3f5a574cede24f86966ac64ef2938e9b51997337ee6f64584606b02d3a994c184c90457a206ecf49e49c3f237616 WHIRLPOOL 60cca6a26251daf9d5db836a5f996dc4fd5eea916dac80a9a111751fbfe124b4816920b42b5be45aaeb645488021a578378dd6617d56864e87d345bd45c675b0
+DIST firefox-43.0-uk.xpi 508884 SHA256 b1d273ae648baa73e8f6bbdfe56242c89cbdc0e5b6c4fa83fc2850013c28f4a5 SHA512 44a935139d53f823a1d2ed4913d3230ef14c534ea5436fbe4997e620a9bffc42729ea73589af2bc1bb9adc931db5a0159d50c2b95bed23b14f9f8e4f4ee946f1 WHIRLPOOL e699dbc49169d9dab1c4ef5526cf8ad09e2043e6b58b5b5fe643ad167ad52cc234976d327c32ddcd639d7205df372c0c7798eaa285cffebd99d4c9a086be4a5f
+DIST firefox-43.0-vi.xpi 476612 SHA256 a92dd9fb9c66e40c86df450c3fe856e679d50905ce9126016f31afde18e74f06 SHA512 b20d46e3eb9351ba9b36a605a56eec6dda6c2f1281c4af8ba723a96fa8abed1db5c42dc8a25235f6a3e5869f2f2bfe915bd9009d1f08a55ea0ce5f92cc4c0bfa WHIRLPOOL 8c0e5f460d0079917d5746050bb804f16974199029f2940d49dc55198dbb41b6470ade15be2546975496672502cf87b1ff114891230bbbddcd89bbd471fec560
+DIST firefox-43.0-xh.xpi 458719 SHA256 f48562863c31cd8ec05cb0e79323fbd4b0c8426e75a387872e0e9f4a8483fe08 SHA512 ec79cccbba9c27e4c6ded11c45d7e3d81a058de217401c6a9f1862ae7072cc19329046cd59940638706ca159c2afae0e4ed061bbdef79230f54d60ab67b79684 WHIRLPOOL f0ffcb30152f77a90743aa58e1fef8cecf433fa0982eb9c8ed0300f2c33f7672e6fc0f2a001b874a6dbefbd0c1e48a1627900dd3f9ef28212c464bd5cc7cc135
+DIST firefox-43.0-zh-CN.xpi 493639 SHA256 73c74a35f7862f6e583d2fd9edb6fcd3e565c564977897896761e2ba153e1b54 SHA512 1298691174e95bd79dfa24602dec4d7cb5228e9544bdf404215ac4bbee1de7230b6c9989cf8305956d23136c10470a0779233124b3f3b5ffc695230bf43301d0 WHIRLPOOL a6674405f7ec161391b7876d8f1168db2719d653411dfdd17c2373560dee243914565343c3d3d48587b7b4d07dd3edc9443385a2d5fe78e2b454961c068f6e60
+DIST firefox-43.0-zh-TW.xpi 485317 SHA256 488fb84380b3729e2c78c2bb5c9d4046988f4c457727ac19c9458f92f1fe72fb SHA512 e5a32805e3e68b54b3ebe19f5b1dc9a606df232cdc7df301a57d6ba39ab6d69347c27480c2162e30cbdcf1601364c47f3811398751ab4f63f94763772212bbbd WHIRLPOOL 2273baf3e84b7f390a9c121a125902dcf1d625ebf4b96451f78642f16dd2e62b5abf4cda70a66daaec25d68e15e5bc1cd0cb460cde26f18c17008febf6198396
+DIST firefox-43.0.source.tar.xz 175414296 SHA256 a5b16741dcce9344ca71e39e0efb0e7e1336ca5160cb9b6b12f8985f402d8fea SHA512 3ca37428d1b02ba2609ec526e86ab96563b403a03efde8439cbb4acdb282b5970ccb6a14266483c839389d59e07f6b0297314890ee04a669ba2d4b10bc4cb738 WHIRLPOOL 14d8d90452bf6d0e3965f0c8050d0dd4771f1a00a6cc68f6ae9e26334e5a2c5cad9fae92d51f0f677b07aea3120e75686655cbd5c6bcf7f0b5f84d9a1ca4553f
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iF4EAREIAAYFAlZxrHwACgkQAJxUfCtlWe3RUQD/TvUO4XAo0HjBn5oCwqwlwlSR
+pbS2R5AVgEf2NRjaEacA/Rysvs6cqjhfYVdk77eFzLABB2VXv9Q/fQ6nbRbzrxfk
+=gHME
+-----END PGP SIGNATURE-----

diff --git a/www-client/firefox/files/gentoo-default-prefs.js-1 b/www-client/firefox/files/gentoo-default-prefs.js-1
new file mode 100644
index 0000000..7adb38c
--- /dev/null
+++ b/www-client/firefox/files/gentoo-default-prefs.js-1
@@ -0,0 +1,17 @@
+pref("app.update.enabled",                 false);
+pref("app.update.autoInstallEnabled",      false);
+pref("browser.display.use_system_colors",  true);
+pref("browser.link.open_external",         3);
+pref("general.smoothScroll",               true);
+pref("general.autoScroll",                 false);
+pref("browser.tabs.tabMinWidth",           15);
+pref("browser.backspace_action",           0);
+pref("browser.urlbar.hideGoButton",        true);
+pref("accessibility.typeaheadfind",        true);
+pref("browser.shell.checkDefaultBrowser",  false); 
+pref("browser.EULA.override",              true); 
+pref("general.useragent.vendor",           "Gentoo");
+pref("intl.locale.matchOS",                true);
+pref("general.useragent.locale",           "chrome://global/locale/intl.properties");
+pref("extensions.autoDisableScopes",       0);
+pref("layout.css.dpi",                     0);

diff --git a/www-client/firefox/files/gentoo-hwaccel-prefs.js-1 b/www-client/firefox/files/gentoo-hwaccel-prefs.js-1
new file mode 100644
index 0000000..0cb92b0
--- /dev/null
+++ b/www-client/firefox/files/gentoo-hwaccel-prefs.js-1
@@ -0,0 +1,2 @@
+pref("layers.acceleration.force-enabled",  true);
+pref("webgl.force-enabled",                true);

diff --git a/www-client/firefox/firefox-43.0_beta9.ebuild b/www-client/firefox/firefox-43.0.ebuild
similarity index 97%
rename from www-client/firefox/firefox-43.0_beta9.ebuild
rename to www-client/firefox/firefox-43.0.ebuild
index eeec89b..d63e5b2 100644
--- a/www-client/firefox/firefox-43.0_beta9.ebuild
+++ b/www-client/firefox/firefox-43.0.ebuild
@@ -43,7 +43,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linu
 
 SLOT="0"
 LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-IUSE="bindist egl hardened +minimal neon pgo selinux +gmp-autoupdate test"
+IUSE="bindist egl hardened +hwaccel +minimal neon pgo selinux +gmp-autoupdate test"
 RESTRICT="!bindist? ( bindist )"
 
 # More URIs appended below...
@@ -309,7 +309,12 @@ src_install() {
 	pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
 
 	# Add our default prefs for firefox
-	cp "${FILESDIR}"/gentoo-default-prefs.js-2 \
+	cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+		"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+		|| die
+
+	# Augment this with hwaccel prefs
+	use hwaccel && cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
 		"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
 		|| die
 

diff --git a/www-client/firefox/metadata.xml b/www-client/firefox/metadata.xml
index 7c281db..efd43f0 100644
--- a/www-client/firefox/metadata.xml
+++ b/www-client/firefox/metadata.xml
@@ -10,6 +10,8 @@
 	<flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
 		downloaded and kept up-to-date in user profiles</flag>
 	<flag name="gstreamer-0">Use gstreamer:0.10 instead of gstreamer:1 for media support</flag>
+	<flag name="gtk3">Use the cairo-gtk3 GUI instead of the cairo-gtk2 GUI</flag>
+	<flag name="hwaccel">Set hardware accelerated rendering</flag>
 	<flag name="jemalloc3">Enable or disable jemalloc3 (forced-on when supported prior to 38.0)</flag>
 	<flag name="minimal">Prevent sdk and headers from being installed</flag>
 	<flag name="pgo">Add support for profile-guided optimization using gcc-4.5,


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2016-01-09  2:15 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2016-01-09  2:15 UTC (permalink / raw
  To: gentoo-commits

commit:     0e62c9e0029c4a4de2b8e3c1ba75312854340fea
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Sat Jan  9 02:14:09 2016 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Sat Jan  9 02:14:09 2016 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=0e62c9e0

Update to beta6, include upstream fix for non skia builds

 www-client/firefox/Manifest                        |  2 +-
 .../firefox/files/firefox-no-skia-fixup.patch      | 30 ++++++++++++++++++++++
 ...44.0_beta4.ebuild => firefox-44.0_beta6.ebuild} |  3 ++-
 3 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index d8086bf..fdb285c 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -80,4 +80,4 @@ DIST firefox-43.0-zh-CN.xpi 493639 SHA256 73c74a35f7862f6e583d2fd9edb6fcd3e565c5
 DIST firefox-43.0-zh-TW.xpi 485317 SHA256 488fb84380b3729e2c78c2bb5c9d4046988f4c457727ac19c9458f92f1fe72fb SHA512 e5a32805e3e68b54b3ebe19f5b1dc9a606df232cdc7df301a57d6ba39ab6d69347c27480c2162e30cbdcf1601364c47f3811398751ab4f63f94763772212bbbd WHIRLPOOL 2273baf3e84b7f390a9c121a125902dcf1d625ebf4b96451f78642f16dd2e62b5abf4cda70a66daaec25d68e15e5bc1cd0cb460cde26f18c17008febf6198396
 DIST firefox-43.0.source.tar.xz 175414296 SHA256 a5b16741dcce9344ca71e39e0efb0e7e1336ca5160cb9b6b12f8985f402d8fea SHA512 3ca37428d1b02ba2609ec526e86ab96563b403a03efde8439cbb4acdb282b5970ccb6a14266483c839389d59e07f6b0297314890ee04a669ba2d4b10bc4cb738 WHIRLPOOL 14d8d90452bf6d0e3965f0c8050d0dd4771f1a00a6cc68f6ae9e26334e5a2c5cad9fae92d51f0f677b07aea3120e75686655cbd5c6bcf7f0b5f84d9a1ca4553f
 DIST firefox-44.0-patches-0.3.tar.xz 13724 SHA256 f10d7b8009f720268ffd8ce4354a91ad8604b8eb67cf85fa97250915ac1de639 SHA512 b4d93a506b2b1cc264e6407ec509b6fc6fa7543e99e90edb2ef1049ed087d50a1b36331c8dceb978f15de59483c737bac4f16753634418852a7beadff3834fa6 WHIRLPOOL 8a95ecdba91ace71ca250313f597eff87f845e9c33944ab7325690361b2eff449a346a90afd91d81bcdd39d1c541a0a67603f43be3c0b8828da1a81935c98aa6
-DIST firefox-44.0b4.source.tar.xz 182407048 SHA256 6b5b2ebcb94618747281a24fc3c6504b436bc3413283b77935484730bc21b9c5 SHA512 c9def31db89fc40295303a883b8c69bc62b796ed3604192e8945288b3edc1e49f93bea07f7c602992ad0a956cc3cf59e55ea5f3cb54b4faada0bbb7df0487e28 WHIRLPOOL 3f75dc7e87d6aa92a256b7acf1ef4e4326db7cf87c9f00db0765e65fb4e7bc19cd9b87bcefc291aed3b61796500506c4c005f00e1a248f3f52cd124dfb499913
+DIST firefox-44.0b6.source.tar.xz 182438184 SHA256 2e8dd8c4f191631142e624ba110daaeb451dfeeaa02554da5a7ac852f88af54e SHA512 2506889d2065b3953e6b3bf3edb0c02614c4e1b1419bb1fb1984c44e104cbc13765ce5f2f36f9a69c5030274eae90c90dbcb1f5b9a6615175982cafd698b0fdf WHIRLPOOL 8701c6d57c34769dc04eb9ab6db03dc77458ea35b19222ef36fa0dba08354f6a2b51622506f969ee3dc08ada9ee0650a6576db554d4e87fbabf8f25a1667d900

diff --git a/www-client/firefox/files/firefox-no-skia-fixup.patch b/www-client/firefox/files/firefox-no-skia-fixup.patch
new file mode 100644
index 0000000..4bcb608
--- /dev/null
+++ b/www-client/firefox/files/firefox-no-skia-fixup.patch
@@ -0,0 +1,30 @@
+# HG changeset patch
+# User Steve Singer <steve@ssinger.info>
+# Date 1451504814 18000
+#      Wed Dec 30 14:46:54 2015 -0500
+# Node ID 990f442c885d2b906ac3e18ee72f34478788c6fa
+# Parent  c690c50b2b543b420803e8192d6e08e06b20e0a3
+Bug 1235859 - Add FrameSize to non-skia downscaler. 
+
+diff --git a/image/Downscaler.h b/image/Downscaler.h
+--- a/image/Downscaler.h
++++ b/image/Downscaler.h
+@@ -166,16 +166,17 @@ public:
+ 
+   bool IsFrameComplete() const { return false; }
+   uint8_t* RowBuffer() { return nullptr; }
+   void ClearRow(uint32_t = 0) { }
+   void CommitRow() { }
+   bool HasInvalidation() const { return false; }
+   DownscalerInvalidRect TakeInvalidRect() { return DownscalerInvalidRect(); }
+   void ResetForNextProgressivePass() { }
++  const nsIntSize FrameSize() const { return nsIntSize(0, 0); }
+ };
+ 
+ #endif // MOZ_ENABLE_SKIA
+ 
+ 
+ 
+ } // namespace image
+ } // namespace mozilla
+

diff --git a/www-client/firefox/firefox-44.0_beta4.ebuild b/www-client/firefox/firefox-44.0_beta6.ebuild
similarity index 99%
rename from www-client/firefox/firefox-44.0_beta4.ebuild
rename to www-client/firefox/firefox-44.0_beta6.ebuild
index 8549e8e..034934d 100644
--- a/www-client/firefox/firefox-44.0_beta4.ebuild
+++ b/www-client/firefox/firefox-44.0_beta6.ebuild
@@ -134,7 +134,8 @@ src_prepare() {
 	EPATCH_SUFFIX="patch" \
 	EPATCH_FORCE="yes" \
 	epatch "${WORKDIR}/firefox"
-	epatch "${FILESDIR}"/${PN}-44-qt-widget-fix.patch
+	epatch "${FILESDIR}"/${PN}-44-qt-widget-fix.patch \
+		"${FILESDIR}"/${PN}-no-skia-fixup.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	epatch_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2016-03-14 20:16 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2016-03-14 20:16 UTC (permalink / raw
  To: gentoo-commits

commit:     e8b76976d5ad5b57bb572bc76b1a76a7c61c14e3
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 14 17:14:22 2016 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Mon Mar 14 17:15:15 2016 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=e8b76976

firefox-45.0: moved nonejit patches into patch tarball for inclusion in gentoo repo

 www-client/firefox/Manifest                        |  2 +-
 ...efox-45.0-jitless-atomic-operations-ppc64.patch | 46 ----------------------
 ...irefox-45.0-jitless-atomic-operations-x86.patch | 11 ------
 www-client/firefox/firefox-45.0.ebuild             |  6 +--
 4 files changed, 3 insertions(+), 62 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 10794b2..fb77ee1 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -55,7 +55,7 @@ DIST firefox-45.0-nl.xpi 429704 SHA256 ce63fd03a213876d4b78efbe266c36519331267c3
 DIST firefox-45.0-nn-NO.xpi 427850 SHA256 29d89d3378c7124378118242c60bcde1d477930f7b502bf0ed99c9014e7456d5 SHA512 938d911292ff52c7833e5443aff1babbb1e2b252c03080ceb60aff047fac5e09f0c5b0b8fa083d2f0fd16801b91f5d0a697bd6dc7c88dad1bc9e7eeeaabba764 WHIRLPOOL f4d1635a61bf98cd36528513819dba90f05d17a09d299ac34f0fcd1feaa26e11f6aa5357431e01ebad8720ba5979db4d7fcb7aeaec466d70875286f515f0e2d0
 DIST firefox-45.0-or.xpi 492735 SHA256 d8a6b4cbaeb0238888c660e0a8f47490008e7f1b2cbbf2a7ccc1ba8d60343c48 SHA512 068e8a653b94309203a88544db396e3dec0d317b30b92f0f527ac94348681456174b86139e7b955d8f4ecc7c3fdd8aad418944006dfa086a7c4d0757906a4f79 WHIRLPOOL 4e5fbbaa5f2933916575f40594080b26ccc410d6dc8c833179ba2c351aa324cd31b70fc6d0e2bc282dab71dc842b3c2fde9f46d8aee9f451ac1a3c70091f5ce4
 DIST firefox-45.0-pa-IN.xpi 485887 SHA256 36b94559c34da4ca60f3798f7c57869381054164613d40113d15b1a984f7471c SHA512 9352e1ac99f537a3e0e9ff394c83a9b5586a15161824d9e2425b0544687c5b515450b4c82e4c3b1638afb773fa7895a1a5ff8fc2b6ff03c1fe9814f30f33aa19 WHIRLPOOL 5ac5cc7d78bd9f5f9b4a55489da8709d13012ef35c33832a24594640660a20c7132ea7a33a0a8f53c30f63ae0c6c5d298d8a011bde603bfee18bb248beb4eb63
-DIST firefox-45.0-patches-01.tar.xz 15080 SHA256 fff58dcde62f4da03c8b11cb6d5daea018109424fa78352a2eff483c6c325a6d SHA512 a9ebb97a55fc4566b5e4ae3f1f6a4f8e5b3b4a903780e20d22e8b26f4571d270bc86c87c728c5956b16a8303d37e2f974cd880dec8f9b3862f655808b36eecd0 WHIRLPOOL be3f915f9a0a8ce0eca06c77bb1467dac8fc19198466b81582892a17eab05c5c18858ae135db772dd67c8321e343af61eaee8418b92ed6813ebcc7295b8c7cec
+DIST firefox-45.0-patches-02.tar.xz 15824 SHA256 9e6e6d999e61e47d603579d9362b09f6a29847ea79023b774ff1a2dab9f4a40c SHA512 bc30914c65ec93b97d95a9f53faaf06a7d9e834eebaa90d34297e6a1eddd8ced192acf43b18ca8e70d4617de8d3d84d161c182d67f3c3501d68fc49867e14dd8 WHIRLPOOL 9772b242f312dc3a4f0a6a77b45ddb26ad3a98ee6d96b6d46438eeab55d16d9a049e889423f4c84b404d5519823eb5afc486bb77cbe8918a3a2860663f32eb50
 DIST firefox-45.0-pl.xpi 379556 SHA256 f0ab7ae2db4a14a99c0a1ecd2f94086d994db4a6da34c88c31d7c9348c9c2d2f SHA512 7b1e659d2cce64e63b17760c887dc07f6c8f1f914e36885f2cec271ddd4c6a7e3ec92f4b6679fcce58513aec1fcc8da01bcd5b5f92e224a84cdf29d94ea20cb0 WHIRLPOOL efa92012332c42ab81d9c468cfbe27824ddb3ffc8af52bd0e1a2f009794e46d855c3bce0e84bd1a69e0d1e32850806e901ecf48db084331ef64ad6233e8d4a6a
 DIST firefox-45.0-pt-BR.xpi 445519 SHA256 d6a00cd285f091eed478a2f558e78970ef12f80865297baf35acc1e903beb074 SHA512 f794f2b7277c44f0691c569e1bb36de3e1188e16241bb02aa1c5b5c1a30736c75ed1f8b9801fc72b10a8d34d2fe7c03b2e2877bb5813cd8c6baa33078ec88aed WHIRLPOOL ae03530367fe4188537166209b6446831828dff4df7ad33abe9fc7b19facbfda45a66cc6e14e5edb6b34cb3a7959221ac84d82061547b3168bb16c143071cb91
 DIST firefox-45.0-pt-PT.xpi 431497 SHA256 faf804a408fe1e9bc1285ce1cfbd111be6b249860ad30b0b9c4e17a74a1eeaad SHA512 5e39b9b16acbd3f7c734e92bb2c0b6b6d9a8daa78d476f64250a493bf4ad8e0eb539549b246558d475455b6de83f5760da6773e0aabcabd8003587ad40b31f9e WHIRLPOOL 1cd96378a21cff2a1a88cfc05ddc27d9504916c32b173e6ba51d8c3d57da62aaa9bd747e29f8c746dae76e81bec8da71d2af80f494625ee36fa2170984b028c7

diff --git a/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-ppc64.patch b/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-ppc64.patch
deleted file mode 100644
index 26e9373..0000000
--- a/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-ppc64.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-
-# HG changeset patch
-# User Lars T Hansen <lhansen@mozilla.com>
-# Date 1457091735 -3600
-# Node ID 69f237c2cf9131e97372debee01931dbacd064e5
-# Parent  3aa4483740828617001060fe7386051020521e90
-Bug 1253216 - clean up the atomic ops ifdef nest. r=jorendorff
-
-diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h
---- a/js/src/jit/AtomicOperations.h
-+++ b/js/src/jit/AtomicOperations.h
-@@ -318,21 +318,29 @@ AtomicOperations::isLockfree(int32_t siz
- } // namespace js
- 
- #if defined(JS_CODEGEN_ARM)
- # include "jit/arm/AtomicOperations-arm.h"
- #elif defined(JS_CODEGEN_ARM64)
- # include "jit/arm64/AtomicOperations-arm64.h"
- #elif defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_MIPS64)
- # include "jit/mips-shared/AtomicOperations-mips-shared.h"
--#elif defined(__ppc64__) || defined(__PPC64_)       \
--    || defined(__ppc64le__) || defined(__PPC64LE__) \
--    || defined(__ppc__) || defined(__PPC__)
-+#elif defined(__ppc__) || defined(__PPC__)
- # include "jit/none/AtomicOperations-ppc.h"
- #elif defined(JS_CODEGEN_NONE)
--# include "jit/none/AtomicOperations-none.h"
-+  // You can disable the JIT with --disable-ion but you must still
-+  // provide the atomic operations that will be used by the JS engine.
-+  // When the JIT is disabled the operations are simply safe-for-races
-+  // C++ realizations of atomics.  These operations cannot be written
-+  // in portable C++, hence the default here is to crash.  See the
-+  // top of the file for more guidance.
-+# if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__)
-+#  include "jit/none/AtomicOperations-ppc.h"
-+# else
-+#  include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always
-+# endif
- #elif defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64)
- # include "jit/x86-shared/AtomicOperations-x86-shared.h"
- #else
- # error "Atomic operations must be defined for this platform"
- #endif
- 
- #endif // jit_AtomicOperations_h
-

diff --git a/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-x86.patch b/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-x86.patch
deleted file mode 100644
index 86b2713..0000000
--- a/www-client/firefox/files/firefox-45.0-jitless-atomic-operations-x86.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/js/src/jit/AtomicOperations.h	2016-03-12 13:42:27.914524205 -0500
-+++ b/js/src/jit/AtomicOperations.h	2016-03-12 13:42:15.644573630 -0500
-@@ -311,6 +311,8 @@
-   // top of the file for more guidance.
- # if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || defined(__PPC64LE__)
- #  include "jit/none/AtomicOperations-ppc.h"
-+# elif defined(__i386__) || defined(__x86_64__)
-+#  include "jit/x86-shared/AtomicOperations-x86-shared.h"
- # else
- #  include "jit/none/AtomicOperations-none.h" // These MOZ_CRASH() always
- # endif

diff --git a/www-client/firefox/firefox-45.0.ebuild b/www-client/firefox/firefox-45.0.ebuild
index 8fa5df6..e93d2b4 100644
--- a/www-client/firefox/firefox-45.0.ebuild
+++ b/www-client/firefox/firefox-45.0.ebuild
@@ -27,7 +27,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-45.0-patches-01"
+PATCH="${PN}-45.0-patches-02"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 MOZCONFIG_OPTIONAL_GTK3="enabled"
@@ -132,9 +132,7 @@ src_unpack() {
 src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox" \
-		"${FILESDIR}"/${PN}-45-qt-widget-fix.patch \
-		"${FILESDIR}"/${P}-jitless-atomic-operations-ppc64.patch \
-		"${FILESDIR}"/${P}-jitless-atomic-operations-x86.patch
+		"${FILESDIR}"/${PN}-45-qt-widget-fix.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
 	eapply_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2016-08-31 19:10 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2016-08-31 19:10 UTC (permalink / raw
  To: gentoo-commits

commit:     88d91665bb1b544be50c965894221026f90c5c4c
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 31 19:08:17 2016 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Wed Aug 31 19:08:53 2016 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=88d91665

www-client/firefox-45: bump to 45.3 and patch to fix gcc6

 www-client/firefox/Manifest                        | 178 ++++++++++-----------
 www-client/firefox/files/firefox-45-gcc6.patch     |  40 +++++
 ...firefox-45.2.0.ebuild => firefox-45.3.0.ebuild} |  22 ++-
 3 files changed, 137 insertions(+), 103 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 9a9218a..33bd4b1 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,94 +1,90 @@
-DIST firefox-45.0-patches-04.tar.xz 18600 SHA256 2ee0ab58e0a1db7b573dd7ac407dcb9a43a85dd295c5d6d263f72ce629c5290c SHA512 cf5d4ddfe14dff92950baae066350ace0a503c5bdd9d837e4724fd2fb905a2fb540dcf34971531e79547dd62dfbf217d472f39ccc4802f34a245e24f406fdb5e WHIRLPOOL 1461c61ba7e54b7a91c758fdf91fda22260eaff4148b3cccab8ccfd9d09a3d80c0314e999284d392d9e961c42cd9720d6d30ac190074f74d1e53ecb1afa1b1e3
-DIST firefox-45.2.0esr-ach.xpi 426530 SHA256 ab32a48c5904390b6bae54666d6cdade4500256314b427d84c92aed6a545365e SHA512 9654328b112f4a1b2176e4abe5cf43726a0325c981e1c53f4bb583e730d7adadaa4faa42fb1100ef0678e91e8c7eb43846a2cc43895880e660fbb068c2549c63 WHIRLPOOL 8df534aa10bbe99044337da86d9ec63d255c4f3ef6c12ad67585cc1acf5dba1bf41e4fd0692f4ff880d67ef688299e93b472f1bc85ed766473c6730d13a2e900
-DIST firefox-45.2.0esr-af.xpi 439353 SHA256 ad0cac28e5f308d1b28c871a7a19ae8f90b5f766664a6d5f3bb4180035e39250 SHA512 584f78a5d0a2f2d4364129eab116e10a7fcb02a28bf798375d904b1a9bdcf1e09474f6718160290a0523af61c4d88fce94615ce581adcac94cafd7d1a5d946fc WHIRLPOOL 8955197d5b38af620f991333e31d028fc6da4846d65e1f6bffd133428ada840e8f37e77419529b897a51218f8a6536b62faf69ba53dfd724c9bce766d19b33f9
-DIST firefox-45.2.0esr-an.xpi 449036 SHA256 800b61986f4a120ece9746abdf3c0eff4702c16bc4968cd517d464705f40c848 SHA512 e7b6855452b906e5b0547bb6392e9795095456dc10651640d6482d809bd3655611b61cabb858371c19b45b1d71ded453e17ddb892851d4d804b5782c28eda478 WHIRLPOOL d65b0f09fe36908bf7639724e94c825a070e0687ec03ec7033954dc79911844479952086f09eca20f6084d2a44038b1dfdb2b52d4346901f94c74460f1275698
-DIST firefox-45.2.0esr-ar.xpi 474961 SHA256 e59ce49538ea7825c762acf88263cd8cb3ceb2c51184ead1035d6995e8ee3e36 SHA512 13f29b8c9577156b06c8d76333adefdad238cb0cd3102d8acc3e0c589cd5dfc966b70612f8c705f1a4da9a8559ac02abb1ec1a82d89a21a65706281b34ae8077 WHIRLPOOL 40d7313c917a9deeebb12c7cd4579738560e2975865c10761b20fef4a409103fc8191bc1647c8e2e853bf2db0190309c4dcd73fb24eab1066ad27bb3f154a4ad
-DIST firefox-45.2.0esr-as.xpi 483096 SHA256 67f6fd6bd8c40c97b339fa98f10b34dc23c149260a130bcdb60fdd3f9914ef8f SHA512 5d698d5a49c3982e9452a48be3c41ffa29cad03239d61531b74cb92ec360dec8b72f049eb631342803f358ada929f9cdf7d83aebf607140e44129f13e8a04a1f WHIRLPOOL 6a8dcae38f68e286191fef23d16c7eedc0249376e51bef51d4ab39d917a01d777edfceb0f6a6adb779976c12603fb95d4418c41d42a8627efd9c354e40829c37
-DIST firefox-45.2.0esr-ast.xpi 419249 SHA256 2b9ebd133922ea270fcec57b41f0c123fd3fdbd24fb0ff5a1afde2595691a3cc SHA512 b1e98051a5221cf5838262f67822aee86bf52c0b31cf8ec0097eb77baa07eafea44c25e85f099b8aa7d6363c7d7efd3d3eaebd95ea1504ce465589b1c34058ff WHIRLPOOL 5d9805b25f3a3c20d9899603daaf901bb3b307b797ee4f463b854bee192c7443718d834836bc2dbe90bcd1b516de1bb6a421d8fc2f0eeecae7f99cd04b120f64
-DIST firefox-45.2.0esr-az.xpi 464018 SHA256 8eb51f7a8ba22cc2d98d017c8935e34e8fb4bad55faac7d4b2a2554ea2b41ee7 SHA512 83adf73e83cd08485b3b83b8ac625f073c443b18a14403725bb7bb3f80afd80b4c90ae332dbe40c67fb45acadbeaaa7ab9fce015efd3b66ca79aae644b01cc57 WHIRLPOOL dc44e5051c588e66729636bbf7a8959e3a05db3b107df99f0747ef1c0379d9e5c6935852db04f51e466c8a7b9b6a38b4f52c1e3e2844e2c35ee993c80fee9f92
-DIST firefox-45.2.0esr-be.xpi 442619 SHA256 70fca224ef5d1511b407bcb03f555d0efbdd0917beb6d1d813da7d6e1b4ff5db SHA512 ea22c730ef34ab0390ba1c39d1e24d8adf8e6173fd5d5e91ae0beeb25b461b2555d41e2d4505037b87fa0a368b89f4f6d0a58efd23613bf88f06b39253c95133 WHIRLPOOL 4e953cf79847e599c1af211a2febe21ae537822718bcacca2b162990cb238d353d5b69e7e02987617540063f78bf8c94a7d37bf6df46b0c7e03f219b1b39d625
-DIST firefox-45.2.0esr-bg.xpi 460809 SHA256 eee477ac2a49d30afaccff8442936ccdc19848806aa71213982f7f4f21ffd5fb SHA512 434fb3657d6f16c5ebd30a2547925dd0a39d1dec725d4041119422f247d7e463ddb03d2bbe658be4eb729400eac428df5bf1079e46a39387192d30e71de7d17e WHIRLPOOL 98dd1db4e8fa7ab0a26d1029208ffa71cfa2a3d905f3fde540dcda9839d7ab52b35e7ffb92e3a419c8a59dd4b402e93c1a30d277f8a9154638e3fc0509ca9ea8
-DIST firefox-45.2.0esr-bn-BD.xpi 515643 SHA256 1f58d1245fac7492bcd1ec42aa1c2179539bf515dc2a82bf7cc9695e3f78728c SHA512 375ecd3e8628796b22cdaf29d997ebb86700df8f044b58f652ca683690e4fe0a504138801a5fdbc371ad82b79c7d6b7d8cc9c281778a444daf74641e82713fc6 WHIRLPOOL b78a993e4dacf68fa85a51f1071ead5daf17c03af012b4709e4bd66b5aaba90955297fc3c7a236839835fbdde60878a66e35416981e202b6d7b031c438ab51d8
-DIST firefox-45.2.0esr-bn-IN.xpi 494076 SHA256 b83af2acca411bf6213bcf2d320c5b40c20733baf712a053460222aaa6e0c8f2 SHA512 6962583fa4e28449ad2cd1112605d84dc228940a5aca47411ceaab63abd6db4628b1c7e61f3ca661e504d759d9c19f495b193d7a64b750f61ce1cd763bfb384e WHIRLPOOL b2c2fc4b845a063f2411257023d616f929098a16f476659dc8f43aa2fb7b62939dc0f31eb9fdd9950a130784468c0326239900876a6a9411542dd6fe2fd0245e
-DIST firefox-45.2.0esr-br.xpi 436390 SHA256 14b1c5e5f904cd41e2fd4e1313918f29b2df318017bbab6e757a642b7bb85106 SHA512 2b930d8dba0941e69e214ed904adaa0075ebb130352e2bf2dc84efdd7babd05eacbec2c4bf3e83dce62999b82f51976c0f74f9fe503f4b4c8882a837fcb9cf6a WHIRLPOOL 7890623ee47d2da13ee53b2a2062d63fa25d8b640eadb51bcf71801709f4a1c6da94941e829d8e25aa4e72fd592612e0f5fe58fb7fc5ce1c2f5aaaefbb54dd15
-DIST firefox-45.2.0esr-bs.xpi 442998 SHA256 4ec98ec6a9a72a9973bd2d422ba0192257a9162ad11b12d080b1c0681bdc4a0c SHA512 37d42c5818db7f5171634d2a04cb1c63809a64068da89aa41895af74a6e917bee438b01ac078d0a9c3db3b5937aef27468a7c45af569e145191d4310f9e16b2b WHIRLPOOL 721e7bc1415110184e149cabbb7578b82dbd5c573aea4a09cdb561892c0c45fd9289c75505d67bd65bf31a79daa4ead7df10689d7f3b0fbfb89c602440446b06
-DIST firefox-45.2.0esr-ca.xpi 436832 SHA256 f894c0a2ac465f8391bff78287444837dabf1179901968360157bba3ec5b6efd SHA512 ce8de68a1b12a19309c4054af2dd326a8257ddcb440a78d89f36025aea4f7046fdab1af1d40ef98982885776482066802dd87ca0332a3aaed2385356b14a03c9 WHIRLPOOL a5c16e27b15c415a938271c85b2faa3a25a16e59560660124a62a7d0455ddc5de3aa0763bc93fda0ce626f9fa2debb13d1b633c99cc294e248723707f7dfa6a5
-DIST firefox-45.2.0esr-cs.xpi 443482 SHA256 7f03c25a4889f68b95127ccf05a5cd31e7239fa494364037e8982dc120750aff SHA512 27da0f113e269176bbe245c9c4d0e8b25a560e47e169def289d840e05bb1ec3331d1b39127fc2c18bee35fca7bd7c5bb4a360c896cbbdd7bf3eb76eef905ddd4 WHIRLPOOL 98340ef1da4871cf2bf9b55b640e50a942836c16b7ef76438de29ff8887afe917be0d057b52bdf11c21f964291a8ca4e308d087ef36a0d4bc65ff42b4ad700a8
-DIST firefox-45.2.0esr-cy.xpi 438907 SHA256 c553756f9c8e637e575994fc6ab7947ae4a7a56d795049800c33460c6dae15d1 SHA512 22cca3a94c3cdba3ed29523e560a38701341debff4613e4b9b39d6ec9c53ecc569f80191ad97f84cac24fda5b07d61c8c8ed7e908d86936e947268c6fda379db WHIRLPOOL ac6340744a5ab4e2d09599756590d58b0f499802d09d22fcb447a67117c58163ce2fae6fe701c3ad21582c6b2ac045baf3d9242ef7280a0fa6743bc33b922ff8
-DIST firefox-45.2.0esr-da.xpi 430078 SHA256 73451be8019a5d58277abac7882deb87fcb9ed2a3623af84ba1b36dfb8c2c63a SHA512 130582fba2793d036586e97ad2aa58d7c5a6b2f9b356143ae3e4893be59fee6f80581feb0e2251b5d2f5185ca70b7b5635f00052dc59c5f30291fe0b575ae631 WHIRLPOOL 05b2c765ee1824080af27d7949945d9bb77947d3cbbbf0c14a1fd3510d34368456fd5f190a7742e03fbba482f6e6f68613a6140167d601d38af8b393e08c9763
-DIST firefox-45.2.0esr-de.xpi 445481 SHA256 39cfb1784510fb2e3554853504c5134f375976062625d42eaaaeb7285cde6da5 SHA512 09600ae4bdbd33170843ff098b596a3b25880bf82516a131f2827b0d6504b0eececf97040a837a1166a1d1023a31b1adb9e6fbb728eca9523c4de36e1de36af7 WHIRLPOOL b05e716bfc746e34e2396301025049f5673696acb32a904993f2f48e1160bdb6a3311a892422c34b47094dd4c288116a18d893bdadbd4111bde00a99a9b291ee
-DIST firefox-45.2.0esr-dsb.xpi 463791 SHA256 2074c16b5182987cce55976c8a37fbd547d41691e9d2445deddfe8a6a90a306d SHA512 e6cb65b9ba709b3cbe911484836808454f459471958c04149e073164038766025f0548c61cabe67cd948d0b101a741aa45241c785a4b901778dea26fd558d958 WHIRLPOOL da16c6908638eec3e63dc8bd981890f1a72db5da8bc356667a1406e407f7096bc611a843b140294b7d56275a5400b8a1e4ddaa69d8f52163f0247ba1de796a70
-DIST firefox-45.2.0esr-el.xpi 470866 SHA256 fba350202bf123c1c653f8a39c63bf751699e2f4e6381add7b0ef43cca6c6a5a SHA512 3c43bd3aa980ae49df62b644183fff43cc5898a55dcf7dd25b83d2f438ebf0d678a6053a6ca2c989f78bca572996107175f2731ae562012c371a9d43e7c8f4ca WHIRLPOOL d093896266186b4c67177f17a5a301de30e4695351ac944e41c39409de6fc01a5f0fe7caffdc86f5790b75bb28dac94f7a6494d37a238ac33da398635dadf5eb
-DIST firefox-45.2.0esr-en-GB.xpi 423871 SHA256 93023222bd0692ddf0e68b15c4f4237a0103e132d3b9b75aa34cde4da5a37822 SHA512 68a25f2daad5f87bc92f7ade939d1dd747d3ad907155cf6d4373aa5721cfe0cf8e83bd09de85e2cfcc7b4e1d91cb3ff93ab6a7dcc3a583e72b4f36ba1b37b25b WHIRLPOOL 71434429862b7cd3894379961e1ff76fc079fefbd31c205e621f937ac249f1f038919d91a7d1a8c7b6fba65eb58a83e4c96b6ace64574088269737019265f053
-DIST firefox-45.2.0esr-en-ZA.xpi 420776 SHA256 80d207cae72da385aca4745d7eb726aadc12b3ba74ddf0ade07f3e0a0d4f40d4 SHA512 f367b7c1808a79c67adfb451a17e6e312f1ca42b4e5e485bf764f2d98dead33d64e9058c439fb01380b0ce07012d9fdd5bcb2633c98bfa2c4dccac1a8c0bab48 WHIRLPOOL a912b5117f5ab25abd25b00e08835b38b93f891b1437ef30d8ea7b40e03c8066b139d61d34a418099ef633c321361b9bac1ee7d7773bb4295554f5f69cbe6ee8
-DIST firefox-45.2.0esr-eo.xpi 440960 SHA256 bc9cede961a4af1077b1a5cec9ca44b69f2b88aaa5daa53ebb432adccbbc1ab3 SHA512 ca8156efa31c77cc925fc3f576d46b3797d3f929a405214517451d1a2a922602f417b3516ddfd767a5f6a95585f0c3b94ad0bd9ae6245a38452affa89ce1aca6 WHIRLPOOL 4ffe4919bfe3894f42bccc2f7d499b23deba45c6f0b26dc2a9e44fc537d0ed06fd372d4f95f571f3154691ac9bfe7f3837704260ed2a9314fb6a45e93e822a03
-DIST firefox-45.2.0esr-es-AR.xpi 441481 SHA256 692d0087ff79da78962576bf56bea48152f71817e339d41d05012346a61a473d SHA512 b7397c5e74d4c8b3c2898d0dc8e33d700e38c44c61b7eb2a61d3684cd7357c0d05879a50008542f3c3efaa62cf7b93d57cb11af79e6692caa54584bb45128eec WHIRLPOOL e85df24a5a4cedc37afa9e46bba3f25a026a7f2e386360e419344cfd125c92e6da57a56433959ca34a5312e1a8cdbc7f660d6d88e5a7b4db1266179fc2153d0e
-DIST firefox-45.2.0esr-es-CL.xpi 368763 SHA256 2551e0a0f2866a7bd1190bf00926c500e3ec28e1090f19320926b14babaaddd4 SHA512 9cbb60d8201108e6a06004d3c37addcbcaf9a829bc0004bdf3081bcd0d17f8f7628d094a754f35ba1191dc668686d8ce0294616991ffa3c22e26d49a5ecddb74 WHIRLPOOL cc74251eb2a2428ba40d1ca1debeaca9db7198e3442f0266e068ce5bac284bf272f986039c1765d4dd5c4a6b3c2154b56657a2c44032675eb09bbf1516ff400a
-DIST firefox-45.2.0esr-es-ES.xpi 353716 SHA256 580d3c833e2337f9e54cda734153fa80f0a14f43e72b7c38f80add9b18405a10 SHA512 5ac8439d8ff7bdb998f4827527dafc0edb696d6a2809b984259e61bdd01861e922d570dab5475a2f1ddc46dee6eb683d6bd7c4cdc6dacad35a20806813dffea7 WHIRLPOOL 18c3bdaf0a3847dec99e28f3f40dd07ce8f95197a6f1f8020df83089c244d27d56c4e995d360ec9cc569d1726d75c75fa22dc661e5b9569a98ac452a4e7c6e7c
-DIST firefox-45.2.0esr-es-MX.xpi 449395 SHA256 53511dae1d4de036953ca1f5fa1faee7bb63d1229c31c95e8d5e3bb94efdcac8 SHA512 426f67620ba68911854387fdf747e1aaf503798943e3aa95698c5dfce416ea775d13f0150ba52bc15962d70ac83e087443319313c6de2535c961295103bdca78 WHIRLPOOL 3ad98c3a6fb4f794c4fd44a952b0b8c340842b35353f52b02cdef5cd90795f2c5d112bea82a4829a676b5bb9a47b2191dfef4e7871a701d5dc508bf9d91efcda
-DIST firefox-45.2.0esr-et.xpi 433352 SHA256 b5a2388d7ba5d50a00c8816b48ba344e088103f6637686df36a0ee0d2d7356b1 SHA512 a17ec07e7a142aaa4f03ebf5ec6259e000592b23e0b3a4aa485b8cee82c3517503894d23f8de38405b8ee1e17e10a5e593e65962083e7d63bbf813d032261bfb WHIRLPOOL 379e0321ee863b484fd5a0699ab78be46b14c49769b550bcc4d6000b07d27c74a4d27c9b542e3c082258b432081bbe0df019c95497adbdb054379f2656182526
-DIST firefox-45.2.0esr-eu.xpi 441357 SHA256 ed94e9950608c75acb4f08bedf645dfec6a390dab3221be7aaa124297bae1166 SHA512 a976b6c8b4279892f40743ff902255bcf7f45019a7fdb0feae237535da30c4cd0456f8ebb38089dd4551b76122a94fd4163405ffac47bb5fe9357893e66a0fd1 WHIRLPOOL 40d6cf52c7f8e55e3915c314b7b945cc0adf349d9fa0a496a932698f2389b4944e10778e2c67305aee24bad86bb432e0b7c4fb1d5d0c1702a6b397c5724510b0
-DIST firefox-45.2.0esr-fa.xpi 491941 SHA256 6cd12a4e763c01802d1807e3c4c0bbf30ab3e6fb8898064770d2ea8ca105b980 SHA512 1456509c4f23b910122e7c3662642d92d4ab1a99b6ec92b87b13356113e8ea341912e11b55cfde55eabed14ae42173949d64d1e00b25574240f56a1b48a10533 WHIRLPOOL fa3a332d6971fae5ddf0af3a136722a82687a6ca7803242547f9f80100f5d40a6e903464988543bfab7d15a84cb09e0fd429ced202b371df7acc1709766666b9
-DIST firefox-45.2.0esr-ff.xpi 441499 SHA256 e8d5cdc8269924c7ca6865e623bf529cac2b4c2cc7660c403f9d1e80f85951bf SHA512 1abf213378499591a0e2fa12dfdf6ee926328e738feb0713a1ad1bec0e695cf1622442d85378999a14e46772b2b31afbe3ab09852b8617812ae3fca57d69dd5a WHIRLPOOL dccad3db8385f34a02e2b0ef7c521d9223a63a45215e5d9fb15625f56c4d833ef683153c36e74e214dbf323a09bd82a118bee632c8e4652e30bbfb4ef692b6ca
-DIST firefox-45.2.0esr-fi.xpi 438347 SHA256 9e71e711df882e30a5707f9e94b7fee46ad9b31b6be8f381f1a8c29d446f9374 SHA512 34a5126b54d10fe242886fad0c1546155c24720ac0ca85ba0d02cb0735bfcfd68f2fe747c232911b0dd9a222f7fae6c5dcb6f37d601fabcadc1a7493a67bb85d WHIRLPOOL 8cd84ae785f3a1c02bf9d6abaa6f33d4955305868ded372189dc4cc0c358639f3ef2df4735ce77628ea9e0f29f99e6a31d9454d55d913b8dfe31f740fef55620
-DIST firefox-45.2.0esr-fr.xpi 450037 SHA256 d54ecb0438c531e95f605c29dac47c700a03e4e4f3759a51fd7e956586015928 SHA512 d79d3b8c9056891d9de2455b0d6d9d31326266fe446c017db58f86ca3c1f8e64e14c7f2cb0b6467eba8ea622a2ed32b86c82d7bba91524753fadc099e79bcf49 WHIRLPOOL d1c5fd11af8c50d7598f96925e6efe1b4362406ae8e9ddd5c17d7a3494afb82ac63931863aa104890088e07f9cc402d6e2c614d2db1d59dce387603acb92ead9
-DIST firefox-45.2.0esr-fy-NL.xpi 447779 SHA256 5f04850dedf9b6bc6fb5e566b498ce94bdd4402e56cd8b3e1c738dd35aebc567 SHA512 59d141b7a561c9b2cf26ed3ccb768acf2cb849d6a69f91dc4add5c9f8a01674b68d703c0be041a2e2bfbfbfd2fe06676cea025908e34c27a0adb78cc546e8936 WHIRLPOOL ef0ecf7e9ab832f7b2ac51d95c4dc29eedc198f391cc9e4294c026bf19286543ef68807482e7694b9678f9f2955e3c77e831a9fcbd3013009efd917725bd0a76
-DIST firefox-45.2.0esr-ga-IE.xpi 460055 SHA256 82af32ddc3a958b3a0ff7ed5ef40085c6b1736bba071a6308febec066ce1ad5c SHA512 5a351b51ae388d7e31ddce2061110bf046315cbdb4c7ec6fbd3d5c39ee94b2d5131dd653f53325d2697a395f85bade85cdf2bbf42985bdf035cdbd25fb6ccb8e WHIRLPOOL 50570936dc9ed06fdfeabe4fc9c8a259aaa46d3275a6a3ba7f41526d8ee712f8cac37200695d7723f871e811d84917cd7ce3b2877df830c8462360f0e54e6580
-DIST firefox-45.2.0esr-gd.xpi 449711 SHA256 737e7dc382486d00c0c453e010a2d3d38b6a5dcd62517b56ab221ffa6c54b9ad SHA512 d5d604ab5d6663506e15b36df5591ef1fce9172b53e11e00ffdf1fb1f264ff66d36fa5120765783e1f6c53181bdecd132fbcd93950a1ac8aad42acd32ac81ae2 WHIRLPOOL a05e5bed956a8b59e255bd37f9233314e6899d96b2408d5b5075ca0857de127f08315431dd83d7763387f902ba105778cdfa36e25705408eb1424f73c02c87f4
-DIST firefox-45.2.0esr-gl.xpi 434804 SHA256 d306890e910978682d4d547a05b86135bf1db4cbbc9fd3fbad646ea237385fd2 SHA512 4b054650066c7417ef2363a75effdbccfc4c288a0b8a5258296a72d9600a70d71d8c3c2523bc5a9d12eae64121f7814c7120d7ad2a655f46ba939d83248496af WHIRLPOOL b74d11c3e749544056e427a9302e94346cd378ee8e44067027f05f5c3afe15f02a6411ebc9913b11f338c8f82d643c4ff354386d637ce36a8cf73af8791dfbd4
-DIST firefox-45.2.0esr-gn.xpi 460648 SHA256 9e26501f999a5a3db51408b8a31f2187fccc98469c4b0d2cc49266dc7e91439a SHA512 f4fd36c512baa593e1a95a96ba6d9594c0ed04f2e5adb1d1cf42f1dff0f5677fbbe3b53cd19cc67751236583d3c34f646e9ed8527d23fb73325fc02c485ab131 WHIRLPOOL cd877b7c06b3753aeead0bf6c25cd5c1864de0002a2e4e1c4496e57f1cd51f81fef2c5a2c71c1f93cf9f735cd602b3baab7b1379e1a33e23e7b36cbfdfcb8d17
-DIST firefox-45.2.0esr-gu-IN.xpi 472566 SHA256 139545d1c9db7a2a2c8c3a281a07f9486331db9c3c5f408e688218cd927fb270 SHA512 2ea05784443e5a34706bf79def6f1864bddaa28a4a7e3afcaf2cddad6bbb256868b38efb9d2bd65e3cb2f22c2f1c1731c247cb48e2d5bcee9534c23a3e80e14b WHIRLPOOL 73804ac0d0a36735921d1818978a3f4c3d50f82f69292412fb0ed9f1224c2a4d4620c964675a2ab5f21f4bf2d2d30ee917bca4892f808b61fa0db3e06e663f50
-DIST firefox-45.2.0esr-he.xpi 454785 SHA256 686d7def4db270016f9439e848741ba5b54db1ecc8965834b43e49f9324a9ff4 SHA512 abb3f99071cd33863999e86b7da8cf4ec97f2eeef2ffe4dbd477797ca3497b028b967bf567f3761409452bbb50b535b4e7ad835b703f285bf83e537750999213 WHIRLPOOL 0bdff8fdb7f5569e127a2c34772e4cae43290fde8982d30c599a89567708721cee3fba8af21b3f035d8d940967316e4b815831959506b8620e97c5bc718476ac
-DIST firefox-45.2.0esr-hi-IN.xpi 486991 SHA256 ba1baa71fb8cb0820101dad05f5192811d77a3c155a1ef032c8b1abeb97225bf SHA512 7f278622bbc397da6b3d4b744a42a5a01250c1fdf2603f5cbe4fa0c79d3b1cba920a221f4111732d64c43b4c9af37877595a0dca399434e3af812318a1f94466 WHIRLPOOL 1378aa14052eb66c4535f6f406172a098aedf8308b5033c1e91d2beaca7b6692d753f5c43b6ed2def38854ca84844e6193c28900f8f03706736aa02b9997b527
-DIST firefox-45.2.0esr-hr.xpi 449068 SHA256 b29db58626d46a7dca1ee5e4529f40b2fde142068c84ddbefdc5e623e820b709 SHA512 bed809c844859023a7f300cf01e3ca22c0361b1afba796fcdac42a4540f37ee499ea6dc0d72c817d801fbbd27db77939ac285c99b6411f5ceb9992ca27cd6dab WHIRLPOOL 96ba2c3a7d9f55b2b5377f983bb0ce6f1e00973140b9b82c7da2c165c109b3ef36e42cc4713e5c27e681e622533e16a94d779862dc5467aaeafe89d26dd9bfb4
-DIST firefox-45.2.0esr-hsb.xpi 461454 SHA256 3c0c5567f58322f2b34445ecd9e08a0e1f927fd912a9c269c9643a821401b134 SHA512 e056e20fc1b3a4956a4d9a2967e5ecd4f5de74a312a5131d54108e3611553f7e79c636c71de24f2ec6012f84466260c3188838a3d3addfcf39a4ff1fda1b51bb WHIRLPOOL 3301cf79ec94e9175231e72b4a36147816035ede72a871feb9a1f770997c0a70f11f1fec7e4ca6ff8a9bd5daa7dc4e42bcaba447a17896d10c99f69ccb9b80e7
-DIST firefox-45.2.0esr-hu.xpi 449777 SHA256 28cca2db55be3ea6c71a687cb88187b1835fd4ced2aee17a52c3cf2dadbe67c9 SHA512 e5487ea43e50e2cb37938dbd3614cf1ee823d4afa39d6bd96c93ec0503864e0ef2f49516e4b564c96a805a4365d8e2737f10140fd76d2426f7267b38eb0309e6 WHIRLPOOL 5638ec9d1790e93789e07baa5ad955c729eee0d47c90af9fc0748a62d5301949be495a756966f0eb7b1b1eea5021b0037091e3c1895cba7e566133fb9a985479
-DIST firefox-45.2.0esr-hy-AM.xpi 500040 SHA256 1ee6ddf381c1a1260c64c158aa807e4ca66555905f40bdce7de5b7956641959e SHA512 7c4eb2826e3aedacbdf54d3dd15fe2ace9e5660b86dea7105b5900d22ac21033317ffba573466b55cc39b7ef956601cd56901757e8c041c86c80536e23768904 WHIRLPOOL a06b5da02c7818072a16ad521dd67986f8fd5cada71b19d50b7e99e6faaef7e7714f7bfd2a921502eb957cfe01e238f9bc5e9fc1c0559e061c66b9b8e4f7b22b
-DIST firefox-45.2.0esr-id.xpi 427175 SHA256 ec275678c1db4e70b2a2da48c19bf0572d7f74478cb42c04a81be92d3aa46d78 SHA512 26b6f932d67cfd27ec0d7cf525cf3df400e7af5c446e56bd422b572a694d27c47d78f85b54d330d7990b0bb6532630db2944c3d0605f15ad708ddd798209ccfc WHIRLPOOL ab7fefdbea4fa2f06c2a0e68da4c6962542e3cad5f772f259e1d98de5ee3a984d0a5ea62ff833125c9402c1409d307fa08dda22bef043fac33df0f23465a7e4a
-DIST firefox-45.2.0esr-is.xpi 443209 SHA256 c8b8fa447a48d9dd571345a4674b0cfd0b8bd1ba5504e1510e13f97fc7148ebb SHA512 834aeb0b3efcd99f3d5ab8165801e413b84fa4d295a2d50e06e470b2bbbbe70a834b7d9ac7c2ad1795bc491ee7e064d8b28a055643b97d70c6a65e58b9585538 WHIRLPOOL 9fae4f76d6b318741c8e112a3cb526e4784f558766a4e9ff913d01117e792de97853d40f26f8710570d889e5a968d518fbf8a273e579ebf14e31e2f5b53b6b41
-DIST firefox-45.2.0esr-it.xpi 343724 SHA256 56fd3ee3a3a74c168b6e0bf51a89d420f53e13c2de96bb5866c70f0b9d4d22e3 SHA512 1dded9800a5cf573b37d32221ec72c93d0c24eba7e6db67ee071f9fd08cd3b0521ca876950919f565ba1abd66ce56d24648c780cdf346bffe40f0e236adf0aa3 WHIRLPOOL c68f2d53285b14852c3d8f6fd939494da083153a5840ed432d3836673cd8ef4aa6e44f3c99880206431a486af332430bef9e99dc2b7528121f3e2273047e5cdb
-DIST firefox-45.2.0esr-ja.xpi 486331 SHA256 71d204506415314995661a7e0dbe7cdc0ff5a172308496b92c0c95b1610a8678 SHA512 900cf395dd9794bf05f7ca1c5a8fb9b1a0b76128da00887c5662173c29412e42879b308edd239305d2a9c29095f865ae8999f88abcfc31743a0b54baf57201c1 WHIRLPOOL 95af67eb7de2be402100507467f0f15bfb0d1f487947896fa450fe9bd3e8d9c5bb7c57d7f45f1f320be9acc9e71248d5431fe112fe8c7bdcc1f041d220b55a8f
-DIST firefox-45.2.0esr-kk.xpi 498895 SHA256 ddda566a4a597c96241772115d61b930b6943dbb3c01043329c302799ecbedba SHA512 7b675e4acdd656eb0c049d3963dcbda0aa86902b8a32ec08ff1074fbf7f997de9f147d42a0ce3c7faf682ff308e36836ebe2ff05e4a5aef02644e24a03a05245 WHIRLPOOL 485a5d757bd613fe2d434cfb05048e6abce246cd0b19ba24b88074f54b667d705bdfea7c52c851fee8a8285965579a1447b451f7b3a99625527513f7b0aba74e
-DIST firefox-45.2.0esr-km.xpi 504301 SHA256 ff359fa2d93a2cc513d0b1993dc06cd259cfd919ca708b4d4ae045829206c96d SHA512 1820d49e29cf3ce17d641037c6d4e1fd579ea2b82d887085e5cb2afb2dc2041fa2ea07a7c90587603b8a4091cf1577caf6611790c061f2cf35200aa455bf957e WHIRLPOOL cbf3f65892eb5d718babed175111c6588f47ec5b9e954f7f29d2f32adf59e428aab501a4495295501e4f17924b4c727ff5c641ebd748fc632596a385d9f3d99a
-DIST firefox-45.2.0esr-kn.xpi 495880 SHA256 0a5f165bc7ae67e5fef88d4a3f562910f0bd327145978a122f4631734835f01c SHA512 fae5d8f6dae4992beaa38ec1e76e04fed4d6cc056de0492cc2302b446fc7dffc6a865a064852875e48e4e07bfd63ce0a04870db3c4a8093d58cfe816d52c11d4 WHIRLPOOL 4b1f774b5e3594364a5420246c0c0324778ed32b510b256a6bcee98016b343703c1823278faf59743f08b33fcac79b75964f7afb007c3725f668608419de5aec
-DIST firefox-45.2.0esr-ko.xpi 465289 SHA256 15494988b0018752122cc4c798b090793df515f21b18a3a0a510159d33571e38 SHA512 f7e10c8e29d381b69db70c9db308799784c227ca60145e9eafec2c296b158778ef5180d2b74a57f51707592c398afd5bd2596d13122dc52389828af4179e0d56 WHIRLPOOL cfa4c6ce3575a515f2a64e95ff11d0f6cfa6d08077fca40fd7db8b15ef294533c38d8beb5927fa82841eac1778873dc4d5875627915bcfad36a11ccd7c7f1e31
-DIST firefox-45.2.0esr-lij.xpi 381384 SHA256 264ca757f638025039ab9d456503e70dc2689b4d3d8139f011b87aeac09c3c66 SHA512 691deffbaa65fc881c1333f9d1c98dba04ec04f11506fcf995c3544d0a3c0bde2ff9f8b0fe3b35411926f75bd4f79a1958fdce67f43d90939069735bc59545ca WHIRLPOOL cdecdd03310e91433a7d9087c24abb6d182bd0c7ffaab0c5eb4b34c4765b8351440775c8a6b48d54bc355b0a2ef79bc7c1b649b0cf34f12e37981621dd16ecfe
-DIST firefox-45.2.0esr-lt.xpi 454678 SHA256 544687a52e5be21badd5aebea8f30a0f54fffc2b41e0c6b1b928e62f2ac76689 SHA512 e825ff8909d3fafa15ca9d97f4ada7c3738ed36996d9be49a9b8a011b769091a980cc8e9b1a07061285012d924b1958d121d1cbf8a29023e74adeb5fceb3ffdd WHIRLPOOL b88abcc2ca553e7abc88167c81e07c8faeb124198bdc916cc7c01648bf414d467d0676f87e403e4637b56577b381f4aa4650a8b71fafdb53131e49e959a68cf5
-DIST firefox-45.2.0esr-lv.xpi 445720 SHA256 353b4287e9ae5ad161f84f3ccbda94b701cdcae4fded73f3683dbbcf6776996d SHA512 1836767fd52bc08e8b0a1d861648736f7abdf81324d628486c1313a95ceb09a551dcd0e43a83bc740b28d1cf0d9b05fb30c9d5963e65ca6a271b05706af53337 WHIRLPOOL bc18b229347e2c2065e58cd789deffde2bb58043d74f4eb860761f03eabcca2c45bc0f63a395c8756fa27c4fa1edc006a3568458e482768efff1096c182ba59f
-DIST firefox-45.2.0esr-mai.xpi 492650 SHA256 6704741e8db60752a33d22513fcbd4def443c341b2dd79694517eea449c877b9 SHA512 c38c0a89dccc815f56339842d897ee50a4bed6bc80978e648f24fe52d1fba8dbc92b4084e95ed595ed5f9637d5edf81b0a953b59062c9278863636a1cff4a4f8 WHIRLPOOL c1a38cb55b0a60904fb00f0695dde8ecfa12dc085daf7c4c08b11064250546073d8cf7c60185bd87b5e7b1f6e0be86f18212473b1c35d46d885810d37983f952
-DIST firefox-45.2.0esr-mk.xpi 476391 SHA256 eaa3d2ac2ec030120222ef7be87a14c74137a923642c0d34db800f85ce5a5c41 SHA512 7fa4838c7b9b4007a8e641517b8e0c50d427d2dbadd6a9cffbfcf5f20ae7b6c57ddb104551ee5d2196270773be4bb6afc1932babaadaffcbe348d9c17cc2c8e1 WHIRLPOOL 2c3e93fc5e415489dc8ec2636fe117e20f6005b0079b8056488eba294089fea15a7ce08c9156b639622faa9318ccac6e79d030c1e759e5983ebf476d42e30d33
-DIST firefox-45.2.0esr-ml.xpi 498681 SHA256 ebb1e4efa5bd1f30326cae5dab1c34586b6b30c8a12cf70b43c596ad9b1f3d55 SHA512 763f0d165a0c9ebf4bc6a01e81248a65535f8b25501b21f8ffc72d8283b51c3c2a5ec7f8864fd64b90604679ad5b9a26dd3e5c5efd67b8f70eef4d1689a2b6c1 WHIRLPOOL cff6e2ec61d2e279494623bfc762219bbca69322186f6f7b44c0b32a3851074597da1291cb25afc68fe1eec3e9d77ef3961f986fe3c95385207c8c1ee17539c5
-DIST firefox-45.2.0esr-mr.xpi 503700 SHA256 9d0dd0add1a43827c7d2ddc92179cf160d4705b23d90e485e878cc0d5292a394 SHA512 4458c2e4daaf275829fd77fd0e17e15c0f48d5f0267635e503fe695f84509df9f9a1c4c41c6ddbb2504685c737df8a58357c3c79221e59c9b387b9e8ee97e2b8 WHIRLPOOL 0bb9ff483dc2a2fddfec18614e05a17231a3b2d9e6aaa20d6f19ba0d69c6dd8b35eb5f17a93670ee8af981a23e6de243053a083f5a49b9789e1af0829d9fa279
-DIST firefox-45.2.0esr-ms.xpi 440064 SHA256 6b9c129e22b336a3b02dc355144db4b4e70fdda80b2aef02907facf51f409c3d SHA512 2e9e3e4291b8ff4f46cfff55f241cdf278c9114abb5aa15cecf2bdf7511f9d0f779c7a11c70abd993d3a9db2d811da77662d59b1a4235494f87bdcb3bba50a4b WHIRLPOOL edcfb2d64c0bdd3b165b1ce2839ef2c606ac9722b75a5396df255597c06be14d82e450928dba1eac95cd79adf986c841f36a622ee3a4ccc46d829dcc083638c0
-DIST firefox-45.2.0esr-nb-NO.xpi 435470 SHA256 e3d543509ae33fc8d7aee2df3eaa88b98e747251284428ea45d5e8930217a416 SHA512 f2e0806c8eebc0b29b8c2e223189d3f31efd31c68035e9ea81580793860ac60df8da41b178712008669a41ba56d49de2f8f4ab50b9c11ea759d442182c81e140 WHIRLPOOL 449cddc64f2a70f22c3ca7fb499602bf84da09e877c8ace206c3a193dd385259edcd9f0ece5599aec1f5eadb13e97db0c62958f268f1dc3bbfc2f731e6173441
-DIST firefox-45.2.0esr-nl.xpi 435202 SHA256 3d702d1762196e62ebba04fbc1d413ecb506cdbc3db0ecbdd3e3b238687efde9 SHA512 7d6e36b0fb072f95f9373db530cf4663a2ccd49d3628c4dc85585401d0469f98e408d30dd79417f79e6e9660b7707aa42482a712c76e34e8d447c1635d82ea2e WHIRLPOOL f2e97dee32bd75c3c8c7885fad84e2c2219ca8a5023bb5b529d5c03a6fe365ef1a100839ef4b2090135bf26655d1f363b48266c53d827ef458d73acd265ce848
-DIST firefox-45.2.0esr-nn-NO.xpi 432934 SHA256 0d6452c5d10fa1a3321ab0b029c9d6bc04a9cb2ccdc8df9789af921a77e656c6 SHA512 e1d0d0db072bfb523a96fc091e23ea0bdb6050348c75b7c58f439b7fe28d93e1749cc4bdda6b703476a07a67e14151d0bff576cdf239275c9743d8e2819e2776 WHIRLPOOL 8de8a94897c4697961aa91194231951cbc1201b9194f6c5e254478f460891be157b821a14ccef963d991fa82b32cf5a4cd6412feb438cb1b76ffc2d96ef19fee
-DIST firefox-45.2.0esr-or.xpi 495922 SHA256 fd59ed99ab8dc8940037d920d304e4b73f4b5ecb26435c612bb10905d4c9e24c SHA512 49c1123b911d2dd701dda986e9e92b90758a8837d56861d1bc4eed3338a8a6197add7097db40cd43cdf7d6e06009e8fe7c4a506616020aa880cd7e0f1f064be7 WHIRLPOOL 8bd2f4f4a929051b6e0dffa677f85ab37f3b8aab551a88594d7777a0eb46a2e86dd3dbd2a7fc42cd6520c1ed9aafc6e524b80804c847214102121d6523e4138c
-DIST firefox-45.2.0esr-pa-IN.xpi 489550 SHA256 b9dc7f16072915f7c73bb76c05482922c152c4dcedc033b5eec6100a947ccb76 SHA512 ce9ed6d50bca8b386e7fbb7e9a4f29c0a7fda931247c07360afb925b36756a623511bbfe678f68daefbbaf7281224977190bef3b2a0e71fad66bdb193ffbe26f WHIRLPOOL 8bd2e8055949eb3ddcce7c5aaa7c2a5df9c51fa9f72bd782d5bbffb5b4a384247d3aee32aacd5f998632caf42c9f9db5afac57471814d3d04e6a51d8e9e35e10
-DIST firefox-45.2.0esr-pl.xpi 383929 SHA256 ee5c3299ad6093c13a11a2bf0b84a673c3b8d7f213d0eccca66ad5a45b40481b SHA512 086502573b68881f4533156f6df17454ed3c447a6d45b33656f0e1214e6d77ad385b4bf143e3485a592b04a3e1be8e0979adafdc25f257e58c85bdb3fb381c27 WHIRLPOOL b7a649f981dfeb547baafb3d970953f7caa2468b576eb5a7be59f8e0f2478e11f89f05f5b5002cbfd49347819b5d559ba5eec4030b028b61182a81f03f06d4ad
-DIST firefox-45.2.0esr-pt-BR.xpi 450991 SHA256 13a0247861b12e75004688c6f66b43a8f77585129e0f9aad648762991018a137 SHA512 abd49fda962e05de73d26537dfdabe03e49c9f3cf084912ab3839a776c21d3268603de45658d8a43321231886d7d7e2e7d3d7db1cfa78ab5a1c21fd7319e82f0 WHIRLPOOL 70426020b30ecfa4f8ea9553d8a75c9d71c7971487b16aff7050cecde3260d92ac56b97529df7492de975a8df5a6aeefe0bc600f8f3efac33b324db7622ff6f3
-DIST firefox-45.2.0esr-pt-PT.xpi 437022 SHA256 15d312442e670c2c82742086bc131e56a507813954a6001ed60f9ec80487cfe9 SHA512 921fd00b06313f59580501f60642f588967b5585388903ef71e0c5a95773f4a147619d0d97d8f30a01d5909f0370f08f0995d3d7817f959ffef58ad9ca4bb559 WHIRLPOOL 3df31f466613c4772a2b14419d0cc70a7a008a7735586cd3711785f22523c4980a3adf6164520e4d3d926006355cb9f39d7b808291d869f902d1946c9bfa6aee
-DIST firefox-45.2.0esr-rm.xpi 437717 SHA256 b25a99bc87671f42d652090f3216875848c1ebe44c3229312146c8a0e1adab64 SHA512 cd558607fd4d9c8b58e3691eb71fcb89d699c10b9ca7c9f2b024ecc2a9def39df8b896076c154dbc671e38f1bfbb365cc479be0deef297f32c1f776dd2bdb471 WHIRLPOOL c7e5483fecd5a12df7e9de6a132d83f688e9d063dd5ea9f6a443f3606dd0c4d71210c6832a80b3282e2966ce833a26de5de6abd44bd0fd9f7dd4a409f93a2165
-DIST firefox-45.2.0esr-ro.xpi 444062 SHA256 ec785f0e3f7c9c8d753efeba0fcebb936ba3879c43decc6a627fd0a7e9e108f2 SHA512 f20699eb827188787e509ce6e3399d05a7c1493dd48dd84f450bb590b3497136edbbcc5910aee90ada4a25a0c97f1da69c6f3661fc5bedc5c00a0d4528f3a929 WHIRLPOOL 35cdb8127785b2c220d5a991d22f51ea8c4d7f9edf84a50bdc88dc3a5602c6892690d97700b60339c9639be3a5cdd31022984c4297bb9f9d5d79837d3bf38393
-DIST firefox-45.2.0esr-ru.xpi 392738 SHA256 4e87a586a2a7180e7b816f0633dc4fd04bfddf92539d1b6cfe553fd18a0b1c7c SHA512 b14974eff155dbbc3ca61d411f9cc0a72fffb940b65554abbd74391618028662f5f5910d63606257b0f4d9840a6b1555f0aea7376f8b832095c040afa0dfe19c WHIRLPOOL 675277625a74b204bb7bcf9ddc3df4a8f5020efce8fea57100c97044425cc89004615d1d8f2407950c0306405db877c75c7b3cdc99f40b884259b3c1ad428c2e
-DIST firefox-45.2.0esr-si.xpi 482248 SHA256 229cee5f06a0f9a09bf6c3220b78d06433b3b86d6fdfccbb095ceccf5cb23f37 SHA512 09da67e67c113539744a72437756d2a26ba38022fd1627029ac953ae61fce536e2bb825ae7ac932dc9447b3e68a24d7d8af191e35486f0e8658d1e45af938ef9 WHIRLPOOL e1518e9e10c99278ac6d5a1f41b2771f6fd2c79f1eb2226947d58930957b0fb4a81ebc57a5f5199e38d874bf9975b4cf1478b4ee136f412ff38cefcc67a020e5
-DIST firefox-45.2.0esr-sk.xpi 453606 SHA256 fb4fb1df2c1f9001fc52694606eaa20ddb3500d19845adbbbd243acff5dd00b2 SHA512 fd1859031e0964d94d1323419f81ec36fd1ed65115801670f595bd62fd83005f529609b21ee5630aaa007a6defacaeda9b526d031fac98c12f7a69797a632860 WHIRLPOOL b109c3c4799b3ecdff41300349282badfe8a979bbc46b54cb8ced8ec70ecdc6ec927c6ef8d02bb43b3c8f1af98661760481ead624fe3dda71765f1fff2870c3d
-DIST firefox-45.2.0esr-sl.xpi 444963 SHA256 468fe8a06ec6cf8857be2db2fce922c864dd9fc3cf32792b901cdf8e9a170bb3 SHA512 0bff90e7de57e78f1fc3b8deefa7c16e75e71e026da2dd29844ed4ee2994bd1edc087c28aa79e8b47de7fd1318cdfc9ec53d2871cfcecbc801b330f6afb96593 WHIRLPOOL 2f66dd9b71fc6e3f12ea7a5a18d24c531474afe7b460efc9b1acd5a5e1e33570d7c4737762ac4a5fd5dfd0a12ff79dff4d95ba24f637d44d9c2197a0e3258b8a
-DIST firefox-45.2.0esr-son.xpi 433513 SHA256 92f165d1d15ca97c2307076a2b50f5768fb6c4949d1fdbe4866fa93a1105f7ab SHA512 c6080959cd5ad37fed6dd37fcd6dcdf31cdc47199f57c141321a95f950cf421aa47f262526e3f4108b993c7c06c41f905896357d2d67a3794d8a35e829aa0ccc WHIRLPOOL f619f2e3d1ccbea83c6efae4cae5c65a90a347cd32116295bfb3b8b4288b06b9233c96a353ac51748fc01577c3093224a0bec70cc20b661ba80dcabbe26f8261
-DIST firefox-45.2.0esr-sq.xpi 452186 SHA256 e8be4541145770f51fcc684ec03eb1a5c9fb55bfd3ed67608435f605f0a130e2 SHA512 7729273302975d2b65a73cdbe171cc1e99d554118eda25ae85e9a5465a5ae26714c5bce6a07a314c23370c7dc3836059ffccca9bef206bbd0e59c5a900809dc7 WHIRLPOOL 23032f205b7e84bc8f188c215125743d990f3fb9a6e82264c797687e791860e9275d87ae4da42b85f725e32bac95f14ea8c628a56a0afbb80e318fbd5a10e861
-DIST firefox-45.2.0esr-sr.xpi 464479 SHA256 aa8b65cdee5a9c22a2be0f417cfbd5af6cb4a286143aa3b07303fc581d627cd5 SHA512 bec1b6c75c0a8d9d57dbe02221209761bb78ed82b8a133ad5ba8475600b7f67bbcf6f9b8d75dda320e8a9d200e29dd2e371d1743d387b61625f55a9a55e9cbe7 WHIRLPOOL fff4663b49d319c19e82174681165d880ecfd144f58e4ce92824553be1dd4295f2e6e7e3f7c45ccdbb36ae5793cf7dd2f4bf2b167e12ec7104c96ab093a902bb
-DIST firefox-45.2.0esr-sv-SE.xpi 444214 SHA256 153633ec437e931061e0a425a9eca68d7576d45865e5f6387b3d639a7d6d544c SHA512 7a91710ea1042e05ece7b1d05d970862ff5b17ad2eadc18b9487575bc5a9a494ca63da4f5073944c2ffdc71b4192047d783caf0c6d07a6da1e361e733769de96 WHIRLPOOL c0b41730862b41388eaf85df9e4a89191ab3cd5823c54809b44de8547ece5e68f0f8ea1640a339b3ae8c915907ca63c3e1bf4abe6c2c7a4e0304ce6b61c1a29d
-DIST firefox-45.2.0esr-ta.xpi 483117 SHA256 44e0606031bc956658b593a53c8c4d70eac1ea48252c7e2f006921f07e054640 SHA512 046679a43a9249bf69bf2cb2a46bf5e3c2321392dd931082e3fdb9ee32a040b75c635407675d496ce884cf8d746bc9398168191e127674708ad430f22c9454a1 WHIRLPOOL 98847aaec86d830c009b999884c987acda21e115d5cc09dbbe11aa32f5697c3b6d1888aaca36b6d9ad65796355ccedb55c30d306cf3c198c3d157c6d648ed002
-DIST firefox-45.2.0esr-te.xpi 492471 SHA256 b4cc2afa5333eb7fa2caf31d29ae8fcce3ee7b67baecc7efc7c7e5167add6d72 SHA512 646c94a3ce9011f78c70f8a3e327a271f8d44db5a6d78b9b143ec176334359075523eb9887b827105bba3fe9fdcf28833da48556a83895eed8fd67495c48523f WHIRLPOOL b663f0d66b743af053010a7a4e2db68eaa6f4f563c8efc203f828addb08285636c18ef4303fafd303cb3c16840c73d8eb67f38ab84362764b538673a996b212e
-DIST firefox-45.2.0esr-th.xpi 477650 SHA256 ad37cf4d00223d0f58304bbfef3b08e56c69e0a63dcc479e31228fcb41558643 SHA512 0025b1654d0379004fdc23b0a3be90cc053b1e4e4a083d9a2d61a7b5a0daddf5c98063a2e378a405d1a11f970732742582acec38e081947551ee852ef429e752 WHIRLPOOL dccb2385b879d0b83e41921cd36aa06ca2d638b39b559c8e5f8034a1330fb19d4eb80632660cd7fb715c5380d8052a06eef573a07aacbe6afdcd82d520133682
-DIST firefox-45.2.0esr-tr.xpi 451166 SHA256 d28a503d950418add2f603ae466086b35d6a019c4aa710a7e18b9606249db0d6 SHA512 0ed492386614f9f64c3451a60e609a33fe6c03c6d0029df2b084ac24382252a2702eb302190b03bb015809b57affd9fb466b6fd445f62426fbc591a861a77185 WHIRLPOOL 5d3af609168fd32a586aeaf2acdec1828da4efc7f7cefd1c2f123e7b00d5955da29d4ad5b93523106798c466e63039232016bd1f31dca1c07f84ebb170117e14
-DIST firefox-45.2.0esr-uk.xpi 494780 SHA256 de02a2a23c4b43eed07014951aaf8a0dc664880ad3d40db75959b8e907c72f82 SHA512 5e4ba925d75b0ba30bd06f394c19a76fb1dc4ed92bb46a2d5b546ab81f862c014bfbb441dd2fc34ae3bac99c348d8f1ad616417108cbb2a53bb262227fc7d267 WHIRLPOOL 204375162bb66c9304103aafcdffd252de797f85054403de2dd5ea90fd2d68c546d7c2cc947711dd558bd7c10a8e0f7170acd85ff7fcb591dd3386b6282bb4a9
-DIST firefox-45.2.0esr-uz.xpi 443803 SHA256 4ab5efc5ea6e947b20d0ef37609b37b9b39c3e8fc5c8e920ddc898211c487cfa SHA512 e38d96fffd5a95e3ab186964ddd43f4e378c58421a7400d440c59745a0d682ac834f89fc393f8823fa3362879e53b652873e6487febf87563b0cb9ebb0b6a9da WHIRLPOOL 6e284834ad6162c274b02d9c653a7f6f0d4f8c1d42cc2ea3b4f0b4e3559b2466877a0b8d5140e720861b6be854c7f37bbad62403d1a816b297b73279a6d6a0de
-DIST firefox-45.2.0esr-vi.xpi 450778 SHA256 b8494e8e5b9b6bd9e2330cd0baced8a87cbd5c7c5725350a372643e9ffabea5f SHA512 caf1f6a884b07138534dc9e89c18dca94f3ecb5481003acd27fc9a694b0c130e9b1c18f3844a38b607cda1bceb462c5a664c60aa9a83a5be465851bdb62f9932 WHIRLPOOL 19190ebc4bd8ac9d0299fd0cd63d34946aea3ec9018694a871a9292af82c3f71049a4d9d5333be8e9b608a961c5bbef16b0cd491aa47337b2a4665b58bbadc8f
-DIST firefox-45.2.0esr-xh.xpi 432918 SHA256 435306cfa84825c72b2e15811d81e561ca863a5e80d3d1481b8726c5a2e44c55 SHA512 6e75627bbdd1584ef517f977c95146bb790cbc146d9ff6c2873234e5abb0559e4c06d3c58247235413381f507df92e2b1c9ab65dc0421ca552b5f236c834c07e WHIRLPOOL 114fcacf211f6181c8a86b7f44f304b9bb0b74edcf34575ef3832393c51c1bef23000ef0de99fcb4545d7958b9aa0addf9f0da21b9e91dcb0d5d808e947fac60
-DIST firefox-45.2.0esr-zh-CN.xpi 475797 SHA256 dfbd3199e8b98916daf2a79dabdc21632e71645dcca876751807ae766714d695 SHA512 99d09e83659ee558732462255fe75c6c2445605b788db6cb856202922b8cce17434d0ce4f45c8aa7de9e642851858e7a7414064bc472bdf17909ed454c2a2a24 WHIRLPOOL b32109f88de9b5f8e19838108a225f992460b56547127e1cc80dc794762e00174570f967921ff60a62aa12bc9f6235aaa97168994191e5afdca5f32e551a3ed7
-DIST firefox-45.2.0esr-zh-TW.xpi 466529 SHA256 6f9e0d6446aa9c4fe3806e82e012ef60e16007584a59bc08a4316df57cbaa3ef SHA512 f02b8021331c996038c4401dfff699ae3304c91735d5223d8e2715fba5cb74bbda9a7f906d869b6ed5ce74b69aa56c02a45014eab9e1a895ee6e872e1ed93bcd WHIRLPOOL 7a33757ce6d0ee11c81dc70882b9a96faeaf8ac4e2a3f8123257c2b6d87f7faa2a2c091e888d3df990b66c1ea91cf9b583720cdf0c8acd2f202ee8d1c6bc2058
-DIST firefox-45.2.0esr.source.tar.xz 185458280 SHA256 1a729774034231c919dc5a556e17d3342792d5347c755d8d0a4f67a07374804b SHA512 fd67353cff9400080a311af92562b1ed26d20ca2229e32e8c8289b364ebe27fd501eed78c72b614e0501c3841ae9b17f2102158fbeef5083bee8c12d952660e6 WHIRLPOOL 1f2de8e45c56e2cb52200942e26f968472078dd729e143a640b5c873eb685a5823272c6dd79ae06ae41b10563a3c86fa3e8d62e2e32df0588e0d936ffe565765
+DIST firefox-45.0-patches-05.tar.xz 19464 SHA256 dab99a75ab0dc459f1060bf53e40371454b906d6ff9777c4b1c33ac79006a500 SHA512 801905d531d20634b184c0f5f81b5622bc290c3cad1cada54078787c307fa8e191202ee797266eaf53e06f522df4fc798981886845db09952ac1421b9ecbf40e WHIRLPOOL 7eb52cad6f923e0ae4f8f02af79f84d1fd0a5cb05f0e43d5703f0a22892d2d146de8bc71f7c51c4b44127ad89ddc1fa11ebac56de7f9c4fa19047ab52c7e72d6
+DIST firefox-45.3.0esr-ach.xpi 426530 SHA256 8d92f203cfd053f63b9e0fc8e2139a65d92b17c6f7affdff14a54f33b01f7f83 SHA512 97631c623cf00f8a715b85870034ab081c1ffda7e11a75bc6c492d883aca0f46b8fb0e7cc3e3e3995feda7ba784da8e5aeaa78eae8119fa2a3abc250c405ae1c WHIRLPOOL 9662fc6a6f9300ce0977712461248ba51a5abd2466e0705ed8b73322f2b38f3e37d021d39dafc53ec292b22005f1ca5084fd1d922f25e8391d67f91df4e81262
+DIST firefox-45.3.0esr-af.xpi 439353 SHA256 38a4489d5ac30210c1a0f617e81afb2667f52d4c74fac6ba8f40eb92123c7831 SHA512 b2dd8fcbde6c01a0a8a845404f202e39fe80d210ac1f43cd4c46ffa93f89799af4cb77e328aa89a83f7784f576bef508b5a43cb460608eeb529b0cb12ddb5f76 WHIRLPOOL dab48ef688349e0aa346f4e7f339838c939815f4f81918df3150f2ad56b6d716731939d9acfeb62946e75cbbaa062ef129c3a3566c4796baa294f4ee02840085
+DIST firefox-45.3.0esr-an.xpi 449036 SHA256 7c582f2b02f91ebbd84c9b6474e196811b3268c08f132debdd5a1ee32c2525a8 SHA512 a10aeff894d1e14589927230d0f123af1c33714b3d262b285ac5209718317fdd942a2fbda02fa9c470cc149dc9a4da4046fcf110246bf97ffd6621aae8abdaeb WHIRLPOOL 25941b40d62f4ac77d34b608669da7a52c7c57355e16c66cf8d062d8f70f694b613f58e7e5447ae71de58c75c9d4fa8876f085704fd16022ad15363878fa37a4
+DIST firefox-45.3.0esr-ar.xpi 474961 SHA256 957181886999ddaf2433a19ab9ff78e5ce8ba6070582d7909fc1256baae2b74b SHA512 4af70400b7214197991da31be42599b9e0b21fd5f3fe61ec00b976be70e99dda42b5be1f93f6d5543a84c566e4cb4d40c030dbf412fc457426f542d554ceaf83 WHIRLPOOL 6505f303ea1b98b2f036184fe40727623bfd74479864cdbaabd19577001a7d2f96f26da584f69b1ad6678033353ecd0b7f5982faa5b8d83766da1f352fb44abf
+DIST firefox-45.3.0esr-as.xpi 483096 SHA256 38c203ad5e703ca47617d77ac62426d5481dae3667eed77973216045e7560649 SHA512 0e7bdd40e4d064a893f5c5716830d09fb029377533e4d4f7e8ea2ae967b1b4d7c7f34f846179af576621ab5d8ab4152c86b36f45fcb648a9acaada28028b5410 WHIRLPOOL 234421cad7d39ef266631100988cd0460d9cd7977553cdf240ab8d9ef3cd765ddd8f04c7892159c1b700fb2ab52eb385e92ea9e799229d9471706bd7b0c29b54
+DIST firefox-45.3.0esr-ast.xpi 419249 SHA256 d61d48043adbb904895c05a621128c0b21acaeca9eddfeb647d25cf7d823fb50 SHA512 20c2c2338aacbab22d6fa954718afc8e679890fa47b9bcdc80fa40699a0082d108c8e676991499298517cc2ab4ae3280618ab64914feddfe92b2f5af0cf645e6 WHIRLPOOL 74d76e9a9a533ba6644eb194c27403469e97500a293905026820230662067777f9ebbeba887f623d816ebb1df5e5a8ecbb0c53ec56ce369ae91caf0d87f98f9c
+DIST firefox-45.3.0esr-az.xpi 464018 SHA256 e8f4fea333daaa3aea303f914671c8026f70cecaea8286c2fc3d77e4f6c9d008 SHA512 9cc4e7939a7cfca652ff0f847f60a6a55863fcf90005b53873a79a05f552c6e998f98b245f2f9b147b055de35b52bb5039171f52faa64d3fce21b156b95ece2f WHIRLPOOL 3768b7d0374347cd1fe7ac2392b77bfb0e4e595ced496c232c8af86c2e868cd42b47becaa96f114d050292d638a39f9237d92f0e311cb8de810fb424ab441e60
+DIST firefox-45.3.0esr-be.xpi 442619 SHA256 ddf55d864bdf15a750573fc2bed5208a6ba4590b375b1dea44c11029e27bd6e6 SHA512 49e4a9f9c4ddb0f561b204ee864840b376ac69f47e8335af7b392c3202e045bcea8f57ab99b671c8cc27430dbaecd37f845963fde9d7fdd74ea5524c2c65bf36 WHIRLPOOL 8603a83ee0440071ad8c16065adfa690ccd0bc9b512df57047b3ec564d46f593414182ada2896aedabc6840b67ce3786a8eb3e307248fb62d8a5fa59d462a946
+DIST firefox-45.3.0esr-bg.xpi 460809 SHA256 aaa9a7caf3c10eb9097b0f1d8301515224c531419e341cc73c3fd2024f9eddba SHA512 804c8eff1e45741c16ed5a08b467192cfa924a81d19e00168a2d85a8281d0ed94695d98901643759451292ce35248d6b3402401306f2db6e0402b01bbc1a9ebe WHIRLPOOL cb14f157072b967fd6fb051913d9a86e7091d4c17cc6cea6c54257a36217cbb66d59708e30b82f467f5540cc37310e359bf0ad9457962236bd7a8d4d9b6aabd1
+DIST firefox-45.3.0esr-bn-BD.xpi 515643 SHA256 50a0a3c0fa9ea9cb3b1cc3aeb6d533aef07ea405e596211544570313242e81f1 SHA512 8bcd5702f9e27b27b07a47c7055bd7cfc94d6992628eeedb1a901c9c0b74cc81b3a68cc37b967e3177e5cd3f640cb3d77743cc2368fb91e8747e3e5212be7422 WHIRLPOOL 26570459327f14611c78fff543b49e74d2abb27b70e56521feb03656cb7225231cfdc97007e83c8cc7ff503069d7d114554c1278e1bf31ba2e3fa881d05a7af4
+DIST firefox-45.3.0esr-bn-IN.xpi 494076 SHA256 0f69c304491cad8632a59e5873dea745a43b77a1a73a63eda48e36d0944510e7 SHA512 894ec08b012faec8c7a124ab57e2a64d3c6cc0961ea1acb74bfacfb6a96a1a96bcbf60689f9596f8bd7cadd6ef09400b7e664aaaf3127e66c7bcf019db730762 WHIRLPOOL e9bb92389edc7f3385208d06a24a8669354d079df4c28a4704ea2169c99c0496f44c1129f2e2974d3775d3e45b7e153d8853ec59575db417787499f88fb88e05
+DIST firefox-45.3.0esr-br.xpi 436390 SHA256 0c71e15c07881db347fd42ad1e95d74b539a4a866d4bbb4ad188ada3d86616e4 SHA512 676fe79cc39a14508eeeb2e2ce3ec04841e590e655dc90dd2f69bd0738879dd3f555dfb6b0e1c9476f5bd9ecb79896c459ec3972acdb4e739964325f738ead29 WHIRLPOOL 64336707ccc513fd223433bd0e450abc78db2fde847fe7131347beade8b12b3a533d3c933b29f0172352027cceb8d232bbc8ac43e7714354140231dc1636af36
+DIST firefox-45.3.0esr-bs.xpi 442998 SHA256 b8f8bb53981465182ae76f539aa84af304f3874af27734d8d5ae9d677ca8bff3 SHA512 aa90410f721b646da964a37c6f3a86593fae1a3d73283cd532665f85983c8b32fb0b6cedfb5983dd349c208174a8dea37b7c57dccf17419ac0da5ad3772f5d9b WHIRLPOOL 881ce97cbcfb0dea20abc03e6a9f7500b0c332a26facfd489036f16a46f9e8ad369574e78c1cc39de4653d9e8617a31e94ec5541ac19266ffa0dc92a3c42c39f
+DIST firefox-45.3.0esr-ca.xpi 436832 SHA256 34d81e18a5d019d76a453b3292614aad91e03ede08d18578e69d506485fe9d70 SHA512 57197e284b933aa7098c2cc6442d8d5f37fd2c9089c5c30d0a129e8fde3cc38e23dce2f9fd9961c8bb0cd8d770cea6de072c0a862ec5196a834819c5b34b7349 WHIRLPOOL b7e97c9770f599c3cc5030c343f6025fdeea4ddd19864781f702149d67ef41e9902e8d0dd22b7cf61ae2d873f0d7a97ce900301f329cb34452778b367b973816
+DIST firefox-45.3.0esr-cs.xpi 443482 SHA256 da5189b1ecfbd4fe02e4149fbff6288eb41c82dd5ecc846ad32d0af3922f9fcc SHA512 f2d05fdf428610c8fd19f3389eb0990778f0aeb445eeb4f5046d6142f87c89a64a6c04e7d440364bc978b21ac5c8ed4c07c794b70283482b21670f3d6963f07b WHIRLPOOL fd67b6b6d45acd943c0fd3413eb874de7fd5c044324a00776acc1418b22016fddaacf7372d767dd23bceda02d323805b551cbc8a2c7467eabae4c957e6681e07
+DIST firefox-45.3.0esr-cy.xpi 438907 SHA256 73aa44deefd2ff2cfab6b1c0343226334749fde89ca9f1673c9e824b39051829 SHA512 0ba9f469e72b2f9451ebece3edebc5c2bfaf0d349fe168a094a205a184cbc78d0cc7198cd823acb98b2682b50b2ac37b90647f2496ef3b47bfd150dfeddc94f9 WHIRLPOOL ebb66c2b12ed60dbacc0edfe31a75f35260c30f058382203daf6ded18b83bd1fb9658abee72c970c598314c8bc1d1cd81ec70a0937ed87aca5b801bcc8e955b3
+DIST firefox-45.3.0esr-da.xpi 430078 SHA256 66753cd64b22beb48eaa15070dc1f773cb120156c8f440f69e09935c76e72285 SHA512 d3f24e97c5f0c0bbb4e33e01494c9259cdd6d5a4d026fb07df8b9e7ae77248ec12955ffe2d6e6804732e30546089e9115cadd6da08cbb1071288cd220e9f4891 WHIRLPOOL 24180c6f1f2297f190b3c702e87d23534ffde7f2a8cbb157399c7794895476b9ce658a2b6d8e81aa19c648a183bbedc1129eeecc688c538db45b74a705b14b27
+DIST firefox-45.3.0esr-de.xpi 445481 SHA256 4f22e48368da0f042f4be2d47080de3fa3faccc0b06285d2a887c5b013692871 SHA512 df7b25559c4fe25effb6e9b2c7b48093d51f4e1046afe73366f663c813261bf949735aed697efb3f7f4ce10496526ecf4d0efc2e1f28c71c6712da9c0b8ed54b WHIRLPOOL 707b9978daf67c612c5bc74425f256a82a247fcb18c1ea9ec461dfb6280e504ecd5105369d84b3201930fafeaa097b9e0b6719ccedce778b4a7777b19b6a0011
+DIST firefox-45.3.0esr-el.xpi 470866 SHA256 7cc7530d7e3054ab1b0cb32de6fcea8d3b67f4e245dfefdaf10c2a3d3b696b7f SHA512 97b584898f9ad3ec6f5cb438036fcca508d40584201965b1fbf36b82c08e0acaca0bc8987eb5b193e58600f2c4618ec8ec0bd8efd5ef8dfe09ff0a84fdbae440 WHIRLPOOL 3b335f666320c6a96017d395d03bc44873b8ba8661db127fd78a3ea981fc7da8a52d44f86f4b788707a0cb4334cd2f6ceaa310abeda34ae8f15f543f4c4c7a5c
+DIST firefox-45.3.0esr-en-GB.xpi 423871 SHA256 ffade7425d0edd8a07b25e0becab0ee4b5fb8797cf5e6ad1c42e15c3dba2ac4d SHA512 899e69a501fef574f0356e5c46c53b66774356f3d00017372adecdf7f2501436b11ad2574e03d3e082b10464f7beb08e47f7ff3a7b996057b0c2df5e38a08a17 WHIRLPOOL 22b6ecf8d06b3ce3a0c9fced7664aed9936e07547b303a880b0af31966d7e38d69797072c9322bcdc258f5eb42ee4c7a0fbc03e7e8644c7e5ebf29c76ced9fc9
+DIST firefox-45.3.0esr-en-ZA.xpi 420776 SHA256 303cb400d610dc630a4d6e5d630ca99d1938784739dd651c867a4540b5df1d16 SHA512 edf162c2d1ec7b49c249261eea1a9f787e329850dcb77302dd0ab825d2fe8d5555bcc00734d526243d566e8ad104368994ed4ecbbbf0ba90d74f53577dde2883 WHIRLPOOL 7059329cce30cd1132ab0f3ea40dda445856401113c44d3f697e8289bef8711931c5702434e629d34b3cdc899f0bb18694823997d40ec5cfeb2a285a8fcc243a
+DIST firefox-45.3.0esr-eo.xpi 440960 SHA256 b0c6752f4e1409d96f5f52d9a27fa75b2f1aa91909475114b277d9fec4a6e54b SHA512 e770d8bd3923671b5addf196e6664dc37df87344772117566168d8e89b4533a5b47c7161acf292836f09e1c1e5ba49ec3fd5bd10e9761822cfd15101732ac811 WHIRLPOOL fcf627113286333fb2a9ad6c20064983a417f8b01728bad75bcc988d134323a96aeae3660f556a6cfa3192603f771609f50025f9f1d57195f99de94e168a6d25
+DIST firefox-45.3.0esr-es-AR.xpi 441481 SHA256 79eadd7e9345bbd3d4d6adedc5c023a6738bceb132ca0735e3683b1ac4eb1532 SHA512 bd8f198fa97f7272c47e8e03448054e39159b3a109af1631f335f7fd28c30985591c923c34770477a39411c3583ad0f493108f710884a1c56936f75a37fc930c WHIRLPOOL 8b913366e87b1a99ca566022b4bfa61945d7fee6cf0b50ac7c870d2e0e83c37f17690c5a3fad659fb17a4b2e6792894b6df861127903ad3f244a4aa172f530a5
+DIST firefox-45.3.0esr-es-CL.xpi 368763 SHA256 59b145737fdff59c35ca1a96d16d9edd942eb0b5fd04b2e7757ff8c322c62dac SHA512 1e0c0fff51c06df7fbc251d291e087ca1668fb206867d4bd66e5be16fd387878d7aa312667b3ab70676c693bb08509472410cae72460b00be6d5afbd310e8704 WHIRLPOOL 94f8a9e3560cbb33c3ec2e1d0877418e1e708ed45a1a361142d8af3f445e71a652506f35d5d89944c9514add8450e31563f43d9dce199b250b3795cd5073e088
+DIST firefox-45.3.0esr-es-ES.xpi 353716 SHA256 86ccdae8495500d3e1c8c2565be913eb343273199542076efa679c798f94815e SHA512 e12436ee09910bb39fdbce56aeaa99291ce2def194ea16c31d0f2bd49d2ed613718de1193f4715bf6dcc59cb1fc80a0947393260b427c0c561ac7b6334233849 WHIRLPOOL 609c65b3f0a7d7b965ec4daf443222158cb0db24141fd14b40fe48439a7821b6131aa26d3625551047dfd9b38a2430480a53386b1da996ef3753b788cd543eb1
+DIST firefox-45.3.0esr-es-MX.xpi 449395 SHA256 097ac5a5f882a52b4b09370444c4d201a0a468ccd631e7e94a4826680c70628e SHA512 5304014174a9548740e19bc73f53e421f3f197b04e6a0c6ab76b6e9c31607022c5f2879cd45a08a1999c466e8e8f9d2aba82b3f7930b3d6585adb77110c7de37 WHIRLPOOL eb40bc78c977592569b97739afe582702da2b57889b1fe20832585f6b6c6620b8653e8ba32037978c2c75a5491f63e5f23d9ea0b148006f63a43a7d2de85689d
+DIST firefox-45.3.0esr-et.xpi 433352 SHA256 9310b9f9dcf190e5688a78604d27f8ef08baddb09b41866400e28dc364718630 SHA512 60998969c14fb04a10df2e6ac723fb6686b4b0d1bedba274408316e1d62c156fdaf7bab8cddbe3695514c2b6219d71497939cd9344ac7217f2ee1d73e9dea3aa WHIRLPOOL 4e802bd76db81d1599fd23771ed0b8e86c691f441f8e7553409ded92154a9079de94c2c7960889c35f38438d4a34c87fc09f9b210806623272b03dac20b326c7
+DIST firefox-45.3.0esr-eu.xpi 441357 SHA256 c98129af6917217525a6b1275ecb7e6a98aabbf665faf3161c60470d10d62209 SHA512 e5c7fd8f68ac2c8151884ca921bb1c416356cd436cabda745069d41e4551c57648b77e4a7806a2a41139e9779c7c7e32b051630840ed4a2cd922a9d1027326a1 WHIRLPOOL 68ab903567c45ea9c5f96c492bfb53343b52d7e4356626450d4928612822b0764bd29cf68cb840141ae4034f26424235a1302c64206d996df4a04426e58c869a
+DIST firefox-45.3.0esr-fa.xpi 491941 SHA256 cadcaea570e856b731ae07e9f57b010335d061eb01b1af0650a3f168adf260f4 SHA512 ecd88350f154ba31361c2f5eb8957a917ba2ae09c919f6721c4af816278d64140677e7eca48f9df6a359f42849ca3aadc33180e999362f63c625d33332d5942d WHIRLPOOL 95bb7c0d5f90987e708585d4321474321e5836b55a204f3fa7eac9689a6ad536aeb9ee31d6fa86e65db37dea715d2746abc457c7f3bcb3b2f6b9a655f9788196
+DIST firefox-45.3.0esr-fi.xpi 438347 SHA256 d3cda2cb1fcbfe24e535d703db60fbefd689ce2905efafc477f67bd47d4a5e13 SHA512 5eb9155e50979e3643d8731374f7d79951999bcf5c7913abcbc50b89f8a367a94491a15ae0015bcf9a32a073841f584490ab777622d86f89658d814bf63ac53f WHIRLPOOL be9f9dc9b07e4d4bd9ad0f70564a6d323b8fc37e04988ba23a7df9c21e81b063e39174a27e29e38d1191540adc2ea0b8328cfe3b6c2bed2c81a630a7582ffaa3
+DIST firefox-45.3.0esr-fr.xpi 450037 SHA256 9e090e0e986a851aff7a00245db430aca728ff17401e41836d16655dde454e63 SHA512 af67bf74ae6833dfa9c597f51ba12e2d88a67673d9dff5f052fd073d0a6f0a416e562b7d518183b9defe3dc0d7238575ec00e343aefc6c9e89950e1638dc77ac WHIRLPOOL 0d3edd50239e068a4554ed36d294960db8b5fbf825c052cc7b677a923c3de11ab476e265469f189855768bc94fb305970186cc0bdc9d03fa2b71ec1a71231e42
+DIST firefox-45.3.0esr-fy-NL.xpi 447777 SHA256 d3e9574f71c22197ea9a07baa7b4e4239cebd411a5293c697ae754f55cfa1d41 SHA512 6d5cd0d916ed0da947a3792df0717eef74f0995ad6f4779f8bd2201da420abc61e02515f6d60386d67c6238cce1c632c0e9afb5cba592623dadcb60e1dda6d12 WHIRLPOOL 60680e85501e20aa13242994af8f90356c5d36cc82a752a875f842b1e72c8d79d0fe46c3937a028943eb04419f91951ff8fc516f21bdb7e548d8d841bc46d7c6
+DIST firefox-45.3.0esr-ga-IE.xpi 460055 SHA256 d9e99926787640510e11894add1ab970749f469829723dcb3b79ff8275f58471 SHA512 c4aa32611ed9d4cd6193fa19a4fc6e78f76f43b7ed75f342a3f05d23b4d71d159bc416ed195bdf400aea34590f5599dd40fd0be29b8abaaa6019ac7a4892908b WHIRLPOOL d9a5df93d6973691473b63d6f6c95c5279b80a498fa5d459c7fc16e02f758f33a04344084f5b040d18c31856b71347608b76d1f536b7a85d086eef76490d88ce
+DIST firefox-45.3.0esr-gd.xpi 449711 SHA256 899b18a15da4e2b49e4c03e6fda769e13573a93689305dfa183a2d0f70dcb377 SHA512 06889a8cde1695797b982c83a8070975e017599710595aa1a53f30d81378559b5dd237e275691a98d0dcb07c38ece41454d8c5ae564e8f73f4672f0d62f505f2 WHIRLPOOL 32b443b985b9f12da05d8710cb3c4b18cc5e063fcf599e36360c778d769744a31239702de95fc02bcc52594025e7d642cd364f6b2d96ffc20d60185a5e960f6d
+DIST firefox-45.3.0esr-gl.xpi 434804 SHA256 9029b5a78a4887f9297641e125a1c9b12e29af9f9b48b2f127a4742a6a6e436e SHA512 91a842846f6fb7076406ff2a59e2fefe11c286ce7e9c0711bdb903761b60e109b4a2ac33960975c0e623f0a1495399c3754078672243fce31795fcef17a19eba WHIRLPOOL b6309f89c8c4edbc8c17aaed926553f0eff9ba1f236851c81aa7e13514be06c02b35840ee42a82f36f622297cc54903e3aa84fe731e86c359a03264508a13426
+DIST firefox-45.3.0esr-gu-IN.xpi 472566 SHA256 c2d56ee0933e29ba1e8ff20661ba488c12d1d7d2829df22d5cbab5d47087a9f5 SHA512 c402a9593acb3b9c26ff35eaffced58eb4c09a92a68f6748710148cc628aab97791fca7f9076c88278beaed025b3f02cd4e4b9024b180e92efa6c208c172a1e2 WHIRLPOOL 2ab402b7209e1e97766fe08dc24edd1c399225101165ad7ae3ad2a27f0caa91435e302c6fd65349128cc38fdbaa28054ce47bca2e1a73721a88ebd11fc37d4f3
+DIST firefox-45.3.0esr-he.xpi 454785 SHA256 58dad792a5626a583655919e0b0db4a6c013205c44cc13ac32592be6c53cf31a SHA512 7304190242ba0c3558413af2f76fedcaef18f518c7dd1618c32a3a9a2aaf35adad6f83098117fd1fad6fa880a3817bf1c2ca43a4f284f34fe85af4648ebbc0f8 WHIRLPOOL c30886174eeb542b440277c99f2bfd95ca0e2162a08cf743cbdc52ae08de5560cd5b49bbfaf07699dcc90595922eebf4ccbb28ce73f1ae6922ffde14c481fe7d
+DIST firefox-45.3.0esr-hi-IN.xpi 486991 SHA256 1c107f6554f7614a5e640db7b2f021e8cc35b0e18f26adf8854d71c60243f855 SHA512 41dc8c33a54fca46bd40e7eb62d75bab6bb76777a914902c5327039eb81b234ac3bedf7f0aa485d274c72fb6b50275cf3ad1e2aeb6c60c143ecbe321a296f582 WHIRLPOOL 87fbe071747182c0dc2eab8504e70ef20bb10ea82347a06e702479b4abd6de831cc0f7a81698c557256f09ab0923a19af3da0c21ffa9bfaf23281a70501db362
+DIST firefox-45.3.0esr-hr.xpi 449068 SHA256 35cdd86496b7787006c7f98fcbfce5959564ead00f55ecc3eb3ad93d5d4b050e SHA512 8594e345f21e1d6cab166c11e9a19fd4ad0df7a885c3afdafcb9f8fdd0138db763c829a07eb223d4145d45c6bc543695d98690bb73ccdb15c1d3bb420524d328 WHIRLPOOL c2623b6bd01315bf1e4124696423ca2237780e9af944746dc3fa2ec533e226c5e4468403622f47dc87bab24a4fb13124e63e8d492a6515f429f509564894ac82
+DIST firefox-45.3.0esr-hsb.xpi 461454 SHA256 8393b313c4044340b93d2a6233b6c0d53aa8b1cbd0be14a575a91bbb7808af4a SHA512 125abf556dfe6603d111255945c3761259549f4f8eaf0a396da31560b8740281fd83b7335e6a204336adf48e197134de4a3b1d8777a9fe9edc157c2adf4c96b7 WHIRLPOOL a392b6982bf548d45306d7f94ca187071ff14fb0ad862c576aa11494be7cb9466ec58473589328a3863f13e9f6e2f8d28e488d458949cbff5568bb58fc57f563
+DIST firefox-45.3.0esr-hu.xpi 449777 SHA256 96bbb5f900e7415030585bbba9591537d7e305f4e681466008ce495b05ee3e49 SHA512 15a7fe94310dd1f0d5681bfbf961ce4ce594f5eda759dc31c97b7e7bc2e40bb8c2374e4592fac797cbc16495b9185ed98f38aae8d7578bd27a37c133a12377d5 WHIRLPOOL 1c1c172185b9ef51f0a6ba0006e168456f3fdadd00560621441d76b3b45e0e158c141b7f30704e473487a2e798356c2de1c131c1d483a7b0b1f61f6e93ff25e4
+DIST firefox-45.3.0esr-hy-AM.xpi 500040 SHA256 a73472e9e420b43dc43e17a855dd60af2f311e6c9e91c989f0ecc0e431c92ab9 SHA512 b1d73d30979e5b6ee32947c20116fc38220515738aa920711a403aa92ba484e94dddd311e261b37a60ac669010c065fbd8a771387cfe2395db5bdf6359ac24c2 WHIRLPOOL ee277d562467b37f56b50bf9e7797f0e036cbc73d54c57a33ab053425431800522cf3b68af7d77d9199240334befb4719b7c2117feded4b590214930f21857d8
+DIST firefox-45.3.0esr-id.xpi 427175 SHA256 25646f57616dda365ffa291c53a50379d99364bc7c2ddf3a08087b280a883266 SHA512 a38dd5614849f4a2541c328eb95608d7e2ceb759a5d4e865eb80e4f47e7cacee8f9ab5bf543ee9b17a5bcccd1c321ae2ea0f06b66381e22477c1f0c236bec0e0 WHIRLPOOL e28fd29261dc9fe31a097945a615bcf143c731fef908ee5dd2e6fbe5d16e69d34d6b1765ad701c82eb857c403e5f7eb893c773aae604fc234bfa7a547ec0b345
+DIST firefox-45.3.0esr-is.xpi 443209 SHA256 88e76762c209118f37a192859f0a2cebea3351ebdd1df10d567d0de5c372c4e3 SHA512 79a7caa6493057fe59efdbdd08baa53830351b8aa83e3d35b058665bc0578235448ddd9ead2ed1d60e9ffd72d7a55324ba1b1639494daa70efc8865c5dd17c5c WHIRLPOOL 74c5cd9013c97150bc089b6d95a6dbad7d4b81198b40f93c4778d913d36bf385db845f93c83358309c26e239d207eb133e936db67bfdd83cb6909d2d83057b2a
+DIST firefox-45.3.0esr-it.xpi 343724 SHA256 c8ed5d40eb444394b6b2ce17fdc3e15cae893cfd64bc6aa429a72d21a4378389 SHA512 f440b1e33db6e57ceade9e7ad2505930be86ed0d2c0a30ff2d486c5c0d937b8ffce0c5baaff0cc4c45e04e0c259476ca12f46fb468b91d8c2343b81e90b617e9 WHIRLPOOL 7bc587576597030fedb67669d2cbf067aa64254aaf44c0ae431d7dfce729d836ccf825c1b55781412577c8b87274d0699211c1956ceeb0a0f0dba9b743648b85
+DIST firefox-45.3.0esr-ja.xpi 486331 SHA256 4062eff4fa5c09d4fdd2ba485733ab193a826832c4e0a09fd608718cdf363e5e SHA512 4eb31df679f6f9d23ad722a99dcea3391b906c19301b434c2ec88e609f2f9bd35a758405ed6f55b98270ff9e6671faa9455eaf8b6493cebb4ef4ee50c0243fe4 WHIRLPOOL 038842b074f28d9a4d9b4cf85d371d075ea1b8b9133ecc73f26966086cc8d292f253d4f8bd5701a3a947f73ac5933483c57eb9875bb1746f7d38b1ff54bd7f76
+DIST firefox-45.3.0esr-kk.xpi 498895 SHA256 e8fc700586ec6edfb5ede74933340c5cbdb17b24d0e10f2488dd0e8c5e12a8d4 SHA512 1855d6ca6615253bf148efdc1654b1c9dff2e84ff73639d58063cbb2f5a825d85c6256955628035b6f0f987d2b2a697ed2100f9f0086169b0233853d818aaf83 WHIRLPOOL 70a16bde0f79b4fbfba291cc080d58789acb77a58fd746a3bc4b6681aa59ded479d8eb0ec42604aa02c2a18c3261329a255bdac90ae0508d271d1102556e3220
+DIST firefox-45.3.0esr-km.xpi 504301 SHA256 17fc8f965d3ee1db4d6af7334fc1e51dabc12a1c9ec539d99d445da19095e259 SHA512 3ee7910b7099268b6dd3a3a0bf61cef4b0232ffc2cd1553bc19e0695b7d413f9e5921a4f754a69d829d36998d91a18b90636ddf10288e41f9290f5eb9e6eedd2 WHIRLPOOL 06b62ab893c66ca3407e604281ce802a0b62e4af72756c1b635350e8ce0e4a2105836fe3a2366969c88421ca8f21d2ace957f275eb4afb2145b0c598f35e7e7d
+DIST firefox-45.3.0esr-kn.xpi 495880 SHA256 db4ac019feb54045e488cb3e8756a48426ce777332078640367e3c0c61f18f0d SHA512 928dffbdfec3289891f3bac7666bf3fd6213446b91fd5b8a169290fc1c551f37868f5a69b835f20850684fb83d75f392108039385d15eb718ee99841c9c63c16 WHIRLPOOL c7c50d669238c007f03be0c7a6dc943fe7e0d61547f22ae7469abf73f6c9f2c4dd8d0130c13c60d85d7d8644d39686fc8c1d7ffb84f87f836b23135b83e085ea
+DIST firefox-45.3.0esr-ko.xpi 465289 SHA256 8e757c8cf4b8539311f26a7ad9f6964451f3d68a814d1bf57089eb326958c551 SHA512 1f9174dee610acae1220e53bbb0e1c17e0c9ea82027e7759187a9a573d28eec8c23e30d1aa885353d5b98fada066768e4b84c2bceda227fe9e4bd26005d1ae1f WHIRLPOOL ffca9a99c2b6a4bfeec2c4c6385d8b1dab5394d11ca8c5aa842f226ba68bf3e572b6f0523b770788000a76c90261243fca50cfe6ef8ad58b305bdce6b4b3032a
+DIST firefox-45.3.0esr-lt.xpi 454678 SHA256 877ab134d2424eec3623f6e6a63b184a4866279c7a677c47d6d33949208f11a9 SHA512 be984cd993887768dd2f95ee31766188a2ea6897235c15ce2b3265e32b8af3f5d08e26266b62f65cd8e65cff904e3c12985d58badaf13fe16c7ac8150f669de3 WHIRLPOOL ce53bf2eb9eb8c7c81c7deb1c5069e33ae8a4312d129ff72b9106bcdeb32dc3d1494b1bef5c118ac6e2b01b562cdb1ef39fa77c229e929affa05ac340697224c
+DIST firefox-45.3.0esr-lv.xpi 445720 SHA256 e4bfa3a6cfee7008738bf37ead2db1a35391951a83653c7bd19a6b23e69c3cc0 SHA512 5d16c86b68aa321238e23a53fb6e5b092812c73b01e7dd1851ca5df9cb37ca69ff56f280836fb61103ccc5902f67f82d3582b5fedd3e7d102601e8cb0a6edfc6 WHIRLPOOL 304b03ba3856ecb97505550e2cd38d301088f70c8f620b36401484db7b70692bc54f274aa5967e252f6f4ddaaeafa15955564c4e79903c1fc1d751b9bf65b9b5
+DIST firefox-45.3.0esr-mai.xpi 492650 SHA256 82907cc9dbc974669ff04b6c5d70f0d02086f3ddd8f315a687ac3beb7a5f4ad6 SHA512 967b71c3b4427603f1f39c238a3cf508b82f7374a72bd4d450d20cec10265d20f17948c5900673c0e3a66555a4cd23d82adbfc5a6df6de84dae042794e5e6d22 WHIRLPOOL 272c34659f690bf35310d7ab632969294077aab62b19525e153f792a39b369b82e380c15b2f4f423db287c23e0e66f29135cf2b612feb3081e72b26725ba7b4a
+DIST firefox-45.3.0esr-mk.xpi 476391 SHA256 4ef85389f009c5e6d98796c2d86c61d34f4ee762a46c9b5e472005a58c0d6adc SHA512 618c8215594104c48915bb497b3c071fc7e197978a8230d0c6ce4ec7fb917195ef9072ea63c5dccb79bebca86ecc7893994fec0fb0c4823a968981dc434caad2 WHIRLPOOL a350e8c0eeb65346f4dcfbf0ebbc28b49ed8bddd06422fb52941599e2388719a203ffad83196193bf1ab23871d9324dff2b95e0dd0aa8cd9b0059c91281ef979
+DIST firefox-45.3.0esr-ml.xpi 498681 SHA256 cdac893c0fcd6509bcf2d0fcae1dd7ac9509551d39ff7c3ec879f3e733f1841c SHA512 dcd636a4fdd03fdc159e987adaf6a37845eaf7302430fe5f6af043e38518f5973ab4e4cdfedc21df1a9894c0aa2479b8b310a818e71899f5691e02709b32b6b0 WHIRLPOOL 40f033a1652e462b5a8ae00ce5342579107896ad31112965a4b17870dfd4f0d6e9670723ae82599710d7c3fc2389a8b5279dfb7b152fd1a9eeef1cd992f340f0
+DIST firefox-45.3.0esr-mr.xpi 503700 SHA256 f4b8db4423adfa18dc528777134089ec547aedfc83573ce0eac9c6c85af019b0 SHA512 a65bd83bb6f0886cdb480fae9a18b13fecdc25fc67644d963a14c1127c32dfe6cba1905292231427f7d83ad09fcd0a4c5c8c642da565023b7c92bdaa267a74d4 WHIRLPOOL a046f75cfabe854a5f79abe73511af85343188a365ec6fa15c76c37683563f2be935c98dd8314c8a5ca7c1a20bea2942ad4212897887a4130fc4f3e381cd0f9f
+DIST firefox-45.3.0esr-ms.xpi 440064 SHA256 1ae55644bc31420b373b00977da621d2668ba8e15069daac68e7b3b74d50e601 SHA512 49a21a9b70e50403716285c100ecc726b46aa74b4973deffe81817559f62a4e0591c02f27b9da184e39f85ace8416ab75a9ed365cb09ca0ed5b6da97bac35e40 WHIRLPOOL b385a7af93d7dff525efedeb9f4914142650b58640eb2d82fa9e34e44011e9120198d38ed560887f3d3da4c1e7df90be77d6bafc3b5b2c47e6ad623773612409
+DIST firefox-45.3.0esr-nb-NO.xpi 435470 SHA256 899cab940517d35b9fc77c47fc9740e26d9399361d4cf318ede91b8448dfb71e SHA512 16aac2dd29e7edf4758107333cc2497a765337aa985a51da162bb7a19aeff75102bac3781e5fbc8a439be6f02a790b7342dbcc86668b52440caecf16e2e8b8ca WHIRLPOOL 2dab75d7bd5ad0462e45fc93ef2a2e9a53747277057fc337e70766d533ac05fdf97015febfc28fce8a3e7ef14afb04f5b2388e11e4746b50dce5ad5d77acd930
+DIST firefox-45.3.0esr-nl.xpi 435202 SHA256 f1902a95d8f72c1be474392dd0b03e4242157c8e68d058995ae851b56f8ffcf1 SHA512 49a727f4473d29bdb00aca50de5c538b3ac83c82af62f324e55ea373889b1778ece2ab5ab480f035d6f1764f9bbf77be5aa0173d27bf270e36da0d126266b44d WHIRLPOOL da52ab748ec58f9b1e3f40565a839c3de47e7f99e1f2a5adb1126e162f610b1f8acdd8bec6739239c62e4eacb5d85ce52623ebffa263d2960c8729ef5d4c5f08
+DIST firefox-45.3.0esr-nn-NO.xpi 432934 SHA256 26892e1415a2cf93d4a55a581786e50797d4d64073dac96768f952b4dc914a07 SHA512 0688a5b7a968a1856c822162d11d5943125f8e8c69d7c3141bf5652401cfa509750746a30a3a6ec25e48ca04b12fd5e4431c62e549f2e647d2f50e2a4ea0ad6b WHIRLPOOL f7d8ff44629fb6b30a4646dab5010d94c85d06349a2e001b15561b40487f3a12cd2a1c23ab23269ab7c11dbb38a20573061abfd322a8af6e2f5cbac49eda6f4e
+DIST firefox-45.3.0esr-or.xpi 495922 SHA256 22004bd75c11ec38b590ee3e935ad2a4e248eb544c746fc9e369ce9bf8344d44 SHA512 2c29e92d58d892208a83a03047fa15bc6c5edf7819aa20332ad3f1af2eebf336c63336bbf98c0b0788dc635365f184e1ac29b3ed5f23d602ab67492ac60f7954 WHIRLPOOL fae6824e77c9ecdb7be22cf25b5f33cd7b0c00a89b4f9bdf110ee35e63978a7aae1739360ecf3adb53b9a631661c3340666d7105da59e7f55e268ecf00acb21d
+DIST firefox-45.3.0esr-pa-IN.xpi 489550 SHA256 04b7a3b3b5838dfed6ac5326bb394b8c66d42c4bc865e50fb9864bc439816743 SHA512 6138de83caf679d1ea8bff136c585ea63927f41939f19a54850478c5626ef0f59347be6ab58ef055bb8e773f00d94aa8942e3863d4ca6fb5627f38214433070d WHIRLPOOL 3bac9dfc2c5ce4280bf4b62b3a1196ab81997aa23717006cae476ac4ad1dfcb9da2d09d372008df4bbcc83516827f1b4abf51c1e48516bb04109f8abf7b4d4d0
+DIST firefox-45.3.0esr-pl.xpi 383929 SHA256 948a39a9c407be04fe4cb3917e49db1460a32e1670606bb9bd096e806ad1dd62 SHA512 3ff74dd73ab8383bd63c2a494851c8af6f283c1fd5cbe59f218ec3ea0b5de6965ea37166ec189010d594c2870079b8d609c9d671b468a0b9d1afaf3eae34b509 WHIRLPOOL def4f8bfd1f62dfc553e2144e3f1ff8a67e45d380faa987c03f863637ca8ba1bb62b59dcd4dcc286b8fa1761c829731b2da0a041cfef81f425e789357e633825
+DIST firefox-45.3.0esr-pt-BR.xpi 450991 SHA256 d80c53685b56fbfcc87a16fa3d3fac923dbe99b4279ebeef875b3573e87fa1bb SHA512 5582839b76f94cf38f7e2c7e157b02ef4caa4b6215e04e68a522805c029acd93be32522aa7f965e259e5cf68fff7c15a48ffed329a5ee5b050f2190e292ed86c WHIRLPOOL 6343c44ab73c8e21a48564f0acddf43f7cbe57be6cda44db21a09bf95235e58bdcddf180bb082b89775b0c62f2f13942bba44e21b4f8f6e94aecf099e8e59a47
+DIST firefox-45.3.0esr-pt-PT.xpi 437022 SHA256 e358f3bdd97745dd06d5bfce4212bad5fec3957263b9de4594d785a1e1ad34dc SHA512 49ebe66e8ee805d070a5ef5a25c23b965a743cffb55a6a7790250bbdcc985426dd54c5cd5870145608d4adfe3160698f310e96f3b2b3b35029b2dcaa3cf3a1e7 WHIRLPOOL ccfca5fbb44c5e3db67820865f59f9228afe97b1dd698766e63bffcaa5f6049e046edd23a22f33e87675de5787ab5469e04786cc3176f0d34b0d156a5eb324f5
+DIST firefox-45.3.0esr-rm.xpi 437717 SHA256 7be3f74c101e1ae55e2e6d4b931ecf0166e2bc7996b64cd2d4e85e53417d98b0 SHA512 935c67f3f50e0536216dd10c1d4f61f6fcea362263a558c092bbba91f6be1f632b3efd55837e2a07f6547b32ac4c986f7369e013d33caaad94ed8cd8e3821b32 WHIRLPOOL 27a2db2926741de055046ee46bdd5066bf1d18f118782ab783efd4b04901db5978e0dfcddc905bd587aaf3587071013438f49a2d6c767f9f32a9718bfc7d78eb
+DIST firefox-45.3.0esr-ro.xpi 444062 SHA256 39cffa564f767ef31a712e6696e3f39cc00819f33aa899b9ecb56221c3ed04b0 SHA512 ed96ec7be13459e3a9472dff4de5839d3658e1a19e28a50ea792b274fc54bb2ba899f41001f7dbb1cb8c48b8a29d766193c7efcf693ebf83170c22d00229fde8 WHIRLPOOL b287015f1e08b429eb1001252ef5d38321ef68a06c99946f5f9eb28222b8cfc2631ed6940017e7de8536704917fdfde4b8295732ca7604d1caec8915cf61fc19
+DIST firefox-45.3.0esr-ru.xpi 392738 SHA256 28b28e799da22c1c576c2c624a980490d940310894a1cc39511334f8436999ae SHA512 fb64dda2fa55588eadb327083690e41223e4488b0f8e3404cab6a285d59406029adfbcdb18e3ceddcd614664e28892f0fb7be57ca7ac62a7d74089998e0a4229 WHIRLPOOL e32e64a97835612c3031f6509493fdf4519c29df30b0fbc5102e73da72c2be906fac50373619cf5e4e3993e47951a96cbbfbd6c3835195f83eb0c15be68411fa
+DIST firefox-45.3.0esr-si.xpi 482248 SHA256 e8e12fbca0ba17f5c5abdd87519bee0bb71b7e455d0ec0cb7e8ddfd021a42ad9 SHA512 5410cef3e6fb1f726b8424887c0d16c7f1a6b38b1609bf242437f8e6dec476ca405b71ea84204ceee651578a313ecef658de2e25555a9aac83134b015d44c617 WHIRLPOOL 618722a460fed0d213b073c68ac5f31c3c0a29f1f91e4c38bf3d68633e417e72272ea1576b4a544b9f88dde300a3fc856960c78bb98b50e0cfd311d2a12c990c
+DIST firefox-45.3.0esr-sk.xpi 453606 SHA256 627104163ae9ee466b802028cfaa7c667fbfd63271b1eea186d1234f0209aaf0 SHA512 dd510dc5bc45f8a30e1b0521baee34ff1ce7011e3fe6fdcbed1af7de175eab58062278b0fb16358854bfd65cc78775f6ad70643bfe2a1a0a34b6ded45909b3cd WHIRLPOOL ec606855422060783dcb62c2582a7a89c96e6a63c8e6fffb755d20c88d9a960fdac798be35370ef2e8a7ff2bda6ce19fc272c07757b1d880db0fe143c2852cd8
+DIST firefox-45.3.0esr-sl.xpi 444963 SHA256 9f3cb943ce906effdd313214cb38ac131ca5501f7b57ca3744a32311c28589be SHA512 b7afdef0d67265e7f6908fd5a9178965fa7f8bb314b2879b3fc82bb83e0a4414eb9c4e619bb16ec9b2ce46ae63105c1b48139f783c0e7fe641405a135d654772 WHIRLPOOL f8279fe4ab68abe21400d62b3f6c233ee0c0ad939089cb2880042819c94bab1ee199acdb642eebb07af6b93de140499f2db74735c2184df12db7d22b5683c9e1
+DIST firefox-45.3.0esr-son.xpi 433513 SHA256 ce87df0f991330a2322c42a77eecc856c5bd355e7a8440f68683cb75f8971595 SHA512 b5229fdd6f63576cf3e416eb8688044cff1c4cee03dffe25a46dfbdc6ab122eb6c21ceec128dbedaa0fd3f5bda0a025946e44663a961643249af96fc8cb0fd5e WHIRLPOOL c1c8c17c122407fccb4c2b008c20ce5bb90af5092251ed6dae355cfc55dfefb092116eedf35af0828456fdb43f1e4d6e9101e936d92ddac037cb99b793cdbbf3
+DIST firefox-45.3.0esr-sq.xpi 452186 SHA256 5901935e95fbc43b483cec6cf952ff7260e32124422bc6feee7bbb8f2d46c3a5 SHA512 ff02568e963a8690f9240ce6cd15e9acf0d7221663c839f17dd49b8ad8913c84896a048706d56d26f49ef330eb15bf7fb8cbeeab610739891e1e2cd9c5687535 WHIRLPOOL 7e906a71d9f0d25efb74ff9496f4f37adf60fa18aefbee5753ec859a8a525dda0dc59a4a8b86b162da6b2ba9bf202d427e5fd49a4fc60f7e6793a7f27c8a0db7
+DIST firefox-45.3.0esr-sr.xpi 464479 SHA256 44c692eda984bd569b34a30d844971637e6b50c5417d6af8edebbf95592d9770 SHA512 b40af43d00fb53c1ca3a60416271b541cbe8526ab9c311597917a1ac0e5c9fa2d37bdbe760bc0d7d6dd35217669475e5764d27863301746a0beeb9c4c69e261d WHIRLPOOL ef1c85e0abd1f2fc2c1296ed222d74752d61f46596c6b523a827e65a917e1b535aee5874e7d1d4479dd66f777e6776c70c7c4a46b1a795261c40cc38e3bf81a7
+DIST firefox-45.3.0esr-sv-SE.xpi 444214 SHA256 9e3ed60f6aba91fd3372ba87d29992212a58a11abe5023255c38f188fe3dfdff SHA512 a8df8a724774345a3d075b2c8583e21627db4f633e9977e560ee987c4e2513649647dea50dec849f411dcbcdd3d522669fb866f242aed532ea9baa798b2619d7 WHIRLPOOL 891d01b111af0f113f084fe40acdef8b53ff12e1cacef5e561dcbd3109093b2e4901e6c677a0ee55acf80c73caec53428ea21f156a304d34ca17b6608f65479d
+DIST firefox-45.3.0esr-ta.xpi 483117 SHA256 441721aa669201fa9ff87b4df6169bc02aaa05b2d7c4d40c6ff46ed15833d5c8 SHA512 1a05d44ade7b3afb2c9f8326f8abdb01237553f7087f7b111663e0f2d0e45291df72f912f18cb8a10a0b1e14320de04c234e06d1092afe37ddccb3fc437ab17c WHIRLPOOL 7d531082e9cb5a1a33896388e31064d7253a7f2087cc86748ecd5cff948c351e87dddc02170edf2920bf40df8edcd19426793c0eec13156096dd846f21c0b8b2
+DIST firefox-45.3.0esr-te.xpi 492471 SHA256 98036a788bac894455ce71ba51b646d7cd4df14e17420a03c2dc6614937db47b SHA512 0a6fb10c3a329bb486d926448347bfb24f632b9554595856d165d3ae69df0d9e8ead34e89d79d1d1dc4d3364c9f65e86a944e2acf3512f06b3d0e8aa634b01a7 WHIRLPOOL 07bc3bc9a591340e9fa604fc55d3c7b7e48af39547dc65df20a7af714f9bfa664aa8028c5c9635d5cb394314f7111a7a9cc089bcd032db17b39eeeaf5b039e71
+DIST firefox-45.3.0esr-th.xpi 477650 SHA256 ba3006e5c0a426a745ea385b11c2f7fedc170570a6c960ddabffec1e57aff52f SHA512 afdb45b0ae48e1a84ef4add8da4113456b1c66ca314d8d56dda14b244584b3e514f22a88d7d8a3a9593c3d50183e992515d68956a59a0968b3a9a230531f3eee WHIRLPOOL 41283df17da92210b37ced2166353370eb5904650ff377e2152ac74de1db778e18423149e242db2c55d21f20d761e1d819dc1228289847c30075f95a05b13cda
+DIST firefox-45.3.0esr-tr.xpi 451166 SHA256 bc4f673409e50dda48c42d4c913bc029c523aeee8e09ae026ec9d7f13ead4101 SHA512 24f135eba23e5b5e34fa1b6d97be5243167bf78bb106d255e42fff934431497c6a9af78dcf2ea6efc10e5c78b2548d37aaf12608e052148d6b6cf27524e7dcea WHIRLPOOL 9f74d0d94993b6bb988588c92d07f495b3a6fa5c042b3da33d1910ce1ebdd22f1447dc700894aef982c87c05bd91e6149e720726c473d5de75c958f51ea962b7
+DIST firefox-45.3.0esr-uk.xpi 494780 SHA256 b47822e78efa04c17ca0ba567f7ced0ce6f306d1d0d3dfbdaca68f5a6c27d5fe SHA512 52ca2011569baf910c043db42ea826baf6b0afde8f613a0f69f9227176da49e4cee843957c8d8cbfad0e656bd51947afeb4b189da813fa7e188e2fd9d7c1b9ce WHIRLPOOL 25062902961b2130adc359c699ad677c2257616a5bc1852ecb610753f4baf4026de2079f74625268fa9b43d3a67c5c33b710c1b1ecf3392e9c116c29b4becb0e
+DIST firefox-45.3.0esr-uz.xpi 443803 SHA256 87642ded8387c416f5a43fc50920bf962ecf3056521b507493932ba6d69c1f6e SHA512 c47d4c731f7bfd7c3699a9f6b3edfb8d6406e3ce9964362146d333cce56afcd70d8a12b3aa32599f0d8fd2823bc792a9683d5904bd041f8b38b53b6122d8c3c6 WHIRLPOOL fe8f33172fd37a96cc0b81dcf4095ffe10a856f5e95f9352d77cdc5499f4753447072b2bbd3557df206ac2569428e523949fa71b6ef1f9b16b1949bb9ee36b0c
+DIST firefox-45.3.0esr-vi.xpi 450778 SHA256 696168c72df76c065ab7d8d5ec898fc28f46d22e9ee59c1b8f77ee26b729472c SHA512 516dbaee16999f66d8804a0143ead058aa0d9d46c3ede82e04188e72c719f3480c5a429460bdc3d548ca2215bd894d848ed1a9c1f298f15b47fd05f011952acb WHIRLPOOL af6a3bce38366e9b0989d2f38ef01965d496305c1e9c5420389e7143890f0d6acad349334ec45a420c4b0a19cbf897f985dc279214a574eb859b4b782abf6ad0
+DIST firefox-45.3.0esr-xh.xpi 432918 SHA256 2bd00cf16339926c24217901196cd4135cf6039a3a40f055ab72d6012eb114d7 SHA512 234b47b7df1993df1df9b05237ac91fe8824c9708aa3c0ca93d424ec4468d2f022fa6816f1dea75b760acb57ccc87af95d215feb3b734cc8b2848727fe962e8e WHIRLPOOL 0bf7be8dc9d6ccb947c4dd698cd26262fbbd66ed452792cd25d088c2f27c4089c9ffd96530a9700316423b52a9b426e5dcce46c9b0aebad3897450fd79320653
+DIST firefox-45.3.0esr-zh-CN.xpi 475797 SHA256 89cb03bd98b25a8f2a3468ac509a1cd5a893a74ec62b5cd436fe0e9e2f105333 SHA512 4c5a3d210ffda1c96d4a15fdb0de7d20ac72261b254c6fdc2fc68ced307b62b755cf96d462a3b3ce4ecbd377428aea9514ae6b7d9ae94afbfa97b2a31f1d2368 WHIRLPOOL c690ff40ba372b0ad4e2de7b73897461190c39fd0f8414c65e6329c1d2f7111333b19cca638ac6873472fb760302505829b2706d88399428e30e3b5f58a3a894
+DIST firefox-45.3.0esr-zh-TW.xpi 466529 SHA256 811561b65046f345531d95854c028ed345e99f57c919efeee887ef4fb9dee79f SHA512 cac89f9a36e59cfe174af5d1ed2eabd419fcd80581df4af15d4045deb619ea00f1a3dfe08305268f7e97ee6e8f52ad109f84f86cd06e26bb7ac886dfe5e347b8 WHIRLPOOL b0c053899dc5430416fd90a2e57889cbf14673ba83d17984f48c09aac66250c3fe8b065ac75ea94097f641ca06e76b97bf83331cf5b37ffb45c6f2d702fcfb57
+DIST firefox-45.3.0esr.source.tar.xz 185330580 SHA256 922233c65c0aabd05371974c289495119c28d72fc7f8b06a22b58c5f70f8b8f7 SHA512 ee618aec579625122c3e511a7ac83ac4db9718f5695b6fe6250717602178bae9bb7e5ebe8764f4d33ecf44d3db13abfed0d24c1ec71e64a1087fb6d5a579b0c0 WHIRLPOOL aeb4e5888466e2ec5f142c0ff7b70e231860d144d613490064462c790810dfbd58928752621c70922834a83cea0e70beb6c4828e2c4c05e846d51d11d18f4d2c
 DIST firefox-48.0-ach.xpi 433537 SHA256 c1bcde1c4d61003f016a1934b8bb69481ae066c6096290bc1d502583d36e6256 SHA512 90e9e34474047a1e656584c2559f628bd7c4aef6e240a872fdad5ca33ce17be802d2e8210eee36e306071a7783c718b901b57a5a7935506f95bb53f9ad04f1e8 WHIRLPOOL 0c05d8816e16d0a3e43831547d39efc496c054da7d149c4b203b76730c7e02a1c61dfbfd569d5639d8b9318611336b65113cc60b9ca888b128eb93d4984e17e8
 DIST firefox-48.0-af.xpi 438780 SHA256 10edc281a7e1a6b45692eb82dfbcc5cc8f77f9d870301b959f3d6c88d4384c12 SHA512 a2bd8791355ed72178bbe85a355b7ff60d701759dab7340f11fa70c34fa74c9b2db25068f7750f1fc58f6b72d1576010ea5b9fb36a67a61386cae64602f65fdc WHIRLPOOL dd35eda5d33feca469d9ecd20ef7dc27a3793624d76224cda17d812a41bc0122a0ccc905ecdd742ea2bcb04913d00c29ae32010a7e7a95fe0c167c2658404739
 DIST firefox-48.0-an.xpi 447344 SHA256 e134d343802a8bdb72e02407ffad784085872e4cc4d967dc898425a246a25cee SHA512 ea572be169102adfa8d8f2a54584e365379cf6501233bd130fd7e990ad7ec5a798a570b1cc268f0bcd235457b10d2842b3060713e0b95a76231a168b8ea06ca7 WHIRLPOOL 1b4484bef2e8d7631cdd943a16e3c2b55413869c3e2df08a35ccedf4da2420a4df3881aa870d72cee792088bbb4ee4141cacbdccc72fc6902680e818b683dd2e

diff --git a/www-client/firefox/files/firefox-45-gcc6.patch b/www-client/firefox/files/firefox-45-gcc6.patch
new file mode 100644
index 0000000..c5b861c
--- /dev/null
+++ b/www-client/firefox/files/firefox-45-gcc6.patch
@@ -0,0 +1,40 @@
+Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1245076
+
+--- a/config/gcc-stl-wrapper.template.h	2016-08-31 12:38:43.094770023 -0400
++++ b/config/gcc-stl-wrapper.template.h	2016-08-31 12:40:12.030579071 -0400
+@@ -17,6 +17,12 @@
+ // Silence "warning: #include_next is a GCC extension"
+ #pragma GCC system_header
+ 
++
++#ifndef moz_dont_include_mozalloc_for_cstdlib
++#  define moz_dont_include_mozalloc_for_cstdlib
++#endif
++#ifndef moz_dont_include_mozalloc_for_${HEADER}
++
+ // mozalloc.h wants <new>; break the cycle by always explicitly
+ // including <new> here.  NB: this is a tad sneaky.  Sez the gcc docs:
+ //
+@@ -25,15 +31,17 @@
+ //    same name as the current file. It simply looks for the file
+ //    named, starting with the directory in the search path after the
+ //    one where the current file was found.
+-#include_next <new>
++#  include_next <new>
+ 
+ // See if we're in code that can use mozalloc.  NB: this duplicates
+ // code in nscore.h because nscore.h pulls in prtypes.h, and chromium
+ // can't build with that being included before base/basictypes.h.
+-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
+-#  include "mozilla/mozalloc.h"
+-#else
+-#  error "STL code can only be used with infallible ::operator new()"
++#  if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
++#    include "mozilla/mozalloc.h"
++#  else
++#    error "STL code can only be used with infallible ::operator new()"
++#  endif
++
+ #endif
+ 
+ #if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)

diff --git a/www-client/firefox/firefox-45.2.0.ebuild b/www-client/firefox/firefox-45.3.0.ebuild
similarity index 93%
rename from www-client/firefox/firefox-45.2.0.ebuild
rename to www-client/firefox/firefox-45.3.0.ebuild
index ab73eaf..67eca1b 100644
--- a/www-client/firefox/firefox-45.2.0.ebuild
+++ b/www-client/firefox/firefox-45.3.0.ebuild
@@ -9,9 +9,9 @@ MOZ_ESR=1
 
 # This list can be updated with scripts/get_langs.sh from the mozilla overlay
 MOZ_LANGS=( ach af an ar as ast az be bg bn-BD bn-IN br bs ca cs cy da de
-dsb el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr
-fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM id is it ja kk km kn ko
-lij lt lv mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr
+fy-NL ga-IE gd gl gu-IN he hi-IN hr hsb hu hy-AM id is it ja kk km kn ko
+lt lv mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si
 sk sl son sq sr sv-SE ta te th tr uk uz vi xh zh-CN zh-TW )
 
 # Convert the ebuild version to the upstream mozilla version, used by mozlinguas
@@ -25,10 +25,10 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-45.0-patches-04"
+PATCH="${PN}-45.0-patches-05"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
-MOZCONFIG_OPTIONAL_GTK3="enabled"
+MOZCONFIG_OPTIONAL_GTK3=1
 MOZCONFIG_OPTIONAL_QT5=1
 MOZCONFIG_OPTIONAL_WIFI=1
 MOZCONFIG_OPTIONAL_JIT="enabled"
@@ -38,11 +38,11 @@ inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6
 DESCRIPTION="Firefox Web Browser"
 HOMEPAGE="http://www.mozilla.com/firefox"
 
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ppc64 ~x86 ~amd64-linux ~x86-linux"
 
 SLOT="0"
 LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-IUSE="bindist egl hardened +hwaccel pgo selinux +gmp-autoupdate test"
+IUSE="bindist hardened +hwaccel pgo selinux +gmp-autoupdate test"
 RESTRICT="!bindist? ( bindist )"
 
 # More URIs appended below...
@@ -54,7 +54,9 @@ SRC_URI="${SRC_URI}
 ASM_DEPEND=">=dev-lang/yasm-1.1"
 
 # Mesa 7.10 needed for WebGL + bugfixes
+# gtk3 from 3.20 and above fails hard, limit it
 RDEPEND="
+	gtk3? ( <x11-libs/gtk+-3.20 )
 	>=dev-libs/nss-3.21.1
 	>=dev-libs/nspr-4.12
 	selinux? ( sec-policy/selinux-mozilla )"
@@ -130,8 +132,7 @@ src_unpack() {
 src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox" \
-		"${FILESDIR}"/arm64-4-link-chromium-mutex-based-atomics.patch \
-		"${FILESDIR}"/arm64-5-mozjemalloc-no-static-page-sizes.patch \
+		"${FILESDIR}"/${PN}-45-gcc6.patch \
 		"${FILESDIR}"/${PN}-45-qt-widget-fix.patch
 
 	# Allow user to apply any additional patches without modifing ebuild
@@ -201,9 +202,6 @@ src_configure() {
 	# Add full relro support for hardened
 	use hardened && append-ldflags "-Wl,-z,relro,-z,now"
 
-	# Only available on mozilla-overlay for experimentation -- Removed in Gentoo repo per bug 571180
-	use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
-
 	# Setup api key for location services
 	echo -n "${_google_api_key}" > "${S}"/google-api-key
 	mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2016-10-11 14:13 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2016-10-11 14:13 UTC (permalink / raw
  To: gentoo-commits

commit:     dedbf1c7f1f2e12ff7907f92bb08d8e32f2ea6c6
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 10 01:29:18 2016 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Mon Oct 10 01:29:18 2016 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=dedbf1c7

www-client/firefox-45: moved gcc6 and binutils-2.26 patches to tarball

 www-client/firefox/Manifest                        |  2 +-
 www-client/firefox/files/firefox-45-gcc6.patch     | 40 ----------------------
 ...efox-45.4.0.ebuild => firefox-45.4.0-r1.ebuild} |  3 +-
 3 files changed, 2 insertions(+), 43 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 5c40889..2cabe4d 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,4 +1,4 @@
-DIST firefox-45.0-patches-06.tar.xz 19792 SHA256 4cacdb0ca1e710a0e3f577d5a1253ed14fab9a2d1cdaf83b3fa7bac86cfddef2 SHA512 eec8ccb3d67144368cfad807cad847379bf9ee54c2394f8bf0bda121178b1036ec1d32bea67afad840dff38e1ef26c4c19569d4fa4b553b6e2719bf07a46e017 WHIRLPOOL 7bb6b8f59d86beb9178fbea8bdd372a016b62e00766daf9439e2e59d20635a21b3a218447b09ce7d6a4b601611013f9ad08e088ef8112a41bde9ce951d10bdad
+DIST firefox-45.0-patches-07.tar.xz 21016 SHA256 76a70ebb3f9c0515c0632170dfeedf0bfb60f248bee579514940148bb3e2b1c5 SHA512 304d6ed4b4c9ac58f3762263207167a9a32532fd48f17d9cc86f5106f7ec98273f402e3779b810b455ceea77d84313ffc8f236fa6fdc6cd5ef21e8159beec552 WHIRLPOOL a50d54d1e3b5c0fb0e8b32c8d69cdeb99a8fbfa90ac51dfa01163ab0228499b08d3ef37b27391d0d5179d80e937447029c2f976f014bf97d0da3e4bc1b58eaf7
 DIST firefox-45.4.0esr-ach.xpi 426529 SHA256 f43825621ccd7920710608686aa813594afd1d3b19bff8eb49bd32143b81a856 SHA512 941560b81d39ab3ffc7f671b768bab010faab147dfc571522e7362d246e2b5cadc636af6c00692f285122ae2520861f45e69897d1727c9bb110c0a343289a9e6 WHIRLPOOL 53f387c0d38c076cfc5c58ff7467096370959017ef13531d8abe7f6c5a502889148dd3caf1a3598e693c452dc1caa9d3448c33355f375d2a0755ece2a10f4ad8
 DIST firefox-45.4.0esr-af.xpi 439353 SHA256 93166fd1be0a9b870b3043c752ce7326f7a15a20c38daa40655ed0a6440a8afb SHA512 70b2a20c7fc8d29d750eb28ff63e03101bf84c6282952dc412e85decee141d476eb85ab23f9eb656e8ca6e90705e4ac95d1e2110375695e8ea8d7047707fbe74 WHIRLPOOL 6e10cd75163bc5c724ab132abb51c8226236e089cf8b09b9ad7bdb14abc7294ac89255696aac2a0f0c9556ee6292c83acc8154b88c153d976b42c6dc4b94ac7a
 DIST firefox-45.4.0esr-an.xpi 449036 SHA256 350c7e992de73a4aed0573f679b819e8f79a4f0ed6a98d8a05eaeb8f1eae82b4 SHA512 7279885dbdbee9083c48aef08ad40b6f740d3e9962164d75390203bc71f19a825e87af59a1a3a9495ea7457fe54b266c0ec7316db41465522a0811e303fef25e WHIRLPOOL bbe23b91eeec40d1b8b3ed3389c3a9be374bf7312230e069e5883f697c4c73cd5e199c047011b3c5eb7ecc3825909419bf3fed77c2ced9669ddf57f608c602e0

diff --git a/www-client/firefox/files/firefox-45-gcc6.patch b/www-client/firefox/files/firefox-45-gcc6.patch
deleted file mode 100644
index c5b861c..0000000
--- a/www-client/firefox/files/firefox-45-gcc6.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1245076
-
---- a/config/gcc-stl-wrapper.template.h	2016-08-31 12:38:43.094770023 -0400
-+++ b/config/gcc-stl-wrapper.template.h	2016-08-31 12:40:12.030579071 -0400
-@@ -17,6 +17,12 @@
- // Silence "warning: #include_next is a GCC extension"
- #pragma GCC system_header
- 
-+
-+#ifndef moz_dont_include_mozalloc_for_cstdlib
-+#  define moz_dont_include_mozalloc_for_cstdlib
-+#endif
-+#ifndef moz_dont_include_mozalloc_for_${HEADER}
-+
- // mozalloc.h wants <new>; break the cycle by always explicitly
- // including <new> here.  NB: this is a tad sneaky.  Sez the gcc docs:
- //
-@@ -25,15 +31,17 @@
- //    same name as the current file. It simply looks for the file
- //    named, starting with the directory in the search path after the
- //    one where the current file was found.
--#include_next <new>
-+#  include_next <new>
- 
- // See if we're in code that can use mozalloc.  NB: this duplicates
- // code in nscore.h because nscore.h pulls in prtypes.h, and chromium
- // can't build with that being included before base/basictypes.h.
--#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
--#  include "mozilla/mozalloc.h"
--#else
--#  error "STL code can only be used with infallible ::operator new()"
-+#  if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
-+#    include "mozilla/mozalloc.h"
-+#  else
-+#    error "STL code can only be used with infallible ::operator new()"
-+#  endif
-+
- #endif
- 
- #if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)

diff --git a/www-client/firefox/firefox-45.4.0.ebuild b/www-client/firefox/firefox-45.4.0-r1.ebuild
similarity index 99%
rename from www-client/firefox/firefox-45.4.0.ebuild
rename to www-client/firefox/firefox-45.4.0-r1.ebuild
index 5d30a28..8ba1b06 100644
--- a/www-client/firefox/firefox-45.4.0.ebuild
+++ b/www-client/firefox/firefox-45.4.0-r1.ebuild
@@ -25,7 +25,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-45.0-patches-06"
+PATCH="${PN}-45.0-patches-07"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 MOZCONFIG_OPTIONAL_GTK3=1
@@ -132,7 +132,6 @@ src_unpack() {
 src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox" \
-		"${FILESDIR}"/${PN}-45-gcc6.patch \
 		"${FILESDIR}"/${PN}-45-qt-widget-fix.patch
 
 	# Allow user to apply any additional patches without modifing ebuild


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2017-01-16 16:11 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2017-01-16 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     9a200b9d7e55aaf6e33bd1721479cb2b00a8704b
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 16 16:11:01 2017 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Mon Jan 16 16:11:01 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=9a200b9d

www-client/firefox: Add pgo hack back for firefox-51.0b*, bug #605898

 www-client/firefox/files/firefox-48.0-pgo.patch | 12 ++++++++++++
 www-client/firefox/firefox-51.0_beta14.ebuild   |  3 ++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/www-client/firefox/files/firefox-48.0-pgo.patch b/www-client/firefox/files/firefox-48.0-pgo.patch
new file mode 100644
index 0000000..645c008
--- /dev/null
+++ b/www-client/firefox/files/firefox-48.0-pgo.patch
@@ -0,0 +1,12 @@
+--- firefox-47.0.1/Makefile.in.orig	2016-06-01 07:11:37.000000000 +0300
++++ firefox-47.0.1/Makefile.in	2016-08-06 16:45:14.442699244 +0300
+@@ -55,6 +55,9 @@
+ endif
+ endif
+ 
++pgo-profile-run:
++	$(PYTHON) $(topsrcdir)/build/pgo/profileserver.py $(EXTRA_TEST_ARGS)
++
+ ifdef JS_STANDALONE
+ .PHONY: CLOBBER
+ CLOBBER:

diff --git a/www-client/firefox/firefox-51.0_beta14.ebuild b/www-client/firefox/firefox-51.0_beta14.ebuild
index 911d52d..b91bd46 100644
--- a/www-client/firefox/firefox-51.0_beta14.ebuild
+++ b/www-client/firefox/firefox-51.0_beta14.ebuild
@@ -120,7 +120,8 @@ src_unpack() {
 
 src_prepare() {
 	# Apply our patches
-	eapply "${WORKDIR}/firefox"
+	eapply "${WORKDIR}/firefox" \
+		"${FILESDIR}"/${PN}-48.0-pgo.patch
 
 	# Enable gnomebreakpad
 	if use debug ; then


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2017-04-13 17:34 Ian Stakenvicius
  0 siblings, 0 replies; 30+ messages in thread
From: Ian Stakenvicius @ 2017-04-13 17:34 UTC (permalink / raw
  To: gentoo-commits

commit:     008f77035bc900a3f62d6b691f5217785afffa66
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 13 17:32:24 2017 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Thu Apr 13 17:34:46 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=008f7703

www-client/firefox: bump to 52.0.2, add apulse support

This package in addition to bumping, does some pkg_preinst() magic
to support using apulse in place of a full pulseaudio setup when
USE="pulseaudio" is specified.  This will likely not go into the
gentoo repo until such time as alsa support is broken upstream.

This bump also includes a patch that should help compilation on
musl.

 www-client/firefox/Manifest                        | 184 ++++++++++-----------
 .../files/musl_drop_hunspell_alloc_hooks.patch     |  13 ++
 ...firefox-52.0.1.ebuild => firefox-52.0.2.ebuild} |  17 ++
 3 files changed, 122 insertions(+), 92 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 650d6d8..3c7006c 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,93 +1,93 @@
 DIST firefox-52.0-patches-08.tar.xz 10084 SHA256 2acdd54fd4268a1a1a12905fb3586981d55bad5269b8f380a54aa65fc4268a4f SHA512 974edc753230429a52c820c82d8b78ea727b1e42a10fcd562b9e4173920f369a78550e6517e32cfea64d19a92c658ef1cebb29c59165fe8aaa587ec20107c835 WHIRLPOOL ab2c1520bf795ef48e564fb81ce812e11e7f4f4a2fe472ad85b045011344f359c62ec0c4c83e4ad196d3d891eef8ef52b462a77b6f1485a75eeabc1487462410
-DIST firefox-52.0.1esr-ach.xpi 427640 SHA256 31b6f2dd7ce944d9e064e3ac54da14522b398669e505f8e48b57c58782e60567 SHA512 3a797259d9ab9ae8a2db9c36f5812d5124a4ed138f9f9d974ad1951dab77171093b000e95ece158059c4a2f0eb804447a85664cb430f2b09b96eb268de9ca980 WHIRLPOOL 19f5b1a0b3c2bcffc15d0f675fae4f7eab0c6c4b0c7671c1759908153ec7b40b466d3989bef396b8f8d670bfd79cc9333bf478497b60681a00eadfe8f6c73d8c
-DIST firefox-52.0.1esr-af.xpi 436823 SHA256 b555f2cc2cceec706a03279fe25fefc08749bc1214ee1329b43af4c04cf7e1db SHA512 004263158b37a59285662844595415ac6496ec64e9bd557b33e85592471e10265e9aaed9e2f5aaebeefcb1abc5709531a8d9ce6b0442fb9c11a1e2fa5826e008 WHIRLPOOL 7a5455882d46dc35d757c2ec122ae3e4258b498185d35c26fda6013cb2d9640ef3f7e2d44a020cf9ca0f0705480ded1fe714adf1d7409a9cc8dd81e0c14e8a9a
-DIST firefox-52.0.1esr-an.xpi 445142 SHA256 e975472b54930b438203cca1ce1c1f4b83b871f14ff98ec2d648ca9b7d37e1ce SHA512 39c35c7b75be1addf335dabe247e6dcc9fb2d1eb3c96ba7fd4321a02236dc8f0cd4d4367eedd2d5f9a2bd557006938affcf735fc4122acf1a32369683a043516 WHIRLPOOL 69181d5efb91aabb863d025bdc504a103b42e23f30e7b6b5a0cceeb4eb50d6e85e96b720ef459770f4f1972bbf96719ae30393fee9504488856987965980dbef
-DIST firefox-52.0.1esr-ar.xpi 473381 SHA256 de99b88e757998f20b32fdaa10db18315eb44dff461f248b2dfb9b1d9bdfcf1c SHA512 0798ec4b32e4d2b5722c2e8903e5650bac9a230ff609be81e1913c0f964079aa212ae29e1abe1ae850f137a7ef9d06d9f0c9ab290503b9d6ac5c715673fe3768 WHIRLPOOL a8b782d459866100c132efe1d8dad4c20a52a22e2fc5b0c501d38d925986ae7993ca2d2343655ac57fe42181421961f61244bd51fc921496e9a508ddcca749aa
-DIST firefox-52.0.1esr-as.xpi 486888 SHA256 7ccd6bf16991c2d31f708c9f66c59e555f34ad9391fcdc51bd133c5001ee0910 SHA512 156f15b3b03d4dec210be760176b45a3d1765100964dd5ba5d3903f251db369724344fb40e61872a02f33f29d405aad449ea02366f43b5306aff1eadd065a28d WHIRLPOOL 431da91353cafcabd3664d4019b34806a7e14bacfe42e17df8876bc55ea4a45fce87fd62891d38d1a5cbf51b877bb42199c13abd5fa6c0c05c2c2e51183e1574
-DIST firefox-52.0.1esr-ast.xpi 440032 SHA256 3ba1ac6ec97a30135498c95823db0d492d7cbc8c52c2ea88436313bd395d7445 SHA512 e4830ad092923d6ea18fcc4dfcaad38a7a63c4b04037ab7bf45fd5d41016a53d51961e10ee3dd424131351865ff3f452747daf9fcb0e38c9ef84f78522c779a9 WHIRLPOOL 6267423a01f55d34863a155707ddcf31e11f20cffbf50c14af2aefed980494035359a0bec1b3e4a9a331336b2bede64d9b1995d8c165362eafe62ddbafd6b07b
-DIST firefox-52.0.1esr-az.xpi 454922 SHA256 1ec928a370b401a2b0d18c5da69ec132508d5d2245e83ea67f7554b55b581632 SHA512 cf2f7264120c000b2b0e227bce6dd674652969dcb05f90f4be3a65e74ad6b16d427e32e33049bf08f51758225fc9b937fe0667abf55bab7d18f021ccce9cb37b WHIRLPOOL 3e739caefe679c1d0520e0ee701b7129be49a1c47769f9b0180b5ab1a73d9070ac19a5674303a22bb7e7681bc2409388256c2737df3c4906b6c2ef80d7674aea
-DIST firefox-52.0.1esr-bg.xpi 487892 SHA256 081ee6838015760d79d1350874cf9ccbe1c5bc62aee7d462d9a99cccd5d6656b SHA512 0ffef7fc419047117efd61c7be5851f61760d6fc74782d9a827a10c4684528d2b3aa57e8be2f0cac8e7b4c2b51ac561c1fe838a880bb975881425b0d28719ef0 WHIRLPOOL f10d7abe1e0e5f9122578cdcbc37ba73044c60b48f0783ed3355d162569e2282475217af025574fea547681c808e5f39e5817bf72f0347f69b9657d8acc6d17a
-DIST firefox-52.0.1esr-bn-BD.xpi 511994 SHA256 bc2b5e57be845427d42f169a32e9777f034a7354396fd237b0c2e382636e7c41 SHA512 631658c35790e0d8c5df6261dbdb4950884783c692b40e8b36ee6c7bb2f3c5d25b88ed6910365a7a466af3640ea3f4b6b9c981936756f5178aa3efff2d68972e WHIRLPOOL aeda1ee6129c47c6b18b3072c7236f26a55e917d0aa5674dd11c285623c230e4eb8784112c18b21ba2704523b9cf34ef8e972a3fd3d52469591897fc28e383ec
-DIST firefox-52.0.1esr-bn-IN.xpi 509375 SHA256 996bccaed5ce486857fd9fdc73064f30102c994d9622b899649d2fdad6890a70 SHA512 77a866eb8b45ac84b5b4259fda2c34ee93c7d69e131e7b8063472e51958c0d6cc60717e31aa3522c42aecde36a1d245544fb5cb061e9134794bb17a45395ce14 WHIRLPOOL 3a9a8830fc194ebadb161560c4717e58ea08f5271e773cb195261acbb55a28e6839c6e452e85075da34bc18a62c9690ac1db7206a6b58bc9da6f29ff47436ff5
-DIST firefox-52.0.1esr-br.xpi 435483 SHA256 d86b6aed4aafb481c9a19c09b3d0cdfb66ceef452ed3549ccb7d7e28dbb4fc4f SHA512 7213868220709fda9d49fb244f5c49b25cac15e4690d5cc271a47eef39500f940bece042d8a4203edf134aa8e10b9c62cc96de099414ac3e6f520a73f7593e3c WHIRLPOOL b714a16f1bfdbf7329373e0e68f0fabd2c023cdc2f4b52b3d25478757560db2e128d718dd3a441f3b8c9469899af56cce402aea63aa02a87e0c363072ecc844e
-DIST firefox-52.0.1esr-bs.xpi 441782 SHA256 8af301dddbb523ec78d5d483475a588f807ddaa613fe2e94a2923272fe0ea614 SHA512 cb2daf5be4d4cfe25ad9af5cedd22c3e675f9d240ec908e45c95c7dd7af1ef7772ee8edea9cc1d62af2fc635a659269012d8c1098a66119b3fde7795e3ff562a WHIRLPOOL ddfa26495abc12717a64956aed573b2ae65b329770d950d9ce842684cfc9f6faf59f2947e89b91fd5b387fa7e6ce51dd17ba95ff379b1209b13a5768eea0e3dc
-DIST firefox-52.0.1esr-ca.xpi 443304 SHA256 08eaf743061564d801a6ab51d62955747546d80ffce41819864cc8b18394589b SHA512 d319869f005bf965c3604c21778227bf840c2631eb543ee1a64707fb4411fe0240e8c9954e0ae3e6c2d1e8bad23b886878b99b6ac3521199bca1bc9a468286e4 WHIRLPOOL c8c5315318c61accd32bf46fa3da9b17106c1726c2caabff9efb05e67445902cfd8c7263b4fa4a744d17f52f0545e07c70df93ab446f39e39f264255563d51c1
-DIST firefox-52.0.1esr-cak.xpi 459184 SHA256 d86ca2e45bfbfbb8e0df91ab186390bf1aafc88e44ca65676dd2bc0c457ba4fd SHA512 3a82abca8c4c262840fe9ff755eb07b87fe7b7735a6cec6ff49ff6c1eadd406638eb88c2e475ee0d30004d10f44bb3a552b80c9b52a3a1dc05420996a0d2e71d WHIRLPOOL f9c080a19fb0abe155706f92d5789bd8c4c74433ad1b18469e3f78ad5ddd9beace64fced78b2ee53da93ecfe7f80ec73f4c0852f25350136843d45bbc362d957
-DIST firefox-52.0.1esr-cs.xpi 444075 SHA256 0df0955f2465141019e62400b3000d1bee14f6cb3b571d98253f0aa1e2d9b0de SHA512 b84a57722576a1b49f713ef52fb5d681ce747f552b4882e03196e78c8f0dfc03c9ce29aac83d283fcb018d395bf1b89756fbb96519bb461683c028a6842f7d1c WHIRLPOOL 4e0c5f33599f9687f20323c0af16813d4aa3f927b6761eb6b974f7797361f3a2d5f0eaf37440ee6c5a0ed4ea5909489e26a612cc58de4135dd8e7b3713c4c18b
-DIST firefox-52.0.1esr-cy.xpi 436583 SHA256 85e2c1fad5054c59cf487a73f214c0896ec43823161869ff2a72f626f70e39f5 SHA512 10f13dddd4ba002179433bcd8cc6de6046284c8010bdf32cb3ed6934ac6cc2b752633187a516c21f1dd6a3bf6971d7610dc87c35942bea0ab28fcdf5da6ab06d WHIRLPOOL 1243200feaae1a88979e57e95d000beed76b2a3c9b9e5c3ae390f66b481a74ce40201e1504b1c560da412932b0d1d7889019c626014182ab0c83ed2a267e9c0d
-DIST firefox-52.0.1esr-da.xpi 424394 SHA256 b57de46198922cd393d0dfc2ea36c60371edd415ff9af534403a45238f8dfe87 SHA512 ff01868abef2d0d877d820a48b36bc49c1d2a88dd2f14bf2f806700acb1c1cb90d9a51dbded11e038c62acef1ec03acf70c233c551a8a13cd4199120c7887a99 WHIRLPOOL 4ec0bbc6d6ae74dc7e93f823eeaf8eb59c98d68f99cb3df17aee034734c35695affe8ed881d79967e47d6dbacaf2abb43cc1f0eaa4a0ecee804f9da800bd449c
-DIST firefox-52.0.1esr-de.xpi 442478 SHA256 f729a496684aaba6f109c12107fb0996c27ceb58f02e8b0aa58a13f9f0d72e54 SHA512 9e733d795edb4c30318c219dbc11076fc803692af6b553fa0eb3fb75ef5e1bb62b23c4fa1cc9e9ca51d49694d3aa75fd92648c35bb64f73fcd91b858b66c5a69 WHIRLPOOL ee3219147ead3a1ed78dc42f1b23e12918d1fa213c7b1cad07dfcc0869071333aa917453be28be9a98ae57d44a2f4536ddcf671c6cc88de9694fb995a8ca5ad1
-DIST firefox-52.0.1esr-dsb.xpi 459424 SHA256 7cbddb063df5f04c3055dc075064636228e7eacc07fed2c5ab0be2b77055cf05 SHA512 b6795689c91ff64cea3f75025ce83cf9735cf8925a060fb252cf894def72a1ac374f77c5a3cfd5b1694585d484a8573b7199b59e047f3a80898a246d17bb7edd WHIRLPOOL 6ebbab76fc64042dcca902088a0dec91b2890d11d59e40b3f7764ba4ee6b81c44ea2a3dae331bf0131db3cc0425f9194ddc4ab5c61c2a1333769680144d5cdbe
-DIST firefox-52.0.1esr-el.xpi 516592 SHA256 6b2cad0f7f9d3fc11aa8c78a745ae0b901c43208b8ace495e2c03dc842d27205 SHA512 a20018cf26863f9deef17d5e2e2854ca72a02e9cb8211401a6eba6fc8076b54e1cb43f1d4c16e452635af91f529f08d0091ed4d8bf0a15a1190eee4ca6405b7e WHIRLPOOL 8fd694382da73842c258ee3d0472309de074b43856e6762c204998b1757b4b8fcc41a0b802c4da97d340ec004240746ff68d8d8e7e6b0d48d43f04da7a72fa97
-DIST firefox-52.0.1esr-en-GB.xpi 419323 SHA256 5be21814cae744f0c676997025c4c426a4031dedeb80082bc27bafbdbe5f7aca SHA512 9bce6388ce14096753a5a26c47a0184a941705fb06f1aa14019e397b4a316b6230e3e52b5091e95b1946283028b972d06a3a7dc8e4b0ad9664f8f77d29e31fb4 WHIRLPOOL 9ac0a98b693d4e80edcbce9abd7722676917a62b6505b6c82f15c35964a3ed7d36b0238de9664c4840fa048ecbdc3dc3ce02ee960ef0a7922e1a56a3c694d6f7
-DIST firefox-52.0.1esr-en-ZA.xpi 412212 SHA256 1fe30968eb2239839a796f4dc9229555aecb36d4c98060751be355aa8000f260 SHA512 1a600c0420258f922f43f0b6c230bd4a2bc56caca0a14146219a711251b0f9aa2d668065f9414501dd2bdecc5f4eb6f9678e1e2a2f62c2541bc2e22cf6ba899b WHIRLPOOL 9cc6f9d4e23368ae97ad15cfd659042d2b51a8c2f38bf5ab16fca01402f1c891cc598d05e950f92d2e7b2e4c1c228b3d37197e4bc18ff0f2dba91f2e035e5557
-DIST firefox-52.0.1esr-eo.xpi 437474 SHA256 ebdf1ace22d62d89b31c8df4a4ba5ce44f4f02df25bfc6501bd6dd67fb24e7ba SHA512 966b06c60bdc2690eb160cfe8f1f6e550c2715c4acb4120e2596d7830829b59619b5117bda378409327de003cf01dec34cf2fa4cd524820c844f45af9dc343c9 WHIRLPOOL 791966a5eba5e5f1d9233e0a2efb1ad698ea12e219b297138190e0723a0a360160299f23552cf290c7143eca2a97b9102a63f56a3323585464175516e214e7b7
-DIST firefox-52.0.1esr-es-AR.xpi 445925 SHA256 203c2e04ff27078faecc0032e929f0e9a44c71496c35118fc46d92686f3a82bf SHA512 a0d2f7f1e042a06c3e146f45caba2dec69088fbedef1c20e3fde9c94a786f044f8fda02d9513b2a626333cb84e128d81fbefa55eb6a3ff62d00e070ddd4dcd88 WHIRLPOOL bfc57a93ce09a11d23e0d4d725ccbfc5110e9ecc0ffbf9e8df97bb73a67ad46e7a83d5c2aab9719f7e9c4a20abf49144163360b5b0ac9a12aac3d7e7a585c2c2
-DIST firefox-52.0.1esr-es-CL.xpi 445676 SHA256 1118b179bbd33eef1f31d03df039c68956274a5c72233431216ef3fd2ede3e2a SHA512 42fe55d2b641fbabf81ff964b0e549adee734c08623fdb4be9c2285e1de4f9a1d9f375e6027eceeaeaa2221fbcd89dc1cbcd9df0355e30bd5157345df1d812c9 WHIRLPOOL e6f79889fe3e2f9bc21aee6f47f2b1cdeeb04bc90cae63fe1a2593b0d48a298f828430c75ded51575649f2f4ad8ffbe8ee025f5ecb164d3313ab90b962ad2d05
-DIST firefox-52.0.1esr-es-ES.xpi 344876 SHA256 8d81c6bb661b6f339fb673e0bbe0abe49b72de25ee918ba90efa1255ea0c5f0f SHA512 f78652a600ac3304aa8cb16de5df7253a821770315392763d922ad6ecdb138a3551a2e0caa0ad716377c63e412bc832bc48e0b946a3a7796b5cd5a310bac4686 WHIRLPOOL 91bdcb74361e19940165ff93caf3a15443f30b926875e6aa85816592990a6d7ea43b84e9943bc4c9c1b3e5f4d345f858c78ccb7c975cc7ab512a83e198ace7fa
-DIST firefox-52.0.1esr-es-MX.xpi 448384 SHA256 d2b44a63368f0fc6b38b476d2c9acfe713a72c9a2ce0a5134a7f9ccc63c25290 SHA512 804005d5e27f716f024ecb80a28b73ab1adaa8c03e96538edcbc5549fa1bec0dbbe7147db1157b01ce1a6df7dcd29fdf574e44712acf745788a9704e32671f43 WHIRLPOOL 97a148463be38a859920fbe9a3d2d1cc871eafd78b18bd25467e913c884431054a2782be072360f7e32c278b7a4936951671c791426fcfe50873341f59d8a250
-DIST firefox-52.0.1esr-et.xpi 425113 SHA256 4b456cfe31bd6e7d526f584af4ecf81b2a8532489b7f2c97735274fdf25349b2 SHA512 a0a393c8ca6c92cab7d740ac5b32215955db911516257915b35e785e1c502b35cdfcfd45a05329436201ea8384fd405ec2b8ba0da8fe29f578e754448826a27a WHIRLPOOL 740c922a9ca513265954cebfef0a869a0d117c8e8a88c0e1c9e48566cb65fcad3cf436d5aef4a0424cf9434f599f85d5e87bf11cebb199ee4e89167f69c82ba6
-DIST firefox-52.0.1esr-eu.xpi 438479 SHA256 cf0c1719b93dd0ee4215eb2a9c74428a102d2a068ef1895ab089309e9deaa8c5 SHA512 7099df39c25765f885c9f0f325dd5d34aa6e6aa9781376b4c483f817c1c5222f2bab781d217237a6c7548c519a1ad034d33f6dbe2acc8c9c23f93ca0feb87bdc WHIRLPOOL 8b8d06cc8cf4c95a996463452f9a19f66bb6ecc94842dcb46646503b45b593808a18e1a32ebd5abb73fc43cdbb879f5be90835f5fd80093d4aac62c69b155758
-DIST firefox-52.0.1esr-fa.xpi 491344 SHA256 feb8d700079b86e22b07424893d904a73b1c26ba590ea7a1feeaf5379c7c386c SHA512 9f57dc5f77828d52cc030078f7f0f3fae804d0aec7396e4917e4e6572b2bd7aea89354df982ccd1736dc6de406ea3a02e2032580b0d471ea7717bd917466c67b WHIRLPOOL 314b26d6de1eb32faa071a8e902869bb71b870e9816a4520c73c57e696a08749cb8e9b41e802da53da1edcdbad085b8f335b77ebd8a34b0f96362ba57c77760b
-DIST firefox-52.0.1esr-ff.xpi 440928 SHA256 dbfe3932fcc385e4983a428d84d18044a3a68659ab7992cc94bcb880b96ed167 SHA512 247428c37eae3dee5338abf3a1ea81d0b377233a024d8c5291d044f433faefb9f986fa1143ef6aa3848e58d49e819f4e7ad948ddb1d81e453d73092920a54037 WHIRLPOOL 8767c3d37eb18d7f9c41fb7482d9955f7bf5ff9e1fb4013c43061c37a18a16b1667b03564da0cde9d09a37cb04bb9a483834baf83e5b2b8397b8844b823de0a2
-DIST firefox-52.0.1esr-fi.xpi 430061 SHA256 3f7e4f80cb31fc92687ae05b5e82fdca5631a8ef30d09230678b7e0d7375fe67 SHA512 56b27f2d108b836167f847a6cb6724ce1f10577e574860ebe2e077f3f1b50f21ed88e6f082e448538d0f0359610ca15883943b93fd5163abe53ac6a75bc9745c WHIRLPOOL 4982f4a38aa36b38d825f23f81b263c30d6e66d184a57e188367337fd14b634dc95416169a40b09b8154ba63862ea29b8c914a92df3b4ed17cf5b3384bf826a8
-DIST firefox-52.0.1esr-fr.xpi 450210 SHA256 dd9aa6687974f7a605f186bc5144bbd3d34698a8f780f125819ea284f7811894 SHA512 f41f48bc41e728f1f5354acdb28d28f156ccf482eac1ce3a465d1e13e4469fc609c087fbb878b092ec86b1222d6b23c7288a6f4e66e6bb2f577123d1398260b8 WHIRLPOOL 3c117f9c1e7f5c601a066bac8094fac026bbee309f0e6bba2df89121a7b852d30fc5842cc562e31dd3385b05e7f7f15d1fe24346486f63bda19bc000550e3ffd
-DIST firefox-52.0.1esr-fy-NL.xpi 444973 SHA256 2082448ac5c02265e5a2c799398a89e54c288ac9af1e93e1890a9feeb3f09ed0 SHA512 32e3efd96f0d64833f450e4c745696eeabd2dbb60e769e1deacbc5afe53a4acb021ce0ebe2766ec3de009b2feb2560d199bffd5d1c432682ae1819268886ea18 WHIRLPOOL 2c0e1f2f584e533c500f4a8fe50adbe6a315ff3078d45b92cf6d0ab92bab7155cc10d63a0cd303434f23dab0753335b8cdea8be745964bc9e529c4c82bc696f5
-DIST firefox-52.0.1esr-ga-IE.xpi 458164 SHA256 f92b79fecc3e51062600b4830325c645982055acd812b800d03e6af97c53697d SHA512 1e69a0528ee669c24c835ffe3046f68948ba5c6cbed45f8ac199b6cfef591c55eb1e76f6c337c411e0fcfce1c0badb003fb11f23225c898f767274e29ea4eab3 WHIRLPOOL d0d177e7225dea9e60b01111b98f086ad6f514a77a62c8d444f68b66281ecc526735273867af6025dd4356598d18ca3626a88c77a556c792b534e9ac7ebea86a
-DIST firefox-52.0.1esr-gd.xpi 447267 SHA256 08a0529b7710da7134997eabf5c6863e4711715b5854cae48a89ff25429deab3 SHA512 1b43c3d9b38dc822ecf9f04c32c38ee70ab243fad82118dc6615bbf1f4c112b7b1f3ccf164d4c17cd0fc00e5402608e171fed6a77061c1f80e985c973503b951 WHIRLPOOL aeec3327de98352fc8d31b4be849e502f7a741cc1c2fdbb5d3224942b7383fc8895ffb76ceb9eacdfd6ded7bfd1907b7561e448b07b92ef44f18e2f355beca02
-DIST firefox-52.0.1esr-gl.xpi 447295 SHA256 4a75021bea8276796b68ae00ebbb56886bed02423714e3d4adac059b48bfd039 SHA512 350205a7a052b063868440813b3393198024e5e016a51eb2d44ff4c25a4d6569f7c321a424592921dd345a7dd04a26d04b2af73c267d38f0accb5e66c2daeace WHIRLPOOL 2bde992b9a3ca53c0089978b3f828d25898efa1a82783c9f731f72907548fc0318e46fb365fdd031747f47441d6269676f6a12b3eca9a220f945b399620ee6bc
-DIST firefox-52.0.1esr-gn.xpi 456214 SHA256 93cdbe82d06007675914e6ccd4c142a5fa63cc09f14209416f8941144138ac5c SHA512 ae9b1b884d0e7d4c6d2c5095bc9b61918823f378cb06f21f9c67de8a201bf6d357b006f163a96aeaf16f6cd820945d7301a9e0a3d0a3f405cac529f640f7e8ba WHIRLPOOL 08ae78cbafcb7e23b1e4eeadb86b9f074c6d208abe97aabe59d090baba225cd27d820530e5172db216844f07f4ee6a71a49c18caa0a17cde947e0b86d8482b74
-DIST firefox-52.0.1esr-gu-IN.xpi 489366 SHA256 fe88ac9eeb41765da3cc4da57a05e27e0a9e2ef3176d196b6ad426c5f6a27989 SHA512 2e1f86c5d57bc189ebbfee1139c0b82c3ffb42b8a1551ee1ef051c24ba222a4337c66d1edf63a36c7804b4994ec55179d1aa5d5b178cdbac4c23b090c231397d WHIRLPOOL 70282b4af607eb926df4489b303e314cf1505e5b967f12e758166b5e6a9c13125549ecf7ed61a3bdec5b305db78d11271e721f39974af42060db40af287ba662
-DIST firefox-52.0.1esr-he.xpi 455282 SHA256 11dd726f93c91a798553893df924817bd40d254256bfd5359eeca2e18fb8799c SHA512 ae749ece07269094b70f8db3db98c396a35a46424abcded5a8de0a6002b883b11479ecd16c6de2ff25251a83f61c7203f6c3be288e56ef21226b9278d8355211 WHIRLPOOL ba57659b9107e7f42381cb47b605780862808712605d1d9feda572a8c157f12b6870a356baf3669148fae8e17fdd619230543febcb31f1b60cb03840d28334bc
-DIST firefox-52.0.1esr-hi-IN.xpi 506518 SHA256 73b88f8f27e208f4a026dcf03a7e847220431d72f43a5069fa6d09e1da0fc96e SHA512 27bd078f9184123b8b9c4e282177b86c07ddce41601b9325de9da3df7b5e619ec6b020985b7b79b78dac3e434b6788d48b69b79b9cbf9a28374ee5d21ef42773 WHIRLPOOL d12a968a7f2869c45aab2716d899bc53677e99346d044634924658d1ab328cab5a064bb83bdf3f92763cf0584ccb40de5b4a23da705d5c5d113c82a59dc5884c
-DIST firefox-52.0.1esr-hr.xpi 447502 SHA256 87cc5ffc0a51aebfa5213b98aad0ee7732779d6ead48ec007542199d0ccaf1bb SHA512 dc5e9d046d95cec6eba5b5a65447087a21e59977a4201ff3b7cf176348c74590d8cd6f2bb86dddd14c4ccb43f4eccd066a8f655c60a61224c6806f2bc6493747 WHIRLPOOL d1daacdc5b1d8fe38f54d61d31ea4114b8c83e7adfc6d2f81a9d41bd2a1f2f63fd75a525a794b5c72df54f815acdd09ccef9ac0f1fa83a3474d9e8cd72c97357
-DIST firefox-52.0.1esr-hsb.xpi 457260 SHA256 f7fc2e4ccc3341681d67836bf92211172b9a45de9e484771a261ac10472cc1e1 SHA512 ebbfc0148f1294735d6545313d3a69db4b033587efc35d94c8a3962d675086e5bd84d639c0d3dd5c594a4970a83f4e08c1609b43047a3c577d9faeb33454e63e WHIRLPOOL f2a66d8c56fced9d040b5988df6d4fb9b6df15f58555f90a9492823c0d674ac00f8db2133ccaf0f3d4d97b683a5eb816621c21a8cc1931ecb1fa7c42f660950e
-DIST firefox-52.0.1esr-hu.xpi 451496 SHA256 bbbcb174400603a83369a4f74cb1b17e1050ce6a8a0ed874d822f52875509fbc SHA512 64108d203d0366b1f85ffc4c54f767cd211dc183fe2b6b1bf2cbd3a899348036377c10d23e32781e649ba016340228ac9509319cc1a934c978304a00c4897cc6 WHIRLPOOL 7d4a735c7947665f50e3956cdffc7855f6652767b693a55b72b19d10062939ffd0a8aa87bb94861bf15acfc94569596843fd8a694fd2d6fb1bd0cdb94f50b2ee
-DIST firefox-52.0.1esr-hy-AM.xpi 495773 SHA256 83f73aab1eecde5da922a27082603c8d414bfd1b0950bb414277530db0cd2338 SHA512 37d6630f7f2bc93dcc0ae2a1db30936e451b3b278b743c91a3d1f589a44cf2fc905457a8bbcf05450c07b0df352fff6ed874e4560ab2038c73051c701a7608be WHIRLPOOL 979c37cc2b8da0da80a60e2d073baa1301faa684db500c3ebffddcdf7302a1cc593714238d43c153a370bbfe0beb9da1a65bea5e8ae064d453a8a76eeef19854
-DIST firefox-52.0.1esr-id.xpi 426023 SHA256 cf6aceb297933aae66a107baefb865b379ea5b2614714fcf09bf006265a6a6fa SHA512 d5c71b73a7c92c64e643fd880b275ecc66d5c9e63c80982fc45da0df7e809ca62aa0eab7077cb2028a70f9ba09d96306734419e52f07e525a66b7fe2b46599e7 WHIRLPOOL 9c52c638e201204cfa7e3219581d76e09075c5dcccad0a729ae80b27e7afbd4dccf7eb4f8270fbaa6edf73146a20364daad9cc1189fc46a52a082d09f43e2ea6
-DIST firefox-52.0.1esr-is.xpi 442696 SHA256 5eeae27c743e70cd8985c6681938d7dc323821179471ac0b182411ee7f72726d SHA512 94a10ba9cb233e0aac78fbe51948c0307042dec93a5d0025e0b6d995061d1cd56a5a1d084f28fb0baa5f3d772f9f8f70927b1c3b4f1700303ae471d9710f4425 WHIRLPOOL 539d3bb2159eb421c5690ce8b82bb7d35640fc3b071a2108d852ffd8c2800503e435114210e0b719c595b5db1f19bd440ebf54c9e632da238dd7cff73526783a
-DIST firefox-52.0.1esr-it.xpi 339220 SHA256 fe30925094334e1ea16f92aea6b908039a5267de3547d05fffb1d865d0ddd3b7 SHA512 d781ad978e7cf51da38c109ac215102df69ea944c363cc2c16576572e6122bd5da6deafb84a04e00bbfdae0a564cb471b4e01a4520475e6f365e669906113192 WHIRLPOOL 3e7f22278502d66ca76511efa03531ea59c44dbe23310c8ac17e5f5331bcdcc45baaace3d2a9b03c7518850fcf8673d871e7bc1c1ffae7fc680f6561affeb91e
-DIST firefox-52.0.1esr-ja.xpi 488343 SHA256 caa41af23b720e1973f6c9beac84e08c1ed220898f69bcafec6b7aa186588a8f SHA512 95648d644f19f4b9d368f2078ad1359772613227a2707140bcfcf2ac9f673f0289dd54ca9b11b1eb57638139ed08f09970da4030edba56012a42a6c708e41e18 WHIRLPOOL 7f71f5eb6ea37728540b9e08a266f846fb1130a06a0f6be3b2c9ddd757dd0abcee878d72890b54a1dee94ed0f7bbdd1248fcf03edc039425fc6e368374c36a37
-DIST firefox-52.0.1esr-ka.xpi 475375 SHA256 2984b8d75e74015326201d11f9035e286caf37af5ed683b44cc29c8c16702a3e SHA512 1a1f68755847c4097471cd44936466f133da7792b7805d507474b53e4274144f743adc1a2d69c055758fb32afae8cc5cc2a15f520968b7dd3a96b84be3c0b2bc WHIRLPOOL 491b1211de6f01b0f9f1693fdcb08adaaf89044058f87afe984180ca460e6ab5f74291c8036b00d5722aa0c0c62b1ce8519218d6fed28f6f45aadde83859cfb6
-DIST firefox-52.0.1esr-kab.xpi 444518 SHA256 22d40718993a6d7b104ec44d144da837838b4bee4f629cda057ebd3e0d8429cc SHA512 86b7f6614dd933acc13c6b08f0fe272bb4ebf5150751ef56cf7d6c7e32e7a58e1c0a198e1116391ebf5e7827e9fcf06a7b9a658490ea8006e6b8aa24895693bb WHIRLPOOL 4fefac063427226018e27e3b9961c6300886e4ae497fe3354fa8c3a0a1fd4260b2da53e4d678511391c35f045aeffc8bdfc60bcf89e07ab48d52906238f71674
-DIST firefox-52.0.1esr-kk.xpi 496939 SHA256 f56519d5bf6eb313bb00c05a1f31dfe6ed5dcf4d4ebbda5daa0085ba174fbbcb SHA512 0a9afab70c1c86bfc35863d168e28243133b4ce64d51f4c0efe456ed0afac52d142718b46fadc5531988c92d6446f8528c58cdc5bac52aa208319e5aa310aeb7 WHIRLPOOL 680f64de0a54f3bbc6048c09667409141f410d26f529324022ba26c89d7761bc493fc60c775657aecefd31bf2409b43ed19a3ceb11d618ca6f66229e7bc4d326
-DIST firefox-52.0.1esr-km.xpi 520343 SHA256 ba09317528e8a92cfb127c75b1f4ff331b2c649f0ce15f8b43bb378a01710d88 SHA512 e54da79a54a5d845f65791126c421b24c9240e6c1128fecda140954833c68337c97abd588dd85913c2bc3f9c4d26a3847cea0b40df81eabdd39db82c23d2f2b9 WHIRLPOOL 0bc0b61b5e023afb682095605935bf8bbc8a86548c3f4e6aeb3cfda49db1e0be0a150fd24ac4dfaaa4431146fa25b1e138bc47b4b697acdbaa2a4a8042fc5a52
-DIST firefox-52.0.1esr-kn.xpi 519455 SHA256 8b4c3d31bb892c2c7906b9bbac5fe06a35b4a79ed4a6d059d43d8832ec73d058 SHA512 6aed57e5bbf8dcd3a1789e1ed5e66444f973b4f50d5100c12064bea2b7c1dd25353181df8873cdfd84a12b09ba6d1b13b3ff68faf442d429a4cc3c7d4584dad7 WHIRLPOOL 5b7221a2f11919300c585ce4de664d8d04648049f75abd8ceda0e7808dbe223fcb9327692c51648b49e6ae5c4102d1d84f0d347a15cc3229c967f1e629ae578b
-DIST firefox-52.0.1esr-ko.xpi 463630 SHA256 f1a446c7b57f68a2ec57fc67ad73ed943ba319a38c2decd41bc5c651161f9f6f SHA512 bdb174e551c88a571dae3985cb51e6eb85a05fc5036015011fdd6724f989fe96dfda99e3a22424a2f983ee56caa3023eed77905d345bea503391afebada35c7a WHIRLPOOL 1c53ab3ea08d19f858cf9ee771be772a556ac69f99c487014a962f527431d26f4e2e40d5aa1d8940f7058718243242270fcca80503696be181faf2b61d159529
-DIST firefox-52.0.1esr-lij.xpi 421073 SHA256 cb4c931e0d02aab09b2c976a09e13af545f9bca19aed790d8ef1dc52e007ba2c SHA512 110942d5f1bed083fd368de5c1a98188952adaa9a3387395f9ea39c69676ef286259c2ef087c1258f79f54a26819e0ef0739b74f039fae32aa121ff13e5c5a93 WHIRLPOOL b7ff22229f561233167abcbca1c0a916dd3c6915eae9c0a5dce77b54815465cb0f334b68f1fa02c23bc38d596a99e6a552006135f81751b06c4cfca200c03e5d
-DIST firefox-52.0.1esr-lt.xpi 452235 SHA256 1cbf0d343101ba9fb32e8ded0460e1569ee53c7920e852236166aec219d0a129 SHA512 3b221696bfb6df72e881c31661e0a4ca03674932eebf57181136defc051ff3da96507acabe49786894ebc03fbded2d803e6547c76243a378f502c6c7be41f541 WHIRLPOOL 7c0ed98c51d03437091dfb063e3589c6e53abc1afea76ce3e25dbb064be029c7a709cf53de2eb7d98043a29868e259e85db5bea73cf948a6a8f48ff87a903d4c
-DIST firefox-52.0.1esr-lv.xpi 448450 SHA256 ed40a27e88a6da35ef2e4fd05f80f5a1873147a1529239686f034d2c4ec7516b SHA512 81f22611bc97ee6ce067b4dedd9d77fc68766f6e6e0533161f9f436effd4b72f175a1355adeed75f8315a294ec8bb2bcde2d2441c02992328f81b4591ae7c142 WHIRLPOOL 8ad0b67a4bcbd9271a2a0d6b6d7725dc205c3ed0548049119dd6ca825961e1b124460da3e9a3a2a19451a917f299f41efacb366d4e6f9b3726abe8c477569f16
-DIST firefox-52.0.1esr-mai.xpi 499841 SHA256 4c4c4be7cf77d624d711bb44183c1af673b06eb382ed59f7770b05bbefa47ef1 SHA512 51dbdfcd952e801dffe5c7bc58ba0441c3f21af58758dee1a477fdb5032fae31da774644e81a67f6ec957c7611f441312ac1d74510f7e0e3a7dff496b4896d49 WHIRLPOOL 3f1493bd52ba7c10cea0b79ee4a43d4a3b1cc9a60738362c78d1b7d1962ef4321cb7724723180a2eae9b3b66a2dc60b42f73785901dc3986afa84bf9c553143f
-DIST firefox-52.0.1esr-mk.xpi 496199 SHA256 5bbed4d3a48699be5b790d1b1cca0291a69d5f51a03fdb9a0c4be9d0898b4a80 SHA512 4bc76a8f0557e871aecf34d6f1a44398fe4567a9e9270dd38008d6f1bfc3dfc562357e2aa7e5206d71bd2d855de99cd9885059ec22c21e0166881d4f1ebd83b2 WHIRLPOOL 09ec0245d9141ba001ca77a7208f29ea148b8b73d5874f964ce34775bf7f2e642baad7ec168d5bf6bc420e9df96010cbf4c073e9cf11cf7460d025dc47568184
-DIST firefox-52.0.1esr-ml.xpi 516486 SHA256 2f01930dac6781f7660e578edd00f2aad426413fb5a92bd735d71e37daa78d08 SHA512 e0fbf35eb3bc9aff623e377a34cf2e6e5c309439e45567d27d0f91edf87e0506d72a7fb7e1ed18496da50ba3e97fbe1c3c5abb8e20246ac7b354a6487396bfe6 WHIRLPOOL 9df0f523081f3dfcc601b826b7ef485140cade62f28eb6658fb0998fa7d1abfab67d2b0555bfb2acd9cb87357b5d795415ef5a83565f45d63e01f86c2a03de0a
-DIST firefox-52.0.1esr-mr.xpi 502431 SHA256 b0d77cb42013797a89887365091d23ef98a7e68c30326be898f0276999a74554 SHA512 3c9b2ff020b69e3fe1b8fbd01657f1a0c9ed46e3dc00673fcf8fbb8d68c35fbfe55f650fe262c482625ac35b404811fc63841706c35abacf289619ad783348bb WHIRLPOOL 3fb4a33f040fa0f4b18d735c4d0c7703cfb77ea429fb8bdfbd027ae82d946daa09a2c0a9a7eddbdc167b5208ffc6ac11c0ae3dea223f45c03b880e47b9ec3d38
-DIST firefox-52.0.1esr-ms.xpi 435990 SHA256 d756553d79342fa9bf3175d4b2f5cd553cde06ba0343abd9d1dd407e5e6f9315 SHA512 3d328185c5b8c39179ea73b946165db697214099bc27d140c9c7759d5dbbd9ac4588b1f51250ed7f7af3ce0b4254fcdbca1304b98f5999addd44f58f5776a9aa WHIRLPOOL 5b7b9b8730bb081b2d95f2f269bb17ffe528cf2c49c1963c41005ebe7f166c782e27a75945874915302e74bc1471b511f9bf2871e0376ee0a236b2cea40a55da
-DIST firefox-52.0.1esr-nb-NO.xpi 434412 SHA256 77dc54c7ada04e66a3bff80cb8d493b7cdd46767e57d7d2afdd5c350cc85c170 SHA512 57b1ed7c560befa65592e998fd8ff5f5d2be4daa12790a165fba50f61dc09a09637c1c82c0f44a6fe4836588c9777862896fece5842f2746ffaae150f6d202ee WHIRLPOOL db0f7ea0a1c0a61a8dc5cfc9071156b63da5b874531a47bdea3c28b647deb1bdfbf734b2bd77b99bd2a46ec78f267178cf7a013dec7e4a7e4dd68e3847fe3ec7
-DIST firefox-52.0.1esr-nl.xpi 432007 SHA256 19690b3a32a6378289d28fb207c2325d7dea2c0c3c49a37fe4b71dcda7875149 SHA512 4000f1b1391052eaadd326da6c4c7e2d21bf76199cbe93573a9694b8fa9b8fc9326a343d70c6656392adaabe9bedfaa3d28a1690d05ec7f5837e3191806646d6 WHIRLPOOL cbcaf4eb05368d868c06da49d73b1cc9c29861bf1bc134abf7da208db74ed46d753d12302b448e3a34eb473c2617baee692d568e28bdafff06e083d35d5dd095
-DIST firefox-52.0.1esr-nn-NO.xpi 428644 SHA256 809284b08456d7d8712908ef8152cd05b6b3ec6d46b2df6ed0f416d2cf962c2d SHA512 9829be1f5c96917616e5666469a4b7d014dbe68d38c1f8f0adc20c6ba6f05448e83664944a0622b4c73496d583bf964f01a693501be3394c59bb2c45552473fa WHIRLPOOL 73558c5d14690b46e6cbf15422156d651e5b39be912dabedaf08aecd6dcd0baf257c38244f07fb00030deb6c2a4b097e4cc5a7106886dccad9fc7436e82477fd
-DIST firefox-52.0.1esr-or.xpi 496916 SHA256 e18f646a638565d1042f6d4353966336f9d8dfa5dbb5c9f8e73b05e677ceb6be SHA512 48cd9635b021ae78c8fec591206aa7b02994b571b947f05755ef51b821658be18ff44690bfac9c74959d332250cf35f8af97447654f1495d22e223e1947d4bd2 WHIRLPOOL 8157b54d1b50d406e6173abf6b02c2e53ea2ef57cf8e39ee37f389016d3bc2c5477609f0e9c8e19bbee9709a1683c3ebf12752e617f5f03850f01d12ac1922f7
-DIST firefox-52.0.1esr-pa-IN.xpi 476587 SHA256 c2cae5e20994b13b1f0e5be568b47f255ad52db9b35de623e7977b71bae260f5 SHA512 fedd5c68a6b764e469abf871c9b4d161d357bf0aac4f9e27cb0401f96936486ca48b14cecca1425f7c4c31c26e8f3c78c95d09a57046338387d94c6b7ba148e6 WHIRLPOOL 72ea2ebfe116e011eb88026719076ae904bf5111029097028586e6b3b4a72383faf699a115e42730bd2608fe1084a566c770735770394387bef01c9e8998ae03
-DIST firefox-52.0.1esr-pl.xpi 352851 SHA256 c386774eabfe794447883563346cd27eafce0f578f511116aa7ad74ac1faefcd SHA512 c972c3856a81b7048921f5c278d7885fcb6491d3eb89df39a18648860605c832878afdf40c6d5a77b6476c947663ac57ce3ea8203cec76c00368c20c8966b9a8 WHIRLPOOL 4cdc9dcc304452aba66eb0bdaa34c38a337552e62f233c31b116b9f3b072fd7e7453d602458c9083ea8a3401a12176d726097ec236733f841d4ba6b81e551c03
-DIST firefox-52.0.1esr-pt-BR.xpi 438169 SHA256 966361a69861bcf5cd7be34435a4add0f8b957ef35e6b59d4b8b7fc8f9e25224 SHA512 f11fb84ce740b0ac5d74bd4caaf6943a41cae04c9c6bae3cb89bb97b445f2a2853f8368f3f5f23072434250d3467415b72b25feffb16efdac0c5e83e2d89041f WHIRLPOOL 18de92857a394b8be08667a47669bdce38f48081462048e6dfb08e4530a925746d9a310b8581a654f95418353a3584e03cd38b6e128a5f3eee9025aa4ab806a4
-DIST firefox-52.0.1esr-pt-PT.xpi 436727 SHA256 be6dbdf4637ca9e9ebedaf6d0334a42b21db359a157e2ae7bd73d557c44710a6 SHA512 acbf0b4daf577cfdf5fad3dde9530e0fc771c20b99ece33841d665ecfa1a054164b4a9a364c04b108f58da8ae528ae4a9018c909fcb849b34bdfcdf9fa9877f9 WHIRLPOOL b52a762d26453691a351803cd782deff2da253f205df8b53a7f2213ba75deebd46371284828878ba6c23beb30648658cba46f840e2ae57873d199e1abae5b450
-DIST firefox-52.0.1esr-rm.xpi 434608 SHA256 db0c85f07bde41b3946147dbacb8c1306a7a43d9a146be0cbe9ac9e50b8d273e SHA512 2c7b6a332800eb932c87ff50f5129a5205c49c67545e02eb58cf961139c8bdf3e818ffd3071719e001ad7ead34d524d4c91ad7403671ad62deb17b823b4c73db WHIRLPOOL 6ea3772a6733507266ea492a50ce41104690ee91142dd0547045c175b2d0e20e2d45dc8424987578d0ae56e34e46bdc73bcbb6d9350030a6fd54b5814a264ce4
-DIST firefox-52.0.1esr-ro.xpi 449938 SHA256 00a21ae5a5119ae01f0a27442569af8a673d04ab31cd521058d15e3407587215 SHA512 05bd5c2bf84b7b79bccfc72396185cb42a61982c4e3f6446234b8d3d0a860ac220968768e238263293bf5828bb781bab1e364e2bb444da1633130fa9a5fbdaa8 WHIRLPOOL be34e547053aaf9e77f9c810a3bcbd9bb1c73c3424e6177f317ed46cbf917f24810f796f23b1eaf17a95369ca4da44325909f01f8ea42456252cec0eb0391e27
-DIST firefox-52.0.1esr-ru.xpi 395363 SHA256 f3bc5f63a0332be249e7cb17a2e3590ac849d353b550a4c1910ab62fd40bfa66 SHA512 363531ce9a861e812921836c0e930c55c821ad8c21811365414db3671d1ff215f2ab192b8487b52b4abdae0abf11f9a4e2a8d0cab530183e3cecfd155729aeac WHIRLPOOL b3ea4d497dfca4a99f9cad96a2fe5529cac108ff5712dfac46bf1865301082f46adefe387a1ae45559b55ef23e2d216c26a448fc8ccc14071e09c318b2aafec3
-DIST firefox-52.0.1esr-si.xpi 491958 SHA256 b77fd2f213c0a4966eee451279d1af707507b61d6c2a1d85ff2249451a984d5c SHA512 1dfecccce032370e61d3d9d5830e12edfa511769dbb597117be8412185a9cc4d1a6c6657065a17029ba127c4d8ebc2d39012ce0fa7d1d7be5a6dd82533c67ed3 WHIRLPOOL 91b4155498c2f7fb0299f692086eb1caf21e7b08719c5ecc6d25bb6beb0b4bfdce999757e532716569db92d2155023e06cc543502329c46c907632be7e1b0609
-DIST firefox-52.0.1esr-sk.xpi 455820 SHA256 364323792971f6c433ad683edf3ff1aadb3fe123c0a4d7e30c6cde5164e4279a SHA512 12322c910665feb2c78ed2f5334f4a23ab20cbb063984a7720812460699eda04073e0fa4e108022847be1074ed1c4d3398226c4158c35083152dabf8fbd2c591 WHIRLPOOL 70df6d51e3b1ebefd40494984968bd1f93fd32db61b84875b23d3c817785fc7ace1a386583d9404f341beed7c6a62493970a5ec45a6bb9811a33485d021f7413
-DIST firefox-52.0.1esr-sl.xpi 433482 SHA256 587ab1d72483832e32f3dd7efba7efefc2f64b33b785e65220584bfad8c98936 SHA512 aa19b4bff95eb8267e1f2c57d904b480336d7e093549e3a1031f06dc12933d4f8939d933f02413eddab7caa21e0e68eaea49fd233d32991c69cc6175cb144996 WHIRLPOOL 411d13ca16c069c0544d4a19ea4a1e7e1411d2bf7418e7dfc4f5cebc4c00ee11a41dbee80fb04aad2af31dd8239907f2f22d2f79dc664306a93767cbd7babdf1
-DIST firefox-52.0.1esr-son.xpi 435127 SHA256 375f6e60fb95f81d475cfad68e7a35746256854bc9823fa0e29addef7690bdc2 SHA512 b11ced2382a4b2c875c95dc4488eecef54187d6d97f0c29846f4bc0b24c1f29a37aa0093af73d1810dfcba0e128fcc8d98f27f51a90c9af18edab0c172a680a8 WHIRLPOOL 4ce0dc15ae500d9aba7050f280d8ed57686a85b5369e3cd216f743339702e2ae43a1276426ea5dda83ea4f92e03ffcf8a0dbc17c734a38e4a456825130c6f198
-DIST firefox-52.0.1esr-sq.xpi 448156 SHA256 0e71faaefad4fb67f9c430bb82b030a35f2d32071c903f87ae63523607822b7b SHA512 2129aae85e352d3b2ec033e68b9b7bbb629c2a447a24463924e2af500381efc0ded73294b150ce9836bd556fde5bf610b48115a65a22dffa66b2ded59ab8aaa4 WHIRLPOOL 0fa29338dbb0d50861874f51a74e187c332abc3a63e31a33437e49dc6bc7c4507f95dc606caf69fccc5195d8e2ddfa3d6712a5b988f98753529ca6d4d4f5ff9f
-DIST firefox-52.0.1esr-sr.xpi 463394 SHA256 13515df0af3dd756ba1c284f2aeacf7a2036712ebb9b21aeabf60476ca718ee6 SHA512 80aacd4b51dec37859e18ff93a23fdf1023f7540f1602a455e94852723578c37c7a53a562bba7ac70f41f520cd2b2cd33b1baeaa4f26546762a8e3348c4c5cce WHIRLPOOL 422aec87290db5cd89191deb1d064b436c5f13b79d909cd813988279c7a3bea35cb8bdddeae35c1932492ad75235a17734543102f05b1dedb52aa78289686c53
-DIST firefox-52.0.1esr-sv-SE.xpi 441182 SHA256 1fa9ab6aa3821818f1f21eacc643bc530b6f2797b5b52f6aa667d59f4193d742 SHA512 054089016eb6ee57a672ef92d1b352c55591c1a850bb93bc7696df2278922dc26f287524c44f5f9474e03065c3751ac49ff0721fbfe997e819b89ddbf8dab843 WHIRLPOOL 5a18da09f11c2ba0739f96ec702d452538df761bf71d76b442b755f923ff31ec71b4a3d96a10cf497442e347e20b65cdee3631f8c38e7721f48ca9e4b5c8b2c6
-DIST firefox-52.0.1esr-ta.xpi 494799 SHA256 0c8d3362e68526db611f9b04fffc0beaf1cb21707b9ff47837f0e6c6da6eedc3 SHA512 a6ca89b8c458fbd1036721452005572e2b5e3b15cc082e16d8114767ec1bd00312c4c273c1b7acb6cc88d2c25112d4e55a586adedcb1001b89c8b920ff279a6a WHIRLPOOL ef70d899ffdf3554423e50f314809d87099b7a79298ef503a15923d378fe7fc561b2d4602b1bcd549165971399fdaab7856d190f31c14fd71c1d1c5d87f44026
-DIST firefox-52.0.1esr-te.xpi 515241 SHA256 8d379f05cc0a5f3649e711a54c1218143782ad8a2b3abe417fd92d5f3274fb96 SHA512 13d072139297f8fb716c5a15598af5e1023b57c4b16b22e2e9c70b95ada394be7f0b84ee291cdd6ebb85b22dd5c43c5ae04fdf23ed28ab4fd0e40a717e862e2e WHIRLPOOL 8c21be1131184fdd914d78b53c4babb71af1200a71bb2c800b921aac38ea1a72cf824941e3a2f9d2be66b8f97f40ad93a92f757f6de1f443f71a0092e46beb8e
-DIST firefox-52.0.1esr-th.xpi 489379 SHA256 248854b9dc9ce9e9aeec24d071250bf6562d4801ba410ca394aa846247487a15 SHA512 2c99d92bed248feed2136894358515b46988979a359e5ad3c26e2d6f1c8ab88541cc7493638e87515be669c328b27d6b5c99108198318ff651674deed71a2120 WHIRLPOOL 4d4bce8a28951a19d75711d2d9fba8b865a6c4b96cadac032657a5be6f6ce7cdca83e0e242fbef7a340640b832c0975b34c6591a8b55d013fa493144fbc28c4c
-DIST firefox-52.0.1esr-tr.xpi 443672 SHA256 8b2a009e31b309fdb2fbf4d0d87d49e012a3108d7f8540f2c3c71a111c16cae1 SHA512 c449b0a3b50452e817bd8fcada68056015089af3ec192e932d69867eef8c89b5f06cd2b54e43ec715bebe3f4fe2ebf2d6a9fab9c04c8983bb93b93bc9231ab99 WHIRLPOOL c556d7a9e42522363fc0e66bcc6001ef43ffb5a0516874a39f95bc91e04cbf65fc812fc9f007542cdca54ce41c3410590e1f80901d364ac1700c4352b146f7b0
-DIST firefox-52.0.1esr-uk.xpi 495095 SHA256 79f05b18bb4173af42ae7afc53805899fcd356aaa08cefe8e5286d76b543bff6 SHA512 a2253a3a213f61dc0897fa4872d42a0930ab0cdda5ba8aa6e20691b8ba74fb5878fc0d1ec9de839178e7ade705d31325c93adef7f01289f7eda7e5c3fa558033 WHIRLPOOL c9b7c52d717f9b1dbed6cdd16b74a966f51def2ee95de13f21363f14612ad6e8f87f075c0120dfb778eaa706ba7acdd66b804b109e0a65e9cb254f0081cc31c9
-DIST firefox-52.0.1esr-uz.xpi 447916 SHA256 2dff6fc3bd544ba44dfae06dbfc40488d5b17969b7427157fd47b4ac49636051 SHA512 1a35e740a156796ef6aef4d90a34cafc59cd3b5cc0b5f7e688ebe36e6371ae5c25a99aa96adfe5c90649499cabdaa07b70d2f2a55a78def29bb4242181e5202b WHIRLPOOL aa6d531c134d2000451a00f19ccba92746bf77b5817d3426c57b49cdce9901c6fb5d64d7d653b1025fbff1670f1bebc0ddf1c480a596026cced5b57d66a7574d
-DIST firefox-52.0.1esr-vi.xpi 450805 SHA256 57f345d0700d91c2ce5e62b9a2076daaa127a1bfaf87c6a24c822c85906499b6 SHA512 bf85b5d32cae5369d6fe53b34ec8b9244c5e7fb24335d982620f8d1909301749f2e8cae42d23c257aea9b62852d63f31c0852f45956e2ba5598751c4bae78ee1 WHIRLPOOL 79af553434dec608678f91c8a64d6a22ee018f9f420fd5a2e884656cc6a0d26a6e283484b80c0b99e424e6d609b67adec89ebbde33e50fdb85496f930bda67ec
-DIST firefox-52.0.1esr-xh.xpi 441172 SHA256 7e28ec49054fa247fa4da7ee6380a94ca5d05457b06e1dc4f79bbf2fc9714932 SHA512 f2db534e7b4f4d9008a7a8e1ba952874134cbb624e52211d6643dcd1f8fca244b2b3a8b9e4a0c0cca64bb814d55eabdb613d6deeddf2407be5f7f6d21921006d WHIRLPOOL 34da6686c1204eb7da2a61d37b379243ac318cc7723419e53b892843686c3b6d7beab9fae8f77e83641d5f96a2100220f8e9fa48afbaac80a7d18a17a36d113c
-DIST firefox-52.0.1esr-zh-CN.xpi 461694 SHA256 b70d523f15734486332a4717450663110d7e4a64bda79693f64cd47ddbf066f9 SHA512 452daae62980c95e01c90a1a4c15c8c59c21cd12633315a50be31ac6bd17b7fc16e97f3d2fa98231264fb6ba13650c0199332e987fb91185426baa635c82d611 WHIRLPOOL dbdcd31110d8042709f5ebb6cea0ea343092867c0c8e0fb526c7a31f6b17c64f82dd9e048bc7183f2a10c40b13e8fd9de06f655fbffbfa31bf539d27529c3573
-DIST firefox-52.0.1esr-zh-TW.xpi 472534 SHA256 4be4c980b3506a5cb66d0502375a0f37833bffafd213a41cea90309446f6c865 SHA512 ea5ed56f63cc3b2ee12154f034d6c22050672d5fdeb0d5cabb4b58dad1225da4451174ab0328f050db3edf202c41ddf519c69daaf27787a613702cf36e008762 WHIRLPOOL e6c3c8bdd5e71d81596c53b0f359514263b1653cc06a471678dbab33823bd41ef62ccdf6ccef811ed306406ae91dde598042caa91fa056d8bed3e81904d9173d
-DIST firefox-52.0.1esr.source.tar.xz 211972288 SHA256 b0298f01a8afdc769ba2a5d285e44bbb843306d07bac5a53bfcb9fa85032327f SHA512 c1f0aea279254e7788f62bba7892840edd2b667f385a649d374c9e783b93ec7faf9e5ebfccd04cd94f46da37aeb6bd7785d17faca2ad441a0b6e8587917faab2 WHIRLPOOL fa7f06c836372bc4eaece766bd384e8ad28e18961b68fa11f78b258671e3d81b6a93fe85e291f44c1f5907ddd2d0edc144e72a166e59ef35a00106011d5db3bc
+DIST firefox-52.0.2esr-ach.xpi 427639 SHA256 17c44be4b699da792a9bd79e1749bf5e565af10b19ebf5f439362fb1e20d7bd6 SHA512 5c6e75a7d31632be1858fe4f7a9aa22095ec2a32ac631c94c2693c16deddce41bb5d4fa00a1910d36da74baceb5088abf3620c0918682aca6d1340135380487e WHIRLPOOL 56dfe1f6a07987a2b2047e88f394d06004afc9cd993f57a1aa49bd20a1f2acaf8e0afc0106f685d6212f4a45629d9583fad8c579c6a74d4cf3dbcb802a8cc4e8
+DIST firefox-52.0.2esr-af.xpi 436823 SHA256 d13bb88214d8c508dad8327e11dd86dc7b16ba3f41d2f1ff17d2c82a38be515f SHA512 21e93dd38ff3963aa0a01eab1fbc27b9e05cd09708e658304512b2877d4b62e10995a69deeb15f5f9edf86b43ff58fbba755bf9ccec15731ce08715c98b6625b WHIRLPOOL 432ffdbc8926e83adc0ad54952d83ee0bb65f217875ca2927602ef18b3ce3b3887b2eccd65de59dc00f7cb9af61e6a675043496e7247b1e3818ffd0fe1c8a9a8
+DIST firefox-52.0.2esr-an.xpi 445142 SHA256 b0bec9aff7203140945935e2d978d5007410df9e544895650160fe49c254b44b SHA512 0332875a3880920da7f9c3a5f5b12c87bc1b5ac69c1774b494bd65ef2458d54802230f0b5ff24c6d5a6f8e89d2a44e2e65b882d819738fc9435112e91e545274 WHIRLPOOL 06280861eefdafdb11e1c283df1117b9a5be8875a1eddd33cc6c9c75690181724839abd7c1e0742ac638da0a1c9e2e53a7eeaff2f462577cf60d69055d1ccc25
+DIST firefox-52.0.2esr-ar.xpi 473381 SHA256 b5df05b95e340d8e1235bb896ec0db4111ccdc525b79102cce934121a30579e5 SHA512 6b33a7e886a7d2da2b066aea74439d6c9bb832eeb7fe6afbd1f0360e9bc554ddc557f230ae38f6a2c89d36e5f92379ff68152be73f607de665dc949f674fc68e WHIRLPOOL 4c3e8898d76eeec7080c5708f13b639917e5452c513228759b92168754b5e3b345b6a9444225340ef53c8d737c2d0bb2e63e6824110994ebee54875104401a85
+DIST firefox-52.0.2esr-as.xpi 486888 SHA256 50c05b0867cd43b33d8ca84300f76f060e854a83f06d0d51f4c421d96e1a6d48 SHA512 79d44c4957e6dde1570889afd0ab8635c43e277507d67fe4a2a071e8dd271f950f636003b40341465178abc8f0ff28c5094b29f0e768dcd41c0ba09f204946b6 WHIRLPOOL 3b823cb10c903f2068c5f01882f2025c75f96f4762471a33a9f16ff9d6ec3b92d7480d586d19fec8d6a5adde5975d19edcf0daa4d87c79e09273bf6d1ea1e453
+DIST firefox-52.0.2esr-ast.xpi 440032 SHA256 2b6862eae7afc252c50f85d4cf2658a9c2361d3edf97ff1550b20b05b554fd49 SHA512 37a39d7b076042a11fd39b434576e2a12376408b987d29e7c48e460c3a4bb41fe93c2b8b3e3a707fac789adc7905b56256bcd644385a1d028bbe06f7bcd993e6 WHIRLPOOL ec4dd19ff1bc286e12932087c6279a3f6d34fc53c88d6988284d847aad437556b95d083df137d13c5afa0cee30231cff94aa72abc47e9038965a5a28153c102b
+DIST firefox-52.0.2esr-az.xpi 454922 SHA256 cfbb370421d4054e8eee312819c2c2d88c87d643e29b83ebdb13afde6b39ddc7 SHA512 18690705ecd6f97f39318424072f5f59c71ac6034d2d6c5d0eb96e5d90e16f1bcfbb5142bf5b7c4e019d4d5948e5888b5f11c32a076b9b2bcf2d8c695b35fdd4 WHIRLPOOL c3393b176d5c52247fa73e15ea767d93d39a67929d59dd044733fcfb08dc651aec54c24d09f69854d8cc441c0742d30bad71c6d135609fbac42ea923d885d8f0
+DIST firefox-52.0.2esr-bg.xpi 487892 SHA256 3af5ecfa0490f46da75491ff3d0997f1c00ea8c19a4d53a54197abdb040b4621 SHA512 194e0d47c7b1b4143a37481c50af5e6f547b33113a610b9cbb3cb12e7cda1778e5352e0eb780a6e0d8dc700a91d688c8bbd9b370f22e6796becb0da874202056 WHIRLPOOL b9ebbddba184e814e985a8098cb32eaf3b29034777dc13748b1efde27292566e1431ee02626f52724a300a5efecbbcd178bd1a5153dcc151c8fd7520deb1effb
+DIST firefox-52.0.2esr-bn-BD.xpi 511994 SHA256 b7ac48b8ed5a52b862ae467cff092209e7959e651c67ca67a7706f61b4a26617 SHA512 bea1f722f1b96fb5f94994f183a695b9fc6494957a2e435146776e3280c6d4d540853036c45bbfb279ab03b83e7c373e6e98f8131f3ddca639d7f22b863ad516 WHIRLPOOL 9aeb216ac2eaa6884dc0b7edc5b3d365dc656137186ee23fa8a5d8c6575cb14b3657ffdf685f01d43ebaddbca2372fa78b4020568deaff625a05f52f7f1bffa2
+DIST firefox-52.0.2esr-bn-IN.xpi 509375 SHA256 7d2153c5b928bde7389c418b0df426c8df3464b44aec54e8e4732d7f4d01ebc0 SHA512 37754163f9ed0f2a8040d18e8b69134ef771eb3c2f700f9562ce1c11c8b68831232de3c77ee7e6e54f594e8d0be7bf2f2c98a74220f94be35f83ab15dc04e7d5 WHIRLPOOL 075fe234b5dbefc5627a1fe1d109ec9cd1ad2df1c4ebba207c08b21cc4c42f3d280fb134f4e525d2c21385afceb762c561068756a712df8780c8779a7aaa8f6f
+DIST firefox-52.0.2esr-br.xpi 435482 SHA256 c843c74be47698f678797b4cea19f773816265b113fc3f15d4f778d509ff0b4f SHA512 2ca6f2fc622b426b28df3e7e96a914cfc81c72c2b436975914d39ecb2ffadc4caecac6c9e5a5882e665b00e28be5bd93851c2f33dc459d8e894937022ba6cf21 WHIRLPOOL 534fc5b215b29b6eae1d7e1fdc10097ff8b4f4578dce4d34c54f9deac090bf0a0bcb5a54d9abb187d22d828153676d421550efb949d579567823022207b49cd5
+DIST firefox-52.0.2esr-bs.xpi 441782 SHA256 6011d50a569d3aa40f197df2db2394e727702270a1f32cd609b2a7859db8c8cb SHA512 53566cd55c9e4b09044a2c2687221068d9890e900e2a95ec6c7a08de88fdb1a4546fceb433bddd5de26327456a9a0abbd81a2d2212a2ef3d1040bdc75dea90ff WHIRLPOOL c27ac56ba1766188f1109143ef84c5b674fc12821a4db39c61d2f97772069b6a14b7b9868447fea1040905b249f117ba9c8e54d73bb7546cfbaed4b4a5c19665
+DIST firefox-52.0.2esr-ca.xpi 443304 SHA256 72c32150b546d28674113a80b81b5a03b26e5f602505a57a7b77fa28dc5c9eb1 SHA512 d77b4cbacc41a8dbbf2c70c39fb0d166d86c19f8b52910fd36188c2db5630c758e7652ebcf6df346cb89b5a359a8b4f8c5afe9965eca4cbe658fc1b2eaf92fb6 WHIRLPOOL b5012d4bc6491a489e1f76720a00d4ea59fef1afa219f6fbcd04c2ffc016a0ee3bc5306825afcb7e461500b775200b04e21ca75b71a69d973b19d7821c8dadb4
+DIST firefox-52.0.2esr-cak.xpi 459184 SHA256 14abed02c7816f20decbdca9631dd0abe3c9c76aa907a954c82020215806da29 SHA512 72a1299384fd88c946ade1afafe7c9b8ea9458f5ec77ae24b5c59fe3d3a725e691171e3e491a5aedad8c06e757eb710eda1004d420a958c533aa32cec7eb37a7 WHIRLPOOL aab369dc67ebbaeaf90bf45a6971a9520abb0db1641c14e1962c4f7129d4b5f80a617f06ce6dc715b953939e4fc28a2ae82f709a6f4c8d6a00a6bf593dbd883f
+DIST firefox-52.0.2esr-cs.xpi 444075 SHA256 42f3de5451e1405d0ce3eabd947245ede02a2536ab8c6db644f1d41aaee22029 SHA512 59be77f6e53160532269658a330345d3e2c9ad4512851c13317e5c5d8c7172b94448d8fa32a8bf6112ab7c555b11675e26a13d6e066d3b1bf823a098e6d38f8a WHIRLPOOL 9c3417f6f46ac6b9f455a5cfde411c8e2ee810bb2ad6e33bc4aa8fc2073c92b066c4f1ad0410ab249e79e4ab7ab54b92411a3e19511474fef19a3490571f6639
+DIST firefox-52.0.2esr-cy.xpi 436583 SHA256 b64f01934d9092e17d761e1c6e52bbfdfaddef83e1d276a91512f67221511ae5 SHA512 d393a7719179fed221f3926eac333987085ac502799d0d0c4c69aa766bcb209934c7da1b98cdb45d6d9851b11515f4158aada17e4e7c39b2780dd0a5b46f7352 WHIRLPOOL 8961969cfe1effc072f57d8dee3de5da0670fc4055da519a695290848f98cd23edf773fba7baff7213a4b7238ef2edbbc8ba9e9529dffb194b053417d6059974
+DIST firefox-52.0.2esr-da.xpi 424394 SHA256 eb7a16d5c534d0b0ca9feb85a7a1412c09fb9d62d1531db028cc58a0438da8c3 SHA512 4a8a6896a16ff599e700c539bf45b205de67cf35bb28c0b3d92be0ed3f0ff08a899b3efccba896d58b4e04bd4d0b8003961c92d2b5ae3b071094d8ee0cde7a89 WHIRLPOOL 1c835e7c1194ea115a694735f6239c995934590603a5c7720415b9977047a1cc62230518cc75c4a4d47c3b2e55fecb4c2b96e3e06e417a4e7ebf524f300c6c3c
+DIST firefox-52.0.2esr-de.xpi 442478 SHA256 68e192e66716ad78bca3383ef3f02f99e66db9dd3dfc3bef78ad8d8c147dc7fb SHA512 762d0e7be98102c2ce1cca3fcb662ace0dac753540af22649879f214b21d7e6b22adbe5cfe0a6a7b9a7365cd29925bf32d8f6304974a7a8c2192e808bd480a60 WHIRLPOOL c2fe23c58835282daee5a0f5fcf6875ea9f67aeb71aeaceecd4d0f4f68904ebe816e04ab878a59450f88708b73032e48074f625cfb8abcf0acc25dad27d9931b
+DIST firefox-52.0.2esr-dsb.xpi 459424 SHA256 16c6dfa6a53082a4977ccf29434b6bc55c191eb01c3c61ccbf1c8e6e87c1ee3c SHA512 8f0f9f787bacacc65aabb326be9536e7c47f36b05e559eb98ea357fa744af21d0439cb2279f88790e896b9df3f23e16f94928d644e7c0f858f1298040992b5cc WHIRLPOOL ed260d8b71d54e9f18abd88a0a5842dd9ef07f2db49d86e8c0b5acafc2fec10021864784f3b52b591a10ecbbb7e075467b414803604f22dc0827b7f33746ff68
+DIST firefox-52.0.2esr-el.xpi 516592 SHA256 737c743691557fe947a858a6b7ddfd662ee1318ac0282ec09d2ecac781288d1d SHA512 2c319c8d82a1616afe85474847a4c87e6e8e466c65ab6119c281710eceb30bbc15fc12b0a25775ec8714f43b753d296db0d01b0c1e2f6e65fb41721710db1ced WHIRLPOOL 0ac59357def59d5982a38f8d6bee289507b7d2dd4939d0a4a0b78b35b9a7b7a48655f66e1c0d2de9bc4d3c20e211ff871d63493a900f64e3c89f1fd47da4a838
+DIST firefox-52.0.2esr-en-GB.xpi 419323 SHA256 d06490b24f47f8145619d43baa7df95a485e460e22fb853779b1b9c255f944f3 SHA512 3ca4939c9275a06a20c821a1d8bccadd088789b013f8e6fd76093baa42e0f8358473f68f83ad1102d016f6c32d12eac9185a50d1ecc9075ce801414d4fca5e6f WHIRLPOOL 57d633e87fa2c3b0ca2440909b1fb03f50cb74b8441a4bd774649e84e6073e7e2d6d31904dfdd5a9092dc85b69051b1efe4747d984546fcf5ea36ce6c9e230fe
+DIST firefox-52.0.2esr-en-ZA.xpi 412211 SHA256 3126c49ba8c03f9f548733084a85a10320a690dc55bff84ed84b16296926a148 SHA512 97383544e052b074a21f705d94d3e1ed61ce26cbf4a1c685744eab165ee2effc079bd0e3b30b15255135db4a33611d709967bc289977b1f06e4cd83d68a4161f WHIRLPOOL ac4ecd93d4376bd2085742a46f929529f744c409884f4cc48024d43f5b72504e9b8b1e30fbf0de0d21d934d6a9b591f631b04e565fbc86be3f55d91083527813
+DIST firefox-52.0.2esr-eo.xpi 437473 SHA256 fa798703fe8f1fe8ae647328dce6a65284e9a4ec9e6d11043a7d44d041b4f152 SHA512 8f1eaba73f04dd01cdaab020884cc5d98a751a7292854a456d0e646df88f11c6a779c0e29f7e062cb8d04edd470c73050d54698f8621907a3fdc97eaee59ffdd WHIRLPOOL 38c4192c3051467515c0f922d838b2dd0f5231677e8fca893973b9b8126c877026409e4ada86168ca21c64d9ef09fb88010a8d16a94cbb363d2d8e088e3ce297
+DIST firefox-52.0.2esr-es-AR.xpi 445925 SHA256 75620a24f90a1aae3b03b7953f371952912f368f6540104dce38875dbc041ce9 SHA512 543662c40ace5df863e30b0d5dec541b36e4982855e789d83567c2f0d02eddf210fe0238b89d862995c4975a7d7b2ebedfcafcbb655c52a41eb3be8b26291479 WHIRLPOOL adac58a3e045f15883e651f51633e93403ed8ffa80bd54b7b998c08253ba1bc9a2b745b71661ecc871779dbef512d9039f813a03cabd4b7fd5468592cadccf68
+DIST firefox-52.0.2esr-es-CL.xpi 445676 SHA256 c89763b022c908c96125e0383b25b3a710c7732d9a068eddbe0fed1f9ebd50d1 SHA512 2d99811041a1daffdbaacde7146ed00a02227c8cb0761cc55004f82ba38870a54b2fe8f0e89abe3e54cfff68d8915693c9887ee23c4d964b74e3a307bb3e9d3f WHIRLPOOL 241d475f8fccf2c90722cb84cb23ee4c63b7d2044b38f148367ceb716e79b62d5c752d05795342188a4095e46ad1e9503158e55275f18f9a062670ef2f159134
+DIST firefox-52.0.2esr-es-ES.xpi 344876 SHA256 39065518fc8564879d87f65f38f8067a888e5ac3116c4cf624c4dcaa4010f2e8 SHA512 4abf0b88bcf3e897aa5028ab495d5e333a0d89d2cb04deff862b20c4d56e41c0e09d0441ac457649a50ce610e7dcc5976c671f7d0aaa127cc30e68c8481a7f9a WHIRLPOOL 39b68fdfdfc5b32df015ecaed76f64a0e6a460d157cd2236c7cdde1b8acdbf4c91cf8af6122dba7d2cf1d2b25205a7e72380e804155c05f758d2387ed0db2fa5
+DIST firefox-52.0.2esr-es-MX.xpi 448385 SHA256 de69de21bafa11345db034a7bdedf1439e80d7154002018f3be969fe615a33a5 SHA512 7f23a4a9d18d91dce102c696830885208c4c07e7a2a1996f1ffec5be907a53cbb8c84935eece5fed555c22944d9f2fdf36a8d1db65b39d560e6a1ee0e788b358 WHIRLPOOL 1e0e2375766c83693eb995525fe9ac525d2fc6cb69d33ab057a0da1238bf54f29a72f6fb5a00319de7ed97e8813214a8a9311080f767a5e5028acaecca930743
+DIST firefox-52.0.2esr-et.xpi 425113 SHA256 58653d577259c500fc66aa76f64becb2e1c1c25689e80120336343848c96a674 SHA512 e23d47d38d5b628b8c1449b00fcf275290b64f225c266c6fa9832d26dcc9e2852f3b54937adc9eef3e5ab25024d408b414ad3e418f7044851aba2b4e1f088b18 WHIRLPOOL 754755cd5cf2cea3693bba1bfbe4f9b3dbf6b3dac409303b64fc6b24413ce9e7b3008c84afdba08d281922ac5ceccde30e087c75d3146995849791e40504b723
+DIST firefox-52.0.2esr-eu.xpi 438479 SHA256 c1d6fec2d5af87dfa015b64f6509af4e23057b310fb6c92a01d6ff7c5537e84b SHA512 47b87d26a9ff08272e6e76c10ff3f530061c4198def76722c9dd77f4d1a39b3ecd19617d371987bdd96a4a74d4b701e30b3636f2cbe0a0005fff1145467cb4b1 WHIRLPOOL 9e554439ae0c8427ef4f09da2facc41270559d402c19f2f9dbecd06e984c72aae891deb9520ff8508656a20d9c08bf4128e46c71a1cfbfcd96057d0a035b1327
+DIST firefox-52.0.2esr-fa.xpi 491343 SHA256 28f4f49c0530fc19b74585c4677800a4b67992aad491ff597f4867fc7b4b657b SHA512 bf15a51c0bb73d822f3c7ed4871afdca113c4c4be02950a9ded817aa226ca3fd22409e2cb45f925b9105cf0b19135cccb87a8998dfc4f434c42736f20e2ab75d WHIRLPOOL 11e8f761a6d284b26be3edfc7a164039f5f688c30a1db39d4879f48674f2fe07c6301752101414188447448a3e02bfd89997de381ef795dc2455f2430d484364
+DIST firefox-52.0.2esr-ff.xpi 440928 SHA256 0124115a65b36d0178aba39a2f499398b70d6a78a1e7fa271399801559fa3e36 SHA512 334a9cf5e241bc7e34bb86ce9a6dc0bebb465aa3ad3929c3caaa2e03b3229712b494124497b85aa1c95cdf70ed8db9095d58337cc0d5bb91d19207b93fd5a76a WHIRLPOOL 5054ceea49738ed14a80b4074ecb9a9bf6f9d0ba4cd115bc1737520e6e14762c9ec0b789cc0706393c70a5bf2994cbb72c5b9d0f825adbb8cbd8676f4033bf37
+DIST firefox-52.0.2esr-fi.xpi 430061 SHA256 41163476254177c86b8d2d81fd59be08330c880d6438e2868a5a9d475ca2e776 SHA512 295521413b801f2f31f24e47ce07643a4ca3986ef855a3ff041fce5c6382eacfb267d27e7f4ee1c07e7e0f2427e7db08e4eee9995e520f31d1b3c612f668867c WHIRLPOOL 1469d29b7e5e1800a429db621e4ff3264e9a0672bef135686b8376d071f116db626fdb9f4fd3403d17e5a2b435def77579f240fd85af03f54cd220a302281f92
+DIST firefox-52.0.2esr-fr.xpi 450210 SHA256 9adddd8e5767f367da8b40ac811c5805bac7db088fda6f84f81e720c1ce8b7d9 SHA512 d6b85ff75704081924b66eb01868dc2b9e3c3dc5bcab3833d348eaa65c439aae1db7e9a6aeded9d3c2b8296ce3a767dd0a33450e10f5a1c94b3362d3a1b48f10 WHIRLPOOL bcda82e9955bbc199f3487f17db4ae13a9959e7f88780f092ae45f4da952c652b1fc72da082fe3c010377ce4bf194e3b668bd97f019b9b610ba816f8338cef06
+DIST firefox-52.0.2esr-fy-NL.xpi 444973 SHA256 6eddce66cb2909b076f92201b168845b60a2816d4f4e804652bc5dcb72590ab2 SHA512 9111f460116dd36a5b2a4a30c8f8f1e80338b008f017cd30ba4b3207078c05b9c4e546e0952add6f53ffb29793ce2bd1fa20f32e6b5f405a5745931fa1d51cb5 WHIRLPOOL ce7bfce82daf980bfbb1b912af7bf2ff947fd2e8fb67b090cea2ce9179eb7a994759461199ecd319e36feeaf9ca26af63200361b78156b3c6aab9f51156ea69e
+DIST firefox-52.0.2esr-ga-IE.xpi 458164 SHA256 2b05a5e72f23a4afd0901ad8915a161c52c0100036b6328dd2324a3ab555280b SHA512 c33e9627942a4393cc30ed44b394156733766e65df3df1674481a004704ffdd971b5a1b2aee693e9ac4ce56b92ce525852348fe9607829ee582ca6df19b19001 WHIRLPOOL 7b71e3fe825e5b8d62eb37caa6b5ef2dbfc09a7ba8f8e33a0478ab020b6c1b73bef308ef9b7c83a29572edc0ee382243a6855320756ff4c8af494bc8b3a20d28
+DIST firefox-52.0.2esr-gd.xpi 447267 SHA256 8174069db5fdcd6176a2a058813a37d21587132bde4ba10370c1b2cc5a671cc8 SHA512 b611d22c7b6e9a1911ea2b3bca3ba9bcfcc99da161c68a5cd314ffcb2b40da5f0763c442da38db42db68e845ba46bd2591856b1630c5b33db06b508679236f15 WHIRLPOOL 9db2cdbb2479e9a7a9861a6c62051d0b7a8c287195fe3708b8bf40983d221d6401381e43b8e20c5054d476f21136addad6f1cc7a1cd045b339a86519a2c965a4
+DIST firefox-52.0.2esr-gl.xpi 447295 SHA256 e6c4ea07ad1054d2f1ff4be1c62de1fff478e26500b154d90a5008af34219393 SHA512 49518428b99f14beaef32fed1e2747777a71cbfd15a0df3c989d4c97727c1b589cd26799e34ccbae4be6c7d78cb03dca4ca18623ad19be323a2600f47a489b75 WHIRLPOOL 874accdef47f90b0d1df2f3c7c75864dafee5debaec33402b1d16829ec89182336738e479e4d2422a5fffa286e6e3749c0569cbed641282d6b3f6d99d66a2720
+DIST firefox-52.0.2esr-gn.xpi 456214 SHA256 81e4463bab3b1a603600e5a0e70f605cdaad3599df18b8822a1c2e562116c56c SHA512 4419cc0c689393e1fd841b516d7a6634fcd52b03888f62be0d7dba23b9443c0cdace9c9f3580925453385a5e87aa066c0bc8ab6e3a982e7c69cd6efb39475dd7 WHIRLPOOL 581956d367d2f20d76501e50f918c746910c6a3c31ff6cfec6dcbbee421ac0cb8db54d936473ab28f7f421fca42976e303806d77c74e6e56bc0263a5e3635e49
+DIST firefox-52.0.2esr-gu-IN.xpi 489366 SHA256 5c50bbe09d720b8ae7aca3cc321116eeefa7992734609d8a189316211c591ebd SHA512 75a685e485585618fa56ee212e02518e846153e0d2d4abc1cafad2e8213ca157d89ff5d2bba402cde66ab6b9c5bd44077697b813ee0a5ad258f3c3020ce359f8 WHIRLPOOL 7a2a4de6e26d3c1a05176abf1f275a7d685d0c907c6b5cac924c593c6acd1f9b71dd52203752187ef54f1982e9d6468a40c1dcf5f42b050cce05825e4d3437c7
+DIST firefox-52.0.2esr-he.xpi 455282 SHA256 0ab0b32b591df6ca01164b20dfb033234db6e0a34ccd36ce2da2dddc66400d95 SHA512 b8bf193c7bf5ac4448df14fe0e57fca26a8bf956d92f7cefd100e85fc9f307ac6cf72c91114b4dcb8291379621610317f852ab3aec0d30fe8d625ba79590f9fd WHIRLPOOL 5787089e81c5baf6c13859d7b73e6f7ddb18136cd420fad91eb4b7f1f41fbe07aec8f7c9279822e9d2812c5f9be8df90332b24e38b09b9ad85af9ff52702fee5
+DIST firefox-52.0.2esr-hi-IN.xpi 506518 SHA256 d5c6c82ec10fc1ffa9ffac8489900832e74cddbfb8632e92a081390f1d9a63ef SHA512 cac39b4cd1442aaf11cd31afb00c62675d256de677c86c86cda6b27e657e417ca8c2e94ace6b310781d1511644fbd750db103442e7ab69be4828e9891980e2ed WHIRLPOOL 90e91d75e3b61ef6ba691e1c72104796bf826ad8d9cacd47bcde2bcde43fe49b4bc5c915d899d9ef0737e68693b036ed6bc49b3281ad6d0df58daff2bed3647f
+DIST firefox-52.0.2esr-hr.xpi 447502 SHA256 b00868da8ece72d8a24d373cc557b9f88d1c4df71e784f43870a89dcdd14c0fc SHA512 1f220d1a5bba04ec0455f55c1751ffcc93ce23d53282e08a02ec61a5982a92655f937f888c8efe2d0ff068ef4d9f984d3754f70c3e695e0823eb87f5219e2b15 WHIRLPOOL 7e66b8d7221ea0eda61ca6b13eeeff66fb12ec78b7a4d62002f313d63749ab02e51ce4a2a43516336da24a2646fe26a9739f8140aa4d894565ad02bd02a924b9
+DIST firefox-52.0.2esr-hsb.xpi 457260 SHA256 bf0ebf8db6966c8843bbe1aa03f29a5563a394d6e048aa99c9d5ded552597e13 SHA512 8b3da2a78a6117dc63cbada312c730bb9c3f184b5b56d34b8365af305da7ee9ccee6aa539847b97065a18b9fdb2e2394ea47b4cd8c6743e089c2b2fd6a03b2e1 WHIRLPOOL dbd32e96809291d2b2825ee01b0b9f79aa3a7c680b65a973f68e1e198d0f6a2c53edc6d45527e214f090556ffd9dcc9a74ab65e910079bed41f6a18a01014b13
+DIST firefox-52.0.2esr-hu.xpi 451495 SHA256 7bcad95e6d54928566f1e57a543690c06df2451cd72da9542c2fe2411b058e1b SHA512 652fc566668b685a03c1e3b53d5ada253775bbac2f8417d2a0007801fe2f991de5888e42993be25ee73da331fb27d6e415c4c75bd1a03e44aa22dd8ab699239f WHIRLPOOL 2fbc9a0832ada2cf9356b4562c967b0c3b970ef4d15ec80d6007730eab21cd00e3a8e6417aa0281bf36b72899880b4333c33ae5ea8f7cbe380e4c595f9953c53
+DIST firefox-52.0.2esr-hy-AM.xpi 495773 SHA256 3ab12e93bfa2794aebe68eb0af00eaa73014f677fe5c741e599a07193ffb06a7 SHA512 93a8987cd555c51182bc6bb0d502242067f561e35a79d5af942ea7e8736bf1cc3602485eb7ec0f99a39eb201a0e7ac09da0abbd0086330d97692350c11f00633 WHIRLPOOL cc03b63cc8549584eef9461d580f2ba131b88589a4a6b34719dd14050bedd09a9ddc0e4f0ae9d96e871700f9e899643402eb96e629c05047f7dcbb39863d631a
+DIST firefox-52.0.2esr-id.xpi 426023 SHA256 d04acfccedd5a636d916d03b27c0bef15a453cc8c22fbe310ceddfb95b1b23eb SHA512 0685bd25b86c3ce408082145d585182f49c4b35f8d4fe30a8c4461fb7b9146987a8d70737a8f5e783f9d3f222bef3014b9fdaf34493d4a4b87171e6b12bd3c9c WHIRLPOOL f71f21a0c98ed190479441a429b73511e2231d9b48c1b8fa769abf50642cca84d20ea6b733077dc8c53fe21d20c828d0eb9cf74c29adbc828c8d5d7b1b9a0b1a
+DIST firefox-52.0.2esr-is.xpi 442697 SHA256 aa385d98b97308ace59ad7ab126d0f342953da69e49ca20203568b7d1070c7d9 SHA512 ae6943aaee0693758eea0b9b5127183c94fd17cb4b72c5fe795a98fe77f7870b62a7c3d325eb98c8d46f21c4b198236dae75992c8d53a5d84295d3ea0ca01cc0 WHIRLPOOL 7fd2c5de120ab0a7094aae480b9513e4d9943430587882a18ac5bbe09dae6d40a2cae3d810bc90ffa45a195c6d1217e425d83f7d2b66107a72b8fe32933d5f7d
+DIST firefox-52.0.2esr-it.xpi 339220 SHA256 b39a533da5c993d335a22982f3156b41e8b61f8eceb4467a00f64193a186ef73 SHA512 4188bd1a32fae721c0c5f8a576cda187ceb37aa054f41356b069519c2485cda06e0098aafae35b7949a0acee110bd5e3c59f3622673b2254296715e4f5366494 WHIRLPOOL 1b12c42bb160e71e04f448a8a8495e7adfb64dc73a3192b0c3e0e4a8a304565174747acfc6024bc60e06b4a045c29a3b878a6c4f4d308cbd3279a7ebad48c30c
+DIST firefox-52.0.2esr-ja.xpi 488343 SHA256 6e31ee23cfe777a558d800de8a9e2bc32bbc1b6566d526d25b19885b83fcb874 SHA512 840b904c8bcb137289569910fcf5db409e0e4706e37cfbb566fdc11f9ad8254b5a2975b652f62755c78dd407c179e4788ae0533b819af1127aa2b4d65001eab1 WHIRLPOOL a22bcd373a09ee9e1a8dd1dfe2978aa3bdd6c09836509dff5810e0db35e0bbeda83a321909f88c7ff6b6560172bda0ca759a74029826500fb8cfbda06dba8e77
+DIST firefox-52.0.2esr-ka.xpi 475375 SHA256 28a366cecb65d26b662f78d01ca130c33e89d675ddf2792b747d3efa5a3a30b9 SHA512 1f18a97ae9fed514afaa4a8f120cbb24e3de639cd80f170ba785770810cf4209b1d640a75b8929f369f815cfebb916075070bdacaf625f30ab5715ee39184f4c WHIRLPOOL 399fa9a2af5d7ac481557753d9113c2b3302e2ecca4ba13532662c14685ea598c1dd79f88acf930e6d963a38f5df24e1c012291fc637a32a5f25fa3deaf06893
+DIST firefox-52.0.2esr-kab.xpi 444518 SHA256 9f943dee25284517845f91014e5606e397146009cee048c90ea7f18e4dd74431 SHA512 c9e75beb38fb412eeb1541587948403ba3bb336bfea6d2b787704186d468602a095e7e19f97887356c901aad9e68f90b11d06bae68332061dffd164ddede61ee WHIRLPOOL bcf5299fc58cff71c97bac77b51f7b2c8c8bde3b0f80009f4ae353df341882ebe46c57332690fe30ffb7b2b33a6ebf6206fb7ddc5201db02f17da2dcd938d16d
+DIST firefox-52.0.2esr-kk.xpi 496939 SHA256 d7754ac7a672e823c899e219309a63b093be0b9832f6c252b06b0269ab67fe37 SHA512 6d6573969b4300d3252363c525242d1f2201f0b15dd71b00719531d7fbfc7ffda2f4717008e05a30ad589ceb257cdb1020b05c5d31fffaee5a3ba66221efe14f WHIRLPOOL d48b17c92eef152c5d036e5ed17a8e892b8243dd3a83627dba15e784aea451ac1b3b84dbdd2b404a696137422cda50296839e2429b556f7555529f10ab88d5d0
+DIST firefox-52.0.2esr-km.xpi 520343 SHA256 408f9287f7dc71f4ecf90e0963b1b1be7e7046c02df2bb770b94d36ac55607e0 SHA512 4c648db6d624c95df59fd4774e117229f73c7cf851fa2d9ecbb0ed4c3238deb92398b842ad9ccda757596031c14f08408025c7c959bf6b7672af564fbf3bd53b WHIRLPOOL 90b0e6c5491cd0e7378de5cdadb9835247b8f7981980566f493de30d4ce402d95b63df21fd2541fbbd8453c5559872d7f5d5a45335b5deccac4ef5f3ad37f3a1
+DIST firefox-52.0.2esr-kn.xpi 519455 SHA256 a940f3e23b848a7485d46723c9197ec73760b9fea178a062101b44c5ab2ed9cb SHA512 df097f3177e7e889d71f341d41e076842a0e84580a89a8ceb92a1b76d096914d1772a695892d69d85351034f59a800f2307a24670d71cc342c83ddb6a5270689 WHIRLPOOL 820d110cb51b8fa65399d87e8490fa47b4981adeff3c60eb1b1b2986e3600c1cb72d0d2ce62deda800cee9e214c304a5b9a33227e2c3df133f11d55873eccc66
+DIST firefox-52.0.2esr-ko.xpi 463630 SHA256 b14609d49ce86ddd1bb27f00083ca322f13db606012824f0cdac78e6c67e0247 SHA512 0047ccbe693fdd102a6afceac69696ae07e0e5501671343f14f5193cce0f46e05f438f801c462d87469273f6848cad94fb20dba242a940e6e325524ed78fd052 WHIRLPOOL b2731c94460a6b915fd87799b6ad5a49267f97b5b6201d8f34f3b7eb7c5b24433a6970d3956b632d179308136003a2a9fd7041d4a4caa38203b3fbfba3b5259a
+DIST firefox-52.0.2esr-lij.xpi 421073 SHA256 7ae824a7d127e815a605223ab0511846e10d77ccd894875a2368958c090017c1 SHA512 92453652ec4501678b6512a148a543105c8ee0843c8924e8aa12df969b3fb1889b972d85128295156f551df83788952d79f4564bd62204ddc195b3bb996dd7cf WHIRLPOOL ec50613b56ea86e7d5daf9849fa3c79aa8fd957e3fbb841a2a7909bb81c0f246a964b7f42972bd3828e6d7352710a806f4545ff493ee9d53f7baa79b79d1a3b7
+DIST firefox-52.0.2esr-lt.xpi 452235 SHA256 e4956659ce0a33f934dc8f16d9f94e10943cf495bb5a701b7d53b7a30bc2910f SHA512 c7f4ad087a8a619314eb97286d20cef0d9db0a2e6bd34292c4e1149f234fed700c6a1df7fdd07950cb0e071a703bbf6962fc6d7a340199001bad032465a99fc2 WHIRLPOOL 926142a7728f65a429c3eb5649962304ebb53b01eeb339109ea1e28caa42d5a5da9ea8af8446db66273c08b1ab8e227487e7915cfe5de58b08a6b381ea5df079
+DIST firefox-52.0.2esr-lv.xpi 448450 SHA256 525af57bddf8a97bd87b67bbd71e34339931899b00afbe1625e135db03e47ece SHA512 691546063b0fba0ff371a103bcbe88664242bb6946aaee8ace4363409ec572fdab70ef33d83399b8138037ed86e72011038e13ea2eda5c5c9fa0cfdbad9f859b WHIRLPOOL 4df64cf60266bbbbb3752143cb6c5a03ebc57c5faa3fdb1312c910ac5c9a73d426f25ba3237ee5fd25eeaf016beae5da95b25face55f3b298e0a0440b933744d
+DIST firefox-52.0.2esr-mai.xpi 499841 SHA256 175e109ce6759589f312d31fafecd9a55df9f0f92af7a97392b4aef140909620 SHA512 73c8fa0105dae5703edb5a204125207d98b22f1a15929c342f8bc07564cefd14a7185db83358a69a4a9a614546255ac132b06229eeab2034600f0e2e9cca6036 WHIRLPOOL 4c77090c2fb99947822a2afaf364b2ff51da56156bdc14332389bb285cc6e93ee201379ab03b554263909067eb633e15cb4590e1dd23d164991e23278e037ac5
+DIST firefox-52.0.2esr-mk.xpi 496199 SHA256 204d5bd4cbc09b9adc815ea43128fbeab3ddefe513d9b051d6319bf707049ccc SHA512 33babdc65d04f084c4dfdb335483ef43c2b29a620544f7db9553e8b1576c4d4ed623c9066687dffd12a9c718c887715570cfd94679351718bd6ebd4c4c9de648 WHIRLPOOL 9c7bf11ca042d74651b22d3276320152a6cd18b803f021d51a12359e7486aebcdb615f5ebbc58dee7709feb70d1c59933d329a5e7e0f3063f3c7388e7867a98b
+DIST firefox-52.0.2esr-ml.xpi 516486 SHA256 5cfae221136dd97a947c71244cf5f27cca0b6319b784cf506e44bc94dd39bbfa SHA512 3e7353f45a3a94768eae084bd4e1c5c8534adcc05a645a31060db60829da30c979d11371f4fbe090ee389e50e4f84bff9e3b93f597aa2f88cca41627eb6c3a90 WHIRLPOOL f32af02ad7d229b39bd31b8f6bacbc168cd531a5b7be3c41858f1f0c72427b576f82099d8f057908a2a36c44282f61a3d5eedcd64a8a11e40942e40e32246ee5
+DIST firefox-52.0.2esr-mr.xpi 502430 SHA256 b3f13a7b1141e2968a7a2ee7aba8438a47a097742b87af10a1fff892970f0c96 SHA512 94da10631d7d2375328cd617be84591c91e1a22314415066a30a7aa3e4f950149ffdb341caff36c3fc1a305c0a0a304a2b59fed5c5ba304ae558a48a809c1fc9 WHIRLPOOL 8acb4092dd8c4ef19832144c2727c4250d25950653f911a5ff631f6d8b556de8720fd73b45d11f1b06d2a203892362fcce2ff771d775beec33fe457c6b353bf7
+DIST firefox-52.0.2esr-ms.xpi 435990 SHA256 5270dcf17e5a927c64fecb670dadd4e41ef10ec938fd75bb3705fd8cee333104 SHA512 e3ef8b3bbea6c7461dc90269e1da77377c5f95d6a46653b9faba2608d92e3745a2726497cbc994ddb975c80e9998d65ee1af2c9b3fa09994fca2be37995e6d5e WHIRLPOOL 66928ee14ba324046585ee4a07ba935aaa0ba2d0b3298b60b5e0e2e3b6a549f68a8e34f479e57efaa277cfbb726a6d0fc56b0f8f35286629490567c600ed68ed
+DIST firefox-52.0.2esr-nb-NO.xpi 434412 SHA256 50242988db0d2b8c8afa9a6460ecb485c4c07b62a0ab7a977b8ec3367ee0dab1 SHA512 4ee45172194134b7705969e6798e83786f5c8d0a29c0ecbc1ccc8441419060f16f69377f8d1ea84edb6b6cf4df24ee8547ac482033ec5e96faf263aadf26e732 WHIRLPOOL 5bf9750bd046691a54acca39fac580545fc872676dcd3a70bf9d37cc4a35427ebba816fff8451c21d611ea0cda4287e836f562a114207bc1281711b26d83b095
+DIST firefox-52.0.2esr-nl.xpi 432007 SHA256 0937c79dd2a404492f8f44e9c4cd2d5f067cd76d9d5e487e33f76538278d1777 SHA512 59a5be287ee375bfe7c6e35d343b8da729b8c739af947812fa3e6e49c47cc888840d751002c6480f4055e9ff29f01ea7164cb4872acc1d9e30b4a2b13cb76f79 WHIRLPOOL 240a9a5ed9a4b527f63eba99e851a5a7e901549e6622aeaa14f1d008ffa27fd2cfdb671bdf87c69806f98fa9602f0e11ce09c7ebda63987a157b30ac935dc1a2
+DIST firefox-52.0.2esr-nn-NO.xpi 428644 SHA256 06a121ee47c094195517b13a8abf1142da234f590b110e564223f4ff2be0e850 SHA512 5dbde2571065e5ce130457c9c8bb2e1b9f57aeadf4ad7c076065cdd0265f16d49dea16c435030038b6f09a39e76de08ea033f8559fa821487cb7a32e8ace7b5c WHIRLPOOL ba088046a72a72be7f13fbfc6f0ba53f3a24e912fa133706e61fe6b5a83c97d2b45133c6a4a5fd716504f54f6774df623093e80bbac731ac63f89948f5096c2a
+DIST firefox-52.0.2esr-or.xpi 496916 SHA256 8128c771ea98d93386e65a6e12bec5383d259d12e3a3abe1e4941ec52c1efe2a SHA512 0283e48b962d8f673523d61beefc7731c803ece2ac741bfdf06138a949aa8ff099c6f6299169c8288109c3d48b259f6a267c0a3f238cc6452c9970f643f4a9f7 WHIRLPOOL b58d6fec4a444db4a53e5d0c473a7ab8a4135a7e20ea85e0bc61d014801b2bbaf67292ebe52ae101967494cc36cad2553191d761e1481496cb0762f517013a07
+DIST firefox-52.0.2esr-pa-IN.xpi 476587 SHA256 25977039ef5b11a98d15c1c5134f774338b8829d6c8a87d6a560ba423f14d607 SHA512 c6117db4e20e10675ffd4247baf015909d16fcc018e273cd8ec3fc6d8c4dc3f3067a971cfe79bbbd5fe4baf730c052b909078ff293e4fd3d6d7f48d6fdb86704 WHIRLPOOL 16b694ace278663818295a18712843245a2defca84f0541fb548789b7b5b6b83e64e4f72b3e7a300f38c1c3ede0f0434ac4b406bb4b117a5d0f0c7f90b8b958a
+DIST firefox-52.0.2esr-pl.xpi 352851 SHA256 7c240b28f4fcb1c88a3752baa593a97df72a282d2fa70c8808a3f428d2330bec SHA512 46bb46c38269c1c4f749eb4a433a765f1a251e8d75427f54c869b508945ab92e0f4fe7484cacbb8302fab5b670358655ff649b866df0e4bd54bbf4e9be8cd572 WHIRLPOOL f4a1834533e281b2be4069a58134293324fbd3b54843ca90ce1fc1d9bb731b9398497a735437f92a8366cfc0373c9c24497245e37028174f0ca529f56dcb7835
+DIST firefox-52.0.2esr-pt-BR.xpi 438170 SHA256 b9bf5113d5bde46da47c4dd4ffba79b012bb7d64a588e5678081f9178f16a68d SHA512 75d8b2ced9d5a02c39e47ca74b7984c00a423997a6262e771500baf9ea8c647931704ee6ad6528b0f7da62aed42042fb896e52bed3671492be1ff31f49c33d06 WHIRLPOOL 35cf5136d83441ac7167ea77c874e92af28258bdc69da45485d0eebdb4e84c913f355abad09c9580f0f6e49a7d595be4d35232d828d1cc38a4daf0ed2aede21d
+DIST firefox-52.0.2esr-pt-PT.xpi 436727 SHA256 e59505fc74c31a534b72bb86cea9c0f070d99094299575ce89298281fbd67532 SHA512 f8eccaa8de7209117577751728a6d4cff06c5c28f446bc6bd4a2cfd0a4fad17e4ded194231549f1a190774bfd214ea07ee1c8e1146c49ec4c198a1fdce34e043 WHIRLPOOL e841b73c1bdbc56237648527a25b42dab519f732d7eaadff32ffedba3bfb6598e4247b227483f1f6ef977dfa4f0f0a8529168a981610ac97a3f34ac804012884
+DIST firefox-52.0.2esr-rm.xpi 434608 SHA256 62a4c253298a761f0a4588ecbf3a8eacdca1812aec0c5b987384ed5a2328903e SHA512 dc4744f989830c3e167a93e27974b0928c11bcc21ccca24d2f3498710277288d698d1b7f9c06388b0b59ba157ec77c3594aa5ebd3bef1ec167e386c1433f72b2 WHIRLPOOL 97cf9e7bf6717a614db17aed27e2901f2e48ca431c9e58b94e97fd7cec28b2e3eb58e34d30ed1f4cb9b48c456085e73da15536988ca125cdce6074e430f2b737
+DIST firefox-52.0.2esr-ro.xpi 449937 SHA256 7cdb7d1fd88fffd7936be0d8145199f6577541591871b6eb578e570aa5028a49 SHA512 5420050debbea39c05a8632cebf24a3b643302427981d1ba1c4adc507dd69d850421113c22a95555c7ba90424bcd29ee283aedba550ef256eb0a6cbc9a819e15 WHIRLPOOL 076eb1316a4622b25d4ed75ed7d050bd15cca75f4d591a709a5af2840e549c5e562fe302bcb8f0a9e9fa055dc1696d40f47587aee0f6ab8ee03a138710d70ea2
+DIST firefox-52.0.2esr-ru.xpi 395363 SHA256 a2b58771d3b985efaa71204a8afec5135e7cfe0ed587eb38ada321b4ab166cce SHA512 36c90df9c6f83deca9dfd8112d8e930859b0047e99a9945482a3bb91c40e0d9155cfb38398eb0f54de48fe8b89c1537a63010366a63c4272148f323d8d4497e6 WHIRLPOOL f8864bef55e96bd5fe2d4ae9626574ec28404896a9d1639be72d3d49d4aca7f4d8135a1d2f861df6f94b659f7dbf623e4aeb4319d5361173182445bbbb55cece
+DIST firefox-52.0.2esr-si.xpi 491958 SHA256 935ecf51fe9171a9ea594cf6f54f6c5cda84b8c90b3635484f747afd7768af9b SHA512 916a156790be426e482a63c7b479537d521f72c97016133db94760cfb1f22f816a56442faa7fdb0facebac703c441abf38132d1da6ccabafc13dca07318bd247 WHIRLPOOL 8b828603f8a75d686d379f3934e6c1907c35a57d43d462de393f25b9d1d01e932ebc1c6a5a7950f93f74928fb467db0ec337e7930ec004dd2691c59ca688e759
+DIST firefox-52.0.2esr-sk.xpi 455820 SHA256 f6ec2eada56560a0bbfe21d5f9cf46e9e5a9cc437cae6dbc73c722a51919558e SHA512 4d6a8106aff0d0c742a65cfd7b3f146fe73ecd64758f44eff24c38a6db6042eddf6c67d9632c7f167a155c01093170782d6452d4bca92d867ad1a6e1ac9fe033 WHIRLPOOL 0b45736e1620b5b880457aae4700f7a982f241c601dad83c62257e3164a9946f45aa46d7c7c107caa0e79a6a217105331fa417daceeb19872d7e53020462a3f0
+DIST firefox-52.0.2esr-sl.xpi 433482 SHA256 135fb406994871a3fdb3f235e2f8c1726cf0b08d1dbee007ed6c5270ca6a07a2 SHA512 780227aed8d2d6704549042c6c0c2c775ed0e83cfbada1b2a849245c3f99a624d5adc1127814a3672f567f0dd69cc49f9dfc9991299cbe8ef7939ed9cac0f690 WHIRLPOOL eb3a127e789b58a68aa382dc70094faf1cdec2e38b5851f329da40f9e74655d5c3215def9283ed2df6e0c9e9347ff21db3e2ebf8599a74cec10430315f27ced6
+DIST firefox-52.0.2esr-son.xpi 435127 SHA256 8285535c0a77c1e1b4f69cb860ea90e187df74aa824687b4e0b86d626f3f9e8b SHA512 a3e14f3520d3c44be49b2a15e7a8b7b630e2c625253ae4e4a1b98efd37e72aeee76cded195a93dc6d37a408543f29df8385989de11f35f8ead04458dfe3ce009 WHIRLPOOL f41836a992aefe35eb677af6bb97321f447e68e2c5860d669b93a79fcc10429c0b5d0f4266f4c6905335bff343807955cb12e8023b33e8da0457ef1a60426d22
+DIST firefox-52.0.2esr-sq.xpi 448155 SHA256 fba2df695b21f7f9a9e817678950228ea531dfa97d369005ad2f3661b730d59e SHA512 5889e70af9d32d2607ea1296590c96ddb3fce3ee1abd8b9a764e64d68a44abbb44bf45ece5e45c438575d0d03313f6ba326738f2d10126602dcd8de08c9c00a8 WHIRLPOOL 0f215f435302bdea904d6c8f05dd7e2e1e9be7c327039ffb52e9298123b9a5a94d70f2621a6736efc84bc02bb4b7d80a85d16cbfc33f25eff6a2bfb570d9c8e1
+DIST firefox-52.0.2esr-sr.xpi 463394 SHA256 800ce88fd0e578cd20f14036b024c90f94cd068d9cfaaab0689906a99a587a4f SHA512 55f60a9ccbcb1d795396f29d76af77464fa49c05dd7382973b0a0206ebd4d4c820d3e43b3621b4caa1272f1858e1d79dac0d5fd74154b44e816751fc203b7ce7 WHIRLPOOL 67c5b103cd10701416cd54d1754dcd95d3c589734bea06a94475e468960f2146d7a6091ef237d8716c297ac33b3a5c2c0424362eb03544b6f270db4e9d655a19
+DIST firefox-52.0.2esr-sv-SE.xpi 441181 SHA256 ebe6facd03c9554d65c3838f8390f5e1f32cc6efe578fd44cf418d6c1f666a56 SHA512 d2457adbe65f4321055493a3cad0bc042845336252633c5913fc788d8d1077e7e8ccd49818df2f55ebde2face30dbb27b82de887b48ff0e8edc36dd936f797fd WHIRLPOOL da631924790635c48db8e44c5657dd8f7e1c5c0321868e3382af4ae92b63e91f20bb6eb6f363e10b7e49fb312e3e7a8282be5316aad82a1a32304959e1175623
+DIST firefox-52.0.2esr-ta.xpi 494799 SHA256 cf968b9a2c4fa5b20f4c8925e582d74b505aaf67e20a52d51a03064e623366ac SHA512 cadc6838cda4566f2edcf4a0d643678be116efa4fe6b1f9eb7f49537d7f9d70f73e8cfd9b2b260761aec0be4acf038d0cc1927c408e6fd443180e7d8218e94cf WHIRLPOOL 0aac86ebd0468d698663a52716e467de633023e6c828b2b193559874fa577fa3481ce7828b79ffd9b43993d86bb887a474ae5738bdfdc846d8a1967127aa8642
+DIST firefox-52.0.2esr-te.xpi 515241 SHA256 5ecb7476456d7ce186c41a54f057eedf740464429f9df73e6d2343fbfb89d4cf SHA512 9a059fd7cef1351122c824a71dd7e03edce19574e661d615634700d56707a0bc74378efd64f294df5935ab5b6215aa548dbe3f0e4de50abf92a8ba6d941678b3 WHIRLPOOL de4d97b7527e52196e97622e7cb6ac6f3e99b86fbf027e5504bd027122db468e7abb7389987224ec8c8ee3b71d4610aa834d87a7b23d9dbf1f76d57ebca5854e
+DIST firefox-52.0.2esr-th.xpi 489379 SHA256 7c734ccf47b8b1d12a5b2bb8129eaac4953593d62a7bcd00fd6482e18adc9944 SHA512 31632ce618266e59a4d60831889367977051fb062d2217f3f5cec33f96347726eb55934c76332d561ab96947efde2996a9d374af15ecc06177f78369a056e113 WHIRLPOOL f501494e1729f86409a943ebe0aaab313513857941395770ff862595096685b13697fc1aca65c9cbea342cb212278b212494d9f321c093491304e5630caf74f6
+DIST firefox-52.0.2esr-tr.xpi 443672 SHA256 e761c5a47ebd7ff0e65812955360c2118462782bc71dec76113af79ae261b8b6 SHA512 e99b78573575f772bc85bd868fbe64cbbb91b9120ee49a813255e682c24c269aad77db6a55f4fb5dc9cad7d954583ab4d531e6ce2e4598dfed8b73ed622591bc WHIRLPOOL 9f69743c2df89c9e2efd20740417fbfedaa5ecb22f4b226d92edb658e642415f5ef1f8f8f936fb99e9a034c0064489fb724e2d5a610a44c1814309521ec9a931
+DIST firefox-52.0.2esr-uk.xpi 495095 SHA256 71f7da8b7f9e1af2d4eddb4f8c38d51649aa064d0d99830a10ede0d7dc3f3fd2 SHA512 7e42f42dfa0b8720d158b626398b744cb9c2a8a01fc35066dd407d58fc3ca1ded77eb0607801ec4a0e6c3dba530ed5759bbb32d5776d18e9cca61cc7a75204a1 WHIRLPOOL 7f39f7aa3368ad922f612de80be5384a67295344f4dfb0f18432232a07aaaf20596adc796b700f5b991340ff6bd8362da6eec6c631906798b1666727f33366e3
+DIST firefox-52.0.2esr-uz.xpi 447916 SHA256 90ea7cd41c911a04143d6386fa6a49da1a0856fd4c8e2647478e170f2a42ef6a SHA512 5bb28cb2fd4a72e08befd91b7593212dd6a490ef3ef3ae9b644f9158bf76edcb9f46be82d1deb2f38649e02be06773da7c9a099cd92c627a43ffe93f9f2841f0 WHIRLPOOL f433a1292b700b6381210fc53207e189a07e9f77a49e66a1c2a973541264de4b328f3460aa0f0abb198395ed8179bb845989a2be2886f56576df2ca57e558fc6
+DIST firefox-52.0.2esr-vi.xpi 450804 SHA256 be25c69eb734434a2adb87a7fffdc0e279699a4bbb70806aadeff139d8c58c86 SHA512 b66694425955ed34d381e9be04225bdef4dc7bbdee39b2ee3c3426e8b7f0fd81985a8323de1563f4baa10f1ad89898e649c2d0f2726b82ef563e39d280439f58 WHIRLPOOL c7c5086e2b756cd0ca013f204ac4409d233aabe6fb618adc4bcfabd528dac0a77bbb96567e86d5c9e2f3793c3619e051254b7d3b6a2be1261d45da1d37c36877
+DIST firefox-52.0.2esr-xh.xpi 441172 SHA256 bccdf74b266637828badfc07d133f6555ffc9aef87af67e97161cc8d8b567e35 SHA512 8fde2c7ac10ed24d8a9ab738899d5c2d8a049cf92bbc16222d15f39101647c3bc63d4317cc30e594842fce25e846978ee3c9e2748c278f88fc65dd1af36b11a6 WHIRLPOOL 5e5af2f4f9210dbc5af38c391b2c3e1e24c354d4a2823ea176b817ebda9f38c6f4f32472f2ebddc3303d27babcec65ba36c18427d039e45656fffa7794d55200
+DIST firefox-52.0.2esr-zh-CN.xpi 461693 SHA256 e58fe721c0ffb19648b7cd152c97b23dddb6396f1067ffa375c5fabb8f7640f2 SHA512 00a8492f954e470dff121242387fa41b958cf95feed997a76ed3cb96a05cb688553e08bf4762b9d2fbbfc4187f5b38d704a24992bacb741cec87e477248753b2 WHIRLPOOL bcd69e60a3f134f368eae4449ba4fa5ec24a1b5f752ef3594751c8e7bf4687d17a6b0576b1bf278f49248f3ca529aa31d18a72839025840eadd3f8326d1bd58d
+DIST firefox-52.0.2esr-zh-TW.xpi 472534 SHA256 4a2b16595fa46ebd9eaa1a12778f74a165d9bdb0ca3569f1a98c2cabef2cccb4 SHA512 cbc1ce8fd42f49c1bae62fdb0c6257ab31c6d4e84ec7b9978120764e08e266eb9624736e3409bc4225bc370319e86d53101f5364d41941c5f83e057e189755c9 WHIRLPOOL 265cd986176306f95e712d1b4e3471df2c19754d5ac387b256ef4d3dca79ea28a15703c5464ef9ee25d5ce834aae7edb0082f5ea8cdfae09a5b0611437d8a08a
+DIST firefox-52.0.2esr.source.tar.xz 211678480 SHA256 05ed22738b3ac49253fe482a316ca3b4163885b03b22404ff9177b0fba950522 SHA512 a0f31479e5265c7f40d3013c3dc8368c6bdf03f21f1c9054fb2ae5557065584da433b288b493680d6147a3b11155f41bd33ad2a5d53c6eaa507258c7e00d7335 WHIRLPOOL ecb1b95e66356f808ee2dbd1528f5abbba26477f6b32708f7ac439eab2a4bb861f6d910bd7cd47479457a3e62252d16feea916288ee9615b32a08c8544ce3b36

diff --git a/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch b/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
new file mode 100644
index 0000000..f7997bc
--- /dev/null
+++ b/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
@@ -0,0 +1,13 @@
+--- a/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h.orig	2017-04-04 18:32:38.007556606 +0200
++++ b/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h	2017-04-04 18:34:02.380234036 +0200
+@@ -51,8 +51,8 @@
+ #include "mozHunspellAllocator.h"
+ 
+ #define malloc(size) HunspellAllocator::CountingMalloc(size)
+-#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
+-#define free(ptr) HunspellAllocator::CountingFree(ptr)
++//#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
++//#define free(ptr) HunspellAllocator::CountingFree(ptr)
+ #define realloc(ptr, size) HunspellAllocator::CountingRealloc(ptr, size)
+ 
+ #endif

diff --git a/www-client/firefox/firefox-52.0.1.ebuild b/www-client/firefox/firefox-52.0.2.ebuild
similarity index 94%
rename from www-client/firefox/firefox-52.0.1.ebuild
rename to www-client/firefox/firefox-52.0.2.ebuild
index fbef78d..dd2a00b 100644
--- a/www-client/firefox/firefox-52.0.1.ebuild
+++ b/www-client/firefox/firefox-52.0.2.ebuild
@@ -125,6 +125,7 @@ src_unpack() {
 src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox"
+	eapply "${FILESDIR}"/musl_drop_hunspell_alloc_hooks.patch
 
 	# Enable gnomebreakpad
 	if use debug ; then
@@ -362,6 +363,22 @@ PROFILE_EOF
 
 pkg_preinst() {
 	gnome2_icon_savelist
+
+	# if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+	# doesn't need to be forced into the LD_LIBRARY_PATH
+	if use pulseaudio && [ -d ${EPREFIX}/usr/$(get_libdir)/apulse ] ; then
+		einfo "APULSE found - Generating library symlinks for sound support"
+		local lib
+		pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
+		for lib in "${EPREFIX}"/usr/$(get_libdir)/apulse/libpulse* ; do
+			# a quickpkg rolled by hand will grab symlinks as part of the package,
+			# so we need to avoid creating them if they already exist.
+			if ! [ -L ${lib##*/} ]; then
+				ln -s "${lib}" || die
+			fi
+		done
+		popd &>/dev/null || die
+	fi
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2017-06-05 14:36 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2017-06-05 14:36 UTC (permalink / raw
  To: gentoo-commits

commit:     0c0c2713cf45dbdc6f1bd30509a8e769a7a77b9d
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  5 14:33:31 2017 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Mon Jun  5 14:33:31 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=0c0c2713

www-client/firefox: sync with main tree

 ...comp_fail.patch => firefox-53-turn_off_crash_on_seccomp_fail.patch} | 0
 www-client/firefox/firefox-53.0.3.ebuild                               | 2 +-
 www-client/firefox/metadata.xml                                        | 3 ---
 3 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/www-client/firefox/files/firefox-53-turn_of_crash_on_seccomp_fail.patch b/www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch
similarity index 100%
rename from www-client/firefox/files/firefox-53-turn_of_crash_on_seccomp_fail.patch
rename to www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch

diff --git a/www-client/firefox/firefox-53.0.3.ebuild b/www-client/firefox/firefox-53.0.3.ebuild
index e4f93e1..80f3c55 100644
--- a/www-client/firefox/firefox-53.0.3.ebuild
+++ b/www-client/firefox/firefox-53.0.3.ebuild
@@ -125,7 +125,7 @@ src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox"
 	eapply "${FILESDIR}"/musl_drop_hunspell_alloc_hooks.patch
-	eapply "${FILESDIR}"/firefox-53-turn_of_crash_on_seccomp_fail.patch
+	eapply "${FILESDIR}"/${PN}-53-turn_off_crash_on_seccomp_fail.patch
 
 	# Enable gnomebreakpad
 	if use debug ; then

diff --git a/www-client/firefox/metadata.xml b/www-client/firefox/metadata.xml
index fbcda11..a0a9a71 100644
--- a/www-client/firefox/metadata.xml
+++ b/www-client/firefox/metadata.xml
@@ -11,15 +11,12 @@
 	<flag name="custom-optimization">Build with user-specified compiler optimizations
 		(-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
 	<flag name="gtk2">Use the cairo-gtk2 rendering engine</flag>
-	<flag name="gtk3">Use the cairo-gtk3 rendering engine</flag>
 	<flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
 		downloaded and kept up-to-date in user profiles</flag>
 	<flag name="hwaccel">Force-enable hardware-accelerated rendering (Mozilla bug 594876)</flag>
 	<flag name="jemalloc">Enable or disable jemalloc</flag>
-	<flag name="jemalloc3">Enable or disable jemalloc3 (forced-on when supported prior to 38.0)</flag>
 	<flag name="pgo">Add support for profile-guided optimization using gcc-4.5,
 		for faster binaries. This option will double the compile time.</flag>
-	<flag name="skia">Enable the SKIA engine for 2D rendering as an alternative to cairo</flag>
 	<flag name="rust">Enable support for using rust compiler  (experimental)</flag>
 	<flag name="system-cairo">Use the system-wide <pkg>x11-libs/cairo</pkg>
 		instead of bundled.</flag>


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2017-06-14 12:14 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2017-06-14 12:14 UTC (permalink / raw
  To: gentoo-commits

commit:     7276fa9d7f74c0b20d63da0f5c9af19ff124b5e4
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 14 12:13:36 2017 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Wed Jun 14 12:13:36 2017 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=7276fa9d

www-client/firefox: Version bump esr branch, update patchset to include all patches

 www-client/firefox/Manifest                        | 186 ++++++++++-----------
 .../files/musl_drop_hunspell_alloc_hooks.patch     |  13 --
 ...firefox-52.1.2.ebuild => firefox-52.2.0.ebuild} |   3 +-
 3 files changed, 94 insertions(+), 108 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index e2753bf..239da95 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,96 +1,96 @@
-DIST firefox-52.0-patches-08.tar.xz 10084 SHA256 2acdd54fd4268a1a1a12905fb3586981d55bad5269b8f380a54aa65fc4268a4f SHA512 974edc753230429a52c820c82d8b78ea727b1e42a10fcd562b9e4173920f369a78550e6517e32cfea64d19a92c658ef1cebb29c59165fe8aaa587ec20107c835 WHIRLPOOL ab2c1520bf795ef48e564fb81ce812e11e7f4f4a2fe472ad85b045011344f359c62ec0c4c83e4ad196d3d891eef8ef52b462a77b6f1485a75eeabc1487462410
-DIST firefox-52.1.2esr-ach.xpi 427640 SHA256 6e63e6c31018a75476683f2f8bd6f3e88ebc7de6453f4ee39dc6a2f72f42b29f SHA512 94bd53543536dc99db3787fc26c1462558bacd14baaea413a00c529f991c46d1767436d55b14e4dff45c5b31b55d32f40e0b4bc1a225ea2fac11262b539bb53d WHIRLPOOL 3daccb0e766c560e11b58ce8b77dbe1acdb667db3481b35955cc4cbc9fea2520ebfa9ae9de965ebf67138cd5c350d0a93ca3624b7b68c47ff7c140a22c54b646
-DIST firefox-52.1.2esr-af.xpi 436823 SHA256 0840811a6557ab15da539e0782888c47c6944ec80371f86025ef348b048a73ab SHA512 ce80b45df5c0b13bb23268776950ee2e4288f681d6cb374364b7c36030441d8b8e5420f6dd08223628d12f84daf4241553dafa4d7dca6be9bafa00ff94fe6077 WHIRLPOOL aaeb93eb1b18a2d235c2201d33c1bb37ab25e483e0c900ffbf61fad1aaeb71afc2cd024540d3b8651257a2c19b3a8e73692bd44d75bafa2250f726096257ea01
-DIST firefox-52.1.2esr-an.xpi 445142 SHA256 130daedf9ad2c3b7bfc8c9c84643c11a9abea92594106d8e7d566f35eb619560 SHA512 12ebf7f70d99d7d9c131c9bdbe3b78fa9bfcc4e91821f2b45bef8d9187c9bafd4be03c84beab4f96ddb6d919f31d67a4a27d625f3e7883b10b10bb63af708455 WHIRLPOOL 21001ba7306b9a6120c7ca5e3869694dbb0aeb6723e1c9ee993449fed43dd9a7b816ce6dc4a726a3da6f6cefbb659f1e4e1c169d8e05d2dec9fb47110335c7f1
-DIST firefox-52.1.2esr-ar.xpi 473381 SHA256 f66232c4280a297dc158fe739f59a9d3863e8d7b137bd0ed7d242474048839f3 SHA512 fc8e59e582313a5320ec6180da9b978ad5aee0a4f63bf5122cabf4562d7d9b954993f866f3c18b4c054b76b145d5f62ceefc26f50508b09eb92efc4b50c40bcb WHIRLPOOL 7119460cd036bde5b662e64df7ad3fb31534d1c6c45d9553643cc94b4007242765ead80df96696671d3665c784f0fcacf032fac197492111e38ff8184bda5b4a
-DIST firefox-52.1.2esr-as.xpi 486888 SHA256 b24d6637f4d513ed580ad848f11a319c25f41080ea6d9f41d9d27ed2b5d76d91 SHA512 24456e37b493aac512a72fdf83c4a0bbbd8881f81ffe68d5451b3217046283a94638db176c8d61b6f88acd476d0822f2aa8e4ef715c85a0f92b13df433d96194 WHIRLPOOL 4ec3494e791312800041d3e244289cede707d4c089e0baf5504b037b4bb39cd7818752a6f357dc30265a00065dfb230da5ebe90780916889958e6c1c3c2e3dc3
-DIST firefox-52.1.2esr-ast.xpi 440033 SHA256 d6a971d9dada695989fc6a93233a8c74976faf9c72c988e33da32f95003b21ce SHA512 35d72a452237843a6dfae502ad390e29dea5ee93785ce0e673cd468bdcd0970d45fa5cceab7a184092e722728ae79444d1e63eb66e788aa00fb3ef1be5d9bf6e WHIRLPOOL 1ad97859032b38295e9cd724ea324972001b416e239ab814a66287a9f21442123e92ed5687976b8b1b27f084b7cd70a99b66f2543b528b46c75d03b01b0578d6
-DIST firefox-52.1.2esr-az.xpi 454923 SHA256 cb569e4fed68bf63a326b9227ece6a280f9e19456e80e7b3c5aa3f87fb195bc2 SHA512 fbb33dc86a52a07036672a994e1a27bd3d04f1f5747d30fce5b5cea4f1029821ce412c92da701bf718cf7c630874fd4c44d21f3357cce8abcdfb93d53812ded0 WHIRLPOOL 56eaa4ea5110a5fb4fc88cf77085127f9dfae36c7e53748b79e7124ade3fd87f8035115f58c66a569fff5125928c1529dfe7346cec8c84ad6ff14af3c3c68e88
-DIST firefox-52.1.2esr-bg.xpi 487892 SHA256 63d7ec720acc6dc77e8b735156b67d0b98cc130ca6160b924047c95da6a0bbb5 SHA512 bfa88ee7f01eaacd315abefc9e1db89dc3123a4429589ec9ba9487bd71f375dddc49a5e005f2e0fbd3e2c5fac7bbd1b6727b7981639df97c2c1877bdc7e17dff WHIRLPOOL d7b9759b4065240910a7e3f89b5fb230d54c5803c4e89d06d09f48539ac39f86ede6fe730905852b3a133e07efe98076648c567f9d2057b337db7bb85f446cb7
-DIST firefox-52.1.2esr-bn-BD.xpi 511994 SHA256 a0c96291353229cf7a06492eca051f065bf749598e1d1c1ebb3e65740765fd4d SHA512 5d737a60bbfda6c52206d1c05b9bc3c5a486020f33c6492525498e054013ea1aa2f391579103b60e42422df1a3e1335aacd7b02097858a67e24e10e9d132c9e0 WHIRLPOOL 2529c723a02e90f38539e01146a0abcf9e54b1408d1b8ccaba3980d786ec2d888a29e9ed53034e3a372d2b0b96d0a36370a7df37c6b9913c5df315e474ed62b5
-DIST firefox-52.1.2esr-bn-IN.xpi 509375 SHA256 68203cf59545ba7ad3d9a3790d0f1479c4d73eb8b201d9d46ecfbb15ee4ecbf4 SHA512 581f3599ff9a54e98a6d49d6d40d914bbe5b27c084ec70a560fe67779f3d5087f9921c72d7d70ccbc412e89d28a278137dedaa5838a308a1a74b1c72ee7ddf41 WHIRLPOOL b5061cff600cbf29e2c9a13c5bb4db5803f5fe2bd941e41e73bbcae1a395839abf3d69b29f71e8cd97db20840e8fb311f760667051235fd27fe7543016cececc
-DIST firefox-52.1.2esr-br.xpi 435483 SHA256 f9bd1ddab71c6ebc25475cee597ef43e2292c5adac1f44d2c8a5be99460c9156 SHA512 aa929dc1b3f587b476f902a4676876fe9bfb1f1d902310590f684cf72e093fda8e47c0bff9d1cec6a66e2b774b181324c371cf0405ef059c9d850aee3f183779 WHIRLPOOL 6b77a238c7d66abd538f18fc3e2b77f8f2c25f3f29b0f316459a846729fb250afa6226dfb8baa3b5a339b53fcf19a96178e1c79bea33ac9818f94b5a2e533788
-DIST firefox-52.1.2esr-bs.xpi 441782 SHA256 05c75eb9c8b4e92403bd1b944e664daef3021643dd8220b18275f4f0e8464570 SHA512 5685606666daaef3b778fc5a3ef01fcedc7ccdf14f10033aa12d3c16a12b7e9614003938d9a0a86bf44bbe722d32192f5bf92a857ac8662655384dc716afec1d WHIRLPOOL 90ceaa84e070cc9ea60488f37d6588bfd1b613b04c718d136aa5f3e3fe1466d2987e5e2e30451a9d1a3a7f72bc505ee1dc96e215f406d8df859fc2e095dddfeb
-DIST firefox-52.1.2esr-ca.xpi 443304 SHA256 84b36029b1c6644fa5fda1c0b51041e19ebf6b4300020c151371321d8ee75150 SHA512 8105296cc67334f5e55e4ae508e4ada5a40f76a519bcf0972b78f91d4653be174923ef3a756cd90b3d2a224135210077326c9420bc20c4071f274b596172d665 WHIRLPOOL e2a71b36b0432493e6c31f798b716aeb2dd41a55bb2db99d840921b4b35732e56aeb18b57abf380a1b5f9ed4d07a204ffaecaff11f9361354206b9d8ecfb0877
-DIST firefox-52.1.2esr-cak.xpi 459184 SHA256 606f582e09459b3c0a10c07e32cef3bdf9aed4af5dfbbe57badcd4f53242212a SHA512 9ea861b339307e088ac23e6835ac16328b26b27a5f137fe4891d11e01847fc07a2dccf85a96910c6614154f081daf0e2fb9246360d6b2f1a42ccd9d36c791ef2 WHIRLPOOL f333dc2b13323e48d3e697ab4024014e83fb92f02a0044840cd2ee42828787626596d650faeb05f136d2d02f38c04fd2d492b5cff3501d54a175b54d34cf66be
-DIST firefox-52.1.2esr-cs.xpi 444075 SHA256 241c60ceaaac71783bb6dfdde51876130ccfa09360499a0da8dcff56251a819d SHA512 0f9104889bf2d47ca3094230d82676cb1fe8214a3e4d66d290b1b5c89f3b27ee80176bacc59db14c720e351020ceb4a09e36a3b09937887362d72853c135bbef WHIRLPOOL 0df728cf1e7885641068d7acf44faaf9b69a0cfc248c653f8a7c898ba766d6472f123904d1546f1aa611c657c7f7b9d717255ad80c7e0f57f939fcca410d2474
-DIST firefox-52.1.2esr-cy.xpi 436583 SHA256 34b277fc043114d04b55de7b09665d60d96242b83078304db4067673b5e163a3 SHA512 e6baf571bcc9e5f9275f8e970df3b681008531d16b1ef6a934b6e3da3e3953974117e6a00cb2d9ddb3633cf3c32c87fbb6f596037f6ef68007fe5dcb6cd6fcf8 WHIRLPOOL e45e9cb73557b81aa491e076cdc7947e0c3797c4fcd5299a14b9560d907aec6348cd16267f06a7b6a05e9726843338d2821af4a4f7680ead48b9138ab718700d
-DIST firefox-52.1.2esr-da.xpi 424394 SHA256 c615b79dc9cad1c97a8dae9d855db41ba4191ce0ec6af3ec9c3a832b6b19662c SHA512 fa80b4a583341c63fed67b1d6bdb67bc19b09ffd59a6ab09d785a78ed5c47834570fc98ef86b01e0f7ef7c184bb2a2cd2acc6bebae2780254bcb109f9a91edb0 WHIRLPOOL 555303fa6a2c2d9f4637e50cc65765ce594814e60b3c9b04bdc06633216ae7890990a47f768e6e0aa5c85e2b71057b994858739afe1c426176f2094df48db4be
-DIST firefox-52.1.2esr-de.xpi 442478 SHA256 64cc453ecad956f94c847790c1422483972ce6b9a2dcc84d91e7877f2e45e139 SHA512 be4963b2f793dc6249624d2bd2a5a6921556c9fc33f83481e152ae28dada506fd37c8b892e4fecb5256173e8ba3f596b1e246878d364043196dd8ebc2b6993f0 WHIRLPOOL d10a140db87198175a13ce47d7111a3f107644770b2b14234366b6635064e3536820edf7cfa7e16e037678252756b1d3a3eb74c1cb40b9f2ac3ad0143b937a06
-DIST firefox-52.1.2esr-dsb.xpi 459424 SHA256 26f0d0313458b1fc54d54f172512d9ab67af3ccd5ab3fb39bbe4e5684a41ec30 SHA512 f225676310701e4159a67cbb0110b847a4730d273078f0e0ed8cebd230d11a42a976d7d17991d57f0b12d087b5af6c78695c988ac05cc2e329cef61701a5ea7c WHIRLPOOL c1987c1942d06d08ab281b8fcfeb5b8043b8f4aa026669835b088efe138b72526835888bb5477e91145bd8158ab9ba6fcae022cdb5505eaf4b7c08ba5b30cbca
-DIST firefox-52.1.2esr-el.xpi 516592 SHA256 18606b3f9447e008b8af1e1c7e167003cc8c038aa7f298fd628d4ad4cacea889 SHA512 1c4cf25ccb2df044b4268d2c5c8c966db70982d567543abbcdd191c09edb0131d16029bf5731692680b6646d13ae3930aa5c73945bf24b80e1c16c28afab90e3 WHIRLPOOL 082b2f8b32cf654bc342e53830f433535d2751bc3fcabf1d7ec82fbdffe21199c621d2f1279d405b2486f946d895c8f9c77647e12a6ce17fcdce64ab7b86a01a
-DIST firefox-52.1.2esr-en-GB.xpi 419323 SHA256 32c1542b100deaa784cfb1be850d57d2eb336d54c6081f7daa4ae1f5a087569a SHA512 10332f1b79b4e38d5e0d9f33d00a40718767672be67accec30cfa520e9a764aec015cdd5db181bcc7d135458c1381ea5480aeb6010701f517b7076e56df4a8c7 WHIRLPOOL 31c32031a2be6fd4abe2d65addf722a67cacb3e302b6710a6aaa2f7ae4fc4ad714df93091fad084eba346263dbe3c9bfe5e53f92f6be1c6c65b01603e9d535c7
-DIST firefox-52.1.2esr-en-ZA.xpi 412212 SHA256 a6ee081b4e77e9fb9bce5658984f475e31de1316b53eda250cdd52fc53830a66 SHA512 09803681c37a48f70f9b8c02ad02a9a0465a9169773f08fdff94f4582a87975b4a561b3b99abf3183d52d105fb24bd68774ccfd17c5f72d6b39290732aa168b8 WHIRLPOOL 6ef402fd7a94fe7579cc9b150fb0c4f61007d097915820875c10b88f67c48ffac5f85c1144bca766194d3b6d85660d0c60827857866a9fa2662aefc74147d8a3
-DIST firefox-52.1.2esr-eo.xpi 437473 SHA256 76f6fcddd8c0b405319023bac8af5ff5645e884fcb1f4481222710c1033ee46e SHA512 175dcd3db5cd2a793746dc583bbc21ba5e57933978bd5e2c1f6eef27c1ea44600650cd997cee06a15ec9923fe7c928a76ec466be6e51d8177a94899b5fbc61b1 WHIRLPOOL 56e0f3ce733363e8865822feb510eacc8a2d9f10a83360da1ead334cf60c2b6acb49c1c610f554f1bab39c52985054318636f5d92aa13429106e9b84806d6860
-DIST firefox-52.1.2esr-es-AR.xpi 445925 SHA256 28c3696ff63d47e1019bd73a5f96fb6e692f56f96132e297590515e22e444167 SHA512 4445a7abbe25d4a331aeda3b61b55e13b774c9df961b02d38c18ca0584a47979a0bb2fb3f522a59a7022b6109e5c2962a079d4fec6f1ad075acf732d5227f617 WHIRLPOOL 5514a87acb110c5e86fd2ee3bd360c568bdae9177a30da86899b809163b739c70fba1765eec927f6c9a99435e2997efa02b48ef08f109e90d592527d5287f6e0
-DIST firefox-52.1.2esr-es-CL.xpi 445676 SHA256 ee885bac2037837b25d6ee687bd0c2475ba7f124f400c49cf32318691fd8a94b SHA512 6875ec3a7b8112a8e71969a0c057feb9b05c825a9e5046236ff199e972cead98f2935d9a58552bc347bb3f4b6b3ac324dfc8e4483275d222eb8d29d552c8c253 WHIRLPOOL c340cd0ccfcbc00c937d0d09f1004d8d0592045e47c009d2837de799caafbc6ae047644eb1e17c8d2e6e7ab3265b1bc1c98985b4f4a327cedd4f8b203acf1566
-DIST firefox-52.1.2esr-es-ES.xpi 344875 SHA256 f2bcc16a8162260776e51b8a9940efcc10eceb327f05336a932d5f323368890e SHA512 2f5fd25b66ad4684c5adc4c96f587378a2e7869566e56957a15326f48fec553278ecbdd1d370550458ed0ab34a3f3ec09177bad3c9f9973416c47a91cf7a1fe1 WHIRLPOOL ada046593142d45a5710dab43449c4528fab013baed4e51d33b264f78748cd53f646be32dc2f8ea5d940179dc6f935e97905cb088d04edb848881833f3b43a27
-DIST firefox-52.1.2esr-es-MX.xpi 448384 SHA256 cc08b44572131a220ddf5e690c12a674376535875c615922b93a44b0a8b64555 SHA512 2e800f63160ee9ec56fe464436d1218eb650751c5b995eff9f242fcb9798dbc7443b1e0ae94d47b1d9c012761639f154ab3167a5718902cefdbf1ccba556d5e3 WHIRLPOOL 93557f5748beb1603b77ce85d63804b6a12ccaa8b933c2ba39ae79b508cf35e624088a4bbf3ee91d04981cb7abbb0e8eb16bd5cf989f851e4e62016f8f6a4f9f
-DIST firefox-52.1.2esr-et.xpi 425113 SHA256 0aae66e099071859cf4eed3217d73121c98e5c3474c3725f93c78dc0d4509edb SHA512 38a9e63933d38a56209707f312e05054d409fa3a7c28c9c7c9798205e83d5d2f7babcc6aa7396983e14b96f51a93c50c1f7841b228d6ac246bfc8b2f8738b7fc WHIRLPOOL ef9c421b29bae4199fa795336f999d2b22b15ceabba8e8f049ba2d9c71ea93747e53a6b6f9a17591560fb6c00cce9b47d5d9a764c79bffd1e470cfad566765c7
-DIST firefox-52.1.2esr-eu.xpi 438479 SHA256 94c98fe541f550881f718bd741b555bd934f97b9e0f106219ca84beb80e8e235 SHA512 35bb538cef42fd73f54036df669f3f1d6d291d71d6ae4784e71ef8b5b1213c215402aaaa101620d7513e8f6252b8065fef6f2cf0eb15321cbb6d7f0de9773cb5 WHIRLPOOL a5aa9c97999517e2591657d7ff36814d9a0dd2197615e31dc8e17c692f781d6aad17ed3c1488ffdaf11804401ccef95a5cbba6ec7fb9ab30d678f7969ae95064
-DIST firefox-52.1.2esr-fa.xpi 491343 SHA256 c8bc4c536f0eb98253d0cb04d03203acc633f7360971d4203bc4d099ce2d0eaa SHA512 1c7a690d1f7793875dc9aa84534c04b349aa28f34b0f63fd02f860941d6483a7892d6af88862e8b075cec25e1612221f0e3936399adce2d452b651ecb6e0d76d WHIRLPOOL b9f7c9484769d4437b0feaeae7c10daa7ead01a743014b009c49e2776c12fc2ff089920e7818e622b8d9fbfd31fb3c756dfe1ec1cc1d00146d0ac55beb92c89a
-DIST firefox-52.1.2esr-ff.xpi 440928 SHA256 1edeb87796ab9a92e4522832ec962c20e1aa0857a407118c597b3ebca51f231b SHA512 1a2c433232056a358263b949f60bc573a477bc48a8ff37b2293ba06880867d563e85b76e34cecde17e52db6b300e55efc3620e64ef1bd899c784c77e3e538b04 WHIRLPOOL 6df2e27414ba4685c1abfeb875fd90fdc8e9252ada1c2a5bdded6acef4097c344195d6e7c3c2f66c7218d0d4e18ab89a770dbcc0cf49c1e14ec79743b3d3c210
-DIST firefox-52.1.2esr-fi.xpi 430061 SHA256 962dcaf24bbe27239c3b5a1b3d96fe37b11a5b8954237a05556215af96414d5f SHA512 c5fbd82a883ded61071b8335c255aa05c02ac49b2c1c62fca8a220f476bac8e9da16eb47bfd0d8f8d63435e8d225eec2c8bfa06f1bc58ca851cd89afe9fd1a3a WHIRLPOOL a7682a8d09ba9355923165784182300008aaaf7126e40b145089ca3e2e90b933dfd7c85c3c124081ca40b135cbd77df80f1726580c161a75af4f86aebd4d8182
-DIST firefox-52.1.2esr-fr.xpi 450210 SHA256 56c716f154f5f7469a52cc6c688b0ee37a86c1825cb746bbc30a8d902696d168 SHA512 f75efa68bd23aa443987c441a0b6a1665d775b9cffb106828a36c6d8fb0bd734095e80ef08754e55e8c9a42a84a6e0b013562a793af94fa23fae0a62682904d3 WHIRLPOOL d9bfeb2e0007e8a5be3fc6c0baa7e2d2f47dbed53bda3b8aa666389f3b52c2e6ee6a352ba039ceae337072857a43c08594a258eb92c151b0a159131d0e7dbca0
-DIST firefox-52.1.2esr-fy-NL.xpi 444973 SHA256 ea3be1ce23f549b99de19494bb6c1ea0804ef177941fac01e1a62c77919ef1cc SHA512 b6e27722485b1f5b97c12afdd264a76e89aae912760ac79a11b6441528921e9575dc8771fba0810c01bb7e5af9a455af5ccaa47f9095b23df3f3d8aea6e1bfe7 WHIRLPOOL 930f18b5c553ec3e830bfb3576b8eb81b4f917c7e95bfb14e79b9d1aeb69f5ea8b2a083f4767afb2b4c30080f26b5ddc97f1db7aa858cc8d821fd2b0b7c1b954
-DIST firefox-52.1.2esr-ga-IE.xpi 458164 SHA256 c149a7c5885cbea076d822585f2f62c2f1c9fc09f7dabf06af027b15d81c7ec3 SHA512 f91587ce8c3b890e1f7d6426217bb29982193d89e50ecc17fd7306f4fecc782dea631c59046e6f0778e6e86594331021d40a34c18522fa48fb54b71d58b2d0c7 WHIRLPOOL 14dbb9c915b386f61e763eedc4b23e9c836179e7391dbd29f2c670b82e374448df9e06e19fc011525d9c86cab607dc90bdf92d5703795ed4bea767dfc3ae26c4
-DIST firefox-52.1.2esr-gd.xpi 447267 SHA256 6224c7816d0b95d3b07a59a1ebb7707f3d078d2a806e9f565c27a42df3743447 SHA512 c7d878369cfe761c60e510d47e625014bd373fc7e5766a29111920807c90b289b5024b4338f32fe146674c3b8573e53603ce3172edd732045b0c5082b1acbcab WHIRLPOOL 2f1947246d9a5a60ea95801601f31f16a8fbb6078c9e248dc9307d61208755f2932fcb93292fe643244b6f564f540bacc10123fdd9cd82e3b689e9ba5478e7e1
-DIST firefox-52.1.2esr-gl.xpi 447295 SHA256 1ab18eacde902df416bf8a0845f306ace58223f201c3578a88f9a6607f024f90 SHA512 40d8225308596bd2ab6a80392c42ccf552397bae660fedda88671abe9b0e5da632f42d0db1645fd9c2d9a6f7c5e5008f67757ebdee151c26d9be3eb01cdb5052 WHIRLPOOL af2636383c34bef3fe0f3cb14b88d7d0eb172bd17e2feb032f1395effc1a05587947b2d2f15c009b43a389cfe649ffc57e449cbaa59c2686c0b6395e2fbf3475
-DIST firefox-52.1.2esr-gn.xpi 456214 SHA256 c177b177ff309f9dd483ff0bfce5a70a75ff9d67dd983994c368ccf65bdcbebe SHA512 1609aea9794a2d21fa61db8b8802f77b67a67d9912f9ee3495ea9356d9343ef41be618128f35052e2f1dffd6e8ca96192fe9e20d7ceb0e03985fa44d4a932dfd WHIRLPOOL 5419bcbcd3c387e299698ec953624a0dc6c3b82e50737616ef476a6d2a3eb458d568ab178c3e6b1f4bed703fac5b8553cc50758e7ffc7c9b3b6e95ea6764fd7b
-DIST firefox-52.1.2esr-gu-IN.xpi 489365 SHA256 dd7f3d01a98ded87e1af52b46de7baba6be2effb0d51ff1c95780bd37c6fff59 SHA512 e50a7f86f4999b1c9c8519919990eec3e94d816f31ded45c7afee7e1b28f37cbdec05e199f0baf54850996b443869c4194e638364136c9ffab454452193cfeb2 WHIRLPOOL 7bc80d2772bab0484d252c1c95bc496efdf0e13d509bdff63db3e7cc272244a2258d5aee1b5115e959c925e419509c91a66959125f69fcc3bd00705aff353245
-DIST firefox-52.1.2esr-he.xpi 455282 SHA256 cc22a555809f706d34d99172523b0edf171980059d361d9aed76d83f2e9b6808 SHA512 1106fdbde8e51391906dbd3fb962a27f9d03b4d4bedadbf57382d3404a6a90a1d8e7e02c1c6aa84b61566291fffcd9bc62ea874500b94cd426dacd59565fef50 WHIRLPOOL e16dc4e77f0a1cdcabee6131cc26aa3a4611ae022e9cae59e5a06564b2a6e7b1fe27ad66e93b7a5442ead1c73a865de7931af23bef6c7ec1a49b3f1044170a00
-DIST firefox-52.1.2esr-hi-IN.xpi 506519 SHA256 c1b9512d1c8b150e2d427049aacdc85f05db7d7e1f855820db30e68249a0a088 SHA512 8bf162b5d3696de5920df5bbadc37ad8cd4445e790babdcd6109794a0b0c4efb98e5f5205aff04e3a3856ba8325607ba24bd76170ca7d75819d7d7429964523a WHIRLPOOL 8d42c072ab2ee81145595d5c35b2b08b80852a7370173ab5a43ed623983b8139489a6e01c92789ee762f2749874d44b2de89fc1e784a427eb7e0a06fc2caf7dd
-DIST firefox-52.1.2esr-hr.xpi 447502 SHA256 c02ef2781b73d84ed1c7cff1c2e1a1c90579616e2a8b0aaf04f5b559a7f80ae8 SHA512 29cbb8e35ec774ca9fd950e5918c07740679c11321d06c0afd30961b025a9fc336c96eeaa9c2bca76b7f5f3f7728f0e8460237ebd6728259cc98e90e241f046a WHIRLPOOL 81217f3bc30423e58ae2fe8e4fd45c418759661a6807e3f3338b99d3e1a0263970d789d5fee47147347d2f2ee3926738acd2872e6e151656c7f8e80b57eec019
-DIST firefox-52.1.2esr-hsb.xpi 457258 SHA256 2d359d5b6896bef34eb0006208dd2518360afa8351390595a6aae440332d1f9b SHA512 0269c14826cee6578a04f18f3a4c830350124c1f791e40510922e39df1a88c3be41a6e901449530dc05dc15508a3d7ad8a240b8a82f29c37aabb66fc19660f16 WHIRLPOOL e4c9174043f4755e61f1ee0329d4927f9f881e89ef0846fa480d1849c1a830e989c641dcfb3fc2852466f4b387a1a33c7f337a836ce1a75a69c5e590873851d4
-DIST firefox-52.1.2esr-hu.xpi 451496 SHA256 aa2c2bf060aaf2d276899d8ce24e917adfc3dcdc1be7a17550ee783670d45ad0 SHA512 2404dc3de1f036b01eabae4189752d5eb4cce3d97274322acf3625239c86229dbb1921879618551244048ca6e1e7d3e449a402a4cf386727ab60a74bd8110b96 WHIRLPOOL e0f44e1dba9d7ed8dd0202f774e97c09cd6e8a16d9c6b775ab37d6dc4dbfd7879b63d70e6c2ed896d4879768e5bbf367ae32966b92b2fbe7eac1b0cb2a484843
-DIST firefox-52.1.2esr-hy-AM.xpi 495773 SHA256 bb88d2495e759fd6241d55c2e82911eba8590d1b6a32a91d3c4f1fdb19aeda2f SHA512 bc8184a433b9ba4815561d76e61e97cf1f1c9e27f84b2ea137f64aa4d021f9d6a68911b183e5aa04c046850d4c24373907b3fb7df3c4f60cc9c8d41b7b08af41 WHIRLPOOL 4435427f18b5914f6ab2125734c62578620cda90bd495752847f9b866eb4cd5af485c50c172cdfbe2a20a9f01711a6f0b6be40c7ef6f97159ddbd0be648099bf
-DIST firefox-52.1.2esr-id.xpi 426023 SHA256 1a38fec5f0d75c7732306d0be9f2030d0d6539814ef3b5c1ad426c55ca848947 SHA512 79296ec03777f355a327936211d4a9ac2b8c06da19b714c678f6ce18865239247d6427f00d200854281c0513a161df39d7fe7109ee34755270c529868ad053d0 WHIRLPOOL 89721b346b4eee38902bf7605f7f9b21c87ae5666d342962ebae34bed669bdb946658a3420f6faa243d9eb0986cea8a201d8925760de32a98a9f357885da8d8a
-DIST firefox-52.1.2esr-is.xpi 442693 SHA256 1a58e3ac6b8cbe8e747d16bc1d0e14f5f0091f168c3823794d049d6d32ccfacf SHA512 687aa69ee0913e7dda81ee3682988c7fc938b394b64e03f57c3f80ba97c9d7ce4502bd5748fb5be234d3daffe8745299b45c489b131bc91ece436b428e0d845c WHIRLPOOL 85b956e404b018946a8f98054489ac9b9fb54adfe93d4be5b91bf1f51e52b6b58acf294b5db1122761210ed4ef8bebd85509d59dbfe470408abedf080a314288
-DIST firefox-52.1.2esr-it.xpi 339220 SHA256 e9cfb15ab559fdbda026b660125840c1a82db123a62c3ce15353052b7cd92201 SHA512 7ff35804595fbe13ff2eaa5462c26a5b3596cb1bbabdf1cb8b9cd123af284f20dadb30606e2cf9e601d1a1da846816f67ae55d880fb580575d88d9a30d211c46 WHIRLPOOL 21a39a8df7c4c9e53bd4af806e3a829cd0ae4547aeab39b048732243b7db0a07f00650f640ec50351e3abf42a0b9d5f8391747cb7b990611cb2ab4baca45733d
-DIST firefox-52.1.2esr-ja.xpi 488343 SHA256 221f5b10cd54e5dd366b4bda90d5809b760852b8b25cf3f74cbcd0615d7b57ce SHA512 1db9e0e6a06539b80e5c1231d6063021fc49fa32735e18e1ccc76f690407ee38bcf55708844dcc43c12c4d1116e0cc150f956b935ef6aed1f66cea6afac5cf36 WHIRLPOOL 2b1b28d8dc1c6a125e6acd54d20df7330b69484a85577af83b5178876dc7ffb0685761cd615f03f2dcd3cece827faa7a88a671ee4f75d5c9909200febf506775
-DIST firefox-52.1.2esr-ka.xpi 475375 SHA256 a25ff799cd3ce7aa2f6ed0587b27dd7609e179d2190b945d47dcabd8b0865f07 SHA512 22f28fcb4ae0dd44d2bab160069893d016bbb013c02e7e6a42f7fb9b576dc53eb176891058da7898ada3604d67c744baf8aa9709107ea72a72f2c729aac7d057 WHIRLPOOL 0e5a7b7d0c270452a9e8e56b617e536fc188814df937b5d0719404efb00d826a57aa29958ad4b6f77224534f47123c8d2e9068545baa8eb3b0bde3b357a7539f
-DIST firefox-52.1.2esr-kab.xpi 444519 SHA256 b38395d77996e7db88829791b16f8cbd6446c494f15aaed87da9fc128377b37e SHA512 f71a3f0c42d0e9c1e3526136e5ebcc792396f67f5f76d616bdab61d1394c69a0cb04cec54cd20530e37f244c95c8aa1d550f402a3837b2ad3e01277c46caa842 WHIRLPOOL d3663c143ad21b8034c14d7b27cd84952697b644bf62324fdbae3baa6590298d062bfa9c6cf76baa280078f9189ef05af88cee683f4756ef4972d91c1ceb32f0
-DIST firefox-52.1.2esr-kk.xpi 496939 SHA256 3c708f4bed1618e655b6cd57bdc06de291ded676767eb34e65d2c287059010cf SHA512 5b61fc5a02e19874e0fc86534874357147e3d69cb0255a84d0070f8e0d2b387971025b3abf5fe0ed8edd888c2de4a372ec253d1383c3b717e030eff5f151d52e WHIRLPOOL b847466a2b4f7c83e1613c35b90e9de5d0c473078c64b3e3fc4d85870bf3e8953d5e66ce371989dfabc483619060bf0004fdb39090d7cbc8d52949a1599be4c0
-DIST firefox-52.1.2esr-km.xpi 520343 SHA256 27f14ea9c4ead1cffc36f560f8a998ac453dea76375adcd889c70106da43eb1e SHA512 8e5ae46f19fc1c3e59623c55af40756c0be6c8b2e435a5e53768ff44c1d5da1b1a8236baf5925b614ebeeaa9bb1aa83f433e6c9ea55a342ecfff583a63f50c8f WHIRLPOOL 88ce17cf9ab22643ed367b020039aa075f8eef6548c2d62d3e2e39254b9d582fd31bb1da10f8a851950cde85cdc56407dcc0a624d5698828c7fe4e03d0ffc9c0
-DIST firefox-52.1.2esr-kn.xpi 519455 SHA256 f3806d1154c581578aee37915cc983b35141791c5bf276a1822ff9272bc11da5 SHA512 c2b1a4dc166d448a9fdb9030aec19ad758c234be59413671d8f6b3810e7a2945422d7305aae619b427d019c57c722419f51d26e9ac053acecb5b3413d08a19ff WHIRLPOOL 0f2710186447ed770657b80add5fd4cb57aa57a781e4d421f0cd8eb06c3a3db62e03825f6279b313449d90bc8c7782716282c7eb2b94bffc11e47d9654bc12c5
-DIST firefox-52.1.2esr-ko.xpi 463629 SHA256 1e454aeee31483c647def1da8ac765a7ddafcfabe2ef325384bfa3507cebd9ae SHA512 cf4eec26ea342cce8797837acb969e8f3bb97c0216e25ae8131482d9a732daa4c1767b0969d960322784ebdfe6be31fbcd4d48eb770b1d7f8d406b81800e8b44 WHIRLPOOL 46d2eb3474159d624e87a557de2882785fed8e7d00c8dc802dc67a4153208452f396c84c8bc36b3af77bc6056ca79e08e7d1d1d229eacaa42d92b1ec938867c9
-DIST firefox-52.1.2esr-lij.xpi 421070 SHA256 364536ae51d3d6534c605515276bb4c5a23f17a66c68b7d78875fd7cd26d3e2b SHA512 c693ccc6a1e740a6f116159fb90d5c9c87dd691c06c8d82606517b7fdaa927c5a288e0e9be883d81d8ddea3d50a4ca50de5a861e4fdbcccc432cc6d9380fdc57 WHIRLPOOL bcd1f18c82abc4ba516bef50713140918827615892180e24caa334ebf46a09c6ed0de62f3f6bbd53b36e236b3c313d9941a695bea0eca81394b2927559fcae01
-DIST firefox-52.1.2esr-lt.xpi 452235 SHA256 07b3a27e36f2cec1e44f892c4bfe59acf7b61299c5a903195706c696e1ca6fc4 SHA512 8dfc05dd62ef283ee38b7b568c3d2a54e52b36a3a4af80719baed38e867a515dab03deb338fd01e1a64256c5ad9f3c22fcd74795f600dc45844b018afcf4a1e9 WHIRLPOOL fb8c90c436b39f558ed78cccf27f111b786466e4d46128028f6d38fa71fb659262235c55513de693cc03d1ddd1bf0001f62e3e335c0452a4ec3bbc480eff46ff
-DIST firefox-52.1.2esr-lv.xpi 448450 SHA256 5e4ad43ef8e67daa9404f2a7502b6f0c5c9e37ee3604a57086fe689ac4971ac9 SHA512 8311422215b74b446cf8f648d62acfeaa9dad0fe2149ef3de95c2cb175b7e3798239589d917fc157ea61abcb97f88ad66ac7bb2a0408d9618f2fa2d720582d48 WHIRLPOOL f8f4cf6a9507fe68189785d8503bf8e7fcb9dbd338a497374bc80b69a57b9371c932b3631fce611f3eca9ed84c915c14614df0f7afc26192371111e6750aa7ff
-DIST firefox-52.1.2esr-mai.xpi 499841 SHA256 c3f5794e02928e508f1d4104ca2c13f339b69547b7bfc921fe2a13d87a056ea7 SHA512 c69041d45800275b4434a825c0b57a30d074aeb5947f4417b535fd1647e94cf5a47d1a28cd1950366ea8c97fc9e49efa070d076fe59e2f05ad8ccb88914b167c WHIRLPOOL abc371076d65200f932350d0e2fb59d17c30a76022fc43ebec236301b46f7a6b1b4d75b2359a8a9485acd20d56210ba387e48cc52477135afd4dfb833354462f
-DIST firefox-52.1.2esr-mk.xpi 496199 SHA256 327db8540272fd64e8306178dd112e7edabf1b272f61967391797b8be9f7f324 SHA512 76d8eaf7696b5811f5cf8a7215ea4b24b7543e9e65a0c8252b88e7c4fdd46bc10a8553fd2ad7472fae6f21503b83f5f72116b17026bec8e05ec55180eacee881 WHIRLPOOL da69c27a49be2fb99004a5c697e3e0acdee10f0564b7a261d082175823fa5e9a206fb7e597fb6ede622e90b7d823b853f29e38dfad982d5e5142f717643d9d58
-DIST firefox-52.1.2esr-ml.xpi 516486 SHA256 344564cae87b117056bbb588364c61bfed62a37fba6a2f453845202fecbcba64 SHA512 3dcb37858b256e18469f64784e6f3b6dadec73b31a5201690f328cb99e31f0d1551edc2e5b2671091d884ede7a66abadcc9fc23b65de099a836343bd8107bdb6 WHIRLPOOL 0f49bd105be60a23bdbda5987693b7cefc051af338a618bb338dd2621c6158c2aafa4be676d6ea772ca2c36d25b96e38daa86670f16c8f38444ede1f75835d05
-DIST firefox-52.1.2esr-mr.xpi 502431 SHA256 7b892400f94a8d3d51e5f602f7666ac9268db82f51b3fec5606a7a18fa2eb219 SHA512 d404de9b91b1018afd5a5f9181d5e768e1e19f44faf50fe0dc0762b6229f074d7dca1da5fb88d762c9137cd7e35fe9cfe0f8cc21d8e23d12a50ce0eacc2e2281 WHIRLPOOL 6c61fe2328e3af30b4a549a6d3200de5c52ca0b9daf5fde1e4bfe703b14f44e2fd5ea81f4f999168afb1f371a79f8e2337208fe6b46049a387be4a8903127c6f
-DIST firefox-52.1.2esr-ms.xpi 435990 SHA256 1f22477d03c7d949c27a18b69a9f3b80f24346b04a54b44d74f7c7fc77540afa SHA512 cc1e54980f76be2d5c9736fa421069ad1c5767480a26d9aed4c434c48bd1ba35f8df0fc5b84c7428c179d92a93b2c1fe549de4e46134f103a8466302464d37e3 WHIRLPOOL 897e4e7afe68f7cf46714e3a773f50776a9fe9ec777769d90528f7a255603b38eec2ef6fc41d793628f66fb9b684004c1123e0386023dea69b297c660ef43d39
-DIST firefox-52.1.2esr-nb-NO.xpi 434412 SHA256 a8ef68bdccdb49ac0d47c2e8af273137bb1e06e92e6739f9f541368547d4d7e9 SHA512 6c1612bec7b755d2f071e98725aa4400ca1ce841b6f2bef0abd38aa86cc59ba922c83f7e794f738bfa3779036f0fdcf6a80612c1cd219d0010a3218b48e384ef WHIRLPOOL f3645b8b5ae53173e901b7ceb6aebaadc1a430553453c8957fd20b28d8b2f242aa66d01ed771301a5bddecaac4b2074eac1e5d26bc699b585cc9b55fd5a16c75
-DIST firefox-52.1.2esr-nl.xpi 432007 SHA256 88515d3980eb3771a0edee67ef63b642e802736a7d13d49a2f2ab92a7f621316 SHA512 c5e50452554dea9d257144a92b256da79b1d7527bfc327a836def8b2fdb8e4b220a82312940f240310e05d766acda437f03e20fbd4c887e60d2b238c00efe35e WHIRLPOOL 0e8658c0b50463bc433d778bde81cec0c10b724a1ca1ac86860a69fd9c92c8af37533a359c240f250e3923c63636bac6d0d4734e6ec4a09291db026d80b65b74
-DIST firefox-52.1.2esr-nn-NO.xpi 428644 SHA256 cfc13641db024fcfecb9f056ee646974e52bffe3936f833377749ceecc93ce09 SHA512 d3afd44dae5eaa83dcf158eae7213a6ade0a207d342dee0eed249b574f018864f06e939270a7c125136a58e3867e0d27ecf08d9ca9f7f689119e07bcf2652acc WHIRLPOOL a4cce3710533d8d5b493fac909257f32daef974686b18c88fb80b56e1b67b828761ab89b172c209f63e517746cb3302b2ca890edc4978f140687871cc1c30bef
-DIST firefox-52.1.2esr-or.xpi 496917 SHA256 0fc4c95ccdd5be47938906053e29ce0b86bac996c1f0f9d2160da89f83e0bbe3 SHA512 ff14b0bc59b89bf3b91af613c8c73cd7160380f0876345e719223cd53890fc087098523e1e1e60479dd31d6d088e07e2d129f9550da298983effd50314f7c5bc WHIRLPOOL c53e96085e5fd9fee4ce6f7dd5b7425e6c8a18f348a3f84b47e63d3903cb7b971f39bf2ad9ba825012c54995acb8bd1e58742b4c61963372096eb02b5744f5b1
-DIST firefox-52.1.2esr-pa-IN.xpi 476587 SHA256 2c97becbb99c799b35f23e58893446bf50b2174d4a3bde1e319afa6bd5663012 SHA512 e5f12206658d4effac85b1af29fd5a7e3a15053dd16a6e7d8032c685ec6852734505b73d0a3fecbfab8907967ea2672fdb3f3f931cfb250caf2587546a79c42e WHIRLPOOL 47057749daa8794a7fda804293b8c166a4da4072162648fd8a436b7fa05559993296be7e6c1cccb9a820b97a2f2d1ed88dd607425636c25b476e882a91d29896
-DIST firefox-52.1.2esr-pl.xpi 352851 SHA256 6400ddb4d6a23864422f6f9666d6e3db35c926b0cd6591d6da6c411b407320eb SHA512 c91deaf67d1e9e5273bc19e50c921bc9c8db183ad7f2e9c81c5a8ac9b79b7183f646a2097b53308aae148fe4792c016c87d2c4f2813a6f353e01238745d5bee9 WHIRLPOOL be1824f669cf8009af632c3b4b4ef4ec45c375cb8d88a6971af341c63313c7337a0ddd0a835dc1dbdb06425559bddaa8b7002caf76fbc586bd01c945f9ae073a
-DIST firefox-52.1.2esr-pt-BR.xpi 438169 SHA256 54fb6ac376972b7355fa21054be2921bb6d78770a77b1d6564c5bfe58acf8cca SHA512 924976568959f2e3bddb88d6ac40d531a1ecf6a13ab824a8dcc11b0c89f1758ffaefb3c54fcd31f50f3a671a19b49b46cca8e722edb89108c7bde0e481d8421b WHIRLPOOL 7fce274814be8b982d113bfb76054c2b77fa6cfce3b7184813d38af0907dbd6e33e519f3a0709ecccd2643158c72406f5ee9aac18ea0d57479f4742671bdb983
-DIST firefox-52.1.2esr-pt-PT.xpi 436727 SHA256 113750e6daf0f0ba2e764ed6140d28579189f1e99e867d613752a2368b3b388a SHA512 a82de8abc44a0ab21839c238962250e64dad5d0beb048c70372ed70a6e1cb6263fa700fbe5420cab8bb34acd40e44aeed63aaa3f4ff6c2f31a3c91bf284f1180 WHIRLPOOL 63291c35f1b518ce5163b923942df5727014d15d2baa8319a1c38307b782961c3898931fa3510bd5d357ff166b0476dd19890e1b4980fca47398ea3a9f23203c
-DIST firefox-52.1.2esr-rm.xpi 434608 SHA256 b70b45cfd52f44de9b3907ba1c3c221d4b53214a886b0f92cb21b66495edf83b SHA512 a2cbf4216571f192800e1e47d2d207f5f7bdeec9d4f7a01b4d0bc3b88d017881b9afda701190fea0e9e15bcad644124eda64bc65e7de3d611d413a1c59a8c8c2 WHIRLPOOL 91e5132e6858a7f79e19cc4514e092bdf7f930d116245b5e92ca6087d39b86bb87f9f49446f30b0a4955f600ac81d0cd31a97b9798628fd32fe669e982bb1e9c
-DIST firefox-52.1.2esr-ro.xpi 449938 SHA256 5488aaf2648dfe4b01bde08bba07e6ecd960ff39c85b0f63340cfde111dcb32d SHA512 9fa5816863a0139eb99cec0f590b84e46a80c1db0331f9a522b11cd319a3ef7a774977c0d2fc24f07bc2e6a676d2bc884a7269e61362cf67a5548d3a95c0b04b WHIRLPOOL 7f5cba2815d50e9e0696c66a9d53d0aab8dd678463ff1b5ea05e3e36cbb4ce471d4ed4a26a101aa7a4fb29db393a1a5d28789a9871610d1c73f1dc5ce23485e4
-DIST firefox-52.1.2esr-ru.xpi 395364 SHA256 a2ec87a777f6008b6ea3ed7062b72ef3b331c6ca9c15a1f20177a414daab5526 SHA512 543f8f8be914c68c8c91928b13efb885ba88f4cdca7f43e6c4bc8d9a1fe09dbd477597e3473e815e3d8f5043a10edee2ed6f29605e2844c9f02c6e678e418e86 WHIRLPOOL a43a46d3c04dc66d199ebec25e35a6aebdc157522d9ec15b4fadad83ba9a9004fd2bb944a909a86515a01a0787221cc9a6987abb10d868754394331d42121111
-DIST firefox-52.1.2esr-si.xpi 491958 SHA256 e615af562970d2066ce665f685b9e0a9695a98d9a3c1e779b37941519f618fd4 SHA512 58b965dcf6525e8b6c1b16c44f5e6817c1fd56a46ecc2e14b88528628c057bdc6d2f01f3f13df80b685514e200eea05b35255494b3b8ef812adeffe59dfb9e1d WHIRLPOOL 3d4209cea5d0a79881ae04d7450d3019c4c63cab04679305e98ee7c3bf0fdaa1f86902d93c1ec21b047fb806a8b2222c2200f74ca767a018a4842cd93b34ba78
-DIST firefox-52.1.2esr-sk.xpi 455820 SHA256 bed39b86536bba3d18a8655969312ddf3e5e895b33894ccd763bb6b93a34b13e SHA512 0dbf5c2c526d9b782df64e29b0592832f938640a9795f25763ada609d1af92d0f182d07405ce04e28bc4265dff76e41eb015abdde69ef0544c5472b3f54c49b9 WHIRLPOOL 291c6ff288f501cbb66920d9f92958f0f94f270d3f186e5dfa64af95727db45e2f550fd0c20b148f7f25ea3162cb916df8e5da2514d7fabcfd2f6085b174937e
-DIST firefox-52.1.2esr-sl.xpi 433482 SHA256 0bd69930c3b98c198db1a7e48a9ecf5b8831cf93afb2b84d00b1964a7ffe6cea SHA512 82089e53463a24280223ce35075249895958a52f6317585af2990fd789afce1afd56383ba4d68720f85b15c2143e9760532cdbd118805bb8157d0bbf1943b327 WHIRLPOOL 16c41064ed9c1be544a8a50ebbdc9acc671a146a31fc0a7983abdbd274ac2b26570f543fb369ab8d0c8e57542bcdecff7344d870c83556a7c86a33dab907fcd6
-DIST firefox-52.1.2esr-son.xpi 435127 SHA256 63ee1cab2c7eae881843b20297c5abab15185d95b2ed1061b7c21c0e81080212 SHA512 5190fa5764090ad7d223964a46cc7a84fd7d6ff69f523e98e254e82c5461975cd34440f7e45ca9cbf0f12ceb50201bedf44b75db9b66fc6ffe38312badc9173d WHIRLPOOL 81cb49968b3116bdd0802fcd61f7701d9b0dc61f8a4108c86930d62461d46cd14f36e3563529c23d4a8447bdd473a281f71bc18554038255116972dbb63ea4b8
-DIST firefox-52.1.2esr-sq.xpi 448156 SHA256 22f4d92fa7c02eff4b0976983c25d151ac3dd6a3b85f502714cd607eec0c9979 SHA512 9ffe4ba8517264fd764b343411391a1377318eebb23f45c0391ca8440e2b96ae153bf559474fc23293187d6b235a8edb842bdb95061f22fe0c8cbd2dc78963db WHIRLPOOL 4f92a2b38dad46adf822b65fd1b4a9b1538b258e588bafb9604d053a0bdc907d2bf557aeacb812d24d270400ed974bbe022a26ef28f2175bcb2cc3b0c3f9094e
-DIST firefox-52.1.2esr-sr.xpi 463394 SHA256 5f3db7014bf08c80cf45adfe14b36ac0777b34497be729b0495a88b708df5953 SHA512 54b84b465840b0b8975981549ddce8e432454447a66eaf25e32255f9d1ae6bee109ed440992cd460d375e8ecadb4a554505ae7dc7850dad9bfbedebe196ebaae WHIRLPOOL b1a772ae6bd03b6f8f405bfae37f1c52c4a3de5c4937696f26498a878b23b9a2f731364c4eead2c00b9a5a18afd0c3ed358abc8a53d88a74fb697f4b0865ae95
-DIST firefox-52.1.2esr-sv-SE.xpi 441181 SHA256 c8b78c6eb3310260de8e1bc3bff42c647da6b46b774c42651a34e54c8f6a1f0f SHA512 a8dc93e6a841db034871085d61755a64f70fce7c6210bdb7c89efa08cd38f960decca82a4ab7e2bdb42b8e366efa2df19284ad901a712320335166a6019fda03 WHIRLPOOL 759dd1c21666bf53867504bfd3dd070fd3b55e118d7a2403d5f04a3abdc64f916c37eed5173b6145a966cd99c2b1dbdf4a2ca3cdc1f0d0d4fd0849ead4cda436
-DIST firefox-52.1.2esr-ta.xpi 494799 SHA256 d4cba3b4eeffe4d538a2d7c641dfe022cb0b12b32eed40824e0a63216f610207 SHA512 b457c58a8573478c6b2b1ae762beec2576ede6856f5c62f3566725b3c2c81364e51768aed8b98f347c7c19f5ad3abda55ede5769d8acfd03c2aa0788be07f9b2 WHIRLPOOL d7106d88a56ab9ffe9f2db93d1e444bd17da105d949fcfa84172634b43b2351b47cb99a97ab00a56b1cbd36d5e8d9a7fa4e06cc497c16ab9c36ba28234ec0818
-DIST firefox-52.1.2esr-te.xpi 515241 SHA256 26194b24c7f085600c388e46440464ec1e1adeab73e400268adbd1c38f41ff38 SHA512 5a953a0e24b01de63863d9c5e4d0d47eb4bf52adfc8e49269730006e4cbfb94589df10849d7ce1b7fe794befb4bcdb8d4725640b91ac51ce250ebb7cbb1f24d6 WHIRLPOOL 899072022b5d165f4c8ed4c8bd18057dd18a0bab333c844a6ee1f90845f2b35c4d1768f73ffc939ace42d16437955746415500ebbb42d8e33a41397ee7d99f05
-DIST firefox-52.1.2esr-th.xpi 489379 SHA256 7a483f1131f5048e8aa91208aa7553140a02679d510d5bcb2038d32b84f416bd SHA512 f9451d058d1ba1b19d4f6b59fb8bb3cf32bfada80ca02f2a509e88ac298a00ae8334198d3108e015340caeff3c54262a2dbd64b77da2ad61485bcd63b10a584b WHIRLPOOL 3657cced378743b28271baf0bc26db6770b4afe311f118222402f7a10ab61506257f9b12c5632b375b0fde2a1efcdc01843fb48441a2c716c36ef8e0e112378e
-DIST firefox-52.1.2esr-tr.xpi 443673 SHA256 e3175db667074c30cea7edf6749760c61988fa93bfd46d6fbfeea2af3bce8119 SHA512 225d70679223542a47653660dd5e39c9f6b7b86e4e094c9320504fafcafa88db09cb4d20539c3615fdea73b70d50c8e072b2557d877ccf14c7032cf48822aa45 WHIRLPOOL 45eb057441db1c1c1656fc22cac0c17dc2f52ccd3295e276539ed048a0edfe59a300d9fbb1575f783d4ca01c24ff8631a3fd3b962dcff5587cec3361320c6877
-DIST firefox-52.1.2esr-uk.xpi 495095 SHA256 765c0a8f5e2e50c9ce69c8244dd5ce8c2485900b12382e436a0eb10dcc1f43ca SHA512 dca0df6d08517ee03cccfed2f9c21d6b7a199a4999385c5ad29c12ee6e00d29f6c7cd25b44cf0cf866d3862692392096cbc68891a2fb84fc3abed36792adf6a2 WHIRLPOOL e5e8e66876b9cb20b9c1bf06ce38e0761cb01763dcc407c9c907619b6da18291d3e87b1d83c8ef056f43f980a94dcf7fc9a2372b128f6b644b53b6386e14b45a
-DIST firefox-52.1.2esr-uz.xpi 447916 SHA256 747843ec27dc7905ebf5c1984ec4bde9b838480d04c496b7acdc152b45d4fa07 SHA512 ab46a9245c4b7446762535210178ad14282caaa55108dfdc77de4d69831992b6d21a66d6bf12331f20056a16e1ce5dc057f371a3995320f567463cd974fad2f7 WHIRLPOOL ce130a65c48d13eca7ce28248832aaf6298c9d53d806391dd992a0d7fdec6b6c7d50bec15c74e5faede81d6671d36d5f63a480950d382a331520044bd12160b4
-DIST firefox-52.1.2esr-vi.xpi 450805 SHA256 a7ea8a77fb6860eb48a582e37df7a51307223c5e3f3096cead181c2da7a84135 SHA512 9afb5e2190888a0283883a696ac1869e63ff50cffc0bb40de486cb60f9e8d9aa41f4e8e21fd6a71b7955b687991b5f0dcd060d4c949ada268de9d73f044589b7 WHIRLPOOL fa02e5e5827666b82b0f33925509975a1fd8bb3bf4b383e6e11ef58d948ffa1f0c7ab333b28dcbe23cb38fb84839074721cda9b9dcd9b34362483a6fdbfe805b
-DIST firefox-52.1.2esr-xh.xpi 441172 SHA256 a031421901782739998f630dc1e97f6ddf9134c7236532db9ac2d201ed0f5a14 SHA512 f30daa52bded2f406b84424ccd01fefae463a21bfe292933524f6cfcc44e11e7397d409ace8f3c13b4980a010753b091babf0ef2c48169230440c60d2480cded WHIRLPOOL c938f8c56d6cff6e2d4e15b40c222675634bf568af258084cb92a7277a6b817f9fd59ffd251d77d46656e03486b63dedca7b5224d5be3a37c5f6faf00f3a4fcb
-DIST firefox-52.1.2esr-zh-CN.xpi 461694 SHA256 3bd231cb050c37904d42efee813209572df9aee0cca11e8dde097b0fc8d98a3d SHA512 8818c3945d4ddf3a9b22283034143fd047ed14e6da363e5df9b501e9253e054f632486810048ae7c0f78702c95a227431aafdedeefda8db607beb3367839e248 WHIRLPOOL a522bfc3751d7d999cab5ad158dcad1755b2d98596d6aa681e9e448c6249f926fe06683ea15daeb8ecf65f92af9185ecb62ccb36cae905f2162fd2ee62ca614a
-DIST firefox-52.1.2esr-zh-TW.xpi 472534 SHA256 7372e838f62ceb8201e528341a177c496cd9b713e66e746d7131ea14d49d3b87 SHA512 6f46a390162a863a324475a88a6c172b24c529d0e7f6a65e08ea613db537c0628d521e1d503bc3ea4b0d32fdd77f7716ecaa3791e9481e39bccfb2721456b1fc WHIRLPOOL 2bdf751b327418bec7ce97d59aa0d611e0c9ba970c5f5742bf11a6e322f58d29e67abcf986d628e1b43cffe83b689d22a8b373f5419502145edca164a51f270b
-DIST firefox-52.1.2esr.source.tar.xz 212168572 SHA256 388e0454d69801f0f2010f8f93b796420ec0493fbf138fc659dbd5b497b8373b SHA512 76362738f6db82a41ff6af4e12a15a302068a5ce10d23739f29375f3279573d0ea43ecee9d2e46fce833a029e437efcfcceab9442c288560f476e0cff2ea9e1d WHIRLPOOL c6463407e102077a0818b525bc07d9fed1ad5c5e5977994a2fd173b7ded4420845db94c00e74e0cd7d9e2386ba32bb517e51945708aa5ed6d52b48d92dfdc900
+DIST firefox-52.2-patches-01.tar.xz 10400 SHA256 18dbd0d6bbab50918ef3341b739710d45a45efb4aa6cee86b4b8a620cc590b93 SHA512 85cc57e27c46c3243deedcc21d248babbd9ac6c144332ac70dd6e00161fb46584d090683bc1e066c0e9136d6ede5a4e30ccb68d83cad448f6b0d8223c726dafc WHIRLPOOL 65d351f5919b897af516754df0df57b65789d8030280a35d9ab1c2e7790b2713aaac8ad1caaa1ee42007aed17f971355d7f478d134930d0e1a6148a254dd9bba
+DIST firefox-52.2.0esr-ach.xpi 427640 SHA256 27118787ecf565c3a07101074f100eddcbc86d0a7dd62fd5f0e52ae4ceff4c7f SHA512 d7101b47d7de77e252edc43cae745be8884ae431caf4c8ea9ebb91af176ef145efc73264a196f967340b7ca6224384c75673b9883b35a1f6734d8f23bca3561a WHIRLPOOL 2f642320c9e83a55fe6b97888fe5156778b08400c23f57040fb30e639b590626c8f1852d4144a48134c05d384abd3708822235102930bcc98c337c5fafdba598
+DIST firefox-52.2.0esr-af.xpi 436823 SHA256 61d338f0cb09da9fdcef7addb8122a8eb231185681eb84b33799818ab3372120 SHA512 3177d0592efc8a0cf49bfcf9d5411f97d326fdade7c91387f656b02cb9e691e40924d965126822375ce8f1c117a93d650806d41be91f585907058e4e66cffd78 WHIRLPOOL a0dddb61b1ad750ba1a51966949f9ddf757a5289350842c8cef33096d6fb52b367859582ae77aa233a2926007635b7e5c78e6d906d24941b0ba924c7aecb9853
+DIST firefox-52.2.0esr-an.xpi 445142 SHA256 5dd40dd9f0be8485b150af966f193abfc3a301025dcc927fbe28fac384bd8a40 SHA512 09c3241b7720a8e41a457d24b699bcbe38b2b5c491c1d0c856e3484b1e7363c5eb5bec4fb33c2e98f5469399f5f759845c7eb3ddf5af737e04128a42ce1bc090 WHIRLPOOL 1c570bbae63ba30be034a9f86a838d7eaf91971102605d1e190365ed7b044db31aa9387dde990f693ff7975054d5c8240d5688ea86c21fe0d5e38c1d71506983
+DIST firefox-52.2.0esr-ar.xpi 473382 SHA256 6771ebe9f0496fa3e7642cb3d3eaf0319e1e4f3df3b2a84e6f7334e388b5e32e SHA512 4225196936ba8415ba53ee02ef8b528e81e230f6ec566dee94212949e61b5815860067b55e30ec89a4d2b05b2e55e03de955ac544652a4cad9667d4b77652eaf WHIRLPOOL 393af23cb638f0ed7a0049b3b4b24cba759d47f9a9c7aa9f2d31ed3709d62cf87496d8a5d072a45b6c442d6256037f6a623adc3c999c62f4482a8af6ba463934
+DIST firefox-52.2.0esr-as.xpi 486889 SHA256 d99937e0a6ef54578e61e8309d4feb977e1bca0da801425a22af4db590c6d00a SHA512 5fd693f0715170002e2b6259ae77c4c989aec8a96fd214306773b1404db417915e8efcea93756cce5f7d9aaf45e7f74c31384185cd4dec1417df5fb026cab190 WHIRLPOOL e935365f350383da49d65c4f7b7832b32b26ea307ae27c2e3c22c41cf56a0e2e23d391be1fc030565c8bdc563f5c0979362a4066671290430cff628b34aee265
+DIST firefox-52.2.0esr-ast.xpi 440033 SHA256 5ad4d0cb1a22ea1e2612a04332f9ac9217086df44244dce131cfd53a85c14355 SHA512 cbfc878d8a763a0e3d33c32b2da22b9adef1a949d298790a0e9b3d9ac10c2af1632b9f712c3f58c88c934a34487fe9450c7d65b17be12ef07c1b56517d22fc35 WHIRLPOOL 9f062b7a289714724cb130dc9cdfd99379676ea1bbfe6b61b402ad76867a5ec931076931b03336672d93853d922afd596baa62b775d56a1a002f6d30114e8cff
+DIST firefox-52.2.0esr-az.xpi 454923 SHA256 bc399d416cc457cca175ebdbf903b9835536895c2cdad517977222daf71148c0 SHA512 d4286ce71377c9f196d63021e7cfb342b2ec8ffd30b0de6c22642397c1e6eed883cfc4b9779b13d530816d456292bfaade3358686061d7a16462594eddab0c56 WHIRLPOOL 352627c3603cebed0b79db8d4218c14fe9a9d09cd6ae472562538646578c95cbb001a25044fde6c86cc1ac0f8fa1b8820e2b91700d40ed8f084f97ef355ae5be
+DIST firefox-52.2.0esr-bg.xpi 487891 SHA256 4be16e46027066d5e699028a4554deeb42f56cee53429d337aeeedfb0ea7156c SHA512 a7530d6052e94cb78e6c6974ecc8fdae5541ac2a80ad28fae3320a59de2fda91bde420f546c0d0cffaca131b2b13ccde71ab8876ed8b64553d0bbb128ac2bea9 WHIRLPOOL 23a662883677fd4d811e293b3497fbfce0a66da1dfb3dbc48f5d60701af7edfe725b0acdc528c5720df47d282a249cab5aa7d960a317ad426ab1c1e464b305cf
+DIST firefox-52.2.0esr-bn-BD.xpi 511995 SHA256 7ac687143c25a67bb42c16bd3f53cfa0bb54379f331fe5de23b759f6f80b031b SHA512 0fcc696f6b067e1d173a3b496115ba9deca5c4558214442fb8f9040f314c04ce33f97f0f2c339429bf41e1ebb0440112bacdc5ac2dbaa884ed869a2ccee50525 WHIRLPOOL a26a96412c767cbbde2ff57f451d20c5919bf750c0371984b475b1e6e07fc165593dadfd0a0e9e79dae9f3f2e99caf4c92c52eed0893671bce1370137780bf23
+DIST firefox-52.2.0esr-bn-IN.xpi 509376 SHA256 bc957e819790c3592c0d6bf32c3df5792de7be16c341698b3378c3f8948ac0b8 SHA512 7936f8de7ae9912286cdd78afcffe42fcbd814671818f6d6ea1694cb1d1367dc400441ebcb808122320b86b7d32e9fb0f7350375158316d8256b8785c87a50af WHIRLPOOL 648a3a153fc65411f9fa75e94c6c6e8de22382ff3238b94dc31eb2e6084221b110d43732cd48ca64f5d6d8c19f48ded38a322e53c890b41326e83ad91d1994bf
+DIST firefox-52.2.0esr-br.xpi 435483 SHA256 01f46104cf0b05872168db8ad75e735e828c9cfd5db9993f699579b2726a798e SHA512 9e90b7e460ab6e4a0b8a65b3e4cb1831b6e2fadfabda38798c1a5a762b11592012e6c179439f1aefa1aa565aa8a9137a2767f4244beebdf6a90cb009c287e115 WHIRLPOOL 77441c1a1fbcc1043a8442d270990b1c666274886c60ee626814cb1a50d97171105aedb15b0fccbed0355445a81d80917c12bff14ebfd8e9ec8daee06a8c6d9b
+DIST firefox-52.2.0esr-bs.xpi 441782 SHA256 283db0643d3dbc6b7e8631f4bc642420cb3cd110a2c3c609c4a2b89b197b0f03 SHA512 7380bd274e79e78914d06b14ccdadcef563fe2a96aec7ff622ecc224276141c2eb5804a5d0f4e1a2ece64fd8e885bf4618a4c4a86bae31c278d2a56faa99f6a4 WHIRLPOOL 7cd8492765f0c8a8bb96ed0cffd67f78f3623e3d397c9a84ba871a60776947c855f68dcca9cbd2da7b91bdb1d7b092a29e2f820d225c45ebcc0f9050d7bdabb1
+DIST firefox-52.2.0esr-ca.xpi 443304 SHA256 d71194a6236a3a450263a0bd6cf23e2291451b1189dda18666ac5449b75ce20a SHA512 0be9fca57407622f1f898e4192f159c47e2d15f555c8d32de283e7b45158bbf1df01d78031f94b95978ff84a0cae77632ef6e1e8c8d2dd21ec169ec19149d6bd WHIRLPOOL b3780af6f8e687d513ee37e36244274c678dd7b34b0ed22af56443f2ffb7549fe549871139b2da2d598e7de302501a29d2a0e4fc550f60eafceb9037e9c60679
+DIST firefox-52.2.0esr-cak.xpi 459185 SHA256 1f458446831bbc47d87a975eb5f989e5aa32b8c2fd369bf6ccabd06d34149ece SHA512 dede64386124b276588d198421890b925f5e16909832fe27988070c7702c2fe163963af7707af6cd73e7b8c67d4eafc65c41fe2a16e591b70129a77d6172de08 WHIRLPOOL 1c99a82c59c4253520ba8cba8b26e50e6e163d9ba05db36c3a0659d8b461dadde285d4038c04e362e5c6aef56be43c3120180e206aba8705abf101c0ef2e604f
+DIST firefox-52.2.0esr-cs.xpi 444075 SHA256 1745ed60f7a6711d8fa9a238f27b36e469aa327ef2ad675636e43440a6119804 SHA512 26f66e44438fe15fa87aea4f5bc3fb3a451a5fb301b87e10610bd647058c9eabad4d19cdbe42d500a74fcf23c88a7071c7a624c72c9e1025c55ffbeb0fc20014 WHIRLPOOL fda41cbfbcd563c700fbb0a54a2a4c25053a2f760094d620696f7b70af32ae736b881fc41915af555c4df7c5f4aea4226cbb14a3de9e9f54f6f8950ed58d3029
+DIST firefox-52.2.0esr-cy.xpi 436583 SHA256 99ce7e694d5c244edfd3fb94786108e670eae9173725ee2b68142117ab29d8d7 SHA512 33c85f340c46d773c31849790b6ac6b94376d67fe87f6a0bf16e866e86b1dc13a9c0e3c61acbe8922efe3aaad46967e51e1f888a3dd442545eec32faa882b9f7 WHIRLPOOL ad53bd2564ed86d6acc53892972a501076e57536a25ec4e184b2bcb49bffdc8d69f696abc78be0841fd736a254a94f40715ee4d0c114e99e8ba2cfda871afeba
+DIST firefox-52.2.0esr-da.xpi 424394 SHA256 b66b32ad09d0baa2c601d6359d03ab63e2f4aa2deb54317615495be650bfcb87 SHA512 e1b1c371f092dd1f73f222e831f688e65e55c6c1e1ea29e727f708652234ecc10c36740cd471d0b0b84396475c069c72034b99736aeaaa2e9add94f42216bb37 WHIRLPOOL e5fda036debaa3073890361d87e67e9ebff1a7e9a083f3051cea32caf8906e7e7c5605b84b4fd9627fafa77f2add5c37d554e94ef0a45ae3bdc9b867837dff9e
+DIST firefox-52.2.0esr-de.xpi 442479 SHA256 1bc5bbbd996d880ae736e438aa11239a8f60833f9938f1d083f4c46ce1dd19ae SHA512 9facda86748dd52f523a069f8acfaece048666c0892bbfe2b030bb6034873510ce5303d3b9f861993469d59ec0a78b92484476c4a60cd7e8c9914f244761d983 WHIRLPOOL ad8901ae5ba879f8cb999a15207728908353676f1866aa374bcdd050765aad4b691b76128fa32672aef8c43b112cf5f51290556f14753bf0114cf11fd062553d
+DIST firefox-52.2.0esr-dsb.xpi 459425 SHA256 97a851907e97b539c96d46ece84988abf2596c156007872d73bd8ca557c51b03 SHA512 00bc276b7a44520997a33a2247956cc4178644c6334ca461fa4e2703bb18972ca6da8297c7a99925fdc2fa56bb01d275c02ebf09f631165fd746f03830a8ef5c WHIRLPOOL f825d954707fb77db5e7bbc685b3d44e9418e19a0a4e14fb810c2088c1114b358b4d23da0d7ffa56bbd2ba39e178b8d655b16e8a59df6139e8993a31908079a5
+DIST firefox-52.2.0esr-el.xpi 516592 SHA256 d99497d250eddd94734f6823d74cf14f27101ea5cd49f14f1da4a3f96cb414f7 SHA512 b9057a9ca77c3613293f657c5a0b29e986c48abca6f13ba7197fe1e90bbbfd02cd73ae35d4f68074690a09c5ff378a6089224a9bd8de37b66596e4e980bbdd94 WHIRLPOOL 24705d29175a2ccb438ad5ab5820f6050af9c4a9851757efffdb3db6a58de31557eb70755662f5fe9420c09a34b97900a6c5f6e3ad8034e267a22480187f76aa
+DIST firefox-52.2.0esr-en-GB.xpi 419323 SHA256 b559ae96f2dc788ad192bcb17b1ebbd940312e454ff2df5be84e78ea7d40bd35 SHA512 30359eb9d3d5833b4819a6b5e992a70e005328195f4afb411c8b184cfe9b83abcac99cac50c3079506a280e1ed3965e3dae14b872b22474b9d145b9fe4a25249 WHIRLPOOL 099b9121633ea7c672e7cd0bd3cd5116c9f7f62df4b96d695204c0c67fcecf57b74738c02a5c776c8834f53ac462599366e7eb99dbe8e11038da4ca8332c5605
+DIST firefox-52.2.0esr-en-ZA.xpi 412212 SHA256 7676e11987de2980265f1ac789ce095814a26c9e5fc2e90a5ab9b8d62da769d6 SHA512 c112e3153512e04a71f4ee50cfdb3e347aae4c53d1b5d541723d320dafa259fc6441bd6ce4341297d27bdc4476c8c96b33753302b807a27768ca43d9b8f0ae31 WHIRLPOOL d09da7be5051ecb0530fdc2062812bbe2f27f61d90b6a6363d162d4a00a1b058246e5546e1ee0e4bd894e77bc5146492a46b4249d74b67e5d94cd6ebe92d677a
+DIST firefox-52.2.0esr-eo.xpi 437474 SHA256 b4ea0148e23d9ffdcc314c8eb522934e66ccc71351508d83c0f399a0e02cb20d SHA512 e72c52e8f3348e15c702a1e0d5b2276b31ca2653f110e00deb692de8d10bb9d18914654b5be00b3b2edb4970939a63ca5827ee8f41af03ff5d260321c5ee8255 WHIRLPOOL 2a5dad7ca89756d1561ccc1340aaeaf492e510b6f0ea74a5a9d50bce5384213150a3d395e9eca075da8fca970664b8d456165d2443048d57f52f66b15297e7b8
+DIST firefox-52.2.0esr-es-AR.xpi 445925 SHA256 71d9c1a799c7713f17af5f7ef2a34e929c056ff68eba20628538002bd1d23a40 SHA512 5c1a635bd30784c402321021b7323632dc4a6c9500e30daa4eb42013263e927767a92b08a1621bd9a9f1e7314ce926414bd5b245a2d637a0f6161f04ac3bbfc1 WHIRLPOOL 492530a0eae06961f521c78c209b5b4b147f142976aa5b7dfe4c98d05a5fc07ae13893e024dc83ce7d3643599051e84fccf4a4a73a4424b0a5848f3973878e0d
+DIST firefox-52.2.0esr-es-CL.xpi 445676 SHA256 d279b4b8d1e5af3083055b4e82585c5f3371fc70d40a51476743aa5727225dc9 SHA512 832707f26bd9910853d49d1c17ab0679de113c4c6263f779c1d87937d83c7565331f35b5089d3fbc2aac8f2c376ee629b53dd1a6c57edfdfbc46b06e908dcde8 WHIRLPOOL 3196a2bf89bd9cb71b70453cfde029e8a08502713eecd30867564f85324fb2320a0470720349b87a9dacd4012ceda299679c2ec54583753c5e5abc5a83a733d9
+DIST firefox-52.2.0esr-es-ES.xpi 344875 SHA256 e08baaf47eda8accf24c5f72931081bb8ef0120319c55025806913ebefc1f83e SHA512 90d1bb1fd4d2f8fb725c8d40cbc82f8339641101072fd174a69cda02d8d58840873e11dfd845ef3baff0f903d4d9433ea10688308128d8767262de1d784fc8cd WHIRLPOOL 18f051855c278d12c5b65d93d03f727a0b3a05f34b413813ba2802c3cb970f4a8210179a1ed67f0d3941b1bf5a5b035dd2e7f8a5036ccb04857c67d0a5326311
+DIST firefox-52.2.0esr-es-MX.xpi 448385 SHA256 39e20cb1460f24be53a19bbe23b945a051c86fdb7a411b5ba586f2edb38c28fd SHA512 651268b968732ceb1c75aa2170a9897b38ffa7eee08e1a1e1abcd89e2aaae41c8d618acaef4e4e25adf98e7350604988b8468f07b0d96e14411e19316ff2faad WHIRLPOOL 0275fdce3199b48b44105319428e3c012faf2e266d7d681149bbed1a2aaae64277d37725b2c332e2793fa7d371d00c03a52782a5d2d74017d20620f2ac9795b4
+DIST firefox-52.2.0esr-et.xpi 425113 SHA256 e91d409cc61be30cb1cd7ea546d093841161da621da817510823beb957edc50f SHA512 aee8817fb3cfb2798de481d3ad272dd3c0013f51f50d132f175b5801bb292585e4135af4c73a224168acabeb4dd8512621572828c47e586d2c31d54ba181fb6c WHIRLPOOL e8662b6c51bd18c6927c25e09c2f32b2c1ab20a1a406381aa16fed90c370334ec864d13bb6aeac83a1f3d5573b6caa8d731befbc69a3f6c408a0cc88c5420c53
+DIST firefox-52.2.0esr-eu.xpi 438479 SHA256 166d5c88fdd8fc09ba0e784c6d60514395dfc899cccfe4058f2b1ed35bd3d909 SHA512 b4b5d183f6bcdc8807d95305d8aca9e1cbf8e1f2f6e1f133bd450c5bee7cd5c4cb6d77828868e4ba720ad16f0cf44a34944315890c1b2287a6ebffd36be810ec WHIRLPOOL ef5cb3551c7c998cdb56c023c11ccc324d6399918789f10d6b6a1dae853b9ffac533f182a2a16f196ff3e94f33ad7bbfc60eda39eb3ca85b1ab95048371cef55
+DIST firefox-52.2.0esr-fa.xpi 491343 SHA256 04e771a28a578fe66f041f625c6164bbade771f815f3330ec1633426f59f41ab SHA512 1dfd3a924680eb1477047da4292e53a3d1f0bc3659bc39dc57762de5a72f04d4a06a1d137032789855f661c4b481b676c3c98d32102a6a154345b7ae433e20b7 WHIRLPOOL 853469f527167eeafee433c8549bf19b97f707830c85880632e298566ca9b8d4ac5f0e8a8b974139c89e5d48e9650b30a9aa0c038fef4e2b126728581fbee513
+DIST firefox-52.2.0esr-ff.xpi 440928 SHA256 cc1584bbaf57b10731c3e90c795afc207e7745dfde6d9264dc2b9129b3f86067 SHA512 6b8301c6b00b69bef8d7e6ec0c140fe8152ca26e41eed6b69494dc0441a2f2757629a5388734c610f6f6423286f6832203cdefccb6ed43236d76cbde7eb5b3dd WHIRLPOOL a4fcfa9e8a15146b7c60daef14783326e5c29e8f59bcb93fffa59e5f296ba253ef7add999be4100c439b365bfa3abb63905df0e221af389da2f4a0b561ea2458
+DIST firefox-52.2.0esr-fi.xpi 430061 SHA256 8aa6afa26db1254b9711510c272072f997076bc80e5d6d6a303df11aa8cfad89 SHA512 ff5a6d5a64ebd86da4ac111e9e26e61c22440689a97e89f39ec2386782d231925a09281852bd015ab52c082127f01858de47b6f6ccfa23f43e121bd14f7b1e3a WHIRLPOOL 709a31a47214d03e86ace4ba6c2a3c1b41f8ef13f79e1740a039f29530baec26ed1ff982f1f2d08c905db5183d504db6c96412450b201375d8c999d9561a6917
+DIST firefox-52.2.0esr-fr.xpi 450210 SHA256 6e98af911626cb733659973a8bf573cba0427194a0fbd68524ba58a664fa6e02 SHA512 8e9f4964478f080cf856d264500d16867aa64433367318c93b07798385697e4cd74a7be03cc8a77c9fa190afb21626684376a53a9fc3193fa0f1b3d96fd530cd WHIRLPOOL 59f2e5a0690aee7300c6d72d12aaaeff72e79188692a5e744148cff18ce63bab5d168d233ce16fcc000ceacc25023832814cea92f419d493ad2563ebda5064d4
+DIST firefox-52.2.0esr-fy-NL.xpi 444970 SHA256 e21e83fd8e31ac6973a6e3f000bb4e9f2fc0b760f048e130064106eeeb4f100e SHA512 a987e0d2380697721976e80be80c4862bc334504fa98cbae619e0ec48d1d850723e469c66ad4f2a7babd25e20cf2b0650d8199e39565a4686e5053a0a2c845a9 WHIRLPOOL e463b0d0e8f56bab83cc88a784381d174d65367d6f57b98406f779307ddf6a77213c486a30c0f018696f0d38f7c31a838a9cc72b32d1ecde2f81374e604c2440
+DIST firefox-52.2.0esr-ga-IE.xpi 458164 SHA256 d8a3c6d802b31acd9f17565638b8673256ebeffcd72264472fc829afa9c1e1e7 SHA512 a7663c82070e9c8631db0a3564c7856c1cff27f98c2a727fa01cff0a527c8d6000109a94432c2ad414b5d83039a26a5c8ed4dedc57c3fae4a423e478aa661e0d WHIRLPOOL 2c4645b104feb1b53075b348e455b5a32f4701858a5b381492130894c177f052a7e9d938e1d71de21f3518283affa3f3f3725795a5fffe785750f3bca3ddee44
+DIST firefox-52.2.0esr-gd.xpi 447268 SHA256 9567ede282ce238afb964adbee6d7c5b023acdc2a760cb231fdcfdd64c4c546b SHA512 0ae6fb3e0f2baddf9ab16e4df8dd7d12f1d4ce9480e3421030a6e9b411fb846a05e39e717d958671b69d379b9edb19ffe6eb5533aa9c4143e5f20548f47e2ba5 WHIRLPOOL d6bec581649b0326286e01230505e31e067e11989b7be4563cca826099831565f3dd6befc7b52172cad4b7d0b1f77bc9d9f26c3ff9ed7db57951897d70dde749
+DIST firefox-52.2.0esr-gl.xpi 447295 SHA256 4dc5293d3b0f9512508f1c7645e2926520ca4ff92ea9f2620b0b776aaeab88cb SHA512 043ab24c142cd69f5d9507d4e8a8a823c2aeefc1f859d4060e94b304a81bd28e9689a02e1c750185fa3d8f597211635c30d88c0a3592a93c7b18650f800da644 WHIRLPOOL 0bcd48edb23c1074beb8fd10cd3428aea142f3ae616b2524a376fc18a94c608f87a7ba180a1d8e158d27cf2d5a5d3108872dbe8a2a32ffbdd7a65a4c86f4c367
+DIST firefox-52.2.0esr-gn.xpi 456214 SHA256 2e5027d09a944e190cb018c45cb7ee1281f2e1717786d3a9b4f968dd2a4210ca SHA512 920fa185c3d120dd2357105fe978b4dd1dcc36c2fbedfd518fc8ff8b6fd3fb38fb40e3801e126fd25405aa10a994d4a5d85d0e45d9c4593a39f41e760e820829 WHIRLPOOL 7fa1ac3323dfc12f67f6a69935b45c19b118600943447fee10ec1557cb84dc014998856edba031dcd4ed10238c9361818ebe933dad43c47caf8af5c392363c8f
+DIST firefox-52.2.0esr-gu-IN.xpi 489364 SHA256 5047f8ae521ee0c62b14fa700df91214e6f69fd2a639e685ffc7dd0817858b8d SHA512 0a9261f54a1bf0c534ff2d13aeeb8fb865832fd5466191e735eebdb811ba7f8ae8cea25563cd794adb9487f642987cd006ac24426d7b7eceb84c1d595eb840c0 WHIRLPOOL e04207ba6d682600ba707853d755af85f4f1d3579f02bf1f1dc5d29acc755a2967aaedc8d2e91cd0d4c81e0f6504860fc033d3243298593f3be298c5c52de26a
+DIST firefox-52.2.0esr-he.xpi 455283 SHA256 eafa5675ec14a667b39688cb259c091ba32a747fa2528f0c2cce053e9205a6a4 SHA512 0720e44cd83b01667aec8ea93d96d1893d3435bc8e2d17f3ee75afc84e096c8accfdcd373d6399c2535323a8a4f2f7c8b6509d0d0aec06a2c9bdc665e872cf09 WHIRLPOOL adbe7026b3aef116a6134243eeec174c127a5005feec832c09103f9654267a17757507191bc6b9f972879e82a59e2493682ca24d92d8e83c7a1f3f3ac91a214c
+DIST firefox-52.2.0esr-hi-IN.xpi 506519 SHA256 60bcb0fce96954a63ea2758363cd9dda3f9f7b5b1fb8da5c5470231079b3c78e SHA512 9230a20ee62765130802547af5d1f00da510ca40d0dafbc5650e8232dce7e8cca85daa9dfeeeb98d8f450c7352980c6520eb68a614e8eb9b7921b42fc0698e8c WHIRLPOOL f4e0fe351dabb209fae5b368bb87e007d70264dc348b110729ccfb812358187514087d70fffb0727f290992fa5804bc97b0c50ee46263152896c3f3ce638e55a
+DIST firefox-52.2.0esr-hr.xpi 447503 SHA256 73b947a79a68007db59e03edd6cdcaf2a70da42eb430734d51351d4b2b70738b SHA512 c8a4ac9e6ca9472915b36da9be2ec0e444ae333de7c7e85397cf423917ac8baf912e9026984390632781343a6d395feedae65fe7aada2f6f17831e0004323166 WHIRLPOOL ba363de326e5beb39841191dbf261cf0e73f46140ee9957dbb694c573071ed36095607a0dc8694735236c63fe9fbf02aa46b075c63d875eb989e71c8cc9651e7
+DIST firefox-52.2.0esr-hsb.xpi 457259 SHA256 a49a01d6f962292cd126869b6d1f9f17e4b5d8cccf989ecfcef95fb91c1141db SHA512 0cc2b499163e1859b0691545e75afd9a405e1860fdb543762133ea10c075342a6e743c58d1573e8f2cb167b904b92dc78c1223a25a9c52c17d7f8ed0d12a90e9 WHIRLPOOL 4efc9f5c50b724747868aeaacb6a44d1525062340167b6acadec3b540f9080bf2737e06b2a8071f99530db2d5607b624c6372b4d05ad5fde552a51b474b9182f
+DIST firefox-52.2.0esr-hu.xpi 451496 SHA256 a34f8354fd47ccbb36ee1b48455ddc2b945fb2cab6ede6c3925e6b6a2bdc5b3e SHA512 802530c76bf5070fc6ae2c0a43733cb66cf3e518b133a6b6a41da0bc2311e070bc2083de73e190d09d125073a97e5a14f3f1ab55c4b77d4b9a8551e1e9c61ccf WHIRLPOOL 3cb07f702b200b23f945d9d6b5d6b0a155c78df43ae1c40956461365179d834efc8d3ef7763ecea084619abf3b98a28569594959c7f1da403e42b977d1e35369
+DIST firefox-52.2.0esr-hy-AM.xpi 495773 SHA256 87e48edf01bbe1ca1b720d0bea9b6a2b5bed36c28fdac513507ab6224e152279 SHA512 cf3a8b5beba5e466098a580867c0dd17899408c1556b92ce7d3a39ab328f69ee804837b09f388951a5e25cd937e6867e5c1de9b4742c903afdebcb57219fcf51 WHIRLPOOL a31a401460336c268a650c442122ae78459f0484de3b7d39007257970944125a02c3320b24175b0f6f3008c3e77df09c340c992eab2f022a5e8ac53d6ac7b7f2
+DIST firefox-52.2.0esr-id.xpi 426023 SHA256 124b7390bf120a1377b7600d5f332cabf32ec0ae1b32048f8bf9c93ca2a8615b SHA512 e13e0768e1e14a0d865c3ca472226f24b71575bc62a0127d6d8c7e23952f29cf7fa7df3800f2a0ead28f24f08b68215384b2ddb7f5dc584d984ade7af14e3d43 WHIRLPOOL fd7c80e35575765b63eb1aec7aeed1aae9eb0338b070f76a0b9873bf7dd3c61350a67f9a4cd7aee3c0654cc785fcfb70bbb4b1e601c7e836edae15642b7726e0
+DIST firefox-52.2.0esr-is.xpi 442694 SHA256 b7315d135fa81b0a51d9fc53fa4251d7d2f40ee88b84f7184b47a44a9152e23b SHA512 543ba98e892de1d3aaa99de898d55bdc5ee7789b70ace9a95c27c603ddbcd870f64bb831b1f215a9d0fb65516eda33ee2ec5784d0ba4be2a60193f8fb8c6296e WHIRLPOOL 364ae97683adb3996c76302e0e631a2a76c3996922ff3ce910d64b648dff7b79fe74855a78ce65af4a117b057c4a869de076ddbd89f8c37cb6087ffcfc486484
+DIST firefox-52.2.0esr-it.xpi 339221 SHA256 6d66239509dfc08cf4ea2a911cbfc58ad1279b37dea0ee62595bcc3753abc51f SHA512 b20b675d66f803558fa0f090beeb27b9a74d83004486d13157bec6afd97467db71800f4179448d996f793e82b463c49fe51736981be74d889db10e246aa6b6f7 WHIRLPOOL 5294214106659305754cc5e6676a592e5e83e4f3021bb03130c7a6896962a523e16ed67e42572165002c5e6b84fd3d0dcb9c255ac4ea0ec38f655b2495b0d92f
+DIST firefox-52.2.0esr-ja.xpi 488343 SHA256 04e648ccfbe57e76ca281795a4d703b060d409a57df4e2b26881fb7c4afc8c4a SHA512 2b8cebb1b8619d9b8e8977a0bcbade1bf4f1331cb16a1d3ee0cae0e3d70a5bacd57084722e84f3d8c70b9d65321ac7d26e811ae4db0863f81c89a98f0b0e58a0 WHIRLPOOL 8c07b770ed2ac9636c7edc99f9a3332947f9c8fadadebc87be7e7ca438bb104043ca93c780d384a69897000a029f9bc29c96f5ef72952e808e7fff8fa14b6c17
+DIST firefox-52.2.0esr-ka.xpi 475375 SHA256 eff70e4a57553e1236e1000d2afe1461b3268f665406dfa8e915416415c8a054 SHA512 f78094048b17f3631f383fdce0322c78973e048bbfb1698b4c96812845dcaa3732f051a6e4af3d26933818971daf093752ebb256f9d4679879c360b2edad82c6 WHIRLPOOL 6fd961610b7dc03ec3704ac66419e5bb4c2ce4a017f015db09fe97e75ace9d9df3d6fa809eaa85bb758bae0182dd063fe92a968532ec0e5d341191ab3762e912
+DIST firefox-52.2.0esr-kab.xpi 444520 SHA256 fde5b447d18b1c4992b269cdb5af7eaa08f06d5adfb8bb74cd125d2ed003d8c8 SHA512 47d2d927ba99329a4dcacf03004d6e1c9813ca54c367a219e4cf14a5aca01ebe772dd2a8b9b2b31a3a84bb32b93b484ea7e9743a058ab9e2c79c842cea77c95e WHIRLPOOL e3f88d65222ef0c26be98285d14ab2b474bd71b16ae9867073d51e5c6f0c0c7f185007b91e317fdbb724b5f4a9580ae910f0413c722afbcc411ae203c2859737
+DIST firefox-52.2.0esr-kk.xpi 496939 SHA256 b3bc69efe5b24aa6aa447afe21f2b13604607a799037e5108caef37454489a75 SHA512 6588e5033219e21b052b55d6872dc03cd1cbafd0061b0204e0eb5bb6adef26cd259c49242d5b0fd51bdb0953dcb8ec960c8fd72d818a631596f516795ced51ac WHIRLPOOL 67f30ad34c0b021887173bc5d82408b6c76302b376b1d1965429d55b1a31ec2d5a4c3adb16e5d3273a8ffa8b1e5b55ff4fad0ba5c2b534fd27e6bc588d3cea68
+DIST firefox-52.2.0esr-km.xpi 520344 SHA256 afd37f2af8e357da1b2eac49ab428e1369911d9ba6e1ed250b55e9796cf08ec6 SHA512 a14156336df315d6670d4bedf64ca4a7ef1c5ab9c6930ebf52387c09ceb1e2ca55b24d83ea6f2ea4100d17d38d4765e09c87f666bc8289c1d1ccc138ab430344 WHIRLPOOL ebc9c66a93cb24b26e65275f2080647e2123cedd5289653301dcba8a73608721b3089fa0dec93e3af7604a6cb61461d9a6635f1a23c36b402c4fe207b7a53818
+DIST firefox-52.2.0esr-kn.xpi 519456 SHA256 dc67ad63a6ad613d0b3d3997e7525f9285c35caf61c411fff596ab6679e282de SHA512 fa6004c6fc19cc6b896f631e46e135ffdcbe7f66ef29e8b7c78ed9cdb4da8edb3563a41135ff1d34a3f233888e9c4cfefb251fff850d8b30ddef5b5f03776ff4 WHIRLPOOL 3d94593074bbfdd3581b437b3bb852a443d5d8735768f7cd05d7b8e993a95ddeba0a0c716d7063a78f18a476dd6f045a32081611b71576091107e2d9fc8cb749
+DIST firefox-52.2.0esr-ko.xpi 463630 SHA256 7df95ae569658b84210cb37f90c5fb62645af6114ab532199f5a52925c06b66f SHA512 9fb012e7bfc8c0ab1e8f7168e2b388086b08a047eab7a6c130444785445c129b0197170b0889e41faa3de9849c6f6e0d1535772e064f2e3b4d09d88cee185064 WHIRLPOOL 25dca395006324d9fd6b8dd1fb80d4fd4b590b8b301f5e0348efe1a1df026c21016069e5dda2105c36e0320aa5267033687bdc2accd1a168dd4bc6add70dd785
+DIST firefox-52.2.0esr-lij.xpi 421071 SHA256 84d07b84f64ffbed11769fc70906da559beb344459720084392d81fb2b19c142 SHA512 c005949d1710e4e77938fc871706c4c336b3e9168922bf03584cd6513bd4ef9f22a148ef1e46a12e2c6c4c0ee2b5aaabca5699e2cd5fed8e3cea77f11da7f53e WHIRLPOOL e624206e3799ad900df1b10e231695aa01bcd587a3b533d752f8c25d0a8f3e8f47392e2e7b2223c3f9e85f2ab0a25d2ebe450d9a94d04e21c243ed2029f6f95c
+DIST firefox-52.2.0esr-lt.xpi 452235 SHA256 954f3568128f3b7bd56225c31e19bc3aeebc100778ea6e2c4fe3d6f92a5ad684 SHA512 ecd02e32a45792bf9bb13b1e7517f630e92eabd552ca3ec806efb132a3eeced273f36f093353500ee31194af8e1c097dc960ea65b8cb59aff476e39140ff3712 WHIRLPOOL e955270c6a64c42d4ca5a0d9514d2692973eb18e6c5cd41e4caa69ab8cf0326056de5d17a5c36ce08bb5bae15c7331330ddf2c48a9de980d3e768ea3fd7b3c19
+DIST firefox-52.2.0esr-lv.xpi 448450 SHA256 7d7b8c36bffa52aaa9769ed0d70c468cfbb0f277dd17c8ccac0c2b2b004a4140 SHA512 006b9e5871e77d84dcc683caaea4a4c387c4839bed84034b8664af82c7c0cecd67e9042a188fe9707df894b5abb7580b23982db86a407f72b9aa16c7cdac6666 WHIRLPOOL 46872f18e3e2e6952f185d3962278bf6794dd585e95a17248f6c731f85508ea39fd70a2df77613e3cdeefffa295f7ddec563a5e957710d16a0f70c10db3e0ae3
+DIST firefox-52.2.0esr-mai.xpi 499841 SHA256 2eedfd544a3cb3c81621c8865ed6a001f7814f7867029299e7e03d3b3745318b SHA512 c98b34ff5d04fbaea3ea3a3fa5c6b10493dffda0744cc140d5d7b5d7e1848a829e222a3aacae8deedc340fe00fab3298a7f06e337a45f430d1143a2507e86cd8 WHIRLPOOL 002c22dc05ab97dcee3031a070e7d214d4354d64b5846478b06e834a8a69134a4fff4894c59eab0ab6d0822d04d1374e6b6bd666c245f4088212d41c01151eab
+DIST firefox-52.2.0esr-mk.xpi 496199 SHA256 850a782e6fdaec215077bf811724d8e78ca3e98c996618cdac5f4a05b8cc2583 SHA512 602eb16b6dfb44dfa26dbd3ef9c918688efbe78f11154c50659e1394ee8a8deed561c990c31eec9855478e4c68915be7580c0c6e1434e6f3f9c062217ff6d93e WHIRLPOOL 04d7eb147ac6649e2481b633be5386fef11ff56b02243a271c9618ba6cacd4f167a6b093c6716eec77aaba15369f11196c841d5fa518d78c18e2d5df6d928dbc
+DIST firefox-52.2.0esr-ml.xpi 516487 SHA256 96d25fa55ad282d0b72368471c2ae280d4f3a55fbd596c518960965696dc2eda SHA512 2f7393cccee1ed34b9124795e2b952bd01a6c359695b3b303b14fca71010b83dfa38044bed0f3ab8f7b641d54c2cf0b16889d48d38ccba976c2cc38875699237 WHIRLPOOL 0a322dc2cbe54d29f497f7a161132afd146e4202db644b322a1f18ac046c3688a985f1d82349949592041bf6e45a76d084ce0d1ce018d70c4b16cd0d80cee169
+DIST firefox-52.2.0esr-mr.xpi 502431 SHA256 e7fbfd6ac988a62c4aba975b0657e947491b566263cfdb91bc3de46c767efe81 SHA512 3d20bbebe61ca847edf54840c0272490755d9269b690143e34d2a049887649720c9195fc77c42415f66e981a28477e7ced4ebd39489bee1374cbc74c429b8454 WHIRLPOOL f77f4b851e5dfd8dd7ac8fbfd583b690fa216b7fa8684fd0d5b5322e4be195fcea5f2f5a39916dda23c5f566c6f55d268a9efefb6abd61a036a34be4ad058e71
+DIST firefox-52.2.0esr-ms.xpi 435990 SHA256 ab63a7d8dd3ab884710bf124d844c76fc641ba6f12e9be24e464045bd448af68 SHA512 c53e98af0ebc459854b686c1d6fd29a5af1f7b0dddc84371e2c3f070030ca2dd083bbed6880ea56e557781ba26d5cd17f6da7b855584019d9895d197c4527921 WHIRLPOOL a4b636062156e262d58cc2c15979a7bba1b52681f8d32d40863a911c2d38f572f8c5e9df284be341561702eb9c566e00a9eef0d1bb61703df92b83e50817583b
+DIST firefox-52.2.0esr-nb-NO.xpi 434412 SHA256 f8246d65affaea847cca8d2d02a25374c77a4c62216b38325a700d99aabeacb1 SHA512 2df146fc669767740e810364bc0b782b14e5cba45b16b823014340eaa5b9104caa8175e46059da6f657fbe2339827f7dce653e0e806460db424a48ebd542ca88 WHIRLPOOL 25e0f8dd2535e90ef8e8ad8c9f47ddc4eaeac3a39acff7bf268d08359e2e6a8b6f895f8c3bf5e963c572e55faa6a4cf9aa58d53d239db2b56cc4ea82a483b665
+DIST firefox-52.2.0esr-nl.xpi 432007 SHA256 b8804305be802756047e27fdd0db55b8bdbb59af91e533ae5421168de72b62f4 SHA512 969c396f36b264f9946992462868f3df1c0d0a5e9914ea2e9fba75fe0ad16de892fbc883cdfc86558961afe5e402a377533237999792906971a5e1983e1facb9 WHIRLPOOL 0476ccf125c337dd357982e2789b696fbfb7c8522fe585e4930d6fcb9e0020a4ee09b8e0745afde057ea29344283203e663e91ddbd106c61c33af919c3078496
+DIST firefox-52.2.0esr-nn-NO.xpi 428645 SHA256 c130b94392b33ffaee7bc3ccde35f4d2f2fe6d3b38faec890c7585166a62eb36 SHA512 e3081ca625c7fb0054e6fa7ea4fde44e263d538022790b1ea3ba23edc9de3bf37e5a3808861741fa5b51c9cd162cc8140419935a993244c5a971a95ada76458b WHIRLPOOL 7ce9bdb32635988c45cae093fbc7a8e6af36e27b96fdd2b0de59e3184a65fa62c07ef31f006ef9667294a8b1a343c3e3351db749b00127af6153e810ac5cd1f7
+DIST firefox-52.2.0esr-or.xpi 496917 SHA256 e43db2d368fd72912383ae3e4070a7ac4ae4a0bd144b6765922bb98b099f6b53 SHA512 0a3d8c4e0f82d7633c2deccfd7d3831a08e2695289dd2f1b62089898c576fd6e1ff5b2fe37d133cf73379a1b0f8342ea2dd40dc45be8d496eb8da8198be76d7a WHIRLPOOL 72ab82ab11a12fc23fa72d5e768bf5e64ffbed96056c9700d3a2fd5c16e35b2024f82026e31c95dbe6740d50e52c2e1ef597f416699078083b652b1ab146017f
+DIST firefox-52.2.0esr-pa-IN.xpi 476587 SHA256 0fec235d75e55330ece84855eb90806a5f6e716abb2513d2380b355ddcdfe05f SHA512 a77b71b21fb08774e5ea295ed17d7145e464d798fd5e54ecb35049a51974af21da1f99156060d36d610a653c157a00ca2a836654fd416dd8a22a0580f32f3be4 WHIRLPOOL 65a3c87ecf9b90460533085080d621a53ba0d3f6cec41fc2124f7b5e2371a790f68829775ec48288f877d17b5024b5cf70e33dcb35671caa558235097af0bd5c
+DIST firefox-52.2.0esr-pl.xpi 352851 SHA256 c1517876642a7e168d39cc89299038fe9da2f794839cb44ced76de351d688845 SHA512 27e1190716706438f41eb63f4aa35bf63d990b9003229013dbea53ee73929c9afd3519989feb7664ce535b4ee3801bfc1f1c21643b0543c5005c20d8a3f1a55f WHIRLPOOL 09ad195c2438a2c0d5fb099c8e8cfc280eb4cac17a39aa37f6c0eb07b14f0a1e43f6c6cf3a3f9df35e03a1e6c10b8d2ded9931562a13bae27398533cdf198940
+DIST firefox-52.2.0esr-pt-BR.xpi 438170 SHA256 dd61d555cb46d4eb6796e770d9a6322cb844c436b7bb703a7444c39462af6277 SHA512 47474640e7e9ef73530f904241349abba81cc9fa9686e69a1e7d3a5a3edcc1575211a62fd11d79be3ad869ad3208f3eaf27877ac1c267dbedec9aa44b1bf4b7d WHIRLPOOL 288ef1e5c1659df7b4ca7f1aed0fd93e9a655981f533773958cb4e2680ded8561831f04d74660971b3313c80fadcc0e9ae28080bdd261c6777099f956ef61ad0
+DIST firefox-52.2.0esr-pt-PT.xpi 436727 SHA256 7a294c1912b0ed5c6af8d2bd0f336c6de95354cd1bda72702268620e59f23774 SHA512 c1f088acc2aed1a7b15f165bc7c6021e88b7d52544fcdf111389f66385d79b3c84ccfd74bfb447a5635eada80b27fb316864e3173c15116bece4836c49fd074a WHIRLPOOL 09259d313711bf136164cab463f7c728536145a24fe267ed6f84a3af07431bf98a437896120ad21c993e574cec4af64536c7b93ea22085a29ba30cc8f2344415
+DIST firefox-52.2.0esr-rm.xpi 434609 SHA256 56cda1245557ee44ab680d2376a577f3a32bb60f95dca94c3fda80469add54dd SHA512 59ba8e0b03b00fef3fc10f30d7aac43db5236ebb8686beccf4576a162d4c521673c228b1b99e454928e0f0524d9f1496022f766242ee307ad6b5656a1b92a02b WHIRLPOOL 31275771baccf57c26c5f40f5eb8197f5baaefa0c8cb44ad7992cc570308918bc1f122b7d347c19bd420d3151d4ee5d2c8fbde002f8d7e600ddae8cc390a3df6
+DIST firefox-52.2.0esr-ro.xpi 449938 SHA256 c94438d76a0bfb5de6294f84240efcb482bb16fff479905391826a453607ec0c SHA512 cb06561369e2d0df2818e6db8444c4f3e8d8e4ad713664efd11bc73de0ecfda5ab6822ef7ba8d68a6fbce5f16b035951227b14b00f4d6fb2f0cce814daa1129b WHIRLPOOL 5fe4543140243dbf17e72c6e01c8aa58b61af5a68e3705f9d5c55eebeb9413051a91d954ce0f1faa1875a9abb596317eca2685160ff0176f0bae52f10c1b7f11
+DIST firefox-52.2.0esr-ru.xpi 395364 SHA256 c9e666dc2307d39e41303c54106afe2b336783b70e49f642585b20b662258b7d SHA512 31d4138b8c802d25c801dc65a46228bdefdc7d485c0026062ce74ed4ea0178bc36080a23d5b65649a77e8664cc23e6034e7e9f24e13169159ac004b61f1dbd8a WHIRLPOOL 19e00f91cd1d992f759cbc288bf0f92022a5a386319745b234e871cb3df64d572afc2a8a033357fae2690ad9dec0710f07637896406200962a2c353e386975ab
+DIST firefox-52.2.0esr-si.xpi 491959 SHA256 e0444d9c26470b1acd5ed75a7fc1380ef66d9bb3c28b6e9aeaf7845e8cadf735 SHA512 5cb68db602bcd3fb6f62085f446869d4cf5ca55f0e67b9ec1af84935345ac63b893c8072232c4c1b1a6f7b3fca84ad08a2c24533d745e689f9a846e9ca4769ef WHIRLPOOL af5f928602d042bb0186c6949e62c08824535f8dd0d1cd74e3a8b4ae902e5553fa6a5b264b56073d054f6d4d2557768c3bc9c02b3776671c4bedb77be3f9f0da
+DIST firefox-52.2.0esr-sk.xpi 455820 SHA256 15c4f591b345fd1ba2a0b39dc07663648a97f86469eddcd4d73df95c812e0c62 SHA512 25a52c29463b8d336c45b5e6b6ae4ad78f45a6f6d4bfaf6d8632898e6f5577c9f7581a1fc33a4ccc1a3e6335db0f48f002f5dafe365a9c78aa7fdf73a10af19f WHIRLPOOL e37e4d1b061aeadbc3858992692e363195bd00d4ab16e4964c03b6b6ccf2d89877872986aa04dcd4790a8ab6961427642e6d116ea1e390cdf1c2aa49dc63df8e
+DIST firefox-52.2.0esr-sl.xpi 433482 SHA256 b5c2b9be184c335c1956ccb1b457b1e98b74d11fed513e52e73d14514f1cc74a SHA512 071dd37e19f63c5d150890a55b7da921f2f41b2435f6c72a93436d5661c880c0f5842dafe9267c399d622947a70f11c628aa951c097b7710f24f3545e9c7a0b1 WHIRLPOOL 0a5f92e7409ea1ba9b7126453a787b5c96d753906b4e128f8fb1f329b5789b27eeced2b5e0f56373463320061272570a1070605d703f6111f4a087f381248223
+DIST firefox-52.2.0esr-son.xpi 435128 SHA256 0355ea7a2bbadadf5867a0cd6d7a568a5e1324371ba6afd60cdb54b9ba83036b SHA512 0d6b50c50d82683ba6f7576779ee30f0a549524665a81cee479a9a11e187c4dc393bede48e71e62a2fc493cda551ce2dfa15b7b0a58870963744a6ec6391a133 WHIRLPOOL 020ec37a8022b051a37668c60449749e02964a9f25def919569473956252e2042ffbc8930e174bcc0d64a0f8f8afff9b8479f7ddaee36446b145c38d4525ee52
+DIST firefox-52.2.0esr-sq.xpi 448156 SHA256 148772fe10114a225f766799f9e3cf38b476499d21b395ab3f2b287934599fc2 SHA512 b734d7013a0f61b6ad2e1118f3de9a1233a17e5d131e7f66647e223227dd22d72f0d73577667adc64cb41eb6e7455876c8508c62d6bee0e554857e8eb14d08b0 WHIRLPOOL 123f3615ce1f0ca097ad7e80ecf68637778a8d3c3e3929861587dfca516522262aba5873ba6106d9c1b14bac1481a530452a9996c01960203a3319695c0a2d5d
+DIST firefox-52.2.0esr-sr.xpi 463394 SHA256 cbdafd1e35aa4b06807f53b887ad0b4b0fdb6bb519bab0001d6def74fae2f849 SHA512 fffd1355050a9af11c27f26eef62bf6d7cd0adf65b9ff75f994b15836867a2eaef0e23b12c09c3f99ab613dd3e3e3484496940967e732bb6e1c2dc1fff11b80b WHIRLPOOL 33a5e92f0354788956d52e7b9d78cdaa01c07fad5f1bcd01cde7663b811b36a93399c7ee3584a8bfaab049377142210257f0a5af4b728e299aeda0b0c3a424fd
+DIST firefox-52.2.0esr-sv-SE.xpi 441178 SHA256 98fbbdc6772ebc1aaef0b64105f76bc7b7790b85192457c7ec8e9a75d666ae1e SHA512 b6255c1dc7a7a076a49f2a782ce048ec327c60c49edeacecbadd6b10838baab1628aa2df0a1845d9cacc1d3dcf5c52f182b632d697fd4eaae6b89120ebcde578 WHIRLPOOL 27e403762468ffcd88e8a030823da56c85596fa8e6986d2d5df1824f7413b707ebe79f10acf12b808f98b23869a315bd2c8945382c9c68f2e96d56bee05ad3b0
+DIST firefox-52.2.0esr-ta.xpi 494798 SHA256 d864732629b8b05c0c4ef51252b79cb9a0d87b2b551f146fbb588fe27f8ed3d1 SHA512 7aefec2e64da1f53ffef2272df8e4c077afa3132decf13c54ce0afcc0fcb41e4af767d6d1bc60025ddba39341f4fc4bfdf1fa0420f9a565d7cec95e61a77e5c1 WHIRLPOOL a96ecb126790817cee9a85a2d6b0dd0e2b620dcc9bd29981dbded3ca9773cb698713f21517620ce0fc4d35161a93590f2368263830e6d9f3e8e11f266a0ee5e0
+DIST firefox-52.2.0esr-te.xpi 515241 SHA256 101afb36454f38ceaa95fbf37a6ede0cdb4a6ab977fea47d8ede36b1865dd53e SHA512 a1faf4c59271d1102872a10704700d26c357379561466f1e895b2cc592e59ce5871b4a332702e0f45c895d39371fbe376af0ace6cfe28a5941bf721fe4ed801e WHIRLPOOL f5f40b44c29eb348923bb94b3db7109680cd9242c393506070e024089f36f78e6d05e6ecbd7f20998957829c2a111d0658d6eb30f5951eb9a40059d1b651f6cb
+DIST firefox-52.2.0esr-th.xpi 489379 SHA256 28228df38bc8bdd27366b2f7a3181901b32cccfcc1c6621a35e6b8a8b1711aff SHA512 cd73cf11fb35bf8bd881f7f766c6aeb305b15093f5168b42da0fed943fc76800f652b9071dd0215ef7e2ed810d94b1621a93275d00e7035b3b1e9ca0e8debaac WHIRLPOOL f4e0b7ab14992b3fa10d0d76decdd99ace5cada2c08b5a6d3fbdbd436ed7192140af0108f058b1af8e267a59938de946813102e489a84ae52286fe351867a978
+DIST firefox-52.2.0esr-tr.xpi 443673 SHA256 d6ad4f3347f65d60a98f286a981df7b8ffcc5d45a13c578011c7734bd0c092f9 SHA512 94449e6b9d7c4bf5f3e3c54911dad0acb39c2b884482cd918869b92ef4f52350d88bb3c6fe56715cda8b80fac8f8005b7557bd77b713dfe85951218f6f8a7c8e WHIRLPOOL 27eded14a01ab24b7dae06cad97520d5bc2df8a7cf3ec4937ca7377791ea87b27f12bbe422fc7524914f7de9c18349e0b1286f3dfda1d2ee1305aabc900a739a
+DIST firefox-52.2.0esr-uk.xpi 495095 SHA256 028a0da2fa52cedc7a2c75903fbd68edbe4db5ba46eb25f998b7c3d9d9c2a934 SHA512 f7af2e1ad7028a97e03a9280144cece828092cf546d51f1b966f938603249bcbd0366640f90070379cf854caca8c541c6f0ad0818e97e3023ed0d63d092fe3d1 WHIRLPOOL bcf021b5ee165d0500ed1160654b4f6e490e465fbfe15f531c5226c974d00983a1a7d62348628ba075d5e441e9f556cf0f37ee5729af2de607caad8de098db0d
+DIST firefox-52.2.0esr-uz.xpi 447917 SHA256 460c1a81c8bb9ca5169d2acd2095961bcc36ce3188c1f6bc54e9ef32ca5f8610 SHA512 767029a4a4900b3842d7ad0879202181d5bb844f3657c31333729e2b735b55f4b158f466d7919caff1eeb13d08d46d8b7884a3521f1ab0d4cc478dc553b8c248 WHIRLPOOL 2fcf740488fdc238b9aff8a0e556c9ec96270ec794e2bbbec1be4919637a6befa1f9be4196d6af95d8a7378e6129b1ef27f4530f064982e53bf8e7ff5e44b27b
+DIST firefox-52.2.0esr-vi.xpi 450805 SHA256 f57c904d0c1cd498d9952b9a760482331b97389d9a02f2c7e6b765efc143efc7 SHA512 2fd5388405b3610271f27db1d2f9635d0fea88f33203405af5305bff951cba6bbaab12613c613f61e05024109bbed32c345a3d2a87dc9e74ac7ebdd78cf1a9a1 WHIRLPOOL e3e2020dab794cff74dc2f6793cf672f7242b35b5f4659e419f9f9868d8ea8e01199c4d7889b3d4c21af375d8aebe96ecdcc8502f9997ddb2c54464516e88544
+DIST firefox-52.2.0esr-xh.xpi 441173 SHA256 ff7479b05c613b0777e32bbc092117e9c206470742a78daf03adb5d0a0b4dd63 SHA512 1b435dbba9a19e0b2788da6854bcba6f33d1a6d961b2c361e33097b5b53ce009c53952824934767c7817f0da99774b1d1af4be5e084650a9a606ed76fa4ea437 WHIRLPOOL 1abf2c970fbddae0807ef7bb36bff2f58927085ffc645895e1cfa706393ace2d2f6a600dac235fb3bd4627901c0670dd3e853203b277e4c7e3be5243ef16b022
+DIST firefox-52.2.0esr-zh-CN.xpi 461695 SHA256 017282ac0e55e435e794a495ba1047acf1255b81ba6723783db4f443e2adb37d SHA512 eb382ad7dfe0f200964e0ccaab99a8ed7874f0378b3aeb6e62ad94401189b30bba3dd5e85f26c71829c0edc8a6de92b5886d8530ad91a2069fac9a734059a837 WHIRLPOOL d3a0d4d7e69abf92d67ca8e8775ceb458252c94fbc546f4548733b790467cecc4d3875b38b23e693034cf4d84c123797d91642a0b65c889f904d0198c3b2f87a
+DIST firefox-52.2.0esr-zh-TW.xpi 472534 SHA256 0129e1b38a65abc09b9f4c3af1a20efe545075644a8388e4e4dd65d143687e7e SHA512 8522007325ca788a16ea0c65ea17b67441ac15355a6c1329bbb7d468170b76bf0fdac9c4e9e0b74e13de25cde5b0c198f02c9f00c57dac459abc45d8635d2438 WHIRLPOOL dcc9c2c1109efd0aebebb74f9a6a92bf32ae5a04a193e02c2135df37530b557b89a7d56ae221e676fbbb4b271a2492c6fbb22196193169503a8e41a8015e2c74
+DIST firefox-52.2.0esr.source.tar.xz 212019288 SHA256 a2f180e4109b15d86d58444134996c1d49eb52e7702d89510508fbd7bddb9381 SHA512 62a2bd47c9f4b325199b8a0b155a7a412ffbd493e8ca6ff246ade5b10aacea22bc806bc646824059f7c97b71d27e167025c600293c781fbad3fdefb8bbc8d18e WHIRLPOOL de2fbb7d0625633dc5cd6d9d58f3ed47ccae147cd0e28487ea7e258e3c5550a4d3e882d9a7c3540d218eacfb9d5050074f8ccb1601ce5967308b761a192ede00
 DIST firefox-54.0-ach.xpi 426784 SHA256 7f783745298e65c347f39576d7f4da212d9adbba7fef8e90bd0038af906b4f31 SHA512 1a7782c1560b4a26e90e9ed06d572133c8b3e6d611c9e41e1b413a27e4b13cb2bf3ef3a113989455ea2b64eb96ee917fb4a02dc79dcdc92f98ba3fd860a98854 WHIRLPOOL c619b780c1690c59af5c680d25422915b81e7f90cc9733e0fee93090edc92d48bb41d590b5721251a3958fc03c3009470676e820c757549f1bf74b7d4b88a7e3
 DIST firefox-54.0-af.xpi 436584 SHA256 8f21ffd7cd10fd05c738a8bd7bf6b4d2f6ff12510385055bc3d81ceb7f0af882 SHA512 957e1ce720b6bc9497ee31b93eb8fad0c2a1da8d5869d7fecfac10e1af6de00ed0d5e9b59837c08cfa3e20e6f7362a061d5d94c39da058bc79748f9773880ecf WHIRLPOOL 4461a529882fe69d9ced804f12db90bbd67c8c9f5252f0d8b1ecb5b56fb4f3227aa2d44fa0de56d8ad7d0b583db04e623e0c35faf8b21f8f5a8e8236ffb81be2
 DIST firefox-54.0-an.xpi 445342 SHA256 1d315794e2cb960ea6c2eadca06ddfadd657eb85497f3b294837d1ff6b1da2da SHA512 a72fd3ff4fa4e993d445635c08fba409ebd6848c509efa92461571d8c7c21a56d67f74be76d37fcb12c7a5f784e52237801044d21e6bcb780570fe059a26b09e WHIRLPOOL 9c3e8a2a3741bf90c641f74182ba745e9d566cfe42ff566e52649e03eac2bff33f813ff957e3a8ed70a285c5a392aa99fc3b7a65bd41554f523055a08f6c45a7

diff --git a/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch b/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
deleted file mode 100644
index f7997bc..0000000
--- a/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h.orig	2017-04-04 18:32:38.007556606 +0200
-+++ b/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h	2017-04-04 18:34:02.380234036 +0200
-@@ -51,8 +51,8 @@
- #include "mozHunspellAllocator.h"
- 
- #define malloc(size) HunspellAllocator::CountingMalloc(size)
--#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
--#define free(ptr) HunspellAllocator::CountingFree(ptr)
-+//#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
-+//#define free(ptr) HunspellAllocator::CountingFree(ptr)
- #define realloc(ptr, size) HunspellAllocator::CountingRealloc(ptr, size)
- 
- #endif

diff --git a/www-client/firefox/firefox-52.1.2.ebuild b/www-client/firefox/firefox-52.2.0.ebuild
similarity index 99%
rename from www-client/firefox/firefox-52.1.2.ebuild
rename to www-client/firefox/firefox-52.2.0.ebuild
index 91b2a43..315b034 100644
--- a/www-client/firefox/firefox-52.1.2.ebuild
+++ b/www-client/firefox/firefox-52.2.0.ebuild
@@ -24,7 +24,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-52.0-patches-08"
+PATCH="${PN}-52.2-patches-01"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 MOZCONFIG_OPTIONAL_GTK2ONLY=1
@@ -125,7 +125,6 @@ src_unpack() {
 src_prepare() {
 	# Apply our patches
 	eapply "${WORKDIR}/firefox"
-	eapply "${FILESDIR}"/musl_drop_hunspell_alloc_hooks.patch
 
 	# Enable gnomebreakpad
 	if use debug ; then


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2018-05-22 19:27 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2018-05-22 19:27 UTC (permalink / raw
  To: gentoo-commits

commit:     ae5cf10d9a9da9d2c132e39bc5f670a46469878b
Author:     Jory A. Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Tue May 22 19:26:52 2018 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Tue May 22 19:27:39 2018 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=ae5cf10d

www-client/firefox - Fix musl build completely

 www-client/firefox/Manifest                    |     2 +-
 www-client/firefox/files/firefox-ffmpeg4.patch | 13698 -----------------------
 www-client/firefox/firefox-60.0.1.ebuild       |     3 +-
 3 files changed, 2 insertions(+), 13701 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index f32e96b..eba1e2a 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,4 +1,4 @@
-DIST firefox-60.0-patches-0.tar.xz 10708 BLAKE2B a677556257cf9935fdc856b1fe640e720f33084eea0a256d85f1d89b9b02068bb62de14ad39ea8854d4e57a84335149177394fdf1f3a84334056b844db733560 SHA512 665e5b0565c39e6646a953912b8b1d870558340d6ab13d068947e33c8c43a321f8033e47722c33e266fc476ce4c7dc1ea3690cdc590ca08f90a0c6515d71090f
+DIST firefox-60.0-patches-02.tar.xz 111088 BLAKE2B 9564d55b243c5e759a83b6d48076d3de9060c7bd99498df3ced477077b5ce2e2582452979872f0707ee681633d04a9761e2887282d69cced7e20bf39efc38c2c SHA512 919ffdb0624f1fa68a7e457f5270833e69c8f29e1764a46edfc345056c4e8ada1e85e53de3766fd9a0b2afc1a959c15762e27f43e29f5945176f9ade362407ac
 DIST firefox-60.0.1-ach.xpi 496056 BLAKE2B 5bc684c3b4550c5ffd956e2222fe13c41d59b15c89a04f3f7b7b75f5396b59c23f4c31b68a284144bc642f52528da5cf488bb6381659a56cbc5b6c4cac9bbf8b SHA512 e20bac51e42a10624dcd65135b156c7cdbd9ad2b745be10d88f3bbbf26495081d091d7fde91946f4d159416db7fff1ad66d1fca05e3a50385b1cc1c9f742d817
 DIST firefox-60.0.1-af.xpi 486534 BLAKE2B 3a73f48c3144de2eec7b87591107851bd2d7c0ccde98432abe844d08f3a958eae26bca9cabb5487be59205b8c841991372068d78e07dba36eef973241a4e9b8f SHA512 45ee0d111318fbd48254bc835f40dd5b07670c44a57f8c4b3987181e550bd29b56a91b8bb2fabf3e04a855041172dab4f36cc64c4d8c7209086e6c8f89591b00
 DIST firefox-60.0.1-an.xpi 519725 BLAKE2B 01a33db80716913bbc2f93cf8159b5017c32ab65917a0f2468cbb5d010e4f15add77f7d645e63d9804553cbcdd11e0c4c60b2b9789a8cfbceb0bb4f5d64294fe SHA512 53aff6cb9a4115e4df2de8620d5f93695ce7f9aac86597d9901c2d74f6c146b4871f2cc8c70b93c5494031d05a18a91076c8172e486a602831028fe9f7307774

diff --git a/www-client/firefox/files/firefox-ffmpeg4.patch b/www-client/firefox/files/firefox-ffmpeg4.patch
deleted file mode 100644
index bccd8d6..0000000
--- a/www-client/firefox/files/firefox-ffmpeg4.patch
+++ /dev/null
@@ -1,13698 +0,0 @@
-
-# HG changeset patch
-# User Jean-Yves Avenard <jyavenard@mozilla.com>
-# Date 1524125955 -7200
-# Node ID 573a198b7fdf076e27eb1f468162df101246d7b3
-# Parent  b0c68c17915159517e82c04b26801ff3869f61be
-Bug 1435212 - Add support for FFmpeg 4.0. r=bryce
-
-MozReview-Commit-ID: JlDFSUyGQu
-
-diff --git a/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp b/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp
-+++ b/dom/media/platforms/ffmpeg/FFmpegDataDecoder.cpp
-@@ -72,25 +72,31 @@ FFmpegDataDecoder<LIBAV_VER>::InitDecode
-   mCodecContext->opaque = this;
- 
-   InitCodecContext();
- 
-   if (mExtraData) {
-     mCodecContext->extradata_size = mExtraData->Length();
-     // FFmpeg may use SIMD instructions to access the data which reads the
-     // data in 32 bytes block. Must ensure we have enough data to read.
-+#if LIBAVCODEC_VERSION_MAJOR >= 58
-+    mExtraData->AppendElements(AV_INPUT_BUFFER_PADDING_SIZE);
-+#else
-     mExtraData->AppendElements(FF_INPUT_BUFFER_PADDING_SIZE);
-+#endif
-     mCodecContext->extradata = mExtraData->Elements();
-   } else {
-     mCodecContext->extradata_size = 0;
-   }
- 
-+#if LIBAVCODEC_VERSION_MAJOR < 57
-   if (codec->capabilities & CODEC_CAP_DR1) {
-     mCodecContext->flags |= CODEC_FLAG_EMU_EDGE;
-   }
-+#endif
- 
-   if (mLib->avcodec_open2(mCodecContext, codec, nullptr) < 0) {
-     mLib->avcodec_close(mCodecContext);
-     mLib->av_freep(&mCodecContext);
-     return MediaResult(NS_ERROR_DOM_MEDIA_FATAL_ERR,
-                        RESULT_DETAIL("Couldn't initialise ffmpeg decoder"));
-   }
- 
-diff --git a/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp b/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp
-+++ b/dom/media/platforms/ffmpeg/FFmpegLibWrapper.cpp
-@@ -58,22 +58,24 @@ FFmpegLibWrapper::Link()
- 
-   enum {
-     AV_FUNC_AVUTIL_MASK = 1 << 8,
-     AV_FUNC_53 = 1 << 0,
-     AV_FUNC_54 = 1 << 1,
-     AV_FUNC_55 = 1 << 2,
-     AV_FUNC_56 = 1 << 3,
-     AV_FUNC_57 = 1 << 4,
-+    AV_FUNC_58 = 1 << 5,
-     AV_FUNC_AVUTIL_53 = AV_FUNC_53 | AV_FUNC_AVUTIL_MASK,
-     AV_FUNC_AVUTIL_54 = AV_FUNC_54 | AV_FUNC_AVUTIL_MASK,
-     AV_FUNC_AVUTIL_55 = AV_FUNC_55 | AV_FUNC_AVUTIL_MASK,
-     AV_FUNC_AVUTIL_56 = AV_FUNC_56 | AV_FUNC_AVUTIL_MASK,
-     AV_FUNC_AVUTIL_57 = AV_FUNC_57 | AV_FUNC_AVUTIL_MASK,
--    AV_FUNC_AVCODEC_ALL = AV_FUNC_53 | AV_FUNC_54 | AV_FUNC_55 | AV_FUNC_56 | AV_FUNC_57,
-+    AV_FUNC_AVUTIL_58 = AV_FUNC_58 | AV_FUNC_AVUTIL_MASK,
-+    AV_FUNC_AVCODEC_ALL = AV_FUNC_53 | AV_FUNC_54 | AV_FUNC_55 | AV_FUNC_56 | AV_FUNC_57 | AV_FUNC_58,
-     AV_FUNC_AVUTIL_ALL = AV_FUNC_AVCODEC_ALL | AV_FUNC_AVUTIL_MASK
-   };
- 
-   switch (macro) {
-     case 53:
-       version = AV_FUNC_53;
-       break;
-     case 54:
-@@ -83,16 +85,19 @@ FFmpegLibWrapper::Link()
-       version = AV_FUNC_55;
-       break;
-     case 56:
-       version = AV_FUNC_56;
-       break;
-     case 57:
-       version = AV_FUNC_57;
-       break;
-+    case 58:
-+      version = AV_FUNC_58;
-+      break;
-     default:
-       FFMPEG_LOG("Unknown avcodec version");
-       Unlink();
-       return isFFMpeg
-              ? ((macro > 57)
-                 ? LinkResult::UnknownFutureFFMpegVersion
-                 : LinkResult::UnknownOlderFFMpegVersion)
-              // All LibAV versions<54.35.1 are blocked, therefore we must be
-@@ -131,19 +136,19 @@ FFmpegLibWrapper::Link()
-   AV_FUNC(av_parser_close, AV_FUNC_AVCODEC_ALL)
-   AV_FUNC(av_parser_parse2, AV_FUNC_AVCODEC_ALL)
-   AV_FUNC(avcodec_alloc_frame, (AV_FUNC_53 | AV_FUNC_54))
-   AV_FUNC(avcodec_get_frame_defaults, (AV_FUNC_53 | AV_FUNC_54))
-   AV_FUNC(avcodec_free_frame, AV_FUNC_54)
-   AV_FUNC(av_log_set_level, AV_FUNC_AVUTIL_ALL)
-   AV_FUNC(av_malloc, AV_FUNC_AVUTIL_ALL)
-   AV_FUNC(av_freep, AV_FUNC_AVUTIL_ALL)
--  AV_FUNC(av_frame_alloc, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57))
--  AV_FUNC(av_frame_free, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57))
--  AV_FUNC(av_frame_unref, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57))
-+  AV_FUNC(av_frame_alloc, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57 | AV_FUNC_AVUTIL_58))
-+  AV_FUNC(av_frame_free, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57 | AV_FUNC_AVUTIL_58))
-+  AV_FUNC(av_frame_unref, (AV_FUNC_AVUTIL_55 | AV_FUNC_AVUTIL_56 | AV_FUNC_AVUTIL_57 | AV_FUNC_AVUTIL_58))
-   AV_FUNC_OPTION(av_frame_get_colorspace, AV_FUNC_AVUTIL_ALL)
- #undef AV_FUNC
- #undef AV_FUNC_OPTION
- 
-   avcodec_register_all();
-   if (MOZ_LOG_TEST(sPDMLog, LogLevel::Debug)) {
-     av_log_set_level(AV_LOG_DEBUG);
-   } else if (MOZ_LOG_TEST(sPDMLog, LogLevel::Info)) {
-diff --git a/dom/media/platforms/ffmpeg/FFmpegLibs.h b/dom/media/platforms/ffmpeg/FFmpegLibs.h
---- a/dom/media/platforms/ffmpeg/FFmpegLibs.h
-+++ b/dom/media/platforms/ffmpeg/FFmpegLibs.h
-@@ -22,18 +22,20 @@ extern "C" {
- #if LIBAVCODEC_VERSION_MAJOR < 55
- #define AV_CODEC_ID_VP6F CODEC_ID_VP6F
- #define AV_CODEC_ID_H264 CODEC_ID_H264
- #define AV_CODEC_ID_AAC CODEC_ID_AAC
- #define AV_CODEC_ID_MP3 CODEC_ID_MP3
- #define AV_CODEC_ID_VP8 CODEC_ID_VP8
- #define AV_CODEC_ID_NONE CODEC_ID_NONE
- #define AV_CODEC_ID_FLAC CODEC_ID_FLAC
-+typedef CodecID AVCodecID;
-+#endif
-+#if LIBAVCODEC_VERSION_MAJOR <= 55
- #define AV_CODEC_FLAG_LOW_DELAY CODEC_FLAG_LOW_DELAY
--typedef CodecID AVCodecID;
- #endif
- 
- #ifdef FFVPX_VERSION
- enum { LIBAV_VER = FFVPX_VERSION };
- #else
- enum { LIBAV_VER = LIBAVCODEC_VERSION_MAJOR };
- #endif
- 
-diff --git a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
-+++ b/dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp
-@@ -21,22 +21,25 @@ template <int V> class FFmpegDecoderModu
- public:
-   static already_AddRefed<PlatformDecoderModule> Create(FFmpegLibWrapper*);
- };
- 
- static FFmpegLibWrapper sLibAV;
- 
- static const char* sLibs[] = {
- #if defined(XP_DARWIN)
-+  "libavcodec.58.dylib",
-   "libavcodec.57.dylib",
-   "libavcodec.56.dylib",
-   "libavcodec.55.dylib",
-   "libavcodec.54.dylib",
-   "libavcodec.53.dylib",
- #else
-+  "libavcodec.so.58",
-+  "libavcodec-ffmpeg.so.58",
-   "libavcodec-ffmpeg.so.57",
-   "libavcodec-ffmpeg.so.56",
-   "libavcodec.so.57",
-   "libavcodec.so.56",
-   "libavcodec.so.55",
-   "libavcodec.so.54",
-   "libavcodec.so.53",
- #endif
-@@ -129,16 +132,17 @@ FFmpegRuntimeLinker::CreateDecoderModule
-   }
-   RefPtr<PlatformDecoderModule> module;
-   switch (sLibAV.mVersion) {
-     case 53: module = FFmpegDecoderModule<53>::Create(&sLibAV); break;
-     case 54: module = FFmpegDecoderModule<54>::Create(&sLibAV); break;
-     case 55:
-     case 56: module = FFmpegDecoderModule<55>::Create(&sLibAV); break;
-     case 57: module = FFmpegDecoderModule<57>::Create(&sLibAV); break;
-+    case 58: module = FFmpegDecoderModule<58>::Create(&sLibAV); break;
-     default: module = nullptr;
-   }
-   return module.forget();
- }
- 
- /* static */ const char*
- FFmpegRuntimeLinker::LinkStatusString()
- {
-diff --git a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
---- a/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
-+++ b/dom/media/platforms/ffmpeg/FFmpegVideoDecoder.cpp
-@@ -161,17 +161,17 @@ FFmpegVideoDecoder<LIBAV_VER>::InitCodec
-     decode_threads = 8;
-   } else if (mInfo.mDisplay.width >= 1024) {
-     decode_threads = 4;
-   } else if (mInfo.mDisplay.width >= 320) {
-     decode_threads = 2;
-   }
- 
-   if (mLowLatency) {
--    mCodecContext->flags |= CODEC_FLAG_LOW_DELAY;
-+    mCodecContext->flags |= AV_CODEC_FLAG_LOW_DELAY;
-     // ffvp9 and ffvp8 at this stage do not support slice threading, but it may
-     // help with the h264 decoder if there's ever one.
-     mCodecContext->thread_type = FF_THREAD_SLICE;
-   } else {
-     decode_threads = std::min(decode_threads, PR_GetNumberOfProcessors() - 1);
-     decode_threads = std::max(decode_threads, 1);
-     mCodecContext->thread_count = decode_threads;
-     if (decode_threads > 1) {
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/COPYING.LGPLv2.1 b/dom/media/platforms/ffmpeg/ffmpeg58/include/COPYING.LGPLv2.1
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/COPYING.LGPLv2.1
-@@ -0,0 +1,504 @@
-+                  GNU LESSER GENERAL PUBLIC LICENSE
-+                       Version 2.1, February 1999
-+
-+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
-+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ Everyone is permitted to copy and distribute verbatim copies
-+ of this license document, but changing it is not allowed.
-+
-+[This is the first released version of the Lesser GPL.  It also counts
-+ as the successor of the GNU Library Public License, version 2, hence
-+ the version number 2.1.]
-+
-+                            Preamble
-+
-+  The licenses for most software are designed to take away your
-+freedom to share and change it.  By contrast, the GNU General Public
-+Licenses are intended to guarantee your freedom to share and change
-+free software--to make sure the software is free for all its users.
-+
-+  This license, the Lesser General Public License, applies to some
-+specially designated software packages--typically libraries--of the
-+Free Software Foundation and other authors who decide to use it.  You
-+can use it too, but we suggest you first think carefully about whether
-+this license or the ordinary General Public License is the better
-+strategy to use in any particular case, based on the explanations below.
-+
-+  When we speak of free software, we are referring to freedom of use,
-+not price.  Our General Public Licenses are designed to make sure that
-+you have the freedom to distribute copies of free software (and charge
-+for this service if you wish); that you receive source code or can get
-+it if you want it; that you can change the software and use pieces of
-+it in new free programs; and that you are informed that you can do
-+these things.
-+
-+  To protect your rights, we need to make restrictions that forbid
-+distributors to deny you these rights or to ask you to surrender these
-+rights.  These restrictions translate to certain responsibilities for
-+you if you distribute copies of the library or if you modify it.
-+
-+  For example, if you distribute copies of the library, whether gratis
-+or for a fee, you must give the recipients all the rights that we gave
-+you.  You must make sure that they, too, receive or can get the source
-+code.  If you link other code with the library, you must provide
-+complete object files to the recipients, so that they can relink them
-+with the library after making changes to the library and recompiling
-+it.  And you must show them these terms so they know their rights.
-+
-+  We protect your rights with a two-step method: (1) we copyright the
-+library, and (2) we offer you this license, which gives you legal
-+permission to copy, distribute and/or modify the library.
-+
-+  To protect each distributor, we want to make it very clear that
-+there is no warranty for the free library.  Also, if the library is
-+modified by someone else and passed on, the recipients should know
-+that what they have is not the original version, so that the original
-+author's reputation will not be affected by problems that might be
-+introduced by others.
-+\f
-+  Finally, software patents pose a constant threat to the existence of
-+any free program.  We wish to make sure that a company cannot
-+effectively restrict the users of a free program by obtaining a
-+restrictive license from a patent holder.  Therefore, we insist that
-+any patent license obtained for a version of the library must be
-+consistent with the full freedom of use specified in this license.
-+
-+  Most GNU software, including some libraries, is covered by the
-+ordinary GNU General Public License.  This license, the GNU Lesser
-+General Public License, applies to certain designated libraries, and
-+is quite different from the ordinary General Public License.  We use
-+this license for certain libraries in order to permit linking those
-+libraries into non-free programs.
-+
-+  When a program is linked with a library, whether statically or using
-+a shared library, the combination of the two is legally speaking a
-+combined work, a derivative of the original library.  The ordinary
-+General Public License therefore permits such linking only if the
-+entire combination fits its criteria of freedom.  The Lesser General
-+Public License permits more lax criteria for linking other code with
-+the library.
-+
-+  We call this license the "Lesser" General Public License because it
-+does Less to protect the user's freedom than the ordinary General
-+Public License.  It also provides other free software developers Less
-+of an advantage over competing non-free programs.  These disadvantages
-+are the reason we use the ordinary General Public License for many
-+libraries.  However, the Lesser license provides advantages in certain
-+special circumstances.
-+
-+  For example, on rare occasions, there may be a special need to
-+encourage the widest possible use of a certain library, so that it becomes
-+a de-facto standard.  To achieve this, non-free programs must be
-+allowed to use the library.  A more frequent case is that a free
-+library does the same job as widely used non-free libraries.  In this
-+case, there is little to gain by limiting the free library to free
-+software only, so we use the Lesser General Public License.
-+
-+  In other cases, permission to use a particular library in non-free
-+programs enables a greater number of people to use a large body of
-+free software.  For example, permission to use the GNU C Library in
-+non-free programs enables many more people to use the whole GNU
-+operating system, as well as its variant, the GNU/Linux operating
-+system.
-+
-+  Although the Lesser General Public License is Less protective of the
-+users' freedom, it does ensure that the user of a program that is
-+linked with the Library has the freedom and the wherewithal to run
-+that program using a modified version of the Library.
-+
-+  The precise terms and conditions for copying, distribution and
-+modification follow.  Pay close attention to the difference between a
-+"work based on the library" and a "work that uses the library".  The
-+former contains code derived from the library, whereas the latter must
-+be combined with the library in order to run.
-+\f
-+                  GNU LESSER GENERAL PUBLIC LICENSE
-+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-+
-+  0. This License Agreement applies to any software library or other
-+program which contains a notice placed by the copyright holder or
-+other authorized party saying it may be distributed under the terms of
-+this Lesser General Public License (also called "this License").
-+Each licensee is addressed as "you".
-+
-+  A "library" means a collection of software functions and/or data
-+prepared so as to be conveniently linked with application programs
-+(which use some of those functions and data) to form executables.
-+
-+  The "Library", below, refers to any such software library or work
-+which has been distributed under these terms.  A "work based on the
-+Library" means either the Library or any derivative work under
-+copyright law: that is to say, a work containing the Library or a
-+portion of it, either verbatim or with modifications and/or translated
-+straightforwardly into another language.  (Hereinafter, translation is
-+included without limitation in the term "modification".)
-+
-+  "Source code" for a work means the preferred form of the work for
-+making modifications to it.  For a library, complete source code means
-+all the source code for all modules it contains, plus any associated
-+interface definition files, plus the scripts used to control compilation
-+and installation of the library.
-+
-+  Activities other than copying, distribution and modification are not
-+covered by this License; they are outside its scope.  The act of
-+running a program using the Library is not restricted, and output from
-+such a program is covered only if its contents constitute a work based
-+on the Library (independent of the use of the Library in a tool for
-+writing it).  Whether that is true depends on what the Library does
-+and what the program that uses the Library does.
-+
-+  1. You may copy and distribute verbatim copies of the Library's
-+complete source code as you receive it, in any medium, provided that
-+you conspicuously and appropriately publish on each copy an
-+appropriate copyright notice and disclaimer of warranty; keep intact
-+all the notices that refer to this License and to the absence of any
-+warranty; and distribute a copy of this License along with the
-+Library.
-+
-+  You may charge a fee for the physical act of transferring a copy,
-+and you may at your option offer warranty protection in exchange for a
-+fee.
-+\f
-+  2. You may modify your copy or copies of the Library or any portion
-+of it, thus forming a work based on the Library, and copy and
-+distribute such modifications or work under the terms of Section 1
-+above, provided that you also meet all of these conditions:
-+
-+    a) The modified work must itself be a software library.
-+
-+    b) You must cause the files modified to carry prominent notices
-+    stating that you changed the files and the date of any change.
-+
-+    c) You must cause the whole of the work to be licensed at no
-+    charge to all third parties under the terms of this License.
-+
-+    d) If a facility in the modified Library refers to a function or a
-+    table of data to be supplied by an application program that uses
-+    the facility, other than as an argument passed when the facility
-+    is invoked, then you must make a good faith effort to ensure that,
-+    in the event an application does not supply such function or
-+    table, the facility still operates, and performs whatever part of
-+    its purpose remains meaningful.
-+
-+    (For example, a function in a library to compute square roots has
-+    a purpose that is entirely well-defined independent of the
-+    application.  Therefore, Subsection 2d requires that any
-+    application-supplied function or table used by this function must
-+    be optional: if the application does not supply it, the square
-+    root function must still compute square roots.)
-+
-+These requirements apply to the modified work as a whole.  If
-+identifiable sections of that work are not derived from the Library,
-+and can be reasonably considered independent and separate works in
-+themselves, then this License, and its terms, do not apply to those
-+sections when you distribute them as separate works.  But when you
-+distribute the same sections as part of a whole which is a work based
-+on the Library, the distribution of the whole must be on the terms of
-+this License, whose permissions for other licensees extend to the
-+entire whole, and thus to each and every part regardless of who wrote
-+it.
-+
-+Thus, it is not the intent of this section to claim rights or contest
-+your rights to work written entirely by you; rather, the intent is to
-+exercise the right to control the distribution of derivative or
-+collective works based on the Library.
-+
-+In addition, mere aggregation of another work not based on the Library
-+with the Library (or with a work based on the Library) on a volume of
-+a storage or distribution medium does not bring the other work under
-+the scope of this License.
-+
-+  3. You may opt to apply the terms of the ordinary GNU General Public
-+License instead of this License to a given copy of the Library.  To do
-+this, you must alter all the notices that refer to this License, so
-+that they refer to the ordinary GNU General Public License, version 2,
-+instead of to this License.  (If a newer version than version 2 of the
-+ordinary GNU General Public License has appeared, then you can specify
-+that version instead if you wish.)  Do not make any other change in
-+these notices.
-+\f
-+  Once this change is made in a given copy, it is irreversible for
-+that copy, so the ordinary GNU General Public License applies to all
-+subsequent copies and derivative works made from that copy.
-+
-+  This option is useful when you wish to copy part of the code of
-+the Library into a program that is not a library.
-+
-+  4. You may copy and distribute the Library (or a portion or
-+derivative of it, under Section 2) in object code or executable form
-+under the terms of Sections 1 and 2 above provided that you accompany
-+it with the complete corresponding machine-readable source code, which
-+must be distributed under the terms of Sections 1 and 2 above on a
-+medium customarily used for software interchange.
-+
-+  If distribution of object code is made by offering access to copy
-+from a designated place, then offering equivalent access to copy the
-+source code from the same place satisfies the requirement to
-+distribute the source code, even though third parties are not
-+compelled to copy the source along with the object code.
-+
-+  5. A program that contains no derivative of any portion of the
-+Library, but is designed to work with the Library by being compiled or
-+linked with it, is called a "work that uses the Library".  Such a
-+work, in isolation, is not a derivative work of the Library, and
-+therefore falls outside the scope of this License.
-+
-+  However, linking a "work that uses the Library" with the Library
-+creates an executable that is a derivative of the Library (because it
-+contains portions of the Library), rather than a "work that uses the
-+library".  The executable is therefore covered by this License.
-+Section 6 states terms for distribution of such executables.
-+
-+  When a "work that uses the Library" uses material from a header file
-+that is part of the Library, the object code for the work may be a
-+derivative work of the Library even though the source code is not.
-+Whether this is true is especially significant if the work can be
-+linked without the Library, or if the work is itself a library.  The
-+threshold for this to be true is not precisely defined by law.
-+
-+  If such an object file uses only numerical parameters, data
-+structure layouts and accessors, and small macros and small inline
-+functions (ten lines or less in length), then the use of the object
-+file is unrestricted, regardless of whether it is legally a derivative
-+work.  (Executables containing this object code plus portions of the
-+Library will still fall under Section 6.)
-+
-+  Otherwise, if the work is a derivative of the Library, you may
-+distribute the object code for the work under the terms of Section 6.
-+Any executables containing that work also fall under Section 6,
-+whether or not they are linked directly with the Library itself.
-+\f
-+  6. As an exception to the Sections above, you may also combine or
-+link a "work that uses the Library" with the Library to produce a
-+work containing portions of the Library, and distribute that work
-+under terms of your choice, provided that the terms permit
-+modification of the work for the customer's own use and reverse
-+engineering for debugging such modifications.
-+
-+  You must give prominent notice with each copy of the work that the
-+Library is used in it and that the Library and its use are covered by
-+this License.  You must supply a copy of this License.  If the work
-+during execution displays copyright notices, you must include the
-+copyright notice for the Library among them, as well as a reference
-+directing the user to the copy of this License.  Also, you must do one
-+of these things:
-+
-+    a) Accompany the work with the complete corresponding
-+    machine-readable source code for the Library including whatever
-+    changes were used in the work (which must be distributed under
-+    Sections 1 and 2 above); and, if the work is an executable linked
-+    with the Library, with the complete machine-readable "work that
-+    uses the Library", as object code and/or source code, so that the
-+    user can modify the Library and then relink to produce a modified
-+    executable containing the modified Library.  (It is understood
-+    that the user who changes the contents of definitions files in the
-+    Library will not necessarily be able to recompile the application
-+    to use the modified definitions.)
-+
-+    b) Use a suitable shared library mechanism for linking with the
-+    Library.  A suitable mechanism is one that (1) uses at run time a
-+    copy of the library already present on the user's computer system,
-+    rather than copying library functions into the executable, and (2)
-+    will operate properly with a modified version of the library, if
-+    the user installs one, as long as the modified version is
-+    interface-compatible with the version that the work was made with.
-+
-+    c) Accompany the work with a written offer, valid for at
-+    least three years, to give the same user the materials
-+    specified in Subsection 6a, above, for a charge no more
-+    than the cost of performing this distribution.
-+
-+    d) If distribution of the work is made by offering access to copy
-+    from a designated place, offer equivalent access to copy the above
-+    specified materials from the same place.
-+
-+    e) Verify that the user has already received a copy of these
-+    materials or that you have already sent this user a copy.
-+
-+  For an executable, the required form of the "work that uses the
-+Library" must include any data and utility programs needed for
-+reproducing the executable from it.  However, as a special exception,
-+the materials to be distributed need not include anything that is
-+normally distributed (in either source or binary form) with the major
-+components (compiler, kernel, and so on) of the operating system on
-+which the executable runs, unless that component itself accompanies
-+the executable.
-+
-+  It may happen that this requirement contradicts the license
-+restrictions of other proprietary libraries that do not normally
-+accompany the operating system.  Such a contradiction means you cannot
-+use both them and the Library together in an executable that you
-+distribute.
-+\f
-+  7. You may place library facilities that are a work based on the
-+Library side-by-side in a single library together with other library
-+facilities not covered by this License, and distribute such a combined
-+library, provided that the separate distribution of the work based on
-+the Library and of the other library facilities is otherwise
-+permitted, and provided that you do these two things:
-+
-+    a) Accompany the combined library with a copy of the same work
-+    based on the Library, uncombined with any other library
-+    facilities.  This must be distributed under the terms of the
-+    Sections above.
-+
-+    b) Give prominent notice with the combined library of the fact
-+    that part of it is a work based on the Library, and explaining
-+    where to find the accompanying uncombined form of the same work.
-+
-+  8. You may not copy, modify, sublicense, link with, or distribute
-+the Library except as expressly provided under this License.  Any
-+attempt otherwise to copy, modify, sublicense, link with, or
-+distribute the Library is void, and will automatically terminate your
-+rights under this License.  However, parties who have received copies,
-+or rights, from you under this License will not have their licenses
-+terminated so long as such parties remain in full compliance.
-+
-+  9. You are not required to accept this License, since you have not
-+signed it.  However, nothing else grants you permission to modify or
-+distribute the Library or its derivative works.  These actions are
-+prohibited by law if you do not accept this License.  Therefore, by
-+modifying or distributing the Library (or any work based on the
-+Library), you indicate your acceptance of this License to do so, and
-+all its terms and conditions for copying, distributing or modifying
-+the Library or works based on it.
-+
-+  10. Each time you redistribute the Library (or any work based on the
-+Library), the recipient automatically receives a license from the
-+original licensor to copy, distribute, link with or modify the Library
-+subject to these terms and conditions.  You may not impose any further
-+restrictions on the recipients' exercise of the rights granted herein.
-+You are not responsible for enforcing compliance by third parties with
-+this License.
-+\f
-+  11. If, as a consequence of a court judgment or allegation of patent
-+infringement or for any other reason (not limited to patent issues),
-+conditions are imposed on you (whether by court order, agreement or
-+otherwise) that contradict the conditions of this License, they do not
-+excuse you from the conditions of this License.  If you cannot
-+distribute so as to satisfy simultaneously your obligations under this
-+License and any other pertinent obligations, then as a consequence you
-+may not distribute the Library at all.  For example, if a patent
-+license would not permit royalty-free redistribution of the Library by
-+all those who receive copies directly or indirectly through you, then
-+the only way you could satisfy both it and this License would be to
-+refrain entirely from distribution of the Library.
-+
-+If any portion of this section is held invalid or unenforceable under any
-+particular circumstance, the balance of the section is intended to apply,
-+and the section as a whole is intended to apply in other circumstances.
-+
-+It is not the purpose of this section to induce you to infringe any
-+patents or other property right claims or to contest validity of any
-+such claims; this section has the sole purpose of protecting the
-+integrity of the free software distribution system which is
-+implemented by public license practices.  Many people have made
-+generous contributions to the wide range of software distributed
-+through that system in reliance on consistent application of that
-+system; it is up to the author/donor to decide if he or she is willing
-+to distribute software through any other system and a licensee cannot
-+impose that choice.
-+
-+This section is intended to make thoroughly clear what is believed to
-+be a consequence of the rest of this License.
-+
-+  12. If the distribution and/or use of the Library is restricted in
-+certain countries either by patents or by copyrighted interfaces, the
-+original copyright holder who places the Library under this License may add
-+an explicit geographical distribution limitation excluding those countries,
-+so that distribution is permitted only in or among countries not thus
-+excluded.  In such case, this License incorporates the limitation as if
-+written in the body of this License.
-+
-+  13. The Free Software Foundation may publish revised and/or new
-+versions of the Lesser General Public License from time to time.
-+Such new versions will be similar in spirit to the present version,
-+but may differ in detail to address new problems or concerns.
-+
-+Each version is given a distinguishing version number.  If the Library
-+specifies a version number of this License which applies to it and
-+"any later version", you have the option of following the terms and
-+conditions either of that version or of any later version published by
-+the Free Software Foundation.  If the Library does not specify a
-+license version number, you may choose any version ever published by
-+the Free Software Foundation.
-+\f
-+  14. If you wish to incorporate parts of the Library into other free
-+programs whose distribution conditions are incompatible with these,
-+write to the author to ask for permission.  For software which is
-+copyrighted by the Free Software Foundation, write to the Free
-+Software Foundation; we sometimes make exceptions for this.  Our
-+decision will be guided by the two goals of preserving the free status
-+of all derivatives of our free software and of promoting the sharing
-+and reuse of software generally.
-+
-+                            NO WARRANTY
-+
-+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-+
-+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-+DAMAGES.
-+
-+                     END OF TERMS AND CONDITIONS
-+\f
-+           How to Apply These Terms to Your New Libraries
-+
-+  If you develop a new library, and you want it to be of the greatest
-+possible use to the public, we recommend making it free software that
-+everyone can redistribute and change.  You can do so by permitting
-+redistribution under these terms (or, alternatively, under the terms of the
-+ordinary General Public License).
-+
-+  To apply these terms, attach the following notices to the library.  It is
-+safest to attach them to the start of each source file to most effectively
-+convey the exclusion of warranty; and each file should have at least the
-+"copyright" line and a pointer to where the full notice is found.
-+
-+    <one line to give the library's name and a brief idea of what it does.>
-+    Copyright (C) <year>  <name of author>
-+
-+    This library is free software; you can redistribute it and/or
-+    modify it under the terms of the GNU Lesser General Public
-+    License as published by the Free Software Foundation; either
-+    version 2.1 of the License, or (at your option) any later version.
-+
-+    This library is distributed in the hope that it will be useful,
-+    but WITHOUT ANY WARRANTY; without even the implied warranty of
-+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+    Lesser General Public License for more details.
-+
-+    You should have received a copy of the GNU Lesser General Public
-+    License along with this library; if not, write to the Free Software
-+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+
-+Also add information on how to contact you by electronic and paper mail.
-+
-+You should also get your employer (if you work as a programmer) or your
-+school, if any, to sign a "copyright disclaimer" for the library, if
-+necessary.  Here is a sample; alter the names:
-+
-+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-+
-+  <signature of Ty Coon>, 1 April 1990
-+  Ty Coon, President of Vice
-+
-+That's all there is to it!
-+
-+
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avcodec.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avcodec.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avcodec.h
-@@ -0,0 +1,6146 @@
-+/*
-+ * copyright (c) 2001 Fabrice Bellard
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_AVCODEC_H
-+#define AVCODEC_AVCODEC_H
-+
-+/**
-+ * @file
-+ * @ingroup libavc
-+ * Libavcodec external API header
-+ */
-+
-+#include <errno.h>
-+#include "libavutil/samplefmt.h"
-+#include "libavutil/attributes.h"
-+#include "libavutil/avutil.h"
-+#include "libavutil/buffer.h"
-+#include "libavutil/cpu.h"
-+#include "libavutil/channel_layout.h"
-+#include "libavutil/dict.h"
-+#include "libavutil/frame.h"
-+#include "libavutil/hwcontext.h"
-+#include "libavutil/log.h"
-+#include "libavutil/pixfmt.h"
-+#include "libavutil/rational.h"
-+
-+#include "version.h"
-+
-+/**
-+ * @defgroup libavc libavcodec
-+ * Encoding/Decoding Library
-+ *
-+ * @{
-+ *
-+ * @defgroup lavc_decoding Decoding
-+ * @{
-+ * @}
-+ *
-+ * @defgroup lavc_encoding Encoding
-+ * @{
-+ * @}
-+ *
-+ * @defgroup lavc_codec Codecs
-+ * @{
-+ * @defgroup lavc_codec_native Native Codecs
-+ * @{
-+ * @}
-+ * @defgroup lavc_codec_wrappers External library wrappers
-+ * @{
-+ * @}
-+ * @defgroup lavc_codec_hwaccel Hardware Accelerators bridge
-+ * @{
-+ * @}
-+ * @}
-+ * @defgroup lavc_internal Internal
-+ * @{
-+ * @}
-+ * @}
-+ */
-+
-+/**
-+ * @ingroup libavc
-+ * @defgroup lavc_encdec send/receive encoding and decoding API overview
-+ * @{
-+ *
-+ * The avcodec_send_packet()/avcodec_receive_frame()/avcodec_send_frame()/
-+ * avcodec_receive_packet() functions provide an encode/decode API, which
-+ * decouples input and output.
-+ *
-+ * The API is very similar for encoding/decoding and audio/video, and works as
-+ * follows:
-+ * - Set up and open the AVCodecContext as usual.
-+ * - Send valid input:
-+ *   - For decoding, call avcodec_send_packet() to give the decoder raw
-+ *     compressed data in an AVPacket.
-+ *   - For encoding, call avcodec_send_frame() to give the encoder an AVFrame
-+ *     containing uncompressed audio or video.
-+ *   In both cases, it is recommended that AVPackets and AVFrames are
-+ *   refcounted, or libavcodec might have to copy the input data. (libavformat
-+ *   always returns refcounted AVPackets, and av_frame_get_buffer() allocates
-+ *   refcounted AVFrames.)
-+ * - Receive output in a loop. Periodically call one of the avcodec_receive_*()
-+ *   functions and process their output:
-+ *   - For decoding, call avcodec_receive_frame(). On success, it will return
-+ *     an AVFrame containing uncompressed audio or video data.
-+ *   - For encoding, call avcodec_receive_packet(). On success, it will return
-+ *     an AVPacket with a compressed frame.
-+ *   Repeat this call until it returns AVERROR(EAGAIN) or an error. The
-+ *   AVERROR(EAGAIN) return value means that new input data is required to
-+ *   return new output. In this case, continue with sending input. For each
-+ *   input frame/packet, the codec will typically return 1 output frame/packet,
-+ *   but it can also be 0 or more than 1.
-+ *
-+ * At the beginning of decoding or encoding, the codec might accept multiple
-+ * input frames/packets without returning a frame, until its internal buffers
-+ * are filled. This situation is handled transparently if you follow the steps
-+ * outlined above.
-+ *
-+ * In theory, sending input can result in EAGAIN - this should happen only if
-+ * not all output was received. You can use this to structure alternative decode
-+ * or encode loops other than the one suggested above. For example, you could
-+ * try sending new input on each iteration, and try to receive output if that
-+ * returns EAGAIN.
-+ *
-+ * End of stream situations. These require "flushing" (aka draining) the codec,
-+ * as the codec might buffer multiple frames or packets internally for
-+ * performance or out of necessity (consider B-frames).
-+ * This is handled as follows:
-+ * - Instead of valid input, send NULL to the avcodec_send_packet() (decoding)
-+ *   or avcodec_send_frame() (encoding) functions. This will enter draining
-+ *   mode.
-+ * - Call avcodec_receive_frame() (decoding) or avcodec_receive_packet()
-+ *   (encoding) in a loop until AVERROR_EOF is returned. The functions will
-+ *   not return AVERROR(EAGAIN), unless you forgot to enter draining mode.
-+ * - Before decoding can be resumed again, the codec has to be reset with
-+ *   avcodec_flush_buffers().
-+ *
-+ * Using the API as outlined above is highly recommended. But it is also
-+ * possible to call functions outside of this rigid schema. For example, you can
-+ * call avcodec_send_packet() repeatedly without calling
-+ * avcodec_receive_frame(). In this case, avcodec_send_packet() will succeed
-+ * until the codec's internal buffer has been filled up (which is typically of
-+ * size 1 per output frame, after initial input), and then reject input with
-+ * AVERROR(EAGAIN). Once it starts rejecting input, you have no choice but to
-+ * read at least some output.
-+ *
-+ * Not all codecs will follow a rigid and predictable dataflow; the only
-+ * guarantee is that an AVERROR(EAGAIN) return value on a send/receive call on
-+ * one end implies that a receive/send call on the other end will succeed, or
-+ * at least will not fail with AVERROR(EAGAIN). In general, no codec will
-+ * permit unlimited buffering of input or output.
-+ *
-+ * This API replaces the following legacy functions:
-+ * - avcodec_decode_video2() and avcodec_decode_audio4():
-+ *   Use avcodec_send_packet() to feed input to the decoder, then use
-+ *   avcodec_receive_frame() to receive decoded frames after each packet.
-+ *   Unlike with the old video decoding API, multiple frames might result from
-+ *   a packet. For audio, splitting the input packet into frames by partially
-+ *   decoding packets becomes transparent to the API user. You never need to
-+ *   feed an AVPacket to the API twice (unless it is rejected with AVERROR(EAGAIN) - then
-+ *   no data was read from the packet).
-+ *   Additionally, sending a flush/draining packet is required only once.
-+ * - avcodec_encode_video2()/avcodec_encode_audio2():
-+ *   Use avcodec_send_frame() to feed input to the encoder, then use
-+ *   avcodec_receive_packet() to receive encoded packets.
-+ *   Providing user-allocated buffers for avcodec_receive_packet() is not
-+ *   possible.
-+ * - The new API does not handle subtitles yet.
-+ *
-+ * Mixing new and old function calls on the same AVCodecContext is not allowed,
-+ * and will result in undefined behavior.
-+ *
-+ * Some codecs might require using the new API; using the old API will return
-+ * an error when calling it. All codecs support the new API.
-+ *
-+ * A codec is not allowed to return AVERROR(EAGAIN) for both sending and receiving. This
-+ * would be an invalid state, which could put the codec user into an endless
-+ * loop. The API has no concept of time either: it cannot happen that trying to
-+ * do avcodec_send_packet() results in AVERROR(EAGAIN), but a repeated call 1 second
-+ * later accepts the packet (with no other receive/flush API calls involved).
-+ * The API is a strict state machine, and the passage of time is not supposed
-+ * to influence it. Some timing-dependent behavior might still be deemed
-+ * acceptable in certain cases. But it must never result in both send/receive
-+ * returning EAGAIN at the same time at any point. It must also absolutely be
-+ * avoided that the current state is "unstable" and can "flip-flop" between
-+ * the send/receive APIs allowing progress. For example, it's not allowed that
-+ * the codec randomly decides that it actually wants to consume a packet now
-+ * instead of returning a frame, after it just returned AVERROR(EAGAIN) on an
-+ * avcodec_send_packet() call.
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavc_core Core functions/structures.
-+ * @ingroup libavc
-+ *
-+ * Basic definitions, functions for querying libavcodec capabilities,
-+ * allocating core structures, etc.
-+ * @{
-+ */
-+
-+
-+/**
-+ * Identify the syntax and semantics of the bitstream.
-+ * The principle is roughly:
-+ * Two decoders with the same ID can decode the same streams.
-+ * Two encoders with the same ID can encode compatible streams.
-+ * There may be slight deviations from the principle due to implementation
-+ * details.
-+ *
-+ * If you add a codec ID to this list, add it so that
-+ * 1. no value of an existing codec ID changes (that would break ABI),
-+ * 2. it is as close as possible to similar codecs
-+ *
-+ * After adding new codec IDs, do not forget to add an entry to the codec
-+ * descriptor list and bump libavcodec minor version.
-+ */
-+enum AVCodecID {
-+    AV_CODEC_ID_NONE,
-+
-+    /* video codecs */
-+    AV_CODEC_ID_MPEG1VIDEO,
-+    AV_CODEC_ID_MPEG2VIDEO, ///< preferred ID for MPEG-1/2 video decoding
-+    AV_CODEC_ID_H261,
-+    AV_CODEC_ID_H263,
-+    AV_CODEC_ID_RV10,
-+    AV_CODEC_ID_RV20,
-+    AV_CODEC_ID_MJPEG,
-+    AV_CODEC_ID_MJPEGB,
-+    AV_CODEC_ID_LJPEG,
-+    AV_CODEC_ID_SP5X,
-+    AV_CODEC_ID_JPEGLS,
-+    AV_CODEC_ID_MPEG4,
-+    AV_CODEC_ID_RAWVIDEO,
-+    AV_CODEC_ID_MSMPEG4V1,
-+    AV_CODEC_ID_MSMPEG4V2,
-+    AV_CODEC_ID_MSMPEG4V3,
-+    AV_CODEC_ID_WMV1,
-+    AV_CODEC_ID_WMV2,
-+    AV_CODEC_ID_H263P,
-+    AV_CODEC_ID_H263I,
-+    AV_CODEC_ID_FLV1,
-+    AV_CODEC_ID_SVQ1,
-+    AV_CODEC_ID_SVQ3,
-+    AV_CODEC_ID_DVVIDEO,
-+    AV_CODEC_ID_HUFFYUV,
-+    AV_CODEC_ID_CYUV,
-+    AV_CODEC_ID_H264,
-+    AV_CODEC_ID_INDEO3,
-+    AV_CODEC_ID_VP3,
-+    AV_CODEC_ID_THEORA,
-+    AV_CODEC_ID_ASV1,
-+    AV_CODEC_ID_ASV2,
-+    AV_CODEC_ID_FFV1,
-+    AV_CODEC_ID_4XM,
-+    AV_CODEC_ID_VCR1,
-+    AV_CODEC_ID_CLJR,
-+    AV_CODEC_ID_MDEC,
-+    AV_CODEC_ID_ROQ,
-+    AV_CODEC_ID_INTERPLAY_VIDEO,
-+    AV_CODEC_ID_XAN_WC3,
-+    AV_CODEC_ID_XAN_WC4,
-+    AV_CODEC_ID_RPZA,
-+    AV_CODEC_ID_CINEPAK,
-+    AV_CODEC_ID_WS_VQA,
-+    AV_CODEC_ID_MSRLE,
-+    AV_CODEC_ID_MSVIDEO1,
-+    AV_CODEC_ID_IDCIN,
-+    AV_CODEC_ID_8BPS,
-+    AV_CODEC_ID_SMC,
-+    AV_CODEC_ID_FLIC,
-+    AV_CODEC_ID_TRUEMOTION1,
-+    AV_CODEC_ID_VMDVIDEO,
-+    AV_CODEC_ID_MSZH,
-+    AV_CODEC_ID_ZLIB,
-+    AV_CODEC_ID_QTRLE,
-+    AV_CODEC_ID_TSCC,
-+    AV_CODEC_ID_ULTI,
-+    AV_CODEC_ID_QDRAW,
-+    AV_CODEC_ID_VIXL,
-+    AV_CODEC_ID_QPEG,
-+    AV_CODEC_ID_PNG,
-+    AV_CODEC_ID_PPM,
-+    AV_CODEC_ID_PBM,
-+    AV_CODEC_ID_PGM,
-+    AV_CODEC_ID_PGMYUV,
-+    AV_CODEC_ID_PAM,
-+    AV_CODEC_ID_FFVHUFF,
-+    AV_CODEC_ID_RV30,
-+    AV_CODEC_ID_RV40,
-+    AV_CODEC_ID_VC1,
-+    AV_CODEC_ID_WMV3,
-+    AV_CODEC_ID_LOCO,
-+    AV_CODEC_ID_WNV1,
-+    AV_CODEC_ID_AASC,
-+    AV_CODEC_ID_INDEO2,
-+    AV_CODEC_ID_FRAPS,
-+    AV_CODEC_ID_TRUEMOTION2,
-+    AV_CODEC_ID_BMP,
-+    AV_CODEC_ID_CSCD,
-+    AV_CODEC_ID_MMVIDEO,
-+    AV_CODEC_ID_ZMBV,
-+    AV_CODEC_ID_AVS,
-+    AV_CODEC_ID_SMACKVIDEO,
-+    AV_CODEC_ID_NUV,
-+    AV_CODEC_ID_KMVC,
-+    AV_CODEC_ID_FLASHSV,
-+    AV_CODEC_ID_CAVS,
-+    AV_CODEC_ID_JPEG2000,
-+    AV_CODEC_ID_VMNC,
-+    AV_CODEC_ID_VP5,
-+    AV_CODEC_ID_VP6,
-+    AV_CODEC_ID_VP6F,
-+    AV_CODEC_ID_TARGA,
-+    AV_CODEC_ID_DSICINVIDEO,
-+    AV_CODEC_ID_TIERTEXSEQVIDEO,
-+    AV_CODEC_ID_TIFF,
-+    AV_CODEC_ID_GIF,
-+    AV_CODEC_ID_DXA,
-+    AV_CODEC_ID_DNXHD,
-+    AV_CODEC_ID_THP,
-+    AV_CODEC_ID_SGI,
-+    AV_CODEC_ID_C93,
-+    AV_CODEC_ID_BETHSOFTVID,
-+    AV_CODEC_ID_PTX,
-+    AV_CODEC_ID_TXD,
-+    AV_CODEC_ID_VP6A,
-+    AV_CODEC_ID_AMV,
-+    AV_CODEC_ID_VB,
-+    AV_CODEC_ID_PCX,
-+    AV_CODEC_ID_SUNRAST,
-+    AV_CODEC_ID_INDEO4,
-+    AV_CODEC_ID_INDEO5,
-+    AV_CODEC_ID_MIMIC,
-+    AV_CODEC_ID_RL2,
-+    AV_CODEC_ID_ESCAPE124,
-+    AV_CODEC_ID_DIRAC,
-+    AV_CODEC_ID_BFI,
-+    AV_CODEC_ID_CMV,
-+    AV_CODEC_ID_MOTIONPIXELS,
-+    AV_CODEC_ID_TGV,
-+    AV_CODEC_ID_TGQ,
-+    AV_CODEC_ID_TQI,
-+    AV_CODEC_ID_AURA,
-+    AV_CODEC_ID_AURA2,
-+    AV_CODEC_ID_V210X,
-+    AV_CODEC_ID_TMV,
-+    AV_CODEC_ID_V210,
-+    AV_CODEC_ID_DPX,
-+    AV_CODEC_ID_MAD,
-+    AV_CODEC_ID_FRWU,
-+    AV_CODEC_ID_FLASHSV2,
-+    AV_CODEC_ID_CDGRAPHICS,
-+    AV_CODEC_ID_R210,
-+    AV_CODEC_ID_ANM,
-+    AV_CODEC_ID_BINKVIDEO,
-+    AV_CODEC_ID_IFF_ILBM,
-+#define AV_CODEC_ID_IFF_BYTERUN1 AV_CODEC_ID_IFF_ILBM
-+    AV_CODEC_ID_KGV1,
-+    AV_CODEC_ID_YOP,
-+    AV_CODEC_ID_VP8,
-+    AV_CODEC_ID_PICTOR,
-+    AV_CODEC_ID_ANSI,
-+    AV_CODEC_ID_A64_MULTI,
-+    AV_CODEC_ID_A64_MULTI5,
-+    AV_CODEC_ID_R10K,
-+    AV_CODEC_ID_MXPEG,
-+    AV_CODEC_ID_LAGARITH,
-+    AV_CODEC_ID_PRORES,
-+    AV_CODEC_ID_JV,
-+    AV_CODEC_ID_DFA,
-+    AV_CODEC_ID_WMV3IMAGE,
-+    AV_CODEC_ID_VC1IMAGE,
-+    AV_CODEC_ID_UTVIDEO,
-+    AV_CODEC_ID_BMV_VIDEO,
-+    AV_CODEC_ID_VBLE,
-+    AV_CODEC_ID_DXTORY,
-+    AV_CODEC_ID_V410,
-+    AV_CODEC_ID_XWD,
-+    AV_CODEC_ID_CDXL,
-+    AV_CODEC_ID_XBM,
-+    AV_CODEC_ID_ZEROCODEC,
-+    AV_CODEC_ID_MSS1,
-+    AV_CODEC_ID_MSA1,
-+    AV_CODEC_ID_TSCC2,
-+    AV_CODEC_ID_MTS2,
-+    AV_CODEC_ID_CLLC,
-+    AV_CODEC_ID_MSS2,
-+    AV_CODEC_ID_VP9,
-+    AV_CODEC_ID_AIC,
-+    AV_CODEC_ID_ESCAPE130,
-+    AV_CODEC_ID_G2M,
-+    AV_CODEC_ID_WEBP,
-+    AV_CODEC_ID_HNM4_VIDEO,
-+    AV_CODEC_ID_HEVC,
-+#define AV_CODEC_ID_H265 AV_CODEC_ID_HEVC
-+    AV_CODEC_ID_FIC,
-+    AV_CODEC_ID_ALIAS_PIX,
-+    AV_CODEC_ID_BRENDER_PIX,
-+    AV_CODEC_ID_PAF_VIDEO,
-+    AV_CODEC_ID_EXR,
-+    AV_CODEC_ID_VP7,
-+    AV_CODEC_ID_SANM,
-+    AV_CODEC_ID_SGIRLE,
-+    AV_CODEC_ID_MVC1,
-+    AV_CODEC_ID_MVC2,
-+    AV_CODEC_ID_HQX,
-+    AV_CODEC_ID_TDSC,
-+    AV_CODEC_ID_HQ_HQA,
-+    AV_CODEC_ID_HAP,
-+    AV_CODEC_ID_DDS,
-+    AV_CODEC_ID_DXV,
-+    AV_CODEC_ID_SCREENPRESSO,
-+    AV_CODEC_ID_RSCC,
-+
-+    AV_CODEC_ID_Y41P = 0x8000,
-+    AV_CODEC_ID_AVRP,
-+    AV_CODEC_ID_012V,
-+    AV_CODEC_ID_AVUI,
-+    AV_CODEC_ID_AYUV,
-+    AV_CODEC_ID_TARGA_Y216,
-+    AV_CODEC_ID_V308,
-+    AV_CODEC_ID_V408,
-+    AV_CODEC_ID_YUV4,
-+    AV_CODEC_ID_AVRN,
-+    AV_CODEC_ID_CPIA,
-+    AV_CODEC_ID_XFACE,
-+    AV_CODEC_ID_SNOW,
-+    AV_CODEC_ID_SMVJPEG,
-+    AV_CODEC_ID_APNG,
-+    AV_CODEC_ID_DAALA,
-+    AV_CODEC_ID_CFHD,
-+    AV_CODEC_ID_TRUEMOTION2RT,
-+    AV_CODEC_ID_M101,
-+    AV_CODEC_ID_MAGICYUV,
-+    AV_CODEC_ID_SHEERVIDEO,
-+    AV_CODEC_ID_YLC,
-+    AV_CODEC_ID_PSD,
-+    AV_CODEC_ID_PIXLET,
-+    AV_CODEC_ID_SPEEDHQ,
-+    AV_CODEC_ID_FMVC,
-+    AV_CODEC_ID_SCPR,
-+    AV_CODEC_ID_CLEARVIDEO,
-+    AV_CODEC_ID_XPM,
-+    AV_CODEC_ID_AV1,
-+    AV_CODEC_ID_BITPACKED,
-+    AV_CODEC_ID_MSCC,
-+    AV_CODEC_ID_SRGC,
-+    AV_CODEC_ID_SVG,
-+    AV_CODEC_ID_GDV,
-+    AV_CODEC_ID_FITS,
-+
-+    /* various PCM "codecs" */
-+    AV_CODEC_ID_FIRST_AUDIO = 0x10000,     ///< A dummy id pointing at the start of audio codecs
-+    AV_CODEC_ID_PCM_S16LE = 0x10000,
-+    AV_CODEC_ID_PCM_S16BE,
-+    AV_CODEC_ID_PCM_U16LE,
-+    AV_CODEC_ID_PCM_U16BE,
-+    AV_CODEC_ID_PCM_S8,
-+    AV_CODEC_ID_PCM_U8,
-+    AV_CODEC_ID_PCM_MULAW,
-+    AV_CODEC_ID_PCM_ALAW,
-+    AV_CODEC_ID_PCM_S32LE,
-+    AV_CODEC_ID_PCM_S32BE,
-+    AV_CODEC_ID_PCM_U32LE,
-+    AV_CODEC_ID_PCM_U32BE,
-+    AV_CODEC_ID_PCM_S24LE,
-+    AV_CODEC_ID_PCM_S24BE,
-+    AV_CODEC_ID_PCM_U24LE,
-+    AV_CODEC_ID_PCM_U24BE,
-+    AV_CODEC_ID_PCM_S24DAUD,
-+    AV_CODEC_ID_PCM_ZORK,
-+    AV_CODEC_ID_PCM_S16LE_PLANAR,
-+    AV_CODEC_ID_PCM_DVD,
-+    AV_CODEC_ID_PCM_F32BE,
-+    AV_CODEC_ID_PCM_F32LE,
-+    AV_CODEC_ID_PCM_F64BE,
-+    AV_CODEC_ID_PCM_F64LE,
-+    AV_CODEC_ID_PCM_BLURAY,
-+    AV_CODEC_ID_PCM_LXF,
-+    AV_CODEC_ID_S302M,
-+    AV_CODEC_ID_PCM_S8_PLANAR,
-+    AV_CODEC_ID_PCM_S24LE_PLANAR,
-+    AV_CODEC_ID_PCM_S32LE_PLANAR,
-+    AV_CODEC_ID_PCM_S16BE_PLANAR,
-+
-+    AV_CODEC_ID_PCM_S64LE = 0x10800,
-+    AV_CODEC_ID_PCM_S64BE,
-+    AV_CODEC_ID_PCM_F16LE,
-+    AV_CODEC_ID_PCM_F24LE,
-+
-+    /* various ADPCM codecs */
-+    AV_CODEC_ID_ADPCM_IMA_QT = 0x11000,
-+    AV_CODEC_ID_ADPCM_IMA_WAV,
-+    AV_CODEC_ID_ADPCM_IMA_DK3,
-+    AV_CODEC_ID_ADPCM_IMA_DK4,
-+    AV_CODEC_ID_ADPCM_IMA_WS,
-+    AV_CODEC_ID_ADPCM_IMA_SMJPEG,
-+    AV_CODEC_ID_ADPCM_MS,
-+    AV_CODEC_ID_ADPCM_4XM,
-+    AV_CODEC_ID_ADPCM_XA,
-+    AV_CODEC_ID_ADPCM_ADX,
-+    AV_CODEC_ID_ADPCM_EA,
-+    AV_CODEC_ID_ADPCM_G726,
-+    AV_CODEC_ID_ADPCM_CT,
-+    AV_CODEC_ID_ADPCM_SWF,
-+    AV_CODEC_ID_ADPCM_YAMAHA,
-+    AV_CODEC_ID_ADPCM_SBPRO_4,
-+    AV_CODEC_ID_ADPCM_SBPRO_3,
-+    AV_CODEC_ID_ADPCM_SBPRO_2,
-+    AV_CODEC_ID_ADPCM_THP,
-+    AV_CODEC_ID_ADPCM_IMA_AMV,
-+    AV_CODEC_ID_ADPCM_EA_R1,
-+    AV_CODEC_ID_ADPCM_EA_R3,
-+    AV_CODEC_ID_ADPCM_EA_R2,
-+    AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
-+    AV_CODEC_ID_ADPCM_IMA_EA_EACS,
-+    AV_CODEC_ID_ADPCM_EA_XAS,
-+    AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
-+    AV_CODEC_ID_ADPCM_IMA_ISS,
-+    AV_CODEC_ID_ADPCM_G722,
-+    AV_CODEC_ID_ADPCM_IMA_APC,
-+    AV_CODEC_ID_ADPCM_VIMA,
-+
-+    AV_CODEC_ID_ADPCM_AFC = 0x11800,
-+    AV_CODEC_ID_ADPCM_IMA_OKI,
-+    AV_CODEC_ID_ADPCM_DTK,
-+    AV_CODEC_ID_ADPCM_IMA_RAD,
-+    AV_CODEC_ID_ADPCM_G726LE,
-+    AV_CODEC_ID_ADPCM_THP_LE,
-+    AV_CODEC_ID_ADPCM_PSX,
-+    AV_CODEC_ID_ADPCM_AICA,
-+    AV_CODEC_ID_ADPCM_IMA_DAT4,
-+    AV_CODEC_ID_ADPCM_MTAF,
-+
-+    /* AMR */
-+    AV_CODEC_ID_AMR_NB = 0x12000,
-+    AV_CODEC_ID_AMR_WB,
-+
-+    /* RealAudio codecs*/
-+    AV_CODEC_ID_RA_144 = 0x13000,
-+    AV_CODEC_ID_RA_288,
-+
-+    /* various DPCM codecs */
-+    AV_CODEC_ID_ROQ_DPCM = 0x14000,
-+    AV_CODEC_ID_INTERPLAY_DPCM,
-+    AV_CODEC_ID_XAN_DPCM,
-+    AV_CODEC_ID_SOL_DPCM,
-+
-+    AV_CODEC_ID_SDX2_DPCM = 0x14800,
-+    AV_CODEC_ID_GREMLIN_DPCM,
-+
-+    /* audio codecs */
-+    AV_CODEC_ID_MP2 = 0x15000,
-+    AV_CODEC_ID_MP3, ///< preferred ID for decoding MPEG audio layer 1, 2 or 3
-+    AV_CODEC_ID_AAC,
-+    AV_CODEC_ID_AC3,
-+    AV_CODEC_ID_DTS,
-+    AV_CODEC_ID_VORBIS,
-+    AV_CODEC_ID_DVAUDIO,
-+    AV_CODEC_ID_WMAV1,
-+    AV_CODEC_ID_WMAV2,
-+    AV_CODEC_ID_MACE3,
-+    AV_CODEC_ID_MACE6,
-+    AV_CODEC_ID_VMDAUDIO,
-+    AV_CODEC_ID_FLAC,
-+    AV_CODEC_ID_MP3ADU,
-+    AV_CODEC_ID_MP3ON4,
-+    AV_CODEC_ID_SHORTEN,
-+    AV_CODEC_ID_ALAC,
-+    AV_CODEC_ID_WESTWOOD_SND1,
-+    AV_CODEC_ID_GSM, ///< as in Berlin toast format
-+    AV_CODEC_ID_QDM2,
-+    AV_CODEC_ID_COOK,
-+    AV_CODEC_ID_TRUESPEECH,
-+    AV_CODEC_ID_TTA,
-+    AV_CODEC_ID_SMACKAUDIO,
-+    AV_CODEC_ID_QCELP,
-+    AV_CODEC_ID_WAVPACK,
-+    AV_CODEC_ID_DSICINAUDIO,
-+    AV_CODEC_ID_IMC,
-+    AV_CODEC_ID_MUSEPACK7,
-+    AV_CODEC_ID_MLP,
-+    AV_CODEC_ID_GSM_MS, /* as found in WAV */
-+    AV_CODEC_ID_ATRAC3,
-+    AV_CODEC_ID_APE,
-+    AV_CODEC_ID_NELLYMOSER,
-+    AV_CODEC_ID_MUSEPACK8,
-+    AV_CODEC_ID_SPEEX,
-+    AV_CODEC_ID_WMAVOICE,
-+    AV_CODEC_ID_WMAPRO,
-+    AV_CODEC_ID_WMALOSSLESS,
-+    AV_CODEC_ID_ATRAC3P,
-+    AV_CODEC_ID_EAC3,
-+    AV_CODEC_ID_SIPR,
-+    AV_CODEC_ID_MP1,
-+    AV_CODEC_ID_TWINVQ,
-+    AV_CODEC_ID_TRUEHD,
-+    AV_CODEC_ID_MP4ALS,
-+    AV_CODEC_ID_ATRAC1,
-+    AV_CODEC_ID_BINKAUDIO_RDFT,
-+    AV_CODEC_ID_BINKAUDIO_DCT,
-+    AV_CODEC_ID_AAC_LATM,
-+    AV_CODEC_ID_QDMC,
-+    AV_CODEC_ID_CELT,
-+    AV_CODEC_ID_G723_1,
-+    AV_CODEC_ID_G729,
-+    AV_CODEC_ID_8SVX_EXP,
-+    AV_CODEC_ID_8SVX_FIB,
-+    AV_CODEC_ID_BMV_AUDIO,
-+    AV_CODEC_ID_RALF,
-+    AV_CODEC_ID_IAC,
-+    AV_CODEC_ID_ILBC,
-+    AV_CODEC_ID_OPUS,
-+    AV_CODEC_ID_COMFORT_NOISE,
-+    AV_CODEC_ID_TAK,
-+    AV_CODEC_ID_METASOUND,
-+    AV_CODEC_ID_PAF_AUDIO,
-+    AV_CODEC_ID_ON2AVC,
-+    AV_CODEC_ID_DSS_SP,
-+    AV_CODEC_ID_CODEC2,
-+
-+    AV_CODEC_ID_FFWAVESYNTH = 0x15800,
-+    AV_CODEC_ID_SONIC,
-+    AV_CODEC_ID_SONIC_LS,
-+    AV_CODEC_ID_EVRC,
-+    AV_CODEC_ID_SMV,
-+    AV_CODEC_ID_DSD_LSBF,
-+    AV_CODEC_ID_DSD_MSBF,
-+    AV_CODEC_ID_DSD_LSBF_PLANAR,
-+    AV_CODEC_ID_DSD_MSBF_PLANAR,
-+    AV_CODEC_ID_4GV,
-+    AV_CODEC_ID_INTERPLAY_ACM,
-+    AV_CODEC_ID_XMA1,
-+    AV_CODEC_ID_XMA2,
-+    AV_CODEC_ID_DST,
-+    AV_CODEC_ID_ATRAC3AL,
-+    AV_CODEC_ID_ATRAC3PAL,
-+    AV_CODEC_ID_DOLBY_E,
-+    AV_CODEC_ID_APTX,
-+    AV_CODEC_ID_APTX_HD,
-+    AV_CODEC_ID_SBC,
-+
-+    /* subtitle codecs */
-+    AV_CODEC_ID_FIRST_SUBTITLE = 0x17000,          ///< A dummy ID pointing at the start of subtitle codecs.
-+    AV_CODEC_ID_DVD_SUBTITLE = 0x17000,
-+    AV_CODEC_ID_DVB_SUBTITLE,
-+    AV_CODEC_ID_TEXT,  ///< raw UTF-8 text
-+    AV_CODEC_ID_XSUB,
-+    AV_CODEC_ID_SSA,
-+    AV_CODEC_ID_MOV_TEXT,
-+    AV_CODEC_ID_HDMV_PGS_SUBTITLE,
-+    AV_CODEC_ID_DVB_TELETEXT,
-+    AV_CODEC_ID_SRT,
-+
-+    AV_CODEC_ID_MICRODVD   = 0x17800,
-+    AV_CODEC_ID_EIA_608,
-+    AV_CODEC_ID_JACOSUB,
-+    AV_CODEC_ID_SAMI,
-+    AV_CODEC_ID_REALTEXT,
-+    AV_CODEC_ID_STL,
-+    AV_CODEC_ID_SUBVIEWER1,
-+    AV_CODEC_ID_SUBVIEWER,
-+    AV_CODEC_ID_SUBRIP,
-+    AV_CODEC_ID_WEBVTT,
-+    AV_CODEC_ID_MPL2,
-+    AV_CODEC_ID_VPLAYER,
-+    AV_CODEC_ID_PJS,
-+    AV_CODEC_ID_ASS,
-+    AV_CODEC_ID_HDMV_TEXT_SUBTITLE,
-+
-+    /* other specific kind of codecs (generally used for attachments) */
-+    AV_CODEC_ID_FIRST_UNKNOWN = 0x18000,           ///< A dummy ID pointing at the start of various fake codecs.
-+    AV_CODEC_ID_TTF = 0x18000,
-+
-+    AV_CODEC_ID_SCTE_35, ///< Contain timestamp estimated through PCR of program stream.
-+    AV_CODEC_ID_BINTEXT    = 0x18800,
-+    AV_CODEC_ID_XBIN,
-+    AV_CODEC_ID_IDF,
-+    AV_CODEC_ID_OTF,
-+    AV_CODEC_ID_SMPTE_KLV,
-+    AV_CODEC_ID_DVD_NAV,
-+    AV_CODEC_ID_TIMED_ID3,
-+    AV_CODEC_ID_BIN_DATA,
-+
-+
-+    AV_CODEC_ID_PROBE = 0x19000, ///< codec_id is not known (like AV_CODEC_ID_NONE) but lavf should attempt to identify it
-+
-+    AV_CODEC_ID_MPEG2TS = 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS
-+                                * stream (only used by libavformat) */
-+    AV_CODEC_ID_MPEG4SYSTEMS = 0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems
-+                                * stream (only used by libavformat) */
-+    AV_CODEC_ID_FFMETADATA = 0x21000,   ///< Dummy codec for streams containing only metadata information.
-+    AV_CODEC_ID_WRAPPED_AVFRAME = 0x21001, ///< Passthrough codec, AVFrames wrapped in AVPacket
-+};
-+
-+/**
-+ * This struct describes the properties of a single codec described by an
-+ * AVCodecID.
-+ * @see avcodec_descriptor_get()
-+ */
-+typedef struct AVCodecDescriptor {
-+    enum AVCodecID     id;
-+    enum AVMediaType type;
-+    /**
-+     * Name of the codec described by this descriptor. It is non-empty and
-+     * unique for each codec descriptor. It should contain alphanumeric
-+     * characters and '_' only.
-+     */
-+    const char      *name;
-+    /**
-+     * A more descriptive name for this codec. May be NULL.
-+     */
-+    const char *long_name;
-+    /**
-+     * Codec properties, a combination of AV_CODEC_PROP_* flags.
-+     */
-+    int             props;
-+    /**
-+     * MIME type(s) associated with the codec.
-+     * May be NULL; if not, a NULL-terminated array of MIME types.
-+     * The first item is always non-NULL and is the preferred MIME type.
-+     */
-+    const char *const *mime_types;
-+    /**
-+     * If non-NULL, an array of profiles recognized for this codec.
-+     * Terminated with FF_PROFILE_UNKNOWN.
-+     */
-+    const struct AVProfile *profiles;
-+} AVCodecDescriptor;
-+
-+/**
-+ * Codec uses only intra compression.
-+ * Video and audio codecs only.
-+ */
-+#define AV_CODEC_PROP_INTRA_ONLY    (1 << 0)
-+/**
-+ * Codec supports lossy compression. Audio and video codecs only.
-+ * @note a codec may support both lossy and lossless
-+ * compression modes
-+ */
-+#define AV_CODEC_PROP_LOSSY         (1 << 1)
-+/**
-+ * Codec supports lossless compression. Audio and video codecs only.
-+ */
-+#define AV_CODEC_PROP_LOSSLESS      (1 << 2)
-+/**
-+ * Codec supports frame reordering. That is, the coded order (the order in which
-+ * the encoded packets are output by the encoders / stored / input to the
-+ * decoders) may be different from the presentation order of the corresponding
-+ * frames.
-+ *
-+ * For codecs that do not have this property set, PTS and DTS should always be
-+ * equal.
-+ */
-+#define AV_CODEC_PROP_REORDER       (1 << 3)
-+/**
-+ * Subtitle codec is bitmap based
-+ * Decoded AVSubtitle data can be read from the AVSubtitleRect->pict field.
-+ */
-+#define AV_CODEC_PROP_BITMAP_SUB    (1 << 16)
-+/**
-+ * Subtitle codec is text based.
-+ * Decoded AVSubtitle data can be read from the AVSubtitleRect->ass field.
-+ */
-+#define AV_CODEC_PROP_TEXT_SUB      (1 << 17)
-+
-+/**
-+ * @ingroup lavc_decoding
-+ * Required number of additionally allocated bytes at the end of the input bitstream for decoding.
-+ * This is mainly needed because some optimized bitstream readers read
-+ * 32 or 64 bit at once and could read over the end.<br>
-+ * Note: If the first 23 bits of the additional bytes are not 0, then damaged
-+ * MPEG bitstreams could cause overread and segfault.
-+ */
-+#define AV_INPUT_BUFFER_PADDING_SIZE 64
-+
-+/**
-+ * @ingroup lavc_encoding
-+ * minimum encoding buffer size
-+ * Used to avoid some checks during header writing.
-+ */
-+#define AV_INPUT_BUFFER_MIN_SIZE 16384
-+
-+/**
-+ * @ingroup lavc_decoding
-+ */
-+enum AVDiscard{
-+    /* We leave some space between them for extensions (drop some
-+     * keyframes for intra-only or drop just some bidir frames). */
-+    AVDISCARD_NONE    =-16, ///< discard nothing
-+    AVDISCARD_DEFAULT =  0, ///< discard useless packets like 0 size packets in avi
-+    AVDISCARD_NONREF  =  8, ///< discard all non reference
-+    AVDISCARD_BIDIR   = 16, ///< discard all bidirectional frames
-+    AVDISCARD_NONINTRA= 24, ///< discard all non intra frames
-+    AVDISCARD_NONKEY  = 32, ///< discard all frames except keyframes
-+    AVDISCARD_ALL     = 48, ///< discard all
-+};
-+
-+enum AVAudioServiceType {
-+    AV_AUDIO_SERVICE_TYPE_MAIN              = 0,
-+    AV_AUDIO_SERVICE_TYPE_EFFECTS           = 1,
-+    AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED = 2,
-+    AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED  = 3,
-+    AV_AUDIO_SERVICE_TYPE_DIALOGUE          = 4,
-+    AV_AUDIO_SERVICE_TYPE_COMMENTARY        = 5,
-+    AV_AUDIO_SERVICE_TYPE_EMERGENCY         = 6,
-+    AV_AUDIO_SERVICE_TYPE_VOICE_OVER        = 7,
-+    AV_AUDIO_SERVICE_TYPE_KARAOKE           = 8,
-+    AV_AUDIO_SERVICE_TYPE_NB                   , ///< Not part of ABI
-+};
-+
-+/**
-+ * @ingroup lavc_encoding
-+ */
-+typedef struct RcOverride{
-+    int start_frame;
-+    int end_frame;
-+    int qscale; // If this is 0 then quality_factor will be used instead.
-+    float quality_factor;
-+} RcOverride;
-+
-+/* encoding support
-+   These flags can be passed in AVCodecContext.flags before initialization.
-+   Note: Not everything is supported yet.
-+*/
-+
-+/**
-+ * Allow decoders to produce frames with data planes that are not aligned
-+ * to CPU requirements (e.g. due to cropping).
-+ */
-+#define AV_CODEC_FLAG_UNALIGNED       (1 <<  0)
-+/**
-+ * Use fixed qscale.
-+ */
-+#define AV_CODEC_FLAG_QSCALE          (1 <<  1)
-+/**
-+ * 4 MV per MB allowed / advanced prediction for H.263.
-+ */
-+#define AV_CODEC_FLAG_4MV             (1 <<  2)
-+/**
-+ * Output even those frames that might be corrupted.
-+ */
-+#define AV_CODEC_FLAG_OUTPUT_CORRUPT  (1 <<  3)
-+/**
-+ * Use qpel MC.
-+ */
-+#define AV_CODEC_FLAG_QPEL            (1 <<  4)
-+/**
-+ * Use internal 2pass ratecontrol in first pass mode.
-+ */
-+#define AV_CODEC_FLAG_PASS1           (1 <<  9)
-+/**
-+ * Use internal 2pass ratecontrol in second pass mode.
-+ */
-+#define AV_CODEC_FLAG_PASS2           (1 << 10)
-+/**
-+ * loop filter.
-+ */
-+#define AV_CODEC_FLAG_LOOP_FILTER     (1 << 11)
-+/**
-+ * Only decode/encode grayscale.
-+ */
-+#define AV_CODEC_FLAG_GRAY            (1 << 13)
-+/**
-+ * error[?] variables will be set during encoding.
-+ */
-+#define AV_CODEC_FLAG_PSNR            (1 << 15)
-+/**
-+ * Input bitstream might be truncated at a random location
-+ * instead of only at frame boundaries.
-+ */
-+#define AV_CODEC_FLAG_TRUNCATED       (1 << 16)
-+/**
-+ * Use interlaced DCT.
-+ */
-+#define AV_CODEC_FLAG_INTERLACED_DCT  (1 << 18)
-+/**
-+ * Force low delay.
-+ */
-+#define AV_CODEC_FLAG_LOW_DELAY       (1 << 19)
-+/**
-+ * Place global headers in extradata instead of every keyframe.
-+ */
-+#define AV_CODEC_FLAG_GLOBAL_HEADER   (1 << 22)
-+/**
-+ * Use only bitexact stuff (except (I)DCT).
-+ */
-+#define AV_CODEC_FLAG_BITEXACT        (1 << 23)
-+/* Fx : Flag for H.263+ extra options */
-+/**
-+ * H.263 advanced intra coding / MPEG-4 AC prediction
-+ */
-+#define AV_CODEC_FLAG_AC_PRED         (1 << 24)
-+/**
-+ * interlaced motion estimation
-+ */
-+#define AV_CODEC_FLAG_INTERLACED_ME   (1 << 29)
-+#define AV_CODEC_FLAG_CLOSED_GOP      (1U << 31)
-+
-+/**
-+ * Allow non spec compliant speedup tricks.
-+ */
-+#define AV_CODEC_FLAG2_FAST           (1 <<  0)
-+/**
-+ * Skip bitstream encoding.
-+ */
-+#define AV_CODEC_FLAG2_NO_OUTPUT      (1 <<  2)
-+/**
-+ * Place global headers at every keyframe instead of in extradata.
-+ */
-+#define AV_CODEC_FLAG2_LOCAL_HEADER   (1 <<  3)
-+
-+/**
-+ * timecode is in drop frame format. DEPRECATED!!!!
-+ */
-+#define AV_CODEC_FLAG2_DROP_FRAME_TIMECODE (1 << 13)
-+
-+/**
-+ * Input bitstream might be truncated at a packet boundaries
-+ * instead of only at frame boundaries.
-+ */
-+#define AV_CODEC_FLAG2_CHUNKS         (1 << 15)
-+/**
-+ * Discard cropping information from SPS.
-+ */
-+#define AV_CODEC_FLAG2_IGNORE_CROP    (1 << 16)
-+
-+/**
-+ * Show all frames before the first keyframe
-+ */
-+#define AV_CODEC_FLAG2_SHOW_ALL       (1 << 22)
-+/**
-+ * Export motion vectors through frame side data
-+ */
-+#define AV_CODEC_FLAG2_EXPORT_MVS     (1 << 28)
-+/**
-+ * Do not skip samples and export skip information as frame side data
-+ */
-+#define AV_CODEC_FLAG2_SKIP_MANUAL    (1 << 29)
-+/**
-+ * Do not reset ASS ReadOrder field on flush (subtitles decoding)
-+ */
-+#define AV_CODEC_FLAG2_RO_FLUSH_NOOP  (1 << 30)
-+
-+/* Unsupported options :
-+ *              Syntax Arithmetic coding (SAC)
-+ *              Reference Picture Selection
-+ *              Independent Segment Decoding */
-+/* /Fx */
-+/* codec capabilities */
-+
-+/**
-+ * Decoder can use draw_horiz_band callback.
-+ */
-+#define AV_CODEC_CAP_DRAW_HORIZ_BAND     (1 <<  0)
-+/**
-+ * Codec uses get_buffer() for allocating buffers and supports custom allocators.
-+ * If not set, it might not use get_buffer() at all or use operations that
-+ * assume the buffer was allocated by avcodec_default_get_buffer.
-+ */
-+#define AV_CODEC_CAP_DR1                 (1 <<  1)
-+#define AV_CODEC_CAP_TRUNCATED           (1 <<  3)
-+/**
-+ * Encoder or decoder requires flushing with NULL input at the end in order to
-+ * give the complete and correct output.
-+ *
-+ * NOTE: If this flag is not set, the codec is guaranteed to never be fed with
-+ *       with NULL data. The user can still send NULL data to the public encode
-+ *       or decode function, but libavcodec will not pass it along to the codec
-+ *       unless this flag is set.
-+ *
-+ * Decoders:
-+ * The decoder has a non-zero delay and needs to be fed with avpkt->data=NULL,
-+ * avpkt->size=0 at the end to get the delayed data until the decoder no longer
-+ * returns frames.
-+ *
-+ * Encoders:
-+ * The encoder needs to be fed with NULL data at the end of encoding until the
-+ * encoder no longer returns data.
-+ *
-+ * NOTE: For encoders implementing the AVCodec.encode2() function, setting this
-+ *       flag also means that the encoder must set the pts and duration for
-+ *       each output packet. If this flag is not set, the pts and duration will
-+ *       be determined by libavcodec from the input frame.
-+ */
-+#define AV_CODEC_CAP_DELAY               (1 <<  5)
-+/**
-+ * Codec can be fed a final frame with a smaller size.
-+ * This can be used to prevent truncation of the last audio samples.
-+ */
-+#define AV_CODEC_CAP_SMALL_LAST_FRAME    (1 <<  6)
-+
-+/**
-+ * Codec can output multiple frames per AVPacket
-+ * Normally demuxers return one frame at a time, demuxers which do not do
-+ * are connected to a parser to split what they return into proper frames.
-+ * This flag is reserved to the very rare category of codecs which have a
-+ * bitstream that cannot be split into frames without timeconsuming
-+ * operations like full decoding. Demuxers carrying such bitstreams thus
-+ * may return multiple frames in a packet. This has many disadvantages like
-+ * prohibiting stream copy in many cases thus it should only be considered
-+ * as a last resort.
-+ */
-+#define AV_CODEC_CAP_SUBFRAMES           (1 <<  8)
-+/**
-+ * Codec is experimental and is thus avoided in favor of non experimental
-+ * encoders
-+ */
-+#define AV_CODEC_CAP_EXPERIMENTAL        (1 <<  9)
-+/**
-+ * Codec should fill in channel configuration and samplerate instead of container
-+ */
-+#define AV_CODEC_CAP_CHANNEL_CONF        (1 << 10)
-+/**
-+ * Codec supports frame-level multithreading.
-+ */
-+#define AV_CODEC_CAP_FRAME_THREADS       (1 << 12)
-+/**
-+ * Codec supports slice-based (or partition-based) multithreading.
-+ */
-+#define AV_CODEC_CAP_SLICE_THREADS       (1 << 13)
-+/**
-+ * Codec supports changed parameters at any point.
-+ */
-+#define AV_CODEC_CAP_PARAM_CHANGE        (1 << 14)
-+/**
-+ * Codec supports avctx->thread_count == 0 (auto).
-+ */
-+#define AV_CODEC_CAP_AUTO_THREADS        (1 << 15)
-+/**
-+ * Audio encoder supports receiving a different number of samples in each call.
-+ */
-+#define AV_CODEC_CAP_VARIABLE_FRAME_SIZE (1 << 16)
-+/**
-+ * Decoder is not a preferred choice for probing.
-+ * This indicates that the decoder is not a good choice for probing.
-+ * It could for example be an expensive to spin up hardware decoder,
-+ * or it could simply not provide a lot of useful information about
-+ * the stream.
-+ * A decoder marked with this flag should only be used as last resort
-+ * choice for probing.
-+ */
-+#define AV_CODEC_CAP_AVOID_PROBING       (1 << 17)
-+/**
-+ * Codec is intra only.
-+ */
-+#define AV_CODEC_CAP_INTRA_ONLY       0x40000000
-+/**
-+ * Codec is lossless.
-+ */
-+#define AV_CODEC_CAP_LOSSLESS         0x80000000
-+
-+/**
-+ * Codec is backed by a hardware implementation. Typically used to
-+ * identify a non-hwaccel hardware decoder. For information about hwaccels, use
-+ * avcodec_get_hw_config() instead.
-+ */
-+#define AV_CODEC_CAP_HARDWARE            (1 << 18)
-+
-+/**
-+ * Codec is potentially backed by a hardware implementation, but not
-+ * necessarily. This is used instead of AV_CODEC_CAP_HARDWARE, if the
-+ * implementation provides some sort of internal fallback.
-+ */
-+#define AV_CODEC_CAP_HYBRID              (1 << 19)
-+
-+/**
-+ * Pan Scan area.
-+ * This specifies the area which should be displayed.
-+ * Note there may be multiple such areas for one frame.
-+ */
-+typedef struct AVPanScan {
-+    /**
-+     * id
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int id;
-+
-+    /**
-+     * width and height in 1/16 pel
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int width;
-+    int height;
-+
-+    /**
-+     * position of the top left corner in 1/16 pel for up to 3 fields/frames
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int16_t position[3][2];
-+} AVPanScan;
-+
-+/**
-+ * This structure describes the bitrate properties of an encoded bitstream. It
-+ * roughly corresponds to a subset the VBV parameters for MPEG-2 or HRD
-+ * parameters for H.264/HEVC.
-+ */
-+typedef struct AVCPBProperties {
-+    /**
-+     * Maximum bitrate of the stream, in bits per second.
-+     * Zero if unknown or unspecified.
-+     */
-+    int max_bitrate;
-+    /**
-+     * Minimum bitrate of the stream, in bits per second.
-+     * Zero if unknown or unspecified.
-+     */
-+    int min_bitrate;
-+    /**
-+     * Average bitrate of the stream, in bits per second.
-+     * Zero if unknown or unspecified.
-+     */
-+    int avg_bitrate;
-+
-+    /**
-+     * The size of the buffer to which the ratecontrol is applied, in bits.
-+     * Zero if unknown or unspecified.
-+     */
-+    int buffer_size;
-+
-+    /**
-+     * The delay between the time the packet this structure is associated with
-+     * is received and the time when it should be decoded, in periods of a 27MHz
-+     * clock.
-+     *
-+     * UINT64_MAX when unknown or unspecified.
-+     */
-+    uint64_t vbv_delay;
-+} AVCPBProperties;
-+
-+/**
-+ * The decoder will keep a reference to the frame and may reuse it later.
-+ */
-+#define AV_GET_BUFFER_FLAG_REF (1 << 0)
-+
-+/**
-+ * @defgroup lavc_packet AVPacket
-+ *
-+ * Types and functions for working with AVPacket.
-+ * @{
-+ */
-+enum AVPacketSideDataType {
-+    /**
-+     * An AV_PKT_DATA_PALETTE side data packet contains exactly AVPALETTE_SIZE
-+     * bytes worth of palette. This side data signals that a new palette is
-+     * present.
-+     */
-+    AV_PKT_DATA_PALETTE,
-+
-+    /**
-+     * The AV_PKT_DATA_NEW_EXTRADATA is used to notify the codec or the format
-+     * that the extradata buffer was changed and the receiving side should
-+     * act upon it appropriately. The new extradata is embedded in the side
-+     * data buffer and should be immediately used for processing the current
-+     * frame or packet.
-+     */
-+    AV_PKT_DATA_NEW_EXTRADATA,
-+
-+    /**
-+     * An AV_PKT_DATA_PARAM_CHANGE side data packet is laid out as follows:
-+     * @code
-+     * u32le param_flags
-+     * if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT)
-+     *     s32le channel_count
-+     * if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT)
-+     *     u64le channel_layout
-+     * if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE)
-+     *     s32le sample_rate
-+     * if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS)
-+     *     s32le width
-+     *     s32le height
-+     * @endcode
-+     */
-+    AV_PKT_DATA_PARAM_CHANGE,
-+
-+    /**
-+     * An AV_PKT_DATA_H263_MB_INFO side data packet contains a number of
-+     * structures with info about macroblocks relevant to splitting the
-+     * packet into smaller packets on macroblock edges (e.g. as for RFC 2190).
-+     * That is, it does not necessarily contain info about all macroblocks,
-+     * as long as the distance between macroblocks in the info is smaller
-+     * than the target payload size.
-+     * Each MB info structure is 12 bytes, and is laid out as follows:
-+     * @code
-+     * u32le bit offset from the start of the packet
-+     * u8    current quantizer at the start of the macroblock
-+     * u8    GOB number
-+     * u16le macroblock address within the GOB
-+     * u8    horizontal MV predictor
-+     * u8    vertical MV predictor
-+     * u8    horizontal MV predictor for block number 3
-+     * u8    vertical MV predictor for block number 3
-+     * @endcode
-+     */
-+    AV_PKT_DATA_H263_MB_INFO,
-+
-+    /**
-+     * This side data should be associated with an audio stream and contains
-+     * ReplayGain information in form of the AVReplayGain struct.
-+     */
-+    AV_PKT_DATA_REPLAYGAIN,
-+
-+    /**
-+     * This side data contains a 3x3 transformation matrix describing an affine
-+     * transformation that needs to be applied to the decoded video frames for
-+     * correct presentation.
-+     *
-+     * See libavutil/display.h for a detailed description of the data.
-+     */
-+    AV_PKT_DATA_DISPLAYMATRIX,
-+
-+    /**
-+     * This side data should be associated with a video stream and contains
-+     * Stereoscopic 3D information in form of the AVStereo3D struct.
-+     */
-+    AV_PKT_DATA_STEREO3D,
-+
-+    /**
-+     * This side data should be associated with an audio stream and corresponds
-+     * to enum AVAudioServiceType.
-+     */
-+    AV_PKT_DATA_AUDIO_SERVICE_TYPE,
-+
-+    /**
-+     * This side data contains quality related information from the encoder.
-+     * @code
-+     * u32le quality factor of the compressed frame. Allowed range is between 1 (good) and FF_LAMBDA_MAX (bad).
-+     * u8    picture type
-+     * u8    error count
-+     * u16   reserved
-+     * u64le[error count] sum of squared differences between encoder in and output
-+     * @endcode
-+     */
-+    AV_PKT_DATA_QUALITY_STATS,
-+
-+    /**
-+     * This side data contains an integer value representing the stream index
-+     * of a "fallback" track.  A fallback track indicates an alternate
-+     * track to use when the current track can not be decoded for some reason.
-+     * e.g. no decoder available for codec.
-+     */
-+    AV_PKT_DATA_FALLBACK_TRACK,
-+
-+    /**
-+     * This side data corresponds to the AVCPBProperties struct.
-+     */
-+    AV_PKT_DATA_CPB_PROPERTIES,
-+
-+    /**
-+     * Recommmends skipping the specified number of samples
-+     * @code
-+     * u32le number of samples to skip from start of this packet
-+     * u32le number of samples to skip from end of this packet
-+     * u8    reason for start skip
-+     * u8    reason for end   skip (0=padding silence, 1=convergence)
-+     * @endcode
-+     */
-+    AV_PKT_DATA_SKIP_SAMPLES,
-+
-+    /**
-+     * An AV_PKT_DATA_JP_DUALMONO side data packet indicates that
-+     * the packet may contain "dual mono" audio specific to Japanese DTV
-+     * and if it is true, recommends only the selected channel to be used.
-+     * @code
-+     * u8    selected channels (0=mail/left, 1=sub/right, 2=both)
-+     * @endcode
-+     */
-+    AV_PKT_DATA_JP_DUALMONO,
-+
-+    /**
-+     * A list of zero terminated key/value strings. There is no end marker for
-+     * the list, so it is required to rely on the side data size to stop.
-+     */
-+    AV_PKT_DATA_STRINGS_METADATA,
-+
-+    /**
-+     * Subtitle event position
-+     * @code
-+     * u32le x1
-+     * u32le y1
-+     * u32le x2
-+     * u32le y2
-+     * @endcode
-+     */
-+    AV_PKT_DATA_SUBTITLE_POSITION,
-+
-+    /**
-+     * Data found in BlockAdditional element of matroska container. There is
-+     * no end marker for the data, so it is required to rely on the side data
-+     * size to recognize the end. 8 byte id (as found in BlockAddId) followed
-+     * by data.
-+     */
-+    AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL,
-+
-+    /**
-+     * The optional first identifier line of a WebVTT cue.
-+     */
-+    AV_PKT_DATA_WEBVTT_IDENTIFIER,
-+
-+    /**
-+     * The optional settings (rendering instructions) that immediately
-+     * follow the timestamp specifier of a WebVTT cue.
-+     */
-+    AV_PKT_DATA_WEBVTT_SETTINGS,
-+
-+    /**
-+     * A list of zero terminated key/value strings. There is no end marker for
-+     * the list, so it is required to rely on the side data size to stop. This
-+     * side data includes updated metadata which appeared in the stream.
-+     */
-+    AV_PKT_DATA_METADATA_UPDATE,
-+
-+    /**
-+     * MPEGTS stream ID, this is required to pass the stream ID
-+     * information from the demuxer to the corresponding muxer.
-+     */
-+    AV_PKT_DATA_MPEGTS_STREAM_ID,
-+
-+    /**
-+     * Mastering display metadata (based on SMPTE-2086:2014). This metadata
-+     * should be associated with a video stream and contains data in the form
-+     * of the AVMasteringDisplayMetadata struct.
-+     */
-+    AV_PKT_DATA_MASTERING_DISPLAY_METADATA,
-+
-+    /**
-+     * This side data should be associated with a video stream and corresponds
-+     * to the AVSphericalMapping structure.
-+     */
-+    AV_PKT_DATA_SPHERICAL,
-+
-+    /**
-+     * Content light level (based on CTA-861.3). This metadata should be
-+     * associated with a video stream and contains data in the form of the
-+     * AVContentLightMetadata struct.
-+     */
-+    AV_PKT_DATA_CONTENT_LIGHT_LEVEL,
-+
-+    /**
-+     * ATSC A53 Part 4 Closed Captions. This metadata should be associated with
-+     * a video stream. A53 CC bitstream is stored as uint8_t in AVPacketSideData.data.
-+     * The number of bytes of CC data is AVPacketSideData.size.
-+     */
-+    AV_PKT_DATA_A53_CC,
-+
-+    /**
-+     * This side data is encryption initialization data.
-+     * The format is not part of ABI, use av_encryption_init_info_* methods to
-+     * access.
-+     */
-+    AV_PKT_DATA_ENCRYPTION_INIT_INFO,
-+
-+    /**
-+     * This side data contains encryption info for how to decrypt the packet.
-+     * The format is not part of ABI, use av_encryption_info_* methods to access.
-+     */
-+    AV_PKT_DATA_ENCRYPTION_INFO,
-+
-+    /**
-+     * The number of side data types.
-+     * This is not part of the public API/ABI in the sense that it may
-+     * change when new side data types are added.
-+     * This must stay the last enum value.
-+     * If its value becomes huge, some code using it
-+     * needs to be updated as it assumes it to be smaller than other limits.
-+     */
-+    AV_PKT_DATA_NB
-+};
-+
-+#define AV_PKT_DATA_QUALITY_FACTOR AV_PKT_DATA_QUALITY_STATS //DEPRECATED
-+
-+typedef struct AVPacketSideData {
-+    uint8_t *data;
-+    int      size;
-+    enum AVPacketSideDataType type;
-+} AVPacketSideData;
-+
-+/**
-+ * This structure stores compressed data. It is typically exported by demuxers
-+ * and then passed as input to decoders, or received as output from encoders and
-+ * then passed to muxers.
-+ *
-+ * For video, it should typically contain one compressed frame. For audio it may
-+ * contain several compressed frames. Encoders are allowed to output empty
-+ * packets, with no compressed data, containing only side data
-+ * (e.g. to update some stream parameters at the end of encoding).
-+ *
-+ * AVPacket is one of the few structs in FFmpeg, whose size is a part of public
-+ * ABI. Thus it may be allocated on stack and no new fields can be added to it
-+ * without libavcodec and libavformat major bump.
-+ *
-+ * The semantics of data ownership depends on the buf field.
-+ * If it is set, the packet data is dynamically allocated and is
-+ * valid indefinitely until a call to av_packet_unref() reduces the
-+ * reference count to 0.
-+ *
-+ * If the buf field is not set av_packet_ref() would make a copy instead
-+ * of increasing the reference count.
-+ *
-+ * The side data is always allocated with av_malloc(), copied by
-+ * av_packet_ref() and freed by av_packet_unref().
-+ *
-+ * @see av_packet_ref
-+ * @see av_packet_unref
-+ */
-+typedef struct AVPacket {
-+    /**
-+     * A reference to the reference-counted buffer where the packet data is
-+     * stored.
-+     * May be NULL, then the packet data is not reference-counted.
-+     */
-+    AVBufferRef *buf;
-+    /**
-+     * Presentation timestamp in AVStream->time_base units; the time at which
-+     * the decompressed packet will be presented to the user.
-+     * Can be AV_NOPTS_VALUE if it is not stored in the file.
-+     * pts MUST be larger or equal to dts as presentation cannot happen before
-+     * decompression, unless one wants to view hex dumps. Some formats misuse
-+     * the terms dts and pts/cts to mean something different. Such timestamps
-+     * must be converted to true pts/dts before they are stored in AVPacket.
-+     */
-+    int64_t pts;
-+    /**
-+     * Decompression timestamp in AVStream->time_base units; the time at which
-+     * the packet is decompressed.
-+     * Can be AV_NOPTS_VALUE if it is not stored in the file.
-+     */
-+    int64_t dts;
-+    uint8_t *data;
-+    int   size;
-+    int   stream_index;
-+    /**
-+     * A combination of AV_PKT_FLAG values
-+     */
-+    int   flags;
-+    /**
-+     * Additional packet data that can be provided by the container.
-+     * Packet can contain several types of side information.
-+     */
-+    AVPacketSideData *side_data;
-+    int side_data_elems;
-+
-+    /**
-+     * Duration of this packet in AVStream->time_base units, 0 if unknown.
-+     * Equals next_pts - this_pts in presentation order.
-+     */
-+    int64_t duration;
-+
-+    int64_t pos;                            ///< byte position in stream, -1 if unknown
-+
-+#if FF_API_CONVERGENCE_DURATION
-+    /**
-+     * @deprecated Same as the duration field, but as int64_t. This was required
-+     * for Matroska subtitles, whose duration values could overflow when the
-+     * duration field was still an int.
-+     */
-+    attribute_deprecated
-+    int64_t convergence_duration;
-+#endif
-+} AVPacket;
-+#define AV_PKT_FLAG_KEY     0x0001 ///< The packet contains a keyframe
-+#define AV_PKT_FLAG_CORRUPT 0x0002 ///< The packet content is corrupted
-+/**
-+ * Flag is used to discard packets which are required to maintain valid
-+ * decoder state but are not required for output and should be dropped
-+ * after decoding.
-+ **/
-+#define AV_PKT_FLAG_DISCARD   0x0004
-+/**
-+ * The packet comes from a trusted source.
-+ *
-+ * Otherwise-unsafe constructs such as arbitrary pointers to data
-+ * outside the packet may be followed.
-+ */
-+#define AV_PKT_FLAG_TRUSTED   0x0008
-+/**
-+ * Flag is used to indicate packets that contain frames that can
-+ * be discarded by the decoder.  I.e. Non-reference frames.
-+ */
-+#define AV_PKT_FLAG_DISPOSABLE 0x0010
-+
-+
-+enum AVSideDataParamChangeFlags {
-+    AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT  = 0x0001,
-+    AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT = 0x0002,
-+    AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE    = 0x0004,
-+    AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS     = 0x0008,
-+};
-+/**
-+ * @}
-+ */
-+
-+struct AVCodecInternal;
-+
-+enum AVFieldOrder {
-+    AV_FIELD_UNKNOWN,
-+    AV_FIELD_PROGRESSIVE,
-+    AV_FIELD_TT,          //< Top coded_first, top displayed first
-+    AV_FIELD_BB,          //< Bottom coded first, bottom displayed first
-+    AV_FIELD_TB,          //< Top coded first, bottom displayed first
-+    AV_FIELD_BT,          //< Bottom coded first, top displayed first
-+};
-+
-+/**
-+ * main external API structure.
-+ * New fields can be added to the end with minor version bumps.
-+ * Removal, reordering and changes to existing fields require a major
-+ * version bump.
-+ * You can use AVOptions (av_opt* / av_set/get*()) to access these fields from user
-+ * applications.
-+ * The name string for AVOptions options matches the associated command line
-+ * parameter name and can be found in libavcodec/options_table.h
-+ * The AVOption/command line parameter names differ in some cases from the C
-+ * structure field names for historic reasons or brevity.
-+ * sizeof(AVCodecContext) must not be used outside libav*.
-+ */
-+typedef struct AVCodecContext {
-+    /**
-+     * information on struct for av_log
-+     * - set by avcodec_alloc_context3
-+     */
-+    const AVClass *av_class;
-+    int log_level_offset;
-+
-+    enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
-+    const struct AVCodec  *codec;
-+    enum AVCodecID     codec_id; /* see AV_CODEC_ID_xxx */
-+
-+    /**
-+     * fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
-+     * This is used to work around some encoder bugs.
-+     * A demuxer should set this to what is stored in the field used to identify the codec.
-+     * If there are multiple such fields in a container then the demuxer should choose the one
-+     * which maximizes the information about the used codec.
-+     * If the codec tag field in a container is larger than 32 bits then the demuxer should
-+     * remap the longer ID to 32 bits with a table or other structure. Alternatively a new
-+     * extra_codec_tag + size could be added but for this a clear advantage must be demonstrated
-+     * first.
-+     * - encoding: Set by user, if not then the default based on codec_id will be used.
-+     * - decoding: Set by user, will be converted to uppercase by libavcodec during init.
-+     */
-+    unsigned int codec_tag;
-+
-+    void *priv_data;
-+
-+    /**
-+     * Private context used for internal data.
-+     *
-+     * Unlike priv_data, this is not codec-specific. It is used in general
-+     * libavcodec functions.
-+     */
-+    struct AVCodecInternal *internal;
-+
-+    /**
-+     * Private data of the user, can be used to carry app specific stuff.
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    void *opaque;
-+
-+    /**
-+     * the average bitrate
-+     * - encoding: Set by user; unused for constant quantizer encoding.
-+     * - decoding: Set by user, may be overwritten by libavcodec
-+     *             if this info is available in the stream
-+     */
-+    int64_t bit_rate;
-+
-+    /**
-+     * number of bits the bitstream is allowed to diverge from the reference.
-+     *           the reference can be CBR (for CBR pass1) or VBR (for pass2)
-+     * - encoding: Set by user; unused for constant quantizer encoding.
-+     * - decoding: unused
-+     */
-+    int bit_rate_tolerance;
-+
-+    /**
-+     * Global quality for codecs which cannot change it per frame.
-+     * This should be proportional to MPEG-1/2/4 qscale.
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int global_quality;
-+
-+    /**
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int compression_level;
-+#define FF_COMPRESSION_DEFAULT -1
-+
-+    /**
-+     * AV_CODEC_FLAG_*.
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int flags;
-+
-+    /**
-+     * AV_CODEC_FLAG2_*
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int flags2;
-+
-+    /**
-+     * some codecs need / can use extradata like Huffman tables.
-+     * MJPEG: Huffman tables
-+     * rv10: additional flags
-+     * MPEG-4: global headers (they can be in the bitstream or here)
-+     * The allocated memory should be AV_INPUT_BUFFER_PADDING_SIZE bytes larger
-+     * than extradata_size to avoid problems if it is read with the bitstream reader.
-+     * The bytewise contents of extradata must not depend on the architecture or CPU endianness.
-+     * - encoding: Set/allocated/freed by libavcodec.
-+     * - decoding: Set/allocated/freed by user.
-+     */
-+    uint8_t *extradata;
-+    int extradata_size;
-+
-+    /**
-+     * This is the fundamental unit of time (in seconds) in terms
-+     * of which frame timestamps are represented. For fixed-fps content,
-+     * timebase should be 1/framerate and timestamp increments should be
-+     * identically 1.
-+     * This often, but not always is the inverse of the frame rate or field rate
-+     * for video. 1/time_base is not the average frame rate if the frame rate is not
-+     * constant.
-+     *
-+     * Like containers, elementary streams also can store timestamps, 1/time_base
-+     * is the unit in which these timestamps are specified.
-+     * As example of such codec time base see ISO/IEC 14496-2:2001(E)
-+     * vop_time_increment_resolution and fixed_vop_rate
-+     * (fixed_vop_rate == 0 implies that it is different from the framerate)
-+     *
-+     * - encoding: MUST be set by user.
-+     * - decoding: the use of this field for decoding is deprecated.
-+     *             Use framerate instead.
-+     */
-+    AVRational time_base;
-+
-+    /**
-+     * For some codecs, the time base is closer to the field rate than the frame rate.
-+     * Most notably, H.264 and MPEG-2 specify time_base as half of frame duration
-+     * if no telecine is used ...
-+     *
-+     * Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
-+     */
-+    int ticks_per_frame;
-+
-+    /**
-+     * Codec delay.
-+     *
-+     * Encoding: Number of frames delay there will be from the encoder input to
-+     *           the decoder output. (we assume the decoder matches the spec)
-+     * Decoding: Number of frames delay in addition to what a standard decoder
-+     *           as specified in the spec would produce.
-+     *
-+     * Video:
-+     *   Number of frames the decoded output will be delayed relative to the
-+     *   encoded input.
-+     *
-+     * Audio:
-+     *   For encoding, this field is unused (see initial_padding).
-+     *
-+     *   For decoding, this is the number of samples the decoder needs to
-+     *   output before the decoder's output is valid. When seeking, you should
-+     *   start decoding this many samples prior to your desired seek point.
-+     *
-+     * - encoding: Set by libavcodec.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int delay;
-+
-+
-+    /* video only */
-+    /**
-+     * picture width / height.
-+     *
-+     * @note Those fields may not match the values of the last
-+     * AVFrame output by avcodec_decode_video2 due frame
-+     * reordering.
-+     *
-+     * - encoding: MUST be set by user.
-+     * - decoding: May be set by the user before opening the decoder if known e.g.
-+     *             from the container. Some decoders will require the dimensions
-+     *             to be set by the caller. During decoding, the decoder may
-+     *             overwrite those values as required while parsing the data.
-+     */
-+    int width, height;
-+
-+    /**
-+     * Bitstream width / height, may be different from width/height e.g. when
-+     * the decoded frame is cropped before being output or lowres is enabled.
-+     *
-+     * @note Those field may not match the value of the last
-+     * AVFrame output by avcodec_receive_frame() due frame
-+     * reordering.
-+     *
-+     * - encoding: unused
-+     * - decoding: May be set by the user before opening the decoder if known
-+     *             e.g. from the container. During decoding, the decoder may
-+     *             overwrite those values as required while parsing the data.
-+     */
-+    int coded_width, coded_height;
-+
-+    /**
-+     * the number of pictures in a group of pictures, or 0 for intra_only
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int gop_size;
-+
-+    /**
-+     * Pixel format, see AV_PIX_FMT_xxx.
-+     * May be set by the demuxer if known from headers.
-+     * May be overridden by the decoder if it knows better.
-+     *
-+     * @note This field may not match the value of the last
-+     * AVFrame output by avcodec_receive_frame() due frame
-+     * reordering.
-+     *
-+     * - encoding: Set by user.
-+     * - decoding: Set by user if known, overridden by libavcodec while
-+     *             parsing the data.
-+     */
-+    enum AVPixelFormat pix_fmt;
-+
-+    /**
-+     * If non NULL, 'draw_horiz_band' is called by the libavcodec
-+     * decoder to draw a horizontal band. It improves cache usage. Not
-+     * all codecs can do that. You must check the codec capabilities
-+     * beforehand.
-+     * When multithreading is used, it may be called from multiple threads
-+     * at the same time; threads might draw different parts of the same AVFrame,
-+     * or multiple AVFrames, and there is no guarantee that slices will be drawn
-+     * in order.
-+     * The function is also used by hardware acceleration APIs.
-+     * It is called at least once during frame decoding to pass
-+     * the data needed for hardware render.
-+     * In that mode instead of pixel data, AVFrame points to
-+     * a structure specific to the acceleration API. The application
-+     * reads the structure and can change some fields to indicate progress
-+     * or mark state.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     * @param height the height of the slice
-+     * @param y the y position of the slice
-+     * @param type 1->top field, 2->bottom field, 3->frame
-+     * @param offset offset into the AVFrame.data from which the slice should be read
-+     */
-+    void (*draw_horiz_band)(struct AVCodecContext *s,
-+                            const AVFrame *src, int offset[AV_NUM_DATA_POINTERS],
-+                            int y, int type, int height);
-+
-+    /**
-+     * callback to negotiate the pixelFormat
-+     * @param fmt is the list of formats which are supported by the codec,
-+     * it is terminated by -1 as 0 is a valid format, the formats are ordered by quality.
-+     * The first is always the native one.
-+     * @note The callback may be called again immediately if initialization for
-+     * the selected (hardware-accelerated) pixel format failed.
-+     * @warning Behavior is undefined if the callback returns a value not
-+     * in the fmt list of formats.
-+     * @return the chosen format
-+     * - encoding: unused
-+     * - decoding: Set by user, if not set the native format will be chosen.
-+     */
-+    enum AVPixelFormat (*get_format)(struct AVCodecContext *s, const enum AVPixelFormat * fmt);
-+
-+    /**
-+     * maximum number of B-frames between non-B-frames
-+     * Note: The output will be delayed by max_b_frames+1 relative to the input.
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int max_b_frames;
-+
-+    /**
-+     * qscale factor between IP and B-frames
-+     * If > 0 then the last P-frame quantizer will be used (q= lastp_q*factor+offset).
-+     * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float b_quant_factor;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int b_frame_strategy;
-+#endif
-+
-+    /**
-+     * qscale offset between IP and B-frames
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float b_quant_offset;
-+
-+    /**
-+     * Size of the frame reordering buffer in the decoder.
-+     * For MPEG-2 it is 1 IPB or 0 low delay IP.
-+     * - encoding: Set by libavcodec.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int has_b_frames;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int mpeg_quant;
-+#endif
-+
-+    /**
-+     * qscale factor between P- and I-frames
-+     * If > 0 then the last P-frame quantizer will be used (q = lastp_q * factor + offset).
-+     * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float i_quant_factor;
-+
-+    /**
-+     * qscale offset between P and I-frames
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float i_quant_offset;
-+
-+    /**
-+     * luminance masking (0-> disabled)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float lumi_masking;
-+
-+    /**
-+     * temporary complexity masking (0-> disabled)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float temporal_cplx_masking;
-+
-+    /**
-+     * spatial complexity masking (0-> disabled)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float spatial_cplx_masking;
-+
-+    /**
-+     * p block masking (0-> disabled)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float p_masking;
-+
-+    /**
-+     * darkness masking (0-> disabled)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    float dark_masking;
-+
-+    /**
-+     * slice count
-+     * - encoding: Set by libavcodec.
-+     * - decoding: Set by user (or 0).
-+     */
-+    int slice_count;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+     int prediction_method;
-+#define FF_PRED_LEFT   0
-+#define FF_PRED_PLANE  1
-+#define FF_PRED_MEDIAN 2
-+#endif
-+
-+    /**
-+     * slice offsets in the frame in bytes
-+     * - encoding: Set/allocated by libavcodec.
-+     * - decoding: Set/allocated by user (or NULL).
-+     */
-+    int *slice_offset;
-+
-+    /**
-+     * sample aspect ratio (0 if unknown)
-+     * That is the width of a pixel divided by the height of the pixel.
-+     * Numerator and denominator must be relatively prime and smaller than 256 for some video standards.
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    AVRational sample_aspect_ratio;
-+
-+    /**
-+     * motion estimation comparison function
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int me_cmp;
-+    /**
-+     * subpixel motion estimation comparison function
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int me_sub_cmp;
-+    /**
-+     * macroblock comparison function (not supported yet)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int mb_cmp;
-+    /**
-+     * interlaced DCT comparison function
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int ildct_cmp;
-+#define FF_CMP_SAD          0
-+#define FF_CMP_SSE          1
-+#define FF_CMP_SATD         2
-+#define FF_CMP_DCT          3
-+#define FF_CMP_PSNR         4
-+#define FF_CMP_BIT          5
-+#define FF_CMP_RD           6
-+#define FF_CMP_ZERO         7
-+#define FF_CMP_VSAD         8
-+#define FF_CMP_VSSE         9
-+#define FF_CMP_NSSE         10
-+#define FF_CMP_W53          11
-+#define FF_CMP_W97          12
-+#define FF_CMP_DCTMAX       13
-+#define FF_CMP_DCT264       14
-+#define FF_CMP_MEDIAN_SAD   15
-+#define FF_CMP_CHROMA       256
-+
-+    /**
-+     * ME diamond size & shape
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int dia_size;
-+
-+    /**
-+     * amount of previous MV predictors (2a+1 x 2a+1 square)
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int last_predictor_count;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int pre_me;
-+#endif
-+
-+    /**
-+     * motion estimation prepass comparison function
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int me_pre_cmp;
-+
-+    /**
-+     * ME prepass diamond size & shape
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int pre_dia_size;
-+
-+    /**
-+     * subpel ME quality
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int me_subpel_quality;
-+
-+    /**
-+     * maximum motion estimation search range in subpel units
-+     * If 0 then no limit.
-+     *
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int me_range;
-+
-+    /**
-+     * slice flags
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int slice_flags;
-+#define SLICE_FLAG_CODED_ORDER    0x0001 ///< draw_horiz_band() is called in coded order instead of display
-+#define SLICE_FLAG_ALLOW_FIELD    0x0002 ///< allow draw_horiz_band() with field slices (MPEG-2 field pics)
-+#define SLICE_FLAG_ALLOW_PLANE    0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1)
-+
-+    /**
-+     * macroblock decision mode
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int mb_decision;
-+#define FF_MB_DECISION_SIMPLE 0        ///< uses mb_cmp
-+#define FF_MB_DECISION_BITS   1        ///< chooses the one which needs the fewest bits
-+#define FF_MB_DECISION_RD     2        ///< rate distortion
-+
-+    /**
-+     * custom intra quantization matrix
-+     * - encoding: Set by user, can be NULL.
-+     * - decoding: Set by libavcodec.
-+     */
-+    uint16_t *intra_matrix;
-+
-+    /**
-+     * custom inter quantization matrix
-+     * - encoding: Set by user, can be NULL.
-+     * - decoding: Set by libavcodec.
-+     */
-+    uint16_t *inter_matrix;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int scenechange_threshold;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int noise_reduction;
-+#endif
-+
-+    /**
-+     * precision of the intra DC coefficient - 8
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec
-+     */
-+    int intra_dc_precision;
-+
-+    /**
-+     * Number of macroblock rows at the top which are skipped.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int skip_top;
-+
-+    /**
-+     * Number of macroblock rows at the bottom which are skipped.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int skip_bottom;
-+
-+    /**
-+     * minimum MB Lagrange multiplier
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int mb_lmin;
-+
-+    /**
-+     * maximum MB Lagrange multiplier
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int mb_lmax;
-+
-+#if FF_API_PRIVATE_OPT
-+    /**
-+     * @deprecated use encoder private options instead
-+     */
-+    attribute_deprecated
-+    int me_penalty_compensation;
-+#endif
-+
-+    /**
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int bidir_refine;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int brd_scale;
-+#endif
-+
-+    /**
-+     * minimum GOP size
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int keyint_min;
-+
-+    /**
-+     * number of reference frames
-+     * - encoding: Set by user.
-+     * - decoding: Set by lavc.
-+     */
-+    int refs;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int chromaoffset;
-+#endif
-+
-+    /**
-+     * Note: Value depends upon the compare function used for fullpel ME.
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int mv0_threshold;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int b_sensitivity;
-+#endif
-+
-+    /**
-+     * Chromaticity coordinates of the source primaries.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorPrimaries color_primaries;
-+
-+    /**
-+     * Color Transfer Characteristic.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorTransferCharacteristic color_trc;
-+
-+    /**
-+     * YUV colorspace type.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorSpace colorspace;
-+
-+    /**
-+     * MPEG vs JPEG YUV range.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorRange color_range;
-+
-+    /**
-+     * This defines the location of chroma samples.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVChromaLocation chroma_sample_location;
-+
-+    /**
-+     * Number of slices.
-+     * Indicates number of picture subdivisions. Used for parallelized
-+     * decoding.
-+     * - encoding: Set by user
-+     * - decoding: unused
-+     */
-+    int slices;
-+
-+    /** Field order
-+     * - encoding: set by libavcodec
-+     * - decoding: Set by user.
-+     */
-+    enum AVFieldOrder field_order;
-+
-+    /* audio only */
-+    int sample_rate; ///< samples per second
-+    int channels;    ///< number of audio channels
-+
-+    /**
-+     * audio sample format
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    enum AVSampleFormat sample_fmt;  ///< sample format
-+
-+    /* The following data should not be initialized. */
-+    /**
-+     * Number of samples per channel in an audio frame.
-+     *
-+     * - encoding: set by libavcodec in avcodec_open2(). Each submitted frame
-+     *   except the last must contain exactly frame_size samples per channel.
-+     *   May be 0 when the codec has AV_CODEC_CAP_VARIABLE_FRAME_SIZE set, then the
-+     *   frame size is not restricted.
-+     * - decoding: may be set by some decoders to indicate constant frame size
-+     */
-+    int frame_size;
-+
-+    /**
-+     * Frame counter, set by libavcodec.
-+     *
-+     * - decoding: total number of frames returned from the decoder so far.
-+     * - encoding: total number of frames passed to the encoder so far.
-+     *
-+     *   @note the counter is not incremented if encoding/decoding resulted in
-+     *   an error.
-+     */
-+    int frame_number;
-+
-+    /**
-+     * number of bytes per packet if constant and known or 0
-+     * Used by some WAV based audio codecs.
-+     */
-+    int block_align;
-+
-+    /**
-+     * Audio cutoff bandwidth (0 means "automatic")
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int cutoff;
-+
-+    /**
-+     * Audio channel layout.
-+     * - encoding: set by user.
-+     * - decoding: set by user, may be overwritten by libavcodec.
-+     */
-+    uint64_t channel_layout;
-+
-+    /**
-+     * Request decoder to use this channel layout if it can (0 for default)
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    uint64_t request_channel_layout;
-+
-+    /**
-+     * Type of service that the audio stream conveys.
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    enum AVAudioServiceType audio_service_type;
-+
-+    /**
-+     * desired sample format
-+     * - encoding: Not used.
-+     * - decoding: Set by user.
-+     * Decoder will decode to this format if it can.
-+     */
-+    enum AVSampleFormat request_sample_fmt;
-+
-+    /**
-+     * This callback is called at the beginning of each frame to get data
-+     * buffer(s) for it. There may be one contiguous buffer for all the data or
-+     * there may be a buffer per each data plane or anything in between. What
-+     * this means is, you may set however many entries in buf[] you feel necessary.
-+     * Each buffer must be reference-counted using the AVBuffer API (see description
-+     * of buf[] below).
-+     *
-+     * The following fields will be set in the frame before this callback is
-+     * called:
-+     * - format
-+     * - width, height (video only)
-+     * - sample_rate, channel_layout, nb_samples (audio only)
-+     * Their values may differ from the corresponding values in
-+     * AVCodecContext. This callback must use the frame values, not the codec
-+     * context values, to calculate the required buffer size.
-+     *
-+     * This callback must fill the following fields in the frame:
-+     * - data[]
-+     * - linesize[]
-+     * - extended_data:
-+     *   * if the data is planar audio with more than 8 channels, then this
-+     *     callback must allocate and fill extended_data to contain all pointers
-+     *     to all data planes. data[] must hold as many pointers as it can.
-+     *     extended_data must be allocated with av_malloc() and will be freed in
-+     *     av_frame_unref().
-+     *   * otherwise extended_data must point to data
-+     * - buf[] must contain one or more pointers to AVBufferRef structures. Each of
-+     *   the frame's data and extended_data pointers must be contained in these. That
-+     *   is, one AVBufferRef for each allocated chunk of memory, not necessarily one
-+     *   AVBufferRef per data[] entry. See: av_buffer_create(), av_buffer_alloc(),
-+     *   and av_buffer_ref().
-+     * - extended_buf and nb_extended_buf must be allocated with av_malloc() by
-+     *   this callback and filled with the extra buffers if there are more
-+     *   buffers than buf[] can hold. extended_buf will be freed in
-+     *   av_frame_unref().
-+     *
-+     * If AV_CODEC_CAP_DR1 is not set then get_buffer2() must call
-+     * avcodec_default_get_buffer2() instead of providing buffers allocated by
-+     * some other means.
-+     *
-+     * Each data plane must be aligned to the maximum required by the target
-+     * CPU.
-+     *
-+     * @see avcodec_default_get_buffer2()
-+     *
-+     * Video:
-+     *
-+     * If AV_GET_BUFFER_FLAG_REF is set in flags then the frame may be reused
-+     * (read and/or written to if it is writable) later by libavcodec.
-+     *
-+     * avcodec_align_dimensions2() should be used to find the required width and
-+     * height, as they normally need to be rounded up to the next multiple of 16.
-+     *
-+     * Some decoders do not support linesizes changing between frames.
-+     *
-+     * If frame multithreading is used and thread_safe_callbacks is set,
-+     * this callback may be called from a different thread, but not from more
-+     * than one at once. Does not need to be reentrant.
-+     *
-+     * @see avcodec_align_dimensions2()
-+     *
-+     * Audio:
-+     *
-+     * Decoders request a buffer of a particular size by setting
-+     * AVFrame.nb_samples prior to calling get_buffer2(). The decoder may,
-+     * however, utilize only part of the buffer by setting AVFrame.nb_samples
-+     * to a smaller value in the output frame.
-+     *
-+     * As a convenience, av_samples_get_buffer_size() and
-+     * av_samples_fill_arrays() in libavutil may be used by custom get_buffer2()
-+     * functions to find the required data size and to fill data pointers and
-+     * linesize. In AVFrame.linesize, only linesize[0] may be set for audio
-+     * since all planes must be the same size.
-+     *
-+     * @see av_samples_get_buffer_size(), av_samples_fill_arrays()
-+     *
-+     * - encoding: unused
-+     * - decoding: Set by libavcodec, user can override.
-+     */
-+    int (*get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags);
-+
-+    /**
-+     * If non-zero, the decoded audio and video frames returned from
-+     * avcodec_decode_video2() and avcodec_decode_audio4() are reference-counted
-+     * and are valid indefinitely. The caller must free them with
-+     * av_frame_unref() when they are not needed anymore.
-+     * Otherwise, the decoded frames must not be freed by the caller and are
-+     * only valid until the next decode call.
-+     *
-+     * This is always automatically enabled if avcodec_receive_frame() is used.
-+     *
-+     * - encoding: unused
-+     * - decoding: set by the caller before avcodec_open2().
-+     */
-+    attribute_deprecated
-+    int refcounted_frames;
-+
-+    /* - encoding parameters */
-+    float qcompress;  ///< amount of qscale change between easy & hard scenes (0.0-1.0)
-+    float qblur;      ///< amount of qscale smoothing over time (0.0-1.0)
-+
-+    /**
-+     * minimum quantizer
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int qmin;
-+
-+    /**
-+     * maximum quantizer
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int qmax;
-+
-+    /**
-+     * maximum quantizer difference between frames
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int max_qdiff;
-+
-+    /**
-+     * decoder bitstream buffer size
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int rc_buffer_size;
-+
-+    /**
-+     * ratecontrol override, see RcOverride
-+     * - encoding: Allocated/set/freed by user.
-+     * - decoding: unused
-+     */
-+    int rc_override_count;
-+    RcOverride *rc_override;
-+
-+    /**
-+     * maximum bitrate
-+     * - encoding: Set by user.
-+     * - decoding: Set by user, may be overwritten by libavcodec.
-+     */
-+    int64_t rc_max_rate;
-+
-+    /**
-+     * minimum bitrate
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int64_t rc_min_rate;
-+
-+    /**
-+     * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow.
-+     * - encoding: Set by user.
-+     * - decoding: unused.
-+     */
-+    float rc_max_available_vbv_use;
-+
-+    /**
-+     * Ratecontrol attempt to use, at least, <value> times the amount needed to prevent a vbv overflow.
-+     * - encoding: Set by user.
-+     * - decoding: unused.
-+     */
-+    float rc_min_vbv_overflow_use;
-+
-+    /**
-+     * Number of bits which should be loaded into the rc buffer before decoding starts.
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int rc_initial_buffer_occupancy;
-+
-+#if FF_API_CODER_TYPE
-+#define FF_CODER_TYPE_VLC       0
-+#define FF_CODER_TYPE_AC        1
-+#define FF_CODER_TYPE_RAW       2
-+#define FF_CODER_TYPE_RLE       3
-+    /**
-+     * @deprecated use encoder private options instead
-+     */
-+    attribute_deprecated
-+    int coder_type;
-+#endif /* FF_API_CODER_TYPE */
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int context_model;
-+#endif
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int frame_skip_threshold;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int frame_skip_factor;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int frame_skip_exp;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int frame_skip_cmp;
-+#endif /* FF_API_PRIVATE_OPT */
-+
-+    /**
-+     * trellis RD quantization
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int trellis;
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int min_prediction_order;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int max_prediction_order;
-+
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int64_t timecode_frame_start;
-+#endif
-+
-+#if FF_API_RTP_CALLBACK
-+    /**
-+     * @deprecated unused
-+     */
-+    /* The RTP callback: This function is called    */
-+    /* every time the encoder has a packet to send. */
-+    /* It depends on the encoder if the data starts */
-+    /* with a Start Code (it should). H.263 does.   */
-+    /* mb_nb contains the number of macroblocks     */
-+    /* encoded in the RTP payload.                  */
-+    attribute_deprecated
-+    void (*rtp_callback)(struct AVCodecContext *avctx, void *data, int size, int mb_nb);
-+#endif
-+
-+#if FF_API_PRIVATE_OPT
-+    /** @deprecated use encoder private options instead */
-+    attribute_deprecated
-+    int rtp_payload_size;   /* The size of the RTP payload: the coder will  */
-+                            /* do its best to deliver a chunk with size     */
-+                            /* below rtp_payload_size, the chunk will start */
-+                            /* with a start code on some codecs like H.263. */
-+                            /* This doesn't take account of any particular  */
-+                            /* headers inside the transmitted RTP payload.  */
-+#endif
-+
-+#if FF_API_STAT_BITS
-+    /* statistics, used for 2-pass encoding */
-+    attribute_deprecated
-+    int mv_bits;
-+    attribute_deprecated
-+    int header_bits;
-+    attribute_deprecated
-+    int i_tex_bits;
-+    attribute_deprecated
-+    int p_tex_bits;
-+    attribute_deprecated
-+    int i_count;
-+    attribute_deprecated
-+    int p_count;
-+    attribute_deprecated
-+    int skip_count;
-+    attribute_deprecated
-+    int misc_bits;
-+
-+    /** @deprecated this field is unused */
-+    attribute_deprecated
-+    int frame_bits;
-+#endif
-+
-+    /**
-+     * pass1 encoding statistics output buffer
-+     * - encoding: Set by libavcodec.
-+     * - decoding: unused
-+     */
-+    char *stats_out;
-+
-+    /**
-+     * pass2 encoding statistics input buffer
-+     * Concatenated stuff from stats_out of pass1 should be placed here.
-+     * - encoding: Allocated/set/freed by user.
-+     * - decoding: unused
-+     */
-+    char *stats_in;
-+
-+    /**
-+     * Work around bugs in encoders which sometimes cannot be detected automatically.
-+     * - encoding: Set by user
-+     * - decoding: Set by user
-+     */
-+    int workaround_bugs;
-+#define FF_BUG_AUTODETECT       1  ///< autodetection
-+#define FF_BUG_XVID_ILACE       4
-+#define FF_BUG_UMP4             8
-+#define FF_BUG_NO_PADDING       16
-+#define FF_BUG_AMV              32
-+#define FF_BUG_QPEL_CHROMA      64
-+#define FF_BUG_STD_QPEL         128
-+#define FF_BUG_QPEL_CHROMA2     256
-+#define FF_BUG_DIRECT_BLOCKSIZE 512
-+#define FF_BUG_EDGE             1024
-+#define FF_BUG_HPEL_CHROMA      2048
-+#define FF_BUG_DC_CLIP          4096
-+#define FF_BUG_MS               8192 ///< Work around various bugs in Microsoft's broken decoders.
-+#define FF_BUG_TRUNCATED       16384
-+#define FF_BUG_IEDGE           32768
-+
-+    /**
-+     * strictly follow the standard (MPEG-4, ...).
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     * Setting this to STRICT or higher means the encoder and decoder will
-+     * generally do stupid things, whereas setting it to unofficial or lower
-+     * will mean the encoder might produce output that is not supported by all
-+     * spec-compliant decoders. Decoders don't differentiate between normal,
-+     * unofficial and experimental (that is, they always try to decode things
-+     * when they can) unless they are explicitly asked to behave stupidly
-+     * (=strictly conform to the specs)
-+     */
-+    int strict_std_compliance;
-+#define FF_COMPLIANCE_VERY_STRICT   2 ///< Strictly conform to an older more strict version of the spec or reference software.
-+#define FF_COMPLIANCE_STRICT        1 ///< Strictly conform to all the things in the spec no matter what consequences.
-+#define FF_COMPLIANCE_NORMAL        0
-+#define FF_COMPLIANCE_UNOFFICIAL   -1 ///< Allow unofficial extensions
-+#define FF_COMPLIANCE_EXPERIMENTAL -2 ///< Allow nonstandardized experimental things.
-+
-+    /**
-+     * error concealment flags
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int error_concealment;
-+#define FF_EC_GUESS_MVS   1
-+#define FF_EC_DEBLOCK     2
-+#define FF_EC_FAVOR_INTER 256
-+
-+    /**
-+     * debug
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int debug;
-+#define FF_DEBUG_PICT_INFO   1
-+#define FF_DEBUG_RC          2
-+#define FF_DEBUG_BITSTREAM   4
-+#define FF_DEBUG_MB_TYPE     8
-+#define FF_DEBUG_QP          16
-+#if FF_API_DEBUG_MV
-+/**
-+ * @deprecated this option does nothing
-+ */
-+#define FF_DEBUG_MV          32
-+#endif
-+#define FF_DEBUG_DCT_COEFF   0x00000040
-+#define FF_DEBUG_SKIP        0x00000080
-+#define FF_DEBUG_STARTCODE   0x00000100
-+#define FF_DEBUG_ER          0x00000400
-+#define FF_DEBUG_MMCO        0x00000800
-+#define FF_DEBUG_BUGS        0x00001000
-+#if FF_API_DEBUG_MV
-+#define FF_DEBUG_VIS_QP      0x00002000
-+#define FF_DEBUG_VIS_MB_TYPE 0x00004000
-+#endif
-+#define FF_DEBUG_BUFFERS     0x00008000
-+#define FF_DEBUG_THREADS     0x00010000
-+#define FF_DEBUG_GREEN_MD    0x00800000
-+#define FF_DEBUG_NOMC        0x01000000
-+
-+#if FF_API_DEBUG_MV
-+    /**
-+     * debug
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int debug_mv;
-+#define FF_DEBUG_VIS_MV_P_FOR  0x00000001 // visualize forward predicted MVs of P-frames
-+#define FF_DEBUG_VIS_MV_B_FOR  0x00000002 // visualize forward predicted MVs of B-frames
-+#define FF_DEBUG_VIS_MV_B_BACK 0x00000004 // visualize backward predicted MVs of B-frames
-+#endif
-+
-+    /**
-+     * Error recognition; may misdetect some more or less valid parts as errors.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int err_recognition;
-+
-+/**
-+ * Verify checksums embedded in the bitstream (could be of either encoded or
-+ * decoded data, depending on the codec) and print an error message on mismatch.
-+ * If AV_EF_EXPLODE is also set, a mismatching checksum will result in the
-+ * decoder returning an error.
-+ */
-+#define AV_EF_CRCCHECK  (1<<0)
-+#define AV_EF_BITSTREAM (1<<1)          ///< detect bitstream specification deviations
-+#define AV_EF_BUFFER    (1<<2)          ///< detect improper bitstream length
-+#define AV_EF_EXPLODE   (1<<3)          ///< abort decoding on minor error detection
-+
-+#define AV_EF_IGNORE_ERR (1<<15)        ///< ignore errors and continue
-+#define AV_EF_CAREFUL    (1<<16)        ///< consider things that violate the spec, are fast to calculate and have not been seen in the wild as errors
-+#define AV_EF_COMPLIANT  (1<<17)        ///< consider all spec non compliances as errors
-+#define AV_EF_AGGRESSIVE (1<<18)        ///< consider things that a sane encoder should not do as an error
-+
-+
-+    /**
-+     * opaque 64-bit number (generally a PTS) that will be reordered and
-+     * output in AVFrame.reordered_opaque
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    int64_t reordered_opaque;
-+
-+    /**
-+     * Hardware accelerator in use
-+     * - encoding: unused.
-+     * - decoding: Set by libavcodec
-+     */
-+    const struct AVHWAccel *hwaccel;
-+
-+    /**
-+     * Hardware accelerator context.
-+     * For some hardware accelerators, a global context needs to be
-+     * provided by the user. In that case, this holds display-dependent
-+     * data FFmpeg cannot instantiate itself. Please refer to the
-+     * FFmpeg HW accelerator documentation to know how to fill this
-+     * is. e.g. for VA API, this is a struct vaapi_context.
-+     * - encoding: unused
-+     * - decoding: Set by user
-+     */
-+    void *hwaccel_context;
-+
-+    /**
-+     * error
-+     * - encoding: Set by libavcodec if flags & AV_CODEC_FLAG_PSNR.
-+     * - decoding: unused
-+     */
-+    uint64_t error[AV_NUM_DATA_POINTERS];
-+
-+    /**
-+     * DCT algorithm, see FF_DCT_* below
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+    int dct_algo;
-+#define FF_DCT_AUTO    0
-+#define FF_DCT_FASTINT 1
-+#define FF_DCT_INT     2
-+#define FF_DCT_MMX     3
-+#define FF_DCT_ALTIVEC 5
-+#define FF_DCT_FAAN    6
-+
-+    /**
-+     * IDCT algorithm, see FF_IDCT_* below.
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int idct_algo;
-+#define FF_IDCT_AUTO          0
-+#define FF_IDCT_INT           1
-+#define FF_IDCT_SIMPLE        2
-+#define FF_IDCT_SIMPLEMMX     3
-+#define FF_IDCT_ARM           7
-+#define FF_IDCT_ALTIVEC       8
-+#define FF_IDCT_SIMPLEARM     10
-+#define FF_IDCT_XVID          14
-+#define FF_IDCT_SIMPLEARMV5TE 16
-+#define FF_IDCT_SIMPLEARMV6   17
-+#define FF_IDCT_FAAN          20
-+#define FF_IDCT_SIMPLENEON    22
-+#define FF_IDCT_NONE          24 /* Used by XvMC to extract IDCT coefficients with FF_IDCT_PERM_NONE */
-+#define FF_IDCT_SIMPLEAUTO    128
-+
-+    /**
-+     * bits per sample/pixel from the demuxer (needed for huffyuv).
-+     * - encoding: Set by libavcodec.
-+     * - decoding: Set by user.
-+     */
-+     int bits_per_coded_sample;
-+
-+    /**
-+     * Bits per sample/pixel of internal libavcodec pixel/sample format.
-+     * - encoding: set by user.
-+     * - decoding: set by libavcodec.
-+     */
-+    int bits_per_raw_sample;
-+
-+#if FF_API_LOWRES
-+    /**
-+     * low resolution decoding, 1-> 1/2 size, 2->1/4 size
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+     int lowres;
-+#endif
-+
-+#if FF_API_CODED_FRAME
-+    /**
-+     * the picture in the bitstream
-+     * - encoding: Set by libavcodec.
-+     * - decoding: unused
-+     *
-+     * @deprecated use the quality factor packet side data instead
-+     */
-+    attribute_deprecated AVFrame *coded_frame;
-+#endif
-+
-+    /**
-+     * thread count
-+     * is used to decide how many independent tasks should be passed to execute()
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int thread_count;
-+
-+    /**
-+     * Which multithreading methods to use.
-+     * Use of FF_THREAD_FRAME will increase decoding delay by one frame per thread,
-+     * so clients which cannot provide future frames should not use it.
-+     *
-+     * - encoding: Set by user, otherwise the default is used.
-+     * - decoding: Set by user, otherwise the default is used.
-+     */
-+    int thread_type;
-+#define FF_THREAD_FRAME   1 ///< Decode more than one frame at once
-+#define FF_THREAD_SLICE   2 ///< Decode more than one part of a single frame at once
-+
-+    /**
-+     * Which multithreading methods are in use by the codec.
-+     * - encoding: Set by libavcodec.
-+     * - decoding: Set by libavcodec.
-+     */
-+    int active_thread_type;
-+
-+    /**
-+     * Set by the client if its custom get_buffer() callback can be called
-+     * synchronously from another thread, which allows faster multithreaded decoding.
-+     * draw_horiz_band() will be called from other threads regardless of this setting.
-+     * Ignored if the default get_buffer() is used.
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int thread_safe_callbacks;
-+
-+    /**
-+     * The codec may call this to execute several independent things.
-+     * It will return only after finishing all tasks.
-+     * The user may replace this with some multithreaded implementation,
-+     * the default implementation will execute the parts serially.
-+     * @param count the number of things to execute
-+     * - encoding: Set by libavcodec, user can override.
-+     * - decoding: Set by libavcodec, user can override.
-+     */
-+    int (*execute)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size);
-+
-+    /**
-+     * The codec may call this to execute several independent things.
-+     * It will return only after finishing all tasks.
-+     * The user may replace this with some multithreaded implementation,
-+     * the default implementation will execute the parts serially.
-+     * Also see avcodec_thread_init and e.g. the --enable-pthread configure option.
-+     * @param c context passed also to func
-+     * @param count the number of things to execute
-+     * @param arg2 argument passed unchanged to func
-+     * @param ret return values of executed functions, must have space for "count" values. May be NULL.
-+     * @param func function that will be called count times, with jobnr from 0 to count-1.
-+     *             threadnr will be in the range 0 to c->thread_count-1 < MAX_THREADS and so that no
-+     *             two instances of func executing at the same time will have the same threadnr.
-+     * @return always 0 currently, but code should handle a future improvement where when any call to func
-+     *         returns < 0 no further calls to func may be done and < 0 is returned.
-+     * - encoding: Set by libavcodec, user can override.
-+     * - decoding: Set by libavcodec, user can override.
-+     */
-+    int (*execute2)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count);
-+
-+    /**
-+     * noise vs. sse weight for the nsse comparison function
-+     * - encoding: Set by user.
-+     * - decoding: unused
-+     */
-+     int nsse_weight;
-+
-+    /**
-+     * profile
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+     int profile;
-+#define FF_PROFILE_UNKNOWN -99
-+#define FF_PROFILE_RESERVED -100
-+
-+#define FF_PROFILE_AAC_MAIN 0
-+#define FF_PROFILE_AAC_LOW  1
-+#define FF_PROFILE_AAC_SSR  2
-+#define FF_PROFILE_AAC_LTP  3
-+#define FF_PROFILE_AAC_HE   4
-+#define FF_PROFILE_AAC_HE_V2 28
-+#define FF_PROFILE_AAC_LD   22
-+#define FF_PROFILE_AAC_ELD  38
-+#define FF_PROFILE_MPEG2_AAC_LOW 128
-+#define FF_PROFILE_MPEG2_AAC_HE  131
-+
-+#define FF_PROFILE_DNXHD         0
-+#define FF_PROFILE_DNXHR_LB      1
-+#define FF_PROFILE_DNXHR_SQ      2
-+#define FF_PROFILE_DNXHR_HQ      3
-+#define FF_PROFILE_DNXHR_HQX     4
-+#define FF_PROFILE_DNXHR_444     5
-+
-+#define FF_PROFILE_DTS         20
-+#define FF_PROFILE_DTS_ES      30
-+#define FF_PROFILE_DTS_96_24   40
-+#define FF_PROFILE_DTS_HD_HRA  50
-+#define FF_PROFILE_DTS_HD_MA   60
-+#define FF_PROFILE_DTS_EXPRESS 70
-+
-+#define FF_PROFILE_MPEG2_422    0
-+#define FF_PROFILE_MPEG2_HIGH   1
-+#define FF_PROFILE_MPEG2_SS     2
-+#define FF_PROFILE_MPEG2_SNR_SCALABLE  3
-+#define FF_PROFILE_MPEG2_MAIN   4
-+#define FF_PROFILE_MPEG2_SIMPLE 5
-+
-+#define FF_PROFILE_H264_CONSTRAINED  (1<<9)  // 8+1; constraint_set1_flag
-+#define FF_PROFILE_H264_INTRA        (1<<11) // 8+3; constraint_set3_flag
-+
-+#define FF_PROFILE_H264_BASELINE             66
-+#define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)
-+#define FF_PROFILE_H264_MAIN                 77
-+#define FF_PROFILE_H264_EXTENDED             88
-+#define FF_PROFILE_H264_HIGH                 100
-+#define FF_PROFILE_H264_HIGH_10              110
-+#define FF_PROFILE_H264_HIGH_10_INTRA        (110|FF_PROFILE_H264_INTRA)
-+#define FF_PROFILE_H264_MULTIVIEW_HIGH       118
-+#define FF_PROFILE_H264_HIGH_422             122
-+#define FF_PROFILE_H264_HIGH_422_INTRA       (122|FF_PROFILE_H264_INTRA)
-+#define FF_PROFILE_H264_STEREO_HIGH          128
-+#define FF_PROFILE_H264_HIGH_444             144
-+#define FF_PROFILE_H264_HIGH_444_PREDICTIVE  244
-+#define FF_PROFILE_H264_HIGH_444_INTRA       (244|FF_PROFILE_H264_INTRA)
-+#define FF_PROFILE_H264_CAVLC_444            44
-+
-+#define FF_PROFILE_VC1_SIMPLE   0
-+#define FF_PROFILE_VC1_MAIN     1
-+#define FF_PROFILE_VC1_COMPLEX  2
-+#define FF_PROFILE_VC1_ADVANCED 3
-+
-+#define FF_PROFILE_MPEG4_SIMPLE                     0
-+#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE            1
-+#define FF_PROFILE_MPEG4_CORE                       2
-+#define FF_PROFILE_MPEG4_MAIN                       3
-+#define FF_PROFILE_MPEG4_N_BIT                      4
-+#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE           5
-+#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION      6
-+#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE     7
-+#define FF_PROFILE_MPEG4_HYBRID                     8
-+#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME         9
-+#define FF_PROFILE_MPEG4_CORE_SCALABLE             10
-+#define FF_PROFILE_MPEG4_ADVANCED_CODING           11
-+#define FF_PROFILE_MPEG4_ADVANCED_CORE             12
-+#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
-+#define FF_PROFILE_MPEG4_SIMPLE_STUDIO             14
-+#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE           15
-+
-+#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0   1
-+#define FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1   2
-+#define FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION  32768
-+#define FF_PROFILE_JPEG2000_DCINEMA_2K              3
-+#define FF_PROFILE_JPEG2000_DCINEMA_4K              4
-+
-+#define FF_PROFILE_VP9_0                            0
-+#define FF_PROFILE_VP9_1                            1
-+#define FF_PROFILE_VP9_2                            2
-+#define FF_PROFILE_VP9_3                            3
-+
-+#define FF_PROFILE_HEVC_MAIN                        1
-+#define FF_PROFILE_HEVC_MAIN_10                     2
-+#define FF_PROFILE_HEVC_MAIN_STILL_PICTURE          3
-+#define FF_PROFILE_HEVC_REXT                        4
-+
-+#define FF_PROFILE_AV1_MAIN                         0
-+#define FF_PROFILE_AV1_HIGH                         1
-+#define FF_PROFILE_AV1_PROFESSIONAL                 2
-+
-+#define FF_PROFILE_MJPEG_HUFFMAN_BASELINE_DCT            0xc0
-+#define FF_PROFILE_MJPEG_HUFFMAN_EXTENDED_SEQUENTIAL_DCT 0xc1
-+#define FF_PROFILE_MJPEG_HUFFMAN_PROGRESSIVE_DCT         0xc2
-+#define FF_PROFILE_MJPEG_HUFFMAN_LOSSLESS                0xc3
-+#define FF_PROFILE_MJPEG_JPEG_LS                         0xf7
-+
-+#define FF_PROFILE_SBC_MSBC                         1
-+
-+    /**
-+     * level
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+     int level;
-+#define FF_LEVEL_UNKNOWN -99
-+
-+    /**
-+     * Skip loop filtering for selected frames.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    enum AVDiscard skip_loop_filter;
-+
-+    /**
-+     * Skip IDCT/dequantization for selected frames.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    enum AVDiscard skip_idct;
-+
-+    /**
-+     * Skip decoding for selected frames.
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+    enum AVDiscard skip_frame;
-+
-+    /**
-+     * Header containing style information for text subtitles.
-+     * For SUBTITLE_ASS subtitle type, it should contain the whole ASS
-+     * [Script Info] and [V4+ Styles] section, plus the [Events] line and
-+     * the Format line following. It shouldn't include any Dialogue line.
-+     * - encoding: Set/allocated/freed by user (before avcodec_open2())
-+     * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2())
-+     */
-+    uint8_t *subtitle_header;
-+    int subtitle_header_size;
-+
-+#if FF_API_VBV_DELAY
-+    /**
-+     * VBV delay coded in the last frame (in periods of a 27 MHz clock).
-+     * Used for compliant TS muxing.
-+     * - encoding: Set by libavcodec.
-+     * - decoding: unused.
-+     * @deprecated this value is now exported as a part of
-+     * AV_PKT_DATA_CPB_PROPERTIES packet side data
-+     */
-+    attribute_deprecated
-+    uint64_t vbv_delay;
-+#endif
-+
-+#if FF_API_SIDEDATA_ONLY_PKT
-+    /**
-+     * Encoding only and set by default. Allow encoders to output packets
-+     * that do not contain any encoded data, only side data.
-+     *
-+     * Some encoders need to output such packets, e.g. to update some stream
-+     * parameters at the end of encoding.
-+     *
-+     * @deprecated this field disables the default behaviour and
-+     *             it is kept only for compatibility.
-+     */
-+    attribute_deprecated
-+    int side_data_only_packets;
-+#endif
-+
-+    /**
-+     * Audio only. The number of "priming" samples (padding) inserted by the
-+     * encoder at the beginning of the audio. I.e. this number of leading
-+     * decoded samples must be discarded by the caller to get the original audio
-+     * without leading padding.
-+     *
-+     * - decoding: unused
-+     * - encoding: Set by libavcodec. The timestamps on the output packets are
-+     *             adjusted by the encoder so that they always refer to the
-+     *             first sample of the data actually contained in the packet,
-+     *             including any added padding.  E.g. if the timebase is
-+     *             1/samplerate and the timestamp of the first input sample is
-+     *             0, the timestamp of the first output packet will be
-+     *             -initial_padding.
-+     */
-+    int initial_padding;
-+
-+    /**
-+     * - decoding: For codecs that store a framerate value in the compressed
-+     *             bitstream, the decoder may export it here. { 0, 1} when
-+     *             unknown.
-+     * - encoding: May be used to signal the framerate of CFR content to an
-+     *             encoder.
-+     */
-+    AVRational framerate;
-+
-+    /**
-+     * Nominal unaccelerated pixel format, see AV_PIX_FMT_xxx.
-+     * - encoding: unused.
-+     * - decoding: Set by libavcodec before calling get_format()
-+     */
-+    enum AVPixelFormat sw_pix_fmt;
-+
-+    /**
-+     * Timebase in which pkt_dts/pts and AVPacket.dts/pts are.
-+     * - encoding unused.
-+     * - decoding set by user.
-+     */
-+    AVRational pkt_timebase;
-+
-+    /**
-+     * AVCodecDescriptor
-+     * - encoding: unused.
-+     * - decoding: set by libavcodec.
-+     */
-+    const AVCodecDescriptor *codec_descriptor;
-+
-+#if !FF_API_LOWRES
-+    /**
-+     * low resolution decoding, 1-> 1/2 size, 2->1/4 size
-+     * - encoding: unused
-+     * - decoding: Set by user.
-+     */
-+     int lowres;
-+#endif
-+
-+    /**
-+     * Current statistics for PTS correction.
-+     * - decoding: maintained and used by libavcodec, not intended to be used by user apps
-+     * - encoding: unused
-+     */
-+    int64_t pts_correction_num_faulty_pts; /// Number of incorrect PTS values so far
-+    int64_t pts_correction_num_faulty_dts; /// Number of incorrect DTS values so far
-+    int64_t pts_correction_last_pts;       /// PTS of the last frame
-+    int64_t pts_correction_last_dts;       /// DTS of the last frame
-+
-+    /**
-+     * Character encoding of the input subtitles file.
-+     * - decoding: set by user
-+     * - encoding: unused
-+     */
-+    char *sub_charenc;
-+
-+    /**
-+     * Subtitles character encoding mode. Formats or codecs might be adjusting
-+     * this setting (if they are doing the conversion themselves for instance).
-+     * - decoding: set by libavcodec
-+     * - encoding: unused
-+     */
-+    int sub_charenc_mode;
-+#define FF_SUB_CHARENC_MODE_DO_NOTHING  -1  ///< do nothing (demuxer outputs a stream supposed to be already in UTF-8, or the codec is bitmap for instance)
-+#define FF_SUB_CHARENC_MODE_AUTOMATIC    0  ///< libavcodec will select the mode itself
-+#define FF_SUB_CHARENC_MODE_PRE_DECODER  1  ///< the AVPacket data needs to be recoded to UTF-8 before being fed to the decoder, requires iconv
-+#define FF_SUB_CHARENC_MODE_IGNORE       2  ///< neither convert the subtitles, nor check them for valid UTF-8
-+
-+    /**
-+     * Skip processing alpha if supported by codec.
-+     * Note that if the format uses pre-multiplied alpha (common with VP6,
-+     * and recommended due to better video quality/compression)
-+     * the image will look as if alpha-blended onto a black background.
-+     * However for formats that do not use pre-multiplied alpha
-+     * there might be serious artefacts (though e.g. libswscale currently
-+     * assumes pre-multiplied alpha anyway).
-+     *
-+     * - decoding: set by user
-+     * - encoding: unused
-+     */
-+    int skip_alpha;
-+
-+    /**
-+     * Number of samples to skip after a discontinuity
-+     * - decoding: unused
-+     * - encoding: set by libavcodec
-+     */
-+    int seek_preroll;
-+
-+#if !FF_API_DEBUG_MV
-+    /**
-+     * debug motion vectors
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    int debug_mv;
-+#define FF_DEBUG_VIS_MV_P_FOR  0x00000001 //visualize forward predicted MVs of P frames
-+#define FF_DEBUG_VIS_MV_B_FOR  0x00000002 //visualize forward predicted MVs of B frames
-+#define FF_DEBUG_VIS_MV_B_BACK 0x00000004 //visualize backward predicted MVs of B frames
-+#endif
-+
-+    /**
-+     * custom intra quantization matrix
-+     * - encoding: Set by user, can be NULL.
-+     * - decoding: unused.
-+     */
-+    uint16_t *chroma_intra_matrix;
-+
-+    /**
-+     * dump format separator.
-+     * can be ", " or "\n      " or anything else
-+     * - encoding: Set by user.
-+     * - decoding: Set by user.
-+     */
-+    uint8_t *dump_separator;
-+
-+    /**
-+     * ',' separated list of allowed decoders.
-+     * If NULL then all are allowed
-+     * - encoding: unused
-+     * - decoding: set by user
-+     */
-+    char *codec_whitelist;
-+
-+    /**
-+     * Properties of the stream that gets decoded
-+     * - encoding: unused
-+     * - decoding: set by libavcodec
-+     */
-+    unsigned properties;
-+#define FF_CODEC_PROPERTY_LOSSLESS        0x00000001
-+#define FF_CODEC_PROPERTY_CLOSED_CAPTIONS 0x00000002
-+
-+    /**
-+     * Additional data associated with the entire coded stream.
-+     *
-+     * - decoding: unused
-+     * - encoding: may be set by libavcodec after avcodec_open2().
-+     */
-+    AVPacketSideData *coded_side_data;
-+    int            nb_coded_side_data;
-+
-+    /**
-+     * A reference to the AVHWFramesContext describing the input (for encoding)
-+     * or output (decoding) frames. The reference is set by the caller and
-+     * afterwards owned (and freed) by libavcodec - it should never be read by
-+     * the caller after being set.
-+     *
-+     * - decoding: This field should be set by the caller from the get_format()
-+     *             callback. The previous reference (if any) will always be
-+     *             unreffed by libavcodec before the get_format() call.
-+     *
-+     *             If the default get_buffer2() is used with a hwaccel pixel
-+     *             format, then this AVHWFramesContext will be used for
-+     *             allocating the frame buffers.
-+     *
-+     * - encoding: For hardware encoders configured to use a hwaccel pixel
-+     *             format, this field should be set by the caller to a reference
-+     *             to the AVHWFramesContext describing input frames.
-+     *             AVHWFramesContext.format must be equal to
-+     *             AVCodecContext.pix_fmt.
-+     *
-+     *             This field should be set before avcodec_open2() is called.
-+     */
-+    AVBufferRef *hw_frames_ctx;
-+
-+    /**
-+     * Control the form of AVSubtitle.rects[N]->ass
-+     * - decoding: set by user
-+     * - encoding: unused
-+     */
-+    int sub_text_format;
-+#define FF_SUB_TEXT_FMT_ASS              0
-+#if FF_API_ASS_TIMING
-+#define FF_SUB_TEXT_FMT_ASS_WITH_TIMINGS 1
-+#endif
-+
-+    /**
-+     * Audio only. The amount of padding (in samples) appended by the encoder to
-+     * the end of the audio. I.e. this number of decoded samples must be
-+     * discarded by the caller from the end of the stream to get the original
-+     * audio without any trailing padding.
-+     *
-+     * - decoding: unused
-+     * - encoding: unused
-+     */
-+    int trailing_padding;
-+
-+    /**
-+     * The number of pixels per image to maximally accept.
-+     *
-+     * - decoding: set by user
-+     * - encoding: set by user
-+     */
-+    int64_t max_pixels;
-+
-+    /**
-+     * A reference to the AVHWDeviceContext describing the device which will
-+     * be used by a hardware encoder/decoder.  The reference is set by the
-+     * caller and afterwards owned (and freed) by libavcodec.
-+     *
-+     * This should be used if either the codec device does not require
-+     * hardware frames or any that are used are to be allocated internally by
-+     * libavcodec.  If the user wishes to supply any of the frames used as
-+     * encoder input or decoder output then hw_frames_ctx should be used
-+     * instead.  When hw_frames_ctx is set in get_format() for a decoder, this
-+     * field will be ignored while decoding the associated stream segment, but
-+     * may again be used on a following one after another get_format() call.
-+     *
-+     * For both encoders and decoders this field should be set before
-+     * avcodec_open2() is called and must not be written to thereafter.
-+     *
-+     * Note that some decoders may require this field to be set initially in
-+     * order to support hw_frames_ctx at all - in that case, all frames
-+     * contexts used must be created on the same device.
-+     */
-+    AVBufferRef *hw_device_ctx;
-+
-+    /**
-+     * Bit set of AV_HWACCEL_FLAG_* flags, which affect hardware accelerated
-+     * decoding (if active).
-+     * - encoding: unused
-+     * - decoding: Set by user (either before avcodec_open2(), or in the
-+     *             AVCodecContext.get_format callback)
-+     */
-+    int hwaccel_flags;
-+
-+    /**
-+     * Video decoding only. Certain video codecs support cropping, meaning that
-+     * only a sub-rectangle of the decoded frame is intended for display.  This
-+     * option controls how cropping is handled by libavcodec.
-+     *
-+     * When set to 1 (the default), libavcodec will apply cropping internally.
-+     * I.e. it will modify the output frame width/height fields and offset the
-+     * data pointers (only by as much as possible while preserving alignment, or
-+     * by the full amount if the AV_CODEC_FLAG_UNALIGNED flag is set) so that
-+     * the frames output by the decoder refer only to the cropped area. The
-+     * crop_* fields of the output frames will be zero.
-+     *
-+     * When set to 0, the width/height fields of the output frames will be set
-+     * to the coded dimensions and the crop_* fields will describe the cropping
-+     * rectangle. Applying the cropping is left to the caller.
-+     *
-+     * @warning When hardware acceleration with opaque output frames is used,
-+     * libavcodec is unable to apply cropping from the top/left border.
-+     *
-+     * @note when this option is set to zero, the width/height fields of the
-+     * AVCodecContext and output AVFrames have different meanings. The codec
-+     * context fields store display dimensions (with the coded dimensions in
-+     * coded_width/height), while the frame fields store the coded dimensions
-+     * (with the display dimensions being determined by the crop_* fields).
-+     */
-+    int apply_cropping;
-+
-+    /*
-+     * Video decoding only.  Sets the number of extra hardware frames which
-+     * the decoder will allocate for use by the caller.  This must be set
-+     * before avcodec_open2() is called.
-+     *
-+     * Some hardware decoders require all frames that they will use for
-+     * output to be defined in advance before decoding starts.  For such
-+     * decoders, the hardware frame pool must therefore be of a fixed size.
-+     * The extra frames set here are on top of any number that the decoder
-+     * needs internally in order to operate normally (for example, frames
-+     * used as reference pictures).
-+     */
-+    int extra_hw_frames;
-+} AVCodecContext;
-+
-+#if FF_API_CODEC_GET_SET
-+/**
-+ * Accessors for some AVCodecContext fields. These used to be provided for ABI
-+ * compatibility, and do not need to be used anymore.
-+ */
-+attribute_deprecated
-+AVRational av_codec_get_pkt_timebase         (const AVCodecContext *avctx);
-+attribute_deprecated
-+void       av_codec_set_pkt_timebase         (AVCodecContext *avctx, AVRational val);
-+
-+attribute_deprecated
-+const AVCodecDescriptor *av_codec_get_codec_descriptor(const AVCodecContext *avctx);
-+attribute_deprecated
-+void                     av_codec_set_codec_descriptor(AVCodecContext *avctx, const AVCodecDescriptor *desc);
-+
-+attribute_deprecated
-+unsigned av_codec_get_codec_properties(const AVCodecContext *avctx);
-+
-+#if FF_API_LOWRES
-+attribute_deprecated
-+int  av_codec_get_lowres(const AVCodecContext *avctx);
-+attribute_deprecated
-+void av_codec_set_lowres(AVCodecContext *avctx, int val);
-+#endif
-+
-+attribute_deprecated
-+int  av_codec_get_seek_preroll(const AVCodecContext *avctx);
-+attribute_deprecated
-+void av_codec_set_seek_preroll(AVCodecContext *avctx, int val);
-+
-+attribute_deprecated
-+uint16_t *av_codec_get_chroma_intra_matrix(const AVCodecContext *avctx);
-+attribute_deprecated
-+void av_codec_set_chroma_intra_matrix(AVCodecContext *avctx, uint16_t *val);
-+#endif
-+
-+/**
-+ * AVProfile.
-+ */
-+typedef struct AVProfile {
-+    int profile;
-+    const char *name; ///< short name for the profile
-+} AVProfile;
-+
-+enum {
-+    /**
-+     * The codec supports this format via the hw_device_ctx interface.
-+     *
-+     * When selecting this format, AVCodecContext.hw_device_ctx should
-+     * have been set to a device of the specified type before calling
-+     * avcodec_open2().
-+     */
-+    AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX = 0x01,
-+    /**
-+     * The codec supports this format via the hw_frames_ctx interface.
-+     *
-+     * When selecting this format for a decoder,
-+     * AVCodecContext.hw_frames_ctx should be set to a suitable frames
-+     * context inside the get_format() callback.  The frames context
-+     * must have been created on a device of the specified type.
-+     */
-+    AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX = 0x02,
-+    /**
-+     * The codec supports this format by some internal method.
-+     *
-+     * This format can be selected without any additional configuration -
-+     * no device or frames context is required.
-+     */
-+    AV_CODEC_HW_CONFIG_METHOD_INTERNAL      = 0x04,
-+    /**
-+     * The codec supports this format by some ad-hoc method.
-+     *
-+     * Additional settings and/or function calls are required.  See the
-+     * codec-specific documentation for details.  (Methods requiring
-+     * this sort of configuration are deprecated and others should be
-+     * used in preference.)
-+     */
-+    AV_CODEC_HW_CONFIG_METHOD_AD_HOC        = 0x08,
-+};
-+
-+typedef struct AVCodecHWConfig {
-+    /**
-+     * A hardware pixel format which the codec can use.
-+     */
-+    enum AVPixelFormat pix_fmt;
-+    /**
-+     * Bit set of AV_CODEC_HW_CONFIG_METHOD_* flags, describing the possible
-+     * setup methods which can be used with this configuration.
-+     */
-+    int methods;
-+    /**
-+     * The device type associated with the configuration.
-+     *
-+     * Must be set for AV_CODEC_HW_CONFIG_METHOD_HW_DEVICE_CTX and
-+     * AV_CODEC_HW_CONFIG_METHOD_HW_FRAMES_CTX, otherwise unused.
-+     */
-+    enum AVHWDeviceType device_type;
-+} AVCodecHWConfig;
-+
-+typedef struct AVCodecDefault AVCodecDefault;
-+
-+struct AVSubtitle;
-+
-+/**
-+ * AVCodec.
-+ */
-+typedef struct AVCodec {
-+    /**
-+     * Name of the codec implementation.
-+     * The name is globally unique among encoders and among decoders (but an
-+     * encoder and a decoder can share the same name).
-+     * This is the primary way to find a codec from the user perspective.
-+     */
-+    const char *name;
-+    /**
-+     * Descriptive name for the codec, meant to be more human readable than name.
-+     * You should use the NULL_IF_CONFIG_SMALL() macro to define it.
-+     */
-+    const char *long_name;
-+    enum AVMediaType type;
-+    enum AVCodecID id;
-+    /**
-+     * Codec capabilities.
-+     * see AV_CODEC_CAP_*
-+     */
-+    int capabilities;
-+    const AVRational *supported_framerates; ///< array of supported framerates, or NULL if any, array is terminated by {0,0}
-+    const enum AVPixelFormat *pix_fmts;     ///< array of supported pixel formats, or NULL if unknown, array is terminated by -1
-+    const int *supported_samplerates;       ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0
-+    const enum AVSampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1
-+    const uint64_t *channel_layouts;         ///< array of support channel layouts, or NULL if unknown. array is terminated by 0
-+    uint8_t max_lowres;                     ///< maximum value for lowres supported by the decoder
-+    const AVClass *priv_class;              ///< AVClass for the private context
-+    const AVProfile *profiles;              ///< array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN}
-+
-+    /**
-+     * Group name of the codec implementation.
-+     * This is a short symbolic name of the wrapper backing this codec. A
-+     * wrapper uses some kind of external implementation for the codec, such
-+     * as an external library, or a codec implementation provided by the OS or
-+     * the hardware.
-+     * If this field is NULL, this is a builtin, libavcodec native codec.
-+     * If non-NULL, this will be the suffix in AVCodec.name in most cases
-+     * (usually AVCodec.name will be of the form "<codec_name>_<wrapper_name>").
-+     */
-+    const char *wrapper_name;
-+
-+    /*****************************************************************
-+     * No fields below this line are part of the public API. They
-+     * may not be used outside of libavcodec and can be changed and
-+     * removed at will.
-+     * New public fields should be added right above.
-+     *****************************************************************
-+     */
-+    int priv_data_size;
-+    struct AVCodec *next;
-+    /**
-+     * @name Frame-level threading support functions
-+     * @{
-+     */
-+    /**
-+     * If defined, called on thread contexts when they are created.
-+     * If the codec allocates writable tables in init(), re-allocate them here.
-+     * priv_data will be set to a copy of the original.
-+     */
-+    int (*init_thread_copy)(AVCodecContext *);
-+    /**
-+     * Copy necessary context variables from a previous thread context to the current one.
-+     * If not defined, the next thread will start automatically; otherwise, the codec
-+     * must call ff_thread_finish_setup().
-+     *
-+     * dst and src will (rarely) point to the same context, in which case memcpy should be skipped.
-+     */
-+    int (*update_thread_context)(AVCodecContext *dst, const AVCodecContext *src);
-+    /** @} */
-+
-+    /**
-+     * Private codec-specific defaults.
-+     */
-+    const AVCodecDefault *defaults;
-+
-+    /**
-+     * Initialize codec static data, called from avcodec_register().
-+     *
-+     * This is not intended for time consuming operations as it is
-+     * run for every codec regardless of that codec being used.
-+     */
-+    void (*init_static_data)(struct AVCodec *codec);
-+
-+    int (*init)(AVCodecContext *);
-+    int (*encode_sub)(AVCodecContext *, uint8_t *buf, int buf_size,
-+                      const struct AVSubtitle *sub);
-+    /**
-+     * Encode data to an AVPacket.
-+     *
-+     * @param      avctx          codec context
-+     * @param      avpkt          output AVPacket (may contain a user-provided buffer)
-+     * @param[in]  frame          AVFrame containing the raw data to be encoded
-+     * @param[out] got_packet_ptr encoder sets to 0 or 1 to indicate that a
-+     *                            non-empty packet was returned in avpkt.
-+     * @return 0 on success, negative error code on failure
-+     */
-+    int (*encode2)(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame,
-+                   int *got_packet_ptr);
-+    int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt);
-+    int (*close)(AVCodecContext *);
-+    /**
-+     * Encode API with decoupled packet/frame dataflow. The API is the
-+     * same as the avcodec_ prefixed APIs (avcodec_send_frame() etc.), except
-+     * that:
-+     * - never called if the codec is closed or the wrong type,
-+     * - if AV_CODEC_CAP_DELAY is not set, drain frames are never sent,
-+     * - only one drain frame is ever passed down,
-+     */
-+    int (*send_frame)(AVCodecContext *avctx, const AVFrame *frame);
-+    int (*receive_packet)(AVCodecContext *avctx, AVPacket *avpkt);
-+
-+    /**
-+     * Decode API with decoupled packet/frame dataflow. This function is called
-+     * to get one output frame. It should call ff_decode_get_packet() to obtain
-+     * input data.
-+     */
-+    int (*receive_frame)(AVCodecContext *avctx, AVFrame *frame);
-+    /**
-+     * Flush buffers.
-+     * Will be called when seeking
-+     */
-+    void (*flush)(AVCodecContext *);
-+    /**
-+     * Internal codec capabilities.
-+     * See FF_CODEC_CAP_* in internal.h
-+     */
-+    int caps_internal;
-+
-+    /**
-+     * Decoding only, a comma-separated list of bitstream filters to apply to
-+     * packets before decoding.
-+     */
-+    const char *bsfs;
-+
-+    /**
-+     * Array of pointers to hardware configurations supported by the codec,
-+     * or NULL if no hardware supported.  The array is terminated by a NULL
-+     * pointer.
-+     *
-+     * The user can only access this field via avcodec_get_hw_config().
-+     */
-+    const struct AVCodecHWConfigInternal **hw_configs;
-+} AVCodec;
-+
-+#if FF_API_CODEC_GET_SET
-+attribute_deprecated
-+int av_codec_get_max_lowres(const AVCodec *codec);
-+#endif
-+
-+struct MpegEncContext;
-+
-+/**
-+ * Retrieve supported hardware configurations for a codec.
-+ *
-+ * Values of index from zero to some maximum return the indexed configuration
-+ * descriptor; all other values return NULL.  If the codec does not support
-+ * any hardware configurations then it will always return NULL.
-+ */
-+const AVCodecHWConfig *avcodec_get_hw_config(const AVCodec *codec, int index);
-+
-+/**
-+ * @defgroup lavc_hwaccel AVHWAccel
-+ *
-+ * @note  Nothing in this structure should be accessed by the user.  At some
-+ *        point in future it will not be externally visible at all.
-+ *
-+ * @{
-+ */
-+typedef struct AVHWAccel {
-+    /**
-+     * Name of the hardware accelerated codec.
-+     * The name is globally unique among encoders and among decoders (but an
-+     * encoder and a decoder can share the same name).
-+     */
-+    const char *name;
-+
-+    /**
-+     * Type of codec implemented by the hardware accelerator.
-+     *
-+     * See AVMEDIA_TYPE_xxx
-+     */
-+    enum AVMediaType type;
-+
-+    /**
-+     * Codec implemented by the hardware accelerator.
-+     *
-+     * See AV_CODEC_ID_xxx
-+     */
-+    enum AVCodecID id;
-+
-+    /**
-+     * Supported pixel format.
-+     *
-+     * Only hardware accelerated formats are supported here.
-+     */
-+    enum AVPixelFormat pix_fmt;
-+
-+    /**
-+     * Hardware accelerated codec capabilities.
-+     * see AV_HWACCEL_CODEC_CAP_*
-+     */
-+    int capabilities;
-+
-+    /*****************************************************************
-+     * No fields below this line are part of the public API. They
-+     * may not be used outside of libavcodec and can be changed and
-+     * removed at will.
-+     * New public fields should be added right above.
-+     *****************************************************************
-+     */
-+
-+    /**
-+     * Allocate a custom buffer
-+     */
-+    int (*alloc_frame)(AVCodecContext *avctx, AVFrame *frame);
-+
-+    /**
-+     * Called at the beginning of each frame or field picture.
-+     *
-+     * Meaningful frame information (codec specific) is guaranteed to
-+     * be parsed at this point. This function is mandatory.
-+     *
-+     * Note that buf can be NULL along with buf_size set to 0.
-+     * Otherwise, this means the whole frame is available at this point.
-+     *
-+     * @param avctx the codec context
-+     * @param buf the frame data buffer base
-+     * @param buf_size the size of the frame in bytes
-+     * @return zero if successful, a negative value otherwise
-+     */
-+    int (*start_frame)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-+
-+    /**
-+     * Callback for parameter data (SPS/PPS/VPS etc).
-+     *
-+     * Useful for hardware decoders which keep persistent state about the
-+     * video parameters, and need to receive any changes to update that state.
-+     *
-+     * @param avctx the codec context
-+     * @param type the nal unit type
-+     * @param buf the nal unit data buffer
-+     * @param buf_size the size of the nal unit in bytes
-+     * @return zero if successful, a negative value otherwise
-+     */
-+    int (*decode_params)(AVCodecContext *avctx, int type, const uint8_t *buf, uint32_t buf_size);
-+
-+    /**
-+     * Callback for each slice.
-+     *
-+     * Meaningful slice information (codec specific) is guaranteed to
-+     * be parsed at this point. This function is mandatory.
-+     * The only exception is XvMC, that works on MB level.
-+     *
-+     * @param avctx the codec context
-+     * @param buf the slice data buffer base
-+     * @param buf_size the size of the slice in bytes
-+     * @return zero if successful, a negative value otherwise
-+     */
-+    int (*decode_slice)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-+
-+    /**
-+     * Called at the end of each frame or field picture.
-+     *
-+     * The whole picture is parsed at this point and can now be sent
-+     * to the hardware accelerator. This function is mandatory.
-+     *
-+     * @param avctx the codec context
-+     * @return zero if successful, a negative value otherwise
-+     */
-+    int (*end_frame)(AVCodecContext *avctx);
-+
-+    /**
-+     * Size of per-frame hardware accelerator private data.
-+     *
-+     * Private data is allocated with av_mallocz() before
-+     * AVCodecContext.get_buffer() and deallocated after
-+     * AVCodecContext.release_buffer().
-+     */
-+    int frame_priv_data_size;
-+
-+    /**
-+     * Called for every Macroblock in a slice.
-+     *
-+     * XvMC uses it to replace the ff_mpv_reconstruct_mb().
-+     * Instead of decoding to raw picture, MB parameters are
-+     * stored in an array provided by the video driver.
-+     *
-+     * @param s the mpeg context
-+     */
-+    void (*decode_mb)(struct MpegEncContext *s);
-+
-+    /**
-+     * Initialize the hwaccel private data.
-+     *
-+     * This will be called from ff_get_format(), after hwaccel and
-+     * hwaccel_context are set and the hwaccel private data in AVCodecInternal
-+     * is allocated.
-+     */
-+    int (*init)(AVCodecContext *avctx);
-+
-+    /**
-+     * Uninitialize the hwaccel private data.
-+     *
-+     * This will be called from get_format() or avcodec_close(), after hwaccel
-+     * and hwaccel_context are already uninitialized.
-+     */
-+    int (*uninit)(AVCodecContext *avctx);
-+
-+    /**
-+     * Size of the private data to allocate in
-+     * AVCodecInternal.hwaccel_priv_data.
-+     */
-+    int priv_data_size;
-+
-+    /**
-+     * Internal hwaccel capabilities.
-+     */
-+    int caps_internal;
-+
-+    /**
-+     * Fill the given hw_frames context with current codec parameters. Called
-+     * from get_format. Refer to avcodec_get_hw_frames_parameters() for
-+     * details.
-+     *
-+     * This CAN be called before AVHWAccel.init is called, and you must assume
-+     * that avctx->hwaccel_priv_data is invalid.
-+     */
-+    int (*frame_params)(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx);
-+} AVHWAccel;
-+
-+/**
-+ * HWAccel is experimental and is thus avoided in favor of non experimental
-+ * codecs
-+ */
-+#define AV_HWACCEL_CODEC_CAP_EXPERIMENTAL 0x0200
-+
-+/**
-+ * Hardware acceleration should be used for decoding even if the codec level
-+ * used is unknown or higher than the maximum supported level reported by the
-+ * hardware driver.
-+ *
-+ * It's generally a good idea to pass this flag unless you have a specific
-+ * reason not to, as hardware tends to under-report supported levels.
-+ */
-+#define AV_HWACCEL_FLAG_IGNORE_LEVEL (1 << 0)
-+
-+/**
-+ * Hardware acceleration can output YUV pixel formats with a different chroma
-+ * sampling than 4:2:0 and/or other than 8 bits per component.
-+ */
-+#define AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH (1 << 1)
-+
-+/**
-+ * Hardware acceleration should still be attempted for decoding when the
-+ * codec profile does not match the reported capabilities of the hardware.
-+ *
-+ * For example, this can be used to try to decode baseline profile H.264
-+ * streams in hardware - it will often succeed, because many streams marked
-+ * as baseline profile actually conform to constrained baseline profile.
-+ *
-+ * @warning If the stream is actually not supported then the behaviour is
-+ *          undefined, and may include returning entirely incorrect output
-+ *          while indicating success.
-+ */
-+#define AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH (1 << 2)
-+
-+/**
-+ * @}
-+ */
-+
-+#if FF_API_AVPICTURE
-+/**
-+ * @defgroup lavc_picture AVPicture
-+ *
-+ * Functions for working with AVPicture
-+ * @{
-+ */
-+
-+/**
-+ * Picture data structure.
-+ *
-+ * Up to four components can be stored into it, the last component is
-+ * alpha.
-+ * @deprecated use AVFrame or imgutils functions instead
-+ */
-+typedef struct AVPicture {
-+    attribute_deprecated
-+    uint8_t *data[AV_NUM_DATA_POINTERS];    ///< pointers to the image data planes
-+    attribute_deprecated
-+    int linesize[AV_NUM_DATA_POINTERS];     ///< number of bytes per line
-+} AVPicture;
-+
-+/**
-+ * @}
-+ */
-+#endif
-+
-+enum AVSubtitleType {
-+    SUBTITLE_NONE,
-+
-+    SUBTITLE_BITMAP,                ///< A bitmap, pict will be set
-+
-+    /**
-+     * Plain text, the text field must be set by the decoder and is
-+     * authoritative. ass and pict fields may contain approximations.
-+     */
-+    SUBTITLE_TEXT,
-+
-+    /**
-+     * Formatted text, the ass field must be set by the decoder and is
-+     * authoritative. pict and text fields may contain approximations.
-+     */
-+    SUBTITLE_ASS,
-+};
-+
-+#define AV_SUBTITLE_FLAG_FORCED 0x00000001
-+
-+typedef struct AVSubtitleRect {
-+    int x;         ///< top left corner  of pict, undefined when pict is not set
-+    int y;         ///< top left corner  of pict, undefined when pict is not set
-+    int w;         ///< width            of pict, undefined when pict is not set
-+    int h;         ///< height           of pict, undefined when pict is not set
-+    int nb_colors; ///< number of colors in pict, undefined when pict is not set
-+
-+#if FF_API_AVPICTURE
-+    /**
-+     * @deprecated unused
-+     */
-+    attribute_deprecated
-+    AVPicture pict;
-+#endif
-+    /**
-+     * data+linesize for the bitmap of this subtitle.
-+     * Can be set for text/ass as well once they are rendered.
-+     */
-+    uint8_t *data[4];
-+    int linesize[4];
-+
-+    enum AVSubtitleType type;
-+
-+    char *text;                     ///< 0 terminated plain UTF-8 text
-+
-+    /**
-+     * 0 terminated ASS/SSA compatible event line.
-+     * The presentation of this is unaffected by the other values in this
-+     * struct.
-+     */
-+    char *ass;
-+
-+    int flags;
-+} AVSubtitleRect;
-+
-+typedef struct AVSubtitle {
-+    uint16_t format; /* 0 = graphics */
-+    uint32_t start_display_time; /* relative to packet pts, in ms */
-+    uint32_t end_display_time; /* relative to packet pts, in ms */
-+    unsigned num_rects;
-+    AVSubtitleRect **rects;
-+    int64_t pts;    ///< Same as packet pts, in AV_TIME_BASE
-+} AVSubtitle;
-+
-+/**
-+ * This struct describes the properties of an encoded stream.
-+ *
-+ * sizeof(AVCodecParameters) is not a part of the public ABI, this struct must
-+ * be allocated with avcodec_parameters_alloc() and freed with
-+ * avcodec_parameters_free().
-+ */
-+typedef struct AVCodecParameters {
-+    /**
-+     * General type of the encoded data.
-+     */
-+    enum AVMediaType codec_type;
-+    /**
-+     * Specific type of the encoded data (the codec used).
-+     */
-+    enum AVCodecID   codec_id;
-+    /**
-+     * Additional information about the codec (corresponds to the AVI FOURCC).
-+     */
-+    uint32_t         codec_tag;
-+
-+    /**
-+     * Extra binary data needed for initializing the decoder, codec-dependent.
-+     *
-+     * Must be allocated with av_malloc() and will be freed by
-+     * avcodec_parameters_free(). The allocated size of extradata must be at
-+     * least extradata_size + AV_INPUT_BUFFER_PADDING_SIZE, with the padding
-+     * bytes zeroed.
-+     */
-+    uint8_t *extradata;
-+    /**
-+     * Size of the extradata content in bytes.
-+     */
-+    int      extradata_size;
-+
-+    /**
-+     * - video: the pixel format, the value corresponds to enum AVPixelFormat.
-+     * - audio: the sample format, the value corresponds to enum AVSampleFormat.
-+     */
-+    int format;
-+
-+    /**
-+     * The average bitrate of the encoded data (in bits per second).
-+     */
-+    int64_t bit_rate;
-+
-+    /**
-+     * The number of bits per sample in the codedwords.
-+     *
-+     * This is basically the bitrate per sample. It is mandatory for a bunch of
-+     * formats to actually decode them. It's the number of bits for one sample in
-+     * the actual coded bitstream.
-+     *
-+     * This could be for example 4 for ADPCM
-+     * For PCM formats this matches bits_per_raw_sample
-+     * Can be 0
-+     */
-+    int bits_per_coded_sample;
-+
-+    /**
-+     * This is the number of valid bits in each output sample. If the
-+     * sample format has more bits, the least significant bits are additional
-+     * padding bits, which are always 0. Use right shifts to reduce the sample
-+     * to its actual size. For example, audio formats with 24 bit samples will
-+     * have bits_per_raw_sample set to 24, and format set to AV_SAMPLE_FMT_S32.
-+     * To get the original sample use "(int32_t)sample >> 8"."
-+     *
-+     * For ADPCM this might be 12 or 16 or similar
-+     * Can be 0
-+     */
-+    int bits_per_raw_sample;
-+
-+    /**
-+     * Codec-specific bitstream restrictions that the stream conforms to.
-+     */
-+    int profile;
-+    int level;
-+
-+    /**
-+     * Video only. The dimensions of the video frame in pixels.
-+     */
-+    int width;
-+    int height;
-+
-+    /**
-+     * Video only. The aspect ratio (width / height) which a single pixel
-+     * should have when displayed.
-+     *
-+     * When the aspect ratio is unknown / undefined, the numerator should be
-+     * set to 0 (the denominator may have any value).
-+     */
-+    AVRational sample_aspect_ratio;
-+
-+    /**
-+     * Video only. The order of the fields in interlaced video.
-+     */
-+    enum AVFieldOrder                  field_order;
-+
-+    /**
-+     * Video only. Additional colorspace characteristics.
-+     */
-+    enum AVColorRange                  color_range;
-+    enum AVColorPrimaries              color_primaries;
-+    enum AVColorTransferCharacteristic color_trc;
-+    enum AVColorSpace                  color_space;
-+    enum AVChromaLocation              chroma_location;
-+
-+    /**
-+     * Video only. Number of delayed frames.
-+     */
-+    int video_delay;
-+
-+    /**
-+     * Audio only. The channel layout bitmask. May be 0 if the channel layout is
-+     * unknown or unspecified, otherwise the number of bits set must be equal to
-+     * the channels field.
-+     */
-+    uint64_t channel_layout;
-+    /**
-+     * Audio only. The number of audio channels.
-+     */
-+    int      channels;
-+    /**
-+     * Audio only. The number of audio samples per second.
-+     */
-+    int      sample_rate;
-+    /**
-+     * Audio only. The number of bytes per coded audio frame, required by some
-+     * formats.
-+     *
-+     * Corresponds to nBlockAlign in WAVEFORMATEX.
-+     */
-+    int      block_align;
-+    /**
-+     * Audio only. Audio frame size, if known. Required by some formats to be static.
-+     */
-+    int      frame_size;
-+
-+    /**
-+     * Audio only. The amount of padding (in samples) inserted by the encoder at
-+     * the beginning of the audio. I.e. this number of leading decoded samples
-+     * must be discarded by the caller to get the original audio without leading
-+     * padding.
-+     */
-+    int initial_padding;
-+    /**
-+     * Audio only. The amount of padding (in samples) appended by the encoder to
-+     * the end of the audio. I.e. this number of decoded samples must be
-+     * discarded by the caller from the end of the stream to get the original
-+     * audio without any trailing padding.
-+     */
-+    int trailing_padding;
-+    /**
-+     * Audio only. Number of samples to skip after a discontinuity.
-+     */
-+    int seek_preroll;
-+} AVCodecParameters;
-+
-+/**
-+ * Iterate over all registered codecs.
-+ *
-+ * @param opaque a pointer where libavcodec will store the iteration state. Must
-+ *               point to NULL to start the iteration.
-+ *
-+ * @return the next registered codec or NULL when the iteration is
-+ *         finished
-+ */
-+const AVCodec *av_codec_iterate(void **opaque);
-+
-+#if FF_API_NEXT
-+/**
-+ * If c is NULL, returns the first registered codec,
-+ * if c is non-NULL, returns the next registered codec after c,
-+ * or NULL if c is the last one.
-+ */
-+attribute_deprecated
-+AVCodec *av_codec_next(const AVCodec *c);
-+#endif
-+
-+/**
-+ * Return the LIBAVCODEC_VERSION_INT constant.
-+ */
-+unsigned avcodec_version(void);
-+
-+/**
-+ * Return the libavcodec build-time configuration.
-+ */
-+const char *avcodec_configuration(void);
-+
-+/**
-+ * Return the libavcodec license.
-+ */
-+const char *avcodec_license(void);
-+
-+#if FF_API_NEXT
-+/**
-+ * Register the codec codec and initialize libavcodec.
-+ *
-+ * @warning either this function or avcodec_register_all() must be called
-+ * before any other libavcodec functions.
-+ *
-+ * @see avcodec_register_all()
-+ */
-+attribute_deprecated
-+void avcodec_register(AVCodec *codec);
-+
-+/**
-+ * Register all the codecs, parsers and bitstream filters which were enabled at
-+ * configuration time. If you do not call this function you can select exactly
-+ * which formats you want to support, by using the individual registration
-+ * functions.
-+ *
-+ * @see avcodec_register
-+ * @see av_register_codec_parser
-+ * @see av_register_bitstream_filter
-+ */
-+attribute_deprecated
-+void avcodec_register_all(void);
-+#endif
-+
-+/**
-+ * Allocate an AVCodecContext and set its fields to default values. The
-+ * resulting struct should be freed with avcodec_free_context().
-+ *
-+ * @param codec if non-NULL, allocate private data and initialize defaults
-+ *              for the given codec. It is illegal to then call avcodec_open2()
-+ *              with a different codec.
-+ *              If NULL, then the codec-specific defaults won't be initialized,
-+ *              which may result in suboptimal default settings (this is
-+ *              important mainly for encoders, e.g. libx264).
-+ *
-+ * @return An AVCodecContext filled with default values or NULL on failure.
-+ */
-+AVCodecContext *avcodec_alloc_context3(const AVCodec *codec);
-+
-+/**
-+ * Free the codec context and everything associated with it and write NULL to
-+ * the provided pointer.
-+ */
-+void avcodec_free_context(AVCodecContext **avctx);
-+
-+#if FF_API_GET_CONTEXT_DEFAULTS
-+/**
-+ * @deprecated This function should not be used, as closing and opening a codec
-+ * context multiple time is not supported. A new codec context should be
-+ * allocated for each new use.
-+ */
-+int avcodec_get_context_defaults3(AVCodecContext *s, const AVCodec *codec);
-+#endif
-+
-+/**
-+ * Get the AVClass for AVCodecContext. It can be used in combination with
-+ * AV_OPT_SEARCH_FAKE_OBJ for examining options.
-+ *
-+ * @see av_opt_find().
-+ */
-+const AVClass *avcodec_get_class(void);
-+
-+#if FF_API_COPY_CONTEXT
-+/**
-+ * Get the AVClass for AVFrame. It can be used in combination with
-+ * AV_OPT_SEARCH_FAKE_OBJ for examining options.
-+ *
-+ * @see av_opt_find().
-+ */
-+const AVClass *avcodec_get_frame_class(void);
-+
-+/**
-+ * Get the AVClass for AVSubtitleRect. It can be used in combination with
-+ * AV_OPT_SEARCH_FAKE_OBJ for examining options.
-+ *
-+ * @see av_opt_find().
-+ */
-+const AVClass *avcodec_get_subtitle_rect_class(void);
-+
-+/**
-+ * Copy the settings of the source AVCodecContext into the destination
-+ * AVCodecContext. The resulting destination codec context will be
-+ * unopened, i.e. you are required to call avcodec_open2() before you
-+ * can use this AVCodecContext to decode/encode video/audio data.
-+ *
-+ * @param dest target codec context, should be initialized with
-+ *             avcodec_alloc_context3(NULL), but otherwise uninitialized
-+ * @param src source codec context
-+ * @return AVERROR() on error (e.g. memory allocation error), 0 on success
-+ *
-+ * @deprecated The semantics of this function are ill-defined and it should not
-+ * be used. If you need to transfer the stream parameters from one codec context
-+ * to another, use an intermediate AVCodecParameters instance and the
-+ * avcodec_parameters_from_context() / avcodec_parameters_to_context()
-+ * functions.
-+ */
-+attribute_deprecated
-+int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src);
-+#endif
-+
-+/**
-+ * Allocate a new AVCodecParameters and set its fields to default values
-+ * (unknown/invalid/0). The returned struct must be freed with
-+ * avcodec_parameters_free().
-+ */
-+AVCodecParameters *avcodec_parameters_alloc(void);
-+
-+/**
-+ * Free an AVCodecParameters instance and everything associated with it and
-+ * write NULL to the supplied pointer.
-+ */
-+void avcodec_parameters_free(AVCodecParameters **par);
-+
-+/**
-+ * Copy the contents of src to dst. Any allocated fields in dst are freed and
-+ * replaced with newly allocated duplicates of the corresponding fields in src.
-+ *
-+ * @return >= 0 on success, a negative AVERROR code on failure.
-+ */
-+int avcodec_parameters_copy(AVCodecParameters *dst, const AVCodecParameters *src);
-+
-+/**
-+ * Fill the parameters struct based on the values from the supplied codec
-+ * context. Any allocated fields in par are freed and replaced with duplicates
-+ * of the corresponding fields in codec.
-+ *
-+ * @return >= 0 on success, a negative AVERROR code on failure
-+ */
-+int avcodec_parameters_from_context(AVCodecParameters *par,
-+                                    const AVCodecContext *codec);
-+
-+/**
-+ * Fill the codec context based on the values from the supplied codec
-+ * parameters. Any allocated fields in codec that have a corresponding field in
-+ * par are freed and replaced with duplicates of the corresponding field in par.
-+ * Fields in codec that do not have a counterpart in par are not touched.
-+ *
-+ * @return >= 0 on success, a negative AVERROR code on failure.
-+ */
-+int avcodec_parameters_to_context(AVCodecContext *codec,
-+                                  const AVCodecParameters *par);
-+
-+/**
-+ * Initialize the AVCodecContext to use the given AVCodec. Prior to using this
-+ * function the context has to be allocated with avcodec_alloc_context3().
-+ *
-+ * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(),
-+ * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for
-+ * retrieving a codec.
-+ *
-+ * @warning This function is not thread safe!
-+ *
-+ * @note Always call this function before using decoding routines (such as
-+ * @ref avcodec_receive_frame()).
-+ *
-+ * @code
-+ * avcodec_register_all();
-+ * av_dict_set(&opts, "b", "2.5M", 0);
-+ * codec = avcodec_find_decoder(AV_CODEC_ID_H264);
-+ * if (!codec)
-+ *     exit(1);
-+ *
-+ * context = avcodec_alloc_context3(codec);
-+ *
-+ * if (avcodec_open2(context, codec, opts) < 0)
-+ *     exit(1);
-+ * @endcode
-+ *
-+ * @param avctx The context to initialize.
-+ * @param codec The codec to open this context for. If a non-NULL codec has been
-+ *              previously passed to avcodec_alloc_context3() or
-+ *              for this context, then this parameter MUST be either NULL or
-+ *              equal to the previously passed codec.
-+ * @param options A dictionary filled with AVCodecContext and codec-private options.
-+ *                On return this object will be filled with options that were not found.
-+ *
-+ * @return zero on success, a negative value on error
-+ * @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(),
-+ *      av_dict_set(), av_opt_find().
-+ */
-+int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options);
-+
-+/**
-+ * Close a given AVCodecContext and free all the data associated with it
-+ * (but not the AVCodecContext itself).
-+ *
-+ * Calling this function on an AVCodecContext that hasn't been opened will free
-+ * the codec-specific data allocated in avcodec_alloc_context3() with a non-NULL
-+ * codec. Subsequent calls will do nothing.
-+ *
-+ * @note Do not use this function. Use avcodec_free_context() to destroy a
-+ * codec context (either open or closed). Opening and closing a codec context
-+ * multiple times is not supported anymore -- use multiple codec contexts
-+ * instead.
-+ */
-+int avcodec_close(AVCodecContext *avctx);
-+
-+/**
-+ * Free all allocated data in the given subtitle struct.
-+ *
-+ * @param sub AVSubtitle to free.
-+ */
-+void avsubtitle_free(AVSubtitle *sub);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @addtogroup lavc_packet
-+ * @{
-+ */
-+
-+/**
-+ * Allocate an AVPacket and set its fields to default values.  The resulting
-+ * struct must be freed using av_packet_free().
-+ *
-+ * @return An AVPacket filled with default values or NULL on failure.
-+ *
-+ * @note this only allocates the AVPacket itself, not the data buffers. Those
-+ * must be allocated through other means such as av_new_packet.
-+ *
-+ * @see av_new_packet
-+ */
-+AVPacket *av_packet_alloc(void);
-+
-+/**
-+ * Create a new packet that references the same data as src.
-+ *
-+ * This is a shortcut for av_packet_alloc()+av_packet_ref().
-+ *
-+ * @return newly created AVPacket on success, NULL on error.
-+ *
-+ * @see av_packet_alloc
-+ * @see av_packet_ref
-+ */
-+AVPacket *av_packet_clone(const AVPacket *src);
-+
-+/**
-+ * Free the packet, if the packet is reference counted, it will be
-+ * unreferenced first.
-+ *
-+ * @param pkt packet to be freed. The pointer will be set to NULL.
-+ * @note passing NULL is a no-op.
-+ */
-+void av_packet_free(AVPacket **pkt);
-+
-+/**
-+ * Initialize optional fields of a packet with default values.
-+ *
-+ * Note, this does not touch the data and size members, which have to be
-+ * initialized separately.
-+ *
-+ * @param pkt packet
-+ */
-+void av_init_packet(AVPacket *pkt);
-+
-+/**
-+ * Allocate the payload of a packet and initialize its fields with
-+ * default values.
-+ *
-+ * @param pkt packet
-+ * @param size wanted payload size
-+ * @return 0 if OK, AVERROR_xxx otherwise
-+ */
-+int av_new_packet(AVPacket *pkt, int size);
-+
-+/**
-+ * Reduce packet size, correctly zeroing padding
-+ *
-+ * @param pkt packet
-+ * @param size new size
-+ */
-+void av_shrink_packet(AVPacket *pkt, int size);
-+
-+/**
-+ * Increase packet size, correctly zeroing padding
-+ *
-+ * @param pkt packet
-+ * @param grow_by number of bytes by which to increase the size of the packet
-+ */
-+int av_grow_packet(AVPacket *pkt, int grow_by);
-+
-+/**
-+ * Initialize a reference-counted packet from av_malloc()ed data.
-+ *
-+ * @param pkt packet to be initialized. This function will set the data, size,
-+ *        buf and destruct fields, all others are left untouched.
-+ * @param data Data allocated by av_malloc() to be used as packet data. If this
-+ *        function returns successfully, the data is owned by the underlying AVBuffer.
-+ *        The caller may not access the data through other means.
-+ * @param size size of data in bytes, without the padding. I.e. the full buffer
-+ *        size is assumed to be size + AV_INPUT_BUFFER_PADDING_SIZE.
-+ *
-+ * @return 0 on success, a negative AVERROR on error
-+ */
-+int av_packet_from_data(AVPacket *pkt, uint8_t *data, int size);
-+
-+#if FF_API_AVPACKET_OLD_API
-+/**
-+ * @warning This is a hack - the packet memory allocation stuff is broken. The
-+ * packet is allocated if it was not really allocated.
-+ *
-+ * @deprecated Use av_packet_ref or av_packet_make_refcounted
-+ */
-+attribute_deprecated
-+int av_dup_packet(AVPacket *pkt);
-+/**
-+ * Copy packet, including contents
-+ *
-+ * @return 0 on success, negative AVERROR on fail
-+ *
-+ * @deprecated Use av_packet_ref
-+ */
-+attribute_deprecated
-+int av_copy_packet(AVPacket *dst, const AVPacket *src);
-+
-+/**
-+ * Copy packet side data
-+ *
-+ * @return 0 on success, negative AVERROR on fail
-+ *
-+ * @deprecated Use av_packet_copy_props
-+ */
-+attribute_deprecated
-+int av_copy_packet_side_data(AVPacket *dst, const AVPacket *src);
-+
-+/**
-+ * Free a packet.
-+ *
-+ * @deprecated Use av_packet_unref
-+ *
-+ * @param pkt packet to free
-+ */
-+attribute_deprecated
-+void av_free_packet(AVPacket *pkt);
-+#endif
-+/**
-+ * Allocate new information of a packet.
-+ *
-+ * @param pkt packet
-+ * @param type side information type
-+ * @param size side information size
-+ * @return pointer to fresh allocated data or NULL otherwise
-+ */
-+uint8_t* av_packet_new_side_data(AVPacket *pkt, enum AVPacketSideDataType type,
-+                                 int size);
-+
-+/**
-+ * Wrap an existing array as a packet side data.
-+ *
-+ * @param pkt packet
-+ * @param type side information type
-+ * @param data the side data array. It must be allocated with the av_malloc()
-+ *             family of functions. The ownership of the data is transferred to
-+ *             pkt.
-+ * @param size side information size
-+ * @return a non-negative number on success, a negative AVERROR code on
-+ *         failure. On failure, the packet is unchanged and the data remains
-+ *         owned by the caller.
-+ */
-+int av_packet_add_side_data(AVPacket *pkt, enum AVPacketSideDataType type,
-+                            uint8_t *data, size_t size);
-+
-+/**
-+ * Shrink the already allocated side data buffer
-+ *
-+ * @param pkt packet
-+ * @param type side information type
-+ * @param size new side information size
-+ * @return 0 on success, < 0 on failure
-+ */
-+int av_packet_shrink_side_data(AVPacket *pkt, enum AVPacketSideDataType type,
-+                               int size);
-+
-+/**
-+ * Get side information from packet.
-+ *
-+ * @param pkt packet
-+ * @param type desired side information type
-+ * @param size pointer for side information size to store (optional)
-+ * @return pointer to data if present or NULL otherwise
-+ */
-+uint8_t* av_packet_get_side_data(const AVPacket *pkt, enum AVPacketSideDataType type,
-+                                 int *size);
-+
-+#if FF_API_MERGE_SD_API
-+attribute_deprecated
-+int av_packet_merge_side_data(AVPacket *pkt);
-+
-+attribute_deprecated
-+int av_packet_split_side_data(AVPacket *pkt);
-+#endif
-+
-+const char *av_packet_side_data_name(enum AVPacketSideDataType type);
-+
-+/**
-+ * Pack a dictionary for use in side_data.
-+ *
-+ * @param dict The dictionary to pack.
-+ * @param size pointer to store the size of the returned data
-+ * @return pointer to data if successful, NULL otherwise
-+ */
-+uint8_t *av_packet_pack_dictionary(AVDictionary *dict, int *size);
-+/**
-+ * Unpack a dictionary from side_data.
-+ *
-+ * @param data data from side_data
-+ * @param size size of the data
-+ * @param dict the metadata storage dictionary
-+ * @return 0 on success, < 0 on failure
-+ */
-+int av_packet_unpack_dictionary(const uint8_t *data, int size, AVDictionary **dict);
-+
-+
-+/**
-+ * Convenience function to free all the side data stored.
-+ * All the other fields stay untouched.
-+ *
-+ * @param pkt packet
-+ */
-+void av_packet_free_side_data(AVPacket *pkt);
-+
-+/**
-+ * Setup a new reference to the data described by a given packet
-+ *
-+ * If src is reference-counted, setup dst as a new reference to the
-+ * buffer in src. Otherwise allocate a new buffer in dst and copy the
-+ * data from src into it.
-+ *
-+ * All the other fields are copied from src.
-+ *
-+ * @see av_packet_unref
-+ *
-+ * @param dst Destination packet
-+ * @param src Source packet
-+ *
-+ * @return 0 on success, a negative AVERROR on error.
-+ */
-+int av_packet_ref(AVPacket *dst, const AVPacket *src);
-+
-+/**
-+ * Wipe the packet.
-+ *
-+ * Unreference the buffer referenced by the packet and reset the
-+ * remaining packet fields to their default values.
-+ *
-+ * @param pkt The packet to be unreferenced.
-+ */
-+void av_packet_unref(AVPacket *pkt);
-+
-+/**
-+ * Move every field in src to dst and reset src.
-+ *
-+ * @see av_packet_unref
-+ *
-+ * @param src Source packet, will be reset
-+ * @param dst Destination packet
-+ */
-+void av_packet_move_ref(AVPacket *dst, AVPacket *src);
-+
-+/**
-+ * Copy only "properties" fields from src to dst.
-+ *
-+ * Properties for the purpose of this function are all the fields
-+ * beside those related to the packet data (buf, data, size)
-+ *
-+ * @param dst Destination packet
-+ * @param src Source packet
-+ *
-+ * @return 0 on success AVERROR on failure.
-+ */
-+int av_packet_copy_props(AVPacket *dst, const AVPacket *src);
-+
-+/**
-+ * Ensure the data described by a given packet is reference counted.
-+ *
-+ * @note This function does not ensure that the reference will be writable.
-+ *       Use av_packet_make_writable instead for that purpose.
-+ *
-+ * @see av_packet_ref
-+ * @see av_packet_make_writable
-+ *
-+ * @param pkt packet whose data should be made reference counted.
-+ *
-+ * @return 0 on success, a negative AVERROR on error. On failure, the
-+ *         packet is unchanged.
-+ */
-+int av_packet_make_refcounted(AVPacket *pkt);
-+
-+/**
-+ * Create a writable reference for the data described by a given packet,
-+ * avoiding data copy if possible.
-+ *
-+ * @param pkt Packet whose data should be made writable.
-+ *
-+ * @return 0 on success, a negative AVERROR on failure. On failure, the
-+ *         packet is unchanged.
-+ */
-+int av_packet_make_writable(AVPacket *pkt);
-+
-+/**
-+ * Convert valid timing fields (timestamps / durations) in a packet from one
-+ * timebase to another. Timestamps with unknown values (AV_NOPTS_VALUE) will be
-+ * ignored.
-+ *
-+ * @param pkt packet on which the conversion will be performed
-+ * @param tb_src source timebase, in which the timing fields in pkt are
-+ *               expressed
-+ * @param tb_dst destination timebase, to which the timing fields will be
-+ *               converted
-+ */
-+void av_packet_rescale_ts(AVPacket *pkt, AVRational tb_src, AVRational tb_dst);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @addtogroup lavc_decoding
-+ * @{
-+ */
-+
-+/**
-+ * Find a registered decoder with a matching codec ID.
-+ *
-+ * @param id AVCodecID of the requested decoder
-+ * @return A decoder if one was found, NULL otherwise.
-+ */
-+AVCodec *avcodec_find_decoder(enum AVCodecID id);
-+
-+/**
-+ * Find a registered decoder with the specified name.
-+ *
-+ * @param name name of the requested decoder
-+ * @return A decoder if one was found, NULL otherwise.
-+ */
-+AVCodec *avcodec_find_decoder_by_name(const char *name);
-+
-+/**
-+ * The default callback for AVCodecContext.get_buffer2(). It is made public so
-+ * it can be called by custom get_buffer2() implementations for decoders without
-+ * AV_CODEC_CAP_DR1 set.
-+ */
-+int avcodec_default_get_buffer2(AVCodecContext *s, AVFrame *frame, int flags);
-+
-+/**
-+ * Modify width and height values so that they will result in a memory
-+ * buffer that is acceptable for the codec if you do not use any horizontal
-+ * padding.
-+ *
-+ * May only be used if a codec with AV_CODEC_CAP_DR1 has been opened.
-+ */
-+void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height);
-+
-+/**
-+ * Modify width and height values so that they will result in a memory
-+ * buffer that is acceptable for the codec if you also ensure that all
-+ * line sizes are a multiple of the respective linesize_align[i].
-+ *
-+ * May only be used if a codec with AV_CODEC_CAP_DR1 has been opened.
-+ */
-+void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
-+                               int linesize_align[AV_NUM_DATA_POINTERS]);
-+
-+/**
-+ * Converts AVChromaLocation to swscale x/y chroma position.
-+ *
-+ * The positions represent the chroma (0,0) position in a coordinates system
-+ * with luma (0,0) representing the origin and luma(1,1) representing 256,256
-+ *
-+ * @param xpos  horizontal chroma sample position
-+ * @param ypos  vertical   chroma sample position
-+ */
-+int avcodec_enum_to_chroma_pos(int *xpos, int *ypos, enum AVChromaLocation pos);
-+
-+/**
-+ * Converts swscale x/y chroma position to AVChromaLocation.
-+ *
-+ * The positions represent the chroma (0,0) position in a coordinates system
-+ * with luma (0,0) representing the origin and luma(1,1) representing 256,256
-+ *
-+ * @param xpos  horizontal chroma sample position
-+ * @param ypos  vertical   chroma sample position
-+ */
-+enum AVChromaLocation avcodec_chroma_pos_to_enum(int xpos, int ypos);
-+
-+/**
-+ * Decode the audio frame of size avpkt->size from avpkt->data into frame.
-+ *
-+ * Some decoders may support multiple frames in a single AVPacket. Such
-+ * decoders would then just decode the first frame and the return value would be
-+ * less than the packet size. In this case, avcodec_decode_audio4 has to be
-+ * called again with an AVPacket containing the remaining data in order to
-+ * decode the second frame, etc...  Even if no frames are returned, the packet
-+ * needs to be fed to the decoder with remaining data until it is completely
-+ * consumed or an error occurs.
-+ *
-+ * Some decoders (those marked with AV_CODEC_CAP_DELAY) have a delay between input
-+ * and output. This means that for some packets they will not immediately
-+ * produce decoded output and need to be flushed at the end of decoding to get
-+ * all the decoded data. Flushing is done by calling this function with packets
-+ * with avpkt->data set to NULL and avpkt->size set to 0 until it stops
-+ * returning samples. It is safe to flush even those decoders that are not
-+ * marked with AV_CODEC_CAP_DELAY, then no samples will be returned.
-+ *
-+ * @warning The input buffer, avpkt->data must be AV_INPUT_BUFFER_PADDING_SIZE
-+ *          larger than the actual read bytes because some optimized bitstream
-+ *          readers read 32 or 64 bits at once and could read over the end.
-+ *
-+ * @note The AVCodecContext MUST have been opened with @ref avcodec_open2()
-+ * before packets may be fed to the decoder.
-+ *
-+ * @param      avctx the codec context
-+ * @param[out] frame The AVFrame in which to store decoded audio samples.
-+ *                   The decoder will allocate a buffer for the decoded frame by
-+ *                   calling the AVCodecContext.get_buffer2() callback.
-+ *                   When AVCodecContext.refcounted_frames is set to 1, the frame is
-+ *                   reference counted and the returned reference belongs to the
-+ *                   caller. The caller must release the frame using av_frame_unref()
-+ *                   when the frame is no longer needed. The caller may safely write
-+ *                   to the frame if av_frame_is_writable() returns 1.
-+ *                   When AVCodecContext.refcounted_frames is set to 0, the returned
-+ *                   reference belongs to the decoder and is valid only until the
-+ *                   next call to this function or until closing or flushing the
-+ *                   decoder. The caller may not write to it.
-+ * @param[out] got_frame_ptr Zero if no frame could be decoded, otherwise it is
-+ *                           non-zero. Note that this field being set to zero
-+ *                           does not mean that an error has occurred. For
-+ *                           decoders with AV_CODEC_CAP_DELAY set, no given decode
-+ *                           call is guaranteed to produce a frame.
-+ * @param[in]  avpkt The input AVPacket containing the input buffer.
-+ *                   At least avpkt->data and avpkt->size should be set. Some
-+ *                   decoders might also require additional fields to be set.
-+ * @return A negative error code is returned if an error occurred during
-+ *         decoding, otherwise the number of bytes consumed from the input
-+ *         AVPacket is returned.
-+ *
-+* @deprecated Use avcodec_send_packet() and avcodec_receive_frame().
-+ */
-+attribute_deprecated
-+int avcodec_decode_audio4(AVCodecContext *avctx, AVFrame *frame,
-+                          int *got_frame_ptr, const AVPacket *avpkt);
-+
-+/**
-+ * Decode the video frame of size avpkt->size from avpkt->data into picture.
-+ * Some decoders may support multiple frames in a single AVPacket, such
-+ * decoders would then just decode the first frame.
-+ *
-+ * @warning The input buffer must be AV_INPUT_BUFFER_PADDING_SIZE larger than
-+ * the actual read bytes because some optimized bitstream readers read 32 or 64
-+ * bits at once and could read over the end.
-+ *
-+ * @warning The end of the input buffer buf should be set to 0 to ensure that
-+ * no overreading happens for damaged MPEG streams.
-+ *
-+ * @note Codecs which have the AV_CODEC_CAP_DELAY capability set have a delay
-+ * between input and output, these need to be fed with avpkt->data=NULL,
-+ * avpkt->size=0 at the end to return the remaining frames.
-+ *
-+ * @note The AVCodecContext MUST have been opened with @ref avcodec_open2()
-+ * before packets may be fed to the decoder.
-+ *
-+ * @param avctx the codec context
-+ * @param[out] picture The AVFrame in which the decoded video frame will be stored.
-+ *             Use av_frame_alloc() to get an AVFrame. The codec will
-+ *             allocate memory for the actual bitmap by calling the
-+ *             AVCodecContext.get_buffer2() callback.
-+ *             When AVCodecContext.refcounted_frames is set to 1, the frame is
-+ *             reference counted and the returned reference belongs to the
-+ *             caller. The caller must release the frame using av_frame_unref()
-+ *             when the frame is no longer needed. The caller may safely write
-+ *             to the frame if av_frame_is_writable() returns 1.
-+ *             When AVCodecContext.refcounted_frames is set to 0, the returned
-+ *             reference belongs to the decoder and is valid only until the
-+ *             next call to this function or until closing or flushing the
-+ *             decoder. The caller may not write to it.
-+ *
-+ * @param[in] avpkt The input AVPacket containing the input buffer.
-+ *            You can create such packet with av_init_packet() and by then setting
-+ *            data and size, some decoders might in addition need other fields like
-+ *            flags&AV_PKT_FLAG_KEY. All decoders are designed to use the least
-+ *            fields possible.
-+ * @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
-+ * @return On error a negative value is returned, otherwise the number of bytes
-+ * used or zero if no frame could be decompressed.
-+ *
-+ * @deprecated Use avcodec_send_packet() and avcodec_receive_frame().
-+ */
-+attribute_deprecated
-+int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
-+                         int *got_picture_ptr,
-+                         const AVPacket *avpkt);
-+
-+/**
-+ * Decode a subtitle message.
-+ * Return a negative value on error, otherwise return the number of bytes used.
-+ * If no subtitle could be decompressed, got_sub_ptr is zero.
-+ * Otherwise, the subtitle is stored in *sub.
-+ * Note that AV_CODEC_CAP_DR1 is not available for subtitle codecs. This is for
-+ * simplicity, because the performance difference is expect to be negligible
-+ * and reusing a get_buffer written for video codecs would probably perform badly
-+ * due to a potentially very different allocation pattern.
-+ *
-+ * Some decoders (those marked with AV_CODEC_CAP_DELAY) have a delay between input
-+ * and output. This means that for some packets they will not immediately
-+ * produce decoded output and need to be flushed at the end of decoding to get
-+ * all the decoded data. Flushing is done by calling this function with packets
-+ * with avpkt->data set to NULL and avpkt->size set to 0 until it stops
-+ * returning subtitles. It is safe to flush even those decoders that are not
-+ * marked with AV_CODEC_CAP_DELAY, then no subtitles will be returned.
-+ *
-+ * @note The AVCodecContext MUST have been opened with @ref avcodec_open2()
-+ * before packets may be fed to the decoder.
-+ *
-+ * @param avctx the codec context
-+ * @param[out] sub The Preallocated AVSubtitle in which the decoded subtitle will be stored,
-+ *                 must be freed with avsubtitle_free if *got_sub_ptr is set.
-+ * @param[in,out] got_sub_ptr Zero if no subtitle could be decompressed, otherwise, it is nonzero.
-+ * @param[in] avpkt The input AVPacket containing the input buffer.
-+ */
-+int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
-+                            int *got_sub_ptr,
-+                            AVPacket *avpkt);
-+
-+/**
-+ * Supply raw packet data as input to a decoder.
-+ *
-+ * Internally, this call will copy relevant AVCodecContext fields, which can
-+ * influence decoding per-packet, and apply them when the packet is actually
-+ * decoded. (For example AVCodecContext.skip_frame, which might direct the
-+ * decoder to drop the frame contained by the packet sent with this function.)
-+ *
-+ * @warning The input buffer, avpkt->data must be AV_INPUT_BUFFER_PADDING_SIZE
-+ *          larger than the actual read bytes because some optimized bitstream
-+ *          readers read 32 or 64 bits at once and could read over the end.
-+ *
-+ * @warning Do not mix this API with the legacy API (like avcodec_decode_video2())
-+ *          on the same AVCodecContext. It will return unexpected results now
-+ *          or in future libavcodec versions.
-+ *
-+ * @note The AVCodecContext MUST have been opened with @ref avcodec_open2()
-+ *       before packets may be fed to the decoder.
-+ *
-+ * @param avctx codec context
-+ * @param[in] avpkt The input AVPacket. Usually, this will be a single video
-+ *                  frame, or several complete audio frames.
-+ *                  Ownership of the packet remains with the caller, and the
-+ *                  decoder will not write to the packet. The decoder may create
-+ *                  a reference to the packet data (or copy it if the packet is
-+ *                  not reference-counted).
-+ *                  Unlike with older APIs, the packet is always fully consumed,
-+ *                  and if it contains multiple frames (e.g. some audio codecs),
-+ *                  will require you to call avcodec_receive_frame() multiple
-+ *                  times afterwards before you can send a new packet.
-+ *                  It can be NULL (or an AVPacket with data set to NULL and
-+ *                  size set to 0); in this case, it is considered a flush
-+ *                  packet, which signals the end of the stream. Sending the
-+ *                  first flush packet will return success. Subsequent ones are
-+ *                  unnecessary and will return AVERROR_EOF. If the decoder
-+ *                  still has frames buffered, it will return them after sending
-+ *                  a flush packet.
-+ *
-+ * @return 0 on success, otherwise negative error code:
-+ *      AVERROR(EAGAIN):   input is not accepted in the current state - user
-+ *                         must read output with avcodec_receive_frame() (once
-+ *                         all output is read, the packet should be resent, and
-+ *                         the call will not fail with EAGAIN).
-+ *      AVERROR_EOF:       the decoder has been flushed, and no new packets can
-+ *                         be sent to it (also returned if more than 1 flush
-+ *                         packet is sent)
-+ *      AVERROR(EINVAL):   codec not opened, it is an encoder, or requires flush
-+ *      AVERROR(ENOMEM):   failed to add packet to internal queue, or similar
-+ *      other errors: legitimate decoding errors
-+ */
-+int avcodec_send_packet(AVCodecContext *avctx, const AVPacket *avpkt);
-+
-+/**
-+ * Return decoded output data from a decoder.
-+ *
-+ * @param avctx codec context
-+ * @param frame This will be set to a reference-counted video or audio
-+ *              frame (depending on the decoder type) allocated by the
-+ *              decoder. Note that the function will always call
-+ *              av_frame_unref(frame) before doing anything else.
-+ *
-+ * @return
-+ *      0:                 success, a frame was returned
-+ *      AVERROR(EAGAIN):   output is not available in this state - user must try
-+ *                         to send new input
-+ *      AVERROR_EOF:       the decoder has been fully flushed, and there will be
-+ *                         no more output frames
-+ *      AVERROR(EINVAL):   codec not opened, or it is an encoder
-+ *      other negative values: legitimate decoding errors
-+ */
-+int avcodec_receive_frame(AVCodecContext *avctx, AVFrame *frame);
-+
-+/**
-+ * Supply a raw video or audio frame to the encoder. Use avcodec_receive_packet()
-+ * to retrieve buffered output packets.
-+ *
-+ * @param avctx     codec context
-+ * @param[in] frame AVFrame containing the raw audio or video frame to be encoded.
-+ *                  Ownership of the frame remains with the caller, and the
-+ *                  encoder will not write to the frame. The encoder may create
-+ *                  a reference to the frame data (or copy it if the frame is
-+ *                  not reference-counted).
-+ *                  It can be NULL, in which case it is considered a flush
-+ *                  packet.  This signals the end of the stream. If the encoder
-+ *                  still has packets buffered, it will return them after this
-+ *                  call. Once flushing mode has been entered, additional flush
-+ *                  packets are ignored, and sending frames will return
-+ *                  AVERROR_EOF.
-+ *
-+ *                  For audio:
-+ *                  If AV_CODEC_CAP_VARIABLE_FRAME_SIZE is set, then each frame
-+ *                  can have any number of samples.
-+ *                  If it is not set, frame->nb_samples must be equal to
-+ *                  avctx->frame_size for all frames except the last.
-+ *                  The final frame may be smaller than avctx->frame_size.
-+ * @return 0 on success, otherwise negative error code:
-+ *      AVERROR(EAGAIN):   input is not accepted in the current state - user
-+ *                         must read output with avcodec_receive_packet() (once
-+ *                         all output is read, the packet should be resent, and
-+ *                         the call will not fail with EAGAIN).
-+ *      AVERROR_EOF:       the encoder has been flushed, and no new frames can
-+ *                         be sent to it
-+ *      AVERROR(EINVAL):   codec not opened, refcounted_frames not set, it is a
-+ *                         decoder, or requires flush
-+ *      AVERROR(ENOMEM):   failed to add packet to internal queue, or similar
-+ *      other errors: legitimate decoding errors
-+ */
-+int avcodec_send_frame(AVCodecContext *avctx, const AVFrame *frame);
-+
-+/**
-+ * Read encoded data from the encoder.
-+ *
-+ * @param avctx codec context
-+ * @param avpkt This will be set to a reference-counted packet allocated by the
-+ *              encoder. Note that the function will always call
-+ *              av_frame_unref(frame) before doing anything else.
-+ * @return 0 on success, otherwise negative error code:
-+ *      AVERROR(EAGAIN):   output is not available in the current state - user
-+ *                         must try to send input
-+ *      AVERROR_EOF:       the encoder has been fully flushed, and there will be
-+ *                         no more output packets
-+ *      AVERROR(EINVAL):   codec not opened, or it is an encoder
-+ *      other errors: legitimate decoding errors
-+ */
-+int avcodec_receive_packet(AVCodecContext *avctx, AVPacket *avpkt);
-+
-+/**
-+ * Create and return a AVHWFramesContext with values adequate for hardware
-+ * decoding. This is meant to get called from the get_format callback, and is
-+ * a helper for preparing a AVHWFramesContext for AVCodecContext.hw_frames_ctx.
-+ * This API is for decoding with certain hardware acceleration modes/APIs only.
-+ *
-+ * The returned AVHWFramesContext is not initialized. The caller must do this
-+ * with av_hwframe_ctx_init().
-+ *
-+ * Calling this function is not a requirement, but makes it simpler to avoid
-+ * codec or hardware API specific details when manually allocating frames.
-+ *
-+ * Alternatively to this, an API user can set AVCodecContext.hw_device_ctx,
-+ * which sets up AVCodecContext.hw_frames_ctx fully automatically, and makes
-+ * it unnecessary to call this function or having to care about
-+ * AVHWFramesContext initialization at all.
-+ *
-+ * There are a number of requirements for calling this function:
-+ *
-+ * - It must be called from get_format with the same avctx parameter that was
-+ *   passed to get_format. Calling it outside of get_format is not allowed, and
-+ *   can trigger undefined behavior.
-+ * - The function is not always supported (see description of return values).
-+ *   Even if this function returns successfully, hwaccel initialization could
-+ *   fail later. (The degree to which implementations check whether the stream
-+ *   is actually supported varies. Some do this check only after the user's
-+ *   get_format callback returns.)
-+ * - The hw_pix_fmt must be one of the choices suggested by get_format. If the
-+ *   user decides to use a AVHWFramesContext prepared with this API function,
-+ *   the user must return the same hw_pix_fmt from get_format.
-+ * - The device_ref passed to this function must support the given hw_pix_fmt.
-+ * - After calling this API function, it is the user's responsibility to
-+ *   initialize the AVHWFramesContext (returned by the out_frames_ref parameter),
-+ *   and to set AVCodecContext.hw_frames_ctx to it. If done, this must be done
-+ *   before returning from get_format (this is implied by the normal
-+ *   AVCodecContext.hw_frames_ctx API rules).
-+ * - The AVHWFramesContext parameters may change every time time get_format is
-+ *   called. Also, AVCodecContext.hw_frames_ctx is reset before get_format. So
-+ *   you are inherently required to go through this process again on every
-+ *   get_format call.
-+ * - It is perfectly possible to call this function without actually using
-+ *   the resulting AVHWFramesContext. One use-case might be trying to reuse a
-+ *   previously initialized AVHWFramesContext, and calling this API function
-+ *   only to test whether the required frame parameters have changed.
-+ * - Fields that use dynamically allocated values of any kind must not be set
-+ *   by the user unless setting them is explicitly allowed by the documentation.
-+ *   If the user sets AVHWFramesContext.free and AVHWFramesContext.user_opaque,
-+ *   the new free callback must call the potentially set previous free callback.
-+ *   This API call may set any dynamically allocated fields, including the free
-+ *   callback.
-+ *
-+ * The function will set at least the following fields on AVHWFramesContext
-+ * (potentially more, depending on hwaccel API):
-+ *
-+ * - All fields set by av_hwframe_ctx_alloc().
-+ * - Set the format field to hw_pix_fmt.
-+ * - Set the sw_format field to the most suited and most versatile format. (An
-+ *   implication is that this will prefer generic formats over opaque formats
-+ *   with arbitrary restrictions, if possible.)
-+ * - Set the width/height fields to the coded frame size, rounded up to the
-+ *   API-specific minimum alignment.
-+ * - Only _if_ the hwaccel requires a pre-allocated pool: set the initial_pool_size
-+ *   field to the number of maximum reference surfaces possible with the codec,
-+ *   plus 1 surface for the user to work (meaning the user can safely reference
-+ *   at most 1 decoded surface at a time), plus additional buffering introduced
-+ *   by frame threading. If the hwaccel does not require pre-allocation, the
-+ *   field is left to 0, and the decoder will allocate new surfaces on demand
-+ *   during decoding.
-+ * - Possibly AVHWFramesContext.hwctx fields, depending on the underlying
-+ *   hardware API.
-+ *
-+ * Essentially, out_frames_ref returns the same as av_hwframe_ctx_alloc(), but
-+ * with basic frame parameters set.
-+ *
-+ * The function is stateless, and does not change the AVCodecContext or the
-+ * device_ref AVHWDeviceContext.
-+ *
-+ * @param avctx The context which is currently calling get_format, and which
-+ *              implicitly contains all state needed for filling the returned
-+ *              AVHWFramesContext properly.
-+ * @param device_ref A reference to the AVHWDeviceContext describing the device
-+ *                   which will be used by the hardware decoder.
-+ * @param hw_pix_fmt The hwaccel format you are going to return from get_format.
-+ * @param out_frames_ref On success, set to a reference to an _uninitialized_
-+ *                       AVHWFramesContext, created from the given device_ref.
-+ *                       Fields will be set to values required for decoding.
-+ *                       Not changed if an error is returned.
-+ * @return zero on success, a negative value on error. The following error codes
-+ *         have special semantics:
-+ *      AVERROR(ENOENT): the decoder does not support this functionality. Setup
-+ *                       is always manual, or it is a decoder which does not
-+ *                       support setting AVCodecContext.hw_frames_ctx at all,
-+ *                       or it is a software format.
-+ *      AVERROR(EINVAL): it is known that hardware decoding is not supported for
-+ *                       this configuration, or the device_ref is not supported
-+ *                       for the hwaccel referenced by hw_pix_fmt.
-+ */
-+int avcodec_get_hw_frames_parameters(AVCodecContext *avctx,
-+                                     AVBufferRef *device_ref,
-+                                     enum AVPixelFormat hw_pix_fmt,
-+                                     AVBufferRef **out_frames_ref);
-+
-+
-+
-+/**
-+ * @defgroup lavc_parsing Frame parsing
-+ * @{
-+ */
-+
-+enum AVPictureStructure {
-+    AV_PICTURE_STRUCTURE_UNKNOWN,      //< unknown
-+    AV_PICTURE_STRUCTURE_TOP_FIELD,    //< coded as top field
-+    AV_PICTURE_STRUCTURE_BOTTOM_FIELD, //< coded as bottom field
-+    AV_PICTURE_STRUCTURE_FRAME,        //< coded as frame
-+};
-+
-+typedef struct AVCodecParserContext {
-+    void *priv_data;
-+    struct AVCodecParser *parser;
-+    int64_t frame_offset; /* offset of the current frame */
-+    int64_t cur_offset; /* current offset
-+                           (incremented by each av_parser_parse()) */
-+    int64_t next_frame_offset; /* offset of the next frame */
-+    /* video info */
-+    int pict_type; /* XXX: Put it back in AVCodecContext. */
-+    /**
-+     * This field is used for proper frame duration computation in lavf.
-+     * It signals, how much longer the frame duration of the current frame
-+     * is compared to normal frame duration.
-+     *
-+     * frame_duration = (1 + repeat_pict) * time_base
-+     *
-+     * It is used by codecs like H.264 to display telecined material.
-+     */
-+    int repeat_pict; /* XXX: Put it back in AVCodecContext. */
-+    int64_t pts;     /* pts of the current frame */
-+    int64_t dts;     /* dts of the current frame */
-+
-+    /* private data */
-+    int64_t last_pts;
-+    int64_t last_dts;
-+    int fetch_timestamp;
-+
-+#define AV_PARSER_PTS_NB 4
-+    int cur_frame_start_index;
-+    int64_t cur_frame_offset[AV_PARSER_PTS_NB];
-+    int64_t cur_frame_pts[AV_PARSER_PTS_NB];
-+    int64_t cur_frame_dts[AV_PARSER_PTS_NB];
-+
-+    int flags;
-+#define PARSER_FLAG_COMPLETE_FRAMES           0x0001
-+#define PARSER_FLAG_ONCE                      0x0002
-+/// Set if the parser has a valid file offset
-+#define PARSER_FLAG_FETCHED_OFFSET            0x0004
-+#define PARSER_FLAG_USE_CODEC_TS              0x1000
-+
-+    int64_t offset;      ///< byte offset from starting packet start
-+    int64_t cur_frame_end[AV_PARSER_PTS_NB];
-+
-+    /**
-+     * Set by parser to 1 for key frames and 0 for non-key frames.
-+     * It is initialized to -1, so if the parser doesn't set this flag,
-+     * old-style fallback using AV_PICTURE_TYPE_I picture type as key frames
-+     * will be used.
-+     */
-+    int key_frame;
-+
-+#if FF_API_CONVERGENCE_DURATION
-+    /**
-+     * @deprecated unused
-+     */
-+    attribute_deprecated
-+    int64_t convergence_duration;
-+#endif
-+
-+    // Timestamp generation support:
-+    /**
-+     * Synchronization point for start of timestamp generation.
-+     *
-+     * Set to >0 for sync point, 0 for no sync point and <0 for undefined
-+     * (default).
-+     *
-+     * For example, this corresponds to presence of H.264 buffering period
-+     * SEI message.
-+     */
-+    int dts_sync_point;
-+
-+    /**
-+     * Offset of the current timestamp against last timestamp sync point in
-+     * units of AVCodecContext.time_base.
-+     *
-+     * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
-+     * contain a valid timestamp offset.
-+     *
-+     * Note that the timestamp of sync point has usually a nonzero
-+     * dts_ref_dts_delta, which refers to the previous sync point. Offset of
-+     * the next frame after timestamp sync point will be usually 1.
-+     *
-+     * For example, this corresponds to H.264 cpb_removal_delay.
-+     */
-+    int dts_ref_dts_delta;
-+
-+    /**
-+     * Presentation delay of current frame in units of AVCodecContext.time_base.
-+     *
-+     * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
-+     * contain valid non-negative timestamp delta (presentation time of a frame
-+     * must not lie in the past).
-+     *
-+     * This delay represents the difference between decoding and presentation
-+     * time of the frame.
-+     *
-+     * For example, this corresponds to H.264 dpb_output_delay.
-+     */
-+    int pts_dts_delta;
-+
-+    /**
-+     * Position of the packet in file.
-+     *
-+     * Analogous to cur_frame_pts/dts
-+     */
-+    int64_t cur_frame_pos[AV_PARSER_PTS_NB];
-+
-+    /**
-+     * Byte position of currently parsed frame in stream.
-+     */
-+    int64_t pos;
-+
-+    /**
-+     * Previous frame byte position.
-+     */
-+    int64_t last_pos;
-+
-+    /**
-+     * Duration of the current frame.
-+     * For audio, this is in units of 1 / AVCodecContext.sample_rate.
-+     * For all other types, this is in units of AVCodecContext.time_base.
-+     */
-+    int duration;
-+
-+    enum AVFieldOrder field_order;
-+
-+    /**
-+     * Indicate whether a picture is coded as a frame, top field or bottom field.
-+     *
-+     * For example, H.264 field_pic_flag equal to 0 corresponds to
-+     * AV_PICTURE_STRUCTURE_FRAME. An H.264 picture with field_pic_flag
-+     * equal to 1 and bottom_field_flag equal to 0 corresponds to
-+     * AV_PICTURE_STRUCTURE_TOP_FIELD.
-+     */
-+    enum AVPictureStructure picture_structure;
-+
-+    /**
-+     * Picture number incremented in presentation or output order.
-+     * This field may be reinitialized at the first picture of a new sequence.
-+     *
-+     * For example, this corresponds to H.264 PicOrderCnt.
-+     */
-+    int output_picture_number;
-+
-+    /**
-+     * Dimensions of the decoded video intended for presentation.
-+     */
-+    int width;
-+    int height;
-+
-+    /**
-+     * Dimensions of the coded video.
-+     */
-+    int coded_width;
-+    int coded_height;
-+
-+    /**
-+     * The format of the coded data, corresponds to enum AVPixelFormat for video
-+     * and for enum AVSampleFormat for audio.
-+     *
-+     * Note that a decoder can have considerable freedom in how exactly it
-+     * decodes the data, so the format reported here might be different from the
-+     * one returned by a decoder.
-+     */
-+    int format;
-+} AVCodecParserContext;
-+
-+typedef struct AVCodecParser {
-+    int codec_ids[5]; /* several codec IDs are permitted */
-+    int priv_data_size;
-+    int (*parser_init)(AVCodecParserContext *s);
-+    /* This callback never returns an error, a negative value means that
-+     * the frame start was in a previous packet. */
-+    int (*parser_parse)(AVCodecParserContext *s,
-+                        AVCodecContext *avctx,
-+                        const uint8_t **poutbuf, int *poutbuf_size,
-+                        const uint8_t *buf, int buf_size);
-+    void (*parser_close)(AVCodecParserContext *s);
-+    int (*split)(AVCodecContext *avctx, const uint8_t *buf, int buf_size);
-+    struct AVCodecParser *next;
-+} AVCodecParser;
-+
-+/**
-+ * Iterate over all registered codec parsers.
-+ *
-+ * @param opaque a pointer where libavcodec will store the iteration state. Must
-+ *               point to NULL to start the iteration.
-+ *
-+ * @return the next registered codec parser or NULL when the iteration is
-+ *         finished
-+ */
-+const AVCodecParser *av_parser_iterate(void **opaque);
-+
-+attribute_deprecated
-+AVCodecParser *av_parser_next(const AVCodecParser *c);
-+
-+attribute_deprecated
-+void av_register_codec_parser(AVCodecParser *parser);
-+AVCodecParserContext *av_parser_init(int codec_id);
-+
-+/**
-+ * Parse a packet.
-+ *
-+ * @param s             parser context.
-+ * @param avctx         codec context.
-+ * @param poutbuf       set to pointer to parsed buffer or NULL if not yet finished.
-+ * @param poutbuf_size  set to size of parsed buffer or zero if not yet finished.
-+ * @param buf           input buffer.
-+ * @param buf_size      buffer size in bytes without the padding. I.e. the full buffer
-+                        size is assumed to be buf_size + AV_INPUT_BUFFER_PADDING_SIZE.
-+                        To signal EOF, this should be 0 (so that the last frame
-+                        can be output).
-+ * @param pts           input presentation timestamp.
-+ * @param dts           input decoding timestamp.
-+ * @param pos           input byte position in stream.
-+ * @return the number of bytes of the input bitstream used.
-+ *
-+ * Example:
-+ * @code
-+ *   while(in_len){
-+ *       len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
-+ *                                        in_data, in_len,
-+ *                                        pts, dts, pos);
-+ *       in_data += len;
-+ *       in_len  -= len;
-+ *
-+ *       if(size)
-+ *          decode_frame(data, size);
-+ *   }
-+ * @endcode
-+ */
-+int av_parser_parse2(AVCodecParserContext *s,
-+                     AVCodecContext *avctx,
-+                     uint8_t **poutbuf, int *poutbuf_size,
-+                     const uint8_t *buf, int buf_size,
-+                     int64_t pts, int64_t dts,
-+                     int64_t pos);
-+
-+/**
-+ * @return 0 if the output buffer is a subset of the input, 1 if it is allocated and must be freed
-+ * @deprecated use AVBitStreamFilter
-+ */
-+int av_parser_change(AVCodecParserContext *s,
-+                     AVCodecContext *avctx,
-+                     uint8_t **poutbuf, int *poutbuf_size,
-+                     const uint8_t *buf, int buf_size, int keyframe);
-+void av_parser_close(AVCodecParserContext *s);
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+
-+/**
-+ * @addtogroup lavc_encoding
-+ * @{
-+ */
-+
-+/**
-+ * Find a registered encoder with a matching codec ID.
-+ *
-+ * @param id AVCodecID of the requested encoder
-+ * @return An encoder if one was found, NULL otherwise.
-+ */
-+AVCodec *avcodec_find_encoder(enum AVCodecID id);
-+
-+/**
-+ * Find a registered encoder with the specified name.
-+ *
-+ * @param name name of the requested encoder
-+ * @return An encoder if one was found, NULL otherwise.
-+ */
-+AVCodec *avcodec_find_encoder_by_name(const char *name);
-+
-+/**
-+ * Encode a frame of audio.
-+ *
-+ * Takes input samples from frame and writes the next output packet, if
-+ * available, to avpkt. The output packet does not necessarily contain data for
-+ * the most recent frame, as encoders can delay, split, and combine input frames
-+ * internally as needed.
-+ *
-+ * @param avctx     codec context
-+ * @param avpkt     output AVPacket.
-+ *                  The user can supply an output buffer by setting
-+ *                  avpkt->data and avpkt->size prior to calling the
-+ *                  function, but if the size of the user-provided data is not
-+ *                  large enough, encoding will fail. If avpkt->data and
-+ *                  avpkt->size are set, avpkt->destruct must also be set. All
-+ *                  other AVPacket fields will be reset by the encoder using
-+ *                  av_init_packet(). If avpkt->data is NULL, the encoder will
-+ *                  allocate it. The encoder will set avpkt->size to the size
-+ *                  of the output packet.
-+ *
-+ *                  If this function fails or produces no output, avpkt will be
-+ *                  freed using av_packet_unref().
-+ * @param[in] frame AVFrame containing the raw audio data to be encoded.
-+ *                  May be NULL when flushing an encoder that has the
-+ *                  AV_CODEC_CAP_DELAY capability set.
-+ *                  If AV_CODEC_CAP_VARIABLE_FRAME_SIZE is set, then each frame
-+ *                  can have any number of samples.
-+ *                  If it is not set, frame->nb_samples must be equal to
-+ *                  avctx->frame_size for all frames except the last.
-+ *                  The final frame may be smaller than avctx->frame_size.
-+ * @param[out] got_packet_ptr This field is set to 1 by libavcodec if the
-+ *                            output packet is non-empty, and to 0 if it is
-+ *                            empty. If the function returns an error, the
-+ *                            packet can be assumed to be invalid, and the
-+ *                            value of got_packet_ptr is undefined and should
-+ *                            not be used.
-+ * @return          0 on success, negative error code on failure
-+ *
-+ * @deprecated use avcodec_send_frame()/avcodec_receive_packet() instead
-+ */
-+attribute_deprecated
-+int avcodec_encode_audio2(AVCodecContext *avctx, AVPacket *avpkt,
-+                          const AVFrame *frame, int *got_packet_ptr);
-+
-+/**
-+ * Encode a frame of video.
-+ *
-+ * Takes input raw video data from frame and writes the next output packet, if
-+ * available, to avpkt. The output packet does not necessarily contain data for
-+ * the most recent frame, as encoders can delay and reorder input frames
-+ * internally as needed.
-+ *
-+ * @param avctx     codec context
-+ * @param avpkt     output AVPacket.
-+ *                  The user can supply an output buffer by setting
-+ *                  avpkt->data and avpkt->size prior to calling the
-+ *                  function, but if the size of the user-provided data is not
-+ *                  large enough, encoding will fail. All other AVPacket fields
-+ *                  will be reset by the encoder using av_init_packet(). If
-+ *                  avpkt->data is NULL, the encoder will allocate it.
-+ *                  The encoder will set avpkt->size to the size of the
-+ *                  output packet. The returned data (if any) belongs to the
-+ *                  caller, he is responsible for freeing it.
-+ *
-+ *                  If this function fails or produces no output, avpkt will be
-+ *                  freed using av_packet_unref().
-+ * @param[in] frame AVFrame containing the raw video data to be encoded.
-+ *                  May be NULL when flushing an encoder that has the
-+ *                  AV_CODEC_CAP_DELAY capability set.
-+ * @param[out] got_packet_ptr This field is set to 1 by libavcodec if the
-+ *                            output packet is non-empty, and to 0 if it is
-+ *                            empty. If the function returns an error, the
-+ *                            packet can be assumed to be invalid, and the
-+ *                            value of got_packet_ptr is undefined and should
-+ *                            not be used.
-+ * @return          0 on success, negative error code on failure
-+ *
-+ * @deprecated use avcodec_send_frame()/avcodec_receive_packet() instead
-+ */
-+attribute_deprecated
-+int avcodec_encode_video2(AVCodecContext *avctx, AVPacket *avpkt,
-+                          const AVFrame *frame, int *got_packet_ptr);
-+
-+int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size,
-+                            const AVSubtitle *sub);
-+
-+
-+/**
-+ * @}
-+ */
-+
-+#if FF_API_AVPICTURE
-+/**
-+ * @addtogroup lavc_picture
-+ * @{
-+ */
-+
-+/**
-+ * @deprecated unused
-+ */
-+attribute_deprecated
-+int avpicture_alloc(AVPicture *picture, enum AVPixelFormat pix_fmt, int width, int height);
-+
-+/**
-+ * @deprecated unused
-+ */
-+attribute_deprecated
-+void avpicture_free(AVPicture *picture);
-+
-+/**
-+ * @deprecated use av_image_fill_arrays() instead.
-+ */
-+attribute_deprecated
-+int avpicture_fill(AVPicture *picture, const uint8_t *ptr,
-+                   enum AVPixelFormat pix_fmt, int width, int height);
-+
-+/**
-+ * @deprecated use av_image_copy_to_buffer() instead.
-+ */
-+attribute_deprecated
-+int avpicture_layout(const AVPicture *src, enum AVPixelFormat pix_fmt,
-+                     int width, int height,
-+                     unsigned char *dest, int dest_size);
-+
-+/**
-+ * @deprecated use av_image_get_buffer_size() instead.
-+ */
-+attribute_deprecated
-+int avpicture_get_size(enum AVPixelFormat pix_fmt, int width, int height);
-+
-+/**
-+ * @deprecated av_image_copy() instead.
-+ */
-+attribute_deprecated
-+void av_picture_copy(AVPicture *dst, const AVPicture *src,
-+                     enum AVPixelFormat pix_fmt, int width, int height);
-+
-+/**
-+ * @deprecated unused
-+ */
-+attribute_deprecated
-+int av_picture_crop(AVPicture *dst, const AVPicture *src,
-+                    enum AVPixelFormat pix_fmt, int top_band, int left_band);
-+
-+/**
-+ * @deprecated unused
-+ */
-+attribute_deprecated
-+int av_picture_pad(AVPicture *dst, const AVPicture *src, int height, int width, enum AVPixelFormat pix_fmt,
-+            int padtop, int padbottom, int padleft, int padright, int *color);
-+
-+/**
-+ * @}
-+ */
-+#endif
-+
-+/**
-+ * @defgroup lavc_misc Utility functions
-+ * @ingroup libavc
-+ *
-+ * Miscellaneous utility functions related to both encoding and decoding
-+ * (or neither).
-+ * @{
-+ */
-+
-+/**
-+ * @defgroup lavc_misc_pixfmt Pixel formats
-+ *
-+ * Functions for working with pixel formats.
-+ * @{
-+ */
-+
-+#if FF_API_GETCHROMA
-+/**
-+ * @deprecated Use av_pix_fmt_get_chroma_sub_sample
-+ */
-+
-+attribute_deprecated
-+void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int *v_shift);
-+#endif
-+
-+/**
-+ * Return a value representing the fourCC code associated to the
-+ * pixel format pix_fmt, or 0 if no associated fourCC code can be
-+ * found.
-+ */
-+unsigned int avcodec_pix_fmt_to_codec_tag(enum AVPixelFormat pix_fmt);
-+
-+/**
-+ * @deprecated see av_get_pix_fmt_loss()
-+ */
-+int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt,
-+                             int has_alpha);
-+
-+/**
-+ * Find the best pixel format to convert to given a certain source pixel
-+ * format.  When converting from one pixel format to another, information loss
-+ * may occur.  For example, when converting from RGB24 to GRAY, the color
-+ * information will be lost. Similarly, other losses occur when converting from
-+ * some formats to other formats. avcodec_find_best_pix_fmt_of_2() searches which of
-+ * the given pixel formats should be used to suffer the least amount of loss.
-+ * The pixel formats from which it chooses one, are determined by the
-+ * pix_fmt_list parameter.
-+ *
-+ *
-+ * @param[in] pix_fmt_list AV_PIX_FMT_NONE terminated array of pixel formats to choose from
-+ * @param[in] src_pix_fmt source pixel format
-+ * @param[in] has_alpha Whether the source pixel format alpha channel is used.
-+ * @param[out] loss_ptr Combination of flags informing you what kind of losses will occur.
-+ * @return The best pixel format to convert to or -1 if none was found.
-+ */
-+enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *pix_fmt_list,
-+                                            enum AVPixelFormat src_pix_fmt,
-+                                            int has_alpha, int *loss_ptr);
-+
-+/**
-+ * @deprecated see av_find_best_pix_fmt_of_2()
-+ */
-+enum AVPixelFormat avcodec_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
-+                                            enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
-+
-+attribute_deprecated
-+enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
-+                                            enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
-+
-+enum AVPixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum AVPixelFormat * fmt);
-+
-+/**
-+ * @}
-+ */
-+
-+#if FF_API_TAG_STRING
-+/**
-+ * Put a string representing the codec tag codec_tag in buf.
-+ *
-+ * @param buf       buffer to place codec tag in
-+ * @param buf_size size in bytes of buf
-+ * @param codec_tag codec tag to assign
-+ * @return the length of the string that would have been generated if
-+ * enough space had been available, excluding the trailing null
-+ *
-+ * @deprecated see av_fourcc_make_string() and av_fourcc2str().
-+ */
-+attribute_deprecated
-+size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_tag);
-+#endif
-+
-+void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode);
-+
-+/**
-+ * Return a name for the specified profile, if available.
-+ *
-+ * @param codec the codec that is searched for the given profile
-+ * @param profile the profile value for which a name is requested
-+ * @return A name for the profile if found, NULL otherwise.
-+ */
-+const char *av_get_profile_name(const AVCodec *codec, int profile);
-+
-+/**
-+ * Return a name for the specified profile, if available.
-+ *
-+ * @param codec_id the ID of the codec to which the requested profile belongs
-+ * @param profile the profile value for which a name is requested
-+ * @return A name for the profile if found, NULL otherwise.
-+ *
-+ * @note unlike av_get_profile_name(), which searches a list of profiles
-+ *       supported by a specific decoder or encoder implementation, this
-+ *       function searches the list of profiles from the AVCodecDescriptor
-+ */
-+const char *avcodec_profile_name(enum AVCodecID codec_id, int profile);
-+
-+int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2),void *arg, int *ret, int count, int size);
-+int avcodec_default_execute2(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2, int, int),void *arg, int *ret, int count);
-+//FIXME func typedef
-+
-+/**
-+ * Fill AVFrame audio data and linesize pointers.
-+ *
-+ * The buffer buf must be a preallocated buffer with a size big enough
-+ * to contain the specified samples amount. The filled AVFrame data
-+ * pointers will point to this buffer.
-+ *
-+ * AVFrame extended_data channel pointers are allocated if necessary for
-+ * planar audio.
-+ *
-+ * @param frame       the AVFrame
-+ *                    frame->nb_samples must be set prior to calling the
-+ *                    function. This function fills in frame->data,
-+ *                    frame->extended_data, frame->linesize[0].
-+ * @param nb_channels channel count
-+ * @param sample_fmt  sample format
-+ * @param buf         buffer to use for frame data
-+ * @param buf_size    size of buffer
-+ * @param align       plane size sample alignment (0 = default)
-+ * @return            >=0 on success, negative error code on failure
-+ * @todo return the size in bytes required to store the samples in
-+ * case of success, at the next libavutil bump
-+ */
-+int avcodec_fill_audio_frame(AVFrame *frame, int nb_channels,
-+                             enum AVSampleFormat sample_fmt, const uint8_t *buf,
-+                             int buf_size, int align);
-+
-+/**
-+ * Reset the internal decoder state / flush internal buffers. Should be called
-+ * e.g. when seeking or when switching to a different stream.
-+ *
-+ * @note when refcounted frames are not used (i.e. avctx->refcounted_frames is 0),
-+ * this invalidates the frames previously returned from the decoder. When
-+ * refcounted frames are used, the decoder just releases any references it might
-+ * keep internally, but the caller's reference remains valid.
-+ */
-+void avcodec_flush_buffers(AVCodecContext *avctx);
-+
-+/**
-+ * Return codec bits per sample.
-+ *
-+ * @param[in] codec_id the codec
-+ * @return Number of bits per sample or zero if unknown for the given codec.
-+ */
-+int av_get_bits_per_sample(enum AVCodecID codec_id);
-+
-+/**
-+ * Return the PCM codec associated with a sample format.
-+ * @param be  endianness, 0 for little, 1 for big,
-+ *            -1 (or anything else) for native
-+ * @return  AV_CODEC_ID_PCM_* or AV_CODEC_ID_NONE
-+ */
-+enum AVCodecID av_get_pcm_codec(enum AVSampleFormat fmt, int be);
-+
-+/**
-+ * Return codec bits per sample.
-+ * Only return non-zero if the bits per sample is exactly correct, not an
-+ * approximation.
-+ *
-+ * @param[in] codec_id the codec
-+ * @return Number of bits per sample or zero if unknown for the given codec.
-+ */
-+int av_get_exact_bits_per_sample(enum AVCodecID codec_id);
-+
-+/**
-+ * Return audio frame duration.
-+ *
-+ * @param avctx        codec context
-+ * @param frame_bytes  size of the frame, or 0 if unknown
-+ * @return             frame duration, in samples, if known. 0 if not able to
-+ *                     determine.
-+ */
-+int av_get_audio_frame_duration(AVCodecContext *avctx, int frame_bytes);
-+
-+/**
-+ * This function is the same as av_get_audio_frame_duration(), except it works
-+ * with AVCodecParameters instead of an AVCodecContext.
-+ */
-+int av_get_audio_frame_duration2(AVCodecParameters *par, int frame_bytes);
-+
-+#if FF_API_OLD_BSF
-+typedef struct AVBitStreamFilterContext {
-+    void *priv_data;
-+    const struct AVBitStreamFilter *filter;
-+    AVCodecParserContext *parser;
-+    struct AVBitStreamFilterContext *next;
-+    /**
-+     * Internal default arguments, used if NULL is passed to av_bitstream_filter_filter().
-+     * Not for access by library users.
-+     */
-+    char *args;
-+} AVBitStreamFilterContext;
-+#endif
-+
-+typedef struct AVBSFInternal AVBSFInternal;
-+
-+/**
-+ * The bitstream filter state.
-+ *
-+ * This struct must be allocated with av_bsf_alloc() and freed with
-+ * av_bsf_free().
-+ *
-+ * The fields in the struct will only be changed (by the caller or by the
-+ * filter) as described in their documentation, and are to be considered
-+ * immutable otherwise.
-+ */
-+typedef struct AVBSFContext {
-+    /**
-+     * A class for logging and AVOptions
-+     */
-+    const AVClass *av_class;
-+
-+    /**
-+     * The bitstream filter this context is an instance of.
-+     */
-+    const struct AVBitStreamFilter *filter;
-+
-+    /**
-+     * Opaque libavcodec internal data. Must not be touched by the caller in any
-+     * way.
-+     */
-+    AVBSFInternal *internal;
-+
-+    /**
-+     * Opaque filter-specific private data. If filter->priv_class is non-NULL,
-+     * this is an AVOptions-enabled struct.
-+     */
-+    void *priv_data;
-+
-+    /**
-+     * Parameters of the input stream. This field is allocated in
-+     * av_bsf_alloc(), it needs to be filled by the caller before
-+     * av_bsf_init().
-+     */
-+    AVCodecParameters *par_in;
-+
-+    /**
-+     * Parameters of the output stream. This field is allocated in
-+     * av_bsf_alloc(), it is set by the filter in av_bsf_init().
-+     */
-+    AVCodecParameters *par_out;
-+
-+    /**
-+     * The timebase used for the timestamps of the input packets. Set by the
-+     * caller before av_bsf_init().
-+     */
-+    AVRational time_base_in;
-+
-+    /**
-+     * The timebase used for the timestamps of the output packets. Set by the
-+     * filter in av_bsf_init().
-+     */
-+    AVRational time_base_out;
-+} AVBSFContext;
-+
-+typedef struct AVBitStreamFilter {
-+    const char *name;
-+
-+    /**
-+     * A list of codec ids supported by the filter, terminated by
-+     * AV_CODEC_ID_NONE.
-+     * May be NULL, in that case the bitstream filter works with any codec id.
-+     */
-+    const enum AVCodecID *codec_ids;
-+
-+    /**
-+     * A class for the private data, used to declare bitstream filter private
-+     * AVOptions. This field is NULL for bitstream filters that do not declare
-+     * any options.
-+     *
-+     * If this field is non-NULL, the first member of the filter private data
-+     * must be a pointer to AVClass, which will be set by libavcodec generic
-+     * code to this class.
-+     */
-+    const AVClass *priv_class;
-+
-+    /*****************************************************************
-+     * No fields below this line are part of the public API. They
-+     * may not be used outside of libavcodec and can be changed and
-+     * removed at will.
-+     * New public fields should be added right above.
-+     *****************************************************************
-+     */
-+
-+    int priv_data_size;
-+    int (*init)(AVBSFContext *ctx);
-+    int (*filter)(AVBSFContext *ctx, AVPacket *pkt);
-+    void (*close)(AVBSFContext *ctx);
-+} AVBitStreamFilter;
-+
-+#if FF_API_OLD_BSF
-+/**
-+ * @deprecated the old bitstream filtering API (using AVBitStreamFilterContext)
-+ * is deprecated. Use the new bitstream filtering API (using AVBSFContext).
-+ */
-+attribute_deprecated
-+void av_register_bitstream_filter(AVBitStreamFilter *bsf);
-+/**
-+ * @deprecated the old bitstream filtering API (using AVBitStreamFilterContext)
-+ * is deprecated. Use av_bsf_get_by_name(), av_bsf_alloc(), and av_bsf_init()
-+ * from the new bitstream filtering API (using AVBSFContext).
-+ */
-+attribute_deprecated
-+AVBitStreamFilterContext *av_bitstream_filter_init(const char *name);
-+/**
-+ * @deprecated the old bitstream filtering API (using AVBitStreamFilterContext)
-+ * is deprecated. Use av_bsf_send_packet() and av_bsf_receive_packet() from the
-+ * new bitstream filtering API (using AVBSFContext).
-+ */
-+attribute_deprecated
-+int av_bitstream_filter_filter(AVBitStreamFilterContext *bsfc,
-+                               AVCodecContext *avctx, const char *args,
-+                               uint8_t **poutbuf, int *poutbuf_size,
-+                               const uint8_t *buf, int buf_size, int keyframe);
-+/**
-+ * @deprecated the old bitstream filtering API (using AVBitStreamFilterContext)
-+ * is deprecated. Use av_bsf_free() from the new bitstream filtering API (using
-+ * AVBSFContext).
-+ */
-+attribute_deprecated
-+void av_bitstream_filter_close(AVBitStreamFilterContext *bsf);
-+/**
-+ * @deprecated the old bitstream filtering API (using AVBitStreamFilterContext)
-+ * is deprecated. Use av_bsf_iterate() from the new bitstream filtering API (using
-+ * AVBSFContext).
-+ */
-+attribute_deprecated
-+const AVBitStreamFilter *av_bitstream_filter_next(const AVBitStreamFilter *f);
-+#endif
-+
-+/**
-+ * @return a bitstream filter with the specified name or NULL if no such
-+ *         bitstream filter exists.
-+ */
-+const AVBitStreamFilter *av_bsf_get_by_name(const char *name);
-+
-+/**
-+ * Iterate over all registered bitstream filters.
-+ *
-+ * @param opaque a pointer where libavcodec will store the iteration state. Must
-+ *               point to NULL to start the iteration.
-+ *
-+ * @return the next registered bitstream filter or NULL when the iteration is
-+ *         finished
-+ */
-+const AVBitStreamFilter *av_bsf_iterate(void **opaque);
-+#if FF_API_NEXT
-+attribute_deprecated
-+const AVBitStreamFilter *av_bsf_next(void **opaque);
-+#endif
-+
-+/**
-+ * Allocate a context for a given bitstream filter. The caller must fill in the
-+ * context parameters as described in the documentation and then call
-+ * av_bsf_init() before sending any data to the filter.
-+ *
-+ * @param filter the filter for which to allocate an instance.
-+ * @param ctx a pointer into which the pointer to the newly-allocated context
-+ *            will be written. It must be freed with av_bsf_free() after the
-+ *            filtering is done.
-+ *
-+ * @return 0 on success, a negative AVERROR code on failure
-+ */
-+int av_bsf_alloc(const AVBitStreamFilter *filter, AVBSFContext **ctx);
-+
-+/**
-+ * Prepare the filter for use, after all the parameters and options have been
-+ * set.
-+ */
-+int av_bsf_init(AVBSFContext *ctx);
-+
-+/**
-+ * Submit a packet for filtering.
-+ *
-+ * After sending each packet, the filter must be completely drained by calling
-+ * av_bsf_receive_packet() repeatedly until it returns AVERROR(EAGAIN) or
-+ * AVERROR_EOF.
-+ *
-+ * @param pkt the packet to filter. The bitstream filter will take ownership of
-+ * the packet and reset the contents of pkt. pkt is not touched if an error occurs.
-+ * This parameter may be NULL, which signals the end of the stream (i.e. no more
-+ * packets will be sent). That will cause the filter to output any packets it
-+ * may have buffered internally.
-+ *
-+ * @return 0 on success, a negative AVERROR on error.
-+ */
-+int av_bsf_send_packet(AVBSFContext *ctx, AVPacket *pkt);
-+
-+/**
-+ * Retrieve a filtered packet.
-+ *
-+ * @param[out] pkt this struct will be filled with the contents of the filtered
-+ *                 packet. It is owned by the caller and must be freed using
-+ *                 av_packet_unref() when it is no longer needed.
-+ *                 This parameter should be "clean" (i.e. freshly allocated
-+ *                 with av_packet_alloc() or unreffed with av_packet_unref())
-+ *                 when this function is called. If this function returns
-+ *                 successfully, the contents of pkt will be completely
-+ *                 overwritten by the returned data. On failure, pkt is not
-+ *                 touched.
-+ *
-+ * @return 0 on success. AVERROR(EAGAIN) if more packets need to be sent to the
-+ * filter (using av_bsf_send_packet()) to get more output. AVERROR_EOF if there
-+ * will be no further output from the filter. Another negative AVERROR value if
-+ * an error occurs.
-+ *
-+ * @note one input packet may result in several output packets, so after sending
-+ * a packet with av_bsf_send_packet(), this function needs to be called
-+ * repeatedly until it stops returning 0. It is also possible for a filter to
-+ * output fewer packets than were sent to it, so this function may return
-+ * AVERROR(EAGAIN) immediately after a successful av_bsf_send_packet() call.
-+ */
-+int av_bsf_receive_packet(AVBSFContext *ctx, AVPacket *pkt);
-+
-+/**
-+ * Free a bitstream filter context and everything associated with it; write NULL
-+ * into the supplied pointer.
-+ */
-+void av_bsf_free(AVBSFContext **ctx);
-+
-+/**
-+ * Get the AVClass for AVBSFContext. It can be used in combination with
-+ * AV_OPT_SEARCH_FAKE_OBJ for examining options.
-+ *
-+ * @see av_opt_find().
-+ */
-+const AVClass *av_bsf_get_class(void);
-+
-+/**
-+ * Structure for chain/list of bitstream filters.
-+ * Empty list can be allocated by av_bsf_list_alloc().
-+ */
-+typedef struct AVBSFList AVBSFList;
-+
-+/**
-+ * Allocate empty list of bitstream filters.
-+ * The list must be later freed by av_bsf_list_free()
-+ * or finalized by av_bsf_list_finalize().
-+ *
-+ * @return Pointer to @ref AVBSFList on success, NULL in case of failure
-+ */
-+AVBSFList *av_bsf_list_alloc(void);
-+
-+/**
-+ * Free list of bitstream filters.
-+ *
-+ * @param lst Pointer to pointer returned by av_bsf_list_alloc()
-+ */
-+void av_bsf_list_free(AVBSFList **lst);
-+
-+/**
-+ * Append bitstream filter to the list of bitstream filters.
-+ *
-+ * @param lst List to append to
-+ * @param bsf Filter context to be appended
-+ *
-+ * @return >=0 on success, negative AVERROR in case of failure
-+ */
-+int av_bsf_list_append(AVBSFList *lst, AVBSFContext *bsf);
-+
-+/**
-+ * Construct new bitstream filter context given it's name and options
-+ * and append it to the list of bitstream filters.
-+ *
-+ * @param lst      List to append to
-+ * @param bsf_name Name of the bitstream filter
-+ * @param options  Options for the bitstream filter, can be set to NULL
-+ *
-+ * @return >=0 on success, negative AVERROR in case of failure
-+ */
-+int av_bsf_list_append2(AVBSFList *lst, const char * bsf_name, AVDictionary **options);
-+/**
-+ * Finalize list of bitstream filters.
-+ *
-+ * This function will transform @ref AVBSFList to single @ref AVBSFContext,
-+ * so the whole chain of bitstream filters can be treated as single filter
-+ * freshly allocated by av_bsf_alloc().
-+ * If the call is successful, @ref AVBSFList structure is freed and lst
-+ * will be set to NULL. In case of failure, caller is responsible for
-+ * freeing the structure by av_bsf_list_free()
-+ *
-+ * @param      lst Filter list structure to be transformed
-+ * @param[out] bsf Pointer to be set to newly created @ref AVBSFContext structure
-+ *                 representing the chain of bitstream filters
-+ *
-+ * @return >=0 on success, negative AVERROR in case of failure
-+ */
-+int av_bsf_list_finalize(AVBSFList **lst, AVBSFContext **bsf);
-+
-+/**
-+ * Parse string describing list of bitstream filters and create single
-+ * @ref AVBSFContext describing the whole chain of bitstream filters.
-+ * Resulting @ref AVBSFContext can be treated as any other @ref AVBSFContext freshly
-+ * allocated by av_bsf_alloc().
-+ *
-+ * @param      str String describing chain of bitstream filters in format
-+ *                 `bsf1[=opt1=val1:opt2=val2][,bsf2]`
-+ * @param[out] bsf Pointer to be set to newly created @ref AVBSFContext structure
-+ *                 representing the chain of bitstream filters
-+ *
-+ * @return >=0 on success, negative AVERROR in case of failure
-+ */
-+int av_bsf_list_parse_str(const char *str, AVBSFContext **bsf);
-+
-+/**
-+ * Get null/pass-through bitstream filter.
-+ *
-+ * @param[out] bsf Pointer to be set to new instance of pass-through bitstream filter
-+ *
-+ * @return
-+ */
-+int av_bsf_get_null_filter(AVBSFContext **bsf);
-+
-+/* memory */
-+
-+/**
-+ * Same behaviour av_fast_malloc but the buffer has additional
-+ * AV_INPUT_BUFFER_PADDING_SIZE at the end which will always be 0.
-+ *
-+ * In addition the whole buffer will initially and after resizes
-+ * be 0-initialized so that no uninitialized data will ever appear.
-+ */
-+void av_fast_padded_malloc(void *ptr, unsigned int *size, size_t min_size);
-+
-+/**
-+ * Same behaviour av_fast_padded_malloc except that buffer will always
-+ * be 0-initialized after call.
-+ */
-+void av_fast_padded_mallocz(void *ptr, unsigned int *size, size_t min_size);
-+
-+/**
-+ * Encode extradata length to a buffer. Used by xiph codecs.
-+ *
-+ * @param s buffer to write to; must be at least (v/255+1) bytes long
-+ * @param v size of extradata in bytes
-+ * @return number of bytes written to the buffer.
-+ */
-+unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
-+
-+#if FF_API_USER_VISIBLE_AVHWACCEL
-+/**
-+ * Register the hardware accelerator hwaccel.
-+ *
-+ * @deprecated  This function doesn't do anything.
-+ */
-+attribute_deprecated
-+void av_register_hwaccel(AVHWAccel *hwaccel);
-+
-+/**
-+ * If hwaccel is NULL, returns the first registered hardware accelerator,
-+ * if hwaccel is non-NULL, returns the next registered hardware accelerator
-+ * after hwaccel, or NULL if hwaccel is the last one.
-+ *
-+ * @deprecated  AVHWaccel structures contain no user-serviceable parts, so
-+ *              this function should not be used.
-+ */
-+attribute_deprecated
-+AVHWAccel *av_hwaccel_next(const AVHWAccel *hwaccel);
-+#endif
-+
-+#if FF_API_LOCKMGR
-+/**
-+ * Lock operation used by lockmgr
-+ *
-+ * @deprecated Deprecated together with av_lockmgr_register().
-+ */
-+enum AVLockOp {
-+  AV_LOCK_CREATE,  ///< Create a mutex
-+  AV_LOCK_OBTAIN,  ///< Lock the mutex
-+  AV_LOCK_RELEASE, ///< Unlock the mutex
-+  AV_LOCK_DESTROY, ///< Free mutex resources
-+};
-+
-+/**
-+ * Register a user provided lock manager supporting the operations
-+ * specified by AVLockOp. The "mutex" argument to the function points
-+ * to a (void *) where the lockmgr should store/get a pointer to a user
-+ * allocated mutex. It is NULL upon AV_LOCK_CREATE and equal to the
-+ * value left by the last call for all other ops. If the lock manager is
-+ * unable to perform the op then it should leave the mutex in the same
-+ * state as when it was called and return a non-zero value. However,
-+ * when called with AV_LOCK_DESTROY the mutex will always be assumed to
-+ * have been successfully destroyed. If av_lockmgr_register succeeds
-+ * it will return a non-negative value, if it fails it will return a
-+ * negative value and destroy all mutex and unregister all callbacks.
-+ * av_lockmgr_register is not thread-safe, it must be called from a
-+ * single thread before any calls which make use of locking are used.
-+ *
-+ * @param cb User defined callback. av_lockmgr_register invokes calls
-+ *           to this callback and the previously registered callback.
-+ *           The callback will be used to create more than one mutex
-+ *           each of which must be backed by its own underlying locking
-+ *           mechanism (i.e. do not use a single static object to
-+ *           implement your lock manager). If cb is set to NULL the
-+ *           lockmgr will be unregistered.
-+ *
-+ * @deprecated This function does nothing, and always returns 0. Be sure to
-+ *             build with thread support to get basic thread safety.
-+ */
-+attribute_deprecated
-+int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op));
-+#endif
-+
-+/**
-+ * Get the type of the given codec.
-+ */
-+enum AVMediaType avcodec_get_type(enum AVCodecID codec_id);
-+
-+/**
-+ * Get the name of a codec.
-+ * @return  a static string identifying the codec; never NULL
-+ */
-+const char *avcodec_get_name(enum AVCodecID id);
-+
-+/**
-+ * @return a positive value if s is open (i.e. avcodec_open2() was called on it
-+ * with no corresponding avcodec_close()), 0 otherwise.
-+ */
-+int avcodec_is_open(AVCodecContext *s);
-+
-+/**
-+ * @return a non-zero number if codec is an encoder, zero otherwise
-+ */
-+int av_codec_is_encoder(const AVCodec *codec);
-+
-+/**
-+ * @return a non-zero number if codec is a decoder, zero otherwise
-+ */
-+int av_codec_is_decoder(const AVCodec *codec);
-+
-+/**
-+ * @return descriptor for given codec ID or NULL if no descriptor exists.
-+ */
-+const AVCodecDescriptor *avcodec_descriptor_get(enum AVCodecID id);
-+
-+/**
-+ * Iterate over all codec descriptors known to libavcodec.
-+ *
-+ * @param prev previous descriptor. NULL to get the first descriptor.
-+ *
-+ * @return next descriptor or NULL after the last descriptor
-+ */
-+const AVCodecDescriptor *avcodec_descriptor_next(const AVCodecDescriptor *prev);
-+
-+/**
-+ * @return codec descriptor with the given name or NULL if no such descriptor
-+ *         exists.
-+ */
-+const AVCodecDescriptor *avcodec_descriptor_get_by_name(const char *name);
-+
-+/**
-+ * Allocate a CPB properties structure and initialize its fields to default
-+ * values.
-+ *
-+ * @param size if non-NULL, the size of the allocated struct will be written
-+ *             here. This is useful for embedding it in side data.
-+ *
-+ * @return the newly allocated struct or NULL on failure
-+ */
-+AVCPBProperties *av_cpb_properties_alloc(size_t *size);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVCODEC_AVCODEC_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avfft.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avfft.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/avfft.h
-@@ -0,0 +1,118 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_AVFFT_H
-+#define AVCODEC_AVFFT_H
-+
-+/**
-+ * @file
-+ * @ingroup lavc_fft
-+ * FFT functions
-+ */
-+
-+/**
-+ * @defgroup lavc_fft FFT functions
-+ * @ingroup lavc_misc
-+ *
-+ * @{
-+ */
-+
-+typedef float FFTSample;
-+
-+typedef struct FFTComplex {
-+    FFTSample re, im;
-+} FFTComplex;
-+
-+typedef struct FFTContext FFTContext;
-+
-+/**
-+ * Set up a complex FFT.
-+ * @param nbits           log2 of the length of the input array
-+ * @param inverse         if 0 perform the forward transform, if 1 perform the inverse
-+ */
-+FFTContext *av_fft_init(int nbits, int inverse);
-+
-+/**
-+ * Do the permutation needed BEFORE calling ff_fft_calc().
-+ */
-+void av_fft_permute(FFTContext *s, FFTComplex *z);
-+
-+/**
-+ * Do a complex FFT with the parameters defined in av_fft_init(). The
-+ * input data must be permuted before. No 1.0/sqrt(n) normalization is done.
-+ */
-+void av_fft_calc(FFTContext *s, FFTComplex *z);
-+
-+void av_fft_end(FFTContext *s);
-+
-+FFTContext *av_mdct_init(int nbits, int inverse, double scale);
-+void av_imdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-+void av_imdct_half(FFTContext *s, FFTSample *output, const FFTSample *input);
-+void av_mdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-+void av_mdct_end(FFTContext *s);
-+
-+/* Real Discrete Fourier Transform */
-+
-+enum RDFTransformType {
-+    DFT_R2C,
-+    IDFT_C2R,
-+    IDFT_R2C,
-+    DFT_C2R,
-+};
-+
-+typedef struct RDFTContext RDFTContext;
-+
-+/**
-+ * Set up a real FFT.
-+ * @param nbits           log2 of the length of the input array
-+ * @param trans           the type of transform
-+ */
-+RDFTContext *av_rdft_init(int nbits, enum RDFTransformType trans);
-+void av_rdft_calc(RDFTContext *s, FFTSample *data);
-+void av_rdft_end(RDFTContext *s);
-+
-+/* Discrete Cosine Transform */
-+
-+typedef struct DCTContext DCTContext;
-+
-+enum DCTTransformType {
-+    DCT_II = 0,
-+    DCT_III,
-+    DCT_I,
-+    DST_I,
-+};
-+
-+/**
-+ * Set up DCT.
-+ *
-+ * @param nbits           size of the input array:
-+ *                        (1 << nbits)     for DCT-II, DCT-III and DST-I
-+ *                        (1 << nbits) + 1 for DCT-I
-+ * @param type            the type of transform
-+ *
-+ * @note the first element of the input of DST-I is ignored
-+ */
-+DCTContext *av_dct_init(int nbits, enum DCTTransformType type);
-+void av_dct_calc(DCTContext *s, FFTSample *data);
-+void av_dct_end (DCTContext *s);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVCODEC_AVFFT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vaapi.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vaapi.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vaapi.h
-@@ -0,0 +1,86 @@
-+/*
-+ * Video Acceleration API (shared data between FFmpeg and the video player)
-+ * HW decode acceleration for MPEG-2, MPEG-4, H.264 and VC-1
-+ *
-+ * Copyright (C) 2008-2009 Splitted-Desktop Systems
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_VAAPI_H
-+#define AVCODEC_VAAPI_H
-+
-+/**
-+ * @file
-+ * @ingroup lavc_codec_hwaccel_vaapi
-+ * Public libavcodec VA API header.
-+ */
-+
-+#include <stdint.h>
-+#include "libavutil/attributes.h"
-+#include "version.h"
-+
-+#if FF_API_STRUCT_VAAPI_CONTEXT
-+
-+/**
-+ * @defgroup lavc_codec_hwaccel_vaapi VA API Decoding
-+ * @ingroup lavc_codec_hwaccel
-+ * @{
-+ */
-+
-+/**
-+ * This structure is used to share data between the FFmpeg library and
-+ * the client video application.
-+ * This shall be zero-allocated and available as
-+ * AVCodecContext.hwaccel_context. All user members can be set once
-+ * during initialization or through each AVCodecContext.get_buffer()
-+ * function call. In any case, they must be valid prior to calling
-+ * decoding functions.
-+ *
-+ * Deprecated: use AVCodecContext.hw_frames_ctx instead.
-+ */
-+struct attribute_deprecated vaapi_context {
-+    /**
-+     * Window system dependent data
-+     *
-+     * - encoding: unused
-+     * - decoding: Set by user
-+     */
-+    void *display;
-+
-+    /**
-+     * Configuration ID
-+     *
-+     * - encoding: unused
-+     * - decoding: Set by user
-+     */
-+    uint32_t config_id;
-+
-+    /**
-+     * Context ID (video decode pipeline)
-+     *
-+     * - encoding: unused
-+     * - decoding: Set by user
-+     */
-+    uint32_t context_id;
-+};
-+
-+/* @} */
-+
-+#endif /* FF_API_STRUCT_VAAPI_CONTEXT */
-+
-+#endif /* AVCODEC_VAAPI_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vdpau.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vdpau.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/vdpau.h
-@@ -0,0 +1,176 @@
-+/*
-+ * The Video Decode and Presentation API for UNIX (VDPAU) is used for
-+ * hardware-accelerated decoding of MPEG-1/2, H.264 and VC-1.
-+ *
-+ * Copyright (C) 2008 NVIDIA
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_VDPAU_H
-+#define AVCODEC_VDPAU_H
-+
-+/**
-+ * @file
-+ * @ingroup lavc_codec_hwaccel_vdpau
-+ * Public libavcodec VDPAU header.
-+ */
-+
-+
-+/**
-+ * @defgroup lavc_codec_hwaccel_vdpau VDPAU Decoder and Renderer
-+ * @ingroup lavc_codec_hwaccel
-+ *
-+ * VDPAU hardware acceleration has two modules
-+ * - VDPAU decoding
-+ * - VDPAU presentation
-+ *
-+ * The VDPAU decoding module parses all headers using FFmpeg
-+ * parsing mechanisms and uses VDPAU for the actual decoding.
-+ *
-+ * As per the current implementation, the actual decoding
-+ * and rendering (API calls) are done as part of the VDPAU
-+ * presentation (vo_vdpau.c) module.
-+ *
-+ * @{
-+ */
-+
-+#include <vdpau/vdpau.h>
-+
-+#include "libavutil/avconfig.h"
-+#include "libavutil/attributes.h"
-+
-+#include "avcodec.h"
-+#include "version.h"
-+
-+struct AVCodecContext;
-+struct AVFrame;
-+
-+typedef int (*AVVDPAU_Render2)(struct AVCodecContext *, struct AVFrame *,
-+                               const VdpPictureInfo *, uint32_t,
-+                               const VdpBitstreamBuffer *);
-+
-+/**
-+ * This structure is used to share data between the libavcodec library and
-+ * the client video application.
-+ * The user shall allocate the structure via the av_alloc_vdpau_hwaccel
-+ * function and make it available as
-+ * AVCodecContext.hwaccel_context. Members can be set by the user once
-+ * during initialization or through each AVCodecContext.get_buffer()
-+ * function call. In any case, they must be valid prior to calling
-+ * decoding functions.
-+ *
-+ * The size of this structure is not a part of the public ABI and must not
-+ * be used outside of libavcodec. Use av_vdpau_alloc_context() to allocate an
-+ * AVVDPAUContext.
-+ */
-+typedef struct AVVDPAUContext {
-+    /**
-+     * VDPAU decoder handle
-+     *
-+     * Set by user.
-+     */
-+    VdpDecoder decoder;
-+
-+    /**
-+     * VDPAU decoder render callback
-+     *
-+     * Set by the user.
-+     */
-+    VdpDecoderRender *render;
-+
-+    AVVDPAU_Render2 render2;
-+} AVVDPAUContext;
-+
-+/**
-+ * @brief allocation function for AVVDPAUContext
-+ *
-+ * Allows extending the struct without breaking API/ABI
-+ */
-+AVVDPAUContext *av_alloc_vdpaucontext(void);
-+
-+AVVDPAU_Render2 av_vdpau_hwaccel_get_render2(const AVVDPAUContext *);
-+void av_vdpau_hwaccel_set_render2(AVVDPAUContext *, AVVDPAU_Render2);
-+
-+/**
-+ * Associate a VDPAU device with a codec context for hardware acceleration.
-+ * This function is meant to be called from the get_format() codec callback,
-+ * or earlier. It can also be called after avcodec_flush_buffers() to change
-+ * the underlying VDPAU device mid-stream (e.g. to recover from non-transparent
-+ * display preemption).
-+ *
-+ * @note get_format() must return AV_PIX_FMT_VDPAU if this function completes
-+ * successfully.
-+ *
-+ * @param avctx decoding context whose get_format() callback is invoked
-+ * @param device VDPAU device handle to use for hardware acceleration
-+ * @param get_proc_address VDPAU device driver
-+ * @param flags zero of more OR'd AV_HWACCEL_FLAG_* flags
-+ *
-+ * @return 0 on success, an AVERROR code on failure.
-+ */
-+int av_vdpau_bind_context(AVCodecContext *avctx, VdpDevice device,
-+                          VdpGetProcAddress *get_proc_address, unsigned flags);
-+
-+/**
-+ * Gets the parameters to create an adequate VDPAU video surface for the codec
-+ * context using VDPAU hardware decoding acceleration.
-+ *
-+ * @note Behavior is undefined if the context was not successfully bound to a
-+ * VDPAU device using av_vdpau_bind_context().
-+ *
-+ * @param avctx the codec context being used for decoding the stream
-+ * @param type storage space for the VDPAU video surface chroma type
-+ *              (or NULL to ignore)
-+ * @param width storage space for the VDPAU video surface pixel width
-+ *              (or NULL to ignore)
-+ * @param height storage space for the VDPAU video surface pixel height
-+ *              (or NULL to ignore)
-+ *
-+ * @return 0 on success, a negative AVERROR code on failure.
-+ */
-+int av_vdpau_get_surface_parameters(AVCodecContext *avctx, VdpChromaType *type,
-+                                    uint32_t *width, uint32_t *height);
-+
-+/**
-+ * Allocate an AVVDPAUContext.
-+ *
-+ * @return Newly-allocated AVVDPAUContext or NULL on failure.
-+ */
-+AVVDPAUContext *av_vdpau_alloc_context(void);
-+
-+#if FF_API_VDPAU_PROFILE
-+/**
-+ * Get a decoder profile that should be used for initializing a VDPAU decoder.
-+ * Should be called from the AVCodecContext.get_format() callback.
-+ *
-+ * @deprecated Use av_vdpau_bind_context() instead.
-+ *
-+ * @param avctx the codec context being used for decoding the stream
-+ * @param profile a pointer into which the result will be written on success.
-+ *                The contents of profile are undefined if this function returns
-+ *                an error.
-+ *
-+ * @return 0 on success (non-negative), a negative AVERROR on failure.
-+ */
-+attribute_deprecated
-+int av_vdpau_get_profile(AVCodecContext *avctx, VdpDecoderProfile *profile);
-+#endif
-+
-+/* @}*/
-+
-+#endif /* AVCODEC_VDPAU_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/version.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/version.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavcodec/version.h
-@@ -0,0 +1,137 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVCODEC_VERSION_H
-+#define AVCODEC_VERSION_H
-+
-+/**
-+ * @file
-+ * @ingroup libavc
-+ * Libavcodec version macros.
-+ */
-+
-+#include "libavutil/version.h"
-+
-+#define LIBAVCODEC_VERSION_MAJOR  58
-+#define LIBAVCODEC_VERSION_MINOR  18
-+#define LIBAVCODEC_VERSION_MICRO 100
-+
-+#define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
-+                                               LIBAVCODEC_VERSION_MINOR, \
-+                                               LIBAVCODEC_VERSION_MICRO)
-+#define LIBAVCODEC_VERSION      AV_VERSION(LIBAVCODEC_VERSION_MAJOR,    \
-+                                           LIBAVCODEC_VERSION_MINOR,    \
-+                                           LIBAVCODEC_VERSION_MICRO)
-+#define LIBAVCODEC_BUILD        LIBAVCODEC_VERSION_INT
-+
-+#define LIBAVCODEC_IDENT        "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
-+
-+/**
-+ * FF_API_* defines may be placed below to indicate public API that will be
-+ * dropped at a future version bump. The defines themselves are not part of
-+ * the public API and may change, break or disappear at any time.
-+ *
-+ * @note, when bumping the major version it is recommended to manually
-+ * disable each FF_API_* in its own commit instead of disabling them all
-+ * at once through the bump. This improves the git bisect-ability of the change.
-+ */
-+
-+#ifndef FF_API_LOWRES
-+#define FF_API_LOWRES            (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_DEBUG_MV
-+#define FF_API_DEBUG_MV          (LIBAVCODEC_VERSION_MAJOR < 58)
-+#endif
-+#ifndef FF_API_AVCTX_TIMEBASE
-+#define FF_API_AVCTX_TIMEBASE    (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_CODED_FRAME
-+#define FF_API_CODED_FRAME       (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_SIDEDATA_ONLY_PKT
-+#define FF_API_SIDEDATA_ONLY_PKT (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_VDPAU_PROFILE
-+#define FF_API_VDPAU_PROFILE     (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_CONVERGENCE_DURATION
-+#define FF_API_CONVERGENCE_DURATION (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_AVPICTURE
-+#define FF_API_AVPICTURE         (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_AVPACKET_OLD_API
-+#define FF_API_AVPACKET_OLD_API (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_RTP_CALLBACK
-+#define FF_API_RTP_CALLBACK      (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_VBV_DELAY
-+#define FF_API_VBV_DELAY         (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_CODER_TYPE
-+#define FF_API_CODER_TYPE        (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_STAT_BITS
-+#define FF_API_STAT_BITS         (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_PRIVATE_OPT
-+#define FF_API_PRIVATE_OPT      (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_ASS_TIMING
-+#define FF_API_ASS_TIMING       (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_OLD_BSF
-+#define FF_API_OLD_BSF          (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_COPY_CONTEXT
-+#define FF_API_COPY_CONTEXT     (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_GET_CONTEXT_DEFAULTS
-+#define FF_API_GET_CONTEXT_DEFAULTS (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_NVENC_OLD_NAME
-+#define FF_API_NVENC_OLD_NAME    (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_STRUCT_VAAPI_CONTEXT
-+#define FF_API_STRUCT_VAAPI_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_MERGE_SD_API
-+#define FF_API_MERGE_SD_API      (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_TAG_STRING
-+#define FF_API_TAG_STRING        (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_GETCHROMA
-+#define FF_API_GETCHROMA         (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_CODEC_GET_SET
-+#define FF_API_CODEC_GET_SET     (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_USER_VISIBLE_AVHWACCEL
-+#define FF_API_USER_VISIBLE_AVHWACCEL (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_LOCKMGR
-+#define FF_API_LOCKMGR (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+#ifndef FF_API_NEXT
-+#define FF_API_NEXT              (LIBAVCODEC_VERSION_MAJOR < 59)
-+#endif
-+
-+
-+#endif /* AVCODEC_VERSION_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/attributes.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/attributes.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/attributes.h
-@@ -0,0 +1,167 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * Macro definitions for various function/variable attributes
-+ */
-+
-+#ifndef AVUTIL_ATTRIBUTES_H
-+#define AVUTIL_ATTRIBUTES_H
-+
-+#ifdef __GNUC__
-+#    define AV_GCC_VERSION_AT_LEAST(x,y) (__GNUC__ > (x) || __GNUC__ == (x) && __GNUC_MINOR__ >= (y))
-+#    define AV_GCC_VERSION_AT_MOST(x,y)  (__GNUC__ < (x) || __GNUC__ == (x) && __GNUC_MINOR__ <= (y))
-+#else
-+#    define AV_GCC_VERSION_AT_LEAST(x,y) 0
-+#    define AV_GCC_VERSION_AT_MOST(x,y)  0
-+#endif
-+
-+#ifndef av_always_inline
-+#if AV_GCC_VERSION_AT_LEAST(3,1)
-+#    define av_always_inline __attribute__((always_inline)) inline
-+#elif defined(_MSC_VER)
-+#    define av_always_inline __forceinline
-+#else
-+#    define av_always_inline inline
-+#endif
-+#endif
-+
-+#ifndef av_extern_inline
-+#if defined(__ICL) && __ICL >= 1210 || defined(__GNUC_STDC_INLINE__)
-+#    define av_extern_inline extern inline
-+#else
-+#    define av_extern_inline inline
-+#endif
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,4)
-+#    define av_warn_unused_result __attribute__((warn_unused_result))
-+#else
-+#    define av_warn_unused_result
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,1)
-+#    define av_noinline __attribute__((noinline))
-+#elif defined(_MSC_VER)
-+#    define av_noinline __declspec(noinline)
-+#else
-+#    define av_noinline
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,1) || defined(__clang__)
-+#    define av_pure __attribute__((pure))
-+#else
-+#    define av_pure
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(2,6) || defined(__clang__)
-+#    define av_const __attribute__((const))
-+#else
-+#    define av_const
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(4,3) || defined(__clang__)
-+#    define av_cold __attribute__((cold))
-+#else
-+#    define av_cold
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(4,1) && !defined(__llvm__)
-+#    define av_flatten __attribute__((flatten))
-+#else
-+#    define av_flatten
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,1)
-+#    define attribute_deprecated __attribute__((deprecated))
-+#elif defined(_MSC_VER)
-+#    define attribute_deprecated __declspec(deprecated)
-+#else
-+#    define attribute_deprecated
-+#endif
-+
-+/**
-+ * Disable warnings about deprecated features
-+ * This is useful for sections of code kept for backward compatibility and
-+ * scheduled for removal.
-+ */
-+#ifndef AV_NOWARN_DEPRECATED
-+#if AV_GCC_VERSION_AT_LEAST(4,6)
-+#    define AV_NOWARN_DEPRECATED(code) \
-+        _Pragma("GCC diagnostic push") \
-+        _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
-+        code \
-+        _Pragma("GCC diagnostic pop")
-+#elif defined(_MSC_VER)
-+#    define AV_NOWARN_DEPRECATED(code) \
-+        __pragma(warning(push)) \
-+        __pragma(warning(disable : 4996)) \
-+        code; \
-+        __pragma(warning(pop))
-+#else
-+#    define AV_NOWARN_DEPRECATED(code) code
-+#endif
-+#endif
-+
-+#if defined(__GNUC__) || defined(__clang__)
-+#    define av_unused __attribute__((unused))
-+#else
-+#    define av_unused
-+#endif
-+
-+/**
-+ * Mark a variable as used and prevent the compiler from optimizing it
-+ * away.  This is useful for variables accessed only from inline
-+ * assembler without the compiler being aware.
-+ */
-+#if AV_GCC_VERSION_AT_LEAST(3,1) || defined(__clang__)
-+#    define av_used __attribute__((used))
-+#else
-+#    define av_used
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,3) || defined(__clang__)
-+#   define av_alias __attribute__((may_alias))
-+#else
-+#   define av_alias
-+#endif
-+
-+#if (defined(__GNUC__) || defined(__clang__)) && !defined(__INTEL_COMPILER)
-+#    define av_uninit(x) x=x
-+#else
-+#    define av_uninit(x) x
-+#endif
-+
-+#if defined(__GNUC__) || defined(__clang__)
-+#    define av_builtin_constant_p __builtin_constant_p
-+#    define av_printf_format(fmtpos, attrpos) __attribute__((__format__(__printf__, fmtpos, attrpos)))
-+#else
-+#    define av_builtin_constant_p(x) 0
-+#    define av_printf_format(fmtpos, attrpos)
-+#endif
-+
-+#if AV_GCC_VERSION_AT_LEAST(2,5) || defined(__clang__)
-+#    define av_noreturn __attribute__((noreturn))
-+#else
-+#    define av_noreturn
-+#endif
-+
-+#endif /* AVUTIL_ATTRIBUTES_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avconfig.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avconfig.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avconfig.h
-@@ -0,0 +1,6 @@
-+/* Generated by ffmpeg configure */
-+#ifndef AVUTIL_AVCONFIG_H
-+#define AVUTIL_AVCONFIG_H
-+#define AV_HAVE_BIGENDIAN 0
-+#define AV_HAVE_FAST_UNALIGNED 1
-+#endif /* AVUTIL_AVCONFIG_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avutil.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avutil.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/avutil.h
-@@ -0,0 +1,365 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_AVUTIL_H
-+#define AVUTIL_AVUTIL_H
-+
-+/**
-+ * @file
-+ * @ingroup lavu
-+ * Convenience header that includes @ref lavu "libavutil"'s core.
-+ */
-+
-+/**
-+ * @mainpage
-+ *
-+ * @section ffmpeg_intro Introduction
-+ *
-+ * This document describes the usage of the different libraries
-+ * provided by FFmpeg.
-+ *
-+ * @li @ref libavc "libavcodec" encoding/decoding library
-+ * @li @ref lavfi "libavfilter" graph-based frame editing library
-+ * @li @ref libavf "libavformat" I/O and muxing/demuxing library
-+ * @li @ref lavd "libavdevice" special devices muxing/demuxing library
-+ * @li @ref lavu "libavutil" common utility library
-+ * @li @ref lswr "libswresample" audio resampling, format conversion and mixing
-+ * @li @ref lpp  "libpostproc" post processing library
-+ * @li @ref libsws "libswscale" color conversion and scaling library
-+ *
-+ * @section ffmpeg_versioning Versioning and compatibility
-+ *
-+ * Each of the FFmpeg libraries contains a version.h header, which defines a
-+ * major, minor and micro version number with the
-+ * <em>LIBRARYNAME_VERSION_{MAJOR,MINOR,MICRO}</em> macros. The major version
-+ * number is incremented with backward incompatible changes - e.g. removing
-+ * parts of the public API, reordering public struct members, etc. The minor
-+ * version number is incremented for backward compatible API changes or major
-+ * new features - e.g. adding a new public function or a new decoder. The micro
-+ * version number is incremented for smaller changes that a calling program
-+ * might still want to check for - e.g. changing behavior in a previously
-+ * unspecified situation.
-+ *
-+ * FFmpeg guarantees backward API and ABI compatibility for each library as long
-+ * as its major version number is unchanged. This means that no public symbols
-+ * will be removed or renamed. Types and names of the public struct members and
-+ * values of public macros and enums will remain the same (unless they were
-+ * explicitly declared as not part of the public API). Documented behavior will
-+ * not change.
-+ *
-+ * In other words, any correct program that works with a given FFmpeg snapshot
-+ * should work just as well without any changes with any later snapshot with the
-+ * same major versions. This applies to both rebuilding the program against new
-+ * FFmpeg versions or to replacing the dynamic FFmpeg libraries that a program
-+ * links against.
-+ *
-+ * However, new public symbols may be added and new members may be appended to
-+ * public structs whose size is not part of public ABI (most public structs in
-+ * FFmpeg). New macros and enum values may be added. Behavior in undocumented
-+ * situations may change slightly (and be documented). All those are accompanied
-+ * by an entry in doc/APIchanges and incrementing either the minor or micro
-+ * version number.
-+ */
-+
-+/**
-+ * @defgroup lavu libavutil
-+ * Common code shared across all FFmpeg libraries.
-+ *
-+ * @note
-+ * libavutil is designed to be modular. In most cases, in order to use the
-+ * functions provided by one component of libavutil you must explicitly include
-+ * the specific header containing that feature. If you are only using
-+ * media-related components, you could simply include libavutil/avutil.h, which
-+ * brings in most of the "core" components.
-+ *
-+ * @{
-+ *
-+ * @defgroup lavu_crypto Crypto and Hashing
-+ *
-+ * @{
-+ * @}
-+ *
-+ * @defgroup lavu_math Mathematics
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_string String Manipulation
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_mem Memory Management
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_data Data Structures
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_video Video related
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_audio Audio related
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_error Error Codes
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_log Logging Facility
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup lavu_misc Other
-+ *
-+ * @{
-+ *
-+ * @defgroup preproc_misc Preprocessor String Macros
-+ *
-+ * @{
-+ *
-+ * @}
-+ *
-+ * @defgroup version_utils Library Version Macros
-+ *
-+ * @{
-+ *
-+ * @}
-+ */
-+
-+
-+/**
-+ * @addtogroup lavu_ver
-+ * @{
-+ */
-+
-+/**
-+ * Return the LIBAVUTIL_VERSION_INT constant.
-+ */
-+unsigned avutil_version(void);
-+
-+/**
-+ * Return an informative version string. This usually is the actual release
-+ * version number or a git commit description. This string has no fixed format
-+ * and can change any time. It should never be parsed by code.
-+ */
-+const char *av_version_info(void);
-+
-+/**
-+ * Return the libavutil build-time configuration.
-+ */
-+const char *avutil_configuration(void);
-+
-+/**
-+ * Return the libavutil license.
-+ */
-+const char *avutil_license(void);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @addtogroup lavu_media Media Type
-+ * @brief Media Type
-+ */
-+
-+enum AVMediaType {
-+    AVMEDIA_TYPE_UNKNOWN = -1,  ///< Usually treated as AVMEDIA_TYPE_DATA
-+    AVMEDIA_TYPE_VIDEO,
-+    AVMEDIA_TYPE_AUDIO,
-+    AVMEDIA_TYPE_DATA,          ///< Opaque data information usually continuous
-+    AVMEDIA_TYPE_SUBTITLE,
-+    AVMEDIA_TYPE_ATTACHMENT,    ///< Opaque data information usually sparse
-+    AVMEDIA_TYPE_NB
-+};
-+
-+/**
-+ * Return a string describing the media_type enum, NULL if media_type
-+ * is unknown.
-+ */
-+const char *av_get_media_type_string(enum AVMediaType media_type);
-+
-+/**
-+ * @defgroup lavu_const Constants
-+ * @{
-+ *
-+ * @defgroup lavu_enc Encoding specific
-+ *
-+ * @note those definition should move to avcodec
-+ * @{
-+ */
-+
-+#define FF_LAMBDA_SHIFT 7
-+#define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
-+#define FF_QP2LAMBDA 118 ///< factor to convert from H.263 QP to lambda
-+#define FF_LAMBDA_MAX (256*128-1)
-+
-+#define FF_QUALITY_SCALE FF_LAMBDA_SCALE //FIXME maybe remove
-+
-+/**
-+ * @}
-+ * @defgroup lavu_time Timestamp specific
-+ *
-+ * FFmpeg internal timebase and timestamp definitions
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * @brief Undefined timestamp value
-+ *
-+ * Usually reported by demuxer that work on containers that do not provide
-+ * either pts or dts.
-+ */
-+
-+#define AV_NOPTS_VALUE          ((int64_t)UINT64_C(0x8000000000000000))
-+
-+/**
-+ * Internal time base represented as integer
-+ */
-+
-+#define AV_TIME_BASE            1000000
-+
-+/**
-+ * Internal time base represented as fractional value
-+ */
-+
-+#define AV_TIME_BASE_Q          (AVRational){1, AV_TIME_BASE}
-+
-+/**
-+ * @}
-+ * @}
-+ * @defgroup lavu_picture Image related
-+ *
-+ * AVPicture types, pixel formats and basic image planes manipulation.
-+ *
-+ * @{
-+ */
-+
-+enum AVPictureType {
-+    AV_PICTURE_TYPE_NONE = 0, ///< Undefined
-+    AV_PICTURE_TYPE_I,     ///< Intra
-+    AV_PICTURE_TYPE_P,     ///< Predicted
-+    AV_PICTURE_TYPE_B,     ///< Bi-dir predicted
-+    AV_PICTURE_TYPE_S,     ///< S(GMC)-VOP MPEG-4
-+    AV_PICTURE_TYPE_SI,    ///< Switching Intra
-+    AV_PICTURE_TYPE_SP,    ///< Switching Predicted
-+    AV_PICTURE_TYPE_BI,    ///< BI type
-+};
-+
-+/**
-+ * Return a single letter to describe the given picture type
-+ * pict_type.
-+ *
-+ * @param[in] pict_type the picture type @return a single character
-+ * representing the picture type, '?' if pict_type is unknown
-+ */
-+char av_get_picture_type_char(enum AVPictureType pict_type);
-+
-+/**
-+ * @}
-+ */
-+
-+#include "common.h"
-+#include "error.h"
-+#include "rational.h"
-+#include "version.h"
-+#include "macros.h"
-+#include "mathematics.h"
-+#include "log.h"
-+#include "pixfmt.h"
-+
-+/**
-+ * Return x default pointer in case p is NULL.
-+ */
-+static inline void *av_x_if_null(const void *p, const void *x)
-+{
-+    return (void *)(intptr_t)(p ? p : x);
-+}
-+
-+/**
-+ * Compute the length of an integer list.
-+ *
-+ * @param elsize  size in bytes of each list element (only 1, 2, 4 or 8)
-+ * @param term    list terminator (usually 0 or -1)
-+ * @param list    pointer to the list
-+ * @return  length of the list, in elements, not counting the terminator
-+ */
-+unsigned av_int_list_length_for_size(unsigned elsize,
-+                                     const void *list, uint64_t term) av_pure;
-+
-+/**
-+ * Compute the length of an integer list.
-+ *
-+ * @param term  list terminator (usually 0 or -1)
-+ * @param list  pointer to the list
-+ * @return  length of the list, in elements, not counting the terminator
-+ */
-+#define av_int_list_length(list, term) \
-+    av_int_list_length_for_size(sizeof(*(list)), list, term)
-+
-+/**
-+ * Open a file using a UTF-8 filename.
-+ * The API of this function matches POSIX fopen(), errors are returned through
-+ * errno.
-+ */
-+FILE *av_fopen_utf8(const char *path, const char *mode);
-+
-+/**
-+ * Return the fractional representation of the internal time base.
-+ */
-+AVRational av_get_time_base_q(void);
-+
-+#define AV_FOURCC_MAX_STRING_SIZE 32
-+
-+#define av_fourcc2str(fourcc) av_fourcc_make_string((char[AV_FOURCC_MAX_STRING_SIZE]){0}, fourcc)
-+
-+/**
-+ * Fill the provided buffer with a string containing a FourCC (four-character
-+ * code) representation.
-+ *
-+ * @param buf    a buffer with size in bytes of at least AV_FOURCC_MAX_STRING_SIZE
-+ * @param fourcc the fourcc to represent
-+ * @return the buffer in input
-+ */
-+char *av_fourcc_make_string(char *buf, uint32_t fourcc);
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_AVUTIL_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/buffer.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/buffer.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/buffer.h
-@@ -0,0 +1,291 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu_buffer
-+ * refcounted data buffer API
-+ */
-+
-+#ifndef AVUTIL_BUFFER_H
-+#define AVUTIL_BUFFER_H
-+
-+#include <stdint.h>
-+
-+/**
-+ * @defgroup lavu_buffer AVBuffer
-+ * @ingroup lavu_data
-+ *
-+ * @{
-+ * AVBuffer is an API for reference-counted data buffers.
-+ *
-+ * There are two core objects in this API -- AVBuffer and AVBufferRef. AVBuffer
-+ * represents the data buffer itself; it is opaque and not meant to be accessed
-+ * by the caller directly, but only through AVBufferRef. However, the caller may
-+ * e.g. compare two AVBuffer pointers to check whether two different references
-+ * are describing the same data buffer. AVBufferRef represents a single
-+ * reference to an AVBuffer and it is the object that may be manipulated by the
-+ * caller directly.
-+ *
-+ * There are two functions provided for creating a new AVBuffer with a single
-+ * reference -- av_buffer_alloc() to just allocate a new buffer, and
-+ * av_buffer_create() to wrap an existing array in an AVBuffer. From an existing
-+ * reference, additional references may be created with av_buffer_ref().
-+ * Use av_buffer_unref() to free a reference (this will automatically free the
-+ * data once all the references are freed).
-+ *
-+ * The convention throughout this API and the rest of FFmpeg is such that the
-+ * buffer is considered writable if there exists only one reference to it (and
-+ * it has not been marked as read-only). The av_buffer_is_writable() function is
-+ * provided to check whether this is true and av_buffer_make_writable() will
-+ * automatically create a new writable buffer when necessary.
-+ * Of course nothing prevents the calling code from violating this convention,
-+ * however that is safe only when all the existing references are under its
-+ * control.
-+ *
-+ * @note Referencing and unreferencing the buffers is thread-safe and thus
-+ * may be done from multiple threads simultaneously without any need for
-+ * additional locking.
-+ *
-+ * @note Two different references to the same buffer can point to different
-+ * parts of the buffer (i.e. their AVBufferRef.data will not be equal).
-+ */
-+
-+/**
-+ * A reference counted buffer type. It is opaque and is meant to be used through
-+ * references (AVBufferRef).
-+ */
-+typedef struct AVBuffer AVBuffer;
-+
-+/**
-+ * A reference to a data buffer.
-+ *
-+ * The size of this struct is not a part of the public ABI and it is not meant
-+ * to be allocated directly.
-+ */
-+typedef struct AVBufferRef {
-+    AVBuffer *buffer;
-+
-+    /**
-+     * The data buffer. It is considered writable if and only if
-+     * this is the only reference to the buffer, in which case
-+     * av_buffer_is_writable() returns 1.
-+     */
-+    uint8_t *data;
-+    /**
-+     * Size of data in bytes.
-+     */
-+    int      size;
-+} AVBufferRef;
-+
-+/**
-+ * Allocate an AVBuffer of the given size using av_malloc().
-+ *
-+ * @return an AVBufferRef of given size or NULL when out of memory
-+ */
-+AVBufferRef *av_buffer_alloc(int size);
-+
-+/**
-+ * Same as av_buffer_alloc(), except the returned buffer will be initialized
-+ * to zero.
-+ */
-+AVBufferRef *av_buffer_allocz(int size);
-+
-+/**
-+ * Always treat the buffer as read-only, even when it has only one
-+ * reference.
-+ */
-+#define AV_BUFFER_FLAG_READONLY (1 << 0)
-+
-+/**
-+ * Create an AVBuffer from an existing array.
-+ *
-+ * If this function is successful, data is owned by the AVBuffer. The caller may
-+ * only access data through the returned AVBufferRef and references derived from
-+ * it.
-+ * If this function fails, data is left untouched.
-+ * @param data   data array
-+ * @param size   size of data in bytes
-+ * @param free   a callback for freeing this buffer's data
-+ * @param opaque parameter to be got for processing or passed to free
-+ * @param flags  a combination of AV_BUFFER_FLAG_*
-+ *
-+ * @return an AVBufferRef referring to data on success, NULL on failure.
-+ */
-+AVBufferRef *av_buffer_create(uint8_t *data, int size,
-+                              void (*free)(void *opaque, uint8_t *data),
-+                              void *opaque, int flags);
-+
-+/**
-+ * Default free callback, which calls av_free() on the buffer data.
-+ * This function is meant to be passed to av_buffer_create(), not called
-+ * directly.
-+ */
-+void av_buffer_default_free(void *opaque, uint8_t *data);
-+
-+/**
-+ * Create a new reference to an AVBuffer.
-+ *
-+ * @return a new AVBufferRef referring to the same AVBuffer as buf or NULL on
-+ * failure.
-+ */
-+AVBufferRef *av_buffer_ref(AVBufferRef *buf);
-+
-+/**
-+ * Free a given reference and automatically free the buffer if there are no more
-+ * references to it.
-+ *
-+ * @param buf the reference to be freed. The pointer is set to NULL on return.
-+ */
-+void av_buffer_unref(AVBufferRef **buf);
-+
-+/**
-+ * @return 1 if the caller may write to the data referred to by buf (which is
-+ * true if and only if buf is the only reference to the underlying AVBuffer).
-+ * Return 0 otherwise.
-+ * A positive answer is valid until av_buffer_ref() is called on buf.
-+ */
-+int av_buffer_is_writable(const AVBufferRef *buf);
-+
-+/**
-+ * @return the opaque parameter set by av_buffer_create.
-+ */
-+void *av_buffer_get_opaque(const AVBufferRef *buf);
-+
-+int av_buffer_get_ref_count(const AVBufferRef *buf);
-+
-+/**
-+ * Create a writable reference from a given buffer reference, avoiding data copy
-+ * if possible.
-+ *
-+ * @param buf buffer reference to make writable. On success, buf is either left
-+ *            untouched, or it is unreferenced and a new writable AVBufferRef is
-+ *            written in its place. On failure, buf is left untouched.
-+ * @return 0 on success, a negative AVERROR on failure.
-+ */
-+int av_buffer_make_writable(AVBufferRef **buf);
-+
-+/**
-+ * Reallocate a given buffer.
-+ *
-+ * @param buf  a buffer reference to reallocate. On success, buf will be
-+ *             unreferenced and a new reference with the required size will be
-+ *             written in its place. On failure buf will be left untouched. *buf
-+ *             may be NULL, then a new buffer is allocated.
-+ * @param size required new buffer size.
-+ * @return 0 on success, a negative AVERROR on failure.
-+ *
-+ * @note the buffer is actually reallocated with av_realloc() only if it was
-+ * initially allocated through av_buffer_realloc(NULL) and there is only one
-+ * reference to it (i.e. the one passed to this function). In all other cases
-+ * a new buffer is allocated and the data is copied.
-+ */
-+int av_buffer_realloc(AVBufferRef **buf, int size);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_bufferpool AVBufferPool
-+ * @ingroup lavu_data
-+ *
-+ * @{
-+ * AVBufferPool is an API for a lock-free thread-safe pool of AVBuffers.
-+ *
-+ * Frequently allocating and freeing large buffers may be slow. AVBufferPool is
-+ * meant to solve this in cases when the caller needs a set of buffers of the
-+ * same size (the most obvious use case being buffers for raw video or audio
-+ * frames).
-+ *
-+ * At the beginning, the user must call av_buffer_pool_init() to create the
-+ * buffer pool. Then whenever a buffer is needed, call av_buffer_pool_get() to
-+ * get a reference to a new buffer, similar to av_buffer_alloc(). This new
-+ * reference works in all aspects the same way as the one created by
-+ * av_buffer_alloc(). However, when the last reference to this buffer is
-+ * unreferenced, it is returned to the pool instead of being freed and will be
-+ * reused for subsequent av_buffer_pool_get() calls.
-+ *
-+ * When the caller is done with the pool and no longer needs to allocate any new
-+ * buffers, av_buffer_pool_uninit() must be called to mark the pool as freeable.
-+ * Once all the buffers are released, it will automatically be freed.
-+ *
-+ * Allocating and releasing buffers with this API is thread-safe as long as
-+ * either the default alloc callback is used, or the user-supplied one is
-+ * thread-safe.
-+ */
-+
-+/**
-+ * The buffer pool. This structure is opaque and not meant to be accessed
-+ * directly. It is allocated with av_buffer_pool_init() and freed with
-+ * av_buffer_pool_uninit().
-+ */
-+typedef struct AVBufferPool AVBufferPool;
-+
-+/**
-+ * Allocate and initialize a buffer pool.
-+ *
-+ * @param size size of each buffer in this pool
-+ * @param alloc a function that will be used to allocate new buffers when the
-+ * pool is empty. May be NULL, then the default allocator will be used
-+ * (av_buffer_alloc()).
-+ * @return newly created buffer pool on success, NULL on error.
-+ */
-+AVBufferPool *av_buffer_pool_init(int size, AVBufferRef* (*alloc)(int size));
-+
-+/**
-+ * Allocate and initialize a buffer pool with a more complex allocator.
-+ *
-+ * @param size size of each buffer in this pool
-+ * @param opaque arbitrary user data used by the allocator
-+ * @param alloc a function that will be used to allocate new buffers when the
-+ *              pool is empty.
-+ * @param pool_free a function that will be called immediately before the pool
-+ *                  is freed. I.e. after av_buffer_pool_uninit() is called
-+ *                  by the caller and all the frames are returned to the pool
-+ *                  and freed. It is intended to uninitialize the user opaque
-+ *                  data.
-+ * @return newly created buffer pool on success, NULL on error.
-+ */
-+AVBufferPool *av_buffer_pool_init2(int size, void *opaque,
-+                                   AVBufferRef* (*alloc)(void *opaque, int size),
-+                                   void (*pool_free)(void *opaque));
-+
-+/**
-+ * Mark the pool as being available for freeing. It will actually be freed only
-+ * once all the allocated buffers associated with the pool are released. Thus it
-+ * is safe to call this function while some of the allocated buffers are still
-+ * in use.
-+ *
-+ * @param pool pointer to the pool to be freed. It will be set to NULL.
-+ */
-+void av_buffer_pool_uninit(AVBufferPool **pool);
-+
-+/**
-+ * Allocate a new AVBuffer, reusing an old buffer from the pool when available.
-+ * This function may be called simultaneously from multiple threads.
-+ *
-+ * @return a reference to the new buffer on success, NULL on error.
-+ */
-+AVBufferRef *av_buffer_pool_get(AVBufferPool *pool);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_BUFFER_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/channel_layout.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/channel_layout.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/channel_layout.h
-@@ -0,0 +1,232 @@
-+/*
-+ * Copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ * Copyright (c) 2008 Peter Ross
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_CHANNEL_LAYOUT_H
-+#define AVUTIL_CHANNEL_LAYOUT_H
-+
-+#include <stdint.h>
-+
-+/**
-+ * @file
-+ * audio channel layout utility functions
-+ */
-+
-+/**
-+ * @addtogroup lavu_audio
-+ * @{
-+ */
-+
-+/**
-+ * @defgroup channel_masks Audio channel masks
-+ *
-+ * A channel layout is a 64-bits integer with a bit set for every channel.
-+ * The number of bits set must be equal to the number of channels.
-+ * The value 0 means that the channel layout is not known.
-+ * @note this data structure is not powerful enough to handle channels
-+ * combinations that have the same channel multiple times, such as
-+ * dual-mono.
-+ *
-+ * @{
-+ */
-+#define AV_CH_FRONT_LEFT             0x00000001
-+#define AV_CH_FRONT_RIGHT            0x00000002
-+#define AV_CH_FRONT_CENTER           0x00000004
-+#define AV_CH_LOW_FREQUENCY          0x00000008
-+#define AV_CH_BACK_LEFT              0x00000010
-+#define AV_CH_BACK_RIGHT             0x00000020
-+#define AV_CH_FRONT_LEFT_OF_CENTER   0x00000040
-+#define AV_CH_FRONT_RIGHT_OF_CENTER  0x00000080
-+#define AV_CH_BACK_CENTER            0x00000100
-+#define AV_CH_SIDE_LEFT              0x00000200
-+#define AV_CH_SIDE_RIGHT             0x00000400
-+#define AV_CH_TOP_CENTER             0x00000800
-+#define AV_CH_TOP_FRONT_LEFT         0x00001000
-+#define AV_CH_TOP_FRONT_CENTER       0x00002000
-+#define AV_CH_TOP_FRONT_RIGHT        0x00004000
-+#define AV_CH_TOP_BACK_LEFT          0x00008000
-+#define AV_CH_TOP_BACK_CENTER        0x00010000
-+#define AV_CH_TOP_BACK_RIGHT         0x00020000
-+#define AV_CH_STEREO_LEFT            0x20000000  ///< Stereo downmix.
-+#define AV_CH_STEREO_RIGHT           0x40000000  ///< See AV_CH_STEREO_LEFT.
-+#define AV_CH_WIDE_LEFT              0x0000000080000000ULL
-+#define AV_CH_WIDE_RIGHT             0x0000000100000000ULL
-+#define AV_CH_SURROUND_DIRECT_LEFT   0x0000000200000000ULL
-+#define AV_CH_SURROUND_DIRECT_RIGHT  0x0000000400000000ULL
-+#define AV_CH_LOW_FREQUENCY_2        0x0000000800000000ULL
-+
-+/** Channel mask value used for AVCodecContext.request_channel_layout
-+    to indicate that the user requests the channel order of the decoder output
-+    to be the native codec channel order. */
-+#define AV_CH_LAYOUT_NATIVE          0x8000000000000000ULL
-+
-+/**
-+ * @}
-+ * @defgroup channel_mask_c Audio channel layouts
-+ * @{
-+ * */
-+#define AV_CH_LAYOUT_MONO              (AV_CH_FRONT_CENTER)
-+#define AV_CH_LAYOUT_STEREO            (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT)
-+#define AV_CH_LAYOUT_2POINT1           (AV_CH_LAYOUT_STEREO|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_2_1               (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_SURROUND          (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER)
-+#define AV_CH_LAYOUT_3POINT1           (AV_CH_LAYOUT_SURROUND|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_4POINT0           (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_4POINT1           (AV_CH_LAYOUT_4POINT0|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_2_2               (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
-+#define AV_CH_LAYOUT_QUAD              (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-+#define AV_CH_LAYOUT_5POINT0           (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
-+#define AV_CH_LAYOUT_5POINT1           (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_5POINT0_BACK      (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-+#define AV_CH_LAYOUT_5POINT1_BACK      (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_6POINT0           (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_6POINT0_FRONT     (AV_CH_LAYOUT_2_2|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
-+#define AV_CH_LAYOUT_HEXAGONAL         (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_6POINT1           (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_6POINT1_BACK      (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_BACK_CENTER)
-+#define AV_CH_LAYOUT_6POINT1_FRONT     (AV_CH_LAYOUT_6POINT0_FRONT|AV_CH_LOW_FREQUENCY)
-+#define AV_CH_LAYOUT_7POINT0           (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-+#define AV_CH_LAYOUT_7POINT0_FRONT     (AV_CH_LAYOUT_5POINT0|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
-+#define AV_CH_LAYOUT_7POINT1           (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-+#define AV_CH_LAYOUT_7POINT1_WIDE      (AV_CH_LAYOUT_5POINT1|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
-+#define AV_CH_LAYOUT_7POINT1_WIDE_BACK (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
-+#define AV_CH_LAYOUT_OCTAGONAL         (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_CENTER|AV_CH_BACK_RIGHT)
-+#define AV_CH_LAYOUT_HEXADECAGONAL     (AV_CH_LAYOUT_OCTAGONAL|AV_CH_WIDE_LEFT|AV_CH_WIDE_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT)
-+#define AV_CH_LAYOUT_STEREO_DOWNMIX    (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT)
-+
-+enum AVMatrixEncoding {
-+    AV_MATRIX_ENCODING_NONE,
-+    AV_MATRIX_ENCODING_DOLBY,
-+    AV_MATRIX_ENCODING_DPLII,
-+    AV_MATRIX_ENCODING_DPLIIX,
-+    AV_MATRIX_ENCODING_DPLIIZ,
-+    AV_MATRIX_ENCODING_DOLBYEX,
-+    AV_MATRIX_ENCODING_DOLBYHEADPHONE,
-+    AV_MATRIX_ENCODING_NB
-+};
-+
-+/**
-+ * Return a channel layout id that matches name, or 0 if no match is found.
-+ *
-+ * name can be one or several of the following notations,
-+ * separated by '+' or '|':
-+ * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0,
-+ *   5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix);
-+ * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC,
-+ *   SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR);
-+ * - a number of channels, in decimal, followed by 'c', yielding
-+ *   the default channel layout for that number of channels (@see
-+ *   av_get_default_channel_layout);
-+ * - a channel layout mask, in hexadecimal starting with "0x" (see the
-+ *   AV_CH_* macros).
-+ *
-+ * Example: "stereo+FC" = "2c+FC" = "2c+1c" = "0x7"
-+ */
-+uint64_t av_get_channel_layout(const char *name);
-+
-+/**
-+ * Return a channel layout and the number of channels based on the specified name.
-+ *
-+ * This function is similar to (@see av_get_channel_layout), but can also parse
-+ * unknown channel layout specifications.
-+ *
-+ * @param[in]  name             channel layout specification string
-+ * @param[out] channel_layout   parsed channel layout (0 if unknown)
-+ * @param[out] nb_channels      number of channels
-+ *
-+ * @return 0 on success, AVERROR(EINVAL) if the parsing fails.
-+ */
-+int av_get_extended_channel_layout(const char *name, uint64_t* channel_layout, int* nb_channels);
-+
-+/**
-+ * Return a description of a channel layout.
-+ * If nb_channels is <= 0, it is guessed from the channel_layout.
-+ *
-+ * @param buf put here the string containing the channel layout
-+ * @param buf_size size in bytes of the buffer
-+ */
-+void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout);
-+
-+struct AVBPrint;
-+/**
-+ * Append a description of a channel layout to a bprint buffer.
-+ */
-+void av_bprint_channel_layout(struct AVBPrint *bp, int nb_channels, uint64_t channel_layout);
-+
-+/**
-+ * Return the number of channels in the channel layout.
-+ */
-+int av_get_channel_layout_nb_channels(uint64_t channel_layout);
-+
-+/**
-+ * Return default channel layout for a given number of channels.
-+ */
-+int64_t av_get_default_channel_layout(int nb_channels);
-+
-+/**
-+ * Get the index of a channel in channel_layout.
-+ *
-+ * @param channel a channel layout describing exactly one channel which must be
-+ *                present in channel_layout.
-+ *
-+ * @return index of channel in channel_layout on success, a negative AVERROR
-+ *         on error.
-+ */
-+int av_get_channel_layout_channel_index(uint64_t channel_layout,
-+                                        uint64_t channel);
-+
-+/**
-+ * Get the channel with the given index in channel_layout.
-+ */
-+uint64_t av_channel_layout_extract_channel(uint64_t channel_layout, int index);
-+
-+/**
-+ * Get the name of a given channel.
-+ *
-+ * @return channel name on success, NULL on error.
-+ */
-+const char *av_get_channel_name(uint64_t channel);
-+
-+/**
-+ * Get the description of a given channel.
-+ *
-+ * @param channel  a channel layout with a single channel
-+ * @return  channel description on success, NULL on error
-+ */
-+const char *av_get_channel_description(uint64_t channel);
-+
-+/**
-+ * Get the value and name of a standard channel layout.
-+ *
-+ * @param[in]  index   index in an internal list, starting at 0
-+ * @param[out] layout  channel layout mask
-+ * @param[out] name    name of the layout
-+ * @return  0  if the layout exists,
-+ *          <0 if index is beyond the limits
-+ */
-+int av_get_standard_channel_layout(unsigned index, uint64_t *layout,
-+                                   const char **name);
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_CHANNEL_LAYOUT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/common.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/common.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/common.h
-@@ -0,0 +1,560 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * common internal and external API header
-+ */
-+
-+#ifndef AVUTIL_COMMON_H
-+#define AVUTIL_COMMON_H
-+
-+#if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS) && !defined(UINT64_C)
-+#error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
-+#endif
-+
-+#include <errno.h>
-+#include <inttypes.h>
-+#include <limits.h>
-+#include <math.h>
-+#include <stdint.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+
-+#include "attributes.h"
-+#include "macros.h"
-+#include "version.h"
-+#include "libavutil/avconfig.h"
-+
-+#if AV_HAVE_BIGENDIAN
-+#   define AV_NE(be, le) (be)
-+#else
-+#   define AV_NE(be, le) (le)
-+#endif
-+
-+//rounded division & shift
-+#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
-+/* assume b>0 */
-+#define ROUNDED_DIV(a,b) (((a)>0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
-+/* Fast a/(1<<b) rounded toward +inf. Assume a>=0 and b>=0 */
-+#define AV_CEIL_RSHIFT(a,b) (!av_builtin_constant_p(b) ? -((-(a)) >> (b)) \
-+                                                       : ((a) + (1<<(b)) - 1) >> (b))
-+/* Backwards compat. */
-+#define FF_CEIL_RSHIFT AV_CEIL_RSHIFT
-+
-+#define FFUDIV(a,b) (((a)>0 ?(a):(a)-(b)+1) / (b))
-+#define FFUMOD(a,b) ((a)-(b)*FFUDIV(a,b))
-+
-+/**
-+ * Absolute value, Note, INT_MIN / INT64_MIN result in undefined behavior as they
-+ * are not representable as absolute values of their type. This is the same
-+ * as with *abs()
-+ * @see FFNABS()
-+ */
-+#define FFABS(a) ((a) >= 0 ? (a) : (-(a)))
-+#define FFSIGN(a) ((a) > 0 ? 1 : -1)
-+
-+/**
-+ * Negative Absolute value.
-+ * this works for all integers of all types.
-+ * As with many macros, this evaluates its argument twice, it thus must not have
-+ * a sideeffect, that is FFNABS(x++) has undefined behavior.
-+ */
-+#define FFNABS(a) ((a) <= 0 ? (a) : (-(a)))
-+
-+/**
-+ * Comparator.
-+ * For two numerical expressions x and y, gives 1 if x > y, -1 if x < y, and 0
-+ * if x == y. This is useful for instance in a qsort comparator callback.
-+ * Furthermore, compilers are able to optimize this to branchless code, and
-+ * there is no risk of overflow with signed types.
-+ * As with many macros, this evaluates its argument multiple times, it thus
-+ * must not have a side-effect.
-+ */
-+#define FFDIFFSIGN(x,y) (((x)>(y)) - ((x)<(y)))
-+
-+#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
-+#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
-+#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
-+#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
-+
-+#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
-+#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
-+
-+/* misc math functions */
-+
-+#ifdef HAVE_AV_CONFIG_H
-+#   include "config.h"
-+#   include "intmath.h"
-+#endif
-+
-+/* Pull in unguarded fallback defines at the end of this file. */
-+#include "common.h"
-+
-+#ifndef av_log2
-+av_const int av_log2(unsigned v);
-+#endif
-+
-+#ifndef av_log2_16bit
-+av_const int av_log2_16bit(unsigned v);
-+#endif
-+
-+/**
-+ * Clip a signed integer value into the amin-amax range.
-+ * @param a value to clip
-+ * @param amin minimum value of the clip range
-+ * @param amax maximum value of the clip range
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int av_clip_c(int a, int amin, int amax)
-+{
-+#if defined(HAVE_AV_CONFIG_H) && defined(ASSERT_LEVEL) && ASSERT_LEVEL >= 2
-+    if (amin > amax) abort();
-+#endif
-+    if      (a < amin) return amin;
-+    else if (a > amax) return amax;
-+    else               return a;
-+}
-+
-+/**
-+ * Clip a signed 64bit integer value into the amin-amax range.
-+ * @param a value to clip
-+ * @param amin minimum value of the clip range
-+ * @param amax maximum value of the clip range
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int64_t av_clip64_c(int64_t a, int64_t amin, int64_t amax)
-+{
-+#if defined(HAVE_AV_CONFIG_H) && defined(ASSERT_LEVEL) && ASSERT_LEVEL >= 2
-+    if (amin > amax) abort();
-+#endif
-+    if      (a < amin) return amin;
-+    else if (a > amax) return amax;
-+    else               return a;
-+}
-+
-+/**
-+ * Clip a signed integer value into the 0-255 range.
-+ * @param a value to clip
-+ * @return clipped value
-+ */
-+static av_always_inline av_const uint8_t av_clip_uint8_c(int a)
-+{
-+    if (a&(~0xFF)) return (~a)>>31;
-+    else           return a;
-+}
-+
-+/**
-+ * Clip a signed integer value into the -128,127 range.
-+ * @param a value to clip
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int8_t av_clip_int8_c(int a)
-+{
-+    if ((a+0x80U) & ~0xFF) return (a>>31) ^ 0x7F;
-+    else                  return a;
-+}
-+
-+/**
-+ * Clip a signed integer value into the 0-65535 range.
-+ * @param a value to clip
-+ * @return clipped value
-+ */
-+static av_always_inline av_const uint16_t av_clip_uint16_c(int a)
-+{
-+    if (a&(~0xFFFF)) return (~a)>>31;
-+    else             return a;
-+}
-+
-+/**
-+ * Clip a signed integer value into the -32768,32767 range.
-+ * @param a value to clip
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int16_t av_clip_int16_c(int a)
-+{
-+    if ((a+0x8000U) & ~0xFFFF) return (a>>31) ^ 0x7FFF;
-+    else                      return a;
-+}
-+
-+/**
-+ * Clip a signed 64-bit integer value into the -2147483648,2147483647 range.
-+ * @param a value to clip
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int32_t av_clipl_int32_c(int64_t a)
-+{
-+    if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (int32_t)((a>>63) ^ 0x7FFFFFFF);
-+    else                                         return (int32_t)a;
-+}
-+
-+/**
-+ * Clip a signed integer into the -(2^p),(2^p-1) range.
-+ * @param  a value to clip
-+ * @param  p bit position to clip at
-+ * @return clipped value
-+ */
-+static av_always_inline av_const int av_clip_intp2_c(int a, int p)
-+{
-+    if (((unsigned)a + (1 << p)) & ~((2 << p) - 1))
-+        return (a >> 31) ^ ((1 << p) - 1);
-+    else
-+        return a;
-+}
-+
-+/**
-+ * Clip a signed integer to an unsigned power of two range.
-+ * @param  a value to clip
-+ * @param  p bit position to clip at
-+ * @return clipped value
-+ */
-+static av_always_inline av_const unsigned av_clip_uintp2_c(int a, int p)
-+{
-+    if (a & ~((1<<p) - 1)) return -a >> 31 & ((1<<p) - 1);
-+    else                   return  a;
-+}
-+
-+/**
-+ * Clear high bits from an unsigned integer starting with specific bit position
-+ * @param  a value to clip
-+ * @param  p bit position to clip at
-+ * @return clipped value
-+ */
-+static av_always_inline av_const unsigned av_mod_uintp2_c(unsigned a, unsigned p)
-+{
-+    return a & ((1 << p) - 1);
-+}
-+
-+/**
-+ * Add two signed 32-bit values with saturation.
-+ *
-+ * @param  a one value
-+ * @param  b another value
-+ * @return sum with signed saturation
-+ */
-+static av_always_inline int av_sat_add32_c(int a, int b)
-+{
-+    return av_clipl_int32((int64_t)a + b);
-+}
-+
-+/**
-+ * Add a doubled value to another value with saturation at both stages.
-+ *
-+ * @param  a first value
-+ * @param  b value doubled and added to a
-+ * @return sum sat(a + sat(2*b)) with signed saturation
-+ */
-+static av_always_inline int av_sat_dadd32_c(int a, int b)
-+{
-+    return av_sat_add32(a, av_sat_add32(b, b));
-+}
-+
-+/**
-+ * Subtract two signed 32-bit values with saturation.
-+ *
-+ * @param  a one value
-+ * @param  b another value
-+ * @return difference with signed saturation
-+ */
-+static av_always_inline int av_sat_sub32_c(int a, int b)
-+{
-+    return av_clipl_int32((int64_t)a - b);
-+}
-+
-+/**
-+ * Subtract a doubled value from another value with saturation at both stages.
-+ *
-+ * @param  a first value
-+ * @param  b value doubled and subtracted from a
-+ * @return difference sat(a - sat(2*b)) with signed saturation
-+ */
-+static av_always_inline int av_sat_dsub32_c(int a, int b)
-+{
-+    return av_sat_sub32(a, av_sat_add32(b, b));
-+}
-+
-+/**
-+ * Clip a float value into the amin-amax range.
-+ * @param a value to clip
-+ * @param amin minimum value of the clip range
-+ * @param amax maximum value of the clip range
-+ * @return clipped value
-+ */
-+static av_always_inline av_const float av_clipf_c(float a, float amin, float amax)
-+{
-+#if defined(HAVE_AV_CONFIG_H) && defined(ASSERT_LEVEL) && ASSERT_LEVEL >= 2
-+    if (amin > amax) abort();
-+#endif
-+    if      (a < amin) return amin;
-+    else if (a > amax) return amax;
-+    else               return a;
-+}
-+
-+/**
-+ * Clip a double value into the amin-amax range.
-+ * @param a value to clip
-+ * @param amin minimum value of the clip range
-+ * @param amax maximum value of the clip range
-+ * @return clipped value
-+ */
-+static av_always_inline av_const double av_clipd_c(double a, double amin, double amax)
-+{
-+#if defined(HAVE_AV_CONFIG_H) && defined(ASSERT_LEVEL) && ASSERT_LEVEL >= 2
-+    if (amin > amax) abort();
-+#endif
-+    if      (a < amin) return amin;
-+    else if (a > amax) return amax;
-+    else               return a;
-+}
-+
-+/** Compute ceil(log2(x)).
-+ * @param x value used to compute ceil(log2(x))
-+ * @return computed ceiling of log2(x)
-+ */
-+static av_always_inline av_const int av_ceil_log2_c(int x)
-+{
-+    return av_log2((x - 1) << 1);
-+}
-+
-+/**
-+ * Count number of bits set to one in x
-+ * @param x value to count bits of
-+ * @return the number of bits set to one in x
-+ */
-+static av_always_inline av_const int av_popcount_c(uint32_t x)
-+{
-+    x -= (x >> 1) & 0x55555555;
-+    x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
-+    x = (x + (x >> 4)) & 0x0F0F0F0F;
-+    x += x >> 8;
-+    return (x + (x >> 16)) & 0x3F;
-+}
-+
-+/**
-+ * Count number of bits set to one in x
-+ * @param x value to count bits of
-+ * @return the number of bits set to one in x
-+ */
-+static av_always_inline av_const int av_popcount64_c(uint64_t x)
-+{
-+    return av_popcount((uint32_t)x) + av_popcount((uint32_t)(x >> 32));
-+}
-+
-+static av_always_inline av_const int av_parity_c(uint32_t v)
-+{
-+    return av_popcount(v) & 1;
-+}
-+
-+#define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))
-+#define MKBETAG(a,b,c,d) ((d) | ((c) << 8) | ((b) << 16) | ((unsigned)(a) << 24))
-+
-+/**
-+ * Convert a UTF-8 character (up to 4 bytes) to its 32-bit UCS-4 encoded form.
-+ *
-+ * @param val      Output value, must be an lvalue of type uint32_t.
-+ * @param GET_BYTE Expression reading one byte from the input.
-+ *                 Evaluated up to 7 times (4 for the currently
-+ *                 assigned Unicode range).  With a memory buffer
-+ *                 input, this could be *ptr++.
-+ * @param ERROR    Expression to be evaluated on invalid input,
-+ *                 typically a goto statement.
-+ *
-+ * @warning ERROR should not contain a loop control statement which
-+ * could interact with the internal while loop, and should force an
-+ * exit from the macro code (e.g. through a goto or a return) in order
-+ * to prevent undefined results.
-+ */
-+#define GET_UTF8(val, GET_BYTE, ERROR)\
-+    val= (GET_BYTE);\
-+    {\
-+        uint32_t top = (val & 128) >> 1;\
-+        if ((val & 0xc0) == 0x80 || val >= 0xFE)\
-+            ERROR\
-+        while (val & top) {\
-+            int tmp= (GET_BYTE) - 128;\
-+            if(tmp>>6)\
-+                ERROR\
-+            val= (val<<6) + tmp;\
-+            top <<= 5;\
-+        }\
-+        val &= (top << 1) - 1;\
-+    }
-+
-+/**
-+ * Convert a UTF-16 character (2 or 4 bytes) to its 32-bit UCS-4 encoded form.
-+ *
-+ * @param val       Output value, must be an lvalue of type uint32_t.
-+ * @param GET_16BIT Expression returning two bytes of UTF-16 data converted
-+ *                  to native byte order.  Evaluated one or two times.
-+ * @param ERROR     Expression to be evaluated on invalid input,
-+ *                  typically a goto statement.
-+ */
-+#define GET_UTF16(val, GET_16BIT, ERROR)\
-+    val = GET_16BIT;\
-+    {\
-+        unsigned int hi = val - 0xD800;\
-+        if (hi < 0x800) {\
-+            val = GET_16BIT - 0xDC00;\
-+            if (val > 0x3FFU || hi > 0x3FFU)\
-+                ERROR\
-+            val += (hi<<10) + 0x10000;\
-+        }\
-+    }\
-+
-+/**
-+ * @def PUT_UTF8(val, tmp, PUT_BYTE)
-+ * Convert a 32-bit Unicode character to its UTF-8 encoded form (up to 4 bytes long).
-+ * @param val is an input-only argument and should be of type uint32_t. It holds
-+ * a UCS-4 encoded Unicode character that is to be converted to UTF-8. If
-+ * val is given as a function it is executed only once.
-+ * @param tmp is a temporary variable and should be of type uint8_t. It
-+ * represents an intermediate value during conversion that is to be
-+ * output by PUT_BYTE.
-+ * @param PUT_BYTE writes the converted UTF-8 bytes to any proper destination.
-+ * It could be a function or a statement, and uses tmp as the input byte.
-+ * For example, PUT_BYTE could be "*output++ = tmp;" PUT_BYTE will be
-+ * executed up to 4 times for values in the valid UTF-8 range and up to
-+ * 7 times in the general case, depending on the length of the converted
-+ * Unicode character.
-+ */
-+#define PUT_UTF8(val, tmp, PUT_BYTE)\
-+    {\
-+        int bytes, shift;\
-+        uint32_t in = val;\
-+        if (in < 0x80) {\
-+            tmp = in;\
-+            PUT_BYTE\
-+        } else {\
-+            bytes = (av_log2(in) + 4) / 5;\
-+            shift = (bytes - 1) * 6;\
-+            tmp = (256 - (256 >> bytes)) | (in >> shift);\
-+            PUT_BYTE\
-+            while (shift >= 6) {\
-+                shift -= 6;\
-+                tmp = 0x80 | ((in >> shift) & 0x3f);\
-+                PUT_BYTE\
-+            }\
-+        }\
-+    }
-+
-+/**
-+ * @def PUT_UTF16(val, tmp, PUT_16BIT)
-+ * Convert a 32-bit Unicode character to its UTF-16 encoded form (2 or 4 bytes).
-+ * @param val is an input-only argument and should be of type uint32_t. It holds
-+ * a UCS-4 encoded Unicode character that is to be converted to UTF-16. If
-+ * val is given as a function it is executed only once.
-+ * @param tmp is a temporary variable and should be of type uint16_t. It
-+ * represents an intermediate value during conversion that is to be
-+ * output by PUT_16BIT.
-+ * @param PUT_16BIT writes the converted UTF-16 data to any proper destination
-+ * in desired endianness. It could be a function or a statement, and uses tmp
-+ * as the input byte.  For example, PUT_BYTE could be "*output++ = tmp;"
-+ * PUT_BYTE will be executed 1 or 2 times depending on input character.
-+ */
-+#define PUT_UTF16(val, tmp, PUT_16BIT)\
-+    {\
-+        uint32_t in = val;\
-+        if (in < 0x10000) {\
-+            tmp = in;\
-+            PUT_16BIT\
-+        } else {\
-+            tmp = 0xD800 | ((in - 0x10000) >> 10);\
-+            PUT_16BIT\
-+            tmp = 0xDC00 | ((in - 0x10000) & 0x3FF);\
-+            PUT_16BIT\
-+        }\
-+    }\
-+
-+
-+
-+#include "mem.h"
-+
-+#ifdef HAVE_AV_CONFIG_H
-+#    include "internal.h"
-+#endif /* HAVE_AV_CONFIG_H */
-+
-+#endif /* AVUTIL_COMMON_H */
-+
-+/*
-+ * The following definitions are outside the multiple inclusion guard
-+ * to ensure they are immediately available in intmath.h.
-+ */
-+
-+#ifndef av_ceil_log2
-+#   define av_ceil_log2     av_ceil_log2_c
-+#endif
-+#ifndef av_clip
-+#   define av_clip          av_clip_c
-+#endif
-+#ifndef av_clip64
-+#   define av_clip64        av_clip64_c
-+#endif
-+#ifndef av_clip_uint8
-+#   define av_clip_uint8    av_clip_uint8_c
-+#endif
-+#ifndef av_clip_int8
-+#   define av_clip_int8     av_clip_int8_c
-+#endif
-+#ifndef av_clip_uint16
-+#   define av_clip_uint16   av_clip_uint16_c
-+#endif
-+#ifndef av_clip_int16
-+#   define av_clip_int16    av_clip_int16_c
-+#endif
-+#ifndef av_clipl_int32
-+#   define av_clipl_int32   av_clipl_int32_c
-+#endif
-+#ifndef av_clip_intp2
-+#   define av_clip_intp2    av_clip_intp2_c
-+#endif
-+#ifndef av_clip_uintp2
-+#   define av_clip_uintp2   av_clip_uintp2_c
-+#endif
-+#ifndef av_mod_uintp2
-+#   define av_mod_uintp2    av_mod_uintp2_c
-+#endif
-+#ifndef av_sat_add32
-+#   define av_sat_add32     av_sat_add32_c
-+#endif
-+#ifndef av_sat_dadd32
-+#   define av_sat_dadd32    av_sat_dadd32_c
-+#endif
-+#ifndef av_sat_sub32
-+#   define av_sat_sub32     av_sat_sub32_c
-+#endif
-+#ifndef av_sat_dsub32
-+#   define av_sat_dsub32    av_sat_dsub32_c
-+#endif
-+#ifndef av_clipf
-+#   define av_clipf         av_clipf_c
-+#endif
-+#ifndef av_clipd
-+#   define av_clipd         av_clipd_c
-+#endif
-+#ifndef av_popcount
-+#   define av_popcount      av_popcount_c
-+#endif
-+#ifndef av_popcount64
-+#   define av_popcount64    av_popcount64_c
-+#endif
-+#ifndef av_parity
-+#   define av_parity        av_parity_c
-+#endif
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/cpu.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/cpu.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/cpu.h
-@@ -0,0 +1,130 @@
-+/*
-+ * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_CPU_H
-+#define AVUTIL_CPU_H
-+
-+#include <stddef.h>
-+
-+#include "attributes.h"
-+
-+#define AV_CPU_FLAG_FORCE    0x80000000 /* force usage of selected flags (OR) */
-+
-+    /* lower 16 bits - CPU features */
-+#define AV_CPU_FLAG_MMX          0x0001 ///< standard MMX
-+#define AV_CPU_FLAG_MMXEXT       0x0002 ///< SSE integer functions or AMD MMX ext
-+#define AV_CPU_FLAG_MMX2         0x0002 ///< SSE integer functions or AMD MMX ext
-+#define AV_CPU_FLAG_3DNOW        0x0004 ///< AMD 3DNOW
-+#define AV_CPU_FLAG_SSE          0x0008 ///< SSE functions
-+#define AV_CPU_FLAG_SSE2         0x0010 ///< PIV SSE2 functions
-+#define AV_CPU_FLAG_SSE2SLOW 0x40000000 ///< SSE2 supported, but usually not faster
-+                                        ///< than regular MMX/SSE (e.g. Core1)
-+#define AV_CPU_FLAG_3DNOWEXT     0x0020 ///< AMD 3DNowExt
-+#define AV_CPU_FLAG_SSE3         0x0040 ///< Prescott SSE3 functions
-+#define AV_CPU_FLAG_SSE3SLOW 0x20000000 ///< SSE3 supported, but usually not faster
-+                                        ///< than regular MMX/SSE (e.g. Core1)
-+#define AV_CPU_FLAG_SSSE3        0x0080 ///< Conroe SSSE3 functions
-+#define AV_CPU_FLAG_SSSE3SLOW 0x4000000 ///< SSSE3 supported, but usually not faster
-+#define AV_CPU_FLAG_ATOM     0x10000000 ///< Atom processor, some SSSE3 instructions are slower
-+#define AV_CPU_FLAG_SSE4         0x0100 ///< Penryn SSE4.1 functions
-+#define AV_CPU_FLAG_SSE42        0x0200 ///< Nehalem SSE4.2 functions
-+#define AV_CPU_FLAG_AESNI       0x80000 ///< Advanced Encryption Standard functions
-+#define AV_CPU_FLAG_AVX          0x4000 ///< AVX functions: requires OS support even if YMM registers aren't used
-+#define AV_CPU_FLAG_AVXSLOW   0x8000000 ///< AVX supported, but slow when using YMM registers (e.g. Bulldozer)
-+#define AV_CPU_FLAG_XOP          0x0400 ///< Bulldozer XOP functions
-+#define AV_CPU_FLAG_FMA4         0x0800 ///< Bulldozer FMA4 functions
-+#define AV_CPU_FLAG_CMOV         0x1000 ///< supports cmov instruction
-+#define AV_CPU_FLAG_AVX2         0x8000 ///< AVX2 functions: requires OS support even if YMM registers aren't used
-+#define AV_CPU_FLAG_FMA3        0x10000 ///< Haswell FMA3 functions
-+#define AV_CPU_FLAG_BMI1        0x20000 ///< Bit Manipulation Instruction Set 1
-+#define AV_CPU_FLAG_BMI2        0x40000 ///< Bit Manipulation Instruction Set 2
-+#define AV_CPU_FLAG_AVX512     0x100000 ///< AVX-512 functions: requires OS support even if YMM/ZMM registers aren't used
-+
-+#define AV_CPU_FLAG_ALTIVEC      0x0001 ///< standard
-+#define AV_CPU_FLAG_VSX          0x0002 ///< ISA 2.06
-+#define AV_CPU_FLAG_POWER8       0x0004 ///< ISA 2.07
-+
-+#define AV_CPU_FLAG_ARMV5TE      (1 << 0)
-+#define AV_CPU_FLAG_ARMV6        (1 << 1)
-+#define AV_CPU_FLAG_ARMV6T2      (1 << 2)
-+#define AV_CPU_FLAG_VFP          (1 << 3)
-+#define AV_CPU_FLAG_VFPV3        (1 << 4)
-+#define AV_CPU_FLAG_NEON         (1 << 5)
-+#define AV_CPU_FLAG_ARMV8        (1 << 6)
-+#define AV_CPU_FLAG_VFP_VM       (1 << 7) ///< VFPv2 vector mode, deprecated in ARMv7-A and unavailable in various CPUs implementations
-+#define AV_CPU_FLAG_SETEND       (1 <<16)
-+
-+/**
-+ * Return the flags which specify extensions supported by the CPU.
-+ * The returned value is affected by av_force_cpu_flags() if that was used
-+ * before. So av_get_cpu_flags() can easily be used in an application to
-+ * detect the enabled cpu flags.
-+ */
-+int av_get_cpu_flags(void);
-+
-+/**
-+ * Disables cpu detection and forces the specified flags.
-+ * -1 is a special case that disables forcing of specific flags.
-+ */
-+void av_force_cpu_flags(int flags);
-+
-+/**
-+ * Set a mask on flags returned by av_get_cpu_flags().
-+ * This function is mainly useful for testing.
-+ * Please use av_force_cpu_flags() and av_get_cpu_flags() instead which are more flexible
-+ */
-+attribute_deprecated void av_set_cpu_flags_mask(int mask);
-+
-+/**
-+ * Parse CPU flags from a string.
-+ *
-+ * The returned flags contain the specified flags as well as related unspecified flags.
-+ *
-+ * This function exists only for compatibility with libav.
-+ * Please use av_parse_cpu_caps() when possible.
-+ * @return a combination of AV_CPU_* flags, negative on error.
-+ */
-+attribute_deprecated
-+int av_parse_cpu_flags(const char *s);
-+
-+/**
-+ * Parse CPU caps from a string and update the given AV_CPU_* flags based on that.
-+ *
-+ * @return negative on error.
-+ */
-+int av_parse_cpu_caps(unsigned *flags, const char *s);
-+
-+/**
-+ * @return the number of logical CPU cores present.
-+ */
-+int av_cpu_count(void);
-+
-+/**
-+ * Get the maximum data alignment that may be required by FFmpeg.
-+ *
-+ * Note that this is affected by the build configuration and the CPU flags mask,
-+ * so e.g. if the CPU supports AVX, but libavutil has been built with
-+ * --disable-avx or the AV_CPU_FLAG_AVX flag has been disabled through
-+ *  av_set_cpu_flags_mask(), then this function will behave as if AVX is not
-+ *  present.
-+ */
-+size_t av_cpu_max_align(void);
-+
-+#endif /* AVUTIL_CPU_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/dict.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/dict.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/dict.h
-@@ -0,0 +1,200 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * Public dictionary API.
-+ * @deprecated
-+ *  AVDictionary is provided for compatibility with libav. It is both in
-+ *  implementation as well as API inefficient. It does not scale and is
-+ *  extremely slow with large dictionaries.
-+ *  It is recommended that new code uses our tree container from tree.c/h
-+ *  where applicable, which uses AVL trees to achieve O(log n) performance.
-+ */
-+
-+#ifndef AVUTIL_DICT_H
-+#define AVUTIL_DICT_H
-+
-+#include <stdint.h>
-+
-+#include "version.h"
-+
-+/**
-+ * @addtogroup lavu_dict AVDictionary
-+ * @ingroup lavu_data
-+ *
-+ * @brief Simple key:value store
-+ *
-+ * @{
-+ * Dictionaries are used for storing key:value pairs. To create
-+ * an AVDictionary, simply pass an address of a NULL pointer to
-+ * av_dict_set(). NULL can be used as an empty dictionary wherever
-+ * a pointer to an AVDictionary is required.
-+ * Use av_dict_get() to retrieve an entry or iterate over all
-+ * entries and finally av_dict_free() to free the dictionary
-+ * and all its contents.
-+ *
-+ @code
-+   AVDictionary *d = NULL;           // "create" an empty dictionary
-+   AVDictionaryEntry *t = NULL;
-+
-+   av_dict_set(&d, "foo", "bar", 0); // add an entry
-+
-+   char *k = av_strdup("key");       // if your strings are already allocated,
-+   char *v = av_strdup("value");     // you can avoid copying them like this
-+   av_dict_set(&d, k, v, AV_DICT_DONT_STRDUP_KEY | AV_DICT_DONT_STRDUP_VAL);
-+
-+   while (t = av_dict_get(d, "", t, AV_DICT_IGNORE_SUFFIX)) {
-+       <....>                             // iterate over all entries in d
-+   }
-+   av_dict_free(&d);
-+ @endcode
-+ */
-+
-+#define AV_DICT_MATCH_CASE      1   /**< Only get an entry with exact-case key match. Only relevant in av_dict_get(). */
-+#define AV_DICT_IGNORE_SUFFIX   2   /**< Return first entry in a dictionary whose first part corresponds to the search key,
-+                                         ignoring the suffix of the found key string. Only relevant in av_dict_get(). */
-+#define AV_DICT_DONT_STRDUP_KEY 4   /**< Take ownership of a key that's been
-+                                         allocated with av_malloc() or another memory allocation function. */
-+#define AV_DICT_DONT_STRDUP_VAL 8   /**< Take ownership of a value that's been
-+                                         allocated with av_malloc() or another memory allocation function. */
-+#define AV_DICT_DONT_OVERWRITE 16   ///< Don't overwrite existing entries.
-+#define AV_DICT_APPEND         32   /**< If the entry already exists, append to it.  Note that no
-+                                      delimiter is added, the strings are simply concatenated. */
-+#define AV_DICT_MULTIKEY       64   /**< Allow to store several equal keys in the dictionary */
-+
-+typedef struct AVDictionaryEntry {
-+    char *key;
-+    char *value;
-+} AVDictionaryEntry;
-+
-+typedef struct AVDictionary AVDictionary;
-+
-+/**
-+ * Get a dictionary entry with matching key.
-+ *
-+ * The returned entry key or value must not be changed, or it will
-+ * cause undefined behavior.
-+ *
-+ * To iterate through all the dictionary entries, you can set the matching key
-+ * to the null string "" and set the AV_DICT_IGNORE_SUFFIX flag.
-+ *
-+ * @param prev Set to the previous matching element to find the next.
-+ *             If set to NULL the first matching element is returned.
-+ * @param key matching key
-+ * @param flags a collection of AV_DICT_* flags controlling how the entry is retrieved
-+ * @return found entry or NULL in case no matching entry was found in the dictionary
-+ */
-+AVDictionaryEntry *av_dict_get(const AVDictionary *m, const char *key,
-+                               const AVDictionaryEntry *prev, int flags);
-+
-+/**
-+ * Get number of entries in dictionary.
-+ *
-+ * @param m dictionary
-+ * @return  number of entries in dictionary
-+ */
-+int av_dict_count(const AVDictionary *m);
-+
-+/**
-+ * Set the given entry in *pm, overwriting an existing entry.
-+ *
-+ * Note: If AV_DICT_DONT_STRDUP_KEY or AV_DICT_DONT_STRDUP_VAL is set,
-+ * these arguments will be freed on error.
-+ *
-+ * Warning: Adding a new entry to a dictionary invalidates all existing entries
-+ * previously returned with av_dict_get.
-+ *
-+ * @param pm pointer to a pointer to a dictionary struct. If *pm is NULL
-+ * a dictionary struct is allocated and put in *pm.
-+ * @param key entry key to add to *pm (will either be av_strduped or added as a new key depending on flags)
-+ * @param value entry value to add to *pm (will be av_strduped or added as a new key depending on flags).
-+ *        Passing a NULL value will cause an existing entry to be deleted.
-+ * @return >= 0 on success otherwise an error code <0
-+ */
-+int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags);
-+
-+/**
-+ * Convenience wrapper for av_dict_set that converts the value to a string
-+ * and stores it.
-+ *
-+ * Note: If AV_DICT_DONT_STRDUP_KEY is set, key will be freed on error.
-+ */
-+int av_dict_set_int(AVDictionary **pm, const char *key, int64_t value, int flags);
-+
-+/**
-+ * Parse the key/value pairs list and add the parsed entries to a dictionary.
-+ *
-+ * In case of failure, all the successfully set entries are stored in
-+ * *pm. You may need to manually free the created dictionary.
-+ *
-+ * @param key_val_sep  a 0-terminated list of characters used to separate
-+ *                     key from value
-+ * @param pairs_sep    a 0-terminated list of characters used to separate
-+ *                     two pairs from each other
-+ * @param flags        flags to use when adding to dictionary.
-+ *                     AV_DICT_DONT_STRDUP_KEY and AV_DICT_DONT_STRDUP_VAL
-+ *                     are ignored since the key/value tokens will always
-+ *                     be duplicated.
-+ * @return             0 on success, negative AVERROR code on failure
-+ */
-+int av_dict_parse_string(AVDictionary **pm, const char *str,
-+                         const char *key_val_sep, const char *pairs_sep,
-+                         int flags);
-+
-+/**
-+ * Copy entries from one AVDictionary struct into another.
-+ * @param dst pointer to a pointer to a AVDictionary struct. If *dst is NULL,
-+ *            this function will allocate a struct for you and put it in *dst
-+ * @param src pointer to source AVDictionary struct
-+ * @param flags flags to use when setting entries in *dst
-+ * @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
-+ * @return 0 on success, negative AVERROR code on failure. If dst was allocated
-+ *           by this function, callers should free the associated memory.
-+ */
-+int av_dict_copy(AVDictionary **dst, const AVDictionary *src, int flags);
-+
-+/**
-+ * Free all the memory allocated for an AVDictionary struct
-+ * and all keys and values.
-+ */
-+void av_dict_free(AVDictionary **m);
-+
-+/**
-+ * Get dictionary entries as a string.
-+ *
-+ * Create a string containing dictionary's entries.
-+ * Such string may be passed back to av_dict_parse_string().
-+ * @note String is escaped with backslashes ('\').
-+ *
-+ * @param[in]  m             dictionary
-+ * @param[out] buffer        Pointer to buffer that will be allocated with string containg entries.
-+ *                           Buffer must be freed by the caller when is no longer needed.
-+ * @param[in]  key_val_sep   character used to separate key from value
-+ * @param[in]  pairs_sep     character used to separate two pairs from each other
-+ * @return                   >= 0 on success, negative on error
-+ * @warning Separators cannot be neither '\\' nor '\0'. They also cannot be the same.
-+ */
-+int av_dict_get_string(const AVDictionary *m, char **buffer,
-+                       const char key_val_sep, const char pairs_sep);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_DICT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/error.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/error.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/error.h
-@@ -0,0 +1,126 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * error code definitions
-+ */
-+
-+#ifndef AVUTIL_ERROR_H
-+#define AVUTIL_ERROR_H
-+
-+#include <errno.h>
-+#include <stddef.h>
-+
-+/**
-+ * @addtogroup lavu_error
-+ *
-+ * @{
-+ */
-+
-+
-+/* error handling */
-+#if EDOM > 0
-+#define AVERROR(e) (-(e))   ///< Returns a negative error code from a POSIX error code, to return from library functions.
-+#define AVUNERROR(e) (-(e)) ///< Returns a POSIX error code from a library function error return value.
-+#else
-+/* Some platforms have E* and errno already negated. */
-+#define AVERROR(e) (e)
-+#define AVUNERROR(e) (e)
-+#endif
-+
-+#define FFERRTAG(a, b, c, d) (-(int)MKTAG(a, b, c, d))
-+
-+#define AVERROR_BSF_NOT_FOUND      FFERRTAG(0xF8,'B','S','F') ///< Bitstream filter not found
-+#define AVERROR_BUG                FFERRTAG( 'B','U','G','!') ///< Internal bug, also see AVERROR_BUG2
-+#define AVERROR_BUFFER_TOO_SMALL   FFERRTAG( 'B','U','F','S') ///< Buffer too small
-+#define AVERROR_DECODER_NOT_FOUND  FFERRTAG(0xF8,'D','E','C') ///< Decoder not found
-+#define AVERROR_DEMUXER_NOT_FOUND  FFERRTAG(0xF8,'D','E','M') ///< Demuxer not found
-+#define AVERROR_ENCODER_NOT_FOUND  FFERRTAG(0xF8,'E','N','C') ///< Encoder not found
-+#define AVERROR_EOF                FFERRTAG( 'E','O','F',' ') ///< End of file
-+#define AVERROR_EXIT               FFERRTAG( 'E','X','I','T') ///< Immediate exit was requested; the called function should not be restarted
-+#define AVERROR_EXTERNAL           FFERRTAG( 'E','X','T',' ') ///< Generic error in an external library
-+#define AVERROR_FILTER_NOT_FOUND   FFERRTAG(0xF8,'F','I','L') ///< Filter not found
-+#define AVERROR_INVALIDDATA        FFERRTAG( 'I','N','D','A') ///< Invalid data found when processing input
-+#define AVERROR_MUXER_NOT_FOUND    FFERRTAG(0xF8,'M','U','X') ///< Muxer not found
-+#define AVERROR_OPTION_NOT_FOUND   FFERRTAG(0xF8,'O','P','T') ///< Option not found
-+#define AVERROR_PATCHWELCOME       FFERRTAG( 'P','A','W','E') ///< Not yet implemented in FFmpeg, patches welcome
-+#define AVERROR_PROTOCOL_NOT_FOUND FFERRTAG(0xF8,'P','R','O') ///< Protocol not found
-+
-+#define AVERROR_STREAM_NOT_FOUND   FFERRTAG(0xF8,'S','T','R') ///< Stream not found
-+/**
-+ * This is semantically identical to AVERROR_BUG
-+ * it has been introduced in Libav after our AVERROR_BUG and with a modified value.
-+ */
-+#define AVERROR_BUG2               FFERRTAG( 'B','U','G',' ')
-+#define AVERROR_UNKNOWN            FFERRTAG( 'U','N','K','N') ///< Unknown error, typically from an external library
-+#define AVERROR_EXPERIMENTAL       (-0x2bb2afa8) ///< Requested feature is flagged experimental. Set strict_std_compliance if you really want to use it.
-+#define AVERROR_INPUT_CHANGED      (-0x636e6701) ///< Input changed between calls. Reconfiguration is required. (can be OR-ed with AVERROR_OUTPUT_CHANGED)
-+#define AVERROR_OUTPUT_CHANGED     (-0x636e6702) ///< Output changed between calls. Reconfiguration is required. (can be OR-ed with AVERROR_INPUT_CHANGED)
-+/* HTTP & RTSP errors */
-+#define AVERROR_HTTP_BAD_REQUEST   FFERRTAG(0xF8,'4','0','0')
-+#define AVERROR_HTTP_UNAUTHORIZED  FFERRTAG(0xF8,'4','0','1')
-+#define AVERROR_HTTP_FORBIDDEN     FFERRTAG(0xF8,'4','0','3')
-+#define AVERROR_HTTP_NOT_FOUND     FFERRTAG(0xF8,'4','0','4')
-+#define AVERROR_HTTP_OTHER_4XX     FFERRTAG(0xF8,'4','X','X')
-+#define AVERROR_HTTP_SERVER_ERROR  FFERRTAG(0xF8,'5','X','X')
-+
-+#define AV_ERROR_MAX_STRING_SIZE 64
-+
-+/**
-+ * Put a description of the AVERROR code errnum in errbuf.
-+ * In case of failure the global variable errno is set to indicate the
-+ * error. Even in case of failure av_strerror() will print a generic
-+ * error message indicating the errnum provided to errbuf.
-+ *
-+ * @param errnum      error code to describe
-+ * @param errbuf      buffer to which description is written
-+ * @param errbuf_size the size in bytes of errbuf
-+ * @return 0 on success, a negative value if a description for errnum
-+ * cannot be found
-+ */
-+int av_strerror(int errnum, char *errbuf, size_t errbuf_size);
-+
-+/**
-+ * Fill the provided buffer with a string containing an error string
-+ * corresponding to the AVERROR code errnum.
-+ *
-+ * @param errbuf         a buffer
-+ * @param errbuf_size    size in bytes of errbuf
-+ * @param errnum         error code to describe
-+ * @return the buffer in input, filled with the error description
-+ * @see av_strerror()
-+ */
-+static inline char *av_make_error_string(char *errbuf, size_t errbuf_size, int errnum)
-+{
-+    av_strerror(errnum, errbuf, errbuf_size);
-+    return errbuf;
-+}
-+
-+/**
-+ * Convenience macro, the return value should be used only directly in
-+ * function arguments but never stand-alone.
-+ */
-+#define av_err2str(errnum) \
-+    av_make_error_string((char[AV_ERROR_MAX_STRING_SIZE]){0}, AV_ERROR_MAX_STRING_SIZE, errnum)
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_ERROR_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/frame.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/frame.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/frame.h
-@@ -0,0 +1,893 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu_frame
-+ * reference-counted frame API
-+ */
-+
-+#ifndef AVUTIL_FRAME_H
-+#define AVUTIL_FRAME_H
-+
-+#include <stddef.h>
-+#include <stdint.h>
-+
-+#include "avutil.h"
-+#include "buffer.h"
-+#include "dict.h"
-+#include "rational.h"
-+#include "samplefmt.h"
-+#include "pixfmt.h"
-+#include "version.h"
-+
-+
-+/**
-+ * @defgroup lavu_frame AVFrame
-+ * @ingroup lavu_data
-+ *
-+ * @{
-+ * AVFrame is an abstraction for reference-counted raw multimedia data.
-+ */
-+
-+enum AVFrameSideDataType {
-+    /**
-+     * The data is the AVPanScan struct defined in libavcodec.
-+     */
-+    AV_FRAME_DATA_PANSCAN,
-+    /**
-+     * ATSC A53 Part 4 Closed Captions.
-+     * A53 CC bitstream is stored as uint8_t in AVFrameSideData.data.
-+     * The number of bytes of CC data is AVFrameSideData.size.
-+     */
-+    AV_FRAME_DATA_A53_CC,
-+    /**
-+     * Stereoscopic 3d metadata.
-+     * The data is the AVStereo3D struct defined in libavutil/stereo3d.h.
-+     */
-+    AV_FRAME_DATA_STEREO3D,
-+    /**
-+     * The data is the AVMatrixEncoding enum defined in libavutil/channel_layout.h.
-+     */
-+    AV_FRAME_DATA_MATRIXENCODING,
-+    /**
-+     * Metadata relevant to a downmix procedure.
-+     * The data is the AVDownmixInfo struct defined in libavutil/downmix_info.h.
-+     */
-+    AV_FRAME_DATA_DOWNMIX_INFO,
-+    /**
-+     * ReplayGain information in the form of the AVReplayGain struct.
-+     */
-+    AV_FRAME_DATA_REPLAYGAIN,
-+    /**
-+     * This side data contains a 3x3 transformation matrix describing an affine
-+     * transformation that needs to be applied to the frame for correct
-+     * presentation.
-+     *
-+     * See libavutil/display.h for a detailed description of the data.
-+     */
-+    AV_FRAME_DATA_DISPLAYMATRIX,
-+    /**
-+     * Active Format Description data consisting of a single byte as specified
-+     * in ETSI TS 101 154 using AVActiveFormatDescription enum.
-+     */
-+    AV_FRAME_DATA_AFD,
-+    /**
-+     * Motion vectors exported by some codecs (on demand through the export_mvs
-+     * flag set in the libavcodec AVCodecContext flags2 option).
-+     * The data is the AVMotionVector struct defined in
-+     * libavutil/motion_vector.h.
-+     */
-+    AV_FRAME_DATA_MOTION_VECTORS,
-+    /**
-+     * Recommmends skipping the specified number of samples. This is exported
-+     * only if the "skip_manual" AVOption is set in libavcodec.
-+     * This has the same format as AV_PKT_DATA_SKIP_SAMPLES.
-+     * @code
-+     * u32le number of samples to skip from start of this packet
-+     * u32le number of samples to skip from end of this packet
-+     * u8    reason for start skip
-+     * u8    reason for end   skip (0=padding silence, 1=convergence)
-+     * @endcode
-+     */
-+    AV_FRAME_DATA_SKIP_SAMPLES,
-+    /**
-+     * This side data must be associated with an audio frame and corresponds to
-+     * enum AVAudioServiceType defined in avcodec.h.
-+     */
-+    AV_FRAME_DATA_AUDIO_SERVICE_TYPE,
-+    /**
-+     * Mastering display metadata associated with a video frame. The payload is
-+     * an AVMasteringDisplayMetadata type and contains information about the
-+     * mastering display color volume.
-+     */
-+    AV_FRAME_DATA_MASTERING_DISPLAY_METADATA,
-+    /**
-+     * The GOP timecode in 25 bit timecode format. Data format is 64-bit integer.
-+     * This is set on the first frame of a GOP that has a temporal reference of 0.
-+     */
-+    AV_FRAME_DATA_GOP_TIMECODE,
-+
-+    /**
-+     * The data represents the AVSphericalMapping structure defined in
-+     * libavutil/spherical.h.
-+     */
-+    AV_FRAME_DATA_SPHERICAL,
-+
-+    /**
-+     * Content light level (based on CTA-861.3). This payload contains data in
-+     * the form of the AVContentLightMetadata struct.
-+     */
-+    AV_FRAME_DATA_CONTENT_LIGHT_LEVEL,
-+
-+    /**
-+     * The data contains an ICC profile as an opaque octet buffer following the
-+     * format described by ISO 15076-1 with an optional name defined in the
-+     * metadata key entry "name".
-+     */
-+    AV_FRAME_DATA_ICC_PROFILE,
-+
-+#if FF_API_FRAME_QP
-+    /**
-+     * Implementation-specific description of the format of AV_FRAME_QP_TABLE_DATA.
-+     * The contents of this side data are undocumented and internal; use
-+     * av_frame_set_qp_table() and av_frame_get_qp_table() to access this in a
-+     * meaningful way instead.
-+     */
-+    AV_FRAME_DATA_QP_TABLE_PROPERTIES,
-+
-+    /**
-+     * Raw QP table data. Its format is described by
-+     * AV_FRAME_DATA_QP_TABLE_PROPERTIES. Use av_frame_set_qp_table() and
-+     * av_frame_get_qp_table() to access this instead.
-+     */
-+    AV_FRAME_DATA_QP_TABLE_DATA,
-+#endif
-+};
-+
-+enum AVActiveFormatDescription {
-+    AV_AFD_SAME         = 8,
-+    AV_AFD_4_3          = 9,
-+    AV_AFD_16_9         = 10,
-+    AV_AFD_14_9         = 11,
-+    AV_AFD_4_3_SP_14_9  = 13,
-+    AV_AFD_16_9_SP_14_9 = 14,
-+    AV_AFD_SP_4_3       = 15,
-+};
-+
-+
-+/**
-+ * Structure to hold side data for an AVFrame.
-+ *
-+ * sizeof(AVFrameSideData) is not a part of the public ABI, so new fields may be added
-+ * to the end with a minor bump.
-+ */
-+typedef struct AVFrameSideData {
-+    enum AVFrameSideDataType type;
-+    uint8_t *data;
-+    int      size;
-+    AVDictionary *metadata;
-+    AVBufferRef *buf;
-+} AVFrameSideData;
-+
-+/**
-+ * This structure describes decoded (raw) audio or video data.
-+ *
-+ * AVFrame must be allocated using av_frame_alloc(). Note that this only
-+ * allocates the AVFrame itself, the buffers for the data must be managed
-+ * through other means (see below).
-+ * AVFrame must be freed with av_frame_free().
-+ *
-+ * AVFrame is typically allocated once and then reused multiple times to hold
-+ * different data (e.g. a single AVFrame to hold frames received from a
-+ * decoder). In such a case, av_frame_unref() will free any references held by
-+ * the frame and reset it to its original clean state before it
-+ * is reused again.
-+ *
-+ * The data described by an AVFrame is usually reference counted through the
-+ * AVBuffer API. The underlying buffer references are stored in AVFrame.buf /
-+ * AVFrame.extended_buf. An AVFrame is considered to be reference counted if at
-+ * least one reference is set, i.e. if AVFrame.buf[0] != NULL. In such a case,
-+ * every single data plane must be contained in one of the buffers in
-+ * AVFrame.buf or AVFrame.extended_buf.
-+ * There may be a single buffer for all the data, or one separate buffer for
-+ * each plane, or anything in between.
-+ *
-+ * sizeof(AVFrame) is not a part of the public ABI, so new fields may be added
-+ * to the end with a minor bump.
-+ *
-+ * Fields can be accessed through AVOptions, the name string used, matches the
-+ * C structure field name for fields accessible through AVOptions. The AVClass
-+ * for AVFrame can be obtained from avcodec_get_frame_class()
-+ */
-+typedef struct AVFrame {
-+#define AV_NUM_DATA_POINTERS 8
-+    /**
-+     * pointer to the picture/channel planes.
-+     * This might be different from the first allocated byte
-+     *
-+     * Some decoders access areas outside 0,0 - width,height, please
-+     * see avcodec_align_dimensions2(). Some filters and swscale can read
-+     * up to 16 bytes beyond the planes, if these filters are to be used,
-+     * then 16 extra bytes must be allocated.
-+     *
-+     * NOTE: Except for hwaccel formats, pointers not needed by the format
-+     * MUST be set to NULL.
-+     */
-+    uint8_t *data[AV_NUM_DATA_POINTERS];
-+
-+    /**
-+     * For video, size in bytes of each picture line.
-+     * For audio, size in bytes of each plane.
-+     *
-+     * For audio, only linesize[0] may be set. For planar audio, each channel
-+     * plane must be the same size.
-+     *
-+     * For video the linesizes should be multiples of the CPUs alignment
-+     * preference, this is 16 or 32 for modern desktop CPUs.
-+     * Some code requires such alignment other code can be slower without
-+     * correct alignment, for yet other it makes no difference.
-+     *
-+     * @note The linesize may be larger than the size of usable data -- there
-+     * may be extra padding present for performance reasons.
-+     */
-+    int linesize[AV_NUM_DATA_POINTERS];
-+
-+    /**
-+     * pointers to the data planes/channels.
-+     *
-+     * For video, this should simply point to data[].
-+     *
-+     * For planar audio, each channel has a separate data pointer, and
-+     * linesize[0] contains the size of each channel buffer.
-+     * For packed audio, there is just one data pointer, and linesize[0]
-+     * contains the total size of the buffer for all channels.
-+     *
-+     * Note: Both data and extended_data should always be set in a valid frame,
-+     * but for planar audio with more channels that can fit in data,
-+     * extended_data must be used in order to access all channels.
-+     */
-+    uint8_t **extended_data;
-+
-+    /**
-+     * @name Video dimensions
-+     * Video frames only. The coded dimensions (in pixels) of the video frame,
-+     * i.e. the size of the rectangle that contains some well-defined values.
-+     *
-+     * @note The part of the frame intended for display/presentation is further
-+     * restricted by the @ref cropping "Cropping rectangle".
-+     * @{
-+     */
-+    int width, height;
-+    /**
-+     * @}
-+     */
-+
-+    /**
-+     * number of audio samples (per channel) described by this frame
-+     */
-+    int nb_samples;
-+
-+    /**
-+     * format of the frame, -1 if unknown or unset
-+     * Values correspond to enum AVPixelFormat for video frames,
-+     * enum AVSampleFormat for audio)
-+     */
-+    int format;
-+
-+    /**
-+     * 1 -> keyframe, 0-> not
-+     */
-+    int key_frame;
-+
-+    /**
-+     * Picture type of the frame.
-+     */
-+    enum AVPictureType pict_type;
-+
-+    /**
-+     * Sample aspect ratio for the video frame, 0/1 if unknown/unspecified.
-+     */
-+    AVRational sample_aspect_ratio;
-+
-+    /**
-+     * Presentation timestamp in time_base units (time when frame should be shown to user).
-+     */
-+    int64_t pts;
-+
-+#if FF_API_PKT_PTS
-+    /**
-+     * PTS copied from the AVPacket that was decoded to produce this frame.
-+     * @deprecated use the pts field instead
-+     */
-+    attribute_deprecated
-+    int64_t pkt_pts;
-+#endif
-+
-+    /**
-+     * DTS copied from the AVPacket that triggered returning this frame. (if frame threading isn't used)
-+     * This is also the Presentation time of this AVFrame calculated from
-+     * only AVPacket.dts values without pts values.
-+     */
-+    int64_t pkt_dts;
-+
-+    /**
-+     * picture number in bitstream order
-+     */
-+    int coded_picture_number;
-+    /**
-+     * picture number in display order
-+     */
-+    int display_picture_number;
-+
-+    /**
-+     * quality (between 1 (good) and FF_LAMBDA_MAX (bad))
-+     */
-+    int quality;
-+
-+    /**
-+     * for some private data of the user
-+     */
-+    void *opaque;
-+
-+#if FF_API_ERROR_FRAME
-+    /**
-+     * @deprecated unused
-+     */
-+    attribute_deprecated
-+    uint64_t error[AV_NUM_DATA_POINTERS];
-+#endif
-+
-+    /**
-+     * When decoding, this signals how much the picture must be delayed.
-+     * extra_delay = repeat_pict / (2*fps)
-+     */
-+    int repeat_pict;
-+
-+    /**
-+     * The content of the picture is interlaced.
-+     */
-+    int interlaced_frame;
-+
-+    /**
-+     * If the content is interlaced, is top field displayed first.
-+     */
-+    int top_field_first;
-+
-+    /**
-+     * Tell user application that palette has changed from previous frame.
-+     */
-+    int palette_has_changed;
-+
-+    /**
-+     * reordered opaque 64 bits (generally an integer or a double precision float
-+     * PTS but can be anything).
-+     * The user sets AVCodecContext.reordered_opaque to represent the input at
-+     * that time,
-+     * the decoder reorders values as needed and sets AVFrame.reordered_opaque
-+     * to exactly one of the values provided by the user through AVCodecContext.reordered_opaque
-+     * @deprecated in favor of pkt_pts
-+     */
-+    int64_t reordered_opaque;
-+
-+    /**
-+     * Sample rate of the audio data.
-+     */
-+    int sample_rate;
-+
-+    /**
-+     * Channel layout of the audio data.
-+     */
-+    uint64_t channel_layout;
-+
-+    /**
-+     * AVBuffer references backing the data for this frame. If all elements of
-+     * this array are NULL, then this frame is not reference counted. This array
-+     * must be filled contiguously -- if buf[i] is non-NULL then buf[j] must
-+     * also be non-NULL for all j < i.
-+     *
-+     * There may be at most one AVBuffer per data plane, so for video this array
-+     * always contains all the references. For planar audio with more than
-+     * AV_NUM_DATA_POINTERS channels, there may be more buffers than can fit in
-+     * this array. Then the extra AVBufferRef pointers are stored in the
-+     * extended_buf array.
-+     */
-+    AVBufferRef *buf[AV_NUM_DATA_POINTERS];
-+
-+    /**
-+     * For planar audio which requires more than AV_NUM_DATA_POINTERS
-+     * AVBufferRef pointers, this array will hold all the references which
-+     * cannot fit into AVFrame.buf.
-+     *
-+     * Note that this is different from AVFrame.extended_data, which always
-+     * contains all the pointers. This array only contains the extra pointers,
-+     * which cannot fit into AVFrame.buf.
-+     *
-+     * This array is always allocated using av_malloc() by whoever constructs
-+     * the frame. It is freed in av_frame_unref().
-+     */
-+    AVBufferRef **extended_buf;
-+    /**
-+     * Number of elements in extended_buf.
-+     */
-+    int        nb_extended_buf;
-+
-+    AVFrameSideData **side_data;
-+    int            nb_side_data;
-+
-+/**
-+ * @defgroup lavu_frame_flags AV_FRAME_FLAGS
-+ * @ingroup lavu_frame
-+ * Flags describing additional frame properties.
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * The frame data may be corrupted, e.g. due to decoding errors.
-+ */
-+#define AV_FRAME_FLAG_CORRUPT       (1 << 0)
-+/**
-+ * A flag to mark the frames which need to be decoded, but shouldn't be output.
-+ */
-+#define AV_FRAME_FLAG_DISCARD   (1 << 2)
-+/**
-+ * @}
-+ */
-+
-+    /**
-+     * Frame flags, a combination of @ref lavu_frame_flags
-+     */
-+    int flags;
-+
-+    /**
-+     * MPEG vs JPEG YUV range.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorRange color_range;
-+
-+    enum AVColorPrimaries color_primaries;
-+
-+    enum AVColorTransferCharacteristic color_trc;
-+
-+    /**
-+     * YUV colorspace type.
-+     * - encoding: Set by user
-+     * - decoding: Set by libavcodec
-+     */
-+    enum AVColorSpace colorspace;
-+
-+    enum AVChromaLocation chroma_location;
-+
-+    /**
-+     * frame timestamp estimated using various heuristics, in stream time base
-+     * - encoding: unused
-+     * - decoding: set by libavcodec, read by user.
-+     */
-+    int64_t best_effort_timestamp;
-+
-+    /**
-+     * reordered pos from the last AVPacket that has been input into the decoder
-+     * - encoding: unused
-+     * - decoding: Read by user.
-+     */
-+    int64_t pkt_pos;
-+
-+    /**
-+     * duration of the corresponding packet, expressed in
-+     * AVStream->time_base units, 0 if unknown.
-+     * - encoding: unused
-+     * - decoding: Read by user.
-+     */
-+    int64_t pkt_duration;
-+
-+    /**
-+     * metadata.
-+     * - encoding: Set by user.
-+     * - decoding: Set by libavcodec.
-+     */
-+    AVDictionary *metadata;
-+
-+    /**
-+     * decode error flags of the frame, set to a combination of
-+     * FF_DECODE_ERROR_xxx flags if the decoder produced a frame, but there
-+     * were errors during the decoding.
-+     * - encoding: unused
-+     * - decoding: set by libavcodec, read by user.
-+     */
-+    int decode_error_flags;
-+#define FF_DECODE_ERROR_INVALID_BITSTREAM   1
-+#define FF_DECODE_ERROR_MISSING_REFERENCE   2
-+
-+    /**
-+     * number of audio channels, only used for audio.
-+     * - encoding: unused
-+     * - decoding: Read by user.
-+     */
-+    int channels;
-+
-+    /**
-+     * size of the corresponding packet containing the compressed
-+     * frame.
-+     * It is set to a negative value if unknown.
-+     * - encoding: unused
-+     * - decoding: set by libavcodec, read by user.
-+     */
-+    int pkt_size;
-+
-+#if FF_API_FRAME_QP
-+    /**
-+     * QP table
-+     */
-+    attribute_deprecated
-+    int8_t *qscale_table;
-+    /**
-+     * QP store stride
-+     */
-+    attribute_deprecated
-+    int qstride;
-+
-+    attribute_deprecated
-+    int qscale_type;
-+
-+    attribute_deprecated
-+    AVBufferRef *qp_table_buf;
-+#endif
-+    /**
-+     * For hwaccel-format frames, this should be a reference to the
-+     * AVHWFramesContext describing the frame.
-+     */
-+    AVBufferRef *hw_frames_ctx;
-+
-+    /**
-+     * AVBufferRef for free use by the API user. FFmpeg will never check the
-+     * contents of the buffer ref. FFmpeg calls av_buffer_unref() on it when
-+     * the frame is unreferenced. av_frame_copy_props() calls create a new
-+     * reference with av_buffer_ref() for the target frame's opaque_ref field.
-+     *
-+     * This is unrelated to the opaque field, although it serves a similar
-+     * purpose.
-+     */
-+    AVBufferRef *opaque_ref;
-+
-+    /**
-+     * @anchor cropping
-+     * @name Cropping
-+     * Video frames only. The number of pixels to discard from the the
-+     * top/bottom/left/right border of the frame to obtain the sub-rectangle of
-+     * the frame intended for presentation.
-+     * @{
-+     */
-+    size_t crop_top;
-+    size_t crop_bottom;
-+    size_t crop_left;
-+    size_t crop_right;
-+    /**
-+     * @}
-+     */
-+
-+    /**
-+     * AVBufferRef for internal use by a single libav* library.
-+     * Must not be used to transfer data between libraries.
-+     * Has to be NULL when ownership of the frame leaves the respective library.
-+     *
-+     * Code outside the FFmpeg libs should never check or change the contents of the buffer ref.
-+     *
-+     * FFmpeg calls av_buffer_unref() on it when the frame is unreferenced.
-+     * av_frame_copy_props() calls create a new reference with av_buffer_ref()
-+     * for the target frame's private_ref field.
-+     */
-+    AVBufferRef *private_ref;
-+} AVFrame;
-+
-+#if FF_API_FRAME_GET_SET
-+/**
-+ * Accessors for some AVFrame fields. These used to be provided for ABI
-+ * compatibility, and do not need to be used anymore.
-+ */
-+attribute_deprecated
-+int64_t av_frame_get_best_effort_timestamp(const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_best_effort_timestamp(AVFrame *frame, int64_t val);
-+attribute_deprecated
-+int64_t av_frame_get_pkt_duration         (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_pkt_duration         (AVFrame *frame, int64_t val);
-+attribute_deprecated
-+int64_t av_frame_get_pkt_pos              (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_pkt_pos              (AVFrame *frame, int64_t val);
-+attribute_deprecated
-+int64_t av_frame_get_channel_layout       (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_channel_layout       (AVFrame *frame, int64_t val);
-+attribute_deprecated
-+int     av_frame_get_channels             (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_channels             (AVFrame *frame, int     val);
-+attribute_deprecated
-+int     av_frame_get_sample_rate          (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_sample_rate          (AVFrame *frame, int     val);
-+attribute_deprecated
-+AVDictionary *av_frame_get_metadata       (const AVFrame *frame);
-+attribute_deprecated
-+void          av_frame_set_metadata       (AVFrame *frame, AVDictionary *val);
-+attribute_deprecated
-+int     av_frame_get_decode_error_flags   (const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_decode_error_flags   (AVFrame *frame, int     val);
-+attribute_deprecated
-+int     av_frame_get_pkt_size(const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_pkt_size(AVFrame *frame, int val);
-+#if FF_API_FRAME_QP
-+attribute_deprecated
-+int8_t *av_frame_get_qp_table(AVFrame *f, int *stride, int *type);
-+attribute_deprecated
-+int av_frame_set_qp_table(AVFrame *f, AVBufferRef *buf, int stride, int type);
-+#endif
-+attribute_deprecated
-+enum AVColorSpace av_frame_get_colorspace(const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_colorspace(AVFrame *frame, enum AVColorSpace val);
-+attribute_deprecated
-+enum AVColorRange av_frame_get_color_range(const AVFrame *frame);
-+attribute_deprecated
-+void    av_frame_set_color_range(AVFrame *frame, enum AVColorRange val);
-+#endif
-+
-+/**
-+ * Get the name of a colorspace.
-+ * @return a static string identifying the colorspace; can be NULL.
-+ */
-+const char *av_get_colorspace_name(enum AVColorSpace val);
-+
-+/**
-+ * Allocate an AVFrame and set its fields to default values.  The resulting
-+ * struct must be freed using av_frame_free().
-+ *
-+ * @return An AVFrame filled with default values or NULL on failure.
-+ *
-+ * @note this only allocates the AVFrame itself, not the data buffers. Those
-+ * must be allocated through other means, e.g. with av_frame_get_buffer() or
-+ * manually.
-+ */
-+AVFrame *av_frame_alloc(void);
-+
-+/**
-+ * Free the frame and any dynamically allocated objects in it,
-+ * e.g. extended_data. If the frame is reference counted, it will be
-+ * unreferenced first.
-+ *
-+ * @param frame frame to be freed. The pointer will be set to NULL.
-+ */
-+void av_frame_free(AVFrame **frame);
-+
-+/**
-+ * Set up a new reference to the data described by the source frame.
-+ *
-+ * Copy frame properties from src to dst and create a new reference for each
-+ * AVBufferRef from src.
-+ *
-+ * If src is not reference counted, new buffers are allocated and the data is
-+ * copied.
-+ *
-+ * @warning: dst MUST have been either unreferenced with av_frame_unref(dst),
-+ *           or newly allocated with av_frame_alloc() before calling this
-+ *           function, or undefined behavior will occur.
-+ *
-+ * @return 0 on success, a negative AVERROR on error
-+ */
-+int av_frame_ref(AVFrame *dst, const AVFrame *src);
-+
-+/**
-+ * Create a new frame that references the same data as src.
-+ *
-+ * This is a shortcut for av_frame_alloc()+av_frame_ref().
-+ *
-+ * @return newly created AVFrame on success, NULL on error.
-+ */
-+AVFrame *av_frame_clone(const AVFrame *src);
-+
-+/**
-+ * Unreference all the buffers referenced by frame and reset the frame fields.
-+ */
-+void av_frame_unref(AVFrame *frame);
-+
-+/**
-+ * Move everything contained in src to dst and reset src.
-+ *
-+ * @warning: dst is not unreferenced, but directly overwritten without reading
-+ *           or deallocating its contents. Call av_frame_unref(dst) manually
-+ *           before calling this function to ensure that no memory is leaked.
-+ */
-+void av_frame_move_ref(AVFrame *dst, AVFrame *src);
-+
-+/**
-+ * Allocate new buffer(s) for audio or video data.
-+ *
-+ * The following fields must be set on frame before calling this function:
-+ * - format (pixel format for video, sample format for audio)
-+ * - width and height for video
-+ * - nb_samples and channel_layout for audio
-+ *
-+ * This function will fill AVFrame.data and AVFrame.buf arrays and, if
-+ * necessary, allocate and fill AVFrame.extended_data and AVFrame.extended_buf.
-+ * For planar formats, one buffer will be allocated for each plane.
-+ *
-+ * @warning: if frame already has been allocated, calling this function will
-+ *           leak memory. In addition, undefined behavior can occur in certain
-+ *           cases.
-+ *
-+ * @param frame frame in which to store the new buffers.
-+ * @param align Required buffer size alignment. If equal to 0, alignment will be
-+ *              chosen automatically for the current CPU. It is highly
-+ *              recommended to pass 0 here unless you know what you are doing.
-+ *
-+ * @return 0 on success, a negative AVERROR on error.
-+ */
-+int av_frame_get_buffer(AVFrame *frame, int align);
-+
-+/**
-+ * Check if the frame data is writable.
-+ *
-+ * @return A positive value if the frame data is writable (which is true if and
-+ * only if each of the underlying buffers has only one reference, namely the one
-+ * stored in this frame). Return 0 otherwise.
-+ *
-+ * If 1 is returned the answer is valid until av_buffer_ref() is called on any
-+ * of the underlying AVBufferRefs (e.g. through av_frame_ref() or directly).
-+ *
-+ * @see av_frame_make_writable(), av_buffer_is_writable()
-+ */
-+int av_frame_is_writable(AVFrame *frame);
-+
-+/**
-+ * Ensure that the frame data is writable, avoiding data copy if possible.
-+ *
-+ * Do nothing if the frame is writable, allocate new buffers and copy the data
-+ * if it is not.
-+ *
-+ * @return 0 on success, a negative AVERROR on error.
-+ *
-+ * @see av_frame_is_writable(), av_buffer_is_writable(),
-+ * av_buffer_make_writable()
-+ */
-+int av_frame_make_writable(AVFrame *frame);
-+
-+/**
-+ * Copy the frame data from src to dst.
-+ *
-+ * This function does not allocate anything, dst must be already initialized and
-+ * allocated with the same parameters as src.
-+ *
-+ * This function only copies the frame data (i.e. the contents of the data /
-+ * extended data arrays), not any other properties.
-+ *
-+ * @return >= 0 on success, a negative AVERROR on error.
-+ */
-+int av_frame_copy(AVFrame *dst, const AVFrame *src);
-+
-+/**
-+ * Copy only "metadata" fields from src to dst.
-+ *
-+ * Metadata for the purpose of this function are those fields that do not affect
-+ * the data layout in the buffers.  E.g. pts, sample rate (for audio) or sample
-+ * aspect ratio (for video), but not width/height or channel layout.
-+ * Side data is also copied.
-+ */
-+int av_frame_copy_props(AVFrame *dst, const AVFrame *src);
-+
-+/**
-+ * Get the buffer reference a given data plane is stored in.
-+ *
-+ * @param plane index of the data plane of interest in frame->extended_data.
-+ *
-+ * @return the buffer reference that contains the plane or NULL if the input
-+ * frame is not valid.
-+ */
-+AVBufferRef *av_frame_get_plane_buffer(AVFrame *frame, int plane);
-+
-+/**
-+ * Add a new side data to a frame.
-+ *
-+ * @param frame a frame to which the side data should be added
-+ * @param type type of the added side data
-+ * @param size size of the side data
-+ *
-+ * @return newly added side data on success, NULL on error
-+ */
-+AVFrameSideData *av_frame_new_side_data(AVFrame *frame,
-+                                        enum AVFrameSideDataType type,
-+                                        int size);
-+
-+/**
-+ * Add a new side data to a frame from an existing AVBufferRef
-+ *
-+ * @param frame a frame to which the side data should be added
-+ * @param type  the type of the added side data
-+ * @param buf   an AVBufferRef to add as side data. The ownership of
-+ *              the reference is transferred to the frame.
-+ *
-+ * @return newly added side data on success, NULL on error. On failure
-+ *         the frame is unchanged and the AVBufferRef remains owned by
-+ *         the caller.
-+ */
-+AVFrameSideData *av_frame_new_side_data_from_buf(AVFrame *frame,
-+                                                 enum AVFrameSideDataType type,
-+                                                 AVBufferRef *buf);
-+
-+/**
-+ * @return a pointer to the side data of a given type on success, NULL if there
-+ * is no side data with such type in this frame.
-+ */
-+AVFrameSideData *av_frame_get_side_data(const AVFrame *frame,
-+                                        enum AVFrameSideDataType type);
-+
-+/**
-+ * If side data of the supplied type exists in the frame, free it and remove it
-+ * from the frame.
-+ */
-+void av_frame_remove_side_data(AVFrame *frame, enum AVFrameSideDataType type);
-+
-+
-+/**
-+ * Flags for frame cropping.
-+ */
-+enum {
-+    /**
-+     * Apply the maximum possible cropping, even if it requires setting the
-+     * AVFrame.data[] entries to unaligned pointers. Passing unaligned data
-+     * to FFmpeg API is generally not allowed, and causes undefined behavior
-+     * (such as crashes). You can pass unaligned data only to FFmpeg APIs that
-+     * are explicitly documented to accept it. Use this flag only if you
-+     * absolutely know what you are doing.
-+     */
-+    AV_FRAME_CROP_UNALIGNED     = 1 << 0,
-+};
-+
-+/**
-+ * Crop the given video AVFrame according to its crop_left/crop_top/crop_right/
-+ * crop_bottom fields. If cropping is successful, the function will adjust the
-+ * data pointers and the width/height fields, and set the crop fields to 0.
-+ *
-+ * In all cases, the cropping boundaries will be rounded to the inherent
-+ * alignment of the pixel format. In some cases, such as for opaque hwaccel
-+ * formats, the left/top cropping is ignored. The crop fields are set to 0 even
-+ * if the cropping was rounded or ignored.
-+ *
-+ * @param frame the frame which should be cropped
-+ * @param flags Some combination of AV_FRAME_CROP_* flags, or 0.
-+ *
-+ * @return >= 0 on success, a negative AVERROR on error. If the cropping fields
-+ * were invalid, AVERROR(ERANGE) is returned, and nothing is changed.
-+ */
-+int av_frame_apply_cropping(AVFrame *frame, int flags);
-+
-+/**
-+ * @return a string identifying the side data type
-+ */
-+const char *av_frame_side_data_name(enum AVFrameSideDataType type);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_FRAME_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/hwcontext.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/hwcontext.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/hwcontext.h
-@@ -0,0 +1,584 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_HWCONTEXT_H
-+#define AVUTIL_HWCONTEXT_H
-+
-+#include "buffer.h"
-+#include "frame.h"
-+#include "log.h"
-+#include "pixfmt.h"
-+
-+enum AVHWDeviceType {
-+    AV_HWDEVICE_TYPE_NONE,
-+    AV_HWDEVICE_TYPE_VDPAU,
-+    AV_HWDEVICE_TYPE_CUDA,
-+    AV_HWDEVICE_TYPE_VAAPI,
-+    AV_HWDEVICE_TYPE_DXVA2,
-+    AV_HWDEVICE_TYPE_QSV,
-+    AV_HWDEVICE_TYPE_VIDEOTOOLBOX,
-+    AV_HWDEVICE_TYPE_D3D11VA,
-+    AV_HWDEVICE_TYPE_DRM,
-+    AV_HWDEVICE_TYPE_OPENCL,
-+    AV_HWDEVICE_TYPE_MEDIACODEC,
-+};
-+
-+typedef struct AVHWDeviceInternal AVHWDeviceInternal;
-+
-+/**
-+ * This struct aggregates all the (hardware/vendor-specific) "high-level" state,
-+ * i.e. state that is not tied to a concrete processing configuration.
-+ * E.g., in an API that supports hardware-accelerated encoding and decoding,
-+ * this struct will (if possible) wrap the state that is common to both encoding
-+ * and decoding and from which specific instances of encoders or decoders can be
-+ * derived.
-+ *
-+ * This struct is reference-counted with the AVBuffer mechanism. The
-+ * av_hwdevice_ctx_alloc() constructor yields a reference, whose data field
-+ * points to the actual AVHWDeviceContext. Further objects derived from
-+ * AVHWDeviceContext (such as AVHWFramesContext, describing a frame pool with
-+ * specific properties) will hold an internal reference to it. After all the
-+ * references are released, the AVHWDeviceContext itself will be freed,
-+ * optionally invoking a user-specified callback for uninitializing the hardware
-+ * state.
-+ */
-+typedef struct AVHWDeviceContext {
-+    /**
-+     * A class for logging. Set by av_hwdevice_ctx_alloc().
-+     */
-+    const AVClass *av_class;
-+
-+    /**
-+     * Private data used internally by libavutil. Must not be accessed in any
-+     * way by the caller.
-+     */
-+    AVHWDeviceInternal *internal;
-+
-+    /**
-+     * This field identifies the underlying API used for hardware access.
-+     *
-+     * This field is set when this struct is allocated and never changed
-+     * afterwards.
-+     */
-+    enum AVHWDeviceType type;
-+
-+    /**
-+     * The format-specific data, allocated and freed by libavutil along with
-+     * this context.
-+     *
-+     * Should be cast by the user to the format-specific context defined in the
-+     * corresponding header (hwcontext_*.h) and filled as described in the
-+     * documentation before calling av_hwdevice_ctx_init().
-+     *
-+     * After calling av_hwdevice_ctx_init() this struct should not be modified
-+     * by the caller.
-+     */
-+    void *hwctx;
-+
-+    /**
-+     * This field may be set by the caller before calling av_hwdevice_ctx_init().
-+     *
-+     * If non-NULL, this callback will be called when the last reference to
-+     * this context is unreferenced, immediately before it is freed.
-+     *
-+     * @note when other objects (e.g an AVHWFramesContext) are derived from this
-+     *       struct, this callback will be invoked after all such child objects
-+     *       are fully uninitialized and their respective destructors invoked.
-+     */
-+    void (*free)(struct AVHWDeviceContext *ctx);
-+
-+    /**
-+     * Arbitrary user data, to be used e.g. by the free() callback.
-+     */
-+    void *user_opaque;
-+} AVHWDeviceContext;
-+
-+typedef struct AVHWFramesInternal AVHWFramesInternal;
-+
-+/**
-+ * This struct describes a set or pool of "hardware" frames (i.e. those with
-+ * data not located in normal system memory). All the frames in the pool are
-+ * assumed to be allocated in the same way and interchangeable.
-+ *
-+ * This struct is reference-counted with the AVBuffer mechanism and tied to a
-+ * given AVHWDeviceContext instance. The av_hwframe_ctx_alloc() constructor
-+ * yields a reference, whose data field points to the actual AVHWFramesContext
-+ * struct.
-+ */
-+typedef struct AVHWFramesContext {
-+    /**
-+     * A class for logging.
-+     */
-+    const AVClass *av_class;
-+
-+    /**
-+     * Private data used internally by libavutil. Must not be accessed in any
-+     * way by the caller.
-+     */
-+    AVHWFramesInternal *internal;
-+
-+    /**
-+     * A reference to the parent AVHWDeviceContext. This reference is owned and
-+     * managed by the enclosing AVHWFramesContext, but the caller may derive
-+     * additional references from it.
-+     */
-+    AVBufferRef *device_ref;
-+
-+    /**
-+     * The parent AVHWDeviceContext. This is simply a pointer to
-+     * device_ref->data provided for convenience.
-+     *
-+     * Set by libavutil in av_hwframe_ctx_init().
-+     */
-+    AVHWDeviceContext *device_ctx;
-+
-+    /**
-+     * The format-specific data, allocated and freed automatically along with
-+     * this context.
-+     *
-+     * Should be cast by the user to the format-specific context defined in the
-+     * corresponding header (hwframe_*.h) and filled as described in the
-+     * documentation before calling av_hwframe_ctx_init().
-+     *
-+     * After any frames using this context are created, the contents of this
-+     * struct should not be modified by the caller.
-+     */
-+    void *hwctx;
-+
-+    /**
-+     * This field may be set by the caller before calling av_hwframe_ctx_init().
-+     *
-+     * If non-NULL, this callback will be called when the last reference to
-+     * this context is unreferenced, immediately before it is freed.
-+     */
-+    void (*free)(struct AVHWFramesContext *ctx);
-+
-+    /**
-+     * Arbitrary user data, to be used e.g. by the free() callback.
-+     */
-+    void *user_opaque;
-+
-+    /**
-+     * A pool from which the frames are allocated by av_hwframe_get_buffer().
-+     * This field may be set by the caller before calling av_hwframe_ctx_init().
-+     * The buffers returned by calling av_buffer_pool_get() on this pool must
-+     * have the properties described in the documentation in the corresponding hw
-+     * type's header (hwcontext_*.h). The pool will be freed strictly before
-+     * this struct's free() callback is invoked.
-+     *
-+     * This field may be NULL, then libavutil will attempt to allocate a pool
-+     * internally. Note that certain device types enforce pools allocated at
-+     * fixed size (frame count), which cannot be extended dynamically. In such a
-+     * case, initial_pool_size must be set appropriately.
-+     */
-+    AVBufferPool *pool;
-+
-+    /**
-+     * Initial size of the frame pool. If a device type does not support
-+     * dynamically resizing the pool, then this is also the maximum pool size.
-+     *
-+     * May be set by the caller before calling av_hwframe_ctx_init(). Must be
-+     * set if pool is NULL and the device type does not support dynamic pools.
-+     */
-+    int initial_pool_size;
-+
-+    /**
-+     * The pixel format identifying the underlying HW surface type.
-+     *
-+     * Must be a hwaccel format, i.e. the corresponding descriptor must have the
-+     * AV_PIX_FMT_FLAG_HWACCEL flag set.
-+     *
-+     * Must be set by the user before calling av_hwframe_ctx_init().
-+     */
-+    enum AVPixelFormat format;
-+
-+    /**
-+     * The pixel format identifying the actual data layout of the hardware
-+     * frames.
-+     *
-+     * Must be set by the caller before calling av_hwframe_ctx_init().
-+     *
-+     * @note when the underlying API does not provide the exact data layout, but
-+     * only the colorspace/bit depth, this field should be set to the fully
-+     * planar version of that format (e.g. for 8-bit 420 YUV it should be
-+     * AV_PIX_FMT_YUV420P, not AV_PIX_FMT_NV12 or anything else).
-+     */
-+    enum AVPixelFormat sw_format;
-+
-+    /**
-+     * The allocated dimensions of the frames in this pool.
-+     *
-+     * Must be set by the user before calling av_hwframe_ctx_init().
-+     */
-+    int width, height;
-+} AVHWFramesContext;
-+
-+/**
-+ * Look up an AVHWDeviceType by name.
-+ *
-+ * @param name String name of the device type (case-insensitive).
-+ * @return The type from enum AVHWDeviceType, or AV_HWDEVICE_TYPE_NONE if
-+ *         not found.
-+ */
-+enum AVHWDeviceType av_hwdevice_find_type_by_name(const char *name);
-+
-+/** Get the string name of an AVHWDeviceType.
-+ *
-+ * @param type Type from enum AVHWDeviceType.
-+ * @return Pointer to a static string containing the name, or NULL if the type
-+ *         is not valid.
-+ */
-+const char *av_hwdevice_get_type_name(enum AVHWDeviceType type);
-+
-+/**
-+ * Iterate over supported device types.
-+ *
-+ * @param type AV_HWDEVICE_TYPE_NONE initially, then the previous type
-+ *             returned by this function in subsequent iterations.
-+ * @return The next usable device type from enum AVHWDeviceType, or
-+ *         AV_HWDEVICE_TYPE_NONE if there are no more.
-+ */
-+enum AVHWDeviceType av_hwdevice_iterate_types(enum AVHWDeviceType prev);
-+
-+/**
-+ * Allocate an AVHWDeviceContext for a given hardware type.
-+ *
-+ * @param type the type of the hardware device to allocate.
-+ * @return a reference to the newly created AVHWDeviceContext on success or NULL
-+ *         on failure.
-+ */
-+AVBufferRef *av_hwdevice_ctx_alloc(enum AVHWDeviceType type);
-+
-+/**
-+ * Finalize the device context before use. This function must be called after
-+ * the context is filled with all the required information and before it is
-+ * used in any way.
-+ *
-+ * @param ref a reference to the AVHWDeviceContext
-+ * @return 0 on success, a negative AVERROR code on failure
-+ */
-+int av_hwdevice_ctx_init(AVBufferRef *ref);
-+
-+/**
-+ * Open a device of the specified type and create an AVHWDeviceContext for it.
-+ *
-+ * This is a convenience function intended to cover the simple cases. Callers
-+ * who need to fine-tune device creation/management should open the device
-+ * manually and then wrap it in an AVHWDeviceContext using
-+ * av_hwdevice_ctx_alloc()/av_hwdevice_ctx_init().
-+ *
-+ * The returned context is already initialized and ready for use, the caller
-+ * should not call av_hwdevice_ctx_init() on it. The user_opaque/free fields of
-+ * the created AVHWDeviceContext are set by this function and should not be
-+ * touched by the caller.
-+ *
-+ * @param device_ctx On success, a reference to the newly-created device context
-+ *                   will be written here. The reference is owned by the caller
-+ *                   and must be released with av_buffer_unref() when no longer
-+ *                   needed. On failure, NULL will be written to this pointer.
-+ * @param type The type of the device to create.
-+ * @param device A type-specific string identifying the device to open.
-+ * @param opts A dictionary of additional (type-specific) options to use in
-+ *             opening the device. The dictionary remains owned by the caller.
-+ * @param flags currently unused
-+ *
-+ * @return 0 on success, a negative AVERROR code on failure.
-+ */
-+int av_hwdevice_ctx_create(AVBufferRef **device_ctx, enum AVHWDeviceType type,
-+                           const char *device, AVDictionary *opts, int flags);
-+
-+/**
-+ * Create a new device of the specified type from an existing device.
-+ *
-+ * If the source device is a device of the target type or was originally
-+ * derived from such a device (possibly through one or more intermediate
-+ * devices of other types), then this will return a reference to the
-+ * existing device of the same type as is requested.
-+ *
-+ * Otherwise, it will attempt to derive a new device from the given source
-+ * device.  If direct derivation to the new type is not implemented, it will
-+ * attempt the same derivation from each ancestor of the source device in
-+ * turn looking for an implemented derivation method.
-+ *
-+ * @param dst_ctx On success, a reference to the newly-created
-+ *                AVHWDeviceContext.
-+ * @param type    The type of the new device to create.
-+ * @param src_ctx A reference to an existing AVHWDeviceContext which will be
-+ *                used to create the new device.
-+ * @param flags   Currently unused; should be set to zero.
-+ * @return        Zero on success, a negative AVERROR code on failure.
-+ */
-+int av_hwdevice_ctx_create_derived(AVBufferRef **dst_ctx,
-+                                   enum AVHWDeviceType type,
-+                                   AVBufferRef *src_ctx, int flags);
-+
-+
-+/**
-+ * Allocate an AVHWFramesContext tied to a given device context.
-+ *
-+ * @param device_ctx a reference to a AVHWDeviceContext. This function will make
-+ *                   a new reference for internal use, the one passed to the
-+ *                   function remains owned by the caller.
-+ * @return a reference to the newly created AVHWFramesContext on success or NULL
-+ *         on failure.
-+ */
-+AVBufferRef *av_hwframe_ctx_alloc(AVBufferRef *device_ctx);
-+
-+/**
-+ * Finalize the context before use. This function must be called after the
-+ * context is filled with all the required information and before it is attached
-+ * to any frames.
-+ *
-+ * @param ref a reference to the AVHWFramesContext
-+ * @return 0 on success, a negative AVERROR code on failure
-+ */
-+int av_hwframe_ctx_init(AVBufferRef *ref);
-+
-+/**
-+ * Allocate a new frame attached to the given AVHWFramesContext.
-+ *
-+ * @param hwframe_ctx a reference to an AVHWFramesContext
-+ * @param frame an empty (freshly allocated or unreffed) frame to be filled with
-+ *              newly allocated buffers.
-+ * @param flags currently unused, should be set to zero
-+ * @return 0 on success, a negative AVERROR code on failure
-+ */
-+int av_hwframe_get_buffer(AVBufferRef *hwframe_ctx, AVFrame *frame, int flags);
-+
-+/**
-+ * Copy data to or from a hw surface. At least one of dst/src must have an
-+ * AVHWFramesContext attached.
-+ *
-+ * If src has an AVHWFramesContext attached, then the format of dst (if set)
-+ * must use one of the formats returned by av_hwframe_transfer_get_formats(src,
-+ * AV_HWFRAME_TRANSFER_DIRECTION_FROM).
-+ * If dst has an AVHWFramesContext attached, then the format of src must use one
-+ * of the formats returned by av_hwframe_transfer_get_formats(dst,
-+ * AV_HWFRAME_TRANSFER_DIRECTION_TO)
-+ *
-+ * dst may be "clean" (i.e. with data/buf pointers unset), in which case the
-+ * data buffers will be allocated by this function using av_frame_get_buffer().
-+ * If dst->format is set, then this format will be used, otherwise (when
-+ * dst->format is AV_PIX_FMT_NONE) the first acceptable format will be chosen.
-+ *
-+ * The two frames must have matching allocated dimensions (i.e. equal to
-+ * AVHWFramesContext.width/height), since not all device types support
-+ * transferring a sub-rectangle of the whole surface. The display dimensions
-+ * (i.e. AVFrame.width/height) may be smaller than the allocated dimensions, but
-+ * also have to be equal for both frames. When the display dimensions are
-+ * smaller than the allocated dimensions, the content of the padding in the
-+ * destination frame is unspecified.
-+ *
-+ * @param dst the destination frame. dst is not touched on failure.
-+ * @param src the source frame.
-+ * @param flags currently unused, should be set to zero
-+ * @return 0 on success, a negative AVERROR error code on failure.
-+ */
-+int av_hwframe_transfer_data(AVFrame *dst, const AVFrame *src, int flags);
-+
-+enum AVHWFrameTransferDirection {
-+    /**
-+     * Transfer the data from the queried hw frame.
-+     */
-+    AV_HWFRAME_TRANSFER_DIRECTION_FROM,
-+
-+    /**
-+     * Transfer the data to the queried hw frame.
-+     */
-+    AV_HWFRAME_TRANSFER_DIRECTION_TO,
-+};
-+
-+/**
-+ * Get a list of possible source or target formats usable in
-+ * av_hwframe_transfer_data().
-+ *
-+ * @param hwframe_ctx the frame context to obtain the information for
-+ * @param dir the direction of the transfer
-+ * @param formats the pointer to the output format list will be written here.
-+ *                The list is terminated with AV_PIX_FMT_NONE and must be freed
-+ *                by the caller when no longer needed using av_free().
-+ *                If this function returns successfully, the format list will
-+ *                have at least one item (not counting the terminator).
-+ *                On failure, the contents of this pointer are unspecified.
-+ * @param flags currently unused, should be set to zero
-+ * @return 0 on success, a negative AVERROR code on failure.
-+ */
-+int av_hwframe_transfer_get_formats(AVBufferRef *hwframe_ctx,
-+                                    enum AVHWFrameTransferDirection dir,
-+                                    enum AVPixelFormat **formats, int flags);
-+
-+
-+/**
-+ * This struct describes the constraints on hardware frames attached to
-+ * a given device with a hardware-specific configuration.  This is returned
-+ * by av_hwdevice_get_hwframe_constraints() and must be freed by
-+ * av_hwframe_constraints_free() after use.
-+ */
-+typedef struct AVHWFramesConstraints {
-+    /**
-+     * A list of possible values for format in the hw_frames_ctx,
-+     * terminated by AV_PIX_FMT_NONE.  This member will always be filled.
-+     */
-+    enum AVPixelFormat *valid_hw_formats;
-+
-+    /**
-+     * A list of possible values for sw_format in the hw_frames_ctx,
-+     * terminated by AV_PIX_FMT_NONE.  Can be NULL if this information is
-+     * not known.
-+     */
-+    enum AVPixelFormat *valid_sw_formats;
-+
-+    /**
-+     * The minimum size of frames in this hw_frames_ctx.
-+     * (Zero if not known.)
-+     */
-+    int min_width;
-+    int min_height;
-+
-+    /**
-+     * The maximum size of frames in this hw_frames_ctx.
-+     * (INT_MAX if not known / no limit.)
-+     */
-+    int max_width;
-+    int max_height;
-+} AVHWFramesConstraints;
-+
-+/**
-+ * Allocate a HW-specific configuration structure for a given HW device.
-+ * After use, the user must free all members as required by the specific
-+ * hardware structure being used, then free the structure itself with
-+ * av_free().
-+ *
-+ * @param device_ctx a reference to the associated AVHWDeviceContext.
-+ * @return The newly created HW-specific configuration structure on
-+ *         success or NULL on failure.
-+ */
-+void *av_hwdevice_hwconfig_alloc(AVBufferRef *device_ctx);
-+
-+/**
-+ * Get the constraints on HW frames given a device and the HW-specific
-+ * configuration to be used with that device.  If no HW-specific
-+ * configuration is provided, returns the maximum possible capabilities
-+ * of the device.
-+ *
-+ * @param ref a reference to the associated AVHWDeviceContext.
-+ * @param hwconfig a filled HW-specific configuration structure, or NULL
-+ *        to return the maximum possible capabilities of the device.
-+ * @return AVHWFramesConstraints structure describing the constraints
-+ *         on the device, or NULL if not available.
-+ */
-+AVHWFramesConstraints *av_hwdevice_get_hwframe_constraints(AVBufferRef *ref,
-+                                                           const void *hwconfig);
-+
-+/**
-+ * Free an AVHWFrameConstraints structure.
-+ *
-+ * @param constraints The (filled or unfilled) AVHWFrameConstraints structure.
-+ */
-+void av_hwframe_constraints_free(AVHWFramesConstraints **constraints);
-+
-+
-+/**
-+ * Flags to apply to frame mappings.
-+ */
-+enum {
-+    /**
-+     * The mapping must be readable.
-+     */
-+    AV_HWFRAME_MAP_READ      = 1 << 0,
-+    /**
-+     * The mapping must be writeable.
-+     */
-+    AV_HWFRAME_MAP_WRITE     = 1 << 1,
-+    /**
-+     * The mapped frame will be overwritten completely in subsequent
-+     * operations, so the current frame data need not be loaded.  Any values
-+     * which are not overwritten are unspecified.
-+     */
-+    AV_HWFRAME_MAP_OVERWRITE = 1 << 2,
-+    /**
-+     * The mapping must be direct.  That is, there must not be any copying in
-+     * the map or unmap steps.  Note that performance of direct mappings may
-+     * be much lower than normal memory.
-+     */
-+    AV_HWFRAME_MAP_DIRECT    = 1 << 3,
-+};
-+
-+/**
-+ * Map a hardware frame.
-+ *
-+ * This has a number of different possible effects, depending on the format
-+ * and origin of the src and dst frames.  On input, src should be a usable
-+ * frame with valid buffers and dst should be blank (typically as just created
-+ * by av_frame_alloc()).  src should have an associated hwframe context, and
-+ * dst may optionally have a format and associated hwframe context.
-+ *
-+ * If src was created by mapping a frame from the hwframe context of dst,
-+ * then this function undoes the mapping - dst is replaced by a reference to
-+ * the frame that src was originally mapped from.
-+ *
-+ * If both src and dst have an associated hwframe context, then this function
-+ * attempts to map the src frame from its hardware context to that of dst and
-+ * then fill dst with appropriate data to be usable there.  This will only be
-+ * possible if the hwframe contexts and associated devices are compatible -
-+ * given compatible devices, av_hwframe_ctx_create_derived() can be used to
-+ * create a hwframe context for dst in which mapping should be possible.
-+ *
-+ * If src has a hwframe context but dst does not, then the src frame is
-+ * mapped to normal memory and should thereafter be usable as a normal frame.
-+ * If the format is set on dst, then the mapping will attempt to create dst
-+ * with that format and fail if it is not possible.  If format is unset (is
-+ * AV_PIX_FMT_NONE) then dst will be mapped with whatever the most appropriate
-+ * format to use is (probably the sw_format of the src hwframe context).
-+ *
-+ * A return value of AVERROR(ENOSYS) indicates that the mapping is not
-+ * possible with the given arguments and hwframe setup, while other return
-+ * values indicate that it failed somehow.
-+ *
-+ * @param dst Destination frame, to contain the mapping.
-+ * @param src Source frame, to be mapped.
-+ * @param flags Some combination of AV_HWFRAME_MAP_* flags.
-+ * @return Zero on success, negative AVERROR code on failure.
-+ */
-+int av_hwframe_map(AVFrame *dst, const AVFrame *src, int flags);
-+
-+
-+/**
-+ * Create and initialise an AVHWFramesContext as a mapping of another existing
-+ * AVHWFramesContext on a different device.
-+ *
-+ * av_hwframe_ctx_init() should not be called after this.
-+ *
-+ * @param derived_frame_ctx  On success, a reference to the newly created
-+ *                           AVHWFramesContext.
-+ * @param derived_device_ctx A reference to the device to create the new
-+ *                           AVHWFramesContext on.
-+ * @param source_frame_ctx   A reference to an existing AVHWFramesContext
-+ *                           which will be mapped to the derived context.
-+ * @param flags  Some combination of AV_HWFRAME_MAP_* flags, defining the
-+ *               mapping parameters to apply to frames which are allocated
-+ *               in the derived device.
-+ * @return       Zero on success, negative AVERROR code on failure.
-+ */
-+int av_hwframe_ctx_create_derived(AVBufferRef **derived_frame_ctx,
-+                                  enum AVPixelFormat format,
-+                                  AVBufferRef *derived_device_ctx,
-+                                  AVBufferRef *source_frame_ctx,
-+                                  int flags);
-+
-+#endif /* AVUTIL_HWCONTEXT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/intfloat.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/intfloat.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/intfloat.h
-@@ -0,0 +1,77 @@
-+/*
-+ * Copyright (c) 2011 Mans Rullgard
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_INTFLOAT_H
-+#define AVUTIL_INTFLOAT_H
-+
-+#include <stdint.h>
-+#include "attributes.h"
-+
-+union av_intfloat32 {
-+    uint32_t i;
-+    float    f;
-+};
-+
-+union av_intfloat64 {
-+    uint64_t i;
-+    double   f;
-+};
-+
-+/**
-+ * Reinterpret a 32-bit integer as a float.
-+ */
-+static av_always_inline float av_int2float(uint32_t i)
-+{
-+    union av_intfloat32 v;
-+    v.i = i;
-+    return v.f;
-+}
-+
-+/**
-+ * Reinterpret a float as a 32-bit integer.
-+ */
-+static av_always_inline uint32_t av_float2int(float f)
-+{
-+    union av_intfloat32 v;
-+    v.f = f;
-+    return v.i;
-+}
-+
-+/**
-+ * Reinterpret a 64-bit integer as a double.
-+ */
-+static av_always_inline double av_int2double(uint64_t i)
-+{
-+    union av_intfloat64 v;
-+    v.i = i;
-+    return v.f;
-+}
-+
-+/**
-+ * Reinterpret a double as a 64-bit integer.
-+ */
-+static av_always_inline uint64_t av_double2int(double f)
-+{
-+    union av_intfloat64 v;
-+    v.f = f;
-+    return v.i;
-+}
-+
-+#endif /* AVUTIL_INTFLOAT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/log.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/log.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/log.h
-@@ -0,0 +1,362 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_LOG_H
-+#define AVUTIL_LOG_H
-+
-+#include <stdarg.h>
-+#include "avutil.h"
-+#include "attributes.h"
-+#include "version.h"
-+
-+typedef enum {
-+    AV_CLASS_CATEGORY_NA = 0,
-+    AV_CLASS_CATEGORY_INPUT,
-+    AV_CLASS_CATEGORY_OUTPUT,
-+    AV_CLASS_CATEGORY_MUXER,
-+    AV_CLASS_CATEGORY_DEMUXER,
-+    AV_CLASS_CATEGORY_ENCODER,
-+    AV_CLASS_CATEGORY_DECODER,
-+    AV_CLASS_CATEGORY_FILTER,
-+    AV_CLASS_CATEGORY_BITSTREAM_FILTER,
-+    AV_CLASS_CATEGORY_SWSCALER,
-+    AV_CLASS_CATEGORY_SWRESAMPLER,
-+    AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT = 40,
-+    AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT,
-+    AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT,
-+    AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT,
-+    AV_CLASS_CATEGORY_DEVICE_OUTPUT,
-+    AV_CLASS_CATEGORY_DEVICE_INPUT,
-+    AV_CLASS_CATEGORY_NB  ///< not part of ABI/API
-+}AVClassCategory;
-+
-+#define AV_IS_INPUT_DEVICE(category) \
-+    (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_INPUT) || \
-+     ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_INPUT) || \
-+     ((category) == AV_CLASS_CATEGORY_DEVICE_INPUT))
-+
-+#define AV_IS_OUTPUT_DEVICE(category) \
-+    (((category) == AV_CLASS_CATEGORY_DEVICE_VIDEO_OUTPUT) || \
-+     ((category) == AV_CLASS_CATEGORY_DEVICE_AUDIO_OUTPUT) || \
-+     ((category) == AV_CLASS_CATEGORY_DEVICE_OUTPUT))
-+
-+struct AVOptionRanges;
-+
-+/**
-+ * Describe the class of an AVClass context structure. That is an
-+ * arbitrary struct of which the first field is a pointer to an
-+ * AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
-+ */
-+typedef struct AVClass {
-+    /**
-+     * The name of the class; usually it is the same name as the
-+     * context structure type to which the AVClass is associated.
-+     */
-+    const char* class_name;
-+
-+    /**
-+     * A pointer to a function which returns the name of a context
-+     * instance ctx associated with the class.
-+     */
-+    const char* (*item_name)(void* ctx);
-+
-+    /**
-+     * a pointer to the first option specified in the class if any or NULL
-+     *
-+     * @see av_set_default_options()
-+     */
-+    const struct AVOption *option;
-+
-+    /**
-+     * LIBAVUTIL_VERSION with which this structure was created.
-+     * This is used to allow fields to be added without requiring major
-+     * version bumps everywhere.
-+     */
-+
-+    int version;
-+
-+    /**
-+     * Offset in the structure where log_level_offset is stored.
-+     * 0 means there is no such variable
-+     */
-+    int log_level_offset_offset;
-+
-+    /**
-+     * Offset in the structure where a pointer to the parent context for
-+     * logging is stored. For example a decoder could pass its AVCodecContext
-+     * to eval as such a parent context, which an av_log() implementation
-+     * could then leverage to display the parent context.
-+     * The offset can be NULL.
-+     */
-+    int parent_log_context_offset;
-+
-+    /**
-+     * Return next AVOptions-enabled child or NULL
-+     */
-+    void* (*child_next)(void *obj, void *prev);
-+
-+    /**
-+     * Return an AVClass corresponding to the next potential
-+     * AVOptions-enabled child.
-+     *
-+     * The difference between child_next and this is that
-+     * child_next iterates over _already existing_ objects, while
-+     * child_class_next iterates over _all possible_ children.
-+     */
-+    const struct AVClass* (*child_class_next)(const struct AVClass *prev);
-+
-+    /**
-+     * Category used for visualization (like color)
-+     * This is only set if the category is equal for all objects using this class.
-+     * available since version (51 << 16 | 56 << 8 | 100)
-+     */
-+    AVClassCategory category;
-+
-+    /**
-+     * Callback to return the category.
-+     * available since version (51 << 16 | 59 << 8 | 100)
-+     */
-+    AVClassCategory (*get_category)(void* ctx);
-+
-+    /**
-+     * Callback to return the supported/allowed ranges.
-+     * available since version (52.12)
-+     */
-+    int (*query_ranges)(struct AVOptionRanges **, void *obj, const char *key, int flags);
-+} AVClass;
-+
-+/**
-+ * @addtogroup lavu_log
-+ *
-+ * @{
-+ *
-+ * @defgroup lavu_log_constants Logging Constants
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Print no output.
-+ */
-+#define AV_LOG_QUIET    -8
-+
-+/**
-+ * Something went really wrong and we will crash now.
-+ */
-+#define AV_LOG_PANIC     0
-+
-+/**
-+ * Something went wrong and recovery is not possible.
-+ * For example, no header was found for a format which depends
-+ * on headers or an illegal combination of parameters is used.
-+ */
-+#define AV_LOG_FATAL     8
-+
-+/**
-+ * Something went wrong and cannot losslessly be recovered.
-+ * However, not all future data is affected.
-+ */
-+#define AV_LOG_ERROR    16
-+
-+/**
-+ * Something somehow does not look correct. This may or may not
-+ * lead to problems. An example would be the use of '-vstrict -2'.
-+ */
-+#define AV_LOG_WARNING  24
-+
-+/**
-+ * Standard information.
-+ */
-+#define AV_LOG_INFO     32
-+
-+/**
-+ * Detailed information.
-+ */
-+#define AV_LOG_VERBOSE  40
-+
-+/**
-+ * Stuff which is only useful for libav* developers.
-+ */
-+#define AV_LOG_DEBUG    48
-+
-+/**
-+ * Extremely verbose debugging, useful for libav* development.
-+ */
-+#define AV_LOG_TRACE    56
-+
-+#define AV_LOG_MAX_OFFSET (AV_LOG_TRACE - AV_LOG_QUIET)
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * Sets additional colors for extended debugging sessions.
-+ * @code
-+   av_log(ctx, AV_LOG_DEBUG|AV_LOG_C(134), "Message in purple\n");
-+   @endcode
-+ * Requires 256color terminal support. Uses outside debugging is not
-+ * recommended.
-+ */
-+#define AV_LOG_C(x) ((x) << 8)
-+
-+/**
-+ * Send the specified message to the log if the level is less than or equal
-+ * to the current av_log_level. By default, all logging messages are sent to
-+ * stderr. This behavior can be altered by setting a different logging callback
-+ * function.
-+ * @see av_log_set_callback
-+ *
-+ * @param avcl A pointer to an arbitrary struct of which the first field is a
-+ *        pointer to an AVClass struct or NULL if general log.
-+ * @param level The importance level of the message expressed using a @ref
-+ *        lavu_log_constants "Logging Constant".
-+ * @param fmt The format string (printf-compatible) that specifies how
-+ *        subsequent arguments are converted to output.
-+ */
-+void av_log(void *avcl, int level, const char *fmt, ...) av_printf_format(3, 4);
-+
-+
-+/**
-+ * Send the specified message to the log if the level is less than or equal
-+ * to the current av_log_level. By default, all logging messages are sent to
-+ * stderr. This behavior can be altered by setting a different logging callback
-+ * function.
-+ * @see av_log_set_callback
-+ *
-+ * @param avcl A pointer to an arbitrary struct of which the first field is a
-+ *        pointer to an AVClass struct.
-+ * @param level The importance level of the message expressed using a @ref
-+ *        lavu_log_constants "Logging Constant".
-+ * @param fmt The format string (printf-compatible) that specifies how
-+ *        subsequent arguments are converted to output.
-+ * @param vl The arguments referenced by the format string.
-+ */
-+void av_vlog(void *avcl, int level, const char *fmt, va_list vl);
-+
-+/**
-+ * Get the current log level
-+ *
-+ * @see lavu_log_constants
-+ *
-+ * @return Current log level
-+ */
-+int av_log_get_level(void);
-+
-+/**
-+ * Set the log level
-+ *
-+ * @see lavu_log_constants
-+ *
-+ * @param level Logging level
-+ */
-+void av_log_set_level(int level);
-+
-+/**
-+ * Set the logging callback
-+ *
-+ * @note The callback must be thread safe, even if the application does not use
-+ *       threads itself as some codecs are multithreaded.
-+ *
-+ * @see av_log_default_callback
-+ *
-+ * @param callback A logging function with a compatible signature.
-+ */
-+void av_log_set_callback(void (*callback)(void*, int, const char*, va_list));
-+
-+/**
-+ * Default logging callback
-+ *
-+ * It prints the message to stderr, optionally colorizing it.
-+ *
-+ * @param avcl A pointer to an arbitrary struct of which the first field is a
-+ *        pointer to an AVClass struct.
-+ * @param level The importance level of the message expressed using a @ref
-+ *        lavu_log_constants "Logging Constant".
-+ * @param fmt The format string (printf-compatible) that specifies how
-+ *        subsequent arguments are converted to output.
-+ * @param vl The arguments referenced by the format string.
-+ */
-+void av_log_default_callback(void *avcl, int level, const char *fmt,
-+                             va_list vl);
-+
-+/**
-+ * Return the context name
-+ *
-+ * @param  ctx The AVClass context
-+ *
-+ * @return The AVClass class_name
-+ */
-+const char* av_default_item_name(void* ctx);
-+AVClassCategory av_default_get_category(void *ptr);
-+
-+/**
-+ * Format a line of log the same way as the default callback.
-+ * @param line          buffer to receive the formatted line
-+ * @param line_size     size of the buffer
-+ * @param print_prefix  used to store whether the prefix must be printed;
-+ *                      must point to a persistent integer initially set to 1
-+ */
-+void av_log_format_line(void *ptr, int level, const char *fmt, va_list vl,
-+                        char *line, int line_size, int *print_prefix);
-+
-+/**
-+ * Format a line of log the same way as the default callback.
-+ * @param line          buffer to receive the formatted line;
-+ *                      may be NULL if line_size is 0
-+ * @param line_size     size of the buffer; at most line_size-1 characters will
-+ *                      be written to the buffer, plus one null terminator
-+ * @param print_prefix  used to store whether the prefix must be printed;
-+ *                      must point to a persistent integer initially set to 1
-+ * @return Returns a negative value if an error occurred, otherwise returns
-+ *         the number of characters that would have been written for a
-+ *         sufficiently large buffer, not including the terminating null
-+ *         character. If the return value is not less than line_size, it means
-+ *         that the log message was truncated to fit the buffer.
-+ */
-+int av_log_format_line2(void *ptr, int level, const char *fmt, va_list vl,
-+                        char *line, int line_size, int *print_prefix);
-+
-+/**
-+ * Skip repeated messages, this requires the user app to use av_log() instead of
-+ * (f)printf as the 2 would otherwise interfere and lead to
-+ * "Last message repeated x times" messages below (f)printf messages with some
-+ * bad luck.
-+ * Also to receive the last, "last repeated" line if any, the user app must
-+ * call av_log(NULL, AV_LOG_QUIET, "%s", ""); at the end
-+ */
-+#define AV_LOG_SKIP_REPEATED 1
-+
-+/**
-+ * Include the log severity in messages originating from codecs.
-+ *
-+ * Results in messages such as:
-+ * [rawvideo @ 0xDEADBEEF] [error] encode did not produce valid pts
-+ */
-+#define AV_LOG_PRINT_LEVEL 2
-+
-+void av_log_set_flags(int arg);
-+int av_log_get_flags(void);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_LOG_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/macros.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/macros.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/macros.h
-@@ -0,0 +1,50 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu
-+ * Utility Preprocessor macros
-+ */
-+
-+#ifndef AVUTIL_MACROS_H
-+#define AVUTIL_MACROS_H
-+
-+/**
-+ * @addtogroup preproc_misc Preprocessor String Macros
-+ *
-+ * String manipulation macros
-+ *
-+ * @{
-+ */
-+
-+#define AV_STRINGIFY(s)         AV_TOSTRING(s)
-+#define AV_TOSTRING(s) #s
-+
-+#define AV_GLUE(a, b) a ## b
-+#define AV_JOIN(a, b) AV_GLUE(a, b)
-+
-+/**
-+ * @}
-+ */
-+
-+#define AV_PRAGMA(s) _Pragma(#s)
-+
-+#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
-+
-+#endif /* AVUTIL_MACROS_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mathematics.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mathematics.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mathematics.h
-@@ -0,0 +1,242 @@
-+/*
-+ * copyright (c) 2005-2012 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @addtogroup lavu_math
-+ * Mathematical utilities for working with timestamp and time base.
-+ */
-+
-+#ifndef AVUTIL_MATHEMATICS_H
-+#define AVUTIL_MATHEMATICS_H
-+
-+#include <stdint.h>
-+#include <math.h>
-+#include "attributes.h"
-+#include "rational.h"
-+#include "intfloat.h"
-+
-+#ifndef M_E
-+#define M_E            2.7182818284590452354   /* e */
-+#endif
-+#ifndef M_LN2
-+#define M_LN2          0.69314718055994530942  /* log_e 2 */
-+#endif
-+#ifndef M_LN10
-+#define M_LN10         2.30258509299404568402  /* log_e 10 */
-+#endif
-+#ifndef M_LOG2_10
-+#define M_LOG2_10      3.32192809488736234787  /* log_2 10 */
-+#endif
-+#ifndef M_PHI
-+#define M_PHI          1.61803398874989484820   /* phi / golden ratio */
-+#endif
-+#ifndef M_PI
-+#define M_PI           3.14159265358979323846  /* pi */
-+#endif
-+#ifndef M_PI_2
-+#define M_PI_2         1.57079632679489661923  /* pi/2 */
-+#endif
-+#ifndef M_SQRT1_2
-+#define M_SQRT1_2      0.70710678118654752440  /* 1/sqrt(2) */
-+#endif
-+#ifndef M_SQRT2
-+#define M_SQRT2        1.41421356237309504880  /* sqrt(2) */
-+#endif
-+#ifndef NAN
-+#define NAN            av_int2float(0x7fc00000)
-+#endif
-+#ifndef INFINITY
-+#define INFINITY       av_int2float(0x7f800000)
-+#endif
-+
-+/**
-+ * @addtogroup lavu_math
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Rounding methods.
-+ */
-+enum AVRounding {
-+    AV_ROUND_ZERO     = 0, ///< Round toward zero.
-+    AV_ROUND_INF      = 1, ///< Round away from zero.
-+    AV_ROUND_DOWN     = 2, ///< Round toward -infinity.
-+    AV_ROUND_UP       = 3, ///< Round toward +infinity.
-+    AV_ROUND_NEAR_INF = 5, ///< Round to nearest and halfway cases away from zero.
-+    /**
-+     * Flag telling rescaling functions to pass `INT64_MIN`/`MAX` through
-+     * unchanged, avoiding special cases for #AV_NOPTS_VALUE.
-+     *
-+     * Unlike other values of the enumeration AVRounding, this value is a
-+     * bitmask that must be used in conjunction with another value of the
-+     * enumeration through a bitwise OR, in order to set behavior for normal
-+     * cases.
-+     *
-+     * @code{.c}
-+     * av_rescale_rnd(3, 1, 2, AV_ROUND_UP | AV_ROUND_PASS_MINMAX);
-+     * // Rescaling 3:
-+     * //     Calculating 3 * 1 / 2
-+     * //     3 / 2 is rounded up to 2
-+     * //     => 2
-+     *
-+     * av_rescale_rnd(AV_NOPTS_VALUE, 1, 2, AV_ROUND_UP | AV_ROUND_PASS_MINMAX);
-+     * // Rescaling AV_NOPTS_VALUE:
-+     * //     AV_NOPTS_VALUE == INT64_MIN
-+     * //     AV_NOPTS_VALUE is passed through
-+     * //     => AV_NOPTS_VALUE
-+     * @endcode
-+     */
-+    AV_ROUND_PASS_MINMAX = 8192,
-+};
-+
-+/**
-+ * Compute the greatest common divisor of two integer operands.
-+ *
-+ * @param a,b Operands
-+ * @return GCD of a and b up to sign; if a >= 0 and b >= 0, return value is >= 0;
-+ * if a == 0 and b == 0, returns 0.
-+ */
-+int64_t av_const av_gcd(int64_t a, int64_t b);
-+
-+/**
-+ * Rescale a 64-bit integer with rounding to nearest.
-+ *
-+ * The operation is mathematically equivalent to `a * b / c`, but writing that
-+ * directly can overflow.
-+ *
-+ * This function is equivalent to av_rescale_rnd() with #AV_ROUND_NEAR_INF.
-+ *
-+ * @see av_rescale_rnd(), av_rescale_q(), av_rescale_q_rnd()
-+ */
-+int64_t av_rescale(int64_t a, int64_t b, int64_t c) av_const;
-+
-+/**
-+ * Rescale a 64-bit integer with specified rounding.
-+ *
-+ * The operation is mathematically equivalent to `a * b / c`, but writing that
-+ * directly can overflow, and does not support different rounding methods.
-+ *
-+ * @see av_rescale(), av_rescale_q(), av_rescale_q_rnd()
-+ */
-+int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding rnd) av_const;
-+
-+/**
-+ * Rescale a 64-bit integer by 2 rational numbers.
-+ *
-+ * The operation is mathematically equivalent to `a * bq / cq`.
-+ *
-+ * This function is equivalent to av_rescale_q_rnd() with #AV_ROUND_NEAR_INF.
-+ *
-+ * @see av_rescale(), av_rescale_rnd(), av_rescale_q_rnd()
-+ */
-+int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const;
-+
-+/**
-+ * Rescale a 64-bit integer by 2 rational numbers with specified rounding.
-+ *
-+ * The operation is mathematically equivalent to `a * bq / cq`.
-+ *
-+ * @see av_rescale(), av_rescale_rnd(), av_rescale_q()
-+ */
-+int64_t av_rescale_q_rnd(int64_t a, AVRational bq, AVRational cq,
-+                         enum AVRounding rnd) av_const;
-+
-+/**
-+ * Compare two timestamps each in its own time base.
-+ *
-+ * @return One of the following values:
-+ *         - -1 if `ts_a` is before `ts_b`
-+ *         - 1 if `ts_a` is after `ts_b`
-+ *         - 0 if they represent the same position
-+ *
-+ * @warning
-+ * The result of the function is undefined if one of the timestamps is outside
-+ * the `int64_t` range when represented in the other's timebase.
-+ */
-+int av_compare_ts(int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b);
-+
-+/**
-+ * Compare the remainders of two integer operands divided by a common divisor.
-+ *
-+ * In other words, compare the least significant `log2(mod)` bits of integers
-+ * `a` and `b`.
-+ *
-+ * @code{.c}
-+ * av_compare_mod(0x11, 0x02, 0x10) < 0 // since 0x11 % 0x10  (0x1) < 0x02 % 0x10  (0x2)
-+ * av_compare_mod(0x11, 0x02, 0x20) > 0 // since 0x11 % 0x20 (0x11) > 0x02 % 0x20 (0x02)
-+ * @endcode
-+ *
-+ * @param a,b Operands
-+ * @param mod Divisor; must be a power of 2
-+ * @return
-+ *         - a negative value if `a % mod < b % mod`
-+ *         - a positive value if `a % mod > b % mod`
-+ *         - zero             if `a % mod == b % mod`
-+ */
-+int64_t av_compare_mod(uint64_t a, uint64_t b, uint64_t mod);
-+
-+/**
-+ * Rescale a timestamp while preserving known durations.
-+ *
-+ * This function is designed to be called per audio packet to scale the input
-+ * timestamp to a different time base. Compared to a simple av_rescale_q()
-+ * call, this function is robust against possible inconsistent frame durations.
-+ *
-+ * The `last` parameter is a state variable that must be preserved for all
-+ * subsequent calls for the same stream. For the first call, `*last` should be
-+ * initialized to #AV_NOPTS_VALUE.
-+ *
-+ * @param[in]     in_tb    Input time base
-+ * @param[in]     in_ts    Input timestamp
-+ * @param[in]     fs_tb    Duration time base; typically this is finer-grained
-+ *                         (greater) than `in_tb` and `out_tb`
-+ * @param[in]     duration Duration till the next call to this function (i.e.
-+ *                         duration of the current packet/frame)
-+ * @param[in,out] last     Pointer to a timestamp expressed in terms of
-+ *                         `fs_tb`, acting as a state variable
-+ * @param[in]     out_tb   Output timebase
-+ * @return        Timestamp expressed in terms of `out_tb`
-+ *
-+ * @note In the context of this function, "duration" is in term of samples, not
-+ *       seconds.
-+ */
-+int64_t av_rescale_delta(AVRational in_tb, int64_t in_ts,  AVRational fs_tb, int duration, int64_t *last, AVRational out_tb);
-+
-+/**
-+ * Add a value to a timestamp.
-+ *
-+ * This function guarantees that when the same value is repeatly added that
-+ * no accumulation of rounding errors occurs.
-+ *
-+ * @param[in] ts     Input timestamp
-+ * @param[in] ts_tb  Input timestamp time base
-+ * @param[in] inc    Value to be added
-+ * @param[in] inc_tb Time base of `inc`
-+ */
-+int64_t av_add_stable(AVRational ts_tb, int64_t ts, AVRational inc_tb, int64_t inc);
-+
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_MATHEMATICS_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mem.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mem.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/mem.h
-@@ -0,0 +1,700 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu_mem
-+ * Memory handling functions
-+ */
-+
-+#ifndef AVUTIL_MEM_H
-+#define AVUTIL_MEM_H
-+
-+#include <limits.h>
-+#include <stdint.h>
-+
-+#include "attributes.h"
-+#include "error.h"
-+#include "avutil.h"
-+
-+/**
-+ * @addtogroup lavu_mem
-+ * Utilities for manipulating memory.
-+ *
-+ * FFmpeg has several applications of memory that are not required of a typical
-+ * program. For example, the computing-heavy components like video decoding and
-+ * encoding can be sped up significantly through the use of aligned memory.
-+ *
-+ * However, for each of FFmpeg's applications of memory, there might not be a
-+ * recognized or standardized API for that specific use. Memory alignment, for
-+ * instance, varies wildly depending on operating systems, architectures, and
-+ * compilers. Hence, this component of @ref libavutil is created to make
-+ * dealing with memory consistently possible on all platforms.
-+ *
-+ * @{
-+ *
-+ * @defgroup lavu_mem_macros Alignment Macros
-+ * Helper macros for declaring aligned variables.
-+ * @{
-+ */
-+
-+/**
-+ * @def DECLARE_ALIGNED(n,t,v)
-+ * Declare a variable that is aligned in memory.
-+ *
-+ * @code{.c}
-+ * DECLARE_ALIGNED(16, uint16_t, aligned_int) = 42;
-+ * DECLARE_ALIGNED(32, uint8_t, aligned_array)[128];
-+ *
-+ * // The default-alignment equivalent would be
-+ * uint16_t aligned_int = 42;
-+ * uint8_t aligned_array[128];
-+ * @endcode
-+ *
-+ * @param n Minimum alignment in bytes
-+ * @param t Type of the variable (or array element)
-+ * @param v Name of the variable
-+ */
-+
-+/**
-+ * @def DECLARE_ASM_ALIGNED(n,t,v)
-+ * Declare an aligned variable appropriate for use in inline assembly code.
-+ *
-+ * @code{.c}
-+ * DECLARE_ASM_ALIGNED(16, uint64_t, pw_08) = UINT64_C(0x0008000800080008);
-+ * @endcode
-+ *
-+ * @param n Minimum alignment in bytes
-+ * @param t Type of the variable (or array element)
-+ * @param v Name of the variable
-+ */
-+
-+/**
-+ * @def DECLARE_ASM_CONST(n,t,v)
-+ * Declare a static constant aligned variable appropriate for use in inline
-+ * assembly code.
-+ *
-+ * @code{.c}
-+ * DECLARE_ASM_CONST(16, uint64_t, pw_08) = UINT64_C(0x0008000800080008);
-+ * @endcode
-+ *
-+ * @param n Minimum alignment in bytes
-+ * @param t Type of the variable (or array element)
-+ * @param v Name of the variable
-+ */
-+
-+#if defined(__INTEL_COMPILER) && __INTEL_COMPILER < 1110 || defined(__SUNPRO_C)
-+    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
-+    #define DECLARE_ASM_ALIGNED(n,t,v)  t __attribute__ ((aligned (n))) v
-+    #define DECLARE_ASM_CONST(n,t,v)    const t __attribute__ ((aligned (n))) v
-+#elif defined(__DJGPP__)
-+    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (FFMIN(n, 16)))) v
-+    #define DECLARE_ASM_ALIGNED(n,t,v)  t av_used __attribute__ ((aligned (FFMIN(n, 16)))) v
-+    #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (FFMIN(n, 16)))) v
-+#elif defined(__GNUC__) || defined(__clang__)
-+    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
-+    #define DECLARE_ASM_ALIGNED(n,t,v)  t av_used __attribute__ ((aligned (n))) v
-+    #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (n))) v
-+#elif defined(_MSC_VER)
-+    #define DECLARE_ALIGNED(n,t,v)      __declspec(align(n)) t v
-+    #define DECLARE_ASM_ALIGNED(n,t,v)  __declspec(align(n)) t v
-+    #define DECLARE_ASM_CONST(n,t,v)    __declspec(align(n)) static const t v
-+#else
-+    #define DECLARE_ALIGNED(n,t,v)      t v
-+    #define DECLARE_ASM_ALIGNED(n,t,v)  t v
-+    #define DECLARE_ASM_CONST(n,t,v)    static const t v
-+#endif
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_mem_attrs Function Attributes
-+ * Function attributes applicable to memory handling functions.
-+ *
-+ * These function attributes can help compilers emit more useful warnings, or
-+ * generate better code.
-+ * @{
-+ */
-+
-+/**
-+ * @def av_malloc_attrib
-+ * Function attribute denoting a malloc-like function.
-+ *
-+ * @see <a href="https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-g_t_0040code_007bmalloc_007d-function-attribute-3251">Function attribute `malloc` in GCC's documentation</a>
-+ */
-+
-+#if AV_GCC_VERSION_AT_LEAST(3,1)
-+    #define av_malloc_attrib __attribute__((__malloc__))
-+#else
-+    #define av_malloc_attrib
-+#endif
-+
-+/**
-+ * @def av_alloc_size(...)
-+ * Function attribute used on a function that allocates memory, whose size is
-+ * given by the specified parameter(s).
-+ *
-+ * @code{.c}
-+ * void *av_malloc(size_t size) av_alloc_size(1);
-+ * void *av_calloc(size_t nmemb, size_t size) av_alloc_size(1, 2);
-+ * @endcode
-+ *
-+ * @param ... One or two parameter indexes, separated by a comma
-+ *
-+ * @see <a href="https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-g_t_0040code_007balloc_005fsize_007d-function-attribute-3220">Function attribute `alloc_size` in GCC's documentation</a>
-+ */
-+
-+#if AV_GCC_VERSION_AT_LEAST(4,3)
-+    #define av_alloc_size(...) __attribute__((alloc_size(__VA_ARGS__)))
-+#else
-+    #define av_alloc_size(...)
-+#endif
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_mem_funcs Heap Management
-+ * Functions responsible for allocating, freeing, and copying memory.
-+ *
-+ * All memory allocation functions have a built-in upper limit of `INT_MAX`
-+ * bytes. This may be changed with av_max_alloc(), although exercise extreme
-+ * caution when doing so.
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Allocate a memory block with alignment suitable for all memory accesses
-+ * (including vectors if available on the CPU).
-+ *
-+ * @param size Size in bytes for the memory block to be allocated
-+ * @return Pointer to the allocated block, or `NULL` if the block cannot
-+ *         be allocated
-+ * @see av_mallocz()
-+ */
-+void *av_malloc(size_t size) av_malloc_attrib av_alloc_size(1);
-+
-+/**
-+ * Allocate a memory block with alignment suitable for all memory accesses
-+ * (including vectors if available on the CPU) and zero all the bytes of the
-+ * block.
-+ *
-+ * @param size Size in bytes for the memory block to be allocated
-+ * @return Pointer to the allocated block, or `NULL` if it cannot be allocated
-+ * @see av_malloc()
-+ */
-+void *av_mallocz(size_t size) av_malloc_attrib av_alloc_size(1);
-+
-+/**
-+ * Allocate a memory block for an array with av_malloc().
-+ *
-+ * The allocated memory will have size `size * nmemb` bytes.
-+ *
-+ * @param nmemb Number of element
-+ * @param size  Size of a single element
-+ * @return Pointer to the allocated block, or `NULL` if the block cannot
-+ *         be allocated
-+ * @see av_malloc()
-+ */
-+av_alloc_size(1, 2) void *av_malloc_array(size_t nmemb, size_t size);
-+
-+/**
-+ * Allocate a memory block for an array with av_mallocz().
-+ *
-+ * The allocated memory will have size `size * nmemb` bytes.
-+ *
-+ * @param nmemb Number of elements
-+ * @param size  Size of the single element
-+ * @return Pointer to the allocated block, or `NULL` if the block cannot
-+ *         be allocated
-+ *
-+ * @see av_mallocz()
-+ * @see av_malloc_array()
-+ */
-+av_alloc_size(1, 2) void *av_mallocz_array(size_t nmemb, size_t size);
-+
-+/**
-+ * Non-inlined equivalent of av_mallocz_array().
-+ *
-+ * Created for symmetry with the calloc() C function.
-+ */
-+void *av_calloc(size_t nmemb, size_t size) av_malloc_attrib;
-+
-+/**
-+ * Allocate, reallocate, or free a block of memory.
-+ *
-+ * If `ptr` is `NULL` and `size` > 0, allocate a new block. If `size` is
-+ * zero, free the memory block pointed to by `ptr`. Otherwise, expand or
-+ * shrink that block of memory according to `size`.
-+ *
-+ * @param ptr  Pointer to a memory block already allocated with
-+ *             av_realloc() or `NULL`
-+ * @param size Size in bytes of the memory block to be allocated or
-+ *             reallocated
-+ *
-+ * @return Pointer to a newly-reallocated block or `NULL` if the block
-+ *         cannot be reallocated or the function is used to free the memory block
-+ *
-+ * @warning Unlike av_malloc(), the returned pointer is not guaranteed to be
-+ *          correctly aligned.
-+ * @see av_fast_realloc()
-+ * @see av_reallocp()
-+ */
-+void *av_realloc(void *ptr, size_t size) av_alloc_size(2);
-+
-+/**
-+ * Allocate, reallocate, or free a block of memory through a pointer to a
-+ * pointer.
-+ *
-+ * If `*ptr` is `NULL` and `size` > 0, allocate a new block. If `size` is
-+ * zero, free the memory block pointed to by `*ptr`. Otherwise, expand or
-+ * shrink that block of memory according to `size`.
-+ *
-+ * @param[in,out] ptr  Pointer to a pointer to a memory block already allocated
-+ *                     with av_realloc(), or a pointer to `NULL`. The pointer
-+ *                     is updated on success, or freed on failure.
-+ * @param[in]     size Size in bytes for the memory block to be allocated or
-+ *                     reallocated
-+ *
-+ * @return Zero on success, an AVERROR error code on failure
-+ *
-+ * @warning Unlike av_malloc(), the allocated memory is not guaranteed to be
-+ *          correctly aligned.
-+ */
-+av_warn_unused_result
-+int av_reallocp(void *ptr, size_t size);
-+
-+/**
-+ * Allocate, reallocate, or free a block of memory.
-+ *
-+ * This function does the same thing as av_realloc(), except:
-+ * - It takes two size arguments and allocates `nelem * elsize` bytes,
-+ *   after checking the result of the multiplication for integer overflow.
-+ * - It frees the input block in case of failure, thus avoiding the memory
-+ *   leak with the classic
-+ *   @code{.c}
-+ *   buf = realloc(buf);
-+ *   if (!buf)
-+ *       return -1;
-+ *   @endcode
-+ *   pattern.
-+ */
-+void *av_realloc_f(void *ptr, size_t nelem, size_t elsize);
-+
-+/**
-+ * Allocate, reallocate, or free an array.
-+ *
-+ * If `ptr` is `NULL` and `nmemb` > 0, allocate a new block. If
-+ * `nmemb` is zero, free the memory block pointed to by `ptr`.
-+ *
-+ * @param ptr   Pointer to a memory block already allocated with
-+ *              av_realloc() or `NULL`
-+ * @param nmemb Number of elements in the array
-+ * @param size  Size of the single element of the array
-+ *
-+ * @return Pointer to a newly-reallocated block or NULL if the block
-+ *         cannot be reallocated or the function is used to free the memory block
-+ *
-+ * @warning Unlike av_malloc(), the allocated memory is not guaranteed to be
-+ *          correctly aligned.
-+ * @see av_reallocp_array()
-+ */
-+av_alloc_size(2, 3) void *av_realloc_array(void *ptr, size_t nmemb, size_t size);
-+
-+/**
-+ * Allocate, reallocate, or free an array through a pointer to a pointer.
-+ *
-+ * If `*ptr` is `NULL` and `nmemb` > 0, allocate a new block. If `nmemb` is
-+ * zero, free the memory block pointed to by `*ptr`.
-+ *
-+ * @param[in,out] ptr   Pointer to a pointer to a memory block already
-+ *                      allocated with av_realloc(), or a pointer to `NULL`.
-+ *                      The pointer is updated on success, or freed on failure.
-+ * @param[in]     nmemb Number of elements
-+ * @param[in]     size  Size of the single element
-+ *
-+ * @return Zero on success, an AVERROR error code on failure
-+ *
-+ * @warning Unlike av_malloc(), the allocated memory is not guaranteed to be
-+ *          correctly aligned.
-+ */
-+av_alloc_size(2, 3) int av_reallocp_array(void *ptr, size_t nmemb, size_t size);
-+
-+/**
-+ * Reallocate the given buffer if it is not large enough, otherwise do nothing.
-+ *
-+ * If the given buffer is `NULL`, then a new uninitialized buffer is allocated.
-+ *
-+ * If the given buffer is not large enough, and reallocation fails, `NULL` is
-+ * returned and `*size` is set to 0, but the original buffer is not changed or
-+ * freed.
-+ *
-+ * A typical use pattern follows:
-+ *
-+ * @code{.c}
-+ * uint8_t *buf = ...;
-+ * uint8_t *new_buf = av_fast_realloc(buf, &current_size, size_needed);
-+ * if (!new_buf) {
-+ *     // Allocation failed; clean up original buffer
-+ *     av_freep(&buf);
-+ *     return AVERROR(ENOMEM);
-+ * }
-+ * @endcode
-+ *
-+ * @param[in,out] ptr      Already allocated buffer, or `NULL`
-+ * @param[in,out] size     Pointer to current size of buffer `ptr`. `*size` is
-+ *                         changed to `min_size` in case of success or 0 in
-+ *                         case of failure
-+ * @param[in]     min_size New size of buffer `ptr`
-+ * @return `ptr` if the buffer is large enough, a pointer to newly reallocated
-+ *         buffer if the buffer was not large enough, or `NULL` in case of
-+ *         error
-+ * @see av_realloc()
-+ * @see av_fast_malloc()
-+ */
-+void *av_fast_realloc(void *ptr, unsigned int *size, size_t min_size);
-+
-+/**
-+ * Allocate a buffer, reusing the given one if large enough.
-+ *
-+ * Contrary to av_fast_realloc(), the current buffer contents might not be
-+ * preserved and on error the old buffer is freed, thus no special handling to
-+ * avoid memleaks is necessary.
-+ *
-+ * `*ptr` is allowed to be `NULL`, in which case allocation always happens if
-+ * `size_needed` is greater than 0.
-+ *
-+ * @code{.c}
-+ * uint8_t *buf = ...;
-+ * av_fast_malloc(&buf, &current_size, size_needed);
-+ * if (!buf) {
-+ *     // Allocation failed; buf already freed
-+ *     return AVERROR(ENOMEM);
-+ * }
-+ * @endcode
-+ *
-+ * @param[in,out] ptr      Pointer to pointer to an already allocated buffer.
-+ *                         `*ptr` will be overwritten with pointer to new
-+ *                         buffer on success or `NULL` on failure
-+ * @param[in,out] size     Pointer to current size of buffer `*ptr`. `*size` is
-+ *                         changed to `min_size` in case of success or 0 in
-+ *                         case of failure
-+ * @param[in]     min_size New size of buffer `*ptr`
-+ * @see av_realloc()
-+ * @see av_fast_mallocz()
-+ */
-+void av_fast_malloc(void *ptr, unsigned int *size, size_t min_size);
-+
-+/**
-+ * Allocate and clear a buffer, reusing the given one if large enough.
-+ *
-+ * Like av_fast_malloc(), but all newly allocated space is initially cleared.
-+ * Reused buffer is not cleared.
-+ *
-+ * `*ptr` is allowed to be `NULL`, in which case allocation always happens if
-+ * `size_needed` is greater than 0.
-+ *
-+ * @param[in,out] ptr      Pointer to pointer to an already allocated buffer.
-+ *                         `*ptr` will be overwritten with pointer to new
-+ *                         buffer on success or `NULL` on failure
-+ * @param[in,out] size     Pointer to current size of buffer `*ptr`. `*size` is
-+ *                         changed to `min_size` in case of success or 0 in
-+ *                         case of failure
-+ * @param[in]     min_size New size of buffer `*ptr`
-+ * @see av_fast_malloc()
-+ */
-+void av_fast_mallocz(void *ptr, unsigned int *size, size_t min_size);
-+
-+/**
-+ * Free a memory block which has been allocated with a function of av_malloc()
-+ * or av_realloc() family.
-+ *
-+ * @param ptr Pointer to the memory block which should be freed.
-+ *
-+ * @note `ptr = NULL` is explicitly allowed.
-+ * @note It is recommended that you use av_freep() instead, to prevent leaving
-+ *       behind dangling pointers.
-+ * @see av_freep()
-+ */
-+void av_free(void *ptr);
-+
-+/**
-+ * Free a memory block which has been allocated with a function of av_malloc()
-+ * or av_realloc() family, and set the pointer pointing to it to `NULL`.
-+ *
-+ * @code{.c}
-+ * uint8_t *buf = av_malloc(16);
-+ * av_free(buf);
-+ * // buf now contains a dangling pointer to freed memory, and accidental
-+ * // dereference of buf will result in a use-after-free, which may be a
-+ * // security risk.
-+ *
-+ * uint8_t *buf = av_malloc(16);
-+ * av_freep(&buf);
-+ * // buf is now NULL, and accidental dereference will only result in a
-+ * // NULL-pointer dereference.
-+ * @endcode
-+ *
-+ * @param ptr Pointer to the pointer to the memory block which should be freed
-+ * @note `*ptr = NULL` is safe and leads to no action.
-+ * @see av_free()
-+ */
-+void av_freep(void *ptr);
-+
-+/**
-+ * Duplicate a string.
-+ *
-+ * @param s String to be duplicated
-+ * @return Pointer to a newly-allocated string containing a
-+ *         copy of `s` or `NULL` if the string cannot be allocated
-+ * @see av_strndup()
-+ */
-+char *av_strdup(const char *s) av_malloc_attrib;
-+
-+/**
-+ * Duplicate a substring of a string.
-+ *
-+ * @param s   String to be duplicated
-+ * @param len Maximum length of the resulting string (not counting the
-+ *            terminating byte)
-+ * @return Pointer to a newly-allocated string containing a
-+ *         substring of `s` or `NULL` if the string cannot be allocated
-+ */
-+char *av_strndup(const char *s, size_t len) av_malloc_attrib;
-+
-+/**
-+ * Duplicate a buffer with av_malloc().
-+ *
-+ * @param p    Buffer to be duplicated
-+ * @param size Size in bytes of the buffer copied
-+ * @return Pointer to a newly allocated buffer containing a
-+ *         copy of `p` or `NULL` if the buffer cannot be allocated
-+ */
-+void *av_memdup(const void *p, size_t size);
-+
-+/**
-+ * Overlapping memcpy() implementation.
-+ *
-+ * @param dst  Destination buffer
-+ * @param back Number of bytes back to start copying (i.e. the initial size of
-+ *             the overlapping window); must be > 0
-+ * @param cnt  Number of bytes to copy; must be >= 0
-+ *
-+ * @note `cnt > back` is valid, this will copy the bytes we just copied,
-+ *       thus creating a repeating pattern with a period length of `back`.
-+ */
-+void av_memcpy_backptr(uint8_t *dst, int back, int cnt);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_mem_dynarray Dynamic Array
-+ *
-+ * Utilities to make an array grow when needed.
-+ *
-+ * Sometimes, the programmer would want to have an array that can grow when
-+ * needed. The libavutil dynamic array utilities fill that need.
-+ *
-+ * libavutil supports two systems of appending elements onto a dynamically
-+ * allocated array, the first one storing the pointer to the value in the
-+ * array, and the second storing the value directly. In both systems, the
-+ * caller is responsible for maintaining a variable containing the length of
-+ * the array, as well as freeing of the array after use.
-+ *
-+ * The first system stores pointers to values in a block of dynamically
-+ * allocated memory. Since only pointers are stored, the function does not need
-+ * to know the size of the type. Both av_dynarray_add() and
-+ * av_dynarray_add_nofree() implement this system.
-+ *
-+ * @code
-+ * type **array = NULL; //< an array of pointers to values
-+ * int    nb    = 0;    //< a variable to keep track of the length of the array
-+ *
-+ * type to_be_added  = ...;
-+ * type to_be_added2 = ...;
-+ *
-+ * av_dynarray_add(&array, &nb, &to_be_added);
-+ * if (nb == 0)
-+ *     return AVERROR(ENOMEM);
-+ *
-+ * av_dynarray_add(&array, &nb, &to_be_added2);
-+ * if (nb == 0)
-+ *     return AVERROR(ENOMEM);
-+ *
-+ * // Now:
-+ * //  nb           == 2
-+ * // &to_be_added  == array[0]
-+ * // &to_be_added2 == array[1]
-+ *
-+ * av_freep(&array);
-+ * @endcode
-+ *
-+ * The second system stores the value directly in a block of memory. As a
-+ * result, the function has to know the size of the type. av_dynarray2_add()
-+ * implements this mechanism.
-+ *
-+ * @code
-+ * type *array = NULL; //< an array of values
-+ * int   nb    = 0;    //< a variable to keep track of the length of the array
-+ *
-+ * type to_be_added  = ...;
-+ * type to_be_added2 = ...;
-+ *
-+ * type *addr = av_dynarray2_add((void **)&array, &nb, sizeof(*array), NULL);
-+ * if (!addr)
-+ *     return AVERROR(ENOMEM);
-+ * memcpy(addr, &to_be_added, sizeof(to_be_added));
-+ *
-+ * // Shortcut of the above.
-+ * type *addr = av_dynarray2_add((void **)&array, &nb, sizeof(*array),
-+ *                               (const void *)&to_be_added2);
-+ * if (!addr)
-+ *     return AVERROR(ENOMEM);
-+ *
-+ * // Now:
-+ * //  nb           == 2
-+ * //  to_be_added  == array[0]
-+ * //  to_be_added2 == array[1]
-+ *
-+ * av_freep(&array);
-+ * @endcode
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Add the pointer to an element to a dynamic array.
-+ *
-+ * The array to grow is supposed to be an array of pointers to
-+ * structures, and the element to add must be a pointer to an already
-+ * allocated structure.
-+ *
-+ * The array is reallocated when its size reaches powers of 2.
-+ * Therefore, the amortized cost of adding an element is constant.
-+ *
-+ * In case of success, the pointer to the array is updated in order to
-+ * point to the new grown array, and the number pointed to by `nb_ptr`
-+ * is incremented.
-+ * In case of failure, the array is freed, `*tab_ptr` is set to `NULL` and
-+ * `*nb_ptr` is set to 0.
-+ *
-+ * @param[in,out] tab_ptr Pointer to the array to grow
-+ * @param[in,out] nb_ptr  Pointer to the number of elements in the array
-+ * @param[in]     elem    Element to add
-+ * @see av_dynarray_add_nofree(), av_dynarray2_add()
-+ */
-+void av_dynarray_add(void *tab_ptr, int *nb_ptr, void *elem);
-+
-+/**
-+ * Add an element to a dynamic array.
-+ *
-+ * Function has the same functionality as av_dynarray_add(),
-+ * but it doesn't free memory on fails. It returns error code
-+ * instead and leave current buffer untouched.
-+ *
-+ * @return >=0 on success, negative otherwise
-+ * @see av_dynarray_add(), av_dynarray2_add()
-+ */
-+av_warn_unused_result
-+int av_dynarray_add_nofree(void *tab_ptr, int *nb_ptr, void *elem);
-+
-+/**
-+ * Add an element of size `elem_size` to a dynamic array.
-+ *
-+ * The array is reallocated when its number of elements reaches powers of 2.
-+ * Therefore, the amortized cost of adding an element is constant.
-+ *
-+ * In case of success, the pointer to the array is updated in order to
-+ * point to the new grown array, and the number pointed to by `nb_ptr`
-+ * is incremented.
-+ * In case of failure, the array is freed, `*tab_ptr` is set to `NULL` and
-+ * `*nb_ptr` is set to 0.
-+ *
-+ * @param[in,out] tab_ptr   Pointer to the array to grow
-+ * @param[in,out] nb_ptr    Pointer to the number of elements in the array
-+ * @param[in]     elem_size Size in bytes of an element in the array
-+ * @param[in]     elem_data Pointer to the data of the element to add. If
-+ *                          `NULL`, the space of the newly added element is
-+ *                          allocated but left uninitialized.
-+ *
-+ * @return Pointer to the data of the element to copy in the newly allocated
-+ *         space
-+ * @see av_dynarray_add(), av_dynarray_add_nofree()
-+ */
-+void *av_dynarray2_add(void **tab_ptr, int *nb_ptr, size_t elem_size,
-+                       const uint8_t *elem_data);
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_mem_misc Miscellaneous Functions
-+ *
-+ * Other functions related to memory allocation.
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Multiply two `size_t` values checking for overflow.
-+ *
-+ * @param[in]  a,b Operands of multiplication
-+ * @param[out] r   Pointer to the result of the operation
-+ * @return 0 on success, AVERROR(EINVAL) on overflow
-+ */
-+static inline int av_size_mult(size_t a, size_t b, size_t *r)
-+{
-+    size_t t = a * b;
-+    /* Hack inspired from glibc: don't try the division if nelem and elsize
-+     * are both less than sqrt(SIZE_MAX). */
-+    if ((a | b) >= ((size_t)1 << (sizeof(size_t) * 4)) && a && t / a != b)
-+        return AVERROR(EINVAL);
-+    *r = t;
-+    return 0;
-+}
-+
-+/**
-+ * Set the maximum size that may be allocated in one block.
-+ *
-+ * The value specified with this function is effective for all libavutil's @ref
-+ * lavu_mem_funcs "heap management functions."
-+ *
-+ * By default, the max value is defined as `INT_MAX`.
-+ *
-+ * @param max Value to be set as the new maximum size
-+ *
-+ * @warning Exercise extreme caution when using this function. Don't touch
-+ *          this if you do not understand the full consequence of doing so.
-+ */
-+void av_max_alloc(size_t max);
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_MEM_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/pixfmt.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/pixfmt.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/pixfmt.h
-@@ -0,0 +1,529 @@
-+/*
-+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_PIXFMT_H
-+#define AVUTIL_PIXFMT_H
-+
-+/**
-+ * @file
-+ * pixel format definitions
-+ */
-+
-+#include "libavutil/avconfig.h"
-+#include "version.h"
-+
-+#define AVPALETTE_SIZE 1024
-+#define AVPALETTE_COUNT 256
-+
-+/**
-+ * Pixel format.
-+ *
-+ * @note
-+ * AV_PIX_FMT_RGB32 is handled in an endian-specific manner. An RGBA
-+ * color is put together as:
-+ *  (A << 24) | (R << 16) | (G << 8) | B
-+ * This is stored as BGRA on little-endian CPU architectures and ARGB on
-+ * big-endian CPUs.
-+ *
-+ * @par
-+ * When the pixel format is palettized RGB32 (AV_PIX_FMT_PAL8), the palettized
-+ * image data is stored in AVFrame.data[0]. The palette is transported in
-+ * AVFrame.data[1], is 1024 bytes long (256 4-byte entries) and is
-+ * formatted the same as in AV_PIX_FMT_RGB32 described above (i.e., it is
-+ * also endian-specific). Note also that the individual RGB32 palette
-+ * components stored in AVFrame.data[1] should be in the range 0..255.
-+ * This is important as many custom PAL8 video codecs that were designed
-+ * to run on the IBM VGA graphics adapter use 6-bit palette components.
-+ *
-+ * @par
-+ * For all the 8 bits per pixel formats, an RGB32 palette is in data[1] like
-+ * for pal8. This palette is filled in automatically by the function
-+ * allocating the picture.
-+ */
-+enum AVPixelFormat {
-+    AV_PIX_FMT_NONE = -1,
-+    AV_PIX_FMT_YUV420P,   ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
-+    AV_PIX_FMT_YUYV422,   ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
-+    AV_PIX_FMT_RGB24,     ///< packed RGB 8:8:8, 24bpp, RGBRGB...
-+    AV_PIX_FMT_BGR24,     ///< packed RGB 8:8:8, 24bpp, BGRBGR...
-+    AV_PIX_FMT_YUV422P,   ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
-+    AV_PIX_FMT_YUV444P,   ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
-+    AV_PIX_FMT_YUV410P,   ///< planar YUV 4:1:0,  9bpp, (1 Cr & Cb sample per 4x4 Y samples)
-+    AV_PIX_FMT_YUV411P,   ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
-+    AV_PIX_FMT_GRAY8,     ///<        Y        ,  8bpp
-+    AV_PIX_FMT_MONOWHITE, ///<        Y        ,  1bpp, 0 is white, 1 is black, in each byte pixels are ordered from the msb to the lsb
-+    AV_PIX_FMT_MONOBLACK, ///<        Y        ,  1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb
-+    AV_PIX_FMT_PAL8,      ///< 8 bits with AV_PIX_FMT_RGB32 palette
-+    AV_PIX_FMT_YUVJ420P,  ///< planar YUV 4:2:0, 12bpp, full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV420P and setting color_range
-+    AV_PIX_FMT_YUVJ422P,  ///< planar YUV 4:2:2, 16bpp, full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV422P and setting color_range
-+    AV_PIX_FMT_YUVJ444P,  ///< planar YUV 4:4:4, 24bpp, full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV444P and setting color_range
-+    AV_PIX_FMT_UYVY422,   ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
-+    AV_PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
-+    AV_PIX_FMT_BGR8,      ///< packed RGB 3:3:2,  8bpp, (msb)2B 3G 3R(lsb)
-+    AV_PIX_FMT_BGR4,      ///< packed RGB 1:2:1 bitstream,  4bpp, (msb)1B 2G 1R(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
-+    AV_PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1,  8bpp, (msb)1B 2G 1R(lsb)
-+    AV_PIX_FMT_RGB8,      ///< packed RGB 3:3:2,  8bpp, (msb)2R 3G 3B(lsb)
-+    AV_PIX_FMT_RGB4,      ///< packed RGB 1:2:1 bitstream,  4bpp, (msb)1R 2G 1B(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
-+    AV_PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1,  8bpp, (msb)1R 2G 1B(lsb)
-+    AV_PIX_FMT_NV12,      ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (first byte U and the following byte V)
-+    AV_PIX_FMT_NV21,      ///< as above, but U and V bytes are swapped
-+
-+    AV_PIX_FMT_ARGB,      ///< packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
-+    AV_PIX_FMT_RGBA,      ///< packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
-+    AV_PIX_FMT_ABGR,      ///< packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
-+    AV_PIX_FMT_BGRA,      ///< packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
-+
-+    AV_PIX_FMT_GRAY16BE,  ///<        Y        , 16bpp, big-endian
-+    AV_PIX_FMT_GRAY16LE,  ///<        Y        , 16bpp, little-endian
-+    AV_PIX_FMT_YUV440P,   ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
-+    AV_PIX_FMT_YUVJ440P,  ///< planar YUV 4:4:0 full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV440P and setting color_range
-+    AV_PIX_FMT_YUVA420P,  ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
-+    AV_PIX_FMT_RGB48BE,   ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big-endian
-+    AV_PIX_FMT_RGB48LE,   ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as little-endian
-+
-+    AV_PIX_FMT_RGB565BE,  ///< packed RGB 5:6:5, 16bpp, (msb)   5R 6G 5B(lsb), big-endian
-+    AV_PIX_FMT_RGB565LE,  ///< packed RGB 5:6:5, 16bpp, (msb)   5R 6G 5B(lsb), little-endian
-+    AV_PIX_FMT_RGB555BE,  ///< packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), big-endian   , X=unused/undefined
-+    AV_PIX_FMT_RGB555LE,  ///< packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), little-endian, X=unused/undefined
-+
-+    AV_PIX_FMT_BGR565BE,  ///< packed BGR 5:6:5, 16bpp, (msb)   5B 6G 5R(lsb), big-endian
-+    AV_PIX_FMT_BGR565LE,  ///< packed BGR 5:6:5, 16bpp, (msb)   5B 6G 5R(lsb), little-endian
-+    AV_PIX_FMT_BGR555BE,  ///< packed BGR 5:5:5, 16bpp, (msb)1X 5B 5G 5R(lsb), big-endian   , X=unused/undefined
-+    AV_PIX_FMT_BGR555LE,  ///< packed BGR 5:5:5, 16bpp, (msb)1X 5B 5G 5R(lsb), little-endian, X=unused/undefined
-+
-+#if FF_API_VAAPI
-+    /** @name Deprecated pixel formats */
-+    /**@{*/
-+    AV_PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[3] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
-+    AV_PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
-+    AV_PIX_FMT_VAAPI_VLD,  ///< HW decoding through VA API, Picture.data[3] contains a VASurfaceID
-+    /**@}*/
-+    AV_PIX_FMT_VAAPI = AV_PIX_FMT_VAAPI_VLD,
-+#else
-+    /**
-+     *  Hardware acceleration through VA-API, data[3] contains a
-+     *  VASurfaceID.
-+     */
-+    AV_PIX_FMT_VAAPI,
-+#endif
-+
-+    AV_PIX_FMT_YUV420P16LE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV420P16BE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV422P16LE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV422P16BE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV444P16LE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV444P16BE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-+    AV_PIX_FMT_DXVA2_VLD,    ///< HW decoding through DXVA2, Picture.data[3] contains a LPDIRECT3DSURFACE9 pointer
-+
-+    AV_PIX_FMT_RGB444LE,  ///< packed RGB 4:4:4, 16bpp, (msb)4X 4R 4G 4B(lsb), little-endian, X=unused/undefined
-+    AV_PIX_FMT_RGB444BE,  ///< packed RGB 4:4:4, 16bpp, (msb)4X 4R 4G 4B(lsb), big-endian,    X=unused/undefined
-+    AV_PIX_FMT_BGR444LE,  ///< packed BGR 4:4:4, 16bpp, (msb)4X 4B 4G 4R(lsb), little-endian, X=unused/undefined
-+    AV_PIX_FMT_BGR444BE,  ///< packed BGR 4:4:4, 16bpp, (msb)4X 4B 4G 4R(lsb), big-endian,    X=unused/undefined
-+    AV_PIX_FMT_YA8,       ///< 8 bits gray, 8 bits alpha
-+
-+    AV_PIX_FMT_Y400A = AV_PIX_FMT_YA8, ///< alias for AV_PIX_FMT_YA8
-+    AV_PIX_FMT_GRAY8A= AV_PIX_FMT_YA8, ///< alias for AV_PIX_FMT_YA8
-+
-+    AV_PIX_FMT_BGR48BE,   ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as big-endian
-+    AV_PIX_FMT_BGR48LE,   ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as little-endian
-+
-+    /**
-+     * The following 12 formats have the disadvantage of needing 1 format for each bit depth.
-+     * Notice that each 9/10 bits sample is stored in 16 bits with extra padding.
-+     * If you want to support multiple bit depths, then using AV_PIX_FMT_YUV420P16* with the bpp stored separately is better.
-+     */
-+    AV_PIX_FMT_YUV420P9BE, ///< planar YUV 4:2:0, 13.5bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV420P9LE, ///< planar YUV 4:2:0, 13.5bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV420P10BE,///< planar YUV 4:2:0, 15bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV420P10LE,///< planar YUV 4:2:0, 15bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV422P10BE,///< planar YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV422P10LE,///< planar YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV444P9BE, ///< planar YUV 4:4:4, 27bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV444P9LE, ///< planar YUV 4:4:4, 27bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV444P10BE,///< planar YUV 4:4:4, 30bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV444P10LE,///< planar YUV 4:4:4, 30bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV422P9BE, ///< planar YUV 4:2:2, 18bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV422P9LE, ///< planar YUV 4:2:2, 18bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_GBRP,      ///< planar GBR 4:4:4 24bpp
-+    AV_PIX_FMT_GBR24P = AV_PIX_FMT_GBRP, // alias for #AV_PIX_FMT_GBRP
-+    AV_PIX_FMT_GBRP9BE,   ///< planar GBR 4:4:4 27bpp, big-endian
-+    AV_PIX_FMT_GBRP9LE,   ///< planar GBR 4:4:4 27bpp, little-endian
-+    AV_PIX_FMT_GBRP10BE,  ///< planar GBR 4:4:4 30bpp, big-endian
-+    AV_PIX_FMT_GBRP10LE,  ///< planar GBR 4:4:4 30bpp, little-endian
-+    AV_PIX_FMT_GBRP16BE,  ///< planar GBR 4:4:4 48bpp, big-endian
-+    AV_PIX_FMT_GBRP16LE,  ///< planar GBR 4:4:4 48bpp, little-endian
-+    AV_PIX_FMT_YUVA422P,  ///< planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per 2x1 Y & A samples)
-+    AV_PIX_FMT_YUVA444P,  ///< planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per 1x1 Y & A samples)
-+    AV_PIX_FMT_YUVA420P9BE,  ///< planar YUV 4:2:0 22.5bpp, (1 Cr & Cb sample per 2x2 Y & A samples), big-endian
-+    AV_PIX_FMT_YUVA420P9LE,  ///< planar YUV 4:2:0 22.5bpp, (1 Cr & Cb sample per 2x2 Y & A samples), little-endian
-+    AV_PIX_FMT_YUVA422P9BE,  ///< planar YUV 4:2:2 27bpp, (1 Cr & Cb sample per 2x1 Y & A samples), big-endian
-+    AV_PIX_FMT_YUVA422P9LE,  ///< planar YUV 4:2:2 27bpp, (1 Cr & Cb sample per 2x1 Y & A samples), little-endian
-+    AV_PIX_FMT_YUVA444P9BE,  ///< planar YUV 4:4:4 36bpp, (1 Cr & Cb sample per 1x1 Y & A samples), big-endian
-+    AV_PIX_FMT_YUVA444P9LE,  ///< planar YUV 4:4:4 36bpp, (1 Cr & Cb sample per 1x1 Y & A samples), little-endian
-+    AV_PIX_FMT_YUVA420P10BE, ///< planar YUV 4:2:0 25bpp, (1 Cr & Cb sample per 2x2 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA420P10LE, ///< planar YUV 4:2:0 25bpp, (1 Cr & Cb sample per 2x2 Y & A samples, little-endian)
-+    AV_PIX_FMT_YUVA422P10BE, ///< planar YUV 4:2:2 30bpp, (1 Cr & Cb sample per 2x1 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA422P10LE, ///< planar YUV 4:2:2 30bpp, (1 Cr & Cb sample per 2x1 Y & A samples, little-endian)
-+    AV_PIX_FMT_YUVA444P10BE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per 1x1 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA444P10LE, ///< planar YUV 4:4:4 40bpp, (1 Cr & Cb sample per 1x1 Y & A samples, little-endian)
-+    AV_PIX_FMT_YUVA420P16BE, ///< planar YUV 4:2:0 40bpp, (1 Cr & Cb sample per 2x2 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA420P16LE, ///< planar YUV 4:2:0 40bpp, (1 Cr & Cb sample per 2x2 Y & A samples, little-endian)
-+    AV_PIX_FMT_YUVA422P16BE, ///< planar YUV 4:2:2 48bpp, (1 Cr & Cb sample per 2x1 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA422P16LE, ///< planar YUV 4:2:2 48bpp, (1 Cr & Cb sample per 2x1 Y & A samples, little-endian)
-+    AV_PIX_FMT_YUVA444P16BE, ///< planar YUV 4:4:4 64bpp, (1 Cr & Cb sample per 1x1 Y & A samples, big-endian)
-+    AV_PIX_FMT_YUVA444P16LE, ///< planar YUV 4:4:4 64bpp, (1 Cr & Cb sample per 1x1 Y & A samples, little-endian)
-+
-+    AV_PIX_FMT_VDPAU,     ///< HW acceleration through VDPAU, Picture.data[3] contains a VdpVideoSurface
-+
-+    AV_PIX_FMT_XYZ12LE,      ///< packed XYZ 4:4:4, 36 bpp, (msb) 12X, 12Y, 12Z (lsb), the 2-byte value for each X/Y/Z is stored as little-endian, the 4 lower bits are set to 0
-+    AV_PIX_FMT_XYZ12BE,      ///< packed XYZ 4:4:4, 36 bpp, (msb) 12X, 12Y, 12Z (lsb), the 2-byte value for each X/Y/Z is stored as big-endian, the 4 lower bits are set to 0
-+    AV_PIX_FMT_NV16,         ///< interleaved chroma YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
-+    AV_PIX_FMT_NV20LE,       ///< interleaved chroma YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_NV20BE,       ///< interleaved chroma YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+
-+    AV_PIX_FMT_RGBA64BE,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-+    AV_PIX_FMT_RGBA64LE,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-+    AV_PIX_FMT_BGRA64BE,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-+    AV_PIX_FMT_BGRA64LE,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-+
-+    AV_PIX_FMT_YVYU422,   ///< packed YUV 4:2:2, 16bpp, Y0 Cr Y1 Cb
-+
-+    AV_PIX_FMT_YA16BE,       ///< 16 bits gray, 16 bits alpha (big-endian)
-+    AV_PIX_FMT_YA16LE,       ///< 16 bits gray, 16 bits alpha (little-endian)
-+
-+    AV_PIX_FMT_GBRAP,        ///< planar GBRA 4:4:4:4 32bpp
-+    AV_PIX_FMT_GBRAP16BE,    ///< planar GBRA 4:4:4:4 64bpp, big-endian
-+    AV_PIX_FMT_GBRAP16LE,    ///< planar GBRA 4:4:4:4 64bpp, little-endian
-+    /**
-+     *  HW acceleration through QSV, data[3] contains a pointer to the
-+     *  mfxFrameSurface1 structure.
-+     */
-+    AV_PIX_FMT_QSV,
-+    /**
-+     * HW acceleration though MMAL, data[3] contains a pointer to the
-+     * MMAL_BUFFER_HEADER_T structure.
-+     */
-+    AV_PIX_FMT_MMAL,
-+
-+    AV_PIX_FMT_D3D11VA_VLD,  ///< HW decoding through Direct3D11 via old API, Picture.data[3] contains a ID3D11VideoDecoderOutputView pointer
-+
-+    /**
-+     * HW acceleration through CUDA. data[i] contain CUdeviceptr pointers
-+     * exactly as for system memory frames.
-+     */
-+    AV_PIX_FMT_CUDA,
-+
-+    AV_PIX_FMT_0RGB,        ///< packed RGB 8:8:8, 32bpp, XRGBXRGB...   X=unused/undefined
-+    AV_PIX_FMT_RGB0,        ///< packed RGB 8:8:8, 32bpp, RGBXRGBX...   X=unused/undefined
-+    AV_PIX_FMT_0BGR,        ///< packed BGR 8:8:8, 32bpp, XBGRXBGR...   X=unused/undefined
-+    AV_PIX_FMT_BGR0,        ///< packed BGR 8:8:8, 32bpp, BGRXBGRX...   X=unused/undefined
-+
-+    AV_PIX_FMT_YUV420P12BE, ///< planar YUV 4:2:0,18bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV420P12LE, ///< planar YUV 4:2:0,18bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV420P14BE, ///< planar YUV 4:2:0,21bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV420P14LE, ///< planar YUV 4:2:0,21bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV422P12BE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV422P12LE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV422P14BE, ///< planar YUV 4:2:2,28bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV422P14LE, ///< planar YUV 4:2:2,28bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV444P12BE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV444P12LE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-+    AV_PIX_FMT_YUV444P14BE, ///< planar YUV 4:4:4,42bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-+    AV_PIX_FMT_YUV444P14LE, ///< planar YUV 4:4:4,42bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-+    AV_PIX_FMT_GBRP12BE,    ///< planar GBR 4:4:4 36bpp, big-endian
-+    AV_PIX_FMT_GBRP12LE,    ///< planar GBR 4:4:4 36bpp, little-endian
-+    AV_PIX_FMT_GBRP14BE,    ///< planar GBR 4:4:4 42bpp, big-endian
-+    AV_PIX_FMT_GBRP14LE,    ///< planar GBR 4:4:4 42bpp, little-endian
-+    AV_PIX_FMT_YUVJ411P,    ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples) full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV411P and setting color_range
-+
-+    AV_PIX_FMT_BAYER_BGGR8,    ///< bayer, BGBG..(odd line), GRGR..(even line), 8-bit samples */
-+    AV_PIX_FMT_BAYER_RGGB8,    ///< bayer, RGRG..(odd line), GBGB..(even line), 8-bit samples */
-+    AV_PIX_FMT_BAYER_GBRG8,    ///< bayer, GBGB..(odd line), RGRG..(even line), 8-bit samples */
-+    AV_PIX_FMT_BAYER_GRBG8,    ///< bayer, GRGR..(odd line), BGBG..(even line), 8-bit samples */
-+    AV_PIX_FMT_BAYER_BGGR16LE, ///< bayer, BGBG..(odd line), GRGR..(even line), 16-bit samples, little-endian */
-+    AV_PIX_FMT_BAYER_BGGR16BE, ///< bayer, BGBG..(odd line), GRGR..(even line), 16-bit samples, big-endian */
-+    AV_PIX_FMT_BAYER_RGGB16LE, ///< bayer, RGRG..(odd line), GBGB..(even line), 16-bit samples, little-endian */
-+    AV_PIX_FMT_BAYER_RGGB16BE, ///< bayer, RGRG..(odd line), GBGB..(even line), 16-bit samples, big-endian */
-+    AV_PIX_FMT_BAYER_GBRG16LE, ///< bayer, GBGB..(odd line), RGRG..(even line), 16-bit samples, little-endian */
-+    AV_PIX_FMT_BAYER_GBRG16BE, ///< bayer, GBGB..(odd line), RGRG..(even line), 16-bit samples, big-endian */
-+    AV_PIX_FMT_BAYER_GRBG16LE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, little-endian */
-+    AV_PIX_FMT_BAYER_GRBG16BE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, big-endian */
-+
-+    AV_PIX_FMT_XVMC,///< XVideo Motion Acceleration via common packet passing
-+
-+    AV_PIX_FMT_YUV440P10LE, ///< planar YUV 4:4:0,20bpp, (1 Cr & Cb sample per 1x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV440P10BE, ///< planar YUV 4:4:0,20bpp, (1 Cr & Cb sample per 1x2 Y samples), big-endian
-+    AV_PIX_FMT_YUV440P12LE, ///< planar YUV 4:4:0,24bpp, (1 Cr & Cb sample per 1x2 Y samples), little-endian
-+    AV_PIX_FMT_YUV440P12BE, ///< planar YUV 4:4:0,24bpp, (1 Cr & Cb sample per 1x2 Y samples), big-endian
-+    AV_PIX_FMT_AYUV64LE,    ///< packed AYUV 4:4:4,64bpp (1 Cr & Cb sample per 1x1 Y & A samples), little-endian
-+    AV_PIX_FMT_AYUV64BE,    ///< packed AYUV 4:4:4,64bpp (1 Cr & Cb sample per 1x1 Y & A samples), big-endian
-+
-+    AV_PIX_FMT_VIDEOTOOLBOX, ///< hardware decoding through Videotoolbox
-+
-+    AV_PIX_FMT_P010LE, ///< like NV12, with 10bpp per component, data in the high bits, zeros in the low bits, little-endian
-+    AV_PIX_FMT_P010BE, ///< like NV12, with 10bpp per component, data in the high bits, zeros in the low bits, big-endian
-+
-+    AV_PIX_FMT_GBRAP12BE,  ///< planar GBR 4:4:4:4 48bpp, big-endian
-+    AV_PIX_FMT_GBRAP12LE,  ///< planar GBR 4:4:4:4 48bpp, little-endian
-+
-+    AV_PIX_FMT_GBRAP10BE,  ///< planar GBR 4:4:4:4 40bpp, big-endian
-+    AV_PIX_FMT_GBRAP10LE,  ///< planar GBR 4:4:4:4 40bpp, little-endian
-+
-+    AV_PIX_FMT_MEDIACODEC, ///< hardware decoding through MediaCodec
-+
-+    AV_PIX_FMT_GRAY12BE,   ///<        Y        , 12bpp, big-endian
-+    AV_PIX_FMT_GRAY12LE,   ///<        Y        , 12bpp, little-endian
-+    AV_PIX_FMT_GRAY10BE,   ///<        Y        , 10bpp, big-endian
-+    AV_PIX_FMT_GRAY10LE,   ///<        Y        , 10bpp, little-endian
-+
-+    AV_PIX_FMT_P016LE, ///< like NV12, with 16bpp per component, little-endian
-+    AV_PIX_FMT_P016BE, ///< like NV12, with 16bpp per component, big-endian
-+
-+    /**
-+     * Hardware surfaces for Direct3D11.
-+     *
-+     * This is preferred over the legacy AV_PIX_FMT_D3D11VA_VLD. The new D3D11
-+     * hwaccel API and filtering support AV_PIX_FMT_D3D11 only.
-+     *
-+     * data[0] contains a ID3D11Texture2D pointer, and data[1] contains the
-+     * texture array index of the frame as intptr_t if the ID3D11Texture2D is
-+     * an array texture (or always 0 if it's a normal texture).
-+     */
-+    AV_PIX_FMT_D3D11,
-+
-+    AV_PIX_FMT_GRAY9BE,   ///<        Y        , 9bpp, big-endian
-+    AV_PIX_FMT_GRAY9LE,   ///<        Y        , 9bpp, little-endian
-+
-+    AV_PIX_FMT_GBRPF32BE,  ///< IEEE-754 single precision planar GBR 4:4:4,     96bpp, big-endian
-+    AV_PIX_FMT_GBRPF32LE,  ///< IEEE-754 single precision planar GBR 4:4:4,     96bpp, little-endian
-+    AV_PIX_FMT_GBRAPF32BE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, big-endian
-+    AV_PIX_FMT_GBRAPF32LE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, little-endian
-+
-+    /**
-+     * DRM-managed buffers exposed through PRIME buffer sharing.
-+     *
-+     * data[0] points to an AVDRMFrameDescriptor.
-+     */
-+    AV_PIX_FMT_DRM_PRIME,
-+    /**
-+     * Hardware surfaces for OpenCL.
-+     *
-+     * data[i] contain 2D image objects (typed in C as cl_mem, used
-+     * in OpenCL as image2d_t) for each plane of the surface.
-+     */
-+    AV_PIX_FMT_OPENCL,
-+
-+    AV_PIX_FMT_NB         ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
-+};
-+
-+#if AV_HAVE_BIGENDIAN
-+#   define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##be
-+#else
-+#   define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##le
-+#endif
-+
-+#define AV_PIX_FMT_RGB32   AV_PIX_FMT_NE(ARGB, BGRA)
-+#define AV_PIX_FMT_RGB32_1 AV_PIX_FMT_NE(RGBA, ABGR)
-+#define AV_PIX_FMT_BGR32   AV_PIX_FMT_NE(ABGR, RGBA)
-+#define AV_PIX_FMT_BGR32_1 AV_PIX_FMT_NE(BGRA, ARGB)
-+#define AV_PIX_FMT_0RGB32  AV_PIX_FMT_NE(0RGB, BGR0)
-+#define AV_PIX_FMT_0BGR32  AV_PIX_FMT_NE(0BGR, RGB0)
-+
-+#define AV_PIX_FMT_GRAY9  AV_PIX_FMT_NE(GRAY9BE,  GRAY9LE)
-+#define AV_PIX_FMT_GRAY10 AV_PIX_FMT_NE(GRAY10BE, GRAY10LE)
-+#define AV_PIX_FMT_GRAY12 AV_PIX_FMT_NE(GRAY12BE, GRAY12LE)
-+#define AV_PIX_FMT_GRAY16 AV_PIX_FMT_NE(GRAY16BE, GRAY16LE)
-+#define AV_PIX_FMT_YA16   AV_PIX_FMT_NE(YA16BE,   YA16LE)
-+#define AV_PIX_FMT_RGB48  AV_PIX_FMT_NE(RGB48BE,  RGB48LE)
-+#define AV_PIX_FMT_RGB565 AV_PIX_FMT_NE(RGB565BE, RGB565LE)
-+#define AV_PIX_FMT_RGB555 AV_PIX_FMT_NE(RGB555BE, RGB555LE)
-+#define AV_PIX_FMT_RGB444 AV_PIX_FMT_NE(RGB444BE, RGB444LE)
-+#define AV_PIX_FMT_RGBA64 AV_PIX_FMT_NE(RGBA64BE, RGBA64LE)
-+#define AV_PIX_FMT_BGR48  AV_PIX_FMT_NE(BGR48BE,  BGR48LE)
-+#define AV_PIX_FMT_BGR565 AV_PIX_FMT_NE(BGR565BE, BGR565LE)
-+#define AV_PIX_FMT_BGR555 AV_PIX_FMT_NE(BGR555BE, BGR555LE)
-+#define AV_PIX_FMT_BGR444 AV_PIX_FMT_NE(BGR444BE, BGR444LE)
-+#define AV_PIX_FMT_BGRA64 AV_PIX_FMT_NE(BGRA64BE, BGRA64LE)
-+
-+#define AV_PIX_FMT_YUV420P9  AV_PIX_FMT_NE(YUV420P9BE , YUV420P9LE)
-+#define AV_PIX_FMT_YUV422P9  AV_PIX_FMT_NE(YUV422P9BE , YUV422P9LE)
-+#define AV_PIX_FMT_YUV444P9  AV_PIX_FMT_NE(YUV444P9BE , YUV444P9LE)
-+#define AV_PIX_FMT_YUV420P10 AV_PIX_FMT_NE(YUV420P10BE, YUV420P10LE)
-+#define AV_PIX_FMT_YUV422P10 AV_PIX_FMT_NE(YUV422P10BE, YUV422P10LE)
-+#define AV_PIX_FMT_YUV440P10 AV_PIX_FMT_NE(YUV440P10BE, YUV440P10LE)
-+#define AV_PIX_FMT_YUV444P10 AV_PIX_FMT_NE(YUV444P10BE, YUV444P10LE)
-+#define AV_PIX_FMT_YUV420P12 AV_PIX_FMT_NE(YUV420P12BE, YUV420P12LE)
-+#define AV_PIX_FMT_YUV422P12 AV_PIX_FMT_NE(YUV422P12BE, YUV422P12LE)
-+#define AV_PIX_FMT_YUV440P12 AV_PIX_FMT_NE(YUV440P12BE, YUV440P12LE)
-+#define AV_PIX_FMT_YUV444P12 AV_PIX_FMT_NE(YUV444P12BE, YUV444P12LE)
-+#define AV_PIX_FMT_YUV420P14 AV_PIX_FMT_NE(YUV420P14BE, YUV420P14LE)
-+#define AV_PIX_FMT_YUV422P14 AV_PIX_FMT_NE(YUV422P14BE, YUV422P14LE)
-+#define AV_PIX_FMT_YUV444P14 AV_PIX_FMT_NE(YUV444P14BE, YUV444P14LE)
-+#define AV_PIX_FMT_YUV420P16 AV_PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
-+#define AV_PIX_FMT_YUV422P16 AV_PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
-+#define AV_PIX_FMT_YUV444P16 AV_PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
-+
-+#define AV_PIX_FMT_GBRP9     AV_PIX_FMT_NE(GBRP9BE ,    GBRP9LE)
-+#define AV_PIX_FMT_GBRP10    AV_PIX_FMT_NE(GBRP10BE,    GBRP10LE)
-+#define AV_PIX_FMT_GBRP12    AV_PIX_FMT_NE(GBRP12BE,    GBRP12LE)
-+#define AV_PIX_FMT_GBRP14    AV_PIX_FMT_NE(GBRP14BE,    GBRP14LE)
-+#define AV_PIX_FMT_GBRP16    AV_PIX_FMT_NE(GBRP16BE,    GBRP16LE)
-+#define AV_PIX_FMT_GBRAP10   AV_PIX_FMT_NE(GBRAP10BE,   GBRAP10LE)
-+#define AV_PIX_FMT_GBRAP12   AV_PIX_FMT_NE(GBRAP12BE,   GBRAP12LE)
-+#define AV_PIX_FMT_GBRAP16   AV_PIX_FMT_NE(GBRAP16BE,   GBRAP16LE)
-+
-+#define AV_PIX_FMT_BAYER_BGGR16 AV_PIX_FMT_NE(BAYER_BGGR16BE,    BAYER_BGGR16LE)
-+#define AV_PIX_FMT_BAYER_RGGB16 AV_PIX_FMT_NE(BAYER_RGGB16BE,    BAYER_RGGB16LE)
-+#define AV_PIX_FMT_BAYER_GBRG16 AV_PIX_FMT_NE(BAYER_GBRG16BE,    BAYER_GBRG16LE)
-+#define AV_PIX_FMT_BAYER_GRBG16 AV_PIX_FMT_NE(BAYER_GRBG16BE,    BAYER_GRBG16LE)
-+
-+#define AV_PIX_FMT_GBRPF32    AV_PIX_FMT_NE(GBRPF32BE,  GBRPF32LE)
-+#define AV_PIX_FMT_GBRAPF32   AV_PIX_FMT_NE(GBRAPF32BE, GBRAPF32LE)
-+
-+#define AV_PIX_FMT_YUVA420P9  AV_PIX_FMT_NE(YUVA420P9BE , YUVA420P9LE)
-+#define AV_PIX_FMT_YUVA422P9  AV_PIX_FMT_NE(YUVA422P9BE , YUVA422P9LE)
-+#define AV_PIX_FMT_YUVA444P9  AV_PIX_FMT_NE(YUVA444P9BE , YUVA444P9LE)
-+#define AV_PIX_FMT_YUVA420P10 AV_PIX_FMT_NE(YUVA420P10BE, YUVA420P10LE)
-+#define AV_PIX_FMT_YUVA422P10 AV_PIX_FMT_NE(YUVA422P10BE, YUVA422P10LE)
-+#define AV_PIX_FMT_YUVA444P10 AV_PIX_FMT_NE(YUVA444P10BE, YUVA444P10LE)
-+#define AV_PIX_FMT_YUVA420P16 AV_PIX_FMT_NE(YUVA420P16BE, YUVA420P16LE)
-+#define AV_PIX_FMT_YUVA422P16 AV_PIX_FMT_NE(YUVA422P16BE, YUVA422P16LE)
-+#define AV_PIX_FMT_YUVA444P16 AV_PIX_FMT_NE(YUVA444P16BE, YUVA444P16LE)
-+
-+#define AV_PIX_FMT_XYZ12      AV_PIX_FMT_NE(XYZ12BE, XYZ12LE)
-+#define AV_PIX_FMT_NV20       AV_PIX_FMT_NE(NV20BE,  NV20LE)
-+#define AV_PIX_FMT_AYUV64     AV_PIX_FMT_NE(AYUV64BE, AYUV64LE)
-+#define AV_PIX_FMT_P010       AV_PIX_FMT_NE(P010BE,  P010LE)
-+#define AV_PIX_FMT_P016       AV_PIX_FMT_NE(P016BE,  P016LE)
-+
-+/**
-+  * Chromaticity coordinates of the source primaries.
-+  * These values match the ones defined by ISO/IEC 23001-8_2013 § 7.1.
-+  */
-+enum AVColorPrimaries {
-+    AVCOL_PRI_RESERVED0   = 0,
-+    AVCOL_PRI_BT709       = 1,  ///< also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B
-+    AVCOL_PRI_UNSPECIFIED = 2,
-+    AVCOL_PRI_RESERVED    = 3,
-+    AVCOL_PRI_BT470M      = 4,  ///< also FCC Title 47 Code of Federal Regulations 73.682 (a)(20)
-+
-+    AVCOL_PRI_BT470BG     = 5,  ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM
-+    AVCOL_PRI_SMPTE170M   = 6,  ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC
-+    AVCOL_PRI_SMPTE240M   = 7,  ///< functionally identical to above
-+    AVCOL_PRI_FILM        = 8,  ///< colour filters using Illuminant C
-+    AVCOL_PRI_BT2020      = 9,  ///< ITU-R BT2020
-+    AVCOL_PRI_SMPTE428    = 10, ///< SMPTE ST 428-1 (CIE 1931 XYZ)
-+    AVCOL_PRI_SMPTEST428_1 = AVCOL_PRI_SMPTE428,
-+    AVCOL_PRI_SMPTE431    = 11, ///< SMPTE ST 431-2 (2011) / DCI P3
-+    AVCOL_PRI_SMPTE432    = 12, ///< SMPTE ST 432-1 (2010) / P3 D65 / Display P3
-+    AVCOL_PRI_JEDEC_P22   = 22, ///< JEDEC P22 phosphors
-+    AVCOL_PRI_NB                ///< Not part of ABI
-+};
-+
-+/**
-+ * Color Transfer Characteristic.
-+ * These values match the ones defined by ISO/IEC 23001-8_2013 § 7.2.
-+ */
-+enum AVColorTransferCharacteristic {
-+    AVCOL_TRC_RESERVED0    = 0,
-+    AVCOL_TRC_BT709        = 1,  ///< also ITU-R BT1361
-+    AVCOL_TRC_UNSPECIFIED  = 2,
-+    AVCOL_TRC_RESERVED     = 3,
-+    AVCOL_TRC_GAMMA22      = 4,  ///< also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM
-+    AVCOL_TRC_GAMMA28      = 5,  ///< also ITU-R BT470BG
-+    AVCOL_TRC_SMPTE170M    = 6,  ///< also ITU-R BT601-6 525 or 625 / ITU-R BT1358 525 or 625 / ITU-R BT1700 NTSC
-+    AVCOL_TRC_SMPTE240M    = 7,
-+    AVCOL_TRC_LINEAR       = 8,  ///< "Linear transfer characteristics"
-+    AVCOL_TRC_LOG          = 9,  ///< "Logarithmic transfer characteristic (100:1 range)"
-+    AVCOL_TRC_LOG_SQRT     = 10, ///< "Logarithmic transfer characteristic (100 * Sqrt(10) : 1 range)"
-+    AVCOL_TRC_IEC61966_2_4 = 11, ///< IEC 61966-2-4
-+    AVCOL_TRC_BT1361_ECG   = 12, ///< ITU-R BT1361 Extended Colour Gamut
-+    AVCOL_TRC_IEC61966_2_1 = 13, ///< IEC 61966-2-1 (sRGB or sYCC)
-+    AVCOL_TRC_BT2020_10    = 14, ///< ITU-R BT2020 for 10-bit system
-+    AVCOL_TRC_BT2020_12    = 15, ///< ITU-R BT2020 for 12-bit system
-+    AVCOL_TRC_SMPTE2084    = 16, ///< SMPTE ST 2084 for 10-, 12-, 14- and 16-bit systems
-+    AVCOL_TRC_SMPTEST2084  = AVCOL_TRC_SMPTE2084,
-+    AVCOL_TRC_SMPTE428     = 17, ///< SMPTE ST 428-1
-+    AVCOL_TRC_SMPTEST428_1 = AVCOL_TRC_SMPTE428,
-+    AVCOL_TRC_ARIB_STD_B67 = 18, ///< ARIB STD-B67, known as "Hybrid log-gamma"
-+    AVCOL_TRC_NB                 ///< Not part of ABI
-+};
-+
-+/**
-+ * YUV colorspace type.
-+ * These values match the ones defined by ISO/IEC 23001-8_2013 § 7.3.
-+ */
-+enum AVColorSpace {
-+    AVCOL_SPC_RGB         = 0,  ///< order of coefficients is actually GBR, also IEC 61966-2-1 (sRGB)
-+    AVCOL_SPC_BT709       = 1,  ///< also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B
-+    AVCOL_SPC_UNSPECIFIED = 2,
-+    AVCOL_SPC_RESERVED    = 3,
-+    AVCOL_SPC_FCC         = 4,  ///< FCC Title 47 Code of Federal Regulations 73.682 (a)(20)
-+    AVCOL_SPC_BT470BG     = 5,  ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601
-+    AVCOL_SPC_SMPTE170M   = 6,  ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC
-+    AVCOL_SPC_SMPTE240M   = 7,  ///< functionally identical to above
-+    AVCOL_SPC_YCGCO       = 8,  ///< Used by Dirac / VC-2 and H.264 FRext, see ITU-T SG16
-+    AVCOL_SPC_YCOCG       = AVCOL_SPC_YCGCO,
-+    AVCOL_SPC_BT2020_NCL  = 9,  ///< ITU-R BT2020 non-constant luminance system
-+    AVCOL_SPC_BT2020_CL   = 10, ///< ITU-R BT2020 constant luminance system
-+    AVCOL_SPC_SMPTE2085   = 11, ///< SMPTE 2085, Y'D'zD'x
-+    AVCOL_SPC_CHROMA_DERIVED_NCL = 12, ///< Chromaticity-derived non-constant luminance system
-+    AVCOL_SPC_CHROMA_DERIVED_CL = 13, ///< Chromaticity-derived constant luminance system
-+    AVCOL_SPC_ICTCP       = 14, ///< ITU-R BT.2100-0, ICtCp
-+    AVCOL_SPC_NB                ///< Not part of ABI
-+};
-+
-+/**
-+ * MPEG vs JPEG YUV range.
-+ */
-+enum AVColorRange {
-+    AVCOL_RANGE_UNSPECIFIED = 0,
-+    AVCOL_RANGE_MPEG        = 1, ///< the normal 219*2^(n-8) "MPEG" YUV ranges
-+    AVCOL_RANGE_JPEG        = 2, ///< the normal     2^n-1   "JPEG" YUV ranges
-+    AVCOL_RANGE_NB               ///< Not part of ABI
-+};
-+
-+/**
-+ * Location of chroma samples.
-+ *
-+ * Illustration showing the location of the first (top left) chroma sample of the
-+ * image, the left shows only luma, the right
-+ * shows the location of the chroma sample, the 2 could be imagined to overlay
-+ * each other but are drawn separately due to limitations of ASCII
-+ *
-+ *                1st 2nd       1st 2nd horizontal luma sample positions
-+ *                 v   v         v   v
-+ *                 ______        ______
-+ *1st luma line > |X   X ...    |3 4 X ...     X are luma samples,
-+ *                |             |1 2           1-6 are possible chroma positions
-+ *2nd luma line > |X   X ...    |5 6 X ...     0 is undefined/unknown position
-+ */
-+enum AVChromaLocation {
-+    AVCHROMA_LOC_UNSPECIFIED = 0,
-+    AVCHROMA_LOC_LEFT        = 1, ///< MPEG-2/4 4:2:0, H.264 default for 4:2:0
-+    AVCHROMA_LOC_CENTER      = 2, ///< MPEG-1 4:2:0, JPEG 4:2:0, H.263 4:2:0
-+    AVCHROMA_LOC_TOPLEFT     = 3, ///< ITU-R 601, SMPTE 274M 296M S314M(DV 4:1:1), mpeg2 4:2:2
-+    AVCHROMA_LOC_TOP         = 4,
-+    AVCHROMA_LOC_BOTTOMLEFT  = 5,
-+    AVCHROMA_LOC_BOTTOM      = 6,
-+    AVCHROMA_LOC_NB               ///< Not part of ABI
-+};
-+
-+#endif /* AVUTIL_PIXFMT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/rational.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/rational.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/rational.h
-@@ -0,0 +1,214 @@
-+/*
-+ * rational numbers
-+ * Copyright (c) 2003 Michael Niedermayer <michaelni@gmx.at>
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu_math_rational
-+ * Utilties for rational number calculation.
-+ * @author Michael Niedermayer <michaelni@gmx.at>
-+ */
-+
-+#ifndef AVUTIL_RATIONAL_H
-+#define AVUTIL_RATIONAL_H
-+
-+#include <stdint.h>
-+#include <limits.h>
-+#include "attributes.h"
-+
-+/**
-+ * @defgroup lavu_math_rational AVRational
-+ * @ingroup lavu_math
-+ * Rational number calculation.
-+ *
-+ * While rational numbers can be expressed as floating-point numbers, the
-+ * conversion process is a lossy one, so are floating-point operations. On the
-+ * other hand, the nature of FFmpeg demands highly accurate calculation of
-+ * timestamps. This set of rational number utilities serves as a generic
-+ * interface for manipulating rational numbers as pairs of numerators and
-+ * denominators.
-+ *
-+ * Many of the functions that operate on AVRational's have the suffix `_q`, in
-+ * reference to the mathematical symbol "ℚ" (Q) which denotes the set of all
-+ * rational numbers.
-+ *
-+ * @{
-+ */
-+
-+/**
-+ * Rational number (pair of numerator and denominator).
-+ */
-+typedef struct AVRational{
-+    int num; ///< Numerator
-+    int den; ///< Denominator
-+} AVRational;
-+
-+/**
-+ * Create an AVRational.
-+ *
-+ * Useful for compilers that do not support compound literals.
-+ *
-+ * @note The return value is not reduced.
-+ * @see av_reduce()
-+ */
-+static inline AVRational av_make_q(int num, int den)
-+{
-+    AVRational r = { num, den };
-+    return r;
-+}
-+
-+/**
-+ * Compare two rationals.
-+ *
-+ * @param a First rational
-+ * @param b Second rational
-+ *
-+ * @return One of the following values:
-+ *         - 0 if `a == b`
-+ *         - 1 if `a > b`
-+ *         - -1 if `a < b`
-+ *         - `INT_MIN` if one of the values is of the form `0 / 0`
-+ */
-+static inline int av_cmp_q(AVRational a, AVRational b){
-+    const int64_t tmp= a.num * (int64_t)b.den - b.num * (int64_t)a.den;
-+
-+    if(tmp) return (int)((tmp ^ a.den ^ b.den)>>63)|1;
-+    else if(b.den && a.den) return 0;
-+    else if(a.num && b.num) return (a.num>>31) - (b.num>>31);
-+    else                    return INT_MIN;
-+}
-+
-+/**
-+ * Convert an AVRational to a `double`.
-+ * @param a AVRational to convert
-+ * @return `a` in floating-point form
-+ * @see av_d2q()
-+ */
-+static inline double av_q2d(AVRational a){
-+    return a.num / (double) a.den;
-+}
-+
-+/**
-+ * Reduce a fraction.
-+ *
-+ * This is useful for framerate calculations.
-+ *
-+ * @param[out] dst_num Destination numerator
-+ * @param[out] dst_den Destination denominator
-+ * @param[in]      num Source numerator
-+ * @param[in]      den Source denominator
-+ * @param[in]      max Maximum allowed values for `dst_num` & `dst_den`
-+ * @return 1 if the operation is exact, 0 otherwise
-+ */
-+int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max);
-+
-+/**
-+ * Multiply two rationals.
-+ * @param b First rational
-+ * @param c Second rational
-+ * @return b*c
-+ */
-+AVRational av_mul_q(AVRational b, AVRational c) av_const;
-+
-+/**
-+ * Divide one rational by another.
-+ * @param b First rational
-+ * @param c Second rational
-+ * @return b/c
-+ */
-+AVRational av_div_q(AVRational b, AVRational c) av_const;
-+
-+/**
-+ * Add two rationals.
-+ * @param b First rational
-+ * @param c Second rational
-+ * @return b+c
-+ */
-+AVRational av_add_q(AVRational b, AVRational c) av_const;
-+
-+/**
-+ * Subtract one rational from another.
-+ * @param b First rational
-+ * @param c Second rational
-+ * @return b-c
-+ */
-+AVRational av_sub_q(AVRational b, AVRational c) av_const;
-+
-+/**
-+ * Invert a rational.
-+ * @param q value
-+ * @return 1 / q
-+ */
-+static av_always_inline AVRational av_inv_q(AVRational q)
-+{
-+    AVRational r = { q.den, q.num };
-+    return r;
-+}
-+
-+/**
-+ * Convert a double precision floating point number to a rational.
-+ *
-+ * In case of infinity, the returned value is expressed as `{1, 0}` or
-+ * `{-1, 0}` depending on the sign.
-+ *
-+ * @param d   `double` to convert
-+ * @param max Maximum allowed numerator and denominator
-+ * @return `d` in AVRational form
-+ * @see av_q2d()
-+ */
-+AVRational av_d2q(double d, int max) av_const;
-+
-+/**
-+ * Find which of the two rationals is closer to another rational.
-+ *
-+ * @param q     Rational to be compared against
-+ * @param q1,q2 Rationals to be tested
-+ * @return One of the following values:
-+ *         - 1 if `q1` is nearer to `q` than `q2`
-+ *         - -1 if `q2` is nearer to `q` than `q1`
-+ *         - 0 if they have the same distance
-+ */
-+int av_nearer_q(AVRational q, AVRational q1, AVRational q2);
-+
-+/**
-+ * Find the value in a list of rationals nearest a given reference rational.
-+ *
-+ * @param q      Reference rational
-+ * @param q_list Array of rationals terminated by `{0, 0}`
-+ * @return Index of the nearest value found in the array
-+ */
-+int av_find_nearest_q_idx(AVRational q, const AVRational* q_list);
-+
-+/**
-+ * Convert an AVRational to a IEEE 32-bit `float` expressed in fixed-point
-+ * format.
-+ *
-+ * @param q Rational to be converted
-+ * @return Equivalent floating-point value, expressed as an unsigned 32-bit
-+ *         integer.
-+ * @note The returned value is platform-indepedant.
-+ */
-+uint32_t av_q2intfloat(AVRational q);
-+
-+/**
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_RATIONAL_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/samplefmt.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/samplefmt.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/samplefmt.h
-@@ -0,0 +1,272 @@
-+/*
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+#ifndef AVUTIL_SAMPLEFMT_H
-+#define AVUTIL_SAMPLEFMT_H
-+
-+#include <stdint.h>
-+
-+#include "avutil.h"
-+#include "attributes.h"
-+
-+/**
-+ * @addtogroup lavu_audio
-+ * @{
-+ *
-+ * @defgroup lavu_sampfmts Audio sample formats
-+ *
-+ * Audio sample format enumeration and related convenience functions.
-+ * @{
-+ */
-+
-+/**
-+ * Audio sample formats
-+ *
-+ * - The data described by the sample format is always in native-endian order.
-+ *   Sample values can be expressed by native C types, hence the lack of a signed
-+ *   24-bit sample format even though it is a common raw audio data format.
-+ *
-+ * - The floating-point formats are based on full volume being in the range
-+ *   [-1.0, 1.0]. Any values outside this range are beyond full volume level.
-+ *
-+ * - The data layout as used in av_samples_fill_arrays() and elsewhere in FFmpeg
-+ *   (such as AVFrame in libavcodec) is as follows:
-+ *
-+ * @par
-+ * For planar sample formats, each audio channel is in a separate data plane,
-+ * and linesize is the buffer size, in bytes, for a single plane. All data
-+ * planes must be the same size. For packed sample formats, only the first data
-+ * plane is used, and samples for each channel are interleaved. In this case,
-+ * linesize is the buffer size, in bytes, for the 1 plane.
-+ *
-+ */
-+enum AVSampleFormat {
-+    AV_SAMPLE_FMT_NONE = -1,
-+    AV_SAMPLE_FMT_U8,          ///< unsigned 8 bits
-+    AV_SAMPLE_FMT_S16,         ///< signed 16 bits
-+    AV_SAMPLE_FMT_S32,         ///< signed 32 bits
-+    AV_SAMPLE_FMT_FLT,         ///< float
-+    AV_SAMPLE_FMT_DBL,         ///< double
-+
-+    AV_SAMPLE_FMT_U8P,         ///< unsigned 8 bits, planar
-+    AV_SAMPLE_FMT_S16P,        ///< signed 16 bits, planar
-+    AV_SAMPLE_FMT_S32P,        ///< signed 32 bits, planar
-+    AV_SAMPLE_FMT_FLTP,        ///< float, planar
-+    AV_SAMPLE_FMT_DBLP,        ///< double, planar
-+    AV_SAMPLE_FMT_S64,         ///< signed 64 bits
-+    AV_SAMPLE_FMT_S64P,        ///< signed 64 bits, planar
-+
-+    AV_SAMPLE_FMT_NB           ///< Number of sample formats. DO NOT USE if linking dynamically
-+};
-+
-+/**
-+ * Return the name of sample_fmt, or NULL if sample_fmt is not
-+ * recognized.
-+ */
-+const char *av_get_sample_fmt_name(enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Return a sample format corresponding to name, or AV_SAMPLE_FMT_NONE
-+ * on error.
-+ */
-+enum AVSampleFormat av_get_sample_fmt(const char *name);
-+
-+/**
-+ * Return the planar<->packed alternative form of the given sample format, or
-+ * AV_SAMPLE_FMT_NONE on error. If the passed sample_fmt is already in the
-+ * requested planar/packed format, the format returned is the same as the
-+ * input.
-+ */
-+enum AVSampleFormat av_get_alt_sample_fmt(enum AVSampleFormat sample_fmt, int planar);
-+
-+/**
-+ * Get the packed alternative form of the given sample format.
-+ *
-+ * If the passed sample_fmt is already in packed format, the format returned is
-+ * the same as the input.
-+ *
-+ * @return  the packed alternative form of the given sample format or
-+            AV_SAMPLE_FMT_NONE on error.
-+ */
-+enum AVSampleFormat av_get_packed_sample_fmt(enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Get the planar alternative form of the given sample format.
-+ *
-+ * If the passed sample_fmt is already in planar format, the format returned is
-+ * the same as the input.
-+ *
-+ * @return  the planar alternative form of the given sample format or
-+            AV_SAMPLE_FMT_NONE on error.
-+ */
-+enum AVSampleFormat av_get_planar_sample_fmt(enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Generate a string corresponding to the sample format with
-+ * sample_fmt, or a header if sample_fmt is negative.
-+ *
-+ * @param buf the buffer where to write the string
-+ * @param buf_size the size of buf
-+ * @param sample_fmt the number of the sample format to print the
-+ * corresponding info string, or a negative value to print the
-+ * corresponding header.
-+ * @return the pointer to the filled buffer or NULL if sample_fmt is
-+ * unknown or in case of other errors
-+ */
-+char *av_get_sample_fmt_string(char *buf, int buf_size, enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Return number of bytes per sample.
-+ *
-+ * @param sample_fmt the sample format
-+ * @return number of bytes per sample or zero if unknown for the given
-+ * sample format
-+ */
-+int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Check if the sample format is planar.
-+ *
-+ * @param sample_fmt the sample format to inspect
-+ * @return 1 if the sample format is planar, 0 if it is interleaved
-+ */
-+int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Get the required buffer size for the given audio parameters.
-+ *
-+ * @param[out] linesize calculated linesize, may be NULL
-+ * @param nb_channels   the number of channels
-+ * @param nb_samples    the number of samples in a single channel
-+ * @param sample_fmt    the sample format
-+ * @param align         buffer size alignment (0 = default, 1 = no alignment)
-+ * @return              required buffer size, or negative error code on failure
-+ */
-+int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples,
-+                               enum AVSampleFormat sample_fmt, int align);
-+
-+/**
-+ * @}
-+ *
-+ * @defgroup lavu_sampmanip Samples manipulation
-+ *
-+ * Functions that manipulate audio samples
-+ * @{
-+ */
-+
-+/**
-+ * Fill plane data pointers and linesize for samples with sample
-+ * format sample_fmt.
-+ *
-+ * The audio_data array is filled with the pointers to the samples data planes:
-+ * for planar, set the start point of each channel's data within the buffer,
-+ * for packed, set the start point of the entire buffer only.
-+ *
-+ * The value pointed to by linesize is set to the aligned size of each
-+ * channel's data buffer for planar layout, or to the aligned size of the
-+ * buffer for all channels for packed layout.
-+ *
-+ * The buffer in buf must be big enough to contain all the samples
-+ * (use av_samples_get_buffer_size() to compute its minimum size),
-+ * otherwise the audio_data pointers will point to invalid data.
-+ *
-+ * @see enum AVSampleFormat
-+ * The documentation for AVSampleFormat describes the data layout.
-+ *
-+ * @param[out] audio_data  array to be filled with the pointer for each channel
-+ * @param[out] linesize    calculated linesize, may be NULL
-+ * @param buf              the pointer to a buffer containing the samples
-+ * @param nb_channels      the number of channels
-+ * @param nb_samples       the number of samples in a single channel
-+ * @param sample_fmt       the sample format
-+ * @param align            buffer size alignment (0 = default, 1 = no alignment)
-+ * @return                 >=0 on success or a negative error code on failure
-+ * @todo return minimum size in bytes required for the buffer in case
-+ * of success at the next bump
-+ */
-+int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
-+                           const uint8_t *buf,
-+                           int nb_channels, int nb_samples,
-+                           enum AVSampleFormat sample_fmt, int align);
-+
-+/**
-+ * Allocate a samples buffer for nb_samples samples, and fill data pointers and
-+ * linesize accordingly.
-+ * The allocated samples buffer can be freed by using av_freep(&audio_data[0])
-+ * Allocated data will be initialized to silence.
-+ *
-+ * @see enum AVSampleFormat
-+ * The documentation for AVSampleFormat describes the data layout.
-+ *
-+ * @param[out] audio_data  array to be filled with the pointer for each channel
-+ * @param[out] linesize    aligned size for audio buffer(s), may be NULL
-+ * @param nb_channels      number of audio channels
-+ * @param nb_samples       number of samples per channel
-+ * @param align            buffer size alignment (0 = default, 1 = no alignment)
-+ * @return                 >=0 on success or a negative error code on failure
-+ * @todo return the size of the allocated buffer in case of success at the next bump
-+ * @see av_samples_fill_arrays()
-+ * @see av_samples_alloc_array_and_samples()
-+ */
-+int av_samples_alloc(uint8_t **audio_data, int *linesize, int nb_channels,
-+                     int nb_samples, enum AVSampleFormat sample_fmt, int align);
-+
-+/**
-+ * Allocate a data pointers array, samples buffer for nb_samples
-+ * samples, and fill data pointers and linesize accordingly.
-+ *
-+ * This is the same as av_samples_alloc(), but also allocates the data
-+ * pointers array.
-+ *
-+ * @see av_samples_alloc()
-+ */
-+int av_samples_alloc_array_and_samples(uint8_t ***audio_data, int *linesize, int nb_channels,
-+                                       int nb_samples, enum AVSampleFormat sample_fmt, int align);
-+
-+/**
-+ * Copy samples from src to dst.
-+ *
-+ * @param dst destination array of pointers to data planes
-+ * @param src source array of pointers to data planes
-+ * @param dst_offset offset in samples at which the data will be written to dst
-+ * @param src_offset offset in samples at which the data will be read from src
-+ * @param nb_samples number of samples to be copied
-+ * @param nb_channels number of audio channels
-+ * @param sample_fmt audio sample format
-+ */
-+int av_samples_copy(uint8_t **dst, uint8_t * const *src, int dst_offset,
-+                    int src_offset, int nb_samples, int nb_channels,
-+                    enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * Fill an audio buffer with silence.
-+ *
-+ * @param audio_data  array of pointers to data planes
-+ * @param offset      offset in samples at which to start filling
-+ * @param nb_samples  number of samples to fill
-+ * @param nb_channels number of audio channels
-+ * @param sample_fmt  audio sample format
-+ */
-+int av_samples_set_silence(uint8_t **audio_data, int offset, int nb_samples,
-+                           int nb_channels, enum AVSampleFormat sample_fmt);
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+#endif /* AVUTIL_SAMPLEFMT_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/version.h b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/version.h
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/include/libavutil/version.h
-@@ -0,0 +1,139 @@
-+/*
-+ * copyright (c) 2003 Fabrice Bellard
-+ *
-+ * This file is part of FFmpeg.
-+ *
-+ * FFmpeg is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2.1 of the License, or (at your option) any later version.
-+ *
-+ * FFmpeg is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with FFmpeg; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-+ */
-+
-+/**
-+ * @file
-+ * @ingroup lavu
-+ * Libavutil version macros
-+ */
-+
-+#ifndef AVUTIL_VERSION_H
-+#define AVUTIL_VERSION_H
-+
-+#include "macros.h"
-+
-+/**
-+ * @addtogroup version_utils
-+ *
-+ * Useful to check and match library version in order to maintain
-+ * backward compatibility.
-+ *
-+ * The FFmpeg libraries follow a versioning sheme very similar to
-+ * Semantic Versioning (http://semver.org/)
-+ * The difference is that the component called PATCH is called MICRO in FFmpeg
-+ * and its value is reset to 100 instead of 0 to keep it above or equal to 100.
-+ * Also we do not increase MICRO for every bugfix or change in git master.
-+ *
-+ * Prior to FFmpeg 3.2 point releases did not change any lib version number to
-+ * avoid aliassing different git master checkouts.
-+ * Starting with FFmpeg 3.2, the released library versions will occupy
-+ * a separate MAJOR.MINOR that is not used on the master development branch.
-+ * That is if we branch a release of master 55.10.123 we will bump to 55.11.100
-+ * for the release and master will continue at 55.12.100 after it. Each new
-+ * point release will then bump the MICRO improving the usefulness of the lib
-+ * versions.
-+ *
-+ * @{
-+ */
-+
-+#define AV_VERSION_INT(a, b, c) ((a)<<16 | (b)<<8 | (c))
-+#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
-+#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
-+
-+/**
-+ * Extract version components from the full ::AV_VERSION_INT int as returned
-+ * by functions like ::avformat_version() and ::avcodec_version()
-+ */
-+#define AV_VERSION_MAJOR(a) ((a) >> 16)
-+#define AV_VERSION_MINOR(a) (((a) & 0x00FF00) >> 8)
-+#define AV_VERSION_MICRO(a) ((a) & 0xFF)
-+
-+/**
-+ * @}
-+ */
-+
-+/**
-+ * @defgroup lavu_ver Version and Build diagnostics
-+ *
-+ * Macros and function useful to check at compiletime and at runtime
-+ * which version of libavutil is in use.
-+ *
-+ * @{
-+ */
-+
-+#define LIBAVUTIL_VERSION_MAJOR  56
-+#define LIBAVUTIL_VERSION_MINOR  14
-+#define LIBAVUTIL_VERSION_MICRO 100
-+
-+#define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
-+                                               LIBAVUTIL_VERSION_MINOR, \
-+                                               LIBAVUTIL_VERSION_MICRO)
-+#define LIBAVUTIL_VERSION       AV_VERSION(LIBAVUTIL_VERSION_MAJOR,     \
-+                                           LIBAVUTIL_VERSION_MINOR,     \
-+                                           LIBAVUTIL_VERSION_MICRO)
-+#define LIBAVUTIL_BUILD         LIBAVUTIL_VERSION_INT
-+
-+#define LIBAVUTIL_IDENT         "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
-+
-+/**
-+ * @defgroup lavu_depr_guards Deprecation Guards
-+ * FF_API_* defines may be placed below to indicate public API that will be
-+ * dropped at a future version bump. The defines themselves are not part of
-+ * the public API and may change, break or disappear at any time.
-+ *
-+ * @note, when bumping the major version it is recommended to manually
-+ * disable each FF_API_* in its own commit instead of disabling them all
-+ * at once through the bump. This improves the git bisect-ability of the change.
-+ *
-+ * @{
-+ */
-+
-+#ifndef FF_API_VAAPI
-+#define FF_API_VAAPI                    (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_FRAME_QP
-+#define FF_API_FRAME_QP                 (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_PLUS1_MINUS1
-+#define FF_API_PLUS1_MINUS1             (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_ERROR_FRAME
-+#define FF_API_ERROR_FRAME              (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_PKT_PTS
-+#define FF_API_PKT_PTS                  (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_CRYPTO_SIZE_T
-+#define FF_API_CRYPTO_SIZE_T            (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_FRAME_GET_SET
-+#define FF_API_FRAME_GET_SET            (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+#ifndef FF_API_PSEUDOPAL
-+#define FF_API_PSEUDOPAL                (LIBAVUTIL_VERSION_MAJOR < 57)
-+#endif
-+
-+
-+/**
-+ * @}
-+ * @}
-+ */
-+
-+#endif /* AVUTIL_VERSION_H */
-diff --git a/dom/media/platforms/ffmpeg/ffmpeg58/moz.build b/dom/media/platforms/ffmpeg/ffmpeg58/moz.build
-new file mode 100644
---- /dev/null
-+++ b/dom/media/platforms/ffmpeg/ffmpeg58/moz.build
-@@ -0,0 +1,25 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# License, v. 2.0. If a copy of the MPL was not distributed with this
-+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-+
-+UNIFIED_SOURCES += [
-+    '../FFmpegAudioDecoder.cpp',
-+    '../FFmpegDataDecoder.cpp',
-+    '../FFmpegDecoderModule.cpp',
-+    '../FFmpegVideoDecoder.cpp',
-+]
-+LOCAL_INCLUDES += [
-+    '..',
-+    'include',
-+]
-+
-+if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
-+  CXXFLAGS += [ '-Wno-deprecated-declarations' ]
-+if CONFIG['CC_TYPE'] == 'clang':
-+  CXXFLAGS += [
-+    '-Wno-unknown-attributes',
-+  ]
-+
-+FINAL_LIBRARY = 'xul'
-diff --git a/dom/media/platforms/ffmpeg/moz.build b/dom/media/platforms/ffmpeg/moz.build
---- a/dom/media/platforms/ffmpeg/moz.build
-+++ b/dom/media/platforms/ffmpeg/moz.build
-@@ -8,15 +8,16 @@ EXPORTS += [
-     'FFmpegRuntimeLinker.h',
- ]
- 
- DIRS += [
-     'libav53',
-     'libav54',
-     'libav55',
-     'ffmpeg57',
-+    'ffmpeg58',
- ]
- 
- UNIFIED_SOURCES += [
-     'FFmpegRuntimeLinker.cpp',
- ]
- 
- FINAL_LIBRARY = 'xul'
-

diff --git a/www-client/firefox/firefox-60.0.1.ebuild b/www-client/firefox/firefox-60.0.1.ebuild
index bc86482..7343aa8 100644
--- a/www-client/firefox/firefox-60.0.1.ebuild
+++ b/www-client/firefox/firefox-60.0.1.ebuild
@@ -24,7 +24,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-60.0-patches-0"
+PATCH="${PN}-60.0-patches-02"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 MOZCONFIG_OPTIONAL_WIFI=1
@@ -117,7 +117,6 @@ src_unpack() {
 
 src_prepare() {
 	eapply "${WORKDIR}/firefox"
-	eapply "${FILESDIR}"/${PN}-ffmpeg4.patch
 
 	# Enable gnomebreakpad
 	if use debug ; then


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2018-10-23  0:53 Thomas Deutschmann
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Deutschmann @ 2018-10-23  0:53 UTC (permalink / raw
  To: gentoo-commits

commit:     43e939cfe19375d5f11d10f91634fc7751481cb4
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 23 00:48:41 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Oct 23 00:48:41 2018 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=43e939cf

www-client/firefox: synchronize with Gentoo repository

Package-Manager: Portage-2.3.51, Repoman-2.3.11
RepoMan-Options: --force
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 www-client/firefox/Manifest                        | 377 +++++------
 .../files/firefox-60.0-update-cc-to-honor-CC.patch | 745 +++++++++++++++++++++
 ...efox-60.2.1-r1.ebuild => firefox-60.2.2.ebuild} |   7 +-
 ...firefox-62.0.2.ebuild => firefox-62.0.3.ebuild} |   5 +-
 www-client/firefox/firefox-63.0.ebuild             |  20 +-
 5 files changed, 944 insertions(+), 210 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 75f7944..af6e83b 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -91,192 +91,192 @@ DIST firefox-52.9.0esr-xh.xpi 441173 BLAKE2B 3e1b907a7659c639d17d25a1825f4728532
 DIST firefox-52.9.0esr-zh-CN.xpi 461679 BLAKE2B 745b2cfb86e93a379e13fa73b7e3721bae06694768316e31a2aed608e3050f585a9603375cd35b90affca11b3e5e44401b1e676f9c8050ade287ed0feb442a7a SHA512 ca62e0e2ab075086741159b185b5eba44c6bdfc29fd9ba1cf25808f127c1aed8875ea61c1c33e4f742fa26af4455a8873730f96ad9c7bec1f66aed0595f253f1
 DIST firefox-52.9.0esr-zh-TW.xpi 453068 BLAKE2B 84e08ea4fd119db1f1c6f84b212fbbb5d6999c5ac6010c0e7836d8734726d281107f3d91ba7bac1aeaf855dc36d3b018ae3913dccdbe2b11aad02a8d8aaa893c SHA512 a99042ef7d00820e341dfcf2c45a8b5bd77eaf2cc8ecf0ff5ee982b7bd9beac7cb4bf051c57ef3b7a5d9b67cd35858dca396d21e65718e248f3b1fdba5273999
 DIST firefox-52.9.0esr.source.tar.xz 214087304 BLAKE2B eba5305ae3fc9a4306cbcbcd8d4610272ca5b75e369367961e9d94919b003de8aae8f3c58fe1c628787d98105a85fab575ae2b051e92a0b35bbb8b402c100766 SHA512 bfca42668ca78a12a9fb56368f4aae5334b1f7a71966fbba4c32b9c5e6597aac79a6e340ac3966779d2d5563eb47c054ab33cc40bfb7306172138ccbd3adb2b9
-DIST firefox-60.0-patches-03.tar.xz 111764 BLAKE2B dd6fca1a7dad526cf1bdebb606773fab6bbb18e3cd601252f5b627e3d5ccb50a60bdc3ca228b1ed57d8b2334275fe5ef2669f8c98f8acf278effdb9dc7fc61df SHA512 24a09df0e785cd9ba71ae6baee33ef159c1fc3b580784f7d20a775dc846aaa51d660eca67e284960af72651d245236623a0736695c76be75a8b395e5b69ba1ce
-DIST firefox-60.2.1esr-ach.xpi 496841 BLAKE2B 1beafba6bc5877b2e44b3cbb2319f1e42d0070f6aaf57c95ba2df4c22ef0994e0a0530e40504f92e916eb54311d64d45fdb28f57fe2b12603c8da160e5b26650 SHA512 897c88cf347f3605bb1c65050fd32c7ae6c22559041c45c7dfee5bb7416b13f74d681c8a68d2a8f5945577a971a2d30e408f369e5d18ae900af1927cf596cb12
-DIST firefox-60.2.1esr-af.xpi 487309 BLAKE2B 40bc8e982f0680355813e40c9459e4bb4446720f234f2051d12bbcbb0c2317a6e8b72b7cafbff430f3ffe782b8d37a24d43d4010e727ecd9e85d6ea515d65d74 SHA512 a026dbb3f7c96f76d8cbefa17fa700794a93f5a2c52a92f52b391f6ef870e747164465251abbc858afd647654472dd0384f7d11ee069dfe37910ce528dbf8e2e
-DIST firefox-60.2.1esr-an.xpi 520500 BLAKE2B c47ea4c021bc2552fa235851b922e4e726bc8a4f05863c6cca90212da4e5d71c67c3de79559c7a8e76b2d49f434170da6bc31a0441960a9e8f71ce9a1d2cd7bf SHA512 a72eb01001c78d420bbef06a84cb75768ffb45d0d30bfd8e0410b59711fa1fbbb878677aeb9667f1221e889de53a5c9eeb90741308918cd6b4a7e9b50f4c5979
-DIST firefox-60.2.1esr-ar.xpi 547822 BLAKE2B 386e6c3c65aed613677ff13d231f26bd9e02316ee323fa2d18f8b8cec9fb99a5938637aa5eaa7e4c1847a682d46b84ff3ea09394c0886d060377d6169c4f2c44 SHA512 90357408a40980b9e90f05b708af08e2fdd1ca30a3bc07b17d8c34b6011677be39dee32921f93fe92c3c87e0c463e25cb9df65ac316f16a8662043521bb5272d
-DIST firefox-60.2.1esr-as.xpi 530721 BLAKE2B e534287257412ae9f2d409d214d269a46d1af8b3bcb9311b6e0b9a2a1a9baa40645ec73ea2d6b0dc75ac6a69c369b12642b0b6f268ee7e6cb6bfcefbd16d5286 SHA512 228f391cd3f8cac67d9db2baa3e89e9aab295cf5fbfc494deb1df803982e5c552d24ce23592ef5281e370b8bb9c925113017a73590c10f1643e343e425aa42cb
-DIST firefox-60.2.1esr-ast.xpi 508657 BLAKE2B cce3c0c358fc3518d98b68a4ad6ab647374c05d00f1e5440fc5ecdcc012cf0cc38b99f7e523035ce6dba5d8f3c9bd30e73522faff4d644a3120d8e169b78442e SHA512 0933a6f98524aec4feef86ebfab65987b7146c729ebfbdd15a555444255c7abdbcec2e00c4dd0703fe3817faad3dbc12ab08549682ec123c184fc9de4b23402d
-DIST firefox-60.2.1esr-az.xpi 524744 BLAKE2B d25d43455df37eaadc21878ffcfe118bb0c0125448a693f78a7d2f7f23a11634ffba6f9b09cda5bd5be78745cd53ad6b0d51747138408761a59395dc513e69ae SHA512 74502ce380c43e39be4fc1906b92badee1e4072ce43adb7fdba30b439474fb5f6af2f6653cc6328a5a7f4e7c2115e304d4e07ef39ea6f15f9afd3ab8c3c0d48e
-DIST firefox-60.2.1esr-bg.xpi 573850 BLAKE2B 700a0d443c27fb28c853ede1b5b3695491a01f11e465823aafcaf72a6a2834615b4591552f3dabeca958554f9cc4a720a9abfed490b4a74dcbfec5086f026a9c SHA512 713ab2367f96643d09184c90b96a546212481752c8eafd0b288bc179668954324cdcf0776e9d3260d2dcc51309c69ab427e81d628d292a90437c89daac96ce7b
-DIST firefox-60.2.1esr-bn-BD.xpi 590419 BLAKE2B 1fed2f29c8b2b5a6f891cfc3df57cb2b412efdacff80b72fb3317e9e05d03e90e2e6046234ee18982c19cc001ffd7d527eb992b30c27a65b159ebf8ac93f3972 SHA512 e0ce69f4e318e795ba8f7b1036956327bdee40c10b529c40814ae326b58a4b2df71baf22fdd8801c29b19a445c8f5eaa289470d10bd5434d25b5a8dfcdb929c4
-DIST firefox-60.2.1esr-bn-IN.xpi 570872 BLAKE2B ecf77b607abedcc02d3c1876ad59468f44a6f2425bd38c1334fc1a42e121a3e31488f73a0c7069cb515b8043f4857690e20e2354f675332a71cc35306d353a87 SHA512 823ec55699c0256f4f4acbe51ccf2c6c323450d162b27b47d039bbf197ecb46a4d83f1254962acd68e0ba6e4c9642cb656a3fdb6dc685461e0d3ecc5d9fc3722
-DIST firefox-60.2.1esr-br.xpi 512028 BLAKE2B 51c049920d4affd5a06dc9ea4f83a4fdcc7cb94811d0eed66d8b910dcd59140db5264c3516353b6bfb6079c89a23e98c4a76dd6ebc586d6002cbe72a89f34910 SHA512 554f2164265786ea7574c5bbe25f8b463cdedd94f239571f3c93b15675e8d29e2c614b308c7869b3b74dc0b475dfd6c9d4b87a00d1320557e46cfc8fd580e622
-DIST firefox-60.2.1esr-bs.xpi 514709 BLAKE2B ade6a79e4caa43f732bcd5c20bf9448cfe937d5ebaf01d9505585c806c2f674b7a97dcd1f5795098a27d5b81b5fd632675f64fe68f959a1418c9831a08d12ab8 SHA512 d62d71219cf7c88fed885eef8985066ed9cd8dbcb7143780d951f3f092748ace780c7917367f1d1f456b4596c6068fa3bc33119b228a743f1ab8444a4d74c3b3
-DIST firefox-60.2.1esr-ca.xpi 525260 BLAKE2B 63c5e5f32266455e2a9c540dccece04bbe816bbd15f1ac7ffea0fb55645550a24aef89c798e7abb081bf220c1ca2281c036c7604c92fcc64d21ff823d6b63c5d SHA512 c4db680536dad3060a495fa893b8e6cfe37e1fdfc63cd2f5a797cd506ef1aa3a85325440623ff59630b98546d9ef0d7444902972837283cdf8fe7b9441aabe90
-DIST firefox-60.2.1esr-cak.xpi 536294 BLAKE2B 4aae7867ebb0ca38e15106c566607109f62b2237dcdd40356814d9734fd4e819c261000ea4663154a2ccd0af3cd0c140b55bb64e5f3f7dff07b37583cf9ba69d SHA512 e5d4a0bfb129a49aa5ef3e0dc93362d585dac677a0d8704e46508e63a8d23ad0c0e36b858bf7422c63efdf02d0ad01a12fdfd7007419d91d109d8d0cb0dc2968
-DIST firefox-60.2.1esr-cs.xpi 531795 BLAKE2B a72c33d8068c92b246e64e7380ba6d0a6d6dc8b2806af910fe2077e0e8a04f1a72fce16743a7b483ca44183464b7300956109f1d28fde47fd89fd1cc87dd2ffe SHA512 43162e481e0c688c73bb1c6eea9b2c155c3de1dc9bf2cf6e213e11fee5d25b11fe863a640a1e71bb799d9be60dc4110533456141b1b36be14c5d9740216495a0
-DIST firefox-60.2.1esr-cy.xpi 516631 BLAKE2B 70a67b1e38aa878f30bbec329c9befec544c37cf16e43b11b5b6ed5fad20f5ba0553d2fc279599d4dc363c1b3274154ff28cc54760ffd9026afab3c748c8d7eb SHA512 bf66b62269d5f8048d3778ef0cfea7011ec170e517c21eb7af96e8c36babe3b411108787bb6f65a6edb958bbf83b5046a49a910b55952d7a5eb2074420493042
-DIST firefox-60.2.1esr-da.xpi 510750 BLAKE2B dd86a1084236da7b421154e321de6595e611b9074d2a0c3c467fcbf831dd591d5a5049e6b7b649dee8c2bbd44537d301cf9b9a0634c55f8dfad74482c53a00af SHA512 2196fd2be67c1e94f0084912d804a049ac4334639479cfb75f58b439a53018350bb360b809280511a01bc9d24b9807650607ef28b9dca413933bac145119831b
-DIST firefox-60.2.1esr-de.xpi 526520 BLAKE2B 7f905eb624fbcf97f7fa5e043312b6f9a82bb2ef2b100d7eef8b69afe0e81763977ea1c1c7381a5220222ced8270a9c05d0314889040b8395c7056ae338a731c SHA512 b88b3903270221313c6b46cff9fd9f371d7b1e72d4527dcc5980592ebdf5355f6cfa8a04654f2ab780f4332a6a0185e33ea641e7ea5fb709b48b02e350eb3196
-DIST firefox-60.2.1esr-dsb.xpi 539523 BLAKE2B 4d2b5739bdf72ead5f763ec6b14f6ae6a062e387a265b499b2bd1e317157e340277394f456d0858da20ef1c1fe92d52d99bcc718491be0364e58bad585a48cb2 SHA512 0828349aae9f0dff237e0922b157fbb1c39a4a60a61eb788f02ba367038da44d85417a336abb78cceccfd682066897b60a23c0acaf05fa159d89b12bb1618bd3
-DIST firefox-60.2.1esr-el.xpi 593693 BLAKE2B 08c8f66fedbf18d25599b25d979cb851990d719356411c5f46892b6786c04c1f3b7e4bfba0ea842e02ce130490fa741d6682b5f6960adfa25acb08323c98c168 SHA512 cc2febcf1b132ede062fd1f713fa0273b78d8cbf30ff5660562068e9d29c50aeb4d6fb2e525ef46e1cb695dc530f92ad15e7c84f48bfa863a55a93d674aa852b
-DIST firefox-60.2.1esr-en-GB.xpi 491693 BLAKE2B cd9a5a8d72f975ed59736411600433c8ae3808e3f65f470e05c0f6d45199f969ad3167d9ac44799da7d23acb5a1d84d31fdb9dd04dfe2f3e75a1e16d83ffd315 SHA512 8f3596ca7752c26ad9343688da04079d6f4b7fcb27dca4e278f4f914baa5c46d9e83a28b0725adf21af342803e8a6bb56899f4dfc52ed323cd915fe303328bc3
-DIST firefox-60.2.1esr-en-ZA.xpi 474678 BLAKE2B 85ab17f191e2995ed8eac45d70d4db50e298b8696039fb2edd7fa75759d9898d71446bdc9afe744e502858c9b1057f3615561bae78c6c95e50155c5047cf8bc1 SHA512 66c38a8bbf4be07fc701ad3386185063769611dce0e87c74ddb69e2ac9a342d326709f705e8d09d4afe2c0032ad404ca6befe2a8591e36ef3f4a8080f5956003
-DIST firefox-60.2.1esr-eo.xpi 511260 BLAKE2B 0a7aac7d52c142ce7267a2adeeee7c0facf18d6069247d1ae37fc363847a957bb6d5c950629cd6c0af7d46d52c70d7b85f4cc5d18b07b73194ee5489a6dc4fc4 SHA512 da64f335b6ef373532e9026d63a70c01e3240d8fb5a2f6a3dc78e234572a4bec1aacd4f8ca75b31d8c9e334f82d31e8cb4c0f9108f8c0429cebdee48da71576a
-DIST firefox-60.2.1esr-es-AR.xpi 524652 BLAKE2B a8cf3c00743d49872f9e77fa8c3a825d7d7c73fb0c85ec9efe451312cd529efe713ce7eabbd2cbdf59d8065c513f8b7c5e4119f6ece7f93a27fc842a2db7f9ab SHA512 e6ab5074fa89c036b7ec9bf8072f7baccf9d1322f41351be7d991afcdb96e587ea9c0c844128534f46f38e4f06c4f88fe0c1d937a10863709ea102b941c9b81b
-DIST firefox-60.2.1esr-es-CL.xpi 527326 BLAKE2B f9e47bc109683b42962f8f4ef3ac3a450ff7ce6c791a817eae82c0fd26ea48b2ca7761595548d51a03d3c0458967e59dd95d9b9d7fc496f2799ff5d3e250cbdd SHA512 6afafca49ec98fd85a7bc08596c1fd905cb39449c89bd343283250f9547b18f8cbfb213f2e9dd23fcdfbdc413716572abbdeb4ca5c4621196e3127eb1eec79dd
-DIST firefox-60.2.1esr-es-ES.xpi 459964 BLAKE2B b2b751574724b07776b29f7a27a6565077620d28bf06b89bf9d9433097a6ba307c2f9d993f4292025d755aed6662b563712d4a0912ba4f77db91c2b2b3f83871 SHA512 fdf8430a1acc8cdfe4c6d6d3f5d2697a69fd599dfbf207f1802128b6333e533dc1ec4e43505835d150d8d23d4ce6528c732ef98ca0e1d022b4f508e7d1fcfc96
-DIST firefox-60.2.1esr-es-MX.xpi 528661 BLAKE2B 5b522485b324ca7c74258a3f4fa06df20badaa022892ac9e5aa6a4920ca2061ac995642f4b84001c09391e28ef065bf1d61b30cd91d0135226dc83e73261d09f SHA512 8e26ee724c87e2e5f385a53f4e04fb6d04f4bb223cca427c2a36df06af379d020d6caea937f9ef4a1353e4157f98c92b8b6eb80f02c7b486c56bae0563f13550
-DIST firefox-60.2.1esr-et.xpi 504970 BLAKE2B e4b385ecaefa9f97bc2b39b2fd7b2612c9177690b157633489897655aa5a799e9b4f7b4f8d2939a4ed9bb73895f2aa65c0959f65d5cfdc7f0a90ee8df5787046 SHA512 b13c9cb89f9dc316788ada4d1b4fa6ff9290993d26436b73bf7cc9c3913aae018918d73b5cf3a14f28edd5e8f3fb602188c7c8b3ec9e17f3dea5928d4e6e7986
-DIST firefox-60.2.1esr-eu.xpi 511713 BLAKE2B e6614ea19a7605277016865bbc4122caa0440477e44e023d9d5fc2b7b94880285b5aca7697c924a78a3c55014818c84e9c169842213e88b2cf33e5a0acd07525 SHA512 0c018b3c36910277677125281194c7deeb2df59f2016bb37f9a051fff7ead6a92bda579e3b6dd5b416ad239462b9c5cfd58a53b02d68f00c10c31346bc44fcbc
-DIST firefox-60.2.1esr-fa.xpi 566263 BLAKE2B 323e22fb85a9cf19d1b1995d331b21d370a4c2ba303f43f9ec2ced0662d1241d7e81f8c3a3e03836795214c746a87426a209e35b9a750264a680f068a4f3da34 SHA512 1c3e96a63af1aabf425df8dc8666e89906611a29829f2f2a73beec68db2d72e7b83009b4686fdbc6926ad16faa527e5990ac4b31c2e93cec2f53c3396101b3d1
-DIST firefox-60.2.1esr-ff.xpi 512203 BLAKE2B 53063222d72cccf160685a5ed207e1edd827800340fa62fc6eff6648033ef1bf6c01675babc5f3d30c279870ef527e63ab7678a617e92d3a7f4e3308577b5553 SHA512 0e42c92af27061491b99418ec5975441881c0051231cd6856f488fe7e9ebd27712f95fa37cef9f864b64f723c377714799e4655cb327deeea0a83117d29e1ee8
-DIST firefox-60.2.1esr-fi.xpi 506180 BLAKE2B 355a70fefb3498bc6d6fc55324144d6ea07bc7ba41da967bf5e43614e3a5cea1e503e31ca76ec61582bdd284fe7bdabe9c44efa119f73c38c30f23294f1c9ede SHA512 7c9646231ddcd7ed15281d8e3f226924cc3007f4e15e2b3fe94ad1a397fce6a0af8a80809f894ad6aea9a9b9f0d969c81302d6d6d22551998d5a7099a92320a5
-DIST firefox-60.2.1esr-fr.xpi 536070 BLAKE2B 26a32910d0721a75b6efdebf2cffeb90788530164d69642683101962f62245407a0b6d7fe2a85cf009cddf868a000ee4c6bcc0fd3a27c5eea55c5ac4f737ee20 SHA512 16d4d083d757fbf7e157240216710e5a0ae68756dd0debe24c17b4b58216aee776919a398cd1694a41fcefe9b62e056ed7a30d3f6252ccbda4ae14daf3610a63
-DIST firefox-60.2.1esr-fy-NL.xpi 524520 BLAKE2B a37ae4b18ee5ca9bb5633fb0a1a0e4912340377f1e89517ca5afbbe6d3efadc6b0bb2ccddb273dfd9326d1a07d9d8c613f6e8ce0df852f303d00400195e0b120 SHA512 8541b14adc3f0137315bb1f8e01f8d16774ea733b9ddcacab30c4ac5d2ec638e01bb8a78c652ec487d137ef2512d17ed783bd6ac77f61cf9aee1729a5969a556
-DIST firefox-60.2.1esr-ga-IE.xpi 526986 BLAKE2B 891216da282cc7e388346b233f239988ac14a862203f23c94c97373e06fa84f4248c0d8d5cb2ac4e95f2f70b947adcde4f5ca2b139119b6677205241a5f4d468 SHA512 80bb5da8a33050e2576b15ae89cb1a412a9bda63d1ccd0744dfa564540c9c74eddebcf4981a159fdff30c1a3f5b5896f3a155f2aa2f74ccdce22974fcddafb82
-DIST firefox-60.2.1esr-gd.xpi 520866 BLAKE2B 8e631dbb5ab964f9e24ed663150dae899f5bd63d914439b36630f3dd4b8ffaa68f4a76eabfc56d99edf4df12f8d5823a04baca5ec6d48997f227dde9deebae9b SHA512 63081b97e3fd156dc75eeab35fbdd2adaf8a56f326fb930b96364e9087f184e866c43cb4cf9605e24b80de1a393684b1b88edd81bfc1d5f3d463d147fd75d664
-DIST firefox-60.2.1esr-gl.xpi 497372 BLAKE2B 5db157c69413cef5f510c2b8a5f0170e6152172e14198a0deb92eac67ce97e05362b0850d0bf691b20a8d8617cf2b894c9801478bb6f6bdcb756eefc55dcebf8 SHA512 9c721d8fc7815dabfd7f753e4c11b877bb9d7a594c786620b0ef91f362bc9d1ceb357c8be8c1e1767e6499d52511af0450fb2de2d901bab43ca2c2a517f7db32
-DIST firefox-60.2.1esr-gn.xpi 533218 BLAKE2B 30f3f874679bcc357b032b89c92a9ec188afebe9fa457e177b9259b11916f8623ab850d1022f8954c05e8593f6aab08c2070c2d00b7277114a8ab344627a124e SHA512 3f80ac79820927f5d3b7c6848e3bae8f1d18da4a9f6a26daf1fd8263e6109d01b727e8f936240c8ee808d62ec3ca652045f49585ab8ea5a9cf83ddb163c189d7
-DIST firefox-60.2.1esr-gu-IN.xpi 590264 BLAKE2B e70c3d860e860266ad590826a1332ddd198892e4ffa11a45ec42a56c3581b97c67b85c21734b91699d991ef1c66b90d8aa457b9540279958b667113d3d2243bf SHA512 2350735c90709df3e9faad4245709ad52d9794cbdbebdecfb40c70e778d8d1f3e9735b515861856df58e3e2c787cefe7d9927fc51d44ac4732740fc9394bea09
-DIST firefox-60.2.1esr-he.xpi 535983 BLAKE2B 5193f243ba051bde88f274d801fbfd6c177d630fdd13b71bf28e7a30ca53500f903a989c9fe5e3b7a5dda48f38d74210a7e0f1e0a8653a84cea8e89a854c0d91 SHA512 a5fcf5b887e307d16b381b8c9ed535c921fc312854924b05a985510949a358bfa069108541cdd0a1d72e6e0693a610de69dd39e08d945c138a4a66ddae030bdb
-DIST firefox-60.2.1esr-hi-IN.xpi 590854 BLAKE2B bccc9162ebb1b598d664d92dbe1556dce2456fbc4ee0c93ac4142d45bb494db317fc5ad1091cee31253404785831b21ca1b420738acfad48d70e1ca055a86c04 SHA512 7f7768907fc8f7d430ddc745f487c16867dda3260ff93f63043a90d116b9d2b8c80ff7fbea5eebcb174ff4ac47ba9cb1df579a124579cc201082630eb216265d
-DIST firefox-60.2.1esr-hr.xpi 515957 BLAKE2B dbd9710e96b52366a4bd46f31c5407d4eba07e2ba595af1ab1254f28d48d5cfb6a56b1322352e35b46a80045f33ac72a735e727129d0bef950fba027295265f3 SHA512 fead336c0a605c9b926ab0c8335fcb8a4c4df59ffd375e6798805bd43bd10807543773fcaa31b5687bd42677d063711fa446133f43347f3a69c63386345d4f8a
-DIST firefox-60.2.1esr-hsb.xpi 537068 BLAKE2B b548bb08f0e5a3a3f37e51ae41d4d5f220902d9feea3ee31417c7f44af8742e7e1d475b4d965921d9953120e6ccb2199de5cf88795770aea9485e794ce8a6625 SHA512 39122073ea2df43646e90cb503c2db7b16e21f709552fcad2db9ad2cc8ec52b37bde3eb0897fa0edcf0452675e37b790572dff32369b9e1cc98c952b4ae299f2
-DIST firefox-60.2.1esr-hu.xpi 538416 BLAKE2B b2bc693907c7ce871d9ba248d57d292329cc274117da43aea014c15143fdcaded23f006414f1998a0b65e8a7465cc3b84e802ef481104c29ba016c578c56834f SHA512 ae93e50efa9cb95a9920a1bf254b151cbd43188c780705a21f67d384f7a7f2a1c02ee0fb63c49cd178c6b8fb5d0ba2e743374466a5080f087fff4f7759af1fc9
-DIST firefox-60.2.1esr-hy-AM.xpi 569422 BLAKE2B 8562d5e4910826b6702a6e18eb03e0f6b297ee622413ac513b5d507ba75e1d1592a9a96479cbb312df5c59e7596549bff3b5d1d9205c9ffcad9141c7bc286109 SHA512 dfd0bd88dbe993a4b2083880bd722b0c26e88283b110a35e9bf1f69f05e516c584338db5a7585bf6aeae6a546eb337adb7c79380f41bea3f58fcab79d5411285
-DIST firefox-60.2.1esr-id.xpi 502222 BLAKE2B add6228c2e78c3f791b39c9d96bdbed449ea6a4b35d81cfb3931030b6015f14bd7656ef7a1b62eac90779733c184020d0c51255c1acd730754fb04aae398e305 SHA512 4e4bebcccbba023f6e0326c6115de01eb96196c155991944ccedecf3d1f95bf687d19b67097a6e7f6fa160d5132ea1b632db895ef8c59fb0f59e2c6e96b84aa3
-DIST firefox-60.2.1esr-is.xpi 513264 BLAKE2B 998fcf37b5feefec731109ab3a9a72675ad235611a8e4b32a83508a219a0b9435d542da1f1a77d02d711d2c31bec68045aee4de91c9b3c798c15963c6bbfd301 SHA512 3f8a220a4db3feaca7d16e6ab488edb4f9addf8e2824cfe99f321bbd743fa269ee15ae43843c3b9c8a11e88f01595af3b66bda49fb608efd575f41f17d623cf5
-DIST firefox-60.2.1esr-it.xpi 399099 BLAKE2B 8ac0493880ba91eba2cdb254459e61c87c78e924191b3812caa2a08816274c200e214a201fdc4649167c32286850caaac69dfdddd7b5d2c1553a8b398f621a64 SHA512 1b8fa8c1359b71a36c5e2f34c8c376cff01eadcf13db39449a3462f2a68ff6c0f0ed96e4e94509f4c45f81e8913e8bd0da3bf6a355ad018ebce417eb72adbe29
-DIST firefox-60.2.1esr-ja.xpi 572012 BLAKE2B bed397a84b29d4f18c4a4070ed62639cba44cb2195e40657b19d91f105e8e8cc5c5cd32a10961a34b73bd5432ec213098f289f5bf9da7839a87e1cc068a8b26f SHA512 814c7149f21e9ce570206691ea7b9079963a9107dcf994dfe385c4cbba5ab8c55aa81dd796f6c8db4cf4232aeb122a633790340dc76a936a200952ac8e31789a
-DIST firefox-60.2.1esr-ka.xpi 556851 BLAKE2B 925fc42fc427988133b38a4df06e30b767f1c51fc03d3ee31e472769fbf19e4592a4604afa38d6c30bd2da9d2df8da5cd44693f0517a79e9de59f05b021b4c0b SHA512 3f097b225bb60c4752bf39d2514748a32bfc371fc70258566ff83c4e6717065437c43dd504af9c757983bb1f5f4a8092478b64c6c8efebd302d416e1d256e738
-DIST firefox-60.2.1esr-kab.xpi 520397 BLAKE2B 6bff05c149de308eafe3ca649f928635cbb2b2545a1287d1a175a7941615bc861d7c3423580d23ce0ef26dea3d2c69ac56dec89774ab3f3186abef835ffc3bf5 SHA512 349ad63ac904ff09a7410ff37d7d6975ed4b6b0df46b4dd3f17c8101bb17390522a3cf058432c58c3d4ed874c05b6bf35c81f462807399a390acec41dc32329f
-DIST firefox-60.2.1esr-kk.xpi 582980 BLAKE2B ceb3c59528cd199d09e3bf69f483b133c9fb44b7c0c7e2666f183b686343c8f10e5b74c2cf6ed6a8175427f8cf13ea5fecf07f2feff434957592b67b3241c888 SHA512 29551f9649cc70a1f8952a74c85cb2195967190580646f2fc4120418f925541cad84b11b3b4a18d4d1b60ad3f4ad3f99929014d365681414a8c731914f752259
-DIST firefox-60.2.1esr-km.xpi 583107 BLAKE2B ab4e9bd2479f12f8db01e338b3b84b8cbe1446143f0c6720b6ada1c66ff7f6126881a3815647ee1faa18b05d816dbf06b538b3867edbd47849fd24e9fbba95b4 SHA512 4d951d3db8ca2ed74ec9bb83cc0a350727cb71ffb165fa72b2cc9c7688e3889e7af019f8eeb46910f13e14fe8edc219f40c5c13acd50da996ee782b791ab5d25
-DIST firefox-60.2.1esr-kn.xpi 585866 BLAKE2B 7db228c0d8f7e24d829d183be1ce8b1084b6c2de76d202ced4898f06878095329f28f20d52d40dfe4eaa8f73cd798ef04296fd426a42809c1831fa4d0eea9c69 SHA512 2a4668ef159b51f7a9e0b6731a202dba39040403e70499d8c2963436eb83a6cfd7dd8f7dbbc067e584954d51be13bb1c61515f1e3a050697788dac7deb95bb9d
-DIST firefox-60.2.1esr-ko.xpi 547820 BLAKE2B 6ecaae033c6276592fcf31f32c16ce1ffbf751594c4a2fd5e4e91de33b25c1038d9b3c3a12a538c9c6f820341d7f766a57ead19ff872ba337643445bbb3aa9a8 SHA512 739497a39e2da6e3b6fee9140d164e3540fbe29013bb94e31b874c3b291a0e8ed8ee1f63da86e5e68ef1961ef4aecdef7349fa75a9a3af591b1cc20004d01af5
-DIST firefox-60.2.1esr-lij.xpi 513177 BLAKE2B 7433fc07ed639165a1de5089296a6624e5e2c6301e0088ad516e2c7f594e427ba4848f2c86052410280690182561f0a2fe39f5590722c4356c5b77e5cf582e09 SHA512 43eca35efe6f6c4c61f3b83283ae190e4b5901d5e00bf40fa41d4da035452d6283b61f17803028c8e4b17babbde6847001e7d4ebac1c563ca75baa7f12c632d7
-DIST firefox-60.2.1esr-lt.xpi 536465 BLAKE2B 175f1c4ebdec885e0e9464d078744e6eab918c0fa6e32925a0195b2f402d88cc318df2f2b9888a5ad4d2ac97f9266b0d4541c16cf31eb775b2bc2ed8093f54bd SHA512 350b3386063a529bd49030d0cde5be13c3b6482112e42400f177e31747c2a19edd4c4bb33d26875c7895e4dfe32aa773d4f02f3cdbea64c4bb6be64418ffa7aa
-DIST firefox-60.2.1esr-lv.xpi 526414 BLAKE2B 6e78687327d8fba93828599169d539de8f4f16826a1fb906a9788537e4b3c31aef3a87aa53166512ac637e677059b30885eab223fdd3de81bf3cd4a7192a91f7 SHA512 99ac1f9680bb57166b2cafa973748a2b1eea2572b2abd44fe80da475e167a42fff6f78b0df3d30e657642c7c9f5e8a878835491ff96d30b2b7eca2d7b4353cc5
-DIST firefox-60.2.1esr-mai.xpi 549254 BLAKE2B 1245f6d28d3a16c6a2ed3cbd3104eb19674035bfde76c8a2457219c3742cedf5d1cde0f67902511776a640ba6c8a26593529c10e1813a4c99f60bd44fa9c2f04 SHA512 cc31855cf4a49972bba6a807cb64f084eb4093d156b529fe8619903577ade6e37fb114e99563a5901e279cb7958085eb3fa3e97dc16e3abb01fd1f67e1b8e1b5
-DIST firefox-60.2.1esr-mk.xpi 513807 BLAKE2B 7abb877766a81b348533cb47a035213efd12f22fd6c386d7a459367431b189726e9d2aaa7890618a81279a172cb111d11bb9642363536929e7e417c147bede2a SHA512 bbfd9ed4d3c1e94b56610bdfa7280c203690ba91b6976e2ba948a0e6375c80886a86233c7140267e9043179ad876d703ba178270843d099923bb4aba599454c1
-DIST firefox-60.2.1esr-ml.xpi 598973 BLAKE2B 34679739f35860298f185a8779dff6c1be932ad1523364719d5ac493476565c9f9c3d8c7838f2a36200e14cd6f299abaf30439034869c1be70642e489d087e1f SHA512 be33c3b405862f4bc2a44cb7cb49f6cd273ee4b6310af9f63668db8f19204cacb1c3f2298e042d0d6b6bcf11bd590054c1982a98777fa94f8cea80aed327833e
-DIST firefox-60.2.1esr-mr.xpi 579110 BLAKE2B ac6310cf6101e99699fdcd33d95e87e154a5eec0d350c0348773602bd2be36327630191f6b6665cb220f25a9fd061fd8c92e36e124b8fc8f5ec918a1b2ec6eb2 SHA512 42e515596edfde99e3804cbbba7b4e33beaa055f58e0682f7f9ab8f3e95845f5dbecf3abef3613bdf6a7f37cf16c79166b123cbb5027b621e1921148891de84f
-DIST firefox-60.2.1esr-ms.xpi 509555 BLAKE2B 5deedebc4bf81af55d24e4b1ee5289c9b93ffc5470f76ea216a35b8eb415bdb6ff8234073012c09b6827353550be12dfe7b1331f97b4fcf513a6d549f546c014 SHA512 4c12378825fdbaed2c17228ff12a5669abd913cb9c56a9b17bb4cc4510529a56140058d14c22b7804570a80b21affa5930fb71d8110f45beb6b21062af4a8aeb
-DIST firefox-60.2.1esr-nb-NO.xpi 509881 BLAKE2B 8c0b393a3dc584b4049d2b09305d0f5f66178f3b87c59d852a0025cad58470f32f43ce404de515d141a91b4cbfba175d8fe1d369b087df4f9c0ad12ff755d3f2 SHA512 adadae5b1754757a0461ce1ba107ba5ba23f3f867b68d0361e2d6a5051729b06befdcad6fd8b3b63e13b9a4aa6871a0f26f3216e44d564fc809c22ff2672f7a7
-DIST firefox-60.2.1esr-nl.xpi 517459 BLAKE2B 73f77da10b4359f9939e49167e0c0edb1f2355ca8d03f8daf256102f9fe5e2a21b7cd782e29ef64c81cf0a478a5e8623d0306936ad72534bc997a9215dd4eb3e SHA512 de739eb10b35ea1ee9f058aa7660c3e64032194fc73b5234bf578ea961c29ed7a4600f1df467e5a356f1b3dae6f1223763ae00b0dc8d8669756a369736d0559b
-DIST firefox-60.2.1esr-nn-NO.xpi 511436 BLAKE2B 6e941052e77b1c8ba4180a0fad7875dab66ee3fead9b69bf51c485b0c5be2e8d8cf227f0452776d369ced1d4b8ff4e4ff02b7591e996325b71545d77ec364a7d SHA512 fe80c4cbcd5b05ce331f33c898d9482b7071c33aced0df03b9c195c375bea353877317d228acde3874c911c5ef6c946b8ddad0c113c9f0b7f8936ea5f727a174
-DIST firefox-60.2.1esr-or.xpi 540869 BLAKE2B 6e9252300e931c605d8c64631d631b5679414a56d8e9b5607d8be7e2385c424617efa01c06abca8df0892865ffc3dcc66274609716c6a2b0033ca91ed15173df SHA512 0d6747b1fb490cd8d9edc6497826d87dff7d3d6058e11a1d423f35aea2490dd9061a5f6048b24db65c6b7bf885baf3564873835eac96c2125366cdd646e87671
-DIST firefox-60.2.1esr-pa-IN.xpi 557873 BLAKE2B 44b6dba7c6462a762b3e6ac63ce11e51bed9524ac1726ef77a38ecc03983b5a1eb6e5229fdb817c6e94cfa10a751106b7939d0ffcf84649e3a12ac4f8dc2edcb SHA512 aae349a239adda60640b528020700cad18bb7aa63f0c164a0a8fddbfa7d4533b9dd0ed73997496ef7f1eb79adb38a8495d36f91ed56d9cf3b85b83611b99c4eb
-DIST firefox-60.2.1esr-pl.xpi 419019 BLAKE2B 4b62ad449ffd2582ef2e1eaece156d142b16c17121ae5837ffb67bd236d45c786c1989a38d4b0be77df11cad2e9b9709cd2f91e8294a7edfca5afcd3a6822fed SHA512 423c3368feb5c279c5ad1aab63ebcc7d28728af434ebde438ad9df8eba8ff525382f2929d9f01bef3e35b4b1fb822d975efdbdbe0f11088b6fbb753c9d8ed61c
-DIST firefox-60.2.1esr-pt-BR.xpi 514760 BLAKE2B 10c7f55ee9e6ca5a7242efbb86b44c6539b9992980f1f3576da8277cce9dc0875973f9915a23f3eb86e81b04d30563a998a941b09f7d7dd778f34bed9832d685 SHA512 3c91cec7e15e22b5654e52155d44c7449da87a5276e59860da5c8006db79126fa1d756bcec215b8e69a5f3e1f5cd907adb4aedd90ce4834b0f401180d86d84f9
-DIST firefox-60.2.1esr-pt-PT.xpi 519358 BLAKE2B b35ba550360332c4056d487e243392ef2e16b79f9da37d158106b22f37a3eaafb7b97c3cae5ebac3baea8e4f5ebcb35a8cb6994b86da7271bafd3e9124eef0c2 SHA512 090189f942d8a8befbf50ec027fc030e6e4cadf0d044bafa1c4973e6d34416eb6f4961c3d0c1027c80e56414c1cbf4340dd1a53d2d8f7b6266d7f76e1b92f4d2
-DIST firefox-60.2.1esr-rm.xpi 506044 BLAKE2B 9b9305ddab1a84d363df9e261582bc26a8f4c47df7d99e87e53f389dd8d86f705164041d4bc2bde4199999e48ea8909611c7f46fe199da0d766a3b09655cae5b SHA512 156a003bc3af6c8a437ed0f28436cbda322614bf82ab2bdef01d16763c0de1fb68201087006fae9032cbedbef98bad699374617e9e5f01f90032abcc94eb9e7c
-DIST firefox-60.2.1esr-ro.xpi 514055 BLAKE2B 0b5d3065d2f0ba5929ed65e4d7680187c046d7fcfbbc1e4875a38c725c999aa8e8ad3089c99299cf32984e4ecae318cf95d68f6c9e691889009026ccd1330acb SHA512 a591e67839cec4b31abf9cdb404f3140b891fff7cb230ca1612558bf74efee03c90d78029c0a515622abce223bd62d2a04cd156fe53f16aff9ca28157cec6d5b
-DIST firefox-60.2.1esr-ru.xpi 591394 BLAKE2B 79aa85678ae0592c6aef5805da8b7c4f072a954aa0246350c27b8f2f1119a783aa2345c47735fa08684da4cfd251c6a54056d07e6ceab4923d999eb4ca3a77cb SHA512 e394b677b2778fa2102339e0c4251005454318380863b68f547597ada1edfe039d737ef3abcfb97a75caa5e3a7b603b9db1afe852d75472852d4d7ea5e34eb35
-DIST firefox-60.2.1esr-si.xpi 545575 BLAKE2B cd4e94ce1578cfe5cb40edbf073d540c678a5aef00b1b39ace6ead1fa6e0a37238f7e8f3f51d1705d30dcd9e9bef3af78e2d14e9a65f72bc4a30797fe3822724 SHA512 05ba2b4d892a775a17b94137ac48ea525dd7bb34da4c33d0b8c10727b50b47ee799323aeb6ca7b3e76308d694806a7e17442b2fc660dc82c1f645a22c2606ae3
-DIST firefox-60.2.1esr-sk.xpi 541694 BLAKE2B 826bba811e5bba44962720b2235f5efbf98657bf27652b6aa98d6e96e497478d2bfc1cc8db25466ef12a548289ec124736c1b31762b7a262dd2f1fcbe2158342 SHA512 5413b9f3c1f7c04d40b326399364b33c94300a49c62e48a39182694a266bc84ab67fc796b0a65400462327c714d6af387e44d86a56c2f98632f7cd246a25ebdd
-DIST firefox-60.2.1esr-sl.xpi 519371 BLAKE2B 31bfe473f4c13178e810fb266269aaa9c49f4201c9fc336ffbbd842cefe4523bc1c6c8d446fd9e1b9aee522ede009b595ccd58b04d1ffc4bc8a0d12e0a1b6855 SHA512 d3826ac50f26a869c129e98709cdf7b06d800a3829621f9e5eac5169ab2e5d049ad9556e90bc956c4eaea46cf35ade5d009c8fa97339fd2af31f8786102a16a7
-DIST firefox-60.2.1esr-son.xpi 497697 BLAKE2B 0c809b5ced3e8770a33fdfd86e56b780fe3f5a261b131aa1b1996bd5939d193559ae3192d2b1db9aa1f62cc7a99ed70f874de12c25fc87354bf031ffeb058a60 SHA512 fe0e8e48c42aa55d608c85fe4ef2c795a0afb94a19bbf8752e70f578c3bada4da4a85f6152f8b4e5cac108befcfcdc9665c81fe0d99dca0e0a76176550ce1133
-DIST firefox-60.2.1esr-sq.xpi 521263 BLAKE2B e04919fab3520bd728db9a69c7b4a4d1c8b41d2a0a0bae680f9a4f0764697ecc5ec9bc1b114179fd278ac720fdf37d7454269ef7db8078a618e2ebd7b649f739 SHA512 de302505d8c574c988df9c98e39f450c27a24b4845e21cb47aec504932d754ac3fcc32e74ad49c3d5b74dab2ac313db74799680414b0c5dbed11a3683046f27f
-DIST firefox-60.2.1esr-sr.xpi 548770 BLAKE2B 31935000400ae4fcb419dfcb69bb3c7d9bf623dda5369117ed39f08fe35ee982af98226d7b92d1868a74b9d87462cd7d2ee47b1551b3ec71713012a0c675a898 SHA512 9e74fa29c4aa33ea8e90bbde249549debf46b6f360c065f6c0c155648fd01da35b137c33bcf16af6f9d732b4f7eea7c238c032e81ffc37c1f2a0ba009b058dd1
-DIST firefox-60.2.1esr-sv-SE.xpi 518656 BLAKE2B 064900b8d4f84c74406489cdee0b076dd37385f39ba355775cd069e2977f070ad25d5b5db16c90322e3b768912e53b49f08ace42676d9c063630155c1156572a SHA512 31f8ec90b71d6873d86163e0f63af1f4ba45eb5efce990d8351f849d4e06305c52b5c79ffd26ff37449d224fb599b87f47015efcb4ebf37195711e333657e383
-DIST firefox-60.2.1esr-ta.xpi 577911 BLAKE2B 2d384d19251d2f22984347c9ec7c58720d4d2aa0cf484672e36a5d5f63947d3208a02515025eb6e9233e4f02b893da09d0313323ee2b66c78d0c90fcac6ea1e6 SHA512 6a2c1339c3d87cf322a2f1ef2e9421087fc3ad4fed6f3e3dc81b7d1113e96ded4bc05d7dcd2db6f4e8c9d9eae95fedd68c6d11e7a98b9dd22b08d6f4c5e3ee1e
-DIST firefox-60.2.1esr-te.xpi 590961 BLAKE2B 70c2e6d771f8857f009e6beae689adbd49eb57c50a0913327c5f851ced7da5d0e2cc5c87ebf36c7fe52ed0e85c8fb824e288c479140f5ea6d771900e36768ca0 SHA512 8a531a9afacc4466451baba2373455cc23c9013884cebc48150276ee78985062fc52bf30e344889de23a3773dbd5b09643fddb63d8da125e1216bfc014fa38c4
-DIST firefox-60.2.1esr-th.xpi 562813 BLAKE2B 7a72847298a6164dda6cd18b1dfbfb7505f847458c6c28054bdf7b04ee78c6bdbc9ddcf20f2b48577e99e0070bb5674b1ef4058642f4a62697f76a0e15adb265 SHA512 ced65477b7413663ec52b642f3b2a43e78b38076f1cffbdad89a29b61927a0482e8f602a2e0fbf52fd175bc7adac45da923e4dfa445a452aea2016b53e034e85
-DIST firefox-60.2.1esr-tr.xpi 525859 BLAKE2B b52179232b290d648e2d2afa43fe9ff720d7b340c427a19f2e99557e85dd96a881128d8f1fd98746dd5036a6b6a63ccb1948fd4333ad5202cc8c0d6007124e28 SHA512 04e27ef3bd5685c2c9c6697beafa65f4675f014063708dce4c5ce1e245462e283b06af7d4e7d9f8534ca7be24233a8de661adad43dbd4dae481362fb1d923692
-DIST firefox-60.2.1esr-uk.xpi 580919 BLAKE2B 752c3e15de54fff45988a39ad9be4dbb31a1b1d00cbb33a6a4f4183af9b61e9434a3f623b7d8fb148ea72e1c8fd58bcca34bf2546e12030cca9a834e46e6d0b5 SHA512 457899758c0a16cedc32992877f7a62c1666b2c99a5c5d8f50a10b94e3e8a281d373cd2022e30522ef0ba60d493a2d8ca42d2ab4388bde4c856cc0cd7bd17b91
-DIST firefox-60.2.1esr-uz.xpi 513686 BLAKE2B 8ed43b76b7f9a11d5cb48adb4198057d3c81e6863d5259b38eff2919adfb754caaa516e8139c38bc4a810eb4c96fa487a5a3622e08de3460551d3eb0bd9b8197 SHA512 fbd22f3566864587110f484e7633e13e7118fe8a836de033ec7aeda6a89e68756fd673fbac506c24fab679ce40d5e805396e48154b84ad8e428c5fe8e8712b15
-DIST firefox-60.2.1esr-vi.xpi 528188 BLAKE2B 64ab7584a01a96afe29b124d3b1bf53128060a00e5acfcd314f0caf22e56574c4cb15e0b56b879318e7d11b6f1d733eff7dc41e66bdc8281c81c02e028ef0d13 SHA512 f961bf471b565366bdb3550de42c1dafead3e72f20cb393895e1b0dd30b7a5e364c598d6db9cc4342075ba226e8f3a39e1bfbae39dd003090cb427c0db3c135e
-DIST firefox-60.2.1esr-xh.xpi 511857 BLAKE2B 2ed815e8ebc98a9e4c389e471c987a707c79b60869495dd5c3aa372d5319b0e2d90979347aeec244225cd6372a8955a3ccc0a8ea4ef895e7a9a0fb1b33f8f656 SHA512 d69522bc1d3a4e9b4dde4737b77035b2ba38744454eb84e0ab2b05acad1f6f62952b4028a91dedeaaee30f36813a5779be3f468483ea715d76f3c34d390181c0
-DIST firefox-60.2.1esr-zh-CN.xpi 543584 BLAKE2B bd1dd46b8981c6adef6ca980b89a27592323ec61f9f40249457e0c7a3e6d154138373c28548c66c96de9ded28d30b50a42c280ed9082457a688e65fa55961652 SHA512 5df4dcdd4b0590e4d044ed5808a2f36613f32c24d7a766325537230ab1437649e93a907454043278791ba6f04b4b96b60211dbd32105d7775b731f61e6e0b115
-DIST firefox-60.2.1esr-zh-TW.xpi 541914 BLAKE2B 0e3cf925506073e9a17f4a8f746631a026b22d36b5af1c391f0fce61bfb740d7af724d337d35cb4558d8246e22d9352ac9ddfc840d40875820f0f9706902b965 SHA512 9c257e48b226547681acacaac714e15d3f7b9e4369977402ce409ab6ed3d03cb4e5cffb598be27ca80c45c62a6d01daf63dfda5cee5a33cda8818593250a79ee
-DIST firefox-60.2.1esr.source.tar.xz 269948396 BLAKE2B de085d8a01729a38b66fb556ab4ba751893764401a071f9f704a4965f2ce1fde43919db83f35388fc0609d3254274614966ce7c3365fc79ac62f8d8bb832b85a SHA512 555f36176c1db94580fe45ec71140d2600ab1d281dd752748b8b2d888eb63b1f0b8b219b624a7199abedfe2d5d64b2f2c743fb9628b41c3ca438154c40733aab
+DIST firefox-60.0-patches-04.tar.xz 120496 BLAKE2B 4b4fd58a91d8fd9603c3a7bdb669f275f7cbd7b9add7c790a2e326f46a540e77a390e9da3f85e81feee8e5354cb25c93e140fb2f721cdcd0fe197b7c24ea0091 SHA512 d8aaa1fafe22dcef8cba609ba6e2d322c18b46f4d3b91897696651958108f887510a068295b55bb21d84b660bbe7574a6533a57d8e26f96d2877139864dba828
+DIST firefox-60.2.2esr-ach.xpi 496840 BLAKE2B 1419b3ee223a1e5505d6d596068f68c4d3f6df3152112b877926b23515d33f701aeeeac9ccc7a1d2fca828ceb314a6e1fd2fe4c1619283dbbe763ff05a3e35ac SHA512 765d6859e15189d410cb08d42ca565de42f56413e7d4fb88c1d500eaf199c32089e2dd4a567681e9ff083995378a8dc220a46ba7740847096572f4de7a49c1e2
+DIST firefox-60.2.2esr-af.xpi 487308 BLAKE2B f9cbbaa1d7ddd32f13d0d0181fc669bf2602dab285733e360d3304a3b19ef4e6d33330c1b58e3f8918a77050f2e0767e8acbd2baeafc4f645820d6a249f24dab SHA512 b272b4c3a032e11db1db44be0a2c3e0734b0a2029cf5cc130877ee6f288b4c7c47cd676da7ef369d2835025540c03f676f4906c6655b4e738f9b36635bc397dc
+DIST firefox-60.2.2esr-an.xpi 520494 BLAKE2B 304bc120fb2e1cc3dbf9ce138d9c69e27ddaa8680814d66a5e86c0ab1fe1ef24d684549f5bc71c8ab4bcad6285fdfb97b1683a2606305bc3ca7f07f1811cb3a9 SHA512 5263e17bb9ae3ae4bfdc8952a749508fca145a5f1fc80768df5ac69328d7f34d37ace69068b18010e91f300dc359b653d62a227c66b2f23716c97f53fb34ef5c
+DIST firefox-60.2.2esr-ar.xpi 547818 BLAKE2B 1f0e1645ad37b4f6b6a89b22d4af935ebb57edf73ee5b1e641dd03e12fe53a854d73ae8b9771d1a70e6b61870e1c0c70287428901587debed7e29afe41f376ab SHA512 e8748fe47580e41dd3f8f47a8d3d28a069b65f161340d4b183d60b3016c6822d559f7390c2b8eb09e9a83d005a93bdb7704997cbc5585d1bac97cf910ccf3077
+DIST firefox-60.2.2esr-as.xpi 530719 BLAKE2B 4f02b2671a8a8ebf65d8fcad68a706f9f607fc6d7eccfaed79eb7339c3a479b1476032478d2026ecd1815d9c783f4e11df09a2b2b4068942645051543c456ad3 SHA512 3ec556467464933c1060d3ec8e36189e205082d826f49c30f6e9d8c99049b7cea951cd9dcbbcff585a51c4badbf39495946310a01f4c35c9070cf2205f6ba157
+DIST firefox-60.2.2esr-ast.xpi 508650 BLAKE2B c0ca69499f4387ace206e214fc818f25f6a4bd3164ebeee4b3f092394141c82bfd80d454987c51287577b1b07ace82e23d6a19bd6830b62d260a7f239943f446 SHA512 08508a24513f51fed657904279aeb079bdb41484e4f8726b0bb096e53ca62a8e57aff82e7ca2484f521961ec107a600fb262307b5146de690021f1db7ccc3fe8
+DIST firefox-60.2.2esr-az.xpi 524745 BLAKE2B c952d62f4a40b572551ee07e9f4aded116ef28a27b94b112cff0f5a7440405b113a8a3c1755ba43291fc7e07810914d346aef303ba8fe563de25ba0d779a3269 SHA512 b94f5b8c53bd238776f5d7f3c8070541fa733e3bad7f8f3571707b5e74a004dfa797fb398f295d0b9198cf82b893313474ffa3beb276e9a5fdab9081949ba7f1
+DIST firefox-60.2.2esr-bg.xpi 573853 BLAKE2B 4272e4d2358ff2942f6ea7ef35ed2e38375df97de9c270959edeac4be26b6eaea25c49e162919a03a5744631ce331a9f919a2b0dfffae4882444c88e944c208a SHA512 274fd36bda8a851b60d3e060865336b01af76cc4f1b96b6398f7ba20c658e4632ade35c49c623abbddae518bbde6482f80bc4f035a776ec07587f38b98995370
+DIST firefox-60.2.2esr-bn-BD.xpi 590419 BLAKE2B f542129ffc5027a0ed30ef2f1cd06c0a736fee2d57533f70fb8e2bf373658f743d2872dbc5a612676a58adc0930f7e28551dd9585d86d8583f8caa257a9cdf1c SHA512 2bc208b71409b9238362ea894e4fa8c840d06720efb212145bc26431141cbf12ef1265f119ef9e01aa7f1edd42e362ab022c22c4fe7c883fe9cf676d06a96fda
+DIST firefox-60.2.2esr-bn-IN.xpi 570864 BLAKE2B eb5ff620b1da6785c7dda177567cd36aa7b9fcf927aa858a68a28e9ba3b7da48e233e165baa45709636bb28586ee4b42a9116f1758f588e2313c9b792d81607d SHA512 3c8c6bc67b20d81920740e50eaf3cc1e1de169321bad3cf4690a4466a95406b5fcdfb5bfa18902e224c05463f5a9e9e14ef18170b728875867cfeb644f4589ae
+DIST firefox-60.2.2esr-br.xpi 512027 BLAKE2B f1c14314b2c0958d72dfab2c885569fad6a1628e46d7daa4c01117c78340a650f45c4c63464d318b41ef5ba9fc7ae5683baf3924d67b5457564c8018affc7684 SHA512 b12a9d95f0751998ecee6c6f740bca5704c0a002b8845ba1508cc2e9fb7fd7f96a4122cb1745f7303832c2612a6d53c03c176e4a0660fe146b673025a6ac7e0b
+DIST firefox-60.2.2esr-bs.xpi 514715 BLAKE2B 4f9af6ca844cdc350a65e5765819335b1ef1220f6e390178bb672ae408ab8e1e847cd83978a666e52f9b98622f1b15e6b4dd9d06c38e7c23f671621bb07bb04a SHA512 6aab08b50e23e08a0fa4757aa882912ab0d72beed41fc1beda2f1fed2da151f4d886c77cab7fec4c19483af2b8c535fa5cada60b0eea651ed25d1248eb815f26
+DIST firefox-60.2.2esr-ca.xpi 525257 BLAKE2B 4033556092ad6d1ccb17a761f62ffd5363930fda364f4e16136e4527eba66bec84c50950fb08e3df946a091e0b4fb8952a5ff6ada2864801c3199eecaf1fbfc4 SHA512 c90dd9c3e7131c3a862b256c7e12ce9f87cdff8704ad7ad506f7e6a4b55abdcc6d11328348607b44af5b0bdd1dc95dcbd685effcdff3c05b85ea17c525751e8a
+DIST firefox-60.2.2esr-cak.xpi 536290 BLAKE2B e807f6c70e2d6117d2b4f8b3f6aefa0d7bcbb5f59f6c1290b54bbeb21cf62c563b69f518b78f57f2bba3b826cffadb96d75e4da077ce3832eeddeb45ae342c1a SHA512 ac5e589ed3bf915f595695d2c4d6904dca54cb3fba613e4a133300d8d23ce0a979d316918a6137457f2ec73fc81ae8fd68a4fa539156f5e8138606572e3345cb
+DIST firefox-60.2.2esr-cs.xpi 531798 BLAKE2B 978cf3a8d7744b46e5d45fda8b2e64f782dabdde8f7885b3c23209a136a86ee1cb7886ecb0d10b82cbe7c1518a8cb44a5fa53b5b63811541caf20c15a9721e69 SHA512 3d9cf4c3658d3c12930c9f6f7257136ec6039d8dd5c836ead013c1298b80fe3ac2d228b407d91ac3ab2b08f8468d654442d47754e0eabb9ac8d2daa470075006
+DIST firefox-60.2.2esr-cy.xpi 516642 BLAKE2B d52a497f74071e222e7ca840e7cc00f7ce9bbb51e88589bc6274cb020e29d510d1e62ae25020e8540339e1bb887d303c64ec2ee6c0edb51ab4c46b52435336f5 SHA512 4dab0a446c263048ab0049b0c47bcccb0d0b013f60aea4eceddde6f1f74e74a37135cefe019a45dba9f7b17322ac49851ac2813c7351efa8f1bb528ccd9280be
+DIST firefox-60.2.2esr-da.xpi 510753 BLAKE2B 0bbf6ec9fff43bf8a4b72fc0f5d50604ddb9ed79e3e51a010bb64130f8b2f798e65cc58081bab85325d02941e6acd0138efef9faa1282939a2062bcbcc7c7efd SHA512 582694115b423660b2b188e2cfa8609e8aa2e1b7095f0d111751944976ca98d068a34ec52a4590e8ffe7fb68ef92f9dff60911e9a0ab1e5d3fb873263b391be8
+DIST firefox-60.2.2esr-de.xpi 526515 BLAKE2B cabb9558d950185f6e2ef61e4d444b7d4d32970d2ca6072e29d47fefe124222812f588119298e5ecec267004f8b0781e68ad2a0edc7f86d2d2ef32f9f7c666a4 SHA512 db828f5d57453b297ab411f281c6cc860ccd002157dcf861cf064facf89b000c140eea4f2e16b6c95bf589d231ff01eb9837c4a9fb11f71edaed2cd25fc24606
+DIST firefox-60.2.2esr-dsb.xpi 539524 BLAKE2B 6b14736997d9bcaa849aba3772e1fade6db3d941bbaf84baa9dbccf184d4a2e1175224d4ae28932374abf191885aa510aa056cdab7476a42e564b4cfc27ce845 SHA512 97efc6252afa3998241408cc2bee39976a48063507b9128f8741e4f25ab0a294686b4e6def23de887165b5d804102c50dbccdf0aefd44d56cf6b1a0a8a2eb2eb
+DIST firefox-60.2.2esr-el.xpi 593691 BLAKE2B cd036f3f0416f72826131961877eee40cb560098392f13693b89aac08f7e80c3f93ac763ce33e55b5c9be076b034501649c84fd7a096b6c1cf1e8a31902c4af1 SHA512 bee9683a97114c8398ec962ee4f1eee58bb48c5fe677591415bcfbd1cd156f6d5283f366b9eb1d5b4d603bed4cc6f500616ea7850f807c55bd8350e7830b7999
+DIST firefox-60.2.2esr-en-GB.xpi 491694 BLAKE2B a51e0374dbaf356c99759fbe47ee1b9b05d08e2c9970e712ffdaf17fad3f4cb54fb03852fb5a810eb04a7cbf31d85376227514f903f48ec3c77c75c47660a19f SHA512 68b4f8ed5a155de5d296f51414d822335182bde0506c55d1b40adb46b5863c8f1c4f30566b715d261e997c0b83020e5b98b690cc73736b20ae35302222d1e21f
+DIST firefox-60.2.2esr-en-ZA.xpi 474679 BLAKE2B 2bebace02ad7a29532589d2031598db171780340001d4ff85cb322ebc0d4c2484085cbef4f8159f139e21905433827651d841d2def44b5a0b230e938a4aa0cf7 SHA512 89f1e74297b522d82ca709edf9b4db7059fa4c6c2661ac8e911a4522af1141beca5768eb3142053b045ca84f4b5cb02dd6d3d3066aa87f85d3ca3c8bdf8ee3e0
+DIST firefox-60.2.2esr-eo.xpi 511267 BLAKE2B 3ddc82f3882d32ec28fe45c9bed8f717ca5f79ec65bd26e37c33527cb471fc26ca282d90d8387e7a1d589f90289ce224321f753608b29abb75acb3b328952b4d SHA512 653c7607deb0d93ae20a3ca717889086e044d9db547a7f8ca8417b6f130880b4ae507d9d3edd00be93a4aa4afcef1f2660e10f6f0ad5705bb6bbe65f4cb0e6a8
+DIST firefox-60.2.2esr-es-AR.xpi 524650 BLAKE2B 6bed69f6e63cc55d97fc09127bd03c68da410500949b105c17adb54416ac4ff98c3977f107e546b21004be8c86ec1dbaf7390926e68ad879deaa65bb6c741474 SHA512 35e4a6e02058cb05f07d3b8b80865e093d6d78af8c75160289bac260ad0b4a7aba060c48c8242ac10905e36f86000822abb501438d2900ae0a714f19ebdc8ab3
+DIST firefox-60.2.2esr-es-CL.xpi 527320 BLAKE2B c8f9a35496831800fc1462e1714f29f78bb9f68ea69d9e215bf8efbd14f9bb100fe39a9dbe6b7e7b993dbf957024381e50dd2a9a65b294d5bd71a123ea830e8d SHA512 910abc2a339ecb9c95195b0dd2c3f2d1bf540e3c09241f58016559602871ed75a5c8c9404e2eb1eac72c99a481874802479f7aa968dbf4b058286a689883e228
+DIST firefox-60.2.2esr-es-ES.xpi 459958 BLAKE2B adff22340542af4ac47ead2a26eabd601620bde1087d4f80dff517b259904f2dd6c80491404176ec3f49769a0bbc77b65948a7d8cc538914bb3c47e722927ba9 SHA512 035212fc7f14a3efedb112a6cd4a3ecc77cd414eb2b056a37ab558d6f8fa3f6896a41f7a193b8bccb1d338f0baef7c1638ec34895bf8e34d74ac63f915c9d388
+DIST firefox-60.2.2esr-es-MX.xpi 528664 BLAKE2B 006ec7f57887c4b95a831e666c2f2960ac4853d31f05373cd4f3f499d7b820e776f5cfaff27b3202316eb005c9aace6bc9164a4bad4e9555f48c31cf8672b40a SHA512 43c39b80725f3c82908878260493c1c269230a53196d237604075e6a45b54d0764fbd6d049fa032f7a03c4902265ae38da0e9c1f8c9372fa8c4d873f24d82e27
+DIST firefox-60.2.2esr-et.xpi 504975 BLAKE2B 7927c499db43fbb58c1c5ce0811af6bd73359ae255144f09e76a3937b54a513b1f2221cb7107c7c868bc4f06d318b8d21f85ea805e1008c2a03554469f956b81 SHA512 7e2e41635e5b37b036f5f8205d98c077b698262b2a84284c165b5f9011b575af5b271570f91fa78997c256e2bfbe5bee091061bbf36710e21374548779e81c7e
+DIST firefox-60.2.2esr-eu.xpi 511710 BLAKE2B 5d421483f8fe8f952cf8bc1abe4331b6d929c61078660ec4b464b03a51010ae145d422b81dd671c19001e25f35726813a0e1c48013142f7c745f96f6d0453f77 SHA512 da8c25758c16f8d9c0161aa33e27b6e9f0481ff2bfbc7ee1d44da5800e18fe43225ec983a73793980559d53e40312399d98850943a9475994f0375a0b0d49966
+DIST firefox-60.2.2esr-fa.xpi 566262 BLAKE2B 25a67354c0a50272d8be4ce73f17f98b23f5b4dcd253b54f56da81ed263d809a211218ae1e7e967718b5f03b1e0e37f680bd257e9c0ea7a5b5be75844daa0637 SHA512 8de060ceb8fec5f5774dcf3822aa7614dc771db7907abddc56b7d55a998b7424978b8ad37b8307b8614307d3134279e11fb78093559347c431358c7e351c4edb
+DIST firefox-60.2.2esr-ff.xpi 512205 BLAKE2B 4e406f005e5373f208be15111794225995a918f4bd025d543bcb31a2e2c50e2a20800e99e26579e6b5e6fa8bb623e24ecb88efff1d9d9664427474a1df96d67a SHA512 7778c36392aafc558aa0e6fd4ab01b73ea6d6b151db9a1833275857f6dcc4fd164e7dc38aae20ba64d25dffde25c6e27c2510dcde3a764253fe15c4ccae97260
+DIST firefox-60.2.2esr-fi.xpi 506177 BLAKE2B 1121ce955b60a7e8ebaedbb5088f29ebbaf34c3d4337f5768493b883ee3d5565f559f071461a4ec58818997acc71a40f2d299bd866900b2586e0f7895edd1ad6 SHA512 656d84677627a38e8c4fe275d9f50aa6b702bedfad9a1668c2501a57d8e73a5315135a0fbeb78d41bf86bf15c1c85051d538ed7d50826dbcd6bbdd6c0a132d63
+DIST firefox-60.2.2esr-fr.xpi 536072 BLAKE2B 6132150464e929a8932423c3af286f4420352369fedc1ea227c92dc179c98235f7fb7354f5d911e5006a8ee9c1ec73d25dc4e8f9a0f92062e6e242073b883638 SHA512 18732efa9435225757ee42d72ffe52a63457ace9963f92f10ed16d1a4728f2b5d273bd1867c271ff3b6b74f4957ccf069ec1ae473011cb4ceb526b0a8f27c1ca
+DIST firefox-60.2.2esr-fy-NL.xpi 524520 BLAKE2B 118388ff5283d378cfc4584aa73a1ad83e768f255c0f653739dd3c5388b430413f069053a963076369c5e37c7f2166e4141b84a76bfa577b4305d1c301c661e7 SHA512 acd8ccd151f46c9df7a48b9ed27f2235411353f49027fa804dd87d92c9bcd641747d268e72848d282163d26100af17c8ca92fde70cc06e10e78a23c254c9cfe2
+DIST firefox-60.2.2esr-ga-IE.xpi 526986 BLAKE2B 6d5a9070e7c6ce303229b7a5fbc754593fd491468305713c3e29654c970a1a29a24baa3939c122c8a1791d6deea268e0310e11f8e9d0bf2e6e9ec2f8fe038339 SHA512 08b9c58fec687df3ba7e5d21542bcdceec7fef61e2d9af2e52bd4a79dfa4687bdc7f627d641da3acad893257ca5199a256bbf24491917330dc26d65ec8d4fae4
+DIST firefox-60.2.2esr-gd.xpi 520872 BLAKE2B 53af25e18039629b798edff6e4d2cbcd62380c561af0f0d99dca5c2caa979f8b5bffe94e57cddcb8bd11ccd3b01410a74c92afec6670f50fe0e642d1364f7f30 SHA512 128f1f6427fb1bbf7944560803981082e4a1b7ad023ef5a88612375201202f14da636294dd074de3c3250f569d2ac57c7462352a6d35f0a2bc98c3594fa679fe
+DIST firefox-60.2.2esr-gl.xpi 497371 BLAKE2B 6c99f56d2684ab6ba81356289fc664648cd370c2a8aa8c18831054ad65f5cbc1c8eef74130aa4d66a35a2f52de47c967f4e4b0ed342cff71319a14ccb88ca614 SHA512 c1ffad84b3c316cc3e7c80e13d5b8a6f4de2cdd012bd1eb17659adb8c8f355870baa9d9098899dbef4b44df40f644871fb12b5649823b1f62c9081cc00cca8c7
+DIST firefox-60.2.2esr-gn.xpi 533219 BLAKE2B 4af69b43c25d73910463fa13c332173f35eb478923db111c45fe802d90bff8ee727278452da019ae40ab6e7d11511b6d0cf8799114c77c6629b99eced7d29d5d SHA512 b9057b916bcb11a4ff7cba279e65079aca267c610806b24532238179b40788fcbf6e049be01e8373d1b094244b1e1cd9ad97d705ab7e1595516b21e92843d2c2
+DIST firefox-60.2.2esr-gu-IN.xpi 590266 BLAKE2B d35528b9cec4823a93b8de75f65357d3c92477ea850434f144083c8c4d54312ad0081944b5846ebbbf15b7453ebb66f4aa54eb4f0a53853e02466579c5fef99b SHA512 1952e6e48df6b12774d4fe489af2befe1be2302b6d8b66ff77015c2b327ebfefe32d2d7b77e47925d35da33acd6ea83769c02d0a039e719ecb92a1b9fbf01218
+DIST firefox-60.2.2esr-he.xpi 535979 BLAKE2B 6f97ff0c81ef500837cf1aea144eee374db7eeda06517171cd45e8944fcfded14df8778fa06ea609845102fab50cba457f624cca8c1e532816dce92bd02ef69b SHA512 a3011daf6e70eb93049f99f23c9202e4b8f14714fb01ec87b482fb243d1250baf573a8d769e6ff81c44eab9dc6b2ae712f984cced11b0c37c0f4bdc279b8c6b5
+DIST firefox-60.2.2esr-hi-IN.xpi 590870 BLAKE2B 2159373d4ff2ee878770b3779cf4ab900dac03c7310459c77ab5f8463d21f76b759fee78d6a1ba59256e3c49c3d96c82ee7d2bbfedd47d43e50d8a70e930923f SHA512 9cfa7a1ffba8aa18813bd98536462aded0f2e6d77721b933f6ab8924cdcaeb4f2998a0c86b742afd66fb26766250edecdcddd032ebeafe197c5305eaecaf0acf
+DIST firefox-60.2.2esr-hr.xpi 515960 BLAKE2B 94d89bff75d4d4c9ae2c1a0277285b47ab0c1c3d85f6f2485229f0ab3281622039ae4940c7a11c09dd4363d35bf8654e7aca4a2bc9ba94688cd4eb529ac47a11 SHA512 c2b7cd4f41e6f0f604e0be59dfcec25e39fa89d1753f53245d59a5f427b6ccc91333166e511437d4c23d7a1b7d6902391511caa4a2d0053d683e1a4a2845306b
+DIST firefox-60.2.2esr-hsb.xpi 537059 BLAKE2B 7bc112d977db006bb4c527dc35002fa1ec9f47b065ac9c5372382a5048b2c9edc6cf4914f8a1c42465d413a72089f9cafd6b2e6001065cf880a35832354c7b08 SHA512 41f08dfc6f0cc3ae1be34187d04c1cea5b12c8648b98af8f9ba63c944c75e61e9ddf8172bd514f00e403abd249bd8c4f2f89955426a7ef17ea95fbb5d4256a51
+DIST firefox-60.2.2esr-hu.xpi 538418 BLAKE2B 1c139cb48b3805a259bb120607ff098b77355f71a1c00512ba16849b7c58f236993dfc1faf82e63f649355998edcae60921722d668172f348288c219d86385b5 SHA512 29b00f4064001d829093a6d0570f69e3555c92f1d9a22d97d72d311da6b255c91f811ca436db3211e3f764db0512f225ba06591df4b766d469ce3dc614443bed
+DIST firefox-60.2.2esr-hy-AM.xpi 569415 BLAKE2B 29f5e0fbd7050d3e7a94f0923b9e8520e2e9ac48f6d5c1bf61d09d239f326d27731ddfa939c2ce78d921f0746917ed119f6cb6a4640feaaf35de4b6b6688650d SHA512 4912736ad06ea845ba6b7439176afa18b627527ab94ba66873a73b88884e8ad7af0e6cd0f22fd3ffb24d4c6d646fda0d51ad6581b0462c8657f218c12daf7ed1
+DIST firefox-60.2.2esr-id.xpi 502220 BLAKE2B f3f86a1f32e33095825f97effc4afeb12e6b3072739987e8614d7a7da5b715959ed63512092d40613621bbe1fe1a7f4d68c6f8d8108e44b1152fa715a3cd4039 SHA512 c5bf5527a10150db03588fdea0958cb3c332cbff730b9889f265e333ee652db1c12255242019a92d7f402e9252d62900228451c753fcbf391447e7a842f27632
+DIST firefox-60.2.2esr-is.xpi 513271 BLAKE2B 51d2f070e806afcc8b4d127d18e013214193a504d05a87ed32940df57afde6e1ecaa059928ad35cc9a02fb7065355306c1a69e50fe7e086c0f07eef6044e724c SHA512 b469007a2ae873dc483e4f62b2014cdaaa16e99b18112ccd8db338fb604e9291a0b87732b23cb94cd27ae291847195e99c3be5ef1f456fc402e8edc3c76a96e1
+DIST firefox-60.2.2esr-it.xpi 399096 BLAKE2B 7ee6d12d89c3f9e82427b23a8a8e20add5e68413222199f742333eabb64abfeb48e102e93ec38d260d37420ea6ec31437485845b6c2b4e4f17a89d04f9adc82e SHA512 62a4a45ed227757c4ffbceaef280976a9dc4f7cccbefc221705a2806a42d8f59a8c8d8a2d3cd45f12dcd0de103f2a3402549e4f376238566890ee65eb1d5ab47
+DIST firefox-60.2.2esr-ja.xpi 572015 BLAKE2B 2d01e5318bd27ed43373744e67d12a1c47f1dd377bb81e541c5eb7d3d952c1aa067caa397fc1d4fa3bc097c5096e63947fedfce4a85d8094c8ef1edcbe03e7ab SHA512 5b6e95abb652ed6ac143198646ef2214342d2c0686f4241aebf849ce1b419a40f62dbfb310d64ded325731f7e973ec00e1d61384e2cbcc5eeb2d510705e5bff7
+DIST firefox-60.2.2esr-ka.xpi 556846 BLAKE2B 6f9e6bfe2051ee3466f85be872fb758ae9df6fb552e5f07a333efb80e4c6eef54aa9ebb16ab58351494316b501117c7635768f8a2a9fb20047b3c7802981289c SHA512 d07566979d2fc608796dd34cb8af2d253c666a2af3436c894910b216906000b6eabc938ca839e67af2af08a58d4767038145d6ae852e06602b6683c95ae2f823
+DIST firefox-60.2.2esr-kab.xpi 520399 BLAKE2B 6beabc507e12f3cbf524a808d0de3133097aa1425c5dbdd6f0b100b8dba459fc342ff21fe34b3781ed32af8a4a7183765c5d4465a84428500febcbdd3764794d SHA512 48954ed39479de7620cee563316c3605a999c6e4ecdb42b7a874292c6f9b16266876befe906cf95313d6486221b23fb678bee64546eefbf82081c24853892c2f
+DIST firefox-60.2.2esr-kk.xpi 582980 BLAKE2B aebaa7e4eb0a4e6acd74ed3d892eee161d85ff62ea51218f0c2e61950f2c4247cfc3eee6b47097dd7674c73e3efc21d478cc11e5d9dbd56878825823a250c2a9 SHA512 b610071dbbaa7ac30b45022bd8a558f71451d0f2a72b8e2801ab3a57f40b524a41738197846c58955ccf4024bbe69adb4b506258e530f79da3c3470e9b93fb18
+DIST firefox-60.2.2esr-km.xpi 583116 BLAKE2B a9efe205c83486729f6bb642c64ac551c78755783cdcef57b213fea8dfc6f02348f180d5c1e1926748fe0f37bd673f8506263945a15b74b92984383fdc8c10da SHA512 2260342e18c9cf8dc33bd0622a249912d29d3466a960cca6f029e43436534919755a1b29de13725e73b1e0e9726719666eeb78293570542b12ffca5a42239c4c
+DIST firefox-60.2.2esr-kn.xpi 585873 BLAKE2B 72c0bef61647e1b770fe4677ef435140d4291d5a52d72e2cad904c004ce5657199aa6888ba9c477d02bff0dfea5d7491a23b43c0e3989b161bc076d842750ab1 SHA512 f55fbabcdcc0aa3269e33c0c7b03cb04cd1a26c54e78c8a29910d3108ed55ac1f9623f8fdb3b822fd586d5d798aa2d2306fe0d42a109360142e564b63869a9a8
+DIST firefox-60.2.2esr-ko.xpi 547826 BLAKE2B fd36278f959a63ac7904d2451cafaa3761a087beb955947eb4fc1b9061b4c68756a167cf9ecd5fbb1b6d891bdd7c2e0610ffd3754b0135ffce59c85adef746dc SHA512 6572453b84e57dcb8626b11a438e9b498400429fa60f3e63e4f40a10a4272a1fdc94798e3c6d4a7f58adc3ff0b442348e0da4b70e17002f5ee470e620d1d8c43
+DIST firefox-60.2.2esr-lij.xpi 513176 BLAKE2B 67a9785fe379dcdbd4553dec6056efced59ed58b9ba26b2dd1d08e13e4754a802fd183dd71524289a78f1a33c835cc807258421b0603d9a3cb2266610e64c4e3 SHA512 fc1a7d1eec6b49ffa8f9f2f6067fd2c207a6bf4b1f80211877f266102de342f19c75aaa931b463a20520a3df417b451cfd115868f15ad9560b1c4034b5c7bab8
+DIST firefox-60.2.2esr-lt.xpi 536464 BLAKE2B 6fb621867cf88de1d81f04f50e0bccf663d4163b8ab25d6a1452a2927b119e0825ee61a747cad931d7857714f3a2deaaed9543d6755d353930be9c6f63fb7f2c SHA512 257be3fb41cba7e12b4de8a1118fa3a33db68aae8f176651649cb39c4ccdf8986022f744d23f3998cbe14ff1bb4ab60d83e516d287f181b496a58662af476792
+DIST firefox-60.2.2esr-lv.xpi 526414 BLAKE2B 381106227a612310cf2ec4e65b509d0324d4e367100739f2ce1073946acf7979703c2f749929614f5b5338328355f446eb16d4c3ddd2b2c70fbccc9db3c21bdf SHA512 42aa2caa1eae883abe3a40c9e07ff61bde7f4f9a7c51962697b23fa3504399d792e0739efd88fc51a4e5c579f877a8f665a0268ae44b5bed122a539c88de9bd7
+DIST firefox-60.2.2esr-mai.xpi 549256 BLAKE2B 637ef1886a4c75c4816e6d7d231dd09863f8231c1514ba26ba2b257519af19b26536ad518d04129c2c84f57f03aebcc5d96cfa35543c1d9ebc9a39e99ef98e90 SHA512 f4d3b747cf3fddf11b00e764550d4dc28b896c04b130d2a3bd5841588444d843e7d51ef47fce71d90c110417ee74c6a6bf5b3f00dcca738b3cc44c8bc2fa91ca
+DIST firefox-60.2.2esr-mk.xpi 513807 BLAKE2B b94dc767c3bd7b000655e7471907f08d52b2b8c7530e15d25e2091d611818c2b9b65b16aceacd8591dc298ee056cb40162f2ce91d35a26b8ca29d287be02a8af SHA512 df84f8b3bce96b7307d82efb53adbdae4682996b6145009e19e8928a619aef13869046558592909722ececa8819f10b28c7438ea83ed021db648cc0cbf9f8651
+DIST firefox-60.2.2esr-ml.xpi 598976 BLAKE2B 2215a66ecd8bf5d21f92f3596985a211dae9491f3af093c927884fc55d345a2a16d1660f7aee628b7f1189a3f729dca9d7fda2bfec4d22373e575a9f678269f5 SHA512 504880af6117e2a5717468618a530093668589fafb269e893256c6c739f956b08ee75e9da97222878b783384b7f972d51df2d515e71365788a17355bc789836d
+DIST firefox-60.2.2esr-mr.xpi 579120 BLAKE2B a5fe2a820617ae33d2757fc0828517b40a2641ef2af0637e78418d7807498f3a8f8d35bad796322db90b0d89f4d984f8b305034f32ebb2839d2196e4b21b717d SHA512 e7039205e325ce0a7de414672c0766a336f599a49e30decb949c5779e6ccd2a86732454d6a0d6a9bb413a8cfa4b5428d931d47867d049cdf1acce380287d1618
+DIST firefox-60.2.2esr-ms.xpi 509552 BLAKE2B d6f3da9fffd81157fc3003d03d466b268fad1210484d6fd4b8afe29af1a79e1ad42d9ab2cc200b52e996c18ea254bbbf6198c13b587bd78a1b77dc8d78e787f5 SHA512 f2595e52f56cd4cea214ee21bb08b8bccd3f10de54c21391fd4ee5c8a56ea0a175c51d9f5a67df8a1b1e33e291c754dc1e73be1fd443f7abea19aca9592fa8a0
+DIST firefox-60.2.2esr-nb-NO.xpi 509890 BLAKE2B f6e675b493d9accfd89c563e7cc0c0e0add6607add2a3fdb7253b94f0897946ee6d3d0a72de03c6d1f7bfb8efb885b2d034820d50797e5995190331062d915cb SHA512 c7498353385587ed73308482ba576df03377bc8e51053de0eff08fcc0690d5bd3eedc674f42cffb1cfb39b3442c8b676e97aa9795e093d25014ec60d76311bdd
+DIST firefox-60.2.2esr-nl.xpi 517459 BLAKE2B 1b8515023a169527e82361399b0eb70b87108301a4f3f97180cf1b469f580d8195bc5582c3b8194682fcf53b55e8f09e18a797cc00d9eb8a014c2f9bf3f1a9c0 SHA512 8d6d09a4a62b095ceebdf4190850482650e933d606b1709b123e7e7255127bf8784cd582f6c3be005a2f043c87d45730a4bbcedb4ef3eae8377d8687f6f8b6e5
+DIST firefox-60.2.2esr-nn-NO.xpi 511429 BLAKE2B a009d8a6398c5a8b717ca719f99e06a58846a93822e3c63417904e91915754d98b93c8a3405bdbf5d8b2516cf4df8d92e38b75bdaddb6eaea43b4e8390ed474e SHA512 4aada7b3118afea2cd99c3a9c21b6208a482c384b3ef11cdb3c1bee2ee3ac27b59719e601c97cd5324586236771e208b46ac4c1c2619523f1982e8b7daf7bf04
+DIST firefox-60.2.2esr-or.xpi 540863 BLAKE2B a0f52161d610cb87934161cfb225dda4ef2ee68f933adb775d7fdb78f377e61548e38fc380dab31a9fb6097b6bf0b24806778c1b2d26bb9f0f88a8ae40cd0438 SHA512 b95c0a064870fca58d09a9c7036297a4e1f1b60cd9f80cb2b0d333a3f96aa229d34f354f4fb9ce16c83c82653e2ec6ea9b0322f2c1cf88e492f324d8c92f8b39
+DIST firefox-60.2.2esr-pa-IN.xpi 557877 BLAKE2B 02a1a25df3afaf36a5a033cf675a3a2ea5eb690d871f4ee5ee325b9760d85f36f40541b54665365df07bea609d1820cbe98bbbf2c02c87b998174b305a5a56c3 SHA512 0b00529af679ebcbac41192b84c7c2d1addf298d7a2c563724ccf14eef464730be912214f3f25eea60c774ee4150200aa938223ba50922e017e760bc091a998a
+DIST firefox-60.2.2esr-pl.xpi 419023 BLAKE2B f173e5cb75277f509cdfc2b82011d4f6308097675fb25263f416ffdf83ef4e351f2b2983f9c4fa3e032e8e50812ac7f2e83cbf4d4c0efa7ea87ef5b52ef06649 SHA512 c74869a5150572eee28e78f3da2bc563953afef10a55c38ec560d5cdd9f52f57704166fc86b03255699fc1273bbef2f701f130744a57fd0ecd081b48bce9d850
+DIST firefox-60.2.2esr-pt-BR.xpi 514759 BLAKE2B 8d16aa88cb3785e59652ff6323215cfe7bf1d150496dbd2e4af7411e85b86ea8289a13d1f76dcbe7d88d6b3d5741638b3d108dbd9a6a00b454d74377997f4748 SHA512 997b3488eb34ff71546794961144d80b24cc7c7f80e40aa5aad61456457ba2446ac6948456bbe441a3f01d87019fc561fbbfcf3c8219c84e3509148d09422ca3
+DIST firefox-60.2.2esr-pt-PT.xpi 519361 BLAKE2B b5bb415fd5160603dbf6adc203d5dd9727ede8559fc80f64ed3d13a24ec76d7a9bc31c29fc3a8a4a1b7af87166219a26a3f0054e0e777f9ce0de5e197b26fb52 SHA512 68f933a0eb131adc3977f945bd0f8344ceaab67686e303bb21ba633c2161ea27af353f71a23b33bf7c01a29ad777260ce3b688c66a6a69e72c001f63a3b5f80a
+DIST firefox-60.2.2esr-rm.xpi 506037 BLAKE2B cdb27e8a315eb85726fc629d2f8d6647df7819b0028d10f5a1c4e9a951554cfc4f26a72ec479aaf8cb3ac47e09bd46b1c4deed582c00f68c39f055d2eaac1b00 SHA512 8245f6b2abad18e4c8c81ff95b5a23d9a38d18ad22470773b02ddbb10bbdfe373838d7ddc6977acf9769a7ceef555ac6b8f80d0585a4e35bdd1151d184e4e0fc
+DIST firefox-60.2.2esr-ro.xpi 514050 BLAKE2B 60a21a7656dbd9bbbd98f450b32752f3de2d805b29653d1bdb7a6f70ebf3e1b9fc40aeb6a66c61d42058557e1d07e90ce3f3d3a648befad601c03d691547f59c SHA512 76c9298e0460c7460f71bb3d1b050b906808f4377bf1eee7832ca90f88fa0ec255e5b77da3d62999942fad24aa8acd921e56d39892889ad1202d6e70db365d4d
+DIST firefox-60.2.2esr-ru.xpi 591397 BLAKE2B 3467f438dc6dd3dae7d3bc6e3c842f17dce48fc2253796c9c8aead4d6e24536ecd5c5695f00ebe3a4fd1d572bd13d02f7cad2f8e1b3534a9b9dfba03e1338611 SHA512 cc17e4d3d5f10b89ab47967ee5f11ae7ef72fd84b595d6d7c4faffe9862fb02ba3882affa86e681d3e8eeafcd37f5b30030907a32c6a5803027a9597f038b8db
+DIST firefox-60.2.2esr-si.xpi 545572 BLAKE2B b0ebdc71d56cca6ef7f3e8be9583005096c9041c2f02df37cbc5fb62475befb6f7c100fa798d107dd10c8b7558e650e2c405ee5d7f19d55a0aedcb992e2f4c77 SHA512 d37c7a61e56a7fb5cd97621b3be8f6eb52257c2ddf148eb9af5848b8278d245f78a20e11d05696f6bd6d2d5ee649e4daf06b9c894bb7a7d2b44625f3a7db69dc
+DIST firefox-60.2.2esr-sk.xpi 541702 BLAKE2B c517271494f8c267ee3565119dde72dc34e860f37c04eb064b5d1f4ff426dd0c14b7d9157e59f52b64ef4d4448c5f5659b6f06062fca0eb4594c337faa7189b0 SHA512 647243724d899ee070b67f570b7cf6b4f12fa34d86a7b4c847c6a9061892b68f9553e5b481c6ca08771462cdd5f342475f25146a6cd3916afd19bb5550eeaea1
+DIST firefox-60.2.2esr-sl.xpi 519378 BLAKE2B 8f352a867ba0e4cddc4512df33448af376477c6f4f75f4983e319f1d60311a5cfc3e5d4f858e8686c8bd7f73df1141f6084d0ed9257a18f54174d0786753864e SHA512 d50e02e2b94fe6cff6c06b80b58c892b7297bf5390bfeb92598aabfdafc9bfb181b410f3e39db4fb17676a6edab79bd4f6d12ec3c741c7d19670b4de4bde5407
+DIST firefox-60.2.2esr-son.xpi 497699 BLAKE2B 85baf0da0078c799a6f4acb95a79fc146522d727588ab046099e84c7f1e333ad9cf8a35367ab0984d60f9b7c49e37c9fdad8a7cc118451264a0ef7b7326051c2 SHA512 40dc45bdaa45d3be1328f8c40af6d6ca5a5cac03aa91c8c96e043bdee5e19aae97e45570bd4d36bf5731d87e827e94a95af3002c0c0b0b6248e4d522cd708963
+DIST firefox-60.2.2esr-sq.xpi 521266 BLAKE2B 30d8e156a5e00a33adf790f4504a5b71420b7366b1da96074823e3d59f9b7c579d89b9a45cfe7f8478cda0b4859de0f35378097a7eb20b25c25a34c9a71cdbdc SHA512 b212928722deba9b53f860a25686b5d1778d98ce3a43e0dd6f75f5d9c5a6f87a7f36f1c920ea9110b798cf4783307d324c6f200ea925e2106d860de2425730ae
+DIST firefox-60.2.2esr-sr.xpi 548771 BLAKE2B 635c9f8e2893f68b15976bbbff7b511c87150ba3c5e3f1577cd8c9567950dbd5805a12edd124ead44bbfe32afe9558d7567d3ac682acbf427047281f8ca8853d SHA512 9cdde47b8df9bacdbb25b8907739e5919cc997773f50b9dc0dce2d75a89ac62069828e1fb31eb520970ed8d517ec6896f13accb7c2ed611a6497f4ad92e82375
+DIST firefox-60.2.2esr-sv-SE.xpi 518661 BLAKE2B d0a3d7a86fdff6f11e236591b9927bdfba10f836e6a504f9390a662cf106fb2daff50216de865a0ca0cf0acba60a5c392fd4a0311552dde401d3c4c6abeed544 SHA512 855a23807f65a01bf9437dd3fe6558f4167ecb1aed5bcfdb4ae712cf6fa169621989188ab01ff2e7b4db20f9c922f39298f1f7e16a067600f7f14a6346ed065e
+DIST firefox-60.2.2esr-ta.xpi 577920 BLAKE2B 631e58b7abe7ab4e7cc5a0e8ab5bdea44702ed0fa3c83cd8eede05f858bbbe5e9159f011e8fba6ecf3c111b8c16f7b34cad5c060cda3c922d0391b77d3a69f53 SHA512 f62e11112eb261f9ccea2bb8c139b3b3e8bd07c4dd473dc3d0b995edee9d59750375c0d2541da1740e9e9efc305b7f365f6f9fe3c1b78bb0b11d41ffa1bc8b09
+DIST firefox-60.2.2esr-te.xpi 590956 BLAKE2B 487532722507d3a5d3a881b87223c7b14ba41796e97e27afa487872259d193881bc1105bfc33b95e64261341242ce57edb5c3ea8f29cac29adc4701590f82c52 SHA512 1e7d29805274074cbd8d4bc32e65b29ae2b8eeee1f24a9c2a9c794ec09f2a4825bbb078819ec065aeb55688613cfc3ecaad3a8bf7da0c43d31f863f84fa680e5
+DIST firefox-60.2.2esr-th.xpi 562814 BLAKE2B e430665bf824c10152b87219011972b1f5a0f7bb562139db001fe232e2efb89f78cce437ae25476c0e7b0b7fa6ee720e2c944dc03eb2c48f3cd2a03a20030a92 SHA512 9dbc18e5338176b631fb7487521df3de6116777ff405e36b1cd6aa4513f5a2b3e61cd59e41539a6342e81fd9165fe0a537ac8a65dd38083f1a220af25ce5ef89
+DIST firefox-60.2.2esr-tr.xpi 525852 BLAKE2B dd868efc371c136bd23997f48c80ecfdff7fc7d78175ee3b18b2d23a1970e1f77e4e9d88e5cf33b67bb0b096da74d85269d148d0a1f645b574954ae199f63e9c SHA512 f397ee33cf8c4b7dd67e67a0d52a5d9fc2783beccc7e38f9e0f7303a237fb31949c4e368d27eb9ae8a623f5fe5b3faa40653ffa4ab1067f5e0ab2c18142e539b
+DIST firefox-60.2.2esr-uk.xpi 580921 BLAKE2B c423a2d1707c91f4b89501b101f7e6289b41b57ad42185c08c87583eb69ec9d8f17a86290a80a6e483bdd97e15c5b68eecbff8ac1268a54fe2d52093f4dbb9e3 SHA512 db48969a713a92226aedb18623a59b4f4ac65b54d36abf267dff476744cc4b35c62e03e2c5a79ec16847df473f57fc1b4fd2252e36b3d0c79f2ab479f01ce0ec
+DIST firefox-60.2.2esr-uz.xpi 513689 BLAKE2B ad18cfd6d3be7a6ced237713b67ccef04340aed712a9bb7bfcb784cb7ef7d009756cfff5b7a4de04fb343edd01282855cbd8cada2447b4bad6d21e81c67d8c66 SHA512 9eb1c8bf583677d39b3de8985cf908363f775c1c84af88fcf3dceb6fa14517efcb84c21f12c6fa18e5ab641a8c2480f3a81e15bdeef9341e68bdb50878559c80
+DIST firefox-60.2.2esr-vi.xpi 528190 BLAKE2B 27026450542b4c642a4ca29a79ef933dab1011b41e915395b60a4e1975fb085665ee4fd8d03ddb7c97ea5ad5f6058628542ac380d574ca8044542820aa2eb12d SHA512 281fb799dda1ce4a03a7fc704af82f9856a23f1182e7c014107d1ff53e45a43ebc0d889472e8bc0b08dfeaeb9a16a78735c3cfa91399eae3f0c7ec3a20f59f64
+DIST firefox-60.2.2esr-xh.xpi 511856 BLAKE2B 70194a17a8ef8dc0bdb37ddcc829cfc7ad6603c850868223afcf20b640bdf85956db53f760427618381800095bb2a2ed65784f007f35cc18b20548c15bba6548 SHA512 2b5eb358b21b5119f7aa7a421cc1cfd6ba3ea311559a9869ae2ffd1965584296671d0ce5539c4190849ef197c2e81a347d610b7857128794c23f5b180185b566
+DIST firefox-60.2.2esr-zh-CN.xpi 543584 BLAKE2B 95b242cb974b96613a76808f414d0a63c9a4b57c9b752463d80c65b0869645823bfab8478e52e859783b48e9632ecd65843ec5703498f3efdcf00dca0f0a866b SHA512 9f111eaa621799c7aa37f8a0788296582bd60b8bdd424ced70785d12f8653d957be2ce35dcaea8ae3a7c4fa8a54124b36484572e3b354a0c7ce48da34f7d4e0b
+DIST firefox-60.2.2esr-zh-TW.xpi 541908 BLAKE2B af43fe323f6113b6d9cdda1b3a106559648fbd52751bcc28df15f7de1189a36e3dce1810e213f494922639b75c44e504e3fd3df06e26258affc92810929c96d9 SHA512 991aaaae66bac24e92cbd00314caf9a226cc1a5509e0cb812e8bd7f14d21d842ed8ec2435cab0c36c4a785b397c15f98c70d92c83790a1ef5a47a97ad01b5200
+DIST firefox-60.2.2esr.source.tar.xz 267599268 BLAKE2B 2f5dc77e55905a0ff7dd8868862bb0586420e4037bb264abc5abfec14c48c7778612be169f137056eee433361971be836ba424916c9013d7fa19db657dabf097 SHA512 8149ad0c974a70d8cb18a9212540235089b2a3470edf4dab5eece68b2fab2c10ff426a8a8acde5543b81f847d751ef4a286c9aa8aa33bb7281b429e95d292ba0
 DIST firefox-62.0-patches-01.tar.xz 9696 BLAKE2B 4154162d2502378473d7dba37214a82ff146cb0be33f75c5c1bc9c1d344eba47e005df4b8512219f1b5467b5285405da284e29e86e2f773fe181c06c8cce6950 SHA512 f8a2469fc8b6094a44f396dbb87996a599ce6379c57507234d1ee87a82095809d4094fa89ce3a115dc3068c1a52056b4095941e9664646ef497c629f11c105cc
-DIST firefox-62.0.2-ach.xpi 446319 BLAKE2B 4a75f3e49600a17a0c83f41f1401eddb44cf49cc9623bef93830b53abe8ea423c9e97d0436f85b7645bbd128161b0671648746bbc4f7eed6d5c521e42abed0c2 SHA512 c898035cc7138fc22ab526b6ae167cde741b014d2b94d3b886d5d1f542ec8a45311bc379de3857afedf8545978dc022616298896d18fc50867ba2e6db3a49a3a
-DIST firefox-62.0.2-af.xpi 432296 BLAKE2B a0c62bc0a8d2a40598da1992d804b8051ce1c7d63f95244d506ae7e6ea5f1afc0ad6bc2afab97779debb9f87520a439a9d0a3c4ea14683d7710d1a43d042c37a SHA512 2a258f44b01f3dabe6d9162559152f254adc899549aca5a9a66e9f537ca08874411a501d4662ad7d891e266ba1b9e26f5a96e7f3afa909f0227c47db5266d629
-DIST firefox-62.0.2-an.xpi 467502 BLAKE2B ced18a2649b8732f2f8c8db5d094d7259d815d5cb367f9cbf32146facf72675783e921ab9083d6524eb36575e03e79e0827304d4ba30aca777d1d0b0f943286d SHA512 b7cc14ee6d4e3a4ef469c59f6b309b0ec5712eef4118fc7127ee5f4c3f5aa787cc81e9e52e9473ef8130b6ba0e7c681d7bfcf6457704db96332b2ea4e40172da
-DIST firefox-62.0.2-ar.xpi 497988 BLAKE2B 49ee9217a01665621ed4190434b67ad1f5fd6988a7bf5a899a9cc989349f58b2352c41094dd02f5a60bb09f76e23c3f6b06221d7849a850cdd13301b0a10d5e7 SHA512 a2442c0c075aeb0b7814ad0eb6f436e17b4cd7e7164e2d911da76e570d8488d9076c9b8c66168bb91e7de728a68dc07d2549d3e96594f4834f11882884c8769f
-DIST firefox-62.0.2-as.xpi 478314 BLAKE2B 1c9c5aa14f6eb2af1094cc1671f0b5a71359ceb0d597332b69b07d6985a6529b7d2f5412dce4ac1951ffe3a7e673f57609ec726e6f64c7ce267a28f9188af9fd SHA512 1fb0ff65f619d60be958284acff6c4d19b6cefcc04cabab8619cb5087e0f5e856cbc23a85947b40f63359cec5a2e1d3ff75290aa261dc6d6f0a87078fe732740
-DIST firefox-62.0.2-ast.xpi 455184 BLAKE2B 551875de7639cc28326023d4c53e53740f68afb2eb2c959ba352380856354db71e01531f2d7440f4011d6950d50f919f09bd14146f4e92469a69d3bf3a470b29 SHA512 138023248373d8cdd3d9c2cfd21cf07d34016ac709f0540262c62bc5fa8ef027683e7721978a8b71c3bb34114f784f8cdd9d0e9b1e790da40e8057f5b1360e02
-DIST firefox-62.0.2-az.xpi 477133 BLAKE2B b0015b6932b2cc9116ab676fdac9f03be4d36be8077c39b3d7c5e7a4089c36790dd1d4b5bab1b50fd8f0e9124a2f9aad968e05ff5a31a4842365e368a4d50302 SHA512 d19b8c9facb0ad842bce26433a158f27d3427e65c8e33c578d0b719429e63f69023a088968e0bb689e5b5be574f5b9edc4fb9d3b010121ffe307bbbd54173e14
-DIST firefox-62.0.2-bg.xpi 524205 BLAKE2B 351e5d8cc948e083147f3ddfaa42378a1d550c422e0099406298156a7221ffcd46465d12ddecaaa43f279c401b5401256aefa2eb9b647dd94c4e953e14f86096 SHA512 c6049786e37a41646483b2b12c44a4396b1a352971ec8d157b3649c4091de3c66613dc6f1609369616e39735affba8f6bf5c72bc13ce16e8997a1abd007f0f83
-DIST firefox-62.0.2-bn-BD.xpi 538602 BLAKE2B 8e11ee7ddec5f2a730ddae4cf2030c9f65b6168b0d3453142bd695fbd929be37809e666cafd58610eac1843d6d0a528c6d628d19a6f92ea858b5cd43c1159367 SHA512 bb9e546731a6f2452f067b4f4f700378925577dc915bd0d7d2536e04755fdfbbba1cdc66fa45f7f2729d2f7040c8c6fc0fca99cde63e1c95c10540c2b005c8bb
-DIST firefox-62.0.2-bn-IN.xpi 509954 BLAKE2B 48f255850e1bae24b920e138e8796c88e222b36c191e6e332e780ad48c0c3c3aa38cbf04495b1dc4cd3de57260f46afb8340dad35e5cf00776f2dd56b2e6213c SHA512 ec20cb19752fcf433b95c5623a5207fdb56075cf8900447c6269257ed745d2c05661b186f4f897f0876359017697566b58ce00558978e56220876c777bbddefa
-DIST firefox-62.0.2-br.xpi 464404 BLAKE2B c47e13622b6438cd5c158e3bc0c652b1194b60c3a71e68204f04907d115e558bbcf9da86bb26ae8343de0e458f77447e98dea1e3053f06a10cd93d13a3a15f73 SHA512 8acf5f08ce4eb4ae0497e4701c769a0e1d409c736c3896fa6c5d3cf9847d5f947777f3a8eea0959ba263e4c6cfd137fd2ec98db44d53faa826678b464edeae79
-DIST firefox-62.0.2-bs.xpi 466252 BLAKE2B 1f84726188910283073a692ec702a7d79ca16aeb5ca6930da5b91cf09a41c6caf1b921da143c9fb519a782e73ca7b5bc61670095da3c1ccbfde4299acbbdb9b0 SHA512 0019649877ad598c3f6ab8a62d438819043b6159b09995f872c3acfffa4321c7602a3a792a98ccb0491cf7f52f30734da9fb222b09cfb1f8798bf659b8a4e833
-DIST firefox-62.0.2-ca.xpi 470060 BLAKE2B cd836d0f6715430cf5f1a5bb29ee1d3a5aa35302ea25c40fd9e03684de312a8128a4bc9031e0970be900e41745d133a42389eaa6d55daaf57cc48349ca96e9be SHA512 9a88a21ffe696cdff4316b02377bdfedf2bae48856dff78082d8cd13b98acb2d34cebc1cfd77740f7a6bbd9ec755a4f151972d57c91dfa132ff70751aff9dbc2
-DIST firefox-62.0.2-cak.xpi 488841 BLAKE2B 26fa6e636d9b4c43bc8e3666de64cc529cdc71b62931ff6544f742c45022358e57f8b0601b2fabf11c2f234c22527b6f32e6dcac0a3b26a807953451da246825 SHA512 da045e12b5d087ce8317e04022fef0f21d23a7163907b92ed6d824bdf08a17e786ae8c51f353534036103d6ac46b8754d366f49a753717ef6a09499fadc35fd9
-DIST firefox-62.0.2-cs.xpi 478357 BLAKE2B ed37f4a39f8f7b26f106a4b55cd79fbb86720b9b2ed9db1e02009631f24ee0041a3c9a783cfdda87c6d05210e298d5ecbd26b188bab3c209d10bf702f575320a SHA512 3628e26ff908720f01818b304a27c130ce137329e2a15809a40f5d84e73997659a30d522cd3bb89b5086d35354f68d8fa2775f3f5174cef68a19a63add3944e0
-DIST firefox-62.0.2-cy.xpi 468861 BLAKE2B 31e8780e95eb49300e15e7ea9d3a48772664104845adf402a5ad74caf4ff96a1902a1848142c95b838959e2f07fcf3588f1625bb4d0a690ad6d50bc3d65ff193 SHA512 f8f009e23e4f4e9b70cdc9b220f2d0df2a17af27f28e5193a9976d91f74c59b28cad01f9f22c7108b5b304c4fde8292e1644d244da9fa009379ecadb20b16bf6
-DIST firefox-62.0.2-da.xpi 467292 BLAKE2B fa805301b88a1058ba6d87344350b402a913494820718db82ea5fc3312dd61bd85aa351fc926f1917c2a40bbe62682ad5745de560827c51d004e5700f1ade664 SHA512 51ecf374aabb0037fc93116ee970b1271d73c51ec768c27fac37294564a0370c365060ef128b684483b2760c6277abf432dc9937d2f8919d8f75a53949b0268e
-DIST firefox-62.0.2-de.xpi 475935 BLAKE2B 429cc6cb8e044ce9216acbc4bda8d55f4c0e4d6b29dada0d22d82f900f3e3ff9c307157d1177544696a57aa09897462ce310bfd1e4e9c060bd4dba12df91c29b SHA512 23779fdb5e5da7cdfa74b9905911c1580359bdb611ef2c9d5f8d20b01bd8552630c0ee28696e2b8cfd1c3407df3868f72c7d26cd5058fcbc01bc09b1c4101a89
-DIST firefox-62.0.2-dsb.xpi 488172 BLAKE2B bbbb81ffeae9958e18a2513c4d8ca160d267c9695fd76867013e95eceb8a4110ef1e4438d49d677d1bac4a3135281af3d145165d80fce1e13d19bb9b2cbdb2d7 SHA512 b3565483bab6d360034d5724d4af2cb285d919aace678ec335a22ebad4946f90a7bae55e3b7306cae7e409e7d983698e2099a44c5c29cbbbc5e8d724991c6426
-DIST firefox-62.0.2-el.xpi 546431 BLAKE2B 43cd76de959b21e0c2033ff82a2f3afff639e34b03eac214c87eb948d6886d47d1bfca42752ac663206e2a61be1b3dd1047e4196fd9fbcd7245fa167113ed378 SHA512 44315d85126cfc71bcad9a62710edfcdf94093eee7bc7373c809a823484f0a9167f5773d659628422b9fe26d90170cef945adcc4dc1cc18e531e53e6525fddfd
-DIST firefox-62.0.2-en-GB.xpi 436175 BLAKE2B 0035e4a9921f844f6ff3470cd2c900110f4215c975e998c7e7529901184d1479a4f1fbffbc9db99f4a6cfba2c6ed0d75e6cbdd34f7e36ad9670eb6e29ab2b8c2 SHA512 c9aa04274473da19b0ade15249c19153613facb81e90301e0516014eb37aa2de7c322d0ef4e9c24b95b9c4d4d0142ea0fa6d5e6855c1f784f26d8d9e8135340a
-DIST firefox-62.0.2-en-ZA.xpi 422865 BLAKE2B 6e9f48b3f6eb7f8ff3fe47bcd8d43e37a492ed1aac904427d8b51dc5f4c13427e75862cdb6e9388a046f309aa09d45558f827ac0a5d67c4775e05d509cd17035 SHA512 13e3f98c677a84bf46721cc9b2f0fe32df0e3054ccf352536f53dce1f96628c734425ad5286c7584134295eee8ecc703968af50f06037ac61d1853a4a38d6f98
-DIST firefox-62.0.2-eo.xpi 466537 BLAKE2B 656126e4f2bf9db68a1944300629cce1bae0985c5cd561c536ebb31024c5c7e64c5420fb3f892df7ef2120195e667bc62fc27f82e094dd25d1e52bb1a4a2cee1 SHA512 84435b40766d22f19c694469d150b5e7789f28195fce75539bf3050e1afe59efd3a87c1c402962d84f6b28b5d6d931bc90e75562561662b376634dacaae25c56
-DIST firefox-62.0.2-es-AR.xpi 473516 BLAKE2B ca71ec8cc86b25b399e63958646f2c03272f3b43de8ea4d3e48dcc04c5f9f1178bb8b86601e0647256523de67230c123a5deddc52f3164676e45e170a92c21f8 SHA512 24b116249996c065af87a53821f3534bbf807ead04b33ba46f120e26da8a14b1c75b00aff3b69c2b8fc948b7f10e2bdffdb4179f0bb444a9e31973aa2bf2d6d7
-DIST firefox-62.0.2-es-CL.xpi 473984 BLAKE2B fdc4cfd8f12b3a99d2dac296015c84ae2d05bb7778eedc3356498b9e4c95a9138617836e3d8132336feacc303fbc27f2df96a6e6aebe4aef06a9f2a5de4c7f9b SHA512 15924beb6c37d336d69a65df2c68bee5fcfe53edd37ba7c47b889850a0aa08c74254df9fd4cf70887fc56db0856fcb0d8d8e9d7c45a788b5f6f4325b6163795a
-DIST firefox-62.0.2-es-ES.xpi 414983 BLAKE2B c7f19fb48da14f590e8e3d7c7c20908f5bfe3866f1ec8355e4f3ad5ac01e3021da21b7759f5ecc21f04cb082238f3889dbc2958b606996a946ed90e26fcb58ec SHA512 525a89724c8fd76bc079c757e2d69b9e7bde2ed92981d3a4368542e558779d2378e0caa81468591fc96e55da7d1fbe155d08b76dd404d0dae2d2a8f9acbbdc37
-DIST firefox-62.0.2-es-MX.xpi 477954 BLAKE2B 6345700fa0b63468a280b1374d42fb3ca072d9a214f77b3aad4a303d6e736a5bccbb72a98c237fd74c092116e6fb8c903b1c770500f3c8e106a3d5eeff05ac44 SHA512 f30dfe898da5a244270257184dc28e55b9a1cc7b76a3766ed85471814e464ae13dd43ab03596d5d0f2bdb9931e5b42990731b55b96f6ea609b59613fc0bdc234
-DIST firefox-62.0.2-et.xpi 455378 BLAKE2B 5bd672c8a0bf63e3c2ee336ea9fa442aa94c7c0ee405d7fbb28c55d3d5c7c87dc058aa59fd020673d5a926a79fcff71472ed8926f3ba936efb53ecd014a26dc1 SHA512 3dd8d33f648e1152b78ac76bb391a11dffc96d231fee4b777c8500473854dbc2e793df78bc6bc1f6e66324d8330822c487e93a1570e9862cfd101ce80d5d5074
-DIST firefox-62.0.2-eu.xpi 465901 BLAKE2B 1e409b15f2ce9425cba85b93407fc32c8e2b4e240211d1c7abaf41797744dc3c35b1228790f10ef2d6eea8e5cbfccd647308f2acbb6195b97aaf1cf8dee2afe4 SHA512 7a6b1256bf65d41c9c27458d2be3ebc74771dfd39bd284aa4e990607fdfeb19c49ceea4f52767d566b65a4c36c798d9cc18fe7460bd9a1df280aa3fd2499ca23
-DIST firefox-62.0.2-fa.xpi 514444 BLAKE2B 04cf4fbb31705afcf3d126bed71c2ff000cf157d13117c463a87d9d513906a935d4b8c73c8f31e0f62c51f5c8adb65a11bd0c3ac79db5c28fc6d62cb9a2b7785 SHA512 889e2c450bc0201892b395b083ca22dd1e630e887b9393323887b5b8475636a46c09c44462168b7bf1b78bcaf70b9ccce47e2f13fb00fd77414f50105e9efc15
-DIST firefox-62.0.2-ff.xpi 459043 BLAKE2B b519c2af14267dd0bd1cc8b2a0703ffa48881cf6867a5e772fbadd93b40024f303e35eef1e4302c0612cc9d1597b29035cfe2181108a9aec47135bc0ead18b9e SHA512 bf7c3fbef3b02e1c4e3bf6021500b3ce6b59f981aabc6077d772bff66d3d239c56178b139c21673bee9adc8a2d2f0eea70371aa7a8575a94681eb481fb67731e
-DIST firefox-62.0.2-fi.xpi 458680 BLAKE2B 855237cab4fe145004daf18706f66a461db5225c727e01a3632e0bad207936721a3c6009737e9db9b893745ab961241c5f8b6cdbcd6c519d0a3f1b8afa8e0c0b SHA512 e4367eae770cf2b47e68c806f41f7184f7c49ec0900858fe557b6ed9bf7ab305fdf4225b33e6cab86711319442e794ecf2009e56a167375be2ecee32deab951a
-DIST firefox-62.0.2-fr.xpi 482960 BLAKE2B 6ca28463dfa36e4e85da8c27bd65c2489cf256caa1da9c04b6690d45a07030b1fe907a8899df83e78f4ebdbaf319a144a87bc378c876888c866c8b99a0ef458f SHA512 b946bcd72f470ded0da8a7c198c03c8a20d38990cad454682afccab007d6c92b4afce4490c163cb612b4a3da6fbac4fc9bb0622cd998aa231e1dca78e7bc4291
-DIST firefox-62.0.2-fy-NL.xpi 470424 BLAKE2B af06da104519cab2d6b5a10d0729600340f705141beeafd6bcb7d5e9c378a1f67b3e4350a1f4c61ddc9f1ee1dbebe3e7adde673858ec2fd3f801847ef43b8ba1 SHA512 f233ffb15370ee0bee2a033a996fb7c48b9a8ca3a38cbe8bd7731080b0030da96a4062fcc791f9eb5b9930530593c2330f7cdbb02f33abcb81ec92bc37fdc0ee
-DIST firefox-62.0.2-ga-IE.xpi 472261 BLAKE2B fe8bc3a7e156dd634ee269c95d89a69570bc4388739e253ad7207c3e83cba86917fed2e247031ebb79abad9729602b8d6803f836f2628bb1e54f2fed2bf42c69 SHA512 2efc12176a8091d9eeecb35d6c2be79bf1a751f21d8dfc211b3a5cdb7e54769a7adacf097fe28e7b09574b3f23b101b451571442523069969bd415f698a85fc6
-DIST firefox-62.0.2-gd.xpi 473971 BLAKE2B 06a9f34964abd2bcf8965b96742e3e065ec4605b30588e7d5c2afd21788e48df905be14c8f97d3fa02b3b10664851f849e8f86390ef272301e34e2f4f6dba7e1 SHA512 951f2904372b9f066d5c4b5b4616a77f63368b9334779b0c0e6e70c1d662785f5a996d0d8170539d015429065d81fc0187113517bc1f060a5cc9694f81c66726
-DIST firefox-62.0.2-gl.xpi 451821 BLAKE2B 51e7fb733b57d2f572a6504ef8703a98827823c5ccf64a0a0a8db86f7a8a29cb38d4d30c36aaab93b94e6f3b9a8b7ac97fe80e6d143e572115b6115408f5eef3 SHA512 3cbf4a7d60b4f4e25fe7a9eefa18dffc348ec3d91b2eb53264856bbea154029d3fa6b36fadccb73d9d23137962e21c8b43e45900c70bad4e7b196fc6ffd94e5d
-DIST firefox-62.0.2-gn.xpi 483153 BLAKE2B 170b22236a10e681c67683f321b1f2c42fc2308f552941aec8446767b17dadb65269ed0a929506fc8ae82739d24530ef8775ed282c6656f78b1f4c0f18e9816e SHA512 d33718052780cdd44e85383a9ab51372bc306f3f9f8c136c0ab35d0e97303ced9a5e040c0fcd600d1aa3abeca18b3966d809e7398d65cd742b1db7248f05fd4f
-DIST firefox-62.0.2-gu-IN.xpi 539984 BLAKE2B f82cca6f0746ee58b58aee92bd72d9a11e56380a0e2fd7e7ee3e5df4ae287c2b47db147dc5a522640724642e374a418a45dcb823358dc6d4a10e759bc5e98117 SHA512 977c6e8f853fbfbe79b195b5642fd4f0076001a85572107becfaebc27f09fa50aff4418364ca703240534819afaa4a89862e973cd73b4937b74e6f876cf3e974
-DIST firefox-62.0.2-he.xpi 484819 BLAKE2B 60239954e5be25d68b6e3f277d7154bdba6aaa6072a998f698174616362c2c7a3483ea47ea22df9e15315d7bae9b75ad3bee0a09d9ca0f2cbe98fd165e03407c SHA512 44e4d7f73c3bcf2ff049be97e429b6434402af0cd0052fac775759a9cf3693d7cffb236b1af1da05c90a81b8d5de56e9c255027ee331bf0bb58114d5c12b2cd7
-DIST firefox-62.0.2-hi-IN.xpi 537125 BLAKE2B 9da54bfbde4ec9a8da2cb4b64e116aa48c5fa055cb9b3ba603a8ddfeb7a7ef5a8d9c888b7b01e08e2f94c9b232ab682361f8fecd70e702934d65335f0e9a4509 SHA512 64b30bc77120114974e0c256c07cf4bbb9534b62ff54e679160f75e2d3f38e90f7b882270ee02759ab20805ab0d95294bde2eb64bb713442874caea82b50cf14
-DIST firefox-62.0.2-hr.xpi 459607 BLAKE2B f5522513c1fbabd64e48cd42600f2fb5cff27f10bb937f2e956f3e5cbfd2da2ced4cdcc9106829097a34eda82ad251a8d9e7854349ef16c441aad7bd4f863bf2 SHA512 dd1ee3137c5dfc3ecd5789d3bdeb1dc29b1ec8a9acac6971a6c831e9ed3bae5dcc10fd44c09733f38a3a828a1ff6e09b209c84624252bd6490c1689547cfd8d5
-DIST firefox-62.0.2-hsb.xpi 488118 BLAKE2B 0f7ec922406da38b9f4ff7d6275a33078eb6ac218dc2c7453d0af6a40ed6a1759b0688fcab8860e01a71b5c1529f68c5a9382be2ffdc4a139208cd5b68556c8c SHA512 8579b33b2fbffa51f5c0c7bf795cec5aea91e9a16d62360369d79bb75b00bda9207f01e752392522dc775e8235b8eb67310e2cda2bc2643f4bfe822d58d94399
-DIST firefox-62.0.2-hu.xpi 487432 BLAKE2B 0e492dfe3b3def23f46153d74c1bc586d8255758bb73050ce6e4425d4f1874a9ef3fecc1df59ae300ae44c7e1750eefa4c40f87df990a25d04c5fbabca45cc2c SHA512 3fabebd6451a2c3ae82489eb18a7b27f644cf52a49ca513a6bbdc057b6270101fdd5f3b2d7d3b49480aa4daed98bea3a36d3ae3e0f3f581c68e824f52f74ff88
-DIST firefox-62.0.2-hy-AM.xpi 518007 BLAKE2B eb7e7f41fa74629e4df35fed26d73f8d35eeecd8faab2d8d71d25806cb434ed27f5ebfe1bf5a3fc899140d402282b1feff440f144326e8ee864987a6f636c5bc SHA512 44974aff3f060d5fb52e36a31216d056f049c71df6c6530a13da5be7e33ff9ced02acfc735aec0438e1c2ec6493ba194b7f3710c417798947d40f59cd8ebc0bc
-DIST firefox-62.0.2-id.xpi 458272 BLAKE2B 1daab6e50927f329de6c2406696e0a5a98982736d4284d9b454d3bccbdaeff2206f27799c2ccb42d97d9fcfa3fc8c767c80939808021fd6e5cc9a3768337d204 SHA512 701bc16d72bce82f5a40119f901d6e237bf4a834b3f96996b532de83ef10257612b4f7fe18ba0caae778a35ff9eed4567529bcc81499d4bc51ad31a581175805
-DIST firefox-62.0.2-is.xpi 459612 BLAKE2B 90e72c613b3180440b18ac58676a990cb67450acbae0c953a3176b27451bc6e3eb3c745cc0c1ea256b1abfb2ac6b669210125c3eaa44d819196d91ba659069db SHA512 f0d40a37c2f01d752f453ccb9b2da4a0b8996cb367cf59004a3951a060213218100c724226a08f5a2442c07937210441bfb6a81a23368e9e7cc9ca6fdc114114
-DIST firefox-62.0.2-it.xpi 347134 BLAKE2B 4dc56ca280f52620b0af862a53007f6efddb52d7582cf967589d6a03a36336f035c408ce2bea6e1d7097fbba81262079009604561834e79af261f032f77d1d7b SHA512 61804d0600dd664f446cb3c65fd2ba9398c8d25b9f060dbf312c31a557c673e66921472256db13b124477c7447756a22822c57b883933e4e13ca36e0af0d9a08
-DIST firefox-62.0.2-ja.xpi 504024 BLAKE2B 69402f20a24366c14c27974d7fc816d38d8335124b3501da4e113f125f75b48b987f8ea2cb3f4ee5f01a8ed6e5e6247879d246327a02573705a9f89531830c09 SHA512 d0e955673df89a2a4afd5ed5e742cc9802a0496d30a3ecef307d7afa39c312d127501dcb33399127b422485b7d639b38422352c8f8217dc4b7a0470e9c30a3c0
-DIST firefox-62.0.2-ka.xpi 503706 BLAKE2B 2b26ea8d5f277b02cb77a7b3989e6b72591b2f155519247f65ba542a1e7e731d4c979b59e232255490fdbaa820fc0343c1b0808cc9c7433e72aba22046186b07 SHA512 82db8266d676060dd4fbfc3ba2483721f72d73ec08262c1059e93e23c5a41c68c5e36398bd68b69f990ea1c211dc27b4309081456cb50bdf7bcbe1e24aacc084
-DIST firefox-62.0.2-kab.xpi 478240 BLAKE2B da8daf16151de409f850e5ff2a6dd263dcc13ae78dff02c7f4ac5ecf98d6f9e531c44e6ab5137f4641ecfe2c5b1d8a49dec5a9ae9fa1cf7bbcd20bd3d0778774 SHA512 868025e2adbacf72971238c64b890457144b719348cacac355ffe3d060265272680ade1d531ab13b0db9eee6d8cb84cd23720cef4c893e643ac2501b6da26fc8
-DIST firefox-62.0.2-kk.xpi 530652 BLAKE2B 744a98b3d427ad08ac62842b22b1f45e694740ee574262d5ea8d68b4d437f674f3c601521aa4c486a12d49df9a3c9c6f3537ec892bc8c4d0a363c8df56ed89fb SHA512 00ee4e146ec5a8bbafe76db3608557bd51c2ba882b34f82e92e1a39009d38655e39264cb0e7fa4c200a0c3fa168919547606ca4aeddc97041300045f9acd4659
-DIST firefox-62.0.2-km.xpi 521446 BLAKE2B 528f9bcd19d342944549ecae9de24a7296c8b102ebe25ef735e4acc287948bf161bc7fd156f9a3412e1ebffbb9e3a214cbb2e9422de5e8232dd95f12c09da57c SHA512 18cd6c0bfe87330fa864f9a6ae9fdbb3024b27f7bb35b4329e7dc0ef7bea5811824b176c87c56e53ba28b7f2769bf5ef19f6d190618d4139e4ce655b30d2555d
-DIST firefox-62.0.2-kn.xpi 528083 BLAKE2B a3d87093958ce465d512f8c285de647d1a60982708125c22a2ce1e56f554093edcd0993bdb533f1eedbeea07663f399e1fcdda1801002c3036183bef1e8fa4a7 SHA512 9d3e53031840493c6582a7f3cd348abc356ffe758981888ca39972bd9c48700dbc739cf26512391dd37154ab7de9ffb3909fb050c2e77d01a67f7f9622d435d1
-DIST firefox-62.0.2-ko.xpi 498336 BLAKE2B 92041b661304cbe279257e63d04098a80e6654281e6792c07aba67569189ad822bce1f295bd1cd490fae90ae5da250b1800d7d6ed6328502ea3137668e148b37 SHA512 e13266bc40d632859630db9c363595334bdba3c4ebade1977f89b08fbaf7c3e7c07fcbf298871e27104505da06022bbedbe7794288fe10868e2dca31b6d4a8ad
-DIST firefox-62.0.2-lij.xpi 463445 BLAKE2B 235e5e8b0554f8c98601828b524d033ad911010900f4ffc2ecef45e0e94325a4aad60451c1e5ce6f2ac41efb933a5a86d6b3788e8a43cee6b56823a58106a164 SHA512 a61d3d4a2c1351c78c2442b16ca3ddd9f47e9e916227f74673170b1e3b3ac335ed4437ab4c9c4c7b5f42d640de8c93f66e6620a3a9c220b804e082ba11212354
-DIST firefox-62.0.2-lt.xpi 487646 BLAKE2B 3e28a8a529c03566b2d87d5470fe6a144f3f4d7a63198fd28df9ffdd4b598a6d42298048bc7a93fd09693aefbc9b9a170a7b03766580591f2d3c99074d408b99 SHA512 1d391e1404a4964481a9c516613695504715f1e3355cfc398fbeb02c0c2e46f0236155d814151afe4e4c8e71f231215d3b0b664a8378982ff2d8935d64e5f0e8
-DIST firefox-62.0.2-lv.xpi 475696 BLAKE2B edca0ca0cbd0ca941c412a031a21c7b148f9f00b9fc9a37cefc7bd679e99b94c444d4ac8b203d20c7f7589052b8bdd413d325b278bd145571e2e11b717e20e09 SHA512 a498992c8a5ea2996d3a3897eaf032c8b5d9b77554147d137d4ed617e5dcdbe8eb1a23cd4a9bbfced8e5d8c1f4131d0fab5172fde042e838b2750020f6e673b6
-DIST firefox-62.0.2-mai.xpi 494723 BLAKE2B aa683c310fca2bd96ff3377be2f20689e8d23e41a482ff08893327425568167cad8ab4302c0cf6d9e906905daf06b42618199172fcd0bb377ee945b42ea3a748 SHA512 ffd824eed685ffa017b6c1c8046f045855792a3f61499dbc41b3033246cbaa401bae1162e35fda19f9a5d789eef669b84b68956b1f07a83920eb5cf9c14fa0fa
-DIST firefox-62.0.2-mk.xpi 457527 BLAKE2B 278c8ccc15ad71eedfede8ff090260adfc6334bea4a1f712417585c38b81c304ed1eb7ae9ad1bdca1f11720d4f6305b59fafde6f8cb2f26ff8332bcf4c462518 SHA512 2962c8023d65460ecab223061316491341cfb3854b6f595cc40b1fb8e632305751e89d1f58961330d469dd63d0ec91964d1c1e7157a82b751417f60fbb08b6ac
-DIST firefox-62.0.2-ml.xpi 538826 BLAKE2B 157cac472c27184bb2a1a666ae82cfaf050f1812749e3232649586894c38259a8b3b7290f21c645bb99e362bfaeecdb3282ff2ebf7926084a9c0f7fdf00fde26 SHA512 ea80ad648a0e8af3fb8a1b7b8b3d2c66509578226bc74f4cb699fc4a1c5a115c5fbf2040ca2a342e894d477eb1c2030f800192aa3c0f96bf81dbdc7f84d60d54
-DIST firefox-62.0.2-mr.xpi 530354 BLAKE2B 54741102256f8b82d12b18790ead3af96d5309426e0d351e9277e77db642838024f11b087a14c3e255db249d437393392a8f8e99fb1800de0af1f2ef17457d02 SHA512 7754ceeae7168fb0eb985193385aa54e1d3db827f7f2e983fafa89cb4343d44ea17d3958685a419aa45a71f46de86cb8dfffcd3deb181a273b84bd2fefe35f48
-DIST firefox-62.0.2-ms.xpi 459911 BLAKE2B 6bc8c8460def32070cedf5278a2cc07669d9de501d109f95274c9c50d15759293c77fa50a50ce5684a09dbb30e52408ff9cd9c12d265ec5129bf0da93da2a191 SHA512 b2da65dde3af0944532ed0f34091f2f896f11c43798274ad3335c3adeec2c087d65f8681bc04794686cd7bc374ed73250468189896cab77693b2090f703efd2a
-DIST firefox-62.0.2-nb-NO.xpi 458925 BLAKE2B 485dc6dc485800735290decf4cf7a6e3965f8fb356cb6ea07fea890ed408adca2304a502c00d1cf86bc2df1ce5bf815635ea7cd4949cdb2bdc5ebf03fb24fe50 SHA512 3e1c2394b1fff9ddde349a013ab365e5fbe2b9ef89d430bff69b1462d10fcc7f02eaa75a2a88ef2deac3b38cc618f45eb1b22534f451ae77d8fe8ec15033b9da
-DIST firefox-62.0.2-nl.xpi 459511 BLAKE2B 6fac145ee48d082292d5b41da947a0515df9e93600c209b16554e726c384bad71e497a8b98dec7d2804ec3afab88f2e22d61a468789f5a817633a8b14bb8792f SHA512 0214d00e74fcfe958e7b3ee7d460fc56625975910c275adafbc99cd5e1938fe7652a8d309747b8e2d4eea81ccaae168b52d3a597589b3240260da65eecc5a47b
-DIST firefox-62.0.2-nn-NO.xpi 457057 BLAKE2B 3f68568802e6dc9496cbbe91b9c54325ac29d5799db719288105821c3fa1b2ae56d839f8aa4945b451831ab91243eadff8086b39171d23408551c8247b082cb4 SHA512 9be36d6fd0280506ef30af266730ea7ba57a0ec8438893e0ea8ddafeb4f83f85089b97ce997139d13f16aac7bde41479a0ec1b2f07eeee023632d7c84e2aa705
-DIST firefox-62.0.2-or.xpi 485374 BLAKE2B e8af79a432c674b4ef78fca16f57a699aedc1e061bad37e5deaeae53e7a2417310c763bf3f8fc093194cb198108b3af41955c89ce6ed7452fa69313bfbd6c090 SHA512 a05836bdc384c6052e546bb91fdc5d1f33b375ee812a7b676bd09d35c7156f80799c18b1af4b8af72eca087d0231a1f60cd582431aa95fa378354f1648ab870e
-DIST firefox-62.0.2-pa-IN.xpi 496916 BLAKE2B 2b075b407df9ff9758d88eec47b7c79b30bf95f0e170aaa289c81c09e31275ce78ccc610270c3d57dd698c40aabad49208bcd121a9f24f6229cfe8f0ec0338d0 SHA512 9fe90ebfc1091242f83887b506b93175421ae00faaff7fd1d438cb61e39e5484398ebe6108a89cab31a9ea299daa280206dd67d38bb9b6b668b8c63ecfefbe3a
-DIST firefox-62.0.2-pl.xpi 370890 BLAKE2B 2192d0ec996be573e3c857988c00e05aab9033674ef30944775b903f7ab70fc32b59882aa65d4439d8554c55f043354e53220484ad11284ed6f31c589961afeb SHA512 12c5beaee75097ca311f6991a0b1c4907391b54fbe6ea27652d045c8e5bb75b67702bac891bd803fa7145f4c046dadfc3ab84fd923460d642f8cf74ff865bc82
-DIST firefox-62.0.2-pt-BR.xpi 460866 BLAKE2B d2a1777a7dd0266591adfc9344ed8ceb5a26f5ca07f51bc15de092b1fa83d7c141aebec6677f9dd9aa8d483e83ea46f9ac576465c4d11614cb95c12cf6794fb9 SHA512 ace809bc44796ae0d2e8ec8f2b871dc841c0ef696eb434fedc5f3e2317c8093b31c2531207e97a13db1d0040f0ddd36d02ec2b67b4a5d33db5c9c8c4c166be07
-DIST firefox-62.0.2-pt-PT.xpi 473526 BLAKE2B e75771752756a4f1eb3906fc014f66158443eb349098d0039f9e3afcb5eee0e7e3f0117644c27cb1dca40c63901c4f0d6ed1ec57034089610594834136476ddb SHA512 ad4999f508ac8cc33030566dfb98a0417c5061c14d7804c934677c482126d3381419e6737a969df826e6f8db5357dc046ad90295592953450ca79cd578faee29
-DIST firefox-62.0.2-rm.xpi 462470 BLAKE2B fb72c1096cd9f6f1ffae48f6d7fd8df393397bed0cad7785befa4ca9bcf9a9aa2e6f86275c26373b77a79c3a612fce1f51d69f65a6eb38732a7d21b62ffde75d SHA512 84817163733c6bdaeec1abd5bb4384bdabef25ba2c21247eb420a3832ef51d3f53e6a40cb5952e53cb7b3a92fd4432067c880d80c39c6cba40512b91b65684fc
-DIST firefox-62.0.2-ro.xpi 463401 BLAKE2B e5239f48edaa6dcbf96417ac9dea41802d8a2e4de246455d03797d1dace27311539fcad33a7a4ee3c1dad2365f0649dbf0461c07c559f3825de12675eed8721a SHA512 89525412f4d53c067773757b5ab740733a025265fcf68d725317e54351af83e61a9c05980cea62b8c90ceb2d8d597bf2e9c97e6dbd06ff730b46ffafdd9fcfa3
-DIST firefox-62.0.2-ru.xpi 539884 BLAKE2B 04ad8775aa310b44238b161db1783e778d82fb985ba226a21951a6473bf9c9a7481dee2f09c29daa0d44cd512e09287706fbce83a956af086005c2ca1403bf68 SHA512 54143cffcc09a519d7df5be882039e888567211817a864e1b733a347cef5763828c08355b16e08b69891e2a18ac113af6995940a514db0f0345bd36bf8b130fc
-DIST firefox-62.0.2-si.xpi 487601 BLAKE2B a4e0d82467f7abc9d1824d93705e0dbf45cbe3e49e1bae9ac172e29f78f1b6553a5773a5174ad0c3207bfde511e8a9877ff6720afb1416dc30796867d86c0934 SHA512 9a6a88afdfa70a48d0f19ab999d9bf8dcb8334bc342add5ae30f3b36bf791e1e9e5f7086003135f93e81ffc1492d119568b0317aee3092bd16f6ac939e697f4b
-DIST firefox-62.0.2-sk.xpi 488135 BLAKE2B 551ef2286d691586fc68366c2bb9efa8d25f7ed9812d4e82de3c68bd94ca42542cfccb5b024c551c29283eae93fb8ca2c75eb65c249b9bc41743eecf6b6c7ee3 SHA512 5dbec9a977ce0551458d190cdc1b94890c42f60e3986e8dfa12333125567c915fe8f49e42fd23226ae572dfda878576a1f1da70a490576f6f68cbc359caf6057
-DIST firefox-62.0.2-sl.xpi 468414 BLAKE2B 173e354e7881a039fe2721bca66bda2fef6eb7d1311e2065d17d6c7e215ebeefd23bf4b991f012367787236cd0d527adae91fcfabab35435e5d8e9177f74b758 SHA512 6332fee680d1845cba0b1c794c483e340f0bff09d8dcdf5302e5347b3f010c116e5b86099591a1def16a30941d16b01904558d57738c8f773fb2728bdc44525e
-DIST firefox-62.0.2-son.xpi 445941 BLAKE2B 52ce53c553c96ac4076222a33433a9c58249bd8ab0115885c8384901291773e53781e7efcf213a838f66d9ac44f1295315b04296ce3f89f519d018c56c55149b SHA512 19f600fce137f874f43276c3b7201b7f14fb4480cd8be09cfad55d5b4b7cca097c7812d04f65dbbf75d47eee383997d239ab5c2d3e21d0459c22a0a0d12e8a24
-DIST firefox-62.0.2-sq.xpi 475530 BLAKE2B 8c6f1bfbbbc6401c86a247ae9aff3ab7f5263350538f912625b1f12e67b2621dfcb06726b569c2003cdb93634a7573424cd7f3542d4af5f02e11f4ad451f8bde SHA512 a12a259000702f500d533c7eae48472322080fe1bcdea98c19c2fc863aebeeb5e4b949f213e487c413c89e3b01b568134aaa491ce9024a04f05ee0b34f7d3357
-DIST firefox-62.0.2-sr.xpi 498809 BLAKE2B 331a2d740b38f2331be261a28bd80e5cdd798f74574af6485bbe275d7d3158b308e0729506dd61ad49b8338b213e7fd82ae03582f23ad268731a1074f03af782 SHA512 442bed4d7f32cb4cdccf275eafb21acb3ef4142aefcbab61707c82f8408be568aed3269a34e885451ed51eeffd22165585e193c6d687f7bf942410b7d777558d
-DIST firefox-62.0.2-sv-SE.xpi 469508 BLAKE2B 4ada4b477599b65a9f20998c2cc7aa3f7870fbc1138b0bc71e556bd533f47f3a1c487b09fa2802c1b84b934283dd8d0c695444818284546893a175c08e734675 SHA512 ebb3690236307a7bb1a7c26d01e305f5082783c0f1b42753b1afab40f36941ff5dd0a5b600a4c02bc64b81a48fffe459b501f0b1f2a599ba99fbb071ea0a2860
-DIST firefox-62.0.2-ta.xpi 526479 BLAKE2B 69d29fc712ea06c625bea55dea27d61889886f852647097b2288ca080ea3d164a693dad4ae8103b8880fe161ce3bc78efa9934529cf073036b2f2e99c0a1d4c5 SHA512 7e52cb5ded50fb960967a3808bd6d7acb2eb70e74f3d906a4337df79dfec619d5979dfc0de2c900a102bcf7bddf2d8e9f4d519d63573c0575b86311eba8a9b97
-DIST firefox-62.0.2-te.xpi 536779 BLAKE2B e2951535347b82bf825139a695442f8f0d4c2842e284ee0aa8b2d252f52e5ad309a1196c5d630fef075842273400c1110f9c65699892911cb36e1501ecd85ea1 SHA512 06344045a928585bf1f72ec6a79df8643f124957b5884af4522322bcf2a3e5c7755f7598c316cbfbcd3be3846f162e8b2e66c6c71b2ca0d81ef06f9a1bc150ba
-DIST firefox-62.0.2-th.xpi 507130 BLAKE2B b87d8d75d82fca4b0565b4e6e727167196e388075cd2b73d7dcd6c1f9596c2037d43a79d5a08ec1cdb67739ed2dbcc3adba4a742f0c912a5dd32c4471f0a3d18 SHA512 b949b240a0a1e4225a1c63e1c24b27cd91f18f0e9577e88ad2ee15020c0c0a83b920cd2725117204d57d1a60b2f18f206682df9401aadebb57a9efddc9fc2c05
-DIST firefox-62.0.2-tr.xpi 477277 BLAKE2B 1399a97a5064cddd9c9845e37ba15868142d3fed14d186c3999e309070c665b4f41b165fce43b0606fd1ebf6642eff403f9ab5173da391dc721194fcc1026c3f SHA512 9e50fb892db573361046188ad05da867b35fc72b609219fd733190cf7601340f90185105c1618cf7a7c5c2044395c312245fd21f9dd39bd81d5fdf0408db611a
-DIST firefox-62.0.2-uk.xpi 532590 BLAKE2B 0ef05e76161516906333a6e3afa5737a0d4d2240e3e73e6a772093d0aaf9105c20f70f6d594dd96f3ee292ca59e18e0c0085d0e4c6e245fd518a82a48dba9e8f SHA512 5ece2d55c831ea127bc1748d677deceaa9619ff80b5b1dc29b51c14cd3e9543bcc19e6b61f6880f1f111b35584af4a389bd8c33a230616179aa590403229ae44
-DIST firefox-62.0.2-uz.xpi 458001 BLAKE2B 1f6d4097ea2c8ab5a1e5fca98279877df2c7841ec4ae3083495e9548ea2a5f9b8ade99d9f58c3bb4acf6a15666ab0eb17fd8095dada89ce930e665702195465a SHA512 d57b979ecf940e73c36cb7f462b0ee7515dfc3682ddbb5bd837a26779acb10e3ccf023f68cbd8c05f1f6e17e8d6286b35d5314bb2349ea6c91143e5d270489aa
-DIST firefox-62.0.2-vi.xpi 478327 BLAKE2B c3c40cc98e4ace6dc64cc696e3e7e2b5ec941f064a1fadcdb3522ac92915ffe64cf2480d6941d35554aa92ed2741e59dd90a5509f7b06e46d6ce377bbb135dd0 SHA512 4d25dfbb0b76b23f532636e649732dd4bfcbe110e5fa9e46e617e12096701c95c838491fb43eea4a3f18f70a4336f18bc8e4e71e9842d153ffe1e9d84fcd73dc
-DIST firefox-62.0.2-xh.xpi 461198 BLAKE2B 816fd0f17d914e055945731691b03ad34005dc777a935d9a05bd7ea02166835ecdc2cd4adf37698f3ed859fb0b9015d90396a86c2cb72ca24274d7e5b520b008 SHA512 3741bfb3ce0a8c451b60801827b80841961fe04cde587dcd91df04dd5bde13f786930571ea9cb7d732fa86fe47b631fa2fe213d4452c84f44ec60d9a83ca81f0
-DIST firefox-62.0.2-zh-CN.xpi 491485 BLAKE2B 9063efba817aada697f8edbd4f154df3ca8d17d101409d15d1bd2ef98abbeed42ecb25480d685dddefbe2cf894c45549ca7be0bd580c0bcb829abaf1b48fe63f SHA512 5e45f942b115eac8d338faa74c4962b203b0340036688237e388bba04f3a4e62bc46e216540d9611bf3eb8e3919379d40042acca4eda8aa7876025cd6b828706
-DIST firefox-62.0.2-zh-TW.xpi 494522 BLAKE2B a27c11631c4a1f4e5777b9e8f465399bc1881218a4e9a51c8927a989f9ea02ffafb293595627f50b43c5d26c5dab99935e763102fbebb27dfefe64cc368cc545 SHA512 af2666a28edf4e883b3effbcf684e95641dab8b6609bd8150362ec9d961bb043b6dc99ac686bd0ae0a0cd1d2b2a0da76319e27a6e71db47ccb16247603705e02
-DIST firefox-62.0.2.source.tar.xz 258831964 BLAKE2B ec1a174e19fc146997343daaa51e37bed32e160aa57bd1687cad0a2280f019e15d3938aa4d42bcab3d4d87c1f4d3be4d8abc9ed3b986221fce2f82fbd896bb06 SHA512 7b43fe6bb7072eec8b907f63933486d7ecfe479f1121470cfa66416ad02feb8f61af1b1327032209179780057f63f314065bb17a74b957cd5f82a13c4a055c24
+DIST firefox-62.0.3-ach.xpi 446325 BLAKE2B b7722cf6f8a8de868fb9f283a7203d1c7d40690bb78b38f244c392714d7f232581d04c6e59f647135f8d315dca4ccd60c5340d1fa36671871eca6cb8e47445ea SHA512 eb79bec0b69b53cf1653d7498cc6a5701b1f898f89b90ae40a414201e460db5ed7141f0fb7032f5c212b1eafe2676a09b4954c5c4ce5857850c00ffc318cd019
+DIST firefox-62.0.3-af.xpi 432293 BLAKE2B 44780db3f4d9d6482dc48790620f128704d351bca138f0b1639c46e5840eb634d99406c5a64d924d6ef379297dfbd40eb8f06ab83cb18a317913d47b3d391f2f SHA512 8d16bf335c5ef120d72f1eb5a088860d0d25d3787f8e1099a40437658cb706d58aad64059bceea51aa958d64e1824227c43950ac6bca6e1df0cee4e60f809f2d
+DIST firefox-62.0.3-an.xpi 467499 BLAKE2B 7175b6470b157fa9a898d048c0b3c574a6ddd599c802adeb8c2d38bc473d58d521a9ccc7917824d3c56809d96da36e7b24cdba5229941e88f5dce475be9cbd07 SHA512 51d0cccdbc2f294fe9a4341c89f32ad3cd935afd84417f4f01f15090fc5834a3b386b9004ecb22db3a8abe83ea9c7b8b192f6106328b68b97df3dd4bae5d1385
+DIST firefox-62.0.3-ar.xpi 497996 BLAKE2B b164a06577240aaa09e8f37743606662178e5a506e3dd374800cb4b65f12710aaa83ef4d7d985f7a4a93c128c7263637bec6c825ef4baa6024f1a061f7192332 SHA512 c6c49171c78f311e000d8350885ccbbe9666666ceffc704840bbc598a70e7b39a597185194870545bc9abdc3f051ca47a64bfcfb14c129152c94cad873b40cc4
+DIST firefox-62.0.3-as.xpi 478315 BLAKE2B 49267e25a454feb4eaacd6785d385aa533525645029acf75ba8f4a3f82b1f71f272f1ba9a5687f1d2477b4eb4c754e4b857e5aa78026ec523028bd37fb2e3217 SHA512 4761ebbdbd908a29b3ce9509e1d5e1d3b10951bb78f4ad156d9e502580226e6d88ad5ccb70d4b689981afbe83ad95db047bd14c524897b9270636920e7558e2a
+DIST firefox-62.0.3-ast.xpi 455191 BLAKE2B a22f51f7573ceeaaea199f0ca760722e40066bc919a8c44b2e61312ba90c73514ff0fd587495a146ad60259e122eeef49c546e40b79f60e1cbcf07964e4e1559 SHA512 3d8c41c8f62926c09240fecda6c59a71ad58c2e6c25099b750fe3b9c7885a7eb4d2fc0cfaca6a1080b947b56df26e114299a99997e49730e369342cbc44726bd
+DIST firefox-62.0.3-az.xpi 477135 BLAKE2B 03293c53210257e89c5c905abcdbaee8331ed00b14862bdc5e7fdde8c230d8d7d335aed484defd0592bc0dde8e95589ec88ec5179a05b3598441cb6723c63eaa SHA512 40732afa8650e187efa769333dda574a1cc77dc8cd94c533e29029e8f919e0428dc23ff956bb8e39a2167489d54d05a888bc2e6642121c3d6c302b7e6539eda7
+DIST firefox-62.0.3-bg.xpi 524199 BLAKE2B 7cc8c0c88ef46001d36ceab58261b3758ebcf25800ca308a85086c78d5385737099bf436ea4d3d30e5973be4bcbf3207f57f94ac10234fe57f49a33b9c468b5a SHA512 ac6327f0956114596e79aaf145bba27813dab0a56689fd47e7fbb887942c1cc68f961a9094be83830b92ad4814ada2f91831ba409ac86c89f91700b0cbf3184d
+DIST firefox-62.0.3-bn-BD.xpi 538605 BLAKE2B 5b8e059dc4e610947bf1e9c143e87fb5c6f8efce0d59a7c59818fdb30a8cbe0b39599959f281dcb9123e05caf39854ff8c279c974df3f5f9d13c456192e32528 SHA512 3e0206b8ae2c0c9ef736646aa45b94d12d2f18f285cce826f4a3391fe8c8eee685a274cf67c335067880d1f4c95e41a124e1b8e8c5da582940e6ae86abd2388d
+DIST firefox-62.0.3-bn-IN.xpi 509953 BLAKE2B 2169e571fb1fbd17f88a9fe895ce564561a6a432874b0cbd2beb4feae4408928dc6c65bebee1dbfa7249e0780fcb2c2991dabf309177ca62e4d53a6c15a11ef4 SHA512 9c27baa07e824ae026cdf33ec702b47de29afd3cbbe6599706a8f13f1e2f1a73d6a42725bb511abac2164028f64e72d2b64fe11d18feb2790bdf9f77ce9024ec
+DIST firefox-62.0.3-br.xpi 464406 BLAKE2B 3e9f54745436eaa60ed872dcc0c0edeb40004ef1d3a3bede9c84b4e12bc479eeb04ec1c142d02f501f999a0bbbfd6f83436a46721e48f778a29f57853f6ab643 SHA512 f6b07034195faae1aa0d2413b7b4293fd948937d1439c5b9e76cbab00818aef898aae36d6f5023082232984fce7bfc0292e2a70f600e84d039246cecc2bf5e94
+DIST firefox-62.0.3-bs.xpi 466249 BLAKE2B abf2e1dca8cc0a4484ddd98a20e0325c622c627fe6f5519418c77d962562a6f9cbaec8d6cc4ce851b2ce27c6d9d59a490aae3c4f5728bafe4bed904233f4a571 SHA512 ebf626d49a3762da6fa1e3ea12073b2d3e02174a1cf2a4d1b5825a3ba05b9c2112adc8bd7997f058e46ba2d66655373c9ca7fd8b92b5f8700294a02a94538671
+DIST firefox-62.0.3-ca.xpi 470055 BLAKE2B 67af43041899cd1c8c127b5c75f6edba43f91a35ee2a9cd65142dab7dd5f8ac798090e04188854bec5d6ebcc7f3351a60e8d8d499b512f5bbabf372585c0ca88 SHA512 661ba8d03352fbae574c718076c3f5ad260a741c331e02bf2fb5e4add82c3ab8e61f3a441f40847272fd258537d6b36f7cd25bdd287bdb40d8d61ca37669feb5
+DIST firefox-62.0.3-cak.xpi 488840 BLAKE2B 9169fb32b2b432f86071376ef657fb09fc77e8fb18ed75f4682c63a51b30835085fe4c196f090b9d128982309e9101c8cb514739eec55da3bea970d924ceed91 SHA512 2b734ebc5ffa91d9a78ae4908d34d7c638ee323b8c4d8a5a2ed8f5370a3b47e04909331b9f8a3141b9248baee9fab1fec701d6548364ef1a4f794a248cd68ebf
+DIST firefox-62.0.3-cs.xpi 478354 BLAKE2B 22de5eb99ae94e741b6df4f085bc99024c7436998f4d959bada64d7fa90efc6077f8a16a8d4129ef5696b245bd9aa091e71aab2eb48f79ef17aacdf8e50858d4 SHA512 c82a959c0300ef01b7ef5001eb8c7adb65089200ed444cd7abdec62f00c9a12cbdbb209b29e828381c1c5768945d0d6d851ecb50d4b659d0715e62eec6a7508e
+DIST firefox-62.0.3-cy.xpi 468857 BLAKE2B 908235d7b594c7edf77eae004240ee26ef97199fe76bb3e8f37c38f0ca1aa97034c88bd615dbcc5e37b35a422cae83a568b04933f880b5314883b3520e7425d9 SHA512 3228f164fbebaf4272e2af778179a83751eb7ed5afcbefef739ad6a60da29e955117bc0456fd36c24b3036b3f95ce72bfe64ed131599e75925e6f9d78301007d
+DIST firefox-62.0.3-da.xpi 467290 BLAKE2B ad50b43550ba7714bee2fad72bfb0cfd4cae359c99dd92a94ed1715a57f500f24ee4513e9fac9599cf5865edbfaecfabe17b43ac82347d8da5ba57193979221e SHA512 8c9c48d3fb687bb5240f672968dec42f1b081592104dd921cf09102cccc06c4d662ed6032feace5d6d162544ad9021144f4efd1f52fe204a669fd199056a703a
+DIST firefox-62.0.3-de.xpi 475935 BLAKE2B 02d221c317406dd9f16c6b7a86d98589368c06ac1a411ead157cd3bbb22cca7e4157c1c6cb272b8f0f8f580453638fd0f457212a4c7284169a1d652a159bff1f SHA512 2f21533f5dc836a11d97db3856ae96e7725ea3d098e510a715eea8e5c572d7550d5be8afc733807641843d30ac4aa3442494d3d6205b837b7c8c7f7cacfc641a
+DIST firefox-62.0.3-dsb.xpi 488173 BLAKE2B 10c351cad7a73329657ebe36e1cc4c3fa50b4552887ff61a5560a9bea8ae1b668023d4538937c601ec6a68d14ede8fce75fe6a133091cf02a7251a27e4cbd637 SHA512 c39529c355521b5f28f11fd5f50acc48a4605408020cb5454d39e87fe98a1c8dfed45aa8d2dfd9b150b877f23a1296dd093e0c3fc3844a41193aeeaa22f5a050
+DIST firefox-62.0.3-el.xpi 546433 BLAKE2B a70227f90acf8826f72c6bd579ed497372d2cb391e2096ceece20aef830e5c5b58a704b40251baafc255e510ead78caf6451aba4ac8dfbc035acef2a05fa0949 SHA512 6e192e856cf370a49a16c2259d61bc22d9f2d681f56d49b72e68ec73ee72c0820eae95c82ded166c2b9d3ba73ed671b3d19089d26636e99c54184a6f97321279
+DIST firefox-62.0.3-en-GB.xpi 436177 BLAKE2B fb12520d027dfdf7681b4fb6b8ca9ca5314b52f31db8417c53d096fa27cf5f5cd8291e3e5cd72b4da31f05a17a2c80d157b0f01cbccec4b4fb26f4d73f761a92 SHA512 886333d113e94d63af08748ca0a599e8c2c05746de69297cfb30d020feed43bcbf5e4fa5327c940db5ecdddbc31738157c4b50b5ac57367f0096f106e99fa8e8
+DIST firefox-62.0.3-en-ZA.xpi 422871 BLAKE2B 0408a5edd61942b3613088b21871fb74c85490889d95623b25dd6bcc7e236b3f12f066677e0263a8ee02ed0f509c73ce047998d567c9f566661fdf2467903cba SHA512 40014af81a3bef8082e88102b84236514ecdc26bbf6a22a130beba5e5f12145492f557abacbdf072da695005ebc51de70bb8487cc777aa6c082b6ad1eb03639f
+DIST firefox-62.0.3-eo.xpi 466535 BLAKE2B fbaa93a513e1e464ca6a1f3c772fc17545a93e8458084bce869aae10a5befbcae5230ac515ce9dc6e5bd61fe253bc136e1491407fe2107d05e3c92fc38147ce5 SHA512 f7dbab432f6d48859115a46390681322f296d2a20daadd3d0a49def37194414b35d0b73f41485eb7636a43f27fee1a2b20e0d5b95ddcca582457b238ae2a63a4
+DIST firefox-62.0.3-es-AR.xpi 473522 BLAKE2B 783a8151664ebec02e9ee190ecb868f7e57a59ec5ea12c98f9cdea7ade8ab8ccbca2748222e5661dc272328363a2a150cc38fcf03f1d4ba0bf6bcd2051e5a86c SHA512 378477ff2b1d84653b8c0bb2483359b9ff7bd4fa7619aeaad18ab77286a82db647b4c41397557967599dc1b4a2f6560e49716b61aec16d7560e992197299926c
+DIST firefox-62.0.3-es-CL.xpi 473990 BLAKE2B 8d034ea71a81cf21f9441b8f00aa0056b62239441ff85f9dba0be23148b69b86333facdf01e7c92ae63e02388e86f2a591d03c4f6e83574305d446708d02fd72 SHA512 b64d123a9d7000320b98c563669d34a938de0ef9f9dfd2776348b1ed38b0f221e733d765473bc4fafd26f74e33db5adf73ed75985859d682595e48a1ac998908
+DIST firefox-62.0.3-es-ES.xpi 414987 BLAKE2B 45ef9e2a4baebc806b7380c33417ceadcedbd66311a1a1970a7a1e9d664880aaae89375cbb69ca466c7104b845ebddf8204a1a8c6f9aa5d702978f67a071a63c SHA512 9f8849f7977b245ae15e755315821b7487e988daf5bab3c4244df8643618fe5ebe10cfcc846d7b5783b55d4a2b283a15a9559cddb5aec7e49c7d83787207d08c
+DIST firefox-62.0.3-es-MX.xpi 477957 BLAKE2B 2edd11360258ffaff34f32c17847e7097a90d1e2a5fc0e888e029d641bd0ffe9f8539b56659287fd8a1b516459e80c829f953e95b124dfa28a556c4a6a1b12f7 SHA512 cbaf5b5dc4df636ce308cb1332a987eb44c1cc27673c5ad99c9bc66910bd896d503e92af867b6a3456956d3b70c997891283971190901dfcbb2bb7c48b4db43f
+DIST firefox-62.0.3-et.xpi 455377 BLAKE2B e5b98b9857319d673cac00c4195f76740b6cf1ca6b16fb7e7e22dede9ecc48aa4973d2b50bf9ff7742c7603861829c97db34fd9eb340507460693215757efb44 SHA512 6bdac58593cceb5e5f49a032482d7877857c67f2edd2c2da8fabdc80e7c2552a337cbc60bfe0439f062f901db8685e9f8b1c9e410d83dfbdae0fd9c0213b1a65
+DIST firefox-62.0.3-eu.xpi 465903 BLAKE2B abbccad102f65097b6a4e02dafadc6d75ec6ec83ea0b6cd8c3cef3b8cfedb9d0c3dd805bd37219dfbdc24eea1392d024a828db2992f67a7ca2c90bf87d373ddc SHA512 f54b3ab2508ef3638ee03c14575ca6f256c9c4310333577adb9a70198db4bd5b86feeac22c59e14cd2b750bbd6e7595b70317bbf2e597d3414a244c8988afab3
+DIST firefox-62.0.3-fa.xpi 514442 BLAKE2B d3b732e94b26f6816c86a31a2c680792f742ab5e99753b2fb049592e782d1e9c6273ed4de3c00825ae3afb6d593c51ae2b07b37d287125c445dc696cc0c4d9d6 SHA512 c1be98ab1590ea7000d0faef1f1ae8aafa2a7c925d8c621bc8085b433e8d957e8ee6689458683fa1ab6df38fd1329229cec41e474043a997e98273e2a00962e3
+DIST firefox-62.0.3-ff.xpi 459046 BLAKE2B 202a442fbc26ad5c54c39de75dfa14423141e61041056526bdbae4be4fcf3443fbf9b3e2dd4480e728f224454b1f0ac394cd086bed8324a5cc9f8b8c0cee835c SHA512 70bb37d4cf292bf3131870668aabb6ccca4ca96eb85cc72605b6b263304b2d8c041d1bd6b3977356c02c33c669413fe4373cfdde286a2aac3115ef016c15f181
+DIST firefox-62.0.3-fi.xpi 458677 BLAKE2B 7bf0690ff1683e06da4ff0c73a00c2789ca2ed491e7cff8d87b91243a502fd022117c378f9a2a6e2348315c27d4f64a4079077ca9108ce6331ae78c9cabaf117 SHA512 788d2d14f82c0134e15b341a56179a08ebf0dd3b1702a1d337f3faf31864bb2d9354329816beb430215503b7c2ee857aae19b3f4c9be38c763e18bae631a7a31
+DIST firefox-62.0.3-fr.xpi 482968 BLAKE2B 87dbef7e69b52c3c020588d3aa48ee4593d49fbb37660e70d9a230ad47a425789a5bfc4a3e8fe162814b14b5f23be13edfc9c0dc5f6d53b31717796ad38e988c SHA512 7db0be65c7eeb944b3ac1c2ddd4937b8728cf8a2342cacf5caca95182543cc398ab41454557d33a5b8743d190a7e852729c08e0d175bdeaf504993507bde0e0d
+DIST firefox-62.0.3-fy-NL.xpi 470422 BLAKE2B bd1b2754fedc8bfbb4ec08d20a941d6541514bef6ed50c817df6a820a1d66cfc4918507b3d4211037f4fc7b17d4bd2bc2f265fa0892f889f990a145f3fc92fcb SHA512 693064c9a81bd7c4d0aabed393a5c4978dd2ea1306441360d6c6f7e1f8312a94c475587dd2feb9924161b121648d1a1f2238f24492956dad74b6d19730300c07
+DIST firefox-62.0.3-ga-IE.xpi 472265 BLAKE2B 762f7f156fb1b505238db03ddc67eedb50bb1f7f5151f3a9274556578634181c5e5fb74b81dec8ef478ef9847d1b7290c6a149869e537fca10a19fbdb18b454e SHA512 4259d128b05d9412903401c8e240c309c656a24de0820befffcd60a77c94e22fd971a3bd31ac358e298819292d9f22714298800ca9663a814b70a43c88ffeaa0
+DIST firefox-62.0.3-gd.xpi 473970 BLAKE2B 9dea50da0b160eba4ac776e729ab41cbfc4f4cca0de822b652931412e9c8a6c61f61b142c1f78d6d63bea37ad2a37369049d8d451d51caf7fbb7a918674372be SHA512 329137fb59779263dc9fa7612af864a42686e3a494c81a000d3b0442c6a2b57a98a07a2a234a8ebfaf1bc4e797f0fb680634f8c937448bfcb516e5932bbc408d
+DIST firefox-62.0.3-gl.xpi 451816 BLAKE2B 85ddc2a190a6c91bee4a5f002050da7b7ff1b50e1528061c48a6fd32941735b6c643830d9209b094f97ba9ab5979f69b75560e997eefabd2bf0835103389f89e SHA512 6a898a8f80deef54d48fb76a13d90ecd687e3ecd53acba3d18e492559ec63d624d06633b5876a7126a69d42eb18756bc282ce86a3ebbe27c892a680a3bb4a966
+DIST firefox-62.0.3-gn.xpi 483149 BLAKE2B 535ace3a8bb655dff53e30d3116ef3c913964e5570732410fc0f60aeccee3d91c692738bf07cbe906f379f54e9137951bc3a7edfa641dcb6360a8f4ff436e719 SHA512 a1c94e52f881a36aa43841a2a197ad522b110f66d7055d88a84e3755afd941eb4e8e4d351120d68f03ebe0099c79c01397cb25695c8cc72c3da9cbe5119e14f3
+DIST firefox-62.0.3-gu-IN.xpi 539984 BLAKE2B 2672357f8ddc919f3448c87ff54f7c72f9f1a864ef271004847628d4fc4657ee703c1d6f0d97f934d0f0b84b8fd520706a2af20d305301ff634dbe799ca8dad1 SHA512 329f5308c615899dcd5c92b950b6b0162e45997ee1f5914ca5d920f3ae5d312a71e9b377f8cce38c9eae30c47b3c0cd5c912b1b3856d6f599efd7de78cbad881
+DIST firefox-62.0.3-he.xpi 484809 BLAKE2B 269748c0caa7645127745feac2c3a6a822d7f0084a794f0822b1de09131517ccc401f1a4b693a2aba0778249466d2154c4e64d4792cf276bf6bfa12dded618a3 SHA512 74f7c9ea2b1e3677b2db72aa095a78c17243bb9890f0a01b2be349513295d33dabf421373e44cfb6ab34c42080476a06a53213e01dda71e8330dac40afbbe2df
+DIST firefox-62.0.3-hi-IN.xpi 537121 BLAKE2B 3278a50efd70819821e15eb2a523574f056bb74f745027bb6aea216177104d9dbff606c1b2b1cc6f5c3aa59d590b2855c6417ba4621189ec511ee103a59b5344 SHA512 71c9c0bf91d7ac4b9fa0ef194ec86e6fc130cf2cda42681bdc265c6ff22cd8813dad7576ab5000264b10346d6a6a33675dd92902e4ac15c9daf82899d8ba627c
+DIST firefox-62.0.3-hr.xpi 459608 BLAKE2B 4b57920171717ba7ef30ff439b9cc5b8fa92791b5a88dd0f09552106dda7a39a143e2245d96172c5ff49422ab59f9f455fe1fe0da715d69d6fca1d05d04e6b49 SHA512 9e04eb814287c12cb490b3766498568d8bffce135a2aabed161dc9636c006f4bc95f35c95d769c044e7bbe059c3a92c5b6b41cfea7073aaa8158b847ec57baaa
+DIST firefox-62.0.3-hsb.xpi 488120 BLAKE2B f0849da6180587679facde1e170397e2717034a8c008421b4c988f61e0bef2e6e989c35bcb92612396d0982d694a9f720e91e8b14d87d9794de7d6d4c7e5de17 SHA512 0a944b415ea14ccb98ef5376911fe36f64a7c72f4a76a53b00e8e3f1e7c6024db3799a0f97c5aa28bdcd43ec8bae5942cf5283fa96438a448b70447b7d72be1f
+DIST firefox-62.0.3-hu.xpi 487428 BLAKE2B f5d53e55e355d1f8e4028cd7db565a250470eaafe36242defb794d1bb8cca03c150cedb8401bbb33c0dd36c0c99361a799b242cd9c0300653f1961cf2edde3e5 SHA512 8dad4828e2f270d1f8381226c974c632ec58f603028a350558351234e97fffb690ca9b50a68e0f82c2bd92c0cd32b107233df3f00bfea5f92526f8298520a631
+DIST firefox-62.0.3-hy-AM.xpi 518019 BLAKE2B 03dc18856fa0df24655cabde57ce0fc582b14fb2b77d3c5a02bb91fa0ab6f27b12292f88e25a57aea43ca72de28fca51540c433b6cda02e3774b5896bc6caebd SHA512 f613672f5b2d5da34d6b32832adb10d4c8841cb54570972d84e3d02fb16d99af182d75105dcf181bdf3b6eb1b072bd4c90f1bf5e1f19e6f8031e2efa0ebed293
+DIST firefox-62.0.3-id.xpi 458276 BLAKE2B 3ff19c62df09b34f3956f07c590fcb0d42aca156197ea227db11fe8a3b7d46e16ab96e79a3d7dce1aac28039b1b4205d5869c26e09a391f6c911ef51356a25d6 SHA512 d0f46596583a2f92ad3921e11cac0c6d970f38c98e4015ad17973a674d9bc5d1617cf3fe4e91e65239de4ad6035702dca48157e843a3150bd141f7471e46f7c8
+DIST firefox-62.0.3-is.xpi 459617 BLAKE2B a8e3bdbb7db3499b809ca1f43f2b153e16e07fd22519c926338f4d8ba9ff0284eca90f32a71bb208c1313e85c3270fe4a31186343be396bd54749c1584b0e8e9 SHA512 1c946d4fe58958a7589fc55781c5b11cba5ed7133df723af688efca52aa53226a64d812bd6685b06117e8c15cfa1465a8ae569288323253259e079e25251983c
+DIST firefox-62.0.3-it.xpi 347139 BLAKE2B 192f9f280e3bb33072ed4b7a2153b7cfe9b6c01c5e9e0ecb5ad7698fab8ed6380dd8b8cc8a76ea64e15f1e6bdb01e62ebcd78fba7a892a3b8541799bc89fd06a SHA512 02c2f89e9e5cd595b825a2239517333c47063e90e19dfc4505bacd8fc5d09f79ff8511129568895360b917192db01a78cdc1a970cb74947215dd3df7b0a7882d
+DIST firefox-62.0.3-ja.xpi 504031 BLAKE2B 9d80d68643268438cf93c7b1d0a8ce0c68f19d5a57053cf39520bf9600ac8deb971a20e89edfcf1fd5da564b26ffc284694d0a2c80df10aa143c47ad162f0710 SHA512 58be82999b4c42b0ab786d67b5f4cc4e63be8c84f4df227e4b94026b1e5c62a1bb9c2046c29a895caf3c086222e70b2e11d664babd1f259983e34d99436d3cf9
+DIST firefox-62.0.3-ka.xpi 503705 BLAKE2B af01b8875fd9438fd354dbabd13c6575456ed33a98189cf6db1c48af4d985bcc4c5f99193028fa737df4172d2dd10ed7bc96095046870a67bcddb5427c4733ed SHA512 0fe2988e2133093599be21ee9191b636c13e44ed1ed2fa859779e309b39614742ddb5ea0910890f2e237fe4e4c6b515fe83c809a20212e80248e7e17ca52af77
+DIST firefox-62.0.3-kab.xpi 478240 BLAKE2B 91f49b947cdbf0f0569ab5181e96f9e90bcb7a8231d3913f282f7a2736771d3af844eb30bcb20898f206383ac4e5e6f2914b233432aa8eef0569f1c5b0392b2e SHA512 337cd6267f282de4d18b23342018ff9f863a5c6b8c68a3ab63a551a859d3e780117fbe74edae50a92a75f2227bbba2fb3a2d0edb55dedda3d7f32e0199f2805d
+DIST firefox-62.0.3-kk.xpi 530654 BLAKE2B 147fc758e07a4f3b2b653e1fc12853273c954971e4e31bca639b109e182e860be4c754cd3c236dc6fbe40598e5dcd3bad9a3d1fd1c48c5259a31540294bcaf87 SHA512 54cf420717258954e219ce073fba3938ef959c7f4132bc621b0ef716d98e65c54345bdebce3f2584a5e6174fff44caa6c34550e8c8e4763e174626076470e15f
+DIST firefox-62.0.3-km.xpi 521445 BLAKE2B 3d62b7a3d3eba96f466c7ab6aa8aeb4de07201e046078f4d3dfcf216ee2c63c44f1c025db1941fb099218432964e5f4f2f078e8b7f325b494369c0bce28021ff SHA512 550670d9523b2a9d338586105081e5c150c2a0d2a9bd2c20ad670343760d28781c0fbb7bd56f3f88a9f9cf32f9e44279e7ad9c594a158769c631067db9d5ada1
+DIST firefox-62.0.3-kn.xpi 528103 BLAKE2B 60bfd6dd8a4cadd556a971dff5dc38b86e63e0ded9f2e884dad23f970daea299d2a07bc998d24dbb8ea8568d429d3ba681ba153d0155bfeb814559590dbf2cec SHA512 6398ebe1f32d927ad2c36487962f730efe8d1035c96b415218471975f5eadf379ccae5ea2bee8f694fd7b9164011b63ac12fd6647bdbb174415c27027ca4ebaa
+DIST firefox-62.0.3-ko.xpi 498342 BLAKE2B a1957b344169faab6d59366ff3eea2602d150ed71a1df918a64ee6f38541863b261bafaac491971dbf7435c11f9605d416b62abb28ede2b70141005ea1413e9a SHA512 65a3e637801588a77efd662cda3c0bbdb8de487e810f56d9323e0170623dc7da683cf517056784e0e839dc7908b2877e7ce8447d13842c7dde85620400703338
+DIST firefox-62.0.3-lij.xpi 463444 BLAKE2B 81a3245edb34bec066626629675d9d4d6e5c507fd7a09d6de80f41d5f4d43bc924f6b65e6d67f276dfb923a55676c0d63bae21ec9f603c48e19a153c921906ae SHA512 7bc2b72177a4be528f477d5fe9d36411baa1222bd92ef002465b957fbe3249a7a629eb39f76228964b071e4a9c21a15c722f1bdc42240c76a86966aabaa59225
+DIST firefox-62.0.3-lt.xpi 487650 BLAKE2B 20f5db09e5a7d01be430a69b63d234ee6d1dca8f6652238d3f65c17e2554cb4c978f3a64b67ca60b9e436379d262699c468b69c3d0294e7d2e49713a6efdb959 SHA512 dab852b7209f64a55c734fefa0238b7daa08b155efb5ff95a88a347164a06f58d55f1bd049a516309a724627ffd4329b021d473d29350e323713e62138e68101
+DIST firefox-62.0.3-lv.xpi 475710 BLAKE2B 434c2ba0267f7ccb1e6bd8d2f2efcc0e94026400254bdea320954408c4bf2bd9dcdff1e93ad43f32335a04777b1c9f2e513fda678b713e10197f8ea142b82172 SHA512 a887f82cac85051e599e5f728c7de908cc003dd9f0f3fb9ad838496cdfbaefb4151b5dec5f727aaa517793c6613b6ab7d3e84c8620f5654606dd7e7887ceb7f2
+DIST firefox-62.0.3-mai.xpi 494726 BLAKE2B a85a1b071a206d2918327e8f293cfd5b57a9872563fd2eba9a7e2235dab2655a8b5d63061c10079deaf75c5e0d0bfec4d246459d6e620cd48b6c1024e54437c4 SHA512 24aff560e303268148680c046413e067e64118826fedc426eec5742afded0f287adee35d156f617cb5ce22706f444d487af37eb7add691b34fccd467ac34dae6
+DIST firefox-62.0.3-mk.xpi 457532 BLAKE2B 622fd27e39ccb70a8bca5ea0d0444ad935ae342424cbdcaa7bad5db32f4bc9d27839a2778127a6d1f60eaf6af76f2452cd253c2a3c571ecd593d7ce2e1467fec SHA512 32d03bebe02c7f85cbea47970d6ec1ed72792ccafb9ead5f7fe74fca4ed722320ecc30c95b73ddb4338f1b9eae391939ba6ca60fb507b42304f092e045f2641e
+DIST firefox-62.0.3-ml.xpi 538825 BLAKE2B 57cb6512a6e36c08695c2f284d83cc9ddbed49f217dffd2b05c1f85661d36686fd4853a3dea95cc31ede5857026638a4bff3d735b70a5546b150fbb81971c68f SHA512 dc43cbaaf9f40b8b1b526a0301341f7e84eb78eba06b3450dfacd4d914ea31af47de4aae16dfe7dcb0e2f5653b80cfca0e31707fa77c8b8c6da456481340417f
+DIST firefox-62.0.3-mr.xpi 530350 BLAKE2B db928dfc0dd2a00b6093f674ab6fa4069f29837edb292167374f9276128c3e0efc68176d9500de622317376add496f95fdddf9cf4ed8dc8eb91eb7aabf2c0d14 SHA512 7f6bae467a939ce3bcf2a7d0b6339a03dc34815dca87f13359f54e615142414125da896f348bd7e9cc20cbb21b714eb38393ffc7614afc624801c77025f91133
+DIST firefox-62.0.3-ms.xpi 459916 BLAKE2B d285c47cd1c56c74009570e2be8844c4295093554bf202b8fbfc11eb6c72d3132d8119a1368f4266e1e2b3d0937cd9c8af21fa4ad0b3fdeeca7b495367ac9055 SHA512 58f7a3560616b6c69a6d6826ab4ca9c4fcb15bf9333887a8858f47135bc2a0881fc375a2c8c821714867dfbf9be02e64be848428463c1a8d6e90ded7fe16ef6d
+DIST firefox-62.0.3-nb-NO.xpi 458931 BLAKE2B b9bbfa8952788ebdfb1d2470ed95754c3eb14715e0dd73318099acc66f3a7e720bcde6a651c01e4b9aae9edbddd2e7b9af6e193eb10f169d6517af23836ef3e9 SHA512 b282a8177051cf803c9924ba0501b06f97d3d82fe98a3074c7b0fd72dfb1d0f548f85abaaa75d3c0613d1393c388279c0848c2d62445270d42a71f401d9400ef
+DIST firefox-62.0.3-nl.xpi 459511 BLAKE2B abf24bc016d93a6e41019f8fba737736c497047abc36a1b77f7a005751663e0da86721f09f7addd629022793d23c5e3da8058e63daa974aba16032f037296ca9 SHA512 b30723296f2c3d5aeef86702fe3231ea6b712e03bae498d2f34e730ca210ea5c0177db5d745db687ac9452ae7c0e980119a4d9f0577613944953aee64101a656
+DIST firefox-62.0.3-nn-NO.xpi 457054 BLAKE2B 55c46965787bd4811ae019144379db44c63bf3e610645c9b79881b7985ac2d98bcce5d645763154bbec17a4301b4991c83e26819c27b29c932c0696393760878 SHA512 80a5d23058ee70f1950405b58f106cc389a2a22b19079cb7ec9ce0a9875b95888d745048d44989ce59bfbeda78b7f66052269d36597b37df29148f73daa2a046
+DIST firefox-62.0.3-or.xpi 485373 BLAKE2B b7646941c6ff48aadec2080b396f9683942aff763cdd211662c64ef60637cc5d21e497897e1220224aadc51715f5cb685d6e2a1916de2d6eba466aa37ae1ed93 SHA512 1a553762f5d24b0aa258ea65644c1bef6041ed32e8ed8ed2a51c03a894c7505ed27994aa91b8114daa3228371e7ebabc713c454ece497ed183de5b36e149317c
+DIST firefox-62.0.3-pa-IN.xpi 496915 BLAKE2B 16a3fe36573ccae0e433d0617c193678b11fc9f2ffdf424d04f616d86ee94343b6a12e8a834f8ccd003ddb47d406d80312108664ebb62c2825307583a9db1c16 SHA512 b963d6a0d961557fbe3d35c14a321240a4d57474302672a670f71847ef45440b7373eff4f6820e111329d39383425f97b329aebcc7f729a56eed4ce6de22c4f6
+DIST firefox-62.0.3-pl.xpi 370890 BLAKE2B f7a91525896804d3e67a257a399d9e51b403220ac017ab36f55bd695f82506de2d781f70ba2cf55136e8d4563740a32da3b7648a9fbef668f604b311b8831055 SHA512 ab9a5a034f47af378b68b9511bea7aa8233d21f2e37dc087c30944f52c81eec29f114bf5a54238ab686b805f7a85bc5f76449bd2b582a1b4097ff886def378a9
+DIST firefox-62.0.3-pt-BR.xpi 460872 BLAKE2B 9984103ca60aa26191282ecee0281c41b2d345e40be6eb20a493d0aa75df8a720e1a2e80bfad0bc550780cc5c2512d1a0a90fb0a7e60e96c8754ed317a5f1fbd SHA512 7aa346872cb29ff0be1f05c8653079e712ca6757532bbfdddc10714e8c519e3c7a1eee10b00579d70f8472d48d228e1abe0d4172cee76490177f80684c9843e4
+DIST firefox-62.0.3-pt-PT.xpi 473528 BLAKE2B ee93c1367bbcb55c2c8ef388282043156163bf5dd90e6362e142af03d6bde93334859d82659e30ab2381791d1753ae7674062cfbe01712f4d396525a78a39a8d SHA512 cf1f1036f05763269ff759c5967d53ff93a4b2da8d4f6980c78406e519b6957be3b94c71a70e9d0323019d4183accc29b81e47ab08221b8a75ae84297aee9778
+DIST firefox-62.0.3-rm.xpi 462474 BLAKE2B b093695ade461a541f9d4f60a9f09f6904691ab84767cf314853712fb0006f84ff53f42a49f8e0d04babbba018d77e89b0d6f11112fe01b035583d92136f6d5b SHA512 dd400340cd22a38d20d9fe70d2f8b1de98fea3f3e91116f50b801b8fabbb8c05f30a9771ab621da92c77b6dff54379b0b684d9390d6de92bbfab44de6ab67d87
+DIST firefox-62.0.3-ro.xpi 463410 BLAKE2B a3bce065ac2d0369c3d264f933af89b8e97ca73355cee0fff7957efdaa2fd753b1271b316ad746c1c27005fc5096b04fa408e9aaa96857a6579c205c7fd7efbf SHA512 6faae43f4c595a38162267769a6e95b72def73c76176bbf9deb412f513a285830fb9a3fd68b675e043986595934e81068ab2ab5ab135b544a90a528abc73307d
+DIST firefox-62.0.3-ru.xpi 539883 BLAKE2B 2b373c5cd08e34b435d476fdf24a5a62512433e8fa8081f543171b2c29fb09f683171fd2cb7b9a738b2ae88d18bc7933ea868bf4d38568dca0bcc7a8de690d29 SHA512 61070ab84255daf4fb15060fb8b449b2f72050b30a359865b73810a1fda04da0cbada58e9542f28487f4d5a61313895b22498f610ba9f208369ee87ea9933d56
+DIST firefox-62.0.3-si.xpi 487601 BLAKE2B 1c342c1744d1fdca0eda79f469cacd9f95c0261d5d1c918c530a97821f722035cb01297863bf320064fb6f2948149fe5c36a372583ef11f38b9686f1d5622b61 SHA512 0c8f9c2860bd85c4fd0648049d75dc789f2a3b813876383309c84789e5f5c457187923cea3143b9bdb5bb2e05e7aadd94e804063249d8b28d8d1d7d275a00ec0
+DIST firefox-62.0.3-sk.xpi 488135 BLAKE2B ebc75309a6c7f288a6b0ed90096cc086b94465110ba12f1a58e2474cd8e89f7a36b7fc8fac166970d27f91d04007f0b3d7af10c3c2653314da54462e142e29bd SHA512 7d7114ddc7ee74f97019be69844f978f5a54480aa7a14880ec9017cc0ba18f11b8a42f02f057b53fb8171aeef05116dada458650bdf286fc07ed1bfb358d1527
+DIST firefox-62.0.3-sl.xpi 468413 BLAKE2B 021dee74eaa217a2c8e5dd7a21b4b2b17a684bb9dfe175e9eb932ca717cd0d6fbac2fa63269ab8e45fb660a934b3502d33d0e120e4a41509013fee3ee8cc71d6 SHA512 884a543d205ff86abc6ad200a82d9585c5e174ea80e7c1f322567061f42c38002ca5b28f70e1fde398c0ed2df47b7fcf9bc70ca8c482a4cc2761efc312176fcb
+DIST firefox-62.0.3-son.xpi 445942 BLAKE2B de503bfbbe8d9b9e158c8c32d8bb497431142e44270f8b7afb3a3e82f48e80aecc8fdb35a45d71da18fd142df62a9a2d508732065afe95a47059cb1bec9f5d52 SHA512 5da14a162b64528560c55a2d046491cca79d9de928a16aa95bc3a805f7202e4714001a32452655f414badd392268dc17dd6ed4af8b843dd2d924e42c6742c687
+DIST firefox-62.0.3-sq.xpi 475527 BLAKE2B ff434796651224a3bca8bc8696b1b44d1cb85f8ccdd3b18ce37a570c02d99235d9b09bf5330e2ced15593b8e28fef462bffd953f44fdf31c4b2d37be7cc984ef SHA512 25959f4d2ab19bba10070f411eacbe0aad8d6da2e096451e8db3a92b100b37ac082b59b19b5796d81477ed21a021ba61675ffd2e529cefa029f9280b6a512293
+DIST firefox-62.0.3-sr.xpi 498808 BLAKE2B 2f5e8f9c975643085fe5e256baa28721c709f709515bab167f4914c5b8d7c9921228f51ae1594ff09d23e3604a831f3e3534b5a011ff33db5cd9f88c79000119 SHA512 89b3cdc133a26a63b476df2a1c06b0fe1bac8eac8f5a6e4921d626d7905053121c13189196790cd31a3e175126eaac868ceb49c317f1746888fc28e15fb5b4d5
+DIST firefox-62.0.3-sv-SE.xpi 469502 BLAKE2B fd316fcbdd579cfac3735396bb2247350d5eb72282b1c03ac2d2ded744b14dbca5b4f6f19d0fe75747e1efc8f8bf5419c1c8a9ed4935aa0d2b6275a1e8b9f13c SHA512 d0f08048ccffdbed2987908b9e22afb36bf42bee957ecfd23245316f6ce2dffdc20b05dce982999cf31014ede618d83bda7e04603d23db00d8cf92b6cb70cecd
+DIST firefox-62.0.3-ta.xpi 526475 BLAKE2B 8c5c8d1862d6123bb804101ee9b1b8763600caff7c9ccafa7151ce8d037f8c7e2f0a76a34344574fb56181a79fcfe15537df5b35d4244c9a62bd66c589eefb5d SHA512 56a655b014be8c7c1df9054fe1ef065a8250248b1178022f3bc76d2d72f68a397ada668622e681d89ee73db6e25d3bc131d0812d90e08da306dd968fc6b8b5b1
+DIST firefox-62.0.3-te.xpi 536779 BLAKE2B 59d12c2cddbf76f7f154cb86acc7db05b35c198711d6bb4058c0da1e7376a650226f8c940bdd176a2c14ad7fb553ccac8d1ae2a58a9bb9755441c9229bddc9a9 SHA512 21c380a6c2c75ec2280ff8f759fd6b7f37a70aecc21bb64e357a1704a88eae6dba44c22209d48f76dbb75d5f243aab4e420af0518c49a462339d5093bfb1d557
+DIST firefox-62.0.3-th.xpi 507128 BLAKE2B bc671a33153c23688562ce77c10e0f1be25ac4b632165d4ff4b919bbc208e74f4bcab3992c65913ac96fd91874dfdfb5483725a66836d5d65adad35217ef99af SHA512 8815ec800faecad51296220179cbcbc6906c781b2b986cbb7dfebc8624211bb1146de1c44090218f2df1ae0eda5a5039ad08432d913081067a0bcc12851d50db
+DIST firefox-62.0.3-tr.xpi 477275 BLAKE2B e25948064e0f8a4f1f8476fdacc96c3467631743c068c3b80ad30ed5c9503e64069ef073944a0285e59e56cab63759aebda3751cd115dd5c120626e26e52bf18 SHA512 371be3fa55a14f46960a2e4d0fb349908c2c9bb9347868e1475ae57d233b4cc0d033e4366993fa3c49306765fc6c86b45e9015f7f7b74751ee99006b1f922052
+DIST firefox-62.0.3-uk.xpi 532597 BLAKE2B 91c44cdb09bd1f61356de74c6f5525b032009f55f5d6faf3a62226d824c0268b7f348827801198a0d325640ac42f852980ced2d08d6c835ddc6f2f180b242f3a SHA512 4f7460f81a6dd5428b4af3325cc4139b13af7ceaf485998ff156d30a962ed90fc093235b245aaca6e6371ae867aaa4175bdfd5de66edd6778027865fea9ccf07
+DIST firefox-62.0.3-uz.xpi 457999 BLAKE2B d715d38da8741a8850a2c186bad4bf741e8eae8e023d14c8a209e71480a90a55803530417fc0179d2c135ad5fe22daecd389a97889cc2d1ecaed211f6eea08a1 SHA512 e465ea3ef0c38b644cef099bea7fdb5e410c877a9eec8d153c750bebee5aad3e41bf1d7a1cd12f08d6c3587f575bf5bf554babecc35b5fd7a186280ec65b5a0e
+DIST firefox-62.0.3-vi.xpi 478333 BLAKE2B 5c492017759cba46a69b209a9b95f130a4749f2f25f347fd803763200552ff53f6badbeba082444bd37a4c3d53dcf3404a71811390cc096a145d62376aaa89b6 SHA512 d560446571fa3767af03f4e857c26b7caa59307961e44baccc82647de9395187321b8ddb47f854dc054475aa90d874fb70b9cba3c3fbb925bdb5ad61f67a982c
+DIST firefox-62.0.3-xh.xpi 461205 BLAKE2B 38682f7f0fe4bb99b54c05b0e042e66bb4932d6c289483a322b4d2bf25364bc7b676855ad4a0c5d68828b26907302a0bd7f4abeb09c54ab03c574f3e73758e1c SHA512 1dd1b16e9dcb468306a34b3d8b60bd1b1ab0c942d82c185a9caa1d33da3f32fe479fe548970de0799556b89db370a9522cd76558f4d0e2b15573eef9a88da435
+DIST firefox-62.0.3-zh-CN.xpi 491488 BLAKE2B 0540afcf3de006d39b8065335a2470245da51b18402dc51a1d84f047f57d7c0ba12b4c8a0c55cdab33fa1b82d158844e4c9f0e7073f309a486842c29b8dd3574 SHA512 4b1fb095b0f120b40cb72922df2d96e95eace516c4f18d311cabdcf1654110d7d8be588b4949f0918117d5fb72a3b09eb263f09ddca676822745d19daedb25ec
+DIST firefox-62.0.3-zh-TW.xpi 494524 BLAKE2B 491437706ecf92a563e79735ea7ddd91d60b177cd34f754ed40f54f2a130c307f0ae4f62665fffd56efb00da4ead24ebfdcf926d079e6fbb863e89d26ba3dc3e SHA512 e3beb785228264299b777724b19d98ee5ff40916a6f7fccf96b95e7040ac491afb9ddb48ef484053908b58edc8874f43c055bbbeb6937d7b10b70fb8c40200c3
+DIST firefox-62.0.3.source.tar.xz 259531444 BLAKE2B 94dc812e288054f230ec0faae44155e6a9d5e72fc5bcb78341d61f8391d17d72d3731c7fffb66c2a59cb572f8b18458c5fbabaa94779d48b5660db245aedba14 SHA512 487bb7791284367158c79cf7918fecf3d598627a6416e679aeb5d22626089aeffe07762fa2389819ba881c90ece1c5a83cf2d85b2def15b8d5ba0ed1c498b527
 DIST firefox-63.0-ach.xpi 455084 BLAKE2B 4dc0d05391912e97e6d91529882d3c9a5fcbb1f5ce5a6dafe39b4d2cb12563fbef45acb2b4763b7de42aafddcb0eb89d4d125469efe01a090c7abe3d855536d0 SHA512 0006110f7e5dc5d96c2d63799b9177de1109c5a7d34847187a29106db04d2846025241e9e13cbc88ec1ee8e1f62a498ef9672b73a0620d801e14ecdb2dd33ba6
 DIST firefox-63.0-af.xpi 437912 BLAKE2B bf8d3b20c37801d6f9b05c5bd352fd868ff58c953f75ed349d25d5f56684825e9567794b114174176b6d03afc5e1aaf57f01a717aecd39716484334a702a5a8d SHA512 ddf2b50bd8b867b66da2c7651e51926de646b5bc645cd5fc4e0a88667ed25106468489e0398da22ad9047eca3296ded7c144aaafd0f6f5a214e48f53d73d2465
 DIST firefox-63.0-an.xpi 474545 BLAKE2B 78044ddb72b3db1516b82edd44659603f2b9aeb494e222cf85860a0aba0008b9b6f9ecbcb457a32b099a8d517b4a61ea719d3a50a50049f9cca8696441552cf7 SHA512 186896321eeefad49a0240b0a9e94d5ba8e48a544aa69348a89843cd2c4045c05017def025a1bfaaf3844bb29422509a877bf51575891d2274ddc9a1f7b54fd9
@@ -284,7 +284,6 @@ DIST firefox-63.0-ar.xpi 513464 BLAKE2B 6eae7b5feeb91906ae05c7a71fd2e8a77ff6c5d6
 DIST firefox-63.0-as.xpi 482195 BLAKE2B c15e8c8881adb0053707f5d7dc39f026185faa2020a3459fdeb3b8a4cd526d6c90224ed04011caf1d6827f14788d8ba33ff4937d9536132dbeba6fcf628a9ae8 SHA512 846ccad1ad967dace61590c10390e1814cf0d9078d009951c4549498c417603f11a417f05da11e7ec1f3be15e87527bc9c31c948e758fd48deefe98b3e9f7d92
 DIST firefox-63.0-ast.xpi 465656 BLAKE2B 52d45aaa2873111ae32df642d68de9a0eaf7745fba7c4b23d537923fd35e53f5a29414449beb3181f23d78db41f20f9e3662465210554692e858bf90d442b109 SHA512 3344428c74708e8e21338bfe24ac4271994e9a6eb11632048601bbfaa5fc5b0ffd6563beedddfb9d9648a3b08c96fdd15f6d9eb24e11b8dc55a642cca45a76e1
 DIST firefox-63.0-az.xpi 490944 BLAKE2B 6d1c2a394ebb2a3e520b137545c4feead196b1e59f413d52ebae05b9773b31d133954f4ef9571176cea75e3d5084fb5778410ecf366bb42976c7df3fb8963a85 SHA512 7515d96d1866cf603ed08dddf5fbfceab89ff7ecdc40c4dfe4ce83f0673358b76e5120a61f42c7fbfc1293063e270ec7ca4f9d620349a9dfe51ee125528d1bce
-DIST firefox-63.0-be.xpi 549300 BLAKE2B 3b623d76defe0610515a7e0ca12c2210c425138a7245334db9cbb294e1cea35515a4966e1b5ec6cfc90c3770a2723addf8665759cf44619d675f2eda5801648f SHA512 72d06d8278d21fc3dcb22fa8dcfe921d9fe5a4cc134f0aae83686a7ba9f54d92f2dd76cd81318c5d0d7d0333c8ea7becac2d65cb86a4ea74d8ad70ba4c3db2bf
 DIST firefox-63.0-bg.xpi 523523 BLAKE2B d0faadbf781c085c62684d6c38bca8e55e2e4cad5151c1c05b14f2760e2a6b65d2b0dae56e112535d2e8a98faa4d17116dfd5ea501a43dcccb36fa91a365ca64 SHA512 1c3b1cc454d750550a3a1c4d3eb302a0d4a8a69e75c15cf7104ed311894faaad82ee436f9e3cb686cfc15d092a43781a9d433b0f11ec7b7e71d910875c6be44e
 DIST firefox-63.0-bn-BD.xpi 548594 BLAKE2B 2d344bf2d1459cdb7bc24f03b7d15388a6af388ba2573c1dbcf81b545ff8e21ab8c92da822847b872311999712cd736f24a3295af4e324d17f35d6a6f102da8a SHA512 f1f93dec43da6a12aa7ded4ed560a322f5ccf281c8994dd6183aeb7b1e85015b24174b3ce6e917a13e180e4e509dc7088c4d5a59ff283a514ff21ac5780f95e9
 DIST firefox-63.0-bn-IN.xpi 516020 BLAKE2B b67c118924740e92fbdf16862f2d41d3ee123faff23b83575b57727b69129a74b4b2c369b414f1655b5fae40d063edb853cf52d6a6fdd14579bb1641c7c2c6d6 SHA512 b52a114cc07777d2cac1557196213039f7d5348f3c7b2987221673c6556dde9679e7ad34ccdaf12c1f937b2f922850756854ceb0d0aa4854b9d3188ffd98222f
@@ -298,7 +297,6 @@ DIST firefox-63.0-da.xpi 481835 BLAKE2B 1dbf68caa58a6763d6c06ce8a9bc0e6b99e1636d
 DIST firefox-63.0-de.xpi 491998 BLAKE2B 25935204a4fe192a66162b584f0b6ed84079678280ce777047eb3a135f4fe81c8660ec83da13dcff70b0fcef7a79abf0ec3edeaf09bd9e6137a3a068a8a00749 SHA512 b69fafb6b21f6e36218d7fb8ba83643fa16570ce993bb52e8a09b775875f63ac5e9f239ef6cfc30d211d3b7f0f903da1b1cba8c6b1411d61f792d7a9b7777340
 DIST firefox-63.0-dsb.xpi 500887 BLAKE2B a3f046bd1ff8ef4375d095efd8a7bc93a2f02318fcb70e2c665bebbd84c58aa87b5c9f9bf270b8c0f4589fc371511730f739275d35bf9c482af20c3e045effae SHA512 6b306dc0d59da1dc7c5465e16a25cb6712eed83409a00fb996d25db8f184021441c7add280752af696183d4d3b0675fcdada3898ba5fd05d9837fc6b5b6de33e
 DIST firefox-63.0-el.xpi 558442 BLAKE2B f70a93d5f94d86ee511b2402ee7bb101d83b40380e97d65ea4957d5831897cd43ab21ce8328ba757adc06a754d8938706af45315381db87b50369ab5900b8e49 SHA512 0fd25a5392e12dd29e4a67b29620fd79dec1eb3565936bd34d25695548aadf81c5e4a55a09971d4fdf80e2790643b8b8be44b3a9ba97e26780d4f02de8f8fcc5
-DIST firefox-63.0-en-CA.xpi 450713 BLAKE2B ce1cff0834838c790b0c3c3739c69842697ef3506cfa4bfe0381f3d2a3c8f95ec4b8eed1a3e586b27f4b87334958c7f5605bc55c12f3628bbadae86baf0d3ca9 SHA512 fc12eb102c97be45bfdc8a0813ec0883aea146b7decc8aaa016cb3486c7127731efc8c5213afbf3ac9cb8a40d43781f7b639178ae3a0fcabb989b2508d9b53ed
 DIST firefox-63.0-en-GB.xpi 442413 BLAKE2B 3414c895cd5a815fabc9a9ccbeaf650edea19883bd81c5d21cb007d610048bc4f378c7f02eba117f6565ecd65195d7af6f5ec3c3eca57cf9c36a884b155e9f1a SHA512 0b074833fe2b11c4aa2526f8303b2fc6395d71f99b222173917c4fe04afe6f63000c73f22cadeb907245dfd86cf33cf093c3c886c7e27682f93be07a3f65741d
 DIST firefox-63.0-en-ZA.xpi 427845 BLAKE2B 0b604e3a8d860d46fb34cd3cc3fcddacf99266da763b921c150068ceb921e2578700177695663e761410f8d3e739ad5ddf899fa31d5941e2ebf31b20eed05007 SHA512 f7c5359117d5bbb83c525770cf864dcc92698ac41626e899d0c522c11bff9dc3e143d7dcc8c4bd89db0c170fb05cbb197265ead7e0cc4691a5ae3d1e6c4c5c51
 DIST firefox-63.0-eo.xpi 478961 BLAKE2B 2d8c6a010c8c0725679fc0ee4f71fcced2c7bfe3b364688144e6f537298510decaf539a29539f9ad9e4b7382f4e17566150767006dd60216429db119d98d6fca SHA512 d0084c4dab83f975bfa1060d5178757d91ea4797d432a9dc923adc04ef539f35b2d9208de58ab440fdbe145f0e302da6c06d1d12111478e45e291a528ca923cc
@@ -324,7 +322,6 @@ DIST firefox-63.0-hr.xpi 468490 BLAKE2B fc4f91248cfc8fbf3f9518d2bbe8ed701441e409
 DIST firefox-63.0-hsb.xpi 500688 BLAKE2B 319120fb781e66d2d8c9e580b1d604527cb0bf35e5ddb4a00313617a4cb9008edf36bb6257fb16f773abf6648baab24c088b36e8373b243dcb4b65ec921e77a6 SHA512 d36105fc657ad82d3c4ec3b9a53481b98bda13b4f7eaa6cdb8369725802e29c410077f7b021fcdb21c92023b3163156acfb28d8c946f9e98f8ffde81281b89d3
 DIST firefox-63.0-hu.xpi 497767 BLAKE2B 054650b2281dfd6843ec7c7c5b5334e88a1858a098a4c9832658e28639aab30b504ea792687185cd954c8f220bb443d452ff34d89eb2c1e1ac718a8b5298f80d SHA512 91a10579467b5e9b2b2fa41d50330f947c24734eda3e61c09b2901451395b238c9106bf27ac550d54e9e91e04020023391816f38f13eca6e1e1e8712f7dfb053
 DIST firefox-63.0-hy-AM.xpi 525183 BLAKE2B 3810caf2cdfa4a599b9562d1cc4dfccbca95665cbd34bc0c3b7e98628e478fc213b4314645f1f36416daecd20954b4336fefe14228435dc5976192f291a30816 SHA512 a43b3024187cabd239e9ed838dc2e15078cabe9e5a40480639d7dbc3fef69d559c6e94c1aaa9870f280f6175389fb9adfbebe89379b5796b697f63ffa5100762
-DIST firefox-63.0-ia.xpi 474996 BLAKE2B dbeb7cf2e5a5978ceec3ca31244f077ba6f3e4dec1458064a0e839583c4361b1e66e13deb9d7397aef3b48bc98a67b653ba6ed5e57b1ad5e15cd46c073e04498 SHA512 d1af1a71a482e95c1d3c8bea3388ec386e524e30e8bc607f6de9fd1a8a40e0efc41e7d90de8e31ee63d53d20f00c69c4772e1a2098361a4169315893dadefff1
 DIST firefox-63.0-id.xpi 468258 BLAKE2B fa58da4bed97c0c01c4c289cfa5a0fb4813e4a7658105cddb2bfe12792eff0c5810109295d899685ec3843ef112415d07e05a261c1c773c9cff177832c928489 SHA512 56d03a13715be634938a3f5296f9cc7a6fa9206857ee70bca2250494e571985dfee408c9f374ba640cb7d9592e71dd1cae0ee604e9b363b3f8aa6049f17140b1
 DIST firefox-63.0-is.xpi 467334 BLAKE2B 9fb44b042bb829ed75a62b0462c8d90b644882f57cca0c4823fb7cc9f30043a5be2474584ce254267411f7eb423b62220515f4809d3d2a3d5d5f167cc1657972 SHA512 93286997a1c084328422761b4a44d2b7a5ac8364cf6ce80347a4004a7b474341315ba24a9b864c09f118ff766f3cf40f1a6fa0f70454663530e88cc42ef2f1fc
 DIST firefox-63.0-it.xpi 351091 BLAKE2B 40c60d03dfa749c068deab11023a840cc9a460e3027be457dc1d34fc4688bfeeb1d79eb677b78414843d04c776407989cb909150c7d5aa8d56314a798ce2d0dc SHA512 83e711db8d3fcb04df93c7ce6a0296f439d82302ac2a1d1573742599833c5207d87eb0892c0d1ba87cbb5ad53a4094a849b7d65805f28f6c5049039f4cefef0c
@@ -343,12 +340,9 @@ DIST firefox-63.0-mk.xpi 463726 BLAKE2B 09bf37693ba765eba6303513578ee827fbda36c3
 DIST firefox-63.0-ml.xpi 546422 BLAKE2B 08300eb4cd28233319bcb4a45274e61bec88dc7095e905a17982b765432ee339538898eaf61eed2b590fcd79e23bd9a335cefe2cefce26f66de10d7a88c58d5c SHA512 026a56a6ecba6964aecd4dd8d9a811d4da5f794cc307aabdc06fd364c6e57460a88ae234327db4fec1895a3e448fd6fd17361a8fdcaed5d26ad784f943df5b61
 DIST firefox-63.0-mr.xpi 538968 BLAKE2B 2b104616d080da0f0ae7c2a6af604ed39270042eb05f4a137d06b6b653077a1aeeb129ea91e681516c5c9210d2979731959f8e4b76104a917b0855adec7318a4 SHA512 6a19687e96f30c6749c27f8fdf132867101c78e5e604bd384305e017eef4fda17d9e69db4b51dd6536626e63e7cbac8c05da9e6e44e87c3a03c81aafd0a968a4
 DIST firefox-63.0-ms.xpi 471525 BLAKE2B 001cf23507c4ecb28510db1c3fbf867b1bce942de5b29a47ababf9c054007ade5ac9ca6d6b1883d2783467c1e1438b57691e408d0618eb56cf4d4195a8f485fb SHA512 d40ae2d6f8c7b9f851e5207350928ae42e6c92790780d97985184bb4da7dd81f2478879e9784cef75d465c70b9ee2751ab97a3709e1fc45913468cd42489d7b4
-DIST firefox-63.0-my.xpi 516689 BLAKE2B 5c4e8426cc51ccd6ea9a46ce9d6a48f2bad9a970f6e8e10ad490331c18cb8f45ea54aaf642db03b4bcc0ba2de62327c2e65fad99b60c03abe07e319d5fff002d SHA512 7800b9fd65b661c6817c5b553690ba60b3d77a955c2ad229a67600cb61fe456bb786f1fae5d7d5bb3fff38afb77ffd008a9bb16f013257a8c7424007c6f2c854
 DIST firefox-63.0-nb-NO.xpi 470897 BLAKE2B ae0046a256612a063afcc4ddc08dde7cbd1d9892d91b51f19d888d377956b66c1e3bfac7b41c0888cd308b620bdfeed200a91c617fa53dddfda013951eae8a3e SHA512 35a8186e0bec339938f8e433c505cf18b896d129f800b577b8cb2eb739d7d256ad904781ac6de8640169ac83cfbb75ef0426cb5ef7cc088f32b66f2e1cb37110
-DIST firefox-63.0-ne-NP.xpi 508081 BLAKE2B 64df56a1779c7e5f8200b5221675de5975b71f489e3cf2d2d4d853c0238dfc2baf2d3ec5f3ba604951d9833a4fb8fd2bf9103e8edc3922fa2e5ee58038c40016 SHA512 a05801ccd5ec72d3ed3bf24e2f5180e6cb868b34429fe4725e8294dc81cdad953f916816f41ba868de185bceed0a2f428e0cbe9fd37e732b6d0a0aa789d84a5c
 DIST firefox-63.0-nl.xpi 460037 BLAKE2B 5944fe36781ce4537b55ce51aa554b5c6ff8ccea7b25cd3a09eec1f942a8c299a7de21caf5183cfba37ef7213b2c23592abb9f27ad250fee5012cf748d2d6308 SHA512 47408951dfd5345f63ab86bddf66d1b01ee4b4f0746f6d2a7e50193aab1e545c97b0d9817a7cd66ddfb47ee9a0d1fa22efc85d0d3ade9c4f164927f1b688c60a
 DIST firefox-63.0-nn-NO.xpi 469109 BLAKE2B 78e385f69f3d8f77934a188faa5e0dc51c3c600417d741c543fff2cef9593cdbbccbfe0f106e8225b7ec90d84cdd14946b0ab4ae71450a14adda0e6aa29c5b96 SHA512 9650220e126f47154762f1b12e19157e91f53844198d7bb47bd5691140a4bedfb3c0dd4e773012692483b4c285ce4bbcea3e174643b554f616475e1c873596c4
-DIST firefox-63.0-oc.xpi 482911 BLAKE2B ee8b8a2c4539eb5cd46fe7fa7249902fe2a91240bb5f199af7a2bc0af4c0b6f95e932b57016572b93c20bf0d1b6222d6128b7ba1eb6e6334c250cbedcf5565dd SHA512 9872e25d7b9a40da118fc214cbd5a517b5285d72561a8fa541183700d9c59e68f5065488a27cfec87056b44dd40367b3c4d87523826585b5554a1c21e8979cc0
 DIST firefox-63.0-or.xpi 489354 BLAKE2B d1038fcc3a6f2c7e0e7805040f40a448c531d1dcfa92ef22b76349f582ba41c8340f52fafacf9f25846aef0a30e5e4326f22ffb8923eed994a7bf48db2b5a481 SHA512 293850a64951a0b1c0f47085bb5cf81c997b5a9cb67028545ac9ad7fc08b38607f9b51f44161eef8e5f2af2a89ebd4008c855ece0e8579fb614fba2ea4932b9e
 DIST firefox-63.0-pa-IN.xpi 508197 BLAKE2B c0623247f3a1229e1ed8cce037d83880cac33a78e8e7c6169358d9f2789d3ea2f12c7bce00f123b3a5f7de5ec1e06c3eb9c436a90a925658d46682a5da391c74 SHA512 5cc07e41af080e6dd3d7cb23f287e66227c8839259ac5b27e8a414856615d6ffe89e1d0fe798fad2e22005c47e09c8331e80ada02e346b7ffc163aa3c6226b7d
 DIST firefox-63.0-patches-01.tar.xz 10228 BLAKE2B 1c44d3f59da75e92a8ee9b3d1d1b017503ff4126a0a8990137904b7c25dedd5c967e80d1d927640797f9eab00a3e7a0a8774b233ccaf286290f80cb2840b1cff SHA512 d6149a82c139ec6bb1120c2a09e470755fa852e7a45846df2ee02d278ad391a8af4b46f6e9a34eafdcdd522467e365e5181de6b5ada0cf26ea4fd34aaef44bd5
@@ -370,7 +364,6 @@ DIST firefox-63.0-te.xpi 545784 BLAKE2B 96269f87e16058a950821418de3b23fd63ea5fe4
 DIST firefox-63.0-th.xpi 519005 BLAKE2B cbfc56230a495ac00c6ab364251e22d1eaa765d4fbd5f08a80a94338c0cfc94221f85e99ab1180686f6ddf58d4de4071859345f6f357992e5c7395aafaf0963d SHA512 55435c8ba381cbeed82474710dfd7c899f0742e8b9736695ce237588fc5a6329cc4a7be3ec0c56ed0790542d71050469b67ed9dd2ceb3699f574ccfb1b14ae07
 DIST firefox-63.0-tr.xpi 491287 BLAKE2B 76f67b8ba3f6ab667cd94b04cbdddbf3a4e558cc8f373c7a91d5ecd4d6face4b32d94a71dfd8c7e5219e108a59ac9941116200091387bb7117b70b6a65d1e940 SHA512 02566442a20c9a670c46ff300e9c107d9ca61a5780b5414512c95adc0115118570572959301babf88d13341f1cad1f781f1b4364e031c592bf710fe34060a2cf
 DIST firefox-63.0-uk.xpi 548370 BLAKE2B 9f50b234e3256d544620708a7ac032b6e4e19d94a4b1735cbc9363f3f1a4f01d1270043f0372f19a5520f00d2e5efc4c0f9ba83a8395aff3c17b3de0e7f13247 SHA512 9bf1d20e0a9a7d6507d485fb63b4ad2e898873fc3e7e737de8860dede04c0f80e0af6c602a8521485f79eac0825a5e62de9eafd72d333f2ea92b71dae89d16cd
-DIST firefox-63.0-ur.xpi 525514 BLAKE2B dd759f12064ba3546c174b60aa7db49fe1dfee276c8c9662718d9f6c97df96adea1ad19f8a4679490340553aab0cfefa3973aa84c37a5d584de0099955505e1e SHA512 22f6fa5866bc74230622f50beec29c1b2a05d4339b7ebacb5dc99566a067714cfe7980ec8285793ae1a06eb5b50e76d67b17d5955525af2517ef75427f6a0025
 DIST firefox-63.0-uz.xpi 469357 BLAKE2B b16efb9e4f1a0d5365118887fe09d9241b7ff4702025cc731e5aafa0931900d2ff081618a538593e82c6d1e12571baa012f030ffec0e0a87494ddef3e08a04de SHA512 c7404210178b4fc28f4d967a7480fdc90f3981d67e0a34006c3918af57d9a8c4ffcbee5aa1fdbc1db86ffa823d54e394ed563fbd528889a455c7305e4cdbccef
 DIST firefox-63.0-vi.xpi 489043 BLAKE2B 29ba9352b2e72f56cc012503f7d5b6bb17cc65d67f525aaf46685eb47e82f53319dc595f53320ecfad8dca4cbbf8488e738e1ded0c72433767c298bc3bc42a72 SHA512 6055d84b4ddd963f50500a005c07a498027c992b51c2f784caa73c4b792c95f218d84d92855d8de15926b8fec9d69ae3978997be98879a5eeca609fdee77d3e2
 DIST firefox-63.0-xh.xpi 466845 BLAKE2B 67abb87b3068845264ba19275032850f7e40caf9131b491716cb9a52e74bff0071534ea809e8d31bad0b497049c09f923c47a5aed9c7fbbb8c441fed049ef126 SHA512 0d0707441bca9b4f7efd43c80d1bba3bc1960425295cb2ea91a42482b0fbeb8a9e21129f523ba430a4d6239aa53c79ae89ee89f72c1c945c9a1bcadbc3b9ad57

diff --git a/www-client/firefox/files/firefox-60.0-update-cc-to-honor-CC.patch b/www-client/firefox/files/firefox-60.0-update-cc-to-honor-CC.patch
new file mode 100644
index 0000000..9bca3f5
--- /dev/null
+++ b/www-client/firefox/files/firefox-60.0-update-cc-to-honor-CC.patch
@@ -0,0 +1,745 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=1496270
+https://bugzilla.mozilla.org/show_bug.cgi?id=1445528
+
+--- a/third_party/rust/cc/.cargo-checksum.json
++++ b/third_party/rust/cc/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{".travis.yml":"1a4a3f7f90349924378e93acbb524b9127e37c02cfbc6dc59fd904bbdc1c8d0b","Cargo.toml":"623dd06a83bcbf2f292ab51af93e9b79b689e3be06a62968b79f4e36f1bb769f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"186c5c8a62520cb7a3d90d77161c954b52ae8456fca0e0669bc3a5b889592a43","appveyor.yml":"ab45bfdcf2596f357225a54e730c34d518a8f3ad56c2ed33af682cfd45bddc02","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"0cb06f5db0fb70d27db0e5917ca337de6e7032119e6aabfea1bad9c719f5f34b","src/lib.rs":"996b650e19d5ccd6e64e741789427017c913644e980862a7286ec4ed53c14a17","src/registry.rs":"3876ef9573e3bbc050aef41a684b9a510cc1a91b15ae874fe032cf4377b4d116","src/setup_config.rs":"1a3eeb11c6847c31f2a4685b62ab35c76f0b6d5a17f7ed99e9df164283a771f7","src/winapi.rs":"cb5e6cab3eb570b0f97c660ca448ccfb5024262c0c7b245c181daad91a7
 9f211","src/windows_registry.rs":"6de548aa94215e449f0e58e9a3b1702939d7c2f7b63a9040901c948bf138201d","tests/cc_env.rs":"7402315eea7ffa23b29b393c1de8e236294ede9de562ff0a562704a157135341","tests/support/mod.rs":"092551f9f6e3a999fa0aa02f93314aac0bda2b09268f948c423df56a43575e0b","tests/test.rs":"b1164258714e13173f3861126e97bedf1e29aa24618993c4eb0edd57c431dcc7"},"package":"deaf9ec656256bb25b404c51ef50097207b9cbb29c933d31f92cae5a8a0ffee0"}
+\ No newline at end of file
++{"files":{".travis.yml":"1a4a3f7f90349924378e93acbb524b9127e37c02cfbc6dc59fd904bbdc1c8d0b","Cargo.toml":"623dd06a83bcbf2f292ab51af93e9b79b689e3be06a62968b79f4e36f1bb769f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"186c5c8a62520cb7a3d90d77161c954b52ae8456fca0e0669bc3a5b889592a43","appveyor.yml":"ab45bfdcf2596f357225a54e730c34d518a8f3ad56c2ed33af682cfd45bddc02","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"0cb06f5db0fb70d27db0e5917ca337de6e7032119e6aabfea1bad9c719f5f34b","src/lib.rs":"6e8cea99f5fc8e5982b1ea9a336ee2f9a6158a9498c8f0c36f1e8cee8c99716e","src/registry.rs":"3876ef9573e3bbc050aef41a684b9a510cc1a91b15ae874fe032cf4377b4d116","src/setup_config.rs":"1a3eeb11c6847c31f2a4685b62ab35c76f0b6d5a17f7ed99e9df164283a771f7","src/winapi.rs":"cb5e6cab3eb570b0f97c660ca448ccfb5024262c0c7b245c181daad91a7
 9f211","src/windows_registry.rs":"6de548aa94215e449f0e58e9a3b1702939d7c2f7b63a9040901c948bf138201d","tests/cc_env.rs":"7402315eea7ffa23b29b393c1de8e236294ede9de562ff0a562704a157135341","tests/support/mod.rs":"092551f9f6e3a999fa0aa02f93314aac0bda2b09268f948c423df56a43575e0b","tests/test.rs":"b1164258714e13173f3861126e97bedf1e29aa24618993c4eb0edd57c431dcc7"},"package":"deaf9ec656256bb25b404c51ef50097207b9cbb29c933d31f92cae5a8a0ffee0"}
+\ No newline at end of file
+--- a/third_party/rust/cc/src/lib.rs
++++ b/third_party/rust/cc/src/lib.rs
+@@ -61,15 +61,14 @@
+ extern crate rayon;
+ 
+ use std::env;
+-use std::ffi::{OsString, OsStr};
++use std::ffi::{OsStr, OsString};
+ use std::fs;
+-use std::path::{PathBuf, Path};
+-use std::process::{Command, Stdio, Child};
+-use std::io::{self, BufReader, BufRead, Read, Write};
++use std::path::{Path, PathBuf};
++use std::process::{Child, Command, Stdio};
++use std::io::{self, BufRead, BufReader, Read, Write};
+ use std::thread::{self, JoinHandle};
+-
+-#[cfg(feature = "parallel")]
+-use std::sync::Mutex;
++use std::collections::HashMap;
++use std::sync::{Arc, Mutex};
+ 
+ // These modules are all glue to support reading the MSVC version from
+ // the registry and from COM interfaces
+@@ -97,6 +96,7 @@ pub struct Build {
+     objects: Vec<PathBuf>,
+     flags: Vec<String>,
+     flags_supported: Vec<String>,
++    known_flag_support_status: Arc<Mutex<HashMap<String, bool>>>,
+     files: Vec<PathBuf>,
+     cpp: bool,
+     cpp_link_stdlib: Option<Option<String>>,
+@@ -241,8 +241,7 @@ impl ToolFamily {
+     fn nvcc_debug_flag(&self) -> &'static str {
+         match *self {
+             ToolFamily::Msvc => unimplemented!(),
+-            ToolFamily::Gnu |
+-            ToolFamily::Clang => "-G",
++            ToolFamily::Gnu | ToolFamily::Clang => "-G",
+         }
+     }
+ 
+@@ -251,8 +250,7 @@ impl ToolFamily {
+     fn nvcc_redirect_flag(&self) -> &'static str {
+         match *self {
+             ToolFamily::Msvc => unimplemented!(),
+-            ToolFamily::Gnu |
+-            ToolFamily::Clang => "-Xcompiler",
++            ToolFamily::Gnu | ToolFamily::Clang => "-Xcompiler",
+         }
+     }
+ }
+@@ -269,10 +267,7 @@ struct Object {
+ impl Object {
+     /// Create a new source file -> object file pair.
+     fn new(src: PathBuf, dst: PathBuf) -> Object {
+-        Object {
+-            src: src,
+-            dst: dst,
+-        }
++        Object { src: src, dst: dst }
+     }
+ }
+ 
+@@ -289,6 +284,7 @@ impl Build {
+             objects: Vec::new(),
+             flags: Vec::new(),
+             flags_supported: Vec::new(),
++            known_flag_support_status: Arc::new(Mutex::new(HashMap::new())),
+             files: Vec::new(),
+             shared_flag: None,
+             static_flag: None,
+@@ -344,10 +340,8 @@ impl Build {
+     ///     .compile("foo");
+     /// ```
+     pub fn define<'a, V: Into<Option<&'a str>>>(&mut self, var: &str, val: V) -> &mut Build {
+-        self.definitions.push((
+-            var.to_string(),
+-            val.into().map(|s| s.to_string()),
+-        ));
++        self.definitions
++            .push((var.to_string(), val.into().map(|s| s.to_string())));
+         self
+     }
+ 
+@@ -398,7 +392,16 @@ impl Build {
+     ///
+     /// It may return error if it's unable to run the compilier with a test file
+     /// (e.g. the compiler is missing or a write to the `out_dir` failed).
++    ///
++    /// Note: Once computed, the result of this call is stored in the
++    /// `known_flag_support` field. If `is_flag_supported(flag)`
++    /// is called again, the result will be read from the hash table.
+     pub fn is_flag_supported(&self, flag: &str) -> Result<bool, Error> {
++        let mut known_status = self.known_flag_support_status.lock().unwrap();
++        if let Some(is_supported) = known_status.get(flag).cloned() {
++            return Ok(is_supported);
++        }
++
+         let out_dir = self.get_out_dir()?;
+         let src = self.ensure_check_file()?;
+         let obj = out_dir.join("flag_check");
+@@ -413,7 +416,8 @@ impl Build {
+             .cuda(self.cuda);
+         let compiler = cfg.try_get_compiler()?;
+         let mut cmd = compiler.to_command();
+-        command_add_output_file(&mut cmd, &obj, target.contains("msvc"), false);
++        let is_arm = target.contains("aarch64") || target.contains("arm");
++        command_add_output_file(&mut cmd, &obj, target.contains("msvc"), false, is_arm);
+ 
+         // We need to explicitly tell msvc not to link and create an exe
+         // in the root directory of the crate
+@@ -424,7 +428,10 @@ impl Build {
+         cmd.arg(&src);
+ 
+         let output = cmd.output()?;
+-        Ok(output.stderr.is_empty())
++        let is_supported = output.stderr.is_empty();
++
++        known_status.insert(flag.to_owned(), is_supported);
++        Ok(is_supported)
+     }
+ 
+     /// Add an arbitrary flag to the invocation of the compiler if it supports it
+@@ -777,9 +784,8 @@ impl Build {
+         A: AsRef<OsStr>,
+         B: AsRef<OsStr>,
+     {
+-        self.env.push(
+-            (a.as_ref().to_owned(), b.as_ref().to_owned()),
+-        );
++        self.env
++            .push((a.as_ref().to_owned(), b.as_ref().to_owned()));
+         self
+     }
+ 
+@@ -880,31 +886,19 @@ impl Build {
+     fn compile_objects(&self, objs: &[Object]) -> Result<(), Error> {
+         use self::rayon::prelude::*;
+ 
+-        let mut cfg = rayon::Configuration::new();
+         if let Ok(amt) = env::var("NUM_JOBS") {
+             if let Ok(amt) = amt.parse() {
+-                cfg = cfg.num_threads(amt);
++                let _ = rayon::ThreadPoolBuilder::new()
++                    .num_threads(amt)
++                    .build_global();
+             }
+         }
+-        drop(rayon::initialize(cfg));
+-
+-        let results: Mutex<Vec<Result<(), Error>>> = Mutex::new(Vec::new());
+-
+-        objs.par_iter().with_max_len(1).for_each(
+-            |obj| {
+-                let res = self.compile_object(obj);
+-                results.lock().unwrap().push(res)
+-            },
+-        );
+ 
+         // Check for any errors and return the first one found.
+-        for result in results.into_inner().unwrap().iter() {
+-            if result.is_err() {
+-                return result.clone();
+-            }
+-        }
+-
+-        Ok(())
++        objs.par_iter()
++            .with_max_len(1)
++            .map(|obj| self.compile_object(obj))
++            .collect()
+     }
+ 
+     #[cfg(not(feature = "parallel"))]
+@@ -917,7 +911,8 @@ impl Build {
+ 
+     fn compile_object(&self, obj: &Object) -> Result<(), Error> {
+         let is_asm = obj.src.extension().and_then(|s| s.to_str()) == Some("asm");
+-        let msvc = self.get_target()?.contains("msvc");
++        let target = self.get_target()?;
++        let msvc = target.contains("msvc");
+         let (mut cmd, name) = if msvc && is_asm {
+             self.msvc_macro_assembler()?
+         } else {
+@@ -931,15 +926,17 @@ impl Build {
+                 compiler
+                     .path
+                     .file_name()
+-                    .ok_or_else(|| {
+-                        Error::new(ErrorKind::IOError, "Failed to get compiler path.")
+-                    })?
++                    .ok_or_else(|| Error::new(ErrorKind::IOError, "Failed to get compiler path."))?
+                     .to_string_lossy()
+                     .into_owned(),
+             )
+         };
+-        command_add_output_file(&mut cmd, &obj.dst, msvc, is_asm);
+-        cmd.arg(if msvc { "/c" } else { "-c" });
++        let is_arm = target.contains("aarch64") || target.contains("arm");
++        command_add_output_file(&mut cmd, &obj.dst, msvc, is_asm, is_arm);
++        // armasm and armasm64 don't requrie -c option
++        if !msvc || !is_asm || !is_arm {
++            cmd.arg(if msvc { "/c" } else { "-c" });
++        }
+         cmd.arg(&obj.src);
+ 
+         run(&mut cmd, &name)?;
+@@ -967,9 +964,7 @@ impl Build {
+         let name = compiler
+             .path
+             .file_name()
+-            .ok_or_else(|| {
+-                Error::new(ErrorKind::IOError, "Failed to get compiler path.")
+-            })?
++            .ok_or_else(|| Error::new(ErrorKind::IOError, "Failed to get compiler path."))?
+             .to_string_lossy()
+             .into_owned();
+ 
+@@ -1054,8 +1049,8 @@ impl Build {
+                 cmd.args.push(crt_flag.into());
+ 
+                 match &opt_level[..] {
+-                    "z" | "s" => cmd.args.push("/Os".into()),
+-                    "1" => cmd.args.push("/O1".into()),
++                    // Msvc uses /O1 to enable all optimizations that minimize code size.
++                    "z" | "s" | "1" => cmd.args.push("/O1".into()),
+                     // -O3 is a valid value for gcc and clang compilers, but not msvc. Cap to /O2.
+                     "2" | "3" => cmd.args.push("/O2".into()),
+                     _ => {}
+@@ -1070,8 +1065,10 @@ impl Build {
+                     cmd.args.push(format!("-O{}", opt_level).into());
+                 }
+ 
+-                cmd.push_cc_arg("-ffunction-sections".into());
+-                cmd.push_cc_arg("-fdata-sections".into());
++                if !target.contains("-ios") {
++                    cmd.push_cc_arg("-ffunction-sections".into());
++                    cmd.push_cc_arg("-fdata-sections".into());
++                }
+                 if self.pic.unwrap_or(!target.contains("windows-gnu")) {
+                     cmd.push_cc_arg("-fPIC".into());
+                 }
+@@ -1169,7 +1166,7 @@ impl Build {
+                 // linker that we're generating 32-bit executables as well. This'll
+                 // typically only be used for build scripts which transitively use
+                 // these flags that try to compile executables.
+-                if target == "i686-unknown-linux-musl" {
++                if target == "i686-unknown-linux-musl" || target == "i586-unknown-linux-musl" {
+                     cmd.args.push("-Wl,-melf_i386".into());
+                 }
+ 
+@@ -1212,14 +1209,13 @@ impl Build {
+         if self.cpp {
+             match (self.cpp_set_stdlib.as_ref(), cmd.family) {
+                 (None, _) => {}
+-                (Some(stdlib), ToolFamily::Gnu) |
+-                (Some(stdlib), ToolFamily::Clang) => {
++                (Some(stdlib), ToolFamily::Gnu) | (Some(stdlib), ToolFamily::Clang) => {
+                     cmd.push_cc_arg(format!("-stdlib=lib{}", stdlib).into());
+                 }
+                 _ => {
+                     println!(
+                         "cargo:warning=cpp_set_stdlib is specified, but the {:?} compiler \
+-                              does not support this option, ignored",
++                         does not support this option, ignored",
+                         cmd.family
+                     );
+                 }
+@@ -1272,6 +1268,10 @@ impl Build {
+         let target = self.get_target()?;
+         let tool = if target.contains("x86_64") {
+             "ml64.exe"
++        } else if target.contains("arm") {
++            "armasm.exe"
++        } else if target.contains("aarch64") {
++            "armasm64.exe"
+         } else {
+             "ml.exe"
+         };
+@@ -1307,20 +1307,55 @@ impl Build {
+         if target.contains("msvc") {
+             let mut cmd = match self.archiver {
+                 Some(ref s) => self.cmd(s),
+-                None => {
+-                    windows_registry::find(&target, "lib.exe").unwrap_or_else(
+-                        || {
+-                            self.cmd("lib.exe")
+-                        },
+-                    )
+-                }
++                None => windows_registry::find(&target, "lib.exe")
++                    .unwrap_or_else(|| self.cmd("lib.exe")),
+             };
++
+             let mut out = OsString::from("/OUT:");
+             out.push(dst);
+-            run(
+-                cmd.arg(out).arg("/nologo").args(&objects).args(&self.objects),
+-                "lib.exe",
+-            )?;
++            cmd.arg(out).arg("/nologo");
++
++            // Similar to https://github.com/rust-lang/rust/pull/47507
++            // and https://github.com/rust-lang/rust/pull/48548
++            let estimated_command_line_len = objects
++                .iter()
++                .chain(&self.objects)
++                .map(|a| a.as_os_str().len())
++                .sum::<usize>();
++            if estimated_command_line_len > 1024 * 6 {
++                let mut args = String::from("\u{FEFF}"); // BOM
++                for arg in objects.iter().chain(&self.objects) {
++                    args.push('"');
++                    for c in arg.to_str().unwrap().chars() {
++                        if c == '"' {
++                            args.push('\\')
++                        }
++                        args.push(c)
++                    }
++                    args.push('"');
++                    args.push('\n');
++                }
++
++                let mut utf16le = Vec::new();
++                for code_unit in args.encode_utf16() {
++                    utf16le.push(code_unit as u8);
++                    utf16le.push((code_unit >> 8) as u8);
++                }
++
++                let mut args_file = OsString::from(dst);
++                args_file.push(".args");
++                fs::File::create(&args_file)
++                    .unwrap()
++                    .write_all(&utf16le)
++                    .unwrap();
++
++                let mut args_file_arg = OsString::from("@");
++                args_file_arg.push(args_file);
++                cmd.arg(args_file_arg);
++            } else {
++                cmd.args(&objects).args(&self.objects);
++            }
++            run(&mut cmd, "lib.exe")?;
+ 
+             // The Rust compiler will look for libfoo.a and foo.lib, but the
+             // MSVC linker will also be passed foo.lib, so be sure that both
+@@ -1412,6 +1447,18 @@ impl Build {
+ 
+         cmd.args.push("-isysroot".into());
+         cmd.args.push(sdk_path.trim().into());
++        cmd.args.push("-fembed-bitcode".into());
++        /*
++         * TODO we probably ultimatedly want the -fembed-bitcode-marker flag
++         * but can't have it now because of an issue in LLVM:
++         * https://github.com/alexcrichton/cc-rs/issues/301
++         * https://github.com/rust-lang/rust/pull/48896#comment-372192660
++         */
++        /*
++        if self.get_opt_level()? == "0" {
++            cmd.args.push("-fembed-bitcode-marker".into());
++        }
++        */
+ 
+         Ok(())
+     }
+@@ -1437,37 +1484,44 @@ impl Build {
+         };
+ 
+         // On Solaris, c++/cc unlikely to exist or be correct.
+-        let default = if host.contains("solaris") { gnu } else { traditional };
+-
+-        let tool_opt: Option<Tool> =
+-            self.env_tool(env)
+-                .map(|(tool, cc, args)| {
+-                    let mut t = Tool::new(PathBuf::from(tool));
+-                    if let Some(cc) = cc {
+-                        t.cc_wrapper_path = Some(PathBuf::from(cc));
+-                    }
+-                    for arg in args {
+-                        t.cc_wrapper_args.push(arg.into());
+-                    }
+-                    t
+-                })
+-                .or_else(|| {
+-                    if target.contains("emscripten") {
+-                        let tool = if self.cpp { "em++" } else { "emcc" };
+-                        // Windows uses bat file so we have to be a bit more specific
+-                        if cfg!(windows) {
+-                            let mut t = Tool::new(PathBuf::from("cmd"));
+-                            t.args.push("/c".into());
+-                            t.args.push(format!("{}.bat", tool).into());
+-                            Some(t)
+-                        } else {
+-                            Some(Tool::new(PathBuf::from(tool)))
+-                        }
++        let default = if host.contains("solaris") {
++            gnu
++        } else {
++            traditional
++        };
++
++        let tool_opt: Option<Tool> = self.env_tool(env)
++            .map(|(tool, cc, args)| {
++                // chop off leading/trailing whitespace to work around
++                // semi-buggy build scripts which are shared in
++                // makefiles/configure scripts (where spaces are far more
++                // lenient)
++                let mut t = Tool::new(PathBuf::from(tool.trim()));
++                if let Some(cc) = cc {
++                    t.cc_wrapper_path = Some(PathBuf::from(cc));
++                }
++                for arg in args {
++                    t.cc_wrapper_args.push(arg.into());
++                }
++                t
++            })
++            .or_else(|| {
++                if target.contains("emscripten") {
++                    let tool = if self.cpp { "em++" } else { "emcc" };
++                    // Windows uses bat file so we have to be a bit more specific
++                    if cfg!(windows) {
++                        let mut t = Tool::new(PathBuf::from("cmd"));
++                        t.args.push("/c".into());
++                        t.args.push(format!("{}.bat", tool).into());
++                        Some(t)
+                     } else {
+-                        None
++                        Some(Tool::new(PathBuf::from(tool)))
+                     }
+-                })
+-                .or_else(|| windows_registry::find_tool(&target, "cl.exe"));
++                } else {
++                    None
++                }
++            })
++            .or_else(|| windows_registry::find_tool(&target, "cl.exe"));
+ 
+         let tool = match tool_opt {
+             Some(t) => t,
+@@ -1501,6 +1555,7 @@ impl Build {
+                         "armv7-unknown-linux-gnueabihf" => Some("arm-linux-gnueabihf"),
+                         "armv7-unknown-linux-musleabihf" => Some("arm-linux-musleabihf"),
+                         "armv7-unknown-netbsd-eabihf" => Some("armv7--netbsdelf-eabihf"),
++                        "i586-unknown-linux-musl" => Some("musl"),
+                         "i686-pc-windows-gnu" => Some("i686-w64-mingw32"),
+                         "i686-unknown-linux-musl" => Some("musl"),
+                         "i686-unknown-netbsd" => Some("i486--netbsdelf"),
+@@ -1509,10 +1564,12 @@ impl Build {
+                         "mips64-unknown-linux-gnuabi64" => Some("mips64-linux-gnuabi64"),
+                         "mips64el-unknown-linux-gnuabi64" => Some("mips64el-linux-gnuabi64"),
+                         "powerpc-unknown-linux-gnu" => Some("powerpc-linux-gnu"),
++                        "powerpc-unknown-linux-gnuspe" => Some("powerpc-linux-gnuspe"),
+                         "powerpc-unknown-netbsd" => Some("powerpc--netbsd"),
+                         "powerpc64-unknown-linux-gnu" => Some("powerpc-linux-gnu"),
+                         "powerpc64le-unknown-linux-gnu" => Some("powerpc64le-linux-gnu"),
+                         "s390x-unknown-linux-gnu" => Some("s390x-linux-gnu"),
++                        "sparc-unknown-linux-gnu" => Some("sparc-linux-gnu"),
+                         "sparc64-unknown-linux-gnu" => Some("sparc64-linux-gnu"),
+                         "sparc64-unknown-netbsd" => Some("sparc64--netbsd"),
+                         "sparcv9-sun-solaris" => Some("sparcv9-sun-solaris"),
+@@ -1538,14 +1595,18 @@ impl Build {
+         };
+ 
+         let tool = if self.cuda {
+-            assert!(tool.args.is_empty(),
+-                "CUDA compilation currently assumes empty pre-existing args");
++            assert!(
++                tool.args.is_empty(),
++                "CUDA compilation currently assumes empty pre-existing args"
++            );
+             let nvcc = match self.get_var("NVCC") {
+                 Err(_) => "nvcc".into(),
+                 Ok(nvcc) => nvcc,
+             };
+             let mut nvcc_tool = Tool::with_features(PathBuf::from(nvcc), self.cuda);
+-            nvcc_tool.args.push(format!("-ccbin={}", tool.path.display()).into());
++            nvcc_tool
++                .args
++                .push(format!("-ccbin={}", tool.path.display()).into());
+             nvcc_tool
+         } else {
+             tool
+@@ -1568,10 +1629,7 @@ impl Build {
+             Some(res) => Ok(res),
+             None => Err(Error::new(
+                 ErrorKind::EnvVarNotFound,
+-                &format!(
+-                    "Could not find environment variable {}.",
+-                    var_base
+-                ),
++                &format!("Could not find environment variable {}.", var_base),
+             )),
+         }
+     }
+@@ -1585,21 +1643,68 @@ impl Build {
+             .collect()
+     }
+ 
+-
+     /// Returns compiler path, optional modifier name from whitelist, and arguments vec
+     fn env_tool(&self, name: &str) -> Option<(String, Option<String>, Vec<String>)> {
+-        self.get_var(name).ok().map(|tool| {
+-            let whitelist = ["ccache", "distcc", "sccache"];
++        let tool = match self.get_var(name) {
++            Ok(tool) => tool,
++            Err(_) => return None,
++        };
+ 
+-            for t in whitelist.iter() {
+-                if tool.starts_with(t) && tool[t.len()..].starts_with(' ')  {
+-                    let args = tool.split_whitespace().collect::<Vec<_>>();
++        // If this is an exact path on the filesystem we don't want to do any
++        // interpretation at all, just pass it on through. This'll hopefully get
++        // us to support spaces-in-paths.
++        if Path::new(&tool).exists() {
++            return Some((tool, None, Vec::new()));
++        }
++
++        // Ok now we want to handle a couple of scenarios. We'll assume from
++        // here on out that spaces are splitting separate arguments. Two major
++        // features we want to support are:
++        //
++        //      CC='sccache cc'
++        //
++        // aka using `sccache` or any other wrapper/caching-like-thing for
++        // compilations. We want to know what the actual compiler is still,
++        // though, because our `Tool` API support introspection of it to see
++        // what compiler is in use.
++        //
++        // additionally we want to support
++        //
++        //      CC='cc -flag'
++        //
++        // where the CC env var is used to also pass default flags to the C
++        // compiler.
++        //
++        // It's true that everything here is a bit of a pain, but apparently if
++        // you're not literally make or bash then you get a lot of bug reports.
++        let known_wrappers = ["ccache", "distcc", "sccache", "icecc"];
++
++        let mut parts = tool.split_whitespace();
++        let maybe_wrapper = match parts.next() {
++            Some(s) => s,
++            None => return None,
++        };
+ 
+-                    return (args[1].to_string(), Some(t.to_string()), args[2..].iter().map(|s| s.to_string()).collect());
+-                }
++        let file_stem = Path::new(maybe_wrapper)
++            .file_stem()
++            .unwrap()
++            .to_str()
++            .unwrap();
++        if known_wrappers.contains(&file_stem) {
++            if let Some(compiler) = parts.next() {
++                return Some((
++                    compiler.to_string(),
++                    Some(maybe_wrapper.to_string()),
++                    parts.map(|s| s.to_string()).collect(),
++                ));
+             }
+-            (tool, None, Vec::new())
+-        })
++        }
++
++        Some((
++            maybe_wrapper.to_string(),
++            None,
++            parts.map(|s| s.to_string()).collect(),
++        ))
+     }
+ 
+     /// Returns the default C++ standard library for the current target: `libc++`
+@@ -1611,7 +1716,7 @@ impl Build {
+                 let target = self.get_target()?;
+                 if target.contains("msvc") {
+                     Ok(None)
+-                } else if target.contains("darwin") {
++                } else if target.contains("apple") {
+                     Ok(Some("c++".to_string()))
+                 } else if target.contains("freebsd") {
+                     Ok(Some("c++".to_string()))
+@@ -1700,10 +1805,7 @@ impl Build {
+             Some(s) => Ok(s),
+             None => Err(Error::new(
+                 ErrorKind::EnvVarNotFound,
+-                &format!(
+-                    "Environment variable {} not defined.",
+-                    v.to_string()
+-                ),
++                &format!("Environment variable {} not defined.", v.to_string()),
+             )),
+         }
+     }
+@@ -1731,8 +1833,9 @@ impl Tool {
+         let family = if let Some(fname) = path.file_name().and_then(|p| p.to_str()) {
+             if fname.contains("clang") {
+                 ToolFamily::Clang
+-            } else if fname.contains("cl") && !fname.contains("cloudabi") &&
+-                      !fname.contains("uclibc") {
++            } else if fname.contains("cl") && !fname.contains("cloudabi")
++                && !fname.contains("uclibc")
++            {
+                 ToolFamily::Msvc
+             } else {
+                 ToolFamily::Gnu
+@@ -1775,8 +1878,8 @@ impl Tool {
+                 cmd.arg(&self.path);
+                 cmd.args(&self.cc_wrapper_args);
+                 cmd
+-            },
+-            None => Command::new(&self.path)
++            }
++            None => Command::new(&self.path),
+         };
+         cmd.args(&self.args);
+         for &(ref k, ref v) in self.env.iter() {
+@@ -1822,10 +1925,8 @@ impl Tool {
+                     cc_env.push(arg);
+                 }
+                 cc_env
+-            },
+-            None => {
+-                OsString::from("")
+             }
++            None => OsString::from(""),
+         }
+     }
+ 
+@@ -1868,8 +1969,7 @@ fn run(cmd: &mut Command, program: &str) -> Result<(), Error> {
+                 ErrorKind::ToolExecError,
+                 &format!(
+                     "Failed to wait on spawned child process, command {:?} with args {:?}.",
+-                    cmd,
+-                    program
++                    cmd, program
+                 ),
+             ))
+         }
+@@ -1884,9 +1984,7 @@ fn run(cmd: &mut Command, program: &str) -> Result<(), Error> {
+             ErrorKind::ToolExecError,
+             &format!(
+                 "Command {:?} with args {:?} did not execute successfully (status code {}).",
+-                cmd,
+-                program,
+-                status
++                cmd, program, status
+             ),
+         ))
+     }
+@@ -1909,8 +2007,7 @@ fn run_output(cmd: &mut Command, program: &str) -> Result<Vec<u8>, Error> {
+                 ErrorKind::ToolExecError,
+                 &format!(
+                     "Failed to wait on spawned child process, command {:?} with args {:?}.",
+-                    cmd,
+-                    program
++                    cmd, program
+                 ),
+             ))
+         }
+@@ -1925,9 +2022,7 @@ fn run_output(cmd: &mut Command, program: &str) -> Result<Vec<u8>, Error> {
+             ErrorKind::ToolExecError,
+             &format!(
+                 "Command {:?} with args {:?} did not execute successfully (status code {}).",
+-                cmd,
+-                program,
+-                status
++                cmd, program, status
+             ),
+         ))
+     }
+@@ -1943,39 +2038,30 @@ fn spawn(cmd: &mut Command, program: &str) -> Result<(Child, JoinHandle<()>), Er
+     match cmd.stderr(Stdio::piped()).spawn() {
+         Ok(mut child) => {
+             let stderr = BufReader::new(child.stderr.take().unwrap());
+-            let print = thread::spawn(move || for line in stderr.split(b'\n').filter_map(
+-                |l| l.ok(),
+-            )
+-            {
+-                print!("cargo:warning=");
+-                std::io::stdout().write_all(&line).unwrap();
+-                println!("");
++            let print = thread::spawn(move || {
++                for line in stderr.split(b'\n').filter_map(|l| l.ok()) {
++                    print!("cargo:warning=");
++                    std::io::stdout().write_all(&line).unwrap();
++                    println!("");
++                }
+             });
+             Ok((child, print))
+         }
+         Err(ref e) if e.kind() == io::ErrorKind::NotFound => {
+             let extra = if cfg!(windows) {
+                 " (see https://github.com/alexcrichton/cc-rs#compile-time-requirements \
+-                   for help)"
++                 for help)"
+             } else {
+                 ""
+             };
+             Err(Error::new(
+                 ErrorKind::ToolNotFound,
+-                &format!(
+-                    "Failed to find tool. Is `{}` installed?{}",
+-                    program,
+-                    extra
+-                ),
++                &format!("Failed to find tool. Is `{}` installed?{}", program, extra),
+             ))
+         }
+         Err(_) => Err(Error::new(
+             ErrorKind::ToolExecError,
+-            &format!(
+-                "Command {:?} with args {:?} failed to start.",
+-                cmd,
+-                program
+-            ),
++            &format!("Command {:?} with args {:?} failed to start.", cmd, program),
+         )),
+     }
+ }
+@@ -1984,9 +2070,10 @@ fn fail(s: &str) -> ! {
+     panic!("\n\nInternal error occurred: {}\n\n", s)
+ }
+ 
+-
+-fn command_add_output_file(cmd: &mut Command, dst: &Path, msvc: bool, is_asm: bool) {
+-    if msvc && is_asm {
++fn command_add_output_file(cmd: &mut Command, dst: &Path, msvc: bool, is_asm: bool, is_arm: bool) {
++    if msvc && is_asm && is_arm {
++        cmd.arg("-o").arg(&dst);
++    } else if msvc && is_asm {
+         cmd.arg("/Fo").arg(dst);
+     } else if msvc {
+         let mut s = OsString::from("/Fo");

diff --git a/www-client/firefox/firefox-60.2.1-r1.ebuild b/www-client/firefox/firefox-60.2.2.ebuild
similarity index 97%
rename from www-client/firefox/firefox-60.2.1-r1.ebuild
rename to www-client/firefox/firefox-60.2.2.ebuild
index 731dc4e..c44bc77 100644
--- a/www-client/firefox/firefox-60.2.1-r1.ebuild
+++ b/www-client/firefox/firefox-60.2.2.ebuild
@@ -27,7 +27,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-60.0-patches-03"
+PATCH="${PN}-60.0-patches-04"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 MOZCONFIG_OPTIONAL_WIFI=1
@@ -127,11 +127,6 @@ src_prepare() {
 	rm "${WORKDIR}/firefox/2005_ffmpeg4.patch"
 	eapply "${WORKDIR}/firefox"
 
-	eapply "${FILESDIR}"/bug_1461221.patch
-	eapply "${FILESDIR}"/${PN}-60.0-blessings-TERM.patch # 654316
-	eapply "${FILESDIR}"/${PN}-60.0-rust-1.29-comp.patch
-	eapply "${FILESDIR}"/${PN}-60.0-missing-errno_h-in-SandboxOpenedFiles_cpp.patch
-
 	# Enable gnomebreakpad
 	if use debug ; then
 		sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \

diff --git a/www-client/firefox/firefox-62.0.2.ebuild b/www-client/firefox/firefox-62.0.3.ebuild
similarity index 99%
rename from www-client/firefox/firefox-62.0.2.ebuild
rename to www-client/firefox/firefox-62.0.3.ebuild
index aef33e7..1b23c69 100644
--- a/www-client/firefox/firefox-62.0.2.ebuild
+++ b/www-client/firefox/firefox-62.0.3.ebuild
@@ -299,7 +299,7 @@ src_configure() {
 			mozconfig_annotate "forcing ld=gold due to USE=lto" --enable-linker=gold
 		fi
 
-		mozconfig_annotate '+lto' --enable-lto=full
+		mozconfig_annotate '+lto' --enable-lto=thin
 	else
 		# Avoid auto-magic on linker
 		if use clang ; then
@@ -421,6 +421,9 @@ src_configure() {
 
 	mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
 
+	# disable webrtc for now, bug 667642
+	use arm && mozconfig_annotate 'broken on arm' --disable-webrtc
+
 	if use clang ; then
 		# https://bugzilla.mozilla.org/show_bug.cgi?id=1423822
 		mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack

diff --git a/www-client/firefox/firefox-63.0.ebuild b/www-client/firefox/firefox-63.0.ebuild
index 50590e3..6e07703 100644
--- a/www-client/firefox/firefox-63.0.ebuild
+++ b/www-client/firefox/firefox-63.0.ebuild
@@ -10,11 +10,11 @@ PYTHON_COMPAT=( python3_{5,6,7} )
 PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
 
 # This list can be updated with scripts/get_langs.sh from the mozilla overlay
-MOZ_LANGS=(ach af an ar as ast az be bg bn-BD bn-IN br bs ca cak cs cy da de dsb
-el en en-CA en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL
-ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM ia id is it ja ka kab kk km kn ko
-lij lt lv mai mk ml mr ms my nb-NO ne-NP nl nn-NO oc or pa-IN pl pt-BR pt-PT rm
-ro ru si sk sl son sq sr sv-SE ta te th tr uk ur uz vi xh zh-CN zh-TW )
+MOZ_LANGS=( ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE
+gd gl gn gu-IN he hi-IN hr hsb hu hy-AM id is it ja ka kab kk km kn ko lij lt lv
+mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq
+sr sv-SE ta te th tr uk uz vi xh zh-CN zh-TW )
 
 # Convert the ebuild version to the upstream mozilla version, used by mozlinguas
 MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
@@ -105,7 +105,7 @@ DEPEND="${CDEPEND}
 	app-arch/zip
 	app-arch/unzip
 	dev-util/cbindgen
-	net-libs/nodejs
+	>=net-libs/nodejs-8.11.0
 	>=sys-devel/binutils-2.30
 	sys-apps/findutils
 	>=sys-devel/llvm-4.0.1
@@ -296,7 +296,7 @@ src_configure() {
 			mozconfig_annotate "forcing ld=gold due to USE=lto" --enable-linker=gold
 		fi
 
-		mozconfig_annotate '+lto' --enable-lto=full
+		mozconfig_annotate '+lto' --enable-lto=thin
 	else
 		# Avoid auto-magic on linker
 		if use clang ; then
@@ -418,10 +418,8 @@ src_configure() {
 
 	mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
 
-	if use clang ; then
-		# https://bugzilla.mozilla.org/show_bug.cgi?id=1423822
-		mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
-	fi
+	# disable webrtc for now, bug 667642
+	use arm && mozconfig_annotate 'broken on arm' --disable-webrtc
 
 	echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
 	echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2018-12-13 15:48 Thomas Deutschmann
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Deutschmann @ 2018-12-13 15:48 UTC (permalink / raw
  To: gentoo-commits

commit:     278e64583ee8cf067dd5c1f3039a03bbe7ccc4d5
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 13 15:47:59 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Dec 13 15:47:59 2018 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=278e6458

www-client/firefox: synchronize with Gentoo repository

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 www-client/firefox/Manifest                        | 370 ++++++++++-----------
 .../firefox-63.0.1-support-latest-cbindgen.patch   |  29 --
 ...firefox-60.3.0.ebuild => firefox-60.4.0.ebuild} |   4 +
 .../{firefox-63.0.1.ebuild => firefox-64.0.ebuild} |  24 +-
 4 files changed, 201 insertions(+), 226 deletions(-)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index ecac3f7..a3437eb 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -92,188 +92,188 @@ DIST firefox-52.9.0esr-zh-CN.xpi 461679 BLAKE2B 745b2cfb86e93a379e13fa73b7e3721b
 DIST firefox-52.9.0esr-zh-TW.xpi 453068 BLAKE2B 84e08ea4fd119db1f1c6f84b212fbbb5d6999c5ac6010c0e7836d8734726d281107f3d91ba7bac1aeaf855dc36d3b018ae3913dccdbe2b11aad02a8d8aaa893c SHA512 a99042ef7d00820e341dfcf2c45a8b5bd77eaf2cc8ecf0ff5ee982b7bd9beac7cb4bf051c57ef3b7a5d9b67cd35858dca396d21e65718e248f3b1fdba5273999
 DIST firefox-52.9.0esr.source.tar.xz 214087304 BLAKE2B eba5305ae3fc9a4306cbcbcd8d4610272ca5b75e369367961e9d94919b003de8aae8f3c58fe1c628787d98105a85fab575ae2b051e92a0b35bbb8b402c100766 SHA512 bfca42668ca78a12a9fb56368f4aae5334b1f7a71966fbba4c32b9c5e6597aac79a6e340ac3966779d2d5563eb47c054ab33cc40bfb7306172138ccbd3adb2b9
 DIST firefox-60.0-patches-04.tar.xz 120496 BLAKE2B 4b4fd58a91d8fd9603c3a7bdb669f275f7cbd7b9add7c790a2e326f46a540e77a390e9da3f85e81feee8e5354cb25c93e140fb2f721cdcd0fe197b7c24ea0091 SHA512 d8aaa1fafe22dcef8cba609ba6e2d322c18b46f4d3b91897696651958108f887510a068295b55bb21d84b660bbe7574a6533a57d8e26f96d2877139864dba828
-DIST firefox-60.3.0esr-ach.xpi 496841 BLAKE2B 32ed75ade30c50d8587c307da79d27ab1ac044f790218bcd006c71548c0c176b43c01cb965e71f55ad56cd33f2da931f22999ffa98f2f7f9ef680a0d54adc689 SHA512 9668e662a80be67da9d66240551adda595b4dbc88b7b2f8007bf50dd321d35ec98cc044da503c68b1bfabb3683bea9dbf5d1562efcfee7532b68673400da4856
-DIST firefox-60.3.0esr-af.xpi 487308 BLAKE2B 1e8fe670a7c7cb404cbf98c9ad6d7d19f35d7acb757dfee99f365f2f0ce676873d053ba1a07def796224f3d8bcfd35aab2fa2bd1c59e74da21fad78b2ecb01c3 SHA512 85372897e982a986ef426551f5d74e1da4dd0d6dcfa603de102674ddd885784b121b0028836f456efc1239c1d90edb41ebf34e5d2855d0397df5c4b2bfe376e7
-DIST firefox-60.3.0esr-an.xpi 520503 BLAKE2B 313ec2af94956f7333eb65df011b37d6ad4cd97aac8d650bcd6d139154a84124f9f15d700171ffeb17a37ddeceea5fced6b579ee66b4e7df533d1c7fb43e66a6 SHA512 41b7907a27c720d2946ad6269d67f36f377ec61abe5a10d16ad76e340c6a06123af00601658c97fb5d47f5fbc002dd940fb0e159cc29baaeac861fe802170d61
-DIST firefox-60.3.0esr-ar.xpi 547820 BLAKE2B 57e206e537e6134f1df53ced248d1d4c141909116d69fdfda36ecef9c694824a912e0162db7dbc7701ebd428a9cc293e90768f4f46b5841e0e3748b6cd6c8fe3 SHA512 14f1e237b8ef3de9162c491b9607529d16744adf157530b2a7ecf80b768c493a5911d2128087611e1eb56443e94fab918fab3db0add8600522a2bca192d86067
-DIST firefox-60.3.0esr-as.xpi 530720 BLAKE2B bed56656c22fa06e8f4f343615cabc6348728fd3f2ed78e7e5e41f0f3a30f67402590c485df4c8e1bbca8e53f6d246660e82d87d646aee596925a1b746d54680 SHA512 f84d7a7c626f763c6c33efb3322456817d60893e123e714432ccc37c8b68b2162fe92c865aa967b68434f8b33ae0a1c9685955f48e031285bb8d7d0e33450191
-DIST firefox-60.3.0esr-ast.xpi 508650 BLAKE2B dd3c9e98bd922e32e7792d4f8cb328bd70fef7250b69b71b6d843f85185c79a7d599b63476fc018dda8579d84352109c59dbd77c094d176d8fa11d858698c220 SHA512 2bd5f587ff1f11b4013efddbc421662de6d714560bb9d5f3eaa0581366127c6871a234666d65b2d67deffdf1b5baf71f3e150c5c1bb9c9566180fe9acea53531
-DIST firefox-60.3.0esr-az.xpi 524751 BLAKE2B 1171a2ba4fa6a42aa78c651c5cdbfce67417023767eb7a08102a3fa2af8d4fc76db104f74367ef6feca84fc880ea81f698318725da10e0f876e929a747905363 SHA512 2bac26ff8df8ca4b42772842236173b5d78b3f7c3000982e8e59e7e790ad59a661d2e3d9610066e15a6c1ed7c81b5c9cff44b6b4c56295f0ab38206173105abc
-DIST firefox-60.3.0esr-bg.xpi 573846 BLAKE2B ab14874d3be42910c5f4d7b1317a6a2520d990c9899fc507310f11141b637fba4d3aeab71641698efaac89ad2c4c85e83769a5b1a9758a7682f2af62dd9bf44d SHA512 1eca90697a37b152521cf6ee8c6625d5b1c924a6687f6e5492d3045e3455ec72d8a8f715c2dd4c800afb916e4c1ea72a681c61a39e8e43b8e250819cc4b92b0f
-DIST firefox-60.3.0esr-bn-BD.xpi 590421 BLAKE2B 30f3cd7c0c5c794749784ab1ebf07134cebced4918c77e12a90dc98392b6c82c3fd9a70c235bbde483c658e40deb488f044775e7310dff54e5cc1c61b010fa8e SHA512 c5f2ceba239b260c3477ffc93b0646b68bfd64263f2f5c7a59509e5bb84031ea358dadc8a1f4a0277631372ee11d0fb665581b119d0df60d65b5d1feeec2f947
-DIST firefox-60.3.0esr-bn-IN.xpi 570868 BLAKE2B 1f78ca4520a6c9f1bd26e2e9a1af0dc56b54216c83deffb8b687e09f5a0c348094ff2f874b91bdfecba8cf81ee17620c01ecdd4625ec22e21f6d57424f915868 SHA512 cba3b7ab8757a8fc7b8268d5a142b59b5d3936d83bf224ef93ab767e5454b8c885660a53cf03e22dd5695d205139007fb4908b3b152ef6a56361e92b7a3781fc
-DIST firefox-60.3.0esr-br.xpi 512026 BLAKE2B 0d6e24605f894d421bf0ccacbcece84e84e8c1738adafe3dbacef3171f3019bd171329724b83bce5238cb760153c31815dba2e370eb72bd3c173bb9486ae24d6 SHA512 48020835df71e48571e141e2f54757f569aee2d190cf48b2b95f6c45f96ff999a28b19f067fe403f2f6f764712639996a33f808e893d163b6dcc5ee8276cf6dd
-DIST firefox-60.3.0esr-bs.xpi 514715 BLAKE2B f4f3ea3669b0d7a8a70efeb64665edeb2e1724c2263c1e19e74f098e83e4cab70a4efdf51ed1339fd8f4dbe6c164079b19842313a2e65eb988a4a76341b7ef85 SHA512 f12498861e39381dc227dbd69bcc9b15f1d97caaf60da322af5c7fee855eab40e8dfa471d8fe84d37d989e8a9be8ca6a29096bf1b3ae4d37b5c0fa6e024a0412
-DIST firefox-60.3.0esr-ca.xpi 525261 BLAKE2B f350a247955ac37105b23d5b5f008f3a22b0ac094a3e826e8c93fe3c35a3c88061fcd9d54da823c9c62cd0d22a849166e176647852604f570f47838c365a8db0 SHA512 6cebeb4908f06c14801e14afe9d9b8d936ea765d9d18b42edfcfff52c4bf512b8e8bd327b4bc0fd7319437424153e6dba55b758234039d6e014b6b1a662e34ea
-DIST firefox-60.3.0esr-cak.xpi 536297 BLAKE2B 049f726902c1ca821c8fc6b36b6b6f36ad35d6db6bc9447a48cfe44cb6aab596f740f54a46cfa2049593136aa32132839882ad072ad1d5519e0a5e2aaa10a41f SHA512 9a40b4b12b0cf54ea9d8b4d90754affba28fd01ff57c4408f0ec2dad98d05997b3a8a821556a3192fa44646134f2cba436370392c2507f4d9e4846500d408c9c
-DIST firefox-60.3.0esr-cs.xpi 531796 BLAKE2B 84ddd4807d2885c2c6ccc5611b1b7b03d36fed9e4c28000772be5fae5f9ae7e58255f268e46e6f20a6e4933db908b6472cfebd10a562a92da5e8664246615f18 SHA512 a4ef396f9b7c478af9a8f5d12a8adbbc0b236b93564123a25e0e929de39d355d40f959453e37c413ac1727d9855e1a64525e61d360a672eedce6dae7aa116f9c
-DIST firefox-60.3.0esr-cy.xpi 516645 BLAKE2B 40dd301461ef42903fb6a57fd7c60dad9f471f56e1cc3b4f0f0abdd857545f767be3a72c6d13387a44a519052a8421e515733f2a8935af443cea3cef82f8e6c0 SHA512 8ac8ed18eda295dc40d58e9d59cd39e53ef58e88fb17ef0cd0da20a3b02b5bee75db9f19f4a04f4933f2ed386121ed85b381083b015c6bcd726d3588b50ba50c
-DIST firefox-60.3.0esr-da.xpi 510756 BLAKE2B 90e3e35f1d35cf14b9df6965dc2abeaf1c443a86bc3ef26d74a596ceb1040c7a9e5f3a3db189b395cb2a38901a43543622d5c2ee67c9de9b037ff9f4e3417509 SHA512 3c63719ba5d9b56b2803cf0591b858176eef687b34a68214501430c0abfcd98691ecd503e3a00b6a80bb8332a7f0e601ae3b9768f2e91d7c0d79de521533a12c
-DIST firefox-60.3.0esr-de.xpi 526517 BLAKE2B d3424a7232f8d94edf80cee53e3c90666ef83daf6c70c18adfedd3352d4145ede53280ee4b257aa90cedb5cce45006a3ae653deda040ec50d48f476e82bf9690 SHA512 9330690be32fdf5f5a1ffacd96cec825c29f0b3d4bb0441d6df4fe421f4379e7d3bef0c149e16755da5c106de983933067b2401ba7cadb349f8fccc3d031daab
-DIST firefox-60.3.0esr-dsb.xpi 539521 BLAKE2B e038dc6360e0187642538062c6f06dca6d9b8e60051ce0de65256931bebff48faa927f64de588e484597d277aed9e91e82581f6136f3f54eb4b0c6947b9f288f SHA512 7d2f8c467dde82c522bb2708355eb8219a525fa9ecee477b5dcbadc80edab12dc02918bbb5dd5fe5ed141504e957be1798b9d04daf18d75a796f3bd50bd772a1
-DIST firefox-60.3.0esr-el.xpi 593698 BLAKE2B fb90baf34ca89981f25bc427ae6544e13174e967a3c6f2f1686a4269f3ec05408bdf57336f945e423a9db96261a3098019075d15e37bf549c0ce67b4e67bc4a4 SHA512 dfee947b39119dfa5150e0c0c3f55af5c6a0895d17c6e352c14e462e297156c9c9aa91a4c79eb00b199b63ab7fd07ba75804ef47ceea7a8513b1f9157a8a4328
-DIST firefox-60.3.0esr-en-GB.xpi 491692 BLAKE2B 89f618320bdba187106f0b17755db1ba23e5858f5e4e921fbee010907e928987388b880e45e44012c1b81e335733a4ae764c8270c6fd4e497e66ff931e635c3a SHA512 27be4b1ce6055941a3fac7589789bb591c8bdd8cb9758057958b86b13d29b00b62eb19161214e81a371e81937ea11afed2e2fb0853a3f72d1a08a1fb92d64e39
-DIST firefox-60.3.0esr-en-ZA.xpi 474677 BLAKE2B 880ff5055225d484d9e5f7a4ca84f96cf9844d256919ff9e58341ec21b3b2cd125d7e9543b84616235827b34d08aaa2468b6ba034b50cdff97e173a2364426ca SHA512 414222d9662429e7a033f6d351e5825152debea7229c07ef052d90b246adf30fe7ad3fe49896dc9578550e25c642213aef2660f58a9a70b50c14f94e7c33b0c5
-DIST firefox-60.3.0esr-eo.xpi 511264 BLAKE2B 35ccd2221ac15849bc9069f9768082db5374421222a22e75ab389a61c07b01c1314ccbaaf3b58f7cfa07e6374a362deb6999448998bf8ae83c62647a47948d6a SHA512 ba24dd69ccb9e542e768af47b2c2c564eb5672fe9ba00a9b9bb267de1acac8ccc32afbff9f577a7efd97f62d843a86f845c6d66bf8a3cd337c4ec284d196f3b7
-DIST firefox-60.3.0esr-es-AR.xpi 524646 BLAKE2B 1db567a0b732ba3da0b192dc1ce22064b7186715b2797ba8b44f22c3c1fc835db94612ff043d6f72a6881e2afa1e9f545fd5f2dfb32d855827ff216071386d1d SHA512 ccf0b7f5388f3117606668e6e1a68ac74e50ac102156a618b45ff329a9b207ff6872c731e09d110d3d4786b6987876b7817b45806721f8f0caf4d6da0819fa1e
-DIST firefox-60.3.0esr-es-CL.xpi 527324 BLAKE2B 8c33f6dc4ca4a8ca66995f4225b246c052e1a2d2f6a4feb959e30b6cce6ab35473b0c3a011b8dfe4b8df50ab13f711e26310b3280974f9ddac6387a8990d6a9a SHA512 ac5bdd55db16fda08478c8facef9bb1b2acb7a295bc34d352f22dafc55d28b707bdb3c567a2f17298798bbdda0abdd3b9a8ef84656de856998fa9d108c48c6d8
-DIST firefox-60.3.0esr-es-ES.xpi 459961 BLAKE2B dd9cc0f4a14541ce812919dc1572d491cc770a389fb980415656e864f7bcb8ff49306d01d27e1b06416318a94cf0fe69443c389a2972645aa4d549700b7d4150 SHA512 1e7326d0d05f195e88f7d04a8536dfa41cbec4117beadf5c1c86d98095a1b5acffd31376b82c1a2b8a7994f07b8ad4b30f47a01dcc4a4b2b5377e0a6401cf2b1
-DIST firefox-60.3.0esr-es-MX.xpi 528665 BLAKE2B 46ca7899e783bf2c64cdaa15b9792403b4e7040ced8a85d3cff940db9acf359f2ad8a70b857d4b1e19c9a2ec0f524cddd46e10ff43d013679484aebd60f757bf SHA512 4958629e8d9d73903654922f1f4aef33e86d835729f03b2bbf67d385a69a3e665f2ae473dce84e73ff13439992da213c656643857f77e41faeda9eee09b9ab23
-DIST firefox-60.3.0esr-et.xpi 504975 BLAKE2B c26f073df520047c2be9e8de209649a3d58c2e5b4c8ff7c7071e576e46d28b0fd82c817e81a3c759dd19c0194592c202d59f153d4ede23b899f6f7a1e0e71015 SHA512 4270bb8fdada7c8e214662ab690a9bff9c583c86da30a0f8a50e5373b12e0d9319ea2060c2cabe9ad03294e31cb1d85a3eeaea8bdd19e98872145baea8d141fc
-DIST firefox-60.3.0esr-eu.xpi 511705 BLAKE2B 705d9492d9875ffe5bf736464ca0177aef91639c2cb853e504504d011c5217b39236db357cd7130bd39f20a3fb301beccd0b0e28921a49900d2125d3945a9772 SHA512 2b7d994ac0ef67897c42344299251ba822589603491c7971194ed5d05741c78d7e20c92371d98e66ba7f53f39a28d161a6075c7da3b4d287dca77ba8dc18ce9c
-DIST firefox-60.3.0esr-fa.xpi 566267 BLAKE2B 38520bfeb66f66f078535afa5b8b16742392c84115e9a821c717f9e874bdb25d002b432c6ef9f753005db13b29aa24eaefd856417bcbbe89b07adc2223ec262f SHA512 5c484c9db691ca790df730a353a643aa584d228213109471a9536cd9234759ec84cc691c551ff310564a69f4bbe2db0f913f4e51a218b68965422558300d10e2
-DIST firefox-60.3.0esr-ff.xpi 512206 BLAKE2B 79349159320f9212d65c95a2fad4038a7be8cdb0daa42f341634d255a434a6ff75eaa3fb747e74eabe366b6b1db46cc198092f3db7884fe880a0fd02c571927c SHA512 5e8daa9e01481bb0387a276aba1b9eaac4f3fb140a934a4fbc13224c157892fe074e3c67f97ae7f62ed5295c96e848b62502884b72e78220c4d1482ec3c27f36
-DIST firefox-60.3.0esr-fi.xpi 506183 BLAKE2B 1afe0c05f6909d8d83671d70c20ecaae923e910feb4fcd6b4b3e7f55cc30ee98c501dd68825d9671312f7b22d6e3ddda06520faf7c1bff9088a41932f02e6ede SHA512 fe1f924e84128e40dd07693141e8368dc55d07fb8db24b7d48c3ecd8e71bfb39495345a0a2beb80028e186bc7c1fec72cdc12746f4f8bd1fe7b9542f9e2e688a
-DIST firefox-60.3.0esr-fr.xpi 536071 BLAKE2B 1e1387575f28af52bc3b54df7b7c3b315fd44352e7be06b19e12ab9940617ec6ec3d7098859934d6db0b730612e0656da8d2ba1c301bf7f7f0c74ec32e988a7e SHA512 9b0efff21341e98df6926d51898f072255aeafe16e619d562166baf5a39fc521ac0bd3284a969fae7919663d013497ee1211ce1367826153695278ecddd3858f
-DIST firefox-60.3.0esr-fy-NL.xpi 524525 BLAKE2B 884a228eb3696944d137a86f87a0370a99038befdd6f53921d2e44329330a4012db2e62a3053c6789a54a076f986fd4619a59218bffdcb5b38feaae4c1c4aa0c SHA512 de066daa9736f82fe965bbfcacc4cc548553ed35df8b748e9d64a591817fc9f611d512e4aaa4e8dd5c38b987bf149ff9027e647508aedff67f71d4e9b34b213f
-DIST firefox-60.3.0esr-ga-IE.xpi 526990 BLAKE2B 7a8b2446ab0b29bd7ad54b05834bde09da6a3335e1a83e8f505442418ee359035b2b9f633ac5f85dd154d8a1ef5b400a5553e4381c486c768221ecbb4224a653 SHA512 84bda55e1e27bc567e817b70311f042a6600ed9902735a1cefee13635e8cb8e4930f06fdd700f1f67d74a6af2e63453557f95d72daea703661289e6affd6362b
-DIST firefox-60.3.0esr-gd.xpi 520863 BLAKE2B 9e3c71ea0ebf92e9f4cfc2d7b8c90146832046a4e7dd9313acedc13a24167ba7f61a6689d004448b9e7f58470d806facf0ccf07a8a0edec0392863e36726f4d3 SHA512 4437533a1c127d6b531b5e6e2d1143c0c5b571b81f543a9f41c74ac9fab5e2400dfe61df6f0ff53a2d87223029de262817939590fb3cdb1d2f90e5afe9714944
-DIST firefox-60.3.0esr-gl.xpi 497372 BLAKE2B 3d41b20b68575aefddcc24193297868e2c9b9c5864fd2216737c8af73acedf4957badbed597ea98c01efd28e209b8fe5fee6874262d69e51866da40c02c1fae1 SHA512 745428078b65677fdb5446234c6939d1313895e3a902f179f829577fef052bc85e29832ac712376721ecdcc61f58492518ade5cfd951817d17c41b3180dc9f30
-DIST firefox-60.3.0esr-gn.xpi 533216 BLAKE2B 72526516f7838e3337bfb464b1e653e3049973a02b410f6fe122061c0635ee71cd4be3bcced7d69537ecf64701b171dbba3a03dbfc1a6d5a4ee997d8d9f1e88d SHA512 9f1fc5ced37e55db7b6f30537e77596177150f36b2b60ea5a87554c3c2bdfda5fb4f85552fb3ac84ab523bc6d39b58fee3b5d814539d55a98f58a46ceeefeae7
-DIST firefox-60.3.0esr-gu-IN.xpi 590264 BLAKE2B cdb090f2642b3050c85de2865a906106a75a8e2db0f57b758993e385c3938ccd9c6e7d80938e4da095e0d351e51253a4d0bfcbdabede00b61b60f1437e49a0ea SHA512 ac897102486f7f59865248514b8320d1ce6afe240b81ede4c06894f37b567e4f898f6814f7c81c67538873c764ec91fbae1f0f8774d89c1c507115f5e7d975ac
-DIST firefox-60.3.0esr-he.xpi 535980 BLAKE2B 7bec55004385fac12616bfd93c56a83099f6451c1f5ddfae742c4145739331383f277992ce5b895d24953aea2c30641cd54a722b361652465e1cf3798f525319 SHA512 72c78f2a944821f218df149e1e43b92203134cc60608d83d507f13fca5a1daafdb4636fbd8746e856edf939ad9ad3e27d902bb7289bc8a4ae582ad43a8ffc939
-DIST firefox-60.3.0esr-hi-IN.xpi 590859 BLAKE2B fe7ce7af0e346907d05dc2e006a8ac612a33997e23c0276e5af853613987412fc2dec107f409bc3d4a3fbe9fe870c92fe84362d2159283045c46ba84a5c7a8ba SHA512 d4fdc941828d42f35946269b03d023dbe6258d979ea69d0583ee7613e6c6b176e10c8bfdbc9f304ff02e9bf3b61bb3699f00728c24f2887085b96af405ea91c6
-DIST firefox-60.3.0esr-hr.xpi 515964 BLAKE2B b66bc8e905ac1a9201b23310d81b05dc904e9d0cf599529b0f0db11e9904e15da6922ab12fb3d52ca4087c6ce2ca1c0ef8d8fb094aad70dccf5514c6d33b7c0b SHA512 82cd2988419c4ae1a6359a2d174d8df4676f144186386b443e270ba6c799162af0f1540ff08aaa915d87d8929340601870fb7a42eaed7ccb750d637a2bef58a1
-DIST firefox-60.3.0esr-hsb.xpi 537062 BLAKE2B ff78a3ae5f25afaaae38517142c883b88b558aaa840abd91755a446b551e28a766f6932798f0621ece96b1518f3809692aa7e49a0c2bf5c0bf243dbc73147d70 SHA512 b5c7c31d76a4e294534ab2c618b0982961095812b730be0736a745d4c9fdf43ba27d14f776526fb6c2bd6c58d06e420cc6015d6230d8ef6184c771cd7ee140e8
-DIST firefox-60.3.0esr-hu.xpi 538414 BLAKE2B 78a275f5d15336670550d053fff016123cfa8ef2fb991ec4b7ade71431ec14d29893fcb7a5da7eabad273c37dd6d74a6e243035d8afefeb229ba987343d3863c SHA512 4b211f0e2877cb539bfa001492f209e6d4986c455c3fbadf3af02dc88dd18dfba16cddda149748a59393c088b4b2a0ae9e50de3e27828e7516a98fccbdc7dfa7
-DIST firefox-60.3.0esr-hy-AM.xpi 569420 BLAKE2B 06ba0f614c77b6df8ee69d1fd547d4395abd8c701a20a198255a6ae0f53afb44f8b592b66b10a68c1394415127705adefd1d3523c0a2fe69cc71592caae0df68 SHA512 601b09833fbe485f96418c449ace912f20501a89384bebafd7de598e9c1890a903249a823251fd187603b13ccc3290f844b1a3acaee0a120408862bafd332fd4
-DIST firefox-60.3.0esr-id.xpi 502225 BLAKE2B 93b0f846a99c334ff8092493ebb64e12b26eaa13be9cdc4d1d3494d9ae1adcd4010f4a5c29dffb6a37ff7a739362c2e18daf1a77561c1b7f088f0d4de79865f0 SHA512 12ff6fde1e4ef03c5b485379ccb32b6d49a04d1138881f79f8b3b976edc86116c74187c94fe218b62cb6880187550151989fd41c84a775dc19429a7287b7226a
-DIST firefox-60.3.0esr-is.xpi 513268 BLAKE2B 4f6cafa6cc6de7318884610e1c4e434dd07aac000c607557a696f8b22f08b6bd805683166ea618c318988b68788c6b1b1f7e2b02ee3d03e3da4f272c1760f7c2 SHA512 d607d0f8781d87c62b23671bb8fc61518b015d72141c9e432ddf9ad76d60af7b40ec9bb277310abd2232ad107861692e67a4e02066ed65450b47586c19c9d499
-DIST firefox-60.3.0esr-it.xpi 399097 BLAKE2B 015aad04a4021eca422c55c0bd5ff80295dd9d2df333fc56fa16f7a10010e9dc77f75739ca6380c8f1d8887359f50bd03adc20f897b851f3fae882bfbb1594f8 SHA512 43824993bc4d2d41fb0f76a9fa4eb2fa2c30f0282309f6b69844fac4fdc615132e8b9cc78c5c3524ef92e8cb65989ac650826b8515931405ae215efa2abac150
-DIST firefox-60.3.0esr-ja.xpi 572018 BLAKE2B 780902b51d83d39a03cf1118f2545f6690fdc1ee1a51ba54c620be91fc13219ed7ae58460794f9888d5694bd9609cd653c08f0254384ebee83ac6e63610d8d40 SHA512 e7d4af2fd26a854ae64c18c6bffdd54e80bc4559d8bb07b909ff25383ab12921d9165c5aec76050065c4c7211426abfb7df24864d45618521eb409c874c79f75
-DIST firefox-60.3.0esr-ka.xpi 556845 BLAKE2B d46dce5f2073f591cbb66703b0f6aaadcc80af954524bb043f4f34ef99ee498cf70027e481a245b97e5f716000597a3ff0c76a10d295fb9e2d7830d7fb7c695c SHA512 fe654a49cf40be7f84a8c8d5025cabaa50f20fd1b80f5e4ba118a66e07f1855e4a65878bfe7746f05bdb2e9adb0349a433b2cd83f2e1913731fe62b93d039f6e
-DIST firefox-60.3.0esr-kab.xpi 520399 BLAKE2B 24a216483d06ca3bcb39407df1178fb4b5c91fbf563aa6be6cedec40b3219e460a38d65f758b08c0e578fac0c5f38a3c81cbfd1cdd03ab849278ee87f2df8e1f SHA512 5166c3653dc9a7b5421f0003f0d1905cf0516d07664ba04d16e0f0d715ab881a148cb5cce4c1665b8c4a426f5ad53ec256666053e037e6b709f5fac44f4af597
-DIST firefox-60.3.0esr-kk.xpi 582981 BLAKE2B 3df93a82d29722d2d336f575e46c07d8b55002ec5ed06f77dc94e7cee335afcc9e0da85c409b6c7c3829a995f72c91c51131de1536e05f01809bcd21b62ccffc SHA512 918452c82b319cecfeca58e7ea576305ea88b0ecd66829222a9047ecd5106621d14585d915b8306d6841c0921cf237bc00bb853931d21d73e7187ef1c14088db
-DIST firefox-60.3.0esr-km.xpi 583109 BLAKE2B 25af4f51bd667ee7c79acd7b5fc853b890391a84ac238330a466b87c7d7150ae93826591349fc9098420a5ec3b06f932d5a45d12dea20a661ccdd9ef9b24b69b SHA512 64eb6e0c4067bb32b3f4b513e4681d5d1110c7bed521f674d8600f0fa0a8766b8ab5c0da8089e01fb9070f3e4b752583b0a408918c7b1dff2163a6b9c51cc6a5
-DIST firefox-60.3.0esr-kn.xpi 585876 BLAKE2B a40740853e1877f5a0dbf596820714ce2364fd276d4813b2c314443184244b3f33b9eba08b562d617b1831b774319e361ec3c9b81fc196ada23a7afb3e0174bd SHA512 e7c48b32b35fb9f25e6ef9bcad9d918397656d1327b0c5085d8caa004ed1ba513a40c4446880ce77b43728dcb3350371fd79f4ad08a2012fa100740cfe7c20e0
-DIST firefox-60.3.0esr-ko.xpi 547827 BLAKE2B 2a7d6fc652472c785a2e80bdabc0eca3c0b38985306be626636684e4071d15b9b51862af17acbd49c2bc39b2f612f6183946cd11791db492d5fd627ae06d37c2 SHA512 c23e461ea2fba1514aee326953456efb3e5ac6026ef1925fa530a52814b1bd59dc5d5ff73809b2e42183c8bf4a4424070277c27bd771d229884b891585ffa756
-DIST firefox-60.3.0esr-lij.xpi 513182 BLAKE2B d843891f3d5acf50df78c3e9c5fec9118388f4afcf04fba4be22975e56c3c947839eb4aa147b29077ee6d6214ff3c8b974b27690a8e90e953557d5515e54ab29 SHA512 40534eb2ec1426a05046c41732cde4813a457bdb1156b2284e67bb0446ed576e2dda2ed43b05f4d799cf89224da5dda34eda16da71c3ba8785a3d56444efd62d
-DIST firefox-60.3.0esr-lt.xpi 536462 BLAKE2B 80dbb422e217fbb648f56b0dfc2424d02fbf03c9f46e75b0215d8f492fec6a0f5467d861071e0a394432f402a60dde33b51db225166ae9ab31eb6a0ed3cf4c4a SHA512 a940caf9eed86c00b807c5ef1ada1dac84e17279cc011258b8a477e2da8f2300e2cf41abdcb9c8ff04852541a3016a1c6a7cb00a046cbde329c88600bee9eb2b
-DIST firefox-60.3.0esr-lv.xpi 526416 BLAKE2B ff569e766c65cd49526f929094ab445a692b8d5d8c8c94d27fa17c1daf8ee1897258a3b0042858179ab800f6e17b898e4ef0e28d1c2c1ce9f4e7ce6679b2bff3 SHA512 f8d77a9978cb3f9de4131dadc6028eb87d4831c6acfc1752a5f76e8c306e6de7d9d0eb4de899237f35d91b7092e21c2b30c6bb738b3b832464c65e9dec559009
-DIST firefox-60.3.0esr-mai.xpi 549255 BLAKE2B 9f01112bad3d44b6de08cd26450d130756edb86bc1a0c3473f0eee34e22eef303e9ad911a668b3525a35410911e5f4d4269959f496dbc21cbb43222dd6a90707 SHA512 4df3ff013f26e3221a48c0d49cd14c84f76c4ea570148c3f2ce1665a5fea516ce1dd143e184515baaceb185f44407ffb48bcaabd64450c1f34f246734f006519
-DIST firefox-60.3.0esr-mk.xpi 513806 BLAKE2B c48c018c8424fd21df85a194cf0d71675769f769cb855ae067cbdeeb3479e30b09eeb33df47c15713ef4807259a5865697481de71015a285d85ecd4fb79dfd46 SHA512 13bfe0834e596a5266006a655e4772e86659b54790adc4a1bde16f3a419610f518b8b4ae9ee2797655652375d7d183922b582a5305a380abec2a5d50ea0f3389
-DIST firefox-60.3.0esr-ml.xpi 598984 BLAKE2B ca632bac39f402c06ebf58fe2f660d36f1b51a6977b6637b01dea3341058e0cdc69182bce99847fce4e1966e38e845cfb770c67c72e1f9b8bff5987af521c713 SHA512 5854ede39e0c763062de8b3236646473ca645d55e1c438264bdf3268240fd1881e56b6b9a27bd74484a173c3242c5d9354ba2917db31e38c8abd045085ae31ca
-DIST firefox-60.3.0esr-mr.xpi 579122 BLAKE2B 55cce9155ed8966983af26100f7943a7ffb29259f03ae74a81613fed13e0636facf52e3d63a01ea46405af0287c804da681d7d4bba30d7cac6e2956263b655d2 SHA512 dc8df64cb5b438d044852998da9e21ad7aab92a652bf2b33be855434ad87ee687ccf1160139f88e2a7f635a0c7c4f0f1c83391dd5152dbed182ee6d412252967
-DIST firefox-60.3.0esr-ms.xpi 509558 BLAKE2B 3f3b9c4796db42878ce6d399cdcd9c51374bd8ebe3ad9183b1c2f19fcde7e7c7011869d055e74b6bcb363ebfb55a678d421fcb5e7b0d87c1632a11db357b1821 SHA512 31a646b99cf3d780f8f2e566ccc2421e67a3a5f200d6c2d8a9cb7770683a0a4cddc69a19bba972f7bd3c6135cf561da99e8c1df98fc82fe0b62ef2c46d92a6f3
-DIST firefox-60.3.0esr-nb-NO.xpi 509890 BLAKE2B 9bd42b5e2a97e64b1f6eb92f1dd5524fe25776efcae412efa4a21407503d26702dcf083663c2bf342f4d5cf819699a85f03495cfc3ca924ebc0d1c12f2d45788 SHA512 1d722e77059fba789f9954a57ef310e7a83887436dd9a97734fe875224dc6386c5129bc174a1adc8a08ef38906f1c045a178dce98fc950146ee9b6901233b5ae
-DIST firefox-60.3.0esr-nl.xpi 517461 BLAKE2B 03974c58869ff64156d3446cf48d338f719da3ad7e9ae235c1bc521c9d93095e3ae27ea988fc8c80908b7a4816a755ad85623e9c1232ad3fa24c31e2e3d01bd1 SHA512 d0268013e06ad2f686f4edd7f1ddf8c8fe7f7db64412ce5d2618dc8d9b820f415481b60a5c7853307e0d79ab6d44f6e557328ac9d038b1a17f1f643d8df3dcc4
-DIST firefox-60.3.0esr-nn-NO.xpi 511433 BLAKE2B 7ae9dec501a6fa7ee385df7b98160eb47239ce2452db0ad76403f31fc896650aa78a56e53d7374f0cb3220e126d0d0dc0687a801001bd146b120fb4af92013fc SHA512 5f3132267209e915dfe5b6afbac9a9670bd13e78d641bcca919f0d693c14588dd7b9d603607eef6af2756c34acb0f960d20d6bc0ccfa25505668ea57765e8f22
-DIST firefox-60.3.0esr-or.xpi 540872 BLAKE2B 4c2e049a242a399266fe83a736d981d026dd36535b4952db0bdf720dbedbcc1f457fe3701ae889d08d4afd4203dc1330c48ec46d3dd38b22ea7a739acfb5c343 SHA512 90b957c3e0d2a7ab84a88a7a91f9200901472536f3219d8dac932c230b8621e1bf962db790d5e485989f8b8b3dadb5ed7ab4f0900a9b171a5a8809a34c27de10
-DIST firefox-60.3.0esr-pa-IN.xpi 557874 BLAKE2B 117160710c57fd39473e7faaadc74fcaa8e751620f5ded01fe97d6a558e6503915e6757e01400640ca589c363c071fb43622371b569b6cd2de6eb7c56e5db261 SHA512 8eeb16a022c41dbd9ba018b2cadc272aea6dafe61818c2a4ba2460261423e1ea1b18cb359540a0c6017c2f537e1081c1dc4e4f3c1ff4f775f6e86cbce45c3a89
-DIST firefox-60.3.0esr-pl.xpi 419029 BLAKE2B b4875118842d0307e05288118b894ca7f5142260291e53576f5f3f6a2629bca0c08dc16713f2b5ac022f5e5c957cca11083adce376ae8a9b662902c68ec15c42 SHA512 b415957c9fb579d9dbb14dcf503bfaee4069e84bbec0f3de527ed0fe5a78095a680b7e8aee5b7570ab3e0c7a6621ecdeb3dd68d353a3c11d4e6d010777355193
-DIST firefox-60.3.0esr-pt-BR.xpi 514770 BLAKE2B ef9beaac9bd6e40f802879ccb8f109b8d4ec7c1deb280991dbb666d19270cf2b31e4b9fab25d912f4a76c875223304ab68cc829ad746cd4e223d98e268911e7a SHA512 1439ecbd19b9b40e7810162e71f9b7122cdb61a8ce0a22583e9583e4aadc69f1f9e49e914da680382d5b60c6557500f8f02b62b159fef8ba687b5fecb4641b88
-DIST firefox-60.3.0esr-pt-PT.xpi 519361 BLAKE2B 48b185a5f51d3dfb61a8b39b555bc8f669759bffda2f592777ae232cf14a6773c37993571266818a82e1f607063f64757f7d886334b5f33d3da308242da2be4b SHA512 777956277331021c4a2d413366ec2565f1732ac555a334da2d75576b1452fb57b674b076b57e35f213cceae7962de37785f2008a0d0ee8e61cf9495e26e205ad
-DIST firefox-60.3.0esr-rm.xpi 506051 BLAKE2B dd2d59d0613aef28988b56934e710ced158bc2344a1bd9fb21acada572ee3a2aedd263ea9b7679d0afabe5d2833def7b59be7bd089165cad4e70198cc06fc94e SHA512 8dda05b6ec460f06a29b96e34b90f9ff0aa93a92d5744095a9e6a128e2d9462ce63cbbaf98bd6d26a2003eeec6de6902a28195ded65f9c6d3ee9de8e658b7fab
-DIST firefox-60.3.0esr-ro.xpi 514054 BLAKE2B 3fa82819330dfdf0f779f4ebfdfd1d25308674d8ca11813458baaccd89ebca61c0fdbd092f42ffd9fb9371ba6de0b72e5b6cf03bed54b10e69c8b967d5061f30 SHA512 bea73ec10a6a02055841455453a3ebe0ea610fc2e312b17667d9921edc5a62ffc6e6007ce1d2856cb9a08d75e6c15f4b48d29174a3c71af22a7c398da203b32a
-DIST firefox-60.3.0esr-ru.xpi 591395 BLAKE2B cb4a81ac69744ff3d2cb09a4df6ec6140ad96be500ad9a085f980802f34914592b2b896dd66f814985fc996522bdc93bf3b36e09fa79b0e683a23670530188f2 SHA512 e2ff2fae708af21e6ef11b810b87912651a961577177930e9f4abdebe070e161012acd10d4cca766a8ace4ec3d41e56e8e90dfae82c6596872b8e20ffbfba71f
-DIST firefox-60.3.0esr-si.xpi 545581 BLAKE2B 51f2f3d6b732428c705870ccbc14bfa88c829aa75d0b29eaaf36a8205b372ee7e5c786543589372808a7915cd7cc005a03d2290b4666d0f2237b0a918b3bbe41 SHA512 374efb708043ab2f69f800d4157e43829452c236150c6705ad6d6f587a4f5e50d15aca878b2bbbc12ab41e6a932bf05fc635d6a976a06f40ef114d487a8ab1a9
-DIST firefox-60.3.0esr-sk.xpi 541703 BLAKE2B 1b8a1e9119c3c1274e38c2d2ff00ffb0dbfd56c9fe46b682e3a492438998272605a236ad312e6338a4996b34aa6d36ebf94abd85d80ad520c07a71936c578ca7 SHA512 cbba40d2e798bc6794377a1f8ce290510c43816d6c868d806cea4098adc0ddde38ede32ad791f1445538cb485861223b579774c8c318ccbd67723a886eae02f8
-DIST firefox-60.3.0esr-sl.xpi 519378 BLAKE2B 87c575fe790a61f20d37cda0600286e4cbf37e8e82ad3c44ea9a282b0972b554e5c50dafa2b94cfd61754cd6dfebcf8575b2129f1a026286d9b40139fe4a1c74 SHA512 8ff4db18b2bd11946422f511e9922a989981c5cab654b89d7c8abf5a8afbce1a8c292fbba2a1cdea9851b9b6280a0c73a1c9e94600cd19570132c1a5cc759707
-DIST firefox-60.3.0esr-son.xpi 497697 BLAKE2B c30f8d21b1f4b895ec888e2d992afc58e599ab2fdf11304b1fe34dbda522f8cecc63cc4fa858f8f0b38b561649e3cc072dc5a8999c8d430d68e989520e129dbc SHA512 a584bbe5f4342074d9793091fa5a4cae8c5ec2d80d8800599d859387020a91c6d5122465460b95d16b968cabfbaf9e9ac2518aeea9ce0419e85f8a59f1b99937
-DIST firefox-60.3.0esr-sq.xpi 521266 BLAKE2B 672405e8f8093976f17098efe1dc5fd27a02f7e87ba1891a0bff8f6d95bab4110e355e0e70c6762d9312883f158e2b1afe1a54622ca15aa6955fd23f50980c8d SHA512 46e043aa44b5fe01fbd6ea0d6965c8e457976606a994f27939754a2793de2e856d267a8b57e95f92cc3847af2935c031bf28e4297720ab1c14b76742afd07a47
-DIST firefox-60.3.0esr-sr.xpi 548777 BLAKE2B f282ea4840e0daa254850cb694e791d8f58a62172f34c4ffd58476d09d17df4a581ab049894f2931b785af6e0d55de02d4bde320816c6690b26a56c4a38d0de0 SHA512 fdeee6cf4073eef93fbf324813a4b569d865f5c183f75e1dc4f090f7bbc00babb875e30bc586c57557e6752b0265e86a99c065a57a60766378b835026de7ba28
-DIST firefox-60.3.0esr-sv-SE.xpi 518662 BLAKE2B 405b30f2b0e79d4de2b8abb8250a17f1e7e53a1ec182b8d323db348f1cafbff518402bea6e186c6bfc28bf5facb1a43822188236e7f4bb6073519ba54d8c1989 SHA512 0f46d8a7c4b7af27af02749806aa052723d2fc12a19c009a1e9e224782bb033b8873d3cd2a62b8d6e5a1d0ac9e8f3012bf27d9491acb8edfedf863956cee49c4
-DIST firefox-60.3.0esr-ta.xpi 577925 BLAKE2B f7ee6e16262d565012c3dc9b5470993dd8e7669052ace7940873a1c411d7a99cb7d818e7b1faee85d8287c73a65fbb7af6f4d6db46bd263ae2c15b2fc2f816fa SHA512 33f534e7dc6af68fe7fbf8b48d4ed98aac96d20be535cc2df7a6f3e4866b6dd3e3f0f62b7b41bea080713b797bb62160d4f8506ef35d869323de90662430a8da
-DIST firefox-60.3.0esr-te.xpi 590955 BLAKE2B 45c3303efa4923995149f266ac219b1d981a2b4ad6033771b1fd2a148d5f799f19a5b3d30f942e7c80fa3d4ef44b2ccf539c324f447edb2113bfce7d021e395d SHA512 343b2270db08644042c3339e3bedcbf0a296c5dadb3ba05f51d8bc86c813e8db4b805b590e8518ead0c91d15f9fe2abefce4bf510c0de27d923ec9a1541aa997
-DIST firefox-60.3.0esr-th.xpi 562819 BLAKE2B c588263d81df8a3df287748fe2a0daee28294077620d303c420c738cc8c3f4a27ea09afc6247ee435b322cc31b7cf8d17dba95aff4a3f98ff8bd77fe78637af7 SHA512 82b17afaa859b3b6c2bd96255b6bdc55235ef71d65337c92541621f7bc811812c815db7b418b8f03cb7d36b81d8bc1ee743441ff50b64138eeadf105116f3795
-DIST firefox-60.3.0esr-tr.xpi 525854 BLAKE2B 8ab846ba6bb72f5e82714389245b1dd16695af8587322ade5bc7f6bcbad7c36218ede6588d3b0756f26abd0a3065bdd56fe88c605c1feacb79b580c4af57a8e1 SHA512 c22b5e56d14a0ab2ed7be86667ff2bccce830673cace990bd0c361fffa04572f55fbcb86eefa651e2cfdefcace955d8c057da15f28656f8be259eb753c84849c
-DIST firefox-60.3.0esr-uk.xpi 580918 BLAKE2B a35bf086c39513743a61540878f056e63bedc5909bcdd1d28d51638c17ed4a83f70f805c259af4f4472dff5936fadb22203720eb24cc71e3a5d05a4e2ca068ff SHA512 7104c57677f4fbb850ee7e6df043a311360bee58aeff69e8f7b02987b13a4994fcbeb4c014ec418f064fead6dbb42f4d4815e5574cafc0974c9ba771759ee793
-DIST firefox-60.3.0esr-uz.xpi 513688 BLAKE2B 3b9c427c6ebd64db2d3e27a013e04bcdc87e7207dacab236a819b5c3f012fe2f80219e697ab844bdfadd7c38d85c543f9d542c43011f9831e2c4fc72109ce606 SHA512 3a19b44706bffe210d780e9e9483c8d520e06bf3ab9eddd70e365a22c242740ce7f3b4aa199b4f266d16c2353f869dca2da4cbedf8a6e6626b4f0b20e6f7641d
-DIST firefox-60.3.0esr-vi.xpi 528186 BLAKE2B a8ba777fcd1e2fe9577e63fdb0ac0698545e53f77caec617c1f5995cdfa39dd07cf824932ccaf5cba10dd60dc7a85545f0b6f8194cbf9f4d043644e3ab24a86f SHA512 99050fe7ff39440166247b56710800d40fc56b916bc88715ded501f3faeccb2371794725c76e74157ee001ea13252af90f9561a41e4cb1779adeed10a820026c
-DIST firefox-60.3.0esr-xh.xpi 511853 BLAKE2B e40dfceeba27eeafbd757a14575215448d4e4b5b64c5888695f2453806d9138f8c8d707e86bc088950167d1b696593a60937fccd7a637080e5723ca2bf7d021e SHA512 b8dae2ffd96c12891ad9ebf5e5583834f1267c283a23fe861d80c244b449ebb650e2a53c83d0bc0cd269f2a57f53d87b9068db84373d6bb6add679b2e378631a
-DIST firefox-60.3.0esr-zh-CN.xpi 543582 BLAKE2B 1be96fa611ca6114d60d2a4f4e9164c33e46c127ac62ee500a2f1d027081b4b0f15c4cc50b6fa733f0ea196412bee691b8945294e243c87236b2fb114fab254b SHA512 a4bc406c2163ebaf00ba2b63466de9d2e5839bf28f011b85c7b0f89ba5ad1528511e524a3363ca58a90235a7976f99c05a0510c164b15993b80f962f4c546921
-DIST firefox-60.3.0esr-zh-TW.xpi 541908 BLAKE2B fe6f381d3f2949f3132dc125df597c4e135347933c52b681287f00b3eec2cfb1eea963953a08c0ece5de8d276c06b388692a53bb77c54bfa195709e7a59340fe SHA512 6743eb9442e28ee924230bc8acf2dd52448532ce76bb0d6d8ea89b6e5f4d1aa4fa9388a2012636d16ae976526f154052d51340b239c04cc42ce991186d0b3b33
-DIST firefox-60.3.0esr.source.tar.xz 268340600 BLAKE2B 5cf17a85b941d0f43bf3d714f289162cb0b0d979951cc0e1187163bc72be3504787cc4115f361c5331731a4481fd1fa8214d20245f08a4898442e964aac48506 SHA512 7ded25a38835fbd73a58085e24ad83308afee1784a3bf853d75093c1500ad46988f5865c106abdae938cfbd1fb10746cc1795ece7994fd7eba8a002158cf1bcd
-DIST firefox-63.0-patches-01.tar.xz 10228 BLAKE2B 1c44d3f59da75e92a8ee9b3d1d1b017503ff4126a0a8990137904b7c25dedd5c967e80d1d927640797f9eab00a3e7a0a8774b233ccaf286290f80cb2840b1cff SHA512 d6149a82c139ec6bb1120c2a09e470755fa852e7a45846df2ee02d278ad391a8af4b46f6e9a34eafdcdd522467e365e5181de6b5ada0cf26ea4fd34aaef44bd5
-DIST firefox-63.0.1-ach.xpi 455078 BLAKE2B debdf9bd1c12395f8385d377590465ad63c240db79be62f28e23171f1227124e30318105921885b86d6ef3e332e84aea8e38072cb7088f71bff8866523e5ddf0 SHA512 59331ccf9a46bbe6193ec9cd1f40d1ef3f14f4e55ec78d949efc79fa7062767a84532137703aa0c6563cd36f4744f23f608ea01d3b85dda03d69f131494bd3db
-DIST firefox-63.0.1-af.xpi 437918 BLAKE2B ee6258c86dc1cb2a6249d996741313b68007f93ae4bc7098060ee958d8946c4ab19a1d79119740be8d5c6c6762878b22ba413943a443c523fd223b9905cca485 SHA512 4d1e6d32e756e5db1556d35a1b72e1a6c0a0d729416f3c4dc5d86b001454bbf527b5a1c909a0191fe8434cc151e8d7d46257cc73f45407b62e01c53e09af75e2
-DIST firefox-63.0.1-an.xpi 474545 BLAKE2B acc44f8c99af8ac402a8b96efa3c96472024c7053fcb104b33051165f542fd287a97bd13b85980a26be73fe776e8445f2aa3769bb2a669855574a8b96c660a1e SHA512 268e7dfe4d9cb4c86c9f7dbb34e2bf72a17719afc248cb13129e2a34b9a5ef3bc170150a5710a8a7439b6a71b69506d66ad75d19ac3b97a793403eeb419098b4
-DIST firefox-63.0.1-ar.xpi 513464 BLAKE2B 272ea8a95a653f3a14885bda21e64266cf26f447447e5253c523dac4f330bdf8adaa6e9b21575937010136cdafa9c92c52c496743de8ede62ac8b86830d7376d SHA512 65d8611ba5774d112debdbbbd0c00e77cc4de45fb5db637e2a6cd09d904d0e210cde1da74eb547dea62cb022e7ea4fe4abcd93c4b491599abeec746a583b424c
-DIST firefox-63.0.1-as.xpi 482192 BLAKE2B 6194a2af8f51b2754a7700505a7ca9944a2534633808721c90b976371daa7fe883404374d4b0ea375f0b0bc4dfafc56a486202dd0f7f7386baf9a0d8e3224059 SHA512 0896c5dbb21866029ef5e14d97870fed1acd2b18650b7a03c494f31810fdd0adecb69ca6860a6ef272e7d357a201bb226c97d760fd5a8e411c40961e58dd273f
-DIST firefox-63.0.1-ast.xpi 465657 BLAKE2B 3e4a7737fb1333effac80a1dcd203e3eaef8743efaa3ca76e07b51697899eb3c3e5e5187912de975a003e00fc7be4fec53c68357ff6baa0018f3f1a55c57ffe1 SHA512 a3104145e32c3e932baace5fa5564ed5bd7d9aa0ab847feba05f173877ac1a9023a51d9cb1f80586263c32b3c648aea6e54ecc7812e3c2102047ecdd2cb9776e
-DIST firefox-63.0.1-az.xpi 490940 BLAKE2B 92dd952b43f8cb968f5a2f631ae4f02919a68c3c62291b5d79a097356d310731fbf76b3e2f213ecde11223e98e5fc9e3fb92dafa43ed90aec59c190a140aa6d7 SHA512 13f2e0179f15ea8038871f4743521adb2ea1acc70c30828ee87f9f33f133c4c4cd3185dae76006c3be98e2ac8e23a44371c3f42a95bd8b042ca08822d234308f
-DIST firefox-63.0.1-bg.xpi 523520 BLAKE2B ded33ac375437a670cc8726d006f7210a51be9412a98bacae4983922b7a6b45be62d3e363441e13d734a9c559319d7ecefced3df6c03d2cfa20abc1d5676f766 SHA512 e954f67ab2fa1067803416f1b870913e6fa4c4b02017fdba0a23b015f531469db5464266c1a78aae79c0e23beb961703208ff3094211234b17e41edbe1a5f1f7
-DIST firefox-63.0.1-bn-BD.xpi 548602 BLAKE2B c332c457f86e4dd504490a9b718e2d05dbff3f60b60f174032b6e3b7fb5e75843535f5dbd331ded1e2c50bc661fe26b5f38e18146a0a452c982365bf97a5b955 SHA512 ec784af9433ca92bb6e6846e5a11e26db2cd6f602211662588491efafd094c6d5135a3d0da6bb0a3427142a094568ddec9959603c13b38524a12678568beae80
-DIST firefox-63.0.1-bn-IN.xpi 516021 BLAKE2B 7b69f70455920d4ce5129b7d64cda9b0599cc224c0dde3c4b76410c455a61f7dac85aa2def238f97acf856844e3778fa995bcda54fbd82ae53fe8b33b60a7318 SHA512 ed0c85e30db05872635ec9336d5ed182c7a63f222661a22e7dd5070abf04fe27d1db0cd4ae8dcc55e99c5c935778035b3deb11ac3dc78f60e6ccc645ddb15f11
-DIST firefox-63.0.1-br.xpi 474387 BLAKE2B dc01a6fa2cf1feb0c237098ce7365d2d53b727307eef53d2ee0e5e08b4758d6f252e7feeb819576eb8815eb985152fc946db2ffe9e78736571ef9f1864a6db3c SHA512 07dda0c7821f60a6364a2e18f800f42d8e9c1114565eb02ae7c0264d35dd97070b284a50c0b34e6abf36fe77f1b759923141c6bed39edddcc3f51de4e3c2869d
-DIST firefox-63.0.1-bs.xpi 472879 BLAKE2B 4ac1d101bbafa5cdbd86d57e7730f50ce716773d0bd4803669509e7324baa938fcf3fda9d54953c420e0a1c6256d348a49b2a3a4f58c91e90569fce21f706fdc SHA512 6779581fd228d11a064f9ebd7c99edf0877a09f5e8c1906c10f0cff0501c1627873a9446ba957d341b4552dc8caa8adf891048d81862a7d61821815c2fa52a30
-DIST firefox-63.0.1-ca.xpi 469248 BLAKE2B 4c2f6e5228a98f6d14a2d8829305609a06f7fc71453ba67871a00e06dfae4d59fffaad87c2352b937eda50d287e09678f1d4ec24d6c69b7d008a11193a5dbc74 SHA512 5ba44ddfbc50f17741dd05838a68c53f128df07a54c53c7a3405a6d7fd1c46e31a4a3c78e1d33478e804fcc70407214e77221a7a0a97f5f239ec10aaa68a0558
-DIST firefox-63.0.1-cak.xpi 502723 BLAKE2B 2ef56c01a6b4410427ceed602143e72f8ae10af8b52f8e11062ab75920469fb216d59e78a72c6653ea15c5b2897184acd09b9b95d9bac04258ea88e5246f94d2 SHA512 ebc0482b17e50846a2354308564eb8e7311a5b94581417c3d86390a1e4c75eb97a64740b29fe457b30dd557618bf9da7b9eb927228ae4faf5e90825c29aa742f
-DIST firefox-63.0.1-cs.xpi 489306 BLAKE2B 6733a534049ca80cbfa82d591f12123e3c82746341e9dc8ba7a0b5547870fa17286ae943fec3a4786eaacaa4724f5e52bf62bfac75e1a04a6472bfadce537a1a SHA512 249d226bafb2a63e62392edd487a335f516903f727c6231858b736491f78ed8cd58427ff5c725d011aead07a760f0db03f80f37276da10bec206cda7ba60e308
-DIST firefox-63.0.1-cy.xpi 481078 BLAKE2B bbc829e3cc60810a07e229140db8d2cbddf2b02286bf9bda01f65d8fc2ceb875e2de53be50b6d82533209ae5fafbce650680ce6e3166acc9c5cab0dbafbdc278 SHA512 24d219baf51248a548b8c647774927d6e62b727bd46ee1d31ca1057d751fa0c7bc221135019b336420763cd1a7213d24cc158238027a0e3dcab74d90f42da724
-DIST firefox-63.0.1-da.xpi 481843 BLAKE2B 07d21d53fd1cc4901edd6cf9df66ec0f1eecae0a6859f86d6e215fd9434604e324f01fd64af0e2d8f6111dedd6f5ad745e8770bd3c48ea6cf3460133415ada6a SHA512 6e4f0ac482f6835bca680ffd69805c78fe9071c73f527fbcc5713ba7aff6b6e5174c522ed1ef620e9bb79eecd7734d17cb555edf82e5e4eb463a824e4a934782
-DIST firefox-63.0.1-de.xpi 491997 BLAKE2B 51bf3108014502b856efbfee837d90b193557783c6a2045a94af1be88488531f5e4ea1b2adab92abb293017a87056ff8f204afc57b803bcd2bf2e5b890753820 SHA512 adb94c5414b9dde2530ac11139ef531b26135785b51fed4209f2a18f6cda520d97e3375b217ef78a2ba8b28a3075108a5898206a084630e39d627fae8f78773e
-DIST firefox-63.0.1-dsb.xpi 500882 BLAKE2B 50bb924df3ff28c74b21433e3dc964800151cf0c434ecd87d7f49fe6d4b1e21a4eda267357e73b37e8c5427998f75f3ad139fbaa539b33947876e309a3963ca1 SHA512 69a0b9746febf3f8c15223988d80c994712ef5a5b3f54aa2ef6a81390284d04dce55c7236d8383b3c4a30ef8283985ae3e11f801332bf6aab10602b868abc8de
-DIST firefox-63.0.1-el.xpi 558437 BLAKE2B 1ca15c1dbdd98e7ec80ea720185d63088f2f714113082d0b03fdf059ced4e19cab126bf8853681f3a326a6c24ae21e611a7c7f8916e0d3660c2cc87e03b7a9f4 SHA512 c8e4aae4aff0ac617b1a4cff4819fc01735aa62a9ddc443f620f27b831a2a942704d0ab78fe3c3e2f29924d7ade53eb4cdeea035df3a89314875b667cdc6c66e
-DIST firefox-63.0.1-en-GB.xpi 442422 BLAKE2B 84934d3186fb12d3c93691dbe2ffb29cc80003d1059dfa0b02b5151ccedd3de48e377f18a7bfd68523690cbcc2ef91f2bebcc4ed2aa09f8d28bee82c15bb7ac5 SHA512 5d9acd673727f3a0e4e57426cf5468468d1e3067ef6268c9df34388970ae26dd80bdbeda0e78adcb7fbfe5d6b2028c4bb517d0799eae0fef6902b88e7b897497
-DIST firefox-63.0.1-en-ZA.xpi 427849 BLAKE2B a6c801ef34f13f08ac17b0502807c99752a34d704318fa97ee87c1a6fe38557b075628400acb8ab1b31964e15e9fbde985309a8c329454ec96a8ce6976a06a1c SHA512 3294273a943cff13f868be336656f26f29297904fcabaf3be7f140d180790d5371293aba6cda2fa560600f73996feafdc067e4279bba78039c719b9dcd38ffad
-DIST firefox-63.0.1-eo.xpi 478962 BLAKE2B 154f71b20602db8cfec855a6b0182ce771e01b3e5103a5d5c5cf54cd13c95fd4a22c97283967681c04c865d7bcc741aeaf8fb9af13b2ac12686a64e36bc3dade SHA512 c0515c90d8a212db89060531f05c530e96e29bb33a6f889f887012050930b40b60448a8b5e031b3c28038828fc565fe68a758ded1eab0c2d0b223460700b4d2e
-DIST firefox-63.0.1-es-AR.xpi 486912 BLAKE2B 36e412eeed77b03df0694bdb93c844c86dd31f9ecea8568eb4e8081033bfee42aa10fe00a6c73ccb10eb390ba545fea115a6b6136005fd676e7f4c4a9f94203d SHA512 19f43341f2d2173ce42fe7bac602bd7bce66a2649147abe9d2aa2cda0c50c7a91b523c1f4b468e3d112b5948489515e32e8b423f3532c8d5cb54798ad6ff217a
-DIST firefox-63.0.1-es-CL.xpi 487571 BLAKE2B a60cef9c76a0c2744d91616504465f353fb3d3929398b88280f7b64d1f11882f28a0ade27ce11438c64151430150df942cbc0e5ae718e45f1d6843dfa575ab7c SHA512 706a4c30f0598a8b19d5eba4536d9eb4aff0c56ffbbe08a2b63032bb9bcc13f71768df4608a58528663d2a71577136684ff80b00f13c6cb08396889d399617ee
-DIST firefox-63.0.1-es-ES.xpi 431434 BLAKE2B fdc3115703759224c9cfd3058385aaefbfbe46c0f46a8d3e3d4663d9a5eed613fbf433b3d2f179e6230f0649c25a8791625ed09dece093188db647cf3639264f SHA512 facef942498565b55f6b6914c0948306145d1eeb04535758b2c6e8aa83e6fc8aef72cc5bb3fcd7e1512d7b1bc9c5502fbbf65def874a7b98b8ed8f2f85c9092a
-DIST firefox-63.0.1-es-MX.xpi 490502 BLAKE2B df9407d54fdc10b54b3850e86a4d70674b3cfa4ab1d7b76b071585588abfcb6850b3304733d293c99468c9dd2d0edbaddba6f15ccabc927e903f0c1d8dfeb530 SHA512 1f0a209e868490e85bb2de5b87cac3fbed8f482a25d5573c4aa5e70f657829590de6425b0b1cac4abd70257c7f41965b0197aaa52bd2cdc5b053368ea560e445
-DIST firefox-63.0.1-et.xpi 469972 BLAKE2B d7a0751c2d3b89896eb297b9999b6d1a834c971bef5244ca5519723337700db8ccd6fd96ec29a25018c0ac09c2ade807a2b2852a68f656b7eea06e0ed502a039 SHA512 e868d7b207e6840039d5152307cba0cecf8ff7c6707d9ea298625a0ffeb7524b63791434547004303e782fa6007d7bc3708566eefb9fa4e32cd52a21d630cc5c
-DIST firefox-63.0.1-eu.xpi 478608 BLAKE2B be7638e62f2b19d6242e9bddbeca325dcb6b1650f46eadf614ebd9cd147278d40018c6e2bf8dc93618f5ebb27f9cf07007fa80b65f4ee406d4369eec77358d8c SHA512 a8f91f9e916c837632c345c72cd49f1f0e7bc7dd991f1daa175b009f409aec396abf3af05a0b535cab63be952a5f50a73add06b1052d4398274a739b269ec515
-DIST firefox-63.0.1-fa.xpi 529581 BLAKE2B 034273e7e6d7597d67875cf72249b0315988b1c233b063524f34ad6bd68d3d127b0428a3dde78979312e0ba444f54b6881da8d2194218d7bcc8c5efc88fee9a2 SHA512 7ef2f84caf64dccaf806de1564ba2baa82f334ae3058236aff086145de46a021a0c4fc78c63fdf059dcb7ac454dcf3604620ac794120f147f7ee842aaf73164c
-DIST firefox-63.0.1-ff.xpi 467974 BLAKE2B b4f437682d841c7a50ee2f09db75e8c7aeccec5105b811887a1d88e37faf4db5b3a2cc018ef4a9ab123eb13a1d65e558d7cbd23835fc88905a340c4ed82b0e31 SHA512 1636e39305c6e692ce054e74856f6b61c5d35615f5dedea2dde813fad497c1e6560d4fef8fa6b1e95f1078e9cb8565a2aea6fac9157e5fcbc9ace71479940cf8
-DIST firefox-63.0.1-fi.xpi 467886 BLAKE2B 698069159b4ea039e07eb2daff23c9494c3ed3060897e6907401f4e154caaa841f3f92467daf3ca30cff022b65b2a5f1c254df6aeacb739bde53339d003f660c SHA512 ffba6a5251cfe6494e0624cb276596ecf8eb7c5fbfa304758d8d8b27c429be362feef65c25610f830084c36fb9282eb2f5c29062a89fda4620817f8358e1c152
-DIST firefox-63.0.1-fr.xpi 496625 BLAKE2B 42eff06e92aab50f2bc6258b03975ecedc133d8ad9283ba80c86de326e8f9469d5870702c509639d808bd9f7e3ddf86e76bf20ffa95003bd2b56f86e541d565d SHA512 f2aa43f6cbeeefe1956306f8d7d06cec68b0e061abb9d523c791cb30ff3362f01d9b68cad664d3cf075d4fe880b0a8dcc53bb376c21283a0a4b48680fc171986
-DIST firefox-63.0.1-fy-NL.xpi 485373 BLAKE2B 30db807975fe1f32c75260f862ec43523b560cbabdf62cbcf49515629d966be3cceaa3a7cd16ff543380d377f55212559bc5d23c2fa5a5b9849adbf0386b8acb SHA512 0c42fdfce29f4c3595a6ae46918e790961c2a5cc773442f76a3a739969f4583c742b259451cfe6ff18833654b4d8d2d6e0bb2da9f46f54f307debe0b464f777b
-DIST firefox-63.0.1-ga-IE.xpi 479147 BLAKE2B a976ba566348669d40d25f65ae0dcac38e35a624c58cbdedf650188843a306a79149ec105200879e63d423da16d53c0fecaba8034efccafc26aaaa790c5c4ce7 SHA512 e4e18a0a6b9ff4def5f8d60d7e29cc3f938d90562e3611b789fbaefb211e2d0a1f3040d318d1f77499a8ae1ce5ea539cfd64bd87ae7baab0dca396377624b263
-DIST firefox-63.0.1-gd.xpi 484600 BLAKE2B 91040e7147b37226ca517e9107fb6c294af7d80fc0ae941c613d7fa2e86f90182665ca042e34ff1e0aa241fed4a8e8a183a581116775848032a59960fd4bca1d SHA512 4491ad6e44529e377f470c1ddae1101dba9e1e483f8e90d28ed46ff5d5d58dcde6e5b7436a493af7de21bc8a6532ef0503cadebdb25de74c2874585b3a916edd
-DIST firefox-63.0.1-gl.xpi 455902 BLAKE2B 3ab97f0fabe158e158f1d0c65bbd79232705b72c355d9fd127e36049f5693a8bcc3c4928b95d6b06fa2323e63a7bd5f8a35e2f7f580ee12ec4d72a9e7a78c2b3 SHA512 62ef63faac1dc1f3a7365d8f1de37498328371405c517b6c2d32c5b2afb52056def44dd83b5156113c51003a56003ef3706c946602a114b58cb3668fe7c3ce3a
-DIST firefox-63.0.1-gn.xpi 496363 BLAKE2B 0bf8c33567c2a3c59d944316f5b0694572017b73f8ed999a3aa85e37a33ece0ba5d6ea1c1ef176bc13aafd4e3781fc4595c7c5d639411eec8401400dce4bac50 SHA512 7ad0d0d9be31c046dfebc94a3034ac6e6683abcd6e3453671c16cdf89693ba712934427a78ea83a772091da9f4a4d9436029a3978e6650b1b658570776a94046
-DIST firefox-63.0.1-gu-IN.xpi 556301 BLAKE2B 905d0198919fd0379aa99303b8236dda7e05e0a2c9f2a556fc327f9b0fd82ab39ae74a9221267e85030f8ad10e30bc7c82c06e04a52b56db7480781934cff950 SHA512 c2a6701bd8726933bd620661dba06389c8e40bcf454e6635358e97687f98702f7f90f1c160262d7c480cc25953844d353d363dd13c98a6e81df5195d208224a5
-DIST firefox-63.0.1-he.xpi 486236 BLAKE2B 1604f5d423e5c9f23c2952e32718c04859f2e7e77a5db110258ac6d23a9ff853a1b95bb6cbbd0b49d5eec43f720adc6affdac1407f77f0cd71bb1c88fcf7a74f SHA512 6ba8bc9429d06e90c2b470e8f28a4b3b0ac3906a9793177064dee8f05392a365f9c9e69897281f3096606369a2d12cb77b73a6a142ef16264f1bdf54d10e3bc2
-DIST firefox-63.0.1-hi-IN.xpi 545386 BLAKE2B 963232ff419ca23db6e86d1f6bcb4470430a3a1b942a5e91fa84a1b16a02b655c4d9f6b80590a0cabda8c68ab81c3ec386e762b645aa1cbbade4b7d82df4ff6c SHA512 2c169d656ed49258947dad9108edb376903663d12c5b92f5a3dca8d720f71d43999d36b022b4935217ddd27f92495a5efcdc3a204be05d0bc26737935fa3112a
-DIST firefox-63.0.1-hr.xpi 468495 BLAKE2B fcc492378938d19c18ba555a1dc6a6e08b353ee795a97b3749c57fda9e68e0653891bba2e1fbcdf297717a5e9c4d63dde6fef3264eca01bf746f9203af612c7d SHA512 361663adebb5d777be926696db42e5210a155a49dfc1f4f608ada884552551a2ec4c2f74be8fcf43b0ea84f3daf35352b343366d3aa1dcb5ca4c941db369186c
-DIST firefox-63.0.1-hsb.xpi 500686 BLAKE2B 667e79d8e09ab5c8ddd8f6dd9114b7ace81729a60ad459015e65fbccd3654d451946fa1c55c2661dc24ba54cc397ff2b67f95d0d31be5e4a36721644c92aa0bd SHA512 23118d842963b8eb3fd642e28c101642294289375d5d4125a2fc22dfa67b1873da20f84299e694afdb39cf3beff9d78484bfbdd220fb17c295b4f74119d09b97
-DIST firefox-63.0.1-hu.xpi 497766 BLAKE2B 9a429113edd6d3b18f13c95774354450902ca2db9b75967868f541076bdfcee3c66f661f249659727227645ef169e46a40422b6c1cde8336c305b65ebc3bbd0b SHA512 7c2e078626c5f02c577a35d866695700be73cf526260b282e2cd910d77750b065ea895a08ebe8e2620456b26c6ec3df44c39c338719aa351fa7e297e8bdf1e51
-DIST firefox-63.0.1-hy-AM.xpi 525185 BLAKE2B a994037b6e525eb765a2b69d46cab9b769f58ad7972bdae585cfe81c5718be73682f0d9caa27f1ad05ec3605161af56307c06f5f038404ad4ca3b8b54bf62b2c SHA512 0493a0dd30caa270fdfefacbf53d522920df9f8746c8213096ee67bbd5925269b4c169e87126c7a6387a54defb70732b507a523bfda6a0cea4087b4d4961d48a
-DIST firefox-63.0.1-id.xpi 468252 BLAKE2B b3878bf16f192ca371597620257314f970afe969136012448c162541dc2f5194c4a8b75ccdd09164eb4547601bfb6f5574659444f56130860c9e6aed0629880c SHA512 31aed3fd551142c597f9a7c80922756a67b2060573b97fcb003ef06601ce0bf5ad6d7e9e1f3c32418e3f6e2e72134863e35f93701b9f5818a2d813c38d01470c
-DIST firefox-63.0.1-is.xpi 467339 BLAKE2B 043d579bd7a595991af04715f1a78e8834b848eb074e09b5c44d876dc40652ca18589b58e683c70774001fa66127aa37c436f4ea3d466bf062143dd313a23e6b SHA512 449b99d3b9047571335aea37bea095502f9cd9d30ee52d6224afca7d7f62044bdc46504ad78d26781d0027ee9e524dc9b36c567fa69d8c0dd75584e842592968
-DIST firefox-63.0.1-it.xpi 351090 BLAKE2B c6ece08d892d52a85c97a1ad7bd039f70f748c78cde9ab91653535fcbde8196d681e0c5c403adea0de91b3ee50b815da3536cdd3944c54428e46ce1053b85f00 SHA512 6f5f7dd9c34092954af2c31f19270c7321e085874c81e4f8229c84ccf8e0a05500b00cc68191ffc151085f0fee653dc776fc8a4514353995a63ae25a623482e7
-DIST firefox-63.0.1-ja.xpi 501997 BLAKE2B 99922111e49c243cb2a940652e7db5790c2f84f14d4b4c2e0d23ee432a3ce008b72d60d55cb2097f262de40b0d98d360402bd881dc053f4e7be05833478e967f SHA512 d65fb324010c4270a56ebf66f557c51ce91f7fd5449da49d0e991e102118e576553bab3be59d235db8c31552526e55e72ebc1facceeeb23d98dfc2dd6e34b90f
-DIST firefox-63.0.1-ka.xpi 517232 BLAKE2B 3e1d89f0aca3e34d4e81c87b7836feb0af363cbd4aa4693a3a7a03f74d213ee49e39a691d3ddf09e224fd166dd5d7abb4c055071a198b6582cfef17b98e8a190 SHA512 d562c05382611cccabc5af98a67e9c37204d72340961c99091f32b8b54c60e462f3650f84e288c879f97504e41f31b4e539d7c49e21d03bb15ae77ec1c5e66e4
-DIST firefox-63.0.1-kab.xpi 490515 BLAKE2B db5d8b776ce73aba0e69a828c7532ebc225efff562aa515211adf56d0fb2194114460ba5c9b0b811ad44e373ad4ea58478fb5255218f0a26ac196852643d541b SHA512 0f2cb901362bed80f121e013f5c11919dd135b7d178de4c9cb080043de1a5c0dfd4faf945a2524c698f20302c530cd8843cbb80e3794e2cc5a2764418df46464
-DIST firefox-63.0.1-kk.xpi 546396 BLAKE2B 231f72fd73360f91803343f161e6474492d8581a98ffe821737246e136e3b7a1d41d932bcf2a7a342168b5f9664d5fb8460dfdc1ad456ab91a0beb75813e95af SHA512 38e057be2dc4b0c0bf07ed0736b785f829572e393413e8bfa9aed590bcf9d91cd11dfa650cf179e7e4424fe9102bcdd293ee8030f07d275198615e6d9da9ff84
-DIST firefox-63.0.1-km.xpi 530624 BLAKE2B 2305a68e3afc6a123ec3d3e8d81385f591f3d6ef61acf6c54fc029b1ec2ac29f80348e88a06de7000c45814777ebfa5dd1c2e8328037bacf7f24cffd34d9b2c6 SHA512 21336e3147f0fb1fa614bb3aeb9e3be20bf6a6b593c9fc12a76640cf0e6a0fc9a3a76569b783c6d5fa5afd1b0e6a8f82c3266be30a867c004fc20d3f3274e09f
-DIST firefox-63.0.1-kn.xpi 536457 BLAKE2B 1e7ca8f1fbccac5255ce4e7609b571d46784b4263a11cfaa14310c2125cecd532ebf2978b22e852860a0f9d70c109c15ea7a4da8be4fe9dff432a20e54cc59a0 SHA512 81d5b6f3c4ae2721f2448be2d0378e147004ae176c8fd6039fdc2ca4e37786ed3c6339638b4324de87ede7fdb97bcb13b9fd410c7c3a978efdac8b4f3173d4ca
-DIST firefox-63.0.1-ko.xpi 496528 BLAKE2B 9b4b40e48970abfea943159e8e2f5f0bc0d5845a0e4fab7107d0da8234ec9f0330665c5ce72f018b4e6ccf49f3311f9c8fb558987509d3471c6cbc0248447d81 SHA512 7a02a4aae6cc20058bca252e20b5badfdfb893d0197f161fbc27d0fb2455b42f2f3d9b417fc6bed9e1428f2ef896aa57f74ff65c6c38a4c4c057e2020235c3be
-DIST firefox-63.0.1-lij.xpi 478452 BLAKE2B 82db92648ad7137034b7b13a5f8d8f5d3ddd8141976de803a85274b7185dd47d2ee0d57e4b14cecb8adda5ba4a42c7fe70200a944b0a15a5e442460ca2ff724a SHA512 f683d2de57e69e778426bfd0c691976876f0bdc27105dd53f4d7e9c1f835d91f562e79ff6f3a8d038fcb968d37e0060b44ad05628508adba169440ffd8a8ee5f
-DIST firefox-63.0.1-lt.xpi 501124 BLAKE2B 39284a212a4fa9cc8e321939df8a918e5bb1f0ee0801e6cd8ab17dd063512b707bac0580c850cf2c97065d88cc7bdc8678a7b32d69ff2b2f6af0d7f2702a1187 SHA512 5658481db0e9daea82792abec6f3a56f6e966ddbaaaf15e886e790390756e275695011edfbdf4b03d58c2f2f806ae2a5d9dfc098117a2f75901c21295484f1a5
-DIST firefox-63.0.1-lv.xpi 489153 BLAKE2B cf20326020c733e93f039430eb6b5c770ce5513ffe8a2132cd8047a8e99f9babec6e99a7ed8a80288c7a45eb1888f883ada949154d3dd7ca116129c64907fce2 SHA512 38c789fde8ea5ba5c610fb7207f5ec5c01143ae995cac3bafee7cf08ba5239eaab32f05a0d8036f38ca75d12a38519a09ec03a5f7318e67b5e783d846a31403c
-DIST firefox-63.0.1-mai.xpi 498745 BLAKE2B 550c1f1db0359a91df27fd67903ca98fc7326fba4fca6e1bbe65cc88906fddf2e1f82b79841ecab9fe9c51a3587434e590ca04dd126a64a9e18258b737c464e2 SHA512 5b89bc316a09dbe67d4c300bb51be33d8ced300485e23232058143ff52aea40a90e94357dabffc89b67a9ba3b54fcd507836dcc1e1bc3043634dfc8344f4f3b6
-DIST firefox-63.0.1-mk.xpi 463723 BLAKE2B b991fef570e5287553c26948e7b8bba13ecb49feb9adef6c2c7ed4b551309e9b86990df98f3d4f4bb161417f16a1b92da0bedc7eb8bbf86dc368f8ea2a081b34 SHA512 3bca3389def15399a2c8b780d15513fd3d07dae01fbb74d34684d5ae22b1967ab4c84bbecb50dc96758b4c5d3e31fd60201351eb2b8f7531054603bd03baf9f1
-DIST firefox-63.0.1-ml.xpi 546430 BLAKE2B e5452597046cf73bb6f0559a5811c6979af0a69461b651e05bb5be15ebf5793994acf7bee7fa05c38f8d6636b9cd7d74ec0238a2d9f7d3454564346f1e08aa51 SHA512 b315372ae11de36bd8f635097404acdad4c24eef6db6da20283c0c57f1a94e28983fb72f0af2bfa3b8eebacbfd26f601c134f80da9fca70b10d68184b53d41b8
-DIST firefox-63.0.1-mr.xpi 538969 BLAKE2B 89de13bdff090294ea89f763ac9c3f8eb2c8de0cb778a840d19f06fcdeff1008fea7ee2bf444f2458c701b7c5a63110e7e16b4fe23235ef19416280d4e59c327 SHA512 a64bf0dc0585185252684ed8ea3e46e78701b5c04aa99c0f2b899f371e75a8e4a8f9f3e34e7d9ea99c41a29710a4d8232e071cb4eb05ed79a933dd62ff62f262
-DIST firefox-63.0.1-ms.xpi 471523 BLAKE2B 14b83670da9dc08b1bb1682ebe3d0457d94b08a04448342a1895e47fbf62d92989df310a97737a3cf78a62adb08d7b433bfe24a403e5d93b512ae442429839f6 SHA512 05dafcf7c8459b8ba10ef9f7daab32546d5f2aa0773740605e1108ae65e6c64147c0de999897a1327967994a95053493df25ec53e5df145272919813df7c647e
-DIST firefox-63.0.1-nb-NO.xpi 470898 BLAKE2B 22b85698a7b07d2c9edc6d6200678b839cff1b508c5bb04ce621633ba23c849f6c5c817631dad5c8eeee17775ec48b35c3a574f1db25564fcab20b6ade2fcf99 SHA512 5e6ac6e8a86403b33ee71c8fa0c834f931d89d3fbf094218a24cacea97443775d8d3c806782f2fe1ce74f53dcc751063b71db9d08b462a48eb8eec90a1ab7332
-DIST firefox-63.0.1-nl.xpi 460034 BLAKE2B fdc1b06092ed7ce1b7d6a7d4d2964c83fdfdf5081fd8431f84f40cf2e1b524048d8d3af7ad0865e2c74f8f36a9c3d9f7ca64eaf3e64ea4c948cf56dfd2649c85 SHA512 6ad468d96a5dc2d0dce0baecd1eff472b3ca39b5753f04717c72d521220ead50a3466141e72b2cf553c7c5adb7e7f1a37b3a133a4847fc3918b23c19dd6381de
-DIST firefox-63.0.1-nn-NO.xpi 469117 BLAKE2B 42d0f26d777b81f4cc6cd7fdcb6748d7dfd751a1c684f92fbd6cdcbec91b52852608545b5541b5149918f22a655c6de567d20c28b60cabe426b0bfd28f27e3d9 SHA512 efa155ac5507caeff911b45e23d7999254c2359e46c6496e9564ea4dc94de122b0156b99d2497302fdb2db6f7e1077ea7d6776244d67151d15986a76dca7fdf4
-DIST firefox-63.0.1-or.xpi 489356 BLAKE2B f499de59f7600c222df0135b76933c8faa3002e5c5f8ffd34b4f62cde8bd963a3172120c9fb6c54945a5f7e3b0a3907b66288e70c2b624169cd93bc78481c23a SHA512 0da0e6086b797d00db63bfbfc74f072d2a849404ea63e8a0cbd3f96c2c376ace4d49ee60f9248a8b4c614d4ce42584477daa683fd9b52d71f2d941fbe3ef1440
-DIST firefox-63.0.1-pa-IN.xpi 508197 BLAKE2B fb7fad9b0ef4b3090e795ec7ed94a32ba2fb9c463658c0156b3f8d8fec74f29c6948353cd86314f5688370e49eeba92d19d7c8147e2288af82db85cd882c4151 SHA512 f4e60363b0cce8f0a3203037bc550058e770c7da3a441688ee651375cde83d52cba558b4a59eae5124f34097dbb0e90b9d876bf1082e91d73bedc246d4489b41
-DIST firefox-63.0.1-pl.xpi 379298 BLAKE2B 6bdc09e6e4152299f578fa2455e995a2508a7a77ba23be8914f6a242e5609d5d808a47f8c28877872b13bd2599c501cfcf4dde87ba74576bcf8bf0182cb3d02a SHA512 b42bdbdf5e0b0d76eb60adb5984763b1885157709f35ca782975e2b3aaa61bf806da5a32b8be09275a8f34295ff169c6a14fe8efc8648c5c9f2776514ef3358c
-DIST firefox-63.0.1-pt-BR.xpi 471903 BLAKE2B f602c7a70a0354a0b1db80fc545bf281da0414833bb56a6786ef4de3fe0de3e5c0b5e10f99d28e3758552acb33eb4bc145c1da72874c4b1efc73a13d26516e82 SHA512 29b1bf5c11b54c8cfc519fddc0011efdf601520b47cd442c26243c1d9811503186c820bd2ffd027336f3b730934dbe8d296e2f30a9b2a8acf7fbbaf900a1da66
-DIST firefox-63.0.1-pt-PT.xpi 485600 BLAKE2B 07db5f7f63b3712cad34f94071f9faca09f7ef19871c9b91d568457df4dec4da72accb20fd534abe16c93812b7d9054e312a4ea2bb29c2f3d2f56887a310ad86 SHA512 131d6994cbab8fbf34c61198223e03fb7c317289bafe8b7920909fc1a15fc78c0c0116d718458b217eddceb6ba187fa9b33fa1850be35013ddc91a6ec6d39abf
-DIST firefox-63.0.1-rm.xpi 475829 BLAKE2B 3d68b3387e0cb5507ef07a46957c4ad6a4ff691f09b99f10e0bc85910ffb804f3ca0f376b2a7869afbfa46a931b89e5f2a6a39e472aa447524044bdd4924e0d7 SHA512 e2eb65e9c40816e9cda917c2dcb56d8584d6e103a5fb6e137adcf7a59e5470c47e98f225068e8d837b7148451bf3ed10a6bc9236a50a01810f7a695246a88e86
-DIST firefox-63.0.1-ro.xpi 472563 BLAKE2B c884e7ad3c43318ca4535d7af13def84bc9e664b7c63f04d72a831da77b32be329b399b8014e363f0dc5a6fda20891c54419d29c2d90f68d324e5a1206f8c72f SHA512 ce865af107bf4ce6eb3a84e7dc8b7ff237afe4f6ad13470d89cf32cb5db44533a8f951c02d34914314ae119a4527cdeb64d0524e02197d2db5333b1927b68b1c
-DIST firefox-63.0.1-ru.xpi 543427 BLAKE2B 314a7a94343ff8f6dd578321df2d4bdd689d27dcf8102f7b341640688ea8cb8ebe3b8731a65202f854cb24c8a13972dc781ab30baec2513885fbe9f8c363198f SHA512 dbc847c72f0349fe9cd7b1ac5691f88a4311641cba90ef7cfe060eb41af5b57e0e7f37590486cfcfa87af2650d857265bbca2a20d019e7217b963abcbe5ce814
-DIST firefox-63.0.1-si.xpi 492578 BLAKE2B 39b115bacbd07218c7ed3dac48bdf235dbd94b4634f9e71f5ddad6b9bb97e43dace4998769e819816c258c4db1517b092a61210e7de03bffeae52bc8d1c2bf4f SHA512 b6034ed966099b18172eb9090cd0bdc426651d83a7918c95a8f45d697436ccf03215288ae3b702b5f04829d03ad6a8e46ca8ab7749398fdd055b804acbe0741d
-DIST firefox-63.0.1-sk.xpi 500222 BLAKE2B 1f089d42a506139c68d8e68b87371357d5c8ffce4c50ea7b5f1986a952fdfb507620e34d50210f63dfbde8f37432842779b7c4863f69ce75ece6fe49a98b5c4e SHA512 69a9fa7eadbe94e05119ddac29edf8f7e5bec47e4629c5bc42e070e2aec7f99ef23c88e7c3cde17fcd06d490348b604c513bf0e7a52f7e00c9989f443d4af523
-DIST firefox-63.0.1-sl.xpi 481997 BLAKE2B 50859a6d002adea87b94078c9f618cf2836aa5a332f79fa6860368bf9bcc0776e91488f2f8f882780bc556d1cc2762d6b29fdaa56ff70079d110368a2af84d23 SHA512 5d22e48a317f9da14f2e53405bbf2e4c4c2f725b044cec5b837eba8fca528cde239cc0fe18792a269ec4ee607027b9dd7ed9206d8ca0c32b42ae1bf32c100187
-DIST firefox-63.0.1-son.xpi 452805 BLAKE2B d9739c12b6b87a048cfb0a54ccae33c013a792e1cf92393869d0f49ba7aebb5745501aee10d302504bbe8a010428e23cec159109513b1d7fbd338fc47bd4b018 SHA512 2b4b6937137f826eebb42e35d25de63d786c1657ae5562465e8eff9884b700d64da9179b0673e28c63f3a449cdd39584610ff61cca9fd103a23834060c0ab849
-DIST firefox-63.0.1-sq.xpi 492303 BLAKE2B bcca23170c65d9d66da623e29fe88ea51519b23ae71854ec394467493e594bb9cddb887245d7584dc0588d3b3422cbb7224443625af302d7ba7736abcccf6349 SHA512 6495dfade9e360e2113246c2e429f97c60872f1b7b000fb998792699ce341f01d3ae8ec0e3dd8239201c29142f5fb79c075272a106475bc64739583ea7bc2b13
-DIST firefox-63.0.1-sr.xpi 507260 BLAKE2B e2987fbcbdd6bcb000dbd4ce5bcdfebaf910fb28c8aafc8388a908cf70a6000008fb23a178b2dfa37f78cf91f8165d0d22b42262861d51a5b6f01ca9e7f5fcce SHA512 3dd995c5562b3156687ca0fc8deadd5f8ba89e1d3053d9ed4fcb683e72d15656f16f5acda30f160763fb1d916a953d80323f98fb2948c36f0e0284999d516389
-DIST firefox-63.0.1-sv-SE.xpi 481622 BLAKE2B 34d29b4930392d53b2b029fa1ec34337334a8fc1394c6af4d33cdb8340af1b3f71c68aada2d36654d20b4751286068ebeb449bdcbc35da461f1d8bf791b577bd SHA512 c9306ff250fa7252587e81a9d634356fa8b115345d625201966cb249799bacd774b1b9d81f42fb034049a6b04016e2e6c1ae16639a9dae3efaf8767a21ad9730
-DIST firefox-63.0.1-ta.xpi 533413 BLAKE2B 4b4449e3151aa177a9015c2f5c90ac6a1a5f0062463f2ea2e8a8f720a53c8d5370303d2156d0fd320fa1e61b3e145c5aa3affcdda61b9b9266fa3582fd6ce730 SHA512 9c786d4b80d9acbe9d8a2e2c81833b732b56c9c28910c02f4516a8ae51fe9ba4ce5a7e14e3e654867e7ac246f9aae5a8f879ae100cb1836cb3c43960b0dc7773
-DIST firefox-63.0.1-te.xpi 545793 BLAKE2B 04ce45b5345399c45d3a9651aa5c1069bac0e71e1e0ec7e7a994e95f1c907847f127a874b9f91f920972bb484d1d7c2b46b03f23ed85a041a2fdf9c1f5714330 SHA512 b29eeceb703a411782c6abb39ad13ee8fcf10184126010818e2ac391cb42655312d339544890b3799d7480714321d26dace6e788d65edf2a008b4c363905a04b
-DIST firefox-63.0.1-th.xpi 519000 BLAKE2B d6cec8f85b5df48d6bceb8a1fe1793ee68edb0250a16db28587dd4e08a2af022959309114503d48c199b7bbb2590cbe4b06758d7c3c77e171a821b462d801a59 SHA512 ca19c0037a2d1bae950b002123ad704cd318e6e2f106fe0642507a25a41a5fc86d4706ca0d361c572356a03add3c78e5ac1d0374eb96cd7ad8eb7057171d5e3e
-DIST firefox-63.0.1-tr.xpi 491285 BLAKE2B e27542c20de7946f729ba52b1b8030d8ddac96a386ce22f13ea28df41b817dbf7f3503016719c5e10ba7b3940c4e4f76cf99de5f351bd2112e7376b7f008c20c SHA512 0837fb80a87d5c0be1cb77ba753cfc931e464abb0bccf40b9bef0aaf3e9593d500de87482fe3f2d82734e9a4d60ad7472c5f5e8840404a08b1d1cbd31c817359
-DIST firefox-63.0.1-uk.xpi 548372 BLAKE2B bdd9d83e913db12ffcbafef2c5ccf03d2074ccd850af5aa61f46e6e95f9dfb942e9f605cea5664691c883484f56ea5d7bb0c1dbf94350a5db5cce6c2e19fff50 SHA512 fdd8badf4dfc444f3369b6ffd4ab6686380e0388fc41ec4616183ad6adf1d2b203c1365b25be64d3f9f47b8c913536b6313a1ad6fea73eb64e1e13ef338c26a4
-DIST firefox-63.0.1-uz.xpi 469366 BLAKE2B bbdb2da259c434ce055f0b2a97dedd6b0a6f5c48d8e6ea51ded6f488b4c8a1ac243c865cf6feb38b2f007f15bf94de2fa0c1be9970e265b0648cd33410e734e1 SHA512 7faec935a5b7a6f63b555a824881c83b9f8d5f8ec8d21803143f6cba2772641acd6c1dac485b1dfd3e1d8432f33cc15c5878ab57c22b1428d576d7acb234b1c2
-DIST firefox-63.0.1-vi.xpi 489047 BLAKE2B c7b22d97bb12e1b3d51f78c3ff998ac59e1dbe4eaeca34b9fe358ffc58fdf5c0f9757a7680d2fffe1ad7b67835be86009904f609a62c429ed8abb951d5b6e38e SHA512 42c277e99c623751856e6a86c63131b11b4dfe318b4a3870db0f5c9985248eb232a7a922162a513398589c2916c454b3431572445589abe02f7e03bbfb215e3a
-DIST firefox-63.0.1-xh.xpi 466849 BLAKE2B 7296889c11342d5404a18aa050202b14521508b1813da5d398be19999435ed4b771e012ce3bc4df5e2317062d3d1991a9e67155bf38c0dbe1c07ccc2c6e96ea4 SHA512 222a2ba28edbafd2b899011dccf2315f208f6d8729787c782349ba5a13d5d3ddf3ed254339a7eb25a8334a12735368a7f49e939578f191ec15688efab228d989
-DIST firefox-63.0.1-zh-CN.xpi 504058 BLAKE2B f3a2ae6963c4119f6938f97b8f65fff25630b25157e3731fd01a946a066d3caece86ca880c2c2ae8473386c9145be769f67ba7e483018bc47ecabde32f5fda65 SHA512 e7f6ff4f2d86669e0040b3fc0a508b4b1ddecc870be8e8eb2dc182c37adc66218729d635a1fab1c6dc72d4b64c859672a3a5704820db28afe9847b8eca239aa4
-DIST firefox-63.0.1-zh-TW.xpi 507003 BLAKE2B 14fddc256936cf9718ebac818c799004df2ce3ff6a445e3ddbb2f50e4ceec68f7da7707c1fbecb3630c36611898fbfc8c2393db69727b38adb5c2e64fe598057 SHA512 77efebbdcdcde77d87d733dc43edef96517b8e533f542d706ed4241e265acf41aa587f131ff18789c975b18cbfc48a2ef504db1f1a2d94d1ed935853423071e3
-DIST firefox-63.0.1.source.tar.xz 265358784 BLAKE2B 45cfab151eebe9cd0161c258573b7866d519ca8b5e43894e5f4732fc9eb7c167b8696d989683df3c8e09d0e6d76e2804049d67e8e5bf9e60da2d1d538d53d7c5 SHA512 29acad70259d71a924cbaf4c2f01fb034cf8090759b3a2d74a5eabc2823f83b6508434e619d8501d3930702e2bbad373581a70e2ce57aead9af77fc42766fbe2
+DIST firefox-60.4.0esr-ach.xpi 496839 BLAKE2B efd000a8311ec288835c88d5c431a2a1611f500e3e7f6311932df27d626e8820463f4a5c722b430ca94244a97fd776995b343ae86a5a21dbdbd9a08381d6662e SHA512 e0b35f0ecca340b9f67ba9788626a8ebbbb4964a0894fc43e8bb4d02741ad9da8708cc3bf03d5ddbba527abea01990c470e49bd1ded747c186cc180cedb5c9ff
+DIST firefox-60.4.0esr-af.xpi 487313 BLAKE2B 86e93a28a508e8405fe9fd80911b28c9149b2bd7068bf01370d10fc2e024a660a3da12f788197894aa5cb9f63af33d26cedc542f11a2b838c17d0b302a9320a5 SHA512 29303b7fb6865134de906c690c54eedc3de55fca7f33f351bfb9db4aa675f8343e4882288a4a71d2d9b8d143588c85dfca214cb929b5e95674d63e91cec69a5b
+DIST firefox-60.4.0esr-an.xpi 520500 BLAKE2B 83c352499c46207af54b3f13dccbef5267d3bc2dd6f8bb407c0b17cd76e0100cfb70a3da575070c88c931f9d1857c1d7dcf623fa6650d142b14cf52f7629f3d1 SHA512 995c9f11652b6c303869873c6d104fb66ca9d5e2b828bcd6efc2cad807af8b0940ed15ff55c705c5f39749c0bc0b488539dd695ff2e2389632f4277696a6fdf9
+DIST firefox-60.4.0esr-ar.xpi 547812 BLAKE2B 38cf6b0d01778e2a4b19f0d2e357e2e78b6973a68379fd9a5cdb0bb7ec3ba421c9e06e3af0156a87259fd722d1bac2b8fd7af10e7b28e31b0ea20dc158c4dbb5 SHA512 495bc2aa5e3e7799d431bd7f7105a5a3e4c5accce7414c16cbd25aca31e3b1673bbd4fd4f919f33ecd859d784238564b6b9ba9ac1d51aff75e244b673129c607
+DIST firefox-60.4.0esr-as.xpi 530723 BLAKE2B 9f6fa1a12721cfb1b258a9ae672e4cf5e322cbf0793259dc6e812fe1cd0775a99a528b6ca1baa90a40089d989e0c7ba2cbbab6d051bf808a79cc2f8d4de614b6 SHA512 60a7cb7e677f91b8c3a7f47278488e3764f8daf8f97a53e391b56f75c8e1c9a3f6d528333539c9e3801445f9741ff192252e5b1d5079d19e434ced47f6d80091
+DIST firefox-60.4.0esr-ast.xpi 508654 BLAKE2B 040741c6700a9e568cab487c857e29cb97b84c36d600a4b1af22ecdb63dfba31df53d4a4b90f86bfc45bda729f9f8b42e8ea1b3fc37ea95df694e083854112d9 SHA512 f461bcc2ba040cfb8ee06ac70a3d706927457d1a046942255f580ee4aa459766ead83a59b2595e587665e6b2c49604cd96f0c8eb74b47ab062f062d8f03e069a
+DIST firefox-60.4.0esr-az.xpi 524747 BLAKE2B 34afc4d634b3e26d264e1b4cec95865a24f62e8bed6c78d40e62cd741094f670db47ae3dbbab0109a524bc3e5ec5c67dc4ea13aac2e2c95b63bbfe98884ae557 SHA512 563a07381e63fdb6280dd2512dc32b01c3f06b466846112cbc792c9a38ee8ecd188cd0ce772463f27b48affd8e2fc79d414f63af381716b892aed55f953a8fc2
+DIST firefox-60.4.0esr-bg.xpi 573847 BLAKE2B ff76ed3ccb9bdf1ebc9aa88b3fdb4080c13ff00a97f08d2c56a7fe90121ebc565b461101e488e17b26284b121cf9beb332aa41028de9369315689abbed6a4c59 SHA512 9aae03618734f1461ed01dfea15d48d3292dd97c642970d4c59ac21ccc074720d4edec1875fc07dda52168ef71c9431564be3b0d7ac94f9268406282fa143419
+DIST firefox-60.4.0esr-bn-BD.xpi 590424 BLAKE2B ec29ca67cd00e6f23351b0feded8eae20c903ae3942ae01f972a24c8f2d544cc80bdeb6bede7b1888baaae4e90b6816eb2d9a1df3b65663fe728041e4a9708d7 SHA512 6bf706f4a3081bbf715953084d37ba3b6a7c4a7bec02d513a9c3ece2b8a4f1adcc27a5a4a92cef7cd5349f6e762cb805eca62cf8b8fe6a38b429fb6cf8a72e3a
+DIST firefox-60.4.0esr-bn-IN.xpi 570865 BLAKE2B 311edb1f58852b4b8fc26722378182b2e68393390ef96fe5d972aa3576b5c65c70bf6ab81251e19428aa5b36fa844e03755e91bfb754d5eb3bbb1d1a0430ef8b SHA512 d338e02e2ba8302c964e36cc32f50e1f04f395f46051537a51fefce2925e5cfe0e8e56baca240f84fc568508d9f18000f07c4814a9db22eaafbe1583c39ae56f
+DIST firefox-60.4.0esr-br.xpi 512028 BLAKE2B dd85472ef588fafb29f3f86b7ce1867cb51f1bc728bce4e192ffbead6af4949ddb6ef4b59de196a14540ec46ba69d5c83f9ef2c4db97bff3878554893d61c6e8 SHA512 b8f328f6815dbbacbb254e7b1cd91572225c1cb2a489b9d892eaf65d6b41aa151dcd92b42700033ca3228dc88bc59cb5e4ad7bd69267f85338469bbb514f8c76
+DIST firefox-60.4.0esr-bs.xpi 514708 BLAKE2B 0bd0c1d2f7d75c89c4b60818e44b361450019b33974368cfdefcd9007f53cb9a4a847c351d875d188884cf9433c3d14294ee6a7805154a613cf4d21d65ddf365 SHA512 c932455c804e5b066abe20172d4de350cc768ac05b08c578fc8c453a140515665eb36cbdfc14a1e4270019e9b71891c3a3bc5193e856e06a1e88ebfc061cc0b3
+DIST firefox-60.4.0esr-ca.xpi 525255 BLAKE2B 03bb386ca848757e9a2655f9870f0d7e7dada3006335ac35a48228d44804063dea77bf83f859cc910226466224ebec4380a0f1845d40329023e195e8930f0b2b SHA512 3052a9931d2ab9e28abb5309f631d34dbcf9a4091605f05194cd073e842f88aa934e81fd9e9b50e66c02baab534919c67576ee05ea3cbe5870c2e53cca1f4615
+DIST firefox-60.4.0esr-cak.xpi 536300 BLAKE2B c630e1b31c3235e2a3e6c46c789a1b3977f2f126cb24be628b6451d8e471aad159ed658d9dd4f9fb66a75c66fa14ae85ceafe55232fcf87257f8d8124352c48f SHA512 8b3f74e9bb7eabcc8fadd05df145913f226c0f83c3b0969db7a1e0c9f9f9d66141a35cbdb425ac0f5279b07c8bb80c864c43d3e0a817ccbb0d717ea5f34b55f6
+DIST firefox-60.4.0esr-cs.xpi 531794 BLAKE2B 1fec716c766ff8e7d1cb68fa645a40cf9d0ee339a225cd7bde0a68b1740b6010af380446224bac295ce579d231350a941deb40d6fce096d5a2ec049ca4fb3991 SHA512 81b08cc97cb0f29084cf379585e610a40632854735b3faefa0f49b57ec8959084c2cdaeb519de59910538e4ad891830c6bc3de2ffd0bfb1c3838836f1c89fe11
+DIST firefox-60.4.0esr-cy.xpi 516632 BLAKE2B 191cca8592a9cd4df36cd4b43b9bc9b3d72d89a04c7f30cfde460243e72137ca86ec9fb511d4f41942f3dc84b4467b57da72765add62a09ad8bc07209655451c SHA512 16539f6ad1393bbe796c8ebcf13d39907c2c20d6a6f7974207fe22edc91a45292ed8eb614904369984d768dcac133a254ac4ddcf983ae3c2d6e1ca652c6cfbe4
+DIST firefox-60.4.0esr-da.xpi 510750 BLAKE2B 4d501891e24201fc753740577d6c745221c31b70b1b8c9f90d96406d05a7cc4b5d770dd00af9a2b6e9163a366cb2c6a5f504f54d4fb8c193dfe63db753f87f62 SHA512 61fb4bd79022ac2f1aaa3fe8120c61e59d2ae373baeabb9709b2d71bb06e1bf04abc1214919cbeba0a58f9edf33bd34cfe170c8218b330d539f45ac5e1d2f883
+DIST firefox-60.4.0esr-de.xpi 526520 BLAKE2B e34bcf77e440d18429dde23f90a097161948902667dfb9ee8e963d03403f5f5025ffc31311abe33a62bcc91cc275599e34e635fdad5df656e4d7210df075a48c SHA512 ba44befac07a910eec5810f6cb6d3fc29e45013d18d360abed2ae4dbaaa7da8a34520e031d616f51f5f88dc90a8e19ac3f9cc9c8457c8b54f9c95f1a727c0738
+DIST firefox-60.4.0esr-dsb.xpi 539525 BLAKE2B 591ddfc86afc558e8446d9d17ae2f469bb76fbf16120b8aef45a5c5d32df517fb9aeca74c8916a5a7b241a497d29cfe1bafb90fd404e185522d00405c4d2d088 SHA512 c82a21c05f4f10c3e2fe73f04f244f5807f3602443ddcb8051d5304314ef565d553bb207eb02fe3e54f7fb7a8d0daadb00a01fd27e8b5d24b9e60ab734dbae72
+DIST firefox-60.4.0esr-el.xpi 593689 BLAKE2B 0268a5de58f3fc096a7d5b6de5c4d0513549c3b483af54b097f492cca81991fa86a6c1b2d337d34f27f795d09fa2f5d17008e80cd15621b52a2c792a78930783 SHA512 fab30d15874edb4c24bfd2b0f157e5e5c85f2fe1848a076622af736b0cbabcc2be821aa926db3d747320fd4f60089cd87dc614077a0137fefd4d5bd9d55220c2
+DIST firefox-60.4.0esr-en-GB.xpi 491695 BLAKE2B 64cdc295b2af5e6a29014e22264a110f87662b5faaff31958e123aa1862bf1f335f3f74857d202ac3084b3e5ec879373771f7dca9b2fa8fe6115475ff628770c SHA512 31882356e42414b8527d22da7dc0a8e04f778a4827d69d8d078867da52d80dee91715728b4ae32a442c7d830638c9c640b0aa24261ae65b81935451a8f9d1bf2
+DIST firefox-60.4.0esr-en-ZA.xpi 474674 BLAKE2B 7672cb7a2402f1d5cdcd55fe724a0e2d50f2a12c5e6bd965d960b03b93eb3697dd16cb7d8ea63a77c5bb316b1114e1c5281c7f67109900d3a9e7bc9102cdd7dc SHA512 5b4ca31f593840f18f73e2aab2c1ed46a75c3b1bae13778299caabffa3f584e9fcc478d6163998363d288fba2594a7ffa384b6bc765120cc0dd143f3cef1b06c
+DIST firefox-60.4.0esr-eo.xpi 511268 BLAKE2B b8b632fe3f2a249d4ab0c12d647750cb20072c7222d4514bc9092fc3702787673bb4d969326ce8094364d7d0f392bf9c8e39ca6931b9756551cb55b7e904e8fe SHA512 932023b79cfb8536366692720f623306990477ac98c08e2b5ad2bdcde800e347b6a1f77a059aab467af740af5fdb36c5adab91ab1bfc1e78929bfa06ed70fd42
+DIST firefox-60.4.0esr-es-AR.xpi 524653 BLAKE2B d1e70520a5f8e4d07c60a879a568456f437d5e7edb2ccfa595b4e9b7dca4c6f7a173df4da2201fed73dfad2c23841e74c8243cc5ec73f17d9246345612dbc42d SHA512 de118b91937c4a98b62b378da63a7cf317045a741fd47352619cb0006e01db871567b4fff8c90eec144c296281d09ee2fa078fb322b103df4370ffae716a8335
+DIST firefox-60.4.0esr-es-CL.xpi 527320 BLAKE2B 8da6db7b242d5922609b0a88fc078466ff3f971c181331de3fbabd96a352c75f12895dbd9a4a05d498a454263c9f2af7d3b95b8d74f44c2b9edaf437c8a8c461 SHA512 ec2acc6b07c328d9a84ae7fd9f3441b569716ab90df82cce925e0b918db859d765bb09f4495278ca8822ce96d7d419d41f0fd41c97d43a74c7ad3f513c97d49e
+DIST firefox-60.4.0esr-es-ES.xpi 459964 BLAKE2B 9fc6e59c3c69aa511f432e750f5b41e7295c321cb2e004f31f6705a7e8ec1b136a638f6ac2fdade5fda2711ada157819c6121e84a75caa089374c5e2286e0e01 SHA512 0eb39487368106a8176b9325ca0fc5d714c564a72bf71aa6b981c2b610d7f81e4fe8ea7a6bae73be3d175f2fec8c019e7ee003a0b114f1eb7f6313da07605100
+DIST firefox-60.4.0esr-es-MX.xpi 528665 BLAKE2B 281b3c45ab9c1b59b674911f91f9d90215e8486d8bef04d0db728f05879d72b3f5aa8fc67043383fa209e4625e2ca9c633a8d87fc4646dd688bfb6a71cea7818 SHA512 ab21c9c3465be42cc6bdc85c12391b5287560dcbcd926ceab0af1f35632786d4be80118ae8921a8652458bf1cdd22c1ba362c119ca928b52317c197b08a97fe5
+DIST firefox-60.4.0esr-et.xpi 504965 BLAKE2B ad4f127aecc9fcb1992e67042e212e5d9a8634eb2b609f9d806e142a17b6323db60f76e2ee38f33544e769c9fd505c7f4475214e9d6aa7a59788b0a361a356dc SHA512 edf07b4ee8221e9b40c51384dea6b5150b24d5fa2180584f98c3701b624e07a47a49ae3ba0dee975ec0440b6a3f982c2457291a367cde9053e585bfb28d83337
+DIST firefox-60.4.0esr-eu.xpi 511708 BLAKE2B 32e55b5f2629f5115433f9e1daa759f46ec5010ca2be124f3a1469bbb982c385a35fe9976543ee97474fad63c52e94f4dc8bd0843addea691267eadfb40f02e2 SHA512 ad356f4485ab547da0efb7b655d21172d097ad59a66625636a0775669e29ab1ba4d00a8cbb1db828ec69214d0c1a282ccc8b9d7f7968042a097b297e11270262
+DIST firefox-60.4.0esr-fa.xpi 566264 BLAKE2B 00276d64c1952c280ccf879352a5ca186a1bc032a081c2c50b6542bf6b6ce3ffe2b1cd7e38aaa0020c492e1d3d05d6297f731dcb4cc997d9b6d3965cb3969210 SHA512 cd43b1f54a92e58809e02d0f0e8ed7b4e17b39395f838803318e5cc145b08a314b5957dd9f0e4d5c5e6dc980fc167888487a0aa327ae6c2ac62f6a269d241193
+DIST firefox-60.4.0esr-ff.xpi 512205 BLAKE2B 0e8f73a89defb7e95344594fa7fa3521c61c9f9bb9413855b9863ff212930d1c65863600c97aa8e07d698d8bee8516b09947369648bd10d9c12f1bdfbd98ecdd SHA512 353c16f4c502eeed2410f34f68aab4a6f5ea48b805ae9f2d2252ff45e5ab452658525678e09cdfa7513bd3b350d7175b974ad91f1b2f9e8922f353a62c9b7cb3
+DIST firefox-60.4.0esr-fi.xpi 506183 BLAKE2B 1cb45f9de7a35c3b27a49857eeccdc6874d90b4dfdf5a94e0f806f586c6ca077bd5d537c38682b29b28825e1245981dabdcd3253b6827afe0e14fa5b5d352b41 SHA512 3979cde154e38bd0ab225a5d6cd5661c129f8f5c45ad0de2b0bc12ce0576a823e16cf9657e1b63b1ef38586e2cc8e31bf7744f0a9b8ddbd5bfc4524c534156e0
+DIST firefox-60.4.0esr-fr.xpi 536067 BLAKE2B 5fb2e78790c9466a0b8bc8760dd8eb62c0b60bce1ac8c416016c246c820898234b2a5a255fbf23ec9218a08e7b584106ca53aa8a73e3bb43778e90386b692ace SHA512 0a511c94c87717a8e1166687bab4fac9401705ad84e4e44e039166c09e6bfdef85d01fb06d6ce2c777c52d94d8c128070373ac307243a56f929801c354d70c81
+DIST firefox-60.4.0esr-fy-NL.xpi 524530 BLAKE2B 5d75c2106b252ff8f68ab1a2b7b804931d89eafc256ba080cbe214ebcdd3508199a6ade107386c6147fb0a4a82b8c9b851e4d4e6af51a6e87318e5cdc087157a SHA512 eac1e010813eb98e764759068f66695a482e0853d7dde51109c20f13eb3a2bf56fd98c52f91006b28d463bc0125a5137d97453c04af58cd4aeda61f4d2d39604
+DIST firefox-60.4.0esr-ga-IE.xpi 526983 BLAKE2B 8a98748023ec594fd59b2a38df962b8348c988170e0e74f4816c291784eefeec23636c3b943c4e110adfedbab131cc2cc9f55d9ec27acd66f6eaef108ecbe341 SHA512 31ee12f9f15ffba87de29fa0e10314ae8c29c95c6e465e8ca5a76f8819ad8e72aa1ab31ec875eff84e72cd850fce6242be138e5ac907be3834f9badfcb5e0d4f
+DIST firefox-60.4.0esr-gd.xpi 520873 BLAKE2B c8c10f07756f5dc79fd8c9370989ca3255b6c3e857f2b7f935bc4d98405b2261bcebd1fa514120c78e81d5bec1db29b24900fb5d3a65844947dfe060dd1f3be3 SHA512 87d1b3b8af9a39529e7f2291278169fc06ce83d0125a15596344574e1785fc4c4bd10e604a8a6990143478debfdbcec9c96fcfc9f0c0046d8a4ebe41461dd9a0
+DIST firefox-60.4.0esr-gl.xpi 497370 BLAKE2B 0344d4b22327fbac7fe2966ffe885f4e2dfa5d916c8cd06e55aac79e44d10254fa6b3b6e2f60e0657a7b9f9211eec066a88fbf6ef337a7097971c76466b262e6 SHA512 b939732caa2d859aec24423a4396eb4ab5b62deaeb99efb489b87c27992ec88df1e706868615599c4b95819614e33dd305822b747519bce845e0882a11dd2776
+DIST firefox-60.4.0esr-gn.xpi 533216 BLAKE2B baa85319ec730b546142a40d51215f93798f0a29a6e75e9469c7e6eaa88d854fa680b8fb3f7a5bdbe95aa752665bb6ff403a249565f15575452f6310dbcb87c5 SHA512 7c08c6823956ccc29d5bd8986601e14ddfc3392fa3bb1ba9ccaa3fa9afa94ea4739c40ff6cecf797dc9fb0fab18cc4672c7a0d1c884ee392ec3fe8201900384f
+DIST firefox-60.4.0esr-gu-IN.xpi 590266 BLAKE2B f567e5123e622b49d2b97902dfc8b69768548a834ba668ea7929128ff1a34bee7ab634f517ca6c18aec5b214a65ca775f52263fd8e71a17ea5eca23bfbb88671 SHA512 d5075c9ad798e12a232c9b37148020e12b296060f3b3ce9b5e2b118672adfd01af9813bcd74d5843bfc1a8929e1e8b3dd6d7f7f7d040175425893579ed3004bd
+DIST firefox-60.4.0esr-he.xpi 535985 BLAKE2B d008ea0a667730cb3cf8961709fbebc33735b00f697e5e94ed1c59480107e2353d616c523222b50d0e436f6418f99d29d2a0af5588f84ca4b785339d6aee638d SHA512 2ba965e7a8e52330968ee8cd56a0e2010fa736eb215e33debda5a9bc574d7047ee4e499278eb2d0853b361853fc7db68f5fb74c50a04e3d95ead036e7543e5e3
+DIST firefox-60.4.0esr-hi-IN.xpi 590865 BLAKE2B 9b80e00bcc7cf66bd796c2368742283d0cbd5eb69a240d9157930c96547f09cdf94750bd9ff383923ceafd9711070f6f14e0b3ce8b4af884a2b95dbeea7832fe SHA512 1cb3bfd033f951a9cf83fcb9dfb3b45c316adf1da2dfe415a0d81b672ec37da890eac9ae632a41691cd929117ddc43099c489a34d5c97abc112fd56838707683
+DIST firefox-60.4.0esr-hr.xpi 515957 BLAKE2B 83e202adcde09fdb134cfd6ce0f6d0eb512a307acb13683d59d74ba0efde4503a324b749fbcb42deef7e7bc6a86ed8fe2d36f7ebba792fe16e1ba30300f19a52 SHA512 45cf0a22fa2771467fec9808218703c7a94c1e018bd6755259e7c9a016e28bbb763e917520a61282e08d6250069166049715aafaf5c80a0118688b515d974d61
+DIST firefox-60.4.0esr-hsb.xpi 537060 BLAKE2B 7556f1005500bd59bbc21d729bf2c02377aa702e3272a6e61085759c81ce95e8e4d812fb86b40035d0b5f7271e5e7ad8a722c7e2c04a2a5d010a4f7875e840c3 SHA512 649417fa3b62b30dd05abe472d28feb1f9fc4955059692553254a0ef756ad2bb2d6d8ea93bcb08fdfaf85342ce739092c7a5969109f166ac93cba1dff9993e58
+DIST firefox-60.4.0esr-hu.xpi 538411 BLAKE2B 88c85039d97c17a193274fe1b4bfb60ddeada5fcb984dc477e8916f54449721d813be9341906ba775253ef1eadc28c557d3e1e4cffb29e96b32079ea7c40ea6d SHA512 43509b3e0a809079ecd1b8ca390af20f3b99f8a6daeb5e37dbcbdd0f5140fc34dbd31eb36f1c084eaa67c500a36dda009b9a5e0733a1fdd79a8a65236b49146f
+DIST firefox-60.4.0esr-hy-AM.xpi 569416 BLAKE2B 8a6208ad932e977dc83644270ca5d1544b03f330def596b530509c61fac8b5e8e6ee98daf4dba878b3e33b8acaa568ca86d50eb71065a3f263b3f1393d766fed SHA512 6cf01938b297d05df094b035213af91cd0f053e4c85c62f4396aeb0454cc3384c77da5aa861d8b1f3e10c74dd7a86d235912b523769efbfb251ef8e800d3e95a
+DIST firefox-60.4.0esr-id.xpi 502222 BLAKE2B 57b49190cb8c0af254c256acc3592e1d1358369d3adad01e1a5dcc73f1539ac218cab2a5f45f68a9a69a6bf2d5c123887c094b0b5ff88d5590310aeff9a3a9cf SHA512 fac4a6deab5bbc27497105c55e5fd5af85b3b30b6e5755f97d36198252e2d378756854e790d7c76e9f5e356fa9b197b7a0275c86b5a600b0c9c96561e0646f98
+DIST firefox-60.4.0esr-is.xpi 513273 BLAKE2B a0ac90ee41c3f9f1db4bb901c53f60beb690f57be3b219da8b0e109cdaf4f003872d1e3fda3f773d78dea9a5b6aca1754339b9446a934aacf4acc75d3505e12b SHA512 c927ab76307cf99455a57008b5db3b3615b5e59036bb271480ed4d1938e264748c28c302514381a78895dbaabcdad7f7296bb8393d5e2b20926939faf2ed8a36
+DIST firefox-60.4.0esr-it.xpi 399106 BLAKE2B a493d1b0d0bfd11ba53af6ef49f96dcc2936be8f424c677c162313290893eb8ed93900ae0bdfe7504396a9eb2a6506b9fe8cfe0f01ab9f8b5d726fdbfa79b0f2 SHA512 653df78d9d565fb64bbffceb331e06bd89cbe0c0912932606247be41396d71d0fb52613d37746292345929480ae2158aff1273b23906cfbfc2cf8836c44d50bf
+DIST firefox-60.4.0esr-ja.xpi 572011 BLAKE2B c1919c30e87e2afec6cad422b63abce2893a0946189d3d4714de48d5703b6e068bc0906196a54eac701f93390b11442106bb87fb5b1e3b43387a413a521ff787 SHA512 e0086ff5c6b9814466b4bd6457b86d3e4a962ddbf0868bea6513045b77bb1e0e8669a7c222fb938cc38562c72381dc39e4cd419bc85255d581d039bad1c0e394
+DIST firefox-60.4.0esr-ka.xpi 556851 BLAKE2B ee44f31294bd3ebaa1d5d16a376419906734ba8031d67a8885350fbb0fcae2c5a2d4ee319384fa4eb563274e6ff647920d836c44767fdafd8a8068d8012a314d SHA512 f9bc115818905fb4dfd46548e0fd60fa9342daef6432a4af8dec36f6bf27da3f56c7d7411b2fa89822bef8765fa557b72f14eb2852c52e91415d5a0dd61a6de4
+DIST firefox-60.4.0esr-kab.xpi 520400 BLAKE2B fac26f1a488b0d40e4b76ff2c303c5d3b6112d12c792cff02c6ab63ffc10d5eebeddfe6303b0d852e63c0dbfcd619921499bbca0ee7d7f4baaa8ff764f485c25 SHA512 849f7e381fea96cff0a48bff1d50899698545addc4e531c18de8eefdc04e8b6b9ff0dca662a5142b427bdd942a3297e9834cc3184ed218318d3500aa53bd6d52
+DIST firefox-60.4.0esr-kk.xpi 582977 BLAKE2B a25b835b271734be33fe81fc9fdd7b3aa3a703ca6e46c03e688e21625dcf0b579419978e73bd167b50aa3641e7fc7679a3b2e214b11458a9d220f25564bb95e9 SHA512 277ed822601ae455f662bec982ea2303621eda1c9a6f462bc4fb3369674797c030f43e85b37eddb442f3a4459d7b4d18ed0e9888d0047c8b10eb3efca91012c6
+DIST firefox-60.4.0esr-km.xpi 583111 BLAKE2B ae3a7b6de2ecfa0dfe2f2d8cda06f578e46b2781307b00fa1c58c65be94de78b4ac9b8365f4b250a477a1c88fc7bc4996eb6b1c32e3b2b9e3cb29e805904c46d SHA512 81196ceb3c3a3fc2b3fb6bfb7b84819f9d31008fb600d0697d57abcf103e49a02a55acc1441b174ad26e17549085c3ced294abce1249c3f391db6a2254a0985b
+DIST firefox-60.4.0esr-kn.xpi 585871 BLAKE2B e02ef512e4eb70c91381b84f101b615c3663234829105f9db6661a641c6e06d17c1249d89e0fec2653874587a7d93a55ee4587861d902d4de747639a795ad6fb SHA512 34e1388df77479d3db763dbef1516485e3c9239e2184926bfacfd645d8de1a42726a35b178abb05fe76e521cf3229fa18e646820daed7fa12ec92d1c220dcf7a
+DIST firefox-60.4.0esr-ko.xpi 547828 BLAKE2B dc2240b164115c199acb6b759000e4c97229d44799f4f805a32a95e3b8ebd02ca2b8291c49464eae3ca8af9772a5bd3dde64995024850732f0f5941521d253d7 SHA512 c14f4ccf786820674407b7e17668d7f419d5715eb6d37b17a97c353c6ea2c2b9ea1691dbce03a813932e47803b6857df5d2034f42848492d802be4fbbf4803e3
+DIST firefox-60.4.0esr-lij.xpi 513181 BLAKE2B 4c17ca49269f917edab646ba32885d1b337c73a993c8414b8ce4da3ca833c0f0651755a325f49f0ead6fa680ef089726dbc0abeaf81a37b0837fe794d8949b75 SHA512 df4526c2398e85ab001d8c7504593e18bceb2baf5bd780c6b519ccdef61b637ca392922e0a8e058d507dca64a8c8912ae72935ae34b917a0c0d9e952c8fa3645
+DIST firefox-60.4.0esr-lt.xpi 536463 BLAKE2B f98c349c256ce6ecc91be2c83f83c0fa0dcdc09bd7c38cc5626970a1233ab72b4c6eb7e7f6c485d42023f0713f30fde5fde0e1961eb25f83095c3edb334172da SHA512 797b0e334c299507c19753205b36ff5a75a22b925125e9c78258af4801152a7f9a48489a46368992d018caed467e162cdb849203bdf5e508e2cb96bd8ddea98f
+DIST firefox-60.4.0esr-lv.xpi 526417 BLAKE2B 2862b313dfe71e9330f5f480a026b9d04e0fd55c937e221e293d15eb1a6306cfa6e54c97e46b425940d7d565b864a4a63c5c22129e9b1a9f6d9e5936f40b6fe7 SHA512 15f37c732ae113cae72dce69dc8ece12e94c961530f8203b888348bedaed66e8c1ef44e35d804b634b1f99e89106f0371741d0a7dc2295efc50eb90d1352bb6e
+DIST firefox-60.4.0esr-mai.xpi 549248 BLAKE2B d75675b3906dfec471fb8ec5a96ff53736d6d202699eb9e50413db71849142f778507c4e6f3e06cb705225b4cf8e7f4e8159fed86ed6eb25cb97e48054b2b08b SHA512 b8b48ce3810b31b5b56ecbab75e974260e6ab846484f01295ff18bef58918e6807d90428c02512bdca3f0d8775af2c8f82c975cef4eef2893486fd6d942c4f32
+DIST firefox-60.4.0esr-mk.xpi 513808 BLAKE2B 6ec4c8dcfe0abf2766d261b80182621cdfbb25522f64d71607ed4d58e971527c0a2569c1dd3217ec38887a0e99bbcf0222a8c0c4fa9a585d521179c21a48189b SHA512 29a012d833b16a840e2c208e166c98e23719a3794da70772bf698feaaca53cd3469b342a66d58983a2ca919d8b550a2b1bdec5d29e8d672eae2e990cc46b2c85
+DIST firefox-60.4.0esr-ml.xpi 598979 BLAKE2B bc8c89fb670b991c222b5d111b8c45b919bf956f7ed0804b9b0475ce0aea5f1fb55dcc3a21fe7c7d36caba5eb4d876a399a70c4012fa5af34eab1cf48b5decc4 SHA512 8e0b3329c57b12f3255939ebfe3de19380e9550202b5d380d6d6f668d2863c634aa05d2e3a04f8006f03eb186fb5ecaef27a29563d9c981713855e00e0c55cf7
+DIST firefox-60.4.0esr-mr.xpi 579111 BLAKE2B 93cb35568326c6906a9b3aa5c1c9c1c4dd0653169149cbc3b11d6b01476dd82fc9dd32ae86daab80bae69e919631a4deac5477fdd82d5b9629345b0eed33b4b4 SHA512 8d3f56e9e304af121c90636f59ada2c949b5e8d4cdc1afec85783d13e46e07bc29cf2da3d2da2b5f0f0de6aa4c23526009e68f7c78d8613f59432440b58b7a15
+DIST firefox-60.4.0esr-ms.xpi 509556 BLAKE2B 39f601a97eeadda42ed14c4103f80a55c85c80ce0b24afb0cecf3a0dc61d4f1175f18a5c3ba6611e42d04b7498f731fdeddee5ffeafa1900923b01de53bca493 SHA512 e71b822e27c6ebb1e9cf64e7b8f992685fa0c1bed78705f9ade022ea777856564b3b2cb6e6dd95535dd7989878d9f57a2dde33dc3bfca44d9f09c86f1cad4a1f
+DIST firefox-60.4.0esr-nb-NO.xpi 509887 BLAKE2B 0f5fb0baeee66c242e9091ba24411c2e423b422d96f551e8a73500f6ada52a6cb8208d57a7e903d6152c331c5b21c4d4c4529d730220e54a5072ace8d38951b6 SHA512 825d946410b2df952498d82154957866708b48beafd5ae366dcb19b1ea635b52e3d471a156954004957fd547576d9a56d1b50cde82f087f072693e657b48c103
+DIST firefox-60.4.0esr-nl.xpi 517458 BLAKE2B 714684e3e13680fdf4208f0ec723091e5e807155d2e87eb629e970f69fba9c03a5e70d2330d35969d99a824dd33e015ec7c94cc6c7dbe7da741c8cac9f53373f SHA512 970ea7fa5d70bc36d604ed65be69b442d329bed39e0b98adb44a0a3b45f6d2e4d88bc5ddd172ce1f378e7aae4eb1bf96d7dd3ba8437377fcbc2d104a0a2bbf8d
+DIST firefox-60.4.0esr-nn-NO.xpi 511433 BLAKE2B dd5e667a09395b16aea63489ef96d024c7905af3a6356eeb05c94c99d253ea7b74e8e8bb4812f4f6416f0bfcef9f4c903275914255090e770065b0ad8e7ef4c3 SHA512 7b5bf8e9a0a9add6524302d58e685263c0409a53a6f51507109917963ea295b619616716dccb7e41eb4a15f1c37e3b9c7296e2d84f9fe37fd919391d54a3f362
+DIST firefox-60.4.0esr-or.xpi 540864 BLAKE2B 13949e522d6000480a1ef651f286bd309661807cbd7e259ed58e0211477e68e289c3ac8a26e3b20c64c113d37d25e88db4f97cbe381162152a64f5fc8a7a092b SHA512 677a2847da1f052ae961ac33c34f1b8e4d3c942faef1ad6a06ccdbd120941c4eeec0f3dc91cf1b129e1703ee7439fed50a45e11703075e0109ab9801869f3939
+DIST firefox-60.4.0esr-pa-IN.xpi 557874 BLAKE2B ca62d72b03f7e30a58a10daa2f19d762552f9d26caeafebc742e9399ee99fac57510cd8de8ba63ae5a40c349f2629fe939c7fb01d7cfda6095acba0da3bb99b4 SHA512 faa524b1ea41daf5103840acf176700c679c2e37c64601a2e534d41164de7551438f82dde1c5e34a155fbd1dd3c27030c6b825300ef651ea8090a076b6c85248
+DIST firefox-60.4.0esr-pl.xpi 419029 BLAKE2B b2e2edad6a6239581629fb504c2302344f5c8750ec2d4770186f94d009057076a0da9885f0fb97e1db8e02e697a152ee92493df6cec6e1d739e8c7c1e95e7999 SHA512 90c2da639da137fa704a3ee6a00ca62c60fb73188c247a6536bfb71c2c92d70c7504871adbc832de89e9a32dd3c158c741aaf4ea89d9c1766c725274e1554ee8
+DIST firefox-60.4.0esr-pt-BR.xpi 514761 BLAKE2B 37d9af7625ae7755310a1292194c599e3072633f66fc53f94b011cffa8d97354989ed0b0595829e8e6d570ef8dcea21d50459bd99d34877b1bee89a3395377d0 SHA512 17afe51e523aa18932a13320d869d10e2b3eb5d0980db6bf2992d22b9f23ac960d412764824cdec82aa7c1a80ad9be35e378bfbc05da6a2f2687dbeabb8e136d
+DIST firefox-60.4.0esr-pt-PT.xpi 519363 BLAKE2B 8312a69aa79833eb4d9fb454633c525e07b97cc7bfa2cfc5e73165bff511c16dda57a5590a866f7ed9ea9a1298a9b5d05e21720e2890d9f9415ebf14e5400298 SHA512 687f453b2e050ade6858040f8cc2213ace726894052423f31de21dea676962d77eeb27eec8c0d041a528a9f8ca1627d49554316d776ffe0fab49165ed004e23a
+DIST firefox-60.4.0esr-rm.xpi 506044 BLAKE2B a60f896a1ecb66c62534f52f6f87d8c7db7ae7a678ec17b4875fa7273422df3281ade42a1bf8d8de3f14425f3cad48409e13a26e6178065bfa9e6395131f0fd4 SHA512 d66ddb7ee144297b3d121a1b076bc4100283d659dce3846647774f33414179c49700932d082b693ca2bb45eabbf6463fa46f8740e65451b6bc13abfca513b186
+DIST firefox-60.4.0esr-ro.xpi 514056 BLAKE2B 18c8b3570fb4bf70955b664e74bb0e879acb7be2c8a69b56dd690fc13a619352f8c48625abf6cff204d9b4e42750522b4c53377212f790e554c2126c467a00ec SHA512 1209414e03cd09b1c174ff8032b73746f62e16599876cc744903d4e8fa43bb016c5b05cfeb5407835421b7bd9b1c29a5ecf16cbcd780ac28947f17f408f76f86
+DIST firefox-60.4.0esr-ru.xpi 591396 BLAKE2B 79b9031d0dcc276b0470db87a6a76724e24cd7d7f1e9b2c79918e873d5c7fb22eb917f0b3b1ba3f8619a654cec0141aba4dbe39cc73f25d4ecf8eed3a1cca8fb SHA512 c062b7ffcc9018cba893e24557027ab87357cfd39d3ef471af36b7db4c8a12a4f6505546820b87b0f56961cca069d1080b385ac704dd883bf3e1dc0347cf9b23
+DIST firefox-60.4.0esr-si.xpi 545576 BLAKE2B 5ac79590d15e3bcaad9e507cb506a210f3c6c871fc29ae9c9ab17feba31338cfe3bb557e646af7cedbbe2b2e59fab2ce5e6e8d555073949342273f0a8a23cdc9 SHA512 a2255c1be32a45b7071f8d3b20d9afb4d0dd51c1bb792794d388e7e492d5a8f8f0820a1226444866ea1bd9072ba6761f8734473bf1e35c26ba2432eacdeb4efc
+DIST firefox-60.4.0esr-sk.xpi 541703 BLAKE2B 45fdfcb9caca0f07be08f0d8506cbca439b9708be3c55c473226c1c8291009b2468259d2569575a516d2ccc22c67e5ec95c196a9aaac013a53082fe56a544bf4 SHA512 9661d33bf0a5b80331d02fa792e9aa023e8415bd5401867bb0fdc6f671affd63d2b9eaf294f8ce4a8b357fa3d62e4888faeb7fd46620833111f3a2040dde1f7d
+DIST firefox-60.4.0esr-sl.xpi 519373 BLAKE2B cc06b8c5c9458f0d03469a0fc2c5cb6387c20f0e634bdc972fd0e6a235d6fea6736acd760109827567fb0ddd2e735859f9155ac9ab8084ebdd0b8552772075ad SHA512 437e67fe48857fab90977fe6e85813a4f08bd239c0b8c8546a7ba362e0108a0d90b78a614512d0b2226cc8dee86e53a59fcc4968abb5f00edd3e0cd59407a786
+DIST firefox-60.4.0esr-son.xpi 497700 BLAKE2B 8c8d7d4117ef8bab6391316610487fc5938f4c0df781fc13b7e5a13dd1e8be8c4d59608153b2f50138a211c55088520ba00a8a23749b526f5f6adc1a83f77938 SHA512 2d22a33e48aa0550c78d016e5379125eb38735af15cf2efc15d14e4c141691339c39364d2f8f221ac34d3108a6fc767eb37a1e01039c42c00132304577cc8dba
+DIST firefox-60.4.0esr-sq.xpi 521262 BLAKE2B 30513f67da0f2aea93132ab5b6d48ab6a9ceb438ae562598fd0dcce56d8334c5bfd2b224e2e8573c04e8c262218c3057e3b6d5bda42bbb1c64c28f589672541c SHA512 2d1c80c829d74471b37fde4172ad355f351e58af2f545a773a5ca3cb70d7d5a9ca9fd27d00f54b0c288c351b7c38a392a65d7d2e3fa768d828a49ef6b9f1ebd2
+DIST firefox-60.4.0esr-sr.xpi 548773 BLAKE2B 273d163d2a1bec4cc355b060210f1a2859f1a5d61bfc0bf7d9a7e775034830826822ebcf23e1b70ba9ebfa96db8abfd38f00d5cebffaffb8ed5c5c2db56f578b SHA512 a1cf714b27cc05dcb391164ffdd4b7e4302cd27c5fb76376f7602d0ff1934a6daa8f1ffa2c9ea8264615e8647b5d51ea141d21d359221dc9c3a8b28e8ab0db26
+DIST firefox-60.4.0esr-sv-SE.xpi 518658 BLAKE2B 15fd07d9a2911d1385fa2379ebe88e854594eb1b1ab2913e12a57285c7f3931835a337f0220d7cc96cdf3fb852dcd24ab07d09fc01c70e9ce6129eea4cbb54a0 SHA512 5ad210ec0308e841413e2bb942df16d7e09621d6a8e546a547faf5c6d6237416f84511a5034cc67919a207a6d7636c31c8b1f9cf19d0e0b2681067037ed8f749
+DIST firefox-60.4.0esr-ta.xpi 577921 BLAKE2B 776814ec23ea84d8eca7863947bb16e703f7b3ef2f205175f3865dceb68b139179698a8acb4f50b15a19333360b2e02d51f25fe09b5c8f8e7491ffaffcb11590 SHA512 d01e01d655289cd824b619d3f0f50fea8a8340b8cbc69c228f09fc685e7e0a6389682a7a4d944868dd018785add7ac8bd5d6a24450ac24ddfa377ebe34baf2a3
+DIST firefox-60.4.0esr-te.xpi 590964 BLAKE2B 874025f75a09a14393e5febe23640f97571f33de5c2d67705bfa34b10d677e8fb6fc17e50171895af7d9c60c659fc6afcd912a4c6e7696fa16ec5b6ba96ebed6 SHA512 86b714941101e062e693338ffb258093882c76de72df874acd2473dda08a062ac9580dcb7187baf87cfe2be655c9b7f1a2db011251320014b6b46f1f754ec856
+DIST firefox-60.4.0esr-th.xpi 562819 BLAKE2B b8aea94a03262e332070f4f9dbf30c1cec0391d604e81d7070403398339c2da3ad242eddf3d3fafb84d67393c2daca315e73f7f15e57ca79e9046085b232a044 SHA512 7e6a55d868f73cbc8ff5bfdf1e3af3adae465b3214d7c06d547a2812de8a4eaf93a61287f26320b02b3049536c9d9003275901ac036d7703a98897958f351d11
+DIST firefox-60.4.0esr-tr.xpi 525859 BLAKE2B f8a9e98f72bcdee6e0eaa5003e4d8e485ad2df43d1f79dd9d707c619360f6af5ed19efd710b81e7db24daf2e390a212ee453ea4125648cd23e7a563e2af4ea34 SHA512 757bb4aed0bbdf4030f275c9bcaf2a90b4f8f22b6df115151f390729cc2211db0edde772f79dae9071a6b157f3ab799dfdcacd2b937fae384718eeb1404ed182
+DIST firefox-60.4.0esr-uk.xpi 580919 BLAKE2B e3ef81687d32657ba1f31205c9f4655e65c33dae1be5d987f21308910c8d9736f515646199eba498286217c6de5d94d132b286f569b75afe5a7947c001ef37af SHA512 18bab2249a82674150ad2dd538198081d020b572939e0586ce9c3e37e4a44ffb6047cc893a524bf89a7225746a5464f3710f3b22022b86a66f0917907e21385d
+DIST firefox-60.4.0esr-uz.xpi 513686 BLAKE2B a8e04164419e367a63a18fb3ec887660a222455f60c93145ab0d5184412c3a98d5b87415bab3e319eb83459f14b998e706ba26230606f7167baeaf8141b234a3 SHA512 6455197c05dd782c1f3d70c1d4bb747d13cd267c99e9cbddc673fdbd23573b28635aeda117017d5f384dd8e45df3effb35d7a0a99a5a6263362f6bef2ff48bf5
+DIST firefox-60.4.0esr-vi.xpi 528187 BLAKE2B 5ea0608748cea2d8e98a836b635e91af0a9265b34ece65ba94ef51cb99b7ca16a9c138e96842308e884f5e6facd8eb1c0123196a356d8e7065fbbfdfce85d773 SHA512 4ce58e9c8000e35b713d6fe3edd79ddc1b1fa9c571c421e86456df2e649dc971d5fa7e3021ec32b760be38620cf94721edda63145177e9b47c017356914236e3
+DIST firefox-60.4.0esr-xh.xpi 511859 BLAKE2B 20505fb9ed4b87e358556b1f4063dd1aed5c355b0fa92d2cf39c25acfe528352639ccee40b80919cf0b1ac02f17f4ad2c0e485e42f037c1e845f5c61d7eaf5f4 SHA512 b5b20c79434bf3d9f5915a6800d6b56c240cbf82807a70f75899306f2a75e3bf531bc9be5acbd5bb6ddf90a26160fd72e35af23886bf77dfe397d4f90628bef9
+DIST firefox-60.4.0esr-zh-CN.xpi 543585 BLAKE2B 787679f3a78a9556183d2e57ab1a744150a0d1a02caa629fdab46dfa3838cade0a1105ceebc7965810a1becc88956e9683db99bc25fd1d09fac38cb113b33aab SHA512 e2c9662dfac8e2cff3a719149626be02fdb3cf4a713c3d32cdba7df37df4a98fd90eb88a8d16d3a61ca4870c0f049d5343cb6b41470464e9399c6b1153d059e7
+DIST firefox-60.4.0esr-zh-TW.xpi 541910 BLAKE2B 5ec6659b0bb94fa7d52488a0e043b6bf6372100a3652bd509e46f1972fef3680224017fef32f3faefdab7f2c683576eb3aa4c3e7435fc5ec42ad6ce3cc54e461 SHA512 229f070f9eeba9e88b44f1e27bd47cb79fa39f4b9d6a8d50edc8afe9e4dcb8ebfc03acbcceefa9106d5dd726146b680d83578271bbabf19c19800be2800591c5
+DIST firefox-60.4.0esr.source.tar.xz 268425148 BLAKE2B a72b8c49d9be601863e2c9680603979b2a453b69aec7574e91b045971a9b32d2e746c93afdef6f2f99bd1cfdac1ea6f7b5636284b14bec63031efdf9ed5992b2 SHA512 8119f52b2fc06f76868bf0781fec9d46c8551f0a3ca832ac9bdef6aa6d77c1d785e50d35059f0df5e3586f3396b912af06e448d65e7f5d1f468338eebe8b2cd4
+DIST firefox-64.0-ach.xpi 455463 BLAKE2B f9cbba19f002a625bae23a1c4e7157c4090cd41a16872993603aed0610c1b9124aaf7fdd90a3263ccd0e841d0e1624cce517db929d62833c6a0a91e7942ed352 SHA512 5e7ce624293c24e8a8f0e1d323ed1f6d77c8476915c1ab60c2ba74725bfabd011ca7de113a98d118f112af633a7a9db014c3961a7421344db4b97c23d9aa7848
+DIST firefox-64.0-af.xpi 431976 BLAKE2B 366e4fb57e4d9bb48c08d98b290c4338ccd00d1c56b61773c6ef11053df8116fd453c4d4c1ce34175d60c7600ee8acabe2865b4fb70f5543dd6c8014a62bd43b SHA512 17d2015fe636f8ea787d7b536f10767be4e5afb754c883c1b5d68dc65b45a620e1c0d2c81ff4d155a07f8db5c775ad7fca74d88e8759f2cd178d0914ce2a0331
+DIST firefox-64.0-an.xpi 473568 BLAKE2B 512627e73a3b80d0b7de9ed209a4ebb1f5928a1825fb29907e004685cfed298cbda4d528546090e6403b8bd520c4b589ca51fa02cb1f144dc21b9876269f8157 SHA512 7979c4a0eabd79169249b7f3741ef349c98ac56f2223164b5dbe793ff4bbc85e976d06d8fdf74c8abd3bd9c2783f5958ee836167dc9efe65bf3934dabc4b3aae
+DIST firefox-64.0-ar.xpi 513398 BLAKE2B c98a9a16be642b2073c6d129e4ca5f60a425000518dcc6c70e87a03c09756a5039cb5548a150b308813bfb47e2805b750afaf7acce6d7bf4388c940095fbd5d6 SHA512 73ca6ff18d7543aa6cb13bd1169cdc114fafcf4582294da3f4334996ee8c8d6f50719814c948bf72648ad6a9441dbdb5b8776ce8ca407cba151fcbb6ecb6ddb9
+DIST firefox-64.0-as.xpi 478291 BLAKE2B 2747fa496b1a588e6416150b462578005c888d64715aa194909835ecb3693a4c39e9e44169f5635c6b6035323d83505d8ec1300196ff01ec7e1236daad3050c8 SHA512 28bf907404ae1b57267e4b4dc3f578378c7d8c82a6df54cdcb70821e88b93c68340e839bd37c5124b452267e21df09803e84cfddedd3121aae6552e81190ccf9
+DIST firefox-64.0-ast.xpi 461828 BLAKE2B ee1d274fb8a6929e30d51f425ddbf0b8bab3d5f4f1e1b3ea115a602d48e89feb0c72d6396e2c5eb555641a31b023e64504b16f5aefb8df0d795596b3286929a7 SHA512 ee530e92eab42bb9f069771107e7ccc992bcdd015c10069c6be58aedc6f0157112444d1ce14cb8d3755a5ad18168853f479e028a0f1d5fa3d7d740c0ba588779
+DIST firefox-64.0-az.xpi 490034 BLAKE2B b35f9c56fe8c0e26b17c2437bda2e7c4db1cd630b08f6301633a9afc3d71bc0643c9eb872936551e2ae8c072ff881b6892154ccc72586c3cafec59f9e756d1d7 SHA512 0cea81a00a606b517dab55477ba8df01b87d8e0c3a436a7430d11b8f309b811d8e69e77e13041552374d51233c4f8aa1ae78039dfcca8dea9e0e80bbba2712b4
+DIST firefox-64.0-bg.xpi 523739 BLAKE2B b43e8cfc5e89f39d16e977c1b030efa80b5f6db5e27fcaede8ae5ffed52e3046988a4a1e41f6507752f8ae6838fdf9784fcf1c3abbddb7cc1435048dcb4cf045 SHA512 ed21b8e58d36d9be6c6b68e3f3be8adc3baed47ed4121532d788dfe1b629150e25bdda1d9b68e4892b4d74459c4e04fbba33db8a1da39b9b9a77b3e294f91af2
+DIST firefox-64.0-bn-BD.xpi 541873 BLAKE2B e937ed052c171d7488e750d28b2fc91aca3f97701d0b7214904346347fcbeab3457ffbc9de107ee2245cf2d85986ac2852f4237fd23ae0e43db37f4b2f187918 SHA512 060b92ceb42d8d4543b1bda0da519e774a69e6b2a4735b752a07a8268ff2ae72086bd978a05fc36bd811c0ceebe4cd064d1816164f4d2156e3ec8dda16dde4e3
+DIST firefox-64.0-bn-IN.xpi 528978 BLAKE2B 27a1779e0363b94bffa147a7212fd8ac7ac0f2162a321c67272940dbf500f480c1b1cccf70ab8d9fb29a484efe911c166eb1b4773d6020a06b1974ab3b8a332c SHA512 20f645887f4f2568b36355dd5f8d2b6f9b8e1a270d7d80e726e5486dc110c87860efbf5f480b3995a0741d06dbcd652e314a815d0151904b87888c9b0094c14a
+DIST firefox-64.0-br.xpi 479238 BLAKE2B 5cbc092ac7bb58ff0d9233f8b17fc7b4d9276572e4fb461fe42dcf5462deb6c7a2e3e31049e4a87a4db052bb2d9e4241b35aa68b71c87aece331807e57c16c56 SHA512 c8240713bf3a79a8bd6cf11601872e1e0755a2e1d07f9ed235fe26dabb87747179002bac684500626947392d64757c2d4e0134c07971b36c96e8f9985ef3121d
+DIST firefox-64.0-bs.xpi 471750 BLAKE2B 01b4470171b14d7d570bad654be3b80234c8402b66b1445506aa3e7b6c85e15065160a7a1823560b2e2adcd8b425706ba5c273b51fb660c28f5864bdb11d5787 SHA512 371dba41310697c1c3dae1df89a863778430804f3a41c0a6be1f4e238bda952f0889ef108e72d5f29412a3bc35e055f67b17023e226da68ffd7b8d24976ebee3
+DIST firefox-64.0-ca.xpi 469698 BLAKE2B 51917f09b4c3b3707cb102a08e1dd1cdb93fd122683b947c383316b585f413ab120134b314401c9ed59e96396326b207ed30c699876ca0b4c22df1054678e1fb SHA512 be2fd7059f60c77d8dfc838c22d3055590cd2ebd7042f06a67ed3ec65552f45f29cfa805a7d9825d61028080897028b5b5da85c3d9dc05cd396ba102fbf901dc
+DIST firefox-64.0-cak.xpi 506033 BLAKE2B 4720a283d7ddfb06313c49455125de368acdb3b7cac47f25437c250191815036af93700c933be705a05b09632eaecc9a6237ac53c3bff7e12f22fb6a31874036 SHA512 b09463a1f7626a36bf34dd32f1fad900365ed35d794c20cf0539577765fc60a3478dac1071e594392a16d58d3b503f94a2603edb0ec09b06758c3bedb4bb02e0
+DIST firefox-64.0-cs.xpi 494715 BLAKE2B 72b2a39ad5a305500b89f532dd4fa3bdc0fd4df4509052636fa82f0e9e062476cd4823f61db8647a7d20d19fb815d2fa4f44dcb3206b99e080832273e854a3bf SHA512 8f21a1741ad1244cac7dc63992f2d37ee1f07824f758e8353c33d92c965b3fe63efa932ea8a1fb8d506952c015a11059d7fe1ca2987c9f89496bb1a5d9498695
+DIST firefox-64.0-cy.xpi 484374 BLAKE2B dfba4c6edae1d32c6fc93719e1554b631812c229afb5145fb948722848e20f756322bae215e365b3b5080797dff1746b3e552e72ce492a167230c686a0ce12eb SHA512 e96eba4ce9b318b019d29dd281724302a8c7f5533820d90750a4599cf848a852f3dd4fb01ec1cf2085e44707a207a56936048151eef2612e73ee2951bb5b6186
+DIST firefox-64.0-da.xpi 486848 BLAKE2B 15848d17d0c2cb564c344eb655ba7ae846a2cbf2dc2a8bf38fe14c3ae712b472fa3849bddb6c5c32fa9f81bcb370d371f1ddf49b1a3eb1c2ff48674411483cef SHA512 89e989f835017290e964e93e13929b931b1ee7da13c95b7fafb233b3f3856ddcfc4c970e572ae19c9a6965718489cd6dacd0f04b092d1d6637c1735675c732a5
+DIST firefox-64.0-de.xpi 494533 BLAKE2B 32dceb76018daa30ef21b42e76dc03cd85c4a7ac88aa2c28ca6e94cc465835580f1962d1b20e787a3d66958c916104b683415047645a650963f0e79d006e540f SHA512 4044a24fe51d2a60c61239dcd5f610141d466effbe1641d8b5fd59e89fbb4554e2196d96456291529af9ea2c89abeec9909cdd5539f7146eee1ff92a5fcffa3d
+DIST firefox-64.0-dsb.xpi 504229 BLAKE2B ba870b09eb80ec97a73ca7ea084f5dc072ee6959f1bbb60e7d65504333be069ad2d3912e29ca34a2e6d88c3e6de6f8382794e77b695f7dc9d2abe335741973d8 SHA512 63dbe2a12c944d17c66f36b8c2ce45ceef24e733f4c56ce235c6f6f15b1932f2b2654decf59dfb7ff21a3be300f70e68f66e6a50c3163c56013c7baebbe9b605
+DIST firefox-64.0-el.xpi 558813 BLAKE2B 0d64d0d8874d1ebeff25cdd7f23112ab13a06e3ee0a778ef848d8bc833ce9ac094ca8fba544709660b84fcd76965946d9581a032b1ef3734e9e177e1cb6d8a27 SHA512 3b56a20809a26546f880b186e9e7c6034207e42e87ec0b40825f1c78beb2be6496a2fbe21777ff4dd4cd143f2d4ed8f953cebe5afb9028a81dfb18a62718423b
+DIST firefox-64.0-en-GB.xpi 440963 BLAKE2B b5083b174c63778258ac1825a524f3eb47b20a56c4442bef485c8fa5e6801d2cc868fd59d4c3b9668e2fb9624d16b581863f94abd8c9603fd3392f4883a5823f SHA512 293af6a535dd9498c93cf1b2cb7c2fe9e531cc1626e07d64f00f283ec98071650d9c6036e03e8e0fe9aebdc29329fc895ea70fab32892194c78e154649a34acb
+DIST firefox-64.0-en-ZA.xpi 424501 BLAKE2B 5c25e2df786cb4cfe425db34ef6cf50d41bc4bddb38c6f85f3cac2726f4f7f9e0a82193122668933a59e8479d5abb5c670c9bb00ed93cf2bd7074709662c6f42 SHA512 eefcdbffb3955a63c71413b71454709dccf31433dd641933c29101855ee81f50d654daa5eae37ab6fe8151ad57c4db287f6da3be9350eb616b977dac63902e57
+DIST firefox-64.0-eo.xpi 482461 BLAKE2B e7cbece4c14bd8e27d39fe68acfc05c4072e5bccc77a662d90922f904bdb87246cde202d67e4810edd8cf2f55045af544b074b6da27e9a8c2e8a601bba8d1764 SHA512 d1b755453a18218aef2c1dc7ec8001a01887c4b2bfbed2bb179d0afcf0cb67adbc7bc5a79ebc34f17241143c4009079fb34000cab4afd6b8c568b4c197da16bf
+DIST firefox-64.0-es-AR.xpi 490544 BLAKE2B 4129ff6a6e637543848f2a8c3bf29870660539f2ade841d59a80b5bc82d21b35990b818c78e37f5dab4601f46c672c52448deebb47f7c2fa3f5d8b784809e7a3 SHA512 33df4e4356202f4643638f88b81af4d832f17d37d9391725855b67d7fe3bec0eb77ca16d88bc64b1deb82e06331f4e671b6ea8ff0c47342a431e5332ceaa5598
+DIST firefox-64.0-es-CL.xpi 490254 BLAKE2B 8b9ee908ff38c08cfe422a0cc47a69b5eb322175d926d890fc30947916c706a087cc6920ade8ffa3abf589d0aa99efa469255a2aa00282861619a9bc39479b0f SHA512 cb151c98862ca173eec1af76b81e7413340711618dfd8417f19f13bc57d13dd65e161ca53d5ccc2b9f92cf5c9ef57fdc442836bdd248ca6ab0745cec73a869d8
+DIST firefox-64.0-es-ES.xpi 437807 BLAKE2B e5ffd1c5da006a95ec90e72ffdd886293706c495d4f9d596ea1c33161f21e0beecedfdd598dcd9d1680f8593b5e858f4f48b6b57f0c92d7d74ff7244cb8af581 SHA512 9a8886e2cff3d9c1365a0c0697f9a85fcae16aeeba3756197e5b877c13352933f2bb50dd35cc0c14089ecd0681ab5c3f71e27854e9e13c28e964ad6992b8a680
+DIST firefox-64.0-es-MX.xpi 493155 BLAKE2B c70daf59c83479253aaa3f1a851217ad200283c503d66554d7830ac750cf72fea8f9c0f1c0b99000a9a936b083df49aadb70a608736d5c456f903cb40d5928fc SHA512 06593939ddd0bb8efe8ed46646df8eea1e1786ec4a4227e0aa8fc697d075191a15c744dcee220202a3b12e2a698f533190d5d5ed40360654052c85936880fe01
+DIST firefox-64.0-et.xpi 473517 BLAKE2B edfa8adf30886515185fdff769d0379aabffc4017c3b6ea5fe67a48fcc705c9aeaacb9886933990f699b625957b27ccf24dafd01dddafdc4335a913d80ba31a4 SHA512 fd46ce33e89963bdf4598846800aef4a095a64c065078778c28e637f72aa5c3e3887244ecf2cb65c51b4ca593c41023277265629eeaec58a5eb3b6303fcf5998
+DIST firefox-64.0-eu.xpi 477302 BLAKE2B 645e44da345ed52f7d2b9a52863b25a894f13b8cc314abed37422781d0d00bd41882d096869984aee4b11762f009eb41d62a1a7fbefdbec11135af82484fd3de SHA512 491ce788a61b8b9fd4c0fb2c3bdd3d43fec011fb5aee37f26a626eb1fb062e71db68e2435f6708cb2b903f76b90cb0ef4f1a5558076fe2de718a4d10841ff212
+DIST firefox-64.0-fa.xpi 529978 BLAKE2B 60ffd6e3e5c883e2fb4168d17abbbdb46ebe5b46fbda9a94a888af30e83185027f33683d961d74aef6754f3d0fee1ac968794be0688fc51cabf2c1554f5ed8bf SHA512 07706380080c1b87ee0913235f687f5a82fbf3556871f982398dc27295830c87e2c19b2102abe64342649fecf99ca5e136b162c1e9c9da816c4c0b70f731e42c
+DIST firefox-64.0-ff.xpi 470384 BLAKE2B 2bf6faced4e3b3707e83eeb3b5bc1e4c8033dcb82898b212190e51da3434e2c775e1fb5f56915e64c945fef1b15e7e619f7628d339188838a1964d125d978d94 SHA512 5c5ca34db60c8d6aa4ede66531b1a1b9d1e73b8d0bd198e1dfb3175a44ee4fe196fee05524cd29bc5467acd42dc257e8c192828542505da452dea2ff66518f71
+DIST firefox-64.0-fi.xpi 470566 BLAKE2B 9ac746b1195d56c3ed31990ad52665569c3ee621e8a2ea19866081c4a87e27b8080b5c5b92245b6f083461ca2a911b05326bc9160e2acc5f12ecd052d2514b4d SHA512 794407963241b3f7ead82cb54c8548c95184f665934883acc9afe98d77ebbb16d93ba34dae901264a1c2c27b80675d5d1e2bb8552f5d07bd8cfaa6680c93808c
+DIST firefox-64.0-fr.xpi 499969 BLAKE2B ad6b1fe17596e7b3aeaa7221379c5c37051bfec0afbb305b78001d68d6b9a460c8a51b077044c53f85b8c4c3633ede91f9c5ca3b271871fb03569093ea88b159 SHA512 872d6d4a1f497ec052f7be58b124b655bb5f5e0dc370493c0550dfb90aaf980426d35b21091f6aadeb40e4616088ff29d7aed0f37d0636c4bcfa6a1b4508727a
+DIST firefox-64.0-fy-NL.xpi 488309 BLAKE2B 472a5a4c08e3a4a9861d638f7ffb01454ab197bc2563210e53b8b78e8e11f424ca1c6dc8d1667a735aaa8cc2099945f5a643652827d2ce4aa82dbf4cb8e02fe4 SHA512 41adae8d1154182e02274841103bd0da6801d45492ae0989caa3ae785183d120a053fbd7074ec6c373accab3cca2fe8a1aaa11705f3b25e3fd4a74eb0122c93c
+DIST firefox-64.0-ga-IE.xpi 474811 BLAKE2B 817b58e467ad034843e8af7318fab3a70e70d581df6304d2010d496c2d13cf01d8b98c01c791dd8df971a7ad3d1a234f2f33970d09e0af9cd43ba84e99cef120 SHA512 244f985db42474224f8cce37578de6c8f8be0ed1167084afc1eb1f68d6426780646fd7925dc4735acaaf903e0ff81842fda248862bfe2d6c0d7909ad786c450d
+DIST firefox-64.0-gd.xpi 491207 BLAKE2B c9497238a9454afd2c1b93b633c3c9c3745c8c6981490e4c7145aab6eb90b0d7c39ae6d2aed180ba47fdb17b4ad78aa0f977f4b70d04590ed371938a2f3e4b40 SHA512 3dcdc572aa250042b55978c39a4cc22fc12666b76748f57e0e340447bf5f0fa1d39acea1c3175cdd12708093ed70a0199e38df15185debfba1f35b3e8c39ca84
+DIST firefox-64.0-gl.xpi 467033 BLAKE2B 12545707ce31d25662a7dbbf0608fc0bf25ccf0dce0d21115b613750475f0147cee6430600815788fd1f581e11a9aa0e61c7512cd87a97ac859b6aea45b6d3dd SHA512 e3780ba92d786d804322eff9499ae800337caa9a9da6d3f7a6f735432c2cdf83d98ae20960513e1e330371ff62f0532f68c0ed8bb3dcc2c771e081b04250ed1c
+DIST firefox-64.0-gn.xpi 497408 BLAKE2B 3194b98c1edf7e3f9e8f41b8c3f7b50359cf26368e4fc7bca2303c909172bdb6f78c25954fd2a885a0f30453e4ef5065c003605159438dae9dca8b12501d0dfd SHA512 32cc21083ac9e803c4eed4bbc2fbcef93dc1ab0e66155243b141c482068ffe56e621d55176d01f579c44249b969ff8e06289e1935440a8ffeaf4912064ee6cb2
+DIST firefox-64.0-gu-IN.xpi 559365 BLAKE2B fe32fd7610971406d4f7d15ed71d7ff0471eb83f804eba7857fc286918d0a8ab1b6fec3f743a6bae2aeaa47798c7696a373b8ae17eb7ff6112817680c05cab37 SHA512 6ba13cbe3902d488b45c253971974aceb0caddcbb660c9265c428ea0e959834bb53af8c8610cff50ce82a83b572f5d60a8f113050e08e3e280b0beac816f3587
+DIST firefox-64.0-he.xpi 485009 BLAKE2B c092a4dfc36706c2aafd9b574cc6f5b677934d0043ab836bea50a6b03b17bc1218875e821b4b98f1f983cdb34e30f183ea983d5adffcbdfe9a9642de7f18eace SHA512 67248b20ee38d30dcb6d714c72cbd7ad4038fc324721be2d4119204e7726353c4ed1949bb5f528310760d84e987186a20e2c7645d692778ea870811bc7170f4e
+DIST firefox-64.0-hi-IN.xpi 544055 BLAKE2B 2775a05a74341f44ef4b331c14004d599d19d01bb534713317fd1993a7dd02e33db3eb1fd74892438a4ef71c0e40755b45b97330ba399b4bdd5781cbf8101487 SHA512 341766e30d97a47c53b7abfb615eefea6a5e639f4d9e9746730449a2dd65d23919ef448ddf60e2935a5e61577b838c376e58e4788eb68b5e01f427765688a981
+DIST firefox-64.0-hr.xpi 464599 BLAKE2B aa2b19c80d4701fa737660d3b74328a5ecdb2c8d87dcd2b295a41e484de08d2af55db99aafbed2d7a8e1b4eb4bda2a96154ac3577f586ae90e99c89a00e5ed86 SHA512 1843029a4e407d0bb6a0f689ddaca88bfb997c47d03eb0558373c08b95308930b4828e3a273cb173d803fa44f637a2b50af91451012e3cc20880be03a0787fe6
+DIST firefox-64.0-hsb.xpi 503924 BLAKE2B 602fcaf345e32a071949b9f9fb66b19c81e3fce7947dc70cebec727a0feaa0b741787b315837a51654c005a7de71829e59c82e58812b2724962ac2b0eb2947dc SHA512 82972a8a5d5ba6cb129a6c721740bc97eae271518074327938d26f43f5fd2a36de36bc22e8c373ff446f81ff1f3c069c59a45d1553537c8de938b74e4a6b4647
+DIST firefox-64.0-hu.xpi 501529 BLAKE2B b15bdb8fbc8b8cba6a7316247f9ce6c6c197f3eb79b976b45e357b0ba665e21d134c5777bcb9c95f4ee33683551e07f8bf440f30f197ea9e3b4ea5df7c82e9bb SHA512 59870fbb649b62fcd870fa6483204bf62d20657854838c37f101b5b9326a3e92f423355534d5e096a1b0534da0fb91b0493872296a19e21f6b24d7a19920b990
+DIST firefox-64.0-hy-AM.xpi 520935 BLAKE2B c3b6bea5208b73f672a0cbd7f3e7e5692f9bb41f09b1ae1c37bb7292fe0d557d817bbbed689270985e71426af3f6b55180165aaf6f4ce2cbce7bb2060f304f6a SHA512 54378b1d2b5adf2c1244016bd445c37a5f6110d7af728b4e8a07d306519c63242e39d57ea473feddf8a71d92341539493ad1dabfbffa3559344e2744813605fa
+DIST firefox-64.0-id.xpi 471524 BLAKE2B 3f5d7ed32a47f0152a192868bbda2f3f77fcbf42cca0c0fa0f0dadf5f197d57a330d3713ea3421c155bb72754908f6b8ac471529e934de7d1adac2617e87bd41 SHA512 068f6f5af65af2ad9fc3b5d7668795cc3a173496cd7e4d4fa49420ba279cb0dea70ce1b16c07ad66b49152efb539e64731068276711043a4b3809f57e8878bef
+DIST firefox-64.0-is.xpi 469900 BLAKE2B 06fcdb1683ab7d6508b7d01735b597c2796d406fca5ffc5e37cffac637af9353eb7f01f3ebe565cccebcaac34bea1f793f45ba305a017cba4b0380f9e24fe62e SHA512 5159faebe2f2b13c5169d2c678047b32285a97869e4b5b289490369cc267f5c9a9b7788aaed9367693013313e78e6314036772f7b16fb0ed30d85f917182cd03
+DIST firefox-64.0-it.xpi 355574 BLAKE2B 32719687f24c50054ee28163119c04ee0a794886f55f89217b5d325ef0ca6816e65f341c9ad649ec7e3b9b9b21f97ad9d24c8ab202774138551cf7702e93235e SHA512 5291cb75768b66228fd78898d67ed66824e1d9e430e6a34ca33b854262f845f84971306351e320008fb32f3aa911a9661c5411806e584fd9a9b29378d7c388f6
+DIST firefox-64.0-ja.xpi 506350 BLAKE2B 8f042327fdd09e47158d35a703936e900a62ccc2dbb4f3e5eb26ca7b330435fbc5acfb0f60beb5616b9ac86ab62ea013cfafb9e72e70fe3fcf1433101171f37f SHA512 8d318d43a1656a516a001c0c981c06fd4a97273f7c320f522377fa37f9269d7c16abebcf6e25fb605bd0c1e26bb43879d71bbe761f036a5dc8fdbe125f3203b5
+DIST firefox-64.0-ka.xpi 521844 BLAKE2B 3feaa884f1d9a3dec097cb9eea856f37db7d6384d32b12492e4a9d021addbacf0196d54453954a1d2c0c1ccca68f14bc9205034561f3edf4655b7e59b895d273 SHA512 41dce8bb8f6f826bdaeb096f5552cf8bee52421d5da8d5060b6bdef33219f061ec407b8e0787267f8da837e69313f5f2ab86f24851f81f270a5a2bc8395ef1cb
+DIST firefox-64.0-kab.xpi 493579 BLAKE2B 4beb2585bde7ea7a8407292cf266feaab57acce46cda877a004c3174a6b66f201d9c2d542d57b020e78131ecf55e5d4075acbf5f8c2ceb806bb35a55b144ab96 SHA512 6244e07e2bcfbfad091af72504e5e9ea16413d2860f1028d92d6e116e80d398b956f02dd781e434758cb8922a25c614f25db1c29e9f53444901cc40f1ce2bdcb
+DIST firefox-64.0-kk.xpi 550177 BLAKE2B 62377ddf04a5d9b019ad90e4ef1d867315d3ffee88a605fe0b2ceca3581d40bafb50af76ea1e29fe5010d3a67f7b79159c8cc0694fd4ae8771fe3217ac5e3af1 SHA512 c36207d9ffa7d528f41c12b24b6f025b8ba5a91d3337a407c81aadc69d2be8fd14179d731cc6ecfc851f05d170d77280e4b32eca72887f887747adfa4a6b3cbe
+DIST firefox-64.0-km.xpi 535433 BLAKE2B 4e13a503ebf2e41a6347318759a47b699dae1b9f677b30cfaf117755e8a8055ceb24deb32c7c61fa60828d3b7baff35c2af5c24522f5aa9d63ebb48da1e6e3db SHA512 d644d98036e7bf91c231d8e50c90d00600e9e10974e1ec216f5162f50841f55d6b890545515665b564bcdb8e5df8e07657b3155c21d2713b5416081391757e27
+DIST firefox-64.0-kn.xpi 538349 BLAKE2B ac17f0c1c2aeaba2c58e71683d74293f47e58df685f1caf770c9934b858a1c21c46e15ed91e6b4019b4a5686513e8d384647edb807b322be43e534e312df2271 SHA512 3121c4c28a33c52f01e6696f2e381616a7d674a9b811cd90f867cf9d51746f9693dd51bd887940095c441957abd0d0072896d3430b208ca5fd9a14692ee4412b
+DIST firefox-64.0-ko.xpi 500867 BLAKE2B 98c9c4f09c65f9461fc2639c91dcf563bdc91c250cd7a2cd8e04ad7ae6002ffb595630e7d5250c2808b382865d26f2b2637706e42ea29f639df10a1cd261944d SHA512 b284bd046571badc703bb74721d0dc45dad963f12b0715916b39f7fc90df031f7b70794bcb45dccd23ee3d877c3ba3851dfa00729f746842d56d243bf91130e2
+DIST firefox-64.0-lij.xpi 476179 BLAKE2B 3f06f30f108312a006d10ce4be93a373da8eb3d657606594c6db2fa6139cc245f0cb518085cfc12e551612914da6b6e536a30f2c81a0b5d147c6c072e4fab4e3 SHA512 a8e6063038caa2d2de8da971d84f186342572429ed14fd080e6974d9cff6043953cd3ba02992a196e54cacebf2e7c4a4090eb4643b3b1da35dc2337727c11f9c
+DIST firefox-64.0-lt.xpi 504607 BLAKE2B 0c4b3026c1de2859961e66e2a9ed90213c80b88b2139d495005345210f03d4bb1da05c4949ac578fce5f57565c9f7be54462e60837116163f83b59bbb68c7c88 SHA512 84869387c07054010f0d92648cfd292c065b54fd005b37aa4891706f158efa5de10f5997508ff8305339fc75478d2769a5a65869fa6b2c6755b2639fac01aef2
+DIST firefox-64.0-lv.xpi 490763 BLAKE2B e1aca5047cedcf262f51aeed93ba9689843136d1a50351fd0ae6b85d0f2a9dd90427724b3762d173a201e967f26db59861792dc391f0cb9687a45e4c54ff3042 SHA512 ccca4b1412bbeddfec59ce578908e745364b310e12971a6a36a15d2852968127c2dc7808cb84d4f8e082721d8846d1cf37c1e6c98f848021914815f32eaa3dbb
+DIST firefox-64.0-mai.xpi 496190 BLAKE2B a037e69186eb105aaaa829d0f1de616773264923cd3aae863b1dfb04eda04cf94dd73373587de4d7429d8f366d3e02032cc850a6af30712da520f0a7eec9a189 SHA512 fa73ea11981d35dcb05deecfce2a71308bcaa036ff9126b4f75cfe615ad2cd539843cb3823464b41cbf70350e17cd2c0e30e74b3186c7ac4620ed4a4401a8057
+DIST firefox-64.0-mk.xpi 457991 BLAKE2B 7ce4046a0dad5b1d60f62b86de33c198e9efc2791dc00fe185d4dab24779420b321e2eae00be9b79e5ddfe6e21723871d32d7f8377fb99f5b56f6e709e9e2f1b SHA512 d4c74b95dc39718f3a980ab6f0df9b3f3baf04e72174ac6ab5d7d644980844d742f8907dbaf10aa8b6efc7ddc63b1ed138b72e8554a149c175a6dd3e6bf63853
+DIST firefox-64.0-ml.xpi 542325 BLAKE2B 1e4f86f36fceb3ae7092a7f46abc3770ceddd18cdde1bdabd6c6c5d2ad161293cfeba9ebe91e344cb04d25f54d338f92fa3002863c522096ecf613ef947264f9 SHA512 a147d20d7ccfad09c7d69c3bcf1463e28918e572975920b4af687b248ae8bf120bfa7f89320d260d19415841ea0ac6fc172c9a9c7162bf4ff4b2851d60da73ca
+DIST firefox-64.0-mr.xpi 540017 BLAKE2B 4966bba7e786fa12f2318c5697d94eb219c73094976fb93c452cf0eb03225b676e3cbfa3034abf27c4588c27c2f1999232e71e0baa7d47c2039629fab5987b4d SHA512 40aa5a4b3eea5f6a55c4aed9090170ac0dc0fe21357838dbba9ff43a52e91685168e5db93a2d51cc094f18aebc557a84e268cc7cf35886b71ff477ebdfc436c0
+DIST firefox-64.0-ms.xpi 473931 BLAKE2B ab19388c9c94fcbd34c272050bc696f838fcabb974f455cb432017d4fa6490f8e2154175df7249e25d5f0c94c89860e98077e453454e26a92e8b87d007d83756 SHA512 89952e654f72fec1b34373cda6f256eeb41f2d7a55251c26dfb77c1933711cf21e8a1bd5ee505367c6c879d2a89538d9e1a38728e606c0bdff1a71179eb1c8f4
+DIST firefox-64.0-nb-NO.xpi 473416 BLAKE2B e6630d3afc90b2ae2bb917a3e94d5d891ec38cbdfc1e963241fd39a977dd366dac742e64694a8515370a52add594d6f6a7c38c1bbb3ec1a5cafb8747641d0e23 SHA512 b55abe5cadd42e526b6afbaf7b1c6b57ac94bf88bfe65d13de66b3d0d860954a6985441daee323c1c7e5656976bb684d3bc8f1d33917fe322eaa7174ebdc173f
+DIST firefox-64.0-nl.xpi 465178 BLAKE2B cf07dd6f7fcc0bf81f0f62d1986320cfad7e32b3afac8787d7d8355c42d676eb980fa9c873a6968d5c05f83ac87113786738c4ce9bf733b5fd73610a6dce3415 SHA512 11b4e72078de0e2b2a526ce07cc264aa5b0c7a52da38b06cba8f6ca294555d1d8fc08227b90828071115e9ee4a524bb5623c505da5d4487d906359833e2316d8
+DIST firefox-64.0-nn-NO.xpi 472041 BLAKE2B 6c53f486abda7da1b88d912b1d8083d8e14becc9bd46b166f895b7b4c7198697beadbc35d318e1341fda0684f4f2a5390775eaa2f4e2e654d496d59c333eef96 SHA512 497912e32fbd3474b465e1ade4d212b9d5931a763098abc2bd6fe12c1bc1ea637f94a1359dd26c32cb37744804ae33f65146a11169ae22dcdf478d763c2ec9d9
+DIST firefox-64.0-or.xpi 485454 BLAKE2B 7affb8801a940dc857e33651a2ad9635fc3ba3e4e6bb6bce8958d568d5dd14a2a01ffb0e65ecf81a6a276c9236a9040a559058b106e664c461fcb4eb5ec30cea SHA512 141900450af96845b532b7cfc6699b34f32c1c97dbeb556b7555aee64ee3661ed7a38db306d1fc3cf25d077e36fa5e68d6ccb5a10b853e600ffce742eabbae86
+DIST firefox-64.0-pa-IN.xpi 505897 BLAKE2B 6a47923148053443ce00148f75c9ba1ed368d2cb683161053eddaaa87752e6e42496e3a2887ed538643ccbd7a731e2c50852405068c283e8c026a4ed3dcc338e SHA512 c0b5124c2a937b570a19f998b32abfead2a5ab1630db79525efc6772a25699a28bc0697dfa0d8453ee521d0a637c4071f737aeb26f8d849a73a87aabd0d5c489
+DIST firefox-64.0-patches-01.tar.xz 9700 BLAKE2B 8716cbb080c912424dc0ada1559cfe08a839dd48b321830cca954ef7130fab56fa55eb3977bda8ee9742a262050a706698d825be4f033a73b5f561222d33e2a5 SHA512 47272f2082180b0e72ad9c4beca2cb0780e408b7b42e70dd0a868a656a56135123a2a2157f435b6d771c0c6db92933b62c68732b453e28078777eda0210e1b1e
+DIST firefox-64.0-pl.xpi 383257 BLAKE2B 6a200b5c72870f7b65d8606276e80fbb6c7c8f4355674ce7ccff194229c16109066ee415eb9e43fd44bccc62e68176fa4944d992a4f1f90370ffde4798c550b2 SHA512 e8bb7b07b8d66bf21f9d5e7a7f5b2bc15af9dbc909f0e7b11f1c80f76f3bca1df9e526758e3158d99d2f862ed38a3def76913dfa526a8011e64dd096322bedec
+DIST firefox-64.0-pt-BR.xpi 475690 BLAKE2B be037be0ad8a22758a03b03561879c49e61451ebae71192e3728c39c38cf936be9f3b22db6bb1c019dbacf986cff7cfc99917ac46f47723be1a8f1d839f529a8 SHA512 abb3479e90d25ff875e36faa8a4545c5360a2748cb891110c83b1688cc43170a8c86534088d5d1ac64f6eaf608970d72ed20675935b0d3783e5c487936d7e194
+DIST firefox-64.0-pt-PT.xpi 488741 BLAKE2B 659ed63099ec95c6010598b7370a61e272ee6ea60db32b9fe721e3a19e66edaa36a4eb5d9790f47118b8d19972118b9a71383f9fd3c89bc4c9c76401bc715925 SHA512 083a110dfeff4d47bbbf84b90616c226b5c6e97a3a860c51492c051d68a36494c3434bfc33102900605d7e2dd80d20047719326dd1c0ad5004de0aa9afd08845
+DIST firefox-64.0-rm.xpi 478596 BLAKE2B 2431ed20b1986afee58b04860668450337f341c4da53e683198e8c815e6ec382690ab4cfba0bce9d3f22266b4f0773ff73f09caa20e91e359a9ced805958e177 SHA512 20ecc6c845516dbfc35a8b4b4b94e114cd2a521c788ce898ebbd05b6e73df6c906d4df12973636287da151f0086375274d542c79f2853f43cff1e34af1e16ace
+DIST firefox-64.0-ro.xpi 479967 BLAKE2B 6656d85346ff6b2d5d73e0da42f41e6d9faeee731f0340f2cc494c98656ef9eda80a355d164fb003de87dab8457e984087b3261121083255bea64d6dbd19ef8f SHA512 50af00414942bde7992ee670921c88dcbdae1c65109c2bec155c974e77838ce36f921f701a480a8d637d78164877fdd32abc9926371455e92cddf49376a4f18c
+DIST firefox-64.0-ru.xpi 546345 BLAKE2B 88491e9fc168d63984f671da266afef0b2bfd4aab4c15966f4bb022d48e9921f8e96fb74be8de47ab9ae9afd5be002f78cfb845d0517211744dc3df02b1cfe91 SHA512 2b34d767241d44090de2588c924342a92b3edd7d5de328a29a4c5b7f3f8961ccc7d445f332d90694a99466798b6e17d7d8cce8456a06d2d9f61d441abc2ba09c
+DIST firefox-64.0-si.xpi 489556 BLAKE2B a9add778ab65a0866f7cf27a0bcb753683ef98f148cedbd69f6b0d41163c999fb35bb822920384692c1df34e4cc20026ca89dad5086388b112c4122337e04174 SHA512 7968ed8044415bc16bf173a933865c279672b3ae9ee6187f528e0494cca42ab1e3e175398b48ae852fd19807464d88fcd9d9515c0f56fef31b0ba31528e3812d
+DIST firefox-64.0-sk.xpi 504064 BLAKE2B 432efa9815718c532f7a088bda7a25cbc1d48ef379b2973c21cc8b0878497d3975aa1a2c4302874c751075d9b29266757d9edce8ecc8a783219c9b53df029a41 SHA512 b5857383f7b89994e86faaa07d1b790a9c6bf3aeb2b3359b83e91c65e37ac15ff58b905ce2479aa017277a3c14a9d7e73a909e33806697a9ff1f7042726f9acc
+DIST firefox-64.0-sl.xpi 484982 BLAKE2B c3d2065c949cb3e8651272c06620a70ec7bbb3d52752496bcd0a00a30b4060bd9f453ccb42d4416db5f196ad68be028d2ab038a352da240549793b6f1530d9af SHA512 28a089e2724fee8cdab67e369d78b1c2b84c35364242bb1111d2953dc4644f607176ea9d299df1d4aef0ee37c0915273c9af5c8bb3623f20ba074c877aa91eee
+DIST firefox-64.0-son.xpi 448995 BLAKE2B 38a24c3e0596a7d0abbfcb918388cee31399af8262a9dab2cb1f177e758ac48c5540847126b8cb08c54e4826329ce98013e5cbd7d325c5e9e704838a60d3bbd7 SHA512 9ab418a29c8aaa6252f7f9bb46d80f5c4ed292d04d9431b2007c57a462c85a1a7bb07c88b33351b868e227183fdaa8f455997296beb31e5d212a25e85cea8214
+DIST firefox-64.0-sq.xpi 492688 BLAKE2B e8e91dabb90998bb7b8e330083b1dfaf0cbc258a355460df115a43c6cc03d8d2af717d54f689a9c2f42c174515911b0c16b0753b4374dfddab4cef1503a50407 SHA512 486f370df3f3aec8ce1b4a9fc8a0067a44f19dbb698833b13f3586fa39004f411cb7acdf7b728a7b4fad1a6e098eac1e9a57ae31c919b88399169e820122b3f0
+DIST firefox-64.0-sr.xpi 506359 BLAKE2B 47839390375ec396647c38c54e1daee25f9452f7c7b921f11d7ac21ba50d9196feef952c6fd500347fffff09856b7d466912b0a67d928f31a3dc2aca26986199 SHA512 7da8b77210ccff9cb6ccddaba607239613f41c3e1f53b189cf9660d0f69b3168b9269fad2e2015ee7ac9514583011f8db073dcfba459fee550be8a29d2c89201
+DIST firefox-64.0-sv-SE.xpi 484134 BLAKE2B 8715eda45da08ce8df5694e1f3e7c034f68b7cc1910577d4a9253ccc919d8e30853877961ca81157d89bcee5b80882b5b348d729dbd5e1ebe02600a37c92ac24 SHA512 46239fe5bd38090c8410827b63a03de90b782cf49e937bac786ed3b92ca15744f97835eeb1e27a3963137553a1f63cbf885a6ce5a8d1da318eb832b0efee64fb
+DIST firefox-64.0-ta.xpi 530867 BLAKE2B 0d6cb98dffbfd06ac4cc5147834591723290fd8cf1fb8a0511fe20f4472a2dc6d9ef10a99c7abdf3449fb419dd731b94e0dbdf2c19061000b3e729c442b73b9f SHA512 ddae42648a7d9c1e5dfcd81c78f9da95827fc38c60ad74caa944da01a6d7467374a70777a47c0955cf9545a5330b6ec0a22fa6e6749a1d9093a681b0a3c62020
+DIST firefox-64.0-te.xpi 547595 BLAKE2B ee893de084038b2cb20177f358b5734fd97f1f7168a79fd259c97216924906aff2a8b07f356b948e5b047ba1eadd542258cc18f1f775d966e6bdbdd21e17d321 SHA512 3c62f23f537738399e87f6d4989bf92772f923efac91d2080e6e0264a190e66b094c396f638dd8535c5fcf25f1f5e4760985f4b84557abf127170249f844d213
+DIST firefox-64.0-th.xpi 508198 BLAKE2B dcc6d91eb459618af36e6ee3470f1972886076e440cfd0225c4f85d2bf68f7a079274ae9a2f2313b952983f1feae84739eafe031229ac5cf82e5e4a1c46cb82c SHA512 d7b090581cc28584844363a366d3fd0189028e174473030d7d55d831797c4ceeef11c5b51f66fcfab08111f069026718308858e94521714421c7526dfe33f1ce
+DIST firefox-64.0-tr.xpi 494709 BLAKE2B b5d36138b6e374d337580e809d12f702b5612888412772326dfde066b83b265b54abb32ae86ac7e7389b0432e06785571e7d01a182e16e04b84003bf4884375e SHA512 c925ce80c72b82820999c1969099ea06d5aa7b8b67fe6d96b395e79332e46689c149f8cc29f706f5dd526141b1e390ccddf656ef345a4593119558091473c29c
+DIST firefox-64.0-uk.xpi 520997 BLAKE2B fa069fbe58cd0ea1efd4389081bc22d3d111bfdcaafdfd2c1465388ab81ccb89a90391e87ca157f2d4c79317616c8c35c8fdc2fac29a6ee3213428594b63647a SHA512 4eb3fcbbe10040344ba4e127943c346420c52bbdcb1352a8809cabc2c8beac23ff872bec9e869dc55b7900f81fb5f83fc6a442e34b0f7c0b2ce4daae7adab745
+DIST firefox-64.0-uz.xpi 466671 BLAKE2B 344f623cc178581f8d51361c1c3ee184f250fd19493f4679838672d49e77ea6042247e25101213995dd9670e8c82bd23b4597076be5c36b303064bc0ebbfae78 SHA512 9830a61190501d435d50981d834f56cea99bb881787c44d1540b603ba70f00fdd75080194c8f996fa4158a190b35b2169f5fb4c2acba0d1d5c6b82c19e03a160
+DIST firefox-64.0-vi.xpi 488332 BLAKE2B 5eb675b124f8bc64bba5817c9c5c02155ebcf203a07335b3b522928e8bb7a49bf78b2e8c57a573337d249bbc105b6db843302291fd7f2057cdc6a41c3d1d9d36 SHA512 47417565cdf0310fbe861304e513d7b089c7a79ef1b1b78859353175119872114cf1584c23d4135991ddafda73b65164547360c41fa322a65a58064374fe5b82
+DIST firefox-64.0-xh.xpi 463285 BLAKE2B abe118f87e563d24e9e519d7888eae866779f03d31c604a1477ff2b6e45435ab4f2d201f508a0a2d0657583d78bde95f9c9921c43e82b9865ea201a9a224920b SHA512 cdf658a129a95a9df75ec83551fbc2fc6fa1dff9d12764f87681c4a0712dc7bc7e33bd2ca507a61bd2734705752d5528ac48ef0d7f2a6120fb45ba70b2143ce4
+DIST firefox-64.0-zh-CN.xpi 507516 BLAKE2B 3e667830b842e726b5b738e6f8fa4b8870ef4d7a903d872d662111c8cbe0a3fea7248699330858e6d2910ca2f90607788fe5d37492abfa9a3abfa3b8d3cbc6be SHA512 d61781454df7d57a621a86656c4d183a84c0f95c29fa4702a5acf4546a1e8a49bdf7a666c39f1d1b235e0df38fe3533d3ef6abf7e1bfe9a6034b2b28f08dc40d
+DIST firefox-64.0-zh-TW.xpi 510618 BLAKE2B 937c12fbd9ea18e7cb39e60cc57ff66a70398e71de5cce6804df1f8c6db23039f28e5b88e28f0d478fa22f752c0680381f50245d2710016d964750e7730040fc SHA512 7fc9bf0dfd31e52b8f685ed8e4dd37f10ccbf49456fb7c834cf15fc5b4e5301bd34567af3db27e55a16ec3efdbd0fe208426701e11adc8d3d54db29ad88a719e
+DIST firefox-64.0.source.tar.xz 271865888 BLAKE2B 70ab6cc51f80993dd2229fe4924d82a3cb83c8bb0e7f2c6a0930da3a4e1285198a774f48c55afb4095a37276c3af3c2de9c8a8cec17bf80162f865f114b14696 SHA512 1aaabcaf133f76edd1a92037a1a8ca4c6dad2efadc6cd97724d4bf4a5a6af63b662a68f9f8bfc41cf6482b44fbf4bf8943a0e82fd08cf9e2aa219b6a97fff541

diff --git a/www-client/firefox/files/firefox-63.0.1-support-latest-cbindgen.patch b/www-client/firefox/files/firefox-63.0.1-support-latest-cbindgen.patch
deleted file mode 100644
index 7b75e21..0000000
--- a/www-client/firefox/files/firefox-63.0.1-support-latest-cbindgen.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://bugzilla.mozilla.org/show_bug.cgi?id=1503401
-
-commit b85791110fe6
-Author: Emilio Cobos Álvarez <emilio@crisal.io>
-Date:   Tue Oct 30 22:21:52 2018 +0100
-
-    Keep mozilla-release building with newer cbindgen versions.
----
- servo/components/style/cbindgen.toml | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git servo/components/style/cbindgen.toml servo/components/style/cbindgen.toml
-index 46162e43db5e..49872e88b7d9 100644
---- a/servo/components/style/cbindgen.toml
-+++ b/servo/components/style/cbindgen.toml
-@@ -28,6 +28,12 @@ include = [
-   "StyleDisplay",
-   "StyleDisplayMode",
-   "StyleFillRule",
--  "StylePathCommand"
-+  "StylePathCommand",
-+
-+  "Appearance",
-+  "Display",
-+  "DisplayMode",
-+  "FillRule",
-+  "PathCommand"
- ]
- item_types = ["enums", "structs", "typedefs"]

diff --git a/www-client/firefox/firefox-60.3.0.ebuild b/www-client/firefox/firefox-60.4.0.ebuild
similarity index 98%
rename from www-client/firefox/firefox-60.3.0.ebuild
rename to www-client/firefox/firefox-60.4.0.ebuild
index 2f97543..bf07035 100644
--- a/www-client/firefox/firefox-60.3.0.ebuild
+++ b/www-client/firefox/firefox-60.4.0.ebuild
@@ -339,6 +339,10 @@ PROFILE_EOF
 		name="Mozilla Firefox"
 	fi
 
+	# Disable built-in auto-update because we update firefox through package manager
+	insinto ${MOZILLA_FIVE_HOME}/distribution/
+	newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
 	# Install icons and .desktop for menu entry
 	for size in ${sizes}; do
 		insinto "/usr/share/icons/hicolor/${size}x${size}/apps"

diff --git a/www-client/firefox/firefox-63.0.1.ebuild b/www-client/firefox/firefox-64.0.ebuild
similarity index 97%
rename from www-client/firefox/firefox-63.0.1.ebuild
rename to www-client/firefox/firefox-64.0.ebuild
index 5f0eeff..3651f50 100644
--- a/www-client/firefox/firefox-63.0.1.ebuild
+++ b/www-client/firefox/firefox-64.0.ebuild
@@ -27,7 +27,7 @@ if [[ ${MOZ_ESR} == 1 ]]; then
 fi
 
 # Patch version
-PATCH="${PN}-63.0-patches-01"
+PATCH="${PN}-64.0-patches-01"
 MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
 
 inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils llvm \
@@ -46,15 +46,15 @@ IUSE="bindist clang dbus debug eme-free geckodriver +gmp-autoupdate hardened hwa
 	system-libvpx test wifi"
 RESTRICT="!bindist? ( bindist )"
 
-PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCH}.tar.xz )
+PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c,whissi}/mozilla/patchsets/${PATCH}.tar.xz )
 SRC_URI="${SRC_URI}
 	${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz
 	${PATCH_URIS[@]}"
 
 CDEPEND="
-	>=dev-libs/nss-3.39
+	>=dev-libs/nss-3.40.1
 	>=dev-libs/nspr-4.19
-	>=app-text/hunspell-1.5.4:=
+	>=app-text/hunspell-1.5.4:*
 	dev-libs/atk
 	dev-libs/expat
 	>=x11-libs/cairo-1.10[X]
@@ -62,7 +62,7 @@ CDEPEND="
 	>=x11-libs/gtk+-3.4.0:3
 	x11-libs/gdk-pixbuf
 	>=x11-libs/pango-1.22.0
-	>=media-libs/libpng-1.6.34:0=[apng]
+	>=media-libs/libpng-1.6.35:0=[apng]
 	>=media-libs/mesa-10.2:*
 	media-libs/fontconfig
 	>=media-libs/freetype-2.4.10
@@ -86,7 +86,7 @@ CDEPEND="
 	system-icu? ( >=dev-libs/icu-60.2:= )
 	system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
 	system-libevent? ( >=dev-libs/libevent-2.0:0= )
-	system-sqlite? ( >=dev-db/sqlite-3.24.0:3[secure-delete,debug=] )
+	system-sqlite? ( >=dev-db/sqlite-3.25.1:3[secure-delete,debug=] )
 	system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] )
 	system-harfbuzz? ( >=media-libs/harfbuzz-1.4.2:0= >=media-gfx/graphite2-1.3.9-r1 )
 	wifi? ( kernel_linux? ( >=sys-apps/dbus-0.60
@@ -104,7 +104,7 @@ RDEPEND="${CDEPEND}
 DEPEND="${CDEPEND}
 	app-arch/zip
 	app-arch/unzip
-	dev-util/cbindgen
+	>=dev-util/cbindgen-0.6.4
 	>=net-libs/nodejs-8.11.0
 	>=sys-devel/binutils-2.30
 	sys-apps/findutils
@@ -180,8 +180,6 @@ src_unpack() {
 src_prepare() {
 	eapply "${WORKDIR}/firefox"
 
-	eapply "${FILESDIR}"/${P}-support-latest-cbindgen.patch
-
 	# Allow user to apply any additional patches without modifing ebuild
 	eapply_user
 
@@ -364,8 +362,6 @@ src_configure() {
 	fi
 
 	mozconfig_use_enable !bindist official-branding
-	# Enable position independent executables
-	mozconfig_annotate 'enabled by Gentoo' --enable-pie
 
 	mozconfig_use_enable debug
 	mozconfig_use_enable debug tests
@@ -466,7 +462,7 @@ src_configure() {
 }
 
 src_compile() {
-	MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
+	MOZ_MAKE_FLAGS="${MAKEOPTS} -O" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
 	./mach build --verbose || die
 }
 
@@ -563,6 +559,10 @@ PROFILE_EOF
 		name="Mozilla Firefox"
 	fi
 
+	# Disable built-in auto-update because we update firefox through package manager
+	insinto ${MOZILLA_FIVE_HOME}/distribution/
+	newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
 	# Install icons and .desktop for menu entry
 	for size in ${sizes}; do
 		insinto "/usr/share/icons/hicolor/${size}x${size}/apps"


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2019-10-06 15:26 Thomas Deutschmann
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Deutschmann @ 2019-10-06 15:26 UTC (permalink / raw
  To: gentoo-commits

commit:     48cba63ca63a4ea27818ad7aa13b4d18b49047f7
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Oct  6 15:26:37 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Oct  6 15:26:37 2019 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=48cba63c

www-client/firefox: disable DoH by default

While encrypting DNS might be a good thing, sending all DNS traffic
to Cloudflare by default is not a good idea. Applications should respect
OS configured settings.

The DoH settings still can be overriden if needed.

Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 .../files/{gentoo-default-prefs.js-2 => gentoo-default-prefs.js-3}      | 1 +
 www-client/firefox/firefox-70.0_beta12.ebuild                           | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/www-client/firefox/files/gentoo-default-prefs.js-2 b/www-client/firefox/files/gentoo-default-prefs.js-3
similarity index 94%
rename from www-client/firefox/files/gentoo-default-prefs.js-2
rename to www-client/firefox/files/gentoo-default-prefs.js-3
index ffd0d7d..d2a4dc8 100644
--- a/www-client/firefox/files/gentoo-default-prefs.js-2
+++ b/www-client/firefox/files/gentoo-default-prefs.js-3
@@ -15,3 +15,4 @@ pref("general.useragent.locale",           "chrome://global/locale/intl.properti
 pref("intl.locale.requested",              "");
 pref("extensions.autoDisableScopes",       0);
 pref("layout.css.dpi",                     0);
+pref("network.trr.mode",                   5);

diff --git a/www-client/firefox/firefox-70.0_beta12.ebuild b/www-client/firefox/firefox-70.0_beta12.ebuild
index e159223..c0ea91c 100644
--- a/www-client/firefox/firefox-70.0_beta12.ebuild
+++ b/www-client/firefox/firefox-70.0_beta12.ebuild
@@ -605,7 +605,7 @@ src_install() {
 	pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
 
 	# Add our default prefs for firefox
-	cp "${FILESDIR}"/gentoo-default-prefs.js-2 \
+	cp "${FILESDIR}"/gentoo-default-prefs.js-3 \
 		"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
 		|| die
 


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/
@ 2020-02-16  3:08 Jory Pratt
  0 siblings, 0 replies; 30+ messages in thread
From: Jory Pratt @ 2020-02-16  3:08 UTC (permalink / raw
  To: gentoo-commits

commit:     6c3a5ad5c8ab9377eaefb286aa45d6b19cb20501
Author:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 16 03:05:42 2020 +0000
Commit:     Jory Pratt <anarchy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 16 03:08:22 2020 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=6c3a5ad5

www-client/firefox: Fix llvm9 build failure

Closes: https://bugs.gentoo.org/704924
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org>

 www-client/firefox/files/firefox-73.0_fix_llvm9.patch | 19 +++++++++++++++++++
 www-client/firefox/firefox-73.0.ebuild                |  1 +
 2 files changed, 20 insertions(+)

diff --git a/www-client/firefox/files/firefox-73.0_fix_llvm9.patch b/www-client/firefox/files/firefox-73.0_fix_llvm9.patch
new file mode 100644
index 0000000..e12417e
--- /dev/null
+++ b/www-client/firefox/files/firefox-73.0_fix_llvm9.patch
@@ -0,0 +1,19 @@
+diff --git a/config/gcc-stl-wrapper.template.h b/config/gcc-stl-wrapper.template.h
+--- a/config/gcc-stl-wrapper.template.h
++++ b/config/gcc-stl-wrapper.template.h
+@@ -32,6 +32,14 @@
+ #  define moz_dont_include_mozalloc_for_cstdlib
+ #endif
+ 
++#ifndef moz_dont_include_mozalloc_for_type_traits
++#  define moz_dont_include_mozalloc_for_type_traits
++#endif
++
++#ifndef moz_dont_include_mozalloc_for_limits
++#  define moz_dont_include_mozalloc_for_limits
++#endif
++
+ // Include mozalloc after the STL header and all other headers it includes
+ // have been preprocessed.
+ #if !defined(MOZ_INCLUDE_MOZALLOC_H) && \
+

diff --git a/www-client/firefox/firefox-73.0.ebuild b/www-client/firefox/firefox-73.0.ebuild
index c4fb0b2..6e104cb 100644
--- a/www-client/firefox/firefox-73.0.ebuild
+++ b/www-client/firefox/firefox-73.0.ebuild
@@ -258,6 +258,7 @@ src_prepare() {
 	eapply "${WORKDIR}/firefox"
 
 	eapply "${FILESDIR}/${PN}-73.0_fix_lto_pgo_builds.patch"
+	eapply "${FILESDIR}/${PN}-73.0_fix_llvm9.patch"
 
 	# Allow user to apply any additional patches without modifing ebuild
 	eapply_user


^ permalink raw reply related	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2020-02-16  3:08 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-31 13:10 [gentoo-commits] proj/mozilla:master commit in: www-client/firefox/, www-client/firefox/files/ Jory Pratt
  -- strict thread matches above, loose matches on Subject: below --
2020-02-16  3:08 Jory Pratt
2019-10-06 15:26 Thomas Deutschmann
2018-12-13 15:48 Thomas Deutschmann
2018-10-23  0:53 Thomas Deutschmann
2018-05-22 19:27 Jory Pratt
2017-06-14 12:14 Jory Pratt
2017-06-05 14:36 Jory Pratt
2017-04-13 17:34 Ian Stakenvicius
2017-01-16 16:11 Jory Pratt
2016-10-11 14:13 Ian Stakenvicius
2016-08-31 19:10 Ian Stakenvicius
2016-03-14 20:16 Ian Stakenvicius
2016-01-09  2:15 Jory Pratt
2015-12-23 21:30 [gentoo-commits] proj/mozilla:crossdev " Ian Stakenvicius
2015-12-16 18:27 ` [gentoo-commits] proj/mozilla:master " Ian Stakenvicius
2015-12-03  0:18 Ian Stakenvicius
2015-11-30 16:16 [gentoo-commits] proj/mozilla:crossdev " Ian Stakenvicius
2015-11-30 16:13 ` [gentoo-commits] proj/mozilla:master " Ian Stakenvicius
2015-10-22 18:06 Ian Stakenvicius
2015-04-06 22:39 Ian Stakenvicius
2014-10-31 19:08 Ian Stakenvicius
2013-11-01 13:14 Jory Pratt
2013-06-19  3:30 Jory Pratt
2013-04-24  1:47 Jory Pratt
2013-04-23 13:07 Jory Pratt
2013-04-21 21:58 Jory Pratt
2012-07-18 12:17 Nirbheek Chauhan
2012-06-04 11:52 Nirbheek Chauhan
2011-12-18 20:47 Jory Pratt
2011-12-11 18:50 Jory Pratt
2011-03-28 19:18 Jory Pratt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox