From 2a4d91380ae0d2a7dfac58b8d5194d57d61af3ae Mon Sep 17 00:00:00 2001 From: Mart Lubbers Date: Fri, 16 Jun 2017 16:16:29 +0200 Subject: [PATCH] shares --- img/manage.png | Bin 0 -> 74015 bytes results.arch.tex | 2 +- results.itasks.tex | 66 ++++++++++++++++++++++++++++++++++++++++++--- results.mtask.tex | 8 +++--- 4 files changed, 68 insertions(+), 8 deletions(-) create mode 100644 img/manage.png diff --git a/img/manage.png b/img/manage.png new file mode 100644 index 0000000000000000000000000000000000000000..e73071f585689aeddf7c7fc6807127d3d8fb63c8 GIT binary patch literal 74015 zcmd3OWn5HWv^I>Obccd;x3qLfcXuP*-6bF;UD7Ds(jC$b(lsF6-9yYf{>!-c%l-C# zf%%=Y=j^rjS@Ep3o;_g-a^lDccnDBXP{@)JB1%wDFd!%>z&#uQa^)&kW(o4|iIcFT z3LG5V;;Q_2C@5kmNf99xcfA83ydaj#O2;YC1bUNS1%_8p6szU10V(CAbH@;B+y%N)!`g^6 zQG&b^@l%<6mKa})-!Z6Gx@p;VAp{BlN9+#;*kmF`K}Kc(YZXF6!=MR5{rnSvfE}Y^ zZlm)4pOJqJhx`!?hLZ@^+M6y>Cvj1P2Q)FFy?9ZyFPrQ0?|>iUvorizmP~}80<58< z9>1{unCYL}*~fsra}Ay0(&KfBJM>>Cgoa^*Lp!n*G{pXQ?BCz=Z$m^o+Pj0B@cmst zXkFc50B{3(_i$xm5+eA;P-TyBddJ{13D z?U3=~#DWba(7~#|t_m_9#0a^3O!oh|=-D<6cf1Ck##GTXe&iO^IoYa3UQ`Y8b7`~~ zChg-NmDbfF>DWz~-sUNUM!Z?>5uGNtNn)`G7fchTeU~YCOx=c{Ek2fEUn} zr{PW60%=$&0IGQEkKU??M2CCTP_vr@w^xspDV>>1LT418{i4TBOxdapX`a2{pb$Hz zdc7wt!uRrdQaYdu7XeIXZqXe*%bjnmw*0MDL4Nf+F^ivb(A~%YX0vlVc0h~B%KU?O zTW>A;Q14mK>W5~pqW#*gCRZGTYr-3zAesi(Xn5R%8ZQZiO_`8~v60gxdK{qJR|xMX zZx^@K>Uked=@4zB7d%&8=hP2J{VJJN?l^KYZY;m%+2W5qo_}uw4_n^h*dZmGMCzqlG1(OtK4)AW^0@^qQ(M!D3%zq&VA@!2%| zXvWj$AqTqJ-pv5&?$r@iGwyfDO5MD7I9#$~KX`aN@~eKb$@|QK?WJ&2Ezfy9R44tA za;!w|>hlU?Hg4!tfc`@pxrO$Y^D#epM38T108< z19}|{qc4G*7xL^u7g!LT<}uVLB$RboW@2cnX%}M`@i9c+F)Mh)x~j(it&e; z%J0VBavv$yT-n6TaV_w__94DmdsBJW??UwiJS$UdTSa=ckz8Vnq~C00PoNxI*zwkc zi##E(8L+muUUy5w^r79$yUuOtD9?(;6h?Px>2PUq1UD#SrduV>`K|m$C_!??0sgi3 zNE`ubFrNZ?thu-*01=Vq zqgM15p^HxXp3HJq>YdhiTp$f`O83`qdh-~SWf`(kN=lYMNORT6 z6QSCq^k_BUHVwCTqxKhYk8_b*JKbKb9xHBGS*vn;ZGC2OakPi0TUW79;BJ8%6$ zEK!P|aH?^rjm5_YXNbjq{Ag`c!i_*yS6i#nd+u%KWf|qE@)G~@?y4GZUsi_b7V$H%6_ZmRK~5Wo(43J9pqsR^J&p@a^l7(+FCfZ1r*Cubk&Y|DhaPrC(IL`6j(GW6ZQfR=sKrI8 zbaDDL!z#y#@bRh6xWsbJjTubn%8VRcC2Q-ZrKyt0>&w7rN4$KkU(~mQQ?5macn~cW+_n?DrwS(*uk_T2O24_IQH_!0T1VewTMU;|`LbdDjIsd; zm}nvI-_Mk&S9I>>kis}?60@*W748zZ*BeiCM3;e&J5y~rXWE%pC&?UabJT1#*=y>; zPBzNKcou!PPKMGC!Q5AwcMqTe*%E{dS^n$kZceqw#2tRiZ*vKvRG{~^goZS60tg!S zqot8lMB!F$8C8zJ(xbsZUYY<_tyaA6)t5`jttHf1>(e{ehO-ILVRG%24YImEQpv1X0c-zU9}eJ3!1Af%zcY;eFD(7#LYLd4cF-P2 zDTQFn|Br+x#@5sVgSq|x^jlM;m7`*`fhEW?HoP=(!(;#KIuUA>kp}?qfW`90*`iprgF({tr?KnLkzPUTXXx-Yix%vd zgMo94wCUcp`vwqc7R8SRKtI7S7{nhpn81b!M>A-{h3+e;QC{v*4nu!-3~DCn+))6*>j^P`5C9g3)$EC2?LT2Qddd#s`MF%dc|Q)dDC5XTuTZpK!g>3k~u&iFnUajbWyCKSH?W@_Igy14c6 zxPqV5qZe0EIXy;?Yceh`ksb^{WOuB~0Z!}KuQYY>YNNU`@*P(JHxidXftS9yt`&Ff$7Oc|u_moG zTrcy@n%Homff)UKD?Ow9Z7!6AybqZ?vyx4Q!J(}&>v0eyX$(M#sT5>IUf-!(cj z2O`7FeAs*WOYY+jw!;Orw#b}iLV{@Hk4C1qt-xcKlH;`*&*6nH8#=C?x7ye6Udp1M z&6<1b(;vH%cKP^p)A!xH*9+2i8z=JqO?kFc@((<@8M7ao(k?4ZhFp(08AWoJx%~3P zs-a~GDl*&CJonew?@VP0x(6FHCcIZMh^(@({e1X_<;dfLLnu)6-A-=4Zn{K!dz=Wp zr?pl6c&!_k*!#6;(aX2}*`v?a@QPpQp7&h|(VKW-zf-Td{gO9S@&xlY`46$|Jmo_P zf@eF~W3zldF1s7~s?)(IOb|y@>kn$BzD`gtA8M%g8bO&n)sA}k=uqX+t!gM`%DYf) z6mfHT`Pc{Gl&_m>be!djog#lc#)KzpQyaZjqY?l&+K$!(KA~0KHb;B@NyChzlH&XCuwad|tx!yRA)mayGn1%#br&c9;4#xx?-rTr zA&@^g#ia^1truVaFnT|3#z^Mxj{^5rR;O(2D4#&!WNd4Nk;$`a^)fc=k>hOEf!%5N zVK|vmNpd)=`N+F^^By6dj8z}xZoKm`kASt_WNC%ZO0j!CZ3eYG=W%K*D}xN)mGt`!4ApP6xz`^R9fJx&)9I!V+4;PQdHx$a6BGt*ZF;b#i`-E&n~V&ppU|? z4@Ng54^+<{%J&-P&hp?=;)N#~+CAIqtrfTRzPG=)O!TM@pF9y(CLwhoTivfq4AV%N z^jFzM05s9W*k#VUTwY$?or?%xN137Mo?JbQt0kbjuw3^!XO4NgbeDMN^k3J-l-qCO zAp>8!YngNdv_hKy$?imze5Mqb+P{>r$gY;ZI`4rba=W`)s`PuyBXmcCH9E2-p?tTS z#rR#bj_h~lcXMZZC{=t>lGVsZK;A+1g=#c3Jm*t^GQWL zALE(xm5LnmBubZNtNAe#36$E^`bWWE=sS*p6|T-jHfiXuoD9AQtJHoSqT{@5@^~EH zjo0SCx!n+7X=708&yqUW*W>d zhlqMetIH9i$_d}njV4I&+=uiJtGE-PJto0@vwU<5ytiV*CawGOMM0OQ6XG&AnPTk9 z!^(J2%^}*oe!baOUW4~)R*ak{`Pi7-i*bl`qnIWui8lRo`lK$~lgK~_3OWO0oEwzz z`t<@GW`xb5wNhLhLh6VSz8C(qIvRtK;JjnrjUu@t~R*%Ua8L?yzy~$x^mE{udXf)tr>q3vXBXystWM$@smur?brb zCP*%Zz!#aPCarPc3<0Q@SU?l zJ^42OF_M)XX8x{?kn*YLsxTS)D;;PDbMu`98f6GxMA$dp%Y?r)?FHKnf$H%D^uVD0 z_?##kuUb#7ne&h;B9VmiFp*nAWwuwQefY)?ci@KA%>~Nf=^hRkTFH*SzP_=s3cXg( zdQv-eCCow`Xc$_Rj<3t3f8otfJ1Xx5Dd1nN(7|U~q8Gk|HXQ8h?L~00a&zT;Ls`Ge z-ha8h8d(qCpYs~M?kd3rW0iG#bXUCyc`B==cziu?Lr+(*I2G>C0eG1yJH6x+=KQBj=(x?cG$ zpCaiVgaqTE&UNDv_R(HxKm@_vJ}CdnJHigyli(eU zPgKSsVqK({#U)F~LCVsG(D^MWs3@{;vOhrJstJ;m1Kds%B)uq)MmsEVhc0(6c6YKA z$;N>Fc$OF{KMkky1+uPpUyD!zq;QFs$}UKQ^aMHs9WDQUzS=B!OTsx{k`3nf920^QFo~BK zSfvmk3h-+_IZgoGsSA98s0DH0za?9yfQ8`Ze=78;%`*pyc=e_Q(_d84aY2WRZ8m)S z+&qm_cAGpl>%rukHfLdWP_ zzWk8Z_wZD_!V|n`^+L;xisbjNLjgqL&54c%j}Lt-w0&^vXN+gwQ*6_6+?5_w>#l3d zfenW)GBY71a-O!+$&m}4T_r|8*5cWqta1T)N!dgVp2mfgGzo@`#kPm_`9LBz4n>N@ zw<5NF_01vGP7iW+wvh@Z$pTze&d$$JajDF%)!y)5`4QvJP#nKpxgRk>1hG5&Ir$Y+ zuRjKOyjkQZR4us8mPg@JvNaRR9)?l!^J*;C(7D`PInx0ufDo`y+dOt_S1<<4?kDPF zFwkC!1x(%baeBYX{uF7#HSB48kvj&r^Ti)Trk7ru&}Y_)a-Eq^VnF@_GW=OaXM2|T z4+=v9IzGD2rPdkhTO;|PADjLM!P<{3fU6m(R(AN`TyARQ+ZWxg9-WF(iZn(T>K}}+IgXx0p zeR;o<5KS(1kyAKgg%%kS%q=5 zB9YIcYz_@5V{`S9P;7W@E$dU0rWfR19=g)rC>=Qsrs5B3!Gtr#I1bp=BnO&A&e$Ed zlq?%hlKJ@*C^OJG(am1j-8=KiYUbJ(&hhW(DqQVv=!;FKU5s4EYw@U-t?fJvy3I~t zN6(@jRD%|na!ON2+WYhFdx(%6i527kTTcY8^{?f|xL*d+QW=Dc3O<9yf)Bxc(4T0Q z4w>!e1%D2-$(4lcn=o`)mu^^KPAg00+{`E?g`|rWjcmkR@3PpXnxQ2nHcC=ad@d|g zW)u5NZB#MTC26JOF`M<-5>p)^%5BlzsfSh9)M@qHf?9^|YsK^w-N&2$vsq8J>%#Rl z6|=L)snT$YtLc|2Jv10=IRG@NxM zcxCBTJ*I!@qs=@@e-P5BVBj=<1oGW%rE~FoMoh(3D%#k6)F;(n_Tk|;yF)Qc^1&x{ zN^Nl)qHb2?iDP86&TmU-m(h|W`Nz8`&_mBBxB&Fo^j3Mg$Kmr|xEbSN!4vI)rhBw4}Gow?n8^qhHmER2P{+-`3xa+U13m zKAyPsy;zjjYxEH?(gow?PP z$2tN7N}TQXhw?M9ncZh5bHan|(S}W6HzDx#zU;^b; z%dI6`r8JJ?<)dCE{IQ-~O0j$H+S&d~bXd{Rr=0H2g~G5{VW*NfGf7-g7jS*P7&Zro z30B>%C>)Xw#a&#m^hVmxRHb55QY@~j1<4Wro%m3#4ldpZGg^CdNY|G%paE1SEnPunZyo+mDcYE1|{i)mG{~! zT{R=d=lL^hExnL6Fy?(OlQH*jrqCpTmDLMiuDKlFSyW+dhFeSTgU?5k53234!&=tf z+e}tI_aka9_@L6zJsukkpK>II2);m;GXyyG1#QY+ij7e7V7M8|M~l)kvzD{Dg43C+ zy5fFydO3OJj4jpf-fnCRsO>WU_J11o+3#TE07+^=RW;JiDC1I^UTGlTEbFkQUaMG#cooKLWl3Ows}=UmicvMFM<%nszu$u8L+ z@f_B(ZY{mkel&R$(I=S7k%Zfc@CR|F5B5dF%fr!Snc40m!XAorJcnT+T=qIpsODY? zi8TDOn-hx=`sU4>0+|#HG&F-;C};ctdT1gdA_0N+nKJEdQuMaFnfuF4@y(MZ;DIG= zHiFoTUvP#o#%r&u(sA7=(-)H;Cuif}a}S=IBwtbk;}R7l7)fTZ3B?nXBoH`$FIxrk1G#tV z1`=p-|ITuGUJU_{%+dTlzmr0c)F9Sw~e=3q7T07dXPA9oqyNeq8O)_XBUX z->yTu$R>U;ZA~W9&GZ=MxO16q%Q}2`yAdN__mbP=tiM7!q)D;|rAyt9Z>H?n%Q?$>)%T@X``Ua5%Xzgkx5T1-4!7}=y{jFe@ry%4fL zbXz$zree$vc=5t|yhea#{!`>ewE4@3EK|^t=Yda(;UU zf&;KMh;Dhv+H9chjj#|0Ln}S}yAf;>kwnkBtEN`JzQ&zxc=c<7CSalH8;gKQG&D9cy#H=@(=IK}85k&NPyyi%2jV!)B7g)Yj6bq@tvq{kzr5 zfXLlkA`^?1l{-i$ogCH^Oio{1YyJECgOGseer$oL04U zI82q(QsGZAsl{^V;bk^uVOF(x0F2+?G+aWfzw2r_{o2HcC$On`fj#YN^2$Os*k8?+ zkF6!@_$2=d=SucHXr|Tqs!4`CuCIrD+HNsFHKkEGgt;wq?WI}Zd5sRFuwZUzMK@gz zsygPN_@h_!yw2bCG=FV3OW$tP-DjUj-?`-xXqOCeKCx&uwwIAtL)TA_G?yP2ifhF& zg67n4+MFgYw-B#jZ~b=fc24w9G2-8a%L_E`rkSnR4LKfKVOgkUiv6)|!42ZY?`Fc+$jDucLwnq2d*^fTft zC^NV7*e`&etN-yy5DW|FcIk(-3;p|21o>s!Djl#a7_)3i;anCO#LFHqQh;$=ZvoBJoqo#rmtr{i+W|!BJ4DUsbHLMm-D=-Pj4rv z%eR@s#eZWm-Dh)-Z^ZL<61ZNSCZRlblXY@(xH)6xuO14fnZ6vktc+!q&Ia!*Y0rGmKzSd3JN@w9gYXtcUlJK6jG8c}rL`;*X7#{~_jXvM?jt z&bsnq<$7n%S0`<$V5jC)s!qH%mZIwTV4n!}5HCHrMskr{So;5&gH@O9P5lqb)85Lt zWq+J6*G1Lr3A3!ta7isbPj1-w`*%qf5nn$=_Q@WqO;%|whUEa|VCfd~eXibxoACXv zuKtg3SQzYEJ3*w(B=envO7}*Iq|E#Sy`yT4V%Ao6@h`J9#^-fS5Fq7XRXt_aBH>s% zLr|~)%JK<#Ve(XW(-pIR!7!r9dHkd3-|Q7y@xpKAF|T!F(TK2LcTGCHuabzJbL#E5J4lW z<0-qtvVvk^Aq*re$+j-I>kGJlADx^;^m5UAP79Np zKhjhecH=Ucva_)>PUN;^4a_SlQuz1=d9lQgz$-n~5nQ-Zu^RrvciTrCzC4UGGR_LQ zd!|Zsqr~7sM?U)GDHjnB^-`*Z|UmrPfpkJ#i?ovR~(HL&gHjJYjBOU zC+jemt?*cC8`G|L^sSJ0&6vihcV3oiCSPx9`Ft}zn-zcg48?xHGAMV;Ur6q&pWgKI zK?t|Shi&@c4mwj->_Nv$fym0EiJM*y$htgF;^d&n_d)&bI**^`{<>XV@#46dsLF~( z*IpXjCwJ)iORENRhCj5*6|gowK2D>Y4+8^Zo}8%y_q^0UIyxFcDA=DVL#_*P{*`{Q zj`kNYRXiL$!V7_G75OF3K%CdB=Rc6x3n}hDeEo^AzkPD+zo7jeAJ+i|@yf{d3cDD; z3k0DF-2HBo{{GNE%BbJ7Cn$b%kWi4>u73BKP|#1XVv6s`c^#&pc*K)`b*B(fKd3?q znaFT(uhgJHk%IY9&wS>ve;M+M9GcOTBllY_(;qK21rn+b5dOIMlv=RC%0E!*&q?6i z=AZrY&>z7CNdba6p`Il&{((f$j;c_9S06~p69P_bdw~Mm$S0)&o6%EBXn%zY!wQ9W zYu`|F3aItJ{P7iH1%7}Q#I+WP-}~0w?;N{486NtK{THP*K~yLq;Lpu8{lW0LP$s&* zdqqui(u!kuB%Sy_s(R|!X}>c>Qx7m3J@gR$Xn*oZy=n`uL3R!ZCXY9|>-Z=Sa*2tM ztp2yP2TUNEqaUT#>0_Kdpe>T5+1kCdc3f>14Ozk=h-|<|f8E@>?6EIbfQW8=@jJ)z zZE&5Gj?WT@fQbe8rT5U?!D{?i(A1bb5#M5eeO5J2Bu$Mq#~-+hI2$Jh2UU2%(N-ab zTe?-KjluNLk2F12wjImylTa3uC6Ai6JDWzWVw!X!MJ?#I$;az8n~PupqENw-w}3On z0>iRF4Bqcc$QBG(d;jsQPdur8CZ|!H0JnfU{<@%;QB;kbl3ZIuGaRv0)RV z>_x5xik{y5A=$lKQ0SFko$}1=>`2h3KLDK|q?Q~0;z(*QDr5R_>?`4AvoG3$<$(IS zF|JG2QI?uHp&7`aLF1su_<*YC)g-o`opO;@wpV_&neIS(e#Ktn@gSCIHUzUn>(T99;I*?L9Zsi?LHuy3KCoSvSZ zpIZT&*jax4HiW8VHkOIKpg&yQY%;e#^`OkFEjy=g_cdHS)MaQq@$+x`3Jn7jV8kC< zh%_?%%=YHm@I{ii;;&Ep;p^Wbsw~gzKK;X;K?OMe=ooNnA&C9%6bpGFD08s7!1NEx z_&*QtZ(*%I>Hg+e^6uTQp!dgYh2{an_M8xK{Mjm>AI4e6KaiiBgP85vPbCRZg12XO zD!S?a@Vh(6PJ{TiCN9Prgr8%7e9BgVT+dr0WBuJZ``i8?*=;q9)Bdp`mDW4cxoEEkyFEFazOgWMK1whJ4su|Ig(gJ!mpR5^13rBCaB_0e z(D2&$<}+Qa#KGZV8k@!Eq*(|}X@Ht$Eqd6;WHr#i3f0cqipUETf?5!D+fQjPDv$qd zlFU~?%NMI@l+$8gVmbo4yNLpwQoa!m&hFW!5@YZ$PDkMd!0l)WJ)(zz$CZtf^S*(O zo&9p5)=D^edZGu#jTHio1zaAPK1DNVN9k7@3az9L4t;`vXql86wpZoLLlGe+y$Ioj zKE98U+k|Ngd8r!YReRirC0r!H+2gF~#>eCbek7?uI7{Zv_Fl>92+l)WD~IIZ-%h5|^~Jv|)F|izC`K6#9?Y z6Gn%pWy|1F!n>=9j!`RbdTd3Wz=wR*S$2p2%Ce__0Pr|q_e|m0z<~eYt{!g!R-y0F?z%B#x}X% z+Hjxm`%l{atJfVTupd@gOe1qNhV9k=#;2=g#)tapb=dG!;U$#aJ#-?fJ!j8Nf=YB` zS{KZn$&aMJrB%9;z{&`gDvp1JEdTpA^1m~>V1INPq`B^1m}HvRC7hd z^`aYaGd|LC7FjBf)C#?E>!al|>iWEx?s>iBQjIf`E)vc3(nqD*%&Fkao5Pm5OLuY$ zxClI1bT0=_y=V3^m4B?g1s%rY|IJx8+fIzNn`&sWIo|wWImjPQpr6X?JiU1At9czU zK=9IN%sRc1*KwyQxyo-yyXFZES|L(El^0XthZ*Hx`Lwq%gL`zgVh54c$r#0)w$nY| zgyS-?9>y-MIE(9S*WM;o^a9kWNZ@|>kvKBg6!5`@N=)N`O3SZLk< z*t5vLSK7jZg9vD%S7^hOOZJjm{At@rDuQiY%Z31P;VA;{0LKKt@e-18F6St z@{^|VYcK$6F5SiMk2k%WX{eYcN^}KJmowQJ$UlGRTP-j;0E(d6@=2+wlr3i$)ko|G zeyIji4uSdNHkNxCxDLXUXY<*yZsRq>H|0CQo~290_sj*h|m`bwNI()78 zDwudmJD+tMtbTNAzwSAbv-@lvpQU6qD-5Yk)@7w7H6A4nXyT9TqiUWl#!z_RpM0*t z?b(v;T7grE^S?TVO`H-e7X2A0vfTj-U{}sFNf8wtmFuT`>?+w3q0%+>=ER9+Z~47B z#8WS*IPECs*lkyaX)l-aq&bP^*&SFC=|pxFqqEp;Cq4yGZ*4(HfJRnqh4Zkvq)Elcc6j6JTbG^a-PD`z4X*ea!NIqw(BsPW~+H+N^> z;T}TB-{;k^&`%)2jQy`}{C_&j)xMVb0U1Luh<%XaO(qHE;}F_oe9>cVx#fdS(o63{ z^V#>n^QM7GlNXdqVfn{H;oWm0hy@@HrAmoCm60_e9bqvSuV7)4s^TMSGg>T&amGHf zvA=0>)VwVu46gcs%Y-0HS;J13M@qu+b)vDYtVrXnR<&5-$y_&**EB&qq7IxJVybTY(|oey*5>vh!AW4P+dj2Ie5>6AerRi zs-D8h$H%wTyV7S{xX)Rnr(Bpf&ZCQdw1rQr_PicaV|IuZX#KB7iKOsDl2w4=D(_K* zhI+$WjT?bgeO0t#J*M=1RSA^>11AR6GKMUHaNn(sxMRIxgs?D`q$J8@M9wlPX=Smt z!5huj&2%Eu#Y#Z}Ec&=-r0OgtA4@)@hziHhVTNN2qD#xj5a89=s;rA*rBy^WYRf>f z5HD6;+DQK^0c&bmhK*m1s0bQVha#2xY?Pc}GTdOde zkf#LaKFm0aGo`M_y_bs}CAwv@$2Hn#_>U9WkzX=zZic&m#w zMQ?y*wBLPB@3b$iD$h3Tw2JB9q}HmwK(LazqUYe~nNf>%2TR8Fmo|;#Nvh(Pm_-xz zLMEV%Xv9RfneLdR(cj2GOti1>yke%EKn);8LE9ClGN2daU86&$KAz(}%fX!XA#X zb9HJN-Tk5G*ApUJ9C9v)!wK6lhV@fL!i|49 z^D@nmlGV-m+SPfCzCvpT(^Ixomp8THt*X8R&$J|*o6`p@CUga0F3Qt?pkHizCp@&5lgGIUFDng1NL)KvO>pa0(~@u{&(ezj9ydXR6^M zf>|(A&wM^ywF+jv53lc>{C@<+uX7Wk|4!Z^0sG;Kj&Zd- z_UP2PnHW09hlv_4=<;Xe2QeB*2=p<`XrLY8L_~DIXM*I&H^wrk|Cy>WMvMeGONz|R ztOPfMch=YuJ>+3X+`uVFTSi@*X5wdtyc6i(*yv$o^f@mtk6EOpGx>I7pax4Dm+@yI>KTW>CVT$JV!As6Ytg@(l)!GRgn%{CcI5}i4{IbGk`*}1rI z2CS2o1+9nX=jTHXTURLNh`Fv6$Y&w=k7WsP@(O-xS1nP)2JL_Uu0W0g|1-u7suI)F z%QV~9lb0!U6Q$e@c0OC5AzYrD;lH{-C6XgJkCpu%p2@Kmmmo$6137usPnTl1(w32s zpdwleS1Bu6Bbl|22GCk-jsu$}ZrCyJuVS8DQxhoitOEjsN^%@n1VFaL!TfsjjIO2Jz$ihW5}H# zD7Kym-vC3C6v%&`AfiSMFnZto?;%<*?~-eQlD@W9wlC*+MAD*Dqj@Dp`aq{mhUAic z%GT7aS4!p?0UzZ`LcJY7?i=Vway`LuI6=Uwpakv8}Ryrw)mqD;eRs)GvN&S~!gY1hM^B0WQX? z+zbsHlu&&!zfkNOPxs?=qd=R6wXqoiE&&;CqbdKW1|dGCnXw(+J;ht}#kmr{E-On) z_LjS8EGHz1avnf%A5~}hpvf==KK)l&zHi8nQ{@ZdJNaLju-kYNW#V*x`iccaEY_vO zxdom}Z7=tIjk}keyONl`rAcVG6=|C@g65LYp$vCY~j(ec4pjnJgnw2F1(>E`2X?DJFSBMC#)=mUAZnDA5!jl2V~m! zWo`_7bC43rnkE*RnpQ3CHkmN!$sy_;uDHt4{}v4qA>%6g8SWVlU1e4IR0zr9Y#C^;4^wtV%<>e* zQT2TAt=r&=;>>@b4sx&yQn3C9#$r(X3uE2?cNm)%m&2wwI_oic$_c<`P{28r9GoZH zPP?*0Cv*oj%8wOe0|Qyg#!A7d)el28-JcQSA>Au+A0G)t8tKN?hGX6$p?!W-H$O;% z%xYFs(Maz~b!bKQGwuuO1q|OwZ0e4zz&+3NN6W&hG8c{WJUU5v%GAnPsHpKhC1Lm_ zjk;gzLWRruRhIylJ=6Kusm{q__OjvO6K`-$rc>SFN7kA*n8$T(;0Jc41_NOY7D7V3 zE26Br5$y~2%j#?@$J?B&zUy?%3!PdTZxeyz$E=W&aQRy+y^7OC!q$fM#@?p0Bv){s z`l9?|R(3JX?sqQ&y}Q#W@Wsp|YO$|%mgjo%i-$!vD}jr60ixoek$Bz2GUo_V%kz(h zD@#l4ZLZ0i$!~w_#i`HSSZ}``lU#Y^ZLMyW211yb!4xHQn1mp{@(i!C_pK`{4|a8B zC+;V|5+~z^jzP$luYJ{9XvNo-B{KtOR~Gob`gAU0n&uc+{uAfcWmZc!Y>!ez-sFX{ z_(lozhd$hu?&zD{n}$?Q-;bwiO%KGMP$KE7_i-|13EZ5)Kxv!P;00Z*PfKIGXl3O}23Ru9yxFwU3)Ss%iL|J}&dPP=2Fby(scJ%XgU^gH3ll z768)h8zl8MVckk;Pn4MfFR4cJkPZ|nF7Ly>aPuuYVT2T?<%XW>x9V|t$lGU>VdB`d zFKxHx$FcIxOD5!+YRASm^y~`fU+hO=&DPE?R#qKDzAv)y-BKQ(1B% zmM=EVRYwo&0ob4@?TWO*ysTNe`)TEt5cP2u*9X*80neSmvQ!}T_s=yr>5}`IxiWZO zPw-+}cs99*HK~DsMIzI2@c){(Ah9x}f1wKRod8vZsq^usHaNuJsVDh^?IvkvO+Qjz{;|!E%w(3;eVc>d&fDe~Tw30KKnoGs^ zS-g29e=mQl=GgD4EjZuYlr!RBY%_PImZCP(;vdsbT#O&zM?Xux-ka>(E%=VO%U{+R z_*j0#Ixp+UT5WYpCpCHD>@YdJ(F4j-I+p7xj_m&F%spTSPwp(1Ki}d*w_;KszR5O8 zMj>j%Zm4|Ir8!uhHs#v*y4eRGLfT-JhOj0Ai-Mo2l#Df6>ZD9cTiYbxT3b#In<>*_ zU>ZgFOnq7vFMewj5l}JMQ|5V9aorVr?jY&6Vmt3=L3BI!WP5Ed6X!FqXj+e#PR3Xl zPm0yzTWiT}OMLx=wR|SaVUKd>7hX>tAKH?k-rsb|;Z4&EGNe`P4l>hE{a~AqT$u^*WCd zT-|65Yv2Av9{pIvOD5`q--88dFM|72Txvo?}PNiunj_|mOQSeqzcl= z`H1P8((b&a3@H_=l%K9c5AriURh+~p!r9KJlD*R%m?%E&u4-BBiLWnrx7jxPr$3k? zr*Sl_wjcLq&lc-0x|}pEDQaegmIOI`W}4kIX*tst6dd1qIBi+ z2C9vsT5|a1*UnYFk-wJ5g<*SePxTp{{EW9hp^-Y(Y*tXP@@Rh{*;gMFqmbJqndlhH zVSV)C)a*OZ7r9>kUW3hVY#0ZxnvO_Xtx42++dLTyKaJ7t%yQkwXC;6qu*LV~rT#ZC z?1&v1R=Tgp$`xzi@|pL^kCXk;XBdpH)XY71>U;YF(>V5L`Sv0zQ27q7R!oJ(re%v0 zA}rd%*-V)fXQk?S66NBSeroqpakvjuKsq2VT%N`DDWTg=eYxoj!Dn)I&_&tfRV+TM zDbnL{cgJv`3m+INjDe2#H?nYp_BZ&ySd%Y>`g*wT{x#F8-D? zmC@&8U9ELL4%8f7lUc%LU|D(py$AKXi${AU(EQqq8%@ns4PwjTZ2Y=9?s64(H+;p~ zHpdRGXsR!&c3r>8uP{s>lN)6Jc9Oi~C|5H0zt+BB52U%Fmd?(;+a^eI8umq!e$=JQ7Uo*w)t4@IkvK2<;Y)9_);yVlS9la^cV<{KEUM$z%gR)qd;IC12-% z+;)F>45zqWAE(kxM2M?#pS#&sUjJZ=MM$4Kjtv&FR?=|EKbYfbTeNI1Z2Xp7bCe=! zpRqty#S(CM_zoMJ;*ipXMfZEMp0o)M87^3}#Y z$_lWiBOL)7I}Klpp7B}niKQO9D?a)*{~W{wE$W*kdB?uPhvFvQM= zPm|$Y;qRR`w%H3yEKfqXX}$IzbolW!YTmW#b@;R})q@4&9$PW~BhDSg0)zi_Fep2U z_^Mz2{Z1R@k&p1-J_muLW=n>mkCQ`rnK`?WYUII36~D+T zHgvzbzC1E6t-^$v!{}6QWi9wC&TH_S1so+GbiaPerAo>pee2Y zpJk0iAR<)$1|EN1$$tJky;jnhp6~^fz0u#j?_yhVmj8hby*#8jWPh_bKVI>%7ikL* znc`ZygLvdo?_lkFY6D(sEwdyJVNkKOv4~w5JGHa}F+gUBTuZOC zL@`VBTNq5z+TJcGzB1%ybn>MqKHctE`2^#i=-uDe#OyhRM95vUi5^A?MC+@mYZz7dKAY7YqIu{Ok z?S$mXZO&;$-dPuEO@FYj2{SI9*M1oz=&19!<=X%;MV!y!sC>@@={5Eq<5f1)thKG={fQ~I=7snz_4vLD(vz`48F#g8%KYm|GJpR4#V z!!ys&3!Fxh;XcwDc~;{+zD_i3MvV5#?y@FkL!?FZzPR_+ac{C12pUaOrN~=P+=xTI!RnA-NZVP%N+niur#|hbBx_Wi^|pyS{cxYP927-^_7J z3iYhI2_yAOcZhs?uNw^BUQUPs`O(I{Xl;M2-+1xiC>9wuak2m9I?5ILMF=k|CYP(Y zw??H$wPcJPCroKABY{d$L{M}cWAO(X@Gc~fb|Mtr6sec&J#)4F*)fM@N6j8`>j?0h zlE(|9f0Y2Vz13>vgX;kVsu)Tva`f4q+-Wpc^1v#TS|!Y;r75s!4Ir8^+s#xP)+ z2$L98Nv59H6#mmrKGQv>{aW!Dz1o_eV!v`|u?h@FG&&Jz7e^s3Ad&L(s$2JdfBli9 z!_T_nSNQXH4MF$g@!Zn;__PT!eysd-k&(LF3&*|$`~TA4G8(7|C(lXD2b7{~?$?|i z@*tGlj}+BdpLTx=QS1CIxc#1bU7+(W^~f+nE%<*NY|%rWXAA4max{Pj`={L4k|Wk6 z6FuUGem;E%A=xr4Pz@c?)_1ORmDbiIA*ng*7vDR8@GFj|j^v|Cw>Q z(K%U1zmh0920-p+A-=%$uD}>wf8mrO4$F@wK9GaW9-4 zQn{_>?5O`;ArHTOFjdRrSjm#4+^)*w(;e?gm%rY1_<{86r&6_WHO6#`&c7;M{8h5h zCM?5GL8ATol46-a+w!Bemi1~B65JHkq-t^wxSBu60FokaL|Wh+GJ3_46AlSe`Y2MQgjNA0aatjsYpvr0bVb2Rhe95mPq*L!k|$qr!+QHIO4O_;0oK`&aDpX7OTP*kX zDr3B`qKP8@^-f;{Sc-vnwRPj)xkM4!=BS zdMf3EJcV>ww1}vi!R|KcdinK3d4(mxkSSBj@6k}0m7hC@+qU=gw`>SNnW6K_TuZ(* zvHN?(5j@-#57oFsT>EvbQ}G}f*@5xrTap}E?Wbrz8JC>m96ntfa6?krS+L_Ikvv!) zdZnA`!)-H8cIDMJ6QRRC8kHr?7RRnt_8d0XBwWuAMQaq1>>O&dwayN8JAU6K3LMQi zJ7eOdT*d-_$-eKsu8v=p1XPB-bVf$Ldd-*fIhb4kYyCAUxEX|IUbVm{-a<69;;Dk- zO0$Eaa|m^tu!eFo3iz_Lyw4v5N)RJ z9M_YzFt;085-m`6;az02@{_`VgXFbNM51Lc!G}6@Mp~IX2!gu)rHzM4Ml^jOkgp!g*qSoo`DTCEI7@q?)v`7 zK0R8h9!*DKj7LgOJDqnumEr{vSkUkmh+$cf@YT#^=o-FHXF~AutiQj%(5rx;LQ$uQ zf81#AF%9_fi_apWiDp`LyVjVxWk`{YirqKW7cz~F`Hy+uAFrP_YH<&mn7F^P&KrR@ z^=AymCF@8B$=MA9Y73c%$z*$sZo{U)wNMo>0v&a*WqDky0$zNGS-C zLp7ED;P6~6p{hC6$$85|PM+dk{ zAV_RCxR0>uyPeUziLpDgmktuQyRt7}2p5>bYGsXU85(lzH(a=#IJ^y~HN8sMo+!>8 z#JO^3n&5BsS6GGHiEjI1h~4{vV>3~xKXGweYjdgzaoKqS@zs#-cso`TPKvU}W2UPI zr)+qeHIs`29Gdqd;%);tj5I95(S>`tLxn!V%gU!z3-{HNjs1YHaE}hzmvI$oKpt*% zF8^VPPpZ{ZttNivC%4@z=?*3<8wwc*@Nlm1V0+MvN03%>9$BrD0iIuoxybt|#D(t; zR0Uei`Y_`X6J@m7*be-^XO47IvwWO|bLhXZyDs)Q^YLvK!DEA8(+Qrw5e67qJMf&{ zJkl#a4Sfl}_Vo*|QB&vH1qCkN`Tg*RmPJ8E_VMw_$jEq0k^4{wOlvLf<_?+FZ#v}z zCBoWC7}IbioyhksduiR!j~sXEIIQ=S=|?#Kv@}FNZ!1 z4Qv~uJ}13b#&wgO+So93bMmx09lo~Ee{83N`UXuKKR7xntLGmduQubehGwiO^Efg% zre1iq*2Wfzz>3R*r>E@}X*1K#YmNT`42m}`2+F|Fuz7=q8wf4{oaiL)Q6v}O>(M)z zo#UZSu*js;bog@r!ECDt0%_(fPgvl~w6)Iae292f>1~XJZB)C5r~Tb7o|323^12*h zcrAJ}bNoTGj&R6AR0;EYlZl$Jja+A-)w$a|^L-pzCHhhG(wa*n5*JtVr)~s)KurFEj2g~eWf)zu*IL%@Lfy?l0&^6JWiqq= zW2<3~Cq<58(YJHSSqAL@{%Hd7u53hqnanuI2v56M44Rq`L>9t7Mq-1c9;N{+tli&k zr1=t>gOW^ljSgTD0akL^Qm{^H;S-dt6iIfvDrK4MnHLtTqbqM}j#8~34bG!VwTFRD zunPJ6S7u@LL_t?H4inBc`-$bPyT08(&d(`cx`6}XU?Nvu`KdJ?ce&V%EJk8q8#^_4 zECzS|SC%vZ?S&qIQ&ot*#xJ=kxbEwNhbc--_hf<$+pP)p4ED>q@dM{PPjW5`AyY4r z05wlolVawF?Q2$Tet4}nYrVPSDg*%*O@)4^%67B)7l7SrK}T%p9_%gVe!O(ax& zjc0OAQ^5RVgtBikXaMyulosr!*hZ8#A=K=Zs%?Q&W$Q>b;GiR7^OLhNy_1Bh51J38y|(Zq+SkI^M@?Z~eKK zU;G-5BI4^ezqA0)Lj#bFUVN&}0UwW^6P*bq(3&l-Nk%qbY&ORD4)?3g^L;;`CaaTn zyGFfNDKDB@^ke#5gHz)wOir2E)BjB~mtvj8npPbgcW1We#)`w?VLGHLFKJmfQCfV^7&UsV7`s4kpIy&sJ}E6nD>iEzFz{V|7-Z|T1hYe81>J~ zQD_LnW5;$rq1bNQvLS+O|9INGw(d{@lay&^ zmRRIXpL0_Vp>To|)aO$iUMcQ3eZ&e(bolK{#QgYbDrmYwujB4gOVVWX?OmigmcKL^ z4+5<+LSU)`a0Rczq(eOr*9c}h-!Sz#(>O|L7c{d}VPUN_mKZU^_5HmQk2F{P0j-uz ze&(J_q>?`b?8oX9CqjM7O{D?S5PeSAObih1OGZBUE*Pla&zF*M)(8fuy)J2wM=mA0 zW!!BZ6u(JLtgEo4ezQourYm$!x{b?x47V<=h)r8eZ{1A zezIRBRz>EmZhC2<@&4-l#;qpba{plFO6b0ML2jn?nAdp1?n8r$p3>sN9t)?gjw=}* zla`j7)Yy&JuNU13@r@__2H+0`MaPr%Y7-5HS6%8H$WpdGZ&c!??d}k?DD>wbHZ|9OP|h#PxPm)80ZPD)@`b83f5{@SQ5g! zW8B!ROSgzZ(TdohxBN%Um%4eS34mkca#)^*>-#`hVu}(2&VjlrSrXg6t3<)6Xd8{# z>;^$X?mj6V9-aHa{%@!mKlVc+?abN&gGZeFJ*=|D2dP+q?E6M8@9F;9fN2D@n% zKtmyqox>K|f^QUyVh?sFP8h0s(48n7)x5lQQ^rL*ultCTs5T=W4-XGP|3QGc%6(kO zL^9rAM`gz>4*z`$;5_-)_&)PN zhl1}Y>c@^SghYVrrg@}=2HRW})*qKC^ju?eO0r|z&NT;@I1BcCk7lSntW`X8z)N@M zt+DY!7ixxk;_%hbuYTDFS&`3mO7ft(kmlP-OUbI*m0_(>Xf@rhd=oAeL>t78^HW7m ztfhr#F<`07M8h1;k~bqNQVy(^#e&1;AHSHNrmPYfpRq=~k>`ti_r8xSLW$*h%IM1q z00#IqYVHgCQBJVofhPA$EA>tde--rzFS1UM&Q?KT!PQgpc)-0R7{abjQ*%&2Sy}R( zew@EwaGr&>nrVGTMZ_$!3gMiXM!ScL%aO5_2W9Z3L&!^@9<--O_QD8H*%%Y>hh~nH zb?xV&a)_zc66NlqB#*S-AF7$jO_hZyg4CFX=2_P3v_^A&vF#FdVjKau?w+P+5&`UXY07 zwh?e^xUxrHUM)5utpH}xS1)Z=tyPY@tezH^9NH`F!dB#+iw-9SS}^IVyu7XhVBxc) zXK0!Xjkf1&(AWCpOX1vEU}_o3ET((D+#y`XyPfd)y{K$Kz-Qaf73e{~ufIHCnY32m z2l12Kb1CkgPv1+WQI%!NYb^oll~-ShTu>V#S~faU(Hpq$&Pz#@E~R^`D)me*{e*Ip zHcchzd8IJvBQzayt~3;i(i`?YK37N5bZPDBqj?<7f)`ckli0nkn?<(EWn_ZWDz%I+ zg@sr+FkZ{tBDFWCsjV$niOksOUur7qit))T$Rm%5J|XclXRbITWIntZT1lRSVY5B* zbd>JCLSmvY=u33{YQcR4c$~Du@Av0t?uIq~YDj5>!?kX+)mVMH&J-RsPu^HJaz(Y6 z-E`uvzI~~KgNw@@+h!VV)~HEzxS-(`=ydxy-CQ@?cFJSfDBv2+8>_(Q|7>0v<#-Xt z1A!`IHU)0S+E47*?L6~}II-6JGTIHE2h*38AT6l%QsR&FiGF#zp%^@Eb2pEDZE`92Qr)_PbXqgD|1&+$p;RRvwbd}W&?6xflmV% z*RT5xvyhy$YzW;+?c*a3Y_d0;9&qlj)&0$};V)HN0`uE7uK}UuZzqReUk)>**EP6w(y)DY(t8Vv)MMRS|vu=mYTeC9+(MTh)2^mae&#jjYy<@gw*? ztEfdeJf0NXBAMx=+NgZs#PrZi#``Kv7!qfx=Ir`$HPxd%^i=}GVUy-L%Te9;9r~G2 zr~rr{#Z#7_IG14u*X?@wfF<_K{6d~&{4irrx1b^BE-~W+vr5m8@%Hzvx!&a0E{Zp| zJ;51GDoUu$RUykdJSp|&)wSsf=_N3^zEls9l=`|>R@|;zn^+3`p~rBkCW;)5i?26& zhVD7&Yga1xzV_P(_Q*hT&8IWYxy zzwjRZz^kdOwt&_qfh(kcqqvazfx2-B<@6e~W1*PImdG2R1$(}4*V>&ZUGBDy<Y!dMte<;iA(fCj|v{ih2bR zhrXy8OpdQ@VM}JXLgpe~64s08^^yngBbYbhQTjGUJ!?v zT5cC+m25%nzL5t4%ETY1CH-~Ie*&VgqrNb@%_Pp`3GNU*+)oAPc^?XfZ@SucUM^bv z#2>XgE2C5RW3asuptCh*hQw%0RN^lD2Nsg`7bgW^<&8 z54(SXq+?9UhvYoyVpG?R8DGtll$PN`QNR&A;BrzYKM7n3%XDtZ&7cUAiR^>cmwHn7 zdwXn%eAHn6eW*{iDcg?NQ60jS7O5>&B)Eup$XDy<-q^ z>s!vk=hO=<-ybevlH1p@=3?&@4MAb@vJZX__oeOqQ|vb`%!_@DPM&t^ zVleKcQ7lf#xR<+z-2`0te)e#w-h{d3n=izU!%55Ni3^^}lv!lRm#hQ$5szzp$@>ol z!8^a$*}-D(BNTJk?LlvkH~4QYc{KtvjACc)oVF}qUX#2E%q1Gqj{I!2i(%6vb3)?} z5sOQcx6JckHvFMYV#JVyGgb+J`lMs2#kfSb#?o_g-Lj+Lbr5ym0(@_!;^}eVJ|EkN z-0FhG>~I$GGKItlbL}bMddq?quQVe=URnEQBe2QGVrwCg`fRCy59z0mJ^Id@y|U2< zLH4QmTX0xTFxR#IEJFgkUxB_^hK4~=;b30~*QYhQ5G6%Y=Xc;d`ckfIun9tV162$? z@><*sR4q3L>vqka%k=dk7`GiHeWDDYGZfcjFaN&BEDRVZzCr3NaaS}`0*2v=43vn? z243eB1s0M`2yO1C7DYsK;yS7gFI8$V6VCg)XOf&Nulr^xXXdlGzZOsFCb~1agv^5$ zsBz(a{J7Psv+tCl_1GAcB6?)@W)u_3ULH)1O{g+FQtKj`@&3+BFEz#)fhD@8Q&a&B zb(5UpmEC<)U~RN*AdDVtMzx?HDGJEnB zDtQf$w_VG*mgyqVgJJdbpvn!TXn7w`%5~~fz~JgB8s^oCcSP@Q=DhZOBwkptJcDCT zVy#cM)Xp8fpd4@*Cegu-b^PQ)I?$~h(3AcB=G%)xy1g$sUPLI&E=rm+8cFe*5op!A zX;RjyZYl13&bq~T+OgNIxd1QH%#((~*iSk^N=4+b(jXt*~9 zy&+gmHO}@S8gcsyRlBWhd)Oj_+g6V|jbR2*wxx)7q33o~HUO)jgv?JMhrk22NUbu5 z3@(Y$6!{c`hk>GzEFe4wA503)0S*q1mU(mH;_qR~M9!%nySKOIjMr#J-yE>d zLE#plMV!_Jp*NB^l(Yq{BK7B5I=6xeVA_X$*9ES*g&91IuIOmNT$D7vKr1g zt!#Naeo${=-Kz8vrD5&E0y-Phu4AQ2!z&LaXY=x_?{lq3Rc$@4LA05&px!G%pdz}z z*GG;#SP=hvRE&WX+YP8Hv0M}+7}O+`tkOFpKqDRYdn!s^C2Ur}30&Jbec4a+$9w*2 z{+^y==s+ql`*mj3?!N}}%k2l%|0=^?scWD3o0OHE|N_zts4bHAO}U5O+-cx zxmGeMCingi6xoCL!|q$w|I1AxNI#k*a`1l+4;fTMWLI>^GS<>Bz3MAOgnX2wq$FyzaHMiQ=`URQJ5VqR z`X9jKn$&V$i9aCp&r4o25MPlk9N@#A`+|a=S0{3|s>=Qi<-0hASX?nG^X|9cf{qiP zMU{7|_)7n5JDLIt0o3e_@h!~ze@+4%H?_||up#JQ4>`Fue0=Dn%9je&*>e9-LEyeQ zFCsDu^ZQMLq5?#qAcU4_)z}OI(!bGd+}hS=k_LTFYJIv59w3#vX%+OhWUd-_sia7X z3V);9C=QBE8|k;+|yd z0Ryysnlc!`KVRhoXc;(wn3?|aXlaSJcL^&kG3~@DLCWq{b3QjM2l^9{?XNp&G(Gl; zTl{nPigy#y1Vf5^DQYF-j_;VP>9pJOr!-jc$DFR~2#Z%DHH9LYHJj3r{m#S2v8vYN zu=@+wCj>;u0-9r}I4j-zv|>j)i=ti&&;Q1T;#75D*Sv-yy442eJF1&d<1!szkQx!oJ! zJx+P}X@#v`$4*FvqEdpYTT6MUlw#Vn6^x$0*&VMks-JwchsCh0KAO;F$}#NlHZ+N8 zr>m4Q28*$Oqo$OW{RZ1uC(D*&1^%KX$xCk|drYu|uQ9GJWWXn_tED(!Z3W{-dzJBH z7R!jfkT}JX0DpfgcS-uhcIkkY<&eFPA6)&*6*eM=xZ;G>U&iVLs2Rv`f=kjj-arbx z6mf~t&dg;s>mUE-W3E%Fux_Q{N$*isk|Dez)1yYzlM54wEVKC0eGFv3p1&a8T%^2y z*SM}d#%5Dnk=fd54-AfnPj}~&k0s?R#WE&5;WCkpquj{0#~}Kqz+^xEFr&$9hr$=q zxGf<>)7W8a-v8QZA3MxH(3d@6Ax_X-PdV2K1HCr1x1T{4}o8XVQ==2%Vr~TpsXwlJm)y;%` z)WV~qatU8+jD{AJFA`Lg&xDnjIB)JVf)7mGw3w2)@ft^|pA>ks_vw-G=H(K`jMFjN z!H=rZrre}X%0~t~#RXHcnrt&!l2*9QAZq?`;$3yL12NNniMAatXNDlv&R>a{Hl4G zh=dtMCAjGEcD<(+Lo1t)`4zhp!kjjibIuUIj9$PC8sKhNt1^|StL@_Bc0n28Q?f{D z7)_Fs+s%`RpNz~c=iQorCIp;TyhQGVHqe39d_Dg#qloAAqWXF34f)cK-bc@UPmz^H zt!0rz3NW#*WOIxiHOJ7WWIPW;re5cL)NPid97AJqB)S4QP+nEhmfjfTqVWvB5dc*j?c`}iW z*SHbs~|UP50$pwN&YbTYisv;o(B)y z6{CFAjFVF>RlggN&47O8{J1yDIXSti?OA(|d@n_B`LZ(O1vVe#u|Xko^LiWJ1iHZu zkiHlaxZiGc79(WIZGn204cF%+FrM+v{55QeNDe&$m+Ql|F^!5l_GuQGF}+kSuv5(Y zVB-vC;<|1r1-pW!maJY~2x-l#kTx>{p6Z$U6ybDMS@@Itd=f5Xx7~Z&GaC=jMHzo^ z#=Yve8CgZeoAuYitYj@1TJA*4TAC__CZ-rjByp5t(|~a-BLT1GL!pC9SKC z+D#WtoTsWx8EZfR z;Z|1!6Pm>7#qY1s^^q3yXqyFo@R*raZx-&C2>`+4>{pmIk4ML;Y{^QWEYl;8+MPjG z;Hu*_=OUgf7f{O6{l@#^$?74I#B{!4KR=dcr+k^avCI%?sok-1ke@LB*3hqX?r6JV zSQ$$iYXC{Ie@h{tR9uHhsJquW1XZJ;cU1yvPXXo zW};X@I;!%QYgQ6@8Ir%9Cht&U-lM0!0>It@PO!&QIqV|TlGM(Y0EY7Xr@q|6ac8W3@D_k0r2!F z2r0MxAvF@R;+XHykmWk8(w)Mc=wTDeCUC>6p|(?v@J%5kSjD-#ylG`@J=60{v0xXe zF{x>XhN;oXoOGRlB9PR}bC*P|&C%5elzHu`#v@d_3}DN07&~fRLh4j!sY?_t#bSAF zy}(+o(a{PnHnqFtC-)EUzMPCs_I@-U;x8ySCIm_zmtK;yhyUd~iz_R~WM&e)2f6>l zB;VuWNcR;5$~|`um|Xvh1k(})v1u4@E$q>LHU8U$m_Y)a+78`sx%_@R?$6}fs2|8B zc1&**R{2l55y~Ft**i5Z8dLba{Lc~NOsKMdyej9Sr}gEg2LaD{!h5o(H8=1WppxmdWdBxrDis&48>S7IF6D zjclZ2$EXRMBMSmBWrNQx#O0=@dzh-Mw7Jw=5$e;yES%v>jPEO+NG9Dbg#v|`w7m+I zCY>2Rq5d;XdqXhg$?jCZ#ha&bDP{ij{bhjvajyjTp}(E=`Jj@J!iWLJ)+2`wKBx0} zGC7Q&eQutpwrStO(*drH^F#6eo-)f5id~^RGlb>3pI|Gg8xlio!&c!CnIIdEoj~0J zT@PHbl@u7;%94v;DXcAS_i-ZN!oK4sKtn$9U2FfXpaH0Ec(sw89L68`qzB_WcJtc9 zm0Cye7Ey!z*>#MUB?-s*ONBOJPFNKI+Lw|Hca#_Ws%gzN8Lp+!+*dAhG65u)5yz;8 zYtiVj`FVxYaLH_QVJQn9oYUe$%3WqjPN_R#6`*=+Re}ri3-G>;N0x%4DOcpYhNOGy zZo|+#n3AwdpK3&DI|lmLY7HcL>;yKrmwB|D+qSr2FKaG%x7oVqdDcJ@u6F%j99}tj%D5;=iO0WOO7l19r`0lalr77 z(_6dN^)J3NzwjV$S~Nsme52E57<5^7(0+8{iSbw}%C}pz0y6|R3Y;e}ZJWWZs+KQz z$oO=7(sJllrZ!_=M(K>q&d7zo7~!CMwi&QCu;r$5-=zgV5)+)c3-hQz%9$+nCqJ(4 zBOZIw;=}B!gWEIc=$tRi$bW;1Q2D=yFt4B~*7~VXavD8{G=fz=nO&kwi(V{oQHvd1 z6QW@FiW<;h#70TVxT}_fBqcabCstQSmcvfW4>mz20!n893hKC`x`B(qFn3$2mEZNvhBORBdAb{4<%)O!>azfO6^^Afp z=rBNMiLeqj$GniG??UjiWMv{M;~+0zOJkt~U_G`p0D++4F=KaEhZ7FXFnX{_&0SI8<#WY*7DXwYqpjjEm!O&!r{W}A3> zItv3jS>%r=w9aetOQgw4NLy;9N$jmuYfi>H9RtTzD-n;GbH3;!en(wx8XQmoP<*=6gW~aZ{yFTq}_>$|}iDOHoWJ8I%IO!QK?vZEVHl z%A7Oy?$tShh5Zl@ZLI0U0+p_v1s}uo?uUeKw{mm&Q8(&|sUnG-#OS!N?*5>aMgu(_ z{g{Z{@%_V>MMjo#4%RmlO_{9xL0i=`;cMqFknR}0bz7Yw}q*vwN^E-dWBwF-v@_@B-AP$ z)g8d@*0omA-d(elPLP!|z|j0U6n0;MA07Y&m(&+@LdgM6RX2G*k(AJvYV7OV@EI+VRj}_yvZ>`s>#T313TQY6fTge2y+FPsVIf8>(X$K=mHP#%#8%w5RnV z)Bje73MKbd%v_1nbD4(CohG(&W0`?#`vr_eM2s6FoTgAWCoF5q~>T+g-mHAZ2i$P6?+6?SxV?9hKJu{#faC?mCW z798(LTzf2~UQALIBP8_fbv~&3kk0#QdNcQdUhosm8#TxAC_!Vp!jZZQEtJEi9(dGC zP?~PbM!qc^a9Y9@q^$pSeBg-jTD6A*>mG!nC_?Y@?{PfroLunAX_A^^MOw5j%%<0> z^~$NA&#{sJ;XxtmNEt{D!bJet)+ zfuz|gJO2Iz5in|oSYE@p-1xzGYqZbw9L+I^o?AC0@s#1otc`TITiL;FZK-#^S>1X_ zG!?51Y9NVEsoJ4`9fSV*H5Z&>{YYl}2#*n>3ImIA@=f=GY;=W9mibA*Aj`Y2&%~Vn zkk#DnMIi+!X$h4rpDtp4gLKifWvL2lNEg zUwro(aa8NWHe`x!kRxLWBjhmce~YfIHdw0BZ~VmCpdlre9m`*OjoSl6@%tsV0{z(q zFJ(#*Z*fXjbgn!aVQP!UgxDDUKy-QTh>=c`{xBl9sLHg<(Mx#HD_9pJQ!TnQS}f_{8YuDajAw?q~@2 z`WnOz=nVOQUhb5x@X4{OWoCt5V=yzT=MQY1#8x3S-d0?O$7MT(@#uG4N#NG3rEhR0 zB?*~N`#+l1=0gg2Ou0Mp1ZkOQX?n#|W4%5a+L}h!G{kUPWHU`s+HpKq!;tJ%H8?H=9%VW*d4~R zz|!(aUL+X_z^o%DplWQi?GBW~!@7LOdK5NUo8g@W)h<^M5#fG3q4^YLttNJwxs*D0 zJ<3pVdUq@sqiYq%2zqV%wuR$fK&H!$E)<~w#ZQ$8Pp5YqWX&9h)}?@VZwUXEm)X;S z>78!Y`sA*`)Yke`#|kBym>TMZ?N%?|bZq(5>#Qle*sY1sqn;%*1+gjQy%j)DX;6`s zQ@dkzoxs#ztJN&HOS>hJ*M3yFW#+luy#B((emteG>XH-GY&p8L4FgqzV@ZngZ^91) z$gY96#v&Lp24qiaQ{+e(U3a44I~+Ia4_JxXx&B(T z2Qfg!_)P6^u17t^X=3b01ri#zRTsUlNFCF2#J49Y9GT#aM2C+DAM2rkE<=o#x#jvt z9!7U_@>a#b4=4TvU*J8alk2S1=s8Tq*JPrsGn`UrZ_ey#y46%}v8A-a@;MkHQ?T(na3N=z&Y5n<6HQEdd&(rz1*5_!~nSP5Ay%T8Qz3bAla!r_RD}q`g zjC6o9hZD#Eq{B{>@~=s}@Gc<)O{8($B(oIJ1O;r| zu-2KVi|9d3?gP4KW>$M^badUaO1ffQq=u?2spfo~1szp>G3Yabb3ChF;1Y4xDCo_P z3o}Z{U6dr^SHL1r_@Xj$e#3%ccb?KpPs>D1{XPdf9*f$EY)NXUYEuR`O{%{X+CTsJ!F9k)ws ztiJVnfu<{sTj70p4mzLo+pHfrO(hj>GjmVy3*)&%wOO+f-7i1 zF)`tRxwTT+cWZd-G@_GP?-qCJr0(1>kr~#r9kWSt$R4#%EBh%Hkjax1s^dxru)IC5 zo3K$F34cgd>N8)uhr}6lKG#{EI&uSWz-<8tholoCOzfsQvfNy2n$1(QL^MCPP^gsg zJ1-ya-)CEX%IxP5!GQi17To=Z89_9`274Ag$S-d)1N5>t>9sni8eei-?7@kBSmd!8SN2X(kyUBN&gi>7r}sZ zO2oGeoy~3YU6YN8M$2LINtnOCAzn!2G-5)+R}c_FLP8E{!kPJqCeUESkyvlvibq)( z8BHT^We%!?eW-cZ-JFF);vVvlrA7SPH^4Ri9c% zMp_e?U+xTu#wdhdg*;Zy6c$1>k@D{B6qIv-a?()1bpSd0;9#fzRS5j9Ntey5S6^u&R0xMSAiJUPV*lgCEFEOO&nnR^I@S3f-XYI(KUzyM^v zje!rj8n?cNDab>|72}RF*t$l#Y!=J$?@Hc_H6QwTFfDkIJRE&-IzqrT$}XL;TMhOI zn|&Zy{I?R(u@uO9GxUkV!y_nN2d5#`RW~LvyCr4r^WIc_FL`@aWgWA&z#nY0 zFerGHY@;}qi;nt>$K)4GZCbY*K<~WP!b?m+Wq$9uwl86Q$;ByUEwobfe&3i#v)-`X zex}qV=oCh}c)1-qprx^g$n-H~lRV;ZYkepteF6r^cIrI%#4%S}d(qfT_Q5-^oc#70 z4MS2{v(Guk#xz}eGvbIPAer9Y%x1FBBGtpGB9eJw<>55aaLyAl0+fjA&_XasG$!pS z6z6Ew7Wqo(k3m<#f(Cu0hdKHUp78%GK;JW%gFvav2ob41g?($3_I_q*D%<0TAv1d#(+g8(_-p>CHqox6RFGYHCtRq;;GX3OACzbdW&Kvx&1fnirC-B%aY-fx4>hS^(z z{o<4Af)R%fe)$D&3w$o#sIiBU)VU_ypPkK*EZ(VN9vr-deCjGtW02q^l2U5cE^$&; ztX0o{47%2v$x6G{%qdixQD>o`YjrDXx@ndmzG7hhL9Qo{ZHf9j3Ob+ug09CGvhUZN<^I^0UTkc+id zmQiahO7}>w+gq$L)a#e^hoQlddQsVkW7#>n%#5+22EKe^cz_AG9t!J1t?ei%N;!|&oLn>kkpWNL*XXa1l}ZC0@+Dj67F&uwS~s|EfxR zzqIiU^`Gg0MB<#QN@z*2Fcy?~xsAKTF`?CBC}JK$7n2*%RYvxWc;wMd&kVOKo)DcBU8B}(w;SkeS}=x15ywI zPs?}N?6rM53W}eEC^Wx}s4yq^d3`U+Fw%MPFs!~$oaUJ5N;|1Co?tX8M_zp zadcUeJDKTexB1>Ur)8;P-vpNqZg_yF#Z`YSHy4omEx&u9Ic1ElXE7U5b~Gp^cs9q69oGJYq04c9v8|*TOBPB9f-W zFuFN_pTgRAX%Dbb)?GOBIV7y9*rA{5graKoFYr=F1SYtFeG+&jHAkbFV;&hE!(1*I z`~D@JgG4RP4v(Tvcn*t8k<{!_6}cBzf3vS!bB|?>QgkM}%xU%Qk&dVM8oNeez~zrT zc91Ww|LyX}SCj+qBZBFd`s`5CFJT$exeBcO41}V6wmLg2E8`!#jF%F}J+q#5kbmdB z?8bq|Egi*ed{q`mdkHN{Jt4%Hl9OND2Yg5;FC=fJq9IXUT91y7F3f|Tp35jO1?3ng ziB8W&?7QmXd_(&4vp30kVdRtu{S~xaymkZ!8g;8yYii(PNI5-RD2cy(b zysM88$S5cvO1ts?DYO^*-#*Nd@(T&2>VqTz_PbnP`H{Nyt4Y zYxmdd{)J*iLFWgK?d+(@Kfvhk{QzpRX0^f1`pez>XQ$xEgMRRT$ISTlKYRsHhi@@J zd{G_3v#{@vF9oy<{896?FMbP{$&XN+46ZQOmRjvzh(tQNw+)c@}D@A-k8KY7roC>-Qbq5i#U zmNX#G@2KYm)$e=%9(F#+UOfxe4mH7xdS7@*=}nA})0KVFmDX}4tPcLan0xD}D%&S) zR1gF~Qa4Bmf^;bM=?)n~7czyN#owLsR{yBf> zVm-+Z&+2?-074PYlJT6)gX-$m( zUvfaqb;xqTjD%LPNhoapS|JZ3V11s0h( zmd)3w3L&ZLwqLowHvikoJKH$yr@~;JR5_-j*779wfadc4OvdDM%&1zJXH0LoyDWor z+LZM%KZ4l0v>MF~Bbn7wB$YF!#!t48{#m``oGY8ZqJQgT`ZY{dOn(0Hx-q2*F$FDm zxycLX>HWfGVa?m$vB9-_^3x3id-8i-NGY%7>myajUfZ3=mOsq@Hn>6?AF>2-QVkp4 z6b2KwsnZ!Dl}-%4|5R&K3rT9CJ6oFiJB=cz&}^y}wSpOX^n~^N%z2%Wnncy}|L{}`#@q^-*YS6Ka`pkRKUyE(6qw@w7FGF@ ztBdN9e^+b^{2N4J3_zG{XiF#K7PU4Oq{PTg>TH*tAS;3fyMEyFvhA4)(^cmHoWLjH zxdJCn_7UnAN!52z>c}nTS)+AoPwMVp*lJu_Y{kvUpPXRv)v;Ui?0=zQ6?Ne%h8Z~I z!mJN@?WNtUcrxpSd1L-~7q4=<4$YWch6I0~Hu6_&75U$%jl`;p`Yri&NsUZNgp0xt z-2Xsfn5t#3%ah#Rd^W!DsC*qaWd;+cjhs!d2M$nTJLL`aDD>J&fJ!p-JEqo#H^^CE zoD^Ty*RMiXR3l$AXwdRyUJU^BR%zk9a2lf>SpHJ z`DFYpkq`$Z1&PWXm`ti{KV8!A{_NqpJmmU^>kifKG>HNN0^zmM6_^vB&iMsO%x+(hBP6cY$apt2p*MDGGrB)JsM}a zaeq$!yy}P_=GiA`W7`(i3WDEn2zklsXC6V4z})U;xtOP|6a3%@wm`Hd(XB={PJ{ic7!z=jj%eNM@=|ZEg~@+ zoOY3(>C+YYtf1uS(`3{_}i?QrDQ?V|qL^d@oe0l6bJ-z>wUi4M~ zyQtX(NVqp<%VeDI`ygx@;f)2U zSc)fh8%h~=CyLuV;(7I7%@%Oq-modekpBdLR=IySV=xxSK7}h6oezPm>p78bIZ&&bzbAqU_UY8#|huzDGJ{7vH%aljYNS z=c$6^_nOjXU$8G44frqSxu`iF;X|%oQMH3%=gXO&!4qb1_RiELrPH~A)pLe&V39TRVuIy zctQ={DOcNGqS!4%VWy(v6+51M9}|Y^A^mI>Z6@JFB{_S&<1h%_CtoE>1OYv;qQ!{~ zbdhGHOvFo^`fRar_SxyC&h%9OCQD(vLgXl49{Oro^U){NYco3@ddqd$T=2a|I#A7z zxHaPpB>*&s#3tp=Zu?{*C?2Cwp#?%(zQA~gqYV3 z44}-Cn+b#5a`ivYw$+^!>K(@m-2YAl=&}ckYZ-#_bu9ook%L|&R5Bxg$8MU6f?jCU zX)kmZ{i}8ov&~@tMa@Z=T&NZ4UeANXZ#d$qaZ8`%Qw0mJPQ(1fgVyRE>7J14cZ?iC zco*ok_7Rck_0|8TRbF6D9D}{?dAe|2Auq6pl#MaH3T`+MR)y ztnsv%jZ^y!H#P1hSu~bakrIjvS+{_y`xn-)Y24UN-D5oF3mo(IlNcAWD$I0sN2L4An zh_kKB=h!qLbW2IpT6=mQdxOVqn`Zxvp1Zl8^p0*`y1-rAi8jT4EDx9mFcTZ|myaTS+mN&TpG2~7GX5JzOa$2Tgb~yP$-x}FAHf-c( zw+7NfG;1L6U$@=hhCKS1)X1^n18xm~ zhb@D?yZ@VYtgwJT&Kf5&(o~*NDjkp=JZ$?{gm6W+s@-J*jt?6JoSh65bumWAS1Wwc zQh2}_Fn;DK_~q*&idYpx>o5i>ROv6jPnK?nb9KJ<-)z#(^EluXE>7`ohaqqZ*Smrm z1DuM3W2+86#H%p#w8dmY~u)P?0Jx^8 ztMG&YOaYXlq9bknQ3jCnU~L|hq*6vyyLmFYms$X`jjW(SMQ+>PYv_3yZ_lZBnE;%Z zKY>m?2$dW%UHK}h!8{G^(ZU`N4r~qD3cXGJ`!d8*0qd3}Ed->5tAlR=R=j3vmTV%s z-H-#I)IK4%znKmcUShT>6SX51zWO04baPI-og}iEy&Q*%&<6hI1 z5x!iJl7aob)j=hJT5cTm$g``5n4R?9DQHWvJ9QJ;2EXl}}Od5wX<+SJry z5WxdX$}1-=O+iaH(_%7N|L&!xqUgVS<>4w&jwE9J)kA>f<8kwEFWqYba132!e0PAQ z$ASG19_{ZYbA7!l9lvt5YjoCXjEj9u569ooL(H(X1zn|i zo1_Gj9``!JGI7;473*F;)YYA}Ywexj^Xvcj-nad5wJH3#-4X;1G-+q=N|-^Hv(zi^o-M|?REO$yB#~5 ziFE>2hfjgRpT`K8fnL8%4#0~6hlkD|`Y7{u4rpbU5dMqs0sVJ2sz z#M>P;H?%B|93ULZd`*CuGNWc*x5Dy3rSDa&=y1R&KaZ1`JYhR1BADaW?YjhXx=`<5 z5DP{9`#k7R6N!{I^EUc)?aLugGcNr3g@me6eI?J!lgLLrSix;7@k}=h{A;`QV!+{| z+T}bV%{WZNU(y3p(vxJE^}DSdPSg^RQ7_5JZOo$-3!+-C4YhO~PMo*tR-bU0QoNWS zsB^o!gZs?@+OxQ-)|QrwY=ys=NPoU)jAv}6qKc@dVR7yywh%QOc1e0LBH`!um!Vek z@M=(tNgU?dB$#wPIM^-9X5TiEQy!g+To$Jex^y}<8nv$cyvx!!Qqx-b32rTdz)FE< zt^9jqoiH}5tEx4J=Rzg3#ek4pzG>DWgEUJJdUOB7Pq-cq)2_3tj8%yUh2EoRKyR~a zv+`2`fF_ZlZ_8T-#f&+ph!MXt0}q`Z zGVHzSPV~$6Z(5G2SS_vcLx;%&fYR8UtVtX@9qYT>6rh3qX4 z`P`>Wm)CohEK-iM+QD5wOuQkC6DJdT`IOyx<{;-gH4AHmyBU|`tNBl*5c7qaJesyM zr-qH^ES@jrr$)p#=M-^uL^qfhu+vrT&azceqCWZ ztLv%Xvd*;r$IB`w79Q|<0O5x85@FY5b^SA!aGv7e^*2cl?x{Zri_z7krH{u;wR4(l zhGHH$eb~44?y%Ys`KS)S@*yE3s}yG?6oGSdX*BCP0hV1Cp^x%f@qoq?(=OkUpYr~8 zilm_!l8`^Wgz>vCy;2lw9KegH>16^#`~I!AYQjLifCJa`yU2p=ATAU9P3-s+^9W*P zx}alNAR7p72@BXtHFHLX} z^>ZHSb1xW(7TP|zISUCG_Idd12DRMPiTNJ5TfE7-aGCc=)r@=CX7rdel2G*PMw!Lm zx4YOltjF_XTe0m`E2(pV|oYD7wlU}fAq@uw3pugcRedOBth$sE- z8l7v8=c}pElg1gph^^%19C}ckm?~S8%m5ltn;LHw<{6&a$YkCTk9q}$enH5Rbin?b zikS|=d(csD0sVR5=(4k2z8!TIWKsBktN&gPeh2$~IH$7c17)gV>~Zb8^x^4<_V&_A z5n8c4CaWeITIP}09Uu`D5EGmo?;spVC(`oa$Kz=nbcBcKk)|J~&#RMIs}E^Sc^U!CKScePS*)~uNzaooD66O^$N8!%o?)ywp@p-WpvZF4h@ zi?m*QyRbuF-p>Cc`{mo9Dy8MBm+$=|)_0>*>&i}Fc1CHIqb9b>$@Mxj@bS&!isHh5 zKoT9$rQu&)qhWY^-3gx;0w-iwYFz7s1!D>d`Ka=7UPqVu6|qatvZiLz$vDeXrZU2% z&Cn=k1uzT6Smjo0*=Mpn6El-BhrNPf@&;|s4`oZeiVC*eJI;`=4HIz>m27b^mgL{| z_$`FT;*KavtHk)?-L%F37J6%$E(sW0nu+Rh#?eNpCq@&&V>xFRM1wyz0nJLYDUO;w z5b?aHxGt%qn~slaQD`t(QJA)RIwNc+Js7STXagD>V+(vO7J-NEBi7Z090V0`cIC{wB^2s~7A+$l>ed=~_>l)gbyV?zb5qtBO+6Yvp;^kJoobrkwt%;FG*P;qQ55xnA5B04#jNn66F(~m=z=ao zA}M>|e@Q!28#WbUWAYLQ6}D7{*Ks=|p}cC}#GDATjX0{Ne1KS|!xwqPtSQg_QzJ?P zrp&IMYsc*7T|6YjmYO)@JDJ#kpiN9vd8kQbV)|MKqz8~NnFGn0S-^!lC{zm?%Et%a z0~FkjR>zxMfM_xPMC^4Udf?ic0wMpNs?*8Ywj7j%TlpfIp)kTL?})S6%=s-EU+G)V ziGpyXZMuBIe$8*mi-Y-8$VNsYPwI}LgZn5M8+8va7xfA9&noD_OE^pK%9sz*TDwn1 zjLmeiv+E*0N;n}7oB|4v_RVrCZL_QeH*)H+)a)p8BF&0`_B{t|`PyRXXRe#`c+qYS zGS!Ydtk@A=_`e1;BwGQ}U}v4b_t0YnBsrJf;+^lTZJoKS^7uT!vv%JkKEcEU-{ke2 z8=-13PakhZ9Gk=wmg1+7q(r)Kyo$pW%lVdGM#KKKioE+Ls7h)yoBfIkb$J;bo?H|3 zI-)Y-rc+k6L=pq`(%OLb%jZiKPCa4Crx`1>mPPPCN$>W!AlOj7RCy?MF~m0$w&6+; z`;p0F_dNLdSwUD+>*lPffAe0!(2-9eF~?aky;Za8^JHP)Txo5YojHxeCpM@@!KMu- z@>7JS>V#{#3h}(!8h&e?rzm0_jx`a@RN3;tIm?q`=$rhMImP2~sv)Y9=0ammC0Ty$ zd&eWQ;i@hO&smsEmY#3Hm!}@Bk`^7}#%ojw{G2!8Vf26qnkQgV^^!LOE*0`V7nilH zz@*RhOTg0{yE0S!)lA1+`F^9u2yh+zb2d&MwxZb<4fwR4b!Nl5l$MDBJi2wRkfm5o4#wFPuh7K2T;+=6nsSm)M>Uc!?JVb*<9L#lJi5f3@`E=#^{M+vlKo4BEI%c)~`QF|-uk2cb4Mt<{ zo?HehWAKE<_bA5u$i~&|;BUyQb_fP zvz0klp&&pdzgBaj4z1k{ci(lioq)xB%`E3}$H1hl?QqS&DSd4r_sTj)jvz`>Wt&~g zYP)L(&y%QxJ19H%9&(h_EbV>242&zA=iv#UIhdjl8@l8w)YC7M*YGy;GGWmVoUnhP`YA z-^H!$Gn*-YOd!h!u5fkvJc*Efp7{XnqKnx`vTpBve(=)=%LuGV8++O2v)-Oa2l-T^ zWg=EGUIHj<=iY}UEM{vMd)bRknY;BOd5*M!{U>JmF2L}{DyDpmy5rsZ0uE<3FZYEk zD!n-!TH0lx?@wbQ)UxMBDTj4DIc7bANMo%VzaZ*nETcyn^wxk zn(L&h@^$z0us(fCL4Q|aC?tW~d2bDT-W8p7Q3Bx)Mhp5NM(gYlu@m4`7;PavuwBf;u-DaKS zOix_(V+vB6ZA&RM40w^BRwK7&?lc?Gv$4T}ZoJ-`jZfG0I{w#0caJI}-YOMrz0hYw z?z~Wp*1%D_Z;qo6^3&nzOH3DP*0Kv|BVE1k?m8yA7CW6jy5GHbJa;L(`U##DPX&Ix zTXr2ue$NkjHX%&8AV%A9vJK9n{B-Uss!_|GCa4m8d9m``X(J@;l+Acew65Wj7Pb9+ z1)dxN4o|6aJ=hkFTFHUn<`~3hqy&Eb`NmYZ+P!v8R@4%?dYFyL^DQEeljjr)eX6CJBGyXJ+Kj#PW1CCIcN$G>%zaB~?DFxFH^%Ido zz5e~5ugU9w1=$RW5U*#|{ra}#6yP?X$Q1m4%f=n+ZpemFpAH7qzpwN1!wcC_Q}MH1 zL&0A%pv5GD4yCja55}U0Y}_p~qru0*5;KiwKM9B}C1p{O+UEVRV*Ax86_lTxrE?re zVU|zGa-jt29i(0SO~}1QfC%yux!>hu!F>LL(q?!lZLY?406k4GbH3Q2)@YW0?#7IS zSc8T8MmEx7fwY-?K|vRxTNWgo~mta_=9-xhOCbAMVOsW545C!6OV70){ImM=IFC zl`a)NWhtMN`&782;3aC^M%aN(5vX+X`j{3`K`GFU1_S>3t35;j$>lu}itPizxSW3B zZ7C+#(s?-*R%m_@ff(G>LYJfjrPW$FYq(T)Ivr0y<=E%_5+d-33p$>WwBKOp)aF{Wu+V9_u$@v~W`&=|Ly@QE>mzR?87cJ-UD>QHI*QmGYMNum?ehTh~% zme^sZss&YkTV_|zPxHZ2+I1YJ;7OFD2^3(Y*M>E>899@_=)W05xTOf_RSTxnEe|bN zOe^H#c$)cLNRib{sHvdX(%9r^(e9FFo`hFRyNZ(&t3P6Jl&{V+O*fY9Z8Nn!0y6(V zAKSeHL(T2U_|G!~T>H#&*hK>=e1Aj$WD(e?e+LoeZ(=Hv<&PEoQQq;$*1FSJj5xW1 z%eqV_9K20@sgDkQCyz`w4-N~8jf~a@ZARY}Jn%d*IvY!f+)}lh4}Onzy<0u1NPvB6 zw-6R88_au=F!!LC46D98h?tsj{;iL{XF+J>ub5%ZQJmW)FvwdYl(cCcs=|YC zVh-wz7kt{=pNW`d74STWIXE&xvwVxHM+YZ!w>acn7hCH?YoH0r%B;q0X89$JiAwVt zd5;pkYd9yri&l0i^l7RU7)P%S&-4g5*%{F4c%TxTH`Ag>U|~Vz4%KpO;qM>77n_(Z zj`7T$?p|gl<+nlWANgkpojP=PT5&1xlQx>{1SfIW9dc<}S_Zo@bCl^D4DP3PoKBaY zIj9@Ft{pe3UQDKP1D_UZ%3NC}^vr>);K9)mM|B=qi2kBvSH3)P9px3VZK=cu#Fga&AkrGm7{`F#m!c@_7DD6&p;c^<}ly>Xw zY~1=wjnnH>P+PKX`AJ`t%aOIE0EfEN2Ra+sYG2_xAR`ia$Q7rCt*p^ViOOIuh^Md} zf>IXgmi!9{av5!S6F$%C*~-U_F5Hh!)hwf=?8NelInf`LK9VJjW4qERnXu|K`8E(* zOP;=p=xE`;u}>Z%=)eYpdllP@0>f|S=zP@9D&QSk3+nGtd|2$^luxJNdXFodtSe}O z{nKX1ki|ODQ-}mjJ>DQ%Yx zS^%SI+Sj+$HD7|;r#$(D7LYIcUW6t%OgDCxyk(wxBDhbFcapeiuG~+pJHWwhw(f{P z&k=P3mtWA|Th5Z?=*Lwff>xdxs&5hqtrwZFyz|3Dc(7l2FG2DsO}P}_ukR8)b^Q-+ z>wQqFDK?!|Y$Akpks7N2E+Yf#dFO`%$!e*WDmiso8MXX5GFjP0_PYWZ-_2p1-txu;(S}B*Fb;z?vDtpnj&}`>|a=OwIX}nfg*N_+{+LNP5Cz z{N#jzB5EEOTAyezsC9o=K*4?8~*<5HFq&G`^B< zoTt9y8E;9E3RDzHwfZ0Y^k}6jybYUSr5tZk_>vvrWm)H=hSE|idvXc5i~TgfBb)xn z<%EgSW&!w;Ti%ZAEiQy?;x)Ozs>26xh)-JTY0VI7(B>KpTC~qJQhJh~Ubq@pt#o|) zW@@YByvf&nz@z9!EL{4&gAR)KEDg)L~9Sx$LtLQ!4ar+w1bN`XZ%Xi7OUvjb~ zEz1jz>&-O3rvrb{--USYgKUvc#Ybs7Gd>%Y7g*$xDj+*ij?$VKA|s1xmOmY;R2|aO zUK!HmRvQ|b6Kz&FNJ3%foTfBu@*406$H!zbgRJa(?bsexeRRL!@^Z1u3YTa@T(R1V`4ml&$>k4zWw-?OLPM8J1 zs>pNzUm`>9TC{5tR`LnD`)VsK&hQX$GbQId)WTIIfT4??xN)ET~IrD>xuZPUo%a*?<>s{_p*s0deE5L=Ayr;e&>Nfb zvhI5pk0r_B8y7CjYocmQ);bdwWzvcevJ_D1PLu4m7V0__H)zcyYapIO!k4&&5zT-h zsY@5#t0*_}Mb;P~?H`Dyc+k%Eg{iF5Op}>=7Vakw<_!d}*f0f80!gwH>^_IsxhBvI zB;U)aw5V|NWF<_LfG7Ua&-9qb&q$~IDKsv25kR_4Oc+o8ef>)~fZVxbu+y$#&-MGh1cDdpbYG%Bt|z{B zw?1sEruYp+{}@jSx(Y9ziNX2)JG|J^0j^6d@EhJZ*q`^$1H9~zpCPf(zps0c-zS2) zFwl$qF-z9K6NruEU*CW6M{L9yb8C4c+(8QWS}MPy7wW6%MJpB&69&%6!`)h)jM#SBu`Qa>7O`EHVTNHbcOqY(Jf2v?o!{p=76EsPImc8 z%GhrY2SUv0<`v!yI{0q;f+!U{(kb5Ee5<4;Aao=dsVi-;ryzP})Ne8OCU`aa`))*r zjxS_t*Q(UiY@(Y(M^qKOBinsIbXbV2cgi+#ZoWhPUS1uFF__X)U(E4-{hiXnyw!*6 z`^pBpyY5@_(F10WR}E8ANai!^I_Kh`OW78mZ0Nyme9WRF*l&C}wq&P{WO3u*!Zy>h z*5e7unNEWkMs!W*1E+!UHGFGIrY}NIs#r4V*q<i#wSGxu8lVPTzYJ(B7!KLI8H6 zOoE#B_ZtsxEDY4yLtjWJP6V>K4j&IagT^sGJ+wD15Vd}l`x>Y0<)G~s#QbJ2OxNz= zBBdwzzi!zJf^kI|h>X#TMz5B!gSIA&w@SEG%87s*XYGIFV_XVPt|P@y8;IQ7lbnTNmWEvno?y z+E^71TfFV#Z6-P4rt`YtnwfPoebe=`q)R$~A^KZ%2C{nL1w#kp+zty`3Ed;3W3K_`Jr2 zg!#D>bx+o#n1!2Qza5(hN;~bH11#Z}S-5*YJnyR4Ko(n8C|T}q^=~X z{DjD#+hTae)1x~u0GADQ%OZeHZVOBnND@N6?tHpWNWgPyVN35{52*)bEjAFFFZjK> zvtY(|dt8m%$u}>XY1{%ZQ$GTHKje^&9p4|ilc@z$6Llb8ShpT1!wrFK^5&NEQO~$E z;iB=kcjN3zx8x?sMXVw<&1KcO;xm~Jq|q2IG_5n3r}&PD%P%94DFbUFCzp{P{*}}J zmWmvg|0A1Uo{bKsEW00kOsot?MfXKs4pg40n753@^5S?e{;>TK^gzH-i>C00 zBPx-;a!?t8$$wn`ZNpug(JMJ9Qv%#wxM@9!|C!K1Kw}`^z9!c8ZR|)mr~1d#6R3tvNPaCc3dj{ zpy-k#uY4<;Dcm1ESF#rHR>$0`e-MDZB3Hm5p5+~w8)iB2&1!SKre@z@bJpjcOeGbq zVi0IkJ<|-kT2Of#DdKnR;L#4KN*=zTa#jbdfCpaKz((3s6;SAV$N@b%n^&j}$a{NX z^Z?zFmg!3--R@JC-y~xM><6>;c6f!XQ)eotdbNXN zePwBT6gP;+-4=1lSn%U3UtUv;-g2~i)~Z&-0xT67FPdw|WQaMV z2q)$oUB-M^7YQ%4v&!?K(V7{L?j2;22XZ=AmG)R0wEjXq-I6MqxZWQYhATawROysreeHCUeP3zt{AL(7Kl~WRjW?CZq4+{V~(N@#**0$Xw!1*RYlEHV}i#jHr-z(BfKj?lCAn@!A42Pp3>;VrMr z#y`oluFbJY#Yt-*QBLpK(thgb#Cl4{sk|`ojBKrkjC)pD6pUp{^n*@QAFr>s?CyIz zR5>Yq6%C?1Y9@JB{8Ws+l>RI}EqE~mMDCT@z3BhyWE}y4%N)w9#q1n1u~Lk^`!4rY z?6_3K%7$h`>9@Kah#;1D{G*eW(o+EzH38Qm%czN-_b2B#&W;UlWQMZsGfLIa)^SOW zZH7N6@d!*kJGiG@qE}{a)m5H?NIj9}&*h`U=-PSKfOC-FiTC6qC7NbTc~|#~=#p>E zJBEbSDi`>)M<&9@@W1T?NuuOqRv~KutI%BM^goyr@XPD9&!A%?Ym!iljvO|GZ=|;F z$2*_k5}?%)iy`uu^|nk1=VyZWZRN$^do_O->@vy(4`Y)PraS3@eN2dR z{gSZcn>-bf9H2V-jwvK2YrbE$-RLz1@6N@u2ZYD1hhFRm27T!HFd?qGIBGwEtSU$5fp(1e76*1=bmA#^OvtU332 z=7_};YwhT}`umGYVDzs^c^J5M%*^|BccYk}caum`!ouf7U`5f6qkY8C+wU$5)Fwcd zzbAI4PrJp=Ql?F#9yf<4K=D6F3bV{Aoul~jA++}sr6{91JKdepaa309Vpm^yuqH+0uXr#e?jJ%+ zPNxb1m4Al^$+XE?1d0x$nLavK(0*1}XmOtVj`^*FvXSyvy3w>%qn;Q>{m+aH#jpqm z=Do?a2d~6ZuRSGi7xG}_>6wvw7~)E%`&OsEw6c`FUhouqj}pOZD~ju4vD=2mjEXLK3xc z2FP*2^KLhA+&O4srPi_Id5fULOCJ0hBVCBjv-7e zx~Fsd>5HtJY)Sc%)G39F^kpW7#{HR6(mU&nZu|(Bo2Al8aN;*+6p>TFeF)le%K`@m zj!KF5e-t;AG-g+%lNzH~7*LTF;<9VMo2j~>GvjkBAXtJ5(RIkIcbZ^VXMCH{L|GrK zl3CQ!8UbG(Y=v&|kce}QloltdFRRuKH@)V)5ufRObU^_Dq-SFj6C-7gRUS=NQRef2*?U}WxxD|p>wcc2POQ{zUze)^YzyKfnH2P&nI z0gRbx2~(&znPFk4LP2JOaWH**_s?OU3qlRx}0GF-KTekv9MgXi_@(O$a?8|(3 zSr=BhiH3LZ$W;AbOAH67qyreP*TOvr0GlgE2<|f^lIO7h&wezN!l~z@xH06>IJ3ac zYVO@)*MMs6HJlQIE|cknmGYDb6V0Hy(pQR5(_*XMwBB1Jp+KUmWSh}7pqt6U$zhn) z--`{`ZxAeh>7JC?a^+TCkKvPODeG?i2BeYTDq>ij(u(L_G47T zxxRrsmlGx3^}mV&9Rt#opOeZ!a{nXu&bT zQD!f|EKEwB+r{1aLCaIQ9+fS|@6}RB{D$(>-;1oRkNW!Hv6{(iy=U^g4hjYx0IfzExsD#oWp zw|pX%T05(*Tl=RW%%xk1^1tYf7{U(5{vzDi7z#!WTJG-n!0y&gB>d637w=D$Iq$u^ zAxE;+0K_rgwu}x#fZbbcVOvyaQSdDE(&cT}#VerS{sL#{3xqm#O7B|kkja7k_Z~tz z-==apA_@6=QiY3W%fy#BbZk^>V`H1K{J?nD_O&vT!zdXtR?;M_KrUhEb4_n@83AC7 z^>p=-rN~LAxpx&xBsyo=blguT`UaR6W{M9&SW1@^__KB5qhSmL(w;dffiyTlLe=Umu|+er}lLiDCYt zst6q_E8j`<_f>;jOf(4AUj{tiR~_kgbX=Jo$?HM>eDfxW%0Gx%*|PF-`r^Cu`Mxh8 zkxuE^1pBb8s*g&F`DToH+H+MXu^*I=pe5;6T7V$g@<`-?5u_m@A(8-hWbR!=W%bCT z9UXlNqOwPv(wUp9;l^Q2O-VVI$2v5iHpBm_+OC|T!0nTkSzE^=INx*$YG9It>N)rt3dEA0675FmPI2ZZ&y?COZ zj$!$5=UtCqPR%{)E@wkmCqFB~MKMWcgUTvP9dx8=e0=$s)vW>@vV7^tp`tQohqntI zdROi}H$Bd}o7NpvMhiu7wf<&1gOyX%sJ3}rInGjUx=2t&DsDrba)ROwufg;0+60LX z>$})j+~%EM4n*I;J^RM2i6e9JRjJISXV7;)uh>=oV&|sDQQWyZ=$+qP%VI6FS6ZxL zb8KvAkQ%Z{#cE#sLBNLE=O*o8Pdls6% zrvv7~m6B6_VL%SU>MVCR2f2#Xn8@s8{7rNqMq$yXnvd9k9p^2F{~%~(gXi9N^Q1^J zN#SMiR!YY^1r^+fE26KFG^{9{^CT&vO+ZR9l-_)*G%sZ}{R1@~M{0EbnDfQ&bHL?+{#o|2XFZR^FBjk5`|$^xoLhgp~o0rp%b7pt=iQl94*!fLV%~%_W8_hMFD%3cZu%i1u35<(X zKbt+|=tn3I0*~WdDIeYN5WDx$x>O&9)}< zYsC~zcHfB*xO6cm{>-w?_vgP@{8m08`1-B+I=e}ZX>w8}r$(yXL%}oDPIGV7H zYt^kA!t|$e&HVVIe2c=+++3q@C*oytHxgog9Q{MQX;d5AAe@IkEhrlNhq}X>>gp|^ zcB_gU9R!kN%3M)`<~ex9Lqq_}3MfP=71!8f1q#SH{MG zxw^l^<2P6Q$v4WCp=>H3*3T5;{GXA2Fz-Hc>*gb+=N67jgd-bxW7aswZS6{CJZLM2 z`diB=@5T62*0{9U^VS^=Mjp217n60KJlhE>)bCAUE_R8-hJfZ@giY9%U)KV3#%^mb z5Ox>1=}sk|y~9AvftcE&Rz1Ld^CXOPBbLRrIk+!|%#6P0M6d6uAYbVC&^dSL=*3=f^el!b5N{b3D*5<=sCTB~(()D39t;pxUAU&{Md({|-$4XuJBKB%) z|Io9QY5>P3Bx&98;YGRo5Z+8k+{yZhIUdU(`XV^;lv7fKohecl|zcpNr4cQdRrTaNq>}ZY-J0J>y`Dsk0Qh% zmzah`>lqqm&Ce1!U&|<283?#@BICLNllJ7#a8M34_YXEf;P(E` zeyRP#4?))uOBMo%qcnWrF)TY>vi|Ivj`r*uZQ{$*Z?WgTcj}>?4uC~+t&v7`aUrVA z&_K8y+WMtNA)1=UD^WOHuf;T>*RFM?q8=qn*7n4dOO0-A%=NKKtfkRz;_gcHhnzbE ziJK3~Z5oyb;|E&jU}aWr6PY*DSF|ERc}N zJ7yz-g|im@Um@UNX1IB@KLWk&_Ij#v3-fkT>6g{f(V)C|7p$}+as0XD46i5u6&gaQ zSXM7*st*L;bK!FedRMwJ7`s;%ROOhO&vRklhuEH%dk25G#IabZ1Sjn84YuT~Bw-8q zUyF;g^oPyMG%+{792Aqp@Thuxg)yF@*AlEWe=wS*_;9#^RpUd!NWD5TjS3YJL2_6X z+qYJ*$H3Tx4mG!t>H(pcDQx}psk*v)DJ|9a7q>k0v3>mfsEmN$e zJMAGa$R+rTN>q+3N_>93K-J@`fbUsP0FaI-k>sVpvRfTjLcUF|bE8sMIpkqKLn6fM zE5D3rJBXq>W^8h@+HxYVA@A-gZGDH-%GNC$Tp(0UzKR@C4#Y>U;R2A!wBK7ZI~zi_ zF?=J(6gAy|Dks&!bR~uY1W?kA-A={?ro&WXJ~KqRx%A_4$z_O3W>wU=14XhbD%@U; z06x0DHSm*c8Si`=q!NM5*70y;vK_U6Y6AHYM;29FhUp(KjeDPh9@w1`omJNLNRx)fbi3&&8<-WR5k(Jgep9ld1$0BU^#J z{yZ8hOKZv}ZuQ4upJ#i16T;Oxm#QbPSu6B>9hx~?0M*5xb8zGv~rkW*~LQ6 zgNy6(A8D7E?kr+7nOoB3xYI1G+AU}-bK12K>Z8&+JUcfDXgtixOuHa+?a=ONX`*rX zL=+8vT-3H%OYrb%@~g#qoEc{n{#WIHJXnHWQoL%yXs{o?_Ry}&d1&Hucu$A98$nb= z#v1wNSz?W2L&imZvD|yd^zPf!E?ozsp;p<{o`Op7JKdMn8g54=-@wBt0j~+p$q{T= z?N2JGYtj{I)GNNtE+(!j4;F2ez7=?`vFy@E^!vI48FD$~h=dKlSB_m(fyee;^ltH- zPD`uXEN}LOj(_?*9XI_-FUoQ4#S`gC zbsm$mM_J-B&+Kos%!3NEH(v;HXFQP^ZzvWmT^(G-P@?32#N?Of|3H#B`uABfJjISI3OV1Idlku zfP|!ogwowPgc8!7GedU`J=75Ig^GCJ&-1?jcYoP?e^K~x^>tqBJl3&}W1T$o&&y0K z7dKa+MMszn>h(jipiRhONTyd9A{9fm_;ZME=^>v`8jK)&MQad$Fko{b_C60NF1*l;LIgZjmllBc34>j-6%GM#kuvSa=0D5>e{QX7*jz~yFwa04`B;`J;)P+H%^j+sgTzw9|(pDK;shusX zFS5d^CJro;d&0R^eEOcrqp4>vTY92inHU>u_=XlTu`KPB3mJ$M`jL-Ap<^$Zi;uiI zST}@+mktnQyFXQcFIFg{a5b~kJ)QuOh3hDu|Z%z6#-KQ3q-39$~9&ZBer zUWa5vQbrzI`K8v+UHKDHL`$!4#A%k=_TNM2e{f$A68D*w6l|3MXJ4(h1;jcXk?iTasCw1lAwtogy+5jiq$Vg3nTu|rzJ!I+(*F!xsC z*?D;O;yLp=%;ey6qQf2}S(*28(DwgM1Z=#1&T|Rf|5H(<+7`iLj0@)eceUbb% zCV39@;-E{WX}>1M>gCCt+~#uY#LMS(P)I$Q(occi*~Fibjb0VEb~Q9!MV&4RP#|Vs zneB@#j&nR3>}z`LkuP-khrMZE!BbRi{B{Gb zj`PPxLo#io5#+n}lg(M3Pz75g+2lx1!IznDM5E!;QR{&-7x}Fd{l+463_v|g1VMSh z>glvG--oVyzcB(g=^eWSYq``uLbmh1jC37a;yXkI#vCmptkRDnbVJM2{ckP`K^YI9 z0SarXQ!Df4?(im-1d2MRFrTfWm3QF7qX~P8^v%<|P)Bn1^_8_I$0pZRdO6_JA3-V< zYMkOO9G|!pG!sD$6R79&iC<}#e9|1z-K4~_x@&nxBDam@$}lTAF!J!^#Sp|qvf1AD zP-)M%&<3wJy{%~&071R! znfPq`Hw5OUz{Ce&fdTfJ1c+OsqUza+8nmSZ$mmnAq_{Ri-XD)S&rbKKmvRl?QEk9` zpw_S;e~m(D#G*24BCbY=IEBGewmkxzBRJ^3Wq!LiKlH_%r`4y*v|g#^+x{=cpqpzg z_a+WccU+hNRaNT1Lh$W#$hVC?SN%?U!2)14yxZO05r7V$^5VIe2x)l7RUkp@l9zY$Q+ zQ}6oRtdTe=I-|tLM7LjMGoDwa7DE7S&{Ee+P9@Oo=M!0hgCJ0x`;R|)(9g?Q^aUhV z^0J&hf9m8vGi-Y~K=m_h_<8f6z?`2FC@S3U@A#Km6$FqwgQfS3s?THK&s4!n9!O)B z8@V|DDLxe)21KI{7C-K>{h0;MHcz?@Fh2b3oj1-!TE7^j9&SKo1B$cx|NUieEn%d% zzR4xQ_J8|CnIt_#IN8u5pi@nyn(s>$XoK9Oi78U6$X1J~oQd_XXPSfn?iwcS)2M^| zAH_h+J}GAfuwS_#Ff!=@wMsi3x_98U|3{WOpZ~#9m$%pwJh5x(i7SwuHY5-7XTf^L z@KOm__6Kkj#6(0zHF*B842)n1YF{Uh70HQw6KH6uiu{dO{3}WCwBiGFf-RJN#QbPksrC2ron- zr)G%rV%mfAVw%Vip>oRFr&9wD>5)n+*946t3;P7WWxi$VR-u!@)sciRio+4C>z)%^ z3(jBI#qNBNW)6B}ufH*GH{8X#zBRnCB9E;*`y@Z!H3>PIY{NTqQ^BIjX#TnZN2b;N zRxA~6+>_d|1_sY-@KX#dHSYY2uv!&LWw%bNg6C;bR!F_sqr}!M(a3WS=>-A;R z`?u~OqhjtRW_0*c*r^nZ=xa^^i{tzb3tl&Y;_Y(JYt8`~{9jEx7!oIb^Xp;&zaAYg zg=^-{A*ePEgF`eVoJwRL1YJWF2ZVxGzOFyiFqbGvE?2+~T9_xrNnFd!&#W@dE!znD zPe&GB78YMoN<+b>yZQ34*?6`Q^dBNalovDJ?^0lF}X| zGtQxtz|x&yoe%L*{YhU6_wnEPEt_iorw2>ZiL$zdaS*R`>VMN ze97bmgcVDy=0)5#v05=Vs~XYG`=>*B40bao5M87vNY*Lx5Na3&`}6YE&J4bT_W0(V z7skN1a2uN6K=GL}*%?fH^`P%xHA~GfmPd`jvc#{AvaFVKGOG^vm!SuK%&4VM>_U_n z@d;kh12K1mdd+8MJ*cYyi&)v`3TuSgXdn@}MG#Fi!GmD~dzIeZ#G#jUAfi3U0-Hfo zLe1L9)WOXV-sJ9yI{OoOe^!gZ7lFKax`-Fq=o5P4wg=QE_A4a0=Px-ZqY`MI3iqOlzCV@rQ)q;)vj2pWuL_bsw`` zI$|s^XEymZ3qO~m%I0n&ac4_$v9j3Chm2=(AkcddjJt-wVdrJFI8nFlZst&dBdE$% zE*omVqPF1I9aq3GmX=z{dYa)H2&$FIw)ArtoxioYSNWk%N;1=Sz)0=93&P)Q>Pa%2fVg zS~lNgDwKW-FKa?Ax?)o&%v!V>NSm#gI3D!<(w6+3R-DwlIo287hWs)^MaS^)c<|(9 zn9S(I=Y@+M_d6IpDz)p_SVujaWGYXsMZZ%lms0Gx&ptvH0pcm<`zC7wuKw$*dKTHG zX)tI-fkASJ@=ZE<24?8qo>qU9&Y?&(qg!rfa&xIp&P+PW$0Lq4k4PQi@VU4{^mWgV zP9DA81GM}yh68aab3TzEo4LN3qac)Clplm(kW?}WdQ5bp2;FrtQ=Sm`8}nc?-e9OJelZ3Eh%Yd6B${(9Xgj7v!E`Ra5*;J_nHf-*l$Ynj zXI|T5398+vr2LX}W8!9L=~vM^*Ju4|`j=Khq{@zlx2A;0E2knLK*zR~-N|{qDZbH| z<1YWtC)F`x{mXgA3I*-uH43L(SphHXPt#8wNA}v9keA;^JX!gsdY4!3r!1fLmt-o{ z;PGu%fEN}$E4F74WJB&;O2z^vwdWS-#N!%KKZ_|UvBy7MDS?O$5C>~vfb;k4tQ$9w z*gC4JMOdDHj92y&0Qi)m{iI9f0uNV_MHbPhlF8Y4*OjXDb_1|#HL<)t(=Ne zs5l26SNgig_m3q?1#mH0s%D(o6z*@7oSlAf>OkH`i}$m9=hNWP3PhGV?x0yB2`_ie ze)Bpw1=o@cRLU*6xzV-IH%5rqQa!x&M|0@S4=i-4m7X5+ozlx|=-S!EjO3j9Z^I~X zcC9x^$>vX5bI|6+EX{iO_7S`Iw@0-gH{qrvi$<*7>Uk%o{DF=K;igq>e;P9+tz9or zRUM1hlHBzLH2g^4R|LOiJJBGFkt~@Yy3ihcdUdbdthTwS-!8{LbHgq+pxoc>rUY7O z{E4(@Khe_wml)`Ko)!V5^v_*jfS^D7*scZZFU)whrwlN~L{m*&kTAc{`YuqpH9aNe zKtB)SzfR(<1R$?e=|>kd)z9N69iIVL5&!r9ycE%-NZ{Es+&UkP=K#*Q4oEZpU$}JB zFK68G8Q$J(;Ywf@acV*!8-6gs8M5L$x65OXL8L!U!*er(wzOt0%B)_j*A`d$Ufp8? zn#072YU{b_)u!T=DvB4gh;7ba3$bZe)Xh2CQ>ze^w-nup$Gh@l7#Y9UZSbj z1Od5qR#1GdT^$%a*5Wy0dXnqTsk6Ll4DWNFl)|)Zk4is<;?MG#9PdROR=m*S6Wlul zs~ZGHTKVH@Iy*=`471mWb)nd910Kwgz47LSe8 z@aD915S%XLBpU(WtA5No4lf_ngFK{^ZRL zie3|!SEh3~Xs?)tdYxBp-$?^pp4tYr)bIN4SDTq1(Ru6sbYo8$TFjeh=d;48E{nUr z6;u4K7&-W+^JFZsLvFzzsS9RsXmNj=7&+Gh+vThaIYD|)U_6Uu`d+^F&Ab)#AQVxcx+aJZTBKx3fj z9jr6^dyIQlKTvM&E3_Rtq`5a~>TXRJ``qhI#`GUI5%fDmq|7dupOdETH>GjZ`WFh?q6G z$*%aE2eDt{?>QfERZ%n2=dH2M4+v~;U#=#H`Tfr@{S~-XLV$=k_o(ms`Ah$`gJ|wq zhZ)uW#}Cir`|s04owY;Z3n{s9z5d(*;9;e~W`p*4e_Fr%KF%EQG}J<G? zb+g@P>9RHt5mP=rN9d}&+gdKqQ8mL-W8zQHWvV2~8Z-QQZzovP;#Ny{cW6LBYfDSd z_&Roggr244+WdUlT3dc%>5{S}GuFTzv|*wu9i2n1<;f{IUpMs+9@fLiH7iI8S**xE zL_d5dL!p*z_|eYrb2G0JivM(|R^zte@m=TU5l-XYPte*XUSS3R|!-E~BOG6-gz4M90hEOQU$CZtQfc=6Z(<$Xe~ygTl` zO7{9!GogR_pWLd5RhTcy{1S6*JOV~q^EDfg{}o$1JDeLgN{-{i?!I}5*9Rgyoa9is zVk-UZ+i}x)x$wckyeB5MI5C_Stm?Kw9;L@XAKkgaxPKD)Td=~tDhPr?>54o-HBBuxX-RVD2ZwUpO24E zj9pw@+@f+J7GOJ1UvPR{$&&uov)xo%zOWwroV22Up<(wb6*RzL9Z|Ax-F}TiVEYJ^ zEa<^9p1)Bdt({lkQ2e2wP}L<(%t2AlbiBjr;ENpfb;s(gucBsJ#r0#brzTlR1PqWL zxML!dd<`%{s-Lz12ZW@cuf zQ7~hVwHzVkSngBzL&+po?7NPu6AN8*iR-P)0?nX`%Nmw|d?#Z1LcX)q3f`8Gqd=D? z{*6|z?zRflnwq`;8oTx8XP+Fkw+YU=Z|q=enKNZo`Qsd2iutT@nW1tY$WEX!eEPgM zpIh!V{ruRTV*rs$)k`Kqlll1&xG`P;?0cMOZf@>-q*kHz;t?^AIX(0Cj~_p-L-V7e zR14YL*Ci-UR?4%kNxI5HTg%hco_v&2-+xW#;QYIIXkUdqQ(X7pgqar_tYu! zL5|I#`OmJM#a~jicx(!9u zJ@n>chh>$&66HiK4T_8y%5Yd6Sz-Xg zd)n^3Y*)?OO~!OQ$E#hXMs0^P9?SgL(V5`jHuM=hDNnJ1StYc_pY|7aM>8GMja6FD zzY1`Gi!@Y5v|Sd?bRG^jD%YvpSW+4G+{1J`T|A4{lbGmhtZTJ3BjXy*7+# zA|fQbd5=SaFrigBX?CeOTxxo}s*3-BitXf{kju_fS19AwFuD9EE~-NAYSmDnu|EVh zur2kV^~fLgLZhTOqq-}HbC-l)kXl%_x1`-uCTmV~{O}E9oMeCuiHI=EtaP(Gh+93O zgV}1rA?+b#<$8bxFt>TJVa%#Fty^@}9)KIGYDqDcB`?lNMR1-UrO$MjGGs>@16r zP{mJ7*kDx>KLevD+-sd|^m$x2gZtxK)~UGpRz4?_Fy3Ojn~-F|U%ega4tXdIwAmJ= z!ajRzs@^jzB5)ql!}cld+{iWn@Of*~0SjoX_vcqhdTpF+T2@w8$ij!wIOgICMESBkWl{E^q4ILp3YGHJxSc@B#LpvibyefU z`YQ0P>@fvIy^uAqJa!0Qz}b`7!}tXDET=YTq;{{?;p9H61JuYQ%^0}kFAK&$nIu44 zxJSuZb*q{9##N0ZCcDbu;NUxV?r?K+7Zw&4MWo2c2Y8Tuw{G5Ej4Z9lf-(brrB?-> z;(|P$a@{eHx4`ixim8^pl9~bNC;UT7s;W2JFRMVf3x9xl4vKYt5I$i2T}df$Wi@z zP`BjlS<+d}h{uBng`_!`N-~~xSaeAhZRYl`x#cZSJxO4lfNx7u+_A#L#U=faaVqah zd6AnsI>`BYq&avNe5ERHcul4RUgW55VVNUPl)n?kI``7&hqg-v`||#mElp)xCp%S> z-VYh?zdUtU2>@$tnSoMGODOrxA}XQ8%ZyQRv3zdlbPWJ8tr>c3)Y=Sad8m5Ku6#D~ zm0fOI&AU>wCCCUh#s#UW*0zH>IX0Pk^N)J**JPBMw_AiYv{WmcBMKNa-6_P)0a4%P zm)%Mb^pyq9kHPNU^A^hnF+kO3Sp}Q5j|&aSTA1u@V-xQe-x+waq2Up`;*nNe1d}2MMX;5vMlAS&qkS^@Tb|)_*C1dpRi2jnMa~N zgGM{tuHrl*f!tb4z)@|xC=70Z(dt2-6qK+95HM2l@$nTwpcyF}|hOgJ1YNt64=W5YGXQ@f%4pgb7LUzs$Q%*$o-TuPk|BYdCA!g}40lGHf zqP67C`h?DSEySRm(3vNyW0QZ)Lb&v)hX*yakvdu26SO3M58BC> zkQMV7K+k(LlX>qb2b1-ac*P3(Te%BJ{+La)f@DWr78AmHzgx>u(4le#vac)8mzhe9 zAd#$C@o$ibIDgJ)SGuY$O|5CrrM>xvAGUX6aCo>qB7@&I$h-e?@aJ9tl0}4+SaD8S zUJAZ1_s1B6x5$oGKSrLMlJt!zESBh4!)YCLB2kp9Pp;JMos?)(l8>{FJLA+#(aTIfLcuf$w_`ZGhx*+_6> zd}!ElH*rW|4r}M5m#iTnA)%Uz$_wUbawe{a*x_Jm8d_RlKkd# zeUs9o8xe_#I?Bp35w3x+-QQGm2rx0VXF4x;i#(dbGbu7M*() zBqaoHG3RNAyxCiY&UC5C(U`g0gV!UxbN z%TXlcwWu|L1u+bH%sP?R#`iBiw`?!Lmu++rk|%tZ#3+k3d?6=%{52)2wt;Q#yTUg( zQXNeILl&FR$s*7BK6sPp9V=BNqK4qH)`GEYbm8|73W#(a?)icFLX3+%)q5A+7qS+D zSq}npnD1qIDOl<|4vYW%?V^f>br)^BjpUZckz%r>qFDXRp%LiO%0ivT?2iwUO(4t% zo`7a#)zwq&V>YSj!Sp>`I%ZF}LzZ3Wni}j&Ru_CS3lwifJ&G9hS7EzW5%iFS+W-Ty zOKxIZl2K(XKAmLehvZFIgBP3ommhCG-)c$@FCpij%VQ^Zqy`+ge_oIdRz<>C6z{XW z*kg|-*J3di9DnSg+P#kayo&kB31L_3ly+;iWE1Dxr37<_!2{9LV>Clf;LI*Gyus~Ut>zi(U;5CxfDrv8#cU;gX;SnZA?S-KDU19Mu z>6+ScF5eFmEj`z(jDyoG=SHVIKks)74C_?bIzk~F{-YK8tq5M0{hgMiI70XRz7Cbx z!sQW0lj3yTsXRK$z8b1Y{(6;MwK&Oi+`-n?^hKOwDOp+7l3Rr`BmaSbPoW@Td9Fy?%dpoL6aDPwV)E3?3A!Nfqw@0GdKN%pE__%KCcq`t_*467(JnG~TH^ z$-GZmX=Y?k7O!@HiaLN*<;vO7u9yis@6r5O?z3Y2hY~?z=jeYv@_FyCmfs&a^6QclD1SZlWm>2AGdHM%qRW9M_Ta->79 z#iOlWtHff#jn1`_CUv2L2kTiA?*}W5RU_$0>p==)DXvexb;3a6b>6zp&Ln0tw`XRi zr)S>lY6cIEC(O6ig9iO{p&E+8uG`pwOu^za_P4HRG2&8)(3y$(rDa*0ZJsPQ-iYY4 z&u~&u-dYUE)NS5Hj9B*5$;c&G2Hzh=wtZB-cK%g)d8uQRuy3;COboR)6&S3D)RB3> z>suKVW%|f?(?Es%6XBe_(CB{YK?p+HC-s=nXTR zXBH>+u+6JtKfMk*Qk2`O8aFn)Lho-qjQAEdDTfBeH#DBEg#LhKWi5Xaf9o0)=}Wng z*6eFKP_QfTBM%&*0_1FN$4 zdl&&lWqC9dWOb9t;bIDNdiQ@*BziJuEt0CAhCjw!9JwD^n!7^|iopc>6`zMOpTK!Ie=z2%V5iTeUtk@c1?b z8UEKSLS@;$k|wk03Fd4kEs-o!OIMYsGE`<4oG#uBtX1xmp~5M+&_|K*q6S)$Hr0pG z;E?sQR{)kHagTb%Y}wq@NelaqdhV7zoOa6c6Q$9xR=qxkD2$dj+ILT|1x1chCetR?tqk(=C_r3CdPPK>RxtI)4;PJMyOuyP znV&vZd_2rbmK!2aM=isSV4e8j%)T&1z6d5l*2A2mub5I#Ni8kSicdyYbKWSZA!3Ey zmfq_aCup6{I=QDKtM1heS$nUz@(P>phI_40KPQ(4dMcFKY)ld)YwPEY>1b0VJbIp> zlj=v3974gE&rRdcs~$y27SMM0(}0u*cKEBILat$QRGHhb-xFU70Zm1UxD*kO{Y7@} z6mIeKv1Kud(WR3Ie~E!6ana{PtwMsriPo2?!~I@9T8W{kbJS0xzQm<{Fk2kAUctQ* z>(k~HG+*~nKzw@8&?pF$x=cG(_v&fa+r6E!gRCHTIJitJ%Cx@7j&`;BWIMCHNWn!U zJe+G`6D1t)`n_PeWJTxb)o1sbui0wOVrl?iL!&OzDb&_wR{{eAIXF08M(6RU zA(#ZLOTL>A`tGndB1t|HQ{(DJho(AuKGk^Q{tNBqCi*s*I@oBdu73Q!E5HGBFDDaF zQE@96Cng*g88537c6lwClT8=>j6_dQkJQ52!v^|*=kL1}L8qaixlJp(k+{2GO#}GG z?X|n@IE%aeeXfpRjLK*DNv0c0rYDG+I^%qBv-hiw)o_QGm9JXLkXRJukCdjDqsS9J zeux_R#Ln|2BI|Qhg+)hz;ReoMGoB~DwL52VT}f9A0*FJY!VUr$FDE)ysqfc=D84JR z{0T~z(1jR){4e5Dqyr4y4j z22q0xz=B3ETCrl;gY_FP{5niE{|yztGpgVxS&Qd&1{SUc|31t&7%1OX`QG_oy+jMJ z7LkW(X=yz@J+GE}?jgnLuK;ZO)Y?6hBD+v5<5JlCyx{>jG}4jyZHv7n3Klyigd+|t z*?E4;8v&v!Dk>TpP%pI0@0@6c?p#N+xp`$OPa)(fqtMg)%*;8pwZa@6eRTNwSIW=e zD9>zZSpU9JEC9T)+ELKYhyri%0?81%zOLx zEs!J=2GR5|%uaOx94x@R1uCdLyUI_2xPV}10Qk+*Gl2T#i|$B)E+TP?IEjoat`h?T zW9yw^YGEO}C`z>W;+6jlKQ0ol0Ou$a3Vn>X!q4?!daTIc8P@vCr4K$nVi)lV_{sa* zoiMnE5A9HtVpy$oc&nXm~RLSw@AvRQtcq zU&WN9X615l;t%vP-E~)uZW&-#7ul%a79rDr-oa$GcsljjeZBkown~y_t<#T&YwZ)l z3`WD?Jry^)rH(bnH{!Sc46d_5*rRpjW%nA7mB(&KxtzkW0o=gkYWvh^`C669$ye+l zVUCxoO-~$64o>Aoexkqqn|zR3*K`AL0)Y7{aWnt<^z-qo$tq#92Ev-+N)wCEb7{He zjvz6JBMs?{G8(5r9-Wg9!N{=T$_Q<>ElNYq0|$#hvB1; zZNdc!<4<-(?;-YsJA;)9A=te~8%;-rY#}GJ(fN5mXGz`8K8$up&HgkI&+0oS3T}hofqAD7h7*kuS zxA&}S5LfRr-j`*C zQn(tg%%;Lmd8WU$4};1llNr`Qd}fQ-*+UeGE*i#5uu^WnWo|Q>TzyPli~ZMf^Bp?r z%XN8&_Rg(w?bzA_$1~&Y#HW%QBNcJX{QN8f-{>_hNS z%R+70`YULeV|zgyk-SWZO1NdLU6&R~8Mlt-T#hbVE^NeUX`@s}eYT@r1BHZ9@1=Ou z$$TAa4v)gg;#h75^DWmr$~II@MY&u93*lT_`uqBTZxzp42x7KgaVu&!87dOvNiI^0 ztV#jET2=q_4LaSjCR@wGL6t?D78f0sjy@cvEA@118utH02Iedm%4#Ej zQ#M|oLm!<+tBNz2F{sL&yT@Ig%835~-(irOhx=tAS#FMP3ga!v5P5D{)|93evKJQJ zqJBGulhdxZt*LptS>Bb>Cfs4vs?KR^#<4klwKF%U1z%G79D>axuJ&u4WB z{W0q#|7dA+zT3v9I_;gql|6ZxLd5ZOY*S^!f-uF`tZ3!vrM44Th3{g#j=QQyCrziB zj=N{vCv)64QRk>9#qP%q_~zyoVtDLB$?>UhS2--*RQ0&!^ijTXZ(N+=c${L1y@u}Y z5x!Cdtzp~y@1YYY=iO}uVy+KFa_w%5|-LjbjAVyoQ{9~WBm!;a{Zcc=ayR?$yDBYvlroCe>~e_rvg}rF*HKy zf=xIJrFc&09cx#|KlWaTAAZfkp}-VR9?){Or})Oz*h`l#nLU+wtn$}Efn9we-n@n- zKo#!qNhHY*twwudV1R&_80K6i`ZTImIyADnx?0qP9ia99vF#%gbTxo?F2=e0@IDrm kc7Q{BTbn)qSRL9!sjP1F(9grbX)ir}A}^6A_Ug_50?Yn~z5oCK literal 0 HcmV?d00001 diff --git a/results.arch.tex b/results.arch.tex index af7b57d..f9b6725 100644 --- a/results.arch.tex +++ b/results.arch.tex @@ -111,7 +111,7 @@ is given in Listing~\ref{lst:mtaskdevice}. The definitions of the message format are explained in the following section. \begin{lstlisting}[caption={Device type},label={lst:mtaskdevice}] -deviceStore :: Shared [MTaskDevice] +deviceStoreNP :: Shared [MTaskDevice] :: Channels :== ([MTaskMSGRecv], [MTaskMSGSend], Bool) :: BCState = ... // Compiler state, explained in later sections diff --git a/results.itasks.tex b/results.itasks.tex index 29762cc..7a87936 100644 --- a/results.itasks.tex +++ b/results.itasks.tex @@ -1,7 +1,67 @@ +The glue in the system is written in \gls{iTasks}. Functions for managing +devices, \glspl{Task} and \glspl{SDS} are created. An interface is made that +allows an interactive management console for the \gls{mTask} system. This +interface provides functionality to list shares, add tasks, remove tasks, +administrate devices and view the state of the system. + \section{Integration} +When the system starts up the devices residing in the \gls{SDS} must be cleaned +up. It might be the case that they contain tasks, shares or errors. A user or +programmer can then choose to reconnect some devices using the +\CI{connectDevice} function. + +\begin{lstlisting}[caption={Starting up the devices},% + label={lst:startupdevs}] +startupDevices :: Task [MTaskDevice] +startupDevices = upd (map reset) deviceStoreNP + where reset d = {d & deviceTask=Nothing, deviceTasks=[], deviceError=Nothing} +\end{lstlisting} + +An image of the management interface is shown in Figure~\ref{lst:manage}. +The system management is done by a single \gls{Task} called \CI{mTaskManager}. +To manage the system, a couple of different functionalities are needed and +are launched. The left sidebar of the interface shows the list of example +\glspl{Task} that are present in the system. When clicking a task, a dialog +opens in which you can select the device to send the task to. The dialog might +contain user specified variables. All example \glspl{mTask} are of the type +\CI{Task (Main (ByteCode () Stmt))} and can thus ask for user input first. + +The bottom panel shows the device information. In this panel, the devices can +be created and modified. Moreover, this panel allows the user to reconnect with +a device after a restart of the server application. + +\begin{figure}[H] + \centering + \includegraphics[width=\linewidth]{manage} + \caption{The device management interface}\label{lst:management} +\end{figure} \section{Shares} -\todo{Semantiek van shares, hoe ze in iTasks zijn, hoe typering} +The architecture of the system stores the \glspl{SDS} in the \gls{SDS} that +stores the list of devices. This means that if a \gls{SDS} updates, everyone +watching it will be notified. This would result in to a lot of notifications +that are not ment to be for the listener. Moreover, when a client updates the +\gls{SDS} this is processed by the connection handler and results in an update +of the real \gls{SDS}. When an \gls{iTasks}-\gls{Task} writes to a \gls{SDS} +this is not passed on to the device. -\section{Lifting} -\todo{Lift mTask taken naar echte taken, hoe werkt dat?} +To solve the problem, parametric lenses are used on the device storage. +Listing~\ref{lst:actualdev} shows the actual types for the device storage. +Programmers wanting to access the entire \gls{SDS} use the \CI{deviceStoreNP}. +Programmers wanting to access a single \gls{SDS} on a device can use the +\CI{getRealShare} function which is a wrapper around the \CI{deviceStore} which +applies a parametric lens. + +\begin{lstlisting}[label={lst:actualdev},% + caption={Real types for the device \gls{SDS}}] +deviceStoreNP :: Shared [MTaskDevice] +deviceStore :: RWShared (Maybe (MTaskDevice, Int)) [MTaskDevice] [MTaskDevice] + +realDeviceStore :: Shared [MTaskDevice] + +getRealShare :: MTaskDevice MTaskShare -> Shared BCValue +\end{lstlisting} + +\subsection{Parametric Lens} +Therefore the main device store +\todo{Semantiek van shares, hoe ze in iTasks zijn, hoe typering} diff --git a/results.mtask.tex b/results.mtask.tex index 9c16fc5..1b46df1 100644 --- a/results.mtask.tex +++ b/results.mtask.tex @@ -94,8 +94,8 @@ accordingly. , sdsval :: BCValue } :: BCState = - { freshl :: [Int] - , freshs :: [Int] + { freshl :: Int + , freshs :: Int , sdss :: [BCShare] } @@ -209,7 +209,7 @@ since the labels are resolved to real addresses later on anyways. \begin{lstlisting}[label={lst:controlflow},% caption={Bytecode view for \texttt{arith}}] -freshlabel = get >>= \st=:{freshl=[fr:frs]}->put {st & freshl=frs} >>| pure fr +freshlabel = get >>= \st=:{freshl}->put {st & freshl=freshl+1} >>| pure freshl instance If ByteCode Stmt Stmt Stmt where If b t e = BCIfStmt b t e instance If ByteCode e Stmt Stmt where If b t e = BCIfStmt b t e @@ -238,7 +238,7 @@ implementation is shown in Listing~\ref{lst:shareview}. \begin{lstlisting}[label={lst:shareview},% caption={Bytecode view for \texttt{arith}}] -freshshare = get >>= \st=:{freshl=[fr:frs]}->put {st & freshl=frs} >>| pure fr +freshshare = get >>= \st=:{freshs}->put {st & freshs=freshs+1} >>| pure freshs instance sds ByteCode where sds f = {main = BC (freshshare -- 2.20.1