From f334e673a582b16853a57eaa95ceb6b2ad719bd4 Mon Sep 17 00:00:00 2001 From: Federico Fissore Date: Fri, 4 Oct 2013 11:30:45 +0200 Subject: [PATCH] removing RXTX, switching to JSSC --- app/lib/RXTXcomm.LICENSE.LGPL-2.1.txt | 0 app/lib/RXTXcomm.jar | Bin 59330 -> 0 bytes app/lib/jssc-2.6.0.jar | Bin 0 -> 152418 bytes app/lib/jssc.LICENSE.GPL.txt | 674 ++++++++++++++++++ app/lib/jssc.LICENSE.LGPL.txt | 165 +++++ .../packages/discoverers/SerialDiscovery.java | 42 +- .../packages/uploaders/SerialUploader.java | 2 +- app/src/processing/app/Serial.java | 495 +++++-------- 8 files changed, 1039 insertions(+), 339 deletions(-) delete mode 100644 app/lib/RXTXcomm.LICENSE.LGPL-2.1.txt delete mode 100644 app/lib/RXTXcomm.jar create mode 100644 app/lib/jssc-2.6.0.jar create mode 100644 app/lib/jssc.LICENSE.GPL.txt create mode 100644 app/lib/jssc.LICENSE.LGPL.txt diff --git a/app/lib/RXTXcomm.LICENSE.LGPL-2.1.txt b/app/lib/RXTXcomm.LICENSE.LGPL-2.1.txt deleted file mode 100644 index e69de29bb..000000000 diff --git a/app/lib/RXTXcomm.jar b/app/lib/RXTXcomm.jar deleted file mode 100644 index d3d0aec9fc96a8ec35089b241c39338a7444bfcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59330 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

