From ee4fa791be7388995df4a525dd31ff3107d43927 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Tue, 26 May 2015 12:07:43 +0200 Subject: [PATCH] interleaving request messages to different ports of eiger detector --- slsDetectorSoftware/eigerDetectorServer/Beb.c | 6 +++--- .../bin/eigerDetectorServer | Bin 242128 -> 242128 bytes .../slsDetectorFunctionList.c | 12 ++++++++---- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/slsDetectorSoftware/eigerDetectorServer/Beb.c b/slsDetectorSoftware/eigerDetectorServer/Beb.c index af8888f9b..dcc112d84 100644 --- a/slsDetectorSoftware/eigerDetectorServer/Beb.c +++ b/slsDetectorSoftware/eigerDetectorServer/Beb.c @@ -569,8 +569,8 @@ int Beb_RequestNImages(unsigned int beb_number, unsigned int left_right, int ten cprintf(RED, "----Beb_RequestNImages Start----\n"); cprintf(RED, "beb_number:%X, left_right:%X,ten_gig:%X,dst_number:%X,npackets:%X,Beb_bit_mode:%X,header_size:%X,test_just_send_out_packets_no_wait:%X\n",beb_number,left_right,ten_gig,dst_number,npackets,Beb_bit_mode,header_size,test_just_send_out_packets_no_wait); #endif - unsigned int i; - for(i=0;i{#g)A1&#Ig*UwyyV%vPmajKVEi9DZclO>#Q2X5H`Qzv3vz?i>)~s2x z-e%3-hlYQ5YxsA!;Wj7F2&dj<63iEp;`J} z!??;ES7Ces<8pJn6XRo=lCKn-fLZ_!g1}*p>oDGpagI4|!1!H^?dG@%dX*;ZaS zXcT$!x|6_P9x(&!r6s0P z5KkK0tNOjfw@Jq?qC{SI_XwkJwQKCkA>Mp%AP=4%2Cg9GUyTaDwi}Xq@$2Z7asQ-6 zRE4o0-<;%*UPV$kJhUMx7#`Z3w4LY-x8Kv3e{|15n#$`(hx2zv2eTKw&>c&k>3|U_ zHd@IuQ^wLzem*6fe~Iyh>hme^VJY?`KKIU0=$kL!iE!v+>(t;p63*)o!VXn<4t#jI?Pqg;%9LX>RWB3H@nz z_1p<@M9X;TeUrgBCwFP}tcgBErRHi;{9ozOKuDE8J1LTUdDW!Rbd_J86b_XK-9Ogg zRsGccLBuXJ^U}$ZO-%8h_`E4$(#h8M;%`jpLyLLslr~D|wNsZG%kb?F457KzO%Gso z2Q2?Q!0E59?x6bzrw8@=PqQA&oe|67u2}w0GcTGhjn@2NK1||xFqAKN&`0krx&h6Z zF^KA`%V%^an7%4gF53LyBF<-OM$hW0DbFtF=??|NDRLefPf9g@KQ}cNl#N2j&Z~pzGM<@c$l*mih_;B~ELFR;avZR`7vxXzqTC&>64w`r# z^VkfN&3lhslCv8P<9`E|3 z>XinS>6tUucCnV1FIi1Z_eM9#2N2|yFI@L{!lx0Ebm(6^2>@M>C-XA z$QduV(%E+}3^jdq*oz^wif6nSim^;UFTWV+Rim-D)|rdf>Co?9Jcg7j`C5vN6z4SO zcUkZ4I~3j)(=ixhZI>jsJK3en+`j%C(u$ffi@)=-oGKI73?5@{;SC-VnR|QQx@^EY z)*#B|2!5WY(l{PpGKw-yecNE_@sYfxdmi>FgJPM>mG3AjMs6}>)srJa^QIROg?*SUnFbC)*q3dT`6$qHo2YV2Xj0V z@|7@iY9XKdRwxzmLi}IIEA@VZ-oN}-Xh30nFlDctGb49p7|J56tVLevqbVa_;W68# zNa@=Hv0yg((|OVM8MK$5-X4ea5>&C8Xg?w#A1m7a{En&68;P{~@poP!SFfiu{aml9xh-{9zqi9mlx-FY!};d1o%vvAfUdSh)t@@! z392&c6JP$|#}eVHQF`%vKIxD2nDxmhtFNZqd5l+nG8);V`IBEMgP;C1oC>PdUFVo} zf~F*Ryu2qg;E*&yjQ#3XjXe>dDT2)LE}ppOwflQeyj`LAavb=zBVMzA{#Qj)ye|O8 zZh;*I4F2D1MZ7&YDIR{LDV`?`nBQWw3ScNx{de<-+Th4Dh-O6|$!1jB;?Xy%rtnFU zT2oejtSJ)@@|@aKE9&my<9KatsE4;pSbn~C4jtm@djq|p)TKw^hGwCCwT0*H4feJH z`gS|?H?6vI?;i3-JS>h)7^QgXjFjKS@-RdQ)PEo?ICrx@k;5}g}+bY;hs40sbS_-eF=q5%Uw>v_Xh zGxNJxa@P-#=A<-G_k+n*)ATZP>|B+vo6V93x>W-P@5kDD-_d1ooeX&CG%Ncf=sQ_* z(%2j`GFq3Rzm1n1;z$t@e+#A!T>IOvURCf-8_L=+O*wLg7k?9snz8xQUfpKT z?10#&BUbUMZ-)DRocCO4t}JDwyRA%_oU18^J$UOk!CrM8W_V#nUv}w?wc!6Rxc`xVdU?uSK}LU#J#^ybzYDL34uFw- z>)+qBrf6*D1)lbg?Ow~;ahWGRY_yP9u?g|i*o;G5J$ir+^2VdV-c=Znl!}Y1y>>FS z?aW39>%)V-?dtupu1@ty6z5mwx2Ya`B`#LEjx!A-P@eQx{u8D?>FeHj8a{YJpD4D%$u?f`se2l#Y-HQV(fz&qSbGLlVr zDc}Vi=p)->iT_WNukY4&ZA`mn#+N&xQwQs zn1f0^{X}^6KTkBddF?c1LTbFP58wa8cCW^E$b|XTxj%kKo!VM7mU>LYBvOz_@}VC5 zxicfJ{bh9Xn12O}U|+KFu4lK>Y+iLXiiTD<|J0dWP#-ZWgWRiw&#Q!V7IPtrb{P0U zffQD~_CJY)>rd6$0c=bN;MMN5kZ)~yKVQFYm>JCndbLTZG&bU3`(dGAt0R034JpwH zqmV*e?_=1A7mzcJqefApR|k3xF*V_% zvAd3N&)??Img=0}1o_Gkg8#>_2jebiaW#Eo91m(u^-5|NA%3P%XHc)+3c?|tq`5W4 zP39sT;|kJv{40EGYwDyt2#|NP0K`mw!v^? z0E9K;!PhipqnF4a8g0!0c!MY>3Z9f@ZW=KWhw4m8lxH)PNl7DRiKH zMC5g%1pzSz`t1Ch*ByA`qt1l;i7RVnX)O8+;qOk9X{yL}r{AemWO>kVN*3j^IV04r z$Pt%42#1F7=|bVywT_u!V2Zl{V-r;p;~_D_SmXy1wV;2dsnOFKi=2+*{k-m8xaqWq zRAj6u?@E3Fh^UAoW<<%@(9a~mu8IbrePu}H+#FI7BSmXh3brD0z{KWBfmXO}q_;@& zBtMTrBRND|6m|@$STuW4@A2W=Om`v#kzrrEr4-A&V0c}`Ht6{<6n9#mu5?BrYfWy2ZCN~&2?I^hz*WMVaibyLmdRv5zSItUCI zc)JSRkaoj;P3{9lbTht0UfjB4<@H+><%+(@7N*rXNWU+Dr(QL4&r1P z;@q*WBgc@Df50&p9QzyM+%ZxFb*Dg6(|3lQ`UCP3jrBihkoP~;uA6t)2uF8{@~+T* z=f*kGzrWZ8aEKl@Mz;N3njGOBwp({lyW1{sj1}%GjgrT3*aeZM(mS+Rw5SwHr$wQ!S#5z5lwH6qiO;=GQVAb)_yILmx#EqVF3 z!}@&Sgdj`FYf3vTDArl!k4U{yu3>JVRSMisTo0hDUiIy?0mp<}AnloI24R3Nl*~M+l{q#&Jg}V$ebHRifmShoFJ%lswk07 ztk{Vrpu@@I3ewJn8uK3`Y>5;lg8NWBd5erbG=P;{70u(wUzGJBzv&yLZ{+nwEsG?o zze-j%tdp=C$x&Iq@CFUUjlpLcDIzX5x?{J~y*gE=({cOG2+zJ0=)2_ZSLsK}<_kBk`pOG8@K9v?s+;wasD0Jq8>>Qk-07d&@@g=hyHU`=Vm@a?OECSw zI$svYZ8WyeL6=PVZ=TD|-+w7rUbR--ijZ^&MS& z8fEqoj4$u7Ea;BQWrVpP`VM!WMrV0HoGRWWF4w@jSwx zqA-l&5?m1w4Z;B9kYL$T(kMswwxo@&ms#%364o9?-7h#VhtUiR?GWh^wBW|I2J3kS zh`IN-@o4WO4obW_~CPY;JFG$OIfKv6S*;;2%b9zb`n zk4_0S3eoj}h>4p5R}xdHTUHkv@#V16*gAf|AHQ8oM-U zbp35nJdE<`s8EMfRKU9(% zA;Ld_&Pm$ek!0^OXn#8)GGrIDzpWP)vJ2YZl10m1NR*KxX9V`*snOMqMi%IvL4Cx@ z5!92mh?Wtw8j8q6c0k!ufhNHBb~!y$G-{b3&L`3$s48fZ`t>^iKEs7;}Gkr+%}#6$N`vPX?Z zKfeOTr6M~SN7BA~sAs2c%>d36P4`gTz@&EO7xjBVjJ>-9X!+?HcNfKEE@2n1N#=S^?GT&CdY8-ngO zQ36W%Ej6!@{1Ns%=A>0Mz@p=l6*^zwMSfSkNqb7UZh=L3!QsKq>ZDf zsViO6T@ogiCxyk=N;5va@m8EhXII?@Q#QojEPZLDs2_)8ce#|lA6s%!_>8C3){~gM zQIw6R)cg>XPDT+xXC~m9?JlhxSKCw7w@+vFoN?p)qBHsn8sMW-+pf%%i*>;1F%@g; zskPf}aBI8W&b(mqwx_oJu19bFz8>afiO%TnZ(@|5dD5zVyPO#(i7~E_CJm+#QJYG8 zyc#t+y~A{EcWLA>QI$pmI`zB^1pGG*ULAxk63_(P91=D9@tR1K-7IvGZYR*ovZS~? z0iJ>Mc^|zKpj+Hb*Ji@=DbVN##K1&2Ib8P?a^FO9hUl-KZ>K!vdy_=Y^mKZY`ZTSJ z!~u&pm>Z(-(-=4u-h$pW5|@mGNS`L5-j52hNkkisc0Zj9kT(-|yxrJ@wu8H$ctNC1 zM!uVEqUEvJ5k1aXJegj?&nkp%Dy~KPZ9LZI(=3uO%wH$f7;E!&ld~a#d%HdUrN4Ru zPL>1`m)!w3$($$O-@2RSLPH09tcg!D=ib!;r@!6--zkpZ-a6w=?a1%0niI1`Gvvde zQ#*{JMRO{0Qv3s`8@7m?2XK%L6-^J&DBS9Trcq%3b-4HF7iLrWp12E;M&EfzW-)f( zJdKVW6PeR!8p=+5^cg|#isotbH0yI!Cg+-r;9pIv z^uFTT+@6t|d_{c*U1#535%tp%Pi~@lI&JofZm0Nm%&QMk?=HVhfMi`XI=WueK1idz z+TT#p(Y^B3l3(N$U>`9YhRMqTjecFv$tvB~C{*s1*uQm;BgNQMmE_=SFlqN54=y5+r2iik`aF>)m| z)1)t}utO#bd4feqvRIp+bl)avL&s)j*FO?c<2Zv=rlMc{yshA*9Fq1-k_qtdl zZMs&1Jfdp!_iJL;Oj_y@uPg!!DGoi)r_RJNyl)WDecU{Es;^=1^bi|G=<5X097+S7M;@WUbmKK74Z^=+8%jdevBB9 zUxrFy5|mkAy0RI=#?6n#{^#Ls9p{WOGuyINm?Qbd+5$X5lXA01{&l${SlqRMY~B1% zOTW zpc>$qtfbt5a{#AGoUr8}$=F0@4h<4t7m=qBIpmd(k46@|#VbjpeP^I$c|{F^liD2r zQo`gnwpC!gYLtS*v-QTQgC(+VrFFC^?x0moTGtyCDUN)v>0^qPa?8BPuv;ct+au9c z@dpfna2JfbSX-d4s9H>&6I`wdZ{3$HnWnZ~*dW~ni|MZg5RW#)tpZ#=D`|a2^I{ql zSu)awcV}k;D)MjzOl|x5l|NW^r%tXd!F$WM{{Y>j(f_O$^-JjC9sw;-qiS~p%W@Py zRC`4vEycS(H;wjQ6ZWMPn*6ckAZ-B!;iG3;8@?oVxYhJVi0yTi33=E9-UBch8a~(? zTz~I$=l-P>%&hSm?O85PFUPGcUBo;=e*JgD(*DLyduN$(hZ%p_ro-&Li_pI)Ympd{ zeh+o_K=$rk4A=+!ctE@{(cZh_<_+vl5Uo#8U_cG%l1(TC&qWnop4XKECC`_YW$v2&JWd@5_TcDfp z%%xy2*Ifq%&Zoyjd@hAY9@7o2Gu!onT;z6z1|mW28Yl{LkuW1S8awn#3Y(MZ ze3{%lBzFim2i_SS0~hxxN@w|fr8E3d)&Q7NGgKrw^w+`qt)pg}u!9v_%K?A?8^7eE4=*}Xp25L}3%_RpZTBrQ zrG(0>#>Cq#r!{*2impulz9iM(rWCfn>S z8eXPP#Cxw&GHd|aP{Jim(B??@1mr6D>jijJ#LdU;M&kpjy)W{@##N$8(EGl!MjK+( zXeij_54ou95m8=B6aNrJ!fgZI4ow$L8xRr~g!UTlEJwxp*N})Jou04LYK8;3cq476 zHM*BOCvT#%&U8>TZ$mW1m<|%A(TlUql-44eOQ7VJ%BhF*$XoQHJMDDNeV@8psnWTu zhW^=;4m;E9XpskHIcpEmzMfPe3Qi&QE*JHu=v>G}2ch_Nx4ab}qNw*d6#VGp!xU8+ zI7OvXIV$}S=4|`{QJf#&c6~tOEswh~j%-0&Vd5fgp}BRA27DHtjQ@r1mU;QNEq)8Z z|5yCZ+l0%%dG~d<5!{UbzX+H6Uw9PWiu1n(;2M_-@3Z9ZY&t_x)_{t(>kAyWJUcON z5VoIadwx*c^+l)gsAens|A!|h;{QhXUwMJY-HV2RQ4*dsJQ;ZA;>p32ho=xv37&F1 zm3SccqWyRp@HDku&xvprG*ef%{H<-*H)r4S+zPvO{J+uPivKU;PWs|oojzA+MikOl zj*ac3bmx!|R^N@Q%;(h@=I4dKItnhrQ;)wu@)Th)Y!H=*DKYGmyIWdSx~kxD!-MZ& zS3U8lc>M9$@I>H=#xn#@BAygH_(*m&9nTbJS}c2z5Ww39vtUxi0om*nKguRabdEz) zDZ*uwCdSI9P|TCfGO<=RnPR)q9FUDFew0m)=sW~Xl?azjr5G!lcri~lIbyABio|x= zREPtzStfpzjlbwT6itB$mraToD;q`38_N2!?_0!LIcyZ$Ws@xq3}r9Telcwr>u0S{ zsX}!=J&g6R7=7_d0?YD%5-N5o3cKRWAIWww@o6Hv&#D7Ow~;K%x>KdMlbnAVDW~au z@p2MdYfS>U(%Cne^|2Uzk(9!gcvPzNeww0moh6GI8g4w%6!7FOO#tWL>6GO{NG*16c1me@p||BU2@3rlRzW zmirG9dmd+@V%mM|X{%i##JBgcOZ~vHrdUzvlH5ZM;YW?i`zXT~D&2v=$~9Hur-_gU z+t`sMJk!z5Lf0W8(^%J#q)6;s(x9VMQb1Z5AA`q7o` zY>_MK%66WVP+i%d?w4I%**i-mfv)VGX|k&;d#7$AUD=-`Nm^amJ2S+W_p?6Mx!72? zxNtu!lU}nsN4z+h)tlW}Q&@pD9?&FldJ2p8$WiGpRf-ZYP=qXC<3-bCw#2*3TZYux za3_7tN_BIM-Tq^l^XOa_NSzLy$K+P=+as)2u5`Fm z?0J;U@+e2Q0?MB$z06PCJ&zsnfR7*dM`bps1HbRGz)wdwf68LLX}S$2Gd!&^9bH3v zjS&*6YwuW#?CRP(I#&|t+G}i*U0r*PrLwDg+CL9VT3vgMr^UmMA(s6iLxJeCfE_ct zZ4206t#E}CDdMYaK#gwILUz`gqSE(@*!(!uVsxKa#LjvsfVSW-E4s;DydkTU0vPs3@_^ZxE~%KP_clIvE&e8~XSqBTBSvXSd}tCF*_AKNp!a8&z9` zq740uKqj?$TM>&ruh4w_s=_Gf#DQFvB6H}e7NM?San>+7!Ktla^lO zUuTCHipjW5>`R8@rLCNuMNN5j3ma;|iD%o!&XHJD!A3am-OeKMSANc%3O1R@E`W-6 zw!Y0)5M?@_c!%9>0lOXVu^vP@&bs&I5mx04{eY$5FN2&}A2J^|N_4LLi1}H7f8}Gg z9Dfbq?D{EtMB*3kVpAEIANULF>xN3_hyRg$3Y=H>v6)0E&S{^q`-v3ipFd}F2`7(J ztz)Sc96gy|GW->t$gF3hadef}vp5`ihwIr0`HQlH41cC3G}$x?$3Xyd#4b4sb6!5k z@?Yr>1>X4QX7*O2m5Hqr^i`tZ5v6l1q1GC7YecQ=rYZQ7V{uw`ag>E9PIa#3b+_0O z$-ts0p0dT{8guNWk1@p@cQeMA*OX-$#BjUyTwn?I)@5Nh&450M>A50tfn`=m1BPyp z2VCe0lpcpWj2##^I(IFw{EK0#Wi0mjdV@)lVpqC%*bM93)=WX}D!O5t-wt0dYf zf^yJAi$pXbQp_}ilZ@IQ!Z3C-#|5f#5no9`=3NJHj0vt&>A7X1Qi6*CE;hiOx~s}R z3PqE_yEVr$3e`yBVl>4fZ!u`0b~0CcakpEdVfvyLf!A(v%nxw9L@oGDw;!@|Ia9 zdc%jv-I&znWm!^*re&5p*^(CFxf~K!ip1rZQzSB%TNYt=^%AIxRtc;XK~G>*Cemb+ zCGwuIEDBkMHBTG1^K`1TC>#q8rEFBhhS>8v%z>~71kAvhGt!xYBqhGOo@ z5YdziH^>puD==xlNLyi9t-Dy_hfrWmt(pm3Y2inKhquN`nx?L9WB^aSK2Ghlmss#0-0;@4cX z$5*m?0zS!H=3A8#5V?7liLufiro;9eCF^jE%MG%g8ayW#%V@^xJ*UfKUPQ0N_Lqrl zG~N)xVye3536-ASFLtd&6u|wM3>6sFCtgM2B!ZrXQIkaW)7bZ6Q6xw1qDhW&MC;Rt z1)Ipuhdy)g8r1TVbWA1NkfPTXl^$sni4IJeB8nVPGh}oxGO&I~hNo~y0F0<=lGp~! zHO=d{TBY1w!gCd{jUsv#ycbw1Geq`mP2Q12y<8+soJWK2!3s5-)Iz1y^Pp}p$DhD2={-OtpEQik+|m19l`QEP*O>IPRpr-gkq5RRI{~gW!LO+_ zKLTvcsOr5)OT7+MsNG!DU z?e{C}a&ntkY9S+B*0Z z+>x2a4cV_!A6Sht3}zw6RLWLG(K;N2iC|W0fcv48b`*mw(Hx^*8J#VHo&&cSkeNp4 z2d`X%A(`C!RbwYDA`@hEUgSLof2$Oga?(jqnU)Gg6}44bUNv}!Vl7-1&OZm=m0B{B zT_`dv?xKm$gIBG{MC0uPtQkgOJ}UJs5Jk_Ukjn!vPlHz&N|(+x$e3nyg*^$c*eaSp ThVtCA$dZr3x~RyK(*OSfnvdSw delta 18166 zcmb_@e_T~X`u}<6aupQxpdcV17r{WqxCAOBBqrujFflPvF|TQfiHWI&hH*_yDr&KV z4i+kwrma{MwwEnT{6vWx7Ph)!i!E+in7CnSX`y`IbI!Sd+ULg~Uth1|%=2TOdFGkt zdFGjOE)C!IY52BJ(MEH%#6qe!6)tnL$;_fXl`b^XM2(dhF2DDn^J;qUXsW9$?5z?t zsTPm*)Kt04qd(DQwW`m3?0eVu`VJ@ZRU_nRim0^7{zOS?u4g1=sO6sH^CEKHm{)FZ zQ_i~Kk`yn=%qq3$I5*Rq_uE}88qW58kzxuNp-57*0q+7F2)Mz3%K>`;t})$oLm=Ej$-OLC03HCC`fV@a-u9h6sZSB%%l?4{mwA& zQqVmG9TQ(Q=yj@c=RCg_#nfY4tklr~O1>horMebBTvcoCe2iUiQ6nN}vkS6X5IL4C zYF%U)g{y6m9b~O+v%YAiG*wQISFKwuYU8LKo>{pjsKTx<*QdCUt5#$rsr93GP@!rq zTBCj!JB9YDF>wp%fLan4LiK8OTqK=PTjM^4n^fHW1^Db^9%rrYYTKAOm@g$hnXGE! z!~vCW$G=5RYN}dy&lnx((YjJ$SB|S~_xYH|P_R@89C(`>GVoZ{S zmZ}*^6KROrniQsf2KaPkYZAOzC_YV{b>E%PD0PcNQ{fI)c707rW@CnN8Y$*f}IjWs`Sfx0}l{DqWHhLy9IKJ!K|ksud|u8Oyw9 z$`IOLxo}D}QGr@=|8z*t&RJ18Z>kqjxiRH%^JhQ442@{cD?@ht09i4pEoP_R@OG zIi zrK)A~d|t<+Su_p?42Is(vPWP|Li*?FNGZs?jD6!sco;?ykHL1sPPLs=q${%MBVd< z#h7!!`gk_}#}Yi6V|U|*&%Q%&Y*#NE}* z4t3v>G&T9LL_^5ik6l;!@;KG{n7`VwL~MF?PPST_)z_eZo^=l1dthlYRlN6j2*I;M zmkE!&nQKt?MM_ZJm;1+^6edWMY@26ys6c|m*qfwSiC)Bbh)>9k)Ul^`P%MTg?V$grY=v&c0YV>2#KciNx z$P-(*asdUtF9==Q9a?KJ!Y`IhQ7cyY(@wP>|G%ZStkShv->FFea!%P3PpLbea_`h& z=`2G)q9QHTmWSPsSEQ`tT^cN%rN-urrozhXoNq-o5{@%9&sF_mjVqm28`lV5yt-zN z5uT4doyvZ4udIH0jLw_wqDYG-sab2mR#~`qYL^6Gw<)=c{c}VrP@C8I1X>d;vMF|P zT)ar__Cvz4-aoA+X6dISbyr?8W@yWsgQ!oj2T?&~mK}Mh2HusSo?SQEnEtM3gOTLQ zp2$!uo;^ZW;ZDe#>p^`be-!&!*0_uFk08c%M-xIt^89T>Fiz&Ow^G%t=Z@fXuDCl+ zUAnQ4r_(-OdPMx3trl(!q1?)fjX{K=4F$g&0{;E{Bm`K*3uEZ0n)$+O=)1gl2>wtr zW1`x-(CL?Z3x!u(i*nS|mz)Xho0mo!zB=mVU|O!GzZ?Qsq@Y(`9_mr2us5GKCU4TP z-@JSp=~u`#73oRNVT|v!$!t z)mXyoYVgp)+cVc?9oM}gkuJxpt!gsGsjD57$<%(6!;qzehwhsoWzwql?W)oSqo+g=@GEb{)>+~COR zuZ^ab%A(hH5H{JmP2^z_(GlBq`>s*{v3-Iu>s>pBcst`HpljA&yfkY*yJG?+Ro3n3 zO&<9QD>e@CUy#Ad@^EO{cKV17dwm(^Y}py)Ty_4gLCDtj zUEd=?J9A*wZn2uS+1c)Kc~Yn`v{YUAW(bw31^B;IE!X-DTL1E!A%3N?L6o(2!JM46 zp{S9}qA+~WgsMb9~rPMwCm@o_dNowJqIrOgDvL_nZC1CG*qDBNj9%i)sd7oj= z&OBQA_`c1Aw9z(uvAT4>IQ4Hzpq2N$?Mv*cJC-s}b-d$r_s-$!a}}phL)qSa(byFB z-Z*oM!q$`85PygI_6OYQ#umR^IaCnWy`&NUUAc*D+QEL{z-^hk^6mG{M0TT6 z7_IJ@*i*gB;is8xS>=b0Sc0kaQpH=H{Z~P7mMa6)dp{V0?3nq%ShHD??mVWJe=r`& zqwRxVDNAknFpNqnmBOC%Q=~1I47fp!KlJJYo|j^6 z62+F`#IG6is_oOiNs8oo8aQ?f?kI3@{{f3*Z9$2#@FPWXKcnM(=A)H>L(S^DUk$Gb z8hQ%BEQvGO2x?0#`g-jYHcoIW(%QEaY3e~WyC&JZQ;|l;sWmkrZsb%}ZLL{Aht<@> z{+=-Eic@eyqw4<6UClilL-e)<)z1g|%T+Q(0KMfT&Jw`(!GeR1-h-AyU&n4MUx2|MXA6XN`KnRbfj{ z+Vdn=MfycM^YpdMyrx=@yguxAsT-T8B1LNFZ>}3o1Qhw5rHGWW9PIw8PhA~uSIu=h z=y;|5=y>vT6X`{;!%E>@?6wVR)8E$9Ta~uYaA=%VbL%If)~KzY>X+U%-=gDU4qcu5 z_G|Jd9xI{aYV)ztfzw0;>n8mjLA5AYk=A(_aIqTmdC17+VrnfdY}X4YtMvO`O&WW2 zZTE}}e4BxPgv%=_M1ALTUpE|gkK)R-Zk^ij`P@8LQ_iMvv9}b1p@Xsi?(61h3Yf&| z)-ArP7L%KD!Dn~9t4`p$!M3&Ir{@SSTKfnx!5zp1s72%8M~YN7(y8XS?NY{nCo@I} zg>PB@8^P>$!8=Z?^B zR)sB0Py>$7jEdE5v|xi~WvP9k0k4Xeq`o%Oy@?825UkN`?FHz+ukJdoBHClW3_|^r z{^hS8wQw^FO4LwA`iF;F_V*xM0opzs&}aVAF2c#98ez9u^Y_u-r*mHj$q_|~@SL?t z({mK*#0b^>M36^Qw-Hg=2oFt^ZBrNF#6=JWv7e8sr6)!WxK6hV`};JthB;kfbFZrzU+wWI=%Qs@s+1c|@ zxhrhW8P#&?2#T_nQ$e1!fTsxaMAuxun%r@IKlJrdBfjqKc~m#rb;02c%34+VIs}JN z*4N2y#|14)x{;#R09vbY+Ha(*UjKZ}?NldJ_0QMxMrx3BBd2Tr^sU-x%Z&m=UutLc zvGjEYz8LtbZurFpz6|(o_l)#u2EH8l{BHblMl8s&lKN$nw|7;SInq5q6M52AtvP*{ zdgtlIL+cba^B}MmV7*W>#-jBVlC9E>ZX;)o!-zfRMuk0iQ7!t?zjEU@xnyot*o2XG&8jl__V%m8%+vvgHnmR@~0hWA`C&p6%PxYdH>Z|7yXcA9+kwSQ+H)=HhA9kS>todO$O?a=Z zCpnQ`d}=zmRz|kUM3>aWi^J&?jXc($LM!=y;)&*B&@eV3>bcBL^A zlNT(ixtzkrobJl`5*9gTh;ADxF>b76>9YEmZAg9kiGh+woH*LM7dB>tz^^lCQ5Gpl z+r^t|kGogfgVcXt8{wfCHb9oU`+2Q6u~2u(MH>)VvLS+ro_bUB*k{~->wchtt&)N(nXK@>+R}{^3KIA`Ox*@Y~*#-rDMEzH2H^v33869^F7-{a( z;(7%3NLJX$acW6N2(7BD?!d+^1`@j&EtZdsi}p~YZBaavXuLTK;9I#~GvKG&08CbzWZ$)p84?;q<;}{P`kAUR1C5IU|{7 ziT*(TUyQt|N$U^%Q7Z}ZKK@yMWyqqg>k3Cbvc-q)aNK1gZ_|V};f2W^7qr_+7w?@r zouxhwORWHpu3^3g?>b?jZoI2_VGmm3m!y+_SbQ^i#3hH^lW@y$=F3clMV#W{t~8w< z;kmB#JC*YsHyTaTc!g-LaZ7Jx2bW%i1A~Y5qA;vlqs-MQWr7mJYXrqlP)4z#hXrZL zkZi-EEeadDc->g3RdX*%>K0N%$MK5ZhrEkY{$=8y`X z!rk2|$c)H=5UV@+o8h)YgL$eu`M8zp$zdq*Y=E?DOCK6IIZS(RA+{Ycq^Dq;sT?zJ z)15B-ec1T~4A-KKmU^NbHOXS?1dGgK7n^Ezso@*Atq-K0;JF?&aB!G2aJ!3bg4kd~ zY#dMYAphX2#%PZ&pO!M?^m2+t*-V-^|7p(1>L$$vz8ChEE-maZlx)<@BfYAL()&Gd z6<{K-8p^ta>eGciuPZA|;2)e|%-vmh41^CcgeUNLu(_ogV?B+rybah1pZvjKo5Joe zV)l+tg!y!B?wWy`F|?aDxw^zVwsw~oJmn807DD1kU7b6o@QA+TZy5T{&?|qyzE@#G z#PtSwY{-=^)9inX7xks#p4FP?IN#K>AtQM`(7~GwNmAnW-^Gr@z@f)9_q4e*K+-tw zE7MqU{DxlV88Ypo&D_!hv)p-|s^OyUPn;EMce9%$akDemGU6{}$zPs3aM@wDDjO8S^-AAMO0xxR! zs1x=?<_b_)&}N?HP0=2g4U{iXGaTjKw2?d_x^RJq9Z+Nid1Q9s0>(LNd=aOeWg5o% zdkcjJ^F9OVnn!aNuir)PkNRhaJ#ZjGnm zJTj1CX(Z1Kq+x7x;Fihc%gY1FXOtQN3NtM%XkgUH`|+wE2K;VV345G|Q?OykyP#%;39^JZzA-|eKsj$O0v z(5{qS+7)%q3hi+(f8i4@2hoMjLJm9Tb&b1P=sV`>%G)e7G4PU8sk}EXcgSzBbIO#o4#_@@nNLf+^BF0-G10yCI4y%_KFR z;#$G_9p~1;6d8O_EJ3&cj!XU9ndItB?$E2>I&L3~B(BecyWqNTV;=2Z=+)||7>uLD zbFb4Q@LClC=jp~9cF}Nk>L5Q}vxZ!FVkkYxwh}K1rRX@P<3}h=9;%-VOni0=7;f*| zk+{wIBFfE0;JSjR?{$aE5SnA6Q`{C#OFFMHn9qGEZw$vNb#2Q~dX%}l@ywyL$GlQu zy(e(5Vf3e9Z3k{%rdzS0GvcpT0Am!;M>pBc=}X#Njm6d|6>`pYY=0 zG;CNeOy;&(*Vzp((&d-B+0S_C(JLN2%X!OiB#?{T8bM>s847bf&$C4rO1YwRiJ%az zyUx)VL5q6O8J-wTQ)v?~il#7gjlvK@)zLJWE%)QDF`yjf=`lJ*I?3~6XbD~7Z85aW z+@Mg$6~1sJeFY)SIh4RxkD@+)&ipGj);JJ*wJCJtue@v&<$_yN)-C?pbuBcz7IL5WK%5x8AMu{&tCHiY|D6 z+sUg$7rehsITi=-Pfg_=D1sWiOAR{`4+)ji>dnL?My_DwirWesQ7K68)w#Sqo|a)uRsw9Buh6gi9pwr1A{*)SNLPg}9~6;cwYj$_bj3~IJZHZ1@HMAl^BJBqj-rL^pRsS~PHIGVIZ|U1{8N;gB7H_^Q%HScyTtu; zMW41$4*16z(`v8ztu_ref;S{lEKdodUi|TUX`EY~LO<<>;1ZrY4kyvy@1_1d`nmwQ zl(*hX(Ie8jgkRDw16Et#VvxnxFdz>UY$Wt|Jf<_ zyq}j(rsTXR)JuBtP3Pz0X6-8W zIJ%~PsJ3|eL5s1@Q;W`PZ(~4DOzyZcSIpIorbSegrGG}(uHDt%wQJ|M8M0RUDmW0auF+4WcOCkW7a>S`}*f#Bgj^vBjahCWVIe@NxwK z-kSoSwxWylGX9Ib^=6^?gWd>;)Z&) zamxcJ8{2ri-lRW37yQI+#1$_zwxjLl>}R&|jOoaB%MG$P6uXmWIm)KfpYYoVZk>Uf zkahu&vUt1jRDgL~g&6^g-#!QpT)Xz;U)p;%&_qEXXj$E8^Nn$df@Ty84c+MD40@U| z_U>*p?TrrPX4-=WYJ#_SBf1#_bGJN*E7f`4Fp46!q#z$D529vxm)jr2DK>$(K1gF} z7mt`p{zJCnrsLPm^zJDCNuh82gea@cyGWta7kSo9nu$uYb|#IX<6F|{88#@8+tbN^ zT!Qdxp{H@y8yV3X$*&1tE~JHq95`3gCao_GaOp}$O+$E7I^AIZH1noeh$Y`GvuTG% zVi&{LGr0T^4ea&X6e!k9p;J3~!)zMwv9N2|r;dwPNj^i7Sx>Ffy@eI&(+)tg{@M*o zOhYJo>6!BsE^%P@t^z9Orh70o9^-{`;LmW&Q-^s4xbSwOZVru&nr4`&N7oyp0ZqD= z%%)J|DecxorzUChmJPVdV>4(>!b`A>#s(ESPktO;;esv7;)8dXQj=JTeFw8?-}b0+ zmM*ICD6hz%BeYl;CV&^ur4a8<5sBNc7bA(t3Vr3l>*vx6w-jyS8Xp^19-{F>I>FfH z`z?ypb6mGA7AXX2$R~?eJcI*(h-P5^%R{u^uh?mLRF%F8otz?e7P}a~Wggwpr^B$S zPYp;&2=i#3`2@OVo@S$m*+6ezWkaR2*%3RRzMx>|71sp|7N5G1YAHuk)8+$r_!4j>?Ro#vs7Xt>8h zgEassWP5?K8z|H}$CmP9fhsjnp+Mo{Dp1u1DqNxZ>)a(1C~dQFX~4AgpE%+(kx24( z3f)E8*L0VB+vCPca+mvkb`&8Xz66Vt%Uz+*<{P$VSa+xx6J_y};B4K;%rLUr%5@lH z@QBZVNjE#>-!|BT_~a#I>Eqij+(Ntf(`O0XpPj&cVlZVQrgYauQvq5RSW^bgYSeO|F;Pyrf@TLzgoTw`vypAAJS&?b%_7D6 z^0I95%8Rvy!S6r5F64n%SpEPkA1-zcZfmvwONxnYmS`R3ST|ORPwr@U?ue)xGjHX! zcSx?_^)h%zIwJ+VLVsUFNAVI+%rUETlA8zqe%(2+tN!;xZS?UKec{@@9(Pvlw~g+Y z%pJmG^PZOy$CY*@frr$#g+XeEzqcsNa9aC0{Tiq~0|3JTb!EWfci`P6sK79HUl;XGH4|v-Y`meRT z>Ir(d-$1ymB->mdzYJkbHD`Fl3cNJL?1#_ulod$iyTxw+gMzKVXz_zx%7xx|Rlvlq zd0{<>mBSMp6<}lL6on4W=Om`IVFxQA&i1$~z zFicaZ?TBq)GjM)9;3*`iQ#>9`6pV84q`?)VbNNH5gNGqi>=VAWGB3^B#iHooVqW+Z zCA(GQOD~8@H~Y0X_U$ z%t4Ng7lp_G_90#xtfml0-fGG>kJu!F+MbsvUfsBgLnXQ6`Uv4Sx?lNcbQ$k`Tn6)K zbnq$!G7i@Rr=ha`erj8Xv1tEng}_#jM-zir8Y7Wb-`Cs*D-*}VN+CJQ;$O_$@^BeA z3MsB>Qcv-LrYD?K)D#$UAh;X8FYtP;Ao-UHv7m3_DRv6M`(_<{M0`w(Q0>3Er~y}d z^GZ9VkjIvFC}DQ;taT^@U*ht!*oxB*>$5m0aeu$Mp7wZa7bLNCg({+AZKf85-oZV+ z4EMV)@+oCR6_ho;vPavy()c@XiET6%l%*}m=3mE^4Jc;E@zM=6d_-fnkvUx>-*%=V zVG8HSR(@HG+{~5dP(lYt3cY<0ju^u$UL`Ys_c@x|CjjT&+ripQQa~aP*oZ6EES|rS zA}O06*hoh_=0l+7RZ+HpGG0)Co6-ngQ2+~^I;qC(9Ch_LY z^Z|cTrEyfso3`Mdwv!x9D*a5JbvN^Gzb<%xhh@PQLZ`QI+JU;OjFZ0yiA}QFf)Lr; zmhw7I?|6$NDn`ua3^IjEr}4rPn)*ki*Dmt561*>(!0WbR_fGMcSK+^(@Wxl+zuu0k zuhM#kFFv{3Xb&ydeAO{_JC*jNzw)Ntw8taK*x*owUY_D8dXo;h(k@5pJJi=qB@WvG z`e%Qtam3frGB-+dlpm*$`%^K`K8F`#^Lf=dx)6NYPAGs~O>f2qOY;48$s(KHOOmA# zX)>M5m+8A$N9}j0@$*7EZVaov`5Agyhlid;TWrw0Zsxgl%&-{H)9@tyFMPMmm3Nz< zTNwVo(s$jaT;9#AKX4nv&Gi3^atr?l87pt4`QCzXG2nbh#d+M9{fawoEXlg%!77$i zbN3%$s8a<;ZTM-Y$7X9XEEQ-}2mwyA}T5_;02E4{#4{@}j?7p*h3J zoo86s#}x0d1he`+Tdd5-!zQz!GCa-r`ymStwX#Us%hRmvgL|&YGF|h+gYR9}0`OSy zgyM<76N4unPa+-#Pb!{tJT^QF@nkwuqS$PrYQE<#7KC>%M?_Q4zZXp!?-`AzhKGs9 z#wUuVlrIuZ0pBQ^Y`#Ztj)*3de=nMR-ZKVGEe{h-4WB5Q6uw9_`Fx{j%J?49RP!UE zDd69WCW7}IiKc{yi6)&-6pa^OG?EQs-@5aS0&L}bL}TYiMzTLqBcC~n4K`QHv^Ui8 z%qZ5+r1$yeIF{)KBkZl0BzDD-m%!d<{KI&5zga`_J_#(-T#pZcX^y88#4xSTUrA&e z%}7pf)i?%?V}T~U&l8i_6K*v!y@{l$#!LwBUYel{0k{$f6267w~eqkDi)p2VWeCuFK<<92~IkF|Ge}q_n z06+9N3*j^GXU~{d3IhN7e)jWVNIb9$mx`ao8nS5^?DG!l=cQ6#5HRzBTK?ly=!0dv zpUd4-(alA-m=8^5sph>h{iT9Glgg6BWCug>ru%|!Y&U#IF^uidNc`DpFt#G>qZzx( zUCgK%+i_K3HDiC+D7u=ltI7p~X6!1P=xWBU()LI*_6KQ#S2K217XR!47HH1F!tDIw z1FTed&B1*B@^n^jbmyh9d~*u0X}l$k#k%Fo^ii!O`HkSgOW0)IG@U)++3QVR>nt%? z(D^Sj*yAA|xp+#FsRU*!?z`%Vc@p8RqLd;@cSQCBV+o!zzVSi!fVoztLpA)H2eA=) zch^joi7yEr=`29(?nh1h&UE&G@XR`l_iyOjnKyazEaq<32#$lb ztHXN*Radq!&}>yxD7u=hYJ>#cF+Xk>yqc|QO8Bwa>^(P_;){Gq3Od(K zhshbxAyp6@b23+mj@-Fy9hrB@bS$2;dF+rGwrMEipUz`n>Rrb+8@q?hWilPF z=FRhg*18VI!|XnCgByKSAW1_`b(^Vfp}yL$3LK{vGJopvr6kjrGXL!nRwHIQQO*xN z%I3KpK(`vkpDVn~hu^b^opghbH%CZPcw{$u-(*6bMsWO?$p+G_7;KsDX^jif)vebU zFR+^RzHt{_&3dPD1cPS1#x~K_tk+mBx|*l`vqkV~)@y9%4?l)jj(`p&Ja7p+ZFD=9 zu)mq%3TM*!=UKq&-HN5`2Xnei|MucL9*0@SWl+e_X+O_0TDf4)pPBMHFUsN1s(9C2D;>BnO$)j#>@3 z*pVM`WKxT#8L`;^3N6MjDD*OpAIV`!B8PtG&gIoC+8iqeIF!|FGLpPQEn&wPg*xWH z#*QXv4-7)hM_5hKWRB`ny%Y6p49-mX7{i~IaYZz(+v)am;)nkh8*dR^FNpHyUcUJ=2-=_)j-$D^g;nI7ic@sMLN1iUs?Jp zhd1f6+p|q$QIEtgM`P!?%MEp!4c?=&^m7_77u06nx*R&!^7toUhIF3w1dyS;98GW` z#E0rbTx~LqN&zhLDy-qUPNqF5qgP-M=2?LqD2AOpQmaen`cCx)COTS(Q+-lHkG~WUOFx5%JYc16zm?E5h3Bp`P4$Ei zk*hwa*DIo^;!P_}cd`}k+gokj;_U)?f(JYasF0_KCY|R# zX<8OsfH_6C<}nny!UU2N zj+g1)c%Jc;DbmvlHp6{9*2r{^otFx9w@E!dkm-RI-h@e@d^@O73*oS_x=J25Wa$eR z2&vcS>eE}MRlb-j)`0zF8lJ&3axl7q=jLE5VRiEXeRQ8ySP&eF3~%UDfL(yWa^ME} zJYqElHS(0zre&I&m+KNvr`5`^2OU1fM@)9f{m1nHc9I|u`+_encRmSL#VT?jvFQ^sV{b_Bt;-7{l z)jR`@r|?T->7FIBbgq#XK5ZK7i4;KLx(Lq}nL=gWBnGAPb~I72w(Bl^`hKHi>5{O% zpCIh`)rYFTJjezaD{{7V1g0_KY!P{VEfFpf1q~o$kwIO3dYj7#&;zGo%=31kf}A z8`k$t5w|2>FD8lSt!SbmAf(OU<}xKWfxE$gKY(9|(Z=5R9+4?EpT|FIx~JdkuD~1d z=occ>ym(&tEUbJ2=uCaM-^(&3HS?xtVTMwmV+`~sGHsK&`+9_f5WZJO4>ZX%-v(up z47fj126BTlTm}x432$>d^WebyWHKcJK49?AM;^@Jxeyy%4|I)zepRN$2y5WjPcrpPvr#CZUQSq=CoA|Mp7P2cK( zzr$I>c`k-|Rs(J1uRtGJYG~l)8%%>97R4YklXm0=-X}}P5nwJky0}2Z