From e03133ba8ee3fbfd714cf8586bfb3814468baf6b Mon Sep 17 00:00:00 2001 From: Georgios Gousios Date: Tue, 23 Apr 2013 15:42:19 +0200 Subject: [PATCH] MSR paper version after submitted changes --- doc/figs/ghtorrent-process.pdf | Bin 52625 -> 0 bytes doc/figs/ghtorrent-process.pic | 48 ---- doc/figs/github-growth.pdf | Bin 21009 -> 0 bytes doc/figs/sequence.pic | 407 --------------------------------- doc/latex/ghtorrent-data.tex | 6 +- 5 files changed, 3 insertions(+), 458 deletions(-) delete mode 100644 doc/figs/ghtorrent-process.pdf delete mode 100644 doc/figs/ghtorrent-process.pic delete mode 100644 doc/figs/github-growth.pdf delete mode 100644 doc/figs/sequence.pic diff --git a/doc/figs/ghtorrent-process.pdf b/doc/figs/ghtorrent-process.pdf deleted file mode 100644 index 3eafb44bfe6cc7e9f4eeaff84770b07fd4ef8089..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52625 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Ὤ|pKnodsA;1(eE_MBFx4|tAOecX6|9{UqkWjiD=ac{*!~@GTihaWUivU9UG4(0+KPgXQOnD zez$yfnq_yfnX8brvP_;Nl5CjZ_G#7kMYO@0)y{;*$A(ch9<)OKB%(J&2EDqW@bb{N zTqZbWdaTKykQ8Mto*L1A9dhy!#>aa5{UA4Q^$nJys_~HDS#UEkrmQNT4G5187~Vm>>L`2ii$Qu#?B0naXpD$pWp3p;ei^&sPfyLl*-!%n4 zwN^4}xM#?_ln{R~@F>;;*03nr@L^{N3w7GM-^U-$0$)^CUqBvW)&c@r@-DqeI74E6 zj^5W&u5E^SackCp%BSqmr`8{%bDrHC!0~2bx97Fb} zZk2_*Gi3Hye!u0m0sU4P4ii0=5I@~UU_rI+)p|2iMv~8;*9)#^x_`#ibv^>7B{%4o znmamPn#eexzxN}~HxY1;(OwCjYd$7sxBrpzUY&a4eGo<}T7VhgzU%0~01b|N(!g{5 zt7r0OCOQ6tVR(sJ^nI-|la!W0nHTjJ;)LfkWI|@F?wg|H6__USZZ&{2yzU9mEhRP{ zxG~HrihNe&eD7!qh8a5Xq+aU_0nac=fpn%J(U;>ZqLpUu5^f`R#PJSeK*1w_;54FR zc}z54A<>DM16S2_eh}N^A_R}M!T>wVte6qL;+TW7Bev0G;Sk&7h2FbcYI^_ZoOZpM z*zvT&Se3FX7)@7k4@U7$#-dbU<~gC*#ppfu-OZz>gv|Od)L(#X)rSf8$>>Vn z40FR`H@17onRSp9Nxt|ABS`b~bZB0J)lqUwws+>s>ky5SqBu!8q=l5SI4`$CRhr+d z8P&!I*uLs_c~7*oUHU;K*4~{#*zHrtF%4y~z2&-vn!_e!z{=F8k-=C4vogRO#d+AM zp2_0Jim7qEV;I+=yRc+-TIA7XhhS;xl(TCfvj@JR{@&2sjJ+(dI0~sxNJ?W&X|3fV zsFU#?GG*H6HD&#JX*%TgM>rYLB8#Cx!Bcnxr7MjU;qKzee29Zk(NZEz;Yos1!ZCPW zr5dUz1(Nf;h=)+gav~vy761$m&OBNrWV91=RCAgW6{wZ+k|Bq;?3OSt7QjuC$Mu=q z6rwA)?i|0!i0O)Ml}1x9=Y#PnfKv)51sJ-6*`!byLOgSKUrd0n&Stkj90{Rr;0r9A zJd1_X11OYwJ=H6Df_9<~PKXD)>FY#^f03?Z=%(TvOwe0N9Lq*>m@s(28aIt6Mnr1I zo<$x?gjLz?$qKV$AHSS#QU%c<`zFIHnJpwN{?XTv5$3QM?{G3JqE5W~>n`KZTDcId zqSaey9wPH@mKT%amGeW>X=2YZf5llxlUaupl)ze~m{-OoGHO#42??98rctnp*thhT zEx22zm{%b*!Bx|8gAU!TqbZzEJ zq38_{^~SF95G)?QPEdZUWp3!(NjWu313ji9V$63yod;Cfb5P<(N&KO1$@7kZh0i@1A?6ZdS;qfvN75&^2|;+gS^DgIg^ z_a_e#`hc2Uhp8tBPB}~bVVQrxabphJ#1NB%)%&<#U1#nlkX&UR{|P^LljL!i*2X85 zLoMs#Ft>`=K*+PAy7KAUD0zE_yk3X!u=m}{Fj^s5jp@%7M%-~&;w@T?nOF%fN&vO9 z5miGzISJv&n0(Jx-%{EOIT&st{1VpQN=RNAEPOi#FM7=`ZpSCbix#PY)gZq=&Q5G5 zE1qWKr5Ji?oc&^dv1RsZ!r+UGxReN55q^3b1}}2WiFTBO$-Wi_*paQD<7L()-zQHOiLKFB3pU@-F(C=a|_D!@W)B#Z-LXBxPRRQ z(PJvj#*dY`8Qq`@b67B3!f11f)l4or9;VEYeeoP->DII10XHe(U!qu51d(FWb%sf# z(Em}k_N3WzC(BMlsSpjM0sfq4X8Se1ro8;UZRuIG<6fSXC0`MIL<4GOCYg!)mW%Sy z;d)SUT2->V2H9XPzLTz+QhccXTY|FlORM?L=zTe1FzwD%g_3I=Qz~H{N2-~!Xj%6l zqW|h_GOcc~PtiFMnojD}LDE<$aOd8=`}SiP*!vgCU|uY4@O7>@s^65!=#JxFj>nxH zzBMQWwYXzQC>Ml!P}~FMIa}tZiM93OMDQ0il5U58E*Ka%J$+1}&$dao!});q)Gbx5 z&NY;H3!xp~_zY?9jQfHOPMCnI^n+UL%H{1vi{Lr0aJrB!-xa3!mJW{XF{%saX;jMx z5u5+9wpvycG+&)u&t(QRyC|tD!|qt~Tl@-e9ZxL-HoA|#&r3Z@_!A#u=7IN%ZUvhU zP3$_bdV}rT$d*peSOdj@p<6VV9$ADBiF4xMZz7Olf>?jR5CC|nbcJIqxMw6?JXl_M z(*yw)L`4j7`#wcvBJIAwEq1;TeZHrW5#TyCdchEB@F5oF|^9&xBT= zRyz4ocq7{0FkDktGRm$ePu_hG>}Q^l&x9_&y^ub?2YGictTch~89$5IyVOW{lg}>c z+U&oFpGM()r}V;1P`LSt!J_n;mxT=A%|3}_E)7T9e7z;-LF4Bnz=}@s;;Rc%p-~zV zjExy4nQ2dK)k#T05jr6Ak`bokKUu>wBpQ^|NdCA#^-mI1yX>!fX>tgS{t>qWo07>- zgGo=WHAIMT(qHD;%A3j!gnX5NN<)cd z;8U~|b8wkml%Q@7qo<;@1M*G~)P@*sM8~ue0=vm=OHi{XMy$>)Bpkv_;K@9Fiuh(F zv`vA}+TWYv=FA`tM>3S4M?kFcZN4>y4aqvZrNLo{C;$Utq?T{wZ*wb8E3mF}WRbEl zKEtF|+7(Garj)g<_e9>c0s5xcWd&$P^2M>hsuTd)0$dc$-PAoS;MbUeK!wRLO5hAd zCRm2A1RL&@y%586!X;Lr_XLA6C5T~K<0X3wjn*otB5rJp{{0Jsa4NE5l42Ob)}4cd@3v-zP{P$z`~xUhK@f67Cn z*)9LU7u8C&?F-4Z|L7I^>Jm4_fp4BgWceFPlT7kW*u0y-`UrFddv~Uh6U}%jVvXfr zN!3!|o2l?{GeRX#Zpf@QHY2@?OQ2D_j7H!X$?)LtLj9EjtgRG6X*5fWnm!~Ao5MaK z@>08(RQVeYM8!>d9NF5eP#vRn%4EiVjK|WEbaujb)C5<2d@1LadC-fE_*==?HU+Lm zc@7h)&&Xe#Y7spIEB_W2n!_xY%gHjxUp0AJ4=M!NRR_igg|IqfP$FwHFaDQdxpeLt z2=vfuHpB-#Of~jyAXxJ+-8K+QZU8${l%%U^L5iMy)&roUIsN?DWbP&2b+Jv`q}Z zWDL_F!QKHt6Nc4z_$9;K2Z>gyaLdM7Qci8!gjs@P3SAoYO0uY&hyxWw{QwEtr%;Ax0-+ zEG{c`a2SWIa=Jvrj9zeip{_H1Ax0nKbWYr8{8{1)6ooWPu6C`kSyGCq`QvYF9f7M-q4|xq)9ur<%|$W`;Y=^NfDmxB_%2bHp5$ z9#B8*qLZ)*q~VXU^HThklk*9HJFFfCv5{}&K{Xx z?ETZMY8f!@!%N4AMa2|3GZG;S`_HYnb)=KaZ}E!m!&Sw5wlZ_vDGTr=i&qS92er&% z$d*VeOv&bWvWqZ-(?(T75)K~9KdZ_n74b6r9-pNe^g_{Rbd>}a9NxAY9nA!}S*b5+Z!Z`>{n=I3{nPqcd6=$c z&QeC241~_FJ3DD3Amg@uzTqwCD%b@e^iwKh`<{z28d>EaK znC%)d*0PwS*5>>}HOxHa$6KPi(P>S#50X8%`FmH;U^ad8yf7F;$hyy9d0hD0<|8V= z?>=IG^SKiTUI~S^k-Rl!xof!Joacg|A3ey^@SbbLZU@XdK)grLx|NGbK0$U0-L}6O z)49;}UInkMvA=c_Gp^yvKBimtTsxP`;2nkQtb;-}*giKrUka;oTFWtdF{BKbJ7%PK ztxv~tBOmZt;o{!lgge2@cd48B)c2uw95y)zHm0TCc0aADjVL#IWL{$0KOW(8ETDJY z;R-l_k#*U)@h#s`%|D^E$UVNm^4K5Kxhrl2#9^j>Qq6MV*sH}x`0{*(*5JWv4hnWa z8qx}NK7s}V_1Pj23EJX=@CC+2P&7l6AI~p3!1JCGOZ!L|8QO$a28=>OG$EImC_O5r z$lpSwr-*%K^7JkRwLZ{y;2N3473sk--7qT0z_~41_uLauWCaXbmC`5d7QZX0n+V#C z5Xcoym~6wJnh2i%7EYJAjrjm$iuS)82i+=@wfW5Ev*$Fm4qCztyls84EB4W}hXdCH z#?7AO(Ybe|ZwF;H-rYC6sc`&Zn!8)Q!7_7!-+VHX14a6?dkZ6o)#nl4Dny_O*uN#~ zeiQGvpltdpY7*=f;ylIx5D)szt`s)p24U0;X-jgi0n;8s)Bs{SuN8i1gMJ@QG@EFY zhJ+=d7+lB_WFKJAO}80U&qDs0WZ0UBpA-}fC>?e2H1^#8&{(ZKD0Hc`7V+d4W%F)K z5b)gmX)u!^tH9qsx_P3hux;z&5AVA>&t??;8i`X)VMJ{B_Y6Y2@sy|}cu#PdJ_ibW zR`Ew!K$O@7?+R+0;1;OF8BV;+UyC7rTyuPC31d4DCGmp{F6bK;C2e`2He%|gy_dg2 zpR~ch4J=K0A|?&**l#6!V|;b#AeMknv3z5I9D#dH>J1}Bg~5V;8pf;V2lay0W@3|k zqvIp_fkHu?k+@0vRG@H*d&!w8O!xz1-2~wf710To5%*CQ*@f>dD62D#X*Tz7Z4ubG z?7jf2wTTh~3Oj?5#?5FWi`1zxdy%eOA9?Y*L$SdjtXL>h7COV=fE;^cjy7r+d8oYs zBd$lLmI^gwA;B0SXBqH0H^Yx_^3$Nz^!f1AWzLThDbAb)uN;0&qYY^hd(4D?cj?B`<1HHlTa z1CN&YHX?`O18;+=B}WKZR;ENP2i!X8W*Ro)M%HJ>jRSzMdWKFt`#uVh*+qqA=MHR` zd2tjZGH?Tn3hIu+ft{yLvT(ZjM_ZK)Oqf+gBHp%cVP9R;;=Bx0O9h{l9&eO`rHtFQ zg&HWtkndkXeB5OCNx7evLRl%q79ss6j4wsK58QJ`?k*utQGP6qv`W4$B2pMu3YBPw zsh26ZE?*Q$<0P8P5Oxpa-(Ux0WltGyDc{5m`en6&i?}8O)R79#3fJ3yzPN}cQWkgg z_tB_^z;@rSAKhX{T_}Q6zLXzmL2}Spio2f_mD!n!Y(swmqdn2G3`0A+ z%ZTZ6vZ;l6Gf;S=vFXEzw22K@#jp!Xr9p;VEnUlmS}w(}YH$k)y=IYX!Td=aR2!Da z6y!1(woYNkA(%-&#>3g9QFJ`fD3gl|Ig4k2FWhSct&FW31NQrut~aDHkS)pKbLt}j zkrrIUQhV*6Bh`t|&l|mEe724JVK1p3L-P?9qZXo?o2XK38KXL~slROw(;vpb*9MoAKV2u+Ez+=Iz3R%R6AKkRA8*ZGrp~gN z61>30vi?L|Cvn_tD(7-TZNTI|r#%cOeoO|In6I`t_4ZI|%Xsrm$9I`1=heP_3K2jP(yZZWP?k?^!mq+lyUn#7ZiUl|!y5<2t) zYGM(pl9YEKb~J-40crR^zI;-6enjvfn6Z`#P=Tah0XpKO=)3%G_4E?vfUw4ZU@>xS%1=@$Cc!$NfK0;>5fe+uv@ zEkuS4Ld`~89PQ${z!-1kPS{e%T?DT_xbSp;SqjaiF1Up=U?uqDb3h2KZ69=VNUwCH z+jb#rW0`x2zw-o7mtvL>_YGn*Xd5Pl>pH@(M&YJshmJ7J}dTn~r9G z>NrZ8jdG_ATX^1c={%Q>ET4WQQSfQ;#aZB~XoLvjzExj8esvFGsv1V<)Cdoqy`#4k zliOby)_S!zblCQ=ISga&T*9m7&j*$;T{TU7cgy$AVcPEmbehEW!r^4g>>bFuj9;O4 zb?4H}VnS>~3!3N}Vuw!^kJfopoCSiiA>HO)@m^X3@Zl0Q6CFzXV_oa*f5DvScG4D4 z4Q$>ql=x4grKb5Y32oUos)BvRk5D$Z2VvFNGWOa8w_&pXxr`LPL|d?E#}$o`>bO!U z|GFm=&-Akc##OK2l6fJ~@~Sf~ahkBgdojxpv?m>gZ;T1-0HgHiTgx!BC$VYIAMx6Y zBCG;JhQ3#QBgwz%j8liV3_M0vYYosd$BjAR335pd%aK{~v&VL2VEG;Z83`y)l zIWO=4R`!bRhMN;ZbmtLOjg{UcmBd4QhH}RLq3_j!y${i|#vT8im=732*$y*Wu+gQF zrPGEK3oo!w9x5+TJNI3qp+e|HL!^S>Sy(g51tp-`ypZL&8>RIu zR_=eSp;px!B!0twg8|D4&ZYSVp8ZIwv#(2E54JpEr%=F&F@9a*zF{`Pv+m^gjH3%= z0l*BbOLbic*%EWxoY3uIxC?~I$=_#T<_Jch%*?Mxc=JNl5kZU&@dyxBl^1Fstf-qQ z48bPYoPVg5*zT+F0qM>nkuukavu_*fAfO37xh1grK+%D3qKcRs38W}LAXv^+$Sibk zrN$W%>OrqZI-R0ai4m&bS4wQk5z3-KOms)j67;wmCa`<0+g)~rvGi^@axRi_UJ zc#<8)7#C1yMaILT-F8K0Pdco%N!}5)VjmL8#Y=-9EvqtgZUsO!*r>Cw7tAdqKN8Hj z!L2M-O;K3jv0mkF|3j5)F_=`MvNK2vEAlXsB4xpw@7i323!6DlOXD|F`GfDJI{6!VsC=65 z+tau9)LLn~4dpgd{f{q-Cb?h)NMR@?1TI3X6Ht5T$OQZRFG6QX zFA{w=kWUynoWoEjoHpMAOX@4cvuk+b>q)0Q_8tJb}~WAa~i;;kyzw zZ@%4SAnU#tdWQ#h^b$TpJ{YAepnG0|D$so~UpnB*hzKY9IZjr4&{XpO1x!G*zZrcW zqpe|-j~KB8GbfwrVAHiAdF6x3tbMe(hSugYvW?+;lI_j$t~;@w^O61|Vdr+k^Reci zqd+zZx5xXMVvaiz*9FUS#PIFV0w1fPxiV5F;@weCQ^Z#j4xBfGNA%DR6<)5O^CZkB zkX;tkU?R5-^sJ5^RUGJ58d&AaCi^S(Q4hP}?PXxk%3`!Hj1*4X#1w zZfV?Eg*_y*+eLPHX{73Vn04yPBTc!b%4cNhkR)ysgk?NGhvP~x>(IiF)bLHkJT2)} zqPmS&mT}S?POx!YyOyX|<2RMqDJfhf7~6P#8K=x8f>pAbX~~Vk7W9GCY@`e z?gf^w(tvCVUO&)VlkdNfbskN*cg4M*MEncP&f1GKt)hG+m8PJ@lG$!ewp|?SJT_wA zJ=nKC=UAF@&x-lVEXbzgHz#^7j`kfNa_kv!trMzB8_@kI2hRX;x`dPZmlr zn{IE(b$2K|-Ee!?K5`W@7kc zV<6oclsZD8Zm6>tzUM&BxUnq(dM7w-&4>IRrcIahP4r7eEDJ5t?eZt$q(uu#17I8r;#JQ{X2 z6`I>Jx4RP6ebEgbqZ}6VeJx>U2kq*1d3u|D{Wk-y>X2_U5}HY3IeV|s=b#)em&?=S z@!j+Vjt4`VU}Oe?XFGkmJwWsY9ga|=3%cP!j``7z5MF_ksWwdQ!ZAD1*GoKdkk{Sh zQ6IG-L{(sPvW1n~Ikb!Gv9tAk>@_EQ#0%C3K_v>}O`6oEA{}Z^xAL%8y6O-QdxUiX zz5-=q4RNt03b#k>UEzm4#+82UkXu<75X%uh_NX8>XQ8%qS7)Nm9=*~RKIAe!@hjzs z5Un2-nukNJ1Dze&+V13)zStp`^@(3AM?}-t%=tS)f$pwQ&jYCc66~r%y=(DcC54%; z9@f(z^f^2I?gv5d#gP9X5?YJFl_YLBJiz7idjcKa;C(-IF$f=k&^0JlPLNtJLib}{ zC)Vc1?|O*~e&RrgT#Zm=IIY?lsuy_rL8}wob%XOhurCN!!JrIdlrEX`{QR_k-c7XWk@YY1%NigXnQ}})qwZh!23@Tu3e;e z1r@AdP!Q^YpuRrX`3QC2K)t6h|1Ki9f`lt*oC&z0ptm>VuZIHH;m}D0+KC|_6IdBV z&|WC$N9+OgVGz9*!cW4)4wP7qlQxo~+*H6zcl+o%KV6CkPe9BLgjtR;Hi99Yg5NE4 zd4yUYe>K2Y2f1x9w+v-%L}_5!@VWF(xAwrRUh&Dt1JX7~T!!#v1dI14yv}%sD|+7( zzU(!Q`?YN$Wf>xs;T+bN_d2p2&h$NZ{IWN4+#lW+)R)0ZInIYbvx8}GWx8rW&w0>) z2sk$a?-CF!189)6JE*=E%27kR&eNVlv~MF5TnylHfCq6`KjCR6e78yeIWky9LK`S} zF^!cmgdYj^qEI6S-@=e{I9f&E8%Sa?McQb}58*v9*?^F@Q1UEFRbkYI(i9m<+bG5t z;(8#i0pf1L>{*1ZLfH*CyO033l3oI;J)}GeDK{YL3@jc%#C4dkkl<_->+wgrgI0Yo zd_82GhO`5)vJRCO;-Zb@-2QY|AoVbqxE73@3WX0q#yUh@h{?7Ru;k`;sr`Z2by?~; zF81#doGS(IJU(bEJx)S*o6!3}=)cUnj`N<~oNpBun8!io9Nxz|TRHcA&U=aV9cKf( zL1-llf5f6?EYZURTA0vX2D-?=#~5@sgRNxnd4RA1s)xdwDf}+=VF&X#P41@2l{7W4 z1T%)VlT0%S?vUUD367Cq7X?;QAGU5wFtg)Q6CvFp#Pfu3ln{23{0fqr_dU$IFryJS zYHF?%=8&R|;#$MawPxEjqw}O; z->>y;RGo`u?<^^36R;Met5)y1ruCiFock5`CfU1K3e5TdGrU>rf1tXqs-BawZ@(1S zBnB6Y&};#<@kFESyDtZ>NTF&G+9$x9_>#)7nH*u`s74XFC!&`H?6`pMM~Cs=jgp0y^*CCv&^jTVb;j;_c;DC#~)|8y)3s8u!{gYs{}I^G_dMj zR=vb3$AG*CNE;Y&5hKiGJ|t%KZ1@fvz6i{tK;Oft8|cy}5T%)nU}LzunWn3$wo}QD z{c-!|NZ*REbFSejSA#YgyOZj?ny{aW_a2BkwuD_P4ewknQ1Ly??!^19#2hE1uKkv0 zv*BB*1?H+yrHtA{q9*FOZ279gfxSj>vj(kHk-0KjF5xzTx^0CnhoNc%-m9aVRcxh< z&y|RB;RDQWoA_musMd+SD!EA^S4z}ek*@e2X15J+Ne9&$*rR|=GFTykxdN#89%i?6 z@scJTSH(TDuue{WG;Q?(W;ZqMqNW{JwcV1kQIuEkC6$Tgr7(@5 zO}babd<(5Wr4cIA5SvU~%(_mbJ^Pcs&GEphNNAA>&Ct=(kJu#gLOO6F72KByZH~gL z!pK4ct5oq4*lZ$wA&Hzwp!?$3<_NyhBo^wW>1fI(l@c@NLV~J}Q~P3c=>uyk4SJzQ zSIVVLy$^}m`8Zb{Ln@n+~CM;5fO6h~j zO0B`BM^< zY4tvhKBRja=|`>f^-kt!FSE|gl!chY4OzY;A+=J^BeA|&xYofR>ES+cvt=O=zh+4_ zVfen;^H8sEQm?ivhkK+?TtZohi(Sczw^H!EL{DAxVWV}m%{*e)K5@!rAwG6_SiCs^ z-Obr+(+?XG*IJ`Ty2GD1wX%>H?R+HIn?t>A-Hxt0SI-qs|6#v-9Tcd*QLD9+>$C^E z`?`A_wGP*1m-mp*zb*uoV_3M!!M3>qot{p+??G?iq9b_F1Ah`g%TYqF4>HY=uMKYN zMDE$q3;oyuH@?;TmGIi!Tvpv zdj%ROCs5wrf%bJf9KB60$1RWRwBNHk=wAtk%5jYA>__a*{yuku!+X=^KjjVX3P39$ zqzofKTL9_|_1K~MUii8LIq61s`tXlKgbk&bW<1zV*gJ`bcJg{3dD2Pk@KVczv<;!@ zMmEsOb+@y1-R!kq_Jjj$_kd*qU_$`)NcA_XU2RHTr+n2eRribA-NNz!Uxu(`eazn! z>1wqebQo8=_3A!#yGvf?7t3IdsLT2q(w!~I`|Z&y-Bxw4x!t8N^T}l}kNF>Y0?qBg zwtG<5CAjA((!T|BFC_xy6oR-rT;A?BU(dZj|HY8&2;|v<_?P0LauS0beJ+=y)#JMB z^Ir7(j|2moVQ2}8*a#fz^*Q%+i)`2jrR3oP5szyCw|^T z9P*JHgXAKZvSDV0k8;SY#8HjmwLLS#vbujpLotGRC)Lf zetsdu*-+qX3-@%I4c*4gUhS+ysdCF3eA1$jP=<28)?`md;!$_(Mvrx-->7ow8+_`b zpj3wPF6>b!)?A0TT_w6skUe|I{x#HpV(+d0qq@5H?|mi{Axez6yAc;40wjSL1c(xM zcbUmpGMRV?!QEYpQ;HNRRZ0aZZL!i)ocLri-tU#(_vh#54|whuEGC(peVw)U+3S6- zy(i36>$EmdZOqE%ynIGs3bSN!OZi+@r6;?_f>Wo%Yoc0PDjG`jn#z-#D;F_p<}&L% zTN=#SO*$MV;jznWYjW%BS2Q$4H8qAbH+wLc<}EGSY&PL?ORJl+YnjXITA~_QA&o4L zX0|z#qs8J94zHw=n_bOYR>O;`gy}-S( z-K@D?3&xDiFD~uRtmsdy>RVXd6I9#nUf*Tb)TzbnAnf*{lC_!TYnN88nO`*!Skv!T z-)q{~qs8bVEI~d$J&m6k&(95SFYx7;IP%L4+pE>v8wkH8kC&UqD~#tAhqspbwN^T| zRvWg}Y4Dq1%yQW!shqMnPGuOk+Lv4F$g4MOZJN=_AZ_eyMs;#aZA?pjD67GT-Q>t& z7;;-Qcr4P&&1z~)Vl>Av8S|J-pOzL!7R!*sQRi|AkC)ZRPHN&TZsyEmaDA9uhZddz zo2S8*1TD#(xe1*G3p$GfJ4@X>0-L8pC-_zO4+GR;ER3i*_rU z-o_zqycL|5SPmTqHU%-I5Mj)2Z>C$0QMM&II=zIiQu-mD%cR<}8;ON-N~!tH=f zjai#Ee@#ZvV2=CheCt)k2K{Afy;W3C1LMalNt@7)saqh0O>}oLRY*O!F&^lN| zz>V&%4ePG=?P_r9Y_jNJ7<4ez1uP22teqF#*&No%@a<$eb+lLrSOx;NdOL^u*O)~M zIHA*fXk4duu0=afzn!PXZ>9Kcgx?m$=ZChp`?R+^^7-a`zCNF?*2bs!e7uwy+153W z-|fTia^!cKw{_^Zb*Qy=P;JxuhhbY&gEnV)ZpyaZkZ-iMNOQ1^Hc&(1ucdk$NjEEWLqWj$Vz+grR%jTl6vYds;N{`sVcWTq0KabT%OyVTEJXcT$){$mR}K5ToqJaXI2FQEM~VSaO#(H z@>4iT8QiE`u3s_FqLN1%TL&UL_;G@|rGoqzdg;k|KwUy?LbyN$pXJrm2 zJHI-wD5tPAv7};td6jo{oke{k#cb(LEn#PrS7ujc$TMngt+Q$l`ocnQ<9qQ$J1O`5swi7kv|R#_TrWhOg5mlIaR@hIn-*6>JED?fqX zyqsT}!cSkxkI&(U7PPsS@lC7wq^Yefwzny<+goGS zH7;3Gykd1)>Z-WR{?NQ$_mUoysxHzfz;DJkBy28TwjniTZEVJ1Snhy(alc7r4{7Xd zElzGIU0GC~m0FdzxTa`MU8!qhr4gf!u$bJuochB2!jhtt^3uhX6(KcMF7>s>O^p<* zg_B)emseI$Sdm;(y{No4xT@Z{w$Z4OL6~gT%9@(&y1cyl<%Nw=B~8H<49A)lg9a91 zaG9x$stjgscFVGSR#XuysEqAU&C##t5(bZv#H&ni&B<(CmfIRx*cw>c>QL3DU)M&O z+nSemRit)huk1|B?u`7`h}u^Q^lRHmGruWubw%<(R{E-?S$zxhdIO8P9m=~6YC1`? zplRvG@}vz}Y3r6`4lc+Y2rTM%DDTs+=_XAbO;ssnH7he}vl1HeA{vW)n@eq(l`~m& zgu|>W%`U0PUs+X{P*W07SMJ+TWz$@%*V0JXEwx2O#iga`<>hfzRpB)?K6Q20jg5K? z24S&k^Q()BYEw(>Q;>)F~( zTo|*8Oio@dC%J&TxR^Vyj5oWI2P3NeuQ4lMDag$hB;^Sf6$$2*wtH2yThz8|H%=R~ z^0dC(%)X@D-spm!xg}j*h0$dy%U!l~5a))5}Fs5UFJJ}=mF}|`Xyqe)x%XDsNF=}ROFgb+9%Pnk4En&r#v%@Pnel;AYI<8R@PyJtG zmXqI>QpArf<%d=9{i@oWYTFDO`5Fv9j9E@zcS>P*Y)MyWS*LGhhht5LQGJKTzs4*l zXCS3uAf|ZLywX0OiXO-6Zlk&`&8AM$(w@mlUcpIU#Lb$+%k$zD*|e7GwpG&G>PQW`$=s-az{xt-3OHfBjBeevae5tVSE-LAD=R`s1aO`UWYGgf<|AbGJM zJyek8Bgk_U6q*Q1H3XG3K^md2wp(IrS#o#u>b38n1=4a^e{^k<7Y~ zmU>TCqaC|>7Kfq1ZJ}}5gvX6) zqnT^V$-c=zNxb{Cm- zmFjj?sCL#+FlHSs3%c^=bQR9-EVl0~H|eOTp}> z+%|Yr7_(5OAb=%sV+*X=?Z%vT9Zox)(+(qw{lk#;Nq+0n+}31R59a6(6sWB#q53MR z-g?sA60~-u_nK^{!94SULcRV{^}Y&PZw=KwZOnpJ=XehkIIb!(?Jv{qtyJr&rghg- zUCpF}72IDuyRX!~x7@h5O1ryOy{n$q*@OWk0!~m*g;!6NU3ZOfcb#@;gIY%uZTfi@ zY3BxZ)_Qi;+jTV#%1t$<_P&ei5~)%ZLbzZF9P_vP2x=FaEawDXPlZQA@cxH4MX^ycC8-~YYEpUVH< z;_?5-Z*lp5?+L0x*Z<#pg8uJ4LI3xjsQ(}D2|F3;R3h|uuO0XHV~l&xXO8vO*` z&Kciv)*+v9rYO}edot0vbYhWL<7jAL>&Tpiog;Hnx`*eM_YTkN=pPE*ziKG#_Uez} zFIT?`A6j*P&T!Aokde-_L8F3$!K3Y414rAYifz&-a~unWY3?;+3BH`+1)+UI;R$O# z&M#d1VPWg~50M8pzK_1M`Azh@&5t8Lth+t`@-Q-L`Yl@3-t-_+i8P zh>vT!pv8ffxXWUxsLeKglI>J9(d1D-S{Wqxkh^fh>(mwd{!VE+`ZE2{i9a)bJ$^s! z<*^IPULV*S|902l;&eA}x_EB)=#<-9-6?9O<3qA%&yVdj!Idn;q#?I>9EerrbLhmF!>#tX%V z&6i9av0XWNz^P<>-)zS4u6g}$HZR%pw7c}ueeQv8KWF~( zf6d*Wn|P0Il{G%QkXilLiKN0;hnM8M*&CDjZd-KP`;F3*#tS7Up>f7KRdn8=VB#~6 zy3y-_{0|QnuKVGSjN_|*>in+mhX*(EFFrq?zUSrf#MQ6&$MN3ojBb3tWkKb~^${f> z2dDcYIR=drHYuXB_PN5(UCJk(d({0p9Nf9<)rvz6Pnef;|G0B5`Qgh$abLgPx$v_O z8^Vtb4bIy>+!L~9q%)X5(kVS`G+%PuWU=@h#^gJzWx_YsDbIyY#h;7>ceK5Y-<9=e z`RSy;KRF!t>gA58U*2yB|9)sy@E0SU{-2Gt`g}6Zn!R_NA^XH&uJk(Mp}{=Kh+*gp zv01|BlTJm0qk;U2_tBe|z0N-n`)>P=1@G^zpZE80U&t>bodG|L^1QzuZ}Gf2(cper zSS$ZZ+g1Kl%UL4ScKus6Gw4gPdBUzqrxFw!H{;{{HH+S7Zk_+Jf8D&{&-(*M-naYx zF~;?NIL`F^aiYQPJ7JB>*TM?LpK8WZiJH;ha!vd1Wcooz#TH9@kw^9TY)0bnyxxe9 zscYsA^Lm3uj|qIo9&$W}C+a<(PSm?SMEjqF6;9tzmPqB4%HK-*%pc^M4riqXb2o@B z5?LaL{JaUz`b8tb?Q=$!^#qPKwfl~3=Xg!rXmS&NsB!)!tZ#*XIuDT0rPrD0irlM^#r&%`P?@>2CJBTsvvluK(2gj<| zW4>Mg;h6t5-l+eR)*=5f-ZS4Z_FeCB=I67)Ft3TmgV38wvQ87lgJla{tHy(TS)&0F zt)qd<`J;iQ?IS?~Fl;XvcDrjh{21}wns@U*ta%(ZwCeV};l48=Bi;Lg zM>;kJj<)v&jJ8P{Fwd({D@CZ4Ow>wZK-*B%g24|_D>uB4ZrS{9@xiU{Vjk>x5&L%g zov8O4&d&e1ZV%YA7VPN+$5`N)q+?dJm}jv}#I(y2*1J@UmHM)WR)(*ByDV|%>%@lr zD49bqQ+_{uZ^f&F7r>w0V8%e?hYj5MAJ;ZOt0HuGm2{I)gk+sr?9>2izt^#FobS~% z%$(c%wlZ$li|pbv&+`vn_^t5q`Aa!}p4<-pbb~)lG4HmQN59{k3nr#ROLkO0Sb7*7 zI$*w3w9htExZAaAbXy?*{rbgQ{%9*W{|jUP?av#2y|uOM>81AkzfM-B{(UTK+3WpD z;7>x#yKRf2KWvhnni(iPZ5S>&Z5lgu-a2*iqEqqsXWq<@*CGc0y1w%0SDzle)wSxU zA8K2F|GcQ-#p%@2zmFy6zTO|3`EL6(e- ze;d24?bo)?D}H!%CFlH$PnPd`bug~)?XGC{`^^jLKduWeA6h-HXt+;y3>qg5!z8Cn z7KzVVE)(6fT`78Hm-XAYXT#=qG206Ns6LA>z<-@}DNv{eHEqQZlPt@yI z8zX-CI1uvfNT=V;F`oCOai-VtiAIk-6ZP^>bUfwPbv)$1YP(7&v|au{?OvI(N?ASO z*-$hT*1z~&*0#tGTQ`P&ytgXw@6mSuhhyB?-;XmqzM80ay&7! zWJ=ZG1sHNmY8bj>$~uiX;a-z6GN&VaC}nWoa8F;*=rw`Q=m(b93!MAmM4jso!Yb!) zCrcf_nk-Vjr08M^rSd{a*Zo?q<#KHr_vrz5^_gDsa#a3&Dtv0o!ureUQjt@ zxjbpoF@FvqGJAY+v*$!vgR8K=%6alsse|Z#zU|~hruF-&bgO4mDVD#AlcxM_GbTNp z3MXB>%7iYV6++j9N}+3ZrO>UeO6b;AEp*$7__Rjo_Mm3MZM5c{o3Q#fS7GJ1F2af{ zE|cY_Tqet=7Fwlx?7CW#&t#@{miaOWAmwPs?z4SkF*c>cCJ0 zWANjG1M5C4e7NDSg&)>`2S0WO?AbkMq0M0Cj<@j#cfVTtbnkueXWB>YT<~#SU-*AKR6RIW29C+r>-kI9plq~mYp$}D>-WtJ$1o4dGeA|@z^z=mUo{o zUiZ_ji`#ge55KBlKe?P)^YX;<{MQHLvfl2P=Fj}3k847gA&=wG_+(l`e~$D##`m&i zqUcMz%&}MYxwk)r^Vm;0Db%#UkBtA|$2Eg9|&&L8QN zAJKM}pVXNxJ2NwAnjw-eO`@fvMiKW#wwZ&&bGwqkkHptM?u&W&ZhQExp}~*~BV7Rp zM%#QhjB$Lr$64Ooai;u`mZSWHw!8e2u9y609rvkGZP(v%?>;JW$ZZ@A7A$_3xi#v; zsf}T8-wcF20Drz7<9b~mZ+5>hQRjA4Snaw?SgAOvVWqgCZm#@Y)j&K+*L|YUw7-bD z>k~QTWsmuD!-kRv<_&M^3mX1e;Qb2hdN9%CKJ8s@3(K9Zqy8_63Y1^d)D+Jsl}Ry0 zd#Y5?`Wzl&v&1C2No1dsIPTpXG`d6(Fxt`PGk>ee7eM%b)Nq4<}0;?@kuke@^F-pFBKH+ghI_^K&I#0D47+#a>^!cp3tqrVbZED9V;yEi{;R^E);zaZ3;-zN4NfN}~R!LJX z4p|}x&peUC+YG%Ob(DEO3m4wdFL&zTtiJ8{t0o9b7fR740Lzjo{c`aO`2vUvr0hz6}}? zoW+`Q57v}}Sf94Ti!q@o^6M?}`IPTjguC9AyK#KGGg|{x-0cVY59Hz%j)h4RiTkEeH7?U2o}5!%*=S^90cv zhukp%_)#9e^+o=^{Z|VAJhmqD6vSg&)^PM+^ zI6lK#eoD(lc1F)ndfq5P{Hetf(G}awSC^O6{`AGA8g|$3rwZ$ypGz+O`$&8iJj^tI zR(u?smpI%Xk}%S(IHEqSVI@Be23*jcExQJP_M>6w`}Zc{H(oBv>i@l;m;KGtZ3)N0 zpAGM~MDVeOYQj3Ea-=J$XjI^zJKCx^j69CbuvDDUw3lDPTIPFg*GaLu`8V(({X*B$ z$Pa0&!-nn+%zps?a($%B?=03Yd%%FTSPgehGJ|Idj1^n{L&dk;Lxck>i4Zckf$$?~k!Pzno}ry$bJf9{%Al7_bBWJW8mC3KjJ;a&4DRu~}T2(6!uuERO3lzNTgN=ugdVuY}bu_rZ^ECyVXB5aro^ zF3Pm|bSi!779k_|3Hb}3D)dlHsL$YK*2{E#>Yx!TbT0Coh;DSB;MTedKdo{U4i($I zgztDL%Ci1pD&6uMak9mi;$?q+N64?g5_0z)KA8v{+69JiQU7^j)0pr{hg{cxYrh_~ zzpuz%^dQG-T$F100&O3Omz)1APBi;olJN6Sgnadskjo>498^&B9x$XvrstmwmIaCI zG8`wv3hhOuxpt!UV8`d_mg4tGW}}h>vp*yWroT$!Ozul!Zag650yuP7M5sZfiY61| zSpb&BNoGaPp0Y``o0^wpGnKc}da5hUQhY4QTzr42>69>L){rE6)^o&fk|>Fr*%Gm> zP0EzDTiTS(ob)N1SYR*%QH>BFwj(Ye?ynTtjIR7>GnMf>;yc7u#A$?N4%QxC7R#m_ z>{p8Hyt71h3$jIaNjW0>vRsipAF%^*8Syw*XeY{fVK2)40r9!LDCaaD4K^Nyk9&FTQBfDZhBqiCZ%1v;%RYMCkmo^gY=1z-hAh26%WHaR9LeAxno} zUy6HvqrY&Cox9}Ht) zeX3~Dw39bNr%FFWk`M2YY@If}#vBWX;EVv;r@l8BR!#WN4k`UD7x~9iiYwybWW*T$j^Wy7j?Zw7fr&S zUPy|+bM?%UR>70isU?3OT9W-{?=*kHmw#M6cM1GU{76SY>?r?Vjbq5=6kSJoQPoIs zOU*?3n6CZo#Vp%vzb^^fbZ<>^;mya4h`k>N!v=;{g>XkY1M9JVDjnnb=8dsuXN@zI z2PwMZ7)@1iT17)~MMYC~kEZr=oT6P7YgqIQyTl~C%Bl)`d#Bd--Wb#8@;J-$B=$~r z2y0wd3-N1Y!b+DGVTJMlrJ^`a(Pf{~=#xKEw7=dE^0kyk-;Vu|0M$!(VqqCCF>_fWF%MdTQzKR)st|%D60_}yiwP35 z`|)D4(fDC=@zN*e;>0@^;$@#(h?k$W6t9r^nS3uzfy;+r_vvSeK!$j5C?3hGPl@HWyzOoyU1d&h6x3SyeyVZ**UMA zvJK6gvQ5jHvTa6eM|_nzZabR!6x_RQFUmWE*o)ZUAj<1;5alcKalg()y)FmOBEca) zYcSC>Z_*(SOspxKbl6@fa=4fO9>;zMFL%mCShfpHT#aZ$G~+pC6Md$l26bP8d@^SS z!Q(B0zsnN3g}@i)R|;KrR7^O(D1A8XF15t`ZE(NBq-GsVD_>9R*k2 zOx~#NB&&eVO4HcMaO`t?CNvBOY^#3e_qz5x){$$$92S^U?mNcG#u_yV9E%6XrnV5G z+(IbjCYqXZJs2`D!$#Jj>m#l)iGGz6mHViESJH*_KWf{;h6YODds4%O`s3%0bVr7a zbc6}!xF)ec&vlK9>2w7T%Sc_tnnR$NT4AIs1LA)5dT5 zgX^#Ul<2={jOX78?l8yL-qqs_&qC~jWKYz&rweOFk;fD?rj8Oac^>PK+xT?E-w8SK zT6IR(pYEO+j|&zpd3GZXd#%MT7qItn82ct$CW{>VCkq{05zUi@!`ld%*h|RpaY9~P zCFG|c3Ay-+kkxXEo+;9w?J^p^+)lVN(Q@d+3Y&XV={7f}GAu8NlPy0Hudv)NPO{n} zPX357{p&Cxk1m2gU!whQglr!pRHK5fyBM`=F7{huDiOq*PJJJ1_FfWa{y@CM>>EkE z=}pxCRmq}R=Ov3?ZiRn2O~}p92|0^#*!3qNd>N&Zr&KeZE1MZ$D)EV#C8>{|B{>&0 zOFSGk>yJOkOlTm#wFx%#rV!Fm%i|CujjK{J1q1?k_Dg?w@r{l_@0g0Ew} zCZr5|RH^^a)aFCOUaseDDD#@5FG~rYDQgX!DLWddC;Qo7S2pRbJ0hR0_lL|^?>CvR z%o1x4W3vdUkrN^i5sgR-ml{?g+QX!V+e4)W7w1V09?X#$jD`peWOJVyOBa4WOA>wE zM6&ptsU%kJ4u5T9I9F<7xln5CjtE06LliHN8nw=s8f}k|8eWFp@1YVyN$B5b`!m|! zFqOoeGm|772G`_sH63K$y1r67qi~6d^&*Lh&mzgJMTnee$t+fs)OcH@)cE>BiP2y4 z$8r8gW|H_@=Heyiz{7)J;Z{p=k|GXkj|EyzvH+|Z9PxUNnSHFpbWWVaG#QVLF%pw) zizTzZik_S`68#6-ehGepp~?Hf!j0fykImFdWwwg8B3aE;9*cbD&I|xsqs103iDL7` zh)VEyTY|*&=hz|i`_42&!N6T$;A%Tjb{jliGuS4p20zMFW+-#jjO9t1_Oi&Cff9GK zSh2NVlGrjQNo=t-anj=X(nr=)sbF9(JX~R?(_~RIyj=w%7i-f=4(gr_elTcsWi4G# zQ2>4{)AJYmSS3t2#-+ar+LZ8n(6eRd9489~;pL|NS1BR`{%)C@uqFnNFS`gC>Lo;wZ)KiA1z0wP2k@_Law5Q51{^dZwQq#q;2H+ zCL++`{YHO_*M9{Y|14c-a$U06@mA5)r@rH4j$U_ELSc07H2K_k1kqLnX}GIxu@}gp@xcBpu#z0bVb201vh0_AXlTWG78Uw}YnQl7puF zm7}ImZm;#H+(r9WxtsPqx%&}}!#d>9hI>NI1444(hn7xIv^n6Rl|tQEOK#_=saRq^ zL&3D2p*Vo}!B#^tX{9kLx7Pea?x6LX+(~Y%<0aEG_LJ#3_{wzseB`=O-g4cP*>at7 zPq_}?L$1BeO|EspS*~@@QLZ`aAk>mOKh=}@-qn|d+%S}eo;Q+4DD1IDH_`Qy%{29w z>A65_F0__FtH4{X!}XHuY=h2cu5zv4on%^4r&qeN+4s=?mZ3E4f{}E=ky(-`g%8&0 zPN-KCJs;Uji$K{-uK<}|6!bEE<+?4%X)AO-cb94Zz2KQLg`z1FXzGe^H6!_Krmo5U!?lDj=OhTR@{z80chKHyo)L%IUCO>2@ za=KC2Yj-;5OOLkT_o*51Z*gwIs`>81>JWs#hp@`qQ&@S2g?i<}Gql2Yv?IW^`>4Y& zy0lf#_AJmlfd5R{-*(k0CG&ZT`}~PoxB1w+jQ~T!g%!?W;78bG>33{GzK6ySZMgq; zVhw@%xd9FwIHW?YIqWlobEI0o>cDBssMSv+Y#3ANwpF4my8^6zvaps(MI?!GzJweBX{hmf>4LAJ@f8pJK_3o*r|V7=C<)C`wgnqDxoi zXw#L4wdsmCI_hr~=9&*t`*-9{T3^bYwQkB?ZXu83VDbiVhz~DPd5e%#@OZ)BgxHEH zETBzv=*lE$3~JGp-y-B%>Ms@M8js}GGk%oYX@0A)Khs0V4tT@P6NJ=XAtd`dLYDkS zNXT14SxBcfW}#i2mWq-$Lq&N;Q$_hglP;3!sQoE7fsW;jpJmp2*TVzhIxsMfg6J}mGrZEO8QUQN|jN~3A$46sfNPxj+WfBO=CO73@01Kj9_Ra0E2lJ3U#*Ge>6UY#&243x=ibpy2A7x+JB)V_nK~h z3_MY~gCCaI1Nk=}6X>|xC^Qy8XQib=z4^ZyS9BHhKeZ-Qm3j|nD6GE%i>BKj(U;BH zZYT|x%|qRLgC91k1`0iGY;|7!zBJ4aP;i1Y@#kmR$9&-k7RF{|7C(({%fN2GV(J z;LX~>BL@80A8CZVT7iAXICzk7N=5F5z8Pv;Dm2|}C7LU3M)cNNyfXUU{E^O-1KRsd z=iUVtPPZ)w2Xnx(pYrkP@j19>XA<&f3j9nQp`?K{wP710t7i@|c0bSVu=vXFhQ(>? z4}NQL?&-Eg@PldaW=p`bXt3-i`1M6OYNix*TSUmu(0rT$o-EVVxV|*p_;d=(;6Ty^ zvyOSsLa=F=veDmZurJp8}7T#Ndv#~P@fPVH*+S6|ao ztHEnLYLuS&AjEl|Fxx%^%$SZjV90df>*=uSUuUaQu_03< zXZ;SH$gUq;%(^Jg_nqD-nKi>J^3*?;q&KL2L4Z{3c2 zH)?q9*A!*x<$1#pzVdQN>yzdcW`0BqJQ<2cX1rr@YJRoEghVKuBn#wOSE!DeH{q5jb z7w#vu=tCwrG@V1}H(=>6gy_Aa&=z@2g(Auj8=!%khUjlhXeo{MT&bq=NT#Wrp`ou- z(>GAkt#y?uUYbgk2n{7|nYxlzsIH)~)MV6px|BLe6O(VLDe{(#P)e1jG^N^IRprc^ z8Vak6V2RR@J_9;ni~%(4W++tx&^{KCqb{d4t4gVLbTK(i6Oo^ZkW7%jX-fLfbfwlU zb%ohQO@;kYutaVL|6!z}rc_tgQPPc(hYQ+=BU066w0c!BwN^z$E>J@9JNZaSX^&Kt zYG0}Jj9bY{=eFC5!;o=j}pwr$(CZQHhOYhq(! zPdqUu$<6$~fDc6W7k_ped4*V?_ich%qUDy};QQE&UBgaWcs)rzPJRw^N< zR2<^^O8$glb(hj7&f5ndjTTMylcjokSideL>oBAm_N_rgdiFHM)ivLqM*!C5>(ZY??0QxE&d?6Ry@S z4G8~9kmziPmswH$Yx1kmcD5VbRdigw1wNy{S)-cx^`yYJq0bUa18g>=!{WWE*<-`H zQ@}u@bH*ZOS}-Z2fnZ12&qxRUnQg^m=G!!=&76Y#OXeAJOd7W2k=bS>`p0IJ`rD>V zDc8natyf9p^IoKBpne2Fdw)8j?!r#&h2)!pA-Y+mO1do$V$S2XUh}hX3s`-}qR@Pf zZ`Tn!!-($`zz0XkqaEhLr%)~k7zMlp>_O4B8JnRzzErV<^74D`)icJr*`}(GgTDa! zT;mp{EL$AV7lox7kfYK@Un>E#$RofOw&L&CX3KJjM6mAj6#@9bR(ajH%a`tXOUu9h zuF4n-7?!Tkxi6dk>@i!F28E|CxtB`=#D7^`R*8J>Y4C2+LyDW_7ex%3Qmf`xcRpaR zA$)&e(x;-%Svz8+$f<10jnyP)Si3^+&J}r25Izfh>kD+1y${{27z~SmY~+sKkMU(d zCdw;OR^gpZ;q-+W_2vbGdn%=xdjAvqK^aDOh1lsZnPR;77)$tQZuB*peaJt6Sa2@_ zy9dk@4&s9#8ne#;j}TZ6QL)+Gz^+eW(Q-|pJv}vR38x!}5dx$pa8Gpc$pCL4aU*>o z-oEe;SnHPua1nym%f7wG-9BW7;+YR@?k}ko-$#w`eY9yo1{?Ah$8RHJ=7Wd^LO0?T zJfUN#GCk!T2J&T?jhF?G)I|L;MnXdr+aKcK`F_HiYRF1~j52&sVYxwsA_z}s;j5qw zXV@%x;08p!C<`#PAM;)CwfqbG$aXC-=Y(BdoBYc%ss0h9r2vAIj1Z+{6X zySRr$brV8QNxEe6BS@q@bWahJZ~Na$>;pwhR#L*H7^3gtWmQEb50spZr6MEgG07H8 zGK&j+5VT$sg!3=CIz;`6`nTp#QWl7LxrNlO2v!u+m68?y6sl5UaFx&p5@HiN zcY!p*?@V_=E=l9_9wK%LkVn|Bi4haDc)oFED*Pp78Lgtqc3;z|pTiIrnE03e3N8HT$I--gCZ=ws`07v$4 zyW&#lN37ys!IRDpr|ydoNd%<3#L@H#!`M=SyYK{vLE~2%EGSvXD&#QjQtmg8B-T(ys}Tr-~{+_K74wqfiyDhnIzAf~7Wns{Einy2rZ@gO%O{4|5-E-`rUtSxC%g3_OuFQrMI+8o;cNDt@z4 z(Y*^cnDg^&?2u+O&u{V~&Uq>>tI?CcQGLOAX%7@w^^Us^!!(k6ev&PM z=b0sm(xoMZ_-a}t2WH8Wo1nHp42}{UjmeXg7-ll6X5|Q&lKuJZ_~#VP_k{O8>zFc< z;VIzxHieGmF-a`TOB&;5Dhz_71D*@FkQoRc7)v`_TEeK6DzYY5I9px4{y^7NWU1+_ zG1RSWS(9Azq_SP*q?|BZoyw@h@O_|Xd%_ggg-xiOa1cnI35Vgdo5E=ARG=Aaq71uk zQ!szwIl4?LTqt=~ZC0gTJ;PFM;>tzJB=5^gz?}O|GhUpILumwHf_%P?jHkd`BwvXq zSyEA4(O&FM(PW=d)HX%2$@LQMSK6i(ZnVnh;K6>k6Lu!}ZdFsA#MS7hDILMdA;dR& z)EyAWH#ZUriY8Z_A>T7}LT~j|5F+-gyyS*@pjDto(3^}SZCh3XZF6o1*slP(6E0TT zxe$EauM1)fQPlU-98AN-4<=bi>IxErt&sOq{|DvG5J%AmPffKBLIB}ufuk@cJD$Id zmm!Ld;FbOcBB}>!7vk-sHVuTS3HRn9Eu@4oBoCY%YU~rR_n^{Ifh#snd!ZvL>dl)I z7{uF~mk=L+aNDln_X@wAY{IH#{A-wGGcN1SZ^4Cwz?E%j3@i?6?t= zzham;i8pNL))1oo7eex9AO%#e#H0+va8M6<-4Q)XkXE!{Z+Rf*aRm#)xh?B!+9kPu zqWq+-k2|cm4!JQPDkrD(vrx9mXbyy{SR}uPXmu|Z)5?|4qY>{>PvRPd>@^Fn!0fqr z+x!Tp>IG)PDRKZmP!w{YiC?BszYus%KxJ}w1gNJOlpbV)_sA*Tzb(XHbUBCKz*=Vh>J${g2vMyl~~Yh zH3M%Y-qE8*$C9>bMyx!SCz;Ir>OhwD4H29!@SgRA7&hvL=PtAz@b*))Bh^SgGjWTA zk_iPAOif|f_;qGuw|QM=-&0C^Uh>TEqtVmqyP_Bddt}+&r0_VD>)fJzOMeeY1N7%7 zgLi^tqFzoq6zn=TQfy}-x*W&Ww9YG&G|wZQnz0+1tZOa4%|e$+bbJS=fkVv(En( z<(n~36yrRHI5ypg^4bW9Y{tRY){PfnMDz(1^o|M+Z#)|cW5j%pwu~#PSre+p$D^tx zBSCOI3w{#&m|w2~4-STHV}t}wZr(>apz7<3_K1sSlxqtr#T{JKJKE6*_BFt8vVi1& zn@4O&xC|SUvj>B)5l1cPgm%Q!*9Yyn-V3|Suo1qthJo5IxDmxWnuqqQ0pSmTuGO9A z2$<}i!%rqhPz)5Hdw(LHJ-pD)kl{~&-_zjUTx-}b?t+TcfJZ3mU2zjK1K2vD(eMOC zx`VN=5PL%9oK2YhWtxZP0Z|(7Bja_&5^tFkfA0`%zzFM)p8_8U; zyImppc@kRT0_*I)o$4>7OJ1O9d;}>^7QDAZii(y zlRj)PU13QJ{dLezvTx5UQ+^~=9Kl3R?cy_#2V0ID`WTz63AB6j5EQke@@oe+!46!# zA|kEBOFFlMwd2_BKb!&jsK5~4HpCEu=iVoMn(%G(Anni#838_zyVv1l{Jo)4EPAag54368&ZEKaUROUmr?jM^660h2!l(*lQG%49ePmV@i?qOI$=qaW zuxQNMa`}V{z4BUqF~H*iZRsjl!3lW{%E4J^=igLSPJrzAkX^w2 zp{vSt?{-ybNzJa_{_=yFOpY(c*7*U`RwNArKYBq%$ z@p;F#88dS4l1gg7Y{9th95M1nD#WNvD`VINal9U{!?jRu8OAzluye@Bh3(x?A+E(r z=VgjTr0N=g8ddO@3B@;TbO(#g2aUz5G>Naa5vJ3HI9=_b5@VOV*wz4Mu_z}F%FJ>fsLaV_V==4%dn+<`QLI5GPqT5U8LAziuKTxh~KOD=$ z4I3~hK16ZZ7R=zE&H&{;q1E!f25VOEDV+eSgaAB#sd%snV(}nY44K>j3%U{r20l^R zOgLvdJ{K1hpFY8r;!LP9Hb8lYvwysPOK7_%PX59O6w8{`@e=oCcutk$ph{bWOAavy z@f;X^Isqu@JpOjRE2QSIU%VH-6-dS0qP`0iORHs2#`^;(?R#-Esp96-6K} zf@sPw;E>C;i06E8TM@wQN)6`|pv>nA{(NC;Fc+3c+1LyuS z*g$W%L~Xc4^4ZWkYDz6BGKzMzVXh)1EP;rXvv4^)qf4jTk^tH_l$jCgA9~G8hnL*yA>Nf(yYV9p`D>8E?pE04`!Al@Ac~9&B>O z%H~4}X=~)*L!GVwpYi&0qc_qr>?J_e*hf7Ww??=8_F!uh&TOZT0VNY2JO4WbA-<#V z3PdUNGbLHD?Juc@Q|0unuf8qOu~jc@ZWn0g((Ot32Xex; zjTz_$reHIi^f-xwS;O@TJ5)^W%7rhPEcCK1&P6`RXqjp28Dbv)IfKt{79$S z(i&b6cV-AJF+?FVE>OCam167@uPwP8a&8CeE~j9k{4EMCbwE&4bAqKn%=friE}fXd{#}h=Q6UR*Q+_o0Z`+QH+V%gNj*C zjT$e}QVoxE4T;K*M4(h%HOd2oXQ85sFYh zGZ>mM!_tQ6=pQe;Ft%+TCA9i2+Hn0Y-DH+*JyarfmK2Jd{;1cSh!O*fP|QU>i!-IL(> z`4eGcaW+(}jtT%DYajnh@t&=A|U=^6F!zeR>sf5#qbXLBsli01%Rj+ zJ`k9@U4g?@B@cO-5lYoGh`$1#H%|DDwttHdt=PYG5$3Wr9IY@8pKZ>b@Krf-gdc)GK%U^fuF@T zRah~l$nX5uE{(#~v^2@)B3q>U!oaM*d7kGPL>_&7gAk?Eu@8 zTdjmu*g{sq!h~F9;wrt-UHz~rJ>c{Qo(m2gH$pnTQTzt+$so6MMSGTpDRZx-NcJzh zJ5r7#l%)EICC`uoRA|;4^1mijJ_HC{AvwJx?zETVKW@hneEgZ+JmJ_jB;>31mmeQI zXfJh1{V3!HaL3IXd_ou<+04wj9*D`qa_}8A;oB;Itk#r_Nfl+HuN!lw=|vs?jHo2o zN4sG7bp1BXY;fk~w80%4EUck)zE?nXL^IA7y-*5uqV?^GEr|5AXc+IQ;&mjAnNt;a zfd84!3Mca@MomXi6udlTrg5udtx4mF5n{|cJ|Q(FHIv1mnqggeed9`379i< zbcEp{ku)qMG3xdg>5DX_bFU5i7edjcvjKgi;8th&r^{kK*^!NSzA7~mBBJRKdC^cv zy%W%%PAMF1(EXZS5KCb=)`?0#u1Q1h#3j*QG9`Ey^%#2j%@Izx6jx>fVX+w+f_1?$ zvp3~#_&fWcXooupKj*k7uflS<%`Ht?X9by0xhH{_X8s^J?D#93scmu2>mD)1u&aWJ}d=3n|Gafc@e;)xi*gY69?LtYmGb}MN9Q*_k zR`}YDptf~jdA|_+T@2*;+V+b`;$4Z0qa&9>7Y->1%IUXRl8&1E64z%lh5~Vo&VasV z)`z=9wvl}=uWrI5AnhE*Ax+r(5dr!-w7b7#y> zXhWW{ns33uzKG08YJ}BsGa}&`QsDq`e;_KyN36x{6fpu%p)Ir_<=vd#RaBzS!Vi_6 zP0&M=AHWU2W8nYfV}MzD#}+ygNl*qQS2H?v(lDm}Z)t zd`tjcraXMOCeuOl&U8^RTv6fM5zN*_lQ#o|D&oM zk#25yo;_tCQe0R9%g%~3(vuHeJi{r*CGU9`HOZe#>Q5)ir9y~x@f6Mxjm`uo91|n? zA5^B3VjV@IcaD=cqX$aC`~zZ&zvv6WF?4TBL3G^-&EUR2C*`%FZ5L}a%$f=X#*}>I z#+0iQ{!sLFV~A^qJJ)T~KPkzDp*zuI5!IGU>~sA^@Fx&Mxu8M#el=fZnG%l2F2KTy zG=pJc6Han|P~?uzWYL_e68&;F&JkWo8bsVJ)k*pCM32Nlsy)0Tw#ZHT~^2&&{nt{(WXj!1QZQxJAdJ#7Y0tXK3T7T!4ovB3UQlv!(>_zH&A zt=sn;HIOdbwa#%C;7gkI;Iqz^0^-3j3oP(kG5e2cPY*^6Uo5D=xf*t}F;_cVZ-pfu8p(`o|}&0Ya; z-S8l>PKa4H?Acr^D-5%Jy6bkOfJ>e$F_jryb$+sGSui-QVfS(ja3zl zHk0EmRPS|=07ogqc(ML=9CJrQIz7myxW}Z@u)+?r+))r*Yn0I@bZ7t71~RtWl60-u zTc@{|oF4B5`lcgO?rIX)05_#mQ4|vv8(g{P;4_S}N(H`6FTTXmj5cq&{)(dl%Vy4u zDdT(W6K=>n^P{y3*C-Ly6vt!H@oyPIm$hFN`um9ag>aU0haKk=lu9*kGaTd>R8@ig zx)X;Sl?8S&!Z}636q4kZ${=z~<2WZhKp9KRb?y5c@HTx&o z!P7bgD7E1Hv%)ef1L`Q#>2j%s(>SLaSI(~|3$S6#R4P`sSIYU96I|5V2U-KGI6H}1 z`QgCulfUj1w;{r1ri=uY();Wg`Vgp#s4(Q(K7@=1@XPSg+6aW=CcGckVg1#r%bne= z19$t&(sDSaF&{M5z89kS!T4E~wrh^U5v&dRly69ie2C$f$^vWC4o+qD>Wu2qysh#} z8~!sOHw1Ng%*1#E^{Yl(N2?xrL1EudxD6jLFHH@9KLx_tFtb&jI@*RPQx`M6jRO(+ zUmkx|k#Hm3ZVV}oSIoAAar;eqN>g5hh#jTc@D>=-cO+X83jA6CC`0 z*fck{(ZWMhT>CUngoU8aB7Qm#y)J%qXtHQ~-=l>a=O*$F$XDA&{wR&I`GuW$laBE6 zq|w{Zk8M-e@1i%+qC$T*c|!+n?=%3nXv)(l2R3Dhqr2M^9MRC3GC6;G6JLKYc=@h3 zaXY7C?-l!XXKS6H`k+Ys?!)&AUzG=+?l}6H3sw4f>9~g-Wt(?J$qdE5vi|6|^D9`d z;^tcR{L^M9W z&X~oCd`t_I<_{Pu`q*|qkqs=&;qPzd70pcV%I80mYF0*D8_#OJQj4mj@N!arkm}r; z4R(XC!S-o6H11s~A3n**e_R^$)N$V3m+y*qEelwYmhP^qwGlt|Z^(i59zQ-|VR9Ae zJa%mNU#H-_R(f6A@w3t$H#gW&dX=1uN#z$ydB5tgN0Ze8YKiEFMkYj)Yj^DKi?1Yq zR|nU}NZS7C^7Z_Mi>(f++**XWL$K4*e`$E`A(E0*NsNSkKnSgz(hOs2XX5PQWNK*p z4`pv;1;fY!U;z9>Ftf2RGX7sK>;G_hcmVV&o(`q}dSOEsLmPW@0KI~txv4XN`MZD; zfL`9!#lh7@($2-y&czwP$n-BRAK!m)IR1YyV)k|}0D5ItBbR@nsyMlt{u^J&(Ao6g znJNl$f|6R)5~en8rY@Goh5-71_#&px#!i+FF7{3^jBNjIT-46k-o(=GyHB!)#!B|K zhIaquh*>&0y9iqtIsurO0Q543|C3;3E{$CUu8~ZmFJJUZ?@J)Y*?BDhON&g3j0l@J;$p4f7@3M@H|7zubVSXdA zvi>v5f5LxV4F9G7!TS%N=^y-m;ru)N5C1>$_gG+9zw7?rI^Xm^ebNQ|S4jVw&VN+k zzrz0C6aH@j$QjyxtHJ+6I5vjn-}>-9%m36860-LIXw!1CG6HB>I2ZwpEG(=5Mn)zk zT^M@FZw<0E7PK?BG5sDIy`Z!4x7K`5(>MK(bpJ`vGBJOrgbf`eOfAhVzB3uwzqQ51 z)K=}E8XEuR!mu%ab7c)Z{v}8N<39uZSL0%qHl|E~?<)W3=Kp7a|1kbDKp9iJZx`|a z#(!k{t-$|Ie)p4^jfv$O#nQ&b)ag66F?2B%G5yvr(|>^e=brHZ?)CQcNm*IB?S0lX zpSgU`nw&Oiq9;K@nLui4Bx!<%Mv(~+C{O?w>X zx1!So9VpdW*z({1{)MOwJ2~xs%}gZZXY2pDpnp2q`F_uHn&*7Yd7AfbGI>xsBN4iZ z6g(zttHpsU+24Z_A~81&E(?q5`k^r~H*2GNAi3PB5|Z)Sj5({BP!TOpMB+Z1+23>H zH%t?fb4)uUn;_j!AOWjgK%_Vt43M|fY&hx@(Om<7ZF_y5zPw<^D$wgL_}$m{TpV9` z{pz_CbTab71A9aXd(-JIS(Nt+_;n~WI{SU>kZa&ZH>8j?fb9qN8#W4(AWjDk5=vhh zH!^H*3!&dLZ_3B)w&eHOhFXf1n>tUOpSwF=SDl1e-a%31qy56cmnR-s_k|izM5JM# zcB9E3yo!*ULbp(KoB#d@kPf#7eILs2Jh0|1#V#c zo0C!d#U7kZ`wNEP7kMTPU9?W2@4XZ!-FdG57Ow|bZ6MEl~}05h-H`t zMSKizwF`Gn_NH*@%t0S41RB59>j5p@$Ity-xGq)*`AvX_j?+XMQ2B6%tZUkS;?6mm+bMXekAzsA9xH`nNUP zzl=SIsUVt9_-LMq(Ff{6I}b~JyUI84n9@z12wgw~xjJv=a?rV-lca@f0xHrE#|s4u|HV|li; zj-ps*@BhKeXisqS_#so^I5v%u#m*{@@s>43eD8Cd2U@%63)*GAbgicU3e3`Nq_iEl zv43(myXs&aT3^}oxfjzk3g6yqt^3uDk^T|vp1KfDTXvI0w9US!3*X}Xy$J;R&wnlE z7VfvM%N@EidD?b2Sjmzyqk9Z_5*H(r)!*f=i1Nxlo+x)g<5#7TTmhVG4yohKgxDD| zyO0Ay5S>EL%h?z8E$os=+K4ZDWjGmLp}-L->3Qe}tj)kDVggqIPIOuEU-O(ih^tR5 z%b|3Jm_I?br-~?WqIU-WynwUd_JSRz7bIISa|NV0%z>DM?7*)R>H|MAq?i}1{J~U! z!3iP|8&^c;aRoh(yNM(W*?~TjYr(t3_o`_&t zz{G-}rC!Y5kl%@7FNmQ6x6T`!C(ON2zrg+?xP@*X**-Qm&JU^B3V_UlT9eue@vtV|4ABcYy$Qbnt5}8k%iIHIKa?$*!6VVN&YHuy3hM$@NYzob zzmo#FP=}(3Jqk>KxWeljP2MggErU& zz=J+RwEEsAq7HYcT(R@wBe+|E-22`tDx?)fzzKjCa>d!(aJ#Y zJP*z+sOg8;7O)P+(S`Q&%mPWj|f<#F}FcgDwkUh*Z{RBIB)qVjHqZgH>y@u-%`^cE=0ToCY=0yxR4|z`JHz}Wh8X8gYuF~CQdfpw#@uEU_RwP1 zUU;r{gInz$T>YKBrIqzzZ`OR`Eyzt>`fEfSmS&u&S=0P7T%$+VgkFD9{XskDlOCmo zS12zj!LX@2=yXB&H|-}QOEv< zo^5RnG4#}A>2!dWp{JK1kD>ksIzd`?qnCk#95jX!6-%AHk8V-TE`7nioSX>z zWT;HEJBL}Asjvfmb^6k4L2VoCh4~JC*Yx}Yi~+a+o$Yuu0TH+&tPx=%9Jpr8oMNP2 zpf7F}_^d-M0L9~!t0VrvAj}Il1^w0rzrc;TtRy6NRfShfMP2|(Q>SdBjb+}95K zca%UH6P!6RZSH4ay@AM)*X*eNs`c5U0MeKU zec-xbvEkb!w;}2o*CTAGY@?u~;#R4#;$R|;?fz@KlweQv3)%5oTRQ{jPkvBIbSM6hxaz#cfjicV^6|mC&<(0lm284 z2xE}ogN9&lAN>6*=;ur_em{ zkrc^-Kg2=8*Nnp+v5uVj5jNrQPS*y3LW7J=oYGDkf(!&kNFx+=2-5~v6VoTL5v=eH zbEUvX_VPyOe%4B@$lbjC9)PmGVwIM)uUAEh_~`^o#R_`B+DqC?x>=-Dvx1I3nBPXB zo%Ivz)?own3Cg?5&o&MGL<|?p!a#1N{5e*)nvxP3NT3A=M*&pLfOk6Y4-?!UbG^cO0OiT99n1ftYt!(i$YgVq_ZeFJ|*QiZeGy2wD^{y9D zO@f=<(w2gtG=!ZzJZPNLe!c=%?T~0>ngmMNES?(WvWrj%6^;>;!x;@RTSe2tl3WrZ zxcT9laL}=(hO&`mB)q(di(!yB4#5#K4KY5G64eXGr|@)mIdiZ*Yp8G*hN_;vHL!?_ zc@KHle;J-WzWm<*^bYHg+u}Zt(~U1w>-YJfsh2wGkJaJ*YM_3yyL6$!c)#I&l=u6X zI^^~X)*nMZ{Q|lZ2apA>+ZCjM{4iecES@Z7w?o1O8H_ni4|pF?7I z?V(;{V=vQ7s7Jfc$oxqZ3n|(4Amq`J>yK4W6ocB`8UBZBoCpyUBUz(3a)E}SmMM`W zS#6Xrr)Ht+fh$)LD{C4{bVVV1THJ?ktTg(7(GY(4glQC~f9E9qw5x^^X+6(*p4)!k z*5`7?<(X&)ehaJx*uS!}qEKFibk%IVSK{}rH^_Q@%T%DVo`lE9iQ$k#%~0h}VW#$k za83~D9Q7@evJtVL;wkgt&|+TqN)J0A^{bd*W^Z;(%o9GXkHuR{l>Q#Cx$F6TLzmdo zjE#aOvf6UaSHkwAc0Hfj&GvgV^xuA?y^Zs)w$R>fFNH3>E^i4LUsdP6c>Uzx&Ui8Z z81gu8 zS}MXHO{+W!H#s_kP$$F{SBgW!{y-Zl=C4;ZSCiPnNsHuYZr&PHMF2yh$w)`sc}%| zFsO5^v+Z;YgRgB{!Q6tShNU6sV#$ibsYbq_N`(nsuiV5GOqAZ5nPk!+5L@QoAmH7~ zkUR3WOfrJUessce*6WFcf8-m$30EPeYH?(RI! z&-w1u*}z|psV4XR^G5s?RT0k%S+GqZBYWk<(8WD6(=~q5p}ta zOn2|e8z{E@V_ONd*truPf%woh6V65;{lJ|lbDFLLjbyJOnxKE-ik-1j()p?_0qYj> zcy)Q6^yVbw^9pq#%i6%4-YqyKE#--|ao9$X#oN^)OFN6e#MS z19C;UA%C1N;diK%ge5=1tP5=GwjXlNmVwL_G8-0Q)}0xzv>9pLeZC(19juUGCeO?|>4VVFW|fKs?F94t?n%k;DqMZ+=M?* zg&{JPQ*&2iH^sP>S*))N4UV0J(*EdRn2e^OQ)nlP2i|HjVaf1FoUwcYF$DZxs)g=- z1L6RMrzEq&3^!zz8!C{C<=FRrO#;`ug&%)SxzYlK3sSEbObU{gY8DtQ7#j4d(bMsE z|G==9-U-6)M0H$qD84I1k4N`D#^2i2fQrj}d zZ~Cz%xvtnTKjg4VXV`w&6fB96tTP~H;^q{jcI`xk7FJ+!zuv^6$q~}B=T-Aqd=| zb@gVu<2C!s*N6Gg+9gDZE*LqRjC&i}%g9R$cMk7%bo*wP2yfbH3&rl?0S1U2OH>uP z`JB}yd=!(QV^UXLRHAVWCDUbC3$pDTNQ1E)n=o6&%GoGz6 z>b*Q&W{Ghz`AoKN-mcfZ*BY;jf@@=S@?I6jgHGN3dh9md%N;+}9ky6fK>H9P^$oiM z>tT*WriQ+K2&tY^o^M|gaGzqrlT20$7A;Yp9gkS5IcUDo$VyZ=L=<2v# zJOmDcdRjMgm^g(riUK=33k21W1RS|B0->gKz&0-`{<%IR_rNi;s)apkQ5Xd1e(JMd z>vTG=MTtM{Jwv z76?}zs%zlp1aO|sVo(oHwMWVSa_h#HlTG3XR;-m~!WsJ6APBc{i#1Ag0_T^^Y5XPd zSHW%aBk;!hevNMw`wAOBlgw!+rR0jtTnd>UimZN#Xd;&^RDb<^{fYz5I^Z!o=`X@8 zl{$=;E5juAkm8<)H=gwg{pH>Ityyml30fNke&_RLyvXqjz_u&}X8Qv&_V1zbcc*OJN6kv>px&8dVZ#UeY4jPU;DO^dw3e}w?DcBAF4VkZx-upG2k8` zi$fO;o~Fj<(SW}c?=jHEA&{8S`3yi&M3uwL>DijxBN0xN9KASFV_>vOWiwfY?jmW` zmR;tBs2<%s%x$J3GU|mFEhl+?QVUk5x>7eR&&h`*V}un6V?V+5H3%}e(Ynp5Z;{S6 za??OZ<;m5}&1QEt4K72zLm71M>nb$IxSxi2dqfHj8;#1W7gXD#K$Sa247Y}XFCI~B z;%d};ig1eW9quIWp#F%^MaIBZc9QUw%7Y^dJrlIbR{Zj zRr>Qr24Sy&7tBkj5|lXCpl(E~ir5f+Ayqk{o^=3%niFXn5<~e(YW0UG>^X2?-{lfc zL+|*}=kHhWZYhkh+1|U@w+1SX%R={I;4+6_Kh=%d8ywKm`yce}Ro>XQ{qN#p*1_9s zI_!@&^LpI1>MvhZT^mdekL1Z>-f=m?sB+MMc^2JYU)AI9@;kFmro8mvL`b=HKn*lbI1X9@pu5RKTWujUV=k(y#LW;?CrK|=g}9@X2x(@w2`qsX~!^ZeS6Xym)JF3b)= zkIxk>u`d#{I*4m=86sH7ppcg6%z&H$DWa!won|@kS-?LnO5RXcO^xg)IUn*nj8%X* zWNElF{FRx<&=Zu9rR7cgg@FDF->F+=m&DhG>)1Q~D4of$LxY`*nOa4l77 zU=0RgDCI#(TLo}H`b5aG1|8U}BuP7^l3X-D(Q=Oll*LC=>Vp}e{sgHe$2^)_JB<;1 ztfbM>4~+}(Hun3XTnu*c-$^?x*3mBIpa0%+Pwhl`htNsiS+C~kg~S_SXkDvqWkOYuJom9)#ifJcVRe}vS{C9UTIqE#8h5w(zK35_b-mNmIe3zp7h`$SKJhEjXvCTFFXGBPT+YgGov-GPn5Un#c}0Fa<&OQmP`QYbL0>GK8b z*z4u`zFL#ag}}9hLFl>l>flS_qUqOT@w=(%tv9XHr)gKwAEnQDdaSPs ziExCON}aD>0bo@(BT_GmkcSINN&&9YY(qS)XK@aI2{4u5OsX{1Xq=)nOVghP66x7$ zbej(uZ@LpzOX7~;784J6$qWV)&1ekf8PsTP z8@4PxA=)+Cjak-a%Qk5n25S=@B6^DasF%`OEj=L=_KdPEdcB_ey8nDX=X35k-|s#5 zzxO?dUj5Y^!~f+^{b_4#JDKUb<@iEgeMS^ZY7%-*Pls%1nw6d6lM;+&(yenr9U=Xs=-$dfMb;&g zABVo#d~D{v`{g_x%rWuQgN&{oj#bN(qtn01Bh`~PWEB>WInBWa)`KaQrKiNK-rr41 zu3}os%hv2I**DoX`b9?RM#qJRFNVfgtk&oJ^e+n0`(x{)%eKsD!>1p0Ru;hq=Zp^8 z{d*IN!b^F{gxyeDan;o;y^@7@*FXg@Zc}jmkN-wNApYPFdUE#V; z6HeGUXW=t&ZG5z{%EQYm(2XGpgLZoL<~v@wua$f}Ho%B+O1t3G{q8#C&qG=m_0M)- zUDE7~Jv1B&lJbLZe#LGVJd$;RT^qT`{PnluKihDCQd6mO{$FcN8rNbY@-?=e{M9LH zthh3B*iiYu(QQH>_WjayJn|4C`COLd9nS zZv5abyLDXaX}7Ui_Qfot+HIp&X0$Z6kCv_r%kD^TgW2iYB4EQIgA z{cXdhUxch)wPL4p!l)OdgohJ%ew?ui{lx5}np52BBM5xjZ$^0eI#170?Mr2$FPkNE z*L*iz3~Z^&j2_}=`?VI<)1U8}p??;7mFN|d+rFm?-O?B^BWN@(4mK+d^DwxA>AOkt z^WF7br9*h;5z;H#(esZvTO!u$l|MOa`pC8V_&`m z)E*BWGoS8BfC@es?w*V)n@DcnwdJg6x>lRQJ@D+LkKdj0!eP0+-8qLV+G2f$u<3=G z9rA`Qb35yL_bW{)O4Ay_YX6+9=Bf7U2Ro7ZYhxXiVo9XhK}`{M5G%<-)F7Uwrhkku zRWnkvPzytpAX-t^HnFxV$%~H}*HzwB8~EkbQ3-0qE^Nri+Y9Txc8x3&BSVsTN&P1g z@wBEJ6}6#E#UZ9b%*2}Z^!{enR4Uj951=rdmme+= zMJ2TmY?vhTbxHyZGU%7`GI= z`TK={qyqyu0+1UIhX;XOpe-59k_cG?q)PzO;)Da}i5(NSh&#Py14RN(1R&8M3Yz%W zg|mlYGK`DBz0qJ2O*MDbh2y=|h$I?$l}4eH0cp702ZjfEEZ5%qJUSiZzuZTm(ZRx4 zrcpp&P=aL|5!4^hUn@2HRpU}<)Kxy1xVkS4K`VU}5_MG#fJOl?aoM;O2wGJG3Pgcd z)(R%s6IbR2H0V7(6(hK8446cHPhTo{W2=0B&sQj519VQXNC5hA#bE6K7S5N?7XrBM z%}Vp&MeuQNm!*dbU?;bQ!=Yp{Cp;pQ1CB(6Xb_QVPi9leBsM+F-k!sT8R-9SdBY*b W3BiZCxY%G4okm4lSh#xaK>rBjjS!OSHgk`UB$qJ>MQ%}%+$rX|T(-GO zlH1%iOvYGC?)=vG@w+@8zu)8c&(6+yzh2MR>-oCvea_=d#@5XIswz-}T_%ngM~WMX z8w11GRV7p;f;=9x8yK)Fo5H-@Lwth*&D=x0B;?KX)KpZ}RMpf~Rn;^!HFU4AD_aLW z{Qq6M>l@UkpEL$*)%9HgmDU&(D|Rb@*OXD5CZ1Oz|;7D;r$c%zv5x#73dT4NJ3RhS6xFw z+1%GZguy}C+@BF1GcV7ehhG02hlent7Qh~!-(CP2QR;){Z;sUD49J{sU$0(E|8&c~ z_6+xn3%+ctPbJQ$-0v#kl7YU~IO$MSmu&GX2}?G;MZ^Mg_36WZED(+kE4-={N?FbJ zcHYFM(b4Rmk#x+#0cNj{;xzx{zVR!sh@q2Xs?$l=>yv%TX2c!^b1Y7COP>%oJ~{-{ zEN|Z~`Z;kMZ;aXd3?yBs!5n3s(4F=+pG=jW?ETG~xIKsRIHXU{;HO=;59LYoA7cLO zPyhXGcdPA4-1P(|zV>@GGHU1qWqOnudqO#|dX?U>J#o0Hlez3!vy-b7D!aS>AbQHC3}9%-zI_GD3LKgbWY$0llWeRqj#^*?dY_I zf59*7a|P#P)Pl`{B+#80gGf$F;h94 zSOT7QL~#s$A>}W%PI}yP{qF`zuq-%LQBdm3CM|=4-q-ACO1Jx*>aNFWXuNmmJR$Oh zoDxh(L)09W{Dr)*G(p_59 zF~$)FBjIgLV&8&yu3`M`DM_!G=x-7b(+{0aczozjtxH z_kYtZ3vU~2-Etj~I*DnkO{azXtI9AeF5GW=Ue_)lO%F&{MWH7|iv42dcHhDW$mj6J zxV?_$y`bGTS}N+`(mkdcai|n2W@#ZAZBcokS~v$kKa-&jJuw#wycKhjg6<)KaqcVc z1XI5qw2SHE?T6wTQG;=$WFOxs&|G);B`%^W5t^e~GxPY$h=}764HZfhX z9ht&C!Fiv#nkPe6;c7u<1Rm0H8mI?t=XF)YSn5J*+#QeKBb&nZPHDSKyHh(i5@ia* z4v%=aBBM`!3R;+mjNAf6dz<_Bb9p`&(N;4Sui5EM_BtOglfLOp?2*E4UxEsgwF3tV z$zhdsrSgdDz=621B|40FqJ@sK$lA)|a>O`Y@pkX?Igc$TAbq>0}#A|!c z4i**cg<7>Du!k>-v}LEAiC8iM*S&mxz|@xl|E1VM{q(fKgqHrNI` zPo@j;1})929y8`ldK}n%`rg)##raCL?~{=#s6!V(Wu=Ftfr|0(ZGk=Q=ch3>KF6Y@ z%TCaYReT)oXy70>`DAdjd#@_uGAUdQW9~66^xHbdbr6$tqVATZI$sTq$yb(S;N-?i zjWVqIUL-fI#ETadQF3!~{D#O0_zATWRCFFmis+nB$g!dgL^~;6wh*CjqA0m|09|>w zW^w!Cp7!s1C~}g;@m2i^3)%y-W6@1x+Wsr#C~ZS&;8zn9=ptaB*aS2y@;&|Pge$dP8)1Ju~?bU zDW!*d9;3GXI`s+gTgbhu@4#Ht@KZoIzgcsshwQe?It(f zNUc+vf*Kf3)Eo?NB6%csWQ;5!(!iYRcYIBTew;H*E zL1JK2F``X1R@=Yo_dkO4Dv=seLNBHuuP;gcM61%LKQ~zgr$6jt^;uZ!MfmYZ^f%8- ziS$dXjSGh_YDSdImp(to1m(s?k?A7zuzWWXotv(WQ|_o)eq}h!x~IId>0AR?H?|y{ z4-gV(m?2;e4|6b4bH+>LR~(6l#|cok-}|1?jRY^;j_B^O`UEDb`?xuk7kSuP>8$(; z>X8wP|C~(^>Zv=1Xw8ijanlkOZLQ@L$aZ>6F(y?|}DelYFm` zEA%>aesA{g6{8Mya8c*U(NXWU&yN`7ryy+Zo>CY6c_SzZzIRuuJ#Fll)u!fm7p2&o zVah9+{_uWEU-=Gv=+1wHR#aNv&&AKX@Do!|T= z{O<>Ydct$_@Tf*r2m|z>0yQ==V<*)vO4=007=NEh@&vT0i*+}k?uFqG{20KF{JDV* z^*>?F*<-h6!~93|M#Az}1q-3k*3k5DY-k0}h%sAX4_c~JfwwwP^qB@n-g|Omeue_) zN6w5vdg=@WZ?hR0e;0o4SGp;Qkoa}@TRPzs3NiQI#%iBFI^()R|9dAf$jMI zozSl;a_HXI9Urd%>2g=9?U`F02b}b7stU%Bb3%7es=eDFLw}Io*4=gwTG8KH}=kYW;ZFI02)5jl67BZsWuiMdI9YPVJ zDidvCIk$-aBmQ)s6W;zLu~`Ju4XzqlR4b79xgVC}5~tW>v&adTf+jZqSI~{%gm+-N z2|WaNDwL`+Aqhv@_&mGtLv-bMjT3%=NSG`bTGT7x`5Vg6#OMzeEQ+q+pq#ID2Ls5W zE7gBE;bW1B&1D7MUV2jNNj2QUEBgLH5f^7Rbo1%bT9hy}X8ET7_GWFz@=ZSWmEhq_ zd3D0#?^kkm@6p|V83!V|n|}3n$u(HwflHxTgcm2-AelHQ`l`tw`TMXakO7rYtY|j7 z$~nVW9{9G7j7I|4e-f2tyA>y!_Il?+-70_#ucebEvEqyB|3_Tq2^2|3yvnL@83jZW&+nnjTx9dan6YUEhF79wr^5yPnb#xz&MQkEoj{ngoFp%#bioRkfzKl&|s7$el@6$MBm{4Wkm0D{=baqX;hMfhY^p$<{25G zd{e@7YbpPpdW>OYWTMzEmXVQa)4W(tGMM$o0_T8BHM2)>;=jY&;DiMLwYGg(?;BTG zc-yjGEiYV$toH&C=1i`VX-?Az&%;DNrt5=Oz^o6KQl|5NoyxNs%_9F-4jwh~(LDup zx=R*e)mTaC&tE(>F3$vog92h=8OU4i>|zR3D|wBXc@lB5NQ6U-csT<>~iWA zUvXKNz=U*%LdB+J zhtQ{3=?;&zoMh!!e?if8^ee=QjAY z)GoSh6zqDOIbfW)3eX&!F3L!DaE3fHiypURO73xTPqgTnxPNm=;wqM1+zgeZ3=0O( zuy&V;ir=@PWj(tF-2BoVjy$~59kuZ0-vQBXL1B8ss0d8Mw!?RR+Lw#3d1($p$s8Bm zvPIAExLs%Y5+!-l#JioGnm^Ka) zdAU2yo-E67L~YyGg-7!WcZ_t0Bx0mzqA_Jvk~SXR4vNmW#!dV3TA!1s$jK4QMf3y2 znG^loZtOD1w03ayIO*SD$=F?6Ur5`afmME2lr zyKM{xJ6sd-Jx+!>;y0r~w^T6cJpf=g8M*sd&-J2P-NRF(XNZ0nBk`Vz?9Cg|8`9Ed z(QNqwG{j2@ZpOzh4~@UaOH4euhPH=h0|0g@danjg^tyo{9!ND(VhF$uYWaG=&RT_CbE3W9j2X9CLOD$#+X{U?8!#_xOS znLttv(BpZJ6QT5Pi{(owM$d>5M{d$?6gOkPc3mW6cUq5)jp5-lIw%_9%4od;GY*Cy zBgmwhN9FOoj2?1jjk6$97Frw_dg>8RZbV~MuoQ`o+PT)0-UuT`AGnpB+GCxtyu2J;f1uSIWLn@xN=oT2F@)nu4o*Lbn37lOGNo%XroU*Wf|W5_Se9it~+UFLp212mf=0ExE@2S#nZM!KNJTi=8)=$F1c=x+C)PbrYiE zx$3r#e?eK2>_CB7CK;RWE=s(Om4ViQRWx?Hn-;gLcaxB^s|V^~*i1f`w7bSy1mJPI zJCwAW60O7Ic1E~<e3KVOPQ@(LhmDSyw zt9-bO*oiI*i0EhV7k#`sgWXwVbXbb-sh)qmY9_)+`jK=agKXx6_*Ja*(`(PX@T$W_ zMMW3-?*6Bg>UpGB%Fi9dC{{@mj-Cnh;BM4Kx3mM}zm}w3^X7FhYBTLn%oxyG;U#qRxV z5z@G2pF~B|DgG&Ce74+At$MP7j+63@*BzUUEASa(9Iq_>LLHwEWks$7v%x+ANwM0=(#!F~^ut(>exb(b;ML!r!&X82Q1imx&cB zPZ$l0Oj6=@^IM+J++70)Chw-)6W?T|jqiphGvFR`-sW*58OH}p(GcKsfTWtPWk#`c z3oaa7i-v~AoO&>vsB63uolEx_F4M)VMCZ|iaClwgodrrh25vO6XGlKCKY<&4+q+KY zC@|JA8r{RP&aWQ6qh}1?)^q!H_<^1~9Hck@>#&SgJe)4%y7s4hwA`k~=$B)eTLB6Y z`SaKPvY>)tMC8OT*Rt3&&d|u+>j3>H>ml`H12)?FN9!S<$Hr`&^q*{mG>*>Lgc+{} zRq_Yw5q?3-1`3SA^k#n{%4P~;!t~}=Bg!b^f7-|PY&P|0H~(NNn8Ah%YfMh!XuZyH zj?%#3?QT=i#Wgl3C-i>T_@(N(U_@etF<6wi#$*2)y}wj!1Km!kZ~-3?*94tL&@H%e z?doCZHmW=dd_=cpZI0|62UQ!v5HBlUgJ+l4Zq=Od z?VO4M@ROA_4X2vsmZ2X()u^bCWH5xhrtd^KYmb64co@FGNYsZYvw>7eC;myI?F+r{W{A< z5bd1hB|ti70fd6iS>eIi&RKCWDmPVZk$RD8v`FQnx-L=$s48GW4+rvgH@9BrHY`k|LhT3`ycsbtLG`IIQU6yt5cK15#QxH%p4tvv^$K+hJnQY~?k(-D<>_t0Q1X7D)tq-ai{m^nRNTEuyO854?AXo67I;EF zyR37Ur9VTBN509^UDlTR)c~iS;twvR8`ci|9Di^jdE!&$YruVQpXA@Pw}fOne5=ZH z%L3|X=z~KFr`plhahLDr*=0^E9MiI1khb}-jyECjDU2|6E{l?rqa!OdyB*a-jSN;P z+!1XBqy84;JvQKQ;=Cw7@uG{Rf8$Wzz$<~n+bG_PoJV^mMkrj|OY>JZo}Iz93LlSXc#?T@#YUIJb@T)zu2VT`ITy z@{%IRcEi=G!;81~tZm>7%XhEesHNUM>C7k*u1v$1CxVuFvdA2f`{PT``rg%Ped?2W zY@;r(Ex>##Rz(;4(CD^n9lFaSDbt1QeLvHUueIM$7q>^;RgLhbK~4G^pqd#gP($5I zp0H|vE7)%omQ$9)iduIm=gN-GoNUGCNpO|ob)b@%2UJz+Pu&WOd>0n)s5=FP-r=Z8 zzor{^j}a$reej|GeJ~9Axgnz(YoAr??O;Muy z(f}hsfp^X#sDt(ag{uPT1!+E4f$wCKcgRHb>Uq_xHlDXJY^g}B-;a=qiFP!|df)X> zE5N*2rvoPp7&#pyF^okhg$5he?xF;dPQc;xv=MQE&F%ZC!O(PR+TQ)c^i8}+US53W zTPAHTQ2UucAPkBU%uAo7GgWr4JY4sEA&!oi>XY$w`k)ODN?*N&CJO*p&iz@Jb5kv`Q#O+Xrt>|8u-vSD@NR6xaFGy<+a$d z6e}txPxZ5%7m$}*WXp?c7X3=*%_0r&F=Tvs<(srL^+&(8jZNe4XuUT=2BluRYB zc)h=_p*%_;ocYa`MF|=jy&?Q4lqbt2Y*3DA`KPJswPs56X#P-iYR+3Qub_o(^=Qh= zp?Tno%(nzf706rgy-C7#xGt*Z_FHhNgGSS6{+zD(r-&*K&b*n7vpao4SHDZ()UP*7 zZoPa9Mw6M(_9j?8eG~LHzff6=%%vH`)}Ng{Q8aY)eSFY@jycC7CGW(J*S_A2;B{t2 zFE~$D%0>qZ+-o{*BcGpsMww5O&Zhk%0e^e8YO1aPo56!V71|eub**=x5Ql(b6dGDL|JTz|U0YgKdtaZ8dko z<>{yI+D2cKOc4L!dhA&~pM6WfF7i}O&FDwI+sOWwAD>?It>7I;CG#{dSfzt&bwm(Y z_7#0CUJEFfz?m@2vdMa%@Ag$&nYR`StnAizbU~}%f#1>}jU~lh;g=0g}&8%EWpIUARh(4)kVf3 zt_|!DZ%RcrLRN*oea<-Z-*X;_@IB9>>&>4Itp8NiugR%Z2Z!itlbs7Z!%)k*jb!H{ z&sfwMJ*`L1#h!^=N~3ikypU*Ah|>4En|KA$))1w!I_qvd(Szs*#i%qr$F<3F&vI0i z-p{qk3eP&!kdPx~vdXTRb3^C{<=ZANd+4LdVvj_WsAcG*sbcTMLeZ4aN7HW~CsvEw zHk!_GBJ}@k*rH8IoZ0#zRNEF)3g;K$KUCX8<~Ly<=Zd2ee~V6seVi|j1)M=Y`U*ND zs~2q7W%_xcOek* zgdFfKw>+8vwFCDNcD2aokh|+8o&cHFM^k1)z{r@S5{Sk|$zuSdRelCE16&IoZ9;ZI zG^iyo-hx*7qs#Zh>{^j?5WdZl2*7yj>KtefI2~q(Nj{$CTW}XzC}j%NTPS4-yuVO- zHZXFb^jzSZg;MswmItNh1E;rC5W!=t+6lp9=d`nf$Jn$#1dp+6e+eGrP{#(3r6!g? z&kICfNz4mHmnY`Mpsyt5Jx7-(<)Lz}B9MvWXke`!2q9SOdxXzeYslaq zthKvXscN7CsZ>4Cl2oc0_?T3x9hl--svG!;t}+X?7t`K=+KX!+LG2~9FTm_CYm36{ zCAF`r*-L2~M&?L1`@YOmX#VvwPp#QEGf%JiS7x3`v+s}A@~jA(W~uBwhupmE2uLpP ztG$Q0$X5~mxy%!-#;=>hnwwth#^x&LG(XQR%h5&Uisv?G=f2L>EoeV@n|td`)W_WJ zH+wa?`gsvexea-H9YfW@LGQuGDjT{+w6v_&V~SP(hN@8D9Tc|#CVXaox4qwzi7Qen zQ}zz(YpYF;CK$qrGRc7Ho4>rFTWuF!oSwobbq94va_)V>8PU0}ex%HuK+}EF#{9ji z#RWn510#auvfj^95oi56HqO?n-!Yk4Gj+CnSMXvQtbeZSUQIlxdwJ!|l_uCI&f)`< zlN|q}Jb~!xI90G>>Kq1kHY$;eij`h=1UiBGY1-b(cc@GLJCmgXG2fOu{*UJUXQlceVqgjETc z_51#ny^?6XRB)6|pS@Ep-v2kp&^&cq#Rt%LP5DkWVd@NL`W=<;*i=Lfcf8Diycbb@kO9lC;>du_DAaSlC!meD)3SKIfp@BtKU02B z;XKYE(@Zn<0aC5kB!P}vS8>fbzW3Lmb-V=}y2D;RrSdqBn`ydNOaGdyq#&;%P@e^7 zY_6heoheKXEW^KkKd1wgz(1+LRGlZRCBQ%dih?aGvajW_+OkK(#(gWMe8sYu?yLoo zhJ1mBqx=3V9@>6;&LWIJ z6ya{kuM<}OkYyNQ#K}S~36D|X46Z)cM)a=wweO)0z+2dI<+aOZi*+_zZkaEDy;QfE z$Sg2u!_=8Z5B2-X<4oEWa%9y2Z!T|GV5oAop>}t9OOEycNuzPfoyw=vI~2+%b?T?P z`dro=`d&Iw&{a-HE<5q7u1&DQS&_6~1=y!_?sJJACQ3G^=ZYt5DKWKzb;__x)4Gy- zs_(=VT;EQrJ|EWwn7+|!P4x z9^Wo+WnoJodrz_NkN9pRdf2yJQ0>&62}y9*>NM}P$F2)IW>^!o^xej#n&e5 zYT?7^r*H*egW%km;kV9WdmBUU)jVbnbx-oS-rSPM`2-0J#Z^A-sbzAO39fF~9rTDD zJMvV2n|ar^;qAcbjG<@d!FPwA+e>id@jP*&U(VwP?KuynmU>I&iO!0wyh+(+AvzhG(`EuU*F@rJ#=%5CjBd|fsz#|x~I6NDl3^lql0Zl zJ`AkthD(teN8VRDn}JT;8ukOFn-&e4uVxy$!BbS7PTgkC+T2!vmiW}Vq4Oc;tFA!$ z4<+E^(sTLtbkqX4I2g1*xF2!o?}+zZIAS4(9J7$w9gdmEmg76c_gs-+*KbxeO0I1A zF6qKqNbkezp{7Io4eYYl)ME)ndfEqA*txUcLa*0e`|#jrW#Vzd6!$j`CGWm2N-zdEn+f0v;OtrhR#9e8}b>#i4+C%HN zlzTcQnl1hr$EoAO1u*7%3k#Wr>7rKopwm;kP%R%|FqLnH=~Y6jX$er5aqn@H&)el8 z`5a@lfwpCt1H#3&`mZNUK7;~m81~u>`#qu>n}pvZ zXA%D5w4-ZZB$21zGxvY7AGrBL@w=*B9SAIE*KnrPA&bB+Gb8YxtHisnn6#|`8B>dg zZ@iZivTJmlw`;N%^JgMY>tAugj$g7M=M;E`qkie)$T>xx|Do9Q%pc_xdnR#NjjEdC zMMUF6tiG#S;*~_ZL#)PBZMqFanV&o;L1pN9uL*wg{Di90TUisV^sGmX3VBlmtL<7i zX+ldB?k(Pnp-GdMJriGu-U&^by6ltqR`g|P(zJwMVy*a#MpFW3ggy)P1=@6pGgto^ z^+k*6I%l&m%jSzi=8~}9xy#Xse?*C4z4M?`z>C2=ame#l&lV&T5|cVXoWQ5S8PAaN z;D?Kn=K;Rxq;8NHkV!Qo33)?Ik{3{nzJUcPF>ZHxQjrhAW+X{rz+%n~Jjj46BOUo4 zSb9lP5^$;cTp!31=mE>fM836>UY7in*xL_s27ZU}yhgTxSym)f0U6D`gP=#iJL)`n zNP?K84xq0&X&4j=?1E<$B6q<{WXWp)wl_)NK+m~&N|1bzo>fT;!1b0J-$7Zx`VgK{ zqz0tNSMoL>&d96;D2d1@N7_Q(uSq%rnp@8O1l0peo&cs=&h1?Jj^L?5MnhQECEWo$ zt-X_=Uf`Wjo`&Rn2+I-o&DNx8&`)4jXhtIv4O!Zd3y0_kA7FhLPY3c3q-RqyR{eBv=6{LF|K*)Wv&H4{p_AkCM9^$c^Q6(qPxF+}Z1K4o z=;ZG1rA})Jf^?U)G~r>FwLIZ{m$edMsmoerP`cY%LrhjUuxn9PG?2I`D;~&1l)W4% zNtBfeH1Uv?3H11_q6_8a)4mDi<=4Ik&d`_8 zfHMpr&~b)Pf;!#+L4cDN`$&a`)L*1RV=CKH;dSbjr9xBc&80#R)%Rhc1vUB4mKE%_ z%nlfKTXx4Ec3W;I8g^TLClz+PJZ$7j!+Th_LPLXEgJMIM+B>C&QMJsg4GU`V)nNxf z^&J>RS^cc~jEXwH`hcpsw0f(Wy1IIWy1GeJ(@k|=%_e7cW~~Mvb-GqVs5(izAtBG2 z^mTMxpohTII{d5b-Vw$|MD$e~zyjd?YUT)=Xz(Z4IV0!q!P_wEScK(wMcOk(sEaGg zQYZ^hQ9nO$>yi?zRXOBcqE1kE=gO6!m(Hi=y3)=bw{;5F1!DyABj*f57o1IB33^! zJbbFbg?dRA1@w6b??;ub=j0l4#qkeTC(4?7&zs&=Yk*I_Yq}DJzou8ZUhSr6_jeQW zwtNykZfO|aos2v8-;<1d?vZ;?+~)vsNZsEui*7w;-cCRGo{qZ+a6XpRu# z`lWfd(y1@C^tV$@99E?Dw&bpr^(RX8vDoz(k&<=QgU$M= zV0j3o@1Q<;-d&x)O4`4$c53>)$Ab6ziz8hvKL>1d99&h~MxmTVsxG42J9tw>nV>|i z55jxbVV)L+?YFf8`tXYsAG1KE%}ibj(5UDESb&2#fqYa{#C1PJD8u-k|LXlG z4T7Ven=R@jJKvV)WVCWb8>NUAU_yI5Zv06JKCx9QzX30Duyaykgvs&ujdO6Jff$GP(1>qDBBy?R#7Quhp)<0#I@3$1v?sOdhchoxs&l4e2 z_fBK0Pk~O`ycKlZ_PeL_YWxHD!|SS7H_#s}10JlNHYpZ#x*UQ|K|qgel`K@1i&**Q zIddNM@}I_j)hYCZWBXT^Ci=*}Tv4)z0WtdA zF#jhPXC+j0g7?{!zP+7H5@Fj9qGV3qEl3%Mw$VpE^aMs0-6byHnR+KEHnOR!JB&TF zm&G?LI7lEjW_p_tcj_i&w=x#MJU4nhVygC=bCv$i;}gBFRV99H@fYYh(wD!qq&4@C5VYl>o?)p2mTKL(${2 z<_+F~0*w#}kvGZ0$ce{VxX*_1@J`?YLPODW>NJ4sKRC@`7zLM`IC=bB%W&TRm8C=Fg_;p}gk?y#tC3F>jjp_gFNeK$3Nr@+CyRYHA=IuG*bAey1ys)_1v%TjJ*pvvipMFpy86_ z^~pu`ENEDw^~&s8#8@ff>lbPK$`#q6FMoPElf)tR&~a&&G*=Z!1tI<)iR zv+LEA+s^OVen?xvG>zHv&c$%2ss*|fxo6*q$|QmP-;w9Nhcqt0E-Vp-kLr7ygD)`Y zX97H2u)vJ`nQ37puhNAZDz$npH!M4+r3V`LGaf#8B3X)sa1v5!JNH&+81JLjnUNZ) zyt=O`GPPDW@A=mio*l@7Ob2B9UUDwA<~OOgi7?uG@}Ri!!|H@Vr)7Dr)T>W+Vdg&{ zyO@c+#I7l2WsIjxyiQ)87I^wzlH4d;e?e(-IOSEZZd|WNAJcn0MS`4Sh3zd#!&mlt z0DrP3V8iSEX?|}gR>K9$vu4!QO=DdDau4%+`0%i<0r^ip2|hfcdyULeAf++)C?M;L{Un#=%$2~hwgRRwOTrac z*!bQ!n|vMi`!+QF{Ncs|dFGKvF17 z?8iG?tG)>1&!|WRCoCz*IH@-G_c_>>zJ&3Qn|duPC^`8yrwll_Rx`n~b1HhlUMmV3 zPUX2NLk@vl{P`72U=UeB-)XVga>OCJ`Zt{aZ3T-pXjP#*k$u!5rP?DT`(1?uMCO-* zrPI9@_A!Sy)kKZ#vWjcs3U*EzE&V?nK33mB@K;oTA!jHG_nbyMD*Pb{2X}w9q)a$; zR5OKU*H$D!yw(*SI$dc^nYue%{WRv|dkAPl!OzLP)pEvxQ2jfUA6?M{0Z|p;_QkE1 zN5vjt*{u}|5SdMdNT;b*_IZc>YGPP6ruh{5*4J*(SIAjH!dD180sECvcV{{w7YU$F zhyWp>6D-7d+PnCB0mx0gxCp#RRa*q|QSU4Q1*ot^py0~OMW7JZ>kDCv!LK>PXu+?! z!cIe9bBFOjU-N`rR(*XjOf>?XkLE~eeUC<_v{s@ykgcE5NMvhU4#!}(2F}`x5Q4Mz zC49zN2N3??tf2%AycL2FLU!*bl^O=FkxGpN*_TSM2P!O;ng&`fm4X5vKPlhn*V zin#Q)IlD9u9un`ED;QBZW?8xywemH-tXS*aPW>`S_<1=> z^w43EBYSN9@?BI_A4fJtt=H_Y!G{X>&;XNrIZtjocIOl{Y{%M69dM^~uFt(!zy5dR z=Pt_~3+tDUL~NUBOYT~73T5-GJPJ-f!(K#TVj@HuCOX9*{akOn`P%eu;MimPM}*74 z1&_d)rDu_6(`ms?l;fJP2UCHlArnHRwCE$sBr*8eE*{Nbxo!k z;H2N&k~}5UpzUbvV2pk{Zg*Gs^Zm!W%OR=S#r{kO&HE`O-`e!_*`02I+eH&Y_?>4( zO@x!{%fG}H`^z~An@mk_>K!_V@QYD zlw)zF*_7pz`GWQDAT}>gKX7YaZ8j)%Ha#R{TC~7KCb>Rg=+rlj^=e|hwODYRf>J~E zm5`Jasa8=F)#UmBGnr@g<7x7Mu*BCul)Q_(W>T{8{a9xRZ0DZu*xOm(>@5>{;eZRz z>Jxxb-_x+Wl+0?SNO{3|vnh5&g2@!l6T5cGwo&13uKbKl$mM>=(6vWN^;LSt>&NgN zEhpBJmgI@J`YMxvc@{z!ZGu{d7qF|o~D{S@-q$_-iZ27QPNpyLx#ov+n=5@ zdChDy%a~2AmFLI{U-+e*l{WC8*xxI5=f8@zvpinN*@M)2hoe&*c8%E--D3Z^(#6fV z`ZI4(JMUWBuI``ay<4OmX!@+)H=t?_p>$e~3yqE?FP#RgGRFibj??Den_6tQ_2W(D zT{3}U@-BkCq@!z7T0r51dbVvqf8)4|1?H^~!m4He4>rfH5rS9DvL?NjpDCqTW>xiT zKb=Kd&kB|JFaO~B!_9Cs-q>s^6yfsCFnP^8YIZieK)x%XzC7}FR)D?sfATH?`yKYi zkLreIiy%8l`I&0*ERUVlxA_*cAKJ?g5~!I!{{Z?+$&4Dk`R9&&UQF=w*_z3KcdZH3 z$zpM5_Z|PX3*-Un^me@JddJO)4^*(?esqcd(Q(~fOVxhie)E9WE%9}(T?eCv1{%lD z>igu(<%LJ79A5fK7ugx%@1?F(i|2dnzyXi@sgDjNMhJ$Y-P{xLv*X{=M&w;W)W5aM z^oMT6)J8>t<%L>W@zvt;raNI}iybZ9!jLWHtbk0ih@Dn(IHR*#SqU+1@BH!Qo2Fq0 z55Mf2O#QgP-*29EU@}!5sBfob=(gTbG{MzdtRD;9G%k!>77yJq?WaAj4_JT2?&YcZ z*JNs`!lY$^kKJm2VQEvwReq+ET4Jk}rd;g5am2dQmFVF^xLjb;0q8f6$X!jz#K;5} z`{P?{Ms0qqnN01cHEQnmKZv<}1g#a8*LzPpP8OSzmqFWV9mOzEQb;UiB6r={U3H&z z@p!e4s()3Eb6wm#jn5wtW$hO@xukNzwsAV4<+K;_XeG5iAb;dpeU-kQN|#~5o`w9( zeXp4_SylNaBmdQBONN}6cX`sZG5zVAN{Rny)tU2W!poI&(pj_-jy;V2RQ~p?{!FBk zT)4tQk!UPeR>0M#1*hCL_!8KM^>*nzPn-VG*#Z5yL)l%9G2*j&C`Ku(>du;MR#kP* zZI&X>uK*UO&{S%}Nra)^C2=LmGug0v*;tOx%6F9~6a#j~g z;?p>d^aOt`ypPX5>#CQtcS>7yJ!EUF)0WjjR0*;5qw_ASlc>Mu)_A8gtB+`<=GMNvIz5bvfZiLg^_^U5#g=kx-%1mbfYpdvCs0yJI$~quw zpsh07xy?FBU1*J`aSrP{Z!WaQ?{QM~CpQ-`Y|LPtEp7qy*4G3!AUN1Po} zv3YAK0Se5AyBBb5f^*1ShP;29w>B@I4_SQ6!2t=r?g`)+bGzRMcpRYGa-@oR9GDi zjThEO)8d6q(a>kYx6rg_!uC1P1YsA0RAqu-cbYoExjRjpkkg%}PnhgZGbRZ3q?!_( zm)s4AIO#wz5hoiMO~lCu<`Z!Wfo&c*B`zsJ?G&igCG|H@&o_zCG~pREElrq&hN6Ti zXc|hGj)tZSAE0UJmzbNO-@2W9(-H|ey=h3oWN%tJL9j0^li=K!_IfTYcd)4sQZPvG z6Db~4?kBt-^y|<6I9S#XuADQh9y~p8R5xfi(Dr38Vj#MC@XLTf`yg%L@ay2!_1Rm4 z`8Y!2Ah>_9dr)L}@MMrMI;bBI>d5hPebW`wdc4;+Vsy0IiaE(EYKz&PEtBW|%=oML zgKsg1^LPtP%wNjH8{x?Vwr%hCdWT~QLCrDk!z!*tLAb*a4CMuMz(P{| z_HGb=M&sUn^?X;y@b+O*q^nan29@$-Td$k4t+F~S3SeAlKNi>e8~Sifgo!kFa#&Gx z{0O{1;eSvCOVD>R2=^g0HqLZzmB7^P&HeokT-u}IL+VU5EQ-4Ys0NU|jcgAySv zM3(G~<+;Xv*VEneJHKzr%Ox!&{ne&65u%s-#^AJ+>v)lrOI)*jIM&=Sh%oPHfX zfa%ipvmJptO3<%Wmu5C>enQN0^1P2N726)GAv{eD|Dqtm=-4(!Bsa8r zjPscXxxvHNJ4%On#h&we!Z#Z!pRDd42p?346_-Q0;bUO(6oZRmC^QRJjnVnvQ z^6iG@gg=K@;YX|yvy4BI8os{VdM3F!pVlNXjIcTw-|#hUe``88Q?lN43`XM{%_prt zR#;_=oo_<$g!_BK-P$EQZf}1P?q0Q;8ZtN0OQ4kP-Jt4)t~NBR&yJSu+n{^)rC%sm zot8*CJ-6K75XQ(ab2(C+x3l;TH8U@FAOzlWa3W$ylb7#OEiznFmBT>5wm}qNi08;y2{vQ|zQ({`Xf=?S7 z8X$>iZ;(2(%KbaugZcFR=bmEXG;mB4uo3za28CvB3bq1}9pJyg8!$Dv`v1w@V4mp* zcOxr3z}{}~P%N!ZqwZ`fU;K^k3+HWF%?{R?r6`|-a`BlzyT&4=Ze;IoWRp_34<
kuDn(MqXDzO@NA*YV^&UcP7P{VR!A-b$QUSQ~T`6=~PhMP$lQt=n%sQMK%Xn0HAzN5UMh6BiU+Lsv4; zyzoU>w2o*8v1=SX|8ZFELlRt|J~72hRAge`S~aX*78ON09i!iZ|5zp(YNgI1pE|7k znP}&YRYIl8!y=VF1hI^nwR_I@f}LK`1Uq<}yI#2{3rH8miORa!#Ux!9On6VDSxzK0 zzk={+Bpn}zzR3`E7JE-%@u6)x3kCU!K9xU6$ai89EwstGF(+kWJ|G1vaL%Aqk6Y636VqDQzp?G-M z&0B&eZ>2F@qA(C9^5*SP=sfzLUyYZ9E> zWbs4%o6_}h;2Xw99ffB=XVNQO+XUm-GYn$%*K%&J@iuMW8>~*h`gV=KJKc%3K=O!w zm^h34Nq!Jlh_^!b9A$rtDcgEyLQlr6ECwxdn}Vo1v)y(`Iy@O=Y6Pniu<81Gd((wg z6~tn!&o-rhbdpW*+1@A5_^ViW$Jkg;$;a)z=mi~%6uP#@2qYpDQJH)AMr4VX+dfehQk9$#^~cJw0~ zyCMHsu^anj3=Pa!h4rU%ZSRXcjG4;wnRK0$CmpF_IcP}DwK*@aAsozk9Ku!D=<+qyCI%^i z(p>zK#n%Mxv10V!UK773Q5|oVQq<-u#9?dlxD?pulkC65^j5$e22J4haKoT-Lc#+3CsQHC=D2ag_crnJ40&I9lzsF= zYqVW;AGyzD%6UrjprJ}3d$%p7paOqBs^Wxje0-L9g?YAl(#wm&CywPE?O~hzvIN^e zZjd*$9h4lb9qOlK`_=mu9+vihz8`e|TfceV+kTV2kq0V$lsO z>tUTCBYNc?k3*}aX>PgU#Jw(540qG@l&<^UOVC1+8hMK>Q?pzXRihHz5^NKEC3q%y zb%|?3aZ7sZ*hbxk9fuZ&BnLZ32?zDyw;07Hp(gj3t(elJ#H4eH>W9gqx-dr-9!Qr4 zPObief%-)aXP;g#LZ=YwCCpOgonP?a0rheX3urO)C@i+~*emwWwVkm_-G{6W86u&QqYF4ry-)o zt35KEy;Q1BszYkdD8uOV-QaxTe8IbS@;zGvTW_?Qp-RpnT0G+Eae^<%t*8(AAMT77 ziEJniSNrQU{+6ftenaYmaZrM?;($|T{o0y9vrMLpsX)(F=vAewbMU-Oj;^KNh=NLs zqAKjH@~mJsC!Q0ZI`{n@VK^Fb&%E< z@xth_2kiETbi3<|vKm^eX4!;n2;QrDaKW-eZh^Ac;Bncd(Y?nt*Y(j8FH*t8%MFL_ zhXuvKi0M*g7v1_6eCOrL=t|6maQO;lMQ~`fvX8rUieu01yJgE^)2<1^@y5*>>Q&hL zLve5A-)L50W(yx$N>~KSh**?ZD437pKjZ4x(mD}oo|Lz#73fE=@&F{lE64W((?i45 zWAX@P8dzdT{Ba$T6J^?-d{g`8*QaNZ2pej`Ba6otE~0LO?&!0Xl~WY5`LbCO!ZM`9 zXQuG&>)N2&(y!m%&>f2$5H72@Qm?tr;D(JZj{KN-$}I|?v`B6u$IsxA?DGXp=5?H*j52&H9xS^cUPG_t%|w!cdx z*~8oYYt2Xh2gGM#xgR(g5?UO`IJ9HMVr#(K?z5uV8lmIyj5Io;t~9&$kpE0?+h)r9 zX`9#h5wj}Ey7t=jNym+n2`Ujs8+Im&P^cfXd+XvEw^xsbscx0IPl0rQo6^;q_iBvN zMh%zA>7jR)!k$h_t|ObHyNni(51F>gQslsT9&3S{rw6WQ6gBH9?6@&reH;vE2;780 zgtgVS-Ig}#rFT5?{Z_1o84&b?AZ~$hGIkx`i34y_#!Vxjw1#Ykr z#>WQ@pyinCI9HIW8rTnmBNIVzb?`+po`lAteMsC;RaLMz9>C!di5L*rmw>zk%(zGt znK|mBFa#9Y&j*VR1c6BytT!O}AyEW84g@|&Kr;)0l}Ho{pw)4My)l3l5kmxlm2r5I zH`)gTChQ&(1%v=B7WtEYo{aNF63Bj7B$)&P<9+cs^aa2Txw|uwIk~(4gxT92`@aw3 ze{uG9Ljl;1e2%n>-D8SC+OR_U0Y?IY!fs#wsxd=jFQG{o6p|bKy)PhUM}Nlh?S_f} z!2lTgnT`L&K*<1)_5Occ0tsjzZU_hpOe~R zhX&P90V@7W(*y$AFLi1VAjSNusQ?Z5hX#SbpuesKH2AL?3<3k-g8y6#gQ&uPJu?iV zrU|eKzk84fNDLND0I-c9upK5C4fFs6K8^Fi0}*jI(AnbgBoLFPxcjdVNk{@|w_7lX OIvm0+BV%lB!u@X=rTSF> diff --git a/doc/figs/sequence.pic b/doc/figs/sequence.pic deleted file mode 100644 index 35e443e..0000000 --- a/doc/figs/sequence.pic +++ /dev/null @@ -1,407 +0,0 @@ -#/usr/bin/pic2plot -Tps -# -# Pic macros for drawing UML sequence diagrams -# -# (C) Copyright 2004-2005 Diomidis Spinellis. -# -# Permission to use, copy, and distribute this software and its -# documentation for any purpose and without fee is hereby granted, -# provided that the above copyright notice appear in all copies and that -# both that copyright notice and this permission notice appear in -# supporting documentation. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# $Id$ -# - - -# Default parameters (can be redefined) - -# Spacing between messages -spacing = 0.25; -# Active box width -awid = .1; -# Box height -boxht = 0.3; -# Commend folding -corner_fold=awid -# Comment distance -define comment_default_move {up 0.25 right 0.25}; -# Comment height -comment_default_ht=0.5; -# Comment width -comment_default_wid=1; -# Underline object name -underline=1; - -# Create a new object(name,label) -define object { - $1: box $2; move; - # Could also underline text with \mk\ul\ul\ul...\rt - if (underline) then { - line from $1.w + (.1, -.07) to $1.e + (-.1, -.07); - } - move to $1.e; - move right; - # Active is the level of activations of the object - # 0 : inactive : draw thin line swimlane - # 1 : active : draw thick swimlane - # > 1: nested : draw nested swimlane - active_$1 = 0; - lifestart_$1 = $1.s.y; -} - -# Create a new external actor(name,label) -define actor { - $1: [ - XSEQC: circle rad 0.06; - XSEQL: line from XSEQC.s down .12; - line from XSEQL.start - (.15,.02) to XSEQL.start + (.15,-.02); - XSEQL1: line from XSEQL.end left .08 down .15; - XSEQL2: line from XSEQL.end right .08 down .15; - line at XSEQC.n invis "" "" "" $2; - ] - move to $1.e; - move right; - active_$1 = 0; - lifestart_$1 = $1.s.y - .05; -} - -# Create a new placeholder object(name) -define placeholder_object { - $1: box invisible; - move; - move to $1.e; - move right; - active_$1 = 0; - lifestart_$1 = $1.s.y; -} - -define pobject { - placeholder_object($1); -} - -define extend_lifeline { - if (active_$1 > 0) then { - # draw the left edges of the boxes - move to ($1.x - awid/2, Here.y); - for level = 1 to active_$1 do { - line from (Here.x, lifestart_$1) to Here; - move right awid/2 - } - - # draw the right edge of the innermost box - move right awid/2; - line from (Here.x, lifestart_$1) to Here; - } else { - line from ($1.x, lifestart_$1) to ($1.x, Here.y) dashed; - } - lifestart_$1 = Here.y; -} - -# complete(name) -# Complete the lifeline of the object with the given name -define complete { - extend_lifeline($1) - if (active_$1) then { - # draw bottom of all active boxes - line right ((active_$1 + 1) * awid/2) from ($1.x - awid/2, Here.y); - } -} - -# Draw a message(from_object,to_object,label) -define message { - down; - move spacing; - # Adjust so that lines and arrows do not fall into the - # active box. Should be .5, but the arrow heads tend to - # overshoot. - if ($1.x <= $2.x) then { - off_from = awid * .6; - off_to = -awid * .6; - } else { - off_from = -awid * .6; - off_to = awid * .6; - } - - # add half a box width for each level of nesting - if (active_$1 > 1) then { - off_from = off_from + (active_$1 - 1) * awid/2; - } - - # add half a box width for each level of nesting - if (active_$2 > 1) then { - off_to = off_to + (active_$2 - 1) * awid/2; - } - - if ($1.x == $2.x) then { - arrow from ($1.x + off_from, Here.y) right then down .25 then left $3 ljust " " " " " " ; - } else { - arrow from ($1.x + off_from, Here.y) to ($2.x + off_to, Here.y) $3 " "; - } -} - -# Display a lifeline constraint(object,label) -define lifeline_constraint { - off_from = awid; - # add half a box width for each level of nesting - if (active_$1 > 1) then { - off_from = off_from + (active_$1 - 1) * awid/2; - } - - box at ($1.x + off_from, Here.y) invis $2 ljust " " ; -} - -define lconstraint { - lifeline_constraint($1,$2); -} - -# Display an object constraint(label) -# for the last object drawn -define object_constraint { - { box invis with .s at last box .nw $1 ljust; } -} - -define oconstraint { - object_constraint($1); -} - -# Draw a creation message(from_object,to_object,object_label) -define create_message { - down; - move spacing; - if ($1.x <= $2.x) then { - off_from = awid * .6; - off_to = -boxwid * .51; - } else { - off_from = -awid * .6; - off_to = boxwid * .51; - } - - # add half a box width for each level of nesting - if (active_$1 > 1) then { - off_from = off_from + (active_$1 - 1) * awid/2; - } - - # See comment in destroy_message - XSEQA: arrow from ($1.x + off_from, Here.y) to ($2.x + off_to, Here.y) "«create»" " "; - if ($1.x <= $2.x) then { - { XSEQB: box $3 with .w at XSEQA.end; } - } else { - { XSEQB: box $3 with .e at XSEQA.end; } - } - { - line from XSEQB.w + (.1, -.07) to XSEQB.e + (-.1, -.07); - } - lifestart_$2 = XSEQB.s.y; - move (spacing + boxht) / 2; -} - -define cmessage { - create_message($1,$2,$3); -} - -# Draw an X for a given object -define drawx { - { - line from($1.x - awid, lifestart_$1 - awid) to ($1.x + awid, lifestart_$1 + awid); - line from($1.x - awid, lifestart_$1 + awid) to ($1.x + awid, lifestart_$1 - awid); - } -} - -# Draw a destroy message(from_object,to_object) -define destroy_message { - down; - move spacing; - # The troff code is \(Fo \(Fc - # The groff code is also \[Fo] \[Fc] - # The pic2plot code is \Fo \Fc - # See http://www.delorie.com/gnu/docs/plotutils/plotutils_71.html - # To stay compatible with all we have to hardcode the characters - message($1,$2,"«destroy»"); - complete($2); - drawx($2); -} - -define dmessage { - destroy_message($1,$2); -} - -# An object deletes itself: delete(object) -define delete { - complete($1); - lifestart_$1 = lifestart_$1 - awid; - drawx($1); -} - -# Draw a message return(from_object,to_object,label) -define return_message { - down; - move spacing; - # See comment in message - if ($1.x <= $2.x) then { - off_from = awid * .6; - off_to = -awid * .6; - } else { - off_from = -awid * .6; - off_to = awid * .6; - } - - # add half a box width for each level of nesting - if (active_$1 > 1) then { - off_from = off_from + (active_$1 - 1) * awid/2; - } - - # add half a box width for each level of nesting - if (active_$2 > 1) then { - off_to = off_to + (active_$2 - 1) * awid/2; - } - - arrow from ($1.x + off_from, Here.y) to ($2.x + off_to, Here.y) dashed $3 " "; -} - -define rmessage { - return_message($1,$2,$3); -} - -# Object becomes active -# Can be nested to show recursion -define active { - extend_lifeline($1); - # draw top of new active box - line right awid from ($1.x + (active_$1 - 1) * awid/2, Here.y); - active_$1 = active_$1 + 1; -} - -# Object becomes inactive -# Can be nested to show recursion -define inactive { - extend_lifeline($1); - active_$1 = active_$1 - 1; - # draw bottom of innermost active box - line right awid from ($1.x + (active_$1 - 1) * awid/2, Here.y); -} - -# Time step -# Useful at the beginning and the end -# to show object states -define step { - down; - move spacing; -} - -# Switch to asynchronous messages -define async { - arrowhead = 0; - arrowwid = arrowwid * 2; -} - -# Switch to synchronous messages -define sync { - arrowhead = 1; - arrowwid = arrowwid / 2; -} - -# same as lifeline_constraint, but Text and empty string are exchanged. -define lconstraint_below{ - off_from = awid; - # add half a box width for each level of nesting - if (active_$1 > 1) then { - off_from = off_from + (active_$1 - 1) * awid/2; - } - - box at ($1.x + off_from, Here.y) invis "" $2 ljust; -} - -# begin_frame(left_object,name,label_text); -define begin_frame { - # The lifeline will be cut here - extend_lifeline($1); - # draw the frame-label - $2: box $3 invis with .n at ($1.x, Here.y); - d = $2.e.y - $2.se.y; - line from $2.ne to $2.e then down d left d then to $2.sw; - # continue the lifeline below the frame-label - move to $2.s; - lifestart_$1 = Here.y; -} - -# end_frame(right_object,name); -define end_frame { - # dummy-box for the lower right corner: - box invis "" with .s at ($1.x, Here.y); - # draw the frame - frame_wid = last box.se.x - $2.nw.x - frame_ht = - last box.se.y + $2.nw.y - box with .nw at $2.nw wid frame_wid ht frame_ht; - # restore Here.y - move to last box.s; -} - -# comment(object,[name],[line_movement], [box_size] text); -define comment { - old_y = Here.y - # draw the first connecting line, at which's end the box wil be positioned - move to ($1.x, Here.y) - if "$3" == "" then { - line comment_default_move() dashed; - } else { - line $3 dashed; - } - - # draw the box, use comment_default_xx if no explicit - # size is given together with the text in parameter 4 - old_boxht=boxht; - old_boxwid=boxwid; - boxht=comment_default_ht; - boxwid=comment_default_wid; - if "$2" == "" then { - box invis $4; - } else { - $2: box invis $4; - } - boxht=old_boxht; - boxwid=old_boxwid; - - # draw the frame of the comment - line from last box.nw \ - to last box.ne - (corner_fold, 0) \ - then to last box.ne - (0, corner_fold) \ - then to last box.se \ - then to last box.sw \ - then to last box.nw ; - line from last box.ne - (corner_fold, 0) \ - to last box.ne - (corner_fold, corner_fold) \ - then to last box.ne - (0, corner_fold) ; - - # restore Here.y - move to ($1.x, old_y) -} - -# connect_to_comment(object,name); -define connect_to_comment { - old_y = Here.y - # start at the object - move to ($1.x, Here.y) - # find the best connection-point of the comment to use as line-end - if $1.x < $2.w.x then { - line to $2.w dashed; - } else { - if $1.x > $2.e.x then { - line to $2.e dashed; - } else { - if Here.y < $2.s.y then { - line to $2.s dashed; - } else { - if Here.y > $2.n.y then { - line to $2.n dashed; - } - } - } - } - # restore Here.y - move to ($1.x, old_y) -} diff --git a/doc/latex/ghtorrent-data.tex b/doc/latex/ghtorrent-data.tex index 5171466..ab857e6 100644 --- a/doc/latex/ghtorrent-data.tex +++ b/doc/latex/ghtorrent-data.tex @@ -14,7 +14,7 @@ Software Engineering Research Group\\ Delft University of Technology\\ Delft, The Netherlands\\ -Email: g.gousios@tudelft.nl} +g.gousios@tudelft.nl} } \maketitle @@ -175,7 +175,7 @@ \section{Data Collection} This design choice has been very important since it makes our data stores append only and the results of each step memoizable and therefore cachable. -\subsection*{Data schema} +\subsection{Data schema} The data schema can be seen in Figure~\ref{fig:entities}. Following Github's {\sc api} organization, most entities belong to a {\sf project} and contain @@ -190,7 +190,7 @@ \subsection*{Data schema} field contains the unique identifier to the raw entity in the Mongo{\sc db} database. -\subsection*{Workers for Data} +\subsection{Workers for Data} The data collection was designed from the beginning as a decentralized process. Decentralization is mediated using the worker queue model; a message producer