From 892ad8d09f0b68f78a934d2e637927e9b8026845 Mon Sep 17 00:00:00 2001 From: Duncaen Date: Tue, 7 Jan 2025 17:36:02 +0100 Subject: [PATCH 1/2] firefox: update to 134.0. --- srcpkgs/firefox/patches/sandbox-fork.patch | 15 --------------- srcpkgs/firefox/template | 9 ++++----- 2 files changed, 4 insertions(+), 20 deletions(-) delete mode 100644 srcpkgs/firefox/patches/sandbox-fork.patch diff --git a/srcpkgs/firefox/patches/sandbox-fork.patch b/srcpkgs/firefox/patches/sandbox-fork.patch deleted file mode 100644 index d4584e74b91c3e..00000000000000 --- a/srcpkgs/firefox/patches/sandbox-fork.patch +++ /dev/null @@ -1,15 +0,0 @@ -make SYS_fork non-fatal, musl uses it for fork(2) - ---- a/security/sandbox/linux/SandboxFilter.cpp -+++ b/security/sandbox/linux/SandboxFilter.cpp -@@ -1420,6 +1420,10 @@ - // usually do something reasonable on error. - case __NR_clone: - return ClonePolicy(Error(EPERM)); -+# ifdef __NR_fork -+ case __NR_fork: -+ return Error(ENOSYS); -+# endif - - # ifdef __NR_fadvise64 - case __NR_fadvise64: diff --git a/srcpkgs/firefox/template b/srcpkgs/firefox/template index 42f11793bf3e90..118e4adf8f8a72 100644 --- a/srcpkgs/firefox/template +++ b/srcpkgs/firefox/template @@ -3,21 +3,21 @@ # THIS PKG MUST BE SYNCHRONIZED WITH "srcpkgs/firefox-i18n". # pkgname=firefox -version=133.0.3 -revision=2 +version=134.0 +revision=1 build_helper="rust" short_desc="Mozilla Firefox web browser" maintainer="Duncaen " license="MPL-2.0, GPL-2.0-or-later, LGPL-2.1-or-later" homepage="https://www.mozilla.org/firefox/" distfiles="${MOZILLA_SITE}/firefox/releases/${version/beta/b}/source/firefox-${version/beta/b}.source.tar.xz" -checksum=f134a5420200bb03ab460f9d2867507c0edb222ce73faf4064cdbea02a0aca1b +checksum=ca88068bd72784c10de16df62359b2dc354672a1a427b4fd6a5fcdb34c06457e lib32disabled=yes _llvmver=19 hostmakedepends="autoconf213 unzip zip pkg-config perl python3 yasm rust cargo llvm${_llvmver} clang${_llvmver} lld${_llvmver} nodejs cbindgen nasm which tar" -makedepends="nss-devel libjpeg-turbo-devel gtk+3-devel icu-devel +makedepends="nss-devel libjpeg-turbo-devel gtk+3-devel pixman-devel libevent-devel libnotify-devel libvpx-devel libwebp-devel libXrender-devel libXcomposite-devel libSM-devel libXt-devel rust-std libXdamage-devel freetype-devel @@ -183,7 +183,6 @@ do_build() { ac_add_options --enable-system-pixman ac_add_options --with-system-ffi - ac_add_options --with-system-icu ac_add_options --with-system-jpeg ac_add_options --with-system-libevent ac_add_options --with-system-libvpx From c8fd3d818d4bc7920e29040edf6220a6f17d0ddc Mon Sep 17 00:00:00 2001 From: Duncaen Date: Tue, 7 Jan 2025 17:38:08 +0100 Subject: [PATCH 2/2] firefox-i18n: update to 134.0. --- srcpkgs/firefox-i18n/template | 196 +++++++++++++++++----------------- 1 file changed, 98 insertions(+), 98 deletions(-) diff --git a/srcpkgs/firefox-i18n/template b/srcpkgs/firefox-i18n/template index 5e98d0cf7116c7..d5b6b283348c86 100644 --- a/srcpkgs/firefox-i18n/template +++ b/srcpkgs/firefox-i18n/template @@ -1,6 +1,6 @@ # Template file for 'firefox-i18n' pkgname=firefox-i18n -version=133.0 +version=134.0 revision=1 build_style=meta short_desc="Firefox language packs" @@ -141,100 +141,100 @@ _pkgtmpl() { } } -checksum="14cf389708a91123f862d197cfd44c31bb156d48d5cf7ee2f2aeb1b374fce241 - e3c05adc3167d85330eb021e106155e381f013fc1b9708a666306bf032f9fd0a - 92eb3118c20235d68315d4b2665f84eb655415ba6fa377d6d7a246eb56c70ab0 - 71f2322480793c0de7779f2536c06c3d4ef857c611943081cb92ac62d0ca7700 - 8fb6a1117c561cf3653b1ed418a0ccd0d07c31930b2213f816e7bbf456aa8d50 - e521a354533b1306a1263d2f8e96c1f43d6e64b2436edbb1b7bbdb050dfc3f14 - d91688535d66dfde3a671bb1878e854a399bc869b56dece9f01a5144c1f0093d - 8ca6ee18ae92d36bced998ae72247b868335deddea0048cc8003b1f19c641b75 - a7ece365254d86687a5d6f1a4c60646ccbc2adb2b9103f59af6d3fa468ee16c7 - 7abef21e93936127fa4a45e9a6db96e54f6bb63e79392a0a63d64546cd2ada3a - 1d2000856340ee50cc85a391193a40c6cd2bc6c22889db6e970835e607a9a07e - 00757d9107812ddfb0793fd70e7cc3622676746723213d3a9934113a6ef2b9ae - bc97f925b4440db0e74e818bdf420e6c9df92b6676fee7c57c93cbde61313ed3 - 88ce43bef9ee59d7a82f03c7fe47f2e54f4562de543c18ed4c7b832e0d493705 - bc481e7edad2e5d9c8efdfa758a8a19e2b3e70172f58e87cacbd9209014710aa - 5c93a04563be50c0420b7eb7a15fe00b5053592aacc730bef1586af3f2d8a5cd - 5e2bc11ff4d76f56e210f637e34fe27e530d8b54dde5d47982fdbc871ed7dc74 - c8cb593ad3962af6b42279641582f48d49c22afd859f19eac54ff714474e0284 - 224f7b32a1fae20306eda1329db2894b0af9575c77324637c3a49f34805df19f - aad50406ccf95e4d40b91099e98c835118c99aaae1689f4029c582a6d1fa8451 - 3ac48396786b48cf7487d83ef214053b864c5961a0fac4dd01ffbfb87924ae13 - 4ca1a741f47e2bb2f9847b85bc377917cf9655e25d9f30df732c87d89cd76390 - 3cb716f083d8c3c77d2827997778ec50c4c6697a46cb1aca67310ebaa27a76de - 2df3dc141b0116685d28325576597c06f0d6a6ee7d5cd3a8db2f76a0cd8b3b9b - 0c6e46938f662fb39bda85d68d9131f900aa062a0ab6250bd5c61c9f67000502 - 1359568a488fddb365e6eb806abc656ae409593208162538bc2fd2455d37205c - 4044d065a186afd2c8e0cba5a55e5b79fd65bee9b50ba5f5916ada014c08b47c - 2b9dc8a78b8ed1b61beaf529339937ed624ccd2b34944bcf0435f7017eb20922 - 7d643c2d7e748665be51ff78b37592a0aca7d4459076ee945a1fef607b68e7a1 - 0202ce469fc7f5259d637cdffb634577203511e4772f1772515a3d88345cbaed - a9354e70566cfb3e52ce357b6c9bad3e1797f28e33bfb8cf4eaa6e887e5ba470 - 5d33c1d527339438dfab52718094c1e918d242a9bc14bb21d963ee72f45673c0 - 4e3ebc7bf7ba326a4e0cbf5a65211d76755374ab46b382ba5bbc1b94fd8e216a - e29223f3244b9def4bb81a11bd312658e5fe57683b20f0f5eea303efa3e06623 - e13371a28f5be57ad4ed29cc8f7bfe5807f4744a5d0296c14f82871c26e99f9d - 52190104f9bfd34c44a73b8c8cfe64e8b2753117be5629ea02e7958ca229a3ed - d52ed4c6f9011ebc213d06f1b5759b56f26b3832ccc05c5b4c582bcf41ebbcf1 - b7f0676603c0e89ac6b3b0fc31e8ee14324a627b9f3b3c25d3a965d9d86dbee4 - 0655c39d56b52f395b41511d30e06596fb9c29f47cdd9126b8b177d60a8b1f79 - 5eb29d6dcc2976976530bb74dc5ab937b0c167521c30c204993799691c2c96b6 - 8a0a89153d4522718cdf43396dc81b1953c0b6dc3f997dc8408c84a687ee8a10 - 9ba1b6a3bb977aba8898e400edb225f6510e611649906ccddd2263be54d6fae1 - 47f6a66a1838189464b5fa4ba7652d7eab6204898ccf4ed50efe49f18f7c9005 - c115f863270aa77b1ec71bfe3a8067f569ef1950e6612100b84391e5a0b27c26 - eb5c5cc5751feb274b7385ef1fb79db871d72e099ed171538dceae2565372243 - 0f0ce8cfce02daf457d29a93000185218318ab43453791e30571f8fd1481ce2e - fc0e12fa91df76f7f1e5873db4144790edb96dfa699af5f565d7970203183503 - a0246bf4c4f228c00319d1802934f8e68136024951b43524fb6f345253d9c466 - 68d8dbdd1bda2ec7842cdb729a11e3f8666713d1e8b04c4d7a37269b495b8b8f - cca30798ae0fa6c9f4351a1daea57cfd589a769a6970be40f8606fc82ff6e00b - 643f5e08d9b64160f883e349b1975c2ac73c1ba5bde76ba8f438745d730872ac - dcac3042234987fcced7afce7eb85f8fb8081bdc7bc92eb769e62ae9c5c8784d - 809a9aa5f12105a489700694d78a7db6bb0f4290543c0af8fbae63e2d92aefe4 - 10b0ca0f478f844e9a6229a771c1d480cd45bc0cb69a665ccc41a565daf668e9 - 7deb024d0705827c205074f428b3c03f23316a8de30c6349620799bbd250ec29 - 5d1409b980e2ded7369a156b7c0b91ed5efdf66cca0d2872982e2cbdd8a8be26 - 539d7b1bccdac2ca583bbbe0490185235e8ec835af5f83722d73618b7da74b0f - 3e1cd654144fca33f5435a96c2926d0775ab8888835107c71b99f882e0c94ec7 - 700b33fa27fa90b10fa8c8ecbd5feebaab960dbbc3a02a2ee230f1ce96cb7009 - b0eb92fc3bd8977d47dfc246411b7a997974defc090b3a4c1016cf94e1d25fee - fe67496dc823b582ea0c0a547a47c810e680cea201686b0eed11274c017c021b - 71f6b7879ddaa703906241fcdfb128ba5757b604f4a5fd0bab53c2d0507a6f76 - de502c7961e4e93847276211d26e747e238ec2ff77d3418e74914052142b27b8 - 9cfb6e70aeef131f4ae50cc2f8d2075ef2db79533eabe0caac760e094a814f61 - 59f078aff5f87e6ee3f20ce3e090339b4939ef6d48135fc3b66d57f35eb01a8a - a3f97513f809705cbe295adfccc930a991364d4aaa86cb97cb15dae60c6ea03e - 0394bfc00e6d1e9c2411417823138025bfcd9e3e5457cc1337b4c6ce3b2937b9 - 4a244776d8268373d77298659fc37a5cdcb34953415b6e228f139fd5b0950211 - 9e2476c23e1e0358b20304d04898cbf508e5659347490e7b32aad4a57a9f9254 - 6ee2e9cb3b7a30175309cf4cc1bfb6c3ad6bd567d2e5ed27fb6c0b95bac954c0 - 006ab901a085f11384caef92da4f82b1c2aa5b147b2dc331bed4fcdf708056bc - f02575d0a8cc71297ae8aa73685f405fb1425176c3b48a24b86dc149bf8b663a - 382b7a361ab21fa316f8f88a429fcd93b95310e991cad4a762dbb96cccad0cf2 - 5216f89729b64c17f47a05c37e15d62cec55816b407024e6545b3a37ebe11a1c - 69d2d513c012c6738d470b712169c821db1410bef5a8b19c503d630bec996a0f - c7cf2da2220bf4e5799941a9ce0683f50e0c4b9946f52eaa68a6f7aea459d93d - a1b8d93d1e543198a8343f483b11833d8385b4c38d6fa033b9c576d166211d24 - 65b41fc17bbcb6b8cc2e77f0a4585a9d8e3cb086bee182bac4218c02060fd84a - b5ad29fc1bad0daa8bf9da97d9d78add5603e5f26c43e9ef6cbf35cdced7b5c6 - 8ea4d80232f7b5330bbb7dd10c3296b842ea8b3e6e10891f0eab29eb8af20fd7 - 1f8d8d7478fce55b601c682d97f682612519318703ba3059bf9b6693d7e863d4 - fb3a32fa8d495ed0c2c4b4714750fd62d9a786eee839548ef80e9f4dfec26db4 - df783e634a2db7f2850003ec78168dbbcea9f17802989e867f2153538e98aad9 - ffdcd35c90d0711b6f5cc51ace4ac62414cc08ff6a2981d093973ac1b7326cad - 883ecd146785b7491cfb41dde53208c32c7c4f50c22ab0342b81c21820727baa - f0a5a9c8bdf4a356eb6ecc62fac17d511c1678d3acb3b27721db57c800b7d376 - 99d6e93111ac12229b7d6cf212e3fd2186080bd7b9b907b00d0988b749aadc57 - 10e391da541bc2d095cffca9fdd8831f87bbfc378e48c4a1e194a71b2528c83c - b198cf75713766c43929289a0e6a8366853fbee6283a6f6a4780f2ca228479ae - a25037275783fa8b1857900fd0ae46b565b14da28bd7db8a97278340fc4e5ad1 - 89261fc9628e5dbc6ad4688e8ad37fd3d69b27f4fa04deacef6b5f1871947845 - d6734eb6e954e10c6d40aa8f7b3c9554ff372f03504938a3b30b174d1ccb40ae - a3f9ca46af71eb54e4775e34ed2fa9aacab63128fdd9317ae8b873072098775b - 294344d981092a9eee0278e8d6e6fe8439e37d9659d5c6f1add915faab20aad9 - 0710043c0c3f2d5f5d1b39423b1a2e1d79db70a97179ea87bcf1618d8e99baff - 0ac9b1e3ab7cd70e6feff0a3669caec13c529ac0d4b169bf7948b6cb31cf78c2 - 606bb5da5ee4b4a35f191dbd5c63727fc6fa39108c22362ea12f9ec646e7445b" +checksum="ca6f48f598c50ca32edf23f0ef101991db82eccca54d5d8c497a1681f96dc932 + 63f2071743478164bff06cac4916a0e33c56fce1927a9575bab6c4a0f6ba1e4d + 79a3861ed70b7fc99964a23c5792e0ac3693c58f9aa5153a3f8b11c52f4d50fb + 7a5de153c4cb458be8a2edc4352f4af1b2a026c1032d733b1a0f1975b1fc900c + 7356274b193b334f1435e705630814abab65e8cc9fe26faffbfd1d0ff40cd2ff + 95d6f87db116b96c953e61439d43eb3e78b187fb147ca21166126c0de7ee118e + 74c4caa5403b4c43730c38c9f1d273204f10250ad7a6b249e5530efa60811b06 + abdfbdd20f7994869b1ec393837b9b6480b9b1782c484100e81b2f5653957375 + 9f7b83a2e8a18e1a55594bca6b3edd7897da97b7c38e0e036a274d79f9cae5b2 + 6fa69f3722b81e9a03a3d2319fc6047601dbb31f2fe7996fe02d472d05fbb0c8 + 8a6bd122fc5bd5ccf063d2d5613c124e350a5d5c5a12e14142309db7f447da7d + 17dfc0b1f554b80138661c1852f905bb5d71ced8282994896469f833bec5ebcc + 857868b45274b003131bc13cd6cb3c272480b94d5bc07ccb23e37ccb458c58a0 + 62d1fa257fabadecca33e9caf9ea49558aedb9c3b8989fa5558da6a046d02e09 + ec6589167bee670811ffc7e7f7dc2c4ca58a0d6f8677f0bf3b1e743c6086bc76 + e87c2030d54806d4832c5407889693439b3ef06eb96c427f2bfb35ff26283a86 + 5eb333505077eaf4fb771747e1f95682c9254a947fc18f651d188fc378d7ec42 + 8a8f7a95713db855d09fe3ec09a8f80b477f572c3412cd78ac5539c07841384a + 611b76e988eb8b8f0821146133bbf8a8835d484aaff0b826033355a3f77e99ff + f85b9184bbf8d9aaecb1f3db7beefe22db6b64f86c1965d93a0189c81aaf5e9e + 79498224ebf702a2b7de3fb1699df3ded757cfd89e4537076d314a62c04806c0 + 68803debb9336a4aff37bcff7e64471d5dadbbfb68e408b98fdf7e23f8b2bc2a + 8af14f55f5b493b932cab215147e152ed2d699025894780277d3ed4813d748aa + 1d0c2fc91dfc8b1041ca3254548439602f634bce30da63f1a94836fcf6f5891c + d5c2b119156b0bd2934048d7b3fc4a70de8598ef8c22ddfaa80174854520b3c8 + bd88505901ceac5b420f87e08c6e88e0a25279a3b77a732926c73547b13133e6 + 8a103d2d7537bbb0f8bdcb7f17bd0a662bac3ca1232361e6c64e44e9117132d0 + dd410d8a6926ce790fe6ac09cd6508c87d83bbc1516f7b05cf3eeda8f0a82b75 + 723917ebaaa39ffa2644e5088e36b0d6e5a22b37f780c8e2e493d9053ab7f563 + 7b236e52cacad43b63bf5655fd1e98acd457c5c7c83a124968adc2dcffefebcc + d6e0d9f185c391d3f608d07f627052f7274d1a05f0a18eea1b9d5eab7429bd52 + c8cc97084402f2ae90e538338943617a896c802a5f8c24edb8f58a2cc5ac2fd6 + 33f1b747604a52299ceebf554db6e724ce5eb37b059eb8605363fccbf64fda50 + 6ac218cf3e74259293c3f0920449a343444a2127541472666285eb5b6057286b + 2309306067e64c6d10faee5972fc8b17443f1d2abba66c391c73ec46b8d17019 + bdacd2761e9bd7c490b8b0eade5ff94b39677d70e1556681a5bf9361bbc9a4c4 + 8f44c3e332e3fc8728a3c18ec7f5c9d9481dbc1a9fda77067b71ebfa369e9923 + 1023583b9b97be369688bda65e5778590c8ab9a710f85e945f58a385e4a06bea + 94eb41fc132d4377ad90ab858a8edbd8ce5400edf1be3338a4133b8f7e025f13 + 71e09f33207494f6fa4a6dcd3601eafa543c43342ccc5577c93ad20242050eb0 + 4763b5608ad6681ffa11507b91c7ccf1d06089b2a084478f65bf11318cce0be8 + 8f08fc5221d5930799a5dd9b5baa59d6d279c8377bcb17a47fe2eabb6494bf84 + 4f89f1ff215f7fa9e1145b89c25720aa41f99fb42e6eb72086627d682168c353 + 83171d5170af27a64fb4997d543bb1136749dd5fe73eb6ed0f642bc62ca9f66e + 78fe66ab7b6751a2d38d76d72658d5cc816d680f793318db4d526e6b701e8141 + 8f218ba5f7d5c032988aa8dc21a621e9faa62f2a711578ac8d5d6a643a530f0d + 1e61e7fe0f9cf01e5bb87e07f77771fde9db3fdba9015d2453cdb03b92866456 + 3ff420dc5ed935cca418a2dc51210b406bcd76f198b4cf2a72d7aa0cac81777e + 86afa140cb1ea536ae9c6be146a7005e872bfe0c36327513cd16517fd906bd20 + b654599d6cecd703e993e3c0c3b820a2924d7f3554ba7f4a64dfea1e4198103c + 1b1deb0cc4b91fa27eb790780a95d8f8198881da62f2147d45c9f26f7d5e8e6b + a42aabd098a040ffd690ebd3d2fc551894494ca97a2ece2c61ac8f0bec05bf43 + c441d4abf06e1a768dd328c7c84bd09fb165a53b161bcbd02687b638c0edb3b9 + 22aba14c2752bbf86add1f31140fb962de9f7eed0a1be6f39a73bca4fab8e05e + 6be86f370a9ef341a7e83d737db546ca899c4b94bb1d5f26b3b73ea53ff7e650 + 109de67210784a0d81e8e87cee9c7a1f704eb2c089ad4f9e813e7291fd52854f + 987345af5409c80f91e40525840a7068407ac9beaf728488ded1ab5afa33f8aa + 1488d2b01df23c547b41c0e6a3803bd197d06860cd037990e603a9cc44d766e1 + 21cf30ed298ac38dc63ce35296c21ee597f2518b955a80d20232596c1086393a + 6674e25196437749dda799987cd5b485f56b009f1035d053c5711e6d3a963a3a + a4113d1e11b3bf080abd9e4858f53221c18dba16953c71415ab5d74b6b3473e2 + a699871947d12d0b5ec918d6a120df57b3708dedb70bfadf5efacb7d1648dae1 + f1f59841dd6820c3d017a93c0e1fff98903528466ca20975ed15f9778b5a86dd + e151f4762cf679492577e4f59b906f30907273aadb1d679da514448c0d2fe52a + 9701c1271ef388e7de3620243f6ba1dec07007d4ffebdcf47db6dcaa9fb21977 + fd022b824775553264061ae66f005c10debfbcd0c7938d7317bb67d6ac90cf8f + 79c73d210816dd6429c85e6339f17eecb8b0f6d52d8fd2af06b2a3c7f910e503 + bc993823ef2bd0cac22241e74b4f95e29d8bc8131dcd8a987f67a80acf1daef7 + a634a4d82fbc0787f4732146e65228ea6b7e1a3b9cfd86a8a0a3110b71372391 + 3b8ffe651a59e330760564cfa78d3df52b066c0db21dd7d1253e3386953a52b5 + 174dd9dab27baaa000496a7b9663551edb62d5777f3ebf6a6e996f46436bbed7 + 61630880de9b09ef0845400575f4622352492ca09197cfd86ffda6666cb09222 + a03beffc092829fe06625cae62e0b9e9e946aeeb2d7d80244be4ea747ae45f13 + 5bcd0870b0c8bbc6dee1f7cc3f84132a94bc1e197ded176da7e1ec48613cd5c7 + 6152c53a38c3fb6853923e3f46be852bc4b997b431b521f893c371b1aa9580d1 + cd204b1a240e0653cb11ba5469f9128065c76a870072c6faac3200b0827adc78 + b439d9dfea67964606290a8013c62c90d7628c536477a6001966a5d5179786da + 1e42e18e61aaac307630dafe50001cbac558c2f3ce243887a49fbaeea5b9de49 + 7037c105459905a43cc6b792c8f75afc6a178ef15be6df18a33711fb0858e91e + e34834734ba5bf5a97e1d3aeb7cd9699fd6cb1ad7cc07ee6f8e8425f66ca2f07 + eea74c715da0c685608db991494cfa32004be899bf96f5efb5274ef22ef673a2 + 928228f6a9fcb10259ab6959a4b55b6f761c14c4424ad007fe75cf626f06c7c7 + 3795e3d6fc43f4eaa7defa7d73d428f67345278cadd63f7bef8d720d552db956 + e13168975ebbac2ba2b807f7cabc1b2dabb9cb5eb293da58db5e413b45a3210b + 8793c6c39f8e3504753d2c5da2a689d2880a3c9e42ddcfb567567383273935ab + 0135c35877883d749c79e5cce92c04c0d2725e81ed11638400f783e106d07752 + 40e30b35dcba81894031f7970bdf503572d114d097f4d0de6a236f7eb33c2dc5 + 5f749a4d2fdd6d45d03fc5facc25d18f08dfa2bf088dd94466094e7d44baa409 + 517ed762de1a4ac10dc0059bcae60aa8e40f4e45da4a04966b93e8ad180626f2 + 13cb6dbaf43b4523c7fefdeaa1dce4ef641d8edd324c9ecd0961f19b774f77df + 88dc5c26ec7a96a5afb798b6e3ac27185eb7ae0fc894343f7f022306e07ad44b + 7653d2b06298cf7f9242f33bc6a718cd65fdb7f6d4a207e8a36d94a866036b10 + ae0dc3349dcf8acc8fae3569fe89fc0470eb91a219e93039bcab061eb5db7a9a + ee99c1aa6e09d7481fb2a13db9a71a7f522dc29c5a2651aaef22ef81df90b03f + e01cf73a874e3ab6cb131e2b7ac1877c9c716f13b059701efabc76546522e594 + afb236b43e3af13d1a6c56a4224e695c51b8ddfc6814dc167a3a5c4fd6f668dc + ec90a5b5471673f10c4771f071a90b1177257a8dfebdaccf19ffa27fc80a1d19"