From 63cf65d5d90f66b1d40ccd178fd7397cfdd6afe5 Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Tue, 6 Jan 2026 15:32:06 +0100 Subject: [PATCH 01/12] fix: Remove not used Commit for semgrep --- .../erpnext_sumup/doctype/sumup_terminal/sumup_terminal.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.py b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.py index 788ceb9..d1fd0b1 100644 --- a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.py +++ b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.py @@ -554,9 +554,6 @@ def refresh_terminal_statuses(*, terminal_names=None, throw_on_missing: bool = T title=_("SumUp terminal status update failed"), ) - if updated: - frappe.db.commit() - message = _("Updated {0} terminal(s).").format(len(updated)) if failed: message = _("Updated {0} terminal(s), {1} failed.").format(len(updated), len(failed)) From a06043c6c0662e3d2f5e3ed4b55aaf72ccd940ac Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Tue, 6 Jan 2026 15:37:02 +0100 Subject: [PATCH 02/12] doc: Update support status for v16 Beta to 'Testing...' --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d05e293..06c0247 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ In the event of a refund or return, the amount will also be automatically refund | ERPNext | Frappe | Support Status | |---------|--------|----------------| -| v16 Beta | v16 Beta | Coming soon | +| v16 Beta | v16 Beta | Testing... | | v15 | v15 | ✅ Supported | ## Installation (Frappe Cloud) From 14551633e4419f1240f66910a060343306ac5f8c Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Fri, 9 Jan 2026 18:59:31 +0100 Subject: [PATCH 03/12] =?UTF-8?q?fix:=20Fixtures=20Import=20behoben=20durc?= =?UTF-8?q?h=20hinzuf=C3=BCgen=20fehlender=20Number=20Card?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erpnext_sumup/fixtures/number_card.json | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 erpnext_sumup/erpnext_sumup/fixtures/number_card.json diff --git a/erpnext_sumup/erpnext_sumup/fixtures/number_card.json b/erpnext_sumup/erpnext_sumup/fixtures/number_card.json new file mode 100644 index 0000000..f18ae62 --- /dev/null +++ b/erpnext_sumup/erpnext_sumup/fixtures/number_card.json @@ -0,0 +1,22 @@ +[ + { + "creation": "2025-12-29 00:00:00.000000", + "docstatus": 0, + "doctype": "Number Card", + "document_type": "SumUp Terminal", + "filters_json": "[[\"SumUp Terminal\",\"enabled\",\"=\",\"1\"]]", + "function": "Count", + "idx": 0, + "is_public": 1, + "is_standard": 1, + "label": "SumUp Terminals", + "modified": "2025-12-29 00:00:00.000000", + "modified_by": "Administrator", + "module": "ERPNext SumUp", + "name": "SumUp Terminals", + "owner": "Administrator", + "show_percentage_stats": 1, + "stats_time_interval": "Monthly", + "type": "Document Type" + } +] From 3c6549db91e0b968a3f186091a0980d780686c35 Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Thu, 22 Jan 2026 13:50:15 +0100 Subject: [PATCH 04/12] feat: Add Button to remove a terminal from the SumUp environment --- .../sumup_terminal/sumup_terminal_list.js | 64 ++++++++++++++----- 1 file changed, 47 insertions(+), 17 deletions(-) diff --git a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal_list.js b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal_list.js index 1a38e40..7410f65 100644 --- a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal_list.js +++ b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal_list.js @@ -275,6 +275,26 @@ const show_recovery_message = (result) => { }); }; +const ensure_sumup_enabled = (listview) => { + if (listview && typeof listview.sumup_enabled === "boolean") { + if (!listview.sumup_enabled) { + frappe.msgprint(__("SumUp is disabled in settings.")); + } + return Promise.resolve(listview.sumup_enabled); + } + + return frappe.db.get_value("SumUp Settings", "SumUp Settings", "enabled").then((response) => { + const enabled = !!cint(response.message && response.message.enabled); + if (listview) { + listview.sumup_enabled = enabled; + } + if (!enabled) { + frappe.msgprint(__("SumUp is disabled in settings.")); + } + return enabled; + }); +}; + const run_recovery_sync = (listview) => { frappe.confirm(__("Fetch readers from SumUp and sync local terminals?"), () => { frappe.call({ @@ -297,24 +317,30 @@ const remove_selected_terminals = (listview) => { return; } - frappe.confirm( - __("Remove {0} terminal(s) from SumUp and delete locally?", [terminal_names.length]), - () => { - frappe.call({ - method: "erpnext_sumup.erpnext_sumup.doctype.sumup_terminal.sumup_terminal.remove_terminals", - args: { - terminal_names, - }, - freeze: true, - freeze_message: __("Removing terminals..."), - callback: (response) => { - const result = response.message || {}; - listview.refresh(); - show_status_message(result); - }, - }); + ensure_sumup_enabled(listview).then((enabled) => { + if (!enabled) { + return; } - ); + + frappe.confirm( + __("Remove {0} terminal(s) from SumUp and delete locally?", [terminal_names.length]), + () => { + frappe.call({ + method: "erpnext_sumup.erpnext_sumup.doctype.sumup_terminal.sumup_terminal.remove_terminals", + args: { + terminal_names, + }, + freeze: true, + freeze_message: __("Removing terminals..."), + callback: (response) => { + const result = response.message || {}; + listview.refresh(); + show_status_message(result); + }, + }); + } + ); + }); }; const force_remove_selected_terminals = (listview) => { @@ -350,6 +376,7 @@ frappe.listview_settings["SumUp Terminal"] = { add_fields: ["connection_status", "online_status", "activity_status"], onload(listview) { listview.sumup_debug_enabled = false; + listview.sumup_enabled = undefined; const refresh_action = () => { const terminal_names = get_selected_terminal_names(listview); refresh_terminal_statuses(listview, terminal_names.length ? terminal_names : null); @@ -376,6 +403,9 @@ frappe.listview_settings["SumUp Terminal"] = { listview.page.add_actions_menu_item(__("Remove from SumUp"), () => { remove_selected_terminals(listview); }); + listview.page.add_inner_button(__("Remove from SumUp"), () => { + remove_selected_terminals(listview); + }); frappe.db .get_value("SumUp Settings", "SumUp Settings", "enable_debug_logging") From e9e11eb77e2293b7b207adeffd93a8b73c89aeaa Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Sun, 25 Jan 2026 15:06:08 +0100 Subject: [PATCH 05/12] fix: make payment dialog static to disable closing by mistake --- erpnext_sumup/public/js/pos_invoice_sumup.js | 1 + 1 file changed, 1 insertion(+) diff --git a/erpnext_sumup/public/js/pos_invoice_sumup.js b/erpnext_sumup/public/js/pos_invoice_sumup.js index d51c4b8..2457f41 100644 --- a/erpnext_sumup/public/js/pos_invoice_sumup.js +++ b/erpnext_sumup/public/js/pos_invoice_sumup.js @@ -407,6 +407,7 @@ const sumup_show_dialog = async (frm, pos, original_submit) => { const dialog = new frappe.ui.Dialog({ title: __("SumUp Payment"), + static: true, fields: [ { fieldname: "sumup_status_html", From 4b8f94eed75df8d3ae2c4bc4a456fcac6e0535c9 Mon Sep 17 00:00:00 2001 From: RocketQuack <202538874+Rocket-Quack@users.noreply.github.com> Date: Sun, 25 Jan 2026 16:11:06 +0100 Subject: [PATCH 06/12] chore: Update to version 16 and migrations steps --- erpnext_sumup/__init__.py | 2 +- .../doctype/sumup_settings/sumup_settings.json | 2 +- .../doctype/sumup_terminal/sumup_terminal.json | 2 +- erpnext_sumup/hooks.py | 17 ++++++++--------- erpnext_sumup/public/logo.png | Bin 0 -> 969277 bytes pyproject.toml | 2 +- 6 files changed, 12 insertions(+), 13 deletions(-) create mode 100644 erpnext_sumup/public/logo.png diff --git a/erpnext_sumup/__init__.py b/erpnext_sumup/__init__.py index 88349fd..384aaae 100644 --- a/erpnext_sumup/__init__.py +++ b/erpnext_sumup/__init__.py @@ -1 +1 @@ -__version__ = "15.0.0-dev" +__version__ = "16.0.0-dev" diff --git a/erpnext_sumup/erpnext_sumup/doctype/sumup_settings/sumup_settings.json b/erpnext_sumup/erpnext_sumup/doctype/sumup_settings/sumup_settings.json index 0ec5c8f..2d70833 100644 --- a/erpnext_sumup/erpnext_sumup/doctype/sumup_settings/sumup_settings.json +++ b/erpnext_sumup/erpnext_sumup/doctype/sumup_settings/sumup_settings.json @@ -112,7 +112,7 @@ ], "row_format": "Dynamic", "rows_threshold_for_grid_search": 20, - "sort_field": "modified", + "sort_field": "creation", "sort_order": "DESC", "states": [] } diff --git a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.json b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.json index ef1e2a5..986b030 100644 --- a/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.json +++ b/erpnext_sumup/erpnext_sumup/doctype/sumup_terminal/sumup_terminal.json @@ -104,7 +104,7 @@ ], "row_format": "Dynamic", "rows_threshold_for_grid_search": 20, - "sort_field": "modified", + "sort_field": "creation", "sort_order": "DESC", "states": [], "title_field": "terminal_name", diff --git a/erpnext_sumup/hooks.py b/erpnext_sumup/hooks.py index f42b30b..a86dafa 100644 --- a/erpnext_sumup/hooks.py +++ b/erpnext_sumup/hooks.py @@ -27,15 +27,14 @@ # Each item in the list will be shown as an app in the apps page -# add_to_apps_screen = [ -# { -# "name": "erpnext_sumup", -# "logo": "/assets/erpnext_sumup/logo.png", -# "title": "ERPNext SumUp", -# "route": "/erpnext_sumup", -# "has_permission": "erpnext_sumup.api.permission.has_app_permission" -# } -# ] +add_to_apps_screen = [ + { + "name": "erpnext_sumup", + "logo": "/assets/erpnext_sumup/logo.png", + "title": "ERPNext SumUp", + "route": "/app/sumup-integration", + } +] # Includes in
# ------------------ diff --git a/erpnext_sumup/public/logo.png b/erpnext_sumup/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..88def3bedea17dad3169fa6de3eddb497d17dea1 GIT binary patch literal 969277 zcmcG0g;QH^uy%qwp}1?27I$|q?oKGhiWhgMP`p4X6xULUv}mzFDN-bXQoKl!1{$2A zA<38Dcjx{IcQPlLyqV0rv->`~&px~7q?;J&kdrWx0001TJzY&R000;H-$g`#UBL@4 zm&bkpgUoc)fh*qyDX}#FdvV7=uJ8#el1}|%&(OZh!VWcO;DKy04 z_bBK+4l#?`p3l7*;D9U@6X%KZjOthQ;KcIL&IC@1?m&*w^1p>T0>jBl|NM^riuv=0 z3B-U;bkoX0&I085+FeN;L!I8(;&{~(tEH1q)4il*=X#Y&G$P%*F8x(?I2p(m_fM?< z?r&50)r!X);&N*nuZAZzgPP~C5^q0PetB(e1PZ0FYhLV;asq?+$vr322^QYAgR0{t z8Ok3};xH~bQWO*qbAjO?KH_SA?Pt`Pcevl6_0GIx*>~ZXZkaPgSX@fZ$;R+_*a{5_1dr8D-(Sc{YNwM z<4ig&D*AUY?CH5zRm9j!E751s_Udr6<(3y*V?TOl-wu07H02CmC864X>Y%HEs8orn zJhwm7^?$y9m_s!dSJQIaX%yK_xMM`#Al$M8>S!EZ-~5c#;MfC=#;~ybdbvYX=9lKZ zB)qc}x1@ 7mO#F528s45DmTx+<=B$OC zpE7nB0N_jkiOvjsu@MH`=4hda#YHGTxi3*F&Bx9FX>Aam90E1+k}{@DPC`4WiV#L3 z8-5DFQ)`$X_FOg&5v*DFb8T3|_R2;#HYmzt{xB*c4<&kHcSw9B)miLC?fKo><`G+W zmx!Lo%SYugSGK|SLLGKhBFq8Gt{g;Ui5zvLvuxt^JZL!rH+{7TlEw5fXfDq24Ci}X zeeh<|=0UF1I)%6hNl%*pd}rg6KF3Lo+(9aw*R>|f!->QEV`U0q0f 8Xj1^X@~V103tXt>sy@A9!zQJj7Z0k&>$q3 zmNvd7wD`MweIXduwFI)EBmdWX*zI=J-A-Z0T>P^vLwUzH03-v8M3&(ro(&7XUV)d5 zG72<5I=Zdf{CJ+Mw~Erf-)QVilrGodd!?PWt-KwcrqgmF(|J$6>} s zGJjzB=@zh>XKZc`KuJk~JsX@*H9}4ch9R|)j#VrV;CGy6I$fg26XMZJG-@RT>|ek9 zf*UD%Zp7xvo=37ecmV~As)F!l6TZXUP1&;*9*HJL)X2v$a}AOM6f0cASfuT-Lro%a zRUbuYiNK^BZbvf8fMOo12M9)_&IoRB=xX>~SozSJGZIE0sxJLFQ0?{`dyK6g`j513 z$fvcwR40GRz-QiX%RMT_VF!1TgYy97d{#)IgkX(N!$O6QY2(WmpE@n1g{Szl{(gE# zaMuJt?{Lg29M1%-OQLts$6AEQHIjX}++#ZD?u>)Pk8o_knlq2_e#WuUfDsFFf;ql; zP|Kq-#(-Bf=J`{nG!p ?mORv8si9>eV`m#mCRn#()>Lg>!}@O!djg%3#7K;l zP&_RT8>8mNN-2Eh;W$xIQ9b?L8SCrP>Np<(UvcV))Z}T56vNq E zv|ldC{&=L>$g}rJME=+3s~Bomg}MSyf%W0nVP7V`qTF!oERjD4M3%edr@2oxO?Deq z@+I@t;YO~TEjekq51VP@zRGcAGX}CGje3CZZ;mRq6gF>#W6!VFdV=5-1W7;&N~A0U z+1&GM(a#h~HOi%il_On*+tr{{P8K3;mREb5fENBLstHl~hDAOb3yUh@^XWWQ*VqIX zmaJR+O8sACWUx&TL1evouyD9Y!S}N4#4YNze5S3CtFfb=seLB76L6eC>EEf^p9atZ zy*81E^bRu;yQWgWQefhnIjqbXh}rOUSlt}S5Q!n#M5 S>A^Q>JX{8tUGW9@Nn{=4=(Ew|q|1T<>%TL&~F# zoAD;!aNaKCEmufskAHC~`{&+sK$q-|f#MS)$BzV8zukJ2X}EUb`q)X&+?-@6pv74& zvQFU!*Q!Q-4O=;G%ng?pi5x%olZ8YTSXfzIWdDw=n(DuPS!&WcPZAh{A!#{wR_|UP zrp{4$Wvzk|FAu*rRSZQDI7Oe~AD*0W83|^Z65$l$Mi6Y-s0!pc0TPEG*B4qp7K4<% z^_u{Khx2EJs`;t4&A>FpeVxffV;*Xr`as1;pXi&oOj?tdyoZ%%${%NR?UmXe^L(iF zMzM`}UE_TJ;`^$M2*BYJGSo<|YWj(<9TGa8l1apf8&`LKq(fZU87GWF6H&6WRd1d| z>2y(?A~t`0LqY~pWHzIzPX>|yxp4dHXzgbIYP=1q{ti^yMf{8?lY%OARiHtgbiIsC z+cX)Ab5Sy2b1n~YhctldHBSPG`pHdz*EjvBZ8i7 &;zK&`MMxJ-Q(YTn9}V66FL*+ zNu2b-h?gko`4HN`r0GM(7mz@uKGR1l4l`O4SfO{l8DbzEnY5AnS{2nJ+~Xx&Jw)df z74%DLX}nXwf4W%RyS_>q9M?p?c3Vo3kI4FPyW9TH9{(3oI@oEG$qd_Ns`a}0N~f7@ z!VJ0(OeIP%P1B*uz9aO)+vH@!PP=HgQg53ZtE4npv#Y( uwdm_ zOOeQGlB4Oi#oMhUOKV}S _#@4CCkHW|TjwhB(f z)`t<68PxR&u_r8Bzq~{@;> _kfp5b(hB@WsVT*`r+NtEga^4?#(H=z@I z`snjs4)-P3j>+VWOyj=@$7GLn!`g7Dy!O5A5lZ^9&vl?($?G1$k03Z?hh6%QxT_e( z8Aw<(0Kea*VV;gX&8ro`jZgSNgiAgt-t>beCX}vbn2JE>M0+xQInkJ)A zF^Z_~##_$lIri-g=X)Hd*xQGAKrl6j& F-nj6?tEsoi z)BsiRq#NODaWX`KjOsGt*HfDE;tQV-&zWMi-`e4iTh@Hk&6W2fmsNVD=sWGd{?CY#sGLQ&LNci>AO&n$fG9Gm@@N&F7{J{wXqa2GI z_Wkz~H#3_cUaWEmU_!Ji ro0JqDhS@3v*Xr#fR_+fa!p7n z#=yqK_%9GeZGAQu1_^WF^=yC8pbMX`DEvLNJ(k4>(kW#w5u)aL#l`P--W8ky$o?2w z&bxf}Mfxj5pbciyseNbBrg@1M1z4z$HftgJOj@GOP{8zX!ODiIY2gPvFN+!v*$Md_ z&b##v+4t8+XxNSRuDAJmQJCH)?B?d#%3m1ua>d?ZW6Q8S$6sf7*vN$0WtLck 8gkGXeTNL8_0JWjTO^%t`s=f zbW%Ijm>LO74QHR@w=FgxNF{WuR6o>%<)%XQ&Breg(6oOfbHSFLeQ(Z5RBJRJz4fr7 zEoCkz>a0&D!GnM153oGRZcTc17x5dO{n@GYo)zEPFmJ$_R<%P! G+TKedUC4f18K|68z}(sZ6dBy zBq9Y@{iJ$0$(*NKv)ItD;hlA@as${zZNv?SZQdxOZ=2b%YqFohF{o=QN^RAqthR;3 z+*D$FB70?&%36B?#g 3{(?%CP3tn|7 zqxyOB60IDA6{0xA<&uI}#zn^@4hi(RL#11#9Pkd2#5U=N85i1fuO B=lC2=Tvew(FpqnW#dMewDzus};;R>+| zz9vgRtp@*cb)Vmy2x<5Ro*FFYa}8w0jam$!UOzNnFFbhnom^XEib=s{ieAJ=8rD z!N_1_|8dW2pKbSXU1djV+U1?~q-L`% vi~x?J?vmmJ<(%jNw|#De&;3lLd9Kn^V~swR2DCATxw(0t BM 4A4l*gztGu4dkkWek&sxPB*-f(y@M_rHjkWjY==Spj@7`UQjk$|=+ zGl9Q-0xv5G7!jnrLCE7yubE>5!#X(5epN~OMe1;@n*R(TvZW&qL{j?fn?T;tjeHq( zaG#@Q4e+a|Dh+wi7<#0Jkb&a3dVqN=ov(Gf$XQ|23q`)%3P6R|e(H{*)ealZKG!vK zFWB`hNd}sMs#0h;3=hI!g(ns=x>A?S2hUo7OM-(}=I@6rGSwY |Jp)^-BN D_ixcqV;Vv{ >V6sK $S%Cap zzN6VhK?3?!zS!fq2jgJ( Q$$OA_Lj< *;I~y_OLp;zF5pJPQX)%5Qbw4qU=T~9{*zCu$mq9~+ zB- *YPa zjEkWBt3K6V%31>W@qum&hGPS#+OMG7Qo+{tj5z(hC9sI>hWYZB@R6b1FVZse9g>?L zovinyMpt^$h$I Rh+Q#ZX?yonn0_N*{UE zt%7>(xsWo)ifv aU>tHS)m*X03>d&fo*}=TSfkW`rlCL` tb8edF97lnq}nBFVksG2gZt_PiK?cW%wHHJ e6@H;EKjX5nqM`n~ok%S|!-t~uz z(V*au-=#ijA_gyN I(_of z51|kA$z6}WR=xz#l>qK$ALVppWpO$7rD+PiA?P)zIPxX9 BK3`wo-M!k4{-A0k4F$Xw$kw9{H=_Qe=$F?(BN^Rl-!&MNK8N>o7=^qR z+rOsrOyOq(w=!?Fx5hHH4xW=JUp6+JrNAJmMdfh>WwWp{)rk5q{P?n@r*K4pR=lX{ zQ^s1d%=3Z2T0RtC-!k$Zd8p(amv6LA{kWZfQ!~Y2J!suu^6AUD1*=?6N|b3^MMw}M zrfPcigq6-h-+tQ9nZ#AR**itwzQyS1c|tH{fmr;sE#O6{IuitTtoK N-zg3z0Sq=(Sd}lZbIoceti&06tABmnZ9oH9 zl;b}_&iDKjs3g9*iDj2j=}D {Z6D2QLWx;(`fBT=4b*F8+ir4Al$A zI3`42=_<)S?%g{%Ead6nJV>1+{~Z{kyeEb3?LeATHCL;a$uDo(jYLr_Lx@zdsS%N7 ziS0fQqb0LTdQTqhO_9+uZm!aksU>1j{qJNj2ii%Is-n!^d@C%t+^`v;g_SZXsPLN; zqp78NlY@u_6&Py92rRz`RQDH_w}RKmmRqy <}Nd)STw! z;s3_K`9Al25tyk&)XqkmaW(zFu7nsW8K7PIPt7tk-uz%VNNBtGsL)Kbw$hR$*jAK< z1>0dr8u^c!&Lu?=Ve1*B^Q}1BKp?F%>YV;`9J5V%`j3x|@wyiVs<}A&N28$1l4<1% zIB+m>;Qb0hkU*i5`u;-vNR?+TzY9VheV;w$%7d@Gdkou?&y&kKym%93UjMMYxwQM9 z1ywFZG1yeFr7C;0sxJAxUS*Hg;x=kBX2{DUNuE#bN{;w^>F|WKIjs0sgFXzp(y{RM zSqWtKx}jd>;>%-Aq2n6?e7qk@^J2kZlBBd!MPtpa 1vzlh-T>1xxVJfKJ Nb z)Df2w5*=NK((dN(f)p^8BXe9v_lIpNzrTO{XXr$5s1cuveZau~JQsj8m$_@y;;W$V zT>k0)>V?N9mB9;&X+uXxSB>6%> ZB5wXf^-8|*UXI=$FDrZ3= zVGag*Eqd!PRaRZqH&p@|``(-KBIzzzT_gSUbi*;(Zdmp7?_-gjg(Bx+g!2sx`kyg| zW}qeE>6noYr~bW2Fiwi>S>v@(&9K)Kv3O2B#f>%|Hvyg1YlFIM09^6Rb23+X&dk7q zDcuTmqx-zEr5`)$6tg(=K{akQx`g1W?vAnW65Y{hk= z47As+|GC u2kvu`$Pm!`j@bP88F7z_bUSW zk!ScP0EdGFzy9DueDL9Iyz|aG`0jV#z|Vj2F5bWS0fupmQIsHP^ *2wHU5B5{_e%IOG8?b+V!2aUT zeR|o^B4FP+L8skAk|aoy1g%yJ*2Q3(U}v|52M_Py;QlS>4#WNI*IT_XFC5tKzVf=X zTf2xOAI0~CQDg5vi_JGSr2v6V4d84RW(KCpd_zl4%JPKd$^>VWfwW4EO)eParSyDb z#=xFvB3*xMz}GLJWw>>ZgOPt-&H{Bo=IwE}-dnZL>AGNlS!dEZ^KBsluXAWz&Z>{B z8&9qn@LFqF7pDM#!32cbz$F%17?*loIOmYWBP7EiY#ia>?roUR;F0}({CEHDzrhzi z`x*THSH6Nru3v?Mpwsd*Q)8TBUm`k7>w~ihsOL%H$?KIGHho1C5$5sdV^AsLa`L`O zM{1h-TwpcN%Da?Oa6AU|xl=g({S0Upze7YIRf#?`kDakp2Jb%VE6_^kY1b;P1J6j` zto4o%NlP7SyVDC0JEUywJ~Hg!-!tVM5+SH360}y*`!9p|?07|`pmh=F<}K*5?0G3- z+`=(gHhwX&f;k=gbpH8-4leO2cn^kyb1sjT=U}=3v`gci{YYA;sdbRQ7m?h#voPr5 zdT)q`Ev5GRa)+{`qBI!kAPN_pnksDzS=q<4!4v{)I)*WTdv_0U^MhM>>+PT7KY#u2 z@QrVM8}}X@LYpvm9JD(<^mcY&S}i|D3?xZ{?#><#4-XNv+OXC_n*d3YAP52|kT2B% z`)47X-`hOL$2>ht>Uem7j+1NWI6(il0??D>SXjpXTr?onkouiXu)nxHwjS6Yx1Z&l z#5XJd5-@@wz(*h7gdHBFfdAdCoe&plCbwStf^<8VJ;Ze>6SJg{S19)~dk;3JNX19) zIg7H0N{7w=e->CSdnW7C0qekiaih#y=y3(;E9D9JWQy@yt 4eKF=@Mue;}J+HtObQX)64J#n42worSXrlpgA-_{z+S-@I6xOX4S7IriQ z+Y$co4}K5-`p^Cpzx(;u@aY$yN4upx$sT|xiC~n5CV?g&VK1_nmz|n=e7!X~Gy~id z5&Rh|p$JYDq_&i)8VP1*SZi}Ynd3F~eayvqX8FLh#)OAT(oBNFI!@1{wa(k3Wtfp! z3S?^j?@{bvjLy3ZWGVUCdoKLVlfwCqh0K1;lEmfrkR%BnJa~wE_wJ$J@53@<7!To` z?>3Wx=FC}9mu;5K3lG4@1h7ge7-JBIA=>RWc6N5q?RL@ab`gdl!Z4i3J|iNuL-JYp z)y#k_NN EvvC>QY3`SnH(c$bB-P<% -26*p-Tln_3zk}a?@F9Ni!+*km`O%Lsy8jUB z(q-)J?E$2rbO162CTPK03nv5yAqWB_*3SuJOis8-%8xVHO^nYZYqs6yq@}6uTc*#;SsSNgKOy
`lb<)odnpgUf+2J`czXcltnU& z5o@gjuUBjWYc1NH5H3!j2#Dhm0^?ck`~5xwA`I@{LlTc*ha zXRFUW!{HwErK>9&lZr-(6W`LWcnWJ7S}PEFaII3D=qbyx8g>Gy6r5FYVDVZQuvv<| z9`DEwK#~9^0Q!R%gQFovqY;uM@z+fr$PPvk?%unPn>TOb=FOY9bLS3@js|1UYg%At z#Bq!V4<6vwty{Q#`! (u(Pdxf4KKbO6c=p+6asB#rXszK~0+j;JcDs#syNzz!I}Eg@9P~3g zv|Ac1eoyzT_T}sYjd7+(u{Iteu Gcs4 zj{Jho%s{_N9X bch w?j>gI(twft@7SpZzTAEoe{BD*!nFwqP$95HvUu?C$O&iiWsz z_ZE~MAhCy#U%bC{Pww1<{out<3%eF}dRGvbHip9pS`*ssFmI`sk?#4$n>TVQfc?Vc zW10*0>nGh}V1KNf%3wbO_fi1*MX;3ruBeJJ$t9&Sx#`Nr0bT?4&mY)dbslUI>~F#_ znwbA`et`b0-s96qKv^gUzd2}=lwDjL2%fQfr`yJ8*atDgae|LOyahwRUb~GKUw9s0 z`r_;OAO8D)i`QQHB?qaph8&t4 zUO@-f-G3GA7qOMfQq08_@RX_rTXCFSFJL972Pj09{onG4dw~>>lt0!vhB3;&x4?sg zBPdbmkA~ +lq8>CSt;jfkv $bu$yh6Eb~;9yRYIO*%9Hy!kWvs3TpIn)oE}39eE8uVyz{f4<8S`v>-gGV{U>~M z_Z~);(Q36I%D3<{K??~pTJ0`k%VXXH0*neEY3W2=hl1r5GOwk_=k=$bm2J>~{mp{? zb?k^$9R=$W8a816e1QG=?aya}eNqgO#5*6wr}rxgAr=V3HipAKu3Wu@4{!Yn{X6d= zxYR=Ov)^ph(>vc&?TIJF^sb`Yxr{LAAxRvPB!bo*|b1#_6JjV*Q3+jMaML>1q7a z7ylHnPn@?Pl1l&KV*4bd>63X{X;#}Wm9{`?cFR0IA&}RA{p|w#b#q}Ood?zc`^RMn zmCnoOCz?MG>=&JhS$5DUj$n*QBdQKIPM`#61tHq45H=nm8Xch%1Q-qaIDB{)Hi_`q z_3QYTfBZ-I^Z)8k@%%H-;KudqxO};VEbmDJ7>*)zS^;bv`Py*y>D3^>S?AN?3oQ9X zGErn{{W;hlr??lNn94i9O>&wL!2{U^oIQ0wE5mD?M)0et^UQ$J6{jsc*0yQHe=vw) zf)GT&XcXh#y?glOuYZM~{PSD*<*$E*x88gUgV6|sQ3T5jD1sBla5zMN7{OYLIEsM8 zjy(v*19cICqpS;y$)o03&7miEGr7YfOTkCsT0y= VR{20>uZ?RK%d zyNh10hcGm_eEBk>$j`6GZ#;^ZUw#>%d+jrL?z!i1WxtIi0)jB*Dqyb ;HRx2I?>2({ zW!ASkcJoRtXd&~|@%Q&5zML@cyyheOT89`62I#ihur|i-ZVR_Qd=K&H0Q{?8G+_TM zNbvltqE#C~*hLt0d@UpU)H7zzLI2n|)P*R& (u)irMGYmq>LmwC(B`x@ypV*i@+~R z;vD=NrC~^cAYkhN8v$$~Hpan&dx#G1 VH_g(zs4}O4O{_>aj;MQ%#af~EM z5ZMI(KYQ;TWyyJ-`Tf37RX22)o}P$7A_#zp1VJ#9ASsd5Qi)0wy=!T;qGYYLd$cR9 zb=H=5o&NJ#pJRK^I;_tg%d)hlvPdx~k_06Zfk6-{kVGH?0Ssm^n9wuR-8WR#7yQTf zRo$xFx2Gou02haxnGW|>ef5R+dEWPZo)gDcdGW;;Sy@@Z6^5kS3q(esJ;DddaNkHl zl6H|&l4TiMsW8?|dgZ+iZ5UNKb#1>oB?wyq$Er6!5XwI4546knw_5+rxmA%w)4lPV z`P0{WGv3Gc4IjuR6wX`9GUx{+QlXS!JRS$JLSrzdz}fIH!spn!l^{_HDWRKn*uK2P z-rajxUS8ssn{TGy?=nBvqu=kdbNhC#x#k-7?%m7coC@4YLu9bo0?-UrrI@`VR~haW ziP91qZ3xxXrR#pf7|AH$C#KHsX(7Du_l5+cmw0bBh(Av5K~g$fw=gvO`bW7(YQa;_ zJjbCI5A&Dz-N)14-OslkdxB@4dmeO#)G3{Qk4~psw{93~@fK8~v0j{(bISP==sVx% z!i7F}UT!_zm$JwGbgKeRMc_;e0dEENFZA=f(!l #dA>KaZzvwt}rT(5%t z^9S~4ZF-ji>|e}z_DTTz&1c%|y%Hs;^}_K`VtbC8M=f#=~{;^>zB)l-FEy6+iIz z-p@yV{71Oy#_JFsvNX&u>pe;cj0r%kmvyN6;9VtlrZv`jq*NGVNfJeALYq`|?OHa< z`27R~)l~^%mNng}SIzYEtpo;ZvR0_}7$NF1a7)PCk8?wo>5yD^j`j6*9{&2@@xs9u zdG7fa=+4dIoa4};Lp<@Fr+DItCpdKYXs}xo(GpNrWNpZ>R( =aoQmMsL=Ax2W^I#F=ULXR&F@$5IX%xd z1N`25oCT$lK=ycvQej*GY*AutQD5hDyN&lA>r6ckWnSQH8Rm`jNIVjUGnQ_zLpKWo zfvJ}4+qaLq?|K8b-u61)de7a=_j}CE&C%^;bknT12Gm;AiRWo2h)NjJPG$Bd+B G6{c{8RvwUt(>(KV61GbtUB-@_KGk*VE`|qwqus=Np6TkFR|IXz5(*e## z%c}{npZJdh==d{QDTEIKeEDcVIU3?!iN^EJx4wy=_|YHb-gmy0Jv+A3@5TeX@@RLK z(&Ti~4nAfOop(qCWod&Dp9)#;N<^(JOVTVMH$iFM#-@BBLisqt)wX-W6U*yn&kZ-F zaZ(YT-rG%x*7nz>(DhbY^`%=Et=~KxJGR0oALG5?YY+bo-}w3?JpcUjJo3mRtdGYG zMkNkWXYWM>^+GEW9e`uE-$MvRp63Xa(C_yVLNFW-adtxBB1K&mZ7UK+$!I|r?=J$l zrq+RDW1Ge-u+ P~>jr&swoOhd^p8|ogX0kpT^%y>M zlSbgb+1@1)UWAFNDnScB(F_o-{ U$XQ2-I_)^5 z`MI-fUAGbrd=>0(4yLyn^R09e&MTQvk&SUpR&BWT^R3*rWUP9Pwyc6l?Efm*f8~OG z8>{KU98w6S>o~zVgA^gy5#G}4%`sdb;GAcnzd&w=6y`W9#}C3Y&tLWn{pAJruiodA z-gf5t%XpuVBwbADS|wwZ(*7h>Af_OZoSNKz%f%W361ib9gy2=SgX~Ba1hKt9DmW2) zhm=GS0>xHI @F8Fz+J*IJJm~V5QdC_rxR^g2jOFY9p-Y? zqg(fj%Bmz=)EUfXFKHFT)xo}>1b&wi>|aVU!3#F@yjH!^vUUKOp(Y 5 z%g&`mx=F|adTZ$>q4+T`a=K|!mn93|?opmzeZCRw<7F+DSGA(os`kzzysz<#5FTs* zzfz}h5TX#8lweD|RJHY*kP@9{2n5zye5{&Mk+okRjOq6~KmaxfC`-@!aK!rhIxieN z#5ceBEgpUB30`>N1x9(vkz*?yeDOtASJy(%xe$2c5S=b*metmBQtCRJYASKF=p$Ey z^M<{h^{NfdWxEvKZ!(tEj-oaJ N0-9Kb?7!NvzAhCvaiS*Xg3Lz4P~;M z*w Av4)*?SK-71q<7 z>fnr}m-Sd(JwYc+!Y*Y6rS+6bK_{i~C0Yu|M|8Bpd2vovg_oKPxDc(Et@n5Sl!VQN z*7Vwv45^uVw?*P;E9<>k_vb<^(l~b}zZEpyl2mc{(0;~iN8!a6F6+hqve}9Hci!QP z+>@nqXx#x)q)hQn;9Ov5q~bKd{+TUgFDF7gvwmMpfu<(dcLKbWb<03?I97iO5yYBi zZGf+W{a3;Mxw5oje0&2wHns#mA+MZstuj{8C 0(%xsBiHTl+iI|K&lUCesP0Gb-E99nBkQIcg@5ZlYgEX?=AzsDm6$4@dEtRsO= zrg{AxxA32Q_(%Dk_q>zcJGP-!AcQKVbBDv0Asd-08Pvah^~`3Frp;}3`cRI5znZo+ zFBHA&m5^9d#M17@ytFn7)#>m7&P6kJ>UoEkK|oH5kSvxlY3wIIy8qxYo_y*VzWw-P zJo?z<9654?Lr0GC!V52O{KP5<#dtVErX5t0;-x^Vl&sqel?pD1+qFgUeEs(d)P+^G zi6^;K^|^p>ZIMDI8U-8IgsbPrtTkgdE4df#xhc2YndIg{mT+6{Y@4lRS34re4MBW! z-Kbi{zkR<=GJdu=qnO!;*(Ndst}O6a@^OiZZGMBn8g?`$>1B9h$+DDgCy+z?_U_@< zTW{sf_uRwYy}P;Y+P&=By@TC5mPuqFuB`K ;@t=fM2N+oC!pbP?Lmw zv-QHw$n3W&0Q@HVj9}(?)pIA3gTDEUWk@X8m|$>73g^&Lva&Yj`4 -tVS&st7Us91(}cXVbxTL>1cZ+j9s%roZ*iq*#X3zMs!0S_u}*c372rSL zVE=MGcdoRv@O*>)&ECJ(aOotJxgm3c1PR_Eox$0hL@LIEF-g|L&n+-;p0PJ%sUjJV zgT@T9wZ<;D%8t_o`xgpyZ{;?2xq|)EkHBT?eA)QSV#Og%y_88CBu-G~BaR%|Pq(ia zJ^turyI@}yQFZ6G+kIIY7Us7jNWp8A&M<~nhO!CveFa`N0sE)BNN0ilswAYn7-m@P z$Y7LPmFv$6RAwIbXW@P7xIC5hFSNh<%N^{W>ofJVdrqCL%5ZgER$XV?D#0_??C u(M(Ndw%Q6k^OksJ<7 zvTnkG1BZG1vG4HGOE0m1|9-yu@WXuP$)`Dbe1*YqOq!-7X(xa!tx2;kN+qCVP$aJa zhY!MRrLz+ORlpci1GT!E%ZUvjbUH|@sxsQ78yhqVX77crE>*35XV#wJ&UAnDa%M}< z TT33~uz^pcfuwv{+f_ @4KhOuL&&CwmJ`UbjMC)f z!x2(Sig6x<0iB~PMo1B!cdyqaO%z$G*|~j*TVD4%?!EV2-20AqvS;ru5~Twd<)D*9 z0>(lT3q5=k4Ax2p?uuZ`Sd%rj+_W;n3mMw}*y!%JMbYjC?Ss}ltYrlpKKA(g_&HUk ze>k!nIkv*zKKyt5(I-E}XaDMchQkqAf1ZVHixejGvu2%6)aZ~H$3%EBIw95MSW9fP za^;v+f-hRc#Dyq-eiiJW|5)UFg8dC`u-*q{3lFJOWJ t;QUuNM^A zJVUQ3g(B4n+7xK~%L43Q$hdwQ>|Y4Srb`L-w-%y}t_?FpW~G#rd5KcsDLHiDX%J(0 z{@`V~Xs>v%pS CHx8H66`^`x> zv!qpuNsqo%b>?Q~LXzT))JC_O>X#efztBBXuY&zE1N+`p2XyQawyqUKSJ{@zI!em6 z_?K%uvu1Wti8hFx6xM8Qmvg@E|AJU6og>%}*Y8iMfv`E)_juVDRX6Efmp&kKr3KOl z>oZdfk;3E3lHq8bRKa`R`WF7-KllhA_`tnL0nR`#jqhngZ)2iFT@sHINEO7vjIGMl z-Ate#u6=W`KLH*#Xq7Y~i>eAl$RH{f2qskvyHzFc9tkQ)n3<@%CxBt$c EbLPDs*jmo!b0DvA0on!-9p!#tEFM`eC5MIdpd zsC&}$(U_{0xKhM#W-B+6zHPPg3W!dNo7JF(Q){M(x_V|d*x$@@brQ_UQ-b-^Sw|Z` zZ+01WYYxn)3}^uZzxkSN0eNp)<2j2=soEx*U$25SDJ5D6jIkI~qO}fR7b5id+fbq5 zd?0eLjy%sP%N%PhnG%%67@T0|&Sm!P-OJouk87{KhTHGBm0NFq9k<@{I N);;VL?=^TKsvq;l|lGXSLFDJsj@~nt=001BWNkl tkJ$(1MLwxz+uk#n5zmG3{=>ZPEbQlnH7Phgluni$KxiLtU z#QyzB+m{d`tQRSxK;uN2UqrG`NDy93t$+&$_Af_peWif?&CcQT1@4|5|Jkhc_d} zCl9mKb$s9*cX9o-dnt|MGoOEeXIFB3Zzn?aa28T;QR2!6`xpB4N(TGQ{ZdYiLFIU3 zjUmfYoG &SUaC_K!9vLM$5vh==4> zlX aYX2S3sPjR zMUr^$ait9wbTPB;oDKf%TGqYACRXwfMg<2C9O9dgew#0U<*PjM?Qik)GtaWRJ|IiG ztPKYU2Qtw}oie|D9+9SX-=_0|vGKUlL~ySWTH{?*KUXrgg}Km=?}&s$3}&NGx@Xd( zuT=H5hCr*I5E_CAa%zyQ+E3T}7RcEE=3RJ0Q2{kEdw#3U=D3*3%=>Bcxy{d!KsJd< zhlLN5!h2r}Ely8_pm*dZ7cVD0|KUe{>pm(0Mp>Pk)9nyWGz96Iz;Md`&dVthMj()w z(&BX>jVw?WMeBUebb?X}B@@z^WzXh3MNweN9O*3Rlzf rW4&Ml+xUM{T_Dhejo39?>l+;;ji #OzbW1JMKvM(y&*_5Dq zg}ttXSW$XVLL%d~H7bVmI) Ko@?jD>}8q)CVM^) vCfBLe#*DD(Ai`U-d z=XyIxbRScOhD?=coDD)eS=Nn={%kuT(M(011<;@U??%uhg9>i=y!x9H&s`-^Qnj-_ zXSe~M?xuXXZrxJKR|$&qxCx()y6R@7x-EgdD3Ioa2-#v0MB0S&IBfg9qSEuMXB%1p znsE2R9zvT1Z<|?+oh$Qwh9OnMV><-?ZYn6RbPzTrJ57}-3szc6K&mCmMI~= +87ljw$2p1Af*e>|&l!$$zWg^2 z^WXyy@#qte^W1a$dFk+B3S&WP#^W57rAVnzS(ko)9spCiKvI-o3BB?%Dg?Sp3{Fal z!r<#_2?=qmy>mD~%TTL5?JwV)Q?s676;Mb?TXEep)AxS!2`DBTycDNAKW4v|Yo8Kg z>pi$t#WPc@2E24}ZTL;d1y|4W%@osH*Xw13rl(d@pT6GdOn&q1uhhAnkLypTBn=gL zV+=0NiSf9^`Vr1}vTlm-5}9_eMZx0oB62xos=X;uX^-(}z{z1jqDmfq d+&W4yLWD9dHY-tinO6ZBuhheq9dyCO#}X#>@XVu|AzVD z<>rBI4e(WiKAconjEgaytV1dVML8x*I`p$>j|ePvQ?_+emcQp+yycB|@%U3u^JjnY zIsW`FKFfEWd5+=gaR%d@B<(Rbzkrq+FM`b?4oYh=l|83Yq4LOq6fRUPTmrk4i`h ?{i-2`JSOS`V(xbU9+mzQAQl?(P? zbA!*41+vZp&IT(X0AWRK&l41UqXM!BnHPboGmx?P^Sm$Gkje2A+m9-ElOYQBGGz3r z1bD=`3(;-0ar;ZOIi2h0U1$N4S33CjK9th8YD+w|8ah=^xUAu4P$G>brYZ);GH#Z( zQ3c#QsH-5o%2Zwmfu*w{=gtS ojIi!8i}J`}CbDYce-fbNLzbX=54dMCT%qUiJErqVD1M zOj5E{Mtj!u^3hIe*4&%+yKl|JnF4z=L^H+g2yj-#Nn5 (#^TEI=L0*woO{90&KlA?8n$xX2BEkkRGN;-^7 zhq0lrKhp{QrR^*%FXO#u?c{3c`7aFyIC5f*!w0|4Hy-&mpIKVqlb^nsojbO3`|Y>! zj<>yq*WYm`+ZM7=WnhBPpFl;u6IrjLP#Ng)*3TvZs GkYeO6lu@@!&8wT)jj$^^A)FB=g7=tSckY`pSp{UyX;wrU{qRiTy;Q; 3RF)cP^U;aYfFE?(MgEYf?JtB5Afz1NhQ}K02*K zma8m751w;Dtvd8ss5U$3%o+9QpK24bts+8MGv>{n{K}@Rwm3TlYgsFypTokPDB^Nn zRZ-8^rgJ9D+gX9I%Vf^Fi!i=tTKQ3x1Pdi6?IO wQV_ymtW{uqD#r3ZN6fd@Hw=tTzWBaR(kA?wZuA;Gjm){BCALSQ`<#zafAP+=ew zO` hoUgGPkf~yUJHjYQPpqy#6#s8AaSPL;D$0SBDeK?avQP;;eDp|>SkL< z<1_6U2)MTQ|0dX L*{;g@V~>7ldz)1C2=pngS+?J2);Mh<1US7f zHuVsupO3}Y&%UX<;JwF3Lckb9k|dO6Su4#~E(}FcpoAw))3E;)WmMY_mbzMNa31G_ z1>bl)WIQeqzGR`7QI3abt=YM2nb%x<4R_vgJMVheySV4>yV$wBP u@+-*_MGjK7=`tZkkrc|Ib`GMu-R`I!D(m!cRl z&evF7I|k2u_p;aot~{`R!__`Zm&nouvUGv**w_8>Reye!(cd^(WTWR#HUge=7(my^ z+Q-S)>bn;zl @*IFh4(!)JdqSNfOHV{k$w# zTwG*zeVtCHgE0o{3|go&07Mrq*l1NBoW*sVjzHh3h=mZ~x`v>gz>CQqRrytWQwF;` zov^yPO1GDxlq69CZw+&Ea~yu@MQlD|u9I=i-d%j;Cw`O 5X zA=n8Q5eB8;x78zLuSaiS_0_m%jUh^pc`{GJKqMb!c#rHr;)(TXb)p2irA^CW4; za9q;uB%%M_!pXG(Pk;AW)`w#r`r6m{n}@&7Hy-&WD<@Wi3cfW+q3HB`u`EBhrCaZ? zCXh`oX1aY8_!9MeQ| p8cnLjUCVk|c=&awggkwp(nP zAa?TEz9ulNwKX9pM4LPk(uWMIP?IyWL4Gua?J8oV@Y~eH9%A<=sYMH z9SjUoh75^w9^r!PhcmwQS=BX5sat|>(;|D$IaDICwyfuA^XHm#ck^fBwm4JTYj>i_ zQwf@iT5xxA=1i{B85>ECri!x&Z6#7r4A)p+J5E`acw@jA7M2#-yL%7aEa9FvzJa&C z^)0;N^>^^v*IZAxtAl-{0BbxQEih$XKd)*}$@82vO+yt+^t0DBU^nD>NvGSzO$#)( zr~ zm|+fMRWB~Xbe zW?5GMy&A`gSSic0Cg3V^U@NlwRIMIc#UGos8J^WyaT;Xv#Rl>h^E%Gv{-@99=D(%& zq=0n=LqEV5N7>0y{_TJD^St%yjE)*JRvn&OmHf)T`550htdQNS@v=*jO7gP6*{}yS zpL3HOJlAo#6asx$D%hVD%U^iwJ%3t|SZ>k^RZW}PeFqoXDV0EJ$H|k2SzkR0&tCeH z{wogb>ziNawdyn9-vK_sSlNDX!Zor-ZUVyV38mr$IX_^3TAa)Iwv~-g0RTy@>fYKa zi*>%i>BR*5n`KfiW!e4AUd>m*{^o&D1VhgIP`d3rrWmt0KhJ1wl{8T#QeaKVi4!L< z#h5Hfan8gbvV+norE`o213GgHbm#gY6usUYMOosaYI<3g_?RK Kgg_y1!hv&G@9V;BCBoOG4^;ueg%-C&Duh-@ z52Y)?23uK$3XU@toN#ENA!e*ClQS%gvqS5&l_9SKXBS8qtOF&{(ZbFY?M!<81R{}C zW!#(duhPWvxZn-%H@YBH|DIG9%?^ZHEhV#0_zio56XD$VRX@CJ1ps(#>%N lN>g4{CEHUGyLr{BZgub zr@9C=aUT*w%>?@w;+|gx`!6T3UpWSWZ1$5ydv}Dvnh{5j9;DNgjKBTVCB@rUR?q&v zt9_cxqg5BJQ_7<1=@YF-7kVlDhDTRVrYXUwbJ{?oD3W)gZQ&8^sYLDVE2lz>*$dNi zd1t6+ZM-efqfN@9FJ!sXDa+Si?OodXFpYt=6cHFWOE(Ep$m_>XG90YYNi_G|eJ5{u z^P5>(+QveEjy?OX;_)Y*;tOB=5(f_+ ( zv;=Q-6Z)aOy`sl&D{H+|k^yze_$2cj$d{ -*{&5dpx|-w)2)QV?1ITqpxik`(ZahC@7(ZnsNEr;Nr0I!i$(4Dvt-$fSpt@W`Xj z@Ys`2^3894o3DQLt33Y1lbl>#ryS>`{dtnCPq)`cDaAN1Ss#}u7i6iAX$DXUL@Xny+l{ybF#r6 Mr%WFf|Gy}3Z*qt3vB5~ zlORY}m^>_37eqEI+d!ohsY>wPVoTR5!%lQUp6B2MN+&2Cv}(L_ xylnKE&^nLO8aU@4}8MBfU4E6s~2Y*LdE z?PqOKh+2%XCM|-PK_L9g-~y58EP&ahi*p8NEJA6 f(XX z^L78>6bk?E@*!!b gti7tZmR53sLEC^i0cGT=vZPn z#ZD@vW^OcR1NJX;X8&~i>sz1O&>WbRVLcxQ-l^V0T_&5Jy9};j<2cFM5=;t@#GyT; z!l7{-dFcSsTJF647C!p3Kf{N9_=EH_$P38QSivb_IEH7Q-Op$K^w0U!r~j14zVjp? znA^US{=y=;v80_Ij*#6&>Y!rU>0o0C>cu$tE<|R3tKVr_XU-}q4n5Byli%!341HqI z>t@)Zz#2oEh`Q3^_|ao@GsS4_IB&lD_58D6`X%1});FQNV{tx1#j#f2A-p5Yk^tz9 zK}Z2oLFsTZoy72R!jHMyPOX{ww5@TI9&AyPCMnKDb^0W!WB=0mx^hHlL1`e-!7A_m z`@a%YyFY&)M~ bb5z)b~BoB8yL4ZCyQ6VIv3_yai8wUFy(pAmFubSw)ut;}a> zEmBR?=2gqZq1~JAylIiL-c=TXqE+5smn25AVftJN^EmuHOEU62ud6zw3>Jk-XpkW* zYfW{|Ns1x}*#)hMAgrsDz?NpB-C!+Rr*#WUAZI3-|7Nw`bd_~${WSC#W DH*P>VNRYz&-dB3 zxWKOM^Su7fJ9zUO@8L~vej{(X=gzv;#K&xo0Lr{1%My$Y?@6^k=wv2flYTZ^Dg3N; zG}$30P7P7V$UBq{ZCwIMZVXAPk-$^?5Awo`NBMvM<8SkYFMNTQUOK|U(so8gNq=sE zrR5zQId+^R&FT$GDOK+UN~vJ`I-`o_RQrAN@AfRSK4(&fzEzBLDai$Sj^Wptg8lPx z|23gz9hs6yJL34UXIbtJ`REV7g`fHUH?i!FV1_HKj|F1e_5AtQkMi$+=ROV%yO?Bw ztUnj_Q|nI|U0-U=hO;G8&euG9`DgaG9D!4egNv<#)tRGeayNX nU z6=W!x1l4_Cndgcc>^B1lsoP**_}Po-asd0Y-g_(SqiI2l3jy|Lz1OQ{{HHTc5@S7C zmQfaCl()=vGF(37 |CNl{vK7VM;~X@jf_6$D*quy40mr_*3x`bjymmtvAF_Zuz6 zBv9rf=DHoQ4k;X%l7k2Kvuk-fZ@A+&e*A}jfVaQ-9&WyIA5}$nrl2ehog`Sq;Vn|B zT6iy!3Ylafqi5s>u-~*UuWS *_gmVFqomemU?sNM&aPUPw zd*2uM%%}g9<0n@cl_eg?vMyPcq0?S$`> R{>scEXD+@sfplVs3>WI`$=E9tly)^b8rrsBz13n^%+`K6&4w3nqsYwD)zc| zp%FsG66~Zt|LOoqhDb_yS+}|cB7#~JuO=qNWXvYPpxYEw%@X6A{{EI{s`HzkYgMdK zkx4GP`~+DGF;i!tCZQ1_kc}EY)jm;GMQAC(g o$VUyoiGM=B|TI%zYP}x `Yr@_db>#}48dv$TDVm9IW}(Xsbs z5B9sa-{zgo(6Ub_o3H!uJmJ8yErBJuVRDG6Qnd34_B~Z8XIq^yDDLZtmv7^fHcS~g z#YSJ|VE;@GmCXX+^9lC1I-p(!`=@$FGPcl4u!eq?V9ODs6UPxI=Rg0spW$Er@;@b2 z&`m?%xA0($CDF1Dbk|2iy4@a@Aj))Xt>oYThhOJ^{dfNd`C!b#Ro5`Tu*9e|D4mA< zu$Pq9Amrv?{Ct$7U1+fHwwP}c(du=Vo|fXb6TyCMQe7|W_mDVJCBc-82Lo159L1Fd zH{WnQ|KeBvIY0KpAEcWErbPz}c%+!9b$e%my-*E~ViiZ!5orm*i2&@UgWt*cxSD{d z?*~=)&6b5lry(defKCLXBG~8s?caTi-~XeJ^SRG|fs?E2jEaKcV9esuwm=Ga5y4Ub zy{^GNxN4ke1E;2X`n2F3r*W*;_-2#+V^W6iXFlx-nW#1;8bj5W*&sGnW#+5-APC^r zJ6mT2TJu+iELKqzbr!hl!`50y{fi=kZx!FWQVPxk=<&8CfL9X@svST#{pdqhJOIwQ zxjDMsE@fG=wzh^bhAd67@!#Hu_bp0`cMhe~Kmxh={EP)JkXaT9h?td^3S$jIsrY-E zG|TWll$uY*Eo$D#%AsO%jb3id=vHGs-HSU-%D3DOM5q?5EFvpVeyX#rZY!Aa{+sPD zvSA@;97wHDVxo>8tW2wR6OS>W^gc~BN=Tfy2qZdDjMmo}4A)RXQkFTLRFfo{-8+`K z=kB}s$q)ZH?|s)h=w*SRwbqj+(R8>lBx$hO6u#M#B+u%67Jky(U)`UzfoK#cM&l7_ z+KCGO9+e18BPM(9&~d)~*yDWcw||%WzW4xnQ6iEKQYUnJb7-BA7lHJUiLR@Qn&7_r z%xZt#e0_@x3RW*juznuS!dYb2xx{7X+6J*zvglNO{la;&BxP{)0IWaH>-Gr#$6xy? zZrS6R=NQA4BWSsRoWGvuMoavwfBQT9?fxOFrpMCqK8E8m63ClZgIw-l|CHl1gWx>l z>v#T=% ~;B&_L8Yfqe;__9lx^^E2ANbpgx{+MgJ^Q^k zyvC2$4coWv#S{u_+Tis+001BWNkl pI;7V46vs25M&u@Xy2+@pATvyoRJ;EYA$Nwowl#b`*{?K0m@ur5c-gu$?2dA`Fx{`sF}b#;~B_^sbz zb>$e{ZjX*mF@SImFGE()&JZrU(w<{8DdwhkpIVG-iY0eG^n2G{^df?FfyCjh!#l%x zlvCy-)=!?`n!UUDPe1Zue)7XV&dsmcjkjP6=yyWIY)gkqCC*x`Eh8D~Y7il%K&d1s zW!nhulyCQ>Hwb{1vN|$kE2;d` roU1gTVlR zPN&1lv15GavB!CK|MRS`uQM9vwGPE-m}3#7Y0B{vs~kOg6k{yo@tDytM=BKr3QI$p z_Q}f}YYK92apQur+nqei2=*%g-9RG004JqJDn(kCc+&!S&IK|=Fd^ZCT5{ZPq6D3@ z4Up>_0*>)ZcKRHPbD=)#Tt(7V{o(O?t11bhqQ(XFpOs6c7a(M?&NH!kMGK904&x_e zM4EMR&aplmAUt%t8Q>YM4@i X25!IQ z7JlSIKg7+iy*d&wpi_ ni!Yqrn zS#ihN5XqOi5Bfs&VqZ=@-kY8Mv#N5Wj24j2(bt;mb}zAGv5S%?!H#f@a8BckH4-_; zHT#x%^u-ZFCvYZ;jm8$RSrw?SzFr|OFE_`BTTuu>aH)>>s@Nz9`U$j7F=dVvl3sTn zYfDy*VSO#<4L|mM{u`h8%ZoPIE^Dw~j1_4zhbbXVJGJ_<)*4T+U{cM}Gd~gNyEw04 zd>cMbAtgZ>x(@t(t1`~c0Kgj<=gYX*;#7dW*_(JeoA*X$%>@<9IvlFLt{Sq2uAP=U zqtAKuwV8mTl#))CFkV}w91YmJeS!b%qyLD#yLzaYDRv&xBxHdo3%oI;oi45{kx2s1 zp`>H6*TDkY7drgnFZ>*jJ^BP+_`;Vsxw1lkaVfY{NQJHZn6LQ9CR^;WoIwOsL2)G* z7XY0{0aB`XV1$1wg2Icl1(YSnj=acXzr!#6!q4&1fAmxAUS48xJ|QMWQ8E%S){&*L zWZPTPG>w0cz3sv`Jm-DL@TCER*u_SWZj@c!Th$4@zVWg>DzYu_Q?(c>$$^(pbK5 z|ATzyPyU2&J^nb~di)8-xdpB1FYQ38;A^aslsuLqdms9@o0(c?0|}+IszutW{_UzP z9Y9O9A(KCCLl?lCt3}=LmA#=0CHPGduc?Dx2!T{8i0wpSu&O7!%DnohbRRn8-2^le z#1M--r`Zx Y@%=I(8cev6}x+o~8Clwsw z*;Lo#Ym2@bR5{P!9e1PCpp<^{ bX>AxP9}DKaM@WfO33-x2v{O{7Y8Oc3SR2wb zjn}Ux)`8yDaYE@TH-u^pL{Y}b%=x&6Hj61vrEngCL9-!y)FcPnqQQa8kxIrkr;xnJ z^BkoVz3yCHE#fSsoi2G<((QK1M+5o`i*$N@Y*~ k8@|S;!zyFgT<`4hq6a3|Uf5lVJe3#=#EGkJ!lMY#| z2y%^{eH#~^t3@wm-KOG2s9Bn1vZLLpQ0Ej2z0%{3X*a5Kd%4Ms^OIzq_XgqYl%9sd zOMx+Cv=%HR9j?1-H%nbjDhf OcgIb<38|&+X!A&h@R|`DVnR`O1X|v~9s<7!) z{=rOTdcr{?>MYTQG9iEJ1$rja@odWYy*R!1-1L2&Yqc=cKksIj^0)6*)Rq=b7`zMz zvJ( $zN)nNF>HKTC0Xn*D989VeOsF0MgL`MONJZ55>g z;PRoQRwWt67nn(${6 zfO#)!7m#Y5HAl8tcw}u^dt8@!fsno~krzTx7M3K_n8Kpd5IB!Uqmbn-Jw>i4jOXtj zd4$jX)nD^_AOAStJ+L2VE&Uxkkx7bB30_F73F|fh$IAb`tXG$etxs*RE@sY%$^7?q zi$d7P)r4HBD~zhls;yfR!tbj3=Zy&^%~}WX$SP}JmCaYAn3jstnm|@biI!pRODQSJ zoJ45`gEf>0#K~x|Mz@<`Oc^R@I%y !Shvxo*8qO&P{0jampekJd?x+;Psu zb|y0+pM 5UAl`%! z=&BVUq&txa)>ls;ydz&*3+)0*v155V?|a|-c*EUy@O|%p57%G27hI^|N(5MI$W(B- zz?8uk(^gIhx~@>L4!oM|cok5RzH)n*5Ck=%5)IEH;lMT8AmY67$hswLoEz@{^4Ivy zk9~~$zVIam!!a^V$$EX}w=J_e7*je=x6>yt3#3-z8A^fHnpElF=-_Q#IVGIM#a0=i zblpaDI_K%RfTi R788{}IJ%h0`H<=7ZaYR32x?co7l=Wohv~ zp+DDUG(3)7Il#4P!N2&a5AZ|x?q<#(V*SK(AS_vD8^=c}ou%7&=-VgwpMK*$o;YT3 z3p?>yC%8t$sykU#Yf;59U}ZZWA?h)ebrs9GM2=g{g(|){7c%Bd=k8fq5O3mWFl~K) zrt3wVMP>BGBs5%WP0NjOqcdn7TCdVn;%tc!o|WUr7_S{=c~75XfAiQyx!}t-vtNuA z%gehOWm!G~z2=}woUpZR)rDckHWOHp5txcbHhxCt^b|n R_%oSHvo=i;?boca^yV^bKEjO0^cH)(<(|9f zreMn07NbMOi4p{%H|L{ep1^q-^S-g~9FQUeqY`-28{fct?tLe}`|(dR9*;@VUI@O7 z3qau#&g*mT$MYNez-1%I@iFkXc# 7vYDyc=*LOEO;>`$JTYmvOIjD2&*sag!6A<`AgAG`o>aek6%H>O~& z*GDQCjYeo8>2x}1EwRS1xG=}+>MB}DvP6X}E5XieG#pY|gO)^lIm^)6*q-80TCr!> zBB_$}x*hu6jD>{-uG+Jky?ggEKR?fnH{HO(!UDLEiQc|#f#u~T=K5W_-3)6DI76Ch zy1fh?2?*y6S}L%O_5|UuCdaq};XKNPY&Xs}fMRR`h?)AtP6Py1)y81MxfXi;X|Z5U zTR8wXsz9wGQL)q{iq2^SLWRtnN76|JB1^G8!OdlnEYE5izlt0%E-3gr=P;2-Svhf% zM;>{Er@#9Q-A*4VCHoJ)$WzZ9U@#nW^ypCz9XZNyl!x+OFDMM;qm!6{1(9HST|Ao6 zU==R}-ENnDN7K=Y!C(-y4x%WekDHmrA)Ldywxys{3K{=%vHitZ8%ULClPF~nldQ-! z5wrIbGAhIu9zUr(sjSdi!krczSYMx(HR ;^!rQ~>1F zs`RrG3H2>cEDF7#U9DHO4OIe%A~48O0Lt^ecfXxmZoZK}zUMRi)^GnVPd)uz$`KsR zb9#$A==C}Xoq&vXgQ;d*7HFMNS{pwvyswLGG%8kl7 *J%4r>y~Wr~(_|+>p6$k8AesVooXiV1%$XIKWtg5DDInSnO%G z_cJ;xmQ`QiMM~0)-d)w+Q~ftNS88b+KRZcxsR*Ep0iLgf824g>{Mn!BHl)#;nmA=? zktn1V^m_|P3FE rmnGO&uYJA8OR_9uJSt*FViFLZ&j&nFkUhf* z6nje%ZGj%9*w?054SwrQ@k%8CHmDxYs94zWdm;o<;E~>8g$qot_ee~H_>IherM%p* z!*FMDt*@k4Q$u0ae9n>-Q g>-wXfl(n_i2zpri;vy{p8JCcex YO{ddA7)LQ4(aAFAdtF{S^a90bopQ9!2j2H?{)hkeUvvF6ds&{>VUjxt zV%nk3MR*ZdVi{VRY 6%D zh;znIP&-1&DS+u4HgOa1Iw^ u$P{#rXwx?by!Uci)AQ zuxHmUmX{Xs-m`6Co~5NFj4eo{px5sPLd6tltwUeF37JTxJ7^KA5{wxKi#i~Y66H#i z5Op8Avj$;3+FP`gXe}{jgtxA4@2K_zM`%Yt`k8&s8|@ X;-6
pbIT3yrznb0;;t14#oBt# za9prH9B|;kLGFL>%Y5;R_jCBjF?w_J6wYySZ9rZ)tPgcO!{HEXJcSuz4HTUc;^t z@-kWqq!0c6y 4o zlYnT>`zXv;#U CtgVsi1cxH&WOTcI^0_(6 zvSe^#g-0KGlxLoLng{QHh&yk)mG{2uU3}nszlXW5MiH{8iI8Exh{BNLBD57~6@1E7 zEmqmoB#;~8Dj(h?()3j&P9yg_9Xm-umWJKw+I>6u*`N7o?s?Oj`Gb#tf=_+=Pk8a* zp-?e0&gm^Jvvb#O*473{t-&ku;V_OxqtYpkv+ QFV+ZML5Yk7|3z&ftT zk!g>Kob6OrI>t4z_=G0s8FG(yCLTFo&+_F^ZeIyFUrvO;#RC766hy2}krHDHvLp!C zb~-(jhSlRk4!rQvMY*=i66|ZO>2 h!!(^Hd) hDNo6s zZBRNDrzb*kr5-NRS^TDW&P;ox3dvB}SjFH7kML%yC#;46A$a2Du_10Tpy!p*Z3*Gw zNRket;VQzFNCbD>c01ip7W#cN1zzApPzZNbX( $&sx zTluR8zCu}+c$wg%QuxKROE?v?eb#GFIHYeghE;YQ0plX5qze_uOW{4HC`qJZuHS=V z#FLMGhklwe-%a@YKmAeui(mO=c5G85fGtDjF4aN1BG2;(2&?Rx!u#M*!VE%Zb_Qq? zqv#|7@9@T819U+~5x=~Itd~+)7?0qor=Q_7fA(iQ^tG?@zylBAykLIEPP+a1$S(-6 zQSINmP{E;8Xxw$77g>4{O5eOkg;Is6UeIR71F&fVP~Vzs-rJTCXtV5pV(I9~R2q7m z8)eZ_P89T&6bPlkIf~&RyubVZ*?aFWORn?0^LIj3-OypCCnF371O^!(!6-0@(Ig}> zC{VN#<;SwE m;w%w!C`0UfI$vtw2hYR-h%4U;=3|h?x>d5F`Q-NMsPe z%wRg*P*o@FAK$6E_xAJzU}k`U$mWBmIXyky_g0-c=X>Ap{odE%#zR&|tAyaljApnx zfavJ 6d9vYg^7V&l_=#2CZLtayBg)Zbf{~GPxso_CBX{`5VfQh)UG}v$}h%9ts>rQ zaassL{zEzoMCk|zd>aot9lO`e#S2+NORP+ _ZLN%kuUM1A$hMyr;`yYPgRXT8Me)LSm+g~r5+dU+s(^f z^c;Tfr+$n>k1sPAmvrYBx#!;d`Rdnh<;I)7!ofp_SzcaYFc@&?@EW61?o)_?^#hOL zgU48lvW8e!N%<17))2g-tV)y-vM4V)j7E}n;2Ww_&8pcp--DAm=9J^~F^ziD18b*e zh|}ZXyb|(TX(7I1(=FBb80hpC$V?(*qQ?QcC@6{okBkA02W#AX^X+``3t!^8>;8h5 zzW5rx_jRw~jj#VcmbP@LfvOH eRQ;Ihju s-!blK+tW=TeG}!eVT}p@YlJU3pPl|Jt3Wb%QzMz<%e_ z=fonP$7s_!8&00JC&t1)nT;l>>0)zAP8S;CnQG0XBsxpAS bN!=p^k=vT1eZ#oC?eM9uWQuBwVoo>P@W ze5l#8XBS0b>EsZ6)f&JF(KYGXg(j;_ZG7IEh&E5akXyyh?Mv*x;8}d?b6-pVP-An8 zc>0H@{5s4Y22ZSWF|)oC&{xwQ{AywjCE&7&5OcVyLPg02j@~m^TV}X&fTf=04c~h$ z|L7n5eXhJ>A2wlCqe(GYCUs>c@-RkE3=v~eY>?8^_W#LrZezE0^Y>eoBN-#eEEX*} z=@N`h&`<{W$}QjEeeeGOpZN4=`0`C(0h^I!b8OkRBy#EG{GOQ%jAb|~iBa6zy^qOz zvzf~k;3*wYg*A4{ Kx0|EzY~8VotDpO9o_*z&6rGIu`FSq8_#$?1TV$@^ zMJ4&SBGB)5aaD=Zkxpi*>wt;_d>JToGURh5J?n9!5z)sq`zP-whSc#jis&4!F-(jR zD-MeS!~vJO T04SP};UFv_PPn3_#ubN-73bO7u`z9kE8sct#K( zg5BHa*u7(cs0>vd*?-<1UjEV-aNy8ks>*TT;34k4_g?O};~N}0u#Pbq4?g%Xw}1WX z3` M(Nn MDQhA1*|c64JK1~Uo+Q(vv)5t-__VrjY;$Q zjY?Og_1ln}NrZOFy7%9XA5UbhZaiO3=UP8qN(!|>LFsWx32S7}jL7Ivkdd`cF;7)h ztgj6@|5ew-dp`d8)3(^oD6n5#dRfeD2cvUI8fs+2F{C1Tc5d@%ZNZZ vpCh}3o4!=tnkTnJvUz0Clj5wsewl-*rIAA;z^zr13LP2cO6Zc(wd Kc<57y}1a#@ur2*SX=Nf5{hayot~M^^NrAx3aYRJkW}=su@%=%N_ zo}!1Ca^6)?ZFgQZa_8of>4}0Tra9d-#xG<*`<3Z^Ded`j+Nex+jYc6L*8r?d>Z>p@ z?-T6csK+H$RZ)({#Hz$tO>h-?r^{R+@i;qoZRh;+&f&_-FXNoEcA|)!d(Lhyy7*Zv zEiSeuhBiiwa^zM(ZDWRK`~YH2s2ydMK)jQPv)ov`uPN&qt)OEK(Yf@FBQZombf~Ct zN C5h24(1E9jehX zRp|&yJTOdV@s$|wnk-MpgQn1$Jxe``qRXWhoXyK$bTw67Q rYu`WS~-Rt2mpMKv67aD5GwW?|bBt{RFzM~oP4Q94VPNdSLi{3qso zfmwA*JSuG5IDRFPfm!A~Hc^35MDbQ@Vn{}SX|BIrFIr(t4#5*VR4#~dV(nO1Tw**P z<6KP)j^Xk$j|?AUR8{=-mv7?v&%2uMz4q^L?dx96v(DMWICx@k6h_bP-73hLqNeH| z)Z~m-n$10sCPbBrX69$sm5dR2z`KaGQjb~Sk_*n_yr20guDa|}uD|{ReDK2`VQo0T z`-)O|bk-4K6(x$2APOUuj38r(NB9uT#44VlHQV2o(Zn`pG&Zr6GuaLsd_ts_P*GBC zh#p^#$)aQDLZ5SXZN)IcXh-czLiBX|8I=lR&KSp7Rk3GBpDpti4vvX+g|_(=*(|Ku zbc1o)V6HLe)2P$lWSTaud?thZcno~?gzME4{P)NEo}-N+pAz%Ujbv9k+vLoaW(rXy zNSl-88EuVYRR91W07*naR10&O<<&=d peMRz YK2bTFI?e;ubT(8YS)7*I z8Y3}a3Op8%Mn{qQLYR?A#ip|#RgwtmCw2e7-J(a1^?qZFQgqif&Q;{eR4N6lVXY-N zC&p3;n2f3G(#n6;vCV3 ?~w!1}iyrn@lDRhM4K+kgAFxMcrcs>)LhE9QDRSR{@rGlU?Ko+wMG zYg`CzhuViAfV!FQ6+|^Tcw$5=oqR(k25mBxBnla?lyonwCMwJFV8ng*Kg{(X{2 _^U=+;t3ygwlJfg@lOlEQAI<6ezopg>= zA~L)WxVi)t$!&&n6)J)K;53Rru4Dwmm*aMy)J9D6Y?h@ifNw_)8UU$~PIg3+5sF+l zH<#ME$+co)P}p|mW0WYx=}c)CS|C4j{Wqqouvv#CqAV#gHAuHP_@u_rDPqmG?;|QP z+iJj|@Va7lrxK7SC5D97GeDt?%=y=~bZ7HUP7E*_uag +YyrUe-lEPtVuU7 zemC*iiBrXd6!aRE;t}&)-1LpL7^|qfkX*e?;XKS`@Y+{i!_`+@!3&>zHGlm7{TVlY z`74YE19}Tvu$?a0OjJ->(v%31kk*=3DtVS{to-yd{_H;%ne e9J)jd3|9 z@664pXpWX+rP^myofZWC?HY-9szCOMUc+M%0jGlCJ8}eM5-Hpy5NR!*RYqHk(s&!m zi+M(agWm>Vf8Tl0nl6egNjK$?4`EW;ZJg0Ooe#~l1U5#Iv^HH8HD%}#)bW|Cr_ycn zbc4l{VU(w@>9jJ!;|Yx&UzDOYKw@zfQEMqAH@$qv@9sa7ByUg0f#AI-pd?Cd?GSZc z<7x<*fW=1k+^~}qrAq2r%_#YkCv%)AU3`E}H>a*^>8O?^S#JSlGPHNpp?>BbRLQ8Y z*{7tN-8jd~+@UK2{lZcX*LdjuN3bgL@>jfsAODdb<=R)hjO|;y_^M{Un*oO40wFqz zlvJQKxCC-^o*_ erCHj!2W&=&nqgHFP#BwoG3aOsI^bL-nZ` YNjKsQY>9mv&yLuLNaGcWmn4c&TUf!Mq&umbx8~kU)8vBj55fmg$i_X&DNdU z*tc&lm+ZfYbI#t)uI*bmf8V)WeBlMe80mI$c5Yjuu107T>2z{jImC@ti5fauQ4Q89 zYjMa|ZcOyxs!9y;q9W4@5FLiVvyDo&)|f8=eWNu;K!zy=NiYKQ zCD%T->(8V$=)K3e3ec_MqVW}wPQ8#v(an+!Q!k2oEC!0kT0#hvRn-y+DtO#z4XrJ` zuDIy?dIZ`q-?2D9!XSWA8-sH}I>j*%YDF}bZXxsNgk{F#!1gU&vV1E$mij#Z>Z^G3 z4}2dhYaur4L#+x|2zRLP|z{+r)@o1fKIb@7H$9XYFcW$0ew?|Zs z=su~bf @P81@|b&eFh zF5}@y$U`OZh&nIm7agpI@o30!eVNs@5jWj@JGb0=2mj@F{~vznO>g4Ie&o$uwC~(x zR4f2LCV!V^jl?4wGbZ`%FhiaywFxzl3^uJbZES2|ErCc~R}!TdAXjkq&Ut?7C*RDA zUibn&^wE# >c(b_ z%Q0Ej!5BsG0^W>H^S;S>St}UVp3>F$7|@wTYt3jpmbSk-a_u%{-&1|>jwTa3)^i;L zSexO>3ZoQxmf?MkK|1o|;X1?B5o?DJusGl4hu-*o{Kmijmn?QQCcXVU&yu%cz-Tbo zDY6l?$r3mQlu2{%6Vgl$5QWV$8I6fP70&^sE#-JjUUUUq8`FZf^^qr7!_Bwd#b3PV zeO&+k4|4x~_tBY~V}5aofWj+FaFKv(<@h0lRyH0(kWNcdc!U^I+?zxMHd61PL_Qmp z!YSXH7;3G=%fMK&T) Sz+tqJfrnhhHI;m+%i~|dEDU8 zCbDbCR<>?gU}3J$j_q66yZ0O}yX0anzIZ=p?>UQJH)Fmq 8jy+1IKXVvToVF{q-)D2pOsjUqU4%eT4Qzb1L2F&os{;#w7kn3yR& znd;7qu6SH1P4I!JG+J9Z8)L*|Ie6DjJ!`E|ArS^?)>I>Nrv}vmJdaNu*3kOtiL3hr z><2tC2E3E(Ydb|AHCgjMMq-e-J*^Genn@^bBV>z#tmqItxKK|(ol>9;!82tHxZ%0e zN gva$|_TBqM@%bQDn6sOWJjLd;Ow;HrvP z2@rIl#QPydmSb3F_fo;Gr9Kz$+s#W}csYkxUd}hac@MYWbvIwV^)?=O_*>j{_cwX; z(Z?8<(k-vXD^#O3R!l*b6=X$+ywgo`dV>prs;bc1qoRy7H3eXdkt&fAa;;q=JMuOz zGKPTBV!#*>BQm8C<1#H0b?-d}BgBUD?Obw9@pD4ZII<$`FG}Y9eKPuU0kD?t+!lhb z8CE6r@)`#ZE%S~)em5Wg#HV=k_rH-J{DC*Id*>3?n3e$5fJ;Vc#E=w53g;_v@dtv; zh|LiBlhh?yzot>_=w^+`s6b{UmMzzs5Rz31aM82QWA8uwDZc9kFW~Ke@D6VH%a5_P zwv2ZbI?L(LZv_>p8wFI1 e+L zXssMlJ-LVDsbH7RgoCG%4o-U vqA18S@Xk|o3f!nn#!?Cwz-yUz)L~*K z)yPC6-`>%BC;JgXATtJ)6}Z~-rJHW%kw*`pcPz1`TQD4t=yhbSyXiDy XHm1N3h#xc!79#ME7>GkHQ z#v{h#F@@FO9a;ypFIinaz;my>j9>nr-p2R7?&a73g@U?r5)-w_A+gD^GSle`Nov~M z6Rjl*aX4J3+wG#Xrmh?|ixiz65m+DB6uH4 ;BUB@lcdQ;ffQb(6E9&8xeov(KMV9gW=RJpOUi>1idC~Kk z>vfr*>(J}ubn={Dze6X>F*@MNbxiaSDp6JVTF`M!#$C~;{N(^n$PE)*+j+E^Ze8am zKpwP;len+8aBZm~@x4$n<)P~%>hcg$Zo3v^pO`vHQ8((5M%5(bk4H>@TClDrdG1Yd z8dFDIsn~v9ThoG`7{X*3HY9tBhZ8_Kk=AMrMrm9lZ}VZclhKgQ!O8pcqI7AyVIihS zMkVr<&7Lp6(GqR4a^x!pwB&LdRGP0 ONB z+)dE4TmwHb0YrzE`0>f%d@`pFzBLY%Isec^C#D5bWCfU9Vnw@sLT8?;9C7III*%V- z<y@DV7!5`q v1wJB<&|aTdVR7iqprqeSuUi6I$AM) zgwyXPUrqavk~2t*)*|y=!!<8_4riZzHdkJGIdA`ick jShlWLcKfhO$0OSGL5&cRrqqu5LpN$=(pOc$hRXsd!JWHASW h z+ypzt42LIu{Z1GZKTXfa>7E?a%HmyxiJrB`A0w2j{PHjSJiq*lKaY;kNxo23Sx#of zqe!=n$wZQ>q_}GeRBJ65Lj}~ppT6f~{KEhIzoLsS^INx5`ap=1v+dGs`^I&wPZaB` zle{x=^D7)wIPNnXqe$ATvLw@na bn{LGH>l9!!syxOva!B~vZTIm04}6e6fB%QL z_3ryHMUSE=MBS0@h1MEtGuB5#RFWD`6LvH1+Nz}^(k+QIogc|z4{6qTQsAoy-OS=$ zjdLFF9a t+=OtAoTDJw~^@IFx0k;fii=1Vu-$``(PBVYQ;EiA9Bb7*Ci<&^=pC>RgN=q#fs z3IWtbL9f@NbY42i+TeVU-`^NKF}pv?8mO^sbi-GvyWS9#4KWyw=qLs?d$L8P2^)O` zn$8rF+*)#*2@oC)7!3vlHzv#FIl1WK3wYBTU(b)e<%c=%?4_2P$ ueUgSq^d4-! zVNB%6`skR%Z;WVT@O2QsfizkclAS^2;j>@7iU0W9|Ct*;`f;*O2bJY?dvnaqEf4~% z4+a=x$T|fsczldxSt0{M^Ze*dJJ-jn_m0<;(I?4iA8+*FWPkp#WXejZb~NjWysw$M zRLS1hn*2u6SrG{uh>6G!3aW};rs&zoV-J6mEq2Jy{Lo8z%eBvDXR*xS;5X=m5gH-U z%eq2aY0?D+K3gR8&*9F;4FCE+eUO{)9YS{}s=G+ga<4;rzMCX4%|x-FPO$Abd#&^d zSC*Sy hd`T*z} z?z`udUc9Hbv%hy=Eb@7YUy30)GOJcbKWz@Aj )ttu6>|#1B#n^T>! Dmv@qA`Au*Rdl6?)5^Ppm{+O5 zGr>ehoypOQQ99Eq$*|`a7CC%y$RGdNU-0_Zzn&}h@1+WmYsiZN1tP1}nmo&?Y61Kv z&E|r9UjXVTK>wQ$EOXsoyob^Uw)E#DR?F9DBMJ|+I-~F1G&yzTUL!N-R%tS$>CX4j zq2}>NAHuD#vTxs6{Nmewl{dWpd)V3+iE}rz cnzpp%4AW_qOq8)9T!S0Xpt zgh ND(Qw%m_yn&?&>3sME}F0vc@`8&mV+Fd7aijGNT^^{pwOsswaS3aaO zCQg}_#{{e+QF)A(Zguq1!A3zeQhmk{+w-a+V@v|CG5Q88iUvhbIDUyK^eK8Oid)`v zHJj8860wjnuTyuP5FovGrHv@@T2LOrIq-51F-HDNKp$mLX^jyx6gJhndZO=DDLYMr%HZA~$wwJB%|)2U?31KDeqS)bc#X*PhYH zVeC4Xd5r1N@AU8<437Qh?PmY^=kmH&zl_6c1Max%Zf?8nZoYQg?HoL`!k2FP3d_r@ z1S+bkVmwgP<2jVch$u b7`4f}08X6JGGv#%XC&(I27?FmX# zSj9_TbTwC9^}GDu@4tip`iJk}zWW~}lr^EM>GbBvtQB=s6txNjLM;goTI&-wQ+_6P zIZw3yIFU~ClkY}{O`wRZbyE6|Rwkt|MCx)KKVD *@D$l(_ql_S|V=`$Pzm({ue!zCJx& zQFPz#^>^HuU~|NuL%Z))l_Rqq7MFIivi!&?e=ScN*w^P@5RILuD7r*+>L|%Y5T<`Z z-p}w~4U;nE)_E##%EpY<#yvcwd|Hrs@;DVH6`sL! b$h2BT%xpX4-JdXLTxrGv*-NBqBk z@D4ut>Ca)i^Pn=3&8GQFDXh;-H~yn}ZA8^Xg+)|Q_ g17OXN9hF4XJ^{cs+IB2D4V9hrcO@lT1QlDT mcrd;bmk!86MpV3bdG9ure0qeobf6W;iqmU}f(4yof86o;4IZ6NCCvfi^J^^2e z8gz8>ObC$#_G1hwb6%7QGWL^5h$ihLsVI!iAm$Rc+88o6ssSyLl9)UZf<`_!?;jZ_ zl3QR<>3LMzrnCnwgoQ@FS2YH(8%%z^T-V8cN~BC|h~ GYH#^*o(MILzQK^}PMVb%vD zq95XFs9i+c9BT`*yhoOI5&%&`oTam~Q6z>Ch*L7r2{6@(8V_mkK~L=(O;>-?#aB&C zCTRqvB{Ng92toWoVxS(^C}pr#llOY*zT{v6qYA!$*S*|!`<;C1)1T+Z|L$9O>yN&L zY+m+xYYZBLu{No|axsnE#5q1DRY=^7324dx^zLlH*MX`Wk>wro%%o>lhz8TM{0~3- z54h^e%lY@e`G4}2uii#ESS5sz2v;GpO`eJAs*l(#&22|!I?o%MLf@_*$BHm(YGM^m z4ET!rrWt3N_3{b93o&Ocnu_sYjly^?zThm*KX)6M8sn;E6dr?xw3o_0?`4z}FnCm` zSm Zfd7elW}Qr9@L0{%le-4$ zwAX1*CB~Y)KgS}lXvfgw#@E<11gt2 71rPp1c91R$seQxBT2Ts|=d)mN$@EKdT zZby+#8P;tu=t{spJ{235Vm7uY0TQJ(Doh