From 7d05ba2946df5d644cc197e24cc1d7fdce4b215f Mon Sep 17 00:00:00 2001
From: acarranoqovery <105300721+acarranoqovery@users.noreply.github.com>
Date: Wed, 18 Sep 2024 16:41:26 +0200
Subject: [PATCH] chore: new documentation on how to manage blue-green
deployments with AWS RDS (#469)
---
.../guides/advanced/upgrading-rds-instance.md | 104 ++++++++++++++++++
.../advanced/upgrading-rds-instance.md.erb | 92 ++++++++++++++++
website/metadata.js | 9 ++
.../static/img/blue-green-rds/switch-done.png | Bin 0 -> 294878 bytes
.../static/img/blue-green-rds/switch-over.png | Bin 0 -> 146329 bytes
.../img/blue-green-rds/update-version.png | Bin 0 -> 175535 bytes
6 files changed, 205 insertions(+)
create mode 100644 website/guides/advanced/upgrading-rds-instance.md
create mode 100644 website/guides/advanced/upgrading-rds-instance.md.erb
create mode 100644 website/static/img/blue-green-rds/switch-done.png
create mode 100644 website/static/img/blue-green-rds/switch-over.png
create mode 100644 website/static/img/blue-green-rds/update-version.png
diff --git a/website/guides/advanced/upgrading-rds-instance.md b/website/guides/advanced/upgrading-rds-instance.md
new file mode 100644
index 0000000000..e0c6592a7d
--- /dev/null
+++ b/website/guides/advanced/upgrading-rds-instance.md
@@ -0,0 +1,104 @@
+---
+last_modified_on: "2024-09-18"
+$schema: "/.meta/.schemas/guides.json"
+title: Minimize downtime while upgrading RDS instances
+description: Learn how to upgrade your RDS instance (PostgreSQL, MySql) minimizing your downtime with Qovery and Blue Green deployments
+author_github: https://github.com/acarranoqovery
+tags: ["type: guide", "technology: qovery"]
+---
+import Steps from '@site/src/components/Steps';
+import Assumptions from '@site/src/components/Assumptions';
+import Alert from '@site/src/components/Alert';
+
+Managed RDS instances deployed with Qovery have by defualt a maintenance window configured, applying database updates only during the specifyied timeframe (see more [information here][docs.using-qovery.configuration.database#applying-changes-to-a-managed-database]).
+
+During the maintenance window, a downtime has to be expected on your service since the upgrade might takes a few minutes to take effect.
+
+If this is not acceptable for your business, AWS allows you to deploy changes via the [Blue/Green Deployments](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html).
+
+This basically allows you to create a copy of your database with the new configuration (called "Green group") and then switch over to the new database by removing the old instance ("Blue group").
+
+Blue/Green deployments on RDS are not natively supported by Qovery but you can follow this guide to upgrade your RDS instances.
+
+# How to configure
+
+To better explain the process, we will try to upgrade an RDS PostgreSQL instance from the version 14 to the version 15.
+
+
+
+## Activate the logical replication
+
+
+ +
+ +4. Wait for the switch over to be completed. + ++ +
+ +### Delete the blue/green deployment +1. From the Database list on the AWS console, select the Blue/Green deployment `blue-green-upgrade` +2. From the action list, select "Delete" +3. Once completed, from the Database list on the AWS console, select the database in version 14 (not it should be renamed with a suffix `old`) +4. From the action list, select "Delete" +5. wait for the delete operation to be completed + +## Align the configuration on Qovery + +1. Go on the Qovery console and align the database configuration by setting the version to `15` + ++ +
+ +2. Re-deploy your database. + + +[docs.using-qovery.configuration.database#applying-changes-to-a-managed-database]: /docs/using-qovery/configuration/database/#applying-changes-to-a-managed-database diff --git a/website/guides/advanced/upgrading-rds-instance.md.erb b/website/guides/advanced/upgrading-rds-instance.md.erb new file mode 100644 index 0000000000..dc4b50a456 --- /dev/null +++ b/website/guides/advanced/upgrading-rds-instance.md.erb @@ -0,0 +1,92 @@ +--- +$schema: "/.meta/.schemas/guides.json" +title: Minimize downtime while upgrading RDS instances +description: Learn how to upgrade your RDS instance (PostgreSQL, MySql) minimizing your downtime with Qovery and Blue Green deployments +author_github: https://github.com/acarranoqovery +tags: ["type: guide", "technology: qovery"] +--- +import Steps from '@site/src/components/Steps'; +import Assumptions from '@site/src/components/Assumptions'; +import Alert from '@site/src/components/Alert'; + +Managed RDS instances deployed with Qovery have by defualt a maintenance window configured, applying database updates only during the specifyied timeframe (see more [information here][docs.using-qovery.configuration.database#applying-changes-to-a-managed-database]). + +During the maintenance window, a downtime has to be expected on your service since the upgrade might takes a few minutes to take effect. + +If this is not acceptable for your business, AWS allows you to deploy changes via the [Blue/Green Deployments](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html). + +This basically allows you to create a copy of your database with the new configuration (called "Green group") and then switch over to the new database by removing the old instance ("Blue group"). + +Blue/Green deployments on RDS are not natively supported by Qovery but you can follow this guide to upgrade your RDS instances. + +# How to configure + +To better explain the process, we will try to upgrade an RDS PostgreSQL instance from the version 14 to the version 15. + +## Activate the logical replication + ++ +
+ +4. Wait for the switch over to be completed. + ++ +
+ +### Delete the blue/green deployment +1. From the Database list on the AWS console, select the Blue/Green deployment `blue-green-upgrade` +2. From the action list, select "Delete" +3. Once completed, from the Database list on the AWS console, select the database in version 14 (not it should be renamed with a suffix `old`) +4. From the action list, select "Delete" +5. wait for the delete operation to be completed + +## Align the configuration on Qovery + +1. Go on the Qovery console and align the database configuration by setting the version to `15` + ++ +
+ +2. Re-deploy your database. diff --git a/website/metadata.js b/website/metadata.js index c2c60f226d..f5d396c8c4 100644 --- a/website/metadata.js +++ b/website/metadata.js @@ -297,6 +297,15 @@ module.exports = { "series_position": null, "title": "Migration" }, + { + "author_github": "https://github.com/acarranoqovery", + "description": null, + "id": "/advanced/upgrading-rds-instance", + "last_modified_on": null, + "path": "website/guides/advanced/upgrading-rds-instance.md", + "series_position": null, + "title": "Minimize downtime while upgrading RDS instances" + }, { "author_github": "https://github.com/evoxmusic", "description": null, diff --git a/website/static/img/blue-green-rds/switch-done.png b/website/static/img/blue-green-rds/switch-done.png new file mode 100644 index 0000000000000000000000000000000000000000..53e09e644a148fe2c44df2aea56b4b3a24900319 GIT binary patch literal 294878 zcmdRWWq2J)uBe&Wv7MNi?c*3@W@ct)cFgP;5;HS1vtwpvW@ct)c+Sl3?Cjjxz4z}s zU-#G5)uk$_Bvq><^$C=b5{8GtgaHBqf)^DLkOKmO)&c?o+kgUjui>Q)M|{5k+sO&@ z0hNtnAH3gK7^;XGNlF4yzL%kZz<@D$=@<(q@7J61k znMs)uN(qD|Nkr!$66t{nay*{8j<4c#$75wICl+I%wLA1t;%x@~e2GxbYyE%;7jBPd zCo;crLLjy{c0|PrOQ-hb>o>*uKHhS8?q=zCfMC7Nzs^Lo3I>1hSwFNL!|`+uNP3!< zH_H*4fnh3E_BLZTo}kp=J1JIarAF~^a|jFxN~+QMG%2&yipktQ(P4Eo+M+K6N2xZi z+nvF653E}4zEUd^;ksB nh_9k0bOushG7EKe)f#TCK>|tH{E_24CgBp+=q_!_03n0lOpVeF)X& za>H%JM`1dg?R_Y(i5jYPZ(l+BdX)i7NS0o6?FWwl7bBkddk{+ypI9X5p~Us`RSiLV zEK<4fI Q!x08EP~!OmIpTu~wIdSF1?-g9# +(0 zagP5_vry7;ZCAKW4ERwNfcA~&uBm}V$en8%=f(NmMeJQ0Lx|6nZ}NL~(6u6rf*fzeG2dy{SfR=7_Fm6XAn# zKkwyyeCUmZMV6Uf*jXL_EWa%wn`2bCAwkmCG2Qzekl}1p@E9#k(WrB{#s8?>?>Xvp znuo>oArXok=EUYcV|nQ-(j%S%kBRr-cdL#4tYKsX2FyzrHwNU!cc!8u%q~^7;co_5 zEs-A}eX$ArISx?#)Zp6adF5EnyA`X6`{2d^qN&yBN>rZPK+kQd_HMXrzy~&DH=eVL zEse5|d}7YPP~ZWZd3G}o`t~w1uj^&C<|`E)rA-sH#bUTCOuC~&Dp$;|_gvk|$qs)y zXZNtV;AOGGY4<9}1o}|rRXz%3=h}C})eVKbC_{?^4OYlU$n_a`@5_uQORtbz*rkY5 zSX=or6jpN@t$HUvErkObY$B;p6z1k0#`^0$1xkGR%B}NmuA}snl)!b3bHldT!G6TM zO47Undzanew(~- D ?-J+ukkzqldTk z%CcbjH4)SOL6~-R#4TI{OrlwrkksK2rm4Am5bL~lg+Q**eLyJ0XF*BZ$*A^XV5kZ8 zDrW+)bj!s8+KN>tuWGXwbQQwM(?JI>i`B-V7hSe8hpV`fPHQoNb&vb`F2Fhy_|U=) zE}_TW=_;-@l0u;jv!%IBf2n*6Oe@k!BO)KsNHU`cdjQCF1Xfj-f!&%izSJS3j z%lFumf%Tce5o428^sn5<)|(farx zFI``oas7J2o@E%^97oU*RdJ|N4K ldkuyoq8w#WDE=^;%fGeH#`9 znHhgr1GVr2`d1v!830DuMTClqdbKcLa1$ns{rq!={%arxp$#(=gSa~J-p8WX!=S)0 zWY&Q|B=qPWuZ96;vp{v_vbUzQ^#QMN!nK`Q%bc;I*JR#=j_()iryk;-iSbBy+SLYM z?`?_|_x>%Su_u7v(?)g^&PP#IVCJD61VQf6ZFm^lzm@pzVecaQMq-4mm*Q2T3TMpg zM~lU1MsM4S%Q^ipDeE55o;xXb JlO%K3*vOAu@(9P>jOz1f?f< zwbka!3Sy9szL8Oo9P#QLa37OEoBVAUO`T1mxw@h58Bb x zHHG&)e#M$U4 wMp8}j)0fjq)%u9d&7blIlw z1~*A@3NZPuj}9-hnxFYNfQ?4ftBksoRDBiXMd^a8na#G8wc_k3an1=%y8X_qT5*Gv zOnn(0`@ohuUfh6@m*XWRLMkWJ-F=8NI$P)|DHn%_!NQyv@ Y~6z13mI zxxGDLz@+ETUAY7+A9LFe?d{n)N-C6i51=plm!I?3_UQSI@MK2!&xj+xL~vPGbR> zZZK06$P6}eo2@ORP-dRT7!`Db-4=E(pYyBh07Yh(&&9GTmrd`Vvd=`Q~V1@=T!~ zqOaHL(VQ%+kML#fLHtCGr4Q2dPFUIiQQM_`UIir_u{puF6mmx*GNI0 ba#X2-9C35-NkY%0q zV4h<~Hs}6~{(ycDH-!F&Bw`s1qsocTadB}X8g0%G!xPaHg~40kFk&62?jG)69g8%0 z<(}M$(?9z2$+hP9p{9IINZgZ!%~s11fZlfF^2no{L*cz@<|GL>{q2Qyz6$LJ;jgl^ zIL|)c^<51v&mz}WNJuDrCHKyE8sQ>Jpy03vO4jd=cE$qaC6^m>-Hqn5atL1ow2MEN z`+jxzTM%@O9E_cr4iZN6W#{w~V}IkH--CEGz$IJa<#Ag%uH{-cd=1yeh0YjS>WcRh zQemKE-ea-fRJs%f?A26S`}VxV=Yqv?G({1>J`zV{S5K#)QwGh-6*WIvFDOe<$Z3ha z7VDKX5Md3jVLiEC&u@h?v+4m|KqHuS3QMAA&C+NG^coJp)A|yg7T6M%VjsMOhW6_b zZ}VhAwN?%`G0QkdifR%_kUv8$)tdc~HYxZpfecwq6&W#hPa Fc%g`#M30$AIT+rt^MQ*+Qrgj)UQC-p&A?MDp#2-dTCJE+CUEEjIQ;O L9^O5NuPsgZN#p_%p~dJOo>SUQ=(L(sKh+^E;(s7AM#9vn zm1@0VFhg-vyP?93&vDifnB84>bF0UqdUpr3GFwPZkk%cu(RofIISXa6DdmAdGR5YI zrz4wM>HzRMNu*krYt7dJ2wpU3@r1{zGh->?V@&-%_9z7i--+T%j&Y=)ExUn1(;Y9@ z_9TU>&r)mJ989-XoI`>A;H=t{?*F{< h4yZMDMy*p$ef z^voB# UN1tEBdCN-tXi^DbkkueCt;j)!a70D4&-pix35wT+b-V#IjavZQ+43 zMZ$rmkzrJ~a+#25l&UL;Xo<})-&Tps-C7@Yu;r26_)_q0?`p0Wr}Rz3UDi(m-4*gJ z$g!koZV(m?&(VdFS66<827t)t#nm#|Cq+bD4^xpOrTiEfG~yS&R=W(oCJZDMp4ycx znkz6eG(^M2J#}At80Qvdb2|BA)u}T5;xRDEQsm3u7yj-r8z5qFl4qD=)?`aeNN5*E z!ll%2OTIpT^?g}-qg5!esbQ-@YAbWdzn!-~zvuS9hKI+hi}9P`ce`DwcXl|wi z+>?9~4XK@5_k7>GW +rU+1LDTUQqnuwedh z67U#bd~)5h#|u`i$q%O(=5n>C<4EDas@x~IPe9-ow>8PHT&wU&ETuBJmv5eFIB3XB z7MmZBdtK)q5NZi5ri)mwn?c!~)>>WdCWjA10|Vb9IB4=|l{TaLEO#{KEP>(zx8<_s zw;pqD1chzdMbkxEB?{2x`DwZx1X8hs$^~jYQ(FglJCovMjjoMTyCbfb=M&n+ECGiH zX=KmmCyg`ZFPuqbpBR2o_|Jn&3WP#Dp3+;!65^1m*{r9T7#QV#9BR466@;HsSzgU< z=y`luZXql?H8#GjS?Wm);R7=a?|CeFK}pzkL8dlg{l2B~-06$(mhBzh5VG(GETlXv z6NOSM()a~+o;V`API;N*xSRe5?rXvv-hCfFis3X=_1hnQt2?rR@Ccd6Fg0*n-c$s% zI}ynXG80vtMIr0@f$X$g$fN3?KJ`CXH_X!1Ws4H_ DpFPS^7La7cK@*Lb6BX{n3A3P&&+%B8Zyis$E(%=lkIL@gt8Uh5~bxEauWB=hfwp zeJU11LsRb)#2ykM#hNHo+MT6RN9kBp)tc@2ywF3%!Z{_@;HunUH`fPpyYZ?dv8Xah zAy8(f&$RmyYbP7YYh*~iUZ*E}sfX=O24i_X;KxgjSU};N0eN~!=TR}nWNh!ws?e4V zh?^I^?eSN`Viwd>iH{6^W67gsdRRRnKOldC+&a!#Hx#V^7CiTM4GqQPOJtg2`@OFS zu|El7-hHNV-?`rrViess)dRyK_fbyA>RLKGH9>^(6KTs$UyCdAEG`#CFlcar(nR7k zqKKS;!s8U}V~1}no4=sXR!iK|PnOB$U7VdfQBWm;oXVF<=@nkchycw*fbpiYb3js8 zpD~@zu+kTG>s`ECQ?GR?
z^H_6sGj-cZ#b{xOkND dO3Kx)LNAGu7( tB?m`JO>J?9r=AHrsNbcH7;CP8VJ)U-uDI_*?sJUs@f^g{?;d-> z3239;@M*=%>f~*v!Zwz2(|4Gi#flFjMw~$`BmP|{sKjsJuP>^;n}D4mZEQS@g|)>( zNWAAU{ozb lmJqgP$WW) zlS9QdA#b x=)Hi4l{A}4D|e-R%H&x^dS})Eky6(0B9KK zK4Dh6k`pLsu|$f=P6|mH?OE{1bR|O>hS6;~Nqv6#`~KUHld(q>OMZb8HEu;IP lgYh;TFwX-~GJ`V|+1y=i>J?@-Gzge)m*erGRN&E8i!ED#D zJM2Cmzm+N!Cs 7z`>DOl(XP;x;zonk2IFhMLgO@OUSUkZryo(6|SjV-F5_ zEf%E2gEULnZRvnuWpg@Baid?cSsq$cBrRWzH+GEuvop^*NrYrL$PN&2SRHf4oi&?I zbEH= cOL}omiy!g5fc<#o^`Q#nIWT zfvFg+>KaPL;;iEGxmI-yS9l{d(vyEJd+Spq84=)U1JX{dDW9O-&A?hy>9B`JFh|W^ zb}eD!M34;`xv@`5n`0(cw5EWyoBDGkcL-^Q35l{P=ggA>TSx`p*EV#TAuU%^c2_L$ zQ_CNIkva-`9DK+hOhbf;t2O}Sl&w1j0z`PP4-ARB{$4~}=g4{(!%~*XL`dZBPrp(V zRvNTvEOIzrA8U#c4(Igm>(3Z2-=b-lB&sdctcL@ b!dma>d~FdxB1Bzfbm0rm8(Do!W&$t7*X4*_+5o>trXZHMPB1BN93VQZoCLb|Sr z0y+NzQ=k!%|FZ=L5a>%Tyy^_X!wz(fyT%W2|IKJ-?qb$?LnOS0xXMb=d@b$%_NThj^g{83qj$B zh{LrnUU`;*t*YSbdNv3~k5!A}myBPZiCDh_4NkjssU8NWaH<&xu`x$(yeooX;RnWL z2LhGas6VFbzS U1ql3 z< 3ubNz%;7 SA?nNNjfzh0Wl)7t{)5GviFCz@%IIMO^_I$$(~M$U;Ydr;P*WHxjB4h z(mWml|1tB?6q?_N Qq5n5d|4C5rSb zqhXFwhfo zQ&Y3Eo`@bl#sBv~WsttD#z!P1lz1QZeanKekcj%$3-%16MNC3sY9Yn{zjxrQ43?qF z(=eXnAm*DSlLZf5fGQFYp5Io=_Cf2<*1+G+S2H5WICX}G$s|KAuO#`zkN+FTTz_%w zQN92FCJ*08-#^PR;|u(+y7R}3o=>1=Fy2qB@k#wf692<3BLR=8460c5-)4OOg}eCP z;b}m*9pSI&w*R*kAOrec3xAu`zn#6mRJvck6Y6 ^~#$XC#x5G8hY>Nf!Syy?=k(E-d}7;lf_9tbaer zf5mXz59t4UQTHB;|JKJ)KIU|pG?Eg)xFt|*fwGQ4oxH9R`k(oS&-u=?sqCm=myQmC zyHjrG`*T@7K0aE 9XPxhHfs&PK#l(T?C?I4CQ@YeG zuzT>KuQ?VG|8a X4(BpBm8bg{)R581+}7oU1} z3mZP?PJ7l*kAZ~Kh*7=tAXwY?_Jz)9!fT8S&)s&0fulIIS#qW1_J&}7D<5>NIC+ey ziZOv|tW%b1h0@yPY 3lWbqP+BA95i$6PlV!VU*)8I G0V%*Is8`}9|b9-Pa>%|KJ7aAIRBzf*~#UY-Zrp>*Ow)p<>@od2k zD4odvPN`7iQ dEGL~CnbI5umm!&2CdxpFMEDo8FauC#jfVFn}r;?AgMc)s)u zy-OjhH*M FhK;TJRBg${m(ZY7A|@xtaamam)|rQ(cJsUsdxnRMUfILCtpO3^uzU zZoO&Ar+IUj3bU#sg^SCJH790sTttIu(Jbf|CBpo2;_sfb2Imt$9va@Cc3zFwpGiB< zP?<%pE#pV$+2-%lAhtSV{#2%|dBZu4>r9Vbwd+&wWv5I)<2uI^9ZR_r4l!mCGMo z!nEF(g?ShN)TmiC8e3&7wZ<4amt324G8`{QkLO}|q<` @*W)^{8< |w= zJMAQ5j=#n(yN!#~av607UfvI03d=&9c>w6Hd+_P$=}VUlG`=~SrDt?M@!whXxI3yl zQz%x*^pQ`jCK?k83lG<}aCg@ghSbztp;knE52wJx*8QwxW@4IX&eG-q$}=+4n=J6O z95J7W`i~kTg5MQ;S0_w# $Z r#UkNzNzR+TK1~|5#1iqf7Y#S!y BPwjAPDs61dhk?DPH#F_2z_H4Awp(^1KeUIpdB>+fn~?XDorFvC&ZpFTR!M zP0*tHmD^p4&NO9}6k~yAjm2y}u8HGpj0pfCs;8x DZiZmcc}YpE`~fM}DUJ(LjC`pF)QQCWUBSj<)16lL zH+O|+bL)uaug(ou;BH%V^eif^j#ouDUcKE04`g@k8(RhU`<24GCqHBU3!j9cn)&_V zGCi5hRL*LDimRyHuerS*EanDt?1Q(_x^8YvREz3ELOwYhv1m3s_jGqV^Sl8d5pnAs zj&4EUuv=ZOm<@h ||2hyyfRLB5t5jhI=g)nT(4M6|Y6=Y-*>uSulAG+5nN5CFdd ztJj{@yY4hb%O|e3xL)69B`+&1`i0gwOk@d0XxCaKIvg<*d_9;{yoaT1A)$-`C};9L zG^(lLu)k*v*Alt ;m5afaL)nNmgbpz<@&!YfOWI8cRG4Im zkuiO4B!Aat9HfTttmd8XMMX l{02oO{r`G(5eA?G8xRKG$5a&?Gu(w^cD4Jtpi{yhs~}6C om-BTF{?%a4!uN`kB50Lrie*x%7SXe~zh2bnR zayuO?g5C)i)Sr!4ZW)i>9WUY<4c=Y^-<)~)ui$cq1;zQ;DpPCci9a#-_EI1MFVM4* z8m)DBtt_V#laiuSseL?2NK72a{dX_Wznkg(U|Q 6eYbk04`*M*!Iu0Sp*pNrp9OQpl%EgwSjWM21IbfgAmETMSn)V) zgkQak0qt;tozBzy7b0Y^*ac!-Dt;2RrV!l6mki_d*Z S6r9sQr_SXi7sHeW>Whwznli ;@pzY;t~I1ZRDneX04p0V6xvU5jH{c_OHV9@#Q zNLGnDDc)r%JU0C^uHDw&A)JX-Cfb?##pq>Eb7J&*=u+uvg-_@t z-n0E{J!J1RrAcjtVJ1OrDTemt(^=#P{+p#P={qi{)T!ahX!+ItF9UWM9jxrHH|@hb z7;!dfSh aWkKcIev5u^z=)EAXK8p0A~gmZVC3 z$;wN=Y&=E_Oiqq?wq4%H*GuNdNbhI%T5iMo_++X16fvLU*@TDd1S^zm<^+i-2Nm59 zh#rIL8Z{<_cfKSDU%B&fi~V_cY{2xCg2>Ymj69kzvd%@@yl!q@R9;^E^R?)V<&CTO zC}A(26nxA@kOxs}iOZHQN{d|^`E{p+MJV`rI9yWMqYux;ET@>EQt6c;4cS4d;a<4F zdOd!i#aAS;qdZ`^$wM(I6p*0t5OxG=!4fdmGc;GO74O+aiCEwY3;?-sDZJdjxxEl( zBW8qSJ`GQMZg@Gv@aD}U?cLZwZo0({2~~Xij)wfn;jDvy0{?@+wBX};rF@@sIzO5| z5fNkE%b8aM^u)z-Pw@tFq-&$=`&S*15Z^VLzN&wj5*8HB){{u;eg7r_`Tm3EN6e4y zm$#{IqqKJd+Jjf`8<#Ao_Xy0y<$+y%Ozyu$ME<3$oom;;^B@@JRIGU~ kj-~2g~gz?S|jM0udblOW313VkRyqwRd+ah1%+~mfHt2l`0;$Y z!WIuWQ^*py*v{E@xq9=TyxIeRL;AP7>C6rvWHIdr$RG(e+7Jj68;zy~3q=%Yw@Dqv z(ZrQ&z^fu}uAR2sT^~MtulTU1#o5GUB4d4b+LAw(!asU}nlBblo69JZ*VWm%9ug2c zmCEiE{ETq2RQRAveiDoUprz&HAb!c#eg8-Z#rMH%+IiTje;t@e7=dAo=wavF*$t%X z3_po4U_u%{tRQLt?W})o)RiA=VVjz!!->YYlsa~*mJ+$2T_Oqs@dm(ddzOtS<+^dD z=?kLGLYXii+J>MP5v2oAy zT-o7Rd_fG?t>^NSQ)vP{uiwb>A*SDaLRKLI|4<<3Mv(d^-usXsaeAid)YYsCa={9T ze(yfK@0~TLN!AK|QE{BbB4u%#Do#C!ggfaiV*E6ARSe$&M0^RZV4|Q{YExQ{5)w>v z*J~w&MVmT55Y@O}$PHdy($R2&_;?;qQdn%u+!YDJBd-H`XQOy0D15AJ6gKyLC&dw0 zY8&nfby_ksk?mq7?Kj2A16rK&`WdhqKlH8oog;(I)6jbR7A+aIQml70@ybNj-H gveD9zFE$dOl~;f;PNnooXaXcxVvwT; Y;JGp$blkbU3#3Y;f%$YBnOcs`-EH zy>(DsPqsgrkl+D=2Pe1_+}+*XlHl%ga8GbMxXZ!aodCfO?ry=|-QM}$x%bX|XY!q? zSM^@Ks#m{%PVL>hH{H8gz4WtIYmjN(Z0|~A^}281adHlIv~T*`hE1rOpNz~#yz}Y! zHCvW8oj6U#C{^ftD?Ma$%&A_NY4Alx1kS_3Rit=s$VyGKGR1xYPjkDTK2*6d7LoCO z#7v3P`oU-Aov%=H;FifGMZ3UNYkt7qc=ndkRFh{rF72^Z8_uUHB_YsOLh1zGCoOBO zdExE7Qt!^q846FfpCcnCeHm}YMvwXJD)efKb%B6iker6kV?}y{?sb; BQE>1xe#DQ UrMqxBW+rn9rTWEZ)9ano&N2EMZfo#b<~Veuju(^ zz(z09J{dWMutz4}#-ah%BeGtlMgwv@4N&I6a_WbmPuFhtT*&*8@7N3m%Ralea;DgI zX98EA$XBST)X%KWUzHusQEI%~0E=}ZsaU&Ve=9-rXHogzyVV!h&y^hMc&QGSuQLW& zI-{%%L*_lKaCm+^3^sjQRE~vO37mPQ+yRzKfvm8+q}lGxq_^-dv8>t&gm|0zi5|)C z-IId{-}YEykP#4Qw5oqrW(SBp+jcObhja$qJ0CAmv$A4D`u6)>*IV{sapn@6nTDwo zMA!Jd2uPb(iafAGOfFIHn6988*4>>G#uVwB@bS>sVH3q_v{8g?ym~S*=H})f(fHeA zv1K~_k$s-4Y=-74f~-O=a(ZMMtXG?Cj-<2t^9ZnFUcnJ(tS9jJ&FLTuVJp0I@!ySQ zNHClBHZciqrV5&IcC%}mL=o}k+hMs$8^wvT%eKqYIZHR`(krbD^4ldL<3>egGY};Y z?3J9*5Jp@2F~LQ=@X>{ewG~?_1df(Qr{B9-O|6Q-mN!bURK|^u>p?W*2Cjx_nqz7@ zQZ9M{U%kg=gv(ZRJ56!4T`Hut-`)$=+BlEnA&+u`shB bJ6HGUX-%U@; zA3$=bb9DQPPFjh-+!q#3_fy?=2iDr6s%nU9`7q2Kc;5kq*-S3Q(C9HnO%EURkkH>O z|0oRPV_>8py3%!=w^iQoU$lW)IuF5McScNhRo`p8Z(bmQMR3|60U$Sh6BHIv)f_@> zCJwdZSj1}JeAGObk@0X9)w}at)UoJjmKG5crUV@U&zb9c{W06cZbME(zNZ2nalnMI zJ;Ep9-{oW%+iNmeW1Zj&Sc^d*_6iDe`f;}n5^9BWw3*(@))(Pl`Mk_cuF^G23aML6 z0k!H)!T`wt6e15e2|l^tkGik2;q*J4VHtc2p#Y3DH1|LEE*!1~HYE1<^WT0Pn-&si zcC(ZK+PruOpnd!pdr{sHWpGywl5c|x6j?9hDNkRhqfyU`Uix0RyLHrNGwH%rBQcA- z1x{dQW(^#J^Z7Z)Db=cQpanrS+?_J&*1OacB9<}n^RN6M-clmv=>M-`KmR1h{`*!C ztgS!d?{ f2}wyXcTsDYa@h88xk1b6f&aX`@!)suQ{pt 4@Yro zIzq(wTFciH7n18A6YJF}xGXuWg9;U^-IN*`jK3yGp+af!!-Z34FVLN47^tp8&zh#W zA0Ohi-FSmhBq5lvbOY7fr)%~^K`V-H?_ b|~cV?VNoxBC~*(-ynU329PKA(@C5fwkullJmM0{2n5qM`EzX2i^Jmg2_=@ zx;8HfkYuOk1u5S5H8c*ln{HviJFHqp8g7606a`E*HtUYY5H^G@KPUvT%J90g3|Q)= zwKmhdg4}|Vi0HCzRUYZD3N5wMEZ`8;qJBU)875cmn}}{|bY^ml$?Uqr>}-9dW#o?U zZdBI4HZaQxEzrug*d{LE;-GAU`^af`;%7Cnzv9^_F0|yb!!Yrxy;7=+on_b{r)1rG z-%uAG!DK_5cUF5OLD9;NrX+Jz%Feh%@j);J)1(n~jaby!xJULleS&Ur&&snC=!JtT zIj)tBNaN#7gEWz!-SClxnhPG@(9jT)x(xg9$TVIxN2mDw{Zj_G`K(yGUx?oGe7jDx zrxif2&1SpQEQa0)bAJzAs{KOAPM|s?%+2&s%0`_mi~0HFW?CXLvwiDu-+feXSYMZd zj4Y2L?|4k(wFggCu3hu>5CmrR`(TORXtM8STg*mZl_8~Q>Rc}hk?})cWabCf$_{3U z?#qbOhK0J5l#sKs#fEQ4L`ZL_tZ5S&$0y_RgUN-J$SXh~$$tK~U3v;eCL6p?{l1yr zY3-g{#Z8Xn2Hj7v$jG~^9C0p7OUhlVnAFOe?1PYO> ;`CY-;fkl{{DTAHg`=br7bfu@tZQjJ4mmNG&aPm9Y?w6KjR zGO~y!;ZdvOSl&m2%SNnHW7$VuS7zbvQeBiXq5f?3QASF@ L|FvRH%-HWu}Ql#eNmKB1pZ6 zL!9xf#!E7dy`)=>r~ZNk&GGT2(-xBo&+)(*?FURNxfMxGYyH^ZkYx*%2C| ;SAPB`wgO;A`#dd z!N G*vck{t!7C#03amL&In`ADy{0a zu%Lj)ZOj*wc1F-Rjpb%mo?uZYA0gTTDOf_3PAe8|uhv5CiXdZ6V7%J+0*gL1bgn>O ze+39L{mNudSq@uN4*>DnDG;QsETQrY2 mDLe>J`&CN^0C7)S #e0vDK(Xd4k*9 zJKkgu2fw7Gq-`&__9m4xP_}NBtx#>x2o_Pq%@ TH+za( z4~N6OQ>q|@C=!T?d2F2VG1kg)n&q+BmNk&%JNL^H5{ CuF9IYX`vg% zw-`@3Ic&P?$9G~JR5t54xZiH$$gO4HSE0wqL|n0`ZUejD?;U>RUdMVzVQ4uY)JMLo z%tf70$6~HD0o65q`=kJ)-q5y $!;dfILk|F<1V2(WE)zT0eb@5{o-I<@U Tx3F5IrGc&I`Tcz+_9=ohc3i>=;}#B&2*JJz!SNR9?+JO0jor3 zx7DFXN*n_Pjy8yWPA8E;F$}F}QO)1f`)w^u@^q%aA6QbZGH*84IMKb1oQt0xC$7U5 zxhrGY*w;$6#!Bts2iKB*_W3dC(P$R5J>a1BCL#^5oQHT5;%X?8CxY9u>>C%$n+YrL zV-=7jE{w6sLz;6fEPHur3Z`qKL@cq{M+=Rc(yb_~Z=mB^bRfCm5p|f?n I)hsoi)SjPRTr6+x($HT_V$dZlM=Uux?&BX$I$=@`Q{bpni12jjh)p-?;|kg zprN5alReqcMG_7kPUooYR&YmYSt-oTfmW+oOdp|wk4{rNBw-nn={M^2xMtmIJ z=k*N=QnALbkR0PDS`PwG%Zh;A?VNR@2PBu6=1@~{-XVi`f`jYRr`uog2Z`k?z_9a0 z=}=O4-Iu;=@3!W>gFPXkpY=h;(pXX9k&)q{xG&T1=ac>`8R+*S<#n>)h)lroG0OUV zFmej3O(kST k;>aI3W!+wn zBtNM*I84--jw%{`{c2%o81RIQT8J*PP;Kn-bnl$-m_RZ kz-KE+-cyTp~rTyhT zwP@F?2h6tWb5m9wL#t5^4GnGBj>m4}eLsXQ76D;k1`67Kd~Un_5Nn=Bz4WuCVZiIv zMt}+g3QD8W46H`YuMs6KW1uSb`MRGazrXDWaW0#(Ii`6}SSk)be$5ZK<`sv^M#kgZ zzPkuR+d3My3)%IfB>dK?BR_XZlWD8V=doT!?!YY20iv+~CG~-SHwR)sG7jTQOjTib zpQz1m`|3zuVY(`^)>?#yMmbUIpu_QYq+RvyNWN67;9=t1uSq5MH2ln~93`=GQqBFg zV-Q6UE5P8?Nzf+Ug^kp5Fl@EYxdFt!UN2D@D{ZYq^=u>NFKgTO8BswH4;5E;qC!vr zmt$HT!~UdeT?<1wXR1#Ly5L0&ecGO5=@0EUS6lij%Lhxw%2ge)8{DvY(s&svz@L+Q z(G7MjF>_oMFzJLQ+HHStf54q2R3bwCcJPWrpBD~DNWm#SU3s9b^edQ4|1vbmYepx& zEGT5uMo%-3g*!}#*e7O dy34m#sH g}ETMHnDZz-Jez8GK TU{#_l#sZcX?r#1lMAY!pwYh*rzWSS!t1@)xv8_5fm>E{qVd=R%elRE zf4C>THhJP^8#QRYC;8Mr^)t^X04x{t0IFx%h$cwp5-;k-Ls(|f<(<5+hr~5S8m<& z(Cpu-X>^$X4frmLEUWA;SOjd5oCk5Tae0hDefW&cCprkE_jxp**=NJE !#SjRbxuX=kEC uvRgy6tk zYg^+oj6jybdse8^L5(Kz4f)Y{JE}{Q-^1N~x^(${B55$n^IgH7 zus%C>hC_WrSg#z#)@ydMC;`;$X|K50({F0N4_n?#@J>pGmtxF>?!y?e41AT567^{@ zB`{d;HmHvjInNun=xqyHR}i8y(t@8m#{1+~jNP@`? dC62@dteh#(9LU^2pTXxcJE<9O#=9b2gw(vES`$VE9=z zr!B~D!RsygXf!9HVOy;lGf_u1>nG;dJjfDXU zPT1=|jgq=NLQ}y-n@JpNgu}L_CZ)jPZNZ6gbCOL78jKFf>P19GDfp)5>eAvv8LHMc zB^MQGVYQk}y7b}yg{|@j#0l;*>geP_Q$Tmg>;X%PFcyY?c#7iSYTbivj7o>Tp0Uz} zN$g6n;q0o1m@r^wMu{k7!9_@={V88>QN0jK>3t^rhD6x@DY0sOuIxeKwX(%@aZm6S z?Ya#WHY8?zwB*wVNf+Rfgrg)=Bk6{T2RU?TE
k)ZaF4@t5;(i9j?*$bUTi{{ mpO$viJ6- }^#o8s;vw;@vOU(F0(NQCQPpb5+Wss7zO6_e||!Fc0BA{JVGHBZqNYl@9Hl1WBp zfWaq2LsB-q_j a*I`~IK0E#Kc+Tc2;$fJLzbalBb*oP{>CCZX<*h~I+u3DE5J zRIU+O@OSm z_f4<$?Xo5Dby2>wjFl?29Zo;VTA;=(L=fKHkQ(wG^`w)boTPEj=v^;+Fn&<_QU$v{ z28P76u~=DDZwiK73|1d6IO*5{%h=>K%UwKW{fu)wJ%hb}4egyI&T5)nlb}HI#%=gk zbNd#~lm8E_Yz=3SLhvj9e46wN{$zkX$)CVX|AgQ>O?b *+y&lbRixKsY^)=}T179*mto&W#d}Z+LRV{X;S}zVdkr~uv}HXfS}Zf^efr;4 zdgVWGs0nPMI#~Ui;W7zdyCZqK-vC*_NKlu!LrCDmzpA h$=C7oj7JL0!BSX0Hb%hlRN8uC-`sQ3%+{& zk3VC8*TMnZFPPP@{;~C+I{k5rKq6>XNi1C}^yl~gxu@U`G#t|Yqeef}KaccJJ*mFG z%I@^18i)DQbpELm c2;3ML{KKj#)vxuPrVGwgf@&45MuakAs_Z`a`@d={) z*GGSvv7bNOdtAEjXx4vf{nyF Ac M6BYwbY zrX)c9$HqUuverRicX&IXX34%17RE?{*ic`MKUZP8A%5kUu3(>PT^{EN6HmqW#%K%m zPDP-`eDi`>IN)y04)M=_=1+wDOipayDMi$_vwnPCv9RN6&qC#PKP#|>iA!fw dJcG>-RWu97$j(q(GLbU`v|BdLzERMq5PznjEsbgkMt4Y?~vZTLzoC+ zS0GXRezGe?C}Hs1#mNBqZX#l3HfGW3Qp71B7}}>E)ja02W(LLPi^n8f6fjIkVB6V^ z;L;Ie48NyhfU>u@XS1BvSV8lr>96%pW|J`Qu(|{L*A@(;BVhdEaqps>Ao$Bq{J%j~ z>=@H`717YdSuIdZOiVfrN6~i;mW%naI6J15(N7O3fx$uX3`b){hTlw2ISKv#f-s1E z1*_1ASv5=BktqUx_{b1{I_<4BHvp#)93ExLnVsH{`w;Sb4h_u5jIH?`MB$c*{pla_ z54)ou>$8Z`GcmF64@dOx?dTWbnFMxxr#J#JeINgdDv1?6-}d9u@vlO&2(1ZFzQ@G8 zqMJ>Ni2=}_U)Ok&j0*pLEc(|zFP4c<<$BG(e2#w^H>tIV*X^s7NM S+YEXICH4`**Qr!-(EUs)?XC~+ATWV+KA(@AoOv!~Db5zN`-=^UZEapcCY7$M z&snLR6V)nx*T#Ba3zsGr`n9oaQe_oLHTYnp1Iv}z>defS48DiQ$BGPy{nfjWZxT^F zoXT-90g7w)_Ct#~SygDm!N9;l1)OH>qn>NG*cgh6<|&sObl421umP(*SDGA6yL*Q< zo+==7;Adm2Gl|%*vz*0cwexLiYHE(asIIO?Cg89B(w*`(rJ7>^$T6*v5ulo7HkY zCpo>%YqLz}OZFEITNr9RGQmc-Ga~8v{yDSLAFpA8qn-yp(bFGY?y*QjrNbd0Ai%>% zw1PsJ)yq|@q&CFgz+Bc;RjI?!^_#xNR*TLy3-}#9_#(rXE>=3 Qu9?Goasw8M)hwrSkHVK~9CtFveHc PF09;r3i2$^0hP~mc-(b8vkt6Y5lst7?o9!j-=4Q%xAXYGw z?MSI~JPpki8l-aY^S5djXUI$#z#bd (bkcW7&AEViBX^atr__>M<~YFaoga8BrE{}CewlrH5a=0_aYAWCZ4y#ybY2VYyflPXx zX3aawi&4 fKtF#QLB|9cYx&KOq@dcjmFfJ{PPE3Y&(0!#YJuO{U zP8P~`NfnKV-0g0dW7X&7X%=O1`)<{rk!JK`<8K*`FET>mhX16%lOj9 ?E-XaWtdD%*N)rJA5>p&;}B4c?213GeiU0Z)SE=rc1Ewy3lZ!YMnLs zPPEZ*Tb+5_$B9bv4AmI5yfNX!+nzefjMI3Sn7DCqm)b2)_MKCWFgI3lNW;LHTP~`# zrBfg)Em|41u7Qv^Q^?6K6hV;Mw$uW*!yP=Xi1ZLXG3MkXx^{>7&I52-I8K_Lo(3#R z<8k%A?PrpXTt45T?Thr<*ppYfepKy)o-Nlal9%-~o*P3ZXc??AdExe%tNiHV;&La@ zpkAguTdp6?j!r2b>m)+`$b9iIlFnms9eeq6wBuI1DEVyK)a&6|9m>s6-{)w0J(mp5 zeSa#MR3ft8Y+QGtbnv-P9HGYK3BtQ!uQ<`_Wo0FSGE%v~(I0pm+|K*d(3GZqBCyX= zOsWl|9mE;vl#dmjcjquLFNdi#cqNg54T3!?oX}M-4$>E@4MTdGmjOHM-%>OITJ)5l zG0}J;%;k7EB8`mV2sT~)V9YCZU0wfH*W;Cn$hoI>r=Y3+G-H{XuHmJs+O|!^m5xm1 z&Pf$ ;e}fEm0uU4YznIq3l{meQ?L7hKoo&{ zQSnE>b_Ik5Fniwe&;|Jfi;o%)s?GbIr|<%DxEZJtA+ )^wM{!% zEi>|TXItb)j*k}VVt9qg@$v9HI9_Cj`?OU@OqG7mEF%$guUjZsX0J2{&pT#ZtX8$r zU==d?h_Jk64qBqY0veA5_6PM5@x~=sat4QsD)9C_D{T)OrFR-{pg=2AQ=-eX5RSdM zSL1*~lxep#>(gUk3Bpf|zP$@4vQ(?ko-R2rX2YYSr{_<-%$}0D-M o z8|$sYv5ft#V>kYL!8LejZs&VbScss_&9GxFJBB2LDp@SlnuDB6z6K#k%V}yR&6IWN z>7%?;<#sumkg|M>;_3>b*foh(-kr-%SH69`U?gW#Eb&q@XpVPOBaBH-PJXE&v{br7 z>CyYG!sa9?$R(=if;8+rQj++be>GA!e^FLTWt@?cLJ< v8#VrSmw^V0=qlzL!_eNy^k}MA+;*Diaf9DG$J^f()PYwddh7r#a(r z-nO`%WY2kqa&+Vu)EH%-!^R5Tg~fUE?a;zZeOZJD6vFsqC#%_o?qM}7hx;Lb@z;R? z>J!h?5Ya=jY{i^lwBxw@W&Uq@5g2*O2? 2O%BFibJu)~7#|uPQ#3x*c~3AmejWK!;!xa&4z3B$U64A2rqY zp#X*9e@j-7NN*RL$&&Z+k|lg?{o2v-!oh~Y0V8v%(fPq;zS_7}hqv=;+VZvZNt2@w z%h<~-Bi54J2armaAp~Hl*LZrPOT@OGi?V6-Q`gp99R?PfHt}HAme;;Z<3e5dnlM|L zv_mXs%Jq24e7#E`uXS}Nx>cvag8#JVd02;a_K^U87}X)+Mf<5CYBW3T>fDmkVDwfv z{RcxwA&JC?6}VPZTr7R?($e%a2%@m=^0+#<4ApH{VZ|T7sgnFoUCauDlK!ebQYPwb zM$dSC@KNH8^slV42xlWBApZNpiUQZYP>UTFfE2zAKdsv3<7W4b%i%)9*Q@(<59D_^ za{^?nvS@poGr*`m8UKaDyD+cn4bx(N+zQuK{H;w*ZTW?ZVrBdNKB9htyJRDP!p#pn zA=43kJL(Nj8lIt Y`JVE|*`2H*DS73gq5ei3{ASaaPI07t>ERK+2l8Tz&t{+Y zx^IdBYLQ_Y)<2uA)(^*ReIVva!|I3eQhO0Eucw+FhT=prQx>V`OkHW1bzgqI_Drsw zrJzAt^$Il@pu3@A?n!%^?n38!{P;=#n#N;!bE4zfg~rocj|EC1H}^(La&qj=o$hl} z `tC>Xe6yIX6eXcAn>7q#Flot zM7?al{zWLLI@Qcd_HZP {c1FjxDM`>BV>G>&*v9kT|O?8THg_{HEEv-#30BaB+> zX~?+~4%7p9AHS?CM{}x2SQOVpm(tO1vh2t}8Q$N!D>G8#>}Q&~Sj}1-`wK*7^3qG3 zNy%rwQ?3!8PV)+r8m>FwARD2KtF5mtR+Xw7Sc05wK+bP!V}s?U5)Z3fCru9B*}EXk zFg?f$Ov?82o1w`$`ANfOt;3f17{N}T0+A8t^)&s(tz?H9z4KaN2IF+wrFStHvhzGs zleuX?fizaV_99e9lmrO@tBh42<5|T4i|HlxT9*h5a%Wm4X#cU#-af>Q-+UPmelCY; z USRAn`V^E%Jh=UO*{ra<0-0og6`MA=pU@<6Ou5>xju{u&D5Q17Dy?||MBn?p zc~C3Yr8a$2bXKmSqX$VgDr;+LuwJb9nm_LViXdz~b_}TGKNz&JJA=ubYg!RN((z!+ zF6rR*G*V7TzUWlvI07bLo8@e1WV_>2FB19t)Y<-&tEd*L;dbC}?e;Of*CBP1yFIHf z+VM0^FQp1vDXh`{tPB~n@dOm)tW=JU)Ca1=C8677Dw7kN6HBs~Va#k^?_;FfGE*`# z7}$EDAF>O#eU)t%3jG3M$kC54lN}xAs{tEnA6d&7M$aa8etZEmlbuF*UU*%xl9kWr z8`nUR^opuH(lRv)@ `t`S_`+%z;Q+3ecZvbN$cX*k8PcC+XVwl6FEKPoI_i|$+^1y{ zRr`=!_NP9+lu7H w?L0gsM)=57bw$SmZVDYV@S=nODHX1@_+60wNoXQo$eJJoK)#&E|dKD>LWh z;qC{xX_V_*&bLYlt|4ue=c??5(@kef!iPw?o~+bW0a|sD2NG1yF|Zl+$OCH4$7K() zdv=t)8QM;=_F=mm-o_cbm>6lg1(Km2FC36&cQVUIn(Dg=MG^w7g&oB?;;P?#)3&5O z`dl%k+lDpQ_=T^dq&Qu;td#Ctz(Q%_?JD4+E<51C>wcc2I;w=X%J5-En{>yW8rAZu zK8M_cR>}A-5XSMzP>>v|na1usZ=YCwYim<=Z0xh5i||diH{iKJ7@z wf1oq9Qzx6^0g;p@?H&gK@i26 zhCm{UFdGNkvvfSeNGa-y7?<>SVnMO=Z84xI7WzT~U$@~)iNj{ @Sj^WvHYu&It;NfN_t+gm5#PtZbntbnuWd{r&$sD &0}Yt~henRs(awQ=Zlv%=R@63J*$H*}>uudbS}QQd&1HdCHS`#K(uI13#L zvLv% ;vuxtk^Dk_Y6>c+4Z zZQ6Af*;BF^=YXMf9&J}ddvhC`@=I<<^?1~ZyJC%(&XZ+2gR1*W^SkueK5uI3#|iq6 zOiFuJ7CB(P#Kg@Pv6W^J5b@UB;y$Zl&CDePI9moQ@u~QL&BvLXnn_CUWiw0}MeOxo z7#NDx)ka-${4e6dzFejZIw3UnonMn`Krg2|CEAlSlP{EA6IIp+@<%#S0lq&{t4~1R zQV(ujSEFS@;^dyq(%xR@LCTXhC-i>tb7$nettw+KJr@xhW&-IWV*~qhFc#{}i&$wh zGWlUusRJCQGSRSs4(Tb=@kNAu-Z}mS4@tAZ12}4E{6I4UnNXIhTW}k(pj;8b 1s$S5cX6|G_9_{>1nbx@Y6dX4Vf@R?$~}zerEPCAr!S7Ax6?E!D<@!9hV!cRSKo zHaVo?tvMN{5&J0D+xk@&bwNQvB_%Q~F2x2Fb~kn!3%41ZY|aap<$BzMAV@UwaTTkG zV^kG|B* sOFbJxvgLfK*>gO=(Hs1$-A z1Vfxf;N?{x0}CTF%_3zGkLxif7uWUf`0(W9MqNw=oo1sb?mK+e!>d_|db5?O`FXAD z?RH1X?XI4%7MCNhtLa4Y?9-Jt50T(Vv&nq1fcq;wa6(mmRg?2U0@ LX^yP zAw;KM(-t2ek1y`V_rRgWpZTmtaI$c;P*1J5&{^{%Yyv+5;$`{`^CTA(gm0F7R7l6A zIuq7Pd<$)ytF)EJ5rT--JvTI^@SIrk0u0%hzN%K(wyZ!VxSj}Wu#p%TkoYfeQuR>J zg?B<4JDw%2GYCUgHe7@8NluTY(!dr_!Wi!#8%nt~L!V-?OrxGy9Z}HARzSuiJUm@z zxh%YL^Xu1Usi0*EY@dJ>;pU^(YF|&!AYq=gu3}A?om?jKM I=8+iZFl{X)3c@-&+ctoUDab2E19q zuEpzL)(CFPLl(sSfLq)hfrb>{zzhuJg_zlgD`f`?0;B2^3 sJFE_0ot@Q8TLYDQrkY}R#v6_s*)uj zbzQ{+oAN}Jj$8IqlS)xoV@o-%ZpK;mW;Ju`tBSQkW ih2*~4cz1 !rwGx ut&G+ zG?c~_SgO-(d3!zd>w)MLm{>Sez|gv?Bd?2o8{5o!3n%GhcV9pxjZx_m0jrZPCBy)# z{;-Y6Z*XckYfDC1&@bg-8+pGYkuvHk&D&-Kx65ZUR!%%f$oxxA3hrpSO+|L7O-AGK zjm;9>$@(<}c7e(3!?N}KlqeB-G~05J_3Txfal7&@P8O1*rXpI0%NsxVT13KmZ_ecB zCpCFA# N* z@@3xSWMpsOz6H;FL`H)6mX;AdEXqhV5fKs+qM^A9utCnC(06ZYil@DO+1M|j4Z6L( zottZkjEt t^ET;j07eiF2wT| zF5!;@{`+sB>UxJH6%t#$?d|L;XBU2Gmw;wKykZIXSXeg3*5o_$2{dZbC4Ms?t2!FC zCU)BXoLcdX-};aJei48AI>b2~K@`>v+?2Qv+kQ?ukPTh8a!fZZk3U!WDf}|Vw&P2# zM!h4Q=^@8ICC0%a)r^P??@ax}&p-@wE;>S&r_Q#d^z@f;hq-}whxx$>M9UFf4N2zn zIlKCiT4ZhxA~+02@~#r%n`Zh9DS7}YeDdR{&}?4kIzABwVi!sot2zypHiZEX+X(e| zu8yCHQKfU>YPRXQ?a#y0Xy)r6{<5|fS`=>Q?WIgwb%~Y8`i8or$(pe0J+pEJpdwfz zQ=W)5>!xV3I-qKGGh}1yeKo|*<+a;iRa<+BHH=IB<~+n#9!`?1R2dW+l~(NM*AChW zkV|93lNr%X=dNS5L{LunpnrFsan2yQAyFR_vc=5-%6;6}iG2c_;+t>m?R`AKMmUX4 z7aL5VmxXHQ?dk5;TY+}_UMy8EBm}Y*!czNDF!t`Z%EnviJl{u*D$(*VF+Kx7l6gf{ zODPBaEWhl|AQ_FkXMJ5yZ42!Oc6$B8Wj< OT!#Wy2w3A$8nZ#T(IUB#VF6cw^!zAY w5Bp6I<>64B+RU=x)v~(d)fSwD(o2X zDaU%;t<0NZ)Q$19JQuS;vrtfN2ZfPX7j}+M*Mro`AEr8PqET(r`8~2-hW9PmtzuHR z1bhsQ&6%wF!$ic}>l}`PP2}*l?nSwdWpHON%CD}IV!-hJ=&=X?Qwt#BfZf`W?&x%q zV-nPETVWG>NDZz3JBj@dZNLwHrWm+DR(>8lJh3Bv-KFsjN<+hw9`c_u5mw&X1uk+@ zwD>pUo8<(H*Zbo=BiBMQ=y9-=Iq~%ki3!PC$zZs96csaLBC*73`Sya5cRqmV!z>G1 zQ&M{&b5gGQcp5h_YP$48nu6*+-;!Q@V^-QG^@&Nu0qvFNZ$-}E#gO9p+YB)?Mdeo; zztD_yl-A?ymituNSy@=h6jwz20W@Q!bW*bq$6?eybT5_=C7 Hg zTWP%5{&-cP&g+8;P(}tZEc`OOw6qkW!E$95vNejrfO?l&f$DsT|F9On(QV-VSRebD zwHfP{pCw hS`PHFos`GGWdL``9JFO zLn@|IEPAtBPbkjpMSJxdK;oQ!e(Sx~Jn``c*B1(slIM1eln;?6MkXmqNt=vl7--GA zQCnC0GxJrJnRzfS7OUC|4G=90?X6E5TZP9C^0!Dr1xeZc<=n8To%^3@8?!}PPgBVk zVK18NdId9nA`*`5S^o}819N@A^>mPV+*1_!jux2_{&@g+o+1T78R%co?Yjd*wKe&? zpQrXsMynK6vxTJA9)6`}8hwGVOLwOu&O#qXskOL4NTsNBPUr1zsY#G-hmG|#xTd 7lt?Zhs@q?O#eIEA#u}Bp00*JL zHpAC|qMXat&CEf^t4-E+)0eeHrE!;f_Tb &i}Q|Ju=UC35R3#z=Ye^qS;}oI z6BCn^npoW5dglK=n6$62H@xN>nSUAcpE$dp1j2h 0xq4cy1 z b~ gyqryXM3eeh9q>_{FhWTic|#Vf!r zliV7Go0`)5iI8?zrhQE_PfL`N+0@4RBCE`p ?`&_Dw>wi>5-uaQdL!uEh5r;WxxQ-rM8}Xf+3LmPyEM>fg z9V`PQZ)@bnwex+L7#r5^`nFi!OLYWF_G@2xx*SRyzW3mvwT@Mu*vWuPJTJR_XnSdV ze;E>=T9*718U?O}FvVFAn(XAZww=almP(hn_(NPhVy2ZrQ} hQpKKe(UY|+lJaCv12 )AVaYE@1uajs~J)_N)k@;QiA ztTT+pISabAC5df;Fs^s2fFkdC<{1hd264Ub-y4`%l(kJv+Q*7>%7ECJk-Vr_H(KA$ zy$(3PEvs1@(Nv(Y>&K5eHpFgDo~R4o6eFXN;-59FrXVV1x-y*Tjc8AQ$A;<=7tEP9 zFDmLW;g)^-KRf6jncsi6IbcU;?qDzC*P5c@w&J5!{NU95AZ1j(GTL6fQxFFV!AD5q znL}j6s7!8(p%MI$N>b#jrMHtg@3T>^D=nYxK6ii24!c^&VR95N(-3=4-^Tgm@{9O{ z8NB>cb$Zg0C%I$INPlLb767e-Xc$nX166;!8gp~3v~pBDSJIdLcWw8#SH9(lyVzGy z!Y338bA(h1IBFf?MzF`1VF`_EzWd0iaXN>DS`trA0f$HGhRPH1DXl3*i?l(cLdBY& z<#v=cY{? ETG13PC-LMB0W+?mjFcPq-sk*d*v6Q0lNi(Km;I|6s|z*2AXiDiwl90Jl^J+$9AY zcT=#rHn3oqBI_d)&@M g_?EOVowVQ_{N5w|Q2N{heppLz(UlwANA9*5ZNT{)hBm0z4k zX=3ZC?0*_W27CEXZAv>;x3}x#(8hI?FWr4!bjES9qwnL;DWv$%hA3%PBKhlD)928} z#IIkCJ}0K{7u=n09!|oNS1A+?l_WcGP*4vqOpOT|DDZW)ZC*A4SvBxj$o&h;qrzJl zhk=1&&c>e7;-b2tb;;SeK_L_R$aL=_rCe$ur{a2ldhKk80A~jO-yR^yL3Z2A7JN+f ze0-2Y- ;- E)2< PPKpdn1 GAPbttMTLsBR`u$v8OLqvw18_jBN$ZN~$o znp6Hv8D+;(lcmC zM0De^>35`-fTf7W29g)(elO0tD!qYdwclaUU5jW zEzZ^cd&Dqh1 XjVRtF}=q#?F 94R*3nq!(eKuS|r7%YJuZ+mXyaFxjnFf|Cdb zBzx_O!eL5TaK1GtA+{P*Dx{V2GF<`zs4!8RA1|$XLO@`S+q%=mYWJ7NTwiY?MG5fY zMZ4<`*bgC)f|rFlU&~^uHQH`{TyCSvM2+~sz(7pe7wr!3IRESC+o;Q{D|e@pnIaX~ zqO&W$yTz^^31p%;hg^z?6(3ittNm$ULQzps$52WQ;D8;c(mGW=Az}2_4LnfdBIGwg zoxf=sf+5&cv14nHVD|?+oTpD4ETrAA8x7Wz4pTZCI}Do4Umh3F;Njy0UbcI@`BGU+ z8QZ@_;TzQ0A6yQg4-F5ap~r1A>bpO8fx?G|g0EU7kcce4e&xNGg@%N#wUU!PQ1Ef5 zDsGOSV2`Y UX_@S(tn6@;;T6xBsjJ`g z%V!JR06CX?Qebck1)#0H(0C&-p}Q9=kRZc3X8JM``19u|e`a=jo%sbj^(+L8%|B~9 zcX`dTG2P&DJV$>b0_)n+(j>Jt=h`cUkn7-j!cXMPg79yw&C^XNg_lyHc@WFBjc#19 z^R&HCGKdV(U9HG%{-hYlGQlF;O_Gyi2%MMb`xzV<3_;rrY?-onM<4O&G+514o0DdW zNGPOn)5rU9{9oL?Wms0-x(2EUNF&`PAl==eNOyO4cQ;5$h%YTE-QAti-QC@t@0qUH z=Q?|@&-ML2{^AmpImbKa7|-+EWlOKwU~;c}h;VgH&cC~H nZtV7+{Ppq z0}G@HBwxE47{s}LzPYz}0oEqDNzKB;<&e_z#{gLzib8CxG5_txrt!N71x$tg^^+at zhJb=Fdk2SsyD-J)r#HzQ=6bfKP0oF34e;O?Xw*&+eY#Z2x+`1z%8Cq5h%BU&7!X9y z%*$)g7o{D6$snJ*TyOu8idMT;D-7P};yfgU<7K%{R<=N^(n#IuD)mRv z=1Llm>CT05gy;1Uwe?9)PkNi(_`-n4!B+J0@*q`<5o<%SZkdjj)>5{(V$Q^3(+v>h zhDDe7lU1$ND-K=e?t$7~$dX3VTwt?kG&^a+?@tA)n}dH|IvXV(>_D}ZwRQD}U9|-v z11t0WeU0mb!HgI=@saP<&1uWr;@i`Q{vpv1wPp)y1GVfb>9T2iTYJRD;y6nceY@TL zlMbwF!x?Kq-Puvc8j>wDmctJv7b?^gK4&h=+%@c`dGGr(19K#jB%cBN1sJYQ9Zffi zD8iabK-%lIr44+^T68&y7u>mX?Pax5lhu$(dx;$F_(`fmn0 13lOiG_i*stx`1c1Z-jCbF9}C>C<1%w|a~00cxri%1Qh71Hw8YaT zi)TtEAfX~%4ZgJaw|Ej|!^))d*SMAuI;iSYmK7+hq5Wwum0Q~nfgT=KdhIu*q>P!d zBguTWHNkkw0`BZ2&FKI{7Q$VfImGV%2UCKYnwsSFl-H=$-xU#ViFm0qh5Bh&8ClKb zRy7Z5bV`y38_Wyc(weD3w=uF|JODwL(q5=xYIgGb=#y>-iT*@Jp(=TfIzSgGyVGuR z=8 0*hW!D9e6(iN;cff4lVny!xZe^LAs# zcFqmZ6af@AQp2A=5UVYOg@xmiNj`>Hu1HA8#7e>nQpYJ5d6=){eErLv@)d-v$nQIj zLmLbTAcA}~RRzM0P}uQsf4ilisF+j18e^7@-h4QvG?6$(nh&44P^aGLAZ?&9(b3hn z^;K{ %%vw!Ty#NnAJH|nmjlAl}ih@c_y|5NfdbpHU%yofS&I&4u zaD~F$Yvnrm7XlW;%SQ)D!2Kb|s- o zz&5s$p=yhTi$`3{aV088x#I2V0$Y=_O__Rn6)lcGpzo+R4#8KulSzr^!rRi=R2jM6 zAQzY)XPuSHGD(n{hE!%S&6~KO+W(@XtP~cAMgKTxYAza*L44evH+3m27y^k9iC`Q! zX0Avfoy4u}a`&`3x^4Rvha4|xVBfD2%B)9X`}Syw8sMh2W$}65QrUNuwI _+F)6w8F65U^rHeLW@O&gf%~r0MibM{*f1TjB9?-h$%PX?R;xO3Du1z@K;H=(};> zb;7d&$wI>+{^YCs^`8`5ob7y%$TIgEn*C5m^DR|Vni?7s_wAXR95&F$b1klmBYXpj z)bY0f2&LU*Kd6)b@!PjL*;FpqqwWGN3gW)R{txMv99D6x-PCb3I}0DqOkz$8st)Ro zKy&r}7OUeptHZpWCt05`ZF!d(<*GdAnPnUrMt9dRz(p0Vr|hHr`*tf?0y%@ZB|OpT zyvOT17N(X(^TEszjWmpIV-dzblzn&Fo(>j&Y1U-}@WY#XkY9Q>>X$EHfKk-1-OMi0 z*x1;dm64qeoGc12@0{LISq$0)Rlw|&e4mm1!{-Ji-vRKEg!^E;wNOV#tg%|oMc}df z?vOTdV0Lyk-~yuCOvW(%Iaj&T@Ju0*!#DG^UlD*QWqxoL5JvvF0BoNe#Rb8-*Ea#Y zoAt+Z-)Hk1+kq#ttec%Z)i^R?uJkh5=n>zt#f$aqeV{f342v7T6F{)Cv%lO0x&o*B z%#YQ0F$P#7m(!(8`>waUP!=Usj*sjPN4g;{B^L{sR{-RDp>nHHYvz)7V-4_p=c~Xm zMyvywfySw+Cp4OY7TKTsg}$uRSRTzClb*tE_6@{mGh4$V`kWt+GJ}SEpLlG=NXkMA zi9}z&PJI`n_e7EI#d>pmYh24>I`VQ6G1}XD-CNi;Gq621+6t=kz@UgC0$jx{7i)(B zpYiNUT`)=8$V10qQTRlLYdRL-hP35*QQg?0kgr^{6JNrU{q*t{ZR>K`b@gfO`BsOJ zdv7#{W}EXP&Zp%UfZ3%~rc {R?Iz^D$Sf1Ii%8h5A0J{h)QqW2PAb* zg?jDkO0@xb)#(6+FYIh2_KQSMI0n1z)1xnu_j@)8$@{CDQfnI%`e1-Rm&WI6^ZYQZ zKyR!+USSvlkHtWzUMW>e7N@t8V*6F2)+z^dO+-lba52^aNM?amj+fw4ADi!2=l0>= zHxw1^JM~SZGTtVy15p}MIbN>rjJz04C>d+Y7Z5QUjg>h%fLHJJZD0N)zx`i3JQT** z;DCo)xsFg1uM5w7k|O&VXjw>6aWaiJ3zHB95QkdMEQy@hlqw3`uNsbiL4x5${0+zr z?8im()?JwM9&}(kNSWA)nO%p3dC1ytX@!J`MMj2)vyaWX+S$d>d9f`5hWY@kii^u1 z%KU*M4-yKhp&q1cOH??oHgF4wP{qW`tEwiS`24D?tItA1x3Z1)x3{*;% twF}k?fVrr85G{RH4}y*p7eioX<;~K1y#oSgtCpxU zq )jFL=D&fD`=pvH^UVh>mhox}C{;79 zJ} -#QgSlfEDHVZ}S^T zV8CSKtviJIhx!Tl#s0zoW=czjzx?lJ{V#rej1HI^HC}r&Y5tdA3`YfEp)qz&AOC88 z^3Rq1|I-3uV^->-xWdE1E;pU(IZ0Xdxs+JU7VC7&dJc2}DjWdS(9lrhovDvL0*v|_ zOu_oE?Ez|x8tEkVUo7^&A3l`deKEjJT#ATL^a3>YJgxxM*0?Ib(bU-3n|E6haQFx6 zA;7*Lex)L@`e|*`93Y}5&^=sN>|FlR0pdFF*lo)+^FEJ^Wtgot5@ 5$qEbh z4BJr cghc3-qAxG!9)TS~0c)3g`r%&8EoxubCTm3qJ3q|}`vAtBNn z>)oED{JbIJ^|-3H)zI*`r6+i}KA~@^wOVa4ek@IFy3JlHwhxpqLt 4kT#cnt0@rRMoOyu{loqm7LppWBJp#?- z+&{Q=djoOQ%@-4|kX<>P8TQ@gM|EdVF$fe_x`vA!a{Suy(xo5da8^eJ^sXC+nJYbF zBVN>e&d$yOx{y7Q^vvYsqsK#@y!?34j1{l@LouWoFbe@sM0ig-{``-S&HuC!XXzM} zg<~1GN~mwYe^<0nDWhgX#d`8wj?axeY-$9lx0ycznyM%QmiGWnnU!|qyE)6($jI!Z zG=G0UG$&?OugRrqD*9HF2M=8Inx!?J+?A)s+Iep-%pD%g%EI)`EmK8w`y$~!;?Q%p zP;SM$&n6w2Lb|T5%6z=IzXB~!<)tN4J0+fdMx}#oXo-9@A^ je>@TR;aD4=JY+6C@W0` ziX4&z)F0nR0rnl~b=Q|>PNOYNnpvBeu?(dF$>sB*d3XmdKt^bxbQ#+T$kfS w2q(W|~xcm(Q0u>AY@xhK`wo>k2WVUukbQmPW zbT(V2%#PhVj5D+UeUiKkLWlrDr%&zkmsk {YincV5;GH9ysUd1y){L;dXjpkej&C_%TcO`GKY>E zNtrU`q~d~^_YQuo%yDuoI_0CUgpOVrV1;aD&D!*X*IS34MwPNm>7d}^71(_n|2W+f zSrX7ae+w=C3N~m @4UFV695L&&U(ydgJ|OK8OWu4=Uj=DOUO>vaP(Q%!@C0tvjD~)x?ndRPj_+!gG5v zcgSMBaYwC8U4TdSq436YXh;Ey8UEJecsg@LMh55|@AY?hPZvT2URIle@k0I!_C+q9 zkuMw=+hTgfNSW^@9-oGee{`%%#B@{vnVO3K2Euj#)=NTT9iy#CMFsQTYAtDW4G^TG zVjZpKEw=l# Qm&fUd_S5 zEneHNnBDzl+*SlsVBd6pkI=jwTR?UNjXId*O;x~%OEUhs2ACHDy=jk}cfz0A#oq^z z;_oZxVk0l#)o$wjt^7 MHPSOBj;U*`ugsL1B>82SvGS<7zV)tbpS5Bv^`fT8w z7#As$e$7C>DW~yyCA<+0jplXRuf=iH!l69doN$bxAt~3R71e>IVv|S _N(hLDN_NGYy49)ly5 tixd2pjnWW7X*Ddy7=A1T7#_#2ff)adenZE#eqsQ?&fe=8cu`2QR~2R zSO`~5U0s5HIsUi_nShI=$zx$&jRr5=;ySJ)E`f|+ChhEnLtsSX{ubI@vep3bCvnv7 z=^`uyAMo*>GM4Fg{eu`uE=nh1h|Dny$QR9TV$W7gzw>Lg*nHm-Rk<#t6(#&4x}v}~ z_BfjvsPNN=&33`;_T^304t@NvhAH@L`%4MWd(xj MP3p(V%w z?z#yVrr;-8KWVA29FZA-&V=&%1T>YvA$sHDva@3Xbrh>wwPl1u+tb_op$wYq5U8bc zCOWe~4=U>_nJ4tYdwbYuiiYIh xn4 z%i-A4!a!kUntWC>T9fLW#Tll=&zmhUKq8^DMEKI)o%~Wf=rnq}h}z9#fDD k7oX@^Ix45rgOrn%mAPihE_V1NM1ow-Y9t;~ZSC-( zhvhQ$#2{iy9nEIZW`ILM>CtqH<2U}6dPEts@_KJl1~H$l`ih^%8aOyO(KWjk6`HVU z6IA{@Ocn58HG5LZPke_dLL?Xb?mJ7r^aGEN(-s-*^LIb~C6hD54=~%23$W{ R> zK=0jaawXTJn)Eao7lM6Vs!=6>%wDc5OC=d;vh7RF4V<^nA(?X+q41bZW!ax(#lqk{ z>JtuU3Q|>b;3`$xENAPE=14n)8?M(qZTZ&^$fpRfh-@tlNh!=qS1W%?h>Tju+Sz0= zC*?7N(!n(}s&71;53|e4z+{%qxbNKd!+l3f3GM}M#j*GQV$dK XDnYhwZKM`Zs);FZtOAofjd769yl2*SEpNB8kPHBUe^~3({C$Yz{Fv%`%(b6 za0UxTm?Qu=n#7Nx5-@Tb0jJRf)<$=0Wx=@0MZa{v2@EAO)MX2GxMFHIS{wsYcQ$Q) z+}m8G2i+$A!=`;;o_M^pxp~Hjcs_G%X1>3*moeY!XWZ`u%KU+U1V6_=Yr=Cw2!jNB zIQdhu)HO#TAlaWIaL}`Uo9ObA%k8QXTm$$8SbF`{6xlzI^2`Y^3TjJavVD1P>@lMf zFKe7O%E?XXSgO7(`QA6VL*P1x+vQFvJ{K*JS3dr$OmU3(d%t#4s4Xu*8gL(QP@gd& zLZ72BAQ31U^^-NG9>Bltcach_ZFw|P07&ui_T Z7|yz4^4j%=R^&P}<4%#lFMFlzLcnuBp-1 %Eb z!;ef!b<@>J(_2E$_mRjzOyYVtxV+<;cX=5Az{<3$Iz|QBr>2a4MR;2(6*;_Y#HD(A z>l{sftR-=Fs3w}LO8^LzLYY8L2}gjiDY%x5o?pK^2J3LD^n9`mUTc68d2doXS$yyO zQFlif07xH$3q8e!CLj~QEjpM$Ar==Ozq6kShbXbB?dg4Uhc7NA1$vknP63$lchSa0 z#x@SFy~tI|T7yVL+;RiVIW;M@BBHCn0PdSEySuww+t;r{O}85dp0mk7n-Etto3rg{ z+iH@S>ic_G){`9RVDVE*`GWcF?dh@F!b>=~M%j|1r+bA?vsXNzjIGGMzx-`9{;KQQ z-tnURbdfR+%Z4!@A76jilIximkfqggK?o>WooKZamn3kK{^E#v!h%fm(2^Vb(#$Hx z?=73=ao{&f?0S~7jvO^mxTCDT!?4~CR9MvT@^C;>MFQRDI6e{b&z$Fhu4xa<5$k?N zh?rdr!Biv}T@Zku4D(|+#uD4?J3@P!iy3P`YhC~v<~lyMBKKxwVWHvT60taNpS>#7 z>X=#JzBySQHF*O1iupQIEUtUmPFsiBQw=||8}G}>GGHG2BNd-5B<@oSfP}N*)lL !Yi~EBmXh3 g=x>ou~*CW z&a)TOhee*sz~N96MEG0=t<`+g1|)?5IS6g68FhgzC8%bg_ h>l zs7x$8m1-wkLe->E$0?8^Rv%n8Hsj#Guk%T2QZpZGb-o0m5ui*>$s6OH;|DU<#sC|$ z?6LgT+Z>vgSkK!DKYoc#D9Lz9GwaU!IzR?^o#Hw-zaY_qYKRAPJ!JzJaV7_{I5SH_ zRu@6`m0dMPh!1J}6iL3@%gbaBK)5N@$73G5Pq< 5UPriB)T|-fsd6&{i3g2ei`O z+jG`A&;!O#b;k>f71l-keB6WU0kIPlnrQ<`jS5xZwF-8+lv?v~CFpN*=|+_Cj#NDM zPip-Kmwe7M^Yh|x996F3$KyHPvr)%nS9j;tWkCHcR=8RQuO#%z_zUV2&toUKIGU2m zRK5OkZsY+K+V}iCUTxvnSPQC#Km~IP3lILs)y$D&%>;WFi=~XxiP%3N+i9QtiaRLA ze= C6Si?VAYn=k$I3|2q2XORagtP7S#TH{ng*68Z+NKO6ZEeFIE+ufUDUI01Pd@ zd-2b6DtTX&@Tz7x+1Sue9Lh))A4yXu`2uqLScz+^k6om~ot+`gbD|po13;pETu!jn zGL=v_0If@Gmn_O(?5oINAR@vl=e&`imE+&u_IzmOb-Fqu8At>gl9O$v=q7uXPaC1A zSVJ~B4>5zGnssDr+-K_u+eV)NWw`i@qoXrQWZR4l_l~EAd0XFZ#?(}aw&8NFH87V! zx1RT?PF5vvc EvPhUXr0n%dM9IfQ*LT^(u ~SLr=Rg%#d2QVF z;0$;7>yRUmta!TB8GgG2a+*wWET`Dwa3o`m@&3xrF-|rN<+I4Dys)JMj=LmA46wlS zZO=CH16~6`_A*gOvGA0coPfAVQ-gsVO m|o@ z#Z^z6)Lq_DDlM_hqD%MFx7I{cKGz3RAc{|p<(gUbootjoYEJKJL|)Mg5=fwj_{gB# z&-XIvu-(bX>nA?wN32GumLVb{T qF#4R*?F^e8KD1&d|h00{RLP11qeSm8mkp)ThT^={n UX~Y>$IsEcnI_vB=iyCTLPu8-3G=T@zQv>I5-=~uaDlN9xCX= z1NIaNq-VN! $FvoWHF5XLf)Rm%hd#}^a&*k#0g(?-YpbhSh6ENw=&SKZ-ppz z$!$VGLMs x)EOh$e!D1N}ZR8QbvjqDE89EI)g*J1b0)B1*f_;W;TnH3J?J z&I~RD`Q+_t=DT 8Dyp=<3M%`@-^)q9S`f-~=)%;mVQzev z1nnW@<OV@UBVjEnH;A)1EJ#)byI~@z<&rvW&D>N{XAGk$7Cs53KXv5_VdZ#$fPj zcIv$I5SrT}|I7okoBm6?atn>T<@VW6@SB@qYxMbnpe%#!+(B?q5b?_BEK$*O(l$p; zMBUcqEwW(tVoKet?dsu5!SZf$w 2y;&}cp1&=%@UGRMC`spT!) z0j-UD6>+_R1p@-=;u)Ui( j=vm6>_qeta|5rDxN?5MY{(L82=yWNwu--Bx)ekaLou(|ic{?4yXr z`6*b2m64N@nOR|uDhvJPPloM+Jg=8$k#Z|^-qo)$E2+H|7M&|~cI<9ngUk(@b9TQ{ z;u#%s1r>G-xysDHM-}6KZ8jSeAe{zv1cg>W(9P^4rgk c9Bj9=0VopcmO zXCI_e5g9VJ2SEqpHQqCBt{LzAY$gU5P3^#h5+4FNm1?WI);CR6tmojI_3EOmT~2rq zL^I?@I{H|v!yGZ`LY)s-6h4H8#^D*K|?Sybz4N>)t!8?eh*oG zwU)uZEa#!!cVLIZ?K~p 5Xj?yL6S0zl_<}V`x0DF8v9)I*% zB$X0{`RB;abCU~S^I|OYaKU`&U^qDi$na~Z9{T1mxQeYh`j1;NP$#F%pG4HfQOBqt zZnX(Du;@YB49B3uaV93)Wj?)`cq1f%=#*xIOatp_vZst7w1p19qL|%wi5QkkOnl7; z4bypoo_5z^ixKsMM`)1ksGncP)4jBEjfVm%)hpRNyN}5X=>=+}a@}2VdmG!97D`1+ zO`4+O3WPwWc_3_tx=(PM+&yxsTqHtf=+nS!D#)y?Ec %yt@PBq(K~q>5@*m#gSvNi52V`UQcfKX^K8*-?un<5MhwmN1mr)tOH5_ zgRh_%6kH(`%)xi>f8cs_h{~qtM4$@wJBiXIRV!NM)1`d_;ty~FUP;aC@q~)p#TH f_?h z3j)&7`iK#X(<&+qo`rMLfqNCShAQXH #3qU`!Z%mP_P>Z>VRxt?tnrg8fC zcv1NzCwXOw0ReF~wc6?y^rU!5r%c*HXy awM{t*D!)SiC!&wg|z@b5xG^Ir`l#F zUr4(jfk|1?Xy=c=W)RXzf`L*nrwn$p_Il9y-YZ9XIUiRFZ-h1&QjB;Sb`HHF*RfV9 zZwTT~JAof0GqZnjfvP)gWiWY-0)sD=DX7x8ZzUu;U4jYWKS!nhpP*q%6fukQ%Cg5RK6I768uuM|82^(Vn@L{K?Xtq|w z8Xy^?B?TG$>5l&=JtHO)HoMt^5g>m~-3de@AOO=5GYgBO?c?u!o-W#kTPNo>7gue& zBZ*2=xuK=gk=G=DJbwQ9loI<-5yxB FO;b+ hW zGCJ7_e0=kU#CPW@=eE^{{K)F@`p7_E{?)fupBG86_U_hEKso3#Pd5FAfY;+;smCuv z?@(A}_4YIpVN|Ey>uydwbXdK7>enx`xtQ0%@ajM)^65hfPldfb68Z7xCq@_yzgND0 zZ{f^gvY#{pMc}ZQnVFY>VCh`zrofNFWD54_{O-+{8nqVBlco%KGezI&ECB=Un=e5@ z!fPc>P1^R0gsF?FWeWQfad;f3OCs6P(dm HLf3 z#(B=`!rmTE?4!20C@56nf}IqjI+WYZx9#5uJdsQWb7$*yj_U~1(7->ocXt76=~^u= zN0K;c6w61{+Aq)#kH`c(E(coQKVN4w48@XLT4`y}exocLri0DK@n33iSf>`N+E9B3 z`|pTr4G1^<&CKGPcclM$FD9-5o|kE2i>KN2w$bFet+NWnJIkeV8L-YWA_70d{%oVj zccAeT?rkiej@`D@ZT8Zx5T4Hrd>iW0`D=9Fe{gtF=GuZMJQ0xw%XGMKO!wvCacc4Q z$HUFh21?oD-bAK!W &K5NI;jPZTZ=Fp5uMrf6i>-J_W+MNak`y}a2A$IKQ7>zwh=0Aag14}O451;F zC$rz#{$twfFA$`H2pV+Ga;!Ux-gBMxtv|~yJx>!a$^h3pR>r&LlMMA%uer!a^bk7M z0NFIYw! &>MG@Zhkl&!XZ=W_~`}50@E-;+N5FF8eOK-hJlI;EuC3tH-i5q6afjAonuhIb_W!`J=hMlS1!Mq&gYp)O=}Po z&SX0B!vITpVs?}e=iayFC#c+{h8nH+1xOxjc3(V6@0Ef9?1PY){%1$|;}=PRf))kP zPy};N^O!Y4bKp%;l%I{>yZhH$`w=4q8pEkf?laY4P$h6i{jnm-L-*r~pLST-dN5VO z+Q1Kk0+%M8-DhWElZBn{KVzfw`&>vJ8N_t}_6vX$hd94XZa}e8=2F1CVkYqu_B*G; z((hzl|7U~!kNdC@5(L$$+*KgB4 g>{azvvx4VhLc zKRn)y2pR!WxZ7?AiB2t*ehq2Y7mEirMyK(IJd`{1I6OQ&0B cLvUasy3e{eaV z(;H#nVt#SM#xfWr`uE%U$9pmQ06|rT`-FbGzw&0+kYW^0Du+Pg>SzJwi=TR{q9Hs? z60f@h;Fou|7sjGmx*Sj?r?}bd5R&!U-`{sw6M|{)*av^=?Q2=t(`!wa&KG2TTB5lk zO$uqQk86)FEzbhbM|^e&zH`Up4Fn(%40;U}L_#*js8;vt9TRE!*xEE+T?Hcvl5&wk zMU){T !ux5{5gC?0C)`l?kSI7{sLXkK3{R0)U% z(cwSMOc{Eq`MQ9BBmVC~FusMH`vZ^#C~E!~8zlSJ>AC-WkTV7$3HiL^=_P^!ph{4? zFX9Smh4#DQ1z}AUySdLV04ta~MVfTdK2-@JlJ5d-2IC!{UM{vqf(4ZI8x~OEIs@Xt zx?kj!6PfR5A=;r^cS z?H_lH|M$arH>O=Alt%dXe%c?MOmJEcuG2{6Z{1Bs6J$Q_)Usn&^0z-ey8n)iheOS< zV1&|Vrukb}Go}rp1V}a;^oRdkl>O_w#89wuY>5GkNf>|Yb=sqU4OEu5OXVhi>sDg| zAg>e{8BBmrD`o)_A|Oz)31;WNK3p;CzpqJsly)(W3l@8KB$W%VSLMH~m7od9nM??t za7Y%nmxCJH-&!g$E?}v0@g;XY{jG jwLMl} zka5)7dBLrLqS0x*q-DGLC;}iVV}@w`#J{l&Yi%Eim6ZbdPrWa9`j?x{Ny7|ZyzaB@ z!r!WttcLUENnwB28*!=a0qW_il7k9GQwB(=;H6eiu%Vz|ScQE+PIkpBB|pG|(WO|v zMj@CPP|Kb2HuHOje