From c5a28c363dd6955df1228818ca82dbede9bb5ee7 Mon Sep 17 00:00:00 2001 From: Thomas1e Date: Thu, 21 Sep 2017 10:29:23 +0200 Subject: [PATCH 1/5] updated documentation and uploaded datageneration_workflow --- docs/machine_learning.md | 22 ++++- .../datageneration_workflow.md | 89 ++++++++++++++++++ .../images/remaining_prices_after.png | Bin 0 -> 49959 bytes .../images/remaining_prices_before.png | Bin 0 -> 50465 bytes lib/machine_learning/images/total_prices.png | Bin 0 -> 15045 bytes .../images/total_prices_candidates.png | Bin 0 -> 16442 bytes lib/machine_learning/images/vat_prices.png | Bin 0 -> 15782 bytes .../images/vat_prices_candidates.png | Bin 0 -> 17264 bytes 8 files changed, 109 insertions(+), 2 deletions(-) create mode 100644 lib/machine_learning/datageneration_workflow.md create mode 100644 lib/machine_learning/images/remaining_prices_after.png create mode 100644 lib/machine_learning/images/remaining_prices_before.png create mode 100644 lib/machine_learning/images/total_prices.png create mode 100644 lib/machine_learning/images/total_prices_candidates.png create mode 100644 lib/machine_learning/images/vat_prices.png create mode 100644 lib/machine_learning/images/vat_prices_candidates.png diff --git a/docs/machine_learning.md b/docs/machine_learning.md index ccfbe44..8acb1ab 100644 --- a/docs/machine_learning.md +++ b/docs/machine_learning.md @@ -59,8 +59,26 @@ best features. very big (compared to the bill width). I will also create a boolean variable for this, but to calibrate the threshold we also need more data. - - +## Generating Data for ML via Docker +__Ubuntu:__ +In the following commands the paths must be adapted! + +Download and preprocess the bills: +~~~R +sudo docker-compose run ml rake machine_learning:import_bill_data && + sudo docker-compose run ml rake machine_learning:add_dimensions && + sudo docker-compose run ml rake machine_learning:add_prices && + sudo chown -cR chillbill:chillbill ~/Dokumente/chillbill-recognizer/data/ && + sudo docker-compose run ml rake machine_learning:list_bills +~~~ + +correct the yml files + +generate csv: +~~~R +sudo docker-compose run ml rake machine_learning:generate_csvs && + sudo chown -cR chillbill:chillbill ~/Dokumente/chillbill-recognizer/data/ +~~~ ## Description of the procedure In the long run there are several possibilities to optimize the result: diff --git a/lib/machine_learning/datageneration_workflow.md b/lib/machine_learning/datageneration_workflow.md new file mode 100644 index 0000000..8451757 --- /dev/null +++ b/lib/machine_learning/datageneration_workflow.md @@ -0,0 +1,89 @@ +# Datageneration for machine learning - Workflow +##0. Get access +You need access to the S3 (files) and github (error report). + +Via the web you can not download multiple files from S3, so one way is to use a program like "Cyberduck" to download / move / delete files on S3. Another possiblity is to zip several files (e.g. 20), upload them to s3 and everyone how processes the bills downloads one zip file, deletes it from s3, process the included bills and uploads it with a different name (e.g. "done_OriginalName"). + + +## 1. Opening the next bill + +Open one bill from the "InProcess" folder. Copy the id (e.g. ZwkzBBdB3SH45PbRi) and open the bill in the web app with +~~~shell +https://my.chillbill.co/bills/ZwkzBBdB3SH45PbRi +~~~ +by changing the example bill id to its actual bill id. +## 2. Check dimensions + +__All coordinates are relative (between 0 and 1) to the scan dimension. The origin is the top left corner of the scan.__ + +Check if the coordinates of the textbox make sense by comparing them with the scanned image. So you have to look at the values `text_box_top:`, ` text_box_bottom:`, ` + text_box_left:` and `text_box_right:`. + + If there are weird coordinates (e.g. greater than 1) stop and report an error in the rubrik "Wrong text_box dimensions". + + + +## 3. Check bill_format + +Is the bill of type `A4`, `sales_check` or `email`? Write the correct one to `bill_format`. (The default is `A4`). + + + +## 4. Check total_prices_candidates + +1. If there is no candidate stop and report an error in the rubrik "Prices missing". + +2. If there is only one candidate check if it is correct by looking at the amount. + +3. If there are more than one candidate, find the correct one by looking on the coordinates. Move the others into `remaining_prices`. + + + +## 5. Check vat_prices_candidates + +1. If there is no candidate stop and report an error in the rubrik "Prices missing". + + +2. If there is only one candidate check if it is correct by looking at the amount. + +3. If there are more than one candidate, find the correct one by looking on the coordinates. Move the others into `remaining_prices`. + + +## 6. Check remaining_prices +1. Check all prices in `remaining_prices` if they are actual prices. If someting eles (e.g. phone number, adress, weight, percentage, ...) gets recognized as price delete this price and its coordinates and report an error in the rubrik "Something else recognized as price ". In this case we can still use the bill. + +2. While checking the remaining prices you also have to check for missing prices. Are there any prices on the bill (scan) that do not appear on the list? If so stop and report an error in the rubrik "Prices missing". + + +## 7. Correct formatting +i. In the rubrik "total_prices_candidates" change the name "total_prices_candidates" to "total_prices". Also replace the "-" with a space. + +Example: +![exampleimage](images/total_prices_candidates.png "Before") becomes ![exampleimage](images/total_prices.png "After") + + +ii. In the rubrik "vat_prices_candidates" change the name "vat_prices_candidates" to "vat_prices". Also replace the "-" with a space. + +Example: +![exampleimage](images/vat_prices_candidates.png "Before") becomes ![exampleimage](images/vat_prices.png "After") + + +iii. If you moved prices from "total_prices_candidates" or "vat_prices_candidates" to "remaining_prices" the format is most likely incorrect. You have to shift the parts you moved left. In the editor "Atom" you can mark the parts you want to shift and press `shift` and `tab` at the same time. + +Example: +![exampleimage](images/remaining_prices_before.png "Before") becomes ![exampleimage](images/remaining_prices_after.png "After") + + +## Action "stop" +If you have to stop to work on the bill because of any problem mentioned above, report an error, delete the file (bill) with the error and start with a new bill. + +## Action "report an error" +To solve problems with the recognizer we need "bad" examples. In the following project you can report any error. +~~~ +https://github.com/clemenshelm/chillbill-recognizer/projects/6 +~~~ +Just press in the correct column on the "+" sign to add a new note. Insert the bill id __with the file type__ (e.g. .pdf, .jpg, .tiff, ..). You can find the file tye at the end of the second line (image_url). For every possible error, there should be a column. If you find an error and there is no column for it, please tell the person in charge. + + +## 8. Finish +If you do not need to stop because of any error, save the file and move it to the folder "done". Then start with a new bill :) diff --git a/lib/machine_learning/images/remaining_prices_after.png b/lib/machine_learning/images/remaining_prices_after.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c14fa37d924549223353b6adf5a8e08cd510b7 GIT binary patch literal 49959 zcmb@ub95!&pEg>tosQjMCmq{H$F^~w6~Habo^wrv|7J2&6?&8&IXoteAl-gW;v z>zt~+_O3d6@A^EdUve^H2(UP?001CJhzlzK0EiXine*S`jKePP#0p=(up#%*L zy}B*C_4yUsNkq*_(bmMtRo}rFFtxF@HvaBt=wNJY<7j5k@gSbQ5OoOz{ zurV3+Tcb2Bbq4D`b955xxP=P)IGV?wd@?vtb7`FPK8yh@z91_}!K5J4(X?7-oJe0^ z@g_1&oKaS+;H^0S+1qz`{awH@`pwPyJ zP?mdvHWgYT@XKw{2Ekkn1|!RNPRX9o{3P?d7E`K{5)dF#Q=6Pqp4|jFc`U!+d>u_C zU;zGt#@$QL^>|F>+_ICmZ)d#|{35kg8GWEWgQxiGrYUB5XJW2ZR_I`W8=kJs<#q7v z2!x07arBQyGH^Fa?MOhP*cuHdT4c1~d zpAIiJ4AJlr1Ut(s8gx<%gK8+S=nSWX`3F{bJ1wxY`m%<2>b`Hf`=*?j)JB03b%9hKp# z#bbelbMr<2u$#)ms&2jDKp-+t7|ZR{;1KtozqV@6SK?JnJ6|90vrE1?fk|f~S^UBj z)q6pdEJ{nP{&-^yvD~YQc)$Dtz21CHni?A$uQE9`rW;&`^*})1NLT|A=G@FfO31TY zU?3n(w5k-NNE1&j3aQg&#c=?S91uE82w!YN42T;QzF5G{-_AFCRA;nf0F1>%M~~dl zz|MC`)%UhI%f?&0x+jw5r_Bk9mouAFEMQBzxq68l2Crky`>1RXZ$MJGN4Dc{Kkd^> z*IPEizS`z;c-HcJ2TC)RW0qn!&q5R?K0E+OrvpG=I=qHR_chq8A2z_9C9o5v`{ktk zydxR#%b!$Vr(kf9B-U@@ngCxKn5olZ;71P0Soh4_EqwMOYCDCA)Y@@U1b{U;dT1;( znFUbbAfw-ldlKU^Ku4BOc}!z)st(4;}?#=NB6p@;Rf`L5NB7 zT(P`@(EZX{5PCZK&nm7VvAbbJG``EGNotXNVepZ)q#<+LV0+H_R=EQlRs97m_49>R zOo|8M1&C+%Z{22TU;ujcMw)F)a6dCC8u^igipvOFFS|d_Qp{Gd62XYNSOMNW;`vQy zFdkbGlfG0#GI06He6Jr_&-8C5L^k>dc<5Mk>2AOv8CF6<6^A^IuahuC2P7iEzD57J zSy$6lKgBY-H8k%!^PvG1D{?oKu_n0eCI=4%sc@=W-Ba;|RNXZa8;N=R7CQlx4)D;0 z(|T+^l-*+o@1Qc`^f@V{)=J3iTP>ao`xn2shQRYT=^TI07ErPBHHQT@F#I%l2@ySJ=5so*$G!ys&Tj|Cdt(3U_g6a zug0Jr`!f9og$m8`W0&Dy8lBjs{W>a#M+r^RS&z~`T7!Ih#)fc9*3O4@ica6j#@Xct zR-;vVvRzjvz284RzJ7SPf!J3$ddCIE(M5$koQNXCY@PLrnNfNefr2G>_GpY9zc>QE zSSe9Yw1f$bqG0TN_JUlUU|f`$T#+Y&@QU&Dml z9SWLSmjwTs+q*It|Ldml`74)GFf|Vbniy+R;=;gN0$GrnKZsrsGB|(eodKfX9i;mE zF(k3*9x4`)+wJ$+yfy_S${+>(CW=AIeIjvuippcu>;+IfTa+i`Pk&Xv|QDNR<Vfu-wcck~M)JohHmyL_p>ECT!!jC-ToE+-o zilQ~ja)3RU-z)g>$C0-lX=DW7U=OHL&uPrEDMYV+#uaPV!1Sfn^To~jJhkq3WkKe>qkfHlP1OBHP z04j~ zPHj8ATqu{lYc-j`acDqrmQ5rvcy{L8uX*d(L{d}to6u)HtSUm_>@UV>D8s46Qj5v) zvwT=rmdE$j{(a&L3j%Q8->kO1O;dX*Kr!phXj7{&L$!^4sbfNW=XHX zh6M+ZPe-WXm^zZX+8H+;zbE9-!+M1L(L?_=Ge!drf*2bl0OXE+sZ+U}UlLeYVFG30 z@JQ`H%{G-p2|eu&0Ebv;`C!UM9)hw=QubWQCd|S1qsKkHk=!$WDQgtWzGJDUld|YC zF7ZivdzJ7+{@qR3N;6MAk~Q^s&zY(vy-Z8ycncT)3vBBVHX^s=?HSCqylu19&bW*{ z3iISo8>R?i7EiQ+b5#sJj?CmQ8r>IP+|%H0#OT}1R;Lr&+FxKG{2A2KRR(g7d^ z8H}Co&%Z{AVe;6G01*hV_k#2?2KMN!EvL_bSc5`CK_aRty^M^cnVD*r&RD*E7Ovia ztp81rbK}hu@=)TyK1A*X*nR5x538JyGh<6O5s+M6#k$wdeNij+|0*Qq#^@?JP;2)Uyp;Z7 z-#fZ4p98uZa}897o6b&Ye9njc)CuOQZPg0jHdN1L-wjDVW!0`+InT0H5Ur0E%iPS? zXN0J(OoW|g+>_*OtCchg@EuX6(r&nS&tsxI?oP`2H^= zbx`;dRV}KHJVQ!WZVe=pD{q^&o~E6I9Ep0mT-v_6NsMTC`N*8U$7;)UMU|HC*3B(tw@o?-xzI$7@jS zC|i3oV#&$@Z&#KJ>eBM0jDN9H--W(c6JSs~)Wifv&C&XjO0`sJCx?(A-x$mE{`6aC z#Eb?80c1t^i;PY5P^(xJAr)Ch{Bk!*cXJNwcY*Y_rdAiRmW?@#Y62;hEu)1$h4Y-X z4-S%(ua~zdWUH!khaR%$r*%=}l9NhvHnZi`%d+^LNqJ}jN%L`Ac5OTL(U2V~Kt{!S zPNP>&3Oc!oW!+U(LqpseX zPo5mAsS+~+@}2ZfHem#Eypkc=e#)o2;z`;3sW*#mBj*XWeM4`AOr0J2x>F^Q&3($f zqNBsp054YP2f(cwvO8fpG0PKBJ-e<>-A63Q(XLC-{`zo(c8b4*T&mGoC=ROsk#joc zKdP%y?c0VD+TuSZxd^hnsCxc8`DJzECiBQ5`tc;tMPh`Rs$O+ZI zp*Pw8HN^A!f)|-$vf1iT^bbB_8x$5UL)Wxq8NC*7}-o7;p?Hb}|S{mV=fL(C^h9}mm0(7j zBWf!7bC1g{7D;W%R=M&kdnk@SyqTTse8C! z^CTw?LY2OINnESe%=}^;!ZITjke}AJs^i2+MEg3PNk#?$u?wWVQ0*F)k2bkwL4E$Y zZ5c_69_#X}0df@{4P!N;wDN)_lh*DXqc&laoRZT_JgC0zrZhSjVL=XlkF%PTes-k1 z@$|a>OdI^NXL@@EACw705qolcID$kNY;a48G3K~O6CL9OKQvzB%gVCpv-!*;A1H?j zDoAM&oX+ogiG!V=gpE%$6i#&z)v%8w&FD<3)0BIB<@((u3Dz-WOMW6Kr_XrR`mg%ccy~ZY~OQ$`LlFhQH zb|B}P!=uJot!(ae6I>wALJVENW+(GymUH1`jkYHjmS4^2Bns>=#E=&dfH6XY0f2^B z%te6iLofyj1UbcYxU?WM|V+ zTe@TlY!VI=uzPLgF`afya(IB`aLj$!>i)emeC~7SbY@)6v9+f0l&K+Y{<9HtV5RkK zZXm;&WkZ#gKJK;M+87j)q!d<^2m=XjS#gV8#v{ZKq;Doj1a<7J^_ra+f;@&4uBzKV zMj6kdB$UqsW^gCFixCt0cw#)bpZ0WP)*t;VP_&L0)R@{2e#^-J0NNA_WL_`o1j$~2SPj5y*AVLn$3f3wnT31lUsd4+Gu-=PP zQN3u9Mim%@Oid3&AO`@@wK`)UH5){dAi$}QrJh@Mt_7hQVw-tL%))U2x#FS(Vr#{L ziS@p0S#7V%1JO?^areqFv-5}vE>OTP&*UwsZGPR>dpUj~rm&>Q$Tc z;3u6kEYc?WZK~)lWb~L9=u#_a7+ge5H{-H~-KI@ZeKYDAZniirJg+(l&wnmd=7bQFUMMe2&2aX4yZ7Ox2TY6x5>TRtcBpIZK? z0hUBp9tu|5k3UgaX<_^{4pX!e|4GFaxQYEkzh(U|I69g!M$_XeE|qn$&s%u7^F~g= z(sm~7tv*jH-GmBt^>Ft3#{yq=svMSWyR#YZT^%C@PhaK!Uer5Ng%Td3m@`44$IvlL za|RsL;jnoW*LZH#R*RQW1W4tk$}bV@@-F;S(&uO3L5t8nhnEAwAM>`WO;*11J~08O zEt?VLT}P7d<5)OXLdKGJMRBR?Hjkkz9R}*|2=iqm^I@-2Av`En&UbTuGxPpd?7=T~ zZy<3c1oc-Gx*+9}VW-Dc#Ug=ZoV9LtvlO+0q#ZPbXDhyK7XIXypRFU0*|>Fo);ro{ zgvoFo2W(Y*#Rwk|lh22Rgzm8&h)qoN0|d7!n;gX$DyqEhqLxiDM#5c>p&eac!hImw z$$fI2{L8L*<9NKh0|XD6#wAaB9yTPZWh<9?;hr2E(r>uq03gf)_C$F2A&EkIMmdqU znRs^b+~>uMo`!__%b&-${3f`hhl=TM>;qiH&d6BQiOum!(Sb?m((5*9t=)4i(94FK zG&&->o-chl;bR-EO^?_a-q%6dkjNG+nxml;HiHtb!X*mK-*vC?hIzc5+^_&)l1$3E z<%8O(3c1*IHO1EqtFz&+8{0u~^@JLkFthJCW6Fm;tlwOkW*aPjID~0I`(T&}q4$GR zb+?~s4NwQERqTOQb8#2pQn_Q|IGiSKGhIFq)g`^GW~( z4w?uVE%Y-=T<1s$%o0SNde#`uxt5p5W|spu_6FqHy{l_XEEj+KTemH8|@Er5W2rXHBMDsCLE!}O-f+h0lR+WDJ89fW= zEW!~=WlU_SXx!?aDmfQCJR0$R&v$a}oIbEwuuvuQ@w*D`YN1fZBr>K2=L6q$VXi2oD`v4afG@}B!jP24G1i3&lDq8OJ#NVbCyac%9wW@Id z&?6`L+;F4m3z-;FWu>pm3@;j%uGCPwy-?5ivn}yhO34d8x>mle zy%!)rl=M;n2bXa@KLr{nz7vQakq{Pk{u?|*odGs~S-ATeg}C`AOBpAZ*xW(twkPXv zCx4NUra(5FXaMu2paFvKMI}lelsEbEYWRKkVz|oR{%wYj&7eEPv(-9&_jPVeO-}*Z zFR0Ul6ctkHI~u5z@+{V!0kr(v-(2Y!VsNRd2_G|K48z7IDW7w2+Kz2F-`v1U@lKat*s;SG-(*UOkkd^kmP+>3%00a$y zi3baL*zuK1NDv4jQA#>lw#7Vfb>&+|$t4mZ83DF<&=giO4%5K9W%$3=R5>zJ8<*wFE__9ecZJbvxG<+_GPj_IX%F*LEW z*)3{%7FIeqR6#L8E(CzTjMM@k+tCgV zc?t?QxFmiOGu0+AB=4@&+I)!k3g;;?S1z1&@&!K6>Ujq7VH%j&xX5)I%`5ceESnSX zO&$J)x>W!JDN_HP8PC9G>_{s3Q|%iwijT=})}khkNrqp{M@^KkT`y+L@QRaOS)|Co zmf9rWxb3|#kmD$9_Uf|1Ll$r#iQ?Cti{`(y3i+Cu8|K}Z7D975$Awc*Nl(`Mw&=0+ zr^q>MLXkIFxYMywY3PrVZWYl@uI*8z&+5&1{$Ko;3Ex{@Uyx+#x^$Jpa~q?3g1c4# z5Jsv{oU%@yBzy)$gbUx*Mw#&6Q0fDW?Hbl=dw%`b%u<%>Thd+lQQaiyOtQvLXf=Y zfd#h1D}~O#JUMXkMr}DqhLERzY~|)|^j!%?Pi1}uSbft8U-mKHz@9c#tz)dmY)Rjs z=okbAAffYkqTq9hzT%~>xUFn=V2vg`0Iht|bLplb5G^Z*Y~isR&iP%q%Tm zFThYamT(C4PS|;jHFXb1@VxOcYdSOHQ4Y{5yj8GTIZ8`086_+v@|x&HcR21#opjNi z7iq=ht3Y>S#FqD?{&IVe**B`I*o&---NZk8a?^l8W5TH)2~L>^fP@Hv0~4SG$dkX= z`6v?AiHO3h^Ej$mcH80U{U$X}`)z05D09}a7MG>cQS2L}@l881d)fvUtXnlvynFX7 z;?fW;)!7(z=JLahNSTn_!twrrR6>?%_~U>}TWnx(%SgUQu`xh43Ms=WLXb3p5r*jO z>Y?5vALHjyK^aNCT3<^Xw-!bI9OZ0Ht|5~*nK@=kgm~XYBw(aerGiWK(H6C&uN}Ny ziX$*8mW=dQMlJ4%5x>UT2N5{Ktm59}v!4yJdKTSgyxfu;_Ze+)OdnIl5y|LBNmHg3 zR={ASwA0Q46stCK^P?e`=+WpQIQ+Kc>kSp1_d6X%^-YQVP#_qMzhgfN{cN;60PVra z!LB^ujl4ATGiEoTACf^-G%dA4d_cn^P_xOrLQs5iJV3uhKgV*XZ*6u z!9;I|!G)Xku!T(I4AH|NDl(xK&~pX%5POUVMB4|)+}jot&(PUd%(lzs-JcRJ&pV-k zBZ~-6cqvOh<9q?_0t*^6E-uf>2q-QE;&OSIAPYfg>=P0Z{9*YE{x-HhibT4!-KQ55 zY*BJeat*YvJEi5dseG01gQxX9CYG4S^Vs?Q!WnPxI*?%}Bfc4gR&0tGoFwwYr^zE^ z1c!r7pI9Y2VxWJ&wiP<)Sg!ahIwVl}{;~eGF69lw799P00Egq)zTGlvECwzX5^hBi z%fYFGyn02xwE__=dUy0(yOSRHhXO`lGoHFE8zCjyLwJ;S(M@wj3&HEKr5bHcsJ7|@ zK)s`z5mQVj5(0*fR>i8IaqrS`6aOHu`!qcyrY198FJ&AiF+VJ@WuK8PV%q4m70CB- zRD1Zk8s#K{09Wpms=;|a&Qah{VR@b!o=B`O6tt#4}Zt~$-AalX3nWqll5(S}y z&)z23WLr3k&sfu{tg?DQG8H=EL8p06!`YIJMj-S(ALdne#wAPR-1bJ>oyVn-GG{>W zp`w%BEoSEEU;)45(^Y#Xc6fdZ!(uulI`SXn`V-&nnOI2aBCl%jn}%^#7B~{c}+6nYmm8Mgv!em&dOFS z4klQIPB5mRMyz!U06kp(XgM@tBjH%ozSUA99sRkj8imBd1T^_c60fS}m!P;!NNEu$ zu4E{(=eX~U78p3D4&6_NSGxoOA?GC5$>oM2##yAiPuCg3liV$CcvHJqZmIEP4EdEj z@r%CBk)jh(?QEU>vp({kH7|4HXCw+8~3^yJZPWP53>5+V9vgrLCaZ)?nrG@>c4WpitqhzA(5^fqTof zePh}?1O&KlYb+;B5S_L4tlwt!GsmU;tnWttNL}vJRTmU$&|?@&Q2MqXJ;frZC#p~J z)z5wb_&=!?15-dHQTg^d_VjwX$#gKKp7O7Qxd?;xfw z-MgvLo#hF8&~v~o&QE_QJ9p|58YFa&6c|^gh2)GKGYyQ}dX!PWx>{3qq5H4+NoE7r^B0TAG)0j2yE?r*8 zQ;GgHmQRk@#btGMVA7Ew-LVYx^Z&Ad5a1s=fbxSUjtG8>2=AY>0QC^$mQb{aOs1QZ zz8#CVB!^;-PUb)`t{0R~9&{mi_}cU1nZ{1;|B$r}pjvYEkm*g*zyj9_6zMO*=~6Ov z{2W0l_9nuv`&^yWIdxne0h?;27TH1?kmzG-VvqY)AA8})u@2)8WjG+C+IH(Hn!=~C z)Ow;6ZZDQDo)q#73xC+_D0ejteBuxZq6GR#7!>F%07u;)bwuO2+1qjDzi~^Qm1o6N z-b4QhN|zpMrjPMCD(DPJ#bXE{r6DLtpp9;!+Q=)}OdK8-B%Y6T0V@x?`Ae}Cju~A)7>mQy6;d>u$?y+jC11dX{C&oiKdwl`+RPRsKefQ;`N%SbL)jF&3cWsaMj(Q{#pum3!*u}T4h;U)GQ#8`VF z*l+!0PM%=#UT^!pd#&JJ3#fFGfW3a+&*J#^8pGTevCgw=M)=ShiXua!Ae=)j+7Lb% zKwccMCfT0Aeg+@&26WGK3a1aol_vqR>U;^5U`jTStQOTL{Qu8oF7Yj*nt^ zCl&v$o0Wd#exNmsH^r@E;vxEpNHlDbpPmgSBLoX3$B|%B1uMD%dO>JVqCO7>sBVuy z8i-r@a#uz5q>S30@#?HiG4UkgO^sBM=Nyux=@{ z-k=YeIzp~^7I0mr&Px)&XKN zP%55>a68vxaMZqtV`M*{NL4mc?&o?wZ%(h>Wa6Ry+kIjSSMwG)Zqx0m4lmCfS2U>m z{;1)3v8OLozvkk1bHC6+&n?Viih(7n_|K<<;}@QrM*2iB4+0~a^06ev4U@sS+CaHN zcP~Sk3OMz+4>y?Z`JT&;QwM44ouqwgBgZ6O`@=AYm%|TUJzl{fNYLO0 z#Qbqz{*xX0pB|fPL(Z^$IGLS(O`W@KsU{U1ZmAN929}j3>Yd`>d;a*8RnB|V7&=*0 zm0lZr?Xs13g27K zp-uu$o!p``8h!BAvB`$s|5n8*+w*cO z$iI<;`!cgZMpa1$jYsz7TDyq?31PYTK#0`zKZRUZG`8%q{!y*}RyaTvTxEW8D7ee^ z?!_eMG8jn9BbUhO=MwUFEQ8ZZhSYJ9=2RcbTNC@1%i}TewEK22qmKY;6=KwL;mCcIVZ*)|TvnSTRtEjV>PF2>rDVvag33pR^?ncK z@(SL0`@xFlEsE9Y+R0W@TuC>%%aiF5QJrg-jkgGyhe>wlj~b_% z$?=9!Q-jX;k{P!RUFUjMv%G1(B#d*%fh?9Ty2YwDo=@1{X_<3u*}KxU2=q`1b83VC zW{=iRz*`+es{^Ma@4EG$fj5TXV6Qs-{&?)h;?H3sZFze?>R$D!6faGkav@3$x0!mu(X#^FWM# zO!q9}B?gT}gkvoJRH#`h_@-+t&|n~f%ioLj-+qPM*(MJUR7`-tX2Z8HL?`u=2BzQM_^{<{TeC$_o-D4*xN*5VuKZS86(@8A$n$V2I$@#m{F;Uik zt2Y@EiLSB7cN^F-79fq_`k8layt+N-0IBaY@lB%UZssTgVxo(d$jDhlO;(nM^jOJ& zggNc#N75$&BcACSPzw_-&yK3Ub2|$Fe*StE#K(&w!D>K6%A5dswPZ<5iT|-{ge%zE zI{_>kMn5)oKI@_Hqe8|jwql}7D6?8j7U=2PN2)CJULeb88PEA7(iA*@N+bdadfBz< zXrfM=dly%U+!sDAmHMA=Ue%86+23Yar!qa$c@i2PDU_A@^m%<}aGF2#x7)|i{#`ry z`*Aapod0j@-)$}XcYKk|cRL?v0heE8sG^$};okmCpEGXj_rlq5X}Pkh$2tb`Vztr` z&!P+``E2BA@_P#k80*@sb$SYWN(-$(2r_*O=Syy)dc^z+W1Nb%J;MGU6e431)I25u zFILlEJy$<34Z&+<$`7X`G;g4<=?X{xz!U!de3ApE?0RY@^jHz$r@|dNg}3S17fqTV z-Dtq|gxDQU$E-!9@m>4;DQi8zdxMKO&YM}aW^s{b$aHXG9QAdz#8U33CZaB`Z+b81RDqL@D{?{?DmLl5Y=WI!Nll`%xF*_iqYE9?0*EFf5nquNbG@5M8 z@3aw18ZJRZDR8@6+{6*xg0~pu{6hEq6}2$WywT+04SOy-CV)!Y<~bvvLF*e<-OGT; zS;QyNn_B@6X6f`T^8O)G*X#L}IX@Z4?kMdy-uH-P_W+vx3j~J)!OI?hHH^;!mfc8x zf)U00Oo4Isv;p)`9n*+v!6Nst!j`1(>T^YX9a?KIHB;VOA>_MWQMX^$ST{_+>vYXy z^70p=0Ih9Cc;piL@?yb)puX|-E7RiqQ}o6m-Ijxh%j`+}dgRzfz7D3ZwvBDL*s4-- zwe#}o*H6OAks_1Mi}g_4($V+S4Ng<*YV^gCHFGz7N&^}ZW;`8VUBQBRX+8veL{F79X~K@`iJbh6v9fMY*?s9tH)=QI) z4XN>`Uy&(0&k*A}nEP04G-Px-*g4pRDqrhLwTg9liVqC-DcegX5n~zCOldelE|>ND zK~#@!#;xG5cmG%HQylNhK7OvOn>p9yj>elNayx>0dw8_mL6J!@+D|$rBqpVSL-vEF zq1TfksI-yfJvt&~%j5z5(=zyJEQT{gQUrsE0vVOz{enSJuuE6SE(74Ew2gTa=$QDM z?RJEC{Jx(NF2)4F&4-eQ&z`-;X3jD_;` zJjQEW6FGv4uQeH#=S~_FjuOpEiI6l|HA)XPkf*1OX*=Os&~!}b^9g6PXt%z{aF$=3 zrw>y^1$j(X`YCjy1m~2Edggnm!mkuC*|S@78U(W@pQCSOIh+++uwmC zam&6TA{!-{4slN9HM81LSLY-qO$)MBo4vVljs)hmuFZG;ZB^OoF;)h;XZzry32frG zq*3>ClicdY<9K;V4|hd?s=VaxxbmB&GbH2hwkjI^+9F3 zgFt3bw#j<_cf_k|FX4J0aAkP!v!)pauA zp}sA-=U$E<7`^3C$$iDpP^o9`5(r|*mFsf93a+oxK}VZ0kw0BpP};c5SZaTRdub;` z4d*AC**Dqr{xsW%!~d(S3-@^ZG~Htm%qjja9QY6#2kk|#RfpoE6Lb{|sheC7yig4~ z%D-VAI`*#=XJ;|OPAh&+(7C<&IA{1q{+o3J?S~+UysGLIzj~6!r^&=@bh%TN!bJj3 z_@RPsLo1F7Gw6I>RaZi6St<@!)dKeiDW?K-u3q%hNl(4bOMyN|aB}M6!Psns62x_R ziA1G^W@H|tZX8{YRb{fz5_c^~M2W8Ml#=j?kzfGAs@2BB#7bJnG+mgQO8lx4G1E6; zROnT!#SLC#+sMlF1BoA_c;3`@_02Mq@Y!Ik{K{^G!vvkF0^6cTxkBGf&&O+{`#A8? z-oLb8;5MJrhBau{;5&+uhEehBXLQVf)-flJ3s#y~VoxuhvmZx6 zD~A>BOJ;p-DUL=&0_y_9Axa!iEyn%?u!{0vLpP2m4O51={&i=4wkUKedQH5C6gD9k z;wKi$ZCzA)d5C6$t?rE(M_n!j)(NN*xGEOet-4p?CGNi{sPG+cD|>d3V8hdJ^M9In zKDSF$$!nYokxgAs?fMli#I``LeSzPYL( zoaGNT1N6t(dRliv?DXl*1Mz-Qu9W{sMQ0InB~Qt3WD!Z#%d%&GtR4V`gebkxuj!gM zM~H9ziIC`-vOowwrB9H~lns{VGw5_d3OQfcxQV%%eNp2H_!%0eQ}wU#%!>-?T{R*i zku7j*dAvAwb8npI13(bO?@NBn8$07+w8t%f8A(I;zurGaISwCX^-+#;K}eCjJo{Pk zu)?C!3x%T$oTgRFdjA>==5OOwCVq$e%QoR+LXtma-OmYZ{-dzCq-2&zh!TiPV78jVP<&6emI%m^`z|k3!m+&R=%HZY zc>BFi@E#rXCznSw13;k5?{VnJ>3zrl;Le-Q6b*($NiGh8UIS>^QDQ}GYFbYnm2a<9 zf1XzvaxNq|?KgSmg! zLjgr%R#{#aO5L9;QA1V$V0j%xs$!Pq^M*)8sz`#XUWr;Z5#M1G+f<;@lY@Sis%0Nb z|576wL4;HrCX za+=%o-*|%PLH&>!E;F%S-M|5}aPezhT%`xfwV&iroEda|!4TW(Q0xK+LYq^#Z%v2k zV)^dw9b;716WrtClHYiwMR>kCW#74fAWN7m%pX{<7PxjWEu~EjBhzR$7f6V9yfs;_ z1d^sP-8Ksuy?!hpx)tiO)7OAIGqg`9BRaQ_W` zHSX@%UNt>MdPB&~%v?%=W8dYaP-og3=N%2o|7dV3=PA<3{R_;aV)M*(;alVhJQnt@ zr6>-BsPbGF)1+waND!wru^)eVNKWmx2Np&P^&PWVXnI9}!7o6qAiWl})nmwz zS9LQ1C&%>fFZNHpM3V1_$;tZs8FXNwyg@%iOYA51f0!C&$!n-Sr}*>SPb4zk*zt>5 zPrQz&ly>iZJ8{Ylbm3F_)+Y!p;w!!!4B@#TL1WscgP(#ksz6rAD7I-qvlS*<+nyGx ztWlYO+T)k%Uoy_2N=xVqt1)+QmfgTX;mSX#$BtM-wGKORmhZ2m68*CcHBoDLI(g=` z^cP(6hW+6;!&ao?vtzJ_M*M$Gz=hy<5~#FSP~Mw?WeQ|XMm2Gm5cD5?gO{C$*5Ezi+LO6I_>|=k zma$7JN##$0%gA;P$|y=MkdysDZnp0{=ArZ z+1dCYBU)7J|8bfA;$aO8(atL z)(zv$rv$_Hd99fmA_#(s2Y(|uYA5t0-gn6WRj96qs?q(2W{>{S5eL=pgD^?XobA5c z`aA@g5^+Wtk^p~;_3mE2fq`U!d)$FZ)VnJ9@zOt0O|xXu|1TL%J>m!6EB91PF@GSY zW80KE(U<3Cqd2}iQRI1TMLL*FlC;i>#=-jc<=j3~F({L5G;0#yb#K7$agFWK>P(&u zg4N%|n(9s4I+;4*A|YZlzNfs-7VNd%q~o7;YX}4aEVs@e^5u`XuY+(w|KmyO#=iBRh?n$+qxpgzvYU zA*|pA7ewhdV{RYMPqs)5wdbDMEyt!8Rb86Zyz}WHTFiT9xF`2g9HGaH#|gdn4?cW) z#vq(OmowVZSdY-NHD(<8Ns!r6AYfp2t1sMN!x=koihd#1WWyYEzQ3rxykMUcp+r3Mpq6UWg*6D70= zE}V4Wa1CjAisq1u(bc=n*4BRp5B|NYn4!^oWy@gRQ%e)wlsTVKxi^}Zr}%p!JAXbW z^)l52p4`9Z&WtT-b=p4;jxaIMpt}El!7_BwIe;mFyVODFa3i(;SH>dC<4HEk>-@vI z0uz*rd&c!-rnIY{91$G&OYmD93t&v-_>9--5B!sP2n)vM{gm$d|N8_Zxu2chmY+yt zbw$N5mxaV{9Sd~t$Xh1g?6PXA?uoOE9188-1xjB0yiMZKaF6&rmsh0a`HvP8Xu51$ zf+8n`>3w{`Cx?^#N8td!(qwUfKY=6sza}jV>nuw3rp}n736E|b!8}U+{Ysu&EOSnU zl+W|26Zkc=SSLmMc-iQf_*&d`H;WK6U#_K0aTc$r7rL~6b)4~C7G{@~Z_1VM%%1~Q zA8UXKL$=r8O5{S5*LyzS~9O9`9xJ zG&z16!~;}x&`jT_4(g%@*wzEK$iX^vsN}KlP~3kPbtbr`xiJ5KiD96oJZaC09~d9J z7V#T}M_|=?#F?XiT23WL&2Nxa)*9y#N7I>urg0dc=a!;dfiwWEb>8~5e-jEI6BSX;q!X1Fmv<>lwE9e7O3rYT^;xR z5pKWsbjD2zWBL-LRju)?*I#BZasA#;SAhZm+@|MWAzGG$ynb0cu~DlWC}zKPdLknb zB8LYCYqck=jY|F3;2s+|(SPJIY(;*e3cP^SAE*}YBYAeZ1s+gec?41=8*LK}y=W+J z>++gGMT{DU*S9EYR4aPfi8lVW2%=39x!#-P8 zXCc7cwX7~AULZPm+QAGfA%|yv=Kr_2U-)EYf4LdfH0ZoiOmbP;d3b36&n``O{pa8PDG^1B{ zd1J^WM%fQ>JgnAHbN9+c{KoIl{bgdK@Rob1WI@ksNsDb~MUNHr=sdGu|0cVBN)ox^ zlu)639l@Z`VmnMQH(%Iy5pMesMQQJ&1%Hi+Bi`i`gB#e_`|&`eHu+zyt)Ar;^z)UL zJ;U5Q#V@!;$DQ^3*qPy9)Zr6~8A+Tr6gZXTbA)A>kG`OnqN{GNc{YW#&z^V4Nj9-t z#_1>ncTDF11RG8JXEa=ndaHDp#BmV{Cspcpv)q7``Xdfl`O*PwI^$Gs68EiD>Za{( zIj5H=f7Kld#HC?5^iL62o(Amm9SpU<)w^@L-8W90)763OCxo9S*)pm&EQ98l_R)>I zB2Zue|7_7;ZlN9`y|SG%Zync}@^OOQkZRvU2;b#=(K>VRlcr;4+F>id zlm1NdFAD7^Sj$_?MzhsE;MDlnpd2^wz`V7C?*c=D~-S&!?8*`-h zn-C!CE%^fGCufJh@+n=)eFB)N_s+kk4%yizpSDOu?ReFbZjJ|EHbwcY}l9c$v&33$VZkt5+Q{cuc8WZDW`)J&+J1sI%5CRAmQsn$o}~Dib$L z=M!AiJoPIoS7oiomQ{AW_d&l7Pp+zv>k-A3>46*kt%>1*u-PdvWyj#Bkyaz^8LOg> zMpMuOm8jc-#e-Jw&kYItzesz_;JAWpOSeQ8qb+7;W|qaw%v54Vi@}n`Xfaxn#mp8n zGcz+Y(<^u1nS1+n&zm3bpCT$$73XB0%$;j}YoEuwWCyzUCtBx#*z;9g&C{B5etb!0 zaKq)XubSyvvO!msOfMB3={qfy?Qrr~a8g!f(Q z%MgqAy5geZH4knp5}Fp|_NQ8ZTAaRXD-w0fdgV`Spn>qfL3$juF)LT6$Vlr>@lHrc zK>NBZtMD#UB%}N1Hkwxh8{Kl@#{x%^oeCrp0k+Kn?slj;cJC(knN+0s+xet}=&a^X z^ahWWNdS2Dp%%#gou*gI2aBMjo8vF*diE?YNM(_PsRoDWgdv9UM>*-k1JSuPUjS9- zjh}uzV3*tn>{X?k!B}R>Td}xi?*1CFvYS_b|Bb_I%)2IL1Ow}kr^t`izAU!^amr41tu+$*yN8v&>m}gC_=a}t>t4i9f`MRaOTne%0PC707 z>$F3I6BA?rRtCm(eviqAYx~g(81w2VIO_yCAPzWJw)yU^<4HRI4!fA9Hkq|{VI0JX z3*yHW#EIiW#tLXP!h_$n&{gqRa5lcVXFNSDE{5qPfj)}|@oN989ZI70|!n@#3?$N+$E4D0qz%C#f%v&m{_)26hJ0KbX9s_hkITZzNxbFY!DY+%3; zsu|GUes;k!xLeVoM1&gsAJC&55s|xZOREw{JLumdRe_8h`pFVbbGxEJ6Df^ARd6uf zDKiF!1Atr-Tvw~1Ilnkhv)O}2D@=P^=8QV$uTSXH=k zwZC+w>sVA8`O!p7ySmnLBC47jVE<}%=YH#W;jom&$7Y&M3<9PxD5xOUt$5wP^c)Xs zT%`Dz<+OfFj%IRi>^L;{H`&IN#w>!nAYJNNprkUjTWS4G;C+#K`#hU=RvXJm*~mRX z3JdsERPaka!Q0+rnoLja$QhT#XYIUk0=kE!MwvKrL(r4LC(q$8gj3YmLZ%E>viZ-{V+lvUE;sK9X`i))gF*(^$E^l9Er~Wn)xWEodK- zR=-i_RWN?}!pQ5UJ^f`G(C?2r2t%eNsfi}cDw!Ae$BzgW_BWUbG%xo{?Q6)C{k?q* z`aS_>>K!DEHtW%w0ao1$-jUZOH{#!1G?^m(pnxUD(=& z_{5|6;iJ5ZmFOn`q)qI*L{CjrO(!!BYRk>Wd*`?91HVcr_KrWropiW@;t&E8GZ&P| z<_5gASmk#TD_PaK`nB(#>yPY-SWqqMO>x0ZZN)bCoBtG4$*SGnc-}xG zrVB7Fe6&g?-r|*2vJl#@-s-CfJU06vrblzy@%YvbK>}(n=Iwdb{~SrR!3^UfvD^Lq z`6Ln`rcJmGdZ;b=wo8=aVT;k^mjNo_AcyKT_kZ|OK@@YX$f zUZCs!4b>b*=tbxyi?}`a*FGot>B!mJ88cY{^6iRVcEhETj{b*8@lCZ|A*N8IoKB#J z$FNzzS88zlYXHin=oB?ir=nsKRe%lUO@e#u+m*f zGvJh-_XIn5JA{!s2K@f?x!Ks5StwRp&Jm_R8j>dY4vg{%^4?I4hGI$LmP+KIUb;%7 zGU>>v7{!ywE-A~T`%{7&I$0}Pn z_bKh0;$g0jRfn{z@KB1iqn#`LE+Tl0(*S@3f_Df`LT6&0W2WhU7c6|A za0Jm8L}kbg-z%J#Gl^a~xIfe<#3j9FmHnr3aB<^9(merOfnf_QLqb?R{l-`X#olsq zyKIjwikq^tEQc=@5Z|hYOQDdB{f(85qmtFf-0SM`M5G)6C5or)+_?c38A?y9D_V_Q zLArq8iOQ#60Jq4}@+v|3=h28~{`$(&RuR=!R1>yi)sY!gTwZiZslkfO0Zk)=Uw)<80B)3yz zo(7Usy^;N@`xhq)8?|)bVKYLbGX+MWO|J@YJQ6Swpm5|J9^9wgVzIb=%G z6rWw^AR<7J_lWttND`HQ7OYaAPq5A~WOILUEL zv^xzl7!5^DU)P+cFXBq?%Tz)&NALIGoX(rZR8bxH=6F(hsxF>RI#tYrX`LHbH56B$Fs*T2T*M7>+31kHPWFw+FAX)@@s23hnK>c1Q(jAV1k_lhKCmj z85Mk7h3PYRcVCrLbFqXdVrNVyUdN$@RDb_832)|ma!MQXP|C^3G)wH*@m5HnL=z(0 zgy2h!rR-LP#3P<`L4ZMQLX#-7pGMu+upoB^g+hR}pH}bE;P8<@>)zRQ!Oo;&c~ywD z+uwvkY(SuJF9J#ZS_9s;?F#7! zS4&}VEslgj^1&2H;PJ)zV}^~ddo1tqVvbi%%1p{IwxSc0f-a?s4qc?O{tU|g_=&7x zm!+qO6(vBu1fl@Cf+b%Q$&9KhR26R{ZWI$u5)sFD=*RH_$0(%Rs=Lb0Qakj7WX%ux zsVqQ`5Fe%ayotZj0XH85=a#HU#Myv)%U5d1J}&a*>;(zDtX<$I{ideZm;BSIM#hZs z_m}(uD&%WdD=<8zM0uKInTPYK(V#?NrJ8)J=cJRd{EuDqs1Yl%l#zH0C<=@K&9YBs zcC?{T&4E++(pN=mEumhBDVhl0IeaFv+I1!KM0c6?Iw|UF#_7M*spoM#GNY-5{xrxU zRkl#NM$(TnYYYPeI>WYXOj0bzJXrX2Lp1br=nQ)#4qhZNGMGM370qBmePcgyL08?x*LVer zxE?7SL)sE%`9<6W=8qP!`Jch`0=OphzYQn7PK(Za>r7c~46>F7nzTig-Q4P zoSEP{6*a0W6D%8*kZ_ufZB_DT*H|5Rluk{pfSKw<(_vzpN8xj3T9G*LZqK=Ruua-u zE#3>NjRT#63SZE&cs-bX_Y~|sT~rA0qUEJ3nv8kmW^LgSn5Z~3_^l9JwTp>)XckI1 zDwK!X&Ob*}1LDGl5}Nsd(ImnlUb>)+ecO?rZ5)CYgh)HpY)Ju6;^>Lz08VBhx)B)N zk)+Y=+(V7k-rHX3nD;k5gVXaH3Bd5iho;71m-5VaTIXJvm%spqLcf3wipb_q>yxTy zMcOmH(1G8P>ydR1>=S|yche;pLeped(%EvE);!EM`=0F0cdNJ=8R{O}>}|1QZE2R< zjl_PE?YAF#-3>bMLI8Xj_lni+b(0w}19L58UOKzxg{~7UH7%FDe!4t=aL!l$L3Qw( zdby>mdDq_tj>HL+EnqgNL`IxVzpAYdACuz>+TV27TC3BR4Le0H7ZOHTSWvf z4lHE%9RxKTBsejm@)sCLVVvJoD4>rdm55MaEMs#)G{iKKSbz}G@2}zD0YZ}Bzd(Tp z#P-+glcxq5IQ+^9KYAZ|uZBv+5?fBZDBtaPO|Hn(I!A7=5S#F?7_2HJ?hq#x<~prw zLe9Ls9o4pF(^%q*f#50i#s(isk|SRkaZ(Kot^L@JDBjPvAx3&)F*k^q5ixfaD(u_> zX5pv3eFX!sa((-d*g+L4SU4|HS-{#8=iZoFf7zKITH=3eJZPqdGnBBzsV?0&YXkkN zc2E1tom0q8zRH(8)iVpt_rv)^Qi;}Lj^A_~2W3cyr`N#sW4S$KRdGQ9=N!ag)gBg! zP?`2tt|?ZD(o>{EY_8T(XOXOGjTk6%4BwHPb4x{!vaTcLT$cUxyDBaU#nfbK{H17HF})X%D{Fb~K53pLMJ&^H^K|G}>!d*4l8`81bFO zNVHP{H?drDOW3Jv`_QsDXW$gj6_{V&$!~|tH7~r22kIH!@C4^)8t<00l;ofLnoDeR z9aM3f%M215%oq0=2jPSIN1+ywfc5uWyYev88AVT)>8tFGM11CVu1lK$8`}cv``2id zb70o+4}gnS)i@;mp@M08NIZyC&vcaz^w4wjbWs-yhXi!DDJY8>#PT-aQ!Jh=pp<`pJL4gX>*EY842;nMPlx*wBX@sEdV1dWIw1_Ncb}##x zVH?tk%uLgSVKe8ccKWF|%Km|-#4$YBgJi~m*DXy^lp#~XZ5UuYBct@~=v4U3KW;>5 z4R>L+s`L^*{%;ChBpKZ=DNw~z1*mXh-ikIgUv1=9uvnenwnn^uuYw+yn`6$D{Zn2@vP-WoCGvE(a2O z_aFDae)!yf|B{7Ka;a>ha-oX9-1OYRLziwZ!W;)OInW>pE3CScE|$ zMA^|@=wl@46lFyK4!WO(Ebm4GGQ=U?OFJf5l2Jn=%+l5JSU2CW&QbhruJ`)FvYK>& z&O*-LQt9CpITln8(1RdCY&+&=gX6V=$w!a&IkWWL(yR@CQjYQny?ctbv z@T3ED`ukf)9*JY%ef`Q|eoXJ9RNdW8_hMfel1iQc26TY{<6D3aSm*3516H}M8~qfFhq*q_PN$vzb3;o zPZgmFF19ogm-aVmnw9ft+xXi?vbFw~Al%aV4<_zUWxDPt0KSQ=BfGG!^HUFP?Yp+z zGz0%5S1p}KH97cp7YF=^EM~i=%Y?}~udy0_-XLQR7E@JYMTik@i;2Db@u7GiMEwbNTR(2Jc{-@$eA)wx;2y2S02iy%T<7l=gAmn>cVv<+JZl-2#3NY!q~J z$#!2ptvmb-7b5a*(%ldP^A2t}>_RL4fowndqU8Qzr2H8sh%vQt@)oq`(LssU2>-_o z@YDa?F=afm1HZL()nznvoOL9bm5F^z1!~`oKL^fy*R;Q)ekI@Dh9 zXUfKodMY2<*xRP1i8#`eH`G!~f0Cl5*zmGG#=AcEn>w~NRSgvtO-k(we>iv4H&9@l z4MsMH%pcLX7$-ui8rI~Q>?%U@3m8}sJUO|gvxbO+iZL4>^mJ>aSs8O5%e<7VJ)BE8J-V*CkmAnC;(PT=&6nDb&mKN_?i){sShKA{yg1ZqK@Z@)v zY}IySy(I=v(*Up2j&W!{G~f=79{L{dSv0uH4%o6W?uSjM;M+v$U}?&A$9tncCLm~k zzoaeE+q&|^qH#kSo{jmL_2HJ8sN*C%8QXH1hni_$T)_G!itIfFSPILBY=$HU!MS@j2V>QE5+g#Xx+$ zajSo>zrg!=SBMK-sO+`tgQ|_4=Y3#i{3pYD2`w`4f)*{KjvHbK`PfFZMjVs-s`|it z7*_Z-oBc^DMuy%g%rp3g@iG-mn=;+#2+W!K+4z0?l1%e97oV!#xZFPcB}bmves1{*shNnP2eUc^pgJ zC~tlm`yof@y^{oypSDDyQk-+VuVb%Wt%$56=2(#dSKyhN1JZ#&)i-}vfh=9V~PtS&Rldwu;-mfF?co znuiqGG3wg1SzOCE&-aQrx_ugjcC61k0?6lTWDGj6YJEG(TxZKkl%!t>sBS`w_&NZN zA+4#DF*GO{Y$?Pxz$m2&DZ`>{xHj=V#u#|I;#z9mmZ^X^gMebRL%TS)TtZpGCQx{{ zR2{3W<75w96S%*4Sqn4DSKg3(IJLi14v){S(0x+bzld2>nHQwXOy&;zBTi}RJv({2 z;8ALQy}Mo=v$Lb0r9^7xy#?;vx8A%8E{ezTkfV~93IDTKmbO1U0^U988XrH|1|FVV zDv{BdDxI5cI0Bwt5jj(%puB50{W~=)bb#@~r>CZ$4PffuxqsVWMu-xtNSjLP!)}Lx z)ac!)^gD9ZO>Ssx3SFoqvu6}s#9#pNXNVpa(j3L`N#WM1-*b>R$Ng7Cl+BF{qxSl07jLap!tK(oSZa(c|hwVlG!y&G0^3SC8Q=* zB(L?)WcTf)uyZ{ggV*tD&bLfU`n~7IEvjh=Thz2G5lhu;CR@MwA!$<-mB8IeDRsSP zZ50B5;*Q_94`JFkW_`qpCyn@Unqb4(3x&|dR0c-G)Ec@b0~bRkM|~WG$w*nHH0=Qf z-^!KZA$L)||}7=OGOo#S=K*2ie}PlLbr)TR%H-)P7jHl$858X$y{k5287QvNuS zkGN@?pfH@a)0z~eblL4`FI>mX$O zG&X(JquU>vJywmn-WJC5$@l(ojOeNP{Kl%ru2Jii`0MVc?4Hx;!ajNhNBXfd6p7aO zyxd6m%+Bqvx8jHAkGI7^1Iwoh+k)pN49V_2=W<52>nAvYz|lzBC}R_pf2a{;?0cD@rJfh%BM}=JomM=6T-p4mgBhyqgyE6CJ&tg zp4wtnvY3}4Zn^qH6mKG2`|HhrZfH3L#j3Su$Sq~){T&MM+es!>D;lP&5_YYAkJ1Hf z8C^_dPa?ESQDFhV-zN09Vc;p=506z>ZZit)r4YvFUk8*zs4gQ&hO_(W^6w1JC#QW(_us!HEB|X3(6uo5fjq!-l%HkXvRHO3R8Xgj>z!-GD>^N z0#Bx6&$t#UGvUp(pMjgWXUldSqU}SSQ$&dp;55~OGq4ZG%o!GuXpyNRy&qIFn9Q9x zw)FQo7%L3eUsRYcLX=uQCr>UB9T zPEP>Rz;DV5j-lmoNhhSI0D@~7C5$c3Je z%GUVG^>wwl%{_;vd^$%ad@5DnI_!yH|(VX~Hs{d>gjCQnFt~vH3oi zljbvj&+v`jsU!P;AGATm`*y$}&dBeCF-I+A|L7nkWi1PJxUa#U<46QnQ86qe0YWVb z&CO0r%jrSJNv?U+@W6& z`mg=|r0~*`kWT=;I3ooS-zf1Qheb0+ z=-Sg%;5&Z|O^oUR8g+GCLL&LS=_7>4E6!*+xb9k{POD@32e?JD*0&D$Sd%ccu4$XWd^en+us#jL(}9DW;acK+8akCkAYv3h#t@o zHG}#%>grc7f&M$Jajz-qfVu@}L90 z@2Ue*3O&&KVmPTX3=jklP*TSF+g1u+?U%fAZ-Qzb?$~#q8Q~V#HFS`pwvF>qcNht9 zZGixZ$vky}B9#T$*2145C9<`pNQD#fYzq^w=Ug`9csU-3BfiO%b1V`v zjUThODT7`ls9Vx0dbgu-D5It=K$fSU6%|5#@~ymFDh(u`1Jq><$Cm;{Zs{y5G{R1M zKHkIJ@eY5Jqq|!-BkgYWslRzw`bT`igL+@hK>>ro=4M)j1>GieaDp)6Y||lp&a>0@H^&nikI~;0Y-G|B6Wa7nUq}jk zlFpACE=I{Wc)w}6q20aodJWOB8R$1drZOYnMd4>;BA&H!CSGx-bEW6l&Cl=nAT~gl zw|!`z+m>wN@gL1K&sT+>-v)wZNiv~_{rCZHp(+i8iFOX!zc{h(Q;z-;7}5eA&Emg6 zsJi<6yGxaK^@BTkEVTy=F&tK@(+MLqSX?A$wtg-jsz6)Uv)yZx3ciz{wQlNI za2P!Fo;$N};7fgezjk9SFftKZ=3G%y?0hqK_#^pO$i0WJhv@C&S>lHlGSNOEp6{{f zHPiq0Hf0q8C1dTJ^))S`jks}KHP;SoJ`=z-*9791N@pd=@?Xc<;|>0VB^p|(H@dz} z4dCoCzTug1Z@`S{5SSfy_{Zhb5r_X%Z8OWtW8QPr<5?!;!VDc|Ki+qR^19ens*E9% zWl9yBAOW=>EtX8ss4d4Wm&je)hvk4d&7_cT)Q3bu~T^Tr+jo_Nz*6bO3 zk5iR=2~;v~9&3`+>JRaWV-WXEl>W3lm*^rC^VBAmW`!O73D66&t_)K(*#>I>GJPn? z!Sc>m-wy~sHfvs5mHBTwBMEpkY9BbtM>(!nm!!mtZ8$K`R?yb`jJ@$<6LH*%AS!*i zu)p5tg3eXuRUOVj1&AZ&$_OJc?XG-S9~Tb4D0O{)wf|yXa5n`<0SLG6v7Qjid=Z)m zD%x)ErUwSjuTzm_HZEk`k24pOPibL zqVrq$(J;~c+)FuuceiErSSPSlC}xr6k_KMMnZu3EEG$Hlw<-hx(fojhniwc0Pw-XT z1{}i727shYY@&fhn4nzIJDJ&hQGRlaSF4VpYyuwKks z7iu^`svB`<7+pA0(PrKvkf>VQ_IMwZj8SeZ)dwf)7Nx!v4J;0rZ-4PK=V$KvEEjXf zC35p{cV`SM0Y?og@)cpK+84oX#*-08dUH|W=7jiQ4XD6zn_4MF=weGNLNKuBgdr^? zw#}C@?@1Sm_KAtuEgs2nOAJ<+YVV?7?5y}!9t>aa14cOxo`eTYHOCQpu|7Fx zSH|*i4adfc+_w4$6%~)u!ayS}{rO>7OQ@Gfrgn=5<3U6>3B%0SR$M0vJB*PF<`9Ij zzOWETjz=x2R)1x{-=Us|5)!EXX@=tfNTashyi_;F&1B*{e(E3H(`&prfur7A=8MB3 zXPdj4XsMQlwbmk(S6F8;N8eacu6fu)P2T`3U7?BVr@LK8;Az}I;F<3xGgT(|97OOu zNXPGzkZYni92FKqGvtDXPV#>FB{x9C{(=8a|8=9IQAOx*$K>r}o#3ON!N{4w+j^Xw zCmJP|iS8kC0{fV9D-om;EMC?z^KQc}YFY*hTs@UIOOr8AXb!IoCNOPZ>u4SwZ$B=% zYTvGIrD-b)2N;_a_X-~FrSyzMrol;#9)%-MPk&OJ$vqGv1NYCW`lhH`GMv6HTUioU zi?OoHM?Bu%?n}29+#i&z1zMSfxGY@Vz(DiS+(l@h8ro9az(FG5BadjLHzf`Q7wmcU zz9RSdMI*_0QAX}4zS$|;w37}MH z-S5euQUl1S*zAPtv~=D_(A_yq` zj!~|sVe$LbzF?I%mYF#D(4#$w#Kbp~Z+eP1&dvK+?!!95bPxyYS}aGMeXiJ4e}Q+N zY9Ez9B&Ojdy#dGfdTdcC`Im2ILnrUO^6NJ69#pWlCxP}M7@m#$k!^i5^M{-J$0jdO zBPa<0j zWBHH<^m2pgvoRgq|8_om*y)YUZ8M&cYi`O)_tKV7sNLqM*RBf_o=blQ0j=}%=E=f( z#NS3`>K>6cjg0w0Y@<}-hf2j3P=&)eG^^?Jwfe$tF_l3ntxt-G9KzIavs%A6Y&L9& z?R;F}#J2**WQT~X0s01m;bg(80*i~1loi*bCJc$|tiH0GQy(9CVjhmaRk9Yj)c;+= z{SW2ya6PiF{{9Imv488Bph4bKCF_N6yk}!gosGm&37qTJHD1`D&+XRu`|L0AM#l$4 zcG_O>w1&*nx0~#N0|P1*rMu3U;juH%f(Z z=@ds~*r3vW5SoC*cykxW1TXBdSN=3CvvZH?t94WsYuwXQsvgGY$G;0#Nww@SAg4pA zgX~umOTzB)jz41PO>9KxK&+1niJr)NpEAkpaEdRjtWsliAg4nLFDpr;iyu1X0ale9 z{dS80xQo^?M~CVe;LVr$2WCkg$*p_5YDyk>#uWKo;y*(=aag*+8a_SsxA>Ock< zTy2hVat1%Y=dXYok8T$v-XV|ZzO0n%y?UU5C!YcJ@q#%^$Zzwz9zC+KkMRcN>!lzj zPV@LblfVRp7RZ73rU6Oj&s(tk;_7uM6qD_hk)AL}?1)h+KFKJ5`O`WYTS|jGdo1Sr zGNSG$TF}u_cMp4i5yK@C3St^KRlS_|dZ6Cl?98;j?tRDE&+|iY?eoXd=;lg30Llwz z`W$5R)(c6cE2c7bkq-}m3%C16O;w--d%FrS`6(&dKKi9`gm*?OAY`5Lr~W}B1}LLD zPQm!&$q6v2d||K#4b+I4WdSmtzS&WOavKlVZC-^DEuhj})O*A}T(*8ZfPn}N&(}!O z>sL)ps$2R9yTFT}FJa_Z@+F)Re`el|J$eWuDmZG=T*~>gU+LW0*~dm<9MvNlwjZc} z9By4ExBW#SRjAy_h+Xpz1@}v%yTT6u1xhH~%}v7PBf!5>hZve@Nb8mW4JLVPJ3LU4 zCW_NkB!{*cX8hk^s1$X<2gHXrDV>kDboO5%1hx9np*|oby01&T+l5Sa0FAKEyYLGB zUeF-)W8uCj<~__~XP@M4$QRSNL4h&&0gJ=V?d?fc@|(#~|D5o>H5~+*ZZcf~6_wo* z=o~p*@F94;#rWZVf-bupEX+*^+&ckH^>&^d42rf9mk8Q#62SG)k+sH0yLK{TBaA^* zIEed?n;9iQ5i=|bJmVxZHYMAllzl6y#!rX^vhM5$f^yxpR_C{mw$HyPo8PTf9V7_E z7^qN^V*9=X8%{uX-1HJM;9cu30r`^hjSuS^+BW6*Tl&3+cBD%_jEarfgycMQ9O4?mDQDbVJ&^2;yVSd8^czj%?qk;ok zo`~tS)vRNm#~ZcUd+iAsvTlMGN=MW$ZIiHw7_>5>L7wCtjY)K~Z?cs8kjM39J{>3f z5X}kDAC|6Qy+aHCOwc@ibTwY+kp;y99zkYKLp6_sqgXUxldK1G*kek_ z1g$Q6DA`wwxoj*)Ea#SBakOHR3wD2|9|!v{UdD{HRkb)Y)mjds40^Ga6K

