From 1a327f8e2c72ed4fdb06efbd45990aa09735f5b1 Mon Sep 17 00:00:00 2001 From: Tad Hardesty Date: Sun, 23 Jun 2019 13:41:41 -0700 Subject: [PATCH] Remove Java DMI tool --- tools/dmitool/README.txt | 5 - tools/dmitool/build.gradle | 16 - tools/dmitool/dmimerge.sh | 8 - tools/dmitool/dmitool.jar | Bin 199210 -> 0 bytes tools/dmitool/dmitool.py | 94 ---- tools/dmitool/git_merge_installer.bat | 6 - tools/dmitool/git_merge_installer.sh | 6 - tools/dmitool/merging.txt | 14 - tools/dmitool/src/main/java/dmitool/DMI.java | 455 ---------------- .../src/main/java/dmitool/DMIDiff.java | 194 ------- .../src/main/java/dmitool/DMIException.java | 24 - .../src/main/java/dmitool/IconState.java | 281 ---------- .../src/main/java/dmitool/IconStateDiff.java | 126 ----- .../dmitool/src/main/java/dmitool/Image.java | 32 -- tools/dmitool/src/main/java/dmitool/Main.java | 513 ------------------ .../main/java/dmitool/NonPalettedImage.java | 14 - .../src/main/java/dmitool/PNGChunk.java | 27 - .../src/main/java/dmitool/PalettedImage.java | 16 - tools/dmitool/src/main/java/dmitool/RGBA.java | 33 -- 19 files changed, 1864 deletions(-) delete mode 100644 tools/dmitool/README.txt delete mode 100644 tools/dmitool/build.gradle delete mode 100644 tools/dmitool/dmimerge.sh delete mode 100644 tools/dmitool/dmitool.jar delete mode 100644 tools/dmitool/dmitool.py delete mode 100644 tools/dmitool/git_merge_installer.bat delete mode 100755 tools/dmitool/git_merge_installer.sh delete mode 100644 tools/dmitool/merging.txt delete mode 100644 tools/dmitool/src/main/java/dmitool/DMI.java delete mode 100644 tools/dmitool/src/main/java/dmitool/DMIDiff.java delete mode 100644 tools/dmitool/src/main/java/dmitool/DMIException.java delete mode 100644 tools/dmitool/src/main/java/dmitool/IconState.java delete mode 100644 tools/dmitool/src/main/java/dmitool/IconStateDiff.java delete mode 100644 tools/dmitool/src/main/java/dmitool/Image.java delete mode 100644 tools/dmitool/src/main/java/dmitool/Main.java delete mode 100644 tools/dmitool/src/main/java/dmitool/NonPalettedImage.java delete mode 100644 tools/dmitool/src/main/java/dmitool/PNGChunk.java delete mode 100644 tools/dmitool/src/main/java/dmitool/PalettedImage.java delete mode 100644 tools/dmitool/src/main/java/dmitool/RGBA.java diff --git a/tools/dmitool/README.txt b/tools/dmitool/README.txt deleted file mode 100644 index 409ab873c3d..00000000000 --- a/tools/dmitool/README.txt +++ /dev/null @@ -1,5 +0,0 @@ -Uses PNGJ: https://code.google.com/p/pngj/. - -For help, use "java -jar dmitool.jar help". - -Requires Java 7. \ No newline at end of file diff --git a/tools/dmitool/build.gradle b/tools/dmitool/build.gradle deleted file mode 100644 index 2e5fbc5b08e..00000000000 --- a/tools/dmitool/build.gradle +++ /dev/null @@ -1,16 +0,0 @@ -apply plugin: 'java' - -repositories { - mavenCentral() -} - -dependencies { - compile group: 'ar.com.hjg', name: 'pngj', version: '2.1.0' -} - -jar { - from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } - manifest { - attributes 'Main-Class': 'dmitool.Main' - } -} \ No newline at end of file diff --git a/tools/dmitool/dmimerge.sh b/tools/dmitool/dmimerge.sh deleted file mode 100644 index dbe846fc6a9..00000000000 --- a/tools/dmitool/dmimerge.sh +++ /dev/null @@ -1,8 +0,0 @@ -java -jar tools/dmitool/dmitool.jar merge $1 $2 $3 $2 -if [ "$?" -gt 0 ] -then - echo "Unable to automatically resolve all icon_state conflicts, please merge manually." - exit 1 -fi - -exit 0 diff --git a/tools/dmitool/dmitool.jar b/tools/dmitool/dmitool.jar deleted file mode 100644 index 3e99778951d6afd8256b1233ac2c52db088ee1b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199210 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 z zR-x;IuoEu|OwwG$7<##rrfvqU99JZ67^(Z4xbTo7oKpp~qyz}?GPMPj=>{+9Qalhe z{bmvVOnD@g)Mr7IjQZIs5Gh+KXVzGic@(XapL1bu-5$llq^5G?@*6P66Lrrz6PV}H zY)=IEZXr+Wszde6BBuIqHmF}M2q=ynN`0c~gb+G`@l7e5*?wa>2c=Iol^=ayzveYR z;D+~bk-oKoMk0F(%SItIww?vAzzfHkU0yk5R)RghaM)vTmO{K<29&DYLb<0?sIT>K zxr~!E$8^T|XDM5BlCE+k=wd^Hauge7)YlKlqf;@DCfptG?G%<2SygQ~C0cwU$<6T$ zh@S+Y$QM?lO)tFTTu0@%xRvY}N?E$Mld>)8WDOme3rAW|3B}MPHR7(Ac1#*)hwaK@ zDXPD2p@-%_(WW8i7Nak)KX{@qtPK@#pYq;p2=~y&?n1}j6neXcRz_Q<@lMU#wfi&R zOOFI4@EJ&tRyX;o_a-f->tpqC$}&7ACC(P+5&^CbPX@5^bEUZ_6a7myj%r;@Nmdl>0qP+q1D}hcx`MMW>Cl+bi3OHCP8lK7VP^-)F z&FAy=6SxPB)lzK;79Dk?au;n$YeQtd7Z>~tP9tb6FHF-yN)1zHAn)2RPtbR}P$Ja3 znO9yTtt4pi(cJOKPY#d7P`ngADY^Z{iDZ7+07Viy1q49(Evx@ZtG6ObLi~B{(wKZg zfTm8S-oSuThEJl%mmc)#i7WF?F!s%?InNRS1^WX2J`t6S%K1L&d1U{}+l zEZsdkRW>{kb<@SxG8#;hTz#R%1TkaLpHQuVRh*)j_M@U*!n>wE82g{mA-MGOtpme@ znB&;VcsJcMPM*3yH*G1rX}zXyt%<9KIl4LpT;zwLsE=rO_F#5bVS3MS^~*d#UL$Tx zIHHC@hl&ilF+-A6)Q1&&4*I^Js&6%iShR*;h_DkHuPgsP&XV9!jMM;7Kjs7K$N#s* z@gFmlgB3Mp|FJlVQ#M`H&4qio)PBrB*N3T61O%`Ws#wj1U~Ct!i?=(sFJ2^%Y+pgSW8?UFhA;c z3G-0VbkvmiL_1_grGgT}0CXIYE6YT<)mW!4n0lGa9p)y~}W-;VhvP3`OG3>s~+U%uTyQbri_6p1P+jI#tzU<4If|JEpmi8mr zKMf{4PYSGR;k31QM6-T$MSN1&-6W#JPO5#en5i2{r&C$Eu5jL)`mEJY9+$y3TcM4b*Mpe|mrBhz6|;{P71|j0_g(47zCl=y*6NvrU@9K$Ye%%O zsuE3tCv(ui3=m9Q`t_F8rEP-4El;l#_c$vF=TBN-5GN00L3&bU79JxcnD1rF&nHnN z`Zsy~)(Q(k-9haoPo#Nr^K^r}{ce;z$HHbo=)XJrGk_$2T}2H<{N$#+!Xm&=!2ABX z*D7|5QKfRsC&rsRisx^P7K1S2C3syS+aaVvNK_kPU*FapqYtD?u-&JubyoBuWR=FA z!y`oD2;mZSjUE&TzN#z7YsmP9JjS3T00dw#Mhe9sUWf{Sf0fJfleUXQ^W_yU$Mu0R zx4g25E}zFjg`5G3Q{uK>uqLlQ33jSO-M0 zqyOh9#`IS~6|FdKgUo=!GgUATqezBAaV5I;Lz)~F*eTe}D*yTySgFvWuxpIrBzumu1Bb%f$=opf+$#KneXM4%O{CXnB*qS$YYt4ZFjx|_D%CrS zR!NgTc58T~(Q4yz<*#Spe_bK0MDB{U;NQMs0Bn-~-RO${?VS5-ePpRd>LRbAev*Yt zVSvXSw?XHN44@)0Q<`boS);laiWG)XRBLmR2x0(eC`Lr}&6{mCUCkGdoomBgRxMX; zRbandT;Db>KcPQ#*Rq+IAO(>KAD#j;JTLzTWA7AXS%9pKcGLRFrxRs-~m$Dp!LlQ`8z!7*pqS$^_ z0q+`Z#qsYMW2|==!SPIvZtwWhMj&9aod15`7GV(aTKWSrp*XD2+}n*TTdf%wxHtGT zTwVb-CWlXe*U6FC+uBj|CnB2SS~hc2nQ?|mRGvz22^5#W1-_r53SgLc9~8ap+mXSiI9KBpBTNekQs%Pjyp)q==F~i>09Q zGuwn^QjIK$g^dq+smVP4=cbGHqT;l!INH3{q91LUDe?WXt*JLTmK4rJW&|867JE{! z?j_eOHY>~CrATI@(9H7U(l;ODg4Xk`GULp+?5&&Q2hI7~uK zS)lCqk4z3%i#9nHSyV`(DM9&PtbBzJKhAZj(<7@t zu^ALUrK$M_=$Yk@G=SS`1oOvDQ@n1{7ot^|i(Xq|fMAuq^*MOj@r`>7qF-ZU_6|MN zI&sa@_oh06Jw!i*#t57=#yHQ~?(flP4)bDo+eewmOkgogWlh3h^u~bE&1et$V$43I z2I}0F)9)>4q1TnTW8N&@>PA;uDobIzS_ufrcYL@+dehX8%CaD5xx4u-6_A&a6~;X= zZYRbGb=1ysao^rQVE5VWFW}87Gu|?4`yG?m3VG((e)CUh`jnN_@!t zP#T0F~4Xe^IN zGsv_`R&_PNufHo?ia*6QQq= zI`1?PqKs^f#p-ifY?8J9mo|5zflCu?ucSI(iS7o4;;uBa9L)yNZ|uqgmYVz(t-6Yd zFKL+u@WQSVpTKh)VqpTVg7|cC*P>|rSBcloxMI_QX|sTwD}|0L`z9aVXQrln#|^;5 zSIN{D>IQ}GvlKNIThflj#^?GpR8l_^r;aj}%AVCo1+U1e%H1Mm0aeQnq88Y>SKywP zeHf)iBGkU{EDzcoBIPEp#=e2*H6C-x zy(0jay=l}y0R4m9#*?D)Mi}ILY6;X1QkS&UaD}o`N9A@XS@m(>IT1Ggf+6V-Z7W|W zlteFUE2FYZ2Ny!-Ff>EqY%t70_d06DoXMlys|bHmlj`V_>X@b7Y(b{B2TC=XKAjkv z&K(yedNjH$asa~0ktC<`6Q>PD*pM(jTxpcPD_x9c2x_k4wWBJG<0KF+sUSI_R-!8{ zv0@aK$3jX}hO!d>MB<#dg7OwCs{}2Eo&&y)bfLvs$&?@qyrMuY8Ooi?cFFsyatRlP zQ~=V10qHql$rYIwz3j&DE1S_v@37Dj!fNB%=85hA35erd^R@ zZ>Si*Cm!%%*%O*OWr=Mt=FZJM6Nu+^1-lf0-;IvwTfd;;D39u^-e!)11a6O5c#1gi z=vts(Am*QV)^8d*Z>B;WhR6_x=;8Vc8{&v8hNAZRipE~A+bm5R6jPGRW?LfTYHh%# zCuZk}h+BYeHqxp3HOht$I|>!sa*k&7+9lNbserOB8t`CCZ`l~`x^G1b^k7LQCvD-i z;&zpts|A`NHZ2A{BhjCZ#gYQp1>?nsfp|uG0K@5u1$U<{%w4OBrX~s$!-u||Bhe)k zmg!2ieY1hXZNLZz+Woo>KTylL0`rP}?TMrF3}$}KPU+n(I(FGQ#3H7LSg_8OW-uGH zKXzPEK5H7*E8FAJC3(i5*6EnrZwS3ARe?Y4SbtY)3Ha~32#ckTkf-0U5bt|_`QQ9# z{~T_`9i0CejrQ*$H&sQ?VTloy?*hDeT*$n)}1d)^aJq(?yTQ zNh&vy^IffnkSWk}AL6bUajg&;vZdCi!O!m-8+N{I3i$iK!yCd?!!0}Q$a7?649}3; z8%+#01#iLghIRVoc^(oCD~~q|mLwD6OAO}4jRi))eDWi-xh}V_q5x-Wp6r5z?HcVP zXMS6lFRh;0Rm3-Kz9Hf-u3__2(3iNCr5&@1-%E+6mZ8#9Yon%=-?6{4<1YNNU<&SD zWmof-bj|)lkGe^xyH{O3Y?BrI2jU~JyM<7nN`K-4p~8N-Ynuw!(a@OQ z2kgF^^vzKv2ck=5(csxhqLhG)=wa}CFGrzJT3BvT3JtlT z+QI{rF~d@eA={X_l!I^-Do@lk=tqe+A zPhQ{$K2|_fKNu?fsRQY<=-}?4uOG5nbvVOe8W0|c(aTupAnhV?`2Mm`8z{ZMA_!?B z(|&-J{Cyq;}S^~?gHUra=YUN}w2<1TRq_zY%QFWA+mArDjr1UeUWi705 zM3J;~1)oPl#6qN%s!=T|sFViKgtjqM5y3{mlu$40mjCv=m@{X}W{q3)F?ihYz3l$I zI^BMm&W`7UH>_k{36Jeq2+sC(-2Y{4J3xoOeG$B+z5VORu^ZMSWxx0=-AFKuhp%HQ zTzUI?kPqK?I^3#bBiiTW<%oIvbXawp0pn%j4hjMP&ItYa{f>~I>PLRk!P005=l-aL z?<+0-!+rqR?sCz;2U79B17>Fp46q}Es9)rsU*sD(?#F{F{=aj!BF2&$h#A+A$B%>cKgf%XUN29J1>;2YAb|P79r4C<2mb%dM-ab}Y zwiJyqO%Cc*GdZ?CU+H>EleBPEbL$3P>#~fvkhNnYe*2|*E6>*_w}nMMx`z#Cec(=K zKfX!cm9zs+R)?pcHRWj>|9hc>vQh;zeqqZhAwMYU2(q}KMMfdd;my#_Kt^&fsH*Wz zJ^pvpFl1zlNgVY$C)Cd|CpWB%47C) zH4+u8O^sH`0j-Lp;0h{^i=-KCe{b)Ss~O0gdO5muIH1gd<;KJ6RD+5}aHB7Cxv8dOlK6(`RXi=W z@>q+0+f|y`Zs(}R=j$$4j@ApnrptYg$fiQLDRA!=FsvI!tp||v0F`_$4Ua2bb|61KlL4rRo zYIm?nI;)LtHKcMe5&zBd)V)l0Y5JWL^*CQ;_?9tSQUs@?+JlEt z{fgv&HK?G<8;_y-fyz+zisfHtxC<(-c#o{FsF)cL^UgQp6YNcEB}#(ohl{pxp^W6` zAd5i$Td`oRP7NqpY5=lU{hrys@DSv+pyELWO(?|l%!nu3l|!dNmA?OQuwL~8yI<*E zr>E-BgSiLf*7S$H)z0eGpbfQuyaw7dLrDx;GZ(eoR%Ixy5Qtt9u0`c5$k*9mzG@E< z`$sdZgxPB}Y=D^V=-x8EwLB^S>d)S5d=#pCwI>PyGn=GfwY!W+5QZ@VRgAP6 zs?^wsq$0AhMy0SK4^p&f;wL)1#EU82xJ{IZQ&kj9?NiC&Y=^+hOd+*cio`voz8aOf zZm*N=2RKdXc$}|-)gl4p^Q^&1WTxs!^9e*A>JL>Rk%{HLLf_n5t|H@#V8QX zZHP9Xl|dt_f@hj;)iK(!nZ1E!FZZg($?22M)rX3>$}v@fVI;=(gnhPyU3$>LHg*dPy-L%yw^m^s!T~*>vqAvB@m@zjh zA+M4&msML6kY-66ZY#%2MXC0*b!3hrSL))XbxB>sPEzC@l*Zk|&Ydlr_1>f%57po) ztJ<$dRd7Bn+tn9kNsW;Ytex#9q#G9GOG@xhEPM({k7F>Ov2*~`GqM-LyeO2vWuwte zG(Ci*fluEU*EJi8@xM zO(uHhqU}+v0Hr6c;>>tSW9L@EM4ayLQU+H<6UC%n=2YP{ z9@3Uo6km1_Nc8@wv33VOOC#tvXN=D~qiWVkrmUW7sGeF-8#V3fiaaNy;>Lumdq%Ey zLKSVCKpgeF9#wa$4SQT_@T95+@VE!`0E7 zwh(4-TYPq9LrxYwKmJ$^Jk-(y(e!LMF9(FPH@Y)7afJCW#n=Y@h#eM3qH$iGAGG}` z5KBZ{!B8NG))`gVBF3U1o@uiQE;>|lXpkv-*G3q9tI#QD!wwtpB@2gJ%Dg>ELaElc zGR`6ef&h$i=g*>u+xl9^J)1-Ix6?AFTftBs_MeMJpxhr6aEHef){7bWV?q9}x_ENc zFD8XzoTUWKQCT&AhWtIFo`+8k+W=d~+IpRfqq!>YO040{M5@0{u%W)yYMTD)UDT7h zFGJVd1ABgVYO1>oFsBj1*R)^-bK9&hs!{slDs#nbRh8q&o27wKtjekEx|6_9_UQR9 z53?svFYg&M8h5MjUKi3g`k_;fYzB{O`y#koGr(%oA&$lf&q+FXehYxiQcJ3#M15$ADr9Kl(iBTESp`@X!1rTS>-+SXut4>u&i=AbDPQ+ z2sazA3r-wNg}Nf`ewmZM(Y4&vcHp%i z(8nPh!u!KLAECkSvu#JNN%?_zWPjNd$(+DH*QrL<6~Pw3x^~^MS7%t= zi8;ry@)rNHZk8`!I2MqBG?&!`?IO+J2#2%IAwV|@2K)mqG|J-rCZD{2SN+>UP!FCdJEU#cE{_C9QjXO-oUkjOX!i8=e`1%E&wr?y52%cK!qNw-auEv+*N0iLRF&g@X#NKM2P?gk&m^ySN!yOX_5Z- zzcSB~{ewxPzsIi6Z|aEU|KC~nog(^=Fked}XBV^o&Yn#D&Ym3lJ{A3!WS%+-Lv;j3 z-#sdQjBPBmA~Nhdd-79}!VamdY^kdLWO5|*A2FhHsKT&^Ls~gpr_%v_e<&XR89s@K z^Bq2EJX8f`!%oe<3e~JF9(cxTRuZhZqnCqxmZVq_E)5VKm0OT9h3^#uy`)qW@|CTy z=h!@y;>0WDJtdC=K3Va1wg05_MX!ykxn_mh@b+YYVu=-;s4m$`TBzkBLB%PYYKM6q zaO=;E{S-vW35&qxxZ?KTa=}ksbJrD6LfGt7-;M03ec1c5i9!R=v1O`6YrViWU%}7X!IwWF;dqHA9Js|I2JGCfJ)YQG9(E~Cgd}KFHR9_ zwYhs)m&1e&+ zH7cMvmTr`~lzHOtpL_K4cK-CWZn9`XEE-JUngS;Irq}Q^v!j5_Z)xs`|juO7Xk(#+M>hI zkQjt~Vj2_mu_Oed;||SVdAt}jx)r*p9hz#6gA#8pU`Aj_U`k+2U@Y4jDfeK(s&y%9 zVbOnj^Zpck%cyF~HpV@s>+H_umdx)kHYdb`}IQHTt(H z>#AvBiz$-CC%M46`Z8(kDzJyIeNG9lyeitgdoE>(z3_3V_BtIHW74zAlx|u*V5_Tc zTh2t$!Kk}oZ6X)@z7!Q&U7HgZZQ&E;^NNp6D^=EXvb$D}Q*)e?D%;_1-ZiK$*p^tc z-P2Z`pp%WAlbf!4$!CVD*>KA2UucD$$vQ~ZZ``g|W}6zf8e#iz57xhLG8oKx{-tcU z!BH1bwRWdLz}${JM4!v7c%hwQv|HG$S~nE$VThpDV zMPfg8;U~JJ^r0LQLGG)wh~nb7I4KdC+f`W0awQbhT$}XC4d!Fg&>tC zoFtKTtdY1&e8>aqWCz8<6QqYHY=$?D2!3kxwJ=f(Zx9BlLAXy0{!JtHsN^R`SRC#s zqrf>Q5+im(5Kr`e9WS;sOfkZb{|+>G)M2$|BI`U%;P%%QmqYZFnhxtV3tYdroDS3} zKI=V9(pSdhFZ^0#EZkYpO)5WGIDJ5u{8~_CdHksMw*@0@ROdC5p7yWbUy72=lD*%! zffkr(V;Q8dT9`-nMxLQaPmseDF;H5VQH4_phW?ee;r)4|D1Z!5h$G6~SGOw^p zG6wrNkmqBhxySr#x*Z9y7v zTPY%~U1>xMVTT<1dD@Kq_KxBO3Mv{ZnD3>)04E9jbV6Dq%UkqhjKC{J<>|Jqh}6Hpr za6)4^Jtk^Nrs0y#z~f+!^daJ;K^X^scoCX;d$5E-c8#msH}>(;c57ePKEdww5i!;$ z#MJ!-A`m?9=^5z3?u~vBfZaL$NGGc~&!5Dykfe+vkoT`0^mei-`qyq z)O3O*WTY)Iv(#s)nDm$y8=1oCyh&e?)5PBvLqHwaIizsfl9b6nTV%QIOJt$!M554S zGBVefUAfcP7MB`5#igo!C7<9tK4KWm(^z1WGUaAMi)J=?cZ{! zX7s`CDDTISf$C&5s}3t5n6)g_ucX#-BNbfv#q0F-*hp0=yX?s+Mcy>Z)ye~;R(B;S zPW0>qdM=|!xJs+2M)B#I#Hv(tsg?a2PNQWTj7MSVsH)Y|*=J&6k8^Bii7r&hNM7$V zQXFLdxInRml0vm*AC8S5ky2WqO{qiBvACpM_ESAb;)E#=hfJ?aICmABbz=J)i*ep< zMFU^MGI^zv#*`?xFko`h7V5LiQgx-#4&W)`isdBinXl3J#mh_R3{LFaZfCX^PsdW>`aZDA=Y04^jJd)Y0pc-!ID~-)hlbN!r$9kad#eCF>yT zp7#KB&7rUrOa77ztum65jn8Eh?I0~1`bTaj2XHnYR*p)W<^ zmF@NlWlv?{(-f~te4p%Bl)iNGe|IhlGkU>49pJi~xDLr9j-fdroN5`W)6Ngjq{MC_-TyyxlL``LA zNSfNy{|bW!oO zp|!;v{gqJRaRCR+g1n`I^r=9^2V}6RAcs_7&Y8A#H9t(#A$7w^Fx~z1$jG&9e*Rqk zinPwVDZ1gWDq7%LK2@6HdAUCZ#va3%=j4ws3;V^@GJl@MRg)`m=}@!47Vd_SP*bdV z)t!fbsqP&z>|8o#;@5xzKX-(n=!T4p2Oo_4$TILWiv3Utx5lOQV#v(|a<;?%fr9iX)tn z^nnV(6uoo{pS6F1{u4_ctf^A7e}5V5Vg5&X+4r3APZTLEBO&@P+^DXnfun}H!w~{o z0#e#i3MMVpZwo1Hty7w+twT6ZrHM$%UT{c?6;?PQn*-a{^9tho*!TsMX7fi;uhy+n zX3y`Qpz?iJR(Mk4d@+2R%jM?J`e~lu&GB4+z#qJUt%?>y-Z*+w?ZhEbnmCgtG!MfO zs-4t&mD-H4aHs9znC)*rVEi#NMY>lf?fA|+HoDH86E2?Te2^_n8Y`{Mt05*d(hZ`xP84&62+v8U=q3tN^Vy zb}7zj{f57y(n3y7W)6$ac^>#w#e><(i5-nJ=07&W-W!tg+^(6ZV&&!HnxiU)S%G`& z2M8Uv+k&wA4JRhmR{G960>kD&qU~MM zL?E10j_iQ)QqoWiaLVX*oUoj*ru4Ja1g$L&|H)c&>A+BLSOiZj#kIq^o1m9lexg)? zzWn5{kaoWPQ8L4e?~&6X6$C&s^UmAek(nTp;7IC09XTo9dG$v~m|1z~k1%0r46at2 znj|R~GB1RUAp=625Z1dp{lT9HqZ>Q-8@7zuK+XZ{yc8O3Y|p#lzlr6*=}FxVQ6OdA zm(L@@=Jsap-bBsJS(zD`Q#F`J?HHhSf8(7Na+2&S25)vbx&>(%DrTVT5g#OJp?Hmf@~@2zJ+|PGJOL^!~=iXJb$~ zpmT{1Nc<$ut|`9MzR#g^O9#ycd`B&EjBx{6eLKP^9zWAm%Q1Ze#}OtUa+;Fg=q;yR z^ra@@G48+%N}?s1qXvHLLKnkTdJw*mWaX`rjHc9Sh%HpV8=(rtyPmykM2w&;Ra!*w zi#(#ZmS+_U5Rs#8?z6P8e#WfQZCBp_^7l=ttDaZzTf_Ub)`huOkgC1T*%&76;GBKr z@VCRfGWQ3HBkvqtg}J4#wSxSU4eJqa?9yx+*55x$vN1&?%^V0~Fw#&9zmWd|jR$wg z_FFscg^rqCmb#S*Lx$&zYz{_Dpl$0Ik$KjM^b zRfa9OqDQgP`UxGe224# zF!6^B9DqqTze1@s&I!4CO#?dL_)h($|391WgoQ1M;CJ&y`oA?_5lLmae>Y#9e>C4O zcv386aL9ETYX;#?R;aXjZH82BX?jUkIyOS~(x_z9ELgZ?&dikk>q3P({x=BSsV|_* zs+Os)C#`@80g;{eX;{_8H2Rrg{!^X}i@DvsFL&~QkKd2=-wCak_$9)eVXlbvL?}Z_ z(-0FqI77fqLOtOxUg<~8Q?_*tTBa_kGZ3~9wrT5LT7%)x>cW^q5_}zFHi0v4?A1iD zhv4Dgn@kGmRa9T<`BXU=*pt=PE$yPR%+!%2J1lcE@d5@lj_fw`O&aamQW#M7>af~& zFwspA9bkSLhW6Z0#RB8=u8n7Q*F%QIleX?A0N60=RWvX~5!Z}#$^}m3g*Vv(Bh6*x zRharh^RJmVS=&(IvI{fsE5TXD-!!$cMfP+yqgk^Xt1{YlV$HB)H-&R`*m8mQaRsH; zQ#~uPx@6M)MLh(qPZ#lT2@anEU3)Gjg5v0S5uuJNSsGPLHZvIpS=5i|S z%51e8%T$G#mbU#VV|hr?%x4T*UFMfwb}Da>G5kC^PlO6x?f%$5c$ zfB`RQ;&b|QEi&H2>=)#2uD6h+I^wa~LzS8-9!fL_GVEb$tVYdNl^wBi?v~Z-L#Nbz z1L@1f7zu<_ZUpsY(uHL-uhRQ7e<=wA&n-_)Z&}>KfBi~l`O{k6c`~id%+jARS7Wy1 zG6j74H#}}QE{+8U&Sy&P!IRbJQ>=yeA*GM*tToKuOirg=wpN^*dQIm;MX|h?W$DAH zx70){P~+JPm@ADf+jXrqtAv+>?oF$h^7P8vY07+udg02Nd1~5q&2=%dpkPO745)Tt zex_;Qyu1PTlGFJ&Ycn9Av7;{i>h$ep-R)FzU$A8Fw%ig< z+FNL|=Wr}L8Pond(vHBDDD-%9F>};~@2z;@!m!TGj=+xWO_VM#@6}cq14h7)za*gK z1cK-OqE!5X^Py27BJ{8?oE>Y!Rl#Zq;dtAp2O#h_FODOFAo%>^p3dz-R8L8G@;pUvFSq#L}mg%N8;iMTh4CjDgIedR?S z6CLd&c|JU*J;BlRSpCUAz`2}1P}4E)UCUZnBl(e`iO+fq3LmQJ=$ z{y10cLtQ5GCGd(-K`@Vh3|1x_u)$jj~ zH^6y?xf@@Mk$l||=;Ne2q{;)gw2&ztxDjebPY#@BGt>BKU`oy9zLYsj^|cOua(>@G)x`1BDBfEL}o zQgpZG*+^_EJ9n7scEjVmvkeQuBcE&30k*uk;YP5=GF8V%VFA;OU=eA&UdRZmVK5w6 z2tXf9GC*dgOHG=?of(7&z5z@`TLfbfK_v^-ZjQmpDi`i9ijME8HoT$ zY%gA6O<+GIppebE{&#?zmBtHo)F<-BUd%D=#QqyaMYuzbZpWC}C@I zOA{6aTbz+ucdFE=Q+bP7uA67P#^(+&nz!J$sLU#OunY9JB<*R_*POJQW4P#;+q=ge z-2Al!z{I*wYuF4fnTx>V{3>p4Ic`;vtpJneEs(d|npS?qSJ{OqQby@J2OskA3LWRY z&;7XwXAhx&Z$*fZZJv>>r9w_n1*y?WGE>~6j$$8q@QaB!uEmy($Lt~EQ@N40X212h zalpnl@m0LKutzD*L=d%GaxF>LEPK|lEm3wkp)-R*=0#!9F}LnTziV#G5iI?D?k-F_ zG2;Ppf+qjhCuYGtcCGn$K!PA`s^Pg`%V$YVGV9pNmzd=lxhi5^({MJXszD597^5sD ztOL=CXm{zV;HyQ5Kd)d^RqqtEm_v_45n~C{<`dnLeMH_w3i|H1Ucfs{lA|cT8>zW3 z`$9%Qg!hSNw$$K&d>kYtT72UPaqP$SB<2LTJWH53^|tD?wDkhy*tYdM+D_N zR8)b@p2OiwVIg3dZw%>aK_}0>;b2XOUEq1@+1coztVg&~d6^IwT~iR17Fq z$?Y{I?DpU|ku(a#q1-;6nAH6T}^6jkx6ps4lTFcO{w!Z{|_{5`x7drmo33M{(Z z&MQW*I3Hl#;zNv&(ReT^qXnde$Zn;jEE3L?(WEgFsMrp_iQEwyB|MN# z*7k8%;UIYmBi&&ItyV_werN9BRPp6InBtdmmun;DtljPBme1e0yZ3wnf*&1$;Yiyt zMwsnIm_u7ix??=XPxh!T9ku)Nptqw1hWt_8nh{1ww*brcJWM*OaT-cSSj;Kd;!?av z7#53cc|MJ2-Koks7Fcv`c>oKZ!*GiSmq>$=8!z)ZE9Q^~9pC{SYj;_?EW5fbt8+}A zZ_WLJhpX6Xwex`2ex{sbylTEG@!oO5`89aw7rO_|ueKSnY4w#B4%szimjI?SCB(3E z6#42{z0*f|`1Ib}l?cffwBlg4G4AfoMUST>EgeeRZcjzflIa7Rz3`tB{51Nrsp~6{F{@ z1m||)F4T5m)s$TPQrEVH=cVlzJ_59wwHP~BMX6YJ>g<8AhU>#%#>MuP zvZkD7X+~kDKI%Uy8>vY(L0{xsvL6_wRzvlwIm$grP5ml53eI0zV<03(+Qwf#xh$Ve z^BQAxBk&ytpw8np`nH{OUurC7u%}I<_Eg)WudBD#9&Z-ntP{hcyuM3IG0rHA=}^gyMnZ|Iuc0}gOhXR=93nPeAR#zC;8H*xDF zJY{6Z;!q+LL!zg2In&mDI_0g+g5Mj}Ad%OR1_(8&Z{2aLwhX&_Phy3yj)d~If?tC1 z_~8_@k9)R5W|5MSz!^Ktia*TB$1s1z58MI*Yay=n39*%Rd^i z7R1|}pwKU*e`KFQ5kF2`pYTn`ouDx|p*KNFa&f>oNgfQoPh9tdeAJzJ`4y_ZmLI0U z;p^=vUzHrG&;prhh*u#%5UPao475;wv40vg4NCB*8RaYMwZc)9tiFJ>DnQK=G*d8( zU&B<7W&Ca3ATgKIfEO-1l{txJ8S)FV6;)I6$(X_%)I-=2fgcBPed83+!FDK*;t@8P zPj+K7;+NY|kK`fmTu%8$)NZM`aEcG8nVUI#a?58w<)9=zB)FZg&4Uk(<7Op^4Y?=I zMJF1{yy{;@POf$_b?KI%Iw%GXD}@Zjv?!f{qwa1XHdDc_^ttc*D3|9cL9^Xr-Df)*j@()7JDfX*IN70|qx808DrU`wrB`kgOl?Ji za@=0K7g88@HvZK;=ABqBa{Eu^xj9kwI6>rMG;N8dkArCw?3 zoOrcDJWPqn{WCa7a_|9tyN8T9ZKKP4;hB|JjgfNjnSh#6xy`O~B57hPahUX@tBzdDwlPX_)bYRU9ZhM3d#KTG9r%Fh1xFz)SEKg6` zD><3W_kQeMKw5h+)qREcRm9QO+T8tMVfwz<5A$Psy!7%K$dKZ z-V+BJc!7z!t9{jr8`eirN@?yfM>vmg+-bKCAxO2JvRMyVt5Qb^~msknuTn`EA z35ECdjBQ(Wo|-x$yWZONELW->SmUoBFgDrhvoa-{8On!^@eP%y?b2jIakcnnDi3VJ zdCf2K0IMRK?!Ks&sgMjkpRV65tC07iWt@a}TSC2bFTI@}}oma9%9>qhcpYbYNHfVOr!8tP^+2 zqeKNB^KF@OMyTi~ymP^;RN0J^K`nN_DQ>{Te7XG!DTqmkAJrH13neU{-LYkyYE46L z!wUgEVnBp{h3At^ljj|lEHJVf&!9c$X6FMRJv`ExxJ>;W`n=>++t z5aw;DO%Cgji&5<~eN_6tmz_~IqP*dkAKhaQ6t9pR9m-y_2&MVU%nHCcKE_9~#Oy-! zy~k?>OLXxLO!Ibid+A0J)*2T^KA!B9G`k}4M3sPS-y`ja76Re;ScQhR`uVl0K2Vju zt&p0v#NXUa^2b7vA3&cr<4y+Q!Xnnyhyu3A#trnMU)-6$SFbNt4h$%u#{eol={_5NX%=kuuibOx$auBB9@S}Zd9J&37dLP$m`M~zM7N08>!?Z&e; zZU5ULl7XE6`>>?km;2*7FWe7y5I zvF5diaODz4ekcm$2^U4dO?1hRG`uH(VAx%)-y#HbOpzQV|$I>RF>~$2G#pGJf(mWcXaCMr;K7tP_W zvs^842$1z(CUH0}1r@}@9MFWS31V@3UeC1t7OzwVx%XWh|k@aMnm$uRT2 zGGgCyIr{I7?EmExEGGYNDooYxyL=G+%lJB!5vbKf1qUCBz*2@WjA6$J#ag6PVl&7m zA)5JCkM6o8ZtC9Je=?9}{j-2NPe?<+rN8g~+)VR7PB*i3zr4@I8~ngGrV5|nb#z;4e0)=LkoA&NlPu>MvzA;ara1J>{ z%*$LYTa9e#i)Ne?y0vXx*qHXK*pq3g8LX^nrX4t853O@yLyFYJ?1kwtb4BrsQ}Uu^ zcPL=4n&xJMR#&CK()4{-Q&8Ge^A4$8{@^Gyc#dL}W*^2LTNtAod#*TR((pJ@3jNP! zcQMR~-;9=xav3+a6XzKvOn+hv@VK3KWG?tUn;Kvy!1fQxZD7#xH8p?AWt<7y7%v<~ zKT}3}O^5dgB6P0kDdOnL8f1A2d%or45z?mdFu0}rWLNf+@^*_ZQOs4Z;+)@3ChRFa zJ}O}`XIFzZ>+a}&rkDy;FaLcg0!`jy7Q_@Hc;GcKq8V-;%n$X)hgfe8qV);f{!aQw zNZeSf0FL*%?w{lh<_!vf#s;V(%~#uW%+h}RNAD`L@v&x}`n9Nv^y|hBp)WtWZgn zTTpPsq9mO-h!@LnP$n-MlLNS$95?t+W`Ly2thV^uD!+vEf2&1FQRRQZK@B?(oE0R0 z^|aomo+i9-(hSbVoDA`{;8Y9>qDYiG7$V?g#VxjVs8Sm%x+$&Os_x4SRA@UW#mxs~ z%22^z5g92ND;!QkmpiT#pRKu1*npDqIXyj@rXJ#)=V0@jZ621FP8OHby080uhA((S z0sc5c`Y3$e3cwFpw8!5Kh7w5PefT@CMtl(zP+2~)7u=b4$y4VIJ3?9Gx*@{*gI0B9p&wo|`dr?Tf~ zz(j;N?Xv5D$wmuJ7@RdZav!&SwS`h-+E^ScU{!=j?dDET;T+ThxszF7iY;d!U;)cZ z;$iNeTr{V-stqhmMLbd$6c(pV6FsT9GG)Jh*CaNXUmfY8Y+FX~qp`*w(;iI^eY70J zTrQOnA#Pdiy4K~32T(7-`5&hkCt#nFL^jJ#gPP6{IdvICRB;<6x=LyrMuLr zX1_+$k;$WXd%wPZ#V}ZhUaZr-N;Abildz|3GD_8xF1#zbgb1Ldr2Roll3BxN7BjW;-&!7}e$V92!3EDP|@$8SN z#xN33nPIh_+JaAXE0z1Wu)V{q1}_Z}FO#BW(%HeYX6du(;x;rG{ILITT< zKmq7n0jpQUfYm#sucCwcpd5e}9Lu&yqf5u=Hau>Yg8j3<3yqy?3>dAN;$jFo{mzPrr7Od&a=#tO&+r<(3!-*|N^|!%x z$)t%M5-b_NJo}F!NChap@{hww1+E_HTKIyxrQ(&lFxYep|K6aNT7VVC`^}h?CyZGpo--}k)OxH)<4p;gA82hK- z%EGQ)81C41I=1a}(y?vZwr$(CZQJQ!#kOtZ&s+a~ch!DQzUN?7&8l@WYu23i7~>ij z=ANh*kYViX(RRm=R>;fXYV&N0j)a~|3oE1=tk=H&Hzas~+cUF?q0Ki$%Oq0;FtrCv(YDeWMyjceEE!vA z_Fw8g(G))BUv=m1$IRqO;GucFo0`RGCH^6EFFcSgE_y2Pf1o&{yd=En4q6xO`;FATS#s{+zIjO~WG zojgKbPFqn`lUcVoq2U$BMr_=yrW&MlybV@=Yeo=fMjF@X&o>g_FGTGh1u*G?j{8I& zb0dfgksyc#1%B0G_@Ap|Gshn2I1uD9Ap*o|mFL1I6jK{6lR>_`=Gkt}dJH0Ycf)DS$V10ANAAt_=in+_U5C`sJCKVJrwKMgpr zI}N6oB554C`MuK5AEa^D%%5PouJ6m~pOv0i*1P9&gY1YkA7Fl%Xz((JI*i++9+}m_mo>0@|#*V$CaC89muA2A$&VquFW+2uM}dpCYXUz z+eaN&qK@lf=x?Mw0iuiAE9wPn|Juz{$a}q3>X>kX%i5!*X{K6A!VtEBO%CyN!F$l7 zsXy>EgtrN{Ng^Js*)&tel!sIRoU0DU&^`CXZPUA?Bw)4L19<(5q)jkeIO+o`zO!8< z)=y%YC9ZB74L9!&goGGP2%lAdz{f87d|!kA{Cc_m>dWu~`2@ROwztc6^*w%Bn_ic& z{3?@-k^pmv8VAuCkm-s7)zQEAN@jHrPCa3z*>V1|cMJUfy)`7=6-;jj_dU@0!u~zs zHT+Fg4E&-I!Zk!LJBzaoFYg7t`vo5O-17AwLXCq^9!1-qtk%LGYVLp2bt; z4MO-Akq8|rwAyC^xlXkBA3(fsXBuCikKE+u)#hzgRauTtobPwpw%6WA%e}pwusiTs z)&u#NOT;L_!J`=rB*&wNc53jV2ACuAoPUt|>&gCL3Bt+>+x-bKSz(MKpjPGN z$nT?Xd$k6h`pnUUw_?X^h(r@5NO_b%=~1NP<^*D-L5zRH;+9?PYu$7Jz-MJ8M8Ct> z5U$YGu`!yxQ(~8ljNF$)vH#7HNWJJvbP?^g))oZz=uIuW&IE_4X{=Siw*QFYQE(z5 zp|`{cwdy4}Tr0tgLYn~ooysv4qr8D~xB$eyO|N?TZx_}!4+B#~?@^fnawF{#7x=GP zu2Knbc6bf-t19+Fk-FIsx|-@?^-l3y3GgxDc5CUAYCyOIA2M#IP_x-i7PN?)*h+q( zH;Ii9K~}YhhA*x?Xf3WTWa3uuz0y)TBy`Rsv*WL zf?ha{DxW1RiZL$rmNrC>VqbOG^g;h{ zx-6D@q*my@A?p*C__#qzClLnYJ**4HTbdjcHN_cH?-=?zdOhPbbx92v z;+R8^n!_Zr07@)N`cJK9p`y8aq%OTZ;Vz>+<1V65Rq3phJxk=ZbGN~vOt;A)tS;Ps zZnCXmbpIA`R>JP?pV(BFY3#?3gv3U4W_e-DJ#R09y2AZI6n{zh{|= zRF(QQRJZ#-HAJ&c9s10f_Zo|lBFQF?3e+UTlGZOkO)n5mO@<&`{i%@(VUA)hB^r&) zi&=7xNv7Ij4i_a(u-LMGPezp|Jwb8`nf@tOi>8Pwg}2d6n?v?s130Qg0mfF(Dqm}L z5xscMC0ThGlzi1T$Ltx`gjYk_i*g2O`9-1hiQ7bX%o+zQktOOvGlj37LorQTc2GyL z+l8-Vq#GP7v@^$c^E4VA&FVCX4KDCV-q;-p$Lxd75+gVo$Ho!XsLv|ag_#eWG~4Ul z;&?MeJ@l)N=^E56XO|u`uqrL*x(E^kBn6+M1v-(kH{t3)=FM1|n9s24J*m{uD)Jkl)lv^&H7&b7XYrHR`@jgZqRGeGr;|HXmI#=Chn~zc zAKSJ*X;pN-fV&-H&Rw$u8KW0@aP7UnPvcHz=?6HfL%E_N9sYV~V9bAiEa`ixNKQ^M z(TbZ_JeqYos__IuV!Yi>c{Ci|{2{`=9|!=LX&ZYU3e;6(#(=TgcZ*&}pK~5kRkgI` z<6lEPJ4}xUveNKGP=(wrsk16!gziKZ~Liti?Pc#YYuh(%g$ zAsR|UKrZ#~#quS0%pE>v)#NAXw5ZNh_yj{13+T~kE6Zn#E$cH;*3TDnLGfC2<8C&d z#1=2%dyg$iTjLSQB*$QFsh?d5@lZC}5f$rGAlR)v_gjJUhfQeqAlR%5_8@?_7ODMZ zl4(M*$0feL2Ei4%Q3Hh}@`mhfs zl6<^>Z%GQc0veZYnDXMIncUdNP_#5PLYxmrje#qC8Ap6@TOItsRVj$t z+)Ca`jaK+rF8aLV4ZU0KJ;oW8+P>)8j`Q;@34c z+o_=JlH62-dFZrN&rReA`rSax2bj5Khq1DkA}lh@FM$ z2rC4IIwF}aquHrgLuNVJft7YSse$S@_tC}y87F-jDfDu80oIvCp^98JTyb7y)&LFF zTZw`B#uK@qjBp_>*;)WPHQauEwhr?Ij91d6$vr6UoZ0V?{$&P+Eb2;`X{z!+^6cW0 z09esJwn0CPD(iUugdZgly3>!62slGhDkq4=M~a4sL$gU~SbjN~ye35d;>E5eAn9Nv z0v1CyKk+QWxKe$xDt?M#OD91EUnk8DV2E_;cIBQ7M@ClOQm~l?NoqugCf0D&0zz3v z2>RX!Pnr@7*^(j25^*>cqO8=2U28c57?8ewBGzTjY$nwj5`@a#hk=T{DGq97AmNLb zy(;_o~@xMxf21DfzSspe67erPKDktd3K>) zj8hugAB#or_AcQ!R$S}y#Oy$#LSH`Hjo!wYcksMq`tvB#jRIS&r#85o`+zw`q6G!KG3uUkR zk;X&2fHEyt?P6risWjsQ>00oItvorfz(u|z?X8l_3A$;Q5fM}ljP_VtFNb5D+lM*c zLL9c6A1@Ujdz4mOkNd6M}(Qc8tH@XKf#qkDU=ZS4g9EKl;dTC2Ncf2Ph>NB8(nKy1BGlB5aeqCH0}i2?jM^$!2h;O zK4Td zQ1kdd1t~F$-&<8b2z=^)HxJ2)ssHbpro8?mSH%3zK5BuI)Rdqw$bS|{fCj2^pq$gx z_+8c1RE(?IaW1g5&<&-`oGUzqjv}+q89^ z<%cMgKAv;$ecbucv(D-JaesdOOJ=7fX!Vzd{i^Jc*00c;lw4lb53wDKU-xP|2kRgA z@W4YOiOaAd`q&&jnU?I*cIAvi#^2^nEF@^tG;~Tw zDze&k6H*GNcc!<98N^99>F&036d$9~ty6D#d3SOVjJ<+l+c(IWc!z1Ra(B_4|2e{f zPEElpFb9#8zTI#RmVd8I!;T6rK99qv_SNhH>c>w3mbWXjG=u5ij1tjH6w!1T|5!cK zJOpklXP9NIxx;RH>;YCuBn z;Z0a(gf@shkJX_?u@4#MpISE|$Xemp#mr4|UZoPfpR$(G(Bo&Um&hq--l_~P?8Oq~>KHhycctHoD4u0sz}yDcuUT9b?tNBcZ;ZJ@+M+;{=rf9Wh6 zzJ$er?h*&oMkCjM=*~RZyqSahwy#5~bMIc|y>LUxt75(Fx9EoN{SBT6zQoFEM*0wc z)3OM@fWZEA1-yZFBFhqxLoc;8c81yPAcOm|+OX z?MnToOWn~U6%}Y8DGEayGi3Q20%`hK&i|7Qj*W;X_#}%n#&sXtMq~D)8Y=>a(D0Q&LqYd;e5a-bwJzM@mlioLm}k5Y zjDqni_sPLE0ohH-*tW3LT8=}}A<}E*E~S=;@~b9EH|*==oN+#s?3%JW;sE}( zb^&g0K}m2jRu|3Llo_NW2dCT4e=NILI!>vJevbU||4s%YC#59(f7)1OZABDSOdlDS zL^%D$UnBH<{Pl1^$baR5s_&HNi75D~@)lWX^ck(@jOy25MqzyTJU1g_tW7=kh1cb? z%451uq)gXxXYm!^vl3b55bZV6vhI71yRIE`p7*mp@2_=rfH@+H8AOOy0wq~jq5;?> z4Cwhz>hP)-3^7qSWJMmz@QL8OjCQoZD2n=0lkOt$%ZGNv0UBOZ@ir3cn%Fu(*c{k( zup8)*MG#%1(|j-$ zf}FW+CDDVcl5?9RVirDyH#1$`Mt0%yR$obNTB zfBOq&4pPEs%t^O>Z~|*=l@ujA(BzFlH}wS8sy9g(d$uX5717PM)JvUv8`TG_LiesU zTt=%<*No0PG_tk2$Vav|A`GzL?9F+*i2a%RYfd5Yari>KZC7JKpg)I(*~~<@4>df` zJTV>@kRTA;&N(pmO;?S9+q!)Vep$dyk2sE+BBAcN65p-R+JcqPQ0yL(B;C}<1_&}i zaU4re3pF%A6a+_?+Th=OLR8(BA0c_|N=8sKi?vK>NK!Ah7| z2TyBJ{H~V=iy30?fz{Ny?mGeVXa3%|5u$cAG^;<^e6}6kb@O=Bz8dwXm0E#sOfelN zuheC&vZAY0Ytq*FtYIHo>(L*tWk#?xcWF)lluMM_Z*|)=g9Zemar<5W!b(Y;OQT@F!umyx0On&EfDNe&ug~G&mTNLR*?6t?& zo^{BbE6EMmx`+OO$bk~@WBAWe;e4*)%1|;HZ3{>YJI$tsbms9#f}w*DE=~EcFi@WV zE(R;7J>Lse?RBnZk{}qkCD`X48fwbV@zNNlm`>~9gl8(TuhA9^HSmu4XMov`)bciltL#Ncj6XcN6{OAeOcvF zQ;xhbE`*XAePk?+Q#)7*kx5M*MgxJlj9+QIUQB_jZzoELFZlO3l4Q0-U@85B7frwq z>`I={tO7$Pl_h$8dUU5NOnrCq?Ux8_)e@`_zLF3a|ScRa&tS+v#d zhi`8TIDtOP$^TNdfa|Rs4oP)5{@pS0DtthRtrC8%nEY4z&2(j!hXf$G=Uvs`&f1+? zjyzSyKmyRwP!22k*n*Mx7(LIp9>_R?QOS(G?!3ORQ$DKUXR@}65V>X*9elJl138m1D^l0J_%NWpH#RIHF^|qV`1{ljIuKfZy3>@Zo+6< zhq4^*9ca3xHBS!VZ31MX8iQY`c&KW;7-4Pj(U8!|7zQzC?Nj7 z6fG4^RTR}9#bc0E7%@QrB%}}+Y(DZr3o1YLt_ce^s1Oi!Hpw7E+P|Ukyjjo6?$yw< zLhsW;dhb~}813dt?`zF(abJGbXU=pj?69`A(2K?y&i9M%UhmA0+h_V-AP#@qKVcq# zm~xA(p=66D{SIvAw8H}n)+4(qNz-N0f0Al91ChcAHaCyBGByqk2g0mdhYb-Jj6>}S zpyX8KlUZh2Rd&)H5S4fvduNGwMI@NWQXvsHn1bF$%I$@qi4pl=rdE>dO@txcg(dOz zXoES536@lWnvF@(Qc?cFSR|zBI`S_y6ACC^$t;q}aMSIEB=l+eo3odVu$Nz924MRp zRBa6vVDlj@*s!Ij(r~{gkK|@>0xcJ$;=UO zF3@-eXPc$Xy^N>YlA&a<)+mlm1a{Sd_vXf71)<7<9bcmQ@JKju=jwJE&*W{3`%dF6hq14)05`I6J;nV=@}|l zOinhjMTYzoWLQYD=%yT9l_Y}F8wzNe#nBu_92$56fX1^Z3t6tkox4zBaChg~XqC3x zgaxr0sWbry4S;{9O)0tH(958Het`PJ{K=>->+#azwR(}Bo9RDR>Kd7oKi}^WC>x`a zsRv9$lQ)A2@&2@iaG%ImV{MVnSijX$Z*rnq?UY6`G4;%-g~hp4N0;|4)|R9rJQdAF zgO(mhjH5H%a<#%Jp>iRkV&{rhsd=&RcLZg46K)xKcO7ykUSOX|Hd1dnd*bYaG_Mbe zA`@+7V(jlodki=Xu*c!>odF^t5;~8kU0lpP|1`L)HCpI3??r>-9Gz9kI}4D$NlEuD zs}##2G{9;SjE8>5dnTG@1uO zsx?9qjLHht6Y?&@jWbm8;WB-hKO*xP@J*ao`I&Ph)_+fzo!*6F=oqhvb;QdpFABY` z93?~yK4e>#)>i(WI`Km|V85g?tKOL+e~~f0bXc-6yuK!T%I|x`JfATvQRpOnpbck#e6o|~~ zc5PC+5kKtGM#l7u>2qw$DLi8&Sw?Bw7+mdsXWV$kviu~hZOK{i6Oa=nG$XvR2CdyO z3pFf&Z}uXC9tF2wV|>EsK2$*P%oT*T>c8h%)6Mhv0_(chTv4RAHL$%VvtX0&4DQ&z zr+Wo?(9=DfDf@KF|TRIqI8(^nhJWK7AP%vv7cfgZ1(3%tk{1*Dk!ZU=}y?-*ZQx*6nOMcp_PSV%k z$!5=xFuFq9ReJd)+UQPC4hFl%_9w$Tpg&7&zi@S9*q=sI*h&#Fi0x1JUiWMc)y2P- zO=c6efmgzkli%6s)NHq=ii^M)>CEltpJePVgCo*r@M_M z_DH1`g`=EgQ~+4TQ=}PRP{)}BqzpQbRm?539|bO?MMG)nwa`>eI)qqmN@FZI(D z=i>K4vtk~lMHb=20trt&MJNClAXGe=&3dkg=Q4jT=Sj|dCi$uE^4WXYo@W%OiSn-d zIP3c3efl-q@jle|^9bH=^i~IQMz{`SCbS;m*eNTPZ%_&oVK*33XGk)kn*bl9_+Qiw zBXzkGD3;nCBe`tjogQx#4!ToU6)`?P1T^8wopw@=gu-)z7YEk_mllxjSsLH_O2BJG z`oByUHqJvXPHs;%y-6_uU1!OqOy+9@X#k%$CI$?R&dh=0Mg(Y59vFhMeozwWubv z$5ot}tws{VP3gI8*;xmb0#n&D$zV@bb{RRfEA**}i7qZe3W|w_rtTm=d0)WXR|$c9 zESBvkG9wACD(o)*vM$fug!M8VT5jd~#8z7lqYkDVRt*F~QM#Wc%%916()cac>ZO*s z40TkvfMcz$WX$CfO^8Nwry^!DfVsQjk0Qo*g_pU`IF9y&hG~_xTIQKxln_=^rj{n0 zhN~{->-Y#R!J@WhIhOuvL?&clb|;v8I|^r-ii|r=EZLW;<<<0EMQhtWkbBbOd^LP9 z`ZA8{X8eT`*EEQ-#;P^GkbOW_L7E_2=6@lGTmWs3cgU7ush1ZPu_-Pr_ke9p`3TiTa}*AKLZ_Dx*07~Z)5vTc5rH9ft?w9nB2hTLHch_l3WYW_ zl1f!<>h7U4JT)+Zj~30^-oX8cusji9H`rm1&5E_n&C(He)LP6OoN$GiaWO>5jZN?b_sRK{-{S)C z{oSKWIW_tcMd6O&BqA1f_V6$p$;&7I`GVaId2#rSnA7SVVanDU@@+DuC^wF$q62%~ zbtb&?E9b^)7$ymv;{682?AV5wVQKrBF~D+G73u7`mWbwc3=Y}5(u{KtKf;-QzsZ*` z(&CK?eqyj?b_PJX7^P;$TcN$-Y6z#PGOI(cA$XoZrtYRTy{*knKp*sw+@9lZb zptYX2RD9VTT&=w}RWCbhAG7FwqnP{&*A@D7wmI_J3#T@NNWIqYX;sQHoyj}#`|1!E zLan$|y_C5sTAVlXv+U-Ab?bxb+6NB89#^+?6sRj!utLQ2#QN`P;6sr-)9^jVJL(=U zZl2Z>b*!!2QDLmhpK$&h9YM^{TU6RDa%WIMs$~SrWS@*~mE)-ps-mOvx>0&fvD$BiQsVK1VD)W1#PzaQ-f7{(itopKv`&$;oIH zM^F=HKV^JCv0ZZ%n+tD=-Jxj^?-41|6O!>@5pdL!2+J^MeQ)6iBxQCyMx{qCigV5u zMw{H?d%`Ovj|s!X`*8SNVR8Mm-C zhh3!2Ah&%D8o-glrUvZNl7U>cHkMnLOZ=M2`A{BgdM3$oL9;De@to; z9BVaTKfC3@|4!Jfs30ovzo4A&|Lm4|VuLnGY+#~kSqvy4&3wc#7FtxO1O&`f4f_xa zQCWLPYW3|KGgqxDJ~4fOd;NTsN&^f{AHIFcVxDO=#h_Slv!!&lx;?kskF!0mk4_tV zzrgFlL_qO}5l0nJ%{OB93~4HV6txnt&?>}Z6Wdu@O9u(D`k3cT7c#J}`aure_CWPg;NFIlEXXm@vx`+o?1@ zz&z5RRT;%5eVK-^*zRnj!frXqWe3)?(vo>j?;A?jW469J25uq8ON(XEs?Y*vAZHEiwzOKphH(y^6z zNxM{e?=RE8Crfm_S47l(>d`aUc@Sc(>1FMH9{!N)qJSLfmSeRfBgO!SkOa!WKiP(| z9Oh#1^|Ymuo2@nzds-*T-x*d$5$CfygQ#q*Uj7LYv~b2z%vzk|e(=|az6se<)uMB` zI6+p+O=8^PkEDkcwjG4OI6o-|W!45qg8d{aumX*dKn%{+B zweV(;XFzkS*PujsH!hkha3QaXW2J9e{HG~0L$(V~LYtoEUPF%X+D@lNzIj<&^O$4L z5`mrzzJlCJqo;}cYj;ze5`uFCj<>wg`cL_ypH(ET4Ix$^fI+B<*0rrc zy^y1Xk#5!Wf<`BA9b~C_U%srZ9B5=WT#VC2Z}A?NQ+9vGDE!sbahZn|+c;K$VXyd8 zGM;Bb&%!k?Q=xiV$s=up3St2{9|^8$Itc9Nk?71U_WdVRSrCt8XZ;|@zg_FsT!Bv4 zI1~JTs^mUsH97f zvfDA2Lpd!x4LdUzbEl<{?ZcN&9K914#E^Z!~XG+k@}? zPZD{9nAAmsyWUagAE>9Jn6K?w?oLFa8C9?aZmCo(+lhuWV~j#y$DF)TkJIWe2~W$|OMlJwKF{}&urMJ3_?RkJ8*JI;%s^8BVwuoe=-A&^!SFhjn9 zSeczwu*d-ChHt}!4Tr+_KCwEeCSKNYH)_Z4E%D7munr|-HZJM9FXZa(L>IR}NuZ>! z++1uw&heZ{*7?3)-u_jyYmS;b#OPm)Nw?#Hv;V>pGGj+9(mAtuRT4~3bFd$_tAeUq zaonKMqcACfBfrriS0`tLNm zh)h*{e6vLMtnCa>AFa23$wUJm&$Z6;>dpQv#};AHDo!L2Pi=o-Ijz&U}D}_sHzKckwz;N^u0AY~*UB(D|A3ARi zN=O;S35yZq-^jgj9l^S7IiIetzmm|8Y5cG3C$?GM^U5-oXdG4D(s?^8+K3-$|F_PJ z>rh4|YzD^(p9&n@ZbwrqV=(J)SG#2qEM3hu)53svw&|U!XoxbVtlvq(T2phfF(;rk zg^%JIHZsJ}a-6hTf`H5>d4iDCchauEd$pzX+5b{|!WP038GO2&R7DRVI z#~56(C^KTR#^h$8O2@#AF4FC*GJYx_fdqwaq3{X-y@1JtrKFXxhZ3hH33d{rqbwFM z4qs&Q>A#Q^%Iy}qSf$$wN8zqx=H_S*tk=%+NM1@${R(Q|jshJ9xmS7su8wRIXn1xs zea=V_Ci~}|&hWX>UPoD2k){jL;qc0*D)QWsu*gs4mOe`roSyRC0AVwCrw?+J?qyL=)B7S;$l|av8`ub-}%-uH05+5c0*d4gaAI%aWjLF zV(;$rVL55OJSks%N*`w(j5)+tiznYFDIcj>##m_+TC<1fpX_-hv3nx1kY8;*2d2E1 zQ_yxG&GY0D?LbU>j}-Q&oO~W+|NQjF_Y|EARG|8cl4e)k!+kd`B*@1d(S=9MpA~b# zdk%G>3Nl%`zj{0V$Hw(iMk|#?V&zJQB@HKmAxfJYd8}!Gf1w`VL*b8a{UELTOdlv2 zoD^|op@AOyva=H0LLFt@lWriB-ET+WU|&=iqi>vp;Ds?R)BTm(9NWiL*B&LjbL+IK zO34q})413P;d{N*C~Ud5U)>7T-u^E_X#;3JCT)QfaDgxsF%x!Zih|hMY_iDVCUJ(3 zuy<`KvrBE0jY$q(BWZXhC81U$CoK9X4u0d(vFhbYW9Ti5*;e{n)m|cJs2z7eSWvQg zf40;AmQK~<%c&8Di)4UpU@~iok)Zx#_Dv+hhVYG~5dK$75dWDrcBN8ronJn>sAx7} ze+X)ke9eue)GN4-pU!Bp;iH#=2HKoo`Jky@l=Hh&)Lc%bkQ6uapE$Fy1iidlIskg9 zK0^AdUAh3*Y6nQd@W^$hq+2ovOoR4ji^#E@Fhyc``~Q7WC&_1XtbQs>%#VWNzo;xq z!v9x2p(LsJquKo;^S5fC!z4n)2f{#vgTmaV*TIHFgv&!l8k$Uq(q~+iwq}E7NBDx4 zNx_)NRDn{{2+sNQBKd)4F+IrhlR5|t)0z69&3GMUO5Xv)X#QiE7a9;x8s9HZ%INm5-|DSrC&`u;*9u_AP-dv|*&sm_SxO zuOig>ifEj|LKQN8<3He2SaO%fMrIMaA*P4Z2U4s9tVS#2mo&N)v$w|W`8^#_;c!mP zexxYsG(I^2h5ny?K->U{;QF*jl0IjB!mh9;I~+Lcl&aMtP(JTbrA5A0!=i8vc1ix7 z06+&Vy%aNmJCs0Y>0aF?eBT_b)jo9P^+Bp%8x-x|PD)TyfM=Sr9lj&-5!xTVRt|N& zU-mt*FvcA1sTlsH;rbjXTRg>{umzcG#y8inC_x$?{`u)81tSNZcN=4?lBoDs`RC^4 z@+;$b=#`?>=YgcjHg=bFVMx;-uCpJS0ZwBlJ%(CwJba-%W4k; zx6kBV*|5s$7++V8SG~UoJ1=;2Ls}}0=0pgg7<=PJa8I-Ry&33X?|%bSK*jOMriAA% zS7PQoqG*=IUE?1_fN46wmVb{@3sqjMAP5BDTQ^x&zvSbN0-2U7pm}he2&uBJ!%Q5J zaiY1yJe$4*uLy0Doh{Ga0Oh>;HGy4^BHT>b^4DbHK~gl$_V^ExVQ&NQsgXBJP`-_9 zoj|0!Ykl>(B>t+)nHIFV2(U?^b|H;?n=i_E1rGT~|W>N9?hVrI-_4{pCKOKv@kx6(XK_8sZ2xie zy1&l#0jc|~OK$hCk8LA;=&^0GPX#prbuw#MoI#Dy(h0&q8TPTsg=xFGL&!p)ZpElgKx`f^I-oPhwOYq||P$j|FexHZCTV zmE{25!t5-!PDW!j;xMIAu;;k#&<3v3!_sE6RqH!VIlX~ZsMLCLKJSo4sDd@M!AM$> zM4qCdSh1hHqrjxoB430IHp517bI<4Ym+?zgx66-U& zk+3QlJnMIt>(z=AB7-fCor>s92W-*7TMkGrM@5H=mxDUh6Q*$Msrch_JPr)?27RPD zt)Kna&%*PZfb%~)Z~jb^70E1BFmEOku2ic!l?I)plZIm?>}Wq2CmbwNspDB`mIOq0 z34Kc}%>_Okqd7sbb5aUY8_6ULZ^7vkl8ZL6GQ=6bFB4m3lfW{z;DbsN0{0w)C5Ed| zs+uGUQs&8kAsOB%3R%vOB3X@)#^^j*PJbg;4)g6F9R@&5Q+QMuJW@81ON1MeIh-m@ zHF2Oc4wrTlxwq(u;h=&GkD^TQF@3!*5kS6jp`v2L;(tU=d&(%a`eLv;?6=@sEVt-e z3%4!dt~WI?&r)5n2vS~Qu~J@9vSazy%ZtTU>oq+7W@z?%y|fA|4ALLLB-@=Kc1T4hi=q`p3}1n!H&0*Ut3y2pM}_Pf)#V><&}Z!9=OeG&|0vU>#(7IPSp5v3=uhmFWt}@X%v|a3n`~5vvsye$?C$AzM#p&x_8BDwAT-w9Sv%T?R=0q{&IMy@|h`9F7Kw+t|Ac zM3PDk01uB^=qwf-cT+1_92lJW|2T<&H- zEyvhh!Y*f9NZZL`G$eJtG~pxl6sU z3bZ^89*n)3)lBsOFW4sjahWb{o6|1oO6z~0jSTT_W88Q*A2VV|oGWAwdouOmtJ;Sc zB5s^Dj+T#iGgQ;dV!-0do`uv4sAKe_tY-+vP_rU6)ceV6U#ic^EFZ5cS+2`@R|oj0 zI1$eD$LRxy+N0R0xL=O?$DQN<0RE2z; z#^iqpVz`!~&}N!Xw@?}*U_!GX(I}o}>RE2ESk4dkjnJ%1?f5;`mT88cz7Ynrr2f(Z zE_L(@zlZpq5*S(dCz810_&p9L-FL)PTZVm}2!|fSB|_a%NsV7*NUwi7Xs0c z6m~>skc)*`0_M|JA5=wt!_PM7)#_*K0%rQRgM5vkpNYN099R{x|KRMZ!g71JcAd=yUYRZALVv# zmYh4{l}_LN|G+pa)9*@^eoB$te_4tYWd1MLTvAo>hmAr9MKW~rpiDqPu!NYTW(_7R zv{gcskJ#*oMt|VZj%l+u7427hsBu=*2!A;Xl?cB^SFK$=IsGolb$V9UxOSc8i9&>6 z-yE3biT8f->HY5IdHn3_;|{We^5ORHD@I|D9lpa%`x&RG*>OOQ0 z_zh{vP=Ax!bXcIJ!HWd!^6+UD0{e#?NLhat{=E;0_pDc2c^(N{S)PlNe0QOUVnw+q zx%DK&qYW4uh&i)mWr?@2^dSqF&ZdGY8U-U5o}?rd#UiaVvpWO%Odu9(@oLLb>I6-h z(;vaXhQ<){m19&K$k+-MC*E#UZMB6$EJfX@krXBE$aMDkO>5N?BZBOr#0vSrg%Jly z$BbmTV}*>ql$@Vuq%?_W={j#okEsq8%FdasJC@$s0I*lYM{FD#S|KTSgA0+Ly}^Tp zemcv*ZB59?qc7L2&|l-Fp;)2Mw&o={O*6Mx;**#%VFf;eZ@mO9cmAy_B*$rMUQsPw zHaREKpMSY24x@3GF~BZ&gvR3QM~go`VKJ!U5pD@qotbOAk9*7EqsUAN(_cqZxr##k znH6MMpT?m?^X2q))K=bEx@DK?_U&N0xwt3{2wHF3-~U9SB(YV~c|LuOw!n+7EH^+( z4lyl?&s}q9Ju^pRPF$NnB&>ciMoFoH|F9yRL=nw6KR z(cl&!2K8_t6o82!N}ItOAhiaF5$+8tAd=1T8`*J(fd_fj1&jp9`28r(wlVI)_Hr~a)f!t7Po-K(XO=ILN#NdpK%V?-0|@r`_ce|jSgmd z0^q9+b+_#d%nV$-SQuH>|FYoZVrE3cJ&~ejec?BsFsD4EU0^$}i(tI9u#i75Y_T*S zDc#H}jOaL9zSwcFeG)2r*+HO0FqN-0)Hn2Gw8{a%Xp;d|Y37zG+yzXrSjzq#15-{^Y@z(oZ2iqa8FfQR+>et!}8hM%@2iKMK-)`QBfB zRYJJDhVUm-E0KL9g)Yb33*UKmd=NTxmvDRe*IITEM^$R*1_n{`s1z!jdIiLX?zwJ| zbMOy>2XUy)e}UgI+K~o&|6AlehK?bC9aH~JbU6 z-F_Y{aG2ZV_-uO>Q6`%V7=uab;ag>15SHlv+fUB+aY-+C^@`=sN|JrAJu{26yKpbE z=H?;50>wMZtB-{Ykso7=EGv=J-0E9Jh+R%M`Cc*hzSq@Yrjwl8S{wLx5Y#W7nsAK3 z)g@5`W*48-U#284RvdHxnJPv<1*&b>h$eB#Fe@%7Q|ydI_Y`znkmROZvO5T!{I*WWdaMJ%q*o>6(2&q0)DiKt;cOl^rVUh5M0PNOQhRq3aJTno@sm}}s$lfNv ziB{L?AtY4&RKtykkL%rncZ?(`!*DDmKb{aA=k3iwa@@3mdcGtu$>(|R{#+D#TcVXp5O05Kr`7uvUH!tM4br- z!ARRVqie9f8(te|?w@nW&{qXFO#!%N{Ni~T?Lr>&vAh>3$iOZf0a2^#0ZH!(@9_BU z&fhNIiV1<|!P>e%D%4Iz^;{I;h;4-Dr-$syjx{>H{P&i*8&zzv#m|DR)lV0W?f<_6 zr)=WxtZLv${G)BB?CvaKYijr3!?+ZM2}vLUcpn_3G3i6pqh5c)LR{=Xu@NbLa9|X~ zZb`F6Sh#Q=M&H9h=~d)s8Z;`-qx3UOT#_t8HssRfzl%~T4AWs+_Bnc*7z;Krl6JSuY9l^` zEC$n+(kr^yU|J|2$M_ZJCql7>7{XScNmkm&f^~*bt;BcQlW!y9tY<1 zEyjF%kI3DX7udnYGCb)4 zR+^nw(dbf*U&%0=8}_I`dy+lUPU_0Y-Xkv3hq}XTLRb5+=&7Y^y?M~1;$a=`*f6dN zh4H|Y1wM-eqhrtJo!F1+FXr9Uoz&gfFXMkt#p~eHk$dMmeu2J776*$oE{WK~!8AVS zfvFElCg{;zVWvX(Os3Qakp8SLNdW=>Y~g}~|7w*i6`m*_HBLtGt+5`;5C!{PNFT#iFb+6P1s6n3Rr}t$P(%1}fO|xzT|0@|YJPh~!%P;wU z+BpO!AAW|E>vg;1b#{lz%+&Ae>jkHuJoPYKzZ&|PlEdvl`h z`V+%!3Ps!$d+cFRM1xk#Bw!Qgl0ToMi{`ahBUyG=`$SK#Hyopip$0Y_E#lFSL>Xw*oT~-rK+dtEKNqpb$7?*aodcv#0iba+H!xVe}XI9 z`@M|DRzoUP3CxsM5>{kvYIRo9h|Bo~B$(_F-THCMU*!eug2St1nHv#J4XagNi>Gm? zn4Sq{ty|esJx>JlDXs6wHj9edXI1w_*DrEL!0XPlbBTb8?|?_o^LHV}v}pSY5t0Pe zR1P6xOJAMK;%cCl9XHg8GVaJNcb6qpYZ0AG2-{EvIsSGX~I}xLdcqYX{)3QWIoVj|x>;HL7h4k7fOWf+q+lZtC}AL- zCi4`mPCyc|1Qhhov7X}LRJBwORnl)E7@gB%%r^IDVRs4=gYun1lX94&^#IUV?zv{G zd0}sg;H(HO!8b++EATc1J%|I>!zzO9fm2OzH$*+S1FT^-q4ubDu3(kDP(@50o+o4Z zDX{QT(6C-X??nN(_gE+3v`G61UCo^p`lkZC`Bi_~s%m6V3>tc1CUUN6g&B-Ig~$7H zQ{m4}=N@Ah-tw`}$X73xHE736MLl^hMi1g-ZMS6azthG?#t%bGNqF;mGQLCR&nXeh z`vjIsLSgi=5EjcyM;CoUj-*1x#IfQM<}~0o6fDbk9>rALKkDnKnhL7n0)K{e4c$wR z{!J|h{$Pzq?FSM~emLa+!NpRMm6DZHll|w#QvUCYwY27X2^q;PEFf%&hpf?$Ze$s) zNMcbPg)jo=joEtS+OT8e+V;`5tS|kw4|gYqaVwoxN>KrCk+hTHHOKKf-IMeE{rHIH zFS9*I5Y)w4TaZr_Qy7aliK)t>jLsORGZ&LfZ=H-O_Jzc@we2+BLvGJgwz(f*@rl#q za-6O+$H91sa}(bAI#8GTilNBTM}ba?RZCW_dnylX_im6ys06cja_xiL?uZAbq%Z}8 zAz3DTtvdIKo>|9JMyhsOowj=8RW%uJpQU)2Ota`X0W>t@hi;tiAl!__9CEzuO&1M# z(ovH-Y4$!7w?GJnPKjr&gwG98ECse@SufKfGj44=cMHcj29(un@m&>usrobTT;J|M-DAwd! zlMWqMN561_U)K0Mnl?@>J2@Y;oK9}?QLVOWzUX{vn^HK|8L) zbXukkmxx0$7mKhA?AT*Fd;$&`cZlp92@S=eH4i&G@P-*xxkqF>lBD(ULqp>)dW8bi zln`no5R}w%0qZ~)h9dRoZ|ODqKhEED z|BC#27gUigKU1@||BN=H`Tvr0`sXfNqd`(TKA|FEM0F%9Fnz1CmOy!6WCH@9xI#Xj zbs~#~xa-mkXfaz2(;uW(x13q`tyywT7tveKg}#Nq3ojg5;yC$(BfY2DuRgnVW^-Mi zr+a;UfOi16p$rHjc%($^k#a@t!BdLT73r`?lE^mgm4}+h2-Ct2I2avW1S4jP1XM0; zza3a7k7~eek76Uc7VT)Gvzh&HN4vFeB^>ld0wYBN_)jAF)m%r^nHEuoXiHAH*BYgc z0I!!~bzY&jve+nLl=80&O|*84`x}f`?Uz8xGHL6Q7g@TR6K9oU5;Gd`*pGr90VkW4 ziiZZOO|qI|EO(uqM0*VK30wkn^r(|Zr*%QMZXpOTjnb_|9sMlZRo@%gIvJBN?tLuC`xi^=+vch?eXGM~Aw3r$r0BV(I?DjsvAR$iBh<=LX}`qW*q6bw9u%O98xX8)?1SF z+1>?M_R24D!;TGTmc#|-7?%N+XcI7dZR^;rT}3%R1F&u~zC~H8^Dy}&2mA1Wy+P7| z$3yWu!fj{x(zL|1(RIbCG_z=-NsFF?w!mfW!TpcmLl~(#3?yNoc>y~uatu3 z5!+|Oa|vX;xP%iDVUu-STN*a_Rrbrz4fB>Mk{>Z>#+-22oM5xEq73{yK(@nLa6|Y^ zthrBkOEB#N`(TX@LBl=P+*N#2Z@-_knc#5KM?eS6WfBUzn}eBJChII)CZ@aaem)&h zNi?^Bs`M)}HYr7LG?#v+- z82Aq7&#Y69Q7#m(Z4R4Nv(5!; zVW99zBoLoJo(cmi2YxXthdX!c9(Nx`oS)v;7l=NV7EHUl@w5>hl>6Zkg(^?Ahx-YE zvAvu-CS>Re@0?MB%%L%NWZaWEc2x1AUX;6Doad<5NWDC1CAc1au$n*Lcp{v~1k88K zVx{*~{aP-Werez=fKX2w42e)vUGtZ^3@GE@K`@Hz?HjYeGB9p6Q=Xk_tPyB^@LemK zN8QON!Nu88?7%^r$$^|ZMdIWK6$Q2lYcX#ODQl`>mgd8+@3m? z1Jg51M0d^PqYb~;QOODXhC&P=|YJ;^%~Dc{nu z^a6#Gtum2>nwNGd-8+~Ew-1uFOKcOm#GIKa_ku*V$r+58mH)I2kZBABJr&5L>?UX?uodRpcb-%D`+_I1hDiMfLc&?mT zt;iwVzedGq(G$(6pYrG#{YNtDKROxzOxe^R+?7{QzW1!{PJV~z3l>5|0R%{!0wQSF z8#KfNN01VbQV=*?8a+sZk})})fP}Aa`n0sHtfJaTp=out>q7;h17DT4WNpr@-dMV6 zb=_|M-F-DRNMt`+ySx7}Bj0tJ^_%56-DZm8_WSGbt17tzle3=BpXRMTGA{hS2$K&_ z$sr66Z*6~wjJe%`e}s(1{4F_D?uaSSv5eg{4bRQ09SqEeEH~&&$)PTk(p&Y)m$tt~ z$k0RGdoj>ec*FjL)ODlI{cG=KKAR8p#b;6m;?%(rF!TPC2w7UK(yZc zJo!4-y$HOJ+-%A?+gJoioxHt=B^bK5i(3Y_=es1XHk3sk2fsJ5DiKg#j~?6zV%H6hTfJ zjk+Xhxn)f3Oq7d6*NRIEw70)!Ax!`b2p~vB2_c40ib+?oI0*qkssdx_C1T>eZ;ci? z8`a-8veqhXxMVfE!~IRVfoa{a+P!Er9QSO6eo<%@)%df((8SfCB|yKb6^ms;iVxvS5r&{FBL{i9C^CfFjtI@sMBn?(9P;9`I!n82S;utjJ0pQm+1gGst(!=Pp zaD+IrYR?m&9%S`B#XJw8%Q0+fz)>a6+)*ZD^6zCD9TIfkg2OaU-w?gaHyGb4BQDU9 z6l)CWinp9tvwJVz3ld}}96x^HF?vxK?l3;c1;536vxe>1s>mt$5T!A_J2jj&{L&-4 zx2|>)2_MwI^9&IVIDdzAL87qDj4363xDo2&A~==oCJNQ1*W~}cd?UiQq&ZdwH9CJu zv48Kq#l>FUQ-Y{;RBxtBVoo>ovL)_Gg+Z5)?V(>wif;|yo_;As%=MZ z3tTdjFx9yy*HyVckF0EW8L0zS7n79I&{?QgQ=3FC&|FG!yi!Tw=u{-|zG!%CKa-hK z!j(GFQvjP(l8O`~RH8JyS;gU+0oOT%jWjLvEXC}Y@uj3gx!$m^TB=b2H6y>*(!FAs zdhsS{QE1vAkh5kmIxkrJ0>0-~934f@>RZVc8;eG0BJyR)s()W{=VHt{)@0rZ-)^Xh1m@mz=D^va;6jz1q1=d&9fYifruSqzr;Bl(zYI zFzpi?tYhkGDHb)Jtw81+K*!xhCyL(u!nc$eHk5|p1%FsvF|YKo-p)*}7;NFYa0cevObHZ?QEsEo&TYq*z2>|QcJ>7qKYfe7cVObB-aJ&~OxMOcY(vDDo1@_- z**iW%M|}*l0`pVslBdvBo~0ZSnsC7N^L*J?^!4iK%p}vsMhl7MhX{ciLh*&a@gaxm zfE#l9^&KB})T5|~*XQ!30H-_@gb8fVd2$H-T{R>~&Clm%X>H*S(mIj%6h+T}O`UQm z;q1H%P4^zKvV49GixX&uH(9oiRjnM??`Jr`JFS%uTPwowD@+yF*jv!m)jUQ%& zpzNEbu;_U9Wuq5_ufR+gZCX9JfhaY;nmE#kDbyZ~K78f)F(`6_(hjILNOQ0Ad%r8* z${++2(rYn2NvTrefx~&A!(+5k1EjL3pJWq3Y~9j=`)pjuJ}3B7Uo}&1aZOyJ(`PiH zSRafK_Aj^qBn?bpUt^&EiEAjHV9IMc=UHypk|!9?p%=Y3qKd`zR773!s+}N)ra}N~ zcEpTFJ{Go$NjDo-^I+}Jv}eB*9ylB`bFqTXSwK|8pF|CAdlrPPK~Wq72}mS?CUZ!Y zputF?a*n_yt?riH&{5`D@D~=`)q0E&xM4y;)o~}f{qDU=(UTI}*mj$b@r@l&0%$95x%dKss^VGM zwbaYR(5i~Ot5$(ph+9B#;3OINLQm`TwDHh*5-2A2WN2b{n%Dp~v*p+t$q<`$bvj9D z;>mtD?uGJFag;N?);U_&q78bQX1q1g>(?vd(z6GE`tR_^$zS5*zl@hXo71c}XWuMigQiL+=h^D^Nds+&VB}?aNwaMBj(U6IQB`IhMhf# zDcGBz)tuIF{I@R%AJ7}!ew|Op&* z2G{Lq9IlwFo~++2+kvms=}}q6w5_PSw?j-Phh9yBo;hUk77LkBZ>_Qi9h>&Do7f%* zaf|6=>a=)sQWKbBmLNEeR6^Rt$Dil(8T_qM@mWv;yc|U1TaAJb{I;_J-R7wAatM=4 z!0*%4_;zDp#sDAr$Di<13FWNTw!eM${r)wf{mEf}{j?$f>p}Z@8#vM#+1b#UTbj|? z+nQO@*;}}qSUb@H{rcC>u0U|(L4RffML$YMH2?c&LUuOxjwVh{c8*HUjwS{+|16SJ z_I}ikkiS`psWpJafl(ls%~jOPEBGv`@B=j!kfF>$G_Ax@)xk9~fd{_l!({ccdsonG z%5Yk6KJ?2tiRf2id*A2%3Yl`gaa#5|G*YFbnMNiyyykfLdLMI~>ioVxk1_mv#xc!@ zL+}aP$q$7P(uAYK(NP#s+wU3wmK_yAdRzDRn{d1d52GMB1Q}`z3${vVXmFBJ(p%)C zrkU`m0BrR$n>rT@b5s%43@z+CHDa>9%8k{H8nq%}rO(aGoQ67LQ1N=H3yru>N=!d# zS-@!KffAh_A6DF3aYV^(TEP5{NKR@=-2Ra}A$;rmYWor_8bVOk} z_(zs7w-bGCz0ob@dpmh1y5`TlH1)ysXlW^#k<2$6_7G?;#RupSl;jv~@S3xg>|(;N6d>vLmXc?e9T@52 zlP0C=;PgxGqFw;FI%)r$YZtF+<15FG9G=<_?FnEqsLpdcixl70`tE|lR8UP(6eLg0 z7=V}<0yEyE{21o4+Vnp>fh56g^EiW9>llNy2we?C!Ker|=CB1gTrAc~yy2 zqh&S1vSVcg*@FTvy~0?)rlLbPe>u9Ws_DVsXEZVfTa#?u9*`}RH_s(lTv|#>g-^=* zz1=B~sK;Xp!}>CAC5iSJfP4$$t1t}|d?bjE<93Rkq<~i3+7>@cVlK8SuY3lZH`}PX z=$TWy!x%?*_Ljlka9Flf3o=Zm?jp#Uf~M}Gz|(t8lA~nfyy1FGi8!-@+S)5cMC6A3 z&<0F{wkFHyMF+7|5j<^MX^Ix3sf#A9bw!_vLJn*ulZI*OocvSJhgD}JEhAcTQqG5)ZJ;(IFR%I|XKjnz$jRpQ#)?}Ym;=+;lC6U8aq z^a-|N&Wx3J#<@1pEVc(?-aKuc9hYVI-8FfwQ|WEAiM+tk8F(GRnHM&+FX;NzIaiWT z)Rv_EwLdtm`&f0G2YKZ@_5lXZCg}HNeW9-49%F@zFBaI1A$Uq?er)Hbq%{aUmNBaK z@5PAg#ZcTXmCPYn@c1wlcVn9T^6jXzT@c$Yj9bvN4m8!$*lI$t)(kT)2ZBP8Ca+*U zh3QciU`rXb&*4t8*D=(2VZdG_2n zc;Pfp?4CrirU1<#6)(%5vBD=2Z^JsKLeq?9@NP4ijj*r6S4MieV4+ZY?8~)88v=xy zZxDy9D}c>II6ci?rDK29dq~wiwdq!n*PE`QJCSvPfw*-5c&?NT@C1Yew%ZBN?HR5b zosr2%%9^zkS@zM9H|W9Y3^j=D0x+VL0dV-+GX9VNkalB zl47+6f2FJ1<$bH`dFQPI(_O`dePzvOKJvUx;Acn;q9g~(y8g43 z$JYyB4>}j*4%QZgE>M}Yi^JgNA`Nmd#Pi-xw;N_yIx;=J4aCsI$qTuEgx|?PMg?c$ zsM{^(ctUpQL+O+k@y;F2%*fe@n3u#NRrp|tdhDbiCSXn-;X%z5=Ys5#%naRqX;Rl8Pdg+is%X)KGIx3Z7Z=9C(`Qz5v~sYPc}Jt@tpbS!N*Ia?albS^2- znsm+3|`~huJ&C->P)%e!-D5NqX zH(QHYeh?YJNsI1I_-hUL9a9y$dU6}1yUJ*$UrBqR{>OprIGGN{n`EmOm5Ja4BT?(% zuku_!j7A^H<^A7{M$FhhV>s2u$}B=?m&=xE{JCiLo#wxl>BeJ}Lr%=dH&rcd$&=BP z+d$j*sFf676ijPORb(tNskKyVJ6U$DxjS$v^(9GPZPvE0u*x*xnu}(rRj*JwrXc6{ zipSTz8)%EdScd5H$`N=|aotO(&OAz@md8a8(fxncF}wox;Py{1L7YcL!9rU=o7KL~ z`Xx5;#q{~uu=^=I8E^;qhaE8GaiwOBhPk4gC_9l(9Rl_N9To!Ka)0^8LIjxS6RkFV z#^nKF-3@nR-Hm?u^c8-Ry`5m*)eWuPZu!@ey4-Sh+U4e$oji{}fW z3kfT5mpMwbBO}p{1WPd-$RpcDL%t(#1Pi@rl~y@LgKHR|Jg~s$)5{5$e5a-`0Y<_N9a`1PsVrMa=Yw&h4|E!=Oyt^dR;{^j!M=*)8-FH^DNB z5ZmA&d*hlI%sK3deZ0uArRqK}HDv5CqC`Qu<*G=3^Urn0$qQlKOx$kYf4sd9_h^dn zNgLWDpam8(AV5F#-lHp?78nU(Yw*L_aU-rnf_dum86gU*SVfOujleUh3y^$4Y>lHD zD#rQ!;c>w>>PT8{o(L%kC{&!F|HWQQ)p#UJ*;5@cf1*Semmu_sVMN^FRCo{7npfr7 zevacz*7}rua#o0E3$b;aR@{ALU2!>_${5SOps%Sp|Z2tqm z^#3^kOM5c^5BARe7xw;xNh}s%{uNM+=%?(RU$L^Oii`q`6=Nu(P#;J)0mYqpY?6pZ zRju93q|<&Lozon^&+vWG? zamwyjtPyK)54z>gi3e&&4us2_BwYaibLmIiHAMjFa~>IP{7WsU9W^ijVM7n?J|i3p zke+gL2Hw^{`pY(|oybtzP$s+`tN#>WTj}oii5w-ijAn`Z=FFIxY1z@p;FERt8F#bO z?>7;ytS0U*X62Xc?%y3H$6ph?o+XqTA)#GBkXz-Z*Ne&<8Eq)af&~i{XGg15XgAU@ z+nBhxoeV6Q>FA2)7|u{8bCm8zsdX#lwlNUss>8tW@mmJq&+SV_-AGO5}KhP1?HZsvsG72LXfmb^;*=p$W7Ymt+i@zyy)T3N7e9W!#3z>iORsX1^XAe{Gb$~!-t zTo2fjC$6&zU?q4JhPGZPB2QB;H3< zcXUMy(bxP-Ng~Wn8i9N-GmL?A%!>$AxC=`z|uE76&2MIp^|yrP$j2(lMv1D?V9Jc9MO1nN=v zn-JFo4ZPJOnFqXgcnz=*Pw}xUdNb!WMmdEwnLA?3neLB9-ik4mrV*58RSO_*c^PvE zn*8BYt+(?Jh@$|8IA~1+;-~x+?%_9&%Bx)$^N#IL7gQ>U2ikL zIE(7xQ{!IuewVEIEw%nZ(Uh(o&P78xDd0hP?Db>}0YaH0Z^E8!F^^2Cx6;}gw>horCXu*Fv}FZB`hcfZD$#ID{wiu&b?(Jq$^uSuioWsiEv z81GJ$%7={gagURDpO)Je%^N$R=1V8mShX^fiE(hI85({R>VbnD zoT|6-!GX3*wM^Ox2q_E6zYnglpU3arId)^kcyf;tKD>6lWduRpx6eKLPCe-QPQSbD zUOu?!a!CrO&Skh*mXJshjoao4pk%fr3dpLR)BD8S*(ZmRTp1UXTswnJmtFb@-{U&U zY|wkhmzlV^r-m4CbB_)@aCP?&q)<6+OORYOh2=6}b$c$`Bg}1Q1<9_L`Snh4^bQV^ zQ)HPAt7Cd4=^myraCIAl{$%FNE^*t4(WLP9%(5(dPI*SDGBBcH(qyXR4kui{)`oV|!~cDf597+*hxb%6@@ zTxPg|J4*5%nuXijTm4$1WpAhKCTMrS$3BO8s*ZDpsJuGcX$KjfzL%hC4gNY9=O;&p zczPEy$YloV{q&S}0V4`Wh@#CcH$3{v0^Ngn9E8$|E$BhntRBq$z4q)R7 zSZ=ErQ%@kKYnZRG0qSjq@gRs+fY|oPau=BoWK42L&5!BssBfwglDByut%beXntEU9 zVnDol5h6Gr*A%#LiBKkNQ;o0i@aV%YA;MWZ=#eKZd6kZaInNMxCXdM2l;=d1c@blR zIEj%UVaptc)WnE1)igS9SY5a#syV7ixUM;hkl@L%xn2%STFB0YFm{S)FsIFd*x3y= zE+5>zkItQ$^l&ft(DI^h$L27YG&KyQY;6%@i0>I1@*pfOOCL8utj=Mnii-+@O4-nP*P(w zG|5A9LJ~q!Hy%@FM05!w*o~TV!=U^}Sd2R{$XBw-IXW}@R0CC6?pK0@MR@8$(LKGq zV}USj+A;wbf=OJ1QHfp{DSl;S8;DXze+|-taqIqTjsI5e>x??*h)NVom3C6t2>i69 z-s}*HeThK`M{2J4L0A5@Ch&~9dby{m@`D$la+}#)Xc8gZfZ!}=%%^L!E2M3mx4)a6JTLNuMvS2=`HxBbe zPvt=`^Et4cS-ijV;}&!RX{jY4NRvLqna}5G8)e3}1nTfXSj!)nUvLiub7 z>=D!j;Tl50-raHftO?q&pLsp`2vB{;trCo@C^xv7ci|p!N5;loYFkld3H|of?fL4a z7UWh zQ%k+G*{`EK@YzrBLUdD^_+r_wqd8Cu>Z^q|lY!_%{pv*g9@_t7;@O;bhqKQ$wF+c% zxt4Z!IpCHu0hM~k=D#QJ%Bwu+7IaH-;3WYRQ#raGmZ9nm(g)aGCV`!%HTVUdkko>F z@G9yHWK-ySIECku#YgRWu%jB$amr2mX~5_eyQ2Dr99IfW=^!KVF^xNu{X~(esO6B3 zY87dU`;1LcW~y2`QA#ms@G+0UXu}~inYv_Lt0I>$;uKk3Htw2vbt=ufa@^$Ztvcfw zugOwXicJz#>fcsvK40CW%yHJ_kFH%*f$mc&rgX%6IlZlwX_8lZBc*4wq&!D3_>EDi zY5jP$r63l&{%r(8jC&4JvmlsQMGQ(Uy<#`WItR4okEc6}BOJR0Rz?9dQfHDHX8`5;@Yb3{V@0tadP{ zBNRE)@$=Fza+I<`X7I^C9xMvTNk|H)0+DEIMra43P%HobcGg?SrO2kT@(*yek0X>JHP2QMKQ-Z5Ap`%3Nnv z#*#`q_Zph}E0i8mJ48-q#OEjYR=m_!Dh~Uq4`qo#IIk*l8o{d9jfoTi`6_FGw8I{V!rKQu0f_X^6NEk&N7zF}OtKkc+IB$@ zC+@r8rO-8}GmZ@!wSoWm$>W&vK+?s-lruR|$b_8!`k1Z4Z5=J$fW%y%jHwS;q#lX? z#ylWCP7I`OBw))PM}v7+i0f|uRbX9+aBPj}ktv$ig|b5(1e+-ITMmCXiM=68)M3l? z9M<>__XB!I;`Qjy7x<1y*x8XYFvlNgpTyWDUd}MAHFMe9{$zu+* z8ssW{2`Eb2Bsu{~-KIKBDBYId*8gLXxVPxDX-jqVArg(U@^AE9y@A- zsXV%EjN}k$E{=8_>sBN=5<=l7{QTF601XdR^ZqjcsXO~X)ollpLe3SyFRc3P!csl9 zOiZSx7u~ig7%3Q0j6#tW+BcVqwnn%O_-kh4CYE*5z*K#_FfcFrZ5eVI-jYFJY?*63 zB*4egD&XLaG8E+3dsdPPsx;1|$T1PV{-}S2w5jX(MKc+XSqtAD(u9d5 zR_DSKr|pG@ZzKIDP);-Y$#3}J6FD$}jvF*6DlwlX`ki|~$~ zlVJ zye4)2P9?@`?SCXAn+Hg|$L~eqCV^?1{GtH&;F#PZA(tfZmn3kwb7Yfe6_nXkIrWXU zw!Pi3aLg_UrMX!;=1}v#JGQ!NJ0s~6+Its*@YDh5sm(v~dGZgaoq|W8u}l|%hgFPO ziy?eI{7|0%q9cb?CpY>gD}OWl^#x*cUYGuZ{5I5gm0^Wy~9z|`D)sJuZT2mwvk z=&`8DP3l^PEcu12n!iO%2V#`~dnU#Hk>z~zdeA{RbCHycQ5T8iRUyf0PztK&3`CQ0 zXt*cunMA&t+TMw&oyw2YEIGtvM^S{ll`-KTk1r2! z{4h6`N?lfPY=yW2C1j0RTdlrwI+Kwtxue2BXNYttRKw>QHhUJ}HcLBGcAklAr*-3X zONZ&!6Ntdd?jw-EQCVM{+mUKx!y8v^fCU7K7e?wx87%dV7?1=wSl{MxF91mQlmx#xTqv zODYP~U;&?+1-$Au7o4v7`(|{S(SLyatvCJ?7fuL)vA7guYNpm66guNCZ{o)vrk7Wq z;kXVqWf9e-jH1Jh1m?*N?*jEEIK9+K60Mm(c>|jGTD5aM3#Jw;qwF1tO;&RjG)C2{ zdGy3%@^$pnF)po|9j&8IqX;S_y_a#Z_jjAhVjF6AV%UZfCT+S32|U%OmJcR zU|^wsf*%)*Bx6R5^y%m%2zcuT@^C4ws8*HuN)VK^RglDZ%19Thk&>3I63eR963ZG* z%Rb*fMNe)wUQ7@G18H`%9a9}oodt{$AK&ykQ^4u66#Oz*jB@zTEMlVE6GwCuhpf6IW!hnQ^Y;ZAzwm zF3Z>qX0+VVV%pqq<^E&XYJbO$DVux%U&;#5d;mX8Jo)?mk1pn7E9OG-4jjfr#IZdA z!EjjY$V_|O72o(s2;oW!5agyd=XBgb=O#CuWVvsLp=h=JxfJiA2Ktci3jK#@l@Cb_ z-W$)8-bBYmC5X-;Jw~ z>NxMI$b4%6Fr!25*YUED9$Z}ByO`Mna|Z0agon;V^{NY57Bv+~B z(CR94wAd~eM@?Zct_S3|@w8fY@t~cDN0LWF9!r@O!izN5XP4<)-;hO9s0(792yK!R zHqfCzvpTu7z8XyRq{69)Fo|k<=MnX&$(^he;+9ZhO33JAK-u1ebWmI*3u;Ba)xC&U z&x=qFJM_)+1w7QzYM9p}MH+p2EOx_h%(Lij>Y_wAXO0e2o8*?awykd>KFa9wcJkSq z$2gYgPn4U9k9b8b(OUTE(CiQ(Xala_EGOi5BDMfEI4r`*cCHrq?Fk7~(9_?KM?| z;nchwV+2>nU0gm`&BrlkGiYg8J({-9UZmg8kqJ*BTZh_%PW6`7qY~ae=IaXH~V$_O;fp zhOt0*g_rwR9FIk{?ewu~-41Dh{6_V%-M9L=+}HZ`?sMrq_WHpD-wMhf*}RX3$3S@p z_F%jrRih$?g!B;xwqa_%&AHJb*n%xQ)B!2fq-(+72LmEU?$znB(|2&7TO`m+=3ZKI zOh6}?f&TWJ0rIllfqYZYa$4@|y)F8~>B5lcbqU@rf|Af$YaH2`M3Dd49D^dm8`F1? zQ`?^77dMiA_taFuc|m4_O{4EQAeN%UdhBb|Wwh4}yx07w5|Z>K-#kb|{c;f~wp%*nE7)@Jp1hdJQZ5Ue{08h(r5L{qQd0W99(F$8p1$ z5|348*=xRxSL#Ow(<8#fSeBMuZwzwzWbm|#k{8L#g3FMm?i?vcOdRrQj5%-78sB~6 zNYjEocXDjl%4Mb>T+Am%p~#MGdM%&+Tj-z!wRd{3nh27v?Mz(;xmPe}E={uVqzVO> zBtkTMAhi^vCfFvs2O5mRA9fDFJQut8N#GTJou>jU$HzW>+@erft~E5MmbVxpV#?@J zsFSP-F4UT?>GwYLEu)S=S0F4%4&Z0}ImNZms*xlSp8<&tC@FuL==r!X>R-q6kOp=n zq=X>Hb_Nt82Ld%SeQXz6VSlb`ZkEO6j7QiNYFB*my?c!KNOO%B*sFSkS9i|@i>z#i zPuk`ip;j3gB{2Fy?K-l_i;)Zs4Y#3`pzMzxa<(+loA?lITI6)7cP@)yk(^GfW-DbM z1hi=Jo^V%m3}!cMtbKSod88!jAr@ys>x`~ovdUdWp2D+Y?;bp}w40&ePy5pN)R)5frMQUQo^eFd)i3PZyZLM&vj2;*vw*5< z`5HJPpn!CDcXxxNbcb|zcY{cGcXxw?NQ!hf(jhG+DUE)I7k&>P`u?-t@!s_o^SgWY z?Ad3}IkRWXif1$+^l>`uaIN3?ykp5^b70_U0I3=4jQ4MDk}#=ON#>bQQpqPKUF#d`OVa9&upyX?B@XKO9s4?amWV@(5q*!z8GPkQ zm9DfTk&%$Fmatu7PO1l=!;+SlkDoXMD_7W3KN>)Yey=?9*@xTH(p-;6=6rLzOERsN zyQOWvXlZry47aJ9NzJYmt>Td)cgpFkMM0%dc3d%YLJ`7gKRarXd_p0#Y6|KbY#M!v z#u&NU=)UG;5)1X}{d>-z#Nf1>cje zA0aD35d-@doE%AQonlz<+Vw)yHMHc9sd?S$ch=QfJP}o0tc%L(vY#Mty$i6(Xnt}F zX*O20?{a31T`ANjOM(b7BiI4k;>4Jan!ab!j#e6YBx{E21sXq)@d11Q_ES58(rr?A zYT8od&f_Fo6MFmU>{s-Dipt#<%^QmF) zWP&4CQ`IP0P4$CA->8;$vZxVNp{cXrRZOrVS$D8nqE!INUtTC|rg#iqBzC()MG^+Q zFQ$`{N1~Mu*%_g=!q1{YY;f4jN^Q&gZ!GqoG702p#bzu~zQz(GiqD}&7`h5$m@?cK zc~6}Xfq@84;qbA^_Zxa~&b9k#j}vdjL=K+GAZKYNAW{4jf}SC!Pi{T=9Z{Qsp=Lz^?Yur z`B!zlL}EB21x_E}IGVygo;mG!V0G&}DczT51>tfDbS9?q9X_9!Jf|K{$`z>4EM1~( z@D+Mn)B#hXW-!1fkO1>N-+CfgoiWyI5)DRY^CpZEa;(;L*kel}zPPTR**PUu=`78o zkgL3Te8XumIE}k${%v?CNqJ{k^cjsQ^QCA;iwU0DR7H99)@*){jX|%;Xrmp;5p8>u zDuHuN!)(X&H(WJ)I_(4=53#fAwx&#!<44N9PvY~n-11&~)d!>2&-6;Qy;BuS_wXfU zm`Z8j%CNq0<`73Rr%s)~*kCJyB?vt<`eqSV7xnHy>7d_fsdYOrc>%$igIm~QDS&U~ zT5ORkZ^({#tvy>!A~;k%wpm%8ZbeBp&URj!w;sa+|C~^L35TbKyxlnv+LutI2%l3_ zS*DtTvs1#uEvV>qUJ)p&tHLB4I%YwU8YQWs$hHm=o5m&Dc0h+9JEm9!M28t9M?PaG zB9C6IIGj$%$5ySptLfPi?{cME^Yk6<-InXk5!AmKe@k%i_C`2audj#QY&eJBpBZxgl&0 zmLb^^Hn(SIT6V~_@pLJ7Vol8Om|$6~z0 z<}+#2sfqZh+?L5kG|H%CBKF26#*8r|wMO<>UpmVL^VJrphA_$|hb&X*r!BA=lL`;t zuU>1<@?{iWiNMyo(o%wSH%17**@4ZrLM}4SW1uW-I08RoE&j>h5T9hDF<*N5qvdzN}eve zwk-CQ)F+Z$2Ph`}n~VHxWIP?S^BERo^vS3}X>TnCc9B0zmQ74tg-aHw_kansNJmIb z18-Kg*;vdBLMNGF*%d@=2W@C5RN@ILb*ci>W69yo@)%mEEG8dV8eer>w=&eYH*t~aI`YlE{#5jY z94DPxV=G0ZV#HBg(8+5iX{{PDc3YB^s1Va3pYSEKCF^HN85POMj#3vRRh_jobJxwH z8e~-Ii&S{K?+fL<$8;lnDqpl=X=76hdpTH>oUB}wKI#ZS?56G5z$hyszI5Bb>z5Vy zii&4zv`A4i5(B+hZKl7E$jGTSR=MW5_i^mCCa05rWQ3roNz&NSqYzAS&a<|J%v(-u z0|)G=B|{JLH`XY7Zt3!~RZ{a<4B{I(uF&Fi(D~H`e+O79^6?$i(?-H?d0ePiS5x)4Vr2u z{G^6y6IrD}-x3Uxxzc&R-n*h?nu423UQ_v)Id|&TIZ6i8L zb_SLSAhR4HZ1rXxZIh&3RI`Z-MMDsGBa=iR^T@`-DI30yP}KLJin+lpIOTf%G+LSr zPmuU==u=`iI>IFG>LA%_ON14JV*-Ilcvmn>1Uaa&rWp;T?%H<3Rp^;o;um=uD6BVN zw+O5d^9KUZH2BCGLW|BNkwiCj`j1W&z~)sYT{Jk3vA zR9~|$P@5@Os7-N5u|e+5ONDKCNKhBm+1f6mW7w2bec*k-kdSkE)1Di+5k%p#B~XWA=Sg1m;Ii4#>{&@&@IS^Bk`R#XQ{ z>}_1p+Sn#G)Y?|i1k%1=SgZ#!NJZC>+&lu_9gz&Lsh_UkF10;2IE<5PUD3Spd2|y@ zaMSf{gq~Ut9YLL*(rGP(-H#!z4RP~sUWafMA^Q}=lcjfvrS-TmF)dU zqFGQGIjwF8(v+?(p*j`y@)BtLHW0~X0m#L*eTEQUDxvC>!2%O~>1-^#Y{*(Ra6*Wk zk6TJ;s4Hqox@RamSeMN&aYZJf`|#*swYxQhYC={k)2m;6hqxab5c$H_egwTqo?gJw$jH#n(BO~%@&6&h2yi9?e0QrOb`ygL%!Z85=(qrZ7?q8^pC43F5i&(> zV2&s@+i>@6ud2!!#9M3dL}k$6C!ez6^`}E*i{$-%osD{yZ@Rg5FTY-2%YeX4;=FwM z?r6rx2j+>e#hi=YT5&iHL@7!9r28{}H6X+J%L~u8Hw)3?*wWoR2;QqLQG`_Ky<578 zJ&cQ6{0eY}?H~~E%Hx901v7|W6NbY^^6+80cgTH8FVb00?^Qq`)p8$v9NoSw1MwIk z)C+aSjJdb~54xgDv2C>E*0*n|?jye0RHav9)krOV7D-P`+_QKN^Z*rT<>Z8HjWvhF zYzOMcU0;a{WWG3w+(4fTRDd27u_3;<8YaND(SC8Hx|@=_Cr7fyp3?cAJ<4>MO6A>= zp;{{DCI6*voG6M1vK#tWOK$rkY$Y@aa)z=YnuHKDS}R@uHuXb9jQ*NJe!mIS~$unPtXJfDXj$I2?MWGp+0e=i?&dSMG^9*imlpY@d|fM94bZPnwVC zQJTANVQ*3wUZM4**inbTKOt3Sy7lDl-4j&oO>yyKp^n{(Do8SL0N}unN2fGWg`xGr6EjGb$)_N>)_xM{>{At$Rrtm>bwy z8lE=R4bV247^g`WPHa2ath5gY4Npq%7o<8B41Bp_bC}LQ%W+i1aEqDO8_}wrAAu(IrM)Ce<+$GLY@PS|1`up%uI8*cUElrO_dT&1oe%Bn5-l zDHl0_$s4w+j15Dt*Q>`El9p$Ltblop357}h=;>#SdDg|H9J%5olt)998%$?$M57DV z^~GX9s35s@7b>Lx87idz5h`$97lzLRp~BZcLIp{wWFS-sbfw?qtVuK$SDiqC$M7*} zD@vnEfQIO@U0$%BbFF-?zyzm>@p`31~$jGYq3F%+t~XiH43#ZYorNTzy#+N?ePz-+f7 zG)ISi;ZgJUSB%(ZIDwYzaB?w9Qdhyh6^Jd<}zk{*vHf-qr9_GIJ^-BqV z-S})*r(=cb`jti@v&mLqnCcg5hUj4fM!R}`70TDb6GlG6lZsuZ>>VM-3E-^5jS0pP z?4edGey#8Xx*t$NslOlJ*pob4|HRn95t63wYq}MnYyd-=S2J7;`*Bp5d3MV)B^^=pwX-kT}dhr!CX8*3K2Kyj=u`po{yvvaC3>+M0&2iW**lbOrO z(Xf40l9QW-Jk>MmK>f;hIM(k-nBtQr2K%hIVVF3r^xvcXC-S`#wqO(&oV3r&X2V5Zjm0d{rD104at&<&UQ%h&{F$jQNqYHaevTsS(=CB zPA@GMr*?@-E?tfD6|QN=Fbw%;Wn!l}(x9U9;BRWn9U11cm(sz-`=v{)J}^)nz6BEG zjPQ63Pz)bCpJWjEb{i*uS}k2BKN7}_3Q_=8`#5+j@yf*RvlKmc4;sgNN+`q` z?*SG4j2b_RyY`jN@gb-{-x;`HY+uh)9{zR6T5ur>p#yz;C5#Cu=%5k(i5%=`JEfUJ zrc<&R^u2mG8sd+kxM@~D*%=A1rJa#-Z^ zMKUX~E@mPt=JJ16TGQB8uRDGLoHN40$_wPBP!Z-U<{^D6&gWcn31ornO5c85lvn2(ydhD@Tc7yg*kMUDejl?Qc@r%qKh~!6ZJ4w74!X^UD1rO0Xyz z(4Ku9(|C<;9baHA3@ui_q4gY_52K`N1rw{dYA$=qoxe&6>&P@uyh8~SGuiuc6fRUd z&aBVTKy&qG0PmKNPBC}rn{jlh%4sv^+6AY?MLEP6or}*p$1mc@czc>Iptg>1t`0#CRuC9nq$`(?c)tnpeQU@6 zX5@#4j>zyVlm;E4$wmpgvq*F$h24L5mAP9O6KNI7DoDMaLgU+GQUc}8uYC+EZ1w?3 zm&BL2?O$kDVoA|-QJPc*;h4L>$WFmC?I}&spDvBVA;a!xFda3mh z6;)*p(bED&H`Uv0`;RDLnI2aAN<$#@cr`Kuh!TEs^@^MAOW%Ok+l4@G@o!!>{)iG3 z3?2S_i163TMn(0zEl0ll(ks|N~^%WXLzU$^aV@$U5v z%Cg5%*AvNl;uQ4ETe)tgnjv}hGS8W04&(QiK*~YdtafYbEr<;g6_lH8M-l=3wF*#-b7ax_k#~599|if07z(43qmD#Hja*CH;rl-)B$US0?h9zmQ*1$}e8@A6wUHmAM$)bauhsv8 z(N*F*1aIW^)s)hF98$ZTI@KwL0Kp1R2y3yIlY&l>RjeT~wsKNjwZpC4ICOn`MA6R8 zR`Z>t)pUAHi={G#-uH0(p*M@NJgTw$Ls)f963KnxaL8dGFB z?>i140>j`6W#7kLUD+F=znC8MP<>~PinCw?^>T8+bziAYXMK+;WGYEDXQDTjxUfvg zOnLYvtLrU|RI(otU@mZufY-^@-OHFptWQ3M$54sd&l>@P2i zgpidfQ{?tnoV2G6lN^lli9zZqIh7`5@yXB?jUSHFgCX@?t%k<*h7F1W7dy^Ak~dNSrn7OgIe!VGG#o)Uqge zRGmcb=fyIJC>eh(-$UWcxSR*p-R{D01avrtT zsY^nene-(Zi9G(scpxux2cr+cyk_4*&G{>Juayj^;u>-XHDOF)u%7K2?WbdNF7hm~x$1C! ztD4<+9DF~$oeaJWD=h21jP@+LgHUj_VNF~HR-0akX_i#bV%mD5=Q8G0$kkyX$70ED z+n{QlYr*pPIVCQhNGC;ycyW(R{f1qoe*EoR?>1_l&Ab!*MH>@D%Vs3#i%}EGmqq;w zE3mMjV(u2DoGFIx5xa1C)3Zn&70Xj^iV5`bL){^sX)xO0sYBrEr0QO-%0W=apUEbt zF-E=-Haq-42uU6DK_2ntt<9s|8(gD^N6$pYPK4g<9=APzhAuxL7q2YCE*Nm?&76z# zeVDV-?Z&T(=%W`)EDyD2nppb~YDj)#i??D$oMrwoUn~osi9}@63eR{K=Gv;+QblXF z1iF6tQH-wDv&({(OmC@{*fn1fmbW6`=csSpfdHyj1pzUsgZmPBOh$+T6jQrx`2B7s z!ew5@XS7bec(|Yz7zSx}CgE^;-Y&3g)-GaQ!p_Jfenb_U^c%$S8T?kU^NY9}*kc#r zB@q;sV+86^%p)5NAK_}5cFIqTjvyazgPlmDd4hLh$wNvFi0VZYd|uAzrfa2h?uN(* z|Fl7LPFmsYI*>Bfhy3ulWq&=u`=^!ty)NY1Tk#{p_ocwR8UoxocZc+)Cn(b!j6qf=L9lO-Q{ z5zNfBzfJOGy=B^3@_aM9A*i#}ygBG$JUp0YzkIWN848l{X_=O~M^Lq>V>-zry^k%) zBew5d^&vg1&B44R?C~M|IhZRkbmS_-7tbEy^(IN&trcCgh)?d#S75PZH8y1L4|0~^ zG+dxw;IMCgutgI;ib9gHcYoc-Bq`k}`x>u050Aqp#GhxEFrUv!mo`JciqCe%HO7(r*k%Lm2}_$f6>TO?T8&PUCtjN$ zMo6B&UWJ5sd)W92GuQ+H685`nE7?q;1i86f$6GDWA}5_Ut*ppwHqYWvtkRU$lh%k}mZSRuN@=Ul{N6L<15VM4chCd{cx0!Sr=yZ{&VJSR;k zs_ou$Q_n{%;-5{*g|T$EU8^`&a|*oCC{CZ;%4OnCJ{?2_o!EjKb(^k$ml{mTsi1f- zj#&+})Y~1j8LKlZUiZ@BSip85i!*2H>g!zHiirt3X5jiUY+wiQSaPstxi94)hQ8?- z;(f^+F~3&f^;0RUP`;wKuy9`yLEf@GX9A~bRDrRO@9@G+jkR<5AcMbYY!`3iU|>HZ zGm4==Ugq9s4;ou;XWlZ3KJ~(VHqWh^GzZ*M(`~RLh0Y0maFUFm=dgV)OQtuDz9R|W zC-rvBr-0a-Hp$F1M)2L#Nh{@4@?xyVvpU?z(g`MzT|pc#=1BN%At;WoSe&SA`{D)s z2AAS>$_?B#xJ^_#cHmvRH(@>_Aae2K2xAp=3fkt|x;;?DHEsa5|N*Ks%C0hN_Ts#Bq$9 z#_l$NgN>V7BudJ-9Rbdgq-E-Aa)%Vj4aUG*qT{uVMFON5kB}cavS-@VD`p zD80cn$G-4?o#@)=)2Bwdo3s$>_Qb3B6G|<4eQF`+T!`Z5H!w0)uSN zVi#w!S?`$2&Dwr?wi!BsEtY4SvL2hVtuSz)f)~5(D#L_d_^F}?A%1Ef_j>rh; zE_jQj-bhT{EcQ;GH4?LJKWk_A$mY~IwOwsq4U6LQ3&j$g6DrOZw{iy`c+83fU{s<$ zLm_Im_{5g4v#D7H;5oNtIepr{;{P~BYUc5+ipzCC*zuDM$|;FsjP=jrAmn!mdr!JIMY z#^hBQyEQ&<%fYjajBIC_t3{x~JXXOp4>6`z9}s-5SA#yFfhjEUQLa|;7z__Zd`#X4 z{^T6$J)s-9Q&y}ATDWw(IQH|JYieTW3{OzhcaEUSq}B76Ip(0O&R@ayzURE|)p0upNDMjjD zF};~Ci;*y-a&0)&nMMZ=eqQY=G)d=s{JDj0FGZpi>Ix@o`3ZB&ao!|FqZjR3@!LOTu|JJ9t;zFQWPe-tsOUzKC&&|+P_iCimoh7{Yz2X`Am;EYFfev>& zy@Bd=8irXs?dM|W;BiiwU4yTy#Rdtjml=a+jTyG&i#<5Kx^)K$OU60A%D;4Hz`^vS zg_ZSykzd-+n&rm?KNM~ZjFfi|agro_Eiw82HThzHhl8ca5#C;>ca;R?2kBz4rhLo= zGRv$wB=EJaJ@&0wOF)7@(c;^F;D2o!1bTz8zQXWG zl7ThlgMn9PlEAyMCp49|UA^8gCyQwG?^3T$J|_zET@zd7cMI_Cswzt2^RdLk#?}!P zwa1F3EEJFi<8c-gyq!E&qcwL!p|v7q;8R+VLv#+ik|7Ho2oHr8hzzX>DjQlAuYMJx zD-b0?o%R}Ogf!n-nY*RtbCv+;5E^4hO;A%HxkU49YKSjVZTL~%s^t~qgmq|fV zO-Y%e)x)OZ{e?kTtmn&y?N#=wnTa7A++F?t#MEc(s9YkSadj7Sk(&a_)R3T!r_%+;=7NMR5*ojy@#WV=ydd$ZeeoO6~7R zGCD1h78v&A1)tp@Ht0I~+<*s{Czy~KvWFvZW(8s3QOQ&dY`}F>MsrlN>EKEWK5%V1 ztk$ivO6!#-(md6F-Lt|=DDUU?(REngW|YN#E=ofoNH~%=Itk-N`3*80pFV6NdPja? z&l_r6WoU8%A1Z@^K!-xDe2H63v(NLZPFJ->xpbkVS8ryXXCgz!l^@kC1U`|9vqo~# z;*zsTJt3h!s5|~@rrF#IPvw-PbGGaMa@#Yhy`@Hd(~x70F)(&0!8X|%K9y&!+BXp= zIblRs$t=q&#$W+*f*txjk;|X98Z(=y>_q}XMKpxp?lADrP!ULk z)pfLR_&Z{B2UZdzd|%unZBn%ocp7zx3MEiYAjDr36BRYxFMz0rD4?&lLh2s7@P_VS z$^VrlxCH-vh^G!skg{CRS#g|&eAQ@S{+Xe=`t@YpT%y;0>+O~2+kNXVi`*&jHYW_m z!^s>>_C{XD!y8@Sxt$R{gu4s`f}9!W;y&T7A9#|;-x!Wysa*ZY+FsRk;0!CboBUp5SH$cym(=hiM&!+ zUGjyCpf#3}D?`cAB;oet6F(g9eg_oydY7>QH^F*dRG{a}2nAg3)vjFLxKD8x*JVi_ zlJ!0QX{g73GamAw97GGMau~>M3e{(|*thlqyaydS$v*x}eIANI1*(8ZVHU!U5B+5^eV?#dW&lHnoKasg=mY)nbERu z+!~vi=R2e)J~8Z`;?iK$xyVN%Y@-B1p=yy}q6)pXnv$duz^fpHq?;Bqabz~YQi@WY zR3!qfBpMZ*oQ!!4WfXX7MU*#9I`qL0)8Opo+2<)qd;iy6=_-}MTxBnc6Lh2Mk(@NS zTN>BnE^N_IpkFgKbyR^#4U2tNt|>mJe>z1D&y=bscciFDb~F?sgK`P%`(iyw#9+@? ziYgcN0x9BqdgIu^0A|hzcX8s&7DuP`5f@73Dho<$ z51!%;LL!fgW*6245*1RoszkUbciD^6qWnmRy6EUz)n_-tz1l}?DApkZK~dy-lwXiz zUgdxIK3qA4!sr5S=;T{r0OupsJew@4CQ@HE$NctIC@~cwpt#-KaJlqyLQ8hXsi%Em zHFahkRnj|iMk!3F36)i#JOLHPl=NW7QQ>;b5BjACm$e7}%&78mb!i2!Y)fwT(Du@4 z%7FU}YEA7Md)6j?i;d{|H0c-ki~WhnDB8CP*I`0$YbEq6HP&idcN%v#>vY_2E1o-2 zwV+CBS(Q~ne=%u}`4$lXK`I;C^OaoYrP?Gt#+!{Ug@kc*+RVJxmQwA5x{8v6w|c{f zf)ptwqTvlHA+Pdj9Co^m>L%V?kxrRzD3y+@5_vlvP>CLfSys)x^xLP29#vK472Y%8 zXvs~d*1U8`NKxNW-&LR6#Q;`hoFT!2zW&5Q85g^xH7_?0UuM{KQCpqJ8L2M4`rT9W zvBEyAQ%T24Fg^AAZi%Saus~)BxTGr4P?18aisYOu7kT#=c;MHj{Wx?&xkg{BT2ia> zvV^oCbDTx4(xm27lL)olrWyr#71tS_%^n1_o3A8LBpfM_>3AnKZU@42!fyE2P9+W`S81~&99Nr&uB1%bf@-G`5D$?i{+N95yt z&Z9OJ5T21CNnGGu(jp(KSNc+c4?8VHNMA!&%WA=3IuD$zvdb;4ORmg(!V^jO&dp7y zQ}7H;thq3HE%C_p0G`{R8b|jGS(g9a=tA0v+wyw{n$FfuapLD8EOuU!^LfolyedD{XSq$tw5aW;Cxx#;dvPu_~udM zs!^T|wDy^uMmH&MR=mem$wj|q_ij=5vYfAX4ytvov~9LlAOCZT&hmaj3%LZMqByhM=cU`5iF6HjgQ*=m{VGYHkdSW+eO=8U84ACcf(mIlhX1yg7ebx|Qj%j~4L!-RkP zNU=cPC`EVzi7&1?e^gUJ?9ry+3c2Ia-uNnumM~3X+nR=jl`)4>gwXa9XIZ~@!9p9~ z|LSB^nAVreZcJ)ecxV(|ZP{q@hAy@`n4y9MRQk=BeR?C!8$o!@8Ma;!Ef z!ZtqazN=aTUp8J!*V*XxbYUNueB>n_BlwO8w49wsvt8a8kt?T9t*po!>id)$T*geP z=~SDYa#LdlF9mqE!z^_k!8OITeSc5+jZtAn)Yla21dl9c+~PC&b`B2_d8;$Ll}eX@ z^cD|fcX`@TI^_TO-yBV~q zy{Pe9e5Lf!HW9I>5pWHuKhQ{eMwwds4}*R^tVFXtMJRxXu$@N2&g{lbdyzC6w!$L5 z{K>D`r_iio2M-Xve*|QXF3gcQ3RTuaYl~Z3%H9?Jxxn?Z^xB+~h8iW;~&=NPyyIa%$92d(`4$1J7h*awC9m zJ*Z`Xtk&!o(IUy(zH@|pxrgiKw}P9lgKs|w!iPQqQL-(KElxM65ic-gKy-d$hMhW^ zRMYb*bLi&n+_!_YDUE#t`ySITZKi|CruH{MI82EvCczCc$UCH|?n#@{Qu?&PEp-i^ zXBj>}zdZ4|abUoP1p#Tt_-$_BKLac&Ai6TOu`v8I!iv8;rC{3eTjl0ZKa$!gNNzOs z2lTvX|F93$2m&IAF(gEO)R6R_z`~hj^mLeW2f3@*!`Ddd7A;t%7ui3}R8<9~O@<>q z2`BHgnBQ3uJ=P zMXp!H;Np7x`Z0kwI{szJpyyC%qK6B|E4^mISYU57rJLx(=1t=REP?kF>yd_EWk7q| zGW!qJ1>V!FJ2srb5O|Z$zbEqWruFb9=s4(iweDXyUvF$hK2{NUPglx!xE6R}PQZtl zfOp-nZ*6cO(|j=x!n#63_l@?|&_%K2x0WdHLkpfqyCXGkd%w6GMLuHIp9{VpzfA=BhVp&W_4_?YD*GN7{C`-l31Z2-|NX(Z26?eWx(l zo*WBnACC|mBO2S0W6CJ{5<~`vRTbgVy-@b)AQ+A$chh7}mi#@T!tJ*L2u28qHOL83 zHsRPn6vAt+ob4T-Nt>^2f`T83`m%w4j`T$c6&BMlamBEbB`Fv63&KCsJMWxH6HQqL zugFT_bsg;_+uw)8jKh2-Ladn`t0$% z?_0D9WC9jXz|X^s!Xn&Rs}=BMx`!bAcl*(1vOU>34Qk1rD5O$3P4o;Eqx<*ejyyA) zu+DSOy@eb`cFKdu30@p?(C8k{3$YIr^G7bJF#1GWIvX1?F~}u?WaL3iKzi047`U$N zf5;WYyt~kCFvuy;run{AjQH!2OS*#Z<`DvIJT-gYnH8OiYaFUnp$b(TE!aZ71tgJJ zT^hUCqetu}ql;A>FB%}EO3KG?a0s1SqZy2SlB;I+WV0na#t(ytCY^iXw`}C8D&aj) zjh-niOr}V~IAgwONLZiU$eF`_$r-L+;9HqzJNX5rApF~y3*jdIbVN?tqt*ATDnWT9 zw>?t&k8(cZXb>E7V!Eq0!Z9B#j5%iI8ahh^3IuIMgrzu0EQGy4O8gWi&m@H0MV^%) z#oW8#k8JrydmYK$k_fpA$as9AkDJ^7vt< zv~r;x_IegMm;9Y~(Vt5O5*Wz#Mnws-ml2V)AP^ipDp$81(%TJs4MEi?kBG`I^LfU% z$>By|_`T@GD#(>XzDsfcN{JmsxY)v6Mi6OWNz;p1Baayq4ptrdXYzg}jp0uy-bDo3 zw3l)>9#dvk+;Gc++hkUtLXH_Gm7?xa!W~Q~y&pt*N`YK0gtARpl&}*Nik;a`p-I!> z%L&_Gw?Ua#syB<8;E$+OQo5^{9N~VbRjEdR8D*ZocSD2Vih}#`h*|ngo<=U*Q`E5) zH~$^;g{mQRNg-47**Y~9w%!)=Ni}~%`vO8^ZjMP}0yFq6++u919S5ZfNB{Xu4Enny5Xws~Ms{ z>qdtPPgF^3O(Vn)s&zYD4nuO$>lD&$K1TgGbq3p~na;(fUcVmZ=EShp7$Jmo8kb(& z*Gy)Gn?~23;@@Sv#B-gxzAV1@CD(~!Jbj`GQ{8Po$uv!O?MuR!?s?ay<>Z-P+dbgvpau^W`z*O2nW7`Ye8I4&=&##$t~&mvM2 zjlvAd*jRksiHz1VGDbQNvip6QYmN|lScErJPFo{Qs=?}^@`@Bbmyl%QrWH#j@I5x_ z4-`*>v_;|T&8$dqjKWP5Kq)dGEPQ4 zQJ&&P#2_?D4ms(330jzdfkaQE{*1;2v*9r)DmpeX6}zG#(J=JwGveD=rN5R)pP~Nc{xnGnQgA<$)Z%x6~ra0|Lfx114ZO_oF6o9p>skZi*rp zsJ{m5f$Esjh}oqu_UtrW)<4>a31mr{1cSU>&-Sp+vxB0HIdFZ%5o;stLH9h>k83r> z??n(>yJ;r8w;!~RsFwv|C?R;oJJRd{Nvm~G)PoHI*Vta;R-FT6D6*=~xA~o(m;;2y zRer5Gbl25SzhDf=A)$F=R*{iborWfOs4mDD5)_=Sc%>>e z>root!lQ~P)KiP1uf?3LJYP)}U%Y;A|B_4u+Rd_b*0bE&saCP9V8(*8)&{8>n=izcE(8t z5jOj}jH21sP8Np9tc+(VLGea65Opi>#$Gd-bP-$iOa~24zrnGNIS>5YsXi0@Zp=S( zP5S+&n<9dn(o^?IvxR)jDwVgonR5}hC1}p2*Q15Joq?Nz8t%`0cWTh(w-8k5nC!rF z3zJE}GSB5f=}0cwmm;r&I#Z9Ry>RgGU$d=Xctl}i=JWV6oGmmrz@NvCbTwHOHZxqf ztg-GQw}#Nq;lcANb!p%ix=)r*eqozEkspWqB)Hc=ejw+O#Kp{iD{1lO9ATKEOeJzP zcW>j(cLr{g7m#M<3_$!I&A;WTJ2j4LPGf3XFz+$kz;XQ4>3A5`jKpem!d|^l1Ivf@m8dtnH&k!0Ov6Nb zA>O8NI``fp+6jKCsn6ewjx|ZhrduCgRkm9n??iiJS{ZX|s8CdDFO&5dl$DD~YZ`fH zci{|31sm~eag^w#DbVL;3o{KHMzV)6eU7``^ZE8kavz>vXL^<%9FvMSHWtM<(vp^V zhN&#I!?wc98!pI$C7+jI+5llF6xj*0QLA-xQ4I1_7Q zKG=HVqmP}bu$++<7m7>XZW)N9V&(~#7c$Czs^gh7J68_*>69!AFTpA8gT4Zu({sjQ zdE@h)jxV-~LxWq_h-;`;hVWB*o-3WG#)_-br}4x)bXm#%HtM<(sO2lvR&*BnJ-RFO zp}@;UqMN<4k7h*(7oN(`a0g#%2amkTk)lWA7Bu%vfWN|ChHLGZ`%eA!mfP}df!biT zwoM<_Aj4))K~kMprv=(>ePAs3lc`!4882n~SzQ`L6O;>vVv36F3HsFFV<}WFR@Vgg zDX(MO3tzPkJDK?;C)?H4)O>sS7kOr@65R38-5wYM365@1DC{q`M`}>Db*7RG&Qj{~ zEb*r)l`nc|T9pr_j=^}otVmv#1!7^tFb9mpYHXCoHe6E-bYR*SJoaw3a>ZshQhz&P zKUV_9HIluH?0f3Ez!97t(N$Sr@G-DOrh~F;B_&Z-$GHIftT5U*eDC!*Q^C_CHsaJY zLVWb^iyk;b1YS5)(1%K3sx;z$(}B`lNnBndLrZ(Q0n%`7Kda;t?qF<3CRZhjv7i09F+JI5-4& zsQ*`i2ifPp`zj@@$WJ3CEdr!_-LD4v7`5|m4fovzEE)Mx@_Zvv1>xt2ijfq5|x2ng{0;YZ2ysRO?M zT}wzx?9Z9-&p&D`FJ2k;3(AOQmN z2LJ>l&!+%5LFFG32)pPT+Ble6TRqHy@Kha-Mgk6|BmrKf+~e>8`!@g05!1J}Qg8sa z#(x;%f4GD$2MB`$2m^3_lsq4Bp$8y$ts)jv;5RV1JI&=``eq^e*8Lg3!34`%!S^`)(?WOXeJ9UT73QF&MvL#_Nc%e%A} zfOTIhVRrw|`X4~{xkc~c07wj=71Vn|F*^JMB>h6r#L>$9VPUjY2oW{_#yZgJ_Z8#l z^#2SXDVP7>_1}sY2-ViE23P{!s|BQL0=XDJN}f-MD+q|Bn4qw=^`QI=bKtdZkYa2s52UA1)f1+yvWobW(6YvJQI1qRiNcuMy_{{U6 z3;kVt|2*&sK)YC4{F8at^)i;KZyr_ z@7FBuSNvBW-qnV)QM#=I5|h|~-=zFe`%ckm57hoUE$PprutW?E4gNm26a8KCe6WE~<>&L+{^)Q(oqx7m*2?(rHQYZpK6a-PW)Tn+9RKHD z6083oun)_cKIQ712xv4D&?x!ef&!m;KIYxOhANnw+SmX+|0_|MGc1uZ!+)j6<^=%E6NsO+`g-W!%)d5ZH~7bJ`ZxB@q$WA@Hty`c5KsWkJq5^& z{Rh?_$Xy}+MTmBXPNh8ZRRBUxRN!sS{b6N4`9Gi^mUrMZRn8q4`hLJol<=Os&?^r? zO|5{m01I9HhdkAtkkz7Wv-E&U+Wdxb6=o z=7WFJ!~|R&4DAK2t?V5we|942sHZyX!d=V<45@$ zq?pw&JGdDMsS_M%b=1FHYz+19i4RNIG=AHJ3s~P8*w43^Y3ASX02BOc^&~OFuR6%5 zjza_tK*s@Ss(XF@ob7)^KP+>S2r)AW0N(tU%;6mW8<_D|GIN($*h2#7#DB?r%k@8^ zAC~!Oc1@HQ90a5j2)cAi%)x=H2(PlY;-o0uJdj_8C1?1;*6^;m?jPSNMOxJ}j#bkUkX)$TQwBzk%Jkz=wg^D{)f#fIcGtecrzt<=OrQ_-B~(tDe_3$fzL% zfCPY#x$gue9sU#gu$+v~3LGT>IdcIlU{60vo==s_Z;*hEKFm8o#e6;n_-S^)sod`s zZubXyf8K;2h9!6REx7~2tpVmk@I$n_8H z0bK(@JN@50mAwmuJy_^DJOS(&fW2=!!?6!z{{zSj(*W-e0Jj0)ecv1w{~y4=eaFKJ z(6>jJ^a8+Z0QmkOS4(^tEM^6a!v7GrnYX;$8=!9fORc!c4^#gf-2Z{aVH7|u1h9g@ zki73Z)>9tFDgo008yjmo;IZs~u!-_g*OCB>ZvqC={khw8+5>DmYva3z-=Y_{o&PE`@e7>RzlwGCw0C#r`x;hk`#n|CTG!x52R;n< zk+e>T1iGsUxbC|e^v>VIWq}R4O!Xgp%XDXUmbZf_Lcr+S07BvWx2nVc0L$w-KP>A- z4PE~f;1GO)Zo6*{&cN*D=b7kV!{HB8vzIir|7FmQeVG$PuQPYXxvmes{pQ^NoO9;P%)K*lJD_hf^d+(02WqgK(kIJl?Hqu$ zZxq(*9;(46u|-JH9LVp$D$W9ov1DCQ_*ey&4Sm>BHuVi`m9_-Q9ASH|0%|IC1x9gR zT%3K|zu_C^y>VF1B0acvZ~}O??G1;kV(Vc02)Zyy$~>b#zvu1{7miw68rq8-u6<6? z@HW)7uBi{5I1S#69puo@?>YZ|yaocE_kUGB&xHkgta?fdR&EzIA34R7E@5eGAM%|G zNrViVXP<;kvE_N$XVaztxmPi@`8q5_re&ua*x1`UOJX(vJ6C}%`z6HcGpxC6?6Zr$ z-^0+_4z0;p{DF~>6XNL1fY#}$xs1(ADH%;^U2B{K-%eCulfs4A4D3m=t-Vw;dEp4K zFW}pxwUwBr3ari4>n&_-&HUzNKjG1*6$$D3EHT!Q%CUBO@4;*%f+PXmMq2x4ju>k+ zb37rY+u80zLV7fp#@1rtOe8{v!O9ll)lpr3DM}U}LV>i_jTZz&Slecf2$iPxHmntd zEr$?f;iuIIvE&yMbS2cTDNj5uIhn#6I%0(AJd-J(Ekym3zk?UiWlahpj^H5#LRc~i zIN0Rwp?ImZYE=YqMS>WcV>7a?je0tB=r6F*ii&MVvJjh}mdWY1t>r0a7s1JDu&qsc z!-X|stR;to&05`mDI8sPQ;`>Dq=~V3S%NLX+oC&R#mHh_SWH^G*(Ao=jGU0rL~Dz- z!*5r@VzO3?%o1ZU`~<)Cp*{ERvfeW#u(uxZM%sHNM+mkVd9fB}nAc+fGD_hKPKy|u znagppw$oqE+kmwwu%GQ>tkuj3h>G}n|1M;P-B5T{XpomCGIiU;Sm%DX-QkMGP-NTh z=FjNvooh^<4W(be{uM+cnT2W_Vf);imwh_vy#XhJk0dvvxD}*{jpl4~-X=4fT=*`& z_9|SiOA#b`r;xmbn~85lEE+^19QGV?kdv_W#p7Xfoo)xVSsc7#^O))NmO7;1;RW<0 zte`{z)?Lq3ErJ`sVQ_aWz!gO7s`(UGq`@LMe@?JZh)6o~@$@rY63Ejki}P?KTI|H)uM?}sjsYoq{{s(RA?pAD diff --git a/tools/dmitool/dmitool.py b/tools/dmitool/dmitool.py deleted file mode 100644 index 390f0d745ff..00000000000 --- a/tools/dmitool/dmitool.py +++ /dev/null @@ -1,94 +0,0 @@ -""" Python 2.7 wrapper for dmitool. -""" - -import os -from subprocess import Popen, PIPE - -_JAVA_PATH = ["java"] -_DMITOOL_CMD = ["-jar", "dmitool.jar"] - -def _dmitool_call(*dmitool_args, **popen_args): - return Popen(_JAVA_PATH + _DMITOOL_CMD + [str(arg) for arg in dmitool_args], **popen_args) - -def _safe_parse(dict, key, deferred_value): - try: - dict[key] = deferred_value() - except Exception as e: - print "Could not parse property '%s': %s"%(key, e) - return e - return False - -def version(): - """ Returns the version as a string. """ - stdout, stderr = _dmitool_call("version", stdout=PIPE).communicate() - return str(stdout).strip() - -def help(): - """ Returns the help text as a string. """ - stdout, stderr = _dmitool_call("help", stdout=PIPE).communicate() - return str(stdout).strip() - -def info(filepath): - """ Totally not a hack that parses the output from dmitool into a dictionary. - May break at any moment. - """ - subproc = _dmitool_call("info", filepath, stdout=PIPE) - stdout, stderr = subproc.communicate() - - result = {} - data = stdout.split(os.linesep)[1:] - #for s in data: print s - - #parse header line - if len(data) > 0: - header = data.pop(0).split(",") - #don't need to parse states, it's redundant - _safe_parse(result, "images", lambda: int(header[0].split()[0].strip())) - _safe_parse(result, "size", lambda: header[2].split()[1].strip()) - - #parse state information - states = [] - for item in data: - if not len(item): continue - - stateinfo = {} - item = item.split(",", 3) - _safe_parse(stateinfo, "name", lambda: item[0].split()[1].strip(" \"")) - _safe_parse(stateinfo, "dirs", lambda: int(item[1].split()[0].strip())) - _safe_parse(stateinfo, "frames", lambda: int(item[2].split()[0].strip())) - if len(item) > 3: - stateinfo["misc"] = item[3] - - states.append(stateinfo) - - result["states"] = states - return result - -def extract_state(input_path, output_path, icon_state, direction=None, frame=None): - """ Extracts an icon state as a png to a given path. - If provided direction should be a string, one of S, N, E, W, SE, SW, NE, NW. - If provided frame should be a frame number or a string of two frame number separated by a dash. - """ - args = ["extract", input_path, icon_state, output_path] - if direction is not None: args.extend(("direction" , str(direction))) - if frame is not None: args.extend(("frame" , str(frame))) - return _dmitool_call(*args) - -def import_state(target_path, input_path, icon_state, replace=False, delays=None, rewind=False, loop=None, ismovement=False, direction=None, frame=None): - """ Inserts an input png given by the input_path into the target_path. - """ - args = ["import", target_path, icon_state, input_path] - - if replace: args.append("nodup") - if rewind: args.append("rewind") - if ismovement: args.append("movement") - if delays: args.extend(("delays", ",".join(delays))) - if direction is not None: args.extend(("direction", direction)) - if frame is not None: args.extend(("frame", frame)) - - if loop in ("inf", "infinity"): - args.append("loop") - elif loop: - args.extend(("loopn", loop)) - - return _dmitool_call(*args) diff --git a/tools/dmitool/git_merge_installer.bat b/tools/dmitool/git_merge_installer.bat deleted file mode 100644 index 18ab7c8026a..00000000000 --- a/tools/dmitool/git_merge_installer.bat +++ /dev/null @@ -1,6 +0,0 @@ -@echo off -set tab= -echo. >> ../../.git/config -echo [merge "merge-dmi"] >> ../../.git/config -echo %tab%name = iconfile merge driver >> ../../.git/config -echo %tab%driver = ./tools/dmitool/dmimerge.sh %%O %%A %%B >> ../../.git/config diff --git a/tools/dmitool/git_merge_installer.sh b/tools/dmitool/git_merge_installer.sh deleted file mode 100755 index e0c48823b11..00000000000 --- a/tools/dmitool/git_merge_installer.sh +++ /dev/null @@ -1,6 +0,0 @@ -F="../../.git/config" - -echo '' >> $F -echo '[merge "merge-dmi"]' >> $F -echo ' name = iconfile merge driver' >> $F -echo ' driver = ./tools/dmitool/dmimerge.sh %O %A %B' >> $F diff --git a/tools/dmitool/merging.txt b/tools/dmitool/merging.txt deleted file mode 100644 index d8943efb985..00000000000 --- a/tools/dmitool/merging.txt +++ /dev/null @@ -1,14 +0,0 @@ -1. Install java(http://www.java.com/en/download/index.jsp) -2. Make sure java is in your PATH. To test this, open git bash, and type "java". If it says unknown command, you need to add JAVA/bin to your PATH variable (A guide for this can be found at https://www.java.com/en/download/help/path.xml ). - -Merging -The easiest way to do merging is to install the merge driver. For this, open `-tg-station/.git/config` in a text editor, and paste the following lines to the end of it: - -[merge "merge-dmi"] - name = iconfile merge driver - driver = ./tools/dmitool/dmimerge.sh %O %A %B - -You may optionally instead run git_merge_installer.bat or git_merge_installer.sh which should automatically insert these lines for you at the appropriate location. - -After this, merging DMI files should happen automagically unless there are conflicts (an icon_state that both you and someone else changed). -If there are conflicts, you will unfortunately still be stuck with opening both versions in the editor, and manually resolving the issues with those states. diff --git a/tools/dmitool/src/main/java/dmitool/DMI.java b/tools/dmitool/src/main/java/dmitool/DMI.java deleted file mode 100644 index bb560107ae9..00000000000 --- a/tools/dmitool/src/main/java/dmitool/DMI.java +++ /dev/null @@ -1,455 +0,0 @@ -package dmitool; - -import ar.com.hjg.pngj.ImageInfo; -import ar.com.hjg.pngj.ImageLineInt; -import ar.com.hjg.pngj.PngReader; -import ar.com.hjg.pngj.PngWriter; -import ar.com.hjg.pngj.PngjInputException; -import ar.com.hjg.pngj.chunks.PngChunkPLTE; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.ArrayDeque; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.Deque; -import java.util.HashMap; -import java.util.List; - -public class DMI implements Comparator { - int w, h; - List images; - int totalImages = 0; - RGBA[] palette; - boolean isPaletted; - - public DMI(int w, int h) { - this.w = w; - this.h = h; - images = new ArrayList<>(); - isPaletted = false; - palette = null; - } - - public DMI(String f) throws DMIException, FileNotFoundException { - this(new File(f)); - } - - public DMI(File f) throws DMIException, FileNotFoundException { - if(f.length() == 0) { // Empty .dmi is empty file - w = 32; - h = 32; - images = new ArrayList<>(); - isPaletted = false; - palette = null; - return; - } - InputStream in = new FileInputStream(f); - PngReader pngr; - try { - pngr = new PngReader(in); - } catch(PngjInputException pie) { - throw new DMIException("Bad file format!", pie); - } - String descriptor = pngr.getMetadata().getTxtForKey("Description"); - String[] lines = descriptor.split("\n"); - - if(Main.VERBOSITY > 0) System.out.println("Descriptor has " + lines.length + " lines."); - if(Main.VERBOSITY > 3) { - System.out.println("Descriptor:"); - System.out.println(descriptor); - } - - /* length 6 is: - # BEGIN DMI - version = 4.0 - state = "state" - dirs = 1 - frames = 1 - # END DMI - */ - if(lines.length < 6) throw new DMIException(null, 0, "Descriptor too short!"); - - if(!"# BEGIN DMI".equals(lines[0])) throw new DMIException(lines, 0, "Expected '# BEGIN DMI'"); - if(!"# END DMI".equals(lines[lines.length-1])) throw new DMIException(lines, lines.length-1, "Expected '# END DMI'"); - if(!"version = 4.0".equals(lines[1])) throw new DMIException(lines, 1, "Unknown version, expected 'version = 4.0'"); - - this.w = 32; - this.h = 32; - - int i = 2; - - if(lines[i].startsWith("\twidth = ")) { - this.w = Integer.parseInt(lines[2].substring("\twidth = ".length())); - i++; - } - if(lines[i].startsWith("\theight = ")) { - this.h = Integer.parseInt(lines[3].substring("\theight = ".length())); - i++; - } - - List states = new ArrayList<>(); - - while(i < lines.length - 1) { - long imagesInState = 1; - if(!lines[i].startsWith("state = \"") || !lines[i].endsWith("\"")) throw new DMIException(lines, i, "Error reading state string"); - String stateName = lines[i].substring("state = \"".length(), lines[i].length()-1); - i++; - int dirs = 1; - int frames = 1; - float[] delays = null; - boolean rewind = false; - int loop = -1; - String hotspot = null; - boolean movement = false; - while(lines[i].startsWith("\t")) { - if(lines[i].startsWith("\tdirs = ")) { - dirs = Integer.parseInt(lines[i].substring("\tdirs = ".length())); - imagesInState *= dirs; - i++; - } else if(lines[i].startsWith("\tframes = ")) { - frames = Integer.parseInt(lines[i].substring("\tframes = ".length())); - imagesInState *= frames; - i++; - } else if(lines[i].startsWith("\tdelay = ")) { - String delayString = lines[i].substring("\tdelay = ".length()); - String[] delayVals = delayString.split(","); - delays = new float[delayVals.length]; - for(int d=0; d 0) System.out.println(pal.getNentries() + " palette entries"); - - palette = new RGBA[pal.getNentries()]; - int[] rgb = new int[3]; - for(int q=0; q 0) System.out.println("Non-paletted image"); - } - - int iw = pngr.imgInfo.cols; - int ih = pngr.imgInfo.rows; - - if(totalImages > iw * ih) - throw new DMIException(null, 0, "Impossible number of images!"); - - if(Main.VERBOSITY > 0) System.out.println("Image size " + iw+"x"+ih); - int[][] px = new int[ih][]; - - for(int y=0; y statesY) - // this should NEVER happen, we pre-check it - throw new DMIException(null, 0, "CRITICAL: End of image reached with states to go!"); - } - } - if(is.delays != null) { - if((Main.STRICT && is.delays.length*is.dirs != img.length) || is.delays.length*is.dirs < img.length) - throw new DMIException(null, 0, "Delay array size mismatch: " + is.delays.length*is.dirs + " vs " + img.length + "!"); - } - is.images = img; - } - } - - public IconState getIconState(String name) { - for(IconState is: images) { - if(is.name.equals(name)) { - return is; - } - } - return null; - } - - /** - * Makes a copy, unless name is null. - */ - public void addIconState(String name, IconState is) { - if(name == null) { - images.add(is); - totalImages += is.dirs * is.frames; - } else { - IconState newState = (IconState)is.clone(); - newState.name = name; - images.add(newState); - totalImages += is.dirs * is.frames; - } - } - - public boolean removeIconState(String name) { - for(IconState is: images) { - if(is.name.equals(name)) { - images.remove(is); - totalImages -= is.dirs * is.frames; - return true; - } - } - return false; - } - - public boolean setIconState(IconState is) { - for(int i=0; i 0) System.out.println("Fixing PNG chunks..."); - out.writeInt(in.readInt()); - out.writeInt(in.readInt()); - - Deque notZTXT = new ArrayDeque<>(); - - PNGChunk c = null; - - while(c == null || c.type != IEND) { - c = new PNGChunk(in); - if(c.type == zTXt && notZTXT != null) { - PNGChunk cc = null; - while(cc == null || cc.type != IHDR) { - cc = notZTXT.pop(); - cc.write(out); - } - c.write(out); - while(notZTXT.size() != 0) { - PNGChunk pc = notZTXT.pop(); - pc.write(out); - } - notZTXT = null; - } else if(notZTXT != null) { - notZTXT.add(c); - } else { - c.write(out); - } - } - if(Main.VERBOSITY > 0) System.out.println("Chunks fixed."); - } - - @Override public int compare(IconState arg0, IconState arg1) { - return arg0.name.compareTo(arg1.name); - } - - public void writeDMI(OutputStream os) throws IOException { - writeDMI(os, false); - } - public void writeDMI(OutputStream os, boolean sortStates) throws IOException { - if(totalImages == 0) { // Empty .dmis are empty files - os.close(); - return; - } - - // Setup chunk-fix buffer - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - - if(sortStates) { - Collections.sort(images, this); - } - - // Write the dmi into the buffer - int sx = (int)Math.ceil(Math.sqrt(totalImages)); - int sy = totalImages / sx; - if(sx*sy < totalImages) { - sy++; - } - if(Main.VERBOSITY > 0) System.out.println("Image size: " + w + "x" + h + "; number of images " + sx + "x" + sy + " (" + totalImages + ")"); - int ix = sx * w; - int iy = sy * h; - ImageInfo ii = new ImageInfo(ix, iy, 8, true); - PngWriter out = new PngWriter(baos, ii); - out.setCompLevel(9); // Maximum compression - String description = getDescriptor(); - if(Main.VERBOSITY > 0) System.out.println("Descriptor has " + (description.split("\n").length) + " lines."); - out.getMetadata().setText("Description", description, true, true); - - Image[][] img = new Image[sx][sy]; - { - int k = 0; - int r = 0; - for(IconState is: images) { - for(Image i: is.images) { - img[k++][r] = i; - - if(k == sx) { - k = 0; - r++; - } - } - } - } - - for(int irow=0; irow myIS = new HashMap<>(); - HashMap dmiIS = new HashMap<>(); - - for(IconState is: images) { - myIS.put(is.name, is); - } - for(IconState is: dmi.images) { - dmiIS.put(is.name, is); - } - if(!myIS.keySet().equals(dmiIS.keySet())) return false; - for(String s: myIS.keySet()) { - if(!myIS.get(s).equals(dmiIS.get(s))) return false; - } - - return true; - } -} diff --git a/tools/dmitool/src/main/java/dmitool/DMIDiff.java b/tools/dmitool/src/main/java/dmitool/DMIDiff.java deleted file mode 100644 index 431d9c1d15a..00000000000 --- a/tools/dmitool/src/main/java/dmitool/DMIDiff.java +++ /dev/null @@ -1,194 +0,0 @@ -package dmitool; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; - -public class DMIDiff { - Map newIconStates; - Map modifiedIconStates = new HashMap<>(); - Set removedIconStates; - - DMIDiff() { - newIconStates = new HashMap<>(); - removedIconStates = new HashSet<>(); - } - - public DMIDiff(DMI base, DMI mod) { - if(base.h != mod.h || base.w != mod.w) throw new IllegalArgumentException("Cannot compare non-identically-sized DMIs!"); - - HashMap baseIS = new HashMap<>(); - for(IconState is: base.images) { - baseIS.put(is.name, is); - } - - HashMap modIS = new HashMap<>(); - for(IconState is: mod.images) { - modIS.put(is.name, is); - } - - newIconStates = ((HashMap)modIS.clone()); - for(String s: baseIS.keySet()) { - newIconStates.remove(s); - } - - removedIconStates = new HashSet<>(); - removedIconStates.addAll(baseIS.keySet()); - removedIconStates.removeAll(modIS.keySet()); - - Set retainedStates = new HashSet<>(); - retainedStates.addAll(baseIS.keySet()); - retainedStates.retainAll(modIS.keySet()); - - for(String s: retainedStates) { - if(!baseIS.get(s).equals(modIS.get(s))) { - modifiedIconStates.put(s, new IconStateDiff(baseIS.get(s), modIS.get(s))); - } - } - } - /** - * ASSUMES NO MERGE CONFLICTS - MERGE DIFFS FIRST. - */ - public void applyToDMI(DMI dmi) { - for(String s: removedIconStates) { - dmi.removeIconState(s); - } - for(String s: modifiedIconStates.keySet()) { - dmi.setIconState(modifiedIconStates.get(s).newState); - } - for(String s: newIconStates.keySet()) { - dmi.addIconState(null, newIconStates.get(s)); - } - } - - /** - * @param other The diff to merge with - * @param conflictDMI A DMI to add conflicted icon_states to - * @param merged An empty DMIDiff to merge into - * @param aName The log name for this diff - * @param bName The log name for {@code other} - * @return A Set containing all icon_states which conflicted, along with what was done in each diff, in the format "icon_state: here|there"; here and there are one of "added", "modified", and "removed" - */ - public Set mergeDiff(DMIDiff other, DMI conflictDMI, DMIDiff merged, String aName, String bName) { - HashSet myTouched = new HashSet<>(); - myTouched.addAll(removedIconStates); - myTouched.addAll(newIconStates.keySet()); - myTouched.addAll(modifiedIconStates.keySet()); - - HashSet otherTouched = new HashSet<>(); - otherTouched.addAll(other.removedIconStates); - otherTouched.addAll(other.newIconStates.keySet()); - otherTouched.addAll(other.modifiedIconStates.keySet()); - - HashSet bothTouched = (HashSet)myTouched.clone(); - bothTouched.retainAll(otherTouched); // this set now contains the list of icon_states that *both* diffs modified, which we'll put in conflictDMI for manual merge (unless they were deletions - - if(Main.VERBOSITY > 0) { - System.out.println("a: " + Arrays.toString(myTouched.toArray())); - System.out.println("b: " + Arrays.toString(otherTouched.toArray())); - System.out.println("both: " + Arrays.toString(bothTouched.toArray())); - } - - HashSet whatHappened = new HashSet<>(); - - for(String s: bothTouched) { - String here, there; - if(removedIconStates.contains(s)) { - here = "removed"; - } else if(newIconStates.containsKey(s)) { - here = "added"; - } else if(modifiedIconStates.containsKey(s)) { - here = "modified"; - } else { - System.out.println("Unknown error; state="+s); - here = "???"; - } - - if(other.removedIconStates.contains(s)) { - there = "removed"; - } else if(other.newIconStates.containsKey(s)) { - there = "added"; - } else if(other.modifiedIconStates.containsKey(s)) { - there = "modified"; - } else { - System.out.println("Unknown error; state="+s); - there = "???"; - } - - whatHappened.add(s + ": " + here + "|" + there); - } - - // Removals - for(String s: removedIconStates) { - if(!bothTouched.contains(s)) { - merged.removedIconStates.add(s); - } - } - for(String s: other.removedIconStates) { - if(!bothTouched.contains(s)) { - merged.removedIconStates.add(s); - } - } - - // Modifications - for(String s: modifiedIconStates.keySet()) { - if(!bothTouched.contains(s)) { - merged.modifiedIconStates.put(s, modifiedIconStates.get(s)); - } else { - conflictDMI.addIconState(aName + "|" + s, modifiedIconStates.get(s).newState); - } - } - for(String s: other.modifiedIconStates.keySet()) { - if(!bothTouched.contains(s)) { - merged.modifiedIconStates.put(s, other.modifiedIconStates.get(s)); - } else { - conflictDMI.addIconState(bName + "|" + s, other.modifiedIconStates.get(s).newState); - } - } - - // Additions - for(String s: newIconStates.keySet()) { - if(!bothTouched.contains(s)) { - merged.newIconStates.put(s, newIconStates.get(s)); - } else { - conflictDMI.addIconState(aName + s, newIconStates.get(s)); - } - } - for(String s: other.newIconStates.keySet()) { - if(!bothTouched.contains(s)) { - merged.newIconStates.put(s, other.newIconStates.get(s)); - } else { - conflictDMI.addIconState(bName + s, other.newIconStates.get(s)); - } - } - - return whatHappened; - } - - @Override public String toString() { - String s = ""; - String t = "\t"; - String q = "\""; - String n = "\n"; - if(!removedIconStates.isEmpty()) { - s += "Removed:\n"; - for(String state: removedIconStates) - s += t + q + state + q + n; - } - if(!modifiedIconStates.isEmpty()) { - s += "Modified:\n"; - for(String state: modifiedIconStates.keySet()) - s += t + q + state + q + " [" + modifiedIconStates.get(state).toString() + "]\n"; - } - if(!newIconStates.isEmpty()) { - s += "Added:\n"; - for(String state: newIconStates.keySet()) - s += t + q + state + q + " " + newIconStates.get(state).infoStr() + n; - } - if("".equals(s)) - return "No changes"; - return s; - } -} \ No newline at end of file diff --git a/tools/dmitool/src/main/java/dmitool/DMIException.java b/tools/dmitool/src/main/java/dmitool/DMIException.java deleted file mode 100644 index e9293162894..00000000000 --- a/tools/dmitool/src/main/java/dmitool/DMIException.java +++ /dev/null @@ -1,24 +0,0 @@ -package dmitool; - -public class DMIException extends Exception { - String[] desc = null; - int line = 0; - public DMIException(String[] descriptor, int line, String what) { - super(what); - desc = descriptor; - this.line = line; - } - public DMIException(String what) { - super(what); - } - public DMIException(String what, Exception cause) { - super(what, cause); - } - - @Override public String getMessage() { - if(desc != null) - return "\"" + desc[line] + "\" - " + super.getMessage(); - - return super.getMessage(); - } -} \ No newline at end of file diff --git a/tools/dmitool/src/main/java/dmitool/IconState.java b/tools/dmitool/src/main/java/dmitool/IconState.java deleted file mode 100644 index a214f5d621a..00000000000 --- a/tools/dmitool/src/main/java/dmitool/IconState.java +++ /dev/null @@ -1,281 +0,0 @@ -package dmitool; - -import java.util.Arrays; -import ar.com.hjg.pngj.ImageInfo; -import ar.com.hjg.pngj.ImageLineInt; -import ar.com.hjg.pngj.PngWriter; -import ar.com.hjg.pngj.PngReader; -import ar.com.hjg.pngj.PngjInputException; -import java.io.InputStream; -import java.io.OutputStream; - -public class IconState { - String name; - int dirs; - int frames; - float[] delays; - Image[] images; // dirs come first - boolean rewind; - int loop; - String hotspot; - boolean movement; - - public String getInfoLine() { - String extraInfo = ""; - if(rewind) extraInfo += " rewind"; - if(frames != 1) { - extraInfo += " loop(" + (loop==-1 ? "infinite" : loop) + ")"; - } - if(hotspot != null) extraInfo += " hotspot('" + hotspot + "')"; - if(movement) extraInfo += " movement"; - if(extraInfo.equals("")) { - return String.format("state \"%s\", %d dir(s), %d frame(s)", name, dirs, frames); - } else { - return String.format("state \"%s\", %d dir(s), %d frame(s),%s", name, dirs, frames, extraInfo); - } - } - - @Override public IconState clone() { - IconState is = new IconState(name, dirs, frames, images.clone(), delays==null ? null : delays.clone(), rewind, loop, hotspot, movement); - is.delays = delays != null ? delays.clone() : null; - is.rewind = rewind; - - return is; - } - - public IconState(String name, int dirs, int frames, Image[] images, float[] delays, boolean rewind, int loop, String hotspot, boolean movement) { - if(delays != null) { - if(Main.STRICT && delays.length != frames) { - throw new IllegalArgumentException("Delays and frames must be the same length!"); - } - } - this.name = name; - this.dirs = dirs; - this.frames = frames; - this.images = images; - this.rewind = rewind; - this.loop = loop; - this.hotspot = hotspot; - this.delays = delays; - this.movement = movement; - } - void setDelays(float[] delays) { - this.delays = delays; - } - void setRewind(boolean b) { - rewind = b; - } - @Override public boolean equals(Object obj) { - if(obj == this) return true; - if(!(obj instanceof IconState)) return false; - - IconState is = (IconState)obj; - - if(!is.name.equals(name)) return false; - if(is.dirs != dirs) return false; - if(is.frames != frames) return false; - if(!Arrays.equals(images, is.images)) return false; - if(is.rewind != rewind) return false; - if(is.loop != loop) return false; - if(!Arrays.equals(delays, is.delays)) return false; - if(!(is.hotspot == null ? hotspot == null : is.hotspot.equals(hotspot))) return false; - if(is.movement != movement) return false; - - return true; - } - public String infoStr() { - return "[" + frames + " frame(s), " + dirs + " dir(s)]"; - } - public String getDescriptorFragment() { - String s = ""; - String q = "\""; - String n = "\n"; - s += "state = " + q + name + q + n; - s += "\tdirs = " + dirs + n; - s += "\tframes = " + frames + n; - if(delays != null) { - s += "\tdelay = " + delayArrayToString(delays) + n; - } - if(rewind) { - s += "\trewind = 1\n"; - } - if(loop != -1) { - s += "\tloop = " + loop + n; - } - if(hotspot != null) { - s += "\thotspot = " + hotspot + n; - } - if(movement) { - s += "\tmovement = 1\n"; - } - return s; - } - - private static String delayArrayToString(float[] d) { - String s = ""; - for(float f: d) { - s += ","+f; - } - return s.substring(1); - } - - /** - * Dump the state to the given OutputStream in PNG format. Frames will be dumped along the X axis of the image, and directions will be dumped along the Y. - */ - public void dumpToPNG(OutputStream outS, int minDir, int maxDir, int minFrame, int maxFrame) { - int totalDirs = maxDir - minDir + 1; - int totalFrames = maxFrame - minFrame + 1; - - int w = images[minDir + minFrame * this.dirs].w; - int h = images[minDir + minFrame * this.dirs].h; - - if(Main.VERBOSITY > 0) System.out.println("Writing " + totalDirs + " dir(s), " + totalFrames + " frame(s), " + totalDirs*totalFrames + " image(s) total."); - ImageInfo ii = new ImageInfo(totalFrames * w, totalDirs * h, 8, true); - PngWriter out = new PngWriter(outS, ii); - out.setCompLevel(9); - - Image[][] img = new Image[totalFrames][totalDirs]; - { - for(int i=0; i= frames) - throw new IllegalArgumentException("Provided frame is out of range: " + frame); - if(dir < 0 || dir >= dirs) - throw new IllegalArgumentException("Provided dir is out of range: " + dir); - - images[getIndex(dir, frame)] = splice; - } -} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tools/dmitool/src/main/java/dmitool/IconStateDiff.java b/tools/dmitool/src/main/java/dmitool/IconStateDiff.java deleted file mode 100644 index a5d30db7fe0..00000000000 --- a/tools/dmitool/src/main/java/dmitool/IconStateDiff.java +++ /dev/null @@ -1,126 +0,0 @@ -package dmitool; - -import java.util.HashMap; -import java.util.HashSet; - -public class IconStateDiff { - static class ISAddress { - int dir; - int frame; - - public ISAddress(int dir, int frame) { - this.dir = dir; - this.frame = frame; - } - - public String infoStr(int maxDir, int maxFrame) { - if(maxDir == 1 && maxFrame == 1) { - return ""; - } else if(maxDir == 1) { - return "{" + frame + "}"; - } else if(maxFrame == 1) { - return "{" + Main.dirs[dir] + "}"; - } else { - return "{" + Main.dirs[dir] + " " + frame + "}"; - } - } - } - int oldFrameCount = 0; - int oldDirectionCount = 0; - boolean oldRewind = false; - int oldLoop = -1; - String oldHotspot = null; - - int newFrameCount = 0; - int newDirectionCount = 0; - boolean newRewind = false; - int newLoop = -1; - String newHotspot = null; - - IconState newState; - HashMap modifiedFrames = new HashMap<>(); - HashMap newFrames = new HashMap<>(); - HashSet removedFrames = new HashSet<>(); - - public IconStateDiff(IconState base, IconState mod) { - int maxDir = Math.max(base.dirs, mod.dirs); - int maxFrame = Math.max(base.frames, mod.frames); - - oldFrameCount = base.frames; - oldDirectionCount = base.dirs; - oldRewind = base.rewind; - oldLoop = base.loop; - oldHotspot = base.hotspot; - - newFrameCount = mod.frames; - newDirectionCount = mod.dirs; - newRewind = mod.rewind; - newLoop = mod.loop; - newHotspot = mod.hotspot; - - newState = mod; - - Image baseI, modI; - for(int d=0; d d && base.frames > f) { - baseI = base.images[f * base.dirs + d]; - } else baseI = null; - if(mod.dirs > d && mod.frames > f) { - modI = mod.images[f * mod.dirs + d]; - } else modI = null; - - if(baseI == null && modI == null) continue; - - if(baseI == null) newFrames.put(new ISAddress(d, f), modI); - else if(modI == null) removedFrames.add(new ISAddress(d, f)); - else if(!baseI.equals(modI)) { - modifiedFrames.put(new ISAddress(d, f), modI); - } - } - } - } - - @Override public String toString() { - String s = ""; - String tmp; - - if(newDirectionCount != oldDirectionCount) - s += " | dirs " + oldDirectionCount + "->" + newDirectionCount; - - if(newFrameCount != oldFrameCount) - s += " | frames " + oldFrameCount + "->" + newFrameCount; - - if(newRewind != oldRewind) { - s += " | rewind " + oldRewind + "->" + newRewind; - } - - if(newLoop != oldLoop) { - s += " | loop " + oldLoop + "->" + newLoop; - } - - if(newHotspot == null ? oldHotspot != null : !newHotspot.equals(oldHotspot)) { - s += " | hotspot " + oldHotspot + "->" + newHotspot; - } - - if(!modifiedFrames.isEmpty()) { - int total_frames = Math.min(oldFrameCount, newFrameCount) * Math.min(oldDirectionCount, newDirectionCount); - tmp = ""; - for(ISAddress isa: modifiedFrames.keySet()) { - String str = isa.infoStr(oldDirectionCount, oldFrameCount); - if(!"".equals(str)) { - tmp += ", " + str; - } - } - if(!"".equals(tmp)) { - s += " | modified " + modifiedFrames.size() + " of " + total_frames + ": " + tmp.substring(1); - } else { - s += " | modified " + modifiedFrames.size() + " of " + total_frames; - } - } - - if("".equals(s)) - return "No change"; - return s.substring(3); - } -} \ No newline at end of file diff --git a/tools/dmitool/src/main/java/dmitool/Image.java b/tools/dmitool/src/main/java/dmitool/Image.java deleted file mode 100644 index 2ea7ff41920..00000000000 --- a/tools/dmitool/src/main/java/dmitool/Image.java +++ /dev/null @@ -1,32 +0,0 @@ -package dmitool; - -import java.io.IOException; -import java.io.OutputStream; - -public abstract class Image { - int w, h; - - abstract RGBA getPixel(int x, int y); - - public Image(int w, int h) { - this.w = w; - this.h = h; - } - - @Override public boolean equals(Object obj) { - if(obj == this) return true; - if(!(obj instanceof Image)) return false; - - Image im = (Image) obj; - - if(w != im.w || h != im.h) return false; - - for(int i=0; i argq = new ArrayDeque<>(); - for(String s: args) { - argq.addLast(s); - } - if(argq.size() == 0) { - System.out.println("No command found; use 'help' for help"); - return; - } - String switches = argq.peekFirst(); - if(switches.startsWith("-")) { - for(char c: switches.substring(1).toCharArray()) { - switch(c) { - case 'v': VERBOSITY++; break; - case 'q': VERBOSITY--; break; - case 'S': STRICT = true; break; - } - } - argq.pollFirst(); - } - String op = argq.pollFirst(); - - switch(op) { - case "diff": { - if(argq.size() < 2) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String a = argq.pollFirst(); - String b = argq.pollFirst(); - - if(VERBOSITY >= 0) System.out.println("Loading " + a); - DMI dmi = doDMILoad(a); - if(VERBOSITY >= 0) dmi.printInfo(); - - if(VERBOSITY >= 0) System.out.println("Loading " + b); - DMI dmi2 = doDMILoad(b); - if(VERBOSITY >= 0) dmi2.printInfo(); - - DMIDiff dmid = new DMIDiff(dmi, dmi2); - System.out.println(dmid); - break; - } - case "sort": { - if(argq.size() < 1) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String f = argq.pollFirst(); - - if(VERBOSITY >= 0) System.out.println("Loading " + f); - DMI dmi = doDMILoad(f); - if(VERBOSITY >= 0) dmi.printInfo(); - - if(VERBOSITY >= 0) System.out.println("Saving " + f); - dmi.writeDMI(new FileOutputStream(f), true); - break; - } - case "merge": { - if(argq.size() < 4) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String baseF = argq.pollFirst(), - aF = argq.pollFirst(), - bF = argq.pollFirst(), - mergedF = argq.pollFirst(); - if(VERBOSITY >= 0) System.out.println("Loading " + baseF); - DMI base = doDMILoad(baseF); - if(VERBOSITY >= 0) base.printInfo(); - - if(VERBOSITY >= 0) System.out.println("Loading " + aF); - DMI aDMI = doDMILoad(aF); - if(VERBOSITY >= 0) aDMI.printInfo(); - - if(VERBOSITY >= 0) System.out.println("Loading " + bF); - DMI bDMI = doDMILoad(bF); - if(VERBOSITY >= 0) bDMI.printInfo(); - - DMIDiff aDiff = new DMIDiff(base, aDMI); - DMIDiff bDiff = new DMIDiff(base, bDMI); - DMIDiff mergedDiff = new DMIDiff(); - DMI conflictDMI = new DMI(32, 32); - - Set cf = aDiff.mergeDiff(bDiff, conflictDMI, mergedDiff, aF, bF); - - mergedDiff.applyToDMI(base); - - base.writeDMI(new FileOutputStream(mergedF)); - - if(!cf.isEmpty()) { - if(VERBOSITY >= 0) for(String s: cf) { - System.out.println(s); - } - conflictDMI.writeDMI(new FileOutputStream(mergedF + ".conflict.dmi"), true); - System.out.println("Add/modify conflicts placed in '" + mergedF + ".conflict.dmi'"); - System.exit(1); // Git expects non-zero on merge conflict - } else { - System.out.println("No conflicts"); - System.exit(0); - } - break; - } - case "extract": { - if(argq.size() < 3) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String file = argq.pollFirst(), - state = argq.pollFirst(), - outFile = argq.pollFirst(); - - DMI dmi = doDMILoad(file); - if(VERBOSITY >= 0) dmi.printInfo(); - - IconState is = dmi.getIconState(state); - if(is == null) { - System.out.println("icon_state '"+state+"' does not exist!"); - return; - } - // minDir, Maxdir, minFrame, Maxframe - int mDir=0, Mdir=is.dirs-1; - int mFrame=0, Mframe=is.frames-1; - - while(argq.size() > 1) { - String arg = argq.pollFirst(); - - switch(arg) { - case "d": - case "dir": - case "dirs": - case "direction": - case "directions": - String dString = argq.pollFirst(); - if(dString.contains("-")) { - String[] splitD = dString.split("-"); - if(splitD.length == 2) { - mDir = parseDir(splitD[0], is); - Mdir = parseDir(splitD[1], is); - } else { - System.out.println("Illegal dir string: '" + dString + "'!"); - return; - } - } else { - mDir = parseDir(dString, is); - Mdir = mDir; - } - // Invalid value check, warnings are printed in parseDir() - if(mDir == -1 || Mdir == -1) return; - if(Mdir < mDir) { - System.out.println("Maximum dir greater than minimum dir!"); - System.out.println("Textual direction order is S, N, E, W, SE, SW, NE, NW increasing 0 (S) to 7 (NW)"); - return; - } - break; - case "f": - case "frame": - case "frames": - String fString = argq.pollFirst(); - if(fString.contains("-")) { - String[] splitF = fString.split("-"); - if(splitF.length == 2) { - mFrame = parseFrame(splitF[0], is); - Mframe = parseFrame(splitF[1], is); - } else { - System.out.println("Illegal frame string: '" + fString + "'!"); - return; - } - } else { - mFrame = parseFrame(fString, is); - Mframe = mFrame; - } - // Invalid value check, warnings are printed in parseFrame() - if(mFrame == -1 || Mframe == -1) return; - if(Mframe < mFrame) { - System.out.println("Maximum frame greater than minimum frame!"); - return; - } - break; - default: - System.out.println("Unknown argument '" + arg + "' detected, ignoring."); - } - } - if(!argq.isEmpty()) { - System.out.println("Extra argument '" + argq.pollFirst() + "' detected, ignoring."); - } - is.dumpToPNG(new FileOutputStream(outFile), mDir, Mdir, mFrame, Mframe); - break; - } - case "import": { - if(argq.size() < 3) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String dmiFile = argq.pollFirst(), - stateName = argq.pollFirst(), - pngFile = argq.pollFirst(); - - boolean noDup = false; - boolean rewind = false; - int loop = 0; - boolean movement = false; - String hotspot = null; - float[] delays = null; - String replaceDir = null; - String replaceFrame = null; - while(!argq.isEmpty()) { - String s = argq.pollFirst(); - switch(s.toLowerCase()) { - case "nodup": - case "nd": - case "n": - noDup = true; - break; - case "rewind": - case "rw": - case "r": - rewind = true; - break; - case "loop": - case "lp": - case "l": - loop = -1; - break; - case "loopn": - case "lpn": - case "ln": - if(!argq.isEmpty()) { - String loopTimes = argq.pollFirst(); - try { - loop = Integer.parseInt(loopTimes); - } catch(NumberFormatException nfe) { - System.out.println("Illegal number '" + loopTimes + "' as argument to '" + s + "'!"); - return; - } - } else { - System.out.println("Argument '" + s + "' requires a numeric argument following it!"); - return; - } - break; - case "movement": - case "move": - case "mov": - case "m": - movement = true; - break; - case "delays": - case "delay": - case "del": - case "d": - if(!argq.isEmpty()) { - String delaysString = argq.pollFirst(); - String[] delaysSplit = delaysString.split(","); - delays = new float[delaysSplit.length]; - for(int i=0; i= 0) System.out.println("Loading " + dmiFile); - DMI toImportTo = doDMILoad(dmiFile); - if(VERBOSITY >= 0) toImportTo.printInfo(); - IconState is = IconState.importFromPNG(toImportTo, new FileInputStream(pngFile), stateName, delays, rewind, loop, hotspot, movement); - - //image insertion - if(replaceDir != null || replaceFrame != null) { - - IconState targetIs = toImportTo.getIconState(stateName); - if(targetIs == null) { - System.out.println("'direction' or 'frame' specified and no icon state '" + stateName + "' found, aborting!"); - return; - } - if(is.images.length == 0) { - System.out.println("'direction' or 'frame' specified and imported is empty, aborting!"); - return; - } - - if(!noDup) targetIs = targetIs.clone(); - - int dirToReplace, frameToReplace; - if(replaceDir != null && replaceFrame != null) { - frameToReplace = parseFrame(replaceFrame, targetIs); - dirToReplace = parseDir(replaceDir, targetIs); - targetIs.insertImage(dirToReplace, frameToReplace, is.images[0]); - } - else if(replaceDir != null) { - dirToReplace = parseDir(replaceDir, targetIs); - targetIs.insertDir(dirToReplace, is.images); - } - else if(replaceFrame != null) { - frameToReplace = parseFrame(replaceFrame, targetIs); - targetIs.insertFrame(frameToReplace, is.images); - } - - if(!noDup) toImportTo.addIconState(null, targetIs); - } - else { - if(noDup) { - if(!toImportTo.setIconState(is)) { - toImportTo.addIconState(null, is); - } - } else { - toImportTo.addIconState(null, is); - } - } - - if(VERBOSITY >= 0) toImportTo.printInfo(); - - if(VERBOSITY >= 0) System.out.println("Saving " + dmiFile); - toImportTo.writeDMI(new FileOutputStream(dmiFile)); - break; - } - case "verify": { - if(argq.size() < 1) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String vF = argq.pollFirst(); - if(VERBOSITY >= 0) System.out.println("Loading " + vF); - DMI v = doDMILoad(vF); - if(VERBOSITY >= 0) v.printInfo(); - break; - } - case "info": { - if(argq.size() < 1) { - System.out.println("Insufficient arguments for command!"); - System.out.println(helpStr); - return; - } - String infoFile = argq.pollFirst(); - if(VERBOSITY >= 0) System.out.println("Loading " + infoFile); - DMI info = doDMILoad(infoFile); - info.printInfo(); - info.printStateList(); - break; - } - case "version": - System.out.println(VERSION); - return; - default: - System.out.println("Command '" + op + "' not found!"); - case "help": - System.out.println(helpStr); - break; - } - } - - static int parseDir(String s, IconState is) { - try { - int i = Integer.parseInt(s); - if(0 <= i && i < is.dirs) { - return i; - } else { - System.out.println("Direction not in valid range [0, "+(is.dirs-1)+"]!"); - return -1; - } - } catch(NumberFormatException nfe) { - for(int q=0; q