$JtbY{$<|ax==GitsFq zPc&!~C%cm<%x9a_9L3I=NxJ4TMBWNL{7EfzVYAyZ>vqAE*%on#x65h96BK?}eccyB znsr36*Zzp0V>*#@#J1-QYeq}!;?XIBGATzCZgowkMH4o!x3m3^%d~j(3Dq-4cuW$SE z@DaIn#VB*r@q*x11tm_1;{#OaQ_OSX^orCSfO8H(8MLHn$!pLGRN0vnNo?~GF{i{A z%KqZG#wlp7B$=FBb5w27vSTU@kgf_5m-ImKpd-Ywqwcq;P>qY5D-(sQpT9FfJ;hB3 zJjg$qkQNY{S6Mh!k?4UuLo;3UX`O0y2vJ^G&&YYQ_Q?U+hez(bHbeP1J3c=OPW+VT z_cQfVt0SNvk=O(z>&8)s*E+YXZZ$+favL}p?0+s8&i!_x2z_?A>X93koYDHnbev%V!2l2c0Q_XqEwsPCG@=j!7RCw zAA9mKLpcW91rFPJ(A}S!G(eB|+7VRF7^G9o4%{~Ol(P5aa(BWd0Ws~}?@XK~4h|eF zbIZT4sU-dR&M}6AHf4hT!2Vf0a`v+>*U!l10;It_nL45d9cWU3Hr+DKPOpxV+rY-2 zTF<8E6@>T`^)zJTbryHaZmF_K!(n2J*(>###}ms0i3w$Y%!jMD$)A&fRS7{s*Jfsm z3;GS!3x&QKUggQhR zx3ATKeX2CSROsF4)w7L0N1bpk0%V?=+^{mZV@q$yDDQ}-64~?~Z32Q81X)*oL-~aV zjf~!T3Yw9>x5LCgYR$@VoZ|s|Zr%+T`8E7fwH-@2l9kbVXDG16gqSDOfv2vBL!a=&!-3nbfm;|1nI56fJo<{CxbanP zRMaAnIUE$FEK8EtM)D5Am3})S0<{W|{U<=0lTG3}Wkc*j-uc_X@}5rop|{}5_CW=K zqt+!fq*b-Qfk!Ncz>QM;${onw`fWP#1W(w~<$judy# zr$%ksKhgG8VRos!$@JMWdXHY6Vr1Kcpx|UrgDCO+AO%t4`0*|N=-UV`fpV$WNUmdJ zP7z3#^HWB|ru&n2mPAiFjSTSHvCwq!Khx=M=&D!dJKEPIv zRfwE)WQwL$)|UEs{6>6{6Nkbj3`x`GijEtZd@t96R47R*I2sS?OrdF3;6PWQGEt^T zcHYPH&}~WLQ@Y5bkAFRuGVU5u{T>XwpN&z*LsA+q)~B>D&j@hW8dJ_hxQ#Co4!WsV z%i$sK8G#|HY$rh)8O_yo7tzXYC#+Q7Kw3?3jkeAc&ao$Yz!tez^NM(WEynfMY|rAJ ze$L*vDUu*&%TIxppDf9HgAaK}MJ;U(D}x48hW{Na6jav2B6UB5GcN`+_p2pgMPE+7 z6(Ni%59wXpLd=MVU7qx%E|zr7dLAYdPwzv<%d+9Pk!D?V@Dy;*Kx_Dw4)F9*URsJ( zHTD=`rD1}sNl`;|dbD|Mm9aBlWm7l5HJVmYjaJnb0XwnqH=?yr386?}ErU%^Rc-4V@?UXMqkeW%=Iz$k=+%L_ zC}=1WzclLMMQaG1!=vGqcBiVuweT;U(@D)1&1v%_S?5GsFKRvA0A7Ee>OgIs^u2J* zdDWcKW{kbi3cHwHbN0b+r4PKo|M3W)^NMuTiPB0fHgn!^#J8^fI6vhD=cEg>zMB1$ z+esHcbKD2+}6S5*4c^~;kFB+GQ|le)lQfZS0PRf za9Gtm>{8{R9M7}hkqRBC7HWQ=eR#oV0SX_;5&Xa#v1}fWT!%8vg%)Zb@R6*5o5Sok zcZyHA_+1y$Qc^C8+8G9!L9^|LlO2%Q3fen6KXtB|si9ucXXM~ql3-e09!Bpw z11>_m2ABt>p&$q@nf+vuxP=iEX^8L45I#{`L<-=mrQ<}k!J+zxhkJ^jVMI4z3GSc~ z_Y^GMyE$C4bmMn!CEamijy&EPTa?*kvV;vDlIA5vzqxo4>PMJUWo|*`2Q6q^F*+ou z^c8KRAMSeA2t&EJWG02v7lPzFO{q|So^0Pi9Rx&H8K1!)Hqf{>7VncuJUx##71)-6 z8P_K7WaA`?l#J#|quzfXsizs)R*xsHr4TcbFEo`mS>h{UFg8IeAPi#~6_9_z?(}o0 zPu|TQ8{gq13p35^#qRqAwY$Qhj&ziZY;vBLeilWW?4ijNT^7-#1gOWGXv$8;C(>k! zxIo)@S6oHyG#8&0B=6?N{%ippfvV;-D;}Ao$)%M|Ez9KavgIIa2O!Dh3|a}26Sg_$ zP!5PObbTON(UamfEv>Or(m&FsIdSilN<}e4OWE*_D2;F)9m>^xC0^^plBUYS9VaimdTuI%jCKg#p|GGT~Sv~P)?eloSUJ&W+|OY z0L8P)M>s{%tndM9z8w`X0MG!h3y}hTR{;iMGR0nQan6mOR=L#jptU`$(wh!4PxXKk zltrkn4BlYwU?sgQy-JN(f_%%DA|{64Lth%Dp-bqg;F zCKCCQWpu7=C;?@$tr3fYZh$|H#s4&Q#!V4^RYxm zc-;Swv3HElY}>kpW81cEqhi~(Z6_7mwr#Uw+qRR6or-SudA09(?>XPsp0;Kif1fqy z8grnJ-gzABgvw5H#=CwJ#LOggRfk;Ol-)>;3eWfuXzhHy1| z5xDEGmpsh$wx?QXowLX#KB_IBzp&wF;d)+bRgY=HB1;b>@4D#mv)G4wtCLUSf4Z*{ zqj(MO=AK+o?^Zq5Q<;8x;Q50DxmZsoFEZs%UKh#h@ACo#ju7;yVT0#K-i~+FQK^Ip z+t%+#L?n%r?)pa|Wh|=B5(&dwcc~37lzaiLtxJPSkT=38-DKMU;f9ZH=2Bs9UD@6o zB$~6&46y@v~A#_rY}9IfZ)#yg~Ci*IiSP1=Sv^@Tvf zB~prp$wMcyPxUMA@-Rkm`X(#1a|qR=edvj6{CaOR8HPq~L*po#p zqCknrl+=;iSQRb7OqbAl69}Nw3ES_7zbPEdB!IFc;C$ZB@|uy@=GWZ;a9^#99~MNT zOtPji91~pYhY}Kn717=@qi6#K6_6?SuOxM*(FL>s- zE}q_Krsi9Y>({Luv&Y}1&df)z@}dhGUj3^kcYPh39kk>U1qE;psDO*(?y5sh7%1|6 z3V)7g#dfI(8i@SRu{Gq#l)RM9+%(8HOvKigY?W=QDMm!lezGBrULe*m zI}G-BUY0b4`e3Pgd6mnL2*gl!fDphmqJlf{Koy%U+ouo&!qXUH;;>vT$%)Wf&@fxf zkCIlfs4`GGNHJNhPs$m?NPmwyi45aZ5k0FQ1xY$ZMiwPQwzjjg((23$^E+CX27xg0 zz~gEQZII_UF|;N-z)(`|{0#*IXaVy(#$$XJmCv$7k-3JQmy_WD!z17MPF|8$EkmvIx7sq+e73~+c#_5K zz8;mwRryYf%bjN58{`0)zpR!^^{O;@SI89v;8E9j`4-4${HdB)<6xZUBSisy9*a)U zEK2*&0=dnv#ZE~;gxZ7}KmkRE4=;+6-=G+FT(JdG6geVer3mmkAXjbxu66eQ2vjKP4MQ8RDlfP*$tLSc>X5V9H1fFm3Tw ziHp{a3y?8dC%B?3btjfP^~{;ot|8WQA6A@c^N%u#^yf@kp3Wzc_u_Fp!j+T1f}|3! zbEtPsv1?@;=b2fj!RoqH6(yC)2-b^gc+R(!PNdr-+@@b})LgOuYEnRkG`9wX7ZZ_* zk_2s^FM6eGXYgX0+2+(9kXgT#*>u#R_aZO<*{7LT2d7*oyI4nYzRDJ)&c3cr|3@8v zpC*KtCdS7a0(@0Bsvaca0-|J9Vf6w-mKnFU!J%tdb{{sSU&|WHEG^n2rH|7UN^K3M zrao0I9)dRBzD)g{<^K1Vs9;BGP}LY6WO!m6OFFskK1mS|(tKb-T*V-$vPk-HL2&xY z;VYdUA$0D@K9>T(hi#_~UnHlYLx_47DViN}q+9q9_~5>f;VokQOPV?jLgd7tVZ6Gx zD2**bBz^dh+TgyG;Vo?aON_d=9L*I%B!2ji+~7XC_w?017d21E-cjU9a&aWNYfrWs z-|Up4Obqv!4*4%E7dpGfjGdSZH?BIrS^tkjxC^~9awU1B`+h1xQ=5-rwW zSeHPb|F{>q3?;7_KmhcJe zbKa1_W^NRi_88~EEoW<}+6kFVgejy?#d7t^uhL|Wj)R8iSlsN?9 zSeHuVO+S2KHg^8H91B9Q-4(wtM)+^k+rQqIzq43;@5?`9Mx!wyos~rzD!#tbr;Q25 zLIH>g6a<8>f=GUFkdS~7wT~hY6zm$`CBjIX_TwN70&_a^y8Ut;LcSgK%p*tuQQ&c1 zLRE+7S$@;ianV8DQc+8_cKPB@9JtBxpjTO1T2lG`eN-j}j^J?u0C2)w-XOgj2j*Vh z5WUa9!NjcPqx(|`17gVJ8H%B@GDacyk^!I-=mK;CK;Dv^>~cuMglsU(!4dD0_em2$ zC4$a!#_Vz^noI9-NMc~of*FC>L)ixa7;(lNaOg_snh!v_riGOQWs&rb;mGZA%!MR! zXamBQpRqBQroZf{r3~%^9+-gm~cGbIR_i_twj+)9iC3 zAF#wMaH2V7^*NA@XyBMR@nj$1?0G?sw6oD1shfsEAr?Vpjnroyc*j6%`LT zj#zQ(j@)|2^qjna$FSRP4&RE#usd|6AJF319l2wVT;kZBv;`jE;#?oPqmOiQx;nlS zk9cuxPu%jwJUeZU-2%qIJ8lj+u#bdtTID`Cvs$%sv{0R}xa^o4rWH);g1l;!s;dw;$tmzgrb7?o`5FDuM zHvtpW_M>cl%M^ie;rDZh88L-LVk$vdu|L^9nX2c9s7q1x90Z*!`=78v@MttU3TqJb zKfu4=oBj1Ugy$_#6UQoz?Zg=@14SEK19|S*2#bn7=Bwh442V%`m^Vq7EFlof4epD+(qlVAk zvbM1;YF~rk+J$vr@V`C)hkHlhD>kXWu&fE|89w?+zneP<7u4|K%z*O}Z-0!;1hLZ# z4(G1-v+#zt|Hjp=jg{NDsWZ@)N`@GEs71OO(5)$;1nItuMx2%+-rw z))r(yS7Dd>=1z zH*~}teqw>8qlYsUvB~o`STP zRmEe7Y`XOZ1sYwwZMI(oEyr@tA_%pgXl(~sL!&bd&iTunXz*l~HeJZ9bjqK9H?~QB zmNV#VJJNZU6C!jaHA!{OfvBJK7&1BS-E&3zJ|N23c#f@My*ls&vMD^d8W5kdkkrOG zQL$q`V2VXZn5X&??9E(`;Bfl!Va@|@LA%_d#@U~fhIx($IXQDQqmn_PIJ{yqSY=|; zpgR1V=9-#D+pGaS(>y#pB_m9g%Idudnv|p^PZi`B?s3$SR$_RD%%W)lYsql{8Fb_t zn_VKhzX%0G%Uzzqq)WJuJCSW`d&wY<#%M;SS%D++5+r*+Uxa=$BHPMBzqXU&p{0P0 z>Ic(;scmQYJ;c3dPpeTmx46eK>t#q!cZXqmdi&;PoXDX__&Wt-FhnOpsiiLUJ^5mC z8plq*5{3hI>VDsfK%p3X?~>0ujCBp;$PjLIHs!ifA}dWSFp;NI@mhoJ#y@ zg}Ac{NsFarQW_d*5I>}JTEJ`L@ zP}(8s@Su76A<3hJh{mLtN&d_F0Ne}Gr$}TKeC~^BI{xS$T4_Vev@r*52!_hbZz0hO zQRiL1TXO8ri{3B5EqYgnxpekC;Mj0E&Duc!7wb_kzWSYPESQK$pEhb5u8KuTJEK`z ztjw`S-%I%5Uz)Dm<$QKV6-(De(~_j0n8v06>?(IoDJhF8YRWV8vNEWd(NirRLN-@* zrAv5zA>3&lEx9FgPwrn1)(?@IJE^|C&%a6>P@Aoi%6+qk5DaS`7hA)$W^rLU&aSNV z=sQZr`#epRVfqrbqElMBly^DgdaoVuOZzYzbe!SNJ*YBZ{M4IN4h?{s^#aV;h7&{2 z)2aOG8P`yUUSa&C+Em!)oM(nZiJ}SH1z8kPg}4$B;1*jK*gF<+nGVaC>gc$z$TT~D z_DC9wd#{cZsle<-S|=Ywu_Ct8vy>S$29SbSKWMOWS!Tp8%*VGn*xn7urMey0LKUpZ zO(A4^_nO!!I%ld*2$W~B1?A|a=PdYcDMEP|R&pz&LSWr{i((fukQm9mML#Pkk-pJ& z1bYMCPGcBR7I!^b6&0lzn$~b-fh#*^}59-Ye0FF`HhaishHGDm-Bg2gaKjvX)XjI zGGs$5(%csdM7e|lZy1|$WxP{}Ll%xRN=@IsP6*>2y`ZgM!OQ}o@0WTo=LMq50-ztD z7VeRhQv<7=d$Ic%u3eyKy-e_x+9$~K-47s>z~u{^p-om>u#CPbFfLN#sT_AlLosPlEGj9(1b6K%dWb?{ z?ZHm6VPJB4M+1EZwqnqzu!@Yx{$&?aYBFS5vag(c%bRCH^;*YkJkGt54*CkeWqjBj!tx<+<(6$)(l2!;o;+wl5kiv zqX?D2cJY()46{GC$~Npb&_?%^?jswe!Q8KoI&*@?E&&YD*ly(#%@H=u2RdmE-` zUv(VZh5^{z(X0gAEc=2p0QMLlxCCBt9EFJHF!PPaG4qWC%?~?dW|0Y!b9>W>6g`|1 zlFlch%rFH;H%F|ZRo5TdZ>;zXFd?aifRQ# z*}`^#24~Yjw_EmtYFGG;+NZ9ru*@4hGT%Z$1 z@E<+Ane2%g3Gf;TF`@Ng&;+T_1h8a-X|Uw_FpZCXtEX3&5FtM@sPIehw}Z=;Z^I*F zGnIvrp;pQ^L(6V~kwbZF)~8%84r?$j7<;%pb@Q*@ob@`uMfEaaL>}2Q(fyRJA}EB; zhoBx~;H|B`qaq$?0@CfHqOSdJr)D}<$gwdVrF2QemhehRn+QAQXjEN=((Id|Tgl3} zryVSM60DTF2yF9>iXniu$4U>dr4f_?1(Bb2t!J?%lqOJL_!kss|GIV#(BysMyIo&k zZyPXT&&(5;+9%M3qdQ2w3!y8a8q?ouDr^IrB#x~UzhOK!lR(N(8@@ogly};w16$$S zQ7N!+(uTGFfTR{Ell$9p*R#BmkW!YO*nHuny`r&#O99jV#Wql$iK?hr6ICqNc7mIL zms&(6^G~+KuPmfQL5(!K9P#@QZ;_g?PGBYpK1|P1agH!C=9Rit>IcktH<~KIn7Xc9TkmMUM|Eqbv#PYsr<0Vyn{CNrsg$hLs2gdL)Ay zCrF>AY$|b$)TCeh7FCp8>JTf?d!&Ny<)dRv@rhvRiOeRlDaeO^G(Zj>8zI*pQ9+O& zl0k6)aDs%M*#-ujbjnj z6PYcqC36qBYRpna6aAexRTUUtan{OD6-VcW8rPYTh+;S05~)*-*a;P(6FgYcZ>WaY zUfJxZ_WQ7gi$>%ExZM1gaubb3TDf_&ymO6wlK=&m90iva1(zO`CLyX00cv&9Ub}oq zsYZxdAwc3gL)~`|KYN zI$U|;bjb6mkb7b#BSnow7U8nafZ%g0279Ohl(lv-!G#^rS)wx>Y z+}Ow5*rq^5ArN!{PI5djy>i!@XEf=tjLSPCM3A|QQ`|hmw&B1{VkRE&)U9`7cTE$yI%MgGDmNG zh$q)myShafLt_;#W z7aGjgMun;*)CNb@L8?{d<=&D;GPcC#It^>o%&FxDPHS?lQP+COmQa=Y5shf3tZMm$ zHAxc^ZZQdyXh|^UB!+NyhfNDjoG(FBp(4^!l9gV4gaj+KE_Mg>CbcVl^Z7z6B z;5Uk#>!-%~T2wqTbP9AQuN3G_o-5Sq-WIvnWFG}uqbrO&$8VO@!i!d?rPQ8Z0 z%ybtwBqUUk$ZvX?OUj%uO-(B;g|$4b3j?ca-b1Kc|doH*i7)p#adsw(D`&_stt0jA$u(1p zD|6H`%LkQ??gB$AMIYHvLovZyE5y} zxN9PmY++(~xp$&NdQWEkoWf0J@krZtO-(9rHb<*#yV{_X%`B!+mqH9 zD#tbpgGg9PcMJ#)MS^w5*kOndkP5EfB}8k)w=kugm}1<98T%z>31o0YEC?G$Af^*y zVE`%dJgWy*69)zo5zA}tKR9b`06a>QP-uG<=!PGVa{g-6*Gzqet(!09R?P?@?d z2vd=kfOJP*&v{oSGm!QrY3P>izk&G@Y^7c2{`60DIK#S~C&rT_sxkmh-E#!yAB=^0 z$Dqf2f%LW9HG66I*Be#GFSH0IGVo+?Ua#a&?r53-*Ox)I()4j0wAmWYUAuo+`HpmE)x zcXLu#mtA%SCl|p~W2Ox>=!iKZrKIzx&Beo>@ic6kW8vn(7aJ{TU^*x{$!JNeJ4hj) ztd`);$qK47w_lW83%97Ng70gD?Kni0y@bvT$W5>dD{z>|$3APaH?QI*t*T-;U_t>w zOkCBSzuR8_c|0Jhr zaou?L**!gXjzzUHQzA@y5z9@C2iUI{KN9v8*Q^4F#K31*R(h=D7K(eYUhly0iDvZ9 z9w**HN@J~xM+{5Z-WYQ_Nh}uQUQ_*N!W%iT-!L`UXFw0yMyw|AeD~Fg6M1&b=-n&! z6kc${G+KF3(5qKDFssybCD^CGAChGtf`wB<;#5v}f7r=b1)bKmJd`15=c4FwR-!aS z;27Eg>Du6W&_Q?qtYat%&cRwe--S6`j%jwt(VdEc0?( zA6v*iw=&JM6)VBM^y^Xed=CY=`_1xC55YDPM^4}&&q!I;c-wh$?3s#!ZAD?#ypkij zA#d|2;mL#4Gd*rCsGzZmxQS&4xot+&J?1}J=|R<)S`lFVAJun?5Q9p#DR1LZ7_Q$l zAHk7ynr&}7rFJ+FArv~(i6hbkI>4r4eV zxr#%$U+(E!tDHSIV-Ev}(4m^5QwFek4muGb&{>XCdvigQAki9YRF6TrGq$%*3#fkfGXKcz@nhYlU90EMSVW5VN)9MH@;$=fT! zd%|=4xFo0VD@?0bzGUfC=YzkDM5SEGdSbtiM?>GASwc@>I>2IE#8ebQ<-|c5n&@Ue z{`ti_;FDJeU(T7;fWL&OqRCcl5^@Ol)cv)qToZy>G4Xl|j&>j31JbM>p=8gc=3=f- z)sh!)VAJnf)mzO0-C38gezIp<)lYnv9|Qd&Yte^zr8lhEHNNs<)fRU8`&Q4H!o)j3 zXq!1$SpOTQj^90Y$4dS>okNw)RsQO+XkTAfH@4S=Yw~a)9*olAfUo-Y5Fv~gSz_3? zJ5>@G`GG(aE^)LwFTn_uwf&oz$L&XVmk)jFIM5ID5nB)k#$VS3shOvG@M@`bU2OG1 zo|M@+RGAIgJeLk2?k%=JdmRyh4Cn7aT!9MwVI7<%8)`EOF;(S-m7>@E#6&1-VLV zOGLAK+c~pR#foA>)lti<63cb6M>6=JmMmDOl94(13qq8Ej_n1+X=nCy62%c|i;m{z z(XF$8Xu(-|-J4%SgIYF0Rz)fYSKO)ZsI4&gLpz;9Smaj(j23k7ibPomlS`x)WsDE3 zBBZNy&&#W+uBg6It|4ToSRK|IP~rDcAS-I|CdWrJj@eBYF0jug3$f3UNB}LXf+tW{ zx?xPtCL$5LGqMu#Y1=1itA@g8%x&eL_ZJ1jl#jG)PQ&)8i%;Z-MoJl%K}}3GthSF9 zstuoSaXzr#2yHPb0dp?1s4t*S`l4F7(QQnHwY*mHP zT2lnjl1{lg5>p$oi`tWm*25dQqa3(red+T@|Goigxz+IF#dl}FKWaj*JwWU7*GdL( zr5rJ8Z2)Sew5k_7+waDIrU-0PYsY$~G-}gp2ZX0+)vtBr##6rP=Q|?gDdGtUO%`&O z=8TfNuTmpseg&m9Fggf?lh)-2_OrN-^1Ac0yZM0ycS8>y>s9W^^r}eOTSmdWpUlT7 z?6=E4r{K34F=Njc%@~n)qs7nZCOiEr`0VSi_^!elXfNx#k6VrK@8UbW|3SX}oq^@= zj+t!SywIJ<#fM^@A3X2 z>2x7Dhydr)cz-;#v3B-6bAk?l>*Wv>A5Iul^^+EG1M%X!^d^suF50hx+}mVh%f9LFrfJg*B?DG`_#~cPr2*G-cg^i>Z{%uixXAZBj@+r= z{X=LPk+VIfZ8 z0;y--iDgoy>&@Gm-FsGzdYRJN*wF<+WKK<&G*?tXEJR^}NW@H`th;u)c5zJzfldyi$cTYIy z-}Z#b{>}dW|DmAW4j3#L%*tBC`A;5NjsN1I{QxKv{s$55{QoARg%gUFGj))#)U}M) zRW;NgA`S$iYt%o-zy$e0_2`6jKmYiV*r1r`Z;Jp9ot$EPd|F6hYGkZ$tPf;pn#Ycz zfq|)xp)NoJ#zrtU*bDcaoqP)jbxX5meE*ld@8@4~?VyDkV(#f4ke(H?5Xs_9(qg+*ttKif?Sqy^sqQgNzk zaMjDh9Oi;oMuI{1Dca{L_W$AYpqpvLL}hp=RGjQVGJE$G;;IX+95O}-SrsI?5b4cT z^6(>uoQ;_H8|fc0Ur3TYpWkc4&lAs#IqF81hiQS#Lq{NY@yq-;CV?mVw7dZpt0(+w zjR}5Y^>%kZA+RO1^BcSspA{d-3(v;|*MaA0URNnneE9~1aFb&pbM{@0jAHU%5}Xn~ z=Wyrb%O8cX{#4R0V-nJ)lz*z8jQ-l#tzk^}Fiev!RcyRv?LpSHkCv`*=6MP9%Q zh8Avp#w?DlL)JV}KSJg>a!>b~yoJZmId=Nx7ISz1VS0okh2QoESyE5oSD8&gzk(4Y zq*Hc&a1wPb%DYun3?}9oO2iHHUkAVuEE&D?`?$CM+vEN>clJ&C^Z%l3@k!G9Ruw?_ zOFwE`oz9V#038q%YQABUwqQOW;0Q_5`*cH*O+HX--j=cZRl)m)4ogB9`5&Y$2huu+ zaTjZ3A5-a<@6+k7vVY!YX7m8|SK$f)rJ}r|-lD*xOhhB%O{*AGG2w~L2Z?p7Me1Tk z1dIb#5pGId8-a+#DxF=$dRrSs#fu@esDo^Vsf^P3$|SH`2oY8*R!2}X(Vh(Qd6E!j znZQ*^bt#73qE00I?Vo~8@H1QqoA#f+C4T`Rr28l0dSRdK8MLB8s;L5-ctj+O1MdQWV8R+pSYTJr9XPY8J`F zoKn4H?sU<^>ByBFnP|zG9hs=fogA6y$)Oz+zU%eB@Nkc7TFNG9&mAK>HVf!l|7MO# zw5U@aO)UX^y%3&T@0U9mnuqOYgusb%7e>#Gn;Wn&XJF_=eXAmZu{s}kB4lEai#vbz> zs4aqvdDDA9oqIIcEg0=SZNWaS=b#r%7(50VJ|i8Ufnt`Ss<&u@B`6rfsWY>%f;`Mn zx4>J>pNVYZ&El7cJPx6-^AJk2!VyNxv9PR9diWcm+ws?N!l*VVgJyG|wGVKm>n!kCZ+$k0HBYgH(Dn`kv1n z0U;Z@U)!1ZLZB6%$ z1#(+`x-K!JdW5r1kKNfzUeM?!eRNt2$$U`S9LbWnBVWdpJ%!auQ%AOb#ARdN#+I@y zjAQ3iRa+%Jis|n~jp4`NbfLGgx-pQF#Ws z12Q5eG6u^0gVhjF!;IoeN?oe#W+S$ltvGqTX-evld<|mCdbn$~1EsY2vUQ_ZQsv6q zwv;gt&yLQ{38@ls^KFLcv!XKX8H$i<4OKQ9D@e%sERa~F=(Jmx(uw-&R+TM0=IXN| zw(|8qC1i&&XXVN@=Jj~>X)AMH9ONu+pvjzKVk7Lv8dRZPIQ6)GN(^_;Pt4J_Ra~KG z#_{Z_^{l236^5>x(oP{Y`xbLYthBazD&uWg$SO7*kGieOTL`80HHl|km{a0Www58; z^p0@8-CD5TE9#IA6>T;lFYPZo0ZN;8N3C$m-y%sJPXsQ(czK2+>GwDrRJH=>t2v_B zV&N}43S;p0rB>*uZ)KZcmtiY92tL_mbJ*7Mi213 z2cq@|7T9m1Zii6(S>qgE{Tv_D9X#;?+4L0gnDbkbL8vshUKV_{U_>Mi)w{ayiKZs3 z^3oejP008{HRb>BlXh!!xj!4DU>AwV${=z8A*_${T{3Va{PdZ7# z-#SUajDP7Qb#{J}oMa%_-G~u5T}}(Zt&}4C>rA^Pqa(0D4n6l!OJK zJH43QoxG8cjhtNJ{_K~Cfb%30gN#9bfV_=%Y3U|yYMcPgXMVC0I+d$phL>q)*;Alr zzsNF4B>yN_673Y6I@i~6p!Ih?&a7j4R?XYnc@w3vS!Igz1qpM7Qwd<*V^L*#|lS)cqB*?tE&|N0do|IaJb^!Qef_)oRe zXjKhsWfhE1S+n-m*3=g5r)FA$q?V>pvIZ#U2-+?EamBbJS5Iyj=@U3+H;PCiTY@}_ z0(iRcM-kz85OF9;B1X|@tZ2DzjA;5{45O%T;!h|ZNQawK(nH%*&@g^){ z3v1Xg_MuL#j}NsZ1oAXNN|SguF60LV^SU{c5*tAVF}M zQJZl93txYFtX4&4hMViGN(>>*CG+T@N)2YQF4kCQ^+e~w)+k6g(HJzFdUjSRhpwTP z3PaK%RAya+**0U_QF}5^vwb_hW9&e!FC^(>qq2#DJP~a)q4T>3YP|ULqi%Rti%syw$)_wv)eNaJf z{M|yY_S&-VgF8kWyzIoNyLD~$4TPg6FxJB?#KP2tE@#{AcB6apt z1Eu(*#1y$RPk5;_PqdkHRzgUr0zHFmm=0Y=jG2R|zUi-}>~9=Z9~-)LH7VfD>n)*n2MBII$CBn0!cSoVA3<^c+0u;sX)w*;^z!$KwW* zn+ke)F5~%Sm);1D0pYzWRm95qoQ6czaZV}*x2Ek_wvu9ElgVDLB*ud?MBu|;0}`+TVFy;xc#gPLVyIWk&Ia z1W2t5)-|zP28YLePpu27La`}posML1AMVQm+Q_f{mlK1R3mj}i5Y?E80a11!ME(9a@~%!@R~exg*~5) z*cPns^k~LmLa_uauNQn=_$0;n|C%feWl}xJU_^hH$#Q-I(j`KvH&dmNr0AjPgN@8pYt+Sf zOGehbxCok8>P;WEi!3YT}0fo(=sE;|F3CeqrwA$^JaiQXPn?w)#b zt#rVfqq8^FE;%L2ViKr3Jxv3Q2J#27E6BChp38{AIQ?bdA!~%o@J+y#^uVWH|=%L z7+1Uzk=b@%v6!921Nf|Me9i@a12$h%Ex*0SdukV7;*p*5FL2J!vpX!B6BSqar#kA9 z%KMxnZSJhqsEUoW4G-k|GF3`WRXF|b3FrM$An=eS7tm6um&mLyvXjoL-~4IgUja_S z2r2=7cEKS-f?|;rqM;N+YzF$V7_mNvM4`o`>@BEQ3=Z2zt1(&6ns8>gq}5kat55&9 zi#qYdBc#5iNHn1T-CgvzMEkFa+5ZPO>i?B!gS4Z?Mg9Z=wa~aiQ?L+-{J#=y3Ge&H zmtEBBf^c|W0RAM05;{lmC+oz|<4ITF6KQVpkAF}&J6MN0fKEhp{v*>y{YRe7w2T2y zWZo~NYeJ+xQb^DsU=8u2)X51LU#h~@O1!%m2-jO9eF&33IIX;$^H90XBkVP{tL6i^u;NhIs^H1sZe`VT4 zD*uj(Lxif23Cz5uP?)2)X9`3`H5dRTylc%f-UxZXWzIj-5u0Z7L41ysDCZH&9Va%S{ z3q}BP~j1I(2$fiV(l!IE-}@1o?6#Xo_i>wLj>e4p3*+>@t_zQBx{-=1>CT7d>yO16{Qzm2iPMs9s zjxL}8eFaSMi}Er#4B?hvs&(*U0rC#Y0_>iH^ObcT(&mVuBMyS*K0uLB)p|6H{QJHz2;S2X zDp4em=NAn+lIpL6qzA_!gdA=guBy@_CR)=h->N^@i+ClDpP1VWLD4@MC_NaP*tsT z&ippjjD`~=y0NJAD1O@iu%B||A0)nC>Bm4fs7A;01tfg}MTztaIVsF^ic`avl8;w| zwZS3Xm#ZgHAbf(vv%}n`7NitfuPC7`AV@|ia=|gwGJLPoBI(j93T2#Q!HD!a;NFO9 z#q!*?5VziudGAw?I}&Z~R7>sZxOgj}u`iwsP+p6sZzOOt8TK*AC4;pt5J~Ls&VGjA zOE?|K)uXGJ=+sZO>J}1D)TxH)q3iVLXKh!c+cnJSg3K+NsJ8)e>A4x?W^IQNfj9SG z2RWEzJH?Cj!zc9o$>$kG=^4=YfYSJYbKm4|^#HVTMvCJZ-1&e7e+HW~XS%hBt1{iW zhLi>+J0tYV}_t zd5TIb9IXF^qJsR^>_X*ZPd84HZnU#mwsq#xnJ=N1fwW0!Ss=3!pC_fvt4&XJK0TDl z@{oX}tBRl?$SVtmDiBW=F(;I;NG>2i5$^NZ`GNS1iYWiU@20!m<-x3!;eEg3HvM+p zev;#L)&9);wj4eZRwkf*ktp=)2RUEQpZqXiE(=-@{HX-72t?3W@l(6@;W)NV29g}Si$vNmwqWo=c!8+~U_yLCfI@^q zh*c4Wr4+ZbmY!>*l5-JEA&wzXrDYGZo{WjrGvmlA1?!ZSJWYU!=*vNTMCskf_)HyE~#y~(sk>yC4?VJg0K_$d@ zyTNEq#=rzZu_y0hw2ZE-+ejSS20{eOc*KKpD|42=2(m(IpfL(YQ`TBog)xD;>{L=p zJT$N-4G%M%|2T$XE{+dwOP|Bho&!mFFBT6=wHVzNmpSS(HfWAtF2e>B7e~1;&2cl` zqCT&*(nosfAx2(WjdhuXdl@zSTmppS7%#?r0kKLpM^w>UAiJ;I4o6AQz(fxN&lAWU zU$H-bg24CXF*v;)NB8qtuJ7jjl}rd~P?ReyasCfuZygn9mu-6o2<`+YxVyW%yB8AN z-QC^Y-66QUy9IX*1lQpHRo?Et=l%Me)A!aGHA?<_YOJUBUTgp6oFg{Q0>QqSJ19iK zSKz{RPR|hvG@6Ta9gxL)5+6)(88T*AhvuqQsW|8IL&g)z|%v-0bh&ntH;ZrFKroHD7VW`~%98@FyWj~fS& zbRAKlT?yFd_d5(66=Ut5!F%dt#8w^V{CH>{OeH19RBhcs8+`Cjpn#yGL%Hs@@sYWR zK;EpV*#>d-zOJ%Q0MrJ0(VxL!HcM%kT4S_&K6^-mx4Hpx(Xp~)C1esQF3}R%(#$8-1 zR4mB^8+qu=XC0egXQ-yjRhvkLHsjL5o?T_ddRVd}86IOmvegMBoT3(sKBexsToMIn3(aQxOV5bNfq%zG1dhebb1Q>HFxgltHD&Qku<*UvNEB6*9FU z8ncYKb3!9oVWAqVW%@4wKN4FEvAnzy3s;^E%vhnA3t$}5FBPxEvWrD9Q5UxS?>y|+0vN({1tn7Z$71X3_rx-*CzKnCPsaKi`-orc$at*kTYz^A| zB%DUrf2He@o4VB}e_3kT=|rp(8^nZIi+eD8jP`w1IG6EEj+Tv!DL|(XLW_7{fLm;# zte+(@mf71=q=sGd?4?+jYtZqH!@HkyNsq{Y_TEzfM>quhG+H`bIqMYdG|iKG^Jj7F zY?H>Ed5k7(ms1+8DCGf~tU;H0*2v7H9p3;%NHiQRTos%(+&NsP+m6G_F~9fn82%!H zS$rU%i-!8N)1YCcAL%Nh$^a)<@0bdbjDo9^Md;EYLat_o&IOpSCLDE=ZzpU^GFNW4 zH*ZX00=-Zbi`gz3tA5LLX0$R?o2ic|j4#YTpc?`Ua?9C1BAsjMmXUbQ zLZ8R&QSMXzb&Q(sCq?XU>frm`ann06)p)peh5$^WwW2w5o@yv(RWY=C!cd0-8~DaOvju1y?Ai1)bz$Jj{%)s zu(tBECLUQ_N2=|9Da2vXw>Gyfy-S`V=((hBOstPOa_XPll~~Qd*S>xbv+NN%K5Ca+ zLFh`V7w4m|l~?tCKgK3jS*L*f5OIF5ILTldL7n=oZm&|oNx}Lxi7BXrg>h4pA+R+u zlZ!I9SsD5~PwJ!qAY-<64Uhp3%{QiMdi4GzC~;SF-e_Nd>!mFGgBuxcj#rkbeY9JG-gNnUOVng*QRwOym{cD-^6Jl@M4GuQ zo9Th(4BX4Pypj!H_}uqzZ3IYcgAU@_@U)`4cuP-QDu7v-59)+|tB;&y=F`aI++vQA zhq808K~)avKiTsSr!?ZVkOH*K*?5qhGC8*gEoA06@5{e}ZsnNll9~Hwdtkb)+&0f& zx$t#X8Q3VLxyy%an2+_^%oeDh`j9u2L_7b9*6dG6o^1&8Lf5nHzxS1vN{ zWSh_&;4EOtbOmO`5bsMIGl9G|aw^`FNqYoJa-D7QfY{~)9aJ}Nah#RpLimt%9m8}S z*9_b`&Ump^{ds>FALNQN7Pg*k6+6lnN$;Wb9&r7xTiEr(?2>&AGU`6kF8+l#ty4a~ zPd!}LQKmXm^`_QorNW&=G|)De1b#Njeg(Hwd~Y6YS>FVq@uI>r{6h}sWj$~kyG~mT;U`C^UAscu1*zHZDct7)BUCRa{2MDnV%` zF;Ubw5tkxu9!bb5Wu8q~6*p%f44^DtD;zOflmu+Di&{o3%gwcwb)1rwhqI4L0=7c~ zPuPe_zn30$o*%8hCdn)wkjBnEX(o*#MOXOM>^^$qj$GnE4P|m%y+_)0ih37>L5MQK zhbzsAVns*5v`eWJSWFdUilA-MSR5fJO1nmQw11l{fgIH4B0QLtv`5HBhdsioi_=B* z@sOk`Sq73&DAJ54&|K!IM|6gVFF)UZWf#Gx%?>NSi+)*%@|1wx76y=qor0W5WLn=u zCaVyrDN^!bpAKOI2$nL;Ye9PG(~b2C6(LNX!Er+BO3Mgr8nRV=I(Es%kx!wwJynP@ z%9U!{=!tI<*)v0BRd7pXJFG{7%s}{3;(IuQw;_0v<9kShd!QfP#C!;Xd$1mpqh6~h zUuk=5O!jT1cOm`cjrLuOu3A8ICr2-3c5T6YXo-D2VS2zGRm9$7P<_ZxM(4#AIjl=$ zGvnEky*!+r8cL5q_YK*7c)ez`%{#8b@r-2Y-3R5yF*?dL&PrhFAderT%x6uLbm)1~ z!-c`1S1hTQ9(AX`VC)&((u}(_p8;JnFO>J2ze%3ZwB#NdIXlj>A7zSddvw~@PWP0x zn?z`v&cC>O^c`h$kd=(Ov+4ARZnNFHWZOSEJb!;yjYs@BFRN|0}H6M%B^y-zFl)@_kYRK(uh4C0f?-dleC$=lAe-54Fy)00osY z5BWV5wG*+W=w~gwqMg1!_Gzo4XZbV@o$f%YaPlvv&_5cJ(8HRg?qJ3v$R`MdkkZ1i zs9C)RfGyoa_L(~|Ptacw%%L$;n+(6DKUF;&c9hRDyc($jSlI6>0 z{1Tlnu;grf7ToQfVrm=gRbMgpGR@Klvjz;({oVuw0pM)pz@4Qy#u96b#3(j6_6`VF4GNzycttM zrLqz6rua23_8amPq%m8y0cdEDjF^3173(8bH;lyryoRD;e{?RehZ-T$6fbP z;3Zs#{#*jSs+nIPYrawhh!a271z=^?ryLud_vru~i&4#Zffiw>^B#P*`)G}Kr_DKX zILCO@>UI!cVT@5HsT^Klj4-gd{5)Cfsk_xdfOs`axnSIS8SEVefT^ndBFP*wM5~Jw8 zr2&Vxl=&^EK7)73tG-?6TIy`snyH()bY+1IRpXj%bHPe$=t$TwUkiDcZSJrD|B@g! z&6qw7g;%J@W~woNq;HZL3SauH5))2;Cvt30P$!F8&9%abR`1`b0O&fcn3pI>v={JM`WJq zdb?E9mF8*Cu)!ai%X>L;-s4NZ?%6%bC+1k@x4Oc{jc-u!6V30`(2XYTF74Pd4dKRg z#2j2dofx>ImwV2dlW#Q$OWBv?NP%DJOTHd`BCKv+6(j2yfjZ04H^y}|EBf(Un)B;6 zVZW?sb1F&*vk`#Lpv;5GeE%j=o$i}l)%B;f))pQ%1_RCxxDgqL!wjP}NDOBJt=hz4 zF=dpZCmgvH*s9$ox9pIHTGc*#dJt#PTWEM*j>J#yPCJWN9=8@NBy4Q3$6tPnbxID% zUloPuFrW>3^J-Oj5vCTB5jXK=j@=@|IrX)m%$Pq?Hj7;`*L^sGXYJH!sy((s9;EHVj6l6oI+*EU^S^Sl@RLAs)o)ncGl56OjfBG@9#LlE%fd`K&QH1$UV@FMug01}2PS$yi#FN8C~o zt||v^ZD(dOrgtheZSza#$TWx2FHYTFhH0U9Zt&lFaat<|#NNY3vRYsU+lfII-kQgL zEkj4O8|Lz(1Z~9ElK6rF?aYZERAn29KCGs#gE+y|ND=bs>@oAtvw}txf4B!u67PkP z3GIbJD}H%hNRy!9{%rkK%3zhl>=@kk!HXmD}t2+ z-c%2=xPQYjre5MxZUaha5BnZ%(a-g|uV^uM;elm6O-3bs#yOJDYDcUhg@UtFMcna~ zgxEN+VF+<0dXHnrdlbH*lafv{dFJaB3$o;LdM2A11%c4e(QR7Tn9dC~Mtnp?>!aME z8x8ph>w`xoOw%r6fGFktP&f1(acMI#mLY_^;wEQM>t9I~7rRGcOrO99np!3+>V|ew z2u0)B0P))<4%0(65mXW{hQs)@zLV{S*-rcy01EgS_O(l#bAy8CuBj^)#9$+ z%hnSuE8J35obX|3yK`g=?Dh@KMr1UYq(K*QWR>(X_VZRzu`02CB4vfK%Gm!G7jhm<)|TT8VLMxj0QJk2R{(0q<)qe^e+Ofm*O$Kb-og4cUN zUQQvaJ!N`2V!+hJm;J{B&0uLo9On` z+zYNE6jr|mNb9rE$pZi91y|uC0YtL z|CMTMuANd{6Iyoyymh#0n1WA}sbS%*zj?9U0_8h-9T^n;2%~glo9Od;lg+UYOpOa7 z#o&4adX2+kjq$VKG#~}(AFpElcMIcNc)4UKUSqp{Rlxk0~BxFzEtrf6X}4!e~MDvseJ z$UD>*Uq4?#Uf164tiKN6bRWDPrXRMyA$}TUEc}Tn2bs4U6@hmfQ7mtKQ#sR5HND$8 z^9+uTyymA-z&GfHNkTDQp$bP1wYCwV6QT9wX5r?NfRyHI#{Ip-(3sO?yq*^5EF84} z0lz^a(ePxPi0hbQy+u()n;slIsT6};u4j@0y)`Njk*B*knsFMF+!Dz*2<@2ty27Tbjlh@Y8>%0m>!4q+_NN0o%<;$p#+cxEWk z|C-7o1J(NF9Gi@>SRY$bsI2{(!I#prYk!ivbBtBUkvOl|YMo~CfN7{elcX{H-NwOM z0ZmqY*b&kMuwcP1q)e8{8aZ?|BVmv>qcoDw?M14`68{*x5Aaob%-rm5i|Rt@$+1^! z`;}n~E2n%n1c$6$HypI6rv8lokeqfc5>OK|i~&RN6+^qh%HPfC9e}k*RC(7oK%Xbp z<5y7k|^oIR1pzv)oN z;tF4&F!^@FosS)`Dt4FO7NN<~tY?VvJ{SWUgMBeD`Vp5X{6v> zq-7>gju*sM_5U{o6pfm)Uc?^-)cEb+6i{lBfx%MJOpdpTs11xv3``6ljLb8~Q8ZC- zG;oy!=wLW;Mh1G2z?&Ho>L#>HIT_d~E&`wb`_28g)NA0){eQ0UAMK*`zo%ZWKSOJs zQ~i~C{fn5ePe_k29;dz$ryiaTA{F~1k(~_X3;kbmK5k_q%lSy&8@|IVPM`$p_5J1s z;}h76q{uaiKU9uX19>#^Km%qDY^9pa#Md<5hAoCzY*i3N42e|oE%NRA*Bss)PVDbc z{xS`gP3=oNWm?}=*8@*FQtos^gg^nSClcj~YFyTo1EBdXIu%f=ZA7X`6`ILZVv9;t za;nNyg3d)QB;Y@%uFJWy;P1jmrVqi%vK&Wls_5~{3vIQ3+#!NH1P_m9VqFZDrH)sP zE%28;ybR?CwDNEo{{#%&W$mqo<}){)?WW}{j9!1AkOJh7wy7U!=ZJj!=x?ziTTP!V zA(xvH9zN06f2w`UKgHE;gqm;T|YdMT=Q%V;Wn27G-SChyL(k(a*!6Dv_ zwWGBk{b`$Q6Z(pbf4b&&$>105D0yEN?nYskJXaBaKWpjbyWh->W6-UY8-nb17V)cW zHz!Y=eX?r7=3yoM%7^s*L&R*TTVq-BA=SR}d=K&K-S$$MLwAXHR6knz+OLI{#vy8D z;Z$W=fDU}i3&x+~38VZr@PALe{@cjr519Q|_1HLD|G~3u9sXHDO0u><6`gk`hy7kj z5j;F8?JX?DlbPip2uM|{h^W990ji46?BuHu>eB!RD-|DP3G{||>>tr77kcPT?n779S&i`k{h8dWGN2wfqqy6>C(0yC1!dHt^D6}L^IY;t zx8Lklhf>~*Q?eKK-8z%oZX>S=SuzidE6?hoo&Ty-llxJpz10sz-WSam1s9=uG+pk% z6#UW8>|vz|?gkxuq%2E0_~5utGmFB9az8o?3%cR5W)Ru#fbptnZ1%LVr>*hg2x@qi zYa2nN3Vg1+4JQ7_H>D^PL**1syf3K7&nMfArtOL$T`d*F3a{Iw@Kqv}CUd0^e#Ug; zMLAz2u78D>U+|E{o7zO!!(iym+!#zwG63>1ZqwIH!(y+QA{x>21(J8LnK2kMdlA!? zxz~BbPK<9n&p#jIr`^KN~Q*3neqkpH0_`xbVH!qn)h z(KW$;il=6uyGW}hT^Y@x+VAd})sUp{9waF@P=>gj=yGN`n0c@-YE|nQ-nnMGqjo0# zIs|kG65%B@NKHl`%6y@g$0{_H$*`(i#y(x z4AKRLO@G{Ca5krTTQv(zi>d^Us+7t2O@r6-&S2y;rc>bHidz8%IFl9E^1pxHI`&dB ze2)n$cy>4IoMp0Jxz;7r=AU0%@#vnxg|R^w_Ge9Iz&7tui{-;92qh-?PH@?7$hJv* zhqxBT(7_jyZ^ES(cy7nZj@j%1S9*IyKG5b159Cy7#Fj7{@8CQBjMXQgLGokYr#>$cA^DTc4S#n z<|NW<81r{-21P5@Z{bFjXay3z;*m@nNRv#BYLdFCa3ko~F{+&dgb`zf{h6gCI=vk- zZAX|>z2ZM=*L>@JIJxTA`1^B|x)@H&kZ_1~p>v zzRn2@2aI%{G1kB_RC}~V;_YRm)_pE%T;_cZdGJ+!Cw@rrjbpDBu5J5;&!VFFBwL>B zI`<|vkV~n?>4?Z8sj1GicTei?ocOabm@gU0Gx&%t<^dbjohqog70xKwCKTDr)yz3B z@*Cwl>D&-+<V{{yCq46P#O|`qNvV3)Ee<={+;^HQE%LW%SyAYp4{-ku z_$ykafPrKj;~|QUmFd{cwhMfF*S3MQ(#bNFCi{ z!>3e3;ZCmW#o8{)HLsL{J)I)K4MW1s<78bP|D^%Di& z26Jh2P)WCAj539D$U#tqwGe?j*zxG7qX3Jw(8l->g(8sogO!r%fsHt_QOm@- zO33(5Hx<>ofIn!DqeQ4;bt_&tS^JYBDf*mv9}b*20)lt|)!B^jK!tXfz)1Da7b5*h z`Xq}?aR|so%;t0kqXe3ZV+-y)3lC3<>hIW&7PMl{q6Qx043kutF=mN;nKqjO5&VQ4 z!RK2}0?@(9UHTe_2zoq4LBgp4qj$6`;j)#8{w;zE!8LCvzx?Kq)Ee_4+z5)`s|-QJ zBR4ecJtdS|V&N`T4ZA|>n}xwFR1ifQTa_#Q^hhc!G;axnhJ-6}usbcb1A-_jTZT%Y z`YH2k>PJh4%SaGrgL2!G(wL%p|6+Tt|FAs>WxVD@!5Vp*SkNxi9{p(kpKBK3Sd@89 zDq#hjv3BW(A~KP$Q^HC{h;|W<@k8b5G`N!VE1|w{h(e&q2>z-V<~vh^RMBX`BI}d3 z(_ujUF<1jLq^xP};GuvW<5bgIP!2j(*jZI^?(i@+yEV37DI1mM5e=ezc{b>lxhNxC z!k)hL#5XX-HZWzZ^k829y}p{8HLxnVTq8NmdyJqfgvJ6JN@0xjbu+yre( zodneueI_LDKDUTOIEx~AoAo`E=*nW8FApr_{RtRRl-m0dUrGfe(LpgV!Ui`$FG}Qw zBETyuIpZZ3G*p)e%5K5;5u}pzX4INaye~DH-PAN?aAOFnl*rZ0ka<}+*2HW%10XiU_X}lv;168F6LQDVt7~LMaz7iS=!1C8=Alm#CH}5cKpB z29LcwnR20m1_E$cV}iB(>|bmD)apq@TnFOpC_zSELbGddnZM^09Xf2bAw1wz7s?Vc zl2+1sE7DVaHW{zozj~y5O1fgc6OY$`RO^5_Wg~w`yg)Gvk#z+H3-2PTf-!hV z#(iUbo!Fy`a>xb$_Y7|5NbKxLwgDO&q1uh71h=0y%o0v4LaD|cvZdxdTl=bT%N%Q2 zSt66k)Xj|k5^7ot$WZp z%N8eo*DVn@huvU;;?=2I?J=e664vt0UgT4Bty6OG7<3#Bz7b$x9DBq7OIPw)NgdAoU z3H~5wo}WVZmr#fljTq^fjsCf`l<>L%R00I=Oz+^dCsi1J2)& zp3kG`#gfhK`z^5Sx$L)}F@&zfXMO#?9wDD!%g3$zM!>wxTu05K-bS{5;}Ii$FL$KJ zDJ*|SS;kC$#x+zq_<>sp1V%%oLbM?uh0%n&w|ndYDn`uK6x;TTd*M~!v_nYQ`w6Wd zE4PIkc2mIZhES}0v6`DRstX;DbiKs*MYWF1ElQVzJ@CzwpGbRqD56E^PkAK4zkh;uH^->>64XCbDAbyB2ziwr$!Hj&C zeehhRW<5&+xBzn(m2);OoXQAKia<{ah^z{t+RHOM%3?fZ2Tp6zv^`U*7Is}(brSo! z%MsVkIzBz-M->#i%trbzo1oG*L_+v48>7;;L|%aTq*b$vtnZd-H~#XuDN|2so=@WLb#+Qs$2V#tup^Y7WEH0;Q=Hl7)5~A0?);5{(J6K@gqhL`Z+F zXoq5-30}xCv{_nKUE?(Td6D0I-p)PZ#&(cUl7?G$eAjh>&417N%cfPBEPLg|SW~78 z+7-GZ#_F$X^nhF}Js2OyQFM7!O6LyqX&S4*;+wa&Jr-v3L@k?3F}L4jb{7nLb&DM9 z4V|uvtm64|m%(6;*N##1mBcD;Q6{O=Sfy=}I>}5!wtbUY$nont0qf>uo8hzEQ*UI2 zjB+<;TAXm5)WSQ%=G{8Ccsu&@YX}2tZM91iO9#*TX2$J(-Ea{2efuwZS8ri&11yj= znu58bXRY8aBe;PfdpjH1jGJ=?tPq_ew?o>(PB4*MvT~3#l9>*mkCKjsRW5tp1hjU#avv|F?7KG~s}dkX%-DUra8K*$uIh-4Ado!|Nw&S8u981K({={_j-A;p zgtmw;vSBD2N@$5QGic?!B#0Oa=~6ulFT+$kWBzsDol_xjpn6DS6m!10_-Ey z?qz2x<`(xFA)H;$IjZ)+93qw;b_?3)CB`zKxlFkaY&d9@od?DaBA0fJBCq|W{==%mt2_NG$7j~Hkl7J zK;R_-0zHhma^c`kVvom~bz!#$vVxL^qZntQSt?atj_3<9A%2?uK5ltOv@Ui7cHF zwXDdB7Q{-4@~ejPN{pDwM)MV(dFYL?Xk$zC>T1=YV<_h8te+Vo|gD|7Y7JnZnip%o_<7?tW5XoncFCoY1}(j}(6hz%&_dRSuPWK{v+gjo`Lc^c|HCn4I&Qin+x;8E z-qPTz%v*dqb7V0b9(FOe+|2ZsM(PKSbGhLHiSEwBe5gP`{F6l?`ImFpf43BIPO!C2 zR6rfhl{T-7a&9=^SW2;Jkin9*+FL(HX)&8CvX5pZ8&-#_K_Afbk6f$y*}^b8WyZAq zk{@-5;?%4LmF0`r0~9d4K0e){2q4D9Fku^O3oDDmmV`7TpuuBVjV(8a;KHK|OUk?s zo-kJ;dEF^=Me#3J(4^Nbyb6|W1@oDe& zHfThCGtrM}$hD4swBlais(Q|l``y=0c>H@W^2p+VH>2Y9S$_p za?HrIj#9Y0A#+2d5FS354U%1;1^5G?pSKRHS zFVe^b>bjGgF_%n8#Rj=1*l()2hA5aJ>ix|iA@)3O3_ZCA=A_tF_V2fJ@!;PLA(zAR zjh^4Mx1IO|p91`m{{jqSDh z7`4oF@r1I;vxcvQj5QyWS#sX-4N+;{@GqpaeOeKwSdILr(v3JoL9-87Kk!uU=VY@h>e5 zSt6l-5KUarXDAdhfdu_+Qo>#V6a$o$&n+X9#BefOQOxxIE728AbKuKs?fRCMb?CHt zl1PA5wJLzMwdI3O2cV5}*G?O_8L*7&f&{iDV3af-Ei7|;;rFK!OBkiEb__khHMx43= zvjWTF%pfFjDGbo8t4?7Oq3Oc7E_sR!qKF7~3!{}jV23xL9Rd;J4rdc07V-oKi;2#} z!pPFFM+=7+A{thyG1)bQP&Y`J!nM23l#+ULOMPZgtW$}?QqEiieydPq`%OgkH9%We zR+-pZkQ7_BFd)JsDNvV|r}E+Ck&mPdGs1eHT~v7ow({YH*aFpQ7tQEFoERr?oS+Cq zuq|I-N5Od{k8J}LidEmqI|7^|{>#i~)nYrE`G5or`0rG&j*nplgNw0yBh5L zl_H?e6i%Lj`GLZOJuv*Yy>V2g^fPs>N8JiYd$7f;OS@g3i%@DfjwE#G4=ydSWf@z@ zVJ8*C8Q77^oB3fmw^%l4aKVjkMvaqz19STp0r*gMX``s!HBNJr0#7Y!-R1!y5f0xX5Y`?4mNB>xjXdLOj zZ)<0W|Gr6E`L;J~EmMqg@N?C8ZIAe@A@#$s6V9Z!aryGb8mPqP@I{K=aP-Pfb6knI zP@fzYf-Wf;4c6pU6%-f;u@_@;UU|hZ;i;lGRp&ZXDw4Ly27Z{yocia2u?iQ?4SHO0 zmsI^ZBcW3Y`tJqO)qK}Y^f{5Nb@U}Vdx7SzE@z${i?V_9siQw%A&4g_V>0JSYUWkc zjj~;(Aihl`Mw67(NTjn~7cUr)AMiG1jp@1*0G-<@qzkWk0G4JUW%AkHHmHZ(4}15%YYJR?CLj z)+k?2iII(y8hl+Xt+al>0v-7Q_GhRR;f|L(9!NM^y_@^_X>|h0q-3ZtI1S?oV2SX$ zZ2@Bu+qp_bC)itcQrBg3VO*#}08&Jnc_9zI%Of^xVF!Dv=u<;~YkZiSW9leN<4ze# zv8l#|K<1srSCHI*6Vuri%6JKZXe$Nh#gQlTX@&wZq5*&>Nxzfh&y{fYMlwzxD8rNA zt$>S2_4!pL4bx?#h4lcSzBhn=iR&JMrErTYo|$_=0u}tr(jNFUz(!x>`pK?zv4w@5 zo%m!4n78SvJ;Pmb{G!6U(-5bXrkx=Ya~L#s%}~k_o_Oo6*g)E6w zltLysQO{w9+mpo^v)G+ykI(5TJb;|r&PebDQyAT$Q=3IhT$@GER2#K`mkx$Gs=+46 z6LF3ZBfA7r+bJTZ-7E=VH)8S~PHz~NPRX49M06?DFA~B$HxiVm&nE;7PB4TJB6^o; z%@D&<+n`G0kSLfHKW~8UnL+2g;Pi-M$yV2FeKK>NblMaVC#t-~a(34a(^T@VB{(Fc zIe0Pbk64Dfi@Inzo#y_-0b_I6@(p#<0OPa{b2cLSw*~Piw{P|}UR@+x>Pqj1{G2RZ zdwNXX^Dw80x6>?RbJ2XQbYo;RU0t|7Gf=t*JD?VV5F!^s7h(;!$z$(sp*E7sDLSwQ zLhGdPJ+auNSX!IF1JgsNAU0<&AwyTTmZxr06uBSPFjV>swZl$*3_9dapthVI^+cs{ z*3CQ|(65qyuDXx%CV|Y@TdSpggo44SJqes16vM#`;6dOA<_dz(*td^}J}~i2Q9i)g zZvFPC@io@r5j>1tXri&wJkngLFGDc3u~(LMRE{jIc7GZtrB?GuSv*%KBKB{;7v636 zK;0Q7d_xjzAJpB-2+Zo_`|Vi8uz9$wsAPnaKAxbyj;Bfso0|~Ek5MX!&;^FLSa$L& zAm=)H8YXBdTES>E`vnnu9%}t={Y0-f%%YUCXcJbI zJutC-XWwu=C`$TvCAyf^-68ki0Cx!L=9SM_7!Jn6TIwmkJIku=Tu?uwq$&~pF1ujf zBK!?Dmj9q3d|4N=WeDFjg6$E@dW&ay#Je=(S(zWIfC)$W9@Co>hJsaW@*2{O)N@3x zjIgY5`_+qJCdDp3h1P;`?JM2LADIng6q{M2u-JDj>rt}-G0*hbg7#5#RrzLOrS0(T zbB@>}=<2$e9>_Q7`h4+yNBOvU?--buS^MZ&l7BSiiJQs?U-1elFUDdRsqEK>%NDY^ z#gwteF~_kSu&m(F;GQmqnN>K&<~J@N&DTE5Zo5m#z3J*v_X|QrM=upDi!Cn5HyjgX zgd)+3XrL2*o;bz^2)p{fP*@j?lm+S*!>Va=giY=|~8T;}a@^vS1w>T{}CWr@n=IDYsA-=k}-i+NtjE1cC;my=e>%EonukSh*8 zE!z2wBbAhglgfu;oq?b!V4%&iQ5D-%3*9Utg6zzsxDw4*Ihc2N4u(4OQc1jbxnj5-k&bv9CbN0?O9uyKoeq>oXh*bF zcXjB#8Y~KMeru!1)HtI}i*{z%2|br?Zr3amQZI+`U$~+qHNgjLj{MD-hhA!n)+%Ei z3K!KvpB%4EaY|Q5%CA@!Qzx-XZ%~@YjU&Fr#sLe9B?&cK#92!)ZrAobK>vbO6Rn@ zSm@0T0+;(CZz|K$*yZu*5sMk!5$=Sf1dq7moMUw^Bns@331fU~U&6LlLaTy3b|8~H z@5xHc)~dWD7u1KY;W$EN{zpGhakG&<>m*w7M{$$Oo`5Vbw(29;%=zk(^cy4kl0533 zudr*|tjDO4e3vMeI~i#3z)1^cvB*R5Fjaw-h@i!~XO8`vCN+n|YozUEdaP~L_7h6Y zL|99~nLZv)_som?xXZYmUH4kkIx|3(&n8u$v4Y}A1x7G z;<${EHfc^@*djq`FfOBbpS=j3@|=MrHi->qj)<~~rD#Yg!&XANh-GiV9N-a?awk9Y zI{|I45yjbck)!GW%pqp!cCVm)QDW=_8n7N*cbbz_-fq(;?8Ij)?lr+$0ooly{Rpq! zXG?_o(HH!H-ha(@7m4!PNK-7RDArCsbCd2QG+FQ> z!kdlec$AeUEgufy0cbrIot2;u2fxkGp!iw<-QbhnZGd`Yv$xMa_)5(qep*+sB)$=C z*oa`8z~+-^g;^-3`@+#w`qif{C<1s9R4Izt8gh<9FwF2vdzbnRaFy)iy(}$y0}S^h zXd_lOMyiGtyNgNWOGrNO%HjzqT4{vNwbA~Wss&-)}MS~{}K*3TKH#&t3Ct2dnqxVX{e%15mfLmava+eNm! z`2)9D;aYkDFiP8WO(~{xH}!B_N9(t^hE}-UD;kG3mDTA4BOO?8Iv#zP*{$+qqwh8$ zKC#`lsQ!SxWD{3)_`J~)U9qNvIQ$tz=E;;)J_7G%e0{U&j~?YOKvC+RU*iie;|}@l z{G|V+JNx?^&EDK#2iCJAa|^lzf-VUu_m7!s=7rpsPw*u71rmI-riI;$hAUJwml%Wm zn7-k;P+7fgkJimNJrikdnRJ3$VfRV}{}ADLr?5{`!hiZy`X5C&B>&Z{D;qnQ>s$RF zBIy5xdb;?zP%t_8FY9OXe_>B=dbM_caZls_-TE0qHu&Gbr>`!KdKG`br<1>fPtE@m z`1JHYf=>~)Axde$>sSRo|M$b!zZsqW`&iLWZ)qXq** zJle1=I!TK81-FPgi7o6>y9E(hk=Q9Z8-g+U9Gb4>1BQ5?iLUzha!#nIZo?#)yQ(ol zh-|=lBt@8VY=-TjX|D~|C?aFVrCAcW$ITp*k34;H+TmI=y^WP_0)(PA4Uj&gxdK|m%*G{R-kmK+p z>_%tF?sw4o13xE_iJ(}zT_1B`v;!_iH*=11jSK3o{rP+O$2mMHX{)w=nYfttrOlUBgET)+vk1%|r`m6+NxoRSHHeov_YAj_ zH$`YP)EE>aLNUL4&)#G8@yYN>=yE95c_n_!p19R<+d7nZB2&%iI(Lnl=6yyPv#d(s zaIEc{cz;EMk&Qt@`)mOP;M}u`Th%fpnV^IvID41SKi>ar*k1xV?!_}U33{>d(*__V+^jN;FZ+3n-%pTue0vL> zHC{n&Zph14pFvKw`gn}A^bsRgru9-(#dMS5@>#?8050vVsT zf(uRXtPBRn)6y7>6dFiPvwg$HNXrvZUu) z8Euq=#>Mj+0~(#Pl!ynlkWn;Lgz7(0s^YnIa9|v+J<_bEexjG?r57p?{ppY28!L2% zwGf6%^W<{b$;{1th|k~S4Y@PWQWs^(s?lnbg2T3CKR--swbB|b3#)~G0Wf2xnR+bZ zHPC>MeTsT{jlM@@&Itnx0bFL!8Ri=gDl8hNw_Gx_3~0!Dr#}l;h%x1ul+-^4J*Wyq(kiR_92X9NppJ{NFa++ZFZKj z4t?0=!IenG$B+!mgr)XqhZ!a6^qa-olBBu~!(UAB?b4HA+adpjDK+>S?ZLS;miAdQ z#rydUm~+>YQG=S^A}(^SV30eN#E9vr9RNe*kl(s7VUhP5uKZO&=_o68wW2mU0 z78e(wVYE3WS{o)^6g26SUk<{ffDDS_=OG5C35Lu>pi1W?9%eo@QRlur`oQExt6|Zl z4AOW~=!+JpB0eZQaI|0k^p6Y;`u`fc5_qV$FK&4zqGVtH%9?~IWhv`pkbNtpks?bm z5<>P$vSf=aWzWNlh|(+BBTI^uh_aL=LPVnY-;wz()0FOf#^(<1cg{WcoO74oJ?FH? zwCyO^ouHzqmh_xsv^r>@Jdq*m-W&cF4@Qsf%eoI9%y>4uvW;ByG;rT(s@*YMVIOlj zcKH0)`bYIcd)54V8CWyABTKvWqvqm!>Az@NHFlYnIBUgm%q@xyIsfmC>;pTm^y0IB z|64;@{kFrhYu1RfK}_VPm6eGy$X7A0H>8;09rupTW>(pK5??NOzU+kY>w`Qop>w-F zv@K4_eKraiK8Dq0+r3%o_+c4e8DTm@L2=yOh^PbgrJ5N^CzmD7T3LKwelQ=+KGCvH ztzXDEi!$NsdL7><@^S(}f|{m9m15jgCR+?*-ii&$Ro1kbOt`)348HZ4ra*dH)rEn1 z(04#VT7qSow*s4l%TP;698R2MzjJbbxMFb{os!@(%>}%ue&2c>D(C7O&R(BGG;pV zEG(U`Bm7e?#}|I5NIixEiN2Vdw$wUJg^p$OE_}Weo15ecs$Heyw1<|5Q*@74R46M^ z(q5zC#K_UP?jO0Ky(d+8N7hKHigd zQzGt@s{VDpY?28x*PDCW@I3h z+@;TALvURI!Q-}>t+UIcInK~XFE*ssXSWhRRQ`!+{oI<%} zkCso>^SBUvSG*`T*VL_>V(XYOC@y`G)M8QbwRK_nt-oIv<)(&+U_ZHmi(y&oeV%Ps zPpg@bwzZNC4VNauAEcIYn-iwRezJ^a6*Awk9geqN!B(Ebv{CX~#&iWOvoXs?xS3C7dcQzwf|0ToUe$&CZNDEO1YddRwsD#DP}x zk|)7t(*pX@f(M_{_B1QRGbbpY-F0H<-;Dh^hLS@OGdY8DcQE*=05(-2(^7%HN6}$6 z5xJZi#uq~L*%V@N5qX>qj%+Mc6KW5_v~}|mv9X)-@k-;5uiQCsch{b>`}-XhIgCvb z>{#t*x{Mn|nKp(>s)u3P`H~AGM;ThjjK)qdTi*WfnvvLri&*B`^WXIr-Pw(@B1D*% zExZ*4w{aHe&-%W!ylnlrd%Km_i_*FflgLqb)k5!MHP4e{mleagPwb278_S#)roMN$ z*!!jPrl=O{XzA3n0;PNNG*?FK4Q1x&3K{iVR1^4KrVHq7_}Iey&E%%GZK(hG=EFgY zVNznzcb#m)w6ykoGp*;J6Rv06tF7P}_j#vC*g}@{nUnTB(+5nR%;r?J_Et?se6>(6 zFgr6Ad+4g7bv#Y$6|#qmqm7r~uJ8T^>u z;cN80Cm(DYh-22QmQ5Nopb7xezK&KK&(%}_rWoJfMvvo%r61|nfi@j`XYrj%7!1Y_ z8w~{QS3Otgh+84r=ur5w6POikjM6MBAEISs%jybR? zJZOW~PU#}*l`b~*^eS8d9e4uXzgBQWkOQ##CTvuHtg)QqoDH5EvNk-mJN9Vjk+8tr z$E=(8n2O~(WJ)I;zAAJ1O^yV$UkR({F{itpqqTKW@3*s9&r^OgtUrCi?kdm1(A@Ig zs4x9LTvi;4ZmH3Evb{3tlc&7XJ8e0s_w-|>kcuu9y$`EM-sT*|fW%_vkd`pq;x$wC z=`a>>ekPwJD1|TMeZKgrEZ5HUuMyKN-7crqa`drJi{z4%GS4N<1Z6P?IR#lgxH0@+ zQ)2UM?sbkHjf;7Gdy~57Xgd@R`(&FmpLUSNhg5}y@;-gh_Pmt#Caz{QV=LF?JP+Ny z*Y_R$xbttmOg@`t?AzVS;I3-6Uy1_X98N*d(3|JH>cVA}ytZ*B(XqBbCi4#%{*v2m zbm5B2wxQVxMIE0iyN#}O`;SL4w{%E-8Z^p3<=Is47|4-RMejbhj`~BmI^e}ET$YcpxjsRJ~1+rF7BwAY}0_rOFA#X7Xtpn;mRN@70nkqahz`C zcMg>(Y*s+FQFN_TWBoDplU0%KEl1O2{VS-c4(%&RxKV95lQ~kwSos|sc;4WH62tambdHk12rFiz#6=!kH~ZdGdyKfPz=Z#-0QrQ_H>bARA5 z{&xS$a?X{>1lvl9M|iEJGub{V?fxHPE4GiE^|GwOZ)l|c_PQ#5s_V@X<-4;=$&6o* z47;*i9AlE1s%+f4q0?C?s{fKosz6t@`#$4loqdZdAsH*6+l*32%b9!bK5Op{9DO z`r23x6H`e&ECFFX1@OrP<@)NEuY3SMK)wV-sRwm?7mpo|c<>k<{#rt#WY?y|c`!M; zfh7hnq6r1X7~F{DeCLPmkRr|1<@dG%Bnf~-I2(cs;Ww*akC0hwxWP&H$p&WE+)ie7P@$QdpkFh7&oM#6lO1c z900%O0d<6(C0vvlAy7DZ*)H{K9 z2msy_8TG>yudoR{+mQCmz;n+|0YFnc7(29b&;Sxw;Z`Rv@&wsZ^)cmul!ezotW<(8 z8eAN?Aq3*`S=$!)ZaN-!v|IH|BPHi)PwwmM0D+)aXck!k$zLUh0H*Hd==m#tWN@vCA8w=H6av|bXY%a zBuIIc8N%ab49H>x;(#XYvn~qs0NB-mY&PUcLuOq^8>a|;6v|qXiA?W_wv>HGARvfS z9tqX>*ei=ZYlrm)8ZS-^@eGWof zJ;+~Ey^%rf2%);+A{GLJ!GXI;i9rT(LleUt2el{IWo2WY&uNrz( zBsfw8WK0A!IVGtO!m3$blQ+oF1L%1tKLY|=Sv3+m_y2Mgiu#)!P-1S9{r;yp221a4W4*b9|n<16!K(P07VmJD}+Mq z=^t261wq`oEZQHhO+v+&^W81cEcWiZRCmkDql8&7Yrr*2s-prl*=APQCPSvTe z*50d5t#uZUvK$yVEC>iR2#6Qprzpt(b-{pugD6O-i!jJ2N-}*;f`BOhZzwc~=U=D= z6|qmkUwHXnLjOzu4OI|Pl#!HBQ)g6=RETbb9b`rpeir`Rmn1;dohRM40XRh>Mt4kb z@Z1tBlx2{9_*_u-ob{eE-=>h~;KdD!RTs5{X)3(2&ES2+7z5UiV$*0k${Xaj_ z7zlIf&Z1#8GiZX$gb-Qf$_@82dkk#dxGvW_ht70E#1zZps6mP1QFuY&gFyFEBM8}i zVgca}CI{Fpi|26vCBVPR3h`F}8y6QdrhgByvo>}4HxRhLT>cYcXYJtT`EP)T{{^%+ zF*9;>G5U8{g#W_2INF&wTmQTL{~PLI?O^Wc@qeJu|M_xxN7J#=;Xy#AFhM|w|8o6L zfz>RWtxfC{O`Yu-;>tkLc->o`%yiy`Kwb4EM5Z?u=4_n#Qwi)*!hNJOA>AF5 z^zr{LmCAkK#-!x*07E4(VZnb) zN+rOsz=kS7x8Q;*a9xfCl!!7+23kZJCIKCDFEyeJQ-E$pjeb(GSF=HGfEtao1dB`8QX;ou32_^v}k(* zU-871Evj>?CBAdJB^^U%dT1YA-*f~u2R1Z6Q9Ek5{HH9XTx}|mLdF_A;`gqJiOCn% z7$!sPSxc8u9!1WKB))n#x5};}3bfdx)yql6GR}H(Z(A~J1G$HKQ}!~JEapX7((R&Q zHrf)?EoiH#Qo@Oc2dj_bGUP;q3q4aFieR4W7sYNRyS&@m<6DRHsOxSiQJWdH-63>ti<13Ucz}+CW-p;h8Eh{haYarYos9yx)`)*D^ul`hm&S~3;39}i zd)c~3P_09Yt-6Jl*LuntHB9fZ6@(tv0%RNN1nC=JrE&xDp&e7#R6MtA7>de%u{LR{ zyE8X&PB3Qn4tM?k5Mc44dPGq89E4#)W@)R>{SK!2+v^j9aYTJvCnDAGY zw&qm}C22kqQk0WwQe-bwyS0)ZZddQ{SK?TAlpKr~YC42P9D0p%Qfx<90d06osGLPC z_naOg&BV7-3n^^%TDY~;?5e*dtEr-Msi>vu5y)T2(jyQ`(oxNS=}>P;M(|=QSiX?K z&gMXw+0e%MhLN~4TS@E3MDw?tRWHWL8H~$0v{~qdj8_&eCSdWH9K6Ki#a!r;Y7i45 zJ-C3T6v%yL^r zSe99yK;Mc+(&ek7+DZ{iEEV_G>(cOy6N}0>(GAX|2GKR_ZVq=>>-?{jwP;J8t54kc z6u}uVm2i2o>r6w&5umMhswfvFg<0G|t_9Ff?L5nUgcqD$UtnA8H-+8yoI3BH`;1&3V5yY%l%%8RHKsupZ8S3KI+Bt6cmWmohh8K{f;wIz=TRM|35=ojU^6`aj zWiKW?h1HX{_+S=lF+WA~K_GubP1>VDlxTAc6yYYdB+p_GrbJyqX2wa$)tKGtf5W!Cjx}k7{WtOMxxt9G=W9U3Ma>G}oT=MFPtPwrQECYr_(;jc~C)8Q4-yJ;w6PU?cTHW%tEueYR` zL`CjuaG{LL25%aeNcUR1wd<7G&yUdS9J753or>w4vW*24V7X{;=r%$2U9Y+#@df=c z&Mq9C5v`MfDcDRB%@U#FTNpZDlNmU~k3h-cz-|xj1I+`|E#~71oNkn2jY5tdu_iwR zz7$G-qtGObPBqKr%|`bNeCDb$ijqi?O!eTge~sovJm+peyj!V%@c5NCK$Iwq?kW~_ z$f#JHYo+nv&n{LnHl(@8?5GtLTkUG?NBn~ASZoZu_$FtRkW%;5zyVKlHB;v4<>u#Q z4@+ZU3sR#2rGcb3rYQNG#a#w)2{yFJ=h5kn;AoJ{S5)w|wiG8^6&)gUhkdq`>0ZRE zbG(t_)7>bJ-kJJP8)}BvbR1)^lf*6|Y|D?BQCSiI@At_x;%>3@5k&(+wk?Q#pV#7l z(CEvRGJ0;%%y0gtiHL9rgLb|VuL^c{^DP0F7W>?58viI|dI^!Gh8Y%t1vJr1B733q zOgV8m!l@F+a-Sy^{f(-zLZYfMqlGqIGqzxv+Vcw&+!pc`7V2&Y_K009gC zIg4=G2v-d?N5PLGg2;udAYJ8P)C9n6M$?D0^`g15G-|2fyIh)5H}OrwQN5#46+T5| z0kuP*;>O*qpje7nOJR>JdMcCCA9HkT!Bfo1h3GU1Cj$N+AE#|onMit7;_I~Tkj!)g zMcf6J05!ZRdSZ~X#&i&juxRnNWUFCcJt~8P2moDf$^Km7X%+n^P5nx5=v_29v6u&m z*Np=Mi=fw9HACTiGHUPwxEu5o^?l>Ts<`ARI}jdpSVSo>}!$al{pJJFd?I@^1cysbm48~kN~go&-5T1KNo`?TKs^s&rQ7kZWC zyC|4Fd7bfsZ`iFhx!5wxTXF17d&}FC>=w=@cXt)?!;3(N_Hm<`eY?$_i{Y+QK3Jh= zWn_PPrhDSb1&**WryYvPMtIL-5q`}V#ShF0%P*!Ll>K8tqPanE;;ShTD5#)zhST$; zQ(bauh0za>hZvdXe~wQrZVoS^!{A9Z(!v~#48w@ zj${=oh|(uOu;}qEUkPgksNS+QvA~+Bl_sL z+h9%SW;Zf2QDeLh9;NB$ryMZHm8Y0qYzU)a=-c{kIi1THtCloz)3%6(&+snTsBI_>+mJNBVEbG-ZjP#_n8iTxu#5b(4gE5#Q6-GJ^BA3$KhwC4fr2K7(q zW7x8Q6Ah4iqXRg7uU`yecAs@ud6E9@qrBf4d&v?q~D(qH@g$T;F;%^hc~n zIN=L^MCbs((iY7)Q>9I~NLo7x=SOf*&yAfoPe=ibGp2Z)ZfI{dlp%F^y)(&wAn*X) zUUKh1{pmF(#>~&wOtMLt;I&B{xj57(#w@H+s5HRsg4OjXv`#uOp?(Lmx64X?Bj5}6 zPOllx(yK@0cG6_{l?k=tT*vJ+As5npR&V2_lke{v--rKTTXT#C?j7b!S`Fo@Df;!OSG_+2*H^;1WbROcgUjuW z|BrPL*5fw6Xfsc3ie7`02~+`Bm=4b=O)=$t+_!RcF9S<4=#xl8Dyj{yZta5IWAD+? zcLAXro0Qcq^Hk0j#w0GwDvV1+Jf6fdbuuW4Y&pLRpV$*6K6#6w!f$2dNud?#|ho@4HQmC~1?t?R$b#hqln<(| zar{B}{~OEn|0S${j%kz~ zon6UU{t?O;$cy|(Aey^k(}GzmbhEd<$Q2n3r2>RA)whw8Caw~k4MDn5Ilx2;?*0wm zJUxB!;R#BeL_-~xnyC4S34e_{73wuowD5E!*6#3VF!lW+_OTK07}Q z^v|M%AW`((gMxs-L4tsg{12i?xLY{5s#`f*n3(_X_)J|-2~7q0bM|STVailb7?~!z zRM@%|i*cs|+PTg;wKOe~pTPo5Zjy7|AhPcdo$t+0EW_9Z@!*V5s)BcwgIs&L#?3-& zUYFTvF1Fp=tfybs*A*bF<87i6sw7FMqzv^q5SQ3$%<(WJloneUZ~4I>SMB@X2q!a> zS!R%(-5Crv8G);PCN}YXGXsXKFL?$-@#Q#!odTPT<#$~cR%NYC$MQ)o8_Wpb(~Ia% zZsY6OZo=-`W|60H%0C~B1LWFaH#DQ@2|Ars=;~}k%Y9bHC1}Fi%EY!^VHxotIc&4L zT9p^=^r*fEnB@T>*jes$peQFYD`(-~EOF2cgijdcd=%B`ELa#!e*)hpXMA{O5>&Q%4wO}be z8%5;@u)(wrB*n#Gd92zYwb4?UYAgw3>}}z+4k#FK+UP(EoGDt(hRJyk7y?}a z6*i5<={)rr^rs$}M!SZU96~e&53Y3*4{eU+P+^PgLR<#M&Ri2d-n!W^o!A&~F$J_- zu0#*|p{=6A{LEk3Gtnv%jC4|eY`Y16P0nA?obpELw=lgJ`c$@DDRF;O1ruT1} z-?Ad<267&f1{(7N;0c99BOJPF(50Oo_IQUipGi~|9#L3* zOW|&rj2&-d(Z65=X1UO0a{I1mwnTY2Ky7{3ZOlv);+j;@UgEz`w9QREAbyMa(7%uLkg2F7G^*tB&>9~v_S>AM z%^}w+tVy+L4|06`CU2q0fB@D;f1Z6PlEU?G`|ZV_mQXppE+=(hs%MrFBZ#)M3ricD zEBzst7=x=KF3woy6GjH#g^5SgaB#$VymdCCK){)l}J~ zCdB_RL#>P5r5xNYykKJNo#PQCAZ_HKyw>G+eymKjIMj~fa;=&!$2o8PmMjb1B&W|% zj>}Pq?Yxy4-mXkb4-Dmnp(C$NRc0y@5iJSTKt+}AVu}B7@P&QH7=f!U>06AG!B4Cq zVh4=JMI^G`HsD3vMh+mz`L+s=e9<)tuMZ|7dEKAJ$>XE!asDvel870%Q;$2=F+MpD zhl08kFSdE4y;`x5Ybhap)me9G zZ)~+IxWKHAgHL71JLLuUne(G=PNm4&VCr>uncKgA+43;@ih4P38+2Lm94kw-onUs1 zW+z2%JYi2|`z-73NIcy5X^ghh?};S+HZOm~9LH-49!t9)ZNGbI^E#v@WGdk5%Ntv{ zALV#=KBN;!OmXAsB&E_iG51sCJUXh*wM$)WI?@q)S~ZN}!w%W<`(8+vQ1=DBoEHwg z+$aL)$&njQc!LTD>q$T#8~DpK3F}6)f%#%~uu;O1(FouV`CTjZ$LdAMaPWCZc!DCJ zkG)@UJcdYGWaob1JMp!fv8=m*kWp&R{;A+=^Ut|iJ8sD4{Yc9p7Q!2xiv4NhW>tNh zt+Ld2_+VMU_XbrO2pn~qGUgE0GEY`&)#$V!HJY80u5sT6FU>Slg2Qh*gxSJ^2t|>9 zPfe&kZ>YY+d~S_u3k1mq5^n&JyMQG85=ds@h=)47!DK z*oH+^H@JR;j*D1MN%_N$KsnExzF47ots6o=j0~RB-80)4=pX%@-r84t!_SEikirwhTF5~g??&E)55@+4S#bV#`p3xLbffqP_mWokOdwMwoF zk;N?BlB@SvPa~w0l~?$QEE9D%#_|LdAKB6jQfCi!mZbs_RC7IazuIf`TJO8BN9$Ctz zKNDibOWr7)VD=z=jmVPJdKgQ|33@q8*$Mg^gVdz6{2}02pt>iY9g+6On4=EORJNqL z*E98xw9$`A+t*%D8vhCu)lbFa=ki9C*Ixe`QVR`vmjW5bxB^x7IN5?j@b}54X~*(u zYfsksLB?5}R9_-48*ZD(=@ruo4p+=F9BdEVEV_W~ zuzA>4(>idjW8AOZwQ=z>le=s}Z(IuYp_wl?!#A8Q#ku12z931)18?3a#5YRCyNUcV zM?gtHPR={eduU&X)>(IlaK$ZVZ=eSdp6i9j;flz~r9bp*9w|&w2vzZ|k-At*0_Q_r zebKf!+Ysvlh|n0s7>W7T2`r5UhDqM?xJ9p{%^sv~ z$$P2ti{(ti8DrEQ`ZCLeVzADb4lLd(JVQPy7#A^a84WNp;1%>aU1vn*tir<8=s00p zP|1wwIAA&Y_f;Yskn}4t`o}0;Z}zRx`!&brhP`jgdHoT$NI%Qt3yRX5eW|Wa$j%n@ z&tGnllFCikd^l2_r#t|d1pWYs=Ss0@DHac7j;$KzP|I{KfI80C^UgS?&=mC)N_qqS z7sNlisD|y=MmE?WAlf`2AQ=Dp!TpC@nx_lni*JDuu>0H2y(vpSr_?&TRG~b#FnFUymD)29_5dat7IcTJ zA`t5(V0U_UcG|%zptOH?`nm7$W7lW*&yLTo9g*LC-=X+&CH?IZhp7@Hq0eh$!o-Jv zm!|&sk;J1NXM*e(_I{y~D88)S?;LjfRtJoP zy?SUy4^d3Fp-lHcf$R<~G$WI@n)jD%$zQL-CPHqJaIY*A31r#alOaaWF@J_x4Bdr< z2Q zVPigNg+3=reS1zQUbUPl)PC3=ASk@Y0KR65KgOs&FVMd3qqrcFh5AyzY^#7l{q5iFQ<_tCMVW2&#X`IEA=R2n@!hbAWp znAkqJioBW_?qJA}4}qYvFA4gY(dXN>Czu5V;OBi0D;_d4X5@vi-daH0KwzDB^S4s6 zTF|EEZK@Q)Nf4J(h4UV3#J`KOpSSj)28hU!qTnPMe2V~Q7#iBrY2wSpk3(o5J8bm4 zo}U-zpY3I{dq3PaFxxLWDt6#O;r6zjDsS~;0K4SF#lr%t0-J0dDULFy&fdbu&4KnY zeyH@@SsaO3pu+v_r_iLd{x`qtFK1riozUyDZr#Loli2H0*64dx77V*MmBEnGTTusi zsAunRAojUlT#D^1aD8AjGP&_1><#1O$dJQ4$eF#ONQ~_^a&u+U*&**12oP-#u%8l^ zvmF!uia)l)_|aPt<>UNYfUaZg`!!FT5BtLd(t|^)K-?DDZvnXusUZ6$7kGB0Tz4}$ zqp^X#`23xG_bbz+>H3{k+oi+HoK2rabq~2+$Q!n*&o~Bq=f-G)wT>!Bzd!MPbqsaA zeqfwkbv3c)Pe696076Lcq91X3#K8FLuTL#JYU>{W{8=r#d z#nQ_4jrBDF3?9qERO<^Hzjm5}d{#@-Tb?HUS9Idj-J!dJPu& zgC~C*_@0k1mY-VO?Y18H%ewu$?RA%%vxHaMw@z{-(#NMu?O(qZ5r%z3&bMQq zDQlMyHkkPp>2VphKls)J`FK~K?aWJfco(itdM61EJy+uH5hEJ}lr_2!r}6dhhpcCL z$WY_RwZ#5xOc$!Q>m+Vq;z^Fvh>OEN%m3cNiAM@`kDnk$$AgWtM+{=IYF1N-mqZqd z*{&3x#Dk&Y(j}>FX=BtwULuWBhrVB4C5g0VN$i1#r$pTkir;B-_e6W@@!M7QvLMf}{9Wfe?{gv?`5ys7s22$Cb@V2{5|^k-ysJz{E94y^VU2UPG3wOGAFmBtyt%j{R}P`9w^ps5o50if_6Y>4M5G zHov^EnYP2(s#*MJP^FFh;rTkuZh!SdMp1faa3lxkJ>L*q<_f)c_O|l|qFpMdIv`&fj|J zdjxK(>V%Fl3e0Rm2^AFQz8E$2QJEn>Y;1JEc>yKU;oWCh*w_5M z4}q^sxrfNiMxa3m{4{Ou8>4!UD%JKhw2tb z&8?1wT*P10u=4EK))ASl_xppIye)>;TwdTDe72aUD6mj!&rdhzM46?(=z}cz7-?+t z+_m0zo3H&fJYT6Iv2l7d_7r-^+Jy~hz#ct=xpq_EZ06SKvB#y0itq?YniB66GiwaR zY4|8ADsm!afhxoAc9RTd<&;}*=N53IQOe7)uvxv^)NhH!;;=Mu4G!KlpC5*oZDt1U zRWos-5W)V4ajIvKM`AP&a#f*}b?XXpSU$t-(!k0Y!OSy6b3Aj!+pb?Ccz_O2PBr5GX_hfUSaetvQ;Yw@W@ZB{@V zsED`Mdjb^c%6!avNQ>|c?~k+Yr$hW z9z}KR4i|F_?OTOnrMihnn05@qQ`pAh=_2e#yB5I;sTOHaEU%uK()GqO(il~@u~L^* z4&p*QdgrIzdnp7ZlU@6_xyCz;jJXGdA)XaSQlYnm72oRwn#ZXiqQ`e=Mxsg_%8F~^ z%AeA7LdFG$Sm#*_7<_ZubsZ^?J>8<}7MGyq!iyhYJc_DUe+(ozMxb>ycf6WtR%LI7 zq3y~_R@HBCaUdFFSDD+)MhcG~9$S)#W5kRa>9WGazuS({qarmM+V7}Grw;2<74LA% zu%uKnk;Lj;o(8{pDtnt~x{{l)H-syOcvB)CrulJ4P>X zuCAX}ITgiRTKrOpd zWpUf$O9gQ2O(+C*NS9B$xQ(pMOZYed__sTGr(~9- zh>EW{9YX-z*16Y4UK83{c8=UTn6ja9zkgdc*VUsf+3>~rWcT=Zirn&LC~2D-e|7Xg zxH;z!Cjv5RF4?aXa8EM1lJN~kSIT?T06b{8V>&^{n7Qh&*5RyuwUlO6-6D-_J+V%Y z-^%Qsv6OQH&8jm)F2A}5`e2ypNYH`(BK&X{$p5$`BR2loML_cQvT1=EP* zRrvC;AgK)*J$vMIC;0v@LlJ@ITc~U1cdn#A`4}&n?p=qjwk;_-C}YSs*;bc(w>?JA z)Z%d3e`D$pNW}htZ*4++oWzrRGPP#g#b)bbs~(r+Vbk#Da6Z#WX`EKEy?cLOF387F*O8ymvZAsxlhHpvXP4r;RBZ4gF)eS+kz4J2L;}T#r*Rc&_^U-L^1&5 z;g{Wm$$Sdu8#J(l^X;PWx_Mztc-OIn2*htoQV9Bu1n&c3ez#>|7xcp(?}HgAW%uAA z9Pmpr0O{c`o@IWweIX&_Gbrwp1W2?FBntVAvi(ppxF~R{3s{u=f`6DZxG!*?c!tCJ zGU{6Wn&kLwiP>eVf9-d_4Oo>Ff_n49`@oy;Z(ZmI`|!d0fSM0zSqK3A_@3eSd60bl zgYotAB>DRK?`^->=r7BKMt{iOqk$X|CcYCo{g5fnNffVQ@LtIuhp&*8A4fl-RSa&R zy+ZPbQiqU;gjx!@S)vJ&QIM5%*G(8POwZ8nUjD*1Pzj@KM=PQ6-fjgl%T&L zLV%8>sFUUhJ|b7;vjt}s-j`0w&=+Zu%Sq35eL^x!Cww@+KJV|lQ}CA>l#LTdU5z3 zOTNq+L?)+r3I<2MV3V5KkZCC=DK~`AympuJg-pNl@`RDO~4yG|7u8_%L->(%W@ zW`BPqxzjq`k~DN{t(d^dq{SPoOpNh4wL#uqpPHh5^sSssLvz14j=jh0$N87C4H3y-Hqg^VbL!{! z@=zyXbRA?R5n{r14ESZR18NR@a{Nrl>$;;cxbh$HnuO&LY3<5{K9$$V#c*Rdj}AH9 za9SGc0$qX)kpjGC3L3iSmf!@z`_9HqI5$B$%(GR@asuRf^wHK))J1F(G_6sr=UB%r z67m%U#mV6kt;Afp=iZ|Q+4MUK!Ho;BwoK_lyrD}{rga-A|Z z@^A!ue(0^pU5KJw!oaXLY>fgyCHiM@8pSe$Qyyg_scq#H+7c^)Nz@WbdKbP(i)dFH z4SrE>LjMr6H)o`UV&t(yB%$y_KKrn%N)pV1c}QhJDTYI&ec+lP#4vnE5Lz*;qKU9; zHV+9heC{an`Nu|Kg|l(8W*3TN5OO04IDKefCXHn$vdyp^nu)*;e?K#}l_j`zfH&ro z&%jQ;I2^-M*a5m?G2&CjMtl#KMG4y?tbU3@2v}f;DJOleYoWWwfqi5>Vg59j(D5l zN7ZQJj*}9PKAhJRoxACw{1wr7{%Ul$HG$K8_~Jk!t6j+F2>UHK z`YQ;XPA1M8LPT@_*x2$8rNy`W0iBuZiiz$*o(j@a&y=~P(ll#}KEBF2(h7OK#az7; z0qLa#6)4)Dv#_Q22y5#IDa$Lh8+>%mYP~io&w-Fw9sQyTQw%O;o}kV`QR<&;sc1qG z6#2!Fw{SM-{iSXP*1UTBAVI$3|?FNahLFv(w9lnh0ml$%xsxK-OZqXLGuga^n zSW^oJxx6;(#>)*sb{r;k!F!%<+Ci;^N5HxR_J^vqBn4B7Q}u|t?2)q*MgFMu8=Vbw zc-Ne^^D_tTPmtCJ&+KK^)^CivTgv5({Ib0%Esg7X`+21vMK_hqGpInbW>1A?Pps4` zjGa#~TKfB&;1-kM9+Cqh=4m+Q=@@8YCY3bLESnKJ=II*c8;)~Hqkc~@TnmoS>axy7 zYQt2#n&YH>vd#(C0m>y1UfEDKCr@dScihg$S*CGSle+^kA4P1~*nzY*Dc-4^bvFkr zGkEoV2VFT59gnjM8neO`ksDFWHL z5hi%2GPEtKv3-#$Rj*b0B+W9%;3*||?zMK%9S9a=> zeeWgMP3D*}*%>QrZG)(b5%zV^~)`+8-VzWHWSHARiys(#IO6 zVwB~vNJ0K^&40NHFbhFUhg?ImQFqBtUs^V*J9IH4UgD(vzJKoM@x+Z_JZ=t@;8zut z3Y$DdvA=3M9&<($L?Ypo3$EZ|Bl%@6ntvJ24?F$?>`qXa5bOwy3Zau4?`T7Q++`~< z0rZYV*qe{H}QH**f;{?~vnX6D=`r+Zgx z<5C%zOJ2I8IHQ)~<%D_%pW6PTgOj=BF+^ZL^i2lH=cEi>5A1U+{P?H*I3X6f=h007 z)+4n#@K(8T%x5tXudc?l#!F*3i07APoZ=$loTwJV6%5FaVfQGynY*B4gLUqL)1z8T zr}}TF>r{JN8J964<2oYOu55Xp*-1#sc_MuCU97WDd*~4((^Y7>=~=B_duA3* z5_vJ^Bfhy}1PX!{)+m9vx^ot8D-vI;3v+z~T7qnY7HwC*e0>?@0Qx)8@$z^fHX{TMV{2|Ca& zJ2UtUxcLZT;4!~Rt25PdR(=uE$i!M^;Fk79>g2)3=8`Yn7S1?4=9BI_#~YuU!K3EV z=8(DG85B~b{<((|O;ippiCUGTg_^-As5QE6n@lN8ozgtBj;}MRLb=D7a^@nYBW0FkL{z@h9TrcEBgjtXi3g!V1ZNd>3oMN1n~qbaVWk zp7WAt@|j<$nZLiNGk;fQ{@zFT;1%rA`%|7Qzkl9g&WL8;E9=SgQ}NGD-}pVL!EdiL zM9)tdEw7!z9R9DiD;TnIb}?6~*jA+-?C^yy?Y62Hnr=2v( z;Yyq(NDHEcclrX>M>E$6VmqHRfiYmy&q8j|jBZ*1jUv?*xs~dE=!iS)%OH8blTA zjJPQ&a;(=2jIa2z9fY8bMlruxpB!CL9vhnD8Vls!+>^>Bno7<2vvYVGt(r=$x*|b0 z%Ey{!D`|l=$rYX!y*yij41e0>XHHGd^keLN$Epv*d%f8~JH< zqzd}PqpW=tL?kO8IXS)BH__YE$T20P?yN#<7DoJxJ9!q3&dxE1q)8HX`=25-Q>HIo zs)AHNwBcPMfd@cWc-A6?X8`I2)6gGp)lZ~38arWQT_?Vkbv+Yx~Kuf>V~>;w2m zg~BamQwdE3eRQs66V5^pRudTl;)lJ;as;BZ7)eMf1_+II3w;ZLc* zy`jTg9JdH@RXc{>hDd0 zk+^)>&q`<{KjUm>vVX0*NgAwk*sIBK6z5gY*a2oeoEG<@>WETn&e1BInJZ_SHCYM8Xc*ChF@rn zyLnu+pplW$f-Qu78U03GdW*A44UYb%$cVRTW^7lpZMlx@k(*sQ)}C^<2Lj)QmYZ$S znKn6YidQ))jh}H2A8rWX=SSgX-Y)a=w%A}3!Cv@J*P)i}V1#g(nql~YdDcZ^RCo^g z{lv9kfj9=w5UEM6i`Hbp?>FhB5nb3PT$*R-+v*ci{%IT3g{piIiL@8lDldg&P;|E5 z6R28@i^PKDOoS2?SX8$jC(JDEF`ZaG-+I)PhehWJ5DCJsT!D;0GDLzP!Sng;c>zQ} z_^w|?31WFpKtZ5?gkV%w(e1a`kjPXNHD;*;p~#U4_X&*aO$v{mfQ(cE6#%XoR~NY~ zu?zTiTyYG`mUHebF|OnCk`AvFx#kuWrREk)hBkm{D>AI%V;oqeYuXKQ{#vX+fgf6L;NL>6nU+XuQOZj}e*lGlKDF zpauK;{7==KS~=%*soBM!-tg%p76?;1f;<;A+8hn%s+z?UT^7y3xfoAVCUdu4OgHsR z1P#V$oQt5C=|hI!o^TtuRM)KF)&lXLFdIAqdou<{bqA82*Q5pnzdh-|;yDf`bJ7o+ zraGj`xH&Y;9I^1A z#2RlrQC??npE5dC6BKr_@Uign@Wcb-gX06!1E8iX4WKfVkevTd1JJ_elhZiZ-*K+L zDo^-7$lz&a;pA%V=Gm0*0pV#jV$+9xN^EP%|u@TbNBXFV8yzdnn@V>~^;k*~a6qUL=iO@B{pdTv zc{ftxU1p;#nPk%Vu*i4s%)rDw!9#i%l0p#PDT+Nj2q!*c>(&{53NI%HQ*-dN#DSj} z9F2aLuIB;YZaB-w#GVQ7k=k$0%cycGvhUkSjn;25&xE!GCR3S{ZoBqmvXWMd1z#iP zwMngIGX#%75$@C5cjw+`r);|IsvZy)ZI1_`C6=|HUaTEamJF+b&~4WxyJMP3G~4O{ z#J8?w-s<4L@IRg>bxt$s#7YE>H`A>3UTBb~c_0|F$6%}Tx7dK&oX$v%hRhMU2u*6} z;ruS$+R2TOBfvZsV0{yRGc+J@jhyd&4%N42;o0p*w-pv0_hj zKmHi6r%&jycB9L|bVqT;M>SkUv;zZhd^JNlw^qpx4aZ!4_bxbBkQd}XGnKoc(0Gd z$G@kr@n#rOgzb3(XXs=EWWn;@j0v#pu+6;{1~Ld?4o5gCcxR(HMts*l%|LB?Fx$E5Vj+?pcYiyl(_kt#AZ6H2&?rQaL~(@fBGYVNQLRTz z*yvMEvs~sM+kVNV#F>6lTSK7s?4^wY(0g=FfEiJ4v4`}L#?f=BWe98qQl+aTCJ9OqOpop97HHVf~LUWAS|NWVyeGNJTk4NQeP zQry7quYmU{02M)ZDSVlNcFErTK`%mop}v3(5>ehrg$gO|DM9Zl?YVga9je{RzjoBG zVGis_(iulB3O`kxhX4Sz> zTQ*@yf7L&@m}juatP)@P@ejE0kABPlIb3lx^FX`Mzi=9;YhM|EEc?V=uGusNxDy;0 z@=xILmRmJHK`QmfOU+iDjZRj4hW4`#XOg6xGgPRLlmB!!cYd?EOCU=jqFFuU`e!=^ z;hi@_{dazo8wLaf?_X`ef0(fU>H_xD*mgnFK>xCD%28<3qn>Y-)RPdg&hfvoSZ)iZ zKt~8ISEf$=(WH>>D%Yjw&ZV4xETWPLkQ}QzglFqnju71AM#HvP2H+EU-c3+_Vm^9s zSzB8(v-w6BLd_BVg@o`cU!;@rhIf&F2M4cMLZQ`b_G{be~uHUDKg{5Wk zGz0Y1AA~|0tetVwqyrjr7oBj?OnFKUYNKULJQYX0FtF71Q<3qS2>7^(NjBCwNJM5k zB;*E9axb+@(mJiD_$(ANCf2iE;4HlcAM612Y{$lhBO?c>%{GjIMy z0b9l1Uek}kxtCCU&+xL!a93MBXA7QM-yK$a9G)^1Dwc%^J=@f9x5m#VWg~skjcA}g z8$!olIZnk;QwL+ul9(*c*}aly5^NeTEIUmRVz#(C43bm@SibY|OwmBFnZL0;r5SsM z6)scjh#*9oRAjP!5MQ9zLF_b$JgqY(<*6HIi;ifQurw(*oPce*Ve_0r<%7>4$vckd zrJ#jpBGaJA&%x5>qvgM!22Lu?>4q6Qkx7AI=&bdAwz*{`{@zy@yG%A)Kp9sf?z zF!hnuAZ@wlEr$2QEAX=g(0+hXOV(x;Vt;Y5MMb|RMy6Qw`>loB0fNmzWrTu2rl;5p zHp4A5b5#XoJw2X|`Ybc3&QxQ&b<$=F$Acu3t%d2tZ0v2`9yp+@gG{iBJkbPWv zG{WRX{lSlg*%_pkWZ4PWObMQEi7kfVJGCX~>z)$TMOhsxCEp3Ju+PaVV>)bxhkEA? zmi!}Mgp0e&8Lb$yBA+N)t#$?2eG5{%#gH+T9jP$-ERQrN?yV`c5i~ zziMwZ7!nAH75GM;?9g)JG}3ZvEwFmakt8c6JGVTew5d08^n+Un%S<9+Ge)q5+UXJO z^xCoSsg=Lr=sM-}%&prP-FSOYcgtxzE*;oz&@Z0j1;5)v|B@M;SGfEDCzo`*jtHbq z1-m9zh|bUnvxL1~Ey^17S&m`ef!KI(b~FJ%LAP$PPLGE?!thASr24pcoO882-P8%w`Ei67^z3OpHd}3@JK}z(#x)8xJM(;%(97RoW}gidx>Y7Ioj_ znLPpV>7L}3LC${|7CU9gA46xTKjPBkn?I3}>8mpsi5F+s;WQI>!S63I2xn*~9zCIz z)kD2c!NhrJD{p9d=SKO1`4uw7v8mn>!{6rP=6n;iZ^&#i4zKpT+rf7(?z;OHjH{et z>wz>hHIzu!Qv(F_E=gQ;h3`<7x2_yQcCosi=9cX5bY_8CarMASev~UOZZ!70Aw@}^ z7FK^7bnW#u9`n!D2x}vIBOr*2(OmC9qALdq4!Nb3fhyQFs zA;G0)4FV`wFr&>~8CWD$k9n$Q`&tO4HT9jbo%bhS_YJ*tV-#jDvqN_olaGJ zg0v5N`k}rgiD&SqH8kBCjT%}V0fw6|g(aB!Yys8gdih94gGhaLRHKa*N8>;Yb|i2W zb14hw7qxlcJIEu|qkKa8EOHxvxuxfNjl8qDUr@CQpOFWort>95ueHWP$szhQAgF7g zTBU85p=^2%bmiM0?)qYmF6y5++NcpRRbkrr4Pz|`-M#r^_6H4;Sb9Qu2QCHzpZ!-x zA$m|+b4$ANe4Ub+9NOG1=>tDTPNKf>{ug0q6;x-?Wo?265AG1$-Gh5@_uvrR-Ge&> zcXxMpcXvCuLvTBX14Gq+^M5lnHFx`>yKmmEw|YOd_F5ju`Zjr11S{zEhl^)j1@EWv@CNaSe>mS%S0>dH{zHvKw?ayLq>pg zzUE>=!pe~~hHkA}2*1@UhdUu_q0p)|-*|B0U48V14Q1C64>ZSMg8DRJ(eH=1%_Cy# z-yX&07rbhUL{4_VpfI);Lxm?aLK?7ug=W0FO4&tvfbB=NSIXuWnmd`+pULLe&tkuq z%H|isP5Ye`uXn^Anpmr*-b5y9R84Qh-cfgiXi8;r8Wn-Qo&La9@|`G=;oo>$oHkzX z$q`>#;w=*ZW335@OszyRX38YVgu#n;wwwQ{R72W(ngsG%#U^&0SK@E0cV0iRKXS&* zPNa>J&>-fgc?nV|+4#Wg6RTS>XQQaBAq(y)E{s+;wK5s%cchjsm^(L0cSKTEo?8UX z9{ZJ7l_ssFOGLtLV6}o-{S8gMUA=YPIg6=I)0LVFE(ecGun7)tAc=|I#i!~#g3HjOZYeh!x4N<4&*iLB z$9QQIn^3&JvsjT^4i<7lXqOMQYnMf6d1)PNE}Og4CK9J6$ductRcH4hq_~PpNAM+b zXg{>US7F*{OB{X6bPu?jSgtBYwfeE1wKOiGnANuZJNuIjGCF~U3y?AehKh@)(cP)X z-DbGA54a{IE6Scd3T{nxI76}m3NIUnP$8gp*|S>CPS<2=_h7xm`1X$Mgd63zB%|ZK zB3V_W@}(^3r->{I-RpN##G0~sNb%2NA_sN_!udjf!YQZrSBX${V1+!Lzc-Gg46dYXH-)rI^ivYtHT$KNHh+~uqQ>1nb^5x1 z-xT&Ti5_ku$&XtQR)o8+L=3%-*7P0W?z^BqBwEQg$ZlC4TaFBoEA~DRBS;5+v>zd8 z`Dq2b`KN{@gaOWT#0>%Jyv@vfhYV9&yL&-~R3iX^fOdBMg7s352O26gVa$n=P?3+4 zQZ^}V{>_InC^P{hCE+4?EX>UNh8$DfAG-WF&H<+jZuJWEH>-9~RnM8^-=+vLKQ9#B z>6QpTg0_uV`C4p@F&r`Wm%%(Kxju>7R^2a$c$vpz?6#do8G~%L;gMz@{r-Dogxt4M zzxSpKXu2%c2@h45pOv8ar0r1)gO6VPtqUd9zDjw(&x5^#Z5|damJ>bmrhT_FKAxpHcA2Hjcye;@7 zcIJ&A+`nwK-eeivdE#eu`^ikL9Fq~ZY>7vYO4;v6SozP3zJTth44E?L8B`^~P9oTw zPnepR-gaG)36c9wYJjv*YgkmqDebBPo+zS0zf=RRgwuQq{l`wL>9@y~V>X^YPLWb@ z=i=1(!y-+QOu-V|u*0O$;e+833I z#WM+OwBk^B{FP>1EU}_@jLqZ=L~}SQi#f?-JMyJ z)D<^7##Rl4!!K$@Kl3Y+Xwc*A8f5f%-41!enfK^DAR>y;fBHa>grqf#(MANo%}&Lh zOl7fm?)dw>!Wxou{uUNq2%NRS+XNLf{#n-;nSYu@r$)@%Ij4Wfw=JP*|tiY$0ZO)F^JgAiuF$P^b zR~o|(9`BdoU@V?HYf2KMTDn43tZ^up)36cmu?|}4!H2(1Bu;do%c%@?)69f-hT;}X zao3hXf`UnFkVbXXM^rI~f}!v#+nC6yr|?%IKIJ~cbx)bM$qW&t^fI`GXssZm z`WL_GZQW&U-!EDZc|{^gNmkmU$hv131g>bvMA0SC@+Y1tqJ5$PF2n?;+-DCtbS8%c zK+QUCobbZ}_92;vqkYo}vY&rxr~Xb!V@}mM1tjTbkX5Ia{(T(4Ojq>#_}ul4x-*E* z&2o_rC4Z0CWvi%)SZ;uE3-;|Ni>V(4kL26Wx@Z+Q#1P(5d{1SpRUvZlt&`e-;=kAG zqdY@E#-0L=mOeB|aA0eG@E>*(?7kQ!hxytL5XOIk3%e4N-ct++h&UPu2$Ijc_y0LZ zeU?_Ls$z_6Ok4&=PPP`mnVjvLbx=LjmXmw!e<#Q#1Rzlb<2JAu4rzTy`NmjjL?r!< zR=Jcyrpe7b)Kqjt;rB>7d}s<&A+(?xS-f~r3P;dFG95S^%bgL14^pM#a-!y6E0b%h z{hfy_bjNT_hlc8J|C4P{#wcd6AL#0kkJtZS`$>-XHSY<4`+kMVs!cC}qQrlyDiY1z ziQj~?FIHwmF8XMR1#VJe(^Ny@D!ve9#O2hCkO6X}>UI`tk>~JR;_g+34P2P~w+Bck z3BD1ND+~Lbevyms8;`7lT*Ac=-B%Y@UCDZfCYJ^U)5-P2?%RV_LTet4yo+6j%iP2s zG_E6$BYDn_XU!IwsA*qlpr)|6cCjI6*QpFG)l6t$^tfdEwTaI;a$7x+=$et$aCKEZqTL zy+{Epfp-2eXFclj&EOeOE=cAmv9<@im=ibBYcBwt2cdFmGVo|raC|(aFRS9OFnT_% zgX|mM^gFK2CsH`gy%c;sifUb~whR1uL8$IKCzfx!IgQBF_T$~xgIENug5ay2rX6s0 zFZea$D6x{hRG+?^?LE<@?UfrxcgL2DXUe!#$NkiY)q5>Z>h|$jyNmUi&=@)T?YZHB zWP0D__K9$lIj$m3705T1vNoHu%}BnR(30AYu5~Z2jYN$%GH75Ot+L zn{4kupK6a_l&}zp@Z{>UP>vYLO@3oNU1Yy_EHpnt}E@!F+q=Wwi1HBWH{yw@|d6&Ag&SRe?vd$P%>Tl3bJmz>_+f5gY_1gy7Q+5 z=888EVqfjR^;QO+(B9q~wQlZS$29_L!@!Nj{Iz9Zrd?9ZDw&9TJ?;0UK0llhLNoBRNrK+XP3}SZDgLVgLeWop1=~=dJBll< z`4<6GlKU9M98Z3Fz5!B2hJR5b0>sDg!H|x}mQbRqvZ--D4Onh$h3 zI1G_Eg%vtVLf>zZc)f_M>|KYy9xwnJ7D%3l50qC{&?DjI*YI6x15w{CI53}}2N~6uwE>uK}fJMa9#2iegCzwpz5Sm~joy zy4NNy#gJ#j+hQr%qthZ;2s3W`EXwzyVT1mI!FEl5Wyyom>QR1@sq)EzLwFNYipKKL zj87cgqfrxgdMhwy{GQiKIrGzp5<_ooedRcAgagraZ${}&hRVsC<;_8l2Qw}-$URh- z`TAf&s8@E1#7Zw*+9xW+C*OhL^jV6=#@eug^xNGiKAKK;JyXJTnA`>KRrJs+MaNda zWNj1k_m)?gw-aPcC->JMZ<QE~QS3!(MdOf= z%ZL0tsQa82Vfm)JRcC6X=iF$n?~1JZOB2qAJk|49V>LW+lH#8~wvvfI_Mrd5+|k0v z?X||pwXX}(NbQbsv7^87UXD`dD%*Vv{st71@Y|j>}c(~=;yWi_x|6E<|g|K(W zj`!YLxsb2H9=#QdoyZRgP~F?Y&jhFPupOJiwXAcFP(&Pa)v&-XP}`6z(<@pbpedPy^xV^~X?L|&p% z7`DKpE~u-fW2({L>oC5@FXr;O^=1f9c~cQ?-OM$ZFv)YQjs2?B?CI=Sd6ZHr^AAK} zY8#CQb-Jjh1$|ju44RfE5BQ^XDR?8_{q&DRIo9z#5pKIfcC@uBG{Kj4 zFP4fW?!;R)8R+92h4o>7^u}Enfmw}%ZuV^3@H=T@8fh52@+GR)iI(iTIb8MLl*bAs zXrVC84CVZ=-8yTAZo+Kov43Wb#$CRQXi0FT>9Tqs8Dqys#s4@$2ZaXGYXqb}%*VNS z=bL}A&q!Z*k>5r9b6xsAj?|kd4}s$-zaO z&82RMb*B#rtR?fy(#4~GDZa7pQV@$Ze|I8S$-U%2+>|%2>J{ICCG8X&TY#|}raaY| z4^2?kC-;G$7la2Q;vyBFAGn;mcQtO>+aGi6kT&~XP zk-Jn6m`fY34v_tp5Kz$P3tInkl+4|5>ymcJY$(xJPTsiAvtR8wCHlfhKM6Af#p8BZ zPuRIK)Fnep50QPEGk_pn>km0e?W1H&Wymhvu=p%cW7OC(bLrTbxQa>jm`!Hzz?l(p ze?aK8;ij2S*q6y&L@EoF1Z;Ig|<~x(b#Qx|5W4J0jX?iy?Wzv&bfv@2T=dT zwb;90+#TA{Az8Gg>aURYZ77*Y=#K)Q(f8026BOcr?4!tOK(&Glv4-rIqFzYB^zZhC zI*?tzG8dgF3x+qHV4g#qGK8wbU^ov*>tQt!J*@`5`~1VR!*rIIx_0LMAZqxMyg|7X z>lNd_WaCK4Km~x_fW`+e+0FMVG}4zEY>7R_XQzawps2=V295e>z*So=d+N{HjCzO8 z=IhV+8)`bce^8f;CpXPS zfMqV_4(u@DR^FN=(k0Z@g~EIa<3|91TDAw-sX^!sPN%czu44BC%13bKZz{5h*|V?Q zX%FHyjFeSr zl*`aRnB`qi`rmcynCr(_DhBxzHqU&*wt~0l`n|d%+;nE$k-XeaW2_6jX=|Ci6jTl9 zkJy0;F*+`TUCd_Q zyRtT!hMN>N&%O~?&aFl>Wg;#uDfv%xp7Q23(ave-DA|Kk?dp{4b_t}hXTMhd5xe=7 z=4}}l+ ztjVmyEpgk25M9#=@;O=F&~w? zT%S#+%EMQ_?f*LTzJ9#JKwK%-E|6Jqr5GylRAB3#2C!${p_CnU=5a3x*oe#=8P#~+ z6z^=a+r;vdr5ZAR8N^<_FC&RLQ_kXxSfa3uX_}=Htx_Tkc>Q?JSm*`mu?FxXr<9Ab}LiVaC-m zR>OFJz8H_xP2(;4*oh0eM4qylx6cZYjOU3TSMJh-g#A(*A&)LSF7{h zy)jNWZ%NORhRW8>x~w)8OvC2!^K;?2FMaiKi%PqDLRthaEfQfl4{Xy`_n8x{1Y1xa z_7WHKcGuVw+9#__ZXvMX3$U92Oo!Pj=wo*V31;&&fP6W(fvyX4>C8N@@E&;lFLsy)kgS{G3Jfj6I~kIr2Q5 zpfA&%m4z8ryQlgYG8~yq8F?~@Gln&g+wOr(<4hW>g>jtX^V~QT@LaxPQ{daT78e_v zO`VIwN$XMM%c?L-GuA5@B~jwNsG`QF2n+Gn~w}oj>;OuR>^qw9t*>E&bdjcHxC*EBMrry~y)*}e%wSzNQ%?zn!nwDhi{yBvQ>a0yzS#BqORea8Tw8E>y zYJ*&Zy@Y6iTJ)3p1t&=-#a`OGK9oD!rHNdjc0vLA-5y~@bXPDH(dK>+EMHzz>(!t~ z+?)NDv#DgBtgQ>X{HE{qTh8iM?$Z=wYr=3gBTd1&c6odJCh<^5PFOG!BymR5>;1P1 zp-Ior#zOHm)weNE=@UTed}|*y$^$*n2?5CwCoXOMnN!^n_m#lX|0! zjkf?s4&~1oq7A;h;ux6D@TfvnU^zFIcrD@2H9E952jrk`B=@~SbzpOBL&*pq5Qp9O zC~HSL`!Lz`U=?{TYB5sCRzX`|evuy9izzf$ zNiP`^tUx+F%8#89$Gld+iKN26&Wi9scjww5088`eVZiQrj>@&}~3LY1rLFPmQ|-Kt~vwY?aqEVCaPL3o#y$;MMN2U1S^HAk1}H0wMuUV^No zhi-FBA_s(NWkNgba6+kN8oJ`yB_0*uTy;8EEnO`yLBc>rF6a2TCv*s3I13`x6=`7n zVt;(eT?}P(%$w%#E8>eu_{sJuodjyXRBgVd(WEsH{0U=jAjw8@88GRd9KV-u4@|O< z8D9n#xRFg6@*5Cirs~QyUwQxfgaXwIo%IsN+OfK7TuPcLOp#w#6(;6MP^iJr!v& zfM4aPE*mVpF{ubn{=^NQo&@$TD1u^Hy-wOb{8{`?`3{C%UAg%x&cXDMJ%0;JfFJM`FifTdPKc++`c{>{vd7R+)3E`ymJcRbv)dWb_Sj-)KMN1n>B|(T-EQJ$9l-YLfC{$&#Bm}#O_oE+|fEW zvR6_Zw3LK*zDTY7i;SnjV_=_Kyz3L*!$X#XG|o91G_u#j3{L+DyuTH*)m$M^+^~DB zO;0rL7|q?mq9a^C@IvAgjB(&?+QQIHjr5dJ>d0cVNpe<-=kFe|qVHXMiSDHq8W~Ky zta?rP;KwjRDd6={@`&ywgl1i^yh`-e&3T??GFRvdOz$UN-g`R3=^-e*mYT?ua=kcw zh>G(TU;Es#V@x5dxO3hLQ{9^=;kDTC@D*^-Le|0mf&UKBZV}k#20ODqDCmpYSE1lo z^;~h@EWKw0m?sNrtWUh-{3j&5Z}^-D`GkZdwEq_*bpC&k5ZOgdBBf?kNSfMmEC}Tr zsb~_1vDOF8BdxXi{6l+LGkmJHG0({9gNi%x8PDGQI7Wt94uLwma09 zud6$I_F$zG(r&fZIV8906-Hk#5O-Kv6i#aQ#GP~2iqXNBs(h0FXyYWv2^ zn;w*%hE%&c3FNU65y8n5Un&&h3J3NJqIf|m+dnu?KsQ51cjz{|AQBw2w$?6;POQan z?~Gi&3cq$o#XVJLIDm(>J!hsses1fHIE6LDELcj&X_PK~3|z1**tG54y0pMh%s)4&`~HU+BIpeV9SO8B*n8I`HmB?!j_RnQ+FW=R`rj zqvgGMZ%lnL+*o({17beyNpK|TfEGe?2*@-0qdA8u#KDYJ(t;7`!uusLa$+p^P$=wA zR0rXG_q+1;qpmH})8AZeHZWIMrYjIQQJtcPqURP^7c|1Fe%k&kI)pf`PxCA2cZB2H z&m>vz^H{x1LBF?`FoS5H)7%W=%bLcm_6|$C*5?|7UmBnn>s~NuhFQw*lIP`U^qIM` z{di8xbsa~@fW6*mP+n2Uca?uLw}@{?t+fVRb)Tq+YD2(h+5hg;CWbg50uW-eUuLfAlwT%1D62K?SX8*#n_lyEy zX5@>l1hAKB|6{|8OQ^BTx8-Ng$k3vfFMdGI`nYGhuQrVYhy!xRoYJ#22M%^y5`=aM zwVS8~{jB8yrZE)4c4a?!Gns2$DN+pSkvQq@PsPX%O6`yTG5Ng6Bc}w z%(J6xsz~%eGO!VgG;(%&d-D51-b{j)e|+~s>8WV{x|G-S1K8GK}%kVOU}9W({F#WMEmZt?lgWqi~B6gU)u}e*Q2^Lcoeo89R5zM?nPlo7OQ7i&p26my7dk4V>|mF6JlI zef;V`zZ%Cf+D1H6vThP+zRO}1o%e`roh!eue*!M=Y5i!XNb9)HTA=s)%i+RoYsF7e zA0jV1OZz0uCc2m;Npp6{OF%K$kIfW!3SVPf?!ZAP!%iod8!%&UZ;MQ=+7SwK`=kZ* zfprq&c<&4JV91V^N*&Uju|0?+0Z?GYHcyRy|7TKf$dD5mItY)j`J>D#d}yFtGFZdA zB52}VxrAG;g?ho~8`1k%y8uyixTPQo$P*@HYr4PX#*>qEUD`4~#vEFSUNm1gvMqfm z#KZIZR^U;%L>qtd{`jbzD%k>Wn?xxLtT8v&7KeX-gIU0O&JVYPK$t$wyM{gn#q70q zhW$5lD9#6Sb}%)3;V+=jyWZ$adt6KZL$NN=()A>l9sDx)X6U(nW=Bb&0-JsMxk*7z zPQ_1C=yiYLrA6?cnW0kXe{188m>x(dJMaTMhb8a_-_9Y3Wxer@mL`K8J!;61CM)0% zAoRs>N9nnZwA5sAH~TpT>I{Dv5u$VlpD~H!f_@1Y;qs-jpi~GB@bEBDM9aIN8C~um z2iMQOz#q)*h~wgfnFXH#K3D3n8zGg2usoF~2eYEAa~~|~;(_Fzz{hJt16ZD!Y+{YH z-5WoT;D;UW7;X0w9R>oZVJ84PY;`x4-5DaYob#?!UL6rNob#Mi9TVbw@=ep?s5$rr zis`2qRKT)`_w0!GF>w;M`RlaPZYrQUM)#)pHQW4b+Nm8z_prDV3(RElsO76_hFi>KozrNa;ax9J*>iqu{U4$;RVVh zpd4#fPe(>kV&c4t8@pG2{p6-2QF@?5d}-r-gd$ zH{DxO@@g<$OYQd#e1m~Oai%Z(ruj;CUq;ZGNxs-vYE;$rdl4R~u#Y4wEh!>|9JuNE z*S0|0eh_uRNdCyg-Te1Znap4vq7OfLJtoDz=X^X%lHzrx7J5sd*lPwjaix;{BRMZx+Kz_B5rw`mtW(Th7t+VtQqz z!3p>U|D&2;HORLOqS2+8xI6M&rao;iKsht@$*!Z6yr+E7RNmRW3KaU83pp3nI2?kFmNQ8aWv_(n4=$Zy_{`@l_*`9&{q z7J=BA*AMQ%%{{7ti8QhHrZN*5Ul1fKD6a2dIiv`Y8N}^Wd%%Ci6m!1H=PiCv(_VV+yg)@f027o=> zwd&x+B}2U$%leB+?4gzxJy-ldpTUTb}PyzUL&Vn<>pTRx)>Xw~jJQJOq^1bpG!3 zA~L0w2kkSG6BS7sD@^_2U*K(QenN}%HBZi8#dKU2HcHW12ia;NK4Cvl6O|j zs^+2QoWstOxUCKvt}RTyP>=-5V<*+-WkGhykt`COgT1=8^YPY>!sC^s) zX#CC9m~H+MYLSgZruh$^fEAOBkj4lQUA?-Oj{zrS0LTqUd|M6y&4{PfQ?KMVMDGUA zsSC$)|67Qo4((_G`GfDd3cQ2&8TSq+ebVub7BlB%Sx$td(Fn_45=wq%0t2%?nk|dTLb#Tl5pOVhVcR1N?@j%wM!zMs!$qY#%6XwO-K1NTQ8Vr;Yf1Kzb2pHoA|1F!>zQ;1E}wLywI-9h6sljQ5BYT@3rA?&@-L+bSYQt;T@2Xi{D)W1l)sg`8 zp?@gt&Upx)WUE_+t{^_RG6Q-aBWeC3HP1cs9fiZcBX8gL84?Lf<59EQM_EYLeW)}m z)C&cUd{fSr_;ICBc*i4n8^@{85iBr|)$==K;+)wv<9nQ9^u~HlDvu zl%3@+}M5WlPz< zFkDwd_&zX?e8o;U*+-JnSWL_PY&Bj+isaG!&kpmvown0LY|zwd zvOHZ)53^0ya)Fk4SQ7F*7hMYs2eo$cj7{awl;e!!cHY8uA3R%(2@7Hz#LmoM03Te~ z-KwS0{hg+@-t|-ne-9`>2BB&*ef0Y6R7VT1b*>Acp3*l3 zm;z$3lbA2BoBZY6wUhWT*UDWsghaDsj$+PXTw1==pg;KwpI}A9y_Ret|0172Ey!9? zNThY=+hbm`v@f)a&)b32V?5;+>D<$NDD778f&t^7>WK6rdBLIdOZxGb^;RC7kO=q> z=5mJ1Zxj--9b>j{!ZScsm64_8tE3j`>nSIH}X?K!6bIn zRJ$ZCAmoYKZ5$9JQW9hS3g4Wl%v50(JGR2L+8 z0*Y=ASLdRrEnf^1Mt_>B&4U;9-;+2Yu4?~YY6m*r1yZ7~>1W)bo}Yzs*Xdtk{3-n0 zM_z>}xH+BoIc}m_)IBxdTZ4`b<) zjy_MX9}ZeI6&!xvWX%G+>>Z6A;o9^89Sv%Lm-OSg*-Wn_<8DKTE{HN%H=* z&KdSmcJGm?4q4ve?`HzP$816WLhl6(Zx+(S-&SIL_gB zu2M)@$M5Eq)v}B?Bj{SjsMdUE0UV`)2|32`F8Zmn8Ku5)j?Z&jK&uyi{4!XekZOgS3U^b!!;Q8{}pkMqCg$|5Yz zlOdIAe^`1R>!tuw@&buZA3jS4pMsMW!FM7e&Zf*m3jpAA=AV$C=jhVjHTrcd{gB4o z^%sXvFI=#GLgBU03iddjDp*&9U?)6&D@4Kxn#55LzVNL)Ds&_55w8Vr*849XP{2uy zw@tM5$`wQL(OaIs61iam`>FRoxuCx(Mrr+Lj$;}p1O(ClE*|vY;rf&gUg`R~s7mzo zzRrKkCPE6t*f>Uf~_n|cOjhZ4XT&?5AFF#1jJ z1}eP{DRGkif{zzRvRpTTf>!RO&&pN}~SNmK%kjKUSq@Q^|0d#D)W~IHq-O5H( z|1DpT@Q&Q*k*kjAa)^-`tP$*tm8nq3`4o_=)fBPCPk7J?1=*HG&+X~S9nm!lq#(%0 z{FOYidR%XYY!$HKIAid-I6>^dTYfr%_gGXTI1|EAZcmyhYn;ojSSefvq6chFOPV#H zTqDp8y4>Nu}H+kv;vehRjOJ`*;!e_-1Oo z-wX}Rgs+jq35KES8=qosk(&cb!DHG5%Q?-Nl3#xajQdAp>m~Q?eH3-LaTxgj(NjB# zK7NP7wQlFtF60*FK>%AS+bQmY%_!`pQLbANM-QHr^~wuVWqdL%L>|i=NS1ZWKVY#W zv#OTHG041*et4}W>Z9qrwN`>j&NNe0~8rthnV5@(mbJRp2 zJ>xVRl$@lS9=c&MQ32f=N_9h?mA82^YR&t?XS1Pus|O@^6MYn|-||plLc-Lw96B{? z?ljwi3aGz#YzKB$706+36{{(0IyS?}D|)Wu*Y5TdP6+IDHZah5L9tH?^yhKYv|Z11 zI2LP8JqF7hdyCuuJNL|2H``d$CZ12!rGi~9b@!;?|K}alZ~P2tpEso{I7^zd{PZpbr7{nvwySC)as9x~H60b?31#-!J% z;k$d%5&~Dj)AsxY75hI(q+UVn;CzHzpJ>)fi}%;OX=WV=y%G$9C;o30n7oPSqH+?$ z;OB*%gu8(XXO+$!)e`(ieq7C@L)fkyP%wgGh>+I5M~$2~(z^-p^X!9W_!ocAfZiec z@ZpC!^2mVu`3F!?&a-u*%vbtZTe~1Lfoms&yRTPU03g(BYn$@UsMKW zO99oJ=@Lae5hrDciIVD^qJ(_#XdxB+g7V_=v9SF362(%|m|j@MfG?F*0s{djWzC}U z;yWJ{Cwxv&2Kugc87=Q;@s#MZ)WnQcPy(*}$~oTsmGi2V>9r9?C5{(XFLkNeRG<0l zgbDTjt;dTVE3F$n2Z{Xo&262NveHWxUS@W3*cXUH*PlE^-@&TO}$A&m)8=g8dDYpD8b96 z?MXZ&wH?B~5Tuc_NzJc3Vg0!0y3jm{{p=9Ta9J~kfA2){?f8Psztli8u;3Q?F8_&p zgqnf-HThu9qV>wf0>=9V-4=f~YgqSWYXoHXpxv#O^M@6~+;J-r3UY+L=VS%LYfQ&_ z>b8A<+F7cw))q6DEg#hfArxVXPGX*MP_dAe(4b?+Psgrtc@_L56G3LCQtjMhr3Yuf z_2>8%K7{O*nDjq{rn2Zn;+lqH?@(yNjcmCvIF!jldIl|7892>0V86&S1l4~qVO);V z#I3h)MynU;&-j}{c~iwX4i&0gq)|@lB;CfQNc#Mm=Gh+0rDd|#%e~=YR9l6TJqJ2D z*@`wMcS%eg+^um5exdT!rIsu5K_gNnAQ*~xc+-ccC(52zTCml>zb+YUya-F^k!XuqjEF30_#+ZDw-C8tD#I=LNwXo z@!b>-fy*jx0RG4r{E?erK6vI~jSpL)yst0;C8oL_RFcVDRtH5rx!icTAMWt-=beq? z7L_|v(^EfR^mIKKPLyF}eSgGW8diQVOV+f!Bjj5aRliHa!e>e*HrwopfswK=#b%%I zp}*-4vYyL}CXQ4o z3$EX2x!p(fUPvH}38=c?fC!KZD!YXy$VF>fIK{KG{ z>mko|&-trEB->^fbWofl;Z&vxuYF`jjhU)f!&{9R9ijI*6k5PuXB@8wcNlmocp?(L zc5=C^PF>rfB~kTF_{c`8t3LZp+L1^Jp`c0h&?ihAF#2Mzh!ci}M&r@2{KpM$<1v1D z$rNt*iq~T!q{P_LfhcKpVb>9{)ftuF05yrp&2hyfwkHG&FT-e^K6_X7Ipc`02%iI;8QW{KwJF z@m_MCSBKO7%Oef8N`~aRNM;e|c@ZV@)MxOtr(yV*lqBc5klZ^jMavbXxz#1=jtBt4 z7RDy@QZBUyc?OkpZ|&hXpRv6!LEP$!kHxoAX+RD8>5*ufDm>|v`S~)t0M<5!thJG& z2;C_gv1b@|Absqk%j=Rhdi+xW6wunturV7ZFoOMR*y zN3tGh3dKgM-ckI;%x1`mpgKy`K&W=^GW=JQ+4)kJu!ydsYbg10D!nJldf8!2yz{h- zenpnG`rXK6`?!pLM^=<})b<*m+8p-Os2(ED(jz}~D$;z@rimNXvefE;?8w+mwibyz zN5@|M*J?Aa#gOs|o@KP!R2;iaOti^_SU?cm8|@U zJxO+;3SV*{m21TCzsnH%R;M_?Y^9sNgs1BtiG=RE905#ULDsPvqC0>9Yt)kE+M;c; zAlKMTHS&x`yCENZ>&XqvOjm@FU69L=AU33dj!cbPv7rzoP=hq5$ z!g^!_(#}@fwaBi<4`=k<{)vXx_zv^#DBn^D5DFj1$3Oa(QW_Y&20gpPlQfaga^d=Q zvFtUuj=07u<3H0B$xIv zeuK+LrZ?V6{xwsAC6&f6dRdkMghLkZ=V;J-=3mFklydZ~lj|@Y26gL%z3q6r!;eh3$COjFymOJ!VYDzHpp6u;s;zOWL_o1VQI#e1D(l~OQH{wsFJ&qwcf zm|Nj{JrPL`CA=a_;Ag|3dQPI*KYMj|Oh!nhSMJpIH}|Uv^Ec_@FLON(f?zYUU`I*K z0SOy8s>TI>Ubpn25DfAmv^IKX$ch~l1cCr0cX(&TeVZ}8PHAyp8XdM;ZfQ@? z<+9NwOC#W!!{*n^E@6)+zp87;FD5xS+C_IX;JJj^Z@^Iflo>mBTLv}rhcmnAz&!iH z2eF`Wu@j|_|8@BuRNzDY^vuknh{_>{f{GwBAnVXNj;YF)jC%AjKHT4G9dnl>IjxEoG_ z1cVh2@*ZxDUqsx>NX9+Zo0zZh_s|jpfHh+(fOt605BYZflpz{U-yM&nuqv_L&S)1t zc}EA;!^;Qk-QsY1&fjLxJBmTrZoG7^RI=UU`&ioXiQd)uO^M#q@}WxS+m=)3Vy9kFt`@Dar$u4=<5%Gni;cSy{IW-X zMxNoWTkHCkrJy$RsfoFOSAmMYw26Cs%HkXm56}S&2KKp>9}913^v?GwRQ(rWXB`x0 z(END_7CcyR3+@^S9w1n73GObzT^Dx`E{j8OcX#*Tu8X@YwtKu+cU5=4ySl5Is;TLz z>gV}us^`-^{eAsw72DdXL~KsH?1>)7!KC8_-jnlUUTBzaiTFNJ&sgPBdYhdv^>Eeh z1YG#sh4?YMTG?BTMIH(t%=Q6SR?o^wD8#<>-@1rs?mS4wqBvkzE3siKdM4TG$Dc1G zv%kmNH7&=9rGgZP4gOe@ASzXD4QdKRH$7{3jGLANf}1B^g%scD8@Y%^4-LpkXb*I57lep!`dq@$RdRM9afNSug(i>h;;IJR>@k(K6;$Ch zl|HmqJP)I@)j3GzOp#!3#EjW5D8$q*YevH20Bo>myF&-}Fi>Vq%V3p3yPyhgCp;_j zCvAbB6>tHOF`9YQ?Gj7)fw%0->a7LAK7&wfLg2_L@(^KU_v#empgMYzkia z;2snbz1{hdjJ1tKv|Z-WifCN&&h4|OVG=|e{Pvy91xu7$q0NP^#TrJ?#Nos9uc-Dg z7$;;(S;LpvO4?!VImq>hN;`88#U@T+{5HicI;uE1Y2#$PpUVdep#8PG&9k#bR`H_* zNXvfe-N5^mMM~jJA6godh`$-vjMVf@RO}QsfhH8sm;NvNMWpS?o2bRXc8P(En=miK zPVyrcwjnoWT?dX|fQI(j`M4V}LuHPtacZWIKf6*9vkRX8<^;ysxvuTgw@%CE)Xw2( z-)Fvnz<)OQIq_aG+#LXimKOaJQi-@JG~v1h4bJazi=Ai!zc{^3Cbrx!FNV-w4^^<0 z`qn(^3Or=`qb#j2xw_eh3nD}K#poIy|FvE6qF7lnizTw^-*}BDwtjdqyd0E_vByA5 zO}85wcU#B2!D^;oSm3^Fv8c(mCh^TIbyMohIUy;-ROw7QQA5FPasO2CEK}C3>JhCZ z6d}g7xnNsDWU+eOK&czX_KO}g)EOAGHL#bg_M$MfmpKDqB$Im0xwRGC6m?}=SROgN z8{9iqvoG;NTu`rDP?_J>qwmk?dkQqFT)0_tXTu5}Pn`o&JMb_#=7 zY9}dN*uy}mQvUD`*%w@FjCvpQO_sb1&*KQ``N~X+Pug*{zDB}iS$qHmdyqXS=24v%0YKO?&+51{CPU7Y)_$iWWSnYrVA0T>_aT3 z7)&2iK2n)|c;OI6^6ehLDssu2l*6{p!oKR~0t|~ouX(ZXg593WpCi*ig?KuHMsgQM z>MWCB=XNqsY9gO~cElv5&)009f0dUxZ0YO|lrts5>%>GyIs@kce$>uuBLK%~^LUX< ze81<{yQkyZc~HqTGz!y++cyTYkN;vXcS`wG;2+VWodeHsr=pK?%uC^NYOyMa_svnn ziTq47`LiFOZEoPw8!|g_$xWr$PwTkLqRheU5NPVQ@uAMq_MNNtZexW5iP<%dJZoyZrka zF;=d&S$u=ZXrOdll9(vASNb0)I3~#WSa>BM4W0n<-EPg%wW!ZU?@4#432jF@FVG7b z$_7#6VM4;{{;@Atzaf5bzfdd_hJ*e%{?rx6D|3J@2xdXa!V_%R60>ywCr1PfNfkM{ zFt_On*ZG-I-KVIWatbC|*u`zJFF=P@sb6z%aQm!_5mgEIKYve8%0*fnE3sTlRi zPXG1B-J$YJy+XCZ0{7gV#7n^2#iQ0#-x^)~T4~JH13ZZ~Rv3kJ-SFZCOG>tj6bWH% zA8OVf3?dVtyW%`#_Gsi6e7iKnzUDc(T2$CC+5r1@urQKEsW#tiU22A0?!D=Uxo2D{ zKw&nW`31QKiEkSyMQjNyMXFcfJIfKB~RE_v`1HHZTTYXBf*cNAIOBEsQ)|b zu0i$oV15_(_WuS0L-GG)-3C0||H0h?fd9OdxA&t?w@f2sFiw&#cKZNJJ^Ar2N~e}< z6yD&>p8=T&Aq(vfa-jmP)giiMs`Z=+jpNs8AgIl|3yU~Y_u%%xt zM^mbb{~n<4NPR+wrL>=Jz1+Myq^bV_T?RDqZjHBs)}5z>9@m|xJM9mr{uBXeys~3W z275LpDb>II>dj6fbC0ftsSF?YhjO*(e6%M@ZPNv2qVY{hLJD;G1?PN17$=))di{io zPX8R-sZD9;DpevhQ4^Gi8_oPEin%*3aA9e19-WakdXf@DU(_*YYWWO_l?|1<(4k13 zlJ8;{NS%kMJkex62Z{1H({si2Kkc=6r&MmsiLgUfXQ|L9%dq?$Ee78RU}1wg0pW4%P;-Mtu#fKKz@&{pv}r@k^M68c%&*2 zvl|F8G@dLb7kU97x4l5F4N%TnJ=-)Ua-5dv5wGreY&g#`z05Eg%o>f1+q8H&NcYxx zV14ybo|Pi~pebTd2NVbs!x1UN*|4k28vGrv%9TjE81#N9;#ffSh(RHbjxGfF#BhgJ zc%`U~BBYD*T>k^`86R2~2#sWAoWN4047#fS^VHqT@Je0#olhKRZQ2E;GoG~#aSUoQ zX5X&dt5u~ZdMrMVn|1J&DK9Q=dR`6S*%a6EvADF)gSAQS-s^f5)pf8 zv_2bMRDG^Qf#CnNFZSA<|1*r2_eM5%_kNq0mw6l2j#Ke60S0z|e`}%*c_Xu){?urJ zT4a#_AW-_o9Cumt%F>Dg6u(bZda?ZnAy@TFxK>5LXV_3YuPA;1M9n?U`k`8NGe0U6 zJeM=P@g`N3cs0!$2@N71-d9!HfAs7Rtd_a*;PT}hw;+!lZjfv$}ErKvT`eE~2d?~1dQ=j|dbpLptgAUY*#)vb5&APk> z??S#m{0sT8gVIa)qffM|s+SF(u0W3FE8)Ygw5@F}G6^Mo9}Rj!JUgL93sb6MsI8|N zLTu5;Hp;tV>4IDrZ06z8k3!m*P@BMm)9TW5Wdl;z6KZ~p1zcVPpEw6fgTIs{Xz)aI zd*L*_p;EF$Vq&V|4p!pw{y4AS?~ujjO(psDzX{41u{VT%BY)c|2lWLQ_OLlfcQvVI zoUqp@r>RvlY-92S!x31Jl#D4<>Va67N`+sJ@s{9RQDlK!uOZ6m0KyC3B zG#m8y!pCJ+JJ}RKxuDnl!G-^%>Xa2=d?G?6h@$rx0=diT|9j@_fhc@qA6K|@`1-8~ z*%`=V^nM-y#3LA2Lus63^=MbYxVD%1FNof3M&P_^#!rvD_X1+wkyU<|gi5pZYIk;J zio;e@m`T81$1Hsbp31T2b-)^RirA!XTdHp=Vk%X-WpA-2lRLPjQw_2P;TyR##L1>p? zDB^RVK?d@-j7&>v@Nl?^G))<@AGRY}(GR}fII396BnRx*>2Q-HY7}HY0!Os;;FxWs zPs2(wn#f(Kj%W$+Qdb&S!!y!oF<&4$1C^$)@KB8bdx||e@HAG=&mqMt5Ec}hP^33U z(ue4M0{DYtOke%WK|ygvLf+*uduw}v`oceo3;rbIu|zEePz*l|Lnr|Nj zGYdC?iD$l$BHH>4SI!dhOwA|I!NB-N{SKoc6*$;#2`CD#XNJb8`7rV4w7%FWx(oZ{ zUP@hF$*!w$^;S$njkc?Lbx*3r=md-;m`;|fq1l*gh99Drym^zqt)l$DRyvXNRWOau zT_F6HgOcj;%dVm1{y4CAJ7%$c6l-MPWYt-X`bb<4Fg*WKwI(Mhm}$AkiSMlUS$1tQ z@}l#$wTdCd4GydCX{~5aX{$)NZ{2*m4K1Zf73D#L{fC7Wbe^75oIHEB-fF;1dFAQ| zw~LD9WATk2pZS@jc(yLDdGtmj!tbt+^(gKG?n`2X{YFBjkL#Kd=sr?KLbA_07Ih@f zYxRa&rs9B(mNC|A;~C+Bs2tA$qL+`-`?s~xoY&c86Fe```&7fecI^pbI3cDl@d7zP z=~v-&9@nnNAC5Nda5%psPLgaE;K}Nj1Zq%+ zjb_qgQGe{3l%J^!e{QhwHvZ~HoR+01Swcp>EaLwl`wv2iN%1ZG3um}{?`IdRjDQ*` z5p!-fGNgiy-4!6=fQZU1jqX#j8`YehlI2%v)y%)-_QpIJmf|?KLP|{V0#Sx_+G)NM z-BQD^r`VV`q~&K?u`OWMbW;7-dY9{b=5}q?(_n;IBJV{!iU7iuNJ1#OEk1_cy;OCQ z_W}(8zH*$9tO!^V1UgcbJGrbcgq+aL=P1u_l~i<}abDj{IT3U=d|Yqd7>R24blfVJ zjtCxTCcWMaru15;zYv-3rY^i3SNedDcBF;A(LRVXcZ{WF7soptoxD7#!m7?G&-``h zXWgKRY6Z0v^JHZ5@_-7{1d=uqvdD1kp%%wq9Q&X%&904-A2L$)*UiA*rd5R{IG^Es zH0hG67d^wocZz)xnhCkJtwIZnI$~kWE70s56QP`bAH@O(d5=anGWs)NX zDPUHa9V#&K9x6hB zQT(BWNd`aj+pXtBVTwH4w$W)l&Zl<8=hN67p+g%pj@wK10nHeC)K>m>OtwbV3pmWMB*l~N-pgtz!30!_D@M#Y0(DL=tZv+_1 z?(g8fAhC7P0h2$&cDIaU*^7{*la{j&R^emb>yIIz<`1LK!isa-k@#&`J6>YDOJJsH z3v+7!bl-XD9b5R_t$vO#5j0H?q8i*9s4J`n>(lrN_+jfzu$__(+K$o;+rXK;T)VO0+^DMBi_bM78V zt*ehpf5%&~MB}Qmr0LJjZ-4Id?vGZ~vf3YfZ)!eNc=WkM;THhjLd*AHNr6JY&7_2b zKjSo{Q3MgM?J0U}aKJ7fBD?(=##{rdKx>96mMbl%F|gBjUt+;#S9-sLHZ)Jd1s?W* zw?Ml3!zB4O?%*9yY#zF1dfC)42e9JZWS(BbaE?#HFlpggp8${zPQ-0+_^!r!f9i9h zp`$mJySK3=D*s!wq@y9q#svDynM3rgC}RG^@&QyN7iK%@s(x2LHLpl3D*IKOtZB?V!1G}9 zj1b%rS*hB3&_zIULjd^i*o}8H>D(sPbzISIX6CvZ7dBCzae`Zb*SB9rXVTtz3X6HD zn>>(HW>x_ji&?WrI^Qv~_t=EC>oTxck>*hH^AFx-`MRQW8UjN!s!yC7zs;yKFO+9v zvy?4S{SPDcVI%l7`w5~jIu53iey)Y-S!NY&AfwL)WW#69eISl6$HQ2(-Rhm!ig~ZW z36srgXfu}dCgb%F6D#mtwzXeGCY%+f>c0z5|3vlH^3Zn9>j(z$r_vduB$M?(tUXM8 z;RHe$JB%=989Vfw=F4X19ylm&`Fd>0lVUK6598 z9@4N7pPA19AT4U~{ZL%EP|&zTBMFsqjk}0>;2Zsh(@pp*8{~eoJnCKI z7%|{(nm9QXEXqiU?~vCgKm z2%ZG;68=3sYdGg)OCAN(Hqj35$YCV zXOJm+6M!740)B^WM5b)GXI6vtnBc0x$0NYUJmC0)x%4V;_}Z+N6-ed=`w~k8(ME=o zg-*u3uh~6%g$gyguUHnFZyBq(Sj|ufzEJGJxK?n%nvH`8))j( z9$MG+cOMKnSow_`8=kIifmpuOs7bq0nfq`nMK)xEuG)R_euEHw=E*}xoHZ>*=3wf%*+URtF{+y_L45G zT)5B-hTBcRqBf{4_2h*gQ*)Z3)S++2?;8Mz-FaD1H9wTHh;W-ZWLAY(mxi~mH zH?RZVwmi#6)c#>G85GX$evIP^{xSV^x-l=~2x%(8SN!ehx#wT*FxfF2;J0DEchv89 zP>(;sg!Skg+>PTukosR--yCFBtz{wS-^+Ti1P2)hPb z`EzqJ{TtiB_1?OeKx>f7@1~UW`l!h!V`sn7!v>7K&;9D1ts0psgg2HXT^CEt_cEC2 z+>wS(N@mgV4iPo1{naZ{7E15__5Bi#zm=+PK(1@5PZQhUE+mb{J%a3v-A-XGjciiW zyh^|AS9b^^?9CfI7#Q@vX_R885M{2GKA!qpPO1vyJ~bG?24I6KM#{-DX5pojkq()z zm-b#RZ2!Ww*z&CRb~|ggbK8nz>84}^AOB5cUFqt(z`dJg18GgM6$YLOfOAx`d><96 zFJm^)9Gr90&DS$bU3}zL9l1cPfk;}ly%+u`GfX{`=6kT% zc1t@hq<{e`%WodGo`0t1y>Wqg4oPBMoh0mk`aYms7CR7zV5$=2Um>G3D}fbpyX1^8 zL+n++WFZ#xBt>a+2m4YI1c~g;Fi^8+edvDBWt(ziM`V2%#-9^UY<5ZVvw! zj=!4mL6n?xPTNFj8)c-Z{{!U=8gz7_Kd>0l$>uLb&6LjCemSPc(gL^MV9ST@nHk(r z47@8_0M7Bch5;xHgBbosaklbE3kQ)0AnyB)cI3Y0<|84cB{1BknqXj0%Q!IR(e>eG@&SllQk++^Vy>$&RTggK$%KJ>_Cc^p<9p2KK~`D)X>9Ai;r=N zDiD@cKwjw7{w=r52K-D<3>&%f69o6B;`P5s=$R1>+k}3CfiZn2?bQF1wA&h)7}z@- zc(DDiU1=R0Ojxb$tlmxMI`$5#8gAW+UQK4~6yf#vh+!zkJk$i^uY_e4S!z7R$sFvP z6hxuaFVv=l#HLz}z)>ns$vR4o6?Ro5`T*un^YR469*QD zT4|;_+Loz2raXBO1_03J%RZe+P4gP&+qQsUj`JnoJ8=IGb-$(Nc)jF>0y%h4r*Q=b zJ&HMto9ffgw6;+o=d%qXW9V2sWlvc(@QMjOX~oCL;^aFWu70C3%ul8Ma*a~XRP=|1 z0=wzw*_myLgq;@iyEobqMhcyQ#NFI_S5ed^H4ITRN+4&9~A18Wa)s;j?)#K;@$6q`1c5i1W8u6Q^TIpohuQWo2X6O}_njNV<3 z0JX#<8Tn$P!y9Ngeo<&h!Yv1CTuLCscnX1rOQ;qyp}j6s0>U3Ldx((M@Er za!*`oAKC`<*o53=`P^d;RA*Ck`*NPBd{q)|r?C(h$V`o$N2|vRA*|~8PN;7}>2@OA z#dHPDL-?!}TKYlfDLlAS%E1Rye3^TWEUNX(9A^Krs&qgVYrt8Y?62rkGJkCAnXu4W_=WMHk=qg_RAHRceS&9VbI0XPnTH^}?u0!PFKGSbJ4W5) z3L^Nk#k8-vsk^TjnC(q~5YAr0VWck5qN3V?p`vN&j@2oau|gujXVy6X^a1V_z#s?BoEkp0#!#_fikQH6-pvKCnYu z33~?P*H#3Ns~zifaVF+*UPE*E#9wB(6pjAmWYT=dJJ{e#9mUh&a>8ou0Ayhxvmg%G9WW&}5Pu zQ4o*cS}$Ny!#`&j?8&zj1%aK}ggb`=bgPhtGcFj%+Q1Dd8ok=CHLpY8CN;~`N1tLK zkU2{VZ6eYHjon^BoZE+&7mIA<9~RkIH-{kh&B$v#1y9&I&p|!OBt7#LKlAa*j}FhU z!l9nwgr7_M<-d4LA9`{e#@6Za^>{=X~`ik7b zYG9S1I1G?&jdl3QIEOrI;W-2@_@msnLi0N;%L-d~r&%O^d*>A0ioc*|1bW!yeXBQ# z&bbsm<6ps*UuV(o8;O3h~7PAUy4- zxfZbEt4vl0J$UI%#HAkI%4`#$8g^Pis9t}+)O=1a3M8Xg%Ysm72PbFIYU{C<%(WIj z#jg;W&u``3nhh~^Z9f}tNc#*q^gd<)OpD{pg*o+f@)zrrW;+Y%j+I|~dk;7qmEB-5Y( zuA?Z=_A^gGk&Q=1$=)sjC*0$gg60a$Ndxg=+nIZu9;_|T{tD(D0J3u}Pj=4mCIcBp zaN5oCu!bGti)PO{K~)H*`x=js+h>=o)3d?p=xvg$OYe?GfiAxd3jGXmclg&t98YiU zQa+Fh`pWmNFK=+EhC#%wJo`Koe5p1)f7s))>~`F`-4@s}Cz*zqcdeIkPE3Gjm{kq$ zB;^h36n^wXXKFcC(SX-2>qWNT6u%`}SJkm#B{-||nH5;?41fm${5D25p;e+U;x;&d zhlTQ_tu431$1~sk)6)B^J=YtSr^~Q?HqcW!$f7gUTJunWk~f{8{%?I6MBe zL;xc=lb>rn8Hs~QW`vG3eu%Ro@;eW?yA8e|9{+jMIm2|q-7;_#@ebsB0cPKjlJPE6 zk+Id-yL8o_la6w!0ws{pL5hM#>TN)u8qCu(fnl{swhA3Kry7u~K8PYkhVAH%8w`*Eg}fZHZ}5iWjd8SC zv~-%T(R)v3KN2Qg(of?Zw#oyPl1~yKPZeh zD}nKJUU$Hf0NiinXW5yO=Ui;xP~oYdzRPpNaBKJ?qP)J*$dV7e(T+0t`|dyEQg3DT_97azCR0km8@{z=EZ;o5TZ0!T7nE$#D;!I zfWSWk-k^L4(Kd)*PYHk?UDo~WQY*8W!vKIRoP0vHocci*#=~ED202uh_y`SNoF?4; z-+0~=-*?Q>n@jV-UP`IX#!NhfupgZguJ5#>{<5?lN_X;aAO!+PLuudr{28MA|-Zi$&U-4W!x ztScy7S`Y^|F1NPT>lncF?O*R^Eq4b1B_!gn;Ga3 zMMw0pTtyBd?G5Uf#{^ufDTLkdvh&vo)HF?|4usDtXpUk*Uln5Izv7JinSr|>s_T2S zO^|w|j8mPI@KjqTz38rWX0VL)Iq{2mA@H3M>l?nnH&Xqp5JdJS;Z^ub9!j+Z9(35h z=q8SxfQ&i>0CIBOzx(N9Mm~!C!;ng6*b>L{8b(svdBnNm-MLfPKsoAP_KR-B&jR^j zj+TACeQF(Q&;Q9WkFn_l=uRCPdwmloiaP6@=$o2`d*~W`arKUKY(ZETt9t4kFxs`6k?&`VKRP$a5{7XHC;z6^T`qhzf)@e=xtkpcV^m+|ZW+pN%^#TFLKHM%nz1WIyMay{#ds zVMi3{E629QwqTZTv3a$EmEP5!tc1v`v&gcwy8Bb`Yb&4>x;_iX*_&UiP_GI_3of(! zLT(DPB0p^QZwtY;43Bz`M+QE2n7x(#{?K7MkA77QtEezjY*qt+J=BFmixC19&B3YO z@aSp`3|L=Dv7A1mZ!g(r(>;yfo-*hDGuDE7S~rk-LZiWnrrkzbPzgvEk9N~OtMj{% z)&UV%WdGr#Pytn)F4_2V1vYqw^iEFJFR8x@2K-3TplyE{Cz9RP{d=pSgBJ-;hp%K`%UO1_t~akZuAe3V?H+lPY8L~|#jNwf0-xtyjV*&#g`7WtGKO=g+iNV9JN zyXlh}yg)JG&> z#}rqOg~BtFZxKnzB5h%K#dpZ~WrG+#8E|YGX*yooof@OiJ3YM<0!+TEuNbc~NSnt! zu1I$LSE5LeNH{1e5~LVTvBuxPukM+|?QZgRFliWbOU&S-|M}DU(A7nn~|?@Iav)YyW(gl3WSG%G&fxgf!H?=~hF4DZn{a2M=S)8u$v*Y}+R zyzPW?s;PKdz+tSnHlIF$$vbqXDINxNL_=bqIBLVF6nMM7xAO~%w>g?Kl#_`5|6E>icWiymF;yB z(B)2`ZI>VSM9#$+dtRkhO@lUFx{#C^wfxh8o9lgClo%Em0`lP0Y|(t^^uc zG|a^_CdAh_wG90)y5N7jf0D($%T@MB!@$t~|2W2b&EWqa8G=R*xMnHU-n8iv!R+5> zS|S{G0|S518m17XZ_8tM{Nx#t2&XwMj$=Kn=w1 zo;_rwLWd6~)_$#x+TBOk3Y~ow zwoDLszd&q#p`(#)s_Jf>DO2N`G)_Yh586E#V4D86wccX(QY@eBUa4KXI=^^mpx0*X zU4uo3?(+0we#X-&-(t2>WOUTmvg0n5?E=LAUH@XKwj0$jn^ayHK7;()nMhgt(H zA64~hf@Si{)pTM~CzfAclc+nnr3J@Y4JH<|d6TM?)ZdK&r+GY-rI%DTgIX_ywn!to zQJ27C1gZ`7?k${MZOwEFg<_k|6g$;-u4<{JoZ!^$BHR3b4rsG{Q=}A=erR-+@2>KS zHUDZ6xTtX&M%RND&~nN!ugter*gwoeZ|+S3$PDdnLSD+ad361n5qolq6Ufi6TnNmd z*VxLrDkWDWQ8B^s{#TE4`8Smn)v#T+P?&;TpLMjFEj3G=zMsxr_NK~*K^^%M4p-Se z^Lf`u^5H*VtQc-+WDo zZV0`V`oyz@VBC&eC6MS|?GwBKt)}um)^C-H2e3SB?R2UQ2EXFf>~xMhTzr_4zv06I zrR=VU!P~>7FP=yGxw!|0~eat25?=%>?X2=p5w6gt3 z-qQ%^ZM=>Bt8{jUGDsBDLI_fJzbdEp{$X>a|F!3Mi7#JEzl3)@bK9c!OLnwN80joR zfx=~=a?BPs0_fBc;z=dqrTnAL+X$@#!V&&M6qF4z{f4wmGM6vZqk~A15&G>`i*l2f|$ZylZOLHf7KWw^)9oCuj;Skup3Act)Mn9JuS#&<9Bx( zuIF6D4ZYQQ1PL1yw@h*lA^EZ8ysm7xbT!YfxRM1nF{VKqO}-02BVlZ%?Jw{w$xvMU zxDAkMH(cZ0*(#N@W{*2JBDGF7y~#YAD5^D-A(SgQ?pmqcQzG_>*+SiB)W68-RFWloLK8}5y|=bb02FI5-HVU~&-n5Dy2T?H5hq^btpwD#AX^&P*s zTj8b;ibm2LBts($Is*+QA%SSgQU`HLbd`UjaF)9}Ngk7KQ}!e}crVDOU1UuEaqhYV zZLbD3jg4g`aSE6Ad^7mc>8slLT0_HtC@H+);0|!t{qh>tk^ZOsLyp?|-Up++=X06X z4+MIt^PF{vlZtmXXEW_X=;AgV>>ZK;vtPxpAQ{Tv#=+U70^)6Ee7}EB6V6rMGRNfb z<8T-$5PCnznVwPThh2H$Rp;a+piWoC@4(5hlISQS+`5gxRWH?%xR~lDw$Ex{Y^Frr zK91;*e>~)L!2I5XR;&H=IT(rE4gK%*r#Ms${|!)_tRBcshO=WDJXpqs+e&o1^c=zr z7=)lW`gsdpC?*IfaJ`NgO;{Nh8&9|JJ_lZE2ozMgP>ppgn)wS)q zPG+&uKMb9QGn|B$?lK(*y2OVcI77I!kXE1sy(D?ZhIUlXUmb*!5-~pUgw*#0ztqoZ z|K>d;zqDzbD1SciE%n?!>K{XeB#i z5ZoK8$pP#7utieX*o)Bshvjqj_@qxq*@W#H_S1oBX7ertb6;!?mQcNURLlRK;Q37z zM$g7Nyrh$29GA(tU(jA6L?=|Xk#hpd+ZvyJt6M>J=m`r#Mc@hJZ}`=V4*l+x+4GIx z@k50RhEiydwtmMBta@htZ)&QsNBFABK`x5;=nKD*&f?8pO&M2zGNzJBBxM6;%qK0o z&8jt(aS>i0f?H965Q zs0RphVa@H7flieNw??+CBz>)BwNf*onqg8WBFR}MX{gEu1eZT1sC;ES;Y|qVV?^mB zeRX;1X2|Y9=>zq02?fJ~%+P1M($nIfrKdom($ik~L|G0@k+;~ZnHCB`bzyqJAkSRP zx4Pk?@0fj@eZM|di@hKDlONYc?XiaH83glBr;C)(=_`gCiFC_*zw*Z7+`D0B^*yP6 z>rPr277F!hm!fxL5aXya6Y#21wSWA#Eo4nkHlW$L@#nymK}$baWD!hwat=f&U^VNd zuj)KLYW3@s_s;cN+lqVl6!mqQdSOjy^!~wsUc2-B5}+{*2tKjR;#GcMTpn`&F`$eg zenP5sHwO5hn52HO8}ciat<|h;Zcm~?dGMqT>xRNmpFhfsxS+p(g^n_4mttYFVWcCsdLhJ+mU}Qo#A@x25~%{`9bR*Y;fYC`YS=harcS)R+eQkJQLk{ z>$=r77Pb$6Tyx3;eQz&o$I?QT#pP>^tcF_PztpBatvwfxYX-G-PQ7 zH}p{OnPIU{J*uW(-C)DINfDn{ljJJ>3aO`<0cFKNdGL5=l7p{2O`9A~ejW%!{YDO- zaAFYJK8WaHKy_iP%bO>RTElCSbLtUv$80)$OTPMj8esVc%`R-~59tWmZ*)i6u>foH zXqw1h<>{vbj3eN9Pyny1AFexrqPjs?Gu6~IpF++af_nLyDv%~|*W~0jc+X#b%e&<7 z`Egru6X>y67pS{s!JNrRPVLl@egduciY@Uv@@kB)O#zmX<*%*~P#ycuxHR4lq~G+tzy36YMz(%kns7p!aU;Q zaCMAcMmFePlPpfI3KWEfr-)BF-}?mEgk~8%XRQ3OrZ)GkE3rberB3!#inWxK8+$u) zJ|5cgVP$z91kFue`c~oQo_#rdp^u^r;|Tr7UnALjE&N$A-(wLmkKCJUHF?(-kSHRx z@{;RycHROJtg@HYZ^qs-KJP@05^$6HCnww1I>j?c{qfU#Go-7pX3>T{F>A6%m{@;& zF1`^e#?+TJ+Vm4;2;&)jBUUe0os@KqReM9FVwSmhjILq+1uzZ9Yh#<=cyB2X+j=os z+9ufNKiD3@M96b8O3GVsu zLT>YiXDUJEb}aZ(!CM+;@YHf0I=OVpZlh+w^F|F14O*=Z+a%#<#6iDX|Kp+5fP(^IF7Zs$9u#ehjPtA+;C*6nU; zh-o8N(Y`Krv~m18t)FDo(Q}PstCX_c&6VlsAMGFa(W`gBmsW@n1ez?oF~{e#J@0AD%9F3<9M3 zpTpjpv>97Ot{Jg^`t=FJ3u`$3^7V)RFH z2{1C8+=<6m*sVZ*d=c3m34NG93;y;cP^@@=d#NY+IO^?7EQoN>>tDtB?;pBmW3Hq> zbRGK!D-vJL78h@!P@DyLaJ^}uyt<;iR>IH*NlX%o%}uXOJ~5ois&11P_Lwm^n4!G( z<9e8&yjr51DFzU$Zf7$%P$T&9BluAgns?`vZ0*i_pXpq+;WfB#NqB68Ep>1_tOFPttTfpYF)zQaip~=chc~aYLH@|&74p7k}G>1ylrmZ zD(?fdW-IK`5XCb4x*Vh|)xoPD&b@=GY1mOS7Ms31xLI5OH^R;`rjjVi);NuKV6 zE{(gpTjTEDxO?N)xHsgvVYV`Dz#VE{?@q_fLAuQ zxk!jve>w&i9_pO#djKXaB6R=x8Rsw!uh$7)x5%` zsQgGDMy)vfvDN-(IuHyI5V`qGtGK_Ap_sW7G$CBbgrPZMLAyhAvi^Zp10P{WakHGb z`Geie@1?1ALVr;*OtfY}ME`vVwsuCMYU<0HqbB*kS#$n_`S_oLmY$!Inr2$h7Jt6} z+{!IkVX!bnqyl2_Ic15-uSj6ba6E}jB@Wv{^K3QtNy*7G;&fDyYs+8+8cCT3Of4Ut_>bicF z+Z|uI(bNAC9{rUdJ-?-g{o%@<%#s#H1*wRcYe_yVdckM`-igUn+93LsZJ8wdp(PJG z^(2Qpbgj68af@-~512t8PRS@t`%^AeWgSyGfBab4lA4$|v1(GJV2Oq`dQjqY1tp$qdIyZ%S&lk*Kofu6Z8qWsKPyR`d!@#89IF8JJ5< z#e5*qe7rJPI9qDTHLN0!Y7HS`Pj4&LQ&ISpKuRo|zmFUdP||Is_tx~aPam+-hqWnp zZnydy%zF&oRxoSjn2Tj9{(i0TPpimT8=tE8pbi`aE`~n7Wje>*68`O9vb4zWXU)|? zLB6klS?Mn72sCO!tBu3EeB4OPq2+3+Qv#PQF^1O-zVI~$^txNs)qq$r$_EJPla^RMgN`X`M=8oi; z(Qb6goucz7LjF2#&_$^Ug!-RFn~ zG6VP7h+}EW3t7(F%+8WdszO_ZuQhqUk!{SmTtXK)WRBm>VQI^ba*-h@i%hKkNeeo3 z=XqfdluA3n<9OCS+%a9`(i(m1=6se<4uS5pvpCI*)6Du4R#Ze#ajMC(abyg!^AMXj&#L(M46i7aD zR2MZ5mo=tmc_0xVRC)mXn^4hXBuF~h*TkNiFG0J-m$HZXc<->XkOSv@%c_R6BFlJB z;{_Pma|mXd_cs%ZSUQ8sP#zd8y#*)-v$p*~!Ci9b8QH-``L-FqqvBAbb{GfloZeLX z2QG=Qrk_^7LuEuq8ga*@+Y6b^r8ulncCPxm^ungLYQ%XW+s>h`qrjGD zRK6q7DXXdcr8BH^MUzAqZ9pt&c7izhr@j6CtM9u0!l=;42|b2{Iq>fz+hvmsUemO~%Ai9bRFj zyDBgQ_eMa0xL7d8g>#!pWY#k+#)QR9@e)ripAaTS4zK1;);?lMMKK8*3m8QM5>YHU zo~>dcmE6K5G>uA;d_P&i$}ymG=p@8Vil61?imUJi^Txt9jdGzLv&|V!%9fa!6ASYj!OtXgR=Aad=P}F00 zVq+^TwNB=_v52)>FOOB#{;nAF;l+qz%%ta|J%}~G*Hwa$Bp5C}+NXY?=s*!`sUF~6 zz0?VSfSmaKia2n(DV+G&W_omv!1V-o|40Hyj8XvA3mc^ZC2}d^n*4Z#K1UD1#o#gn z_=8yn|=u#*p{gFwvIF3EF=ddXS6#zh9_dt<8$E7hA7QZ1nj#$qa zIHVeWWgIRzHU7nMvS+DO)?h5)-m^`%+_2w*=dtDh3K#S|v&i*7Riigm_MoP0nKvlA ziWAP0utWns2u-*|{=NTJC?oU|w+(4*Hw=P=M9}rL68-%zBgEcJ&~BcZdSrPRd>%aLu(e(j+uvT0A_dYAD1l#i$vi9+wzkjEj;9JukDcCj(TOOaN7C4IU8!J zE&q9BOmFAz#IWF*8loLt{)zEn`f;x3F!oHB4FBZGl_P7}<=QruEaz7H;&e;5xcGzQ zxX^ZIo~i?UcRf+lTjP=NGvqc7s6OHnM3h1PIn@IV9(kkMZ}f-WvIolmJgoz--^H#D zj7^DW%6O^xyqP~`gWpkGGv=xvlog6F$E%Al`^`|pSTk{gvN(eyxm^kTa+^JEX>z%Y zueLoio`B6>{Nz>e>`%jsBSwPUctcqcZn=&-)tEZkaV184+?x5H^GT!0s2}sISji#J zKi)NL^AgJ=9Cdf8U-MBIz}rtz41bUoo%Zh@#nZTR`21UC{wEU8t}|Hobh5-2mVz3c z88iM!-#PjwF0>de^@3_j_cTEOXgw;QRQUSUOPd(jhapxMz!{IoeJVdaHH=~Gm8 z?u|pjUJ`}-W6Z=>Wt@l_{^zu1a>Tpy{Ci1?VIs15RwrXQQJQY_%flu`RHClkyMEEF z+>+^w7;iOqweYN<%v(vkp~zq5^>On9Em!bBGJ-vJhkc;)jkM7W+yzhEJ9M3M<;EAm zy$0f>KnA({H{s3+FLAipoLH>CQ2jyQ!J2H4&iD{_+aIPjJhNI@9r8DuAQ*_X4`>$Z z;2jz5Gf^w8Q(^TTO*tS~Yo-hN7bEBqPo`R$NJ*%^~!{hC0& z9R<2%Ba1O5;jqfAjdQzM^$oa^f^6189dg^$tYK7~@WKN_*5=Y0ex4Up7Qn|1d0a&< z5RgJA@{G8-X=F&mqG!!E2BfS02vTZ{8}V zs^CNJ8lgMJ^NBAHdr0Z^NCcnD#U?Tx)wlaYYPW6zZWkli(3Cpo?7Gk4dOs+G10$xO zWAHek_=(WkzSHjrLl|>T_0aX3xBky(SU)5FAr?q>(PhWX3WmIEpbvkNl2zs1BsD~K z7KHnjn^JDI6!P26`GhGPPE@9L7kDs80Uii@6AM)3TVpae6-n%Y1Xl z>lJ*JDHaNcXKtMnyIEBWny6F?*#s-2LmCra3-`$RmLq3`Jy$#?xY#DZb%zxL;;hVO zWYUp!G2z{x=D`#grp0SdoAXnB0PNC*ij~OH09mv=v^h)eoV+0ufGOIX!fqp~-w8BK zp^)&M6R99SiQi9Dfm3G)#n+w7gZNX?#`N1x9%-Gk=?{L)w^wp2+1Yngs}0J=aE8by z99I;B_@OjFpL=K^a*?j6jHi((0l7U?(pp@NrSS6-forkb+qW$W!(kH%v^mxSveyZ= z{MR+|qi*a~!r80jD>+$9E0X!#t>uksJK~(ONX~B;gxT;t9U;h(Cf5Qc0|P1)>i^@S zq@MfSx(g8KQj<>o|JNrGMP5LF#6P{<43-?}>q(sizH8lk3(KQ}?1W~_jSBd*6byQv zI&GgSqfcPr$l-+@-&J`>PcNsC6`amdtd8^X^lPg5ZpAA=vBR3?&$Gw8G_V=mZ_X&_ zHsn+rMy}^EU^eirBqGm1u_X#{T?;K|h=HFy{09)Y(f5)Go-U6C5F%;yfHBp^gv=XQ zg@+V`0rEmx1Pre#B6?Dpb=&m1^9@JrTe5NjevSSHsl(_&v~CB+Zw;+7A-4K*n)XBv zlEn9{wx(^?zUx0b9z3?Y zfYsJs<6D;pL9`DSH2z<~rLv|s5NLX4!9?tR@mV|0Xcz2#Zj_!qaLAcEWR!nCx**<5 z{0Px{5@(F}TF$)s-?hMVeQq`<20c8YexIjog|EEJ`F@)J$aUE93cTmeY4XVir5{WS z*lVVCQdHq2=r=AzGp{i@yQk#H+tCqF{;o)fv>KB#b0 z3?9)ueo~m0bJKahlGbS?M3}JivQ+8W&}~9}NM)i5c1UHEbx(nb^NrYCFIKm6|8YuL-Aox|aH*nC zSE=3u*M)Dz*ke$sI)rIOU0YI9k$LB*=A+-#=^aN)_06wQB&P!pH+!|xKW{}{wff5A ziq3di28B}pveu=eGA4{^J6~V>WVO-$Z9XYU$WlSEShJd?snRc%7QMo4B{-6&i?Mdb zaNm6;Lu%AmUf!8Qb>X_kNwb3Tx6Wz#9LVQeFS>q(j$*zLva@VlV#6oYf0sjk4MA-d ze>r^qg9-LUGy(e>L~>#JA19T*v^lXl4tJb$wmWNe`EE zXr`g~maH!LnqV_>o-%hljN^Xs1I`%yF8ACDNol-9TI2GJ#aJUEROvIWCW+*007}KW z!?Vh|vzy&(`5nw60|YG2!X$LPg~q}*W%#eY?`aH}+a?np%j4OsmC+6Nrj*z?4p`lD z=!)=Lu5|Mp{nF*q8IuldkfF>W{R_ImOB}kvXFk8Yp>0hhb$6)1sM@ @v>QJza{i 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�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 literal 0 HcmV?d00001 diff --git a/app/lib/jssc.LICENSE.GPL.txt b/app/lib/jssc.LICENSE.GPL.txt new file mode 100644 index 000000000..94a9ed024 --- /dev/null +++ b/app/lib/jssc.LICENSE.GPL.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/app/lib/jssc.LICENSE.LGPL.txt b/app/lib/jssc.LICENSE.LGPL.txt new file mode 100644 index 000000000..65c5ca88a --- /dev/null +++ b/app/lib/jssc.LICENSE.LGPL.txt @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/app/src/cc/arduino/packages/discoverers/SerialDiscovery.java b/app/src/cc/arduino/packages/discoverers/SerialDiscovery.java index e831d748b..936588969 100644 --- a/app/src/cc/arduino/packages/discoverers/SerialDiscovery.java +++ b/app/src/cc/arduino/packages/discoverers/SerialDiscovery.java @@ -29,17 +29,15 @@ package cc.arduino.packages.discoverers; -import gnu.io.CommPortIdentifier; - -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.List; - +import cc.arduino.packages.BoardPort; +import cc.arduino.packages.Discovery; +import jssc.SerialPortList; import processing.app.Base; import processing.app.Platform; import processing.app.helpers.PreferencesMap; -import cc.arduino.packages.BoardPort; -import cc.arduino.packages.Discovery; + +import java.util.ArrayList; +import java.util.List; public class SerialDiscovery implements Discovery { @@ -49,27 +47,21 @@ public class SerialDiscovery implements Discovery { String devicesListOutput = os.preListAllCandidateDevices(); List res = new ArrayList(); - @SuppressWarnings("unchecked") - Enumeration ports = CommPortIdentifier - .getPortIdentifiers(); - while (ports.hasMoreElements()) { - CommPortIdentifier commPort = ports.nextElement(); - if (commPort.getPortType() != CommPortIdentifier.PORT_SERIAL) - continue; - String address = commPort.getName(); - String boardName = os.resolveDeviceAttachedTo(address, Base.packages, - devicesListOutput); - String label = address; + String[] ports = SerialPortList.getPortNames(); + + for (String port : ports) { + String boardName = os.resolveDeviceAttachedTo(port, Base.packages, devicesListOutput); + String label = port; if (boardName != null) label += " (" + boardName + ")"; - BoardPort port = new BoardPort(); - port.setAddress(address); - port.setProtocol("serial"); - port.setBoardName(boardName); - port.setLabel(label); - res.add(port); + BoardPort boardPort = new BoardPort(); + boardPort.setAddress(port); + boardPort.setProtocol("serial"); + boardPort.setBoardName(boardName); + boardPort.setLabel(label); + res.add(boardPort); } return res; } diff --git a/app/src/cc/arduino/packages/uploaders/SerialUploader.java b/app/src/cc/arduino/packages/uploaders/SerialUploader.java index 6f6b6e855..05ab77ca9 100644 --- a/app/src/cc/arduino/packages/uploaders/SerialUploader.java +++ b/app/src/cc/arduino/packages/uploaders/SerialUploader.java @@ -97,7 +97,7 @@ public class SerialUploader extends Uploader { Thread.sleep(400); } } catch (SerialException e) { - throw new RunnerException(e.getMessage()); + throw new RunnerException(e); } catch (InterruptedException e) { throw new RunnerException(e.getMessage()); } diff --git a/app/src/processing/app/Serial.java b/app/src/processing/app/Serial.java index d5d1a2d70..d8e6eef0d 100644 --- a/app/src/processing/app/Serial.java +++ b/app/src/processing/app/Serial.java @@ -23,16 +23,16 @@ */ package processing.app; -//import processing.core.*; +import jssc.*; import processing.app.debug.MessageConsumer; + +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + import static processing.app.I18n._; -import gnu.io.*; - -import java.io.*; -import java.util.*; - public class Serial implements SerialPortEventListener { @@ -53,84 +53,70 @@ public class Serial implements SerialPortEventListener { int stopbits; boolean monitor = false; - // read buffer and streams - - InputStream input; - OutputStream output; - byte buffer[] = new byte[32768]; int bufferIndex; int bufferLast; - + MessageConsumer consumer; public Serial(boolean monitor) throws SerialException { this(Preferences.get("serial.port"), - Preferences.getInteger("serial.debug_rate"), - Preferences.get("serial.parity").charAt(0), - Preferences.getInteger("serial.databits"), - new Float(Preferences.get("serial.stopbits")).floatValue()); + Preferences.getInteger("serial.debug_rate"), + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); this.monitor = monitor; } - + public Serial() throws SerialException { this(Preferences.get("serial.port"), - Preferences.getInteger("serial.debug_rate"), - Preferences.get("serial.parity").charAt(0), - Preferences.getInteger("serial.databits"), - new Float(Preferences.get("serial.stopbits")).floatValue()); + Preferences.getInteger("serial.debug_rate"), + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); } public Serial(int irate) throws SerialException { this(Preferences.get("serial.port"), irate, - Preferences.get("serial.parity").charAt(0), - Preferences.getInteger("serial.databits"), - new Float(Preferences.get("serial.stopbits")).floatValue()); + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); } public Serial(String iname, int irate) throws SerialException { this(iname, irate, Preferences.get("serial.parity").charAt(0), - Preferences.getInteger("serial.databits"), - new Float(Preferences.get("serial.stopbits")).floatValue()); + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); } public Serial(String iname) throws SerialException { this(iname, Preferences.getInteger("serial.debug_rate"), - Preferences.get("serial.parity").charAt(0), - Preferences.getInteger("serial.databits"), - new Float(Preferences.get("serial.stopbits")).floatValue()); + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); } public static boolean touchPort(String iname, int irate) throws SerialException { - SerialPort port; - boolean result = false; + SerialPort serialPort = new SerialPort(iname); try { - @SuppressWarnings("unchecked") - Enumeration portList = CommPortIdentifier.getPortIdentifiers(); - while (portList.hasMoreElements()) { - CommPortIdentifier portId = portList.nextElement(); - if ((CommPortIdentifier.PORT_SERIAL == portId.getPortType()) && (portId.getName().equals(iname))) { - port = (SerialPort) portId.open("tap", 2000); - port.setSerialPortParams(irate, 8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); - port.close(); - result = true; + serialPort.openPort(); + serialPort.setParams(irate, 8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); + serialPort.closePort(); + return true; + } catch (SerialPortException e) { + throw new SerialException(I18n.format(_("Error touching serial port ''{0}''."), iname), e); + } finally { + if (serialPort.isOpened()) { + try { + serialPort.closePort(); + } catch (SerialPortException e) { + // noop } } - } catch (PortInUseException e) { - throw new SerialException( - I18n.format(_("Serial port ''{0}'' already in use. Try quitting any programs that may be using it."), iname) - ); - } catch (Exception e) { - throw new SerialException( - I18n.format(_("Error touching serial port ''{0}''."), iname), e - ); } - return result; } - public Serial(String iname, int irate, - char iparity, int idatabits, float istopbits) - throws SerialException { + public Serial(String iname, int irate, char iparity, int idatabits, float istopbits) throws SerialException { //if (port != null) port.close(); //this.parent = parent; //parent.attach(this); @@ -148,142 +134,62 @@ public class Serial implements SerialPortEventListener { if (istopbits == 2) stopbits = SerialPort.STOPBITS_2; try { - port = null; - @SuppressWarnings("unchecked") - Enumeration portList = CommPortIdentifier.getPortIdentifiers(); - while (portList.hasMoreElements()) { - CommPortIdentifier portId = portList.nextElement(); - - if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) { - //System.out.println("found " + portId.getName()); - if (portId.getName().equals(iname)) { - //System.out.println("looking for "+iname); - port = (SerialPort)portId.open("serial madness", 2000); - port.setDTR(true); - port.setRTS(true); - input = port.getInputStream(); - output = port.getOutputStream(); - port.setSerialPortParams(rate, databits, stopbits, parity); - port.addEventListener(this); - port.notifyOnDataAvailable(true); - //System.out.println("opening, ready to roll"); - } - } - } - } catch (PortInUseException e) { - throw new SerialException( - I18n.format( - _("Serial port ''{0}'' already in use. Try quiting any programs that may be using it."), - iname - ) - ); + port = new SerialPort(iname); + port.openPort(); + port.setParams(rate, databits, stopbits, parity, true, true); + port.addEventListener(this); } catch (Exception e) { - throw new SerialException( - I18n.format( - _("Error opening serial port ''{0}''."), - iname - ), - e - ); -// //errorMessage("", e); -// //exception = e; -// //e.printStackTrace(); + throw new SerialException(I18n.format(_("Error opening serial port ''{0}''."), iname), e); } - + if (port == null) { - throw new SerialNotFoundException( - I18n.format( - _("Serial port ''{0}'' not found. Did you select the right one from the Tools > Serial Port menu?"), - iname - ) - ); + throw new SerialNotFoundException(I18n.format(_("Serial port ''{0}'' not found. Did you select the right one from the Tools > Serial Port menu?"), iname)); } } - public void setup() { //parent.registerCall(this, DISPOSE); } - - //public void size(int w, int h) { } - - //public void pre() { } - - //public void draw() { } - - //public void post() { } - - //public void mouse(java.awt.event.MouseEvent event) { } - - //public void key(java.awt.event.KeyEvent e) { } - - public void dispose() throws IOException { - // do io streams need to be closed first? - if (input != null) input.close(); - if (output != null) output.close(); - - input = null; - output = null; - - if (port != null) port.close(); // close the port - port = null; + if (port != null) { + try { + if (port.isOpened()) { + port.closePort(); // close the port + } + } catch (SerialPortException e) { + throw new IOException(e); + } finally { + port = null; + } + } } - - + public void addListener(MessageConsumer consumer) { this.consumer = consumer; } - - synchronized public void serialEvent(SerialPortEvent serialEvent) { - //System.out.println("serial port event"); // " + serialEvent); - //System.out.flush(); - //System.out.println("into"); - //System.out.flush(); - //System.err.println("type " + serialEvent.getEventType()); - //System.err.println("ahoooyey"); - //System.err.println("ahoooyeysdfsdfsdf"); - if (serialEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) { - //System.out.println("data available"); - //System.err.flush(); + public synchronized void serialEvent(SerialPortEvent serialEvent) { + if (serialEvent.isRXCHAR()) { try { - while (input.available() > 0) { - //if (input.available() > 0) { - //serial = input.read(); - //serialEvent(); - //buffer[bufferCount++] = (byte) serial; - synchronized (buffer) { - if (bufferLast == buffer.length) { - byte temp[] = new byte[bufferLast << 1]; - System.arraycopy(buffer, 0, temp, 0, bufferLast); - buffer = temp; - } - //buffer[bufferLast++] = (byte) input.read(); - if(monitor == true) - System.out.print((char) input.read()); - if (this.consumer != null) - this.consumer.message("" + (char) input.read()); - - /* - System.err.println(input.available() + " " + - ((char) buffer[bufferLast-1])); - */ //} + byte[] buf = port.readBytes(); + if (buf.length > 0) { + if (bufferLast == buffer.length) { + byte temp[] = new byte[bufferLast << 1]; + System.arraycopy(buffer, 0, temp, 0, bufferLast); + buffer = temp; + } + if (monitor) { + System.out.print(new String(buf)); + } + if (this.consumer != null) { + this.consumer.message(new String(buf)); } } - //System.out.println("no more"); - - } catch (IOException e) { + } catch (SerialPortException e) { errorMessage("serialEvent", e); - //e.printStackTrace(); - //System.out.println("angry"); - } - catch (Exception e) { } } - //System.out.println("out of"); - //System.err.println("out of event " + serialEvent.getEventType()); } @@ -291,7 +197,7 @@ public class Serial implements SerialPortEventListener { * Returns the number of bytes that have been read from serial * and are waiting to be dealt with by the user. */ - public int available() { + public synchronized int available() { return (bufferLast - bufferIndex); } @@ -299,29 +205,27 @@ public class Serial implements SerialPortEventListener { /** * Ignore all the bytes read so far and empty the buffer. */ - public void clear() { + public synchronized void clear() { bufferLast = 0; bufferIndex = 0; } /** - * Returns a number between 0 and 255 for the next byte that's - * waiting in the buffer. + * Returns a number between 0 and 255 for the next byte that's + * waiting in the buffer. * Returns -1 if there was no byte (although the user should * first check available() to see if things are ready to avoid this) */ - public int read() { + public synchronized int read() { if (bufferIndex == bufferLast) return -1; - synchronized (buffer) { - int outgoing = buffer[bufferIndex++] & 0xff; - if (bufferIndex == bufferLast) { // rewind - bufferIndex = 0; - bufferLast = 0; - } - return outgoing; + int outgoing = buffer[bufferIndex++] & 0xff; + if (bufferIndex == bufferLast) { // rewind + bufferIndex = 0; + bufferLast = 0; } + return outgoing; } @@ -329,8 +233,8 @@ public class Serial implements SerialPortEventListener { * Returns the next byte in the buffer as a char. * Returns -1, or 0xffff, if nothing is there. */ - public char readChar() { - if (bufferIndex == bufferLast) return (char)(-1); + public synchronized char readChar() { + if (bufferIndex == bufferLast) return (char) (-1); return (char) read(); } @@ -338,154 +242,146 @@ public class Serial implements SerialPortEventListener { /** * Return a byte array of anything that's in the serial buffer. * Not particularly memory/speed efficient, because it creates - * a byte array on each read, but it's easier to use than + * a byte array on each read, but it's easier to use than * readBytes(byte b[]) (see below). */ - public byte[] readBytes() { + public synchronized byte[] readBytes() { if (bufferIndex == bufferLast) return null; - synchronized (buffer) { - int length = bufferLast - bufferIndex; - byte outgoing[] = new byte[length]; - System.arraycopy(buffer, bufferIndex, outgoing, 0, length); + int length = bufferLast - bufferIndex; + byte outgoing[] = new byte[length]; + System.arraycopy(buffer, bufferIndex, outgoing, 0, length); - bufferIndex = 0; // rewind - bufferLast = 0; - return outgoing; - } + bufferIndex = 0; // rewind + bufferLast = 0; + return outgoing; } /** - * Grab whatever is in the serial buffer, and stuff it into a - * byte buffer passed in by the user. This is more memory/time - * efficient than readBytes() returning a byte[] array. - * + * Grab whatever is in the serial buffer, and stuff it into a + * byte buffer passed in by the user. This is more memory/time + * efficient than readBytes() returning a byte[] array. + *

* Returns an int for how many bytes were read. If more bytes * are available than can fit into the byte array, only those * that will fit are read. */ - public int readBytes(byte outgoing[]) { + public synchronized int readBytes(byte outgoing[]) { if (bufferIndex == bufferLast) return 0; - synchronized (buffer) { - int length = bufferLast - bufferIndex; - if (length > outgoing.length) length = outgoing.length; - System.arraycopy(buffer, bufferIndex, outgoing, 0, length); + int length = bufferLast - bufferIndex; + if (length > outgoing.length) length = outgoing.length; + System.arraycopy(buffer, bufferIndex, outgoing, 0, length); - bufferIndex += length; - if (bufferIndex == bufferLast) { - bufferIndex = 0; // rewind - bufferLast = 0; - } - return length; - } + bufferIndex += length; + if (bufferIndex == bufferLast) { + bufferIndex = 0; // rewind + bufferLast = 0; + } + return length; } /** * Reads from the serial port into a buffer of bytes up to and - * including a particular character. If the character isn't in + * including a particular character. If the character isn't in * the serial buffer, then 'null' is returned. */ - public byte[] readBytesUntil(int interesting) { + public synchronized byte[] readBytesUntil(int interesting) { if (bufferIndex == bufferLast) return null; - byte what = (byte)interesting; + byte what = (byte) interesting; - synchronized (buffer) { - int found = -1; - for (int k = bufferIndex; k < bufferLast; k++) { - if (buffer[k] == what) { - found = k; - break; - } + int found = -1; + for (int k = bufferIndex; k < bufferLast; k++) { + if (buffer[k] == what) { + found = k; + break; } - if (found == -1) return null; - - int length = found - bufferIndex + 1; - byte outgoing[] = new byte[length]; - System.arraycopy(buffer, bufferIndex, outgoing, 0, length); - - bufferIndex = 0; // rewind - bufferLast = 0; - return outgoing; } + if (found == -1) return null; + + int length = found - bufferIndex + 1; + byte outgoing[] = new byte[length]; + System.arraycopy(buffer, bufferIndex, outgoing, 0, length); + + bufferIndex = 0; // rewind + bufferLast = 0; + return outgoing; } /** - * Reads from the serial port into a buffer of bytes until a + * Reads from the serial port into a buffer of bytes until a * particular character. If the character isn't in the serial * buffer, then 'null' is returned. - * - * If outgoing[] is not big enough, then -1 is returned, - * and an error message is printed on the console. + *

+ * If outgoing[] is not big enough, then -1 is returned, + * and an error message is printed on the console. * If nothing is in the buffer, zero is returned. * If 'interesting' byte is not in the buffer, then 0 is returned. */ - public int readBytesUntil(int interesting, byte outgoing[]) { + public synchronized int readBytesUntil(int interesting, byte outgoing[]) { if (bufferIndex == bufferLast) return 0; - byte what = (byte)interesting; + byte what = (byte) interesting; - synchronized (buffer) { - int found = -1; - for (int k = bufferIndex; k < bufferLast; k++) { - if (buffer[k] == what) { - found = k; - break; - } + int found = -1; + for (int k = bufferIndex; k < bufferLast; k++) { + if (buffer[k] == what) { + found = k; + break; } - if (found == -1) return 0; - - int length = found - bufferIndex + 1; - if (length > outgoing.length) { - System.err.println( - I18n.format( - _("readBytesUntil() byte buffer is too small for the {0}" + - " bytes up to and including char {1}"), - length, - interesting - ) - ); - return -1; - } - //byte outgoing[] = new byte[length]; - System.arraycopy(buffer, bufferIndex, outgoing, 0, length); - - bufferIndex += length; - if (bufferIndex == bufferLast) { - bufferIndex = 0; // rewind - bufferLast = 0; - } - return length; } + if (found == -1) return 0; + + int length = found - bufferIndex + 1; + if (length > outgoing.length) { + System.err.println( + I18n.format( + _("readBytesUntil() byte buffer is too small for the {0}" + + " bytes up to and including char {1}"), + length, + interesting + ) + ); + return -1; + } + //byte outgoing[] = new byte[length]; + System.arraycopy(buffer, bufferIndex, outgoing, 0, length); + + bufferIndex += length; + if (bufferIndex == bufferLast) { + bufferIndex = 0; // rewind + bufferLast = 0; + } + return length; } /** * Return whatever has been read from the serial port so far - * as a String. It assumes that the incoming characters are ASCII. - * + * as a String. It assumes that the incoming characters are ASCII. + *

* If you want to move Unicode data, you can first convert the * String to a byte stream in the representation of your choice * (i.e. UTF8 or two-byte Unicode data), and send it as a byte array. */ - public String readString() { + public synchronized String readString() { if (bufferIndex == bufferLast) return null; return new String(readBytes()); } /** - * Combination of readBytesUntil and readString. See caveats in + * Combination of readBytesUntil and readString. See caveats in * each function. Returns null if it still hasn't found what * you're looking for. - * + *

* If you want to move Unicode data, you can first convert the * String to a byte stream in the representation of your choice * (i.e. UTF8 or two-byte Unicode data), and send it as a byte array. */ - public String readStringUntil(int interesting) { + public synchronized String readStringUntil(int interesting) { byte b[] = readBytesUntil(interesting); if (b == null) return null; return new String(b); @@ -497,10 +393,8 @@ public class Serial implements SerialPortEventListener { */ public void write(int what) { // will also cover char try { - output.write(what & 0xff); // for good measure do the & - output.flush(); // hmm, not sure if a good idea - - } catch (Exception e) { // null pointer or serial port dead + port.writeInt(what & 0xff); + } catch (SerialPortException e) { errorMessage("write", e); } } @@ -508,24 +402,21 @@ public class Serial implements SerialPortEventListener { public void write(byte bytes[]) { try { - output.write(bytes); - output.flush(); // hmm, not sure if a good idea - - } catch (Exception e) { // null pointer or serial port dead - //errorMessage("write", e); - e.printStackTrace(); + port.writeBytes(bytes); + } catch (SerialPortException e) { + errorMessage("write", e); } } /** * Write a String to the output. Note that this doesn't account - * for Unicode (two bytes per char), nor will it send UTF8 - * characters.. It assumes that you mean to send a byte buffer + * for Unicode (two bytes per char), nor will it send UTF8 + * characters.. It assumes that you mean to send a byte buffer * (most often the case for networking and serial i/o) and * will only use the bottom 8 bits of each char in the string. * (Meaning that internally it uses String.getBytes) - * + *

* If you want to move Unicode data, you can first convert the * String to a byte stream in the representation of your choice * (i.e. UTF8 or two-byte Unicode data), and send it as a byte array. @@ -535,45 +426,23 @@ public class Serial implements SerialPortEventListener { } public void setDTR(boolean state) { - port.setDTR(state); + try { + port.setDTR(state); + } catch (SerialPortException e) { + errorMessage("setDTR", e); + } } public void setRTS(boolean state) { - port.setRTS(state); + try { + port.setRTS(state); + } catch (SerialPortException e) { + errorMessage("setRTS", e); + } } - /** - * If this just hangs and never completes on Windows, - * it may be because the DLL doesn't have its exec bit set. - * Why the hell that'd be the case, who knows. - */ static public List list() { - List list = new ArrayList(); - try { - //System.err.println("trying"); - @SuppressWarnings("unchecked") - Enumeration portList = CommPortIdentifier.getPortIdentifiers(); - //System.err.println("got port list"); - while (portList.hasMoreElements()) { - CommPortIdentifier portId = portList.nextElement(); - //System.out.println(portId); - - if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) { - String name = portId.getName(); - list.add(name); - } - } - - } catch (UnsatisfiedLinkError e) { - //System.err.println("1"); - errorMessage("ports", e); - - } catch (Exception e) { - //System.err.println("2"); - errorMessage("ports", e); - } - //System.err.println("move out"); - return list; + return Arrays.asList(SerialPortList.getPortNames()); }