From 9772af74f9fe30841b5c4c1180b6ca1fe25bf09d Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Sun, 18 Sep 2011 13:00:36 +0000 Subject: [PATCH] Added some sections to the manual --- jOOQ-website/css/jooq.css | 21 +- jOOQ-website/img/eclipse-example-01.png | Bin 0 -> 9732 bytes jOOQ-website/img/eclipse-example-02.png | Bin 0 -> 56880 bytes jOOQ-website/img/eclipse-example-03.png | Bin 0 -> 61286 bytes jOOQ-website/img/eclipse-example-04.png | Bin 0 -> 74049 bytes jOOQ-website/img/eclipse-example-05.png | Bin 0 -> 9373 bytes jOOQ-website/manual/JOOQ/Extend/index.php | 52 +- jOOQ-website/manual/JOOQ/QueryPart/index.php | 4 +- .../manual/JOOQ/ResultQuery/index.php | 86 ++- .../manual/JOOQ/Serializability/index.php | 59 +- jOOQ-website/manual/JOOQ/Table/index.php | 2 +- jOOQ-website/manual/JOOQ/index.php | 4 +- .../manual/META/Configuration/index.php | 207 +++++- jOOQ-website/manual/META/PROCEDURE/index.php | 190 ++++- jOOQ-website/manual/META/SCHEMA/index.php | 44 +- jOOQ-website/manual/META/TABLE/index.php | 74 +- jOOQ-website/manual/META/index.php | 35 +- jOOQ-website/manual/index.php | 8 +- .../src/main/resources/html-pages.xsl | 14 + jOOQ-website/src/main/resources/manual.xml | 696 +++++++++++++++++- 20 files changed, 1444 insertions(+), 52 deletions(-) create mode 100644 jOOQ-website/img/eclipse-example-01.png create mode 100644 jOOQ-website/img/eclipse-example-02.png create mode 100644 jOOQ-website/img/eclipse-example-03.png create mode 100644 jOOQ-website/img/eclipse-example-04.png create mode 100644 jOOQ-website/img/eclipse-example-05.png diff --git a/jOOQ-website/css/jooq.css b/jOOQ-website/css/jooq.css index 309c7d1b3e..01a1989e84 100644 --- a/jOOQ-website/css/jooq.css +++ b/jOOQ-website/css/jooq.css @@ -49,7 +49,7 @@ h3 { } pre { - background: none repeat scroll 0 0 #ffeedd; + background: none repeat scroll 0 0 #ffffff; border-radius: 10px 10px 10px 10px; border-width: 2px; border-style: solid; @@ -166,7 +166,7 @@ a:hover { #navigation a:visited, #navigation a:hover, #navigation a:active { - color: #ddcccc; + color: #fadccb; text-decoration: none; text-shadow: 0 1px 1px #666666; } @@ -189,3 +189,20 @@ div.tweet-item-left { padding-right: 2em; } +div.screenshot { + background: none repeat scroll 0 0 #ffffff; + border-radius: 10px 10px 10px 10px; + border-width: 2px; + border-style: solid; + border-color: #882222; + box-shadow: 5px 5px 20px #aa6633; + color: #000000; + display: block; + font-family: monospace; + font-size: 12px; + line-height: 1.5em; + margin: 1.5em 0; + white-space: pre-wrap; + word-wrap: break-word; + text-align: center; +} \ No newline at end of file diff --git a/jOOQ-website/img/eclipse-example-01.png b/jOOQ-website/img/eclipse-example-01.png new file mode 100644 index 0000000000000000000000000000000000000000..12528fd88c59701198eff344da2b6b7a8ff771f0 GIT binary patch literal 9732 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 hRcL?t8?yd)ScM0z9uE9CL=iT@2uURv*x~ErH zPfc}I_3oN*MR^G%cszJ8Ffb%3Nl|4mFbFL$Fz{*s%va4{^0lR}8@Q9QgfLjmUxL%G z0*sN2gechO{~UQ;rHNlPaQ2d#PGDf)2L9&+AF(Sl`Kp9NKR^^B9dZJFY6M^v~@Wtd^UqYTC~V zNFM{BJ4hv!BH&5+!G(nZa79m?hcw6U#tC3G?e*8~DLyrV&%Mn5CbQleuiK`5uE;Vn zGRVLEmp&aZMxg#%5d4PsCkahWZI*os7#8@yH1J7PVrjI_nURE+Iw59iN-;DvL>;kz z;AsE9^y~(-$-KC*PDo4)Bw~=8FRQK|x_(N`%#1X|iAg5-KZ-%oU8bR@FKTX1Sy)&I z)D9H}e7)7ld?~U(?ldszzr0ZQZrv>`EPevOorf)43^lR*fA-#5aR2yU0^w6f1ej`W z=4-4m0l^|rX38-L|F3^v_@X39OXKzJY#N!j;N-B!$8S75oj4`oWKI8VfhHx)OhiY| z4i!7{K7p+z44_{x$pzDx{sA$;+i~zt|<+rP4M2G?EdL zwI<-^?wVDlLJIyr!6-=d)|FM&j5G@=b^E;Cq!#}w5>*KztN$-UN1gVF0zd$MIH*Hd zCa(;BoU8dXr~pK+?e=#l>idYeard*F0AxTx83;WZJ7*bb&r`nL0>%i10@7#hU5O+*Pl1x;|TC*z@qzlQAEObu7F|O zETpU7g3jP4?Rbo|5bTRy zY>Fa1NFef&A(KYy19^+!6`~XwOi-^PQu@T=h7=PiRYF7!S~Bv_bm%sedKkW;jH;Xn zX2Mso+T-Q~evb9#?HvaTAU1%$C$0k3d^mF6G_%1|VY7p<0#Zy>oj9UuyDh23@p)_5 zNWaYgIIq3{J}OS3D1XwGR2{!p+LgMWT(`a=4}@O{hGr7C0HOsPF*A5xq(3-!yfds) z96rnK=0E)`O8l@9R8YAjr*x~Fyxd#%eGimow}240(8H$SC6 z^_R9PWQ*)*=dKK%mF6B+XB)fkJ@AIvtc)&UMGk)p*YIUK7SNjV@bgOE_w4^zjAgx! zIp2wq_|cY|J5D&{o&mYN3$WS$DFjQV(2*T^^hhD=gu1-nvxsE9X7!}fzAp0r<<}B~ z^~X}WK18m_{Mvbm(KFZq@^5~s;tZdyPCHCVY<+g+swTxO8QSRNxrAp~?0Ek>^)9Vi zaWVTC;1wAcio$AD`G|~vDP0m-Qt)xMM_^oJOC@92y8*D<&Dt`H#AuN z^bDP&-aCBLC;tdAZ*>V#nLWxvKb`_3bY5hfGQ)5au`El@y}n$%RSkizQbG)OdH*lQJ5!i5N%F$vpvkh5(SqH7~t=PFz-_l9Z!4Eh&xM^YCDn_Z_8F#Zq8h#tImec@e)aiEvp}x#Y-cM_V$r zBsoba{J8*773;&?6Z#w`%2FM`<>ram%*Af78~hGKX}MBuYE8El$a3Z`Z!cBxh>cn@ zoDhc=8Z&57UR+j^6|uxBz2P%9aU!Q7ZdYG4_Jdb-;149U*nu!tS3zP`rbcpUcm zY~N+_B305NjEZ`+2XYf##B9qR#)JY^--5sQ3UX@DVh||{CONy?U zE@A;(q7oW$xM&mx7iG#fo?p2S{co{gc|QX z9%sm;J+zqH?qe&DOIM#ip*D4etq9VD(LtFr-(QX0oiDmE1~6QJ3Ghdbv4tdlPI~Kk z`amq_Vg^6}#GnhaL8j9;RFY2|4D>2))*az z5MsQ&IlOem+CQ)m!Ed{#`*pUah;NEU@?}ie;q)iGee|horrumtC&o_^etN#udeZ3= zrj2ggcG>TmUWZ_McWoD#Ur~n~Qp`Oc;`4oszF|nsM0IC9Ou8IY`DF0czJ@iYzgw=q z;(C!O?4Op}8Au~DWn%LUZwsu1mqUmBQ+*P`A8H6xo6k_;7d)jnaK3Z8)IC0=)?6(ZZt?|0+1vnRxf( z4y4~^waxtiQ)>vF?{p%hxb$he%lFXX7Qh34euqhEWCjWJLawlX+2+9IspCYmu)7pg zw|iqg`w8|0Na#+VWgEWE=HRe8n2Vsc4d>}(*{gD&NEJn+H(tps5607%O3fZ)9LU6a zOX|Po>r3{G+{IjrFN#g~EIF&01DMPDe{bxG*Rk}59@NZlS}Y}4jHd8){7T2O5=)(A z^$31X{pzmC?0Ydr|Mrq&9TMvdY$*?uu7s_4^+_%xO@dis^7TK?m=BM^>#dsOA8E8BX;`bXrQ znT=)9jd;Z8Nmptf#0%&6A2%P9Mw~>|ci)7exjc+eRM&k z*5GWA1u@LlYX1Vj8v3A>wFEb}2_9@6*6Zopecz${u8QYz=))9Gp zUNsteFnA1@~^XYxY7iw+pnE zZkMtZ>i#Y#!X;A93fdCJGK@iGh)WVv&+e;VEr2>nnZ*AH~7H#&R+>8A{3vN&lE{hpO_W&(R@*QRXS;Le+`&9v{2s)Lw%$V9c`BVW zxM@Z3xCxgDV@jLOt!;}q7TlKTurCx9NB=-NtvS_$@MQu&*UwhQq%Mfw)UVxnZ`t16 zKjfXgli!O?%?W)uTGZjU6Lgy9OXT(dB4)kAmJsuXE4}wyXw?Vlo&^1_zNi80bG7hK zQOR5leBMENFP?j*RD+_Zs?MDnE>NR&PnC zIl4*#AH*T znxQk;*v=(}I`*Hqe-9Dp+LyHXop<`B9}>DUSp2VtXb30*8JcX`mX(%y<#W-zHW1t- zVBxaqL_$fWDM!B^){*HX!%bhua$LE?*Haq27e~D7^bD_P3gHkmRzhMQSNe1o8sb49 zh66j#RGV3Bdux5dKXFy*8y~OAM420tf>`uMPTH(pU34p24i?caikf)AbXC|=jF1zr zADm{ImRSz-4V?`qNJoO+wEQSV#B4YfTSu3_`|5DJX4l+q|3=5&zP?T+alsXMb|?aG zUiQ*mL9)a5s^3WxX{3zPlF*@Br6%RcmbDcKIa3xB6Q}w7{da$=at^$zE2Tx*(*Vp*th)_K}N&ittUvyIfuB@fFwH)LytH=Ed1SwG`!CGmCz3zA;&#| z>eClHHJU@?9^_5*Sq9*k41N`nM&(XOSIKn0{ku$k<>;6W4iX?PK@%y$%zJvCNaM02 z`gDJmXUvWZHHE&x_XT173ExhVR1*q^qmmBaIk7roxh9Ui9ksz`21>9`5eh(*1Vga< zJz&LN;ZJM-BRbw{phBNJ80jBITq*OUM*TxdK35MEAq|fxF9ez(B!gX;z9hI8pznnP z*x+!$JN@%!m=O_Vl)jZG^FRi64al_3xV4gSRF)3?wEy8KFwsz%E>IiY7_Puy z%>eGNf15W)o2G|${dzogmHd&jkDkBtPkOTA5Og?!ah2Qi2b$|IMgG9|lc&a;H}5_$ z-}zoU{AW3YxU`UP8Vn3o)uyayXo_bryyp7XNIu6owKz1(l@)3B_+Njbl(1peC&-@c zFM-^DCI2^0vAbn5ZY;7fhLN=<|0Mwn+-KUYVp?vnIK`vAR7`-0D(bnmJ<6)X>8OcL z`WPXNTL}p_UDZYILv%iBA^p*p=@0g61%$QG4`!TwbQR;JEOVyKqrAhf7Mdfu| zsFvlj#jM?V4f+4>zOEWe&UFtSb9Fm3v<`C0$<7bLcuw(0#v|mKJg;)Y`bnhP%qbYU z-qURO8USj)Ns7&SFJSxjPNi=AS%zHfMv;HpFGf@drvz2Kar<5Cr?DB6(6r~RQl+^c zW@mZHlET9R-2ZuiGTOY;2qMr@hfbF_Mpi`zc>EIK9g(LuU9sq}Mfc<-%{Pj68yPia z7d&Eb0k!ro1F?o%%)z)mSGxtcRt}bigRN{RfCIzk1|WpExd3CG4Z=L2WK;1$8XB9dKH@HJNz)%|#sHe_(-7 zGI4fJ&hfZ7lxFMI07IN892STk!L(W_>K(i4;)2HPlMPuTj_~UC*{-*-ZMA4BhEP2R zcnR)q*C< zX20(EgyC=23|T~)tK^mfTKDetDx~cSgz(@YhQ_M_gFz>DOwlb#$(8UoS`g~qOd&BB z3Y}>88p(FL3Vr^R^t+@b+lnFLFlANsk{7Astv5{MWL3B6jdZc(Oy4Zn$s|v+Q4oE&@MyL*B`k93 z(S*Ofww*mbm(4tKZISK@zkHGf{ z@88xliLY$F?l6YB>xni)^x9pCgfhf?Lzv+k?H4XFGR&yI|BQnmT-6u%ku)R~FnnNQ zDXF?AdJYSJAIrldFU(wVp^~7Ims0MtbPe7U%Cf3iug?CoHp60R($;9{Kt;`#mzVwl z?D8~9PM$Lmk6YsfZ?Vqz_QLcuvr8aj=lT7lqDChbUaqgu&%#~j1GzqdUpEsriuZSL!`-~`KPcKW)i~X6xPKNF839QmUlbjav8Ub!a;zGwl?KPP-j#uw2PWS@X`jhA?a;h`_^yYsd-tZMYtYWKm-te`UKq& zhyXsS|3XlC6jeo5zo_n5SuH4f~h5%SbOLtz?ALT9g|3j6K8_Ma5 znwcW5Tor;$kbn4};H|Lmea^SeM#g$wTq(=RK#aQAFwl^_7iQ z3C)SvcNF#JKV$qvrJwi^N4#g!v7m|QZInC9 z-=I$_elCNZT7Ui*s%&gO(6@;L?HM(iJQ4qAAYT{3Ch8Z|pcMOn@c--P1G{Mvb@-Vm ze&&ql)Eoz<+2+#-I<=w#0A6AV@o80{M2b?Dfz=r@(j4153)(;x{vOoZY-29^93ud- zYKl%`br)(y*}PoW#Q8A4pbh$|gfUVRWAjmZuBC+GtSeaHa1V>XAg08O7#I=)^LVu> zqpiKp#5fdy0$*a8S3x^AHm0ij>toslKmsLD8(UNa1>p}iHN_AV0;9sLk@66Utt$-Z z)MIM4K_?<2>ZF_FHe88rVe8R#cmI)M`cAvvVum4k4A{0@eT4?1a$PL~>@=&z@1N~xPV*+bCvr;&j21evRa?erP zYgD>xgXZ>hsVl^FWD)t5Rc2hUu%J zecwGnzJfk)j})AokLu?5U)VGQ1BIYq?%<%PqoZSt#o_7ArqfSdT|#}I2h7>oSwtLW zFx}NUud|gcF+kCqNS3KigaZy;Y9PSTJpjPxu-Z4Ix|FC^FzZ8jtj@DZilP# z_JVYe5SgOdrQcE)UA*L%rmID`S{DQJzv<3Pg+)_xbEmgHKVOBvq(*FCo1ZULo0yo) z6iOf??(+`zBmu-kT!M`j4~~!LOBIL{5)!`P%uUmjKM+Cg&KTe! zru+Xgd#E!dX_VBG33*+?;!;ze6pUn~!$*pD=aQ}Wn@M)gNXs%*2_U`!zDQ?@{pZ@QhARQ<0Gc1_cG# z-Ts!uV1Sz6mVLMi7Nv|Pr8T85sXbNCm;xW(F2fFt>Yc zFyF1a(e!+s#e0MykI#c3H(O_YZtoYN>L4MCQlRDB*o<1obId^_lh=!r&S?xsrx!A1~L_xt%Bp2?;|NqZOSI?f6~1wg#=4N<91+zK2QT1lYX9j%Eovp<)pQ zti2@c+7xdx0iwS_+rbL-goBt`A_JS*Zks(=c+tDlN~El<>EYnuFfcHfeO{f{*46?@ zWlA;QpEn0UIBwTm1rdM1pSeL}*kgIFdkw|XZ| z84Un+vRq3nlR{6z$(a%r6*b^0w85C&&kwtz*NUvGqJ#;priLOcq!bwWT}@3XInZx< z;!4Q94E7v9l7yxY6HltFa-Nj+r*Kl+@Rhl}HD{cWH$# zxqNAvl9JMP8~S~h@Wl1g{L+%RyuADjKY=PE{RRk?m$un)e6%o~+n$q!1ZYtqpV<>U zn?BUp{=u)O)e|Nll^!KW9Au*%Dw~gY6^F&y!xzg%$NJ-QBmF=Wp)&+Y3sCcjCg6R= z;VLS-H<>ts9*f*ic@3A1QXM{J*VSA4mXPjr3wN*FiSy`|+IRdXi;v|Tv{k~!;(B(D;5QUj{Mx_5Feld6at_$OWw*UBHj;@f){-6}SF3-<`NeMV405MfTJ7r-y8_rq3X%w!`d%Si z>NbU2R^N3EW%)lj2AP*7q53AJL<^7@!`ZBhHx_s$SnDlSQr!=gHfg2k-Urru? zjQmLzn>$boJHR|THkRMsp7HbhpY=-t)_iCb0F;G|jp>)9R+^(Fo^DQaYFCuI(+eG8 z?=nf8B%`Ix)#bn!rxp=q2`AGg!xtKtmFBfZBwi*)W8}yf+2IFRk>zu)e%%Q^2OV!$ zQyJcaG2*8N1|X}ai49>(yR@zSHy7agCbjaq=%^?(-REq!2<1c%T!sc%Brd9qmoCjt zWQ_tZ3|B)K3}(5$nW&kn!Dqh%Hl_(V%WwGXL+IUYOLpzum|-aqE5681pG%DCUs0Zv zN^I~RQk~^84m>zAf!^oj$$e6I+J}o~?g((v_wAoRt~NPC@)?uM6)m$KN`lCz2H@V~ zt#bDHxp`g{fm!3qHh&MuVWAN_{uL}b9;hcq5|9I+F|F&&o~|=puFxdtG?#MqN&PX& zMq}eobYwhz*RmRSZFnK(BvnW#LQ4QDi{3sKaSBaX^uvjM;J`@60GpvBYw)^zC4p=x zf#+*q)5Ok(th~U`XT)}iHf_YPA!i3K(+Szy$3cM~6@ev(ZdsR@jX-{`bL12GD`)cV zbY0J8PTL?Mp;B+n(z3}F#Fc|1G&@3E?^$iKaUDZ4^f*Vh7TqXEN=6nQ5n;65?PFqQ zMnu`Dx)@v#OjZo0>3?V=Y=K&amnJMGjZU)gSA+0PTP&r7uJOt{uxINX?ea7chjTL8 zqSnaIlBQTQ-}|Be+?_0x<+p_bpIItlfD3k&F?2ovO1GR-)Z7yyj@4bW{G>Bi2>?xU z(8tLrdh=b{+zTb6sA&&DugitEOOO2oCZe*q8sX#H51C_&p!j z6Et%DLf~`99D)aHQNd7R{|OMMg1T8R=+Gr@6su!$)}6tlf9ms{#S}AJzeDNpZ>$b{ zRK$Qnvn1}EX8j6;4kuC*)6=EC5-;pIXmt_qFmC#mm^2n~0<{yNASj7ih(Nlet-32+ z60|nHf?_CFul&mG;0TJdn+(>z|8$p@OW6(w;|EElViY_4dg62+xf>ZTZNVv_B>4tQ z&3`(Rx7+v^ILKiP3^N(dCsL=yP1C2dKXrQ8>EY= zcdel<8mn|T;SzT%|E)Xsot~)!6PTy`8tGSj9G{RN?C$Q~l6DedgD}fc&@aL)mxvM@ zQghmOjaKgzjt%;-lMDU6A=>_1^KR6q6Vw*FB_hE#w<+5(X}%c)oFqDdTNCvT)jjC* zCF^+m+tO9*RK?dQNc1T1t)=Ip{pYjx#r6v#4FxVPF1>Dh(*3Kcr=rU>v7Mb6kEXaJwEQxF zwd{cK*Av=0M8Oo*8FoyPz&!<}z8ly&)6__!BIt^^w31*9_>41Qb&x7%)$xSsu1OA8 zs%qDK_b>asD?DeQ9O3{uIbTLl)W^k^${$52OUo`_#W-*Gu<fdHOAbuWSL+-eTL9@fUsa4)SO_v)5@B@ZlikPIm#b+N9)Lr3E0naCcsyE}{~UF3 znxmPjZ#xMYx})=$~Rnx>|WLzh-Wv}X0sz@oEhqhq&lrd&_nIO zWymAw(r+95MsjP?g~<(E8)s}a0Ak;5&#bFr8j#_@o5Po5Ob<3xW;>d{ zsbLyw<6xDwhmew&p!TLf$So@cZ{kj4T%3T56j;z^khXX6^*tJq21m#&*G+->*BsM8 zSOylrSr2^IK%%WcSplf_o;5broLgi_If)5WZmmgAQXI3evp>&w90l8zyqu2HEpqWj z8@>ldF5aC{&LtSlxHLIApkUBOpj3ez@sCK1IRQF`0h`2=$CuONI1Z=tI^6se&mCHi zimIig#Xr@)t%>nZGQtb5;DAHspPs;{iGv|fJiljO>N|f+67LmXbYT}W!U4Bdb=DQq z=<|>`1$jR`QNvy`eQWAbICY8BEM+<1 zE3ghknrB5dLT)eFUvhC48^W*qT61YbnqU5jy+>Cl@)?3@jwY5IPIDgT!mKMrk>|67 z&yV&E!hd9J56nFFlS@{huzi&4bbSZh>3apV2uANrzBsM;Y(io@cU3Vk_4c^t?`*7zN*Y5yjlVXZaY>z9)))!>7m4d|936EH%%x}%?AsbN z{&7_$x}?+fCxwLO!u^RXV@}-h%#upE?VgE#drfvFEwb%uZ~hejy!c{5-Q!}{t&Ak7 zN-EW1Y$|Z&wRB`<|J*=jh%tlK8?j>#^{?#qxHgk-ZwOX0|FUQ6>)E_Rt!G@R;EGTv zUB-TmcJD@?;fkxG4qghen+3VU={q(3T6kPQc zM8LM)EEP>e%(h-s`VVO1H>;Bz$Eqc~jfgu)Tece&btPesVj)8{IwO#zBYWmUgq)QM z#n9V%dhuIsly^VyQ4E>(wFCW{O7jV!tKZfMRC>LHEt905?Qg5| zY&m<26DwPLMr#}jj>}`K3%(Dm$nQ1+`fBU$Z@FWgm2dTT)BiMo_2e=!wf|Z3`WP*% zLrI#erf+>D=+^6rUYP$FFT|E7Uo!Q*rk!f0c(c-Ky&PLqU2HO5+j+oeXZM;_75WKa z-;_JOVpzC%k8n_t@1-*0X-bJM?g%GbN%eKHyNNxH-Fw}43=fl{nB-)x6x{!?BHr8g zkwZZnqv7fvZeqh&VsK9w(%$EOsKsVgT%SZg<`4aNli{Z9N>XR?3b|y-4|?KH_Oi_s zo>k$xOEq7f&nue*{i6e&uKalPzDKt8aHol8jR2bK4iGc(Mf|8u?QLlWJ7IR_GmI~y z6i-Me7(OBKk(7@Tas;tR30(6vMvN1TsaH0mu--jw`0W#%<+MfA!fuQoHo&4TcSmFA`eaX8?x*WKQoI-u znCmS@Qke6PidSdT`p`b{a|dRae-7JBSC7;}jS762*>>%TD!hOBc*lvwBkAsVFwlhQlr0p4OK~>vTM4^ZvEjpMt=6*qdv+n^CB8 z19Ne0Eohie6vQ~I`vpa!5fb`i(3W7pD!6NLR*(in4vBPB6zsD+-M-8@M%~YIn|i|k zl0mOl&ZDL&Dg`)qM5s;k4_;2!4AkP7Om+Kff4Z~sM=N;jC2#>`Px{)`w@ZC`5g7$9 zsX2QbxnvO5B(r=FVn4R6`@eZl1_=5E@H6Ic)G~-?+cWxQW%R;M^G$~M_|{MR28A+Z zNe1YRtzi@IEl~-MRN|S)_JnBH2xQZ{FeqgILwoQb5_mBo6z~7Z*#08)!OR-u+S4F+ zauW^kCv!<`bHUChLUyT+)@Ux0aHfTecK|~?<%rAlb3#h|M_KUOwqLkk5%W-cAEStU zwt&*%z7>MgTJWcY6&r;ZJ~s+?x@9`vWyv5XiPznA+l9ii{VuKui@tBNDF=8b66OV6 zMSrPuhP1$bc{CpOHVA;6GaH*6+w&KuC%A$-R7^#qd9cnJBtD}}h9RWvNIEk0BZ4rv z*u6`@jF=ZrAq-Y--ony~iian`GI50Yuq>W{%>$8THs1XmTy|nOiMGH+a0v6^8GV?| zV)RGINQ;xfwmj{+nzcSOFG4eENcOZ^>H+Y5tf#(!IsD(1=IFI2$K7EH)9Sj}o>isk z=M`%PBm@nJJt4UQalRpg%<|$+Ay2?l}K>Ivl>Hs9hClT;9T{1tnhYhpzQjyMfTMEql-TzEzes`LN81DFWgpj)feFZW#;7q@_HRyna@ns5_#r)(eP;D*ZaK63PTWphmmVcl7 z@grG{VPy-l%nUO_ZNfj{k{r3m|KvdE;{A@&QCwGcI8TN8?bQ}y3kHMXAg^?&8Hh+M z9t&RN1$v(P%K&X@n1Pi-*cfkvXR#YD%Y7_g)3Yla6JBjP(66xCV$Lyb+koqK3fX!4 zDwDO{k}a3((_0@jpY{a$%4Mra9Q#&T$nHm>(4#v7=O#GFfBem8y)#s!Q$HbzE10e3 znQd9mjZ`z&Z*;CYpTOt+nw!#w9(&V)$`5B1J(4!XuQ@abHKql51<=>N(N<%XRuqz+uObO zyHi+9ji+p_E%Xcva$bA5q?$K8%N5#9S0JIE>N8eiDJ|=^7oqd6AA&IrL*yYvjL&r$ z`@Ulb#`Z_4pqf~vMtym59LfXlJ}e|sWR~6hl@KY_*3gwv zW+O6@@JK`oM%JjbFhy08x(ktgE$IGjX$cDm;8?jR>URU;4N_HI0r(VwDUkV-;~pe} z=JVtOd5w=hv|V+f(({;pS6WL8#lKYOC)TOwu!$@0#7P8wgWXN1GLL_{SlDXD5j;!Y zt!dL|A&cOp;nlRBw&x$@L85UMp4-6#Dt~dp=k|lZxAR=2FdZ_ zxV&Hvb^%fGp@YBSEioL=zFaGH4!?#ow)~gfgclCsL8Vkz&^8Wkhwh)(mLv#?yY$s^9 zsMYP(!5E&O>aW?{O->w3D%|wqE(;`1bHJG+Bqg{^UOT@~tWfVT`ev@N!VA*7IHi%D zV1!{XC2k;W0@}W*cfY6B1Q%*foI-&Ii}z4)Xm$y zOWnGyQtPCwG_ecuTtL&y+%ft2@+wNnB@W zMg>IWwLI#w8WbJObLyuyTs(?XW(wt#?9%E0SB#3EjRXes1*vVuYAgly0nddHPrkq>7u|S+2vDvPArN>edL_T$`dw#bRFj zW?SB`QcJ3h^UBNe#0pTir{#m~g{P|>T;aQmjV+;Uwrfh0+_s32?>4d>``4*}lyAp5GLP3yHJ1#3NhqXx_X zSXYW>Lh)Lq(wmki@p|ViIX?I0OY#l2RG&95ww(xI6kc3lm_VXt=HJq~Nu#u*;Y-&- z__zvri!xZTm+5Y*iGM3HZSuJAF$g1@mz<4BVNJgk{&*Ky_3zC> zfnWp?v_g8&;Zs=hosT^#9#^x~8Oc)9q?l^1(wtR$B9nzI0XIDxUXsTfrq%|UADA5e z&cA61PfiJL$1aiUz>BTV6^SuV&Zk;DiY?sJS@^?aiMl?aFg+U>&_Cy?({RN4)~BxF zW`M{){y0zMAy9g7))|VhSxjoDw=WCxOKMZg!8}Fth-d~6mx_^X)Q4&74Ta2 z@nxHIrN`E^KFNG}`OekF%tYw698BxSKw ztvo=}xz+5It1;Q{-Do08UP@d)vv-0M+u8c2HVx^|ZtNQW{tJahw#PhaH!(yGv_Wv2 z9-EBt@gKpq7LVqOO?ATPW~Q(p;!~q*z539dbU)zuJF(GsdCV8u*zJ)ZK{i-yKytgD zSGlK+-)1_tLp!lwVlK_s5&4*agDvOiNQxeVCu1dpPp58|2l|P5c$gf8&mTurKBnWj zdm0)BC!`%p926nXM$y4__mV+-e`cQc)D}Er)7Xy}F*oGm%J;uB?g#+Z3P(lkc(m99|$d_m8T>ImG(S>=9S|XKdG7 zOl^JVr{G8X^6Dx{W)LdccUidaqyWaoD=0_{5x2EbQt@pOyO^@0(mA`nK zV%oXjNdeTELW7o58&zgw*dsdTPCy|4Q z=xj~d7ADaC*ZXNwRW*lI=}!CuF&&Up>%qsBKmR?ZQd;Z| zaY4v6y*m)OZBJn{fAqe?S13K5*#}NJ*NFAI0kxLu3)|y;ivzhI8qr_=X~(kIy?@)& zf+dtfh6G%=Hrp~3*ya0|Xg`ODQNvWE8#UM{XW+vHR#;GXBlsqDwo17Vk9jw*A=9BgS9(y<(}|_K!bKzM88U^)(R}`QxK|=6( ziw!Bd`L-;Ciz7i0SnE^#7M%ftW2-_F-nd|H68CbeZ~s*&LAnU%X5izSCo{3w3EXt* zr1lTZ=5X*1l#~^l$E@4-3k$z&4ML1A2%ye6PLwsL8I3i%NdAjK!KJai*%i@#ZGiXA z4H|XK`5gFKnDx(sPEH(!|D@`Sgm7Z2x!HTRM2ehK5>_*cQ={dT!Nk{v#75WR42rXt*pDj&f^SkbLe&jMfq`6Uv47%eTV7_1^Qh+1 zD6L>m6IXdtoKc6OL#o8a8v|pRd@;R$Yozb$MWFezpaO4-4By@G)ylcC#py41X`;M2 zHDjdHqbAku4rHvd5}NsFua?d<*@_LH__fV$yML1lA%fWyx$_lM+d~JsVgr%Zis8pp zspEEK?L7NpuXORK7A0zAgAsE;oHM^FHvy$0Y0Fnm*4oR75Rz_v8gD=DYxEOMnR{ z=h#pbEl3)+-sD9Z0P%{1voNpLNGDsli=(~m8$6tj?5MBi7vQt8R#irup8Ri>fQ6>q zl2o#~SL@+>e1^yjn(0Zq@Y^c~pW}5C$U`J)pob;cR~kV#dsAbKUEUfHO5lnS>-_*@ zoAt;R5}Ziye#f+7uZw``n^Nyk>TtKhbN4Z%p}H&|zip19!sr>(>sH6gNYSKXq5Tid zDYr9)rc@`y*v$Ps{j;#llfaZC@y4tB2ULy(^{;6uY`sa9WxeU*)S82^K9ZzK&ZObQ z9}g!u^7RN4%7Em<-PT(B>uRYbL6*>^yZvzI>fKq`&#{PKiE9x+oMM`#zaZGy>CJ$G zC24a{CqC02T$4?SO7eudw+I_-FjyQ8nv$g1vDIZxkvI{9Oc6lR=B+359W zJT7yCZh+65bm{-r&JVb<`bZMx`zOi01o=4#>(6tKn|VLvHC@uGBh8GkIM{6ZMLQ3X z?FY8~rjn~g6n`-pIgP15Z}b`&6}}pGf)s3Dl>$WWuy4o5tFywScQlK56E$L@YrmPS ziG?yBAHB8R)km`@)3Fn{f$x9Aoo@A2cN$Rl8yyEir-l0ycucB_t4Ta*I&&?%l*OfT zT9+gJHy1$tr_4fXTmFEasG z>}A&6{-1_7a8yeBnngS+2O;O~CLM`IteisB!rQaPr`>0%d>k)y8!qmsb&zz)q&6$h z?k2n)z0P%CKV}^4B6?nd``&hC;;OesaZijm9vu%W5oL=lKibyI{|SiAmWr3vdVWsZ z+$>^kvohLAb9SQy@i)7VuBPh(MS~MUumHi`-Q6X)LvZ)t?(QDkT|;nb+}+*X zoyJ{ullytkb$-I$-xiCm?y8!zs-}z@^P*Z&Lh%>+a4;xkiLjvSz`FiIwjFB_oXvs0 zHWqh0z6~z9`TP8o%mlNSdU$e-yXj!w&h5Ql_FH zz(S{+iV6d5y50e946m+#nY6&`>=#bEO9Si2M|N|!TZZHAHKSPunE|iFec~U?52??O zea7s}?GL#7G@OAm6I==5izkj&Kr%xQ3g1kLskOuqY+rxjBI>X$*M}_8QsS_qyH;H) zi3a0sYG0dpYaq!H8HVd3MKHhP_XVG46S4%_gWHBQjx8U=Vy;VcZSH2ubIQFPqZyJG z6`nV4)2~QCxt8s4>Ix8Qq+GLM` zE$X)zJP{t)3$M($X1`f{zS#Z4pFioer7YGd#yQO4WqPnE=N+&9!c21HB{kyb*{gkn zctX#4=5ufL58m%e5Jd&IKdExNCetFup9|fBk^ea#(kg;8vOqyk-Q~>7voTPk4LCd8 zpWH`ISh(r4v**8m`BZt}e7OoyW*Hm_oN^sRr4pvYoawGXH3;e}h%$Imxgm_z73}-% zM*=%jToL3CRcf z&3L~G5{A2oOQ=R5I)cWyyJwX#EY+T%|FT(%(Q-$Blf{vU{4{ZU>A$w%ve4teTPKey z7cn(o<9Cj$Ipq}K%2U0fHqY?q7Wi9-HDbFfU~(Jz=4G)$OefM-0dML2Oyn6~v_y`$ z^cC)C-UW6pL$a{|zZ7~X%EIk!FKAYdJLZcV&X2+I?O3_B!`#_~eTCnuLU~LCM|b+l zN}PbDp}VB9x_Xzqd)%=UKd(?MD(>YKiQ*YxX@0#XKatkA)@{#PK z8WR8bHCZvL(Z9P{!4cUA2&khiYFMd0m`j)iVIzEYWE6Zlge=$9FQ4w&Fy6g;Z ztoQOH>a&7n=kS`JWKZeAyQg%OI1&L#xe{-ifia6yZY;Z5ivi!9Prrv*jA)$7TG z%e*1SSV>XuEOK(I<3fRcKSzD{$x6QnABGPD0Bkq|xkW`qE-S9QGc(c{I%E3z7DuY7 zayh{mT9eRL^i0m4%*|~K~bf;&f%eA~)p()Ka)LZS-_*YL|a8RPykE4Gs9oF{*E zcNUk0N)a%l+Rt#;b*l0HmZV1b*yDYb6!3PVMJDYjEgV^#HYLf%<&NzkL&z^0TD}S!?EF!Yq`;!c$P_t0@2S4L^{h}D%*vPp2oJl!&mlqNl%HK%IRo)jnnsK3kIO(Rz=1#uFeZ;vPi{LQ! zq}Avb3A@SlK9#51hHI}>QdX5SRAOc1m!1pNzp0eWap&85p~6bTru_Qo>YY*}7&VKC zGrA}tQ)P!K#co|xK0?N43zAkL>g?A%eQ`8}4Ty5z=Ba%1l5!$`K-k=gWjK}?Qyy3J zK~J;O2?aGZF<#7lk_&8zaBGtp8uh#-7`{e>)5ZMsTuM=2^qn=p3V7;exi&w(A~nzC zDUOTg1!vcm1wPy!fJSAysvySLx!&tf3Y=`_4O3zZVvepTw&}=)Km2aecT!nvE#^<$ z@n$TWxroSHZ_%PmrtGO(Tm{JL*Y^s80p)IPxC_GCN$v8&?4eoNr^#_P9|?!CpqWeB zGpc~OhkZBLtQkdwJ(w&EMgweyAkxek;Kp_lBR^p!=2SK%KPR`KgZJiSP&|S zb6s7%JD+Y({*;yyp@fM$Jp{~-w_LDWE($m~vF6H`+{>QRY65c1vG(@%fV@yKrKJUm zl>1}p0|gTCcPZ^epYndBl$kPG++sTxG~0iD3Ge=W>>jLw&<(J{@zHf!@hGJ{7?|RX zuw3q5fG4U((%}j?qYgA+>~0nVa7Uz3kQCiJ-a_&@GezM?qkM)kYLUKqfo!&j8(Pc} z3ndk593n}|rdIteO_s`j@5Ho4l?S!=&>oTZyCof#VNA>TA(M5Jc#5IoWDk0@!?ak* z+PhVr#P9g@)iT-gItc{n{r2E>wh6Ydr^;CD46p~H3K=v>M|l{G+ip{j@!^@BwDdI$d>5|)2`gxa-(CC;meXs)zj!>Qv(k@u!4+|TE;NZ%%ftg1n zGfR?LznJp=_#LNdcy5SAku6?L2hg;iYoVZ_@!oddSx+er)&b-l_Ek{luq}PgLm;VU zy^d52oI4Bacu@xT;-odRT{0h|t%|HS>y3Yboacx^x{>N$Y zZr{vvq8-S?EmxoiG~{9`YSK5P@e%Se|701%V|}7hF}Bn`6`|fQL=UMfMLWoFLFzR| zpN|~VE_Vii3Tqw>xe0+n(A6c~hAuCk$|-t%yM)zmhi7guz0rwdICvMd8}DHx z$9GU{Yb6wuV19+RzNpEey?$bzi`s*REES|dCNJ23wUWVU915#-~LgM_yVI2O1VBsaaRlJI$A=gCP8VW-Q^r=fmc%{wRy38gm&N_4v3K z*g`16=2O@O-s*scd0>w21`|_})S|pvi#7FkeD+9syqVvBJk(nO z7L66}6^|sJ32@j_YzOt=t_)qXIu;W936k*1XIB=D&q?y42r@5(waaooZMwe9a zAQ#vVmLDXjdd{Y{Xo;Qosf>ouhW(MbIXMDkDSV*;Ne6DD8JzLeh68u=@z0$~7p=eu zh$6#WYN~;+S%IaezYqZ0A(5$PRzEiubg3mPP9~4f3S1bKtS9_oIF?vsCxESv-?cqD z0#gZ%_tAS-UY&R%92eTD-955m&fF%i%SY_S+W4qE_z0Ai5COA1Ewo;6$4T#Ffk^@8;p z;ZLlUK`NBku>LyM{yTmOUK?0Ouzfx%eif^$wneNK?P-?*Qng;iA-tOugR02ZqE2`H{c zN^873O1Tnpj$6)V4 z=!n}3o~(!HZjCijn^8^F=pS)MX4!)glV^jR&O2TPQNPXxiSv5jre#rtKWz(|3i9B| zmNgMB_^~bHCtAn~_|$Vj^$X8#KhxUe-tU{a=j|+iS->#p=@|mAfR;^k^JwiZ8r&Uj zFSI(^&9UbRqE>Er-*GrouA?mn=X$POT9VG%Xn1$r6t!Ej49Q$@8z5zY)xS0Q@Tn7z zy`n5t?<=hQW8!6|6W1(?A=!?ytXd9OzqOvPt&h}-JE`-IAnO%-RLDu5kEq7n)|i&p8h{ z9dRyY`s|!L^SSd5%<=(7tPjHSd|RG5n+Et+UpaZRC3qKb%sWu<-6NAqOG`?dClE&> z4bQJ1-#8B&Z(|WfU1Vf=m;8(3L3&8V9F`# zt0wp3N*uE?w6BITI8BCaNClz z2=8Y(Xpms3(k3w#J#sTa1nFbj&2#|Z4!5^W#5|ZW3`Nja7FnG6Yr>;#qw>|>S{Tti zJ?uITksZf0g_lpxb%kbb$DhGP3!7^)1aBc2A}7JJuSXc*K^!vxE2h-Zkc>@M8Sgzp z0Rb1&74lkhh{WlxTZ-tQMA>uJh4qdBr!`){SbH-9nDoqUhPh!1lQjdYaS$r{e!Qgf zo}`v199Of@7n~Sn;-$%I z2eeY(&+yyZfjiA~OP1(83`J+^N!(}^X&)+VnNZ@G0i z3{E=13->tlXiYpTuc?D(u;OGmf#SK#L#Bt=2rKIyy&Y(nMy6COdzPv7DjYR+<&|y5 zGTa;XjX#lAgL^OSaZkwh6aTVa!)LdE93Y<*56++sE;qkzpU(kc2}JSo@DPK~S!uNL z!VWZ?xK3fUn19yMy+OPZYOe4p4VcdY6TtE9v6(n4FKJS@4tfaeNkS6x%n&@$m65pj z^PeBLY2n5f67NJ4f+gfrv+?!p`v!UnT$Cd*`%D;!By>vte8xs2Iy32<-a_T#5^rhy z@m75Dslg2(F%Ph7`=k()nO>%ZP)0)avy3FO1z^xYaUu@7Q7#cCPJV_+Z~i8m@;T z+l1gV-J(6AhZJ-e`T?D6L(NFhB9kh%V=R~}qyl}gqM<+FQF+Rw(MSB`iTsZRDGCnu z14dm%t~A_UTKEm^UYk7cLk8r3OKyc2iZ}*!It-?;HS6cNvK5^L%npADfiF`~YVEJH zh`=N>f|MY09x5sbip1@ERV%yK$DC!<6-}=&)gDHR%~nl$q@>87F%^J{&hrfamzyRs zk1CBEPqy$^ZZPgVt!Eg!YCQ@*OJsAToPjN^T}u?J1N+pkGz>K168gnKO`Ed(m9GjM zp5RI+*N4l^eo-s6jlaH2B{wLty2BA~)AGDNp~U?H6Yj_TA?z1CGlNxdOxQf%Ivf$9 zIS7d?`9oT7*q7ss7JCWc&8#`iR-H!H9}`-06Lg>s=qaev=TO0n@kg$&a>ukvrBI1t zB{?*jI~_ZGeO4$STdHnMC&)6s%!^8Z=Z&o1Bdg@$PquQ-@EiMPP8F3K;>E?*I#lbR z8aoAo6CavAsWz6Sx8ZE7uX~z)%Z+P~Mw>oGP&)m%NhBH_Ih%>iJb~Q4GK!Bpehzc9l*5JLSZ*cvY;ND zlPJQ9ecOegrL|D|e$>Ochah$Sg0`^s0=FbAx8;zGo=g9Vy`c3@=A0^9L_IXf4BRB& z!25BrjNiCdj94W=o9FXNZ24rGcAeE65r&PwNv_+N4(N&5*>xDEJiSM++NNruX(QhbeCCs;?8oj=0V!#ky(&TS>)@`^EG#I&orl$aS=bJ@*G| zzIO*J4>NIHo(DD?rgi)w&+T^KMA_GShaTx2ZZUm2`K(a35-Y2zm{N$-V5aJg*szmm zO)ReIT@Tq!r%kUt-`q~tc;*TfrxW+fPuU-bF~NLVADGrL_`vfWSWnnIq@Si}Jw<)e zMX}jx+y@--GWoJTmyVouG^d{dqWNs$Ai|ke-PbZXX1qJwHZ1#(hT~YQUNWC0KwAtF zzSgI-(%+$he2R-t;vcezEBaa*T}0i~bO!6(G9upx>%?@OtNHl0Y!4V!m+Wis9&O|a z;3gqd}7%8^(Z1+ESdEvcl3_VUt{1I z*-`gjo#}4$s;ksKyj9nlJuIKSyo?a5+YTH&EEA!T%F8=J5EtCe4$DvV5VEL16$}#+#f^yJ$ zjP1lVL%H^sO%H^kO6Hqho6Ev42&Cg|mJOkADqfW10eU-Z&B8lo=asQgS5IF}R|zL3 z+eedW~d z?N)hyQC*eLfN5x$RdS~7grMacDta$gOShh=_;>aoqM|w~qoJyh7nGK`E&^oFI!&TM zh;cQsjquA1d9|nt!P2s{DaLq9sbEJ{UtO&qz2^C(Ea5XTIC8=go#1W!bJcUO}+?f*Kuh1CwKQ%jkxqs=1Lnyy(Dy@(w9~;0Rb@b)P|*wH`^y7E5#JLr-Q&*8 zXoeH)i8D=($EJd(w1pk_w8Py;@xO)?8*Vyy>4m-i7hZH$)3fm>P+nxG7et;;r4kUs`6A ze$L?7M}D)tv|H6x7Y>8__O-q^laAn`i}{D`)MF3l^M0l6Yyhe9LZV{6e`*xduVqHm zanQ`-ykZqbxiy++f(w%#n%l2Bgq+>^Z1mJ!VR{{_XS_VAXmRNi%@tyuSJgiBk-ka< z)~_XTe!{_NNZ1PLdwk7QwJl2AW&hS-f14@ydtAVva|nmIE|I&!6VqcEquqA&lP8Y( z7z)T%$0 z@Uy%o3Smc0oP1FLF1HrkN$KE>44~4YFAPmdBgxkirW{+T_oS4P!M;n3(eX41jYhLJ z%CR7_Iga5mF%e@3_w+C@uNlrDTvBp_EqSwhEBfdhtpnSrME; zQ$Vq@%q4FE90k-#N!_rP?%0;OA;Ob#?1OH zSvz@$r zor&}whh1bTXSHS#5P?FOyHUl&Gt+%GMBsOZ@&{`;*Qv)tcc7leKknC4a)9A7Bu8C6 zz_9m8K97s%ecJF8!vpH|EB*|E!Wu)cw=n7j4-cBwOm}{Qw+vQ=`F1lXjRYf)1!AfZ z&iOv+qV~DnSU(kSYugWptv5A>^ybtz}I` zcY(LC!l#Y;K@Glo2)Is%D%?N$AG7EgcQ=B{6OOW(Vq)`Up&~orV9{0f`~Xg1)4*hP z?M;IeCuC0UJ@v%r5yL|3VwLe_^DP2X$7oZ7%zFZ4u1}EcoYsHJ3P@ag%vehjRj}8m zJ2_t?3N=kPI&IS#sIOjKWx_;GCq>-ojPmh_h$bLdKfv*RTZuo~ac}gCu`;RJs3&!9 zSGDHU8dCx7QX|2m-{zQv>>D%4Dk*%}}-`c9T-V&v-!`iCRO@hO2fZw6*e z4J@rlVY(P`&$uwq@m3g(lvhvi3&90icP!-V^Y^?Hs_D`XDTKaTHdSw$&-6L-bT>a$ zM}1k~KZp7%UqV4m%1=-AEc0Qv!6>`9uxA~hzy&F|taSzFQ9$wr{ctHRh08j~|3hUy zL!2oA);|E?c`lAdXEMK}O@ymHfeAoxElKtQYdXe}Gl0X}_I>l&0Lpj@rjzhOQ;$x!iQF3oT@ z{R`Jdz5fPX9aCm-mc;Q>LO19AR%H(wu}%YDY|X_A+#xi8c^nH*t4@RI@PWzK;YsV? z22Y!42{hrv3j)pWD-kTXqc%A#IM0NK>i6v~mcDo7YPMs;$ zmu~b;?_iALTk3n+X)abz&Ni6JqlM=`qLAf&#DVVjy`{gZ9hmXFa~NQ*oBTxcv;6@_ zYQcGCuVQEENUDVU8qWJ^37KN$`^DkdM3vUa=4{63oUVmIf9AsVN^;T;rM~P#mrawN zVgeR}@3paIpo_!5rH?6<4h1gq4s zwS~3u8!Nomm^Y@4r|oKGZ2RpGUBV|Z5+y=Lr_&NALCLMIMjo(381%sJtPl)%7 zs~C6UG9Lo(rK_H&gH*=kMEY&x{UzfWot$I;q06!r`2O%}IC5yOdND9^uJ7?$jpJhk zaaVN2(`wC~Ui_Z4f~WRlZqbnAk$LAZTX*Q9r^r@Z#s9XlV{itsO^}^Zr}dakXXR&~ z!T|oj#URhy)hUQ9{M-(2oXu`qf}GJ!g#SvJ)9z!HBNE{t)H)t1;(44hnvA9hT3DQT zH}%-+B4|bYH2L-yU`@pPC-B%`ZmQO>*W$qr(h@K-}hT6aAWVzT723%|L#-9nSG^;2Rq_)#Wj^_dQ{ zU#05;P`GalDq1hhSY*XCxf2%_yfeA@W4wjQ9G2PJ2h|hd0va-VdDGX6oSY)bvpxLw z(gC$haRySQ7`MHKsVJ33y|YS>{RjL~$WCQXXKcaQE^K1+ZllxrByiVZZsnt?Zzyu7 z6nbO9;G@xOd7>fAe1KHIn6a|-t8Vn4r1&2nTa*B;Wa%8P7>}ZPNT-T`!e>mV-9BGE2%okm zm(iOd+a0To{l51$td%NTuf!?^0dH7>u1j)d=7T17x6QlnZpA>`q8n@E(+ygTmP234dPXak5F-j)SE`a&(NdGz>L_wby}W#L9U%!4$NKXES z5c1jI7nB=D3KI$KGk9h{#Qn|swRx$|7*i8EbF4au+vm`*m{|=VhSZqyhekFhj}o`F zb`uKE>ldMeZbyXADE3%rYygEsfw(gnqjslc&C=>P8*d=6d@nO`3innlXv>My1vRBdhT0vyDN(ciM^jh{5Yg_n9)91dy>JlHwVmz1GL4o6CmDU-(B z({D3D(8^55;+ldM?#0t&#-^rJK6jXMTzl}3NGfo^NgECh?qSrFucyv@27~n%s&FuT z?w>zlU=YxH82w$7d1!ioa+6C7Y;!)FQR^W(*^Wy?iepWI#Yqe%H`GMJAlESx+0BJPEZMSGU3>0~WHHv-H%rb6gDtE3#H8DJw5jjs9 zp$)J+ffc|@{^ZqucHPf8W+b|e`zSx6aD~%#1YzZ``kBwJKUXv#xF<~iZ7i|FAm;kQ zFnCa>>D`qkRk8CunKuOGSor#JW0&XEobLIR$FZEAT*sa0TfwvZ#|lgq%0=3;#Sm4v z@bZai`FgKH`LFIy1dJzsoFG! z^N*d6xZt-Y^dn}+t6$DmHXeOndDxD8AJAvw(EjL}h+Eb`G%mNTcCt9hRc_HHqa*Hs zszjj@YA^8vFRiv95)vGyYq+eY2f5c(-UDytjvF4c>A2D9Vl@fMXU`3C90X>cH&6H; zz1~n{m^@Lb+!9Zk1Mk;P>(ldk=7(pX_kdD)e$zwCz&TotJ=i3plA}uz1OG8XJu?Y+ zoRK8~5lrKUO?X#;Uq+4ofETUQGjx#MJ=GI_cNxhL5X~7u4=-~u<-VmnEQT}i-8&^u zAsOOd817wE@UPyca=YEm?7dsC;Mn4y*~r%tV2&b>9?ihl-vQzuhb}M?9kld8Pmr{r zzd*&1KxKYD9{fSsg#TB*HP~=mg8b+jM@o@Y$^nmWy;ITd&R5yFP*ZT zlTRTDB!&e?71iGzjNRSaLyr0ZD&NFIKq&R!R3dPdmfk^^XR^rTgBTp!x-9PH$poc7 z=6V|f*8h`=ibv1tL2Z`8$04x;qyx)Q`R{CKJF`S)~(PJm&BQW*s0${J4|yeq0Pl%A+u`m9kiV>~Pxx3hw>7 zxkyN!CHyyD-)EddvG8r!w+FE5Jo!Q42&8C`Uwluf`e8{UZEqmm@YtuG2*c!ci@>UY zy&JYtUm60rW?9gpvcOEmpvxY z4x9Zaf!=4hAfdx%@5v+^IR8%rc2!o-{LlZBpB7OptW+|M{%soTBH$|y&n=S+I?LCP z9(X*S6c8J5?2r-P{B3;BKNrXg1UiNK@}0@BAO6?#U7=hyp9f?DsHTt7h2>IBkZG11 zNb)6>l>>G-|E+?>4rLYNEq^F@Ys=lhZ?Xd1;$LD{0Amn{Je?~x9b>-c|>pU(M?Y}WTBH4zXLDiBM6#9cD!xDX9W8s@)HzNeU#r8v&^+*m% zc#wiN_KMwSzM{NCZix9eIF0GNe`7>Mmz=a!T2ZS$WSw_*ErEmtGy6k3sso6vC|kL% z_2TawSiM7F&PpA7N-4PncK7`EVb3CSHw1NZ$8oGFj2h_U7qv#!oObfdbAcFE9yNP(zQOHo zD_K4B#zBeyo{wBW0j+F&;c+ZT^>R0jrsUTIkTvqb1n;p+?qQ8MLgH9|wsYhD*|T@x zjYu0*=Ip~D(^|-FtO<1TTLz%5TNRP&-});AVQDTJ9|yHd%A_reD34#wDPmIq&DM^DFV^; zu*vZ_XT;O4rMF9u*XT+fGM+b2a+VML9AT!d8fnw1Li@Wi%%vDs=F6g1*M;DJJMED&n&&iaL${Ne!k~PxCad`H#DO zo|Xgo1O->if3MASYrz{PVA+ZhML{e0A(Z*?iIhC2%?W=?4R&KFE)-*NXlyj?89{Tw z%AgN$b}G)DgT{PS!u+t`H&#~uOxWRm3F5JTv9``>Go5KOp?h~d6?Kk0E1Egf6a7Wp z_lm-i{ttFK|+wzP#j|}OBC%CAn3b-e|z?4ctmYu%$M6-k&3}}}V^1R9& zskQy`%v@0RTXmx~qC*WLm7y>zTqJmY0dJ>2J=x(9kuGoZ)-wj@r!I+8FODHR56W~ET<*#}pHsXKqdzwzR0Qo%n+1nw*MC;V z)mGa5Pboa@QALm1P8jZOhcrG1<0_6ME#U8^vZ_C^&&5~OI5t!m`(^2w8G~tXNu02S ze8OKCzItD30djC3yT9*L0$qmxcmRxNYLB8&Q4}e2i8nu387q#Vyu zWHMh`Y?P>E5S%yC&dsTep))b{g8I$TTtsj)jWz1l%4hdz&a55iy~XMI-u}Y->z$a_ z&_{)!pm!Hy{)hQj7UQ%g;Prz2$VQSmnc9VRE6NWN9+E~ z#-T5p_K?qSWSrX{Z~)w$xOOr4)AKO9C;W%5VcR55%{NmzR8Rd1!)240hWhJQKneGP&}4=c`T9>13n(UIHnaej9h zer&0(E~F@*t(*4Hi)1q;g@qv=J==HEY~U%Prs0ga`Z=9w6wSVU6M;5XSA&zb%yHl~ zgr}%)NtULBvJ=4wFxJF%s)wg2>Cp z7ph)s!e~BCQnN&3hZ8SO@=@g_dWXUJRPE@$!++zuD6#_T*;JE(d=YVLZ%ff|7+Uqb z+Rp*CQjT>esfybB66OoDLI%4?1-NpSq;ndrX6`CXRJf68T*Dgw#(X^VUoPAVWs{jJ zdCaG|EJ;5Fq%qEabr@<=L@5>#Kb%$bD^@9gSRcT!9JB#OjgtkCFGHQ(i#&x50<{^m zE@bC>)m@TtBX@W!*?8LA6xoDrRPjqvZgY?=i*cjW{X5^IgUU)vsjeP*1Z^+iF`4@H z)X|qLlNjI&qyO1E>*}e}!H?JfSjDlhv2|UZFJ31ARvMa`>aDJfAPRTjRWTyzza7ya z+n-<)WNqky*s5RN?mNgcW$_&cN)qxwRM&XC?zX$JV%u(6|Jk`Xu68&|s;UE+rWt}B z9?xL7EN|A+8cLd)QYtEFf=J?%ANFf6H^?mg_3Ky3-@n`?G0fq4bcpKz>$OXeJ_UZa zcO0eb#~=t1e!m`1h3`a%m%#mjr3bwV4M;yOGwEnyIPrtmsAim1E~HH0Rb*4s;OhHm zU^iJr^FmO76AbzXH`OHmV2*Jl;SQH_cS@2_>SC`w%6}i4mQ>1=iLGPJ0(O*h8Q5@} zQ5If!W(V%b>nhEqp6;UO{rl}7(B-H}Ve8I=%au9x)RvEez9+ursCv6R{|v*;NDZ?7 zjfp=YcP*_w6;&Um4y;|(%7%H!sf%I$hk_%$!|lcje(cTv=fnIrNWxyQ&l>$XYw$~s zaGKbWj2JAkL^AXB)hL*yfB%Xv!_~GNCU;TD5Glzx(M6SyKHqcxzyy$iz9tj`t?pDg zm{#uHAKT}i{AV4Rcrya!%y?Wea5tDdd79-qSoVAy0vS= zRcDFDJoeZ057!P3W=xnkg|=E0mf3yu9WM}Xz;;vfaII5b_uvFTl@<01pt|l@tEk!% z^fW06R(kD%JyJ87^aE_TX3|~N5Y9>ycO>zLCVG>ddM1;Cw6xa{N;|^30dpxp;n!0HRRyd$sCJNlHGZh9UWElvnJ1y z6joxco^+9jd7uRpi0&4(E@xy)`K|LUVLCc9BIain_yu;^zv z@bT`-ydT}38>JX;-;d8wU{9}nd#+U1(H#5jM{I6(HXsIUjf~Q5&ElNH-we0$Oj$01 zX}X+-!SI@4$86u#v3@^`2n;Dm;odQC&b%|G!)^4_v}udEEk}>%b75xJ;eur(p&mIjS6RF zxs3;2m?{wtl5dUN$9LUj%&0Go<}Z7Up>%!(A!H|g5~ke~Db3p{(CsK_Aoczf9Dy4M zbF=iQy6qa19;{&~I!4oSAG6Bvs-9>6xx<}@kul{w5|1}r7_pqR=@+quN5&Aj9Nv$e zO_CW|?ua0MD{>Y_$(BaI3?tpJ-4Ka34ce9mX1^R);`Ky^h_+04esfIm`vu_*9?$RQ zd~)W!_bk(qA~veA74>Fw)}RgRABkSGbt!>0hfCKCvM-yc$1n*T23q)RZ8c$cr>>>( z5>!nZr6(sx?5>dCfZ1cf;`^<-o&g5W-P9LQk&w;gkpwur<>{NVpTrvmpbc=Fmj;#? z(10cnXZd;;+|Y5BQ<#`ne>juh4*e|z6>hJsXj?(j?{nBOxxHfc#>L6X{$yNBhLk(0 zLY>Ra&ptjKYZ}w2@{6{Wjv@OK`*XaFsNqrDn1T}dqzJcLy!IQ-7z-1ge!Fs?t+WX~ zNsK-@YYN+LZpX2 z+ddZ|-{=owPvmy^+qr!$+Mi^g)5$W{g)!%uqdpsk_vLv8{98g4hVT_9@~YZ>^ZV${ z2a3Hm`I;6THn?dGi=kaeA#;)3`bZIS9)Xwd%>L&R-$OqSi^4q;C5HFK9{3uBxTX7%d!Z_|W@$=n?(xjLK@T^xNvm_b#u+-9Wy zd(W+Idw7%5FEj1tq|Wm&-3t9Hm|)wLG4|`izvzl1BdyK#LZL)gBfFXrkkABqtLw7W zI0o`5RYL8BiEJ|w=J=_-pjwrg)O0!{1?%Bvvy@sa!{meCO9G)89{PxaJi~rNW5HM+ zn07oPke>XaJ8Add;Hg3JFvb6Yh%3wwL~g$-Cr`P0Jb4(;$$dCO!_59TTw3M87v7{V zExm64>b9-h;ebknf$%Ih=WFQ{;qsDO&wT0ZHXmh94#z8)3Q}g9vL(+lm+4YOo?4Cp-E%_uaxG zI4oJ(P=-)=>(q6byJ|IaK`-qYaj$27)9&Fp`Wy09hzW5E? zW!;@_?lII+r8HkJg|T;dbMK3YbDXlIf;lw`M!K>S)>$%TGDKCpQ4NAOU(9!Pl3EoK zm)qAqygtRqbf+*lD5~7$V9!Z!FnziK{1DFhiD{+4iz)Mpk9yQ|5gIzjq5obYle z!^i$%RJA6%*Jv#eDzdG(0H)>V>`vqlviOu}|jM2Nat@69g`{tpY_ zc5RCj0=la7=HOJfp60(uys>}wrcEg z$}PFFIFDfBc@Y0{JVYkBN0i0wN5AfjQZJfK5IxxNXtT=OA>Fl6kB^*q=Xr34DuNfp z2CVm@X}5dUH%*ts^jAD!q=ZUzUZ!f9zq)&H2=Vk@cqTFWh_AwMKfii^>hJAU2(~lT z9;+8i4yzZIxz~rc8AV3(`jbuo8Yal7eHWSS#z@X0CYv&IDxmrX<0_i1CiKs}ATfKr z)~CK1&QxjUk{JAF^mn1xB`BJeyYLrMe6+swMjAl2`z{x?P$(!xDT)MHSAQ^c5aFTf z_WhrC7&EOA`?sQqOf{%bB{`^^4nYG668SN&p`|^EM~fWv4WTZYC9|hM=%1W*`i*b6g4wruRm}ap)LtPk6wkyGmb-E4-Zt_ne(;^ z2yx1&FmCJbfVyO^earK1*V#S8x=6;wq{xZ?92M$tBIk2ULU>`tKeIYJeJ(2YK3=#| z<*XomTV{*4nwg8=!Tnu~&{Ep+53jO)wscFwKy|vJ5$xjr3knDD88uamB++V`SzGu2U*s1_8@UFQDd2WK z-CXwo?uC(OsKIQ#|3fd1$jPGlsbT2f!&=Wm01_Mi-x zB3wDEAW|#wGr@n^0hmILXwbdgJOBXQ5Z(?4I2V96Q2oDtyn_5KSbz3R{{w+|#{XjG z|8si&*Ny)h_y1SkhBoMph<&JgXh5Q3xCl}8LJdbWV?R=G?*ENgUmYD(p{Y!*8hpTx zq5l*?CrreDz0Cs@6ZyZH*Zy$LO^&7u%XHe(EZL;!lJhGnqCvTUsTLQT1jYYN#d-w+ zEGX80(0V-%s%oB1mOU}ExF`->Z#$a%yKqk6OfaP9`cFK{35pbjlN#SdkwMp5&1Z@j zLA8jEK{n4)?ZJ5#&3`e9z{QxH`V;bSBBoS$VzFpQu72yYri%Yl7GFkakawm5oU;Il zD}Lxy=OB~lf3i*F6`rSS>7K99so+hP`sc0(x?&5C)ReWkSKPsCR3hrZFj?aM&T-0_ z$pxt~VQ)KzVQ5|`0qon>eV~4*)e%ITZZpq^M;&0B{YT-SuPjhaBcsA5Woc0NH1LI5 zO~a5Iq0c`i&!Sc;8Je~bRRKf(|Do!g8lJ8r$YHZtRJT ziP_k;(-?Q!@9(|$zRzFz%w%#-&OF$At+m&t@}?T?tt<5UyE2H^v0=Y2LqXMgdfU@I zB0n01B+oW370CppGH-I>*jn}y5nUQ{pZwb;F2dM~hKg-$DqC+$`@wres3=Lm@e8Z8 z*MA_0fWZe-*ZqttYv3rz0^69$`@G@bJwKD%xH2C({kJB+75)zr;h|f+)0>^gi|%D2 zizN9EaQ8T9u95*a)d7>e!G<2+Q|;<(v%sLocV*?E15aJA=>NXFT7^{8=>}6cM8R96 z&Wj}Z62y_6v4b0M*EEL_>XPp{qsRlg>g+=Q@osncC^lIctmcW*Ma_r#QNOCH1gPTb z!4y94d3(~*q`+tf;Tuztlji?eI=*Tp!{r7`6?OHb$pgf)41G6znI^k6E|*gcwMs3h zV}2cMy}wWSbDFLp*_Xhz5Wcp$p9gL9u{)n|2>wHGwl6{}bp@$H=5e+U8!hdU2WQ%Z zN41-ZlEt-QQN^BfDI}=rWG;4GLx61QSg2VHw4RL%wNn3KHElS}+u_}C({2!zJiQSd z$mD{(K(?ogTlfLP3?qR-DazXW#9OzY6v6 zE?n_#E@)n<<|`<>w>R_`ANc?piGUO`Ef?0bcN-qsOi~>gWY86^KfDG{{@$LT^Q-Fn zxUx1W9hBKU540&Y4Sjvf)l2nN8oJn2>y0ZMXMI4MfcMv~<`eSeGqUCW=k*D{H$1AD zf9lR~e@Qg4-}7_v^1rVhdK=SGL532@lY%c)9j&_ZRTN=v=q7?@ZH5RqsuX(aqJB+~;YbsCM3*i?YEU@Yr^wW%6_w7T zOOxe^2qC^5O&|`L`Ce=LGI~!^XS@sUF zTg@12w5r;7q^WAOSC7cz?;ET;7i5S^!O}Wme%7nnfZ0@=$3L(s;+>Znsqz(9+|>|& zlE3B0SKCaJ9gE@^!f5LyGFGX@mgLWGH89nkgs2pev0BZk8}8 zkN7S4k|_QZwfhh#bTp)GIuOk4^tKv1JCaz!YFP8nfHipuyWh!(pBM zE+eeYJz_oX!q1dsf(}liujcEi6gkinQvzVU9bO zrkA#A>nO{9d*3`$vc>fG53|IzSfgox-F7EsQ{os6MG=UlP$CqPK=EZB1Ux`Z(Ulwg zkDQ?&aFi`o$=9Hp0)oqQ0my8(76xadjI8E8u%TcR%_6jcZljm00~V_X102@M3V$z* zsAZC5n)pnIj~nkxDR`PYM&Zc5dZxFksrcXS&u$E4w_S=S!$Rx7?39xDk0FQHD|EFNQfK|`FkG!)x02Gz!v@1Yb=&U`yPwSatRpUB}w+zTbt2T{i2##sG{h$fEx1R+QiX%rp7yjTc(;$bt- zml^7xoz?k{9eb)NGPQ54BAM5m{V3xWuOvt3Uz<^BOKNd?vgPdvvh6;GpOa?YZeYAg zB7Bd3Z{0U4zO^^`t*L&~SUzE{afE%I^$d%vKDK>l{~BOg3o1ukow)FOWg9P5%YE3I z%y=8)p-GKN{EwRVXzEa_LF<*4ycY>o+PO7z(B;JW{2S!~$_gQ4Ow@14l#)MkZ{?Pd zCuN~5)(sj5zW<|M8RJd~$Mw);)n1`8w1K^i@rx7!tO!cho_|}ef153)f)mS)D5n`z2ZZxWDgMz zXmLJZv0Y}PD>p{UREs=&Wck`Sry=^_=P)(q`A^Bc02c84-;~KsW_3+P{Cshahg)cC zC{4xU4_Hh6w&WDvufsa{{3k3XCr&CH_I(N}$}99i*UOgcI%I3roJ+q#$j7EC zDdgmuyjY|xHfoYs&e+(~Bp2?DE`J7?Sd@77A@s`9|M{cJwI#3C*`A2+2OnYe^rwv6 z#x}onPNb~^i@BK7ZfYWS9K9}P?K}N=!!yjWmpPT)qPU8xge?P8^`ST!-bXs&|I z!j%6i8Z=DHa#*%3*?R8$ zFZ#ptFvMc9`c2g^U!mWXOBFfwv`N!r8J%ap(FvxBg27R#B12kR14#bA@MB%2NXZba z6N|=SKmLiBqKp538uLT&Dk#y5aW;V5VkS6I7Agr5@ar{RCNOcwEC4X9kC5G>(wE_}Q|AxBZ zLGgiHcaFMg;CG~pu7QJ29bkkmx%Y;zOqs#6@~TggBIR%CLBG&2mdH%wFX=^(+D&MlN#J% zEt}qBkT7O8T!_b3JSy!;eHK4q>d-JKUtC%yZRl$F{CE1q|7?8!%ELfkEie%!lR8a6 z?udW6yufntcCfgsO*KlcxjvM1qi3`<4_kFJ-}W=PH&|{g>kYD+?fEAf}k#{14I-754^wAl0YkJ>Z?WK9dHmsnUGlnnGH` z;?LcRGYa$gC}7XNiNEJ*ajp8_9faRAww2?;zr+tpfs7_KdgqHPMT4wMZ8U@}uRo|U zt_Sm0hNh+2Kk(OC1@*z#l_ukOL@w4dwpB2FW5kD~{H) zg)@cq42Bv5&GiC(!Sz39mc_Hj;=!%GghxVP^W28bP^gGtN0K865@yI|G?m)CkFM$T z-^kowEIzAed$W*Ql*}~^o6MeS4KOw;Uw@Tnks>)V8eo>z4o*Qaoum}rp->{LNFTCr zIaRKJ#Ans{JGHhqziK_V|CSK&t7gWt9xwD9H3K$?wZCl359WCA-6=;|Jjv>-(O(Xc ziL?By4qCpW6MT4L^e8TsteYhE*`|FTr+($U86!O39}t7njK3JZ!n_Y~Npwk(d!A`~ z9C0^ezLt5PNG_VZ%*XB<#=JFq<9wI(Mg#~7vV6t~b>5m=xK0o$tI3~xxoQ*KQ(&wp z*q|<9HFFIi2DGO4J(Dph%2p)q-depmtSPj3Z;5*m@*^83nm7rJ5x>w#_xbEtH`OlhV)>7t>pYeg92Q5mUuIQb&vwz}#h33D#=YR4 zygl3HE@>E!Q=UAms;WD`ExNAWrV!qA&s2V&OM>gXc4oj+-YN>a*vY_l) z+_vUA7`kGsNePKt@6%7Cg`P`WQgej_@c42i`?R1_gC}#l$lZPBvjS9Qj#wO1tRj^W zJT-_SO(l53K^$?h`*#12jct_Xv=VzWmcEfY-#{p72&=+@mq<^_|_pIW( zAc;LK53i9jce_4x?-~Xiurr;l#wBRo@%pI(xoIpHYr&EF+niCaE2!3NpZ;Z|bxY?q z1nv-bY==|7fWAtjCs@olkprvofQJfqUA=FnA*O2aEkCbgt`N zRIY~FkfR0t(G4~Dy-x>#Ks_(cuCBYV+pZnf;8B9jd0sWgUH7iO$4BjlyFTZ1J}bJl zwKKYOPu!G`0HeoxMCOtO0|DPVs^n`+1~A(OI{3%Be?qQ-2hRUCyR#qZc}38wBnK?( zpvT&}y4YefIf@>7i*{~Jl_ou`2d!vuT2oKn=Zt|q&(|1#OOPm;1epkX#oz_Eoe7x< zEOaw->i2?Tk0eeU(s2Ep;27=r(lSl>3u5^qWCR3ah|l6s?6imR1s^d;Ct4Hq{q8>f z=Cant^*kcBO;EPBjFRje^bAE+H*dEcSyI4_Z1%dBMFq#cn( z@Fte-ZSJdI{~qBP1b9Q~cb+n7VV>gZ zOblo@A(;;qht+S(#GKcg5G~K_*-_XIlu_7r;2f_&Tq_hPqakI1LY!C@ly? z$hf9b>4z?YBd;(eoZ-I}Y5f5wBe1>U^F9HY4c?nUscPWnL$K^EbXBI|5cc;T#9-x1 zNCd=;2x!{9Pr1FunYnM`0n4?6y#w0yAa27yyA&k9Rg+*TtNmjd#-_YLWWpj$rFRf4 zWXjIxIYSBg4gbBS8SL3P`wB!oqJz7mLnG% zS{8%HWLU9wCW_bqszEBu6*VlPL5c*Ing(JHn7UFlnm{T%(7?eI?9kBOU=hYROyeoT*T0-Lup)kHXHeeiE*c&SeQFFXPkblUa zn(%}mW4P>6nBnY#l~+ICfRBU-f#2u(JHzY9oQeJuG2p#+KXdd6IT)QL?Bw z$REVlBWO3|G>xA!H0lEhH(Y6(*mkA5JP0SzqoNga6sX0Ch5jHF&$sthpFiO9TM0(L zuIBL7(r-FcMtq8MnkMN*N`^%nB_Pgh6%xT-a=>Ig_l{5`JeB#S%~UYxaJ|Iw{y=gE3>}f%*L5iFrzm0xXzupapM{;h&Q0;g@F? zQ^gtx7gk?kwaQ30&k)qB0XoY_s3DEA{5L)mLwj7s)5Kr!y%2ap;kw#$RCq8-_{gJm=E$`uDtV zY}-!7@)=``zc7cnMyCoWjolSc!a{AT4WoI>B+FC=m;sL{^_|bCcF#SW*d8xic&V$h zs&zN>#2<^K738~~WZEwQf;;oLojpI51^f5jF{U==RQ}*kG?TKmOchTCM?{~`{@4pK z@yhMS^q(2y?DRt2@W8OZnk0X}Vi&k-xu`LHZEAk>@03d~+X_6fI|%HHJ-F;6+|Sit z6P{eQZn=HlFrCHhoP77Ycg#M9(Ru7sV4}GD1v#>C|tc>T8+&5wAk=)z=F-1C@*~}fA3Khy@ z&!M_MoFzC{BK!#N9epcpX9Dw6yYwP+iUL;cNsiyr3O?t~6ey0(O}hRrLc95(Cv6c~ zg3kMv8d~qoR@_Wi7Ojf|miE}j+1*4HziC&PP!OVk=#H;9Hb=yeCr<9nm4v9bTII_f z9|lRg6O8{o53wHka!!)$fq+DS1fJEYNq^$A-$>5Az*y#>!d1uBn&X!*F+KM_XyX64 ztt$aT!o~e@+!Uipeg?ct>j&#F zgn=*8*!Um5+~n_g`XsEnAFl{>4L*6-eUVzfVy zST9t81=}5NeR4u4W!OIViE!Kp6|CGhWA%^sg#6!>(~CytPHz^^*yiY+AJ;J%w@zvO z`)D7(tN`Bvh6<&M`BMd7B>bL}!WO@!%5uo{HuBI^cWqF?NvKl+?aZu+rFs<&c#1il zbW5CD0SwE@K;B{qugRD354PM~v9E7@?l~J0E3UP-Svgc8d(F-7Q|{W}Ai?{j>r!_N zXscGC(UZwuZh5*87fR3}S?EN@%I$T3Br%!Gui5HCeX>x!Vf?MB*Ui|iB6ITe^TO25 zAuHETG)zCM-EINk89mCq-vkAND#mmL-1xpocV@|q;BCqOdT~^W0*^T$v~bxNKT3Cj z-d6Kaw~HzSh^ND8uoGC~aT_3p=3L2lU3qa8_E~+KoOMyFYe4Lx1EY?u>T0p|!O^bc zkNc|EiY{Nh&1asR{JMSY^OjekRG=r7_InbhWyl`Zaux=&^AjD%gIXGN^D6??aC~u^ zIqOYr$SKhk!D30%yC4O{YQOV6|JbND?azAw1^gr+rsnk_|BLM#G(w}3l8wKJwphxaTnP$2Jl~h&xegu44YPLju^zplYpf`rEm74K>*z(y` zPIEdcT5#I=imAlujuA({EXkeFJxyE$RMT1kCzqcLQQAywaYWWht?@)#p=Q!N(SC*-8YUc zE)5b8dtR6x$AIiXXh3_DvrOCMBMk}d`OcLM+F#|d8~4lA9Zf}zjl2%!x?9@Rbk+-R z7q8fsYtx-`nkP03Uh@Qii>g0vUHY`Ls}sfQ>h+aafl9x0t5?)O+{#j3@Kq&eA!(ZW zR~tx!;3eMf?s|kp5B9}x_hcOwg;A=A=~0X0;$lLwz`&^gKHDnI5}Az zHoMn?c2WYlZmAkVA5=dsMVLFSCp2B%CN?(6<4St&SGU}Cy^Xk~7{0V%vU0Nmy68MI z{)~3XYKz1Y=CB4Iyx$kR+)~Fyo{yFS-Y_<}K>Jm3??2>{7`Cq!2m>^II0av4_+s03 zaPVk_XqtjDz+Ph=G8lD+eG3}cKc>$MnmtQe)$kfgv$A0_HpTCSl^vqLbm~;GQDO)C zy(eUrm^lkimMzdyO{sv5O4q_Qx^>`QTIhxiP(m4Z^CW&14zrp{sd;z-Sq`=IUpgQv zA6aUp0Tdp_4QuF3ZSEn0vhu|ZjPO4V_ZJM6Rj)eTd4yelPt;YFbOicNgf|zXEE-zV0 zg~|DvzuEK|V(m+N{V$uPvAa|jaqDfONuaCtP}p|`N%D;xO8__2&7spgo-?<)|1}j& zT>J9$&Xt~^_aGSNX|0O1VFGwgF0gvNd{beG!F5+@iZKrF;Hwt!<&+Cz*pIIL$S80{ zbmM-v7hE4#qJBb0kbU8_z4c06>5RV*tJxekRr9EOQ++G})= zb#=ggvR+|@!iy4$G&TmNouRcWH)I?Y#L_W^i`TFU zf^+?c&Vu7GzANcB-7Xk>_jny%2*hO#NO#;B&I-7(P5Yi|kXf2{V@XIHPJ>XCtPQWo zes$yfHHdG#v*K(9OP*@>R_15R90=Uo8xOxrlQOQJKWkiC`FqJ@j}R*h{+M%TJ;7i! znw>$n$z2ZG$40CRPRRZ<9CeiYffl*$YJi)Mw>spF5^u8m4vMeV2i@2E&d5d~ips-x zrmkjAE!Woq!S6lkp&zC%LT$q22^H~rWb@_-cnXuNiOsr~KgnE7kPmhmPsz)x%52a! z8xQ1euW9a&M^*Sa8H<_TVuMSV?gP1hl;+`cj??QSSe!Ex2Yt+ClPNQqbE0{>=#*-M z*Y~@Vm=}2d?JIApf{!0W{dsE+He>95;!V}Ih^>Ot>>A_Mal=RW-vn~F?o+QdNzE@Z z64zsd7sk_x=(k)fF-7b^{2JFe2s6R1oKDK@?)YBeT#d#=0bd;M3JLco#3oCkvFtY-&N<;-uHBlU23uoOybET{dg8$nrHI-jO)Fcm=VMR4%Tt<> zW8bNAFdqtQd1m9t>-SI)dxi}XQD^qgKT6} z9Q4~oavZPT^IK{($!i~P?N!oE1Vg``NOi0TYYQ2!%-!1C5ara>+Q?bHlH}^n$lBdb zN1tPCsv{cc1ev`ia*yS9rB{lHptauOas)CLJZ+mnvs5UedZLe1YHP5ZSei}f_qG;8 z&{!LzH`UlVCl2NX9j?;{0P#+#`e~CbD$y2Sj^X&aiX}->ig*m~bUTGDRq|p|l|FSm zFC>;qgPro(!fuC?Hr9n_i(xa)`>^?#X0I9-FjPquc6ZDbinVtY?HH%kEY17sxL^G5 zCU`r`p5DMMkS|8Y^^k;#$cO`iJHoa&o8T$tCm~XHqI+*-vg~GBfV9To4(L^ zlX_2nASNb0sj8p6h=YWL3dVR20USJfTzbTN5Aq-Ud0c(=T)RK;T?e$JK<9l!(XE9ZuJi3i$K#xPBqhMn=i}K?M5+7&47lpcq&0JFa79AO7>9udo!M z3XP=P7w1ZDC4!3~Fs*2BYisN3CdxuHRZLHhU~X>ibWu^n&rblj^YeuMk*97o@k_hg znU;?Lp{Ay0<)fys^>xi)@c;nqZY0zxYiF=hr}ebvz)DKHjBIl}9Pw#mZ#v3r>y^h)iN)}K62ZS`X8H_hvV9oB*EG1 zx$@-S3F8v{h0WFCvii%~IZXbHQIeC!@g00Bt~wOf3^T?esWe;zl2eOR>m3ws*$A1ss;k^6FGG*9sy2?N11?Gz?V-pGpTbL1WWibNoa>f{L;2F& zj6ej$>i*VD3exu>-t+r_OP@=Gu{4xOy)wja4sVNwyg-|}|8H)vYE_+pUCOBF=uEB> z$(x&Z4-QbjKq5gV6cSLpVEg%d}!C5QrDU5yTvShdF*C~{>B(u}^`3UFP5>ZS_y0jxTc!Fn9b}T{<;EhzsQ|1isv_ zt?2O?Q&fC^%or>@(oD5Uetlxt&+DW{lV-WDVQu+IC22+y(GI4)mJuwQHmve#MPu8R#p6W7X=@25jF;Os6X^46bLOI35FkCH}A$VIt3Ii0_X@cfIBB z`~d-EHaDYpk)&W}&nPUEccIl9yqHRUC0UJQ-Er7}3Y z{Kz)>5Z|;O?PT;04^*)$E}r zDuJ24r1AD6S871s36`|>6TD4dm@~!oajPZR6k8u;h-MnB_^euUzJu*^d)qZMq-MF| z`UUFG#`RUN%5rLsB*-pjSXVHIld!zNH#ItII+xFvzMLc^n}siloX}^4((-j^46*Kf z1txkWV`QQ-rs0BoyOkr<%%F|v3j@&701JZw!ob*yCl%b(SXT1X;A-KbMr=dawVnSH zbXq)(y=WBWlub%@A_{Dp@9+a@du%)1nqV_{{w&opAGE_3Hu5kx?!SWnSOfLB zgF2MgfJ`h>B%d1^9n;Yo5Y;msk%fW|Uc6<5OH!b!AkrbonW!VJx*#!J+ZX)jsrvj+ z#NMc(bI}P7j`Wxkx3j=|%j^ZkpSBvHpXuj)5GsXxNJwaLJXceInz7K_4`ohUw6~Po z1ap^!J%svbH3^~gW1#~SX&85fZLmRD)vgJ7lGQO8Cc<|Aj*>>3EoCaBC^JK@> zQh~Zud*buf=3zsh&eTMhFAPMRS~M-Duh@yz@kZf=_dE$ZyXY$C;lz|_%Jb#%2ED># zG&||2Dr!{~WHgdwP%6D*L0ptFBsM}!C4s04U+a8S(KCsNii4#bWv~}Jl7W^iBMvz@ zPE>S~0~h*YjqySY(|d&nxLyD!hyXl7d2~o& z%|gruAxl`r#nQkDTj4Km932vbVVT9-G7Q^`(=11$G!eWA@?0>g7)YWpJ&he@?*!l> zfh{Z|5`_B&Qlr5Fx!7_BTwLLzD}g4KKTUPBKW=wD)sw*k}0@T9G2LEiy#R~Bz$PGF=^hD3gk+6gAJY*Y|E3cv`q34 z8xwrJs~{BJr&%XtGHfyQS~h(3yDfD{*;&g{1#*~5INjMP zIXFz1feQ&_U7dvk;veu1Z;v;~riPBxm%!WT|tLY@ArmCVU?x1TU(&s|1vLv=Zj|XWY zHc%o>FSQR0ArJoo46th%ibNb{XU0dKDue4=K|u)9Y;&Wp)rhXEW09R*?T}MNw-G7^b|zFfd?;~6 zwpsyZaMKiih)+D+*2Xd8V2VuYT9dz*jrPqxo#~Nt0L1 ziRL+-vqpj>>--~<{7n&bltYX!fued{3E9(%q)14P;M&{TnlataOITV)lXjuT*!}c7 z-WL|e7T$a{23dz~2&}H#`&E+rRXbX#$|&U6Vh}R3;Tbr^^`J)-a2dd==IEc(*VZUg zEBXbxFX4g0e)k{AFmapnf1G^zm8aqp0SQy$Dm~sfg^KZnC@8KGI=J3so>YU-;2S4d znQM^d5xs-Y|-!NI|YA)FY$&?;PU7bmbf6q;=pb^a9awYhWz-^dT@FD0+fXj&$(X>ZRPs>FlCEH{(7{d@s zA!03G6`aQ*B`CT;FuTb?$Ii%#iio2bs!njTL#QG186udV+FIG?@JVfy_~CQ5aMoq+ zp^qOGxzOZP>XtD{S~*hB_WoV)1#PGNx0ctj10x;1_ca0kuQF*lxvwit_7bXdq)%E< zilT|#vi-~m2N9?e_RlbZ;lIK)w0zuM#`?fxX9(;rqy(;Jx3VfTZ}5xNNEK64!vM>- zQfSplq!KA3!~PDCA-K;-?-mm`H+LBOz%Z+p1WeV*_RS*|HMI~@a38_)?d9L`z+F#^ zf8d}%=p}wa#j2g#bN%mSE-xg081RAcZ}{P~htDexR#_eX-4wth40B zzJ=u|qX-}CczEp>?=bfLD| zmHRTpcnGt3BA=C%mAlM=Iy%!58tjV=m&O!~tAR)1CT@fiQXO#LE4flPNz=)UIY70h zIrKMaQ$(iIwH5e63)dLSt~-aqNPv5(tN)%V3D@Z!KAKowYjG$P9LAl#^KIgwB~bP|#}eNo`kTYbhNtVcOR>Uh@Bv|KlzMShpQ6g` zvZ<_}Eeb9hVcvJtS%6otIRGG^gD3o`c|hC3Rt07c{a)d!US7E| z*bkQ>+Mb~4dA^B78xw98T-jgmuMpnsX0TkmzoPG-{$?hD^SoiKu9v?iCL%5M^9lGM z_3<)HSrTFBOQqC~G*LuyGMbW-(w8!nW|V+rrmbC*L}g*fPsF_+i}o}p3RX?TtTAqS zaxUt)s%nk*Xy$E~Bjrdp_-=_9WA%lD_6UIY%eAMhxh;E8sTL9=uhtbWho-rno1`>x zGZ-$>rtN;SB0jYotpI)-k`?pI5x|D2XTLW2^xp+$v0WpNKT5nlV;^N8okj zd;B#ZuRvjM7HY%kqHDdU#>UTc-T_=7C1h($@9F8O0gR&IxH%i+u84-;D$WW`#Ir6O zzMHlj`xEVRV2CmH9)Gl>XSzI5Sb4c3c}zKz+((Nmnp z)%a{H^F3{=WDdk;U$vEU`__z0_~&+e8B(f_x47WqMxOu0FSU3$DAs|f#?0d%b!b{s{)x`D$&Bif(Q-1#?P8PO1+{OBn2}3 zb0Sx9;4rowAe+k)RGc0_1}jREFh7t01<5L|^7$HiiaMRh4(7{Zx)P1;HAjuHd3azX z!){4K0qEz)WYbXO6f1#O3ko@Ea`^Ge9e}@g*nnN~cs<4Cu`=8cfg^=^Dky`;T>xBJ zVs@9M!0hJ>3%VUI@|wqNXLcp6q9NRqx| zS(wp;X>$-_sjZ>TC}gFLH`-mdmfF*|WW0z*PPQ^=^{WUQO3ETaEj&MlK!K9AI$g*( zR4I2UM45pvrqfd>vjBFWL&9m;Ro!vztZQ%aDWzhgA*oE&`O)DRt=Q)h!(Kjj}xtQMPcxu{Nto z+13gxF`8~jV_NHt*%KctOM~~ol;FXNnAZK9(VK^vU1^@xEGC~@pWt_Sg3-lV%%pl7 zh&TbZ1Rgv!-zyS;E#qcBTwFntzW80=NL=prcr_=}WxitaZ{H#OdfiYxmrwrfS2Rzi z5u#19TRmL@qjV*V3vv7z{aNpu0}2a9U^+YJ7T3>ruLxdxeS$Nt14N;NA?QyZH|D~< zS5_O{@n#j;;J)}UPRn=S@6@X6Nv@uIYW!4zJ+^Xw&PlUNIU->Ux|S>atR90uy4L}Y zvyQ6AI1HW_;v6TPlPsO*H3nnxM}OsVFRox*E@h7|VpTjoi0S!x!hNc4PoxdQ^%3wT zmj^M34!&kx>H80bG0x3ce`DBM&5iEdweoY_gCUdih`M5>iNMP8xQL*9IH(}2>O7*` zt-jd2B?)DV1sEOCqv^Wu!LbjPsDY7$k`Q7>+{njqXX$jW&)Kk>xJIy`|h3-M5J|-uHMo z`Y<7cimQS4OyRsgr9uz8cYLC#S32KmnlIB_9BWaKFwYGk$_mQy{4Lk53oTd8Xum4Sj7L#YFZg1j23<&Lzcjj~ z+r3IS57>*djv)qc?|522o1u7pZcwfFd^oaaa#ukq!-Bly5%6wHKuB8~VFbC@ca&qn zanfzhE^Wk%lP96L+Sn!ak{>KRp92%4ZS0KBPvO1R-4Kk$U4qw_P8WUXY3E-Pmlf2I zr3m`$tFeRztKKr5KRb($6v8?dS8H}tI-4aLR}KJvnSy(DKWbLraP&R!>|v&Ad>xia^S=o+DR<#(3-Ff0&{7o-_F#3V59 zEB+FqhBAQO$Nk!5?yQsgZDM)S!|ed2EX#{@m?W}tw*66CAcsALXyrk=+FYi%H{Dq- zp4ai(_0@AL*Io1OPSqu?!>aLbcq!Nxo@%=SHVyt;NJ-Yb>M_uQw?Uor5>h>Dxa2W` z`#WSq*9(K!$|_zoVJtctqaY;8Fw*7Fl?3EEy0?KS(EZ>Emo9ifPtbZso-Yz>Zege$ z7#L`6V|2AzWMets{X1NAI~~E`q@TnQMJc_Vfjf9dCZpr$$A#EwJUIg%4lh3O-UKP; zrpq2uPRIR?t{#ME?p8`;8@dkcHThzP-$goJdJ;+;j3t}dhW(TZ+vNjuKjJu`*06qc z^eXGy=M&#+*&XjlXuLvKbGnsyJAOP8fLp0`&ypWaj5k5Y#{7a}m$S~YW@a)>WVc^e zX$ME~ZQerf;Q?+C_?R3ej=0nFh-@PD?ayb)yHDxARd}fazs;Shx9m|zd=|u+WNp$B z7t0JVjS3GOUH>D4*N`3;Xoq<kLG&(&@JN$A7E+xa6jsK@d3VL!L-%2l7|HVP$*&F;LQe{nNk(xWn%hUQ>c8wh&T)T>DF!BV8B)sn7q> z0wBI8-V68yoygM=N5@*iJiL_dn$i4-Ei{{A;QoDWS0!0TL!`kFyF>J>l9;63u&P*K zd@O)wxlp-s=or$@aB$Uqg8JaGZKKxijYx@3qfz@u77Sa5aOTKo>}JsY-5mg?qNCuZ zh^(wqlS2ke*LyD2hlBO*dXvCo9uJ{c9WAYtSmKonDvp(H+*RK z1>XigE%*oikQr!kzr5TdwWQ4IU;b(|beZ&kt`FXDH+r&=~19g_7 z59A>Io<-cOmgl3|F(fD|aGNl@W0}V(J;_p74i3wfGiv5UWSfJ-Sc?{Dxh#sSi^*f8 zAnlAst%8ON18Hez4ZDbDEg9y8-Max7_^O=?`|x4NKC6}M#+vC`D4%vUWhq`|x`dNEurm6YX+P3PDF&<*Qnkr`WLKTV1h>mZbSXkD zV1T_jK+N5tJ~CM@d7?Vv1b6<49P&HD*YorJFkZw`==xK?X`=A+9gS{O(Le;d*z_I* zG(PIqK$HH#*H%M@w@k6C(dK$K%y;UX$IYuIkIN&bpljl4BO*)Zi-X`MUY0){OK=3B-TY1>&G39*^I7#ntKEfMvEpQM-%=}PtjhoXnJJu| z1C>>4EStc(m^#rSW7`=%Uyd1G;@j2IZ}st=*R(FO)V5$mGmNR5V!sAB^;wk#(cfRE zf!@fT=Wy-U$0iLvR(x34nzN32IUQD^v5j2jCcep~rXMmg!M(tOes)aa)!ZAx zmrOWa+|h=g=IUO?#+HgY{`ys3h99czkmgjpbR8%Obr-cddKzo#($*Djp=ZgC$sAu8 z?Mxv#yvDk@Ge0vBe{+&I-*t_<>0R}zU`TTw;5MHMMHfXuMia7)ScGDs!uI3uQZ$XF z1w+Hz*Od)t8>w{YyQfJlS660sZGSX#b4Zl^MqG9NjOsls%BCqR^q-|eeETJ*4jny~ z|J=>WHL*Tn%jn-*$FVo|WW*=K(LX%Y^`i^HMrM{b!$nfQ*z3xguPr~fb76Iqx?=^k zZeoAGlk;*$aGkvTC+30vccH0}*t89hYKr^S*vX_3NlsJq zT?6%mzrTB(f6exHLiW=xxYwkN&p;zRE3~BzV_pwIKDD&G+<0`p^7q05DJ%pwHg<#kh99BoR+qbC?>cf6zl`qL`hIJ3 z;FK2UNt^AtyT6b9FhSFvMiV>bi8qMg>MQv-;rh$Rm%`%UyV@|R!m32*7SuE4k5&)6 z%jKS}UQA7b?q7pgUf%o4=QNql^>TfAyT1Zn6RN__+L`w|Uq}Ge)kQ`3RJ&*~n~5^d zNk08eKl?(56`bDBQgnE3450}VTjH25Vgzp%v!GV5pV(a#)H>`L{%xc`o(8F|M6;9Q z2}|aPnyaG9XchxyZGA~Kw?4?1mw+v>!J^>lCVTzF#6$#K`3 zzE-N3xH$CE(o(pQ3{5&%@CEe!mehDsj9``3=1%e)0K^}=E5HqLFr(~kd!I1eC9EpA zK06zFcLwWsadB$JlfvP`s{O?A=<^aJ$+TipL(DX=B*dPZ7gOacn1#t;z1e;X;nNP~ zaP3qvyWGg8{)MR&Ltd0~ebQ>LxqQBa8EEak80zrfy>HW~M#{H`pYXt-5zbpK(Z#kL zo5ga|Xv-JM-Oo1PB~albwD{Su_)fgy`?jB7{QbuJqiZFCr?0tI@xKw}PQgI>{2EDE zbs;$lS;PK**tkScDWPOX{Ym~V`7ad1g;GnGr6Igw&XWv=(4d`uv4%(&BXti9Fy3*%lXr$Df}6!CU}hlyA3EVZKjOU~~-|f+#|dm>m2q z{Kb<#+P@9|#p?bJR;|B5&EJtb{U5ppzJc!1e?Ko$CX(e*MN;2)4$&8wk-4STK{USS&kME`qIhP?+jwT?UDW|O&cBng+0+>kGRf?yc8sIU-HZuYM9 z4BVsQZv*lx4?K_~pRz+d7*(v+>o{C)JP~MARZYR?bz^cpR>`0KRdPlQrgYHJ(Qi+e zoB_-KPgP$T6-N`a8wloahYe(L3lKtZhb*wT2X`mf;u_rD-Q69s5S);OKnN~( z$$QVe-#0({%$c6)>F%kiQ(aa4JYKTn@NVw#;8;=!+HTFO0hr*>?~*>c*5~b2#}Upi z+^`SJwX65*rvY$IhsdZXUM#cfURyXgjQ7Rau(_25ugCAL&gGK7!nsWpOVtN(QuYBy z%CYhBSyvx!u#L6#_3v+S@;G5+0-y2nS-sY%3!0LXlakcVB57QdmkIbM^v|M_o> z)ba@f@L`~b^=CQ`kzIRBa*UtTzXSvxx5*~}K_Is3&P(!V7_5p4Tkda63Iy;lIBVTR zDz6zDN)VI}95%zMynyak`0f`2`54k?H zxn98FJbvH)#ntB@`WnF*7Z)z@@Hspxk5a2qD4 zri!Yn>~e-S|9MwOM@O@po&uWSURHQmlQ@}7ZT_pC;x3$M&5Bz^Cqae~2-|M!ZU8O$mR#IK8d3=1PLkBhQq}$di~$# z^Wya4NzT&aFV-Ln<^7KM zigHx0&Ztj7fM7r1wmORaT3+$;$AB55?~J>FzBcn$g10k-pVLDa(9qh~MZ&#!U>?C2 zdjHpXE_->k3n{o>ZFQp0FjXK*!loU6#X|kPClL4bsJO|C8wHGj70a$nqjx;*!M@0J z0?tp}smM}D&5>!y+Vy+0KA zrHsM?wpi;xdf*Zzu~;$}l$}51D_}3J3V@vq1Lf&78i+giPBfR650U0jotB7Sj^g*Y z>TkS+Ci;_OY$w_h#3PYBePM7YSv!fGp|my3qYZDdj4tHgER;L|q7W5rW6D^7;5CGBX>N2l}IGHUD9d2C}Wt?m&-LG)uHK;J54uXc|mUT?oQYmx>I5V+;$|iu8KzX6i7r5KhgVMoa{Q$5UXTR=}?dy)n&yFpPKn6Z$ zJn6i>iq6oE`=usbl|7ho+BvvPp^O;mvGoU?psF5nb?T8how95e<)p;8&w77lWOE#O z9XL7RwJh9|IypN67sbN^Xg(H;bk(LLM?P$p)bV2XS2! zcbgoAWxf;?Br4{&x`|7vV+hsnus>I1i3eOkQ%7-n<0fXSV7N~rXd_KSLr2`sR|hun zFGgQ6H*JHV*IQJO<-4;{R8iCxx4@w`FZ%S5o%5GeOq+s|ck4URIffBj?BQ^67}|C> z+%ELYwKTbq?n;t{9aM%l-EZzjnuhlyJ zb*uA%LscgPS?VB3E67VLB@N0C%&2^Qkc5ZS2!Io*fdCQo97cM145{wmv>BfFXxGHR zp1GYvh(Gy7fCU3PM!wBA8+4a(DUG0OA3pjmU2@*Z0as*3IEv+8%BFbQJUz6!xVLX* zkSO)!q9|6-o)V85Xed_nDfR0}y@p61FJ?&B5I>4bOCOG|m@yeMuzMo}(ix5CaWPIApb7#`y#0Oio)G~r-U3}u&6s{i+X6`+ zixWyPd(T}ogfsY=YR;1il@~9!;m%Q>o7-ys%>&!t)7|lEYc?#%T=kdNq2CA<6Y!86 zVvuHoJKIkqV`JFwCe?hsS3t7BbC_|(T*g0R3adr*MWh2Ll*vo;J0ghS z(UX3-T8)iJ4Q-bLG-6{<@;Gkvud7M?(|(QxX`D(d*;-?GPsJbXHV2kIhcnf?&+N72 zeKz7Y*{KY%HKdk{ZY-|(Mw9oGox1BmfmvISuDJOi0U$XU@;xK<=C*wzl`qAE_J$9^R8%Mq zlh{Jex}a31ozvZT?N{&3u0K29o_g*ELXi?JnpFJ~S*X2&_RtUAPI6j)beN&rd*%S{ zkB~oFOGcs?_Np|;(AMkpi*D#roj+F2djh9ZplQax>QUL})7>2%5OB2d zH-jZ@(|EpVd~f6IH@Ypw6|+(~;V)am@rIjYk^S^AVXjNAs}2E7_VT2tswe(~l)H$u zsi)eeyS`ompWr`YGnF^QU27i1#Blo3Iilc5siaU2k}hFL*ruTp|0t1>1ACmo0(|EQ z^>k81{igyep6i4Fq#_O$m$?v1BirAjK?i3)y%FfzSzZ}_d6{yNg3m-&Y)#Od!hF|a+mmi(c06~Kvf};3bD&_ix~YbhR$mPJ`#a7C$z|TxE$MzL zsl7$_KlGiw5q{u+K26r&To+pD=>4UzyICZg@cQ#^Na7L&_UOi@6A~nHRB`#iK4Y3? zI@)aetLbYu?;gUZRR5JHQ(sM1eAW?Qb=E|=P^WCc0qfK>bhP=ndwWsA;M$;?R{a6M z|1x%G>*~%=05IZe;9>yqZ^Ec53s@UixOyDhK%V~b%3SvQE$i_5aq8WT>DqTUz61-? zb-~cCBu61YfBJ5Armt6cx&{Bu0ZV7g&WbG-zwCzgL~`?H&vBeYuM7i?*)=EkpY?vWbB_|DmVCZgu)d=;^@&sQ2v+IxKGyHe&+m^Z`N zPv&~ZaVLTw~>x>(9Zj;d^0y+6Hlf7rvYjBAM==a!5C*>?|Xs`&t` zi>GP%)34*AD|Uphy}N?OnE0@E{2$zm(CQ*H_2pB138GTKRy$2Pz+kEmN$!m5nsQDD zgu<{5E?Wcss8O}(opM5Z+S-eE(EI%CoyQ9+lwCMReXs&jWb8LTb!wR)?%n%3(f!Up z#5qsLgkG+&0GsNAhq#2B$;IM1lTj;gkIlr3U%tq(ojGp$B00-O)3ok8+8oLNhz%D< zUrHk8nP|FhF)Qw}m4SLvPDMi3e{yvRN9iODt=&WzkG3XqKb~4cSE+b9C){r;-CFqN zvQ6c}?0dmUrW&2OeHpG-#P1_T{{2Zjl7H$X#Blf9;~8pd_oKHcMk&!>RidbUHe#;>1#-JMtMo;=pg8eXkn{ldO5hSl{nK4nwIHp&1MiCBmS`X z0b<{o8jqcEbNJxC(qhJfJqi09{;}3$yV*7tckl9eI$wW&7MxYINO)uY=-qTuVODAS z-oB8pCLgEPUd};9d0ysnyd^XuD7YeWAJ2In+FgpzGsr4h^i6Ne#8IxOWvlavg9R(i!JC?7i>2(Xus2O^ zT*hx?DESM-bdq??6R$B=V2asEdHb9J9Ia)fsv^5 zkyvp4`Cdpxl|;-h+7?JmV{unta0TTjBRH6#%AcBxbsu+2R6p97`vmxQ#4F@K;{rsS zVS%9_=X3m<0zGqaHJ}V6m49XR%HCxqxyji8+ z&S;KL7R)RPj)0l-UGL6DOWqM78YGrh`z9e%a52%mvND2|pu1Sl$8lLQVCyvzOj5qf z@un#%G`nNecTRCbgjmwCKBvo&k%XOV_QHvSmX`ioT!o30x%RLISG+{!D>k*)0H{rc+Ol_aG5 znxXqtf4tn?+y8K_#h9xd*9Ir*E151601LOB_9iYi;&WoBO(`C zqAe=Mrjdm!az3&3!r z;|9HI=WVk-Zyi?m9{o6h1$^O|>$j9?NV#-92Zg5V?ZN9T}&8QdR0}0E?k%kXe2AV0eYg`nJ|W!-?M8 z^Ho7%F~(rD9$P5^Hbur)zPU58$pyhwBxgPx z#my(fbss8oGj@dru#s%o^wTJ&N+;`)1LYta$x?d6hUX?<=>1JKmOA8Y>>EEmCB?cH z`s>%RrTFet`s#fw1E1a;X=Xn%#)uhy2`#e9*&WXkg?x81>fJR*ObDX3&+SqztXxZ1 z?#^*b`aqT=n%Tvoyghp-`^R?p`1<&b)mMXhY<|}iHxdP~rlWNeq5DIDd9bg-*{Er2mM_|5|lt>;o0&YalXj8J9^Rgz2cJ^GNzn+o>m|!n! zEWFIoMXp!b*7PR}%}m#t`R#z$y#ZIDcxQmNx5|J}g{jGR6o|cTLCZE&}byP~tw(c+N`bLX1~Hx^gvqy)B~Ib+SZ5)%_W3i{64a?qQ-py1QC#GT|) z@jqcQSboRqs;bMgmxOMsg(=5v08v+uExDgm@U%ANfe2ys?FeCXejEgfbpd(cPHJpW zVt8Ws0Iw$I(K2V>IE`AqFe#luvb?pCVsi&iQ|?x|(NLIkvkBut0;uB0v5I8q-|2zP zE{Q@o3l)Sw;k5V&L6eo(X?mEVH)W!LGKfQ^N<^F5s+kFBo5ZEr5@B% zwfvbQS$XuiDtA?-Ko7=P6OooCsS1(E3O&xNJf`p=+l8boZ{ADQ{RWZ5a(hreMG8Q6 z>7_eA@Gj8mM8BWS9x(8m2%K|Ettd75)Sw>#dTqY<3eRbo{|qyk(6B4JCXX=AW&tIm zM7J^6vv#mzjljx(#}st--DjCt<>E7zK{HRdI_J=es1?b0x502zK`d=cYOTsd_C4>; zydZ%APg>cQi2mxTDaZu?JJgh)v{5V4n*3> zIhEm!sS>w2o-$-y<-5fvx;jbu3+uW{@=i02^JodqH=wCb1n0|eqzr2Uufr{bKw4u` z6fG?+A|j$+I8qpaZ#Qbtknh7A+P>Ih^T6E#PipUpLa-?WbB{%3WMtsE6ED4oTU+e> z7jl&Zig6i2A@PK0wCx1uBSbjVlQooSsqxaw0Wu$^Zvv-_C#~Ao)0FJmlQ42r->LAM zdLd-ByVC9gOE&G|-6v|Xjy3x(*>dWoa1%=I)0-u)Lt`ehME-26Cs~}B{}4OIUlZW_ zn=!Z|uudoY2xj`gH(v}?NMfPrN^JWkf+U=3 z7c|d|B$ZoGU|!9ZW)P()Bq*ry@uRG>^B>;^Vmzj({dBahCYhw9rruLs;g-}hQb*2+ ze5pdDjC9&gszG9jqvdY@EX*#Gx#(36{jPxh3a3~$#o;E(0!qM}M8H8}gi*bN)|(&r z%YWeRL*XvBf;W?vQ?W3j90w{E;ueAGj4^s!7>vOhPswkND;{8XwHHgY@t(BR1}(? zP7e2g;pW2N_~#>K!5oDNX*#_%_{5AlSzNEKW;JnIoo8RB z`p%WmR8|r`ZI^b#$$B*!>v(0E1KrT9fwo(5*-TIJ2eI-6d*!d|)f8Z&tQH9HY-_5d z5j%X9>PR0Nn`=YuBEba*c0)p3SX`W4SOCh%4B{3MFe&sA1Gmv*zN&#@2%0&<4Rv%B z;M-2h%C_6M>Nqsv<7HIX-QA@X5D;hyc~nh|wd@L1XC#l|gX8Cg;!v%f zGgn2i{*V0NqJO5}V>cZs79X76C_O!$RK$r9&i zMY0b~qvB`dYOH=g@wqtE`UG7XfRz0t>My14Bhg}G_S!z_!jpa9d;8u?k_DWOiP7Gn zHAxD_*_bi9*viNZ4a`u&-RIi#HDAw=87Dp=9?Lm3z@cyZ7fLnpkpeVTMM6BpyS{vZ zM;7)c(%>NTX>f;W7Mu(Cm$u$A@%tcO#^t^lEJ`E?sU$6L1bqIoAbVUGFxhyfyWKmq zk|mtX&4vvb{|#ObOEVIdz9xg+sJS`ogeMGvxdMl0Kb?X#{&@BbALAM?WN8jt9b4`a zAMG}tG7H$(BTYwY&35X4Y-~+lRFE4vg}XM(V*p$XQ$uF3rbT&>kB!J{XH}5g0G4<8 z;@3Aa4n976D=pywj{<^%PM51zgi(WT_E$IF9EKgKgHf-XPg)P^T#uLDjnA$<%;yzW zUz@+;%{=KMjAW%04COJZ+cl}x!-s3 ztKYgQrFTUc7=jkdwd+0qSi)(r`Z{kbkK0Ph0y#$(mV^?Bakd&{!QgdE_{3kp)>8@! z3cllV{=YQk3?bLUXP192_g0W6!RYLc!10$3W3qw#A;Wk?%B&Sbu|{J?Q}5Zn3H^G`CIEAtX`1^74S* z!y1w;S7egau#piZ?mWg7dHSD$x%j-@EJ>yK;I%(*?!NdnH)OR=yCKP`8N=EdBu+-x zI;Z1~+YcIk^#VWR?B@kP)Vk-m=>4_XzjIfn@4AwZ>$+oy+TL$YvvzP_-1nae4B#`SQc(Z0O!PI#KzL`#Ji!^rF)wOLg4YDT%dN6V z$$qk0Tl1$Sv|SI1e~IEGJuPq{Z|lDBOa9FR0CMNXc(u;(fSR0w^&Cq%0|;p6v*v@y zeY!gRf0%F&@9*(q`6~&pi?_>HQ;ob>LEGD=q1Y5d@YI#-%XNE+ zUL5sxcqiuIyr%--(`dGN0TA4->JP&`D6j4^U9GdoHV*SQAtfRveh#6~{C|(S8a?C~mJ8hOdMvA;FzT0F^WeO=ba3Yf`+jWyVcB=+>~!tR z^q@NhMf9oQ0I3-o-7dA0;#|Yzk%FdHSy|bWj*+&{x}uh5)&~hug;;`wck+s8%?`Yz z>!ethD`wLZT@{VDeW{EBc*?4M!Jd)?+%+f+5}(#^yIog9+I65Am5q?jFIRk`qGh(t zBc$*0-qT|B13cYc>(bL-t%ze^`P@bC{y1+plKMVzS<6i(8L(<+2eG%do`Y7%Oe4vdhgCdQM11%`%n2{zS-L-iW0@KeIq2!>)kK}uo>n6{PiLK` zYQL3dEh@%HZ;gfoECtB`fxDv|Izu&vO5p}$u~lyR={+Pk6u`LOLZ%&s-&%WMi>`AV zvqvcKCOzprPe*0wzQZ`T>Nt}t{prc zOlT?cfscp&9IgpHcEK8epVXYE5^GsZ&(|JYI)lQ)!$;J1QCW0{Na3t@CZs=I@}4hc z`I=Wg^u7$3#q~*aYMqdy@hQlEe#S{{_I1iQE{EO~r!MphMhIdUE)8?68Pn_My14jw z_+QZH6Q+*Kp$n%i6c7mJm7Ra?R=oY{FF8=UUFT=8;`|4NNcbzn5wk>z;8p6g1plx6 zZ{Ge_`9G`wJO5wR|0eo>wQ;i-NfZzszCd9XE$x8>{bF%PTCW9vN4ybm^c)H}52}nu zmipbJ0sm%gwptB9V8Ka<$;dX0iA%-E!t8hc(Rjbp)a?BC!IRneJCcySIgD3aYW7Q9 zAx$B+?V@XNpl+LSzmGCXK;TblqEL=x#Y_pmfV^G=*-(@dRpZ^>Xx=16_Dm5!1aal) zQ+k#9Q=*l{bMoTptYZ5E)gjqXbVQ50n$;@Ec&5nR8zZBRfv(OkBX!Ep4f=X+GZq%M zrj1Id{m5dd|LB|&#`aRGXXY)y=9n0w$kb)8n_R>OM>O^!+#xlCKeQ^TKcDY+pjx(= zdJ_^-`GhKs9vLq0BR+E?p6Y~eLaI@^_?DuXCe|5fB47LI#R;G=GC!O(vgBj=m@Q@< zoD>VT^h)3LSqK)WI6)6Ct!(Q#S5_K?aOnl@4zn;%B*tOsqp}yg#0!5dD-p@RiJKA_iNSkZyO*gKDNJs&_#%RuL z%|+e&a}(e>S~=ruza0B;`Iq6#B&m|_S-Gcd%(v;EggpZZQ%FY6@k1v!0%P@12)yUqz_VXLF<)p>>DP;64V4#_7;&^Df37ws(lhfC+Ic&R1 zk-nK1)TiQ5odjWK*GE;l-@*sKq47-U3f5;s#vODMd!q-^nUmL-Zq%ogOKn5wOJNNz zfB8MHb#NY5t5Xl1DkivU>=^ob%;tlIRYxlNcLdKnG#jy~Z8)iec(Vl}B6f(51*c?$ z4;%y;CJA2KL`~>-jKLHmD|g}{5F8m`0lp21Noq~a`##G`@rOAsRUcs$kVQ-{xbnln z^zR$gl(UzW8`nQ6lVNuruo3)A+wRF)zo+Q6SV0JvTD`e$n#YgjjxInC9$qlIc3kIp z3JlfLqFWuto@jW7;U7@ggjz51kvaY5set!;R+f8I{x z>{>aY2*ImP*3qlxdxC!XU?kjULzp#CT0Sfc1Omw`tz?4F_@efLOKgIBVP?OqD{ERB zl;2>Yl{kRCAcHPnH}B`gluMJe)dKEz#5OoOO+C zIlRJLuF_P|v|iM*XWPovpS%^#PvNUm^8}iFnoEYG(YH-^`+i zWo;*?FdzLEYH<@&BN~{Pg3`Z6nlMN!tZWV|;p=CiQJr_((u$Q_S90|X#aw1LKVH_s zk`=jK+B}B?u<38s`tX4VfPY^@c zd7*MHwlv#4{5!VmO;KmFZcc7#i;8c%W(F6W?+(``d$vZ<#4_w0+iiIew&(!jy(eq* z^@Zyjx;o~ZPXeeY?=r#Bwg&sGZn2IRr%wUhlr|O?XUv7PYIZ)!>&M3%9Zr$cs@eN< zl}SY>hO+BX=0er=HNGKff2EjFn&&CGo$EWs?pt>##hjA|UDfJGX>F~HOX9L&Sq+Uu zqamKUx_Y1~)P>_pVqLh7jz=L(Fw1HU@w7ZJ(+!-zcZ3G<64_1iHEZmY&KQH0Imb;( zYU@5QG|FHg$6cW(ue=v{Us|E@`V|?6^tRB6E?-ef#7nxyUjuYgngUaxhY8?Ti31=Bf!-d`(|9>d6w4)>%65@9RN zLfg1B_t~~>FB9!8hkr9pW5v`wEOOG{LT5&K=gogo-NZs~ z^OMD8r4W7_`HeIM7@X}?+B4G2RwUbuKQwNvy8=ySQPt2zy{b9r;khZ8m>Mkx;k2`P zMS*@=6|k68+5p5bsh9D>aD89a11-+R5Or22u6vhPH$gQZ z>GVZ;iBG2>nlIVQmv#&dWC|LEklmxK)cj2`@obmBhn9)iL9>!+_oxeR}`JBSWKnqrRR~p~fAsH@c0n+T5ikq48{*+?Gqn!Ag&6 z$plPNZyulo;en(_(4bSnH9gY<&q)Z-<6Kq`S|GJVTa&p5-_lP*Dr%dX~l_rEc7 zgyj0^=gzQ6sJGVSt=C>aj#5G}qXH{QlsQPZ+bma*`nZNtiFy6jqg4ObO@o@L*;VM!0@RU9zpby7-y)&d-lXnV`?7-Y z!DldNzh~EQ%AjLF+iE%>R7dZ2bptv-nQdV9slBmW^ux31W@o-Mw>sM!H7%jpEabCX zK6$h75D7Plo0don#a-SzSJ0?iHY@%!)*`Q{ZM2Ym>ueW|{XTjvKU=xsk&ypimcR!Y z9{xYekln^H)?GA#ztdXjcwaWV_S_Iqp^8o+i2|M%lp3H@4siwnl
    |AIhGk|%iy1(y$lKI`@&C(fd+-8U!u;CW_(rD}vmAynfNt#n%^{|h z;Ko?cM2h(M@VmIUU}9nATV|LNBK}XJJ`|vYAEhnQ%^HaWSXq-sN2Nvb<4sBbZ`x1T zLRcbZ0nJ&LiU0*80z`+X`F|hf4Ow6;-kxEs#Gt49uf(FtvSyI-B~tM9GRj+&S4aa3 z3M_dvjK+HZD?5G_wL$Ppff$aCQpL%takDb+l8egB7z#OzlA=* z^#7lJ1?;+tBmQ}WM*LkEIMzrsW$}L#)=9+Qv?$>Uklk#MY}>uZ!y=Z}7zjAvA!Tm= zpU!0SDM*%~zrY^e9NrAx9HLr1ihvYxjg;&M9z z$rbpMtcgF6Ha{xpJ+W#wp3RAJ|LmJL3)`)Yj``t@3@4O2J|E3Q6Z!Cz#uALUOfeLS zy|p64*X_Thx;tLOp7GwhL8)C0@9#eKS!Z_L#SS0ft~ow|a`ctr-hGHyYm<3v_@ffY zB^(c+6>1sguB01cJ;2q6a|z`C`TQ>NNAh4SEOO)7bFjIsXXKCb&9{UMKV&ciPZ(Gs zrt6_#mB{$#m|tbzmnyGa&77Pzf6)~E+W*L-9UQ$FcE4=1a zo$-wFf}NevFB22Z9wNho>m=oAxIiA#LirDL!}5)Ljr zF_`XcyvocSIZp411m6h8>8?LQ$LpQT(Yo8@!EYiN<|VbeCuos>Obvo22=XvzV5GC& z{&h|M%EZ1m9V4CV%BT%S8xD%sVe)ewQyEU`t?OwTHm#EXAB&BTDaB;WNa+faD8{mfWBZBwvBszyH zAp&D4soj>vP4+GPn~>e=2sSaDx!eAck(t~?pzLHE2Ln$@Cj z54MckwAmB%fA&L^ABJGZ=``C6QpoJ2kK~xb!7i>7*Y>1R5t-3Li^Ga36qsaMMk$D(bVnWf= zbKgJ?L-9DL0u_8;ed=9_???2omOAC_LLSpfRz+zw?2??)G3qMNi zyalBz3oDCdT;*=iz#S59=C^r8cA4~jsbcF6**ZYM#Hx5SFN#=n7cC}S{=A)OPrj?C zK3}X-Us6EQzvq1434#MZhj7G8-#F`+Hb@+$rP1P4?|$>c`{G=14DUkBH9wkSUwp*a z(Ri)XkiFK<3}OMj5&7Ug2q-Jl9=rNe^oC>h8yniW?GA=f9U_dOAJhm;*8+#gl9W^g ztUh^ICl7}LT?Df{lyk2y)(FZ*iCS+#_G2;>0UWhFHbZk~pFHLJ0nADtPa=Q794Ku6 ze@^awLWH(Lahk66W%#0SSjib+WQ*@ZXl()$oY1BNmaB<$bZZEki-2~1yxe%#*JQK*^y)K;xwYsdd zHh$bl5mn+(wyTJ5Ux#!H`nWX4;A=K=#TIO$6j~z%XWT35V)rIx37g>suQsuq2GH$$m6%KN5RzwrJ$e-8IsyTZ(6e{^UGy*W(h zOlbAyLEXIO`LVp8^|+eJEqKXa^7@mg-P^D~0K?IyQ#-}1TaeT!JfZ%8LY2k(9jqxETHB>MP_OyiBiP3Hk9llc{{zV}Gm-04MQ zig~8b7!*@dP-H&+7AzdB@0%`XY+Ia}cfHJOO?{#&<#_3HME|41X)2eC?ON}9h(#Z=t?fo@rJcd8amw!yk@nxyamoaS5VQq=D9%8Rv>9xd0!0X}9bRYTK zR>XS&bzT@sgXI(6^)-PzdP78&cl?XlakSsR8dY20z|9Gn?VQZe+K1vXcbkOJ&2gjK z{+CvlteEDS&Y-&p8n$zdfhHb7s`W<_Q{Ehdm9^iGiLk7eqlG$4E`p4D&Q$HvH)Yy? z(&Xr2MD5ag1R11aSEK*{=6^r^;=JskYik)O?+x)zLR%aeMx9Qf@k!txzX*F;J|oKasv(;l6WzzGSR2B6CNAbD)4| zfh*iQf(xYTC;191=oLxJh}Tz6{yr|vKi-C&yA>nGt_}&toJ!IYrbmmrf-bf zquRCyCu1B{c51TA^^Io_rTL%U|zjnokPCY=Y*m}l|z6h9H?Rc#5 zE=_u&${LrV1x+_axS{Sld^B8MZSOhQ_}#mtJVjr2s(!qqraQifgz`VpL}B~=rQiSA zaW^e?=!t|6yF@?reP4sd{@8lRobnW z2?f*hrY5Kh3=>o8j96-(+j!rQqip}RSnjWyLSpdpgt1%S$UJUd?{9)ssC!Jp=9+R1 zciYsGhQsf9MjqEYJ~(I=G&oo{F7t9>8T)~o2_%6-;JATcly?vG;VyMt52oej_Ct>A zY#qD)U)J~$5dIC~yRSZ<&lGQ*yjRX{&_hZ*Bb5O*^mr3LoyW80g?1;ly4P1nadjpn zRr(;M!&qa)IN||4@Sx{(c)1J%GpV^cN`;?>fKpYC; zHd7}i&PI_IK5yMy+*Xg9-&_Z=olFqiK9yOeP2GyhFb!x(zntQj@r8u=9D%_>*&G$- z9g~6^k7=%bMeFC{wW|&-1WP8oIXJM9)MVdTBB89#4N+LK#=SCs&aLI8 zCL4Xqayzl-F&{L%+>9d~L^?S^qJFnUCfL}N4EhPxO^hCti4&T;5Q2Qu?64(7=%wvB zYivMcY0G(w+lL#pVe&v4gem+usd9TKnby)fx%UUv_~3>0smPVeN*d=0VX^u_|1_xe_R>|SrvVtJj!Q9?uDSgRC4Q__7!8c`+ z(xDq)x$C@9*u%tlBK)bzLQa-fFN&@DZ1k$sn0|rUatt&!{+FQ(V$6IILM))V-J8u% zhZ6M8Ib0xyhy&eJaJC#Kk?DQ73)ro>z(a!+;|B9(onwxi;Kd-32nmtbkKCE!!J#((*j;ZPqJGv~Gu@D5xY7NTJTOSHLv2{?1~}@ssMf(KdYI zg=;HDtvf=K9Cv+>5vbWaGLlIc1WJB`(i!D-Vk26l>}p(Er!GSJOk zK;fSscGdhGjzgJX5WJ>RZ9YEwqvPM8L~_}~mi!pi#1q|v>{3u$WvE&qZ#X4dE^01o zG$}+$WcR#`1}7Q>J?7ulmDo+S-j=bb^nXXd$<39RDlXKg&KLCd1JjFY;-Qm#u_e{F zA?wC)^MAotHeENk7ah;iqe)p%S`PpMcS^Af5Z@s(@F`TC>!IMMvkXkR5y2vAMBejj zaAO&XYLIWo?{lakoynHA_*3G}fT#sm%H<16zwr>HMe@hhFJ&+W2jKEEz(>b}6~`fh zO{FCX_+Na+uMj=KbSXCz`aBvh z`|}E&qu>qy>gC^4ZAJF0$WYVGf|hMLK}P_LSU zdIerI>$u{h#|5nSdbVaMS?dP_dDcs(VOc^B!zkY>O6LVw0gO)|DgyD;I zog$LhL_Cq8_f4J8*TVEVzf;p+%DTm+@^oi*d?q(;vW(ZWERwR4#kCUVj$mV@+Jtx& zkmZ92Iw4skZNM6XDdygR;z|SdQ{5J7;(7^k}m+_%%`9`9w*w zUZo!`RaUrp5);!rQJ*<})}2tl|L=ArMR6nVn+)Q}v5tJHyr#PjuIgUf^sC``Re+9t z55P0og^Y?ds!f*lO+PpN7Ldh*Vq`6z@L8GeiZlG<@eoy{I?SY ze*@VZQT6T(Rmlw3nQ%_0C4{Sx<6wMRPB@s<(5)?8YOK^+6JCPjRw^+=5`zitx^>oVLx3laBO*At_IXydT#6y6>@pA>lgi~a< z*%jQkZ5*6JSSlfW_Y8+ml13T0LpJ!c5ANw-nA}+%^HPWflsK48qzj-NjXw|$xD8_l z;a6+GwoOS$vMOaU5JXB%;|pQfxEtx}hb+tigjEJf%iP}#$Bm(WS!O_q@>rHfgclgx zo%lg#zm4hd=X0L4J`*=99Xuaj+AKeEsC>MBmm&N9E0urz?a-y?Ua&hSMpocTK01@= zFqYM+>f+CTftO|gk{H+8l88tZxfTLAU*A{jq?X=$PXYiXOE2lQsvf2py0QxAv+L6~ zh5b7d4T|Z31Uge##pv%Q%MZ?bJqS7?{@@8P$e2;S!KaMz^s&vlu#n5 z^5K0qxNNg78-_e0vHmQ!q0{#mWbylFZ?p_qk8wlW(tp=&ijd%xi#Nt{{s{NC z%xG+UiHLL2?tCU564ojuDuOIA%zOKuLu^YfK>HO!t~u7`e^}EZGg6S69fT5Q#KA{b z29uwX2qGi_M?`H2czV|MuIj&0DrDe_R0#^QS+wVMFkSkZ@m$12^L3wn<-aLP@6HEM zEkEgh4~B&NKj4tgSM&9ZE{g(-V&wVbn^qtRNhH~}eHy)X)AZWfC$7~kxl54l?>El%ZL=wp1WtnLX%|fib7W#7 zzv-SN!5(K@of?GHM?y&%T2utQKVLPEF+UY(e*Nok5Jb27`aI*3y|$)veSHlOL+fLD zXV0gIB&(=U*43T3SZ^PhoGfW<#1!QO@Dj~=nQ#_b;vJPZtntA4vs*80J-i%mb_=?; zzriA#p#90D8=G5LsP}#IBRiCx8cJpZ7#Ii_FN}(+44qfL=dkDBo#!2vVkO9iZ)zWuo>0H1QJPEKq;Kio;H_L zNl8f(8XEZKRUc=g`bWcrKX#h}CnqP=-@o_THt#y~#32TFf^-_2n(7VvV9>!%;ZX{` z7`wvBm;f7tlQi)?^{XPt01MFA>P9FDLL&! z5PU}UjZCW?l<;3Bq*q@-Ik`_~*Qlte89^PX&p&jRwz#raQ;@US2D+*2P9wZuM8;Tu z>^^1%DFJbi&{4w5tE(wL;qR<00vSc;B}()N07A%8x1V4laHd!W+gZ2y+fDcEyREe~ zIRLKKx(v_Reb>CP=3s-An}4Lpyc_OSU3B5FT?+>v z7qzrJdXW=;>wfhTP6TFTW-iwne*LsK6EibkidtV;3qnn_#kn~}6_vh!+kJ(xV@xwh z*^3Llf5S2bC^?xEZXZEV!a`tn*M-F$WIP>*oseic!eCo(-g?uFFOlGoRTyDE|5`Iw zuAdlC@R{HkQPr!LK#Q6Fy+vDbDTgh`@L(Uvxm+e!T?TAg_3C~$InTS3kctZG`d~7d z$DnQF71JH(rGm;P#XYJGoEeVQY$8m4f6l5aYnq-EQ{3FCq3iuITpnj?j?8myv;aF^ zJlu6Z2-&YANl})*&1vj%keOo<(bCj;#!**W@jP_qCs1#Cy&2&<&O7zA5SK7;H`xr~A;JG#ppB?vDSZRrkES_FDBurmJaD(zqj@J zmJiVrA24wanj;VH`+krx_vD9&0a^}SC(VZrJQ88^sX4`Kt8TDf^+e}Gsc&eAP>_6` zc@DVDpaUvx1*ogl9xCE%(hyPREM~ra7Upb8jX+LIDcjpz&-yMKs)h4#HEbNi*A2kO z@BLH~IO@pWlle+Cv4k$47j!r%h+0}QFVvUTw>#wF$Y8l|brEEdK%*qknd5CcS=15` zvYiaPgqLSm3Yx@;j}j~*-2GzHVw5Fe%`8hFEeHUyhUD_GL5+lt73aZx0p0HUDW?D< zKDSFEg$xdt{Z@0qS^>4PTT94-D{%oe2^?7g&Yw`~aJYhLw1imSREmVX;IuNPmy%0% zXv|c6^{^$*KO_Qv!Mp78&L&^<8ZFSo#KiUv4~d)Oni?J#l`uov+IZBebw>Olzkd22 zt~MG(-y-o-$wz*6cJ>TUFmjeFY{SCD{`veRb6yLExoVcQmJX%sh`d)>%t>hWxK^is zd6XX6a+2i78W9wEPt9)xQ?WvaRrB#xyF%^Di@gDaU^Wcl_=E|#Kd0FBzv&Z*I!7gw zox85Nztoq3o6NCtZ4s1Nssvk6f{3rBBxa>U4db)2qAfF)Fw@_{@Rr`WEHl| z5LZ#b7#SHEu7BN4`eQQm??QZ?4NWD=;PMJ6;tg-nV~2;V39r;{%Q^v6Sz?dn&-EP* zeG9viK*}m_MIzt`w9&>7Yx3z?k!!cO51U4#IrHP`M8r@G58c()(qck$7yts)*q!Ah z;t7JaE8)}yWx5;8Rob5{U4MF}%?Y3ym(dHltcWURabXc_A5IvEW+NDV@%Z)icy(a# z0t^4&kV!&PZs5e+`|b=f2ChUjMz64{?toiM#@oDaA}vo6@Dzuz+)G%Mn!2XQ^G53g zk0T*BNm#0MHkZCh7Tk{=z2&+DU&%wi0U-8M5~Z$UZFFPcwq%C#3!Fv=!d7pgymMPa zBMT&@CFdaV{>D`3f2;v9#1<(eB_>+f*cAQwgB8|?_9w*B2oAl!2#~weOA*Cof>uhl zqYPS$4AxGtr~V?Z37pKY^))AloCk5OctQ%pOmwI2-z+GCPbh4JWL?dlA5P`kM8#g< z&9Fg`e?0JsrvyNQ{_mJn)I+*Zz&0UQBXuN^4U#rnlCf*0RWnmlpYuDE%<)oMj=JB^ zB=B{%&g&qs>X|EVAfWSre1^G!9Lja1MHtxcIUUPzBrDq^E}Io3T6w_abPoBYL`2qC zP#k4cbY^0grQQMuCJ~sBkrBCgN`Zsq+w9-?_#^L>haolU@zH%{Wkpg}_VrooCQL1` zqGEP>`fsgaACnx0SYkPkPG13`%yHtckyf9{B6E5D6%l&2mkerYh7u=FPN39I2!-9v zOp_QU#eTd&oG^Q1VfXC5t@+3*7{~9!wmSC>p*dSQwg?(Pz~Xt1kkes;G{wbez96B3 zTj36WB7q-5odI>?R_~~Z=81`-JWKKHy-2$>*>(>T2g45Ws54temlPpnF8TR zW2d0Y!>Kvz%nrz+>k&q8FyfKlc&Ye=0dOHAsy}`(J0B@R35TOlW@5^b;tuV>G8Li` zW(EbV3Q%>pkv8F=ZEt~w!95oGDhk??4e-R*+; zws3GWe&s9404-Mc^4Z7>wVU zM*cbuGaioJ=WIkx<_Q{{>wDFJlg^pSsQf=J001l5fZa*oJAgv}EDs*G-YWjWEm2!- za5jueW&Vw&y3K>F+-i?XuH@sx5Eo6!#^B8>Gp{J|+7T65+wA7G=)3s)jir1nVm=|E zJrCR$iuD&Xq{roEWBwA$+49D-!w7oeJatVTVjm^Znrnh<*4=dH`FIOe=Bgb;aeyD4 z8?~h531o__SFB~FE5ID1mivCEswGGTJpQ3IC;sDyw6wH^g+*RTN$6)9`q{&0f`U)Q zAu0DoJ5{6k^hyRy(R2vzI!gQc^T{v6s?K<$un*GCAT%LUu z;v=hnh3AF;pq#i8k=Tfi!bU{K%8(!j%hAwWmonE;U50j^mO1pd78|_Tl=b6>b=k@4 zFCrpb71Ua%2eOTFxjefNLMAjU?7E!TxdgP5b?bQMe-E!dIA!NQK{gCJ9PrT0JZ@IP z9RWA+7I?%(?WNb1u~es3t43mx|*ry;J_@^*~A@>{mx=% z`Uxs3TCC`!J*i;I9pIaZNPTu~0RTm`31_dPks-JkfvH*a z4c5X^6p+*w`0X+DD^@(AJVD@>wtxw6$QYH}Zd|Ep{Z)vd<9gv#-S&z$+AUOQmWM#I zpaUtl|F>&2xUgxtV~fpD2gWW;-t;yLGLz9yK^Z5bBHNdNbzUNDFHi=};;p z0vuV%!X&3m9yACvGZdQc#%%1sXZ&%Evip5avSdoG^PR)>KX9RS~ift0z#@4#ik9F&LjpM#``Ud z;5^AdNFvs9uOTeAzvW%2?M@n6N!)=;5fl4@i^`GOUl1TPA2&yIJj}tHF1Eg;-wD4Y zUOIc73v4P-BEjJ=3qJSCY`wj;eGL45NxuE1LukTeW(HQ{EA^nbi+&;JAp|No zmnZS>DKJeQl|e-)p#b{9b6Vza?Y1+uMS!aa4+*b5uUK*c^V-v`#<)MWAd7q)EG`B= z`d@4)^(_4TVIYys5HW`mfxHb0?lJ%kB!s$s6E+RaTaCjDLc+{M3Y8`)GIVoU5=Y#* z3!9NcTfXSsjh2TF#ru1@SU1!bA8XnCEt-Uv{7j!ONgaFN{`Ba5FGO{PTxr#JQAse6 z1b`$S?yw>$i+elbMqiKV?yJLO~#6vkTRtlmsMT=|NIqylnivFGI}k>wAZA{JuB(s7W7LQamA!?MaF^aE<4IGJ2DPG-N} z8D|{KyuYjcJv67Ug8ppKndyu2$83;fSk{(W3KCa6A=y#?tv}bExrLL@{2I3|R=BAE ziXwsAd>_!_0&UQ|S?K6bH8IR5XKRJmb!Xf~RUA8xXkz~61Q3u-oR-`?M%^sUP;TR0 zdtG$52<}{jbi5rvezzrv;rigWs<2wdS?f#r9pg;I8(^()93b)Tnk)<`X#O|J@3Lo7 z4DRgkUnR#rk!iQN$fWU-`W1}K5L(?$=$>0UKxe+PksfSPaC$=#qn48 zP%=U?RT6XyBXB_{QtPYdsOv`(HzEhx$uf4Bcf9FTmz>KR$^x5-Q_t^1FnvpS_XdBq z=+l5|Npd27s%UPMOnJsN`o<_45^<@kTFwzYFmQ zaW$dv*xcdczrSW*;?`w#k5DcM%?@|F9t+&_v z-LS3LW8}`EejKzjvlCCwt`=D4)xblc;i+Hs;QzjDJrxecs$g3n6v5`}HwW%Uu1_jY z^b3I&RTm~Y0yw`l8?@CQx!(VHz34}}XYk5)Gp94L8_qjTZ*~yx2B`_$OKg00C-@rz z8>(^RjC+u*`Y6Lte;Vq}lSU41^bUxQ0<@a0w!x^i7VZ97?EVc5_yOm4sT$4}wE2g& zg_^m4HLqOxCIRy|rH;F$`Xp+xJH5=MNyHeWMPl?7R^JmRq^yM1?-y)D@*)#+(Uz56 z2>m2YPon2PT^jHGpS;rAJB4H zQ!+0ICY7K`3c8u3dN(PcL08zlmBkE*|GcnhG zx9EAhSc4?;k18w5`i1}suokY_<7t zM4i7DR;wv5{x?UP##Jq7d+BM$-}J3KD(1}!w0ByHP>-TNzZ z*4n>v)VFVyugQDvEUd~SQ?le$mW|I}fP-zkt_`kP@N;Mj^{c<^s;;rJ%#gvkFJJO6 z?{wUhxFc(Rsp*0uYl_?o0(9YPFZvEWc79J?Ww87@d`qBJs1dS#Pkbn;7CkXD?>R+` ze~#VFP?6ENUJ=x2)Gn|YhoX$V2+(Yf^k8iw`2|0oS(nz5pK5;>QP=S?tE#rJT+a1i zRxMDT#pRaPsoyn74n9z~qXk)q5@e`%&DOE=tjbEhz}!adaU_*#lB4aG() zXW;-OdUe_)2~VSBYi!1tVdFzVC7sV3IP5F$XKFjNXxqCbDU#q6_1heoFTn#%;txo1 zuP!$^@rS*!Y>1v})R)FbJr`rJAR!SFNQvF@U75)9&;+d<>TmB(+_7=mnr@HXEJsP* ztl+*LcX2N7o(+a~sOhEiWkbVi^-%iRIhOtTgPi(FF%qHkYrVHYA+$9-kf3e3FHrgH zQV}ed0N_HW*eoifFXyT(Swa^vZl6F;T`wH`N<%j6 z6^18Wg3vmG4a*=Ig*#x-%W*~{SKv(zdvM#0ePJj7&Bp6Ms*UH250J~7_J_Bp>7R<( zdw1H!!O{N!Pa~t5FG>af!Kr6aVgBkB9`(z9m13^(MyY=4Z~Kz~0_!d{Jp*OqE-6`C zgcV#_TWkgXOifb|+hDGcZ-*2$I_0dAJ~~1OT&NrpxPQ)tjgXJq=a{ufFn!cl!0*7v z>i*|J&;aey`C0E@;UF5xrkOTh$|<{qqcv-i^>$~Emw78lG$|{|S`}lpgM<<4T_;yTA z$0%Q1p$m8M*w#r1P{?Ue5^vgS+wYlp-BjQ9F!tpzfJ%APyaBJ#T%U|u%)gWpKK|6w zI51T@w;Xj%5JsopquZv0!mBqw6N((}taeJ>@PAXMIJ^g6^wtfwobha)wwQA~PFUCY zC723QdwWMvZ|*C;HvYNXOG-VcU8gl{5L^1QXM8ZV8aQ=eJb#LMGs_~l-^sgM@sV{% zwK>M(`7bjGW~M=f$f5d^?RBcT0DFzYat7u2XJ1y|vt_rc`?CBuQvrr&;OgX`)T~Hq zTJL%r!hvNPq%!IfCt;Ytb*W0ssHqfxdK&D3Y-iaRHHp0e(&;8Y$cL;CeDP?mxOROF z(WR2Q{q^#-$1^LIQBP$eovFPS!6GU629F!;j=B?oYiSaHE`Q(XIxL*EocH}Ktj$k# z%gXer8}NonTstEFnDe&{KVH_Z=;^0^G}XcL!-3V(`rgXj^>@;w_xmrEcgo_)5^3D~ zSZ0?tLadePSIu6nAM2vGgo=`HYhEq(v(}B~$mSq<+8SBk7%}AEY>N#0^WDDTGhUd5 z-_Oq0uDNAU*=pZ{hFYIO?)IFIr6TO;A3n}~tdg9l8Ai$Y%l$_qS(Mjz;s~5b^Q?Ht zNXEV-!X+p|WzrcYQJh5v>n7CEvY=!}TjJmh9iTv?&FD*XDvPMe3tWk$#WRo?7#-mS z${8P0OGV`GgbIsM@s z9D13r-w{!p3PPLz%@%cE|Lfp@K_1S3&R*sE=z3sA2xH~j2TZ-cA*(&UvR!!RmR@?t zmUN&+<79~4;ZI%P;#XR#XlcB@2FX6>;w2>lw zQ6A#>$H;k>SDpVWyn;E;oaW6lInRpl2^U;syDxGwra<+>IUznhl9X=i4*KQTuOx6s zve2j>TE}f)3X~$)UoowC@whsF8&x^b1?F}MZFXT1lvNx0{6vq9?Eah2Niz~ZQvOJoNAizH+f5)))m>DgGd;i`t|WST z1Eeh(my=m^oEGR$0_y9_!2M0jEc-PM*Wjs?80>6-3dtQMTH&v%FV{I8Q(dYjW+{u$ z9)*8(u^i{QKp%~t7-djt`1NW}{r+%HraC|Ojct$LyuQ37fs`A5+Sgw}Ku=C(f&u-L zUcj;kY%BJY{#SH^GcOqThUlD}hVB{nMu?r`j&pg!yHsz9e^;84U<6uqV`C{68&LCh zHMc^s5d%O)M)Hz|lO3RfnvnWH31XoSBN9r$QN%uImQ|!&2a-zQwg&rux z^pDBVj^AMKxvz)>g5w>(UFS7k{&tx~7E&CRjW9K+VR0Uj*UpUV;*WITA*kZtBIl*b zR82)x0cfhj9^j=%$14CI~8cd7@cIDrZeGpL^hWC3Zzi>%0;*U~r=1kccr81=Tzgd*R=%t!p+3a3@p7bcE9uX#MXxOGUV!pBNYvWb;&&;W;H)BHI?I>?^U-V>rIr8Zzk38IhjN zz2C9vFt7wwe^Qy&u{Q9pvO2F@XEenFwchE)(DRU2YUF$}Z!`ALtq;jYoAbuT=X)Wg zju^HbhxIeRgv*3*;=O8J>mR`+qLx5NA@fZQy|vD0e)^yYx$h=NxT*GUrlwU2aLmW$ zQ{`6pLk5~8MwUoXxwMUeT4}-*K55-QX)3MMuAWEJvsTUNcE2m^?_CRjwstE{Tx)GN zJyAH=|E)syQAt()Mtjb*@MZ zb3EN-H0U9m+Dc&W%D|UZT^H7~LSRNXY7>c+=|{r%UKBYUHlksq3Yy1nZn)es6nOI{ z-xa?ttfJ2B7I^2VhEbLAt7Aj>exM_G1b*Oal&jz*Vj&)luS|dK{)tJ=Pz~ zOgENqlp+|&@e~2FGFD(?Iwm>vM>Px-~w&>0%GFJ z(fAyHW@MkO>C74nF9K(cZxqpi9Z=H*49fdzs_e2%X(IdoSkvsm_K9R$qte0~oUmd1 z5wAepX@^0s@Skc|_`Y8Zk=Y6I*6pXCs$SByn*xtfQ4N{MTW>DfaWXEb%6!!Kr265+ z!y6l&4BQA2Gs*O|10n;3w7pp2sgQ;+cK{ui7&aS0Oyy+a~C3;U|>Eu z&^e#)oJOsts>JI)0=PmUOD@8NIT-Gog#bi&bn_WT{8*AajPN6|{$P10_Btda`tj%f z+$;5Xr04-^R#F6>u*g^pvxh;A&*))^*5DF)wa)AI*Rpsp&wl8i(W<2X2DqvZ1b zjX5cvgxd3#H}ABIfnj$%r&C?OyK|u-$9(dP2QL{tw*A@ClRj%S3H!ds_vlT>`E{Pp zdFsLY=7J*Hi#@f$wjCY|-;%r4J)7f|RL~GvwJ_pGuHSejaTe; zKQXpjdpJK3d6iT@m03diMZu)qmi?;32~U1)h^^L{z{ha{T>W|gXDRFHcVDQyvX(vd zW;F7Qo=Gj@uDroUO>6j2=U5yKS+$H*I{~lsEN4zrv2q&?j;Q(7^IQHCoAH$2qCmJ8 zi^QFgbIwr2D97^7XKB56Pnyy(hoyA~B`;jCm~td?rjcQ~K>_)yu79BE3CKvL21pT) zR|8)UsuVQ;>)CStK)G6Yp}pZ5d^SBHMYwkjf3&HeWiNemW4$0HrWO zkhC-cxJyImu-7KiQCU+F?QcR>?CR-2HAvUpJqeutWK18zjYY6bg{nUcMTfNBo37DM zS{iNYEInqsgzgNMk&;K}p(M?WlJyD?6+$V5J!I`Rsbmf7Qzw^E(VoFF?$R=6l>=O3FgATFfx-Oig%lk86)+zmIX%SY)NliAKt~Q*@|?! zRad4klhzq$4BaRI!U<03*Y+X&2Hl2)G@~IyR%U1DRH~r*9o4^KXOksPR^Kb&OH9e< z$wikyVBii${ZVo*#99CLNU@C7mlPDk5#cs%5rpHTjOZQdUR)V1odQG!F01Oi?^4dA z*8pJnwqrucV+81tFd-OP!~)GlAj2Z=Fj$X#Sy8vARB+r#yU&%!^xL*Wiv=88z3rhm zhw6{n-^Qr1XM9MdCnQB7Zunbt(UNKQ)Uv~pdo3#M*TatzwYgV3y6D+eu~6_K$a^K8 zzSoNwbdnUh)rAEG@Y+jX+U2wPvJ<-G9p7ukjC_*Q0*{>F9&IxrH?BMlw;^Z6LmR0zrR?$dC zxCcbde#m_wes~C2 zpNw}v_;3elfiZI=P8*1V=R>hkWO6In62tte-qA23ujdQP_XBZBu~Jb_OS6n;TED zKu=U0Y7hHT)b?aSo-rDKlvR3@3I57IM`fMv3lXw5mm?B-b~Gs^hozrDcYdJf?vjp5 z$OV*s5r?PrWFS{__V0OQo8ML-rEBd4^>|?R!O6rclN;o+roj@J`r?Zk(4Ub*EnN%8 zk3<$|kvQFe`owB})8Dzu{dRRqbGb*RlaGcHJWY?Nf{JkqTY%vzE#c|BF&L)rJF#er zk~LQH$x6VfKFUYW!RS8>3P<~6hy)`7GGZhk&1F0|9RndgS$-~;i=T#j6xB$~4(=tm zCLpdg(G2cGxkrz#X3P&MIBwDc6ZX{Fa1kK%v>{h%)Wxi!*z(EmV{@Psc40Ly&TU_F zF*TOOS1jqx+s;TQ{$-)}4%o8&B1?rMzcme>+zP6svIqa9S#zJv-=k(%{hAEfOctp2kn7rP@B6FXGu#QI}@d3c!q z%wM_nQDcdFf>1jY-mpLX#p*4ZDjt2oQxRd}N zLyKZnO14}bJ6%O%vUdnTFm8()Ri?2+!wZt6z`enl`{|DP_lh#}cwi}uI>U5wFF8ZE zoAKq_Ai*jmSwrgC4bvPcPP$1+?GO?i*VE?Mivhf$2ilMHSE@&yJ5J=O^RtmPM={^b zx@DVF`PtR)Ri#9YAnN*s6)li-r$%U$J4E8btzjU=fUUaE!Sg!Adg^wQk_|(n*<6(u z2mRtB#okbhd{U+}3yS}X|CN-W)TUNwi{Z_raN=>oy{Gt)-MM; zaOTa{oEQw{{HZ8L6wjTt5B$f^Q#`Qrgv=XXhQgFT&X=Zf=GJ==DHM#>rr^ATyfP_k z#7?*JFTT8Kuhp6Y8U}3Zzyu;CiKYUkwEK-+9#cmL1$QpaB7H3p=n&MMo9~j3u( z#KB=7u%5>8R((kdy({543^IQzE3J0gVa~PEQj3F#rL=r3bdA&vW*fihd>Em1{Q50v z^@431FXFx^v_Siksf%=-KmPm*@yXmfZx3w+E6g<{OD7LU85 zWN*-J=g2mmfo}7%9H_Zmg*y>XQ!L=H5u`O4#Ru|pFpd$v+KPiose)oIc$e$;RI{XZ z&NzM6u9-rDF+XF`Vhk`Ps#(5!CdK9lGvJECQBLf25Fy-fxe$$iSF9k7->e8!3JIs- z49Ryuyp9*6oQs>iXi2MD@&s7w{D|u-CvJ(9U#YV1UC|ULS=nY6UDK zQyr-brK7+J6A{(K5?76@&2&J_?-JMF0<>Hg(W~3uv1NS)1J;CFJ|+?-=J2hm?$r5f>F>cW%5WEw;43 zm~5|5V`5?bHsxIZu8Ksky`~`T!I>Xsc zG~hTq;A%f}#bmY0HVrU^G5^T`mln7N7Vf3qOb5Px7ptigoPN}Q@vErTw8UlCD2^Ym z#9VKuNO%$%8TaSSYxV@$q6*{jhU1fx%CYl~NHxFrm#`j4BWHS&pFP3Gel%n$J2w#R z@krWPs2)zH(KpBNn1Xc#)>k_N7Wpr(!WYU*|6y~~9 z2CaDT^)*ipNJ)iQ00TUVRJ;NjmNfW!L#%`}fH7U3$cYS0_e^4fr-p6rVh!^4wac<>__b^RsYfX_2hcO-*!o(daF|NW9!-r=kma!V+VbQeL zFTmlsitX>Yte~O{wO_Q_RmN5WaDW2)fn>V(Z0jiU>*Xv!r0#bIy!$QN5t~RzQ@gob zuuOb<0v|q%`p*o7nEB!bKK6Lr`gvy8=SOo!%CPw=EN09mX;`Un>+=1K#n$NwNoe$rr#}d( ze%)~@6cl)K%o7_PBc(Uh3|6Z-(T$YUmMT_!wri(I0^F{V?eW<+y>GzK&^DRwN)5|& zxc=O0vcBXn#03_zIMFqT3*&K`Oq%_L=wNfIO!hGllZ(5ssQBGbr9tNllt>PqQ{x=X4^VBdrTzc#=k(6X$5OU9qGacYkd+Oe>0c>!=vDF+z zE-1Pj(Mzi`JlL37=h_&Z{xBOvP;MAQ`2&S$b0`ipZ@TVDfmMIl6~lE|t!AI&mHu9A zY|ymIar(4PO5XpM(+Tz5>6g?in;|0w85KGMAKS!xCEf_-Np)Sa5u|z}gLD1gOf%+` zGxN+fWmztAre9XkOq$t->8a#x)c`YQSJ6`$1yqyqbWwG6thBVW-k1el_xWGS%OGmT z>0*uP)77?FdZTUj_9LIMI%r2|)RrO@lDUknLiEyWm5=3t16Abtw_(8Q*ipra*gS2V z78veK2@7P2GZY&xHWz_9Tf%V#+8X*?<~PCvEPWW?lLzQI|3=%OoM}Gc^;vZ}n5ZB8 z#Hm}-qc8g|rbnaOd5^HU$PHbYHja_RM4>&MuqS~z&O(SD3^v;z`!wIKuGTi%&B9Pw zT7yo-7MliOvVvzsmx>T|icQp1Av6ygLT%fmH(H$|?mu+xSv^&w4dJHtt6XpVLVHD? zjFO@mIKEBx+xMIOg_}}SiV6WDBN8&NaYKkly|lEjMOZGbc5uoH=Hw+?ToYzrM(}mT zeGqQ{FRY2+`&qyUxyQ}b5e#|XN*|n_n6Q8(=v<+}4Le1Hdbw_jtR;#kBFSA!TW=6< zVs&k3MgcC%Zc2^;nK(b=s8~>>$$)V?zry~v6(qHX9ISN3e3YMYnu2c{;KnQ?+nYi+tHajk?yxc5(!6SBHyB6SZZgTKbO*&q==kQWypp2B^ zt^f48xUeATkLRfsKo|nR6(b|jAE+di!K(R3MSL{?_qAR0=?|Lc$V!ocbe|dgCNkZ_ zk!f=Kse6|aerq)fK~A@1N#v%oC!mu=3K_%5T=neIWHUDD*XVE#DQkp;YIqI=>|xJF4$AD&T{ECH2HPim$QIL}XI2%px4Dx51D z$5OW|=41oU6Vz6#4*$OTR*VPQs-MTaHM*caZ~)W}E8?d&+*R>1(O~jBA959cHz+1NRD}&egTy^a=5J8|-i8 zSTM8?FaV-ADzU~Tv_fW#%bK|SEHgKso`)&Px>U8@KWJL8TaO!oqdpUO4t12201_eJ zyzfw_8(%D|l#4c8NM@dw$!K_DLPnotok;zw85jG`Uw6-!wf5C?1P4eT=oxp&ukc?%3G6&Do7mzkXR` z*L>NkaTE3O9I>xXzMU+xV_$vn!XtQ6`c}-K$SvmxK36)z5eP8Y z`zd9JKynhdp0Kr1szHbF^9hf-|pl435vK=gfr z`@d{PfrGTtO3Oh=e6-!}92VKL2$Hof&1Voj3x$9nX7(7B_>Nv@kuN8vxtSvv0k8Fv zO(WSjuble%`MI>*qnj;0x#_!p=+i2WthqT=YxQM{GXZb2e594DJ{3ZL`a40D>`Z<> zaE=k|zG{c`fNJTviJ+e&&Zli+2=dgoXg?*$|Ud7F9sS#>V!^n6g09q-*37GJ|<=93Ttd zn(X~yy9?$oaAm1sE*A>#>@Pt00~#WLABLy_0`xQJOW+iU>htd-N9_~+ZUm5Hch|mQ zn3Y$eK(6n=-Y~^ks8fEf{^4^HSAANq@xqN8#FbUUW%%DkcDXQglJ+|fParP_bhp2d zC3d6YyYV8AqA}Q?b5%Q@G(1|;H&PdD;9rhjs58RFrwA|0GspgTA@jPLVse<^3F^dZ z?C?NE|KB4#F+Y22hSY(Zx>3pLaAjj84=L~+*&*;z=Ja31ywx%b4P;I}zwH{&0bP_t z#S~CcMZ<#g{mlfHk|z!9k;z*2Tg}!usL=gXY@XX?ctj;tG-{H_aH^j)O!)48(93Ac zcH=?$vwA(hK~(?xCt+9QS>YaALe&A;6=-GTl8l&k~%QoHK2-}XK z_d`6fm6JtxBW;9T8=vGddcKM4BINC0<#tYEbQxpQ>z4|4g}N(eos7;va#eDu9D8mQ za-IGoSt4|PKJe4R>rB2YLa}T&x)>eKV4fPmfn?>eRgJN|l#4COvH*6S*YIy8;Yi`R zY3RKX&HpzaGB!K&jn&mAAa*PkYdiS-sJP_|8Pbb#DXmFXfRs;V>F-ntIiIP6Cj5d$ za5>yjKg(=zH+}j{H!&QQHj&rVvoI^=OdkR+sbn2zXn3PSlZX9?h8$j~gok75F+KbH zq|MjDYFg97A9W9lV^Rthl#w@E=%f3cX4ylgQ zbmO#CB)@rxD7Xr7CiV|4_5R=F^`-9e76nHBxPCAggXZ6q^$eo-t-EqVk(90#*2B@n zAv3}vo%gTWVXpQuqbcEMilQ%B8%Ih*m)RCU_&8LQ_I-C4a~*Pgv8D&C@dk@;d}eZc zy!Z1iW)JQy^JTKZ`!2;0eLdSML8Eq2E^^oguDu9~Z#2y&@MxxC>Q2v|GSBE#;k=rs2u@QnLx>7mZ z_ecv==(heM9@KTLNUFQABO~_>yMztOIJ!S?52+jZ08?1|IDO?^>%92&hwI&}Z+Pd% z)5gU*5R1{|Ol(q{io3eKjj!JdD21BK(sE6{qR08=9K=R?0>v}E?^Po^uT^X?r{ikr zX|4XxDZZIgqL52B%P1?CmzPgDXMxDUAWnHasgt(p=|Yv$(bQMb<-b&+MFkYec6Xuv zwJwZ6b`^Pb+qkuTiD-h<0DJ|>pR~oZTY`6u*7^hCGIQj2+x>>Gv-PwYtx5H1e7=y* zzp)DBIMayCHQhe{q*bm?i+D{_X?cmk%x}JT56Ed;3vIU}uIhPpfn0|L8E2n9a*EeA<)%-dFbBua-E?ulC#I6+2g|0Y5meTwL=iziJ z61^B~4xRQtr?S;045E8yWR%s^Q1J5;fYd|{ItvS5UOa%uPIX?-4go!c@2`&_xla-x zQ;%Nk^X(zC(eMu|Hk{4EQGNmaeh zn5TsK-qNE2-NYlp`|`unVm2nFa>yL_P1&b$Y8wbU1uzxswjVrd2dd{;qhk5}_9H1a z%KWefF&OOoIT^gh1D#;nR-=Sjp&_Jq*4T)92nEN@=pg=Y#oCN0FSlB4jJiKvWcGTp zW0A3($NbcW#%GpxG;Dr1MK=3NpmBB?+7*|Rmi2kY{AX}bUdq9q!p|7nOpsqD>W2b0 z3^o8qgUf$#a6Ow!a7lc%5CWS7P($00%b$*)Th_AgNL2T~CGl;9*y>X%UU1m9aqqO=6V%pEEi)LN6>S ziO)<7HE(2RNG62=k;-3Ay9XJ@a^}wos2gxyxM90=2cxr;jZ6wZ{bdvz+TU^PiT~Z& zCkl_7W@LO~FSP)X1QYHriu#w;#!EufFh4Sb3w$+^Qz-?bncs?6&Fe?4ABWIYrRmHZ zMoWaP&UEkK6!tPKt?!NYRA(gzUZ8lORu^FP98;-NU!7$fMJkzEJTf?rrlhhMADZ6r554@0ua%H(+M2Z=EcDO^ z4AMha4+O42H05`YVV=;4t#OqbvzYs~p;uj1raM5uQ-}I|SdCtgL|D9rM10`nq3K8O zfYQR8yw=q9B#MSFkAt+)2q5^dsKo`Q!jxZH@Y24}g#+2_Ey_SD-+RpJ_KVfrjg9+< z?akEh#sym&tuBg(|J=KazB)RHNjVnDB9wQK_)EUoJ8H#-~|;-edSSap~*22;l^` z9(jQP{2osG9!|KDfLYG~4=)uTXT1GW7}OOXDFGGMxI8`n%C23eZLa*9<*{GbHJYR4 z9nsRVqI;%@Au^i4u3t;>jRlI`flk#Y_NedQvWB;Mh8)(C=xYl%ZePDIhWl_@cW@oe--do71W<#MtcsGN`fFo*oUjre zYseC@`;}i>$02r$IP^DzI5Cd*3V7GKLq4-N+~Q|^^X<+b=RD6BxKlqZK%JtCfRF|Vi za<)0LNS_royH8G6L6dCDi!aBcxj12PyW@)Kbb>-^0$-?q$X@!uu@m10XgU`G{tlHI zDYo3?Lq!tT|9G`3EhF*!197t4u*c2DZobq$;&eWr1wrg5DLlZWVpA@df{S{8E?!*~ zt-R?q89%QnnFte0Dsb9my`cdXV@%lr-9w~20ET1T^+kATFKAl!d8E|W}h>? z+sXY9C8Z>?piyPKte_5$!IL!4^#6&VbP*#2gcy-^P+{lVGfG$n&}hv64*%5}cNS$h zzOui>dpu|T9xo$RV&K?64HznOoAtbP6n2N1Cr2t(?+f{S1mliW_CnfBDv;%kr?psq z8&TA9T=hEHAtg@lnYzW_Ev}DXU~2~oFLw4)IJ+SC;z)A8vDxq~_KmS0)>Rg#oy*A) z@m`bGVSI*&>%PORe-)eGE& zqa;5+7dUs0tK;s53DkYVi0RN3^{OFltk#h5o>=Dj9Om#ap{#PR<%DmnPMf5$^%x<~ z<`aJ)54mhM-7{3eoep}*NmiIn>C_7VR!Cmn(xDy6q21SoMd3&cz4hXHMp&PNAAkQlaVWvzt``}blmR6G;cC3 z{BPm8Vuq9HV^}Gr0(MV1NlOVSSTkOxPM?c_z_vY=qR>^JU%6!Eu=h!9^_MAJ^`2bg z6*Xk<2a75o8FiRaXMGF>x*pUKGC&Q9P`yqy=;a^5sT$Mwbd2-!TKxHK#7;Pzje5?^z> z%kpx#L&^Mn8kp0qi%-~a&(xQ(W&VhhA5mUm_O}0GGdXwGiotgeNdEMdxVTY74RGg zY&Q1t_2TCh?%3HLmULyb7YL21dH*I1$ioJ@`|M;`ow<_^Jvi6fUxQ`)(&PwZtJHQJ zE_+=cLAsSig{j)F$p2fA`NiY+*Wq4@j{NB|WOpZirIV27$urL@kN0CZErJ}Pr!Fu-d&-PfsY!CZxjjs4^a*z|21Dc4%6=~t`nM*J>T5q&j z28oe#$+=B*KT*($yp|i~ZVB(C{)ud{9PZ@oq`(GU(UbK%=Gr*Ik_6T1NY9^6JyTI| z4M!-4Rwv@5Z*~u+W7B+m<~O_Sa88O8XO`b=*(dl7zRV`eZohDwFdj8CVgbgHO zwE3IRa+;K4TICLg3*XurO%r1{XsIIL$dBsx5TeZfWFNs$y1-BjUG8I1N3#VjqXv~jogMw z%6R5irqlU81u}{&+i;-xkGuJL^Ko34%Cso`Uxj-JHY5%C1~eY1^#iVnfkys&vfUNl zlX9oDlz#@{E!7(e10Aa)O(W_9@GRM9rHN%vrHXyigde7V&b@$AqkSl*;B}Z!F>RQo zlLuuHliO*NKq@SA!ZfzEYy4a!Sa6v|#yI_R)3q08uuq*UdJh}-1mEbK5dVO66=3;2 zPALoS9yN$*VEhfMX>dESvQfRep>oNg;!v6!@c*#@V3ZQ^LHcHa#9Vs0mfwO&NeWQH z{7#&9yJaz9XXmCH)CwADX=i)uhLCE6V-l(ldr%O=lVs@Z7@F`}{U>d)f!3ETN7E&s zO#d(F0=IvzxuL|^#<~JPN($^{5>z0yE1ov))_0P#F}X-AvnsVBW~agnF*5iVFHU-w zHNRFSvu{5=Xtm^|D z_e->V$1okv#!Ii?Ic`@_j$)7YG9^1&9;#_L4%BhPID&-f+p~2f%~7@3!fh$q`|QOh zNjc{v7Os391kH&y=uRcK7^^wxvSAM4d$r#1YkW?{t4?~Sn7LzPuug43 z@Y`}x(tJY$K^0qs3paw47~H7U?H;-!k;m%uuqB!U`_pF%5^L=sB_A|Igi&!ae{9^7PW-}S-n{&}+T`<)@QRS(<+Azus1Gw&pLxxf6GD>-3YtS@GhPyE1v7(WtFOx9f&;Up13 z$0u>(l(g=aiHh@4i0S>OgSp>ar*!Ks*Fk0V(67+~ zDOs?xKy}pGgjr)k@Cj^bEn&Zzygth7VG%hzF>Q`Jo?Qd{)6Ot#U1;#I!WpaIGqBA& z_h4&yWZklt_J;|c0a;pb->cL6_wqE&q=94|ij0e$3n76@@K+3bH@-8XF%;l-*>-4h zMRZ2a&R?YNV^=w2)`p2PQB)%eO{NUxIXUr#D@|bj<+IqOX=kMz!ut^|eMw6Qapbf@ zWh@twCa@)MPP!c5QRNeMP2H0|PtKfR_9Xvrt2^ zQvn$thTU_C4?8VnZ=&F1_I1B1Cn$7KG0_hKG|Fk$3CWLy8X)9kL0I_II&{QS|0CD% zh<5y;*u}n3olQXM%m-aQCA36gO4Lp&6SGSV+%E<{Xum`>@u67S(^AI+S0t|kGhghz z9SnU}C8*AXepz~SIN^K1Wf^9XYxo3ZPAP}I`!Xb}YySyUY@9*8DVhU-Qk>+Qfxi6ARq2%ZD%YVM)*g-jN zHU~E+BHVFbkU!uji$}b#YS+HcxSB{uo*&;HtY36+kDt%9o;IOxtyT>iuZ>U@vT{zF zncco$^pej}r>_)Ty1a4Do7>Y5&Fj z{Pr#kuDV6>jPO`;zrLk4LMRCf3vXIx>Jc@3bj4F@RQ{XOA2*<_BrWjhMVGNZ%^$rk zZvLLoffQC4vEXyyL^j^1jl@=&#q+<|_v1~H3lpxczAn9e?X1+cuj_2&A~mX}?*(>W z0!*^^@K#YN@y*--77H(n=nGx(?!fQ*euZ|WMftynu>#f!S zjhnhc9u;ZlOrWr_8b3pZjG3;=yHcE}VP&@A4WBsall=E9-b5dW*Kg^~eZX`-t$f#N z$zvYz(MJ-~Ik}<-p{Ro8(DSb4>_m}R49VlXTrg&KSCA1q{is&mexlVnc-bm<6q17F zJH-9O!fq@~uh;7w693kPn$cM#-D1hs^4adU?H;{UlHvY%ky1*D*~eK@a(h3nXqV~1 zM$$_DKB9m~<7PYK-Tq#XF-y=HG7ZT_eb5d(-0aRnkt;mv;{9T7bC_UCetTwm3Mh1# z==j7IOPRk}A$w%7_QXp!k5l7Hl(KD({wU-Be2zYrb9j}8!q{}e=jGx5)Y1IF-nGpU zG9>lCD3RH#R@82P?p~KxKii*^T(mcsltyCxP56`nOD7sfHFoJYdn_{R{L#3Jj^sp}Vfv^8yPDosxAg(*oOr}rZ zyqmB`wRuj3vhj^?pUL1H>p2w0cYArudn=)lh%5Us(h& z=cZxnseSX7w8qn2yM@d6E^hx)#(VW9Xq+3u#{4*b?8I;Fg_D;g^1MwlEH~U^Ty46M zkrT^vhbrbG^O9g$7=O9B`fFv`R3W|a3$}7am*D|RST)LrW}fmmyIjZcTnqkSCU10L zE31;NrJlF}WCWj@Z129RgHs-gxC4Gm8%A|wP}4<6FhyrYZzESu_^Hp&hDhri$5U2C zyJ$?H~92X=h;zVI!bvxqjD=e???cx>y>?D(%X(U>nYP>6Vc(Y(w?H&sw zcVM+%bF2_BA!ug^o(+@g-#%jffyRAz>{FOb3b+Vozga6f)5dRJh=Zf4i%2)ZBBN`n z<7$hx?%b|9jPGiLD}{zHDU60mN!=BCW#(R-lv1E-R;R0NrQ+dTg>Vsy&P#N-@K_kw zs4It(QvJlEYNJ{2|9Z@1+;MW9xPetM%@BGn9X81^sT!S6>N8idu z&Z=mb7&Y9_K$z8w<&~9Iav(0&PrOF|_(b`PvNP0C4);6e)BCqzU%ZREYB=s&Y1z>Y zsePIAgB&{_i-xWEAK>n(V zMsr1X23qH;30WiF2x+A~{&KNKT!oC*NLsx&(I_BFkPV@6+E_prY#jgWfiCdR>ZAGq zHCx2N3Oubwee}(NsMRrVtfJIxXoAWQ1eM!eSN>^6U@!$$)>uRHLfG=U;}>xU_L%j} zkc6XM4VKVn_O)T$S(){TBwFp3v~84ZlkNv!$H`SG z7}AG>lh>T>x6ZD{>fhs@s_Q+7X+!oS@aoNpggBia{690VkSgYAWjn5&$)n?+b|%`~ zZ8w;F93BqiUw;xie$21kzsPzOr|6h&4s}hO4o7-k?5!^Y)la4SfDYmGX`|}}-|Yhz z81?}}&$J%|?N0VN+B=go&@8Wv*Nv;7>K9WCmsHg`Z$y?E!e;N)+w-tYX&?OsA`@w& zXdP%v4@m4h3@Q1FHM_&*ZK-!hk4nL$@#5=)nke5GOKquhcs_9_eUipgzls{UqdN5o z#moUrt`RG*-R%ZT60-KKH;IfeIE%dPLXxkMP9OCin&aJP&zz3_hF%wBlUf1y+e3;S z?0un-`M}bH$--1s|7A6~Z&R4@6pYfSTysPg4Y7}0oY1_*7pHucSixh;_hM($-MoQP zxc8&?R`6wJ_iT~!@SXR%=ZXrPJl{@}+sEll@g{SD$&3%>G?7suR1{G((Iw zYehVFFYynZTM1%zldFi+&eL>}c%Dp%vYXO3-NIo{-d>N|WO~=0NFQgRLVso2}8>p!9Hs7ZW zxjzT*rmVKBIr4V;Qtjp3hdHS8`~$WEY|AP4 zIr;i6>JVhUptb8gs}txt!|~q-W7*?p%QQ>di(ex2jBIUliPGO)sAt7*Murqy4nt9O zT22*Ig8RGwOPqEcg`@icGls?b#A6cO*4UtmjR#cP1lZw{Rp(93D0J&-`jWc5^B8aax5 z>cCy3gfH&*2odlMP_K7OU-S`b{un>%9x=@s-PW#`9ODdRv`2Hg z)E03F@9FM@tjzwKh9_`RQ@yfWTgF6A?xMFWK^ z?QT{%_3m)=klfzNzLy?a2y6K_CYK$9B$YWF--n%8rALHu68ltDf!YWtsBMd?jStMH z3=O&f$LV8W9QS7b{(K5U2h86N!GbHV%(uA}b86`@jxtY&t8c4SRY9?_5D^=Kwp2^@ zCw*W0K7>_jsI5g^QZX$|9AB2V9M19B*r|2Z4K;=*|I0Q6UerD=F^}+4KWb_T5SOJ6 zxwln#cQt+IWlLO-p&rTK6sVe`HFk^ASz^B=N=nwB5O0q^+2M%~OTZZ%arqP}NiR2O zlU9m=h);MXAL@9&mB0AeM^(jklGMHzLkLvhziqW4rlDq!gJPO=b03V!EHC1vR!g)%}HTTICUe3x@eV3zO>M^rAgk%H#3j z7KHGh$=D0eZFWv3m41+5{<%@ZU`vgL6x()~_6JvA63_uJzfptc5>a_<7B?T~K=RdA z-iHboDtJq?inW!z(r(2A6Novz%T>4?WiaaR{^^&SW3I>k444z9odJ?+|wt02EpCSJPna2%y7kQ=>;*%1hBfsGG%eW} zLX%vy8-n@6Y2L3yPT=}e3d+>4358@5J5(EX=QgBZyK4L*X&ni6Y2ljlQkuNI^i5fCI=>VxB`+Z6({No}S3*FR9$rYL51lKWnU zMT!Vc;MW8h*$3-ImfD|&Z3=2^uCG6?S!b;fhv0h9ZeDQ32X_~5)i+>x=4U&G=2_;6 zkgPuZn{0g}5f@GpwSC~z<`S06vau%DMEb1KMEO;ielPYU$)sd*khil(?d456xTDvy zMyw&&-p=&XJZn{%&bvejP7valw)f9EVoN??zBOCn3`OF}sq4g2;g~Qx&dk$J)D;w_ zFuf$&!wp-LG>&T=wBN9NKJU;Jf7T}5s~*(eC(d#>$4-c&*cc65WpKLgm>s+}vqW`T=&)k7%MkujW!L-l!}g}Xp};zG+IV)j){0@EI0QFjglGU^Uywxu-W z59ya)&WmVEDqZs*`1ru(N3GG(QIEF}^*PBA?2*z!UfMG2fh-?fkXnE0wB#26oLn`< ze)II5WR#GYZB1A8wqp^q{+LsARCK@VwQ(la4KJkM))CM>hBx?O*z@ehLeEc-a!AVu z5++(&%kSu767&y(M(xm)cd1Tn828R`ZdXYyFZKt#%<4KSf8==OO%XXUbj2!J6MhJB zK4%XNqeZAU0#e5$OPIX}zf?9b9_34g)fex6+pAP;{;Xr#SY8UhUApBgF~tp|49xa~ z!KX?B7h{)lBN%+B$aCJ}G*Ux&tj^uCYpea0l-tjAGbgFV@e@6CKO8tQa63&MzTVOD zl4oCNy7V=u;VT8>VVY7eh^`MQk=cE&dT|&f`rI&p*9T7#JWWD|U<%ZGvDNDL(JtOh zYr2l94?+2vWH+jeQs<35V=Fz9NYt)htTs=-`uxMG7dO!u56A z)L$RJK^hg7FxC2A7RZ?#Q^V5ZO4s@j)U8i5rXn($L4xar>Gl61sC}IWn2kFJBDSVR z*6TbaShmGr*!mh4I-x3TK$8B}yb-n9MrSEfSejhL4 z1k?|)|2;oAr?5Tjgp%UCPcvX2n?G9~YrE~Usp>E$PN>R-e=Uj@xT ze-Lcr!OdMUWf3FuLZcsXH0X!4&h;_#A;%wFz>SwKBpoBzpW4NWf`XDD8yH@*976v? zU=|)?IhdwDN@h+$=I=aKkP6+DORSz5V)QreEpV_@6n$UG+~6 z3VzLQn;O4y^4xH?9gj#Or!I~&WV7Oh6DuL$(GPg2+5$++GU`kzw_d`^38ma+RLu}H zjRP}wMo@ds${7s~FXkNKb3tz56*8mK7;kTpdQ!>k-qU9^;{zWkCyXEt*3X6Xf`A9` zS_hqo&x;yW1e8`lDB}qx#)?ikeU(H)g8M3o%-BHapSx0|9WSn67dv$wciprg4>)uz zk64&qkr&iDK+VjvpUVEYfd;r}=~#wf#(ja>I{dUDLixHVIBxm{zDw{9(+{$C+GbkO z*SJG^+uQ)uZiaXgAQeQAA)RE1h>HkFzOe#28~kPjkk|LbzPs8KR5qej{*14CK{lTI zt)LP^MxABX7L(qK9Pq$EOsu_CQPK`0bdF8OO7|o}kCsH&ywe(ojuE6i(^{EyMhSNT zn3iuzPJhS2=tD;ld_x;M@oAhK>vC*5)-f3i;u|yQAvGg&Zm3)9U^Wd8fMGiJ@ z^||AW-}GBxk*}xl8(9tJ74Ae#x0`(gX zU6cUZ-<4wnoLL&nl`bbpZ0~=D(^ybW>H_P~+RCgeOZ0}g*pe*O%JfY)h|z7R`${4j zl5C8eecEun&V z4v;|RC-24h01Z1@o$=GAj>#8tfbbDZ-P<#}`(b?+i$3=eW-rm}$BZjftRGi0&owrI zkG37=G&$}K()3%~^V{^Iy7B>k>4>k#&+XcwC)<0_jQKZEm_<`SsPrJIYU9&ZCfu~X zG`4r8Vj0}15)(8sK@5C32y52AEGct@!9cfFjk1cWA`4&eIGAmT_|S_`LhmiN;&zlju`uPrg2>SE^WJ@VGu`{i6(TLCmGv+vh-Lq5zAc>wr^M;4Tv01hO=893 z&#YyPC~ytGm*|@Xf{De>oM^qotMP=}W6o`n-~k%EP2l-Zy%E#?sK0>W(7oEzG!yz6 zN69{+|3P0Q@W1zcRvaS;n8F7Mw2s5`y%})eSETsi{|Xfs6Bkb+35}RD>ldx;6O?(! zUr1T8AG*s|Ey@{e+?x*=o*DpG(|chi$M zhPFCjSjlAL6JmDe*Ym~mq1#r0HN?oy4MmN?uNdl$_ATB<&WFXVFrP~nx5-f*huQQe-Q6LdRva#*AsVZr&jBC78+iL~;PD3)x zGbouzmzf_BRJr(#;Ucx?F0Rvfywl^P*CEtlxB-)^ygbi>3zI9o*!3B*5oA2H{)_N} z&pl2h8?Ti9KqH7vpG@?y{Bnc3q4fY}+OYFYK8atOQdev#b&ks5j)q$fCcsNKSQp|FH908}1~15|a7;%=x(?ji~9zy6Gi) z9JvZ&di99pJF8`o(l%oA`MjZby0b&b?HS=`_Pnh5qjbEByioVjbCP;*!`P# zoawk97O9bs>^K59ftM(-{>J{KCrGrL(-|=Gp5gX+!Rm%0uAtc#@Tql+mS;M#^=r{4 z`CNUneG*5#qcwb(ia9k6MNUf$^QI;p^*>V@+*s17GsVx1J`51lyQW3XN7s{?mygSTO*1I1dQ|BCFc%S*l0{-CW3^b4(& zz~jUI3SvW&0i>Gt6-XQ4L|}H922rjc)!N=5>*|Op zY3W*be+`DJi)Q@pc@tx=5IA&Sw0XRXHMc6-wkiwe6!0NGnB~aEJb@D|-Wca67&mE>SGFEVC5L>_n?Vz-baNY9M z`?rfgpU5L36-4P1PNlond7wS+%wPJ3Yigyl958MYTFlG`9X5?HpMe=I#k~I(FaiohtBW7F zcv4p&#AtPy88kGeS-RgiUNDKslf66s7hwSaXYEX9ae;qipS6GVz9;E&a35H3u^}cH zdI-u_ybf538Lsab%d`II$aRB1HVsJw2*1)b_s*8Bbp`LNZ!)>8RIw;w06dO?%{*cK zL9V+)0{0J@>KCO-@vZYWZ_chL9v>nai=92`Hh?uY9$2Y$boA;Csrt-;D;pndNE&q# z10;-}JJ0OMSSa*_{ig8=Kl(SDL-)SHqAEe`DSk0GM}{H%g55cYuHpS7e&Y|3x$W&Bc#eL~57-Hb zmxs_n&E(088|ZIEk46<$QMu**1DXE+8*3rUf2UaC-`TC$oz4kQl{{N=)PM~+$>%40 z*dWDTy(y$XaOOvi5qxjDZ`NL~GtXw@kPzwN&{4;ISF^f>>+#NZ2X6e$iX4{LcY znN2#r_&xI(>g>9`fle4_Yoj5yz9Q}k5<-)+&8@m%Vedb88xK_7j^06BR4Dr=tUEq> ze@0&%VWZ};7@Ls?W7`)QywUUl?&rOGYfKeH6a!B?4G;ck-l8OqX~gDXK7AG>b;dx- zv`jZ;HrM}0)jNh)(sf;<9ox2T+qP}nb~?6g+qP|V+(|mN?X&Oay}lo3{ol2#YSqLV zbIvj5bp|-TmOESK3FGV%BZeSCmK-)QH<^W@;G_=TPwLH|pKk7!WWYz@4x5@Gl-h0a z3F_*^nvR{nBKht#VP`VK0l6=EE`ksuKzd9~ZFcN5#BZ%m#{bCw>FFtK*4$(|jn1=I zA26vDwR-5XGTu5q{A3Xf0^wPHxK z%gd7+IWAXFCF8|`trr|B9S#C26bb_u53K@BqKR$n3^p8gWd`-O$SC_vun(b~$&<98 zLItI*sXZ$f5s`7EBy6FE4SI~zO|pQAE5I053_f3$A!EeCo_i|KyqI-FQtUOCMYHo6 zPQ)r=7ee+1k)nU3;P^>->Ea))Tp5esK&@_1l1Y-Xs-#(E1dDaK zl9p!?MY3ZHE&xV*cMno2Efgz-N2@WK%>PafxV^$MNuooC$KrpHnSKfd(1$b4Pss%WZ zL4wZ4J(UgIY`|G%Usagh#iEv>Acg%#0xv&)w>Sk>+);nEP|Bo^JN`RyoWa(Qg$XUd z2K`JE{j5|s`YV7rFziefr^jU!mz97;<8zA9*Z{%DiOwla_Gf^SI#CY+SY;h4KBDGp~ zRz@=< zbaUTZTPG{y;Te0U_lCTb3@r>0I;`pM_n;5y?(rS@ETxXFd8E%gW=f87W ziu|hh+PBx&+mnbpA3nrNXW^QiK5y?E#IUir@Q_*GJpFg6#evfIZG`_(1nP0ar0czx zX&U;c;qz$J@{E2p;2VwS6Q5kq4T8c0LkQ8|6DG*d_qEc82z_T~t(55|OYS)l;>+BTOD&h~ZdP zT9MK&E%iCa+JC+t|63dE%DPa%8cDy1YSb}}!^!bqHv!Y;c$kB$S59G#_+5CEVyiQg z6d@_i|C#4tVzSZq=mI??VbrP_DS0+dXn@n*_mPKyFK>9uVzT}|*WVG~0BtdYDdfAy zGt*HMh%ydeZV_*N-1m%(u>SEdRqB49*B_11GMMwxz9VX{HKD@MEBY*fQ6LEn%nUtC z+xtS*M*~;5J7C{(tv@sECDO^pF@^i}zuo)=u;MMekx}u3hmYA-c%Di__ijB=2{FS{ ziR;fRXJHydR?B;B#Te_VDOCMD3L;^NTchqx=0`ov?b>xa_^iP3zAd@_zR4WM${U5a z()9YhZG`>;XHSx&Htu_yOIh3p_~sMMj{7hy)Y6^N3lCZ1$to2x8(Q5*Iyawop-sq5 zMMuu!GnRAIy3TLgqG;hsoNwsK_})P_zTn52uAsHF+Oqwn$PQs-Ox{;m082njvoWSi zU2n3Q8peVis-SX1g&A$$2bV!bWQv-PCDoRU%O9(0j|Lz0pnd$w(hnpq0V1&~EGz_B(v|5kZkn2-8!9O=E{9b{ltU0Jt9 z^8L>`e$^iqT8Lst(*Hu!iAauUBGiXP6rQ-w{*A);_^Sv>l&=A`_?M;KYYc51&xh`4MzQ2r5_%duHDP$zrVm`d2y27(EorjkqnKF-CFfv+i5S=#8js1C} zzh}b@Ty$4u{6fD#K#@qb49Clq_i54T`7IXaf_~@`qVVp0__51zE zI#~z`f2PoU8wjI-egms-5oe^LkJfp`rlf%(F)I4mv2yr80Y{w|ch;iiLl+?3df$P& zfs%?g2A0b7nK;MEUbIJVsCqz`kK&|!_`YuWg3?KudQ|WAZp(F)mm}LCDP5wwJZAmx z5eUT4F{|>^%n5|#L^wceD@VZ-dj6ElS`ZvU`Z(e9l7yJ%v1BoM$Pv0P9-xKg~h zBANcxW=|ziS%1`44Q|}}-9uHAh|+nKNnF=;PhHkSF4X?}&^_5HWW;&sY;A$!K%f5G znG8!KZy;vErsKAyR8-u}MB>6k!>P z&J!04gC~+&jPY1Me{nc!2@`o{N{gc?QIbnuU#wm_?|@i&Pee(`(nS)4*ISVPF(mu{ zfQQ%!O7zq!zY8r+2a?*oLe0;o38`T$K4U^Cc@Q<0(ln|Tc%ekteU$x-r@E2TJ0)99 zwU{!iPezVrks%0R>cpaS9&0x zhka?|vMYiqq$BWaKKCXFKb{q@k$>;cM&bl659fMPb$_`porlM;*q=!MhD0zsj-TT7^@|KF0iEr8jPL-7uxE{TSgWQ6gP((1=zB{!NvYV^KZLs zDmx3|LA~yDCya6i)v6MWG|+a@<}Ii~Obk%5vG&Blv3d#?OZyo|UL;PkHDCEZ*nhj|*mXw6lPw0vK!+0%M z>l1U-csxSq+1gCR&J*rXpgdlNeOCByKk~4}^*sqvA}EZ*TXKL3j_kK?2*EcR2%7DV zdMpch<{wLn-|v1kItGH#L`Kb(sv2mC27hB#$^z-qfJ_wr9VRYn3}ql{AK^*OsZqkZ=)Yt$q>%7v&cz=ccs4CgHi&7&K># ztBqJMS5|M&Uw?`p(*GMxoE0+v@2qQluQ4i!fXzv)g2n!(S(2LHT+@=URH8Tpg5AXy z69LJCz9D9=idlJwUIk;iuZ#@Y8u zqEfY*zR6^Ws-(37#e$QHg{(V!9zo!Fg_9Xm`zmGDt0I zO+eo9x!hGJE-a9qjlsR(+9nS@`In~hM}Bx`OZk7v-K2qz?VFVq+9Y;{*r~Ex|HQ$&|EBO+k|R_-^{wpnOe zeQ8eDSM(|WC31@)j(7tW-vZ>IIB0EXL3`4Y-c7>N39aa)>*oLR<4-muQ79>PL^!mS zB-xvmT;En39w({b3B25i^k{*9rDljN<1C)41i0=rNlpW$6vR{lb8Q%apMc6Cl>bb8 zt1@Vhhcg@%YUa4&u*bn-SW0s?(r31YMQtYwrqm#{lqc{s<<$56grsW-FW^hf1Cd~E z3<+veO5krO$$gg%ws~c12-BF8y7VmX2?XNV<<6UjUI)Rr7Wl z6Fq2ai7ygV0V`#*!wlr34&{7N5Ltg}vwqfKEe1(z@I)TA72vDr&nsH;W)*~wB&S+> z3a@a}dsJnAw?&PfMhc8}dEqR5S9FKPS1!`#_BiR%!6sF{5s{IFnEwo7h|#x90eDPfOFZ zkwh$5P);QfjK%{6FISqd!bAyPV0XU#1_wX0Hwy`2#>l!#R%MX*y8lc6_{MrPOnhSD zq2s4b1`GS**MLrEn8i)jY;^U7BQ*GG-nh%w)fyB3a4={^Y`52o0f+O82AQWRVzNsH z+lRY67UEMk#L(K+TgV6fdt75a?{vz#K=G*GrQR*|yuaB|l0{wF?v1lhtnbflv8^NA z!G3lbqL*q+4R>FcAN%wb%G>xCMe?l*+H9SI!ErGe^2wJ4`Ps4Re=e>Vclei7<3USM z-5Dk(W)fUHgsYy!u&|^kYTonGl^G}vGAHr<4QFM=I#gpD!^<*%rJ{t$ARdy~gwV-S>|8!$s|-IhtKLaBTxiPbg)Fuoth@&* zy9Fq_1*y6OXkwz1EGAb>YqyP7fAt|o{J{ioYWPk-U}YuxpRko4*YWK`F}<NWpLmsxi@AN2b+H=esspq!|X~*Ij|_>{?pEUcHt#rEV~OBezGcbi4iMbGgIUmlj)s)3&&7+ZXQw)Wp=(R9pGJ zrxse>6Q6nMc}qJQPj$IEZ3t(4ocicL|Q7gUS5)!UtByMw#PGyEa0n|8Vkuz6D*awAS;^KoW z&V0(BH&Igpm_BY@%Z9kt!Q*`OeXPiVw=ry^6QeZxF~~)Zgwop5(CNVFia?7h__c} zu1k3mQD|+y{LxnCP{|eY0zI~Md^=|)L~nHC1j;ywjPZE-XCI)3kqM6=VJ$0u6)bt?slc5X{n*p{?WNvY>~a_wDofA&`@Oc&bX;p z(K_raAJpJ%YAX8m;l5Spz8^;fs`?%In>Mh& zKF7FI6bcqguby#yz=fgfxmH%Qyxk5sBAd*U&VlXz5C-2DUi=PCi1w_C|4^{f8iVKa zZNtjz#-85;JjdBGg?jP+q+AjT7+B1YM^n)v>>Xzk`8sbO&BS90=6f=r`EWd3H#K7- zDU0|Ia;Nn+ge(OJOtz9lc^))j(O&Q+`R8f7UvG>L%@*7kI)tApYBi(bX}d8xD9hCi zILiDv3NQQz>12!)8}|ejIt*IZ{!t0{ONiIhr`uq20gfB~w)qQeP!N%<P<;qNzZeUFvnTh|&F39@^iE8Gi%Z#EwagYmb| z2j*jZdFN9Lsx*J*=ti}6161wh=f0i3j^@mQi-b}0<>AwOpP6t<_DlbZ62?x?*E1{6!hBIy&1TA8?J+Mvlw;mu{B7B1wz=QLKc%k(L!q z+ys;^*9j{#ytkEPt~+g7xO63@ElG8H@bR|6{T~&B{XSFfJ8_a|bbq<_gS>yw%?74( zeCY=&=C}V?4y2kQIGxAuzrM}Zv!0tw9^|vIVwbH((_C>8`W(T}Iocg(z@j6jbw=_LJ}H-SMvReX`p0)*GjSi7E*{-W;b&>>5o6O2xEE zr(C^dVf1sytI*?0&4iVr*4G3b6wiJn1M*7T|3gN_B$}-**r}_k63vi?0nn%qUB~{XoTw|W-W+`$66n=uaLkv-g5ei&I>ZqwNRQF`mx>Nr&aNWnyS1? z^i2S+tVFYT5+WI~y6VQS=g7DyD@T@bAyRWEkZ#!0ufo$7d46x z*%DuCURV{lcGCDlzl0BFp~XMTFe>Pl)`h?O1Iu*Lj}?%_@A<>E%MyvCptlxy3O|y+ zI5NMS&nhb`yg}qflK+x~W=udXjT;Qg9VkPA*FH+ll?5;dM#osv%$YOvX35vGfQV|*CRa&_|)+DWVQk=_Tvab5l#8s7_m{EtDC z!XScH48_7`2-^vk#Ul4M*v4V&`j>t^g2Ar_&^s_!Mbkh3;PpGtO_HvAvPh+b6X-at zp*?NPkc=$0$79Re9oKq}UVFI1#7Ho2kvLgd2h*lTVCqcw8Qg=C7t7)P6)U``tnr34 zyfPAx{F+2DcRB)6At;^skN~34{Halo zui!2&7tGw{7-5>o@y}d{Ywl>-=wGJJ_p=^~Uh}x*hckm=`4jvWjvp@ROsv{Mgi%Us zyc4BAUAa_T@g@)L3)t)_+24K;Dn1?XF3vn4^B+7GsJmmA2QC>`fq?ncA-!_>y|C_8 zmm{vu9<+T5)+g9HpMS2#cFO((GN=pg}=qo75bIna&c9$hQs52nDB_4>Nf(ngUw||$7 zHedODi_f`uJdC~<>N?N3etT_u*Jberaun4hutnW1nyIpzxoph73|s`9q*2)Zbsv)i z?*TAhkM~Cn*RyzLfdCkrZGN!) z1~Vb4U}pHUBXK1527*mM_gBzXGmyxS<+jRQ+m|}3rr?6RsbIemLaVPap)D{udHk8{ z6Gw9PWG1U41qJ=@>`27(NU)+b_ndhFgR zOBf{~?)_i{7`HNLLt z;PJwOHyz6w1jBgvaeC{P6}EpEcp)M7N8dT&ispLLcfBGFox)P`k>lbLScCGC86c5_ zY#+}`E7$`GH6bIUiKymw1TYr{`*m(gIowyI;G&rvI4H^ez&2|RWsbZ4W%7A}YbPu? zhYUfq|No9r$e;x`I_)Uhq%2G^DJ>v2v^P*zFgc7{Y+y*kM7As&;6JO?kF)Y$p&SUg zW&{9OFK|cq=#z;lg@ifu@+XN)<&Jb|Ir()O47btrDT?f(uwBagk^Y*`1N*tM*~@)Z zij>=5U)Nb8Y4u?Ng|ohR&?&jh|pkm0ENMe!>5UtcQi-=4e) ztTn_fBkZS<(tWN&!M$e!xWc*#f{Q~a2P26c-o8(F5HpiGGOPh~d1LceA~#oL^p7nR z{EoQXQ9l0$s=$B5l@jyA7%k$9wZ+$ICHS838<%n4jn_#lVy_4+Vq~~`NSxfFHaada zg+`T+S7<2YT)_9OL~gvq48B9aYlJ_|TNf}gOTdpI zkrx5=*ZPp!qEGfr1L_ei{X@`zdaIE*va3C-p1{7~D?LpMd_?WvKB~iKxi`BH8RYt2 z-(`ZYW)bz29|5=$QkPYd2d)bb&J-3KZU%pj-sso@TYArH`-iyyAkOYc+Q552o%MI% z24OC$R8j;a!mv?$Vb!LAj^+P=y9``9Vwp9!s3;lA`U-N|nP5^G^S&iOp)?Q(E*5~9 zttGAS;dO7ji>B2A?u3<2@Gb9+RlQC^5Lna|4>lyustuW`ayU|oZxvVYze*i>K*hrS z2S`dv>M{jS_Tk8L=5<(Q3wPoivLK?RwY||%mYb@oMsi}-{TjMY^kGV(BQZsQ&;A*>A@GTDUzBF>qq%Z#dStFH3^BMy`mt zsf+wZ(@A35E}Dd8)GsO35!^~`m|XE5e|4P?FZg0w|B|yCMb8SQj5#T3gPD~rV{cEN z?BJPL`vl<@rLV99qrpO2?)T9#O>p?JBochqbNPAcRM+_^#r|zS-Ok$ZxLEGBw_(PL z&&Ky>ASwL%crd)LY~Nzb_cG%HUE%K|li9Jue}(fy4WbC-q}Sb$oIuJ*+`0(DsEBZT zL{L#F;UrR0t@pR*AFVYaKUIg&&~BjF;3%pg03Awv_Z734A5t=1M3Te zHJjRj!vT%ki^N>@A*x$o0jqR8hzMhwASO}xgYnj zSC@^I=_q)sC57ih&jE)9`LWHLMUT7>^J=RD(tR$@$ogq{T1v>~YukXFRogW z4xmw=py3WxQDOXV%eaJ6je<8bbV_f zxTW!fH}s#N;i@u?q|Gv1Hr^&M(5pbK65!F6b^! z@;+VD`k4TVu&HR@eqS1qxl;+BYcHfpG4UeH z)=O%30Fm=TO90Ks1sJLVZRMF%$Q01I41n*M_$c(lN^R(LgC$n*%-mhQqGLblEDtj> zD86f795r6>ERR^b)~LkH43QjWLLEmvC9cbJqu&k!&5k>6!POgqK;gMf``N!6?CF#L z_)+se43?x3_sqY|?*}WpHBXkOO+dbL`}NiY2}y*(Xyq>)XIQ+6U=xng8e>Akde(a9 zDbJK`CM-^(Tm;guje<^Np531Qq)kK&=WGOx7oiwjt_)5wi7x_e8C0=9W5nuy?fL6} z6HO(y1b=piq!3|&?Pft$k+P@b{zjI=yH1{HD6UjE+%J_&a6m^6)G{o#@ zAxn=~&0KmYCWpaUJO*N{t7!{oc4c4HQaBw<1TXc|h+r}uVx_5~sg%Ev=-UP?Q)+(l zBFs}Ae452C2m~-W@O}erVP~(?$R5`I%n-M}!I;N?VRXMgQShA59{*+j{bN% z8t&WULiZs~o>V5dpfUNb@iQxuZzlq#tdKF-D7E|Wjl-xFV>z(3{Y1MzUm_O<@_ zoZHhWR8TcIoRazCe1!${Om{jjc%(23DMSFAD8lHKNp1SN13t$*}Q(O06Y*yuIp@}#oHOuRTc?FFNC zbv5kR?S;VhpPRhd7bVr~58j3&3ORkdthpKeX9HbUxbbGUpIZtA6QbUwqpr9fohzp3MSkc5l zz+vcwh^k0@nK1&L6k%lm4cw#>Lp4)SAqhB8s48qo;-=9c+9<<7(st!8CpI1F;R!x3 zPNhNiprjzNq+fV!|9X9y}jA5hiu|vnlj*=ZDa;wQjGt z_5EGw9Rhj+V@iIS^5F5vW#q(?(P#_zK3(4|phlHtREqNnk(D(`uk-Ed%S$IE6j2Ci zvl8;{97RyVZ#uks+pyJErIRmChGggOp8-n3 z{TVm>p0Ou+K5^;0xDIHpFq+Q-312*V~_Mpjp1> zW`ywh{ocW^buuRGemLW<8?AC27j5P9ym>`z&1^rd!CKdmg3)X%Wi93`V7z{gjb?mq zcPj#X@^8}nr@@}3`|`TM836pyU_9CH_pd`{Gx;vivk&;jasyFnz(Pq#D}1~@+tVrK zG3Mt|C}-wxY2gBugjTNbN{Q<3wYKax1^>nBA3bv-NNlz@GENnr1s0N!r66lnSWwZL zCULzx_*Ghiv9hmN%b*zAC_tZFLuX1XO98!9EBRZQ;=ou^J~wVT2CL{C%gXvn+C5#exPC}J$!rd=CvR~^-8cPH+P7ca|F zo+b%j1pao~e(wFl!Qpc5B=WZZ0T<#eEQspmca2=v?Fj9KzM z8=SU%gtk=5(QDztG`l?cQb-k*up9K+?wI6Q*m$@Fk zXln02yDTmrayPw*!pOixAt4Jqg%K5ja4fKm8%;$1kj&tUDPq^lrO=dZ4scH%?4Ux#y zo;u(Jq)|%VK1*fUp$^Hdv-Kd|18l>v-D^IBQnTS5d+IWe%Z%IV^@cqlsw?TYX3N-c zHgt{!SF6_heCfim`8u+v*Soza#MtOq)A39dl&IXA#Qhf0R~>fbq@=LMZK^74YzsRZ z(aNh6tFpj#-6S@8{1_x;rYdTxiYC9lVk%*3e-yfQUKq&uvD8rZo9B#{>z(SI{~ zc|T_6P|B~pu7GxU(1op~d6BI6s7{r}9uVsI_CEb=Cl6+}_Q^VRz=5op40vDgcUL%t zk_Ie^3a)=S^!0`=$ec9%o3-F%AOme(2?n>Uno$^PSZ~hwT!5L$=7`^DrYHHLz@Zkw z;+@K$g@~$jvC06c1U3Kj+H=s8 zGQZ;;9AL13BU6mhS!@57o`bnyN}soCNu3<4zNiq2n3#}8%y#QWB_mc$>~cL>s>)!? zfemgJIWT`*w7xpu;Mc;K4gs`h|MsWP zkTj=Y2o0A>A2FCro@|;jRW)>t)O?*5mwvdd2cQ_nGNGnZu5Uti?0PSXZK}S0X=o zyfr2JZO$IAr)zds!lATGGFQa7tQ;+h zj`@d1HRy}1evpj8Er77`EokiPH_IgWI<)od%Ux5)z#`YV4TRfYEE*k_Jq}9`e=N_` zBmfISl+*+!`~^+Le_=8`R-yrhzKXhPz%M0D-e^LZk_c%~Q&Ew`II<d9 z>z3Lb;IMIRp7!tBX3L|3_WvY&20_6mAktDDl8++W)a@m(gd9@hR9%i8tuShu_UL1Y zB|34j9sXklKgpz`(i$xyhQVusNI)_YMpZMd4>DvVw5EZdVS)0?vdp(E;GOk1U^Iu{e9Rhh=#XG?ooX3MdPBaFDekfQE8+}SDuO*l zM}MB2_Vva0nbhUzSBHlLQgHJ-^WN_h$T=N_P>Ik4PGmb~kogNiZ)w_99tSZVQ;KRI zP=z^IGn3ZTi0Wb~xk$1c#4)}H#=Lb?QbJBY+GPU*QPE$5gu&&za&4$WkmGmABJ)Nk z3q+WgMo_Sri6KA;U-q5Juyiqswj=W187IZ+P32u^v;QP)mtK;nLmu8C9B<}`;Z;wP zG3pR1xdE&EoEECGE~A&tJc(IF3ihQlbwoVHx#f^hERHm&1lyf}uC&XAw=D?-*UG-E zcrixp&n>=yppqU&7vvEx9YZlyNkdR@!1i%T_u$yl3M7}?{XMhV zQq^H|Bnuv|gLT2RsLQw;%~7j8zu!agT#&r%`_oCqmOouTZ@$#TJNaW^`0r9X#^A~B zC=5q@sY<@$;W3HrW^a109z-%^#9l5IYvDtD9kSd>-(vsTfb3xh&#Of)lmG}J8Pj7? z$?^{?ZFW#wFYs>>`l5q)c#10n-kX2@yM0+S`?h2EAvfZp08V2r4N=Wh9a?BBCg4 z?P!c{a-!k&6`79+ZUuQ!)@Yys077GFfy71Zb1e>hx*bZ(kar6Yhr!rIh! zRnwVU+mWDd&l8I@l6qDRP4y!*IZD#biYqO}o)FSPbpP7D%awA0f+mw~mug1G3AR~@ zSIp8fE35|Ew47qOS7pYkzL1)lqgQvh;ew&KS?v7)2J25I)QfsBZeE8$Z@tXLz*R<&vBe&>xz4oxIpeUvJU?j$?9+PG%;XcXZpen!>p0qrqUXEq` z4F~j1qbG-}hcn~^8^V%w|48-(fz4*k1u8MQdUz&Werx(zN1&r*4GL@bGl{yo6=d3J zl7fg!4FQH+76j36qbE%NX@V7t@gpe@rbm${{bd4!G=~YIEyfx?OA&~PXhAoX8$w5w zP1ueAC>Q+;-#*R`SOUncX6^*lSXqM8{APzL<_aD>5nsN1CdQ0euhFl0mIXIJl!-Pb zS|Crv!<7ot7&g2onXnbQNSMF%Wb}#!MZlJVSPYRuIc59CWz<1ZJ&L*Avu<}Hv_mHm z@hMv_*O^in`nItPnl@)5{GNGMR7%R=docnIwhhoG!vb`={vkVu_*yoiZRW>;P5UJr zOnX&A*5&+Fgn>AN{`hD6Kj#ntpygUTkAF*{JjcdHM$Z;dS4Bmu`7V3~YoVKjDxiX{ zDkI7QiHLv)T{+RMv!XtK`If_$1c&hl0Ac4YD#{O zGGRp}DB&iJp=}0|Q$mb!A0qyePtj9CGu0ZvMh??MET9`njDqS;1q#SM^T;Q_HvPy?(_q|$jBRRdR=+K^ zSpXQy;u}h9TGj0`B`0>(`>=tUnD|$w%a6*ff}DzyJdUx1$k*a;lr?11m^^LhcDth6 z4$1VOxey&+D<4*Q4*@u}Z>Klkpz{wN%Fha1igcN`y*IU^nJ5TT%lX{8LTiY)F5v00svq5>;INMxZzEYJ|QrCmip@`acCGYip5_`0<8Ny@L_lO1BlJ0|H3E0C`%bgPvi zzcK6S-j+-F`COrSrEbZUJ=dv*E1Oy6)03;tv5ifN7Fpp~uNdzB0^9u_X>I=G0tE^$PR-i%CLR)bYeo1IhZYtl z1l-N{t9?3>JSYk_2tz2PF@ij+r|J9t;(r(GY)&jQV#Fz{Uti*q zaZQ`g?=EYD7ebAIgb`8l&-IhHtxq+EiIIrQ8L_~zwp=kzkjov|!3%mZsw)q@w(Yb*V1`55G7-HOZqV9oeKZZ`IR|5ZE*0r`=oK#=RJSTk0l)ECVP4= zZ5glD;s_lF`9fa~~h;J%dB*NsK)-Lt5; z_<;hFP6}B{N}iO93137f3P%a?F~DN7|Au8wG$b@3GcBq=A5ZPeO?Y}ipXaG=I2Dzr zJAtDp@DP+n90YTd9h1F#5M^V;15HixyR~E_H1Cr{~97ZZ&%jU;}Gbk~#YDH{AU-AB&T;&0fDh1>#_xJ*X& zfblVhX{h{!@c~0WV}NbEnJB3lARm^5aL&cS`f&?{7g6?4j@Riy(`hMf_*DQGZ%A9m zU?mq6d6|+X1BodyRbXdEy2qt)Z|EGpX%&(|l3xmaYs#B4YdE&G5Ze%&3-FXB@1VsO zgT)gXG3zi|Q)7~bh~z&s4(A_E#EIglqKXPDyI?tY1(qozdYya+ zt8`kD^7c}QENzJblE}0B0!w1?ZoFtnOYEu|LK=P4!H7}Y*HEJ&>7A96hsEk~PWOhy z$C`oU?uvSNCc{Q8#tQtNAf#kcU}*aGut`e7ZXKs-;H1f*6S)zRM^7?{&K}6mwk#8yI^uSaBXaaRiD^ zTdWUubw)?k7XGCFjFw9LSN(OS=6T+so_Ls)j>5ac!-$v|To@~kui3_C+A}qv-Tz*BeL=zNE z1))*m6h9F` zueK`fyK}2pn>`kbb-BG^O~mzvKwwszobO=k`u*5L<)~Nk`3KG7X-_PV{L%mNWigqE zGg*Gt_ViXFr4k?Oeskb^9vanQ@kJP!&>xSIWqV%b!C)~rV0@MFj%^-5Hzc2o>kZFP z;2Yg1{C>o8Vp8zmh?#oXI0YkB)$QIrN^?44KF(Q`?Q_B(J=T4P$mZ(1f_bif9{@}U z02WMbe!Jx)HGRFbXkg?TfDtJ6$2$@ve9H6o?M3T-*5h*BD~?^ul`Du#k?~* zlDKy}uW}5bRt;oed1+cyF`FkVgPX)lvl~Dy)0V1aiUH&4YyACt0I^J^UqPb;*%qO;Jf%E*biFFU5U) z_w`ZS*$GO!D^dPsUFnKfjGkC(iGiB{g5Da=4+`40;NA6=?M725UiY+PjxsU~*a34z zMNQ#h$Bp?4kHEi5pS9(ucb*OtYj!gp4V5hRL?Jjc-_Jo6-lwpslIeS?DEX5f9Q>1f zkI&q~A)`Jo2ej6RKX|&cJ*nXKeh+x~^taBtvoA}I*V(>Zr@N+?y8}UF-FHRKwrguW z{Zt_z0$%wPbJ0fI4+_l^ttN?rh;WwY{CVFW7nC4%M{zn7$!HB>6zOeAY7219qmy;p z`hKSW7r;d<0n)wJTk>(U-7s9r`h%3Q2c!S57a)RP&+8`|4l)U-T<7@hEuZOXX>TT{ zH-iYoIY1~1TJl=F3ZBZ+sTea4OAJ*>m+2Zy-wjQrad+abW%4fzd77jNZ1EhP!dI6y zdVe#4MP=x)4q6`_-B5=;iJ8|h5-j-)JC46Fiw?gh0I}T(6{hFt_hvX)4i0cS(x=lI z|LN`cHGVsuk@Gaoy>aE9h?p*%e@R*-xql;aaxbNXv|?>xOqw4mkrIv&rMU)J0@MrefRg2U7p7qImy5$g6@JrU1!|=NP%uejFSM{Cj2tc-??;!AC&>Y$p z(D9m#In|ju;6Y$6G5`)TB_uVc^q}{O9HihX#LL!DaCX)O7rlPb5FatXR@7k78J;2MIvySr;}cM0zPZSt${RlQg5{z=`XX6DXxpVQNQTF~FbzW4Y0 zwm&aI2piTk+Ef5YKK<$Or|J@ z`(Uk7OlK^7`zPMl10?6WH~a%(`rU$qZ%tQeZroMc{RBU{n}+iiFXx~<4+%$<70DOx zZwqOcZ;}0C)`dqOBvY47DZHLN$46B+h9@4#R9FjG$~{D_qFK3tZ*EU#5566+=$}w) z7G#txSR}#icHj_%=g-UZ!2OZ_{A}*Py+6Oumf*dIg|vB&*B14NPiFDuH-F#FLbNp% zYT)ZLnd)zdF}4LZ-Gu>_c%EqAJx>KD!cck?Um;kCH^$#kJB4v#V?zCFbJ3G$8|zA3 zHOx8XsbEYMG3iiH@i2aBOg`Nc?Yxc4)wH9%zum_gnr{WPh@_Rv1a=V(l17x>62 zPN63NBgfFOnRvM(FCY{{bvt~aR#0c_Nj@j=R{RAG5M+|d%F#qLdE2g({N4OG6!6*> znZnkg42Kqmf|$y`>wgs%=+$d@|1d5EgEnyt_&VI;(o(&b6i=gZDaD8gbirrRQD*;w ziz&k7s=}(2S5Z9gJ5H)jdZ~v6qaH}YC{R;$1%g7#BT$7FWv@Xigt~FpD@NOXA@f7($XAS z2xuc+__ic0-(U>)(9SxaJ}T2W&6VJ>r9)L>eP92vfFT6%uCNBM2{Ua^3>VSq;1Lpq z9(G5ua|=yH*w&U)CTJ41XI;+-bS>)5r;0(Mc@Jgj*rE=F{jcQv5K41<^t-J+i5W;>JJJzFbt;NSR@%?Z`EltH# z#PViA?w=^20*CK(>(qyYH~M*DPcJv3IG_Ld2K1>+g5G7Z^Rglhe?VNsdIq*fI3lSZJB!j0jBn;Qw7wkp-XK zHm{~7EpfL`m$EJpoGmzRP+euYK%XH)&Es*`cj^qz7L+MWK*ndAs?_C+6d_M50GIqf z9M%Z3Kx3>kiI+&v0A467**1mLD))5(4SNq9`iwiB@LV%^k4i;*SS7gFt z67AN3y`UD))@5P&zAZCj+bzfu_X5SdwZrw@6*&&&G`8|cvNRq9awQUo3FIgn@ybAb zr+~HYfmvx~BVcaR_jxA9M?3o+Gj8vT*3jv~xIyxK7)W-_UL>@vp#9u_1$nYYb_guJ z9P$DrLnQf<(9QpzZaVWpS{}TMb1-h78-6cy&M+tvD>*tkz6CN#%*rX>_ED5MIM-(u zygC!7IiDaA6B(J>c~dDniQ@>#!1tA!=a8ad?#KLo(N*!o5m*mm#{l#p{``@Gvg9c9 zP>kD0@MG{7E^1D&69qfhO=JWLSm^gqv3$|w*t^SqQm2Eb`>Y-u;_$PP3NRpb zNCPQ+LZ6nK%hqhMTG9GtPVIb|?OEX){Iuf$vjI%|`Bp{pEmRD$=y=!%6HWLsOFJU+Fp*T`J>pklifv6=c=5xb z6c1+se|mDmQ=&xr*kSwb)l&&W8b#_i(hCmW(0q9kCip(4Rm#v8q>(N|{udVn=GT;b3E%j$W-(@pKy zdu%sYz%by8qKhN7F8#WIVGbWSA74R>;pu*qvRhVAWw~(9q7i%!i%b?&8_98nrj+E2 zl$HVtTI7vUOaAoX%}3dggKyvC-`@U>vd&fr3h>8Bw>{IhAdjHzR3eu31A4a8upXlU z01q8qe$|FMe3Dok4LK#s1SuYl|8o0s$T~P8ArikNa&V7-`a^fg-^M~-~4|e(*27s-9;Hq6@8@_4woV$ug>5REd_}_ z>n8|F#Y-qEqxXwiG6`v3=yiPw5B(W9@1D`VB6$g$ZVn1dK`I38@(tfh01yC)N!ty9 z37Mt`--VIss^y_IJWD0O40vtBw;L^RjcR&VeoD@qqb7Sh4GU1qCl5~;R%Kpv+BNjs zCMZeQjw~>0KW`FimXZ?X$ODd7Iw$}4*c-V>FiN`r7u-qT8I{`GUTYlt=PB0icZSWr zwZ1Il(WT#MLfuVTZ)WVC_4>rwbXpVZ;Z)qvQ|1?sT5}ASbMEEq1DZ774tedNwFPCa z@#_8@yvp9iG1@`58(4Ro%%7SLzXVxXM(1sAU*1Su@{O;xCt9!d<+hNtAfNZ3BF=t` zf?K$HRE@f6deNHkX0j4Od{&_~^)RIErQXH73z?JR;o=2`R!dUPa6xC1zLtgYNV08< z9f~+74-vzJTJKGzc>(YY59euGytopN4_}r(V#F&*f?xt&kVwBROHE&4Sa6F|z=U(q z++Cg?YbSb~2D0)?OVYrLK)IGIHojRlB&Ng1fU#j^FAm}LwRs>ke87BHH3BM|2f-z7 zb)rvA#PWQ!P_RZU5@f{_MuT^I8gnhStP-a-r?7qrgVFCKo-dH0Z(ECb3So6SEA0h{ zjKF^)oc6;hMC=y}s$hXJ`F-Oz zZuePbN5uDP*16#`)Q!#ZQ`}Xj@F~dtlV8o#eyXodPP^9Dxy?(raPx5^-7!Qa9*<6| zj;Ep76cq38y`UsM&Im(8lc^(W0m+?*6A5Hvs;y>Q8BoMWy+Dev)M@3$rO3eWPqF+}~%^YzTgQBM)>Il9R zj*-T3?P|F@Rpqu2){WFfw8erk^Vjg6eI80z)-clMOR*B{@zPvz$g~oDeiA;Oz?jaZ zD0#a~2mwiOc;EN8W5G(zr|^!K(Ek4Rp|{FF6*S;ZCE0`nJ+X?RlAuAC|C{g^Zf;rNt~RWi0A>s!_$JIUwP!DwR=I%_(sRyM$JmT z6;wOGwLzny;f8gR4p7c*L!d1W}>sgYxiB14Y0Z9(37hPbz3=LJ<7m*gjDS zO0q(YDRI9tGQkQ$G&p4jV3X$ zh(A)%wK5P23In8t z*-!`}%)7{@L*E#04~RfO_=3X|t=i!P`K@1z#Z2`yCe_ zU|?V(GXR;Ws2>1V;|>f}n_FNSdKG56?`e_cb{~l%F5sK-U3ISLFks8Z<#* zBHbD-N$(RHlja6kYzlC(aUcrD7}e#24W;X)l1qH-}net+@%@;stC z+=JLHGe5}bkJ^RHKn&6N;dPIyxs zZ?<^vH74ALxIXV>yWR(;z6Zpn<&L6nF+Xe#Oe@F^r4d27W2%tK8kKm5rwx%kR${S3OaAI6UrvgH^V4Yh^q;Ul&`C zKo_iz5mp!&E!WW?>4~#H49e+tW zV}Y`I39JA+rWOUczf!`npt1~w3CxRn%^CG;@X<<8<&;pB1F9KY_`QqvW z+KRG*a-XI(C_^Oi;tXnrPLl*Y4KU1kuEbc96qJtmg}?t;18_l;)y~3O)9-biVQA3F z8|~iax|nba2r>!ZMkx_5_5?cx0r0g6v|f=n2rKe_Yj)2ws5lhK11hO?iF0uMfnQHfPn6As*OVIie9 z?fwr?42*9{$>?xvV>e;NWnRuik|@BB2%xK(gN;X8;^&2`=PnhpjDGIMn!qab1^a_Y zA7WlBlJdpkB;Tv^t zMdrkfW&u-GK-`tB?q1k4FX>jzkyN%f5m+Sn;?JrzU}o$osPdw3Uaw$-IqYnlEA{q9 zfgn`LTC0oj`Yw)VU&H3ebni4|zgF4-p!`VKR=Kq{%%A!|4 zf7PFiUmQj-K*x@pV|6z>wxPi_r1IY?4)ev<2Wy_TCiEbCr()e#uqXlXFX3 zp|=~x_#QdbqLP}3b*XG0vGz3z17CF}{eqP7F%B0#yH!4Y2jX(iXV02_!FBhikJ`^v z;Lu`EtmIqwT=4;Vt1&Jy-MR=Aa#{L2Br08ze$Tk#P>FZ4WQ9-S(<*)nZ$3@y{@6jL z_2;1hgrxQ-0$K0ly^*7Z*oCH4U<|`9$6Jap#5Bp&a!VApt(Gr`)i*_klZa+-O4~nG z3XI>9Mh2Mgh!+kd2{SheYblOLN6eX)hlWlBWt?5?-FIhLsMCL$MfHYgipxloD{%Jx zY_7bTu8@d*sX`#T+x*nxB&Sw;=(Jz?kc0q?)eB(oPa+97lK@&`dk=+|NBz1xjn1zK z*GQHKY2&>a8X+wdrEgy1Ib596vM6XDglq=VsMQM-6#cN~>?b>oV+pa4|BVOFM&Z9=>)-j(fi#oIka6N+F> zYjHg5CMH`%;($n-RlR!8d`xB(c1by&B&d)O4!Tx(JZWzB)5Lki;pe`rs)(r1{NQHK z_qDSxQmad4^$+)l^$#2_QfRe=Xq5Jf7NGOZ!XDo};_6Ymw4tj`mNGpKB(m=5>Yncx z<)Dh%EEb1x{N>x!t9xmGi!y?L^)dQzL>OCFqC1pv+Y%ATX-Y$h)T0+>d>9JS@?Mt{ zfNjNjI^+68Y%M~&J`o?Ki~b8s-{H4CfIegNsq26^2rSZb9w~j#rT|NPujTY>q^BJuOtDJvK)u5Cn3glUOutFk&u8CiDT0-#suJT>_amsXic5@SCl-cw zUWkbC=(S1zz;HQ_6qxIMyQ-gQ%g07|@hvPIG|AifCq*57JpX?xNpkN6uaK z@5t~QQIVVm`a zh6{Xb_G)1~nt?Dv?|Z;L-&^c;`>!`7?I5sF&Vcmu& z`RecmTlPqJUVJC2(Gk8;)-44Y`I~q%`(@u~a-3t0vgMrE&&rLy>NHOSObWb+PQ&2= zWoWxd2JQMpA+;3O$Ij-1V2|Oa=W?Xf>S$bTa=CQWn(Na3wx%nz+aTo|`Svd*aXCXa zT7bQ8BGJ)QxfY0;CW3EGq&K8tYhY20@hpU6<}x9Q8;XOLQk)qsU#qPTs6H+60cYqb zNRVWZ_IutcR$7D80~QSu<#Xmt87rMc*P&Y!9i1sV&oMtmD38(KogBT%)BX(Lq>oR1 zVbnCzAk@j0>k-j7pQb3HQu1JQ>lGBYb|zhVsoI4HucZ(Y#cs_0Pnq!|SQe}V+&mJ4 zsnwzIV3NQow@o>4!4p3zhHLy0&ljRR7!AT`Onxy#2N5)ih{eciBqUWPyf#-YNQg{# z7UuZ~eg*g#F`=YxBV-aW0IBIMH9)avn<*Z6OrR8in;@UJ5hO3Ba->S>I3F~h9a&=D z)XrQ|Ko;7;&5gJD!?-Pc^3Ox|r|JT~>0MdJUxXJqY5rlisAl+wFfX)ZGL1rJO1y>x z-Xjq)USilz48h&1>zi1?hn|ZX-QVA9^sJY9cp5zglex0?G@jj zhAECNRL8u_2!2my`>oBQM;u(ocu1r^t+yI|X4vY-cA43|EIi*$rEQr)PWku|5okPI z|9j_q6|BBUetrpF@}aC+3bKPQa)MFc@%`%^U(kFDr$(De4;d6%wP8}EniX$nPVB`O ze+*Q`BUr2aKh^+r9BhH_VhHb^hNSG7FIF}FOOrCbAE&x5?a^Suh#_gg`e|WPAACAw zJx)#IW@;I8pqw~kerEO_G#nKWWO$@fti zoW>Z>e7LY15nvU&WWA31z&+m>6Jpr1B`X7=+saM0TeSu{u~x;Sv(fXW1DBwYQI;CD zH34AnN-Fft@zdegI@Nf^poMgZo(+rdIbO69kxD{sd=NmDs)kp3u<=KTsql7-vU?hE<;iTp*&MK~E`V z>n2Sfhp1nyjc%TABvrt@K#ub@chJ|p4T}Br4HYTemfN56rQ)mWc8V8X?#ipLOLfTcyx0Bgty*70zCS#GpL zA?h7>GqF>y^|lV!3bd5*@$o%oYMRnep)-W) z$ankw@3dJ4|F9<7YzWO(jQ;_a$dQDqy$FWEKky?FJ=^eje9IVO4WfO}gX&J6pcZ#(8&}!t@v!k)snnC$x8|{V|X&rP`e$;iVeq zO?k_#36)guIYDiY_|zE1qn_DZFA6sn596RTCO$bIp7XoPqZb3qb1{`@MAg&X2wKtJ zu)5JIw>bB+t!68LmGi=LBN)HWGEOKtRhE)K`aL6|T;2XqZ`HT$uT8 z=GPa)6p9K1J~k1+J#4?ChMsL1yoxHPuv8S3R)^W1q=TB2%HT7HPA`xmbaVuI7KIq$ z;!>u6%rUayVtb=AME-9sfRu=b9kpom9A-LtWLC7Q=s{x%-DhFo+Q>MnkJ4vcW#C#d zLd}!IbG8@cN%C1<@kkiqTp)ZIwp`0zfg_`}t zP-RI?%@FLxG2_~=#UmQt&CG>JT0C?G5Ed@q3MJL<*XUnbGADD|vK(bBwswHmYW2mD zk>c!jYmcdmb5tb~M%!>VWUQ-!t<5OOIMR*XxMG8)O!Zco&8&8hi(K0t{cOt&3cufMq?bH&UjFmDn(IZu6Az5G0is&=$w`YCTP zzxtqkLA}X>+==wH`8I4+Jbo3RGH)nzD5Y}m>dm<~npn2>9pv=!F@c^$cc~{nNK#!n zyDOCc$mn*0dfkRvt>V|55w&d}bW1QU+D}EXBDJ2E{u2&bV@78oDqP@_P!0Ee$(;HYJV7gr z{b1xamS;;m41ZA4*-j2un7==-V@$om%bOJzQRL3DrmddTz>#z52nU|9KLrC^gle^? zF}#<}Gq&o!2s!6Tv29fx6In>t6KA3?Ma%7}&YmH9qqD?QFNxLwSB^Pb|MSz|ja{Z0_ixE`W_HZVO#3JPbXlUO~B zj@HA2SGQbu@(B;QH@96)L}#eapHxVl{rWLZh@L1R++)uZ%gPxoJ#{!Xu3aqbZcu)k z%tp_aGZ+`d{(GBQD1o&IG1ou&sm4U0#z8E~#^7YN-K<)f_T7pw>jpxqb%$(Qs(kJT zD|$+*pp1y>(@l)gbL;hk>p189c|~7VlB`SyGOawcm3yXeH1rkcpy8|`(n&^cqN>u& z)RdTe;ip|T2(pimU=5SwWloHpo#p+n%9UlcNc?DwsbkK;8TAGu-<&L<=1qqdn5)rY z@jh7r2^HgqhtKRqRDxAi9&ggM7k_cW?om!{H*6}yfE^uvDzeU)0FC5)G6n(O%w5F*Ab&{Ja$(QfVA#lFOxJ~nSROwUy+mW~I#E5KD>n4vqU)p5f?uJ|3%#Sf1 zoYCg?8TjAHs7@1d4OT1SmvI;qT&5f{$tQgjf6Sa}tOsRUoQ?#nq!MkHq-JjrxIC1w z{K35S*yy!U6D;|VZ)gwJf02~}+Zb>oLk`aeMkqLxzLVQ5G>udHqbZUwN7)$D>ob+4 zO1?l6F*EDoU+B;j{QWegIODlS`2#O5?26yi-&T9abT_`gJl->LTrFfBf;EkURMJB_ zCtRYEcUE|}kFXDF>q+ArOm+{+P6`Rb)3k|MPL>*%6fnoDaNT_Thal0ao$$sJW!}>Z z6<8U{k)`W6wCs9VPT4Wo6HB*mh<-ZU<(lJR)rJjS*nvCZ2^u>&t$d54ubUvthxslo zP3QjsT|f8BNM(BaO8yiEv{*E9x8Bh1R5e~C>{cLDi|rJ)9IM|L3VI;SYa>4z@`OCyoWPO8Bi+s8IJJh@8GGz*r;;cuT9SO%I4;Z+*Yh=D_~xAc zDu=}oCzkrDj@iG}G>LLhh4x%hU`WKwtebRAO~UsAF;U@R`Yk6PX1S*B z)5lK;K_Aqs1jYU=f-+oVtcT|fmX`CU%|vP$Hg4$;ZerpHfX-GxzFo2T=SSDWt;>ab zk7NhYnCH8L43B94q|neIO|+U10|V5dKg~cybj^nkU~p{-Zb+K6OJG{0I)#Cb4xA(% z)fl|Qq{hMJ5tfu>@jJJ~DvvlKf9SyNQfSK0(kWZ>D9hAcYMpv zikhIs;n!STET*bDc;xG3lXv>>t@WNRr#t^%d(ax!!TL+&8-fNI85uV7&K9oSy!Xn4 z$c`J%LDdHH&^iw4b;&s%x9#QiEIi~h=QD3-vh&$N`$KB4#{I}C_qDzCu=;a}msjIg zv#`)mtuE4tIvG}0qaL*LdJ$(_QH9E#$QWYR%EKv%girtsA7%zC$V5V^6r&%09vF!o zJN)@$yX{(SH!8PQn!%)~vm48SHMf>R-ae$gU*jSytQ8*m4{{7k&;WTlL+s@^%&kh{ zzcq&W_R&k`%smATrKcg?#>7}uEF)vhYcFAV;&K%#hH=^vccIOYRTw{xGlmh<;VQ^< zv3a3p%frUVyy*cLc{R7;9rS7}iN;Z54Q1tiaH=(rcO98ouj~pRU$9QCjN@xcil@l;=>Ak=c`8F}vmmv;p8#n?b?UR7d8gg?hAM zP#dW5y-0q#JtC~f^5MO{m%~Oifqo$e2FLY@H)ZZ|wM_CngUk4~JICE*Sq=}lA=rTr zASr)Ydi?nL;KzXt9@zu!bA81|SssbYfLO+h50V)D6!T~q#hgG%i|z-aEU3wQJ9DW| z3|YyB&@!$cOMX-Fd-R{ZwvYe9r4={f+b zL1-#I;r>)xe!fdAy=^#D2vuq}$H+s^r)!3@+}H{uY2D~0#SoyoXZWJ6zMe84-D99) z2vu>uQ;81L=_znbE48Ma8K|A#>=NoXK?RA;DxR&>$B(Z8rrY{IvjeC+cVEJ6Dv6+GrmvXEM*0n{^7*9I9m zE7Rc_ehub>Vnii=Ng<)#pAqWNV@%vwaih02H&J z6HgOrQ}ZMEi!pA|Y_Aki-N>)bCSq7vVr_4#uylrY6@9scF><`C-z81?+UYR=cx^Kh zYU1ZMBom67z|S)OXc92Lq1f?~RO1AWWSQQ9MvT8I1*cB#EjE=6Ogt0mmE~vW{to!H zr^x;Odnd5;d02{Qe;B)<>2;00s%A+(3)j@Xq-S@GR3^j!j;m!tzuP#wE85}VSFVE- zK94po3Xf~#uvusUEGk3bXb*`sw$){=45s^-BYh?6JbVrauI=d>MsPE^+KxAq|Pc_6o(PZrhC^YZXT@o0M`v2p_?*l`;t;St5%BYA2X z*d@0@`y4&7tuswXRf2i4<@sz2@YK_!`yXNuH|Mg#1!z)_JYvnCVm$zj0QW z#cUP*S&7EIpz5;A^tbjvaudMFg}&vJ^WBzQ5izn7V3~S9>#3yq_>V5YlnPR)wv+)B=SrFx&C?=@s6&8keU@A%_t;s8 z3)Ache}^2!EzekEW@!)Y1d9owPQk#1pJC*mY$NBhPp$qbN7V_mQUv;EB~FWrQ#Fo+ zD;tfe&2Z<&2h;jb%PKRRj;!pzQ9u`Qom=?@{A^Zj;crwS^h(ng}~xd zACxcWhyQhTFh6QNdyb(+Wykbe7HS{ENt0*^^==Es%iv|~jC!_A>29Z?2+~nOnB)Y+ zT*LmvXn_6UiL-;L6v|>H4yVHphB(|hz?f!-ub_63dLsE4Lj8umt#-pe$qK#H)UCcS z_@9ivv%eXWhhxY6umMbUm#{W1=3EQ5IKN_5C=!x&wB&s$m6Z3o0w2_1+O@P5LQ{sc81JR-sb!VOj zC!Mr1xisLA;=NBmTuY2k*1$;V&%Y*~e~&hMrdYh-8Zx=+`#SF3s~U#08ZQ5e{V_D5Z=mqOms$jf1BD*WbWuVvb~FAER!SGik> zUTEQJiTE`cBwG>22(y2l6E-^hUfo%}zd>PUx5_EBOd9Nb0T!@tj9KGX7+GyIojvFA z?Z%0qE;zt6T92TcOr$}Lw%OaYGQsY^>^>*eIvxmm?#srY^(7Tl7)NYPa?N^~U3dyQ z+3@K;uNr31-qajbjEV<$PG~I-wOCe|8rp_B!HyWZUhD2J#(|c(eJ)+i5rTe{o%n=R zo-RpBI-zpu;uNSb18&O=iUvW)shE*_8fxaARMD9vod$%2-AH+Z17^z>jLo%pN5og& z6JujdTJ(cwYpum9rGLvM+}ooM+>}a{!KME24c03nIKdH?tb6vW*Fg-m_Wfw8+RZvX zWAFtKy>PEx@Yv4lkaIis#}D$L|!U|A^x^g z{kB>@D2OAco=H+68+=oY)C_y&{T&C|=nCjx*Ry*=P<=VPk2kda5f1^Hp)fS?SRhP- zPNR%F2)Bmc*A%JQ01?>Qbt52Akqg0>YUoTlz)&|cok&_S!NQ_Q1tC=sH(!8c&f2q! zxC<$$RjCkz)I7lLCtgH9XO~LwSSAZ#@3$J?GOhV!kIVdsWZo>WZ9H_q>^cxfrMypt zZTCo4UM{R`N+ed$5^JpBt$S6pZ9KdUoFC@ODe3RQ`t%DJHgzuK;@p9M2={doNmXcWsp7gx(cDI^G)kjV)vt zR1K{qjG&&B&)(+y5t6k3Fazj-96TPLDV7xJd|uqxa%MJ=rqx*X)@!s7t4G&0#gw#c`Wck< z5&AQTc!!64uj=ue_E7*2Sj$=4EOMeH0Zbq*R?JxH&K9FS`DwWxA%KmJerczSQkVJmw`XiaBp?@p>rwF9Lw{*=nFdfhr@d&yTWp`4XDi0Og|O&cd0 zvkqt`DS1liCeF*1{sMQm2%Orc9EW%ci^zzJb=>Ry4bp#q2foXiThxEUOi;YJy`znu zZt=z9O=9ox8Nm7W;~O{u+0nVdp@RJ2^WU|fAU_~zwhFG8ka0d+A659;&Q_2|3ED#D(Vwc>_W3{w$nps#;@D85o z{>Ko;G(wny_eNpoaIl%6D9qg_NG1O*3f*>whub=3v!fY25jyz!`!;%9L7Xy}}Bl^;O(Sn9CDGwvW5wiD{TuxoV~rcek;P{`ME; zXB@;Dmm9ho1!7VUn%UTpU3dYa=7k+m)wS|K-Zp-Un6qWzoHi|bkN=y%49Z4U*_>*? z!aeDF+l}^P)FI*YuC8*+^411aU&5;(A%FQtAwFg}>|Vnp-Q3DmF4WI&3FD=tr>7sD z9di&?O<0#@{ztKJn#$@KVwU0~PS$~@8#niW_5iRu%I|V@&AM-K!r5_i#s2;gFtF*i zZ++=q@b5R2XfW0oiibYk4N%03qVn>rhIAg|&x(N=Bt zJA!B-x&Njn@jGv-RZu_-Zy)(2LH@S!MJLT3MGRv)Bj^y9=xv52as_EiI7K8WAa|j8tOEcz5l)+rr1~kO7o&?sBI6V(j1*FsR`CXx7XiM$i5#rZ zsdh|(OM&hgn-?E@KJ0Ye^JGYiZ>RLpb(9~3kouj2&q)}$fhG8D#tSC3_%BrAgs!}) zQb~*-CPn5-qHnCH+=~8<-FZUYZ}24-y@a0zzY$>nFh_AM>Hd}N5r^bkRL%R;*Tb=z z*uY&p+S%TaFobfz=j%YBM5@758N5S_A_vcRc#{*}r8~;9Ki1unl2REdgTd%|JBUUa zEo#dv(uSLixr04nuLStngTXMIPpZ=!kcbI`i!Pq=LzV?Tj~L78SFY2vAugzj!?+g4 zf>f>^k<$wQ&dl=wEo5z1m?CRWRd)9+os{PrumJnpO1Msf|HW zl1$81H?`Zc)#ijH19i5Po$G-raM6>?rQ#b4D_f7zC#IGIiZ{9imMM<0oot`T;~EHr z-%JBo_GL|PC^lg7w`nAV<@Z%;6V&~W4laL-U!4hFSe=%O+*7@|%lqA_-6EdeXu z7rkxo1*L~HeM;N30qOIY(OCw(6;*OHEV{O)vroLs8eB&w=Y?`Z@tIu17g9lsZcU7$ zCnYXdxx`Os3v}?Q+{|NIfZlac7kPY7xbx?3ur6ljJw2QA0uannoX@k#W@khs1;bw9 zf>Sv_p=)ro_-8L98}I8}O+Q!iY%;(7CFu6K%+RSR#e(Dn8?DL9#TYxSJl|#qff}Qr z+ZLG@3X+B2lBQGxPvwqIj`EU*@dbNjwme;LhSa!HF>)4bLn8&iXfH!JuIS0QQyXyS zA@XzxOXNo_me(~H1&iHu1b`G}-=4ZjDc#L2o4%G1rM*$8_%RxQO@4?%sGpP#8D+|3 zAS@mB$TC{I-FLqOVp-<5_}VrOLvq0{_y=5KY-+U~bm(A!L={*9LQeSad9Y6Xiw`LV zgA2tu>32$;pl)t%tGB~T)e~^{hK&4^gIsSu4DJi05E;8V1_CF0U7~2U7e)>po;h4| zB*5YtJu?&xMEHYuwtF5nZT`_2vKZ=J`qmN|S#Q94HPhTFahFko!I)^pQhdnC?>O

    D3C)l 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 LRGxo^n*{$K152dt literal 0 HcmV?d00001 diff --git a/jOOQ-website/manual/JOOQ/Extend/index.php b/jOOQ-website/manual/JOOQ/Extend/index.php index 59d5268cc2..3eabc1e3f6 100644 --- a/jOOQ-website/manual/JOOQ/Extend/index.php +++ b/jOOQ-website/manual/JOOQ/Extend/index.php @@ -4,20 +4,62 @@ // Please do not edit this content manually require '../../../frame.php'; function printH1() { - print "Extend jOOQ types with custom implementations"; + print "Extend jOOQ with custom types"; } function getSlogan() { - return ""; + return "Maybe jOOQ is missing functionality that you would like to see, + or you can't wait for the next release... In this case, you can extend + any of the following open jOOQ implementation classes"; } function printContent() { global $root; ?> - + -
    The jOOQ User Manual : jOOQ classes and their usage : Extend jOOQ types with custom implementationsprevious : nextThe jOOQ User Manual : jOOQ classes and their usage : Extend jOOQ with custom typesprevious : next
    + +

    Write your own QueryPart implementations

    +

    If a SQL clause is too complex to express with jOOQ, you can extend + either one of the following types for use directly in a jOOQ query:

    +
    +public abstract class CustomField<T> extends AbstractField<T> {
    +  // [...]
    +}
    +public abstract class CustomCondition extends AbstractCondition {
    +  // [...]
    +}
    + +

    These two classes are declared public and covered by integration + tests. When you extend these classes, you will have to provide your + own implementations for the QueryParts' + bind(BindContext) and + toSQL(RenderContext) methods:

    +
    +// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
    +// in the correct order, passing the render context.
    +//
    +// If context.inline() is true, you must inline all bind variables
    +// If context.inline() is false, you must generate ? for your bind variables
    +public void toSQL(RenderContext context);
    +
    +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
    +// variable binding to them in the correct order, passing the bind context.
    +//
    +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
    +public void bind(BindContext context) throws SQLException;
    +
    + +

    The above contract may be a bit tricky to understand at first. The + best thing is to check out jOOQ source code and have a look at a + couple of QueryParts, to see how it's done.

    +

    Plain SQL as an alternative

    +

    If you don't need integration of rather complex QueryParts into + jOOQ, then you might be safer using simple + Plain SQL functionality, + where you can provide jOOQ with a simple String representation of your + embedded SQL.

    + - diff --git a/jOOQ-website/manual/JOOQ/QueryPart/index.php b/jOOQ-website/manual/JOOQ/QueryPart/index.php index 382d029e1e..e3f9fb10d9 100644 --- a/jOOQ-website/manual/JOOQ/QueryPart/index.php +++ b/jOOQ-website/manual/JOOQ/QueryPart/index.php @@ -7,7 +7,9 @@ function printH1() { print "QueryParts and the global architecture"; } function getSlogan() { - return ""; + return "When constructing Query objects in jOOQ, everything is + considered a QueryPart. The purpose of this quickly becomes clear when + checking out the QueryPart API essentials"; } function printContent() { global $root; diff --git a/jOOQ-website/manual/JOOQ/ResultQuery/index.php b/jOOQ-website/manual/JOOQ/ResultQuery/index.php index e33b62f17a..58cb256fbe 100644 --- a/jOOQ-website/manual/JOOQ/ResultQuery/index.php +++ b/jOOQ-website/manual/JOOQ/ResultQuery/index.php @@ -7,7 +7,11 @@ function printH1() { print "ResultQuery and various ways of fetching data"; } function getSlogan() { - return ""; + return " + Various jOOQ query type extend the ResultQuery which provides many means of + fetching data. In general, fetching means executing and returning some + sort of result. + "; } function printContent() { global $root; @@ -16,8 +20,84 @@ function printContent() { The jOOQ User Manual : jOOQ classes and their usage : ResultQuery and various ways of fetching dataprevious : next - + +

    The ResultQuery provides many convenience methods

    +
    +public interface ResultQuery<R extends Record> {
    +
    +  // These methods allow for fetching a jOOQ Result
    +  // or parts of it.
    +  // ----------------------------------------------
    +
    +  // Fetch the whole result
    +  Result<R> fetch();
    +
    +  // Fetch a single field from the result
    +  <T> List<T> fetch(Field<T> field);
    +      List<?> fetch(int fieldIndex);
    +      List<?> fetch(String fieldName);
    +
    +  // Fetch the first Record
    +  R fetchAny();
    +
    +  // Fetch exactly one Record
    +  R fetchOne();
    +
    +  // Fetch a single field of exactly one Record
    +  <T> T  fetchOne(Field<T> field);
    +  Object fetchOne(int fieldIndex);
    +  Object fetchOne(String fieldName);
    +
    +  // These methods transform the result into another
    +  // form, if org.jooq.Result is not optimal
    +  // -----------------------------------------------
    +
    +  // Fetch the resulting records as Maps
    +  List<Map<String, Object>> fetchMaps();
    +  Map<String, Object> fetchOneMap();
    +
    +  // Fetch the result as a Map
    +  <K>    Map<K, R> fetchMap(Field<K> key);
    +  <K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value);
    +
    +  // Fetch the resulting records as arrays
    +  Object[][] fetchArrays();
    +  Object[] fetchOneArray();
    +
    +  // Fetch a single field as an array
    +  <T> T[] fetchArray(Field<T> field);
    +  Object[] fetchArray(int fieldIndex);
    +  Object[] fetchArray(String fieldName);
    +
    +  // These methods transform the result into a user-
    +  // defined form, if org.jooq.Result is not optimal
    +  // -----------------------------------------------
    +
    +  // Fetch the resulting records into a custom POJO
    +  // type, which may or may not be JPA-annotated
    +  <E> List<E> fetchInto(Class<? extends E> type);
    +
    +  // Fetch the resulting records into a custom
    +  // record handler, similar to how Spring JdbcTemplate's
    +  // RowMapper or the Ollin Framework works.
    +  <H extends RecordHandler<R>> H fetchInto(H handler);
    +
    +  // These change the behaviour of fetching itself,
    +  // especially, when not all data should be
    +  // fetched at once
    +  // ----------------------------------------------
    +
    +  // Fetch a Cursor for lazy iteration
    +  Cursor<R> fetchLazy();
    +
    +  // Fetch data asynchronously and let client code
    +  // decide, when the data must be available.
    +  // This makes use of the java.util.concurrent API,
    +  // Similar to how Avajé Ebean works.
    +  FutureResult<R> fetchLater();
    +  FutureResult<R> fetchLater(ExecutorService executor);
    +}
    + - diff --git a/jOOQ-website/manual/JOOQ/Serializability/index.php b/jOOQ-website/manual/JOOQ/Serializability/index.php index 6f04c720c2..3eb0a9a7a6 100644 --- a/jOOQ-website/manual/JOOQ/Serializability/index.php +++ b/jOOQ-website/manual/JOOQ/Serializability/index.php @@ -7,17 +7,68 @@ function printH1() { print "Serializability of QueryParts and Results"; } function getSlogan() { - return ""; + return "Most of the jOOQ API implements the Serializable interface. + This helps storing queries and partial queries in files, transferring + queries or result data over TCP/IP, etc. "; } function printContent() { global $root; ?> - + -
    The jOOQ User Manual : jOOQ classes and their usage : Serializability of QueryParts and Resultsprevious : nextThe jOOQ User Manual : jOOQ classes and their usage : Serializability of QueryParts and Resultsprevious : next
    + +

    Attaching QueryParts

    +

    + The only transient element in any jOOQ object is the + The Factory class's + underlying + java.sql.Connection. When you want to execute queries after + de-serialisation, or when you want to store/refresh/delete + Updatable Records, + you will have to "import" or "re-attach" them to a Factory +

    +
    +// Deserialise a SELECT statement
    +ObjectInputStream in = new ObjectInputStream(...);
    +Select<?> select = (Select<?>) in.readObject();
    +
    +// This will throw a DetachedException:
    +select.execute();
    +
    +// In order to execute the above select, attach it first
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +create.attach(select);
    + + +

    Automatically attaching QueryParts

    +

    In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry

    +
    +// Create your own custom ConfigurationProvider that will make
    +// your default Factory available to jOOQ
    +ConfigurationProvider provider = new CustomConfigurationProvider();
    +
    +// Statically register the provider to jOOQ's ConfigurationRegistry
    +ConfigurationRegistry.setProvider(provider);
    + +

    Once you have executed these steps, all subsequent deserialisations + will try to access a Configuration (containing a JDBC Connection) from + your ConfigurationProvider. This may be useful when

    +
      + +
    • transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g. + between client and server), before immediately executing queries, + storing UpdatableRecords
    • + +
    • + Using automatic mechanisms as known in + Wicket + +
    • + +
    + - diff --git a/jOOQ-website/manual/JOOQ/Table/index.php b/jOOQ-website/manual/JOOQ/Table/index.php index aeb83348ad..a43469aa58 100644 --- a/jOOQ-website/manual/JOOQ/Table/index.php +++ b/jOOQ-website/manual/JOOQ/Table/index.php @@ -131,7 +131,7 @@ function printContent() { know each other. The physical aspect of their nature is represented in jOOQ by - meta model code generation, + meta model code generation, where every entity in your database schema will be generated into a corresponding Java class. diff --git a/jOOQ-website/manual/JOOQ/index.php b/jOOQ-website/manual/JOOQ/index.php index 33f36370be..459015cc6b 100644 --- a/jOOQ-website/manual/JOOQ/index.php +++ b/jOOQ-website/manual/JOOQ/index.php @@ -9,7 +9,7 @@ function printH1() { function getSlogan() { return " In these sections, you will learn about how to use jOOQ object - factories and the jOOQ object oriented query model, to express + factories and the jOOQ query model, to express your SQL in jOOQ "; } @@ -72,7 +72,7 @@ function printContent() { Serializability of QueryParts and Results
  1. -Extend jOOQ types with custom implementations +Extend jOOQ with custom types
- + -
The jOOQ User Manual : Meta model code generation : Configuration and setupprevious : nextThe jOOQ User Manual : Meta model code generation : Configuration and setup of the generatorprevious : next
+ +

The deliverables

+

+ There are three binaries available with jOOQ, to be downloaded from + SourceForge + or from Maven central: +

+
    + +
  • + +jOOQ.jar + +
    + The main library that you will include in your application to run jOOQ +
  • + +
  • + +jOOQ-meta.jar + +
    + The utility that you will include in your build to navigate your + database schema for code generation. This can be used as a schema + crawler as well. +
  • + +
  • + +jOOQ-codegen.jar + +
    + The utility that you will include in your build to generate your + database schema +
  • + +
+ +

Dependencies

+

All of jOOQ's dependencies are "optional", i.e. you can run + jOOQ without any of those libraries. + For instance, jOOQ maintains an "optional" dependency on log4j and slf4j. + This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the + classpath. If they are not present, then java.util.logging.Logger is + used instead. +

+ + +

Configure jOOQ

+

You need to tell jOOQ some things about your database connection. + Here's an example of how to do it for a MySQL database

+
+#Configure the database connection here
+jdbc.Driver=com.mysql.jdbc.Driver
+jdbc.URL=jdbc:mysql://[your jdbc URL]
+jdbc.Schema=[your database schema]
+jdbc.User=[your database user]
+jdbc.Password=[your database password]
+
+#The default code generator. You can override this one, to generate your own code style
+#Defaults to org.jooq.util.DefaultGenerator
+generator=org.jooq.util.DefaultGenerator
+
+#The database type. The format here is:
+#generator.database=org.util.[database].[database]Database
+generator.database=org.jooq.util.mysql.MySQLDatabase
+
+#All elements that are generated from your schema (several Java regular expressions, separated by comma)
+#Watch out for case-sensitivity. Depending on your database, this might be important!
+generator.database.includes=.*
+
+#All elements that are excluded from your schema (several Java regular expressions, separated by comma). Excludes match before includes
+generator.database.excludes=
+
+#Primary key / foreign key relations should be generated and used. 
+#This will be a prerequisite for various advanced features
+#Defaults to false
+generator.generate.relations=true
+
+#Generate deprecated code for backwards compatibility 
+#Defaults to true
+generator.generate.deprecated=false
+
+#The destination package of your generated classes (within the destination directory)
+generator.target.package=[org.jooq.your.package]
+
+#The destination directory of your generated classes
+generator.target.directory=[/path/to/your/dir]
+ +

And you can add some optional advanced configuration parameters:

+
+#Generate a master data table enum classes (several Java regular expressions, separated by comma)
+generator.generate.master-data-tables=[a list of tables]
+
+#For every master data table, specify two special columns
+generator.generate.master-data-table-literal.[master data table]=[column used for enum literals]
+generator.generate.master-data-table-description.[master data table]=[column used for documentation]
+

Check out the manual's section about + master data + to find out more + about those advanced configuration parameters.

+ +

Run jOOQ code generation

+

Code generation works by calling this class with the above property file as argument.

+
+org.jooq.util.GenerationTool /jooq-config.properties
+

Be sure that these elements are located on the classpath:

+
    + +
  • The property file
  • + +
  • jooq.jar, jooq-meta.jar, jooq-codegen.jar
  • + +
  • The JDBC driver you configured
  • + +
+ +

A command-line example (For Windows, unix/linux/etc will be similar)

+
    + +
  • Put the property file, jooq*.jar and the JDBC driver into + a directory, e.g. C:\temp\jooq
  • + +
  • Go to C:\temp\jooq
  • + +
  • Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file]
  • + +
+

Note that the property file must be passed as a classpath resource

+ +

Run code generation from Eclipse

+

Of course, you can also run code generation from your IDE. In + Eclipse, set up a project like this. Note that this example uses + jOOQ's log4j support by adding log4j.xml and log4j.jar to the project + classpath:

+
+ +Eclipse configuration +
+ +

Once the project is set up correctly with all required artefacts on + the classpath, you can configure an Eclipse Run Configuration for + org.jooq.util.GenerationTool.

+
+ +Eclipse configuration +
+ +

With the properties file as an argument

+
+ +Eclipse configuration +
+ +

And the classpath set up correctly

+
+ +Eclipse configuration +
+ +

Finally, run the code generation and see your generated artefacts

+
+ +Eclipse configuration +
+ +

Run generation with ant

+

You can also use an ant task to generate your classes:

+
+<!-- Task definition -->
+<taskdef name="generate-classes" classname="org.jooq.util.GenerationTask">
+  <classpath>
+    <fileset dir="${path.to.jooq.distribution}">
+      <include name="jOOQ.jar"/>
+      <include name="jOOQ-meta.jar"/>
+      <include name="jOOQ-codegen.jar"/>
+    </fileset>
+    <fileset dir="${path.to.mysql.driver}">
+      <include name="${mysql.driver}.jar"/>
+    </fileset>
+  </classpath>
+</taskdef>
+
+<!-- Run the code generation task -->
+<target name="generate-test-classes">
+  <generate-classes 
+      jdbcurl="jdbc:mysql://localhost/test"
+      jdbcschema="test"
+      jdbcuser="root"
+      jdbcpassword=""
+      generatortargetpackage="org.jooq.test.generatedclasses"
+      generatortargetdirectory="${basedir}/src"/>
+</target>
+ +

Use jOOQ generated classes in your application

+

Be sure, both jOOQ.jar and your generated package (see + configuration) are located on your classpath. Once this is done, you + can execute SQL statements with your generated classes.

+ - diff --git a/jOOQ-website/manual/META/PROCEDURE/index.php b/jOOQ-website/manual/META/PROCEDURE/index.php index ea386a1399..3ee8972256 100644 --- a/jOOQ-website/manual/META/PROCEDURE/index.php +++ b/jOOQ-website/manual/META/PROCEDURE/index.php @@ -7,17 +7,199 @@ function printH1() { print "Procedures and packages"; } function getSlogan() { - return ""; + return " + Procedure support is one of the most important reasons why you should consider + jOOQ. jOOQ heavily facilitates the use of stored procedures and + functions via its source code generation. + "; } function printContent() { global $root; ?> - + -
The jOOQ User Manual : Meta model code generation : Procedures and packagesprevious : nextThe jOOQ User Manual : Meta model code generation : Procedures and packagesprevious : next
+ +

Stored procedures in modern RDBMS

+

This is one of the most important reasons why you should consider + jOOQ. Read also my + article on dzone + about why stored procedures become + more and more important in future versions of RDMBS. In this section + of the manual, we will learn how jOOQ handles stored procedures in + code generation. Especially before + UDT and ARRAY support was + introduced to major RDBMS, these procedures tend to have dozens of + parameters, with IN, OUT, IN OUT parameters mixed in all variations. + JDBC only knows very basic, low-level support for those constructs. + jOOQ heavily facilitates the use of stored procedures and functions + via its source code generation. Essentially, it comes down to this: +

+ +

"Standalone" stored procedures and functions

+

Let's say you have these stored procedures and functions in your Oracle database

+
+-- Check whether there is an author in T_AUTHOR by that name
+CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
+
+-- Check whether there is an author in T_AUTHOR by that name
+CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
+
+-- Check whether there is an author in T_AUTHOR by that name and get his ID
+CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);
+ +

jOOQ will essentially generate two artefacts for every procedure/function:

+
    + +
  • A class holding a formal Java representation of the procedure/function
  • + +
  • Some convenience methods to facilitate calling that procedure/function
  • + +
+

Let's see what these things look like, in Java. The classes (simplified for the example):

+ +
+// The function has a generic type parameter <T> bound to its return value
+public class FAuthorExists extends StoredFunctionImpl<BigDecimal> {
+
+    // Much like Tables, functions have static parameter definitions
+    public static final Parameter<String> AUTHOR_NAME = // [...]
+
+    // And much like TableRecords, they have setters for their parameters
+    public void setAuthorName(String value) { // [...]
+    public void setAuthorName(Field<String> value) { // [...]
+}
+
+public class PAuthorExists extends StoredProcedureImpl {
+
+    // In procedures, IN, OUT, IN OUT parameters are all represented
+    // as static parameter definitions as well
+    public static final Parameter<String> AUTHOR_NAME = // [...]
+    public static final Parameter<BigDecimal> RESULT = // [...]
+
+    // IN and IN OUT parameters have generated setters
+    public void setAuthorName(String value) { // [...]
+
+    // OUT and IN OUT parameters have generated getters
+    public BigDecimal getResult() { // [...]
+}
+
+public class PAuthorExists_2 extends StoredProcedureImpl {
+    public static final Parameter<String> AUTHOR_NAME = // [...]
+    public static final Parameter<BigDecimal> RESULT = // [...]
+    public static final Parameter<BigDecimal> ID = // [...]
+
+    // the setters...
+    public void setAuthorName(String value) { // [...]
+
+    // the getters...
+    public BigDecimal getResult() { // [...]
+    public BigDecimal getId() { // [...]
+}
+ +

An example invocation of such a stored procedure might look like this:

+ +
+PAuthorExists p = new PAuthorExists();
+p.setAuthorName("Paulo");
+p.execute(configuration);
+assertEquals(BigDecimal.ONE, p.getResult());
+ +

If you use the generated convenience methods, however, things are much simpler, still:

+
+// Every schema has a single Functions class with convenience methods
+public final class Functions {
+
+    // Convenience method to directly call the stored function
+    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
+
+    // Convenience methods to transform the stored function into a
+    // Field<BigDecimal>, such that it can be used in SQL
+    public static Field<BigDecimal> fAuthorExists(Field<String> authorName) { // [...]
+    public static Field<BigDecimal> fAuthorExists(String authorName) { // [...]
+}
+
+// Every schema has a single Procedures class with convenience methods
+public final class Procedures {
+
+    // Procedures with 0 OUT parameters create void methods
+    // Procedures with 1 OUT parameter create methods as such:
+    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
+
+    // Procedures with more than 1 OUT parameter return the procedure
+    // object (see above example)
+    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
+}
+ +

An sample invocation, equivalent to the previous example:

+
+assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));
+ + +

jOOQ's understanding of procedures vs functions

+

+ It might not be very clear, what defines a procedure and what + defines a + function in those RDBMS that support these objects. Most + often, a function + has a mandatory return value, whereas procedures can + return OUT parameters. + Oracle allows for mixing those concepts. + Postgres omits the term procedure, etc. +

+

+ For jOOQ, the following applies: +

+
    + +
  • + A procedure is an object that cannot be used in SQL (because it + has no + return value). A procedure is called internally by jOOQ using a + java.sql.CallableStatement + +
  • + +
  • + A function is an object that can be used in SQL. There is always + the + possibility to create a + org.jooq.Field + to represent the function + embedded in SQL. +
  • + +
+ + +

Packages in Oracle

+

+ Oracle uses the concept of a PACKAGE to group several + procedures/functions into a sort of namespace. The + SQL standard + talks about "modules", to represent this concept, even if this is + rarely implemented. This is reflected in jOOQ by the use of Java + sub-packages in the source code generation destination package. Every + Oracle package will be reflected by +

+
    + +
  • A Java package holding classes for formal Java representations of + the procedure/function in that package +
  • + +
  • A Java class holding convenience methods to facilitate calling + those procedures/functions +
  • + +
+

+ Apart from this, the generated source code looks exactly like the + one for + standalone procedures/functions. +

+ - diff --git a/jOOQ-website/manual/META/SCHEMA/index.php b/jOOQ-website/manual/META/SCHEMA/index.php index 2c7ec3d529..3ba31f9c90 100644 --- a/jOOQ-website/manual/META/SCHEMA/index.php +++ b/jOOQ-website/manual/META/SCHEMA/index.php @@ -4,20 +4,54 @@ // Please do not edit this content manually require '../../../frame.php'; function printH1() { - print "Schemata"; + print "The schema, top-level generated artefact"; } function getSlogan() { - return ""; + return "The schema is the top-level generated object in jOOQ. In many + RDBMS, the schema coincides with the owner of tables and other objects + "; } function printContent() { global $root; ?> - + -
The jOOQ User Manual : Meta model code generation : Schemataprevious : nextThe jOOQ User Manual : Meta model code generation : The schema, top-level generated artefactprevious : next
+ +

The Schema

+

+ As of jOOQ 1.5, the top-level generated object is the + org.jooq.Schema. + The Schema itself has no relevant functionality, except for holding + the schema name for all dependent generated artefacts. jOOQ queries try + to always fully qualify an entity within the database using that Schema +

+ +

+ Currently, it is not possible to link generated artefacts from various + schemata. If you have a stored function from Schema A, which returns a + UDT from Schema B, the types cannot be linked. This enhancement is on + the roadmap, though: #282. +

+ +

+ When you have several schemata that are logically equivalent (i.e. they + contain identical entities, but the schemata stand for different + users/customers/clients, etc), there is a solution for that. Check out + the manual's section on support for + multiple equivalent schemata + +

+ +

Schema contents

+

The schema can be used to dynamically discover generate database + artefacts. Tables, sequences, and other items are accessible from the + schema. For example:

+
+public final java.util.List<org.jooq.Sequence> getSequences();
+public final java.util.List<org.jooq.Table<?>> getTables();
+ - diff --git a/jOOQ-website/manual/META/TABLE/index.php b/jOOQ-website/manual/META/TABLE/index.php index 8f0573624f..6f2736d6d5 100644 --- a/jOOQ-website/manual/META/TABLE/index.php +++ b/jOOQ-website/manual/META/TABLE/index.php @@ -4,20 +4,84 @@ // Please do not edit this content manually require '../../../frame.php'; function printH1() { - print "Tables and views and their corresponding records"; + print "Tables, views and their corresponding records"; } function getSlogan() { - return ""; + return " + The most important generated artefacts are Tables and TableRecords. + Every Table has a Record type associated with it that models a single tuple + of that entity: Table<R extends Record>. + "; } function printContent() { global $root; ?> - + -
The jOOQ User Manual : Meta model code generation : Tables and views and their corresponding recordsprevious : nextThe jOOQ User Manual : Meta model code generation : Tables, views and their corresponding recordsprevious : next
+ +

Tables and TableRecords

+

+ The most important generated artefacts are + Tables and + TableRecords. As + discussed in previous chapters about + Tables and + Results, jOOQ uses the + Table class to model entities (both tables and views) in your database + Schema. Every Table has a Record type associated with it that models a + single tuple of that entity: Table<R extends Record>. This + couple of Table<R> and R are generated as such: +

+

+ Suppose we have the tables as defined in the + example database. + Then, using a + default configuration, these (simplified for the example) classes will + be generated: +

+ +

The Table as an entity meta model

+
+public class TAuthor extends UpdatableTableImpl<TAuthorRecord> {
+
+    // The singleton instance of the Table
+    public static final TAuthor T_AUTHOR = new TAuthor();
+
+    // The Table's fields    
+    public static final TableField<TAuthorRecord, Integer> ID =            // [...]
+    public static final TableField<TAuthorRecord, String> FIRST_NAME =     // [...]
+    public static final TableField<TAuthorRecord, String> LAST_NAME =      // [...]
+    public static final TableField<TAuthorRecord, Date> DATE_OF_BIRTH =    // [...]
+    public static final TableField<TAuthorRecord, Integer> YEAR_OF_BIRTH = // [...]
+}
+ +

The Table's associated TableRecord

+

If you use the + SimpleSelectQuery + syntax (both in standard and DSL + mode), then your SELECT statement will return the single Table<R + extends Record>'s associated Record type <R>. In the case of + the above TAuthor Table, this will be a TAuthorRecord.

+ +
+public class TAuthorRecord extends UpdatableRecordImpl<TAuthorRecord> {
+
+    // Getters and setters for the various fields
+    public void setId(Integer value) {       // [...]
+    public Integer getId() {                 // [...]
+    public void setFirstName(String value) { // [...]
+    public String getFirstName() {           // [...]
+    public void setLastName(String value) {  // [...]
+    public String getLastName() {            // [...]
+    public void setDateOfBirth(Date value) { // [...]
+    public Date getDateOfBirth() {           // [...]
+
+    // Navigation methods for foreign keys
+    public List<TBookRecord> getTBooks() throws SQLException { // [...]
+}
+ - diff --git a/jOOQ-website/manual/META/index.php b/jOOQ-website/manual/META/index.php index cfa0e0ea05..db9f140c7e 100644 --- a/jOOQ-website/manual/META/index.php +++ b/jOOQ-website/manual/META/index.php @@ -7,24 +7,47 @@ function printH1() { print "Meta model code generation"; } function getSlogan() { - return ""; + return "In these sections you will learn about how to configure and use + jOOQ's source code generator"; } function printContent() { global $root; ?> - + -
The jOOQ User Manual : Meta model code generationprevious : nextThe jOOQ User Manual : Meta model code generationprevious : next

Table of contents

    + +

    Overview

    +

    + In the previous chapter, we have seen how to use the + Factory in order to create + Queries and fetch data in + Results. The strength of jOOQ not + only lies in its object-oriented + Query model, + but also in the fact + that Java source code is generated from your database schema into the + META data model. jOOQ follows the paradigm, that your database comes + first (see also home page). + This means that you should not modify + generated source code, but only adapt entities in your database. Every + change in your database is reflected in a corresponding change in your + generated meta-model. +

    +

    + Artefacts, such as tables, views, user defined types, sequences, stored + procedures, packages have a corresponding artefact in Java. +

    +

    Table of contents

    1. -Configuration and setup +Configuration and setup of the generator
    2. -Schemata +The schema, top-level generated artefact
    3. -Tables and views and their corresponding records +Tables, views and their corresponding records
    4. Procedures and packages diff --git a/jOOQ-website/manual/index.php b/jOOQ-website/manual/index.php index 7c7020b508..c511d727ba 100644 --- a/jOOQ-website/manual/index.php +++ b/jOOQ-website/manual/index.php @@ -111,7 +111,7 @@ function printContent() { Serializability of QueryParts and Results
    5. -Extend jOOQ types with custom implementations +Extend jOOQ with custom types
    @@ -119,13 +119,13 @@ function printContent() { Meta model code generation
    1. -Configuration and setup +Configuration and setup of the generator
    2. -Schemata +The schema, top-level generated artefact
    3. -Tables and views and their corresponding records +Tables, views and their corresponding records
    4. Procedures and packages diff --git a/jOOQ-website/src/main/resources/html-pages.xsl b/jOOQ-website/src/main/resources/html-pages.xsl index 7337576d06..589a7835ae 100644 --- a/jOOQ-website/src/main/resources/html-pages.xsl +++ b/jOOQ-website/src/main/resources/html-pages.xsl @@ -218,6 +218,12 @@ function printContent() { + + https://sourceforge.net/apps/trac/jooq/ticket/ + + + + Reference not supported @@ -240,6 +246,10 @@ function printContent() { External API reference: + + Trac ticket: # + + @@ -253,6 +263,10 @@ function printContent() { + + # + + diff --git a/jOOQ-website/src/main/resources/manual.xml b/jOOQ-website/src/main/resources/manual.xml index ab1a4f2e59..5b5e9048e8 100644 --- a/jOOQ-website/src/main/resources/manual.xml +++ b/jOOQ-website/src/main/resources/manual.xml @@ -54,7 +54,7 @@ jOOQ classes and their usage In these sections, you will learn about how to use jOOQ object - factories and the jOOQ object oriented query model, to express + factories and the jOOQ query model, to express your SQL in jOOQ @@ -969,33 +969,715 @@ create.mergeInto(T_AUTHOR)
      ResultQuery and various ways of fetching data + + Various jOOQ query type extend the ResultQuery which provides many means of + fetching data. In general, fetching means executing and returning some + sort of result. + + +

      The ResultQuery provides many convenience methods

      +
      +public interface ResultQuery<R extends Record> {
      +
      +  // These methods allow for fetching a jOOQ Result
      +  // or parts of it.
      +  // ----------------------------------------------
      +
      +  // Fetch the whole result
      +  Result<R> fetch();
      +
      +  // Fetch a single field from the result
      +  <T> List<T> fetch(Field<T> field);
      +      List<?> fetch(int fieldIndex);
      +      List<?> fetch(String fieldName);
      +
      +  // Fetch the first Record
      +  R fetchAny();
      +
      +  // Fetch exactly one Record
      +  R fetchOne();
      +
      +  // Fetch a single field of exactly one Record
      +  <T> T  fetchOne(Field<T> field);
      +  Object fetchOne(int fieldIndex);
      +  Object fetchOne(String fieldName);
      +
      +  // These methods transform the result into another
      +  // form, if org.jooq.Result is not optimal
      +  // -----------------------------------------------
      +
      +  // Fetch the resulting records as Maps
      +  List<Map<String, Object>> fetchMaps();
      +  Map<String, Object> fetchOneMap();
      +
      +  // Fetch the result as a Map
      +  <K>    Map<K, R> fetchMap(Field<K> key);
      +  <K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value);
      +
      +  // Fetch the resulting records as arrays
      +  Object[][] fetchArrays();
      +  Object[] fetchOneArray();
      +
      +  // Fetch a single field as an array
      +  <T> T[] fetchArray(Field<T> field);
      +  Object[] fetchArray(int fieldIndex);
      +  Object[] fetchArray(String fieldName);
      +
      +  // These methods transform the result into a user-
      +  // defined form, if org.jooq.Result is not optimal
      +  // -----------------------------------------------
      +
      +  // Fetch the resulting records into a custom POJO
      +  // type, which may or may not be JPA-annotated
      +  <E> List<E> fetchInto(Class<? extends E> type);
      +
      +  // Fetch the resulting records into a custom
      +  // record handler, similar to how Spring JdbcTemplate's
      +  // RowMapper or the Ollin Framework works.
      +  <H extends RecordHandler<R>> H fetchInto(H handler);
      +
      +  // These change the behaviour of fetching itself,
      +  // especially, when not all data should be
      +  // fetched at once
      +  // ----------------------------------------------
      +
      +  // Fetch a Cursor for lazy iteration
      +  Cursor<R> fetchLazy();
      +
      +  // Fetch data asynchronously and let client code
      +  // decide, when the data must be available.
      +  // This makes use of the java.util.concurrent API,
      +  // Similar to how Avajé Ebean works.
      +  FutureResult<R> fetchLater();
      +  FutureResult<R> fetchLater(ExecutorService executor);
      +}
      +
      + +
      QueryParts and the global architecture + When constructing Query objects in jOOQ, everything is + considered a QueryPart. The purpose of this quickly becomes clear when + checking out the QueryPart API essentials
      + +
      Serializability of QueryParts and Results + Most of the jOOQ API implements the Serializable interface. + This helps storing queries and partial queries in files, transferring + queries or result data over TCP/IP, etc. + +

      Attaching QueryParts

      +

      + The only transient element in any jOOQ object is the + 's + underlying + . When you want to execute queries after + de-serialisation, or when you want to store/refresh/delete + , + you will have to "import" or "re-attach" them to a Factory +

      +
      +// Deserialise a SELECT statement
      +ObjectInputStream in = new ObjectInputStream(...);
      +Select<?> select = (Select<?>) in.readObject();
      +
      +// This will throw a DetachedException:
      +select.execute();
      +
      +// In order to execute the above select, attach it first
      +Factory create = new Factory(connection, SQLDialect.ORACLE);
      +create.attach(select);
      + + +

      Automatically attaching QueryParts

      +

      In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry

      +
      +// Create your own custom ConfigurationProvider that will make
      +// your default Factory available to jOOQ
      +ConfigurationProvider provider = new CustomConfigurationProvider();
      +
      +// Statically register the provider to jOOQ's ConfigurationRegistry
      +ConfigurationRegistry.setProvider(provider);
      + +

      Once you have executed these steps, all subsequent deserialisations + will try to access a Configuration (containing a JDBC Connection) from + your ConfigurationProvider. This may be useful when

      +
        +
      • transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g. + between client and server), before immediately executing queries, + storing UpdatableRecords
      • +
      • + Using automatic mechanisms as known in + Wicket +
      • +
      +
      + +
      - Extend jOOQ types with custom implementations + Extend jOOQ with custom types + Maybe jOOQ is missing functionality that you would like to see, + or you can't wait for the next release... In this case, you can extend + any of the following open jOOQ implementation classes + +

      Write your own QueryPart implementations

      +

      If a SQL clause is too complex to express with jOOQ, you can extend + either one of the following types for use directly in a jOOQ query:

      +
      +public abstract class CustomField<T> extends AbstractField<T> {
      +  // [...]
      +}
      +public abstract class CustomCondition extends AbstractCondition {
      +  // [...]
      +}
      + +

      These two classes are declared public and covered by integration + tests. When you extend these classes, you will have to provide your + own implementations for the ' + bind() and + toSQL() methods:

      +
      +// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
      +// in the correct order, passing the render context.
      +//
      +// If context.inline() is true, you must inline all bind variables
      +// If context.inline() is false, you must generate ? for your bind variables
      +public void toSQL(RenderContext context);
      +
      +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
      +// variable binding to them in the correct order, passing the bind context.
      +//
      +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
      +public void bind(BindContext context) throws SQLException;
      +
      + +

      The above contract may be a bit tricky to understand at first. The + best thing is to check out jOOQ source code and have a look at a + couple of QueryParts, to see how it's done.

      +

      Plain SQL as an alternative

      +

      If you don't need integration of rather complex QueryParts into + jOOQ, then you might be safer using simple + functionality, + where you can provide jOOQ with a simple String representation of your + embedded SQL.

      +
      + + + +
      Meta model code generation + In these sections you will learn about how to configure and use + jOOQ's source code generator + +

      Overview

      +

      + In the previous chapter, we have seen how to use the + in order to create + and fetch data in + . The strength of jOOQ not + only lies in its object-oriented + , + but also in the fact + that Java source code is generated from your database schema into the + META data model. jOOQ follows the paradigm, that your database comes + first (see also home page). + This means that you should not modify + generated source code, but only adapt entities in your database. Every + change in your database is reflected in a corresponding change in your + generated meta-model. +

      +

      + Artefacts, such as tables, views, user defined types, sequences, stored + procedures, packages have a corresponding artefact in Java. +

      +
      + +
      - Configuration and setup + Configuration and setup of the generator + jOOQ uses a simple configuration file to configure source code generation. + +

      The deliverables

      +

      + There are three binaries available with jOOQ, to be downloaded from + SourceForge + or from Maven central: +

      +
        +
      • + jOOQ.jar +
        + The main library that you will include in your application to run jOOQ +
      • +
      • + jOOQ-meta.jar +
        + The utility that you will include in your build to navigate your + database schema for code generation. This can be used as a schema + crawler as well. +
      • +
      • + jOOQ-codegen.jar +
        + The utility that you will include in your build to generate your + database schema +
      • +
      + +

      Dependencies

      +

      All of jOOQ's dependencies are "optional", i.e. you can run + jOOQ without any of those libraries. + For instance, jOOQ maintains an "optional" dependency on log4j and slf4j. + This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the + classpath. If they are not present, then java.util.logging.Logger is + used instead. +

      + + +

      Configure jOOQ

      +

      You need to tell jOOQ some things about your database connection. + Here's an example of how to do it for a MySQL database

      +
      +#Configure the database connection here
      +jdbc.Driver=com.mysql.jdbc.Driver
      +jdbc.URL=jdbc:mysql://[your jdbc URL]
      +jdbc.Schema=[your database schema]
      +jdbc.User=[your database user]
      +jdbc.Password=[your database password]
      +
      +#The default code generator. You can override this one, to generate your own code style
      +#Defaults to org.jooq.util.DefaultGenerator
      +generator=org.jooq.util.DefaultGenerator
      +
      +#The database type. The format here is:
      +#generator.database=org.util.[database].[database]Database
      +generator.database=org.jooq.util.mysql.MySQLDatabase
      +
      +#All elements that are generated from your schema (several Java regular expressions, separated by comma)
      +#Watch out for case-sensitivity. Depending on your database, this might be important!
      +generator.database.includes=.*
      +
      +#All elements that are excluded from your schema (several Java regular expressions, separated by comma). Excludes match before includes
      +generator.database.excludes=
      +
      +#Primary key / foreign key relations should be generated and used. 
      +#This will be a prerequisite for various advanced features
      +#Defaults to false
      +generator.generate.relations=true
      +
      +#Generate deprecated code for backwards compatibility 
      +#Defaults to true
      +generator.generate.deprecated=false
      +
      +#The destination package of your generated classes (within the destination directory)
      +generator.target.package=[org.jooq.your.package]
      +
      +#The destination directory of your generated classes
      +generator.target.directory=[/path/to/your/dir]
      + +

      And you can add some optional advanced configuration parameters:

      +
      +#Generate a master data table enum classes (several Java regular expressions, separated by comma)
      +generator.generate.master-data-tables=[a list of tables]
      +
      +#For every master data table, specify two special columns
      +generator.generate.master-data-table-literal.[master data table]=[column used for enum literals]
      +generator.generate.master-data-table-description.[master data table]=[column used for documentation]
      +

      Check out the manual's section about + + to find out more + about those advanced configuration parameters.

      + +

      Run jOOQ code generation

      +

      Code generation works by calling this class with the above property file as argument.

      +
      +org.jooq.util.GenerationTool /jooq-config.properties
      +

      Be sure that these elements are located on the classpath:

      +
        +
      • The property file
      • +
      • jooq.jar, jooq-meta.jar, jooq-codegen.jar
      • +
      • The JDBC driver you configured
      • +
      + +

      A command-line example (For Windows, unix/linux/etc will be similar)

      +
        +
      • Put the property file, jooq*.jar and the JDBC driver into + a directory, e.g. C:\temp\jooq
      • +
      • Go to C:\temp\jooq
      • +
      • Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file]
      • +
      +

      Note that the property file must be passed as a classpath resource

      + +

      Run code generation from Eclipse

      +

      Of course, you can also run code generation from your IDE. In + Eclipse, set up a project like this. Note that this example uses + jOOQ's log4j support by adding log4j.xml and log4j.jar to the project + classpath:

      +
      + Eclipse configuration +
      + +

      Once the project is set up correctly with all required artefacts on + the classpath, you can configure an Eclipse Run Configuration for + org.jooq.util.GenerationTool.

      +
      + Eclipse configuration +
      + +

      With the properties file as an argument

      +
      + Eclipse configuration +
      + +

      And the classpath set up correctly

      +
      + Eclipse configuration +
      + +

      Finally, run the code generation and see your generated artefacts

      +
      + Eclipse configuration +
      + +

      Run generation with ant

      +

      You can also use an ant task to generate your classes:

      +
      +<!-- Task definition -->
      +<taskdef name="generate-classes" classname="org.jooq.util.GenerationTask">
      +  <classpath>
      +    <fileset dir="${path.to.jooq.distribution}">
      +      <include name="jOOQ.jar"/>
      +      <include name="jOOQ-meta.jar"/>
      +      <include name="jOOQ-codegen.jar"/>
      +    </fileset>
      +    <fileset dir="${path.to.mysql.driver}">
      +      <include name="${mysql.driver}.jar"/>
      +    </fileset>
      +  </classpath>
      +</taskdef>
      +
      +<!-- Run the code generation task -->
      +<target name="generate-test-classes">
      +  <generate-classes 
      +      jdbcurl="jdbc:mysql://localhost/test"
      +      jdbcschema="test"
      +      jdbcuser="root"
      +      jdbcpassword=""
      +      generatortargetpackage="org.jooq.test.generatedclasses"
      +      generatortargetdirectory="${basedir}/src"/>
      +</target>
      + +

      Use jOOQ generated classes in your application

      +

      Be sure, both jOOQ.jar and your generated package (see + configuration) are located on your classpath. Once this is done, you + can execute SQL statements with your generated classes.

      +
      + +
      - Schemata + The schema, top-level generated artefact + The schema is the top-level generated object in jOOQ. In many + RDBMS, the schema coincides with the owner of tables and other objects + + +

      The Schema

      +

      + As of jOOQ 1.5, the top-level generated object is the + . + The Schema itself has no relevant functionality, except for holding + the schema name for all dependent generated artefacts. jOOQ queries try + to always fully qualify an entity within the database using that Schema +

      + +

      + Currently, it is not possible to link generated artefacts from various + schemata. If you have a stored function from Schema A, which returns a + UDT from Schema B, the types cannot be linked. This enhancement is on + the roadmap, though: . +

      + +

      + When you have several schemata that are logically equivalent (i.e. they + contain identical entities, but the schemata stand for different + users/customers/clients, etc), there is a solution for that. Check out + the manual's section on support for + +

      + +

      Schema contents

      +

      The schema can be used to dynamically discover generate database + artefacts. Tables, sequences, and other items are accessible from the + schema. For example:

      +
      +public final java.util.List<org.jooq.Sequence> getSequences();
      +public final java.util.List<org.jooq.Table<?>> getTables();
      +
      + +
      - Tables and views and their corresponding records + Tables, views and their corresponding records + + The most important generated artefacts are Tables and TableRecords. + Every Table has a Record type associated with it that models a single tuple + of that entity: Table<R extends Record>. + + +

      Tables and TableRecords

      +

      + The most important generated artefacts are + and + . As + discussed in previous chapters about + and + , jOOQ uses the + Table class to model entities (both tables and views) in your database + Schema. Every Table has a Record type associated with it that models a + single tuple of that entity: Table<R extends Record>. This + couple of Table<R> and R are generated as such: +

      +

      + Suppose we have the tables as defined in the + . + Then, using a + default configuration, these (simplified for the example) classes will + be generated: +

      + +

      The Table as an entity meta model

      +
      +public class TAuthor extends UpdatableTableImpl<TAuthorRecord> {
      +
      +    // The singleton instance of the Table
      +    public static final TAuthor T_AUTHOR = new TAuthor();
      +
      +    // The Table's fields    
      +    public static final TableField<TAuthorRecord, Integer> ID =            // [...]
      +    public static final TableField<TAuthorRecord, String> FIRST_NAME =     // [...]
      +    public static final TableField<TAuthorRecord, String> LAST_NAME =      // [...]
      +    public static final TableField<TAuthorRecord, Date> DATE_OF_BIRTH =    // [...]
      +    public static final TableField<TAuthorRecord, Integer> YEAR_OF_BIRTH = // [...]
      +}
      + +

      The Table's associated TableRecord

      +

      If you use the + + syntax (both in standard and DSL + mode), then your SELECT statement will return the single Table<R + extends Record>'s associated Record type <R>. In the case of + the above TAuthor Table, this will be a TAuthorRecord.

      + +
      +public class TAuthorRecord extends UpdatableRecordImpl<TAuthorRecord> {
      +
      +    // Getters and setters for the various fields
      +    public void setId(Integer value) {       // [...]
      +    public Integer getId() {                 // [...]
      +    public void setFirstName(String value) { // [...]
      +    public String getFirstName() {           // [...]
      +    public void setLastName(String value) {  // [...]
      +    public String getLastName() {            // [...]
      +    public void setDateOfBirth(Date value) { // [...]
      +    public Date getDateOfBirth() {           // [...]
      +
      +    // Navigation methods for foreign keys
      +    public List<TBookRecord> getTBooks() throws SQLException { // [...]
      +}
      +
      + +
      Procedures and packages + + Procedure support is one of the most important reasons why you should consider + jOOQ. jOOQ heavily facilitates the use of stored procedures and + functions via its source code generation. + + +

      Stored procedures in modern RDBMS

      +

      This is one of the most important reasons why you should consider + jOOQ. Read also my + article on dzone + about why stored procedures become + more and more important in future versions of RDMBS. In this section + of the manual, we will learn how jOOQ handles stored procedures in + code generation. Especially before + was + introduced to major RDBMS, these procedures tend to have dozens of + parameters, with IN, OUT, IN OUT parameters mixed in all variations. + JDBC only knows very basic, low-level support for those constructs. + jOOQ heavily facilitates the use of stored procedures and functions + via its source code generation. Essentially, it comes down to this: +

      + +

      "Standalone" stored procedures and functions

      +

      Let's say you have these stored procedures and functions in your Oracle database

      +
      +-- Check whether there is an author in T_AUTHOR by that name
      +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
      +
      +-- Check whether there is an author in T_AUTHOR by that name
      +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
      +
      +-- Check whether there is an author in T_AUTHOR by that name and get his ID
      +CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);
      + +

      jOOQ will essentially generate two artefacts for every procedure/function:

      +
        +
      • A class holding a formal Java representation of the procedure/function
      • +
      • Some convenience methods to facilitate calling that procedure/function
      • +
      +

      Let's see what these things look like, in Java. The classes (simplified for the example):

      + +
      +// The function has a generic type parameter <T> bound to its return value
      +public class FAuthorExists extends StoredFunctionImpl<BigDecimal> {
      +
      +    // Much like Tables, functions have static parameter definitions
      +    public static final Parameter<String> AUTHOR_NAME = // [...]
      +
      +    // And much like TableRecords, they have setters for their parameters
      +    public void setAuthorName(String value) { // [...]
      +    public void setAuthorName(Field<String> value) { // [...]
      +}
      +
      +public class PAuthorExists extends StoredProcedureImpl {
      +
      +    // In procedures, IN, OUT, IN OUT parameters are all represented
      +    // as static parameter definitions as well
      +    public static final Parameter<String> AUTHOR_NAME = // [...]
      +    public static final Parameter<BigDecimal> RESULT = // [...]
      +
      +    // IN and IN OUT parameters have generated setters
      +    public void setAuthorName(String value) { // [...]
      +
      +    // OUT and IN OUT parameters have generated getters
      +    public BigDecimal getResult() { // [...]
      +}
      +
      +public class PAuthorExists_2 extends StoredProcedureImpl {
      +    public static final Parameter<String> AUTHOR_NAME = // [...]
      +    public static final Parameter<BigDecimal> RESULT = // [...]
      +    public static final Parameter<BigDecimal> ID = // [...]
      +
      +    // the setters...
      +    public void setAuthorName(String value) { // [...]
      +
      +    // the getters...
      +    public BigDecimal getResult() { // [...]
      +    public BigDecimal getId() { // [...]
      +}
      + +

      An example invocation of such a stored procedure might look like this:

      + +
      +PAuthorExists p = new PAuthorExists();
      +p.setAuthorName("Paulo");
      +p.execute(configuration);
      +assertEquals(BigDecimal.ONE, p.getResult());
      + +

      If you use the generated convenience methods, however, things are much simpler, still:

      +
      +// Every schema has a single Functions class with convenience methods
      +public final class Functions {
      +
      +    // Convenience method to directly call the stored function
      +    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
      +
      +    // Convenience methods to transform the stored function into a
      +    // Field<BigDecimal>, such that it can be used in SQL
      +    public static Field<BigDecimal> fAuthorExists(Field<String> authorName) { // [...]
      +    public static Field<BigDecimal> fAuthorExists(String authorName) { // [...]
      +}
      +
      +// Every schema has a single Procedures class with convenience methods
      +public final class Procedures {
      +
      +    // Procedures with 0 OUT parameters create void methods
      +    // Procedures with 1 OUT parameter create methods as such:
      +    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
      +
      +    // Procedures with more than 1 OUT parameter return the procedure
      +    // object (see above example)
      +    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
      +}
      + +

      An sample invocation, equivalent to the previous example:

      +
      +assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));
      + + +

      jOOQ's understanding of procedures vs functions

      +

      + It might not be very clear, what defines a procedure and what + defines a + function in those RDBMS that support these objects. Most + often, a function + has a mandatory return value, whereas procedures can + return OUT parameters. + Oracle allows for mixing those concepts. + Postgres omits the term procedure, etc. +

      +

      + For jOOQ, the following applies: +

      +
        +
      • + A procedure is an object that cannot be used in SQL (because it + has no + return value). A procedure is called internally by jOOQ using a + +
      • +
      • + A function is an object that can be used in SQL. There is always + the + possibility to create a + + to represent the function + embedded in SQL. +
      • +
      + + +

      Packages in Oracle

      +

      + Oracle uses the concept of a PACKAGE to group several + procedures/functions into a sort of namespace. The + SQL standard + talks about "modules", to represent this concept, even if this is + rarely implemented. This is reflected in jOOQ by the use of Java + sub-packages in the source code generation destination package. Every + Oracle package will be reflected by +

      +
        +
      • A Java package holding classes for formal Java representations of + the procedure/function in that package +
      • +
      • A Java class holding convenience methods to facilitate calling + those procedures/functions +
      • +
      +

      + Apart from this, the generated source code looks exactly like the + one for + standalone procedures/functions. +

      +
      + +
      UDT's including ARRAY and ENUM types
      @@ -1004,6 +1686,10 @@ create.mergeInto(T_AUTHOR)
      + + + +
      DSL or fluent API. Where SQL meets Java