From e223ad44bdd089f964cf7bb32b84414517363a23 Mon Sep 17 00:00:00 2001 From: bringert Date: Wed, 25 May 2005 09:20:00 +0000 Subject: [PATCH] Updated GF language doc to include list categories. --- doc/DocGF.pdf | Bin 54233 -> 79528 bytes doc/DocGF.tex | 569 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 569 insertions(+) create mode 100644 doc/DocGF.tex diff --git a/doc/DocGF.pdf b/doc/DocGF.pdf index 5460df14e099131c0fa61c92bc19b18fe7aac0c1..1399fe01c05c4f08db9f0855ee3587805ee45afd 100644 GIT binary patch literal 79528 zcmY!laBUekr&_{13o4~El3nCpEBG$$ zXg>YPyJF}4RU2-(xy|}8x%F#e`Jwr;Z(n}+YZmnI=(pET-36wydUYx#26lG%O1UTm z9@RWq_4~PN%Mi+~+`k>@Q1Nc^Xf|q9{AI5bWOK;Xiq|w|)}F#_ zPI;rk?P`sa7ENHiC$-W-FsONsh1kq1?|8p9^cd;v){POkw?IsN!o^36lycpc?Kr+w zwMaB-iRA8UeWn|4uO59p`V_c8avhzuTruT?+!xuH zXEv)3$@K(@D6n7qI?ZoJQT)e6E9GPsa$RIKn!Tepn{IFYx3|Igh;t3Pe%c@aA)e#(VrzuxOI`o>y&j$0paeGnCLx1sn#@wV+c zo0T3l_8;3T`*+nN*OTRU=iIUsbI|$mm(BkB)d%lZ9{($RZI`XtRihq-up6tnx6W1G z75&6;v!{=Y*#f1M%O~I6IX2bjiQu+heML+3{ziMJxqa&M4CJ{L**Ybx+Dud8VYF}O zDW2-CGzIy$<|3R`m+ay$ZQ$105yC0Hsd7P5qCskYU_J9s4ddzVE0U+RP5vu?;@t$X z4YKWrcPve4y0c5t-&RolPu7pxdc$~wg)K{3{EN!ovuuK%KNmX{$*R-QjqrJJkxu(&+$ zq=J{w2bq0`=LbKZv?)Txwe|+DPq}YI=-XF^8^6!I!m7AN=fBCEb2E0NN3MGGVOzFT zm-3+w&7KC%2dfx%D4jXMz3`#r>42w47%jR*52RjC3W*I4aja2Jd1zN9R=>PJg7Gx_ z4l6U)j>O3KuO{vel!-WdYOV?1@cP8!rVc z4k@^tw=aKR%~Z#o6AvEm6dc^j8Nz3J@pv-hh7PMj{P+p_m)R>qk_ z)yo)kLaTNO@_zo@HC=dO=KIv|xAqkkRJga5`|m&gysY-+W1;5#0y8gpm#mgMA(U|? zIC5%|ZFY~C(X%aoTxOhI=_L9}^yj03!sj3585tvATejqEo@OmM>yi7;#kKGLjztUAo8PQ`JzrzF@3Yr} zI(fVIl|GujaLz%m>TmO98f%0O|I_5xW(r#9TXgQf4*Mocb{{r}t?PefJ=F^4Fx~3N zue~W@sqxcX!w-kmTn_a&&e{8{%(vDhW@gEpw(HYw zI~lyN=x|uecUo;~2S9>HVye&$o+CsGE6ywsz_x`2!RCzbT1n zT};3D@1@P1t&O|l&i{Blq2-$rXTN37WP7-L`HMwT)v8Nlx}BAKzD!g3 zdqrxBq~g?YewCS}(~q1~$zZ*x%zThDXxff{9F{ z$YsuBJe9rX?*-+igYhd^(k@3X_k!7S7+d+@Q{-L9}O;v+WN4D%XcmADpj*Jhr&%KjCwdv2#z%iGVjYzIvvLvu%Iv zG>NK|`rZ<2{Nts%p&rYlB*TlgpV;nC_jsrC^2pi70*`IIJG)sXUHW>b&DM_JsdK)8 z?Y~3Eba^$_3in+vYi^I`;vCs%goZ3Djzo5RgMAqm4f9Fuh2 zf@XOHEL?eAcE*zV&t0}RhivSTm{EV&Al|=p^+E5`Pj6f+X_sAo|Ae$n?=DX9z5C{- z9eQ|zar=|>1nq*2#yS^8|zfp4bkJ!Ez?9Xhmq^N~`iXT@g)*-8w4ZalTG zU;3|ZdR{Z<^Y9?gRD*CFcmy(~9#btz4m4;Ln zq$=nKB&Mfw={x7=m89mC6e}1j7$^jB=?A42=a&{Grxq(1LIiwMQ!*2s@+%ag4HOI% zOf60IjLgjxEKCgbEG%QW^aB!$Qu9g_j3KJ+>=dB(f%veh+but@M8U>JLEp{LOu-Cf zEQo2YUx@{@y8OBA9N^aEVn6!b$NtblXgz_ImgR^3eLe+N*C@u!p`#6*2yx zb){qD_k!YkJ5`_@aRcCJ5tN_bz^m9!GMt49{xDwVr_cEPPMUV+G_ z^U8O3Y0tWQi(NMCSJ`a|lb$B2QuC~w{4Fg~FOR+YSa|(vZTXo$ z@jmk%*}~RZ*;@Voy}Rf`ZgKo;>zdlSqmynjb_h*c9?2jiteErSs_dfYN;2}dQs=a8 zSBMn*c2?-c4c5c_uLR~-L>zWXKf68rTR5*C%bSx<>EQ|Ad@m=T`Mv9QOoRpd^Fk+O zPqkLZ&x_ehd>C~;9R6yq$2EI>x=O$B^MuoCLY5DWEN$527(QS4f1xGm<53~sw8s(c zl{2{Io0<)#SczK|pX@lH)?>fF;mMmfGg^GFWqYuQS5~}jxK|P6AII?H=Jww)hvfad zess6ru=(Q8pzpnN`U3Y;@v^hu%gi?B|Kyx^*L>P>?o;#s{JXk(@}0A%9-Y71)Tn=i ze};exdsoZ>1JC9~u{E(V_b(*uU2t$WtE$cUrs@rviIs9&xcykBzgrnu6ZPk>gyt+K z*WVG-j~~{4+Ojm~7QbO_z0ljA=HZ!hSbHYQaIZ0P4>YitWTV=XcI@kSIlrRYk50au zCS!H&g`nUi5oJefHQ)XlCaEm8d$-swIv{q*dB%w&jms9e?@p5T+qp6}{O0y`%wKd) zdhkfU`S{*a#vyUi6QlCFBU(o;wK#OjdVEP_*N~3Q|G2zIAR@V8HyfL=!2PYoTbQcu z?mIej+l_;p729Pu%k%F4y4fd*t7>`heygKOs-9YNC%?M3&*DtME$&Spk3I~DWY4-W zh5JzJ7EOPai4E+lIv?Cp?X%ly(XMSJm9rjfxh+~{ZV|3C`P8}t2_L3& zgoLJfe^0*eYS4CjSMcQ(3yaq4-B7*bpH>xQ7}{l~oGQ6I@uks&m0}h;O0z3|yD7f- z9igiJ#WnlV_HQi$o10V&=2t#yS=>2y*~-Q_hh${l-tO);zh-cl?Y-pQ!ieSx7C&Z6 z+OD@vSWxTb!Edke@Vs2Wi>c?`q{1q<_w(L-H`ftrN5`pDL(H%DvQ2b#nLeoj>e*BOUf(R1n6X3IJ9bVy_`UwQi90g(UD+2Cxok<^zO8p;8Lm!SCuwn6X2;&z zn|BUIySJouITt^%Wq&-;IFGNF(R0D-{(r8&8kyD`o|rlD#+}IMq_)qy&!jg!;h9ol zlGxL6PutNzpkQb739*AO``hd$WaKp~38gw0NG#CixgO5GvGjmJcFgBL>hU{zQ;(fk zTu@(szVV#=>6eEOZ~5}F`3#3}#x4ENI`V-r=5_L!xqd%(=FT{OlHGI5hlnQ<<-ea_ zw!c2R$m({*6OZFdCM|5*<#Q}x@>kZ4B|KYszSM?><#*M5D+^s79vft0YxoF>`j04&UiazZ3iK6}O`-rKlrF^JdSwCR^G-}IgCyBvR|FwZ_OuPgE~ zR*h$22bW6Y615*iT&p%VuwB#$x}RFS@#|Fki9)@vX1Tp~uz7D3RdBc@wPbFpTGozT zGc?)MW|ZHtm~utVeBJ4l8nPCO%Z@GBld&%{?R8T0xlR8YR-LYyJhgje`1P#53Z4h0 z&x3*{Dg;|vEU{J(og3J%zxk|i^;ecjBKw{)t+>`vQ@Z@+s>z)@7}lF#uKBkAx&hx! z`Hz3@KiYnqTeC97e&y_2)#rA$FBUAQpZr^^bc@Kz-o9H?r=AJhJSo-V{I6)$FE%=N z>J_`TW%{tcH)A&y7T9(6hnY3cIh~otL8bNB4>K z)7icf5r;1#7K zuHxe&?g{Hz3)Lnpo!8a&&RmK~#kru+cF~z_+40G)2U`SfC)#*Bw}=*Y<$X?_7{4lG zZpqI#pUd{GuaJ+)%y9hw_)}vEt1#>JPL9j}tpZfnNOxU5xxIkpqgc+XX^k>dN~_rV zFYl?^p5FY-*5_Sd?fRqZnd-lZ{OQ##3yVy7cENXn!Kufd65m+zw|+v{=N;mbxw>O&V1T60w>!mu)sM{l7P4lO&D7ST*LuntIXA>d%k2$jPBKmo z{(I-|dakhLdGFNC|1&%gP}+i7EQ8w1uo4P;u?#B1P>W@71DgC|8KfO%B~r1BqXmvq zL?ac;h+>?mqSyq~a);T9D2gqJE{Y?4`=#6k_JWGypcf@y%k!Uj_k>4jcgl9oetejt zjn~k6!OckRlk5GzGNdJBFOZ&QIzVIku(QWn4bLAF?AA0j7oRpZ>p7i7U(Q8{I&b}AlyyujsSMk9e;u*7y zAAIX+>6x~l+hJ*D;Bl!npNb~+dQ{74H*V5?HB)0k{Y<-%?ME}dS-5S;?$LZEnX%+X zck&(a1&uu}MQP?MWe*+DIA$r@By@&rd+e+=DW~>bxc$xJB)_^=`61b^Tn3gfDdpHn z5w0wG{`qbeE^PDFUYss_azopGYuTFBH`=FhPoLk^-6N}d<8FS9q@JWgBN*?ornVQ9% zo=y+m@jcX2GF8?LXXVe`;qz)!o2~lp&lm3Vzxw5)sd|o=FJ@QJwryRDdvrqfe4Hg= zSUWfLtzUNQ;l4YGYD`ahyt1dL_a7~`s1|PEyX)yVU3o3%$EOjyCu)2C>)WiAtr_Yy z|8}Cv_7Jw6pAwedC=$T9$HQlhYgpR%E8Hw$W)mMg-{dt-*JSE$>k~_N-%{s0^O?0X%Zl|@ z;9W_ky-6}Yv!)x*dF@$xwDMH-{0qnS>l=Pwe%fze>!u3|SEQoWJWIShc@e`4V_l|` zcIpOV-i@11-iX^5qm0`ZqaLUmo48t8*)roGSE7fGqV z%OsQQ!nw;l)731ZHf$H#l5hK&k3F-s=s;|3Olxs?ep~o|#>L9^YcR`V(0~Q3h{9SH zg9|a#vKTyoL4H{b(hjqd#IhKv8Ep(Nmx(KjjTJB^UM$TFAw@9}BO_-cee;D41@?Xq ze`7fD#Dk5t|1=&sUG`9DsXEbH)RDpEsJg&x>W`m2lXGvffao_P{F0gfRXXT*uG;AMHrwO&WzW>VGH$`7?aQhzmGe|gG^`_?O`wfp_s4)VR5 z{#cRk*WHsIA=ikSV^1lAd z+9&hMAR=|!CYG8L>h~mqf4)=v@#BHdv;TrUo2zRo8=n8+XZ~zmE|;Rd;gzeQlYhcV zQDs@hP2RpdJ?X1&R?Kt0tHi?7zIfe+hmqxp>%Ipr;Ho+&e5GO6O7%`g&KaBIPw&2( zn`X{tmDjl5(CNaT*9srmVXOGP<(rR8wOy0g^vC*B_pZpVMpIXOR!Qx7 z9)FoJzi4SB%kpi3y@k( z@zUIodk32hRha6FjDK(2{r2G&;kTy~H@@et%2e&rE7+guvi19~uCv*@eAhekPpQvg z-juf_>F^EPP5&M|n>}aQBLGTguL`Y+E#?BEg$;O6c?S&9ZGLiaw@S zy*YgC-jyre|G#o>?X)}1k>BWZnr(sg_9aUM+O)4q&eP5f{&dLP%tVsSct?6?+%tc_ zE5$`QHaf-Z8(SROHIh5uUUt?@d{TI)r}$Qe=UY*xdQ z9NFDY8++coKO+YS%1Wm})z-}$_u-Lq<0`N?p1f!5}v2~2W4)8nSyeI}&2 zcJY>XPim?@i5sv#oQYBJnSlEFuu=$n!3QcaPzpX1L(r%!*##e1JIqS@6?|rx1)qh1 zG0_Fz)d=tW%MJqjzK8z^Iyv#fhRvJLf11>wv~|^v3DGYVFKiL{y41|$PtCQBtbN9P zdtaMqP1oo$|NLv;&$46hmsjiC3#Mrt;GXZRZ#0F)Z^jueUN*zo^X5OZS4+SAxWLcs zoaO|tw4|SZKEFwelh2$rN$$kzUuQx~8A>ltXZ*6xuAtyU+vY@v>+HK0E%^2G;?F;2 zO0oMMoRvtPy)dP9+X4ga2@cx(Yd&oLr~Z*~j!~O)m)lnsjmb=N&rgalmO#JG^l(T0x@74N?j?7Xs zvO+F8&$`#782&h`{b7|j*P~DG<)2Sx`pkVyICH};@wnUE>ko9SF*j|vBoLA=!NjgC z{qe(hme19C$~=wpM`Cp4vc$}orhnq{fhG;@{ny}gBy!l%=` zF^|=c@89{pU&S?lg){3^?j;+zd=!F%zSr!m=HQ9?aO>HW{6sa!-y#0p4_-WcWmXec zwa!d-jS)>x~9&%7B)qF-GzpC3ifK+um1(^zUt%5YW^}S z+iSi0ho^nJ@5RkEKK1&_&YhOgzUqCS;=eE4cKtJd>YZ})J0|I-n~!$)DeZr{y~6m* zT9;(5%ZpY8Im~~!nQ3YHzdj|F)|jSq`li#oKfF}vxy7`oT=3Q}Cb6?pAr7b1FQm0g z9yK~zA#h5i?@Mh~#`SOx7g?#JE^lK)8DCiXoG)BhvWQVx{N3c6+ZiUEo&KustgG-U z?<-n+Hz=%;EZyD{rnh}5mr9;!D*t-^hyPDUF`j>V_lI5mYOeyPrI{x?crA0fyryi* zsr|81D#E8S?|s3p@9ewWAB15REy$fs>_rPGPofqr(1A!YhaF8o+UZ}kAU7W2{aX_g zNZGNZ(>e|Mte61A1zgKim4f=}OfOEqpm)%1%!!fy~s&PAA$*-^`yc7qNu3 zDzPnACDc#o&4tTUeRe&V}_p}e(m|bv)=Mg z!)uq^xk*l)bM)uU|M$ZAefNs6t7|zAo4m-nS+SGB{`xj!o;|C@_Ede{b&#z+%QJl) z&yp!iOa*w3?6Q;;jkNnP%X0l^MvrAv<86K}|FtrQYlX~TTTPDNK?aH8d3W9vgd5d_ zthJUtf4Y2eWj%xKsbxZEDt7Z7T)y-*1J`A}{s+~;$DT+X(K1TrRuRbzVGvfhrMyrz zIE%BTuFoRJI(g>ieN}aS5+8h|BwxBQem%xF_R) z>r0iy1#1`{vneI-+O4S5kap+rZF8g;cJg6@#a`U!lmZ;_T_0HSu3%Y~SASwODB; zBhPWcAy4aPld5-ceT?|!eFb|b^&OIsp1JLQ)G}SyMbiznBkVntl>M@;1Nd9YGM89L z`+uK$#m?2&+gqdd?19!x$CVGvV!7J({Boqz?ax1#v+=E3Cw-@yFRxg+vvsX<-NzEa z*ULG79Nnk3F!e;5@{%bmFdFqICSB%PqlgR7&EKzvNW;es$S2 zZS5?k_J9qXPV!+f-C z+N&$|z6?)h6#er25O|~H1M}>@??*!uPPE+ex}sFK?a6~}vELa3UpW^X-1@ZX#Xm1` z7oq(j-!#+{b(HkuFWF9i_^n?0(_^)n+{=1BvRl<%Z(e~Cn>g<-&hPPjaw|u?5Lgs#8TJIf0k@7Pfg@00> zF~6U2)o$f_znMo}zF*s;sVXj`V|rn&*wzM(O`A+)?wzrnzcT(%My=*yw_9DJW{zu5 zG|pf5b zyW@VN_`|%&iX_GWFSNTtVll<-a z-lYdmU3qZu+R1OH<5lLk?c;9kyP52lDIV}9+q+FJM3l26+{UaenT_pj=Oje~$3|8Ku<`&hTm7J2_J z&w0^`N7Q?7Vt1XE4iaU93 zE3~|}G=k0y5z_~bIGHExD6sc@_?gCLT|?LK_p(PAohNh@ah$s2#HVQX;DL@xU&H?8 zx8&TDm#5#cjhhm!v^}eG{jaO9C8yk+?ax%4@?gg4)9)>d7^l6wW56n9sNbHxcmChc zpE}Ncyk*H5^J&i6I{TN!w|CF*Tb=y1U{15?IxF*e@(!Wrmov^?%O@kVhx_P-1*@2S zr*^#he*W;qUi~yFzQtSXw3Z4uu{>5}f6{%e?>PVEY2Q?s%=g@ji&OZUGjoAGi^j_| z``EACeO%2yS(q;`ZT!g?Xq}K1;jGZWyzr@%N@b3snvkcDL(m$9l{ywncPZ{X(YlaL zC*Z91NeT9c8j|i4?x^wp``zB|Aog%t!mY1wsvB-cOy-)Aw{n@C?ZTjGH)6tlCaDPg z2xC~B!1^^?x1Z_%k4MsHn_l+*V*RG(t8=>a$Ly^?jPLxLJF|2xk4MbRch9$1t!xSB zy&iRh>&c!27yBi%zAs!E+E5mHX~&YAAHNtlq%AsNv3KwLWC<=7?N}@Q-UUz(W`>L z3+tV6JXGgpYGYl>zOu~2GGPhR?rm|qKliy^k`umqYST;cMVTQ}*$!`i@M@B~>BCPG zW>o(=llJAP+ML3Qt4>Sfb;^u;_P$e)csj}EL_&=*&p~}h>(51UOAEIdSnC+u8*h;+ zE(uX&6}r`sXtaONxw`c9=Q{FfI`*d|I;Woff8l=1)Z(9|Y7Shnf6Y(&ZPxc+*yXxr zkyy@!AF&P|%%_gtZf4_B`B~fkQe=YxYwo%Qw^cjjWFL7muKj*DEpsE|dh;3~m5nC# zt28qw)jT?WG4-+X+Q;ll7fm?2au15}*6d6UTK?i;?vm#Thl}|B2T7JcOuu5BeK&&j zq0p^kCR>V^#0eJf?cUDY zA6a7ha_hWFrH8sdiQVIzJ!M03{N%Vr(ckwho~~+{_-fIFNhP^@FUt}y{AYH*6m<=w zSTiNq!v&WID8-s7Nj+SQVhyYvR>07$hieLIO~Y)37HbxUW{_4WQN^0C|7{0>y`Qyf zdidqa%DzorHFbf5Yv|Ugv!Y)rW;wmqVv*{(GXMTY!v|5>$Fn_7sdha%dG7Pc7>`nRT=GJ-4{o5v(xP$K~svw{O(W7HnE^ zc-C=GR+SZfr{6OLn17aZc>k)Qx%v7+W1fu0(i3Vr@}FiuD%QH25+>4qT14ITflKZI zuiMS1nl|sNtK;`HnP(l~cm4c*7NG?!Q)VmNzg+aGJu$95PNq@&qQlIT7d#wl%E>`< zCO2!o)SNgeVb9&f&P7iqr9?Fcw8hVL(2lqLIW%zii!m(Q|#50&HH(6y&sZM%2CFNSr_pCh?+q16U z_+@xi_1LM699_px3oMn<>pp5Vr9nkwtvTlrySr;X2Cr!U@t5z>)v!4$b^eFAT5q0Q ztb0IH{`^lrU&)0tRFY>-i(TTiWc#%A(|&K(PtTqiutDO&^v}X4W;rghu#2nFcmHhk zWt+{CfMe!audcO-op(4DxNlbbEtSR(I~H2-XOus`Cf8}8C}G4Y^gUwU%g1e=tiGit zt~obZTAAbZt}^|2{lM+ga_OfBx7>c#E&W08(E4qgFEsv-DP`MuDXzr!WA2&j-R}&( z+3P-!xnKVJ=F_J+vQp=zN^Y|yhuv*#vx%;azh|_dGGnJY^RXL(E`Gu8lUKifyk(Dx z!9wwcVk>UH?W|0ZjFvVRPrjFMytvTW{;c;C#~WQz+y5xm*`1x<-M{&?Yec})kW9|& zOqH@%%`A@AT3Q=@3|hS8)^68a z?c9%V=Sy6)lKyu-F7@f1bSCnGNT)~~-=*E3La)C+$G22vNBh%+gm>4Ld}UhlIePlJ z4QkeXb|tGeCf=IyZj)m4)s#DYYwg!byXyX)S$!y;$@+l!=J$5NqQ>nu`d(gZ9+IcS+4DNz@O?NG(a! z_eso6N=ej@$kY$W)DO-~&rQ@1Ehx^+$b2IZx67{na3knkTb0Ajamg?t~>Q`jy7i8)eW#sD@gDopb zEY&ZCn4w>gk*S}Yk*Qx$oT;A=wiIf*KG;k{{enzGkXA#8UPF)uL;b{}qWtol)U=Y4 z{DO?coHT?$Qho_SpeQpv162uF1Vv3oettH{B#03p9$1ZjNl|8EUV2U{Di5r(Dzzv- zKPRQQq%tQ}KR+)O&MqlOh?is(r6Od~@=J^0%F;5+5HiJ?6>y2-)Uwn(I4>3CdN?mH z6Um~2)S}G%6#e9UP}Jt678mOm=Oh+q=%*K@CYGcY=@*wI7U>rx7L{Zs=A>k%rRh8B zJLx;?yXd>>yXm{@d+2-Wd+B@Y`{?`X`|11Z2j~at2k8gvhvRr)FUB_P*l!Wdcl z<*AveMa3mWiN(eGWvR&}`9=CAnW>=UpVc3 zH$)g^Zagr_y(BYL!O+qi<`CrN(?+0v9;{q}v?L4_EQ~B+TeXZ73{8!UU_4_5Q)4(s z!N|}EI-5v%;OlKrWJqwNm}{e0bJ@uSPAfk|NTg2inc#3pN5F+gmh-cU;d|D3D*8V> zRxFW_VG!M@JKZURCFPP6i}xwb3kyz6(dgm{@^W!t;nodwaS&MeqTy-L)~`4JUS0kE z@6Po3wde1a&u=zO+_Waf@nBwuoj#$eYzK{Ie*y z{?z852L7Meoe%Vjaw>`>a5!+d?pwy@H2;X9f`Hh^{pYGUZ`#aw+~x97;XqeLv+|9a zLk}&iblM!$be^~{$C&B!MIBLO`4iQ7YQL-O4}tP$Wo_+G<=4jg7~M2b`ZD>56T?I9 zYD2ZU&QP_58zeYXA8@cN>RNGYzW>8`+h>ghEDAj?j4DQ~35zwNn*wux-hso zctR%uPoG*caDmJh-v^-N}7*D|BuyUh=nTS>>Hyb1q$} zHov^?*^S3>UvIuHTe!*0{=|#9ezVTW?WmdhW$SlWn-i+`rhDGaTH%rK@ba!w5$&&M zyZts#>n)0Fb=BD$tC0VrZT@__H70UhQzQHA%;vu7-@mdl^SJk-+>H-kFP2K}mpj+1 ze*8^#?W!yP*fV~`baCphxH*xPbj{a<&tRVmi*rq#T~&n*wD2BbQB$lm8%X>Sv<^Yel{pH%CU zhLa__dpke$%l}^X%$Vo3n*QD0U?hhdz%Rnwr3fdR_uRsy}sgK$I3}9m7c#3oY%W^h-2fP zn57ny&lJNJvzaUMF(1vZ&t7%yH3BAvj56O-dne$Z1s`Y^^Z2V?O4?1r++hI zsp<>4JG-tO@yy@*_f_b+MCUq(FNLYK%YPj4_|oeV`{_(O?^6@6y60>Del}aV-|5?~ zDVr1{KUbdGHRJIPLHll&-R7^%_i8JtzAY0C7b(A%bB^t=(Au)J<5Q+rPM3Y;eQd?) z&3Xaa_l2%<3+Man2s16_z94)+)%bnwWU*&OZ`MugGJLp7_)P!Ni54a|c5Yk8=s0oV zd^?pRle7MB>&}rE`&zv`c;)+>#hmtUq-Cp9HY?VOw=J{1VC!Mp^YusEESvei_T3I% zvi5OcseVW&PyC6Odq0aT<6CyeVzshSDbKDQCs&^PaA|G&Wj*V)9#%2?S(x;1e0njd zQBo%&_RRVV$D4jRZ{NOY@tG-XTy1fSueUHRTG4mb!bLo(e$MV7CEf$-{H42Nmd@ZP z_YuD=a7}IfYa8yZOZQ4$ejL=i(DRGKzvkR+*SY$e&-r)FP<-E=CiB}m&E@yks5trD zw<|ZM6-a(wxMt0Xt#|gSo;#~EJ*>CQ?$;g0n#1?MJy&9J_+bZ51nfcF{c)St)Ork9ofx0y2kAdAntZ!Z()YVGXx zE;T-WuBSz2>g>Nq-)OFxl3lj2JUgjk<)IJv<{e(RI%<;HiM9MGXMVolY5(@d<&vyv zEZ6h@zNRBhKQra~ z>FA~XGJVa=ZYQn1tb}s!d2Urp{rAQ1>!;OWU-GBCpD&c7H$S^xF5&b&nR?#&Z*AXy zJ#T%cdhO#`$HSJ}&d&dM)21q|&-;ST^{CvF6K|UPRPwU3oj5(q?$g{!L0f#8!%r{i z^OSLX5}EerxWYxF{KLsB#bnz{^&BTPE9?K-y2k3z=M5hNBONdH8tmQo^7`rPJ>UMW zv;O?3ChMG-)3m#5w{gz1%l583aq6P{rx#+Ir!T)gXUUbISHUx$Vp1U?=L7_o5z1g$F_6# zzP_K*R}b9Cp73->?TzQ_qnY^E8B9Hyb*ZqYHu-w+u{&i6I@ODWf33ZAm|Lc+#Q!J% zqvTzejZBZ&8@;cNKQ%eO>y_OZkMCYBZhxumN7ce?nqrN3UV>GMkFm(92}ZR*>} zK695yXoS67bK!N8UCOp}v+vF8Y`5oieVu=0p{R7vJs-0lY*F$Z8P(r&c%4;z7iDhP za@XV2n_B^@VqSWo_vh`4*WMtwT06ebqwsKl@cq^AJ$~?uKl{)6Po1lvLO@!S>qm|W z+h_fKZgCzMT`}-hFH8$YI7S9s`r(-=B^kvErl4W+ATE8U#Nt$tsS5g0E&*P?uG-GNzMh5#T>2nE zmsCizG`~o}2%;XbISniTbDd*xGH8>XnWYJrzH?%MM=Ge*tzc$h%%u-910<(w2$BSu z>X(?Ciea5+Nn%cBvLmRoprC7L!lfTvlA0T)U~a^v9|1Ma#MltxEGO`8KV4%Z1zjUk z0|i3^6AJ}%Q-fG8&_?_8Vg-;RG7^h|Q%e*y^r1Z=Lw!&i8Q!+9(1aM}mYI{P0B$HE z59osf2ec_M+Qa}f90eNir#?0}2Zbqwq`v9+O*Az(Qi$b(ZiO^OZYYD&lma|SQMoG& z>T#A9KzfNO`Q>@~g{Ao=sl}O~XxC4zNX|*jg$kz@mt^MWfjOA{oAjc@vQ+)VHlX6laogs)jAWln3%F)j&%}q)zD$Y#L(@)9I$pLi=Q;R_9T|Y6m zAhoDCF)sz87}CovNGwXt19x%3EQnxYaY<@XW^uNDK~8Bgw9A=MS&)&Mrw{FhLL36> z6@z-i`X%N0`rzKLKB(8L59;me7iU)JgL}97;QXZz>dopW=YxhEic@nlAuMn*Pc1A> z%z-EN!cs_R>L-?v)rUCnp^5-AxLI5>OA zpu!DShQoTuhNgyQuuid&g1My`yu*yzMYgaohfX$vDjfU=oxGir8Y2>O{oPB6T}#{F zy<>Zs_fm#Uf`zTk&C9{TYN?~k6p07vv*IZ0&xiI5!U1xxp0PJuSX41ZKE3&mONjB*&W1#R3BB3@ zmycZ*e8Y5}aZ@4ND`!W64a?=t1J2!)T=D%n5B~zW8_YbP*=`py|M<~RCNM$$g4i2| zLe>v|o_b!rD#s=Avpwhe({Jk)^9{~0=W(6*wcXcD;m#7-D_3vwXRvQ$|B&JM@almA z{r~1Uf6I$h_0!XJrKj(|^#AV4|E775nF_!CPG`At^z3P29_B2kw+9Ta|K~Gh`hR$i z+6}%(Pe0vXylS4=Ie`gtRyP|zdcO$mqDe`PcW3veF%^mp9J8y?^sR(ZA-O|E5(`CkVtZkksF^zvhF(kMHsS zb^fiMu}GUEi@mUv;S)C}b8doxv^~S09|t@+el+oO6mDhy&2(^I!C{*_>jM0Lh$!q) zZ*-{E;Q4U9kBft$^1qZo^Ah~pZ;F{EB@dg2RZ5f{XrEr|8)=fHZIW9 zGutovaQ|uN1!enHcPR6xOYPq*Jsm5bi-XMW#N zmVdH;=jS%Y%g?*NTD)2R%s2Cc;;g^SKYl#4_vYWm0_F$y0&&;>@wbSV{9t}~Pxilq zq5}UD{+8Jl|JV=3TKsP;klue@Q2x(}&pZA#7D!*P7sxyOmcQkC>)*x?yX5K>_I#gL zuW+aBx;)4Bhkw}*<^K5NR#y?bA7tqN{6F`%e|s6c;yt&Xqk{PU27v&V2L64g_cZ>O zOnbrAC@&JqxL?d1|S=u5Et_$JCViKE%=HmzQG>Br1z%kH;H{|&t%7w7%=%+GxSi@sg?Gg)7J`CxpFFZDexkd!d@J;2zEUMQsXkC~o1JNu!Wt2a_cweGRjADH zP`~zP*ZXhlwrBtC*_zOw8Qbx4TH6-mj?xf~?~}g0{OqtZR{hNfRe|ohD8Ztae8*lX zOwafyUbZXOV_AHhL9*v6qjJV~>heD9XUb%nE@_(H%U`GBdd1+tT9$uT`akVh$F$&= z*%_h4cj=ram$y%iIpX_awg}s{noDi*{olUIHs9xPwCjzm<~%AjZ^07T4RhO)g}%r< z%@cVou)O-((SJ9V&I$~fIJGY2dqh?G_6VKEqgy{qR~JmqpRWH(sXyvLuHcvK)Rx=x zHkdssI`kn|)#Ad&=eqKVlO}$sh|Kf}Ot%!ymN??H^{r{{&5LF#+#fza2+jS%VOuNL zxz^#?ge%v~75TTeveqZv)@zd78u`-6cyaH^UDi5N)en@`{W|(%_sz_hNw3r5-X_@_ zzLQ@&ceQ+mO*YrNBTG+An0LldtBq&Mqc71DsxOJzIwV`KnaQwNr|Xrh#LL64IxQ1j zzirs!v6s2jd;e9A?EGAz(;biZ%&vJKzFgeHv3Z$Y)kM=B4ktEETPFDM+L8vY)_>OK zef?~6-er`?o#@;nyymm-U!k^quPjTJZTl`RU)8ybyT$jm>*~1?;$gh=I#c$GKa9A2 zD^xf4+pm%v+qYQVf4D+P)AhKMM9?*tT!UYqd^zmPC3B{7KIk>w!LZrcHj2IJ%$cT* zA$u$?8Z4Q7yY7bKw@t;bj=Dv63vKGzF3+#|poB}W=Jl!d-^87S6do{eEV*Ic;qlKP ztmNoY)l-k9^cD!OSnXcZ*uC+ouJ-3+|GWOMYhLwo_o=RUL(Q(d3s-X)m^QVV zhE_I(edRO}%K1DcwZV&LcKz{RdK%WhuRQ&#-=kHWC)%k}?i$m(If-N4k>XQV84`uc z_g#M-bJ1p(v2y?MgI4=?W}Hx5#~#y=b9zR@xh*z}FHO+Uo;q!%#6+{ZcNx=sj~ezJ zt5VY6_G(xDUB+WeKiTYgapdjf8Ci*mKP99UAD-yA`o_qmP^c?dZs%|BWcH6YMgQJe zeK@}2@#9e5%Nt^f1G~jvF#F1_+P7%}uTt3}le!;5-(Gfd-rjttd7DO3*2mvFE~!ne zo>3ifxgCD%o@~r>HnjvexBw;K3U+ z%DZG(EbpBuzASusi=Jaob*=Zu&XAI>OsPwIZP4KSxL_Z9f8Nx)j|679 z*G%|m?<;v|`IM(+tBkG{vn}zyGh^qCyKS-s?~20QFFo(5W$ox+zs!{UR18xOoK!#B{k7}O zgxgQ-{GW3P&t5ZS_pF85QM(uaPQ1@zd%!-x`%&$bHyT9^-hU@V7IZ1AEa!*}Y0bQE zd-YMotEiNo&3;*LWqIE!e*6=`{e0^7mvUt<|GFl<58l|ZGwH#SGr6ys{uc3MopN;0 znjK#gGw=5Kgxbwcx?3v#=0qg6e)uP_G@Ws3f~i+(QS0p=tGcu5tnWMXi-*bUR!wHP zZf*4V_H^kIxw`J6sPsjZqFPcOui4(lZ1hQgR=6U3hI+)zW7{R??-ba_yGrBMjV-@I zPDj>oTo!Wud`RY)Vaf)-nW-PY8?K9px<7kSOXB39ORv)&cyO>;*qspU&$0Kt%z4-- zGi=*g*ITu1SFEp1ZqeE&UK{>BP0=CssxPnTv-6)!*%h~);7R#hvUgVNloPD??KD@0 z-qufIJ?R^37j50La?w+f9ZznxZ(g7`tzfsIY>7=$4oj;1vv+4Mavz!yzrm<@`@vAj zYyW;6Wz=Tdv%)UTCi`|xT=34I-E%_Ti5?H+l2-gOjd{ibU4fg~ z@(WY8w$J#vM&P~1!wDMKOqT57igsK!r{viWooP(V4(18>@EVy_9P@mvoF879{lP5r zu9wp7lBA2fu4$JrOG=qd%saV$s`>AT`=QP?|5fd8Z7wohkk+(+{rdJv*La?+@Js)g z_Gsmd2bb=yd9-ncm$}!w#jQEa%ayk}XIk7azS*rZ@BKyH%Rgr{J>C25-xBM>mCwFr zt8LVNyD{Y8iK1WUS2nFXd}W62k86MCyjiN@BO~!OceC}{`|*CZr~Ia>p7AVRCMfy( z4AX~NrEAKy%XeilURe|RSKH*_OB>GB`TIiOeLHdBj8nY2PTY^5j82{3ZvQyu=z79# z_6*$$`5TkxD$1)Cu36Kc`ByQjP-W8UcS=HU*R{kwooCpbsTtdRcGsCF=Ubiaw+6)U zE;r5ZYg?_8x~C)PJcrW<fd?&87C<%WvJ)%hwL&0L+&E!SAXv{QMb^KYApsiN8wjz66?=ku@U zg*Wpa@2INHiI}PxH%aftn^T+}{%?c3zDbGymhsFj+U?A|=SNSypybJ85vC7i7K-ms zu1d@epDAx&@#VpiQYi_+x!+|cT=hNMYPZi#WR79z+-piU8)weg{QhM3I;ZIRw@+>a zehyq8cNA>q_IqY70`n_q;;jcU!3OH__R*~4ZEr@|LcSCwt!=JSDEpgl%eV$H?+xCxd zeq7eNxP=W@#b37;SFSvKNNkEZ!{4A?8$Syl**a~z*01*Jg+}vs?O|La74Y13@ss9X zsUcGqKWk|Ue|DMAIO5vnRXb;DOZP4RGULqWydd%4wT5i=_WT=8^xTrtTXfY-d8U1I z`R=Ofz>F7V=ca00GmHNvW#)#Uv60<4!=G43oh`DLh4<#+cX`=?(`XWa## z@mF1NIs7`_Y+>m$Wv`<#O%i<>QSGKlOQ!vr@5FI=tFYdmV=q_DpIhN)S=6Fbnf1fC zqN?y+eeLv&WeF=DYNhRu|G072#4ojbn!6h%wg*-4T7S~F@zOeV_*-*kLPMy_j?TA> zXD->1XLoce)8;3J*Q#`~zcrf8FSsV<>Do5WOFc#U;ps_lR4uzd#@{?GkoUe9SyZU=d5?ww%)_{ z$lDpe7prPMZl17D=B6F@tc8qcj>~M}I+f+I{^_y}=^wWj7JXQsxjL(Dd5&^-NViH| zj_}1fNuqL-44)gG^={&Ew0Bd|c29WjZnB%N&zbvu)l&cY(#N0d5#Glr+57Cm#EN5OLX(ax<+l|u4ORNOu!Y$y zvv&H2x{2IOv$ZC~o)VuGv1HEK{cms9q<1d3HqHEyM{Ke6vLp+(Z)+o0?E6q?5+i#c z_13pnX9aj7&MPl}w~SLu{b!!?u2u`j8;|5-cDl@{c_Y1K_RRHqYG)_>Y}30UHr;Z| z<b2*{9o7W-D_XrW`JC}b^ZGVb^+@Dz6FXXNR&ZbP_UVN>?B}ja zPVDcStF>avUe6gR%Y|k6?w(cNw8Fcg@^s9xmXMHFWeZf#h@ZV)FzMc`)!)|1*x844 zYV7n=Y)g`=uRNS-p})aTG++kvyo)Cvx!wHYetBQ?b(IUX4`a`|a;!QzlgCI?caN>e zu6q@-+a*hV_tf7pTYh{I|GL*YM|qxV&Htq7rNA^z{x|D*dm>JJ=#2fa z_VQ1cM^pL(Z7ScyXVs?u-8Ao2>73briq%pX-GtRSv)+9FeyGIS)@5eaykn~sKPDd2 z(}<`%=QzXu;6|G(kHe?f9m(J@|MgjB<;U4q3_E^YT($V6iA(a*Z?m$bJ-!*834A!K zXG&3p`k4r+Xw!=_8TSks`ePVcn-w;GyqTW(*WX|U!$V({aE&aHtxD# z^jerHTBIoT;`!J17aO+9x_Z?XG5+I@vgLSpdC9@s&GzOFAHVbXHV1g#m)pO+_WC46 z&6AC}u@h&Ub*{WTncbjm-ahZEH@v@GHv1VOzqTe>Sa9*icRN&?BTh5ERQ-FRB+^~} zGIQ*Q>o=0Woc{B#P4^x5B15STVZYzKl^n~X(qar1!cKE+j)?no{X*7U4c13J`&<4? zetWg%iPQ``AZT zf3Bd+PwdRmXQpiXP_X{l_J0ZQ-C`VEIgT7`?@H#0Rx}ZK6S3r+-nX91K0TTyK3NW1 zZcTXPdH2w!nfK?JYQGkf|2u0xGoPvF*Gl!<`b~3Z?vYmi$uWP5pXNXRU#C4S-$-Bm zt)X;fXJmi1YRj$%J%O*|_bv~ilD;UYI;x?J_~WBwa^5T|;ceR`Wk^a+qd% zM;+HRmFcXS*b?#JsEd|OUg7h8l(*r} zJZ9nbblw7~^{V`H|1Gi8>5$76Q1ugg5nHh@;l02bomVbgc(3|-=6{Bw6|{ zs4o>}a+)oFozrnvTY?79Tb|b)UAohMXCLqXu-)PL^HRt1r}6LdELETUdLmWqKI!1o zX%b6(Dt2D8dHTI^amB$mT2WJ<)+zoCKXm=?`Jj_`T)xwmpA#YHIsl7CmCW=i-vJ zMb%MOD-T?hTI_b^__hO<8`}P!wfp;(p;>=>Qr>y)D_-vgX2cQ_oO9&H$@5!|HT_eRwB3ENC-YU0bKtt2YwFmducb-dyL2~Gyj7cT-tMfw z+sp&^Zalr}jjd*fC1--eGnKt+^4hUq{Fm;~comk<$5++*(P1Zd+^T%e?mhaA>9t(v zpRLhl|FU&Qkd6oY{&dq1Z51IVSC_c#I(>a{N+;{vMPl`?tIy1|{dp=gquBYbiEa6R z*^ier*WO{Ccz^eT*?})69Lz0q4WGE}VB~{G(;uHW`}tc%T;Xm-!AD1-XwGD{SGtqD%Jb<tBlwNyb(NSVul}vVL-+B69K%KL*+4hOSCo@fkn4 z`{$P?n$1>x@BYnfM#RAd%RHuB+U5WJv9-CO)aI51rm2CqO%`r{Zdu*$zy8*O?Jtf8 z7PZacS{fYve!9EPQ;Tq={l{vVZ_ad_(Jb*it$uAC*M3P0XT6=9qg5?3=gJC9xjQLa z{vL}azgSI`;fqk`^`9oh-H1^(J>GNwe8Th}ALa_2kNU~7mFKM4p2eNzXEfrv3myI+ zbULe{m7P(&kYV)<7pdk~U)lKzmfUIcefXwt_TKw43mwKez08SO-{snrB#PLx9hq6;j?AB z*)3A^A@C`;ve+t-@e$ZZx1>AU?Pf3=*jz{_W1AAf0S zE=~J8qma2+A>m}LMrNIe@q^T6=WFF{rgM$1wdk#^7W{i&MdaM#o_Wf5<@YMR-+J7$ z^wDF-(|NNPrfsp!-E>Jgb-Jogt4zkXIwQg4nP=AR_xd< z>qXr9#7^U7>n+S1+Ny(W zldP88Pb?XS)~eV#|xpF0>lt$weq9mfTSFMZRp?pH;c7DN@Z z@tl4iv{UR=_(aDwRpQ@gU2D|tO*mR4Q(tU1$*%5S!jWqWchy(#C=w6V36wgv=7?WZ z-6lU`)85wdaLZ_ri^>f%COxU!1pEA3tY#qlB38q02S< zmj3-#-R1Uz=lZN^Cl3Byv3uUf-=)iDueZ2TbYFxkWqW(%HHTBXg^zx=s@vn3YSklH zG3D;o#aY`{etM|oHMje~Tg&O^<4ZSu=eV=_%cNIdE=K)oEjd47+t#cr@wfZ$Y>0bQ z`{?+>`FwX0x+FS+KGaTgDxUS-WM(su`_ra*Z!$F8+>bHKcdgMaBL~zb~{;EkQwQlmwekJ?# zln%q;~A`m|N z_QCDSE0of$;-Y<0yF`t@+}m(o=;gj6&)-Ncu9@*@iuHoO3!S%4u2oxAmDWAstvpIPx|>=|I7rlW8$u&B6;)6Ta_FZ?+O=jInZI1Q*+PQ+izLMoVR~?B%Rqa7;l(!y!*o3UweIcrj-1e{QRP3s~P)G*3-{7u&1&(YdX{& zJ6ZMF*!@!9v2WYw^Sxa1jdArC=76iWZc8zK@Ot`}<(G_xndOG{aX(H!ewn-LNP=Cd zRUuQm-1ay6fvtgyzF(DS%~AJk+<8!CwvBg{w}1KBX`(Az*eaQ_7q|5m{LYDgyzf_- zrOl$Jcdt+EC~T5Cy8ox^_V)EHh11{t$hI)npXRfHMe5$4&7C=J+s}*NUv%qy%R8T6 zPG|bRcrb;gi#=vM*njKEZ?zn6xkJ2prIWbNF4=qYYx4Q7=%?a))tWkw)Ozc#UUB~R zg;gp#!UEcdk1LjPzdw_4EqGsKpN?~|#ndI^ea$m}`BSqW{87FYJq59NAv{2UicW7u@=8Og`&Pp_SL z*6U)Lo$$(*FwKV_icCCS+bsAmVHqlL%Sz$%qn+ViLBYF^R4`WGo7!0&DY)pgbZqP; zN1X?)hRVs z%+&FC+x$BUQag%wZ_I3*rn7`?*Zqxirn=O)NDcPpqt#-8d%0`&0D#JL|tp45b!7Wi?jS>2$>2SLZ`4XaBtJ zqtGSL6=~<_7JQgx>KA?C-;_Zo2xynfEU}x#Coib$ju~=$`s- z6ZYQw_u<;!`>%Mo)%8=8KQB8Rx@ET>Cv%j=FQxtNr%M<5Y4bfkcl6$|_=U}r-sJrG zb+t8f-JY5My`|VuX>ieSo_jiO7=x${$n0{TPZYtbo=Tr(<=1$zGA2^?9agd1ZJ`<6$k9*~! z--oc@_C~qjS8h-6HJa> z$z*bRs8=a|Wag=&exGYuZ8t3zl`6#6PrZA}@mH+KH8IKXc~VLb)Kx1Dn)ijeOu04v zW9jd*Z*4)EsgoJ6HA;T@oV4rbC5FPqjZPL*_uhLjHSX{Fol>lsyHCcrigW6mS{oX~ zaj#4+(*HTvF|C_D`#g(R?0ONtOf7n`Lj3hR6HfjN>$Nz?U-5Fzs_h!*-7lT@D{p^f z!WZZyah3htz7`=#zIn5g#lD(d+o#0+cKhcGQ+k%E3EBE@UU$3bub+zY+$yDeZGJY# z3)`NZEA_f?@YhZWLH*#)cIU)k-j(c=47H6`#HAjsl(;_Q?5v zZ?%-bL$fofuim@4?9VHy%D-zgv*h~zquCSrr}3&DUQ_N<&McF&En^WQx7h7_3tfbc z`>ateW~{GzK0RD5_OqIuihqPg{j3|ocb;B&WclQ|gB{=ZwGQUnkKDU6=YaUk+UM)u z6{mDL_T)`Iv_WC}KV^wkAI~n*nXk%guT)%-#^3IG@4@n1%i~q+y#$5Jif%I1n$Miq z6S-jli=%zN(}G;VSFv(^N4EMW`>za`P(NWO*VO*N1$icJ)>j{hWoYuBe^s}YEuZJq zhdA>?pBi(oa-Eg>72x0F@Wrv~v+#oLpHIyFk-C3Xt*^#Qc0--V&+9S{cP{r2-{oAl z_J{o)u6G(L+NwJ$%DPQ%>jmXZoHMTlS}dw-`}e|dunQe z^zZzYxY^q#t)3Pqv|XpZR5yE;_?~;c6Km&6Jb5)UYyFXBo2QtGyR$HvOgCZi<-7UW ze$~A9Q`SWkx~IfO)Fgb!Uz2utrT-0CmpvhG_mn?ddccF{-m!~no3F0zkvhUxp(MMi zVpZYB&WBTe-VN$?lXCuWv*)d0%cg%$?t!OHY1$fo-q2-tUCu6sD^q)U6<>q_u zEPobyNB84z(I*TttvvsV{CQ6mG_6wof6#xA;^QY3wrSgzcK_SdS$k&1-|y4rtK8e= z8y(-iZMnzoe?MwuVnxsWuK&gO=ReDTe-#GH=G=sN0pij(iVyr}=rW)30%I8_`1JmK z=p{dp)p4LzjQEyeg4WZaEWtM?;4GmG2VS>2uWtc{wEiWJs_$7jtVWL@wybRL-wg?ln0tnY4OcMoN zBV$tqb7MmV3j7R?&gQAq%?-@UERp2Jh4=fNa}>EJA~ux=#|JnpN^@J=og@jl#ctvSiPHF`x(h`%CQ}aq7 zyJtQ;xLs)y?S z*QWoFH}dR|yduNX*vl$ze&EQ(i$|D6&EyRpF;#42JRnd!!J6R--|87tS(!@PY?&HN zkFh5(mb(0XzO?8QW5hy%3-$-=4aEfxyn4g-_i&EEwj!3lQxEbbY;D+O@z46eS=I#6 zzs`3U!Zz9;VNMYJ@4Sa0tka$)*!$n?iiD(<_AHmZ{wwk^tbQZkBq{Pw;LL&_?Fnp4 z?OBX9{?D#RWSeTwV!Yy?;ta>X{Dn*rrvH35JWMtH>1@#aQoc#@%s<~8hZ%?d=(kup z)IYSJ`+K)$Lsbtyu_w+~3j4la;Mvz7;{V>WJNfXudUy29S-ym{_OlXe)c6?q z#V0R_$_&1Hd2XR-aqWT8n<>ga zxx$LM*YPfL3w-aWUwUnV>l{a(m|uH%zJ{x(v9q~xI9oE?MwHzYw4bI?_GY$(|Fo6s zufhG9!xtI7$ZC7!e6R~~J8j!l>QswtslJ)yfN5*C= zi#*-iu>08SG`G{w?`+V@b#l{saQCM)`+vc?la}66T=jgq?6%;PM_ZM@SvBjvy6(-( z{rkz{c%EwoC9BIfH|+~wqQk>myY^w=uCUo|$Ax}1>OQoPFx*NErP zYBpA-PuF{6_I|yZ%l6T>Iq>4m+gm@2d^f5wU^1#&D88m}qSiO@FOF*q&e`17T7T(! zZ$P?ifarq)!F zn$UbJUNZKBz-jp~na3AcwtQcbws&G-*l~9!+jCAPatr0Q$($FAnfx;0LQ0U1{7-#F_b@#Y7K6WVx+8)^{@i^jh(-PeP z?i)uA2m5N=`L}p#>onUVXEYudeGNNW>${p$->Bj3*PrTF*Qh7ASDTv6vwX>`^1Jv< z343y|MmGPPtWyahHhBrXf32?nK3%x@a*Sgt_s!dVQ*K5t3bdP?@2Mr)vc)X^2TRa~ z$&apPJM8Zaw6B#p@alDi=il7A#ZgG&+Yd%HLOXiH6+)a&sk?OK{0xI_SQY;68Kv>V=f%9UEGk}Ce$kW z>_IiJr@_=}n}qleKicL#JkG3sth1C+Y~i=Y&3jWF-mds^O0es}ddp*{^WQ0RH>Mr= z8GhE`s!7i)8!ySMWnUj%P*ZLBasPUe^KsXldpCr4EK0I=<&#~TEx&L1%r}qb&0E}~ zw5TDyeX6pDSG-fhYd`r9kF`xM-SfM|-=BZ?=31+$e*&NF>b_5PSoE<967T0+Y3 z!(I8_$9hLIj%gK}IREXH4O&n*dCjZ_k$2%Ghk28%J+q(Zp1a)K!=ioV{Vk^T!MAp( zxu(8od6E$mb6)@O_j9Eyjs-k=wt+jt_zC+mp|2nwH=Fykm9ef+zeM5!0ehd`P!?&|7+W zMY@}04%g4=>+E(HzTnaFXq75%R`ON0{1#+X>2=7{5F7>MdVfFV-a=4Ci^Bnv^E` zN-yR1wR6mtQ=jX0e~o>vddOkN$)ddJeox!Nt}sYtDL%ORA@IpDvF)30+&G=E>%!J% zJEv!o-F6{K4~M4l^W^OO7`aGFt2m|;hmU+uPx#na=KB^I~- ziM)2#JlmbEH2nO_gwl`~Tl=}x^v}=Z`m=eRLi*XN##%mj9{FY~O<)vh>b0H+=r;UFNEEwM!lMtx8SP8BJHsrjC=J&Wn_724(IJ0j*}raZXEb?xHa_6;H@CWP%tj#B^m z)k>w1Ysa@Fxu<8BJ?P!?|Hrax3H48dEp*dd-t3c7t)ChB{?@DCuUh}a+Ec-M;Q`D|_GhEh0R1N%q2>eT>p>J13vjda{1Yvc8S2%BN0mxzFaclkfD4{h~fv z5g9Aoym`Lv(oFly_C3y_>eE_}jSm?XCbPTeFDg%Z*tw@d^uuyy=0mIR`__IbIPhp| z=<*NlOYg7cmXG&-)X~^#^l%%Gt5MdHbLWrm>tHKhGFfA(fs~~E&L=K&xR)8Pb1$#D z@m7o1bl%=$SwG!UXPR;U@XKIr2-(}peEOoMg4Bt%6Xsr4ZRcLoR-bY%N|Wp76YsRE z5j@AZLbxZdy7n|-PU!O;+*f$2{Z@UOf3)*QTFo)l@`QJ7tQVKwQI-0BETdcJj0V@! ziTAi3Y5%`>d5%%8`t1u*D;(dM_C2wb+G+RmQu-I=^t9l`-5reVtDh;adgm6i`x%?> z_Wr!RJHLFBwDE1#zNc`@efw7B-B*6MWuIlU6zN{2XnR&=@^J$(|4G+&RsL4q_pXlH ze`&^Qt!lS}>CgRF9;m%wDv?sUM(gvdQ(tEPyRl_$?Xnx^-mBcrJpQCg{b_s1x5f{C zxp{Y{%oCS;b0;k5{b}JdXLmJCJ7Rq?YTK$cGn5TyPn!|GL7mZmwo)9oAGhE&<;DJ@ zPo6(rG|j|_LwaGZS5eYxPL;$U!w+d6?(;C63a!@-Vw$HMe>(Hjwa%pPO_v3Oy$m-z zG_bm0dQ;EGd{yZ5Q)+jr`SzV%nrD*!#z)#rDD!}v zVzPehso!sJx3lR7v))wS-KS|Q!Sm5OZp-I_IZuzwTehO>s#Bn3bA{;ZZMVWV{mBSV z`MPl9)|uWVyWY6m`akb|V65~0$L7C&I3+$=sIVX@QvJ!NO=~0C9;v@#7V1~s3%5V0xh>ABZ$t0F_xAd0x_k1kXqX<4yZW_hcj+U3v6gkuZMSZW ze)Cf_WY(h}6Hluw-e}^kz!^OqFOPTxh*wjooeD8R3arC_nx*GiWLeuK~Gq%rl zw%v2nvRK<_)}*zkKg@|d=63e_-+eswyy17%Um7g){Ps}Hy?cMZ$~^0l9e&PlIiy*yF6o4-pS|l`M)3D^*~!Hw(zd- zo$WHocUON@5lt}7dbhRvm&A$G)7@S6b{aM_lyg2`T3b`S^?muvj<~%}EI<2h#n~SV znRI8jQcv)DwgT?6S>~3Xraw2%s?vOO$7r)1-!It~&IxlKUi$sqrAN>%Vb1TW%Cnlk zx_95Zs9UPv;`50A#kR&LXN6-VX7x|6OE=%U+(Rcyw`wO}r{OlKAO0b}nxWkbwO6#= z2>(%%dB;jP^UL+ib#G3{wVNrvjB0w@y<+mRry2s{#-egI3#;9|0z?>2^51gZed+-bIYr`+8a zzL_*-W-n9p!{%-q{h4c2;}m$_MpQq!tmfAKcaEv+*9@B&&3#iZ{#qw_c9!xV@9h>7 zn^rzQmhj}{90wT*U%#r$IwjxE{$~EZ+?| z^4;FEKb>TIwd=YtTa+j7{ZrNV&An#cxS^-Rx^92R_mzJRDqPwuqLdc!;+ZHKdwGiS9;^wn*9pP1FfG3%{;p#ujcw8!!;^%_rx%&`+NNfU{te(q%y4^DfaAsnSsZlIHS^6zi#kFuny0GQc ziCPNBr|pitpdxI|ICTa8wM7-(|CR(BY+rl#yMEllEZ3x2n@_xwQ`s{+Y~57f@AiqW z<^6V^_%PpKW`ydoO%l~<`V&P;W%Z{n_losBt|xKi$nE;*jT$QySDjq*@oErn$fHnA zk@Et!nZ`|v{B2(CdjG6XbA9wFb$P8~ky|gVl43%y?z?~S@1M$c%U^62R}Ni#eLwv2 zONq4?=jBW8>h{|H|If)&$92D+y?VVhEIsSqq}sN5)jsn--zi?*-1hCRhvi*$p9w51 z9j*(X+shrT>b5A#|JL#Eq2ZQmn^G$K@;$^~ZkM0>)wTR&)aSCQQY>*FY0f0yEQ(bX^5BZ5qx|2QkoZeCle*L6hjN0XWB?U$1u#g~Tv zaXfsmz;kuu+#S#Jz30nc%1yuLxnusVH@ie<&U2Wh?=*F>#!Qph?56LezQ#u%d)a!~ zwtcl`(xsA{!40h@=dLfAd0JjO)?O{crB>&JyP0!__?7N6kJCgg+x4q%cr84$gilf8 ztIF&jDj%oy?uxW9sJ_hk{jT`&<p?e1;2TXo#&yFz1`V{@!$`tj=> zTW7XB3O~J+lV!R3+_!IDrYx5d^M8`_Epy|vNxN6A(l%jJ4whRXKX*TW>YQIiu|YhF zdYpUP%0KBpbP=00Ew$_O!8s?zgZD@u(QqzlS|)aSFZZ^h9bdVFeuvKUHk!{?e|LX+ z(B=O3(N7esf_qnIxTGlA6)t&p`PH1gS2u*sK4II~@#E1#<;`D=-bO6vi0+SP-rYa% zAW!S{`rK_u9@rLgk$skUM2BF^(Z@SnpX3P?cqb`YPYJq@^fdK zC#QZCJazL=Xt2S3VO{lal|LI!uCV0L+`GQ&iLjzgtMe~`#cXD0GZHMes$VK)PjG06 zjqqlh|G1#n_WS4R_{Y9erB2^oFtu=EqS?bkZQuI$pIgn;YA0M!UAbp^Z@-``^EZK=LZ~Zt&?`mVceNn zJki!DXo<0VbdGKGw1R9!9!`lmFvz_jhmxyL^Ps*GGF2(3{3 zr(z{GajKfC?!k@893=+-ZH1M(e~YP_^3BUE+CDq*iq^8D7izmp9$u0QtT&!?Hcujs zQJ07FL!w@R;lq+|%RhfB+-tadqvMIY>%N-pD$dweu$b>;+}m@E_n+;MRy@ALJ7?Bc z^GlC(E#Gf7&1BL&c&8&}=C5gouUPMk?`5zKIxi|xIqzJ-sRP;T&ECa+nbtXJ@yYz; zDfbp=cZ#3fcsM_H&6=vFuV3r`H(U?gek3>N?Un}*q7T(fJ@<{{`1{i5U2`inPN|k` z@|oL`v2y2^SeMksl5@?IrZ_d~S2|{A&vjSq5^6p5VRtv*b^p}K594q42ku)WTkPrJ ze@%L_|5GDZv(Kd$C+ggnnB1>v^}G6c^qa@ba>w}MW~qcHa4%l@__1!R(Zla&REpL- z(u(s<43SAokE|D(V4+pg9b3BS^%A*BJaZ<_|F5NYzm{YD(!(=SR@=^CycoK8d*xHX zSEoJ)ZJ)QmZU3L<$=ZcX{}Oh5*qJRIxWJHaqg1?cl+S@*Dx2du@7+>Yo4aBiiyQOK z$Jc}GJ11wSzu8%HQLTRY0`>~giP~(&GnA)IvEa>r^!hKKp~l1%gQtR#{uPVVzxn>I zn7ZcXl8CxR54qa@>seX1h9~nMo%#1$uY~Rf5$5$;cYgkxs^hjMu)1nS%o^q`@4_OS zEaz{&#jEcqTFY;d?Vr@$d^WRGmM15`Glln$&#Qd-opPtQJllIi*!cS$?;~!#T2rb$ ziY7~4xYoYRZJ*dQ?Wb3{UOZUwJF)%!#NX4tFHl+U8ny96_p9vt-{<|Fxgq{^y2d({ zJk{>ie;-W}bovwOvZu|FL-UQQN&b?fD=tcSi`E{s4crx`-{#_SwleCm=gMPy{^Yt$ zE{mKeW)QyCXRCHROI4;NpGTID_l+fr9@+m~=3MnUy5-88v~KUuVIKu{bng2m9QvHC z=H0Qf#i#WGZZDdy6w`A4z52{09eeZFh>AQ9xVbc7Y0|<=#-6X9o>0Ab=Gf-VI;LDo zTWWkgJJ!mtmy8qqaQF4k-IH}Tz2~>TzMP?bsX5D+7lO*}b2?*Q>_5Ish*#c4FfeVB zZOk`qVY^Mc3V%HPxz^Tc%Dbym1Ma`xk-_$Dvud?(ovujEUFUhFpM~f2FXex35ngu`KAX5V z;d;Rzp~a85PgdmK+!)vTN_Iv;=5gC?Pgs2!r}Mnizm&6BXJeLdl)K(dh1N;8V(0s) zesPgbocOP>yGwM(zZ=|={&yaAT{YxgYH+#pPuXer8}t7#=wx(V+#4b38uMh;73J~= zvg=o@$gKz$(Nw_Y`(b{CU@~vvujml~FIMJZ+EP*|cOQqwk`5 z+wXb3WqX)#!pC5$+x;rb*+(uv7ZW)BFLQ3rWjz*2PiF4ui{Zg48V}5Z6Fx3>oaqxX zBfThq+de2!y6Eo5^w$>tfnM|46ejN2#l789SAWUZ_$lseZQioi^&hGjY4sSYn#cZ3 znWhi}n z)@!ff!SKJLFC*vG-rCii_d0hGZ;Ha)PtIPCmoR_acYOEf^`F?P^)KK4v{w6=IrHm$ z^XIAlvX`VHxQ*SIrcT%@y!Tv5x`uC`@u#(~AMRvdQ}9+57+A7r4k z)#>Bc=#O>g&$fDAe35j-ZQ7qbHCi3ki{ek4r9Q89xw&Y;x6atDeH&zcd}-bL?3I9W z+oMYlPne&%ud^skc$F1LzVDJBN387=BkY5>oZT<>=DB>g(2OsiRo+Xpp75N0aO&Hm zAA&b7-`Br;np0ZvKc>%htKHH?%KCOZW{{pL^E^1ryQw|lhUTWpXHPHTkKA`p+`LM> zIAh}Hb;m2@`-Jo6?3=}v@Y4RosxN%gHrdM8y6M;d{<$MtK>2fKYGrec<)S&V}0pozJ?=zHasD^}fallO_a(sA+BTczY(} zrO=j)=D>e}x6jx*ilwdk$6Y$NT~BtJ+*_T$yQ-=L{?EMIWPIxC!~PBP7JO+@u&I2w z&?Mn=#dpUR2l;Kw9C<$OwOi%6^<2p6XZ_PBF4Y!I5;8BFuxI)&E|IsV_)k~GMSh93 zS-GX0?akp`99BVdY#JxXzl`@^@KopS;T?Z6|1Eu6sCva_ivGvFwc(%i_6n7snBH-G zubN!npG!v0OHL^0{yBbQ+v+{@Ti%D>eN-Ho{ifhR*yAegMV}@r1#Y%~wCY*+qiF$u z(thvX^gls8>JzU-ea-iOuXGab^8WWbS{LrB>zsYpLeuHe&l``D;ttJQBfH?be?UyS zk*`77>)_1qTb`KpNL))(b6+R^yZP8X9+1d6>)SWl z>Z+&Io%{0ca|+iF6~|kuV3t$ZnOYiL!58t{H16$Uo*nBpzcpL^xV5-==h@4wKX$8rzM67yYVq|GC-*QOsh_*;_57m- z>-wKh+@ZGW&DGc3^3VTvlY)WV4XtgeyA+ekEi^5ARyD7x-x}aocK-f^ zJrT*h#}?X^G^xB7du;P%LEO#w*%J~c%&|~7F=dzhwWsSfG6Ekil!=&d^1Yz*x%Bd? zLl*^pi2D8QDw_A{*~gZv2esc%%s4zf^~%hqpPWwh0c;QZEetzv%}LnvLch2~HgJRP zMybF|hD-b+RuAe;b~Q>Y6^MDKXaDQt55cOW%MlOa(r@fqRID>u zczylUS4rJ=ueoz48?#slUeM^DIcv$*6PrHRluo}hX-C;qj|HU_+gfK-U*4xZ|9n@D z(VI(eu6$CO+&}%rv%U|$lGkn@XkM~t$!YWK0};RWxgI!f_W5l3`Mr9No}GVxS@jy* z?NuBvTpnw4ura@h_E9}{J7~F1^!H_KKkYuJd+TBABhB zn8eFT)e9vqaLZ;D)rfw6z3|_?`nhS>|2a%OnO|{qufF7@m{}R8*E#>p-udll**5Ke zGLLVpuDj@^{bgV4qq8jLY;6}J!gnp6dw9a(CqE|sQgO52y2#jR&W4}Y+ZoH`@1En- z%Q5gjlE?F5dCQTAwN;9%zj3Uss#Tx4D{P0>>W(i)$|r8UIczfVl+^3#Wo>)5KVy>i z(|Ms5!+k5_kkyifZdYuC1)MUP{mswGygc=idF#BmyVt+foIPyyGw|T;%-~OkS+Sd2 zVq8xtpI;Sk{vMTR{TotA;H>=cW>Ocq^K9 z$g75REn&-s%`I`C-D(CqyVcOh828z&`FW}OC8!5sI_e|e!QhE<`$DjO2$l;Juw9-| zp+CO$`hbkg-+}zB((qicGrJ#kGsYR(N`njb!C7A^|mHLU$6Hjv!OEUCRGRrc-hjk|A=I5n= zg+K?PLQDXYAg(@Wxo1u)5)&*16^5G(Q3W*;%E>Q*s!Gl;s4Obc&o4;LODfIDNiETb zQmKWdnPrK^mAM5a`6Zdj`Vf8&=#CftqEyfl)8f*k;?xp22XwS+YKcDRJXOg0SLnSU z5Kci+YI15yYB7YDmYFIXXa*tPKiw{C@9LWfG8*^$_JSTu>r;bi9l`0Elq}B zJOXCJ%-4q+4LLIxvg);{D8C%CJ{Ek13(A4IU=h&WED#NO`9&oesfooU5N>gPDU=I! zB*b-KO|S*HFbkSOOkTH>wjUY(5xy?MX?IZ1$j5W2y~opVvc@6QD$zcer8@; zW?p7VrG9EoYA$F^Z+>}RY7zXp7&s#{uS`ELH9Zle8M5F%H?g3&BwxQYFS87E^lpxR zYDH#oNopSGk{11({PfJ^#GJhR68+TNf|5#5bOxmrB_@}Y7U_G!7&(b0C7H>oCHV!Q z#9NS>my(%W3XZUx)PfAMPRK3I%goQy&&(@HEhZJ;I;(DgM@loPJVt7II_Vkh+uMRW=`eJC3u0ovdIF$TQb5MC1etl#pY)WnjEf};GC(&Q5TqQn$X zFzYAh!$k5DlX4Ql{!cGT%z^m5xDYG=3y|VMeMkl?E`%hy;!;TZhx4HUmy(#Co?4_2 zp+N2{NGwWBFG?)P&`-`OP0~-v1Q#Ou8L5dyC7}CjQc@xA289>eT5UspNC^VjGeXNk z3gb2$NWlb70HER!!X3GVR&haM3htYFK(!I9-hrJ%Y-wx(TT>3YsRwkHJVXk0g}ITD zkpXytIT3dQz75K@3HdE`PcZAs$z^vJyb+tFdn%?kx}+%ci5TEe_r?uPH>7?#$-RZMpr??cI-m1~LE`6cj?;G;xf0opxuhoBDJMVk#zw=f1 z?EU7xTa7M>N5T6x#}+!&WOI@;cQ@dwEf-BSzp$= z1v@=RIMCdoF65b^{HyNor*Sl76xo(7o_qX;(9`KbGLyyk**?FgDtYMB&9*-e`F5^~UHb5OLfQ=OuX`r% z>UXf2bhX-cA=_*Hz-@^+mWx|NRvxjQbHjY<+LEVLcUtendMah9{+q~c_QWIR(<%Si zTin)UGu;ikytw+hRJc-Y=5Z7Aa-U2$lQkCSWsL4m4*s}pcWhkX@t^6kyrIo~^(RVo zBb#|&R@K%2U45xzN>%W&?rF!%u9fJ_7hA5Hm^=0RJf`Kp4d<<47CNc6+;Q_OcIUm0 zr_S(m^{H#wHXXl`WZL>-kyuZ=JCCKC>?m=Q3Enk>9xZV`M&`rQY$7RWq-b-Cfbgz8gPPCZ4^UlIZv%VbtJ$7?r zUd=Y}I>6WS+I0K<%|hQhE$*)kIBD_ZNn}%JIZNjJl*g;tclBRqo3X+|HuC#KuJCoM z15H$JsH}XR@@>Cd)Z3-kGc%UI&9R=GV7=oDi*t?5c1OFl*45$;m-fi~eI-!J{&&WS z2Jdu^A3t@T-7Navl<>JH-GAMjSfd4TW#4((72b3vubo?VqYCt>ryq+_11n5E)_FPn~}3QePXnJ$#(bCed+ortJeyg1nG$Fc@;oDVNZe3?a%cV?}sT+1B{$NVp z=5h4Ql$kd^x`f}Xf;->uRfu)u2A3mQ}oxvf69%r<&Hdi@pZ1@%BQY# zlUu|+bhvGc75>(g9+u^7c`Y`-^qSe)Q@t{a=AT}%OV>ABPbk;KcGj?inE8j?dG+1>>^-BM~+`6@KZ$wUg zcGC!+J@5ObHA=Vp=Iz}1?MCop+l`i)bN^jZJ>A1BdUE2!+l7<%COTWEXVwVaIh3&? zCu7E)6YDD8-@6p^>2XWvqpg!<wfLldnuOi zBX3go+VFkRIZ@X;PQ7eOQT3ha#p?OvyV|ix>EUvl$oCtlOivY%{eJaOsM8=1cYBAmY)Z|}Z#u;`@O z#r^+wh=i4!f8mI}^`va0z;g4bZ!*(0RvArRR<+ya(2?r-zap<3o2=%2PSnocW?|5B zORt1)vNf7{XCI}$U%(P~JKg`crqW+i>k}SfzkX~x{@CuZRE7FZrcl+1|BiATv^%^Z zk5RX3LwfeDGi?V>T5HxCRW_y{U0oz-e|hajyVt*s5AR>TWar;W_H%EaHB8J5yUwPe zZK5rqcwYDTi*?`X8$3n$d9NG%h~4^+U*zNS+m|a2ZMpWCBeZs9%hT2C(khk+dmVY{ z?AMylI$K?-n?LpW8}s#@Gf6}>vPT;$x}eakn`e>%r}gSS!c+3m3=b7W_&d9EIN zX~UV0?)3%xjjUxppE`QqBEPnoNxd~4n2BCOwZ)o1@j zq2C{tujiLr8PXFNSG4`9fCEHAYF4p<4MMlt>tc+Ma3oH%YY1!H=%=uiNZ5eKz9L|fySy( zhLfB_A|u^Eo6v(JLFzy@fi{qXuBgl}QZR(pMa3K|vWu z0<~j|MT)|zc&5*UcCPG zu4|j$wRiiv#|Io_OJ)r}xFD8gp;JKSgh|U58HPx(h&D0o*fFJ`U!Db~mhfQ08I6@F!f! zbc-&V%E$gqy{j+ppLXYgMS6{ffWDoIJcs;6wr01=rkn@c7&eHpy=OhH{_{S^*Y}UK z)@e);JM&ThXZ-Fj@~;itRZe}LFDv1$9xiUdx1@7phQ^f7RiOX8+|F_vh|sYVa*Jc_%IX`Tyto ze^FN&6))SvG>RCc>ibr)0XvYJ9b0i;*UlF zVfKRs7Bkct>?JFNm@AzfJ+|=PVP^S$K%I?yp`qT7aEBkdA6aiE6*TOxQ@0blA@(!; zt$3Gr!vU}Q$t)}^VLyEX1R}ngcQzcz+V3gDa_z@#m5+<6_Irx3nEjaj!I`1$ubQX8 zjaTNLjR&sP3yU;u-~N;N>E`SyeP19) zP*+2ZNk~Mj`BAIO5(l9qf&2gO{b1-lvg^>*cTGnW1Ug!FTv@+rt2Q6I`|dwh2Yy8U z6~C?YaWZdv^?|jFkCi2|XD0kkFI}iwck1VSul0A7Lbj~#zq~3_K1-EXs$1Q~_Wj=e zy{4Zp{aB*Y%eA8EziW&9kc~UaT%s+$T2aa*FfLE?e&5v%|(#;7Pi?+oc2cJDW2Lm)e|EKUrDz@x`RG?9QhT|Gq!j z_T)2P|3|<0HCM~e7I#0l`&q`aSx3U=M9%cxnC5UcVE4tB@fF`#V&s;EZL{oq4`(e zWt3iBoV~bCYWKZIjO?Y=PqQ|jden1#^BR4*4{y$Yub$-C^!DB9qR)vb`kcmgH3{c3 zb3`OJ>Tqm5`(A45dd=0(Bm?&FmD-qb?Vh}NqwUF1m1jW)%1d-J)`@zrD!H0)Abv_? zVbHYOe|;Ct4r?t8KheKNR%j`=(x*4;AF~*4OX*(na&hI+9aqFMroGKzU`<~9@K5N{ zJ71RDo~+~HzLCT6vUTIzZzoz@r?cuZKM%0|7-n}}ygrn3_SG-*vbtt8wC{c@s;(jW zTGXRs=iRqgPyABvXWIPt^N!O!+xDi`ZmoIN==}9{ioiy_S2G@c6uwx!=*sh>pMxVc zuIk);pJ`si^XL9#8?6m#Kjv)Ivdb3Yu4VhApXFvRA#v|e=srOo@3N;UpAI?6wya2g zRy6nL(MpX?Tp_<&8qXG=Ze*0-rrhAP!%AmrM29_hdq@9kqxr(8FF)K?_WE`3zbH?O ziM`p!w{-9I+x~YR+vOz;bDN*;N}RcQi|wjQeLa7=uQa``RP6OH`mLM8rY*%hE#&8h zg9mq2p1RDw)Tl9L_0x@76IRVXq&!dB=BcRS-Jq!R{F)Z8boRI3@7(0f>%9AI@wdi-w4oLj8CGcsg^xwGbmu3-jo?j^Wz_(ycErX!g<{xbTl5<_JbA^AI zTI|!bP$I$QtR#=&o#HmW6NLs(v-hrgbm89Lx;?u;U5k42PW*7g%&#g=8Xq@EmU>M} z^7m%^aMeBZ*@3NvZ71g(*m&_lrdjU8jmjyK)3(^hZ02X0;I(Plj(bZ?ADemK`t`0t zqm)}IvvqP*-CdjbW8NHF)_s*QVY!pGBSZnyr?U;R+zMK2rc60Dn zU-xDFi~3KBURn3FdFIK>XWle1H(pH4eQ$mKMl8cK9f!xqv^F*>zn$;0K3v5pWq!fs zn?KkDxWAaErSkDxo=$arvzBLv$@8F19&32{UvAmd)MKgs$Sp69&|2;kl@t8C z(*Fj{J^Zb=L^nJ8Kd*lp*q`>dYl z^vLmbOG;3C{NMQXU$^Cl*I)K;?zE^?$=x4oSp0fgX~e9U`_d7o{hZ~7@rAn{=O)bF>K&H-Y1^~y`$gO) zObj@{TXX+J@%fqD&0o&$kP9qYxnKO2PtJ7HC^a6B+No#tZKlnAFTVC?!W~QZTVB00 zCdOF?+9*GJ{D*(0mk+aW&8`VrT05t){4v#koI2IvmisKX0}H(FEqU^I$IRoI5tGfl z@4E@lY%jWXB0}7y!d>^dZk(s-vqVijxyO}zRXp!pnOWj>y6j41r_clK_gCvUmi*-G zsi}SU>KW5xll^Z(%+AeeaGUvPS~v&qv<#OALVioa!xvWPc$>dZUy-R^&H3EG+}UHoQNz@yN|N5BAR2<-YyXPA~tNO^ti)W7)}9UV5wlJXw41UU>Ra)0o_u&fGHU zLe-)_YMOfO1w*v!kA!_#-1Xq`<6G-L`-z%9?yBKGyHcpn`R$1~0ohYIyL3!KE^4c} zy%zkv)ph@KgDXDUWiQ?D@#}nh&E@%0xr!A>ZWeKTI#oC64$B3RW2ZDP=5PwUpJjZD z?bwBj(!WlAqMhID6``^7=fkvj{GV?~3ub+sczmKxv#_Ln5ckaW-txN>XMZZ=m~9>1 zD||@w(U-XuJk9)kB4?OmBU#z8e-7oF&hYuQ0{Aht-=ZChjlDbvE{QT)e}}xmx$+x2tmJ z7p%T=yzfOpa0_eo)LHf_T{mUVELnW!z@I6_mX{w2$xd$en>PFR_Q?5ZKW&86k7$-S zd|dnE?0M5tx$R<2)7EPLxDgWa>vih7d7JC<)}}e1Jv?`h5VvdJ;uIftK|^Ut9rpB( zm2=Zht$I;_j@QRmAN$<12UVUGdi~##5KSl(x01y`%Z^<6eh3 zll=ByEo1vswy@^OD%P)`kNf@+^mRHflet-4@bvU^jR(4&4th>xIFh_d+Tg*Ups_x#kk^14^9dg)ck z$}8jAK1zQS=)e0*$;@i$-d8KGZB{sAqt(%>D<BZc=He-aC)W@tVI@ZF+w0nbey} z%PhP9&)vPev}2Q@mhk`XJ73qa^}2pa_y3jh*JcB^_k?37?_K-FUu%3(-saPVX(1tZ zRGZ()@-iv!lMNK}V4Y)}KTCvBFLUMJXB$qu-n#67X;Z%tvqEF|rKs~3X%L z9_qh$w5>NphO=U^_vJ+y$~RA4b5VwUG@BgCk zE21BtO%43U`gBFajt>rRzE3#W{QP3lvZK?~Y>g)Uo%kmHeTZD&arHGKJ$1#Ln+*+S zB;;m^-kvR+Ag%ZF(2l@K#Y>Wwe&l%WxcX4*f|+M_`=4}LuID?$`@OL2-nm8=@1(+V zq7L~jihZiJI^R7%W%=f!@;{rD!UGsTu?4tTW>5P2x9azYwm?J6lLGB_=?-((+0}UE zg=EmOQ(Af2w>`^xl5X ztNs(bUSCqrs1QQwjP>yV#ejX$BE(RT{@O8yj^_NcJpU%zq@YE)BhTJ=Puv()~&}~OyBp>yxL07 zDNbuE)mP2e|LP_h+;S?bJXd;iXTbN)_H-MeV|^SU_0L0no=B{Hyy3Q}$(*>gcM5)O zVeXcx+*CGIVxz~DhwEa*OevF=+}Y;4IE(QU6yA2XPp)ZYJo9nbHd4Z7;@ z_n!9S{$)!f6+ zikD2WbehJxhU=-j=aQ+lCo0yzpLx39lijZ1jXYo?q|-FVI5fNWKuhK$4e zZ-J`JcMsO?eSYHPj=KKkH(QP_=&Vxu7rnplZ=B~m$H{jyU5n;Pt~C1Xeb-Cuy1(>O zar6GaA=l3)@om>#^Md6|Qeocei%UaSOBeFD&iwZ6(t_y+J~bU*tNr=3DU-g)+~@>}=hsgJ%{3Pw3bw-mn6E6UH!xc|{C zAuy3m%=*==y?d|LWgXsd$y9Igc7;tVrt#_N$VUk*+kZE=@d+n$fb1awN$us$9uNcHM&MZHzdY3y2dD#)VZ59SM_c9@Os^pQoj9dLf^8_C_Ujw)G12gk_em9wr=kE zyP1CvY&^bcGq14d-Yt!jtRG(3?&x}>qd`!1qDK26_Lr|)jxE+aJI%m*+1{Dc#An{Q zJa<;PzQ^zSgtsT3iKp%Sb5Q(w-S3F_xyKydT|3O|tt^zHp0eh9oz7z+-HJF5>n^2* zAytlx?(zM(v+`2C;$L>Xrp@0U+XSBK=1wzJbC85@W7Dl;^92CT5z7$V?*+hpyL1@%VHvQK<^w`4-RW@ooKi8@vB2iY;(3QBF50lu|NQOsd;HF=R142s zqh!^>#h{(Y?7C-Dve=mkEAFQ+Nl}T`c{=;$-d8i%$6bjPzPw|yoRUKIRGVzQl&NoT zUTSJI=|~R>^Yl#E_qR<@;oYb2mQrR-+y6b^_GR0{r6&X3CfD7bV*ZuqHNP!;$X2=H z@A>Bhk31I)e|I3@yk9!=iI=9y{7QDg-?rcWa{723{}$_wt9M`B-+Fa{mzW}(52x9Q zId8<||E!riAxq%ITg~lCyI8jNFO0kTDLrJ0)bjZ{w{p+P=uDS2N!=~Bmrs1E0sl9q zj9(p7rYCdWo#X7vc5k354SMZcg6Z(T1R zQ*PhA^Swm3@usV{kCf-@Ubxa_6KUWVkx{EuZL%vUJ8tF)@uTmTEY@UwKHclNvG^&& zz89enj`Teh)V+PVQARkmlP_Xoe6iK^O1|?GwR)GCT5e%uWzqd>)63`8^!Ou7=(0%h zr7w^D=9iy)FM76Kz8ZsSzGW!$uQTl#FVDBWGIx%gG>xa6^YT5pWz|onBwoDSlkeA_ zE9P%BFQ;!`p6u_S*9%Q^ov%K*9r;)|ROhVcp7Q8e~*=+ss`N1rOm1$}HJ2aRBV-xo@wlA_Ndw1>UJTk6io+EwBkwpQ(GiI8dWJchUH%s`20y&{;%8R ztJyF9y8V0Ac>9KP{kA`I^*5EMwu-2mZIRau++;l=NUk@##^L*;G$aWWT&AH#Z zH|QF2&-uPVMBPQLanmaA^{;n$?9aPopTDj8d}_{ppX8PQ&TZWq{#)e1Dbt%Des24G zh%4j#ETz9Q%f6+pFqv)s&@@ZUDkl9$Wd7;j+XUsWU-i0bp1ffif8G?oq;j9u>nqCr zFW;`tXsVG_iWB)+eIWkM&oYZO7fL6b@;?($+iq62b46cT>ivwKEysSRZgz0!z0oTZ z^zy*efMt$uo4ad``&ulUlHN1(M?RRR(vrD<&3DT!x+gw(PMkRB?Q-M*lDX9-81k?YMR)A_c|v0QfNaZ|5%%9R$RJwfl5!M#v;+nAFupNWqI^()84nsf7yNgZ7;`gN91S4 zj;vKD-anh^+pDs7vapeQZXt(`&h$_p?{B`@Rkwv0Tz!3J1b)|^v8jnAxH(SuLJ<48 z_-CJ|xUp|NV7O~y`Z+b(tO@@gvi_)V{4dOOO~Zocc~fD_Lm7tutS8e~WMItX7+N3= zi4!-I1Dg9mSs83-ggljFgtRgkwAvJ9Dkmzy$2%fI+u7GC0;CIlD#r{wNrafOFa!yp zP34%OuM9Th(#JKGgJvD_R1W++VM7B;E`9ic!X_qM`XE<1IptR}dCJG>TnOd4CfG~Vc#|-2m zSQ3FGU_7gY-4kL%12Xl4Gt+Yu^+OAaGjsCu z^aC<7^#h7C_5E{G(-ZXv^jK8L@wfW0vuPo#CXr6?1ubs|Eyo0{Aq6cg)KAO>t!D%+ z@&xOFXehvYpfzNrb3Q15GAau)Qu9EDW#*^oL)N-hr55GuV_5^AmRXjnUz}N?Uz}Q& znx~(dnVwOipO=}Js*ipgHpCO)1-p<%mxZON#h~S>U?CVsKe2?YRj;7AQ`q`au%A;# z&+r|Xt@)l)DPv-{#Ir(~~;pbF62L?zKfio2Hv;dY{Nu66e3-WSR|fBz@;c%fI~FHL&Sl5dZRi$)r!7Ek-Uv7t~@usXmU? z4{AuhWn|wypcJ2|Q@m~N0@N^m^%$gxXb>B%H+_Z31RjaW1qw5N zq_5=tG2Jp*pnZAOpP8l$5;!W>s9l`O!1Rg3RU_u(dW(D9z26xNmsN0mQ+m*(Skbuu zk%Hj&<-%3}>wY%OoUw>^%aQ>2WOsyT#tq z994>c|5iW!ay)UDiw(vPN`Rjz4=@GUwZb|Egp9NK5;x1ZrIZ#^k?}b zqlO?i)_>ouZ;tf16)+@UlB^lbwQ?leAi5 zsPi46Q-|lpTs-^gZ0gjHR#T=3UkVkEnze*0c23AsS(WfTn^;`0e`|kNe)##vBl^-} z2MYAOE;~J)#klsL*oF%i|E`T;PcfRLd&53STz2lvTbH7wcG}9_nX|a_Y}~2|zb(`@ z8a|CZ9+k1B!6A)H*L{PHq~yPibw~eZeK+Yf7F7SJC--PdSh5Iv)Or8AZ|}riQcj(i zaWj`)cCz`8vJ9tQ;lJ-5$9S$dVUql8;gZYuEgu-!=^5V@aOv7Dan?+9>Hg>ttK+(S zx!>i?e5FhuIz4+*VfIm`>~(qaQ)jnMea-C6%k_M>KaZRi*Jf49@|Ew|_PVyI$DVCU zxjJ7^GA()*r?bV?yZ7C3z7t$eoJs$ zzRPX-jLoYj#7uDb^@6V^`)Xon!s0dE{7EO|_8&@5kMcqqG5Gi%?s`L1S5b5u_R z-_w8DI^nOB#rye|mIh@nP88cb<4Van{OQE3oc7Iy+dp3WzVAcM^saop_Q;33j>R0- z)mN<3x-#wD*`=p{ltvnUU9B&5;_BqL)8F&zy-5zRQmdZO>e-o5KYyAzS7z80Q~r5d z&ra+z{GU^~f-OC6l2uC0q2^$XXXpOzvsu~nz*Rx?R@N?i;pK;puX+`7xaAqg1#$i8 z?CD!#EDrp<=D2U4^~b1BbHBa6cxUp;n8aO-(?4~u5#PR}U&=h?I#1MD3qir_0_|tx zXNp~AcUt%8nsJkh;_0mc|Cgt-S+}44cIT11+E$d`P%6YcGdvD5*nSEb(?y~zZQ@i%T`&ot;b{^5wu6Z)+x3Qax z3(M!je=XF`ewJO9#4!C!q5su2MRAAU-3k4->f&v8wyknjk$2?)LXc3(zK z%L;=}hg3ssa?@3=O+CKkro`guI>p?x&o8T9c)}&xB{*(&;k-!p(wXaPtafj_+Vkm1 ztXlWtwW=Ds-+%eJ?e7dIte7rWBD@6}JvqV@dwRs4HXjn|0mT_G-^ZYnM8w`a$m=nM9-y*_*DK!-+O^L zhDXNJz9))1o1Q#<{^@f2(#`Js^3SPRn9c2&__OAe+tNK*U5a@}dby=UPPARz zwlVq00eSz=TmRgc6j5pHu%hombj_5Pcg-u_v2L8TGRLZ4AU@No=KA_;9sMQ!WiC;N zve%{xUybdWtn;hRdEbOGH$%O3Y1?UeXEarfWyuKWL9JiZVqQK_DH zb^Y%(bCK#$%0 zbLl<~?sV+k%xWCb{!VS{ibUh20;{qU5lOF3{t^B1?69n;RG69n&0Cc}4__mVdv`waHb0No>{P^&dlQZRK>Q+)tgl zKI~@bSEJB%3BK-8S?6`Cy$|@rue$%l!(`3+j{(nbm+#BqQEz&CyKue0?VYn^pKGuE zb}mp>)Jgf*^wqDPB$vJot+09beF;mJje*q%M*GC=upoPOr~ zPQOFZQ-5pBGB|bXY{*f?>48F%3psslEpMypdCJLht`+c*^7&EFk(qFA-c_U9jQMj< zzbVxJ5KZZZl0P;M=ngY3w*v`hA;V{@&D*D-wBMV~>^{()|}*q^0X8^2g?|!S&_W*PVWS zbZS|?Ov)|YBYWIu&ENKXVezlK#r>1aH%&bx%qY6>=KD3f|C|+@d1l4gy_)R#^QBKr z61AQ1y(`n^%Ckhh2+KK3j}+GabS@WGEmC?v;q%^oE3J;6OJfV{4K8b|p5>MF_{+A` zIopk9JFU2WH&4abgZD3OJ^J;; z!j)#rTEd+E%>44f+HUgWus0t$nu~fi7nE zm%KTqSG_f8>g3Enn=)y;^Jd_VlwX&&Id2=LWZXG(a zyr^70TJm(#%(S^TH{E#q-H|)=O>kNJ-o;s;+%_kg@U6RS>%4GUVmwc+anpW-t^?bT zwQ8)s^;Pmx;z`|4I(6TKo@#%+HZdn5^in^s=~vc+ElRBO1ipCWeY&G%Vexz4jg3mr zKBxGde6f7XtnlYa_q+DY3gCVcYHjO~TeZ|gH8EIxLh<&9&Y}%|3@^Xl(i47krQ&Ul zqK!wmcui2^f!JfQX9G?!-n`Ole8%-<>(VxP{`!{Q2o{_skOvT9*$L zPu#4we6sX|p0m!45?8Matu0kFb$u?iY2Dj?)@2K02Azs!mao|Pkd=kwReJIWdkuHox*{b0Pkzqi-zAOCa-zE8jR9$WC?(Bx>5mA^#w zPP%vJ&(XKamt)%Y^^4^v{UF}AvHkJ8oDKyg0Hf%{y$Ze^0@_RT0DcM z(8~$!#MEn0^LiUySs*(>?t$Zv!b$0N=(>YJNw?6ir z{b5=0lTgV|3l-S{RjSYGU_lMnV_k{&vR4u zQ+z#p{SM3#R_HjMf{hKAK4gFjG{DHEA6%MLQdy9y02Val(uWOODS(HxP)1lyKr58t zXD=99AkJO@t!PFWVf71e^K=3&mJjj7wpboCx)y}ACLBBj2kVPN7t3Reuo~kYVMVhJ zd4yHh&;)k)f|&)<5Ua5v$`Gre8F-8pv|8T8Ou^F368jh{bVv$x-h!LHpMI)-o_@Z5 zk$#DO8SpA8huOhI9WtkT>BT?APc zlWhXNh7DER)XYf1)DSe3ZlGXd1R6m#HU^O(weYb`uskesAY&tj3WjDD$XihjjZJY3 zl^7Zs8$(vCbLqQf=9HusDd@Z9B$lMQq$cO5q;lEWaTS*or6%TbRor^JJvC&G@8<8^ zEal~g9=!7_C@4d?&l!;Ywkg!f4qXX%S(`!Z_)al*}6jzOb?~&J-yrPxA$q zH~60Dr1G(GFrY+1(wGoVu`uZ4p>(h2Hn>4(0F!x^|s%^y1e&EzO zA)XBkw{BP}Z~m+7dGDqa%Y)zBZ=O2*bbq@|W8OP~K!#uSCsP<4T%sE1$ksB1Ib^4p zi3+5cD!82fFTLqsd4VLqySr%d^7=#ngID~|zH#T|xr@*D%Q*Py$t5h1c92YAEh+wY zf8DMF_1VE}Q8z0s{=N^a+^}=;+@(7<_bLk<_?JIeL?%p|5J3(u>(+og=X2H-Awf^Nko=hlB-FTOaSY{&`>d z&Km|Z@nZ7@o0Tv8($_v-ANhZ}vG|cUFCP9o&d{07SyW{7Klvf!hMT{3++dpfe@2Dk zW`*0VDPNDPFeETrGXFnpBOscfe?h)&4ga=M=6_E=`a3D`Z?|V#S8w#?&uQjGM`eTF z{5Npvw7&3JUva{rO^pBDoos3t%+h!7Z~gFp@&x4<=T+i5L>8=OPbvR@oQYHCU%P^% z>OTRM1yAZb_$N&}Bj4mQ>96yImM8xNRHT2}vv|5b~V`%k}{bDz=e`Oi2V7DfJ1^q8#k|BXhOhf!GlL;KR7-2Y#mkLL(X z`Yi6WQaKK&`~6jJ%O^p3)+J^!6LwC3*@Saj-p{Ezzk`a(hq`SxOd zC;HlLZv5BW%&;V!iShsC;M+IPU1iqLXSLLP^QML==KrRssvVAf8b9KvTRr*oD}URz z=9p541?Croe*RWE@hNskty^|V>VhxFUus#nWpK{krZV-}zMXkfHatzqIKHXSHT+nw z+TQk8IWk|EcQ6;NR~PzzL$Cg;=giLn*O#1WozCpPxjE-PpU~dbIjQq&#ZT?tklb^A z?Pqg!n+vNpOAAlU{H5w#DSr64Yu1;bsCJHQk$}H#^K}1OKHO7NWpuOeR-mBomKYJK z88g>Sy?7_^b=-_h%?+>bA7XmDSm5@|Fnz~Zxf}fQg51IJJ?}mUZPeL)Vy8)&M4>64 ztG|}lA_GII`29WCx}P%SnA~MxFVOCgdi*Kzr^UptmHUodT4pTH5`5|6sd>-O$i`NQ zoHyBXOggoCS&YxJZK_iHP!OH*TiEa2P66zeKA zm*L*!&ku^Zlg&zfr+XaUG5`JU>0DQX8`t;yMYZ|H#((ntV7x|P)#poFWS{E`tUO;@ zoU<_MI?L38${jwGbu6U)6)0tF^3+XTAeRdb)ZOWvwi)aCy59Czcgsx zxNAPwz6lnuU(Pc)zqR)3v*xJh=kJ{6`+slZ`j?+LDgCTRle`fUv7~tiUQ5PmtXes za4BNaC*G%jh|cXOpp85t*W-an{BR;^2MOHr+8aN zSLK~klVx6>zw_xt$BtW1vRPJoHSZCTd>_AVdi(v2M^pDE>?rp#tv{@Ncw+7E!X+7( zq9c~H#w2FRKbV-jUL|$!=AJrpp_c*N`-54!1J7^zoAW>Cm+gjCqTicy-72SV_fp%y z_}AUrugGc3%s)?kvu@3vul=^^)cc(gnwqbK9l1V5Wi45ox@BXs!t|7^%jR9(w}fVI zimjX5ZI;jfYVzVTBlViq-oh^STYLU&IQD*hg8s@U(hPM=*9%zsikwm?{uSDlllMYv z)ybV-dGlOe-!zsi*|goO|G?5Cd-p2O`{AW@G$1QfR`AQTuG9A)PdIq$!H*AicPH;< zk$tsqe(dX2?dPsd3(ei->XKourtp7)+J)EUJ(u=02)52M{8xLITgLUlpS#t4>E6sM zG?TZe+o!bO59$(Iyr&~hrh9Y271cJUj|XQqnbkDTKhJSuTU1wJPW^W7d%hQ}TaQ-E zUSgJ1%`2^4o&Nuv;^)-oKA%JHuhEOCoW9M5-{8)~C8EnGho0MUZE06S-*$^o6|obZ z0T#XApX(er^E&ak_VVa*%hFrXPv1^ume_mW%JJJI^<{r`U-kbvHtpOY5pVNNJDvqa zmRYlzi^Sjh`Q%rz?DhzroR#-7Iyv&qzDz&Q=rg~1c8qq=g1vXvux(x!+>`C6GErvU z9DimW)44{evu4;-S#YwPXAL?o5(bn-?xTuIvzP^zxMG0+%0!MOB@y%DQK2%|mKA3jNQj#H?k#Ypl3A zKKstx4G)93g?)0RKR=EO-f;B8r>V71YK@Jev+6dbZ<-+Za>tC+>j#n^Y;U(JHM@L6 z`k$U-z>P_h*u)p@T7Bs5pS1O#`TmK#7XN!O$6w{c!`wo}YG%V<><Df|MTE?6xHV-`B_!N8X9<-_1)ql)AkF7co3C$LP9 zXtjNDKzlCl@^99AZc3NcA3fpqCd5idzRc~!_AjjOEO(10cBLgR`SCREbxw)lto81- zzL)l|+3(udZ(DT!Z1BXwGpAGo-yUMxk||oF{`=daU*39=J!ucx&q<7OTv8Z(<)EW}1~-Is0%>>5~mHm#dEUyjZqSakKWtr1c*rscSh&I4wWB z;@9__sJvAzaoMi7m(DtPKQ%ym&Yla`8A}`^O3p}6jPQPI(j&5Y)x~?F{;Hy}t?yh# z^?HAZ%lq>m3V0{Fqvl6lYRh{ul{O|5e$!bdvfjZa`xBpSnq-u%zm@N^-q{$3i4i~6 zq%Xgkn&-GQ^yKrIyLz5qPPd&B+q=`qf1~cr?DxO)*WQ>kB3N?4NGmKYy`U+L4DJIwilTxfe5)OSgPyIhf(L zW(`GBOahD~jv)dHftc^U}9H;qU>avg5Eb22J2#PvwOgt2En_I@$g4tWN zZvFZnw_g8x`_8!cT3LPm%Fvn}J)blm&GbBecJ{$bY_;DsZ?W3``{Xl+(Y|KG-&}R> z10Te$XRUO}Fgf9O$!nRMSX`(f+a;Yh7mj?8%&**K^j>0e)jx;BRSK?k5A}?A>TK2Fslbn5Z=8ciGShe^dt6>K4(Msd9OO!8fc%lN#08{ zNoRtM=9b`#PrUzM4e_0Q*6&02a#O#|+P|~E{yj3OQ+!Qs*iM-6fZeK(EqICQZjbxnBx-x6j-r8dE0cJL64^3V&kwwxq3T8;|+5 z^Kz-hXUskO{-fmaLtRo6EsJC~t7^ZBT&HwK>V>g^f9yd^Ho@qkd*)$ZH#x2Dt=_wM z*}Od*k5bld;a;LQx3}o~iNhN=hRs)U{yzQA`HNXa?OE5jOt(}iuju{3Gf(Hj(#;n0 zeUInvDt7)=6)$&XiTj-U^Cz*++blM*@aXNbkJ-#oWjQ@5lax5i3*RiAGBtgE_R6z& zYr38mxp-O?Ue7i@6FzbJ5w*L-n>4N{eNtL@+Qj1@SENW4g+h=_71syyk~V zt&;w|6&t_kc4(S281pE!C{NjU=fA~G(QmVlu9<(=OXS=kMF!T~j{h_EeAqNi-q7Bt z{^ZrPM-9JAHm1K_tLv)id1?pi(z{LT4~k8f(5`05W_Y*zQq!w--s?QH*H+&>6vDQ8 zQo6dnXxUN!s;3Iq{T8j*zjW?8rG)K=|ILcjUieT9wA8cPb3b^R9SKx9ca|}2_x1wK zrCkT3o)o9d+!c25^2zdg z=;Dfo$Vn6BroUeJc4|rMTA4X>T05-U56gV977bT8wan?M#RM~hiZDLkwC#0MlwK59 zT*(VwQYht?zhy!YU}tDGWVlqYg6icrf;T)b_&cavrRJh@zsj%AzK zE-KCWq!-Fkb4_OHdJ(ouW|p2GckNkJmU=88OSOL6Z2sP)p4+E_iq$4rRGSCHM8=D^ zOz2zkI(+7`eUi)}6 z_BPwXCoYFy`?ks{W@kNh@(kGX;r46ZNtVaN*5tbFyOLl#OEThq+M%-F3yf|3E+07* zeX#1ncMoT+z56P*cFow6C*_}d=EKe9mnQAa4~x=OFVkb4?v-&aSJ&Roe}(bf4~vf` zOznTT(x3fOQL*gBpNlT6muamMUFNrSf}G;FpK?#@RsCyA6YFp7PhKmkcFZ@|ZDn}+ zi=De?bDV34-7m6f&gYv;LVo{J>ub+5bd1Qi^xaaj+=SDifpt&562DY~;db%Aj#qp_ z^24+Lob2DtcTCp&&YnpnEC(mDEZZ`3YPZ#GJpt^gT)k%vJ zo1RWQ*n9nPoxz?S@!5&5FUl?TzIy-5QB%H^CvWxLoGxRgIhjMTGHIPq)Ry=kKVAs! ztMlw>P(NR~;G51xhgmBlzASCnll37%-Rq9s{}T0=k1Z$v*sb{Iy`I(=W)salKc602 zbjMUW$MV3V`IndRM83Rnb)j@zTIb#D^(ST3`b#(bGuomRENUOHxk!KOU!}vRKRal= za&MQ7I$bhbjpO$tgH0tTpJwMBH@Uv)^SZv`*p1H~_*6bDEB<0|bXrM9=KqB!3Ojd* zWo>ah!%$>4Wuqjn==gF0io4AF~{;Bx3e^cCV{k1bD<`up@dv&VbjvtQg$$MrWzvZRCGp*|A zx48|eiI4xE3tu*z=K9B!ksbp9_Z_QfOvX@uR z?y*>YJNWqa4JUMNHMw_9)G1OkWu3cY-l>v=y}>rK3ynSPqWV6@@NQ{em&^L(`At@h zaC`Y(?KA$h%uDAyEF!`Y^!TV^==uibYF&nf#e&`sET(V!;pjbW%WUCOmB9}>jI%5* zP5j#A)*EWIVaDaugC6{{?rMsLZazg#aST-+=7Bct`NKu1#fxnB7_ z(@JZq9SyIAtZm6yIFoll%fCyCGf%#qbXR_g8Pl}+VW({kl&q|tSL$(Euc+8x7OHsF zVF|~%rQb8+7rHm@GJC%?iR;=&g_Bv+-)t9X&v!}AWnc~2E-yD-dq(wTo@;li75eU%fgqjZjhh$=X;y|&$IDf`zN@#bx6wO zs-|Wt_a5F@o}c)B`N>*|t))vn_Ni^HnK$9z&u`q%>TX{-YkXPca2@lR#j@QBURPG_ zztFC~cB%KDufmnAT!GI5gqiou|rPaQ;I{DcsC2f7QvM+mC*=B_uTAyO-UtgV6AHlNt!kkC>7ZbXZ zr?7bQKfm-Nns4XN8{W(8%@~bKOW9Ln#dKJ{n*^S}9p$$(?a`x1d!{#uoFDcxmuF1v zo*b;@eDlRm)~|~!gj}TW&9oP;U6wACDyP$(xgsy~_lIDo7d8)NMf@*DJ++P3mHytD zdv~_k_O8fZZTozrwL@boO#a={npJUr_S1?Ov8C*Hq!_pQTsX0MLBm9s6*sm%jcE|I z+j!;gC%Ihx-M_3KexED(o!vg}n(^1GZ_m9kmCc@zq5Jl%wo=sN{k~fH-~I};8WzY- z(A^}@yJMNY=u{Ok1G^8-^X$Z&Tsarp{gu6{Cd${*S z(#cNGRznAc*_vqzY;u&9O zG8)}m|79<0`_4;8XLz>xZ0NY@GWlL`*fGu`sTEdpzDWfq&M4ofpU&?6MQ5v`y8fPm z9R;5+7U@s9ETU1DomCj3TatUO`^SdcE}ippm$a@p_r<9BMzh&su9_MvAB`tU^%C3v z70jQxnR9;SdxzzZBCRL!{Fn4!zRdaLUSF5n2j5OUK6}CD(meLF4HG9Uw6I$=q3}RK zv%QU)SJ2^wYIbjnDt0)Ct1$UN)wUo zIdIDA=X0aFuoaeiw&L@>GUbGNOgoBAS!izqVZ97tLZ{J zexA!Sy|m$(u-bf^Lmj6sZwuB|I(+8(VvaMbE=6!mI~g-!?T`C;x92{sb-tWC{n$(2 zYK|?TQLj=p)1%&-%O?E#IBky7(`c1_vzl(CS-zdhm+2yVY}Fx#XCkrrm9;-Yz89Tq zylkB%{h(2n%W<-A<#jvO>AdR4KQe47WGmTn|BLKp?z{b~3h%A|`|ggyo~c>q`zJpA zH0j1V>vpxY_Z5B{xMCCKG}RrfU4#DJSA@sDY}Aro@dSZ8JWF;U5Q=t`4$?6 zGPXO<*+!L@teDrEY!`S)xu1L94gL)#8&BAz2WHnix$(eCBrCK|{+jFgUm*!i^1ebk+s^LE498L#X%He8$#xo+!y`Kg*mnp+mX*z-xc;rr6`$->WGcZPix ze8T^w=wgP0-vM#9@IQR+E4|Fl39PRyacfHQZWFrlH2JsOq=nax{X6fd)~7n3_0aFF z0xPcn*z@#xmbNIj`0UT-**C=<=DvE-*EB`PRmAK!uUEwq_R{vb=^tmbPUN37-Q55F z-{Q%R@1oB?D%`W~?eSCMw&^e3Lk{OG+4Wv*`zm|G*#-8Ct5Y(9g39N{zP<3cPIS?f z;#kM*e{TgQelWXPHQl!1pXQteuP?RzVfpMV;dDs%6;ok>tHHCUv&OVmRs8TWlH=C#@V}Ad5&EC+dSoo^p)nd z$sbbw%o9{yYR0&{y6}ZqNb%#l8|^>2&Me#DJmcGq$yba0JH-OmJ~*EJVviYje8no; zdoQev{MA=@YdqxGoX%f7KV)fq(ZTihopC%@47Q0&ye%u({C%R(H`{Y}160>9l?|V= zNAHQ^Dn9A{w2;%rmlE>)mlw?D&(VA#(rO)<e` zLgSDLrt7**7Cvd(pK9$jZFb)OXM3L=ovzm|wkdDxjiutvXWt7ylGpmG6>;I^m4NxV zzOUorHXnHUlq+hL<|js;e~x?3KKk41e{%*?ny&Gi?Yq5n=JN_x*O>KPeLFpQZVm7E z?(z+(A6{l{=H9RQUhat7_a7X|TW25pXTxpmhRUGUWU0fF0?x7fcI{ znU*$_ZO`_yLvw9(wKETX`!=&wKF#s}!;%}e@2{P1NlZ5EK5gDSxl-`*>wRk3+*TT= z=1=|qeC4&2@@FmDa`_s`Ub36g&n`@WaL_92zp(r1qY#aKYBRh}r5{jU=kjHN-_ufF=i>X4oBs;G`dsZiw}j`7>bgr+?;PJ&9bM<# z8v8yt#9C~V=jJWa-wudY8}~Zxcq>pAE4sH=Bd+>Q6~oEL(>QY)Sy)YHX$3pUtm~@x z+P~v**%DPn_b*9v&i<&Xy;AJGw50Wm@6V&{b0Svxx#urg^Ylc>y7@`}K9-%Ev9Kpr zrbE9hEAZ`)zeit*Z{HCsFFnVh=5Y0jEA8HL*ZNkp?%(lX&;D!AWKTcliJh;(*7I~h z=cLu#PaIA=1{$!3PqR2~w$CofJn=$#P20+nq9?BJ)@Yos3+YNcKQHNO$oviY=O-`Q z!*j0nrlgnjUio{`dLPTC^8c75ulLU;t6A(z)xTGIUz9(Uh%1YJcH@~}n11@Uo#@Jn z{qp4>Iq&^^^dRL~cIAm({pzckTK#fXev7OzJ8`)xZa2To+W7`d{Y&k-3Z3qX24AUi zkZw9Wse9`CE8j9Z)NUBWcRiQ+Z+ri!`$ThxL$QXlo_yc(^!XVcoszp3KVSbk$F|(D zB9O(cx?PZKdUe)%Es=iJ51GYRm?k&s-g%)oe`|K#zQ>b~Z2YEht@y}vfh!l6K6Z4U z&wu{?t&&3yJlCquH!=T>UiVo&MEqx?nC&EgxtS`nycS$~eL3ZmXza0^WBngCJu8U3 z8#eWxhwGndp(Xp4_dff{v~)*V!`A8}d(_XQXbN9j|B73>C*a5OO+Rl)2QKXo@3(af z+`jIs&ze<9+!5XOw-}T1|yFeP1tc4Yc3AaP_7xf9vD_;`mNK^eVdfwWeL} zyqTLR|q-@Uy1@Z{$v zW@#FdWqr@4<>$Y9HCrThO>oGuw-fgJ=! z+!Pi1S6X|T>MrJ)Juioa#P8K7P3vVAr|hfl`trF_=goJ! zRda4UwLdo3^w1ggy@@@Gudd(syW{MFB4d}ToYQ?%&t5<7qIuZB`g@n|D?8ud(7iPu zraViYHBaL}@YD~7mVSAyFsXgg-*vytdh*s?ety%*q3n^<#P(^KX9O~G*1ueG zP;$!5^7fTNx?i0_?v$k|2U#*r+xDH=y0q%qgW4;chumC`-Em)_|4OE`X|7>|c5UAO zRvVXqrsulnHW=1UOWY!`xbn+}UD2DY3hD%nHq~sFFh1e#rmLUuDErdY`{x!bl|El7 zGf67mc>bBs4OJ|2KjkfHz7%^`-`Q^|!*fNYU*|qMNLXn$ZFCJ6uvYthT50*8qt{LU zegCrIYDM2qiHqOAw^_BS2JJE4t#rxQkN1 z`|%vnSEmb?S8nT^;QaIBsXe8)e9X9#%Ny>#Ej(+?SiGzw!dAvmqNFz4W};r3F`LkL zQHy7P*C`1fJ^Dyv;~S52ayfd9o=Zip?ophv?$WX^%^!0AWrfb$nyE9jaq7OvEaM+< zLf);u6TAFi=doI@Up;G$?ky7EenKbp&sS5is-~S+XP;m9B>IKc{b~Eps98SW$Ln|5 znfu|Ns<>@EeKQPEIy~#zANpSV{p)Yp%34_ zscL-rW_P*j;=EY(Tfcd__q?B`@oE#um@|NE(u-KEUEZ($Go>IZ*9;&@#{sy{>%lz zlKaLec7y;ImeHT=wRtW9-P2qcd1`feC;SY~ezfSsnKvqiUQhY9PtVs)^Dmvd zpLWYu`>q)tuUG4C{@e1oMT|*^M|JZ)j#YbB=Pb}F{CLEAMtI$a2{+3VL%B|FmN*&1 z)3R#|i}@bwU+mWoavpsyYk1~dhnC8`Fum*CueJ&~A9*bQ?IRz%=yVC$UGQf3Xg{G%{ z$g&@iUkfKon8}DTs+6two$UARk~Ghk{>dMG&9~q6zJFrPr*74Nv-AJ&Tibj7unzCp zbsu;XUzSMC-}c^qpBc~;eD2Ce4L>m{ z)9$QoaXXUJq-@qP`=5K$7Pqi)&*$Jt+wEh1B=>sjKfBhIrq|sRyn^%a_MBLqLtn-C zCa_DlMoHTgYMiydnG&EKHT9+M^f?KgXX2Ij=pR|UO4LT?BU9Xo1K&8mPXB4TQT=^b z!p$?E653=hP2HWrm9bj>;cKJ!a1^=IQC5{$* zTFTDU9X3!cEL?l*aRkGwx`soqoxwVrsy@bh-3X=LU4F7ETdC_Zkb6jPgW1d-etghtIp6s^6JA+D=nlFBQWzwS0r~YSFv!!n7&S_in zo@7vAv=g5vpv!dO9m?&>-aO_@~A^b1s z%KJGto_}FxSQ2-iEBr`HXJ7uVDL0O{{#BB4U)lT1k2SC3+;2UlHNR{eokS%UO=MoX zXulutscy@<^1Yw9Gaf62hCgj$-&a!?s+gtI@m1pPpO9HDXU20h@ zj6ov*eEvE*Ulp%dHe>F)PS>yEmo^{Os(Tda^=-lG*V(H>_^R&3Gi+?^HV-XUd(!dn zP_wW9BPoOUXU3C$eO|X_>Vw+(f2w-8oA)a|>7KQuc+#WxV_{rp9;-8)pX#}I%bT2Y zHoxjF*~D$1y6efp!t1=<4Rx>G(rjb=EqSv}|CE|~^m@#hN3kYP zwqFn5OGcy~JUA^=`CwF2l*?(wmhZKCiF1CQ(S8wC>Z9bfk8QFZyXPIg_?2N*EC0MY z<>1KVr+mjiZ2r6lmplb#tPVYRB{B85i>8rPzRX(Xvlc(sqUHdhPEZ^>5TR&5D?gO7{tu}7M_s6aD_Xj;) zZRhWOd)wX*Dhl&=%FeP>u+33<_MGd8_ojDs2`9Ekg}qwNV_(ES)%l!<^Q8EW<4f1? zSs&`EQJNpUXQP#~RiK%Wk$Hc;-Of9o+rB=%wn(+lvNlRF;HHmC8t30{3%8c9yQg&N zk51h0j>&4*zopCT<+AHW*sb20!R)(i!8CThm3`%^o938o__sE2o_ZUH9p5yY-3K-| znFlH4co;8EzOJmBWN36uT}iBUlI7HQIe(s=n{In7^M;LF!Ko!TR0L-)&TM7-Xkx4w zc*eE(iSRwk<*4}Yn_xAzEie(>4UraBQT=no) zi+JZzM&tYXduK|lYEPY7+r9UXq3@LR!vTytz3kP?cL>-rhrNEh=*_H0)q?NRd%G&H zUOVi5#`@*HOcXp1@(W4%T1s95ro_lf`b6Ys=5SN@_Q zIse(SJ-ahEr_}DbUzW8;VQb;k54QWW_+wjl?uwaog zme?xxd)E@5D>>U-(?==6hzQ=vV4jp=`^6L^k4JCo@o#g16ruej%>E-gN1mYU2h=+m&3nWn+Y>O7S(SJ`+44+E=r zvy00XP7M~p-ovjHIy6!lRxM#+HQ5`>AeqUawO(iS3LRZ`A;v9*74=NFj!xz1$n5^_ z5yW6(sKF%Fd4S1{W05wO^U6k-3WjGEDpIar*qLX^$u->U7maI>JjLz$!O^nOF+k%% zi<=Om`xI^|?xsHmDGjB^7`f_C`rZ3c-(C~IqTi+I(32D-vmm16P@?T0M)fJi98AXp zzc~fY`IA56S9+msK0m(&)91y1`qlorOEfxG|M(xy#Mk^?Z4pO<;5km$1OJS_a=p^e zchgYcV*YG?AhXgT=H4quc2z83c)4F?%XGP0{7+Mw)RbZw(_7lbUoG!DWcBwl%hG&% zU5A|9^)GI{^8Qmg&pug=!(>{;ERex!7)Jx z`#xbdW(5x!w&ov-|CgR%6bP^1qs{d@I*3JqQG@B-bOm)@hmL*q$&n0?dcHaS6?*cN zvE!P4(1Ine|EjSvBz>8!vGw8p4kM)r_rs=4(RfxTIOP(lX8*uKn--=X~>(ONV~4dYwGPpebpov0%vx4viC@?Ek;pcuaUexKQnL>MZm9Cg+S)()a)?>%%3!nddsr7pArX0U%mA@(-?=v&5zme{^Y;V=- z#Ce`GmD@ktU4OorS&C)N_07G1>>syoKRi8R_NzAY=}%YmvM=B5{r-kX`JKPtvQ{2& z@j0HAUYs&%ga+3qye}JQyMsriQhe!nPGE7 z`+RH0o~dhveNP?XTm5vI(v#BH=a=-9oc+Xp^$suN{W&syZ_e$1qs_c-mj2GyrYG6A zS2BwDnLN#DR=vJ<*@mqjp1Qp@c(tkU=B))s7yV%@H@qCkoUE^QX4SvvUHZ*vd=1Q zKO)`#GDY52oY@&P+40sEp`)iaxwou${ZnRW7qO%{uX=TM<%vbzK}xw1sR7Lse+UL| zI2$OIq_FnOqvIPDUYxzGnfcw&DX?tT%uYrd)@v1$r_W_7$UUvrT6(%Xl&kjTYcajs zYgoTWDF2l)n;i50$+sWt--pCV-aME2;>C9L_|tnXO^};2`QGjKrk~Cw-Y#2z^5*M9 zoyRQIrI|ih)fFGxtkTvt-*={boB7Yr2S1ffYCEm)e5HNU7k$;4_YXaDJAZp|s?=hyC;7E& zm-zMGG<fMoX?e-vzgcaz7_Iv`PoOut}GGI>D5TF zyDKm?uHH7~r{u4`ch}p`>E~ZQb0cSB`=2FKB~zp${yd5DlotAV?9RDlo8|J)`1mFE z`d{wwPP6OaU24j>?M*qKi~f}9;t{p){aLOnMmUQt*6S?O|5EgNfwb94yNmCnO8>cE z-fCGYyX|&Q&+*o%65MOYgkir%heX87+8#?by+B(ag6SXLnb9 z3(d=4Hl1DN{^FqiXN zc5mI%%-Y~?_}+Qa)%?Ua(;Zx=KbiKo{nYDc1}9^bd6XPdf@|aBCM}XmQvRzk_j%9B z0!3Y4W|8i0rLQl~TRz_+XJ&T8G<v3=0!h8IJk36nUf4KPj zIqkIvm`0%S~vN|teOqARe$e!tG@B&ud~`Gy0GP8#H*zy^VdYp`Y3Gfr*ref zRsB<*JKB#&iOShDO?f-{Po6R72k{-XUQ-u86p8F^(7kL_k)!*faIO8^#isMO9=Uq@ zsKcr^GW))-(N&J0P=2s~b+cu)kahPxi$xDEZ<{aO>Uu8Yc!+HO&1pS5?ya?PvY5y4 zy}-SK*H!)C^F_rmbFbYh)!BS_{beV0@2h%O`!p|9DkO*RJG-El`(yU{X$3ADD=hPC zCT?jIs-036_gYu)_|=FSF1yg&^0>zWamjVokGkd79Vw}Dy6q!lr!R7Kr^oV;$6Lj& zJynPUN*in42Fp!fIX>|k1XtF&Tz?`T zQrH&Ec`))pNzn3zK1vIJ-*;#$@@zvyri!gSCnl|X>5suSp@#YQGbY}BCSGY;%7p?gl7n@&cvA)MH@{oL7s{dmfsZAJF`C9S*kew)sJIdg*maIDSmNEdXdX+zT|fcJ^EtFBnIY-db_4~g!vow zMotJ?^HOZzN5k{8)4jrHU3%31e6#o zT)zF-P32x%vCTu(D<|r&oL(GP88-jE|tQy$>ql*SmZZsxGFuXP|EaO41cfZ`O>rVnDXY$7T(r) z+lWPIE_3w(@izYFaao@XBRE@*N8Fol{z&@z;y){{C9hk0qW#?Q%I?Q2kNfW9zL&iI zjr3FD=Nj&xiWFQ#R-e1(#U*#{i=y6M{%6-7wQ8Q=jJm|B?y6N|S$Hxu@$iJDGr#f7 zao(4**lEYo`}Mnf^~Cn6bE~s%S#f1YN}y_%T>0-V4d#QpKC_+Y+%i`r{ibZ`*);B5 zNe8by+_6r0f97J&SseT2f9XCx-{Uy*PIsQ`rtW$1(QV3$)p3?>ix116n<}8S>C=um#^$R&#|i80et+=r>AP>H za2&0^_;*{T^VVlMMGjIa`rCHzU;1F`hs+&v7dCH&yz5Vt<#E_$|J+slISx zZItKM$e3?V+o#RE{6kMkw=VFj@OI2u-Nns_9u?!34=0;Sx zmmRurpkacKdz`6kN$7Ls-R}=OJp8maZe_Zp@csIBky#%u&XumL`k&dm+iJxw^|&kQ zms37?p8VPM_^tnSyWhHsM~z;I=bG?lho)rqe#=R@pYruh&e`6I%}Prp4u8GU{bE^O z$(>od`2DWh+g~b=f6?|?mDTuY-_3Z;KTNkzXI}q^&3g;We!2S#{P&bQ zeGqo3Q2%@PbJoke)AxP<{b=?UJa%=PVM!{ zJ)X}bec$HobQ6|5?9jzwFRYVUYWVusDiQCXhi{{ACK=wHw>)M2^zi37mlk}i>X}t` zAy4@6#g@QHSC1cdNDIFh8FiMs@~-p4jRudOG0wbLJHz{a=k;IA9($$c-M&*jPo*~P8$M(yEgO>SD;R&9^){cw_MYb^wm%UK6}=#*dWsX<)@I# zftuaPf2ZDhda&6sAn{Mc-#MP^C-8kY^sY6waeks1X8*Ku)z9nYTjm??IPLn)_1rU# zP0zcx?RCj>{HwK{SN7<<>9==r@SNk>@J)1c`?V(*>TbMEW>oLEUsJJmvzp1)d(jCK z!{ztX{XCT^-&nndlilz9(sf_VRj<3=lw4h*^>LFZpCxcm9hy^?ta8u7jz zTV*D#a9L{C&+TzQXzTu&Cz{<~&oh-4z5DmG)70_;(cgl`!b|F_SZdnmJv_br=jK1B zJ{GSD<34)r`!T82rS1vYVYgcIPq#5EKeBT;vFr3>@ujz>9bQ#6VfCGy^qEJNzdJ7; z-P;|xXHV4S$yV!w6Ahz(&D(gh=702#jTv>ZS*afz0{6dIa^_4($FmQKk8)ElOO>f_ zyYuR9)b=|o0)97rKW^+(x?86Ioa^Ja>Rv^90*73tSNT7U|8?iwludz?=7~Sni}@zu zwriv0t#frIH_g%x-YiZ}tG0GTfTXErkj@9#HGv#g_-1-0E88U$pT5YRv%B+8?wxZb zyPpZZRPGD7!re6c)-#5@;|aBM*9rg%qF+U^vLv04f^7s#orQFNEcE8>jkf<9n zclJBW6b{>qf@<8=Yn61E^t%t7+E%%Qdt#exlaJIh?zWH)R`Z|xdau||{u4N1@l2M# zH@n!xU;cl{`s+W_e|0Ve+W-zG!FET1JC6UE-fQf%#Tfep9fA!TVj*+r6Ljjh5Bz)| zj6k_0!MI&<~ z1!E)7@!$puCYGRaJO~NnfkZH|nI-ISA2aar<_HxQmgWlP#-Ou{5n{Ml5SvVlL1#Zf zNK}=kCMHlf87LTAfJR3lq$&6qcmo9x4Ije;83Kz%*chG#@*zM*re?<2hwzLINw~BY zbX@XVspFnULbz7C*j&>wG?qx4VA`C*x$sDK5BuR6iDEuH`H^ZOi8_LlN&~K4$XY)= z=jKu;FD0**4@JwY-WOTb&-;A+=bY#Np8t$H{r+F=y4TaDZrK)UR-nGCF+-_w5l?ty zHlv%ES%ELZI;Q3mr=%u2@UXh8$Q%!F&}HazI>^YpN__zr^8=}Cf3ZJ(-|S-v2Y~=TZK)+=e5l|HyTnV zh%oG0?eL)BfNc9xhP(ypeGH9t#wl(e6qsh&A9@$E-#&;@q4SIx>xs?2S`0be?_8MX zvF&J<6Ih`-u~z&<*{AykUpHIK>N*~sRI~qNz4WF1OAYr~*u0(3>Jo3S#j3(6=2AYv z<;Tt|jDH@UWhyxySX+N?R-i$J%(aFGo$QP^`UU!Wjkxy+ujm)-2N_qKj979HG_8BBXJDzHYT+{RZ~Fy?z2bOdBUmbW{qnK4iUBtxGg(&h6kcYfogp zh^)T4Y1P8_56^vg$l_PyxO?aRN2|S#Z=F=4_)qhlX6FIkz@jtF6N2Zy=okO9ei?6$ zAL|akrStb|zxrW$x9Qt8|18y-vh#mu{aeb<;kWu;xPRms`jSBRQ3xA(}_aPvkEr0H%7fc@+ zLko1Le|Nj|Oy4>t?}E}DxcNl$k3DxE}xifaA-PEa926Y*tqh zOa0Z8n`d7CEPqXVomA!5AVa&QrcM91UA`^u8FaaQdrV6Cc_q%K%A2{b<5$lu1%fu?h!#gbVV_!tLT+WF5sq23FdvZD7sqa^H-P{snX0Kar zKKtSOM^onK3Lj)${pI^;%{4?>OhbfBRT}WyF(5!u1Lh z*3VR|i1)wm8XTb#Ki#xr;hB^7YO>q^J~+=+cR8VN)-Ht^J(eG4uPHkFYoAbgbn$1u z-w~4ct+tw|raZUad85k9xAO6NPGQm2C0896x%PkA+@69FZD%T9{VlJ)SupO=8 zWqqcz+ch4VJ0+OoWNOF_pR2konM*wSIIA}&Upg4TR;*C;_{7n-iRwE8oF#uRo-%pU zR+I2YI;xua*Th3|*I(bov?V(_@bu2j`HxN&-`ZGqZU6c8DWN~yUS;Zsc7J^y?93Nc z799Rf#(K;03(hxfu0(ohK9%h+`n}}va_QfHYnGl??w2-}x-UN^diBRuoXXZLYzx;8f9U&TeEvubaPF21BEJEv`{{I&VH@lPWx4JH1UD5h?HEoM9C;BnLHcQ?Pj zc&xLYVYgSpsoXo)g3cQU8y=bQ<4xYLYm4t`6i(akvLe2%w|vG%^Eo>NZU3CBUJ$z| zJ8<8_gA&s{UcLHx=laJBr)G!m$ZDGCo!eYI$IDadh`8VWr}x63q;08I)$IveXIx*PrE2%w zds=}-eCLczUM8zUTb#XKl_p&2rhZDSY{{+23BD z^$(o&__E#&pFXpz``+D3d-B8O)!b7@H;E@t@>#*7Tzm4^!Gim~MwQp^a&sJy%ilgV zcfn2B)KmFtQP~ThdPn=23tf4;(447w@9WR~as54Occy+?_oLuH-@eI>h2BjYBEGKp z=jr_Y@#JlNJ=10NQWq+RUg{Uhd}X$K;<=SyFQqNoyW4Z;^4;^wCZ%mWyIayfKDAyz zCa8GIAKv(m()7lAK7r%2cz5KUUlSlC10q^|y+cItUU(|PA`nk1t zx?PdQJC9QyVc+KJs49Di*nZsNov3lXuV(rO;dG0qGj4z1G4HGL8^bpncvQr7Zw_d z&W`80v&nPI8>8PDEbiwbj?dM4{e}OcC#Thmd5gpaje8se#g@m<_`6JHGMBiz`fKlJ zL19NNt1q5Nf2Ml#Vs+{z-3#(<&3>|*&uiL#H5J@_ycU9@$H>dqS0UvsONXKlHwB+gj+Z1UNh z?x+X0$*1EStrYkVo+t}ExH_O?Wx(ABO?M1MEu-!J7cOm9)aClxIAyu(^Gwxp-j^#q z#kWp7zme}Ni}4xm>N&BuS=^pqjy+a!b;`F%aw`gW^{(FWp7;E5=A!0`bDFFRnNDo# zTamkR&Y{%ig~psW=AL%Fd_z=PYJRa+; z^=XN1)$?CZdw=rI)LUY=Up>74_rs|#J*(rsb)OfBIQGX$%l%H(a(lPERoDNn=4qYQ z)~0{8(oRjKW*%P3a*xOP)&(m!^)tPtU^OWhtv zPx&R|muV}{^|R+=Cuh9+^RmM_{E{tx>yNzAeYivK_e;(!?rAcS|M#Q{l<9iJ-FBWo zTSCrw$F{gAm2}6TWk%DD_CGN>^Z!*S`^7??*%5r7b52X~T29&`c{T0Osm=$_M0P98 z$)2N|ziu7Rk^OsjS|#n>xFW?W{d&dYcblaeH7D(iInfd7dGwW8^2&pDr!SnXIvsO9 z{8s3O{~wzF#6PHaV(4Z!RN=ZP?)<6o53^xnyBJ1K8q`*eC<9R^-RWR9_j2-M9(?pA{MFsBjMlQxBz>6e(B zs-TZ*7uKG%sWG0OH1vpEOA}KCa}yjVO~^^2pk~bjFpS zGmFfF@Zp_XV~`vyWFf;R0g36U#a#N%`K5U!3T9mT0ibKEN)*gNDucN6y)#pa6{0~4 z&Vm$-L7nv=1!IuKK?>jwdys+&M9u{4<5(`lsv}d7i}2WGjKeMy@F0VNDa2e;40FLQ z!(*-`%+X-a1}T8u5rphAbCA)fCO9XSB9Eo=aj$s)B}#m63sgse!4HsiBdfrGWvm@fAg> zXWn}~H-j|8%`>wwGse(sY+zx5rq|5e0u*p4dQDA@K!-}Bh?$v# z4~|9=Gc~aQB}P;+0}C@#G&@X9%q-B|Vq$3wN?s^>O^l5}Sq)Xp(g<{xH>#MCIVj_z ziWz{$#Xv%cFf}nU17%o{AUs@*Eet^8QYd0Z7RDIiY;106WQ^tyBQtZ*HGU|14b9CA z(8JWo%*+5i3=GW-K?h-@>NN(ByP=AiTAG`n*=ufYiV^1q#-^a-w^8&O7@J_khk=oy zsUezq1}2u4m||Gcsj(Sod=b?SGZTz3H83->G()$;)X=~ZUCi9f0^M&0=BA*bO*A`9 zjWG0Dm|J3sVKdJHBdiP!j6j7OiXDaqh9(B+?y~@`dju&%q#<*2GtfF)kRUt_85){c zqWiidX6SKbZf*gpkYIXCiV`z(Qj54i z&9dOks#H+ft{;@2U!nj~r4YoW@0pjDuKZD!r{ zak2a~<;z0GBB_(F^vqphi)aPCQ=jrpW&n~om^%B2UJu|0#i}qtCsft zTg35xhnC9cSEAa#x17;9dU><{!-)sK#aQ0TiBa1)@r2;+*B@tU>{%$wlC0&LJ>mW# zJ+$X)bS!nU*^ul{nd_UV9d(HJW$M5vEtkvseR_*?%QL}Jq z$>%o@3bvS7zPi|Od}em?=5#^j6V3CVH|{>dTF&R(KCasth$kU$NYT zyB+0J_5B)BsvOj!zhlDswY3_%?R2N@V(|L>YLo0<;WY(LtFHS@iT|}w+uZrnOzuNo z|81B$nE&@|Fq`6kvaQhS{kHQr&nQ@~>$%r?}7h zY}?x%VCWXSv(aqVCf^>Wf&i=4tNhvKD72S9m6(0tpI`j4L$6Lg{lBwM=DO1RzDGBf z^gcQB_l1yI(U~r96N`60mijwAJ%9ao`!X**mNw(dMIy;5`?j(K*(lUadUCinN&4m9 z9e0}Em>A0)ez&gXMUt0|Mu*d{u=}oWlEYtyoQtdW$Z)hjAy#(aVO4lvW#9r~ zcZ*+9+iy?Nm07UxYwaz6P9vKs@tafq(q)aAPGm0re5ifdosjMGyF7Rlb~rpcb>yAm z7Tp~}FXVo_z1XTW|Jku8J5PE#F|tkbzM88um5b}?4#~c|KO`S>Ki5##yt!^d)bk_H z%-YVMzb&y{=gaX6)mt9hY`PTN&;4c z?rM8~i%~RrL5u0+k)YO#LiSOKHAfqy=Qe&BD(;@D;zVf$^KUOr> zy=U-?^mdDx09dNl))HR>^f=WVoXiS3CThBT}-&#-VffWw)+5UV59n zXCJn+Ji-%rd-^WbT>%T9OtEy;yJTeB{qUP%T+6~3zBlXcU30EtG=8(_VGCc<`AD(Q zCms1pk`4+5SqF9-l`LqvwExbUf1HMq@t*8?p^64`Hk2_~URbg7`s#JNcGU+?U3Bxz zSLdLmmlm(SaZzqp$dsk_Itzu4AM8Do7^^-{JSZi7HZY9r5uvvU6Mx}8A^K%x)heD4$o3%4JABC<75NNf_ zpEtp0+MNCNCBL8i=hSF9sI}@4e`aT`B%8l?*aY>5Gp)CN;xi~b?K!umJ!;LgZ~P|8 zCyy>yef%T%g{Q_B&C&~3=5&2xJ?8K}scG8RtB*HknMX3d&}>|yI7dNmzVy`M#md>4 zQ=W4!y02A!VV8;>+n?3#iJCVTFf0h#J1s|k#@#2MEw=ey{l0Q{@{Ti#wk21Wc`>=Q zCaH#gyELch9oG@g%O*eW+}l_CA=z~OPWI%gl;bQnRg&CuC-3<>rz>H_w!#*U%PSRM z)ox8&cyZ;qdzVj4-}ZO^?H!x%Ja?OX+u~J~)Z*LD(QhB`T&3`CrLL;MqDbvRwqtfL z^_Q+Z!qGd!sOVR+a~J0^&BgvR<~+18s-O3QvxU2+qqT-9Htga7D^Ec^PZtKW_T1?I z>PqY$?OuWT3hYGz7Ph`hH+7zw_@`|@zD%ZHy8Xpc^}QchmVB#yb#s=opxXZ5Zx6pc zzVxzFR?d&lcP%1RI(#pQ7;oLDz5D3jrk2gc1qpk;_N82SKTYz!mivl-Z=HRne46s_ zw!e3Eqf^V-g@6AYo%Q(7kq@oErfC((w-}oSulYMQYS)n^$>&sNH+!Wmkq}NYUB1%3 zyrjoDYf@sQK&$i83%{P%N>wQ&`&F=qE?M^R(*>Q=b?XkUxi|OJKa(R4Rh)jxmGMWr z`GnI#D&riQ0t5FdrY{KRT)lq9OoLc|@t~FBhEFDao9X8NHY2TW`*e+~wkkQ3quIQA z+1lINL&EZ&)q1-2&pVP?cvtOql+KyE#^<-i?z}%eRz*y5&c*bgw`t`sK7Yxu<@{m( zRI&Wu)NXYz4WaeRch4_rZ+tcP*xj=W-@dM^VLZER+0MBtwwG<1c|`W~ZK_)$oZz)5 ze1dkn+JR1^jt8<|w-=~OJm%)n$qYVVdzY#8w&p{B;T;Am8NXkzOcE%XWVmt4f?NYe zzvbWN6eURti{JC~&Xn7w6@NW(*2bpNAh~;(z1!-RZ0Rf=joKT)Z>q9+RTA z*M{rwgp$i2WOUp-d*wUNvzvQP)`~yh<{%NQEoF4VWk-SV^NI$Uc{mW-@ z-7WJf^x7@jvZ-P<`wy=D0hPuVcb8oMCG=D0UwXqzcDF9p=j0=2F{w2`ri85dN{#1NwqW@1E4D{N}`$)ekC0#|2F|HBkK zwOM7h@)@4A;6*y;9(BL<%DHz)MnPbSLL&ofL!f5-d^R@Q2+zo)TAf!V_PqT1_3`67 z$|dhY=Rd38G28Z>-19Bl9_}wNuiri=w)UA_M8`*-x%%eDznSI+AM0F}wa&&-#pdSO zbM{AG9{p6O#=EdB{Q0!kH-FAQ{k%40w&lm#RH@I?jn?;YpOTztH}|l(QjPM*#72)< z-Or|`ervD@QnXnVtzgK&mDg>=e@N(H%@MBVLzb!`*}Bm>{ogkp(&7EQqQ@=b^#Yz_ z5wA0fWwIx;M2jzcG-HZymxWi>7THUWKjwZ;*v?(#BD62(UYGiWMCu_pn#U*!A63!k!dWP@m$Gp4j51lvk9&^3H9x$))_4{U_ zplNdN`)cKSKW{y+c*5kyP7T|~=KY^moZzcm&U7ic_K1y@$i*G^x#nz++mKo?d(MkV zM%5jce(XO{Dl7hi<4jak&MlT*YL-h1ud(SoXq9`iKbLzuW3wUOrA-ozws&1CkK0>y zeAU!@ziN5-{FQHnt~&`V)?_)X;j((?(*E62orVXVTWB0Djx}A?`Anv}GWxgUj-Z~z zaFwmaB5RiMZtb{cy2O7=(kk=*DS}5;p8fnQzxAxZISDq|8z&xQt-2U?Z=tW{Z8h&n zYbx(@v^IYbS$;cPx@P`X@sPj|?9Vz+p3>iM_wR4WycuolWn}knbe|z7f6(NHq;OY; z|13s(-=9hMkL_7^?sd*rz1Y|-6S53st{;~@bp8CS=+N&SZ1V*B4D05UoMCi zo#X70JL*0G%FilIZtn>b;ha&hgX2R&<;p10TJv*Pu7)hjd3dEEcXk}xc8yj~@ip$L zF@mo+1LyxSz5Vu$8?(BN_*&Hqh3DSRWL-Vu>h{-Pxi`2A=_br}O_`k6VXsSq4u(Ok! zWOT3m(4>Ggt(&V4&sy}1LnZW@z&`$soZ*jxH~!3H%~_Tle6{OHuE>(to(f#2FXhhN z{8mLkec4^}6P7uCwTEgmqdPmbi|>m2KV%60dFScW2=S>?&K(WA7x1ny{P^`#(*6N&j=g>@eP*3dMogpC+N&Ht z&dfY`W!*w%hwp3k?)iO^UEWk+8^H5DxX|m6jkL(v$IfSxJ1Cd zd}>nNzepzq=9^n-+*wj|RCDeW>+Y_2-jdTzjU7i#ukrA_S+=DS+<-`hr|C$+C9D0zC*+Q+Ef-%N7kd^*Z1GNzgjrE!MOHT;0^UPlVTm# zxHTWY>iKMo_t&5D9VZ2IF$#BZsSPUK4NVLz;ibDNX6X*QK8ty%uRz_fV=$7OlkH#_cQY*UyJY2bWV z^zxT9!yP}rWPO==O<89BbRUl^9@TD_51!5cocpP6>N@9>4j2FZ`T6B~#kBW&_tjLK z6T9zzuHk$!$zfKbVb=a9-@ZNHE3&MlFYS`z8}ZuryS2Qob4a)~_;@bgJazu%sb8E5 zulzo%yXA~2%h8@K7o41zp555i7Rh{W%l`H3tKFPF#MJ(JdTs{y%UhRbPc8Pkx2I)- zM*s9FvR@{P`yMm${a)X_>{ViF$=&>8-A5}PTL&p!W^<`td*AnQYFqp{ljnK=O+LG>(>$GL=leAiTXYF_FS|+H80RZWc9u@wbKfP6=J__S5GxuXMJtwVX=9+ zS04HPyD%}BuWnx5*L&@nDcW;#Wj5atN*Cs^c=1h7N1!c*=WH%_i{s?I=MLXWy!cDV z&X>3Hd+OWN?4vDu5AB$iYaCsb7?o+^7sl`LJ~U{;`CUGzf`#68rcQplG>_}p(nkSF zFHBxv%B~bWG{-ph3s-N4$DEYOmi-*htD5Yy{_-%fhJSPQTs-TMzt-N(Au1xy%3Z(B z9zQJ;t3GX^b+L7=$o&T@i`_GIBAs~(ubuWUJe9eHp`?s|;*6CZQ&!$}{ATcb--K}1 zttb3ety#Kg(UYWC+rDOQ<+c3u^7!l$-Ks{aN!eb=H(#CZ+G+_cSc_n6T(W z=o|Y;1Lc4zrT^M;=C69yzkZJZ>yl3=*|ujSZi{@o=Z^CPgJUPOxAi?}^E^_=#x!@; z*XLH3cLgnDy#Msr=1IG}{#jR_>Rch4##X}`V$5g$v25#YpFLsKg0d^_@Lo;a=kw@n z&YSS2Q<4u}=q+bC7+9r!Gfh=3ge~{c6DgUCF~#flFt4Aod@c8aMeEY8ZF$eKBxmx+ zPg)oL-8U_|6p#@!bz*+@F7;-c1P7@p!CNOU{pl3B;C)T$rqm$q$UEP>&mK%vKI3QP ze#mQ@?^0do+-P&DzvtKK89VO!J?V(|`xv3iza6eve@O|?*(Yr!P`O?jMmhn99 zm}Qo_b=~hR4>dfUn?=6=&YN<=>&wNRb0;(Xo2NcM%VANIlGfIwcU~@4A4B@CxlLWi z_f5q>{g8F1@1EOL!ctsn7vk2{Z0^gMf1YK0Wv_@%{j28k(^F^7TE08bk95K>48p9fwS>ypHmv{ zv8xKL|LokghTAKyHA493-nzG~{i;_a-bvS2AE;nax0iTnazLb~QMln;OVzaxPS;Nd zY`Sct7UUAyu(!tKWwk*`%O?4(Rc}7zi^zUnE!?yGzB<#)ebJ3&VIo?2O_$$hy*0o2 zRC`|9jUUGkUYVri+`90|y_FAtn%Au8o1z$!{Nsa;yi57JCi^$X_^VAO$n$^Rc1=bo zMsv<)?G>_LC-?q0FYsnA|8so3cB4aNw}+dz93tt3qtz6N^ZZ9#x|H<9*`?Bx*_MOyd?AdkxU-d4j zyFGbEE9RTVUk?3tI_1kZW8)t!5m}0}&$#avS71KY$v8JttMgEN*y8K;|4e?ieUgzo z#eIk+T;~4FGj8kkudhD)>HAh;ky!>OpZ;sV`7X9z-?xY5T8B=V(gK@O5yrLB6T7?T zf46$k?&KqwX!)i!u63J~wdBG|Gd8~^8&-+^-4^dFvsO(ryf^IWm75_Ut_6_`dIGNG zpV3$t_WIXcjsiHKr3kJX~g6O`YVx7x;3f z$+bBgC*N@A)V?X{VdUK=SScKJR7kJI=%dzAi<=GX9ETI8IH`Zuy!mUzgRj>=?i5*k zC1<*?fw897Y@T4&g$h$56>W5usLh$}xZ|Ua>#mibmbPlm3ZCXMb?>x0LSC&kPTpJs z>z`cza50f}@BfS*K#F z+yVXr5l$*ge>i$2<*t}kE7&(L_z#bs8?I~Plov3G#A)$!8p0gFD~HsSvzfB33Q*G!MP*k_^L?}S=UU=*Y zr*c%qt>c2Zue26T`NYPaoXioyA$v#t$R958?2C~*t^7|bcWgb)ebOrY_MSa+#cwC< zZ@hW+&U<5CZ1I#^)a@_`cZF z=FYUo=dEnHrgv{rZBOpcUh0vv#6C}ax70y_WIj_T>1RBrCnVoX=qo&5C2?s|V3p*g zLnSty75Y#9`~S>up11Z?O{o8k4I5ah?0aQ4ad@arxbSR+LBNZA>lKa8*Ld{PAJoi@ zzt1-<(*8kK?$cRyHqI>953ZCue$aWn&8-ukFTD(!vU_twoM8Ol&74t67G{$tSaf+= z_1;}!b!C!$sZ@CAM&3>TYeMJMonPPX_;aW7$@D(vtTh{M+kMHMXyE@XmH+yhz+IaS zL;lUU6#m7kW#{s%yD#jzadnq=_m>I(wfVyX(yI)@UcYzU`NKTsn`-(Bc}o`l-JDz0 zF6~(DsnF!~rDNyb*yopggRP$HJ};PRcw)?f<<4LRZY1Lms-^_uu5N{QW2YqKTU^OF3}q z1uo?b%?x3soT)KpDQ7}lDd(Lp?8vk4`Jwn5$rC#y``=cI6gCENb}}!JsqXY@REo;b z6tb81m-97$llRSVw#Zk3%*SUc{?>l}X}DLDCn53D{a2s=WEC0j)GYXz^S7`rbk8i` zdG%Wy=R24PcHew{@)LW+0#%L|-1#hX>WWP*fBh=?=KGdY{+4lsn)|QWHMii#{(T@snt789K&zjYcv%KQ#*cKfAzJEd=^6MdZKoG{dW0i>84F= za|{c=ep#25%YMx5S-YLz)%@3%V!<@cVxot>FT@8>`guj*tqRCYFrhn zB(Rw~xl-fa@t`#Z0tH=D|J`$We>?B@yHD3+jjQ)G@cUJ5X#ZnYEwjG)+mfu+D{oCm zFn#dm=r;c6?}QyUe(}33z@YlU(M(@BYvW4h=NC#ARA{R(7isL>`Ze(9q;nArMUJ=L zeXD!9t;!>N`}6JU;`6mjmH*^l+Wa-MQzYyPJDYnSreY*>*bBQtH~ zv)Yb{Ci)5+t~T2}sWC4$u9*IGPX44LFCI)gn4`T(UHtid?PdYToCQUH7BgyBIpnr@ zh(sO#|E=h6oQ&D~(B&J#BCl$@^G~@c(r?PLWag0#ZyF9LlwIp>^!okm{P|PUT@55o zxiYX_d!m!QBT9by<@cZUO>bmGbez%4xlnzw=WM{;*UUYgTaM4V&gyE=`1Fe9?OkP& zGLNJ-1l`>FS)rF9tk-^}*5MsXSNn3lbWODr;+@bPd8#E)_U#?h(&iw^!@CYI@^pH= zE9X;H-1hzzhR0&>e&v|5vbyizv?DG&y8ZOwjTh&>ov!WOu;}a4Kk1zZg}-_> zh%WBhm3GAW3;Tl06DEf6|Gd;U-NL(jfB5mKY4d#A6Q2cq2;C;pv@cTrX4LkBA_^_O z`H}b8HuJYHxc4D%Z~Kmgk0xGnWMh*%@W0MQ<`nzX0}J?*_07ymem**w-CosjYHj5w zg~T0~RtD~3I2E{}_ifJpU2BBb1h1Alt{BYs*5qCO$rbhQ@0#_j+F#yX`RwXl_TzF( zZLWJBdX^-1i1)kN^{aOttd`Rb3>GinxAL^zqS~Izr@riGIwJ9{{_&-^`(8wvU6f*3 zS)_3?x4-dNe@b%{!;jw+=3P&XXHvE)+EPX0Bs)}}r9_P;Lv zaNcV!1zVrJM;CLPO-?%dcvr;jZ)vBb9!_|d7u0%mhlqmbvi!88?Vi7Wb3fCbtd)vB zY-tKAV88{DftdxoAc75M+Q27|O)ZEii0(#u`%4=N?0bG`|AxJeOMPtXdUAi&6*xS) zWVZd1bAv;(g2RolzdvR3g=X>kMdb51hVo6E6nXyj?3wv{uD3Gixcu+wNeeP?f z)%Vll-Nla{k9+JHWJ*seRjqLku77#pkY_e|xX-v~Uak^^RGt zUGrbcmT&vkZvOON>V#mOq_uPY)qSZfFsj_Ou6ODJ1>>nwel8QT*aR1BHJ&(ku6eL_ z&RZF#x1xTn^Nxm;HuG4;mIO9loTqhhv%;zW5(_hal?a<_iw8Ds+}^*oC@|ChebV$B zBFQf}XB=vOT`9tkQ6b&<)VBU10wjhie^Rco^g4aBDGk+%qqvE_LFHF;*3`?<{2 zwO1ER`7Bs0UKnovzgq0h(x1s|d{^|yUlcq1Z_*Ss_t^T~GVZ!lIs9}In!4{Rq+N{a zYhQeM#=U@DPD#FoiUN!6+aK+{$g=Ut#k0ShEiGhw78@GevHRMj%NCCd`c%<_7mdH-+J1^;*J%i>iJ$by^_$W2 z!>?!f$$ijBJv4{Y@9QcC$$+qPQMcEx{(Nxx>F(7t_>>*AR*MIvPG9~i*Ch1BJB`VF zZ=2WdK58uE+MFm?x@qmP*9Xf?xcaJRMu+wD&#PT#>)qDwkUqg1$5o@{GR2|T&k z_N)Esv1biec;uQt|G4O~=lhk(N*sH3$@57^Fvuxaybk>JV#>5hCzt%@51-=eV#6z3 zxJuk8$?$a8#0`IoQ!^cka(~UO$@;r)rQ_F+?^jC8=3n5LydrJkdVsc zSEVceE&u2Hr9!uIw&*I)!v<=9{T45be!cKkhqbK#`u#F%r45}NCiAr{R?Siuo!E9u zN93*1F21(h7PCGtuCOKR|L_0(II%wDo=fQG4F%iZW+eMSqW(L~Djb))kF%kstNX zi`I7LhVS^G7Qg$#6&6Q{0>?>BPx99PxWqYs|KZ#ACYa?1s9XS*AC{J;u;RlEbK1kq zh?wHzX{2}YZ8sk9z?fWBftqs3M*TO-eA8zgYd`m7f|=E`M>nP{zOpSRa^|-G`y%XA zCdLIV@mTq;q+~-|4C4*{_52^4l^BEt?T+3*ef#9$CyEE(ME-pK$*j_NcFq6YC4X4< ze3)_O+2lX$GZutAm>?v?rn7(N+&Q&%hQALz7kxMHy292?UG>JhXU&=WzjVI*Dz2#< zOmj8)bU!I)XjkcaB*qjzxw`s#przQB@Ccb*-0n6U-G{{bt!Dhl`?#ZS^N!tJC$Dq0 zd@Q=|$K?KEWyKd?#rb9RPaUEcd;hdQ%CeYciqP)pn@mf#)m=ZJsm0xvb142mM*imT z_(R%lr#Vt*Kh%=9T;I=@aQ9-UL%cn+L-s^V*RzWLb@~frx9s!P&tH_KYO#~??|z|- zCI?R`X7OuXzMOvd=Bd=Rguk<}X#IZ6R(np|zMd|@gl#W>**iRZvQR-KW4V&T2CmrM zr};F@U+y{>?-DYt_vgZ^zwa8&39e~bQS$HU?Gm}rl?}gLmpX(Q?(Ms~>{gmsdEgyi z|I5Fp6gYkGlVksWc|nZ%maZz}CEq-b-ZzjBVO=EjbmgU;ye;7 zC;Kv%$H}1^Z4I9P{#*OO^t}AOxHaOZSFo)5OG+#dEgh2%MP3CRDDo_HE`LXCE$W zr|jE{wYOJ?=6iljn%xog{9y9V+LDmZcIO$-m4@D`-xzn?S&VV*U2z|elvM{y?7Zt9 zThzn(5c&I6>ueTlxvRFz z%NH4sx7hFrT~(Uk@Oi?H?GZ8|=YQQirW|paXWDhMOADq*r%K7N#i(?CakDmgBA|Iu zd2#!~<2lzI95Q%TbX{%v`r;J#n#-?CM14)dvP(?&uVoYub5*|aDRFPqomh8n?;lax zI${U2`>Zy$4}=!xa)^WNzX zF@16S_M7A4AGsH^C%eCD_HE1Kyc}`*zVP=Z#=<*-lXDVKSl{{ygv3`55|Fl2n zNnehqTy=58j|2xPUd>Ooc6_DLmIqFm?!Wr~=+`G@MbQr*-TL+Z(XJ}%xqE(0UKHE- zL@4aC{^Y035sH-^6007tTzMDc@At3D>~Gd98`SzNk!;^AlnAVG(o$ehF?JaV`Ge+0awsz|6b`gu8TQ|!2>B;ak_|^Wn?t123 zZ^NpO3;Vaac*HGTb+NhN($Tf+yQhZK&V429PZ7hJqQ-ONJFPGiNby5EmeyT#+Shzc6r@$$+( zkr976|GD|}n{$jZ?t~f}uxRr1@=xD9+f_woMe%Eo^ur4tXcW%26gpu1JnPuaEx%G+ z%k2)Pq=t1SKb2IO6!NSwVbZJPIiFHfzJ{fLe581FxAuoOy}$H&6_!5SZv4r=c-gBo z-sM6%ulN^7vD{FWy}s)0VgB$fk-u%WduB~2(Pv@Zq}6#V)UN8mg#^>4>l(Fh_soxt zNxeTyK}zwMLi_HCpMO5t&vEWs&0MjT&Ya zY*(d7`OHOo!<`LcJA-<@JJe43c(VHb#R|6bH~3~w_!(<@Xu_Os=M%QEU-j(*UP&tK z{~R!h`+~*H&#DzW>^)yeD7b1Zs#DddmI=KhFKz0YU1iB5c6!~lDwg^E9O3g%ZAook zmAcG`bJn*%g1;+t3gp>hw^k;tZwc!boDr1&v#R`G@wJP>(Jg)Y9>3@3n*YsFH}c-h zvF1>=cwG9^eulRfVwQY9ppjeVa`~Exm)q`3$5WnrZ_f@ZZus-{c(86x?=+E@73~Wu zq|e5SE&kbXB;w!NUa5P{^Y8w%+CRH~_sLm;3b$?s$R&hrf3CB6Zl8L8!g`-5d`w`qlx~Ikmezaf8Gjya zUHY!1e}-Joais<44<&N+9QvC(|IBoCtCE1lHzN8Z!gctg&eqEAjrECNdpy@VZo17x z_WqsA=S@BNcFCH_(gOeA7H#@rHdl1Bw}Z%!{>!&>y5Ak#G%@e@=jj*UtUD3kz-f4T zhoRJ-h^Z>7QSHX9&%Ug5b4aV7=jNgMbF1JY)AE$J3k;v}UoH=9>Pd@`j5{a3+5GXg z41-hsYiB4gEZ#D)Wt}5;aD4p!&yOXP0?sLYo?rRi@zvop+xR*iFGXG7bry#-c4%xd zKC|xj%bcCID;l@lbKj>a#<)fBxsjTkn$F6C6&35e`B>Hzi~O2wAL?Zo$$ho)AZvT` z%|rFa%+kMWvSpfQ4YIq(CkJx!J}> zpLPxeJI4g#9Tew)7ipom2R0-^2ls#mTEKQAg2x0DUtlp<_<#bGKH*~u>bZgKMsg24 z3Zd>X1@-0V z^lSzX3q<&Uo5(2cpYQ0`fx;7dR^fahZZrU=SBL;)A%r;T^_m{INa_)#t-fDkZmNEeiGE0szGq5mUP)$2rM`cFuY#d| zu&;uFo`I2_9c)+zTrfjT2{PdVnHhv63rgBBSz~i9V{laJ2N|1i8H1JT2N@f38G~FN zq#tBt!DR&YpMH>$DVGsAi1dSujJS+Ig+q{jkf9})A;?4!(~Qdy96PykZPEKsmh$t-aBLM^kX81~?N zO(l03fs!=TEO7G!)KYLsElw`VEGWq@0=Hwpxy;GOGu+ut+u7GC!q5mT?BtYR5v^-# zte|UTYN%jnXl$uqZfXz<+FO@itYE^W?^v7+YDAfv8gS`5Cl+|5W~OJ9fYfm5gKPlF zfwXezdzK{TWF|Z2rRSt77;xzam!#%~DHxg?aOwMI78hscrH5yxlw>Fvo11d!J7**o z1*ev1=)38=>xbwk>L=@`>Zj>v=x6HZ=;!I@>lf)4>zC-4>R0GjYC_s!Zkai$#tKGg z`3=m6`aHNasRYzG1ciX1Gjx|A$Rn^#g8Hysgy0NrX9r#VUNL8GXl{tebJ2M>6Vu&T zCQayTOG=yO!Zc0d<6_t1tSS806I_)uOeVe1+i=KjnyXk~z!T>KclYkrlJDv|#KppR zz3G%*$Q1!!-y)B{T{E^N`TK4CI;UoajLkE?%9k5A-%zpjtp9rEcY4~p>ige!o-dy7 z9bBi?we01B9ZNe`Ki(Sn(X%i+?cAqY&dJW1m0ezS(<;NI!Gt)OD9*{+G|pG1qq!&Ng}?dHJj5ES1{2X$O~_50Beq zs`;#BvEu#@s=hg8+thAuKfK7(EP|(!wXNs)@nf@nch3IITRBUmxJ^;NebI^shvt-Q zPIR7kZPHeY`#UOAx7BI8u3b7UnDa{Zlxa~uO9KS2cxg@SS`rrMz2f@H_+ZZvnXhbL zw={KqTD;~;tySy0u+~*vq2@DQo-y4&{jXi9{pxc;^OMy#ao;G8*<@q*Vq(@&2G@Hf zr{$|N9cE1|KjqJHmHqn_KBo6id$z?+VB49{oT9$|u}peG`_-t-?OrKNH@)i`WnXc} zT}z7QNjuSaJz=tt$%({E5f!1Hg?^!)9tU^z-g4c*?X_Ubt(PxWv`^l1`;k#@kHlfIDicyE+Rk;h#ri8p1DVjWA~K4*-XkhAv9B=vGl4dw#FU&cjZ zegdz&7v{{q8yBP+mUFhYlc*aD z<~%>CV)XM~$(&BZ`u+U}l?o?`GRkB7@W*WZ8qM0UaC3o*QFWkt>JTPeS^)npITFj!PC?AO$prXsc2 zVAcDF51nr>ESi0H*W#dCTU0hGgm!XlPk!OL^6vSYk1d|Q%Chq!qWp2losf=<_QZ_96*CTN-em7C{(tyqvtaxyo;x}_vJ1@o z1iHPoyB19FFBadrZ5RLdIq|hRU$?uh-4`*D@$jUb_EQh~2d~!K7qKd4Pi*AhFU~b= z>D4m=|6lxh=tk__!yBs;t+w6m)G0a4aHn-)W_DNe|^1Q?9=H+3YxuNe)*%s{jQzG}`XZWIp31=_0>7PwXoqRWtrG_!$v+AM3 z=!K60dWEHC9VwUkz3E=FvOp2z{8h&%{PTUM>%L@*@Ud5+zw5Tw|EzoQ+=&hWYa<@bI$bc<#3`i}UGD&N|b`u=|W|7xkbPu-iVLi)?9 zo+ixCZ#lX7gJjwkp6-_YKX@FOr4uDp4jCO4FwmLP%w(|qdG5`LvCG<1I&5Z?C@(($ zY2l&-3Co(b`3WDMUH|>-p<2R%ea$Ksr(f4hn04@`QX=1Vp55l%+>e8Q#piam3T&FZ z$K}vTwn=T5Pnc|p{r7rdquk3Q$G+?CZd~79%RA}Nl=MC9mil@bi`u6;u~bQ%`O;aw zYP!!+5!>v3pWdD=pYr)9`{}(Y`={=_SG@fQUDJguSpWzXH26Q|{xNLcmSF26I^R>@PLv#D?Qm-wzdT)AFr*^Z0ORBJ;gtvY`|m0ST78>V%;I;T z{e$M6Po8#O`-;1R>#iTWB6u~qw14r`{WkV|S50=g{MhNWPW!;E2fz500&Ks}yd*f| zT3c~V*^z`<{smSw;XA~?3vzlZ{tGqy^|&=x_U*dKy`t`2-@4!J63bxu=hdG$Z_2re zktyG*4!J1rfBI_v`KqefOL!OjcC$IZE9>Ek)iPa6m-1yaq|Lh^-ulw8Rr>m}o&P`h zFR|KxOWRH^<}sh^V|xLXCx$8i8+YB>@7OWjd*jUmD|%F9XVez2z8D&s7(C5)ma(o7 z^Hn+h+3R`M#uyx2^|9l%jN9atqqCH~y0o>PId$~?KJc=|?`Wh=fluS5hG!s`*z7;_8>Ecm1m~^ko$G zyTZz%a92j)1qa8X74^()?9ASv<~g)7h4v22K~*fMUN*Eag|Epl1U0uog0N8uT+I~k zz@TtHXKiQS5Klt`q-Kh-DX5uZpkQcdWCCh}#DZ#fQkp3SxSA!a(>9l)Re4Bw^x3ytYZHs&)S;qb$aC!p)J{l zRZqe-@&y+voNRhqebuzhZSl8&R?n?od!wdqFHGK-l|A*?3SH}fwOTd_t1g7d8l2>> zx@v5i8r8eX$F?gg&ax_Bk4=j*Ib(emCUo=&vx{D!gN^eY=Qm1a!j>-E*33Vl7U2G@O8@ZkH+$~ zJYVM5{C>s#{c)>q>Kxb8w-?U4cfUU4%dN~URu|qeEN8Vjn|CeIV9h~E|b^%`;lEvodVj~`wE^GPq?t#(?mtr^J~q@|KHc= z@1B+vRP6KQsQ?dCuUNqRt@aD!|DVV=IQnp@$fcW-Q!amhDEgyiUx-bor7zM<=pMl&+?|<`?mJl#b*^sH_x6I>?qD?bJ7kFJN2vX*-63Dmcv>#GY@ua z*mf*ja6^w}XJ(0&aPGo&to7AD?)hpLvP~~;-m~#e!RfFWZW}XQwK`OuReikTTp^hD zfvcwc-F>d~3ra^$xZgkgNa0=LDSof%=e{Z(U1`2ET(6Ihhp~2BeSKkO?7DRwtMC1M zv+sGswDonR;f5ZYm$)2Svt)+p(tjt9s2@K%nMwCp%eoEL3D?6vEqGkAK=iA_Zk-DW zy%oxLSp9!+Txq`h_=`osu{+zA?$Ee;RqQ+0*9Awq>pv=eQM1_d;9>5j?BZHoYyPOX z4;r#z`HO8&w6pnjD-`q@! z99)>I{o&N^kB=)Czh1xicKW`TJQj=iwqMUK-VlA==0zUUFU{BY+v9TWg8>DH+;?0)$)E_z|=CU9Qi85hd}`KlT>DzYHMf9}k!eN)x7{`+gOIjJAsXCiv&$P}NW(n3;}y4#cIGWjm7 zH!!|pJu%IB@@<{>pDp(0J$M;rDRy&~OT%AdqZ5`a3JZF+G39^!)T_7cqv7VjvT|e7 z&ZLJ2Cm3*enauxXxKe+`Q|Suf=ceh)_+JS8xoh{$^~;VMx7EbGEw@k4+T^%cmBm*0 z!G`LCFY}&#kS%WJTk9jNk#DBM_2`4VtHd+62fY7yE=-hANh&iaHhUGwA^)}c{Qa3` zMb-ai@bm{cy^`DXU!SYQWa{Y}zf#xwsJ)$4tZP4&H~5RytIT1F zS|cCi%0kAoVvdgl`7`NSx5dgtEyo6yFHvw z&$c7*q6MeM3WxlKN@|MNU3-2u9bDq$@#~n*JzrTy{vEpW%)*^_IVQeHD}FU;^M3C~ z`!rU44gBF?;vMzjpHtbvJ%8rC`FYZ#%*^o*fA=DL1}s%Ds2%}TK8B{|@QD;dq){4B zKN(!Pg8K33BLz{u&Hj+pg{=z0?_GOd8zs(<@x$0 z8AYk7`f2&4Mfz!(WvTkbnHBoQsb#5o`rx4r{k+V)RQ=@qocuif)WXul9DPS7p>svEI-tDnxk{)R77TKtu){4?YCYkyvD)33;XSkf+8|7F(Jif?mH7BA=7 zoFT@WyYP@kmep6Wt<6Qt>=va3%=I}+(lu5dRMZtgtpF%a`s&o zvvTW|m@KZXt+U*Hmu?Gsy(069*{RMbx7_8|f={p97$TGE&8u#o?cTfKjb?V1jOipP zf6E{<5qHm(hF1i-mbP`Z1$A?*5b@m^T<%&Zmc$+3ZCBX!W7$)s)7@dO*Pipb=EZm6 z@=K>E;!eg^ZQoViYI4Erlj>+2`U{7mtLmKFVpU&!RZwI+of!#=E;MnM1DT& zm@4nAcEqWs)zbPtOR7(9O=Qj-8`U$5l|LL=`mOl+D$Al(nZITxJX>q^L~Zsv@7L>; z{;%G4NiC&OZu1R~YK;Wboe7)2Em_Bx#i_*3;u5C)UGn?fpEq&xq{(3n z-&z-(Kdz-iQt$nX2IiB;3`Wk;g@zXE!j8Ma862F{F6T5rXFN-c|HQ$+K9H-OC zbRk9MLB~GsG8K;JG3EkoafS<>(`Jj8U-)_ablsMzpEPD|Png)2cj;+qQO1-fg`fZE z%D<0jIJ${F^UdQ^tEWHIes=Ho_Ky+k&OiG4a&_j*^XpgqZ)3T6|NYO?w(aXT?(lfl zlE1Oyi^IPKQCk}8ZW$(jb&r-+<8$IS{Ub4%o}-RlKPCY%*n?#$Gl?;%n# zFSJ+Xdu6KjCI&W7l^q-NU1l*|nUFbuj=M(ZJC9QnH-~Of;pM;kwo|g{Wk9Ft`k*Tx zjD4MKzTX%8tf(==HCb)%5#oAE?;&t6W}k{c8DYOTNF z_5H)*bDOd=Ojcev<+I-7{Od^{?Jrh5%0BckAnMjtp?9ILt>pM?v$@hXemR+3;=UCHgDRFh375m!@t9D-~xRPOaql9hN!sPy&iw!0! zOg!+#`>euYnO8?M{NLx8t@T*ktDaFKaZ5pywRu@c@X||J3iDpB{u8@w>SfEBQNG(I z)vtfQ@$SBmwQBq`gifrU@-enVwq&1zlE9Li3;Eg-ZY<;$3VF=B!}Zj!X%|=~zUJOP zeRlP7;iZ)a-QS6S_j@0EW}5RnC2j7Y%RArpG3ws-^I@)j)ARhH zI2s)hafs_;no@1LspQW$7Iqz`G~0V+40BzUU%19BK5<35THSSp%c{+*SY{YqkWOU| zJP>{6g{^S@eZkn|%eA6Y?{1u0*FA0V@0`OY*R@SPaA$`Fd-Ov=Z83{qzoc&|r=E1X z(A0P{XXfN94}Ym2TAgTb>!>ryueM89yt?|-ut1=AFTp8uwt4m+`)VSJjZKp9u zkGArzpSt$1l)A(J-sAjPTy(2`+0-wEwO!|z@*hinwsvKOj@;iLu}5OE?e8Q^dKswE zeSe9filUR;DW(f4-XCw==q>WUlFgTWKcWch^jQacye*_ahmq z_7h!&jOCgnPR{R_w_l{++7qN_s;$VnXy%PgJ9f1NIhSTTT%IQSdHbG|iB*9wbZb6e zjpWa?F8z9eZSDm(k!C@Qgmw{Wh%yu>IsQB_n)1O^RcKM|v zOPxf76YnIiTA`Vh!;||VN^Hk1?U|GBxrmue`#Y=P*!}yx;feFLw!HjP9?G#Q=RwGw z>lrt%pIx4_wBGq*hNiW6-I`UG&8A&D@u_>&tJ@7b*(WC{n<`c>N`1LwnC!A6dTRu%Rcx|%Kb5_Y)6W-iS%V^12p=EC1(N&*#KeqDImyOM9-M?(|S1q5YdZzeq z#&3~En_JwAJ8qTFy10?K>GaK*=6hm2e(#mGy}ywyYrfCOU{YGG`Ne}}6%4v8YZ89h zYUE8*JRAFKJ*(p9RMQnoQJWI-KbYjnotnxsrR$-PiD*{LDTCuz1fDBin$TkK@w0aB z0b|Ext4GE6W%B=TPhW2MyV7;j1GoJ(?`zzuE-x)8{rI!+?AEvC6J5`( z36Ndxd)vJry-RU<(6=73BkIAtD>dh6W#>mtJGK8F`!|8mE#Knb3WbOTs!um{yQ;n4 zCoQgeQk|iADfcv&GrJedeA_OU#8_da&T1s}#pjc>=X>q{|2OFz(e1JFQZYH(u;}a` z>on;_i$7O8Nwsb&`Y#l%lmA(lB~AXx^ivm%eg%}Bd+yT5Y%=?5;sfr_iW4F(y8YT0 zC#djy#4-z4=-8whAd}$L5Q=JXMnnXpz)4>Dafw>)6$fiHjAO@@Id%oe{gm<*|TS zqL-NRe>w9D6;BplnfChYb^YS!i_9-Cxy>2D%YUkqS!5%VtY_C^LH%5-xOECsKMO`3 zT%Z1th4K3N@0y;^X2mVMy25txYBkgKl?-c5BQ4ugE~Vf6&(~L zJ-yA(CWS1V`PD2yx>T~Zu+n?&+AnNX=WcJT=()M_%6pzU+xM3}OEUj;phdjuNl}!l z1~fNZ*l$ABQj9|0Zq0I^Rk2 z%lmadx2h{@{uO;G!FTBTg+Ht9U6#HO(fj+?bpJ=IFj=#^%w@LoGIffzt(%Ns(0r?Pm86L&Ud-MI0=B#Zz{!7IV`+T{l?*7U?`vF@Ib7FI|pyjr% z1#C~hFZd%>_`WBOeH*{$qm6TB91t>DzlGDcnQM|MYgV$DhQc((?YCJ^<`?c;IH~M! zv4vZl{(`x4?o6-a_TuAsC(aWPG%?m=(^{bukCz@)t+?0V@U}|1=zy8xD)*izOt*d= zijG;^@I6`Uyuc@906Kh}8DRJ|u+H0fkg%X>-r-~ae?-u&-f=$G=<#m_D)`do4i%*|n zwM~iNA26Z*WlH-wjX8=jQ<(&h9JP8msns|ni%VnzQ{l;#FC~BY=Hwnfe(8V6wOJky za~l3$Se6;Qf6`X*FHbj{-+xok$nyKgku?>YR>l2Zd5(kk!h%eJFxCc{KmOd$h5tq> zn$LBg_9u^tXOm0tyRM6oCNpd6cb^t}s%0U6Vy@P$_}fB>9TVPreJk1X?#|~w$F{EL zPQ6vrbeys6zQgwE2UM9lm*0wi%y!R!{f}ov)C=_qLMqY;=M~;K&Hu~&vOwE!M)&Mi z?bDoZia6N$WA_w173h=lRumg0~}KeTG7gcGdMw|C#<>-X*m{(Qfb8(on%Dnczi| ztrD-_$(!FiaCR>L#irHfSvgBRxk|qK=WNTLTdrCEe=mqHi&)xC+##-#!JqlW>>kc z?%J?)_oD4h>YtAvzc_uJO!n(FPmC@&l?na5_bFD+x@MODoVPogWr}uQFWDkA$w7O9 z;nchJ9}>b#*X~@pcS~@G=M*a+VON8Di@XJsl0u#@cMwu}>w7Z9N_SiIpPnr{tWIog zzjUd#?cdi~rms|P@aEm}V0@gt;A)AL{n0gZXB)4$Yxefe4#&OHC&af}ZQeFbV1sk4 z?gN$U=_1aWGo)te)!lqBeZ9pN+xWmaE=lvJZBq}D*!kvq-6CVbRX?D(MTCq2F&nO2tbKkLuxwv1E3I+1UlPMe@|`LU7M z&kHWjTU%4x?JQ@<^SUooU3F{!HTV6TH3|-IW!`PHzG8nPG$V3#a+GKP(sr)44FDLU-^qHEf9La^o|jdoFDqv5oiI=3aBK0KUS9UyC zpThd$PlC1bUu%}e;-2!Jc!w$02Qx3fJmUXVYH!<=U&}ttdiCnatOrjP@O-ZfUoPaE zH1EHtXX~0rscu`oEPc_*scYJKvE-j#wc@iC;Q>x5At9A1-3yl}OqXDr8@8I&js0Y# zqU7o8mM4RPPp%B{aq|oFdpOsA;X;{PM&If`N7zUGi4HB7+j8~Bf!ZhE3*Od7XUcDK zzQ5_J$tl;xQGQ|N8s#&0*zS8E7`69!$hP|X3%TbV7k^|}VUt!k#phRfj>8%E{s}+Y z_fL4fWb^;7qpO*=z3q8?!QhYSZoWf$8s5TI52c0XygMfUe!48Px^cK5!|eq2H!W{F z8xzmHo4N5&gR{+(Ln~U{O1ALI8h2cnYG!CJtGa1LU{DYzo3o9|=>p}fNmCqBV`Pq~ z7w_OSzj*SafOt5ks*%e*&q<2+5*kiTx_{=+nU`!X-?z-j$%}P-Ew@hf*n5^;&VL?n z+#@0{x$c+k#m7fYwt0GAnqa>nT)0eyS$S`ByOQ?F%e!;uzsc*(GYCj)$e4UqPv~b z{wng>{a#yds_4^a;yeaR%T*FjcHU54@y+86XY{2XdJpbKe*YWEzF^MIACAUe zcmK)u%a$F+Zxi?DytQHtpV7Yg{Mk8Q+>c9gTJ`gpuQS+cx~px+&3U~KKgX!`SAYKb zYW~El{N?|yEwXrZ|KL&S$y|1M$!e9Gzjn?|JnsDZvGw5u+s8XfRv+H;bpBn-`xQTb z`yD)Oy))0@+;h*|^#Y68o}8I?TvYmZ;hOx)AF-nLfe$|2YCrLQ--Pc;C3ATf7M{BO zPFgs&lwE13@=xBU&t?Qw21U%e|H|0zzVO41ZutuYoKjN`eG%Vm{@&xmhetIwNqZAD zo8A9ca&6jk<6hyuuEUG%QYIgeb<$Vea)|RqlktVjoVC`48+Oc;IJhkKshq3g&DRI! zM()UdH7DHnxVPXQk;P}1-)x)l>cfW_Gd_HHHKVQV)vLDa+yO@(NZtFjU+>V}Y5yNN z&a3W};Z-u=^xw5%YiDU=;mPW$UVe+kI8LuvsIuGe{b}#{C%agzUe4Te=8ezML#h=k zinktr_^fMJl;SEC*Qm4Z9N%;H3oSl(&oIaIMUv(6{^t%I0grh;XwF%c`l};3eCfGI zPAvLW{I^cLj@vKJyD)tvS9B`#$?i9|FZ7r_>RQ%aJ$-ThjZ5K`x4(y)ItcUfs%nqu0_oy=!Ie&wpFQ^yTSU*SA|aw>rMey0Bu$s`KZ!%wvCc@S(j` z&4${GY3h>qdYVNK8JHiNw_Npa%g#OtlZ{-wwcjKac{k1ZFH`%W;3Rjn=CTWkUyQ4F zzx!jld7mtNY)?;{aYu)pCoYj1HZ6$t z)hU*nlTSYXAamef!*rGh{U0=PCL0ATn{qR9C+qk94ww9QPCl`Sqw}Hl!Mp3F47}5( zDEF`g9+>L>{m7rRL(;IQF*UolMavn>o^ ziz^7Nqj2-_4f2oB22J81ul6)H0ZrlcqRri_2L9xT>+X&Nrldx6zP|sudx8Fbwyrd0pf!~h@`m^&@>qGT*=m{*#RQq zQf<34U%b=Exbo$g#I|aU&FjQD?kUD8Cx2j*;OyAc)n{-*AcIXpK%aw|>r73Lf_Y#| zV#3VK9_`n>rV}*`vjW0;k3CR3C6vE(g|u(vJURZz?e2H3T)Xye{#vin@BNprKCgNH z_ulsT&O-0lyj3=WO4wT z=c@joq|&Ivzsf_4Crt`@xK8rrs)F2IX1c-B-#4wWQjMIScwyN}r{G6hGL;+!oR8jE zFvTD@YJ;M2WpDn1`#(A-b0!%YPM7ek@%SNp@QC}7_njU}T^!0+TEst!8FolG@hDp) z%~0x0;1DiskMW#W#9jJZ_$%8~=ecF`-~BtIeDbk?ZD*WIxzXksr^Hh}Nc~+Pp4ar* zc|uCQ_RXuEN!FT`oLWyF$XW2r?_dwhxqdL>0^76o$!F~^-mt#zoT4`^zf-J0S$Hxx zcjd&)O!6V|5SN~WAep@0~{`^_9&P*-K)_MFqd`d@GV{Y;5viFQ9UoP~>o}z9Nq;c7@ z@$_ml@pOjnzb?B(|8acN&AHF$)*`x3U)N$~#Dj*(f5mxT3VvcE-M$4K5R+4elt>%8snKBvopX5T+NxSRb{%wYP5 zpRLl{o92m17iF)xmQ}s^-o~m`FXnHZYOdUMO!=R8mh3eB1(I(HB&DXftx0b33DrHM z@Z3OEJNMMy_BVU`lyaujT(q40dUJQ!E_*%S|6Sa7Gj^`k*}$LIxI|~d86UH^8G;j@ ziWToSGIZFma2Ai%ff+B3`#Vi7sn2V>@IrRNw0B4B*7Uv$U!s!I(!#Vh#b5o?w!n-w zn=WTNp>K|gl3Q-(zuocC_02B1J?#gtgdRRwTy4GXLwuTxK~|u!Isd!2&!)2Mm>-$D zX8QeU9us({yy?y>7TtDt?elKYa@Sxp6-Tw4rm1?H`DS}fRuumkF_X`k@;(Ar)u(;iCT(i_5%#t+LGber#YYzm_PfvMikP_UBIh&@zN~{mp_gwIxmfY#e7-Cr zV|agsXT0_r?=IgczKIhy{5cuj*sCMfirOljNH=8asUFur5y5r&RjgvCV`SMgA zN?4V3IL%)?f2Y}R^WzWl-<)mO{BLnOTkrMIS29-nvWhqUeEnjh;pykj0MP-xA~XPFN=)KSL;qht=o6jZF)t?PO1j_p)a+U--7AWY^Q^)5;cSA6@;S z_1#cs%~_|Ecable)<0y6S!=oZ_o3(2QKBmI%&z#ZcipBXG={Db}D_v@+Wp< z*&kEZlW+E144x+2nETatw_Rb%)um5n9*8+|JvPVw8fVV=&Yk~)7e8;&7b@U6_r+uS z$?!>{5g#V)IpwwJ*ZzPP>B|pXb<8ZQ6MXXI^NzjwYuh`rjv0ScOP&8vrUEc@1nI%;p zv;-tizf==>>k4S`D^j}!#0B}Bq-G0v4;u0kkKk&b;Bblk+gq#GH>^)JHN0HC`-l$@ zb8^W_i>ZoTN@1J|b|+Y(wD`G~MqJ@~7`kLjy!O#;0UE4Yag`klru1lbiO!YObDI+= zzAUZVSZceD@l5NZ&d=5r>v>Omv;L{~z9)0$=z-Ji}lTYLRr7-bL{)W=QXR_ZeH)SbBae)BVA63M%Go2Y*ND(hRj=fI#e{}WlM9^tVMy(R+jwI$XpYp>sx2LF@DyX zTkEy#7M%JgY~mLj5V9y()cfhIoX|o=M*+oXu29R5JEgsYHghOVy5V+2cy`B87bZc! zC4%yTuR8)BzGm@#qoQ^~bdlsDp^L>E1OJ$0RA1;{f8vCDaoS#?qkqg8|Ac7x*Ht^q zNVxC{*`{*nAAkQyB4Lrn(vxMgxNF?_Bj$dO(D&E$dAWeWbcw^lsTVH^_ikvPZRh=d zWlKev^ofP(dzI?<>$BP^lukDPt8rVOPscr6b#W+v;fbuHVX2bY|5^_zPCXd)Yt~~A ztM=;5sT<8EUcEH;TH=G&Uouv{JpSrZuh}i9c-ikXDtz5%t2p;)+y5%f2WDv^k~S-r zu&yni{6Tb;;DYCixIAlZBMzRlx&M!O*}dtt4e5_7&nv|(SnyC>_IO{z%40dJ3^u7s z2Y)VeP)jKj<6Z6kP-;%Pj_#!7jEm;WYYK$VsYVqDC?~{x4|#MZ?90m!kHeNosvmrA z(RXQm?~fxMJ!YP_PW|Hh-7s^H<-ZB$Ke(!PuA8U$yl_Q3+lH%>XRo?xq@I$!x=w8O z<*Q-W_W94O_E??B?f1;$JLBf6#Wkr#@qL@Sv`>g?tYcjpT>9%kUs0=2nPK7iO9HJf z_Wk!qA@G7oY;8~LA7In5~e_N`O(7Y>8M4+}0#E4KL;y2;|6 z{k7Y--j)`tN6kHCcZS);F(j+zR#KzI#dnn~A2NE}r|)JFUJ%l6VPLY=%_w&1(t9tg zKTO|Ovi&R9mqP+Q2PPb-;gn4-;ww1uaYo&%6VnUjo?Hsv^y-gBnPk>Nzvx^$F;5K< z#@0W4Ax$$^m)x%_|kZZ&H6Ua*nl{OU0ML)rV>&N{8#^;MXw zZUakk?wYMkK70vM2VXr55PfSH-6wJOS(lWV^S0`m+Xtd%^e2A^l4%sR;I8dZzWD3+ zvmS5VyX;j&}`cKO@vl{l=?Qdm!RJ)uOeoL6=w<=HK;RSESex>ru>P`n{<_Uc~ zbZpVetCL<@UrAiU`z=6k%c`Byu8r)w4(8>pZsxjRc)7X6FZQWd*y5#bI^w$G513+1 z`e#VSIj>)nE%Sh>*`#9O$>99$CESxWgrc}&E3Qh{wl+xIS#jlVU3HMh!|5Im_rDih zoOwm1QToDs(;eIOFV9q;VH-Jb!}jA>9$4kQw<=umal^)IIqM!?)(+IAnBT&-pBslZ*gBYUF*?%YG5Gy@0sVjF1wlcqEa-%4=hbITN}K| zY2L(L+P}~2l$-v)JNV6slN)~phoyzBtkyc#yVutvd3nLI=4Z}-7Up0&5Lo{oT>WIb;$+xdl?Fi*Mk;)Z=ADMd5!1vSep+v_7(TO zJI-)wQ)~&*mGv#RzOA2Cy6g7V@IH=-w#}Q;Q*UPNbmjV6IXSsI?)fUeuCwYcxjQ4` z8#M)X-K<$3{rZLElC%6idY|@uV~UK9k9Rk_rE%-d+U=9A_MUdR`DLBchDmSx@{FHK z?eQ^-TAOk^@UZ8$K)NIqPHRamvc&QWE=Jb@|eWvyT89E z(N>ytRU**9we@C%;Wt59_t*^G{t{W;ReRpd`md|3Qs(+M&&gqfe%<})-S$V%zxr@m z{CD($gED7!$^NU8n)AcJ-auc+M}PfRm9uM?S?l$;-Fwq)7onbqun}H+Dg^_)_!Q@{w1X8H={NDM@{~djlFd#FMnOxziHs3fkYoOVOGtvrjlYITSAGAGe?GX_BA?h@B`t&v75^0-fO0q--&Rc!@ z*VT_7SlDgOZ4OK`VTjxQtRU3O=%1i{#i|3sA3y)gVGL2*UEj{*da zcmLb3!MCDP?~tR+BW0Pxvg^7|dVP0caAQo5n3iZ6f5|(AHS^Dg1?qA8`EO{co%*y; z!AHepl}*>%w+2lap53OIEVqjaL*E4Z`yCFs#O&Ns5^A~q^V8dM4>F%#NnzZ@ePPKI zKhNdoJ*TVOEIWMg*fAq{smC`R7;1D9-tlb(or$X=&+Z3<^U*Engu z{Q0QlWqNsA|0J zOh-S@@US3lXWx(z)V0tGx<+p_4y;*!*&%;Ie5(rDIEQs<|#9sVs zpkX_@K`Wpu(bhj3g9bE_izW~s6h|Z#O`sMv@|a$4IA@4R__cM*7VZ*Z713_83e8CJ ziCMguZ;{~xsgNrgO;VAm%NaATwdH;LYi44-smz?|Y*s*w;Pt{cjkYYk8{}H-~D}W@BQz0*R!-NWKW8wt*x(QwD-qLZ{oT`SbLeO5jjZYuarN&DUe;(^Z@iH;`=85< zt7h*F@;#SqzaDVys-oj>r9*pF!}t{A?oCQ)Qh1g(iS2za=f_*m-);_lB>hbM-G19c zhDHWnZv>xYTK_(6TfBVtnHl+;A2dJRZ1?L;a?=d=H)`7ivODxU*B*&_#GNF&abAQ+ zj=G(?3}iE{n;wLXzWn}QMN_J15v@ubEZ&jnwwo-?8#+x1; zn|StTt8dPF57w-D`;M-ZYY#&N<@w!T?+}~2;E}rG_Acd@Y@61!^^37>)RA*Or6QnW z$MAH`w3yz%k86UKY9^i5F zOKSDZ(3CYT{IT3i-*Db}X|~C!Ud=oEC%4BB?i~xaF8SHH?{@pSIoiB84?WP(zxZIE z)!%)Ui@%>dA#UBj_Q##8_Eu5z%|qMYy<)l0d#I{)4!_WaTL~V$zGr&85`!Ku`hJ6P zYsuH%4`?JRjN#jB>%MVc=+)p#JXG*xL71`MQfQ@YIlM7yN;eyry3-@ z>v=;A=V-1x$t*f0aJp;gf``AwB#%}k_hx)qn*HO)J`bP8oS*;q@os$hr~d;>&c6~p zBL_DB`3pOFz8&z+ux_{Zmn$#5yQj4Fu=;1&oVPa)3iMfh>E)ArsrISx(~n7~FXS)J zjGwUG&^D!#*Tk%)X-?_WPbZFDQTlIRmMEBcFHrtLC>(3`P)_19CT(RttOc3&)gTy?z6y>{V7mv*ri!F;BX^FPXMauoeC_4M;~clYhd z`Z#B+^tHNI-#>^n+nd-tD%4rYsi9KwPh_U@W!L>a|1X7VeM>((|9bkgs{ap-m~Z`O z;VfDaba~w(&zg;S3s=o{%45Cdw|eyg(TURa2j3??w%oiy)2#BN;-ZPJzZXl@eqMS~ z@}g$Wk#n-1iV57?mM7OQ5ea{JX`Z%t-hs#$Q$*?<_U0MRS|GeY^6vS1p+z?H>`$bK zDEr(xng5@Q*QaXXb;r=so!?#+b;Rzwlxq0cB%5Pa)w(?g=E_gn6fiGi>mM#zh0|H> zFaIc7PDz=}m->Rme0QLlf2H)4liO#xgq&Zj?*B$EQLy{4d!ISaiRQTJP5f^CEZj<# zJ0GrpvN`$noH=){pG{mod9g(MvGT>G_P%EJjVc+&e?L!6&#+m{vASawqt{}s^}$Ew zx8Bj?T4%zenp>Od#`QDFA3e% zdX@|BtUqx(d~Og+h-;~5ZE4BlzLvX@|MYTlHpWlo4)}cShFSE;dJbWlS#w*LK~tzK1(&WFMC%-A(x{ z{(?tq!QrWamXq!zJpCnP;d9l@)NXIQl*p{Z8cCayr5Z0?p8Hm8sk0(~6h>R@Ns)$8_rhcKC}l-7N;Q0wC7gHe4&xJ+_kVo5v#)&3cA+bE zjFA%!eWo4WcBEiI*rA)V%&V%_=PS*+v%T+nulkC~vz_=I3y*31l6dH6Qzydg*V|CY zmie#gw8<5>3@0ZgB_}5n!Kk%vi?4DAH}z>h*nOk*)b2gIzZ|p1)cdf`d!T&h1vP+AP{8rc!J@2JOsc^6EZ1r==MM_=4p@%aZ#GDH}x;eelZ1~@46h3{Z zuqAfmm(P>GeLozLdhPRvOFXZ(rj+lKoOtoYcC{$M6>VM%+_cSp{gdr_d*1(etJ%j! z?FBnK9k1pmGl)+r-gUUDPe$|7HlzGCZ1z$*yC<^VKYw}8Z3i*GC$nc>H5N%ucy+-f z+SKUmImOeAJ2z*zh`e!2c(CTU*RRNu_WrYPf6H%U=Kdh7<51qS<$akHuZqw^b=7}+ z)-s;fTG96CnP8^bHO?x1u0Uyj&y+3~H+FZ;%YOpHI*)jNj8XoQ^}bn6_=DHZ;tv@iA;61T5RkloAQ*=uExS; zzva3%wr^VRLff97xOHF?ZxNSvsVTqcQcEc>$7fdC9~qu{GHHgFMq}6s&G4)h=CQ8Y z?9#ukCvxdZx&Hgk_GE_K)_-*&Pwy+oHy12i=btZqr+OkY{}GRK3p%fL_@~M;d98jZ zugN&mJt@!6sQbvG+17Fo`0u12TBT6>rqL)jadlH8Q>)X|*i|?9TOI!1kNhZgZIA5w zvj>*#e&!Qdo_qN8wR3-tm8mt#yVVOiTDVks)+Wa&N@}p5pLST*e%qp%US(JQ>?#qI zeEt9B-dJxt>J8of`ir)Tx87l& zGv(ZgYw;aX`w}_L4jnVk$t$<9?s~I};pijN3MsS0lRrMMur)e3?Zm5#&E8*c33&9J zY&ha_P5*-R!TI9KNoGnHc)on>p8o&BJdZmuXY-DjzqFML-(Oqs>Ci>tQLdijNEvjGwVGK~?niY-jJUSGQmLx_|w2L&fb&>uqeC zQmc&=R5d63tzGOfXZnpp3cmv_=HLFmPwwTlSN{q`{qOH|GFe&AI5%ucj38sk6dku& zYkbalre18mfBm_d*pZ9_L7`!RkrU#kOkA$dly)^kXO==mWo!rEvkOM;wi`db?3BD@ z(y=Hd)lk$||GYBu-0O+k_daxNy!Um|vpqGgW&ajD`(_(ZeEH{`TBj>VOD{dQnd<2| z@1@_rofVGTv=@J1S)b$YnxXrqeZ9hRh26Tp_bl=*j4KSQWIPwhtomLi-&yp6HDk%b z`d);5Sa$baM|Xaked*^@t_G%6L1BWT6P3EXQ$PH@e|_nZG)9$ZuhU5( zv;J)QTj~6K-HRO}cSWzd?AW*QJNw<{d%f4$&%X2w@voOHKOXd2UPkQcqsdsI9xRO@m$BWiY$JkbArt@`9@Vq)x{vlgQ%OBbE zYZh0;ckOXG`*Qiyr`E!gFF#W3<67UbCRko0bMNa4?ta~*DE8V036+gK+c~6<)Kg^fhr052-CzUG{O|646hWnD>``ozxpq zp!h}BNoUrl9eXU|Pu5=$Te8xrd875V1FbiHJUP_7dq(lp#t~&9^Ho3+*m7DfB zg=aV%)9e4^XZ`g?91pYCB&n%7+I}a`CQLLHoAOX~17q6H1Tp`=F2~A6QbLO2LVRtD z+{IQ*F!a=T7GQWU&Lb&vpNILj+cPAyHFzb>-OTf1zVGRD`mW%k;5_vqo2&ix1M~yI;|`dE3fQ()V;mC)nnOeyP%r}VL19PIfC5Mp z@_@qDi1HHQ@LlqXHarPl9xOqVu1;{`PvGFRKDYT{>R-4^2t!0`!hhpvfiuK>$?B1l98b7K0+nn!x=l>+mooQXZ z@BQ_C+KYdEUz}oe^TPCS9o`rTi_C|s4otoLXV3ngX>yZ2`@c{ArxM@#_P@hjHu>|9 zPgyGm{C3XxY+#aWp*sDf*!r5>#F(0@q$lS%-oE(At===wtoqxTi`+?vgq59}lik;I zU2|(W&XRr7e%8gt!i5tb-uj}sSUkgI@%5_t9#VVFY&2~QRc+S1U(5YC>Cxn^4?7o! zA8l<_KNcinn)tNo%Z&@6{|XaViyv!WA30@%@`I;G=C0TA>xx*^%i|Nb-A8zin6Odq zug%69Sw>$~wsuB2>n>Ur;2+3%<@A-1SDCLwvkafQ_b$8^&EN`%&gC@5 z`7iu$?>~OLX!+&2%*S{c(ik>pKbX;2&8{o|<=g|S`?~we+pqB4wa9s~;Y#B6_HbL1 z-wTtK)p`x=Y~DSr*Gl1vD@;%Mp^+8xYJbY=YwSF4zcKo6Kcme2a@n5S?4p`NnY_yu zeMs2DF{831Mk?gy!8HBUd{14z{>-%VLMAKA)=;r(ZX|lvkCpozW&^v3pdQX7jtFMJrcS&um&P@X1I) zcuiO`o89fttwxp>N{O0ZY(rJwZGYSBRneX=@M-pxw(w7U76-$Ej)%QlYZ-OzfWm^; zA6X^}^B!2aD9mBeu6*O%Z~L9tWm@zeGU$ulD)01DYmVdCbNbGy2ckjy9`WpZ(LDL( z!vC+#-`pvXc{5FKvQ*4uZ>f^tz|H$NzFKkiVPMt{osL$P8%d{y&KjO-3d=6pW_UX( z;iK@4T|A+jl{Jh{R?gycXpJhFv|Z#FN8=u`B!v*44KqzonIA|j%v$#_e~MXi2CLi- z-r&oVw_KbUs5pT+^V^zB+x9%FT9NQ7Xs+bR!dUuTn*(u+d`4mW6Ih`p3$;b4sz}b zRfyjZ$i4Mj6JNDz^o7U^FW;1G5s|a3+Ocxq;x()@_D)?n+xTb9VeK51dpUgP8$uUs z%J>x)@HdOo{ibZSrdpLU41&gz3ACu-_q{oYvLzN@GR4^o>gG9U2N-}y!BHL zii-SijhUt285JNA_DVFtY;BgaNY$HKlUKiE(|>fhmA%;iq;=k^-xhz}8)Rzl+xjK06gyIp z@FC`x`2+LK?VHskxA!rI%JbcPlMit1T>0beyv<&h&RxIGF7RdlW4CHsqn8(KEoa^MyXerO zo2h0<;61~S1Z}xxBJ7;aWc*5UhkG@qG zOy2qH(e8>BQm;R-9%W1^Ht9N-yufMSm%E$9%g)6;X=mS5VY6@HkC{hfS6pLXyJ)}e zd^xMD^;+-F^G)4xC+g&R-R9FPUMKGiY2Xs^u=_9U^HBX`z$J~V!SZLF{!Zl5oS-kY z_?YXBB^|S0I_<0W3a~$4`0d40?#ibJOyW--`McH4$5kiUH2Zp{8N=oF2Qk}CZuXYR zOgN~z^Gn+IB38MD&lQ6OSVWIU3pXb3Nf0}5Wa(z>!Y%uBK5ejH@xf!wk>(E(Ha|8` z-@l{i)z>Dbu>DM$F=iT~u7RoBpI&X6%Xy;k%IyUQ_RWsHx8T7ghYL$H%5wVda`@cX zB;^unG2#40?wsSDldt}6+!^#X|5?NH;+t`juULc2+huC6+J+|Th`Q)9UY^6Auxk14 z1$Uy3{QN2t5GCAu``Cg1OiNy0(rZ7taC>yfi;(lnStFI+Gld#<@cn*w`;umA+}zEt ztrc>*1k64LPGDJ`D>aeB}ysTgiN{s(<$6egU{r{PJ zyMk)?U5=#+>CO@4*>g)|^2UUVvrN~oyE^fo&*6Q`FK&u$cvjcfw%PsMeT!mti6_-< zTjKIWPW)Z7qTI>u#sSXCZ@=Fjag_Vg6Fn z-ZDj|s01x?WLf`Z&wk$-!V*&^pB9^YJh^)6>MOIZ9KTp;dvV!?oQR9dE!FqT3g$ol z)2vZ*(koH+`xeojv&!B*n3ehCWao@|f)YEw2bleyeCo4SS<-NIl z@1b{XMkmrQEU0|T{W1AQd(7g3|Er7Z91h=eDzUtn-8^yoE8SPumz_JU`e|cort+d$ zpKf!Qep)4x`{JhcQqu!5?VKx5Hl37uKXqQ?^EUPCrRSASee0d_Vd|dUZnG9Rcz+Nu zVfp7TwriQ@!@BZ-U*= zG~RFXC%3q>`lN>Y%#q%-W4ihew>){J-R^fLF6R8-sTW|v<Y3G3{ zn@i^z{fzN24oq94a8;(~c*6bc?)>_)S9_HEP21HTdG5Kmz_&4cVZTl7*)`3RYr3Z^ z$5nhOR1v%>A`@w;{dDWm*G9^XkusGZnUCCaJacxoYjR1PTuPO-&D!hVYiv$DoVHLu z?}VVf?OKPD^(*+6c;{R8Tg-ZOJ2bSEH;-S$N%Q%WM?E{EJkpK0f@fuAoxaW264JK! zL(Kt^xwm$l70SKkG>PZnJ=ZGReJQu*F`wQuxvP$dAFYa=`TH%~8c=6xs>qS?Z?gcN{X;LL(Tg3i#_pS#_0V1Gzs29nY3C{fytOZ` zi~RIXbZ?_BhyIN%a{kKYy?ZkEV&Bjy?D zFKbUc$|!pxuh#cbp!Z7e!3Z}kg(nlNxdS)(pSR3Ed*{pTqsv6r=SkgoY1{i>`O4qk zH{NMqcWpLbv7mh2>4{>s>ooq$@tZCYX5kbQEw~o)pkDEFbm3IXJ6VwoT8;m<+uevs znt1l;l8dX0Ki%Cu>*DD?uWf(6{L{B%caxZqc*?guL~Yr%kf7+`n^$DwWw#{-UuaV? zH8hk7>b*Aa=N75ly(-PZU)Qd9nsVB5XNbm6ZJnAhvlOG9=gxFZ@(Q1O`i{`H;@x^` zL2JuhudP+Bnep$?mk*bI7|CXvw6!0y>d?75?U{}zcO~yOqto`4qCf9BKK{P2uH}Q) zj0Jp4l3inUO&XkYR;|wVd$HjPQ}O#>PqTU3qGC;N?_AIA<)Q6WxY0>?*Y7o#KRWud zzs}3m&1YG*OuM@E;4T;GW6NCM_*`ZX?wy$A7XNSiCI9cir`gv# z)9bcN>Cd0oaronsk2%kxJJ~xq_H0Z2{VT_Cx5Ig*{YtJmVLgoomS&~lukTI!R=Yel z`r7TitCZ$R`z@%t(Y$L+GEtPmdGd`|ypzod&+X4VJU!O@CZs%^`eh&m<**%LU%&!%z6l zb7@q6ddVeo-J!4-TY1#x7fYJO*^0JY7fy*kSNby7yH3m0F3s7y?PSf3 z3z-(vnODy|am3X>hfBlV`ApVA9vRC8?2V5vZT%6bny;`bGu5Z^8dJMQSlG(Xvb()x z`gWb*`x}?km26#Sb8%we?6`Bs%v3F|?cOHFCU(%!ttI=#!!GX!)6b?eFE>>IP({D12ID6_wR{gCFq zo2$?NzuB?j*LU%g%2v-lB$fS8oRk9=VDQAjb?wPmsnDq9-s<+zut~xAfMsh`Bx+mGcTrxG8QTuuGf2%K? znrfeqT~@i9#on=#HK4$LQOQE7)chEsmN_wBz3R{I^Np=j@oszgwnEwOsP}}XhPrpl zr$_g1-|Tww>_XQkh8u35?znK;$Gpf>K<=gEX06n>DR+!2ZJ%rY+Nbbv`3tozlMa|B z7hPDgQfB&^KU3~?z1~rB>0{2-BihH79hUQdo%c1*NNIY_A(cy(|6EFidS>3*P>|5{ zwOYFSh|R_W+^((DB`2L{Gv4B_YkfQYrIe9azPmTuT2Q zyfjjwH#9$X_N6^bn>TRqOa4`no0G$xcmG&b*_D~=m&Eu5?wdPdJ5R}(JxlA(_slKi zxu{yXdtpSZ%d)pI2NylQGO;3C|CQy`n|Xy|9g9w{d}sCgT3Oyd>xUm#Sux38 z?%vU3B`((2r?l;!va)Z5(`4PO>B~g>jOF8h{IHrNU;B}BZUB#DmaRnhTfU3m82+?u zUd6o0P3WVPhsMFK`wcrz%A8!fL9?PIGWpJi+SyuGQH#|Nz0xlUu{gqI*l*kX?(eha zUnw@1W}TUJ_-o^YV{5+U{D1dsA^*t-x?GXQ7d!6HHTh*^^-|%UbIVzOy{De`TAxUX1xBe4u6Wylc0t7K(+$cg23tee*m-mD=F-WX0?LY6WPo6#G z-aY5lQTDH)z00-jHNtLtyQKee zc*&*uY064RxwU;55l|j?ax^P~8wd2nZzue=$&QCQpO~1Eh zrDf%p9g7)%sc7`|i$Cg!$lLa`W12*2V}RZSLnBpXWxaWu+49XLnfC=rdF|Xx+6C{OxVHC4Y-Rc1^|`6{el5u5%zFLR zbzQCj>oxroJ_0VOKW%N^lvn@D_WV`9dB*?X`M<8dY%%#UN#^bU6^ZW13z>RoblTG=7cbJr;VW41h+RIOTvVTVyAj1?~<>Z;N!(JVR77+B&m#d z^X;x2G_(jdU%cEY^Wuk_lN&F7QJepI1AoZx2fxmL>0S8z`M)W3C%En0?Eie|buatr zzUA+<7%!K9DOnGES88u630obyfkP(exs&I!NSDd}3-{OlKQJ%2{ruea^O7p_>ynJ> zYWUTEe1bmdCO=H+&KZO-X5B!q6CQ=fc3GQlo~Gv<-JDZ71BZKO=A`RlLKa!v$! zGG}~x^`xzTf{bl!FI(;Bw6$-(eSaZnP%C?m$Scm&)+XqBEC|vwWhA3{_syp(JYga^B40UihREI$@uXHXYP62 z9@>6cH^VOmRU3$Gy6S!|=9D(`vdy}h2A=y(Ogeb$O`Gl?TRKtSw&_$4_E|W#`o$~rf$zU`sVt*iKQ~R6WFxEzVduIXk%+~^X}h8($}Xi zzM&-5F2etTXO~HY?TY_ryzV!?bBd4e`jww1>U{|`4vIER3L2@)Ps-vlH86m$<}`w> z`69TQ)5|r&$3xrMH#ibynAFHpLD$mEK*7+^&`iPH+!S+#m$^A;Wfpve7nloQ;bm!t zdzcjYZ0X$0ywYNQ*!ry8#F7ks(6Xvj$Wp7K#N<@y@~XUakT`4+RwA4Wkxoi1(uXh1 zLRt7}1X|XLJQxb%gF=gx!B7j(pfmDdXlhWjPjsoo|M_JXn1x&>9lPr7pC0qfL~pk7 zxynwx)Gnq@KH@5du(s^-DKbJx9-mUHYv_WTi@~PJQiGh`DyuWov`%} zIUg4uUb#8_yu`VincH(uJTdq(V^7$vyiZz3S1i14nX-8AKjF6G#f#gxzjF3JWO}>s z?(`QAZQ~YSekb+)Ql4{v@r*KSAGxQwpL;YI!X_U!dSS-fd*NQ-tv7$S-%54sP?mkx zuj7%sb){H9=}ZrWFGjE2l_ZMZk|->xoIlr zpCA5Nd(?8X9*XJc=$=2XulIM(IhD(qGZb4rIpnIBotL%JmK!2Gzwg=QqEN{%rcYfAW0Bne&+y%~=?SM&*-y?O? z51KLk&u>V_Y9D6Gi))R4pmpY};tAAGg@HS_$ERQCp+)`r`czh#&FO}aMekpf>>P}qvM7tCd~_Ix~i zWBQysIn8_plZuwJ^%%S>{QWoXe5Kv22bD9FcFH{2R=2+{JE~vwdA(EN(^VQ_tM4yA zdGlsU-uW92uXb|fXx_T&J3IHsr?yROYu3pgpT0GT^Hi$5!Ig92y*>PDYF-N0g5%eE z@N0I?|Krx{`sVt&-nBcg9sl&OvP|qm(+vG{A1%|SP3pgQr2p=jWuJ`$u87XGS=}+~ z$(N$voPzeVbyUReF5qT3y)0tV<&IC8JOA>Vai8RP5uql*@nrcXo7Vo4Q|@v6pATws zykJV&uwYGz--XBDcK7_LaSjpQt;FWKf=Ng1NY$^2_jfdZ*%;lMfBo0inKmg3o?H)g zj(hb2yhd{Z^me;$z}}Qub29;s1)^AEwrN+;}^= z_tJrf8Ftf>8`jK!rl-^@+V}rM!OaZ;9_g)H_LbHw{C3J|@ttWGb4>2<^uJ&8!e{5w z%*T(XiM9M=i-h77C&@5< z5{Rl~S>$@)Mu)?eM@&hj%O8bpw@XV8TYm1`u9C8VJG*^OM8VQ!c)<%Jyq{ zO0M$izpS$A(o0oG$!UAyS9_k1S`jmI!h$=`sul+4U4CJbIdj&F>GPT=2?rZpGR-`7 z;Yo&Xl+fWP`}P`YYg$@)OkQ?-+Pc{Jl?skiSA0v7^-(&klTcrE|=$pYea-eYDWde%IWZLk+<)C7TXggc==M>>F^B=V1HEq)mJkOD#I~`Q6OB zoOFZJ&>>|)%EQHN?(BaT9m$rd-Me+VV)dIxzUtg3ypAw^)Lr;y^QEr32Xp6KD-pRe zfl2L#n|$HX=??KBAsKo>0{lfidwO->)%wjmw?%A{BIh;-E!MBa5>~JB&z$r#diEpj zT`zwev%4aD(P^Edx>qk8yIsoL$+^qt?L6*P_igtSy>AMAXZ*qEtvXAuNm;~ytantX-(Q=Z>@AuPSAqS@E`<&G#Ycg{iFfjlB zBcgt)vo%NbM2bUy`}7Cfzw)^z|2}G^Uc=fqe8Tr4$*;d>H8-jor|TBqA@$%A=S?316J zN9RtOxM$+hCSEV2C-SVVrE9Hs3e|WrMtc15>BOr>hI!q-KwvDQ6YYZ{Y%)^30J56@mj%lk8RpyuBd>r z;QWQmhi82}Jl*uH{Dcm{8Co|^JqYQ3`0x01kyYn5_;0^tBewUwznaif{_X;~bGt2K zsvmKP$eD@1jeEuGf)=reEMFXMOI{&uVH-G|E)_g`dNy(#m)M@q`g^S__j z<#wf2FsNrn>nzPZSoYOuicKmv_x2ATbUR<@t`m5*@Q=qr&QJX(`o*3~^|+oiHB6n- z@A64*!b#)88n@Mf7gM%~PjjlStCm{vgJ0Y+?Z~lN2U98+UX7{Y_~E1B6)w5NkU9^MUYK16|PUODS-Iba@O?ms@ z%FNa|*Qvec4YSqJdvk?)ME|nRd8)G6z(>{ieCHhF9(C_zg30~3XJ1w?eJSjQZWlE6mk;}@#EK{sfH!dr8bUnXYzlj;L!KM&_+LlkkOGV9Nnk2G~_Ud)`_PRAoo;hYST|rKr zXxzq|Jum0^VI1D%lZ1AX{Jr`=WNe?7r&FGoO`RhWAhDH!|OXIH6{PL^k>qc$5sYS zD^DcoMLBNsQ{}m~`@+kRdBF;DN{WR%z1(i_Gn7Hw{Mr55ulh=p@i zY>`~6?V$s!)_2BBd^BNObuPtptBLuRtJ1IdLQlS(s=iR}N3`s$r(J(#Vk5o337%AX z!hh%AY$unWmeN|VQBi)AsC4&2wj7(p^<3Ocn;(_0ejEQ!bmlen;~C7J zQOA_(wt9Zs`^VEw?qaTyz+LAho4>E=wb!x#lkv8b*MR?!v$68e|HWH3@K@!{$v*Sr z!TxpA{&PNvi|5}yKUp-^R^spGCcD>9vR-Gu&R%oZ`ghUoM)#i|%3t&wi`l3dZ+l}Y zu|70+mVy}QZ4!N_#Nt%Y zg-QCTyAR=8m-N9mJO&v<_QHd@p^!Tr6u{dWgY?}pi;7D?OK}to^nDVcOhZdEeek`E z#nD`5hNcP@#>NWfW=0BTmL>}3CPoSt#)b;!=9UVk7RCx@W@ZZDTei)O6wHh*6->=c z6-*7y6--P_6if_ExlD}B6-+G66im!46^u=d6->>|Ao>i96ih6Q6+rT)<_2Irrsjqa zzKMZ?simocnUN`%nW>?InURr#iJ6&#simQUg^>kVtue?wrX~u81_lP`gps+q0tlNL z7$}$;7=Q)TnJSoASSpx+Tx)Ko zUN5se!SAiHVtliK(H2iJ66hv6-QQsksqIPQl#J zQ~@0FmJlVw$_)=z9ogxO_|NReDfDH5E* zNKBDjric`&07{WY=H{_T*B*l}62_lDQTGdC zM$RsuNsonpj#WAY+hPbPO^JhC$|-fGQSqBQ6jd>|p~-h-b}=!BwM~sgZ)Y1^BK; zNJRv3uY#G8nS!OEIi#vJH{$|Tqo69-98?jRnnBC}1)wRY#s}5GP>z|QAXo81` zdJ~keK#3NVNI_`?M1#BnqH$s5_=TiyP&OtKgEfN*sPSB24wwL048mXzf&eK*@Ia{? zgb^ZOmbtk(myx+Cqzw#ijhmS%SXfwqF{r2lMIs1;MtuU}g$x zV}d5NKy65K1#?3S1yf5`jm2IGM21J7z$}qD*!3V;~W`gvA#E>u~9zY?56LaB|Q2@(uLHY{B zq$iMi49h`20%0TxPzg>DgAxG5`7oUz5s)^NTn0Mh1%K-lV>BNlqnV;tgW#D0A~Kqp zxv7GsvAKeUxv7FVC^eWGC|Hp@}ib2B--}3Z@o@V3&YYz+40}9n=K{VURe;l^`)= zb5jKnZE9x31rjF)gVcjDsEcfFs$gnt2*O+-GeIsjw*>jxSi!=~2;6-%H!xSQurL9K zhKV7lJ8h_70qO>VbF&#J$Sf5sOiZ}U%`8B)f`zdqs86h5ZegTgVFt>XmI{W3W=7yn zC&&gf3v-C8Ees*FnGuKvhkz+4cY-<#1_oe5Op(GB6y^|@8!MPv8iVvGSQ?u_)R`G_ zf#gBrCZ?7OCMKXxy9Gqf(n!Gq)SViO|FE>OaRCP;7qfRYRd!vl)=1j&VxAi=?FYG#CzM{yl)f*9d(^6?CJc7x8i z>0@M2$XU+FH6f_!JDNd}VhJ2`;A9Ueda!3uP~Jk$pr+6a3L2xKM+P;qgyeElLt}Ws zXJ%vqPBq|y5S~HJ6+q&qX2#(33C^Hq2H=*i2{`kbfHN~F9h+JjDS$Dk@iv-44HVF7 z48j@I5Vo2KcT?3H<$`+j3~FeJUW0;fz9%Mw8ks9tfcizCp;k*H1v4|yFsw0n;LhC4 z421>{FM^W11*mQ@RIso#;R1Dcj6s8jpus^j3>wNcF*8swHHMl48Voc9C37PMOAAv4 zb2Bq8BU4iakQt_+p--?oK=qh8NDeG+0_uz!fQDra;bO+7pl+3!f~lb)mnoW^xcDGD zU>M{ts5&kX+Z;61YG48$el<5WRWJh$Zi4!e=Ee#jIb#dR5D2KMGy{c~r5RWp5+j#| z1w1h-fCAUl&=9%qG{m)Z4N-TZTwINjGtDq^CaA?sRL&%2h{p&rcwh?ALuiNx)T06Q zTtMwxSa%J?M($IC2N*!T4p0vk)cpY|0MVfC07x9vZ31DCIHbo5Nq*3-6xJagkXh&$ zq#k4*2!qTaeTc^d)GI+7;xUH~@qlJi%)o&I_9%2z$IyVNAs)#16lkah99pA8JdjQ{ zDEWXx6Vz*mjyR$Y@qm*f(L+2S^S}WNniqqb2bx<$PL817IH(VRk~u;182CG%C>N4o zWKLs@%n52L6O%bX)tDiu3NutNGq+R#4?7y0D1f?M=4OT{G-&?I6x7KCbs0f3o`$Ae zM&^bJMwXV4IX2Kd8xl4*Hc>D!hRnag%mdBESy+Io6e9(5Ged}e(2S-9sJeuxwSc+@ zWVW$|fdUAF^nu)CWNxHj3?79v1lh@DVqpQI6)cHu%i_~4gq<{$Q%*?AhxNAkpiee3Ni#l!vYn=2dM|~O%2V!dO-mM zR&Qa!1(FAe8-seY7G??{8YTvE3`h=yVG&_z4htAC4UPa~BQpguF&CNoVD^Fag98;B z>G%>M%r3CM%nd;S4)#ANJU|#0PN48a$DlZXg#k!EDAG(UEV+;pBRFhLEG$uSCTJ)M zf6fd*K1?4YXBwdAOi&YU3p8VNE7wZkkG%uGND&s4$85;R5#8Y={~i4ZhsdJ@zj z0%3C#P+QG{%gDr10W{)iVrrp)jzQ*_fQI)?EfmbmAm)J7SQwitSeh6rm>XI`^qW|M z^@1jeLGmEl+|W`1WVW%Xi2?|N#bIIwhG01pQwuJTI58Mx77T;T22I?X7#nec*dTYB znSzRHa|Lq)&`1ktvffC++z8aXG6oj}Cgx!Gf|pEKm>Ph?2;_b1Wk)vNNEuqHjr>5IxTV`rA4rQ6H^Q1dPf<4Wa5av@o;8@P~zwIeHkFSejXyquF6- z1{yv=GtbP}6y07E3v&$f3{8wJFzhuk1g*dV83+%16LSj_^zbt=G{Eqii2-QL6{Hmr zZzg7z81ZIo2^uIyRcCBziV<%nW(Fqcac*p4Y>6pmfZ-1lQ$s`aurf9<0(Hqi7Q_8! zWNBf5;WraQOLQ?KO9RkiH&neAppkQs5R!k5jm*&PH8eKH2tPw(&~PrQUPD7mGxT^f zFaj-&LRDvAYzaDp8YBq!hoP~l0Y+RJ8DjX&z}V6hJ^TzzjX|SGXy%z2pr=1WBT(rJ zQikxafvGV@x;HR0HAlC@&=@ppj;hzt2s17X%s^9nsOk*NK`jYXF+*c>Q%wJwV#JYw zIcQV{Rj+}Cg%Nt5HZ-=t3{xXB(5gp}W_UOoSXf|`2Zja)pe-vX>I{u74J^>}s*!~e zdb%<+FvLjrhK7cw7-4U0X@MbTWNBuJZik^EWXjhVT6%h zj7&haKFGU>bYNs|XoQ}2jV#Q~(Zj&V(%b?)42(?-%rL|(O)$dL#K0UQ@0%DKnINTu zlA^@SoYW#N8yf}v;LNI21q&ku{h<8(5(V(2gMz+iURu5as3r>nEt4xQNh~S>*HWgS N0-Q@#)z#mP3jl*&L~sBA diff --git a/doc/DocGF.tex b/doc/DocGF.tex new file mode 100644 index 000000000..6388d3548 --- /dev/null +++ b/doc/DocGF.tex @@ -0,0 +1,569 @@ +\batchmode +%This Latex file is machine-generated by the BNF-converter + +\documentclass[a4paper,11pt]{article} +\author{BNF-converter} +\title{The Language GF} +\setlength{\parindent}{0mm} +\setlength{\parskip}{1mm} +\begin{document} + +\maketitle + +\newcommand{\emptyP}{\mbox{$\epsilon$}} +\newcommand{\terminal}[1]{\mbox{{\texttt {#1}}}} +\newcommand{\nonterminal}[1]{\mbox{$\langle \mbox{{\sl #1 }} \! \rangle$}} +\newcommand{\arrow}{\mbox{::=}} +\newcommand{\delimit}{\mbox{$|$}} +\newcommand{\reserved}[1]{\mbox{{\texttt {#1}}}} +\newcommand{\literal}[1]{\mbox{{\texttt {#1}}}} +\newcommand{\symb}[1]{\mbox{{\texttt {#1}}}} + +This document was automatically generated by the {\em BNF-Converter}. It was generated together with the lexer, the parser, and the abstract syntax module, which guarantees that the document matches with the implementation of the language (provided no hand-hacking has taken place). + +\section*{The lexical structure of GF} +\subsection*{Identifiers} +Identifiers \nonterminal{Ident} are unquoted strings beginning with a letter, +followed by any combination of letters, digits, and the characters {\tt \_ '}, +reserved words excluded. + + +\subsection*{Literals} +Integer literals \nonterminal{Int}\ are nonempty sequences of digits. + + +String literals \nonterminal{String}\ have the form +\terminal{"}$x$\terminal{"}, where $x$ is any sequence of any characters +except \terminal{"}\ unless preceded by \verb6\6. + + + + +LString literals are recognized by the regular expression +\(\mbox{`''} ({\nonterminal{anychar}} - \mbox{`''})* \mbox{`''}\) + + +\subsection*{Reserved words and symbols} +The set of reserved words is the set of terminals appearing in the grammar. Those reserved words that consist of non-letter characters are called symbols, and they are treated in a different way from those that are similar to identifiers. The lexer follows rules familiar from languages like Haskell, C, and Java, including longest match and spacing conventions. + +The reserved words used in GF are the following: \\ + +\begin{tabular}{lll} +{\reserved{Lin}} &{\reserved{PType}} &{\reserved{Str}} \\ +{\reserved{Strs}} &{\reserved{Tok}} &{\reserved{Type}} \\ +{\reserved{abstract}} &{\reserved{case}} &{\reserved{cat}} \\ +{\reserved{concrete}} &{\reserved{data}} &{\reserved{def}} \\ +{\reserved{flags}} &{\reserved{fn}} &{\reserved{fun}} \\ +{\reserved{grammar}} &{\reserved{in}} &{\reserved{include}} \\ +{\reserved{incomplete}} &{\reserved{instance}} &{\reserved{interface}} \\ +{\reserved{let}} &{\reserved{lin}} &{\reserved{lincat}} \\ +{\reserved{lindef}} &{\reserved{lintype}} &{\reserved{of}} \\ +{\reserved{open}} &{\reserved{oper}} &{\reserved{out}} \\ +{\reserved{package}} &{\reserved{param}} &{\reserved{pattern}} \\ +{\reserved{pre}} &{\reserved{printname}} &{\reserved{resource}} \\ +{\reserved{reuse}} &{\reserved{strs}} &{\reserved{table}} \\ +{\reserved{tokenizer}} &{\reserved{transfer}} &{\reserved{union}} \\ +{\reserved{var}} &{\reserved{variants}} &{\reserved{where}} \\ +{\reserved{with}} & & \\ +\end{tabular}\\ + +The symbols used in GF are the following: \\ + +\begin{tabular}{lll} +{\symb{;}} &{\symb{{$=$}}} &{\symb{\{}} \\ +{\symb{\}}} &{\symb{(}} &{\symb{)}} \\ +{\symb{:}} &{\symb{{$-$}{$>$}}} &{\symb{**}} \\ +{\symb{,}} &{\symb{[}} &{\symb{]}} \\ +{\symb{.}} &{\symb{{$|$}}} &{\symb{\%}} \\ +{\symb{?}} &{\symb{{$<$}}} &{\symb{{$>$}}} \\ +{\symb{@}} &{\symb{!}} &{\symb{*}} \\ +{\symb{$\backslash$}} &{\symb{{$=$}{$>$}}} &{\symb{{$+$}{$+$}}} \\ +{\symb{{$+$}}} &{\symb{\_}} &{\symb{\$}} \\ +{\symb{/}} &{\symb{{$-$}}} & \\ +\end{tabular}\\ + +\subsection*{Comments} +Single-line comments begin with {\symb{{$-$}{$-$}}}. \\Multiple-line comments are enclosed with {\symb{\{{$-$}}} and {\symb{{$-$}\}}}. + +\section*{The syntactic structure of GF} +Non-terminals are enclosed between $\langle$ and $\rangle$. +The symbols {\arrow} (production), {\delimit} (union) +and {\emptyP} (empty rule) belong to the BNF notation. +All other symbols are terminals.\\ + +\begin{tabular}{lll} +{\nonterminal{Grammar}} & {\arrow} &{\nonterminal{ListModDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListModDef}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{ModDef}} {\nonterminal{ListModDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ModDef}} & {\arrow} &{\nonterminal{ModDef}} {\terminal{;}} \\ + & {\delimit} &{\terminal{grammar}} {\nonterminal{Ident}} {\terminal{{$=$}}} {\terminal{\{}} {\terminal{abstract}} {\terminal{{$=$}}} {\nonterminal{Ident}} {\terminal{;}} {\nonterminal{ListConcSpec}} {\terminal{\}}} \\ + & {\delimit} &{\nonterminal{ComplMod}} {\nonterminal{ModType}} {\terminal{{$=$}}} {\nonterminal{ModBody}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ConcSpec}} & {\arrow} &{\nonterminal{Ident}} {\terminal{{$=$}}} {\nonterminal{ConcExp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListConcSpec}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{ConcSpec}} \\ + & {\delimit} &{\nonterminal{ConcSpec}} {\terminal{;}} {\nonterminal{ListConcSpec}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ConcExp}} & {\arrow} &{\nonterminal{Ident}} {\nonterminal{ListTransfer}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListTransfer}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Transfer}} {\nonterminal{ListTransfer}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Transfer}} & {\arrow} &{\terminal{(}} {\terminal{transfer}} {\terminal{in}} {\nonterminal{Open}} {\terminal{)}} \\ + & {\delimit} &{\terminal{(}} {\terminal{transfer}} {\terminal{out}} {\nonterminal{Open}} {\terminal{)}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ModType}} & {\arrow} &{\terminal{abstract}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{resource}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{interface}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{concrete}} {\nonterminal{Ident}} {\terminal{of}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{instance}} {\nonterminal{Ident}} {\terminal{of}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{transfer}} {\nonterminal{Ident}} {\terminal{:}} {\nonterminal{Open}} {\terminal{{$-$}{$>$}}} {\nonterminal{Open}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ModBody}} & {\arrow} &{\nonterminal{Extend}} {\nonterminal{Opens}} {\terminal{\{}} {\nonterminal{ListTopDef}} {\terminal{\}}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{with}} {\nonterminal{ListOpen}} \\ + & {\delimit} &{\nonterminal{ListIdent}} {\terminal{**}} {\nonterminal{Ident}} {\terminal{with}} {\nonterminal{ListOpen}} \\ + & {\delimit} &{\terminal{reuse}} {\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{union}} {\nonterminal{ListIncluded}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListTopDef}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{TopDef}} {\nonterminal{ListTopDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Extend}} & {\arrow} &{\nonterminal{ListIdent}} {\terminal{**}} \\ + & {\delimit} &{\emptyP} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListOpen}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Open}} \\ + & {\delimit} &{\nonterminal{Open}} {\terminal{,}} {\nonterminal{ListOpen}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Opens}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\terminal{open}} {\nonterminal{ListOpen}} {\terminal{in}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Open}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{(}} {\nonterminal{QualOpen}} {\nonterminal{Ident}} {\terminal{)}} \\ + & {\delimit} &{\terminal{(}} {\nonterminal{QualOpen}} {\nonterminal{Ident}} {\terminal{{$=$}}} {\nonterminal{Ident}} {\terminal{)}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ComplMod}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\terminal{incomplete}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{QualOpen}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\terminal{incomplete}} \\ + & {\delimit} &{\terminal{interface}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListIncluded}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Included}} \\ + & {\delimit} &{\nonterminal{Included}} {\terminal{,}} {\nonterminal{ListIncluded}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Included}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{[}} {\nonterminal{ListIdent}} {\terminal{]}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Def}} & {\arrow} &{\nonterminal{ListName}} {\terminal{:}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{ListName}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Name}} {\nonterminal{ListPatt}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{ListName}} {\terminal{:}} {\nonterminal{Exp}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{TopDef}} & {\arrow} &{\terminal{cat}} {\nonterminal{ListCatDef}} \\ + & {\delimit} &{\terminal{fun}} {\nonterminal{ListFunDef}} \\ + & {\delimit} &{\terminal{data}} {\nonterminal{ListFunDef}} \\ + & {\delimit} &{\terminal{def}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{data}} {\nonterminal{ListDataDef}} \\ + & {\delimit} &{\terminal{transfer}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{param}} {\nonterminal{ListParDef}} \\ + & {\delimit} &{\terminal{oper}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{lincat}} {\nonterminal{ListPrintDef}} \\ + & {\delimit} &{\terminal{lindef}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{lin}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{printname}} {\terminal{cat}} {\nonterminal{ListPrintDef}} \\ + & {\delimit} &{\terminal{printname}} {\terminal{fun}} {\nonterminal{ListPrintDef}} \\ + & {\delimit} &{\terminal{flags}} {\nonterminal{ListFlagDef}} \\ + & {\delimit} &{\terminal{printname}} {\nonterminal{ListPrintDef}} \\ + & {\delimit} &{\terminal{lintype}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{pattern}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{package}} {\nonterminal{Ident}} {\terminal{{$=$}}} {\terminal{\{}} {\nonterminal{ListTopDef}} {\terminal{\}}} {\terminal{;}} \\ + & {\delimit} &{\terminal{var}} {\nonterminal{ListDef}} \\ + & {\delimit} &{\terminal{tokenizer}} {\nonterminal{Ident}} {\terminal{;}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{CatDef}} & {\arrow} &{\nonterminal{Ident}} {\nonterminal{ListDDecl}} \\ + & {\delimit} &{\terminal{[}} {\nonterminal{Ident}} {\nonterminal{ListDDecl}} {\terminal{]}} \\ + & {\delimit} &{\terminal{[}} {\nonterminal{Ident}} {\nonterminal{ListDDecl}} {\terminal{]}} {\terminal{\{}} {\nonterminal{Integer}} {\terminal{\}}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{FunDef}} & {\arrow} &{\nonterminal{ListIdent}} {\terminal{:}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{DataDef}} & {\arrow} &{\nonterminal{Ident}} {\terminal{{$=$}}} {\nonterminal{ListDataConstr}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{DataConstr}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{.}} {\nonterminal{Ident}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListDataConstr}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{DataConstr}} \\ + & {\delimit} &{\nonterminal{DataConstr}} {\terminal{{$|$}}} {\nonterminal{ListDataConstr}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ParDef}} & {\arrow} &{\nonterminal{Ident}} {\terminal{{$=$}}} {\nonterminal{ListParConstr}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{{$=$}}} {\terminal{(}} {\terminal{in}} {\nonterminal{Ident}} {\terminal{)}} \\ + & {\delimit} &{\nonterminal{Ident}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ParConstr}} & {\arrow} &{\nonterminal{Ident}} {\nonterminal{ListDDecl}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{PrintDef}} & {\arrow} &{\nonterminal{ListName}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{FlagDef}} & {\arrow} &{\nonterminal{Ident}} {\terminal{{$=$}}} {\nonterminal{Ident}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListDef}} & {\arrow} &{\nonterminal{Def}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{Def}} {\terminal{;}} {\nonterminal{ListDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListCatDef}} & {\arrow} &{\nonterminal{CatDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{CatDef}} {\terminal{;}} {\nonterminal{ListCatDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListFunDef}} & {\arrow} &{\nonterminal{FunDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{FunDef}} {\terminal{;}} {\nonterminal{ListFunDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListDataDef}} & {\arrow} &{\nonterminal{DataDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{DataDef}} {\terminal{;}} {\nonterminal{ListDataDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListParDef}} & {\arrow} &{\nonterminal{ParDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{ParDef}} {\terminal{;}} {\nonterminal{ListParDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListPrintDef}} & {\arrow} &{\nonterminal{PrintDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{PrintDef}} {\terminal{;}} {\nonterminal{ListPrintDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListFlagDef}} & {\arrow} &{\nonterminal{FlagDef}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{FlagDef}} {\terminal{;}} {\nonterminal{ListFlagDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListParConstr}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{ParConstr}} \\ + & {\delimit} &{\nonterminal{ParConstr}} {\terminal{{$|$}}} {\nonterminal{ListParConstr}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListIdent}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{,}} {\nonterminal{ListIdent}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Name}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{[}} {\nonterminal{Ident}} {\terminal{]}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListName}} & {\arrow} &{\nonterminal{Name}} \\ + & {\delimit} &{\nonterminal{Name}} {\terminal{,}} {\nonterminal{ListName}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{LocDef}} & {\arrow} &{\nonterminal{ListIdent}} {\terminal{:}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{ListIdent}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{ListIdent}} {\terminal{:}} {\nonterminal{Exp}} {\terminal{{$=$}}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListLocDef}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{LocDef}} \\ + & {\delimit} &{\nonterminal{LocDef}} {\terminal{;}} {\nonterminal{ListLocDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exp4}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{\{}} {\nonterminal{Ident}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{\%}} {\nonterminal{Ident}} {\terminal{\%}} \\ + & {\delimit} &{\nonterminal{Sort}} \\ + & {\delimit} &{\nonterminal{String}} \\ + & {\delimit} &{\nonterminal{Integer}} \\ + & {\delimit} &{\terminal{?}} \\ + & {\delimit} &{\terminal{[}} {\terminal{]}} \\ + & {\delimit} &{\terminal{data}} \\ + & {\delimit} &{\terminal{[}} {\nonterminal{Ident}} {\nonterminal{Exps}} {\terminal{]}} \\ + & {\delimit} &{\terminal{[}} {\nonterminal{String}} {\terminal{]}} \\ + & {\delimit} &{\terminal{\{}} {\nonterminal{ListLocDef}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{{$<$}}} {\nonterminal{ListTupleComp}} {\terminal{{$>$}}} \\ + & {\delimit} &{\terminal{(}} {\terminal{in}} {\nonterminal{Ident}} {\terminal{)}} \\ + & {\delimit} &{\terminal{{$<$}}} {\nonterminal{Exp}} {\terminal{:}} {\nonterminal{Exp}} {\terminal{{$>$}}} \\ + & {\delimit} &{\terminal{(}} {\nonterminal{Exp}} {\terminal{)}} \\ + & {\delimit} &{\nonterminal{LString}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exp3}} & {\arrow} &{\nonterminal{Exp3}} {\terminal{.}} {\nonterminal{Label}} \\ + & {\delimit} &{\terminal{\{}} {\nonterminal{Ident}} {\terminal{.}} {\nonterminal{Ident}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{\%}} {\nonterminal{Ident}} {\terminal{.}} {\nonterminal{Ident}} {\terminal{\%}} \\ + & {\delimit} &{\nonterminal{Exp4}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exp2}} & {\arrow} &{\nonterminal{Exp2}} {\nonterminal{Exp3}} \\ + & {\delimit} &{\terminal{table}} {\terminal{\{}} {\nonterminal{ListCase}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{table}} {\nonterminal{Exp4}} {\terminal{\{}} {\nonterminal{ListCase}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{table}} {\nonterminal{Exp4}} {\terminal{[}} {\nonterminal{ListExp}} {\terminal{]}} \\ + & {\delimit} &{\terminal{case}} {\nonterminal{Exp}} {\terminal{of}} {\terminal{\{}} {\nonterminal{ListCase}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{variants}} {\terminal{\{}} {\nonterminal{ListExp}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{pre}} {\terminal{\{}} {\nonterminal{Exp}} {\terminal{;}} {\nonterminal{ListAltern}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{strs}} {\terminal{\{}} {\nonterminal{ListExp}} {\terminal{\}}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{@}} {\nonterminal{Exp4}} \\ + & {\delimit} &{\nonterminal{Exp3}} \\ + & {\delimit} &{\terminal{Lin}} {\nonterminal{Ident}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exp1}} & {\arrow} &{\nonterminal{Exp1}} {\terminal{!}} {\nonterminal{Exp2}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{*}} {\nonterminal{Exp2}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{**}} {\nonterminal{Exp2}} \\ + & {\delimit} &{\nonterminal{Exp2}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exp}} & {\arrow} &{\terminal{$\backslash$}} {\nonterminal{ListBind}} {\terminal{{$-$}{$>$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\terminal{$\backslash$}} {\terminal{$\backslash$}} {\nonterminal{ListBind}} {\terminal{{$=$}{$>$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Decl}} {\terminal{{$-$}{$>$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{{$=$}{$>$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{{$+$}{$+$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{{$+$}}} {\nonterminal{Exp}} \\ + & {\delimit} &{\terminal{let}} {\terminal{\{}} {\nonterminal{ListLocDef}} {\terminal{\}}} {\terminal{in}} {\nonterminal{Exp}} \\ + & {\delimit} &{\terminal{let}} {\nonterminal{ListLocDef}} {\terminal{in}} {\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Exp1}} {\terminal{where}} {\terminal{\{}} {\nonterminal{ListLocDef}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{fn}} {\terminal{\{}} {\nonterminal{ListEquation}} {\terminal{\}}} \\ + & {\delimit} &{\nonterminal{Exp1}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListExp}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Exp}} \\ + & {\delimit} &{\nonterminal{Exp}} {\terminal{;}} {\nonterminal{ListExp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Exps}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Exp4}} {\nonterminal{Exps}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Patt1}} & {\arrow} &{\terminal{\_}} \\ + & {\delimit} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{\{}} {\nonterminal{Ident}} {\terminal{\}}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{.}} {\nonterminal{Ident}} \\ + & {\delimit} &{\nonterminal{Integer}} \\ + & {\delimit} &{\nonterminal{String}} \\ + & {\delimit} &{\terminal{\{}} {\nonterminal{ListPattAss}} {\terminal{\}}} \\ + & {\delimit} &{\terminal{{$<$}}} {\nonterminal{ListPattTupleComp}} {\terminal{{$>$}}} \\ + & {\delimit} &{\terminal{(}} {\nonterminal{Patt}} {\terminal{)}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Patt}} & {\arrow} &{\nonterminal{Ident}} {\nonterminal{ListPatt}} \\ + & {\delimit} &{\nonterminal{Ident}} {\terminal{.}} {\nonterminal{Ident}} {\nonterminal{ListPatt}} \\ + & {\delimit} &{\nonterminal{Patt1}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{PattAss}} & {\arrow} &{\nonterminal{ListIdent}} {\terminal{{$=$}}} {\nonterminal{Patt}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Label}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{\$}} {\nonterminal{Integer}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Sort}} & {\arrow} &{\terminal{Type}} \\ + & {\delimit} &{\terminal{PType}} \\ + & {\delimit} &{\terminal{Tok}} \\ + & {\delimit} &{\terminal{Str}} \\ + & {\delimit} &{\terminal{Strs}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListPattAss}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{PattAss}} \\ + & {\delimit} &{\nonterminal{PattAss}} {\terminal{;}} {\nonterminal{ListPattAss}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{PattAlt}} & {\arrow} &{\nonterminal{Patt}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListPatt}} & {\arrow} &{\nonterminal{Patt1}} \\ + & {\delimit} &{\nonterminal{Patt1}} {\nonterminal{ListPatt}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListPattAlt}} & {\arrow} &{\nonterminal{PattAlt}} \\ + & {\delimit} &{\nonterminal{PattAlt}} {\terminal{{$|$}}} {\nonterminal{ListPattAlt}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Bind}} & {\arrow} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{\_}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListBind}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Bind}} \\ + & {\delimit} &{\nonterminal{Bind}} {\terminal{,}} {\nonterminal{ListBind}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Decl}} & {\arrow} &{\terminal{(}} {\nonterminal{ListBind}} {\terminal{:}} {\nonterminal{Exp}} {\terminal{)}} \\ + & {\delimit} &{\nonterminal{Exp2}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{TupleComp}} & {\arrow} &{\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{PattTupleComp}} & {\arrow} &{\nonterminal{Patt}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListTupleComp}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{TupleComp}} \\ + & {\delimit} &{\nonterminal{TupleComp}} {\terminal{,}} {\nonterminal{ListTupleComp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListPattTupleComp}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{PattTupleComp}} \\ + & {\delimit} &{\nonterminal{PattTupleComp}} {\terminal{,}} {\nonterminal{ListPattTupleComp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Case}} & {\arrow} &{\nonterminal{ListPattAlt}} {\terminal{{$=$}{$>$}}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListCase}} & {\arrow} &{\nonterminal{Case}} \\ + & {\delimit} &{\nonterminal{Case}} {\terminal{;}} {\nonterminal{ListCase}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Equation}} & {\arrow} &{\nonterminal{ListPatt}} {\terminal{{$-$}{$>$}}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListEquation}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Equation}} \\ + & {\delimit} &{\nonterminal{Equation}} {\terminal{;}} {\nonterminal{ListEquation}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Altern}} & {\arrow} &{\nonterminal{Exp}} {\terminal{/}} {\nonterminal{Exp}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListAltern}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{Altern}} \\ + & {\delimit} &{\nonterminal{Altern}} {\terminal{;}} {\nonterminal{ListAltern}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{DDecl}} & {\arrow} &{\terminal{(}} {\nonterminal{ListBind}} {\terminal{:}} {\nonterminal{Exp}} {\terminal{)}} \\ + & {\delimit} &{\nonterminal{Exp4}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListDDecl}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\nonterminal{DDecl}} {\nonterminal{ListDDecl}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{OldGrammar}} & {\arrow} &{\nonterminal{Include}} {\nonterminal{ListTopDef}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{Include}} & {\arrow} &{\emptyP} \\ + & {\delimit} &{\terminal{include}} {\nonterminal{ListFileName}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{FileName}} & {\arrow} &{\nonterminal{String}} \\ + & {\delimit} &{\nonterminal{Ident}} \\ + & {\delimit} &{\terminal{/}} {\nonterminal{FileName}} \\ + & {\delimit} &{\terminal{.}} {\nonterminal{FileName}} \\ + & {\delimit} &{\terminal{{$-$}}} {\nonterminal{FileName}} \\ + & {\delimit} &{\nonterminal{Ident}} {\nonterminal{FileName}} \\ +\end{tabular}\\ + +\begin{tabular}{lll} +{\nonterminal{ListFileName}} & {\arrow} &{\nonterminal{FileName}} {\terminal{;}} \\ + & {\delimit} &{\nonterminal{FileName}} {\terminal{;}} {\nonterminal{ListFileName}} \\ +\end{tabular}\\ + + + +\end{document} +