zyaGBql)e2kJC@Wt5+$zLr>DyZe3w@Wo1JTo^VwoE4$~C@zL!Y$b{-K8tLJttm7Fb! zqM_&s2_y;~RG5XdN?|1cuk=i)o(Nd#tZw=2QxO5OpY2we;(t&_T<}l7h%yN1A>49KX(j&Be}VA$znhiNT+D?MR@3XoC2f4CJ5FrvwAcf3e@ z-CkG1g$c5rKtm6{W8e6ueEd#YZb37s(pw~O&{?Z)Kg~wPSmaYlaqr#I(p=-xMk0Zi zr~Sg~yJtp3|9n;s1OiZOCzyOt=8t7MbbizSgzcL2InPOk?k})~Cn>)70wFJIPKe## zO++ehxm%Re_4%iq|6wlGaTkODY*vWwI`>!8bQhK30wnz<+3Mp!002w-FYzT7Au{qi{s21`SwSxBz~zA{@Qpn%>y)>@K<|E99xj~-qy zeNAb#7(_|XnJYHojEa>&GD(aK08{vqnG1mc1q?$A#e{m&1O0~#%#Yj|22OyXd5J0+ zoRDrVB#6Ayg$9*mp&lDpShY3&8_#K_oBmyjz{Ua#%wT=5he}-pz@&>t?wAD?q;CPV z5N!Pe#@^Fuwjc-7nc`)(+W@IrfimmI^bJ101U6t@UEH&1ewNO)!|hJZj;{#|24n!A zeSSd4et980idNnnBIh%N+Zu|lCB^VsBt&2TQ{o^a^0Z^K@ox7i^cy&HwYFX7A4I@6 zbWadlw^?#Q5Kx5$I;~CyboF|8FbT0zh!vywu$mul7MdhqIk3eEtI%Y;&ay9*kW{D* zrFLExhMC6sZ@~Ga2F56E?|RRPO-xbYn-x1;?+QWzOiUOv!#`H-5S!iSy$joawXO*G z7e~JX>e>A?GB5gSBUd&5lqz=;r7<%HRNd0;NfIaV9j0QzOQKtHN--sKCSZo68wO&h z!ORJVCeGQjs~5H}(`H;~Aw(F38v{~>w1C0P&}To1B071#A55dc$aJA$K>fFop+EF>nB^H3LeQrgx3Gk{1Xe9!Pl4UJm7eTwbJ?(17N$kX8KV8o-Q_XmL*1-Quo|9&^DOPRcl;r zZV+yJJpZg|^EpAcdVUZB0JD%Zw3T_7`i4&i7+O}QZvB~bD-6VikC7mkb8SKmsr)WW z1hWAB7f3K37{1<&<;-PT)#)U}t8yP(5c+qP1W;vSj}SvhrRM<<2^p{uFJr>}qNnFW z&wRU7UjCexJ%5e7G9Yg3T`#LviQf1iYv2wEC_3Rddn~BnLlSW*05FOW!TZn`|_;8}bXvY12C2?;I9xdW2lA$4D_nQi32VsQNQS4;fX*TTaAhm3?;#Io1N{}I4=_QcLulMM z3m_j{s@U~GFk^SB2(sH1>0b^XUoQSqmjAV<{2$25f9@|)`AuV5SDWbT@Q+=6Joc$UwgTPV#h#0!E*>dhvSy6btu zsBjt(^}X*B7BDgeRdtP)_4A4*N8rffVm5eR;z{>r6ieOhY1mHkovQ4TF9xw+!m6nO zu|o|NQ=Cadh%Bhx#1VJfU918JF2d0$fB@5xg7`BaH_g}HCBLh_gf&S!BT(AEQP!nm zFCzO+9{BtX%pV)C^&{^JMgj&9TexucZuT`(o+MnHk6|G~f)9d-E;OGSu8WgL;4O55 zQ=`1);~FAo+oC$mkri9!CznVl)RA(*h5|l77=^5n>>}V8Em)g5WJvaCSPJ>+X zmTo)U+CTn^_i^op=J|gLH|AI{&@Jc2ILp5&V|bnBT{$`g1O5d-yoyJ@@+0JiM z`-e@iy&H4g>V>09V9nHx4=%b4jPV;Oy3w`bcAkPzlB$*@2cRy|#gc2Ih%pnxc@wsz zJcVo0%=HFV{sBRR1-m{1jI7YuiDR&)X?m_)K5n^9zWaF$4C*+{@7vW=>Yp4S`K|T> zcw93(y?Da^3r#^zTnB(&uu#Ec>*zjgXDUraJ5!!GBeBtle**@yNc0x-1BeR@Fk#bx z3C-e~b_MtMeWL99>i1K+)qxhHo&i%W?!TH3SecZNTm6W^pR!FpUh=NGB;6Y} z@QEQ7`q+bkCArxP>4FxEw*gJ>2Vy0^4-9=0pT6xBJd|8_Eu2{|y0n7$m2^1@K&(%r zFNkE3Q#ck=Tz4q?OSQ-ioJ35YRw#?ijWw><8Rtv~g>UO}qs!j0i2T&~*)rJ}+gCNH zW6Qv%i61fpMS}`Rk*3Ka-NIsG_X*FVTuk^$$+~MojGB*Enfe*0PTBEW4dqqtfS5&_!o&4_Q-TJj{4CV5c4rAsSig5Cn7~7L;^qm~yI4n_ zl3Zw$wJDe|UZ9(nR%47r4LFNR!;=hE#f7UmxNe-N$x5ih^iw{iq7R&|q!rPKhY#q)o- zSXE;gNdN!}LB*2(S5@Ab@(40m0LXAX+}#8D|}2uO95%jv!gxn_Qwb^%4!}5Z_sL8>r2@=urD7xwzta?nx+7 z&Hi!Wu`0j`eDEpt4CwVY|JyR4)sGuH0`3!))?oX8llhKePG4v_Ixq6X*TF~PdDdPF zYH|C|z5uWH!yjePC^yJRg03Vz8=m^XIZBw8yxx|4@51vzNQCfBi$o%nhya#yUFb(3 z_&Exu((~jCrs;aNR*)2SJf7N*caSZ%H z#U84d3L*Z{?n@Vv8qAhF*b}Z<(K9BgPkF@WZbuMt3<2wW!c|a&dKOkrUrH-Sn?$@lSM9y zXFYkh&Y*I+c^|q6)ws>+IujDJE_nVX`ZD}PMQh;K%6B&hTknvybv9?V1=`t^6UVrD z$7uWpp0cPE$owTcp}(;ZgC-Zuw>w-}SEUP;0e*e}UKat!L1KCT{=~qBG*Wk8IR8q7 zG~fMOVPF_4q=c}c@o5vrQ~MY#k~gx@uI`J4dA*XDL>K;WblJ3n2Jy|gHR%8a0Fu{- zZ^u2Vr9|(g)WeXP99;SiU|kzUU1AU}l}bNVcdtb=t-?x0}CBLd5w~ zqFsaiZ6LW=H(+&ibHZ+;U|rDElc5+CrtClPm0Wt_cV7raJ=f6!xr1|g1o((D^R4!Z z{$)W{i?NIyU8^o=>1GC?{D*v$LbZ533K)-v0^kh(CC*y)W-}cew6UI?<>NXYr6LcQ zy@xiTO#}EaR$|KCzAM9oJ4)9HR>pAgT|uOfCLn_1lxEZt*Nsf5ZXr*c$Gu@EpIe=r zpB`kE^6U+`_+K~^xp%La5q^u4GtpON8Yr2o(88ERQ z<ng?G6ma&$1Y=rJ#vQ@j@9Ixt)JHby*>S z)W|9Qe*~*CXHNq0a%3l6z6e_eqn*tV>R0qqfuV(c*Ao^m z63}_}DD9~>iCPOFui;<_F7$uEzX3vydQ0ol0cY@jqLmycV1TKrK54H%Xy7Pm9hPM& zzwnF>!|UY|yPYW+DWX3|qx{EE*7$q1^GSGGBl=AC6Q0u5vTHE;X)ob(4?xs&CNKSZ z)4@gBX$*bFGS^PW(0>aq;2!^o(c611{33+WO}ME||GW_?BMabv#q7D?n?)M~NU+bP z%r6Lyd~&^(l(^_!Rq;uh+?|TPib{_lL|lwnHtAOrujO-TCKYiO76$=9OvlGwTJ_iO z*K=k9trd)J4^O0ky$ioG+FQfoqpn15;~<|dq2!s4PW#W|dJy&&C2p$amfH|rT_MXM zZe+K&15!B#s360mkkKh;Lk;e10U=fzcLBjK49 zd>v6qWk50YZ)~Pe5PQ--Sfv?8y>>z7C)I8DlDkqk{^~&~@5kjt1-cDpq0v#G5SC+k zM?4t{%mVhm8y5eb()t&zYQZzn6wS9Q;0H~?3**ZGhNXIY=4i8~(nlUl ze)C%H38udRE$%c8UEAe0alM?a@5Xd(Jri{lNqWu}3AMq0+D4aNwkJiL>$WfDD5uKH z9%IJ-pXRdAh^4`2Y2`21b26LcX@Try)Cc% z_8a~4@e9VN8dZC<*Ia9U^OL6NS0A`YIPzsO#fcjEiWT+3a<-xHZ|%8lcl~9tqz>*S(?x9N>p1u30{?%u}chLi1rgQvM{UmbJxO%`l z_dY`laY`+V5xAG;CfgD0MR!fJ*Jc>JD$L zKpj`|WXuyBY5(5}uE4`I0CUKEDYV^e1nDE~Kba`Vu_>0}m%(6SYQS%PinAoM5DMr3 z+4$Ulqp)Zi5ZcwUTjX!rv99oZw#&_MVdUc&n)y-4{_WbP<3jP}xQ{TK7d#3@N+ull z8)m$a5&M7PUyF;TT1^#dvpmap)g*ON`AadY8ItuxJG?e$UN|W&f5OocBkS(I7ghY+ zPhQ#uGf;=4KmAMoNI_?jaz=k;ns{+yaxM!hug=I`DozT)wd;#74RwL@*ys?3T<3;2 zwW(2X=+AMhv)A}g2q5J&qyrC3bM6G~^0JyPA%8JHUY^ouK)dH0U}>pqruPhO&py@c zGww`M%I3?OiR)UriANW5SV*f8$f}_k{-3EFmT^ree>n2olldMuy>qb}Y;{Z-TR$kZ zEs1}K;$WcpK#LFvl@b+B#f;dc)Q=+=w#6`Hif8}0wI$cL_K~8E7Pzj{Hh*7l?0Tkyq&U-iS^ z@^saAyqJgp+1h3DO%xSk7D!yp-e4nvUChe%(lF?u8*JJaGbr2x=1;SW#9yBA~?7}*Y$##4wm%CH=c>3kj6w#g%=)PnFo+=qfNPwL$3qf0ZGpCbLCY(F` z6YZw2aV(0l!(v}j@)4TBD#cEDGdRR^ceu!UGzFcL2nx)7=viz3r<5E>|C~E)q@@@G zcKps~iMSh^p>MI}ulPMri9~p8CJ9LlJ!JxyA=4QuS;#BS(e{lu3t^$@YrAI>(jRH# zD5ThGm)98gwZf*w98gg8Vj9#HZE6jrA5AA~($lXnIy>-<7YC}{l56gIAzVtV+b#bo z;+A!_j;lVd8w%D$(_vhYpuq$?wRlt8*%9ITYuT~-QHQIX5MDu`7Z;l?gK|0l5TUqVC7 zz4*EYZy4Q1zdG!G;&z~f{+IIS$JB@8_kRgJ!B2U`v75!HhPLO_UmE32f&b7bgFzBh zxLU@-Ra$I`a>(s3JAH_jeg%t!4iye>cRMM#FdKcvHzM*85Darf(7;#?s9D#zQoubU zLBq4+*DkK1+vi!FAL>&-S%~z;{;sc5)X+I)OiQ0(RRkPwkZx2qHE`AoUN)^%zoT4 zTwz{|=D5Y0vPv@@T1iFJJfh-nLf?qWUvt`*pWICo;`IH`;;Hn_(~@~Thb(>ml9#5~ zbdjS7@u<6fUo$J!SIiaA6R~0`;!YHcgM0GTb@R#^gOf_*|Q z?R090RsXWrr9pQuP3Q%CVkx`zbig7%Gf}n?EtAEnUbgt!SOJmTLfbHT+d=SB9iC$= zIE#^;X^Cq}v-YK?>!OCkq&B2^)7-UkB(OJt*M9)AH{*n1xb$vht6NcqCq)6xdhf}g zp^n2_(m2Y`oxfFrlR;&VYbIW>=x;9@!nAB?a?cGRYJDA_vDL&vmwUdkFfM70)?=Ud zjsyv-=WXgs~A-`;wTc|r4U8V!* zB27HZAHqeentjerJ2(NuXfj2zYW>fJrc0=AZzt(CVBepnUj}&-a1>;eWJY8NelXs!D+xPVjI_JS$dzPqQ}$@x08mjn+nfft>x5_?wVtrtgYfCw?Zms;a99obE?9x znLW~=~v#Eb1x`bY`!S8_+yxch^E44I<7T#ZUxA5RTxn?fKi;l;Z zMNB$9&@KM5*^xN?)&vcZt_wFYVu`GwRi?Z_5-mUmSH(akiLp0Bkad>lwGqJ{lwV0M>vJRg)DQ)K-eNU3 z2i=^3mu~?Cq_+iqvZVLYDne~O8GEFlS2$?Hu8XW8Ik}+@$VdFlG1Jf>Bs%o5qr>^+ z?jVxbsi4$Li;u+t)4mQT*LNEpVB9r>b^e;qg9QcH7a3>JP=h?3+8NiqL`GCR2g!uV zszEtIpA5^UG~iw+NNpCgRA8wW1&hw)BH*FrY+i*3E-ebLj;Arj#UDn)tFO-Z0_NXc zV03QUKmejYk_+A!7!WA7Tvl4^fR#%Sm0>pH@%DkgK8lh}nKJkAP9-RNLQM1e#I z7uHCm`uwP>*%Q&0zk}&v6NKZ8LO8*B&+a`6(%~tUBHa7VkfNl>_X=q5k;3&09qKLC zXUICzVc-`GZr=%)&1v$VK>a!H`v!I=-`2ez(b+xT2wo^T0t57YAMA|d<n3-2RkX)_6}g8_h~IyqS4z2!Oy#@%Z7F@XXPN{c^;4HXP4 zG|8^l>9r4`AI1HU%)GS;G#B_kWbz5+8i1A;R8S??LYcSCbTKtw7-U`Z^>~R9!H1mv zQvjwhhjD==1Wz#yDi9&0Z)bN}(D|aw;B~#_Z7;q&|Hu%68QhjqDz$-XVosYXy&TO? zqZ<<+M!LMLu9_XGBG(c!(E!#dKAEV)pXqf?58~PFJ(V@$jprY6m(?ou#nVs5NPXJ! z#`8>m_wCkk7t3!F>gCH}ks~=Y*l^ACQ|r6BpAUBDo>V;t*5j9`ep6jD2+a8Iu-|m& z@l|Rf11BB_2Wh9sr3|ayYkka+O1qQ^@D`krCYpzppzHUzzu6i!d5I;;jqO)N6z8w77uyd_a(0{sYhPzQeU4~_kHo=XA>&hb;xdEl+2RQntI0L z-kRzW`f48!;3~WxN~H5WTNx1FVM76};vKm`!k4%6Z0?O#({GzgxI{W5qs2|batg|x z%sFi?$Ak5xariEH-aK(N?OmS^@kI`yqFLekp#ebL$OF38LKn!Y_@rxCypq8bKE`|O zhf9fLqnJR$h$_)910;sZd;BV}5sND7(OFdqqSSm^f{Q?M_{7*JSrh9_+6~=V?a=bu z*w}SblP@6H2ZhC8_XobddA8}FlU?eh@6O80Mk;Z@?#PXMkgL!@9M)d zT{dBx93=z&!voL9-QTHJ`ejZ+w}*`u7xk11*zAj3-<+#bB`j{)10E$QxANgqRJF(% z_*B*{fGR`%&v)yqc~S+v+&&-jfY=Z1YT6uDu(;E|utk+er_pL^O;^HsW^@yp zk-|pUq=vR{0`9eGPt7t?&dl^nn#xQw!U#*O=+=r5&qUZ~^weF*NowA$LYTFw|2D5IAQ#h#{}e4;}gHB(w58u_+bIexkF>v;Oh>Wr`tshw=eOk zP2IKN-pu0z9^+T_Y}$Bxn%sMgx+1qCq;w;$b+V7etnPp9cM zfB!))SgaPp7VqyTlP;|8yJHKNvT+{j-!p?nr$4n+{-hWJt?Z<}A$@Ya;oB95l{c>w z4~N^&ZcWyf_DO@R+I`%sJv+~-B>0haKP32wAVhAVNE0>}Fs#=2(GQNVh^0`IFHq(# zQyqd_#VW^t9nZ^55y-nTMF#NG4zI?}8?Xyo)vW$Zqi6Qx2<6R&uk6PlIW{X_fw@mSI zk@H-i5IDJ!w_;o|(`wJkD_7egOV(pS8QRlwW{s|E@0vU9y`6{oge|jCHoR}Wq?LLG z&7jk+afgojC*xNAUA&L7@5;jcMJPZ3euP-upSvFUrDCCdEvAiJgk0TPS?XniB9FoQ4zQ|6 zO+{4hN+22tnO7kvly4gQ;vb$;We+x{@B1wib;S%D5_+^d-_*NK@aBYEf9yyTA6j+MQR;;?InEfw$J z5b4tzt$Nk$N#QaY`i$WBH&~BzB@SLU!slS5zHGiuiQQomj<*WEOPIr1>kunSv?EhG zzu^WwO)sPT(T*S4TxJTVDl=>H$ApI|7_E;asvMhxv6|EQ0ZysICv;o?u7}jvnRwzL z^!WHaz`yuyU+*M;Dztmgn|U^F*{3G3!d#{Cx7+?Ps)ewFW16+N>C57!XR3pQ@9W&C z6dreXB)3>zwyp@ zh&Vm?^1fvREW`Zi_i5i>SxZJ|`=l1ILz4+r{*q^>;E;baE(i|Cb-1>!OZFcS?~Mp| zH680*jlID5u->C0jxJ!I_XG{>hZwNaakK>?bA$R0URN1vZR+v$HwP_ntSZyOudS5Mp{VVul60NpXau_8Q zpH$UV!^+0z6aLShk0r(hLCyphd zMJKjhy8q!~A9}Ig8&BTG-=aUtejprQ7@3e|hmV$mRWI`soQ&Sc381N^O|}{3On3X@ z^gRc_q!QjM9?=S^Ao!jkg%mMWbIRR^bx479q|ijJo1`tjFx(Sk9E6AO%UR@@v1^4r zJmE{$o!%@j(EnB^}_V7xVw5cW=cW}Ax^dTv* z=^zB!&ke;m1+Sc-q5jhF=I5>rELDycoNH}!?zdN6NVZCS(E1Ix=HYYiUSK>SogdmA zDp5WJWOn6qfv20v$o@LtKT?Hc_{AaL)c|^?f|#Q-GebT=;2Wo;?41GZ`k58EbdXw_+akvl3&2 zhi-HUsC99Cpcibz=#*A@vi4=6t!CE<2vYg5R!{VCn>spspP1-DnxI$ot6L<n~G^ysR=wFi;fU*?zl?Npx=-0xac7MyNA9eq07h!$}84pj&{ z1aIPj@jEqo`z*l~S-4t}ceKiy8+LI35V6Y(B7UXC3V{uOUCX>J%ty)D@f4B zgl*#XLp6jxYl2lmg6uG)(4ElrXeV&iY`}ghrgpoIqi%9#n@At-=E+sL)9+h~Wb08` zKkxx{!h%dssaA<2G(kt4XWt?$j2#J+r;k@UgYN??@VOkrw|uf$v1*NL(7WN_}e{0mCqg)U1?wX7MLdx?dOn!j8=nRYc`s@?{^8&AQts|c}|$u z0}7)029|b3tw4;}MvRK;1szjZyzfE!8S3}_am2(S!r(Ga_YVns%?C7nUMZ%cxYR-d z$sRbZ?DxJC_isu%#lR#+wl~&aRI=UC2#0G8}c|n`b+swFGfXrK;uZ0HrO)9h(`4H z?s0MrAIMpBOx%GGeiwy-*FESbrW49;n0w|QPC2d*H!Su6pLMFsrCCsZd~>$sH%c`L z(W9y0*>-F)$8@te^AK|MN2UqF$}NJL1HreJjTCh?7BSCKuGeN)rHmZ72qeSbMqvd ze)sZlu+grAmC@vc?i^=CAa8?(QX-GvhWNyW>3!IA?nlAL+^O54RV~bWD=)xSy}so` zFpY!2v#GuL>x?8MKFvb@d$RpYoBw>}$_h#)bgF|i+%@AUtJD$V87*=fmbqmFacCuS zr}x~#XBDS49gZ+qnW9tuT*h^L!MdI}ulT?BNMQ%gOmtWJ@6-CVg;mxK<5RN1hXf(W zru%gp^WDA7emuJ((C+{6S=Y z*|IH#?@vU0`h)Z0V!IRJ=I4Zx^4t4O%3Uz-^TKhm#hqonE#neOMvY%qZSy`i*V2QL z1tw5XpsI2k#s!OveR3s<4~*l#t=Yt22(V#>`N%D(l=MJlh%AV>U?EoK$dVlk&60U*#7Gm4-sj);?8(i1u#e1?P6< zd=W(7oqEsp3a-7q%waK$`l>BIP2#kI( zi}G{-b$ZmH3I=CmipoOxi01jk{4b7`S$W{t%t`bwh&K!~3HRo0gY=YRAIhiOay6TO z-y9J?u1QHQ@!sX9I4t@gc=zevbV;mV|}ri^5v;L zW$Y-joT2ZEGvR%&D`%lCBuUB~4Bq~Nj=~CX>Ue7i?o)o9PqHPvjoFrJD225@dGu$Z zxo1B%3$!cyvFISi+IpC-H2)mzAli4W@SRw(e@W2o4GlyO!iM-PtcO#~ACB|v^|Ufz zXfS@!weAj*k@X)-%F1$d2zIVQhpb{R9iW#5bLxOj zdb2@_oxb;akjH8b4*LrepU?s5OSrF%*;MT3Bl>5&fOn&r%?d>$$TqM|w^GI*NIW)c zM{cypnW621u&YcutFj1}6IVbs2&#Z6{LoCj!5puQ(heBF`)J{7P||_Jp~MPGzc)+M zAo6*cps_WcGVG?1RFeoDMgX|4FP$Hbgy~q_;mErF@{N2S|~; z5&RfGxRO)8`-KQV3TB(#qWd(eY4jC>Gr|(SaviB{MBBPVE<%u^<6*7chhmz9yZ<8a zMu-#^$#HGY$%((z`7nQerj>#bHgBe-q3{?)S#ket> z7{k*=l__u|7TRumpt>Q*t>aRA(KSWT!cdt%9U?A%%>&FpnxMl@xMo(h$v7v%elQ_E>%2^Dvet-y zo_ebrR=iI?`|+x|#RdRA2e(IZ+IL>BU#GhvMaQ9B@6M|A-qzYXE^YGuNNIcPAycGz zy}t4SqIJsfdU2a*Watb%-(tiY&&t*w%%whKtnDalRWS~Vb-Wy3`Ao->;mQ-ks;o2& zU)ujv*a$ToxR{G~MijsB(*kr!I(z#hI{=fsA*&q^5 ztQ=I76tz@L&aWKQ7QO=uMh%J+T`{y4LAt;A%yXyMXb0wuakq9Y2I=upIc4)q{q)pV z6my+_zpQRFH3fw3`A(#&o0Y(z62Or%f6he9PzD)B|Gjj!iNe|HhQ@Q=VQg6Hcn^Lv zmb8ZTCQ44Q*8aR0_lGUbFkaqh2K$U%roYvXq_foE={v@g!AfRY-oh2xZQo?IE}sEG z7x)pU9_N0UDrZ?Gb?_MHdoB7L?EszotKBSqfm1@-e<)O| zl8;o9V{oy9d8}Kxlss|M%cLgMplJdI?%B{4+nZNU&OQ=xQjLIkc|;BqNy&;?uR*m- zD&Gs7jUHVrWmNBA`LtxeA@Obv6Z;zO4z14lejzV}DYoTCm$Haj7ZIT@JD^i>L2G8k zOsDG1n5J8EgVA-4i!;d-Yo$=QHxH-^ZD$kLtL4<;!YK^97J_j6uBPGhcr-a*!dwAB8?(TBdBEqc57Hw)*;7!IEFJ5M=Yg*#ij%6oB(u@ddl0( zFOFS(!ZgM2$zIN{CIoPM)Y>O^Gp7K^jR4x;Kd+>cg zZ4At)gNum~(>5AOomplPXjRAFP2FiSj<6;}7Mz&C@Td5_&} zj<>S(C^&hg}$q-^EQMHn>vX{b2645<*bN`BzA2jKE^E{ilD^nf&&1|Xj3tQN`?@rVZalBMr7~=fO}{J4|%vKs~hx; zI;8j)(KwXN#KKU#=5yY6j#tmmUJ$Bw< zm7eMQS=lN#{_t^CJK}9$BCmja8U0>f+)pGAJADgStlUFBHvHQg6glPMxoVzhkiJYK zX3_4M5f;kxnt~jT97AAq6{l9nR3gAf`XR-Um%KVECT*83g&Uk1s@ncZ;ibGO?t@wd zx4u{>Dx1+7ufoMNmJBp$d-a9Gg~74On}>CTQM%L`KlGrIQN)#2wNfU_J}T;b3x33W zohxPv;nRJuuqwa3VW4fJiKbqZQ(@@Ro=r4_h@u=S(5z~~v9tQp6 zM#f>cdcX^yVTQDngsQU&tsi^NHti=uXsPautf|nv7F*1t0qgF!joqqlE zk@Qu^dnwUas2@+~$GC5=g|DkF2CfIUa_KsqFyzzTYkYRDnrI6_8Ap6!nw&PwFTZ`s z!-5}2mtLO>F$`LnxS!|t+$%rNt<-*`$txgyySZo~p=7rBdkLHS6NdjipZv0Rj_t5x0l z{Py626`gl}TRD)24oisvn@gyp*#~2rOUEU4l=NE61WQiH%r#Bm@)z}Lau9?VG^>`R zJ*5ggIgfE%CD_4VtQeG8D@RqdJr73H0iE?8O}kcouGq?fZ>;BT=zypdx3H{83Y}`^z?aY0 z68cjH%i>jE=%UJS3jeG?v~4hH;Hrlg>en*#J$*y?jv;$NU3EB9nCc7|n$i=8|s}r_-&_elE0~lpJ+dB+M4I zWwu_iR{q@?>1GKIvPL{BM!!RGTYP4VmY#8YIrQYcn-_?U1xVx0R_hmsVD$xr4`D51 zXTHC2i|wODpuPvb&Dzp;bdcY^9w33l?C1I>Neqv3`wYJ)B89L1)1(j1^7+F2978kyVp$w4 zxvQ@5Wp_F?f}$M1GMfBk@rmbM%Hv8zZ)kP>hT)T10%`fGHd3KmfzDBk?M>Ji7az@6 zoS``$#8zJ{2>{?bvYPSl>A~vv^knl^j!`aKsLAe}7C8m*4(_)zm8xqbe1H6GwmKQr z2``#E0Swbl&)USF%#~XI9RhX@gB&mVf_=Qu{ol9=>%}(Mm~(-92FKx$^37EDV+0yp z8$Do#0(2GDhh`q1(@zvY?PO}Z~ zdD_g%p6r9!5BM6JCf!KJuF0Ke$CcfJJ>BUF=Oj1b2;vV$YjcmW=V7Am6D*A4aXx8-ZS`AsGGyj+(((4~{?oRX zairtFN~4b!%QpVe?>Sql$V&Te1rZq-2rVyMy=^gyuK(@^50Fbt2=QNrbBFjWTQj8; zBg*A&>>XPsyl)+P{`OHAy#61CvXM??e40$lomJ3jzij_zYnjXVZpbU@7yhjVubIU` z$AWLj+*>Owq}r4-`3H_b+x-hmM%qhVH}UPN`b%B&?@RqXbl~f(ttLi?r+bP|sVoE! zc4^|L4^Od$YssTxKbKW1Yq;;l(U>^ios^6Pix4zY<-PpzlX#KpIFpbAa+(y2d` zp-8#w?6;jkt2(z2sgW6=Q3Hl!fRvg`{QZc=+ymn5#;UY$)~S&q0aejbs-0mb?Z7A*z-W--YaI+0s7w z`4--Km5M~9slq-k0pTu^QR0gFwj*+h%uZ;i1z#Oi~qdKh1yUUlo^4inC2~5 z1Khy_DOpsH=9?ppAHRrF<#AUZqmt=xHhBIsmc-nKt${x1r6Q7MtoFPAj}I6xeSb{) z3joq(>|r*KmCBl-nuf%DTGUEHJv<@jUr%@dygEA>>jWNf?uX-_lJi&q=tQ zp-P-f;TnJ|=5Pa^j-9cW2ovV6H>G>7H2>u1TAEWF_5$PlnGA^Nr*>75 zUN$$Q{I(wi7JFP|^-l6St101LZfnNiR62Cle=-Qohc+R=a;h+O9)nd!2@pc!jJfov zfGF)u2~0jgiT)}t?)>Y_QK~yEF>msBo9{nj#aJha9SgBR|BYyYq04RsPo?{nho`HD zBiP6lk#A@AGI02K!WUODzt!C>Tx~d}e4FB*oC{b(Pq7r(A~6W`%!yAyb$EMM6F?`H z4u4$cwV00v6|`npp?C%{ecj(!d4pTIiqyg%Y}JkxTY>2BKb+Km7{&3f4+t0Jl7EFP zR#(B0WU(B$YBH0Gg&bic#VG-HzcQ=`o!VKqhzp(~Gj8carEH0M53={=Q5}7`o?NE^ z*?e4No!m_#pBp?v;rm>U50tjc!$Q~^95Uwe&gqbKBW(6q)SF1C*d~a3S55$;guJ|V zl=dhQsUaP@G#+pB7O6Blx||L^FcfQeqiO^S0?z>Hf<|h8BVn))o5q|drRaYD)aisY3mmZOIGN{U{<5Po-18PAPoc#=>E$7t{MqIgkZ$#w>{{jthMwq=+#;zHHu=&Kdm z!|QuWCw~D2Jy0so2{nxWmwxl~F8hsXi*E!18#cNOsV1>|LUEDU+Qo>ep~mU`oB76H z(c%S@w-9lF<&5)jy#x&1lFRkY`DX$`zYuqwcX6@gVrrk&8E zd3*NNG{Ab8o*Zt09VqmJu(gFaG-l02%CRrOn(zKX*xxVvzFwhFmFX%>2ZCD@y|qtj zLyB$ecrZZL&kwMnKgKH`v-f+MKUtT=`X5UaZoX_FK&;bCl}Xc1hDb%_aut>Get7Ku z+?6z_^FSn#_eU|}6I-(MLaibl(s%IK?WIO@U`oRL3qKXhn3hTBrwQS)Wds9L+F$W( z=`X59aA1qw=Nbi-RNu-6eAq-ebqzj54 zIINxXUdv@0qUOSrt4~OxqL`sU^Q#5MKZo5c`m{(@2Xhg6=yiAv zb-$#Pi;u3ykwVu-2f`Z*r0Nc5L&VwavOCq5*!CcnCR-<5>8&vKzO(RpJw5za`pC!+ z-DDHi?GQ1;rgq1%@kWN^qp-=BMbrzg@Pa{eEqfiA}ZHlr!* z(h5~hS=JzFBImi-!hS4{lm&+EBQg=bqmrw5(@G&v_-=H`51*Rbjn!Xnl9J5YGS(UT z)BDQ@V7D^Sq9RbhJ(|73@SjcDi*pU4?H3>af2Enw%xbVmEDV?b$G$>gtk>MFNskcUVSb>n)aE_Op-*^CO32~TjW^N)<`sMm>^Mb)qjz;1UiaQDLH7$G zBDfmJ@M)vjl1SX`~&pp8JVU2C?2)8vFUTZLql%dqMCgsU2u%Y<3M~$H7aP*09y2#BWDbvG^ z0@zarsET+nn6pTRTo8bKZd&G(mf~_c!C_9$kqG$Y~(7NPKbn+k?01eGy!;f zwUuvtbrt-v;xELHYm=sr2zbJLL(B}kHuAS}ol(tX3>WbP>TzUR2m<<-PfVE0eV?pwz z=Q3jUE_IDwj)p8^q4r=>p9#iZV?mQ&zfIWK~F2!!HMj2 zeH)=7A6zEPjph(aWZaX$Bjh$n?E1J~Y5skP4#9RkYD@y1i<)ek?`fWK)Eq>5llZ@8 zesp51a2FnCyDo0}6vp9^+MJVwvXPF{OCpewM2@&F`Z!V#@4ZG_$Ze+A&?yRJ8UoVL*WzM%uf9&1vyVSeJ4xb7GG~ANAsv57Mi+wf zR3gTBS-%Z2n1KLr-xGUoN?xj_u0W)>{r1p-(AK`omjCOvM zqfMOx4_0k1I#q|TO~t5Zx5lL)fc5vuIHZ1K&c6M-t=1D9KQplv5jQwqsnE8dFWCwE zma`Y^sfZ2>NrmYAT7nm>!tFy~maGJimEKUxcyFCIQg54 zuU^mZ(!-ds-Byo(ewpi-X$yN+c}gHg0cRa2ZfC#gAyCQoV-o|j+i1~}MQJ!p2Jh(+ z6rkA{IpS#PhO`cBHjtq~dHA3M@+cZT3%F#hySR#HqY zrrM<|#C>f`&vJqz2$>!kp8f$_7&|P0bS!HK!WaQ{9~t{+WR@j5OVB7#k?6{1=3xH! z`aMs)Tp)Zib~(hxi>lSld9Wwix~u{^O&sb!V@z<6W6jyAtpD!Duux`D`|5=bu$p0y zdU4Bby~h#imkEK2A0|bX?{oPwDHqr2CPF0BF?&3Cob3LjydU)w@2D3ZbdV#Wy$u*g;y z6cr*?03B8IP63BbA{z7=X|GA7L+>Wfn@fH5xojJ+GRH^+@IG6ZYO^8aUGY?s1zU#~ zy&{ai5WA;lRhtc}!p&9hyG}Z9APhHJbr-KJv9bLL?qS>s_~v45N0I)s3i5Rze$@)6kgU@Io6*YAhF&9JE<+V6NS=>a=b1L&5B zB&#Z{0)C7ff_kua_Q#oT+o=^ZuY_0l)nHt*=^#Mv?!y{kxZX(yDf-)h-c2+li^>R; z|GX%z;HZ&#dJ_VL{!LDpx2Q+6-jXZ?^f!e;sC<<=0CJ;Kpv^Z>Sy2=`ZWNYCM1zMm irV@?8{;y2UHl8Eql@BjcHN=u2U003AF0Dwclf`eYk8`wAoJwP~$ zNUOoZ!mey7Zi1G$PU4zQs#2Dq{Tj| zx&1uJ@KnQJXgl|n%8A8+BZZTOB_+ZN1G;cl8lx}6yKMgO^lL4+WOC`B+Hdcz=Kh$q zp4rtsFy^3d;*qztna*S{aR1pT?VVhtGcP+ z7Fz)is5W{0fq6^^N6M0OI=`L_sARprCNRM>8Qm3b|kzTZu5I~`(% zI-k*RW-~|)Wev>q=lVYXVN?uf;WeMix3XrYlxaOLLCO!e+V!@h1OTJk0uR5eEerN-%Sm`+P&jbJ#OF=(PCeb@UbG=y~pn?9=9& ztls$|MDX(OchWoGBfJj~Kv2|pNrBaPn4FFjUvyL83BL?n*o&`Dd@_&2o>EpD^1^yD zxx$a{oZ14SL(IXyQLfvU*YAoMl?vPTz?L-QT!`J6+IL+=y8t?m1C;zEw zDcb@3I98i&esEtL?q%j^2<)?{Qy}Ux&XiwQkw+PpLgYFKU{!6^V19dduByR?Y#>GAe&LsjPKrC?zL*=$_|zC zv>j)KDvT2HQ$UfA`rGZJ@DuWnB9ku#>5zb7Xuzk z$L|B;l?91dgcgqPzyT!*-y0H1$_bONbUm{F^xT_>h5O@D@V^`W_|>K{c-7J zMaH$nbAks4`28IPfoJTzkrn{5o_qP9qlH%&8Ild5#+wc;VBDr<;Cv@f*cA!>Tt7hY zh7*O_0031dV2ChQ4Tj}s0>OYh;07>Ugn4*hGUc%&V{cAT`wQxV3saqoRx+cs?6iHt zW6>3?$ehrUQKLYe_ED5&Kx^H^Z!zGhI09&P#Da}Gg?d#J&;Zo{Ojcfjb@zElfZrm| zY1stQuTUSGHW$8sVK+U+j;-AV-bI=cJd_!stKBeHU-b%yV{-S}6(&^+&G&KV{knJH z`WzbE{%fUffVgMsAq#w4s9~i$#ucI{62MP>a7PN;`a%?Q zL*SjTgJZY^(_l>eolgoTXCYZ|evXNGegU&$$sbJK6F*9?!UN0M9VHAu+_JvR-$)9p zdF;U8ws#||G#NaGim5MtjxNai)u8PtELz$vul2ZE_4_58-&a*^$$*J>5hDi#5;`QD z5YfdE2BQLS(RhYIdw!o7tUlR~C^xOEf|FdQFNRhu;?L`cPe+8CCb9_|OteeN+Ka2J zjz*WS!X!4Z<*5XfZ+F5JIuXdq3GPSqDOQ}lJ?_G6=smcZrP{+C>H@oDi`cMRXyPU( zS7GzAGY5J}g$aGLj5<^!5W`aTSrc%_w)c`(v)^7zrLqRjyWj}%ecfrVN4N0#Fznim zZf6>4JeMnYbL`fv@#haIW&hxTU*0;Naz;Z7aqzjQC3R>n`;OwmUR>}O{Z4~zU9&jd zq3M0neu?#7e!0zjb4e;>rY(6eRT(UqO%?*5cZpdmnD{M_oMsvw zg*7YsG~+W6J=|?ZS0$t=px-GwhZmmn`k5H?o1Z_H+<*Qo^K{DiNu7*LCh^3SY@Ersx#eFX@)E1? z%q1fXjp5p~ZFp{MfC477@LD2dBD0EUfe?1yQQH<-V$8l~ZJp-B(1>t!SxzEwz^=`! zz9v@HpLYHzrh-w`LWo&V}Z)hLioJjrSuG0eIKu zuL*mG`gLMDo?7Y}QxKHZ!Ls?kB0{ zlpw*YxK%Fox+`F$1NFfKvv>xFO`5&GnV&l_8}fmJ`!_<9bjd(QMkch3e5hfCg@ib5 zJ7sP;=%@iT5xVG;33i_h)30QY4t#3+>ydGOWMf~WgjvF&F+hUHvgI0r3xPgg<&g{_fz*{ugNlclCFJ&$3VtSIKQiFoO%b6>SaL@CH71 zyi3Qk0Pr<=gX=a*ti$Y8gK8a9X5wicnJ(hxE`P&CRb|e)h0X=;&->GEi4CA0 zVVFm=F7)~;^kcdzc0AeUsA$E~cA-e&zBvvXkw-h!!<5nryL^awn4s-}IGMK;U^zhx zdw16`3U_Mk=@=D|Bq@jDYBNMd{%qSSRL}LA)Z^R$0FY1Z3uv;jOenO(j8nF8;g~2# zj`tlFwGA~u=Ze}@R3QAu2gZI!1i(*U=k~m>)m5k6{TGsZ~`CvNf5i|L8! zUGSoaDx{uM^rshAu2>UGyJ@bDY}XuHiVxPJ=|7@NI*Pco`bz)VL_vzB)9FNr8l5TIP5m0&OJL*<8h9$p^}L(-0P1g%> zT|Os>#{o&b`5!q#u6*4OJG7Z(Ik+DJedJufCba!#2a|NCexoAe!9!j^G=f zREk3TSI?|}F6c#A*8Lb;ln1Cs7HoRvdExWe;%2=Nzxryo5YEI zDj7*k=~Dw+)78JaypDBzV;L^q_D*IU#2VHl$!~X4--nxnOBqs z?|j`3=`C-Xi1n|8ErQi)=4E8-ljp24w1tiybcE8-$W#K=@QoOgNF~o(BBu57j*s2# zSMts8KNvWl(lf1oE>^zKRE%M3E|Y-vqxP=VrM|!A$Iqaz@^6TmKXUF9ntjOp&eKX& zXqUQ0t8QZ0Iq_&JK0f>DAiTalQ#yEvtQW|nC%4BJ(o&qDsTcRusRIIG4=?ojogSI7 zsbE5_Xc*|822ScAg9ylze>ib^+j}n@poBsBu|?-|PTN{9x>7$M6fiqwmmP&+0>kq$ z(}rnr2)>bzY%27)ty3|bw#cCIRex_lXPu|2u|JJqc2oEz9o$a zarg8F<*z8N=~NZSXiZu)^lpDInpolIt-(;vT_(v_@G|B(gaSIC#5z{v^kg3t$@)Zc zxw$$F!{-u-ldc6%^XRV=-Eltt!FB5~Z(~V41^(yLWWax%P?uCiN>y@vX$-W)424xC z%--?aY!vV_;jqjLMWgzueX^h15HMhkfuzP9aKWGg#rs+rR3dmM`Pxl~7$!OI5~|bP z-XK(eDPt*a@fAFJ@vXFjUA>sXeZN^y!;(CT$e*FwV29ExTbSE7d3FYh*IUJ`N^ z^O|s-Kkf3PDyshgQBkKdMT&t0T-HgF8EqEjf&&R!7_rNxC|&Rz>0<{041NbuKKJuPv3|8eT+*W8DgmxXBq)|ZYoQm$4WQ}vI7sXbqf0Kg#rBi2^+mKIwov~>oZ z*W04q=r|Ai{4%R~b%+=0$^0CTs}-$J1gqehG=$&Sh#$@Z+N1;+fFe@`-zj;KoQ)2G z6(+&3SSAR)L7@l_p>7c>WaDATWD*5tZ$saq(1MBZ`3^27JZw^WLtqTyLU?f_AXbc> zB+s+`!!0saUY}AI8yNTfuGg<%O6K}9=JowhM=HaIY!}JSc~2d~O`f@AAQ5^CoFz$A z5-`a$8F<_q*ccGOhY~oD02VM0Qm&67vVKUTtU0pZdTKQ7hTbwBgPD$J%)sI1#|}9i zQ8){*wh9#JRE}m+D3d@cKA+*w!R>2E_ z5C}Jprca&?F;l(>UOAs#=)RE6YCM%z$aqp>ir=F)Em4mElU@lPJ}Bwo#Fkl&mU34g zRB-*Rf`y)9mCArjvx7!-5egyrFCGJEQMvpk)qI! z!)x`3kf3luNd28+?XDH!P+@!JA@GbyQNj|y;Qj(@xG{$RYGL!H;mDad&!2+|4zOrs zy+&THf=3>60lKv#IzwV(IB|!oUwc{A- z(6yD;Gx2grE{?zL(=d*-^VO`7BAfPsgKroa1CEJ9->clyizvG`fNgF4)*&zehQj)Y z$gPM+n9{PO^VfMnl3d})kRc#NS#6QL z6)p(tT*Lvpq46lTRW`3y=kFLYNAs4Mjp^^#8_4zI06?E`ZRI^avButqy`V;qyxLdb zYikky9^|$Ufj?t3ZyVTt#6K(3pAhz2_hUDl3~AEf7_+8PNIe_yL1u~zjw$YIwoA)( zfNxU^W~gwMUI{Fhw>gguJ`6go(r5lweZ5KR1`1~021^ButezFCv=!$7a!3-ZMm?MJ z3#GXu_uz+VPfoKK!v2B@G0EV}iTyeC-I|@#EHFQ+^D*$HT3EB-yAR3tdcdaHn_3pn zDX~&WYrCK8q0>gT4K%R)63{I$90IPB>`q|*e%x{2_yvN`Ha_&8xTPBJW}b6~8*qLg zpAo}cr{Ze$$f{Q0nq=FXk5zAFT`+XyvSi24_w~Cd>{v=L|C3OO@g=QQr# zE81$wlh9OIatio`9c8{$7bz3I~z_JtlzZ1O^Dn zqu>_2u)|G@&Ai+}5V07k{;&?YcI-wms5Yy4n6{8*&PkaYYZ7G( zmXd>(mS4ZVH^J@QbbO5F&{k+J2vGywO?)n<0}5CC*B(@oToG_n_$*;c^-qQF%eGYV zoiG6?3)V9jac>${@zzEhI_#+e-dR!6=NWTJniam!q5K3m1#^zIQ}g`16)Itr)xV)4 zM|ML@N*YK-d~`-@KHTwCwqyWPt`mWO1cC;)};j4w6Nfgol$|G=b7 z6TcbA;yAHim0!~)DdILJu@=bpLBeNaLyp>l9#t2Uib`%uFlJw7hJ?-&;}x;wDpr`R?%@bd?R4z^ z2*bPzi8_LCEr_iWXN^_~Gclz6FwZY%gEg>SYEOnr*Bg^Plph~Oi`KFaKt^Z6_kMwR zD_2^IoI7epIKNaLR|@%Z{>|sw{(kiK>n6e_7)$1%?S4-_EZ`IckFYV+loPhGO1O0* z@uiV&w-Imsnn+$Ws(jhRHgeO|YK$qRe5pqC zz{9pO7#i3T(AiZx-pl6+Vw;|}vPgZnieJ<#Sf#&jmNk z@UBO%Uxg0qO`cN6AfgG}R~)4_qoE=^styLg89Dbi1557I_;k`lQ$togx_t}Nu`Xu( zi1p@W&@X1XV^cE<2-an@83H9>*JfX2NwEh0x`VF{HHKs^zBmbFn8G(3f~0+Y!uQPk zO%%!F({kOOA*TIcEM>YR<3sOr_typBD|8!W)dG)acH5INYl<^|6UA{Yj7+*8O6}q* zS6-*jLq6^`em7#sd04l-*4^LSt#&o_S?^-peyizUfI<5)Tli}YdCwsh5MfJ{V!$F? zByKRIX7ng9z9|#UpD?98$ep_jkRiqDl0jvNGx7@^DL~8wwNy=tv|WKnJKd6M>?7dF z=o7f;dllug5v|D+>H8)V->SdIl~Ce4%q&~&0E;1HtZqN`E^`3>wtO+Uhu17biZlx` zJ;#@Po^6Xh=%O^ZjFcSaOVa$u?^9$y!%(!I8%nwv+d@5Q_*mM5NMZS2uq4bT4N>&^ zlM1lmwURwugt(hoqufDQY=?Y(5*CQf(#wJ6%!;t4$E5kJXf^Sh*F*p4r`8X^@JLHP zWRV0ai;@7k(pA@ep6$^t-u$89g=4)dIqmhe#wm30Gft3I2RY;iP+=tiVYgPF4U!5w z*Q(`X*f^_7KH*R!A}X%%Drg$*ob|FhZ#+ZuBq9VhRp0v$wf%59A!+;#tI7tOPbJB- zh4&bhWl`f6>6N)xp7jrumllhz^jt3h#q>4my*5zj{g1Q!ZArQYYUK9!A=M5N?pJcHZs>wMJlC4eAOn zfO5^B(>5qa1OUj|cr}6oHK9q8WGxYYvxsLlOc?>z;_C_)lexIgdTQ1B}-3-@{e_9$$*v*OI%(vf79|H^6XswvBR}43 zIJ@KIY(fay&go=a6U!?O!2SY*Y=-(y8)RQ4qYY4Jk6q^JAxVo*txM4DIb$vw%656 z4GD(@Oj0+$`D}Z*eo;s={Ockm$SdO54t{7UAbp2`Y!=zpIUg^b5+3Q?#f8&z+%J#m z*$s&~XFy$kb2+>nN9hdHlY05~)rE0ONZLNQTm8A?CEBHrqUUSCm9I`oIjMw#3g96(&<6}? zF8J0@PAq?*4-=6&HBas2`M2 zO>h4fmzs%so&q|q(_D+6BH6RS)YK??Qmlsqnsu@Kr{rN=@{dGPO#sj|vA3vidEZL{!ll3E zO$GWlbnxE85Vhxg@jkt&ff9S`awzNl>NBSho)~;@0r$(>-u|%si+S~3D?-F`gd>RB zH#oTu;*Tg%`|Cx0ZCr}~tXf8Q-~9YZtwo>d8i9+K3SaIdE&i7XQapYl!2qf8HH2^) z(BI>;+;^cyM<7QUJvl1jOa>d9RM;xpr~TdL>#mR&iCLfw%3b`y`@C-(Uuy=ceB`m9mmf23v-(^eW!Ijpp8Oo`7@xpv|DKt^P@~c-Oo~j zt_YlrOn3Pn01y*LBR##Z?G0jZ>*8|hV0#M^ZV|%5|83rR@tBtHBLLcOE*vj68GP`Z zVj;fw;S1wo-#9HhT2v1_Czdg{YWuf}S&D`bk3Uoy`M8zaqe#N~WxaI@9U}Ow)Qo+# zr#3W_eV4_4G4kWo@h#74lS!8w0v4ux{r)8P;DIxasCJOCGOgOB}1v}mqtkgN{SY^q+Ua#k>rtp9;YBk zyQM)mcf618+4|9nPp+eIW<^2ze4x#HUEM!r{Fy$bJkQioeAIXkc0Rzc6=8F6wl8*b zVNZlHCtG2(T%rVH3&A42HA+Hs9OYac6G_-nb7%BXiA|d{bSP>>c7|j)5nRl%MAja& zzgd^v6&3)dBP=62O3V~mUGr$)qVHi2*p1}bTDKVz2Q5Q;-uu~+Eq`8B%Q+AFE(WZ& zCE-$NI-;F?2(k)3GQd!<^;yn&Xtlq&fbC-5dl!KNo7+m`-HG)z~%~dAExzu z27R;q;?_sjU`zO*O(ZZsb>a+mx zV`kC-xA^er7r&dgf3duE(UBdey>mfX=aF5(ybl$nDWP6#21W%OpFP}!^ zF&Q=8n}-)}&?kB*8rt)r{U#5}#yT!OakE@lCI7kn^4dj*bA{M?uz8xk^XYw6*Y>Ys zo2Gm(OPqJwq1RR;D2woYW>4s9YEzDS7wYq%iNnWrm;8H1npW45V&1TudxV#lQRAW@ zQjyfmNHC0DAKPzW{C~lqHckN0FngEPTwlM1QdEOD#I=4hzPRXZ{NAG!nxiICkUN8PgH+l1|fQnpuX_jPZdDc1cC7$ z+nOLpt!q=PHYv&iXb3Lc&_33|)!m2_+TZY3Tf?i#eJgeq3T$s3m^_H1fg}sGhku36 z{tHx79~La#bFS7Rh`i_^O}O$bnX_~VrekG3q1MqU4dop$P1;6(?oiccru@#@MlF?8m8#(t&Hn$R%H8Wl)Otqd!yfiEw% z@EVquiCx!aJp;6pM{|fP2y85Z3p|XhqMttNN7-pBFlpR((ld4K{t)|g*RwZi8V(dt zBR1&CCoF+-o%MgyOPm%6+Ou`-=|80rBs2;GmlW5x*%iFVbqW*>zYD{$FF_fsQiNw> z{@`U*Ue(K9zV511&x==`v?G80;#c(BOX;JtZ(6oY!@>9$w~FVOuU@nvyl@_2n$RHK zUC$Nkz;|ZD;St6xWih7sf2%II8WBn-MFIKIQz1u129$eYs};v6;tVT7C)QH%0PC~`n__N|Yup$94`dZ^DCjff<=vh0W;!G1E3EL2 ze{><4AAa2`Z{v0=Xp&*`tB)VaOIjXm|AeJ&T>u);L(+dFFPX;?+r-g{$R1x65MzMh zdd0)KRJxs4b=Jw6f)(}{+4>7O)n^uuFDM4>sjN-RuiXtW>byT7Z#;Ys*A}uD=sg-% zb^iS0aCoD5$pOTzbTFH5Ki2ByGU~amEPuWpi?X5_M2Yuzd&gHYPB5dO6^~-GM;C71 z81Yj=arG@ID;klKq_63F7k0hGyieJFeIR>*% zAWLEpR%}H^-)NTOpdx(K)$9(XiedGJoI!yaKX%_R?-MbOSI&%R#OwxB`z`LTj)k4{ z6wcw}xj<&G+hms*0c~ab%7izc0>@#EZOfaERDfB-s5bc|>p|<+=#mZw|J$>0BMF~! z>L{5B&v(MZbiTF?c1651l!EN>pVnKzOulTa6pkBRkztzRm{p^dID2Fh_ zrt4QW{ zu@W!%>S?ljX2m{j`|fMXr{WMemSRDS-sEl}QL@iUuO|I>;c2wGKNT#wVxn<`)$8|w z?+`I6{VpQ@9L$*lxv$V77MRUDK0q>jb3SVZ4#bdmJpYk#l=xq6+gYQ%it(+hkE2C`)vPYfd{2&}gldMR+FXrqFqS!CFRLP4D_V zAs7?r`hnt!r&8ZAl4;9g$Gelsrgi-9OwGv~-QmSHJk(H&UfhKlZ{k^Kh^DaR4lAr(j5&F`<8@95xH;=7T|)&BvGBF<>}_K7|=M@ zoD-Qf3U1Q`Sy#Ez1Ts1`tPPW_PTf%8K6tDqh4H0j%J=k9JzD{vnFX8gGS2@P?`PMe zD5=Hia2*{xzQlLM?+dT^J>M#pYpV?lm^i+e<$?GUX{HRiyqM5mSc{Y4I6QQ|wdFkt z+Ag!Qik&c38!T5;uUt2s^vUGe~t1f-`QpXnBUOhB!z@%r)kc z6_gJf|4HgAsK34t*M_RFb6ny}FHl&$&8TxG?3WyuThHxYMq{-;77}vYQ3qE{3nG2v zM{wS^88NAT>9v}ZVI{F>QF`=pUfh?d-cDXzFpCbj95D`mu{9NeI`yGRj)X)32hnV! zcvltCz}K8f63ijPAnk8~FC>BQn!Aq#|GL<}hAaE?ZEK-I7c zR1HCiEN5mp)1baW1Q~)zCHJvj;l%!iUH(;Q_w&&RF_bui*HI=r@NVpN4E4p=2Uv;4F?!P*e3>sgiuWqrBmTP6009R7fP{1aRjSH=-HPbS3 z^tF$^k^49yeEzL%l}TeCsQiJFwiBq1j-48#JGD+m3#iAvo11{KeD#i&WxjdZertIW zJVRE;);Q^3{G_4A z>|f+=)t6|A=>R*%kQM7RwkY6-q!V0eNUn+**=3W2n)sdt2lGdt8^F1lU4-uXaFQ#K zd6pHWOVkhM;oO~Qj9HP}?dCc5K4f&hQ=Qy5xQScJRCAT~*@f8iws!ED2;kyl{U8*u z2`O7{9uvP6NxF#{i_${rC~!kkc6%aeqdOKJxAKP;1H(|zs9I5<*&5p+bCW5<;t%?FmovGHcPKY z1YeCI~D?u93AseTgbLAp-<}L~DILFNt38=&1ZgsH%@H1;UbRvnF!o7U%hTUTn?sKK3R4fT}B;R4?|FjKEuNSdHEJtjc z)#p8XtV%LL_K5t}Wl9-r>zn%P;&ssmNBbO{4zid)2F@c!()hIZAOnuXI%PTV0fVT*G!F7nk#_Dl|np z74F+MZxcDVk~|{7@~yZ~S$~T*gJh|pX4#sv8LIQm)usC$n3fi3LRAa)aU3oC)HYfF z90Bb6VsLK-r-H{c1w|1@^u(4m=h$%IaPoQ$Pv8lQpf^?8)avz8Yjf-*UT6;fPklZB zPQW4vagNR3dGp&2!%Y+DDfv6}cq?n^OTUo(pUX*^%p+wq$1g z)CD1Re+kphfGn*qfg~+UW-C8c6VqKB>Q{S3XD%(G8KY7Blq3MTAp#J`63hQg_P0X0 z!|2G}!Q{#H_h^vZ{jxHs59G6mu3(V|c4ll$$$EZ)kB9~ASN1H37jt3cevku;iTo_= zDu3NErG}Xs=-yw@Wr^^mQZF^pkqmdn$_+(<#u-2rG>OMA5N2%q4_wRy41IU+4JBr2g zP~M_2zeN%Jf@~xJ7~JFFky{v|a6IDPuii?H{)fU@zHv~i#NOthE2x79hm!p;a;bK;%2b3d)k&vHbJr<6-&4PA> z-e&p0W27%Wr8JpcYtAgKlascZ=A3n9K#_Nx+vX>C{1w`u$cE%LK-dB4ZjbX-VyE)w_d!hb_vDI3zNS)P7oxQlqt-W|~P(_$~wjL}v^G z?6w{wmRS!(DRXbg;}%rOIzc&)e@+2-l`YJRUUoHh$(%Fp`c4ku1$;MqN`I`R1qbwU zzZC$nL3)7GPmLwEro<{xWx_ckv4^txOLm7rj_zO6P9jPa~<#9UNr8KL_ z@K*uFH(I7s+qmDFozt*Be|9BLsloi1v9C!9(hd;0jG`Q!>Ma!#>?4=XOVx4IELeCI zlo^C8H(2e9|EXJkdu(An^2t;7vRf&}CWi96$VKnS{+who3=3 z`zxf@O?TQ&fzEo#C=#&WZ(L2TN11L?P@TNbR@7Eah$yL?6w`l$vi-*im>f=iQa|Cy zD4vJSVu88wr2U7`;$WEJUytb5Lt4=>j=}vcZytLot%X}>!+Joi*+U@GdS)DKc!)*~ zDExw@w_j{~Q7+jSfb_rbwr)#HL03NwTDcsf6A=JZbc3sy7QEEI^XNL7ihSGwHm_#b zH){fR77FpN@0U}xFRozp{E9Gf5abr6rTl9lb1KlSuF<6%fhcC~ z?ALXK72gXopKusUov{ohPiPfk0!{OF*snkbdSw#Ro?N8jOr-^+q(}Wt+_VWV8wk{G zl-7+%Os&Y$D*F%9Pt(vPwW~fAn~EsQ{;KS;H4=j!>xGH`Tfa=tG~n8&lI9{qZQ(L5 z$ZnM}A$c8hbUzgnusBgx#QQe88vx$M@MHvqr`43gseW0RGo z1|7X|5XYe}`I27gZ-F)H0AL8DgWN4|!BUpRL_#fJ0DA)K@z=BcpEnTotRW7^zg11F zuCQB!lQn;peKW;zNoBA`4+TNj|0HG(MGY=-C~y5w!e#iG#`cK>nI%EAjh*|co%?i< zLhZv*gJo7@hQQXQhOJt$z}Z4P?on^Kw2gWq_v*3$uOnErRK+;v7D*CV*xs~uAdOt? zfi=6`;>G6l`Pt~lAbv@LZaPu5-mk=|^pF7F9P)@8)qq%V?sIT-uuX*~Drn1Jd0Qc= zD?Dy+fBA722Re{}@Fpx}iJca%E#J&D7RGvu$!9{bCr@Y}AF4+*giui36>T2gt;4VB z#fhOX`F1G4UYCz<@qY-9ELHuZb5Uad?0vWeEF|QTvLdgE^s{^oIgXtWI;PE!WlRep z0Kmd>_@hZ~gZq4;(*Gk!qUil6L2|ot3$*|{0!+Bd>^WiV+esZ!Gzt(z)+pgimT&NG0@Qm0xI3nsgvNZ^F=wBAp z5PPxS(q$_p>$Q=0m?vtc4MigSxXEZ=b>fZTPb|p3*~;4OYfB+)f9YR}x2|&H^wJyW zBBr4mmOTg^(6#n1_@SGT3Gc6QGnjO0cX-RC_h%2KH>zI-wbX>G>Cr>iakl}Vj$?O^ z*^>|{reesz)3y$y{bke1j!1lfsl)atvW;!vsX~roL*`$&R4%};aLG{?et?<}+K78a z-}i|eC#&4+ymXJFyX6(<;+eK}UE3J+iR*?vTBXKFKAS@~= zdy{Vb1uE!i_0<;d^ppX(;7s(|`PF?d63Ke>EoVXf)syvnEeSM}AEyReY50zhB$D|+ zK>le$2?s%Bi~qw1zaO8BJ&N%j=~yM)%g_(=UIfT}KKW$(FW7_a?TY6DAVZ9O+Un+T z;IX>KM^R#Y&oPps1?>0IpN}AB1iR?i)}MbgJP?r~kuyL)EtsEtb6f8vM_Ix$4E}0M zMZ&k2vHnbed!IjSsvmf6zIdeNkQD-?z~y^=(Ico_FYy6;M`fVKi`T9sm=r z)2}&S8WeAALEQO=4l=zxv6J zM9(Mo5uf(Ep@(o}qQdp47Gy_DAdBf_0) zueD3W9o6zP@vh95r)U}cEZd2P#L6C-js^t;D>zk8QyhDSLU$p~pJczxq~eJ_cC_9Y zFec~W5xjg7%5Qlm7S)H5A&&m1zXX{=$dc1Bb#?Mo&>>4D0EV!iCts{}`sHdZ=sc>! zRonSElbN>Y-j%a|ZGj+!mt@#LuL#qfIg5+&mX;LIuXWY4uD`#DlsI10y>xQFCCd1= z=<}rcyG>0@nga}}fxex)=b;P%P`vhIGBbXVtu+poLVb{_yYsl;I`+dfJsljEBL3hu z@Tl_U=4Ye@aN$lL-`r~M68v)(panxj@FNpuIDJhm@*j>bKSnUX{Eg>25{Jt2>lY+a zvQazK$~qK@z7fGc@X&wHE`H7Oe7DG0yb?d2M8gi<-OzSj;1VzIKwA9tGcVEDf>KM{ z>g1dG@J6uGdb{iA?8%MGzFkM*(ia$x74^vJy+*kLU2or|5Rv-#9$5peoQck@7sDJ^FfP^V)4mN=Q zFlUdqsp4Sik8U_(t97k<1^rug|9vj`;O8y29@Wy}PQR?{v522Vf#c}b)&lYH@#0}% z{2CJ5oIcf=naWm?clF=Epi!r{+T8wJ88FEqAuTCss@?opvV?=>kzgV|w0hcpDxV-l z`2aNS=louqVW39F|L8x*vD~uC(~K87j74c z=c8gvg40?e>t_VL`FUIdm||gzUyv%`(s*$(K{0L8E_X=h#E&Gx)!DVn5@#Dn#4+^u zb*?H7d+qlFw=?A>ULKbEhLfI~PTX{4-!R-fh$9(R&~Pl_7tnJ1#HA6gSM=>D5{@I} z@G80Ue-#^^kyx$V4YzQ_-l2JU(Aj7&hg_d3T{91#u z^&i(|EaJ4KG<53CD_2c69cpe7;CDSf=J-d!;!kb4F~Tm-`(9V0ovPH^H6k0Al-7{~ zK8^R>fVqr5*WiH|H#)CkR?9uR->=Q7s{kGY;l~Jdi1!ofp64fA;1ArkNlSt?bm$T< zgww@bgLh_cFUYex@IH|tZoPL$G=c!sz5k+2?e?Aiz`RjpHTA<~Y?;?BG2KZbv_Uk- z;^#B?Z`Cd&+4>^YdF3!!<2>S??!MvBqjJ8<+C9zqLu8KS=G|w1`UUUB>b=F=et48R z{gyq=k)*GT&ek{p%00Uk&wTZs1tLYtX6xk~lF&CutN{x8Pf zGAhp~+tU4TcXyWn!5snwcMtCF?(XjH1b3IZ((X%V-%{S?z`5x!;pO0boIY)S) zxOYSvB8=DJ;iw7rNf)4_V$86sI!Nv!XoydkjR4Q^Ly0N0CncagsbS2WmPSDtk3I*q zm(>x3&tmM+^tRvS8jGR?>2hs9;Ugo@5;99|w|adM{nb95Iz1{c$N7T+#0RDTKaZNn zTNl3hAMCtzE_@q@cOU{$>2oy)JM)~NRq#+WXCMF&BvaE;Vwr$SX~;O^lO$0SOIiHg zlt28xZv4YFAPH_KrqzW&kExoRCtL!OZ-WPuBExV!rST zHa;I8TZ3nBGx`3$uSXgK_>lEu=jz2#n#L^k0MOq8hnc!ZIkeml50DXxD(rt~4Dlr= zpahY`_EU4?#n)+US~R#K7xaUcI-vFa2vl6(+9LC&gW(MigX($yGHEjjlH#nkZfdPW zh^mZnlHFu17imKHyv#pJ0Lo}J%aKr>8(m+k=ac$XSpZrhRl5UDV%NJwiy#B zx+dBZ@NULe+O=X_BMQ1Q7koEE!^fE&iX>+ras%hO1j~)+ zc}T<$IRy+`+tuu{MAf!<;T`U99W9g1^rXW zu4-ANw~OX{f*(^kJ}HjqJIu8SaEnWnt*x9U;<$du;?$S7zIR{%o$`bp`1EaJR4B(P zF2~!|%I~g1c?yGpW$9-mYTXj52W_>}U@d;3hF$=GKLCqSAtm)2I64LxbZkq)!T|qy z*j2P73Lx2AQ>)2s6y}iW{i9A{eez}aLIGr8tv`kgQ5&!J*s$?*?4jB}Cbm-S@P{Mf5?epV(VYU#Sk^Ab6 zZr~2Qn=Syo@pxI!V5K&qs>Egp4FC=*Ms4CnVEKZ`mQ+DBKOeLGV6$+5Y z^@`B{dRrKjC(?O;cY@sL6e(l7AZWcsMZ^sH#Y!*_4HPvwYt(&el^9ESs6<*vR3@{Z zxP6Pk0aVrrg7W?1^2Q{dVEG{trg!yZ)|@Q5mVwr26n0A!&CG_zm7uRXDq`}TGV&~SKjLm`R-ZuOhm?{?zZ)T%5oQ+U-?YUy=2 z=Mp-Gu9PRJdWJe8x`ot^33!c$z-#nnWE^5>FH$^r4IWi%;TIOuhe^mhTNXmEQrOH# z^ujkd!v2P7V)A*xpcswT6rFpg-B7i#^&FZzU+Riuuzr5Qg{41={>ygZ$m&ooW_Gm7 zPTjHbeu!%9m>%!==guO2-72q>gGKyIVQR)V{2YdG(72B;4Xz7z(@elTx;gT3R1yw$mQ9{T24L z`R5>BG%Bi+bv()lm^V5=xTJWli^W8mPPi;=1tT2PPxQ09Ib5`|7lj`V*4?r*>#Fs` zz!(cBxCOs5DF7nregFH4(7t8vBB*?G?%OywAeFoo#}%PdNv*TN!;qGUnDtF>snmJp zbx4+o(~Hn{;nM8u0GaZ1S)M9p_eA!12HI784qL>5j0h^cctX7s!uct*Vq|bi=Oe+n z&_K#8L8j`j2!ji_4-UlGp&InVjTDz`pG!#lx5FlciY3sN?i1gm26N!O@S|NovSE;v zwxV@HQUPdTzh3L|68f2ekCjKrFvE}3K2KbI#Ec5ZC+{Uo0DjsnJ**^ayfx>TF)r_8 z)zoM#w1A*7N3HJro~FGY<*n_8i zmvjXNBMJTd8;Ilpsr=WcJ>>@rG-i+B$p7`ZaDmbM&BZVkfPnk^_oaW$+F2kNf76s$ zD$_I_TaY*1&k=aaYFv=$%1XXgYd!XIe^{DBX1i;-=OLC9JPk`a>@O_@kZ9AE3U8do$wMA4$Dp*)*3mHbU66+!R zhG)*k>&r~3%Vue{YPcQyiG8aM*BMSk>@M<&5mEAb6AN7Er-_eQ*BCUwkC3qIad-5{ zz%xt@wp0%o$%jrkTsFQ4c6tK*`Yx?!=l;5HtffjtG!4Q_X9=^2S$$P zMyYF8i?(GQH4*Q3^Utzz>vgSX5>f7ZYHu!ml_XjPT?LY6gicMK>RM%HtFU55@d8HgIi;0sX!WjChsI|2MY?Xq7?ZeIOOj)^+h!v^kV0(m)od=)Kmx8>4;WzX$HsD1ENFtZ zkfJ`46+h*1+}?79I!8;D%Rk+X%>&WlAhc^95poJa{8~!%=N=2MpV(eCt3lLeM!r{8 zRezbh&3!$2OVBXJL3l=GPNSc1wYBt-;akRh1X@{$z?nv7P8}#004!tmtP{d>SX!dm zc##T-Kw9c02*_f zU8;SvZwR~#z!b#ldXHq+z2Iu(aEVOgYbYV#mz!Ju+hC5W)n(qt6;6d0;b@hUhOV1$6}lEb4Y<&dNAtwh{EOa`-J{JI-NhG(feTB z5)wcFfgBfk_|0hZKyV$?Y%VnDCy<IUkVMP?LFX%j}BBd;1szS=< zwhYCazK&-{=zt)PH{SJcZQ7Pva`$!k7Wgqi_z8Fs5gS+xW=~K+jLNdIGMP(!Bgg z8bebitpOi!McU|5xgaF$uLt76s(aCGQG(e)e@!fKIJ5CD*fJt(C?6Wh$bJX%yGFcU zaO6fvTCbnXaR<0@1Ui1TNtgB+5F$+y00VY(ipp;M9S%l359Nw|cLKMgP!~mtRkI4} zTY+{SjueVgdy7T%QnKE6cB99(iJt+<@mF@#q;zzZyPk5x0D%q#7Zl9R3h95`1_e4j zg97-roz-cqV_^YEby-V9Rp9#~GmlZrXncx5dL;@F(4=2tnmez?xj+V(EhX`*FdV%d zt+n4)n-z&iB4r?;=JSh#_z5T$fX|}90H`8k$F}}H5c$Y*d+^x<2L(OO?Eq0NQ5C1& zzURIlf_#4Ry-*~&YNVKR$Ykb!hyry=yrq>M?3|C}TqH~BZ7G%~QV~sdB;lM}oYYG$OwQru{NsAU$}$_e`1#n+cdHzQ2AEACA)2_2Xkxv zy?HHf9Fb-AcG?P^2RG)+-iznLjO9bVMX-RDx_s}Ls5G_8hN4n4Y@j^n zJkR`Vfa@sKUkA$)n8sh)F$;w4O6dPxWBju)2}yP!Slnk@p^G(svV|_%iGjTL$QGyA z77H|TP4(8@bn3u4cmT$mElzuKJ0G3tHLQ@7rnw-Vf5O=;aWGj=DzVl08v*bzO%| z(N-07xR$re=2f0z696XDO5w=Qq0zRl`nM?w>|lAx+k%uQKocSV{?S#z5d0=MXpx6V zW52GZ#%sUe%}8(=t!nL!kDckhiq}a^3B8lN@F_w?RBw2Rh*84^EJd_TNWyRj=)U#~PZF*opQ`6w)S43YAdi-tp zZHl&BwlFK9oKNQ0$vL-ok4azJe7*)@QUIXi{_{K|S9#Lu!~5(f!eaGO6J~rayhuKP zIO+Y#H%WI|_T#zm77eS$C7h(EdEIOBv&fX6hwJ6gaqh-pl3*e2*=mLb3?Q$k^-i>U zLp2?9{uz;!RFi=ql20#JO8YG8ZLeRvMvTj2%^$x3E2vgmB2%_|Yv{8nCUh+uj=zf9 zq@^ja>P_`Z$vw2354%6rlpo)aC_A6IeQH`XQCrP9e!Cgvl>K@QL&=14ilpdTx%#7q z^^VJ$ao1jYYJ-(FuG)5|9f}II`Ws>*LhUfpBOw$(X7n_qbq=xna3!!T>4RSKE>}hp zZJQrhF}09$tSoQ}2bU`d5^$OEoIv^gL>TC{*5DoZ(u&f=He&yJWXpFe19~SLz;(^W7{JL#DpVrR#pUHp~;Z8Q*f{rV$cq z1z7R?{n?>1uaOr=W#o>(`{4yCv)St@`_xCZh+eLX2-SJLF6AZkj?FeLBZe(~L#cE69ESqw$DlQ1;_VYA`-9dmXb&HkPxcO!n z!xC<(3Acd=3z)tWC86ipe8Isi85ON`&!18w#PzJ27K>QetkHU9ok2o`Oc)mxsqi>k zVffsDyCJI91mg1V1$>W{syldho8%~qrHp^%VkUgEfDS%^om-z1nYStZdiB1X8@sLX z9}uqA6D8*lQ)NZL358NNob#N5eq8T^YV5FH$?#A=xdgAFn5Art3@{imiNJdLAy^dH zc~OHf)6@KBvRs&Oq}jDTGS37F0KjZtVrYqR6&V~HuXv>({}wH;Q=sfMTC7!76BwTQ z5)#7**uuja_o-p9ZiY-id=U>_cyZ^1-14*@@Dz&fQa|%y=;-KFtNx^n1}$h7!8qq- zW$M;XlwUOH!8fH;tdK%XoXlr!T;x*;1_8MDUZ08S9L@^D97z6MGa^42YF>&TAuPa8 zUQ!tVVi1oUx(A5`OU{U9?9QfXk)zY!asMFCx`9YU{C=)sRzG^sy^VPS0Mr$~O)dgI z%MLeHfrmWuw-2^Kw(kjXU_MP*fU%{_H$I{VNG~q~gm@27He^YBbSj}0yXV}S^oRZQ+hLzxf!e-a*E*a`` za|Fd#jfqcekAp!+*S&wS0D*Z}{MVeugPxigkS2s6NbJg!e+f#tv~BTDets6(-$iv`;8ioic7zY@j`4t zyFfj6ua;ZP4FiSYYGeY8&MRyRsm^QP7YJleFWRxk?0B=?7S zDF3$s;M>lflzJx+FG&Izew(|86HKSzShK*79el7=X;%pWk>C*-(`6SXAT;?c&pwI( z-cQ&wAB-I}l>3D~5yTv>MD-|`5)YAW%AV%6`JkIX-xS#b-2flcQJ#!GJ-MEI!l*u6 z9Sj{g*m*QxJ1+@qsPto{+df}5C#))AT*?nu{PPwoby3IFyTHE86y|I57e!L*`9W)1 z`_IXFug^*D{pMNsU`R`|sYz zsyR?JXp_?4w}KL*lUKa|EcSNpLxLixs)vqcFP*09Wqk)Egk(C$#36aKY73Dkq+iII zzp&G{9^+&IlkJP?2pN;c;ebOdmPRbeqXtu&Ic3tUypAdH4%2U^y%^)(IQ~e0S`)o4 zcot-%A2tIHvb-izv5k?TO*BJE>8WUqLy~_Rv1~Ozrc}4OYI8-sh}RvwdW282xjDFm z4A#)rv=W_l5_dOrggs<`OZORg$GhIdKB0Y3fw9ts$j1$q0QLl|1`LW4mV{wsEN`~^ z)P_6IT<|IJ0D>eHs<3v+$WS?BKN(S&X7Nt08z7bL3)<{rlkxM^!WB2PXj7loh6z{z zKqfw6%}&h`z_MP-A{!qguGJry{k|typJW$QFKGiH6>9^nT5XD5$L85VWwlZ)_uf!F z#MheEs|UWDMw^(`w9n_5b%U6VZUqX02IXIwLEV2M5jcNRs(pc=Z5X9I^JvEMEG@qa zb%xX{4%IfzC4em?xQBjoCSQ|py}+bnKfv>G>G_t!_KvC+^BGbyw-4iQyC&bvVO^v1 z7RY9Qtkl(~jNjnBqx(~Pn{mbOKWI_Me%5{YUo#bhB|e8UO%%64_A% z;E~WM7$Fngnv~ev$h6(q*Vh7c$2VG4 zVZ}bXiCj{xvRLzj!5KQg>2{v*L1%mW6czZIz(S_5;<_CxU&cpvn`HMlIkK6#ab~fq zZzrv7!46)09i)s_0|lyO{9a=|UOu^s{>Q}`ofuCm4>dl&`5VOh&PW2w4q73vJG6OT zC8il()R576J$ywB{}2_wPV@*-nOx4({+lipAhN)z9>hH^-6EjAXU}_c(Sim%Fd`n> z9I1S35z$tn4tpt<&8a_^Ys^-A(vj)B&e(q%Tp#^7-(JNYxM%;emaanq$8tlf@}4J$n=^;n#(NYx z6_=`A-ZUKs1n`fxrQLTa9K<}tVH*LN&OakBI=tK)-@%sE7S@xk@ruM^s7}f7jvJps zF*^uo^Ra$Vf3A$0{>_NNXBjjr~|Z(L6t6hwyEbJTq^o`u4MXo1rFRB zJ1Oe6j-ZAsyR>bKK;ZATml2SwmcqwKFM9`Rfpvg4O3H zrCJ*0zX#Vt79&lZe>YoGd_7d*V^kRbX}I`CmuSY+7OKGOrD|UQ8w)u)#UT1{&v10h zB^TXKGOw-!49|*7O8q?6??T4@wf<<+PWEo5Yywoamc$AZzV{H;*mO|y>^{utA)kWB zd2NrC_!eS<#&wN8C^fr^G02i%SsMhSSE|)4ytQS5Tp}+U0Gygq7M)XPr zVkbxpGBMvcHv8@6tqjMy%170b0(`P&>W9^&(ykq}bEz=}c-nOfWehyzG^DyjUcPmr z$E7vz&3T=2YHySv0ewxZ05Qt$Ztc9@Qc`eC7m{-XbP#ah;I4%K;=AF& zsWWeQ@F#fb@pNHjsSDCQ~w)K>VP5X+1ZZI<0^d#tkk|XimMV!P^X$ibzviE<>IAn zB`I(Gg*6w-kIQ3$a3AHN`+gK4Q?%9u3AR_;Q-$J=2rA3}_CNLFm2|_lj zfQ@Ec(4TA`O0QE7v_Z!C!7E;B-?J^AlNo3pNkk62jlZp?6+Oq_?v+V4|6FkYgpMQ! z>ztBmN0>D3%igDIF5H0h8(5>x8(()gxlPb1om(K=UqaT>;econ{}df2^w>X>Qb|D` zESZL57lq={CRW&+bgityRuS**D=cFU(nr-Zr%bV#lwjNhUZU1Rke1sUD*|aY-Sev! z6#^BotlQ>Fz^hWEGwO?(CsRUk4XROu0Rh*5pl3?@xDdnJc>W#2;ro*oOs&1?BD-C& zylVmm3l7Auv{h1&=Pf((UZ^A;2jHjY)+G$=2f6N`CfD5tpJHWO;HB@4y6f$S2+D+|0w0fcL{W0h6@sm?A%HiD(P;CSPpPncZRJ z`}3AjE4grhT5{eXnuC2jZq8sftKR~4@@kZD@0$M#IS2Y6C?$I_jb4{H6)5uvC?f$C zq{%t6*f&JK`06~<7#U73G>1?CAW0;;JZ*(Hz0Lwyh1SecE3u$Rc`ZuDV-h9dkcT5R z|3i)>f+@_&k%;c60B$dRt;lVH1=I&l6jRPd7$P7LuvI! zsr(Yf0OuuN`tzna3Ck6de6uNTTc-TG>w`?+Z?K9h{qMR({;_UCSt=R)>*nIwNyhEE zWsd|TdvTkrz>S7X$yFO>dEF<1%36CRdmNVgMLlo;W#_z=%xJ1Gi1=sHN_!YvsMKF$ zO0wl1H>I1~1slX4k6pBVr_^XCd3(#4Woy~a>SMC?#7RwrSjcm+GbZh-DRP+HvmA_V zBjsH?;ER+jU+}5BDonPx6_yJT+|i^X`=sStS6>?@A3A<&c;TYCm~^%wyK7q9)bwYP z^rq+dX$5ARVuLB(j@2!BqSACn(1a# zto*xp$!o?;ydSdDPm6VSFSh*Tb=iCe+P1^%i-wr;XXahTmxB)xa`>|2!iuAqSm^e*b!(7n|tUHYc@c;>bkn2J;>C}<^6^{tB$p5RC$ zVU}mO>MAv8Q2(S}rF!>$UESM35QtuQeAkrt<30b|u_l}QPvQ|D*{WL8y-Af$zbRFT z=m-1LDAg^h$(j)O&gy6~of?9NQ1;UM62LqCVz1*2rom65yqY0FM*7e26UP3n;Or#Q z!s1Sj@0qKJN~%qlasR_{j8N{^B0t&O*GOYd`%rs2H$H_b@S*Z-&%2p#PInB2rNvga z1bEG2scFdmPnh+BHa=aIjA&w?@8|$(7ajf@J($Is>baSN&7Ai!)WEq!`J3#|t|sOC zl^N6we_^fl-M}t)q?>!0KYbF1ufF(AEPw-v;v*hw&8CQHQI)IpnlOyXWNNjvgVxK+ zvdB-ZKTp1rAONqaxppWtZC%w-DWdZEB@|Mo5o) zsOl7#kW@>~S>5wFk{rCnjB4_RTBib80j)p$8Rgq73ydrEUGP@AZaA}lAOOr|s!vv} z1=jTJ11=m2r`;I#B=W8v<&!y+lMK1_??R$pgMA_Gh`Us~yQY?IC#XfhgwqGOWl3v1 zs$~PA&T7=b6a*bj-PfnneZTF%3(?(`_{XQ`AnkDk(n#BVPv!{@@ zifDNQi-NV{F~RP4Ah2c-NzoyUEjRtNGcDPJr4LXD z`7*!x@ma0lN9Q$u6Ge+x01d?S}}dURf#t zNyrZzXV9bp3drv;z9a#SU)4$p2o4_%=auI4lAx-1s^>1#n>dlZAH{os5b`i@MfNZU z`1$|#@20`?aRbKJlf`N>6kqNzXS0q6go~D%1w~M7Mhq77AD;X2-E&kh|gR1K8Y*<6f@ysPd>4Sr9=z)kWW^}q^XHTEz2GWn)WwGv;O@dUr zIOu+IuhPy)21M!*@Gc?~a`u7e+%5#I7z+InE>w*- zb-1wK0KtznsdK~L4diwuO8j51%uRw=mzC9(#g+WW5A5@7YnoM;=gpdPkf!3CJdKUb zva}Dmr;T3GrZ5ay_hL5k%9RJJbW8yKl^0OE=s$C@Er(xlU5Bz-yT~#f$3yv`8jj-lS?aXO$6z+)zt6+Q$8u}+L(p6<;EtJtP{WlRpxY&(Oz~BQao?~ zKMd=x8lxZn@?9FO+ly>?&U^fyoSY#kL1D>b7#()3563fGLm6Y9r>Zb>^qHh!fw7Mv zmkdjr-Sl$MD8AIor|?l=TR|Urk}GLVr`b<8jAvde*(Om72SK?ti(f7Ga^F0ydvV8#B;u5oGmc z{+#03!K=;ge_Cv|cIV1Q8;}M$^vec<=l3#AkETw08-Hr(pn}Gu0efy75og^T8=j75 zwsP6*1?s4v_SZjc5H`uvifQ~^{IC*-mZ>3&9J;)&S7rHi+aKJ?M0F!xy4>w_2$Kz z=J^aQeJXZ}*H&ijyp(2%Uyp_r^QK_W>G8PEyG#Ly3`OJ9sr5uDp$}B+De2XjM@#Qh zO%nPTUU$fER1;KWl3e+;^Z!)5v?*W1W8z=UwP?jU=G{LNZ_Ep8)eg4^wgfgx)M5H# zROLkM-pjRb#ek|0IG0+jK^N9X6M9+ylGs%de-1ELbLhk!0**mjAf~o2GvieA zOt?1`MzwP&x!g?I{d?Y;x0W}(DJq3_Ai^tm-&nP|P*TACz!=6*iu2E>*p{zUam-&%K6@b*Yk_5fQl2h{J{VMPCp1J?Os8Mc*d# zcUF7pcb&|(>83=6o|7>kDX>zuf3KW$cO$~9fB&PQ^L&d-c??W{ zHimP?B%K+v``JebK)$kb34xs@9~muMSh1goI|=mFS6*r{5BvH;;>Y(SmU6r29t;MZx!JoF>^5Rx=d zuso~D_OF(+MCZepju7;rI0=x%;HYD-Z$$3^ztnPaMj;ck4cSMv{#vdYX=ou<`IO(P ztQbh_RnMC;0F?4~IQ|Xty!u8jF=7>F)oML`LGv52FCj4gFxrwJ`bWs(ML0SLyQai@ z=e}dO(z&(2@0RR;15V*Zzkg8y;RFHr#lcVr#2Q&IrF!&AFPR=*ybGGeU4wpzH+Jke zQ@%O3F(Zd*?T=|6)2A%KpuNhgQiDa*>k1--hk&Y3)_f=HKNLIK0DPe+>|-=8GWncb zNoi?(XgkG=j@Y;53m;?`kt~en24?K*MPr~|$)q3Z4g&!BLk>(&#a|sGODFNtjYO*M zpA|y8@xH>Mgh6Qap4JxfEd2-(^-?H%c(wSritBW(13}GG>xJ5avj^tFRALPSuzk}= zK>V(|Sh%0Hp4$%f_Tp0WgB251{;cxM5C(#@Hwh`-UOK-Cxm>D6)e!F?Nb09@`M?8L zfqt*)vQdibbx1ponwrO3C95KO^#d2gueMkVq^FIbmjpJy`8u)7vbhPD_wy9!Pf<-Ow{{G<6&2sj0Fu+xZU3m>KjB1}QLtxOAki%naJ3-EDy zQgzKl4aBHbmgmLquL_q%XM~{FRr_OiPThG2JaUm$?cGi>3?EwHz?nRLZEVEuB>{j?+qegu>%JO>T1h}fq;MY>}p(1 z1nI25qolivp>>OgVM$!@?FT8rrSkV%z70H4!ExW3bPP>=6seGG^2~^^fVB@3&SHQ3 zkmEJM1$IzrF3jX>mco@$eOSd^Tvs0NWu`ZyrD5zvwsWk3SRBffs8v7K2IqD|U1TV{ z=z9!qnSxNM$Zt7*&f9Xb^L6?E8%W*20RRG)yANR@5j21(5$!YoP}N6ewINy6a-R9+v^9S!TB5!Pv=MYkO>DrJno+T*;;1X}+{n zNL}CbMJYz5~p-c~dlsjjyl)qfuFvzN*Y>?uUhf(IFhC68PWuBg6}0up6W zuG?kG*2Bmw+7-5WcMEXm8`{6ixvCc{b(ftiIGCKg>$}7w{~z3KVoR6Rr)yY6cEvUJ zB8~eo1D-SyyY=(T{MERkd%4^K!a}j(S53ZBdeE+u@Zzt-8qN6aDm735;tTU-hf3q| zIb3|Br88R~L}EN%7c$FL4EujuqGsPYP;)c^a|*b`&(D>glro z=yU%_05(JEu<-l;#R61A1L&zRVYYEwQQ#hzQLTSuFZzK2i4qgnf}T>#e#(#8>EEtD z%$Oy6wofN!Bs^`z(>6=N9Dlj?CZGZT51e%b!#hq|xe*9!yG;;;VJ5Tpo%u~a?!#E% z0op>^o}y2R&XbqpX-jR8?FMmLsEU{OJ{wb^ZDS#!gHyw=S$u#nCP$6$T3NWJ3ZDo| zv?Iksy~%^^w0)tQh$09TvrwE>Xely-)|rJV^a&{=wz_04NZc%JS7`sFOz2YNp#jGX z3C0CIs-t#*46*^>v_>?7E>fky@}Wxt5c^xv;5Cll7h_k#1v>C3vngfT79Qe7$gm_k z(4YXM&~&r72S%@CN$3%D3s3$8(fygM1)|%SCs60Yng0+jj!CxCcuu`q}wB@unXHuB{0?S%1TZ}P|I3Xm4*xjJGQX7NIV zi~584qw#iTz-Y(65{AGBl3egB$TxJLdm^b602<`SGXNoV&hM7f;(R~nDGBgN4 z;cBccJfO9$LFJlQoEj7a?}ai6F}S^GJI!GCe@%B4B8SsZFyMgySI5FAcNTXMJy}GM zL4#%f-kl^1SscK^R#op5%jat$s#&qQpaJv!wgPeLQ*z+P=#OUdz44R60H$B78D4tJ zSnx1K`-0WqrFQy48NNL)e|l9M?r=XE-)-9ct+4tW*HF*uUml2>@mqR0*h^`Fz-hXb_7a3g?C3o~-=!``>P z^`?NB=?=nbf-%c4Scwne(zi2FBtT-=^W)Aamdx#Ld1UlwX`PEchqW-GUGiitqjXZWPI>4o+0i|A?&&g1S=k2q!;07`(i5 z49CcV2$T*_&#f1%HVxe?>z02Q7BAkgtJ`h1@4}hr;0OZ!U{PYwq+&=9gb)CKK~g`n zAc%kVBea(fL9}}MnfQP&w;x;@SDTfLf)I(}#YiKe7IMTa9n6+}+-N_0@EVlL`b@E*kjQ2jErl(2 zuKYCF-VgusnB{PDXfzZH5WrmgGETcPfrjW$gv(9kT=E}bsy6D)H&j4|#Q-#<$_xf{ zlDL#ebJ{$9-PNGs#suS|9K}XUU0gID{BX>cx;0g|QZlM)R2V+BpCEtdxZwK0)6XfB z6a)_(7HgP%-?7O084T&S_3;RaNVOy%l($z0*;^tewyHe`@JfjA7tBX{qTC&JRVL*U z_9VTI#b2D!Xq7_w^SGfV_u`@!6I6CsE6WepQ?XLWoY31{NJMrBZ5#lMhZ_*ZaT?t0 z@QRlOH)3Qu{9XOUw^C>3`FE>p=Pj*xv;2QztO3Ql1Aa0|UW5vbrtLI;*cyG~Bxx7_ zfl<3vnr?S68itX6*N#MrYDH`H24LV_1s_?wcWRvMBBK=v zb#7w|JQ-G;7Pn;_mWv^_3Xycx3acy&1bxh#5~=Z${F~3LTLkDcOI-I&6fSP@t`Ifl z@pVX&wFwrA?&sESAmS1n0{G2g;AVgVn&nmUjCFJ~`v(c=1>!>V^G`c(vRUMWKchlj;)$j9b7BYI5R&{(&R z3V3h3*7gm_3>r_&YX+hKde~mXexdvI|0Wybz}Yod`}LJm*fH4e-w|-c>?}|~+MQwp zTE3SAy5F5#`rHXYHEnsSaQkZsrfhtDP;so29J?(WFK#1I-LO*=cOto0Jx{;gz`}HL zmVR_Qq)uW@`!9#ia3sDZ)pjUQ1pqVSlbh|+hr|2(=}i#wb!b56R1fO(OLTk4#+S+s z_0GCvBxGElTFd#ir=N62_nUS-WkaJ=h5K(TX+DobKRjIw1Sz=<96Q_$ynvsj|Hb;a zJ{?64o*8`v}}@VXAGOwwKQ;LtJE4CRNK`P?M~D zVwV+OG}R_~s&+Oi5lA*fF+rebajfLm0R&_xlx%1LX}+jG)$4-&kwtw7CvaC>9jo33 zI6 zHTqW9y%;%F9xAJ3dfgLOK>o_i-QT4bFB}*IW&k0TU;X-%@O)2o;-VQW))!|86`l!*U0=}KqBZ@C=2tTfwJQS&bE0%p6CKn+n(xE$b zZg99IKmvAhLS!}*hjxKwYAdAPcQUBD=C)$iY2S;ATPcfVW7a*X5xq9~!>+1lwr4%f zH96oX9gdjW)xTeV62z|%claT~_s8li>JGO^XBh8VvVI=!(gMER(t;Iz_0n~Wh6$&j zz}zuHq;)m4pSUbQUTby7&oD{l3#O=`V<+E96Yj?Ec?%9*ch?_xBc34Z))~)%T!Jt= zg4ws}T0CL+TVqqTMw=BV53z{67=^*Y+e1%=`mYQh$3xF!xjL$Rmn$AX&3Y^x*rHeh zl~>j9Q7YFpW?r3=I%u}%odquH7ox3_o;xzC`7t@Gb$w(>)Aa$%}-oBt8)oT0O6Q0t*tRk zx(U#pq*JFmxIfVjFJJgHE!sqd3hEF9?UM-Wm=h} zpLTCAV?qI~R-JtRhiBfMi%am!-^FAB7gITNxIrN|`8*2?I+W!2x8Ha&1i_C^lp#14V9 znzct1O|&tA`kX}Klx)P!dR9?6-!|^=&CeLx5r1%K*?xmb{` zas;6CtPK}2Q6_@!Ba?1*$L$^H)baHGZ}#>>Encmj$a)t1yp<}478hi$z6FmII}&)b zXn$}inC_>|mRH)TeITiwvyg$NB@DE1k+=o0BEbEKVd*KV*ai-&Q~AgK(({cbb4jck zRf>G4({t8orapqBqIhH3w9W{LKyvTZ=b{U z85N!C1^N47efIvN?vN*d3|)Rj2@#LM0U8(kuR(wprT4o ze{z9?H!EXF)%p(gi7mRFnP$+}ohF{6Rj z{=2Q(g`$`NxTjZ=01ryT&GnXUoR4w+rwv;5u+DZxFTLj?;bpGD7rn54aEAOJk;4td z5IYvcu0XLWw7R?b&vOk?bV$uz4p8{A4XdyY84Oo*@5aT04jM94Yc1};f$Q28U4Zph z`@W~#3)-cu?%|u>5{J|kce&fuD^#jOf=nB}rv2B{gaKu-75e|H52Jd;O}CAp;SFQ# z%V0;*zChpaD@2Xq%38W~3N$G3a-HuDOJ(smqwn z?~85i_qXhV1RkDS+MhRqfUF%Ht-R&VqUAyqDL?!6w@|s2*x^f4N~88)=rv1W%Bb+9 z`r|(>Kg*JU&P_AS{|3AEcYggZ)b-kw|M*#i2reK%?6Ss8`nBIF7sriyB|AXKq5r)5 z-)z|GX9rXR3nTvixP6CtahF}!$)l1HedF|YXSsmXCWZ16#09~`%xw%c~s&aL-trRm@gvG)w?TI?_8 z^42P7k6Eegz477K2e*ZYnfDb_BajR;8l_VEe!qez(Jc4xJQVV_3G~~C-Q`)|YV)MX z2U*lN95_-qICx1CgixT-zaIsS8|;kwZjsCNoK3dw`a5xx#?i=-?a74g?~S{c#oym- zW`BQQ{a!aQG-$DFlWBZPrOW%>+U^Q{XcCJPjMEF3864N20$x(Wa2jED+`QQr77om? zdl~Nd@QvsL%)@z-VB~m#+st$`OA*#@lp~+?k8{DRv#H7Z@0|x}U&r8#=fO+zVo#2X zlEoAcZI^E!-^ElKc#?5^PZF9qKQRljlp?-z9;Lhto-v<0%Z_ha(kG}b!1F=u1pw8( zC{=D^MWw3MHbZCB;)P&B9jGh8ZFP)1=EPvIZdu%E$1KyblJ5<=Mm-SJw42iiaffRv zmA3pU@w~6Hj6Mu>D3%!&2jtc?6Cw0!argX!uGtG|x%QYb`=-|@i`A5J#P&p7JRI?8 zo>(rC63D9L1_rHWcJx(|f3@XbLqGzSuG8L4{}fau`9gZ{VtFM7%;_EZ*WvDnO8N12 zSE~UVn1akLg`2{4Yi{v}Ht4LT=c9S^52-iKdE*<5NFtEN2 z;HTAG`(79krTcF6vqV#>s>^^|o%XMT!-1pxK-#Aj=xS;$o!xq#hZTijJ{#|qFQ9#ONafkC{dx&s#uoILtja&)43{#%wbX#-jpT7>Yk05`$iB>>a^kRC_CECcje!C0DBDeZ z*5m9R1ktI5?@iF&99Sggo_!gw<+^%@)%R8QIP~{h6tOmooR+DLMtiJn+z~H!IG=mM zR9L>sEQ0|o<2;Te%!4OK@PN|qay6yY}y+>gbVfY%!^zlWGEuX*;A z1SHEej=$9y5Wr3NZ7Q-ClRA%aDeGd~g)dH+(Bis3qccd2-_3BqV$W;36fjdfci3W{ zbr+Y-IJwbKa+PiTa*cd+maKzGrcDDeuGlrX`sHT5#o{m3US=U0iHDv`uI9*}A7aYrTK%frkOlZ+EjSbS0N6k6Qs_wZ*dG7+BYL9`?R5^RCc z%nCi3S^|B^hGlN1YwjX$EFiw>4O1qb%}<0T4}7X)^WHT}F;d+P^Bup&YishSP}N>4 zYtB=t?VzvYaYEAquH~iUS65p_4FhvkFhG7WHn}r<;{M>{VM(QHovFzO>q;mg&5^;t zCP?TEG5veZhf89PRUZlm}I?yDsLDxvBHFYyc8oEz_TZxY=k@s7`OnjsKQRw9X za^-SE+Sh|RjjXhMj|>s3spC0DFdB{v4#18kuXIxWn22`=DwY{y2oeB<46F~E_iF$F zy;6=o<1(9?suYX1s4Ktz@(J~QIO)D=1+?xz6nnnPN{hg-vLT}#egCR)R0idKGYZVJ zp$uD{KO&0^z#vVP=@)izO?-eu1I$u2PN+!c$x`^nJ}>wCnj9rzqz{aTbv z^dw`gXbcH~T3Gx9vilnH@HgYcf$XdB-&a`<7mf%syTdCl^u9^Qe$mpjnaIf|FJTB<0Td$5Ua|Mk!I|6rj}DK1Yt~q)*j4+ zS~fs8S>4MK-Xd+ZzJvcKmpcuS*Br_3+v%0Jr_oM)!8)p(dZLzFSDe-5J(sE0h^q|) z9O5f(%lo@_&vbSkeal!?uP;R5$?o3*p;v4{v7*{zP#*)YW|ii1)(5meadVZVAU6$~ z2lPi`LWVfR*cabQ*RN3 z0)8Wk4-mr5b7DwJ3aMf%)snQgp0d0}&%)^6EIBreM{q!}&dTZULw?oBxE}@nl+jaP zp^B?G_%%eD)+DJh@!RL;@E>1*s(sU$>G`neuwa`)Vw7lfq{-?L{n(%>7l!F0l39Nh z8TEDQ0Epl8QbfhN)UvHe^xLN&lD>b0gG7C+um#<6owN5uT0tR#>_EbdWme&g}@fd-J66E~gwD7C~u1f`Ow zZ4=LTEj63RXr$k;_(5Fm?Wh68*$eC6yu1i6l6EbnIZWap?V{r1Lyxdzr76(}qTKKr z>l;B*muuah5O#qV>M0*)4>$jBFtJ$qN@4q2^tQY-4d;LBtgQbWf%51NWDO%T(40$1 zLkIa@kQ0%GFb^Z>vVVzyt?%C@gw#J{A{zlX5ceq`k>;N&tR9T=pD__fb|8odH5-eGxkW+jDDX1izPLRmww-rFq7Wkn|sx(2{nVhKRe7&lieaa*4SM$ESW*s z`Dl(K*b<92Z#y|glJXIMvqnj>y`bxM2A25g{@Hg9kX=Q8>e?xMS_G>jCCZ&#V?#7i zw?W3mXNY?s0R&qasLj+1+1|IKy)^J4#b7i%|Q!GLV}yXJVE5La8_bbIvI6^uiz%r zx%gVJy9wqR@tJP6IL%Jm7v(7P$=(od3F#8HZlaKQVN6FavV9vvlOgyoZ&AP{m!T^= zQ{^D4X4?1``)pQvU5AWuN?DZW1%p4icSxKaHHO)iT5?NvKhm@sUkJ}`P(2OZzed~#m4TUnX?EMS{g9f=_y}Al4pB(qUYNTBzu~0`tBD$U`vQMB)_!^;>4W3Xkw7mP+ zcPyOh+yDJ5iYYe>qRR?>;rp+9an3*WiU8=OEjvFuf1TO8fdGakF`R#$WR|mG2Z`zZ zxsIO&x!rRRK)%fQlfZ#SHV*y#{4n>ZhQS{k)w#^OuB_^o?D5o2ohhiQ)dx{sY-I)~ zJVmyPTcAlt-j~nxQM5JrWsKw)k;tkh>+bt)NRr1!gu3IQA%_&H&?& zMUPB4b>+p!oLktT{`XvOm-Srnk7Fohy`cCnG~@v-Hx0b&OZbclcGUbZ-UiQN4;gBJ z_-9dhqX97SVS!pJS+t|4@7V2JX$pT;w4gX!n1K>a{WmukIax?X+M+pDfZW zN}<$ZG{SMBkP=IQ(xbyMBKEle?*W{6LJ(V7#;68Jk02p>!`C7nPC$8Ho{dPbMZCdO z24&A9bo6T>7)9Huitlln_ z26(>`$g%1}ZT1v(63C>Cji0;f(98;a3PX;jWUV*k-f(zCME}C4*=BLv04v4-SYXJ; zwVaOrC@!iwJKFp7?v;k)u6|Nst|^qm@sql?)bJAMNh1(ak_uC#6Iq}8Zac6289`96 zmKv)X98tXNP~cg&pZ^{Ou%zi55%svtt!9f`uwY<^-$CgYoUp$i zlJJ-Ut9=+(B@QBVsaQBxBwtuRAJHiH5>H9?flw{S^}5CM`N|Aj^Js{k_CGjg z@QU);mHh-?x@2p_N)C%VO)}x)v8+qyr6H16lZtF=R;fq6-)IVp6*=-$?p%*AT_ud# z|K$1_*A5$IX;(*~@vD1x#k0U0ad`F(046z-(n_`*FxZZzD2O z2dmj_W)Riq68GF*e^OewKD0J67~x{p3ep&*qSBHh5$)8w>p$p|b82^J)i* z!7atTL3p8C4+y7n@b zm(1)3%8t~cQ$IIQmUBlmyBJ2c zz-%cdpVO_aQ%HdF(=(q!c+c|s?HwufY9--|h$#fnrZ$Jvp73KWIyEu+&Ygv&*u6Ez-YVKQ=t*Mjos!G z+#;X%J1%-Kn(oKl(cOc;7&P!Rj``X<_Pl>jANu+(6v0Y*si7UkdOzuaZ@s{2OKTfv zpPyxI)8e(=tK-78d6Q7p#$(_22$j)jU2nbi zQg_^g14mbkTvTP`A%t`DI=O(;Zmw!7Nor!mK`2m`+3-FANJ!An4IhPYVJ>Q70k~` zLmW1vsZVn|7cpzN8#Mak{z-vL=qgcS@SXe}-}t8St9^N{uH6+COIb~s zW~9^`Iu*qqi8`MKpzJQ&Hhc+CFl_0knJ|S&I)lr_8lb;@AOhVyCOt-!gHqbyXU54! zSI@EfAeP5Xh;3^L?fS>k*UT>f;4n9sHe~HBLIf)u62DjWd1J1m*`>_;Oay&Yvuv156~uhK4x~)AeqwQ zZ{=%9Z_V+)t)yQIx4ckx|F9y9%j+m0qF$|dpo|Wo{XxMj3#|^wkQj515>kZSGit?zKKiRd3Sp(aTG2wRa$>2r>R@Lx+a8d1Cq}T2YHF_iXR}6a=Pnyz1)+=EWwaq z27*l%1~)#GD=qCl9&cqZAknnD@po0ZgdoW>TA1MA z+An=Y@#SPiE^5ygU4|cf&X={HSn6Z~4aqRDFC(>7LC1o}fe$>UFWuM`g;qzP4{i7 zh6eEKb~-`~DnI4dC3dI-Q0#>l13V`<-;*C>kTN@)Vc~y;83gVje{ewq@&*{-*f~$a zph7P8^jEb|$7R<=25lz(gYH@q$5%JoOX6Ly{S2QN1P4DyqLnR$>3gx%NMhlV)5@1DU29=#81jLuuwX(%f)qff`79}) zB5y-L$BTT)ND}7k;@Qwn0&2Ef|zIaE2x>$DaYe4q|A8^gF^Yprh zisT0ula=LHtKElWfw^U1Ndds*Oq!lG#FkcA_Z6V z;nvy~m$8lvwoUqk!NKRMwdVzL*#*>;&Zz4q;r{9JdO`e6?_OEFv|ytUm(e)o87E8h z8r;FDT#gM-JNoXhB~CoCDLae}!XF$|uXTG9<48;9NBj0B zZSYhP>bHKNDNd|X>xAtRfxx9WXLA8%10fE2GWWZTlX*Qt*X8+*F4+?9N4 z?Y}i^Degib5F?B&-N51fh+i)cO4V>NJw}(9CE5kk#gDI)`s220L7_G8h0hz#&q&moq(yex3Jv(+V#;#x@Nrw z&r#_Jkey06cP$7nIwHc$hwADqXvP6ZRx=GHLsd?~JJqsj2ft*O_)J~V2Xv}8FvKd~ z+FQ(2NTuSD33u+Oz3S+Ue6OmLr*2?}DRDpvwKBWs*uZQR!{MIxc<3R@lIXf7j+%Af z@uZI=Q~U6Lm_oX1Go|YdB;cVEL-k= zQ~3S+th}`E5$oS*zuf&H%$CzQty0U*n%4_Eb_{LL8>Dns9Wa%N3_8(50Yhz9>94Z& zyk`vKYI}hE1v6Y~DFNsZ`=|7sFv4+vXa#)3hexUJ*qQWJt@`Y^95-5Tu-T5>}L`wola8$EmsD8$ zEDi;VV(8>Ydl_FurlDI6TY%ncr)spENvR5MiKqYpZHO|izFjo9utRmA#B1^?D*j~{Vm@ewn7>r#SfwgfJHhVX zU{nPoR-@e96IP>+pmU^kQhDz#XgU7EgYj=hD&H(@17-A?xWWaRU>FC@!34d5KRGz+ z#EMWRVy1Nj6{E)n3`WH!-hVqXSo9SBwku&TtK4-11w2`1)G3`lw2 zk1#pCSdh(X^0c0F)Ew!bbtaP`9c`V+9)XR%{~`nht&n5{`2GIjfAU%81&;ymFwi6D zP`6I^;(Dd9M_epCQnYOzjg+_I*C?Ii-6Q57W1lK^2ZKXr^b=5>_FuQ?qG|_<>I9@1 zkE;7+`lVYlx9vtF@hF6 zn3D?s+iU8r<!S6Pt#3w87V^uXU0<~q@8{xCfvg%V*h$s&FwQl|U&ST%^ za?SEIvEJF>!>0Y1ZpN>)`i~=QVsAXXd=PODRs^j~Y3}c0_!^RwjpxT1p4LkXEF}0B zh|+&Fx7q*BCE4`;3$^@D%=#~&^1r|OU(!qvzU{b=yrJ!hjRXMi5w5Q8!(~=Xwlo`0 z^0tk55G3XQkj;JwvF|-d3{OeFn@5q9$VW#v*Np3rMRFyYZ+nNO3Fl`q^$?z`HY-#n z-zOWrr~j_EYmo&#bzUa0(+)RnH9L8s0oCVQrEirEy5jRSTMu3605FY(OI%YtVF@NI z>kLv>Vh}@DDr_jlYnl8qHvtbO;aw#R@hCJE3*B4eJjIJJ@z92htzK|Bm~Qc-_p!^B zC|GS{pURCN^}BC|7@FdiecdI;kh)mbY_8){qBYirP}AkvYofj|*XA>3!FN?1p5WnA z>-DgR5`vKb z3^e*rW}&m$JKaoteNOw?X8*8!FR7mD=~8Lux826*pUvTF=RNW+amngE)&liq)@5>m zhZTHsFY}{^S>;HJVuVvee2pJJ?Km^zB(3cGM6J9Q$d(mUls(BJB7mp|*r>Qm=aP70 zJ5=5QRO^dheA2M)g>d;<%XN4jBB$7SlN}64}H+Cb!*-8)bmx%jYsK2GBfav+4 zR@*(+;>SY?Dz*eZ!yt_7r=ML7O>@96g@%Uxp4nsSBc>+*-Au+H{@&#wIaG|Rkif%F z_t5F}t+c5YwlxT0BA>(VT%JN`Rr5z}OPTnJQ+(ds^nZ5!+dkBPz%AU!2fpr>6}9kg ze^u?->q(-nRwzis`bh=+=+_ZC@pm|rB)o}tJGejYgk-aU3oXy7`F#|y;Ac`v`GzIR z6G6JpuWg; zmMAu#Evg(1RezEH-+TlBS7qTu+wiSKX>*gN8+N3a<7_M4=mftG0-;IozwUYxb^< zqA=&=K(nP;N&oZ8K(Z$pfX)Q>KGy1t$mI~Xizs+^cU?ILWRLkSu(^h#Uww0AyB-BU zPuSNxWyj*H775`aPbbaGpVW7G(R6NI?KiqpZgXCIEv%SSsg1ux8rTFsxl*t)#4+=} z+HGQw8jN+pPXi4(vT{JS%BbBgVo!QJZR)fudA9IpQ7AfDWEm?Nthh`(@Dq47{=29Y zr6spv%mxl@ZuxsmjOTI?Jpyq~1_N|#mC|bLi@e2l zPHLetQp#6<^$=@*GY*782@R4ah%gIeHMZ!~8clyPVivXd!0pGXLr8ybOmL)O5n_BH z4pcua=l+}{qw!*0AdBJDZV1oPe6c2)$ZyK;yN(I%_t5j;-3RV&JJ5wuTUC!-?}(y@ zrYPPz*#w(in}7JKxP<wbLTJw z^5 z%E0)REV`Qc7ajqmqLX>+1fjtCq1t@U_Ju5?k{MMgG>tVS;7lWG{8j zLg^AIW6r-yj(f+mhzNB%XzX$5kV>|1i_DeP8&^;={D~&ZpksS$(gC#>u3p6lI6tKQ zYi8M(p}MQ<1E4S`z^nc3mt*TGC_uWnUsK@rJ2m!CX=RJX!~H-kO=`jOwd*GY2#ATTTS&8!^DMRSl!Yh*6)0gl0Naz zds~{m_Ilrd>G$j8m{#aK0N`Q*T++f#H(j?7CxoVyE(3>YjwyxSr{m_?Y+ej#p@DtO zBUa)k?dtv-H!)a%OnB3q=Vk*d+<$x^+MI5RHZoARdZNTHG#R^NCIJx;kZpIr`$12a znw42z6G-|0sB@272N`D*iyeSm1-jn2SP@I@6RVXY&*$;+nDfS8N15T5i~C7;T+m=w zWPh13uUBD|5E#;`?UiH`19@hWQyTwKGWH+Rzb^PEw_2o<+R2st3WiFQsGEOnqWyEx zBTNn-Og-Ly`CE*2$E(yiJdD5AF{Ffp=lu`{44b~edWOGt4u@~|IO9AKUW`j@IA7EL zIuNViF(yFH*+@#o#ZhPTo$94K#GfM1xfJPHjAlirDwl^T%C-$(lL_*1@g2Nu)pjawR#x$LRx^=JJw(!$d)`*U0e z(O5CsmAiOjd>*4_K)#VECkVzkoo35Q7vHA)6ft1bp_wAn`Bt6LfIzxbloSaJz)eV6 z=(}P^JRqAJfb#Yu*`bN_sy4n#I1|`>B-rN&&ma zPplLwMWdIdpCvma4AW@<41g{0Xvnsge#X}_g=p(^G%|Ai5H{PbLY%T?h7Hz&sN|kl zd64`3^(u8ae;5{;Oh)0l%z8O(*j#Ajfj0tA|E=Xokv=REO?re}^el`#d5WsT(<4fG zJZ`d|JRVg}q*{<3TE7D<4Z1`S3}sDFDYOCS=zbRHM%Vn75OXIKtx5@LmQVz`Rk{Yn zRGC)aERRMd(QEvI_$tEM%xM0uTs~e-A%e!w->?gNnZW6k6;VYhElWey;mb{XbGf1W z4KcgVOq2*_FvBktLx%|7F}0;d9SLBWHAYkF^_2=hJl=Uzoi_{}G}Tv%7D-*J;bSLR z2>pfumMc$>c-QrT)Fee*S(GAitk-oZ%ZU7K>T)&!B_!sKIOg(syYP*85tg5udv;fr z2VF10XmHpyMDbp1&V?9|a8Wh;BJ1f@6R^ORc%~49M2LH?JuRW9d)H@aum+R7nd&)0 zDJlvUpN2V27EcA;s*XQ1H4g&BoJoI^Cqq{&G z(c1c%-$X85vj2CNhCC*YcV!}utTAU!dyWJe0p58!?=w2s_+cSKss@jI-Ss#PF} z&7j@IFOrN)Jgr0=tR9Ty9K`K+6~gftJsNH{798U)MC#9_ms8mz-1W!d?(+sImk>t9 zSO-1llR;&@qy^dmfG%%@T+zGD^+FQ0P7JM zLy+YoM@Em&^BF85fB022p-I$CScL89SorusOO*RebbO7fLh^4ZnVjW2KXO=S&LB8`Hk}ldfBkhm;h{>GGAcU4y8LApIKHnu z>pECZ`3V8@kMoplf=F<>CGOk|XKH$+NbsAUb)x2Z;KC4d^LQ=o5W@c2SM#N>j2aWT ziz#g%mmZb5d#{&{m6R&5Nic_soN*k@9S!cby+*hWa|-#el+x8E z8fQCS%*T+1KKRv_I_aE8rKFgAz3Bd3L_nR)J|$MpEgxq5k5f_(Lh(Rk6f(;Hg=zBt zQNaC&o?=z5DGV-nQFm|R1R6(w#aQ;EO``6)BkHHxd)sM0nQL#kLr!#~Kv&hbA|b|~ z68$ER1nvwULLk%` zjwqPx1|PbWW^vvOzk8AFp;M<;j>oO^qr#){*bKu@MU`0`v9kNR299H||X-#*}JVY0!IJ zn1$%4B_zEN66LeaI8m2JVlMRGFVAw+LiCDzR~Bw=(F5f38ts_6&_G;2vrJ$BccO$*CE=^Izw^Y{sl2hgiuCZ_IW1P{7oCYe#yS&8 z?UurWlBaBPu;x51k%1e8V83V_fbdIozN`9KtNdMwV$OHH9p`vm2G;?tLE>j?LHCai-l2 z{~kY!q4!n%MGsEML~tfrq+`_0u1#vY+-Tcf-nXs)N#rWyyNh z0Mr4pmJ|_GUK*)5r(jgNU`qCY)((r?Z?DXlC!||Y#Kom@e&+w{60HF(Xm_O^@i*TN zuQDEwTBEPek%7ofGYssI;W$?T8d5WeMwjCEP+FZ~4icG-`bJ>TGvQZ$*Ex`N%L4l? z2`3g(fS;~B3ffkV+DvD})G{BK-z}-&HRFMaW7Z7+`fX_p#1+*3i5dHe;gxGakUaIa z_e=A!xNFk86(V5YlM`DcOZ`nDqRj>Ck{KWSCxz!!Qc2wr^j35zqx0b91>5&Gm*&Jy zBFpp^Jfcja>+ZQxTzx^R#l2}sFkl-m6^kTv3L)S>%Zman50mFo>tSA-dedFUYipc%`4UJeF*MG6JAgD$*@eN_HH#C zRhi}m^HIxwS09@s(ntFnkb(WO&IN1AW)z>gaP@Y_dp!lUE{azS%cEbicn;2?0JGxc z2`}fioaf$tUjKt;7c3Xp|Ii?&O#aazQrOXelht`HS~fnupH^^nG=d>;lTdu%I)6N>MV>OwgMoPZV1krP z3c291B*wVPxB?7)4e`0cS7>aAyHGP0+xJ@_x|1Y`EXIw6{8rJf`nt73-~k0qaUN&x zquIyR!2n#TJC-kr{yVw(a=p7k!UpDw^vXzUnLlbrnJJbHj_a|UMN;S8 z&&0u}iC}MXXXkU7QT17<9C3CjjokMv>G!C1*2lesTZ8ydkbf%K;wnM}cFAFmb~!%| z-d;7Cjsk>OJ80zQC;unBSXDT9$RFQ(go6|tfH%^QkgpI!@|~d0vuyrl9E!hy*SP@H f+rK{i)dv7RYLQ7?83u|w03azUD^e+>|MUL>39o1( literal 0 HcmV?d00001 diff --git a/lib/machine_learning/images/total_prices.png b/lib/machine_learning/images/total_prices.png new file mode 100644 index 0000000000000000000000000000000000000000..0f9b98bf486ff2f280d1c49e0a0c775948061df0 GIT binary patch literal 15045 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 literal 0 HcmV?d00001 diff --git a/lib/machine_learning/images/total_prices_candidates.png b/lib/machine_learning/images/total_prices_candidates.png new file mode 100644 index 0000000000000000000000000000000000000000..fa283641f53c6edaa003e64d46800d7161f5634a GIT binary patch literal 16442 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 literal 0 HcmV?d00001 diff --git a/lib/machine_learning/images/vat_prices.png b/lib/machine_learning/images/vat_prices.png new file mode 100644 index 0000000000000000000000000000000000000000..2d72e1a81175f5b8458a1c76716bcef4fe056b31 GIT binary patch literal 15782 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 z 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

^m-%>&FS1o|jXXEwOpWBM?^~@`bNxOY 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 literal 0 HcmV?d00001 From 51e353c89f2f952dd4ca0fcc7cd9b34a28728e46 Mon Sep 17 00:00:00 2001 From: Thomas1e Date: Thu, 21 Sep 2017 10:59:59 +0200 Subject: [PATCH 2/5] corrected typos --- .../datageneration_workflow.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/lib/machine_learning/datageneration_workflow.md b/lib/machine_learning/datageneration_workflow.md index 8451757..241877f 100644 --- a/lib/machine_learning/datageneration_workflow.md +++ b/lib/machine_learning/datageneration_workflow.md @@ -1,8 +1,8 @@ -# Datageneration for machine learning - Workflow +# Data generation for machine learning - Work flow ##0. Get access -You need access to the S3 (files) and github (error report). +You need access to the S3 (files) and GitHub (error report). -Via the web you can not download multiple files from S3, so one way is to use a program like "Cyberduck" to download / move / delete files on S3. Another possiblity is to zip several files (e.g. 20), upload them to s3 and everyone how processes the bills downloads one zip file, deletes it from s3, process the included bills and uploads it with a different name (e.g. "done_OriginalName"). +Via the web you can not download multiple files from S3, so one way is to use a program like "Cyberduck" to download / move / delete files on S3. Another possibility is to zip several files (e.g. 20), upload them to s3 and everyone how processes the bills downloads one zip file, deletes it from s3, process the included bills and uploads it with a different name (e.g. "done_OriginalName"). ## 1. Opening the next bill @@ -19,7 +19,7 @@ __All coordinates are relative (between 0 and 1) to the scan dimension. The orig Check if the coordinates of the textbox make sense by comparing them with the scanned image. So you have to look at the values `text_box_top:`, ` text_box_bottom:`, ` text_box_left:` and `text_box_right:`. - If there are weird coordinates (e.g. greater than 1) stop and report an error in the rubrik "Wrong text_box dimensions". + If there are weird coordinates (e.g. greater than 1) stop and report an error in the rubric "Wrong text_box dimensions". @@ -31,7 +31,7 @@ Is the bill of type `A4`, `sales_check` or `email`? Write the correct one to `bi ## 4. Check total_prices_candidates -1. If there is no candidate stop and report an error in the rubrik "Prices missing". +1. If there is no candidate stop and report an error in the rubric "Prices missing". 2. If there is only one candidate check if it is correct by looking at the amount. @@ -41,7 +41,7 @@ Is the bill of type `A4`, `sales_check` or `email`? Write the correct one to `bi ## 5. Check vat_prices_candidates -1. If there is no candidate stop and report an error in the rubrik "Prices missing". +1. If there is no candidate stop and report an error in the rubric "Prices missing". 2. If there is only one candidate check if it is correct by looking at the amount. @@ -50,19 +50,19 @@ Is the bill of type `A4`, `sales_check` or `email`? Write the correct one to `bi ## 6. Check remaining_prices -1. Check all prices in `remaining_prices` if they are actual prices. If someting eles (e.g. phone number, adress, weight, percentage, ...) gets recognized as price delete this price and its coordinates and report an error in the rubrik "Something else recognized as price ". In this case we can still use the bill. +1. Check all prices in `remaining_prices` if they are actual prices. If something else (e.g. phone number, address, weight, percentage, ...) gets recognized as price delete this price and its coordinates and report an error in the rubric "Something else recognized as price ". In this case we can still use the bill. -2. While checking the remaining prices you also have to check for missing prices. Are there any prices on the bill (scan) that do not appear on the list? If so stop and report an error in the rubrik "Prices missing". +2. While checking the remaining prices you also have to check for missing prices. Are there any prices on the bill (scan) that do not appear on the list? If so stop and report an error in the rubric "Prices missing". ## 7. Correct formatting -i. In the rubrik "total_prices_candidates" change the name "total_prices_candidates" to "total_prices". Also replace the "-" with a space. +i. In the rubric "total_prices_candidates" change the name "total_prices_candidates" to "total_prices". Also replace the "-" with a space. Example: ![exampleimage](images/total_prices_candidates.png "Before") becomes ![exampleimage](images/total_prices.png "After") -ii. In the rubrik "vat_prices_candidates" change the name "vat_prices_candidates" to "vat_prices". Also replace the "-" with a space. +ii. In the rubric "vat_prices_candidates" change the name "vat_prices_candidates" to "vat_prices". Also replace the "-" with a space. Example: ![exampleimage](images/vat_prices_candidates.png "Before") becomes ![exampleimage](images/vat_prices.png "After") @@ -82,7 +82,7 @@ To solve problems with the recognizer we need "bad" examples. In the following p ~~~ https://github.com/clemenshelm/chillbill-recognizer/projects/6 ~~~ -Just press in the correct column on the "+" sign to add a new note. Insert the bill id __with the file type__ (e.g. .pdf, .jpg, .tiff, ..). You can find the file tye at the end of the second line (image_url). For every possible error, there should be a column. If you find an error and there is no column for it, please tell the person in charge. +Just press in the correct column on the "+" sign to add a new note. Insert the bill id __with the file type__ (e.g. .pdf, .jpg, .tiff, ..). You can find the file type at the end of the second line (image_url). For every possible error, there should be a column. If you find an error and there is no column for it, please tell the person in charge. ## 8. Finish From 324a56429cc4fde33df4d2e33791b6cc68a1831e Mon Sep 17 00:00:00 2001 From: Thomas1e Date: Thu, 21 Sep 2017 11:23:07 +0200 Subject: [PATCH 3/5] changed limit to 50 --- lib/tasks/machine_learning/import_bill_data.rake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/tasks/machine_learning/import_bill_data.rake b/lib/tasks/machine_learning/import_bill_data.rake index fde236c..863467f 100644 --- a/lib/tasks/machine_learning/import_bill_data.rake +++ b/lib/tasks/machine_learning/import_bill_data.rake @@ -4,7 +4,7 @@ namespace :machine_learning do task :import_bill_data do require 'mongo' require 'yaml/store' - limit = 10 + limit = 50 existing_ids = Dir['data/bills/*.yml'] .map { |f| f.match(%r{([^\/]+)\.yml})[1] } client = Mongo::Client.new(ENV['MONGO_READ_URL'], ssl: true, ssl_verify: false) @@ -20,7 +20,7 @@ namespace :machine_learning do 'accountingRecord.amounts.0.vatRate': { '$ne': 0 } } }, - { '$sample' => { size: 10 } } + { '$sample' => { size: limit} } ] ) .each do |bill| From b466c587fb509dc51ab4544cde65c1f89f7570c2 Mon Sep 17 00:00:00 2001 From: Thomas1e Date: Thu, 21 Sep 2017 11:24:20 +0200 Subject: [PATCH 4/5] commented two parts out to speed up the process of data generation --- lib/tasks/machine_learning/add_prices.rake | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/tasks/machine_learning/add_prices.rake b/lib/tasks/machine_learning/add_prices.rake index ebb381d..a6bca31 100644 --- a/lib/tasks/machine_learning/add_prices.rake +++ b/lib/tasks/machine_learning/add_prices.rake @@ -27,7 +27,8 @@ namespace :machine_learning do recognizer.recognize_words(png_file) recognizer.filter_words - %w(total_prices_candidates total_prices vat_prices_candidates vat_prices) + #%w(total_prices_candidates total_prices vat_prices_candidates vat_prices) + %w(total_prices_candidates vat_prices_candidates) .each { |attr| store[attr] = {} } extractor = PriceExtractor.new @@ -40,7 +41,7 @@ namespace :machine_learning do candidates = prices.send(attr) price_key = "#{attr}_#{vat_rate}" store["#{attr}_prices_candidates"][price_key] = candidates.map(&:to_h) - store["#{attr}_prices"][price_key] = nil + #store["#{attr}_prices"][price_key] = nil end end store['remaining_prices'] = extractor.remaining_prices.map(&:to_h) From 17151fcfc2bf7e7052fcfcf55a17ffcc22a72b3a Mon Sep 17 00:00:00 2001 From: Thomas1e Date: Thu, 21 Sep 2017 11:29:01 +0200 Subject: [PATCH 5/5] cropping sometimes deletes information, for the ml part it does not make any difference so better not to crop anything --- lib/image_processor.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/image_processor.rb b/lib/image_processor.rb index 86abb70..4225c56 100644 --- a/lib/image_processor.rb +++ b/lib/image_processor.rb @@ -61,7 +61,7 @@ def apply_background(color) def deskew process_image do |image| - image.deskew(0.4, @image_width) + image.deskew(0.4) end update_width_and_height self