From 2fd7967b17bd43eb65a1f0e8460bfcd23fc06f7b Mon Sep 17 00:00:00 2001 From: R4SAS Date: Tue, 1 Jun 2021 23:10:07 +0300 Subject: [PATCH] update windows scripts to 78.11.0/2.38.0 Signed-off-by: R4SAS Former-commit-id: 232132a3c96933d07e3cb6159db2294c13df01b6 --- windows/build/build.cmd | 83 +- windows/build/ca-bundle.crt | 971 +++++------ .../firefox-portable/FirefoxPortable.exe | Bin 201296 -> 187216 bytes windows/build/i2pd/addressbook/addresses.csv | 1085 ++---------- .../reseed/acetone_at_mail.i2p.crt | 32 + .../certificates/reseed/bugme_at_mail.i2p.crt | 32 - .../certificates/reseed/meeh_at_mail.i2p.crt | 32 - .../reseed/reseed_at_diva.exchange.crt | 34 + windows/build/i2pd/i2pd.conf | 6 +- windows/build/i2pd/tunnels.conf | 16 - ...IRC-Ilita.conf => IRC-Ilita.conf.disabled} | 0 ...IRC-Irc2P.conf => IRC-Irc2P.conf.disabled} | 0 .../build/preferences/cck2/chrome.manifest | 1 - .../modules/CAPSCheckLoadURIFramescript.js | 154 -- .../cck2/modules/CAPSClipboardFramescript.js | 183 -- .../build/preferences/cck2/modules/CCK2.jsm | 1495 ----------------- .../cck2/modules/CCK2AboutAddonsOverlay.jsm | 111 -- .../cck2/modules/CCK2AboutDialogOverlay.jsm | 33 - .../cck2/modules/CCK2AboutHomeFramescript.js | 79 - .../cck2/modules/CCK2AboutSupportOverlay.jsm | 62 - .../cck2/modules/CCK2BrowserOverlay.jsm | 373 ---- .../cck2/modules/CCK2FileBlock.jsm | 47 - .../cck2/modules/CCK2Framescript.js | 51 - .../cck2/modules/CCK2PreferencesOverlay.jsm | 123 -- .../cck2/modules/CTPPermissions.jsm | 123 -- .../preferences/cck2/modules/Preferences.jsm | 629 ------- .../build/preferences/cck2/modules/Timer.jsm | 43 - .../build/preferences/cck2/modules/Utils.jsm | 10 - .../cck2/resources/certs/purplei2p_ca.pem | 24 - .../cck2/resources/searchengines/legwork.xml | 29 - .../preferences/distribution/policies.json | 96 ++ windows/build/preferences/i2pdbrowser.cfg | 153 +- .../build/profile-en/addonStartup.json.lz4 | Bin 0 -> 4288 bytes windows/build/profile-en/search.json.mozlz4 | Bin 0 -> 2188 bytes windows/build/profile-ru/search.json.mozlz4 | Bin 0 -> 2262 bytes windows/build/profile/cert9.db | Bin 0 -> 229376 bytes .../profile/certificates/purplei2p_ca.pem | 23 + windows/build/profile/xulstore.json | 1 - 38 files changed, 791 insertions(+), 5343 deletions(-) create mode 100644 windows/build/i2pd/certificates/reseed/acetone_at_mail.i2p.crt delete mode 100644 windows/build/i2pd/certificates/reseed/bugme_at_mail.i2p.crt delete mode 100644 windows/build/i2pd/certificates/reseed/meeh_at_mail.i2p.crt create mode 100644 windows/build/i2pd/certificates/reseed/reseed_at_diva.exchange.crt rename windows/build/i2pd/tunnels.d/{IRC-Ilita.conf => IRC-Ilita.conf.disabled} (100%) rename windows/build/i2pd/tunnels.d/{IRC-Irc2P.conf => IRC-Irc2P.conf.disabled} (100%) delete mode 100644 windows/build/preferences/cck2/chrome.manifest delete mode 100644 windows/build/preferences/cck2/modules/CAPSCheckLoadURIFramescript.js delete mode 100644 windows/build/preferences/cck2/modules/CAPSClipboardFramescript.js delete mode 100644 windows/build/preferences/cck2/modules/CCK2.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2AboutAddonsOverlay.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2AboutDialogOverlay.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2AboutHomeFramescript.js delete mode 100644 windows/build/preferences/cck2/modules/CCK2AboutSupportOverlay.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2BrowserOverlay.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2FileBlock.jsm delete mode 100644 windows/build/preferences/cck2/modules/CCK2Framescript.js delete mode 100644 windows/build/preferences/cck2/modules/CCK2PreferencesOverlay.jsm delete mode 100644 windows/build/preferences/cck2/modules/CTPPermissions.jsm delete mode 100644 windows/build/preferences/cck2/modules/Preferences.jsm delete mode 100644 windows/build/preferences/cck2/modules/Timer.jsm delete mode 100644 windows/build/preferences/cck2/modules/Utils.jsm delete mode 100644 windows/build/preferences/cck2/resources/certs/purplei2p_ca.pem delete mode 100644 windows/build/preferences/cck2/resources/searchengines/legwork.xml create mode 100644 windows/build/preferences/distribution/policies.json create mode 100644 windows/build/profile-en/addonStartup.json.lz4 create mode 100644 windows/build/profile-en/search.json.mozlz4 create mode 100644 windows/build/profile-ru/search.json.mozlz4 create mode 100644 windows/build/profile/cert9.db create mode 100644 windows/build/profile/certificates/purplei2p_ca.pem delete mode 100644 windows/build/profile/xulstore.json diff --git a/windows/build/build.cmd b/windows/build/build.cmd index 23df551..386e2f9 100644 --- a/windows/build/build.cmd +++ b/windows/build/build.cmd @@ -1,14 +1,14 @@ @echo off -REM Copyright (c) 2013-2019, The PurpleI2P Project +REM Copyright (c) 2013-2020, The PurpleI2P Project REM This file is part of Purple i2pd project and licensed under BSD3 REM See full license text in LICENSE file at top of project tree setlocal enableextensions set CURL=%~dp0curl.exe -set FFversion=60.9.0 -set I2Pdversion=2.32.1 +set FFversion=78.11.0 +set I2Pdversion=2.38.0 call :GET_LOCALE call :GET_PROXY call :GET_ARCH @@ -43,44 +43,61 @@ if "%locale%"=="ru" ( del /Q firefox.exe ren ..\Firefox\App\core Firefox del /Q ..\Firefox\App\setup.exe -del /Q ..\Firefox\App\Firefox\browser\blocklist.xml del /Q ..\Firefox\App\Firefox\browser\crashreporter-override.ini -del /Q ..\Firefox\App\Firefox\browser\features\aushelper@mozilla.org.xpi -del /Q ..\Firefox\App\Firefox\browser\features\firefox@getpocket.com.xpi -del /Q ..\Firefox\App\Firefox\browser\features\followonsearch@mozilla.com.xpi -del /Q ..\Firefox\App\Firefox\browser\features\formautofill@mozilla.org.xpi -del /Q ..\Firefox\App\Firefox\browser\features\jaws-esr@mozilla.org.xpi -del /Q ..\Firefox\App\Firefox\browser\features\onboarding@mozilla.org.xpi -del /Q ..\Firefox\App\Firefox\browser\features\screenshots@mozilla.org.xpi -rmdir /S /Q ..\Firefox\App\Firefox\dictionaries +rmdir /S /Q ..\Firefox\App\Firefox\browser\features rmdir /S /Q ..\Firefox\App\Firefox\gmp-clearkey rmdir /S /Q ..\Firefox\App\Firefox\uninstall del /Q ..\Firefox\App\Firefox\Accessible*.* +del /Q ..\Firefox\App\Firefox\application.ini del /Q ..\Firefox\App\Firefox\crashreporter.* del /Q ..\Firefox\App\Firefox\*.sig -del /Q ..\Firefox\App\Firefox\*.chk del /Q ..\Firefox\App\Firefox\IA2Marshal.dll del /Q ..\Firefox\App\Firefox\maintenanceservice*.* del /Q ..\Firefox\App\Firefox\minidump-analyzer.exe +del /Q ..\Firefox\App\Firefox\precomplete +del /Q ..\Firefox\App\Firefox\removed-files del /Q ..\Firefox\App\Firefox\ucrtbase.dll del /Q ..\Firefox\App\Firefox\update*.* +mkdir ..\Firefox\App\Firefox\browser\extensions > nul +echo OK! + +echo. if "%locale%"=="ru" ( - echo Отключение отчетов о падении + echo Патчим внутренние файлы браузера для отключения навязчивых запросов ) else ( - echo Disabling crash reports + echo Patching browser internal files to disable annoying external requests ) -sed -i "s/Enabled=1/Enabled=0/g" ..\Firefox\App\Firefox\application.ini -sed -i "s/ServerURL=.*/ServerURL=-/" ..\Firefox\App\Firefox\application.ini +7z -bso0 -y x ..\Firefox\App\Firefox\omni.ja -o..\Firefox\App\tmp > nul 2>&1 + +REM Patching them +sed -i "s/\"https\:\/\/firefox\.settings\.services\.mozilla\.com\/v1\"$/gServerURL/" ..\Firefox\App\tmp\modules\services-settings\Utils.jsm +if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo Patched 1/1) + +REM Backing up old omni.ja +ren ..\Firefox\App\Firefox\omni.ja omni.ja.bak + +REM Repacking patched files +7z a -mx0 -tzip ..\Firefox\App\Firefox\omni.ja -r ..\Firefox\App\tmp\* > nul + +REM Removing temporary files +rmdir /S /Q ..\Firefox\App\tmp +echo OK! + +echo. if "%locale%"=="ru" ( echo Загрузка языковых пакетов ) else ( echo Downloading language packs ) -"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\langpack-ru@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/978562/russian_ru_language_pack-60.0buildid20180605171542-an+fx.xpi +"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\langpack-ru@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3605589/russian_ru_language_pack-78.0buildid20200708170202-fx.xpi if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) -"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\langpack-en-US@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/978493/english_us_language_pack-60.0buildid20180605171542-an+fx.xpi +"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\ru@dictionaries.addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/1163927/russian_spellchecking_dictionary-0.4.5.1webext.xpi +if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) +"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\langpack-en-US@firefox.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3605503/english_us_language_pack-78.0buildid20200708170202-fx.xpi +if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) +"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\en-US@dictionaries.addons.mozilla.org.xpi https://addons.mozilla.org/firefox/downloads/file/3498005/english_united_states_dictionary-68.0.xpi if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) echo. @@ -89,28 +106,9 @@ if "%locale%"=="ru" ( ) else ( echo Downloading NoScript extension ) -"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi https://addons.mozilla.org/firefox/downloads/file/3383315/noscript_security_suite-11.0.3-an+fx.xpi +"%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi https://addons.mozilla.org/firefox/downloads/file/3625174/noscript_security_suite-11.0.38-an+fx.xpi if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) -REM echo. -REM if "%locale%"=="ru" ( -REM echo Загрузка дополнения CanvasBlocker -REM ) else ( -REM echo Downloading CanvasBlocker extension -REM ) -REM "%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\CanvasBlocker@kkapsner.de.xpi https://addons.mozilla.org/firefox/downloads/file/1086424/canvasblocker-0.5.4-an+fx.xpi -REM if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) - - -REM echo. -REM if "%locale%"=="ru" ( -REM echo Загрузка дополнения Privacy Badger -REM ) else ( -REM echo Downloading Privacy Badger extension -REM ) -REM "%CURL%" -L -f -# -o ..\Firefox\App\Firefox\browser\extensions\jid1-MnnxcxisBPnSXQ-eff@jetpack.xpi https://www.eff.org/files/privacy-badger-latest.xpi -REM if errorlevel 1 ( echo ERROR:%ErrorLevel% && pause && exit ) else (echo OK!) - echo. if "%locale%"=="ru" ( echo Копирование файлов настроек в папку Firefox @@ -119,9 +117,16 @@ if "%locale%"=="ru" ( ) mkdir ..\Firefox\App\DefaultData\profile\ > nul copy /Y profile\* ..\Firefox\App\DefaultData\profile\ > nul +if "%locale%"=="ru" ( + copy /Y profile-ru\* ..\Firefox\App\DefaultData\profile\ > nul +) else ( + copy /Y profile-en\* ..\Firefox\App\DefaultData\profile\ > nul +) copy /Y firefox-portable\* ..\Firefox\ > nul xcopy /E /Y preferences\* ..\Firefox\App\Firefox\ > nul +echo OK! +echo. if "%locale%"=="ru" ( echo Загрузка I2Pd ) else ( diff --git a/windows/build/ca-bundle.crt b/windows/build/ca-bundle.crt index 7d61eb5..81f5ecd 100644 --- a/windows/build/ca-bundle.crt +++ b/windows/build/ca-bundle.crt @@ -1,7 +1,7 @@ ## ## Bundle of CA Root Certificates ## -## Certificate data from Mozilla as of: Tue Jan 22 14:14:40 2019 GMT +## Certificate data from Mozilla as of: Mon May 17 11:27:00 2021 GMT ## ## This is a bundle of X.509 certificates of public Certificate Authorities ## (CA). These were automatically extracted from Mozilla's root certificates @@ -13,8 +13,8 @@ ## an Apache+mod_ssl webserver for SSL client authentication. ## Just configure this file as the SSLCACertificateFile. ## -## Conversion done with mk-ca-bundle.pl version 1.27. -## SHA256: 18372117493b5b7ec006c31d966143fc95a9464a2b5f8d5188e23c5557b2292d +## Conversion done with mk-ca-bundle.pl version 1.28. +## SHA256: f377673fa3c22ba2188a4cea041c7b8c99a4817ffde6821e98325ce89324e5aa ## @@ -61,30 +61,6 @@ BgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4GsJ0/WwbgcQ3izDJr86iw8bmEbTUsp TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== -----END CERTIFICATE----- -Verisign Class 3 Public Primary Certification Authority - G3 -============================================================ ------BEGIN CERTIFICATE----- -MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV -UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv -cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl -IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh -dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw -CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy -dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv -cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkg -Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBAMu6nFL8eB8aHm8bN3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1 -EUGO+i2tKmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGukxUc -cLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBmCC+Vk7+qRy+oRpfw -EuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJXwzw3sJ2zq/3avL6QaaiMxTJ5Xpj -055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWuimi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA -ERSWwauSCPc/L8my/uRan2Te2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f -j267Cz3qWhMeDGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC -/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565pF4ErWjfJXir0 -xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGtTxzhT5yvDwyd93gN2PQ1VoDa -t20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== ------END CERTIFICATE----- - Entrust.net Premium 2048 Secure Server CA ========================================= -----BEGIN CERTIFICATE----- @@ -130,30 +106,6 @@ Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp -----END CERTIFICATE----- -AddTrust External Root -====================== ------BEGIN CERTIFICATE----- -MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML -QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYD -VQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw -NDgzOFowbzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRU -cnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0Eg -Um9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvtH7xsD821 -+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfw -Tz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504B4YCqOmo -aSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy -2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv7 -7+ldU9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0P -BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6xCZU7wO94CTL -VBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEmMCQGA1UECxMdQWRk -VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENB -IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl -j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 -6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvCNr4TDea9Y355 -e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4u -G+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= ------END CERTIFICATE----- - Entrust Root Certification Authority ==================================== -----BEGIN CERTIFICATE----- @@ -180,87 +132,6 @@ W3iDVuycNsMm4hH2Z0kdkquM++v/eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0 tHuu2guQOHXvgR1m0vdXcDazv/wor3ElhVsT/h5/WrQ8 -----END CERTIFICATE----- -GeoTrust Global CA -================== ------BEGIN CERTIFICATE----- -MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK -Ew1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQw -MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j -LjEbMBkGA1UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB -CgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjo -BbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet -8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+Vc -T4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdReJivbPagU -vTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTAD -AQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVk -DBF9qn1luMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Q -zxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWVYrmm3ok9Nns4 -d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9bZvlxrFUaKnjaZC2 -mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6p -XE0zX5IJL4hmXXeXxx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm -Mw== ------END CERTIFICATE----- - -GeoTrust Universal CA -===================== ------BEGIN CERTIFICATE----- -MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN -R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4XDTA0MDMwNDA1 -MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IElu -Yy4xHjAcBgNVBAMTFUdlb1RydXN0IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAKYVVaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9t -JPi8cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0e -RXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFhF7em6fgemdtzbvQKoiFs -7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d -8Lsrlh/eezJS/R27tQahsiFepdaVaH/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7V -qnJNk22CDtucvc+081xdVHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3Cga -Rr0BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9hB -Z3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfReBi9Fi1jUIxaS5BZu -KGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8O08 -ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0 -XG0D08DYj3rWMB8GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIB -hjANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc -aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fXIwjhmF7DWgh2 -qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzynANXH/KttgCJwpQzgXQQpAvvL -oJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0zuzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsK -xr2EoyNB3tZ3b4XUhRxQ4K5RirqNPnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxF -KyDuSN/n3QmOGKjaQI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2 -DFKWkoRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9ER/frslK -xfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQtDF4JbAiXfKM9fJP/P6EU -p8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/SfuvmbJxPgWp6ZKy7PtXny3YuxadIwVyQD8vI -P/rmMuGNG2+k5o7Y+SlIis5z/iw= ------END CERTIFICATE----- - -GeoTrust Universal CA 2 -======================= ------BEGIN CERTIFICATE----- -MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN -R2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhcNMDQwMzA0 -MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3Qg -SW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUA -A4ICDwAwggIKAoICAQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0 -DE81WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUGFF+3Qs17 -j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbboW0W63MOhBW9Wjo8Q -JqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3Nx2/zu+z18DwPw76L5GG//a -QMJS9/7jOvdqdzXQ2o3rXhhqMcceujwbKNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2 -WP0+GfPtDCapkzj4T8FdIgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP -20gaXT73y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRthAAn -ZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgocQIgfksILAAX/8sgC -SqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG -8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2 -+/CfXGJx7Tz0RzgQKzAfBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8E -BAMCAYYwDQYJKoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z -dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQL1EuxBRa3ugZ -4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+ -mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSoag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpq -A1Ihn0CoZ1Dy81of398j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpg -Y+RdM4kX2TGq2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP -pm8m1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJVOCiNUW7d -FGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH6aLcr34YEoP9VhdBLtUp -gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm -X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS ------END CERTIFICATE----- - Comodo AAA Services root ======================== -----BEGIN CERTIFICATE----- @@ -496,36 +367,6 @@ KVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEYWQPJIrSPnNVeKtelttQKbfi3 QBFGmh95DmK/D5fs4C8fF5Q= -----END CERTIFICATE----- -Taiwan GRCA -=========== ------BEGIN CERTIFICATE----- -MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/MQswCQYDVQQG -EwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X -DTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1owPzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dv -dmVybm1lbnQgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQAD -ggIPADCCAgoCggIBAJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qN -w8XRIePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1qgQdW8or5 -BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKyyhwOeYHWtXBiCAEuTk8O -1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAtsF/tnyMKtsc2AtJfcdgEWFelq16TheEfO -htX7MfP6Mb40qij7cEwdScevLJ1tZqa2jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wov -J5pGfaENda1UhhXcSTvxls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7 -Q3hub/FCVGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHKYS1t -B6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoHEgKXTiCQ8P8NHuJB -O9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThNXo+EHWbNxWCWtFJaBYmOlXqYwZE8 -lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1UdDgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNV -HRMEBTADAQH/MDkGBGcqBwAEMTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg2 -09yewDL7MTqKUWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ -TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyfqzvS/3WXy6Tj -Zwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaKZEk9GhiHkASfQlK3T8v+R0F2 -Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFEJPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlU -D7gsL0u8qV1bYH+Mh6XgUmMqvtg7hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6Qz -DxARvBMB1uUO07+1EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+Hbk -Z6MmnD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WXudpVBrkk -7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44VbnzssQwmSNOXfJIoRIM3BKQ -CZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDeLMDDav7v3Aun+kbfYNucpllQdSNpc5Oy -+fwC00fmcc4QAu4njIT/rEUNE1yDMuAlpYYsfPQS ------END CERTIFICATE----- - DigiCert Assured ID Root CA =========================== -----BEGIN CERTIFICATE----- @@ -592,28 +433,6 @@ mNEVX58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep+OkuE6N36B9K -----END CERTIFICATE----- -Certplus Class 2 Primary CA -=========================== ------BEGIN CERTIFICATE----- -MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAwPTELMAkGA1UE -BhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFzcyAyIFByaW1hcnkgQ0EwHhcN -OTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2Vy -dHBsdXMxGzAZBgNVBAMTEkNsYXNzIDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBANxQltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR -5aiRVhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyLkcAbmXuZ -Vg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCdEgETjdyAYveVqUSISnFO -YFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yasH7WLO7dDWWuwJKZtkIvEcupdM5i3y95e -e++U8Rs+yskhwcWYAqqi9lt3m/V+llU0HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRME -CDAGAQH/AgEKMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJ -YIZIAYb4QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMuY29t -L0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/AN9WM2K191EBkOvD -P9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8yfFC82x/xXp8HVGIutIKPidd3i1R -TtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMRFcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+ -7UCmnYR0ObncHoUW2ikbhiMAybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW -//1IMwrh3KWBkJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 -l7+ijrRU ------END CERTIFICATE----- - DST Root CA X3 ============== -----BEGIN CERTIFICATE----- @@ -696,78 +515,6 @@ DIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ub DgEj8Z+7fNzcbBGXJbLytGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u -----END CERTIFICATE----- -GeoTrust Primary Certification Authority -======================================== ------BEGIN CERTIFICATE----- -MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQG -EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMoR2VvVHJ1c3QgUHJpbWFyeSBD -ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgx -CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQ -cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB -CgKCAQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9AWbK7hWN -b6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjAZIVcFU2Ix7e64HXprQU9 -nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE07e9GceBrAqg1cmuXm2bgyxx5X9gaBGge -RwLmnWDiNpcB3841kt++Z8dtd1k7j53WkBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGt -tm/81w7a4DSwDRp35+MImO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD -AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJKoZI -hvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ16CePbJC/kRYkRj5K -Ts4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl4b7UVXGYNTq+k+qurUKykG/g/CFN -NWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6KoKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHa -Floxt/m0cYASSJlyc1pZU8FjUjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG -1riR/aYNKxoUAT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= ------END CERTIFICATE----- - -thawte Primary Root CA -====================== ------BEGIN CERTIFICATE----- -MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCBqTELMAkGA1UE -BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 -aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv -cml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3 -MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwg -SW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMv -KGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMT -FnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCs -oPD7gFnUnMekz52hWXMJEEUMDSxuaPFsW0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ -1CRfBsDMRJSUjQJib+ta3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGc -q/gcfomk6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6Sk/K -aAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94JNqR32HuHUETVPm4p -afs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD -VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XPr87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUF -AAOCAQEAeRHAS7ORtvzw6WfUDW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeE -uzLlQRHAd9mzYJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX -xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2/qxAeeWsEG89 -jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/LHbTY5xZ3Y+m4Q6gLkH3LpVH -z7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7jVaMaA== ------END CERTIFICATE----- - -VeriSign Class 3 Public Primary Certification Authority - G5 -============================================================ ------BEGIN CERTIFICATE----- -MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCByjELMAkGA1UE -BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO -ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk -IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRp -ZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCB -yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln -biBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBh -dXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmlt -YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw -ggEKAoIBAQCvJAgIKXo1nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKz -j/i5Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIzSdhD -Y2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO+QueQA5N06tRn/ -Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R70r -fk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/ -BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2Uv -Z2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy -aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKvMzEzMA0GCSqG -SIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzEp6B4Eq1iDkVwZMXnl2YtmAl+ -X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKE -KQsTb47bDN0lAtukixlE0kF6BWlKWE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiC -Km0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vE -ZV8NhnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq ------END CERTIFICATE----- - SecureTrust CA ============== -----BEGIN CERTIFICATE----- @@ -876,29 +623,6 @@ FAkK+qDmfQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdvGDeA U/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= -----END CERTIFICATE----- -OISTE WISeKey Global Root GA CA -=============================== ------BEGIN CERTIFICATE----- -MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UE -BhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHlyaWdodCAoYykgMjAwNTEiMCAG -A1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBH -bG9iYWwgUm9vdCBHQSBDQTAeFw0wNTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYD -VQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIw -IAYDVQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5 -IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy0+zAJs9 -Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxRVVuuk+g3/ytr6dTqvirdqFEr12bDYVxg -Asj1znJ7O7jyTmUIms2kahnBAbtzptf2w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbD -d50kc3vkDIzh2TbhmYsFmQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ -/yxViJGg4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t94B3R -LoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw -AwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ -KoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOxSPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vIm -MMkQyh2I+3QZH4VFvbBsUfk2ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4 -+vg1YFkCExh8vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa -hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZiFj4A4xylNoEY -okxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ/L7fCg0= ------END CERTIFICATE----- - Certigna ======== -----BEGIN CERTIFICATE----- @@ -921,28 +645,6 @@ PBS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== -----END CERTIFICATE----- -Deutsche Telekom Root CA 2 -========================== ------BEGIN CERTIFICATE----- -MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMT -RGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEG -A1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5 -MjM1OTAwWjBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0G -A1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBS -b290IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEUha88EOQ5 -bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhCQN/Po7qCWWqSG6wcmtoI -KyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1MjwrrFDa1sPeg5TKqAyZMg4ISFZbavva4VhY -AUlfckE8FQYBjl2tqriTtM2e66foai1SNNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aK -Se5TBY8ZTNXeWHmb0mocQqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTV -jlsB9WoHtxa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAPBgNV -HRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAlGRZrTlk5ynr -E/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756AbrsptJh6sTtU6zkXR34ajgv8HzFZMQSy -zhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpaIzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8 -rZ7/gFnkm0W09juwzTkZmDLl6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4G -dyd1Lx+4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU -Cm26OWMohpLzGITY+9HPBVZkVw== ------END CERTIFICATE----- - Cybertrust Global Root ====================== -----BEGIN CERTIFICATE----- @@ -1016,136 +718,6 @@ vBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNwi/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7Nz TogVZ96edhBiIL5VaZVDADlN9u6wWk5JRFRYX0KD -----END CERTIFICATE----- -GeoTrust Primary Certification Authority - G3 -============================================= ------BEGIN CERTIFICATE----- -MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UE -BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA4IEdlb1RydXN0 -IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFy -eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIz -NTk1OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAo -YykgMjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMT -LUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI -hvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5j -K/BGvESyiaHAKAxJcCGVn2TAppMSAmUmhsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdE -c5IiaacDiGydY8hS2pgn5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3C -IShwiP/WJmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exALDmKu -dlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZChuOl1UcCAwEAAaNC -MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMR5yo6hTgMdHNxr -2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IBAQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9 -cr5HqQ6XErhK8WTTOd8lNNTBzU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbE -Ap7aDHdlDkQNkv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD -AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUHSJsMC8tJP33s -t/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2Gspki4cErx5z481+oghLrGREt ------END CERTIFICATE----- - -thawte Primary Root CA - G2 -=========================== ------BEGIN CERTIFICATE----- -MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDELMAkGA1UEBhMC -VVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMpIDIwMDcgdGhhd3RlLCBJbmMu -IC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3Qg -Q0EgLSBHMjAeFw0wNzExMDUwMDAwMDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEV -MBMGA1UEChMMdGhhd3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBG -b3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAt -IEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/BebfowJPDQfGAFG6DAJS -LSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6papu+7qzcMBniKI11KOasf2twu8x+qi5 -8/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU -mtgAMADna3+FGO6Lts6KDPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUN -G4k8VIZ3KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41oxXZ3K -rr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== ------END CERTIFICATE----- - -thawte Primary Root CA - G3 -=========================== ------BEGIN CERTIFICATE----- -MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCBrjELMAkGA1UE -BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 -aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv -cml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0w -ODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh -d3RlLCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMTgwNgYD -VQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIG -A1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A -MIIBCgKCAQEAsr8nLPvb2FvdeHsbnndmgcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2At -P0LMqmsywCPLLEHd5N/8YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC -+BsUa0Lfb1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS99irY -7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2SzhkGcuYMXDhpxwTW -vGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUkOQIDAQABo0IwQDAPBgNVHRMBAf8E -BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJ -KoZIhvcNAQELBQADggEBABpA2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweK -A3rD6z8KLFIWoCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu -t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7cKUGRIjxpp7sC -8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fMm7v/OeZWYdMKp8RcTGB7BXcm -er/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZuMdRAGmI0Nj81Aa6sY6A= ------END CERTIFICATE----- - -GeoTrust Primary Certification Authority - G2 -============================================= ------BEGIN CERTIFICATE----- -MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDELMAkGA1UEBhMC -VVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA3IEdlb1RydXN0IElu -Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBD -ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1 -OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg -MjAwNyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMTLUdl -b1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjB2MBAGByqGSM49AgEG -BSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcLSo17VDs6bl8VAsBQps8lL33KSLjHUGMc -KiEIfJo22Av+0SbFWDEwKCXzXV2juLaltJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYD -VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+ -EVXVMAoGCCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGTqQ7m -ndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBuczrD6ogRLQy7rQkgu2 -npaqBA+K ------END CERTIFICATE----- - -VeriSign Universal Root Certification Authority -=============================================== ------BEGIN CERTIFICATE----- -MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCBvTELMAkGA1UE -BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO -ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk -IHVzZSBvbmx5MTgwNgYDVQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9u -IEF1dGhvcml0eTAeFw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJV -UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv -cmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl -IG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNhbCBSb290IENlcnRpZmljYXRpb24gQXV0 -aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj -1mCOkdeQmIN65lgZOIzF9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGP -MiJhgsWHH26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+HLL72 -9fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN/BMReYTtXlT2NJ8I -AfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPTrJ9VAMf2CGqUuV/c4DPxhGD5WycR -tPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0G -CCsGAQUFBwEMBGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2O -a8PPgGrUSBgsexkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud -DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4sAPmLGd75JR3 -Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+seQxIcaBlVZaDrHC1LGmWazx -Y8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTx -P/jgdFcrGJ2BtMQo2pSXpXDrrB2+BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+P -wGZsY6rp2aQW9IHRlRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4 -mJO37M2CYfE45k+XmCpajQ== ------END CERTIFICATE----- - -VeriSign Class 3 Public Primary Certification Authority - G4 -============================================================ ------BEGIN CERTIFICATE----- -MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjELMAkGA1UEBhMC -VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3 -b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVz -ZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjEL -MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU -cnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRo -b3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5 -IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8 -Utpkmw4tXNherJI9/gHmGUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGz -rl0Bp3vefLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUwAwEB -/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEw -HzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVyaXNpZ24u -Y29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMWkf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMD -A2gAMGUCMGYhDBgmYFo4e1ZC4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIx -AJw9SDkjOVgaFRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== ------END CERTIFICATE----- - NetLock Arany (Class Gold) F┼Сtan├║s├нtv├бny ======================================== -----BEGIN CERTIFICATE----- @@ -1170,38 +742,6 @@ NwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2XjG4Kvte9nHfRCaexOYNkbQu dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= -----END CERTIFICATE----- -Staat der Nederlanden Root CA - G2 -================================== ------BEGIN CERTIFICATE----- -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 -66+KAQ== ------END CERTIFICATE----- - Hongkong Post Root CA 1 ======================= -----BEGIN CERTIFICATE----- @@ -1833,30 +1373,6 @@ P0HHRwA11fXT91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpFQUWw== -----END CERTIFICATE----- -EE Certification Centre Root CA -=============================== ------BEGIN CERTIFICATE----- -MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG -EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy -dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw -MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB -UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy -ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM -TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2 -rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw -93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN -P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T -AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ -MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF -BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj -xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM -lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u -uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU -3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM -dcGWxZ0= ------END CERTIFICATE----- - D-TRUST Root Class 3 CA 2 2009 ============================== -----BEGIN CERTIFICATE----- @@ -2419,36 +1935,6 @@ uglB4Zf4+/2a4n0Sye18ZNPLBSWLVtmg515dTguDnFt2KaAJJiFqYgIwcdK1j1zqO+F4CYWodZI7 yFz9SO8NdCKoCOJuxUnOxwy8p2Fp8fc74SrL+SvzZpA3 -----END CERTIFICATE----- -Staat der Nederlanden Root CA - G3 -================================== ------BEGIN CERTIFICATE----- -MIIFdDCCA1ygAwIBAgIEAJiiOTANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJOTDEeMBwGA1UE -CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g -Um9vdCBDQSAtIEczMB4XDTEzMTExNDExMjg0MloXDTI4MTExMzIzMDAwMFowWjELMAkGA1UEBhMC -TkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5l -ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL4y -olQPcPssXFnrbMSkUeiFKrPMSjTysF/zDsccPVMeiAho2G89rcKezIJnByeHaHE6n3WWIkYFsO2t -x1ueKt6c/DrGlaf1F2cY5y9JCAxcz+bMNO14+1Cx3Gsy8KL+tjzk7FqXxz8ecAgwoNzFs21v0IJy -EavSgWhZghe3eJJg+szeP4TrjTgzkApyI/o1zCZxMdFyKJLZWyNtZrVtB0LrpjPOktvA9mxjeM3K -Tj215VKb8b475lRgsGYeCasH/lSJEULR9yS6YHgamPfJEf0WwTUaVHXvQ9Plrk7O53vDxk5hUUur -mkVLoR9BvUhTFXFkC4az5S6+zqQbwSmEorXLCCN2QyIkHxcE1G6cxvx/K2Ya7Irl1s9N9WMJtxU5 -1nus6+N86U78dULI7ViVDAZCopz35HCz33JvWjdAidiFpNfxC95DGdRKWCyMijmev4SH8RY7Ngzp -07TKbBlBUgmhHbBqv4LvcFEhMtwFdozL92TkA1CvjJFnq8Xy7ljY3r735zHPbMk7ccHViLVlvMDo -FxcHErVc0qsgk7TmgoNwNsXNo42ti+yjwUOH5kPiNL6VizXtBznaqB16nzaeErAMZRKQFWDZJkBE -41ZgpRDUajz9QdwOWke275dhdU/Z/seyHdTtXUmzqWrLZoQT1Vyg3N9udwbRcXXIV2+vD3dbAgMB -AAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRUrfrHkleu -yjWcLhL75LpdINyUVzANBgkqhkiG9w0BAQsFAAOCAgEAMJmdBTLIXg47mAE6iqTnB/d6+Oea31BD -U5cqPco8R5gu4RV78ZLzYdqQJRZlwJ9UXQ4DO1t3ApyEtg2YXzTdO2PCwyiBwpwpLiniyMMB8jPq -KqrMCQj3ZWfGzd/TtiunvczRDnBfuCPRy5FOCvTIeuXZYzbB1N/8Ipf3YF3qKS9Ysr1YvY2WTxB1 -v0h7PVGHoTx0IsL8B3+A3MSs/mrBcDCw6Y5p4ixpgZQJut3+TcCDjJRYwEYgr5wfAvg1VUkvRtTA -8KCWAg8zxXHzniN9lLf9OtMJgwYh/WA9rjLA0u6NpvDntIJ8CsxwyXmA+P5M9zWEGYox+wrZ13+b -8KKaa8MFSu1BYBQw0aoRQm7TIwIEC8Zl3d1Sd9qBa7Ko+gE4uZbqKmxnl4mUnrzhVNXkanjvSr0r -mj1AfsbAddJu+2gw7OyLnflJNZoaLNmzlTnVHpL3prllL+U9bTpITAjc5CgSKL59NVzq4BZ+Extq -1z7XnvwtdbLBFNUjA9tbbws+eC8N3jONFrdI54OagQ97wUNNVQQXOEpR1VmiiXTTn74eS9fGbbeI -JG9gkaSChVtWQbzQRKtqE77RLFi3EjNYsjdj3BP1lB0/QFH1T/U67cjF68IeHRaVesd+QnGTbksV -tzDfqu1XhUisHWrdOWnk4Xl4vs4Fv6EM94B7IWcnMFk= ------END CERTIFICATE----- - Staat der Nederlanden EV Root CA ================================ -----BEGIN CERTIFICATE----- @@ -2613,37 +2099,6 @@ kbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+ZAAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3C ekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su -----END CERTIFICATE----- -Certinomis - Root CA -==================== ------BEGIN CERTIFICATE----- -MIIFkjCCA3qgAwIBAgIBATANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJGUjETMBEGA1UEChMK -Q2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxHTAbBgNVBAMTFENlcnRpbm9taXMg -LSBSb290IENBMB4XDTEzMTAyMTA5MTcxOFoXDTMzMTAyMTA5MTcxOFowWjELMAkGA1UEBhMCRlIx -EzARBgNVBAoTCkNlcnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMR0wGwYDVQQDExRD -ZXJ0aW5vbWlzIC0gUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANTMCQos -P5L2fxSeC5yaah1AMGT9qt8OHgZbn1CF6s2Nq0Nn3rD6foCWnoR4kkjW4znuzuRZWJflLieY6pOo -d5tK8O90gC3rMB+12ceAnGInkYjwSond3IjmFPnVAy//ldu9n+ws+hQVWZUKxkd8aRi5pwP5ynap -z8dvtF4F/u7BUrJ1Mofs7SlmO/NKFoL21prbcpjp3vDFTKWrteoB4owuZH9kb/2jJZOLyKIOSY00 -8B/sWEUuNKqEUL3nskoTuLAPrjhdsKkb5nPJWqHZZkCqqU2mNAKthH6yI8H7KsZn9DS2sJVqM09x -RLWtwHkziOC/7aOgFLScCbAK42C++PhmiM1b8XcF4LVzbsF9Ri6OSyemzTUK/eVNfaoqoynHWmgE -6OXWk6RiwsXm9E/G+Z8ajYJJGYrKWUM66A0ywfRMEwNvbqY/kXPLynNvEiCL7sCCeN5LLsJJwx3t -FvYk9CcbXFcx3FXuqB5vbKziRcxXV4p1VxngtViZSTYxPDMBbRZKzbgqg4SGm/lg0h9tkQPTYKbV -PZrdd5A9NaSfD171UkRpucC63M9933zZxKyGIjK8e2uR73r4F2iw4lNVYC2vPsKD2NkJK/DAZNuH -i5HMkesE/Xa0lZrmFAYb1TQdvtj/dBxThZngWVJKYe2InmtJiUZ+IFrZ50rlau7SZRFDAgMBAAGj -YzBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTvkUz1pcMw6C8I -6tNxIqSSaHh02TAfBgNVHSMEGDAWgBTvkUz1pcMw6C8I6tNxIqSSaHh02TANBgkqhkiG9w0BAQsF -AAOCAgEAfj1U2iJdGlg+O1QnurrMyOMaauo++RLrVl89UM7g6kgmJs95Vn6RHJk/0KGRHCwPT5iV -WVO90CLYiF2cN/z7ZMF4jIuaYAnq1fohX9B0ZedQxb8uuQsLrbWwF6YSjNRieOpWauwK0kDDPAUw -Pk2Ut59KA9N9J0u2/kTO+hkzGm2kQtHdzMjI1xZSg081lLMSVX3l4kLr5JyTCcBMWwerx20RoFAX -lCOotQqSD7J6wWAsOMwaplv/8gzjqh8c3LigkyfeY+N/IZ865Z764BNqdeuWXGKRlI5nU7aJ+BIJ -y29SWwNyhlCVCNSNh4YVH5Uk2KRvms6knZtt0rJ2BobGVgjF6wnaNsIbW0G+YSrjcOa4pvi2WsS9 -Iff/ql+hbHY5ZtbqTFXhADObE5hjyW/QASAJN1LnDE8+zbz1X5YnpyACleAu6AdBBR8Vbtaw5Bng -DwKTACdyxYvRVB9dSsNAl35VpnzBMwQUAR1JIGkLGZOdblgi90AMRgwjY/M50n92Uaf0yKHxDHYi -I0ZSKS3io0EHVmmY0gUJvGnHWmHNj4FgFU2A3ZDifcRQ8ow7bkrHxuaAKzyBvBGAFhAn1/DNP3nM -cyrDflOR1m749fPH0FFNjkulW+YZFzvWgQncItzujrnEj1PhZ7szuIgVRs/taTX/dQ1G885x4cVr -hkIGuUE= ------END CERTIFICATE----- - OISTE WISeKey Global Root GB CA =============================== -----BEGIN CERTIFICATE----- @@ -2906,37 +2361,6 @@ MGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlwCkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1 AE47xDqUEpHJWEadIRNyp4iciuRMStuW1KyLa2tJElMzrdfkviT8tQp21KW8EA== -----END CERTIFICATE----- -LuxTrust Global Root 2 -====================== ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- - TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1 ============================================= -----BEGIN CERTIFICATE----- @@ -3399,3 +2823,392 @@ tlu3zM63Nwf9JtmYhST/WSMDmu2dnajkXjjO11INb9I/bbEFa0nOipFGc/T2L/Coc3cOZayhjWZS aX5LaAzHHjcng6WMxwLkFM1JAbBzs/3GkDpv0mztO+7skb6iQ12LAEpmJURw3kAP+HwV96LOPNde E4yBFxgX0b3xdxA61GU5wSesVywlVP+i2k+KYTlerj1KjL0= -----END CERTIFICATE----- + +emSign Root CA - G1 +=================== +-----BEGIN CERTIFICATE----- +MIIDlDCCAnygAwIBAgIKMfXkYgxsWO3W2DANBgkqhkiG9w0BAQsFADBnMQswCQYDVQQGEwJJTjET +MBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRl +ZDEcMBoGA1UEAxMTZW1TaWduIFJvb3QgQ0EgLSBHMTAeFw0xODAyMTgxODMwMDBaFw00MzAyMTgx +ODMwMDBaMGcxCzAJBgNVBAYTAklOMRMwEQYDVQQLEwplbVNpZ24gUEtJMSUwIwYDVQQKExxlTXVk +aHJhIFRlY2hub2xvZ2llcyBMaW1pdGVkMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEcxMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk0u76WaK7p1b1TST0Bsew+eeuGQzf2N4aLTN +LnF115sgxk0pvLZoYIr3IZpWNVrzdr3YzZr/k1ZLpVkGoZM0Kd0WNHVO8oG0x5ZOrRkVUkr+PHB1 +cM2vK6sVmjM8qrOLqs1D/fXqcP/tzxE7lM5OMhbTI0Aqd7OvPAEsbO2ZLIvZTmmYsvePQbAyeGHW +DV/D+qJAkh1cF+ZwPjXnorfCYuKrpDhMtTk1b+oDafo6VGiFbdbyL0NVHpENDtjVaqSW0RM8LHhQ +6DqS0hdW5TUaQBw+jSztOd9C4INBdN+jzcKGYEho42kLVACL5HZpIQ15TjQIXhTCzLG3rdd8cIrH +hQIDAQABo0IwQDAdBgNVHQ4EFgQU++8Nhp6w492pufEhF38+/PB3KxowDgYDVR0PAQH/BAQDAgEG +MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFn/8oz1h31xPaOfG1vR2vjTnGs2 +vZupYeveFix0PZ7mddrXuqe8QhfnPZHr5X3dPpzxz5KsbEjMwiI/aTvFthUvozXGaCocV685743Q +NcMYDHsAVhzNixl03r4PEuDQqqE/AjSxcM6dGNYIAwlG7mDgfrbESQRRfXBgvKqy/3lyeqYdPV8q ++Mri/Tm3R7nrft8EI6/6nAYH6ftjk4BAtcZsCjEozgyfz7MjNYBBjWzEN3uBL4ChQEKF6dk4jeih +U80Bv2noWgbyRQuQ+q7hv53yrlc8pa6yVvSLZUDp/TGBLPQ5Cdjua6e0ph0VpZj3AYHYhX3zUVxx +iN66zB+Afko= +-----END CERTIFICATE----- + +emSign ECC Root CA - G3 +======================= +-----BEGIN CERTIFICATE----- +MIICTjCCAdOgAwIBAgIKPPYHqWhwDtqLhDAKBggqhkjOPQQDAzBrMQswCQYDVQQGEwJJTjETMBEG +A1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRlZDEg +MB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0gRzMwHhcNMTgwMjE4MTgzMDAwWhcNNDMwMjE4 +MTgzMDAwWjBrMQswCQYDVQQGEwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11 +ZGhyYSBUZWNobm9sb2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0g +RzMwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQjpQy4LRL1KPOxst3iAhKAnjlfSU2fySU0WXTsuwYc +58Byr+iuL+FBVIcUqEqy6HyC5ltqtdyzdc6LBtCGI79G1Y4PPwT01xySfvalY8L1X44uT6EYGQIr +MgqCZH0Wk9GjQjBAMB0GA1UdDgQWBBR8XQKEE9TMipuBzhccLikenEhjQjAOBgNVHQ8BAf8EBAMC +AQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNpADBmAjEAvvNhzwIQHWSVB7gYboiFBS+D +CBeQyh+KTOgNG3qxrdWBCUfvO6wIBHxcmbHtRwfSAjEAnbpV/KlK6O3t5nYBQnvI+GDZjVGLVTv7 +jHvrZQnD+JbNR6iC8hZVdyR+EhCVBCyj +-----END CERTIFICATE----- + +emSign Root CA - C1 +=================== +-----BEGIN CERTIFICATE----- +MIIDczCCAlugAwIBAgILAK7PALrEzzL4Q7IwDQYJKoZIhvcNAQELBQAwVjELMAkGA1UEBhMCVVMx +EzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQDExNlbVNp +Z24gUm9vdCBDQSAtIEMxMB4XDTE4MDIxODE4MzAwMFoXDTQzMDIxODE4MzAwMFowVjELMAkGA1UE +BhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQD +ExNlbVNpZ24gUm9vdCBDQSAtIEMxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz+up +ufGZBczYKCFK83M0UYRWEPWgTywS4/oTmifQz/l5GnRfHXk5/Fv4cI7gklL35CX5VIPZHdPIWoU/ +Xse2B+4+wM6ar6xWQio5JXDWv7V7Nq2s9nPczdcdioOl+yuQFTdrHCZH3DspVpNqs8FqOp099cGX +OFgFixwR4+S0uF2FHYP+eF8LRWgYSKVGczQ7/g/IdrvHGPMF0Ybzhe3nudkyrVWIzqa2kbBPrH4V +I5b2P/AgNBbeCsbEBEV5f6f9vtKppa+cxSMq9zwhbL2vj07FOrLzNBL834AaSaTUqZX3noleooms +lMuoaJuvimUnzYnu3Yy1aylwQ6BpC+S5DwIDAQABo0IwQDAdBgNVHQ4EFgQU/qHgcB4qAzlSWkK+ +XJGFehiqTbUwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQAD +ggEBAMJKVvoVIXsoounlHfv4LcQ5lkFMOycsxGwYFYDGrK9HWS8mC+M2sO87/kOXSTKZEhVb3xEp +/6tT+LvBeA+snFOvV71ojD1pM/CjoCNjO2RnIkSt1XHLVip4kqNPEjE2NuLe/gDEo2APJ62gsIq1 +NnpSob0n9CAnYuhNlCQT5AoE6TyrLshDCUrGYQTlSTR+08TI9Q/Aqum6VF7zYytPT1DU/rl7mYw9 +wC68AivTxEDkigcxHpvOJpkT+xHqmiIMERnHXhuBUDDIlhJu58tBf5E7oke3VIAb3ADMmpDqw8NQ +BmIMMMAVSKeoWXzhriKi4gp6D/piq1JM4fHfyr6DDUI= +-----END CERTIFICATE----- + +emSign ECC Root CA - C3 +======================= +-----BEGIN CERTIFICATE----- +MIICKzCCAbGgAwIBAgIKe3G2gla4EnycqDAKBggqhkjOPQQDAzBaMQswCQYDVQQGEwJVUzETMBEG +A1UECxMKZW1TaWduIFBLSTEUMBIGA1UEChMLZU11ZGhyYSBJbmMxIDAeBgNVBAMTF2VtU2lnbiBF +Q0MgUm9vdCBDQSAtIEMzMB4XDTE4MDIxODE4MzAwMFoXDTQzMDIxODE4MzAwMFowWjELMAkGA1UE +BhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMSAwHgYDVQQD +ExdlbVNpZ24gRUNDIFJvb3QgQ0EgLSBDMzB2MBAGByqGSM49AgEGBSuBBAAiA2IABP2lYa57JhAd +6bciMK4G9IGzsUJxlTm801Ljr6/58pc1kjZGDoeVjbk5Wum739D+yAdBPLtVb4OjavtisIGJAnB9 +SMVK4+kiVCJNk7tCDK93nCOmfddhEc5lx/h//vXyqaNCMEAwHQYDVR0OBBYEFPtaSNCAIEDyqOkA +B2kZd6fmw/TPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49BAMDA2gA +MGUCMQC02C8Cif22TGK6Q04ThHK1rt0c3ta13FaPWEBaLd4gTCKDypOofu4SQMfWh0/434UCMBwU +ZOR8loMRnLDRWmFLpg9J0wD8ofzkpf9/rdcw0Md3f76BB1UwUCAU9Vc4CqgxUQ== +-----END CERTIFICATE----- + +Hongkong Post Root CA 3 +======================= +-----BEGIN CERTIFICATE----- +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 +dBb9HxEGmpv0 +-----END CERTIFICATE----- + +Entrust Root Certification Authority - G4 +========================================= +-----BEGIN CERTIFICATE----- +MIIGSzCCBDOgAwIBAgIRANm1Q3+vqTkPAAAAAFVlrVgwDQYJKoZIhvcNAQELBQAwgb4xCzAJBgNV +BAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3Qu +bmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1 +dGhvcml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1 +dGhvcml0eSAtIEc0MB4XDTE1MDUyNzExMTExNloXDTM3MTIyNzExNDExNlowgb4xCzAJBgNVBAYT +AlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0 +L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eSAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsewsQu7i0TD/pZJH4i3D +umSXbcr3DbVZwbPLqGgZ2K+EbTBwXX7zLtJTmeH+H17ZSK9dE43b/2MzTdMAArzE+NEGCJR5WIoV +3imz/f3ET+iq4qA7ec2/a0My3dl0ELn39GjUu9CH1apLiipvKgS1sqbHoHrmSKvS0VnM1n4j5pds +8ELl3FFLFUHtSUrJ3hCX1nbB76W1NhSXNdh4IjVS70O92yfbYVaCNNzLiGAMC1rlLAHGVK/XqsEQ +e9IFWrhAnoanw5CGAlZSCXqc0ieCU0plUmr1POeo8pyvi73TDtTUXm6Hnmo9RR3RXRv06QqsYJn7 +ibT/mCzPfB3pAqoEmh643IhuJbNsZvc8kPNXwbMv9W3y+8qh+CmdRouzavbmZwe+LGcKKh9asj5X +xNMhIWNlUpEbsZmOeX7m640A2Vqq6nPopIICR5b+W45UYaPrL0swsIsjdXJ8ITzI9vF01Bx7owVV +7rtNOzK+mndmnqxpkCIHH2E6lr7lmk/MBTwoWdPBDFSoWWG9yHJM6Nyfh3+9nEg2XpWjDrk4JFX8 +dWbrAuMINClKxuMrLzOg2qOGpRKX/YAr2hRC45K9PvJdXmd0LhyIRyk0X+IyqJwlN4y6mACXi0mW +Hv0liqzc2thddG5msP9E36EYxr5ILzeUePiVSj9/E15dWf10hkNjc0kCAwEAAaNCMEAwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJ84xFYjwznooHFs6FRM5Og6sb9n +MA0GCSqGSIb3DQEBCwUAA4ICAQAS5UKme4sPDORGpbZgQIeMJX6tuGguW8ZAdjwD+MlZ9POrYs4Q +jbRaZIxowLByQzTSGwv2LFPSypBLhmb8qoMi9IsabyZIrHZ3CL/FmFz0Jomee8O5ZDIBf9PD3Vht +7LGrhFV0d4QEJ1JrhkzO3bll/9bGXp+aEJlLdWr+aumXIOTkdnrG0CSqkM0gkLpHZPt/B7NTeLUK +YvJzQ85BK4FqLoUWlFPUa19yIqtRLULVAJyZv967lDtX/Zr1hstWO1uIAeV8KEsD+UmDfLJ/fOPt +jqF/YFOOVZ1QNBIPt5d7bIdKROf1beyAN/BYGW5KaHbwH5Lk6rWS02FREAutp9lfx1/cH6NcjKF+ +m7ee01ZvZl4HliDtC3T7Zk6LERXpgUl+b7DUUH8i119lAg2m9IUe2K4GS0qn0jFmwvjO5QimpAKW +RGhXxNUzzxkvFMSUHHuk2fCfDrGA4tGeEWSpiBE6doLlYsKA2KSD7ZPvfC+QsDJMlhVoSFLUmQjA +JOgc47OlIQ6SwJAfzyBfyjs4x7dtOvPmRLgOMWuIjnDrnBdSqEGULoe256YSxXXfW8AKbnuk5F6G ++TaU33fD6Q3AOfF5u0aOq0NZJ7cguyPpVkAh7DE9ZapD8j3fcEThuk0mEDuYn/PIjhs4ViFqUZPT +kcpG2om3PVODLAgfi49T3f+sHw== +-----END CERTIFICATE----- + +Microsoft ECC Root Certificate Authority 2017 +============================================= +-----BEGIN CERTIFICATE----- +MIICWTCCAd+gAwIBAgIQZvI9r4fei7FK6gxXMQHC7DAKBggqhkjOPQQDAzBlMQswCQYDVQQGEwJV +UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNyb3NvZnQgRUND +IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwHhcNMTkxMjE4MjMwNjQ1WhcNNDIwNzE4 +MjMxNjA0WjBlMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYw +NAYDVQQDEy1NaWNyb3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwdjAQ +BgcqhkjOPQIBBgUrgQQAIgNiAATUvD0CQnVBEyPNgASGAlEvaqiBYgtlzPbKnR5vSmZRogPZnZH6 +thaxjG7efM3beaYvzrvOcS/lpaso7GMEZpn4+vKTEAXhgShC48Zo9OYbhGBKia/teQ87zvH2RPUB +eMCjVDBSMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTIy5lycFIM ++Oa+sgRXKSrPQhDtNTAQBgkrBgEEAYI3FQEEAwIBADAKBggqhkjOPQQDAwNoADBlAjBY8k3qDPlf +Xu5gKcs68tvWMoQZP3zVL8KxzJOuULsJMsbG7X7JNpQS5GiFBqIb0C8CMQCZ6Ra0DvpWSNSkMBaR +eNtUjGUBiudQZsIxtzm6uBoiB078a1QWIP8rtedMDE2mT3M= +-----END CERTIFICATE----- + +Microsoft RSA Root Certificate Authority 2017 +============================================= +-----BEGIN CERTIFICATE----- +MIIFqDCCA5CgAwIBAgIQHtOXCV/YtLNHcB6qvn9FszANBgkqhkiG9w0BAQwFADBlMQswCQYDVQQG +EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNyb3NvZnQg +UlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwHhcNMTkxMjE4MjI1MTIyWhcNNDIw +NzE4MjMwMDIzWjBlMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9u +MTYwNAYDVQQDEy1NaWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcw +ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKW76UM4wplZEWCpW9R2LBifOZNt9GkMml +7Xhqb0eRaPgnZ1AzHaGm++DlQ6OEAlcBXZxIQIJTELy/xztokLaCLeX0ZdDMbRnMlfl7rEqUrQ7e +S0MdhweSE5CAg2Q1OQT85elss7YfUJQ4ZVBcF0a5toW1HLUX6NZFndiyJrDKxHBKrmCk3bPZ7Pw7 +1VdyvD/IybLeS2v4I2wDwAW9lcfNcztmgGTjGqwu+UcF8ga2m3P1eDNbx6H7JyqhtJqRjJHTOoI+ +dkC0zVJhUXAoP8XFWvLJjEm7FFtNyP9nTUwSlq31/niol4fX/V4ggNyhSyL71Imtus5Hl0dVe49F +yGcohJUcaDDv70ngNXtk55iwlNpNhTs+VcQor1fznhPbRiefHqJeRIOkpcrVE7NLP8TjwuaGYaRS +MLl6IE9vDzhTyzMMEyuP1pq9KsgtsRx9S1HKR9FIJ3Jdh+vVReZIZZ2vUpC6W6IYZVcSn2i51BVr +lMRpIpj0M+Dt+VGOQVDJNE92kKz8OMHY4Xu54+OU4UZpyw4KUGsTuqwPN1q3ErWQgR5WrlcihtnJ +0tHXUeOrO8ZV/R4O03QK0dqq6mm4lyiPSMQH+FJDOvTKVTUssKZqwJz58oHhEmrARdlns87/I6KJ +ClTUFLkqqNfs+avNJVgyeY+QW5g5xAgGwax/Dj0ApQIDAQABo1QwUjAOBgNVHQ8BAf8EBAMCAYYw +DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUCctZf4aycI8awznjwNnpv7tNsiMwEAYJKwYBBAGC +NxUBBAMCAQAwDQYJKoZIhvcNAQEMBQADggIBAKyvPl3CEZaJjqPnktaXFbgToqZCLgLNFgVZJ8og +6Lq46BrsTaiXVq5lQ7GPAJtSzVXNUzltYkyLDVt8LkS/gxCP81OCgMNPOsduET/m4xaRhPtthH80 +dK2Jp86519efhGSSvpWhrQlTM93uCupKUY5vVau6tZRGrox/2KJQJWVggEbbMwSubLWYdFQl3JPk ++ONVFT24bcMKpBLBaYVu32TxU5nhSnUgnZUP5NbcA/FZGOhHibJXWpS2qdgXKxdJ5XbLwVaZOjex +/2kskZGT4d9Mozd2TaGf+G0eHdP67Pv0RR0Tbc/3WeUiJ3IrhvNXuzDtJE3cfVa7o7P4NHmJweDy +AmH3pvwPuxwXC65B2Xy9J6P9LjrRk5Sxcx0ki69bIImtt2dmefU6xqaWM/5TkshGsRGRxpl/j8nW +ZjEgQRCHLQzWwa80mMpkg/sTV9HB8Dx6jKXB/ZUhoHHBk2dxEuqPiAppGWSZI1b7rCoucL5mxAyE +7+WL85MB+GqQk2dLsmijtWKP6T+MejteD+eMuMZ87zf9dOLITzNy4ZQ5bb0Sr74MTnB8G2+NszKT +c0QWbej09+CVgI+WXTik9KveCjCHk9hNAHFiRSdLOkKEW39lt2c0Ui2cFmuqqNh7o0JMcccMyj6D +5KbvtwEwXlGjefVwaaZBRA+GsCyRxj3qrg+E +-----END CERTIFICATE----- + +e-Szigno Root CA 2017 +===================== +-----BEGIN CERTIFICATE----- +MIICQDCCAeWgAwIBAgIMAVRI7yH9l1kN9QQKMAoGCCqGSM49BAMCMHExCzAJBgNVBAYTAkhVMREw +DwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMgTHRkLjEXMBUGA1UEYQwOVkFUSFUt +MjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25vIFJvb3QgQ0EgMjAxNzAeFw0xNzA4MjIxMjA3MDZa +Fw00MjA4MjIxMjA3MDZaMHExCzAJBgNVBAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UE +CgwNTWljcm9zZWMgTHRkLjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3pp +Z25vIFJvb3QgQ0EgMjAxNzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJbcPYrYsHtvxie+RJCx +s1YVe45DJH0ahFnuY2iyxl6H0BVIHqiQrb1TotreOpCmYF9oMrWGQd+HWyx7xf58etqjYzBhMA8G +A1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSHERUI0arBeAyxr87GyZDv +vzAEwDAfBgNVHSMEGDAWgBSHERUI0arBeAyxr87GyZDvvzAEwDAKBggqhkjOPQQDAgNJADBGAiEA +tVfd14pVCzbhhkT61NlojbjcI4qKDdQvfepz7L9NbKgCIQDLpbQS+ue16M9+k/zzNY9vTlp8tLxO +svxyqltZ+efcMQ== +-----END CERTIFICATE----- + +certSIGN Root CA G2 +=================== +-----BEGIN CERTIFICATE----- +MIIFRzCCAy+gAwIBAgIJEQA0tk7GNi02MA0GCSqGSIb3DQEBCwUAMEExCzAJBgNVBAYTAlJPMRQw +EgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJR04gUk9PVCBDQSBHMjAeFw0xNzAy +MDYwOTI3MzVaFw00MjAyMDYwOTI3MzVaMEExCzAJBgNVBAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lH +TiBTQTEcMBoGA1UECxMTY2VydFNJR04gUk9PVCBDQSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIP +ADCCAgoCggIBAMDFdRmRfUR0dIf+DjuW3NgBFszuY5HnC2/OOwppGnzC46+CjobXXo9X69MhWf05 +N0IwvlDqtg+piNguLWkh59E3GE59kdUWX2tbAMI5Qw02hVK5U2UPHULlj88F0+7cDBrZuIt4Imfk +abBoxTzkbFpG583H+u/E7Eu9aqSs/cwoUe+StCmrqzWaTOTECMYmzPhpn+Sc8CnTXPnGFiWeI8Mg +wT0PPzhAsP6CRDiqWhqKa2NYOLQV07YRaXseVO6MGiKscpc/I1mbySKEwQdPzH/iV8oScLumZfNp +dWO9lfsbl83kqK/20U6o2YpxJM02PbyWxPFsqa7lzw1uKA2wDrXKUXt4FMMgL3/7FFXhEZn91Qqh +ngLjYl/rNUssuHLoPj1PrCy7Lobio3aP5ZMqz6WryFyNSwb/EkaseMsUBzXgqd+L6a8VTxaJW732 +jcZZroiFDsGJ6x9nxUWO/203Nit4ZoORUSs9/1F3dmKh7Gc+PoGD4FapUB8fepmrY7+EF3fxDTvf +95xhszWYijqy7DwaNz9+j5LP2RIUZNoQAhVB/0/E6xyjyfqZ90bp4RjZsbgyLcsUDFDYg2WD7rlc +z8sFWkz6GZdr1l0T08JcVLwyc6B49fFtHsufpaafItzRUZ6CeWRgKRM+o/1Pcmqr4tTluCRVLERL +iohEnMqE0yo7AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1Ud +DgQWBBSCIS1mxteg4BXrzkwJd8RgnlRuAzANBgkqhkiG9w0BAQsFAAOCAgEAYN4auOfyYILVAzOB +ywaK8SJJ6ejqkX/GM15oGQOGO0MBzwdw5AgeZYWR5hEit/UCI46uuR59H35s5r0l1ZUa8gWmr4UC +b6741jH/JclKyMeKqdmfS0mbEVeZkkMR3rYzpMzXjWR91M08KCy0mpbqTfXERMQlqiCA2ClV9+BB +/AYm/7k29UMUA2Z44RGx2iBfRgB4ACGlHgAoYXhvqAEBj500mv/0OJD7uNGzcgbJceaBxXntC6Z5 +8hMLnPddDnskk7RI24Zf3lCGeOdA5jGokHZwYa+cNywRtYK3qq4kNFtyDGkNzVmf9nGvnAvRCjj5 +BiKDUyUM/FHE5r7iOZULJK2v0ZXkltd0ZGtxTgI8qoXzIKNDOXZbbFD+mpwUHmUUihW9o4JFWklW +atKcsWMy5WHgUyIOpwpJ6st+H6jiYoD2EEVSmAYY3qXNL3+q1Ok+CHLsIwMCPKaq2LxndD0UF/tU +Sxfj03k9bWtJySgOLnRQvwzZRjoQhsmnP+mg7H/rpXdYaXHmgwo38oZJar55CJD2AhZkPuXaTH4M +NMn5X7azKFGnpyuqSfqNZSlO42sTp5SjLVFteAxEy9/eCG/Oo2Sr05WE1LlSVHJ7liXMvGnjSG4N +0MedJ5qq+BOS3R7fY581qRY27Iy4g/Q9iY/NtBde17MXQRBdJ3NghVdJIgc= +-----END CERTIFICATE----- + +Trustwave Global Certification Authority +======================================== +-----BEGIN CERTIFICATE----- +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 +29FpHOTKyeC2nOnOcXHebD8WpHk= +-----END CERTIFICATE----- + +Trustwave Global ECC P256 Certification Authority +================================================= +-----BEGIN CERTIFICATE----- +MIICYDCCAgegAwIBAgIMDWpfCD8oXD5Rld9dMAoGCCqGSM49BAMCMIGRMQswCQYDVQQGEwJVUzER +MA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBI +b2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eTAeFw0xNzA4MjMxOTM1MTBaFw00MjA4MjMxOTM1MTBaMIGRMQswCQYD +VQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRy +dXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDI1 +NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABH77bOYj +43MyCMpg5lOcunSNGLB4kFKA3TjASh3RqMyTpJcGOMoNFWLGjgEqZZ2q3zSRLoHB5DOSMcT9CTqm +P62jQzBBMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcGADAdBgNVHQ4EFgQUo0EGrJBt +0UrrdaVKEJmzsaGLSvcwCgYIKoZIzj0EAwIDRwAwRAIgB+ZU2g6gWrKuEZ+Hxbb/ad4lvvigtwjz +RM4q3wghDDcCIC0mA6AFvWvR9lz4ZcyGbbOcNEhjhAnFjXca4syc4XR7 +-----END CERTIFICATE----- + +Trustwave Global ECC P384 Certification Authority +================================================= +-----BEGIN CERTIFICATE----- +MIICnTCCAiSgAwIBAgIMCL2Fl2yZJ6SAaEc7MAoGCCqGSM49BAMDMIGRMQswCQYDVQQGEwJVUzER +MA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBI +b2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eTAeFw0xNzA4MjMxOTM2NDNaFw00MjA4MjMxOTM2NDNaMIGRMQswCQYD +VQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRy +dXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBFQ0MgUDM4 +NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTB2MBAGByqGSM49AgEGBSuBBAAiA2IABGvaDXU1CDFH +Ba5FmVXxERMuSvgQMSOjfoPTfygIOiYaOs+Xgh+AtycJj9GOMMQKmw6sWASr9zZ9lCOkmwqKi6vr +/TklZvFe/oyujUF5nQlgziip04pt89ZF1PKYhDhloKNDMEEwDwYDVR0TAQH/BAUwAwEB/zAPBgNV +HQ8BAf8EBQMDBwYAMB0GA1UdDgQWBBRVqYSJ0sEyvRjLbKYHTsjnnb6CkDAKBggqhkjOPQQDAwNn +ADBkAjA3AZKXRRJ+oPM+rRk6ct30UJMDEr5E0k9BpIycnR+j9sKS50gU/k6bpZFXrsY3crsCMGcl +CrEMXu6pY5Jv5ZAL/mYiykf9ijH3g/56vxC+GCsej/YpHpRZ744hN8tRmKVuSw== +-----END CERTIFICATE----- + +NAVER Global Root Certification Authority +========================================= +-----BEGIN CERTIFICATE----- +MIIFojCCA4qgAwIBAgIUAZQwHqIL3fXFMyqxQ0Rx+NZQTQ0wDQYJKoZIhvcNAQEMBQAwaTELMAkG +A1UEBhMCS1IxJjAkBgNVBAoMHU5BVkVSIEJVU0lORVNTIFBMQVRGT1JNIENvcnAuMTIwMAYDVQQD +DClOQVZFUiBHbG9iYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNzA4MTgwODU4 +NDJaFw0zNzA4MTgyMzU5NTlaMGkxCzAJBgNVBAYTAktSMSYwJAYDVQQKDB1OQVZFUiBCVVNJTkVT +UyBQTEFURk9STSBDb3JwLjEyMDAGA1UEAwwpTkFWRVIgR2xvYmFsIFJvb3QgQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC21PGTXLVAiQqrDZBb +UGOukJR0F0Vy1ntlWilLp1agS7gvQnXp2XskWjFlqxcX0TM62RHcQDaH38dq6SZeWYp34+hInDEW ++j6RscrJo+KfziFTowI2MMtSAuXaMl3Dxeb57hHHi8lEHoSTGEq0n+USZGnQJoViAbbJAh2+g1G7 +XNr4rRVqmfeSVPc0W+m/6imBEtRTkZazkVrd/pBzKPswRrXKCAfHcXLJZtM0l/aM9BhK4dA9WkW2 +aacp+yPOiNgSnABIqKYPszuSjXEOdMWLyEz59JuOuDxp7W87UC9Y7cSw0BwbagzivESq2M0UXZR4 +Yb8ObtoqvC8MC3GmsxY/nOb5zJ9TNeIDoKAYv7vxvvTWjIcNQvcGufFt7QSUqP620wbGQGHfnZ3z +VHbOUzoBppJB7ASjjw2i1QnK1sua8e9DXcCrpUHPXFNwcMmIpi3Ua2FzUCaGYQ5fG8Ir4ozVu53B +A0K6lNpfqbDKzE0K70dpAy8i+/Eozr9dUGWokG2zdLAIx6yo0es+nPxdGoMuK8u180SdOqcXYZai +cdNwlhVNt0xz7hlcxVs+Qf6sdWA7G2POAN3aCJBitOUt7kinaxeZVL6HSuOpXgRM6xBtVNbv8ejy +YhbLgGvtPe31HzClrkvJE+2KAQHJuFFYwGY6sWZLxNUxAmLpdIQM201GLQIDAQABo0IwQDAdBgNV +HQ4EFgQU0p+I36HNLL3s9TsBAZMzJ7LrYEswDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB +Af8wDQYJKoZIhvcNAQEMBQADggIBADLKgLOdPVQG3dLSLvCkASELZ0jKbY7gyKoNqo0hV4/GPnrK +21HUUrPUloSlWGB/5QuOH/XcChWB5Tu2tyIvCZwTFrFsDDUIbatjcu3cvuzHV+YwIHHW1xDBE1UB +jCpD5EHxzzp6U5LOogMFDTjfArsQLtk70pt6wKGm+LUx5vR1yblTmXVHIloUFcd4G7ad6Qz4G3bx +hYTeodoS76TiEJd6eN4MUZeoIUCLhr0N8F5OSza7OyAfikJW4Qsav3vQIkMsRIz75Sq0bBwcupTg +E34h5prCy8VCZLQelHsIJchxzIdFV4XTnyliIoNRlwAYl3dqmJLJfGBs32x9SuRwTMKeuB330DTH +D8z7p/8Dvq1wkNoL3chtl1+afwkyQf3NosxabUzyqkn+Zvjp2DXrDige7kgvOtB5CTh8piKCk5XQ +A76+AqAF3SAi428diDRgxuYKuQl1C/AH6GmWNcf7I4GOODm4RStDeKLRLBT/DShycpWbXgnbiUSY +qqFJu3FS8r/2/yehNq+4tneI3TqkbZs0kNwUXTC/t+sX5Ie3cdCh13cV1ELX8vMxmV2b3RZtP+oG +I/hGoiLtk/bdmuYqh7GYVPEi92tF4+KOdh2ajcQGjTa3FPOdVGm3jjzVpG2Tgbet9r1ke8LJaDmg +kpzNNIaRkPpkUZ3+/uul9XXeifdy +-----END CERTIFICATE----- + +AC RAIZ FNMT-RCM SERVIDORES SEGUROS +=================================== +-----BEGIN CERTIFICATE----- +MIICbjCCAfOgAwIBAgIQYvYybOXE42hcG2LdnC6dlTAKBggqhkjOPQQDAzB4MQswCQYDVQQGEwJF +UzERMA8GA1UECgwIRk5NVC1SQ00xDjAMBgNVBAsMBUNlcmVzMRgwFgYDVQRhDA9WQVRFUy1RMjgy +NjAwNEoxLDAqBgNVBAMMI0FDIFJBSVogRk5NVC1SQ00gU0VSVklET1JFUyBTRUdVUk9TMB4XDTE4 +MTIyMDA5MzczM1oXDTQzMTIyMDA5MzczM1oweDELMAkGA1UEBhMCRVMxETAPBgNVBAoMCEZOTVQt +UkNNMQ4wDAYDVQQLDAVDZXJlczEYMBYGA1UEYQwPVkFURVMtUTI4MjYwMDRKMSwwKgYDVQQDDCNB +QyBSQUlaIEZOTVQtUkNNIFNFUlZJRE9SRVMgU0VHVVJPUzB2MBAGByqGSM49AgEGBSuBBAAiA2IA +BPa6V1PIyqvfNkpSIeSX0oNnnvBlUdBeh8dHsVnyV0ebAAKTRBdp20LHsbI6GA60XYyzZl2hNPk2 +LEnb80b8s0RpRBNm/dfF/a82Tc4DTQdxz69qBdKiQ1oKUm8BA06Oi6NCMEAwDwYDVR0TAQH/BAUw +AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFAG5L++/EYZg8k/QQW6rcx/n0m5JMAoGCCqG +SM49BAMDA2kAMGYCMQCuSuMrQMN0EfKVrRYj3k4MGuZdpSRea0R7/DjiT8ucRRcRTBQnJlU5dUoD +zBOQn5ICMQD6SmxgiHPz7riYYqnOK8LZiqZwMR2vsJRM60/G49HzYqc8/5MuB1xJAWdpEgJyv+c= +-----END CERTIFICATE----- + +GlobalSign Root R46 +=================== +-----BEGIN CERTIFICATE----- +MIIFWjCCA0KgAwIBAgISEdK7udcjGJ5AXwqdLdDfJWfRMA0GCSqGSIb3DQEBDAUAMEYxCzAJBgNV +BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYDVQQDExNHbG9iYWxTaWduIFJv +b3QgUjQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMyMDAwMDAwMFowRjELMAkGA1UEBhMCQkUxGTAX +BgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExHDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBSNDYwggIi +MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCsrHQy6LNl5brtQyYdpokNRbopiLKkHWPd08Es +CVeJOaFV6Wc0dwxu5FUdUiXSE2te4R2pt32JMl8Nnp8semNgQB+msLZ4j5lUlghYruQGvGIFAha/ +r6gjA7aUD7xubMLL1aa7DOn2wQL7Id5m3RerdELv8HQvJfTqa1VbkNud316HCkD7rRlr+/fKYIje +2sGP1q7Vf9Q8g+7XFkyDRTNrJ9CG0Bwta/OrffGFqfUo0q3v84RLHIf8E6M6cqJaESvWJ3En7YEt +bWaBkoe0G1h6zD8K+kZPTXhc+CtI4wSEy132tGqzZfxCnlEmIyDLPRT5ge1lFgBPGmSXZgjPjHvj +K8Cd+RTyG/FWaha/LIWFzXg4mutCagI0GIMXTpRW+LaCtfOW3T3zvn8gdz57GSNrLNRyc0NXfeD4 +12lPFzYE+cCQYDdF3uYM2HSNrpyibXRdQr4G9dlkbgIQrImwTDsHTUB+JMWKmIJ5jqSngiCNI/on +ccnfxkF0oE32kRbcRoxfKWMxWXEM2G/CtjJ9++ZdU6Z+Ffy7dXxd7Pj2Fxzsx2sZy/N78CsHpdls +eVR2bJ0cpm4O6XkMqCNqo98bMDGfsVR7/mrLZqrcZdCinkqaByFrgY/bxFn63iLABJzjqls2k+g9 +vXqhnQt2sQvHnf3PmKgGwvgqo6GDoLclcqUC4wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAYYwDwYD +VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA1yrc4GHqMywptWU4jaWSf8FmSwwDQYJKoZIhvcNAQEM +BQADggIBAHx47PYCLLtbfpIrXTncvtgdokIzTfnvpCo7RGkerNlFo048p9gkUbJUHJNOxO97k4Vg +JuoJSOD1u8fpaNK7ajFxzHmuEajwmf3lH7wvqMxX63bEIaZHU1VNaL8FpO7XJqti2kM3S+LGteWy +gxk6x9PbTZ4IevPuzz5i+6zoYMzRx6Fcg0XERczzF2sUyQQCPtIkpnnpHs6i58FZFZ8d4kuaPp92 +CC1r2LpXFNqD6v6MVenQTqnMdzGxRBF6XLE+0xRFFRhiJBPSy03OXIPBNvIQtQ6IbbjhVp+J3pZm +OUdkLG5NrmJ7v2B0GbhWrJKsFjLtrWhV/pi60zTe9Mlhww6G9kuEYO4Ne7UyWHmRVSyBQ7N0H3qq +JZ4d16GLuc1CLgSkZoNNiTW2bKg2SnkheCLQQrzRQDGQob4Ez8pn7fXwgNNgyYMqIgXQBztSvwye +qiv5u+YfjyW6hY0XHgL+XVAEV8/+LbzvXMAaq7afJMbfc2hIkCwU9D9SGuTSyxTDYWnP4vkYxboz +nxSjBF25cfe1lNj2M8FawTSLfJvdkzrnE6JwYZ+vj+vYxXX4M2bUdGc6N3ec592kD3ZDZopD8p/7 +DEJ4Y9HiD2971KE9dJeFt0g5QdYg/NA6s/rob8SKunE3vouXsXgxT7PntgMTzlSdriVZzH81Xwj3 +QEUxeCp6 +-----END CERTIFICATE----- + +GlobalSign Root E46 +=================== +-----BEGIN CERTIFICATE----- +MIICCzCCAZGgAwIBAgISEdK7ujNu1LzmJGjFDYQdmOhDMAoGCCqGSM49BAMDMEYxCzAJBgNVBAYT +AkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYDVQQDExNHbG9iYWxTaWduIFJvb3Qg +RTQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMyMDAwMDAwMFowRjELMAkGA1UEBhMCQkUxGTAXBgNV +BAoTEEdsb2JhbFNpZ24gbnYtc2ExHDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBFNDYwdjAQBgcq +hkjOPQIBBgUrgQQAIgNiAAScDrHPt+ieUnd1NPqlRqetMhkytAepJ8qUuwzSChDH2omwlwxwEwkB +jtjqR+q+soArzfwoDdusvKSGN+1wCAB16pMLey5SnCNoIwZD7JIvU4Tb+0cUB+hflGddyXqBPCCj +QjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQxCpCPtsad0kRL +gLWi5h+xEk8blTAKBggqhkjOPQQDAwNoADBlAjEA31SQ7Zvvi5QCkxeCmb6zniz2C5GMn0oUsfZk +vLtoURMMA/cVi4RguYv/Uo7njLwcAjA8+RHUjE7AwWHCFUyqqx0LMV87HOIAl0Qx5v5zli/altP+ +CAezNIm8BZ/3Hobui3A= +-----END CERTIFICATE----- diff --git a/windows/build/firefox-portable/FirefoxPortable.exe b/windows/build/firefox-portable/FirefoxPortable.exe index 05f2bcc25dd4a499b14e9a0231131efcc4946d82..a35c3673a3a5e8ea8354124be16d48494a4e1949 100644 GIT binary patch literal 187216 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½lwvo@6dJ7=_w!@4Hqt{{hn83~ZL0$6d z%V7?GTP{^!F8-TxX(sL>#pbe>VjM9)Qh(}Sf{B|*v8JqrSStI*ZRs!NVocmypDhOJ zW=sO_1P$ds@h`zlP=tf`B0Bzk{!?7gjx`r+$;vT)G)usGn~3oe*l?_$@hlediii9X z@J}6b`uUiTR~3GzxmYvy?l<@)O{SVK)(zz&ST)Ms*?9EhfOmrgjN*lJ7#sVWe$gfR z?a2)Iya;@!;1>5W{yFbgn+Z!4?rvtCg;FN+K>i!^4!L4pq}VdFXxd1wd;}?`f@h5H z5_aN^OM=PC)n7rVl1y4!bTvYfVcz&52ED4D!_T62a%^Wm#>DH};R-F9)VGskBQTm2 zi;~3uSqJ{zA!RRSiT50Lyq!5SCtTa&uN6M?3h zo9HhQ^A^csFn?A!M?uoIxC+ONGPYBwqrx=stJS(74U}?3-`HsMXO242_!oxyiI^#D z|It1QcgNyNPUw&81n+Act`l*V!<%9l{>HO0XeEa-t~=5A6eQdY!{=DM#|5Dt$0El< z1$;^Ptb{AxYb@^Y`l0w2iC!adCkEI2$qhxlM11C)B;Z|64t;Sg;`R9ZDsRinMZKFs zcjHj11a0Ohlz+keYkjcD%vif0yvL!Z80e}K&Rh=s__fWiWAHjrOdfqS$lC%f`SZl* zA?^o1yq+UaO%QmA!U(@glymp%XmZe!#!}(GH{Pt#SY8+_UXTZu89&s(JttKV6dJ8L zHm(DSLS2z$|K#w01CtqRi!mI~e+2l75;Q3ea^w<-fE`W*4mn>a}&lF*%;ny7+Ukue(gsNNWz5@ zzCy_TW>#VaZ4Sk_4caKu)n8}lS6z?;w*M&_H-Srz$5!Av2t9F)aKJxvNQ@sYtRrOP z434;5`BToN-Jo~;N~Em^8}fxADg7{h<0$_<%lW@8{H{xmhr6mQyGqFAtW2FBx}qvVpp;u9icV+`e0 zl~m;A!eT;VLnC7%4COsNtQ2+R@BSYe26Jo;?6+>d9^@0+jm6BBD<)VXPBE!QH61^Ia^=C)6 zpg|6qVd6LOjHyfPRYsL z)?F!VT-b=Ppip_a#PM+`92*&35j9R za!Kk+Dw+n$jjN(vTv!aig^cHYh(0Hp*0cW`{EdgL2k6)!5T&7!F`=n#D|R@gP9Er zb%~Emii`@22uo;m({data!IR@!-bU zUCuVtP=2CLm`b>IkgA$uaCoq~qDFX_j$*KGkfx%BPI#!MN|35%kZ#aqj`}YxRl~Kk zwL-MD6m?X>R24PU)O8gxRl$ln>Y*y(TA?bTLE1XMZ>bTa7Otifrmm=|9;~aVp`oFw z7#yS$hc5u_ES{x>bvHC5GhfKO2~R96dVgF_W{!qh?)gVZ!MRMgZo!*$g~ zXqA8BTKOlj{3Mcp7OC)zbDhA`#`W7hEHM!V1X>Up7il^+C_b#Aj}eK9aeB(i^`=7U zhpAA)@XGFvw#sTMDw@jmk4Zx}@+m$c?wk5aFJETc;vT)NoU?O%pBv5A?h$)+-*D~Dh)(Bj-s(nC%TH^b9xHRC zS=65BVCyY!n?6{s==a=X_OQ5s$R*awllIM=v9H@{m&`p|K6M%8^mvky{LXtLKOKEB zsi~&bz>}+1l)jaJbh|>q*LtpokJ^f)g*%4r52|Tf+WLC-oc7-z#`z}>I&j|g%AwNg zz=w4{(Ur$c+nzG0mfz?QUAbowr*e2o^hX%NwZ$8NSaMZp- z`7wE!!5!@#wj8=KXj}K*&yB8@rm9Rj{w1xs$t@K}#a(kYkF(5tH=J&abH91BROd~_ z=bejN4n5vuzPW6#bJtI`*L<2b$EEE3w8IMaX>DemGSieus*={e85%IwYRZns##L*2 zO^BGLb=bXf?3tB4T1VN;cX9JyowVo6JNeR2@?$J6>{bZNdS1R^;?Onm*K=fEb=jsq z_hi-UO>ZwLuD6w#xApD&^9IF!2iml_f1_>tPr)W9)CS(~wEp5z=@!@C$V-*Y-869S zgtz7XudE(!nlfwfjm~fE&iFl7X;UdtD}Hfs+Br=l|KLMwyBqc1KPFGo>8Acn`LUmy zsjZzQJ-z(w{f})nzlqx0@xm0v_XnIk=G|Yi*~)*m@s$mk6PhO8NF0*oe0ad@`C2D6(+8A9P(kyoH*L7v< zk}O-5Np-oB8MJ=yr0A3ZIzffyUz;w=KGiv@!_`f)QUwP0wMRKEjPCte(_=ww%U%aZ zrfyU&8L?(mz%@<178{NZ+W35Bres#)i}C`qx#QYRU0HiM=V(%k!S=>uBtr@>Td&<@ zUvoOaXRnpQu&FawKWrUg{;?ohIj6;>xjoeMZ*^FEXRPGJPhPnv{I4{*SfqJx#)P%x zmLnOoYR;WYufOIuPpxuDTKzt#<4EILb)~EeAJ(gj@2Kdx^X9lREy?i9tuE%{ z9&`=bVf%dg&Mrqn54b-cx7V&ZD7vZkg`U20z88lMl%KL%`NgOvk~<{#S>^7rpJ`>{ zyncD0i%PQkq71nQp2}HolN8$J^t&PRxV53&t}R-%7`e|EI?LEkvbyN?Zh4F=pcxL>?AeO&a4=6MfC-b@{Q_m5#Iq3XKgkM}=( z5qo`Q;H#r0dM{ibtdc9a`mtA!%Y)iHjy~DB$vaE5?-yqooU!gy`E*lJj^z%$ zK3hMDwdj}kWSicCt)IRXrEc(W%r&;Vy7Z6pyE;hq&CfXNxS^My<|oM|g*Efrgq`x8 ze^x=wP(97UsfXp*GnUW1+LtN}d_Vr_l>LX>eB3JY_O*fWA#HuH@XMZ?5{^7Lk~}Xj z>G)*BvMtUF-uJM`dUgHf({MZ26+Vjw`dLK>7LLvjZZS4j@6^hclR7S|$nbu2gteD@ zUfSi4C-Y~dFTL8jcg^HYHGh0qaU~_Q_~n{=ey=t(nWOb&S?Z+ySXpU zW}fd zjs9ceXw`Df$uV&=KWP5N6+{LC)2I{^xoW`v;WN)ZLi<%?%7?GB>3wbBge7I4rLQJU zJUz2RNTTEf=eQ-igTs^3J`Enz#l^~_v+t~Z7w#92QYvgQ%VJN!=?9(N)oR5l-V`o4civDB6(vXzP!>4&bA z4k+_`-`uA2srHq!I)AwAYa1)0KVY%)VHt75mNa*8Rr4+nTFdq9mOLTkSc{9(!~^f1 zqV*cCPdcs~aW&C-|D>vUQ+&m`NQXH_yz5m{dFI&5rhCt}R)6Af{BFBRn@{voxT|#{ z`+EA*sN)ZU^iwza&--D}B~p*2Mw zlWsrQaWZXHNNbJtr$)$0FPB{-Ra6Y>E`O+zq~E^^da4F#vXm^mG@>&IPkr+ zM7h;XsU`johHSqgpDr$?`OrVF-;vhs*IYd~E8t!G;Z|(^gpyBVu6c$X4^VWHOI_}Wmv=37nsPW72_Y>Hpv zMawPs&OYk;aeYSmmP2dr7mb;ieknxxT-Eb~eMcwxf2!C%=lIBOm$nR4^b}7?*)jFd zsjsVor5`-53iVe_w;y{j+S5r(@0>}C8+FeX$@J)Iu)qI;@vadiee6Q7Yqb$eKNnq= za=NomY`+(q_MLHRJHmFF-=wNdmlwbPG$GjMLEjD5){%S9M4I&V{rVo&ezL6VuZ75i;DwkaK;^8&#y-!|rHFuIYRdj4*$Th=5DhEBb zuNl|pVNXNru(Y+^+sm&oy*Qv{b;q}o&ZBPFo;9|*-PX*%=Uk%}-p)eqdFD% zO>DLCj+;qEb^nX@!|kiiHuv7pyshCb9f>zrC|HL z(v-p7zNb!~ujHmb@4oz-elnghrP*(K*7ga~z1P_|v-=1A%?6RJu55U0<8a{Frp?B7 zWkXj@&T&1t=ykH+qLb?i_V4Pc?f%)!ymfZWqHB)H6(%b!=k{7y^08~;q`(#9pPiUk zc;MCUS1!Si^)_r>_1(9f&5%AfJlZ_l((+?)Re141vDPa+4`}@n)ZTUBSSRhT$w%*; z9_l6cd0I(D%gXLL4|-SIEB}809YEs0QedS?DHZ*WSQUBA^zt1$k?LUL)Sxc=<}|lP zgy~a|Aq^}(oi-XnD_~!advagOUTLDayG*86%qF(*UXhAz9rEkMB2Ztbk)xoAXYa{& zL8=`7z^rarU*2M8;{7Y&j;=s&ET+I?Mj-?9* zi+Mm>O=51{lUw}Qui$@+cHraNmv8F@W)AqnN@)VPY+K(3RjU0275q6$IU%$Dhac_Y$5uxI~V$`d(R05t|!SowH%F=^a{MMgHm zfX{TtE`^g`qfydWP;f(Bq1JAhJIezmBq4g^?P#*bVH^P1H@ zMIB`y-F(Q9eR7%CO|rS~0bfg)8BPL#czNe_hP80|X37{tpnH30(Rbd6iB+aqb_Bu7 zPe+be3n(UrG^l;_%csAdR`r8xp>`cD==78&$`yOs(tq*?&A1`Rhj=BPpoV(1G9|0q ze;u-)k&w0QNHatMhJ;gh6v03L4qgsCHs|^rX@ofhBR{j}kpjw?zIC;F7+ftGewD5= z{l*SNNZe+|?iboI@rYQouXXBGeMXX`!MaAE0h(y8k}rD$h(|eoFqxe` zoT2?4S!#hk0vR}v0CA{rv!w&vqHBgjKq`2^g{yOwB?e5qm_=AKPQp{j1jSZT)1AZa zc7z2XK^7D}upH_`$jHz9yJ_VXZh-mi1xREpM$kdShE!Xmf4N6CQf?t12;s8 znjT0u^yy*BVz`76ycVnS-x9UYw}73wsDEjusHTz1(f+DW)7{;OlK^WDF>bj)QD1|< z(~(n{J;x{XGyuZ4xrl}33X6gPPN+c1YPJL0^`MVg0c*|}(LTyywYx)oMM~j))Q=v= zJ|><$w;`$#E_>Op7+QD&i|#gp68~LIHGE<_uJT!F0j7PAf$B|PQW<89+nAmull6dc z#zCu?gaI}}BQT_hq+gc1l{uKSA5=+BKK!8joex!1N;LZnnAq#Sgi5uR1(2~2E-9Ww zBON={5LbzrI!tP%-zJLHJ`i+ZLtCK90EuTD_nPGJpLAZ-RgUfe!w8EH9L4z$TL#ah z6zM8#4ke8~&A8$DctF|+()wH)%leM@a2#_0eJTVpnw-E6g>-UY$tnW347HObx{e~8P;A0UF#JqfBYj|>lDk4bWEB|=^UORD9hQ`q$0rO_xxQe~f1!tg zjpBQQ6lImmo-);mUgEHtt5|f8s!h|urC)K33M7*qiGapc&l^9UaNZjYbuuJ%9(L_b z<%vkoxj}w`(NH}5W9{7#!f($2XpBT&{Y>~rT=;`~cOB%Jj6#cb$vU-f4~B8qp+F$S zemmdzp1V7xpoQAVtPMlA98tyY6H&3{)(b6s23{K*Gc(sb-1d{`&3@BYVj6u-8?)OT zAs@xTu^e>qVP!SXWfYe4y6HQ~8Pt2o+SS?Vn?=M#{&i!oj)|nzQI3|~kkFkBZTT{oHob55u*)Vaz}(Jv)uJDY!Uq0;$Nx^z+15Ppbw-I?)ph0_X=7lZqMn92d*|< zJMS1c;gLwQh;YwayOHh_WGmy& zkzxcv8Pq|&Z>qmmkhHn^goA3dS{N_Fe9IZcaM7H=6uHr|H|Ig`&zrFKT=Q4B@uP}G zIsUVCa8-aM&IeHLt!kMgz5vfmcd^M6ZSAL<;Fs93Qi!RvQhf4~Y{VhikF?5^Ng!b2 zpBOM#Pn{}t% z!_!j`K}7w^2EV>%AzfZUTVo+)6`PJdX{v}@ICmgvd7xsqL+&`zze}FJvMR&(Cgq&Z z_jQ$1VRuk7@E0P>bL*%<@j=m9IcNRQ{}dS~KN7Zq`G%_DLnLz+9-(+%IC3v7`<)fJ z6AL7_Q=aEQ$E+K@Z4uAZK{E8Oo(a^`qUjW@=H~rm@iiY2{}i6_^Mp&M!az1o-JnV= zuB!*B;t2KAiNpz&c^+p!fHom!E(fpw>$LwhI^42{xTmfT_Suh~i*zw#pErLD6BT(Y zk74{AOORNmiG7TyLi2kfpVpvF{J!J9(zFWBvi)&vytIUHj@`hL^X#L`38ehhJb2;} zlHvF3gS*F+to-xM*#G8%$X7{$J;FyS|D4 z&hojluM4+UlR*$Tf4!kY(~bQI;kg)S-MXWiTbB+eZT&MW>0r!eil}xi6#ijyl=uy0 z;8bzw!O{{YgtjhUhwE_peqfS7SRBV?!CwHWmEI&y<=RFQ2*EDOG2PD5yb@hl6WWwI z(6y2X#ltj+iTC4C9mZcZzg37fxi%k>7Gd;kxFweXgoECQhiSe*UYGq zDfZyPv2j9ik%H%)WAYC0Tae+C+O`^n!N?$BV)B(Qx%!s#73c(V91U~a>h$_DTp;7| z$mW_$RU(sk&}B5`sPE4Z5%A6}0?%!SCSz>EDnIE{Sd9un@GUD9YC2pE*4CD?>^RKm z>2@usR5!~gAWggvlbe7%{S?|tiAkXyGQldYAbdjLh~Y%hR3c6%@-T#NKHi<4ped~~ z;Vc>>hjwXt030Q3NxWb#JFT7dN;ImutzY>rA-CEL_j-1I#2tS%!{6*kO<`rD!J*7p zewsoPP_|{M6aHBVRm=Y)~@sSi^k??&`oslBIO?)aS&3x|@?RP4ZNg(T_>PPb&6kE6|L zr(_ej*u#?ZeSZk&QSP>(-nsfF9?pm_T!X71UxW!cO7aoT)I`zkmHnhtcbn zz$%#Fb&UEQ3V@F23ChwGi>OcXnt?fI75?E#DIXwtF9!YWVu=EsA-a1w2n2D6diH}vM+@V(g#L4aHIG`r3hF=5dWF&00eCoI_eh4Olq)dXV-i1&^+X?h+WII{UA z><_U?MSYyDg_mROm{STxcV9V@dV9DcsMmhI&WGmReL;MZtp~SjxKLf5toY2AT_CtQ z;a~hjgPuR7EKlx2yOVWsVOpc1eq^@ERz%!Fs~5Rah0OlKjcpZ%e|iFes@MoKStM+P zei*FmAjBuH6z_VUvT#}^1Kq@RAU$kl(1*DUt?{j#jZ4w;T!OU|Z2mF4c6;0bAEyTF zggV~tfOYLIRkSS|s(0u>IE3e$F4v+t;0e?Z?t|F~m<&*X9RWCcHyklO+V|b}-1H%0 zZ#}MF!v19b26l=47kSP~pb*zM3+tmb6^kvoF@2{rLk7{WrtNml`M~~1p>2@-m%6#- zJH-84L=wEp(Os~+Jc`JmT>NT2`EFOZg+FucB8?)L+4jQ}1idg3&4fFz(4?@$ZY-$$ z*!tqu|5T(ETd!g1=18wxO@2`2nix3OOuxpYX7DWHMIYJqQ&pY{SkuW{>oCPJEVn}9O z&P>K1(2u!LxA^cgs!O-I+wQjZlVRBs@BqI`8(MOzW#)vDb@&VMTA z6|7#!p&U5j21hA;gsrO6^y{d^Ia~&P$Oy_j8*s1HfIn2Or9NUj)Hn|Zjt~%cTF}Yp zS?GV9#D#S9{Q_5Uof*zRsH!7IUmFoX&OJ0td*5NLMXX5;b@OoMdlAAq|9^yf^W+xo z$T?j;A9}2i$&AB9qNX@hv~jv(!5QihnQJbaiNWgisZw8erhnu=GnRIf4@rrPe*bC1 z;7Ko@ZqkQFW}P``dEfb9a5$6Kn=E>0Ha3>s_<~!8-6!oF>9wM5GUqPz($-NTh{+AV{jbw#s2kinjs*iOc|HmTS2F;gINE z%QjW3X07Ly3o#^T^kxH!=s}-Da{=m<{ythMT2B%|SaDJ`1WcAz4ZBG&4~x)4U+|38 z5cQs7&Se=6b-xbj-^7(oyT8nlftQM&sesYeE?o9~A;Q)L|9bsG+NVrXe=sL7#*Ii) zT$f1<`|7zyPnZPn!|6%NL(fp|Tcx_|+s9h>Q1`#< zYbVjD3MJnVAe~<0lTt}|7y3!MMHnj35@S4URFc)7GgIu)A61 zkhPVWiR0%5Q9}L23d&|a4Zfw6Qtxn{DUsLbnxpy8=8cui;#)Z*|5$`iZ;Go!l_2zy zsy?QjT<|Jru6hKn={-mnVh$xgRKGdHwh`aWEdoG^4GcM1bwl~0okrxMs`*b-hy}b> zyWydy!K%JW9=f=~{&OXYhwx#|TefOtfO~SK-$$l+qLxP+`MT0zpWs)_u)~k_({#Jg zyvOQix90i>4aQ`#+jr6yoM|WSv@YQ%>ZLa>zXkKz)GiZP88~<<2gOYCLigoE*64hr zxCTs}&i{cd7bqEY8B8hz_{qU1eZop3;^`sKCafUo2eTQ($c$pHLR7_$PAU7Z?aIz) z;pdYHG}Ct?5?A#v%26@y=>~VTb}?F;bImoPb@4!V{r?+ZTYS+(1d!amvCKc2@)dic z=OfoYb({=m31acN;>v%1r2%odUJB&0X&BqedPkKl{7iTeP>R^B7pmTK;uad2SILfG zR@@|}4w;%SSo$6=73EygIHr<4p0M}DYNE9m?N-;)ZozFt{5ZWHsIKM@((#2T^ zNGGQ9v-HvItKJ{hrr&7wSv2p&2eLuMBuYL4zR8%RQamRnBEKb?HaqN79S4Q z4OpvSwH1zvk_+$o`WvHB&6uje%r%vhRkPTd%Hm9JQ%Is1e@SU};AblW{e!zGb{}C2FD7n1cPyMuZiV{rvdJ%0l_Q{Yl;VGm7Ukqpw0-AdIGE-^XZ=MvZLqR)L`-8b^H zv)I1ZTC72C!K`?U$Q*=OSVZK3sW}cl0xiOWD^cZ+N;GTv^XI%gUvqghCr+My-FsD z1Hl-(DVo{8>3nU#*(gThX*EEe7M}uU_xXvv2a&4i(kYnoKL|wQ%R{9SqtlPgDt3egpIPj?^xe_aak{bedzgZD=2#J+scqtpG-8fqD`JgTXdc*KCv+v?YR_mp z@S|FcCU0rY;_HhwqMH3=r6n48xB0SMr(^%KQt3(%7d7sNxmT+^Pwry!5^PT)=ms)B z@k9w0-ZdiA>-s<-RdSkqfeJ2;?_$IE1zhQ6jHO>8h2-TkgGVc0t$JYA#8A23p@Ml# z!+0;OrUAto6_usK;-}Ble?sD)H#?wTl+S{V4mbnAA_>Qp>w~kEIUr?m((70IWX@SO zq(+nAi3=4X1(j9%<>jd zwT!M+qZPa}+xMxlEM+Pm<*8Yw0ZY##nIdkQ*v;_KUO(8VYu0vRfA1PNi{lp9JNw}^ zV}XH!hCTt=B}84$jyLKs9W&Y+d|4vZA%M7dhECoyl@cH*V(xu>?GemQ&!PFhv42O* zikz!r`9UYWKF!)YR*+XtdsW_)f=bgOAF)1g_mH*H=P?-SW~FF)@riBA7IJ~KZGr&s zgs`@#veWoO@7Cg|{9`P3fDYU`vg;r5mL&~_kRU!!DDXi@I%LDt5!dn6N$v)px7$a{ zX1&gaT9}bEZf!VkW|$PcaTRoo4{f_pM=6p6YZ&m z6%MAUa2N6IPfj&rMd`a9FI)1)vj(nwpkrNjN$jZ=hvVr{$CfAObII&c6@WHGQMGw0 zp`SK6*@4~7&@?e5ljF725u>H-Hpf2t=vr>sM6fATnPSC)wpm;_2Nx0`xD+l#tZYu~ zVR45iwsFD(SU(w=zhtyypuZAWlVEx^gX(enQK(9V0>Rvfd|Zf``)U;@3?>s05+93$ z+eTyAg7g@iIr}2{uFeRlN+re@mu~-++j1J?w&b0dzN+)4ws85QHHCYRmOLTRML$G_ zbMO9pNoyrac>l=6EwLym@6;nml<@$~WB$JH-p{e{i*0cz(V{IYn@e2B+oPK`q3i*W zSP+Nr2cR+6PC(c?N39#oVoI$Hsv%ZXE=(pg^KAnO3E85freL; zthxI@%GQ2m^c^*pK9KAb%&kO>TlE z?#lG1nT}8p&L*iimD%8#(!=e>uSUa7NM#XUT8lVOJm&~ZL{H#kjuRvG$RlVpLrg(v zJukR1G8=18tyr9i9!2%8e;9Om(|ygYFNN$W;hThPvsRXO`Lnkp%Nrpi3{%P({aUMO zjf0(!x~Df6)uQ!=DY(|?OI>%v^NYEE3A(#OVs&em4A$X z=3o7@28E!nOgh}WXv5Rm4m(dzmSK34&zp5+dcsR(Iz&2oI-wVQRIG4Zil(fJc0b$t zF-+837C}O9UF%b0pcf~{&UPW!>w*6XlDeBA>v!@`*3M96@ESHGQA?)24!5 zv;~&fLY8+P2P_wuFxNPBQ(wAvg)1DVK8I!y=sBv+hG;7wcd-P%I4H%}I|aQ63JKKi zXaPyTc<~^xCJc(SpBi@!R@kIhvt*4p&a`tElhLvg5$>%|+aZA`CbE_A5i~oz zn}Pu;>x~WKUNC~lF|`5S#_@_hH4e(#;L@91?jsg@M}^fRP7nc4NEK1C<~-H zWm+V18Q)o(U3c1*nBt&=leSLf#Mr9f6mqoCifH|F}s_<0c29huhC+8Q< zY%pxw1UDC{$^v!^YH^bGDhYgBeb|i@l^F8Oc#12*PL^PPkY6HRa1M2_E+5sXrBCzY zsO=R?Gktn|ecJ+j8$MS-m)$Vyf6LNe*;i=PzbXG=#Z$`cKr_ujI58g)eRyB;%2BVj zC&LQi! z_rf37H6gZ0r_An!BrVC&aIck0$!LGA2i^1$xr_3Ii0;T`gyoDh`A{wt=>5@u)TF?N zU5bdTqq||55`VJ`v~XI~+w-?7MJup=JCm-POwG^WaC6o&E?kHyC^Jzoz-nkOkIMhy z-=#pbJXE9V$Iu$>93QEGL&yBUgQOLq(9s(P9M1eDe;lS5YzgiwBsNU&sizu(_~G7N zB_FCWdXmwE6!(h$dKwJuF5Eo&36tit?8)^A@-g%8bi>$-YQ?v;cnv$#ANZ6zFHm>| z!`fWAaipmkB1@>4=N1ac?8&T#_~TZ3lfkilB5fIfHy2b~9i2LDH>uzMqX?P2za8`| zQrJ$=B>~M}oX$jyKVyfwsalw){G?KEJs#1NLlm5{YQx6F+?I-`@D$3>!xz^a7H5gFNH7@s}Sjs`=JbxG2@2v#8P6(u?CUzx82OK|x*G zbsXU}5^f_cvFniga1?197c_1?3SyfR0iy*!#*_eqg-wG8W&2zO9kEY6P3L9v;qt6< z{D|fJ3qjAUc6@Ls+r0Y>2gh1^e7w`&$JI$n!g%lv&*bHID zkBrzl-e!&ub@7|f@*U%qv3wLsfuEX4#xJ>tlqjt@yFjRp%IyUqaWCZMUyO$?gYeU3 zOf%-pSuSgLxD7a`5OFv-oAj!?NcZv%wA-f98Ny$;xj68KDCoJ0CV4?T(jB3o(Yg7XDeSwmXoM;EKLs*5z>0P<{B^kn z57+=iH~<{+Bgnj#|M?41YjAVbH;)PBP3+p`nZ9kTv^?WF+g2-sXez(W5K9hFcejA@ zl$lA4G4&)6Tbu~j!583>()7;WCS-^i5BQ%qGwQ&r1Pz6qPB!>T(>^=x$+(5T>=dgD zM&(H(<7NT)MIm$V>JVP7REz=}SqLaGRqdz(vG%QrZX5h_pt?A$2gu%*|8iX9BH{*v ztUQ16#FJD61FUl>u7F<*A0CNETkFqUTFwZaCqWJB9h+Zd)>Kbz^)9O58uP7(oz`FS zGS{#&1#B7VIhsq;RCMN-;nJ5OY~CZN2nuKcHwGeJtt^{IcWEM(A|aj1g*&hY0EXBM zE+u6-ajpEkd+Z02W^1OO)8O4A=vWkT6f!6LjDt{+H>nzHvKtUeW7+%~9LgB0QfF6a zF+t|sX%ms~ux|!>AI!DVl98}gAMj8(bDAeHuuFTecyj!S^^(xJ&4#m*8B`j8aE#)B z8G*+@*m~b>Yijn&e4?J!)dIL0_l~4@cAsw=39@(NYVb&L3DMAl0z(~XxS}c#863K>aWDUwz zvfC1Jh=;lPhKHdMm0ZRy4KXPRZ;)D*h9(8l?fGlHTd`=0z zTOtYbYyxfKzunWEb*Zi=lxRtv3w_%0ZqjWPtZ!MTgdadkI}heV6%!&4oO!p=_VzYY zqr{=-^j}ZRXt}B^clGhFivQfAVMfY2_?l1a2%XiW?MVkiy%={|q~R!e!O&sNs>cZP zJh=Pma_3&d1_UUeVg*`LnS=$v+XOy(z!e2;qlFt;4Z08->oBPXSSnMJ3p;YYs|OTQ z58kUG(V?G@ag$q$XjIz-BU7kHA4ucYiH7u3a~v!@buelr@g%-5--6z6&@5d){f}9O z7wuWDy*#dqqUgvvP{)=lc(g0$mI#y{1_&yRqdqu*>}gO=4NnC9`?lOw9Ch_wuO&N98A$k6~ zZB)@Y7omtb#Eqi}SR(@^A;NPTiuTz2Au&=*@_lh`{68Q)=7pEs#l53H_=kd7RNT6@*}7`X z!+a@nx?G(Nqc(DwSl^^rM)P^dpJ#;E7@;VXe;tl=N{A8DoE}LXu*vDy_wjBpdbba; z;s-dt7a~}iNG-294L*1Zm^SwERcrQ9+reK2H_!f|n4 zSy9CgC(UGIMC(m>dNcT*W8o4ENfKv(Q!LJqY8z}?JM@*iblz1nKaEN=?iuNC@GJQg z%8XRMf5P&pAOlq(8U9n)t%vXU!jDz_*OblE84B4mMV=Zp1AiEV+_k8tok!S?i0fF_ z!WEia8y&Qo2hoF%h4xM|Vv<>7xdS&e^-Q!2#f}B<5I!{uh~fqY=Soq(pUN!@@gX>3 zo=K!#a$efKq3{K7`x8@O9g+RgeU|ct_)=1y0rtXaEa`&cg+1R8x`V&%hW~JxI`&c0 zM;qVrJS-odyKIB$hrwt{;zbiMKDM^_Lxbux(;~EWp~9PzPk!ZSsS=ALpeBd>=vS|( zEZM)Jt|4hmjCg%9gBu^?GwmIk$Wi7R7tHyo=t@oaSL*}Oh!@`m>8e#oK<}})VgweM zqQLZw>|hB~A1I0}JAXHIUsRt|*$k?4iV68ZbiT$y3Iq+tucD)uXLVn6A zPaL4~8Y5n(h8%`Lykfk^c9~Z-1E6RPvFuyGGZTN4WPPVk@#FRJQ$yc^NOAX(1Mh7a z@`*(A);VppFw$hJ%Y;Q#l-OkATo;HlYs1Ladm+EKD@lg77;=+S=}k|u`;a|9n#%O_ ze?LdDz|w#=YiWBhI9SCz%^JMREh~lN6f@QCV2MnsTD$!hUvNfuIAnGBISOEtS+Nz( zQ6{Ebnx;sEs9EXB;1{Dt*0wj!aMX$wW#DK0* z+wKCx1A(E^g79?71}~LgJCLS>ov+WxC%;u4#_UBZ1LEk!k7sYt z`P{U)<*tjY?5O9@TOY=cI&ao&2OA5{5DGn9UE-9D;X&Mf!*Ym`TDs72akwKJGeks- zIYG7gp_V^Gd%fhC*k3abuBTK6P8(okeCRxbLE6Ff;Z)pE*DU_v9HrqxP~ra-5Mcy= z{75^oNx3NU%~(0}9g~zCL7b&Cu99Dwx9=BwXwc81xYoMEg4Fp^r}HSby=ld2_MwQC7Cw1e-vxSRM-^{$hm`k2C{KydVdIMqJ%8TV2o9!fTha za%h04yBDG>J|n`~x{7EF5a!?otT;&r_qk#XegHFHXLCnaH6CvaagTwOf-o}hGk~Ke zkCdCaeI?}l)|rjv^E#jX=~_cZn9S-Tt+sJg{ZFTW7s)Vh^@j!y@~vd0)obqFhT&BO zi&ghf`%FnuGY_!Dw&DCJ30@>HhjdeS?0X$Vq|3!Dh6ObXH&&*)RA*}yO4+Ao;-IA@ zFzF$b$fgYYT7C661O$w0lI^zzc`ChuX$&>Zdj1^UYNoYGT5x`Q_*jQ4Wew>K^oekg4g|5zp1Ae(@QcgT+- zDxHHd)s##75=_(k^|lLqrnxGG)q&=#)_&x#+h{o>MJ~((JUgyZSe$K8;sPkXd;hxC z($(feQO@aDRbt8tb9C4r1OR<+BoRGP?uZKS%5F4Lk9W^KJ*pV*lx@WQ6n!j87RJuH z{s)b5O&w+NKf{WZH-6IM}Q3hE{H ztl0t2u%=g@CEr$yNg=3qnfh{-1pOVBEC!GM6b#?fGB}j;Aze~_OwQiJce0=QaK+K< z&D(WUj?~Te?$E4>CPc5ygruMFVV{TKeODw2?yA@A zU$}ke>Vbn)3D%fH>vYNVg=4Yw3u8Q2t-st36z}m#fCW@9==kz@ry7kDQ2qGpQDP5c zs~wHeqoUIQ{y03fCtR!{loGOv^wn;o!7ocAD0A%;2v_#EO(|erSs+zTD6e`K2 zsI{FNO zlr>}Eq!_K#C~Kwefzm-qZo5>1kC{+;;6Q?=w?#!{lJC{Xb14phV;F}s#!4Rxd3t=( z$y)_WUTkgD_XOLhl%!*^Bv&fCoxaeXkdr!S$;}}D;^x6sjhMh^n7_{pgII&mQx$IM zJY=Xr)|f*n;uihmymbiDDUu+U@xCt}z9qlz=$I@$H;4wEs}q+|niYY9)_LFlcLQCd zlTjLrUuRcT{xrTZI1C`^+5+FSj4#7VA|}b#_IKx_F-A~nUb_>skqVe1-r%~sq zF@w~E!r}*uYd< z3(TYfwyu9&>c*-3a0qpR|JNPf>_7C1psD{^wo?C( zcaswW+7x&&GUuBKfk{sO!i&v2U~-w5P_Sh~hqZ9;R`(3Ojzq{VfMoMJYV=gK8s~Ql z0ET7uXGpTtOlC#4Zk|tCAf>W>A@y|F3XsnqhJT%u82kH(`20qI2tMFb(P5zt-M5D}qBB znnKZE<#C<>m+O|52^KJPyoK5(*=lJ64wY@`c!|dwnnQ8{mjF%9B!WL(-~|xmbo%{7yZ6(r$Lv;$T=Zr+{m%w6lL2jTtfE znTcTDhhqH!qxn}>C%2-gmZf|Sr@*-_GCTEh>LYqgGU#lbaGQ> zU3myN&f!`)f5A9uuq*4kqg$iCEvMuTWd;{lMP)@cg^`pd!!9mSRDaah$Z8LhY$v-d zo1R-KGiIjh@nwBZRjLzg>2T%IB_x`0AB0n|@3*T*2vHduRW;FYy_z@%An`kc7S0NH zI+!4kOOP}MPrBmbq+<&Own$q$!jMRjW~QVMD<=aPj2$^MLIzUu#>`0AZ#4&^u=hGW zgPcD*I*;oe04vmZqEgL8#$8bE4iabS z@fNk5(smMKJ9}A;wc-vS+f*RzR=v6TL|hqv?ahxzqSfM6{|dqu)!gGo{BF9eZ1E6W z;$IO}+^LA5^g2BP?wYCaX1rciQlPo7;^I2~Bvl&Z%`(5+E?}Myh74s#Js;)==KIk^ z&((&ML+(kIGZ&@C=t&a^r zFO*TtQZjNZWhKBNimN6WlLr>O6hlH0m@LY`R=7 zfsYJYXB$lE(EmyIZibT9x6l-;a42Y_U1esk*Jh?{EF#DQd4}v+&Ss{ZyM1A5FsM)5 zHfDhM329gUSy4AbHuGARfUH%y`mW=7fyLzPlJ}FwlV7uBX*Va& zR5=S+#?r;tVeNU}7Jq*mZ;Li@=b89!jw&J}Wg8+<9tKe4EW@Li;ThEQ9L+$OTdoz7 zB0Bq03WZP*<=og#k&-IBOY9npI3s-a*Jp=4cKWiO^sk!|{MDZXYysDko-1g7~DMc#gYZT)^0N#JqJ${d*9{Jy95R;v>g3uHRNGNQ~ zB-kH7F-mmKkp~@9{v{S~oVOU_2DLxriXS98zYevg7{_A$wLLufefI}c(r9K_+!_&f zZVQv-u3Y9fjN+(MM5VMSabeZt2Hi)a*CYW+4GWa((|B1Q(SXEBY5^u1k{^f@f?W|@ zM-KBDe8Sipd}OPU-C@Qi-!V4MA4hzs1BEARNPQ<%96Z~b)Md|1+DzM6(NaDr4&4Kw z$}3u8_&V%!dLKI?cl8&oFP~=6_c!bd5p$oJYhkn8|C(Q^D%lbFZvG%y#gA`*;zynP zw3rXZL*Mw{KqqrrUJ9YJDG89gbX8~rLu#O)mg203u-F-v*qI!Bh04hATz#Em+91#)#oR}bZe&PA6ure$aqE;+sk z!-k>M2^dGMq*<_x&w7zw- z$yEk`!Q#B%X|YP~6oNO)hOkXW>BA&{oE==|S;yUA1ie^8w)hQ~_i4e6J@fuj3xt7P z76;zr%Y|Yzom($ta1Dd|3E~}J(qbRJJ>pELX%uOW-srK_^F1Rg+~7fGI~3s!XJ$mc1S;^6}MO_TRM_Q z)rC$FxQV@jE(!_ZUs)JoiwQ%rSDomTo88c~zG^Ux1QSMRF=J~HZyk9NtRbFg{Hq%p zu@1y(-${>FgjSK1W- znBC4V22=(tXVNVD5MrXnePGc}8zdt$;(e(~$LDzF>WK$AMxj@MG+7!(bA3t!_mqR( zf}Kw~e7O$PEkCL=PO$=jEp9|)KOA(oL=)+&)Zox<9u*cDp;e9O(QTO4%F+(YcOQ?2 zCu?2KR(3693ajlkv0pIm?RU%zwE2cUVl|p+gt(Vh0}fnL=QoHzHr}U+t}{Nk{%>r6 zc;O2MkdgK`%agtHumhPm&iPLK2(}--#y6aq59#8?XO1%Ueqcirr>@a@)arJ@prnT} z6FpY-E0z~wT_-iBpHZ6NPL&LBp!%{_8sLaV&XGbQs$<)fO@*QwUEz!&AjmBFh{sii z=n3Ty0%_ktW%T^fl4Fl`HE-c_aN`u0*Wf97czXB)Zv4Rhr}pQpVNYp3ceQkLvzQ0~ zJbaG#FardSZuy4opYJ&UO0zHbQB6k8etQV1w^O(z(_f&)i%@V?^z=q9GkE<>NJo#c zaV7miRGU`}hYy9)^s8{)OHdS`LEKIl)+YhsF%ViEvfYU-cGT)9#PT$P2!DK;j|Z}D zf3f%g7PV#b zB$z-eys{fpnsvAkBVuKS(x9QRCAk>&aF*l3tl3wQ$_BIW{3heOkWJ*cSe3BPQS&#; zi@G;EP}Vb4|L?^M9vebY;3OHHfKLVq0x5Tq?)bC%UQN*b$1kL?$#C*RFRS~nA8+? z>7Fu60awzTLDML+=ML$Zk~>_?CDj(JNc4Y%`{wqMtu)yp127>0UZ|cmul~;W<)+yS zRX6#gjg%paIkp;N%;WQuzN_Y9$CdpwEY`no_VL<77bC_QJcIld;UpC>Gak?O=J}X^ z`1eL`Zm0+ywhwzs}}-LmR-VLO)&TX-!h z$T;A}a6M)ZTPQY~1G!)jokEm-1`@vZ!2=%EzEQRcuDAla!E#P+C1^l>v$Ri6U9dQj zhB_t&ZIFZ;1bfeROZFj0u}3LRLnfw6v)Sb|1XIhv#$>bxDZ~iR*3I6!`1~v^m*BUu z%hVwR?lS$!SL`JPzIIFFSZ(jvcMQgUWFRwiSD(<= zKx%h}qda6UDaVD9x)m`BfhChYo!XaLzQDVAC)&jn6N|Q~ua$OUg5g~?nDX-v`OV3B zqMmd53BmFa#h8c&teZH%Knz&?jjR%C0j+53R&~ulrN?t?iVDy5^k9D)5T)64L|R3I zLgnsd96B-tEPW9EFo^0Ehm7{m)=fApsB(Nb(%%TTK5f7)IpEO_LyDIVh{CtdnRz6h5tf`Go)S3@tny%%;r zZd+tvdk!@sOsFb>jzYsiB>!8^cQtvRRR4~<QPS1qhQ*kOF#+95?n4YJ&VJ%{}WYj!E@20p3%(<^;F z9xw;<AdVBl@K(8aEI3x9xDYM)wQR$Z=W!)E6vsV0X&PR^q+Zw$VZN6a-{6gIU~9 zxwO<3#I7+3QdKajhaQ*5-dg$v(^rd+zPlJTrw`B}H8D{ue{G-n4|Xdo+kQa$1$Kql zWlzy8uXW9d!m?%^&-~+e9$F*4qe6Z*yH&_?!3t@XP{6tagPMJzAyY|^Wdjq8L za&n1#Skuo7n)gG3&0rlGBY{K(NXT?ebKME4{ln_Gi@uP5gc7b2fa32G@^d)=&2C$n zAxq#yr6KQxODyI6X!2~KtY9pPEvyl8IQ2qUXY+1xR6s%qbG9yXN$;l|fuHXzFdXjG zU5poyjf$zc0o&xp?c0=2p;3|cEq6ow&ns43TzpHj#-?kHWwTW85tJfqq9y%>>R~>V zL*FzzX8pITBtzfaOv;5}t2r2%wIM+L!ayTB!{<5RFc{b%GznMks zxUzn}eU$H5bv z3CM*;OukDtUWS%($0?!PQ}!Xyj<(*(9EJxe3~FG(!@~JAI79wEBJRB1SUxRcGaqQ! z@gRq>>Mtw{cvw15Md`IYh-k)sVc+Y1JjiAAibt}Y(^JtEz5SAO%7EAlmJtsNMq00bo)9HO5Dg#JE{QPYEtWyVqfGt zh1?cjFzLML@j)EFNcZkrTf>H_N6wzxA~uj%>F!#B*T<3J;wDL5M@HTQ!@U&y@~Gr< zOuYl)(k6PO^20RR`~`C|vBYgQfY7|#eqTRc)Q+!%ty4~69e>sYoYkX&zYuw}esAC) z1bc1#jAb%`o#3S(^UOU-m)lGLA+f23jpWuF4qHJoZ(1sW2|B3A?3zq*mu3Z0lBhx< z?5!IWtD+nO_`&Kw+pU7?M-}+?K%R*Xp34_JeJW5N{YGJGK4r?5iI;k6(7ELMduj2s ziS}#Zc(IzD2&f5!ulT`jbiE**nD?p=@XsJXZPVTvD>N!pF7zx6dOBdhhc>TFMAF~Z zMh6fRJ(8Ghut$uerr+?kiVSxkTI>;;U!<0J>l4vS1ESSA)@Au{;p*0mz0@QtWOra> zJjcpI+qye!Dk|r~2p>yo_r2`MhKISPoRsN42Rd432?RTMxLD_6zqwhAWl8;kQxr5U z{!W6f>z8Dlo>6_7b0Tm6C`eLEp_WS|CVeFr;Q{z1lf4FaQSD&X1j4|J@QQ?B(myx# zdL5y&B358rj{vZa6_kRP#sU~1uDYwpO%l_-$kF0{u(@ELSotUZ7dDnV_nLp{Ie)MY zX=-AdLao;R{EH_Q-Gz>oJn?Q&jXk$-Fm7IV^Cd&PgqVr^F#CwL|jOkM8RXXpe+%L(QkG!qq%hQ#S~OkuCB1L1N+7}cL{{p*u&eKbd{{^h*j+DinCSLBME7V zNra0PxKg=wy1*^u264~!fxXjr&y&oAaQ2$WektnL_-^!-nb=Y*m~$}gKQE`GMO*)q z<7?g=*+8Lx1(*7XPrFo;$?E`ACkk6GF#;Mj)>Pr3P7`;gN>bVckXC+-Y{aHJyo-xg zX}c}sNKS(@#B;oHi1hm7^vbVk6{B(360wG=;rB^+27ioHgl5U$VsS4fG=PdwZ_#>HbQ>ca7yC?WVv^6drdhJwLmlKRWM~!p2A$EPq%<$md@(^YsfQC<|do$Ja}tn zEU7E7M|eq$?FE^qcHgo3#6K4?f$B5TwBF+cB>=6Fi|2*ITpjyK#>+fqdkp8>A`kT& z7BOxmbAox_UUoyMysDFZ9m;4Ur=W@6Ft^{6*{=O?NlN;6?kci-cbi)zJWn`=RwjpW z$1J#j%#X+AhB(Un+}*0Kk>QQrEXBOkj`@L~e@jJ}aS^xm3xh zk;AKG_1TrQ87TMC-)M=BNLoU$;n5~Dl$y?VDd#~Vw=RH}9z=xY&a8ilF&Fjh5ahEj zbr|PY9nU}*`4RPjDnXcaoS^>|>3LuVxIvfl$k;2g9{~2JejTT}AlJmFOI;R%9D#!l z9;M!(4$3RRO86ot>m&bQFgMLCyXk$|1_mcXLAltHs)bt&jB1EL0qwhRkd%<<_&1eLw{NSu_3#4>z?g_ z3^X`#sIwcYZ;JySy3EcL)Ms-UIvkc{DAo?fcffg+c!Ft@dW#F~SP?fA%Ju;Xg^EHX z;yqyNNHsxp;S{5q3}ij3C^}4|5{!H_Sd#sQNHya7T=h0Y+Cj%|u!!PoZ{h!GkvSKv z2*m+c!}Pmc1sYJSzU-FE`*(Mu1$_oqG(9$88K5Z^RIIHVdi?Z^VhADs2hp&+ z?-nU2;B3Mn#7=8EHrCvbZiMs+)9@KLROBqN?t9uqJ*V$e^(4W?Xa$tEK!8L12p58_ zZaW3O^t5hl$qI8pvpY*T@-U3bV)4lfPYlS_Sm~L-Mnt*9*^*xowgPBk!ge-zAP8lY z%0hxoRap-|#>Q4*u3iW~n2HUSWIS!v0iKjJx-SsGYCUH>^1`H)}fgY{pZw>Vq} zXJq0=ii+LXyaeMU%5Fx;S;D-qYY zP+tHA*4TBqAM5B~Q@=Sz3mTepX_XNX8C3=%jkFtQX7Mv539&|xwW+Gv&5cwLpv_{0 z^$e6STgZs+haLZ7z6-C|soGp5{_V!_gEZ16iLd)rFkN3Q_PpOSWqY8=!t^grk0fwd zJP5ZiErWnej;ZWR%ZqrBP|+gADP3sTqNzKc(?>^w1GR2?{rN1I?pl(-sK?Uu zl*g@;+o#c;73n^hvd(?={L-bktU@k0mPUnxg}P8P18&_wEvP5J0370O@ZNxNa&~VC zFC>oJHul`bd0Qj6nv5-vdi9A(@JQPE&y*|$!uCfyS=2M_-zX+;xr21$yge{e+gd{$ zN)kM{4&S9c9a-Dn5JsZCO6F;NOwL42$-l2c^WB*Y@r5oGpYks=56{_xd!V>8AB_c*}|F)y{9;QlU3B}CkG z;_!Rev-D-#S1{RxkFlb4UHu<7}_yHi)0fuv~VzS5ndB4N(6qy1PC(wb>}+;hJXC}^&`nXFB`QY zYFy0Ea2yF6nQh}xaMkSJQFO-t%FaC^s5Jz*=bvmwG=v9lm;8tFifU?9xTo z_#aBVFa8CQOtRFE?H}e$@^ctB+N+k-V9NgQ!x}90FIe212%n?VmO5#o-EKlqUBN`V z80F-(dT|buNntwHs;=2^@vi`siAjgY1u%A-6-a}%iD_N4SMorM5uY27yc2KsWw}>d zwncsin#J4JV_^?Du-O_Ek99bJLMkFH+=$_V2Vo7ojU%)>`aHV(fb{5fs0QPJ~FEDvEAe`7`#j^tJpQ?K3@uJbphv?=} z>WTS#AqAVQ@6ws}>Kvkf*kCmn=tJLhMye|O5T#Ai$1hB@5$#&Bpj={uy&1^I(n2%D zWDT7QA#Jim-*9jqqnfn-)B_^>W97Gy>4KiLuF0?Mlet3WdyjN@OYf&a&6Jjv8*i`l zO|L-!>}Z3AF^=2{=0IX58e3f5bP^+uHCG8ZX&vzk8S%E2YkxXH|wC=>?Pjfv}gag9@Z*&a?d)uiXWPhU80S zh!2WRU)HkznQ93*7V&+*3be}9UO_OAvoumYpTYN=&9(%%Qe7;Fw!*yu{0|ok2+`x( z={#+2P98r@v7*?(SC<+kmVXaS&5w~BDOjG)WY;OhsN*j}H^&<3{r|MytyOUlHqaz^ za>`|A+#Oz`-Kt<>GsX{s)nwS9pR217wiy{^#u%N7}Ui zv4d$>nnV9ns>Df^5a(&mZ;w+X`(_DPInfsIMQ)}q$yoI%Z)ew~LCTvif)ClB%CUW` zy2N8Fsh3yyFgO$dkk+z08$|V4!9vZQspfH&Oe@n2hZnWk2Ahv}I?@CQ1VeSopQg|w z2ENIS_zKnB8fLVV50S*jjy`g*z|6#^FAPq3B*U>03l>|PA|zn@4_TzVjH`P4gC5or zeQYYzrSfs+&e56PaOp2)vlCx(1D1X%Y$WDf)!cH*?f72eEds*5fMybg!N%=iON@t} z6JO>A+#cfHuF*6V^-%Sb@>_sE%DL^S3g);!orPnOP=Y65bqwgvOgMhN zo!9K)Fq~+=|Mbnc@A;6Xet6AwXPP*GAYarnE?83G;{X;oSO3>LCda2k=R?uy59CJp zuPCnQIrDz;MaIA(C1mx7hv6MqYMgr^-)aVE0s~oS=SmBVdEL6l|B`Rw9w1x#s6YX3 z9b6T_>yQ8Rb2)p#(8c|FqFANWxpd})iVX;cv1B5Hw3H1QvrS5z#Ou~>luBxoav=@l zy~;T;qMl@Qlx~J2y9La>>8e$#=!S+CRKZKN)Rz8kviaV~OipHEK^ScMJn+UE#Pmsn zvvL5uga+oXpE|TGtih$~cJI8I-Jz;>ZG-du$DS!&x=RjBoj{%m*#$k)tePFs7QFdxW4r8q~X04Qrd6J5>p9)T^}4zHM&@|2q2S@#IV zZ>s&?N?yLGx%e;1j2zcXLCF7zY=K^$v?Q!i2{s?X04pQm1LzTtS49m;sKy{lV}YEz zuON2<*Buq7_mz~-)HE3-DplS(?eaGXi2*&;e$smFHKW?<=M!&L!ctE>=}L6ur~+KN z&;YvAYj4UdHz;)lp0Yx%&?hiID^%@2_VY5q{1Y+zfr{#P`$?uS$zok65! zRyGcTQUZo051{P^Oq`hFnSz|P=9K0!veB&Cx6T5&nf!;h+u`1E{i}hq#)@~Q&<`&& z6k=auX=WXgji=Z4`}@UQHXgEise>U!c%7cC2Cjx`ct2D^e{CEm<+SsiO>c5~lPil( zZ1$~pfS~OJAO1^L>S2C44L2Wg7PYEID855{D?$j_!5h5|?HSGMps*@*@>V+p)v9mW z3^%y}7Yp__Dd%(`9Ah|1@qbB|3$s)kNk^U0n(h*=B3!Ye3_X&C6du_+uab;$d4!yW zn^U$bTh;O|`@ORNjD)@YR@F>P>}N5gQJ%EwgmS8ZU*Yv19K{y}CzdZ8c*N@qQD6IVqF^bM(b6FrSrr^7x66i??xRgH zx6Gl!w_Z3J56)od@!gz?+IAbMAPcQe5I*mZnz@v=Bew@S0ch^s<9 z1IWz?HKJofIp6uUucd^-ovPPL()c?FnFeW$iR2Kv98`gxK>ZB8^U=zaO9mST(Vzu2 zJg>JF8;-kzZrwS6{RJzI!YpnQCG5beExJBB1)<7ld2 z8_|+Ji{~HpU=;(OZL&`yuVrG6pg3~Ev6W$U;1;K3 z%%QQ9b~V;0N0j=0(3O|LS*Kw6o>yd`mvnE)CpQ$i@zfOTS^ zud;UVFbXFc5e2~{o7eVcAd*@sgo9v!&KL-KHi0L9_Kuw?+Z2I{*^_wzxp^o6IHYFi7q?}y0>doj=MT@wvKH(YAdR) zfb2VA(*R6RMw^07m^=t%w3h*e@F+G8*1GD++cK~bw`dR+M^vFSlJQTz3b@phk;B=< zxZAVmaTL*|DR%dYw!D#PW8sj+R>pT&Z!%AP(cSJ6O48U;!U*pHhv|JHF`zSC4Ya2l zchBB>OV**|BTbY^utX#v1|v?SOS-rc7JR~}0c@R^iVty@@yH=Ftx5JIe8nWSdDpxWP_FEum zq5GTdiA6twYoyxcrcYqn2L9?pt9%SGZ=bbIML<~cIM4BH`#chSI!6GZ@Sc6h4~qYZ ze!vmfhqaEyq?Ew>n9(KL=IBE?T?Z2szrcB-mD87i`;WscGjKTLk>^M9M%o{xgas{) zTb~#yT=t43Pv{85JI~(swmTW(cy)G>I{gYiI=3M?e_PU}LabUs>DS`hs5x2foINQu z4i`$T{0+-@j`kh4#Plk>%LA%iyH;~K;a5g|@{ce?vc8n|8s11Rm`nC(0z7c^ix>yR zqOIi!?ay5z=fDk>c=$B0*j>j**FM&xM-Pq4rbYJxxq2+)lh0{&Rh!W%=@nCK3>8%E zs$r0VTcmKJ2rxg)o~EC{E3KA(r&bEigt&9@ z?8Gbz5l3zz@qQn{x@Pz^6S{FyGLc{F< z>WkdTDwDDMd1@DtOF-oa6|F-r7RgQlOUkIP$-(m+6QI5JOXkXi)r+^sbF!iJL0(;m&qlON`L3Hyk}-z zhh2{aMic9#)F3<^;t%0)r$J(tHwAb*BbqRiVB)Z00+nrJFJb=x-V|dK>SCce$}~em zqrHMoLm=!$u_A52>AYbR4UsfeiYs7mF--yEat_34RzbglvP$k8=DV7OvZ%&XRPd5z zhkr%1j9x`>cmH!>;o}Q8`@v)hU*nk7Z3x@`>**hIM0F*VzIwASrIzy!!iFB-MGhfk zkn+b-&RBy^*IAP<+@ls7QkfWUn3rPBe-L;DjriQLV&1INwKKCZ(TL=)hY%_jormLh zxl(wguVoW_Qnw0&=|Y4Jl}lQy$JRqb&hr`UeziQCu^c}otpfv0Qi zk`X@34i+Z*pZI2(8B+F^`HK3%az?x9KOhWy zcZ14qqz9LF$c$>M6g^eDX!_~gr+nYaLbo$<;5|N2w>}Yi%W{;N;%_-?_1)E zSIh4@ZnCNtWB!9nU~~N(G$)%0%k>uC_Xo9-2r(MgnL`F{>@3PSRky=&C!2RsKy&i2 zEr(m)erLyZJeBjLBCfDT*G>uks6vBw=_`*F_5P3?qVO5|s5pmIqrWhD;cWF+jdVD6 zfF2#K=T=S6P%LePp4)-}Xr{!^FQ<~v=cl6Ya{&)1S0wMRX9rbr5v+_MnYRbMi%QHh zMOuSX7}o1jmM@5;Z-YX<{H@MuYbhA?kC9&Pw}`h!mIYrKi7{YX`@;2OyBJUc5Zm_+ zfm1MgRI#}h)2OV1F_5;1=#7S3ir7@oTY*HGw27zt?tU`9ed0!0kAA*tc0|i(Z1u}K z2PDGk78fY6mW$6TxOxU!M)F)63nYg;>s*h1K37LMqOr`4WxSHC;1_+zAE)K9Z($*3 z?%3Rh(oNy{>6t_=JEkjEtzOpG&Pg|eFwXXy#7Ivhx4@e`qjFy0kjP=Y;sMKo%@hD- zY&#M#Ca>y16qKkQl!+L#_0ZU3#x?=&c1;^TFPv_a}>ekJKtug)c`<)m!voz@j~!+s86v zeh#UR8^-DSqTs<;>E|r|=Tc#&pV4UupQ{~n$~O#n`K(C8Wze{;t5iftL^aSx1@spF zt`W1X=ct9!EKw~|PbW2D@Ytu|zhn0kVgOMTAbSqE4j96H#}o~7YYj08y4I}O7eU5m zld0fZTDo20{DF}DR?{NSm4i%6OA`36++pt}=@=+3 z*W@Z`(XyG!hlh*0U71hPMGDqx67ck{pdS)af4D3rC^N58p@MBvkU09vvC_`cOT`6L-?#$-10he9|ypx;e$%Md5~ zJ`VrP#9V6D>rwD2pH<#lw#RJz!^8Fuao8={l?ijy??6>V81)Y_*QCGv(P{ zGMvB)P;j*x>mURaXr;dJf)7Q{isGjQXaIeR&HmY8m*^PMFFgwWfd>!17|DY#L|YI) zC2N>GlkSZ!>=Ob#O?7$SMH0-d+f?I_p8euDda5oVF;(nltB5n}h4qFZHbCXWpZ>FH z=L?H{8*~X&pR7Gugzmzbg1rnU3s>8TgCfL@%x``Ix$$78 zk}ttC8Mz#pnDb@D>`1F$*`x2P`oy9Sz%;@i#Q>pnJ0YZbdkAdZU5sFI-`8;f<8%>Sj*%1a-MO&ATEob?ce6Y*u0#EA=YoxYx7o z`Mb(G+wbXld2B^P{=-cHCVRJmt_X9WZM+4XQ{MNN#(_9L_4bxFBR)@~iePh&apmiL zEK&%Zu=df$cZy87vQjK^QXj-r0i&q|dax8HA&1Qs&oc|a>GyYJdRIrhOJ|=*bD3T{ zC{sq~VKZ0tSTWWv7j6J6@1kOM%Nbo@J>E~Q+7l|@{-R$EUcB!9$;4TjMk5uO*x703 zJ=oE(*G@wd*Q4*_Hh=L6%QCY;F3F&xOPV^CcRKBR+`#4Fv}Oa0h?}&+ompE80u7EF zow*==;cJJb`qEIJ$S}dIVIGpOjVmn*3Lv|;n6}3e^5=TKypy`x1ERkuOXRP=Zvrae z*q-exbmE%(+G*~#4QyYuK+CB(lG{n^|B`SYwzLO7-#pfJ53|+aU+T{A=Og}w@MfH3niQh z=1(R8Vuv$*BCGGw=w^3R1}5z+#uvx-%?X==(3>JR52=-M+(mRcq104xi+3@`U~isa z0o*07^8yM^Qj9TmKL22M&Cl_82HIce9to>h%axKE*tB0n$k^WA(QxBsM%55y1^95V z-DLq5p~Ig^;`+RWt3$-kHC59MQys%p$HexP2J#9Y9is4zi}-zH0zt1RkXYo+4oGie zQV&|ZR?QKJz=;#2*qL2Au>_bUfpFIml}SwlyEzZf5q={QZ4c{%7)5M( z$^Cf+SKi!Ucqzao`-OD^NLm|2pW$jL;RJGaJmW(M`rW<@?h(RZ&J4xFywcy+ILsgi zn=dr(`k1iP_D+ep10NR0H>x(?aj;xdRfBMOgLWs)f+JAkr&&%xh&{+oK$sWNrOf9` zy+b7TS~B~zpzU_UX)uLODwk>zmw+zFCQp%$sLJ^EAetw<;Mc@UifIj{XKOBUnm4|g zZluo3rm*B@>-PGm1|&N2P&rFGez?L2oVg)!YkKrhe&qz^tRK0-s(N0$`LZLz=N;Mp zn$0(ka(jPTz=$rl4nOrM+BSRoy4F-NCY30oY45e6x`7VA>+4$ctm+L+(-n~ zWCZ8Bd+dPjA~2iy^Y@;Gkr>6wE&c?&t@Wa{8L~Exg*)I1?xPRY%`YhZ*~qcz3B#Hy(-3A+)M1 z^Ib(Am+XmB+X{4YONg@(>j=`@+v8?QfyHjjUu7R#hB<;EmDpJz37#V-Vd(OJ=kZb# z&Bn7+(E!`g8Ks4-QkoV?w7N>eaiDqxmAWU)^tdWM#SUnO+PJyDt~vz$JuhR3Q$+Y_ z59!`QE^2{0$p_jaiY0sZI^iQV=33;%Xo%$(Hp$#M>KykV{A!dDQP#^B@lu;yt2aof z*IXJ5usroPU5`a-;dKWPG9r29L#9_L1vnP6m`YruJXCI@>bGg`&LDa?C;xEI;;5 zg9M|;SkVwn-x`$NrR|IB)QStm5X|*$7FNu|*)_i_?9!@oZQw~aKS|)hy%{<#Cw@0} zg=Y-nr6JH=N+X-*`ATw!Z&o;@=eQWTA_8Hr$*%W61UOBu&FiEKcV2XxY;Lk_Kk!aNOYTsWNpxHrS>!7xz`Yk0_CHIS5M^%p6@G?_#c#ZE_Y5&EERKkK9~%NKOSm{%~f$+*k6LYQBx*=^r6 zlZz!t>Mt9S3V=u|WqDo`Vr#A}jUp*`M^4=BNDzRSkFiDUtkv0ARXM-U zO{cwx;;}ymc3yu{2al<#36=q#`)$nFI!23{^3E?5-M1!DbcJ2K=b;!ma!)#_h*E2# zG{q4D=vaoCe}yu`BSX$>#~Dh8S;9(dFguPxl;_Uw*OD{CU%jtrnXoDW?Eu8o;mRgs zc*w(oTXmVN$JB&waBV0*k^j#!Y_euw4eAQ$@t8B)a@Dx!JeO`xgg~nG#KFb`aWYNN zI5DICcIt!^=iPNNp5^agb2@H(A2alX6|58O!6Xyi6*dk1Y4@}nURK@`0XCBAL02pD zbWC`-6UhzneW&wk|8s5dBfh}UMy%uuJ|YcbVs9Dn8wop`*@AcgOl?`iFIiQt-H{=DMcLJKNSGFWFkd0VY3RS=Hx4_N2d&eWs$au*YjMfOoi>RJZJIM)W*MkKaHkZQr zS$jCk=^U5AVbnIPO?b?U#nU46{0#8|n za)Yu_4>Eq&v=qF!;h&dn(D`dYBhQ7wfpIP~skK5q*o7>gl}(lXeXPSLgW%FN!>9Mf zcgjcCCHmt!S$H70I^EhMwi_1!HHZT`fX-H(fQhbcs|yE{m`&{TI2Fc4d64Hn9v&6UUrp zj1v#y z4{eLE5IT}PLQuSj%`j7ON?izn4HLq@Rh$f{8S&eN=4OSo4#fsg$dn#>I!#P3B|EMxs7FZH{AxrOS|#3oLtwyv+Q_#9^*Hs_AUzp{ zsNH`;#EJ3Jym+b?%kN!Wx5Oxmz}0#_Z6){W9#4*s%Qzp+%W&HBQo^neAv3&&m9&{K z5;G~H#qz~5F0Co)tL)WEM~_tan?}P8jg;WBBk$^>3sevRyqtYt@9# z@_~pAKnT7|b2Z`OlYy07XtQd?b@K6byek{T2zn!?EyS19Ga_wRGJd}7@!KM={IdB( zFFW=LoCkK=Oe_}tPDjYz_owSEW^ipLds`Oy^(QwyBw5pcn*|{7HB-i1L42d9`}YQ1 zxCommoBRrH#Il0d@PKxAWT%UJ(boDGUW~a?H&9Kbb9(9L&TfF=)xjT+pEZJ?QNal9 z6YUG}k6R8mW~X$N{%TIACmKO0&@3~1z}v63-xgXToiP6>^-E)F<)e2FJppM9;uIPY zXzgJ7Ip~(M0R$9k8w?shCKye~c>f$N;2NRdUJeBokEttqpX%K9w(7`Hy%OY@M_2UO zIDU6oT0%K*aCUX;h0X6F_UOjPapiG5AXY_!J)>O*q|%o|ar$Ma?TLkovs;V0Zm#xetcBmf&$wkF70tt~pFMG#fLK>U0Hz znB~{ltCvHPJw|n;;Zr*mNO^{fcPxA>{uJXsfL`6as3G8dxl$e>STpOWyBi#ft8)~O zynn0Np`GHEhNnf$iDAz;uzgdAEyti6PWid;sELSWe-K1JP3Gk<~D=; zsU;M+EIycecc?9#*4W2tdt7%~n<_ov2c=9RP(&4Fxsb^phVXgZURm!q7(`{6+Tt@} z@jcF^u<@@RF&GqOa};%x#|Tnrw7BCWI4Eu8)thL9W4?UlS15=2iQ+j#C`zrcfC;fG z-%SP@3Kko&5I9%Mie7DsKVTG@y~g<@uhT&mnZ6~o8O5~KyUf&yUp!`3b!gf${}jCv zhSV{9%zIW3j^a=q!ms)Md!iq80TZT^tLg#;k1jqc$+`dtHK8qMeZJG{BMM*jU#)vE zmovv?zhV<&q0zi~%ZPLM$E%YgL@Kl=R+3&&5 zzQWu)cXE@wCq8;1x({qDE2E4NP#XT!@2)%dRivF zC(U>0#?aFl9OGS|6n_)!p3FN&T?=14tsts`)yVOm6puYsctQUww)_?Iv3L9tu^+bH zDtSNu1}#<7OOLH);&vG8u*gct3QH1UiwlyMorAom=f9ERCUgDfW;Cp5yGRlUV z4ml*nl=wt^KPtv|v$Cwm#D`=bsQZ;ZY|uiIG47={{K7Bx`qQZGt$$;AAk296t3cVJ zUHPLaBga~)>wWfrm`@NJldF)nfBo=p1pTqBX{cmz2S0j4z@z~mZd@w4&5oT!Kc3=o zc;8jsE^Iv}!WRmY{n3hPENaWM{os&u8A74{fP~th&ym{?EaRGZl(KjZZ5*=n${dCG z`^d_v*eOoNHQv4TJ@;v`DJjTAVZbXyclm~Ui1?foUsQ2>$89F;9Eo1v6x*QFe2%0u zf87T}k7R9```}s8Ra!*>Y`!+h;I`-o3J(~y@No+EaYE=uk-49;9Et9IyXH+Jfo!0G z5R({3AE}bl!_?lBi3Q`&bQ*0ap}jkDoUYnRdvt#ERckM=fya#tA=iC&vbuK|Q9-Cn zgP>w*!dH>LFXS9f0FjoF(vvgTH>IenjW8<%WqE(#>8BrvwdUn#& zT=2N(6JxE+T>K~&FlBt#&3lnwq{C6n7&)4Ka!`?Ar{Mr}FGp%7U?@~w#!bpJiHkxU z{~vGfAuY2#5s+|xj`X790Emhb?Qi~CcyuKVA&<^dt#uwuo-*Bu9Ml*~kXc|$4Yjtj znDyN}K5Vys){*zDx?XDx?aeZ{+$V9QO?O4l2;s1C$VRJSGDh(;t~_jroC5(qAk)L) zvgvqiwf!pXI%C)m9GbNU)fpb)hmf_T=s69R?1C6PqGGbqxwXo{Nl9vOrS^jv-xfQY z!ESQ%at&|VJsAgY!Ly)Ay_YSO0GevzU5fP=h2COj?YdZMf~d7hyp#r!%U7M_l;W&~ zV_f=90W@-VeBY^$yFBQmK>V|}6l3crFLEGC=_{**ErN3u$CQl|xcF1NK?~e~PXZ&r zuc-7sOHst6OYwbgmTaAFf5C^l9e5V=-Bbt7-3I-dnlzScrZl88rC7=-%3dJ1zSTc- z)p5hw$VvenRM`ris~1dR5I2@a)Isg48>v z_BiA~KH0f-|NL#TBUTdxo+eky+TM>T`40yA$xYpZS!B|aK4|4U!yZH;C*KU^1DYW! z23Lz-d&ey7STPx~$O;7(Qp+iy&@O3pY`I|H zt{H0N$MFAbB)bcX_vQ)@Y5#RC(TsLzQbJiTnq1Q#gsWnWyc%u#90x0A;)MMrHKej3 z7$Y8xzhiTaUonuB(Gh>n7jVNB2zC?p$5|hvx%Oxz>c}VrJ+5!`IF*V%%-_{&jGoDw z^;bh`P6knT7qM5{srSJ`sbn39Td=W?AIWM`>Ea&H1@wMY&IAo(XMs;VtW!lKbRa!9 zJdHP$n|P-pEA7#sXsGwxt5)oCg`CL@4yklrBM(P8B`hhp#@e^EEWu+mhh4FBku9VC zBEk5rHOqtWY8=b;RZ>?T0Zd~o7ZK&tLJYIW(|_@OPx}JF)fs?UFG*4L&4KAnpxPU#s2{^2vF)2_Lg%KawRZKDp`KA#<+f*?2cHC+| zOIEgX&za+fv`qCKsYQfJPVKPPu%j8N7QWXt3$9kvJH+|Kf12Hx;1D)kA=Tx8Vgz_b zwHwrXkF3tp<`ta2c4H%@Pk`!TE&0doiNH!EF7n5DcOBIg7cNI&>rC}d)LuK8CZ$VKtE2&2lly%z-PVqrMf8awj1fdHDWHGB|atqlBV)H zE9z^2>5)y@#FKvKMq}u@fY+puO%^tZf7N#zO5!-+kTG9GOmsuH8fn|w_C*`D!zbH^ z5D4b*V)mN1@UbX!e~XGy!3g71b(N^tOwh_uW+jIUC!31Q$$!`WSnt!l?;V-@6paNt zd0Pk=m5=UhX~iU5PhVKB9zSfCO=bM?gW9#_j^7bjRf#^uO_xUa|BY$_<&ql%Cq-$` zojyKEu1n^2@?tX2IT>io@;avo|6%MXD+I&0(K(eH$w{nctcT|&fAypSC$QG5Mpxaa z!)|n8Xx{r>?Vyg8k%dohr15;3_aW(3KC%%tntR;~;RKE#Wfjc!RvxyH5%X4`dfqbb ztbF>)$h|5S98^Pz|3UPW*p=GyWvf>JG+Z>f?NtB`%Y?&uVItNCdz@YuP2_3+Q78RW z*R4DXhJR2B^>+p$AYMEWeb(ebkiccN5gaeeMcNYCe?_HWMx(AQ#-geB$x$ntfQ=*0OOO1NJB!S1sm%(b1wHG_tH}huW#<)bfvPVIB`bK_K`dOam;1i-v&T5JGQO2%-MjOf=tXMz+D^3?Z^2FB>C1*qmC$foVl@kTYaVdhYj33M|T? zTmgmtisoN~ngCd;7|7FG>F__E;|83SK!Fx|WHt#L=y2%#z!mh*LCol#7O;yJkWC?h z&T~X{>hi7#mq&I?Ue?bmVTr?<87DkJ!zcYU6t~qZ9sHsir2Hr z_%y-icqh1;5)A;^tiEEw)b9+nEI1z4c?C$-3npJv_G=Mi!Q6OBw}S^W9$;5+!zNY; z1l?@TGZ_K_JOD#LyuZS3%UUmLpSiT11Rs=gIVpwWzV8G5!M7uooQIb23Lnr}juWD| zvc=No?wZIodcX{Kb0NDb!&P=0KQ!v76^E`DZvTmpRgT?vs$5?~x*rc5q0m@b zfIq)=d~SzB<6jn#Jf%~WW?a8mtN~iFCeE3WBLM1;8rXOHG1>|CP`n`zseEST47Op6 zG1aw!WBzso@9c*`Gu?pi2S?=8EVUQ~j4Ru^-r9w5`$v&69_2KO>P0~cQ%m(DQL6$8 z;!e>YiC<1?b+mm=OLH|sd8ulgGl>ESPlLjXc5Y@Ff;GJ2LYQpORf)y+2S^{S}wb4{6ORGo%vPg5v$k3T{4$sB4z zk>+W7ZB7T*)O?no+-Ot6)_j*z&84S;Ias^XEw(b3yVD@C1|YAMn88EnD#t+r;RKc+Cxd7(%?n60NynksD;eNi z;pX_u=UjNEo;e~wXu3bM9u4QcYp&^w@xJriZ@L6*f**Cp9P84B;=Ta{(SgA*`?x^9 zF>tf4+gi$@2pYVrqm6`#;{~jjz4X&a^%vlIEo0F&Km^fh&*JqO8`(83zmiB zyqhk2p0z$drf$dCU?C${*eysSts*;y9{s^4Ui`{}-^cuc$~TmohUX^)zG42-zr%K% zYY*kV7C`P1ecL3~+G>HD6Ctm_Fug~0sGKl0kr$A`(#swbspC1PLf=eoCz&^6yYui8 z2$<%nISLkUohSyDZtzF_pJQa`d=Ao$|f@4-T3`Fc@a;WZ+w??9;~ zN)&cWl{Chh?{X6we4oezo{WJued@?GGm&h`ZM`5lh;c`z)`(Oyl_-;5neu8 zHc7tMdX|Ip6rvw6v3)A*0G{Bd} z^=sh4w7gJGn^k9CG%UX?&e@a-Y`N=T%L8bB47|r?5>PxghHx52EK(D1bgpa( zcjO}fYOgguvWz@)dW~oPdvlRC%jK*-AkKOoZyUFSnNut~;Of(o(su@zYG}B7M#{P{ zDZm_oMeQrazaE{B^Y(eaIL+Xm2_is$DDcUVjg?7SuPR)Ahgh zAu32t-KzDk=AMF*iT&o@Cmd>g>7PEcp9KVC)o$ylpQP)nS=6_0?5HciDz%6M4bDfC zV_igr+Of%<1}F47oy^59LWr_&Q5L^^&}lr}&^}h9T|R3LWrI;G)wt>{!$`*Ki}8)r zY%+O_m4$?%Us-n+;N&Q8QzdO-7%^-vMNFXKY{1iPuhTIgL?qNOFkgkmjvu&6+#osc z`EUQDz`nzoCvd=mgOJcWZVhSZ(*Xs$OCK=S1VJYJ6&)QOTV~ZKXYJl6Z%7a(jah}K z8^mmb-k%O&G8N7r$9YF)p}`&q>TMSUT&-!331!1Jp+Ux;JI&0LHK{vPQq zVtQaFlfd*^jtCqrOMpe!V~W(n&iR9t6kP;|p1T3%*kUIe!IgATAqCcQqFp#X?L-2m zT;*}A5^>_^%pdg7X^vQHRKc#aa#cKxi`eXv&Tz zSAz)FZ?=-NeD3HyR0JZ5^`3%xEjjeLcl!lZId$1#*q!I$#b_BKZ`D*m-ubfHq%`$1 z#9+69(G2W*dfnLq$JpEtDy&?3euzMrh%h%Vjqvz_FZ*!Wdw2pQ=qgO~M%6(Y#xIm3 z$W!m!6SJWwxvCB}`Kb(dr*DKNd9*;n-5B;PqlnX1U>OvxoIRKa`KTFS zg0|;ne{f$lFFBCZp<$@`+Tia+bC>j;qd36&BS2GR(-EtmyCc>`O*Dc;YvmD5o}x1(esDq|sxfV=aD<2u)1a>f@w{dx9Dq92P# zJ~RiDDQudKT{)S(#9gJOKHX#{Wv)ezW(=p{gb+e2R5VP+ z{+X!+p@s+-w4-atjhI1)Rm$v>ckrXDhD5s)48*$akIwP8%D0UZNBXXy_3paEw{vCu?*#yXLH$)v~!)l!T3j_&Op0yCHwnCz9;)oa(7WxBEiyEEbBct`eI zZ$XQPvi&^VY~)><0?I+TfO-_Re)arrPa?>)IGKf^62WWvov+76P%t3@Vacm`E5X>r zk!@x(VFo!o>4%r4_7fg;wy6-6B3jitCy;Z_TQZbMhfx5ro7rU*K-I}J^$Smjdo%lm z7jz;eY1&Y#&_-}vn!s7gCSP%5MaXyFHLl8pP)IY{q?)mqtM@7l>DYQ)Vwh<{8QmX! z3sP7Gv#G11x`U2KXIpFHwhH|UD@7aKB6K#*H@*gPv^wdbSeCQOSe>%aejP=Jk3})J zf-34gtxPBeK*$bEXqTL6y!ETPd=m?H#k~248dhBG2?b50I~~qNC`d;ot{6s;r<9C* zFCK|S?jIXj0N@CQ+bSo*>!3@V$5Wf#<;i>|1c;P5>t|07s*1M}GUJ|D@5!B04A?MO z^$qhsEM5dSA%9&1%9H`g5g2s^_$sSylG!M_0TT@9@G;(nQx*=AS!X))_Ira$z$h`i zhNwFT7h9t#hWcG+a8+&Wx6K`h`2SoNcqYcExxkGkT)^&SVXxhL7GVcI0e)hxfA0kg}P8ZAKnl z1v!FQH|q%Fl$U(4s~XLznva)bHzZhOfHgHDoBG7agI#SWThZ4bQkg9oI z=m;?_XjV`639XUEO(&vK4|Q116rMKF#r-YqHl$t-+Ha&Nu>N9%4as8X`AyWBbidDR zvs>^w07E_!!#~PjEdEjo@e%>DhuqA_i6DpvMlhTLbn;cbSD`^+Xr19+E^MbqcyPa8 zi`O^f&e$*tVu9ADqVP%_!68WCf6%UxZL%Tw0$SpgiCbbCrAG3{!cK)79*xlZHG(d11sRk z3+#6#un>K|CdJxd!EAH}QYmp8L^2V&05wKvT)3efUYrYXPZ5>ek?C<+)h@dgd^P| zrGvx?k7=?&c4TT&YK)j(x`3AaHR=lW@)8cH&C|k|e2x|rMuuN*FXNZ=10ZZ+VPsq7 z&78@peiCj7r;6DUHs!&!?35z&po-c~4iEB46O+J;opyiJmmJ+>y3{*w&HiPH>Fq{E zWu82%^m2}U6W;n&apaEaQ4_1Oo>;FZevLn1;tH^~S~DBv6~E{e5-{w@5Wg%S zY(Vv30WnFv1#oRA|CjL1J+?w-K4hbhRoH>W=5-NTb;N@sS(^euX>2U^CudV_4^E3x zjL1E{M_y-{>%DW^J$d)at$!}>T?6ufaRkK=d|u12=UJ@`^)tng7G`575fnX$KFPNl zxE+0=5e_QD?s2>B-a6>1P?CyQckNaQ7DV+kocT=-ue2!k*sz7T2j$3~c97b^$dC)w zPPw`n3w-apy3NyujuyYiiXr=aB&-p90de}d{26dc)Y(>=uFyL1_8M2y2e@BVv>w;l z*O0U`YIv?Xn}kqJIhU<}X>-azMf=n)0u#jhCRCWrm~P1)yQzW`Avav(Ocy{bc7ZghnouqXO|^IpR^R4^?y=n0cKqbX>*VV)4P}I)vG! zRJ^x0lhLr0!N$|vt1h-$Zp23IJ&6LGffBKtr{e+_Vz-&^Gu#8UVj|AJr$`I+K~>`* z6)jphimpc9T-r2qRK&#JM=dO)()>>L)wc?w?-C(k_rbfn=TtlDr4;iU_3g;IkrjSc z7gi2z1gqpBr~PLjnSeH3lNL`78hV<#W0zShBvEFxbnl+zps{uYu=E?0sB|kLo94=& zr%xbKm$%Zpp`~aa+JyNhm_#p6J+DQI{}N&cN?$Ws@N6n#Gy1jm${SOI=!EQa<{`E) zpDVtffxm};&m|rZy&|aNSRBz?Ws~AV*k-b1g+QlYst1-Sz!z!Jd>wCdIj(%{N9aV0 zxb$0;KX6;JA;MYOlFr)HX&mruNME{n^Nz)3#rxOg1!wEVZrgM5U6HdZSzYk3-RUd` zv;51JTL_&dRm_w`j!}LW9B^SQNF1&m`6Ar#+a|VElELGEfFJRjM9sw!V5a@{ zsA-#_yd8^G#Jn_*Os%lqryh)b$cHX~?ee3G;?TJ1gXjx2oo-q^xA4a~!`%s;(XE5c zI;lqDB2goqUC@F0Lt~j8(F*TM`m zby2IOKjIhuT)CZg5=V^2@FGsDwL1V-<2yx#wwm<<%Ae0$@>0ZDU#nl$t*oynAl`9+BG&Z#6xSLz z{-k7=;dPTY+72^F>Yr9121oL8V}+ashEo-#RXV}~0%0%ny8YwF%c{q0QOrqfUjtMf zEn>d_2T~}gmPHf@`!3ElyT=2cY`MyFu=GQCJ~d%*U6~s!>gz5@bRM*mNZG**ATQhO zwtwr>W_9)R6eUrtT;tZK3JD&5iz*2t1k<&f^5dhPKxW+73F}kK9I@hZ^|VmI z77_}Mh2{@qCf+GHJMc}cbqAk3bKPWdn#_uXytez2tK;U*G5R=fH5Oi~K7rXf#Iiuc z7TCll7(%jQb^QUke`bE{#|syGfV3A}2?=P8>IM$a$PGhjHj(hQ-d#aWc>8D*=kO0T zky!PpIrKSCqC~d4)*CXUeONXTcq`k!>VkniN+xN%ZW>P6Ge2^xG=qm)UhY^XMt(V7 zm}>q(;eT|{cK-y=|^4Z)JDO-HGnY@(`+=XaSGZ~! zb{Br!V?EX=-)bk5i;4}V%>+KMfVCT)>5|*+)5vljVTF5roB4CUF`Alt?`F28WA4y_ zjao;P9=d+N3n7QHL+>zeOo^n386TU69Lta`j;P*B{6%=eDAeEd#Q#vebWHAS!vKsn zGHuheqDW_hEN)`E#@5h}W6`?yc9cA)y=H0y;?EAyL($%r`%`VYeo*1Bk#+k8cQ3S8|5IZ*xMbOd;7u92K2;9TR;d8MZoWqvYJrSXbbbfz!~2 zHExsm4}6BF(CAlwq(V90vasbS5wEw~qxQV>I=lKLfxOe9FX@J@VRAkg9Gva!1eH^xemGQh~bjo@=oR}I_WV8I&p6p)>Bkhp;H-I^;fppeTK~w9BbBm zTjC`>3&l^`LQTSYqShjix(QfGoTDK@@*}ZtsiGCyVCe@?yEbpI6$QyUk)$< zZv`sVE^=(`da5;Vgv5%)YKa(p?2$J$O89LfA>dT9R#UFt9wC(Eo8;fUoqjg*=r!*d z7oWM9Dos(kwZd%qu!x+2;~yt$_5&}F-3iu!e54vf*OtVJ=X43Gh)F7raW8f6f&d65 z60b7j;;k`I8A>sFJ;bPyY-tg+@?ydG%>tQl2H~xHb300-eqEw zeO&tZ)Q5}2>G7P~ZMzw+AQALxkJkEfsdtf-;IEMkF#RBdT%4u0xC#z!wpGGTSu;oa zeJ3JmVoMYOhSokD@kgt?fW%``y&(z$+te?cV}|> z03C}Yx%VP*@kw}nrXIQwDCA1ga8RwIFZXkO#f5f79tMz-*FBAGf}gdiAb#D|*$Ski zLzQelLUufxW*kT^h=sc;-k|FpnErpbv&^B!lL^Kymj$mBuIq)yeTn+75_dXYzUkvC z&>J#RyzpMej&;#;S$+xDUczm7+6S=EZ_feZB((VaaV?XDNqI3OWTGy|vw3i7&^&&; z#JxlqxY`RhXJHN|s|p8)kW0h(I9O$YY&++dWvDK{7j{-1DPR%swn_+pHX2{Gzj6+M ztt%jh)jAWhP6s*nCh&IX45hZP65+9V(Ld&obJa6O=O|!(lYQ!EPr;L?t*A9T)U!x> zvoV3)Por|y!cgIN3P$>@V|a@k@664j3gUfP!I&MHt_IhWQLNGwVQrsP-~u)(QP|-{ zTa)?7y}s+|_wz{ZuBqmYQw=xF=^~F%%3;3+|84RSO;m*<3D9fg95Y(OBRRB>@lwuG z-}WI}U21DXrN9T<-UP#+&`^PDDmBwpT>&_;`lYpP%}7F20!Z==fk(K1<$2|cOfn8n zE^yYmswl}_yjtXO-zh~jIt3@Ks)ApBMHyN^*k!7I;#^7Si^q>V7L7mb4K;wa-2CPd z-tT_h);d}V4H8Oji^zy5xM0MaVc7tCx$AWtymLMWMQr!!&q4_{`Me5S!iAYGATG}DHb-*ik7Ga;M)%wJBN5kJ6BLQ;46JC8u`)oY2x&_`t>PG zJcHV~(g%CPugi4yosk8+s6SBVneB=ekRv;oB>lkOYN(Eb?03hi`LW8|T;haMRwfkk z`!#UaDZdUL4BVNZ)(e1>M%U!`bK{zjs_2@uu# z42BBE#d5LGtEqCR8ry$QRC?Sm6&KEfzgZ{o(T1&J=~3m}1dMMW zQe#m*U+?8-wG%}DQ+Py{l0A!`nb2#{0|c7DszNX&1PYyXk$~#oxhYS4tl`f5yP2Y% zj(ch8?(xKaEp^EG5MHER3m_{r<2+E4*MnTn=SDrCl~b+;L>A(HJn zUNb8u{?`cbNize2yqk>e7rn?4v;hx#+qejB4VP7kM(IVYuvQ1`{Z~Y=dzd#l{Hx0O zVJnyrPPOac&Jo4qjS_G7sS8fz2S>&?IZf*|^UO?-7<(|O!EN?YR_es`79!}jmCIj7 zYNF!hGM^c8^C&`Ir*8-Z0~o-Y>ibDOtxmyw)&V1?RGv*~jh5VoZbbN|a7e^Q;`#%$ zVpVrTRvQKKqy?_v>34>|Vsoyyzq9SMzu>plUA4tRjZTD8$gqUX>}N082eCXRgPrK^hj`xvpdY)Un&`iII>Kt4f#K`5av|u zDx7nlqC4@l35Q@0t}Zt#R5qLD<)fs@C<`b82TfH=k>4j|5_yIs2g_XiZ4~Mhf)rvL z{hYG+XtQ zOEF%+@c2YD%@8*WgP@a+Tj$;)XR@E;QgI>Qd$wu0gUzM+N92QQVgUW9Z9&`>RrXFr zXymw=$XXHl0?lrtc>og0})9qM181 z2;+TqzE~{Xi&ZonqPF{iv90104bKS*Y8_V> z(B_3B#JO(5)vE_1Bwj^OMQ@sFJ3f7zFjpnFcZpKzhfCf{GIAdWt)P6}vZ9sR>GEQZ;yRBI{N|7)>5DCYM1h76=2@z?caM_f< zf!CJ<8r~MtCzai@1^M`M?9b)rZZp^OrdDYT5!0j4LY#u1tvsJO@%3D2S{%gf3D2z> z+^4CsvIn#l_Owjsr;AC#M#0iiU}5~9Pg#as8LGDwPA%l7_EJJY zF73_MPdOyjq%&5ROuRmoJz%S`RJQQ%tFPA3IfUXxv^8M^Pu~8ZZtnPVzVS%m)DFs3 z3tRfLBR$&&$c?<}X5tj+>QYA1u#6j0vza%~UyF80M4N+_BAHz5ExB@ zMa)}@i!{M>2Cr%Ocw;3h3pE>HUMk2%_a_!v3vBBt9TtT$UCrIfus0jk8rIr;^plBn zTZ8*&g$}RkN!bd;5r?B^M}tX)$xKP9bQV!Hunyie@5*;o_q{r}kq`M4U2Vu2IiUb34%ScrK&A>ADguE|en<{IZuL$8Fm zF%j2;q?0C$VDGj96Rt7y5t_$$9O-|>S%BF&%rxrHZ76Mp#7@YrJoL7tr$Le^u_!7` zHI&RUAcydhm5lHXExLi$(Zx^`4+U+wF~K^fxLpvA)?0W9>|FaVrrH-@+$4~1r!vxa zbJj%Pmz5LIZd9TMCC6K5%q1S{X|TAF1!2V8znv+x&?;4n}e$B<`Iz^a{|}y z$*I{RNKh($&d1l+D3Vc4wIPuI#dQL&`y;k4bp>=|9j3#+RxX;n#}Cgq39FFY}o)E4r{&cd0KQr(m$jXpJ=d%=*nBP zCOx7Tb&q1u^33rC%>xCx$TF_ypRMkf1#4V)QmJP<0!mjjeRwtOUzBfz5-Gb_GEz}+zhHOG_Fv}zijxvNE!~DGOa(ZJ`-jlUs{+Vk!#2_Zp;@?!bUJyYAiV#A z+TMf3C)6^(9y-N_fkCtswwKF9h<0I4GHYWWSf^YZS}zMz%z6=wZtMu>VQ)!wcu+w) z6ewY&g4IBfsQiMOw5=+vdC@ewBEqfo-s@%_2Ue;)Sk!F-Fag^m8o95t#DlLX+C{iE zpg!jvgS{hBD8VEo2HfC@y-ebrJ}zX3V(@6n4OS?BchnMXGRu`QxDRV9aW9s$3uG0I5dC{b_GSJ`N6JIRr|Ol;e{e`DLc9 zY>vAQ!w_0RY$L3Q?m+6SgzYFJ>^VMpO&hj!Thx2C#kkDJirb>=2)T6cCo_cw`syI# zzAcP}i4?Zkh+`FS=gz)ZF=tnsRD5|EJ*&PSOv0>l_*afibQj~}L)|sSPvCVnd#4Dn zCj3(cv<4{b7^f_m8p?EPAqbzz^s*m)Zy{-V9{+L>Vq}c2xi!t%y_Np`l(FVKNU!y3 zTqD$cNhz{bRpRCM4Xq}!uTf@1)pJuW zr+aurzHF<(pM7k39wuRrR~_V&QRdmKoL}Dn!pb61)7uyyfYmjl337&sqzAHeLS`=+c0k0Q# zp)9tlV7c}JftN5Gjg_-eMdwmv%NR5m=E4a*kr<=1AzL0{2dQl)T0&R$`^ja-_wbNG zAk3za=ycUzAeL#=^CEM*QoJXWLaZRatQ&=@?A!Rnn$PSAyCDL{6WLHOd%Ovqn`buE z_sYW?Kn`Mlmf~b?R1I74nI?I9d}{%t$W-~Raq&qrn6}xt2?tw&1h3KlbK6QjUce+0 zJ*EI^G8SW~2ANtlpu3lm^R^(b!j&Vnh*kV zJ7jS!u8I|Y+>(KdM8G`5dVpTHwqxr#Z))KvjEzaoFAB;vRg(f}y&qb)faIu*^jV;K z2Shy9%0)v-P(BvQ%q!p^&woJm)3hLH*R?I>+P8|#;!um<$@e#aw`5j&A##mpeJ9?k z^Ptfp(HJ?lkx68o-$+Y`0_?Ni|4qME?12Bs!&P_eMIVQmuJfvn4v<})aN0c9GiNB( zUpYj$nYPhD`~N^rRZ?BSqm&&Y`X5GSBbxC>oJ@LNt?GYUDG?`LT`_ABl)j709-NfCI>u!tU}nB3xfmyPV_NpR0w;p-CS5|7@d$VIyfI4tC~ zZV`b+@f(VcmfPnik@^I%8}sf7l3cIHJWK<=py;!w+7Z5~k8jE6M~;G=(HByfKf!x2f+~D74pg z`pbA+=t-f03x9BM1kI}-ArJ+ocu4UPd0n)RqnLDHX>FJUM z^99C}IM}}yCwG@`;7ECeIpU--S`RtIp#3i2z1>8(oro1d6Olg9e=m((*shwsM9jxzpqOGBD7gSyxY9EfAFcxFK09y{}o$(;5 zOPn%9(|3ME-8;_ziC7PeWU#W`#v5l09#)fGgX`{KgT(r+8>@JmzF#MVw^bV9Yz+u! zp)AO@(JkGFIN~u65s$780K1D|9nNXzOZzQj_1A_wH@Ps!AsYPof#majD;8rFlYaw% zU0TDz|C9|`A|wY*NXK%F3C zSZsXa-Ct=%H*Yj_YA_XV+Cr6m$VJ*afJ^mQ7o(*w23f@W(Y_eQ^%9^2eA&Fk>$g&q zcTr@kJh{S7sEA)wjH+SGp~=a0Ki+rGqA%vmojksiozwfG;(vtGCI5!(N>MU1_3Dq1MK zcyb-p-YO*KQtZ|LwP{w#J*lF6-#4{b>xdw&jVHXteijNwNPztz6yxzq~6H~0H%(<1u5 zCT)g%l*eC-j})Vf!}VY9;T)*?S|<<37?42%$`; z4qo4Nj(KG`_(v3s`LG?ufTspIgnXON6SXFCJ!^nB?IYS6?+B@pM)L%21H?vV?}&*@ zb_4=mmS&Lch2Un!YFriY*>5>Cl>wjisCYgwy3h>6cdmX}Aai+e`nsh^3I1C_WuJ4> z`M}5Kf{FK6oOf}lz%BWflar5>jM^n0Xmf&0g?d1pXjX{ZQHpkUzvAjkaxZVEl7I zV0SavZ33ba3G$z(&@cX&p$Mhz3R;i6Dj{}qA+(z>&$^$}bn|x(F9$&^Bu)Z>DFm5q z`lb$=Zt^hlq&n{mSY7c533+3GV7ytgWz6l}5`6O}T5&)816} z%IA6&m$8%{@siXOaA5@M!wBko|eqEDOklhO)(SD zD4kITpg*Z=a|99Pi=~wpm`_2@@7!Ql7hC!MGnJlk*SY+<%kK>3>CqLnro&;<$ z#5&hV_p$^1wd&Dvt>vb5sBKf{p=4&t)~y#2Q{uK&O{$5YFXV_WZk_t!kQn#tfp(!!dPYL>tftEACp`VmBnq-`g#~AegA+WDY1ol0Z^ODOU_ z4MM2a|C46rjAjV{Jsgsa^X~g8(}j)0QCGGVj5&js%!1$)g9p~MiF|!rS*P@xqK%XV zl9!VXw4(h?0e;T~^>HqN9(vtAgQA}4+R*cYl&tVb)H!jAfLWyZ5_o(KcTwHSm}hfF zQpW4S$TxevEEd<#ZaOt6y=;e0ot-S-x0Wi`cbQ=;r7vSwcfHcswvD}%)q7C&YgHO} z^8-b{+%hyWZ8!G`S2wQatY>&YNmG(`=}TelDb$wl1A=0}zdU|}!!EE6qQUn4nLJLU zy!oxtR$0H5GyfFqV4@Fpj-VyBj9H9v`E$-rq=CpdrOIoBJ#?0o;4ptVI2KGasZzik zFXSCAC99PnkwJ;+(53Bt|34y zTVUe6$Kcjg1VGtbdP;!`DyH_N!sAzR!fYbT^Q2CUz z>>Zr;YQTpz#p}_d7C;|yv4Ej44Gy>399q7Peo>y`0%uWuW+54=!8mG7G^ecCnm}g> zRSpYP;Bc8O#xjYDQcEk6@185WwIy)RQz8+2L`offAJ5Q@FI^MqdcG|)KaW&J^?{{2 zoyN2`vAPRmy}=X3?iaYq2?5&hhM9j1!dsKIGvE?qseX7hcSRX&kZUCGs1}yqcK<_! z=|Ah7{3c>WnfpZ%WMgb*-W?uYIzDx(hDo!E=QmI3tZ+v?2Ww;1h}t;3d&~I~g(*A- zwU6g&aD)Z?Oumtsu+|qBydc#Oh!+J81!g|_z9^F5_o?}j?wcNN9P_oM#(S6O7oaq! z?0cFPhH8^G;Jl1~5AYZ9G|laG_z`elBP&#hNEm4CjsPsrv#)ajtoa~++K~)i|DxtN z?V$5B{8m8;%x4Z?v$-v~CzvSyGrXSJ8p(^30*&@&R6f;!TF=N;H|T#b^TKLn&mCf& zK4`r4!UcRs^EvoAEY&}^6=|&?wd2(uy7LH57%|+;LhEDA$pKe9G4uaQfOWzddVmTp zBTh5e@QGsd$gb7o3#8ysK_ea<8?po5Q8rSbpf=qaToZOW^-lf{B3{Xc^8uu3mPt;+ zvq6U;H03OxuvaBl|1fKm>5Q!0KF8pMDaoV6pNi3UF7s}hw*$I`jm9~Sc8a4t;`iKI zSw(GVRo6@FsU--cGOiDQrlSUguy*raN`VApYsP9Yfx9;VmRt;^reerZWIXc+h+S_` zPlSyGkdH#0WCjfTeOand_LpokIez}+aDz`#_okgZBTK<-Bi82bjzN-`3K)stOxkUp zSRNGPToPxJ{aAy5-iEpRCLia^j>Dy5#TNZ7^vb7?z^iO?mkwH~#h5Ecp6_%;gk!xB zeJmwvFcb-z(+ukExsKoam*b3MR>i@oZDT_eEZr%|SOw3WvALzz9oqz=ohE%%L*k?? z`z#yE^LP+W@%b9C=c3QrefQ$II;1>+lv%S+&{$&Y4xB zgzQy#ZcFN;f`;=uf3(m6Cw+ru7XJeLK%Z~S9b(MWXlg6hreQEg>WZq0!jw(L2xpkp zutU$>A2OqrZgeKBz{-ugr_hkfmthr0 z5tn)s!#Xf@g~i)1n=7qBsA1;EXi^Wjws`HD0Rd!ZiW3ASxiWk27b)J=_ULU7k@Rv%8er(9LW(W3hE)8@>V)hfh-To&fY0IBqqwP zYM$N=qcgywtzp6W*g1emKx6xBTR#=ExHj_VXr{9@cRI;=Y$wf0S-scP4vWVM;)#B~ zke$q^x6v{`e5RGaoz2L`?_U`j!`XfZ^&wC`4;{J?O&nsTxFywe_h{J5A%slDMa5eH zj^n=QzZOgy{h`r+>~rv#mIe`<^|NvUeK0fg0UIDwOsKr(aJD$MY4t`UObn~qriJQX zN}YtT%c6NtNibiT$m06adWGA{LuR#{*5I)~A%4{Z2C}HbJwun@%m$AP=`cKaBZm|< zf?@d!K@MTBVc)OXPS30jhcP5I2*Xt83`mB*Mt@H4q`!ME*K!?cTnL8$&532cj)(f1 zOZ|7C(hmOX8*gtU`C~2l>ebe;mE}HWpWJ9nr?#GWxEQ^(xy26kZR{p%>|xax7We0$ zQf|0$YcOj2*1cCmG={O!vb!OLBdu%Pvl8U}oFmLH1emWP z;Qkn?)X#fyy<2x%nd||Fq&3J7aSK9uGFm{F1Z}1}4x& zjC530$0K3&Tn+-k4(Sc2_2-nd5O6paDa|Vm-T)e#rUk^k452$u?g4Ddk?4R}jQ{Vi z3(;@cGQVOjmD_Aki&WPGUcQYYFs&E2?gm3E_YKV>ZPosJk0T|oC9~MOMljA2^JOQ{ zIIyo7j!LOJc7gPzOBns;`Yg=btsl5nd60tx0ckAj_$RqbQFEGD(l=?G4uK`JcgKxs z$HT&YfD0KU=nBv84i0UVLZW0lL`is7*Pgg=0>9XX-v2*PIw9)YIRQ>e$$jAWj(-zU zK?_>*6-(CHRi9%he*JHqn=8 zQ-qucgNFCeT`Mr#ICW(uLews0&b_E#N4IUXqK|gpl%A;AM%u?vVii4ZyaWc3a8JzB zm%uvNYK{3>^okE9TU$Ui67u-#pv-X9JEic5ZhmW112ufrEWrc%3x%GdYQ|;1bd~D| z&m=++vsWxBo@7B`5DDTtE*BTDp2v6$5O@#N8I9!?Yo!Yb&~n_@U+pcv9R}|gpu(qm zbPDMpDG_!1*WyC8#RIi{Ll{3fA1}|^AkqT z3xgaD&_a;5|D**SqRZbH-Hp9uYX&6eKN>49SrT9m-JXF1+SQGb?>CFUF#|V3WlLA7 zI!CiZLpE)ZakU2d{sRBloULF|S6H>0+IRO;`D*EVR4Y17r2t_zs4WZ`%qns?+CegR z)J|96Kl>P1cvqW=Wt(go^7f-L316DY8d;C>jG~y4?-FnGF}~W@8KH%#EW_&Pl#sRU z&;(^K0D3UEaqJhEFH3b%t}(o=vM!!ay&F-z*cT5P*k`XYVvw(2@&?mu_Jf=(oOgHOApUZK#GxZC%D1 zg9BhSbAPl_hT(NRML-Y=`R=JmszvKzn$;hKOhwVBp)948)qHz6t;R0fjMrT1B6D^i zFL$9x{n7+9!7|5#CVi1A8q-PALIE;tr`hx^3TmG)VpIRU=sx^Grj9fw;;%U0DvCQ~ z$`J+uu_n+fnf>_V3A{UK>;W4!{e=Jv*{@ZRnO@bZz#vrq(=Wf$x z+G`D{?3ZraA8*gWa@I6z;`DJ5I*!SzqwrP8jmfR#;F&S(OGXFp$l3J{FBqJJpm+Sy zfBv$g0!6x;z{pl-nt|zy3T3hn<*Y%Bi8W`tvCGZJd18?(qf8wgy9Zf&)F(q95s$VX zcHbIdAvCrnuKb(itRBS#aNDmbn?27{8g7LQHu+%yCVQ^a4H|-`zwu$a$G(d0cNw6% ztOeBV|8oOGiN3Qz5=AL7x=$2z=XNHHeL5P4wWzIWVp@R5kXIObqD zoEz*~BONKoJ~+Wlh#c9{g7dG8AslN=4vJ$4uoIUks}U0)M9qc~g@p``=_X5|Lw;5* z0%29u97}nWRNVtD9I=xlg)XyHR-KJX;(-#Q<6_)2>Ny0KoK?w*^8EJG%$v0iVyinL z^_|?Tt^t!AmBb?8KUDSu0v1(1*I+jEAZ!SGi)mNaiRd)*GaF;LjK&MNx4#!Sk92a7G*fcA%I~r`T#{hy1z+KuTagO6JLH@xv^#B zCx4U7Qtv;1u_4m{4i=5=m!T}PiF)hGyt>iE`Fu>Otpn)wwsh~KX@;An3~@=$8l;mM zG1QKOeoF^k4}Ep6od5mISklnkG#?LZVC z3cbOQG?h-~re)=qr>4=V+Ly#fy@4Y;kAEMRpV!b4u56-JI|9Lb0L})CsbVqMSc0+) zt&Rw5=d|H!=6^)UgK%7;5op|b@X1MhWrJmH>lo?7ZW==TCA2(0J8t3LiFW4O+?%lN zUxnq%Ii__aW9s45~|a+GB&5w_KU=rW8E!3a`>fF-^5;s~UU= zEIvai&lFD>RzZJ^TQ-%vc335xu#vAjQTEc`lV)k6Ss@Y@<%APOH&te8(CHD9R)fq_ zTZQvU#*E^ql2p=~YE?r6IJr>GsMtJXd7U(9p?Di;O| zvr;d?wzD}wl-%dT0-dCH-SA=>EVvMg!cIf0*9;sU|qk(JXLzUjQ5n8Cl1T@IaR>xe#kvEnPz!@)%6%GXm4J|nxw3rGsAR7WGs z{QtHle*;Uqsvy2V2VvpQ(cuqZtwfQkk;3npJ#)0H%BxoPi+|#)>Pv8 znQ=lDzu=e*hIx_H0`Fw{37KB9x!@csB4*kQmE3yZH&3*oCUNp|;Xoshe|d#f-Wne( zeKVMOS-;BnN5Sm`;W(>R&c5BuR2z|aLw%{f4ccH7;?ph%ITy(b-CB3^#Y8FS-&acS zu^ZwXYS<_$jouuLYDFOTR%iXR-YrQ&YyiHmGa(N|!Gs05x<9zD;?UJQlokn&`qT@0 zA&mArXe)!R_u+GgKGg=HO?UI@vQMEzDgg{<$iSg0j+E&PG5g2GuDA!FD0T1JYJahw4O=U5e zbc>QTi^QumNgV037d$fKes|?88cc#($c5v9s2L}S%<=6fM;tRwcgQKPoF4(_lO~$n zCi(-a1Jn=RuS9t-2Ar{pjS*7<_PY4F9w_!LvO5fseohz<#8&Z0E5d`sM#the=!( z69A1xRzmV))e}pI*)?hqtb-`{U9*b$WjVC&Xr7miDRZl;& zrLB%b!Rl9yNHi=z45d1SCbngf{)=*au@H&|{0?rvB4dL6b%3z1<_pdtC`xRMH8JRq zFaQ)^jXRXx#Mt6BJqL@GFP1%HNtLryQc_WmB*Wc7;1|rtXkX{vz*Rp%*83%6C7a#)%v28lZ%o_M>H;KoY=mO_rZGSS3D;Oib$)LjJ#^5-Vywfe4_|hN!RY>*jmRFDAp~4L^VKF! z9~R4BFpO}UKlWd{{}g=xj$*{&koIFP9`Kk+&jezZ;l@Vtziu0TPd5KTt)cgqn1$$k z?DqI#%t1aMc-lXn^AxP?_or#1>=9O((jES!v+QDbw)m@$(V(ZRLHfW8M#W%~MVkAe*T6crXi zMMrQm7OZ#l)`C_d!c-ZeOO5EJ3R67a`A|zLW~y?Hjsh4eH>f(KfZ9hPe3J^ z2B}%*hfv6JkJg@O%-Gl{k;#Z6C~@I#EpAl(cY}}-eBAFwz42_XZ$#}~J74485|c_; zFQ^sdD7_Ehq!&v$NQ~L?$I9wD2(+Y-SJ^`ImDL?ucBt}jLv*f?2}(c16?R@XO=r99 zd8^-p!+a|lw`k3*ec72>xJck&$}LJ_c>alOPpPrpLy7z88SmLVR^>qzfrStQ^bRU_B0}a<_E%!>> z`$_PJ#ApoU#j!ZTU$a{#j2f`(uEh4)K(WXMBn|MxuG_^#e@y|2|`OG?8TK!vRShsKvjpvxH zu*)#w?)guJ%$FBR`ZbAR!z~PB57|Q!M+QzLvy*Vkdm8;!lZwhzR5(i%JT7d_f5H2S zD@TNh|*TF_`US;rl2mamx4(%9wE%_c1UX zB;|V(4pIM0P1bbCEKv*{|8e{uk3Rm^ z6b9Q`QC1x$8EK0yXd*In=x|>H`0bd|(wQZ?x_9sbGtBqj*4JKs^U-*}HG?8ioHj<^ z0qf=OLa!Z#D*3O!@OT-k@ei-mF-^}c!x9Yu4BQYOd~!h zP0DHPQ8H3>fTA1K(&Yt$Eu*IlAky%3r*>WXo{DkCPJb4{n+*&!L(e4@>tyqHy;(>V zyJNT}7eFeey98qISGBXZwE6I@;%euQMb*B1Q-5nb^e zKrkQm+x;=qZh)=b%E4%giPFpTxgZ8mvK+sjD$R%g-(a6#@|Wt= z@7l=H!c@QxdYCjqnnNASvzM6gF@2c>_)SGR00G~yVB*`?s996;bB>MZ7CHNEt$qxB zD|~Z?nx>^oly4OtgxYQFP2YC&!(MFq>kZ#(r3l}L; ziX)<*Wm@S8B5-kodaAvX(D;_7#0kl{%|dvWP9sVVx(CyAJyV1Bc7PfnXq#5YzU@6u zzFWg(>^Wwep5zgLLS#%#WhUogdXDxQ#?*t6*E#R2+6S?p2a09p5p%(jmo_5?mU>gk z^f7=F%jQQH6w!6h!7e#qzF21^20G$Zo6yeO#Ob^Y8EdFz2i#w464zG@FR)iqIkB`d zEV%RAal#fvg+pj+v*8F#gKb!^!8Y=~_ph6H&pID7SLq?oKE#^e=na*WjOO7LMDCuT zta#*uilZzuHFLtJApP&*G9zh?xv6x2Q?W z4FI0cAC*>(1a=J~W_hqZ!zx%I|M8HXsx7sd1_6qS;!79FCF8jdR5H(-{u^ar^7|V< zA3I7flHqAxJ-yeb;n=rzRdYAXTZJ$G_2)++>KUSPDkWPTfXLh$_F0Eohs}(?k61T< z(oAn(fbVoBB*j$@$F_G{DbWtr3>eK-(!vSqo!EQC;5j3{+X)t(wBSA=+m1QJDK}j) z)k$LParr>Ek<@n(Xrysn?fpwh$WYu+e}o3cyAYTx9)sW7GT1IVgtd=@%rFnxwew={ z2{=Tt8bL=ds7B+p-AW>sDp5Qdp9`(34XH<}_ z4d{=HFqgkXM9QLWI4z@5-TGt@$Od!npt_KF{iSB@fN+4($}DSa*H21;!nd)7`m7lR z=Z(%3hQfv1v8#HiK{Bh|F2UO?p{7ra`ZL4CWP!OC zHc5{RjN*%?O#cD7FH>!jNtxvGEd4RxnN)W#<0^*jntF1xxu3TZn-toFIhicHwby^x zWvJY&)&(+Ir4x31+kH(1Z2LRwk1!Ejll99}~Il#VK)Q zS!$^Cn^VykGx+GnbND-PnO017cpe;3{MpC@1P|S+0K85LVo6HPlKbC6ll`y$^!G_3 znks>QZdy4GcLl6RN7XG}$wJME8mQ$wi> z^5;xrBlJXHf^~BT?3eO0*a(<8m3gW4e(M!iaZA!>P&~~w(l4%wPi~g-Y?2qS?zA++ z+4>j8EuAlRv6X!QfzPt+)roEqmlmCMbPc3JQ0n==7MTRot1&8hGQaeL>7r`$kc4N#Q(beMpcIxj(9g|l_l8Cx^ z>34mB6YmsFLf)b@Xv73s4As?#hj1v3qR-gwcY0}@rHZcmP>|dx|5yNd<1b*xMVh30 zNhF0^P>`$Sl$br)!YQpP#*n zSfCi~T~3JU0vV#-YFSdPOSSSwcM)e+S{eFdH~2@GgL>q3Ef`_ye*tTWJUe=$0LISK z?b|IqbLG`anl#wvjTyb*A~2B?H+J+;OiwGuJ#5(OK@F?X(eU<*1}5%G>gm;K9%Bau z2X`2w_wMDPU6hEGew)OiRv`dXU1hcWo~H?aJ)LGBzz-O$|8UE;+|Njg!w9#q3P_*g zzM5S`3gG9d2Qm1G64wj&QeSLFyIMa{G6+t!J1s@3cN~eO;b`m`&F5UD6S35UrrV5oQ@~fGOqd5R+fZqf`)EzJ6;I*`vzR?~ zeAURvhPzBZ!;hvHCbwxPRiAh?L;1%)j--&hg$5*YdwVsb9FdP=zR-s<8L_QE??cRcr?s`$7-Pblauq$hC($!ef5Mh)p%Jni?A zIXi6hy84^TrF3e*Lh*_hrH;l0<+IZOl;Q9La&d88;)+=L1!R|C38-Oaa+LU7f*Uvl zF3c|{tCWGgL9A|kIWZ~hTnwFlvqjEfV)Wx&oJNa%QVk_0rT~D?S768lAm8SBiO32b zHsI`mu_2Qay3{V5^!*~fSzN;cV}u>^5MbO#%W!hWy4R7Ux~730gi2)*f=J{!I+tzW zde!h!Ak!P(N21&h3+X%4_ky=w9w^EeVJ`_6cCqfk{yh;DY{Ub9LG}ag*(%(fGbUQZBJdDrmqLZ6QldmSVm zSwQE%t^qX;?5l2Q<)&~j273Q`+rCyD?%4+FzbRfI2~J=BTJstisZ0-iP0}+;BmgWg zBU%FhLKCz}SaH>wg(<&Cc< z@f#MD;0&S__16r{B+7RNA8+pbKIlZG_~{fa2QZtgVw#>oEY6s39T*Y1**%=!@rjOapC+KBc?}EOzkBchp()!92)oFPx73 z!PCf4N3FB_e+)1Kgb(WTn6PSYB$~-7cV80x0FrmsegqPY+Gqdz^4UESuOGq86nEtES?_pzyd>>V?;5Kvq2$p z))2(3V{56roq<}V&^?iek3h5fo4CcC=3)8Z`As0DdBa>!B=KMHg3u`l$Xl-NcC~OO z+OC`a{^F`kx2CIYG(RHLxs+HDvkrXF0sF^{PR0pZG;7$L6ZFHDKfdTGO;xl$+~{%0 ze1>tzGkO4%_EXXX#(L{wfqn>l-)r{fcOXHh zJ0enqsjoa6%q(MBAB&v~HgSUxLQFS{!5y3P5x1NQ!t#^5K2ntG78SL45dt}>CVhyz zxH>J zMvcH4_HKxccqVO^yxi)F9B6S(`b`E;To4H|kDw{4AvmID%hKZ0eUG;q#y1Loy1^I4 z4RF7^7flPCU_4}dY*ODR!FSRE~3Gb89D#hrOUnuUh@hv0QxKP*d8(xmW!AT<5kHE`pI}xnF&z)ZH-) zi?x=>HD-L`K(2#69T$$$`@`qmAQTg4I8ifTX#a{) zLV0^B#V(f~<$E1|5G$=TxJxhtH*50dg3$s3y$$au`7WQg;ulZolp?k#{UOn`N6tA2 z`S1_@=)Ub9myJ9y?jWygn46|nXQ#N&9YM9GtVCsw&qvNoPSpS?L)~{U9Hm99>DN7G zy*H6}Az36mBR}Jrq{|mfsjIZ)QAK;l8QA`i`zBXts~k6f{*7c-ipu*JQn0ZRjf^S^bcQcS$;yo?lrwZB9#a=CG)f zo%JXi)jmoe9Nj8Smq(Ht0&HSi-A|2N-+rSVW$A%tg`pFTtq2OgI4!bsgROK~<$6=Q_q z%E?h!>ZSNR@=UoN|EzrT_~u>APipD>-n)>SEoMzYxb2*f%0JKDzWd4$y1mBZw}pr^ zs4ZDn1ViserG&`rr;5?5eDRpe-Jo(>bA^)I{nAH`cv~+s9DKD0K8Nl}wtwB~pN}~$ zh3L4+MCGID>zfJ$unGO_E+e$2N6VyKvL33JBlXVC*h|b!qxt8~tVl&-SX*#UslV zA|6MzlSvI_NKf!}4+bPn0ASvi6H3_@(aE>`B0HO4Wpv=88vy+9GWQLved4u}(HpXd zz1Or|b7}PjxW4rv5(TRVcJS=hu~f}I+$U5Nyh2|$r=VY#raD=hPs+})boA~P^6^Xj zY!|M~M8kbEel@`nf_(|m>3^Jb*4U{5*A-%DXDGvkfm$Dvb$8N$t6udm;pW-FinEw# zqJbiLJ@Yw6%8UqoNA@##f@$=#pCF4Tl3tmQ+8#Z#iWAtZ`uaHRW^CMIXwr&m#-a8F zmuyt(GdyXnh{q`xV zSZs0Qxd)uG-H=Gbj1Tbsx+(6C2pioqFWpoQbxDySjz`crwRD}Vd0|8h<<(drWyt_s zc=Ed1i#(C8DBX+{}d^GTE{Sq^c;W9;0^1I9Y zl?)4-T_HwqsJH|&{Gq#hBNW&D5s%PUzdm}9A9XKhVaQhN`yN#S=c*ZO7I!mb*R8j9 z%bAT(XMzPLv-E`M2HY6;qb`wQLi^X~l(Cwx;fK0g)`4jeSUN}cdM|8nX=IL>c45+# zL*+d6&BUS8&Y<~v()DHLLhal>Jsyy<3B%Mwe^y=Mg(PIHEK)HBXz;Zz;2GPF#K~6m z7<9x~0N-R#Yi-aW)#dWhG6|lf!|p+Id;6R$TDD3N9?F!Okp_bG@#UNvNFkukl7oj* zGTPgxoPJf^o>3kH8RqFf2V`Foj* zYgP&|+Gy!Xmii1teb65*|4o_ot@jP8bO6&t+Q>tJIVNd`0femJSt?4kpjPrFmPgJJ zz-g@8Znr{CwHdGM>{og{R}~WmIP*2PbuwO+IjtatL#e2Y`z2z$;U}_2ikqwS*w)+{ z{2hXCuQ<1{c*0)#vjHpSH*xq;3AB4a&2!GgP0K==2=oXE9lV{^sv&anc)90)f;EvK z+|M2A5CgUhAqC?~A8n_fbYNs^iVz&D>Cxt5F-LCXvLD-OaXw3BM7sXY2cf0KQ{#QY z3)~XIMV=%0UQXoMrxJokU1BE6PhNzVEuLxk|CmP>&u0)Bq+L7ZqvaD(9nKmflN_1+ ztvk8V`RA8hG?+pY_PGgwvb)sNc8h9XKb^ z{7XAzcf$M4p7wM1cTj%$s2Y}O{5Vq>_@BLe8L_36y_`aNz(Yx8r9iew_wEgTNjylL9$I zG%<=N4ru{+(()~<#p`oWiO~dJMn}IG`J`nWMI9&LfA5uA)T*1%RURUp7C-4%!PrQ< zj(xl?ueprunv}5`e=#cC*M1&h0>{I|D}OTtybs`o6O#?PVYqH9r`iWs)Yw}PX_f#A zmV(_pbP7ez8;5|)y^kP+0prV83MVWV+M4OFV(uD70b65+)e}TMMo7)nBazIV;?iDh z@A4vvq6x!p}L@MQ+O0GzmcFq?!u*9`A3FHkEO)X}UZp9b_r!<6A+;*oVp zy-6SUSp?&m^+|P8;Po|A3=?c5_eka! zqHotnKgq4FQuJi$G^CjTJjP-N(^kKwUT&i5Y0_J?23*x;w=FE8bj2dH%MyPRf!2#} zWBB*2Yjs%yEAOs{a3;N&0r=DwpWvk|bL}q1++$wuF`}|eklt;kK+E6=&+z_cLXTO2 zD>^5$F{*wx);Y0d&THEFy+e7+X^8oPP}nq8g&KhYDRbXg#wS1a|C^C{XZnFchVb!? zWoli71Jah&9TB`@65}24_zoiv9E_DeqH#s7;N9c|7gf4F#k8?%6Ze zO9yco*=lKxI6SttJB&I6+%d-p9vM7VI8-K1qEDS(V4mdKsA?m%hedzztb9ag^q zZh2TU-I1dElRCoVRp2`OMXeTA%0h$3jW0W35sO48S)q#qx`#GC`BMI(*`u*T*2a-C zdxCActS9iCHO#O799c+Ct>vxFGilS=e4%$kk?}_8YL9!X5>WbWe{0QB`vFJxzuZ9u zHQg+V(%$3e+c(Rb+Ci1+G!E}33(KAQ^8juFPt4#rXMk#?C%Lb@TBS2R3Ob_M+!Zd^ zg4Xu=6Jx!?5~Q|2%@0h3wh+P5pi0r5baPIj3GU=<;d&&Gd+&4k%{urh+1;VrRGp!x z98B~T3!MT+>MTctS4AAcw3L2Zq0iu3A0NKD|GV!hAY^)|>d}-UzXwa9g_@OQJ5QJ~ zs%9$lXB_v{Qn>nCFI(gZ@c{`bJo915oU`$%R>fZ@FLrT4yRkP(&1pglbf9gxrJj`< zo6cV@1#{nmmQOBk`MWO(lc!M%gM3-|U4fkYEA4w@W}^qJY8?j;iheWvtiN}yl;fPV z75J)+XA^xKZVz`zB-#;Be7!}qDWn8Qji!X{i(22(WK~TSU}n_Iw|EpcI6)Rexv|pD zybq(i*@5qT&~Ey8RndE2Mu%nb<)@1FIvWb)En(iN_Dry@FAr$URrjhXpUw(!W+!+P z1C1}-8?A~vW#!$MA74v^$Hg1%r!|#N!;B4 z6Kk5;0vue{j9OMt&skwccKK-5Jr2a8sQ8DDc`|?G@5yZTu_GLUicAi( z5SYqAw#T+~P7(n9Qyz5sV ziJI4Vmi5nfJa>PP9?~!C$=Ur^ZA; zQK7pzEZR134iDRd8_X$-d!RFF5DqTn1$Q!r4 zY$S174#eyPoe&`Z)x~+eg4`7gu8H-z3Z%i41XL~&ndJVYWXVWpQN4Wjs=EP*2geD^ zd$7f6LPIv9fmu2D>uKwS5cfV#xvWk!;y=E0_`Y8Dd1xxe3?LLP6 ztzGkGT;a`GW7huS`lJp9T7k$b9HzZ5AT@50a*=?uu{D{`zD7#Jw+RcEWG+fjqd_hge-%iidE-`T+McousVvdzDaNfB|okhqN?(70%ylr?aUpw{Lm z@Y8L{sAC%vugx$3U-lju0}YmX0)BTq{Aa&j73TYkc2d(Lal<~qoJ$EQ%ubxA8;AVm z#tWg^-3dYFFPL|_$k{8$(3?N@0L;$dOpeomGNX6ES~G)o7gop1v1xu!ciY#59c?;@ zzjr- zL5CqHD>!K^fnR7vM@#H9-TtTmeQln90MKLssb%>Xef^;wl9=mIST{n8!T3LBD|^Nk z_me~wI|HD}kBV6mr!M<`2)fPjE9aCcGYNU|s+;?Dc7kIJxuVIs6pO}%WvM5cpUIPm z{e}$o9jQcZi2bwf-Vj?%+)7lZJpuYal4P6*eirVb~T4D|q@%(MetZuQODZ%U%!F z2%2%(Dlz;qD*%NvTIjj)gqg8#@ytM3we||Lm77kum)pt^fUHjJ8l|@xED2&R*9Eet ziZ?Id8bB*1SKB?1_SHuZfil+Iup2AIm3hlAiu%Xx^<#lKmQ@FFpC6jr1d@G!W4bDY z<}@T7a@?pUt<1I*(EE1lSylkOs_q|hu4NPUW}#nmd={b#k`1xxO~S_$FX-2@c7=JM zh~R*M!zmERxQ$4t`GsMGO4Q4@-oh%uF=&JGXWR6)5;`(Q(941c&5hSeEeR zP?-pqJx2|7L^xJ9fc)b5eP5BOV0&aASLZPVFLHsF{Dzn(V;JcqeY@NtV**f`7NC99 zTtjr7^AmU~!tQ0bMKa}}6cCm-C_g5b-x0*jJ4%gN|NOIdONXRDuN zzfj95FnQcP;k-y0Q7F;TUKrNy@v+89j=T`_*CqO?lTp1%ACbEjXhGJp$FQ62zoi4N zj1?e3T(gJ{RP|;jmpG1EXtDwY9`K^y=G{a;&^7@(6>zpRkEd^Oyi4g?>!uVUaXC_i z{m@&I&0~cG;sh3C7e9w+;?_%>EkdM< z6HVuL63tV(EolD~Ru$N71u+>+%W0TM;hN0f2TWC-(i6ceYX}O37i{&d9U%hRk$K;! zGn-^nt6eC!L{Q*nQp~A?xZWdp3yq9sxcOuvkalnG@psn=c_35HY>&_Q6C~`RMDZ!@ z6<3GI%BB&l;5Pv#QiDXJ$s-F}$@OH%wo=);?Nv2j%$6ypBf$^_0`yD@6}kVgK^>Dm|(!pk(3B z6hc@fMRtjxhNLBDuykD7lfFhSn<{yYAFnS6wT8m+2eB;#B>z@0wTM84JH>~4QL5MZ z>iKxZ4%cgAl-EX${mu}n6^6|X!35vVl+m;I&t(Lhb>^J;8RGH?b4haf>CL+Xfm+&G zk!HHMB<}`akVS*vHRa7Y*NJ|1O^7BQ!8t{ZKOW=4 zEw~?0rryGp_QC&nYk;YNyD_?OhN={B+Jc>rEerugZ?OR0Kngz#f~%x^%TeI`IB(Ht z`JElUSI8&wKYD>(gQD^FSzuo8jORFn0My)T2^w0-AheJyH!JZA$85NC|YOjc0#)dJPYE!HSaFwWHPFoxQ z{vNmCDS_Voz8-xSlc{{-)iSi4f-^f0X3Em>w(+s?%PPE=i6z!+Y$ z;}5h?iQK=&dx~|W5PaYQ7r54$fkYb9^@NmZysLs`>K%U{sBmm9W#81elg;K3lQWk^ z3&hvo(;ACnzi#C3Tv4oPpQ_u|>4ei$6kjo;>_?>7aygx0Io7Ak15B`Fil5+SU1!9X z(mZoQfAkEXzaq;dP=LqXyGJAz{J3tl3eavs6|YSG5ZcEiABd@3b3m^zw#P3IbyLxevMY<)3_VI_O!J<*Pd*}<<^YM2@O z9d817_S7fRKq5QWNu7OEtTfQbh7|;>Udg{812?*lu^f68owO>OW>D~EsN-NdPklKS z!ib1f0qaexwyS%}pU-EEnDVfnl)jzl%P6#Ug6iPLru~$?pHE_*Ay z96f5v^m(f8>C(8;c57}Ty29gs-k!&)+P|~rhRXBz( z%m(G)g{}Q!h38TIBjm0%u>Iq3DOtEjmw8mZW4eoz1jE5IyqS?%LlT-}p9ECPCeXYWWp@MqdVwJ_~u*Hjd?P_{8&tGp582Wt?b z03^3=xV(!0+)rePxgdAz#%c{fVnQ=wafB}BRbXgn4KsUu{GC}Tk~*n0RE6iUYy9Db zZe@;56c{XoEwsD`PSj(r4v04kkF}pp?`~I9b5mn&el)IY_De%*_R>&ai8;*hP;#-q z6XyyxWm7H-DNwdGJP$~g6Yx4nU@iZSwN`>2m{*Gb5t<%g{>OZuy5M7>$c*r=ZwKpv z&4R@$nKX7C1rZwBm;dZzo~#JmUFHyl>7hxepGFu(z<#7n?33!rBU&_zVSbV(5dNGZ z7OX?&FBaI};DKEx##Q8#<0=>>m?^FP@&|o&TQ{c!r!>AOzoGdg_5P*dUb6F<0R)hXSfmPsGdR1BYsLPGlDq}9h9ab1ti*FX6G~IK zlj1oU;?dL2+RsI=sTxV;u>J|s-Pow(%mj{`p5hUklb#88SU;;WNWqC*C+IB?BLX+H z7yS*FJw`&zWOn^T%Yv#BZ1V+&rFT6E>t_wqk~0+LYL|4<}_v2+L{~TYlih?2@9w z-ugtM8zgC23(LTbu|P8tOVw*J2#;rl@>m+W7B;~*3v?%p&aBS<`-3a!o5A|~#}A6) zgWAM0CFQ>L84?Pl4E!5nXde-!eQ^$`{822*WyXQy(sT*17+ZH;p|Vf4Mz@Q$ee>XJ zl~OZ=R8h()-wG`_ zLAF0XCqd6rAo+cs;jvg%5N7ma z)F_GwZaqxbcIpZ*cZ|2N41Hbt(*vcpfSy*-`~AXJ9vI%8VvPKa(n<&G*3k`I=xRrL zJo`0Xey~M!QSP$5@s3ezt1H#5E3R;M!uzwAs?|QgBv^#AWLA!K^O;u^SB(l--NHLo zQ+AP!ZpMRfho3`;v(f(&Yd>B2u)~vMJAWxMVf4_Ds7#qyR+`+dd(KNct_Z|fH){Zu z=|Vg3;#sLSk%A-RN<5ZbH)?&!I*R{i+#1ut4pM7@R8FGMl#`e~-tkX@dUZ%@?Qh@w z=fATNQ_XN=JG~HXy5OChM`hk}$2ZBT0w=rp;Uf%hwri1aeHsqFMvPsLrdd1`?qjB1 zE*u(4j5YW`p0j_XX0(JCdT;1&LLNSR9u3~Gum&swilPfPvE1`YRI1%%JXlKFeEBqsuPS6e|4G zt*T~p@Ud~bzPvY(eCwBH<%cDSRbgV0-CDyd!&*Ri%?MiI?94lqf9@_)<4`)?KYa;x zMM{l}ZPKs1QsDZFd6qCOw@$G=X@vhZNEZf)$@NhlD{kQXGKXq?SBASu>5D5m$l3t; zpSj7V@YB0$H1=L-2$=2w`+^C~#vx{XyBsG1Mk7zz45=}q%ioMQm_-RVHS|@QR}>q1 zGyO`jOL=D_(N&!M=Lu~JY=6wXPe?(9eAukW=k!&RlQO5`vFSagL&YkqukYLrmqo$8 zT*j~>nGR1->bqi^Ai$T7+aJ$$OLRjipie&lRbueJ|_C2T`m!Pqr+Q`9E8Z zAAlA$fq%9W4uGSh z6t&B;=@mfNCP!66uzfF=?zkEAI zyVYv$3NJ}rgkwF$yvk-IA6d4q}24^-SZ%>7M!FZ{_<83tjF8XMG92v4}ORjewANYeVP!tbhlc zYdZ#~ezKH(Znboz5LUEVMvRjV>oI!?pT@4IeAM2yBpJ&>bqnP2QFL;aXiOSb#WUru z!8=Y|drM9H9nxD#um}{|^Yjj76E*+7738_6ZKR4cTl8?<9?|}`Z*Il3w;TE4j)^N) zo(o^NCbk|6E;W(l@t7+H1I(p_JGbg_0Sr8q5Ju2kRPD%e^z-JS`7I=25iF7nO}8a= z(d37L4o;4vh6`E2;WqfPqbE~T^N&QI6=%pjLrFEo>*d$U>7nsqCITw6Quk4#K%XJd z!0RH8MLL)d){G||Ueq$APoOEKM<2yjGWEsxp?cfu3AET^g0@9ereN`6>_0!OK;M}AEKxOx)2r^@)iED zKsOcKx-c+Kr;-CVs3Y25JNOeaz4`IoWeiW~crt!kDxHcY4QXAKSG8U|O|A)rMaQ@| zQSs0$;|Zo0&(}4CnS+0F;SKEJ{_}f5@#keK*ov5_7 z095bIuebsc6fhGyc-z=NfVOvDJ^ZfQ3Y>P9!FuLu#3}%5qqMM$2FWaq1YLQCahIJd zfo39Ob5DtsfbB(PjrwFPkH{X*=F<>^GYWgT2M}|n!ryAhQ>imshl5S#9uY?AIY9X8 z$;n!GgN-5l1oizK;+fQ~;03>S#0t(ax&8s%aTdg&vD3Vm`=Sh@Y9rqpNP0p9!-*{f zO|4Y;!n+rVf4OBd$cI;(@z6x76FoF+rKMnaQSm}C2MehMBU)QqG>~V~9GntP9Sq(u zV++cPC;v&mzw|TXjcIz`av1G*-{MGgoXF_urC`C=mrn5mk{4)Q5IPf)EJx#=q$a6a z)0hMMk17o=0zW8Eiu#mbwMZ^!3mdO+qJ)JHb|r+PZB`+@?1M8Nd}L9H*yNya1FPow zy(q}~+S+buAic$Ou9#=2!{*mEtMUHGwwN4f%vU(v-VC0={+eW-qia{m`*S1{$VE^! z5m98ck=|dJs&_@}<@|u`o9(xD*cNpGS?{7T+T`>ei&-)tI1Nt_Z()x!P6}P&bmROi zmcdn|UXbcF35E&KcZ+#xHw&!>%OO}?Cw_rW*V~Mx$I}G#Qt575w<}A$4lMP7eI%YL z7Lo8%byuI6@IUqE9vhou@SK_`;7M6!yF~7XfOR=JIZIpLEj25#j}H2zcnnWnGF*oR zg1}eOI8+>HSXdM#@1|_LW3a7Fvqb>ARQYCZSl-$Pi&B`7?Nhn^s=Ci0LIFE+lQF% z@2gio>+5{`Uec8@!aLOqjRR<-os5t2oFDWEzkPA^@`vEKQQA3&?Mft)^Tx*V!SP3l zU3@!m1@dgG(QtpO1V}uk6BlVCM51enf9v4Sqo?tKj6AK0FU`-_xRN?u!hPgQwc2)S zlP|=dG)?3Ipxr8$0#q6RmG|Fx!E?tbSl6{K->JHgy#a#2YSPcVkU?d5s42SsXx13l zLd9&|_O5}?RwX14;-M?TNv*yvPL=I_JcXENqM*Jqt=2N{TnhMoNn#_;BRFM3ORA)7 zIR*DEqI%;9sq7tV%oT=ztR_r~<2lsU!gm5Pbj>X!?iE1)QA-Ue2B_e>#*csxE5H^~{>jGgmDf(ltRw-(GLI@aBF}-KK+`{%ToD z{<~@wPxXw*K*Z{fC$>-tf=WHnjFdb}m7bGo7PhT8s4>q?C%uwD_-K0uOVjexb zO!|WRYBzL_(l;`D8LwoI!rSdwGHkA=Ae=R)!oY~Va5?KCepu#AH$jQw+6>=dYdmP{ zqaZgdcDrb_hVhlaJM=9%9D?<#m1fi-`ry-pT^gRS%gWDaUsN@@cS(CY1^Q=H0+v?T z9Ky^WHmoMl69C-^$Q@!m<1tZOI4@^|HR?q;twSfVEF0c?@n!A2V51c(fG)CC+ZexO z%|UtJ#ZSfp*oCI(A|pA5+t2m+P1B^$X_DJn+e*l25HN{3ltD|@Y;Ly4&2Mq88FOag zwsVgA!Mos`mF=+A9kQFVB;P+Qx9ClJ!A2`T+3A&Zk?Uwu_RkX`eY)7hv|Jz1da0b_ z?sN{@+=^3uh>muQ`Hae$1%X((#F$J@ddkqwb=3n0le28cVMH84U$!3P&}17@u@%vI z7t)kgwW1OWYo{DirJ63-*-MM)WE#m8amY2OhL`{|2A~}-e6u%A{qne#f}x{`{$1DZ z48Ny@oRWU=y8-lkGAOr6X0pAvFJik5pyG0}azQgan=C5dZHG>?s32I^R-;k)j<2kSkZdX^jRh?;`@p_KT$mk8%6^wbSBsd@e>W{X zy3XYmmXtfI?x^*y2?|gKNK70LHz;QUNDCclDq3-h^9~^o6ftv0Lys7M!fT>hJCJu~ zi#DgB?X0&u*Lf8nc=pB?s8PsP529a`pHJe?fnOhAR-=-9rrYDUBinEaA!JT%fPQm3 zN}WXZ4k6dfQClVYK(bX6gilU(iQv=)c9a{^(z!HfK*YOE86WiDC=${Q1DIg+ppy!8Wt6>OFA%!`0AgE)+$jI9lr zgSATtjzfO6cI?&IGE~1B@=`gUe8%~%w#Xq#yH1gJh|;V<7IQ$HXw(glw4%3MA2W=~ z5HU_FmSKHt%XM#^~%x>9N&oWi1yNQsH=SA7}NG zZkbPN{iXyHg8Q%HuPdplm2q@ksr%BfS6)jk za6gw8$T2V%n(W9b|Jt^OMcO@rwlX&xMW#Do+j$GZ#kr4)sU4ZOr8_=~4#CEP8BTd) zulpRmp={XF2rxQPVU4C4*KpxmvkBwv`A{IbJgSe^LGr}7>i&XC5Z^XW`m67rSiD30 zYDCz@%M4`|i4|5w$;NX)*6hok-Zi30f_p;s*Zsw&N~_~%ZHIidW#H#57m4p7u(~^Z z*^0l4M~c540y#QNty}R1UC{4hpA0El-Rv|9289f#nQ{#swpouBcP6IYdI!D{kZ=XM z&W*g^>XquBXlpQjpmSvOZiM`7wqy%WDBoY+!*p*PGC3oK$88;2a~rPC%y{q%}_VhItxg*BRxZs#cfL9}e_o`TPU!li)eZqVqfe?L`MvWZ)Y*r&9(MtcQo zo5}Rx&!SaS@1KtjXXEFL9`zc+?9h_vrs}9@w2Rk^Qv{hAL$Jo|coZ>%$IDeZ( z`5ibyR~;s;A#5!WPXVoozc3~YSbCyN~VZtE}I!z37 zflI3TD8hDo(qK-PMaHB_(;zuZ&I38MSjt#sfTQNVZ%3ti&Fi-Z>cNGX$ypMUpLB^4 zL@Zm8UJb})?wgi7Iw^_G41m%%X_1;ytqvofw9iZmT=|Q9rm^(C_(%=Fnk9BwF(rgM zMN4X95V~`siyV_dT$&6M^z~kFtBk)Gzow9%za-$RxouT?edsCb+2GU_LMXC|F zz&qYi+Vv%TMvhgo1Xq2HZRXK*$=TFN_gISarBA$@ZltYF)e&4x>@q_4oaX_! znI7L=0A`YEy9u;Q)4g2z#UQ>wJYFZ)9@NGT!m!EcCw8PKU>ytq1o}A z#K<(n?r+UdRyjt*I+PRmwKv9{78@LCVs=g`Oot>lpGqQ9L~t~s!@VP8ge%#n0#47l zam;01s0h8nF-EVeq&Aq#94R&3=k>nEZl|}lxdVKJ9L;E^s%qR|w?*jDsS6sH-2sph9sMtDX?*Yo=+69u3tR@w&x~J5P)NXh4sCYE;CN2up0T=c3xP8c7~e7)z|bLCB|K8B(%>t>K;WG zM~4CeW({v-aDx;;vG@Sa0#Ut`NLohq z)S8w{xmGd=ohbuWTP^4TWBj^uF{pY9iLILf4hXV@#uC528L&82YLD%rRGe8Vxb$+s z#6YHP)L^_SSg4-qv}qX23xq4#E)h{mq}jUkpGb1)tI!&~-};`ZW{R0FeDNk3FNu}4 z=?c57P39@b5u(gJ!4?*Aa*<}EoDQ=ik)0SH(g>cClg+p43qI9l=RUY1Ya-OAv@NgM z5-&Ks+{Q;DZ^q~$pRVtaZor^ti#nN=KIwr?m@|5jR-iM53FC%VZ=yys@_o~?z7LgI zxkMN{n>BOJ+%;`nUJ4zkXLhf9WQOIYmperC>ByVM%3xHsVd1Tk`f32XCT}Y3CJ%h; zEnzKfc1U!YSg2V^-pUliB9I%GmmaBk>GbU~FxP7VZa@Q57c)jR013f2Co5umPIUo^ ze=lZr2pTCTM!MdW|%@t4d?vsO8IHR;cNGUUg#WadjWt86e_gZ(vU0+Gl_u`&31 z{tNqD+XQ$ghHhHT;`N8=DHUvQ-p z9Cq+$W;2^F(9VfC+P&)+7_-|iki_m0y9E@B7hy_$57NADXUBz<*_YDLVrkwqV^NBK zazBgnAW(4Ca5sD1Df|g`3^FOA)zi*8pkli5q{1vQ*i)~MtgGwwt%}{0PGk}4hD{Q- zF!`X4)wQBG8oRVE-PoNoozL5bjm{TA+^cC_9r_$ZO%UNk;jcL{=;z z`GGbGneppkCrM2QJgQqyD3MBVhl2R9q`HE$!-@2%i9s=x#GUaI?ZR@g(3kH|y(xBb zy}k3!#gw7F_(o->&sVNzE?(iah3?H9US(lc>i0q}g)%n-Y52BVO_)z2Lj4n^aiyC~ zvEJG75_XGs)C;9S$gkYa7HcdelV4JK?(<+JmhY_#m3Z!0yqMEMyz?<9QimU@3KY*l zFWaT4D-b)8fSrr34uSUn*xUA0+mIB4tlmyQV7;SB?1>!JffM=Kt)t1PAkSZ#OMzyM`<7Db5~Z#&uTKa6$&`B<_gC zPu|~`p*#zs2fs)S@{PV&lbf3%32<|a9%a*CT|MCHL|w;giWkg{ zEMaMW*Fv#7=dSfY2?nuoYIw|xa1qqN-cJugYHf{@wb3(^PFAOAVY#yjQEW3&jTU>T z;aWXGY*|YkX*ZB@?&D80@R=0zEe+3$-hK;Q>_jk(6h75v|3u_lS_StW`@>sQgc0clvOcknlS-|=6<4kxBsVk}$d4~TUJ-LNfd8z|OE?a@EI8YO=V za<6bz=HrRjx%Agf2HhjNV|v*dn%p7Jh{_y~6_mp=^n9MM+R|ie5;)aCOPi|WB~)h% zuxsiWuIEOqoKZIphENG;S8{L0l3roW#jm{0GzM8lgdSl*&XaNU^ak2)uHP}lwo)gW(hVM;AzU>ouz%&qQ$mSx%DwkEY_D%KhBi`6T6;1=Qi^l98XzYv#qXMPLZ-L$DK3itIMTh{@0J@8_fE((c6|KK;HYv-DqF) z3TKOvOVc=r(TJO-t|2FS)Z_UJI>;B=a0JrpESkr-rVe38{m}w4%gXMY1d*2A-aG{z zWPeSEy^cqAy|qT4>`ZSYLjsz<6LJ*x_w`oW z^gA9L`7tM=!m}{U!?O;@Y`pF->4WAx$tM%VoJCB6`QM8k%pbG0Zt!r%tN4qu zzP*@1Wz`VE5f?iVMV4$$%8)ngZ58BbDU+Km%joBnnfy`QPHNChwMEmf>(G+zDaLSyX6Fbqo-ADrjr*79cr4|Fus6R z`RErxVAV<{J-z{^Gl!^myk$%}8ql-0Gq8<2rS5T)HeE%N1zpp_p}xAY6CpaQ4LWgBQJ7EYE;6%S#k`HeJG@LR z;m#n+@9U{Y?;L=LRNFjgp$>%V(diW(rV_rS!?a?qOjZTQZ6D}2r8RRnuBLtYh$#6sU zy?fuG+c;VVO~QtO`{Xtz!QyRV`@Y;8$uX(M6H3|2h$a%CcL zwXoQ42IwqF%mt1^;*BPg^;yr6pICEac%u>^x?sIpvsQ*vhXFXyb}GhnqPkJQoG-hx zb^0Fe3g>94eLS>{beP<`{)~Tg-ZbsZx9Sx#)}0Q@j9ClH!;9MH4B1s8NE+p|n|AO# z%E($EQ{U}3FOdCIeO{K`KF`m!$JDJH8An1o>^16b_=QDGfoKSpuX2h$&4a>p+V$z? ze!+5};K$U7pysW+TA|ljr-V;^VTwoHhtm_ADSP4puYIeM2q;|(7Mk;eqqfhd`wc8S zuvuA^7`a?I{5a@8(42aGA%YSl8$@MCguYQJ{02>ReEP|1Iv48IK;4_(&~ybEU4~*u zJHzDeG8ugWRUrmF!eP~+Hw<#ej4OOQ6x{*uD_n36+35@`47syvMd3^%Sn)`ZxG`q) zoo>RAF^1+(w3o*l8S1P?cHg-9y{d46F8o&HRpvf)p;xZ_>^k(lV*s{4re5Lr9y-=6 zUG}jRGZCf9HQ=JU8yA7Jhia=nb;rhD=zElWR_QBT1jf&=BxwMEr~y^U?p0ZfcWU|< zF%In>&qO*c!~Yjy;9n(LJSsu z2g!IYA9MMn%-LB@h@$~lT93=`>#-L;HY*xkkyQiX;SvzvAXg#gU zEP+#H1#F2$=+Gw>?kQ&^E`*2DD|U@gGQ|&vdjEl(ye|Wm#FEg2E!5rZ3y`h02)kQr zbWkYYhgQkXez9}d=lFA3?!Xt@jfWxL4M@$8rgLjAnKR9p>75No-e~Sah%fQRj=yfE!P1G_eXfA_u?^xYWAY$BE>k`@2QF$PWf0nXo7Ke#b zO5+7&E#F?><0F72Att=5RF?1<$02*ORW>aR&rZm75~eGZ`_&lfaDc#HJ?SgZ7dRYA zz&Hv2rJo5`RM*d;Yi0x8p99}TbO*^|Q@VO|PgA#Lv!YAN+^qH5&zPw#Ay0_zs@z?T zDSL^Z+0w*dbRODjL5lnvj_E*byT(F-aVrtQWUB(3FR|h$*%~^cgAGV ztnaWYnrvB0&JY}^k1!~&S&xz-7o2mQti!$HKKPtQxf9YnyITc74l{coa=#+OkhuVf z5kFPh_`;kwhQ)2`-vw`#uoF-)e=6ImF$v*f7qeQqrjv?fqqfv5rFeovtv#a}rHR)2 zfa=di4-i&u+7SYroiXne)y~vWV(mrHDIV?_eO_SWltIdxC4L_AqR?)+hqkB+0Hk(A z!3}U9ObH50)%1qj_9$tg4u<@^^0E@v2De)x#ZZ5b74<~I?6Ma#y$8kDK2=(=eDF$z zx_aoIAi)NqQ)habc~X80h7pF~u;@ZEgDQxeVa?;o*t@cL)ccpmhjQ2nYx$ zCEPp}~ zpg*iM&>ser1q}rW1%(0WE6}UzNkGt5f~{tq_yhxp`sb)1k-@+3^M(HFP|w6b z#6UtgZ~*}u>zRwWv8%ZYK;GEF)XMxh_$vqli1yeBj}5PCY-i!> zo4Q(CIs)XZ?X6wS%|O&Z%EuOHY~r6SDypIYaYr+AfU32ngSCStKwK0^hK~y31G2M& zfImJu_^9mc;3ANngNu)gPY39i^vm$nRY7P#l*e8%QD8wp5QrCq2}FM^BcLECn7aYA z9bIgHR>A*LMFAv#JPHwofP)JNkhHdNwE~E~1P|l|c&Gp_b|4=JABg*S2oegKim{71 zK-$dQ_&GpMPW)#B^glKL{UIrTol8hq2xxyubntbDM1t~%goM~0LE<3d=5m>oqL0t6 zokt;y#m^wq)o?aFg820oG3T(KLx&Dwv;2FvLaRErF zV8Hg`i-WepU!=+pnhI^}XfCrPf(|OVV(f_fxKDVS)9S_k4J(JG;}UpoK-9!HJ|LkPt8 z!!>nua5Xk{6>$OEy7i-}KmLEeS~D0Kz}5^2!2r|GKpRPaEUV%NDs^wMAu(KGaHaY1 z(E8x;&1aCCA`G!XKot3gh^5fm@=(4frf`iRg4I-RMmTOekXdqYXE?uA53?yR(VF`6 zo4VcDLVF|vgyc29VCEQT1L9)Fi#6ANr})q^%CQ)%U{w*hQ5>UoTSQX*H4mH_apH=OsB<5R3faUXj<_#JrtH1O;kURA+)pzr18eX_=4&iFhS;wXX-Ih39&fs2+m zLLJgj&{cHt>fx2j6D+I{_zubzDeMLk!%V>D0MaxXR)0y?lfeO9&O;s!S^(8OIdebP zZAYfrV5;m|bKR4w!fE+dHIVFg6_LUc-xe^Ko&o)#7ybZK(i|zEV=67dnE!I3H^+p{ zuTzEs22;O~zlSSqun|7O6E@N#Jjs~5JU90M;Q+B7E8($`|5gDIw|4aakpW2_Ymu;V z)vU|`>Z%edYAWigY5)auSGPx4V+ArlwnJmn{AhD|@!S>g15wRgT&*pvO^scx9UTCo zFI=r0UBLbQKvrH52*~~?vT^`H>>S{~zai`YEbjk5foCvf1bdJtL8kO!BAY1!8Oyv^ zCeG*@Z5@pTgGjKNq$|jz8)Luv4P8Oft+akMHWe}al+4I)s_T&z9i8Jq%g9}dS*1c@P63BForhI1bV$&eltS;W| z+qksx3YacNeRPl$)yD!LXm9ZiM~zR9!hO($ty9Pr(zGQ{YUwhWCPt3vwIG(sO!w<@ z5vg4@JV2Is$Q{8iU{SBEuWV7XNpFeJQ0+Nv@=%gyzJPALXEWzIrrcqMuaNw5B}pa$nekv!EX15Q>Sq1V^3Vjb51T#s4*!%Xs1^c$$I1)9CNOQ`O_6&U+@AQ8nL{ z+0^#*<7#M&!C%1hUt;T{*ZvbcA%lO|-`~I!0SE`iP$)=pC){{nVrYNxe8`(B?LXs`G0vM?v|$WSJ%WHBBQ<%&Kg0g%yk^<7=EfKzB!$=>10F`P ztzqY_JLN9Ah$6I+PfOayzt3y=(MXHU6S#5qt`1UZ_0HJoEWV|LPLgmoh4h|oSQ!u2oWcws?V7Z z!DVgNmIgdaBb%5f>=bvsqY zIGMPo1gIlTzW7kPTAOgoCV~M5%FRnwcG#(nzgk_#U8tqm5gLQW4VN?YihD>r_FI$U zkx3jqjV8m5GGT8vjfhR4W>0l`RSOByS1(H+Z`N&kIRc-qS0GX66j_EnWI;`(@qvZA z3|Qs$r|t`oi&Za@P}QjK4i(l`F9TX#ng#{=zaJXl$6DF<8DA9~F(M)7H=bsEPhy7+ z%GkXMV3_D(_HN~OV-4dG%d+v`7m#@$kCC^6dWqj%r{lpv5W80U;xcu)CEXiHy&eHe~Ci9;L{Cq&JUxAx>+|8QvqjYNv_ZuBDo8mr_^Q%NFfW*L(Y=bsT_1 z<{h&eAyZsJQrf$W-N+7ijh?48OK?~za4eb726q8Ds+I#)*Adxf{UNd1gGG|<{l^6l z-kNh*FRw#IsV9kVUGi~qCdCM^*LpzOLibVn1*sP}v|81U2c>3}_-#{Z4y zBg(!sCIp~&in>YAM}Foqgu{YS|NF4v-*~=%5j_0w^LO@Ye)$~wcq_H4elahWpgq}< zS!e<=t1IUiy%}N8S_J4$b+Q_zwWAsAj0bC#=2pG0G9eB`I?EC;3Fgoa_g*N};AE-E$xVmw}W?tF1^@u^kw)%K$Hmc#vy(SolfTsnxU zra!3%T70YNwtzc7nU*yu%ViP^rHH*Ra@3)5GVyzEYLL}DJ3k{cAy^Rr$BRWu{f6b+ zE!4D-8%zrfckQOzU>a)#6+vU}r)Q*x`qSCZHDRq%3j2A?N!xZ>X2k-;Ve`WZ5Fb8g z#}_EP7eqXRwW}XD)0t(Y{3M%x#AhJ4C?%N6nV5oT7KgL8v1GG)Hi!-FUq>w3L|nN9}RQ((`o z|A7~gNgDqB-5&7kQ6bxC{oVCgZr~TXj2lP`w?++&6@WuedDT^2Qy-T;$IHkgF8~Uo zTX}5`R4{mJwhuZGRpBLTS4jP8`jd?|t{JUT`kO zef&ic{?Xt44?B^+(MEsg33QbTOAAea z71R#Ait+VOX8sad-+`RcgcLe#p$HuY*$f;gX`O3V#4@-=8d{a8gyaovmfxHtQA^tA z(;C(N#3qphLb~GOZ2+;_e<0&?S!rNw%M1@E%9kuhW|B+3XO_LCZ=~e6z#n_B5lYd1 zl1TkwEQr>&>Cn+E$)ljGRc}_+mI-OvB{WEK4V3`yYtJiD4enH2p(7j2tP6`Xf-zrp z(>GQYyJ#Nj{(8Cl(hbhR8F4(7wz)edcDdz=Ta9;NB|Ycbx)4t^0R${yc_Qr~cGn}j zSAWmzLzL{&uKsN`9%e9^i z+bdj+VD^u%VG+|=7)O;>HjDvty>PyI3OJH&<(kep@9ltbBtC9~aNC;0F=ta8E+i{o z2OM@!(Dyuao9QyP$nM#Wn_q9Qk6G?EpnByoX+wu4>{HSYUo#8z;$c>-O;;&dT6agD zd5o1kycxQD{r)Ov-}tgG!uo5~sdCJ&rRHZd%w4lV=vHZUehF~`W*WQCY$z;_XQEux zS;wZ@c!po{wwV>?nn74S_LsU2(DQ@1QN$50dvoZx(bHH8-&Y|(G;v&xHoEy(rXrA` zjn*OjAr0t+KYg7$*w?xKov-_s&g?IW%uzlVewLjsgPCD`3>(_lZvi%d;qQGNT>C#z zWRE;8Da|8c_A5(<@b4)xg#Ruj_VjOYpde5H$d|>F#q~?5_U|aM$5r9aMd2TunCs6_ z4IKMf0WJP*?DzZ^Lhg@y5FAwgQ-}XeQtTHp9L(SRi2T~E_G@M*l~NBTUJRlOTu@JV z@<>E5AK=|67c-OB($t1#>LY(52DnC8pmPttKj%h8_lc5~aTPZ&MP)ok+PAguM&#Xx zAii9mFF+E3eRdEyfY>5#5%4i{e=bt+v#42>6BG-yrY?aa3G*OXHN;jEBAc!s3|C{Z zseL3uH^Ju>iqb1AB%F4vIUkzzQc{d|o&11tav}@$+f>HYJs!=-^`%7MWqTa5IKdT^ zW3h5YgC^1m3A{C56i=G{OiXz`tMsOlFO)?Q8@=`0{SD=|IZf7H@H4EnX9a&#*Ls-C~#IZ0B>=CE;p&5}|fj@<1Jx z^*nq;%8diZGs9rv<9z&_Zoo4O#r?}+4GlaMqG#%R-cD;MiKgli8^a@McWqIPit!I6z8AC*+=hvYxRP6vk#ZwJ7P1KR0Ob9WVJTN5Z zjyVgQ?_(Z%a9PR3h!7bRPkV+}V{#@$P$J#eK>l=`Kz}+Q6eJ|jFZzF0ANd#Z&0o?{ zmJ<-;7pVvZ^vHx0{;BRDLW59#X@&vwi+?Fi$Ul^nzsk7a;O(bag$M%zv+(uWPjM19 z2&tMnum3v>7Y=98V?~2r{8imw#~^Hg;+iXvKtUA2J6pxxw(jteddY`(9X6q(5n+5&djoo zQ6;}86AKr!Hl>(1)`q{X@tRnS%RlyHF*02U_%uPlMuuUm!7|^VzoeVlBp2LaUX~Tf z)aK$<<5#KGA;osp-M^_I)1kn?XM%%jw{)R)N@MLL*6o<`_*WC#JG$6XoKFlM|6YOhmZlTJlAy6VL_h$RkfY(jX&;FV{IFLUyFSv^HhXKU^|7Vv~c>oFi8ay-z`OgA8B-mvBGzwS{I#`?o0(sc^Ks@Xq4lW%qME}_e z17e2(YS*I%bS4>7^*+1$#v~qdU3y~jvFQB?A3@5OzMU_L75E2E3fD{slwy)EjlyF6 zRR77Gpde(t(h-fNN+EbM1FDkPEh{SbVJ}z{vRfnQTp`lqI9@NM8J;)9%1jY>w-GD5 z%v~kKT^2-}eeAAU>+yooviyuotw|l)Ayk*ihqZ(IY&$9Tp`-;S;k`8Ks!nYQOT9_A z^es*LOPZM#9ex--O~ri{LgLNFz6qkdMLL9S_b6vt;du5ABR}tC2l57p45ZzZX!bOx zobR|goGJpF0K=e-;Q3FvT#IRxn{np)v}|>piH1;9#=5B+V#xgZocfae#_zfj*TVg) z#U-qHW_mF~ZY?xkUC7RH%Chk0vche3a+*_GLBFW|d;t`KI+(HZP036v4n`rbO)0e6 z%pxjkjsD2a*e~0=(aYq&)}j)aX$4D!kN@4L2J1Uw9C_(!Qx|ehP48uw)vO=8egguV z#PdO#C1!zZH|6RXyE5g;VZ4p5W(s%|(VZJ1^=PVV_{h8q#*|lt-#VpxX$edjESI`j~Sb50+ST5UDuw1gUkNQ+X1Z@8j)6>l^}-}u7Z zH!mUJ>12P82Z_!=DPFP)jQE7rgA}Zp zR-ivc{a-Kz0}1k{C-Ie&LvU-f>Xcu?oVv@F;7#!cP81EYd4{H03ORWXa#^`VYbVx4QmY zUH`4F{}qb-R@Z;4>%Z0Y-|9NlztI?eP&dET^`9KeZ*~2Dx4I7U#~lOu;|~3Yax8xz zRAl)@{R^T66AtN*L5{_Fu2D&C7mOt7(z=KFz_6U#7Zp(5U*hJhrG40 z618=*EdswR@raM0zfzX*u+gT`rNvfiMk?@3n?)u#KhrYLaANnDC@l?^gVTS>_)cyn zc&tz4t8q;~M$=jL_+6z+{(z=8%-*&Hnlx|A(D!I+&eMG|(|6nhTi+-^aQ1@Abh#Wz zf)!~+-YILDkR(pHAK+E|QoS{ve=y6@n+BSEk_dd~#C|}}5qY^3yO9+opR!>_$!{Dj z#9}|hB+#$2tPBjZ3`cfeG0*nL_5u21d;S^!K|_OsM{FB#oyDKC`xrc8Yl5p(!6~1A zA3TDY5HJak3WxmjqGEvKN54B5ziXi11^D9r(Qh^A@k0M|=%{w>CAo$0%sL2P7?E;K z{xzR|4$4w|i*mqC(mpzCnj91^L|X7VWl=M5SqcB80ZVZpW{AEkGyys|)%h<@g7J>Vm&BLjP|c0sEa1 z`a2`^cSh*{U!Q>Zoe}!KJ0le255o-32&MnQ(fsG9G5AB;0*U^N^uft5e;>>LSE&r# z|D4KDH^rNTvx{TQhn?91`0VUuQ_+IFB070rc$l1ySgDwY#KnR@kJq-&ejp$(iyD^& z^xOZ1I)Fj}`7Hqbz5@MbfZ$Xbn!eKK3Q|h-mtU}Biil&Sxy>_;fqpG8I8f8N39A84 z9hwjc*CAI_3vsW@qJVz6K)=X5zp($HXG)+j{;TI-eq;hcLC7y?5@6&@M8m5YXt#Y0 zRenbdveIIy$qXr7FnMPCoDx%p{EU5dE#Zt#A^hT~1IocA1ib?(U#?p0ZZEFz_yk6N z2-2J*DDR^6loDzu1C{8tI$uea-ndt;&i)5w%f`Zbsa&~?_E8eJG&5!2kfGA$@W^69 zmCV~EP5jb)tn&{Nr&-HUDOf}6B_@TN$`=yBJ5iJzfpZRW$=T8DUpjbcp6+}z8o?58 zsuH)td*!J0*-eZE10^)erEhzP-wTzuoH`D?%Q5=X4J@VrlrC4nRswImTR%L)l>srs znH9x{C(xMf%SWT9JLh^(8cx;U&o`uM74_!vduVi(JdGv{FiFL|wC0`RTf$u1t6LLd zl~qzk*VP0$xwir;U(2Xp38fRjodeP-m|k7^yjoP z(LMs*ge{_YH>1Bqb74~c#Dw|b^$-MG3eQa5NhTT~`(1m?s9cp{NQj_XoO^qiBD1?!@z5sfXpaXkD*0X=5Pa}iB=Liu>#tkvB;P^ye@+xNmCcDBg3M^ rR5Wyd9L0y+UBWQ%lAYR(5LVX6@ZqeL!)th#sUrY(3cT&XUP=t(=F_1KwgXkri zI7wwZjM`rBy|&leim|=)*52Cx-zv6>2~ZOJ`#d+g=j^@q-fOSD_S$Q&z4ktb>Tf=xxin346D&*9w(^uepZfjpe-4s8 z`l4Tr)}9^t`o&uv3tzu@NwmJDq^Y^_j^>qXN>;60yS6c2a(i7#v%a>Zer-wBO~H~i zjjQXX6%>pr&7%I<*F5d%KxE%=xct`geHoR$W8Xram)}~k?<1ZswS@M4$a7lgwtXhg zo9kCarOscYFyPm;g^nEUuGj8cHe9A(^E&bzxtg{b$mLE=^JrRf2Ju2d8$o(4ak7LT zlvGb1nl_yjz#lJhk?reL1*NQ1P|wp30ct}Xn)ZZ52He_XS2-l6{sQlTylgo2|Ki!E zY0rS-ul-Gn*R79}xpx&mLf2}7bmpwT5>2~pTJ!3a@s*nP&{#6s2t|Y_;jBL&44GyZ z)0Vnu^a(PBDH{l9{rNPld)nG;K_BJ*3W04>uDPXINK-t4H`>+k=Kiyg5%sD6zYP1I z)c+X{)EGw+N0ujA^S$w@{LVG}MS4ME{`f+pVE&V{wd8zvz|spXJ>SwjR`G=UeOh`p zBNhx9GnbH`@;?=(09hquCF+i9Nq>IIf7phV0yA0%5_JQbF>!etb=x#e^FBBCX76*M zkoV^`rt#*~YSa7k9@q9{b>a7pTV?wm93X!&An$XFYP>(MHeEf&E96jPiPU(okNkl5 z=l(+1cECOFd%Vwe=k=xhM+3>~L92K*%_RH-?xepcU=xyW6;FW>OE0qaC;X zy34Yx#Jx+cc%8LwhE=?TTAkh0iPspd`7uYh*MC@MPp{uZNoZDafCARKrD3ahsl@am zW9C94Ve2is!_gAT1!7jz_ubh*i?2{E=9915g-)cM{3v@nqRqf#Vy<28pFMKu~Fk;{64Ke zCi%uhA)sux>$7mOdI%O8b3I#}@x1ct{CIBZw%N(Ko{C~cM3u3^#BN7&ktg%cY2Jj&jwMc%w9F`1tXOwND&Pql&Mmq6Ic3(o z{eS4ZXDIH@cVwKUr;^UO?c2}l^ELQ>K{X!r-q z-Yp*=zp>)I7QZo5xRKc9F~%L+o~utW{GQHk2)y<&Eq;MfJyh21OMKwi-)}4$n$&0X z0NMXR#dbY!PWvv^@O#a>D&C71(C>tQ&`lppnty2chg6^4no(8i?(A+I<9k7SX13PT zpEtE{vH9Rlng*F6BVOvs#Ee}=!6T4xXZHkGPvUAve0jj!1iiE1@O|-`fVq`OXSeS5 z&CQIMZ@gg)OzlZ*D9zX6Uv=bMf$YUJYi1G8=yV;qohcy1yWOV+qE6JU6)zoc6^};> zJCC(~x2$^wLm?>d%X}`>83n>8aKzgi%zEHZ7CrbgBp&L_53g6GB1G*+4mgz-&^_VJ zq9|e`mZe$`eD))w`jAm`;AQEb;_bn*cYEH?bG>N{B&(06st@*jl$R_x__|L^-Ehiv zJaJ-9vUbS(z|3(_R+`#-xlaoQ%ndY?UNRa`PCn$9*A99+{3L@`@uLu)E+-x^e}2lc z=2LnH&$LxccEFr1HBE_|SD&kCi9yG*WX-epxfr&9RlJ@Fn|_5{OBY2Us9q%1)9);= z?bk0gHug(L9LbF(U9&awI5bIZqxxXdosz8dLzFgDZc>#^w+g`DpPJDr`DNY4=!#dp zk9JS0K5SHV9!!o--=PW|vg`t(^rtMdMnNIHGG<00pyJi|NJ~Go*m}$GA2bR|$pAyg zWU2)KrY8`I4VWq6kA8?g#OXt4x3|+pMtbKtDz}l`K+^9qZoFXLm)2j*yCh>t>RoA1xow2Vh$OMq7Fh@U&_c}>&w0;SR)rL8T6 zy3FQC^18Wm1<8-gYY)Y*jD2K&^cSQ<_e8bZ=4fW5TIgdHcqB{SYWhjF^m3lD&(rVb z$&mC)ugul}lqWDFVtdSAO84F~2F#}=GS(P0yNHBCRZonB9yJD1eor7A6~hNy`8KXnCUeEEb(ck$?3aYh z&zX1hcyyxs3Q^7GlMCU+s9yh&7;BN_Mbc#Ft_;Y9ae3g}PUq@LpkFX;BsSb42S&kdPvNJm*WI2_);V|GL-tV|n)N>Q9rWHR&7I;FC0o-F17t(1JDIrpE(wq7{B9gF9>0@K*ka-wEp@ES3TOt`x z?30kWmsqq=E73yf{*g#%W(MPPF~eu+2LtA3J`oUa#|ke`Kk^qtGAjJ0xAWWJHT*}? zNuJEkKPl1=1LvyxN+Vy4FJnH~j@Es~Ei3DTsEa z-0KmwcNa)SPwVKA`4Lfv-*dMsS?fU*X32E$rgl>&lAJI%-7O+oVt!4?`Wka^3X$?! zGZ50xv5MVFnDu+mZs{i}i0ua?bA&ZFY@UJ;dvb}|v5HGo;rLilFhwDy2&6R2RBo~r z-EmEVQ9ts zeOh8?VR{jg1VfEkhhF!I?x~tj(;Zw9QgH(d`a| z&A-gcCPR`=pT|ll3VE{Bd=4>7&2u9IZ&S(`5$=+D7{3ffdOszjZtT67&nlh)1QAC~ z&UFXOSBG&XbCWZrO8UnXj=9Xwy*%8)X8(X`k~ro+q88L;j5>y2nJPgha4`g{%zvj4 zd5P8o7snj>Li2wM2DkwZ^Ph>^<5Yd5=Y%tUVX9`&&5N1gtUm(*)axd=lvPqgnK@_R zVytAQn@PcS4xDWx5-~iH~V?@3mccg!OdIHSJ*kh z)C`ZgH(MkW%TT5Xoav})@esPkt|Y6`mH_KeDY=IK*;paFm;L}#Up<3C^It(CE68mW z2n3_e=oyMjzeWFy2OqfA{wZJK2JsRym7E2H0OMe6e(alJC2Y5`N(nNt`N9x!{9srA z>mmpFQpIInM1`&aAP@RY=^S>&gMDr9J9gz92k6*Xa8&YuI7{8pA>tbgKIiwzWBiyu zWTA@M=$6Q8DAF1LIlt{U%T?WRe)lKzduZm3v?c$JGNO>mOhCF2KsJU$pD@Yy_ctlnkFj}(aq}PBR8Tvgv4499~EF46a zjJ576l4@dkS$B<3f37-qRO!X>X$z5xePaF#byC$#wLOaiv61E{RJQhrUYBweCnL%6 z*|xkLBWNW&JdZ1OFyXu%pN#^`DD!!$#qyH=KJ#aSK=&{^!)g_+>BF3wk@9b4!Q2^$ z7CqsUY^!Df@I+P*s|l;)-)BRz#M$m2HQy$Mc}}tPb0;mUeByW(;9)8@y`a(5fcdF( znXxz1L|8spyyBzbM-%)|wCQ7FY&V&2!+`kTSo%(ons*C>#9S?h%QO@}SJwK}XN=uj zP<7?7sx6IbP#YE1WZQHywcbkXEXrWS?u;EbZ!A+X=k5F>BPN(Tuoq-*|C^mg24!^K zBo#ZBUc~f@{UJS19s}mrh5q-F{%6f85_8Jpd!fW$$4E1aB<4^0x0<7f(OS}fl%WXo@TIFkpDB z#iej@6p)ZgT}#Z;`&986M)lT6`FZgI1$)sb#5}yYN+kwWfh$z}sESW0uN~Mh#_;cn zIhY*^G@ix)D7<1t*b&OLj?In_Onm3h?7^BukdJ0Q4Vu3fMvp-zek+klOzGE%gb-Bo zK8#pcQV@)tFdzMzrlrN9$owYrv0neSf-E+qpYbjY);cehbDlDKYEdN&eJ z8-{*JpNjU7`nCc(jKRh#`>@m&71QR!O@Q(*C6XBjMYB33MckKk$g zpQ&uzHP_64ULFN@*N)|mw{*+ zn-@1mXSD|hO{>SLqsCA_Lz%dBRarL-4Y3s`ZF;XmBqE^2!IfEIxA`~Hri(TURhzO9 zs&>CcyHtHa#wrQs{KX+@b-HkTLNFMFkf043uex)33CNnbl$Fs*uga0NkAU%eeQ zqyp);PhcYc(d>r9C_35Cn-`U%ECwxa$1$grc=u1TBPJD4SBZgU8vBNkKzW~EB zO07tjxMIq>D^4zxuGQ@HW#&*)|0)V5Mt(4;ta7yl!xbrG!xpM|If7<8af$;(GhQUS zg5m*lC-k|xBjpz&x84pN8ban5*J@f`>$ApyUc@>c_l82|H=&ZbwP^_j7)pgJWEKNW zH$gGdRXezpt-w}uI~~n>U63>HrsW8s;$=n8y{=^SPMTsvh2{+HXa`TK%_m~-h=wapvFycw{H=Tk%``go~O-6!sn0-_P`bN*2f zoUGoO^uOrs{H3b@V$8vMH;N_I6SUq&XrhL`_4x0t>b|Xi5ryr4F}}>I-Z~eJ%)SNe zRbWr~v(?a{!xiJNWv&FfJ`Qh`J_eZ{FsrV%xnfiLBJ)Y0d(bf~Uaf}zMJfNaNTPL5 zLA*j9qv9yzqejgj9??j}j!4qInB_ixGwQEGnB_t>WvaZ-cPk@f8H-1HvWuRTQ|N-o ztO7ixky)cO-FpTLC^F|5{;e^`@q@Ap&h|hGfRrXCRHonjqh%?+zsc~SUoK=!Y{QR@ zbI2S;JLpg8IBL(k=_iy*&sC!ECrlv`-@hkCk%bgVKS*4RgZ(OxEqLk*3~2E=TuU|_ zo|jcBOs8}$g=z5(dU2-Q)s#c#^Ydi{GM zq|N)mg}Ij0`^>9n2&-9M|7bP<4Vh14z{Q+VM&1`Pcal)93?%y>0Bv6Sq+;hIP!yqQCAwV1bBJvp4ewATF1uz zv;uLnihaPc{0ODH)TU((Y%vCxRoEWunrFR8w>7mdS=}EmM3+nep-4c|e<)LE>1Jx~cys}!+ZK&<$Og6g zP%{79h_AQfAE_QTgMVOse}rhz>}NC*gC$bko0tO~6pK$5Guaz3=b3D>g67{-JhM7z zwv$w{oMNhEf>P)lqgXu5(!!?u9|dFPTHEJrJ=-oxq5B#r$xJp1ri5_;P3l`5%Ts$P z*$=U$i{}X|Sp|zo<6Czq|55f_!L7Y=xlj8}kx%<4!dAkogtrNw6IzOWS{I>*5F3Ys zfah$&D#G88evL5mT%Wd_&`8KX&!>3_m4px>O0Wpi&-ZD~gl7oV7x=Vq5zd=nhd=Th zJrONU2owG{Va|m5}$U85WEEX2)UDd+I+%B!tV+9min|$3Ckz@ zv?juL300T+v_D+t(=M0-orK#7|4exDD?aV3^!w#(_&(3!@`s?YpKzFvCLAMtK{!Ql zLU$gam~aW<8p3r1`y@cT^dW0TdrUL8d_zq-^Y>Tbk9mIFiXG~-qVrhT*wyMhe$XhE zvPNIxeQ(d8+nVtpM;kff%M6%nso8nV7;McAn+M9l(mQ-8Bi1lhT|o)Q)B$XnpU9SN zvmmmX+$K&qYX1%MM>hAz_e}D8YB`IrPf#`#7zKxsqEv^&fzSfyNFwDg1Ye&9X{-O4dG#7LlyApqJ1j-~-)e8||I@ag{a%l@w;oxrwk59L+TLomG)CfjsJ->@BE6wOuO8`_t)8JqG12cF znWM4uXSuG}l`Iha-iNs6REsivWdQ|rbUr!ob=ocf5MS;+dZtYW5g zr*(`?t%$$-YFPt^9J549rXI)F^6)rlV`X}e8De)~nYZIrdXKpkzucNB1GBqeum)6MzIHxN91CdJG4jIvH+(SB%%QPV=K&B$we@pQD!+s67|IUK9dlyP zXS2AQg3PqRe~gB%2~RL^MO&vo$-r#_FQiq0VOi!HH5`fV2?5gy4Xk4{d3mFIBG>N+S?FQIyce;__$>ti6zR37smawOH|2_v^_In0dbS~<7zjCoRX ztCl59k7N1*eQ@&uDr2Y2y*9DS9g4P5zEGRxFtPlhymsw@Gc=v#1ia;n94;e9wlQtrBC0s+yD?*Q*eU(n9MEiPkbdw$tMns;~Gx z4%LS1Ae%PrzUMPn#ZF}|1y6;)XoHLUC#mY85c-B&C)qC87Qdbo`^(Zyo>4pGm?$(F zJLDokp%$#+E{XuA&h)*(n(K;}7TL44?A@HBh-t-VYL+ z6GfNCzfwL?rjLHH(ucvRs`pc?O2@l$gy1eE+aGa!uuO?;^2#XC-kb)0wKm)#t69D} zyEnu*F$OgCbNrDt*}?lR8W%p_=ujOgpD3;B8#DRY*f%h5%akA)eNzjhG1tPwyOtz5OkAo&;J~Tz>)SVa(W*%`)<4XCBYE9_A8$h&T$MB7UaIECkvUj5n zdY)WfTGU%rS}3!S_ynu?={6DRE&NIcUXIMl)w&i6kH-Yf7r)L>}csio3;3mMn8oES# zY@?q5VVAf-nck%{qR%>!`C!x>rxpP4M?1Rsk^4Vp2#sqMKSjNlv;aD%#;gJYjwZ@Q z60-z&NtY}^#&6gaT(Z>(;MQ=!yx=mBvd5()6XX&QNn@}PcR#He&eW|e61oCu5`)vGi(I56LG?uE|p zd7s)|*wbHV43-@Ov_XNMFJ8|xZxFyeM99wD{=K{b!;$wz#V-8 znXByltHRMC3RrJNm#VyO@{E~}Q8*l32*i3T9IaAM^J}Vxy&NftwKr)9{RDIGaSO*` z5+U_={uJ((PZUk=?Rc1Yu*O`7)xk#c^X7#x=sM7yX8S<^*8=c9UvRa+^8|1WF=2X7 z+3xS<^%*ykh@|}Ja^HeiqBjASoUtk=Q1nAsAv|i7MszK`4TN5wU;xe zgg?JUF%Z3t=qp5-J%x#ad}P-$`<$e!N{h_b9U`QU-;bgqyVl!L0zi38=~|(A^kO8= ziO9ke^JWs!E4ttgE9#?QtoSUR7o8#ivy)_Wf{NZl^d&KIYOrP8$T}qbL&ay|_y}`d z2?kh>d4vafkAO6SUW8UXug0eNVk*<}_^4bSGRKmFCF8&gkBWFG&cx2|(zedlYPXrA zXKU(Gm-UR$9WvciV5a+MRr(XZKIVV}*lSktR$7CSD}y2PezZ@vTB)k`I@%{>J_uPT z4~}=#L5}b%V&zCn)%y2>Ve>|+rC*WV?nH4K$2Xt?iUP4I_?^K`twOtr8Nf>d(IZbP zjZp*;3!|#ER4$0bOQ$ey;?2-_`kXwuwnPz@XNy(1V#hY8=5CAUhhmfQG%77r5RxHS zc)!q(qhq8Q{vEz%8Az;@xLX8I2Fo6$&7zlC3`<~vWaBVOh3718w}w{g|7&SUzga*ZyV#b)qrCS>Qa`1x#sjH|4>*a<{w zFze=^xOr=0vS0z9(v3g+Kv&kCIiWU@oK_1y{KCG>6|wwb>y6>M zfGdFc$tDkXP>ljXl=O7TgQ_l;D!I9qI8vyVe_3b4IGVPKTCh+j=U98hk7h40UIs7o z&0kOX28Dv*=pzX<0;A9tK`XKVP1lGxiLB?SVV0YSxf(SbDW4@Z^l{-}^fjsClOGrL zOh4IJkWz9ZxXl}#2$h&}FNr`W`b%oM`bqWX4DpL)pqUq5BGc2`xrwB)Xnw_;-i~&O zh8Avqj55FOZ-=&2Q6QLd&%Zfft*bKMM;S&o3p_%9!jV~*XnNtVKOh~uBxruda7B_= z2TdpKr>f@Q>sxne^u;bEi}u9R$Fbf#+GY>Cn|oZjLGxXz1-kih0 zv_e+uf&pS(NBK$4bW?--22>VZu6(vkhr)0m9Gh+xUkyBLx4_1}6q{&5I2<5)1<}#~ zLU@IQs0P!+*uXq-Gg7I`BV%dafaoA79$dufm&r7@^HV-ctSxV6f_N;)nkhx?tzC3R z0##PZgr~!!qEjR_j+8Oe2hNuYNe59}Z;?AL7##veBAC4LOeZ#%(4TOkyFS`*o#>@* zE(T(_Fq7&fD_ip+cpUNi0dw!6$&u-e$`{rMZmf9EQAf*jW?iz3EX zB4y^JOr-OV@m%KNk<59|tXB0Z4 zKsr?RN8`^uALY7cwt=wX^$pi?z@vYy##&cs&Z7nbQ5tj9M7^-`Y-%}zyHW}KquuF$ zaWXHbc{`rq8O@`hSquf6g=9yLw9(U_>l)ZBv5K4ynqjSTn0JCbi=(rYnwur3T$T4G z#saX`l^QFGxE+8Z&Y2|XlIVHNyRaEkxf7xnsMK(3b z{lmYUO1$beUQN935sz0CrW-pZ%eaU#LSq#w2riL;`4!M4K6JB*6qedq75^4@)v$kZ zL~k2FnbO9iuog^@^DrjLAPTFFYS0=lz1rHJm5;GC99uZxOW4|PtJ_3IxqBE|!jt51Jz`LG`=+Qz#WMb4iE;N#+_u<1wG!D?{V${0A{wVEw~96Zg7v z^oe$x-cIrQm0u|fmACU-GCdXb=JpHb|#j4F`siq>&NaNK-uI{A6kt5~Gx@%!N-P|lG z-0Yr|doJkhf`xn26+O*PgWb_$Fi8gjs-P4CqRzR&x8gscgKNREceAeWP}tjfJ_BvE z78&!VSL|pVV-(2JmvVP9vf9)>!(kMNQI>L7dY||BlGXXX#0f4?6w!G+!5q&0Z53>l zyI;$Q81ss(yJi>ziGIiNw|YLwiCvQTNSy3>1Lk3Nj@DgQ$0mt){B05(-G9c(eascQER=Q@nj-{(d5I8H~=fA&gjZqVQLwA-cc@+K{sD^v!SvM#<7+H>}^nF!q>* zV!w4x2FwnK%HGcNh;J4Jky>ALY($B-!vlaD2q-=+DjhuC6Sg6S7xpCHKNZO9OM1;u zP-o_!D90OTi@crPQsc{gZ!K!S&yzQT<@}EJ`|=%5A}frWCK%!IyrDGpmG%>ID znI+bMwpkVoJ!iA%cWi8jS`VO7##s&@5=Z0$SEBA9FDxCxQU03Y&+qm3;rSusR%x&|JW5iCg z3H>Jut;kNm#F2$+Y=cSv;gGTPTElmB&xd*KJEV5Dt6>xcHzAat#r!FF*p(n?Spt~5 zdV|ViPcGsdJG&?y8&THH+e=$HRsQU!FUxuw)h=S;(79j!B8-pS$XZzYn)&4U zG63Bv|FaCh&Pr->U_;kXhf5j0r|zeh<`wkEo}q0M7$fqgw4YRdjuMXe%oX4WzpS=< zr#&Pi!a>sq+{zhG+crl-=FNqyXDAs(Exi+>;{`-ywexm926B0yEm1d^tzuqEjiC9z zApnzd_-g95L4*y*$By%aQRd$>MDn8J(fBoG-E5V2#lOx$5yxgG;Q&7Tnxj-+*J;IF zk&8!!%%31y#$Y6InRe4n6{jM-BbICW8=#AWE@Xa8uG(+A*o>z9{opuCI6@eZ8*9^T z?#wa#1KTtq`{({6h?^`KOUU{j;+(8G*y|spGg{_i!+(Ict-Me7jp|8{lDz8SyfRDG zkL8$hVXeG%Fn*pn<#KJLS2_YZOLxU;D!?&4hrjM~;A zGBR>-I%BMZ27EmfX`DJ3a<~#7C$UN64P{^J;jWkRG zJ#Yss60P|b1)chpSv19MHWx=j(NZX4eDIa9&LU6Iy5TA;yV<$hexyyf;4iWds$+*b zyKjl-d7s`@)MFNvS(!z#qV`j4)wwplt0gx!YFX^xZUF$ImYmq{%XX6}E3>SYg0k*d zk?+?1{k&%D+GPxg%bh#MW&2X@Hdpt4bN?sHj{n*CBIWOny%#V$+2u0qZM=ndk3`w8 zAL#PYo&0SwqeA9tpxjcEC1DB?X_y*maI^b4$;WgOUr86;v}< z)Fk^l$wpPcM0Q%-xV#l3$ipjB+eBk3ox4dO}mMLB7sCV23a?UxN<5N5}FvUU@SLw zajY;_*fl{46kpxOI%{c`77ldfE6BA#teFyLOEVI-NZq%v3nmQ56N81V-2W|%UN8*7 z1{Yhh3}t`BaBsyCds)INVZzlOWy3QSUWs|b6jm3%!-44H;rP6Sb@7JXV#?JXwc9qIKSgebeWMu9Mt zSI7mDbic4!lE#FsnQ2?x993~sKtxb6#yFTc4`jnwY?!J}J)_2)mwlr-d-sbs*KeS2 zyagv$ItJ9Zh}~a$GLTKlC?#5tvhv~ll50}3yCGt3`iw1J8?rr0g zYYQv0YfZAcNZx5G660*^Sn}f|%UOjw57QYUyvNHjbhlgiY&zcrcr2$DVRGs%vZPuQxvIMocBQ+k-}!Dxx1PSkvL zp_Qy1?#fmT6tGP9$jPiw4<*W|{Q72@Pja}4*7UXcG$l~k^c03aIZ+BECyJaUC(6{O zsu&F3P9caZc`n#UAE+~0jsYC=x!7vfV)2#N7R9f(W=c(SuM`@@W62ZifEVNL9c|Rm zf&1f*N?%3qhEIcwqw@NM>UOeKD3{KFzw2d&NsyFJ6rUkxqtZ~Q#OZ7ZlC@lBd7J@G zt%oCrWfa^Sp(Sp3F{qCH#?kA45v|QRZfag3@sY$)u5EWXP95v<#dBh=rJ2!24}-1+oXBx?Cq5`iyzj`{Udipw#Zl+*9OFJO`s4cHq~#xI z@0CRYtHk~=fp^m#Oe*dG3)j`X!p+KrSXvk_!sJMDZ~L?*v6=+Tm2T@ZZOM1UuaGxs zi%RTwx-k!W`ng)p27oaPM^C9am)+H|J2_(=Oyx$-8S5Zu)aJLJ6emnrXYv)6=*yxq z{me9XtU2_!9Xk>U(Mx2#Ebe32F)puC7rM-`P-P7MTI8O&%WmeRMDcUX5=9;#8;<2B zRn)Afq$(o&6Sn*44|LL3MW%OVuTqY(^MX$Hx7YvFqQC`B`=3(2% zR+tY>=)Atp@#6ztF$Z;i%UkogOdh{Lwmx;FUGm~7hG~lqBxEiH#3Jg}3&cH43%1J& zkW;S;hof$aCgmpWkZmWi#epHLsZ)0(TMw%3&z`_md5?7Jj<7vT=*WTSSRjhue10L1 z-BToatzW2A>}4S~loLDq)dxH|>NJ03jvVJ>l|S$aW|hSkP52Y>ogd-E_$mj9@WHjMep4c~2W8An9YUueA@{RDyP zl5Yse=)D~sl%!&%B(0f}(tVPZa-Q z{Lp_q5eF}k<1*(l+A^_%9HPXXozOG(gq;*zHGlg$fHC^yu=%Tu}*tm_7|}^Ms-=< zmv`%9MK~1C`$Zmj&8_-~Xo%qAK(vi+Q*pgu-{tMx3~Ia*$=beN{{gY@F@I#1Gxc9? zk@2qfurC0aM`=Mt6>p_;1;?p>2u}~vfK_~e-<12RKy0>ciP~?Icf)UaXSO@3AK)!3 zMUeC=HDhk1H@86JLlnKaqj=1zKnUL!87RI&@Ntu-z$)IOP`}16?yR4%@+*%@$<~2{ zPiw1tUzVn%-(<6zs5_!|(3sS0TSI|eI90$A>Ggl$rauGyRKQ%$r>j=+YY>IHb)$zb zGiLUYvfi@4l`&rSy-{38ZHkh7RZxH1dW#(ZUS2WyA@HpFxhQW6NoJ0j%jOTfqtt0X z*nK<7x@{j&Av=%WoauMW)~cW&P}UulICGGcI}i}wGTeJ?y5xOLTSQsZq+Pa8?m*(U zQmt3JR&`(l3;}LUK0-vjCZtrHeRE6HLGgf;@JLOM(Z{=u)3emA?MA@iqzkL^%y?Q@Y_A1%wFq0fF_Al>RfT5IvLv3DFJo+R-JAKT%yuUc)J z9_Gv-WTr3^Dztz5<$~MRe z!ea_sVVqZI@)P~8YhC*FD7CP86fw{6rpi#*+)NY?!A0f%q4+uB*q_a5xFBMjB5%Zf z$lD(3ZHbI09Q)KPBIgW!*FvB8cvqp8Aa@~2)$^Q4V$~_$kd(XHHpUol4ARtD-_W3znk9&aC&8CeuT_xm_Xvk zr{zIfW>2=93r6yma>y(tkMrZKRA)vsN4qOOlDNlt zjjqIxg__o7NuPhek6rl&t}w8xeLzz{WfAOkN%hAJ9f)7r;eDPlt?^oFW>*A;{55iRiM(l0; z*}Ow5*HD7IyU2TmLGvC&fwl_UT6yJtR9kD_DJ2wFVQt5!oGH(>gJ@9)W{bI=3hI@C zlP_EM<>avRWk!Y-TGS~LSIZCujfpQp6!)iLX1McMZ%*Hu+1etl2F3jvv4za(mo+Sy zmjsUa;@~9|vjHK>nnU55ki4+s?YInW$QI$@i+FD9(?xZvK~b5bvYE283DrcOU?ie_ z^|In0gbp%;filjt3lnVIMw z6@7$K0rSt|sW7=iGclEaUCMo4CilTH8w=+zsCfOZV^crz8^1B2B$F$@MsLuyOZ6pS z7J?j?Y#<;Ph8aiKNulD;K$#;`001xHp)ShcnvsQ9Lb0jjLYEzfx?XM8LHV*}R?YzH zsZ6Beg+%1e4Bx#&@f_c0jOh7zT>A%dO0}gVKI8Zfx_Dds3ggvKPr7)U=F+rDZ&bXo zLLX(ka(wTkfErTs(X;)j`npNRiAo|~5=nMU8F?d|WsXZ=Y@Ow!BS zRy%IJg{G1F;TNRVDFNgTe(uuDIkwq~X~PLDpX#Cm*=^%+>G_n#eb8fH1}INqI~p@x}CJ6#p0BxGOj2 zSsMGsE#Bw%B|dmB@x@ZQUs$=6Q{*w!`eOQqeDCw0RlIdyPU7R~8D8iu)bvTlr-_f= zOPs3Qa9-ln-1~|WAB;$BAL)I5!25H3$n_~(#!L@y@~+_EWQeyN_!yte$1}q7ER2L| zYw|NhuQsj(yQOzqoy!aiK}CM@I& zJ&J{-r9YGS8&i41?^HHBbp%k%xy-dUlCbzlP`)?uYakEa;CRsa;NAxhCO)_?@!@?v zAB>RCbM7||CToU%rM2;D`R@|`d|ntg#X!a;&T44#p#!Pc!uvD)f20adl zvy)|;t7xxm_e~W&TF>?cKa_L_)T89$WL|mO}n;0^` zO0P0wjNa47yL{seP@*@Jutu~LXL_jS;H$2E)>QuxZ+!nwl#RUm`OyG%tNr14wa*aRD3@1c9e(%QD3jg%}`s*j%ghFMg@#ipZkcQL=37(WW(VWP-AKj9DJ| zm>HFlkMI_|iF1;UrE^#slP@5ABz8@rRKV_p+1Ru;(hw8B)7!F-sj5s9?wTym(|LSb4*~&_@z`S+f{jk{^701_lUK*wT;~QyZ8v2ej>48 zJ*%}ZSs6`Mu1;3omaJTEzxMeEWzdd%km}FNQZI=WmHcHBzn}ex4>-^RDy2)<^%%7; z8v4^lr<6zxPVhe90mygfYFm(})<-!|`T$$p@IPWzKWh0Oc~HCdeeVN@0ih0KSAK8V z@e{F;%TT<}@e$(_#v9(}z9`$5Y~49~{|83j4au6rW&4Px^1q>$^Zg$IGTV1u#iEwF z_Nt23jqyv>_j7T+Vz-KQ5gxXJQ1RwU8HR760pI92H zXXm#8N$;n}c2DmBZ1=RMZh&u8kEFw2>TP$qf2+6iXH>?oPhD>+M}D94|7cGgpV8gY zWAY8Dt@Oa-+L4-3iF>vuork_l>Q8&0-{bxHE9KQkTh5okWZ`^4%%-WY$SFvl>)l9l zbY|jLst3MOeKcY~Y_|{_=}G5I?MW@az!6F2wzm!dawKbC^d`QA2&dA_?@<3{a^DM#!`PiZmHtsZ0Z=OX|@oAz`-*ngneTkTs&FQ;@kh<6S zI^ByK{ZA!YA4f{BS0p|5AR}GF$5WoL{Eu1Hk8gC~pWNskld5!-?K`e-O8*_*wEN)v zztxAw|Bv>ewcDX1Qc7Hu95X^9CvtHo{Zp5S(xF~|8wdZ$Wj|j}MIpj;l9(W(Yiq)^1)dH7Hd*l<4-_xy(YXr{C@J zKa1?7uT{;RAq8C}q&y>}lw?tOJLP~U(fR}ouRx4XQ<19DMnZ!<6y2Dg|6!ig3_h4& z2yA2ZQycROeQGQWM(Ff7an63ES7}P8(A>)nE=6+=oz7f!Hj8jj3tfFe*G38t7dw>U zSQ+m0C#(DAd(6bE;gnnuqB>mUih!0ArCV?){SMa3Y3daZ<%@Xf?}L>unI#6@8(bVH z!YyV7OodOFlk&+p)@#pgutSi%ARU5qoaLltGiyuZW5Ru<^!|z}IDq0q(`xr##@pkrclWLt zsHh%bZZ_vLznH{{S7oMV=WNTq%$A-H-L4%_&tO0-`gtg)ik_6c3+26j8CHCoFD7fZ zX3*K9=P&;6NkG%1<55Vh&3u;9s2S+_m`}{Ytu3h;BTzV~9q;pf-kFjt6J zs1+zxWQ#?XC*J3WHU7D$xnXO3B^IMI<4!ZfmV((L0yU>a;0NhAWE<7pM(s1$R{Q&> zGNU_?l(buk#va4pmOjCRwiSp-c6y`qNpVF6EVIFm%MG1OlO1QR*D|Z^I0w#JW~m+L zlBJeeXvZ&*xX+H~OMHeM7sfGdIQYz5VnZefWSkuri-xa+tJcR8H(nC!Fm}nZ)Gx&p z{Om{Bw-d#?y<qoDz4Zw72u|vL#B&j>isiwN?! z^Fd9kB7Bo@JE57-MtF$u6k!};8et#d2*GX8F5yzb3_=wlK-fy&2TAG@e~9n{!oL!> z6Alne!cl@}6ZHutglU9p2m!+Fgmr{XgztlA6!?zue3o#4u$}M_;m3q#!fHYj_?8nw zl12#E5kiFT5}qP_o3M+pknjv)AHgKJDSruJI$<_J{$7J0zal(I*hIL85FyCl#}8@R z7lea^Q4hmw!WD#T2nz{I2@%42!bZa16Sfe3MR<+SPxzGZ9QFGMu@t;xJmwSl=bp3% z!u^DY2;V3CnD8sYRg}AwP(*MOK7}`j2?q#$gck|_0=~xxZG^Ri6@-NZA7MJ7gfN@B zrwB&~HxPCbo+GR$EG2XhoU~U&xP2uA8-bZ519hzqXoKTtNQ`_H|wl4hy_~Rn)(_?CYwGihq5&#HVRh z)Ss(W;x%8WEzy>1bF@ZnE!diQHfSYUKwC+=j`(tIfy${PZ!OR`txDOI$capmhs&v|rQPi{(MRw=9?Iz|r{zE#? z?xQxGpZ{&Up!`0G3^uhP!w;N+y@G5$+RhyAJOf+K99>AcqO;0<3~W8+9zUzxVbPP6 zJ8%|kIx>7Uu&dDt!+#yX9>0G$_2uXP=;r^?&HsPW&2eY7-cVJ)4h^qW)iu<`>*m%s z)P=R*YIEz?uAW=p+!D6|+P^8tBL1m58}Noo&uM6EsnafS1?vMh}X})J6^Y>F{8S5GbFKIkoR{JN%yt;Ux zxqjWscwL~mF#@t+yt#hu9VqvIafO@f1^i#;4r+6o>*^NP-`>2k`EG5Ab7AAk)!CGP zJ++UsI=*YjYacG_7n_%vO*?&S2fj z=2g+a%6K%aJty=9qm9jRNiSNt1_EOOo6D!(&VaOUIjbAjWk)PeT9~6ZH$z-ieRJKa zcw_V3(6mz3gLjp2n0LD#uY+jq{9$^&1P!@@4Rv)*+Iv!GN&Tuj=QQeTS!6@noaQ=4 z!5;Zl!x)40_ta_kO3LP?WZT4Qvjv)^hOt{!*V4j@JEyVfZX3r7aI~JmwR4JunzNW2 zTG?E`@^%@Pqk<=lC^p{Ja(1uY68Mt3HBC0dv@xo^#x-jgrG@otsc8x%RM*^6-?&!O zid75E&5g~F%80%`EPe3e6?@d0?p_<#0#d80zU59C_+Zn@RbU$Bv?ZfvEs}93%WpQl zP^B8Pyjc>3MJ&MI5)2Dhw#5C?8dh{R|7_~(v#@Ocq2V{omo<##*`;=zmZnPWfMAvW zp2g#*>^UG1ZP#!gm`zQmr9y;#o1L>VPAl65OYrWNc-@+_8hS#YLQ3W8)y*KBu7`;Z=YFZFb!q^=q@W9!57sY$=eI z>4}f|vUYVf)ULdPA=3WVv0&}Gl@0a$i-F($&$I{5&}1`ByGJ0> z0s8je@#>T?z2iAbKKNaxAqL+Dd&>rm8^P%8$UzUSF+IA&3a387_5oz5W8j=@13fTb?fR^)y-Mi)S?yJc(bj{t6GpH=pVJ< zd{M1%zIkPwMFe^N88A2`V0&_C_W+sQ%;HqXWS-mDu(}S>!Cp}1WNn(;+_+{z)k3BP z@KO9DB6ST7{`GaMSchdU?XXJ*o9b3EhiwF`E2=?ua%_)>)#wKfW|x1hz9zJ?K}Y5F z52tUeW0@b6)MCA^`EHdhsI?rKk1*{F_5pjd$uzr$O2JPb)diE)J@arhQfTD;x{bX>2yJN&YD9h)C0l zkh)LNrA&-0q_Qf6D_~eQuGW-}7B1eJ)os{UXJ9N`)hk=>tXr*p<1DDHw=`|eP1SRj z46~6tRC5~b9Ql&&%C)Po267xXHPqFttzTOoXB5P$`9uS<;7q!XT1#l6x^9g!2^$;g zhKc*~2JrubRR5D)&K}FB#Unm#!!(s8h9v{HnYL9=1R-&FQ?9Rn+ z(V+6L0V*DY$^3_n&W^l^T-l?GUqI@tCM`9-TvGfe^55CD?M{m);LB~;?Z#>E4*US( zueqCgvh%OYdIO^1ZvhtJS+6Ktt#FG^Wexv{uSIHz&!B}`Qda0&MOhsR>*&3mmh$3t z5FbPxrEJf}S|E+oUJXQiI`Wi$ts&e&IZ3Zk&w3!zt6^`B@It&9aYe1&%9ne0nW9E0 zlQQD%kkXC(HfpyMlO756D+%IFx{K#3@|xhnH0U0MU&i*4*nNtqlu$P8WsofR*E274TYG8tpxmGDhUinmC{ zCjxHaqi~}d=$*t%Xi5A-61$ty5WJq|#zWvjTZy)gx(&o-MCI=cO(nq3c!7p# zk>{5=EWWHdLR9g1ctiuVQ4e;TN*P7Ip{iOC*^I0HNK#<;DxA8?ErBoBYqL~*2|WuC zTLM*f3?C7FxC_{Fpf*?Vx53q_Y#l6l{C9Iy{b5dvx9be2?K${Cl}~%5+NTxG_wjK$ zpZ5AZu8=Y|w^MT(nAa+A;{C0 zeU|bZPw-@)N1yU(M+jSRw;ksBONaeDK)jFeEa7RwquFO$_SwXfP1Ko{1?`<(0keB6 zdm;SKFxec2wUGbj;DVdrmRdK}`k39Z$?7)uriE4ho25I!`IUOSQFg_$R!e$eSbV|R z6;QKPal9@V)#L01|1ZkEIxLQ+*>?@MMT5IbAR!Q(4ek&E0fH?7f(MtNi%WtA4Z(s0 zch|*&1_<$KUpR5AHz;fm_!|L3*;ZG`ua1wz@V|GZbm7Ud6d`j6qW70T41=)XoY z|C}43`a4fi$3OIswwj<2TOR<>*EIi#8m1fKp&DZrTW4|9@y{vhPDy|_YCDevN{<*( zwf7(TpC$YTm5v#z9{jf-`9CiHe}AC?{+Uq|LU}IHP>4W%@KKnLLMRH6DE!BZJpCV+ zP$&P3F#f}Fe1ww!dB zCAUT)YOWGtk3!UP00avDg@CB`1~t#||B$0p5!HYBzwiG?4h8++@_)7lvj6kY{~G}T z|Hy^@ja=d1$aVjX-16VZJ^qb6?BB?f|BXEV-^lC#jlB2Y$fy5}do-ySKT7hS1iwP@|0vIY5+(*ZARqI;I8@mZprhip{WnieisDgu{$GTk zKxxW9h4!C>phO2;{TG8m4=Qv3{9pKK6mR)2Jd7G0VEZrWmouOP{{Bn);Tmf4c-WNx zR4Y711sPPk@z0L|0hs?NsDV@d2LNDbMp5RKmdEU#4@NVMY|Eqlhs)|Yd(VcKkq}JT zcb3>7LMv=WB|;V=hJ0Oi>@ZATl2d$mPE(@4(E84N-z>R9Q^#iFsfHW%(cuSfq* z(_fs87S|GN#U(^O{y6Eh@RGarwF*V#xSc^~1ZB)9(ZxvlR5C-q0%h6nvooMlQd8jN zff(8xoW`M2skO>V`YuWc=!;AzTv^5aJ?^qe#ghEl6JSCt23-&Xw^VZTllVV#5>H#S z>D%wPEO7N3YnH||C_GSqk-*9X&erE}2$Av%W|$3p@1PUW^$d57C8C)~)-k25iUm!4 zL0<5|0>i+2P$JnE`pE2kV=_m(jVXOcWSA!3vHCf;bpBLQ*mCby|JDaT;p({zfG+MN zP+mt(O0@<<mVii8~@DLU-p=C6=_CLtoCosId?xWFfl8`7w6?iRNc-?=<I`R@ESY0J`%Qer(UnC$X&9azx~|tFVeLVc#KTwDo~}9nmw5InO9`z z79$wZ7J@}>$eI)4FQK1P+w3%{=upMeIDkltkm5OBU;obXWfx=`q$!;-cN>~|U zT8)e&S|P3iJ9oxF&Arj2KFo zJ_di1C2UfsOdmLt_^o!@V)xqiXH6ka_?%UObq(!3B?Z!bO|iF<@XHd6_O*#@%m#3b z3<(9{@Sm`RrS04*dS(i$VztZLly5F*aXu+~>`PbuTH8y=6!Z^_lYVOWP`lG5e9Q!ca-2k5>LJQ`&|mk`gC)2cF9Ve6Hi!=(Qymw0%V z9$QhSOf=!=xL>iGR@rPT2_VNeLQB+oA?Z#$_oBy$u)(DpHcV^8Lg`41_~?uW=nG;} z1CWa`4`P25RCo@52=FW<&G9)43GEfI=QVJfi}_T(f>LjEJ^b&YQ%jFwhZzWOAxTKJ zw7mqPREk2$AJPmFkKGkxQdjc&uw>&!2RXvB8v&_}zJziz2Tzt!x-i&KNP~wIZ!o13 zrST`2Kjj2Eo_rNdwOe*#mDpssXmlB6{o?{(epxMEoQqOlAKAa`?^i zn_G!xPM>@%n1V0x24SKu@<5JH4&?I#*xdK;+ADjZJ=gy@o4Kjn8oRw#i?xmEB0qv+-y49A6vtb^6q2WRC^~$gTAacsW&cDn*fc!;fPFi34{F96vLo(0eW3?6Qg=f=x9D{UNPRWR%a3svk2Y)?XQ7 zw?#@j9YkMR*IU@sWfM4~6g~MQO}>ifccgH`c9&YksDG?P{VPCsr_=O*?ZW;-ge*Z+=N>i0!P^u5B`SzYQ?3WzmGzL z-)l6L{={r}pE7p@#PCCUEf?^m$K7>RUZ;qejkfK5>eygQETR575z46lj`PHBg~Sx= zrGk_m7){RzwOA?e(|k;@8#=X5i>1d<;u;)@VnOHErY4zO2kuFr&t_pJPq zu%8YSbBdm13kXXE4<7fNeDTmR^Q_`$OInEuCpXgD>~!WLEIu%~4Q567G@b>aFDt)4 zYWRd;Q0&X(*iW+2+?x9QmXx>oJZ!~KzbVZpxgQGbby`$j$WVcv&BbJH?|NcuE%3e` z2_?GAioL6DNB57tW9(wnT7ebb+8T2ttZmfNqZM^+Y|(S6J;hJJ0oqSv6{?aeS`870 z^Y_0MEPMfuqLB>kbtT2=(rG?ch7M@0%&M?wlRwK-iHAs;OH50EK&5i<8L}LiHt5J^ z!iQMe&oGHlHi5ucS90GgM_f9()F5|J9}hDtfI1Hj+)ywl^YZFeDjw5&o9&335&jAC zo5J24gkfRSC_jcWzb!tx{qpI6p}X7FyxB=Yoj+tQ);hIcCePQhw6Gf@jPrW&T|Cr_ zZLH{mL>lC~&L=z-+A{*6On8aq{q~|(<+H-}R={^GzeMzh-V|1xpwTPqmpcKd!|Bkx z4G7Yb$un@@)`yN~GG@_(55TYc)aY}4$q9U$EPnW?zMmsHYYa2OsbUApgu}!xH{BFE zXS^m~Vc*XCde|9aUh)ogjw$14n8o%4_0U8}T%vZWGSW36h-6HEg@(kt+hc9EN{k=EVMR&?JK0Vkkm?hXdgSpXyl6~#LP;Q1^8AeF0ubiQB# zFzP+;m1_CQU@>#~YqFbiPs9;@@Y9B-F7J=H#pBDF4>0BmHo+k}*E><8SAVCVlr8i< zm6SO_$t0Gkkm^q+@-mEVfjBHjTe8(}G%jC|U`Y{&u&kVJl6=2{jg-jxieRy;IwO@;;a`@!VXVXGIN-D(P}?mu*)h%W`pJlq#N^ z#yu4|MfoMBnCB1b>_5-2&uU5iy5hg2kRfq#Ce&fF*ka6KPxrl!N_^xyl79Z|el3&K z`*+FD)sXh#;v+$GeRGl|r&mVn7ZQ&+OiCM~k@(|7uHczBWs5fBg(VA5>*TI`36W^( z?g#6+M0I2V@STVYF*6+QJmU?=dp9>vm#tjoKLdL?8AJJn{k1QJcA$A04oO&-5+LNs-gv zi01Bxao`o@pW)IrQl^E0K{3wHv61~EG_x|qS1;F-G3pfr5OKZaW+{Ox>q^W%r>(GL z$lfOj;TqbfqM5**IPQ%Oh0M3a?HCIzSEqMsSHq*+?nBmXD2D||kwu(bFT)^J%AsHW znc3BAM!;F;C&MNAu3JZo(sQ(}@U z^5oop8o%YdJ+2Yrgky~7)xp{uRDy+)fr{b6_hK{dw2DZa>!?pU1}hjNhStCoe1ZNx zixl8$Kl+jNoDY-8X0N!y9=rJqboLWZMa%9-yS_si@p;U!o7OGTJ~{C?Gngt5S0#HR zbY$17L5vNMzORu(`K}h3As&0O#m0caNqXq${RX>KqME{u+$e5%l3sGPee%PA0~bqx zAMeh}J1TxWa$p!sNM0j}l@gopc|SkbP{U)>7`A>>#m9n^EC$5O=-|ecxjKVq8>0lR zRRv|g2I*hf=`E?DZp9+>OE zhTA>7rkIF?>3gMp0&{j~P9vQ?HiBiP6Pw4M^r93e9&_5k(uDq;6@7G3%ul{~2{705 zf>#M-lEofX#jYp<>~o2`RT@1LPnWEsh)VzU0+3+;cIC33}up%pc&P6M_ z=m%x9SfFJK_3@B|+lO=mlO1QlVI4<1^cd_*J$MxUx2$mFj-KU6KKINi5R~RCY@tz=deD zF2w$2!Kavf#n(~_9ga;eJ3i5|kvtTCh10(P+M~uF=k`21>>cO4b?v)Fr?y|D4v68t z0cHWI5Sne56E2;h{1)}J$NndB2X93M*wvbx?o(4MeLn7=WYHsBHzV7~*j8{^KgSei^#FVmeH@E^{Ra6fuRglYE9K1Ctan7-;R?Bc?Px6OJ_ z<@{%)3Ul?yuWqT3@hIk2UP>|Njdj_>@t6agF{ie)!U4*sbA7f3g^Kia`p6#EZ46o9 z$5e1B89Z?s8&B>8Xls$vLPyUkt=RSWW#gk}pwxEpn3{P02kf9kbhzl3hOM$%AjX>K_LMqFesr+cy=28YllP9^^p>-=%z2@G`iwq_fgdejysz)KOZ@1HoCO-6O;lVe$9hR$GOGgx)EmOPYtJyY(p^wp#bVSObNHoNk~tUrZ*3ql zY!~c^P|CHuj6eoOos+q_jrv(a)n_9NY8*2&R>7s*Bwo(m(u6=Z(L6kjO7jo?jDQD| zAeiys8W!Hs5}QDKPzbk!DuNK`480lKLfbh%tSp_cYni}zZ<%OMYi!+oV}}e4nPvV` zs($Z!|Lx$b7Iioj*`A=>hw!@=f#$V3^wlhyGHHIZe~s z60R~4<-727`PY=1Rx-(v!_3-(Y#Iym@b1643(v1kUsyZpxJNI_^{Vy9<4PZ3o` znqAK1Y6y)6TGRID+MA~UI!Y-QSeXcV>NQT6@If+=8U60!kYO7PeNB+XV}gA~jpoUq zGoFXQ_pc;OXsQwk$L#a|;5Jkq!hH7-A6q_GUwjo?J~)=!o~jTIFU-c{-sS8VPB#P} zmhxiTA-;KT#}oXe{L0JFc9udsJQJwu@jNkYuHK9GSK9db+{7W-&_{9nhbcG7#X?B= z@|k1ki^&y?eFNu+KXbnx?*e)4d(VfwE8J~qVs1~?9qPKdL>ZK+ROqF>XD91CPaVtJ zTyADsuH!@J6nsDV6=pHzbd$c$K7P*y%9QqV>AOQax59n^k(#q0NNS`D)}|CiFt;rM zlhP)7sPI#57vOwX+tC2R=MY3J1IC+~-anxCp9M}8#tVMp2dhZ}R%2e}w-JAHl^82*yL8{20277^isSe{QCK|3RPjnLk&1a<^S0$UdfImenJ}2+XE@Ga&Iem)$|g zm87DzIjO<}+x?zCmGxbm_1@9Lp19NWb9{*sKzZ2qKBHP);^$@wlNgJ)?0_rX7rMQg z*2~q#eg6Cn|55|r)i_ean4fN@8rV76W!wl}MVQOFwpFX<2}ai2OLG^I)!qnz!E=P$ zmH#>*KKt$n3TMU2VMQB}#zLG275%i9w9{I(c{&oy@+Wv|3D~{4s{oZKdV_~v3N=h^TM~4%u#+c=b zj}f!xj6gM?7uQ9O4&a#6n(|5B)g=~|)MgWy5q*^H3}Aj%zLts3x$k2QIwSMgP}2Q6 zscC#Z%Ri?Of*two&>B$s&7PpbPT3ns$*(3Eg=k~MRR9?1N(GCn=ZwEJgR|XYa`1L! zWGxCJblm)^)e$jgiN+&9amJnfF&%l};p;bQ1RPH@nAF?T_lF8nNqoUd4dR*msaF22R1KH6zg4QJW>o5c0^^e`18p6L;U+v!% zKG=!@ZWsz6IB$!R)A?v(;!PB+019BD0g|cMaF%jaYX-y8P4PMGn2?0^5a=DEBzNz4au@?eeODMhroW3P=l=h8) z*3YQzj*T&4^)+KIegJJ9^uKDLk3$GKj@+<{>m5L~UbbgL&Xk{I@PS$@y{H_Hs=R>* z>$oyQunl@PgWmq;1ikv50__oHbyZDgxULTo{{1Eae6(5q1=hGK4*aBGd@bk*1MjxZ zxIq?JLug(EMV{E#7|18IWItmpG1zD8IKa^|WH_75*-hG?UUGfvnRV%aT`!tcvR|mz zkoTtW&R;Jv_f%cH3!QEa)^*zOw-l9a)M^?0;V9W~I6{#z% z7~8@RTT~BXwor7mheEq|ptBttLO~O1XHQ0ubiUXS+m3J-} zkastxIymK1-F8h?molG$MJcZABDo%xff+J)z!T-CS4C#%0g6m-?GxE9`K+Qo{b<{| zlFk+0B}NYC9wxd%SDE3WO6y$aY8^%ect<`!CV%QWt{TBtQl+m9PjWvLVikXV2V>XL zkVEIT$lT!T;YDH(FgKq`a+#Ru``dt2&#kV`I+Kt&KMyC~ltoWh;eL(Ew&NyvGD+8X zQ^^xu+@8dv2Eb{PaFfH%-u$$i$g5WHkmax#@g(B-OM#!RNZBkZ-&%JSR=wPx>dnL& zwA6ksyfer5_&~)OUY6^ZiQsj<34d*&nA6^fh%US@{YKEojL|Y8{!Hgw(S?(`l$0F= zy`_v(hQIyG!`HN-=Q$WCmLQbfLVY+e)JBXs;*4Z{w)T~yK5LV{-se7iQEu_UdMq=o*u`>$^2wUT>3MyIIv5{RTCF0)qtxI?aVsp&!ui1^4Cp|M*v`s zU!JP)hUkj>{&;2R)?}r_SfY)R)@b^7T3}=i#npIcQb!lt;l#ej$scp_8Ui2r;N|am z*^_rJ%71Oj%|8<(SM96km3A*=7+Y++7!kc`0bNoO#O|c&xrSfa=&rBYQUDvp$OXFa;m2ZJ18YH?tfIOjpWcEk~KQ z&s7z;(wOhErUJAe^dwbgN1p6oV<^2B>sq>J=4$;Sei)FMoU$G2H#hTCg%sX5T>h!ZDyhb*(HB2n&ox74_<@sZ4Y3F;#2-kTbd>$G0X| z>$IIEpx$NKng!c)F6s#(VuS@eP@&U+YfcnPh3DWGBZQc`+`a;BiIgZugOabcld+b^ zT>pBuzg_*x5KN8cQ(L5iYYPg2XnDjW;7*i3ob5C338(*-rVJy9rQ5*C7mb?S%#XM{ zn?EtCU#%dG=j3}K_+c60^)#eHUA#9~DK7;{`}2+JFZpgM`{QNDsws(z)f-2qUp_wF zjXdFX{_#9Y037u+2iB6Uj3V;XbOQAsY#Pkmm!YzG#ea9*uX`%(EB`(bo2eyG`$?Cz zT&CAY?K?Qr^Y=~)488EBZ@zy!EFu0rTGLcaQKVHKA^a6?yaR2YJ>X{==Tq7aLvo z6=z#PWlj8_qhAoN)f#gi-7tgg3SJlQALCjALQj*g==HmYSpt zRWbV?#~bbM#^gUF?BfyQ2VoH`fOifAcF6cIZgi)(1`{6q^G^LBEPyLS_PpH8t(1puA&`NW7f9qRzMHIBKh*0L)8Nl(%zD)Zacs^H4|DM6t%Yd@Nh z&mNwG(%9(z)r`pdJa*?3$Etu1eir{>`TC<}|DghhNh-^e*j7n z`K)NP_vME(dcK0o*@6`%XH56%q!tp#VH>6}`^oIqxE;y+X#VGS9UPVxde8kwDoUl<@K+3s%*mk%yhTE-{{N|h02nyAUTAkwB1e|HejzQY@61d;3gZTD>x$Fojs#yB5$ znzl&v=)PWGi8NIAsJhvW)M$$qo_gKt)DEi3}Kw;=9kZZr{cY&@{3|NGrFr;`!yxPQ6<8XatWAb6)R;ptl4EbP?+VD>&AK>rzCS%yb|T$#-zj#V$HYa z8GZ#!LHbz~L92_cK3c@zFAJ`pYwHRskkTB8E&2x54+1QTeHtY< z;4Hx$U_AQ?pwn#yu-^5XGu=ze0>nfRLdgdU*Um>qcKWXIYaZp1NR>g$69~PX>*T_>IB6}g z#kg|Vfj z1&2_0-4R9lY&GeF0w?;(7!dC2w0=$;pY6xN3Q8dMfr@I9vw*lOsABVbdVFTeBx=`7 z0{#soRj1@rX`j)R9tD{B`L@4kF++2)owilfz4{M#+iVO+IzSyMzZU0Ij;cqr5yQ+F zy3UttVQPaWg$OQ_#Up>~H=6rNKJ$v~Y}at`xX1fReOZ8>LPu=b9YA6$g_Ar$+0V1N zAkm1ez#a|Ipw>dp=+GX`Nn6k+RqXe=&wepU>6&yicrrX{d*sR044eL%VfF-{ba4hG zX{WnV6pDFUzNa)99dIq}LG`>xJmH*;_D`qA<8>fdA1>ayg-E3OQ?#kYx0KIW`Y1}ym=LOeXWO@1)NGSfUSjtW=;FId3ZXO1tLWZ*OhPwoZsC&!Tj8KfirT`0REXPRFeujo9n909D9!G>y`lb&yPj=t|-U*3z*M4mS5< zo;4}u@(qexi+KBP{<-^RE4b-5XpG~RQU@X{*$O%@nytw>b{6(A-g|kmRD<;~^`2}Y zaUm>Rfdc=PB{+YD#JXdj)mT%}2KWUcQt=|d#NobP$HV4j^x!P z=m(wOs+B1m6*D!WSMt5zxaZudKIrqrEb;@-sk-%b=5*jMePMFO6;xKjT+xnhR0r6jZ4=Y8trddjU!QKNSW}kWqRw+gAouMq? zQMV2J{qg3L=Q32HapcI;v(& zWSH>VemK6L$az`_YmlM`T{(7>5hrZg>2BMqGps0cTMV=-&LIidWpdmw8C$OQ(NEj- zc3JVPKZw0t-v0DCcakh1Y1n@R)CD$_C?fl?e;hHc)?dk+(@&-XqI>|q>){s5$3$9! zY`jj77H%U(Xma35O=UrU<;6i1o{}_W`5bG|9Ql_WPpAG^5KQvQ?Jv#K>u!ll0QHv1@g+;;;b}`_@x$xpR3x-P0zE?59&8ezl2%P^5YKCTF4i{?F0Qkx%hT zlMI*=y$Jr?2>t6HrR0D~7|ub^Th4;iW)LZDP~dB?wSxFx?~Sn7U)MC_<-(u6Xt&lR zI9$OhuNR_S999p}p2318Zzc=ItK)g$mVUfSjaf^#jAV~j79HZ<_bojxhr*>E@?-(~ zCg}KH2R$Q(L~fF)TFlgoFgsPcJ%vE4J?!a;FyyS893TQ0GGakKB7?rS(zutCDd9it z{%%y_i!GO+3E0Es?3=@PGtv^Qm=OwKuh8R{9RfIEp!ZXsbY|cMW2^5GiO?>RgLMCN zaZ0DX+s}(4(RTzW1ZU_DV9tVC+q^lNmZjknyl=(vjj7n}5<+(J#th+P1M`RDE0zPza^rWkaimPA{#B%C}JPrv1vcy*+*Ddgd5hw~kqSE?Te52&yb5*K6< zgH38&Sj0V`ZY1qu>yEWt>>eE)`j(nO1X^L$EqwKLGy|cs$p8qm2EShj@D9T5daFYE zw?85&p!I!O?Ac^1`7*eo>HOEst+iji|IiW@)pe5Vk}I-oQWmTM_OssR)q%d|7@lsUm0d}}JY4MXzr)+S~*)9sU9E-rDhuqpYS<0OuYsQq{U zEGMHs`;B1W%kSjM0NdO12{fTiAb}iPi=Unr0{1H(o`q7XvCx3D+jF|%Ko&bi)InUA1a(?WhF z^yTkkeg!TOL>9)}NBg{-1$5fi?P!vR@nbx4$Ak!-9^5N5V6x2|M~Bj^Jd5OC%?=gp z4W-v#L;4+-Kgl0rvK=m9JDO`-;14yP%X;jEUpEi?Gx}2vD|NKLF#GPck8D8c?Y@}bu)>csd6l~(0mfNFm7-45epNQFY?bCg0c%)P0#xu)B9e9B& zIpNRysQu=8UGRN2>#0fG03(T6?mFd!B*>Sz2W{k{Rr~j|UE4esjTH$&6U&ZG;s^tN z8+Re^&_CL9d&cQ{kSF&mj$7Mg68^`gJImp8t$0|Y=&z4Hn?+M1vw6uDm)Nm_-rtAl z06zM)&`R9ioR^=DU2f}T&#>hAnA1&f4A^X04UhTs>E9{RRQ=DqT7n2=t)CybTCzP9 zawnvNTL91JhNtg~aGByO z!U}L_0NKdsuQ2hEi;Wl!iAYxMFS!sVA=49j;J ze2aYm_>Jd#u-JFBR|t3_(@5+M6xiY_WsI!LZJm$S-IKJK337wLW|x%Cr*i1aRJA$* zrZh9i=mU#y0FI=ZH?ij0lam(9iTn~+O|^pBJ{SXYo-5-vbRjyMyqm)g2gejw2fo8^ z1B`<)_?y5VC1eAPQ^2z67{!po#G=q&NW4^@B57C?E?n$QR3AkSP>sry(Niv=<+{<`8 z;4rQQ_P<(Mo?0{}+^=Zqd)F@Q_zruJvF;Gm+Z&f~iD z?%QYVM9H59!Zjo}fSv{J(+h2`eX1=@gK0SHk)S0&{|6R?P85wqdc2Lq*2gL>4*?P? zSu;h~tJjWx%DLHsVYDj``lq|OmZEUm~W!30{_b^s@KPMb}&i#AWXpfUiyz- zV5Q)kBrYGIq}+~95QOEG2$lfT&`yOADj=%lvKuqn1?%6_I8ay08$k}-IR z{M$m4_$E5Kon0hgC*HWpH0Ewx5Kyi5<4S3ODpKKu9cUSvQF1fKiik|HW<`tw%sPbQ zIK5=oV8Yka(Rqx560tqRC!U+{-R%? zwKAsaU&>l#8hNj(jv-3s(qh%#=jAl;gJZ9=xx@@F3sUd<9j_JtQzQS^Dd%wH@IjFo zv;I90LDk02ELq45sP(q2z|awsppCliY2e!l48E(7-xEW}zuS+E2l%SCb+Y}kK0NrX zW;ahbdFka$^;(b%*nGO4*f~`q_c-Xv0axbrgCl6!@et&Zj&~3clN>PL41Z$&$Ec+B z-@tJq1)0&^52Y72?iE5&xjREXfPM%pvGEWUycdU;6{Akx08ypfFNWHM7AG@)j8IBV zQ8&ijJvGglGR`5x0ae*PSYGjByUe}N5Z!YpbiFp+Z7%EvxxHW}-{-XQ!mcT_Kdj4r zL0-V?b>5wVHY+wl5$HCK#3zt@0p1We*e1NCk;S$ufk8oeS6ogR2wI=yho%+O=mzXg zIp^o~02ja8O-Wr&y_K-{H;&>|S&O^BNItciBR4?~V|B0wFd7`I@QYo(2S&A=+e(aJ zDR~?Phqhr$cz&Vv^*3gtU)v1tYpA+ysfc7xO#m#4Sj{)sBwgujG@2Wt_5Zb}4tNL7 z%y=Pyny{3kH#GeiEfh%!C?te+-P+?JcZ0yM&zhzg0k&FhrL9b1QvhaQSh2)sz}mIa zjtvO;OU9$nOYFPEq13Y;dgnXY9PtYONFI>JfKd3MCEDaUr?nSg!jJ-7{2o1s4A_+d zgz}zGJmi~de6VR;j%ElYuY#@V2f;k6Y*jwll#|Sryg&cOt*J`S$ISPm0G+n+j@`0U z_43x!vvNUW?ARw_+ZFy3^``lOr(G#_fatp@(?@4X{|O6vbw$gIg|G0lzn92#^~H9& z%{P*wxW5k40C7!3m+Q1r7b^IHO{ zSMX6mO&T3{IcEC!UsD9Yqkvlp0@>jrIRKf5sQ_TIvDn3!+XqdA0LB95_>FivBm7vi z#dmcZm(2hlHFo9Je3_?!u-DHlr3YQ}CgP5F%G$ilE1YO5VP|%mKx=U=mt4MNIH!>+ zuMYBU=RK5_C#Y9dRHVA=?SQwE#0 z7yu+Ka(Kez%V)V48#7SI|f z355hGnC|T~$sMq``m!WP2FkQSOS4ZLad%p;+*<2Q$)Gq}8Z>uKX=_em=5y$6Jogm_ zD}i6gPHrw|PF`BjfkO9bGnh$um>;oYCLUQP?l7-X^kS&dJkEsaJ)vYwG8#ln(z5l( zH6};VO-(DkqP!uKEx+0s+C-AmFVsE5-Pdn%KWpJ6H#Srweis1;DIb?`jLtq(of(zf z5KDuKpVp?SWquMO*EZbU&BTK3OA%`9j-=ne5UO0#yw#3JG6c3m5qr{5d4QC1`3pcA z7p&SZYubM~QNPyTc<+{p-nC{{*_?o$Grcq6fRxhzxeJid3|?ZZ@&ch%Tz_l(ehcSn z#{(DGRdfes2y6GxxMbhoA>qgyrOUhn*p842wj^z`=R$XV*xpuS?8fcRRWmyP(K<@Af(eMay%A&!AE5+>o;9gN?d4r}@L5+#ve zE?%y5-9~5qY*Q0neSNCT(D3vbi~BEnYX_wHDG^df|1kaWg-E3VUxjb(Nfm9a=z&zG zT4Z_74!KOO6>Yv0AgZP8sfnVWex|i#K*vakH2`~gRvju0n7#n&QUWGuXN`UxJ%~#f zcrUxdk9%8Q@#Xf^kIozB?K6ct5ljEvFLDq1lo- z#kKvuX(|8N^itB%SqAb?Ykxn1_2_x;c%}6^>JqB-lWzB2+W;-ZI;U#5@8pXD-$E@T zelt4|lazw`N6g0{?5~*tfa2!`gux4OyeXtW*G}vGH z32S)`E4ul_K3Q*&GF37GG;PP*fibmm&8(ItpQd*Vfnr!2?F~slg)wAHiCO%~L16(j zUXBoWtIo^{#&@$!_m5|pu9f+iIJ!^ z4)ePsX1gc+)=)2QvAJJq?eZtI3$^}XXa5c+IRwMF(kM8%@C>VKo)R};+9tf z-lsxXJT4ZXiFFApI9{*6=A2=QTZEtP%4&*ni#OcS+jdmyVZqxAc%p~AFzJ%_$?$xm zTcq<#z+*L2RyYZx#w9j%fcjD68sVUlkVsQ+bizpFAEH8Y@P#~}A`7-^jh;xM@q_tl z!=A|7#ZeF$lLS3ntK4SmaPGwC$CCr^tA;cT@0&3jrLwh`88_U;H;Hy9yPU11{fzW);(ah!lhxIv zMypq9LcqryoiF2Wn@9pd}Md?{;4e5~GS|$wb++_k!5!cS<<52mIS9CV9 z1VmcEHc*wuZs+++u-Q_fcgAmdK;8x{_Y9Rgs^G-@GxYnuqN}k?lLo`a938WHwend%Iw6)kvGXWdD z$|~-QWI?k_9p!sKbtp^|3P`D_rJc!Q`b^f& z60)r@bywoOXA$S30(o1s9phvs17!`ija2tTIhS8<7V4OV;PUS>&q+HbZ%)mAnyYXa z&ed{qK9WaJvVhR7({ab~R=zEbPGHLM69cAv#pG_17-ck9nPDBlXOzQQTGA99Z{oh5 zJmRJ1+r9;PoaSJ;o9TQtm5+{FCNS8xpVeA|Ad4ogmZ7{Wdg06bdn2?2^%h+tOuxt+v-GHX7@wj**{ zZ=UI|V;~Cg+w$cI!M+P=x^iHxOB~V=^C`@N{)n~vJFA1&+^$;u0w!BY^6!SS`5k_T`l@NGAg{8+52WPtD`E5K|kqpywDdnH$=``P%4 zy@cbR2zxZ&$FN|+0&Md$_1#J^|fU?u6cRd{w|sw@fc zxD*H3H!H(U^eLUTJ+}(!&}dY7MkL;2yF`C~n)kA3mL3;NXw+~*YU|?;jgJr*19Ycb zPBq-*l@SOs$(*M^RcLq;n$IzE zFC>6wRBKE!0dfO;PbXr!Px(8d`FLHU^9TJ=*BmX_B=#FHTQGs5d3og1cS~4|Tevs`LEX!0t+9i~pS?Gvl;QiMUP2HEDmo zU6#Y^bKZ+}H12BwKECO7!%aYJf35avzLQ|!2p&ny6<7iBil0am7ZLm_CsXcrnlA?zKopxwiqb9m%g zqz&-po_z{*9eaDYlnE0qaDU*pTExcObN$B2Z-GQ;fg9q`Q?b1NX6^*HWL$jW&UgNT z;5|~Ev50V)v#)F@oCUzw`kY^h8CQY`S^IL7P?v|rV_TYhvMow@x#lK=gd)~E<2l%y zSq|MaFz$KZFmv-bHu*9I#gUzH49ZxJKOvCG`6|K`v>gq?9R+L=JT#QVwo)Vf|7Hn)do$rf0=v{ARFtVrbcNz zjzHqtnV-VUH!1_cKfyoUDcic1DJJQI{5HE#5c%F~JC~lTkNg%&g0;F2STndqJT1l{qg%0T^KoX%5_9$+vTIqOg?lR`a#3lpYltG+q@t?WNli-Bcm1A|lt0YO#8PtKT~x5GZc?wZV(<&culjq)2<|&TG1p zJOWiBQl(cW1pB?O^z`T%;=qc^u=pO4N@v;2&ue64SMPbThOb}9*ojdul*(_NpZI)I zVBP)xTJklMhIbIFKRU4Po+Fx~S)bwHC3$w#P5g?T_QQL8*)3x5Ur zY-7xS_+zALR26l+@9gsVQB0EZoBai1rmmYwqpGH6S`>w0$-zuyt zNKddn`Gh#g`(8!qJCS;kV#KV3Ao@We*61KSg>Rwc+G8#KNq*HB*quX7JowK1&9U2A z_}G8m*@7a-D55swY8T^&J@A{=>1Elx1^xy>y&J5Vuyfp5>G z9AVZXdH(L(H%VC0px+$rYGVh7*B_k69*Rl#b$**TSE4qc^R0SUnMAB*9;BE&Z?ce( zPS#hZ$g%`e{Um}|2rU%5bCt%2*`@hTn={TFEW+Dl$DN-bR%_*?yZOPjy^=|fRBw?K zHlkX}Bi8@JB3#DQ{P0{@{w8`4)%xbuNzZM^BI7y`T~8pZXC8r> z8-2azHM;nefxv_3urbT?WwcO#7JG^5--JcP=RsU>qG+z1P=+F0u=3d zkJpH*PAdZl+OL`d79k5ce5~8d$E_S7d{SG7{f|@AdLu!BR26Q0XQv*oRZoH5q>|ob z=;m2EMZFhpf9}dIQCAYHd0(W)atI(Hwmp6Nz>@s9M7fwmxq31x&g~z^uW0CXG%9|! zGCf{hU+Id6djgYmU3_JY(O!AOyfQ$Eb0tcBO?ddcbHcBJNKY?phi|;St#ZmTM4^O$ zpOaq=D{>$D;az29h)fDw{Jm-50YW?5RcaKR^`*HoS@!%yD)HnZaRM`7v-PM;-Z|n0FspCxetl@bVG>&J}L(k5k%~A-U z4tuA*z5#)ifCTiC)6cu zw)>E~we~f3&k2;T%HtRGwP9~X9Tleru8LOuaTmFTN7jIJfHLK$^wv}tf=XH2X%h-( zBZR0i!^K|#Pg8$-@@Axk?DOR&te%k25kTlG1CTAQTz z%&xym6)Nzy-S}tXR&W6*R@%lbJ?OWiUjFH68igF?V@txhiJJiA@1RF*aa$hj1hOcC zh1wvsndLuod@U^(teo2cY9J0R3Yboq}yZUN**}vu9e)bZ>Gu#HVDEB9CO}_LX zK+0&+t9lU5MAzOgf!uuIlEO!CmB$E?s+vB)BTtzK%nCDC+D9hEDE53&O@>E z6?38&e?_=4QycB-y4dt;fnOvu4q#t5o!$&)Xq&A{j?f08yAzQHn0IBf{=D6A87^5! ze>XJFTHT;5_>!XqO(n{^2joE_U1|{6_g5^p?n#$_C zn%u+2-Xib z=v!SkH$-n^h$pepdqHKE572Qd-HG5CI$nrJDZDnlrRT`zU*BsEoc4Y#z$0G0R&OE^ z00*ISIzqU+k2;Za3&RFLTr2Dt#j#Tl{@tokzu{5ii#+)@$QCN`5uopP3>4Dne!YA3 zu1{C^+LZ=*XwXch2^_rvR%a)MtO9E~yNo|Ju5wl75r*~<0T_k9fGleR@gGdu%R}qG zSC7|Nn&P7fk?P!{S`%o&*cn^q5iM4tAQgF@F+gU{j7$jO$1X!(7N%-J{=j9Ngl(@P zCu|79bvi>|C%*$@tm~(M)4nyd&_N9h{uG(H9`kqqF{{wbphc*R4%1bhLU)u@D?TF4 zp=0~6__bC64w>;M261|fdHjdN!>Ki}To5}REgu#4?^B3Pg^8w%Nb2Hc&f6ZhOL(j* zr9~XpgWfo#O_|iXm|fnvhzb5vgwXtW4ha4UM&7#K%WI3RKVFg0U&uxKp_b7P z(W)}kF{GHXYqpkmX^!_@BJr9y_Nb6<5D?it3*|;-!?je;m(B3XCh>K@}K`x z00~Y~4?L)2Ka}Tj$ht@NYUfRQ&~}#I_&u7#>X{^KNUtFZU2?-H%ZYQeh{2Ig%=kM%L zRWw!EXZ>xr>WTL#gV0F8maHJPUM@M~4F+QB+GVi);+~=B<4*sZ@*}M}E2|{HM5T%? zMqTE!o&agkR|Ywf3pdtrGS9Xd7~yeUC*_Qt!vpYVb&mCX?yC5@XzrZ%r4E-&w;^J1 zm~)U$d8F)y?A;S9k>{q(EB^xiv;9Rp!w)vSiu0)F>%~FoE@<8bK7yep@zzwB*Eq49 zb=W&_vD@U?rmXt*H=aQ8jee8MUZSf0dFuZ#=5AIY3*WZ_gAnh$i$b3mL@L=ogMAo` zOJsUN>9rggYVwItl|@pg5Hude(=(uZk2t*U?&B(s5!d?^&5aLCnm9J1TS42kL$;F) zR*_ZZY{m>U?qj{>qUgYKUrWEdc3>2JePJsO;`-U4|A9Kgo`<(8Uj5C5fYjR0(#u;F zJZI<8yF$dloGiDViUzh)@0@%>B?hX#VwQ@Bj6YG&XF`oXEku&MFs>z@>OPwgAh@{_ zW8p&mC9)2kA0qK>11%zu@!op00@!Vfggjo96A@eia^LfLOa1Pm7=a9t z+_f+5l@{qfKa;33inckucu(Ll^7Zd=n%9|+y&eHtCw;B^%wf*ci*vQ)?yFnE0|tl3 z5SqtGsBP)5JR{wVhb~_;f;noBI&7#!339q3ed(cwyBmZISEseMm`b+LB{`Or(>JMM zNHf)v)5oCIFYBfl&;bDqqDi!vRrfOa#a5GBnTSx!o?D3`Rjtec8Qb31guuef}^q+`XT zdD`)JD&BiZ*YJ9+>AaggsV+PpLe{iaz4YAOAXJ`4%RP&;Z&7l>J?A8|{UgYzi=;*? zT?k`#Jw9eDMn*7tpyIx_WQ;@qg1w3VgcJ2gkC2 zeXkSNXEcx@W7FS8)@c64?r)L}n7$5=K<%9Ad%u zwVo#F!djNV^|zZgvWLe`*$J$Hxe^R*A2?k-6Rpel8QX07L69;z60_og2P<6sJ-bX)*> zgdgi7@m!*u`Y5ozR>|Z1v9F&ibwxlu-TSi<)Bd}GV3!YCABfe3%aL^xn|@j<&#?=F z3Z!v^3^dgO*$x_2eR9XnJl=O6t@_ZQbHKP?3iZL16s9Ly9LhS^whtRv0fKH zWiC-@lX=oD0>+f%y&^p551G0?5`i`a2fgw8k$e$scrLtuWXoYFMP#=tAuxDm)Ffn0 zPhtqg5)o}gxc_XwGum%xk}8w;@8{DwiEw90Xjh+svB1O5dXVc}!ejqbcVEH69*2xp86pyn+_1X-rCtmgmGP zwkzf=C1ZA)Mb5lQQF>SpFfs&y+cnwfra@6RIpa=k-xR?CY6ha%F{t$ivhh&1q6uObDn zEW>hQHHqJ(`n-(eqBJi@mE3%Up}b?0)`%{Y=|M%FL{5aNeF^s=DgC)6Obh9xw_~N} zWOq%J)|i*S+u4_oF@xR{Eb6A{xi3bJDZp0qEcMdP>KeJ0?9Me*5WIXQkyUcZE~QoS zg=ASiUO&lf4gg0P5ayFG3_TXHf7nG&s4(`lu#nz_{P@mM6)MXMc20wf`%| zjVfgKx0(=%fh&e`k8KdV9fjFKAd?}SL6}_$)J(A2aSJ~=GFXLiQgvZR(T}Rwtsh?I z-x=*icLAQx&%JE<4=daTlK+BSkp?Ahx7-E@oaSs(H}j+#c%{qFE}i^;Cz$=yYTgc= zr>yxxqz&}h$S8Zf;V%&#oKoq5nR{eAOK}l ztN_1{RZzT*)!E&;Wgb~OWZTb3tv?!cg%VTo{zon(!0NYci|Nk@5?}(Ux8Gk)+W)pX z{M;ya>`lTZ$Tv0{oGr!1`&mRkNLc?UAG|&42Yifs^%bfl*1vpk$0Yk9=i5n39SS{y zV;d@Qs_h;4_Jo2ePaDs*D`neU{~Qk&=nH6LFOqI(?f|C-i_$>fDgfv4PnFtsY# zb8G%+LWi=i!Ig&isN=O{s~OFaH4s0f;beTMqLwxIIbWD2Wg0V~hwU=`eFJriPcwCA zcWSSHB?*)A2DZJ{ngx|wMS@b4Xs{u}ztHzp1}fidx;^1h(E#fWWyb`ByH92)mwq0_ z#%xxNg1Y)hUSpyQE+~KD>l55knBYD^BTU_UZty-7^x6p&&I4<-N<3%}(+$ps4=H>m zC_CF)D9n^?H<&HYv1A=m1cUd3%zo)DJNc*twj6xK91=;{n@xkn$wTy`A)y}#{|vLg z@1>~98$zS72}MU0#@3p?7k>9oYF=KY!?PQ_U4|0PZ^ojVepKT38yF232KXM(5#~k(kauC!D|Ub4y+f z{{(VHcJIGDQ~mWx@*;m<&9=4fstZ!Qs8k>Ou&{O}n`}Y!UpCCE6B5jPiHHKrzPiAX zh9q)w-%F)CjBTt8gg&u0Yk@#6BV2^7;s2rTOc1S-g$0L03r_Wfh_-WjUW`03YO8>)Y| zE4m#|;UN=?dT~4SzHYR00J15C3181XI9BaSTdw+ugAQg>&jM(I4#!Ov8QPjjw<(1E zoW!Ok^!dZAG7UnOPfc#U@Bq)7N4=n?le4@ zNtct<&|elI*d}*ed%J-!L)io+p&sEwKr%~CAP{wLeP5HC?q9*$d@}x5y8ujSdfzES z<|M`giYfDpdoq~nuF``~09rYjtzF%!m;m?|nc>8iA~)Bhb6}s6lZ!gUePd|`V z7TVjJjWK!q?hpCoUY{;5ytXe+K@o2fxh!^B}R&e$^BJ7wKLv(oVR365B5?y`hkt#fy*! zwL+8FGjh&OJKmAHpNa{Nj_aSf79-vS9c6JV`Fh=E=SW=ofHdIHki(be2haQ_WkCwi zC=F^3(A#3E5#OGW;(`syRywfWC-u859aW;jJ}azaeM01p=)V>z#2rWtQV3enW0_V;3FLJcXCS%C2dQX1`3Umao}KL0WG1@{|w; zyb)L1obIGb+LjRD4|zOFau~~vFIsE3?h$EUJI(ra#`fmd$^Hb|a&V1v1NPjr`j0{h zpqTmYeqG!9i%s^tz4k-#qVt2RM~?xM$6#xH)FTLP0r>_-k52kHAuWKlagfP}RvDaa z7gDlH*U}d-R9S2oLuuNk-#GX^T2r|;+RHKPYAUS7%dsWi|9(8a%$}Zw_Umf{9NiDP z?y6zk9s&*aqt!Pj9-0r;?y2Z0-uJjqcRMqie{tf13S8xX4icw?ZAF%!eR^Js4s3toe#p^uFx=>ORCShCfw9}G z95EyE4^?n=$(~iDl*}H7Oc_4eAaS8zu=#Y7d?!`0W;a^+`uXjEP%afFm!Z1VUP6o% z!>TUDXUT*#akA*btjhjr^o(@tp2bh+^jFg>F`5kHdo4~c6;tJjtVm083@Oi*At^O(W^=|*y&29oVle42hgZ;NRODQHYsYr zO%+rAO~WSWW}RZ+UrI~UKhVI?EIc}PFn!x82IBQ%K4Kld8n>DBw*7Z5>* z%UdHaP?4=3)o`IxN}|Ib0a;~s4n~)hX06zrV~243b+DPS@7u`gDWnfn$s6q=_D~leo>&p*@x-mL5n}t z(Y39UnZf#*2zMKJ2*{48x}Q9zKJw;lbMe>nuIim+aT~Z2=|~aD`V(`nmsL!tjPNGO z$FMqEQHuS+>;Ez^m@~xs4g?1zCD{oEBi0b^$^rjmr_Q?~o|d~3vMr~ry{YlYz6ftw zw6_oHd$U{m(vR`(_kZ5Yq&cZoTQ$^jL9T_(u5WI%vu`&}(4kW|_dfvXm3O~tiW5QG zNf*-WHOFUy737~5X!}ra$=Fbb$oQP>)n=bTOT-tt?k+O#=D=9lf|~zEG)f%Pb$mzLl$giFWY6`%^RUgo07W z>C2Pbg&w#m8Z||w-k5W>%Nm6!O2Uq!5jXgtGaswR+Q}?(7yE*lL04&DWce&t7u#e@ zMI|$v=6bpW(a3S~=Nj=*(?t8xhYX4QMV->!Ix_lZ zn84O4lVR);^z%oePej&j3AI>An?lQyb~ApCWa5UD;ZTqFGV>r$+4m?R^WWv~K};lq z*hQ-?=b9L^{rH+y=a35h&<0U4O>pHg4_UtQEmy&fI5OAT6T|eyz?MFnt(M9kowbn{7&4)B+p;|@ONA#lCTrSt^B-^l`k21wRBDTj6IoA)`+zLTGIo%*=n^=3Zr^;NQ6jv|MC> z$>)lZK-tmgDds+;{F1qf9z&SUfI+qYbtf32$nN!P+Uog@1IWx4RF*-e(Z;=NVRaE7ca;o!_urj&1jmmnPK%VUnkC`#B%0 zh58OY!N3*|)z5Qa%CE5a9SI;uY0j5Zk9w`H1hlWL4#Hf4k%tsymBSGPO5bQ)%In%U zd@MMq6B!rzXadO?%Y>)P1W~qyNnv|RuNmRykFH!T_!GMICRUA~U(Vx&b9Dl6OJ^@bDg%xP*Z%?grC;^> zedw)zIDHp11Sr6B6K4B-1fQZ8r<3MMOLobC z^9mfd8nrYhG2GI*Xje$Q*k=v;21n-&fB8t5HFBV zP8#8*v}ji!7#3&+s?`apK(K3VV28?v#US}nHv!C5CITD8!cY->q>MFuug3drac2)B zUo*JZfN;^4GqQovjq9okP7jE}bjzf%kw)K>MsES{h&Pq6(6b=&!`%Mx9-;I}Nu!LA zYn@AIX{5)*aqr;5xw&iuDO33q3fP@KTPI9?sK>7TgQWS_dOgD5$!7Xguo)C(ooEVZ zkR8p)Sm5*&y;{)8PSyT*`vv&|zRFPW6UDbTnDH}IVsa%dYuIdVDAgUH$;0dP`ds!9|1Kg$>dC!ahV6YFxUM<8;zW6ta z7SmV0r}2R+N0{=x4LsHbq7=w_p4OXd?hMgdS5*vF)vK!E|3H7Te3w2AdiAk-DpUuD zA!bjc0!@Msg@4FPE-|wE8rUX1r<7NF*U%74sz#FxLv$rYVF?EIsep>N>Ny-R*sGI! zWtYqL&v(mOi)>@UoE~NinxB`?cTnCO{YMDcwzs?wU+9xp0b|wOk0Wvw>gcYDHR84+ zf!|VQ&--=3j!yw6hUcHiF+&~+k z-I;X2016C)X`4V&K2_BjnufHYRBVxbJ|_9Vafa8I96M9d$DclvRBd(a;Q&LY^55^# zu@L%c%vggq6TmUn{=>ASkjlJC|82z9$T#CutQ?=sm#lpkT0vkqNpn#7Gp#0^_;c&~ zU!3F)`mm)7X4Jmp@C;A-qh|?39Z?D^>2pEjx{5&Lc9VKg!sa^Yz|)3}oh3Z4znL%# z|Jynd-KDV5C-YcqnXWfTQygobj0$wW^C0DIz|}g7+38Km_K_1KTpB`r8$f{wI=B5y zUaz>`ikx0B8gC_^>bhL~)=__dS64NA&GPLLG-{IA(_D#gUkk7gK%Nh3JYiRc`&?LdD=ew zP4vpDH5w&jM#u}iJ4%jYE!Gn^J__L&C@Rkjc-Tt_s87;i{3&g`~e+>V*tZ;}AA zbeRQh9p%6f%uCXRR@m%7V}B}~s?8CS=nN4BiWJTayeD#NyLbBgLVEFAallXF2B!rd zW$*$LyWx7UNE`2qep7uNmTBRrJzMom?t1Q_JzdXkld=zb0nq2QoJ#KtP8Pqb5iU0HUOZv@}7OC7P^nJ3J0Dc!^i zwxd4V*&6I~7jhy-LN))ARjCgVQvxLICwL zQ26_C9bQ|s9*0E$kVVueCaU66yr!UX1K-l?mV1{#?%loZvQ|0U_2WSIaxy49|<; z_36=)R)IA0J>)}2qX68LOY&d`15E)R{Rxjkb5Mpu=2X{WaQiCfFhmNz{guM9$+~Ic{H*bB?_zK+fvDb2cQ0LgN4ZR1DvZvAMp$L=+qnI|H4#$)JqELG=DYS)s}=wK z-GYTZ0?36Tw}FgHO_fX_m@{wBC{`2^JaeV;^KLhaud}4}c5VRDt&i{h+>Axp1tbg< z)K;zB={{ixH*&_U6|eH^g<+w>m&>IUK3a1r5&m9MGFH$(8mPo>g7;6p}@5pXN{CpK?)Ib>t@ z%NYT=;+wT7MsjQ&Ky!=MLU<|U=>v@>_CQM@7Z%HVJ1;4j*TnfG`slob_p~`CM@wXH z$x%JZdS+-YX*KIAPF^&p*mPnje}Wc83@P!%8uUH1!Nc^;ruR3L4TCl%r5ifI@Y4@fe97Z zvM;c?`v;m7s69g=Jil{GMwtO3eCnT~N)R4I21q^EB19sI6_G*oYiVK2hAk5vL8M@- z{6G;~eHAz0PRP1ggSr<+w}pV$kxZVTw!Betp||bAiIH`Srs;mm;pDRg7@^dg@Bb|p zBPu$6q&;y^bhI7^77j@NA+D;oh_ZYSm*^r_3Y(2iG?+cmKM(9K!-XKfbL7k(UVo$s z1d0K6@<4C^r3SzVIK1u@R8F6-PzP&$JdkR9C%N-?{KZwRrbT2<&~W#LO^hT z6w}TB{X<|3k_@YZs?O^85DY)wg9CapT96q=E%g_Y*dfe4LMH(AnZQIHtfZ?(QdJCA z(fWhl{f+7}+3RKMe3|8m@|7EhjIZbnz~qiMJE$=nRDU)YBZGU)ix_0$C}XpDetG46 z;npzGD1SM4=BTf1ET#;G<;A8Lhor3qh-djpQ$VF$AtAi~G1DMz%oTe`V=kd&`$-$~ zXYoAlCv?3i0}$=kx7vzA$x=){?9+rgpE{=6sNt>sY@fb_P4q`+)6}HX^%6i^F*=!E zDL;a>2pXWAO(D62I46C*91`E<>6~f>Fy>OyyPe=>-qGeIK^hQ0cWff{RR$T=W-k#g z8TgkWuzGof35>D7JGY#7^87|9fJBr?g;M$=?4%H-f9fH&7uv0DFhZ&gU;yMu8TOW0 z2g1YvShe#9LIex1iS+>yyx$|-wB*D2yE8(bGUGm;jeUFS$c7$isBwqQ6PO_B@_p`n zZlb%+BkCr6HeKwkqTxddPT}7BuUyTJ)}^c^7{1!JYnk5sv3B=athW+!JQzvtTbT$E z+J9Wesr%zmr>^Kh$rTHgLNdjJ7De?u8bvUyn4QTPDW^`2+_aA0e|mkfr2kEmgL)<6TcRq$HN7$V9YlJ6#tUKy9zZxQtUBTWmnGZgp4fl zJ->-(AKJ7zzY2V9`5)V*&EA8eq~>+Y+V^*#IE72KV6K4hgNL{$tq*wRCldD1{tV{V?S1RdQU-;%O;^e~V6*m$k)=@OaS@FTBxg`! zr^xAmb=TFQkJvRjiS}kozodvbG<%l@p5br6r5AMJ_%s37yZIU9zEvX6Gz$gXt#3N^ zHIYDI=pbc_Nx9QXpg+LI$V!978WZ{07Tt?+xTe9 z*EV%RiCURLn`9_rSqs?ztbhAy!S`xAJ!}6v2?c0|+8&lQxKan|Na6*eQNh@b0dlJ% zc0SJ1a{2ZjnP2!3PV4LqwQmzia3!_MXAIOJUemI!t#6mxnwWR7$1gRNSQO}J*3M6# zI?=%IBgo|(^fbWm$)>_bcQ{++n8(mI;$)m51YE+kfRf7!R_?REK0yP{oT%bD-Ta-B z^lntV2(fY0hVQ>DPF!+q=|<-sQJ6^307Q6VFcP{6Vi8rR39y?pm>zqaT zX*b0=A^5MX{Z}V)L(KIBB6zs>6E5hh`pAA1xF!raLOFc|@9q!%^MU9g%%8^UK=0vP-2 zV=jPeXpki4N_o#@O~-v#s+%1HEHa!t+#fzv(sSM+R2-)cbTFNcpiA-eJXJcMqBWo) z(R%Elg2-v)Aq0J@?N``IOZ=lfEvgrnJ}BGpyi|@@>>ff#y0m!Kql0>W3{w-Xh# zmh2UWYN^fWTe1QZSFUnHld2&joIs-W0v%sYgN!@$W090Q&Zv-t>Z2$6F2T0qK4XUE z6fEXFq#6Is(CIFIdDfnSHF>OV614C`USiA}*Q>1AhF~+&+k(JJfufv-N&padPJA^g z%GfJmgaNd`U0kcyDXGKuW+IsIzhtJ8@+=u^qV*=7d+R6+Ii_9Ao&DU>i{R>uAKbUx zqQrkQ>=TU8un4fM7=2~+MJbKeDse(XnY6Hs(wbZ$pOirV0Rwxmm+)QIg2hzRb?fWz ztg7ztg&dB68zbfX`It~g#*|W=?GF>x_~An8)}DS&`Sgz9!?}Vr-5=u$QqeupJ~xZ_ zUDqG&YK#{S!dKDK!cNHio4H$jAG~F98eROC54^6(2Na%ceI*Ln`_1vg zCkeX1iFCJ^-B0u6=dZn%OM?Y6oI}OnvO+e%(YhKsFMa5ie@Z5oGg- z#IHEilqrG*nu_pkkQVUw(0=vsYb!_7KW~Wio?`THsn4M5wL-uf!-{m8C)A6}S1+>Y zb=%Kcz2FtMMdhp9oDo1FOV^z6@SF}6b4K#HVCa*$J5!>;>d%Pp+)%KX-@nzI9n8^- zn-0NnVyMyIg>HK*opNTXg71g#f9`+tKcnyLj|9FmSG`&@*r&IbH+T1{8Uax%6e#Wm zs@yyq{wVD{j&$yOx-|MLI`Lv;pvX8o2LgzMA-xmzDK>B3UPfpJDggke5CKr~x)T6w zH{3lw{@7q)f@WXIVkaCH6n@7gOY`8@IK>pxVqRaHt6x2+ChA^3a}rv(SQ<=9wQ5nM zB3nB9A=R;;Hu1vPTHRN|*?D*(TAr%*=OA$KJuSzK?TgXf=JqA^r>|~Qbt>m#eg?4A ztL+(_m4#6z^6#>kBUoVbmt)%QC;s&;sh{(KQ%{-T<3QL|d;h~pk`2>W0kszFl2^q$ zM-$(NYvEIA2+AbgU>O^u9CkRmh++i$$p+Z>72UpQ+(Q7)_5D=uN>ZrY`*X$j!{3c} zJhy)s_ow8>`P*FcPM)K7X0c|OU%x`kvxuH&CANk@BYgJY5r0WmK_t?RhzA5?c?$(@ zU8;PbW}%$*9`^+==Ua)x;K&>RtU^%r7=)8sos)v#MiU4-`#-$j+H7poConI*Tubb( z%m^}nLE7-4FS0a3cjzG{wZ{utM$8lSfn8_qR2Yf&1IMYIU*0Hx&bj>=K4b<9GCJ18 z>=|De1?x{Lu~}ogJZ@n27hF!)-TY4#(S^U3+UEy9bXl1O3Zf|6Y{>&omz0)2Ip#C1 z`eC2$`|nG%B@YUX-;9E#xhI73*fTD@$ei9C zm#!M|y0*U*chP?pUlRT9*dpvpj<9|AO-+^k9hsgC8~o3MI$q8Dm;GTJq6Bobxued> z-_#_4T*6u}wfX+&3Mmp*ikl|}0fyr5I(J+>fhe6C?;mR8QX-xE-lbJUBv|C= zwvASM`eQ9#k@|+3U=;Css<n?Dpm0T*+_I)Hf+=Cmx% zuK?O_>XKQo!mn9#To4HY2m<%Tn94UmpTcV`p}YP!ESGcDJHKki{*I^^w*{^ei$1-1 z=9)orq8+t#^?W#SORb}+XFjwITdL+pt>0#g0aPtR&EulVxz>AH2+gUr1)Uy|V5DIC zMy1)lNa_RaYXnW3`-KvxqW8^e9<8rJ`}CuPQ2WQEc?<<1N+GXv3LeS?Cbw56aa27Y zwzs+V^E*l!a%B;=SHqq#%G{+}*n)(S^~oVA#FOmh&&mE?IwgXO$SHvvOnU*C+j zMgJI0Qv{`DirZYf9N^7GR!$p;uYOyp1oqa$7gelJOw19J0Ey?C$|buH=aNYW=8G`0 zhG-- z+w}rS_p+l%wHGkjPPc<=%4kHn;PKj&3vOgVWBq4N_Heg~o^!+_4BVekgLLeD2JtQe z{p?DAb2rsS^iKDg$Vy`|^HQ+Gf5_rgjA7yHirl~5?+)Hy<_5j|cD!s$z1Vvx;bDcg zxAw%f7qUm9WgLIt%&Cd#!=LJzzJcVef{Mz%M-3JsDv|_Z(T}exHHk6TjaGG(D^t(7 z(>i5I#*we`jLfrX(D|Gr-uGfHhDo~6ZxD=kPQp4BeT?Z|26T0ZHjztDM=cB=j_p{G zDtv5JasOg@c>JAIr`&`TEs!uYkW={jVm3ny;jQU@ZzQY|0 zpuQ3LGA{~Q7g0!6ZC1+fU%2h{V+(I_uH`#`;+tt(_x-C^%^3=_54Lu${U12}Dig#$ z+c3SpNQMG&-Fosg%x^Zs$2>SesFuXe0syZojNRl|`#dp)cTmeQ6hLxVwq$di&`=W5 z-|nwdX&0RGfMi?}sEX>~=-IU%rrt#%+)>-LaV|@JMFJ)IiLYX7c~N0Ynd3ft)gVP% zG_!`5BPh6M1bz=XG;x2C`O^3Vdwb*G;$R3Q1yDl2T!KZkwUSU+JRMc&D6Bs6ARPTp zZFYulG(9YByk^jwb9c6eBvPXsfE1Nri_5-Kb*R9bgm3fTuVWtxf7Ay1PWO3xG}tTzy)_uCSjaYdTuSG@cMh@Cy6+wU=wrbclpGCiVXyR1Q7Dm!*B#RP{t{}WO^i?db5Z64Jtj8UisE+E%8 zJr-owTrqj?%{qfd}uxxywGENpZ9!NHHac$Q8+<#HP`mZ>QA zrL%Xe80(K=h=0YJq(}dyEe2PX#|@)#%;0c4KBdbZNm5`zAB!uox@UCTN#X1dv>}21 z$F@wE99|bi__!#_@^w%QyfbM2X3@N1@m4v{tUvBZW*=T)pxpj&y=Gpwvk~$4Qvszr zz)vX#Fhcl`FIY&eO+ahL#G>Vj zC)Iz^XZ}}3E!C(oyfmPFms%%of*kYV5s}MKaICXBZj&+k^1r8)W?~eQK{k2U!*gkM4p=9uG&pq!##jME>L27~8)i5BESeDDWpf$l3VR%K^} zA7yxA1MM&Co|;%X&Kj7LegNgv3|~I78#$9@Xj1&RU6}SZvbc=$sl$8%YjD(qd;tJv z6(!Y{L-`QpG=kM*vV;j(_xh2XkVLa$ln=6b5clox<>B?m4#C$i7)bm~e%^KXKS9fa{UiWPKy`QnjNW}$KoF9?-4-8a9alyc z81zdZ`tVc2U2p=YyNP=`fmYn83~9|v>7VAjzyCE^S~fcX?C`!(8uiz8E_Hrd8i1>m zu}>}0r4~-{YD84Lm``6o5&%S;A0Vy@ICA!&V*-FY#tecQrzeTvU;_aT0DN3l)BAIQ zdoP{?pgjCS(cdEeYkEIA7e#X8@sE}|;qw~~f=yF>2{r*NA=sKIiOUn~Y1SrhD^y@f z-w4d>oPxP+W#}vfGq_6i9E?>8ux+9Pwv6<`_>|mF&lX}sgAsAXYz3v!U}hkqfHXe< zE4NP?&PyeHlotiD35e(E;PHXiZG#WIVl?3!gG0{=Z-qkN98e2@^0ohW-f{=fnjdE0 zeP9t<7u3Pz!<5GJ3m5?nIX(}*lsLFeVeF31%x%or+m-V_F!*`M5HbP4ns=>w>h17XbG_wLKWD$K7b?F z9PdX?Kn^ncX@)<8;2p&EwX_&0)cv3u;16T7;pz>CFybm0jhbQvj13W{HD6;@ppdJ> z;fuGxNs9;I#D&AKZ*MVpMl94yqwUKSh{+5$jTYc9n`Xmp&o6?9H!Oj=CyiU!FsSVf z5dK4PG*AK5)KW8D%uU!7`%xN&3j~ehYxnJhuflsTIhyI$4`}cE!MiuWDf^Tl9!U7? z?9<=LI6TOee}ff(hyJz->O;XYX}Rt?^c`vQBQV>P#<;z@7nlhcKrwZ7^1jYkQIbLx zyjL#y;K1#WA!L&P-n#OF(opSZQ{(kd^)AXkSstY~aT|_<+FoTO{QfBsoj^zc1VYPx zC{5d>0KS^3@&%Cg5Sv%uE~^48Y}*((6NTgbHqqbE`)#6s2ue=!eS(M|muY7`4?h}Q z48I#(0mWJix}QM}uo(JcJekBVc&h#9Z-=w@+yMWyY!KS=YUUPbU`Dh(41;wUMOzCg zjRZ5^SQ`yZIB?x#i{R(0_JvU4w>_d9h&Bs&?Q8^zJKS!k8VE|GKNe5@Z{M`UsIceKW-nWt!VA7*8AE! zHct!$#3O+=`aZezu@LXM4}C897$w#_i14v1uvlSN%^<`Zj3h|`MqCzEK;7EWA6PFH z_gCJ3;gDaF=%1kPJ0|g)=^zCJArQ?++TtZ{plchWc{M3 z5T*)XAxOff5?3Z6J|X}*fN+k&7ZzdZ37?m4aQlF1(8TwcU^H)D8?3$mJSY~cu;-CK zhjQ76GY%VuufM^V1!#oUCG(;8_k+E_58M)5**G31jJb(kOG7aARpvsdJl%BZB`X9?(vt@K-w!TZaXz2sqA&m#0S^IUD};i{r(I zz4=}D!0mSq!sp+#1b{@2t{rH@IzDY)~3^)e?zg~pWb44gDFvjUMi@z=j zn4^Os;fpvT+>c9-wn2TwvbwiT1)%;jOzM*?IorvppF^s0b@f{NGXE*+s6D& z(cRSP696D~-z*XduAxr_l+;D*P$ z;d6gH0z9VTkQnhP`Y8|`poE;Q`muq6DSWs2V15n;6gs;Lo-nsy;y>f5S zh(G>$KYZk~YvIoydJY!0sWRw~s@Kdqc^R}WV(mdolK6|^QsDIo&u-;6ix%#vMRe?v zL?6a;Y`nJ}XvMOoV~l$J?F&BDzbO8t$swBxaKXx>V50V!gKpaV27bNzO-ui@b0fUU zaZwIZ4d9mo$R*O{@&SjfSEKu`;wGR20gvaFRpCBtEF;zs1hS|C@;Jp;HmZ?``>PQM z1sp1^&EpSA0@`FHd>>F808AGI@b?UPIoMt;z^E5ESM=sWs;$cAxhvqZk zh}?IO;FW{<`}wX(1-Wu^aSTWuyTe+He3nxj@r^Gogp1xhTU6A};X1tHtViIMi#I{E zYm+^@`EObRZd*+PKv`P~yguoOA!ZSLTOJ0%i*!VrXcXE#xmz(~rW1F!tL~_WScLx{ z3qI3-DKrr>0l>qT9JGJyjvEWEON=#jm5hxaMMUn%JIEZ5qzlH0+ z5Fh|3Pkr=(#t9yY{KQgLn_3VNysj2#K!D5R25UJw?T(nA?v?6dMW9N2H~ zmhdC5{rr<~?xKOXc?CV@v^uch++M-$sob{@F9lvNIU%>U;*qre2TK=HO(js?gAoW2 zR)-FhR#~J!t%C%iM&b2)T)Fl4&_u`t0DnE_u(_SZfwvrf^R{pE>qpO6c12}^UR#<9 zh)2!tRMUHfbXXx_N6WX+V2-q6CX%Stia~(lT$wi?$|1>E`Md76Vzl0BeWp}=>x z!V7Xnp`z5YPY!8iRnX{7Gpb{;p683psTLX(09uDQbZMZUnst-*fo> z4efl9N{6Y%6;ZJ{CJhYkD8tGBaU#^~YL}P)j-Z%Q$9EO#iRyzpqTu-i zC`-ME$0Y-vMOPPv_4l>1qPt-w_usV{{Ix@=w9vZPf!VKQMDD3Q0cxVJD6U;EF%_s3 zv1VVJ2o({#Ruziq)jhespcn$&l!NN?`Q!qr`tV_F>hIg;?|lp3T_k(R1OPldan_QT z9emRkvAocOXDm3`spjt-+bL)9K`@fzqM5H^^Sgnx^VU{4uYq)&4GplFHYkCL2S|kUxvIgiQ>(m=R>q8 z3NJsp2EYH0I$$K6T004&e;Klf)=}s>)Pt^Gz4*!`3!CVf)ZNO~AKkcExu&$}to5Hn;|L8fdPIbG0>En+bXl(CR{1h;`JKl1%_0Bzn2}~e$)Q&@TU3cJ^?B|v=P{?`a}--Q9cYVEb0dtAM%43SJy;F>@x2uP_Q zvm^ju9U`0-2!Qd<=|}@j06|pmhI#;?O9iN0{OZ)79tArl+aZ0ffK4KhegbHmUr`+8 zBL;$_WG8xjed~{(gCk$&X_dgGzHL7w5tk;$V>urdT{sS*o=b_`5QId2`>fAbM~xvn zHQ_HT3em^?G0}&h5*PqW_vW>7#0XZ<8r|7H+P~OyS~- zy#4a|DA#&5*zG4EavClog69GxsRCk%5$`HYpgC1Q9TPyHUZcSdPdWYl>Loo?afVW|Fl0t2Yh^79kWg-l?V!=!9-rWY!#`Nd* zK6ad=t9`nyAb7`5*UW)y?m7Uh#14?kFy{sEXqm^J{cI%DZ)r$*tb(qz;LIKjJxfY5nA5SD+R#5uh~bydKLh!;x+ zIkgp-1C3PydCck`z&jGRQxI2|9Qb{mAZWDCp&@{mlUZ z6&<)V$n@VG0L5XxYIi{JH7{sCuF9+HSm$ARcg~^EyNE*HG77U+Miam)EZ_fpd=~uR z?<*Nwl2&XBu>&9uZ>BM&0YM;MFghUPvT%Ftn*F`@3U5D0E(s2Dfsi`UIX)-?k5mCCvcqVq05>qI zIRtp9aN72O@Y&$Pt5IElhd2Q6_VB7y8^Sa}K-aYmPHP!5)Chbg?E>Zz0fFzx5vvOO z=GNeIiURDmSf>06+}@pvu_C1705l`vy>TFSxEe?gE{#s3SP|bk)*tZaWO78Kw;Yw;j>f zGk0$L@Zd(rapkN(U#tlj0D=_)D`SwTSKVp4Tco6YcDtNC!XSE7M;Wj@%! zi_;GW?3&!Pk`sNc9!S|U|_UiX7`^MJq!!*OR0f2`mUb|$~zy@-N z;BwLqAUy1HRPOaBr2=-s89vqz18+c!Dj-Xx#X}^{VhO;M1~gSbU8jIRG#48Xu>}c< zL6E$0YbA;dhK+&1YGecb+Od>PFDHt_oxqpIWVMJY+PON|myU+@YT-1mC<~#AqXytG5uHb z1)wO6R0F(G1|(0R2Db;WLHxM1c%;vAX;1W}!mHVy*_Le;_~U=tWD<;c_$ zCLK`FxrP!esX_RXz_~hB7aX1hAmFKM0|X@Z$Fx~vg}b?JHr(&dVg21nFCcnO;1lBn zly{C4e|Ihm@Rrx2&2o%-FRgW9=^6i0vdtd; z{)(krM5gWq6Yb6aR08k)+ z!`gf+{4&1?#z=fRDoHA%yr6`M!pc#k5wVNQWP(@MMCHv2OKZh=K89U^puF4LJb3Dc zwNOwhzPaKt3+3l>Fno&+0B$c6|IaT5plTTE6yXcQpxhr&0017lH;4bgSP#IE0Jus~ zeS)PeqC8@i?fdm|eZM{bbH}=deJ3UC5&&>Jz??blL)$mFuG0Gj$KeFe#QOqodq;W& zO5K`oD5`A;LV||S>;V>4fCt9{6saJ9pTl2k5~pkg8vw+(wzLTp$Ai%UF@sTh2I8HL zuy}8so@~}WiHZ`2BuQ8jiXQ?%^b>^c2S3pk9*HCX#p$I=P*cDl!GI!>zrsG|w~XsQ zOlR4934bp`KZ=J@_?rK6QVR{IB-%bkWnkR15PVck$`Gq4$Ope_dIIX)-t;>->!cz0 z?k5IVagl6q2sD+=E)3tO13<^oW#~M-t`ohidol4x4Fk%RlIr6w>+??HX9wj+pG}G0 zzTC#S$|x8yv+;ks;@|t<1iKh^2>^I_;*6zt4{U+sc?ZhL1wv}&fY>=GxN<1Zmui4` zsmamhG}Tb=M-qZ6Btc+cvj+f51C2nyMu60KR(rW22?T8|B!P5wVL!Srylp+f)0J@O?@69uoJJ8er=B&oLJHe{&09j27%ga$F|X z=M4f!g|)?5E&jG^gWv(cK19e!K;oq z_nfzt!0kZdzw*@&fj};fBGdu~xMNPRCWiTWmbC!FBN__ycCb7)qys?Rs~*4Cb%Xc9 zE{0tOfX80F@RJkcxi5_mi;ZDL2o`IRQh*#%4ZQ;8OBIm_S{6i4HLjl79w0MpWE2Ew z3<7v%Bgml7^S~z-O^yW(s6ar0nsPA?0Ri+fHw;MBr|744q4kx+NT}}<4GijXrzTHs z+2&c!F}-kR_It+l?}b@tW#WhsDf;FCif%-U!*#NZ9H?~H^_8ifto@LLE z8XW{*`f%rp|J-_Nh91-~>@ooS^~6~RbQU^R_irL%)*tWaf~(YtT;?kn5%A?=p_HHz zFQf`g*B%ffet^axkR*zmYJj?zq7JBroMb9Nae^?F1{n#F^Akbeipya(0PgcXB6=n2 zi;*Wk0s>DNpL}(#hGTVAK#Bb}!slTt)75{TpAUo7J_gP?K6P?tNs|i?_M`+yq!K(> zZ35xcU{M)0Ms#W3uaO<#bMM#&7o9mJ+fN4p9IDT|F#5-q@OIB@E0A9rE%lAXe=3*k z4%Gtb55NHcsw5E)O?!@NYqgtD?Qth)XdDopR7m+1`&~Em7np&t%K*T`fc0B48tyvO31QL*p>A@JBxqa(yZdQXY~9LI4Q$f20<0;-_)K=Uo3!t-bJ9GFxyl zGx#96exsfeBXSfO8yW;VSTr0KjPCo~k%1bz3ra)KJGwhPc;Gu5Azz3_oPvtC7y+Mg zVdC~c^>O0Z0f2K9eSE&qXyD(!Gpg zKz{$;*Ka)zW+==E06hH4C0{L$k&ldxKxkpDNh_!z0=_tCo)0k*WEexby@OQ&u-gOF za}ejEFBk}zY5;mJ&0V)rW-&EE8se{k zzqfS4ZO&|_>*uZaImg$zzFAyqJ+<#A*nrqkI%3U~hISgx{ry@w_B=^=*TrWJ!6(j> z?!%JsorL-?KjFgUJ;673o?M5*zCI+m>O#o<)h_@De~d(%+i1lhG5z0E1L{nY_IFzP zg}ffw>GVHQ*}U?dcS8E^pc%uA0KnbHFFdlnkb7wB=D-V(>%L+Fi5Gd*aVbC;10|Pn zFbH6K0OFX6P%xpZLdT4PGYtabIby#@AWp=VG*t!!V@x8L8Yj`JNw#ts!CdA(1OV9= zO*?=urGZci@Q~_Ygc_@?`wN|LkJAeyeu9yY>-r9w)ur{AG!fr+FTo7na9A)RcoQIe zzWR<7{ga4Z1@8HG*H^YeU$>$Ytsd-2Yv zR`jW(@qcdQ<1+>8a&CYiKqs0T5Etv?uENb41yve+)IcDK_#1%$BKX7!IVg_T#rP;P&cAc^RC|6IpJvxi6*JWV>G>RTq5sCRM;f5`P48`t7J z+{_TwWdjK6*8OQrBE#N# zJ^}#@5cN@_S@yMt2tOBnm$CyeA*KF2v6hXiYJb?+0jITkLb2T8`5t!@w`CvJ2^Hg52E$Rt zCDsqSFvrKc$LJ1XrVT({D~_K;@cey4`5Zjsw8A>l2G2n|l>LNNWzhQs*C$!J1Wmjo zR-&{>0ZAhONos|>@Vy%7@^y0H-2c|kZi9Kfezf!%ZjT%hKffAL>eTJ7AmE-i$`y@5 zj!iUAJ?yj-okJi2C;&*R2IJ^U3Bc#Oiw}d9Du2Aa2Tq_xSX>bO<&i_~*nC8$N@x&f z3;-TFVgAZ|KKJa#4KCqo0B0g%gvKYD?#}H2loEs6Be5RGoAv-hC5VB5d2c2`Abb%d ziu_qYKwV$o-w8ik-wSi00*jq0%!WG5V?C&k=}L3hc}`A6#$XVZhpSl(DR+__j1m`i zu;Wff!2PrZ2A~B>UOK_!K>6DK1TXPyc92G#mL|tjOFj*WJ&K@|i~ATP8}4`=hPN>8 z|Cu+AYcn-*TXZZcKxL#3^>UQwolKlHRC1VU}* zwh-vurwzu|l~^B*0HF9+7urrzs2l0=Cb5R9fFgXQ3UGJp38Oxf%pf>V1{&U`SVaQg zN&ekWEr2uHC*U>R#bADo52J_OwYhIv6=Q@M1%O9RSa@NL=6=$@P5K1z;mi^dbJ2OQ zt^N~&K&m|ev`ItOkpX$G84O{O(MW?aU`?iJCi5di5R#NBwkqVW~BQ2@~MtZ!ofCd`fo@S~w__~nLP_}Plhd>aN~ zV5ijIbogJl?$LCmSi+3*0GX*}7#TnZ+xI&j{r0$0wnL20w@xoW`|N>;WJF zAjwHceTZ#%&?NqbAP{C2zZX_o((qt|ywlR%y0ZnYUOR_%Du>0PxyY6liqlorW;D^s z7P1)r8YOLD2S^}xdro{EgKG9Nv9Mxp1%7?m4zU<*DEgzeEp)rkwWKAmm8>bIYB1^; zx?&?Epf(yHB>=HU2=)Rrg&&*v&!1a|;$+1ju+#ht{U37{~yqt~G-9jW|Ex{(NCjYjxRNA2_&-u;ZYfbd>eNi&ig!(Q*#H zy=V)}%?E}|PCtdbcgInG-Fn(CR;vgz4ghx?yI^@=oBP~`4UWU@N_^);G^Y z{k|aW_UOq=els#k-Z(ZE3<(Nf^g3D-0Q<^3%DQypl!Tfw*ipIImk~K0RRjvB(g2=P-0SYzn=E%1HJHTVdJClnc4lY zSH3RP87>KPkJ`Q-`t?I^+x+2~sN)v|0PZ_-(ebSv?%nG*5Ha@87mKVS*Ic7+lyr64o#Dl4w7J#vE zYBg3L*#N*$35eJ%$eSYR`QdB+{1E$xb|b%OyaT@S%v|xVy$eP7NcRp#_#~77x_cpEj;+Y282`)h|_-`RDD+!<&H0DLxT-!fO| z{a78C81$humS9^*5Z5&ufVAo>2Oz#xpkKBFK%_CD`y5raM>n6S6yWmJ3!x^5&HlN& zANJ2xLuQy`uUi3ynq1k(DC!na-G7BTnfmw1ma5-Z5WDa#c}N* zkTf!&&jS2^7z7%mQDK|`=Z`jb!>t2dP;SD(XIFzFLM?C*Xkd`zqZp3c$dK9K-F(6h z)Zyx*cfyJD0|oio)gADQXSxEZgAh^I-K`#c~;56d;3WPNush!|k)dNCvZv1(9nOL9f{aK~UUrCu;Y z!bE?7uDn-winQm*hqo1B2Eq#l06aW$^5RuHcQ}V|DWIh_SZ*3G5XyfP6SQiZB%|O9 z0RjN2U@#pJ2%bk(I|I@HKXQMS`^Q?~;n7xjX0iZVOND6}3$ujj48KKXcNn+bH2|2` zUV}HU7=sH|OoiWn%@f^l(}rG9V@mtZF2a|N9fF0OapG6kJ&Opmbf|Jg9fJ3}o$LL$ zzdo)5e9vM7z|w%2j5T3MJq<PWGDfRE*u!OrPzfdPffxc~hVE%4E27Dk}L!U|^s z&d==#-R67R3G6qI$SKGErlarOy1a=uHEybz$|x;7eB$EUM@O8~hWUy?ZG00^DFsLn z5CtJRLB=Kr%@7EvkB)(W;wmzMc?9%KLlCf}*(GTpL;4LR7k;|68}8cC33Weifp2j= zs7%vCFAh9gGZ9fU}6xi57j>G^LiKg(AtHPSn8V-+~D)Z=LnRs zyw_$3R7W&1$ZtYeB2zx>C^>M^Q;T5|*>D`r{oPG4htx%%>S!f!$YNHPa*(A?y=z{6 z-?mRSRk4lAGLxAlh5L_LctpW<9$LTI5pM3hq12v%U?FBfiwPqGFE|LGv`vA4C2p4t zgqC-wrBlaY#{GY}y#xNZy$eRF&2wQq-jCyE5&$?DU9{IIT>pG8Ox0X?`TR-v@}WbC zlM<<%W{XD_9kZVJP~Q?CTH2`5U`E}uU%ANi|3X`(GEHerdrGbR!64io~XSr4SZ=)@6 zGZXzE8ELml1!iDm&Iqk0GH`Q+01Wv0`%M}HlZFAgaqh$g6Y$S_kHNZ$JbdcW1#sx> zB7EbB9m3F+6vRj*HNF*n4quLb))EiQS8Cf9AW#_DPM|!NvFn@0KZ~T0iTf*iW0}G? zHg?0W`)6slTc8f_giX-O5_YohIbxXu+>9FT{{ZyXWAEE?dQ%ONA-re+aPxs33+DIs zuG_lJ>8#cQm&STEzGvV}fI!yK0bBu^gA&PL9Mm4xk6BfMAior8z=)d;5b)CpkHGCi zt?;*@c6eg64Jrw%0|@{y7vB(LwauxV+&PGl=pCJfI-ELx3eI0P0ZZFF!7ShT;Cz_V z;=z{>*$IWDUg&__R3`Zw+j_Xp?`wdq1tX4s%HXqZ+@7FUM7B7{#{E_G@m;a*-=2q$ zuUi;<@kuZMhxijPr;EU0jPtu_^=C1m4(ex|cwhe?n`(#*;Y9-g9_~4M$;ZJb*KFCs z0H7skTuSXb2E8aCAZq}F04_%i1dJnoW?Cvim|sR|!18{`c&^G>W%c>+SPMMJeou_I z!iLF~(DO`%ND^p1aN>7Z!!2yD!J&O6IALxHj+<2pIedw=_m|f6LSMm$4>CzW!9=Vh z5+wRt>Vw;fy5{@P)=gt=L6YhNxb>gF`1WadDN4Zbjr^#PWGx?H0gN%GdR+L}A{ejf zqRMP2!g=*=uwpKO1LwQiu1~_mK;e;>-#;@;fLW^f#S1@R(%PX%Eq-!%%-Ls*y9gHo zTY$-Fu{*Fv%+MqVKz!~1PM-+`P`Mg{0It#LNCPh-5U6;*SHRk04xXMY!1`hywv_TP zSjoXi#evBx+Qc#pREYSztU1P}dh&Ic+ggXE?R8kz;laM0bvUr620fgGS$fynsT{Ph zN?qQbu&y5oUnAB})K(ml_wwx&y65>~y@^D_X#yzh*yxC@>zWOY#b-!J5!sd}6yNc& z)wAHikuKwNDV$3;!>g8hu%weji@Pe~=hf&}&pPg*f!{S<=nUaS1pprY^0LLRXf42P zTl*ccPbhbDuOa+G#V4gyoL*x4$CgqtFmvB$${XS^l%G;`A7UKE_(L0vmK77AgA~3wUdG4>C zFu{cBf6T?kY4XviAvj`HeKk9;Uxip8y0lV zUAVaCso`N~PO%t)056WVbI=O_0>O1U2;hn_(BzM)-NOS82@BZ>;sFeLHFoPE=#t9cXreVbMl-Jpd9p{?LrN|1Cpp z@Rer*(Z4fahj%O-hSzr$&_WF zhY^AEBS`@PL4gn(9SFHM1_(?u*vl`xk5(GSoW6lwKpl74Kxm1Bl(S>ib{DNjGAg$g%b&iRu@Sa5ty+OdEF7yBo7X7B1D$cF_CMD!2tlkpfYvdRq=8UGorW|3@Ztf17S$y2n<0~QV8kou9=^_9zLf@I zzH5m1xSS|HR!6ovMrn#8L|Febg(TufuD~>-&p%&rc+FT2_AS&P+%q5p@%z62mpdNW z`l>54k1y<6c*y~Phd=MX_@{O1yloimixv_4G(o^f*VG6BP6Lt3&TF9y* zG?Ru0X+Gzk!JP2Jjfc^<>0CWh$FyYyjrNYc*Qht{L^L(zWV6(pc?LxekD*7Rmy#JL zV2=i>0@aD%r*^`}l0dx%qqIg&IPIxTt22~%#=>p^06g5dbm5V$UHN;)$7n$;9R`S7 zI{^q_;<6e36j5g#Apj$T}w-w+6YVLFp-lG zG*XRyi1@2j_E-1MJmaaYw>K>C42RtY0C>20&n1^TdGgKCkw9F+95@XGY!U$m0WA$o z-!7o31Q0zFR%U`UV0QA7ao0eXRepU!~&v)N{{& z)l-{pfR`ZbRsg`m&HF6(J zte3M9e;7=zua2BrrQT1_CZ>wBi^~RFKPjG(J=7|cmg{iwYoFfwpYRfe-3G@}*6x1kju`z(Xb=NFvN#0Ro(Vnp9vb zLoBUjg+Y^8Ezc`w8oo|{LxQ*DNfP2AXl|&MG7x{lIv_Os7sZfjAl|EcYBa#g^_4^b zI)}H3{Cu~eYMIhf)p^(J*KNKIUc#_D0YF%m>y|9pYi@x&P_9B>xoi+oNWesM_)+&` zk^sM9u?v_Yzo`HkX;(U-0TGd0`oenRFL608-57%Om9{Z+yadz?KF57 z$(TmC}J0)F2H0_Z$ZC1^q#z~X+IG!O#x>xZ15if2njC{Gn@7oNRo`>(PT<%JHr3jkQOM<736zW9B}n&Q#jbi5h*=`5U&} zh2NO9XfH(A9RR>e{OWi89*eJO1Ls2wIYW0$Q^Y5d(o&6s5T(zg5;T$qL>!GdAK9b< zF!O+TIu&OF0`;5;2-a3iQV&wnrCle2K@)MD_z80Iajfa7^}BI89L0&Oma-H#aZ<{S zUTI#_x*sg_Wg&c#Bu(5m0YP&9x<_DQ0yd0R=^HNEvgJwR?f=jKV0KB{&-wY%rPt*F z&MTMXII{%=Y{P`uP^STcOrNF_G%F3nbaC%8Iv!)gp_f#Z~Zv+Hs&)Ql!RVv7GZN#Oi3u^kd7Tp98nZPC7W~}9r*r^cPdEStL@Bu;zAxYQg@tk3e73qI`Vbhimt&Zjpn!m6#*$X~%;iUwCRM8(I z5D;6W9pB#G_1?Z&zs*tSs9HH#t=7ifBjRgd7m#lhFF-p3nbH6j`SCM02_vgo5VH@U zT4)*wj8-%qZqf*DrokY%B$|tLmV8Kt_i(XXap%}KG`r3R%0?~p;Y;!~b$qPbMgz;=HV0 z4GaQF0AK@wOez62?qLux@`*_U@(WBLz@Bk7Ai(0k1{_9O`O4;iz*5_0TI;Gk(;)s( z{5H#COP?h_2)L?Or#g9PfZIe+gpH#N;t$924dOQmUsnYpuFvmt z3Hdtpqp+Jv0WTE*m|Y>2`=g(GbW6*u_xH~Gbq>gZel7ABjsbwoIq>x+8rMx!31E8C zK+LTe)UYDe^MWW3lWeZ~(X3204&ayFj8!02bg#lLk_8_!sQ z08o4i@mtm7G$PF^6_~0;gM1ss`-(&?-ys~h5OrYl6_(sIvEEw4GOag$U=aUFIBvjfs z4@gU!l*CBO=jzw%$zr}$4UmMd+<${5ySc8}AGvdCY5*d_HvwR`R0CcL z0B9usCvkra0^+xCq0sX$UGuMN19CWT4T9uy+t417IVY+F>Tv`FqSLx@X~1Rx)YJlW zkHiR@#)#N@OaKBi9hL}q(5BKF_iQRbCNQu)XKT&0=W%>mH#eV6Nt;S7G=3_E5bKEG z4Kd#;4Hz7spHEFOu0KJC*H&s@{L<*aZy+Fe{A(ly>=tUk?g#*h`aeVxKu%rH1L*v8 z?~-r!xX#HA2Z1oxgpEhFbNhxQSWnM60n%e>z)X*I`j}b(aUf7eLK`=qE)ZzXK>V33 zDuS7xwZ&56NE2zN6EaZ-wWpVhZiEwZ!uu9(uhJ_WACL2wD~#|*s6SAnzxwgS;MZ2y zYJBw`PUv+=C;l`L0Qd(408SXd(uV;rb7iZA%YJf*5rNznCN5Te<%S&#yu6!_59H>0s~Y2L$`V3U%z>B zoO|>sqQ}HFwH<4 zL~z38gs+T>i9`o$Y0s;X7xuA8hG!TA>OvmTCi+DAe1aWN5tr&fI zDiENWvJD@qN{p>D0G8_%Fi^p?;M>yJ;u2fA*?S2|8d8NJ`g_vQ=UWVXnCR8iUenu; zdz_9<5Fzq=3_*5y{(YaC*!E!vh#dof4FvvI1<3eLlJH9$0t7qpt8>1peD3u2o+TjUn5fOO`r&yA6+@~ji;j)APC=r0fvzuF-HgTVh90h@ep8USD*a4kno z{5O921KK(lU6SwqVz=Y&!zBScu_v1}09Lg?7zW+IILJfY57qw2J^+F3z(rGFLm&Xl zT6aVT0o?#dqh}x?4L~9o0HhcY@pDG2BuWRCRwN1W)_X>vjS|vKQG!rwa=!tQM%A_4 zJ*r-dTly8p=hDLXB*4xo2PT*rFsELRJpb6Q2;Tb3$NMjWz@NWv`DK*=k^tZzY8Vi| z*9HWQ9D!2p03f9Re(VP5_)zzP%a=I$(_L1tVu4zVG++Y*8xUxsx)T`wIAMxTguG5L z5IAyWTo+LfMSIQT;X|cT2tbJe0u5~ns{E!+z$O)#*NGy&kr&P{=^Ed#y5o}uQTQSw zp_@Swz84Zc6{?&oL7LZf5xe?Aq~Dh+0pUMi&BJ|eC(QH8a6+{hev3%v`}7Z9`6It7 z4L<+@*SCrP7yx{*gMdl=K7LITpFE>scLabm5YU`~pn(*iesAlVbNb6k+xrR*w8W$V zh;)CO+b;$K2S^MkL`QQYwZJ!kKymjF2=G@T%d>i~NT;L*#I1C0O?4o^L~2S1MlIt8 zw{5JE1_+Ief!5BHCP7Ry2#WFp1E1$dBE2g|Y!ujXa443|p*<$z7Xd~l3ET(m@ORP) zCF;Q0wL#c}i3y@}k#LS9Yyt02pB?Z2BG`5R|EKl;#5Q}8-Bfg+tpr zSH8W_^|4OKEz7fd7Te65(ttd-&H(@jXSq3)=;@^1pOYn~DL|l918pZG8Nyyb1LAZf zuqZm7up8T`b_mZKNdhKVK>XV3 z+Ybqy2m2#r>;R&uDK-ExoF~P6UxK5Oys)^gLY0waS&IGKioauuz}>Yrc$g7>KeUN7 z9Za1+sWt#Bnb^+>zlC=aRtVlF+Su&91zc6#(?2?tV4$d=AOeR22as+|N>myYMNv^{ zQMyb*ut339><$d<0!365yBm}=2m!l*xwG~G>+yM?-|xM@_r3Ri?tkg9_t|^JtXZ>W ztv%n_=UA0&?^>duGy}ID&63`v*lhUFLWH-Vy`iP#)V3!ReHHV>>q|!T%I~W#HCLOL zIOpM!DN2#k^S;Huww^9$JE6RzRKb>R)}k_(ZsuzbloG!(IKM*hFil#eug$t1eGCV* zl{?F~Qu#Jp-Ct+or6pOBW3tqb73wY(wSK$z)avTtX|MV`eCc~y=f2vF&C6!O=M(X% zOM(xIA2^nol6y*j>e9$>lS-A_%>1xJu34t%P(}JZkG^6vvh#i0?|nP^(U-=s+s_@X zdMG!&dVRsca{UwyJA4|}G2i+4edkkFI@a~(- zCM=a1m#g1dYQF32CAneZ;?=Ks=#udD*p<)PnaXc86`JF8 zo?7`WJH0Ew-a}%|hmOum#SLX-Kff{4^B%JP*^~Il_RHFgu9Uuhz&CS6Qx0_Uy1g_dzQ}vjvoa~a@h2U9o-RI9H{-&Rn*%(wL+8b$jQ2ckb^X<+r3;#O zt&Ur8%U%xfH(bh)s`aCt{Dtg=yWG z8=2DZ<*8S5Z{2;J4o%-`lzwBbwo6h|6Wmxj;e)Gl1sN+Rppz-nqx{tR?d|$!@oqv~+itccE+T=a7=C&+0lHt|@v~ zTzhJR%gJ}I4RWs4))r6y7?*fv+J>OOpmg8-mwkM0>8n1V@BX#!KezUZh~{YThjS9e zAGT|E*ve%28s~M1In8Z94~ae$o~Urau;O?rfA6`y59g)?h!45iTe{)Hdev_RweF)v zrCVelRkZr{`o&i>`BM+4sM2dEnav7w9iZT22fpa;+agaF+GNS}^bb4x$w@LVy4%R? z~ucriucY3NiWaGE{&c|0>s~>rE|BU>`=q^0(6&BJj zF7U?ZCc4}2=w0bLLca5>qw~5ZebAV*efp880h5{+o+QX6$tHN+Q62(rh#-Z&8Qrxa=I;kEBk zH($j1*tzW6{L)M7I}YV#sNU14k4>pVrMbz`kSSPu_NokAD+vIWoFr<>!G;&En^^!S~ze;eisFV@1a- zu$E0;C*QxT^NrKuuR2MTXit=%@wpt`ZF`a$*m z?Y$GkryVN#_}O@TiRt<9U6(gbcqEY&zSU8Dtgo29k?6j)5tf<#oAma7y<=1!fA&-6 zAnRol?%og^sGX=RZd@~cYJyc=(Y$T3M?}ts$vs{g7+>gaV?4;cyOivL;BFHt<3>re z8S&x_JsEcyEc+lc3l9u>P`C8KZnt_Z*fwNL zF|&RXzqm29Y{&&z_jpOk#(o=)B)^#ZWT`&z z-p5JNulMiOnzn44{Z#Ko`}wCAoV0p>+H%p*&T#Ow#^n6_{D`9+qRvGe89x1OT4L!J zlRUhx{b9%CS_8>zbst5Zx7{Nnrho8Q2T<36?XgRaWDk>)J-4_?}#XxO2g)prS2V;qBh0+wH&U zcTe0pAEf!mp+{rwq{EEw>CM;&vg;i zxgMX&+f~CmsU>x0x4fFWw|H0M8vfchnMZH-cenm_tx?0I{EsC{{MW6F}R{SN6s zw#Bl7+Iq#jt+&#;-03LEf2Y1+H_>=?8eBQ9V5P}#)Lhs zSv=)gyN4ygh6AAKeD7oa$KTYCaI1gazC7qrCsAI%?#pC4@Y@*ISPR-|FUg;G<+)~F zoy7PJgSPK?5n1BUU(7WscDOt`{<7lJfiH5WbXn^0$n|lY{Otp&TXQGRF5c(& zw)wPcyAUG<#!Gt0}U0{jzkK%wloH_Gbt8jH)^q^`&&= zsnR=b8}!}85*|41=xJiKYs-6|6+=dz|1kdPqRZ9O&P3Izf3%!2|LaDd%Kgi8life$ zB+;P`4t@9FPWe0&k!t?&Ay+n#m5 zdjI6KvHfOevE3`KFtQ6Ni+(RzVW%-+rS1bg@Do!%qv-+y4 zG*9$Kp?yGv%4Y%nL$tR^WHM1-Vk8E1n^T2Y;^9S^#sv;zwjgvA_*b*Y@-RPIw zyuixB93MAH#|+q-HsR1X&q1CKPo-9-$RyO--}EaMw~npL_ARZp+%?-)Q`zyhkNCx) zl+sscdZbG(jZ0GRba-4trS3(Od8h7N6CXTJbW@?WtV&>Gr`=LYpQM}(RW>MelAj}6 zr@Oh~$+ufyzI_;6;qAWma!x0aem;h;O_me~M!DKdm$>K!Q!@*APTqrT2K##VIo5we zb$yDu!G?_?YbEt!i*7&8IJYxkDFsh0lYcZ?CZ)?$!E~#Y1vlNLtd%b<9x}IalWo~s zkqFJanxiW}WN7=I94*=RZI`PRvwX*_O8atfh$>9qHQn{8`_{eAno=ptSHGQbsmS`i z$CLT9t{)3kkbj#qJXT*KM@u|ky01qMuWjbGWjW(lR=?HXH22g#txH$hJPw~EsdcQq zmb+AbT~ddDOIt#2-5b7R(#EijX}vX6OW)o!|OW)9R22pM$NY`@wum&M`7 z^^6s)pFqsZu8@B#LUhWu`b&w`Ym^EwqJpvhseiqVAjW z<+sWtiAr3QM~SXoD2yfagc4A4802b~Z95^EodakQ84^t(5&<6l{Xgjs5)h$lqD10E zl0(l>Ke;D6PUX16iM9M_kM2t^+fOg*PI*eQ* z*Jb8uS=niYa@|s{D)wCaTv=sTld|&WPjcO+U6GXw&*|DV>`151K3gOt2h9UfULciq zChAYb`pxW|J}s+X1dXiNS27TVN5ib$XiUzEKN=>;i^i{?O)XShf!Vq z5UTe&ff~9wsG)ZXH4IOq!1xRbO!84+dKNWJ&!NDa$SfaK^-eacXlB)RQ%*Z8E$xs( z^|8KK5DAF76R|O2GGjdacM>bd$}@Q=5HWc(eee{g0-Gx+u)QiIYdTuB(iPO|Pkrlm9#!=AluLIWF`Mci zM8w8}Sta^a7EZ7JJ7dA*&h&-Jg6XRzRW+e|*Z8yF`PL@B^-mGc`KU>9<#@Kbgqn<3 zyXzTb>jzj6QE8Tadd^Uw>V7L-B)OTUm&e4mh zO*Yq=zOwnv=Jvlc2Ccfo>|Re9nb=9Hs{1}@XpydvZfhFlk-X2NW?#|~E7A`pZ^k#1 zaVyV^U&f=y6BG?7M&^d{k zY;H0e(kkSD1b?-DWz? zQyv;)~?W@#RN+2b2l<4XZ>!6>AG7MaZk?wb?_^szeIY$(bF)?EOut79<^4O~x?|3viSr6Hw~Z&7 zN#{#YcfvW;n*10w!pl)3tekkSMb#zmQFZBi)QGM?jY#4@f+$qj4+F2GXk$2n+PsZD zoo|f($3CbeN~!m`_+0a6xihutDypOnx||%Vs_p3H{O{oWO~kcXLFP3IMWsXQq&)L9BoZUprfWCy7H91 z6XV}rQJy2lKfC9m%0qLf*=VEN4>b~Qq58%KRNwgydCOiQe<@K0&5c>qkC`;bBPy_e z@5!iUo8Q#g?iyQ@{x+#uUn%}RSDAfm)fp!DR^D4}A+v+bZjg=}yKO{Afgw7o8K9f0 zGPi-?Y+h(>D2qo+WD`ldj-#q_E>YNceM!kM?IxaBn} zoNPeFWA&)K`!(`5R3mR)HS*(MqN?BhW*G8-?Zy6>)P`JNB(T0D+;6e{3)`zO+s@`H zTZ>xsUBjDXK7n*+B-x))q)%)OB0b`0Eae+c{T*@xHEExz(`!3AXxZTy;@?}R8;;i% z(pWlY*F4m_qhn7w>~HIc?QeZX+3YtcyZ;T!T=|IIPrpT_{dK6c?=>o~u0cN8DCOA7 zfq!J4E~+}*xG5NP4K>-?#P$M=_hCQr&h(vhhpnN4v2L)|vj zVVlR_u;cYl*e(ApcF%i*3db6dH@g}YXI1V06aU)Y_mowgZ#FWyeYZ6pB;VHclv_)g zt!MIP>t&0rZsj|Uc%E8`8Z)1x#w@b!^Jsk{-R0AKY76+}^fJV9RPGLmE-UH}P&7o{!!ho*3+8 zisMEOLz~$3sJ5b#(_c0pd57w;-d_b<%T2X*f!rv+|g-`QT4?P=NC z+G;16yxD$hB=yOTY|_XlLc7D((uh(VF**Wg4(x!5cI_}}P+OculsvdC&T#FCzCpv$ zD=H8tO|Zqp!R@&`QT?Pb$XM71A3YhG7cw-rX)MeHXgh2qD&)Swxbm-Pbp9Pmmo{OW z@@5n*ZN@HV-Xm|v8?sGx>wo8;=k+L0FqHJ&m59ln=}n7`=hjtPn*`&FXb+c1`b9eC zRm9o+al^-83h_E;h$POnm&EywZ7|iT4W>CWl4v2}wYm0faGrxC#`J54;TF=QL+vow zR2l<~q|vvfAC6A8*!JERjC$3GvNVTv?tR9-Rfzl-h)PHAplRxURNnvg#_#;A`V^fK zj3Aj0BYVi^>?k%@N$$+Xvw6z&h2*Vi&i0|yhauOnm*)+fNBlBA7rIDbhMNQ~CR#F7 z9G5a0)YLH47SZ_OR}64AMWsEjKK{->Kj`Up&K3@D*-NrL4cQxRp0a%b+kdgWRRE2F z{t2QS)UrB@2}5LYo>P0A?<#{UM~LGpPYKK%DS@j;wZS!BLSpC3JlfFsw81%ys2@po zZE&V-8=Ph(g|RLDVB;~#*$`9SAcoZ=_93~qA^n;8x*6xwHP@0x95;D1sw7;;zwjSc zcA47`w9Z+wH_T3I(7v}-_S~L|?4m{#^}~zSEa%H;J#Ia^N6y9}vo_-TvF&i9cL&@w zz5{M%G@&DIA=*5lJ@utME*jbn)7{$O0+%*8pLA?C^<~zeHW*LiF_ro;#j+jF9NPzJ zs^YGOMx52qjD4Or;cU{S?2m|J${NvS&TLc-xQLLL_{%d5Kc?cGU;^#Yy-4m%ci5a| zxTl~c%0&UlXMDJ?c~RTb*5zKz@bWN=47XWSXs6?X-7#jGH?7V1iU>V&IC zwZ|2n9dHBnamlcDxX@MVdq3ECuyI)zZG(-?h%3*W#Z7OUaa3s|ro3pxt6vaDl{cbU z=0Q~Uz0vf${FP&#uTTr3y^=TeVKnj0WY6?Ii1=rAhV5sW?AiJ>jrdO_8$VxY-&M)B z8!f$x+X8yvz7TobAF6-{!W8jfxRBU6yS8^yH|m!h*S9rZ(zt9yJ6zn-k9m%g+#K3B z%L&ULUc->2a7?LT{5N6Z%O))ThG9PMw6)&db`S1Mm<0^)!g}y|=1mcnUz{#Gi zQH=jdM6_4uZ2c7Ce@5kZ+4C}KZQ4{#>u?GBMee|DVJ3JuN(GO{so;qgV&}(VROq@g zW>Y`5(>O65TQ{ZyHzuqfnWSH9yxQWvc|$S7TN|e=osAR8=6F{&l>xMkJBqTpEX6ADR(p9e}cLTNGA5Xa2yyB;_fuHmOaby{aGa z=}SBZ5^=giy#KB{3rKfXlI%Cv&^#_cyV2J$dUYknt}Vy(!!L2`p@Vp8R!=-PryHJ| zEsy!h@^~sxh?exrK zdydvL+Ha3}ME!n-TH}k+A@&~559*DV7IwixqKj!=@j|K`o=xe7$Ktx-@u@^pdSK2p zp>7?DP{e(c<%RQO+5kNF0Wte6VhZuUhHR-D=@Q5P(=Wb%$3MHS8u@a8+GLssL8K=W ziC@NlI33yElGz>FpQ+C!yR(FJXKghq@2W+0N8;U^o@r@r>o2H6vsE={7FvMG69?h- zWgYPv(bc7$@XF#&cqv`jmx8(7s4w!EM>>`}o#sod3Lc73!UGXJEIhItACbMudyg1I z`oDt4!H4vSE!{e*jp!3s=eFowZUN-ColcZ)LW{n=9Ml_2tx;mVR8AFURRtUZNt` zhm+F;cx1XUetcJlwT*~r)xx>Ep5!0=stKW_>B-+R-g2X7@B=GN(^K>eLVLK$Kk*+! z=Zt@5H&aRXmovLlgUWkfoT3CWm+!*^${L2MD z>??4)j+)jN==tR)jREOT1o6%IZ?*fabGL((pd2E`YHo_mJ^Ewi_9^5eK0Pg`TCN0 zFTRt517glM>K~}z`V)Kqc&a+HB2tZ>mHCln4{n}F3V515vgzjP0eCT8mt@7mbMqDP z(jr;BnJJCCxAw52Toxw*3b@2J&Uik8;5xzQRhOdsB;mc!&+%?vxvi)+% z#^cFOIefHT74L7+!@CW$|Jq7{IEKf9#qAr**f@Ot07)qtd8e1-SBc< z9oBrP$MQ=nn_Q=!tC!sJYS2IO`ZpO=QeQjr=e*W!z5V*ajJ{R*!7s`V4kJCcA$wwq zkGE-%9F_3t9(j@}4=WD!A|6e!ig>SPyq_LIWREqc?6E3$FutPeFOK)YO3G7Cc^_?4 z!&@r_c>ho+zIuD}oL&P~9&v&7fgaYWuNG){Pp?$uMChQeTycf{Lv|Nm%u zc%ZLz{k7>ssXq(fT#Y;Z=4wp&+iS63-(8DCMsF|2e13a1y6ElIDJR}skDJqQYx2Xv&%bR(~*ksYmCjw*RYpV{Z1j;;5( z{6FR6uD9mvlvmWi%C#OPTRzjVlwJSBF`r!*%Pab~jw1h@zm(PcQ+pg=t^Bm|_xrK6 zAJjjt|LmAV^&rV5UnsBd@}mqYbp5+rF-e4;2#UVTn>)!XVu1}jB5NWM?u<_UGl}8- z%ts?Z#PD-QY|gT4?4AhGe=@OpS*!%ZH`p_d8IcW<1Cc9{JCPF+!w-5B=@2Oq$q+HV z{=59JvMfeKpNO>;*iOP`m8{&%%Zfc#R`*oStWr_i*QBDp`>UeL((-O98Be;%PbrY@ zGHNGzC^BF z@~H?yE4i2j7P}yrM9-Jxn-96@hrxP2L@h^(L!)PJ?LJ4*TssNfw2W{JVaJR{ z5q>;EAdgPU@@O(H4!fUyhw}UCIgC=7{DHj1RpeuTbnEwa+2`&~SIq^sG~NtjWxB@3 zo5gU95z3um!9r}0jVb9C#gYiT9%3(xlW40m9zD&C2)mO*A3Zt3e&x_!i;r#Ye?+-$ z_1Nyt7Y_SUJX()EXT55IxC&-peo1P>Zg1rTi005q)F`>yaV+S%`hQWS=2Sjd1gdW{!vUH$I`#hI*7we--^p z2)mB{L+vqPU^|Q-+zBW6j>18+mZQ_`RE+lM zh0%on`5AQLuuCt({d}FQQSopM29|uqcEyb-TGE8FCqAIk=GUiwZ(rTx-YX8{V|`~B z6Vo@EUz%2A;|E_yE%I4RbynwaI)>vdAY5#rYYWji!zdWm649p}PBs%_UJOH(D=0yi z@^7g7_$ykI&r@&TMZ$}pHvHZ`&+BoafZ@_)N4YovHoqCRMeSm7{8MExKIF)bl zdtod>E51W*Gkk&h=flayO}K}>ryfJc*&8?vYAgApw~?QnVLR)`5^m!m#5__7-)!Y$ zCh>Boq71jxe#8-#O?ZTScf$xPGxyJI`WZ znJ^&*&QH&qfW7WkDu5Hs8p%%J4K6Z@^D1LVN!^ICJ|e%sBWI52e`btfkvXnA$^SDZlI|^OX!W(fWBaPVB>tqzBLapGP#hs=V_Ia-VjdWt#Ggv~IgDa! zXX(Jd-F#r_9s1ZiQa3R7a)Y2%%hJ5;}v!9_~Oa^XQJ_PrYU-R^0^7D}|{Pya$ z$ozg+mk9Y_xXP)SN_b+b0G~fNhXo|}nS@o%t7$}d`fbKYaU! zG34{jdE1C#=kBBA<4APdL5PbsRY17`o5chYl%+&}r3v)LCDIN(bt2 z$>vd<5BeGB$L)%x*RKm!dG8o*znqK5-!;~rwsG<_T&7oFOKTti=zfu zd02z|m)*(7+!pU`RKRA-CYJ2i z!n+%E@zNGAd{|$F4=(S2-*?`P)v$Z_zp(cca-)#=oW=IStAkgQJ>L!-xkr@(+?v?W_;hUJSimcOk;*dj{bwBpU>=xc8Z!#+1$4sC9@6w+K@81{jDb(b5iMP<|#PU-)jY3~0YwP1rJ z8AV8JB)0;&7COKr1G6sr60g4L+dM^Vg4iozK3juSTD4V6HJlP=*MZ4sobYB-JKcECxmg&NyENysx#1JUn z0|>VPikkq!Pk`_zp!fy2xXK9#4}_vDd#K8BgvZAsq4IlJ!`H&Pac3A}!Lkkr93D!FvKm~6?*PIQVc3jZ@CnR< zfT-;-ZR&o|=u-fu1M-1l^PsQGRnQuB1<2O`6psZeem8*Poj}8v@`RlO%eeC(@O=us z5*`5IfFt8w15m0^xu_@g_jAhd@{?5S|8vrGZ7}MbKM&A1Lk(D0UI_jy?tDl{KI??dMFU3w1=FPmXxMI%gn)eKXr8evxQHXs}r zC@uvkHUtP~1&T8O!n=X+Rv?@e>hCN8!Yt{BWp=}disL{rP>`~!9OiGYf_X=4V9voe zKye{JF)}c_stH!sHN)(NW*~eV2seaX@0#HR5yc+?VR3NrV>3MYia>ZY5Vi|d@9TkL z1K{PiW@u_^f`yR?JC-1vIf(G&HUgQ7zc&j1uelQ!78>d|-X}C7g4FAuQe5cx@&5h+ z{s932@d5Gi{=THLf1l#UvCNb;J~1(oC_XVhK7R7wmI&i=$Hym7?&Ow~*j;w?^gp-Y z$Li*)7UoS!PD!D&L~oy&e=6Wl*}qqvB1{VxE@WjU{ULvA<;lscUP_dAVLJP>FeN$h zPbl3oNDV39Rz( zj8JY$85vnw8SErABxU(eEpWB}s5~`2Bq&fZXl{B&de**u)JA%Gh(hv@{7H=W@0F*g zrgo!m_!AKkl@F!{j%Hi;4!ePdj{c&mQ6`qg#Ay z{>9&Ur;ervwU-hV6%%VKCM?wT@UiUd!@KrmrB7_lFBBvv@zj*$N%8RkW98b4iHWtN zLLwq74`m)tbAbsQYoR_Q)p<|2$9gU_Ut))bd97W zH6Xg~_^xXg3kojm5@)`fP;hwfjxcJ=CoqqkXsQ>=cbTqy~ODd{R2 zENN1rgM_%aI5pAp;{AflH?D7Ab%x8&^q1>tLO|jyVcuTC0@4zc#Kk*ZyK}Yh{@p8` zkFflCq^?XONvQ$?CUw--?!}UBuU^!EH1Q-M-nsVPjjQ)-@ABrb{HMA6LT#Lt7#_Js zS65e$QZFqn#uF9j^1iqoT9&x{R6Cm*LP_q~rl-#(J)K^Kh0XmC~U`G&G&x^r^mE{r<+z-K>7d_+I^P%6~Y0hN+>UiJ^&! zfq}j*b)#1=SECL0DF3xPFNFE2fmU|*9L`#CwrZ$hzrKcshKwy;eSJM0jYrk@YU{7w z<+8&$HmO^=Kb*KIFYm?UzP9v_*kZgaj4iWw_0=_Zt_rIMc-g|uZk9heH6v^9JPSK(YgVLhUlS8UgQEBE?os`%`61;8 z``NRi2lVeh(1wyV6`>L)Cgz{NRNt?^cl~?*fE2O>OpQq`*IL`y3=$?PVP)IbuwOC0 zyVdae=J)K7JSmxDpYk8s#N{5sm9Qb6`kHur{cykL-NP$C@~6&9PMkVFEoq|qOH{?}7Q+v4cNC42iJLk2rKIJne(DWBGwQ+V7v^W)E@fNDp!x-d;)%Z0vJ>%Q1;~W}oT6@b`bh z)v3B4xcX1Hb!p3W?)VelozJe*XYTm#;_H;Zl$CEi{!}mLu>Pt2R=&8S%5QN4RzGm` z#w4nb`rDLG&zE$>(iXX}2VM4=9(*~ukwAnvdMQ1e(seHVII`zd9+5TCKRu_?JE7pD z+=HG~6=4`(7RGAJz)*eZk0a2Ft)2MA{X!X<$42zsW91$x&97P_~GRU@T< z{I5XoYyiEl(ef-R4=1Pf1o8{hGpPW`j|}8D1@dJA`PhK`nn3Rm^eW5_UDp)j~6Y$jcftuDHFfiH#CPvvncs0=b;XoJ}sM9klVN_sZ zejF?UGJ&uM=x4tR2+sgxyAwdTBoLMegkb{V3ozO%1qKaX1@*cy#ShSg+N#_s5{&MEyt_$Y32r~ov3UVM^4G7Z#!cReG(sdwA3kc%?dS@OqLY_gdiAB)I{{aw|3H%vP zz#_T?2p<5#mq9SO49Eu#gav>gx&p`-4ua{GK)5eBdlUls=)pa{3<#?L!lqzI@@gO- zE|4!52s;4hy(fS$2{4|06Ue6xgrx!Dl|VjTAbbc2O9O*FC7?9x6%bwqYO|jM`JjPt zU7&ZGp-*xp5atG|%U%It5KT8tA=9Agl}Moi`xAHIUyH2oD8^ zStXFT%heG4M12M461B|5d<^(Ry4tMdd?*uG}K>Dg8EzY;O*TE zXt=Ws9$q~JZ=dXh>c>amW9dHlSbhKq(*W{QL&oY-n4et-^N*K7N_7(uZUuy0z?Rxi zK>lPPe=-oR1LWI>dsWZj!iQ!cKl^|BIW;=cYrOZk(W9ec$>#heMU3_FoiQUmVOB!I ztbpLS-|vs{@r{q4H7jK#P5Cv$1YcHk?p)eKrP06C4`hYe-L$l{RhgNK z7pJAB{FGsnZ+wFA?yAL^nQJy~T)ld68n-FsGQAPrPD`Vk3&WPK-gx}@nl-CKl3Ht^ zCsQiTZigy}iHP<{Uw-<;(G6?lTQ*jg>Gr%-x;v*UJ$lgdicIJ1!c#d%(_5ZjXD6gk z=~av8rzHA$c9D{jloaiGC;!};+)Kg+X3b)iQ~A|v*31u3l$Guv+39ZHy@GRxx%=0X z+3nQDtJkc{*mo=^=OF#?x_H)^$MY`*!UlZasTgcHj`Zza=$wRp#mizLWTTHI`IW;U#0u2*R0=gG-s=(79~whHEQPT z?uyT4d)WQAtEl+8jT?@gTDyz3;X1U}7YNj}iz=EPv)cfft1{QD*>E&>#pav!c4qYa zK-Flfe|rD%k?{UC8nSg%eEGaJ>v<-|#`K7xqh;Up{(Vb%NF&kE{k<`R4E0S-O-zjY z^wRm(RQbMj-;*D4zcJ>$->m6k3;SA z&kf&qWG7d;_3vY5kadx^)dOvNTbTD7F!=MApZ2{JJ7wLsuep`uKxgNH18r^lIW<)ta7oowV~TCl*7`!w&vHn?9+>(E-h);%fH@bS6;sw;o&jjRo$QO{`am5_YL%y zZ6lJ%B+xF4_E?E*n?ZXO6}IhQTeH%iD4))W{^VExo{yDjDa*>MaN9k$WntUDhECs` zW&0EvA|BB{?NeO&a^T2UhEZCb!OK(yLMDMyy1PJt{}7lmJpqyiNdmq52@Bn%V6|6!B59y^;b3ck0-Q>agQGF> za5$`;WW zO9fD{-GcTMs^r)14TbBS;BJ;R?JaD8;^*n!M0kD92Wl>cLv3LssOTRAfz}q#(%uIG z(=DLdXD_H~9|FD(?ExGYfR5b;uo$!&bcXGR-d@|m#3mQi+z)}K-*K?EP6zjZ*$@$( z3HE+@5EesU?Vqq01Qz65w!B2^`(;|&uY;-^9oc&BOyu$ac*E%Eeh2tow?ShRTjw8x zfUWT(i)p>5bFZgB@f<+$B%l^l3|djoz#{T7XpE=zJD?Qk{b8VY;eg_|fZoX>pEZ4^ zHC{C`A40!VPk=wC6x5Sxjb21+G_B9P zrKO;_w+_bccnS$ypF)odA3^5Q2hb>Mgn^GfK~z~i%pf1_zC&wZ{gFNJ_}Vt8f3gc2 z9&d(}%wkx4;SroHDS-tQZ()8d!phgpu(jbU6x22Ve!TsCoimW7iOL6vFa%g^32=ZS z4R4MCXb2|7oYomI%?NP)P{93>fM=Hg-Z=>P{PvIXVpLw7%D18NZK-@aDo>G*4IQaG zuM4215#ZRNfYT!ZS1kcNb`bF1?H}dotMuF{L^FcEj%qQ5I3A#{rn(8%&_Lmu*m*Rd zQ3T-7xqy-D0GAvBJa`H4cF9lWc~st<$~#keUn)P9%G3S;wo&=RR6dW&7gBj@b4f9k ze@^8|1}*+*UHZy9C#oTsYM4hgY^NFusD?7Cp`kOvTO<0x*P#d>BN09=LHKeI;oI#W z{%l1muSeyrsQfT0??>h1sQi2?zq&K|z>N@&3`IB>iEwiXy=Hb0q2~6F@={cuNkERu zD^ht?Dz8E1b*a2%XM|Bk2$4haU-zdEvgl{t$7%?f4wf8yJGl-WIdXVk2jS=b&hDee zc>4zUdT>jQ=j|3Po#@DlB`)=K2yGkrf3LyZ{$8TcnVCA0j-Q|)OL;+0q^`8_y zIaJU?QDIhEB2_p#FlLGpUrk*@B|Vk3H?E6n7>~KSjOWi|pD9pRTgT8y&)~;SWezP~ zX07f`VV>5%YzRMh0w|RvB0bD+p(GK2->LOp1Lgm$!i=u)i{pOSSzc?k|H_dxor_O4 zp`$I)AfnzxYDCgR#K9jE%@oiU2mVx9+31_fsvAF&U27(L*W6QQ!~1R;^Pfm}9=ek9 z^dVwx{GK{?=@OL27wq{=_N*n&kKPAmF^(+m%l!_Lt!(b17_ycM_V~RpPh+_!+0bUP zgTi=U_I(H}_Lbhn7X;FGs!;4Hi+v?q*sMJ0?82YR_vkUXtE$n_YA!~Z#Whk~A&ade z8;rE3AlYS#v8teW%~~Yehh&eNd%9n=YORBBv1tm|E-TB$Lq0{a<49`~()xw8jv=jC zNH!74?jhMn>QDA}^nzz|;5HYd%)TRzeLqG}DUuDQ*d~gv^E-~TmeKd`bf)(S6Oe2r zlC4CAH8`qk?bszZAP;9%@m_1%IZ+{ zx&NHj3gP!mP}~#Qd8Bm;X)UGqwtI5#ozt3&wEiO5b0m9>f};s1 zOp7YT?Q}p|^O4qaq;&@a_Fwr+oDe_x#jrDLhx%VwZTErp1eDi;;$UpJcj#zefV3yT zhnF|hFU{J?9uxj<4ngJFV5OJ&zL{0|<11^=`ZU*__i3)qA755^CTPj^1FnD3`_?}E zcaIH{du{T?eo&IgUYlPCe*4^#x1rNs8^pafBAm4mwr($VC5e_wO7bFGgqMU76Cy6) zK|4MVmK6x5Ye{+?qn$`Hd?f~czb^u!qx!)T;#vyC$WLeh99mt?jc`~dbQc(8?{w1tuS+iGE+KNns&vf4drcpi4v^R*RRy^q#08{=@FI7qP z_M|VHrE%f{m@Y|iOA>w90^M4!{j2>Zxze~u!g7*po1f&$T95=oLw1yc zU9{s82Oh8G6ICt&GBUzX6D5SN(XdZE=yH=Ch2?m#O91priLe}fq7q^)<#;fWT9bqj z2~*h7em~*9-S7ir$-u=n07HOZ#}YW!k3GfUjCe} zamwI9@{J<-hSB&9reg?6+JQa=(ue}=;_?{Mmlqq-!pM#R+!q;tg-GhhK*|$J{{kp~ z42=|fv53u|a2l&<>Mg5}=>)55Dt(TjBae290rWQtVyP65?lIj7r86JyY5<*w(>~6J z@-bd`;Lq_FN9X$ViPaiTS6F_3`WH;K2Gf-=`pjmoKjn*|bJmk++RO2%E~Z5+AKS08 zvh2RFb{o>&2)e6J+RV5x_>Je^^E3I`(yKtNeUG4;!bn$L>B!{3((h${Z-eCt0Y25y zDsMX~$>tLqhlua}VfkE$tLa={La2q`CCYmDduu$>lAoo*;=`nVYRi+_isIzKWX6&) z_1=)koI3)QX1p;Sh~e@ICHtd?{|TOK=_`0eXnqHf*0FJ8niN5DWD*D>I~+rNInuR> z#03wA6K6d7LTZ+i=>+X>De*<(f2m_QU1vJMG{}d}CsQw3`dtf|HVCzC7}vhg#;{rg zs5EQs_j-85Ng#KJtq{CFj7m7C&HmJGt2PRC_4m>FT^D%N-~TQ*!?<2DejK=7`%q0x zBb@2qK#~|s?)3H8B4i_ka%Hoe$*@)L*e9XZ{wky2xz?v%PbF&A4R@+9oZ5`#)_@|RCpMc}M~W3~D_+T2y8c#E zLqm9R0a4Mx;b8;#M*4<)UO<>%xPNe1&;b63;e+*h^Lf!RK4JboA>m;G1NhSdqWM;q z{e7aN144a6rtzqFSo8pXY*bj^XupX8p+3=ip}~Gp;nCrNF?xRCp?!U#L-pf~_`Fb` zu;9Re=ortR+xk(FgMUC+OmNJ!UwF|sWc)-#h5H3WM~6q*MEOk&jtTIKiH#yowE4U+ zpHMn+jSUH5&FQ;(IC$s>ObwVA;N#Ed#Y~H!n^S_rOpN&kmi_$$qWz+RBVwqZmaQdt z4q?={kPx27wCI?CP+pvgzM-+cQGbJ ziT=poF#qr=(fR|!Lqo&E^ah59#YBaNMDu_2+nn|KzwUQLtZzuLpHslJ;o*}5XxPln z`k48en;My#`uPPK`3LfOAwFS2u|7dUF;VZSM}J}b`!&|Fn5fw37>BUH@PBbcP574m zqXYb6qiD=5`$q*t#?sgZ_`631#|4K31O-I@baBvB%E$!o91s@}!V6)42k?EO9m3*> z|0q5$HrU3G4eh@&%#`U%lQY{)U0({)YZO7QO#m z($vQ|(71PiiJqB>Zy!BVQ&S^7U!OjHdj95p{7rpKear(){-&gfnUP6v;!n@azmGX_ z>+7%AJHXgq&&Sx*)X>=2EU=G>kXwUadTsEFSbh=7KZ}%`i9!{?{bHcH#AT`<}I0SY}|~(=&jxKm@$$o+wN=IVHa%-~Y<6*9-M- zjeYq{qI&a%dHM^K)6Yh9&T7uRouPUesFkd(zR>v_gjAG>874LZ2Szz z6PM&Z#&@mO@hH1p=IP@!ado?Keyd;A!0mi`!nkfBSTO)iMpl+tdockuD~XX0)qYwdV4a=&N7 z$e#JGYtQJ7%D!_VEY)FnVCJyJeleO?wM@ctN1VQr*zQcENw#jMeeJWxy!JYCxlH8T zBeU*-SDY5!*?(bib4GId*A-d$ zT>M~y!speGat$wTkv(f3Cz2buDMe9!!AHBN2N%rPv_3Fw$!*u0mSLH029pv?CuGfu z+M3ftt5Ir~$hdzl%YRliv5{Ao~wn8KA~kymxx_@^~&ystP6n5Nlb z&cX^cwd&+KS&eBnhx3;8=vh2mVQieyVC!X?(X)JWb}SdMnO0k~PR7+4}=_1a=tb(cwvXZ~KY)9$xr4UCK>s-tcd|t#6lGj!f=ztp465wK-4r$o6f=Ov}U^v%k-!kG1svBQ@ek5%mUy-F+_DT!yEntP1}sdQQL(E2&i@57K+M0rvoUB>=l|BZ8ruuV0N#N3 z{U+Bimp(`SahU3y-Gg|&~`2zcaW+O2yeHoROQ6IH5;nw zg#)xir6*)FwG3D)UxO0zhgDTz48W=V(Z06MIvHC4bSxjO#@6*|B{o;S?)9H@;w_1aYaII;Vt;ySb1I6680``2 z-y%yKIn!Q{>6)#NeDBakMaVb&@TZy(EO@va3ig|kFfd$1IzUxhs_`V^Y<_4Hj*u4> z@yko6E9!ARACK+nRLXdg&_RL<%xP^3x2|260VqkE4%cNJx}vFX2kH%cKX`)SLvOmp zj=Y%SDYEj)Auy5E86>&C(C#S+(!OH4V$bVUz!7al?Csa3m4C~JP#xm^MuM}=AxUFt z$1$Fc`9;Nm_YCS}JUF9r(0E$kc22VYzwuUw2)7l~fweKxt9eEFO;D##(F6WlndJkJ z40GrhH|O6An=ExKa$PPQXWr;f<~>9(VQI`ydIpzO#Wh2kdI$ElbE?q!AdeKH%0E2y zocMj3U4Ek~uCsnnll zt_Y?mv@4(BEsjl6OOHr;>z=ikIjQs2!u}VznSQGgw#1m(BVy7SOn2ANpT>ti~&^qGmZ1+o3 z@nRR4n@);uo5H98m8+_7?F2Gt$#d;K5!4r@cs()7-SLp+JGgd`rZ72Bi5*%QU=QK|#q08re(CRBYaP}r+dlo_>Bo{rm9*RPIluyFU_{JU21?!b}dy1zJkr1 zYjOE~M*9LYo&U;nL5a;WxjwGBnERr9o_wuJmty_uFpVEK6;<;_`~d*({bf#9OylI| z$oS+@Fy+6taHowCd8)Sue$^9pd4K2X7Zvx#z{Lel{(Odw4T_O98!Bc?=DmODl2Twu z(H+EIpYW_RVt?Mu^BXen{h#~{6fq11^ijO-8O=S z43yac5A)}|sIh_*rbqb$g21lT^G}he)!F5chfzB=hbWFO^6~7H)l(dcfi9w)9=7`d z&2F5RM#zM+>+hzgAcTVJPZ1t#d@#E%!resPttn);v#}JQKBP#Co`pk@_vR^Spk+6e z16;Ir14Zc7b?>cF@)N>A@M4cBu&b+ma)1Iqa~qqsIYB07P8(c2P;bv{ij=ju(9h#~ zCJc5s??Wl6bVG3SFE@()vfsVoo*Iw zx8Af0+3LCF>7q>>0FMDtqhCjHIcil9B)JN9@DCRjO=gTAqxs7GC(|&m5P*B7wf}1* z5x5>$dS-Gd+162}l)Tl70^p5E=jwP^E;?!jkbkAp5mXH(#XcsJBO3mkg9qVt1^}I< zEJdUMB_wK@_jeT5gcl4)mnOhE;kGmD#yAO>Ut`9_4LQgp{s;~BO-{Zp2>zLFdc_Z! z+W_LL<}Auk(DUKw@z9j3xqK{CEa8QMLg@YoCb{61jHJ` zf4OS1P21rAsk~GEX&^mzVbdQERLK3FGq!_pNOiHF6n_W+k`iOvPV+HwqT~l-DyU)n z=#y#2eueN8%$oGF>#9hPi&Y~YghsBK0Rh+;qqgTVz~r0;Vz%!J*rtX&cD1xO5g2Sgp6Z)eTMMYDE$*05cAt&Hn%_tJ-D?rjMUe$|z6 zV4HRy@9OL&Ur|$!y34!`&O`@{jxrcFn=*;ajIVA6h8MKtmMY{ObZZzzTbMgnl31aA z;(8@`b>#x~MvNF1)bV>*Z;9iumOq+c1V&`om;zP`O;6C~n69KyYnaA0pCM|iq@i;) zEEoP!Jq~a}rZY6P@d5tuG4%Hkb>#6VU_7bYP9fmIL!|GG&O)z-6I{#{`+T8$(%RJa&W-VEC8gwX~|I}N(DK4lZEYIk z@8OlV6jf+3eEX$9baY!sw!gT-$j)v~ZBypRfg>V9&jYteWBtqrdHmb1OxQlt>D2BIW&&UmLbL8KUI1?I6-jt z5ffCK=SssNND3#^R5>ak!~+A&HzN;x%trXLRH_)rq*whL zN9CAR_17|7wcIh-F(@gC=`-m_teg<7T|}N6JHdC-txkD*Zp2&SX8wF4=PcTK=l>BS2ZonAYg=Vwb2kBsj(Wyxdxp^>2+E8EG5 zZup_ECMn=Q8(V+wngfQ;o9MsGsoUomjk5$XKf*Wccd#{IuqnagfnT(p6vZvc3d*M3 zsD&}}Ob&l3$Kdyk_7j)M-+G^kKleH zPA*>2auk^p!ea@(-7#jE3sTL(WC>TzcoWs3b@3$?YzvtZssauSEQ!W(xZuhXe5hwP z?w{2Yba=lk74w7IHJEXx$6Y?CN*nMnYu^vn>v zk}hG3TnfSlD$+3^(<9*~&R06RM~cL43(f6Qq_;xid9Z#}30`Bnw~=13l&kblVfK_{ zxZ-u7>DB9COW$`!@osu^5JIcY)EN>)I|-Fo{3b#H`0gTJcO)^0zNdjNKul9yE8f%o z7D;zNBjfL**vNimN7$^{hqMCupU{CP3!jU6I`3AS5iP-DF*>R=qwK*@~{j4K^-$&f=-h_ zWMrw7V{&`&4$!C0YcLtb?4l{&_zGD_-++lxvn*~-Q1DAQ2{+dXw%{0d3tz)Cg$eo5 z5%3&fx&Mii4I+b6SYI1;X>K!>W>=gg1jN9ELp#FGfm;_Ey&^QzH?7DefE6a;`zsL<-S-%x{l;)zDLb`8 z&yUuxx9DCN?}6F5!J9;J#-1zyn63NXUmN*V$8n72RFj`AWhSBd2yo*q>0Bjh*wSku zXKOh*B1GIKHU|<1PZQ&vuZ+kKeAnpV{q6&Eic2i#-K`C-$P4!RAE#ez~OUQZSgo2&8|b23nEDW8A_Z)_x_oRhdq?QB$4k}Q3!w~Wa8J! zU1g05UV%l$Q`CF9*rEMK!>~q}LW%gn0}jo?UeWZ}m#gzR63ij6tHIvr&}GOgKPXAy z+v&@Bb;yM43p645IG<&sPZ0LPAjAWZV21K;@QHLoBZ`h}_|cJ|1ZusjF!OtpH(J%} zD#r90I}N@g_oq5b?m#Yl-7xE=cSvMVSB*tvb|+|(H9|sD%}bQ>Yl*>J14pmEa5{WdG3L}S zL;`L%Xh>?LWw$hP2#YhI40qtcMRnklDX8S%A#i6)4ZOQ?^~)zb4E8rx+6$Z>csQ(ZFFE-0Dn<&=#Z z9E1hBr}L&UPlzpc$6LO%uu|bs-F8Tm^Y~E)3XJtWjsi>l7tMhIPoUonvb5K{iI;+? z0Hx-=kgxPy&6C^*8rYVmVc{AR?h%iSV_Lv>z0%VhGEIY!du`~KqA{HV4{5XpmUR1x zeHx-P%~dt5*X1irG~oUjJj_Or`#S94mo}sKXUXt$fg^ zqfOxt^5g@@@RtWClix8B9IEqHrYyedG7)}O47+Q`B%g1+@HR8s_GrW4nJap{^{-x} zR%ppVK?^c!o!boTXx=ZN)!pG_J_tq_Q197{eNx7>&<=Qm_09^+hD~F$NmOWFSczMVR@I zTNf&nYH~5Vp_8%rLeOG?Ad3;S9D;Kv)*A9TX8>*jb+tP~jCr5X1w1#;qYufX3{kNN zo)3e@FRE!Nj`u5-iFlrGGPa^mcO5d`;xSjKg#SC-bLU5L`o7#>lYv#~(DlvHF-bJN z_^tibZwkU&OaR~+c9~5EcMAV}aQ{%RQdWp0D!YF)xGV=gzHj)VcPu=1A$ia=m>MiZ z3SSU>Q^0bv#*~(x`T?xoa+pGos(6?#Z5b;098Az$m9KSF_+-4uFZ(7g1ys%q zwpnD}Kb;0bIraM#M|YycwJ`EXRu>_CsEu?bal10NPunZ*#dz3Zp0@=|g~%+=RSA^o zqxS7bq|*gc7(Lrf~q7sAMqpNZ;B6Jix z(uaOYF6dL_ByQGj3?e0IXpBE=6YmdB^+t=ZOKlErL)j#LrCxV;FjMFMpBi+52XwX@-6h`fkGoz%R^qK6KsGVM?WV?N9dmsf%;z}6(EC~CXZ97F~eUp zqmUcrlXe>|Y08^lhW?uIB-fI7e9pO0nh>!}?b#{qXV<$%S%UzwzO}5JoAs*4F>F{& zViXL**Y@T)_SBogFo~5WXnNOuBj%@3AhBc!qOGQc6LDcGnqOWQ!k2w72wf=v*xh8x<=c!V<2iwtW)pt-#yC6 zOG4`M-*Rl@x;_jPSuDylJF#w!41$@Ww|tqMmvIRu>dQ2nmEx#}fTa>(#V^XhjOJ+y zfNTTEpdEYRDqj^&au7&H`gn~r6$(&Az#ryOy>UvOSgx6m8|Tz06Ig=awC9Ov6~~lSU2rTuu_Q4!>R0cv74Lx zV#o?CsHF^~)@~u}E~Lk21*m`NWJ-J0f&Lg57w!{J>w5rBJ@ixLT!qY8<)1zyl9SWf zx1ECGa3s#sZnuq?v@d|dXVh?aQiYpZOwy{~TLo`Kb=anPq1zO+K!gCK0^_#;Zdh%j zT2N7`)mCSxXO{_3aU41J8`GB7*EJMShw5yTKxYJhi-- zeQ7L7SfYJtq>`?_uPvpcW^z1ciSiNc@yeTQ1Tx;j_lJUl?!TwGdCQ+9zn@QQR{9>$ zW+DC6`yjb6_I5ZdLv{d)q~G+%6hJ9o4+YT;SPbj87XRGPZXs~K(+|#d(JeZ8)vWKs{Y=B{#$jN;v!@v5Q~> zlbFV;#L+OUKPx1wGN+rHwFSr!tmko5qnjJFE(kc)|6eYuS5!0_Orc8M%gIew<55@E z6$&L%jXWJRl=a*n}+PXWglvoly`7{6$q~OH+nI??wDf`!0G0!N880a?-IX&IroRK>4VY_%H_u6@ z_>L6HrM9Fe;@z;V6S@eoIAaa`q^S58CM4lKAe_tqS3TL4RzSzuPCKlL%U4-)sHaIv z2emoLbf5~jSKBl9B@pFDu(OpjL~}3b>j!hE}dnS;<{46tlStj{@13nRqCaPPxMyz4(GC?vH z+MxR?eGw8p+9 z2N)Vr+f4Rx3nY~;gHWD#Hl~mO_BaU~+De1Uh2Yr49i$vxW=WfnqBff>9I_r984a5Q zBqa*7k(^m?p4M1IfE`xWqpyWV*%UdC4RD)1a$E`BbZi$C<=Kk3`j)pTXijmso$@cK zv|AGq&s3{l<5A@l``8hk`{hU#&<|qC{gDLyVV|q0_7n;YRy*2{gXaa!@zOcInPC*5 zWz_TwoLkB^cPH%^QDB)>y(1n!(Q#)Zkk2u+xEhDsV*LLRJP8H34&cG0j z7?VyE0U9fXU`$u7<){NgWkxEa`o#31c01^l1a*-~Mu_QMEUfPt(C_a2M#mTAFU8iw2vS!L+{zS`t! zcza??mnKvCqR-4$`t1~hPF=;uWS1Kp1)!O8e_1CncQ&56>5KWatejp@T9k;pj~!dJ zijuIr)|5QBgFbI>peBag?cj!+O_#1AxI<5sAw(jC_>QZ4)o{UGZ2X&Y+z=E4&V;O@ z>pQf^7$K)zr?kfA$0a^ivs#^5DHQnr!bn2d1w%+>U@>pY|AdTH8^E7o)>AJX#1k$>Jg42~eKb-fU6+p-ra#|xz59n!S$sg2(n;GGp*{`h%#jA(i;{HkE{!(f>#9r#7 zHaVEKv!|wZl8Qj4rsMvH$%=n;7=Px-W!vv>N0OL+VU62tby)02# zp)zTS$smzh>;~Y=XT|oMAjRVoUG?eO-oB;H>~49kd!5hlB)S8@;-VzJ?GP23UX}b~ z!-S(#?3a76SuZ>_#Foj&!IkTpB(E4S04xW~|5yeAJH@Eu`b?AmtguDi0T zB`)+y%18GJ=@6#o`n+KiZpELX%eq3Kgmy;=lWB{C!z$)0Au}K zE^82LT<5%>=D_Hp`C*|OzzI#e%w6yvMgT?Cvu*G1=Cz1qUE_c$biB4}Ca})hR`L;A zS+My#`5ULwqelG01t=euh4D|MqGu1N3}50&3<2@g@DIncNb6&ws<@Mj`pNbv3c*(s z#53WdlxUml?9vdaU!u=d&aML*!O;8hX)y21KZ!Rj&BsGhc)vsu!_k|kd@>eN$eROh z_vhaj>Z&)pXf^?*z4C9~uN!3^1>+ee(yDoc$5$)i!W%cM7fGwsm!6RIwS*k*6`7ob zK>wa>aSyM^T(bw|iP#AADcYbtU`+?hbXmW&cOP@eJhTa;gv8OAkSgr3UeP;f+tGs7ZG|4ouS z5Z-Pk>b@7iKZ`7S4>nq`CZEjXKDoV&C3WrGVDxO}b@C3vYeOVORTw~J^IcY%K>0e; zF99I8Ec^X-e2|i=p0(kd)CX>cxh!I}Bw>*0P19aOA^tk%E>k)D)b2 zXl7RQ|H8A2^mf~RF#(Q;znwk@r_g^y40H^VhulL`{9b17kWb5(ulYC`1;v8#WpAkm zgEq#NcS8@n(@jTGm?iO|WQqT2KQi{qWSew!twlCN6J44aCI&%b&Ba*=r-DQ|<#oJCqvi8^pZA2} z%*K73luo+9tPZM7{N1~GSN_Lse_zh27tN!uj#;J% zQ--+6%Lhc_gZ|T#jx}~&?@Au)LCRPf28%x$l?N1G7nJ6oJlu+?O$V?XOEZwLzzx>j zBY;wpprXNPw<}zQx6GzqfC(&?e81g&j=63s#-=~Hj|Zr4ZuL`Y{#^Q*dz$1>jR4kG zc(G!P0XFsux#Hj_J=PdQsm!M%H9g0;>kFo!I0dJzeLp^%SM4p3QeGgE$#ywV9XEP9 zSt-#$dLx+stmU^a3(yVMq>wz+v_5#2c*QNtCmF+yVIB}79WB;5I$j$A>BNJ(9Pa0y zwCsXtXchXqU9tdz`R?4sfZFEsmraMl*SGix z_#jXwzwjYNZRK#WOjlC$dQ1c~nK2MtS%>69nQd?w`nW5>m*TKn!kI)zd#u~0<?2>8K0Jf+dSxG5k$gH8;TnIpv_J_n-u)s#-s;G&wuF3ShWdc~Ajc!njBnuZ5 z{Uz;Z_tj}o(PEWQABH?TL*GVfsINgDaPxp(4@q!+(jxA|rRZ##ss)VL@L8L4KI#)T z{J5l5@V^-u3wxSz4p$%EBwXY0s(|4;h@+pJq7TLPpcj@}0?>Ph5*N z9bHie9d00^&B1hNjI0!ngi5Y)oF+Ca+b6IsN0m;V)$*w}*7C6nhyB_;0GiB8rZVOJ)`dym8f)0^fo7Tp{om#(8Sr6+ zJC4>CC{vY9Y5==Ni&|&t4w5-y=72&^ZuZfCHB}7S)s-*c4H*9iVeFUZA6MqCHlGqn zeH+T|cN!RLX=$}kx(>X=xE?l{J~W`_eC_Jhl#q{?E<`KVd|P8%1J|i$c>lbl_e>G{ z=R1BfMm#le(gB1m(eL{DT$Q7+*#-<5H;ONR!7$mf_ft{Dkl+qub{q)k<({J!;!@1M zzVMzFgSawG!mS+bYQ?s`SB@{FG|r4A`)5ZHO6Zb=vK%+SZ^zWz9!qf6`Tc^Hq5mqC zC=)a3xX^6*C_>@PMRlg^O!+1%v|uyhulwp#pjS)Ek6zBRe{#RIM6Btm&WKpG33@dK z$}Usk2In+FVd!#Au_ zG8V~UzU)2SBK$KF+_Ip7{hAAyNm_IZOG4|tkYdgK`XtoJ2xFhzIsB@4RR+ zAPkl?ASZ`%;t*Cu^BT?WmWlP&0rP`(jZUlub)2nRCg_FBr4j8N@LPhBNCR4##wh#ULwKXjto<;w-8?NLG{7}rB>3D|&R=3hKjg~u$FrNVro>H#;5-zDF}#}I zZnw2s8pS-s3D&7#u)e}!9Ga`5*{o^_FST!GTs2vl}^f+qSgML$cP)vt`}ZHIfw> zWH*C;i!Rde+Ho$6G1E-#pkbkOwG2;|NAxSHj+8)T@jb5+MHzcivX=8-I2B2?;y z2MPm46(K-t*SJu?#%GTW5Z@!~pkwBG?}@N&bxo1( zaTm(6t8$vY6q}no<1iNimH3Gex9FiVg#9`b19YD2Qz~8lERR(v+?0r*aU8Q4`Ibio z{tZ;N%P|LQZjvV=@H#^$&}5t;FrJ&DW}~6i!6g<^p@cUiESiUUX$~mNyRNXj&L3su zmJ{Z`Hg_lYSr=VX#mfIfl1$zr1>NcAZMd~jTBWi9SMBDT<|lv59ZE}xiw_pZt34y^;g z|F=e6a0fuYcXQm5!4Y&vQ?ROKt;+DpjEHF@Uc@&YpU?OiNt&QkTGhgqc`!PWlT6@j zSF(3m(AS%pNvcZ`Js!AY?cHPdUhfJKfjN%i5p>4-8x=ZfcH(Os89+fx*F6I;HH)fa zH587DdTD(`si7jkK~*ncj)7b?r)UdEKTF8e!CgULPolzu&OUus}aCCp#} zGt2ubV&xgX1u07e*jY@kCd$c~VMN zlstvs+<~kihc?NlYTXrVi8*JM_;Ce>LzRv+vWOaB>kysi*E0mA?g|s&rto3|u&vGg zV_>#wgzZ~XyQRmVMWU;%W+Z|CR=XF?N|~kpiCT(nTySIu6Dr$Hcgx}l+E_hQN_KUN z)@NR5S{WteI1xW!z%V}R6G81)nVpt;Mkd@JG_8*g&S&d}-s46w7+ZIrZ*ch}xpLmE z?vPn>HyNtW1`bd;-gU~}S=a63JUFnxCV;}0`s5$ay#8zB6~(F-Da472#3ayGyK&j9njQ2fBo z+*`1!)A~up^se}_7C!$u*k~a_{`A7NhoogsZM^91)Rb!W&m`fhy+lzlf^^~s`?aL0 zQuKg^pG-h)LBzk<1M}B@`&sMJ15~I)VS_#O#kXg76d-1r?Tvvtbg*tBUNQn*cPHB} z=ccO#R69ESFELD=@IH276pJzXYs`Z(Hn zTkX@x=H_p^wiI_o1cQ_QBu^GRk*-%(8gqe|Sq&i;tgGH@Zh}1c@h{bdHkqx!SN87C z4e6sg_k19W?id`G`!%OgmqA${)5urH?>~Cax1pw@K<0Pz>uKP#NXpMPfw94_RjA*a zoFQg1WZq+(wRsO3D+*MTWC@t-$e}=L&&$N~RAcVp}&WSVUct(aWWu*RCcAAVK?_lD3BY*B(V%{;t_0~S#IVkF*LiyE-21fa`l zgqxlg!!+7X3<=w{vKSFTN>6#8&)ZBvOOC|zZ`^prQXwWpVj%s8^*S1|YHdxWq)Zu- zTKtnRQr1rKaEiTPsEQxCq)das!_bhJB=h(5B1gA;k?;u z%9(RH*X5c@(FL5GD!S|AYjxN`?Xsx7K~JwzkZbyp?PmiJHh#THKaDb~UlcSr6=Z)a?qEGcX#_P`!@{rTz;y(=E zI)ejpyCndYjYJ&c>77LVWcaB!-*eb@I$y!z3YnCz)xY4SD>V{`qJwPIN2m zVc5k32wBpuKmVmy`uUAj@x4TeglwS?y}Mtz(Ch1}Cja;S-uLD&-Ny zwQ9KxG^k8_#EFRf0%MT+qGzi!$c7|W&vp3HRfAQ5MU>fcT5~QRP&USLA9~kL6tpSg z>+ip}k0dHmDNJZ^l33d4u0JH|n2o0w+(KIvuu72c<55$$R0 z&Qh3hUd%Q*3>(06v!%LC!}Cqs&ZjPnF~VC>w*lx1OGlwgw|MS(+g*6A%(tP}jDk$^ zn3{|eGoj)V{}}$eSDX61|8u85fP$g353+Cu|87to<0yd(JZmF&LF&@ZbduQ(o>4x@ z-8@fsc4a`8j)a6uPt&<*80o?^Kgr;n!_XbNAXU#D;4nxdQd!Mp3ms;5OvJxB|CZpe zd$wEK#k!CzWV@-G`E_*okB$3M)l`=(Nhdlgg%2B-dM% z9k7=bW9LG3txg|cdhz5 z9D}Lo?JrX*ry_HRPJ+43bTz3Ia`$y{Tvg#w>)vssA^y;p4c3i8?`kJ1=Zp#RU>bcH z^#REaWIO_`tObh(tY!>E;4X?rHUV*#D6pLq<9QfYa6@YMGyHh%8VcmVyGX~nDDWxX zo5MPS8PTex8S>8LDvn7G{Hc;$|kjIe;gwGygpVxWlH4QSd(SC|HQWgqQO?2Uw}trbwul#p zbHVkbWfqdwg-TgCe7I7g5!o(7UpjCTL^MRZy@e>()J46zoIDbyzwoa&pQB03V355H|YhB!_tFSokZ@e0y zEQq))v%#r|ICm>T>Ja{P6brRFiXiBO-5*e}af038i&@h$$TXAV_PF6!Spz)TS{VY` z8(hec$(aov=y8QLXg&-Hy9IDA&pKj_y@Gy_g>v&;bp?DGR6k_$3$^#Y2JAz7L8B$1 zVgA1g({J4icL`n$^9sTa-J#Y`l#aZr9Um9ChBH$^oNwijO$z+|D=mrJVU=Yd0q;v%(VuB_td2D-K9XW-= z;mvlEup}_1rnb4cJTHC5F!!Z@H%G~J@@I!O<}%@($1qX{LeOst^CnmFYPm%E$Zr~V zr%mU%k~xL^_B;P90()FGs6{mEBW}EsJXve`E|mDvv0oZ`%L}3|0^Z%b4avhZF+Z|X zN;s5U`R|#bx;l93E}Uw~*c8FS}khj+C@=G4P@mKpSL2q4g9I>3kWgQ5Pq zXm4aDA=bPhhn->bqIdtt!Mf0_%}|_pg=O%i3)oTg@Vh?DK3+32xN0 z1{pzrVUwkmsMqknK98!V6|#5hH57N+dGe&}qF9+(e^9{oDRMKpk>by^dr;XJlE93; z!|}Nzn^v4wRI$W1wG=g+G{5#9z-e~9p0OIdHR~pqD3hRgj-Tv+5mw#Q%^*qMHA`tz z1hEYT0Y;%H`gzUX$9DrpYOB4&LV>%NdHg*m`qe)t8p>CSL7rj{eSm404-FER0Aa{k z%v;KE1blj@-{TvlgI1I4&jr$MmFT$)8ubkMy@;+1l~$0EeZ3os?bb;aLK!Gxhw=>W zl_vl2bgOB;)i&W6MNgZ9#@M1zfX`g8$G2gwaKH-QjgwN%-uDnE4XCF~zqV?fw9Vm!lou`F6O^4>Jq4TJ@qJXnK$;>-%Qzr?m z=}bMm#9$~)Dk(}Hdh;}w)qRGNF#p=EPizz(^fZL@=i>@(+qixwKjBMvl9z(bvr5W1 z=ww63^}^!Vm7Nvw%x``2Puaz}HP<7src&O0IYzzlf2Wh@;e2nXQhWh^acp$p{yqlR0 zgG@fM$G=;O4BfyZwN$VGIr2q0T(7U-QKRvXB1hAA%CEiX-zdt(`S`;hEGy8NZsW;{ zq15a>p0Os}EbvPx2TN?(h}#|x)}Ni5_)=9q2_B=R91cij%^-kTf{0^;V7!+P#WXtY zW=av|CxS1b(T|~@4}NE*OdzowJLZkTicD4>uqq3$Hil;r6yvaah~sE;WL;K=I`X;) z-l>F-CGOkL<0}dFR^f{9W9o2>ob^pOqU@fgBbv&HeTVEKRaQ7nNQT*6CoY$OPku@~ zZID?HRTfo!rN`t#cZE_)YKpn9>m_r_=k>hxUN&w6dU6d=mexMT`_-k#ogLmHNxaf# z#gm>xuFG)<=S}unAAB8`pqu(Lgm@Yzqqw|)WP?OFw8og=gtBDHs zvmD0;Z_&clGvg|g0 z^nt?6HpZMT5}ZN=@DgvD3&1F6zf+HdSP*}u#)l28Olh1|io#&>o=0IT9l;L(za4PXcwLP_@eIahdwZrrAxl{DCj5(6cp@38Y(_#V25~8 zsD@`|eHCZI&Ft^%ux9+}YjHKoxt1fr8rLSQ zVIJQQB{Z!x205RRj_p`T=$z9rOKGl6aG$rxXVa#`XlZ z`qGNixM>Gk|;@wpeUE69;{aqF5`X5lKaR?c4t=t zHl9{eoj`qddjJJbp5Xx+i>OW#M9G5cp&`djH~$e1h#Vot!=dC|PUWM{f8Fi*6?++S zl1}(US^wlC+RlnksBq{!#M=4gbqN;q)8rM(jG*gn5BQ#zY@CbkR z-#4UHn>lcAk13-4T3w-Cki{(Vr5)ZtbXKSImnUAUYZNf=7Qu+)x$Vo5p&dUu0N`mjrSb z`lc-%dfjOFHr|}&jAuwIX@S1VO2auLZi^&aoIxzbHCeG-uSf{yWhI z3xwFC+7~s~cA(CjDRdCMj^K;z_lsIi>hk=V^V0ZE?d6mB zDQyRs;|upR^QrA;F@r4bAfMX8?=;0HK3p_4mQ~`YtD8h~{E9&47T~rgTIf*-A?)x0Q}y*=+pbLEpk6ZCd_(Y8q-?*8LXl!g zXk`Y@+kFAK zLX-k5FW&lo$$y&PZ9Ao#oGJR+>z>*{cd)Cu%;-=1UJs8i5}5{)H{;Bw)8!M^gJF{+ z%V*CSlY5Pm+g+XxPz6zFltq8CC4c{N7v>Uk%7n1A!lK`A^V)0PBisqmNaKR#lB6LW#GVezA|^)_t8yoaaa7!BScF-4v-U?3@zEq!^1cFzG76g42? zX&qONNW4e978gbJm7S+rKPzVU%PK++*iUbFPK(6@rXJOQ#HQMjm5?I@EiNOqCJA417l>W|&Up9zc@2>4B~E2}G5ais?)uzdketSI`Jb z@%GKvVg&nTmr5Nq1$B_;d_SMoY#^DQ@m*F>w+Q->si~j**ba1Ms<>@F#Jh!I6+lIpP6~*SEJVrT>Wey*4|335cO-xDt z^ZunOZ7$Dp|JE)vj3eF(z%T8@KF}w6U351;GHv&Fj`iADKyOeG|_AX_S64;oa`!?znW0J6gs3hkrlM0*1R_SyIzEIg(0);0QL zM^DSe;2_&D#sN&VYy93@(!@d6^QM(ONM;f~wfq_-%f%xv-y=*B~p8_2?n?BouhnMxb_APe8kk`Ak)^R*-NoZh6KfV>Az8Lsv-Ty?+CjkOljNW&Q6pxs0RvW zhYo3Wxp#H5OBJaUMrAyCw=^GbXi2hi+KBSX{xOMV^?j>~nU(h$B$P}7FQ!{`FXIkdO-UeZQS4Z^ ze>`H2bKBn5ScA}BkvjnrYf5aBOW_jt9nF%G4!gy z?*pXNE}nnzM5E+jaKFnRnw4^Uus8fb!Lr(ZyY+hrV)5!#Dv1q1=%$a(sLG}CZGY9e zT{Rtr>fk?j^eY9Aq}TVyCz|`vr-qPE32jPMZu}{_8ubT&8xw90B~bZ8*AolLNT1fz zro@Vxc=`g45qZkB%&AIV)atrIwhw~EJ);2=Oj*W=2xJ&l8qk9yXX2z?o8@xO=w6$H z$eY@**A%z{4ixIhh*2mwuuD*S!d5q2JqbW|twJp46nh5jHu;T?- zO3PJ6({6gAh=`dqd`~R|0A3wRrfqapc%j|w;l~@FeAEk=`&ohLY5UQw=~=3V9?F1VMDCP=I`s9(T~s|2l4$v_kSxGX<9tFQg8Bqg?dBwpxNjVV zs>plW_r?2(qW@w~U%B_e39(~7w?|;fWF;zC0Bjp;;+D=K3(>}*th_?O_z;BuX|^q} zRLfh__CWy4>3(g*?Ml8@o5-oa3`1D$Fzhev^I0f^|B8UPp7|I233KXUK+1 zg4c_(e`TGKw-z`TBkNS!H8x`M|1L4ijLiAf^t-E*Q`U#A+OB{9V-+5a`%nb4a}!*S z=Wc$K3t8lK3-S7&4I>wQRx&cF+6=&I7HUax-k~EXp zQuqRIl|LQj)r1Ci|1PbFN(Z96S7#$@#~Jjd2>g&6(p4aaAw9@S{oSGmN;UPJWPjJ% zq0C5}-dEVeog~O)?fk?7f(~2El{G>xj!jGKWS{`=)C$|}eXW^>S7u3)-)OFo{ZQ||Gh=$Af(Q?w`yrLs@U!O)4PhxQg zAqAF(R3oy{Z@JsaCHv+fXy>S5#M}VPtVe(9~B8@u~DWy%T}Tb zHh|G)mTaG~-6)aK1`6NiF5Lobge__L(tH-!PFaZdF%n>cLTfP1nrU5t;>DyG3?W9@ zKVvme?X|``!LzLaVHM6c1VOH!nOYYCm`&UN#weMGuq(mfOsQ8M8IG~g7>;?a`I56^ z;>HBcv}kVKMZ4R;kylyHoFpPVNcj4U0-#RuP_`>GuU6(j@3B1i&qOEHOO3)?-x4*h z=1=2EQjHWF@oq;s1ZHC8HgUw>b_c0>H`$MZT^$x|5@XJam0FwkE&vs z(z{_*t+4Ner2HEZ$d0Ob61V5_V#`asH=I-KJfN2vj1!B^&dR4I3%)6C${gmvn~TFM zZ#u}5UA`h577Pf~ocm(b{^6L*j-q==xZFcS=RDhZ{pd$m_GTUe=7`vS!ybX-LSoRb zIs3HQmCwL!5d})7>y)2FNbz7x-V>nq`@HtM6ww>pNc|z{W|@pFi3XrlJ718d8a+;; z5xps{3$7e+K;&x(C{^l*O$#R2cNI0nYEVQ0i2g^v5@#|Cw_zNK(%cg7qUjlp4Rh&J zylv@zm|ok4JD^fd$4=*$dez)cBbF3WH%C6j4)1yWcbMVnTB@t>OR~qQWze$B1{WfxW3}4 z)_w}i0L}G&&50!j9Y#sd+iz;Qv`c&kiac9YajM9{M*Z7$(`;uVm-tqd9_mB{i+3db zG@HY?72G03vh<$F3*z*uhgr~1B0C4(TF(9G(wYVk%4`sMs^W@u;Sm5Z71;?Qha)C9f&!XI zsA^J;4h9Jvm>XpQFG*qk;oXwB@cK97zuo%&J%Xqdp5?Mpr|)LaVtK5Sb3-cLb4S6B zK8_-%rp_w*AP)#Kzqi9WQ*9to#;GA6VmN1@D{T1Z)i{U3iLQNKvAIhE(V_ovHXwVU=&BaGWargn$Wda7q7zr~~D|$KuxPSam0x3{^y<70!skRGJsa z?i&js*8hUdk|!B~w$2m_N9|r2ZR~!POwPI+luTk_np~D^&R`7jihB+Ez*|8R*XDB~ zWxm%h%x_0EH~E+(qw>EVG(7;J>R^qvkXBEEBLhNAhT>8CgP+|X@a;^)CwFh>>V;yp zw(mX6t~Qz4MUxVf3i!G%DR28MCuha587B){8?W*zSH5f`q#{vKTY#I?u_m_aKPH>g zcsEAtcW6vsaYAOYhC9yeFaWh1vz4&}S50V&ED4T4nxCHvP)`{AO$?8{*~oew97C3H zAHjW3Bx$qz^w4&C(o((H0o8F^+d)S1sbh&c~Hfsq72 z?GJJDYfR9GMYFM_mmN87mp=!dgk4;?h7Obf6O>y+PLe>G;)hW`oO>;AMfA@^fZUoJ zmaJy6a9P;oM!q3W*2_p9Q>wOlpvoU+QP?oWvFl07eTjvN!=C~9YK(>QfYQ4(q<3>h zYIS6i-H~y2f`b;ao=j#YyNsxm<2AU%0*3u=pipyJv+$(IV#nA=n(6S1765{TWC(~| z9tK_8TC#uH*+|i00mS8In5WHf3(rYLn$?oIAsrK~!#@{G@btx-I*xp}2{q*rnd6i( z{8(@u@X;&cVvhhwrBtq1c<=3*Kpf{^X{`SZh;i|0D!<#E{fFxL_DE|Rp#c2NW9H0b zM038#=cXCpPr2Ubt9_rbPCLqoE?+sVF3Z8*}XQ}V=r!Il4f^5RWAT(yo zcx0vHSwPg$qZ*OmCxno1cMWY{gxW#&?@|(q-VCGBc7?P@;7==l)4@li@-Ft-p-Ys5tp?NB#t$g^(=iqOtZl_ zurpA?#}59+O1|N~4emtrW`&isVj7`N4DO$YEKq_~qmi)x*N>5{#5LUsj5P9SM-? z=kDM9cf!z2Up+8(X%$5+N(eh6Ba9of<-i~Td9(!Gz|Q9l9Kg3oUx{;tD-pE6r>FkZ zAm+N0l6N}PjJX(di*Bi%Vst_0N{typY1LsgQ>|2o4CFJ%(qdmO)sjX0BLQgSf6{|N zZM0lL1zgp+p_7jK$#oMj{P&#Q1~dNY@H6%z{Hhmve`fC^e?p_cyskWH9`w9jU2B>F z1D!)0U!%01RaTttK^fT_XZN95hE#nZl4_CE%{qt6H+#}kn_m_-t%8+P^?gH_b-lV< z+03%n78Ln5!EDd7F4G30_$2UptDccLao}p-Q z?JS+S&%^HoTKG%g6{%Omp?=)uZ0X!^^(cZsD|ASle(J*fk_8~(W>6gn%1-V#0|~$W zB?@X&lR)>e9f<=_WASX^#H7zj0>90lY6eP}oV)Hks9y%V*z14F)nxL#Y(aVRRkFk4r8+&i82{~{ek}NY+0M*-v6-!#5-SoJk!UlVDrEBif>%L8T^S@2Fqy9ypWYn=q{c$^BQ3zihE+?JhzY0x@FE8+a*6ymS z_)mPRaqA`Y3>QRWaq|Z5dFUzax_S(sKwccIGowP`TJWO^86$`L3{Q4rY5)bqgzK&} zjaTE`hcgY3ik*H9xtP6;^1GFzv4?&rvf01uvrTV!G~%muOm<{1vC;HT31CzN(i4E> zf10N~Xk7c5BCdrSv3TByGEd3?0cJW1tJ)D2R#X;OBbowlT};gafRcC$*RQLU!oHNg zWF`cFXsNRlfk!_M7*xz@EXYi7`M$SzMTp(%H^7&@u%L3(#v^ePFBVxIW zpKFlAdftk1n$`9dolAIj*aJ5h-vmL1&>Qy3!(cvCB+zEJgS+Q_vGcAy%dWz%Lsp3y z4BX_Q&jc7rYhtmtTmEU>m`1!e>7>R*`}BMi zt}Sgvb}*gd(O!Op6}0JQ|3h|6kQ2BZ45U;m%qHWnL6}T9Cn+SIMlu0uZ?Wgj*j!x6 zsNGAdp&}hdGbBlziNAtkCq=S=)pDAi_Nio;13+_TIH3;Qf&tl_(2&4cD>vKOm#mg` zxmjHNE$1Dz6*DMklog7|@0CN-;OI7YO#XyKtVg-KL+D)!s)hxB5CA8B!d=`;gWMH2 zkv6Qjw|Ra+ZgJbwx5SQE-%^!D!PL4O3ZxX~3caORX7cAHL04fwhg859ZqR(I=}xb1 z4SSlfcZs1zkVy$zMS{hXFoi}d3^7W{;iaQg)pXxA?PJ$U(^%EL=ZZea+zLCHdImiB zC}w|^mx{yt7mv#!!i1i}*_3y$V+>vheeZM8wPNCd4Q~`iRXA*|$-Dj{+8& z_g%QBbaAs0V~r8^kTB+>l8J8ae*Txk&F4uX&Z>3tEMNFetq0$Eiar|it3kZtlY^$L zAL?6OAo$3uGo~`;j%52HaN6PXBTM!)Tz%r%=Vh^q_IR2xvpL)C|B+HTwL1seO z_*i=-E6p)*X5O#>SK;u6&C-XIJrETWa#fo9Fw7&B5FTz>9mo+}7swkmL0dm(Ufa#3ToP=pL{P5M}^o~GO?;&3?sTEi(gQ7A_ITN-&|YAgg09DB zAjnUB6X~_|=UvxZ_pv-h3D<5%bkTk>2W}Vl}(a{ z>pcU$Pc)H|Yzad7H*!!UE2V&QWt3!i`H(=W@d@Py_J0O`rlMg z`uLB42H|AmxXj;7ih}8<@e%qlpl`q2h=sztfa~D{3fVgG2c9bfK_{m<;5@D3( z)Ue|#V6{$$HD7m!Ds=R1)BtxxtB;eqSrf=2tlTOo(k?_$u17u;Zf*Q$1unFZFNCx) z?b(wnHNX;nCy)Kz36&8}E)C`o}7)ofQk zdL7w9xzxW4#ynYW0oqM(K9l_XWmS<|CZNWZJk0L~Hd`q2LC(x^yCCSuNEG(y8%L@D z25fR7*3<~-i@Xrl(xOxzn^vNU?jr4hZ9nJc9rmJt;zyzvhHg_}bH+N_I?WLBKbJ6W zBC%c{xtwk;r2?8ZXg8@(_%gCRXZnsMULdnQ6kOlLc1-;U7q%AzaCf8y>_Tg&py&Rt zNV-2Aj>2+m^!Xf|1-qBOrJ)Q!tD#d49%c9b7t;c;aS)VJ!&I2W|Ip6ht0_qNVW`Wf z0q^);+mx^~ZcvC+UF(!0vwnTgJEvJdwD$}p#{|j{7y(oJMpy-ZK1>#YRQEZTHIzQA zK1tQr((q-uf^)>c^u%FnqMl_*y<+%=)WiJ1)YPk3y@>Z-oq+qjb7IHBDX`|H1~b8m z0cd$Zizq2`VXj{CXB@4war8D>kzv!JUJYfKKA&Ik=K#gb75a81h{AGif`1-r<)iJY z%tfuk=UZi_M7!DHPKzxX5es1z=#S6&yqmtI)@qF0+2NW{@s#t7yR zs5Z;b2S$CoXAzl+VtqmE(@2VCX%I)7X8)tLh}@9^_Ailg)0j0tQ@tbLZn^0;0w%9I znr8Q&%O1~YQG)2u@`*-P&pehK8b__CO(Gn*dK8}?5+gUYkFmB^LJTL+po13h?s9tg zXkwtDIX3XmK_jO`v|})a2=v25cdZ9#Z_={2jy|qGiTPrRWj8U^hus< zXa>rTU4;%2nTY*R$1%7l{mL$2Mj7OrFB!{%x2H@jKl4s12% z*Vu6J8Qp!L`$Ts*X6!?IfLj`sWqT@?Q;? zCgWkCIuK#JE>bF!W#^poB0vm@QZYMAm_o10;E*Lum^I@g^u`n6QL(Hzv^M@pBje@E z)8~myf4gW;$L&OMkuH=_5R7K8b+{`QH`^lw@WbaTY2mi8(FqX z&%D>FJooBLB&%xcQnvhFdPhhN@fbsDTEBA~AIDUesPhrZ&Cd?=^@w7c;De1#59_(bct7BX*rXB% z;#@v2T@KE4b7Iaw(kLuLOHw%r5%~<#bmY>#bo46Cn*_dcyzSK^g#V}MLr2P{$iJiQ ziWub3^EyaIZgltE~M+ zJOg=j^>{C&FrmqVotc||Cu!hcnzQOYM9Z1aSmH)qsZuH$o}ALUcm9Wzze>;YFq6g4hje?a-0 z+L4K#W6gk{7IunqV54{YvrhbU*DsWcYFyY%DYrNh$#LdDfe(btfv>Q5ziMC=+k+nncke;v;C2k@p4B-s?)jndaPbn+l0CxK>jti=_lgofpsvvXF# zS55HtwHJ{L6h!k!6w+^?fY`fM8ZJxEo#vJXuh&rx?RY<1#Fb>HiC{jj?+L>E8yVFrvP$fa^(1n6}kT*HnKY|$2O3br%X ztJX(YGLvX%PUA<8hoQbG`al;k-U2WR5WT^O8B7&_{oG~9ARp#tv#Z0_f+jgjhcn&$ zn6%U^x}7yfpxhUd6Wur|m(cXirq}WTVXxTylN1GTp~+k4h)*A7A8)7BD3HJfQyY|DiX>`t@j4o*8boN)E$kHt_->wMwuS}Ey9TaDV!$55Ar_3iOIlBcSKG;=9sNZqYvs7(fYnlSawkAwSb zJ~&=|;*5~6MOPfMmJ&+{4kuJ1M8j?~qRF3+yBtZ+!@Y|uU!|KI7OR{eIyeUaWNLlv zpyy-naxt%k(?Z*cG1Y<(%crp(yXvZ|H^fLX7dKJF*B}3UeW_n&!HP4GE4lTjrbRi* z@yl&lI|htkzep8|wAMle(34CV9bUY~-j^|K?EP5D5@c_I!%Y-D8wKZ8)$%neBAk{H zF-hl_+AwbrQo<0Mml5Jol8Z(vhJUlT)LHzZ^=iY4l^bnN?d-4L&%p!oSzH0kdU-f3 ztsnD$dfQ%1Ly{Nv7Ybl-EoUdwjYEX59R_M8pghTNbQV6OqD=!9IH0vgSX-h7Y|C=y z-w(`%jjH{GCegs5O@JI1wY2c7SA?V<8p_E$4@sJ~U*Q5mD0Ov6E9aw>o-V8kJIcQ3 z*{sY|L!sMyP0%Vgq5oS#yDLM6v5-zYOIpXSsig}tM4+OewwYsGiv1W>M-ZB7&7K{T zh!(8MpnA}h2rGDp(~YuczjfGuzhNOV2k>?^ce%;I-2(1eP$FOfRU^1UI2BI9xgP^V z;T}xkrR*xsr!*>5ofGDPpEf~y7Ztt-!55!UYj3CMV?ow?zG20<5ly$A)cs=g1CXp| z@^F86uzI^qg&*RyyIvS-`9Rd^twrm0cU?>6-#vffw3Lw&R+^}nfrA?0RCIo*r}hB+ zv^(gX@P<>JAiw>aH#*vi`zIrAcZI)s*1GkWL5*$c*_Cp*MGQC-#J6HQi&;%amh-AL zei+nbP0;7>dyj|z733}<3;nmhd`cQ~UUxRxh(CbH4WD)oSTex<$dH%(uRv!R-}rLR zS6M5ZCeLOX!-Vuu-(JBe$d`|7-g@>Tzh90oy2&M1f=H?zZ9&KRRJ0d1DoXZpZ~0TbB=vF?D}Kpz8U0n40v*i z)BB3eS|57=(J=z)=pE!*m5(^`r<_?*1P(ZH^=34@$M(MfqlM)1Gm(t`s5)nx0Es`d z-^*B9Bl~R8Yen7*X9W?LBsFuS{8;+-E;a<>9sJKW+C=LVFWguKZZ?^{5mq^4@mG-3 z`+sRTR|q%3LIjw&S6++R4=C&K%{+9k;2;WQOK*;(a6|YzQSbCqLe+{3LEW&R{$y)z zpbzm#gUxWVM8}17)4^%-S6Gbqp^I0h^V}TNV9{`+YWatEOFv0z;lKLmMKtsTLagVbU{x5Cmu4+;u|zfr?PU}u14Y3SQhdcQjz^TS17Zh;j6j)R zJfk?Ul-9RWR>lPlRP6*_Z=a`BFV-*%-1t=CJ6^~TODaQ{@#P#Y7(tl6YmKQi8j}}D zD_m$oa9r;&1`$#Ei;<(^Y70aWI1&UUeB*a=m!&lB5o;;{J_(rpZzY5#!kdG>8mU`{ zqzS}R$X6>wKUL%lDw}pMbi3+k4+~Jrb$nF+AHC~_7L#K*C1Z%6TU(kIxQ0bj;BMsk zO^?e1KLf+)t`VMnTZ78QhePEd>eGluA3}+xJO53xsBt|8>1A9lSl4t&rx24zInyV_AZO1$P}wj zXt`eiJ9N?t)io%wleAh{2dmNwYGX*3EU7ZHO2Ba2?6f}8b$HHbl28u%X8d`?I^*mI)0) zD5Uzbm@TTV1i2pCDj|XF_q`tdRvK$O-;pSt23koerNK9eSuSygF16uq@roOzq7nr4 z&6HUhgEoVXh*|S6Nm=$?p7xYPY&+vq4|bROsW{>(7|cTsb#9&cW--p-bL#UDBD${D zdks^lbG(<;LY7aXSa)Lh(Qq`FzJ5+1#|JA@r6(^HM>o;g@3H#|AWf||Kv-9r5#L~1 zmNp)RazD-|G?F5C6Mjsaw^j?1+Ti|FbNKKq z=2}8ZRaIZGb_Ubvw|ay9oA#FGuJx1}Ohb$5|2oA^{gW)ROI>oqD-#{+JPjB71R-~- z>_P_;0*WF#hx-k#ZH#Df!dd@F88xJLF66h&sbX0|Fuk!3hE`dP`&*`w)2gRZ^BH(f=+4wVTR@lkD=bidCKe@#z*k`Se6B zFs6EyX2b5S89e(Aj9&gyw0(}qbkcE z&|cbbh|u1J>)m<<^f`xFSj}+xFsiv02SqwK`fhOR)F4WEOJXClNbrr8dsyv|_a?UI zy9{GlCpe~x+f0NwW{Ov5ol~L@z{qpU8RtPdUbsY^t=4W3I`k zpWqmbyH^L(8!v-xIDLL}xhmo0o5Nf1?C*^H)cWL-fMX1vr~k+>HDOtuF2jF}oVYtDdV&HL ze;JGy;Sc!njNXowd5+8Vgi6(z7BiCf`*Xm9?hPW6V8U270u z&>n( zs3A21gq#Nhga-$IGS~7kN-q#nkP?sX9NL0BsF>Srrg46?zVQwUJ2sa_HtIyYBo=^O z1v?>`$6t&hb4ycLx|x+2pUk{wnW=!I;Z!|BOP*qD0})Tul;{r2t1oRYhCiC%syKKl zGz-rsI)V z&pq*xZ*|E-5Zn{|@UGm;VB&S4RYy!Q(9|4c%xKhBEQXPjk}UZO{%OBx!zYoqml5LB zqBGKfn&2u`E?ZqQ2}?(_@X9^2USwLi0h{^0k2>r&a0Z~n^?$UW)*j$H*jsjg;B+~R z71yBC^WZhSZ+ZlufHyT% zB(gVno;ohnchT{aKODEdQ&37EU`hOFN&vaT{{KjoDMYfh*sE!;ZIgc$Xp=EuZ{+Bz zXANij4GEif&AJ!_YS|0ITTuqHA@zNMrj`>EhEvMNQd;+5Gx0^BTOS0EO==bqzWd&3u=1MD{OxqgLYxtj=nep#r5v)Eem9BruF~?9z`i} z?%C~SC%ZSfm|1wDfq=sEpn6Ld+jVSB;EUlj$vnWIZxl+?Hd;9cC$eBOf(AeE$Wtr* zyoZJuvJ*onkBUa{dy62i_-oWw@`GId2?2rnib6qj? z)cJRFFg!9+pBZd=6_9K5-i!dXJ#w7F=4hLL%&L;mr-gW8f%klQ$wi^5oqauU3rrvM zM>PyR``1L8g7uGRS1`vf1jf~g5k1CWr#a6maThM%+!wZVD;~EOI{MR5ips0ZqYV0P z#kMtco1h_A;y;o~+n&-R&VA3!QpCG-UI!4ohV7YG2uEw(ikmDZW_^T zd|$!!Y9cV*7iX8JhcM_Eih#CY)e!}Km)_+A-ro!C*oCk58h6uhXFx+5M7G8V-<;& zKQE>KqZK{W{}p?7Ufh5Ag+$8u6A#5whihskGpm#VdqeSMzNHA2akA0VUwVv_>X6XA zBhohh{9)4&luE+mMq#BliFjs`{6Cr8VXLqycLI#{S00?zjHXYEvd}CJ+!>u>6;QDo z`gw}5(wEbRt$8MPwZx!#OiWFr3|UnAUb%btyKzUcNWWCu$EkPu-L`B)!EVfl2BO)a8^9ZM#sf3<23V@{fE>90HJ~l_ym$n z-HiRDqvpgNUS$n*8cApT*$nD}%0GV$-KK36QbZ}yvT3=I&4O+MPUfRc!(p!plw%=` zUciNmKKBHF`VoGCTI?`5`f?@iqi*w*N>Z4||FHzh0lOytzmrE*$IX@& zMJ`>CFo(QxL^dJgC+EaVujCYm+6|E>_4A4S2Ywe*;ctJ^-(F(~fXE;Zs0={1&< z8P2Ep`bn{;&O62ZU(4K~MY_)Oi#+8wfqep6Res*UN#H(c^*r05mS<0covKt4DY`YX zGv)PocH2@^GQC6v_S}ZeI&M62T6NDWV<46wUsRrMS*$jvu0cMRX@~iaigv(czuR~L z7!2GnB#8oX(|(1Gwg&jh<;3l`k&Ir#{6XgTHKQX4~eiu{pPCCWus%9OdPWSIIUmo@H8Sl#f=Slk>I!;$*@ zuVUvJU}jP*d=HA$GPpwnQdf!)=GS6(uKFGP9wSp)3P&72as_XUL2?)EQr;>vO`or( z)!TwCH&S1H=QoFgxugz1xe_Irua(xJH4xg8jpe0+2xkgO&+sL&U3jx-OD)hbH>=@Jn9%Ky1S& zo(xWSthnS3%&|D$M?Jro#VoEI3F@@qO4?z7TBZDeC*2EFhtP_qB$-N%Gn4OCcudVt zC{?CLg?`ljZ<~eXCLi3En-`Ze3%eAtzoXaWKl}1#YAS4eL`NU1Ay|n^{|WUkRVn)Q z{dNq}e*yWs9VW(|DjH53ipN~RW0-HRX)&>8xUKC|0_m@>9XXc#wk01g4W-6n2j-Vq z2o)P@_5^A@u#*s(cvhoR?#lhui9>F$)?UY4y~2)8P&_j)dC1cRIkI=wZI(HI%){t% zj;qsmHT29)2L|y^N^1=nZIvSytqL6=YWk-}V(H3k_A&wjRyf2*zAGbS$+H){AZN+L z!8C&WyheaM0qDTkE6JzkyG=9VW(6TOji3e2;|5&i`9sAJJYs zl?P82y)UFT_R(ORey59Ql4Zr73T-8gb>LbHWLZhIgih?=z`Aec?b(nGR%Smdl%(od*h&~C3 zE2X3^H02*W$)8WMOu-?T@d1h}!`$%b9O#N>=D`Cy(w?r|ya*>9{oQKYP-hZCCNg+f zZ(+!Qml=-vJq`7#{m7j~O`e#XJHFl|2Y@{ucqG?Q{8Bj%-dAk!+~+^LjY$I{p@~h0 zGJCuKg~&;uV%N)T22dLb%TB8ox4Q`M*i_3#+7IR_b989`8}M?q?U{ywcF*i6W>;9v zNdO=V?Zxx77?lpX(|p0`=*kSWUnjFf8)EuY#Kyebqq?DniZf>E#Dw5<8K-pvGcN^? z@z6&Mrq!M5i1`}BlD42;cAn8}?&)n<)Bi8u5iX55_}`N|d?6#`UfAy@prqfYFZPkk zow%KfVuZ(|x`f6JV~amCv*BPK@p~}jrU6uFm-Y&t948W%Mz$eJqO6@#YX&8)6Z^ERGi@6JT#eN6=|kiFICn6!NcpZeLrXL+7P z{rR%rAkRuM5kG_C7;!uJF=pJ&v=E1!<7oe>;s#2!w7!WUDgGCyESnh_P22zj5(<5x z5oQcl4be#v$`ni60z8Uwt0`XS7a@rrp~Nb@-?7|#toJmbdzg-U|2XinUI^iuG`IJ2}D&V zgOjHo<3WWeYZXKgPH6vE_Y#%kZ$DNWzATbXUDKh4D z#}hs%PAZj?6ZDz+yA3%Y$;i`{2ucQyYN2)wc_*)Hw_5_c zB~*HK_-R6G+B5Sgf!YGK2@;ShSw2x<@f#rtm4UhwYv^NK6=g6G05myeQNaIpZp7fI z8|q6fWReA@aLn|2Fsr{q34hI#B|R36d>|VwB3G2Se%A~CKBCvrWWP(A0JMd z2v4GvX)gihAa0MrBNeWph~Z4)uH5Mg*{&j5G?B=zQ<4*XJL|?#i{cpej2cf?; z$XzZd)Q)CTZ*gG0k+}^lu|RAn!-q!l2)0MD0|nJtR=cj{TFq}97C)0MG*DM~ggH1N z;(+ePKOn`_>Zes)HV8goOWKwO)StkfJEqgbdqO#l3xs8773#Rm0>7^zI&|W5aJJM7 zSjguQ_Nsm}QodpY7p>ZE>jO4*6+|a4wUy2EgK*BG$^o@WX|mBAi$UzVZ{F$%!Qdw> z**NAoc*Z8VxqkFDAno1)p$ro@0(p7wPU)aMm`Sx0xDx-<0(mq#mTmW8^Yf!Kk%!-* z9uk#I6s?NMbR>cGI0PqagPTAptxZM@T6N#3V)bPZBlK6^Y1f{yOtqvJu7Lj(SuYP4Hw9 zX9Yi^6={g>zX|bZ3ATupjh@F^ay_C5c~5nGMb^)MNYKah`H7mma;p+q947qr>=9=1 z^swY>LGKFYeEH>I&D{_v#}xeKvOs@&gzgg?==ZSsPYU`E5k_)a!>UPc(Nm?&ok+1$ zon@T-{evH@Tm2;hmI~spe@J^j2>K`4|1w|O6sADCkK|69928p8mB{a<6hRmz7D4!h zq7mSn?eK~ZG`%>L&>}MNEEPV=(`A)|#^CT=+&uK<=+eP3M1D#LIvJ)H&&29ghFY=o zyh*LsQ7C0h?RJIgmW+M^N}^Z7;0Pi)dAnSOaDv%2LfPCOB=Xc&^L9u006##$zc-+; z>Hso$M9iSxRS8B?0c7%K&g8tp-{lFQxQxu{Uk+x$`nL>>sfWs~&xmfQ58UrY`%RG$#R zEpg}%i|qO~2({FT+CT(|Mu^ec^JWwafZ1!q8oee*LY0bLdJHfJREr_dQXNHOPd`B;^7PtqM-Z&N!M2 zF7Yn4*9(_Nt>!jouM-IZ)?qSnsS7Hag~cSaZvsNr2{y!9-AyQ8B6xv0I=vN~J}|gS zDatCr7NbctPm$vvfS2JmestDni;O@0phFEB%|S|(p-u~N1~8`V>6!$yMIDW>ZV3DI zrEOx%8{VKh2Zw@y?ZGJg@5Mxc#|e}#P5t{~Dh9+nu)K&zLbVfD6cC80^X$4zxM`_| z3e8bLjvJAq4cm{w9UBXEMz@Z&F;lJ}iOBm3kfY7^@DwEwc!t}X zyG6JLE;u-vDx@`V4kdC%e@YQi+wckEcsLq ze(#QTX;?Y(9Ta_`LuoN%?(X)LnkKTr^}G1;!&WS=6h5nnSEZ9=u3u%KMrdkEj{2UJ zq5bk;>t{DouL7?rL0}NVrR4--jp%g&R9`&i-kpGwcs&B|(K`k8-tFk9z^9Q;S)eMp z(X$Wx@I}FN8mWL1qG$Kd`_nsuvRc4`b|N#Y4!}>b!gN%bow0pekeknBg2 z-i#wT5gkEST<-mg^6_c4NMkBuYEn-oocxKC6@i6KaNrE~S$^1#hr5=C?I;r3W!SGgBod~(k+|ePK z-R|`Ni`-Ugx!q&mXYM4><#At6sqLwcjqbR|P;aF=GJtEm`xv zfCL=zVnEnxd$-6JI<&g~f$88~AQBbKxZm4mI+Iy2qbXzyaI4W>9J4ObB?igxZ5|t! z@0+G$N$p|roftcF>i?X=_mLwSlW~m>ajop*0$6T$g#g$Jy0yW?9js20n9S~Z?0$0Y zg+8yuxZ`MQZMy|N{_=w_0m_?mxteqwvFQ0lNO0Hwsxr1<2R&(I|!9!(w{uP)aE zly&ElI)X}?XwrEvk>FDSvJesB-CRbn~g9FIKccizkOE35Gs`>M61Ujo8`BR z35Z=;8Y7W3h}$G7y#cx@Ir*FMhE#ZhKiO>I;Q=(5ub)_U-5%G_VX2-BT>=0JAOu7C zUA)nYx3T~K`oB?wqIS;%0cE}X_|rN7GO82XH*uCedgb@hGUNl;b`v_Ot=ms{MCo4> zFi#a>Xv@XkiB$io?H!S$ZPxCZP{n@cWSAG3YYk3!vMF+Uf7sfc)w0y5c!^B#t^(uW zv#A+6D{{W-sQrl2`!DDBQbE_4pMkVG32{xgbh;yp@RL`M# zB^zRsgwH3sUYGq$fUx4<<*{ivI4MBBJR_|0F3xl#h^PeJJ;=X(wVQq-#gT~6p#UqT zTHcgcvHv?r8u}rY?eRL){ex?a=p7=@Y~NxP^*P9}2uz23q1F`KOZz?znFwF+r$9Nl zAvYn)y+Dq>10;kbHE);qxOqD`=y!N{z-C+5REVQDLj2Riju9&%VQc*$etBRCU_l?m zJ7W4{t(Md$l}LO^!@`)5meoS%S@iGDR+-^g`m*Ok=&r>Io%79Rh`);aUq0nYDaPU5 zs1W66rbgc0&xH1h__I)3{1Q`&YH1&2;wS#O-wB$46cHbB(>Rk zy@vqkb28!n2(Sz2w1}kwCNtu7*Q??97sJr?30(3cLnkBfw3wV%l38*bA2vCXLO=X zBNTs4E1@ucp9||%zlObzUF0pHq0UY(oU9d`Mzf;{-(F2}KI*$G?;Y{b6E+p5BS@-Y zsCTAQ^`KYoh7VOdoP@b`7g2bSc4B5e5)zJue~jE;`=^zERgo$ras=#ti-0m1oUyB) zz(fMy(U7>LNPSivyuv(=wgM}$yv5>1-fFdf38nhqOY>Q(Rz4xx7Jy*ZU@0H-vAouC zU>K`OUW0XzbCIdk=SJ)i5Q@*5Lt-&MSUfS>+a=*!OHq9ILZkNz^MrcTPnm0Y!mgws z5rg1*f%&z77XnxWa+u_wU2M4j!M;>R-`LyJ&j_WM-!>AH@eWY_P>I5ggFY~psk?@R z+!*(gRpnN)#_9k5r}2ZShEvgbyQW@~%XF_e5AfLJKx%lBHFq;TLes87NHuUf?+NHW z{y&l49J`=>b_2Ha4+_l!eyv)Wj4@wCCA}FfX;g zzIIs=ZU2eiQ;lu{WCc1-{>A2%wk}HNkv9xv0M76+7l!kN^{ZvAB!C#d2JGhy;bFtu zHb~<&tDvK9q%r0*e5Zx3IAGJvq9>Eb|n)`Fsq!GQkJ*Nj`u-(@V8D zf=&Y2+D#t&;MW&U>zJ@%CZ7Pw0|B{U^GFs`mGVh@q`8`&`d!sX4$i(9Xgz}Y% zrnSad1#TwEW*aF~yu_+ii>vSB)lJ}P%(4Q}yNQ#%Ul*^ zGeS-;`I-$ge~&2rDo%&9k3vk7`q)Nzp$QgX@vSygU{_Yrkb_ui)_=Pd;&5jB_W`pV zJ^kNe68{(WSE@WDK~K2FNg#;)h#p#)f}CoQ2~YCjW{oC9|D*mcRG)p`Vv2UPpD`o+ za!rv^_cCIy;{7G<9E5*}q7VK05*II=C@xj$R~1_Oe<>MbS9&76BF?RK)Qr^=-*J8X|B5VO_bV7~$N|h))>5daY=Pa=mA1G=?Eh zE-pWOsK7Zx&o{0fsmsyAv*)5hcWbEfbUnfh@g`oXRvL^1H$e)AOWrZco#ZZ392v8> z#(i74m~B0-L<l8sP8dn%q0DI`2H2x;$W(TviremVPUiSof{)gC0GWnrGAWO-&;RUa`6bC(jT0t zol`aagCG!I6-AX(IEnG}?ip_n6@~ZfFuSrnKz4%ULLpt!;8_KCXpjo zXxX4|;e+h#kws4$AgmYL6f_TJ#&LcF#&wc=`cSNh`H|+lM3v*e^Q3C zfz@YfO1Ux|Y3iE3KYLz}yHts)e$ON!J$ZHXs2dWI;R!6(@h!H}rLR)pr06|wLL}lM zj9eL6rzyNid~EWpydpzhOEFCX&E+m*;8kguN9~+6WLJ5QLu0T= znnEoj(Ioe>%J7ObPo{AIj+3cmxj^SE_w$ zM8Qn+Z&zmQeCV6pE>aa>>gE?(C}AdoN#p4wtkJeT39%8Ck*1peCD7bwikZS9{*aPc z;@BSX1$+1z48~*gI<&v^Q6y7}3Xlmjee=R;FMhoJXkmd^<2i=}7k+@%pb4jdO0^f+ zDdBKJSTR}H!s4!$rHh#ZM;Ze9?OjYPZ_DrNkbCChNWXp~*xK>bjeVNcE14~^DpxF89 zIS^7OI6S>Hl0xLAWCgpq$q6O1CU{G*2a+&dH!j8ZibFZ#g=n)nMcjZpUsgRr-jfNZ zXzF+XmaU5(7hcbLzjl~~Hk`~y2c<;~%>aGObQTqdq9e&_xr%vtT&&F>&1|CJih{_% zvV=wpD)44nvI~;`P`Ox$n#66WXuaH9)ik!Ao_i(P&;$_8G#B8_|4H z|0-!qvs>hX{frq!E%pJZh>n|x@G8?x>j$!MEr*=J6s&kfuaTf8N`m+iA?dAWjt;yz`xT-Dp$g$`Doi4GeJohx$x8$v;fAOk zrH-zRE9~7_U?A|JInj;pmp~B0yaq`*^0#f+52L_wc&#bj1aVh&untgk>L5heQ#@Y)Czd5($ZjRwJHPkuSm2;0h{R@#6Z!wVKL3GZX+iZX=h7PLC#opZ5@7 zMVgF%PzWyr~qtcOQJpzPHBD+n%Uh*HV zhS|~11fBRMIi(e0+!FAkw+bDL!xL&)V0XtIAc)py)&Zt=9uaCn07UBFi@ENQ#XgWa zjulaTa_BV{AH6rbEk}Pe=&awa=g5)>P;#FC!r_-7=>Ok#icz*N&XTPwVvP09DJxYl z)p5o{OXWqG(4Ehr6`6`AUUR3uV8*)wi^sCQfKHVkhx*gneT>?=dNe~=4gLOh#qB=o zIHn0|VCj8ghjJS3Tz69EDbGZ|bl2--^=7gAE&UVz)poG3o8bxFRz5rGVV9>AZ}V@& zkF|PUiJNamO2mtu=yFs#df&CO=ry0lQB7z5-8P7MphJIM;<2EjmWw*m*Z#NrHItZo z%rrKd@2fH4O{GxLqUQav%kttuA&j?Fr1401TO06%Mr~8DUI`2^Js%@{m!VjCukbGA z5x0%%uTTFPdwhH8)1{Fx7ccIm^_}nOy`q#$bxh1G)0ae?feU*uqNwQq{ z7nOK=-OwJ>@k-b=7ltPDTVWy{X}T2}x&ZcO)>7i$1<0NO+fiK4r81WnRUEj9oG4UQ+>;VTaPk%euCfAbKdiE4FNp9RMf^Ko|rP;jbg{c-cOU}OM zmp72uC%!!8oQh+zLpbRXb-B*I_!g|@fypxmvaX3h0Ql(AK>_LjcF2k?;aKe#T*(aN z(PkhAOZ7uv4>Fa4FPPP}NK(v)hpv5L%Q|*d*BJCT5F(8OU(--!sql^w#Ue$}27sL( zFkmEiTvHw{mE=0n2-v}pD#*X>p|MVdI*JE@8~qY~9lGG%@!HS?qTGT|N1@#b)VvPu zb*txsEFwL^AhnyoRxT`tVjtV)#jdSZD@{36W1T5BoUW`)vfLmty3Q^3w~mbT zD}cxJ_K!)=`1?n9VZBsf;m_2S;j`eKX*G}Aot8ndS9%&8{hR%u{p`@&ZZNLJ^Ag6E zV{JF`+cUo!>>-h3_Ty?N!!S&iw>&iQ8t1L7)dOMB^W_ zq3dt{ErRr`L`1nzL7|*;1O*6meAxA+0X6ad6`ADQEfDjMaNY1)D2lNjE$-cqzF33C z3#g38S_+lDVtX?EYtW4!1g5y;5|-Zg`s3R@@&7p3ee}3O8vFl!25jr z`{6ED6a^po&Oy#Y>;4s3L>^0YDXYYmQpo+KrNVZ2QlEp4V~6Xm1G$!kjZj7S=_DYD zwmt~}SK<_KJHFWOWYw@If(#5*ihUdJ_a{+)PgtU>Jo@kO6uLA5|ySnJzR5CUmnRTb?W(SK@ z`9SWSO1CfYd;JyeYnDe4dV#G+odTK>@|%G&Ba}-7Cpd@;Xdt)D-STwVQw$&_7?@%ERWe^%HKuN7b973P@! zi(-UPltkP>`~VOMP$uj87LH0sh`)QfT^FmDs1<3;s(o+&!XW2nfJN%z)OK< zwIe*S+ZX2!AEHv31;4AlY9Yj~QV4db|GgU9LJyF3WmOuB3?9qXd0C@AJg1lu&2mwf zj&3y$?x;h+B0sNfNSa5G&^5xTQKb!RHl|^B#}Ng;GET*yIeqKJuHy(*l6oR{vF4FH*snIQPZoJ{8qtLunY*4kTk zIgE`LEY^-K8aCVe!|hMAVubZ3to6g7zn(kf1&Ivn#${+G)z@Vdz}wG*G)UGt%$zMg zBb+T99P`zOx>vwk%#OKusd9qnNQj+az7x@)>?Uz&6xz;urw&{pOJE>@4&;+_ks&c( zdEVsRtx%&o8DxcxW~~bbD3HVirXIWf zm{Vd*mOai5JplR*u^}q{krCAXxC+5U?$0GvrVja<-vk$l%71u)Cb4ivmB)NNQVD~UCm372|3}{zTKQZL zcWRH+m&B3FVm3A#Qg(@^SfBh^OKK!C5$<0Gkh9Z1#5Zu(w)%^}cbW6dadma54mM z&k?m1abz#(tFYZJD(U-S^TAL%8~Z4B+0%Kjjv$f2nJVbE{DzfuN4q z$$r6`$SXoR;`P=ioWJ+cNj&7BAD!kge2daIQYF}jzd*8`L-F}!>JuwtqRsQq0^A%v z>Q&sqUu8o7t1?vS`|l=6b4$-6P6#l*cXvP=;y`UlIV&E*x>OpEHdqAU>!0!2Wh=u}af0xv%+$f;lQ1^^KA-qiyP(0)_B&*Y>C_IHj&b8PrfG)WjUt{qA z0C~)wX?-h<*jEmal}3zN&-TWN(ck$Ia!B-<;7wng5QOwpPpv zK>X8&?w-0`@tOiM4{lPl=l1ID!wRNg;P7N_kXIf^j*Ng&Jq#3G6UflqkY*T8?I}?so|v z0$=jfWNYv{rTFXqnBe5jyOh!y;=4ol!U56lr7lo}XZ1;ookP{9q6i&Ls+Aobo99oVmx zvGca-IxFwO?Kc1nk$*rUt66_}DT3#O$orvIjj(|xk45tHVib|HURPHDB*6OW%-i*F zxXkq_6IZ0>#{sL2Y@mKl=JqIWy@X&GDDPYoy`!t(8ZJIj@9r!NL7cXk>qQ?sW6i)n zahde*W$EN}khA=<1983i5IJnt>vdxsS#sQykv&irk$cX%@qt0>I7`M_Q?ytR6{{mL zrxw@5&ok>x^B^?qB1WZ?s2#O(bVOn(eT$TOu)>!SO$t;R$l&?omry%NmLO%8u^%5P z$9arZ5Tyhnen1N)MSS6c|gZ)bk@g80p8>V!G z%@C4zW*9QOO=R4fkGe9+OS)7MEsA2Vh#P}ZNX`GEiB}u;JtZ?1b2|&?gsLopb4!5O zhz+@|d69#`*XQqktePJ(w!OC<&*p2lbdtJbu+_I4TC<>BW5EMFE8E29NgwS(e3%Sy`1cxIwwK`BckZ06ah_4O6%w%FfLHSDX;0z@^8`68~|jxq-Wj?{ZbjwPvXwjd zy)JOtG!rl`?>F5yo3p1AwozWRlOY#|W3b$nFKnlT6^YAdqO;P;`~w^BqGFXwJ_m{e zY*~>7{PJ37Z)iGKJt+iGo5BuFLc*SU(UL0$5(HkhVF?=!y$PQ0rldk+aXW{N=!32E zumnT(Ii4OqdNq|@4QQKn_d9RGnh^q?eP;DtBd0>bw&>-Ds{`rTuEF%=ywbTcbTq%* z^Di_cE?fJ!{Y6`Dce5RGP!q9U7kEXqYjC()@|dw^+0YFer}J!r7VV zC-!)JL81B9xQE1;*aVu0<^?J-;S8+WeU?!eK^f!Pmyg~F#oc{g4O>9Z1fUAtlWEm6 zTo%xEoNUTxzr+7?r!u_imB&ps4LGrvmQNw$r5%NMQ67&{&x!5j=*A8PQ1XyN18FTB z^j5}w^B;M|;R2y{yeYZX?p(4i7N-gAS}Joyf=g7KczW}z{u-3d^)tUGUQB4CNt4BA zvNWdH)k0ySX)%9Dgq2c!eR8D)`K~%TD<;aBOY(6xw?E^u$Z~dH*zny#WIXj>jjt+7 zgxx~PdgK9J?;V?t1A*2Zd6}+#%+kFlsMvWZLBCUy!x6{~8}7x+5V+K>VSrCclglwt z0-y{u)yYWQC%WO{DZN`v_cUy;z$*^#AAxY9ZjZ4BX?tyuF3d=FVSID!l7;WPn`Pal z%1$4%7#ItnXc02h4Lx8I*XUxsJ_qYc12iIY3SW-1FNYtH_YJbsFUfDj;}(bgAsU$5 zgLU|9ymaN=7~v9C(Uv)XpM<@_Dj8{5D1!K^d#4bbHXz|+pn1<4gaFmSe$CFE9bRv< zsvwk7R#fZcu5A>io$u7SbEjQIcYDeFee77Nq2Lct{M`5qi^rJPCb-MVtWFGdKwbnf zH3|;3Eth{s;pRmNri2nLsjqAyTYZU(g#E$4U)@iz#z7&UQvtHE35h}?)cEq|)sPsR zZBCWLfO}?}& zfjvvH7`H9<*%`N7)E=>EEsbB8ZNwzr49>g!Uz&UQsfiMaKY`XD0sKO`nyxvdNt@UCa`!mp|O(ifWYbW5FB=bq| zoYL*mzZ?}({~+*?;uf;nARf5iiQ?_Jl*E>XJ3~J*CRP5UYUhGLfuILeTf+g2I_RRv z_4p9a04{k0ov@=#hjtpj21c&#$qfuG9Z3HidPH?`HY1Urq&>*q-C@Zt`6LSn>O$(K}3m;}XcXextRh6IFglj;z9JBFCTB!HhMk^FUIlfq+Cm?Gg# zyBveLsS*9wUv3cD`|o*gCwTu?rt&Nt_WK}rG_$(R6^%yZWCQ2m29Q`uIof?H)#VXA zWVZ~v>wj}OO@bG(yYe-TvuD3gU_32aR>fAd(=VT#xQWCI;+wH+{h_@?bZ5*7_bdoS zMhWzz`+lHW`kiOQ$YB`meZIhfk|O=iILZN>ZC{_Ox3Wyn09We$C42{xH+r&r*@GLV zlH7u6!md=bEs&2U0Aj#7knO~c%4v6M#;(3^ypggtqJ1wB#@wJX zh0`Sg*ICF8XYX3k3wh{_JT}DoG<#J~n#I5HIj9L2InLmJI$M33>n*miD2rBQYd)@- z+nCHX(D)@X7-}7!oq$I~P-gt%b;nAfJ%G?o{$kZ@SkC7a<@UnPFot|Frhs-bmDhgV z6WD@PNfEY_lh*`&e~L@%7jl;zTvc~QNJMF|Sk!P4BER@tle@7VYTpLtj}Z*ZcS1Y*@6cx9 zXoidNnRqav{@kuyiWE7tFvm&Ql9!qU$%8nGJwIr>ya@f3P9%24D3=7nIrRQB7>sqV_&< zzeJY1X3b*}4fpi#_vwFlgkfN0&HOrTmpm1 z5T%9Y#&aw3-*3RJak{6wo^8ULOgoSPt}J!;*F%K7&Vuv?1E*GuS&J!1GWsz^%gE8&uq&?$Kwi4B-L)rg=)zp!=7b91a2J`T~JBpHHFLXOeH(6)B z_3cALcBgh!g{FeIc^T-=G2K$DZY+utm8U zljPR{_2Iqcwp!0=sHn*>Y3Y<27y}`P#M1L2a=L9Cb>FhBS59+DxZ3OsrnC+mCeG3Z z(&89*VV|-YWyeC3t|y?;@)?9i0O+{%<#=Zo8}#oxy4^mNT}p<{ywkyy6v2ZxH_Yq4 zidUgM<`dKj@G0r%lDK$$r5|RQPnFfxd9fIv zDw%*a?n;SyYa#zGtZ)C69!QbGdXxd?1GvnJ!J^f7y~r+7s(J@Tlf3%q1dU_aHQYp4 z>hGW)^sYP1QAy}cQ72J8eD$#sPsNlTb{C+<=aZV2*X0P?Wav+ygW-Lvt+KX|%d-ez z=HZIJClF51V5qxIJbCk>&rR(tFs(J`K}#U)>~pk@G~pluK(`svnh~UbtV7)u`+5>Y z``YkN(TBd|_-aAet>=-hB|mWLi!HV!j3Q{$i|?9fIVuaJwLQ2^j@&*F!aX0YA%ZYf zA?KU;<6ATykZeE3b!&us7>Dz=rKZut+TfG`)Jlw@(xY|w&-|defix99TOvzk}U zBd`slD#AV<{{3Lu9J6-y8O#d^vZ8BAf7gPAv3&I<4>rc)I5JFKw$Q%h_Wqy(P6o2__Ur zPcmF1rFNJ>DjLAdV@XF52o1TQ=eF*mj!)g+S6xC1e>*Xv{C_m1+FaKxjRD_-{suAz zUaKvj-#F1jCR2CLs1m!O45|M0-Vf_5CCoWn_aS2V!A@-WUgelXa;etdKUu%V%>N9Y z6E)rD%Uqnp^v#3EW>m?{1LUqOH-Ym2NxZDz>!{vFXGx_KFr-$wMn{s%7@NVS)5oLA zhS9G}QVCLIv-~js<~W0dpmt){Gb#^L%Vxjx`^B%s!(T}iLBi)B?e{?D|Jz0M)g&zD zC5?SVkLu~q(!hmi`G`FK?-;pbou!ZNPN$bLGTC+%Q6zcoWgGgImtVHTA^#H#zSB4O z8~^`O;OT8sLRM0!fz<8fJL5fHY0ApCF2%8Q`%j*rTkPlI9LLq4raKmIv?aU*+8+E9D z8EZNL0ak5@JU4j$Nsz*5I4xej7r?G!&v_@f_&2gP$2z;M(1V4fhP13hVpxPk_~Lmz z*wHB5phq-~l`aUtEm9~@IA*hKM3&bhJwTP4V7;TKPpA%sTeqRoqvYaG+)u>fKt@#F z__dwtofa9q9sRqn{PS1(Wrg-`CUFSy*i-3~31$#m%+h zJ^Q9*$P@$aWwE=XTKjzi9TRb}5TXQXZn#x7Bk6?C#2p-JCn#UY4FIhRgK%p@Dh9-md#TqWlHh1KF zrY89O!#d#{p-=lWphO;;Tx@%*x(@Te#G_~Y+M0bl_T)ZxU6_)D8d%kOv%6pAbZ_0H z0GGk|!KH6w=}uvo7Q22MJ*z`f{^&;?qv-&6yRTKjVL2$2kXW?Xx}sL_NW)co zbU!y=!$0Z~E5m~iJ>W)eQX$*66vlAP@rE$aPpXC^)y4X09x+)0rtd4;i4s%N@8+%~ z(7T;S07!^Z=e`3v0_I!)`G}*MH7hlA?YqNNa_!G4gSyJc9LWaX7JprH=E)a=JB=Zv z!nivp*O>%T1hD~=0Gf72`Oy}OPKMN}I`f`I?P7^ruP*<~m*)-h@x2%h=v{(HdXP1+ zOdXCV-EOuA3PsbxJ?>b6qbSg9OB|N~YPSU`q(vMHr9`N)lu3crV~6k5c1yeZXiJ5c zCou^{kxf4gq&9?UNlhT!>n-7^9p4$*OUOua8TL9{p8r>mFUmvoNSv1^fz2Do8}mTBi9^`Ox5~?7M_G z?JTIt%_Y{CCXP5vfFk#yYFk#5Y~{HjYbXfY=8b{h9tM)W6w#Bt5~2!E=wP-Yw0q2i zgFC|idOWub8#^Wf2|oI)_^tS1k*5hb-r(YH7{I0HnKr_wJ=8pQ=U1buf~ygS4tsd3 zOA99LKpF2VLkRF)Fo7hO1y(0P<%u>ig&Qpmz#0@wY}sDqVav9@K7bUnZM@ZMZl&nd z_(>A=CD{CjifA0K(gq+N8UuYumL^p978;Ni z?^m4BV|?*;1_UzC4i=-Q(V@_f!asDY0yDU))Rng2h>{|)FxvY6L*?yD`VPnSSPt*hu(N>T+R=gV`ONa!9Z@647~eJ zP#D+R0;DEWh1%LARQoo}QtYZXu)J&~k02K8&J&o!MtHMnNLsDjX~mK&MM>D*vBll( zHmraD&u1jd>p`P98yN|us|S#mo+kA4ZJ$_m-NaY@2{0xi`&<7t2{Q5RrkiQwHJ=d> zm6LGF&DINRmT(EZ*%3me~v1*Ii2d)d)muer&Q0QPT@x|xw*9jm%fr6 z_Zo9xgOaBhegnjrbn7p%{W)|yP~!&C4V9SpSW4E)@{?v2!+$XLv>&-D-aCxA9W1C< zjuB0~vX4^M$LxNdu#T6LuUg5o0>2tM#j`H3PmG&U6NDFp+Ay|z{2<5J6aX@Ps+tv0|jTgJHzs6o>yKiLIO zjUmVqR~Mb0pR(J18*-;}dE(M``I#==XPhMgnGVcgP_Se)>a&}O691q+rqvo|!71pJ05Da2O+M^kJ%i!j9*^?UM0A%Ya#&qt=S>nmyxn06Rguu^ zQ@UTJlcb{%&DG^Mj;(gS{#BG~uM_o_+Pr){)`(HVM-Q|zQ7VIzO{L(J$%FVef@+a0 z;RGu~B5nA~EiZ{TVQ5l5uW?G1PhqI>(@qA29`5R1hF!8bv{8US?^C<#xFOu3vds1^ z&I8~!jseb*<~WNQYn*Yt-a&N!_Lz`~E(=^4p^P&Pz$x;PnYy6h^5NS*>L7rTap6|6 z%(CtI@Wf55=qQsJ#RFHi$p>Gy=m;dQGwDZ#Pz$WlUM9cAq%`RU?cmC>b@U{E zV)_wD1B&MF)KfW(mwT?s2FJV{KdxuHpAfJEg&r@-#YK>qwCuP*HnaESEz9+*zzgj? zmFH~lHrx`eB{5z&uI=hG=Qh$tUc#^UW1N?>4&-oi#m!aGChMFf)u$?nv(0FtR{LZwGzrn8{FnEZ-Z@_MDzX~k2}7*j=m)3zvh@`3bE zOnS#R#{`nvnDA94{25)Or*4gT2!PN(>2KsfSvWBJlv=Ry!4Z<)56b7g0(5q(^5-c1 zaU(}`h?uukg})i8IXmGVWn51ik-!g&y!*j8u|!5iT6G*gGa^c-P;`nETQ+Meo5gQ^ zG=X#~k$MCjQv{u+fU(a*P_Jm;D8uoNTMw&;mlewkTo!?-{62+&(Bjj|_=73TR$R9| z(hSnnD2*V5NOpv`y_D=Cq)b z6#^ZdQg!?A-2T_3BP@PcZ}H&|AGLhr#hClw2DQrg-ovAuqB_o@H9+pcPMdSuowVCz z)Hq)owJ7Chf~Lo(cViLvVT%3D*+u1uDFAv6;x{;h&G=7(VKDzyyaZ6fLoPD8Ve6R_ z$1o1s#hEJlT$=0Ysq6j;{>>LKTS^{l6|PVobr~3`=VOfB+yC*9!tTtcr=7u=PiBL! z6)8?9@@C@7$cwyx6yG3KI`%{c(*u)Gd8aUOy2GeK)Z$htad`CB za5K+`e(u6L>=tZ!1dzAslzf*STCdJCKdA`}Pm__l%l#jI zX&Ulk)gw(&pN!r86Z1M%4i`6`Gb32%o5C$*oD{Tb(JK-^D|*CJNz)K`DFwsuo25dc zyTZSB*C&%uhLHk#BR0|mCpRK#vtfhgzeHwt^bF$3sSZ)@wD1u{Kw!{RSr`W}+lf5n zUl=QV;u`541^7@#at*O!+V8h&)uuAEa=6{+ zRV|DieS!XJwJfZ1!JtY&7p9qXJbUdYAX8e3(U7a^u^BbV7F`>8)rpIocK57ygKzV@E;?N#RpC$t< za4O7`xNUqApZ^0{mqU7{oTE(FT2nU0k8*bkZ~%|Pozl6In;3bZM*$#1by%tj|Q`+XUSrJAV99354Sh@Fnm3l zIyx+xg}!-P%7H-R1LB-UKX3-lY8Zd3+}4(cdeper!Anp7L#$9!61Pe*M<}zfdt*!G z7XhEG=u(7A9#E&yB^0?om$`4ZucF^ih6g5fGUMy-WB0Iym6uar@g+-lQiW6k{+q<;F>OuztYu zL%v$`Ts5Aop6Vq!xqw3nc?yi+i&)#Tw!fEh`~84a-8pWDVy-l6tB#v3M(8ZTHy&BL zB9$G~AF;)-UR)oZ&GEpjh+#wsl`XCEDMU_Unt|dC(X*vlscNIetJUvF#CXw?ym=X6 zgQqI>Bi6Y3?YL(yFLFk&)(ur@BY5d(Te z)EuM^b+rJEzWA+e{Lk5zuyUt!C5jZ;$<#5k8NOaq*jE0fm`Y4Feq{tKHS~i4E~0w= zWYxKgR~L2$?YySRw^qDZYO|D{Q>#EJij3?41D*9h%C=`t;WKMH!1CUhMB;4{eANK~ zN@XL73HTYq!=??gV1pkdnOb?VTZZ9rGh4*_Q4BxCUZav_JP1W6F?m2~3+64(yq6{j zHC<>ognDF&VSj)quU+64MxqJ}S99%|sQBRXttL~v30wNROawWTcXf7J5ReC=Vgnp5 z?x_zQU>+;g0RR_Ycq0h~owHn6~2QMPlfy&HI zeh=*K>Z{kexDvf*07XE$zZVtoyQaQ{b(7Rpx?q50^AI<`fAhnqvU!CIO(tpDw8XjM z?OW?|H9;b>QxzWAcq3sDF0MmG`H^J9Z$Jg;;v^ol_dZ-%7G!+lKasao0H-i13gRc0 zEw6{HEPmPh_>@Mh7)R67>FAM+m(=7+Rqdi=J&_3aFZnBb?@kwYurX_yPt8yBNj4Id z=tbIE8%QZ%l+@SO@yuegQ{3j0je#1}|I%dK800805n1cW%+~zke3lnqN|O9UO0Rcg z7E}~MGPGTfH^|xicNI9S1$^wG4bcr0)j$^MH@@13#%1B{0zqlQ@Z>T2W>KP@6BbsR z;9tXwO4+l1-I}cNhYh{@VwxCZdR&38B%o!fC|2PC52+T|tzyB^1y~5%h$R9~8n?!u zXzGyOl-ZceD4vc5blz@|XE`euR3b4`HPfmqrGZvMqdkar=a(PGOTzpLGmjJS?|j3s z-E78p^)6okhIt`Cn*0ccbC?W=kHzaqe~HeQn$K-I)uuS0K73Kghpc1gpXOCKaia=o zQSFXv#jLq{+GeYXN}VERfwBs*D0fHJ2(hl|IhP2ay-yrqgDxk7xL8hq6?}pdeYZja zRTjS>Qi#Q#?o9Bg>KhPH&-ANTx7fS=-4$4fC1UD-qZ_?5v zssAP3Q;8Rmbm+=*} ziiH@6LnZNT5j;l&bFvgp4D6>7d2e?qbC4%Jk1xu*d zz>c*=yxN-X5&7iAS|mTyEG}jM7OJlwcd>IP!XYB9KCO^VTb^-3S4lm< zvNzzh3U$tI&j5BG-x&MJX}a|n{Z{fj>ZceU*e)5vRLndNX0ub?(VYXG6%3)??(rrl zm!|m_`P3n@65j=Ex+WmJD0+}8&|pR}g6TnU(T`!_oZ+EdQaWi{dL78+Eca@R{urHs zMJ!PYCD)#9X3@rVlcvw{i!{GgIKMz+eMK(JnRK8d68dcvFrq8bz|c4(axBhmA5o7t zjM4buIxfi#`5EA3x|ni?Un}+hCQOarhk;gL1>wzsm|^@i-j;^Spm!)HMCwcIg7VK% zJdMyo;VuAqxn+Z(;hC`)kfL+WrIET||5*c9$sYp082)5Gm-Q$iswLIonmQHxTt4v{ zrWG`W;iJl{KcEzF_B@6lnJ}x;7WSFIQtVW7d^pGi2n{q7YAUr8Yduz4KPdyo%X& zc(Z!yh-rS^0G38aCLQE!m?%teZSNzS)Ux=2g@(W(s}d-ECFL1JN8BU+s>p@wo?N`A z+`8`AioBUS9!s)Q>eTUyRiu%~-DNVfI5~ z7#LuBuv-Q2cH03F*YalBDmD2R3H(zw16&M7>jxN?V471q-k>~6ICIkz18%fn60$eg zFf!-w9m_80u+!wW@s~<~RU)nvhxIglCiG|o=@-1R7R7MbTruOk*Q2Hk3O!zko>6~3 z@R-##%iZ0NY*-+@U&L9Su+3CKXp2)zN#;mWdNh3;Wfu@47#vmx%Qt)TecGG!FDce+ zt;?CbvNVT%a`vMT^%jw5Sy0DwY1M3X+T#)}2%#4|2)jAnvX;`%#Y+nYP^+f0yqC&u z+5RwwRE*y!IdKf|s?+hwl+4lO^xyqWeE9ndnxV}0!(khl8B|h?1MMd$G$xO^gi!JO zc5*?b6|ha=+0`xA;v_;ED!bO{)qv^1wMf+eeAT5C8OD;-29JZcM@8f;-WVt^Q4p6{N2zB|O+sOS&VHSWpkcQzsYofpR1j7|r;LCa4X> z%bMC#hmglqc{zhJS%=)QTNVeIt_c-M^*;s1>XFPAtoH00SZ^$i1L3wyA6i@TtrZ_Z zddqQju^%Av?FaYkZCWrjUO7zQqCW4gRfa@h`w{7}JYYju zbEo7v1|DDAK+=*t*Cm8}zOSVWV8d&W-20UgA-7G>*S2z;04ffP^aByhGF$<#av8h)d&kTw5OyG7#ZFl4s zmg@0LXD3hU=!LXa0qeec{Y#*CzyOIj6PuEzX|52(2s?KQFh>G9FlI~%qOzOPaOWh% zq2=dq{8bwlWMCYLT2g&Z3}c5bO9V`O*}Tg04ZDw&9H>cDCLOMqT3)dEp3cZqJ2Aa9 zLU*G?CD($kslW^1MIwk#eR1)l4@a5lotNy_qP+5>6)ODxv_kOt!>7 zuvv4Sxzf0Ms>w2N?5bcMn);rA3KwkosSuu=0WkY6wTiRhDlld<=*P9v4nQT7Wgr9F zO%gZU>)q|lU_j7=5Pap74R|7^j4_zG#{3{{UU4+Vc}Y3C#RhqrW$XiCZR2!9eY7@o zwgWR&QagiZoYsQ@qm#H@fAtr~zQ^LMLV-*RUc_0NP+*IF29}qiv;r?}@9MNx0hrnH zu*d906?BY4do6I_caGfqs*cg)!0Ap+H%!z@^^aNZ6GZ1r6rOHSPUQ*ZN#&&06 zoTqw*P`j^QY5V5au?Y7X>%i%NY;W)s9Z(+WJUgJrN3GalOIY{av+T?$eR3o_#K0Q9 zndZ)*dv&DLO61Cu()_;zM$5_b2~ks{EXG<8sQTDBxEfRFHf75wqg0!opoL~30^cV~ z16w_UV7EgD+4^1}t>ci=&vGh+3Wg2ahFV|d)cQ7op2n&Y-iJ_J`QmTR*zYt;--MwQ zXa8i%2zKhUl`QfHP9Xw|LPBx(#00}qG zxt~=q01E&S3)zAiOKl4JS>o)JN{qHYMf(tW&*J0n#X$K@Jp3k8t!~v+?aV(yut;b^ zaL3h@poyJbo@zrA01S2)waDB&QK}Lw+#%#1BwOn{qE%S2MzB1G?!5al`iIbv_~f6_eS@?&Elh z=NO&FPf#(S>$iV1?DC9VvV8}43pa-{6wPCsUEDj+r=s7^5*S$Jtncc+!4>Hl(`Ca| zCwCq$T9Va0AP+ap^JT}?K|V&Jy7Pe*&%@PW^%IOpI$$r6BMMyGMIac7-xRzcAh zjS1a*{{&>;t1!Kc8n`?;aF|UwjYBYw=o(0M3p#XJ_+Lx?X3*<~`&vXRsW2q7ZH_{6 zoS@8Vm+nb3Rr|4jMlvXjt$Os#G0Q=z_>LMVgv%q)+EM$&;g8H!kDHztisLI_i>f?5 zNQqMIp>n!8$QAUA&z_fFtbn4Lc~t$F|EX+DuqP_Ug)2Fz&LB0i_2LcDo91d0sss29 zII=iR{UYlH5z$0~p&iyUGotPn48qA9E{;E_pNquZSvnmHXoXkEEB@~0B%)&!-l6ZSrwm5U3q^v)sU{EjI2Jvi11>4r$TeKJC+$iGA8_nF~3urMJ0i1OOTla&UT*0z9uT|(Si z1rNbgK)MWF?!s_{snQc40&Q&YLFwZzu(|kQq zqKM-sGA5YY7lIpZ(Bb-nG|+$N*_g=YI2`J`Y(-DDq{K%pg2PA!N*FBraIg6s%U;0s z_FcJ9W-w>A0MJKQd`13z{vx<`prVXiAo?TbJv-9iufRBQw9ZLc%# zd~TmJQGsq{9FlDDb*MKnO8*nLL{>zsa(XB@H)4C5l~-gOhUBaCbCYRM#Jm0l7tZug zXuqV73;k&9zN_g&%?12Hn@ri-tc4k)jnE2@72RZ4iA9&@M5m zbt199TP?miAf*(DL@Vu1oJja)?GUE#5MfyJgimJkh~)Oa{dnw1ffRb<0Zv!-Lrtr9 z_;M?vIOYg)JVzL4YDgij`*{b-bb5;FJ-oy-5uQISfDVPFzg}(8QyO`;#cG3=>LI%} zv?R?HvEPuvZ->_uO9KlL-s=KF(Rl7Jz-#6s)7?@bs$WV_576V|>3-M}G)bBv?KOcp zSlEvnf3#kN#!zzD zODRsqjxhLELT5yqyyX{t@U|z(O+Y{i4A}xazEUv{i3Z10K|9_i${2wp9ySKJJ`pO8 zap6d=F|(!q7y;XiBMwhFuxYV+GJ;vLPWad2h~l}n!#-vLyuJA(c970$jBo+pLCk17W{!*2%u!F7 zJ--6AbPHVXrPjBaryj#?(@GB~GLQDp#-Na%wRQn+sUi*8-v-ZrT{g=LM|bUcW}(q5 z1f#zX(zt=+)K@ZeJr$B#cj_=mTN7dtB2G}A{HoIYg*i5tSa>-nAyY>YQ61X}lL{8u z>G@kTm$_)Z;jP7Eld`Wl;`ZP@>G3`~G3`XZe+o^%aYe!<$mUZ-qB>Ns_ zoEw>LPR61#mKj6QW@QtHRtdITseJM>sPOQb+!o}UA>8`Kfu*pU`5)T938>&i(aFfs zk|@!^Z{VtzvsC#4@Q)JOo>r2Wao7}6X}OgfDDkELAsNKtrp=eYz!s+nwYoci1a7LM zwR#}S-0(fp^__Yj<~51r^sJcA9R4IxewMK@mnm6rO5H+3MHEycMP>WX{d{i2oKxg& z`xgm(6%v~hVgCjH>1*ERxjv8?h(C4t3%PybH=uNziu`A>#Y@yN#7#oF67#`L2Dl%1 zw_84E)fd9adv1>F@HwLUwy*=pP+Fc=V4ukY2g88x2G@HU)tHHLre@s%rXwpO7}@f! z->jKnm)>{)771RsHijg|MWv*0=1j4)`I(M#_edgkgUvfUoc42;lQ^s375y#UC-Uu_ zZ##2uw4h>Wj@Y9w-)xn6&_gjklidTMRpO8TUp9vx{@SKpQfXnn6R+4GCm8uci#OjWcPwcZH6g0jQyDj28RQ*J1p<+i!gQ}QPzViG%- zQF6jA+B+g%UC7M!`*5Yh_o2~wrjW8vqN{2}EXmVx9s9u%;v?oLAVEpicyij1oXpk# z)sY7bdDlkAR=Kmu1*=2&a*gG}DVeue4lOzk@Dw&C;y1?a`KBh=vmK!Os;6Do=Cp&T zD!k|z_SyNo?V_o^uSF*I*oL%_XGpf!Lpn6zK)T_+MmKxn6%I=k-C1Fjdpn+B|J7j( z2E^S$y`HDK#|p=WRmR(hnyagXD2b|Hu2wR)9m}3?eBM5!oB)nlm{IAfs;Oj1pO|0} zGvD?<2;C#C{=n9(sWPS6my&DevJ2NS?Atfg6nI^-L)Xx$h#T%?Tvf%)!kW3^#!(#@ zj7ua*Bpc(Ml_xr`xE*CUNvpVh-e1LYyje+}E5uRv0Jx`tQ2`3ibQ5kdAj}Na`0^DgJS>A;oaIjNGm|OzgX--ki)kM^{+B!GDqZKP`p}`IkN!7HMSNsg{Qs->4*T3 zL=OYh0!^LM21|qfiKgC!!0*FI*Eh(?$asOpcL;}yt6m_P1@5`AJ?{-F3DWset0hpt z_8{Q{ZpaES)4!@1ob*kB*LnHYo*{q7V=^{HfD2;NLL43oxEqTC#c}l?^c5PB($Y<{ zT+j+mpIBsU-WnY290f?gw(s*@X8@Es<`UQoqpZRO0Hsem~t|E{7*b5AQzZ~{tuk>!L8D0D@;I};X-Ubrzqy5XZBE7(A$5-X+3)k;XJ7i z*mBGclUhec-)0DcJI{-o)NaHl97#DV3|mH#X`Ho2 z1yw|Lv(vRl3ZkY@U`|t7O5og*Cf`k+X^eb|4+*yx9&3?n7|O8=c&Q;jg_!u;yqhpU zAnAFfI3Nm1sm;(b9YfpKnP`6C%QKuG_HU}jW{=xlh9{A`1oH$X;O`?to7n?!T%&Qn z)%OO;mVu9NKxJ38hX>s*9|*}W`C#-; zGORsyW0kvCsK*sf657I2{P;@ek9y4-X+ri#M&oUz{ib;e`Oa%SC z-x`ltpOiXO-|y2~dXhytf07q|uUvTVN9o6R%Y0{pPxnE=16oPr??9@ByQzLjKlDvrfz#6J5y98Lm=ux{ zWjejV%Ssz$`U38gydHvbaofAqNNhIOV%*Hn1{Dg~zNAM@_{`LEw@!^8ha#_p(p(UsWP1xDhaLL-GRb_^-o~Kt5ZyV zYH(xvi7ldOA~XGz6m^Y1WTMgTs8{nZd0uuaMqgVMKTw=>X+=*bFWEi}5t0^2Cj^~z z`Hh?mw;)Vs(&kF#sEmDxWj6X*2F6B!l9|hCUBrb`H^j$G(GL4rXci51k);GG97^>) zde^>32(n+)m)hk(XYXuiN*?8jp5`OKMA_Tzmyr{h>GY@yZYqD&Nlw2{*>h7PnZdvohoD~J)Mo6gp5!(wuaPC=b$`v zR5VSW5une<71We23>cMhf6l7dYTy(Bl`@-y%0#-0O!{?CBz4wF`Y}>oipvbH(2pAW zY?Om>gR#c(0uA3XF8v&cjPw-0gUFCa*X~M_e&&3zlpNbk-;5PYAou9o+F5D@Zvm%U zRrcH$>Lb-Jlf1*v;95AV#`4!!tR4gKW%ZF8-{ZAouUM(8w-U38I?eKp5}p97N)KwS z%#c{Om@?K__KI6gnfS6qYa;@*m zgb3-gRX)Kaf_irm^Gl~PV8Of6HvZdx#T05MbKlIDM4b1Kn&l%wh2t>GOk6i(o!O*q zN=f9V2XcM8g^d3@W_UuK?~*nW=#PI$NqJy4$Vd!C*Z7;S0DmJcSXSI4<;m^_@UybC48Pax>#OCL$^BD`x6#D=%!`Mjri`SC z-dlZ|(961(Mt3L(D*4YPCA%MOA{JB6HG@HIF)523%*UbOI^em*AE@vpL} zclsVb5PR!g6Q>hBwl=6XQl$b5gGck_g&`Jdk}fY!@Kc%k#=olCznpS@nN7@_Vz0{%y0(s5BQbZm^ z0vs8-0OxH{o&7DAdbYSZyS^UN{Hbdu*$N?oHVkXRL~Z-9-`=Jtap3(1L+!+)gvDH; zsO$z~C`*^}?Qyf~?rsmIC<8oiXmtfJtGAe?HtTD5Q&N&Pbv}i+8IqsF1h>Mo|2Xhr z@RTU*!7BbggcfBNRc6Zro?k*VS`Gt$PcW#nYp+*L9<$CNV_YAYA%CA7DvAuO>+9Ol zFcst5{7^+@*H?NQCd~g-Q9&h-7VDBI?W`}w0fVee3?exxx40IbQ*NO_Q~Lx?LG)eUC@O9zGXLS9vB=0=@24}@)pjnP$_s&DUnY_cYhC3@k< z$!0KpRYP(>W5c8!RW_WjTHC^mOVfC9o^ra%hBE7+0M+WeD0~Pw5NJR14Emi7aevJrK^!w62;3DPW>to=>#6+Koz?7R2F>8A88tWOM~rC)wbZ()jig1 z8afI2_{8N0qKuS$@<2Y>m#`#Ts3rhp%CE!MGoZ=x#}CmAwv-Sz-uIK1iMZWxeHg`w zer~u~`#G82sOYHC*+~o4_cP=M#6JGZ)VPA2ar`N-?ld`*eRK|ig$uHm;o2p|C~_{O z2(HC3A{>8(+~X)vir28DH(h*Q1$W(~R0=hwC+1P+Wj4tt?00cuC1$(s9aOHtf2YuL zNsn)--`3c_@yu#K28wYibf-R_d%^%3zTG(5*ILOFEnF@s3$)vs>u23!B)TuwePgnx zrWXzH%@R0GKy!{Uc21%q%2qvC@oW^VEO(zk-~>#hvZnuYQsE%r5*wnVRiVTgLg_?Q z*@Cb3^UCLY9&}BR9BEWSi8M9)sXVtLON$87Pbj2Uj+gnedAM$J;Gnt07ZLF(u*MQW zG??6eWddXP>@+dGutNG^tU?m4w+xsmHMvGCj-)~A3?}Vh^W9#HrG`WnCI@&~o;TqQN@{WV8)K(`lmaRqCf| z@oCO#AcG#5^6O2Ic${JMw3l&JI4bgwm_SjhX%ZXH+62+Ci^t(XG z#wCa*mR;3rZ>xTLpFAW&5iSx#rj6lZLwgX!Y+llLWbFHe;Q)6Hcl~V+!guF!L#UIQ zx52G>Q$krwxX2cqp;?;?K<$I8x!k}`p!j%H%F>+7Jmh3#U!aAey;@^MT+ zII)cE4T~G@uM2W2lr&&Wpq`pFwVtwNYZXNc4y)hU7tAmdg3fg~AX1M?Qgl9|ViU3~ z0~Xw1)4K=De7Tx3Kc&B(Mj{Qovg1Up|7M*_g+6`=gXsKez>=N%_>~k?F2GtI4BmOx z>D##f>+HXd+_8fXQdv{c)(wPKRfT7?bt*#0k+wPi3VE{sv>MIGj?8$Zl~_jY`&;cU z>TJ7_tIGR@h&_L)CpbJU?`T}9Vs$$d4nV6F4nR5z6~+Z;e^%qhvlz>van}&KM3~!R z08$Q37<~B;N*_>^w#@mNJpSco{(H(>fYn_ITVj{E{G+*p^o}cOw)(M>ydV3R{7qH; zRX2#qOavK3+`SOyUZDbF0wvr58AD~=XGrgpk79|q(T^t@X8i8gD`pP3&dK?c#=iCi zr1zD{3GWUC&6s0f6Y*(l)BSCG2#$wYXM`nb(3x&7E$;>$uoKRhW2$}Jz^fIXqf21b z`EmteVgg>mu_k0&eHos-S6LJf)pYmwtev#W8sTgcHgqEpZ5`RZaxgc2SRN*wx)mad zke9{@8-Q1Kk4+3sdFJa+8_5jM*BN9Aj|n4RVY3o-Bx}nS^1#gZXWntA@sw z1PTzom;DPq0L>>7POIR}x8geyh*z>Bq9y9Hi&EJ6s*cP6m0^KD5Fwv1I!k$_-UOL{ zo|@h>^t$U$TKRH@9oG_x3b!U)0^C{-il2e`^=IIvSe3q&J1Vq^K`Gx+v{L;8E@>rR z1bofbzkse}I3|{5pKj*sOdqyVfX>RR;X2HCEM!j4U=jNR+o!OHjWr0Q`U6ZrU+QWJ zkunU*7lC^5krG<$gbbKRoeksdDarzTf714)TDq3MVj*e_!+>0?Ff|B+-+>L6WYeB*x~r~^l}5J{n=}+kb4sHrcWEcIA79_ND1E&0M2B3%A4(TckP^V4 z3r`Znk=AGWGSFSSc9|EB5(W6!bUIH;nis3kW$jkrU8Q+V_2?gM<3sCzv=Sfb2O?+4 zK=Zq37VD+5VeMQOGkcd!QSn)rtICiu*yv#PFPyM z9BjW?tHv;hJXadlj{rP{#~WeANH1yak$FN(x1G>b{;k#5QS$#dB zom<>&AG1V`2Rn5BihL!4hZf~Ch6HXQTlLZF`%^U7=js@h@F|?+HPnIlR^9$ zUN&#WWR=1aSOXS#k!JrlR25ay2QEG z&!cxka_fa`B(O7T1W~q%$k6AJN5k)FfS&Yqo7g8DkZTscnMo`$-P~=Z1%iknipQj8 z-0?}N{N|ywPW8}Tz&H_qhV@4{00#TBsq+TysI4!8MV|ZF8Ui3Pi?-cSK_fgY-*|bG zI8Z)*KQi4W|A@OPt;G5B&oAsQyOW<#0GB}rPZD{zImx$8GWb-N;N-RR2kwd04UFS) z$XJB2?+Yugnu+^vDPAS{Ng9cuZyjjgfD*QYMR)yk0r+PMlgxX1C)*Y5Q;NXRc~AHS zc^IsRjryMeveY@k`@)aQTKsB151;;WPqJI|%3^7p^^`fXyDAas%bk?(M z!(0g_Z@n{4YWBA4!xFEXWrN}s4-RUJfX3ic6A1XB366-a&~G_e9S5@B=d{OP9Yf1_ z;#5D*v^jFApAD3%F$K>dtj`k{lxU(pH7)u+1XX9xg>gezY_n598?^3%VtM?fSGjiI z8)ZP@pLFRyaYKCJ%sNBTHuIb;t0_b|dMW5_{#g6t4Q3r~S;Lj39k0!R?sD04cc55% zvAobs(J_s_97g$9Gk(*Vz*Gdhq|;f?r0_P}>-V3mipc||nL0_+e}naw2ZeRE8@Q>Y z1LxbV`#3Sp9Yf$Hda$u8+!03g@*?q=Ntta~V*u@(j;NwK4h982qF z4RlHDy)NUsjRCDav#D|g*OfxKT+~ZY9gZ3?Jltg2&ldjvqzI`Gq>&FSpBY;J^P6WF zSgWuKwsmv}4>yAH6gWDPx=Q;=KM%1%UO@i4bLNbXn}1*%KbF}Ssji(va&6l6JS=Kvn^B>xy@jS9Aa!yG+AFS#~M+~%hJuo8yiUZD?7 z-O_7W!QU&`8dA*o(4DYY>(^bB#cq#LWT7iCjwAupjadajj7Himt+`y)*m;j ztU%>4)|JY{;HZRMRR^QzR)-0TVfEMq%v9c)R`O{-MT$2k2{kEqHHR&fh<|`;F3iH? z>{I(uEIbVUh`~+Fl$p>HYvV!$;4hR=3zv8*yBC}&LEm!OnpMI0pqrb+lO?o!PbX5v zZ)9gK-f7ms)k?kOOJqWu2n6;v0Yj1Q=OdXTy9?*hucdB+f!2tG8-?wcx3SFuEU69W zU!NnrfPGhskvP78q=w>UNfwT>O3yGFG}n}bw@+h&G?f)`vF{Q_9V=nrW zH}61Gm||)(y~A7`*AI7ky9XS=X%z|z~cwxZSpnlA2_O-M5yfT^kW-yA6aGr?-DT~rk4V(5=Uk?($@&qC(*|ajQOx53)dnxbpQ}&9k8Lwj)OsyLSCp)_~7jCbpVh0B7CLZ zQ4aJJ4{Zg_M2K1VC`Vm>fqG&mx00jxp0n~|;vtm`@5lM>{+W8q@2P$W(Nje~jv;-- z_;IBw3iE&;U~aA6C0EY&NcfZ<3@$jPe2CcYpI*YtBm6S`6HcJ{D78M2P|!HRZdBn- zx<^m^iO7W)7xKxk71wCK3Z+j<++U{^fQ54Si%zu+FM~4d0lj)z7Ie#JY&5F{0QHOw z5R9VWie=Y6h~I`th}?XEgtiMKl?en!Lt9Rhs6QyMk|DGCs1mXhgH*-Yc%?UQ)>*4L zxY>%~b)^jc(v)1gj0Sy}O-Q%LO-vutkQXJ1d ziqV9XCF7arGvEsalzYzybO!p+6RMr1biIUq>W7m14-@rS4BD!-pi}JLYB(VdQ zRChnL;tk-@Sv*lbOcDFUlR;g}=c-vtRF$(m zUb-9PftQj6!2ZYWac`(QJt9bD6)m8X&Wu!`97uR^(c)cr-cQE+oYT;kVk^ZzD9m*i zfqsy&_kiiTnq@TolP-a)_lERP+KBgG8H02W<3n50sy*U4?`OProT3u9q|+Da#-&AG z@}H4_oqZ&rn{O;0cgbS*SNFk}Z9LAfN%b^cT9W)4SbVlDc0UxXf~?E+D;AABeAJFa zVnO~-Unp@mc8vcp`A5z2{F?tX@C$NT)&()%7F>6)fM-EGsX|GmK%$`^H>>IKJI96u zWIoADBt@b+JXp-@)ept$R5^CJanEY zGvz-0jK5tuxU zKWE1olg9f~2OFYYMx@4kZ}u@Mnk1Xj{LNP)ujPnhOWI=bpHD!qB{4h&dfWI0BuJW-f}=~u#RY--WXU4a{(^_#Rs4n9|WNFM|zyY zRG!#-BB#n#AXv8{dvbNhB}Fd6xph}9{~EG3XlQ|1K32dHKhx@sj!i9nFs_;OeS;j1 zr$n@L#}tSD_FXE`F}K8-t77#LFe10v_#5d5;XYwU8^zS;D$%1xO>%#b`+04GUt~rJ zDe_BS2zk!U)g7rUhp_49fDq`-K5TO~*2G2Pw4$vOxa(mF`j#GF+x<-y3dM_jD`6Ii z5%wy@Zh2bUPB4^RC{Coi-z+xILS1TKQDn5a5e639Y^};-ibK(|N(5duD0((}*?n+V zIkuOB$9ofE6`gvpm*`X-ake`mDupNd25*{pin)0LPTBwNa%6*HIc|ha@9-Er5OD6i z5da~sA4XM$Z%5}Q#_&?W|NOYJk&6tBA5A*(@p2WmgojNZQ5p( z*|U;V%Z?`U@91O(i`S%UUusL6Gb7#wxX&mV=SqOOEGLiN$U_}GgH&F}Y4%`4p+eRw zpi{fIKkbJ^6z1XpzQ&v&!}F8ssY~DKkWXj0K+P`)g zd&V)az!@K&pbvmGGm5dfz9z}ds^*8*0dzNmbs*6sEf+nX{H+e%XXu=tgu(j8N@1&i z=ilhAUE<5pX-j28AuH!)EH6l_OvQ&1k_WthYojHkhX5}iF z9G{ll0l`#LqTY+fB!S(qr6Xuc= z5R+T+7DWoS4qkil#0NQF0~=mz4o}dZIGDy-_u42HcZ`sN)fOYocrc5<0FfWWH?L23 z9eMP}x)-6c&ZTBLoDL-eyp~}r!JP+pk57ccrkVAt<~-=z7IyO}7vPl13uC(gf--~b z0GQ*|Hp9AYew#}gwPe%Zkp!M!gp9$ucky+`-xGO}^J%5mC3bDk<~^ev4yo{c?(zyb z+{@ZtZHs275SLIHKK;niX@U)?V4;iOz(s&rH0~8C82rKQUP=+|iGkg8S+&^R8yXT5 z5(&%d(BwwdZ3yTNfY`PW7k+wk!fyV1=Y)gS^iimK54s!UgYEV*uvhWulD(mbYMv~O zf%K5oT~wwlWSjgug80sxTRI(b{Pt?;xd@SD?Fhrn$tHhaTf6y0324>JwjysZ*yTW4 zHU=4N>$#_q?7eVt?S8{iK|q4nixn$)1K=OY=5dc|Lmpt-YoleXmcHTO{di~f6&vNA ze2y#*x(`bmU8;vnzzk~0nW|}aD=I2MJ>5#Iyo6u&(TI-w__Vsai=g#l2EC&&AG;>{ zscy=`JI37~Qrg&m2A}uIKpnhEs!Y7VPx~0({bgl1;6P`|shQTY;)sF0EkB*nNcPAQV$!6d$NT0lBS+%Bg-ph`RjC}N``?mFs0VwqEnQJeMX|{ul$`{|jNIpN zzp>KY`7kH6&z~TAaGqoxw8=i=_G0*<%yd|mLUr?6^<1|{p6~3AVUeYR5xF!YhRAT~ zi5paor#xwSsQpcN8e^?<2c687?IZREE1@B9M6~Gj1UgP^2+N9%_hcaTq%aMNj@N}z zS>sBHvbgayK)mpi$1N~HEl!d;%lDrfc4Sma;zSEgj6+Ct4H!TD6Kda?zAEB6zH%Si zfHz6^bj62qqp`I#5Y{r%v12TvI44GEVm7MdO65&uMIc}}V)|}>Jb)-B2^L9A zU7}B{gR+r8Dop{;**~-hZK?uc3sPA+Cm8Vrv`@2%N%8W3ejk0t{Lw$#ZRk;=N;Wgg zg3Q=JzanUs zYGAl7K(&~AL2y{_0zjB05w^_P})fcY6i zJ2&BpW6MqRsq>9 WJ-oRWY3rL1JhvQ;$FL+ZJ9z_w1LhPgO67G`^1z4h7rVX>CV zOxm|r(o!OLZy^x@mz*VPN}XsLA`=?gP%lHzf(0&y>e#vAHr?own+-IO=M|4iqfgoQTbTY=^9e~q-f=>B;L+1KOBKW3W^y-?c1A#x|qNf=B)8`9M_ zYZassq+QD9er*+>cev*RZe@PF7_?`b6t!6&PM54!@FuR%gUUj&$OORZ$bk|FqBgq; z>ZET!!ex5iT)X@8Wm|t8lV#OHy!mTm(U&P;{8X9% zX+1*x=fsmsV^MsxygBaYz8JY#Yq_vV@j5}GvbT~6{4l~84S>?))kcbscmIEY61Pv7}tb2H#c-#%0h2J|z}0vjBx* zZfZ8d{o_3(CJa^NQb*lxo7|J~-F}Hy$w`>Nj>*?{UcIVE$jR;(I*`U#MEdYE&T2Rs zlg!j96S;6ZZ-q0R#B!Oj1KBfKVOZh@l(l4BzbMGIxFb;FX7BrXwu&29v=2rhr@Dt^ z+|cby#1+X%nbLq|?tuXyz1N^pRuGWFS>mrfZB1lfw!u%{r7jXn&PnKjxOYS|BN z1}oyCe1z-QpOn)Sefr49!8~T|yjTmNNO|N;MHx`D*|c>7x3#SqZ#zW$*9QyqkS36* z(nt^t^-&t_70p_ukhqLhW-?Cl3hu)O1hH( z_c45|C!0oRdkv-jBnJEr3L{;}Uo3RZ=g>tCU}@e>}2_wJbV# zHEj=6BE81;CKev^&C5Fgu->A7Gru&L_8+Sgt47?Gtab%IZm;dVbx>VRwla=AF5Be&4Nc>VAJrs;E?V@7>+i zd#&fJXFcnjjaY$`FBJy6QmfIzv*63SnBq8{@IxHQO8=B`NSBD7sk5KG06qy)cnwNM z3iXDZZU{f|L~Viitv?~g)drkr-sJvy9O8GTXZhFM6^jo+L16~d?sn-?%fA~ znmY`dlvg3^#(A1=_1E+Al-K$RArscXdH~c9wWW#+8}agvFJNn5^?KBoyW`46YAvPA zM=EdeY_q8|%tF5WU_6sn0M>BYoTM;^>mk3@U0=p)nLfP@k0@N`=2{@}nn?{*EPiF1 zCMeXE$s>~{=JVjG<;K~bH2+Iah`t)8oA(U1!YQ#?BC|EgY$(IS6za$5QK0h$YPI!2 z+Dd7IT~;0vgzFj%{ln-i!FBu1nmT%-h$JW=Y5y z`Br8cwo+n-E#p~`h{@k|$vs{@jDfB>H1_DD7xOQ)?Scqsw;-5%;iXw-GEtP&lp3Mm z>X%Wr8^M3gcAfo1Z@8-M>;_@k5DIQ^Xd_?bTmv|Ms~NJ9jE2O%Hh3T3)TUn#{!)BM zDDwwYC4}Q%JPAJ?LV1duu8&-Z`NPK?-Q<>p@15&)!df(**c>_5E=VWflPr>E6E@E0 z-#c;zoMHR8pyVAlv}7A*svSn_QLi1rEfbq_3r1s_I!oW{#8 zbfl!wBKDBUEd^3-3GHU-EGgt8>vZv0mqU^vXE@DPOQl^ey+(FKmqD z3!|1|Wz$x%o!2c5M6WgC*_>&escS&B2ZMJ>A(XV{he1_wdSYRruyw-;%+E+`j`{W5 z$1i%Q3=g2o(;uda@9f>jXL35KFiAjCk6gj548FaWP&l0`w=wi65$QC1ed;``)3I`K zcKf2ldL|)%Tr!&6dFpHmNtm@K@1PMnz=bP~jRh5#;qk4Aqzv_@%z?8G*fJ_ua1Qv(Mmr~)rZv5D<7Zi1|JieX;;R{4Lp9h641zFHh>i<(5m#pKw+8N!Pze@s zQ+V*HP^>6Vf(Qk_bynCPQ96XDgtZ-%7t|qC+8I7Q_vMFXZ-uG8e4}eAx6Z|_Et#e1 z7CTL5zxyubXT_NpkS7b^0$GAI*X;Z8RWQD2iQKaH}%$+EvBJ(8JCv< zD}tkM)Zmhb6exgS%<3Yuk9%>?c(?os;M}OZf#)~!#Vj$E&s)T1O!@tlLf9Vt@;4#z z7ZZ`eubF%(uFoxPkVa~C{l=qRT?lV1Z%IxRzou6d1j1fxGtrED4$m8mGtjc8R0?{q z0N+b)pvM90(S@SDD!_9VXUtWkGmGHBk7uF8el0kU+h}D2Sw_)q1SM0~Xjt*%s*McC zb!(mB!P*n}LeuQgulgl2RVb+~-Qs2w5F3(;1_kVD-Y(ZKh#T&X5a9Sk;;ycpVWsT5 zkTv%FD`ML0mruVev-SlpC}xW=H+N}`y86oz4Woac1bna8a!9VoyJ3qhGIm1Qayu@P zT^^_)%!aCR?+v1UMZpzl$TQG~W7Kw??5dG#tlW`T>-{-zhdj5~jv(RTl%fAdsO_k4 z)QN{s0}F|NOvH9?WimaVO0ETZsOKc>W+3P5>DH_Hv^(dLGER|5;f>X3`kY-Vsu#~i}40lZb`M95fst1&jh``U@Ov?()l|afbzP84zpwe

ocU9hrepPeev=J}BvC8QXIT+BgI&iM7mec5q29rXrHc}L4a zeI2jLp8e#EnfFSsU*SuHY3lPLpY*X9cW@atlztsoPS9y8I?b)$XuDkb{5qu4X*X#; ze~$z#%$=b9ZE{JuYX;wGfmO1mZP#sr z8rVZgO~%E8!9esH#dLf5WfcCRQbsy6&&QX{L-lSZBswW4tBUxsm76xY}sv#j6*M44)k`QQn3H2YtNDPB%Acn~zC+TeW<%8CVB% z{K3~G_`7c*y?cI4JDI6~uY|Zu&M+heQwcCg)b=bwao`-njiGAnXs}2_R zgDh(=4Cl1W>kswR7q4Cx`jpdF)uO`CaC@$*6LHryz)b{`we+I&w;X!lc6PG(mSOSP zz1BtWVKjx*AglX9p2*nBhBJTp-3*Qb@=mn{Ag#JNqh(V5X`828>nj&CWp(Hqx0mCp z!3fTFMM4vN0+r=DZ1ir>g@D&A5IGw*M}-&yn^=pFO9tz1Zru+;Hhc1hDV#-&$pT|0 z__lC!(7agCik}GUlnRCF`e{|k;*~7Pd?4W_Ucxh@+1is;y;lE$T(?-5;YD@(LB25B zBIdo)ltp*SyGjAIWReaQ7e4r}FAEOf!*V8&4HLuA;f0Qj^cUR?%I^xAT-Lh@_fNBR zwg_|$qM6E4`RsPAPj|;T&$T6m&|$s`ZBu%vebhk2=PG!YuN^4q+M$_4nYk6 zex~=p`Cv7oDRejA)W-GE%(L){N4ZmX6lRl>sm@9=K@N=T75Ch!9`cCjeeMg*$ZW$7 z5&5%3gyk^N1EJbU`?1mEgwyvow(iLeN=bqbf|cEsaoKirp^cACTLJ9XG=fxBIj_(x z1bsNS1sPqgBQ(+9Bor#nnh%LG_ZshWdakQu$zQg9N`-38$T7o^U?6v4(25zP$7Pij zm~e&{!m;2;`#c_7M%K+a>t^R)>1)!c3f-G4$n0as6ZVy-LxMOBk??_vT;+i&tsj!W zJT>~QU`~m6GKoSSlwPS+hL;w$0Lb<*D*tBbN8&NcuOX z8~`~K!S1L{iBt26N^vzDSKOZjZQaaOw#`T_7Xr8_2g7sW)z3~rkO9ung;L5)w1#kw z1n6;Lt)7-aE?l=;pi1PvvP!|cFHg?Nd#4L6ar37ROaYS6Rrd5fvC6xZbiO+%iI#4O0XRR0Vy3GxdN7@-q<^Dc!f#v7OLV_nmQcNTzo0<1|i; zHiHD@h6E4jyV}ue>Fx}DGasa{DoD#-YafKU5O0?DQ?k>+`epp#jcW1|qoz^tnbS(~ z(kQTzc>q)I1~hzhOtb0q6ToHAm*~Dlr`}V*0_23n-q;gT`drU4M@nR*9H~pg&4z=3 z@+H7vEhw^6q3C?r4KPQ-6SgX_DL!1l2voD4Ssx%ceM`9qtBOg^idI@W1g0rpS}MG( ztSNL#;o`!Rs_lTPu&PKtR8{G;A>=j3=x^x<{lNsaf0h#XyNpgLBh*+PzR+9nzMozt z3JX)STOpN6uMIKk&}P2NeDPUY)ua2~kg71KtrHM_Ry9fVWPJ0O zp`#{}*I*ae!Vwt@>yYc!qes^sd~{%J`0W8_zU7X_h{tbL_~lR;h)?#3sVY8**AGQR zstd?~8zz07>BfAS>K5%^@!&I?bJsQbmeuM{v_A*t}V&d%36E+ z>N&2ez5e(xU7JQuEAK|wu{vAwB4n~n%27SiC0_H4j7=)1ad2JSNgZ=8mK_9WJC8haYSseC}H9f61w ze&{@~XF@&odp3fTCHtNWqZsy;e+1M7V zrGM4a0AGZdNqO(#@B9%}&kFYAip(VMVE??7q%?`6LEB-J}!~FQSk5;gci|u5|GSc4VrG(vhL|P{*8=$ejTp^pU82lk-shZZO=m&MfO-Ae&4uzb&8KAX9+|50`@? zBt)~p-jD9_9hcI&9U4#`|8y|IS))8JFOdbUq-CVxeCs-H4c>odr~y|d!3dEsKIFM> zZndCK7i6~RY|zdHlk$S1koyi=5uohBUt}!y_C;mAT+X}65K5Qo^<|+T z$u33^UIY`V~>! z7nfU4<^gVq8`<@H z-1(IjC+xKHg$XyNQ}m}h{M8=~>(woJD+rSEEu532DzK7{jq{%gG5q$&BNYYQ8zxuak=CG zney#rZXkgWRRB&8p1#&Pl;O0B;Y6`?%VcQ;%yG)pto2PTGnp>R<@;Fkk! z%}-x2BeKQJCQLEXiqo1fX<8oUKkOa}dZ2N)Dd!$$*w1<0ZD`CFT|AO(B4h~;qP@=B z5gj2o;?uk7Z%BVoo`U?=>#@cD=CPz|18mY*P#&2lTccJyn2{pSlF|z%aFgp80rrNf z?4H&-WSDe`s-i+v6Y*Q{}G=Fs2MlMr_+&*rhl@IW4oepy=>9 zKA+Zc6twi%3#)f5av=SR@V;NEbk6zp2Zwzk#Ox-6A0tkQ(a&jYS~%ctkkt8FpEk85 z+?hHoXWeJxFge)pmhN_HFGfNdGSpMDYTH}N#q!&-Zr2>LisZuu+u|oLC3OzxHkTkN zKO8PWbzP}*>*y&eU;B1Wp{(Xc-+K%pq4*e>&Nf(d+ZWoq_jrh-M|3mcmadcIlUypj z!cwetDh!(U6!~xD2HRvZL`}&(tuqwZRk_j4VhF#~cLCswYhgt(z%2vz!vsy*x_C=v zlLFF;9ywWT!9E6~+soGCw@6J>5_TG@yZcn26n@++YVwb9!<1Jqxe|oF2bZMYaCDwy zzA22ZF&9{5c`OZ|oDe>_`zf?Wk)K-2e35%g0Kj6d<7dy-A;9)9y7-LF) zZ+)|i+nbk-{ln6}AIIdQ9=U;&W53@TOMQdMreF&;G0kG>8_Cgh3qrDa`Egub8MnXl&$MvBUaR4E1&;4e^1ouxM}(Uc&t zvRgEzKh8}9zt_gYXR@}@5qaCJeD2A-5qhp}rL6S%fn>i&-XVhj<#A{QeE0pT@W`tK@6krnDx^%`#2=R3k~+hw6UmlQ>pW!&pxh&Ea9?*XiwlbnCPx@ATknP}!b9!~L zcsbzyHlU{3JVHD%ylt90nh9n9GLW(=k^!{?5)a|X%I45{+_NLJ$pO( zq>DLZy~Izl(cw(5J#2*gw53W%M_SZHFU|%6Hx)h_n_i6Q5fyAUf?R3@?y=O#^)L#F zCoS$e7TNcMGPQc{1*+v_g+v-UWYdsTak9gbpyGB*)1r}hcK6OuJbDp#8Z^P{?VGCk ze&8KgsDk0kSb0~Bs7Ax!Sh3Mdo5J@ZF*TJQcikpJPRu%T-Y1RODApMU*0;opK}G`o z;l)115oPMZW-O;ivmLDFiLU8)H4DPmt-0iBXbeN?<~QAypK909c4c!HH7|eOr(5!GSjvc3uWr8%8AcxEeGvIpH&Ibh{KhkN{SCfeaP7ACl6B3A+D)j) z+1-Tb#esj}q4zBD8SW=RT_PWa<|Yu{ zx;aC+&vIOsn}rzaV1Cmz`MxBghSP^`Zzb7_S})AA*x8l&jx{K;X|t8sn_CaoCZM7Q z_a>y)z5I+|lh6n$B6y?7&xVHz=paD$gBPB$vsoxP`y#QbFlkvl6cU6}49{qH#bLTB3&VSHcwM};mmdpfi){`Eug7Mw z=vi%{R=^54jw$izeyq#CEiyCJafBg#I1TEbVC{-Oh0~SD*HHapli!@hh243l!+4C& ztQk;kBU+{wMQJF10>23xPapibGH$n$B=H%N@{9R&`Xn)yAp=@cYKsk4Qre!;HRDgeMb+CPi z!PSSeM$G#hw{TLOFUwFD(0iB0JBL-vX?n)0fmNc8YjOUXLhU_h@4=UK$NXS*oxpp) z5VV#{3b@lTMuwSh3K4dMX5oCR=z#1jr1q+@O)5XgnDTp*Hf3g*u5xgy%?TKb;+5so zKrDq*7m!7Ymq_dnm8_(JckbE34GzEgK7Yy)uo~GV;B)OqncYX_I(!Sy%0~c(zRZ} zPE`n_{st1qjqe-iX<|5i{L!Qeiu~3f83{jff!)2~P?R(yl=-+zGFo56oH>gTE1flY ze&|ySDAo}VG<+q%QaA1H$c3CqZ5<JvkyAP zfJKzKW}tPYc3uM8xi7f_JP2PC)4R;|S=z`-LA5zkh<7C zjn=I38UeNHkro*y#ckT!aeb0NNGB~?8Mo`V5)w7!YDU_RsF1yfXV@B@n6*JeRZ4M^YdgPLf*@z5T}2_&7ugJl>a;!`d0m|_nR&lPdi*YC^U8ZK z?2ItOsJ>Y2^|5To^b~$FNz|p~tdI>~0};LeA@t`g1 zTPr3A9YKY=uOHJts*$R%Gq`r?c^uS#bRTLc}-@-FO2zbaB@y)-mEl@m=c02h}v%j8NSzB0Xb+DX4e)P%Iq@e zc)L3j_W-)#@vex&ZRL(2g8u5BvDOTK!xq!08M!k|Of(oq(|S^<%*mRB3kq(Vb<7Ih zsrofMF}^I>iB|kQ(mrHY`)Pj?)>Rw>Z9D1L_l8Qgdx)~QLGhaYk!GygG_b-$yv+~T zUZxCX*Gq8umgZ|Pgm%3bN`*^&{oe=JO9C~Eck#+l;45a|3C_s&(a9a=OYIACxzbaHWU6euNU_Id zU_a|Y2Ec-Yg5*Nvg9U&9NT1yYfss@G1q5GuJ?iLWg%v#bYan5VnpJKPdJZ56`~>)? zkqZt63I>MamwbHZGpL|-B>TpF4(gr{fcWRGKp}za2S)$g5BN(6D0DDwVHQjPIux)0 zgN~qK=ImnTWJe-u*1^iof<#mpK!lCR z!pg$R$^!WLPa7MN6~MyE24H35;NjrW2IxQA>`T?(%fX>zsCwEO*}0gRkciqlIoLb> zu^a%v^v814e-1w_NTT|CMO8B=H!Bk}XW-H#j3kn*fFMw^=LZA|2?8DjiVS?1pm1P8 zpr9ail?~ErvS|cpaEp|liDVjd_Ny&a{i4pVdb^mEwC^x_-Qq++DMcIew#6?G-g)=A zjFBxgrhtIm$bac-d?!ZnYTQ7aZ(3|Z6wMhsDB7x#el&xq(g~kR-jTSDW$jMc2u!uO z{7RYu(nGw6IdbAt#-|@K+ZuxWgGsA0x87{Ko^W?(t`Wj-9|ypdGs+iia+0mW&1i!| zdkr!Ahlcqumb(Mbh!I`ZlgKJYZth%ssP}JV@cm2rvKgzRj*9oosj+;GZqgl5+qaeS zWcT#G?;({i^u-4=sRf?u!<3DC3lFclv+l<-sQLH8N(JRk0H z1Or+lXhGn2K;X^KM@fhTfdzqK@aD=+cWlh%&D@&rso=_Ixd5g$04o#>(6AvPp+P|* zr~niIvfph0Xc(5Ii;DvHJ06RA$%X9Mp`VV+uAP6{YX1wRA zzZRhU)UxUO4lH4tVi1%bmqD>g4p!_DK@zN(-IeXJrVrrYn^i2iGd!BTWLY&2>MdPe zW-VS{+_Bbckg5p;`T8lAVi;XIulsE;LJhf6Gn_+DA!Ewdb{{@)SqGEC#0ej*Eolf6 zx=V-CVL|B^b6b<46)58d`!xfCAPRsUAN|YYktQ#>hkkT%*g-5>r{m)({bk4hb|3n~ zhXE|yf9J!jJimR|`2Wa<*@1@i^GVSED<4+1vamCAdh%oTf9c2hCh$CBEp6l_V$y9$ zk9lWCaH`3*=_^$X$T9B763X3*Izax_RPzjz)m}j(uR5X-Y=MqwTy|^CWF9+`Ri{=zL%TGKMhOY~ z99ttN3(S-nG8v1@eT|evBA%r7vNt; zcP=$(MDwjflz5TVQ&cm3a2V)R2&RI$gYPI)%z)WKp>Zl7|HF@iKsA6Tr3yfJGX9@# z2L=EEU_G@cpIqa=aT(|Ufb(y60y?+_zzjh5yA5=3qF+Ah;>`Hd$K9QooPQzoPej2JCgnM}-_056_4M-0IMU<0t^GUqZrzxxRg{+qjj zQ1JiP%UPd+o5Y}10g?;`(Y)NUiV3!$K4&}PK7jaX8{`l;0IYz2j(>DGU4%0R{2k zYfPjAkvoew25@;4giu4<^CdS#8!`@8BX9_1O1l8mECEDJVae z?T?^ML<*Qjyy zQ)e4%1U=9egozumls2AWtNv2E473LGEd#SO{t8)J-w%%zWgsUAiqJdbZ&c3nWTR*D zZe1mTMRz>5#?_fTC<16OL`n;`PWlgb36NQusJ`j2a;Y33eBqz8+1F062;m9{f+PY$ z71SRvg$hzbzyswaNfslSQ5sLca&qt-r{IB+iSIL%EI#}i~$i1*!&G+fnm?~2aH9Ke!39^DgxwF z@WS(Z5C#EEL5l?yfc&%~Gy;r*nLCM=z0)febO7p87c2stk|K$Sy$1;^D;EpUpnmQe z0a?Y!$&5tW)Xd14fkaMD^!Et(KaBiKtjoh)?{F+Gn(31kOs>1K)x$ax0O++OWk>|3 zRuKo{)zIvEgwA>)!sOaw33eOl)}V{b}3r zLxOaBoEDR;UzkYhMc9Shl>yd4{^?r}(*9L}tAJf7d7> zvDg7!=*V7ZXa?D#u3x8>Dr886F5z#iiv^xkGPOZ^hOvz<1@zc1Ta4 zJ@fqFky&xeRT?;(@_m!Okkq46Wc&TU4;+9f`1jcP6g&SV)&K`SXIR59DbTQ65g<|m z!wm=&fW*^vBoKlCegGd7!cPKF&jJbt3JwOK2hjcoM=($4U0 zZ)(qEXXe5zs-y}KeVT_D;st;gz@5vP%O1x1EI9h(S`(wEo0$KwbfBR>+4(Os{}mv) z{9X^ZJxhQ&K;U;90QPJ?mtSlDtNC026o1|i8iw<0KR-VOo^R+c-u@FIvn00OD3Y|g zj>vx8fMTl8*nw2utBZZB3wB|qITM(UGKM&JVFT)NPCPDTA#|QI%V8a%?NEpf9dF)s zLR{;8y;p&J$@Ha`>7HeL2ZF?Yy;phS5l&3HX7}~sCc#Io#Tmm#yqISFioPisA+|F6 zfOr}<#@9-5Q>%eFJ5yJo@Ocu>q}1;u4IaB?@s^a-wd2-+?>~R*4TjdJ5K9f71=*w9 zu(8oKscoy7Xg*zh^yZA)k!!Cqj}vN66<~jzrki#nRr% z%Ej|1X=4L$0RD!QtlYpR_iv>9Uk37j#p#OE6HMF_+5MxY*A6XMP>;um9#{w)T8%XX zliPK6a)>BcQK?_GD<_srW@l427zCE$AQKXi0FdsCyu)A{b{_IAvj`Znx}0`)U32$1 z$m52iPVf*+KP-ymc{izm%ktL7k;}@OY?7sLdCz+$z+vDhGwlE9K|3Q5G%|vV$zQ$h z1C)=`;J8ZlcxuCpx5d1SxtViI;AN9ga!%L143&9>9I&SUvE!kPxtsFpo5w<|0ZOmf z%NGeRSR_Urs-er^c4~S+?Gy0Gw+*;g24VCh8-j(;m_WENTG7fqlT^mTk-ZmB|{=MuS1+_|L=t#z$o!KFa?cKDO2Pf$@JYK7SDsS9QXj{&|U& zb?zBH{!{q;dtw##PbuAhfs#KV5e@*PeozoVbbQK<{6sf#fG9vXS1^}9jPGBg+jATJ z(?oyrK*!&(1cW&=fC&(Ie-Tt5%rXBt@qYz#!ltHbPOi=_KQZ%vfN?;F1rGx9SujB` zp1zaY5x&TE1Y7yKbA=?unqF=Oh_L|^)CyRWnu`1dFu^f<+&=z~crYoCl#68%CG;qG zo0)acWO&L1ymMQJuwDBUE;U5nSS)trr)tWKDq!2dSCGq{zf;~)1{n;$wmCr&bJMUs z-_U$TS}r~3!==#i*zBq%gu|&}fjX`Tw)^8^`Q8*%qapdP zZD#VNH=*LtHC|TKW(l-H(Hq{p$~-Zp#15WSwjw0?lL$88F>>S1&?%p^<9H$7=jZtl zkDBmemds(|m#9dxmR)w4N=}y(t17SpoO|uxc?4zYK1#H`A|s4|zr`;0Kof)4TY_)D}=@9&J4Gj?9MA!f-RbUga@E_^3R;EZsB9CbNSmSUv zyrtNP7R+v|hi`*1lHGhwr{X3$IeZ_TSmblEJBVzUOXCrsl!_kbq9yDv}xNNF592fqCEEbERN)9Zh1g9-g25AD*qbw1#Hxme>)8g`knQN zT5OW;c&}MHRQ80F&Ri2$vV^b?^xEWi(bM-9MvuPIn{5DJ-GH5aEFResmLQ@PKoHRa z7$_(pFzJ6e$OZc+QTX3-lerE6lxMj}1ePaui2G;y5Eh&T;n^?*fZ$mR{%1V=x6~#k zfc$SaLa+dnMxsZ=IXsI)!|xOYyqWy>4WU7iAD@510dsE3?L=)P8=PL*eD7+tKa9zIv+OH=tq>c6LB%8dg=zt_#55$Ix?xVH!|-gwi3oTStS;2=>u2aUpZ+FllKlvUI#+uis0KQPf=+O2ZegnS{-X&yuye& zy+&sV*1G`5Ew&>)!kFL%h3+a;EL15K`@3X=Lh4j2z5>=C!m-3yvuMgV>@-Jn+2rCl zL6(#=ETC1X$z@=vhXKVbV421pDx8gVub_GE4T`0z-B38+U29k?O#$FNuraXVZWNfI zUWuXk2=y6ef(v!*3kZauzS|S&ZfxG~;O?JWpVk zE6_ZCCg^{X4>NEGFrY^PbpLiUP;O8F$o^p2Ejx9hvol=<^PA}|A*!OktTSK;J}>Te^~y1SUxaw z`|n8C{)grNhvh%1z5ikP|6%$6FR*;1D?kv^`Tw&lAE-}03+;0Qm>Rlfv_ z3&8>`lK}mnvw!A42?{I(3mF8-i?bF&xYKHk65$4XSkMufap3oEmGe-3(B}VG)*11f zejYgd$^>Y^RdVOpgQpoiMzoMnGPwLWEQHV1?=zlo$~1}=*M86~g7Ge}T#NNfBkVc$ z5W*}>l~{4tN6rc43ZipTO zAC_}AF9;zI5QLERCxZhA2hu+Tpsa-u`RD0A(LV$)V3!+EO!`Oq7q|um|NEJu0105= zI7HwGAn*h5*+Rkol%aB2!N39kNd3&3vZH!1zV+XyE}*ISwbBw1>BLBS^xI~KgeT{X)c<^Xp+z(EF;Lx!o zomuDEc0|N~m;S(^qdeP+og1UG z5eo}|`HzjzJR5pmaYXX7j!acbn3aR`kAkwNVi-;U2P^xZDl#h_9B?Zj<{!E z>$!`!>JL#I3v;2Gb5#zFyJU_voXTzc<4-tu4!_RgAo96UyRrG4i}tZPBg>@U!$7Ny ziR`M6da+(d+=M#eF{X~ctnmV=`<%oKDl!Y4prBSoIF$XkeRM+Y8tq2|XrxT>ceMfH zyIF$novySU!72Q2LLczwkEwh_0UsQ`dZ3nvDik3hg2?cqx)+R)g9c;|C9CU6j72TZ zl*5ID)<^2hvrY(m<0z<&R7|Vrqs>xet6w0*uXQBFdCm(*_7&vrCEkCq$O>nhaAbA< zt$SDiPs-#UblsoY0|~@W?cqHbt) zoy;8UovmE#ojjR=g_}Sn10CYOE3f$}2^0Sz3Fq?Ua)ojHsY%%Ub!rP|W(#MRXSI{g zmPV{k6*9m8Nb~phfHH?1Kn5W7yA6~%Ui_N!mzeyQ4VxGND{Nf;tC?M%DL;&McGIzY z-~lI}Ob$zymf>G$kn#VWa+E|`B9p3TTASHOv=721xt}FWFZUO}`^g10vQ&51PKp@T zce{)O@{Ph|ax$|h$N`!0)ZxtEA+#nOBKRd#-1{@dXW~2Fk>W@%GKD`TF}Z&eg!`6D zs*A3;8$wSLKBkM=ie9me_OkC*oJbmXqTCgk^x#zao}B@n6%w|77t5+@iOFy4o>8g` zZ`Oqaly?Il>R{o;z3?8jSN)Df>b=f6DVp)7TVx`!H20jQyeDi_*|I&@$Ew}sNME_7 zI)Hc%kobTI6tJSM1HlRtnB9H&1FYa7 zo(hOTSt19OApUY%067*C0MQfrz@uY7Lmw4;dzU{@M}_ToNeLV}+~2PF-3k7@^QUCX z0(h!t`H4$Ub+$YJHddZr&3`W@{wrWA&y4GBtDRurc;5} zHDjYO%mziAi#+(kPgTmRD=R#^=Ao#I#?=xl9aMS}D7sMkDJ{=-{gH zQ;iA522tZ{k@#v|CkMpc(s4h$$`vvr)^HosiGxsNC|wCrLRTDIjc&bNvyzKAe(MdO zy7$s-(`v_XN($6?=Qg|;02g2f`v))u9smOO{vMWqb*fKQ*nh2%eX6PcqY(F>x}D_H zFbRYZ09ai9OIZD%ff(o0M8pux07d|PE^RJ#809}lsHfr-C!k$2I3;4ZQzX`${$d<)DwR~>BmNxrDW*-A@tO7hDj!bQvR($LP{=r_OZGk55J{6Vo)k5419+Ybws4cdl8L zSb?ZcT(BDezSKdoU)?1@(nB+*^OXMKvrX4@%1xKjruSyT0||}?4w)VdQw%|F+67^T zZ$Vb#ER>i6gq;@w$qwgPvr;Qd5LhD+7;2w_ZpVMCJA(ZeA<}bt5Cn<=!22`C1PVQf ze-}pncTx|qX#cOVKXK)wRbZ*-U8_azmrV_d?HlCfH8rJ=C20*=uWKm&(U(~;kh^0q!UZM1|Hnrq{QfQWT{@JHf{ zB6W-%T}ad*n?wwBt;yqH$g5RIC+MXuj;O&90{a9PgLtR+;1pD#{6pDLbhIAQIC8%gggiMdlJQ=zKXCulnMe{N_`a@#*|ZRyJ~g% z)>TMhmc3h|ny_3ZWIsDZ@nE77A;gTdQ1*Z@ZNgkp$i4-kmv#$njY&o#{>p{~ 0) { - iframes[0].contentDocument.location = link.href; - } else { - link.ownerDocument.location = link.href; - } - break; - } - } - } - }(link), false); - } - }, false); - } - } -} - -// Don't do this check before Firefox 29 -if (Services.vc.compare(Services.appinfo.version, "29") > 0) { - try { - if (Services.prefs.getCharPref("capability.policy.default.checkloaduri.enabled") == "allAccess") { - gForceExternalHandler = !extProtocolSvc.isExposedProtocol('file'); - Services.obs.addObserver(documentObserver, "content-document-global-created", false); - addEventListener("unload", function() { - Services.obs.removeObserver(documentObserver, "content-document-global-created", false); - }) - } - } catch (e) {} -} - - -/* Copied from http://mxr.mozilla.org/mozilla-central/source/browser/base/content/utilityOverlay.js?raw=1 */ - -function getBoolPref(prefname, def) -{ - try { - return Services.prefs.getBoolPref(prefname); - } - catch(er) { - return def; - } -} - -/* whereToOpenLink() looks at an event to decide where to open a link. - * - * The event may be a mouse event (click, double-click, middle-click) or keypress event (enter). - * - * On Windows, the modifiers are: - * Ctrl new tab, selected - * Shift new window - * Ctrl+Shift new tab, in background - * Alt save - * - * Middle-clicking is the same as Ctrl+clicking (it opens a new tab). - * - * Exceptions: - * - Alt is ignored for menu items selected using the keyboard so you don't accidentally save stuff. - * (Currently, the Alt isn't sent here at all for menu items, but that will change in bug 126189.) - * - Alt is hard to use in context menus, because pressing Alt closes the menu. - * - Alt can't be used on the bookmarks toolbar because Alt is used for "treat this as something draggable". - * - The button is ignored for the middle-click-paste-URL feature, since it's always a middle-click. - */ -function whereToOpenLink( e, ignoreButton, ignoreAlt ) -{ - Components.utils.import("resource://gre/modules/AppConstants.jsm"); - - // This method must treat a null event like a left click without modifier keys (i.e. - // e = { shiftKey:false, ctrlKey:false, metaKey:false, altKey:false, button:0 }) - // for compatibility purposes. - if (!e) - return "current"; - - var shift = e.shiftKey; - var ctrl = e.ctrlKey; - var meta = e.metaKey; - var alt = e.altKey && !ignoreAlt; - - // ignoreButton allows "middle-click paste" to use function without always opening in a new window. - var middle = !ignoreButton && e.button == 1; - var middleUsesTabs = true; - - // Don't do anything special with right-mouse clicks. They're probably clicks on context menu items. - - var metaKey = AppConstants.platform == "macosx" ? meta : ctrl; - if (metaKey || (middle && middleUsesTabs)) - return shift ? "tabshifted" : "tab"; - - if (alt && getBoolPref("browser.altClickSave", false)) - return "save"; - - if (shift || (middle && !middleUsesTabs)) - return "window"; - - return "current"; -} diff --git a/windows/build/preferences/cck2/modules/CAPSClipboardFramescript.js b/windows/build/preferences/cck2/modules/CAPSClipboardFramescript.js deleted file mode 100644 index ffadb9d..0000000 --- a/windows/build/preferences/cck2/modules/CAPSClipboardFramescript.js +++ /dev/null @@ -1,183 +0,0 @@ -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; -Cu.import("resource://gre/modules/Services.jsm"); - -const EXPORTED_SYMBOLS = []; - -var gAllowedPasteSites = []; -var gAllowedCutCopySites = []; -var gDeniedPasteSites = []; -var gDeniedCutCopySites = []; -var gDefaultPastePolicy = false; -var gDefaultCutCopyPolicy = false; - -function allowCutCopy(doc) { - var win = doc.defaultView; - if (win !== win.top) { - // It's an iframe. Use the top level window - // for security purposes - win = win.top; - } - - if (gDefaultCutCopyPolicy == true) { - for (var i=0; i < gDeniedCutCopySites.length; i++) { - if (win.location.href.indexOf(gDeniedCutCopySites[i]) == 0) { - return false; - } - } - return true; - } else { - for (var i=0; i < gAllowedCutCopySites.length; i++) { - if (win.location.href.indexOf(gAllowedCutCopySites[i]) == 0) { - return true; - } - } - return false; - } -} - -function allowPaste(doc) { - var win = doc.defaultView; - if (win !== win.top) { - // It's an iframe. Use the top level window - // for security purposes - win = win.top; - } - - if (gDefaultPastePolicy == true) { - for (var i=0; i < gDeniedPasteSites.length; i++) { - if (win.location.href.indexOf(gDeniedPasteSites[i]) == 0) { - return false; - break; - } - } - return true; - } else { - for (var i=0; i < gAllowedPasteSites.length; i++) { - if (win.location.href.indexOf(gAllowedPasteSites[i]) == 0) { - return true; - break; - } - } - return false; - } -} - -function myExecCommand(doc, originalExecCommand) { - return function(aCommandName, aShowDefaultUI, aValueArgument) { - switch (aCommandName.toLowerCase()) { - case "cut": - case "copy": - if (allowCutCopy(doc)) { - var win = Services.wm.getMostRecentWindow("navigator:browser"); - win.goDoCommand("cmd_" + aCommandName.toLowerCase()); - return true; - } - break; - case "paste": - if (allowPaste(doc)) { - var win = Services.wm.getMostRecentWindow("navigator:browser"); - win.goDoCommand("cmd_" + aCommandName.toLowerCase()); - return true; - } - break; - } - return originalExecCommand.call(doc, aCommandName, aShowDefaultUI, aValueArgument); - } -} - -function myQueryCommandSupported(doc, originalQueryCommandSupported) { - return function(aCommandName) { - switch (aCommandName.toLowerCase()) { - case "cut": - case "copy": - if (allowCutCopy(doc)) { - return true; - } - break; - case "paste": - if (allowPaste(doc)) { - return true; - } - break; - } - return originalQueryCommandSupported.call(doc, aCommandName, aShowDefaultUI, aValueArgument); - } -} - -var documentObserver = { - observe: function observe(subject, topic, data) { - if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') { - var doc = subject.document; - var cutCopyAllowed = allowCutCopy(doc); - var pasteAllowed = allowPaste(doc); - if (!cutCopyAllowed && !pasteAllowed) { - return; - } - var originalExecCommand = Cu.waiveXrays(doc).execCommand; - Cu.exportFunction(myExecCommand(doc, originalExecCommand), doc, {defineAs: "execCommand"}); - var originalQueryCommandSupported = Cu.waiveXrays(doc).queryCommandSupported; - Cu.exportFunction(myQueryCommandSupported(doc, originalQueryCommandSupported), doc, {defineAs: "queryCommandSupported"}); - var originalQueryCommandEnabled = Cu.waiveXrays(doc).queryCommandEnabled; - Cu.exportFunction(myQueryCommandSupported(doc, originalQueryCommandEnabled), doc, {defineAs: "queryCommandEnabled"}); - } - } -} - -// Don't do this check before Firefox 29 -if (Services.vc.compare(Services.appinfo.version, "29") > 0) { - try { - if (Services.prefs.getCharPref("capability.policy.default.Clipboard.cutcopy") == "allAccess") { - gDefaultCutCopyPolicy = true; - } - } catch (e) {} - try { - if (Services.prefs.getCharPref("capability.policy.default.Clipboard.paste") == "allAccess") { - gDefaultPastePolicy = true; - } - } catch (e) {} - try { - var policies = []; - policies = Services.prefs.getCharPref("capability.policy.policynames").split(', '); - for (var i=0; i < policies.length; i++ ) { - try { - if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.cutcopy") == "allAccess") { - var allowedCutCopySites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" "); - for (var j=0; j < allowedCutCopySites.length; j++) { - gAllowedCutCopySites.push(allowedCutCopySites[j]); - } - } - } catch(e) {} - try { - if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.cutcopy") == "noAccess") { - var deniedCutCopySites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" "); - for (var j=0; j < deniedCutCopySites.length; j++) { - gDeniedCutCopySites.push(deniedCutCopySites[j]); - } - } - } catch(e) {} - try { - if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.paste") == "allAccess") { - var allowedPasteSites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" "); - for (var j=0; j < allowedPasteSites.length; j++) { - gAllowedPasteSites.push(allowedPasteSites[j]); - } - } - } catch(e) {} - try { - if (Services.prefs.getCharPref("capability.policy." + policies[i] + ".Clipboard.paste") == "noAccess") { - var deniedPasteSites = Services.prefs.getCharPref("capability.policy." + policies[i] + ".sites").split(" "); - for (var j=0; j < deniedPasteSites.length; j++) { - gDeniedPasteSites.push(deniedPasteSites[j]); - } - } - } catch(e) {} - } - } catch (e) {} - if (gDefaultCutCopyPolicy || gDefaultPastePolicy || - gAllowedCutCopySites.length > 0 || gAllowedPasteSites> 0) { - Services.obs.addObserver(documentObserver, "content-document-global-created", false); - addEventListener("unload", function() { - Services.obs.removeObserver(documentObserver, "content-document-global-created", false); - }) - } -} diff --git a/windows/build/preferences/cck2/modules/CCK2.jsm b/windows/build/preferences/cck2/modules/CCK2.jsm deleted file mode 100644 index 2a63260..0000000 --- a/windows/build/preferences/cck2/modules/CCK2.jsm +++ /dev/null @@ -1,1495 +0,0 @@ -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -var EXPORTED_SYMBOLS = ["CCK2"]; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://gre/modules/NetUtil.jsm"); -Cu.import("resource://gre/modules/FileUtils.jsm"); -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); -Cu.import("resource://gre/modules/PlacesUtils.jsm"); -try { - Cu.import("resource://gre/modules/Timer.jsm"); -} catch (ex) { - Cu.import("resource://cck2/Timer.jsm"); -} -Cu.import("resource://cck2/Preferences.jsm"); -Cu.import("resource://cck2/CTPPermissions.jsm"); -Cu.import("resource:///modules/distribution.js"); - -XPCOMUtils.defineLazyServiceGetter(this, "bmsvc", - "@mozilla.org/browser/nav-bookmarks-service;1", "nsINavBookmarksService"); -XPCOMUtils.defineLazyServiceGetter(this, "annos", - "@mozilla.org/browser/annotation-service;1", "nsIAnnotationService"); -XPCOMUtils.defineLazyServiceGetter(this, "override", - "@mozilla.org/security/certoverride;1", "nsICertOverrideService"); -XPCOMUtils.defineLazyServiceGetter(this, "uuid", - "@mozilla.org/uuid-generator;1", "nsIUUIDGenerator"); - -Cu.importGlobalProperties(["XMLHttpRequest"]); - -/* Hack to work around bug that AutoConfig is loaded in the wrong charset */ -/* Not used for Firefox 44 and above (see CCK2.init) */ -let fixupUTF8 = function(str) { - if (!str) { - return null; - } - var out, i, len, c; - var char2, char3; - - out = ""; - len = str.length; - i = 0; - while(i < len) { - c = str.charCodeAt(i++); - switch(c >> 4) - { - case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: - // 0xxxxxxx - out += str.charAt(i-1); - break; - case 12: case 13: - // 110x xxxx 10xx xxxx - char2 = str.charCodeAt(i++); - out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F)); - break; - case 14: - // 1110 xxxx 10xx xxxx 10xx xxxx - char2 = str.charCodeAt(i++); - char3 = str.charCodeAt(i++); - out += String.fromCharCode(((c & 0x0F) << 12) | ((char2 & 0x3F) << 6) | ((char3 & 0x3F) << 0)); - break; - } - } - - return out; -}; - -/* Crazy hack to work around distribution.ini bug */ -/* Basically if the distribution can't be parsed, make it null */ -let dirSvc = Cc["@mozilla.org/file/directory_service;1"]. - getService(Ci.nsIProperties); -let iniFile = dirSvc.get("XREAppDist", Ci.nsIFile); -iniFile.leafName = "distribution"; -iniFile.append("distribution.ini"); -if (iniFile.exists()) { - try { - let ini = Cc["@mozilla.org/xpcom/ini-parser-factory;1"]. - getService(Ci.nsIINIParserFactory). - createINIParser(iniFile); - } catch (e) { - DistributionCustomizer.prototype.__defineGetter__("_iniFile", function() { return null;}); - } -} - -var networkPrefMapping = { - proxyType: "network.proxy.type", - proxyHTTP: "network.proxy.http", - proxyHTTPPort: "network.proxy.http_port", - proxySSL: "network.proxy.ssl", - proxySSLPort: "network.proxy.ssl_port", - proxyFTP: "network.proxy.ftp", - proxyFTPPort: "network.proxy.ftp_port", - proxySOCKS: "network.proxy.socks", - proxySOCKSPort: "network.proxy.socks_port", - proxySocksVersion: "network.proxy.socks_version", - proxyNone: "network.proxy.no_proxies_on", - proxyAutoConfig: "network.proxy.autoconfig_url", - shareAllProxies: "network.proxy.share_proxy_settings", - proxySOCKSRemoteDNS: "network.proxy.socks_remote_dns", - proxyAutologin: "signon.autologin.proxy" -} - - -function alert(string) { - Services.prompt.alert(Services.wm.getMostRecentWindow("navigator:browser"), "", string); -} - -var gBundlePrefFiles = []; - -var CCK2 = { - configs: {}, - firstrun: false, - upgrade: false, - installedVersion: null, - initialized: false, - aboutFactories: [], - init: function(config, a, b) { - if (a == b) { - /* See bugzilla 1193625/1137799 */ - fixupUTF8 = function(str) { return str }; - } - // Bring back default profiles for >= FF46 - if (Services.vc.compare(Services.appinfo.version, "46") >= 0) { - // If it is a new profile - if (!Preferences.isSet("browser.startup.homepage_override.mstone")) { - var defaultProfileDir = Services.dirsvc.get("GreD", Ci.nsIFile); - defaultProfileDir.append("defaults"); - defaultProfileDir.append("profile"); - if (defaultProfileDir.exists()) { - var profileDir = Services.dirsvc.get("ProfD", Ci.nsIFile); - try { - copyDir(defaultProfileDir, profileDir); - } catch(e) { - Components.utils.reportError("Error copying default profile directory: " + e); - } - } - } - } - try { - for (var id in this.configs) { - if (id == config.id) { - // We've already processed this config - return; - } - } - if (!config) { - // Try to get config from default preference. If it is there, default - // preference always wins - var configJSON = Preferences.defaults.get("extensions.cck2.config"); - if (!configJSON) { - configJSON = Preferences.defaults.get("extensions.cck2.config"); - } - if (!configJSON) { - // Try something else. Grou policy? - } - try { - config = JSON.parse(configJSON); - } catch (ex) { - return; - } - } - - if (!config) - return; - if (!config.id) { - alert("Missing ID in config"); - } - config.firstrun = Preferences.get("extensions.cck2." + config.id + ".firstrun", true); - Preferences.set("extensions.cck2." + config.id + ".firstrun", false); - if (!config.firstrun) { - config.installedVersion = Preferences.get("extensions.cck2." + config.id + ".installedVersion"); - config.upgrade = (config.installedVersion != config.version); - } - Preferences.set("extensions.cck2." + config.id + ".installedVersion", config.version); - Preferences.lock("distribution.id", config.id); - Preferences.lock("distribution.version", config.version + " (CCK2)"); -// Preferences.lock("distribution.about", String(config.id + " - " + config.version + " (CCK2)")); - - if (config.removeDefaultSearchEngines) { - Services.io.getProtocolHandler("resource").QueryInterface(Components.interfaces.nsIResProtocolHandler) - .setSubstitution("search-plugins", null); - } - if (config.noAddonCompatibilityCheck) { - Preferences.reset("extensions.lastAppVersion"); - } - if (config.preferences) { - for (var i in config.preferences) { - // For plugin.disable_full_page_plugin_for_types, there is - // a default user value (application/pdf). - // Because of this, setting the default value doesn't work. - // So if a user is trying to set the default value, we set - // the user value instead. - // But we only do that if it's set to application/pdf - // or not set (startup), or it's a CCK2 upgrade or first install - // As a side note, at Firefox install, application/pdf is added - // to the pref no matter what - if (i == "plugin.disable_full_page_plugin_for_types") { - if (!config.preferences[i].userset && - !config.preferences[i].locked && - !config.preferences[i].clear) { - if (Preferences.get(i) == "application/pdf" || - !Preferences.get(i) || // firstrun - config.upgrade || - config.firstrun) { - Preferences.set(i, config.preferences[i].value); - continue; - } - } - } - // Workaround bug where this pref is coming is as a string from import - if (i == "toolkit.telemetry.prompted") { - config.preferences[i].value = parseInt(config.preferences[i].value); - } - if (config.preferences[i].locked) { - Preferences.lock(i, config.preferences[i].value); - } else if (config.preferences[i].userset) { - Preferences.set(i, config.preferences[i].value); - } else if (config.preferences[i].clear) { - Preferences.reset(i); - } else { - if (i == "browser.startup.homepage" || - i == "gecko.handlerService.defaultHandlersVersion" || - i == "browser.menu.showCharacterEncoding" || - i == "intl.accept_languages" || - i.indexOf("browser.search.defaultenginename") == 0 || - i.indexOf("browser.search.order") == 0 || - i.indexOf("browser.contentHandlers.types") == 0 || - i.indexOf("gecko.handlerService.schemes") == 0) { - // If it's a complex preference, we need to set it differently - Preferences.defaults.set(i, "data:text/plain," + i + "=" + config.preferences[i].value); - } else { - Preferences.defaults.set(i, config.preferences[i].value); - } - } - } - } - if (config.registry && "@mozilla.org/windows-registry-key;1" in Cc) { - for (var i in config.registry) { - addRegistryKey(config.registry[i].rootkey, - config.registry[i].key, - config.registry[i].name, - config.registry[i].value, - config.registry[i].type); - } - } - if (config.permissions) { - for (var i in config.permissions) { - for (var j in config.permissions[i]) { - if (i.indexOf("http") == 0) { - Services.perms.add(NetUtil.newURI(i), j, config.permissions[i][j]); - } else { - var domain = i.replace(/^\*\./g, ''); - Services.perms.add(NetUtil.newURI("http://" + domain), j, config.permissions[i][j]); - Services.perms.add(NetUtil.newURI("https://" + domain), j, config.permissions[i][j]); - } - if (j == "plugins") { - var plugins = Cc["@mozilla.org/plugin/host;1"].getService(Ci.nsIPluginHost).getPluginTags({}); - for (var k=0; k < plugins.length; k++) { - if (i.indexOf("http") == 0) { - Services.perms.add(NetUtil.newURI(i), "plugin:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - Services.perms.add(NetUtil.newURI(i), "plugin-vulnerable:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - } else { - var domain = i.replace(/^\*\./g, ''); - Services.perms.add(NetUtil.newURI("http://" + domain), "plugin:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - Services.perms.add(NetUtil.newURI("http://" + domain), "plugin-vulnerable:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - Services.perms.add(NetUtil.newURI("https://" + domain), "plugin:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - Services.perms.add(NetUtil.newURI("https://" + domain), "plugin-vulnerable:" + CTP.getPluginPermissionFromTag(plugins[k]), config.permissions[i][j]); - } - } - } - } - if (Object.keys(config.permissions[i]).length === 0) { - let perms = Services.perms.enumerator; - while (perms.hasMoreElements()) { - let perm = perms.getNext(); - try { - // Firefox 41 and below - if (perm.host == i) { - Services.perms.remove(perm.host, perm.type); - } - } catch(e) { - if (i.indexOf("http") == 0) { - if (perm.matchesURI(NetUtil.newURI(i), false)) { - perm.remove(NetUtil.newURI(i), perm.type); - } - } else { - var domain = i.replace(/^\*\./g, ''); - if (perm.matchesURI(NetUtil.newURI("http://" + domain), false)) { - perm.remove(NetUtil.newURI("http://" + domain), perm.type); - } - if (perm.matchesURI(NetUtil.newURI("https://" + i), false)) { - perm.remove(NetUtil.newURI("https://" + domain), perm.type); - } - } - } - } - } - } - } - if (config.disablePrivateBrowsing) { - Preferences.lock("browser.taskbar.lists.tasks.enabled", false); - Preferences.lock("browser.privatebrowsing.autostart", false); - var aboutPrivateBrowsing = {}; - aboutPrivateBrowsing.classID = Components.ID(uuid.generateUUID().toString()); - aboutPrivateBrowsing.factory = disableAbout(aboutPrivateBrowsing.classID, - "Disable about:privatebrowsing - CCK", - "privatebrowsing"); - CCK2.aboutFactories.push(aboutPrivateBrowsing); - } - if (config.noGetAddons) { - Preferences.lock("extensions.getAddons.showPane", false); - } - if (config.noAddons) { - Preferences.lock("xpinstall.enabled", false); - } - if (config.disablePDFjs) { - Preferences.lock("pdfjs.disabled", true); - } - if (config.disableHello) { - Preferences.lock("loop.enabled", false); - } - if (config.disablePocket) { - Preferences.lock("browser.pocket.enabled", false); - Preferences.lock("extensions.pocket.enabled", false); - Preferences.lock("browser.newtabpage.activity-stream.feeds.section.topstories", false); - } - if (config.disableHeartbeat) { - Preferences.lock("browser.selfsupport.url", ""); - } - if (config.disableInContentPrefs) { - Preferences.lock("browser.preferences.inContent", false); - } - if (config.disableSync) { - var aboutAccounts = {}; - aboutAccounts.classID = Components.ID(uuid.generateUUID().toString()); - aboutAccounts.factory = disableAbout(aboutAccounts.classID, - "Disable about:accounts - CCK", - "accounts"); - CCK2.aboutFactories.push(aboutAccounts); - var aboutSyncLog = {}; - aboutSyncLog.classID = Components.ID(uuid.generateUUID().toString()); - aboutSyncLog.factory = disableAbout(aboutSyncLog.classID, - "Disable about:sync-log - CCK", - "sync-log"); - CCK2.aboutFactories.push(aboutSyncLog); - var aboutSyncProgress = {}; - aboutSyncProgress.classID = Components.ID(uuid.generateUUID().toString()); - aboutSyncProgress.factory = disableAbout(aboutSyncProgress.classID, - "Disable about:sync-progress - CCK", - "sync-progress"); - CCK2.aboutFactories.push(aboutSyncProgress); - var aboutSyncTabs = {}; - aboutSyncTabs.classID = Components.ID(uuid.generateUUID().toString()); - aboutSyncTabs.factory = disableAbout(aboutSyncTabs.classID, - "Disable about:sync-tabs - CCK", - "sync-tabs"); - CCK2.aboutFactories.push(aboutSyncTabs); - Preferences.lock("browser.syncPromoViewsLeftMap", JSON.stringify({bookmarks:0, passwords:0, addons:0})); - Preferences.lock("browser.newtabpage.activity-stream.migrationExpired", true); - Preferences.lock("identity.fxaccounts.enabled", false); - } - var disableAboutConfigFactory = null; - if (config.disableAboutConfig) { - var aboutConfig = {}; - aboutConfig.classID = Components.ID(uuid.generateUUID().toString()); - aboutConfig.factory = disableAbout(aboutConfig.classID, - "Disable about:config - CCK", - "config"); - CCK2.aboutFactories.push(aboutConfig); - } - if (config.disableAboutProfiles) { - var aboutProfiles = {}; - aboutProfiles.classID = Components.ID(uuid.generateUUID().toString()); - aboutProfiles.factory = disableAbout(aboutProfiles.classID, - "Disable about:profiles - CCK", - "profiles"); - CCK2.aboutFactories.push(aboutProfiles); - } - if (config.disableAboutSupport) { - var aboutSupport = {}; - aboutSupport.classID = Components.ID(uuid.generateUUID().toString()); - aboutSupport.factory = disableAbout(aboutSupport.classID, - "Disable about:support - CCK", - "support"); - CCK2.aboutFactories.push(aboutSupport); - } - if (config.disableAddonsManager) { - var aboutAddons = {}; - aboutAddons.classID = Components.ID(uuid.generateUUID().toString()); - aboutAddons.factory = disableAbout(aboutAddons.classID, - "Disable about:addons - CCK", - "addons"); - CCK2.aboutFactories.push(aboutAddons); - } - - if (config.alwaysDefaultBrowser) { - var shellSvc = Cc["@mozilla.org/browser/shell-service;1"].getService(Ci.nsIShellService); - if (shellSvc) { - try { - var isDefault = shellSvc.isDefaultBrowser(true, false); - if (!isDefault) { - shellSvc.setDefaultBrowser(true, false); - } - } catch (e) { - // setDefaultBrowser errors on Yosemite, so we're just ignoring the error. - // See Bugzilla bug #1063529 - } - } - } - if (config.dontCheckDefaultBrowser) { - Preferences.lock("browser.shell.checkDefaultBrowser", false); - } - if (config.dontUseDownloadDir) { - Preferences.lock("browser.download.useDownloadDir", false); - } - if (config.disableFormFill) { - Preferences.lock("browser.formfill.enable", false); - } - if (config.removeSmartBookmarks) { - Preferences.lock("browser.places.smartBookmarksVersion", -1); - } - if (config.disableCrashReporter) { - Preferences.lock("toolkit.crashreporter.enabled", false); - Preferences.lock("browser.crashReports.unsubmittedCheck.autoSubmit", false); - try { - Cc["@mozilla.org/toolkit/crash-reporter;1"]. - getService(Ci.nsICrashReporter).submitReports = false; - } catch (e) { - // There seem to be cases where the crash reporter isn't defined - } - var aboutCrashes = {}; - aboutCrashes.classID = Components.ID(uuid.generateUUID().toString()); - aboutCrashes.factory = disableAbout(aboutCrashes.classID, - "Disable about:crashes - CCK", - "crashes"); - CCK2.aboutFactories.push(aboutCrashes); - } - if (config.disableTelemetry) { - Preferences.lock("toolkit.telemetry.enabled", false); - Preferences.lock("toolkit.telemetry.prompted", 999); - Preferences.lock("datareporting.policy.dataSubmissionPolicyBypassNotification", true); - var aboutTelemetry = {}; - aboutTelemetry.classID = Components.ID(uuid.generateUUID().toString()); - aboutTelemetry.factory = disableAbout(aboutTelemetry.classID, - "Disable about:telemetry - CCK", - "telemetry"); - CCK2.aboutFactories.push(aboutTelemetry); - } - if (config.removeDeveloperTools) { - Preferences.lock("devtools.scratchpad.enabled", false); - Preferences.lock("devtools.responsiveUI.enabled", false); - Preferences.lock("devtools.toolbar.enabled", false); - Preferences.lock("devtools.styleeditor.enabled", false); - Preferences.lock("devtools.debugger.enabled", false); - Preferences.lock("devtools.profiler.enabled", false); - Preferences.lock("devtools.errorconsole.enabled", false); - Preferences.lock("devtools.inspector.enabled", false); - } - if (config.homePage && !config.lockHomePage) { - Preferences.defaults.set("browser.startup.homepage", "data:text/plain,browser.startup.homepage=" + config.homePage); - /* If you have a distribution.ini, browser.startup.homepage gets wiped out */ - /* We need to save it */ - if (!Preferences.isSet("browser.startup.homepage")) { - Preferences.set("browser.startup.homepage", config.homePage); - } - } - if (config.lockHomePage) { - if (config.homePage) { - Preferences.lock("browser.startup.homepage", config.homePage); - } else { - Preferences.lock("browser.startup.homepage"); - } - Preferences.lock("pref.browser.homepage.disable_button.current_page", true); - Preferences.lock("pref.browser.homepage.disable_button.bookmark_page", true); - Preferences.lock("pref.browser.homepage.disable_button.restore_default", true); - } - if (config.noWelcomePage) { - Preferences.lock("startup.homepage_welcome_url", ""); - Preferences.lock("startup.homepage_welcome_url.additional", ""); - Preferences.lock("browser.usedOnWindows10", true); - - } else if (config.welcomePage) { - Preferences.lock("startup.homepage_welcome_url", config.welcomePage); - } - if (config.noUpgradePage) { - Preferences.lock("browser.startup.homepage_override.mstone", "ignore"); - } else if (config.upgradePage) { - Preferences.lock("startup.homepage_override_url", config.upgradePage); - } - if (config.dontShowRights) { - Preferences.lock("browser.rights.override", true); - var rightsVersion = Preferences.get("browser.rights.version"); - Preferences.lock("browser.rights." + rightsVersion + ".shown", true); - } - if (config.dontRememberPasswords) { - Preferences.lock("signon.rememberSignons", false); - } - if (config.disableFirefoxHealthReport) { - Preferences.lock("datareporting.healthreport.uploadEnabled", false); - var aboutHealthReport = {}; - aboutHealthReport.classID = Components.ID(uuid.generateUUID().toString()); - aboutHealthReport.factory = disableAbout(aboutHealthReport.classID, - "Disable about:healthreport - CCK", - "healthreport"); - CCK2.aboutFactories.push(aboutHealthReport); - } - if (config.disableFirefoxHealthReportUpload) { - Preferences.lock("datareporting.healthreport.uploadEnabled", false); - } - if (config.disableResetFirefox) { - try { - Cu.import("resource:///modules/UITour.jsm"); - UITour.origOnPageEvent = UITour.onPageEvent; - UITour.onPageEvent = function(a, b) { - var aEvent = b; - if (!aEvent) { - aEvent = a; - } - if (aEvent.detail.action == "resetFirefox") { - Services.prompt.alert(null, "CCK2", "This has been disabled by your administrator"); - return; - } - UITour.origOnPageEvent(a, b); - } - Preferences.lock("browser.disableResetPrompt ", true); - } catch (e) {} - } - if (config.disableFirefoxUpdates) { - Preferences.lock("app.update.auto", false); - Preferences.lock("app.update.enabled", false); - } - if (config.network) { - for (var i in networkPrefMapping) { - if (i in config.network) { - Preferences.defaults.set(networkPrefMapping[i], config.network[i]); - } - if (config.network.locked) { - Preferences.lock(networkPrefMapping[i]); - } - } - } - if (config.removeSnippets) { - Preferences.lock("browser.newtabpage.activity-stream.disableSnippets", true); - } - // Fixup bad strings - if ("helpMenu" in config) { - if ("label" in config.helpMenu) { - config.helpMenu.label = fixupUTF8(config.helpMenu.label); - } - if ("accesskey" in config.helpMenu) { - config.helpMenu.accesskey = fixupUTF8(config.helpMenu.accesskey); - } - } - if ("titlemodifier" in config) { - config.titlemodifier = fixupUTF8(config.titlemodifier); - } - if ("defaultSearchEngine" in config) { - config.defaultSearchEngine = fixupUTF8(config.defaultSearchEngine); - } - this.configs[config.id] = config; - } catch (e) { - errorCritical(e); - } - }, - getConfigs: function() { - return this.configs; - }, - observe: function observe(subject, topic, data) { - switch (topic) { - case "distribution-customization-complete": - for (var id in this.configs) { - var config = this.configs[id]; - // Due to bug 947838, we have to reinitialize default preferences - { - var iniFile = Services.dirsvc.get("XREAppDist", Ci.nsIFile); - iniFile.leafName = "distribution"; - iniFile.append("distribution.ini"); - if (iniFile.exists()) { - if (config.preferences) { - for (var i in config.preferences) { - // Workaround bug where this pref is coming is as a string from import - if (i == "toolkit.telemetry.prompted") { - config.preferences[i].value = parseInt(config.preferences[i].value); - } - if (!("locked" in config.preferences[i]) && - !("userset" in config.preferences[i]) && - !("clear" in config.preferences[i])) { - if (Preferences.defaults.has(i)) { - try { - // If it's a complex preference, we need to set it differently - Services.prefs.getComplexValue(i, Ci.nsIPrefLocalizedString).data; - Preferences.defaults.set(i, "data:text/plain," + i + "=" + config.preferences[i].value); - } catch (ex) { - Preferences.defaults.set(i, config.preferences[i].value); - } - } else { - Preferences.defaults.set(i, config.preferences[i].value); - } - } - } - } - } - if (config.homePage && !config.lockHomePage) { - Preferences.defaults.set("browser.startup.homepage", "data:text/plain,browser.startup.homepage=" + config.homePage); - /* If you have a distribution.ini, we changed browser.startup.homepage */ - /* Put it back */ - if (Preferences.get("browser.startup.homepage") == config.homePage) { - Preferences.reset("browser.startup.homepage"); - } - } - if (config.network) { - for (var i in networkPrefMapping) { - if (i in config.network) { - Preferences.defaults.set(networkPrefMapping[i], config.network[i]); - } - } - } - } - // Try to install devices every time just in case get added after install - if ("certs" in config && "devices" in config.certs) { - let pkcs11; - try { - pkcs11 = Components.classes["@mozilla.org/security/pkcs11;1"].getService(Ci.nsIPKCS11); - } catch (e) { - pkcs11 = Components.classes["@mozilla.org/security/pkcs11moduledb;1"].getService(Ci.nsIPKCS11ModuleDB); - } - for (var i=0; i < config.certs.devices.length; i++) { - var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile); - try { - file.initWithPath(config.certs.devices[i].path); - if (file.exists()) { - pkcs11.addModule(config.certs.devices[i].name, config.certs.devices[i].path, 0, 0); - } - } catch(e) { - // Ignore path errors in case we are on different OSes - } - } - } - if (!config.firstrun && config.installedVersion == config.version) { - continue; - } - if (config.removeSmartBookmarks) { - var smartBookmarks = annos.getItemsWithAnnotation("Places/SmartBookmark", {}); - for (var i = 0; i < smartBookmarks.length; i++) { - try { - bmsvc.removeItem(smartBookmarks[i]); - } catch (ex) {} - } - } - let syncBookmarks = false; - if ("getIdForItemAt" in bmsvc) { - syncBookmarks = true; - } - if (config.removeDefaultBookmarks) { - if (syncBookmarks) { - var firefoxFolder = bmsvc.getIdForItemAt(bmsvc.bookmarksMenuFolder, 3); - if ((firefoxFolder != -1) && (bmsvc.getItemType(firefoxFolder) == bmsvc.TYPE_FOLDER)) { - var aboutMozilla = bmsvc.getIdForItemAt(firefoxFolder, 3); - if (aboutMozilla != -1 && - bmsvc.getItemType(aboutMozilla) == bmsvc.TYPE_BOOKMARK && - /https?:\/\/www.mozilla.(com|org)\/.*\/about/.test(bmsvc.getBookmarkURI(aboutMozilla).spec)) { - bmsvc.removeItem(firefoxFolder); - } - } - var userAgentLocale = Preferences.defaults.get("general.useragent.locale"); - var gettingStartedURL = "https://www.mozilla.org/" + userAgentLocale + "/firefox/central/"; - var bookmarks = bmsvc.getBookmarkIdsForURI(NetUtil.newURI("https://www.mozilla.org/" + userAgentLocale + "/firefox/central/")); - if (bookmarks.length == 0) { - bookmarks = bmsvc.getBookmarkIdsForURI(NetUtil.newURI("http://www.mozilla.com/" + userAgentLocale + "/firefox/central/")); - } - if (bookmarks.length > 0) { - bmsvc.removeItem(bookmarks[0]) - } - var bookmarks = bmsvc.getBookmarkIdsForURI(NetUtil.newURI("https://www.mozilla.org/" + userAgentLocale + "/about/")); - if (bookmarks.length == 0) { - bookmarks = bmsvc.getBookmarkIdsForURI(NetUtil.newURI("http://www.mozilla.com/" + userAgentLocale + "/about/")); - } - if (bookmarks.length > 0) { - var mozillaFolder = bmsvc.getFolderIdForItem(bookmarks[0]); - if (mozillaFolder != -1) { - var mozillaFolderIndex = bmsvc.getItemIndex(mozillaFolder); - var mozillaFolderParent = bmsvc.getFolderIdForItem(mozillaFolder); - bmsvc.removeItem(mozillaFolder); - if (config.removeSmartBookmarks) { - var separator = bmsvc.getIdForItemAt(mozillaFolderParent, mozillaFolderIndex-1); - if (separator != -1) { - bmsvc.removeItem(separator); - } - } - } - } - - } else { - removeDefaultBookmarks(); - } - } - - // If we detect an old CCK Wizard, remove it's bookmarks - var bookmarksToRemove = []; - if ("extension" in config) { - var oldCCKVersion = Preferences.get("extensions." + config.extension.id + ".version", null); - if (oldCCKVersion) { - Preferences.reset("extensions." + config.extension.id + ".version"); - bookmarksToRemove = bookmarksToRemove.concat(annos.getItemsWithAnnotation(config.extension.id + "/" + oldCCKVersion, {})); - } - } - if (config.installedVersion != config.version) { - bookmarksToRemove = bookmarksToRemove.concat(annos.getItemsWithAnnotation(config.id + "/" + config.installedVersion, {})); - bookmarksToRemove = bookmarksToRemove.concat(annos.getItemsWithAnnotation(config.installedVersion + "/" + config.installedVersion, {})); - } - // Just in case, remove bookmarks for this version too - bookmarksToRemove = bookmarksToRemove.concat(annos.getItemsWithAnnotation(config.id + "/" + config.version, {})); - if (syncBookmarks) { - let bmFolders = []; - for (var i = 0; i < bookmarksToRemove.length; i++) { - try { - var itemType = bmsvc.getItemType(bookmarksToRemove[i]); - if (itemType == bmsvc.TYPE_FOLDER) { - bmFolders.push(bookmarksToRemove[i]); - } else { - bmsvc.removeItem(bookmarksToRemove[i]); - } - } catch (e) { - Components.utils.reportError(e); - } - } - if (bmFolders.length > 0) { - // Only remove folders if they are empty - for (var i = 0; i < bmFolders.length; i++) { - try { - var bmID = bmsvc.getIdForItemAt(bmFolders[i], 0); - if (bmID == -1) { - bmsvc.removeItem(bmFolders[i]); - } else { - var newTitle = bmsvc.getItemTitle(bmFolders[i]) + " (" + (oldCCKVersion || config.installedVersion) + ")"; - bmsvc.setItemTitle(bmFolders[i], newTitle); - } - } catch (e) { - bmsvc.removeItem(bmFolders[i]); - } - } - } - } else { - removeOldBookmarks(bookmarksToRemove, oldCCKVersion || config.installedVersion); - } - if (config.bookmarks) { - if (config.bookmarks.toolbar) { - if (syncBookmarks) { - addBookmarksSync(config.bookmarks.toolbar, bmsvc.toolbarFolder, config.id + "/" + config.version, config.removeDuplicateBookmarkNames); - } else { - addBookmarks(config.bookmarks.toolbar, PlacesUtils.bookmarks.toolbarGuid, config.id + "/" + config.version, config.removeDuplicateBookmarkNames); - } - } - if (config.bookmarks.menu) { - if (syncBookmarks) { - addBookmarksSync(config.bookmarks.menu, bmsvc.bookmarksMenuFolder, config.id + "/" + config.version, config.removeDuplicateBookmarkNames); - } else { - addBookmarks(config.bookmarks.menu, PlacesUtils.bookmarks.menuGuid, config.id + "/" + config.version, config.removeDuplicateBookmarkNames); - } - } - } - if (config.searchplugins || config.defaultSearchEngine) { - searchInitRun(function() { - if (Array.isArray(config.searchplugins)) { - for (var i=0; i < config.searchplugins.length; i++) { - Services.search.addEngine(config.searchplugins[i], Ci.nsISearchEngine.DATA_XML, null, false, { - onSuccess: function (engine) { - if (engine.name == config.defaultSearchEngine) { - Services.search.currentEngine = engine; - } - }, - onError: function (errorCode) { - Components.utils.reportError("Engine install error: " + errorCode); - // Ignore errors - } - }); - } - } else { - for (let enginename in config.searchplugins) { - var engine = Services.search.getEngineByName(enginename); - if (engine) { - Services.search.removeEngine(engine); - } - Services.search.addEngine(config.searchplugins[enginename], Ci.nsISearchEngine.DATA_XML, null, false, { - onSuccess: function (engine) { - if (engine.name == config.defaultSearchEngine) { - Services.search.currentEngine = engine; - } - }, - onError: function (errorCode) { - Components.utils.reportError("Engine install error: " + errorCode); - } - }); - } - } - - var defaultSearchEngine = Services.search.getEngineByName(config.defaultSearchEngine); - if (defaultSearchEngine) { - Services.search.currentEngine = defaultSearchEngine; - } - }); - } - if (config.disableSearchEngineInstall) { - try { - Cu.import("resource:///modules/ContentLinkHandler.jsm"); - ContentLinkHandler.origOnLinkAdded = ContentLinkHandler.onLinkAdded; - ContentLinkHandler.onLinkAdded = function(event, chromeGlobal) { - if (event.originalTarget.rel == "search") { - return; - } - ContentLinkHandler.origOnLinkAdded(event, chromeGlobal); - }; - } catch (e) { - // Just in case we are pre Firefox 31 - } - } - } - break; - case "browser-ui-startup-complete": - var disableWebApps = false; - for (var id in this.configs) { - var config = this.configs[id]; - if (config.disableWebApps) { - disableWebApps = true; - break; - } - } - if (!disableWebApps) { - return; - } - try { - Cu.import("resource://gre/modules/WebappManager.jsm"); - } catch (e) { - try { - Cu.import("resource:///modules/WebappManager.jsm"); - } catch (e) {} - } - try { - WebappManager.doInstall = function() { - var win = Services.wm.getMostRecentWindow("navigator:browser"); - var gBrowser = win.gBrowser; - var gNavigatorBundle = win.gNavigatorBundle - messageString = gNavigatorBundle.getString("xpinstallDisabledMessageLocked");; - var options = { - timeout: Date.now() + 30000 - }; - win.PopupNotifications.show(gBrowser.selectedBrowser, "xpinstall-disabled", - messageString, "addons-notification-icon", - null, null, options); - }; - } catch(e) { - // Web Apps was removed - } - break; - case "final-ui-startup": - for (var id in this.configs) { - var config = this.configs[id]; - // Delay loading unnecessary modules - // We should do this on a timeout - loadModules(config); - if (!config.firstrun && config.installedVersion == config.version) { - return; - } - if ("certs" in config) { - if ("override" in config.certs) { - for (var i=0; i < config.certs.override.length; i++) { - var xhr = new XMLHttpRequest(); - try { - xhr.open("GET", "https://" + config.certs.override[i]); - xhr.channel.notificationCallbacks = SSLExceptions; - xhr.send(null); - } catch (ex) {} - } - } - var certdb = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB); - var certdb2 = certdb; - try { - certdb2 = Cc["@mozilla.org/security/x509certdb;1"].getService(Ci.nsIX509CertDB2); - } catch (e) {} - if (config.certs.ca) { - for (var i=0; i < config.certs.ca.length; i++) { - var certTrust; - if (config.certs.ca[i].trust){ - certTrust = config.certs.ca[i].trust - } else { - certTrust = ",,"; - } - if (config.certs.ca[i].url) { - try { - download(config.certs.ca[i].url, function(file, extraParams) { - var istream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream); - istream.init(file, -1, -1, false); - var bstream = Components.classes["@mozilla.org/binaryinputstream;1"].createInstance(Ci.nsIBinaryInputStream); - bstream.setInputStream(istream); - var cert = bstream.readBytes(bstream.available()); - bstream.close(); - istream.close(); - if (/-----BEGIN CERTIFICATE-----/.test(cert)) { - certdb2.addCertFromBase64(fixupCert(cert), extraParams.trust, ""); - } else { - certdb.addCert(cert, extraParams.trust, ""); - } - }, errorCritical, {trust: certTrust}); - } catch (e) { - errorCritical("Unable to install " + config.certs.ca[i].url + " - " + e); - } - } else if (config.certs.ca[i].cert) { - certdb2.addCertFromBase64(fixupCert(config.certs.ca[i].cert), certTrust, ""); - } - } - } - if (config.certs.server) { - for (var i=0; i < config.certs.server.length; i++) { - try { - download(config.certs.server[i], function(file) { - try { - certdb.importCertsFromFile(null, file, Ci.nsIX509Cert.SERVER_CERT); - } catch(e) { - // API removed in bugzilla #1064402 (FF47) - } - }, errorCritical); - } catch (e) { - errorCritical("Unable to install " + config.certs.server[i] + " - " + e); - } - } - } - } - if (config.persona) { - var temp = {}; - Components.utils.import("resource://gre/modules/LightweightThemeManager.jsm", temp); - temp.LightweightThemeManager.currentTheme = config.persona; - } - if (config.addons) { - Cu.import("resource://gre/modules/AddonManager.jsm"); - var numAddonsInstalled = 0; - var numAddons = config.addons.length; - let listener = { - onInstallEnded: function(install, addon) { - if (addon.isActive) { - // restartless add-on, so we don't need to restart - numAddons--; - } else { - numAddonsInstalled++; - } - if (numAddonsInstalled > 0 && - numAddonsInstalled == numAddons) { - Services.startup.quit(Services.startup.eRestart | Services.startup.eAttemptQuit); - } - } - } - for (var i=0; i < config.addons.length; i++) { - try { - AddonManager.getInstallForURL(config.addons[i], function(addonInstall) { - addonInstall.addListener(listener); - addonInstall.install(); - }, "application/x-xpinstall"); - } catch (e) { - try { - AddonManager.getInstallForURL(config.addons[i], "application/x-xpinstall").then(addonInstall => { - addonInstall.addListener(listener); - addonInstall.install(); - }); - } catch (e) { - errorCriticial(e); - } - } - } - } - } - break; - case "load-extension-defaults": - if (gBundlePrefFiles.length > 0) { - // Create a temporary scope so the pref function works - var temp = {}; - temp.pref = function(a, b) { - Preferences.defaults.set(a, b); - } - gBundlePrefFiles.forEach(function(prefFile) { - Components.classes["@mozilla.org/moz/jssubscript-loader;1"] - .getService(Components.interfaces.mozIJSSubScriptLoader) - .loadSubScript(prefFile, temp); - }); - } - break; - case "quit-application": - var registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); - for (var i=0; i < CCK2.aboutFactories.length; i++) - registrar.unregisterFactory(CCK2.aboutFactories[i].classID, CCK2.aboutFactories[i].factory); - break; - } - } -} - -async function removeDefaultBookmarks() { - var firefoxFolder = await PlacesUtils.bookmarks.fetch({ - parentGuid: PlacesUtils.bookmarks.menuGuid, - index: 0}); - if (firefoxFolder && firefoxFolder.type == PlacesUtils.bookmarks.TYPE_FOLDER) { - await PlacesUtils.bookmarks.remove(firefoxFolder); - } - var userAgentLocale = Preferences.defaults.get("general.useragent.locale"); - if (!userAgentLocale) { - userAgentLocale = Services.locale.getRequestedLocales()[0]; - } - var userAgentLocale = "en-US"; - var gettingStartedURL = "https://www.mozilla.org/" + userAgentLocale + "/firefox/central/"; - let bookmarks = []; - await PlacesUtils.bookmarks.fetch({url: gettingStartedURL}, b => bookmarks.push(b)); - for (let bookmark of bookmarks) { - await PlacesUtils.bookmarks.remove(bookmark); - } -} - -async function removeOldBookmarks(oldBookmarks, oldVersion) { - let bmFolders = []; - for (var i = 0; i < oldBookmarks.length; i++) { - try { - let guid = await PlacesUtils.promiseItemGuid(oldBookmarks[i]); - let bookmark = await PlacesUtils.bookmarks.fetch(guid); - if (bookmark.type == PlacesUtils.bookmarks.TYPE_FOLDER) { - bmFolders.push(bookmark); - } else { - await PlacesUtils.bookmarks.remove(bookmark); - } - } catch (ex) { - Components.utils.reportError(ex); - } - } - if (bmFolders.length > 0) { - // Only remove folders if they are empty - for (var i = 0; i < bmFolders.length; i++) { - let bookmarks = []; - await PlacesUtils.bookmarks.fetch({parentGuid: bmFolders[i].guid, index: 0}, b => bookmarks.push(b)); - if (bookmarks.length == 0) { - await PlacesUtils.bookmarks.remove(bmFolders[i]); - } else { - PlacesUtils.bookmarks.update({guid: bmFolders[i].guid, - title: `${bmFolders[i].title} (${oldVersion})`}); - } - } - } -} - -function loadModules(config) { - let globalMM = Cc["@mozilla.org/globalmessagemanager;1"].getService(); - globalMM.addMessageListener("cck2:get-configs", function(message) { - return CCK2.configs; - }); - globalMM.addMessageListener("cck2:open-url", function(message) { - var win = Services.wm.getMostRecentWindow("navigator:browser"); - if (win) { - win.openUILinkIn(message.data.url, message.data.where); - } - }); - Cu.import("resource://cck2/CCK2AboutDialogOverlay.jsm"); - Cu.import("resource://cck2/CCK2AboutAddonsOverlay.jsm"); - Cu.import("resource://cck2/CCK2PreferencesOverlay.jsm"); - globalMM.loadFrameScript("resource://cck2/CCK2Framescript.js", true); - globalMM.loadFrameScript("resource://cck2/CCK2AboutHomeFramescript.js", true); - globalMM.loadFrameScript("resource://cck2/CAPSCheckLoadURIFramescript.js", true); - globalMM.loadFrameScript("resource://cck2/CAPSClipboardFramescript.js", true); - Cu.import("resource://cck2/CCK2AboutSupportOverlay.jsm"); - Cu.import("resource://cck2/CCK2BrowserOverlay.jsm"); - Cu.import("resource://cck2/CCK2FileBlock.jsm"); -} - -function addRegistryKey(RootKey, Key, Name, NameValue, Type) { - const nsIWindowsRegKey = Ci.nsIWindowsRegKey; - var key = null; - - try { - key = Cc["@mozilla.org/windows-registry-key;1"] - .createInstance(nsIWindowsRegKey); - var rootKey; - switch (RootKey) { - case "HKEY_CLASSES_ROOT": - rootKey = nsIWindowsRegKey.ROOT_KEY_CLASSES_ROOT; - break; - case "HKEY_CURRENT_USER": - rootKey = nsIWindowsRegKey.ROOT_KEY_CURRENT_USER; - break; - default: - rootKey = nsIWindowsRegKey.ROOT_KEY_LOCAL_MACHINE; - break; - } - - key.create(rootKey, Key, nsIWindowsRegKey.ACCESS_WRITE); - - switch (Type) { - case "REG_DWORD": - key.writeIntValue(Name, NameValue); - break; - case "REG_QWORD": - key.writeInt64Value(Name, NameValue); - break; - case "REG_BINARY": - key.writeBinaryValue(Name, NameValue); - break; - case "REG_SZ": - default: - key.writeStringValue(Name, NameValue); - break; - } - key.close(); - } catch (ex) { - /* This could fail if you don't have the right authority on Windows */ - if (key) { - key.close(); - } - } -} - -function addBookmarksSync(bookmarks, destination, annotation, removeDuplicateBookmarkNames) { - for (var i =0; i < bookmarks.length; i++) { - if (bookmarks[i].folder) { - var newFolderId = bmsvc.createFolder(destination, fixupUTF8(bookmarks[i].name), bmsvc.DEFAULT_INDEX); - annos.setItemAnnotation(newFolderId, annotation, "true", 0, annos.EXPIRE_NEVER); - addBookmarksSync(bookmarks[i].folder, newFolderId, annotation, removeDuplicateBookmarkNames); - } else if (bookmarks[i].type == "separator") { - var separatorId = bmsvc.insertSeparator(destination, bmsvc.DEFAULT_INDEX); - annos.setItemAnnotation(separatorId, annotation, "true", 0, annos.EXPIRE_NEVER); - } else { - try { - var uri = NetUtil.newURI(bookmarks[i].location); - var title = fixupUTF8(bookmarks[i].name); - var bookmarkIds = bmsvc.getBookmarkIdsForURI(uri, {}, {}); - if (bookmarkIds.length > 0) { - // Remove duplicate bookmarks - for (var j=0; j < bookmarkIds.length; j++) { - // Unfortunately there's no way to generically - // check for any annotation, so we assume it is ours. - // We at least check if the destination is the same - let folderID = bmsvc.getFolderIdForItem(bookmarkIds[j]); - if (bmsvc.getItemTitle(bookmarkIds[j]) == title && - destination == folderID) { - bmsvc.removeItem(bookmarkIds[j]); - } - } - } - if (removeDuplicateBookmarkNames) { - // This is hideous. There's no way to get the number of children - // in a folder, so we do a loop to get a quick count so we can - // work backwards. - let numItems = 0; - do { - let bmId = bmsvc.getIdForItemAt(destination, numItems); - if (bmId == -1) { - break; - } - numItems++; - } while (numItems < 50) // Failsafe just in case we somehow end up in a loop - for (var k=numItems; k > 0; k--) { - let bmId = bmsvc.getIdForItemAt(destination, k-1); - if (bmId == -1) { // Shouldn't happen - break; - } - if (bmsvc.getItemTitle(bmId) == title) { - bmsvc.removeItem(bmId); - } - } - } - var newBookmarkId = bmsvc.insertBookmark(destination, uri, bmsvc.DEFAULT_INDEX, title); - annos.setItemAnnotation(newBookmarkId, annotation, "true", 0, annos.EXPIRE_NEVER); - } catch(e) { - Components.utils.reportError(e); - } - } - } -} - -let BOOKMARK_GUID_PREFIX = "CCKB-"; -let FOLDER_GUID_PREFIX = "CCKF-"; -let SEPARATOR_GUID_PREFIX = "CCKS-"; - -function generateGuidWithPrefix(prefix) { - // Generates a random GUID and replace its beginning with the given - // prefix. We do this instead of just prepending the prefix to keep - // the correct character length. - return prefix + PlacesUtils.history.makeGuid().substring(prefix.length); -} - -async function addBookmarks(bookmarks, parentGuid, annotation, removeDuplicateBookmarkNames) { - for (var i =0; i < bookmarks.length; i++) { - if (bookmarks[i].folder) { - let guid = generateGuidWithPrefix(FOLDER_GUID_PREFIX); - await PlacesUtils.bookmarks.insert({ - type: PlacesUtils.bookmarks.TYPE_FOLDER, - title: fixupUTF8(bookmarks[i].name), - guid, - parentGuid - }); - let newFolderId = await PlacesUtils.promiseItemId(guid); - annos.setItemAnnotation(newFolderId, annotation, "true", 0, annos.EXPIRE_NEVER); - addBookmarks(bookmarks[i].folder, guid, annotation, removeDuplicateBookmarkNames); - } else if (bookmarks[i].type == "separator") { - let guid = generateGuidWithPrefix(SEPARATOR_GUID_PREFIX); - await PlacesUtils.bookmarks.insert({ - type: PlacesUtils.bookmarks.TYPE_SEPARATOR, - guid, - parentGuid - }); - let newSeparatorId = await PlacesUtils.promiseItemId(guid); - annos.setItemAnnotation(newSeparatorId, annotation, "true", 0, annos.EXPIRE_NEVER); - } else { - try { - var title = fixupUTF8(bookmarks[i].name); - let bookmarksArray = []; - await PlacesUtils.bookmarks.fetch({url: bookmarks[i].location}, b => bookmarksArray.push(b)); - for (let bookmark of bookmarksArray) { - // Unfortunately there's no way to generically - // check for any annotation, so we assume it is ours. - // We at least check if the destination is the same - if (bookmark.title == title && - bookmark.parentGuid == parentGuid) { - } - await PlacesUtils.bookmarks.remove(bookmark); - } - if (removeDuplicateBookmarkNames) { - try { - await PlacesUtils.bookmarks.fetch({parentGuid}, b => bookmarksArray.push(b)); - for (var k=bookmarksArray.length; k > 0; k--) { - if (bookmarks[i].title == title) { - await PlacesUtils.bookmarks.remove(bookmarksArray[i]); - } - } - } catch(e) { - // Bad index errors in some cases - } - } - let guid = generateGuidWithPrefix(BOOKMARK_GUID_PREFIX); - await PlacesUtils.bookmarks.insert({ - url: bookmarks[i].location, - title: fixupUTF8(bookmarks[i].name), - guid, - parentGuid - }); - let newBookmarkId = await PlacesUtils.promiseItemId(guid); - annos.setItemAnnotation(newBookmarkId, annotation, "true", 0, annos.EXPIRE_NEVER); - } catch(e) { - Components.utils.reportError(e); - } - } - } -} - -function errorCritical(e) { - var stack = e.stack; - if (!stack) { - stack = Error().stack; - } - Components.utils.reportError("CCK2: " + e + "\n\n" + stack); -} - -/** - * If the search service is not available, passing function - * to search service init - */ -function searchInitRun(func) -{ - if (Services.search.init && !Services.search.isInitialized) - Services.search.init(func); - else - func(); -} - -/** - * Remove all extraneous info from a certificates. addCertFromBase64 requires - * just the cert with no whitespace or anything. - * - * @param {String} certificate text - * @returns {String} certificate text cleaned up - */ -function fixupCert(cert) { - var beginCert = "-----BEGIN CERTIFICATE-----"; - var endCert = "-----END CERTIFICATE-----"; - - cert = cert.replace(/[\r\n]/g, ""); - var begin = cert.indexOf(beginCert); - var end = cert.indexOf(endCert); - return cert.substring(begin + beginCert.length, end); -} - -/** - * Download the given URL to the user's download directory - * - * @param {String} URL of the file - * @param {function} Function to call on success - called with nsIFile - * @param {String} Function to call on failure - * @param {Object} extraParams passed to callback - * @returns {nsIFile} Downloaded file - */ -function download(url, successCallback, errorCallback, extraParams) { - var uri = Services.io.newURI(url, null, null); - - var channel = Services.io.newChannelFromURI(uri); - - var downloader = Cc["@mozilla.org/network/downloader;1"].createInstance(Ci.nsIDownloader); - var listener = { - onDownloadComplete: function(downloader, request, ctxt, status, result) { - if (Components.isSuccessCode(status)) { - result.QueryInterface(Ci.nsIFile); - if (result.exists() && result.fileSize > 0) { - successCallback(result, extraParams); - return; - } - } - errorCallback(new Error("Download failed (" + status + " for " + url)); - } - } - downloader.init(listener, null); - channel.asyncOpen(downloader, null); -} - -/** - * Used to allow the overriding of certificates - */ -var SSLExceptions = { - getInterface: function(uuid) { - return this.QueryInterface(uuid); - }, - QueryInterface: function(uuid) { - if (uuid.equals(Ci.nsIBadCertListener2) || - uuid.equals(Ci.nsISupports)) - return this; - throw Components.results.NS_ERROR_NO_INTERFACE; - }, - - notifyCertProblem: function (socketInfo, status, targetSite) { - status.QueryInterface(Ci.nsISSLStatus); - - let flags = 0; - - if (status.isUntrusted) - flags |= override.ERROR_UNTRUSTED; - if (status.isDomainMismatch) - flags |= override.ERROR_MISMATCH; - if (status.isNotValidAtThisTime) - flags |= override.ERROR_TIME; - - var hostInfo = targetSite.split(":"); - - override.rememberValidityOverride( - hostInfo[0], - hostInfo[1], - status.serverCert, - flags, - false); - return true; // Don't show error UI - } -}; - -var gAboutXHTML = '' + -'' + -' ' + -' ' + -' ' + -' ' + -' ' + -' ' + -'

' + -'
' + -'

%s

' + -'
' + -'
' + -'
' + -'

Access to %s has been disabled by your administrator.

' + -'
' + -'
' + -'
' + -' ' + -' ' + -'' + -''; - -/** - * Register a component that replaces an about page - * - * @param {String} The ClassID of the class being registered. - * @param {String} The name of the class being registered. - * @param {String} The type of about to be disabled (config/addons/privatebrowsing) - * @returns {Object} The factory to be used to unregister - */ -function disableAbout(aClass, aClassName, aboutType) { - var gAbout = { - newChannel : function (aURI, aLoadInfo) { - var url = "data:text/html," + gAboutXHTML; - var channel = Services.io.newChannelFromURIWithLoadInfo(NetUtil.newURI(url), aLoadInfo); - channel.originalURI = aURI; - return channel; - }, - getURIFlags : function getURIFlags(aURI) { - return Ci.nsIAboutModule.HIDE_FROM_ABOUTABOUT; - }, - - QueryInterface: XPCOMUtils.generateQI([Ci.nsIAboutModule]), - - createInstance: function(outer, iid) { - return this.QueryInterface(iid); - }, - }; - - var registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); - registrar.registerFactory(aClass, aClassName, "@mozilla.org/network/protocol/about;1?what=" + aboutType, gAbout); - return gAbout; -} - -var documentObserver = { - observe: function observe(subject, topic, data) { - if (subject instanceof Ci.nsIDOMWindow) { - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - if (topic == "chrome-document-global-created" || - (topic == "content-document-global-created" && win.document.documentURIObject.scheme == "about")) { - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var configs = CCK2.getConfigs(); - for (var id in configs) { - var config = configs[id]; - if (config.hiddenUI) { - for (var i=0; i < config.hiddenUI.length; i++) { - var uiElements = doc.querySelectorAll(config.hiddenUI[i]); - for (var j=0; j < uiElements.length; j++) { - var uiElement = uiElements[j]; - uiElement.setAttribute("hidden", "true"); - } - } - } - } - }, false); - } - } - } -} - -function copyDir(aOriginal, aDestination) { - var enumerator = aOriginal.directoryEntries; - while (enumerator.hasMoreElements()) { - var file = enumerator.getNext().QueryInterface(Components.interfaces.nsIFile); - if (file.isDirectory()) { - var subdir = aDestination.clone(); - subdir.append(file.leafName); - subdir.create(Ci.nsIFile.DIRECTORY_TYPE, FileUtils.PERMS_DIRECTORY); - copyDir(file, subdir); - } else { - file.copyTo(aDestination, null); - } - } -} - -function loadBundleDirs() { - var cck2BundleDir = Services.dirsvc.get("GreD", Ci.nsIFile); - cck2BundleDir.append("cck2"); - cck2BundleDir.append("bundles"); - if (!cck2BundleDir.exists() || !cck2BundleDir.isDirectory()) { - return; - } - var enumerator = cck2BundleDir.directoryEntries; - while (enumerator.hasMoreElements()) { - var file = enumerator.getNext().QueryInterface(Ci.nsIFile); - var dirName = file.leafName; - file.append("chrome.manifest"); - Components.manager.QueryInterface(Ci.nsIComponentRegistrar).autoRegister(file); - file.leafName = "defaults"; - file.append("preferences"); - if (!file.exists() || !file.isDirectory()) { - continue; - } - // In order to load prefs, we have to use a chrome URL. - // Create a resource that maps to the prefs directory. - var prefAlias = Services.io.newFileURI(file); - var resource = Services.io.getProtocolHandler("resource") - .QueryInterface(Ci.nsIResProtocolHandler); - resource.setSubstitution(dirName + "_prefs", prefAlias); - var prefEnumerator = file.directoryEntries; - while (prefEnumerator.hasMoreElements()) { - var prefFile = prefEnumerator.getNext().QueryInterface(Ci.nsIFile); - gBundlePrefFiles.push("resource://" + dirName + "_prefs/" + prefFile.leafName); - } - } -} - -Services.obs.addObserver(CCK2, "distribution-customization-complete", false); -Services.obs.addObserver(CCK2, "final-ui-startup", false); -Services.obs.addObserver(CCK2, "browser-ui-startup-complete", false); -Services.obs.addObserver(documentObserver, "chrome-document-global-created", false); -Services.obs.addObserver(documentObserver, "content-document-global-created", false); -Services.obs.addObserver(CCK2, "load-extension-defaults", false); -try { - loadBundleDirs() -} catch (e) { - Components.utils.reportError(e); -} diff --git a/windows/build/preferences/cck2/modules/CCK2AboutAddonsOverlay.jsm b/windows/build/preferences/cck2/modules/CCK2AboutAddonsOverlay.jsm deleted file mode 100644 index ea1bbd1..0000000 --- a/windows/build/preferences/cck2/modules/CCK2AboutAddonsOverlay.jsm +++ /dev/null @@ -1,111 +0,0 @@ -/* This file overlays about:addons. It does the following: */ -/* Workaround https://bugzilla.mozilla.org/show_bug.cgi?id=1132971 */ -/* Hide the "Install Add-on From File" menu if xpinstall.enabled is false */ -/* Hides the discover pane if xpinstall.enabled is false */ -/* Hides the add-on entry if specified in the CCK2 config */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://cck2/CCK2.jsm"); - -var addonId = "cck2wizard@kaply.com"; - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "chrome-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "about:addons": - case "chrome://mozapps/content/extensions/extensions.xul": - var configs = CCK2.getConfigs(); - var hiddenAddons = []; - var requiredAddons = []; - for (let id in configs) { - var config = configs[id]; - if (config && "extension" in config && config.extension.hide) { - hiddenAddons.push(config.extension.id); - } - if (config.requiredAddons) { - requiredAddons.push.apply(requiredAddons, config.requiredAddons.split(",")); - } - } - if (hiddenAddons.length > 0 || requiredAddons.length > 0) { - var ss; - for (var i = 0; i < doc.styleSheets.length; i++) { - if (doc.styleSheets[i].href == "chrome://mozapps/skin/extensions/extensions.css") { - ss = doc.styleSheets[i]; - break; - } - } - for (var i=0; i < hiddenAddons.length; i++) { - ss.insertRule("richlistitem[value='" + hiddenAddons[i] + "'] { display: none;}", ss.cssRules.length); - } - for (var i=0; i < requiredAddons.length; i++) { - ss.insertRule("richlistitem[value='" + requiredAddons[i] + "'] button[anonid='disable-btn'] { display: none;}", ss.cssRules.length); - ss.insertRule("richlistitem[value='" + requiredAddons[i] + "'] button[anonid='remove-btn'] { display: none;}", ss.cssRules.length); - } - if (requiredAddons.length > 0) { - win.gViewController.commands.cmd_disableItem.origIsEnabled = win.gViewController.commands.cmd_disableItem.isEnabled; - win.gViewController.commands.cmd_disableItem.isEnabled = function(aAddon) { if (aAddon && requiredAddons.indexOf(aAddon.id) != -1) return false; return this.origIsEnabled;} - win.gViewController.commands.cmd_uninstallItem.origIsEnabled = win.gViewController.commands.cmd_disableItem.isEnabled; - win.gViewController.commands.cmd_uninstallItem.isEnabled = function(aAddon) { if (aAddon && requiredAddons.indexOf(aAddon.id) != -1) return false; return this.origIsEnabled;} - } - } - var showDiscoverPane = true; - var xpinstallEnabled = true; - try { - xpinstallEnabled = Services.prefs.getBoolPref("xpinstall.enabled"); - } catch (e) {} - try { - showDiscoverPane = Services.prefs.getBoolPref("extensions.getAddons.showPane"); - } catch (e) {} - if (!xpinstallEnabled || !showDiscoverPane) { - // Work around Mozilla bug 1132971 - // Hide the discover pane if it is the selected pane - if (E("view-port", doc) && E("view-port", doc).selectedIndex == 0) { - try { - win.gViewController.loadView("addons://list/extension"); - } catch (ex) { - // This fails with Webconverger installed. Ignore it. - } - } - } - if (!xpinstallEnabled) { - // Hide the "Install Add-on From File" separator - hide(E("utils-installFromFile-separator", doc)); - // Hide the "Install Add-on From File" menuitem - hide(E("utils-installFromFile", doc)); - win.gDragDrop.onDragOver = function(event) { - event.dataTransfer.dropEffect = "none"; - event.stopPropagation(); - event.preventDefault(); - }; - } - break; - } - }, false); - break; - } - } -} - -Services.obs.addObserver(observer, "chrome-document-global-created", false); - -function E(id, context) { - var element = context.getElementById(id); - return element; -} - -function hide(element) { - if (element) { - element.setAttribute("hidden", "true"); - } -} diff --git a/windows/build/preferences/cck2/modules/CCK2AboutDialogOverlay.jsm b/windows/build/preferences/cck2/modules/CCK2AboutDialogOverlay.jsm deleted file mode 100644 index 630e27b..0000000 --- a/windows/build/preferences/cck2/modules/CCK2AboutDialogOverlay.jsm +++ /dev/null @@ -1,33 +0,0 @@ -/* This file is a workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1139509 */ -/* It bolds the Firefox version in the about dialog and unbolds the distribution information */ -/* It can be removed once Firefox 38 ESR is out of support */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "chrome-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "chrome://browser/content/aboutDialog.xul": - doc.querySelector("#version").style.fontWeight = "bold"; - doc.querySelector("#distribution").style.fontWeight = "normal"; - doc.querySelector("#distributionId").style.fontWeight = "normal"; - break; - } - }, false); - break; - } - } -} - -Services.obs.addObserver(observer, "chrome-document-global-created", false); diff --git a/windows/build/preferences/cck2/modules/CCK2AboutHomeFramescript.js b/windows/build/preferences/cck2/modules/CCK2AboutHomeFramescript.js deleted file mode 100644 index 98e5b3d..0000000 --- a/windows/build/preferences/cck2/modules/CCK2AboutHomeFramescript.js +++ /dev/null @@ -1,79 +0,0 @@ -/* This file overrides about:home. It does the following: - * Remove the sync button if Sync is disabled - * Remove the Addons button if Sync is disabled - * Remove the snippets if snippets are disabled - */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); - -var configs = null; - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "content-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "about:home": - case "chrome://browser/content/abouthome/aboutHome.xhtml": - if (!configs) { - // TODO - Make this Async - configs = sendSyncMessage("cck2:get-configs")[0]; - } - for (let id in configs) { - var config = configs[id]; - if (config.disableSync) { - remove(E("sync", doc)); - } - if (config.disableAddonsManager) { - remove(E("addons", doc)); - } - if (config.disableWebApps) { - remove(E("apps", doc)); - } - if (config.removeSnippets) { - var snippets = E("snippets", doc); - if (snippets) { - snippets.style.display = "none"; - } - } - if (config.hiddenUI) { - for (var i=0; i < config.hiddenUI.length; i++) { - var uiElements = doc.querySelectorAll(config.hiddenUI[i]); - for (var j=0; j < uiElements.length; j++) { - var uiElement = uiElements[j]; - uiElement.setAttribute("hidden", "true"); - } - } - } - } - break; - } - }, false); - break; - } - } -} -Services.obs.addObserver(observer, "content-document-global-created", false); - -addEventListener("unload", function() { - Services.obs.removeObserver(observer, "content-document-global-created", false); -}) - -function E(id, context) { - var element = context.getElementById(id); - return element; -} - -function remove(element) { - if (element && element.parentNode) - element.parentNode.removeChild(element); -} diff --git a/windows/build/preferences/cck2/modules/CCK2AboutSupportOverlay.jsm b/windows/build/preferences/cck2/modules/CCK2AboutSupportOverlay.jsm deleted file mode 100644 index 4da8fba..0000000 --- a/windows/build/preferences/cck2/modules/CCK2AboutSupportOverlay.jsm +++ /dev/null @@ -1,62 +0,0 @@ -/* This file overrides about:support It does the following: - * Remove the reset Firefox button if disableResetFirefox is set - * Remove the safe mode Button if disableSafeMode is set - * Remove the box if both are set - */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://cck2/CCK2.jsm"); - -var configs = null; - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "chrome-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "about:support": - case "chrome://global/content/aboutSupport.xhtml": - if (!configs) { - configs = CCK2.getConfigs(); - } - for (let id in configs) { - var config = configs[id]; - if (config.disableResetFirefox) { - remove(E("reset-box", doc)); - } - if (config.disableSafeMode) { - remove(E("safe-mode-box", doc)); - } - if (config.disableResetFirefox && - config.disableSafeMode) { - remove(E("action-box", doc)); - } - } - break; - } - }, false); - break; - } - } -} -Services.obs.addObserver(observer, "chrome-document-global-created", false); - -function E(id, context) { - var element = context.getElementById(id); - return element; -} - - -function remove(element) { - if (element && element.parentNode) - element.parentNode.removeChild(element); -} diff --git a/windows/build/preferences/cck2/modules/CCK2BrowserOverlay.jsm b/windows/build/preferences/cck2/modules/CCK2BrowserOverlay.jsm deleted file mode 100644 index 52d59fb..0000000 --- a/windows/build/preferences/cck2/modules/CCK2BrowserOverlay.jsm +++ /dev/null @@ -1,373 +0,0 @@ -/* This file modifies the main browser window. It does the following: - * Goes through the hiddenUI list and hides any UI - * - */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource:///modules/CustomizableUI.jsm"); -Cu.import("resource://gre/modules/PrivateBrowsingUtils.jsm"); -Cu.import("resource://cck2/CCK2.jsm"); - -var configs = null; - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "chrome-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "chrome://browser/content/browser.xul": - // Workaround https://bugzilla.mozilla.org/show_bug.cgi?id=1149617 - var origSetReportPhishingMenu = win.gSafeBrowsing.setReportPhishingMenu; - win.gSafeBrowsing.setReportPhishingMenu = function() { - try { - origSetReportPhishingMenu(); - } catch (e) {} - } - - win.addEventListener("unload", function onUnload(event) { - win.removeEventListener("unload", onUnload, false); - var panelUIPopup = doc.getElementById("PanelUI-popup"); - if (panelUIPopup) { - E("PanelUI-popup", doc).removeEventListener("popupshowing", onPanelShowing, false); - } - }); - var panelUIPopup = doc.getElementById("PanelUI-popup"); - if (panelUIPopup) { - E("PanelUI-popup", doc).addEventListener("popupshowing", onPanelShowing, false); - } - var appMenuPopup = doc.getElementById("appMenu-popup"); - if (appMenuPopup) { - E("appMenu-popup", doc).addEventListener("popupshowing", onAppMenuShowing, false); - } - configs = CCK2.getConfigs(); - for (let id in configs) { - config = configs[id]; - if (config.disablePrivateBrowsing && - PrivateBrowsingUtils.isWindowPrivate(win)) { - win.setTimeout(function() { - Services.prompt.alert(win, "Private Browsing", "Private Browsing has been disabled by your administrator"); - win.close(); - }, 0, false); - } - if (config.disablePrivateBrowsing) { - disablePrivateBrowsing(doc); - } - if (config.disableSync) { - disableSync(doc); - } - if (config.disableAddonsManager) { - disableAddonsManager(doc); - } - if (config.removeDeveloperTools) { - Services.tm.mainThread.dispatch(function() { - removeDeveloperTools(doc); - }, Ci.nsIThread.DISPATCH_NORMAL); - } - if (config.disableErrorConsole) { - disableErrorConsole(doc); - } - if (config.disableFirefoxHealthReport) { - var healthReportMenu = doc.getElementById("healthReport"); - if (healthReportMenu) { - healthReportMenu.parentNode.removeChild(healthReportMenu); - } - } - if (config.removeSafeModeMenu) { - hide(E("helpSafeMode", doc)); - } - if (config.titlemodifier) { - doc.getElementById("main-window").setAttribute("titlemodifier", config.titlemodifier); - } - if (config.removeSetDesktopBackground) { - // Because this is on a context menu, we can't use "hidden" - if (E("context-setDesktopBackground", doc)) { - E("context-setDesktopBackground", doc).setAttribute("style", "display: none;"); - } - } - if (config.disableWebApps) { - CustomizableUI.destroyWidget("web-apps-button"); - hide(E("menu_openApps", doc)); - } - if (config.disableHello) { - CustomizableUI.destroyWidget("loop-button"); - hide(E("menu_openLoop", doc)); - } - if (config.disablePocket) { - CustomizableUI.destroyWidget("pocket-button"); - } - if (config.disableSharePage) { - CustomizableUI.destroyWidget("social-share-button"); - // Because these are on a context menu, we can't use "hidden" - if (E("context-sharelink", doc)) { - E("context-sharelink", doc).setAttribute("style", "display: none;"); - } - if (E("context-shareselect", doc)) { - E("context-shareselect", doc).setAttribute("style", "display: none;"); - } - if (E("context-shareimage", doc)) { - E("context-shareimage", doc).setAttribute("style", "display: none;"); - } - if (E("context-sharevideo", doc)) { - E("context-sharevideo", doc).setAttribute("style", "display: none;"); - } - if (E("context-sharepage", doc)) { - E("context-sharepage", doc).setAttribute("style", "display: none;"); - } - } - if (config.disableSocialAPI) { - win.SocialActivationListener = {}; - } - if (config.disableForget) { - CustomizableUI.destroyWidget("panic-button"); - } - if (config.hiddenUI) { - hideUIElements(doc, config.hiddenUI); - } - if (config.helpMenu) { - // We need to run this function on a delay, because we won't know - // if the about menu is hidden for mac until after it is run. - Services.tm.mainThread.dispatch(function() { - var helpMenuPopup = doc.getElementById("menu_HelpPopup"); - var menuitem = doc.createElement("menuitem"); - menuitem.setAttribute("label", config.helpMenu.label); - if ("accesskey" in config.helpMenu) { - menuitem.setAttribute("accesskey", config.helpMenu.accesskey); - } - menuitem.setAttribute("oncommand", "openUILink('" + config.helpMenu.url + "');"); - menuitem.setAttribute("onclick", "checkForMiddleClick(this, event);"); - if (!E("aboutName", doc) || E("aboutName", doc).hidden) { - // Mac - helpMenuPopup.appendChild(menuitem); - } else { - helpMenuPopup.insertBefore(menuitem, E("aboutName", doc)); - helpMenuPopup.insertBefore(doc.createElement("menuseparator"), - E("aboutName", doc)); - } - }, Ci.nsIThread.DISPATCH_NORMAL); - } - if (config.firstrun || config.upgrade) { - if (config.displayBookmarksToolbar || (config.bookmarks && config.bookmarks.toolbar)) { - CustomizableUI.setToolbarVisibility("PersonalToolbar", "true"); - } - if (config.displayMenuBar) { - CustomizableUI.setToolbarVisibility("toolbar-menubar", "true"); - } - if (config.showSearchBar) { - CustomizableUI.addWidgetToArea("search-container", CustomizableUI.AREA_NAVBAR, - CustomizableUI.getPlacementOfWidget("urlbar-container").position + 1); - } - config.firstrun = false; - config.upgrade = false; - } - } - break; - case "chrome://browser/content/places/places.xul": - case "chrome://browser/content/bookmarks/bookmarksPanel.xul": - case "chrome://browser/content/history/history-panel.xul": - configs = CCK2.getConfigs(); - for (let id in configs) { - var config = configs[id]; - if (config.disablePrivateBrowsing) { - if (E("placesContext_open:newprivatewindow", doc)) { - E("placesContext_open:newprivatewindow", doc).setAttribute("style", "display: none;"); - } - } - if (config.hiddenUI) { - hideUIElements(doc, config.hiddenUI); - } - } - break; - } - }, false); - break; - } - } -} -Services.obs.addObserver(observer, "chrome-document-global-created", false); - -function disableSync(doc) { - var win = doc.defaultView; - if (win.gSyncUI) { - var mySyncUI = { - init: function() { - return; - }, - initUI: function() { - return; - }, - updateUI: function() { - hide(E("sync-setup-state", doc)); - hide(E("sync-syncnow-state", doc)); - hide(E("sync-setup", doc)); - hide(E("sync-syncnowitem", doc)); - } - } - win.gSyncUI = mySyncUI; - } - CustomizableUI.destroyWidget("sync-button"); - CustomizableUI.removeWidgetFromArea("sync-button"); - var toolbox = doc.getElementById("navigator-toolbox"); - if (toolbox && toolbox.palette) { - let element = toolbox.palette.querySelector("#sync-button"); - if (element) { - element.parentNode.removeChild(element); - } - } - hide(E("sync-setup-state", doc)); - hide(E("sync-syncnow-state", doc)); - hide(E("sync-setup", doc)); - hide(E("sync-syncnowitem", doc)); -} - -function disablePrivateBrowsing(doc) { - disable(E("Tools:PrivateBrowsing", doc)); - hide(E("menu_newPrivateWindow", doc)); - // Because this is on a context menu, we can't use "hidden" - if (E("context-openlinkprivate", doc)) - E("context-openlinkprivate", doc).setAttribute("style", "display: none;"); - if (E("placesContext_open:newprivatewindow", doc)) - E("placesContext_open:newprivatewindow", doc).setAttribute("style", "display: none;"); - CustomizableUI.destroyWidget("privatebrowsing-button") -} - -function disableAddonsManager(doc) { - hide(E("menu_openAddons", doc)); - disable(E("Tools:Addons", doc)); // Ctrl+Shift+A - CustomizableUI.destroyWidget("add-ons-button") -} - -function removeDeveloperTools(doc) { - var win = doc.defaultView; - // Need to delay this because devtools is created dynamically - win.setTimeout(function() { - CustomizableUI.destroyWidget("developer-button") - hide(E("webDeveloperMenu", doc)); - var devtoolsKeyset = doc.getElementById("devtoolsKeyset"); - if (devtoolsKeyset) { - for (var i = 0; i < devtoolsKeyset.childNodes.length; i++) { - devtoolsKeyset.childNodes[i].removeAttribute("oncommand"); - devtoolsKeyset.childNodes[i].removeAttribute("command"); - } - } - }, 0); - try { - doc.getElementById("Tools:ResponsiveUI").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:Scratchpad").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:BrowserConsole").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:BrowserToolbox").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:DevAppsMgr").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:DevToolbar").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:DevToolbox").removeAttribute("oncommand"); - } catch (e) {} - try { - doc.getElementById("Tools:DevToolbarFocus").removeAttribute("oncommand"); - } catch (e) {} - CustomizableUI.destroyWidget("developer-button") -} - -function disableErrorConsole(doc) { - doc.getElementById("Tools:ErrorConsole").removeAttribute("oncommand"); -} - -function onPanelShowing(event) { - var configs = CCK2.getConfigs(); - for (let id in configs) { - var config = configs[id]; - if (config.disableSync) { - hide(E("PanelUI-fxa-status", event.target.ownerDocument)); - hide(E("PanelUI-footer-fxa", event.target.ownerDocument)); // Firefox 42+ - } - } -} - -function onAppMenuShowing(event) { - var configs = CCK2.getConfigs(); - for (let id in configs) { - var config = configs[id]; - if (config.disableSync) { - hide(E("appMenu-fxa-container", event.target.ownerDocument)); - } - if (config.removeDeveloperTools) { - hide(E("appMenu-developer-button", event.target.ownerDocument)); - } - } -} - -function E(id, context) { - var element = context.getElementById(id); - return element; -} - -function hide(element) { - if (element) { - element.setAttribute("hidden", "true"); - } -} - -function disable(element) { - if (element) { - element.disabled = true; - element.setAttribute("disabled", "true"); - } -} - -function hideUIElements(doc, hiddenUI) { - for (var i=0; i < hiddenUI.length; i++) { - var uiElements = doc.querySelectorAll(hiddenUI[i]); - // Don't use .hidden since it doesn't work sometimes - var style = doc.getElementById("cck2-hidden-style"); - if (!style) { - style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style"); - style.setAttribute("id", "cck2-hidden-style"); - style.setAttribute("type", "text/css"); - doc.documentElement.appendChild(style); - } - style.textContent = style.textContent + hiddenUI[i] + "{display: none !important;}"; - if (!uiElements || uiElements.length == 0) { - continue; - } - for (var j=0; j < uiElements.length; j++) { - var uiElement = uiElements[j]; - if (uiElement.nodeName == "menuitem") { - uiElement.removeAttribute("key"); - uiElement.removeAttribute("oncommand"); - if (uiElement.hasAttribute("command")) { - var commandId = uiElement.getAttribute("command"); - uiElement.removeAttribute("command"); - var command = doc.getElementById(commandId); - command.removeAttribute("oncommand"); - var keys = doc.querySelectorAll("key[command='" + commandId + "']") - for (var k=0; k < keys.length; k++) { - keys[k].removeAttribute("command"); - } - } - } - // Horrible hack to work around the crappy Australis help menu - // Items on the menu always show up in the Australis menu, so we have to remove them. - if (uiElements[j].parentNode.id == "menu_HelpPopup") { - uiElements[j].parentNode.removeChild(uiElements[j]); - } - } - } -} diff --git a/windows/build/preferences/cck2/modules/CCK2FileBlock.jsm b/windows/build/preferences/cck2/modules/CCK2FileBlock.jsm deleted file mode 100644 index 5cad7de..0000000 --- a/windows/build/preferences/cck2/modules/CCK2FileBlock.jsm +++ /dev/null @@ -1,47 +0,0 @@ -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -var EXPORTED_SYMBOLS = []; - -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); - -let CCK2FileBlock = { - chromeBlacklist: ["browser", "mozapps", "marionette", "specialpowers", - "branding", "alerts"], - shouldLoad: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aExtra) { - // Prevent the loading of chrome URLs into the main browser window - if (aContentLocation.scheme == "chrome") { - if (aRequestOrigin && - (aRequestOrigin.spec == "chrome://browser/content/browser.xul" || - aRequestOrigin.scheme == "moz-nullprincipal")) { - for (var i=0; i < this.chromeBlacklist.length; i++) { - if (aContentLocation.host == this.chromeBlacklist[i]) { - if (aContentLocation.spec.includes(".xul")) { - return Ci.nsIContentPolicy.REJECT_REQUEST; - } - } - } - } - } - return Ci.nsIContentPolicy.ACCEPT; - }, - shouldProcess: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aExtra) { - return Ci.nsIContentPolicy.ACCEPT; - }, - classDescription: "CCK2 FileBlock Service", - contractID: "@kaply.com/cck2-fileblock-service;1", - classID: Components.ID('{26e7afc9-e22d-4d12-bb57-c184fe24b828}'), - QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPolicy]), - createInstance: function(outer, iid) { - return this.QueryInterface(iid); - }, -}; - -var registrar = Components.manager.QueryInterface(Ci.nsIComponentRegistrar); -registrar.registerFactory(CCK2FileBlock.classID, - CCK2FileBlock.classDescription, - CCK2FileBlock.contractID, - CCK2FileBlock); - -var cm = Cc["@mozilla.org/categorymanager;1"].getService(Ci.nsICategoryManager); -cm.addCategoryEntry("content-policy", CCK2FileBlock.contractID, - CCK2FileBlock.contractID, false, true); diff --git a/windows/build/preferences/cck2/modules/CCK2Framescript.js b/windows/build/preferences/cck2/modules/CCK2Framescript.js deleted file mode 100644 index fda925c..0000000 --- a/windows/build/preferences/cck2/modules/CCK2Framescript.js +++ /dev/null @@ -1,51 +0,0 @@ -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; -Cu.import("resource://gre/modules/Services.jsm"); - -var disableSearchEngineInstall = false; - -var documentObserver = { - observe: function observe(subject, topic, data) { - if (subject instanceof Ci.nsIDOMWindow && topic == 'content-document-global-created') { - var doc = subject.document; - doc.addEventListener("DOMContentLoaded", function onLoad(event) { - event.target.removeEventListener("DOMContentLoaded", onLoad, false); - if (disableSearchEngineInstall) { - subject.wrappedJSObject.external.AddSearchProvider = function() {}; - } - if (!doc.documentURI.startsWith("about:")) { - return; - } - for (let id in configs) { - var config = configs[id]; - if (config.hiddenUI) { - for (var i=0; i < config.hiddenUI.length; i++) { - // Don't use .hidden since it doesn't work sometimes - var style = doc.getElementById("cck2-hidden-style"); - if (!style) { - style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style"); - style.setAttribute("id", "cck2-hidden-style"); - style.setAttribute("type", "text/css"); - doc.documentElement.appendChild(style); - } - style.textContent = style.textContent + config.hiddenUI[i] + "{display: none !important;}"; - } - } - } - }, false); - } - } -} - -var configs = sendSyncMessage("cck2:get-configs")[0]; -for (var id in configs) { - var config = configs[id]; - if (config.disableSearchEngineInstall) { - disableSearchEngineInstall = true; - break; - } -} - -Services.obs.addObserver(documentObserver, "content-document-global-created", false); -addEventListener("unload", function() { - Services.obs.removeObserver(documentObserver, "content-document-global-created", false); -}) diff --git a/windows/build/preferences/cck2/modules/CCK2PreferencesOverlay.jsm b/windows/build/preferences/cck2/modules/CCK2PreferencesOverlay.jsm deleted file mode 100644 index 3f165bd..0000000 --- a/windows/build/preferences/cck2/modules/CCK2PreferencesOverlay.jsm +++ /dev/null @@ -1,123 +0,0 @@ -/* This file modifies the preferences dialogs. It does the following: - * Removes private browsing from the pref UI if it is disabled - * Removes Sync from the pref UI if it is diabled - * Disables the crash reporter button if crash reporter is disabled - * Removed the master password UI if it is disabled - * Goes through the hiddenUI list and hides any UI - * - */ - -const EXPORTED_SYMBOLS = []; - -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://cck2/CCK2.jsm"); - -var configs = null; - -var observer = { - observe: function observe(subject, topic, data) { - switch (topic) { - case "chrome-document-global-created": - var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); - win.addEventListener("load", function onLoad(event) { - win.removeEventListener("load", onLoad, false); - var doc = event.target; - var url = doc.location.href.split("?")[0].split("#")[0]; - switch (url) { - case "chrome://browser/content/preferences/preferences.xul": - configs = CCK2.getConfigs(); - win.addEventListener("paneload", function(event) { - updatePrefUI(event.target.ownerDocument); - }, false); - updatePrefUI(doc); - for (let id in configs) { - var config = configs[id]; - if (!config.disableSync) { - continue; - } - var prefWindow = E("BrowserPreferences", doc); - var paneSyncRadio = doc.getAnonymousElementByAttribute(prefWindow, "pane", "paneSync"); - hide(paneSyncRadio); - var paneDeck = doc.getAnonymousElementByAttribute(prefWindow, "anonid", "paneDeck"); - var paneSync = E("paneSync", doc); - paneSync.removeAttribute("helpTopic"); - var weavePrefsDeck = E("weavePrefsDeck", doc); - if (weavePrefsDeck) - weavePrefsDeck.parentNode.removeChild(weavePrefsDeck); - if (prefWindow.currentPane == E("paneSync", doc)) - prefWindow.showPane(E("paneMain", doc)); - } - break; - case "about:preferences": - case "chrome://browser/content/preferences/in-content/preferences.xul": - configs = CCK2.getConfigs(); - for (let id in configs) { - var config = configs[id]; - if (config.disableSync) { - hide(E("category-sync", doc)); - } - } - updatePrefUI(doc); - break; - } - }, false); - break; - } - } -} -Services.obs.addObserver(observer, "chrome-document-global-created", false); - -// The IDs are the same, so I can reuse this for regular and in-content prefs -function updatePrefUI(doc) { - for (var id in configs) { - var config = configs[id]; - if (config.disablePrivateBrowsing) { - hide(E("privateBrowsingAutoStart", doc)); - var privateBrowsingMenu = doc.querySelector("menuitem[value='dontremember']"); - hide(privateBrowsingMenu, doc); - } - if (config.disableCrashReporter) { - disable(E("submitCrashesBox", doc)); - } - if (config.disableSync) { - hide(E("noFxaAccount", doc)); - hide(E("hasFxaAccount", doc)); - } - if (config.noMasterPassword == true) { - hide(E("useMasterPassword", doc)); - hide(E("changeMasterPassword", doc)); - } - if (config.hiddenUI) { - for (var i=0; i < config.hiddenUI.length; i++) { - // Don't use .hidden since it doesn't work sometimes - var style = doc.getElementById("cck2-hidden-style"); - if (!style) { - style = doc.createElementNS("http://www.w3.org/1999/xhtml", "style"); - style.setAttribute("id", "cck2-hidden-style"); - style.setAttribute("type", "text/css"); - doc.documentElement.appendChild(style); - } - style.textContent = style.textContent + config.hiddenUI[i] + "{display: none !important;}"; - } - } - } -} - -function E(id, context) { - var element = context.getElementById(id); - return element; -} - -function hide(element) { - if (element) { - element.setAttribute("hidden", "true"); - } -} - -function disable(element) { - if (element) { - element.disabled = true; - } -} diff --git a/windows/build/preferences/cck2/modules/CTPPermissions.jsm b/windows/build/preferences/cck2/modules/CTPPermissions.jsm deleted file mode 100644 index 862ea48..0000000 --- a/windows/build/preferences/cck2/modules/CTPPermissions.jsm +++ /dev/null @@ -1,123 +0,0 @@ -/** - * Copied from https://github.com/jvillalobos/CTP-Manager/blob/master/extension/modules/permissions.js - **/ - -/** - * Copyright 2013 Jorge Villalobos - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - **/ - -var EXPORTED_SYMBOLS = ["CTP"]; - -const Cc = Components.classes; -const Ci = Components.interfaces; - -Components.utils.import("resource://gre/modules/Services.jsm"); - -var CTP = { - /** - * Cleans up the plugin name to a more readable form. - * Taken from /browser/base/content/pageinfo/permissions.js (Firefox 20) - * @param aPluginName the name to clean up. - * @return cleaned up plugin name. - */ - makeNicePluginName : function(aPluginName) { - let newName = - aPluginName.replace(/[\s\d\.\-\_\(\)]+$/, ""). - replace(/\bplug-?in\b/i, "").trim(); - - return newName; - }, - - /** - * Gets the plugin permission string from the tag object. In Firefox 20, this - * is the plugin filename. In 21 an above, the file extension is removed and - * Flash and Java are special-cased. - * @param aTag the tag object with the plugin information. - * @return permission string that corresponds to the plugin in the tag. - */ - getPluginPermissionFromTag : function(aTag) { - let permission = null; - let majorVersion = Services.appinfo.platformVersion.split(".")[0]; - - if (21 <= majorVersion) { - let mimeTypes = aTag.getMimeTypes(); - - if (CTP.isFlashPlugin(mimeTypes)) { - permission = "flash"; - } else if (CTP.isJavaPlugin(mimeTypes)) { - permission = "java"; - } else { - let lastPeriod = aTag.filename.lastIndexOf("."); - - permission = - ((0 < lastPeriod) ? aTag.filename.substring(0, lastPeriod) : - aTag.filename); - // Remove digits at the end - permission = permission.replace(/[0-9]+$/, ""); - permission = permission.toLowerCase(); - } - } else { - permission = aTag.filename; - } - - return permission; - }, - - /** - * Checks if the tag object corresponds to the Java plugin. - * @param aMimeTypes the list of MIME types for the plugin. - * @return true if the tag corresponds to the Java plugin. - */ - isJavaPlugin : function(aMimeTypes) { - let isJava = false; - let mimeType; - - for (let i = 0; i < aMimeTypes.length; i++) { - mimeType = - ((null != aMimeTypes[i].type) ? aMimeTypes[i].type : aMimeTypes[i]); - - if ((0 == mimeType.indexOf("application/x-java-vm")) || - (0 == mimeType.indexOf("application/x-java-applet")) || - (0 == mimeType.indexOf("application/x-java-bean"))) { - isJava = true; - break; - } - } - - return isJava; - }, - - /** - * Checks if the tag object corresponds to the Flash plugin. - * @param aMimeTypes the list of MIME types for the plugin. - * @return true if the tag corresponds to the Flash plugin. - */ - isFlashPlugin : function(aMimeTypes) { - let isFlash = false; - let mimeType; - - for (let i = 0; i < aMimeTypes.length; i++) { - mimeType = - ((null != aMimeTypes[i].type) ? aMimeTypes[i].type : aMimeTypes[i]); - - if (0 == mimeType.indexOf("application/x-shockwave-flash")) { - isFlash = true; - break; - } - } - - return isFlash; - } -}; diff --git a/windows/build/preferences/cck2/modules/Preferences.jsm b/windows/build/preferences/cck2/modules/Preferences.jsm deleted file mode 100644 index 2100911..0000000 --- a/windows/build/preferences/cck2/modules/Preferences.jsm +++ /dev/null @@ -1,629 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Preferences. - * - * The Initial Developer of the Original Code is Mozilla. - * Portions created by the Initial Developer are Copyright (C) 2008 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Myk Melez - * Daniel Aquino - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -let EXPORTED_SYMBOLS = ["Preferences"]; - -const Cc = Components.classes; -const Ci = Components.interfaces; -const Cr = Components.results; -const Cu = Components.utils; - -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); - -// The minimum and maximum integers that can be set as preferences. -// The range of valid values is narrower than the range of valid JS values -// because the native preferences code treats integers as NSPR PRInt32s, -// which are 32-bit signed integers on all platforms. -const MAX_INT = Math.pow(2, 31) - 1; -const MIN_INT = -MAX_INT; - -function Preferences(args) { - if (isObject(args)) { - if (args.branch) - this._prefBranch = args.branch; - } - else if (args) - this._prefBranch = args; - this.isDefaultBranch = false; -} - -Preferences.prototype = { - /** - * Get the value of a pref, if any; otherwise return the default value. - * - * @param prefName {String|Array} - * the pref to get, or an array of prefs to get - * - * @param defaultValue - * the default value, if any, for prefs that don't have one - * - * @returns the value of the pref, if any; otherwise the default value - */ - get: function(prefName, defaultValue) { - if (isArray(prefName)) - return prefName.map(v => this.get(v, defaultValue)); - - return this._get(prefName, defaultValue); - }, - -// In all cases below, the preference might exist as a user pref, but not -// have a default value. In those cases, get* throws. Return the default value. - _get: function(prefName, defaultValue) { - switch (this._prefSvc.getPrefType(prefName)) { - case Ci.nsIPrefBranch.PREF_STRING: - try { - return this._prefSvc.getComplexValue(prefName, Ci.nsISupportsString).data; - } catch (ex) { - if (this.isDefaultBranch) - return defaultValue; - else - return this._prefSvc.getCharPref(prefName); - } - - case Ci.nsIPrefBranch.PREF_INT: - try { - return this._prefSvc.getIntPref(prefName); - } catch (ex) { - return defaultValue; - } - - case Ci.nsIPrefBranch.PREF_BOOL: - try { - return this._prefSvc.getBoolPref(prefName); - } catch (ex) { - return defaultValue; - } - - case Ci.nsIPrefBranch.PREF_INVALID: - return defaultValue; - - default: - // This should never happen. - throw "Error getting pref " + prefName + "; its value's type is " + - this._prefSvc.getPrefType(prefName) + ", which I don't know " + - "how to handle."; - } - }, - - /** - * Set a preference to a value. - * - * You can set multiple prefs by passing an object as the only parameter. - * In that case, this method will treat the properties of the object - * as preferences to set, where each property name is the name of a pref - * and its corresponding property value is the value of the pref. - * - * @param prefName {String|Object} - * the name of the pref to set; or an object containing a set - * of prefs to set - * - * @param prefValue {String|Number|Boolean} - * the value to which to set the pref - * - * Note: Preferences cannot store non-integer numbers or numbers outside - * the signed 32-bit range -(2^31-1) to 2^31-1, If you have such a number, - * store it as a string by calling toString() on the number before passing - * it to this method, i.e.: - * Preferences.set("pi", 3.14159.toString()) - * Preferences.set("big", Math.pow(2, 31).toString()). - */ - set: function(prefName, prefValue) { - if (isObject(prefName)) { - for (let [name, value] in Iterator(prefName)) - this.set(name, value); - return; - } - - this._set(prefName, prefValue); - }, - - _set: function(prefName, prefValue) { - let prefType; - if (typeof prefValue != "undefined" && prefValue != null) - prefType = prefValue.constructor.name; - - var existingPrefType = this._prefSvc.getPrefType(prefName); - if (existingPrefType != Ci.nsIPrefBranch.PREF_INVALID) - { - // convert - if (existingPrefType == Ci.nsIPrefBranch.PREF_INT && prefType == "String") - { - prefValue = parseInt(prefValue); - if (isNaN(prefValue)) - throw "Incompatible pref value type - " + prefName; - prefType = "Number"; - } - else if (existingPrefType == Ci.nsIPrefBranch.PREF_BOOL && prefType == "String") - { - if (prefValue == "true") - prefValue = true; - else if (prefValue == "false") - prefValue = false; - else - throw "Incompatible pref value type - " + prefName; - prefType = "Boolean"; - } - else if (existingPrefType == Ci.nsIPrefBranch.PREF_BOOL && prefType == "Number") - { - prefValue = prefValue != 0; - prefType = "Boolean"; - } - } - - switch (prefType) { - case "String": - { - try { - this._prefSvc.setStringPref(prefName, prefValue); - } catch (e) { - try { - let string = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString); - string.data = prefValue; - this._prefSvc.setComplexValue(prefName, Ci.nsISupportsString, string); - } catch (e2) { - Components.utils.reportError(e2); - } - } - } - break; - - case "Number": - // We throw if the number is outside the range, since the result - // will never be what the consumer wanted to store, but we only warn - // if the number is non-integer, since the consumer might not mind - // the loss of precision. - if (prefValue > MAX_INT || prefValue < MIN_INT) - throw("you cannot set the " + prefName + " pref to the number " + - prefValue + ", as number pref values must be in the signed " + - "32-bit integer range -(2^31-1) to 2^31-1. To store numbers " + - "outside that range, store them as strings."); - try { - this._prefSvc.setIntPref(prefName, prefValue); - } catch (e) { - throw new Error(e.toString() + " - " + prefName); - } - if (prefValue % 1 != 0) - Cu.reportError("Warning: setting the " + prefName + " pref to the " + - "non-integer number " + prefValue + " converted it " + - "to the integer number " + this.get(prefName) + - "; to retain fractional precision, store non-integer " + - "numbers as strings."); - break; - - case "Boolean": - this._prefSvc.setBoolPref(prefName, prefValue); - break; - - default: - throw "can't set pref " + prefName + " to value '" + prefValue + - "'; it isn't a String, Number, or Boolean"; - } - }, - - /** - * Whether or not the given pref has a value. This is different from isSet - * because it returns true whether the value of the pref is a default value - * or a user-set value, while isSet only returns true if the value - * is a user-set value. - * - * @param prefName {String|Array} - * the pref to check, or an array of prefs to check - * - * @returns {Boolean|Array} - * whether or not the pref has a value; or, if the caller provided - * an array of pref names, an array of booleans indicating whether - * or not the prefs have values - */ - has: function(prefName) { - if (isArray(prefName)) - return prefName.map(this.has, this); - - return this._has(prefName); - }, - - _has: function(prefName) { - return (this._prefSvc.getPrefType(prefName) != Ci.nsIPrefBranch.PREF_INVALID); - }, - - /** - * Whether or not the given pref has a user-set value. This is different - * from |has| because it returns true only if the value of the pref is a user- - * set value, while |has| returns true if the value of the pref is a default - * value or a user-set value. - * - * @param prefName {String|Array} - * the pref to check, or an array of prefs to check - * - * @returns {Boolean|Array} - * whether or not the pref has a user-set value; or, if the caller - * provided an array of pref names, an array of booleans indicating - * whether or not the prefs have user-set values - */ - isSet: function(prefName) { - if (isArray(prefName)) - return prefName.map(this.isSet, this); - - return (this.has(prefName) && this._prefSvc.prefHasUserValue(prefName)); - }, - - /** - * Whether or not the given pref has a user-set value. Use isSet instead, - * which is equivalent. - * @deprecated - */ - modified: function(prefName) { return this.isSet(prefName) }, - - reset: function(prefName) { - if (isArray(prefName)) { - prefName.map(v => this.reset(v)); - return; - } - - this._reset(prefName); - }, - - _reset: function(prefName) { - try { - this._prefSvc.clearUserPref(prefName); - } - catch(ex) { - // The pref service throws NS_ERROR_UNEXPECTED when the caller tries - // to reset a pref that doesn't exist or is already set to its default - // value. This interface fails silently in those cases, so callers - // can unconditionally reset a pref without having to check if it needs - // resetting first or trap exceptions after the fact. It passes through - // other exceptions, however, so callers know about them, since we don't - // know what other exceptions might be thrown and what they might mean. - if (ex.result != Cr.NS_ERROR_UNEXPECTED) - throw ex; - } - }, - - /** - * If you need to know the default values, without resetting the actual - * user prefs, you can use this. - * @returns {Preferences} a new Preferences object, which accesses - * the defaults rather than the user prefs. - * *Only* call get() on this. - * If you call set(), you will modify the defaults, so don't do that! - */ - get defaults() { - // nsIPrefService - let defaultBranch = Services.prefs. - getDefaultBranch(this._prefBranch). - QueryInterface(Ci.nsIPrefBranch); - let prefs = new Preferences(this._prefBranch); - // override. nasty, but this is internal, so OK. - Object.defineProperty(prefs, "_prefSvc", { - get: function() { - return defaultBranch; - } - }); - prefs.isDefaultBranch = true; - return prefs; - }, - - /** - * Lock a pref so it can't be changed. - * - * @param prefName {String|Array} - * the pref to lock, or an array of prefs to lock - * @param prefValue {String} (optional) - * default value of pref to lock only works if prefName isn't an array - */ - lock: function(prefName, prefValue) { - if (isArray(prefName)) - prefName.map(this.lock, this); - else if (typeof prefValue != "undefined") - this.defaults.set(prefName, prefValue); - - this._prefSvc.lockPref(prefName); - }, - - /** - * Unlock a pref so it can be changed. - * - * @param prefName {String|Array} - * the pref to lock, or an array of prefs to lock - */ - unlock: function(prefName) { - if (isArray(prefName)) - prefName.map(this.unlock, this); - - this._prefSvc.unlockPref(prefName); - }, - - /** - * Whether or not the given pref is locked against changes and - * if it is set to the passedi n value - * - * @param prefName {String|Array} - * the pref to check, or an array of prefs to check - * @param prefValue {String|Number|Boolean}} - * the pref value to compare against - * - * @returns {Boolean|Array} - * whether or not the pref is locked; or, if the caller - * provided an array of pref names, an array of booleans indicating - * whether or not the prefs are locked - * If a pref value was specified returns whether or not the pref - * was locked and equal to the passed in value. - */ - locked: function(prefName, prefValue) { - if (isArray(prefName)) - return prefName.map(this.locked, this); - - if (prefValue) - return this._prefSvc.prefIsLocked(prefName) && (this.get(prefName) == prefValue); - else - return this._prefSvc.prefIsLocked(prefName); - }, - - /** - * Start observing a pref. - * - * The callback can be a function or any object that implements nsIObserver. - * When the callback is a function and thisObject is provided, it gets called - * as a method of thisObject. - * - * @param prefName {String} - * the name of the pref to observe - * - * @param callback {Function|Object} - * the code to notify when the pref changes; - * - * @param thisObject {Object} [optional] - * the object to use as |this| when calling a Function callback; - * - * @returns the wrapped observer - */ - observe: function(prefName, callback, thisObject) { - let fullPrefName = this._prefBranch + (prefName || ""); - - let observer = new PrefObserver(fullPrefName, callback, thisObject); - Preferences._prefSvc.addObserver(fullPrefName, observer, true); - observers.push(observer); - - return observer; - }, - - /** - * Stop observing a pref. - * - * You must call this method with the same prefName, callback, and thisObject - * with which you originally registered the observer. However, you don't have - * to call this method on the same exact instance of Preferences; you can call - * it on any instance. For example, the following code first starts and then - * stops observing the "foo.bar.baz" preference: - * - * let observer = function() {...}; - * Preferences.observe("foo.bar.baz", observer); - * new Preferences("foo.bar.").ignore("baz", observer); - * - * @param prefName {String} - * the name of the pref being observed - * - * @param callback {Function|Object} - * the code being notified when the pref changes - * - * @param thisObject {Object} [optional] - * the object being used as |this| when calling a Function callback - */ - ignore: function(prefName, callback, thisObject) { - let fullPrefName = this._prefBranch + (prefName || ""); - - // This seems fairly inefficient, but I'm not sure how much better we can - // make it. We could index by fullBranch, but we can't index by callback - // or thisObject, as far as I know, since the keys to JavaScript hashes - // (a.k.a. objects) can apparently only be primitive values. - let [observer] = observers.filter(v => v.prefName == fullPrefName && - v.callback == callback && - v.thisObject == thisObject); - - if (observer) { - Preferences._prefSvc.removeObserver(fullPrefName, observer); - observers.splice(observers.indexOf(observer), 1); - } - }, - - /** - * Same as observe(), but automatically unregisters itself when - * the window closes, saving you from writing an unload handler and - * calling ignore(). - * @param win {nsIDOMWindow} your |window| - */ - observeAuto: function(win, prefName, callback, thisObject) { - if (!win instanceof Ci.nsIDOMWindow) - throw "Need your |window| as first parameter"; - this.observe(prefName, callback, thisObject); - var self = this; - win.addEventListener("unload", function() - { - self.ignore(prefName, callback, thisObject); - }, false); - win = null; // don't let closure hold on to window unnecessarily - }, - - resetBranch: function(prefBranch) { - try { - this._prefSvc.resetBranch(prefBranch); - } - catch(ex) { - // The current implementation of nsIPrefBranch in Mozilla - // doesn't implement resetBranch, so we do it ourselves. - if (ex.result == Cr.NS_ERROR_NOT_IMPLEMENTED) - this.reset(this._prefSvc.getChildList(prefBranch, [])); - else - throw ex; - } - }, - - /** - * Returns all child prefs of this pref branch. - * This equals nsIPrefBranch.getChildList(). - * This allows you to do e.g. - * var myPrefs = new Preferences("extensions.cooler."); - * var contents = myPrefs.branch("contents."); - * for each (let prefname in contents.childPrefNames()) - * dump("have " + contents.get(prefname) + " " + prefname + "\n"); - * - * @returns {Array of String} The names of the children, - * without the base pref branch, but with subbranch. - */ - childPrefNames : function() { - return this._prefSvc.getChildList("", []); - }, - - /** - * Returns an nsIPrefBranch for the pref branch that this object stands for. - * You can use this to use functions that are not supported here. - * @returns {nsIPrefBranch} - */ - get mozillaPrefBranch() { - return this._prefSvc; - }, - - /** - * Returns the base pref name that this object stands for. - * E.g. "extensions.yourcooler."; - * @returns {String} - */ - get prefBranchName() { - return this._prefBranch; - }, - - /** - * Returns an Preferences object for an sub pref branch - * underneath the current pref branch. - * @param subbranch {String} Will be appended to the - * current pref branch. Don't forget the trailing dot, - * where necessary. - * E.g. "contents." - * @returns {Preferences} - */ - branch : function(subbranch) { - return new Preferences(this._prefBranch + subbranch); - }, - - /** - * The branch of the preferences tree to which this instance provides access. - * @private - */ - _prefBranch: "", - - /** - * Preferences Service - * @private - */ - get _prefSvc() { - // nsIPrefService - let prefSvc = Services.prefs. - getBranch(this._prefBranch). - QueryInterface(Ci.nsIPrefBranch); - Object.defineProperty(this, "_prefSvc", { - get: function() { - return prefSvc; - } - }); - return this._prefSvc; - } - -}; - -// Give the constructor the same prototype as its instances, so users can access -// preferences directly via the constructor without having to create an instance -// first. -Preferences.__proto__ = Preferences.prototype; - -/** - * A cache of pref observers. - * - * We use this to remove observers when a caller calls Preferences::ignore. - * - * All Preferences instances share this object, because we want callers to be - * able to remove an observer using a different Preferences object than the one - * with which they added it. That means we have to identify the observers - * in this object by their complete pref name, not just their name relative to - * the root branch of the Preferences object with which they were created. - */ -let observers = []; - -function PrefObserver(prefName, callback, thisObject) { - this.prefName = prefName; - this.callback = callback; - this.thisObject = thisObject; -} - -PrefObserver.prototype = { - QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver, Ci.nsISupportsWeakReference]), - - observe: function(subject, topic, data) { - // The pref service only observes whole branches, but we only observe - // individual preferences, so we check here that the pref that changed - // is the exact one we're observing (and not some sub-pref on the branch). - if (data != this.prefName) - return; - - if (typeof this.callback == "function") { - let prefValue = Preferences.get(this.prefName); - - if (this.thisObject) - this.callback.call(this.thisObject, prefValue); - else - this.callback(prefValue); - } - else // typeof this.callback == "object" (nsIObserver) - this.callback.observe(subject, topic, data); - } -}; - -function isArray(val) { - // We can't check for |val.constructor == Array| here, since the value - // might be from a different context whose Array constructor is not the same - // as ours, so instead we match based on the name of the constructor. - return (typeof val != "undefined" && val != null && typeof val == "object" && - val.constructor.name == "Array"); -} - -function isObject(val) { - // We can't check for |val.constructor == Object| here, since the value - // might be from a different context whose Object constructor is not the same - // as ours, so instead we match based on the name of the constructor. - return (typeof val != "undefined" && val != null && typeof val == "object" && - val.constructor.name == "Object"); -} diff --git a/windows/build/preferences/cck2/modules/Timer.jsm b/windows/build/preferences/cck2/modules/Timer.jsm deleted file mode 100644 index d405b28..0000000 --- a/windows/build/preferences/cck2/modules/Timer.jsm +++ /dev/null @@ -1,43 +0,0 @@ -/* 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/. */ - -"use strict"; - -/** - * JS module implementation of nsIDOMJSWindow.setTimeout and clearTimeout. - */ - -this.EXPORTED_SYMBOLS = ["setTimeout", "clearTimeout"]; - -const Cc = Components.classes; -const Ci = Components.interfaces; -const Cu = Components.utils; - -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); - -// This gives us >=2^30 unique timer IDs, enough for 1 per ms for 12.4 days. -let gNextTimeoutId = 1; // setTimeout must return a positive integer - -let gTimeoutTable = new Map(); // int -> nsITimer - -this.setTimeout = function setTimeout(aCallback, aMilliseconds) { - let id = gNextTimeoutId++; - let args = Array.slice(arguments, 2); - let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.initWithCallback(function setTimeout_timer() { - gTimeoutTable.delete(id); - aCallback.apply(null, args); - }, aMilliseconds, timer.TYPE_ONE_SHOT); - - gTimeoutTable.set(id, timer); - return id; -} - -this.clearTimeout = function clearTimeout(aId) { - if (gTimeoutTable.has(aId)) { - gTimeoutTable.get(aId).cancel(); - gTimeoutTable.delete(aId); - } -} - diff --git a/windows/build/preferences/cck2/modules/Utils.jsm b/windows/build/preferences/cck2/modules/Utils.jsm deleted file mode 100644 index 559bb0b..0000000 --- a/windows/build/preferences/cck2/modules/Utils.jsm +++ /dev/null @@ -1,10 +0,0 @@ -const {classes: Cc, interfaces: Ci, utils: Cu} = Components; - -var EXPORTED_SYMBOLS = ["errorCritical"]; - -Components.utils.import("resource://gre/modules/Services.jsm"); - -function errorCritical(e) -{ - Services.prompt.alert(null, "", e); -} diff --git a/windows/build/preferences/cck2/resources/certs/purplei2p_ca.pem b/windows/build/preferences/cck2/resources/certs/purplei2p_ca.pem deleted file mode 100644 index a750237..0000000 --- a/windows/build/preferences/cck2/resources/certs/purplei2p_ca.pem +++ /dev/null @@ -1,24 +0,0 @@ ------BEGIN CERTIFICATE----- -MIID9zCCAt+gAwIBAgIUervWv7EoWkk4Gt8J34xDR9nhH50wDQYJKoZIhvcNAQEL -BQAwgYIxCzAJBgNVBAYTAldXMRQwEgYDVQQIDAtJMlAgTmV0d29yazESMBAGA1UE -CgwJUHVycGxlSTJQMSowKAYDVQQDDCFQdXJwbGVJMlAgQ2VydGlmaWNhdGlvbiBB -dXRob3JpdHkxHTAbBgkqhkiG9w0BCQEWDnI0c2FzQG1haWwuaTJwMB4XDTE5MDMw -MzE2MjcxNFoXDTI5MDIyODE2MjcxNFowgYIxCzAJBgNVBAYTAldXMRQwEgYDVQQI -DAtJMlAgTmV0d29yazESMBAGA1UECgwJUHVycGxlSTJQMSowKAYDVQQDDCFQdXJw -bGVJMlAgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxHTAbBgkqhkiG9w0BCQEWDnI0 -c2FzQG1haWwuaTJwMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwLEy -A0TamzrfORA+aIM/NRRGrKYkI9o5Q9UB/pTM8IFlSBREGleUfnC6LFHZeNV+Y1Tn -jrMBOZ7PmIKjPIv+fJP7KjhHACZdk6iqVZqkiGqE0/V17kG16g1+g05Bj2lkWr94 -mp1rhzBeKJJSI8cG82824qdfDcgWZheziye+O0okENhi0o2bDhg78EnyysJiN/tu -OuoZSGfC9ZdITbpMWgqwuQcdeBg0FNy4hEqUJWoYNgrghe5uc0WMOjTAegSntYPE -MeaaZyzlGICZ2F+rKZgTjnzVYW60QlHqfg7sShieSPYIZmeN5l5hZ5GZk9Giaj/X -4pz4sup2iafKclWAmQIDAQABo2MwYTAdBgNVHQ4EFgQUCARvpDaXqPaF4amObzzV -GaDoZm4wHwYDVR0jBBgwFoAUCARvpDaXqPaF4amObzzVGaDoZm4wDwYDVR0TBAgw -BgEB/wIBADAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAKcmGUXV -gCw8PRHe0+XlkcSTX69e0TIPP+j5uJxMT3BHasvBdyV4FcjuUokHGjAnHal5OV4N -yWdbRPnIge7su4yLQZzlNM1OzbcRds1wSbqTEpb68R/6E8mv3ms6Rc8AcRoXwusc -byZvzS9tBSXTQ21wCVrltnIARAYabWlWu+URv+DFvlwMik6H8+DklHSVkPC6K3Ov -V1aMJztMnJ/XTTsFDS/yvaTfmJFG16LABIiSsEAW5QK64sWsN4sxvpcg0D6/EjWP -knyLM4KXuD3i08mzwzus8d97AjGxC5RCEFL5ADBpVaDU/5CpmZmZdY1daYjiHrXm -EVNoSbqid1fAVyA= ------END CERTIFICATE----- diff --git a/windows/build/preferences/cck2/resources/searchengines/legwork.xml b/windows/build/preferences/cck2/resources/searchengines/legwork.xml deleted file mode 100644 index 484edce..0000000 --- a/windows/build/preferences/cck2/resources/searchengines/legwork.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - YaCy 'legwork' - YaCy.net - Searching the I2P network - http://legwork.i2p/env/grafics/yacy.png - data:image/x-icon;base64,AAABAAEAEBAAAAAAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////Chiu+fBm+fRq+fRq+fRq+fRq+fRq8ehXMmk////////////////////////////++exjUqGfZsnjYsXbYsXbYsXbZsnjTp2W+fBr///////////////////////////+9exfs2r/69/L58+z58+z58+z59e/z59bChSn///////////////////////////+9fBnnz638+fX69O369e748un38Ob59O3Ll0fVrGz////////////////////////Jk0HJlUjXuYrWt4jVtYPr28T58+r59OzPn1fPnlX////////////////////////Rolu8eRXCiTPEjTvCijbNnlj169359e7Zs3vLlkf////////////////////////UqmrAgSLt3MP27eH1693169327+T59Ozo0rG/gB////////////////////////////+/gCDv4Mn48+v38Of59Oz58+v48+vr2b2+fRv///////////////////////////+9ehXr17n58+z48ejo0bDp07T48+zx49DBhCj///////////////////////////+/fhzjyJ/59Oz59OzQoVvNmU759Oz58+vKlUbXrnH////////////////////////LlkfUqmn59Oz48+vZtHzNm1D48+v59OzPoFjOnlX////////////////////////OnVPOnFL59e348+vq1rnEiC7u38j69vDXsHTIkT3////////////////////////UqWjIkD327+T58+3s2bzAgSLp07T79/Pmzqq+fBn///////////////////////////+/fx7v4Mr7+PTx5NDHkD3kyqP8+vjs2r+9exf///////////////////////////++fBjQoFnVq2zTp2bGjTjJk0LWrW7SpWC+exf////////////////////////////Nm1C6dQy7eBG8eBK9exe8ehS7dxC6dQzLlkj////////////AH///wB8x+sAf///AD/+PwA///8AP///AD///4A9PU+APoz/gB///4AdxvOAHoz/gB3368AfjU/AHT1PwB/+P - - en-us - UTF-8 - UTF-8 - true - YaCy is an open-source GPL-licensed software that can be used for stand-alone search engine installations or as a client for a multi-user P2P-based web indexing cluster. This is the access to peer 'legwork'. - - - - - - - - - See https://github.com/orgs/yacy/teams/yacy_developers - - YaCy Free Software Open Source P2P Peer-to-Peer Uncensored Distributed Web Search Engine - See http://legwork.i2p/ViewProfile.html?hash=localhash - http://yacy.net YaCy Software &copy; 2004-2014 by Michael Christen et al., YaCy.net; Content: ask peer owner - open - diff --git a/windows/build/preferences/distribution/policies.json b/windows/build/preferences/distribution/policies.json new file mode 100644 index 0000000..5748d21 --- /dev/null +++ b/windows/build/preferences/distribution/policies.json @@ -0,0 +1,96 @@ +{ + "policies": { + "AppUpdateURL": "http://127.0.0.1/", + "CaptivePortal": false, + "Certificates": { + "ImportEnterpriseRoots": false + }, + "DNSOverHTTPS": { + "Enabled": false, + "Locked": true + }, + "DisableAppUpdate": true, + "DisableFeedbackCommands": true, + "DisableFirefoxAccounts": true, + "DisableFirefoxScreenshots": true, + "DisableFirefoxStudies": true, + "DisablePasswordReveal": true, + "DisablePocket": true, + "DisableProfileImport": true, + "DisableProfileRefresh": true, + "DisableSafeMode": true, + "DisableSetDesktopBackground": true, + "DisableSystemAddonUpdate": true, + "DisableTelemetry": true, + "DontCheckDefaultBrowser": true, + "ExtensionUpdate": false, + "Extensions": { + "Locked": [ + "73a6fe31-595d-460b-a920-fcc0f8843232" + ] + }, + "FirefoxHome": { + "Highlights": false, + "Pocket": false, + "Search": true, + "Snippets": false, + "TopSites": true + }, + "FlashPlugin": { + "Default": false + }, + "NetworkPrediction": false, + "NoDefaultBookmarks": true, + "OfferToSaveLoginsDefault": false, + "OverrideFirstRunPage": "http://i2pd.i2p/", + "OverridePostUpdatePage": "", + "Permissions": { + "Camera": { + "BlockNewRequests": true + }, + "Location": { + "BlockNewRequests": true + }, + "Microphone": { + "BlockNewRequests": true + } + }, + "PopupBlocking": { + "Default": true + }, + "Preferences": { + "browser.cache.disk.enable": true, + "browser.fixup.dns_first_for_single_words": false, + "browser.search.update": false, + "browser.tabs.warnOnClose": false, + "browser.urlbar.suggest.bookmark": true, + "browser.urlbar.suggest.history": true, + "browser.urlbar.suggest.openpage": true, + "datareporting.policy.dataSubmissionPolicyBypassNotification": true, + "dom.disable_window_flip": true, + "dom.disable_window_move_resize": true, + "dom.event.contextmenu.enabled": false, + "network.IDN_show_punycode": false, + "network.dns.disableIPv6": true, + "places.history.enabled": true, + "privacy.file_unique_origin": true + }, + "PromptForDownloadLocation": true, + "Proxy": { + "AutoLogin": true, + "FTPProxy": "127.0.0.1:4444", + "HTTPProxy": "127.0.0.1:4444", + "Mode": "manual", + "SOCKSVersion": 5, + "SSLProxy": "127.0.0.1:4444", + "UseHTTPProxyForAllProtocols": false, + "UseProxyForDNS": true + }, + "SearchBar": "unified", + "SearchSuggestEnabled": false, + "SupportMenu": { + "Title": "Ilita IRC", + "URL": "http://irc.r4sas.i2p/?nick=WebClient...&channels=dev%2Cen%2Cru&prompt=1&uio=OT10cnVlde" + } + } +} \ No newline at end of file diff --git a/windows/build/preferences/i2pdbrowser.cfg b/windows/build/preferences/i2pdbrowser.cfg index 4872af6..8073053 100644 --- a/windows/build/preferences/i2pdbrowser.cfg +++ b/windows/build/preferences/i2pdbrowser.cfg @@ -6,38 +6,46 @@ * See full license text in LICENSE file at top of project tree */ -/* Do not edit this file. - * - * If you make changes to this file while the browser is running, - * the changes will be overwritten when the browser exits. - * - * To make a manual change to preferences, you can visit the URL about:config - * For more information, see http://www.mozilla.org/unix/customizing.html#prefs - */ - lockPref("accessibility.force_disabled", 1); defaultPref("app.normandy.first_run", false); +lockPref("app.normandy.enabled", false); +lockPref("app.normandy.optoutstudies.enabled", false); +lockPref("app.shield.optoutstudies.enabled", false); lockPref("app.update.auto", false); +lockPref("app.update.BITS.enabled", false); lockPref("app.update.channel", "i2pdbrowser"); +lockPref("app.update.disable_button.showUpdateHistory", true); lockPref("app.update.enabled", false); lockPref("app.update.interval", 0); lockPref("app.update.service.enabled", false); +lockPref("app.update.url", ""); defaultPref("beacon.enabled", false); pref("breakpad.reportURL", ""); -pref("browser.aboutHomeSnippets.updateUrl", ""); +defaultPref("browser.aboutHomeSnippets.updateUrl", ""); +lockPref("browser.aboutwelcome.enabled", false); defaultPref("browser.cache.disk.capacity", 131072); defaultPref("browser.cache.offline.enable", false); defaultPref("browser.casting.enabled", false); +lockPref("browser.contentblocking.database.enabled", false); +lockPref("browser.contentblocking.report.lockwise.enabled", false); +lockPref("browser.contentblocking.report.monitor.enabled", false); +lockPref("browser.discovery.enabled", false); pref("browser.download.manager.retention", 0); defaultPref("browser.download.useDownloadDir", false); defaultPref("browser.feeds.showFirstRunUI", false); defaultPref("browser.fixup.alternate.enabled", false); defaultPref("browser.formfill.enable", false); defaultPref("browser.formfill.expire_days", 0); +lockPref("browser.messaging-system.whatsNewPanel.enabled", false); +lockPref("browser.newtabpage.activity-stream.feeds.asrouterfeed", false); +lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false); +lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false); lockPref("browser.newtabpage.activity-stream.default.sites", "http://i2pd.i2p/,http://333.i2p/,http://inr.i2p/,http://102chan.i2p/,http://flibusta.i2p/,http://fsoc.i2p/,http://lifebox.i2p/,http://onelon.i2p/,http://wiki.ilita.i2p/"); +lockPref("browser.newtabpage.activity-stream.discoverystream.enabled", false); lockPref("browser.newtabpage.activity-stream.feeds.section.highlights", false); lockPref("browser.newtabpage.activity-stream.feeds.snippets", false); defaultPref("browser.newtabpage.activity-stream.showSearch", true); +lockPref("browser.newtabpage.activity-stream.showSponsored", false); lockPref("browser.newtabpage.activity-stream.telemetry", false); pref("browser.newtabpage.activity-stream.topSitesRows", 2); pref("browser.newtabpage.enhanced", false); @@ -49,6 +57,7 @@ defaultPref("browser.onboarding.tour.onboarding-tour-performance.completed", tru defaultPref("browser.onboarding.tour.onboarding-tour-private-browsing.completed", true); defaultPref("browser.onboarding.tour.onboarding-tour-screenshots.completed", true); defaultPref("browser.pagethumbnails.capturing_disabled", true); +lockPref("browser.ping-centre.telemetry", false); defaultPref("browser.places.smartBookmarksVersion", -1); pref("browser.reader.detectedFirstArticle", false); pref("browser.rights.3.shown", true); @@ -83,7 +92,6 @@ defaultPref("browser.search.defaultenginename.US", "YaCy 'legwork'"); defaultPref("browser.search.geoSpecificDefaults", false); defaultPref("browser.search.geoSpecificDefaults.url", ""); defaultPref("browser.search.geoip.url", ""); -pref("browser.search.hiddenOneOffs", "Amazon.com,Bing,DuckDuckGo,eBay,Google,Twitter,Wikipedia (en)"); defaultPref("browser.search.official", false); defaultPref("browser.search.order.1", "YaCy 'legwork'"); defaultPref("browser.search.order.2", ""); @@ -96,11 +104,11 @@ defaultPref("browser.search.region", "US"); defaultPref("browser.search.searchEnginesURL", ""); defaultPref("browser.search.suggest.enabled", false); defaultPref("browser.search.update", false); -pref("browser.search.widget.inNavBar", true); lockPref("browser.send_pings", false); pref("browser.send_pings.require_same_host", true); defaultPref("browser.shell.checkDefaultBrowser", false); pref("browser.startup.homepage", "http://i2pd.i2p/"); +defaultPref("browser.startup.homepage_override.mstone", "ignore"); defaultPref("browser.tabs.closeWindowWithLastTab", false); lockPref("browser.tabs.crashReporting.sendReport", false); defaultPref("browser.translation.engine", ""); @@ -132,6 +140,8 @@ pref("devtools.debugger.remote-enabled", false); pref("devtools.webide.autoinstallADBHelper", false); pref("devtools.webide.autoinstallFxdtAdapters", false); pref("devtools.webide.enabled", false); +defaultPref("devtools.whatsnew.enabled", false); +defaultPref("devtools.whatsnew.feature-enabled", false); pref("dom.allow_cut_copy", false); pref("dom.archivereader.enabled", false); pref("dom.battery.enabled", false); @@ -146,6 +156,7 @@ pref("dom.maxHardwareConcurrency", 2); pref("dom.mozTCPSocket.enabled", false); pref("dom.netinfo.enabled", false); pref("dom.network.enabled", false); +defaultPref("dom.push.enabled", false); pref("dom.telephony.enabled", false); pref("dom.vibrator.enabled", false); pref("dom.vr.enabled", false); @@ -155,13 +166,17 @@ pref("dom.workers.enabled", false); pref("experiments.enabled", false); pref("experiments.manifest.uri", ""); pref("experiments.supported", false); +pref("extensions.abuseReport.enabled", false); pref("extensions.autoDisableScopes", 0); pref("extensions.blocklist.enabled", false); pref("extensions.blocklist.url", ""); -pref("extensions.getAddons.cache.enabled", false); +defaultPref("extensions.getAddons.cache.enabled", false); pref("extensions.lazarus.showDonateNotification", false); lockPref("extensions.pocket.enabled", false); +lockPref("extensions.screenshots.upload-disabled", true); pref("extensions.shownSelectionUI", true); +defaultPref("extensions.systemAddon.update.enabled", false); +defaultPref("extensions.systemAddon.update.url", ""); pref("extensions.ui.lastCategory", "addons://list/extension"); pref("extensions.update.autoUpdateDefault", false); defaultPref("extensions.update.enabled", false); @@ -170,23 +185,26 @@ pref("full-screen-api.warning.timeout", 0); pref("general.buildID.override", "20100101"); lockPref("general.platform.override", "Win32"); lockPref("general.useragent.locale", "en-US"); -lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"); +lockPref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/78.0"); pref("general.warnOnAboutConfig", false); defaultPref("geo.enabled", false); lockPref("geo.wifi.logging.enabled", false); defaultPref("geo.wifi.uri", ""); +lockPref("identity.fxaccounts.commands.enabled", false); lockPref("identity.fxaccounts.enabled", false); defaultPref("intl.locale.matchOS", true); pref("javascript.use_us_english_locale", true); pref("keyword.enabled", false); pref("lightweightThemes.update.enabled", false); pref("loop.logDomains", false); +lockPref("marionette.enabled", false); defaultPref("media.eme.enabled", false); lockPref("media.getusermedia.audiocapture.enabled", false); lockPref("media.getusermedia.screensharing.enabled", false); pref("media.gmp-eme-adobe.enabled", false); -pref("media.gmp-gmpopenh264.enabled", false); +defaultPref("media.gmp-gmpopenh264.enabled", false); pref("media.gmp-gmpopenh264.provider.enabled", false); +pref("media.gmp-manager.cert.checkAttributes", false); pref("media.gmp-manager.url", ""); defaultPref("media.navigator.enabled", false); defaultPref("media.navigator.video.enabled", false); @@ -199,17 +217,21 @@ defaultPref("media.peerconnection.use_document_iceservers", false); defaultPref("media.video_stats.enabled", false); defaultPref("media.webspeech.recognition.enable", false); defaultPref("media.webspeech.synth.enabled", false); +defaultPref("messaging-system.rsexperimentloader.enabled", false); defaultPref("network.IDN.whitelist.i2p", true); defaultPref("network.IDN_show_punycode", true); defaultPref("network.allow-experiments", false); +lockPref("network.captive-portal-service.enabled", false); +lockPref("network.connectivity-service.enabled", false); pref("network.cookie.prefsMigrated", true); defaultPref("network.dns.disableIPv6", true); defaultPref("network.dns.disablePrefetchFromHTTPS", true); -defaultPref("network.dns.disableprefetch", true); -pref("network.http.speculative-parallel-limit", 0); +defaultPref("network.dns.disablePrefetch", true); +defaultPref("network.http.speculative-parallel-limit", 0); defaultPref("network.jar.open-unsafe-types", false); pref("network.manage-offline-status", false); defaultPref("network.negotiate-auth.allow-insecure-ntlm-v1", false); +defaultPref("network.notify.changed", false); pref("network.predictor.enabled", false); defaultPref("network.prefetch-next", false); pref("network.protocol-handler.expose-all", false); @@ -263,13 +285,17 @@ defaultPref("reader.parse-on-load.force-enabled", false); defaultPref("security.insecure_field_warning.contextual.enabled", false); defaultPref("security.insecure_password.ui.enabled", false); defaultPref("security.ssl.errorReporting.enabled", false); +defaultPref("security.OCSP.enabled", 0); defaultPref("services.blocklist.update_enabled", false); +pref("services.settings.server", ""); lockPref("services.sync.enabled", false); pref("services.sync.prefs.sync.browser.download.manager.scanWhenDone", false); pref("services.sync.prefs.sync.browser.safebrowsing.enabled", false); pref("services.sync.prefs.sync.browser.search.update", false); pref("services.sync.prefs.sync.extensions.update.enabled", false); pref("signon.autofillForms", false); +defaultPref("signon.management.page.breach-alerts.enabled", false); +defaultPref("signon.management.page.vulnerable-passwords.enabled", false); pref("signon.rememberSignons", false); defaultPref("startup.homepage_welcome_url", "http://i2pd.i2p/"); pref("startup.homepage_welcome_url.additional", "about:blank"); @@ -285,96 +311,3 @@ defaultPref("webgl.disable-fail-if-major-performance-caveat", true); defaultPref("webgl.disabled", true); defaultPref("webgl.enable-debug-renderer-info", false); defaultPref("webgl.min_capability_mode", true); - -var config = { - "cckVersion": "2.2.9", - "name": "I2Pd Browser", - "description": "Preconfigured for use with I2P browser", - "version": "1.2.8", - "homePage": "http://i2pd.i2p/", - "welcomePage": "http://i2pd.i2p/", - "titlemodifier": "I2Pd Browser", - "extension": { - "name": "I2Pd Browser" - }, - "noWelcomePage": true, - "noUpgradePage": true, - "removeSetDesktopBackground": true, - "removeSafeModeMenu": true, - "noGetAddons": true, - "noAddonCompatibilityCheck": true, - "disableSearchEngineInstall": true, - "removeDefaultSearchEngines": false, - "displayBookmarksToolbar": true, - "removeSmartBookmarks": true, - "removeDefaultBookmarks": true, - "removeDuplicateBookmarkNames": true, - "dontCheckDefaultBrowser": true, - "dontUseDownloadDir": true, - "disableFormFill": true, - "disableSync": true, - "disableCrashReporter": true, - "disableTelemetry": true, - "disableFirefoxHealthReportUpload": true, - "disableFirefoxHealthReport": true, - "disableFirefoxUpdates": true, - "removeSnippets": true, - "disableResetFirefox": true, - "disableWebApps": true, - "disableHello": true, - "disableSharePage": true, - "disableForget": true, - "disableHeartbeat": true, - "disablePocket": true, - "disableAboutSupport": true, - "disableAboutProfiles": true, - "showSearchBar": true, - "autoconfig": { - "disableProfileMigrator": true - }, - "id": "i2pdbrowser", - "hiddenUI": [ - "#defaultBrowserBox", - "#enableSearchUpdate", - "#dataCollectionCategory", - "#dataCollectionGroup", - ".help-button", - "#onboarding-overlay-button", - ".prefs-modal-inner-wrapper > section:nth-child(6)" - ], - "searchplugins": { - "YaCy 'legwork'": "resource://cck2_i2pdbrowser/searchengines/legwork.xml" - }, - "defaultSearchEngine": "YaCy 'legwork'", - "certs": { - "ca": [ - { - "url": "resource://cck2_i2pdbrowser/certs/purplei2p_ca.pem", - "trust": "CTc,CTc,CTc" - } - ] - } -}; - -var io = Components.classes["@mozilla.org/network/io-service;1"] - .getService(Components.interfaces.nsIIOService); -var resource = io.getProtocolHandler("resource") - .QueryInterface(Components.interfaces.nsIResProtocolHandler); - -var greDir = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("GreD", Components.interfaces.nsIFile); -var cck2ModuleDir = greDir.clone(); -cck2ModuleDir.append("cck2"); -cck2ModuleDir.append("modules"); -var cck2Alias = io.newFileURI(cck2ModuleDir); -resource.setSubstitution("cck2", cck2Alias); - -var configModuleDir = greDir.clone(); -configModuleDir.append("cck2"); -configModuleDir.append("resources"); -var configAlias = io.newFileURI(configModuleDir); -resource.setSubstitution("cck2_i2pdbrowser", configAlias); - -Components.utils.import("resource://cck2/CCK2.jsm"); -CCK2.init(config, "├д"[0], "├д"); diff --git a/windows/build/profile-en/addonStartup.json.lz4 b/windows/build/profile-en/addonStartup.json.lz4 new file mode 100644 index 0000000000000000000000000000000000000000..1c3d09f1a9446f1cf8eaf8a97b5c2d531c611aa3 GIT binary patch literal 4288 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 literal 0 HcmV?d00001 diff --git a/windows/build/profile-en/search.json.mozlz4 b/windows/build/profile-en/search.json.mozlz4 new file mode 100644 index 0000000000000000000000000000000000000000..32f441ac210bd21d7c3e57de59988f6ff3fe0a49 GIT binary patch literal 2188 zcmW+&TWs6b8U9Jrk}W%-OSlUM#jo#L@WPuneeRNgg^ev3Y`?9k(gzPYQ~agw^D&J4vJtBrR6@-zwJPyDWq z9h5{4BB@kqY8qZOtunTV6pR3M5_W59xs119h~i)YX)5{^$VOY!{s2G<&A`;&VPHR| z-NS!`Bl2J9jE}^84=%8`;W+z00ysfUh297D9(?iWR$*wD`w}*uz7IF1=kCMod|Wm5 z8TMuREPIOzO^5Ho>_W0#YA_%!n{QG#rlor@o569^ze_YC~>Mxde?T44c(A0OW^wRRM5 z6cTDyS*&L}3AJ8aGqidj91G47M>}?~lhzs)0^X-`E!~oP~JoR`q6vcJZUraXrku1?1^g^*@yq2h6AfBFr?+9Y0HmLV6i9L9Wq_S@2J8OC_ zG68QA)2mvpSg?$g_rNX%9JN3KHv9m$;M$Ip8m#GodgiOt$h#RMuVjp+ zG)XlWg2$t+fMqPIiAXybt%qZsWWi2lR~p&i^Tgg!xSnfm)mIwHphGpILeQ3qgYQwm zP`4v7QPBsj7NPg+wCCZ3Sm{Mb?p8!lvc0*rWQyoC`YnY7StpGDl?Lte+#gQ~M5VrN zE*bfjG$0*PT&`#9gu(QdwH4WHZY4-BC21EKzWd`O{zSOE-jCq;auml`N&jHddYh4Q z?-;BM2u*jW3Hc?e*^Nhgf-P?o8swxXC|#MfMO0SEQ|6gBLUK&W39@1iZqV05a=F*Z z$f*hVFB1%gqjII56XjGkpmgIz_0J4j9vfqJT!9p_pLPBF3-M^eRC+r#BZ17M&`uPB znNT9$+QDnmdfO7$TETeaQazYi46n>L0B(4W@~?VM1j2659go8Awk_?oG1qSn!~8+- z9CnYBL5lb$vXCyp&}#?c2m=yt;SFFpa9_8{oJg8FdTD%`pK!UEEx67*SZ`{`c`$x> z$whVDbi?(bujY`^)@oy`KY#TJcsQKJmTvFOkU3;I8@NQ~`ux>HWH*1}dgJ2WjE;J$ z-qugTBbPmYwPdyphpZZ?Gf&3WjD=rucjl{_Swz|oSmt$b-yUb40Ct}G@q%UB7e9mP z8JSx3+@P5tCG$?d`G7*?03{Ri7bA*DAVO+%^bQRYunzU}4025UEjl#*6Pm42$KY$g zs?@JPu-nxtwjE#HHjN5Jv9V!*XKD6ZG<~|~T?2(2-L^ogFvh$y^bx=>$5}6Ro_%j< zX!P#Tn9p^bKRt1|f;9VQlhgy3KcyPqn1U;lo`2Bq^1BY!Fge?-{>rzfSRR1-gn2Ge zLzaz`P~mggC2#ci6#c`=p;us~sndMzL-+nn-irE_h!i$E qOQCM{Qev^2lGU=73-t=6H9Ni(EM%i=v2?y^%Jcl^KOK9Xz5fI7{d|Z3 literal 0 HcmV?d00001 diff --git a/windows/build/profile-ru/search.json.mozlz4 b/windows/build/profile-ru/search.json.mozlz4 new file mode 100644 index 0000000000000000000000000000000000000000..36bed1ad52e1230da610398184b1bc237942b283 GIT binary patch literal 2262 zcmW+&TWs6b8U9JhlCPl}=i&s}%rJw!hOwxdbxGpJlw@0WWQ%qrTXxsFlyoFfrby|K zlw~DG<7Vv&Y*>@57>d0F>mG(-4_UW#=u)J~us#h9rWR|9r3lubK#`YiPTCa(iorWB zK@vO%-+%x3|EH?AlC6LT+yelQ?dQ8$a&ZlW4Mo?ulkDh;z3@d(&QjFEbeya?pU3C% zgnT~lsMqHo<&MIHT&pbx!Q?_=x7Y1C0?(;>URKd*_#U?Q0nEcA+ML!Vw34Esq+*yv z%hM{r3qZdN&<$V*52qBy;EV2(u9s9aZXg-w%kHY)QdCuT>$sE#;CF!sxEj1zKtP~OT2k!y%5C(5wZ{H%IH`_Pg-?|T%2E+GZcsy?9*X$rn>7S4t-zPBalHRfJcmK!% zUlU;%ZKW|z#4kdT$eFo&9ZE=c>>KL);bK2siKZq!z9%nkyTwo?2WFy>`~`sR?)~Vp^ysO zw80XPOf0Z@RY97`o`P+=%vK4Llo887n3a6eNKRe^X&vQQ<*BZ(1{AGC(3W8$>}Jzt z;vc!qGGgU?9vS3QXKM)IMe2zA-@vV|{tU(^bzJpOAW)%`g5ah4d{9&Jx|Uf;x}jYl z6gjC>>Q1D)?tXO<8TIGuibvqbgRL;&;*Ny|@1o}&w=TWngsZSMG46U+kWOH@^ z7rc_L`Id+fJ_$6vAO1`85!5UiJ}d+yLUJ_Bx9sry2ohSOkzA~NPUC@b0KIdVj})Vt z)(ZN=d@&o0r2N4M3I)QJ<`1WGqhy^_J;g;l)q0Acj|hS=v*t<6sF_OETEdgHwS`(RblCo8ERQk{2F+M<-wCX*yoe*kv6>Rzl(D6x>`4_AVbMm%dI($i~c z{{^CNA8cjnOO@%hxZk8|Vcu`}a;;a%e@)#EMFgqZs@F+*U#7bsxrAafL}JGwUP?Dd z=i&(>v$j!}h?5mk@rN|1-^RYPpC=-fd3{n_tovGoA-Snax8(rjRzNH?8!0j2g8$k5{$N-vRx*N^NPDIAC=tDHXR^IL z_7#UWAsf#+zWGix9Mh%dN?D7^dYrdnS$`@Ji`G}roNwO3!d%@S4b4>isfpn9*cwnj z?zC_99QFpC-M{UTxK#_QS9=`?T`;ywoju?5k~S=JH5toQAK0$;k!7bHd>lp#z_8%l zGDw$*>s9%MzCq6AaN3t(i!)KRrpo4reS0Py)Vh;ib9~?~o20YVErd75&iBKkjx@qm zV{?dfA#5(7Jedk(=ljUd{JG=xGn+$Ixv5mG>JfPCFvia3bxSkJt|m9eNYfg^=rw0! ztfcBWS$)Z6zXr}f^x6B#oS=R+jt%3?S1>pvQfIp_(RM#2a^^0`~2IgrRHz~D(1dhEAsp90+MWk#q|%wKG_t`BWJZb$bFGh38Z{|dq>wMDHzot?rJ2~odO}nRY9`Rk=I4y)q(7Su&qb1p PHC-IzzCFHdc5nV4-EE%< literal 0 HcmV?d00001 diff --git a/windows/build/profile/cert9.db b/windows/build/profile/cert9.db new file mode 100644 index 0000000000000000000000000000000000000000..bcc542106e0f7195d3723c9d07ae928b51588d55 GIT binary patch literal 229376 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 aj*m~u?9A*xv9tB9)0;yhT~m&|UiTkRIxTtt literal 0 HcmV?d00001 diff --git a/windows/build/profile/certificates/purplei2p_ca.pem b/windows/build/profile/certificates/purplei2p_ca.pem new file mode 100644 index 0000000..bbbcc77 --- /dev/null +++ b/windows/build/profile/certificates/purplei2p_ca.pem @@ -0,0 +1,23 @@ +-----BEGIN CERTIFICATE----- +MIID7DCCAtSgAwIBAgIJAKXaTovgoTIUMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD +VQQGEwJXVzEUMBIGA1UECAwLSTJQIE5ldHdvcmsxEjAQBgNVBAoMCVB1cnBsZUky +UDEqMCgGA1UEAwwhUHVycGxlSTJQIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR0w +GwYJKoZIhvcNAQkBFg5yNHNhc0BtYWlsLmkycDAeFw0xODA4MjQyMTQ3NTJaFw0y +MzA4MjMyMTQ3NTJaMIGCMQswCQYDVQQGEwJXVzEUMBIGA1UECAwLSTJQIE5ldHdv +cmsxEjAQBgNVBAoMCVB1cnBsZUkyUDEqMCgGA1UEAwwhUHVycGxlSTJQIENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5MR0wGwYJKoZIhvcNAQkBFg5yNHNhc0BtYWlsLmky +cDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALAZnN/U5bgkmiBqp/Np +yiMOkUPjr2tLhV78Oba46xDLA6AiQ7yTPg+/ZYPIfbF2dPBTpfgGdly2M1xymRKc +3Pa+IUXkLw6oCA+lFzOFW0Swtekk9HRAgGyHgj6/Hvagva5Wer4HJIO1qRsFPew+ +XcM3uhhiXoiO8o+YGpJ/7kz0gED3p2b9OVsLPd8G/GfdR3miD+Au+kUx/27z/WdJ +ISfFILFnYeYZGffrpRcFtoGwuZUCugwnbLtpQpNKuGq8jDidm1v6Rb85JmkoH3Sg +lRaX1MK0aPhM4WfCf7aWCNe669FAWPNB3Ya2lue7ewPLI84ZUEqcoJwmWn2ci2SU +EXUCAwEAAaNjMGEwHQYDVR0OBBYEFG3hwzikpXqMasw678OHM8uLyjEoMB8GA1Ud +IwQYMBaAFG3hwzikpXqMasw678OHM8uLyjEoMA8GA1UdEwQIMAYBAf8CAQAwDgYD +VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQA07URxJMI/Ta9y1wIg+k7o +1aHXsl6YOXmd2ymhKZhZHrZlutE2U19IQSoEV0SBddP9D05xD6Ovsrwo7caeYzNt ++2DJnlJ2IY61NqYUIDEoJyNPL/S7WleH+xO+bcSqWvbntTNYAD6WQVfHCAimVE6P +RnSZGqG089i84DRCyrh/6F1OxnBd6j14z+2ctQD+h6NlQXiCAUIwzVirYoE7oGpH +Xta7Ei+RDvBXLXLAQRdXpzSP/Ddf7MCJzmH3VYAy+0sVuHr09hpFMtC59hTrdLVD +/qma0eKrBr1DGH6QrZMZDqpNfv4wUPyVQBsRbbn2/1fL9IqK43CIj8RUllCOsmyU +-----END CERTIFICATE----- diff --git a/windows/build/profile/xulstore.json b/windows/build/profile/xulstore.json deleted file mode 100644 index 6fe09a3..0000000 --- a/windows/build/profile/xulstore.json +++ /dev/null @@ -1 +0,0 @@ -{"chrome://browser/content/browser.xul":{"navigator-toolbox":{"iconsize":"small"},"titlebar-placeholder-on-menubar-for-caption-buttons":{"width":"102"},"titlebar-placeholder-on-TabsToolbar-for-captions-buttons":{"width":"102"},"main-window":{"screenX":"30","screenY":"30","width":"1280","height":"720","sizemode":"normal"},"PersonalToolbar":{"collapsed":"false","currentset":"personal-bookmarks"},"toolbar-menubar":{"currentset":"menubar-items"},"TabsToolbar":{"currentset":"tabbrowser-tabs,new-tab-button,alltabs-button"},"addon-bar":{"currentset":"addonbar-closebutton,status-bar"},"nav-bar":{"currentset":"back-button,forward-button,stop-reload-button,urlbar-container,bookmarks-menu-button,downloads-button,_73a6fe31-595d-460b-a920-fcc0f8843232_-browser-action"},"sidebar-title":{"value":""}}} \ No newline at end of file