From e60f22833af9050cafef5ab00931c0c69867130a Mon Sep 17 00:00:00 2001 From: Arlo Breault Date: Sun, 14 Jul 2019 09:41:51 +0200 Subject: [PATCH] Reimagine the badge Trac 27385 --- .gitignore | 4 + proxy/init-badge.js | 125 ++++++++++++++---- proxy/init-testing.js | 83 ++++++++++++ proxy/init-webext.js | 106 ++++++++++++++- proxy/make.js | 22 +-- proxy/static/.htaccess | 1 - proxy/{webext/popup.css => static/embed.css} | 7 +- proxy/static/embed.html | 72 ++++------ .../icons/arrowhead-right-12.svg | 0 proxy/{webext => static}/icons/status-off.png | Bin proxy/{webext => static}/icons/status-off.svg | 0 .../icons/status-off@2x.png | Bin .../icons/status-off@3x.png | Bin proxy/{webext => static}/icons/status-on.png | Bin proxy/{webext => static}/icons/status-on.svg | 0 .../{webext => static}/icons/status-on@2x.png | Bin .../{webext => static}/icons/status-on@3x.png | Bin .../icons/status-running.png | Bin .../icons/status-running.svg | 0 proxy/static/index.css | 5 + proxy/static/index.html | 11 ++ proxy/static/koch.jpg | Bin 131664 -> 0 bytes proxy/static/popup.js | 28 ++++ proxy/static/snowflake.html | 60 --------- proxy/ui.js | 118 ----------------- proxy/util.js | 24 +--- proxy/webext/{popup.js => embed.js} | 29 +--- proxy/webext/manifest.json | 32 ++--- proxy/webext/popup.html | 25 ---- 29 files changed, 401 insertions(+), 351 deletions(-) create mode 100644 proxy/init-testing.js rename proxy/{webext/popup.css => static/embed.css} (95%) rename proxy/{webext => static}/icons/arrowhead-right-12.svg (100%) rename proxy/{webext => static}/icons/status-off.png (100%) rename proxy/{webext => static}/icons/status-off.svg (100%) rename proxy/{webext => static}/icons/status-off@2x.png (100%) rename proxy/{webext => static}/icons/status-off@3x.png (100%) rename proxy/{webext => static}/icons/status-on.png (100%) rename proxy/{webext => static}/icons/status-on.svg (100%) rename proxy/{webext => static}/icons/status-on@2x.png (100%) rename proxy/{webext => static}/icons/status-on@3x.png (100%) rename proxy/{webext => static}/icons/status-running.png (100%) rename proxy/{webext => static}/icons/status-running.svg (100%) delete mode 100644 proxy/static/koch.jpg create mode 100644 proxy/static/popup.js delete mode 100644 proxy/static/snowflake.html rename proxy/webext/{popup.js => embed.js} (60%) delete mode 100644 proxy/webext/popup.html diff --git a/.gitignore b/.gitignore index a187011..315500c 100644 --- a/.gitignore +++ b/.gitignore @@ -15,5 +15,9 @@ proxy/build proxy/node_modules proxy/spec/support proxy/webext/snowflake.js +proxy/webext/popup.js +proxy/webext/embed.html +proxy/webext/embed.css +proxy/webext/icons/ ignore/ npm-debug.log diff --git a/proxy/init-badge.js b/proxy/init-badge.js index 8646bc4..f85be29 100644 --- a/proxy/init-badge.js +++ b/proxy/init-badge.js @@ -1,18 +1,71 @@ /* global TESTING, Util, Params, Config, DebugUI, BadgeUI, UI, Broker, Snowflake */ +/* +UI +*/ + +class BadgeUI extends UI { + + constructor() { + super(); + this.popup = new Popup(); + } + + setStatus() {} + + missingFeature(missing) { + this.popup.setImgSrc('off'); + this.popup.setStatusText("Snowflake is off"); + this.popup.setStatusDesc(missing, 'firebrick'); + this.popup.hideButton(); + } + + turnOn() { + const clients = this.active ? 1 : 0; + this.popup.setChecked(true); + this.popup.setToggleText('Turn Off'); + this.popup.setStatusText(`${clients} client${(clients !== 1) ? 's' : ''} connected.`); + // FIXME: Share stats from webext + const total = 0; + this.popup.setStatusDesc(`Your snowflake has helped ${total} user${(total !== 1) ? 's' : ''} circumvent censorship in the last 24 hours.`); + this.popup.setImgSrc(this.active ? "running" : "on"); + } + + turnOff() { + this.popup.setChecked(false); + this.popup.setToggleText('Turn On'); + this.popup.setStatusText("Snowflake is off"); + this.popup.setStatusDesc(""); + this.popup.setImgSrc("off"); + } + + setActive(connected) { + super.setActive(connected); + turnOn(); + } + +} + +BadgeUI.prototype.popup = null; + + /* Entry point. */ -var snowflake, query, debug, silenceNotifications, log, dbg, init; +// Defaults to opt-in. +var COOKIE_NAME = "snowflake-allow"; +var COOKIE_LIFETIME = "Thu, 01 Jan 2038 00:00:00 GMT"; +var COOKIE_EXPIRE = "Thu, 01 Jan 1970 00:00:01 GMT"; + +function setSnowflakeCookie(val, expires) { + document.cookie = `${COOKIE_NAME}=${val}; path=/; expires=${expires};`; +} + +var debug, snowflake, config, broker, ui, log, dbg, init, update, silenceNotifications, query; (function() { - if (((typeof TESTING === "undefined" || TESTING === null) || !TESTING) && !Util.featureDetect()) { - console.log('webrtc feature not detected. shutting down'); - return; - } - snowflake = null; query = new URLSearchParams(location.search); @@ -35,32 +88,56 @@ var snowflake, query, debug, silenceNotifications, log, dbg, init; } }; + update = function() { + const cookies = Parse.cookie(document.cookie); + if (cookies[COOKIE_NAME] === '1') { + ui.turnOn(); + dbg('Contacting Broker at ' + broker.url); + log('Starting snowflake'); + snowflake.setRelayAddr(config.relayAddr); + snowflake.beginWebRTC(); + } else { + ui.turnOff(); + snowflake.disable(); + log('Currently not active.'); + } + }; + init = function() { - var broker, config, ui; + ui = new BadgeUI(); + + if (!Util.hasWebRTC()) { + ui.missingFeature("WebRTC feature is not detected."); + return; + } + + if (!Util.hasCookies()) { + ui.missingFeature("Cookies are not enabled."); + return; + } + + if (Util.mightBeTBB()) { + ui.missingFeature("Will not run within Tor Browser."); + return; + } + config = new Config; if ('off' !== query.get('ratelimit')) { config.rateLimitBytes = Params.getByteCount(query, 'ratelimit', config.rateLimitBytes); } - ui = null; - if (document.getElementById('badge') !== null) { - ui = new BadgeUI(); - } else if (document.getElementById('status') !== null) { - ui = new DebugUI(); - } else { - ui = new UI(); - } broker = new Broker(config.brokerUrl); snowflake = new Snowflake(config, ui, broker); log('== snowflake proxy =='); - if (Util.snowflakeIsDisabled(config.cookieName)) { - // Do not activate the proxy if any number of conditions are true. - log('Currently not active.'); - return; - } - // Otherwise, begin setting up WebRTC and acting as a proxy. - dbg('Contacting Broker at ' + broker.url); - snowflake.setRelayAddr(config.relayAddr); - return snowflake.beginWebRTC(); + update(); + + document.getElementById('enabled').addEventListener('change', (event) => { + if (event.target.checked) { + setSnowflakeCookie('1', COOKIE_LIFETIME); + } else { + setSnowflakeCookie('', COOKIE_EXPIRE); + } + update(); + }) }; // Notification of closing tab with active proxy. diff --git a/proxy/init-testing.js b/proxy/init-testing.js new file mode 100644 index 0000000..003f2b6 --- /dev/null +++ b/proxy/init-testing.js @@ -0,0 +1,83 @@ +/* global TESTING, Util, Params, Config, DebugUI, UI, Broker, Snowflake */ + +/* +Entry point. +*/ + +var snowflake, query, debug, silenceNotifications, log, dbg, init; + +(function() { + + if (((typeof TESTING === "undefined" || TESTING === null) || !TESTING) && !Util.featureDetect()) { + console.log('webrtc feature not detected. shutting down'); + return; + } + + snowflake = null; + + query = new URLSearchParams(location.search); + + debug = Params.getBool(query, 'debug', false); + + silenceNotifications = Params.getBool(query, 'silent', false); + + // Log to both console and UI if applicable. + // Requires that the snowflake and UI objects are hooked up in order to + // log to console. + log = function(msg) { + console.log('Snowflake: ' + msg); + return snowflake != null ? snowflake.ui.log(msg) : void 0; + }; + + dbg = function(msg) { + if (debug || ((snowflake != null ? snowflake.ui : void 0) instanceof DebugUI)) { + return log(msg); + } + }; + + init = function() { + var broker, config, ui; + config = new Config; + if ('off' !== query['ratelimit']) { + config.rateLimitBytes = Params.getByteCount(query, 'ratelimit', config.rateLimitBytes); + } + ui = null; + if (document.getElementById('status') !== null) { + ui = new DebugUI(); + } else { + ui = new UI(); + } + broker = new Broker(config.brokerUrl); + snowflake = new Snowflake(config, ui, broker); + log('== snowflake proxy =='); + if (Util.snowflakeIsDisabled(config.cookieName)) { + // Do not activate the proxy if any number of conditions are true. + log('Currently not active.'); + return; + } + // Otherwise, begin setting up WebRTC and acting as a proxy. + dbg('Contacting Broker at ' + broker.url); + snowflake.setRelayAddr(config.relayAddr); + return snowflake.beginWebRTC(); + }; + + // Notification of closing tab with active proxy. + window.onbeforeunload = function() { + if ( + !silenceNotifications && + snowflake !== null && + Snowflake.MODE.WEBRTC_READY === snowflake.state + ) { + return Snowflake.MESSAGE.CONFIRMATION; + } + return null; + }; + + window.onunload = function() { + if (snowflake !== null) { snowflake.disable(); } + return null; + }; + + window.onload = init; + +}()); diff --git a/proxy/init-webext.js b/proxy/init-webext.js index c641621..df618e6 100644 --- a/proxy/init-webext.js +++ b/proxy/init-webext.js @@ -1,6 +1,110 @@ /* global Util, chrome, Config, WebExtUI, Broker, Snowflake */ /* eslint no-unused-vars: 0 */ +/* +UI +*/ + +class WebExtUI extends UI { + + constructor() { + super(); + this.onConnect = this.onConnect.bind(this); + this.onMessage = this.onMessage.bind(this); + this.onDisconnect = this.onDisconnect.bind(this); + this.initStats(); + chrome.runtime.onConnect.addListener(this.onConnect); + } + + initStats() { + this.stats = [0]; + return setInterval((() => { + this.stats.unshift(0); + this.stats.splice(24); + return this.postActive(); + }), 60 * 60 * 1000); + } + + initToggle() { + chrome.storage.local.get("snowflake-enabled", (result) => { + if (result['snowflake-enabled'] !== void 0) { + this.enabled = result['snowflake-enabled']; + } else { + log("Toggle state not yet saved"); + } + this.setEnabled(this.enabled); + }); + } + + postActive() { + var ref; + return (ref = this.port) != null ? ref.postMessage({ + active: this.active, + total: this.stats.reduce((function(t, c) { + return t + c; + }), 0), + enabled: this.enabled + }) : void 0; + } + + onConnect(port) { + this.port = port; + port.onDisconnect.addListener(this.onDisconnect); + port.onMessage.addListener(this.onMessage); + return this.postActive(); + } + + onMessage(m) { + this.enabled = m.enabled; + this.setEnabled(this.enabled); + this.postActive(); + chrome.storage.local.set({ + "snowflake-enabled": this.enabled + }, function() { + log("Stored toggle state"); + }); + } + + onDisconnect() { + this.port = null; + } + + setActive(connected) { + super.setActive(connected); + if (connected) { + this.stats[0] += 1; + } + this.postActive(); + if (this.active) { + return chrome.browserAction.setIcon({ + path: { + 32: "icons/status-running.png" + } + }); + } else { + return chrome.browserAction.setIcon({ + path: { + 32: "icons/status-on.png" + } + }); + } + } + + setEnabled(enabled) { + update(); + return chrome.browserAction.setIcon({ + path: { + 32: "icons/status-" + (enabled ? "on" : "off") + ".png" + } + }); + } + +} + +WebExtUI.prototype.port = null; + +WebExtUI.prototype.stats = null; + /* Entry point. */ @@ -30,7 +134,7 @@ var debug, snowflake, config, broker, ui, log, dbg, init, update, silenceNotific } }; - if (!Util.featureDetect()) { + if (!Util.hasWebRTC()) { chrome.runtime.onConnect.addListener(function(port) { return port.postMessage({ missingFeature: true diff --git a/proxy/make.js b/proxy/make.js index 5d6e013..52ee098 100755 --- a/proxy/make.js +++ b/proxy/make.js @@ -26,14 +26,19 @@ var FILES_SPEC = [ 'spec/websocket.spec.js' ]; -var OUTFILE = 'snowflake.js'; - var STATIC = 'static'; -var concatJS = function(outDir, init) { +var SHARED_FILES = [ + 'embed.html', + 'embed.css', + 'popup.js', + 'icons' +]; + +var concatJS = function(outDir, init, outFile) { var files; files = FILES.concat(`init-${init}.js`); - return exec(`cat ${files.join(' ')} > ${outDir}/${OUTFILE}`, function(err) { + return exec(`cat ${files.join(' ')} > ${outDir}/${outFile}`, function(err) { if (err) { throw err; } @@ -53,7 +58,7 @@ task('test', 'snowflake unit tests', function() { exec('mkdir -p test'); exec('jasmine init >&-'); // Simply concat all the files because we're not using node exports. - jasmineFiles = FILES.concat('init-badge.js', FILES_SPEC); + jasmineFiles = FILES.concat('init-testing.js', FILES_SPEC); outFile = 'test/bundle.spec.js'; exec('echo "TESTING = true" > ' + outFile); exec('cat ' + jasmineFiles.join(' ') + ' | cat >> ' + outFile); @@ -68,19 +73,20 @@ task('test', 'snowflake unit tests', function() { task('build', 'build the snowflake proxy', function() { exec('rm -r build'); exec('cp -r ' + STATIC + '/ build/'); - concatJS('build', 'badge'); + concatJS('build', 'badge', 'embed.js'); console.log('Snowflake prepared.'); }); task('webext', 'build the webextension', function() { exec('mkdir -p webext'); - concatJS('webext', 'webext'); + exec(`cp -r ${STATIC}/{${SHARED_FILES.join(',')}} webext/`); + concatJS('webext', 'webext', 'snowflake.js'); console.log('Webextension prepared.'); }); task('node', 'build the node binary', function() { exec('mkdir -p build'); - concatJS('build', 'node'); + concatJS('build', 'node', 'snowflake.js'); console.log('Node prepared.'); }); diff --git a/proxy/static/.htaccess b/proxy/static/.htaccess index 3dd217d..f733194 100644 --- a/proxy/static/.htaccess +++ b/proxy/static/.htaccess @@ -1,4 +1,3 @@ Header always unset X-Frame-Options -Redirect permanent /options.html /index.html diff --git a/proxy/webext/popup.css b/proxy/static/embed.css similarity index 95% rename from proxy/webext/popup.css rename to proxy/static/embed.css index 856e855..e6d8149 100644 --- a/proxy/webext/popup.css +++ b/proxy/static/embed.css @@ -2,7 +2,7 @@ body { margin: 10px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; width: 300px; - font-size:12px; + font-size: 12px; } #active { @@ -27,14 +27,13 @@ body { display: block; position: absolute; top: 12px; - background-image: url(../icons/arrowhead-right-12.svg); + background-image: url('icons/arrowhead-right-12.svg'); width: 12px; height: 12px; opacity : 0.6; z-index: 9999; right: 0px; margin-right: 10px; - } /* Snowflake Status */ @@ -43,14 +42,12 @@ body { -webkit-animation:spin 8s linear infinite; -moz-animation:spin 8s linear infinite; animation:spin 8s linear infinite; - fill: BlueViolet; } @-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } } @-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } } @keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } } - /* Toggle */ .switch { diff --git a/proxy/static/embed.html b/proxy/static/embed.html index 32c26ca..a48daf3 100644 --- a/proxy/static/embed.html +++ b/proxy/static/embed.html @@ -1,52 +1,28 @@ - - - - - - - - -
- Internet Freedom + + + + + + + + + +
+ +

Snowflake is off

+

-
- +
+ + +
+ + diff --git a/proxy/webext/icons/arrowhead-right-12.svg b/proxy/static/icons/arrowhead-right-12.svg similarity index 100% rename from proxy/webext/icons/arrowhead-right-12.svg rename to proxy/static/icons/arrowhead-right-12.svg diff --git a/proxy/webext/icons/status-off.png b/proxy/static/icons/status-off.png similarity index 100% rename from proxy/webext/icons/status-off.png rename to proxy/static/icons/status-off.png diff --git a/proxy/webext/icons/status-off.svg b/proxy/static/icons/status-off.svg similarity index 100% rename from proxy/webext/icons/status-off.svg rename to proxy/static/icons/status-off.svg diff --git a/proxy/webext/icons/status-off@2x.png b/proxy/static/icons/status-off@2x.png similarity index 100% rename from proxy/webext/icons/status-off@2x.png rename to proxy/static/icons/status-off@2x.png diff --git a/proxy/webext/icons/status-off@3x.png b/proxy/static/icons/status-off@3x.png similarity index 100% rename from proxy/webext/icons/status-off@3x.png rename to proxy/static/icons/status-off@3x.png diff --git a/proxy/webext/icons/status-on.png b/proxy/static/icons/status-on.png similarity index 100% rename from proxy/webext/icons/status-on.png rename to proxy/static/icons/status-on.png diff --git a/proxy/webext/icons/status-on.svg b/proxy/static/icons/status-on.svg similarity index 100% rename from proxy/webext/icons/status-on.svg rename to proxy/static/icons/status-on.svg diff --git a/proxy/webext/icons/status-on@2x.png b/proxy/static/icons/status-on@2x.png similarity index 100% rename from proxy/webext/icons/status-on@2x.png rename to proxy/static/icons/status-on@2x.png diff --git a/proxy/webext/icons/status-on@3x.png b/proxy/static/icons/status-on@3x.png similarity index 100% rename from proxy/webext/icons/status-on@3x.png rename to proxy/static/icons/status-on@3x.png diff --git a/proxy/webext/icons/status-running.png b/proxy/static/icons/status-running.png similarity index 100% rename from proxy/webext/icons/status-running.png rename to proxy/static/icons/status-running.png diff --git a/proxy/webext/icons/status-running.svg b/proxy/static/icons/status-running.svg similarity index 100% rename from proxy/webext/icons/status-running.svg rename to proxy/static/icons/status-running.svg diff --git a/proxy/static/index.css b/proxy/static/index.css index 70b5a24..9502a37 100644 --- a/proxy/static/index.css +++ b/proxy/static/index.css @@ -76,3 +76,8 @@ h3 { .diagram img, .screenshot img { max-width: 100%; } + +textarea { + max-width: 100%; + width: 600px; +} diff --git a/proxy/static/index.html b/proxy/static/index.html index e46c373..20fe5c8 100644 --- a/proxy/static/index.html +++ b/proxy/static/index.html @@ -77,6 +77,17 @@ Consider adding keywords snowflake-webextension or snowflake-client to let us know how which part of the Snowflake system is experiencing problems.

+ +

EMBED

+ +

It is now possible to embed the Snowflake badge on any website:

+ + + +

Which looks like this:

+ + +
diff --git a/proxy/static/koch.jpg b/proxy/static/koch.jpg deleted file mode 100644 index 1a3c1e3d4191a410a2f526126ef3bb36c3ad9233..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131664 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
    |`fUa>wVQW<(PKi`~9g92zDk&~i%!Km2K ziyf$)R2%91d&a^ZG!!D4*vv;fDo32*eM{~rL4Mp$Aj1qkH zUZMH;!Q@jQ2Ytzglfn*jGIdn*z^RRMfAB$ibEtr(tK-AcyF}30P9i$ zw>hB_p}q2I_`n8@ZtEn5TcEX1bp5k zEdhnLI7t+ERuH@Vr@V+O+~)Qn>Ir06k;IV=HRQ*yLG4LmsFH4(z_b}~u1~BWCxRC? z9v{TzQtlc$zvtFSag=X2Z1Vnba;Tvvm^x4IEP#WELi86s-12Pyi5+cu6jKN9<+$ z*ibMZfJ;}zMnv7jl^LB15Z1j&zjCE2@D$Y*j%I+y}aM5N|P?+}z~BxNVF@KzQU zp(Btqoe?&{bAUASlT948H%6WBD2?Qc1W6HWyNTO~NWv+ZQ#YvJkvS0rl0`f{y;OIT zefN;@eok>@g!fYK2o>KsA$UxeQfyC;tgkv;YBdf209(!pv*eisOY(=6;2adKv$oi- zd-0K$YZy$)X9pJol3LewrtjVtj><5bcyr)z4UCRZ-uB1w-WM6SHmS?2{{ShJ4BDN4~B0t2MEKCrZ8V_Mq~c~QjXIW z=L2L)F|ngv_{LBb7NYNZgYk^R2*5+b@wa(;@K#YrM)7t}RIpQE+QP_i(M|r8O)v%N z0knI=p*T?(O~{ay=MX3-(5a8-#v;Ib;I4cB0NfPUD|9sY?*<6M{{R~2oB(P}gdRIR z<4lcM(GN}6l*;HKMVx#xqT@uWBTBtTtQI;-Lt+qPf0*#+BFl?Kqp;bpkbRfC3KT^o^8@1}X5NGG0xdBY_za*F@0h|5~_&{)iJ}rG^C!TP2fj#`JLp-?}a5Z zQ9kn%vl6$xs;hGI61-VumLs6{|Q{2P*Je>Lws`Loh*bw)ZpDnN;6{FNWHP$$SuNhg2Vl4mIEKwzR$x-v!d3vp;}jfa6oRqH0` z@%?`|#{N%9BhB&W0dSTdVrEF?uUF151qIBmdFR$PJS!BJ^|QuovIQwd>t^wXl>VmY|wR6XiGt;6swzYP2d_&v7a~t!3$MiOfPz~b+GN`dLR(g$LnZgjjCRw(Zv79y?kmVk}@R-j(>=O8L zd?BO+EwcXOB3|ohAvW>?#qU-PKRjs_GkTw%t0)-67S}w~-tiI0HI-{hv*@@{VqX$7 zBryRm(Yww~9#BhNpKMMpx^yYnoLwgH5yhHK3jH{&yB}~!7U|y+8k~D5H_0B}JzglK zXS$T&scvWQAPTvsH)IeQE8_Ak$+$J5>`NcTRXpjsbsW*va^Y@(v1ZiUE z*wPNDld&ZGVMW*<+8t{jYGlt$u)KJb8KdY)X@pX0KOV7lF8~GxgZr<>ZqqboCcNhB zE2By>el_)u03vC8o!@xI2vJ&fZ~el_piL$`pTxSXLoGF5N5 zQK@;Xjmo7Jj^l6fgA8H4Aa3!Jj2?k;;(r+zkWt@q&m$p>>eyc`%|`skIlGk|Thl!8 zozmAAg3caJ@xhP?jS*OZ^!COxQK1Wq68`{0f_Gw!YEIZAruC3-@Id%N?0&sq>*&NW zzz99d+gL}l!0>!E>wCrcA)@VQt}&i6i2#Y6uO~6rGa8akKT+P5-SO4Pr`92jXfqIKhJqR%*wIDnJ3fULYmw4iLN|s zipXTh&`I(>40>@<3xbz`!zq|`Mo_fXwm^-*>^j4erXjz1O9WGFM3RSX8`{GX-|}7P zF`{hSqvyxGl0*<6AX_LG$2-ExR3bg{QBZe-`}F~qZaEpR7(f>$lqM!^m74P73`>9= z4?+Yr+m?L-19Dt5w6k(^C1S{+7o-$@e zUYG>ZWWLVaN{Hbz15Jr+S>8SqGYC^wZ|lx$uA8Z+dYlME+2EBpmcREXOJ#5u?H}e6 zR<^YulzdE?g7c9^9LU| zV2;bIh6Yh$iAwY?f;CEID3c@m>ZT<`};wznIFG zmS@<}o7~r#oyu(|f@}g(6Fgo*V2!gRBM3q1-dN{|R}dxfDxH};XAqr_%FFWm$DA<+ z*ggY`F9_k&@aLA5Ka8KcR=ku;Q-_l74HSW$c&}`o(e7843Vh9Fog#1vK|Bbrtz!pV zr14`n5+@ofA;F#;zgK=C@YBDCo&2m3_F;1P@H#b<>(CLShl#{#a(9%Ww?cfirE#dIQEf zslwm{O=9MJxnR1B3i-KEL>=NE(pE@=X+mGA!gfWwN)JM&v5OEKLqGvy-eZ6Q;Rpa# z%Gtd7b{xen{%^a%+PfPk@z3##I-;m79l0{c1qut;^^gl$U>?oQY34JY*6<?Bq zXweWrN5hX;bx3=?&zvK1Uw;A&xR-+$!LSGr4MmX6&Z`V}-#&;;#f^N5DS^9OW%CW}}+SFFEc z1w^Qd4`b$&q%j5ocDTbYj2*mT*W6kH2E-M)uW?qy+IH_;POw5M@&^~??#=Qcw#D#7 zXJX9+YpJSfg(Kl(rX-OzCNw;x38N@F8mRWmcF-IYYEI5KjR{bYH}QXrUuazHhj3CF zc;^{`eMMH3e)EN_?7HN8oD(LA0Hj98e0=0n+*5S0C@;sx@MDUZ1CQ@K0M$!yQVmXqnqqFY zX1vA;$OOUcD~7V5eUdZ=xSUhoMwE^8>|e?_$6^VhRxqt(@`oni5@SxWK#a39>ldV@ z+XQ)95M7$L6$rKnCAj1D#$-9q*Ixes6P9Rc904R^C00b4$iZzy&jWZU5!r=O$+Fv? zeliXoV5Y;UlB%KJ5B^6{bR!Ux&BV^JZIe)zjY1-1cBhGMSdgEmphq^;!Zu0ye*9#h2ae+*1+DeWvStm3D;et+8F|KO}OA@K2 zl1aYZ_&ZF^H2WN>3IN6*`l-z`dbaE>=K|6QSC> zUvmLQBv-Q7CNX-#r;I;A=WhsZxKd~&_WuA(G9(06_Q$~Zo-@Od8ryQaE~rxrF)2k& zV+@21j}9f#wBmrd_DKdoK*tqt2st%&HHHL^R{+kC#YiYk8wFt>QEfMK3{#7%If z@R14`20a%mz2~vE#$EkJIM$cqgUYt}FC+8c$ro!~(M075t1MFkQi9*{ZP&{>)t|iu1VIDV#&6AA=zIv127}XC!cQ&u9&OW`HO}>-+$GU}3 zNR44ViD1y)C9UnBSG0O4e~3)PGgHYBODS-zmq!X$XmOBf^mRLc51sE>2A8~=xw-Je zI*KI2Sy5-9&wt(!B;UEs@3Z}4#E(c&lzT;y#sxvs@=9Hff2qlw5SqP_non6=P6W&f zWKB7H@av$g!R?oacoZ{@?1bw{kK_5_O6}qeo4C&i?R(>Q})$%m9k^#We?o53a^b+zwMp z6833vFtxnpLBL!bVEBl=#z!eL+r~fwRHdXcamh67kNJ^ghbN3G)|Twb7DJF94T#g( z#!Y3`m{p=WDXHfIW*`@0w0KWrcsiytz0oGeJ zMZtM8$^xK=oSWL<_NIK+6&j9Khwm9O%0I9w$E*OxQj1Cm7NDmONK83?<(V*WG0rZE z6iXU{Jo4gmm~QUNCZUgvoydhO1gjoQzbXp1mRq;@#KH(;TXQppk`ul~GxYByc94&9XP|5$||gj6g;b>;QS?GA(LNOz12ZM8cJvwvPTZ zmYYS;kDTWe=zO0gKldq6*M0VGUESi%w0o0JH9EM+kB()1m=8N(%_O_z7gIiR1nnr( z(aP7xM*WMhkkiP1I?Am$p-Enq5zNQE{{W~0gT(TRjGAo~G^Tdcb7D9K9Y{hYMbK5{0%JyfF161K~77{PU5ro#7gRU5qZxjLKw%No?1Q zgmDTgrcI9$o+nvO*1{knx<;3ba|&*yV1FcQ*-`S2wBXQ-Tjjho2y#2BfJfufG`bec zBi$flzl;lU7>bdSwo6b>Cc}v&%V9s2Q{bp{V-*$F#$_wGHq`JtCg?}iN*7Y z$uSlX-0D2Rj)f3cPvK}y;gFI^Db)EQ9h|B(P1DQH&FV2#GcDo*-_Xe}Xdrf;K}XSx znQxORAryuG08(M}5e$Ti+=rZn4&u@3$jy-(B9}=Tgp-{zGW`frXI==zg`P?%xg5vX`T4NwhmLFLg*C3UW!9=efF}i~9teoZ|uqyZV&R1>=Q_gfa+**0bmjVj{ z8fo;?rwMnd4uKM(A){f070pS(1dl;~oNGihf*7xk`%BbAue-V-RwyPqyqio_SLgtRWr?8D9o zFFRofQBTP;I|Q?&?4rY=6FEZTOie$BMR|5$CfnIsP=X;PH)+l#V99}Q4eoS;9bun= z30btwsQt^p6_#TyExVolU_BAGjbb_Fz5HNd_V=8+qFZvAdUIvjCfXln2n!mMu^{}Y z@M7+w03r>fN+@UEif-ZvI`-F%^ODwd_bj?*T{e2o8U_-gB5nF6@)7Ng4dZf<$L3}; z$*_C()S=PTW9dSsU3B#t<#CR9SRjVLfI8av#6Xr*K@^UHycw{j%0>*SNqkQk2N-}w z1awDV$9W{>cld=L!v_*ZKHiDqUU-B9-T`~BmYb)tsFnTBEb#9Y*sg#(&f>BOB-@Cj{THRg8J2a?027bk%2g_y|K zvUyv3;r(#HvG&row#4t_3mTUI^dhdSD&t(J3M}14WcrAUP6P(WH`OHgs98Fd>L8 zs9MKji$yqc*fPM6Hq1DC$)8wa4+*A-XRIe=3{Pd<==5N*!bOK_>6UARJHtrHf;|_o z-z(xU#rPjHsf9zEo+1_v6fq&OHc0kwk(UaWO34v5T$YjC5G54=DdW11262&~#KVF| z$24(=;s&?NMF}`QlEKoUOH#3ZRr$@qU2O0A$D&at;%Aoz&PF66yqsm!ba=_J1g)0B znqHmc8Y}wzV#8d*h|r59v^wAc&502HU+I+t#?vMH7JNRELpl`2fHeT-mB~Cv6osCC z4R0Zfva1vvpjBAg>ZFof=8zUqa3 zm|#mkWBp^5G2C@1W@cs*yyaXpVVEG(WO&1knsA2*_*OcanWL~|!v*z%GE-EVP#=!t zyj7MBN^PWEZ_ZA=&;{qQ)=l_5Aeljw{<#tz7LmCtaKmg-q6}aHoV)ya#NCh^YZ?^DYLvsD&EW#3A%(aE(tf!K@5_2kJvP@fkV1S|~R;ov<0K`5a ziK1-WR5%|flXPJ#mFfbP7S(>!idbI#Aho66@9%EW;rxYfhKo5&*a&08}nj*YSa5 z2}ahj-b|huqA#3B)V}`!e~j@+&vaRgmOZduG002c;0HtPleA3X5tVKrSWN)wI$jlw z^s|$N>FeGoDos@ID`G2d(Qgw$co5N!T5Bqx3FQ?5A6$2Xd(N`tlK%h`+~h@CszdE6 z8RCy}z;zL|9!g=6f%3vSuCgP&mS&-c7RHliWhiWiLcXUSlN7-ZCA=n|h6za&Vdnn; zcY&>8egU!#>S|qOG*l`Eg{TbAhj{?pc@d)@=*6fp*|d+&Y>zwK%Td-6_!vu1KCb`^ zMc&L4s7%ksH?`!NPsRZv(vh>-IFem3#kJtq=L%BdC&Egob)N<=rR|;di?Asu zCdA|+`^!DRixn>cIu-`@2PWt&s!jP2-)wof04BRuxbCaYQiO$}wSY#q-@_(liW)w( zN~PZ=2oT9hqIN)eO@=nqpd%nc4>O`?5&SrmCaLyH$7o3)TPjkP%P#8g5r<-B7XHRW zmJT}OUNN08^PkmzaO^#vMyvy08`sh^B2Z_5|6!4Vj9HA>9v`OYqCZlsM;e(}R(sbMw|^jBEKfDSSC*Etyi zw|-XKSZaRN8I(y4mehI5dL^AR+o``ew=}|9MG8V5u)#9g3&?9`=MLNJhZHQ1EBM6Y z$zwz))l_oGFNtT-8!Cu=5r)ZX?6!j+?s8ES&JhG|Sn3RYjYR{YC$r=U`oAc4Rs|6ej|*Vr-y=N=HKmPvhtWnP-v}qYX(G6=FVdm>ZSq%zgN#*G17s&5wvUHn~aPHnH;2% z#CgeHK|BdeTk`o15~chF?fmAEBC8)gWHEpl!CX&TtTGne#m3Drb>jz;d45n!70p6s zyIl05pv#1oB^ChvUQR!n(e97zmu^%spCm?#`ElnLSz4HC#y>tXH~No-4^dq?2bu#C zfd_8&tCFJU`&8^ z5iW~SZZcU(Qlcd^?h^}hop5vzT&NQS1CVS8N;Ht`FSv?%{+we<4v9PC_{wQmhW6R} zyw+U)5KTQFI2HBH->EXkD-SAS4;RJ~Oi{A$P&ReaT$xeYR z9)=BDUi6p>ZiS*#1*OTUrO&{Vil=BtU6-cE z5xM2f8?%Gaps`ciwP13u0c#M8fi^|VV2B_%rtCrJG0qSRxb>pZ>+c|qF&5NHkp9z% z?@e`Z#75}xc)9BDV5u0akkLlV7S7>#JDxJDPPyy|^Bdnlo8>`ZhBy&1P1m)gDRqY` zPP@O(TMbCZ2CIkt)){Kr`|cClVtm^b`(sdp!}!Rp$>SHZjA2wsQ+8Y$boY#;k>X3? zE*eg`#e8|*lRKDSg`GI`q7=y9?`G<3P<7- zbsNUmU{|aQCj!PN0?7e75i5I*bG$9~x`k0Ybgg%a4weuT$XKH6;#CMWfodQzFQ+At z(MH93udId$d_MBZpb(>#T0ObSws(FU&ctbk9AMOrqX4l$PQQrIbVqTTv}LuHJ>$Sj zpl$Cq%n}8_Hw)p<;|$2tB6t{$e|Xo2E0GNjD+N&$G=4HF$xn-TltDazmU0~ky4bmQ z$2lG5hMyOLuPrnm{Y(D<%qii9WB0FF5Q4k@*<^)P&NzbFDEj{LaV&ISJ^GIEHK2dB zf5k#1ytok)9wxBM(7Aj5a_%Tx>H><=MDvg={$Zp52H^TDA`%sxkX6Q%O5XB=<8G8} zgU|bum+2b~uVFmohXTqXk3p{(s30hqmcBt~VD^J$LLUhPOoK38;~8PBq8xA45v+<2 zNT6~{+qPHZt&&lX?CGqcEuPZMTy3d)=MV7}Vy6sa6BKZ8Q+{%8ZXJt@*Ng)99&+-L(k~F0EY7lEK|0jnY{J4CK1oZsB|0%A zUVcSOVGSHFa7I?lU?h2^Iey+UTasq6eVh6C<0d4mks%-P!{CWTd5OronK{6mTC}DK z6f*LBIy?%6k}++``DKti+hn_T-F2W(hO}Xzq&EcD$ac?24XA*O0;l9~8-rwHsC@?@ z$2%%ix2gE|(huw<^U%gbfdj9s;$5ell|(g&PD5vPhGc{; zN7hCNNSTn1@bVKBeNV5PxL$ArLlcrOOQW)6#MR%|-ZCzbK5W4F8(7UyddE(IvFe0! z>pw~jALqtIfP|B>e}6bqL<(~_Kq5{K@rOnl0j1un3mH$v;`r84;Emy&pBg_{^<4$H z=fp?jHI-kNGny>Ti#HCvhsIG}O*1T3bVONt#9L-LWP{E649+o#NabN2=0hWXaa?p* zjg)Uo1M(EbX4A+-+93wtw)z26H8^;XcaJV3NK+@NS6_@N)j7MS zmHe*@+q^1n9B=8*0eeOnM}Ik93R{BOvG1IyOPr$;d!CT9!<1OU3KL{b$ujW~QIJ5E zbns?G)jiJm|5LGcXHSg;v8eyEFHa2G1RVSLwPd2wQ84MFfv@t#k$AI}-r zj1v(QxUPpMM&mp?N+)JWC11-VfO)gdUDctYVhQ`plGKQzUa$?!lB92W}f>6l_FqgXwIyS>!`;q(!5+yTyo&K*Cc!e_|WS%7Bon?%Z=}L)t zk(tGHsZcc&4^!=L0^ERYol&6eD-S?Ud1j85m(lUNaI%AQ1vv#_;hCyR)%e7YcYttS zJO2Q<$nBUAJd2R(+UEz_Dbsu`wHPFFfZ%!vR8S2&CnT=%1$mk4elmoP3>@2;lYcoy z8zN+pjy!e-PGkhli&{c$^AVGyAg83#R=Jp$AP61Ph>5YNS6vw8S^|L=uY5&g5+dCc z!=1h{(vj)OS=SnMH-j72sJKi*tFLYVg%UxUO;W<=tV(oIsU(;nB)FN$rZPo%mSNp5 zX<;%%904_wghXk`bpw&b0#h&yRh}P{D5c1{ky?KqG9gldCHjAu4@7W1Av=l;G=J>r z%5u3|XAe9jZ|qhMMTngliAv`R+i3Ngh?9Zq^vHK+2_F%VUmgPY{AD{$Lw;+#5YW*~ z!^hq)PnB{x%d%+#CDFB6`vq#gelSJW=Of$j0vfwEZurfvoC75X)IlwKH5;Y9-Y(epY;CnN2SJGDUaK;?NRiYDgW>BZ& z4;U$$dPsy0U>e9UNlH+OH#TuNQ7xJpsq7IK;}z4LI5|wRy4Kv(5!ec3$4-b$=ajpP$X`J63kL;nD0^o#*ZC|TFL%fvUKU`vx{M<2t0OlYF3{{V2pSWD~o zSkjA>g;mSMdxHX-v~GdQck$J04jOfCcm03N5YsC}>;C{UY$F2s7a49tQ)~FY`H=$n zY}7vE51Nn|lH*bMjC+XXk>4K)j~HZ`YiD$Hje( z7Jf#4T#TWu>A79Z+;G5bppt?+MblJ!%2VPuBy8CBHxY{?y4!djP~>;TNY_0GY(X1Op?FT^MF%jWYQyhn17r>$w7oO zzhkd>w7AD)8}W#Uis(^pr+%E{)<`!?ht>&^F|p-ekLwWS(!vyfe>@p?knH^V$JCZI z;^Fzr#sD$V1HDhq2$sp=#|AKRSqY8AZNr5rxnCK4oMd=cr(0z7VB_xNhCo-6yU)BfB>};h@U)I+FGs0OpNsumVyfJe9Vw56D7nd*CF5APlvwyHC!8yV zw1=UtCo~5*lqQhP(qIlUJz$y7l(=xLvkW{Ec&08_{Kf$8QxSX^wfpgd`bzZ);hB%?oRjTUUntrcGp#)0 z9g08Trz(A(F|!uAHp-l%`^Nx@ojYhL4t+6*gbnAU>=)CKiXlTqqS$k4#KGaTkb%fr zvEXWSQZ5A{3d$Zr7&1`$`@De2n?x(DBe9`TW{@qENM|s}(R6A$KXn|hATKI&04Jyc z;59iT0wGKx`7p#-&}=t6R%}v=y}$PXSV0ye$9TeLL{d(%#!?KxQ=TxMR>~HYc%7PZ z5lY%7_54lXn+gXB$ucw_VU9KvK^BgLYwx^Gpl;@VV_d)cM;we|r;ix18$#&*{pAKh zKbAtJGQw&cyKUiRDbM!%jDpGwhA;~z^}n391P`sV=Ui5^KrM%Hl;#TNBb=|;lB98S zWgq*NZqy;%w*Gkr!lTM13An@ZVT49P-GofZISrf6LP)!N-=xXU5Hol` zdCm^w=ryABdcwS#Co^*nr!ytz)@LjtS=m z@@An3_P;~*A%8g}vr9w%JxCb$@OIftjemH~(HWmT1z>RIuU>igjc z7kW?pXM@p-j=%}BE9H0GRIS8K2ghr2SoZKaJNy`5K^I1S{n1ufT6J6^L zcmmUBXWLzvu4FhC@V>HjfexXF4 ziOr=6pPPu9-~C|-Fo~`TC1QkV5@;L9!O#~;`_>RynM?#4m~LrU^ND-zhUd87yd=fCG*tK*qzG9TKkjY~W^hsM<}sqYSlRM?jNoXMkr@Lhz(mI{Zc2`n-I%HZ zd;|+632c*fjNi%%4rgE?P>b<50n6h!L=pg|r}<>SWROZ4GU1J$G32p40lCX};ajovhkjQNjG`HkQlV5N0t<0%8g{Jc*_32ISL z+B&~E83Mx2R=>G867=Q;N83mi?)0T5oChW;5`tVLg*R$yo5cyV< zhw?Cmz?Q;c==S7#TY*hiN!$Mba&L?hv2p~?jjFoKAJA~snZHQ>FxkuN7zzrBZg|oe z?PE|;cY$U2tR`{0C40%*+EEq1LGzFzxU?HS1$-D${3klu`CK<%mO8S2{{TRwNLU}{ z`QB=gjdknsh)k$bymS3yM;k#{e!gcJxZ8eSzd5f}gANSvsTH|{>nIxv5g)W6J>r6; zfHZ19jM{?{4YU2?ZwzZBvtw%xMvBGRA?4#11qAdUT>5*Tc;1i&79*BHeF-62=qdVq zU_=6OM!`y#N4y-f$%Qxj^N|5C+=Yu%$T_YGvB_npl^K1HI08rjMa0J#yGm9R+dAXk zN5c?_em^*(%%xa*x1ca1l<*(#8qFIXlNd&TCMEjb4tKLic4rr4p98mgmE$EqRfmHJ zIAFMdeDZJK)EN9W?~&H01}0I3 zq(e*yis9B$1Y}3hSu0-q$2UhwlA|bSw*}NsBp^)k&-sRtx-^``9UJSo!YC?PUTQ9r z*3mdg;e{UrT|PG);M9bdIO#rjUYG!}B2ZBtjmjdzgE zKwCKm`r}9YHxz+l4jkcGp>a+>Bq(2>$?aYiG!3{{S#c5IMXL zUl?=^5{c=N!#@JHy82> zr0A+++$*6VA`Yw`DsdXUF%7KzKI1EQ#Ry}RBI(bZLQpaUl_&{I>QyXc$F(oPDHLwt z^M+5d(CH_B^c6)pCT;^lTHVQd$D-g^hZD#_!z_-X#&9VW7sY3$xQvRm46qbHe2(#?fi8eW?OLq{a#}({tS5*GMG?hDB#I46*F?X+IKk*nmwplPn~Y#MSff1*xRY z1?-Jn*-yyf0YG7-f1AltBbiNe*UlgenuMR_8~DxxNdeT7rk|V$Xiy> zEXqJ&J7P5mkDXwwC_e|TaO1;TZv4NzVJY?mh%<0gbJSu8!I3wv9J$jV8@@2J7XlO` z9Qr=+6M%845grCu@?|P<39}BwLVhPNBsdD@H#~gdjF|F&UpNWb+dcmPcp2=^7uWc4 zm6Bp-eskX-*dYmsdHBS0#5e#V+7lS=r#N_200cJ9o1YFQiMqKDrG8v-=zR%eOLwV~ z#u~-o&GD~{(y>64TIxgCVp^JzYM6r7Wh#;c$CiB$KuEgPapZDidyYi~M9bp?fSB+V zu<7R{>NW0jqvJSM!VA%wLF%YE>vBn!=lpSpvdLE*Dus!kIiq1W5=s7BxZ?zqZ4Q&k zcWui#1X-@T+d>GZzc`V6E_PYsHAM5_$d-h7lg-_D#4gYbq~aJ$*fknb9U_l|EQN!* z$AYLhJ4ep18_3mkM}TM;Zr(OJ$rdOe4-p z`SFhcgu_eE;|vhH1_Ym($+8gm>VoyhSSI2nyN=Ayi^LVAOZYa+f3uIqA{aN|j$|Lx z5-nEA0-+%6A|J_`unrL5jS<(!ITSfenGC-(<40KgStTvEw?oWgurgvx@MDhtuxg4C z8lN%xtXSHYi*L6M>CS7F1A>ZT^dC5+LW7bqde%pQ-LkmJqJscdJ3edU1ZB8jZ=ZPH z&b0nY%7r3l{;!;B1%TvUNB-CMt#$K+JZ>F$eCy{T4D(QNB1znpEBMAh$EiaKiX>?v zrmk;!pn&92+O=uPKC+Kbja>zw+}Od44iqk<$)tH+F!g2R^2)sX_nR#UtV?O6F2cw$ z8`F#{gf@f(<un~*@0M|-y z8G=x$26dt>GK{!iD7Fqjb@W4=;fpbJ>HTFYBxb)j z0Ds_R41^a%n=@ zoAl>KuG6w!i1}gzQxD`;y|{#s!et)*azQl|yd~sXo=7y}?~D|BRZ4Y2Nwrv?89+7g zL2WzD$r4;sf9@%BvLz7Qj|LGG#3vvS>%?=6&Pk-j@R7C-TMqDtzHLAVFCqa>_>M_mVHWOP=}oPv1$jEFwWHc_!HMflDt93LEY?+|W)0GGMI zG%$?Xzm6}KRm3z}(ylP|z~CN`9m?*9NUuc@Lnbna3hi<{hG znOm_9fC`F7OqYoWz~gV=^@f*UJBH7X9EbKqTs$KDan327V;eOqv}<`(EJPKJlQHL9 zl!S~vyl~|D_ecd{#7a+Y2`nS5R#r%@`r{1LJ}$=#5T$o}&3Tx0Q+gwh|*3}d1D;mgf1wwNzE`EqnGNFlan>*_FE`lyinoZsWK z5)Egj5sjFQw4|&A{{X^j9*ZbVhM0-f?H64!fU*aaHM*_fQh*vAK+gUucY|&M2UBET zr*FJ~Hmf$4CJWF<##Qo7P}2VZCI0}p^fnd0K34w#%<;OmSoh5T02$#RX`LJ6e^?a} zn4z9kr(c{XIOJ6A@UQPA`9z^7rrL|}m^4IC-!C6u9~n%wfTV7B=fA9ub0_SGtGlj~ z^hraw;tA-l&l82%0EFzbv$i$X3J{k?Nc;E3EH=Tz{Bm=~N_dE)5_PSRZh68P2I4Mq z{F2m8!~W$)o;ovJrvTwV4>0jGD_L*%d0q)**O&K;Su-fz{q_7|wio~(9~lZLs*+FV z2?@U00Eqd?#YY!41gSO7NsS04h9|b)I3?zdLPCS(qnv++3aq0-k@CkmbI`}>og4oE zxR@(CMxkaZk8ZHfFreVRJLYGc8n9VbMN8m(PBnkBXoZ{zhmC6_kBMxCK@^Bj4EV!| z*1a_N60KGF!Gvj?mtrxO)jB)G?p00W#k`o`Sww^PoRN(|%6wxY6rJ?o+sa6EWGLDR zc6zK91qr@h5$E=CVu~vN03Xgs3F2~1tqf2?PL^$s;{p^Vz=9JcTk(!&Ada3tBkjPD zg9F=E9jK_zQvpyyvDDv2L8@}W3De>K0NfiLNWELWK9?Y^b+4P=y?>ckX*i|^HlmN@ z>iFa51h+K{_v?(Ag$k18y?2%{StX+pAMg8FHj@C4Yd?9;BD5PrB#qDf#ur!tQ^PF# zz{|Io7W7A-obJqxbK-qtew={3vNI9&`&gqfBF*6l8{wuCAf(Y6z+JOgq$;g;MiN^efos?ENy})N1%}HGOHBN&fq+>ng4?b~e7c@41k$DCF(?Uvvxf3Ww`Op2G>|<`0IdhI5GGc(^_uprgEU`F{N!aJ z&cOYQ;8}rhG?*|Bp?+c>oMyR%0m3%I{{S9v!t!w^PAl<%2@1YQJ^MM{LUsxyG0Erx z*0N!;tD5z$AD%L3BU1u2_uJzgHIRxsYtBPtkTh#iDc)Fof+iW? z7Rqns=f+GIHZ^N&pYsYCl7J_tOc0zZC8aO# zoL#(g(v~F=)5#@I)+Ot3M5jL{4%RUw?;}Tej-HKin`vj3C<=3!iE!c(UfK<-_Wfgo z6oqN$=8yLhC_q&q;Xb1j+^wb=>HEMiE2A!u>qpiXg8gOTr=N7^42IGYgtXn(wt2=F z+^lGbqfs*>{^Ai>#wtSMnect$K?8y_2E_G*lP2h7atp=|q(>S>$HT_MB4U&h+NA4! z_lAUO!)O*bIM*0bfT&9HIQLm1&1(kIc!Q6QaUmuRr&fyJ#ut^I^g#f{4SC3<=*b0i zWG4ejd^gm6$zB4&RXIN~z#frX6fJKx9N z6A5sWCub=5UkA1#3$bP`-MOu?0!(J#tiqj4ORK^eg;v8IArl_9eRu7~wKD1r9`>ZSzx*u9gz87kQmgF~v(N zO_68|>8Y9GF{jHagLC^BtT1R3H8@X=M3Q(f0+e%@!Wq^Pb`U06wb~ezFim1kVIh*V z2Sbb{c*sRTJxw4GAkYhZW8O*~k|1mdB=jy-0g+&m>Bm@?BPDYTLc7QiFVl=Pe*`6% zr|0^{UXchYeR*pqN}3WW*u>Wu2b_a5JL?fU6^VqB^$DKqC|D_hbPt;E1!xjN$B_JD z=aEf$+k9ju5$}YtDlIA+`N9H_Knzhx-2O0DljI+4=S#C&2dLMdGnV;mv8SIgi7`gT zUBQ38hb71a4ia}_J;d)1GDQZPgQ!UL&Om~X50Xc{R1! zK5T0i`vecS>zpshgz2hkC-auqF%d_h{xR8bszSd#W4n<75hFgFN(5+yDi@5=>RAb` z@BaWdii4(&-Ns}YNdkOjp<+SEcEOF2ERPUh01ycmJr|M7jbBSw)x+5|*BN`-$BD=s zPQ@HjBYrU8-sNi+@7OSu%1~A?wLYA9G6$yU%2Xw$P3zVZ?i#~vJe*B3CXr$SUi2c* zYI1VyRg0zP$Z?6r=^3Be`@%@61v11#Cj#|2FK4N_xUp=BvA~AkO6a3mVs)hZ zV%mH<-}HYN#TkkrMn~Mu@?=kXM=n}13iJ|MZaMEH3$sY@ta8WaCvDXUrhf^L zdP@l}oYTRH;bXtw&O{B8n?x8#vR1V_Us&H1Ctkx!UNJO$mF17K5 z!9lnO#q#}DEW(N?)1uv01lS-|)645N(XJ7{PDsX*x)}MI{fy&K#Xom~bd8CG{72D| zVuYYcvabdu5q@YP^;zo`QlSdY2;k(dCn~O$!17Mo{{UQaB<7E92I%MP*baJuNbb8P zQmGFgPI3F$;~|=FSrQvaobrraX;I>Ix8WnXw;6X*obnYNE^yneJ-wjtc;Yfv2Cmuj z{r)2-Lj|PR?ZJ%woo)umAviPe9J5u&1wP3C0L(tI{(vxmQ0+I68J4SWgqSOO$|NiV z$f8F)>%K6ew*n}Rw-3fj_F!2=wgkA%^@7?ZiJ0K(ILRs0B3Ov#s(j>mLK2!QX+Xg^ zCJ|Z2PU-& z)$oL{<12&9Zm^g4_gHyE$+A%&2QDK>)#pl~rz^6uZDwd1jx{qI$kmLPpC$Rlc_B)N zr#MeYe}5Q`LXpc;*PqLqSqt<&^3CvDV|%5H0O5*McMQ)b=gwA3iO^Fmzve~50>z~& z{?=%Y*(Nxc`T24}6)akw>f=}_o&x=6~AGh8_ty*H-37$D-^0zuDCNB0qJmWMXN%!-Oj`N=z^^9KJ zTdsUyHJFFl-iKPk2hNWnmJ$YQ%=e%;H&BR>6 zm>J`&Fc2h@N69ZQ@rPQ-3?o3!zqJk(SjYe=1yC!MdBt$23Y|m4&ieC})NoTuJo!kkU;|GmBEJl)(2Ev1yCmAXTyr4HIqqD zv*fAc9c!M0H6NMkc$|EMtIs^!rb!v4-c^yrF()w;5Muqj%J`fQ-bqx%PR^aL1I=I*3^8VLfr-rW#olelH|1L`oXwe));#54Hh$j!8wh~&Q2{2-noqB&MKc<<;Pc`Y!M{=eB;&PLZN3Bi!4ID zKYyH<3<|NRL9zI1TRz3!9B|^M!&0x!cwA){L4E zC<5^UwQF&8j&Ux|o9B%Y{t`Di6;1H<#srX(dS`eJC^AgbQ?>@GaP#@{zuTw8N4J%~ z>Nw~2GgihyR>gJm^M*i}L?_PdmBuE*C;{_v{Q1W>s$pG!?lTqhr;J4x#5%X$1EDZX zl{_=f@PwPqKzq_pTF62A zV3oj)d_Wf>P-q2Zt|DAn?@Ea{pQ-nP3e}AiVO@w;0Fidj{@PH6T zxrnKp0FzWHYNuL>z4*tpg?uj%?{T}!57~6g?WTV9S+JteQXddZ9B&YMBv=-8hXIa3 z-mph3@*Eow@jKz(OH?BRX^UJ{&#aR49@;}EZKnxwF`8CM8!9OeEt}%8N=!h%67%Nl zcYuEOgGFShS@DE6gAGFu0=efZx;f44CVDyq+bandq$VUgyc$-N`i*BO}%Pnkx zCD%B%SjEMyusBg1&RcOq0V0kMSqzVj*e@U30gO(RwKbHtC9V)ex6OILBy=7u$Ug#ad&OWg6=xSY4;3*h^f8c;*`HB9_{xoh$(g(5 zGI6!W)X4))0k@j1WU}`H6nyF4?+8S@!AODcuRbt>x4>0DILNG&LBS878^P-vh$&u0 zW3yd415`%kCs`0(r4l7KKvkYvoZBY!6)x46Wt%d% z*KR&!Oe8f2*A4_;Fb@+B<~?Sv8XrmlDBhkhxYKCC=7OU~zVa+0Nt>r2G~PuivsQ!A zgRa_D2r+ylyb~UAaoWNKPt!=0Mkk@94VlwXy>4*0pq^;hn}~cXQo}fFM;OGTWbtP3 z$k3Ft*@%c@Z-=fLMb=FxdSJ=p@W~WX`DTmb0mc4AZYL4q z14g;6PnTJ#)m!<#@MB!Dr?9PDSvdv1W1DBvLGKW&VIpC5snPN82@p#J)AuJQi{3W{ z;^3Fp$$RsFKM~lh*bTzew>dQ*`l?YpP5J6^cOdS}b?`cPMx)-o#8ZD{ijg#6-l+T)K5+#U*LQul)HH?WFtz@@QwgI7l_8I{* zc&ssCMdj_Cd&$ZZ;sl*uZ)*Q`QAQ!9MjdCLF`rqB7jyns@OyZ8S9 z88l@{@SFFPYK62^e({KDr?q-~W{JrKmHz;87@{joWqOeXha7o8`wqx^Ibn*9%gv-qT0L|goV8aXF#%ugu zb)B|<=1F6M)Hl!^vq(#25nX zNAZMfQ<6{@$rriD6yTk5r&8C1o^US0yfindDk&d{Y`V z93NRQgpy6~PplxA9Sz4*?-k8}X5uCo2Zu3+$dj#)-f(UfgI6ERh*89fC@nYq-kBkhsy(w3?mEfFO0%u6G{{TSV z07;x-V9;$B>8CWHI)xDecItj{=maR0!=cBqIaMm=;D^dYg~A+-asw2))kcG)tZW%$ zQ&Usy-kLK=&XBpqMNi7&<|t>V;}!NA-Cz??6g|jJ7sn1v>R{R*J%DuLCz17Oi)AMp zo2)IZgj10VH2LR(ahZ#~6g>p?X&4hsjM68uV^ZTABDSPU1=_T%NlmESw=&)cgyVl- zJ!QQyq|$ss?#xa+!HFRVBHt#oLN@Q15~FM-wK1iWoK1~dLvKPCmQ4K;9D~XoCb+`j z_7qJm6(mba$5f{nehw0Gm>O3GObSV8@%!Kr5TDjL`o}So1j&Ti=lA~rag_QV{&DH! zXT$gL@ruckM5UgvDY#7u!Lxwbjn;Y4CXfBf`2%je{`G|5o0y~I6?)?jgmS#k(vR_+ z3?#uL7CJU2ck3gxplbUS*PqT4V3CsbCcml9ieOqErdA+l!cc|LX6N9$i11n`~BU-16&8wrv@xa%jR8KU-YREdOyrww#uT2&VbrDq5#`#e?K3_z8}$+Qg$jg8M2_8#NxI2_M!K*(!?(@k zyY+z@VrV6C@r!S=)Zkx4bEh|t#8Si%?l>`AG2|Q~N^y+?AiTTDKMSG&Y3N~}ov2^Lj0N+8{fhS8mVoYL77*)sIWN|~i*&@SVSV4iPXB0a@-+nQc z>F!}qC;8?vkXJb?06xpN{xCHFN0baL zlnI)d0(L2*H(5K-TMd|(M2q9bB296NM1Pgo>8o;)I3#2s5u;ni0(jKN#PRvX8fy4r z#Gp_?-a$5lT*K#oCMxQX(X@E+-Z=^(AugcwVyX!OAHDOegsk=)LD`+XYdMqxn!}c@ z&d;3KsS$8bDV!x8)L^G>N`gkJtrY4!<;}V~KaY6&fk+_yUrZH14OJgs`;tTBAM%Ui zEHA;?QzlA2nI4I@Eu3#9RI^(OKdiBE+?Si{ z{mLMK9*XgehNEZ>{{UlKZ>%}E?JYQn>2|^10F=|V3DXJnCo_Udo+glNg>?71N5gTuGs{iuH=z1=tb8 zUoUye>ebAw2L+7QO9HxL95YO|09#GdUU!7qnIw{>MMo9A3ah)m*bl^D3B5Du{!!;3 zEBA$Q1X>eip^Nh(ti+#6?o5Z=P;$2Q7vS@XN2tXm>e@QXfAYxJo==|Y0CadF& zmzx?uhfD|JNKU0stdq+m059lpp9e% zBm&Slez*9^>XuC$kxZm4$ATu8)oI8pbXoN&>6-5B6I|&K+sm_dyW8&#U6TE~= zQ)oqkzI-q)BBjig@00z()*k3IT-;TENsQI37=-yvsHM1zzJ@z@~9dv7R1$%=d9j`N)8cd6nyoVDpq1AU7e$^v0WBiGWy&Y)zfi;4}NW zDi>lU{Fp`SJ8E%6Omxlwf$8D*kva{uN?4c|ga~vT4RHJ?1-t?p_X3@7{BnO$rysY9 z(kILN#h7;tu~vqQXS`H#9dVG%DdF4n=Pb4gEzU_1$X0A)6vnrJl0!N14PhnXSgkdA zOkhA!sKhtaX6o->jG1;<(Ruvk4`Kl8A426j&B8imO+iyg#z(UJ0k-Rk?1p0g(^MbsY2Yg507>T`uVw13E(B4kIaRdjT!F$tz(@~?r3bQ+BK~y&x{0728 z)jr(Ak_p7j=}e@F>x!he+!gGxBSo&A4n;H?SO-pHm!o+Zg;y3Y3G(j>bRqH8a`8u5 z4t_V4zGevZ=Nw|eCIGptFW*#{9NpHDXsh>v9KP?yA|5ff<>wY0D022p&tc;#h_N3N zM-Y? zY0&%0n$S?Lv^smfazcG++v)q`IIDFTet|mc6s0bJhfSUjNp6UFfFKx?6?ze5ZzzlD zl1P?WwDIQy#P~*nXTKkhtYU88+83&>k9w8gm2#CnUIDlKC*lZ}Z z!iQTj+B*IZSp$S6PCE69rpH5X&MmwuZ^&O&<0H(p{cb(Jm`ypLnbeF*f-VO$SYct~ zpOe&QOKRdg79Eet`*;;Gtu9Vl{(hq;h`X=$WX7L?kMDR3Jg6AhN>C4>^xWNL&X%(e z^nZ9sijx!h{5hzU+d%w&#xg~-J4cLg2nwcsI8rX9AZ=^$!l5=1J_q9+mm>yLOQVCw z{mC+^hi}Gg&=%5n)(yPvsWD3`>_l;~vWFmeXvHNY{AGzC5`PmT@Emh?%xT(y_lL$= z2y@U8<>sRfNO$^psc>V}z?lppcy2h}Pl;*exDb&-7g20L6C@yTEZj^(98L%GhY_|_ z`!_mp(jIO@QfrF(<0NA2peKFJ9b`VJn9hzP^Od$1>;j*e`pMbR;YbU$Jzu;S>p6slMl*AJo zJ;5O9ikwsqsX)!VH0w!*&Kn^>8F#cm4kW+;LDgaK_=^k*Tw*BQ+`?-c;nyaC>L^o0K#GlEMUtdL0icA@Q(USl>#Qq8qBk!Sy2O~l%nHZ8 z8tch}K`;*`Yx4g9m>#e}XLj_xBTeKI*MtP?fT@o!7HvvZJBEn7(+-FY^5Dm86oy}BII?bh;{1}Nf)V9>Kg00xTfHV!x7s53p^H9#ws0Hwdge?B)&J^TclIWzLZ>>^i}$=Taf5e*XZAVS#R) zjjy+O`%f5y&}mpswXBK`!FV49@u{Y9kGuuBg#ghzvRcOaA$oQplZzjD)N>_{9yHKJijf8teC#z}yuWu)*X7SN`F*RH44o z4g`2hj994X3OgD+M9lo)QDrF{3iZakCNjEYE#jZI&t??!MY$vb+t;HEX6-Q1k4Rv} zF<2oT#3O1?L61U6UFde0G|noPoET}4AeQJ0rx;Q!gn=O+IxBO4quz?q_|22o)Plz0i@?%#P%NS=yZ-=~X#>ZTQCuKz<1b_s zSY{>+^mHeCh$#9TBV(6l;SLO>cmd4E+~Gi}D;7GQJ>;)A@NpnJCFOj_pAPbS z3PK4H0uvzX-qa)FmAddFy*v`Ln4$n+N>S&fP4d>8Ge*$~Asg2Dj7Pw#;2H*#sQgp> zwTUQ>i+PtriNA96@427vE)_)_Pa>DOCl8j=ZjEJVL~M zF^^76@QDcVO^iV-o%LH&|HH<&vBBt#96d&NcWp3WbR#9wjdY4Sy1NnS25A9t;^+{O z5)l*ViD~!8Un>1Ou z4Pr8CB)gW(F}P!p5eH&=sp^6**06}PYk)WZdx(fWP}2DEZ!)2>@hSllJ6c>Ev!PR4 z^3cYf*64Zgf;2DX68!2yP-_{wku|GL$FiK%A@2|G_zEbT7bHg|k(JH%ygvL7KBr?r+Mv4s)789XOX!$JtmHS0sv8CaUfwQtq z!#tZTux=#Kp`94|^e3^-mo!A({yOlc7lffB)m=Sx%l0@xbE#O~Y!uueOx6{jIX>Iy zHLJo<;SYifymFAf31ydGi_)9M)j1;H(A=qhmoR7Sh%+>d`uS&?%rGMhw-BVNxckjG zT@bGS#Oo}lG^o}RMNY+&qUvVJYT6;b4@FDUs1ZJ^I}j|VVVgJThcC8zcG}@_soS(_ zU{W=sJz+5|1eOzIH1yX+7(z z|KY)+r#)k1=4(NnWofkhcCyViL7~wmUzkBxZJPr`%z`-vr8%m1!kJxvj$z;04h8BA z3xYiPV%)E)-5%$eRj{&>MaK2K`^n^zC?6-2d8BumE>0*q?4jsM#slwLGmy>m&|85@82HJ`~!LVJ6ovUI!kiAm{79Eph7_j z2eQtLGQl_#@ze6DI+^S~eH}z1G=58D-DGLwo<-ijeOCK6C@q@eBn0mzWI#Ibs$=9; zE_X!uqb#cUS@MOFxDPfxO>03a)u8c)oA7gL0ufaF)Uj0cTC!e^j5JxSe851_aWQpw z&?=?R$h2sD8`WaRX*%S3#84Hqp$(T;XgT7Ye+-I|<#xp7eOF`Vo=+dg8|CBx-ao^6z%FXhZE)`Ks)feL8W8s7B{S_~lDal29S^|AqOxtWOq7)Y(HBQA4>1={_+CPOkXolV0bn-Sd$kpl-A{U4~g`A89e2>*X2xk+f(Kad-qEr)t zt60~+*74&~r*^=+-k2KZ&MibPM^5GaFn7RihA^HmKYzb9OvU{y!0M5{84_IzF<+PR z>Jl4nxk|s2N|$OUwRf>ZG2iDVZhHd`NMFz(RgWwr9Su$E@4mbpp?XB&oHJd zK2apTLv3gF3mYB!IOgXl>0tHda`(u6XL*a){NL8Oj`%+<4>CFZxRVmke?#d|TCF{5 zH!3p@^Xm^%!2Y0WI-4z+or+3b$-vW&(Yd&40iT4ITND6_ct!kq;ahzyO07bW#DO#xA0h(TIS@O0Xn{Zu_l2~P`b?T zzcjfG3?&Q&z5<`cxJ@%{1Wiy!=Myj{<$UYP*k6Sr6;WH}x8 zi{f=zs7GZ1y$d(KMUt)2UwjIm#I-L1nWpSoJ}7y<7wi!G@U3XL;rl@v-U6XYzqZ;J zO+GTCjt6K{%UilM=oZT)5`4jX1g^lL8xC_3I3v9^xM0nYY{9&4i1dwiwtUF$?$0N5 zNKsrG?854i(k+)MCadjX)K`48MDsBSbZ2_pQk0d_?Aq-stSV8|DTeC@%9Qm9zlM=9 zi?0vaJc;X&BFGNWK_CKV#-xe>fapZ7E5IpwuCQZ z_UE=`JBCpewWQIU?h2470eYX62A##1mHRNWnruRI;Ab6F`F>V6$s6rxmtpk%(#WJj zr@t%!&eGh^q&}Xy@QjJ^HuANd$Gi&Vatr)}%6l~Qyr#m?1leHRFZoR>wX#o*e9hZS zR&pSU6x6QuStjF@YvCm5uDFBZ-b+}?5x=-+QiY?{0`o#7AgGHVk zG=PZ@OAC|m}jkoxZMF+e3uo$puC8jYXu zv$7Ex2eN+(f4A>acQXh*h#J0CbxX5>WBPm_a824pR^6v8ieVyuMJ~xm~J0jL=&8g722nw612@<8LPHPS#VYF!$p6m&|!E zN7#FVq3v?8Z3scu@9TE;5ps4YW`jzPn?#F5j~e~m${PC*?NnDN|7k{H)4>fcp5ui6 z%q;>JS1E@eDKLxH6KW@X4}W^RT2&%au+yi?!Reh3oykY<-s1lAcanvsehSEv${?qD zksxGtKyzH+U{e^m<>Z{n7v7xLHWp}V(7BrGtZksZt!OXPR3(0WPf1XVv~K)$r@^b0 zGn3wd-P9r^N_9x@{9svUxN-JdeLMnKwi5eEK`*j22}+Kv8GHG-#OUy=y-Cr+$=$Og z4tIotSJF@|foJHVyUYk^QXari$RX6j7!p(v?_X|=N<#%?uT6&}pmOQ%QH>b;@+TUl z{(J271b#}CnDvE$9wQqj+*DEF*{f{hp!CT(Zjq)!aUe9;nCF88ICVXe>ei=|J-FU z?1y-Z^{o?pY2TiGx>3S~njZkR*_tbPpHC+fx!IMBK5?>*3i);{8*r7EA=8J!&)6ij zH!>fy3wDABqoPx1VsH+8Vul~fc^)mF3iI89KcC7uElVqjOgSLHZ3ivlM7i$EC{{@a zC*;T+20Vbw&0PIaqW!qS!|UWM)JC{-Fwb4Woo7$8EkrxQ3P89Fqt>^n#8DGXKqKkn z7g*CT)|WElvNqC7yqfeo`MuElU1qsNA%MR1<~w!71~aLcN?-HF_pPpcr-caktG#yr z9J;vhMNUHm!?)mf45ROhKfh6#0oSsT)QvEu_F2cr6zI`Ad7-Ke@3hQ2)PzmXbpdq( zL2}WDPe{y2L}$9C=AiMe%<-M?3HkKQTW-na)$`1s=p>anDjcMZjrc6Qdw*5tycF!C zF~wYSX`u}soHxEp?t^rH2+#DJ`l!+vhmm!Uq6+wEsao!$S!Tz7}J!3 ze=kYJOM7GCfUxvke;u&mO-NJ?8L@d1KptURs_i35^XwhJ8S5iDt(Nvo>&`szBVyGn z!{7*;0_k9n0$nThlPFShI{UJ>;YQt2Q^vM^Tjt4eA4TewHJ(!NEoE(Bc6l~bw&g3;a~h3`l#f{ic8<`f0NN}geIqd zFDIH$^ArbqJ((o|iD$iXI>t4R51a19p(J7|y0xPADEl`oWz`a+mkV-CyBWy0u3u zOV34%;G(#IlMAcA?koL4#Wn>-CtXt6bkFeUm%ykr6gZcD{VLr+SrT7*TemdyNpJC! zfM#P^VDsD7XXdOQzut%g8x}ehAF_CEY)_q9KAc5#1EZg+I6%Ao*<+1^0mVqrO6cKt z__}@1I|oa}9b+QeHkHo)k2DE~ouz?`OIVm(oDC$p?|b@(f3GuQr6w2Rye}g%n)R$M zPIy3Z(cRp*H}Kc&8^tHLO@{^)ew8PFbbFhlpFU)@4)tY-mLpSM$eidps;SWI*MR&P z^I8@=<9-OX8&jU_4U+!%`1c8)gC2_B5ht2X<;62v6rSwgwzgTg75X0YrY>7a-u@_2 z)kN){v}F8S?aOP8*@E{xsM?MUlU{Hqxby|Jvaz8UM-c7)Wnf0L>gF|^#X!*eR*X@D zG9kgH+B*-I>3YXo7Mz5FEMp}idsiQHMK7!~339AlaGiwVJ0}2g&$bcXdEvDD{`(Wk zvaRIrpImW%_crq^NHn^c=U2Qc{^)}|6?p#`J>sHT;Nj`WvBN&itktMTpZZKf9k<`?xX9SP{cNFBwJz=E` zx0NEjwu-j)$2*C1f5$;nbjv=nQEVPY{ETxy!ab@HNn4b+ z{kD-Gn%?$n1Bw3oW(IzX(IOAJ>rH>TK6HGD5Hpv@tlFL_Nj#J=lMHF^X63JmL(%V; zPOR*?RhQO3_`)Bf zF*=+*^3;k?svjhso@k3$7B7Z}#W5y);m3z^L58p)6Xoe-hK4WuNPs4J6y{-umiMd+ z>ocZfb#YN92<=?d1YOBkfPPx)WtEMTU8zMmJYhiVk1*{LY7VDqbmF zb1zz&V9cA=@4oyjGK$4HTW6&uG6 zY4~f=->p7FJ8qtzkN1+Q`Ip!?7QVxlIiCOBm3yW$FSJS18pZR$0?&W+=M`^c3RyDy zj>>}So8uiP5{mQ=-Vw*(aV`CaPtKIQ79EI=g)i(K4J}Y}sMh8JmCV082|u^pT{xf3 z*ixDxaVTx0zz=5?lLDt z3!l@xdZ}DY&{HfVp?-UIRjieVMp?cBM_o%sA*l1zth9;-h_K#ao&dU&=qX)aXABL1 zaQF113%PoZ8TF8KtYNUSScxjz_JfT-}SPC8NGyKF7@OIJ|*@Ik$C(7bho_!j8${?9R27Dh7V8QlzVl5tsQJe&injTVX^qEGGgk#@kX_$bDJpCUW4h8xfW7le z^{#{qvb*N%kME6?J82-{{Ccjo%N@^W!Q9{qH_;5!5QS=R+(Y%QoKoYJ+K*a!6fcUe zd#uDsG0ZfolMfY?RG1f5wW&^ImN{82--9J&rK@&1=wQ@ODQpFtMF(FZgdKCKYXfI>wPz<3 z9C%pAkV&z0-4pa6qTsK{O_B9TOSOa&z5Q=NPQK4dyiZ5@_Gywv%71;xF9U(88z6Nb zeff-Ym8A~}R?l}VtJL%@kF2&ciX3ote-<+ze$xsnYT2svH zmyv00VmqQv8s~qv-x%e8Q=*$(Ve}ZDUZSu9T!s)b9Ui%Sq!(gz-Sgzl!{zaGGp9sV z7C=DT9>nfDF;a@JnxD3GJ%4}nqhOqB3p-5qraf5F$uotGE4k=yg7FKw3X$x#q`y^* zIT}0_EW>+f!BBzbJ(l;PK{$_qn^l0XH+l0HtO9-gEA_yy^+fDYOV5JXhd7KlV4KUM;Dr!S;9a%|on_Nzuqx?vc#7?PySR1_fHzMW*L z4m2lE_@s1XN;>F&$Luo@E&X(rIvzA_h5k(@Fpw5gnP!cUdeEhNHVj1%;Z>+#AcC&t zd2-wT9NBItmT-`OJhlnHozE!h*75TuE{vmaUX_N@U19MxvJK{!MaOA zu|kZpK9b5{w3)+Pe^FbhwtSz!anWo7Bgb_)_?FwFj}8_0qi1IDfI0mShh(LaWb@0H zvO+Ive-2v|=B7lR?)<=O%hj21xARlIY`wLkcBQ0*`&{>&I^wE$M*4s{M|H4GCF#yV z1v~|YxXGN~Ts`jS1dc0necA*q@zd6-&Rk3X{`n%_W=G#_J2y!emR+N|ERmc8NzmUA ze(q*sdu!UZ3_S4ry7^p)+;JdIy+tlRgw#y@cr|4hjDrNEe$T?pFN^SR*c#37TqpmS&{gK^T6vpi?qC1Dk7hK8qb;G(HkelM-%zv&G+iEhXdcV7o z%PnMYC@NgUGKJ3%!J-HdQp_AP2&gUz$}U7wllo^jt2+hV!|H|8WFzl(JLHl+ep2y- z-F!<0Axh6^U7Q&jXc3lHu!;5fHV<{CCl3>NtUE z3UmM7*v$8`!5S2ld+*bV_V}BEyXB|6j(Q>rqha}CsCv&Ebvb65%!E{RY|9}csl@@z z0?0@3?hI?C%Bd6FbYgK_%(cHK@+XK`4*FyIZ93AS)O+o}D#=C?zpgZL>Kz5l>7J%? zJe3MMBsi0+lCvm2tA92?WDiW8whiK%&~mP1Rju>>B{{M=M0FSWQwJ2;DXcrx4KMl~ zSEip}&m5`$E>$vV^39xzf00h$_3H6p$d*S`%7&L=F^6Af`$weYH_5f)ff(jruT+#M zM6^wQDxsL%NkQ)7djdLZ<_Hp9(o$jNgH_(Q9=}jLL?>OdEZ{Pp>=_*N%$_AvYt$X?-0a9J7 z`0R1m5&01qXD#-z#G5Mp^y;58>Ty9=FAp_bR7@(vQJT&)Cky!O9SdmqH7Vg`hI_9( z*JuX12j-(`Q<<&xtlM-1YykdcI&|8eSRjNd_lq1$iUzZ6a9{ZrlIGohi3p}PN{>&P zA+UrPNZO@uH-9<99n-WUG?-q8lCm%o{5*!Z@D;zBj@ZmG_;sC=x_K zECJ&JX{BS>z26&r3!Us}mWl>+Cq!j)%~2NPp#9u0o}nhFJM!{K{6bYHQK~yrSn6~aCro23;WnG3O$@pt_}93l!-3GQxT_7_I91bpR?54VO3L-6 z3(hw#`=$U+l*Qa4$~CFmwEDfUSNMw9EIowoOUM-BHuim*#(Gc*DZMm<35SUigr_Io z%j+;>Yul_}|H(zxTpV+JIZ(xL_W1~{(z}Ux?GtB0jfgO3?{&;jP~n$5Afn|_6uD^y zQqqbCocKe)hfU7$jJ;S{78@6b`?#uID`#PY_}%_@gZci7KCwnv2=7i(^q_NV!w*}t zYLpu@L4Cx$e|LI*f#^JQze<o#=N-z(-rKLkT->cm4nX_ws_CaoE8v3GUaO0pL z{bSTN;3!=(#MmcTd9*oB$JX-gu`*HKftNouWb7(Ft`yaW3THZ6g7)wHLKZ$W?gnr1 zH+q|V+I|ri3pJ=^&5Lm*g^m4t7A&w|VSmfDcmhy4dnrU$0*27~0ep35-jY=~AYQtV z{H4~y2X!KF@qs%i@lIiKdeX!Y-Szhok`Cd$J|g2T#iX5_6pH@{@J*u>#ogU)p3kuk zi6J$R=~`J?Cy0@(sE_8Ep=BM=_0zP5Vp?9UnvY`m?_Z>ZSt+65n4@jdoWf>h=l3ae z5tEx;YybWbZFbgcn|5#d^FgkLQYKf|`^Dy1S)G)&+!Qj8SRXfcSi1;|0a<} z6pnZ#*15-{pun>6ZxCs1Uo<%8`3c6h%}Svp@CpftTvSy54{+0kr+;qLKe>BG`$CJE z?BbQFp3szW+jey!)!p(=g^3j1t0cH~M^VgP0pO8J#>QAwNO{k0QYMlZh6v!h$PKCi zP(^VG6iZNeM;_DX)wOLKR5QAj{BrJ{pAp(Z(zSmje*oXWqkLg~#r?cly zC~lr%h=alj-96~cwR;av0W{$Dhe~A7F7Gh#Lq%sSwHI26yu^NmLtqjEhEXi3JOGk8 zh1jPY;WthcsuF>^F~-GtaxAj-UpNXvkM{@ZV_C_u<`Hw;JqA>UjWz|TZMnFPNGIqZ zrBW2zv$I?@t78Ni>kk6y>pA`Pe?C%dV4hIYt$Q=~>X^Hr_|`X-h-rrE*9px}KTEI# z+_hid`7)NSOs$gjUGS?6o9qZbB*;7vSF9R_hmu>U#JH-MyC*DVq#E@tyFGdmU^ICZ z_Y9G9n;<++S4Hha`j;m%E{$h{>zgtrROXrL`B^qG2PO0nFqsKH1dqk+#mc%q%AU|e zJ88@OnYdR)?TFSkQW_xH%S=uhdim?WH2@R{1ORS8+D8jZ1Y*3);;A5kHL+6VKfvl> zmP79CPv>rGre5UYZ{GJFb2Yi${eUKlJ{1I{|59aZB=49hR(2~md)xOPz{Y3wvzzj{=ZgMBL=vKS{DWt|GyXb865Q%aQbzGXM(s-Zma@s%=X zLOVN^#2nUdF0I;TJELI17VX}@?NSLQK@3zo^zW;Z>pS~ z#w4+Z-#Ax_x~BPkk&VdUNsnB8G7wjAg^O|#PL%g&A84d0kf9QtIzP9@U3`}mvn9(#Lx#I;xe z9Iba>z1p_$SDd>gPHL>WsuMt(a4x>!9{%CoB!UOvcqsRX`RyTp)CVeQy>CFGXGRMMf%^ zWO+!e?xqM@2xiKt`;JLEwOXCUuKyV3pq3)1Yn*HfF|#q!+j^MJN03qTuniwH`x57| zB<3BdbK3i1x&Isa-5P;s|DPLcn{0Q@lE&D}t9a{&TC|Mvrga|5I> zX3jyexz%06rwf~Bu>ZejfEqBGPnQi#Dv$p?CTJ8(0~t>A)D}JI+cRgF;klV}&)35Y zGtF(5>h8T%JfvcFeaic+!}0r|eki2N9Zco4v7u3i9BsGx^TD5h=-|{mH!rwXAgq}8 zF?JcOEttfW#KUMaVN#TC{EVvTP!95g zcMe1Am}J?-0%Of|&vIW* z*4q~yr$9}|$kF%~R?n&8 z3eRFTJDG$)=gprkFq<7b3_LyQX#9!kR<)x?OA3S{wyn-0Dx-kgYRS@DfI0WP4|$ns zBgU^*{!E#7tW_HW)b*Zgv_{Gycp!;|n=ma#IIHy37w$Bgph7Os8si(5&c)?8uY9Y)M)xZ(b?p|AZ(5IgZIHPpEPg z;3OMRlR5UH>RJ~Ifoo%w;B=z-g1+tvov2S|Gcap2B4wVJCK#W32!&h5bXm(`50wUJp<9<)=P~ zqcjgG!GV|XM=ED|di4(bR_#g#Y-q)sI4OSKqKl_rbKP3F7EvDu{-d|B2}jjQnK`{c zQmNiwUM*vw5+@vaqIMA&afQ=1ho^`oR0gjhfUc9H#&0UIiE@z@Tc6BO>rV-V*9gO? zrE@iPi>k`>qd5SmJ|S&W3d`Oqj1siNKJ^G6HF62K`SV+zqNxIeW|2lo#Q_TODrD~h zD1qOeqB)%U7P)^EQ~MxAH5R}8825F}E4}s1<`nRrC#Ks!pFEr$jLgyL)fBZWssjvs z{0(sCyZ=*tfNBfLu^?)2_H)Amwqi~UO^Bc#P;EIN4LFA$>>eY_@4giuNJJk4prtNX z&Ilf7{jA@qGnoj%(3K*q4ku>(q1y8@5*pH;TkRYs_H}**61KRk?XJql@lKR|X3i6H zt^86S0c2yLEVG92s;wpu4uzugcVpKl@OqCVyeHL>AKZq_OvMpl^?up$l}2tdX&J%i65qU1}f= z{x@o+N3lC&Mi_{wao}xq8eFfLLKTE*lCRa${hCLS+}6x29sBZ>+c3!NV%>K91ljbI z+N+j=6R;Lq5?uoW$K@4=h6K_yxG;!`rp%j>&DNS*Td(h2 zL}m%ZrlC23k3fO!CU6erl0oTY%4i5M?N;-zT8*fnbTp`@Y$VbV-gp@2bCPM>Iz@Kh zYJP@1NwQYRS;pKPBYn^$yg$(#o3OCOAmd}~97_Zs^b=vY9wNwbdjgE~<)ue!@>b)u zVg4uu&9ji-1!419IR_2{18drJB4^)!ND1Qu0{@JR{K$R^Mp2&zGSaM5ko|!1GQe>W z5V0HP3N2`f1SJ(yZ$3U}RvK{TAA^cS%Nyj0G$ax(UJjqLA)|S1#cXPJo`6v}HKA4J zI1k>PCJm=CDr5sI1)`QvjS+O%&AyhWmIqK`HmD2RkDq?=Qnnu3l~dBn<+eky_l%n8 zzQ77Ln|D)0)x?bPg27Cel#+tYRpfxK29{Qb=zK%dI7aBad+NY8)SbP(A~InhHLdGb{HH#V;BAe_Zx&Gy3XH`AvN@`$g`8$^%H||WI4JOh+r=C}RfYx;%|}duo9<37 zYoUdj7^R^uFn2P()%|YU{_{FPSJn3#>-OaKeQC&DQRfUxA2qRFxW@5J(0i+grV z21l&UoGs=}qJm@m>}7dLL5V3$V7gFI5n&-5fd|&oQ;&^ic8)gYksWO-?xK0bc}daf z(X`D_`%brjZac*^EmmIFf8794==4Y;{hrL50nBY8bda6QqRWPSCrId>{N3DfQ4dLB zllq42j36}<7p7Ljfy)#86%B==3JmQk;aK!t>m|2}&K9?`ve?=Ik?efx^5-T)0=w~{ zE5Lctbo$!MEI+!rX%p2T{nVjQ(9S!1oKUdhZf*)7L2LoHy5GUjXH6;3IZmDV%uj{R z!eqYgw-4Q(wQ!PMi1+?pkpRg#runzQBe=0C)?%FZxPu&wQd0_J6t8NRi%n;ZZ4ed( z+9@jNLy~pDUPxp`a@8O;2tPQOpGCS`HfuzWHu6H8LdN8UeG-ZD& ziQI9V6_;o3y?EA_@sYu%N-&Od2DR?HXqbi$mwE8Yac~OsuFqn7(P)JC0T#5(48TT` zjwS5?*f8<$d0sQo3%3FAHcz4wP+u9KM;Ji7{X|w?SHK~I5wFP{jagnjR+|D8-ZhS- z9=aS;7Rq2F&@p>B%#Wi@X-2zS8%Q018Qo0+5RL(@F>f@OhytvT?Z+0bzifKZs2-$z zU_#`o3)BUVrC7`fUts7)+d;?5=ppT>ztbJHs+(*o~N&ZiFxNbF1_qrJ32iaC^q1 zPUvcDLK*5uu#Q{>htnVj6{}35;Fklgc`)lFh=K*Z@TwUg>);-*I0AW9JzVAq04zmr z0-$M<$SMgaGMs@<2YGHguHWlAgqx-{J#ZJzbJW`9Bb6w)IXyt}NXPPal6L=^L2kzm z?dOq<{>W}XR-o&s!>%Y7JH3R84v@D2xYTj}1cbdFzJ_i^6>{F9tc?+~URKn}izfn- zjin=luu~e4mzz4T6_O(wKs&MiPG^{nW&X$n7`jSQjcP~IE0%wH6ZT4yU5j(oqSQ{uv%gUzGgs5-@{gmh2 zOhcA5-0#SWFEJJ*(TXJNNB)MPWW?D=vrO(?Vs`x5TgtmG31d%qR~{r2lz&di>zR{S z#q}A}=4!2_Hk~AoHPMcH=`iJdu_3;7s{txwDZngL-rPX?*c}cIoOWI;`4`Y%Cye#` z0465ESO~Lqe^cV7R<89FZWZV&lb@5cD{p$xAo6F}qWhMa#4W)WklmZM9T%GCZJY%j zGJMJ%PTga~JwZCn8LydD?u=$va10%x>)e5@6FDDvxsBjEMWo~7y02|$X)w`GRsekJ z@r=t1-pPUR`u4U$T}Q21F8* zs2ltN&fY=E36_$6-x8Y2u+7qROcq#ORmTj<^ow^%dkn#XvS@4uvoXgYMbkS<)qsh> zD(n+;3D@uSczE`2#hj}+jXjLh4r=zMKxtBc5B8)c?m2};6>A*=k7J`O6V=x5s9L(M zd`OYtk`JZ1i!$tl#Cd$6BGELDty=YD6iL*sCXDCgmY*-~`&W6VTK;uJSaAlwK`A9= ziKVz?9yn3PC!kU|I;g-)vMsEZ7SKeI6eo&w-}_){PO14mTw{0`{C-*kUA+)d>FgPrJ|6+j#{)c3uKV(!)O=5FYB62F>$d` zwx@tRm1xoAD#^=8=_yVuqZ6mN_S?j&+pOp1wHZU~VCHtRYEbO*PFZ_hR zph^~r&I5M+3Ebcwz>ZPh4Agqh2S25z`Tkt_SLFqf_`1-?_(Q6iqU|ttni(yyc{YBS zWkn9Wt?+V|FuS(vz*wO6Pq`6X;Oqp@E+6Nwo#nirVVWxnPgvwX6?I}QOSJ`KKqoA* zjh22qTrEPMLjA}et?OiO>~*K;>piYt^h-%_>*>HNrwFvo(lEEQ)h zg`a($$^QdzL|@G?;P}0WM|X#U(#37D7eLdu;%E6ZxtRP~dd=`?fn z1hwzN1zb|a{h!jYU5p%_soXBPt7lE2kmI_&aym1;VA9jFKOy{IB zVD!cEQs|C6h- zDb*4Bx0ae|xdeDYD+p30gr&Wth-e3a_E4!zjwIBDOek;F$u49c`r9hMtlk#1+~xHx z>5RuWjO!xLvmK3``nbHWhp~qDt<*(fc5N_t=S~W%(7Xnf#<~pQGtrnSuh%>(94K@E zEG}^p%1*WQ)UN;mjggRQb}h@=9>|z2hwaf$h*uAHnfuY#d%_FRcA(OL+Jb|_XYaKb z*{W@fSe)*jGZn?32eCU72MqM9Hv0%7JKRV(+Wl73F@H7IhU$Dk?2${>z3L#4%6PkW ziDROAs^~1W7Rh`JAaosvOC+|L+G?tgQ-ilriO`zlf2Ox|LQl-+U=rQA^zRf|)N1KO z@1W+$A_xghZ&XZvq-!5|yA({!SIIkx%zM$V z%kMjJaVP30Fj#2*2{@oEf>1ql7FC8~g#6C6I>0#i#Wp(7Z?!t5#ln1qyVVVAA$0 zl<=k?Zu}U!4PO1(^~uYo8lwzim91n>{ys176dt|Ff4T2L5jt+7`^BU@4CqDY#9hRz z(mYP$-Ts0Bm8Sw|$Wc(9iA((`z}xplH1Cf8!3Y#+{-{@~O@f17vfA@R4w#XlP{Uia zXyRZ=#g^wMW8SG+OexQ(RVW>k0>j_}a-Y4HiVrOplYCDFJY7(w6K1C*UazSHeip3W zN*|LH1NaDNX9y185z1KTJ|e}m3%6GV;e(dBVGuyBucs@GC7;%?FgB9Y80SSFnz5KG zHL8V=Su056)^u3-56}pF!7)QUii%}6+Z((OyWEi_l;i&cs322Kr@~c)VGlcHzdo@F zuVP?F>ea4V^G0-4$F=rZdk!VV(5f>h{$fQh#)wv32PK#-%IG+a*)vDkL#LL)uOx4In!9Rjo z9_WO8tg)q|_BTxx^5BqTx7KiaWWHzzLsklFv*T$qGrqLGmVQ0 zL-2zD23sT=`fx9d5Je@N_h#klZ*YRdPbrO);`)#HhwgmWf!r-ZAP-8`fXW!c#;Of> z@0gqAow&AT(@_^yGuG+mhQkqO)6_c|p0KOWGdCJ5b{aCDl%KaH{S3gCUIeg^Z|86< z+!t(2_6@v*#+#XC;pLm^kgP>au!_9Snxa}^JhvFMiW8CmeanNzwQ*}I$Va4fcrQ~! z4}ydlFh|s;JW`E`0`A=|NzhNX%tPKYO07b*tD}A#K%KbZklIMvSS)X2Sit+w z<)|<5Qfdprx5!43NeGQ^?g~>4y zjK?Be?;ZrtjUSdlgRD5ST~lM4E1LkBkL%jDlzu@LACr^N-5bsmUm`Lg%y1+!v1`Ro zY$gQmw4O#eQl@(GZ3uQ?0t9{UIfI19sSYS^a?|x#N$Ek+1ZFde*XKQ~#VkZ-?CoR(eOVvR%Xw0S- zgTw)0--Ox$a6xxBIv8CVqCfRvtlj+WlhNwYOotP{O~O*NFT$4QeOmHgm8~t|t|Z#4 zI32SsXWFYFr407D6}jsh^9Qu9&_LzJt;YQKyR8c2aQYfG#vOxeP5UXsC(yu^CgO_& zHsB%E_RP!-&iV}=ph4hQmSjw!#1Ar3RX=M7{uvo!{LnAnMjh8oNj}H|)SOqeR z{KSyN7p)K(!4O3smv6aFN`pTi(_3nbmaQ4UN?Ga9Ie8AXbH7uS)r zP^}uM;rg*+20z}k&a`e<5onh0bZxUSwhoGD+Om_L@v7oI z7Wzlr{TfAf$<^h_>V-F3i?}8*2SjKp~oa$Sf z9fBf&q8Y1+zXe!lkFp!3rB1ucwlBnEJ|jHS z4$6eGL%wcOs2FOq<9uh_N-L;ApfAEdjG!ODCt-g@%2Yqj6vb=NMkGDk*u&J(DO3Fi z=uFZa^P7S<3oQly>N>2UJkV8N_g?&6(@lj1eznwvJvGmBNlWM&CdOk*%1lSjN#XRd zo-mFB`H{~?4MNIpN*vG0iRYYbu_mj1e#F(6V+9n?%~uZ=4~{uVYa>Yosww``n8^v; zd|cRBv&Nl$$~yeb!hONdDf3VGLQk-hPK2FCRx&`FPcZh98_4VfW~5xUs}uYOm%m+< z2xd*L<7m!!#_XTNk9_eTz!*t9VC=;Dz0{4HahyWwq^Hv4aUx=J9BH&+03-k??1cOp zd4qQT2RIld{0De8zKs!YJE^Q5#i7y!!wK3(Jnwo%zRTo_kt*;EP&_8nJi{m3fss%* z#yEvSSS6OU;U5nHJN|%lIkw(F2lBn4n}h#moVD-lo%LA`KspCwCLF@!BTjEi&9}Nv zz$c$!D6n)JfI5h9=L5SpUDZ?)oCSPcX1_0~2K3Cah9c4C^HfbDiNJ-?^hTvBwSEujAZ6Mwgivh9>X zdGofPco=?)Yr^bw(sM$c z4+Bw~38wSab*HWGYWX-g7z`4F3P?O0Pra*u@Gyn={aa=`Y6aP<^KpZFaavMN;ynUJ^?%6C49HO_;zrnVIc@SI5**Y=E7W-a zGp_@<>$47*E&LrQ((DU_MM~WATNExjENtE9iPdp#*{pKq6K7wpH;M2qM z=j31dZ!qVMeR1#j8+F`u5JTb4(!xvqhXhqNCm7b^i^-2PeD!bEAN*OP8y%!?z3Ev`JVb@qP@orhb}Z5V|CQ4trQxCd_BX6lD40l}@|%$=I%NDIr# zG!t>}o#sezuUwf~S?*nK%a*yy(QxK0`}h;Mt{>0)zUMjTKC-bdfGRGNR}eLqaKaka zfHZrSe4!&F5i($)2V53)V@e{^rm8Hi*QYhtCZ4(M|R=&~{;UrT}>J?lJ1h zN_)+f$@^*}@V+;xp!{nrtna#ui4yL;k#>>VxFF;o;HmiLx!JS-0I#;}6z`RkQ3bJ5 zpWOc9mc}KR;T$U`8vFC>J7WY2{Aa}3H7;wRS_hNJ4(QfYHJ(G=;;%_e&?Q^$9uXaC zFkrOX+`mQ&ZbD}cpcL$1)yfj|I^b~$ji=n$^NbKc0vx#40!cpb>nJ8-s1Jbme*R!m z!=@|c8&l;3+LF|KJ7H{&#)lr@$BCKaziZ2BE}K%XH#AEm`1SUB6?#(MRu2dU?v+oK~T|AbVYdqwjwgtZG>+yZ-^=Pr8A#vHbr4PGj@9TdX0P zqeU}TJs-^yfMuDXe>?th*+7HIgJy9F5B&RZc1g)EXc_gFE&j$TBvEPmqDn*R#{k0m}@3^T%vJ z4hkuflF976cJ|~S04yAWmbqlbN93d>9wi|AM#W8HU?Y^;zxu()o;VV6a2Lb00I=dX zU%`D4)7)AnBlLJ2Q^3o1ZRFe$iTpVsELCECWf>k9VoevjGXR2m;2V{4N| z-LpNvEf}&H#TS^`B+B0sQ$ED33(eW%w3?`5y><_X^QR{~ zgidrJ-7#M!C0-ol&~sFk6yE7!qe!N!9%W_(uZhX4^7bye6!T*o=aMe$+MzTrz4l9~Jn;A-i-8U6R` z?r)h(%hS{Q*AX?p*7fd|>?|4O{NRlU@Acevg0OGj2sK(df4wTQdmLd66V~r6{yNIC z)O4V)`l37aN5REIjD6<@^R(V6S>JE{9xl?1Jbw0rwMpiDF_#VtJ9z>k@dTi;a_emIp;pNFEH~Id`j-j(&BsqJnFCZcm+`l3;i5GA?iPln;FY`(7D_HA`4h6P*QF% z@7a1aI@p5IBqx%u1+JknEwr5s@;8PwcfQ3SodfGm=SO>!jmC0jN`~LyUps;1Ml0k! zhf;FcU@=}$IeK@@NfOEekQ3j*vew343QA$DF`bkQ>v~r; zaYq4$|Dwa2kV1R(P2BBiLdAms=m-m~?mxu3eY)MRVVs}+kQ!CL9?tAXqB5Mq`j!uK z%snr#ox@x(GOq~W+F$R>bc+alAw7}$MTAE`vBgj$df{mlYji6OjVM0powG8U<@rvy zeX?w2(O5wS#9zf1+r6!a8Lo#Z&T+m0mwsTvC9cWaEiu?hBa80ES41T+??0qT##HMt z?bZwe-tg4h^-+mGm(EX3ZA{g0V|9yy&b703;?naprYHH$~SU;?HZ$C zgV85s;oE(iU6^DO|?(wrT(S(tDZ85D@5#$(8j}HeSiK@!>OCsHHmuqo= zk00}Y%YoFhA7^k03;qO&KHPGb*h>)Hj{N%OaP_!HQU}YK(IGNPzRiSICdgPatdxl1T3^2?f>*$g4fDDt;LPYv~6nI9+yXZ-}9j@SRwzxbPpv*;fd{pzsd}+ zaU?)XouG|k=L>$QE^TFt&Oj8jimp{khGY#nDD<|aRmofQ{d$}GMug}4R?JzYLLq<> zKqVnNoI^x5Nk>c>VR)j@gXGv2>2|dTh~vIHhXgxsafJg&l4?>+?``|8UuC)RJd4)y zmPzG3iKURpoW|zVD)2?G?><1=h2*{uJ-{h8QNWntaGX|!(puGS zF71LRQd21XPp}g%vBxIb>~W(zf3e{xiU=w+%z`xq+TE^qAdQEa6(aOqR0qrF{{bkk ziN%vSH~s;*H(iCCGB_bJ!1Hb|Y$R+yYfzX~v*W1)rA<%Hc>U?nIO~&XqppmI>^Rpk z%r8lPRPp;8#8pNY6jZN8m}k4JE0e`qQ7f-|!{1CQ1s^BACgSRzVJYEpp_a47|hoT2x!jB^EuLlHu(>B6%oxe6S!O@WpmUyNeneg~@Jy80dsw(^5#&qXbO zpsO?IC(vsPMZ|VvYTBO>o7#!+NCu{~LK%jgSSYF06xJ^__A!+(5HZvY$tGh+ddx%@ zby!rx#NnOBAvu}qp4GB)V4`7-*3YPp$-wK}_wa1#S;YGH1x_3gs zG4TM)2B|j>Sdh0pagaA+LVN6a!QJcaDf9AD(x_Z2RQ^V3B~Ty_zXZwQWMiT{$n@cL zfu#O*=xT175wi9NB|1gY)2d!%Ra3m6KmesFB0om{0)B)bMVHGA#>mE|^5lC?@}S{5 z_K!eM3lTyI6s6qT;~g3d6L~62N&e{Vv{(#)Pw0@fibq-Q#fc5vo=vXiN(yf{l36jX zhfjxG1LuzYh$l80_8g?t-Ll0c$w+`>ZEfE+wpVBp@s}R`sw=o6GXO7(LxI_&s-w*^ znnZ;P&YSLW0kH0>6HwL`(LN_9lj`Vawt21Vh-yJDG2v)~tAb9YE>==z%xCcP8TXjT znU^$yucW3TJ2na-_p8DBfRT8`n1Uo$HLn;xUZI&L5|s-0g!MqaRF^M^{s$-tKcGmJ ze||;y&F$qy~m6LUVg&W&L-ki9D`H?$FQ;Dj#Z^ts(G%o^IbfM8BpYYOg`D1 zy)!JC2R=U(r}br(OL{?!I-kCE=7B1**3DVh=-l^)B#^>VSWkPge)fb& zT&j^icbCy)bO+Jt*Fg2R(U&>l*?RX&v+ZOUE-)L}n@xynCr%1?2h;Iwo8#Jup0 zm;fM?b(2>8QX#@BAVI=q_Tnxg8clnN9F&fULvm41>Y}qO@TMDsjb{csL+ut?Zl_RS zP50!Y3MFQ&2{53olvCO#>R*k1yVY}rR_>Z;rU3M&I0Te>XQ(TdJt2WRECa+FuRn^tqw)mvc78UX1)1&0KZ=9 zHBaNPs=mb;a7K<4dw!5nyxtEQ3zJDXOy`zG@f1cH<(UTa4mN9<;|2I3Jz?tt#($b8 zj4xDdk0SHg<409&%rr5;9EBG9U>I@5MZoSRpRUk{wJ`woxk7r6GE@iXB8~?bF#UM3 z=$3h-y>JWiUKK+Pc|L)1|F+()KTdxQhHpt+xj?yTJp29BpvW+5c#FIwE>Fy;?A+~6 zqHEQB?>$I50I@#n^cm9|*2^?WFmwJ({$j?QGi4^PI(ahCIEkxPygPC_hB3NKqXdY2 zG%x33bS=I+=^h14NN}e)bas?Xq`okpfd5`tDJ;1(XGhWz=YlMowAPrPKA2eETH%%W z*nhjDTJGXuhj5H^vg4~8kt0E%c=7%PVQTzQgy&ij(EG|WaG!14V5rsYCQ-~Up)(yq z6spoCN5Yzq_)#KXu+XOr<}fKRPhY%5=1J@nwgu3@eZ5F_Ze1E{jaG!*k*r#h>5}RS zvpQ6(NiUFAWxqNhgc>9%m=Q=9B-Mg#zyR1S5l(L%6AGzYQmV%ThHXSa=3H)s0%TZa z3l~(a;tOTEiP%y9d?;<{Sq!s+V!70{enkEq>xA;xb7gA_d*iu|_fZxQ?7Z%olHa^E zKy1RR>#J&VH+4wUYdhN&_^yr`q^4?FZ0H&iKxly*NdROYs7dn^>-Wcu*F!!?qWQ8Q z{Yz{W@oX?6(5v9*ENyEPAWupZf7UGw`qsuv{gT^fVUV^bw(2=-QP%6Ldp!f?!$#*Q z3MsrlLF;KXTWu(f_62$B$q4O<1WHK^$@WFDUK zKT%MyK)4#9ic6&`uHgw?^=A6FVa_CYJ;=q(Kj#$jFHTcM*H`Pe5yYcUKL+fqING^1z zH%Zn%gxmD*o*wnIawF=j)2gC-S>zvO6?A2Zc)XEXOgR_%vqwSNW6Ggq{~thm_Bu7Q zlu_sl4e!poeDN8nL`Sy^@fqv}cvv_zKzh-nV->gEVu-&Yz?z5w%d_2sy*L($gP~+z z@}K(3uavbs!W!77Fr@_{4YPm$__nVc3o+(+q8u)S;U0@uuGrvgK$D9oyH1kt^HrJLP~Meu~^qAh@8;V^LqMw@;=uR5;g3S}R(dX4MsTO|JEZ0c3eQMZJA^oB&^weFDz77`@I zS=KdoEp?&NoPPl8h46mktVdS|Z9;#25fd!W{Uqf|G)TCP{e{^ zJ<6WfI`^%Nw}*LkleE8ez>a?Q7#vQ_>7zf+9vVI+p{elg?=~2d} z_~h z`$>goOi+M{Z38~*VKspmrTJI6tcRpD%`9Ck;E6eW{%gw13;^Iyw@4B}z1OgjM@wYc zYpm1mUlz+v8ebq`v)LWX~3~E{M9l&X0K6m|Et{|BWY~4EH z5$yFc9BkCk=jc3!Y=3z0qIyKvaCg*HaII-3J#FUC;^iX`1e33W`P3FH#2s4S=Y6p* zosHuftC`e$o>O#t__Y0cck%4;tNFfiZxaZgj^Ib1r5*&ji?YYP*U;YwBr*N`v)ta5 zllOS>3+%c~xlX4(V-V|V7KN1BmJaRYpQ$_)GSYr3$mA$Mu!}lg(Uj&lKe?#4$cZYB zDi*&u9_BGo4(^r)2_)@@nJn#J;QMXl-_Y|zWBWGAkK8ID88n;axIaJ{qA-`6!IavW*18tUv^D& z`>a%!2IoaDb|*up+fmmvdExm+QO|)3B_M2U{zlZA(5iIOu9xkcQOcF(p%A%xeE%TC z7Z2T&EUxm&Zm_-cw(A{Y(mw$Jscm6Pfp`QWj?!H%K^e%os2x4Bp)Js!LSx1#8bb$? z)OhJufS~n+RmVE`Yao=SvVpdc4_?cbX|J|XjE47NvMf~>qq+*l6MBZRACCEU-H{0+ zt-0vpbJ})Ef*&0|tB zL}^C3&(#%kBpecifN!D{n^60kKVNQ1O!a^$GT%R~QXgNYmWe8iyaTq&!T>(BxKHS( zc{eI%LQvgE9hZ^0*lIu9ADjOrIE3*^fGb!z7eWl`>Xc&a)#VG*$}}asisgmeOQehL z0%|XnzB_uQ@p1k&eb(M=e&jl~D0YuM z9^`n>hVEJs?Cs8a9xayh7ck3OrT-1yovQV74*mRW=)}9c%w*_%cxL}s>sC+a+(}ol zq>ZiOtX8h?H44I`CBCkK`U2y_n<_WgZP@l8n`D$UO{pGtm$+V~u!xYAv?h`Ub9x^x*q{#2r`M{O>^@oH{Hf@@F`6@iwY(jvpb3Fxv3iLAw5zwaN17yCs0gqcv) zn)OIF7_Sv5;_mmp=K*i8t}TerP^fmZ!O)C58mDz$cp6)?HDX5bB$;xdNt;jk~fYYPE6`;Y4e7QT=4J<>=Mdy1>GtulHg1xk7#P z7a$u*=-R{_{*)b(aHcrM#QP_RZm~JF$q}BAbdk{uJ~18rabbZ4GMcW<57jn*HR-!4 z=lpU}^d8A`=lY(mTd{qycR1-MW*E5L@60lX9i+BFChPOM4Yynmf#$|6^KkG)NC!8a zQUU|OEhC`Y8vF%(ycRtJtlz(|HwfwjG*f}{`hR1h6s%&$j;G_XcCRD3D~icZu;%-= ztj~JVo)Tzwo%G^%P5;Snro5!jhHd1@5^o%VtC3J1vX;?bK_Bp0KK{(4R%)P4r)MT+Syw)${th#)3XALcqDg&7uLC1ewVnLG5Bj9nb zxSQ3`5U)+(Aoz!eRdy@jiIua^i>#Oe8y(v*>$|oM5PM5FB$iO5F>4oi4cm65Hx9>- zw*W-NHM!sX(Jl=u^`i^$Boqz68$Dt?%k?g+%f`o*BWUvOu{8p6%&WcT)lsajeY`?O z<*f?TjslPHr8&b&EwL;v+qDR}veH{)6ph7sd*G(PCy+iczXt5lL^hl zfVetLSHNeJSQ({QO?PgB2{ZPBKFWqa=FNgl7&_=(cv48Q>^m8B-G}n^Oq{p%OG1CpbGidB_BL*i zy*~wVbnksPSRI3Q-%xwPJlfB_9u=gzUgs%tF(7*(ou_eQEU zN6Enu^*?NzLz&O0xY)sijPxrPShIQJ>B;ceWfJOy2x z0MKRB&959gzQ}Xzr=MIPceY~HBn_@16Lj4Qe-*5)&3yeLKnl4uw`Uz@D`tK<^u3zj zGEz&0_$-y6b^oEkv>1v)l7PfdXU8-)eYjkpuQ{s&76GR5&eXa@5 zBAM!S_m%#1I9F4x&CafJo%y>__xL>n41UA!onxE&KR~a>qGQVkjAW;6w{6PPcaSOl zdiQA!Of;+r-7W=G^Ha)Pn>f8jxU0JvvkrKwfuFr({a#=r{}=vwY4FeQ zW!o(ez*}b=_O|;5=LxsoV**~}mRI7`mI+X9hu72dtJna`L?z%y2WVjYS`NUA*o4|> zGXwJT7>VEH#Hf7BBpAg)SPn=SkG04c?0Fx*rG}fute}kbHLwkNMqVUoF$F40kj}U? zZcFER+|b=993@zpi!-6WQ0~V1CiHs}oDqr2F)8eEvw<<`d$P9{th~UVWX@Gta21Ir z_!yC1|E9Yjeh-Rg6Q4k^wqB@gj_RTEwy~4*MDWWe0u;^>B8Hiidy=P;coN`)trl4CGo#=%oir`d_GktN)NZ?8+g&4$mzi` z9tOvSEBD^Ej)Dcjk&(q-@1>9k-8Rj_k!jcwWKsmr>hkGW*JS#}EccDggGQHn-9Y2L zv#gEt&p^8qI7pb=hFlP7(bWbwGso3A4|+s2&aC{ycx2k~099esk|KRNFQLoYa!$$z zx7-9*!}{}4UNfd`anl8fB&76!8Anl2;-JDW#tbg^;1cRgdZP6P{97~x8wgG&p)QA< zxEeuB04iO%++5h1&q5EXg?}s@W5f~O9OGK^ye)bghz;<)A$E7QF(*#2I=2g|fu|A23sEVxSv!hO9EYk1gxn)hI!V+f_q8rFkvqfeFq=lsD z334_qo-LQRYONe?u?O#PpAj;lWn@c=YPgroP#x>;AK!0==Nbs?178>ZqN_m?&)B*P z7&N6*Ad}3ObDX;3V>t6ztUl*oP35vEqx%_!7Az@(E1&EU+CEx{>AfwvrXJ~2()c2C zxYwGNbW3qwIye9?!CM(7upfWH_%g4)J=%&>_|eyWTs;H!oP97{Z2|j$3gOpPFuZ=| zjKgfzqQm2~-%(J))QDqCg!4`Yiu-C#`ju^LD=NT&@Qd|r|? zNTHW?b|()${M4g(`zYnKLv@MTs{B*cb$k_e!QUOAlCrFzjBRex$GlxCz3?$OC2~v< z;YD!I5Zk-=(2thtUN)7YCvp|zcr}l3Y8XxD;2S(OJlz!3t*)jior=$_?)^T-PGAl% z0-6~4RwpFx5h0+8C)N} zMZW{m(hX;?1vK3+FFm{5+cb~YR`W*t-cE$|QyZRdr(*_$ zV>L(*_1POkFJug$A6;gT7ezjg|ZlIn^NREQ=6#J&d|X9!u2s?Y^3YaBXSkiS@yTGwy+vyqN^!cZ{wc>IAjm z5%HFY`k-5~w+a_Isv!7+`qCHk9%pR_ac84*E0~R2@c&|&*cR9qB%m56>yb&2d_R|* zVHBm2+0E-C1X}~HrfVzJeVFK~fCRkX^5)BhjsCq5-Dlx}`}pY(1BVIC*KbQO^8vPQ zr}TO725Rxt3HZ&63;A+rq#$}16hz0*gG}Z<0DVwrs&%#Z07m(7Xc`O|CS1Z4kIi5d zEYx>??~3v7{k(9*P(--!cnwiSj%!x~1-Md1QqY|konT36!vHhZ_EP50&Y> zlnKLFXb5_J8q;TpWNEClu6xj5UZ9f3+MV60vm51%+K;~WE%NnB|4qnQ8jSy_f4~hj z39;Yvz8l&vluH1DqNwS&g75NBCS*=DF8VT=R=4(Xmce+J=vHg%e2XD7wJSE>Ll2QG z8!)u!Xx|m)g>t%0_O9#wawMwB2z6d*H>b5MjG2!#;q?zN?)oYYYWzIk;BA;j2P7uT z7OD{AWZ4IGHJLDz709qE-tDBYsUdeJm*elYAy~d(EXCaHD%MJhTp_i7UXzDUlLQU+ zAIf-zMbDo_v&xiv0*+KeFLB2xsL;hWjkd(;%3u{MaVPD9{Q!Wd`hU+?PClRE5D{wH z-sV0i8s)*#hoKM0$2Zk$UqThd=Qoa_(6Z=R`@!Zl8}emu zK9;LE$CvBO)W`yPFirW!7dtywLC)-9L^mU2BUIkz9s*k&%8&$?X7O+9z3maw0bBPH zG@Cv0XX|=2A1K+}zl_gn|I*>c#G}^r$oTq>*-t1>BwDj)FZkJbPX zMTcHDyqZT<;$wo#QSMhwpk1TsFouap*BT;;d&VsOzFWNRS?k2zRIZ+Q!SQwlN=ALMF>nXSeqbICIo|_9JadsCL-8(pwd0tnelZhGJ6rhOLqcLJm~bE;Mm4e zKT6FL?%f2QZl=1d@BaWhTV}p;W(@n=)5vSEY#SO$_2TNCp%PD$(9F+2n_n>NOZLNQ zw3@I7Vb1x@andLU@pJ=DxL#ilo1JX`X(%x|$dzJQwtPShrBMVfr8@n1(Ju_MgIi^a zeILI&<=7+53l(6Z95H9fr;$>PTc6GGE69>0yPY&Ax``<2t#Vfy7mPk#54!B+RXNQ8 z(dQXV7U6Uu!GmE}Th~@TRC;wI3LcRixK(Q7B=~N|{6~*;^@#W8qZCD>f9u^4e=48I zN3~)8MfSd|1O&+8jK5PeOo86r_`LmKSLp{?+{eb<_@fr^V*j}+X8VT2tH48r z$fC8T_kiW*i$~qbvrM?{d6}g=;K~pc3L}``kqEJidQKhg*(wvWIM{zll znd)neb`pDaGZQfj?}8J62~XPL5*{83wluLrOAFc%m4zKfget3Qd~uOY83NL(X%c4N zv6W>XlH9%QqioGGUuAZwJy(-H`MdPg>PGXa$hs~ZdDM1Ohb2ff1mXVUjhKw6cw%2F<3`3vr;6xwJW{E2-PkmxVw%j-!S|ItfKXYTn* zFy7orCt~eaJS09#{3#nz=I3Ji{SOeis-tJm?SBjyyQOr4)s^v2EJ!Nwz4&;y!GMhZ z?f@*QSVv^f>%L+IfArdiB;Mwo!;b0&kC0Ln&l zEo_sw{(Gqu<&{XO(NR{DH}Z;N{>9P!J*wB^vlP#rFUKafze)}8bTMjUQgqtRtpu0Z zgp3X;x~TV~o6KpFTV6f&4$q_4RV~LJ@^B3$1E+X8zxKT0uoPd;bBHm-+>Vddcir5S z^81K;{Gp`qG+36iwd)TnBgD~-ve&>o7r(nWUlgKadtb858JWseQ8=*1Nj*0|{)L&~ zDHwKf{>Ac@5!S5a(|ApLxUT+qC_E@M%zbbIugPL1$Pt)6AS%(EHz}w808l^_I zmq-?#n^p_Y7nojmOGE7h!*o5V9p(!PC<0wWlSI^3?aRB2J?sL3H;Qi1lsTNCBzv|n z3D5p5jy-D=++K)GzwO&$M@Ve%JDDks_fRGtjX&H%8TY#BG-cq1DwB6oY#44Xc}Eq~ zgz#X}ycZ6hIfp@OAzk^}SZw0H-@mK!s#>v&t9A2k^^I!~DN#MvkdxkJfPY|!bf_z0 zJ9b!OZ||V*YMDoeRgy=d7}L{>!*U;5L2R{9sU7*QSak%}80kT}RW<}*X3?}d2a7pN z-7OEa837kW1n*dA$q1l5jJrxOl1gC|3<-Vv?cFxoY%MBzUG8Kc%|sx7?}Qr(tHmuu zMUDj|`s|q)9=sC4&E=D?z37A9!rD(8)csk~NDP$5P8**V72Sk2TGfLW@-<~0$}ioxBh%El zZ*-ZH=ynOwz2x+Zmj=hM@8Hdj01A|a13Naq%gz#&wOODGNyfeIlTf2bDzf6bdg3kU zQ2zj&(ayJ7_%DUKR@XhtQn|-4+%?XKI!@mK zQb2MwX_4cnzCu4grhR&MZD}id;68_%k)Hjnvr{cxGuY@LLOBsRoPut}rEaW2d65qGSywYHp@5X8n=)m}2 zU$z$noV%DO^}wBvQ#I<5szF>LminkM6=)7m_mS7>NtF7OKMcXmyACjKaz^+cj#?T4 zIqkSxUD|b2<>504RB>qLHrG7&ilyDV7Ztbag>Grf1EuGCJbbVI^7**#xclac-Ys?ut4sKHKMXlf>Y@{b8z6ZtqP>2Knr%|DBj-kLiVCM4UE#djzD;}~Vc1 zkH){PcPCPZYtSr(PsKWO7`U z!+1Qg$WK>eh_yd?jh${!?W<=CEN-D4=tr|4b!ku7r6CUqULIk^fJz?qDg5&3NF zu{b4$=RamKnMg#gQHGatOt^`q%1@uZXB~pV^pCPB4Hau#og;frFG9d4K7@;`8>PDQE>t_!~!% zeY;K(WfFdM(Qrc~I{Ysrexv;0d}!_h#7bJe)+DUM^lory7sm*TpjBSl+tsF@NouW2 z?;BVH@2D^MKVZ77<1b{Yf+U<+C-vqbWdpEy5R-j}2NS*vV4cMOcClOE9AD_eZO#+8 zR9Hood?Unu7BdpRGBtXOm`u#gx&e6}^0sr!3Otx)oFT^Eq?vrRw% zHcL_xxu)jq($x{u(*^xwyOE!#lFs>6al%z&!_Id0y7`aWlRQ5y{A)k6>W?AE$|O; zFwcFXd+QeC;{*A3z5_giyqkU}4)9cX&{`*=6SnNpXP%)0g2nM_i{KJrI5p5=vvJg) z_wt}PI|9&3dE}j@Mye<$uZvBuEmq*k0s9)xn9J$*gt{Tl5uy1-R4IpM->_uZ7tZCv zvni33)k+e&u28~}lavbeC4-s0Vb&oQ1Pk1+w=?^oxb(K!x`9iPeU@hglX&yuV;sBT zY18UcA}FB!G+m7%%#171iw}mBDDd*Axiz5o!u_ybYj6Uk`uCfwvZ<>*b$z2LVFC81s^a;*Q6atG#3+|Og{We%K#H!DJ;HR`W>AB&NA2tL{- zhHN^hh58JwPzT5_9m7>bF>PH*o-MtFiTC2c`J*_upN=S<+n1<&K;`$I7s$dE`rSe=o>JXI%TNJFWZHBs2s)6knwy*nNDl+^BNHi$&g2by( zU7w35_WwFYq9PYDiW)Vvwo*w|=JL3nxq3U1dfr8Tg@)2F zvE>$SD`-S6Njs~=`tQ=_6B?irtEdJ18~U`JI_|tS{)B4MhJ@8~1-*)lZdQbGR&0A- znw*+q`SqECV~4zXSy7w)A4Qj-EUL0oR(2hDWDie>{FtP)srT8aN=h%ltf0@ z`E*RQNIi&;gV6%pCdrb@n|0G*-dTGcs#81Ac@k0v9=dS&>19~>!pJX)$G|E6rX>iv zz`>8;ao*t7P6k#qL?F72oYZ2`6gP*rSp3g}Ij`;&%%aH-V3iImmJ`f`Vtuy?yt!TjKE>DJChILCd;`W+nkzP`^k;ylAIt~5m^P$i z(Z({7(BnN}rK=NI{28P5yoFX~3-~l(O!OtMkgNwU-A*dIk6zx4B1KTH)L^bg>shex z2QhNXzf!PbQ>hLXrfo;_eJQnqWymJ@Eo} zTS?%&=a~6xSvr4N@zMVTI{g)lydfv63$m7WAIQ9{f=<*zDM8s2pS|-+nRQjq#3muD ze-3iU@98#Adin{6DxN~S?}9>Af-?CiQ3&~0bV*~cZ%Myi$HB}*xQf3{oJ&7w<^uf2 zT=J+6Sp(vv7Kf+MoM<>Z}P0BcasezB&$(eTaffyH}0X- zp>{lrz@Im=BLNiq#B$!Mg}cj$FWCyD0?^5yU3>vtC!NZ3(%1A((TKiP^=DVql4f#G z;56;n7%#0jQ&ng%pYHdfcPu?1!K0-#bsYRYnk~j5ndfKQK)<|XPBrt_?b>c@b+rsb z9Qoy;Q0^K9K!;w5UWh_{^>w|E&=-5%Bk+jrae?I{J(FL=`&9G@ysTO;`^NyU383P; z2n zGSyK1?3qLb31^1k>^@88(nHU#~(FTz=V;_AZXS8!W zXGUoxXGO0|KJN9IdOF&D-02q^mKHy$dd2ulnGmHs85m3x8y?9}Vl=CaU|Y-Wkj`3E zPCyacCC6VQ59}KY_ytE#NwTFqm}p1T=Q2w zOjWQ)$YehAVfxT4T#zFzomLiM%ucZUQ5i)m=L9Y5qmod-YC*NL%*KB2WCSH{LYz`1 zDJ!@GKrpdu*nTC~3j<4cG(eq5oA{T~3pARuq1OV%mYiXty zEF)P-mPLE|%co|1sQ0MtH zfNRRyQAYtMFEsy?{x!x>W*-aN(0hCNloF^l`|T6UEZ~rPsfi#wyLel#ym3YHV*qmcVDtN zGuFSL+s>bkJ9LS)1gxjRU$WN&-X2-C zMCa1_D7udZ=dZ`Vs~Bs@9bKXx}n zJ(Z#Z_m&C5L3^joWTy#J0{rJ@k=EJ;#{N0!pyqsN>Icd{z?CWwo6WnKX%mx=kGa>E z2T(?eCGp}>{X?HmyO0fNg;;I20G}ZjqMZ_{>*WeEUdB=SqYT)<=mE1V>KTw$ixB+z z!(j|tHt5SELHm#p&3krcYOAL4qoLGW^}ZbVgMAfKye;s@d9K1RqNdKX-Ew;sOI#mh(|iY`{=xNWg&!jrqKCkt0diD(6|eLDA) zr8YUz;W<4v<&KG;w~aM#ro%zGYusb{^@n{i1~30ReaYd0x+z~7 z!2n_Ovv|_i%OZb=s?f5kiGxB2a8MB+Kw*7?{KRlw#e!_CX@O&@z@PgTT(AAz`ZlW9EJN{tc(5wMXhzj#ysVYbkuvuY>oxKoa zN%|cUOp}%g#vM%okGqt?{@Ce3A3_0G)2PPpWhDs_tx_!!mz_97w+ZPJz5VLoI+8Lo zdpX;#=6xvMj;fA*W4hQcrwaT?&crR(f1QW>9VkhEU|UP;3Q$uB8BG-%lx~ zGIvOrJXf~zvr5Ysa_(&CT0Cm1W`A*pZ;dr-(6u$mCkTeDRr}pfUL+X#jo8a)vaObJ z(tccLaL`4Y4Bi4DlwNgB;((RX`$Kt&OIV|o(yIfSLeQQ({q>`)Ky|vKH5&cxE~jF$ z53|NrtowDDVXR_D))@y7A6$9%!9T!NaeK{CDCGZ&&c&ap|BvIln;B;2ew+KuT`tQd z+uTNIm`g&gCAuK@#O6Bp`=z4heknpKiJH32wmreZQU{s}sviELW0UEF-kw*%9Q2X~`z!=~y4GvpTIsrbGUK{MSTBq2 zQFwnG);a1KGs6TI=#a9m=yYHR5kNG2?KJzuc=Px7EitGu_+;j>%Cm%f3~wOPyYvKvdseaWLu(5Ydm-xTbkHwsWwp@#JXtYI zvCy?s!1{q&aKSOPtPU7PF&*ulm)GheT!=6U6$o~c09g%3VGO6of| zAbd8vEck{3jmq?3WK=XlUMnML+W1^e&fpDu0upL^KZ{`pvH=$GbO7a+TMqH7l|1*1HF6}{3g_-)| z98&id*>+7$i|Y-~$yR$6z0JF8q7ehOn{^jW&#@ETk}1=$XxEC|43*_JnWNAVvLhU|Bq{+B4#cC-%lGY2FsAjk#TRK7e?Y&O859ZPK<6A;kyWlGION1*EJ!;11or z^+@5ku>L=Z-3{S;K_p=4{$aZ~r%7ozf7n^0pod=CQ$ft`Brctmiv|p;Rl4Tl^&m58 zS~(9yt9h^#M$ryKeAf?7vu~>Os|`Lly}@U=^3;1c!r|z<5%_i@{q50RD-WpEPa0S2 zH5He+%#|qpDqJ6Y7-XV}%Q+GA^m(b>djTh%i{nusBt)Fwj`#9yzh1Z~2CNHyi&I%Z z&1SCQ;QI#05>0>iTU7vLuNp>{W0#5Gv2W+2245uQ>#EyX%t&^sh%TOd0niY>eRf{B z{#$#fsu_45g4MuboYFg__AY6C^@mzi+$-2wpzdgx*|WRy7Pci*tL3iOs%lX`N9@a` z_}Ar%1q`Uc(H3K`3Whz3#EunwhiY&a!g0YRB7!WI`OGu(pg=hm(TWawVZod@5p}Dk z(#+92>Fr9AuAgHRqH00vc;Rw9DLlneKuBU|;Z(V_J@z;JJwT|Bh>$5|XA2>w3Y%|& zBvSwnj4CNYR1KXoJqx#D?l-^!@x?BnHuV~My+u2{IOFT;2<)UV+ zb&fi*Qpd@Kx##<{^QM5D_C$C>#(2+%JH5kcTDe~lmnmz|LQnf~HNk@Q$z!!KKT zA}-UQsCH#sy|g+$A?I>2#YyvL?lXXBMhqf^j4MFeaq)*CHwJFSdm^FAI&mB^BPpVLDl~NnH*r5OfP-ApGE#-L&z-;P zypRwSTi;0y5 z{=GPqoA(({$w*hw8eYxZkk?DP5Vh{(*QTa>sa%wYMV#EkT-9439Zh2>Kru8Vqnt^W z51jN!@Ctybg$gRPg5-uni@fkWoYkC>{;;|nz!SUVRIRL&BL?k?OdS)T+@9~PClPtM zk+y6NFTw>5m3wNkBE7d$gcoSu5R!k?mG2QC-TJ-+FZ|tq%2%_k07(id9NU5psK?;f z-LnNpIneWbo&k=dqQiJ@&-ZH;=d#^=@ZAea)S_WNZiF&H+Kkl`=h7*_6c{O~4!D$Z zYuSV^H#_y1`>W##B=v`h^GB3=daBG^GA~tPO%c%_C!IsK zo^m9BGyc_YpDwhKaP0_KN~o-K;3UhP^RC(ymYp{VytEI?LyXBB!+D+nf@+M#oeWlP z5Vr{NGMz94_>5L=xZYz}?_kv{Vs>B`Vbvasrn4HQsb?ka?q=j%n>^GySjbvPr?MPe zGz9MwG>QRF3{X?3yen$+#~gPgN<~IA=-q%w@IN{{TkwniKinOQJg;<3?Q^ z-{eJJD78|8Uv9qtotJ+~xMQhL;qt*d*XWPQ+yO=7Y4Sag7h#)swDOpp}tOOlBsq?=~KjI z!;AuFBH|VFk~RYzw@mzIg%_%JOw^j?w2J_yDSi5N^Fnul7@E-5mkuqMG=B*2=3E*X zZYCi~xQFt=R|LM1AQI)!x~GGT!sL)?Ij|6q{9)$W#NFAyxbB5p-U{h3AFr*Jdcs5P zU}Xzl|33(hVbq@uby=iqhjb=IDflgFA)lndH5E{{YO)HG?I2N7Xea8+LZCJtcOT3e zEqxW7ldmBllzY`R!7Df}0WX8(e)B3mu?x9V-}Zj>-2x|mvRLx%i3ercc_TrZSC!U& z&ZdGMnxF+d4V@k|z*9Yqe$!;eo%;9kPx(9lx~A~i>cQpg4Y9~`k_@Ac*pvsk$UfNG zHeNzhlMpRDYm~5OW+1Qtifl1RZZv*5z~o-y^?w@oCQ(9O+RFKJFfs@Eu=3RFxKTor z$x6gw#9{Cm^SENEDdS}(zpaGeff(dq;hrnFHsvb4b#PD>FxzdnZXvC^gnk+h_!(Vw!ig1H17aEqn z@GJ<$n&X;{y>_@Y@x%X|xfCmI6f{}qGm|}UnE+C;`j++J1f9QjX=~yMI<@NC&i*1* z0H7fI*xJ~wKZz@=7vShNLMq2^R`R_&V>>OcCgQSm+2P}l?V(fc^)%&!Wv^RfE#ufp zd_49#YnS44vi(6W!e~wR?&}(h zO7tBV`v({ktLjvL`U(zt%YX5DzEPPZaz?g1Vs)rr`TJz)8|qugHMe zsm=jCI1NMUB|m-4$R+>fRpiJKaCk1dX^&71UP*F*+VHOWBnQ0{4Kg!zSirF7onHN; z3pZV8pB(j{L~_{KqN6Y);cs?9$e>S(jri$k1 z4?aJ-H*S_0F2LTU)@JRBXQ#>QI#>+)D!lO7x;?b))&5T>_{8t3d#mQZbYHc*&8Gb8=?&P*LsUzB+fCR4Uob96s?ErG(0+1hcRBlS znNck*%z;T0Bw;QLna%IjejyU@t^LxrO&dw{TEu=4c>6O)9RjE%RLpk=EO%`358j#q+8sS#`oD=PB;zIiVfRAw`n8 zzX&`8C+H6};LG@p(cfmbT!DP>xw|`4tv%oUDOR8vS=0?n>u!=S0C?|Rx=GcgoFs_G z6?8l24Rzvs1fQ7Ta6>ds1&+OR*)X)N6EF_&4qZ+KkWx+InbFQSeOhx==oQ(Ox#S#B z@*|A)+PtZIVWa>cov*$}e01W0)H$f*-25>~>Sj42xTvswTZ1J6NFASk8Zoh@o!HdD zjJDRcTYjOt^+tk~Jk0kX0jpI&vv2o%u5u^y-E=3SFzR#z~P-4D#E!!a0_tVt;HmFJ93J@p0nLhD5w6 zR$zV0_}aIkS=&~swE4NXPAsC8D8t{DvRfo|2{*xIAG&YYS}xr@!?AHF&Sj<>uzdFE z=+MO%dxxhwOZ|kokFphaHn_#z0N~G$>uvvyI^ua$09g*uzfDOl?GZ~t_-1zVG8O^o~qsJxU7m7`>S|w&^n;S?FNp+|laGLTqngcwlNT|uI z*k!YpuD`j>pK5~tW;ZNfs_N?iFc(~eUYEeb#)=mN<3Ucx^sa;8j#RlPw#p+YBGwDf z@T8R=*Klz*aDQvv9QoAaRWb1?lik3L6Zxz(688+Kzv~W`Em0ncUUS`Q|)Z z)>8|#ViG?&3Ub~KdXX5d;Xp;naR&CPk5eohf&FaN^DwuFED=yRc<#(AZH5$-4htzYYh*_RQ}vVh>P~(8ds90w5-Y?yUNzdo?S-Gbet-z~$pLx04_YsW2-oFWBwmv6;HicfXi4mvx^Op;*`EHf^z@(x-yd*6N2mogGpp&U`N)f zK#mxr4nTisz9nl0y<`3eac4uXU@d85@xyA&$M4B&q{g_)TTPx9?L?K@ZgOPlnb!+wPod71BL@gIhC77TFo{J%R5*rSYW#fC87hz|(uncV~0RY(se= z9=o$LB{nrYY~;qgQ9BY~je*$N?MvMBB}n{$;*0w44qMdo%4oTRq0pc~__wjAwT0#I zZK0u504t4BoUVqMzXEIrd0|@3VAlx}dfK(Zcj%;DPW^7mSU_1xbiwO7>EYe?d(@vL zw?1^kWTWl)Yqn!OG)bmw-1@pudl9BSPih|1KULsd1!#vHVWpdm$${63t|urArnrHF zO>dd5BUfmdA;;FNLTBC%cY9pBbx{B1#X|aT+}*GSnQt%TkK7VRWsL%NJ~pS`kRX%o zcV2#c!||5iA3pOr%Q@LG@2n3FH>ArU1UsNy27I!F*!@>{FF>MlUB9V}B=ApI&@i-p@c+N~$ZRwhU znG8^6a!tFHu9=kcErAYDB$AQL>T}{sa=Kd=pPrTTtPlWGcg~pAs9{F-gY~psDrCiF zHC_gllfq+z%|R}`PJ4sT45>cS*vY?bpSe>V!<7Zk|K9#88xIsdmpUA$me5igsq*`1PCp&TQ$LM+lh?)}|D=qJ{k z-h%PZq1LZOvmoOSd!zhKybm-{390{vyd8C)TFpG9C0GjA<&62j#EsV$dKNsR37N0| zbRv;=fX-i`ha74&to>8Pqla^F*i28tP0#!XaDJB4#0fVoPh?ad>#o!PoWoawvU5lq zuz+L5v1OS6!=3h{A9_QH9FBqkW;QZK#ziV!bFWe1G(RA5T8YA`q?uYsN`01;w$=6c zlIFpfIVl0YP6@K-(G+}mfL!u&Ox&e#?^yA?$yjp14w{rBV>Fe$zLu#|LqR*@G`G~Y zUr;p6oUkn(7RJi@ohZcApdMcWB0|B8la=2`0El8(MvYqgTV_TxgWhqhfA>ak?}356 z!k+R5DUoz7qT5A0;48O)gN@N;?@ghJ)^0nbE!)}07XJg!H+4EqWoU8I*{nf9;@yN$ zI<2qTdRp?R<9&-U67rJD);~hSm(0K9N-o5EZf|c~XU|<@sijW8h+OnC0v6;!( z-@nIWn^d#tpF-5*I;C#rEcqsXtNiFzi2o0O@xp~w{(0qJ-hTQ`z_qMnnPPthIP)uG z#e*}Eah#52H|l$&WiOJo=o;#dQOD1(*_?8J-4R#@9y^*gzP)C$%fyOxy$(KXiVat8 zTD|5d@44~(O3u|#Bd1%??boBn69Z7uChc3?LERib?i``1rLuzbXX(ope};Cpv6Y9$ z8^1TtER+l7Zv15CrhvDf{WRdHHa;T4a*Jd9E(XlH*riqGhSp}S=O&wCe|rq84{3?QCSeccr{kIVS(e=`~dw1@mRZ(6wz+l$>;u<8zL5qKVL(pRqq6= zMO>g1aWVlhTh_2V^W>JRPr@#DYGxUO8>r90$-qP}L{2*EyfeK?Q`^Q>*5RSeqLw$} zGrTcGU@4L#8<|CSAIDGt@_L7s(4-0*5Od| zCAbZ>h!4_ki<&4)nI3`*fxOU=UuX%recy$lq)$)+EX5LMe~ z8!C)|8~Ni~&BXbqfa*d&EmmIoYdXTAoKx~W{cz&;@;0Nb?cLH0I7q}@a4b=9N=Y1DB8v@2}RSkyFPK2bj??fh`p);OMuCGszR zkG|8nO#q1o?R&UQas3AXzCAeFn%gT2KOb>FI+A)VP3r;5wV#)>5szga^%)!xDw145 z#=F*w^b|9R$=I-AeVMnkxKD#*fmN9|dxkFMcy7D=$ZW?$B)=;Z~kIL6H2@)&sk?ky4wT z1IS4I@_<(9y9J=4ocMjy_Pc_fE6nO_JUPO;v!(D_m`g7-)W;USf}vDXdOVCp9TjHQ zL|@yKyOKX|3AX?*l!KB*#YzQ$f8)W`LJ;<|aAAzcC2`yzw?5 zcpoJ1$shR+U850=0NWdt>L<>9ImSlXfw?QC5D%(IOm zJW%G4b?_{O3fC4;?|Uif0gVv<>QOA`@sPc|=3EETQt2*4`lqWMm0!tt!=RaD`93V* zGH$`TO#axxab;KWkTFIQ9v%4r^;^<+j_A!legBXyMz8Ng zAH8B3oR#$VQi{5$)WK8F6}91Y9Dl0sDLzuzJaqj|?>Y^8I9zl)&RTEc#my9Soa2>x zdEo(eCjlr|xWOCxB)+AVSH})nn25q7IF(C1tDnWodzL1wyIG>6-jQ(zc<)u1%JJVf zi4)ejB*zH-36$p~t3~kNP!TO*`h``vt*e;*4uu_obSU+-1TO@2ANeaft?SbaJyC9~ zK-~UXp^ZzS5f$$xz<63Nt*qelxKuwxlC2Tfa~LF?S()3R7n=R2|0n+NY^epm_OH!5 z2c>m6)aahtw`>{DjM$VhNz!{dUis+s!pX7~SH{jpc-fS2E8olOv!HNurKZ2Z(-$>}ITkO(fj{L+;KI5PCxWLUy6=16B&TV+ zCXWq1Yx5CHW07Kb%YnpUE?3W%?M7rJndF7~2jzLc=?nZ2w&z1gJa*ArIvo4R0n@)4m6dxj5Z zM-ZT=%1LVgk_&vrTd}^xikxd&)pIXkiLKN$5(=>{eGCm(D=LV7TUwf{vW^Vqs^x19 z(ckdwT~n3mfUv9R^6*y8JH3!0d^Tmj7Lv@Wn; zt`g!cS4C$i-EdUFb9t{nd50#l${9cC{Z);tK)(#gh#caMJ$wh z`HE*f!9WIC!*UKV@$_6iV>1lQwS7S_y*51&1FQ+C=j zGzivsP+88-6|L2-+Mie8(e3{D{Nuk*HA+WzOxf?9RWpoFqYzf>r*9t*;yUqZb)HvO zpN|@jkEKwf&ySa-xF_51s*>+cK~SoC`=fS`dlI~xqfQ9L(4}Dwg)W;In^ z=}LhY=|}pk`?MzwP04jdWxuhV;_L7(HYTT;bT!*at-BGx*7zEFUS38M>q>XQ2tawx zHR!>&OxJ*FT9mHOIJL}rOvivCE?J3fb+iHWmNgY54@jS!nDEb#Zh=%LEk`TPm z(?jO_%m4X$DTp(b6iRo!Ep=n)pP%qM@EGRfa*{Pz)E{)e0-M$Xhn|30*r!!iUMz%)wN7Ip2B|xl8_K$ZS4t=q_KoFTsHaYr+|Kj z?b}uFzv*vRSOCKqXgThC1v%$afcq}CF#>O&*wSwAR08c{n5uMO)g4u7|}F( z5>M#EG67#CAWb;h--~~gf6eb*6)mBzG#EU!KE8dAvZ#KNN7(Zs$AfHBMk#MkdZG?W z9j@Xsz>^m_q~MVI&*|&+wlg?plPGuq%qjz=V~M^g8njX&*%}43nAoM%JEV9j!G2U6 zm8~0@;ELsCF1>}Jr&UD3(~r?7d3K1mM=(dn+(&1opRX(b8~iSfuPdVs{e9ISCeHsj z0}kZL_DUCk+e@@2WPXI(3iE#zi;l~P>%45CplBUe8ushgo9LiH2GHv2$Ns@Z(JL`2 z-&WTRmKhZ5l$VN?3ALPS%a;CumGARQbQXTo4`nw{QUUeWmE=&lVwr;$2p2V}C#^Ovn%1ilt> zATK700Bq8bu3tVvKY?;E;SCRAH)ce=z=}8=iDa7;b)hB|kXJ~xr^(Ml1bZ_viL(q< zImksp#oH`lCkE7x4K=mXcVQ#3cFFC-C$KLul$dn0Coto+2?Z)!)zl6UjoW)V|0r_S z+h7ROU7)YFAD7WKKHHm9&R@e~g%M_+?+*uks>!i0J^mQIQ>YXKSHk|Re$e1$1#jy2 zTOwozcy>P;NaWCDA3Xf?`#1;FVd}z5D>6}UBQ7#mLgUL=$`paML_<7J`9es6&xJN= z{E;wNUyP;?u9Nv3=v9*lbi~d15L#m z7jHPN65lNTAv0DSefkuK_vji;TU~NUyBUf#X&Q~kPo^dct{3duVF>6D^d_)8fC>ra zjIg?8>a);b#}V&ot>6Tc66uer7nFeh-qw|luUo5aGG0}pgNip-4~>`8QkiisOB}sk zA>VFZk5d;LKCf{H&QTp^`RBG$9h3)MjZm{L?VZZEN7{k3$N<9(8kv@{$Vm!7b58-a zx&#nmtpP<1-G%gBh!77eOH{on2kx@(v!Dx5J7?O6Llr|I9Zss>v2O#FZ-9-0$C>w3>~zDBLWPdF;K#v z$Wo@STPnwo{{UPgGSO}t8Z}s^ODR~9&MADSGpTg;GW2y z3?bXc7NLj1J@IX!dyBJX9Po~~dkcb-3<$spwB&bD63&G*uXie`0!j0^BrR$2c79;t zJQLIQ|7E!)f#l==G5)Gqvp?j)ej*hw5oz$}xw|Dvz`YNvBWu#uc%^w{f zQ&7XjlfwGMdsq_=pJ$eHNd>TbrpjK`%XbB#uxaF2k^Nt*u~OA$8R_eHNDdZgmwMw zXgQZ8%<)$$Ey-a`MkWE1_7@t^Vf#x$TF{v6dG6j+s5?fjlHeS89>auDD2|0ytcc8nO2-ZqRKZ-IJsClihPZK_}vOxsckW^k!6;iBJbRMdVra`#kZ zo*DshK||y$U=4NY()mjkhCiQC!*O8k>1~()0F9vvD9RO)fgZPiUZ!uR$dAk38(O4& zh~X9hnyjyrsNJ&fOdwcEH_H`%nJjocYmc9X6g=6g1Z;pYEOHPpO#gI?Ke|xhnF&Lf zUFp-`uF`}5_5c1<9#J~@%8GuT`f~NWFvRoXgku|V?os~}*J$O6EK}t4dZ;v)w#N~&L5`-S#}}FCs}1-299+`|eM3noOV@=a^Z{3&z{MYClz68u42YlN?Jl>` z!R?*>0phtRkP`H?JydNEfkg2Wwy146S9Fz(R#MNG`rP;J(*SCi*02nzJ{H zLoV_t(`T1n!n?_3^@vOHAwmWV3!lL7H77gVXnf&9ughOUIAAlnFY-S~`y2COk=~Pp z_f3_bei^WG1-`o6gL5| z9Vbc({OoUGAIn@u23uF+8ji8EXGB8affpqVL5nvy@S=rgHyNReD%v_=PzWE2-` zz{Ed)A%I6nN1QHqG9c@zp$@E*jG))~i&PZ(e>J_p;iYr)#*SC~Mwd3AG3{ZgW|0;p zJEI)o=zsMY(!tixZRlSN=PgQ4prDS+?>5s{P`IYM2f#nu>^~m2$@{1d&Jfz_8}u)LD4yI(K3|<= z%_U3&N!IT!Z}z9qBV|wUf|(#T-i>0in54)B*V$-GX+~<&v=`1Tm{kWDwdzDWu?-&(U)&w5i{5<+vSTu7`P#C3-Z)ofE(vtTcR#gV4&)WD6sG= z(#KhdMwCqR2>^Wh?%V{YgjabH%iR#V)g5jVXiw3j5ritaD#z09O3Y)2He0I zFoSylE;4umdIfgLUH*bvCN-nQ#&9wp1%z4UBP#q(-2xmk>rKIK_{Q&RYKWpSI?d~J z+DKiCT@|2Lxx1k6U~-F$pDjpA!iFr>lfYl5RKsOWvPl@*+c~Ar$eF4RSU7${_^(%h z)8EH*`N!EgqX900imlD1wFHSv-0Nc3JyaaUGqF5))85!oP%PfNYOV6*a-Cu4#pEa8 zxmtkvAH#JBiBJ9T65H%p^J$l?ol zu3`V}FwxOFcTB!pvb^~_pv{`!cC&ogZbxpMAq0+o-ekb)x8x3MC|*^j=gp!8Hl0I4 zGV{8L;onIY_E+3stpO@<433<0|JeGL)x4>5|{XZmr8MGH-PU86eOG@+U9{y z7H7uej%FPP!HJjnfVK~v1Hdx-6Umxs9$VH4_Ro53zsSX6q;slAu|5-vE<7^uTQi=ZzB zudf}$^qqo{%IYCDNYk4!K$IJoX|8G0<+kGwD{h_!eJGxjEHW#Y@sBUV!BMmi6>4ec zRHCtt3mj+lncFbzkf5aE#4nCa=(!}HJ*(W-oNnH)4$a5ZIj51anr}h#gDrh`v-YfP z3*cJi{l7=Z%9KQI0e3Y%Fb?wtRUEtG(Vh@k2b#!-Ri3pL`Fnm|dio}=K7)IrLQvWc z6sD4p6+XY`>8a|ue2$pMjWSB$bahv^9&8ZSPPBGQtdMduzqr*l0mnU9>&>T^oH4~v zakG5-i0bUToAHqqFa`m+BVZ10A?w&UUK$|bTMX0V#7)#9BB}s?I;cgJtcU_l`bZNK&COk$DzHAy z$IG)SL<4Mh^6#UF;i;MepEZ{3>m8L!){UCBLu`h9Jm+~5lPr?Y<`7?Vm18H|7S25@ zm*={KrcUq$@_vIc8B|%T2Prk6`t&XlUgxsPeb3#`AM5-&&l9+Iyi6hX1^gV)kb|ct zSYe1w0Fu`VD4YGZd9C7Vu1@_h!ouM_j;Z;A2yj&_@wx)D&kKGixb$zLtX5>~0mOR& z?mxiCr!tm@B?S%nF7`awgrK!VZUV`TulC+~GYhG0O}!IEC{InGivTtn$e-pp$fUZ7 zMagQgd<35Zsue3n_~m@58bM)4Wfz@dzBt=*nHQ6O^Ly)Zjz8pvzMJnwA4Ajac}@Ks z1sZ-wcE3W&j0vk|TiV{X+F+=T1~kI;m|8aq1RY!S?a@J>a zQ|E^|TP|n*NdSE!mKLg|QhfV@xYPnid)A~g!uLhzwbP>@1}v-B=b{}0v{x$nn0S4a z`QzdaS>uyt7#9px&i~A;ou}T6tk@P+dWD&YY!X9^;n!I`%Y*nBTnQ0K|(d6dHDmqJ21 zOy|<%$Xi0wu(x94pvgGKGS^RXXa0WxLEDRIC%CnHiP%|C_vsx6QSBrw-;WAx$j~HA zy^6~~PN17eZAjo3b&?0hpQ5Q@JVY{{J+Pg$nhwb=Yoth3M-$mO|J@>?x?N$MHcyp1NVH05I!Gzp)A@5{*8I*FYSf54GW5Di z^08VTOYv!rf8EEH0)Pa2gi9cY;zw(~-&>jj9YI%KAHRLUk{bjR&t;c@i5At8n}ks0 zbWr~<6^nV!)0WTri;5E#_$O`PVJAR8>nNv3j@00ruSyc-Soopoe5xT2TSuNg8%F$Gc$>5HFx6-^JBGfu^(^csv%Smqc;Xs6?*QcR;G4FD_%F^)u%8C7k%bW|%9#Rn zc5<_VHlHayrzf0L{7fI9)QzZ5%c$S~)@c z4`7|a7BNfYl(LmW{nW;hT*{G1;==8~x9duCUy}Sm_^j+lG7xlKuGYfbrih76PnT1b zfY8_|$il`^@({g^A{I@_^iJg8qXZc+P36*Zg&;gHqt0@K#;?c5*Y)olH+|1$qQ43N zO0vp_3!3xoG&qal&85CBMqH3Vkf*NrrO`MGbO5FRC$k+$Eaw5ldTzK${u9zSky7{IE(fp|p2P$CE6~F-r@=#*Ras$mE z`!sUh&SI@CtcNe`66EClrJSsV=eI@{ei7^%j%rxR2NB)%KNXDvllLA8tlYTOO%<_{ z5#dUKCH^6!S#6$X8@cgOWMxL{0`r1sbE)*ZUO#&(U`2_8wkcK&A-adiO=O(&<@zGX z-ID3cCxn7n2D}qHmEIlBT5RB(MT5%4UodpB9Fq+Vcl+|f^zEoEy00TSNrh=Rj8G-Q z=;!kbr}dB%q|lSAI%i79Ab&|JOtI{->pr-aso)V+-(j`Fyp zlqcTU%;b~)x>AqeQ>xLsY9+M2{jS2>;?5NpwTJCfLKq*VyF4uJI1o1umMo4XLNCa0yYnzQbSTgo} z9RSL3PvLBoRiCxbtZrK#(sm1Ev1E>Vif6FDbs*mvhj|LN02j^|i&$+SRZ_Ha!uVp&#=1Z#ag`P#E+h zE)83Ph>|_Bwgc)wHIGme7ZfF=t z>K*FD8z+^jv3z2wWKKA&D)M`5dV&f^n0dqRpC^}79)3%bw}cnS$A2;aHb@50Np8kVlXc|2V!P_uzea|L@6|k;qX>g#QN}Ccd$+ewn2CwF z#2U#-ofiXC024gM(3*OgK&RlTnZS=e8*W*}OA?HLXizzwec%X=l54bS<}xgCex_2( z(vBcaF4&KSXBgRjS&qV-0*x5oA%tbPgP_~NZ%C2V+0Sh$F91K>dyHa(;awPYQu7_~ z!IJ3+X62MW`~YL6RwhIK-r&J4_kXL z+}V9qOfVqH?$p1^-S*@9oAw_d>Q>RC2$Yth{PRk~LuN!~C{rVL^LZCl#YyJ3 zJ47Ow(dd2Viq{47)0gO~dQwW=*(0DSGfA~U0@^KYu+fJqPnmye@N{xK(s~g2#6-@6 z-gURrYPYeG@yVh;G;PeM% zlfkeyto;Ls0;!k^fi|99D!)|KnD&12yjx!bvmvwNcZSc5V3#T;#r-N*4!7!VhDw6| zWEps?|7Lv>7xrsWdEB*z8TmA*j_I-X{e{N7=}d9iY6C(W+qM^O8c(fy5M=}AWMN^V zyU|aM+(~LOuQxVSVf(08%V~D*F8+sVcm-tR$0z!qBdW2QcaGol6kE|N0BE}aq_&rZ z#6bC+N3}D&rAjKMBc9(O&mQh3AX7rkhh=w}@~ diff --git a/proxy/static/popup.js b/proxy/static/popup.js new file mode 100644 index 0000000..0995775 --- /dev/null +++ b/proxy/static/popup.js @@ -0,0 +1,28 @@ +/* exported Popup */ + +class Popup { + constructor() { + this.div = document.getElementById('active'); + this.ps = this.div.querySelectorAll('p'); + this.img = this.div.querySelector('img'); + } + setImgSrc(src) { + this.img.src = `icons/status-${src}.png`; + } + setStatusText(txt) { + this.ps[0].innerText = txt; + } + setStatusDesc(desc, color) { + this.ps[1].innerText = desc; + this.ps[1].style.color = color || 'black'; + } + hideButton() { + document.querySelector('.button').style.display = 'none'; + } + setChecked(checked) { + document.getElementById('enabled').checked = checked; + } + setToggleText(txt) { + document.getElementById('toggle').innerText = txt; + } +} diff --git a/proxy/static/snowflake.html b/proxy/static/snowflake.html deleted file mode 100644 index 84790ed..0000000 --- a/proxy/static/snowflake.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - Snowflake - - - - - -
    -
    - Timeout... -
    - -
    - - - diff --git a/proxy/ui.js b/proxy/ui.js index 54e0897..f99affa 100644 --- a/proxy/ui.js +++ b/proxy/ui.js @@ -21,23 +21,6 @@ UI.prototype.active = false; UI.prototype.enabled = true; -class BadgeUI extends UI { - - constructor() { - super(); - this.$badge = document.getElementById('badge'); - } - - setActive(connected) { - super.setActive(connected); - return this.$badge.className = connected ? 'active' : ''; - } - -} - -BadgeUI.prototype.$badge = null; - - class DebugUI extends UI { constructor() { @@ -75,104 +58,3 @@ class DebugUI extends UI { DebugUI.prototype.$msglog = null; DebugUI.prototype.$status = null; - - -class WebExtUI extends UI { - - constructor() { - super(); - this.onConnect = this.onConnect.bind(this); - this.onMessage = this.onMessage.bind(this); - this.onDisconnect = this.onDisconnect.bind(this); - this.initStats(); - chrome.runtime.onConnect.addListener(this.onConnect); - } - - initStats() { - this.stats = [0]; - return setInterval((() => { - this.stats.unshift(0); - this.stats.splice(24); - return this.postActive(); - }), 60 * 60 * 1000); - } - - initToggle() { - chrome.storage.local.get("snowflake-enabled", (result) => { - if (result['snowflake-enabled'] !== void 0) { - this.enabled = result['snowflake-enabled']; - } else { - log("Toggle state not yet saved"); - } - this.setEnabled(this.enabled); - }); - } - - postActive() { - var ref; - return (ref = this.port) != null ? ref.postMessage({ - active: this.active, - total: this.stats.reduce((function(t, c) { - return t + c; - }), 0), - enabled: this.enabled - }) : void 0; - } - - onConnect(port) { - this.port = port; - port.onDisconnect.addListener(this.onDisconnect); - port.onMessage.addListener(this.onMessage); - return this.postActive(); - } - - onMessage(m) { - this.enabled = m.enabled; - this.setEnabled(this.enabled); - this.postActive(); - chrome.storage.local.set({ - "snowflake-enabled": this.enabled - }, function() { - log("Stored toggle state"); - }); - } - - onDisconnect() { - this.port = null; - } - - setActive(connected) { - super.setActive(connected); - if (connected) { - this.stats[0] += 1; - } - this.postActive(); - if (this.active) { - return chrome.browserAction.setIcon({ - path: { - 32: "icons/status-running.png" - } - }); - } else { - return chrome.browserAction.setIcon({ - path: { - 32: "icons/status-on.png" - } - }); - } - } - - setEnabled(enabled) { - update(); - return chrome.browserAction.setIcon({ - path: { - 32: "icons/status-" + (enabled ? "on" : "off") + ".png" - } - }); - } - -} - -WebExtUI.prototype.port = null; - -WebExtUI.prototype.stats = null; diff --git a/proxy/util.js b/proxy/util.js index 387f0a1..88a9bf6 100644 --- a/proxy/util.js +++ b/proxy/util.js @@ -10,31 +10,21 @@ Contains helpers for parsing query strings and other utilities. class Util { static mightBeTBB() { - return Util.TBB_UAS.indexOf(window.navigator.userAgent) > -1 && (window.navigator.mimeTypes && window.navigator.mimeTypes.length === 0); + return Util.TBB_UAS.indexOf(window.navigator.userAgent) > -1 && ( + window.navigator.mimeTypes && window.navigator.mimeTypes.length === 0 + ); } static genSnowflakeID() { return Math.random().toString(36).substring(2); } - static snowflakeIsDisabled(cookieName) { - var cookies; - cookies = Parse.cookie(document.cookie); - // Do nothing if snowflake has not been opted in by user. - if (cookies[cookieName] !== '1') { - log('Not opted-in. Please click the badge to change options.'); - return true; - } - // Also do nothing if running in Tor Browser. - if (Util.mightBeTBB()) { - log('Will not run within Tor Browser.'); - return true; - } - return false; + static hasWebRTC() { + return typeof PeerConnection === 'function'; } - static featureDetect() { - return typeof PeerConnection === 'function'; + static hasCookies() { + return navigator.cookieEnabled; } } diff --git a/proxy/webext/popup.js b/proxy/webext/embed.js similarity index 60% rename from proxy/webext/popup.js rename to proxy/webext/embed.js index d8d6464..e1364bf 100644 --- a/proxy/webext/popup.js +++ b/proxy/webext/embed.js @@ -1,36 +1,9 @@ -/* global chrome */ +/* global chrome, Popup */ const port = chrome.runtime.connect({ name: "popup" }); -class Popup { - constructor() { - this.div = document.getElementById('active'); - this.ps = this.div.querySelectorAll('p'); - this.img = this.div.querySelector('img'); - } - setImgSrc(src) { - this.img.src = `icons/status-${src}.png`; - } - setStatusText(txt) { - this.ps[0].innerText = txt; - } - setStatusDesc(desc, color) { - this.ps[1].innerText = desc; - this.ps[1].style.color = color || 'black'; - } - hideButton() { - document.querySelector('.button').style.display = 'none'; - } - setChecked(checked) { - document.getElementById('enabled').checked = checked; - } - setToggleText(txt) { - document.getElementById('toggle').innerText = txt; - } -} - port.onMessage.addListener((m) => { const { active, enabled, total, missingFeature } = m; const popup = new Popup(); diff --git a/proxy/webext/manifest.json b/proxy/webext/manifest.json index 75475ae..3b96055 100644 --- a/proxy/webext/manifest.json +++ b/proxy/webext/manifest.json @@ -1,18 +1,18 @@ { - "manifest_version": 2, - "name": "Snowflake", - "version": "0.0.8", - "description": "Snowflake is a WebRTC pluggable transport for Tor.", - "background": { - "scripts": ["snowflake.js"], - "persistent": true - }, - "browser_action": { - "default_icon": { - "32": "icons/status-on.png" - }, - "default_title": "Snowflake", - "default_popup": "popup.html" - }, - "permissions": ["storage"] + "manifest_version": 2, + "name": "Snowflake", + "version": "0.0.8", + "description": "Snowflake is a WebRTC pluggable transport for Tor.", + "background": { + "scripts": ["snowflake.js"], + "persistent": true + }, + "browser_action": { + "default_icon": { + "32": "icons/status-on.png" + }, + "default_title": "Snowflake", + "default_popup": "embed.html" + }, + "permissions": ["storage"] } diff --git a/proxy/webext/popup.html b/proxy/webext/popup.html deleted file mode 100644 index e3ba2f5..0000000 --- a/proxy/webext/popup.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - -
    - -

    -

    -
    -
    - - -
    - - -