I@d!NKSW19$gA;5M#{GedovptPqUi1ZTIZq~md*zm`X(|+xgoCcCk182Zg zu?AShf~Jm*MSzRr;^Hy^uov}dqZ6v&Z(%GG^)GUySq$if7cN{tH(x_WxgPVC|u zM)HXJ^t-~23#(TQ?I$P*3rUV(a4$K*5_o12+=H{=pW7Qb@k$}td5fF@aX vV5N$bVPl`8#<82H_$olt2Ks6Rl_oSfB4Qh;LxCFM}49;bSeS>b9mb&Z;!RTqX$7*Rk1pPa}Yzu7Jo8$ix(ET@i z(YGlVbOyDCnQ7~`Z3iIgKv{vle=3W%L`Q@gV0(MT5!T_jXVVYG9 n>gmWg}=>p@yS_kl{gRH!~ z3GZ s`Hcse=(bkZ)$2{3MuNgyJl`4Aa@k@vlTQ4R@ % zgD*>~o@Q llVdiHwkxEx_mH zwG4|N)G;=;p|PEK2Yag6UVvZH6@tNmXk-=udrro4z|7Ut8_d@rxPa YcY-EN1U{tRb5I8Q5-MvhN^mHv>-*RxAHf`Sgn;tT4Nbc@F1V#Pp*ROquulsuM zKocavw>cn{?fN55Wt7&x`|Mf9o_UD;w-zz2W*|+xQsOv4>=i5NMt2o-j!rGC@x{y+ z0jbGX1MT!Y^v>C_ZhWUb(FBsaCQ^)lCgvBN#JzzH>|sRiq`h$9z(>d@+oD6v1#0ub z`Sx}i*nAFgqAqLySp-G>vAGm~hf d26-qO%(!gO7 z%X!K}$t4AxdiOo+e!Zy>#>dBpKDLb^@vD@QmYgimG70e`df*RDM{yO1FiBHWPB1Cp z>gt;Q;)Qm5dwXay_^uW;5r^VSvi{Ac(-&LnoC$(Z{1|b?mrow2`$$Mr&(bn|+d+fh zy7-&t%jMzU0J^!`ZBRhd)6y)YRA8$Wls 0iwb(p zm8FDBE;k^VuB}bLJV_#;S#}o-uryF<2f+MrV{i_80h+LCUnn!p762Y(;KXpBqhoTS zF1;^es!#(TNT+AB6Rz9}w3?6ElDgWP8Uk!X44nXQ;9x2Qnu2 ^Gb4RDjvp0j$W?|6F{g7^uLB0F{0d8925w|8IQ#JF8GsxVQ=N* z>*0-#T&nu|;mJ`RJm#`|{o7%Wmdmk2vb8V}gOtd+ukKrtYK~2wy^Anw^~}4$cN^c7 zU&X8D+!`YL>GHqhA8j3U6px4@7S1(GCXlMC;1JJ9JAb(k0`JjFEAcDK*U!aBY4Q8c zUw%h uzT#6mwo9B8TJlCFPu?$NmNRaB)U2Gd$$m=C7S`5{ubXwG>pfpwBw5_A zi<3@2(MJ%Zgaii%zw4dW;~nNPyK*HDM;pE@O;X }UR-n~{lLkG#R5M33*96NKMC{>Ab`?V-T;xFL=o z{(}*(UsJ`niD|w`UF<#J*0QqhVXZypD-3#db#*8}jF*o6VNjy_Ng+n^dT+d!CrQOH z-f+zE^XUg@c|-SZ*GQa~S0=h<6EX`S0j6+LmLeBh+Vkh ;y7c^zU$f%&Nya`j0oUf;Sp zOjs{uqt-WKqv%(INE=ifkQ5lFXajjD6D^nsQq@fCxVI|5&&)$)L}Rm%#@9ww{(Kza zPJ4-aHZZXs9Q9Dy3S&veq0b*NSn;I0$f$(n`%pm~OmJ-7>iV7`;(hY?_XJD=TI4ea zS}qM71Yw!Q#Q7tscRIeWXd)-I^ZQO>CM?q9(Z9jAySQ~&d{0(Mi4hch8J|U$38CG) zKivq14UFc14~KZ?$Y>b>o(q5-qMJg38H2s64e}V+iLla@BS(*d9zqD(EL8o;0U5u6 zew+(Wi`Z`GB)gN5K@=Fo%fZFm$@p_iw}PjC2~%hpFJBsn=x62O!tT`6*OQx4)PXam z{x)BuLYKVs_U=~X#lXY~=yPc>P*9adWDytwuO8@_4ovB^CY?40W(o%k8Glo8`*0|G zg>7d6GKNq*UcLk_#&w!h1UTW%StccUj{Pcw0|N%~!PneIK0YPVJBj(Y`*%QzFoanh zPzI6Jz($1Wo12~BO@L04 L-xTGcS<86eCxo|w6ApmL1)AiI? z_nyWFl06nQsf{q!_U!ih?ZeT%%g N+PqvQ25wLuLE-YK29-PGeG zAn6WBx7B>qM9vBz-F>`#h%_WW-**!k=Fo;Vgg&$f+K1p!JYy(+U~Y*9Qzujq35uud zWDmt1@m^Eni&=!BFD#Iv3_uRz;^NyhxP4F2j~> Qrh?_< z)wT%_Ib=YyE*A1YFfk5}30}DsDB_3^-r8?4oI^r4Q?rR#*p)>xlpHs}Li&(6pZoj4 zhew7fTfvuxQ9lhRGZ$qOR{KspicibWzW^_RLhriA;ON83!U&|>cuyv !xH3 zkilk $s(Yi2+17U@T-7w))H=MJ_9Q=i17(GM+4xd%5rVt+ziQ4cz zoTnFZo9(+&U2?0L@>yHkOpxCNh9K~obL$nXKlCzzmf3_%XZo$I%oY+`VKkt%tBU~B zUwG2JI}oF;Zf+Ub*_!9hoda=@{Q2!YF({K=<6MuW9Ip^ZH||xj0E)^3WL9~zavK2a zOc07-Xw@JmC#QJmS@g_3?DA`Pf-gdf3qeQ$g##?_WvGv+92Y&Wrxy_w9UUGTx+l8! z*^L{_*REbQkl(f^4J_ qQ)z6!9+lbpv=Gw^uR=-fFfH6ArT}bF`0p=ECVwG zH0@|y@Z!Ri>vF{f
yiOxf56$I>H`_ku<+lBcm(#;S zy%Rb;8lA*0Dp#wOtJTWsVZFu(J=FP0)zM#nji3Ev9e@btA%8Z@sdc$htz4;=Uk_bW z34VG=ZP0Jj_r9tBo%S-da=vn2kFVUpB6@g@Mu#5i?cIiQ#Fu~fr?Jy=yVhQNa_Fz= zrygqTwOp4!eaa1eugjl$ZT|EEf9bWQ{cpJThQ7T^3VUDANFcgMbfi _95I$&^k9fbAF^8#14UM+rI)Qke5S>*+t$fyx7ZSTTobsc zlf@pFbg3&YKIlmLV$~BdjwL9>>thi-M&QqjzmfR69e< Gj9IE?G46)5o9P_0IMs;^@Afn!>H(t55XVrF7rE^parqCucog`Nh$> zYv#VVZSMM_Jrf2jo&U@JL4&7!`;P A zJM<51ht6Z|@cE^7=>M)AzExoyw?+SfcKUTeJ92roo%+Rg>fh9kKFn-~{%P&d6KDs2 zQ#<_3ZHND3+mUa6JN>ew{ hn{QO(Vq|7;r|D40@|_zPqkD3)$R0`e2FCdwf=Q$r~bdU z)8DD>$cy}y1j~gM#{maxg4(0sdPE3+(RU68>-Z-${MrK?k72@oKWpQqEREwewB >?APpwvuPXG5>e!E7GUe6eUmPrpKYz`>7?ba*YG+&FVpB*)2jX-HU50p3O`2U&-Jb9U#jVe zUE`15uYXuL-+Hv-+q;?^r)u?Ek&k|b9eDow0}cX>HOK-jzok{X15uFVHMv#00hDF( z)$;58U7*!pdcc7k&GnDd>QN3j2yLwW=V<(~wQ6@M@=*PWt@_nL<4@p#138-Oc}L@C zQY(6F8s8?js(*;qUstR8Em>K2&nzs+D)D6(`?9hK%+K;=m(0kTI=!SQ+m|zKdcoaU zMTPm(bMCWbPtDFk&SIcSva)7o7vY&xSb(wxK18!}^RuUvw94hnE%jwh@#p2`7B^?P zyCB<_m0f&yjzy2nvXtCc;>(?xm6bQWAUl8h{n@_hAgj2r(3j Lee$x zWLB!t3P~Y9f4Whcb=Oe(7V6y0A}R#BjY3)zQ*-mO{h+v{1VgAWpX u4S{l7^A4Pg8S!)P*UUbPcjf3iEuVF*A^PdckzxbQ&bNhESM@jpi8ZOOS39*JRjC zu~`N6k*iT%>@V<<-Wm*J?8+^j&L!g4hB#vd^dRf*Tt*p)>C N22&(F;QKQz+yR+wg!z7^+8%Z23`;?D9EOwBFL8bY8^ zx*hp83ykZf->hQ!S+jEtOUS#?a$L6NuBj1i!1)V`b4zlIXXR#P=jW3O^PyLw50Yk8 zYo)Gw)xXztrgtr+RFFHHSv#Y*`gmzJb-CFy&343OT=bT76=8fP#V9V!=i|iSNz1Xy z>}D%zfL&9w3iF`b`MTO 1m_QX36M+=Y&o%I%(>Ip#)Q=L-xgF5ONAJ z%yc$4>&D1gxy5<;g|jvFXf-5F;?UV)w1R1S3N)|{y7YmZHKlOseFk|gtUa4(TXVWC zV_uArkc}ayH{VvCnc2n7imlsIO%UiC#)3XLvWon^R^tyC!;qMUe{;85cepj%d4nbk zu9KQalK{;h**;$}Vnhf$41WPR63rbl8CtU~Fq$Q8X{p{sGEL@LS=YBpF*r{yf+6hO z;_T@qxiqOVKgFmyYkFQ*c7f(+`A9GIzVY^&F~;~b8qh1_Q(&_f#>Q1^!M2 PKNwZUIN>Goda{v$xi|8AB3UW}~Be$22mV&8)`otgIs6G@8Y;X5`+NmBa11 zj+*I*_GHogXlaS^7ck^ZShB(#%go%FGYe B<2kNR_p?lTIo%4TOz_gT;!O_ wEX &d5MRjz*UvphNW^SW(8NKZPTOnKifW~;s4D6xl=Va?1c>*i24i>+L zdz``XmVgGYWpJED)?j~+=~y|%TAtA0;tL3lu{;Nuel`0XEJUT2L>A+Z-6s4kCVZ_4 z?>6Bb2OJE-vWuN_F#wOr2OKO)_{l8BANsnL@N~YU|MdL?!e{G9g!+C0;is7J`Z|>G z`uP+k>-#N)r}HoUr>`psPiI&9FLc1cqJ*EuV*Ii4fP+N{Kb6J!LtpO`p3ceipT0jv z_z^l1p}x;Ucsh&If6)UD7A3rXUPp-90}cw A&v|I9QbO&tx(F(AV9BpKZeH z`v8P5HsSSs0K%7;@cKHP@TDfazK=xsi6*?h9w$7V1L{A0--htHIufD2??HGvThxCJ zZT(JoI>Xd|q6vS8jzp-h_bLAz6MmX0|8x_+$b_e}O#P?t2U0zwbR -)xpzs-c#_rVD7GvO_@4hD6^(`v%oOn7WX89%!T zA8TO29}`~R 4enI` rHrv3EybKJ56}Y0iKKWf3OK}GvSAr@OBg4Wx^+#@Iy`bBols^3E#_v7fty8js7nO z{+9#)%Ypyp!2drua9p_Llo `MS@GAt<5=C9f;O7XYrHNX`;HL (2mj#c+aY38B_9crd}VbWm#;d=tU6WKg3FzMf!O zDyVB1d= YU*SL#}G`eznaP5 zQ?COimtS=-_$PwN)mKv)e3)Qz@zo>-A0U`qd)3b1uLvfWUbQfIC&A>(tM#X;{~r*X zL~t#GHxo>*yIRBGcL^q!U5zsMO@c2ccnyPJA(&irbtQwJBbZ!swT!_}5lk+*8es6F z1Yb#T5rdZ!OfI-OnZXMQCf8fdWbpk2lgq6-7+g#+x!P(fgYO}jTx>Oo!BYq(*IKnR zcpSmK3AQl!c7m@Xxc)aLe}c({R%;nNm|$|9)fxuhL@>F`YLvm(6HKnMx`x455lk+! zx{|?{5lpVJTE^fW1d~gw1{mCxU~+}kA_jLRm|S3WGJ|6XCf8TZWbmogfXU@m9Sr`7 zU~+ZUR0ba=m|R>niNOa5Cf8QAGx#flX=_%sFnA}y >#+7!J7#tmsYJ| z@Vf+)E2~Bs{3gNV!m4W+{0hP3x~eM~{2ak YN&VtW1k#YidQtf2#oGb+kCAB=rG4Wks>eoJEM;VWN2N81i*J68@`juIy+!%r zzp?mU-vwpJD$3&%mA=qLQMx$H6Z}e5{B%UE<13YMXtwS{p=St9S}asw+7XYmW0EKx z5QE> K&lrjejFrLG{%b7DsjgdUxHCXN3Dj|<%! &MCmJ0cwuu4 w2m=%8>5?bMxzfL#f3+x&sS$H3y(x+~J(>wiCR%GY zStyjMm4T<4nvlyEAFQ<2?Sir-j(1LQP6Q{Y&%)dBqh7OEf{HayiuWL )9E<8Ma*u{2f3uhC*v@mC-=r7Hf5SFy=h6@N7ket>o*iPiD{L}KAv4oh|X2_(?3 zI{s|Ls1hU>BU;3gml(;1QG{nqHgGp-ttrDm4azO0Jm6Gy{3^uA=_n6;=K$m4sp0nt zp`1Fwnizx(uiWUcC_RW5ejt^aM#ig`krIp&2cJbuxd~PW9DL8f679-VFb~*`2KFt& ze#2`RfyQ_ZPQ(-&&wIIny@0SgIrduvyN9sPaBRAPy^gR|96Q^<&LnIqm+i#{4d)UK zhtU;KcBPT`V#@nCb?|*oUXf8Cj|xb<@~%b!8)B%TVwK*Dw-Hkw<%M$%?0CX@8(3>w z4eWb}p>SUVaTR6j&fECWXyZHH#>YmsO3Jp0)BblO+g}k=6ttn_@a7*hk`_|Z>R(v% z9gJ#zdkNT=c;0fvxfot2?7bZOfq{(@b_B2C8l&FJsNU|pTa%1>M-zF2IJQ;Z3s8gd z9jAPkQQ$)=py`8ZG`WwOT+RuRjJ)$H@AaIJmksQ*h#4afhAdT@`-3R?YsrL_PsZqg zJ*$`FJ0n{->hC7Ie~{u&qkb3@ z 5-5mD~m$452A_oYDkQk1HcmmovU4uBfFSE}(!V_2QTP+lwPywiCHx4a8} z=)ZzBYZs-kEr+HjkQH7t1!ls%(tago%lNLPcneS{h$?RCeDC-UfQ!#QF4)heLqMVT zw%Nj_^FikO0d!ZffX8{l(e1)@6~$dC)4tg>p^dFLE?g6>vlHfHhMB-HlKUCi{fy*Z zF1we%i%P&HLEH=*F1gEEqaxkHl%t&db`j Zeheqqx!22sPQS$7lzQF2GsUS!}S22CG>M6I_F zUzplEE+n|ORl7sfyK46aYGA?K4Ft`fu0_yka)5cKzhd=ofLtLrRPvx!i`~5qiZbiE z<}x=LW&Y8sOsKi#AeyXus12Gvs&)rBO{~)k=9V*>a )am^ zJ**(|lM~GQa9*4Fi4z|M-R0K0N6|0$N5_Q;?rk&xjtf_1Jab%_1T{|x&jClP!=-o< zt4QO+J^;au^t1>M(Hjlb?zKE|?Ev?3v<%NuYxx;STz0SJF3u7$c-V>tqNq2nOyfay znAX+2=WD2z1#{OBBs@$LtOlUY+l@L!)Y%q3m9@2|6<5$Y`769z+l~u&MW{y@))^!} z;jzuKySWG#E+_FS_gds;{YP#lZQ-xcOKU<=-(*zEdpgRX>doV )UXbF_&8;B^-m z2;vE%@$*W!kr8DKcJPPsCg@&cRgYu+OARr8`#J@|Wc5klz&NxD!^Rlt-oj*(&tyVR z%e>5L_iJ1puW@oF8dP>+ =|3QsY{>=UmFmns(c-SsHyI4twq+*G}aJ3 zE%WZJcCX?Mt>O*k7!5s-kte% ER5O8O8DRn+yqB542m-InvU=qRWz$R{EsT`&e K~GGrOz;QC>%hFv66;76QMD(kW5;giK^cJ)2UX@K?ECXrWDH2HDhf zKZqd!HBcYkL4%feX@6=Hd`>=lU3nBWSBGoSKpF42f@ot4A}A46P(o`WwxPJ}et}D< z2$gc9U_HjrCQ--(%V5vjrlOj<^EYA~{Sd1~{UhY7Z0RNK0R^svkg0VTGAYkY(7B zrY7g6<)GL3zGbb$;+5*X(kZWW%!{?Hw7GeH*hC$bU!*y_&It*vLWC`Z)V=UU(J~=` zFQ*J0wFq0|sbBI8ltPq#4g)Sma(A=Ui*u4QYhtC)6RUn&zg5NOZo?M~s^YVFa2F3o z@gRc-!+7B2!2llg KaulA9VTVth{vZ~M+UlPCE)pQ(G8(J$Y^+Ldm?ro%b# z&gOJ(6eIWB#NeSuG3AtXhnVt3g&KQYe36kB&V^D?xwNRWVFB-OXJ_CY-s6s*;C=lq zzLB)dtdwt&ZjycH{D!uEV_Tzvo3~bhZ5}yLhHeSrY&L3L$u?(0fY)SmRs~p1VgzW9 z
7gWJROpywNU!Q{Z7YrpXr1)eER{Pi&wDfm#A;TWl~`MmYj! znuO3{(qQQ)k5uE4wmX9dikyK{sX~b6zS-9xo+N}9q5`i>PPGMPGX1?g5l2TcSlcMd zcCZZOC5*2uLtcmf9^@mfrF_2KQhl&i7}!Nv97ZEzr2D-y(cAS=F(+;z+{9a&YKeay z*^c^bqz31r4ts{++U>P| =>ZSUd=|xYPF5J;(G0c{6?W>Qz8;Sa_Q% zim6-2^~xi>&*2v}IETQvx+jF50Z?dhvUcO@7HP0oil*&M+m6h9zeiY~$n{}g@X&nm zvqQm(j$)@%p}nOCgC_?Gi@jiI@LPuv8iEM+fbeWWE@V+}Ks2xH->;8thnInKYe1G- zL2^ca`Dy^WWD9<?SNeQ%B0QUCePsut}mo6li~>)s20oV09
FCPy@bW-P_DqqL?J}qs1RwTFsA_z<{gTk)ryyH7Q! M-MhCnxSfueBB|;ChnQl(t=1f1VhuvWikouokkfWwNgh z?PRi_-8Fc?;X7NbCXXF5uN6C0JA+CQNJ|hFKZ{y3a-w1+e(z>nJP_8$Sw_m =daJ$Ax*W&+R~;7MBa>k>X3< z&+VLX`>^e2^p6CSwjH`;*pu@ywp!?vr&9#BwU%2E`EY6+nQh%~Dga;b&DX#6$m zUH=F5skd-az&9q3PUw!Ciyfnx4Op*iQxjRWX8ou=#4?^CrHkBl5ScS_8ki`C%X5CV z2Ts9wR3MKSIlFoqS@WG@PPa!y>j$?q9pL&GIC)G6Z^Sqg*3YJK86!r#$u_TaR9Ol~ z22~~7nDDCAr?7+4yyuM}l*xzC1k}%m(DL`&972LIgoJQ4x {P|%L)-jiZKQiTMccCpND7`w5FRc&h?a92 zU=BXQW(BN4YKH9n#bgcO#`H5;gUQH`Ze&<1&=a*38%G+EZMCn_#~QlQXeg)6h6JM_ zA-osbPCPsQz0NcB9JItVWgl=%Qy@8}D$sdh{V?mmI3e^U?6$CYGoAyjLg;l0V}x)m zLJYo6#OP{>*pq$|G&_YA6>dy1>RJ=(S&sU<3H3LQddP%&oTDBvp_XyfG@vA^-SgRg zb$m0Rs<$=+CsikvOrw124HVS~dWKhWIiW6PsfmbsaT4*Qc!K!skt)=9N=;#@r?A_I z)U=)Ai4!b!hkA%m!W*Ab)q4^5bYeMa{~HFJuv-yj^C#oxBj0guf|G0z1x{WrEM5R) zP`w~ lPR`1fSM3K%pBvC(aD)Y%7o;}!2ES3Phn1y zC@+oz6jEMG4zO@-GA}SSxyW;Am5{O_c_qV#lF6qMQXWi>vheZb8Wuj2T#FFZz7*x* z8-xe^b}d4$ m1mSEFfa>cY(i=JPrQF%b1KkoF;K2 zQt0OpC0BByc ;Kc-Bsb; z`a#aX#^cCl@!@!vFv=j0v^WX`Ogbr=ZqJ=rScsy%(P%Gcb6`W9jY(-1O?Rnc_=xYX zdW)922h09@{mjEo9I6sRBB-o;!|0!NH^W{}*eBU|44#7df4Y{~a&}EQh=s1$u`@k- zORBKGuhrMnld~l-&}tJF&q5|=Rj4E5g-7aEtsaF3h9wkC^f; =fOEKtxWb{g@Hp+Y>0pFywjZq z>i|vcpAFxQn+BZte~4{@US9dRC>5*tVURcWx#ft0kD~n6HpIN?2TME{C>Bp7(<)U2 z_eTRK9lpx~Cj-8Tfs;|6W8ihd;#)yUYrPHD4ic?!po3Hkma`e@O7W||+bD5ZP-pF+ z;Qm2@lL@nTSA}9}Fj(q7DRW8{?zEjqOT#jF{~%hw#E8MoSoTx}55k}x#3I1c=_hw6 zTKb*m#8;k*1F=r3<8iGHWb9U1w@8#8i=skyHJ~a;qdi9VFR-t%8UA0heTI{u+2 ToF6^<1^4xNd1eeVX9P68U8M1;y4vd#5PR{i{tDPDCZHC7^ z0R#UNw8<$mbi4_@7wC*Iwg84 W@HKp)5xlqOcoM~CL{7dk&sYYgh()e3WbCK1psB@wUDrc0)UUL zWMCNu0H0pNz~vN(vK*yATEc@MQKqJVVo_#sP>3Q)Lc-+;rh&>Cc0`JRC`m%36jVNt ziipD@Bn)vNB7({hnTTXg77|8HMr16g9AAXU$^a@C5}v03;3`h#s~VMSR (BCu }7kH4s{hP;a#O0&q;VX?|*7pJAkCpFLO` z7_q}KFjyhYPieoLwMKQL1?rP&{QdX&7Cbp 0At^CVmG%C*5Q%3t)v6cY7BBxE%j!dkmmJc zyL@ZE{x&N94xT 8Xp5ow)nw^iLg$5zbow!|?`vB%OiwsB}Mx75Fptx4C{zU)5)^ zPT+JI_uc+L|F!V~`t iVKA7AnKr}%5>wqLRAtd=InCD%| z0`}4C)g|am8~&7PYr~&fHTFODr*3Q8pPEVjlt}(m>=$kOQ^Fg;S|Zf&B_KlbtDgV& z{VKyg{wMwwme`N&M#Id(lFbg5dOt+bmXGyE`tG551?5`%S0`!D 9P>`74Jj w{*^)BU5r>diFoxBMZ0 z*myAcS9ktL<+*>9gfhB+WKn5T_}}%9c=_5E{?*Pu-M^xx*?-f&T8Yj$?-V0Xlwq8| za}FN3wZU%NdZgd5VTC Gz`aYAu?>4xH&e0}eNY^}j3P>GUNPIlz~Yhu9KzGyET% zYac+GS9*_3BUOavK~Mv>RQ3I=RNnqiruI=8&KpGOJ%zQuy()MN5!$W7(c%3 FHAus&Fi z3I}5UD+ah=ZAa|FhpHi3VUZPxjd0&B17n47Ux>hKJra2DCm=8zyhU^fp>^nqoBJ9e zN Q{r_7I(-bW{v7J~x8i_&EPL0Bcbt z=v@SYl>NBcm=;y9Bi RTZSZS;5>)tH)a5iHKmZ5PA!4pGVrJjzUQ5&;Fi>Ge+$Rh~3BGlHjr-R#NdM zlneJp4s{aCrnQT$Tsj3#^h$@kbSQzXfMn%?y+rwFVC62!P=trQ;E#+{^r42=r^%Y1 zSgL0c9Y+7Ff^;ZAL>sx*q0{R3co2Q%7$^|PmR>E62OM-Y2{NCDx`PdpyoQ2^*bAA&6r3oQ*pRlIrHybPA=OB*BO$;OL?rY#5)#EoQIRN( z$OP75V3Rh{e{BZzSfEAJohQBZIBTqE8nBar%``IiLKUUJP6Ku<$5sWOKyD0{5k;bW zcI|Mgt0YyFWJX*>oGivOo0?LCx~qaKd1khsoEAl?QZRvRj2(ZPCa6LS{n*$AN$Oy@ zvwR%ja-8or(uZ;ksg`F(0U#_JZFs0%jr@3NAml)eYF!m6ltnoUHw-We=@N_5gq5TE z4kn~Psnz0t8G|53&4cGfC&+VvMt Gn#Dj+QB0w^tdTof+Z#(b9Fp!UNDbgLCYbabT6ujSM& zoVYfNo-Q9(8uk%t_qEOfR?9}{;wD_#!`0|GJk?{YF0g41ZnOq}0Ee%vd!yN&>+e6c zDJZWz+wPU;<4D*L*m)XVZOiSP26%kZX7a%LKt{pFcp*gp<3X?yW|^5T2quHBE0b(C z^#FlPK+dKwTFaB wg9 zccNi2H(F5c8@Y1R>Gr}W>2&*gDEU;%DqGn7b1IK}Av8n{nAPXj>WjpCP>`-*{l40+ zqTJ;KU5QGh%u+&SUYRI$J7IpOTC1N1l2N~Q4+ZaK4+_>=B@D>LEz_m9Tf*| {`lk%IfQwwmonv#*bcjx1v>VWfFOexI*96zl(;)DwM;WN_bp| z =E^5Jl^6ae&D5c!#^Y#<{mc@Xdc*D zi-}!~`0aER;j~w3!qjlnUukmoMqZ3Uk4K4-6*ZXJZ_mWspkQb~m2Jw6SUBbhg<&d< zFjCLMW%L0Hz$@s(76@OY4_+W#or+LM2~$M?*Ex8&F_WPqwHypj=3%6Wp_kROV1 oz*AS0G4zY{?GS2WB?DI{ad7n-2Ckzok5Efd25uyW1?^|DATpT+%ZgaABEW(d z%UG~_B@5QAL7+Yc#+H%UBkAI%K^f^?FAq0)UYJL)ST}jW#tyi*4Vc-x#fW&NgEVdZ zu!qK?dsW&_+;7f=N$Tjkkxf`1ZbX7UVLiUJ29!30|B7}UbZaGk6=M3NwUV;J&PmIr z0jpI!1h*i_euu}Aos%c-_R6`nUU{bCmHqWzd2Zu&rti$HtJ`PHN8kz EC&K?UBrAr9ecs*tjg$f6=7VX@-yAjBgMj$4+=!xfVeg1bp5glozuRI3%T z@bJYVgjmp_?CJnVtt&(5k=%*MUC&V)?K}*xK`5j|Qc)dJEeME!B!*q);8?qcUCFR3 zG8y(oB3npVUBrTQ0Tyg5V?lT&0wO-jYhMFUsmE+c6IFO4AaDTsuXsNq4y+?a j<}0BHptR z!Iv1?5S1v;gakgit7$(Qulo4(NVp+OW78X1T?@L&W&WJpWyppNNM^EVK>h 4}DoZNCT4&jARDj&;96V`bCPEsyEXP4= zVlu--YI%l85d)Xib8uOJfh#P~Nour=fiK!Q_~J?iu1@0M>NN~pm&(C)Q3h^w0Hndn zg2-eREGuHc#DI{JTPCE;Tq&gZ*C@4Ie!lbC;_3EE3>3Oweg6mOxEz^=8c3oDaB&Fl zTS=cN`>-}KggQl(Bh-Cy!AX+gtPC;ohy}SfF}ap62=JeH;y~a)z~7xD{G+%)WvN<` z9t^3coFRkEQ)V9|q&hs}jknz@;lWhmztje-m(2FsP=*?CikWDVH&=*5Efr!JrX`XV zWq{{}XqyV5Nt~-p3w_Xpj)JXpL6 q z;s3b?D8HdwYBFg*-_JAa1OG09^lP)|gY)ec|Aor==v>=lf~Id$Bi*8Gpbs-)lz1cS zNU4;G^~AjW Z(rI()g`rYhZ(*Bv5{~qZKyTZxFC3#H5F!Go* zGYpr>u+VXMH?wX=UYRr4gf-VAjO)xn_z<6Qf;A{-4gy)Hj=r0jgYeEeB+ydm<%qr% zdVDL@+z@^V?Ql1t95LNZSV9Gun@|d@<|bUE(2B1*;`j|;RhSizRkc5XFU7Rg$_zB= ze4jRdG_TPmHJV iraBP)bOXn+vi;&=4{6fRAk`C$inZf zc8L*X5BQ1&IqkrvSNrR*esJFD%{l43V_3vD$V&P<#wBfq1^bLn8t`%{ZFAz5xjVgT zj#CYwstoBPxAe=ck-op;J=bKuN|tY6&VN%)IC@_ep*?a3k8~dDyw>WG;*wqIzswt! zk#icazPTd>^u?@LZ=_4CGyTZiHQvb7SZuUn*VQAZ8C7cadGQ)fA}U>4_mD3CR$HZI zjAk;qAQ(*PxXS9kh+b(9et_E`!avWaUFt11V-pB| oPpyGzH~jfkF=&ysA4Bb*>wg>4 zCEM2rjiB1PmrR>Km`^;?F>GFo(ie_EQ>G8gAnje$%(sv|(%pXp>6+ ~r_2KVD7LAzIQed4u#Kqn+g9?8!1K#UA-`SL5Fv0jEkQWj%832#$ 3v03fZcEb{kSOH;(b)yGhi>IW=LP*HQo6hcH-mhw9}1OQom)_ zThKJo!OPM4Z~OUi+#@VbpaH?&VeN>Rr<$Gnpk7p}(jAwU{B+)_pP7vjBlp-xd88v4 z_Vm3-8Zlg>BXg27nOfr`0q;<+2%U {XLdj#}2%VoS zW=M(`3rV`DNte!hIi+1>htiJFkwJgl%}(1(FJ>f3ic11+PI97C+Ul0R)cEI=ek^BA zVt)yr1@k5Ma;KberdPRyVf7g4Vx(I&8&qrrxTItF7N_(KYt1D!xYAGiZlRPUm$aX> zEHbcOtCx0& %`!-o)G0{ekSsr=|_cy z^py!0x Q1y*FrQVqyMK7Z+soukSiTwf>c$VmrDw=9wBV1@H(KpnEYvj^b zF6jjN=#6yK>Jw$U=5FJilYOB~SL9Z!OY(*?F=VQ(9yzYsBe{OT#r&QA&saaJoasLb z3w=y`w%8yxkMs>X=M4Vl@LfziPQ}hQiGp^yaj#rL1yQvxG>VRU9HPvGz15q3#CI7? zF{zNWlbPzH<3(Jn*IprZW~sYhLm8gKv^{06<#b)SK7M2j%V-?#)BPqc?g(qqfse~k zqI|J94(tx^Writk2@KPxtH}u5T#ogt^4TkhBk>#{4goP oh;G?u5B_xzl0Pv|O1D8_(@VOcW zuA~6qE42( lwI)0 {T9ozYCne^>mtdT8hVE(f5zpS-!|N zit$|tKWyL@(WE?veZ~gRlVLiiKMh8T)fk{?6&~UVB?hN0P?{M?6{QJy)hfJK2*ty3 zply!t;c-%?2>cUyR2LYw@FhsXe!r%N!3S)D5Sj$3(P&Ri+v}9?u;JqdJw1`3c6_~{ ztDdhCyI@g!`e(j)Z+frddiE;D`BY45%0L6xpaHSsTU?v=CHMDQk9%dTTk*k45W%QY z#)A@h2xRVi5N&oALhr-C(#rlP+QPsKRH-hx#KvAjJWa$$hS<}#*Cp!qCRjo3C%V#) z385sm-<4?-W9^>wT_xW+rB8t`xphP&ZoYRwex= <8zF~t>552#5TKV-KTs)gADwzQI$@5w>}bwb?Y>ofK5Y} ziePtfHVILod(F~PuS8cget{?I53nIR{fu8r!7tWT=FQ^kq4*#YNQv{xQxom%d!+IM z_&!Ay4j%1JsZl!R+@ZKqHcOc{7(-uAnqRPmPy3M-cJw9=O6clg7ZRNH@Z!FAMjSBV zLu_ui&7R1e$Wa@Iw}alL5eW|}(ViA{V@tbh-8`DFgPZLz#6l n zyjFal^<{cfb96G^ph8jd;mEXu-!=GNW}K5c0ur(APPgAG`T8firD3*=bhY?$Xe^Ah zvK!j~@+fE{K05&QO53YGj6nAr_9^8^=jtkiGk6Bd$NUO6_ >y6H$f~5%1M^#%CQ+U2`^1HI65-7)#Z2W0x31 z29@Ju7s^s<1_(F{aJVz=@_ja^bP`LE9jYtk6R8L?+~zaq>7Dv$hn0~*S >NmYJ^Sx|og zLtT;EV&DO&bVCH@Nu7&au1E=RAJ#nwv&43F>z3=|i64zdvhYgqKDhje%CFBu^6N9; zl)GZ_84=t)+5=7m=61T@cW&BFjMYRsG{PJf0vf{*><^SSSxU9{>6x#tp^gVm;w}rF zSDX2(=NBUrJL9~?D36;ookg6E+XAO<_g`K&l h_=!>tn|I;I$EXXSeVTm<^tZiB z`y4{}QXuJEUkIO%80d;oJ0Q|x`fZ+XaDxm}PUK?meDFYHT@;&ASP!KTie45ii>I`s z$|}NR63N6~f$WCq7Q(AxOyr3+_#a7PWDG1yT>|ef*JgWqrLQ9yl6tAqiCqb3kH>m6 zLoUQ!nxo2C)aMM&?P9$k8mx^8M&q67ZkrIi6c&i)tQ3TiQB6=?+MtD1!HjfO;sCd; z&Wbs zv>8=n$Q+1c9IQYiuB+^Ds1Hhho3q-je?j{3xitB^6YIUgKd)U3z>kl19aYw`H>!`a z@1uI9U$~S)GL-qvniDctQ%{W%PTRxN(lXv(%^WBv7J5XAC-KcUM~b! z04G&r_MDH`w|7~*1E$!8@Di4BToUv){U;PjC;n$LMo5aSrUGZ?)8&WB4n0cT}oI z*Y3jZb=-XP8-~uc6|UA;u<$;cD3vBjHR)gYzeG1l*M6Wkm7(xhxHM0wrt>l6@k&RO zt;oi{|Be%tUSL3mJUdabU~^3E!1_!=7KFurAvM*6{5q(n_eR;hux9)F1>UTUTIm&6 zHl1NUg1nCp77D$+?Sq8`Z<^gXV2sWGrS^T9^lBma87Ywzjf`w^rZi$|hT`0y+Y{+i zXQVHT&p ogyTpUtK6grmOWKY}SqSBW zN;bcL$~>JauxsFaPh{X3R4^YE%)`9EDrijK=Ksnq-D-2ky76few=H-Ix34Y-X&%{) z{lik`hB0={x!SHg4x5sZen?pODsqs<1c6X@z{v7(n_gW~OnthuxlhTAjxPpBuv4V* zhWIj-@nvd?9p6SQsl_S@9dM;oOQ#t9YcZ@?xgEsPU=?PL{c%(*KMm9u)Th_@;it{B zxvg$nT`4BU444n8!kJQm`OzJ@$m+X{>E&^!P 9+C*Apbxris*iMrwWvO6~Oj%Vph0vUR6qz$6USeXd*OIjMH`Up0Uj z>Prh^u$=z@oWDU6#z?r4`1`^sBoyOj$2_bO?@uC H98NH8sE-n0;w`l_~;vVP-6YfB~;3 zcq?ES3dk3idwhLqJAj =GuE0aQd~M{Q-a zzltlm53yT @E~S}Yv+fv}>L2cr{ot&M2_370tv2N^KfqhU zSKOUmxsNAjXq+c9FHTIUR&K$J>WSQed(w>qn|v1rYl{XZ`8S}nt&U#Nb>Ti{rvGBn z@3aQml5-e00O1S-AW=)DI`CPHVZ)xaSWotM$v3c-R9~{#(k@K;_}B?u^1{NAt?J 2+u?4A)lW7 zYivfsd8h)4EuElKu!nH`arvvswPXTZxB3U>>8c^#dBUoj2;04jt H561^WcpVCfkSB}ed4z(>JW(k4AWz7zz{htjbbkg$_1MTr{@HPE+0Q>i z^$7J2H{UU;zV$>V#<{Vll2R$Ae 6Il|R8PeI{th8{2hiA7u<`FNa6Q5I<%s3P`x}X1 zGuzV|IOG3@?~rLE=^6kDsP{Gd2_!{K#F`Ytv~ uXlqmoS$FctshtUf F4fkdTxIjT2`HY+R5C$NwBoD!Y1(MObo zw}&N>YDm?vXET_s@a4~%0-HF>BNy0l5;a)N*^cuh*da2Zb#{#}5Y9Z5Jc^HJ#^Uad z1GYlMAtwx|2L=>NB%8ATATy%=&vl7c!Z>!<%BLNn4{SPMg$itS%hek|J<~%*AAQ}4 z9bwsZ`h@ig2%N$R%$ao;2+Z)xcf(1&1KN-C)q`-6iqIgbFq$7_Bfs;YGLcYn7aVlq zMrW(@HsX*WN05dsGY59qzN>o$d_v{6y1%Q>KiNuuIDPa!52gftLLr%om?mh7xDazD zmRNj>z%~tpqnThjq?|Pyl+W;BiwbhxuWZ6+(8Qb}abn~FR`?rCr9?cRU&ib5xE+Ot z@ MMAdMi1qu`AR>h zWnbaqM~%9iXx8yyLV(e#)w&%6P*_Aq5j69pAoR+^?DEx^)?oX>bU|OGPxkWmy^#@k zW2qv8e8q>5gtu$hYaCl}-b-(A48+X81-o5BXd%jIO_2Q*7M( BR 35`Bf z;oLxTk@^AFKI+B5tBLeDm*s#yvhTx@HN#~tvKz-S8he@b@e!_%_#hIzH6c{Y^zk0B zm6U~UYvY@=OdpSsK0Z%v-2tqwkE5WEn={gP38ANv cuH8B#=mMWitCNiX5 4>tmz@M~bwg4YEnLKzIC z6Zgw#RJo<&zQ5_tj;};mbOmU97j+^BId#1OvJ*`)TqA_;1)ivbO- 9D=n(e2<%&G0d$8NgI+&fMkRg(Ow2-|UZ_^nQ*1|a28Onw zrq=x=e+ewZ3t#utvd*%u5>q#mmpKMV>L_!j1T_KGa`_s}GV~Y1y|S$;y0R*+fl_Z* z3#l)RF8DkCp&~!jR`;0o_*c^7;>R@lp<_1nuTWu4&ryq$-GoyYl3ou-KGjVR2OcJy zOY;pK19p%*;tarAsVO-0geE@t9=9So4`)}jcL-l?Xi{TGyc`0aTa-+iCiu14cr08* zj7aAD(tn9X-a*Ql@#;0mV``4ApIWttMrcg2c5nqPUhNKLs2)lSR0>&xaH4pdUw>z` z`A9=MZI&aC?$1#FSl6_3R2sp*zMo1})9&!iWyI*hct5o%?PG0-(pYRaZG~jTYKKOJ zL!-i?jMoV`s@Pi+a2TCV9FJa4RBu2gE hf$d_?T&hgvjA^_kYBSUKU+6-fi wPg6vF?)XSYQx)kG`) z7Xy5UlY36?7&v>K19M{s;E0n|=1b0`|AB-~eI}Fo!p|>4rHm}Rq!&sK0EojMed2Sn za*)ne*{jh$Y}c3Ke~82X5(npO9$v1a5kHpNNo# -g<=TP#>D{DRZ;*Ac~k81yy;*eN>zNnrtw!RM6)XG4Y6UxU;qwbU&n zH+f_iI_AUKzI?t1n;~z|CgNC>z}e6w7fu32oB(2bzK3QfL>Y$^McA3crds+Q9A4t~ z1vW<%+F8dpTt&GQ7q4PG=@t0CKN$eJK_!ImK-7bqLYO?l!znIR)P+%VBDN(iWO{>* z<3_I> oDTgP5p<^|+woY^cI% z4Sgydxw=p;A#@%Xf%_3xQqCAz&zXU%9EmJ@_!neDEXLnc?T@@{{ZF^Eej)oty7w*A zg;pTglfl}$!N1Q?R(c2W8|5R^N-UoMtDAO2Js%dEUcdgSBQ~D#4e8<7{D&IQ1dIzh zp9BvgZ630UISF(V$$A*O2*uSR&VRj;z7-x^u3{)5*cTO`ls{Fy92+&wLwI=394q#e zu(xVGDyIJ`ER3Oy(ib9j@NvDCy4x*P+;P|&iQ9#~S#UGY>dCo<=Ps$h`9$64+)szU zh@NAve-T~8@@r0VQr?MbS}Y$yIZ+m&&~+D~x-?XW+b=cP@O0a7g-8f~M{JdLi0Pjc z?^Em0Weg$hTH6M)k!++0p&dx!6?-rsAb0p9w8V1;55|!U?DSD&oCr;``A5@&&l}0G z1x_~khOldFaIJi3XI4Md95@NrsuJT-j6BFpg;)AO*|8f<;l-LVMlRb-8e&(MVQGx@ z7HI#>n==M0p)qk(FTQ;_JTkB=9bVg%YUX+(Mjsbwtdof->6CPmh`=VR5Tei8N?!yI z7U8vP&~YbP78a4M0Srp+#yO6*=7QpR (tf z8Wyh?9U@OA+m}kOw~C}3{b}pUR+pst53yQ@Xkc7{7QK;~){OLDO0c(pydxuVz1eBA zXNN*_ZxY?p!WMSa?v=J?MDE7b$pcFHm&6!!4~f_sBj@ZzhH{~8>?1wxk$yy##jCv} z7WJW1x|kq1^)@EXZ`4N-dSh{tK!gk=WTe=t(l?dd5M7e9;>cN8@d)AWq&>ldF&RXO z5TY5?Bj3pGu+$C6!}nijV+CJr^H}j=3Gj&4%xSnbbx64#n}B$ss>%Pg2iBL(xAeX7 zvr!&g!Pd^r!}>w8c%vK=Wp6|qj4lNRTm}dG69 z7J}VLY003Bh+NcH+))RW-i=kZ8|pC^qqJH)v5(#R!(9|I?az}t3q_7#L5DVIWp>&b zINjvS#q~Jmm;3m>!89fqQ7*!ChD`yQ4kj!8z96UZsIIPQ4ctklWA {1vm`!W(~Ok__E^-p(7Ft1zpx(4M)i5| zq8P~)mq~CtktUGUjby#`5y(cKHttmV|8v<_i>XL272;?j>A=lDr2G?`b@V+DATgyt z@J`~MOFCR};H)c}U}`$yO;Y0i0#JZ24lTL`>}ClJ4a;+cyeZoFuUdp=G^=nq=~A_W zZ9h}mD@eoFN6AFmbUc`iiZh_#iL0 Ve@IgK=>jcZ7uSF3=dPjbnWI8r0!U^b2qWI~4Wz$a9`Rqm3Pb z`U_TLP{#LnA`o2l;D(oM)nR4zE?O!yDeJ<-Qc_dN&8I03E`tK%b5(GgbqSA=fuh-q zbUKOsM-G9LnRqW6M-S>Ni>VUqmykh7Qr7}ULhDa5$9O(P_bXDpG?1C}S_tks%1r(` zT_z@eC~y8q-KLEqK&k*m!X4%n=!m&*Kpn cMa|BCj^e>OYYD6na v7txeM(;scv(CLZ@TSGn|jcbhLJ^zAPuArTy5Hiqr zkvpQ+7~f1`(HlU#+Xatu^7Vkl^t=!;%)-Hw7y9oKb7E-lPsYUT#l&o_VLnPXj1ndz z+WZxzOn7$|^ +6>|&C_;z~hMJ9R%EAS- (i$G-#lO2Yt0}4EQd>^u-&d5*`k?8N5!)NT8Cd?t z%)#$JS@pTl ;$ld576`Cvu8w zihjI4=BBEjibsz;e}B!e^7S`9JZa&TkBBjk*FMqjfmQduf4TI|k vijQZUHX^T8`tf)=ir`Rb61?dWJS-SYnF7Z+x+B-?lTW&jV`$@eMR<` zp9=o|P+7l&Pc~gN{OJpxef_BqUp#f!(DCzb>wMzKYcmdCdszMWhEty(96jmh^KM#n zY{k$HYo7?k{_Wv^d^mXM)jL01x$yc0-`<~g;^XJ<{~_tb*z3M7A2Gr|_|>8JZ%MfC zhH;e(|21{M=^HDO(r?+au;k)H^R4Ai#Z4@D=*QRYT(Rq%aQEzwQl31N9RK}$Gp|_r z#?d|JY}tF=Tkrim=CVNTm(zZkbWfkNcD(yd)i1B#xU~D}y$=>VUHoLP316+8zy9FF z)W%nbzP@6}H~qg~kbFU}mBW_qzx};$J{&i*?(VC*9vf&+{CREHuHW9hwcPsL(>0&I zv?Xqq{CKBxGTcJxd+UGBDnIMUjvWsVE4?E}dS~<4K5u+Ed~)RY4~H+#DBdIX8+BrB zW&ce*dR{a8*whh~pS}9hs>(^v*1dCC T%?rPj4AluyxVy zc?*{H`uf?kUmp8R?L7}~aIJi;@ZHagvKE~2>^gRJUat#7KRoi>S7R+Bt!MfAS LO zd*EG_OM^Aa-yik8AdP6a!{77kq1QYmFR$BDbu@bQ h;5KK3+TF zt_$D( B6rkOqpx>Sn4tGw|9O!I!Ec3p7nK~;PfHq9jN(w z;RVxHs24B=*B--eb&gKDBe%F@dSSs$Nojq0U*9_|>H5^``=<6uyCJF9?YUEv#B86I zaP5sLdfBA6`1r`mo|>ICZF-5X@b2R5nR;q-Xe9N{o;t;nWc+&f?rkI`%`Tqq^W_#K z{h#)}KR&9f+V?OCKO}TIMYL(d)oF_~R!BoZnj+dsNJ2tW$OTGKd7eyWCdrh^%yeb~ zp< 4Taz4rOB zGeJL}_qm_@{&?rZ$vX4hYp=cb+H0@9&OS4TLMGgmOeMnI(Y}1XCev4N=O)cl+zVUb z{Sg*^SlSO6pNWrVJW+} T^7brb-^JlGW&GcmphzNxw6EOB5vBndzIG zkM`!G;d$3xUAy3FvKvW>%xuQrAL3kraP~gj++V-@Q^jIGwysWsR)W&!3kLjWHSn{* zr%3r5ps(Da&Lj6Ldg8uf@d(cSIA`IUfwLSZ@zS{qe2q941KV O6#U^K1qFK2KQ}uFF1KEFQ$!hO>b4*sfx680U2l6^p;a zdFk$A@fw`Va6a`&vH0?%$P@9sQ5)yM&lQVN;BN+92>i1+C*ph(_3nMRSp0XK8$Mqw z7ID6~r&wHz^K!_z1-kuboTT$dA^!@r`y=SL{V^=HIDdxoPdL|nrC9vPSBu5(;4I=S z;G5x>e6d*kpEzGc*?WOK0(vuemw&lf{07cz_oAOTH$DzO1^piAS3mNfbCS+iqWzyk zuTOrhSls(JoLdZ@#wS(1nV`FH($u8abJ6j@4~oU=|AF}kdKM>rKDya|cA&fx=MfY|zI*Ye6d~S=J)ZEuhzf zo(63M?Z-VyE9g r5V$gpCT?cvq zbQkEkPaw{LZXPZcM?vRoLp!k7k?okDpee+U!$fx#i*>NqLHPO}(3$Yt5bQPlb&MJ4 zv~NIf(1QoiKiKQwH(?LZbD(EIr+uqfoCf=?16=@`0&M{u23-fb3p5M57jz5gLC^<4 zPl4_OJqP*>=(K~y;!E@yv>f9w?Vm8NpnDIY9_YdEL0`}#&lHPuFdj3XMe+~Y2D%4y z@pFjZpzA=VV4Q|QXM(mJM*Iey2LIa+x(>d04D{R)*c*Eb>z+qB=qb=GpyytI&x0;L z3cF%_QvZy(4Z7%DF}4Lp=`&~; =M1f~Niz`eVG0fwqIT{TlK?kAUt5o%0*C1G*UWC};}wH0UsBIr$A}CFn8GTF@CX zaVFfh(wfj8nou=u@{}D|w9&LR6KCkQVsSR{G)@i?R*Q2EFbq8(v+%bOXI%l~1V6EY zq2^%avI{FVP8qPSzw|v<&7XBSF%n-2=cB0mIsx^;&`@B>1(RC0mJOE=P7M4C4Fje& zcjC-_7=8un@a5g|{eVA?@@j8+%q>3({8K2u4Sw#_FY7BK4wC-{&Qq8ly`WBcpoaxe z`3&@b5#~wQTmC^;{sJlIL{9f(wOdZrCfwHE#ulAiwqstzD${nIgEF$k49LG89WI}7 zB;x4MzP)T)`PPZUlLjZ3T{VRTlFj#^z3Pu*-s75%N}ROswG-IGpjKlrT=td;Q-f3L zD~O-IOIL}w$72)>TVY`IwxAgwgU=B^bRG-@ZbXHKiogd!nkr@hrf*yRYJ;u^7GP^} z&ca3i$BV`LX@DAnp>2VNVCB}bhG2NOygpbxG_gKdJ2+`+@KAZ+3sZx&fa-%`uz ~OO_LxX=nm>OvTVNRg~4y5PkpI zBhSC^!}@8HLJ$=gp0su1w({*|+}1kC`bwYJ(_o;sHlsZB5aQx_+WM%p75OV|9fqu> z 6uw1FgZz;WBveP&qtgaN@Gyp+Ml7sq8HE+J{;z z$mjQ>Zm%QzP+)N4Q2B7#)&Tj*VU*3l+ViN$-A+Ebt*q7Gzee(tWx IX~IT;ode%A!f+6F0@zt#O^hh)EU<+}-DwaMe!^cj3~VMa8e2L@ z-U49N244%XSq8SwkVi2lEAp-&VJ*Sh4+N*M%)5avFzW9DR_np4QDq;nIlz8L^_ysZ z-Vm%DEL$GjQ66|9SP3iCL!#327 td0(9H?6km?B^OMte^V%c6&yCgS%;kF+^z219(dE8Q@jBn0-kl? z2|tB ks!;=~ZC$HePF5$N7D*^|7P0?7>{|$W#In B(*)>tc`TaPKImNFd9)fv@nhh9(9?$3)>NI^I0Bvs z@ #`_9)~$A#%1- z%o#4j;x|O=;vmJ;_ZyL{u_Dk2s3jP7g4+s;0i^#h XHPm@ou{*C@v&iXg0ShxG4vLzI 9CFR$}u@@pi50(*a9{|>(1P$!#& T5v z@*YFktRG{K&XL#R*o@>2d*#6&DPKB ATfuNmZ;> tMbS a*@wwJ3_zjt`pebo`~L`g8X0BK)~1pS7J&%jYvQRXH>L7yKEO@i3cS zDC68LbdAt1p&Nt_3B6C~qe7n&`mE3wg}y5EjL=EgWTWG)LT3wID70DV8lhc6HwYaP zdY{log+3+pS)nfqeO2fgp_8tW_Jz(Cx=?7d&^1E4gl-TzB=kO^j|zQC=(9p!6#A;r zGeRfLm-dCu7P?Sqv(Pm{yM%5KIwbTyp^plEO6apfUljVP&@)0OEs*ww&K9~*XtU5Y zLc4@+5IQ6jLrBNcB}*2CtCudn>79SeGx7R0ixy<(;hDL$a?PS#Upk#kcZa)UF|)4K zux3#-oz8S7( H7%;OlB@8?r(H6gERZU! zg?!*9<(lQowXb5n5G^EQb90GQCZ_sQ8#XZ(YJe= @r0zUr-YW`$u>r)7uLQz6fMQGL;U}g&{90Q z{ vl(^5RzzE$V3v$pT^(l0jFIDcr}E4O}MG>fV2 z2`JfB7U7~W|Fx{?pr!cV4m@B5Ej>1yg`e&%Cs (p8>eF!@PU1f;W6955fGrnX zkDtyrdIaCy9KjWyVUXfDK8%y(+$-a(`R@@t(h|WHp8ryZaO}ZJ{GSniov(aT@X_`N zt}Kh6kAS{_llb=-{I3Z @!KCLH~6R@qfk8XO7^tA5#4Mi~{vq1b@=tPYS-H zTk-RA2Jmkd{D8r~Q*bM-`1yGN_-X&1>^~y*F9$})Q^NmGhMeaGAIL |5)(X4E$e#m-6$!2)~XUI$x%*J(E5o5|e6R13In}+!~1R=kM@e_`l$X z1b;&Cn}E}J?Y^L%k!rzv1n&^MR&aVIOYIKa8DT{4b>1(yj$hhtPYXVBm*VF=Pt>IU zqLAcd|3Tp^fzk0R%`f;}3bwXEAn92v`sn<6A{>n5bPPq9llLldRV#S*qYCG}N#OK+ zi}-a6wYe7Nwcz`P6+iDCqHI|3(X9&Sy+PoQ2p+mu;g15Neu@Lz(!LVDJIIznPC-je{GE%-jcb6jd!HvlL5REvEuefYRp_|F;g@6_@?6Jfpw z6}$CW!6(Stf{%QBTksL#r+7!l&jg=j@c&ux?1K^J`#t|fevfgaepML!3kA>aQvAHH zg*wfGhYbD?3T{25_<3&%{At18V(G7S;_**S~Kdt$% z15R@EeZR(=nEx%7zCYJ^9C#`H3nJ%B*G8DNPAY6?IhR@sk1Jg3^99C3R^~}R{?CGE z4g3t_RhItVc)J9kF5so~xda12{hGd5$=CZ0i-Au-CaJ&Q$~mQl?MlJ*_gppJB6wuK zk~0sybhH64)$UEq|7I(6B*J{&Kc)C%;HT`RVC2giSkA?kdB1%J $X;~}f?M1((U{AYr1-si{vBy!@%6|Uu1AitQ-68wMW0>8+* z)LJ0?Sf2Q(V?1OXG1_eve2dZUe`EPUYieDD>+^SgaFt-3A>W_dL{8R_L(kVP!nm*g zT7>y^f4?F40Yjg|g0~oQjsu^L$HSq5lB4&z0!Y|M{sV@bHwzvy@T&yxH{`#M@hU5O zT*=pVYZp9c;I_!wXUM-5IO$pYVI_y3D_fQ|AaeQ*Ion0fIYZ79!hf5=KO*>m;M$(A z2)@POe_iBv$h^k(G#?>s#F3r@eG&f5&+Bn@CGZgZ=i1{6=R*9c0Zw)vF!ZG7;Dqlm z?D+wazvFf#=Q0tLV}9f_#}%&ayj|p+F#P1RBBxfy{R)xuE#ZI0(C3KYXAS&S!Pkl% zFs=Cb55Z3u`iJ0P)UQfIP8IO!QrAn~M>y;m-V|Y&zmtHgRV=5<+IL*xy1&_R K%GWzvA<5kxF;}Mpt_4zIE%Ng - za*i79jtYL(z|RT(hSBaNLFFf>4Sa#%aYIgn<~Q&U3BKFF`vl)*$lnHhI**9|&*y}H ziXrE5E#L6x?~Wtq=fdA%$azihy#{`E961*w;LtoO82Z0U@M(seMS?dPdj37|>BuX# zyeGmP?v-w@VSel<99OuGhiT>)CJ*`eI5>S*nDpFh==t xA@I`}0SDm-2^C3jayr*Y r!yY1YK?a10xzY1lkm4a5n<6<|24!9JCEiSuJ5~hm>>5G zuP9vG=VQdr68wK25jpJ-EB+oS{uax@{e{u)3nG7tA^#V`f70Opo!~u&JxLkzw*kWr z^jib6TS(;VcspPC=NR%^1V6A(>96hce!&kJ@^1l-e`Ai#!oS$y-y!(4C;jqwlN{JT zYxwy$2p=OI_fsNgm!bc^3BG%uU;gAbD?5Y@J6s8z K3^KM5gWp3q#?e|B;r8@?!k2-U$_I`J|ETDRna0Pj1#jOI z;m`a%2VDJ`a7O%puE2v|^8Yr&KGlNnH1G!CrR01-_&0wo!VT#0y=5H!0p_o=t}*O( zkH{G@ eXcc$P6jDCF&_ZO5$>F0d2dDd9gT;V@y@V^H*`F~jE z^*e-rx!?l@H7|ZAcn9Hf?Im}K{5?j0?-BeNL;o)`j{9-LKff;gs}26cf^RY8{|q?C zH_;QfIeeTX+^e8m7e&qy!ww;AWRacM8u(?5S6Tg{=LC`SZsD&s^jRkOPD4&Y@VLQ0 z0G!6_5ATVv zGn2E0_ee-t?{8FDT_Vqc2C z8aUZ=kHLSv;OmV3t`&U0!JiYn$LQ~%;71HOI|ZL%@PA+Mf+7Exz)R`>hVZu=@+Tuc zQ@<=@{hiHm+c&lN!*#-c&XBW=aqN2-_P2#UV(6J4NB-Tyf7 tL)cjaSH 2gY$ F` P}H5tgg-fokDj zYuJB@;4=+;Iq*{B*u(trjuR1!4sD-YxHSJTaI*6u!*3rWe(2d@ KQI*Bb4XU8eM@Gx%o%FV){g 94+D_@UsHh8=zbocc8&{b~}G|0wdOJQ-m`%ee#(T!=sN5ry+_ z7{M_gIN4#Hq2~(WAN`!-kFzw(TF?Ad)}@9%cZ-~9hMXq^Uv1#e3*KVjzYzH|Mg9b7 z_YcBfZuIM|vy}dghCQzoyxhQ-2tHtpdra`h41Ef~*>0a#c33O=+{gS?*4qp_Jf`Is z?LIB|6hr hef2bAzSuFiZi2Qy- zpN)d=HSmuyj{OIt-3NvLZbQ$n3V)-)|6SqVX~=(3@VFu8HNjsp`2PsJRDUm=t?ZUH z#^qg%V;{iKXEE@w*u+b25IN;WyIH~CFys$2US)Nhh_IM)5%ybpzJT@m__YeJ7W_*h z=Y%2uAn;QCI!ZXk@zCu`&S{bJs>m5N `)Mmw3tx297mJC;co68!~xUP-VfmPy5}Tp}8`6X{qco`~BUqN%<_2}rRf`V+Cf zLc)gd*m^sYwM;; =u+HiVx02vg>)y< ziCi*PQh<~>>UQDHcib)L+?C0ZwG7B%WxKm}&7@-q8UV6?zNS{$86)FxsEYPY{PlEu zWi**jH1)?4*#chIXSer6^NDM$^OpJrG-q I(S9V`oyJalXn~mlY1`5xHl!B#(DxTSx?ny+m7QNw*jEkQqtXF>${jpSEKDi;` zFYARb_xm9XTd5ggZ%h_?>`n|;iMinxs&10%xoAAupU>n9e(`;2R?5| NGM|e&qVTJY z1iE2!yE#l}*lI%}waHt<>Q2CclL-|S@Jkp`BbVsSZ1C$xeeF&5BXaOif!B6MW!xgP z1!sw+qWOHXYm=Snyd@DU*btqwAum6EiK pf$p}ytOBUrv<=f)`;zp~eh&B{{dRyM5aty{WCRgK2uY(zck z#%INpN~ROhoSny?SdXSV*yIf6+F^NVApmmJFMkM6iBuG94{say9duFwl%2 KMt4-JQyGMpJeig7S8>uiv76rxJxk93EVf!|p;v zwxhXRbQ6ZDklUogL0@n0CRCB&K%cNIA~JhfJ8yU14$5ygrB|W$M&T|bl@}lzKQGEf zA=NEP=Iul(+L_5=#>PE3&EXW*uw(`=L*1knv94syjwkckXd%`^6UmjLxRY3)bGg1O z<~4p*1uM7=`2?yax}tq46w*?tmfgJNsBGJ9_B`8em^Z)Eb~Vn`Tw`^mbFf!edLu?7 zUo)Rli9|Zi$wc$Y`Wu_ f7uU z&CRQtR@ -EaU*f7qBh)0emK>$gIp7pkQ)D4``W zmr1R1;C!a50Q;ub=WQMuwd6ObMmENrS?5%cLBY?@5Z*Z&+B_5 LUtctyi%)=ZeJ)%O&!8JJ}oU zPPlNQA1hF*%LQPQbUd1iYmZvx%o8ljZ3t$4RG%^*I89@;5H)%NQS2>USU90m3`R!k z){D+)GrRU&r8?&6Lz6;K2X2_RT{E$sU8#brj#|+jerf~! ^H-Lx-rF z;an!~_LSH5PD&B&{HEScat;V!*Wt;fr-&hwS;&Q)IiT~wG{()bmOq8E>;y7R*H+og zMz}gW4jppr!s%+PClOnZ&bu9L#9CNzvoVLC-e9b~)$ZgKTlz1a;) ~lpe&3V=g9%-n8U3rpkW-Lv@b7F($%;Z zzvzSqQ=St|7s$J^NE7Kk1X$ee%w?kS80K7LX bmntMUFmyH}&YbwGp79E!GAIRnDHr;*neLwCAy; zYhF^~mLz5i8_yZUzCxE1?_5os;df_JsX|)!k_pcYBx8ujI4!VM#7$fwvWk=O6FC=l zB8R%CL_r~!N~E0uxu)jbo@nISM5Z4HK5=dQn!1q0-4(@K72zENB{ObK+<78iVy }kb3RdU8^W~4ja?y`f_ox`a;G?X6cW6AMpjryv<^BFf=h*)5>CTQd8Z>poXHK` zuy1R7EAA8=7T2M?*$8Z*M@? jGJ0_rnA?O1FPjjs Ayi(1nE@t1w) C8yU$K|duuO}xQ5AX9w z%8tx?L+yFzi!)1n>6B|1|6DNVuEz_Y9Mno`6=V%}`sQ@S4Gxssq63t>VOI04h7(ff zFF;`lZ&HR(J<^L1DV69&*r(N}OVSQBlfM
A217(BbMFd z^nKm}HEvEMm5oPApUw5zn*lfz(Nx0iZVzwviV$y5Okr5k_B@wUVl%StUaY_y60nSO z3rStz1k_m)^L(@EIFXv|W@432Y^3bpo$X|iSbBpS=atnEwsa4$K*2L~-a}Kb8}|-k z7!Ml>!m6k2rox6}y)6De5ss5?f8ClMcX!pm|L>8eeQlZZs~lIQeOqUkF!flhFXDN| z+v7uV+8h gngG%lsEj8U_&&4sF*}U6lHhU)Rx{|sf z9J?uoVOAR !D`jn0O?f<(I>b#QDgreThCSD0&M*3sWP>E1>HP zV )}Gm^iqu|^kxRHqx#Zn$3)DwSZd`3$X7^rLEh(Ke^-`D<*gZ((Ht;Sm-Ce2u zpu94r8 wI)u z=}N+6ReK^H4Es>94bL@aQX^;Nw4Cnz^(yZ;1>MNluu-yKs$pPNHm|ktOb&CYE@69D zJ&H%Z`wd5sER1fB=9Hi(UD&U8;sz~kS`QWQJohg~= i>mAQ$^Y|hk zq6k)A7$+`ikE6kSR{>wz;`Y-BFs>R-ukb8@wv^l|lDfG71pqg8J5kcVVvV^CaqFv5 z!~}OTF4GBQimBl42_NEI?lj 3M92(0v)sv3SsgaC|9DV60}#(%J-9j3%ClXhV2 z1jHT3a_5mdc03>)XT~~ 1d7e?8v(hQA|sERz&6PDXi~)I~utY zc~XkQ3A5pD-lKu6m@=csNqH#k(wjpny&RKVl4upESHsy$?wL1u)|oM(QXIqyy) #or>Bb{8TAj(i)vkSdLsm8B z#AW!Po#{fbwUM? $s#|chmyVkphrhJY0~j5+t!}6KC#JGn}be8 x;=ZOzG3%xGgXJ@n#xi<^VD`spt~sZ*R>6gurC~r zsY6Yr##=IZ386@WtO2g!CNg?9>6XX1DJHn~X#O&S>1-77^F7!q(ji}StLGG+Zy7iP zI5xD>fcbCLprL+DtXgzB?;U6;=eLZn(6{TR-PYN#RQClm6Wzcq`%q#i3T2+;)tF_@ zQitcG&U&ZKD3M3J#uHWDxb7-cdTYxqr)NNt^p!Fa-)X8R>W+z(1NC{91mzxh-uAZ| z%wrYr^T85bD)Icyt?cY5O3UC ~w$;*=zV4`9No`>64jV-y)MaEr zo-Vsj6kS`&2z$BIBPq{1=nj|L4VhiApOYlf40iO^T8z!5Tp4l;#ShYY@raby8$9Pd z--!6*voi_2!Iq<)n%4ZyEc2nZR!xG6=K+g0nO--w@ttn~IRl{5aoYd)E9=z*Hv$y& zU0XW|z6+Ihb+KaS*eIaBGN*fBB+G7?ch>b*+{X9IqHfjT@g@X-7IKRA=qnz?tX0D= zeC WFY^q?@@J(M0+0d#%;7y_|!;ee->1s^^-vZ(9&h*3~Nq<6nF+7Fm2jQ{{ z$r9C9D3nBfjfSIm0)Q$Rw1q!4tbl3^xsQb}f%MXjrBx&E&t=m9XA8ko`6aL1DYi=u z?HeaM@fEGSe1Y=+lF;v2=sVK^kyBX~;j79r1>omOzJqwZ2fk*_@8s6?>!g02)Q@ -G;x z`-h}H{eN(DOj2Zw{!!p~m5{6d#0YctPh?`z|4~T?=}4k<|M7EEK9cxLP3iXa`_x-5 zQsw&n>FSe`p|6SFij&@5uIuafm7kG;J15Lqf6b@q?I@>rq3h53eduTLJ1jan`0rT# z1-7>0f^4em>-Vp(#qW{m(C=T@?VJ6-A3RjQftYdV_qh*Tp+4*Pzf*nuWOa=FJ_n5K zs^vSsL#+jfL;qe&eNt`dYofbwdh3U4BLrJvsh>3*Cd8%kZe(140jIaVeqZg51&Xoe z!%{(ruCLL@apA46-!pOOtBT_S%_!7R$9hugYx`UBJ!)&8s*u$Nm-=C$ntTfv)V{8- z-y@wppg5?^dzhbpfI@G5{a(F-)Sn~sNXszw|EW=b_qQU 5e4{azEfYn?{P%x8|pj$ ztLs-lA@W^qCjI`wQK^4g6sGt=hpwmP(*LPREV};4FC)Zejr@>_^ZzZVPi}oJ=Mtm7 z{{I(FO8pk?7$QK|)AVwqzW)7Z?T=Ljt+#I95NB1RKFQMhM~+9B^;)Ta_q+I`^C#?F zsf)SNeyxG)`ZWd)c0M#+hzn}lte=qfhc%;7Ps2^PF#AZXZ~R16XpwrFnEt=YsDF5F zJ+m%8s%o6o4T%7=J{6lbCDytZRfR)WDS8=545uD9z5cujn6|y*RDaL1S6SA>S9($9 YYhHwwsZ#YnLj#M0-e2uKjE~m;0Z()z9smFU literal 0 HcmV?d00001 diff --git a/histogram.adb b/histogram.adb new file mode 100644 index 0000000..b8c535d --- /dev/null +++ b/histogram.adb @@ -0,0 +1,119 @@ +--------------------------------------------------- +--------------------------------------------------- +-- histogram.adb - Display data file as Histogram +-- 13/04/24 - 19/04/24 +-- jason bou-samra [ParagonSoft] +--------------------------------------------------- + +with Ada.Text_IO; use Ada.Text_IO; +with Ada.Command_Line; use Ada.Command_Line; +with Ada.Numerics.Elementary_Functions; use Ada.Numerics.Elementary_Functions; +with Ada.Integer_Text_IO; use Ada.Integer_Text_IO; +with Ada.Float_Text_IO; use Ada.Float_Text_IO; + +procedure histogram is + +-- hidden message + +S : String := "histogram (ada verson) jason bou-samra 19/04/2024"; + +-- declare the necessary variables + +N : Integer := 10000; -- number of samples (data points) +nbin : Integer := Integer(sqrt(Float(N))); -- number of bins ~ sqrt(N) (or nearest integer value if not perfect square) +hist : array (1 .. nbin) of float; -- histogram array -- put(xmin); +x : array (1 .. N) of float; -- array of data points +xmax, xmin : Float; -- minimum & maximum x data point values +summ : Float; -- used to normalise data +dx : Float; -- dx = (xmax - xmin) / nbin (delta value) +i, j : Integer; -- index variables + +fR, fW : File_Type; +FNr : constant String := "gauss.dat"; -- in-file (read) +FNw : constant String := "gauss.out"; -- out-file (write) + +begin + +-- file operations (read) + +Open (fR, In_File, FNr); -- open read file +i := 1; + + while not End_Of_File (fR) loop -- read data file into memory + x(i) := float'Value(Get_line(fR)); + i := i + 1; + end loop; +Close (fR); -- close read file + +-- search for xmin + +i := 1; +xmin := x(1); + + for i in 1 .. N loop + if x(i) < xmin then + xmin := x(i); + end if; + end loop; + +-- search for xmax + +i := 1; +xmax := x(1); + + for i in 1 .. N loop + if x(i) > xmax then + xmax := x(i); + end if; + end loop; + +-- calculate dx + +dx := (xmax - xmin) / Float(nbin); + +-- Compute Histogram + +j := 1; + + for j in 1 .. nbin loop + hist(j) := 0.0; + i := 1; + for i in 1 .. N loop + if ((x(i) >= (xmin + Float(j - 1) * dx) and x(i) < xmin + Float(j) * dx)) then + hist(j) := hist(j) + 1.0; + end if; + end loop; + end loop; + +-- Normalise +i := 0; +summ := 0.0; + + for i in 1 .. nbin loop + summ := summ + hist(i); + end loop; + +i := 0; + + for i in 1 .. nbin loop + hist(i) := hist(i) / summ; + end loop; + +-- file operations (write) + +Create (fW, Out_File, FNw); + +i := 1; -- write memory into data file + + for i in 1 .. nbin loop + Put (fW, " "); + Put (fW, Float'Rounding(xmin + Float(i) * dx),3,4,0); + Put (fW, " "); + Put (fW, hist(i),3,4,0); + New_Line(fW, 1); + end loop; + Close (fW); -- close write file + +Put_Line ("...histogram written to file " & FNw); + +end histogram; \ No newline at end of file diff --git a/histogram.ali b/histogram.ali new file mode 100644 index 0000000..3d181f5 --- /dev/null +++ b/histogram.ali @@ -0,0 +1,123 @@ +V "GNAT Lib v13" +M P W=b +A -mtune=generic +A -march=x86-64 +P SS ZX + +RN +RV NO_DIRECT_BOOLEAN_OPERATORS +RV NO_FLOATING_POINT +RV NO_IO +RV NO_SECONDARY_STACK +RV NO_DEFAULT_INITIALIZATION + +U histogram%b histogram.adb b4ba0566 NE OO SU IL +W ada%s ada.ads ada.ali +W ada.command_line%s a-comlin.adb a-comlin.ali +W ada.float_text_io%s a-flteio.ads a-flteio.ali +W ada.integer_text_io%s a-inteio.ads a-inteio.ali +W ada.numerics%s a-numeri.ads a-numeri.ali +W ada.numerics.elementary_functions%s a-nuelfu.ads a-nuelfu.ali +Z ada.strings.text_buffers%s a-sttebu.adb a-sttebu.ali +W ada.text_io%s a-textio.adb a-textio.ali +Z system.fat_flt%s s-fatflt.ads s-fatflt.ali +Z system.secondary_stack%s s-secsta.adb s-secsta.ali +Z system.val_flt%s s-valflt.ads s-valflt.ali + +D ada.ads 20240316000000 76789da1 ada%s +D a-comlin.ads 20240316000000 4aa66568 ada.command_line%s +D a-except.ads 20240316000000 2a7d8d70 ada.exceptions%s +D a-flteio.ads 20240316000000 e18a47a0 ada.float_text_io%s +D a-inteio.ads 20240316000000 f64b89a4 ada.integer_text_io%s +D a-ioexce.ads 20240316000000 40018c65 ada.io_exceptions%s +D a-numeri.ads 20240316000000 84bea7a3 ada.numerics%s +D a-nuelfu.ads 20240316000000 dc1b3a37 ada.numerics.elementary_functions%s +D a-ngelfu.ads 20240316000000 58d8ffc8 ada.numerics.generic_elementary_functions%s +D a-stream.ads 20240316000000 119b8fb3 ada.streams%s +D a-string.ads 20240316000000 90ac6797 ada.strings%s +D a-sttebu.ads 20240316000000 f1ad67a2 ada.strings.text_buffers%s +D a-stuten.ads 20240316000000 c6ced0ae ada.strings.utf_encoding%s +D a-tags.ads 20240316000000 9eaa38c6 ada.tags%s +D a-textio.ads 20240316000000 5c2c6153 ada.text_io%s +D a-tiflio.ads 20240316000000 9fe024a2 ada.text_io.float_io%s +D a-tiinio.ads 20240316000000 e58fa6fb ada.text_io.integer_io%s +D a-unccon.ads 20240316000000 0e9b276f ada.unchecked_conversion%s +D histogram.adb 20240421091652 69eaf56e histogram%b +D interfac.ads 20240316000000 15f799c2 interfaces%s +D i-cstrea.ads 20240316000000 e53d8b8e interfaces.c_streams%s +D system.ads 20240316000000 426dafb8 system%s +D s-crtl.ads 20240316000000 8a0692f8 system.crtl%s +D s-exctab.ads 20240316000000 91bef6ef system.exception_table%s +D s-fatflt.ads 20240316000000 11beb392 system.fat_flt%s +D s-fatgen.ads 20240316000000 d28c6cfe system.fat_gen%s +D s-ficobl.ads 20240316000000 dc5161d4 system.file_control_block%s +D s-parame.ads 20240316000000 d494a4a6 system.parameters%s +D s-powflt.ads 20240316000000 a51ab9b8 system.powten_flt%s +D s-putima.ads 20240316000000 17291fe4 system.put_images%s +D s-secsta.ads 20240316000000 578279f5 system.secondary_stack%s +D s-soflin.ads 20240316000000 df77073e system.soft_links%s +D s-stache.ads 20240316000000 0b81c1fe system.stack_checking%s +D s-stalib.ads 20240316000000 1c9580f6 system.standard_library%s +D s-stoele.ads 20240316000000 ab5468e4 system.storage_elements%s +D s-stoele.adb 20240316000000 8f5a9db6 system.storage_elements%b +D s-traent.ads 20240316000000 c81cbf8c system.traceback_entries%s +D s-unstyp.ads 20240316000000 fa2a7f59 system.unsigned_types%s +D s-valflt.ads 20240316000000 78fc9326 system.val_flt%s +D s-valrea.ads 20240316000000 f0598c00 system.val_real%s +D s-wchcon.ads 20240316000000 d9032363 system.wch_con%s +G a e +G c Z b b [histogram standard 14 11 none] +X 1 ada.ads +16K9*Ada 20e8 19|8r6 8r45 9r6 9r45 10r6 10r45 11r6 11r45 12r6 12r45 +X 2 a-comlin.ads +36K13*Command_Line 144e21 19|9w10 9r49 +X 4 a-flteio.ads +20K13*Float_Text_IO[16|46] 19|12w10 12r49 +X 5 a-inteio.ads +18K13*Integer_Text_IO[17|46] 19|11w10 11r49 +X 7 a-numeri.ads +16K13*Numerics 35e17 19|10r10 10r49 +X 8 a-nuelfu.ads +18K22*Elementary_Functions[9|39] 19|10w19 10r58 +X 9 a-ngelfu.ads +53V13*Sqrt{float} 19|23s30[8|18] +X 15 a-textio.ads +58K13*Text_IO 787e16 19|8w10 8r49 +66P9*File_Type 19|31r11 +68n23*In_File{68E9} 19|39r11 +68n32*Out_File{68E9} 19|104r13 +98U14*Create 19|104s1 +114U14*Open 19|39s1 +130U14*Close 19|46s1 115s9 +275U14*New_Line 19|113s17 +341V13*End_Of_File{boolean} 19|42s19 +512U14*Put 19|109s17 111s17 +549V13*Get_Line{string} 19|43s37 +566U14*Put_Line 19|117s1 +X 16 a-tiflio.ads +71U14*Put 19|110s17[4|20] 112s17[4|20] +X 19 histogram.adb +14U11*histogram 14b11 119l5 119t14 +18a1 S{string} +22i1 N{integer} 23r41 25r23 53r23 64r23 81r31 +23i1 nbin{integer} 24r23 72r34 78r23 92r23 98r23 108r23 +24a1 hist(float) 79m17 83m33 83r44 93r32 99m17 99r28 112r26 +25a1 x(float) 43m17 51r12 54r20 55r33 62r12 65r20 66r33 82r30 82r69 +26f1 xmax{float} 62m1 65r27 66m25 72r13 +26f7 xmin{float} 51m1 54r27 55m25 72r20 82r39 82r76 110r41 +27f1 summ{float} 90m1 93m17 93r25 99r38 +28f1 dx{float} 72m1 82r61 82r94 110r59 +29i1 i{integer} 40m1 43r19 44m17 44r22 50m1 61m1 80m17 89m1 96m1 106m1 +29i4 j{integer} 76m1 +31p1 fR{15|66P9} 39m7 39r7 42r32 43r46 46m8 46r8 +31p5 fW{15|66P9} 104m9 104r9 109r22 110r22 111r22 112r22 113r26 115m16 115r16 +32a1 FNr{string} 39r20 +33a1 FNw{string} 104r23 117r45 +53i13 i{integer} 54r22 55r35 +64i13 i{integer} 65r22 66r35 +78i13 j{integer} 79r22 82r52 82r89 83r38 83r49 +81i21 i{integer} 82r32 82r71 +92i13 i{integer} 93r37 +98i13 i{integer} 99r22 99r33 +108i13 i{integer} 110r54 112r31 + diff --git a/histogram.o b/histogram.o new file mode 100644 index 0000000000000000000000000000000000000000..bab2c490b1b98b11bec4151b4dc2a8b4390e0c2c GIT binary patch literal 7016 zcmbtZeQXrR6`!-sR}0yLBn@rS=33DNld%3EP14XNKG4FVo(m$lg%()W=RNzH^PY3J zhYbRQbzH=1V>q=+3My6kgGg4zAC^i~hY#m$P|id&p^B;ywQA`fk?cBBAg)w5p}oF0 zJ9D=lZd0j!((TUt=FRVY% ?CTM`ZC165lQ??yavn#*KMemM+!o&UygKmF)4wD{9aMs RrI_^bRjFYtwTvsxNZZF| zq{j=>!3wgIBDQkMQBK*)2}e0`9tm; DsJ4<9p~3rds4)_Ri<+GbsDbMjuubQw z|Cmu Np}OI!&ix3s z+BaM6Db@bHYLAa1K%;~FplVSm;EJdY?ePpBDM-07fU^e+q<_)C!2;&6UmAT3uu6i| z!Q3rKF`p!GIIV?9^slP@mTJGR+GDEyo@#%h+BazTEtcW_!luD(D@yi}S3=;-1?q~+ zy2&1&yz{S8Df?MK$}O1>3B$qcEc8Oq%Y##;Qt41e8hw0@Q;t%|76P_Xm|6+r;37>3 z+c_*+SiT(En~|0(6Gi0+MpslWqJe>f7qNFJ&KeN(lLG%mSXWp#AbFXw1eFQcD0>?! zbDr{@bEIN93nr(JRq^RsQ911TM1vkUI6{3gSOa_t3;ZKxpIm;aLAi$h(21bG?!V|` zCaz_bk-+p%Aui?GjI>jkzz1MPTGe`LM%oSAd};0gWVD#;gDa*AcYMx*PWBRBiFC{a zxTu_S2hXilPJrdjg5`5+^t$T6X3qXC00s)cTbE}!DCT;A$c=m$Sq2UcV^2DcWrKBq zbL$*VKipA P$GR2QPx{%ocZ$2Xu8XUbbD&M*2W`6A($5QD zzkZ}(?Ez9Z(&y)R yEz|_pYOC@Ba`L-5iA<0uG z0fWSWRVZvUk;)aiCJDMGcqRQ?ipp7cJ Y|45O8Q?cDnqWJA=gk;Fyse|_8n!2ren8qWlkOdUz olKQt$J)47C|ac&8WI8-&_45At 88@%bzYOFf1