From 31050c88931719fef042b2b895fa96acade79f18 Mon Sep 17 00:00:00 2001 From: Rik Veenboer Date: Wed, 26 Nov 2014 22:27:44 +0000 Subject: [PATCH] Migrate to buildable gradle project * add gradle wrapper * move source files to gradle project layout * use SetWindowLongPtr instead of SetWindowLong * add static library files for Gdi32 * migrate to use jlibloader 0.2 * move auxiliary files to project root * remove obsolete files --- .gitignore | 7 + JIntellitype.dll | Bin 30208 -> 0 bytes JIntellitype64.dll | Bin 468704 -> 0 bytes build.gradle | 160 +++++++++ src/changes/changes.xml => changes.xml | 152 ++++---- gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 51017 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 164 +++++++++ gradlew.bat | 90 +++++ lib/windows_amd64/Gdi32.Lib | Bin 0 -> 103408 bytes lib/windows_i386/Gdi32.Lib | Bin 0 -> 111748 bytes maven-gpg.txt | 1 - pom.xml | 340 ------------------ {src/site => site}/fml/faq.fml | 260 +++++++------- {src/site => site}/resources/default.aspx | 0 {src/site => site}/resources/favicon.ico | Bin .../resources/images/devc-jni.jpg | Bin {src/site => site}/resources/images/duke.gif | Bin {src/site => site}/resources/images/duke.ico | Bin .../resources/images/duke_up.ico | Bin .../resources/images/jintellitype-banner.png | Bin .../images/jintellitype-banner.pspimage | Bin .../resources/images/jintellitype-logo.png | Bin .../images/jintellitype-logo.pspimage | Bin .../resources/images/windows.png | Bin {src/site => site}/site.xml | 0 {src/site => site}/xdoc/contacts.xml | 62 ++-- {src/site => site}/xdoc/dev-cpp.xml | 72 ++-- {src/site => site}/xdoc/index.xml | 270 +++++++------- {src/site => site}/xdoc/quick-start.xml | 192 +++++----- src/assembly/descriptor.xml | 35 -- src/main/cpp/JIntellitype.cpp | 2 +- src/main/cpp/JIntellitype.dev | 149 -------- src/main/cpp/JIntellitype.layout | 76 ---- src/main/cpp/JIntellitypeHandler.cpp | 6 +- src/main/cpp/JIntellitype_private.rc | 35 -- src/main/cpp/Makefile.win | 46 --- .../com_melloware_jintellitype_JIntellitype.h | 53 --- .../{cpp => headers}/JIntellitypeHandler.h | 186 +++++----- .../{cpp => headers}/JIntellitypeThread.h | 110 +++--- .../{cpp => headers}/JIntellitype_private.h | 46 +-- src/main/{cpp => headers}/StdAfx.h | 48 +-- .../melloware/jintellitype/JIntellitype.java | 33 +- src/test/resources/log4j.properties | 29 -- 44 files changed, 1135 insertions(+), 1495 deletions(-) create mode 100644 .gitignore delete mode 100644 JIntellitype.dll delete mode 100644 JIntellitype64.dll create mode 100644 build.gradle rename src/changes/changes.xml => changes.xml (98%) create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100644 gradlew create mode 100644 gradlew.bat create mode 100644 lib/windows_amd64/Gdi32.Lib create mode 100644 lib/windows_i386/Gdi32.Lib delete mode 100644 maven-gpg.txt delete mode 100644 pom.xml rename {src/site => site}/fml/faq.fml (97%) rename {src/site => site}/resources/default.aspx (100%) rename {src/site => site}/resources/favicon.ico (100%) rename {src/site => site}/resources/images/devc-jni.jpg (100%) rename {src/site => site}/resources/images/duke.gif (100%) rename {src/site => site}/resources/images/duke.ico (100%) rename {src/site => site}/resources/images/duke_up.ico (100%) rename {src/site => site}/resources/images/jintellitype-banner.png (100%) rename {src/site => site}/resources/images/jintellitype-banner.pspimage (100%) rename {src/site => site}/resources/images/jintellitype-logo.png (100%) rename {src/site => site}/resources/images/jintellitype-logo.pspimage (100%) rename {src/site => site}/resources/images/windows.png (100%) rename {src/site => site}/site.xml (100%) rename {src/site => site}/xdoc/contacts.xml (96%) rename {src/site => site}/xdoc/dev-cpp.xml (96%) rename {src/site => site}/xdoc/index.xml (98%) rename {src/site => site}/xdoc/quick-start.xml (97%) delete mode 100644 src/assembly/descriptor.xml delete mode 100644 src/main/cpp/JIntellitype.dev delete mode 100644 src/main/cpp/JIntellitype.layout delete mode 100644 src/main/cpp/JIntellitype_private.rc delete mode 100644 src/main/cpp/Makefile.win delete mode 100644 src/main/cpp/com_melloware_jintellitype_JIntellitype.h rename src/main/{cpp => headers}/JIntellitypeHandler.h (96%) rename src/main/{cpp => headers}/JIntellitypeThread.h (95%) rename src/main/{cpp => headers}/JIntellitype_private.h (96%) rename src/main/{cpp => headers}/StdAfx.h (96%) delete mode 100644 src/test/resources/log4j.properties diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e323f3e --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +bin +build +.gradle +.classpath +.project +.maven +.settings \ No newline at end of file diff --git a/JIntellitype.dll b/JIntellitype.dll deleted file mode 100644 index 839236b25240f69e8ae6822cfd8abc13b6b8b178..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30208 zcmeHw4}4VBo$sAwfI$Xkl%P>T2aIk|z?ozc5;6%P$w0saBVho=2!RZe8j>`*BVdUJ zCsT9ZWo&AptFN{i(O0&zE$vba7f`#a~}$z;H` z+V^>Hcb}st_nv>h^ZR#x=XZYR%uswsix4jef*vUx7KAoD>66R;{^dW7sGf4|ktxE# ziLcIV(-plsbLHmBdP{9x&E0k7TPz#PtE+27%Lccl&QoovthN-~T58!+Q{kRBdGaMm zD(DiYAQb5g!s82kOSIAYg(=rf(#2&6%TZE?l!s(i(|SAwrGn+-INmyx5dQ3AMh=-? zy^hf(2o~O#IuHze*rQhv8mLphAS8{)b4U={i4hlkbV8xwg2KPMV4mpSCIX6Bj6Z}B z(HbEF@A$08|MM!!#d5soB2j?=nuQfeQJ-8v2+XVF4R?)0MJ*E1v=S-mlM68OHq_Ts zQSKuAX{5IcKaB*>&EYW~fmaOP9b?<(61+;@j`6S`^~9_7NKv0$hF^W%MwBrggV&7K z%~6f;n#@6uGDyZG#hroDV`xTgb|19`e8Z;Q0pC$^tvpR=R4RPOMW;N&jJMF_mgtW+ zq|bb_?n*h{7Z5)V_wv@Pus-A$ZxEz}BxT<+L9iW{7@(j&iAYhJQ05DJ%o=#lV%sol zKje3xU3=HMvZF?U@@U_vwcpDy35ZoelnBCJLPvQXm@A9%XW)i#INZXK^xrG^+y8+Y z{SElp!peAHBV`kK4Zkx>0kH-Um2-Ft3P!-P1qRlk#D9nYtMFY%2n*?5?_lC#>MuJD z(n|2OC`m8rlN3KX_jpHiR|YzHH`n1v`y*QWBD7!0+m})M&L{>$eq{r{26<{3@)&|M zAehSxN-&q%uV60WD3o=!s0hA9*{{$Z+L9!f8RTN4oUeyijdI!fo=*S48wj3!sXw1I zMk+|shaahm2O~=Lw!q;7mnjwAL82o8qP{c9hz4eGfl;P0^@+(4$Y3Iar(((RE0c5e zz#H;**?LH0{hn^1;gA~)@)Cp00YPcO((np1)KnT)`7ha%Y(2IBMlxdD0zRJdZ8ne@ z$gkSj@QMy>@?0)Ed%Yv$w!Ril@(Hy{g-Q?lE1OwsJ-u$>uNQ)(N~;Fd^AmZiLC!&0 zcy)p;;2qR!N~;%S=Lz5o?vUpH2dvw`?a&#y?1b;6XqKiYDfhv0(=%=gxOuB_sjo-6 z)oAjiqE&DS6R5n-Ag7{9cvS*GYs{;Ic%@+gk|%+`dYZN2i2#4@bAXQ?bSagdL1}mi zM0bM5x?uu}-at`{3%q)_Y_A2X3L=k7lauHzAWcigbMGAdiPpZB7RbljV2lU3PQzX+ zs>|A7v;~@-Y#N~6?>y@rTq8A{_csKjva^zBL~`~Aoqa>sV>&rc_1#I2GfC4hP27s) zNK)2hVn#W;fM8hm07Zi&f*zoGD;7VHOBO&=J|g2!+V*739>zY;ZP^KD-KpOQ6MbKIk+P5^~uH z;Q`tP%fcHnnEVF~vdhQ~8#8MAAPP(^1IeHWwxk&RrrSPWXnU^Rj;CC~&R{5_JuD10U) zGHp=g+t$dd^rT-fQ?FxbkryM!rs*5Vv89Qr>gamQ<@KKd-)qO zJC%$h771dRviy^9IAqdR$n~)De8FUut*C^FIs(=Shsg(EZi(ugDV?k_xd^Zx@NY)> zgYjSnvF3DJ(KG0L1<&8n=`H9y z%O8XMae_bk=pngIk@Z~8G2Y}0c*b)qYysxR%#kNyQC^vpgj`WlGMu7jK1Km4EGldmT%EBez^>C9;5ahbi+!@mYVZD0|&FA3gpj@#qR|a!=;fr zr9y^Myo#)H_AGFM+k6CIgy&VH^cavy;PNP(E=s>#X1oBSat$K`(K0X#Lr3V*_%)aC zaS=Wxm|X@bf=`8t51Tm8LrrP+M7A~G2J2KxwT;18c@REe%`N1)8|6ImPz>@i0~0*) zjnwKxLI@n|N?2Pq(Bz2l3;vD9mEV8NBn421p>zUz(u!o{LWBM)f95L_O<%4S+&|)8 zBOja1huE<_7#p1!KfHs<K=?|sBrc|;W@>9T?1 z017M#$#NhE6SJiyeEpi!N<~Wx3fU)o{hcxSrkH$HOujZIKNyoYzC9NHnV5PdCVwg> z-yf4d8tn_@#N-oV@7a7TotsO!&=9@9#^2A3*>9|te!a>z3@fO&os^tIW5<)7L(RYO zc1|!IGUuXF>h<U{5(ZKUdqr93HkAgOY1V4Oj4Zjf|oX zy~k8|gQi2jmHIfyAV8k>etzxN>BF75;uURB*Rb><#tKHqJ20Y@0U+Kk0~?sz1I%wn zNpmM{P2a-ImR=W^5LlCU#JIHr0f9!WLL7>GskcLqXqTDl!EUp7zwV=^liPNXb;P1@ zR_cyS?@nUVqIhrrdD-me_B^&l3&AsleyW_9F9@cWkckVm`dvd(xAGM2+ws;BYB4>> zDw_SSK~(&PRSZfU10qP&oeMR}mxUTf{S%Uhbj%ijM5gylK3_I|Qp(ZO|>{nY~@pC3u<;Her#ckA{kXiE~g5P=$UO zEicH2D}!0;G#$!KfSx;~ju&ZZ_MV>L{WMOT`@j@m&x>UK#aW6!9p#_K^Xydbr}`Hu z_T~9wBpzh?*<120KsGS@4Y}0dhrF;a{)BKvl%mT_n>Lk`el0#m_8*FIOx98K;!UO> zP-Qs|Tnd*Mny}M_R>^SmhG4Sw%%7CU(>g?)ATx?MP>I=g94#+FOV&V|K)TX9sw=Vb zgY=AYF4mAiEIYHi{cFN(eiFz&<=f{;P(xBDG;x+Rq`U=b_=^Xnb4n3Z0^{_tg~r=u zWDLjC7U1&?{Pa5&gnV}nwu3X0yIpb~^gDM4o%?w_=0HD-$Fv>35ep7h;g|n`)F$yT z`5hF!@NdHi-uJEEfW_Nj&`Enp2_WB5+N?hx0%`;a-OoC1UTjFIl`hBtqAG&k^%CC3bZIZOfV(idb|VjFRSpBet0MS zWt5n9ZO14k-){Upj3l%%9C{=l$6+nXhMh(P#@RafX`HF45Jm6+u$SNY5s{WgR8BnV zNtb=Z3waNNjA%D6gn)UgBn8fGTMtNUx{6E}D`g%&6-_`9ap;(DH5v=Ye5>eTYWfrC#jeV?2HB8> z{B_CI!|T2yzHkj2m)^ky}2w zBuUOie4&|$m0STrHvxl_{xPzfb+T(0x4hy!v_msNd61#X-|yw`V1Z^B0HPxq_^WmT z**xH(Y`Fr+AfDO=C`6>}YUHNa8z|vQZ3`&-n0k6s98 z8i?%3`2pKaXOREvY)8;#W@}3ThnoTMZnXtYFyZIvlS04M++2(akiMBD)OM`t(JMNW zm(kns3Z{Rzn1F`rv4N5X3&{QL(Xv*|V2wfl1_lI$0E`hSY4 zkBr9}V4P-kyeF~cz2n01&_02j3XE#Z>=iG^*`vHdPuptfvyufj8k#ZgdD0uiCZs-s z5IIlg=Vwv-87v>~j@{odd@1U{B0OMVGYJGPDT_CJL3@Z)li!uFq|x+8=wl6tpX48v z8E!||9&3Q{lKFU0m4V+4U5q|<{#9mVhhN;LVE;1&84>}bn1#F8s=wv}%`BI1( zr%H$po0*w8OZD7+GODLn6x4JM0-^r#-jVSh><|>bLx}fwB}u&(>Ly|D7M3Llc*KLk7y$A^<#mG*0|L>TQ0bW5m#STGw3su{a+4h(C+JZEW~h5XZ|` z=z6h6B}|axWz0!BKt(Jvf$gk_yP%ThQao%?_%@4oB>w(Z)-m4Ot)ornQ81Ck7)ZX1 zwN%Q>2o67sQQ{bRN5~sDH5Fq@hWfPlUm{~;VwT53fxxmPFcYj4Q*m@m05H1J#XU8X zl!|>pFyBblfx^mVXL0%nA+WP##EV&%>8#6ld6y$}(wT1vonZRM>}Ljz=S;wXAsa7| zjh957Xd{0+@0TH6%fgsuTo72TH#I*(Ty`1#`l(q?%cyclbjUvjiL5euI7`pWcWhwK6`4RW1Xa(2Pz`Q#W)7zn@CAk{&EEt$oM zrlv0JLdi8P?t=8$6^9}=rpb3N7=Fz85*Fbu_)*LJMZIRp)s`m}KW%DSjyf&A6m)h2 zE@JFYvswBI%iN~NxedJqo#a^yq>PfMkL#lt?|oU<)FV!mixcHc-H43NiMkGGt!FaS z^m9`ao!EHa`LpbLT8<-^s2l8y=4+A4SIj~lBai4Tu+V92?Ufr&G&`S@odE=WC%)+o zkH?N#T4V5r;~-6`Y@Y$U=MY@N#)g-$VSN@v$*zE$f}2=Ax_TfN2W00fva4HKga8#> z`{$%fo1HI-GjOp48^5mMJOg&IHQ-?Mdf;u?rx&f^;x_M=rw!hQwy<~|VNh!xI1YO$ z4SU~(+yUegg3be!Q`w=# z7Z1o~`)z$NBc_L6N3FNvK>YoQT(!E1;l&4}I4~N6u^`rd8s})7RDwG?NrdB3pm;T2 zNFGaZlVRV$qu?avY$U2ltg3rp3ZAroBE(D&@5M;I@B=%&4g2HozhW3@nwrX3%dX)? z1_T{wJ3|)~T-^ZDd>aYB7<2uSv2)#d0Hj6m|4uGC#oWh}i}%kgK0rj7zOxiiKp6H= zq;f%^fEkd>O_yumz-cVAEkv>Nm5F)!f#b+}!}0fD`bm(uCf>|-Do(rs7MMZ?52BPI zH6;eA{R1~u`w{)M8vpi2v zYCZ50VZ!XnzfhavKyVQ^El;ZzEchjUn^_7A;&hmR6mp^s2A$ABN$DsPhd30#vq;YU z1C0<7fn+^RP5;6qmLTh3cv$b^>1?^7!z!GHQ6vMC*~ohz7xRqu}$$qgWiPK>}I*zgm?FQU?QLKCxYbbOO9fi!rDVIP|IntXI=o9?L9GAF^* zvwa9>t18Qq6Ax zcW=WPI5V%&(9TojW=w5tcul|}(En%2c}k1Vtv33Odv22fZG!ANtp$sp$s<#&v=jW#0@y=RV)Cx2s5VO48ZY@ z7{smKa|W@FbP-Zg3b1#=+PeX$5wj*P(Zjtm`FhcHjD3Tj`G8)4g~dQ?rC#!jh#jV; zWZ(dboo5EF!5gz;l~m+BF`R3N8=$yMZ~`$Hmk>#{8NLJLCtbL|pv!*bYqGG2JVE+Q zU3GC+f*{BxBkFo97oKPLA=s*`dy~1#SUKtF(~QF;=8QnFedG&3wb3s1h*OD%d~TdBkQmO%e`i5U}MNw zU`D8>27p7)jJ?0h_S<)k?$=}U+Wv@|kf;aVx%hsK1yNA{PmsyQ_H$aj6jLABU$F+* zUr|hx_T!Bh=py@Z;8zAGDEB;F%Khu{mjoVvc_;_i^Z3g)1O&8rip!w<2Jt$&VhO(q z*gp#;Q;wmCt1XWwv<@K*gA*3i%S_{<_Z#3(7+{VQ)^y(v`Brm>*8XHndwCkc!Y%1y z16GDhV9UnZQ+XQojjE3l7QZjZ_~k@c$Ds3<^lrT#!2$mo3ugT!Y`SSvN_P%v>v&wv zKZ?A}f{eIHY=I*sWE$8y%5U_d!9EsYZKn{X zvyFm+C_4ifva>B}_X5cS|JDO6z~{N!*0Zz0AV5;BCBS^^RF!S}bmE*vZz$eRuf6xI zJcBhp>Dht1z%U>?wJ_XjtnO-i<^#Oh-*I~4#Bl^@XGbmmO2zG=4z~V-Gs1eM;-!*Y zl;TK5199SV;FreW55r4`(yBbv8f;92JHf0l=dD)$ES0l!2X_A$6G@9Vnm{*N0aRG| z72=6e+4KQzS@@geVdwJb&g1fEn?$@cWD{j|%d=|(N=5yWxs>ZrCPFeAPgj`^6}PuR zQ^IcsW-@N5HDXc>aql4v9Wt@~qEbTQ+5@Uo$=ztgXrmrTS!Yb&Wz=`i7tsAG0;ExN z=O~zdV?LlCq#(jOzHGpPK`*ce%$|g&HRD!>cO)!czn928BIJV=>e4G=3c&wm;h4SV z^-4ugXL#CXw2vv&{6BUdelzaCUp!u2z?pq{0b@2XqY&Q`2s+yvF|a(D27vBet#Zf6 zWHC1Itg1#UVTu{hO1Ol3an6eg0C?ePEhvy^uW%5dSXR=A5^NnP>ueA0{Q_=2K(=L6 zsfOMQhc*5AVtQ6`dIV>Lo^80U?ad}aG_u4srd<@j7>oJA2gtPWZtqH{b09hWm zVkt7C!WZ6_tjT8vlg~->L z=Lcv4VuV(@Ql++I_arqe{xIOdAZSG!1!X50XlEO+yOsW`YWf zHs%u}Fb!A1crmNBmuMTf4iLdUZ8wM&0`_G;O=70g($UZh(Gy6M|C%q<=L#u2p1sL)MF~K4LPy0ahtp0~vz7gb28)Tm@odMJbmi_>ON&4KLT{Nu>#y zpNZq7Z<(cQD*ABi^ecr;&M{aBen!grvRG4*+#m&1#(RWnQD zLmd=PU~jK0UD#8T{zEsDjOLFDuK6=Fo;n~oOWA;xfe0j!`U=`}q*huW=h%}kX zXwW1!=oI4rh2y;+nJSeSyEqE-TT-QJze=V+U_gzfRYQ zqxnVnwD!{dJkO&zey42E`6NAP={tdnpz~>7x{sH(xAw8p{k-%5FAcPwVxw{?&`Pnez?H-xuM5_bBy-!*ML_{4Zf>yWPi_LARq0^JVauDpY} zOKM?ix*ai$^SC(28XZQl@bR<3eEs^hIP66gB0h$prAkF>FSIEbPo3pyC+Iyt8Sgk% zNNBaL2X3Xf3~#5G{OPUzsFzAD!F*bE!czVmd71-Ntr@Ig1{0u^Z^wGnH?y04-!#dh z>(MW2Zo07$9hPnXBjX{zOT)OvPyZRK_>BO@ABkOY;=EyJ@|-=s9RQ+os8Qum(pwgdj z*h@P!O$BflF$2vq`=oQ8pND>~$bb`NQ22aJkQt0oH!c}0!bvOb8}jFn(dvSM)ciFm z--=)xKh_=V$wg{L=NI2k;RLa4gn74oBwxT^Zx=7~4STK~tIv=S331el%lURJ%a_Wf zR;*yBN6Y>B8HASuLZ z{m6R250td{%rrKuj^oRTdH4p%wruwBtdjGRr3un~$zy!)7UdpVNmv)wZu=W!@liq; zF{)l{8(S~mF-LVIaO`%ByP`lEQYP7xGbdfkOq85Ehsv=ycr8S_5eWM5VS@{7@)A)eYX#2^Sc)4;l z=;8I$TRa+54>V!6VsP|4!O@~&!lz@`55moi-F}%|@SveH2Hpkso9$01wuD6(hIFR^ zI~2Cli`^P@rc!or`vYy>jdIBxiHao+;%c+iP^Nfv*VpOh#?Jn`X=IJ3GxJaHOZNs zHsV%wcN~@rcBBi_Ns1eO!#grTyo6$&Pqkr#j$0Sg*~ydg1U5#o{8Qu6bGXbJu(dNa zb<&I@@tT@nrB{-q$+weUbCYo*?k^j}RrAm!b{;bb+;JWsgS_|LIB~Ix_DM)QfiPyM zt60L87`X4EVozv~7i$RZpS0oBP0%bBo^A9k3x0aG=C95NeAiV!Ko|d%58$tl>MG8f zsqj8cfd}aL38$<84M%rS`mMACYBmI7U?W#Tjlo77l%f%bQ8tLVF-zWN#r|cnTx*4~ zve4Xc4*GFbb(vn?Y>_t@!l#vO+OVPH7gzUJ_>>NHDgTb+SOz`xQ?8}3zY+bIL-(0+ zQ+f%4{)5n!iNtTFD(b}vO>{d7zGvu_&29XI0<;YglVT!kM7agig-rw8d+lV}dJ8!DW`Og_Y6Px-~TtBlj|54F(m zGu!~PGG-$Dt!%3RjTdE^M^=^2t2~CIGlu5CI^xKUnhp-kpzPI=Y!PMWARux9zwrA9 z_?jnF(G%CxNjoRa;`H`hWc^+3Zy2KQSWoA?@nA=VgDd8u+{5RNhd4R`wmZass=<+j z0}en>BHJ|w<+MZ%ksE)~`wk2vZcS(gQhbe;7g}z(MRK22ZIki~+;-$6GDl~RvM8dp zBok2{hJx^r>F1Z0ebU>ZT#FzA z*MHbU{(W-x`wEzv_|+i%bkNa>z58@W5b_c{_&PjBpJY3ZpAVp;Pngks8ctaRDlitf zGmCyc$n!fg1K=z=3EbaBE&E}i_d^}ww}SEHEQFpL>u)l9Y=}7i_ze!6pVBwAU~<_P z>Getv?hr=e2V5&Cyb-~l$3GYYcEQ&KuNhL~dT<%AMQu-)%-DGX8&8e@@H+aQF*`_S z{6t^;ZUu3d`MN{g;ippEK-AU`=IXIC4c?KQUmBK-ot}mrGb%?^vybGjm11>d--!># zlUT408X+GTGFsTMFh-cTl6+_S9yh+1M!(_1)-UEiBQl3g8GZAEQR~6imCoA&J)KO> zfP;M#*NH~~f@AhO>Ot2Y&;zZRGjuWikAnYu4xb{E+pcH(G1Z5P8eoS?Jl!$beH4Ht z%&N!^kMo;fS%Xl?iNr!m?jxAUz8>DXpD+yMl1lvu8WNqq26^Rn{E5H|U;i|kM}NQd zU`)O}CciHxABf2xh{<=yZ87=gm^|%wqVc0(esrGnDmuR{CQr%~T~7g?==}Pa zJZ;#c>uC-|=Shd6^P~{bc`+tW@*J&){K^LA|5CLkYP>HI_SBF2kC$+1YCn0w<*E;V zcLWlH&XO9Cew!1Nibjgu;X`@;)X`Q!2n&TI-@I(;XvVp1qq|nDtf{7c(G`}h<@FZ& z8PLk=O0lxMs`5T}1^q&3t-G#j`#ho4Q@v=bxEMbd>gFRZ6*iYwS5&#{gyf~OR|z%M zg*D40;M{YVKKGSzS@HRro6O=GS2F(K6%PsXZgk>|vP>bhj%*E4s zol>zI=@}$?Z$x@1CjB$=yO6Z{sO}fM&MjJ+wu1ll%*?j1@aP3(MGELUCkgdRg%OF~SK@g9 zcAMUJN4=lGyIyT`ChC18>RpdM)W$(Dk?5I(wA^N0w{GLMZRHy(@3qk-Mi&W0Vox1)(zzq4B<-5WaLvR?~a8Hy zACN3>2*PTl?;>?0#T^%fOr$!bXOU?1I3Zrp3*+!}!xQjR!V`sM<@c7agHc`=S%lU_ zFGB00@xtWP)|jHo4Rz&p+yBn)xfx#)K>Z3&b#-O+-Cwa=t}W%u^~8Fku8&`ePmyl9 zDb_DHAXdyRmDS~<`zv<)vK;kPM{xaeBSv*3uCkA&=XXFCNzW1bVu|#gbiD+LbXwD8 zO^5G6`F^DLkVuDbM;g`DXbogD<4cL+0+s!;9IDiG?yD=$SJ#3si|oauLcIL?^Z$wi zoBKyc&UjZ43QpszJyB&XC@Vo(cT`z7%AQ8qNK{$kdxCHRWnc7}{`P2%74HtD5~TG= zwMaXVb|F2EbO5Of=@imgB*Qy`kcebKnuC;qREV?&N&D2|y%A{_(r%>3k@g`SL~2Ls zMmm9{efsf!7Rhi1zyFV9M=C^GgR~iG2hwh&eMs#{eMo~y=aI~yKM6_uOb3qI=f4we z$H-$Z6>B!$bL)n0xHpPKqfS^?ew`a@L8*I7dF|$!IycJhP|H?sMpXsm zAUL;Gids$(ekLr&)`$Z*HD*U32>CjUR|JpLSyxw6CkVGvzPP5sQ|0D+Il%u0m6g=h zYy=v0ZvJl>{D+SAhIQ~>?{QZYxHs0hx45f;?MKn&ORFR0^>HiQRqpcoQN-~*xVX|W zV-LoaR=M4^!bsf8s`^FTGyas`7uUJn;KMn32P&(|t2~tdjPd}XKeQX1H!t>nhk<5Ev|e+O`RxM<2G%o^3-pp zy3DvuwRPBiZ^HY+xJ?X+y0|S7pZ&hLE$%J#ZYHD0;_Ah^jazD|-|ebA`1aPh4J;IV zLV%#O$(1*tF_M_< zBGtl5%Jb@?n(Di$iSUN5q^4fgjZsLL_qrA8KALUn8Pe}W%2bC3{ojq0alp|qQc0dM z~R8L>{`t#qI1Dan<*4+#` z@imA>A~(8RhrIP7K0{yOnb)|3iMg2Ef<3N={wQx6}RpK9saRYL-ut^|e z`Xp;(73{z|6Uh!72%`#N7DmWNn=SZfa>~(uJFqE7j;y#K6ysTi|7wJ-D6K=z!k})% zGZ|&{-#pfOY^!;~Mg|i;wF0}9bp z3))88F9Rm`B3XoGz;!8}8(6CfP)_)XfNTNgrT9x65K&6lRpM6-4;Np1`p~P z9>fVcU%F!#D8-j3`FavFh0OM{}OPs3(RKoIZVKYX+x_v>JMMwdKRw13?^+g;d zBsRprUkS+Nz|ajI6aVi~as7M7xRKF$tBNye4AH5{hjN6v3+BuugSiEI$&lHjT$DS+KcrQu;?FfB5qWJ2UU1R>%>I;8EWwN ze=y;n29$hjvGtqQUDl_puUb!8KeAqGn`7HxtFk>}d)&4;Wm@VL_L=tC_IdVV`?u^5 z+9mst{rhP@PMexOC;h&3Z~CtE8S`h)e{B9U^N-K}{rpK8S7bbv@l3|?jNfNW%Df_T zOQtvTJDLA0^VQ553sM&>T(D|E!-C%|7+!Eo){3mRvqD+R9cvsL95s&bJAUAJ((wz& zuw!p_YR-3Z4(Ci-n7we{LMV~24LItpDb_se3hM@Io%KQMBf#|+)}z+r*0+Igob58( zEL(~#&$a@1*V!Hf<~O8HO1~`q%Jkc^)?}^ADtCO#(dhWLpfQ4y5HKI{b=^H*)OAy z5$!kRROb9R=hrzO=S*Gr?809xY^OfC=%a(*WqsJX$NIQcXPau9XS)+P)!Vk&9=83^ z_DkC}Dc7gWNpYm)rz}fxrFM!UM^Yb4eKz&ysi#uU zr2Z*&f_<%hgT2yzA9(+L`;Y8Dvv=5MrCHN*({4$-Elo^oNZXV4OxmHelWAwtjF8FN z^bP5i>2VoTGH%MaC8H|i#~BARUdrgp_&DRw8B;Q^%*@Qp%Ph{^2+7=^DP=yDc_cHC z`BCP~1#1>mE%@ew2NwKv!LbE@Sn#I>ld`VLnw529R!Wv5YiZX1$ohWP53+uobtvnl ztYFq}v;L5EiDR0>;<(9??pWj~a;$XR<@l!K5yvx*e|G#5JpRBjE4w(mG`j~}*5}O6 zS)Jp_Y0P;zXHU+)oTE9v%Nf7$hJ{57Z(oS%CIrB`-&%dP7Tb?(zpw>u!?xKeSt*4n zD^oV69!h-+JP__wm@j0QGp1+E%{ZK)WL%ax5A@%aS(SNT<};aXnV)Aa zTJY3@cNToS;4)B~l9dO&+>lk5^tsS#gfb9J3rLjy%T-=xd#$ z%hByH;)lY8^#c3%pDbk5Yq8J7L$KMJ=b1fFSHlgOYAG{YwUO0x7l~t8|_W@X8SICi+#8KQTyZeHha50VDGYb+h4Kw z+E3W~?5FG__VacjO`m2?OGryho1T`OHU~OnhZYs26{Z!Xtx3BxZGBorS}incTiTAa k#XmISL#OMF(+0~gzX$%)i0niAuRhfAWcOE(UFi(I zdhCSRm(KIdnfsed=3a1xXXXW0Uiq7l=faCUbHi79F1^y@|J8WU6~DRY;vvPwJ<2T5 z4FQMaq9wf@r!}2B)^SW%$DKVKj#kGBoEqalLQ|X$2htL~abLnprI+%rxbGtI z=A+Aj2mUs7bvW?vln1*Bx*QIVNS1YZD}ZD!nUpzB$8XV;qtWRo>&evp{2p^UrdUmN zTH+q3qqNhE11Am%UA!=aB18X;KSYtVgO1$a3`fI^As1Z`x&VnYrsL0c{67!>-^Bl% zpVu)XF=VbRIHwmfydbO(uBVc~><{I*k16+b$DbMb`F6=h!n;_)6FdU11iMG) zm-jj(wN5jZdDyv1onSF8DgnV}D zuRE428F|WS!$i3y{cveT{t>v|*h#rzm7?5L-yyFANVehnmrlx^ewrwEB=o{j0<9d4 z>mR70xj(e~i(iO@s=2t#K)DdETRJIMCF!Udfc)(!cLJ_KT=RZj&|7gTlRoQ)KP4`Q zqX^fz9m}EJ%1VLYHNODv9+a!X^_tGgohmr(xeRb-K#(uT^!?Tgc^C#Gi~iG z@f)J_j|$v<6DCfc6x7y@SG89NHP#Ydq`Uw0E2pC}5o@`AR^)SMWkPeukg%HYT2l8fTexVw7|NDBR$BUoB zCF$yobfRNS0%FL#Rc0>3#TbR8r0c86PGQkv>2MFCwA8f?DXQ-3vz0xN2o=|9t*dF% zRBdZ|Q^Ym)mjFrfRub?uNu#9RyxrkQtx)yiCV(&s76}08&`=%HLQMPeI>K3}M!qOg ztG`*$Th+U=jW3yy-h`z2yU>jB7yzkBS1qdWhuh)SZPMkn?j*89@YE3*-Q_{*3#=PU zC{bf?I&Dr%r_-~P{(b<9>{Medn!9WZQ8~BFqiWZcRcLRh+T~?csun6MSGCuI+C^pF zp!Sjyivx=8np}@wY6GSd(JO`t%IY*jdq>rF8<#h-8Esv-dm#F;5_<&YBmXG~6~?xO z%QJ;8`ENQ+TwWkfZ6PI-aRzE@>$KLStLbg}Kk2lp6DOT`=s-->fmTolIv`VBJF6)^ zDjjKe&OgeS2`nQ2ar%_yFDkJsP}8_-vBP1`S9gnJx44oxdeG?{68m}(i32ArCQf_$4BM`jdxe8wW$_+8EbrWx} zZf==j-P}3Hy1BTKC9i1W-|#*ByXZ0Ep#l*#?uw!7R4uj%DB|g#>%`L*@f6!GF1N5% zRV#s-J&JBtwT2>9n}NsJJ&W0i^J!YHL)zzQp(p3I^zgK+ljOudrTl3YZ5KT*|O1{$mk*|3xZ8={~cVX90Hp_;4I}gPnJCfSh#t%EWsPU z@|$ScChP8|vhCL0^0HRz?k{DuQY`n^vJ&g=;WCeP_heaxb@yzU7kBF77unG;J-%~& z(|zap&X=+<9-;^hmR;tD?D(~MNLZlM=JH}z)&hnaS!6guN9)ro^!jprq6cLRpSIPf zttU|h@D)-gqZcoP)fK(-$$g^Uc9h#5jJs}Ry47(vGb{39)ij9$FsR7IAh-1b*?K!# zZ+CJ!`5cwjqF$2f7_6;20C zw-x}hNJlLSm&Kk_SS7Nk)uG&y*s!*VKcU|_Y|6!a$~~|P@#1s922eeL+^_)s>8_l% z(WN)-$CPl3XVxxteWsBAl5Dt`{(YA|)T#*ti}+3Mk!tf}r$uT$q2jY?0k-wdIPk zs$SpjTSb;yEhbqmTV@8!p!$;pFOt2miIkclmkFuKOFK@aWpxE|FPd-U@eu7 z7drso=uPc8RA2$XcU~$1Plw?x-X1{yWaQUDyTz!n+6i+fFnAYpsq`ic%F7ecL^uIH zmD@_ZcxQrAg4UCPdm3%$3hP>KT|KN|ZY)aB{dtQc2yGy3UixXuOBiAhPtho;L<1ra%7q#QX56j#JkPjOZ zcmJKwqWc0eiDu3gBAOqqIo)D0Ei@c(-ybDtTq^4sM@l(vMb3-N(I?Wp-fQJHWB!pU zY)UzsI$9C<0QP{gsuZ{xZ5a7f4kZ{m^ogY$>&2Z%YoNhJTDi0)D8XSGJeh7lB7cci zjh7%yLL$2WR8}I#NCA=xyRQ`kSePWMNv~9VL-+P1JJ6uOK(IbDl!3~w5+(|OHO3TT z-5Gq)C+Rw-Q@ZkL`0Ys0;IwI=Vq|GpBD*E0jocy8B7t4jo`bOL(TJ>SjaHA`%+V^J z3mGgIA~VAZa=#B*kdNiZK43Ww92T7Byg!TO_E|!naf@ z;RG;!dXB+=@ix(Tral_?(u|=xZDn7epX@N^Y%%b}h2dBdm##zj7E0 zSrN>nZ#I$seVw)emP8KpXz~zI861#5dp;oOPl92B*Cm;u9DS4YmSmHup0?z4ki8Pv zCCrk~5}@MQL4KI*zY;Z)C{j5~feG~xOb|?feK--f!k*b?a^Z#KisejkkV4-8c22L& z7GoE?%+grtV}Kvt65Fe4Hd@hN=5$Dd9#~n+kx7Z2APqgnqjs0FbU2^lePTogLrw); zV!g17Iuo|gbvz!_cwv|Hb~L{p?eGeNP#SM=@=j}@tZZk8ov<5I;O_{7C3Wf!3QxqX z%y0S+^55Ej{!q*Y&8POCzZ&^X=5o7$fIfXY;x{4Cztyl4&TiD=MP2qq`EapV~$bvG3lj9&gTqGNl_AQ z-vTEdh0r1Dvb21)6*ojayo2A4G3#`K6_;7##f?7)o3a&jLJEcLpk3{K^W4ud)5gP^~ZS-Bi=KBpn|zJCyU+hXTl4)pfmn+YSYt7)!Rh;# z6J=4%>rDNtGLd?BRwf>Z_NrnCaEM5ci0-^1B0gbghp)7_9RB7tY4)M#$el0mk)i&GlOJWH|rM#K`7**;7#+O9W&VDVC zQ4QTAJN_G4b3~wWLjWQKHTwqy5OSbuT|>jv_#AM16d}~iRhF-*nWQXl4m}fX2|ryk z7A%MWm<_0_0CZI9smeAm)}v~zm}0MuZV0_^myk^znfl|beEyQV<&2$GFzBj}Lvvkf z&JUH=RS`T%8iS8h9yH+GA!)EEy;Vu^*@BBQ)ceSG zDACY5Z9IheQ|Qn<=ulhesbp8W4BF_T)Iaj$%aA9)A6F{IG2jA?Dbe?UC`PFf&qG<`?vI~!IEEuAy;11ynyO&+ zn(&vFZ6SZ_B8e_R@WT(CgZ6b-mR^sNl`S>rhbv4*JN@y(7U+dR(&p8iuSBmwo()A=`U5O+WlQQVh;*tMRBe8Sqw(40_0an$2O7Wb6SmMd$gfYW zSaed|%miDK_RyDWm_mmp9b7{T3Oh6fhTW%vpCL7Q18@pD)5V#PPTd~lEVLpZMY$Y^^gs-n!Q^(U2VoybqPVchIdl#yj$gZpY!Mp4sM*rqlsYhRLM}-*mYklxP1f>;DREixuKWXx+F9Zjnz*R3xLwIt{kkE-WWufB{kEexxpdEd!jZ!-sTN(NGQ~MP}pkPdis-GG$yJ%w@R&gr&&EJ$*u|RpN zag~_;8FgCo>LJJiY8C-vg=L?`74xb#xUn7kByau2yb?2w1D7}#LIo5fdtieLfkBV#xPHFuzGdp$_VCx>5fOIv5$ zDQ}_3#vgE7uWe^7uE4Y4ncop<0f>wDOd2GT1k<_Uz+3{@gcYy#9}e%h9zXyLUVf42 zFIBIAvYgDC|2mRbHKU2u6&A1$zGZ0v>=Xj4mcWc|0!niVt9DzBlk%xy(%-Z71Vfyx z2S&nOpj4@tkih9*Rt7NA6;R@(xZj^UphWjzhLh}yNFrSVb0?mpUjZJ$-D^KWU~Zl% zn%Oyp`UqDj#05p+ZF;GXD)q5J)$8CMIcp|`2G-0C4X7C#IyT<0sd3Mk`L4=csZ*LT zP#oLW3FFtI&g}CiTA%c%YJ5Ujx%BQTcNy=1!$Q5*g^yD;gW_00!LH(hp_dDW7~0rU zocSdHxpX|k#kA49f!%> z4G0$K)cv%Nai6mitHAVGeei{pDA%&o__!_+V|2|BI*Q8D7BV{SE)$GOU_iVPv*eQW z4%W|UkK?)3-f>oY@tpQd;lJmU_h!p`tn$-y%R7ikPWh5-`D3i|gLBJoBAPknw?oD( zeEM7E|N9k+SoE7*C?wTFAiB?2FmxOeF?==sl%?mu9pyUhR^u6VKcf_^W?6vPx0GIF z9#hOw5}CGcGx5*4ZPXAaBt8ih*#}I2X2y0Y(Z5nNgnTIRiwV19C#Qa&8Go|<+a$&{ z+6@8OXoa2#yOdacv_)^RjSED~e2lFKS6sQN43d$X8Z$4F619Vi+-h_yBDLB z7;u%P591c-VWb;NlfX3;AS*KGr+fo90VdS_T0-S?Zk-Z+iTwjVrE(W$9!hKlAI0nm zG>k7b8WG2_%<%~pPIrEZBHBx)j-u9l)CYVpXT92ajuIUQ6vUW8{I6mc*g_Rhq9-D= za+gW3S07bAV$>idzLrD$%uT}69(1-g3Xb+Cm^57mhZa(E4hf38%ztum!*RSoAy6dy z(HsZl*vhs&nNH)7&ZPD)B$7i=#BS-F1Ge-fbK|bN^IJ+Sw`(7Hz}kFwr~! zZziyzxa-A7@_ExnUAF)%Iv{}F62S2t06ZmZ02=<95+5HlUrgC^r0-)wWz-1kL=R>g zZ{F@wE<7$X@frMG@O<` z4g)OnvWzz{s?^iHf+P772aE#uu^C4Wl*!A&6Xy#XiJ)C{;IrB{hN2wQ3xV zXUFp?49L>3B|h5&bKt=otmX;Qx`r?}p=|bQ+!F{DB3y)L4mp@2R;ZDMC64ew z%rc82!;cSpFu5#>Tys?Sa9`XE9FHYQxy+vGO8-@a9;&9Dhv-Kmnt^D{DKQs7)9h!l zX(KOwGhOz3oMxM~T*gW778qPW1fIaCGvh9q(mP7kWB9zdXoDVhKJ9A>x4j`s+9 zpofBWr3BR@1`wLf`MWt+u9P=dIKvZ6E)-G;4zjHAO_R94J!dZTTjB0z?z_Lce? z|1&?lFg_X~OJ&KOf~4Bb4`X3;=5pfAWFL);B{7r$Xt=E5sS!(JN*?-=~ zz4OCy;4m}1lr-K%cK{Ir+@n7+31){521N5dQ}6?2+A)M+oJB~xGQqglz3R+0LWv5! zLWvkV9tBxUgqEs^j5Kx{p|>MdCx=@otC&(3j4X*Hx?u{PN@T}pDNN-S zG|mbsOfO;Fl;fowUpaHY2>U39Q$kKE(W^;6xcfP@21!cbdvg|(^sy?rsOXikHYJK3 zkB-RRzM%y*qpbO@KXeF8zz7tjeu$}Wr4qdeMAe+CM9=26LhN1)Z{eIp8cnvoXnp4c z0OFO8vc(6JUFkh(*B7bUFH6j=;KHmX-B$uH3Zsm9En1w_#P$%DaMoO|L>ZPr1Tpqc z@(WG~rtx^Xmrr8WDZPp#pjVtNX-G%!Lx7a{B9@Vs__DTA3Xu$)D$$w9!5m3CkIAlQ z03jvbQ}87_PZ-L1f?0*40-u^wLs!?F7P_*gQqZl$-X-`v+Licv(WG=e@&`b&`5(-U zZBU}bKH0Tf4j*2Jg?|B_iNkyZc`sn-c9{3`j%lgeL_+HK7X6olevSw^^xsaCZ1s7J zdBW)qD6xg2Aj8XG6sCb+8In;mkWMve6RbL$r8;F*6>=~(+pMYqIx0F(x#@La2NB_v zl=`AlU!W?NmwD;LiZJ_ia&8HO)mRk_9c9e}A;rQjG8dCLFGN|zYK3jcyv~}bO7teQ zLr*k{t5HvXT&l`5k*edBC=8i{w*LhhGsf|+RH7WOYv2(61J}x3Q4AcL!iS`Ep&tkf z{{k^(XAm4f_!{NHJEiYxG=E~dqr%NL4#RWSzYHA>|Hco&kkgur4k7i{j3yBNNZN6X zsK-)vpoHG1hY8mRk~{}VnRo?bo()HF91S2DPXk9an6y5aFq>gq^W*oED--sR39EBe zsj6SCHl9&O^ZsH5O_Un{C3=(|`6MSsKg_Ws>tOe{!mcv#$6|ntlB-VwJItDofu23= zig7kIvT@Ip&?Sv~>OyA=`v98()68YID`}irjp*_o?g@rh zvCw}Z1E`#8&d`g*Dp1A5hda!7TVaWiZV4#XLx8J5HD|pg!`I6JBvb!dYkcPn$>KwH ze4cXPc!sdt5hGZ0==_mH`3UNZ-IItQ_Ta4G$Kn)OdmJx5x*Ovk2~6u3W85rCe<JzT(5 zd`V|5NC{{cl+Jj_ITroy(UBow&wAGwvZh@%Ne`DxZjy#*_r^eky zE{4I^`Bu_kli=APSoA-H9q|PwJ+&R)I!1U1US*5<89>?ci_B%h-`y3OY*k`Fk(C-z z2^D}JuxFRpnloHXXD>j<>f@_MjE7%7ks=`caxwkT27RTCuLAqbXIV{qDYe>a@A&|b zG#^5$^w(^CW7#H_)mV%EGfyWPz`PC8Y!1Xj z6Bu_lCk3%xvOQ}kM44WgG|2dF57vr7x=#shLg=6hBAuDEFxJP>%VbnUy0~&QJ04BM z5JItehpe8h|kx6*SO~_C2Hcvn8Rt17>V(IMO!$;?owk2nK@*Lol~B>QIKO5 zwr&8EcD*FBr%;K`hwv$p1k$7hS%TSMoz~7MnI%+WewO0|f-l+kF3d^q+x>|(A!m4r z-YwqnDPsH!4psFVitMNPU*mlsPKeGbLA#$HVHLmtWj)RRTGh@f0a_h>*Syx&Vtpgh z+y_eaXx76{t3nrlqvEEqHF$mxQNp|sx$4X!Rr^kT z;}bRZma3UbY%CHZA9fABD|Y2zg>+-;_0{tU0v0=M9QD4msDDQ>NzLt$Ig1*s3^+^% zHCNBhR7kxiE6mSSxHMZqVTCX7EIy3mo- z*&Ux{@ItJ?VJ=0nh}px+eKDKcgSkYCwI0r$64viv+2E{lqhgl|!=UHAE10wF9Oeo?7h%RAA4D`lT84h809)&l)^{}=H;2hB zU_|#-m|BbZeVEP=NaLPKN^~8b8u!dqV#5fHn_|A+1~BbTzzvQcq+d`G+>{DGPP?MP79J zs&`)Zsj7V)(6$rFaF5aiQET~uYLsac^W8{VC zAXNL6s=*DptOPDSw(UH_+yZPXVBBht;btN1;c&Jhv^j^T((_Y zu@?EHco9q0p5^sl2ca?epOy-TG1%=u%J5vH)2CRMkf z>J}*70;S7Vg1Q9{&xD7!wTKV8gKB~2xVv~Sf)vf_%$~o+s@-Af9bBTO2>3uj>TXs4 zBjXb4;yq~;M*s!OD{6eCbDh6;;qY}4?hqL+H;7m}N0exVDAIr;1%<;^P1Lta0$=XG z-)ejeb8Vi97Od?k76^=%O7wzbvBd;+ug|M{eF|Hj#NL!(e89jTh(&D;E@B(YDH(d? zc9uF=8Sk=C{&toph^!Jlimi$*Etnt=EerqqVD_{;nr(Z_e?;3K<09HV(b__Dpf(=> zxj(1Pg|bb}Zu6(mJLqS&y=9M}cRMZzP47yMDnEnA_sTXOvfKPA^w#`uZO>d(64Wn- z1Bcn;-!Mqn`=oXWqTw(%3VpG+OTCmQUuyN2-epq0mR!op8QKROw0u3o_bSmmUOm_L z*z&B8DS_hmRk^9Hd;BUhvbW2Ee%0%h=p=z+FBq2awp2G&m$l=5L~^D6(y)4HSTUc7 z2+(?jThkC6sgRWT%c_iXF+TB)Ux1<2q-vgn#Y$RpR2KEj+c=)-77U@j0&FfI56pF@ z0?M)>6|3S^#(ywE`MD<|fK7A{SWK1dQKEl2R%*IOng@><+XVVT(SZ&2U;G^g3%Y(k zF2VTBLgPUOG^8a+*}6vuC3pLpTD{lWz6NuY(RXFVknqM%wf)2V9c+)yiY)4d?fhui9rMN0JTexz-yajd{2*E-TJD$$`H64kqq{G;i#XamR+&@t?z?@7mi z9k{@KFC}fm*5g5q4^E1#nT4r}jQ^C`o=5tw%h)ru`U~%}XQVyb&CrRpMemG*q)!k9 zPeT~`DFi_5l;|V8?O^fmI-1Byi$6#bGf1|VvG`|;B6Ebr&-5iD`IMF?$OPk?c0jHc z_eyNEXz>d~7DR%1x@gum?i;az3LX9$E(dLJhGC|ZRl0*U>TLxcC3ZCXfSt^cRafyK zWu0LUsL#R4d2iB}qcym#;9PJT(nT|8ivmJi;NIE8sat3Og#|v8tp#$(WbLC-DX8m0 zed800g7JVDJ!iqAG@SyV)O)FML8*i}I0v=npr!pWc*?>eKr5B#JJ=zEiE$BPVg@2& zU6iHknWD9e>0qj_ZGXg44R$ym&dKw1KYX(QoULGFZ-KHjjLAh%FVeo|Cd}p?uAmm| z;|c02-gOA}DaQ?7dkJ(i`GT=QcyC-t)+ZE}8xMko$O?awF@h7}-nCOj??Q0b+zNPY z1%*oNMofXY(@mW@8+*PzBJ}etGA(0L*_J15(xl|7+;_IhEm^`^wu!G9deA1`mhcJR z0+V>{L|jCh`{?_De2HrKnVH6ag8%Y_Fv?t=d6tWmI#z`s^nAAl-0yFm3Jsdo1Rc2f zW9kypaW)IGu;UBQ*oYkZ$c%`JHWeiZ2Z0I&7eU2I^ml*U|9bF$#NTfAUD@o{cC+>v za3G$Q6LGu4egeb>=MMAtq&q_2g<2X|KA=Bu9NGm+e8r;|- z;o_Bk;}p?oUd;ll=JagM>Dih^SngJ0Q$#gy5jJXI&+!=Rsj=z|C05Ia#m{hrl+!B% z@GN^I@fgUN&_LlBNq55RjyhTYfI19rmAwW)RMrM~Cs0-;wgXFvSSF7wEOLZP%{TGH z_#d*uc)JRTp%TCLDb?H`pG7@KWIcEcZ)vg=q>z?+I?Ve!7qx)`JpFoj^|1J&LSQj(mP)eQtgMh2)RF5#4mr`zSID- z|4shL$g$ktXH8Pi#JzdDND!T_tOyrL$PB|`DGk9U%rXn`(u5e-tto(cNwx~;I9Ae8 zX47#n_R5Wr+qc+l9}K;>ajV}?9utHYa|g|9?qqeh*v=+;zEVzBD|6ykKR#bw#rhds z4t~BW4bPFNO}wISWYLh&q>l9MB~2@~iVGc)R&9v+jVKO-qu(#Q+obTh#l(~|@P5eF zF|F0I6|CnC4AaPgsHzlPU_d~gbVpO)b=^t zSWdOpDtuSClG=5J@bn8S*aF;E&fbEBRrT?n4!v7Y`l|p9sPiAyyG7bT@V(G}wi3IM zRrFt#_#)M{;VV*?249_1p3Jn3UMsg zgg$7skH8^=kibP$ti#57aFQ&m*XxRWIyNW^tbS`7t>0qTLF7!}cPj9sw|5AQHq1Ia zXYG3~b^#N=4pI?R4Ue$wt?V)-x*nC(=FeOlb*$<5gc?Q=I7GodT2mBbXkP*kKV)KC zs000PcO!?RY*&U#^ixr)N93B4u8-)rkM4;?Ih)TFo5hDpv8l1d zCew5c=`{W?1L6!N`p_Yrf@sD94aqnoPx8(PYC_=5H2{$vY+gao6@yI+F2aCxi1!@G z*Lo03mRbEd*r_L-6THz~>^Xrpb!J4U+O?_q%ag$0n6%7mVYq)rs$8 zUL=asSvwUgR^p+dBr^Oo?A4bK!fUx}04bM-Q**>JJl@WG4+ z%YJ5?fBRSv`!p^;dHmyvNk50)QL^niyX}La_cktaX2zU@)fvt&Eou2H_8fJh0l$LZ zM3Eerr}G2Nw@_U4zn}B}_`_xQz-)2tgMFo$s`jN1p1;vo#o-@tkCTP*8`FFD?)|>y z*i8c(@e7&Sn&!_-9&Btx)Xu*~jZf~PD*io=gc|vvKppsH=n4xNtbU3Pz+4zb30%Bh z+tGdmt3R`x#rd_84A($wK+N)uRNc^Ha;uo1)u*=Ez z=WYI7#La&l0)0D*$P*dpvrUKvU)p~q`X^CDy6(qIV{trKT9RR@v^L=E6CdSq_Sw<@ zBWJNoH@iw?bN5H%C0YI|OSthikH@bZ438g?_N0TnytgBds!s#|GgacteUX}2kU>@`X%iFrdfA=KJiVhnir3w(^}%!U@Htr9lq*x%PXUKWyc{pr6~ulT?0-E^EZT?&WNA>J zfyf(npH*iOwL*}c`R^U$|Jh*VZZ6f^{5$wyBzTl6Z?f!D$6#l$`cpgD8U1qxzOth8 z^#xea4(lg*rdf&lVKyj9gbNn_;?(&Z-5VbOA7OWdpIA|qYTZj2;P6MSvnhh8(^n%ECkGTK? zb0-1#PvHKVNep7*EFlC;d&aoivH|T=H!{os=P2kc(p)9;@77juf_a zOp$)oQ3#jqL5JELjGpAhNfc5}PSPzV#)3y*subD6#P@aWw;3b-ZgIs>Hma zhz}+NuS$SsjKMXPN^BsLSZz8kOJYcdwDR!nEA!W z9H96!j1bx@D|%N-Pw&FP*_D;S*1%|f3%GiO(X3eFhGSCY+4(X%EB2T7#kMQ@lh@ek#s`?Xgj@t_JW!-B{`6?_%bVp!?qW*ox>e1Wit$zBa{ z%Xs#Pw8jv{G@rpl<)DD}MMU(V3I?!>WLbk8nnhJPA`HasS`zM}n}R{QU)MEfsEoW9#4aazZ;$C;MPgSV(qxjeX>Jh(hJ7Qd)t zosAvqgjpw?Tc=L8eS_8Z7`8nOX$RzoWwg!vVL%(N?=n$|9Y$XwvaUd_{!Up^hzFST zBbu;r5w9By6T zkC!>~Aj)jT%T+(t*0m@jJMIn`{(VbJe(433Ep*J191wH0buoK2S6c^D^Dz2z(!!Ig zrQ^6BeY`L19I6q%WVDSxbMH?n?1By+G~~14cpY@%6lWxH_qaEu+?75FxhvTG69AmL z2LNaf-i2~l4$@M-&Vv^ZW9xCv;iUF<=tPT;))au&MEWJoAK&TvWKdG6eDfMg?{|z~rnpcvO87XT8{IHMNB*Ja`f=Vl&yfXvCs6l{5dg zNbYpM)#NS!@guJGKKseC@s~+OW*>BZX8tN^h!4B{4T0HTa0$jQC`@&jKX;t}W%qw2 z!Hu7RkKKNmZ2yFx-2Per@3jA@?3qVI&-^6%p{YNc{u~+Vj{fajhDyw-*jw7>EW~c} zeP!=n@PYMC%9Fj5Qu%U<6?*au&OXbYkXQBuDu9&!%zk;Ro%pa@UKjH5CtQSll;_5? z_b;!ZhqAnB$sJ`fGv*Gm`lL--eAvmd$su-=1Mz-lRbO-QaHK9Q13SdN#G?@RK~opp=F(S@Qs&L8YNOv87H zEd4yF@*5!)`Q_&W)OxP=&U2@`nj^zAGioP{%NIk(IeK3AenFj-E>A%sS_F+)_Oe}gFi>*?8 z;b=qp>qph^U$4_P)?ukQ^lOX1JSg+$B#opbCKV#RXLJYMIMNnQzl>QEvI}ZV2anjvi{IyReL-4`*=K-pwcI{&f+}S zaEbXiL=}6_7)*RjD6rTpyGy*lh1XYc-iesBNMXtu#g2lUbT*1f!%E?mZ-X;LmRa`2 z+Lxs<*c+}8dd(}8{(YchK~_M=Ubh@S3k$*WT$!Mj$oMzd_f~a+5*5ctbxxumxMi zh~dZSZQRDUuQ=ohytz!2ZbV7gy{`p1TaDwgM3|FM;KzU*4Te8RM@Hr!>dJF`Z2w_#xsZ?vW#!U!Sw-PglZ$x~E#NgMjJo`ziL!?A zQfB{?{l*Akgck18UpNK>AlO+oQs}T93R{t}j3jzaY)Za81MQ5^tWF@%*CB)s+n_8r zN}lJ_iS4{!RNLn*CiDFLNb&y4Uv;ouIt2x1H65`3Y zrdVe@i9??@a`z!#V8Q#!JRJjv2wz^-fKBL(ne6*^G7tV$gE&p10d`@E`Q=)Q6856c zoQ;+98CW^mh4Y2v46kxqFn(#S^S72Um%i9qyhKchs^9Z2d!EkU{2FN)=frDljcsE0=>&@r<8ZJe)jJnLiAQ6XMr z7hgzC1{x0o7lFYtRf{bIdhxb=nqTXhG-42z#_>vn3WgG^Z z-~~x9VF#bXxZ*fG%xqEPI6xPPZ{bBS*v0Lw#sp^2a$#*4Ur@s2KX4B|4FTko2o8lp zUVIMPHg5eZ`;54(!EvP{V3lts2>Prs(a@b0(AZ>*e+AyjSQY9a%dt*;3>Nk>M*U|B z#UUA+VLb)4|5I@r)E;TTB^jG-r5pDr*yb&SBi-&83#^N}d2+iWeG6;hgA31z3izrZ z@Y|y5;q7?I!N7aItwH^Yc6=cUJ#C~6TfNEszA!__N@;>d*tnlM|2|-DSN*jB6DWjE@ogW?jZ>__{C7pSZlt<9ilT!ni?D z@$-c~Zg;sADfp&~66MSW>k)?L!F5Ez++V2LSB4)CLG5_H2HjO2MP;2;hA|n~^Gx*y zf}TRtIs@irHps!8{VU@_g5g%a?~HVR9JKMQjE_+WPoXUA0?b)Wp~sRutv;Q4z#hLL z^w@x9yn;HSOz7syL|x#_!L-g*==mKK3%+ z!(?QFV3TEk3QiD2`VkE(H6qx1EXEr_ zEGjdgggqpC3PK-c)0=QU32H=Y=bh_tbP4rHx-Q|3DA*;`3m;_&ok;+q22Kq@{Qu}x zIL8Q)`+xCL{Y?lOT)+uI7kq*;vX&n%5956DY!zd7PxQWh{uf%qq9F2%B-(sdd9pVW z#QQ`!&m<^&ehTa!^kV`f4g7_M1j}a24p?GIW?Cqz_h5r5+1AZ?SkCq=pAbeuXOdAksQi z$K@sC<)fhKQ7HISNJ}6J1s{hSRKvRlW#?w$rQb4Xv@L%u1I_p?>YK+<(&ELVUl3o! z5Fef}E~R0!a#jm^GdW~$MQw|1J(I@kgd-#%2LVVUix?|9?{d|WZ3oq`vx*4$I zN6*D2=~@WD&=mk*qYiurpHlC3{ZsgR$n^{K!3`*Zm!Es;wPSdf4xJ7CuigULJRQ&T z<5*XE?n>f+T^SZ{r2Ok+3w1(aHd)F7i3wn43af5A3!Sd7#+ec0Ct z@n%IIpp?R`eh9)qf7ZtrLd*Vuj}wXSmPo6y79Y8*eFkOJ>a|Mb5W%`(BLoJpy>-u` zRRu$MCjcGzXqn^JMEJcKR2Fa(fF(; zzb?Qd>JUoSci+AbXvzA|jVQ{SluX1-oxZk2W9T+wgMY(4;v1=(wjj9#+*rL9H-#M-CpM5E5PnDVy(FbBg2G* zlB31QvnvchdiXUY7Um?DFmW{!zkG&-cL#{1EB%VCpsrTjrf$!VSCRj^dn0l%D9f+8 zC0)M zibruk8@@6pDB*`U5_eq+xV-lmXA*$!Y5-WC-aG6y z;y{1Wq3%t@7#$Y zm_UTEoq{x@OJAO6pmOO)bG=6#;^KBLZq4~%s1O1Y?9rXIzelig!RfVeT;@)DhDcPl zNM~#~;J`z}1Za&CJq|f=Cm8nZid*Q6XWH6YjHDP(0m3nVZtX4N0mwRPVK$NeAc4^Z zLD8mKSWKiXMcRUSwJ>~*m{75-3+dr4X!H;~887k0MY~ZLP4K-%n3>Q`qCmPuNQLlC zYyW_%p{m+H3dmkihOhKBS@ySbn|T^iGUHt>d=MO^R(lf*$1X;e03@+PJP!!aWE%b~ z0-@=4<9L@46+{6Wfj!VB!6!Sxv=a;`K)~kQZ5Ra@J=Ukqjm#3{ecDH+Ffb_Fd(%qc z!Qr{t^)I<#QA_%c>@Wr?qtiv`^-R0OsKD9A2A;*7MUJ;mJCHP6+{BVr)|Ki0D zK20fn!IC}Wb6^WUSQ>S#c&>mMJKB_mJzA?deq-fns`Kp)C@ zR(G6J35_#3%1skrPQ*!}u7Ie@9*h_N8Sp!F4BNNPC&l*&bk`&n0sbC#eYuK{G{O#7 zXd8(?R0-DBLkQ?!B%^W_kdLBoU<6=dtPlKZy$B>Jr}QCFD?*G)|QFOStV)rACL`2`a}NsGG2V$!=t;NfJgux#nx;~-vDV9a?R2 zq~t&zkI+l1-@z&EWA($T-w7e~z8=dWV9$o|7pSsCRPl%wZB>-?;7bf8Dn4y#oP3x- z^ITD~4Zu@xGW-jB2lwGhq^91r<}>A-MV&R*jj31IWuzdTwu6F6sId*ty6ZcL56lbB z%!wCwN9CmJ1Elbmc2^Skzb$%n*UQKN0ezFMXK_c%m<0#>8ZX{}B0~VYYBE|$0x`$!lgdcz{fJ+ zOpfb{KfXR#cnbX@pgf%z6ZbnyD>tMLvH2fKl>2pW&j7yNSN-~e?*0ONdbxVd+#dLp zj=%c#xgUuB;@r>TZ{B&7@OB_*m`{k~C^s5kC}27~&-pmfAJL;sloMhnEecS^O2FdU zwHIQlGc~+bo#}4FEk?a3#HFyy;wnMs3$qq41eM{Zm8WNSRi19>166rQdAbE>1IN!T zDb2xuZMp4Mi{;%{fC6W0*FwSZjn3*X=e`S@eg&TF`8npdz`!Rkz@n{SVkUkYoawq) zVB$Uw7rs5dc(_35?OBVjAwsW#pCifCF<@#UlmJsVfT=xj@Or8%;~R(4Sxw{V zV7ivD2nJ%%akYRGDiW~?jF{l)Uj=|Q7UBRP5Pu)LzbX9#*U0Y^1Nm3dD?x#ClvQ|=(x%jtyyzj0vEs-St1y_Jb_7(=K6Lldm65E+I{KAkmOG? z^0c#DcdtV(ByMD+_BGr&!g3c+tJ3Ux5zp9f67G>2TDc+Zegt)O*F!9x2z?Q${R@j< z-6t#0N!Jo4;U`)%&P7KiUGtGf%}TvGS$v(A-^auBr}mz_VjxEvqmlIzmVpSy8b8EFLkrR9U{Z`J*oA z#7E_Pi;*9EU%_~%XYPDJ_=8rE3RdpDF+dbwPDv~r4P$p4e74gzFr~K|AL-@7uB!hU z*BK>g>-)HfNf3^P-vHq_ z>HAVlQ74K$uVAXjdu+=cm}~%>Oj04v3IR!;+Q9At=*o!Z(UPJ~@6|Gh1u8nmhY2gUA zIS)N2sO<-Id>jCk*es;^(r=sR;VS3zmAjs2SFAn)f6R-JEWQV>yP|-US~;ufc`^6J z2qr%7jcu>iHmO|ugz*ribG@LPRVXyO>{b8=r%%IZwmiv_!{XwC{^yXJ?*u{a#Nws2 zfBN95EUF(p??d$28(I=0x4RoSjX_=8op%2l$*P8pROr?UluWz7MhY7HD12E#9cuc#O$hJNMVQ*}= z^3&UmO9V_GV5FKm8!vPxmos$#rV>CDLrTUTit&WswTF^~3ZWkjvPcfUA=9jn*u;M8 z^J9pt$NkW^amdPppJbncJgb!=toVt7HZmQ{qdlBUB0tMy4S;#@h>z~A64i-+W(f0> zB|q(XvK`>`!e2g%J*g}MtJ$L$!Nr^S5q>3GjyzFgti9t0uk_( zssc;YHB?7MnalNTm@T?IVjdWNaV5ncsC#K_@cpCO&tGKE7JdLnY#k-+cHUv*T{7)H zAGfJS3Bx*08G%VqQ<$uamUbg7$NOm__k;oKuKz8E|1zH2k$OK?L@@h45YK{HZ>_ z>Z;eeSr@@#oay2(^I-n|zD?dUyp!ZL;+AnxocV%6sXq#TEmO((JzfLRU6%!D?2s=? znlnHJNxjI5$ABIv!)O#DJ>ZE5e+qiM(589l#~^5luSJ2#wK#AT1bD(nkS>p)=WFB7 zXoq9R5yl5yQ7R|rHx_e0Ws6^<82f8DK&9Oi-m?k%oOhC-f8sWEo3W*xi2n=HIIBsn zmgMOJ_}vjx6>pF_!p9p|a_R(zLS!<5T4A0t@~^w50xl?<1jIN9K&hoFq8QU08`GQQqCICd0#c78pTAgKGiGo9~WXtvdgUu zG4toDR=;hLk6h`u(fHP93IGD~jGfQM%`f#Nn6F$z^!pLrf5B1)NKp%xb z-v%_5;UAoy&3XawYZF$9C%+TLl?a+RaL*7>x+N)gCxF88)V6)?HQa46wHLMqlDs+X zo{uKzuN}*y+rQ3^VsQ5W++2!Iw*52RwF(QD*&-~E-k!k^y#W7j2;c$7ZUV=0tf{)V z+KHm&D9T?(-q>qmq(w-KXrEW;Mnr*Hz4gIFf`s{N?;Cm#OGQ zCk`6|NBgt#YBrE|s}jqeXgi%okpk}uCk|H4`V3%YXY(;pzOtoNdHk^NHxYwoqd%}~ zM3)Qt1$e;2_!n!r{s=}7*{BoQY4>k@j~ugy@lN| zs>J3_BQs?G<;YXo{d<(t)(NJNNOIwv5%Y>dSV|jPVzHuDU=_L`!wSj6d{)q2X9{3% z!Kgxv%b7W$U{;ehuPBLhq6n%p-WM}P|7G*{$rbpMehNX_{m$DI2(8&_@$ud;f_+Df zm8%Wmu57&`A!)Z-)W%BJ0J4%N|N6K>VEef<)}oCo3=gqbnCYc#AC*{r^iMRM*GD<= za;}{wx?y`r`#HX;b=nTK)`5xC+oxp025KuH-2q;zw_g&$_O$u6DhV9rDLm&ytQTKA*oO`T6S(*Iw51an`lVW?AlQ>)Fn~(0U$jU3+x6 zo@70bw614cSG&F2t>>5Dl<;kMr&{Uu)o$;%RyiBaKdk2#yS{Z@ZC#JB;MjP4Zl&9J z9%nuGvaUA0w~J@!rttjDZ&Gv;Xm8*fv>-eJJ7}JPL@~x#(J#3ksJoVophAV^dK5xt zZ5k~VD*P9YOIEpL{I(qPJ(OSPdIF_5jBp{1{sSuBi6movyVz^9-1SF-i5FL$ETEN} zzk0s|G_+5B-B}c|aR+}a_2096H?>X5(Q*SI^41?UZ-Ykb-UAkoc-H<&`xuRjvk zf=~c|3!6f{je&rXv2Xk=3J$$2M5n^|e7_}F;6>D+0q?qCD~$0dW@7ZL%F!kbuopWv z3U9HBrrtpR;kg&8rIOb86+l$$nVcS(i0;%Fm3e#8c<$4%D0dn2a6kjX56X&PAcF72 zH|ua{C9RTISq^v;9SLucle3-OY zb_K&W>=M13Pq>)%IM#%-yxr*r4@%(!Y49I8g3`-nKtyr}8TG&%)Xt^AZvCSa7BgK#PN%~an zb+XP}-YU!6&rf!EWL7pG-6?d$_oV0CG{Nb9kvqTkWzeAfckY8X2n5l5-P`jMs{vh>d$pE zS-3FO1eO9HpJ===wb;@xpYpT-W<{{!CE;UK_^ux60Ew0ydEOL=wk-VE4A2I_U#Nq} zVNqgokAfux6A?XL*dKH+-gyrgL&=(fq^&3L{-(0Wn8xLIRr_mMqg7zG8n@4Q@M8y6 z+;xnVvCxR)Oav}uQ~c7)MRjA9c$31<;DMNy``I%PVA4w`ABO{l`YDHq%~Hl7H+)oN zK-C?_4X9}^iyJ!*2P%>4Fr~oPN4c?zIg}Tp9I_;g6jK4Y%J>_gNCGL}>DLVxRslo; zur(p6NG?(}d|3@+$nHb!!YG0K4f*+&p|$u0d36~qAl*#BFm@O7(GtpsbAd^CtMcKQ z8&KYYCfeKGA^*}`5NK{|e*V7rwCCf4{SUCL7CuMi0_&7M5mwCL!}zrvpERENFtIeK z1w28m9_A)c!oZY%8^08bw_=ep(Sy{|It`y%+yvu`#F8{jA1o(!1~)Zz3M&i8g9&*S zMkfF|t)GvJ*xLU;tw*3M;K7cH za#af$Ss1NQ9Iz27`{QlZet4UO(f(t2piPNKwvN#A1L2;jBk<11f{N&57T1IA!)&_^ zKd=6jIR|Ro=6eSBOuJJmaJx@O?Z5nOTNvr-kG4>!TfSWIP6&5W8Cm^+#n&$SjcfhmWq}&GBNI&>SSJ2Y`Zmn zg<}I7YunMDL+%e+=StzhX{_MlJ!aI=dKSmxK`?$(*|UVefuynOq-0b)ayY=Sz;_qY z2$8@Ut!xo{Hc^UWM!7L)6OALr2n2w{IvDON;8etmTb9t>RA-1eyxi<-^u^g^`f>pp z&e=>Gbb10Kt^kJ}h%*c)3T1NK)7As4c=1yfG`Trbz%4To zIO5hQSn~IBtQFi!yYG{*3o@_=XJ9J;W*0O*$9YtIK(526FJXUx6PfHg44{Bu2|qVU zhEKz2m&rT^#ZynojFB8Rx#HT4_x?&)gkyfXMPQnC_Xaxb4v>3S41UncLo(;e{8>xULfWtVwEKu%*t+X(4o+g7qL4>`g6iDPd$`D3izOPJKlyFQc&AyOh)^B z6$l@FJzUj}QIn%fz&N>YBssdMEABf)zcTQwNtTyuUf`(*MalkhUOA_u*EER0GW#&= zbw|3Pg3Brha_#6E+0zy4iI5u)W@j>r$Hgbx>j1uxrR(6r;X|2?gfrqGqPJ4SsE%iVgL*p->1eFE$%&H5Orv#T?~ORa@lH!bM4Ws)h{pK_yugtOIcCl|Oj) z%jK4Q;V+*dstb=f^oSPjnRNaqM+|U9glEbipBHU{4zRB+A3nBxr1ff+RK09YWbba-=)>1!$z4e;u z<77N%MS*t`eh;MI0gml z3fRwIb5iJJzI=`GvT^uHK8Q`wxdvwm$VCQcv#}T791sC*04iULclb^Uzh*@NEIREA zXxnf#X$6_q{OZr>D?6L>s|WM*ZBEG|^iNb4$of0yfYOYA63hjLDk$DBAD%f-az?^K zeszcZ?ztfLt)GuiC-paUfZw704)rfjcqftuc$AH;`K(%EM4t*RBNs4cDa_!&eph&%y1n5(lF?r*P;E zfsOGN+o77`6|Q?weEM3s8GSJ4u5tIL^En#2UJyHv(QFCQ=7J?Qbi;*dGwWj{q7%zC zuVQAx%%qK#AHe7^%y6bFN3tcy$ggr%j=Oic9gfLh7%d{5ni&>vEJnrMlR=1Np0*F8 z{M)dzdk$(EQ{fcbya-hqN5T)H(Jha7i=3;_5<)=SEX__Z-bXE)Y&MHkZolqU%lHmy zOK22)sb}ZrP^o-GwGN#ud2^UR$K3;>2i`ovv!K}} z{}J0lBfCBFeTLVK2b|$AglX~X#VyA>9B*vbHgw;lxq6@uBk9c_cEi_m3e|zlVAEk2 z5v>g>-eVFzpAzj4?gGbB3rG5cMrwzAF}47C63Fxp-blJnJa^h_cD9 zV<&?4o^(mODTf&ULG-&re;V&u{rMZX7q;MAS0VoZhz9@LJGVb?DoYTL{VKpol(c>O z_42LkA!`~GF&YJnA*aSXoZe}5GuZimB)tN2vHyp?FM+SJxcZ*wxi`sW34}$6AbOES z7J($Jq96eRiG&c70D`ucOL9XZNp4JTLU3yo7bwMItF2aFzqqiYrJJ>O5nJ2Z*0zYX zMZ1WvU4qt@*S0QQ%=iDFnYs7L%?0h-ufNat`;uRtJ9EyQIdkUBnSGvlSkyrl_2cb8 zEqL?0xOw<(?ZcOo@Jc6f{((1hA!OULxrd)T;d}F&{%zlbNwgHc`AxTF`j-E6S|-vc zg4)(3Q9zxa6H$o2;VEM*)jPkFp&(^r^My$>|Fk+`Y72W{T zR?yw{GoA(G))k$XV2w199^@01eEuWc132*)uoY>yyy{Zm6Mq0gi@W7jz8l~_@mrF_ z_s6##!C`05c~Wh^vAe}~-w@l?Mhjc*vn_2oWPqtwi=*unr#jyXa$gB=YD%UuYoa>a zVy_oUwg=ucA7MJ{@_xgPGv2sLvVMS#uFd*45VP}c6mt)I&7i%y1N$YJ>O53%X?mW5 z4bVjGes`yjMYdzvA>1JJ{7=62wf&!atQf0xzDrB-_NCLBjTdHHN(#5>v4I?hxCtDP zaQU&Dk1pPEiPJW2@wR2hw$uciq6?mmW#IhQ5s>3$gtyUyNQ8FM>n(@;iO;@vr1KCK z&29SZL$W*N&9uj?0EK*4^KGZKU*|2L)bk$mbdxJ7k#5I6DD%I=JDr5S;`Wb@Iw8);r;f zIfZr?bZ#&E1?wXpHgrVf`+2cn+r=F-0_c#P_|$&$*Y34yxREMAGJXU{ZjO+ zh1+FZG9h8l)|fYq+C1?)V5ZwSk7gjN98mJ0TFet1) zU_Tu>nau=InYTTOBGxg-Ld9%vP2%~F!A!d*KD+JvUm0KYiLp<<>fd(ct(UhwoB!P5 z#iP@fA^j70iGW|apTNRJb;0UZFz$+k4BfJy8iRSj`TmSVq znQwdYxo?g>LxI(nd0!fd(1AA%psno4oM5sfM*p`Lb(Y>h9G#`jZ%ZaVUng1G$Shg= zyB;w+*U-A`2yFsbc6AOz)u%Of{s%e_)6!^%<;!n#uzcCACzUTEptLzCw`jGj=eF98GcHHjqNM$}@;k1UrQTR`F{nxK zM>E&Kl6e{jqgX0Wp6K)3;n8UkqO9u3_o6qI7k{9hqxEnjC#Ra9ifRbf%Q* zSzrUv%WAafQmW%bbbNIHVOsnL*^cZu;}p0#pkr)$hW{ zO{wbnQa(E=nYFNd_cCht{mk6HKtb<0-XR(0DLPZEu8oMeM+zAW)t%q|F;}9SHW0BR zZ8kC{ty@b_m~^%tfw-swiRp!1zulfW7m-k8GE3=v9foKJ?=9c@N*4HaZi9teTx{_6 z%sz;KJ)=(NXHvYGo&4Uh<)>5mF5-df0(6upr#31WsiO<%IXM}LMhDrM)A<0Z4fo)7 zq}_$KB1s>EFy?q~eXK!h%y(PomwrTjtgj|wN7{MW8b876qZ;Zul|CjRQd}Rud>(`> z!`HAjc#0gXLCugH9M=~9P6JXyH=-{J`HI-nOxROr4i?_IR~hU~hbb3s&*nIpFI!IY zb{ge+1T;S0GkmL*D@YHr{=xk!?6C8<7?kPp$y=9CcL}a{U>@jg48hadWXXi8M6Tc>`9c-L%NritXByPzn-g2N5>b&iTXc2%$L&XF? z^sSx9p&4El`gC#};tl-t;<2m2lCtANrT4M|qGzFskicDFiY#_@Mqx$9@)zKHJ02>I zeiW!#559*^ZQ!FHla7i*F>;~J1Upw?qGtIP?zlrFr*g7D(fLit3K5ta?CT%n0DbF? zOoAQcEs_>)agl>uI55@M9^(3D&qG`|Pt3z!?GT&iy+(LRkJ%j-0R6D^$CoGFU^i!7aLZDm;IQ5AViY$9)%A3Pn=;`C(34R9(dEoX}dhv0RLs^ znb6Quja!Zfkh7bFliU6i7kJHfR{p#18>_T+AJR1<}KVN zM%QaLmznFZk*h*P8f}!1zVi+(2U0=fg`4o6)hC;VaQH0}V$K5jv==?Fo^BK)lp?de z!@(MtQX>9>peOyVBU}%Dl)1FLkcUPiy}aRq+~=Hl2z=VF9lIJkjBDiWiJNp~0U;~R z_62y|x~vmXWlEsyQ3Z$p3r?Ect-}|)BpF@JI^RKa4P~;ZgmsjKn?pce6l|Hvip8=% z@etP@YyrlJz)OmC9bEBDpyy3(22RU0#uvbR6QrzdH*JJQp@STZz_wPwPX&pnrqbme z^=PKE=KC1(S4xg_ozy#qmjX>quCrCD^RvKESTsHA#9J6T;bwCy{J@)j3xsHnD6}`w z;B!Dx-J&_jv#k``qm6GXJxBWA!G;i7qu<)&;g}yt+WiE+Qpz(+C9 z_$Ci%#Sh#S^+Dx5-1ci;#e2tL?4WEp@jOy6R&fu~My(!r6ECJlV;hk=Lq@~4 z!Sd=k3mtfJ!_|3@sYBY57M?s&3RXqip5-P&BUwr>-mNC>1)nV^ofCNBSPK=y`$uUD zL)tn_?MLT%;vb@ZZMbi`PHZ+NsfVaCFqWSMI|&t@_z4M7Y!Vl4!a7gfA(cS$fTEyr zl-6rc&?Y*d(awARh=%(+7@nD&(po#m$0zXYnA_(SeHhr5A>T<`K#xqtOnGh3oCH+o zm(VzWC+*yLXuO9-7Ul0}=VoKjiu&_e?UovsIR05W4H0%=_i*pYgoo>3`j4=mu)&yc zY@aAqg>`JAyY3kzG--|k{yH5|@O{WjXo>8)rzcF_mV)8`9DD}o@h%S%v8f*83U2S; z|1%o+!?H8QjWBVay5DE)z~$4gSG|)6c(T_^qVyWEh)L@;7a1_k1S9hAi%ct#7%GXUkV5 z!2=C!^}pW4JJaB;-6q46O}MRh%_iO)gSYKPp@El}@Z@;XxFPK0N&GqtoNMA8HL$IR zSUi@$<4N&OCdE6qMCaeet1|I&lJE-*oM*zD4II~-!6!R68oHZ}%QlD4Rs(N0F54>N zcNlnQ68$F){3#DTCnLS7>c{%qqC$2g-6Jl42uYl)v^;3*z@#>p|T zH(kW%n|4ZP5}HopZ1E=AK zi0FE7c%62c5APrO5w>p5TuoPMTrX{}zgGjj8tBzPuLgQG(5r!74fJZDR|CBo=+!{4 z26{EntASn(^lG421HBsP)j+QXdNt6ifnE*tYM@sGy&CA%K(7XRHPEYpUJdkWpjQLE z8tBzPuLgQG(5r!74fJZDR|CBo=+!{426{EntASn(^lG421HBsP)j+QXdNt6ifnE*t zYM@sGy&CA%K(7XRHPEYpUJdkWpjQLE8tBzPuLgQG(5r!74fJZDR|CBo=+!{420nNi zIQh7~hpywP?)T9pOM1lIGk3UD-#gcMp>~fOcwN#xbe2ANX?OZ{25!GV<83;YUxx`# zzSqu%AAgVVV43E7s`v{|5pLxzHQ^RsXJ9L5vfF6#arjF{kH#&1?)3V!e5@X_9@X^6 zP5kz6YIvt{JHD>r_HSr6$GFFh+xUdWTfWxqF!Gfe{yD~dzw#Y2@jFbsM&rJhd^?Ri zS%;0>Po|ddh~eLE?6B0hStj2$AE$Cpn)pYo9UC|JKI3N@yA6KJ$Y6>MyZHb$E2Hcz!Nv|FTV!VOh*ktQ{vXyPgrZ77V!mPIzh<4H|< zxfg2sMRnok=2QWyys)6SxNyaaWol)4LD}@Ysf&w?Ras<1ZF4NrR9=Jp6h@;PSJyUF zMK`JcZhjXH)pZijaXd%x5T2FvbO8P&o+t4z+{UHb9IKi;Hxe%$0oRACLJ5?Y8eiBAZD?o- zRkpRwof`^OMjI+ynwlaFm61?gv~pu8($o~i7fq^au}E0~L(bG)1BB z4Z&~&tgJZ}hRDHab?`iO-YNKQszur@F-8bi#=t)qS4m$L3~s6k$0kgi8w@hDp1*fc zR%Iw3??asTX+$_5(pdj{xr{#&^r@ax@nIbDWt^dSNay8aWwNq(Wlr{68q3qlYk63F z)^FbJI{EAFPY!UzJLX9ae?M?4zV8+9z2aDz-iwbn{B%4S7Ft@oVqt!9NKFVgL>o5O zM_bUeh3g~Djp543L{v9biSIfpRrBh*UGL|4?!>!Yr+W6juEX|%*D*Y#n}ZJmXTO#@ z&IHgi%|e8?8JfLtkKwuK_wROX#gm*C>6395ej4=e=OKMEo#o*Td;1jpzJWaL>HO!P zy8mW8o7QB+e-%30`bVAiQn&{J+wf#}nK&36-WB-5V`{x;%W(->~5AER1h;q`TqV0E-9s8&@}XwQ_|hAHT9(OfsRpb3sP z1ifS&W7IZOM>TC6Vr5H0RX1n^D&!Q~wZv*#8a4)F(V*&ysf@OUn`*-iF?24mmZk>u z9+vpZaBDayLkZ1tLrb`+Dk$V}`I{ou5$O|yu}FPmv?<)QSrgaPR#ipNoz&H$&zG#u zojXZ|@+&J_>Q!h-6Z#nyDi6nkibJ1p3|*=91eK)R6lspOG@j zwQVXmH>g_bR9zi@>r{2Pt~sJmA`vxp>QptZu1eiKq^oP(Q2o@x%^lX&^?bjsuCx1h zbzR|hb=BkfT6S00%rm>X_Td>f0v|;k1b8rDJmV1mZqTIpySmQ6ckj31*$n?*@U)~Q zo-e@vUe9xVaWlKq)%9witLs3YuCAf!U0uG6uC7$Ow)irH=SJ&Uhb#?s?&vSSx0mF1y z^--e1)@WTgR$CWQx`;T0Y^;m41yyZ*cmu{VFb{mk==`p(yvhIPo(bT$7te$#cs%~S zfPaps|J1IoIn$7DxL?JSoc86A<+{0Z)iqU->TpXP#z9RR#;E4n4Gl1o%9?PKS|5$p z$xkHQpfqN4ETXESEvN~qE{ayq_^a!pVOVxZ+}yl5s-?lp2y=!6#tR6OL=ahm3n;qr zh+~>-qD>x78f=Z$R;f)CFBH>437fbCBB!8Gqfj7q)ALxj=$kde`j}o#xUO2VnL7)d z$Z&cdJTiWjv8&YAgwG6Yn`THt zscCF*zGj1oOH(9VPqtpZ27Ow_V4=mdJS6>Sf}uxFgMEMeEDMQWYoYG){ZkC%Ji;Yv z{5%ydSNI95@#9svO5vwLO_-=E>(%+FZ|ZtgwMtE!r>epz(z-}2f|ji+q9&=TI)hME zF*Q|HwW?_+IcD(Ro7mt z(A-~(?{lfi^HgJWv37z3=XYEc)frsZnfJk?aL=0mWidNocp zHN%hkd36M{8r6KYLXAU5v!Q`t_-e5Q{w&96WYd&Qvt|UFS{h=t>?^~yb(nO`)$^cW zaFw2XUD^_1zlA_lcy?Cfs)FlL!7*D!V^CFv_N_TMPCl?mzQN$ihK&u;O%1`u=15Cb z6zw18b7=R_Yhx-Oi&jSKf~^tE)PNXQHC3l}`grSWV?pM~OJCpITG=!wXKEF?BJt1m z_+x@*ZN9SJNH(>xDjW+_!qk5yxjC4}wzY-V*S6;7&O{>>MgLkAYH8r~yg+pipAA~B zBZSyZq9v-17Nlky$99i@f$)!@SP~QL({tz+KM%4t*Zxx?lpsknW6zs$su}xfMDWI+ z)jhszD(rrwp2H3hScm! zF#5)#Q++7D;u!L-IEK8-eyE*xF|oLIJqO|HpNrmHhA}Z(%YQB!R`<+`;7Sz8>n)q^YE?x-Mehi*vFtpl#`CPy9i;GPEVGT_>8 zOweV2%u(4lCt#Zn-MvZp#|`|naeral-y7F|i{^8daVHsfj&X~PyWY5M#@%Y%dyV^u zai2EsG2{N(xczT6=@@sGaW66MI^)KSdz*0|Fz)A#d&IcMjQe}zzHMB0t4=4&xMv%8 zu5pWvdxdeW?wXR|YYqHS9xyVyQD3A(Cl)TvosPb$1r^3iuG4Uuq>fwsYP|s=7`=N zQw?en=8UmOd89tvh>3J0A9FKn+L(>~54EHz60v>pQp&SPHjiSZP0>osCRAZhTv3%;=D})SK&lpEi^I*a0=?z5 zh4AudRZE@85#)b}I5N-I(-nNxlbG_&*x0MDz}zRlc?qUB^r=@EQc+vE5gT=wpsDlR zqWJhBIb$o_;z+nPl8jcRZgDhRWpar0?{{SqRT^o+q@tc%PQn~}mruH7&}6tdp>Cy~ zb<1LPkaS5)gQ&HFE28Qsv5UfuScgPxsJShsULdX*dxb5HmKX(q0ggJ(5Ho>WDKi*+ z8PiwZO;crrS2pNv)T#oz^#@I$4AqBy<#mxrqpJ2**qt_8JZht_qOLh#@6*-M&jMBT z^g(&6!gW{^Y#@XLG}P)lWkTvUpAi)NV`7mzEk@LaZ_D~tW65Jlw5c4!u)2sb+*%dd z1OtpHRf5$Z%mbqh5tx}O=h{$oeW)7xQ)-h6h3lI)V48&>^%o_>L5{N2xsL2rs;Cn( zF^@Qy?r~RA<+MI*j4iCAgF@k*9 zTdPeJwa(N{c3S7_M~E!HOo=; z!W&rMUr|di=hX!H>LRI8Ht;G!I;a@)>(W?Lz6!XdShCS|GQnj8Y+LW0%Q`tlRiooL zGdNb0;uy^|5&sq!=984t-EMhJbdyFZ^*OhqDcsPERn>@zrqtKnl^hGpp1n=uTkcBE z{v$S?!nkzl;v($ubM-)}p@2U~&$5EDl7iy6cxnRVlQj;#uAwdh{O@|a>69X!fAuj( zDYT;P;HcOA|3?E^sn40&@9*X$eTVn|AI1E?mDBtVea>^Sao3seCg<$zey;TYtz7r! zCa!@aN@W3mF=;u>HZE4|Y6w=)uDe9(nNigC`#hJe2*=f`>{UTK7=fLt7uZ z>!Cvr9e(J@L!A%3{ZL?6a97T*1-mZWRkN#YSI4fsyB^zhc-N6#$98q@I=M^j4(!g} z9o(I>d(Q5{-KD$N?XKC~w!3}z&fRzI-n;wI?!&vE-hFKM@!cnPzr8!KCu>h|&xAd5 z_AJ;_y63VzHG3NOwC~xv=dL{+dk*b+Y|qnsj_f(Ur*qHSd(_^nz1e#w?9JJ`U~l2x z%l59@+qk!F@7BFL_jc^vyZ5oZhxZ=Ydu(s#-jjRPzQDfheZhS>`{wK`+*i79-M*TA zZTs5y?c8_QzP3zrc9p86y-`o2F`?K~3_fObAXa9ozrTZ`2U$eh)|DpYd z_aE7RY`;1XIG}Q{#s;;MPor?z3O*ge=P__P66d7ADI2_U;=I;@+t&R%_usX@WB=2_ z@%aAE{U`UoEu6CsOgNBpfaP0rpz%Q4f%XGi59~Z}*MW`$dk-8s@brNr2aX*$ejso# z>tOc5;K9O!r3WuNxbEQAgF6r2b+F^$(+7_nJa+K-!N9{=4`)9de0ajcISGucvQwx8u(9i6zl%_xOSv^iz zVaN}CUc=WKxcv(np2#)@e_5Z?@Gmu}8V_msP6MAb;a@ax&QEmsOZ>Cv<>Rn>_ZY?|lIZ697$8@jbBRsQzIU<4P}%n_EI<1`#!?e*-^UAYkRuD@Jn`R$F6!JZ0QeuQPaO@2<`hmw!C(l^66*7 zvy43rG;lD?Rzp-zIE?m zPul+LzF_&=_m_gFkmqB-yDINdOK;zgvF(?AKgQboP9v{{?Rzp7w(r%%^=s%aHR;>; zYpi`Ii>2j{eJd`HDW3;Sd8DRq{;{RcGUb5|BITdvzwKw1UX9V^x%SGGwLItgQ%BJ9-`8a6 zb3Uo*2c#x9^1l?b^b6h>{dt=#eW{`Ul&vpG>1cVrah;_OdI(QR@1PigvR zPHPXp$7ogS=kVQ{{v)TQKVzSzUvRIcxAvSQzR}M=;`F74{`%AMKmRM1|B?GN|6reF z&KlPG`NWHs{^TA_KmN4k`{r*feej^BZ%@tM$e;12IK64FCZ2-67yUn51M?uhHcgJ{ z_hsPCuSI1Qp`wza3N^d0Qj6>AmWOK_fGdxM@m5!(8VS0_N}kSZ6Tb7Z;oOU1@9Gxny<`JnP|PbQ&qO%U=Vg(u#ppKYs79+q)ND-BiuQh zPlIUHm;}U6)bscy|IQT>j^GC&_*ooWij(NGqC&M7?S~$>e*}y^3@SOv8b7NxckcCZ zzuIDhyPbRkNjF$M39|0l=yv!J^hw7N)o)Y9=zg5g#_En${gAh0iTMtjnrj2P$u@Vc z1lA(3hlJfZpCY||sbVG$R@ztzj5=`&L6VfV5b96Ph)4A-tnpG-oTI!83-qBS?4F07 zM<{7%RnbsOVw!N>YFom9Ct4IEY zxYSgGXo|C|`%nQ-_Q-eAVb|_zy1qx^smYTw{QUcjXG&u_y2|dVO`VJ_itoQqdK^x! ztWi^u@Au#i)hDH>%KuxjsPXggxQg>f7jk~YsKPW}+@F@0TSjG z@&-hUH;kdiSd%)Dl5RcrZX3{qvrJy>sa_eVH0TzHL6=qMZ)tzJhld!Ln&zz z1A)#I;T|a_*r7;Vu(@;X*b%P{J)9y~h8emQW2W;Y(=)$;{uf$`_Rv(k9gY_PV@;P> z&mHCoGo_k(#7Z>N-J)@c(p6mg=t2{mAv!9c})fpm0Bdxxh(R7R;9LL=+EfkP!*0F@@$vd*+SHY%F4Rh^{A5Z02$S< z594eW|B8hTS4-~0NVpzV0R82LP4*zy>p-CD^2k?}jFj~OFX>y<)gBD0qVVG?r>ov5 zcho$D-h${bZ@jeB8o^6@GF_pIvu0mR6(mQ-Uh#(DxJx}|J0YC@!h}T)mLv_sR^$!m z)@&HlpDW2vTjQv2gUdSM)K(h`tIgJXwfcniRsws#daq_=<(I)5mxBHiMKTk%3hUb3 z5Q^0`%V{^YUr@0+oQtaB%fugMsp-(FNSlgTP_n8%YC$TeLkhU94yk^{daqVTElEo= z=2w2{;k+p(3TwKAA%3MQw%#fgfmat8r+;;^<|-Wh({EgY)gatGLAVJ1A%&m4r7qqg4^x8t8(>EhSzYHLhg|H#Q~=^?YH*^{uertrYB61xtfd?TA`k8C%Y`<6=CZcZqocj&odBaXl<+ z5b7?*LzqbL$`sC}SqkW8qZ?}@>P87_ir|HHjEtJiTY>5oEPQ)n7~*$QVfkhbUTm&M zC&zrLC6Y9k*5)ATEy7=Gyu6@Lk2m5?%!h?x!Ztz?+vkvzR&qKP-F^$`DLk^su)KnS zicN#7xFq)nXknr#C4@H|L&6T-QV6drhVVwbC{x{=f}klhLWxW`c!qC9^DC=@DNSyEB7ydYFsUa)fUicncW@rp&E;-d13P(jJ!P)PL! z<>{zG;G)z>Jg(weVJCdw#uLK%&j@;9c2Fq=_;;8R*zQdO^%xMA>>f`mBm+v?6FYw(D0;?#L-PPki#ew3o^&1~H4#9koE2`@)uU6gC$rTTJQPTP3~~5d3hSNjK@~XM zZG$$z7;KVSd*RyVNc^<6`V5!AyxPSvX)LCgL*MscLeVX>EYjS95^u&5TMB$A+Jw^4 z1Gu$VGP5N5xPKzi4o}!Z^vN+?SrL(Q*Ul9jMt-DU-s?@>_dy*oH`~*%Xg@H8~KqB_6m)sYn7#_)S)!RARpKUgSDSSy1pul+4u1 zrdN(mLujOA>FQDHkAI7X98Jkz*usPsRjeq}EnG+qV*?Xf?7=Wr0UlRzC*Vr-eUC{C z7;ll28(dcgvGL$|Lrg}!e;;5CJOkNKcKG8Gel1FQ@#+<2i&ZOptBXn&u2@m5Fal7; zrK?sHEfzBn0$i@~U7$7gC-4>Kmn<$WP#4k=N-9DXMGMscOfE}{mgg@mU?&_}lwVxD zFn`f9wFLN8`DFzqE0?PmS^rB{Em@_0C%z*1{w!@mB;`PUhE(U&Vax?zKXoN9+>RIt zh&K@6qK`gEG*ngF3hyj#Av-S4W$w)Nee9@=e72)q}yy6e<(T zNj6Fmr?A-W2r*!yCm`MuhZf0ghBH{(O*-B%+{n_>7+TVxVyOt!%N}gLeuZlwD|K^S zWIe7rK@QI)h*zl$I8&-T=W7xBx{w+rm0r)`dM<7JEFK!EvFmJV3u9e(2_qqTSv`#-ek6jwQ@O=Qsh3JG-)BmMgt)3hU%OoF(izQ-sAW_qJ37>V$NH-3^f$3QLCUQu&#Q46#z0 z4BZE>&d>o*hF(Zy=<6Q&y|sz*^6x(-5xd-dMk0}nL?ScdiR60{i6#;$_aq`s!v+t6 zTD#fZJsR+~)Y(iwYC1G_V6ID7-!XE=PC}%;gjhoSe%!o~F?o7SCl{DgyOiDQsi842Q&C61n_@AUX6w zGbD4qnEIUH5^a@UK%qWqFV(svxv6}ww=Jdp~OGRF0Dm3)U4m)InVyD}b}$Rl&7cuq613E?qnX;gK6 z$%O#gH=m-IRC#8-xPrb8#ui_f_HeU{%`EsH zwr0i^B-d%%MdrHqpstd%?b@=Z)wrG(lW2Ce?=g=V{Wf7nzo(Vp72cL=wFUONqzL1| zkHb^l7{!fCl85g}I(8ZQO!D#8#wi{I?QVewPPV&coTQ$vHf~QvpfXcbzHAC^*0Xz# zg^tEUJ$A?3VA&Z3W*5c(3XBQPc*@ zM6rDrwJq1vBK4^@PF3BbrEC6Q-4C}>{>pjQ7emAlq{8Ll%7!G4xRXf>K^#b zgzDSy>Pgg5_{=1V%g_>EcnpCdq?$%813r|PUM(&vE8wht4W?$SSgAv1Bg8832doP5 zEMP4Q3bf1ck3a-VhX6CIu^B3S=y_)S$<4R2$7Ec`=2 zS{>;SUa}Y}tteB&0hJf6#XM1sV{T=xDfwGoupC(mEzB=3T7*++OIDOE&#x$2QKC3# zJ7r)w0_}RgzRylC`-gDvKz*n+SAF*M1bHe8#ha2tE6vkx{n&kjE93dv1fQKZe;j^O z%ve*kg`0?N_Z8TbYpw9jI~yA>SlQT*caQx^uyB>#aoB;tP3hdO9(Arv3MmK@HOyTL*V`#*WKhC z$Ug{p@9O&%_$Rh1w!*k{rtXAq;hKs9bw50^xNsDnl|@)3VA=mC0UEkMf3gs)*hRxD zEa2zaK5Z6f!zcA(lJN*|A%H}c*##(6oL`2O2P9Llw4hA=iqzdOnH*Cshqm(7Jb1Nl z8IhMQUmhyYUsVvoB1Jwf6#X0e<7C`4=q0ph1-M^Uq4s0=Y5kAGUuuCL0Eq7{ELmBy zNNjg9+UZie=Mcy8_OwvJWs3?*NrX*^MO=uv9JD=h)zb!TOW%zWlKLwu@`w@7g z*nb00si3$&lPL3XfNVK)eMgsbJ_`(HA;nu}BM5XIAX9P=!>dc~t3)Q3(#8}ecd57J zMx-pDtAXuNKA%ikJ}1aPx3%SHe_3*c1^J6%af6^l({3k)aH-9z_j??)t}H>VUo7pL zYJ|SMFx!iXqIkPSmb$gM1vH}Oq~0Z==bwT?^!K0en6Bm|ymqInqHK+t3gwuMFM?e9 z4V6_CW52Gbq6jN^XlZmN7Z)sCxm3N1cC_>~;d2q5GQJv$<|9=^m5YGn)Kn3WWV)RpQBnO$Y~+5QZSu~M#SYTNX7#-9LIjPgEsM1fy`N82eCmC)ax07-ml zsr=Lw`}iz)5>1b%S6;lL+}Z+1$=XOf$Sx|c2lgE1N@H0cEr&k<-4h!?l`_PO^DFX0 z@j-xEiV(xQdq6A^WregfC{%5+Xl8$f`l4g?4C4tyBW};YahP1E4pfV|e4&}5$=6Ah zBdxuODBbYiPlZ=fQ8gE9f~KBHYnn2I*03Lime|zfaI3ZrrvYL(WP{;rRV{9=QZ>k# zV8cz7HF4}oV70jnfkaZ&x$xME%Q3i}f5@cy1rLIgm*0EfRk`s8z;VYaxv$-$+I5ymI>GGn>|QebrnCT zkD#wINcI5}D=kW9(028O8-u8cX96j^oOag~xzTrBjqq@{xT9oY@_<|O>m%5T#gu`6 z?RZ>e_aX1J6;5%7K}vvw;bf66>xMHT@jzCBQ18gaWYn0z_Sjsb2)KxfGT7}hHU>Q{ zW>rdyc@0==9?zrn<6|YV#SS;v+WoZpc-9#9fA23B1_w>yFW@XKSs7duoH2Fg)SO^m zPHs+4Zr=3Z1ip{age%q>V&S@p%9%QKn*Qfpv1*!Z`RQNYN<9U~SEiW@2a$q1V_OwXH!U+gqbLCxe7nl(d{n_rzsbp4fhe_X%5 zG;pYPDYzTL!DhL;8Uxv^G+!Wtqtc-K#P5mcX&s-F&YReAKrt;rApvfN+%_NVPVP^W zK)J$uaoPB_c?($EJ>yX(sfhfTc3}TPq%}7UnRGwe15;aV?W(Y7ksT7 zh<4Jw_w4)JG%Y11(d^KQ`gb0M4$}3Q$^97PrJKIpeTGm*pcB6VM-mG7&7JLjE18#Xg?&0-YQoBCVB&R3bihkb(hkmQ{?cd5>*^d)k)!**(&2dZmy^J`S z@fNF?GeUPoKNmfmJ4R)qf>&;oBNJ|^FmuNQG_tt19;f}>OAR(Fv%F=!z2I-Xa?1=p zd%!>>;EoAq<~LzMkJkaOY>qU^DJ-`yxF1Iv? zuENow<)syCw6|m>K1t>fS(K+-ac3wW-7=J*xN}q*-9>9~JQ^-~^8%GY-$F>N0)i_l zFU_x5RH*t8Dkv*kQKtF|33qAx(FZw-@=GdIe*!B@mX)knU7|7xEG}4tKC)O1AW)R6 zvV;PjLE4k225Zj@HAG0}sG%A$N1Y)EupOo`@C~O=rs>)A6_yp0uPm-mXA(r;&s;|Rp( zkK+l&XD)|D^$YP4C-tOw!KomBx%#F7R+M2oT7AnCRIoU-V&Nqi)#6|pS(RfAC4u|4 z;Ki2YPKp_#SOY*cz)@f9GkjZJCv>UnC zloc#d?d@VJP-#KgD(I)ZU7JjCalulQAU=q~h(#J)o?pHUG@3K#_Cx?w>3V4=ZFmL@ z8vu9K)3Q0DJ);!0*Pr%D&b5ZJ@#Hx|^W8qd#9>~a?SLeXz_C$R4P*SYJGo6i+zIhO zY}JP5t7L1#y(G=yQ4wDocxSJuuIAx4AX!z;#LE-PU6#g13DvTqV4-qGI3@NL(TWJ_ z`+(sNPf_|Z0%QR0Mchm0B7CH35!OKQkwP>wI9s?O60iHa{SI0BhGOcT&07-r3J&iz zb$9y(SJ1XdVi3WKn@vvmKo8Ez8qAqErq`<6JrazX&h4&|B<(IikE9Qnq-&UT1wOID z93IfA>Kilxk&ikHDTFFTk;<7bjj`>^@=c!xD)k^3jl#h@WD$G_ZPz&u2*`ESPXY`AQjcQb zGI|N|*HV>17VtH|X;E&aC}&{)aqcz^-T%1ek-Zs*8AiA@5HK{0JGaixf36hJ1$3Y ze8_NDT#oxF$Cn9ypQU#n<#?T-$Z;R#7=w|sn#w)F=NDkvWoe6)7 zlU9a6I#I*;P!>`+pRY1H&UBt@!nZgYaWio!9K+D2hBh{pHilD1<^sK`Ut^RUn!Dpn zJ(obP0UjnWo#Y7d=CfNCyXEb@^1|@h$qt+dBcvakR=+cf0XP z!{o{DF>Ub2rwwtBoD4@+mX^MOXJ69NH-15!x*v&C&$CBq=?(qRMy91l$BJ{+CUIhSh|~I6aW?-@ zoU4B?&NV|&glXy5%@ODN4~f%WC(aEwigV*$akl(WoSV21pO${h0Mxv+^jrCMN_t{D z+VQ1$N6EkDehBC5`OcGn6$3K3cjuIf(a`Ik@ATpOo$zAT0XN{#@h@}w%*SRS(5hb` ztzRIcfA{&FYi4n7%1N86Cv9+Kdc&zwX5c#T%?vz_UqrGW6LbCD=W<91sGhUN%)p-z zalqS*ojk1@Xtu@!fvGICtgBk0F%_704{67!ES!>6fgBC_l}~S;2Xc87aiBeh5eQ6Y zL7S*Ec#lmy>P!tGsyV0;n6(JBZhRK!+KHpveL9yJ*aNyjnSn>(3}D6wJ6K}ji&cRV zhXOgYry(pC35r&$z@^Sd06M>80Dqve*WnDH_82`{s{$1|GR;rZNI;zmta2!;LxZ#d z>zgB7Pg8-lP6g2NGh`JBH&r&PK#Ppq9M+{FUnB$374sluq*8%q&4x8CnP|9kRWq+A4_xjztb#+R7p;SY zBC;JBnFcm#KEs`64R3ZFR@5QiM#4xAmx0HyuO7Hgm)Zji5^?B5(NPD63dM7?E*{qH z1eH~su)-H21GhTI5X)iJPeCQu?yJCdEf*UGAwnup4vsgihlX})4Y9cxLJ5ZKg~qKS zH{r}f{dyI+O>katQ`QTys0 zrr`X9GVqA58i{2=ye^x9I8@z)PZr^BeBYa0SX6a5!W+_nae@MW#z9wt8%q*oAJz7r z6Q?u0BlhsEJwO|0{PMF{hI7L42wHGnosx(n2SL$@Xu)@o)+=~|(45W{=3F!Ly(rwD zU0;Jfendy`{s2E!^|<#C~qwwef8UF2%HCZ7o(n%Gw6bhbsDv-0<(K2U zgF)Z`L_yKg63?R6qWqOh3oDePBP_vYPjRTUFu%MY&nywSJwkF#h|ea1LlxNBt5{L0 z{2ImA-c~FDis$vyG)}K7mW7tASXr`IrE8>|At=WFpxFt}&}f21B`XWe&ZY_^H0M=C zd|RV$`DMs+X5hp44YFeY@%Sp(cNOhybTL%fcQq>md(K2fsMH5* zRo}~~P%JrS;gC`*`oU1H>br)A{M|8Gaa^A2yH?|}6T+I!l)hE$Xfgx;0G~6hAa*;$ zIoEUYzHhoiJ2}^L`o3?5!@?fJlfsR@JU?nuLdXgp=km=UvYYVowFi7P8L$2NW}YFT zfzflp#&>}WQ6Tu}?S$r@B~bQgydkQ5^LRNER!K+yjZi*?cE?N@?ITpIq4P(d53Fzb z>k^hT`W4hnUx|k1j6RoPEBJDQJ7&S?VT4LqE!{DNqocEMxckde2Wdxe0gLX`%d4;0a(aE zl|$z!UE(@eH+B?ujxHc3IP{e#CQRQ``J3;)F2wi@ML=*S2` z4G0327hv@qFj>4*`hZ#Dr549=d>-^~|xy0eCSQB$mGYX}ga$|T=-Ys%;>E|?Kohn7vMmfF#m{aPkjnY{Yy#{57qq8|$ zhNV*^o97C1oy{>0<({&S>5mn>&hmJZ<;=i(9No?fj6ezl=pDec#&Nvm<4ksZBj3-h z;&@7Qlo{Y8c-$%$9M8_`f};-w#|Q(cz3F1Y=9Mnx+)Xvw%eK!sq?h>Cz|>zygc&ef zA=m}POtIX%iFYoYb==(FIKo7kZEDdyG}=Fae73Gh_tI$jdgvUfP5(iCUJj6U#+S?R z5m?+U($n}O)Q!FL`}{9xxgJBrrGu5aKKaZ z`kXH@%l7{8edgZf8K{rH8)8|1iL5^b)C?1a(p(CQr$!!S{O1UWMjn-_46V!!0>2YH zX16HkTYrY<3Sf1yh;&*53P6O2UZ?i}j#EbNBNu4}|$0o-em=(;Xo$(JE)5%s;xBzV}k z?xn9ForKP}f^b$ck?8yz2oaqJaH)ald@?+SZHr;|am%)FE+kB_je&GlGLf*|Pi`#A z4`Ab5vN2%DCftyi_2-N62+?cTN2(?T@aeu-(a|>{b-$aVnnsy=! z^LF>A^Rtn_euUv~I+nTlE=*Dr{dab1_SXJ~KCcV@IHH`7oSVY^J7xF=ZbZ1?Z7_2G z&Y%o5lov=F{0~}cDM4xC|G}zuH^7CZkYP4j`Yzhm*N8a;Oo8;BK8JaCRxXkD-!JX| z8z5QAet4h}LviFf)Oj9dJa0Ad^NaB_0e36R%ZF#-0t6Sf@G zCsEwX5OY>Cg%tN42$ACcFM3#W&%-2D{xSm`^>P?wqSsw>Q+ zrQ^gk4a@ZSu35QN4ktOez!h_%<3^+-uOKWvb+vS7n*c9o`|56xQH^_humrczG)L=k zFN6&C+T5aJx^zma@qQUz;7Ej}x##}Wgw-~ns$r;DX%29?+ud>#Z*Dsj_Bj;e63u|a zROL20M12P7uh3Pw$)UCSZtwU=sr04I(r2C(L?KHb8WT7IcnP}h7J&{iR0b8T(%Zhn z&{_m*@Ve0mma&Lg6+0KO7*CsY;P(K|#bra?uQpZgW*I-MsBH|bk1!bfug%yOzFO4m z+w_bpW0(7-U%qhH^I8Q~6<>uB=TLAARVqi-E>2k4{*<;Y(NDE{lA2F_b%&A8F zgz>Bez8W zQumV#Wd)wc3al&dP6S=d%6rXu%vTXdl-IwYOYrl?bwBLRj{)BY)q7TQ;Ker}dpN%Ew9FP3M1=4Q(+U0nDNn4E!g)m`r*-<@${1MlTp)3T@ zlSKEoE+;O}ny|Qn;}>YTzjL|x@n;as<%{_Jp}Zyf4l(orZ@N_G@JYb&K1WWt-jc-U z0=0rD>B`?01*131H5V2rH^X;6VlEwvOpba+n<4KSbKiE^Rn4CYd?R>V#yV*U4uQaT zhcln`aW?`Hycl#pGx1L{ejnew65y0tL+#&Yf<9?nXpIvG-Xbv|7wPB8ymbIq57u(2 z*RI~K-3}nWGV7p^bk$(|nzN|?wryobHe|ieA_iqRbkgTLfw3Bmt>d)5fsB6t;udlLKoR)% z58T2;PrXHqlu~XH_t+QCwEMytQ>py{vM-!5Z3EelQ3JRyoROoU_`YyPE-y#PjPDC) zOlOIis52V8QDu`ir4i?92?_r7rdKn>^y_7Ctzi!A1Lklh!~C~+u|L&F%%!jK^B z3uj#F@HK3QJ9&fo13htDIg2V|bnFXfROraGBTXX#bt+?(Ls=bKmJP7`!WnBF9x9Wc z!NcLxKSNO3gXQOJ;M9;n|G+4ChV~C|bNLJkNdry9fDqi?%~99qam{|oN=4U8LGA>qJgS3C-?_wGR+z70PG)N^N=k| z`wKvLrmT9>hZ{24DD)4IEW00meBn3&eIQ_CGQzQM#s|>?DQ8M(ZNsL`a=!71`FPTQ zeOvdGzd+~rI--nh#!;{-l(u>@RwNFghZ==Np=m6p&k=K+7&|6%W>enZ0e|)~M1IgP z3$m-5dk!}T_!sPc5wkOiksL>5BHUGXf%xCu3F3Ob4^$`Eh&+$Mh~Z!B1k>e`g*10M z?^;N6XS_kjSItYJ(tH~@Kuhy&oCfPl^VMA4*x#r{IT=zwBu75$C_D*qbcvqYoc^zz;Z%dIlH$}y{<)h-<`Z+i%J&=|j z$jJB?`>#NNZzBc*`S?9e|Amy^U;ov|_Fw*~R9s)_zx>l!>(GDoW&h>R(NMhq^5=4$ zu}{4J@=vF-P1G3^y-{asDA9lUXYuN;_wK&}fiWnSet`gA$mq}9X4?MCU*b?8hh;io z6n-QK{g?kz=Wh(CWB`AlC$>KQsWL`K|K+dHk!b>&Mgr=Tf0aX79U6rVu>F^Rt#bru z`5ADO1oFdXVu1YcZYnh}5C|NDCo2$m3Cho)#nk^alSQI=2~8s`8?D?f;+`!9dJ&Kr$Z;)!q)Z2B+1>Az^t11=;3(Ur8$ zq|HvN|${THjj0P02SAfbpMy8rTT(tL0>NzOI-(SNbB3@ApzkjnI5 z{_Aw9u{+e_(1)U<4h$8F=Vo0ztX~N#t2o<#`EPYXh~=>QrJ&ONmw&sKiWL9(!W(WW74gp7};;XwKoVn2<7}@7Mhu=QrVe^+I`Sax^XK!ZG-HR!+rg>_96jorKruNHK zjf14B4VNQ;oR%wbQ^hd~Z1YSO2wFyiFpkIpCKG^Tvc zaOCS+PA)RAtUQ*B%~8)~Z8I2%a`*}3qAY|*AD+#GMl%BhGXpQ;cNjYadz@JxwjIXM zfs`_kcF`Mf9z@eU=ffT#~Co$P)1RYL@yHs4tq4`A*R44iWuGI#3Z z;Ym50pmTOXJW6t=Bzhlq29ha)X9jrWb{M^x;vMl#gh_`mayg2FJ%cl{9==~mv|%*) zVKmDTyYb_=Xg7tB9!;1*pBhHn(S*#9GuaZ-qX}~~A$6b$S*}inC8S3a@={H3WQhym zS^a@HWIn3;E#rO{4eu7E9`>4s>?6eVAP8+EY|olQoTW+%t`qt9V< z%nn|GRQ5a2&wWWxEkcORufdIaojF1hkHfVehpsdqH9i0$e)w(FQ<^Bq@+vi7OtoK1 zeG5c0K{T2=rpE!hVJw*-4L8S-+YiYunu;s8EIB<@2T~#ZSgrEwdyn z4Zo4;jJ6@vzYQss5Tk!}E`xR&hI@?L492E>rRZ#UJENXsOJ1qJ_C+048?is~@9utk zUJ?7j>4bMe3qQvmg^Rw<+-sYD=Q*g}J>R82{TiiDH6j+KXWE(349NRp30}TT%Lrt6 z4}<&EIFui{Dmj88r+W1TcCy{*bb&*k5RRtsUDHr?U3f!th!;LK;}zF+PG9tJwfJr& zZeu1=5n(>wC$I~+W>b9#FO@6$4I6z*2KI@S#U3fng$?7S6kdSG3;dAIN1bO;`4HV) zL?C|bs>m)XzVE^J!w||nRe?fbp0}0+6Sy97CW4YBPJ~D%{M~q)L#`?bD_<;B=_>OE zh??!cc_FI&fU4%0Y#sP-k*zkYP2y}vEDvbqzjZhWainnozH*3j@sPX@I^DV&h2f6r zKR`-D1`Ymg9~NBJK!?2jJDjWt5Y8ZyqSIyTp6$Ogk=UnfVw-BBbrGG~r)_E)$1f}T z@6x#bjF~5xyEP_jfKVl*`iz!p=n#jA`R{eUi`->xOh_?Q2R!IHFDF9y+Ne6i`7)#I zP9BWR?osl&v*ZIkm0>6i$LLz>Vqv_Yy{tSpq}ssAbxeZ7RxGx)zP6|NJPPxH!FIRQ zEE-<}zG_uf8?KLH`wCxjiG*VbqqX?vnlP_7jT^6KV=urEGker(X(yZ{v&qA7y=OzN z?Ib58uiUy0yIn7{iFh*thc)aMFrD)``tlC^Q*-6;I1#O&t)x7Zo5E@-k!h+5N@=a7 z%Ua84gvw`y%1QwBv}#-i$LzaV8B~kw(q*Z0SWuo9k}D)3azKmxe3Hmw*KtABB&~4sg;HnP z`x7lUS47jXpvqH714*@FF`d!0rnQLcHC+p7bQ%|H&@So^)qufg1+E7)Y72hsy*0tW z?SN1-&I){nVI&KhI>Y)i`Fp65zUL5xs(ikjh}6~leBG;|va|fuWY!LcA0(L~tLOA# z89crt&WpYrHHy_|6f441YIElkdf+VJ`;y4h6D@(3c#%7rkaXjr3|^QlrT4Et-I)X97TG(*wkc#;{F2SzX{={KAy z%+h9}!j-to3!e}S$7+-_l}6f0G`l!yD4c1OYV~w%M~hTBlnUph^1eqIa~bH~K4CgI zOPA>6>F^w!#AREroaq$Ay?u@vMMIy;YSC`Q>|;jR-vM`i5ZEK`MKiqOo=b7>0!nLU z4Ab~CK@nmsg_txGhwb80j5AWI87$ZiGc5nIao2(N5u`Wsmk7kTUx*q_;2p+22qHGy zvq%)2g+p~@b(Lj-5a%2TTZJ$b28Ua7*dt`A&u~3nRblz%-#z+G8fATOhQ6g3`Zwat zZnvTDSt!MScIfL@yz~p(^V*rg5%7Bqef=0)o@VI#cX0SO4t;~@jh%_GgXF>PVN{s^ zA%oqYL)2{d=3HbYKK^uXnFg(5AdwjCy0@l-FnO@+Zk;8B-odWBjh~vt`&R=U@^&%U zT?~XXh@=?o_C-qBZepM-1$$|+@bVuobqPB_w7Hl35Q;C4iS8}p+^1Xy221Zab2%jkF1Ie{SAWu;x`tb;oTo#AMDIJiC6 zk$UHBN8BuiID_WnSB;UPOB!yb81Kc$n!I<@ad_9Vm(5sVpVp2+^6QD9OPInqj*pYt zVTHl5teK7Em{r8dqWL)(O}~b0Ia8CzPANo69ypcfgi5jfA;sZlrIEkuv@-!Vcg`Tz zutB_g1|x78a>-df)pH1$DlI*Jlo%ZD#x7vzkFia46lq>*6ZPvv|C&gYBN9n;5I+=x z0ls7}{NK!;i~(~(xjn~#CfDhr)vGy9^<Q$=Y0!vag&A--r08op^Xvhe?Kr<`t{EFs$t)Ia^we zv&BCmz(vWCEAeB;^CJS4fX)w$2yBFlR-^lcBxg&zakjJ@Q&?A>he0-VB$^R=9M2in z&l6T7Sv^Oxc1|IY?|Dm3kCTJj&UQ#AHIg0Hl*iDv`A#Av_buqut&=7(kJY^W8+z>h zf^k2FVIkYZ>EtSnqca=tb{wT0O{2|>B`Dh*Ijpry0nXfNB0p!`Sw2K|^4Ju*x0lZT zGU&FOpp$HG^XB{jsH_W~#4r9vvQp%+^c&5@<5uHd2ky@!#@vK7Wf#(hol7qg8RoGt zoXakxWX_s-@sae!#ACd#@>uJ0OyZl2`#rFoilJU2lf&lVfUHbs)|1r*1bHObSx-h+ z0GuIts${fJ08}GcbMsiWjvKC4_@@!f3xgBfCtaYF5qky;z$sz@+ybmt>?KU|#{hMv zmKotCJ9;`(ObX0c5; zS8VGv&Sk6EWpR@GF)ZSS3#klzjT3L0jb(fJOCZ$6Tj9$x^NRC~d%;CGe~vU3d;)=( zq6pD(vpwK9L^p%z(;&(x(K`TUlhwL!&_B7cEx?>0xJJ==W;-C`qlV=;%5x78n2xhd4zn`{B|4;OYviI zI4pIwICXc5Q~wol8jgw+eNCLJ=A$^$e6h>LX>Ao}^Bv+`{RMHZc~P9}y2QDDEKE1e z*FIgG8}#w08>0ekxkH?r9vA19=f$~|YjfVoQmPB6($>^KoD>&OrLAIs*;>Fxf?X}; zb-{N3700Gh+yQL1%e|)p`UDn3J$(XP>ORd`D{Nw)WU8PTD z5%ia1SLxH%Go>-AKaX9d=V&N?>?%E%uk!VaAG=DQ&SEoBXViM5&eTxi*j4&0nLxbf zby9r-JR+CbC(r_?FEc*C9=l2}aVU^O>li3nW)O~DrC%yH#7a5(}6Pj9; zUZEq?m^6(9)T#7U4rO&{UN*oUyGmc{jD!)%&p@6G);~jG?E~e9$Aod*s!w1HJcIfK zCczm@A!((F7!ZQTuF}^z)U`v~9Y`wqL7+Kyl^%9l7*3o8wp!3U`s-l8%>r~Y+>1w<$_I>!E{0#2rUUjp@mQlYzUA* z6bOWbKuilHVS^#mkYxn{vVML+w^+&O2?oH=u5=1kwDC~3Ke zDu>+44;t-Ly=#_nvruF35cv1CTOzlDs7u4!+H~sG|+6j zO2f7*R;V1xMa#e!#2~%xD(w_aXQ0`3m4f&Kd^|7qr?6#}4^VPQzOR*v+!P48V(k|9~v6>4KQt`H3rR~!aV&%^v2RYog zZUt$!4X0hIDeyf@jYI`?yqkLDN}u!swuW9<9S**xm&62Bd*@mg$PGQ|vj{#cB|Yg4 zJ$(OiaQqEDI^fVZ^cZ-O8+sBT-VHrAk-!Z-IwY}|D!kbq_5~k zo-^EC_#JWqesb1R;PfGs&wUQC7vp%Mbn??zrNe}ac-u(y@X|?N&BsOArUfDT1Y!Cb z3Kvr`5&yQH^tCKqOuBesWls8WI&5gn&0(&*F*+3E*qG-Pc{^D9Hn~|Um?B?w%xF=| zXn?K;qd8>D-jC%Y25;2b(duNpdL$!UzzC9m-tWb0u?}%(RmO7l8Y9?KPX_(acUEPr z)e*dtQ6q=Z5Y8x@1TwzJ8hHLTqk@4kq72*}lrep#K;4LcVdD~9eB1%UEn_xs38GNF z<7gge&S9uSxO*qE1#j9{+p6JY%$q0V@*`%m`vSgH>10&tPHD0YULj}SR>{398Ot=V zFrtsn*0(nE0p*P4yg@HCz9iCt+njeaZD?I#-h`J+=QC^yPQ)bMGiiE~D;IA=a4PS5k= z?D?ZOXGc-wI5WVlT&dx`$BT2`PI1oXrPRqy-wY(0)bu4FO?hSKVBX+3&Wg2m&=;L{5)3Qn4oa{?0(O&@* zeJjBJ$-cC5s+5UZaab_wbo~`H(fQi-m!FJ?xH%|ioa`G6C(7JO06Y;Kadko&qXORbFvR6x^-JcfDQt zc?@Ar9!~agW8=Vx`y`w}Oouhdj{zo(iB4H7)+?7-@&ll6qK_q<70$9^O>|0Hu?o86 zR(=rCGtnh)teO%}m=myXqLW|6TI(K80wODh37R$0g$(O-JkntS6P=aa6_LaVVz6hT z3!TFPCOVr0m%|Js=bPwKYME#XG&}U6=qLm4WFJg)DIT^WK9&_+z(hX=u@oDbBv_t_ zE_|^G5+tM&G|@#uY?y=tm*-ckAbk^EC_LmLQ9*rk+%quD`^D+A*k}j$0J=^ox;@?? z8f;0Xt4wsFy1f_*SfG6xj~U5u9sO)%gx;~w7GflZkU1zHDE*Mn50fvq;~IUq&x8B#|}8P!i(Xu$O` zq?QR3q@q;w$p;`tTTGKb$A?!07i6J9cb>uI-9N!*6YKe3$X>%7@3(N9%OUNx)aS;d z>VJv7mf^Iaw6K#xJ2K0Kiw-K#sNkXl&Jp0EgS*A)&{rF5?w7AE?EX?yI>(8#b%!|H zFB50y9pda}UzD11>L0~9Ef)=NYRVa0H%U!7^LTN3P8MfRk2q)FEY3OHRF#^t_kD5B zi$DibQ_e4k^JUYPX=}d?=91WMX{!iGhjEs0S))2njHp?Opq_I#ovy!pODcUv6>z`YlFD>%0$z5edpn!~%y^ES?8F@j zWJpn`qAVK$!IHuq31{F_t~rSEt^jxsP< zaz}y`k8CMs*+vDQ30NfDosT;bevJ^t>hIIC;@#%mksy4raS$XB@GL3ZksuOclMy8c z(VLkV!vsyvnBtBEp|HY3qJsLCluUNI1#ClOCOh4dn4oxr%bi8=;1oCMWaqi)y@te3 zcItpbPj(u3lF7~lh&S136A4Uq>Y&)kP8}9E*{K5)COdWTKRVgzuJ|7Eoax?$-=Vz7 zHF^yNP9H)agA++I+3BvD53?i-GeqVR+h& zx|o;q!piW5h7OCJ?96a}4C@4jXX0e1glufIH%N(LiE+5kLEM~X=+(p6ZQP6u=xmxv zO4IXTRcXJm8GHUb}ThO89ssr|yXF(hELtD_HwK{@lzK!8! zO8>(PnOi2gkVnfrjAYzuaZ~xl~*U)V42V|q@<=pFpx!A0vbFrZs4W5*3fP_z9nZ7~`PzPUuysy<@52VJhZ$ z+)oaDX6S^83(?eu_A1hc#~fQ3OEnKaOkBioQKH0?sLx%`=n394jQcAL6y5>e;WC=m z%3SYEqCR(-xnMgdJfhNZo`)4YSx`l#UqR56bqJg4RnJ;o-_%sHSFnm*Zy{qHQH2dd zcuEjcaz#>M*A$U;RV*L%g}R>dZW^g8b;ZpxL9dQtx$i~fX%xt>3{TG)SJi(Xv`fwh zs5Bl{b~!?^Lu3P-GYtM78?U%zt3Xk%BjB0Dx>;$i0Q{kG4mVd!G8-L{!%=8I8G)-ZoOM zor>uwF^t9>=p{yDM~JhDh8C`!yIP#hKN4rl3*vOXC(hO?G#$8h?j&(`?iOeFRpOj_ zpE##++Yd%#JRpwI*x};z=&{+JW%6})w>alqCC=W5#5wOJanAo7&XEdIui&^U3%FlCuF7y_791gu;AB#IW)lgI$M3eL_@ zV_e0VImL>c1j`#&316({f`n9p<0_F5D}N3-$mym+7zz1z&k2Pw=q@x86*O)N`U3zD zOE9)=NWj=0958fEquv}{p80Cf4{g3;D}hAt zdOT~~3^mVRF~{Ce(L8^}M&AqL8hd6*Ops@Gnfdz6Sp*L|#A{ZZ!W|wzeAEGl9zGg) zlHp?l#2Y@^L;}M{9TYo!)M0VMM;(|jeAL1J=)*vFsa1ROUCTKq5KcAlVm6=QnH;S)j}>|Ckd+|MlZ>C zl4xMUPLdx;oI~y;(csvfBz)l;qnEgyBy9VV>?C1{>769JO>hJSA-VF42Q`aXbRZ3fTV@gBgBH1t%YHL(kcBY^%% zILO1-%Ddpn+3IaMB(Z^Q;FTs?s<3Jh|q|NlB^8C`^Q6a;LMqeLIRuLYyf9@rzW{(fQ`#jgyUg@#cRYqT1qThaGfC}Ugw7x}$Dj=~uG%vc z$eQBJQ6}(Q;}&7Wy_bdXYcfMcD>aZKZS-?1vO&HggdhGDAEeN?f@DDG5bfe+wMXH# z#m1$L+LYjISgeuIW8Q4~iE%$cl4H^9mr`H%n!qRstIKA!An5bYXV<_{<;<*w-)-RB_cfG|9fZ&8!-r>*Y{ZB>gnz<COe{ic-Sm+Nt1Ukf}VgBPSiPrOWT7y%B86+7uK-TH??) zWfcKtXq#qdw#67sE#Lx#7e-?+wIn7e-WW`sMX;NanshCp56w$PyfLT)4s8q?coJhU z0pb~hHj#iasDomSK^+!n4C=rHV^9Yt8iSs6f}#)ut#Q#7Cw0Z^$aALqNBj=>D}Ex+ zLp~Au5Xxa=mX){{-^ov1wHuIZ&k{4nVCw4cBQm=B7>G6oQ`b3;e@)A0_Q@AxZEuU!zFVReQ_G9!EO&I%_knYwtnP|L9 zL2b|j1EXA+3~26>;m5y;9O~!Pr{eHi%j)lq%R_3Rw(XM6e}Q6i`7$TeYjbBMZ^9G>gLgVwZ<5obZz8FK; z;Mf%q4J^!#TLH-uQYG1kSOL-CS=qrAkn4r3%Iw$`5b7Jo5XfT83J5E@UIAHxXagt+ zt(uwcpW)ARx$kOd4i-WN!ZU0r*@>Up8}cBC^n})&2p}GjXlw1pgLtia4}R#lvn2&7 z5hrv4D=ef5!t@P!5kM@g+`^a%qmR(Vq{vcBGBgQY!blvNV2j6&E!*Us!F*ocHC&Cl z5@a*oDL@$UM|i`(gKs3-04LNh4crLU-!LoKNU^NnmfC3NAV#o)hO;qr8YK%XQvJ+| zoY#<`<S4|xMD+E7<82FpO2I0VS+O8>lUc2F=Vf8XWHZp1+GgFJ8G28W3 zg!8EU-3;L9z)|yA%2(h!pKni26b`D$0m!pa=`!RWGw%IBU4*(hX-6F3aBm%VE#WE0 zU{oR0j$^^i!6%EM8UA6E;gnhwxvk$*&cugTcXx5R->Jv%Kf%_*iP_HPe;r$E9gazy zHUasMx3%n<*|fiB^VtBW8G41yXWFTdJ!mOyrO*W|cXWue=}vJvelE`D{}5+O8j2j7 z&&G(ewOgF+RI}8Sowtg!`w4MQeM_9vvQcta?vPWmDQB*cubvI!>^Vc6vu_aRoF~ND z`<^)GWkBt)`HZJ!Qd3vdiL8l99mMh< z!O3FAy*>PHjUq#e3YACU3kW;U++!8bXRFr;;15LhHk>R<&+OrM8+2sqpT;qJ_}x{C zyeev>1=tl5_c&F{^5sw7vEI*NDB(Q$S%WZnoo6*Xc%A1YIERr*Dz+a3OmKz7U8g8( zF|+cBB|iX~6%w~eeUGfL9#~dng~Z*YC~3u-kw45Lqz~f+i~@?lw(^RV^OLzRu%fg@ko5Pec+Y2=h9Rdy1xGU*~bLLc*Gw zN7Ee1nH3WE3|(s15+v-pN!Zt~h_M`4<>)z~S98YPh12J&TpSMh5mM&tp zxpB0b`NccmGG*u6p_VQ}=vY7e9G}VO8YOhfr?2&rUL0 z&0O_EKyrdM8;{mzuKo*(jBRQVqOG~iH54w)${c^Rnz@!m46D@(D|0fB(_yhY-v&6t zGGS9D3`k8#lEDn#l}j9t^3Vu(%88+Z+3UdYHPj@{-yE1*TGQ-qv$pQm7`#grx0gtx z;Eax^myD6ncPg>p1ovv`w1r+$ykDyONtxKrm@gjGMV6}*VAFYnI)k2steHrNtkn@b z!!Vzlow_1rZ$qwramk=AQo+EOVhjxGBGW$+s5_QRi zrzBFxV#0W9EQcbI25KmWSrIn^3M0sxE*cmF@DFtJUy*#ad>@mXRI|-Z-MhV-;6&Oq zIY(#aWStpTXJ(VmOjKuP3n?&bl9_JJe!kAk8TxC2&diyb{mD8rXW6VtW_omHX6elA z(WzJJ%$)0IhT5M0DL9WtE^;u}o0Bkxi(IVvadMK3;UbrqsUc@vH0vZNo?W=vj4OP0 zVUg)b&>XMlaJn%cCH)QxeEhc7%}q|$I=1oz0tY zsdPts^KK_a6BLWcL@Xcta|8G+#1 zHKE|$zgGv;u-X$Bw@_2PTwUP-oFYZeacVXx!3qNTuFKDYF?4RRRX=H*85+!3pZT$h zRZO`%>i(pWOUq->K%|~|*AhS_b6N1y+*$+bEc{vt|22lc(sC@wHRJWZ7Aa6q&_^;& z^~X38rAml@rc?^xhIk=~m&rZgJ|Q%lN@;`)R$SN`Swx)X^5WZwy9U40-1!JWcFRNM z?CZjKFkmwt6wvo%g_g5^Rh$Zx>8+bvyEkB7X17tO(22~ya>_%;p8)ubD@0IBjzNTD zqPXaa9tcCtQc?@lJwVDJMCBceU&n?&=7l@6&HFQQZ?&(1Ww=Z)SZRV4!oJ@^%ZiWE zaO0yI3i=r*Fezt_-2E7+aly!r5_F~6vNDRe44vk#27xSkBjTO$P03&-^EDYm!axS4 zf~(7!Dj_P5&krMmI{aoY+{@qsl>ae-3|7Qu(68_D*;~&{{e=W)%cwLVdwx_$39`~G z`I%$rG`9lLv*?Y8_Xxk~^wz_(E)&Z*JeTR=)y>lpWgagfqDRfU0TSOMOk^?BS=6w( zl)PFJ{;ox(N2A`ZQK%CJIA4eLitb;n&>pk>?hd?(iRn`YO z!sT9s4|Ih2thwR)5G+!o2iFTUZfV+#w&JrN;?v1u(;#(n!9TJlKO7T2pcJzvA9|Su zfKYEuUWYgfsee&(k9WRt_hM>oA*fWdJn7+UIa$=Hg{+Sj%|5bo0O;E+Iz58U8n)y&1=UQMb-T)v73sRi{Za3~mAiWBtB}94|A4^H?M!>4qAZld^WqG3oTrVRVo96fXQN*&n_)|gT>J_j(&{M7iPouJ@7Lv zunx1~d^=J;bub!Eu@JVv$T$@{PMSD6oK)*L%i8cpNh|KTJniA1>xj$yz(freX`E0q zZL6)osS)JcEkyGt9|9cifPD{=Ms7IJ$fn^z>O+nqelughO8%(CQ)PHE00$&mLhcK8I zazNGlD=oTqvti?QP(1>poMZTuo)fy1B{icS#nJ;RHS&-_XdkBt)*^7F;Czjrt11te zVm5?orJSxHEnS*dvoxi+ENZWb61w^Z+#9o)#g!ReXE&|*B^Qsc{PQTxQ6v zGp_n>7syHhehg-H0k#;RP1_XU78ATbNdf-Vz?Pewg|7AsFdk+LaQ+HYfaxaE2;-`I zQXvs3!1I9PtY86-H$a<$DZnBVd@!K^v#9=fUYVsRCn_G-!vBe>r1yaI0G#diYT*MR z16dx08t7Vh14pwh4fynG;UlbtcOYoh*9^s*OgvqNw+3qD?W~apfU9fd9b$H^G(~Kq zA2eh_x1KgEp+?3d9im*XH8k!vuKMm0(2{b!5$Wl2{k{R(1WmdA*aTN1*MW+;lod1G zWUULZ(5+IYt63>+_^kBgI2k#d!Qf6xm6JT(@!6cRz(TN|AN1wncWT0ot@p zk?l3Xb;xC)$fPZuU~*)07JAXIit#X8bPpmyDY{YpcHy*W>z3`?8ZF7y?`e_+df#FYMbliPX-+US*ELBJw#&$>gSFE1E`CB;ob6oC zIXk=dy8bPEcvEcBIXNee``=%C#l!Y?*Vn(!@@pL$sT-$4PVvjHU$WIL?EDV)T?%ez z6Q|<$a8mKO9{1f~>Pn>ra_gileFxz5ufT#(t~cw9$qTuLEQqNl$Q2sXc@J42Twe{e z8bs8C_{pTt8DNsbfgwhkX+PiPXj%ay;-*I2^sHkTEoDKr+&Gw%qVgF#dNO|8l$m_* zr3adwOAklZy_;HslN_`vf7%RWFWk1yadH@-hBQS3PQ zD@4OEU!o7}l}LE*m!Bd1@>;fgIYI|tjURgja<+RjgNQVQEXkvWL*j+VDdbeEDa-z_K8vZLh1ErTGAk);X;Bwd25v1jJORyUFIpy^Nsr+@JoO- zk}FFX4hd4F0k#--&RWOW4x~{;x)UFxNvg^~^Pyv^Kwz%}2F6ZDZq}LOp{E#k_;HT& zBxv~88BJJCIoId67>sV?j^$ZfTa_?5DQI;#QjGDbU&kCZRsb2{CG&JEGWb={8&3tw z2=A}cVU8Tvb0$pq->?6C5BguH;`gFZ`V0QCiqEx?T{xn&v(yPY_d$*+X1PS3x;76J zI%=9q#q7iv?{=e7dkZ55-RlSZ6(6%Og57Qs!E3cqUphLsY>*vKcH>f-dGn8$7%=3sSg;9S2i-j`qsA2Zp<`oh>tQu zL--18qf<@t)6lQzctZ{#HX>ueq8rOz-Sg(51BoZlx-}4&N1sjH7h~g&o#%wkjgPyf zH4yi^eq2eHOWU}arK=M=HCwxR7->d){8CJ(2T_o9$pY*Kk=#cfNo?~FR69{ja`O_% zO^?Iz>4k+}HFVyHl=Se*XS2T8Wnls-oItW*KH|jZqE5EVr3kU_c*KVMJ7hKF5BzzT zQZuw;9`_6ubNp*mvG+t`885EtRr9SXBbZc4dnl4I<;2=5X*Xf5R_17BvpAIa7UqrT?uzIn}_Y| zJ9vOiuSv1)WV`p^H|GcV@r^uYA=~A3Ryp*JaeobO{ul|#mXB=r9R!Vay!%uJ=Zl^Bt zGIS|Iiko0ktHTMn8=un(!Pz|~#skJxMH2jw`TRv}u>E|&3wCnYgiK+bTW10{8}}`w z!Dc!r)e;P+%$q;etWTaC3RtJqS|^9nDNV-@UIoQ($eDKd|GpuMvt~RFU@h?fkH)}w zJ#FF`cVr1f@DC1TQ=C?GZ7Hf;I~5!8mFk^#uz7Sst9ZMGu?Y%z6_)o`HH888OzXBinDCC;mCw$%8DmY0Re+Q>NlJk({$f3Je>pAXgqt$z|{dj>i=oWhW2$x?P7C10mDiF4Wo;+%1ZIA`)b)zp-pSH;=$7je!Wg$_G4 z<(#9$*}GAk^Ue|H{9EayHlBkHH#K$Lwc@Pr6{q=Oaavvyr?p?4HXI5C=7tI4Y@8=f zd$TwvpC`_i8^!7Tr8rx8_e5%H_aMwQr>1T@Qk)%Y#M#*;&MAAu*>#OLXYkdK)YLP7 zAS~20Qf0h;df&(S3SR?but^6RO z_kx4ujWt!`33CGWUvMD5ij_EzcOS>0*%usy46ArNl0E&wN7h*P^C%ZB178s4^ambU z6FTWiaf(hoYklywe|e!9j|Ljf#(D1!qrx;E}a8 zh^5%(B*F4ta1g%OA_)>w@lJo>ku{MJ+o?QqkjF>$tRVdt9E8FzJR~ZpBkydPY1#}7 zF+=M+aiR4vbF~zavl`nwvC`(0xWm~3X3GUD?g*yC+Sb^NbENJ_(&n+?M%nA(j?&<0 zc4J#d(+0;Kt>HuQjr~22J4SzxMD&eK-6Zek>!5s)*wKbVB}D#~&0BvoJ!n zHFtDw0~PEBU z-X#F`0zm*ccHFxKbfN|2(FZ2Ks+mM|;M~I;D|Q>YY#GHPgjtC#j{5*Jr`V-v1(J3I zdEp&Ij{9R#4)!$hnlCaDJWZ!h=&&>L>3B(PYi-@+xIYz+*-;5V*Jy@Os#u7VY&|MS z6&@0O$QCyaMNQtex8lH&`?%B(c62rwEwU$t0DC?iK9bE0HN|m%DWDMyfN-7`;jmK_ z;b5)~Q*}J5l=i+->?Cz%8KH0_uyZF${8fq0e$$6&&3a8B>`ML2W8SB`m50C`_ie@Q zRkJgkOOc|qe^TsiwJ696qyW%Pfqg6l*$w+}-E^`*a6vM)T57|8i`+*r0K7QvXOb&+ z**aGv@PL38%-@9OrG(I@*%_tA9SMq~)Ogm{C`*6zrsC&~+GQrleTZ9A+nU%H)ZC2)hml<9Vagj%|*bO9|Wu z^zkh?@2TcdXsIVbvXj08wziwpOJJ<3ITO0zjE8CCsJiz+q!xH%iw(z?!ST2RqMpfh zlM4SL?tPGB^v{TKxcdoyqqLjw?h#mW=1%?JH~%?%f-U&}I<|j5b zGWnD$PF9onoH|L#DANULOx#6T5wCmC{MTX*N? z#vND{_;@ZGP_Fok~F&VLgPJ^B#pZ-#(MDPZtSb<4c>da(ko_<`Y7}+yRodY450V(C$ zsTho}NMP9|aJ#uTXOOz~&&Ys(x492kMF6IwQ?s#s!p?QcSY&)OoH{J- zET;}kILoPn6VGyb(g}*fJIk52q7!+}b@>!X9yK$q5oM)yG}pZt0RyeXz4%Uk+Nu;3 z$sk{QWjVx2Th00an=J;S&vK@%p>Scq4f4-&rmY<&_)#yc3=4fa%)5E$Fn4eziVSzj zP{Do54b=Kj1p{MJ3>-TQP5%#pxm)jhrCbB8vQkENEt(GizGjlLniU7j`bGD4u{-K z%mxaR#}0E{UZk8y)^yFzbzg%&*Zl;)Ll1Lv-4JU2Fs^wd3`_@e5wt7R!nT1zi#?eb zYSSq?I=?6D{JJ{7n{;0Vfl6e!F!J^L2jD&|edDe$Ui7oUHSEmd(B7w@2r9 zmd@`UoqDCt@40?{vyidDyq^cR%M3yDGbrI?V(4Pck25IA$;8kljKrgb@rzBv_kd`a zP3s7p7u<{^E@&un-J!_aaJJ9kH2~?mWjW+Y}D*>onzc9 z&_&ZeAKixzX^h>8tR^w+Bf!S!*D)M*I9VUs=s5YMaU{m_#+gF0H;#ggjWa4Vy7}GE+&m54(=-h#It9`2MCgW75D}EIm7%$yplD~g zd|-980KA&jkmJ6hjkQN-ArrArPK6Ko^lDh8iBX=yQyjeLv_icE>4f8LgK#K)+s4lB z?fEg64~6wMHaK3FmFj+g_^ECQ^&sx9B5t!tNf*>uGVzy#guRKHa7s#BM`zP^Cmch4DZ=}gPDC4iOej*j(B&6{v5lM~+e3=mS?7x9~+{sX_6xANz&h>^)p zXMh{wsnMO~jm_8?(6|X>gl*U%a`Pr=M3#kgZtm)6#hG*z3Eo~2Oh;KL2g)&!kcBkI z#WS0LQIMKM*s*Ez=20*0e|sU2w%o(Y82WP3Ly^`Ox>{(EC4nF%Uq0Zfa|?7=FEXZt zfAuNM?5u^=%d2V@FRN}`P`kXYwx+tKp|PfFd3AEgu`6+Jrhrwlh|6jhSa>KIykTu! z^+Fv#oD^QYylz=lL$#CgMbO5&s`{$sPHHloMJsC-G%T&HF*s?-a27Pw);sCRAPWg` zlR;KBR2_xsij3s21}8Ha0M^2ahWeG7Awyw6GDON{Y0aWqC-Oy5Ex4>NL|IhhWG6*f zva;qFCnp(b)zbO~7Hfl`M3bQ`s9jZ6zqAUfp^eo8sl7Wv}xpY~>(i+KxGd>wcAeYXBWC&iZrXZY&$xy25>#Nr4G$tj3*EQ5H zuU@VZ4o`-#Xz3cXO_IRmWbmr`#mkniXmF+^15$h0a5Y-2smZWv>#FOk*u)ehgI2F; zKxu;q53Mj6+JY)DQIrg_Qp%t>8R#foKGO~jBj+oel4J;|K0>+l3xJGX>Xdy6MwwHd z3}e|+XfKqz;tPO{HPwrq>B$hJ-9dG%U0Dw$pOFkjy0(=yrt6uR6lDoIl?ALtvyy=q zRxem4x-mN$)Lba-wfD94E1WrBfVhxt68Z(=9gz%gS=I8R7FIcPlff2NFREI(tbr1D z<|RW|S;HRM=<@tz7~*De_M^k{8-L590pdjl`!hd>A>W4 z_(nx*j^l%DH++klO{~r?Cw!Z_3|^o)QP0M(o9y%z$U{>m5G7achDP^!wI1HD z6b(=?r}3Wg@!aqW>OSI0CSFo}&?{E>9Cu*DwwQOi0P<6o5lu_H*2rH={8&?{xhFU6 zY|6tm+IQi!dbm%eKpyz!n8FGFTrJn1+7^FS^Z`&) zP)_(aQt}9~f_qKP0^10%;(12|ONzcs{!=7KI_+C_)j-(k26$9$?J^qY=5x`q+NuVcJ&xEiOV zb1`&lwCcSLrR1bEnf4`b5vpHGvuR&)(blwT$WSy(o4XKkgKj$Vb9uEfZg1J#<)pN0 z{K>hHr33+QlMXA)g;L>jGZV%{m5xS5OX<`Yvm}O5>@YilZ;d5xSxoAGH&6R?QiaI)W_eEa5m1&W~$38RMOc_ z4>=vhny)_n1ObM~=k$X}&gM=$E3cG^%Nxe9{~keMQ}Lq%-$Z1Us&uMDL6=v)3~FiI zfb)z^m|(E=F<)h>HXNVL;d-FTQVRn8qRLU6O<+IJ)PZHGT=N;lC$4AF&y?^s3>*Z* zLW4=R@5W`-HH#aT@OcpGU$EhdKoMdw!-7@59M@W5(eto(z?q* zAax)-{zoBaIC5briV0H$=@GC5m`&h+KG46I*f|QPFe?u!Ed* zej;?n(AI#TvB%KRP>*O&VZ>M%FVse=w16GLiof zi2Qnp)_{)uhKY=IGnuhs>_+^#ixbhC@9m@VVW7_<$y<{sYN%* z+uOJAkh_=E%>%UjCSp!ngmUu$t&Wh&%>!a&!3H1i8fsB=Sp4^N7DQFv3;PQAUf7DX zUnie$tGM2LqHd0;@YjS&7r4DSLO&Fq?F3Mpx_D+@Yyd~?2kPS<>V84R*GmK`FcLt~j!NXTTe^d)|_n>AOb@aiA77=}Hw?+f{Bk_5<;-7cYW&C?1 z@@Iq`@PF@>@$bDdKIoOPry_E`1I;QAA#_)C`70$E;yaiXs!_L$D7k-nX z<1Dsuev{(I`JL3S(KwQcBM%)g1bsYpRd%3O0#yQ=%j93u99TQz%?EN(l~o| zusYAsI>ypEPYWJHLBKf9WAqDj^zk*!)-cl?wM!JJ=&;!4$leVpWplluf4`-Fy{1oV zR$VW=j*?1ugU9PlIx#4vwl20conmjOye=X&IZTD6nWg)|XCk^IM17D>3Y`PTcxpqI zuJ`%FDJL+xA&b_-Xt|ElQSDLxYzKL7pvk&5d36 z!2SoFX_bLXK{Sb1g%iorYY}E?j4<_w08@VurbbK6d?UgJhZ&8tgz#RBT=b=upeDC~ z{HT@oh` z6(>j|)R4Ddasg#tnMX@&G;6}DJhqBDKdXhEiKrGFIH^r}YE(yF13s`YOzWK9 zNwo5u;f&qveI9OXJ{e`Hu&(lU3G*7Wlv#ttUS~8;_|XasODmx2rwEVXFz0U6v6E#E zK&40npw>**QvfPef3Ka2mMC5O>k4Rc78ue|^creyxbPx`71iOR_zL)b%>=PS%rK|h z{Wi^9uZj7daX$g>0n1#QVQw;{(I(x!u!f;kn>1Kz4LR9pIGILHZZvcrGp;&0{B4jc zAxEmdG#)JcZC*$A3T_69jkb>&*%U5&9$_~CT=olienU?mJULCkXMWIla+XD%pDNQV z{U*^>6ZB$nHSkKt;5EH1ts5|4!Tw5hVJaJ)n*gY&q7Gk_N~@!RpK1t_oVH++}vdr8l{qfBR znkt>v%^4I`xJ!MTx$`U$W31k3ZW%-hkRR)@1K~p?DF3rkYp}3QbivgI4p7 zxVY-EjFOiSuIfsjqO+nj9%CjiNK_3osEHPKnW3Vd4Qnm*qgl`_))M(cMq1jpHDeP5 z=AL9YaIChO_Zuqj8uv{wz1!yFSTUoI+Xzvc*kEn|rE>=H;z8(Ji0b=U(8(Pmy z*3#|;ax>+5F9{ds%u9gP_2UlsJFM{YqkS}sRGf;&1P6fWlFa= z;$(!Oeh!F`=tc6yxg!;kfHx3OI@Kg?Stv(MA1$3o(I&)}(d8JShTEf^IUG35G*K#% ztQr@&eH<#~N`zkngtDdZ{D_|U@Vo*~Q5Vo=HsMR@rpiX|W%LiiWo#Hi9Y8#Q0Iwis zFr~dFrALgbrbQ&Bi9nZ>me9kLHo;RGk8V;GWw5aCT2dzEOM?+D(BlGJIWX7C+aa{K z2k=&nyMbR+$1q;b!|?x<@Fkl?eNx?ah&uf`)KL_A8wMp}h&k#AJ$5)~lK=4(UE*gV zTFC^~2HIFhWN}#Z&=!89i06utHmnngVT3YYMksUfRluQ4zM;?yUT}N(oZlj*4LiuN z@~puiT$T;oMnozL!E*&XMKl77hvMsgeBoA1j09+E%#J2d z)#IE;y>ZT?qA|`~W~I-Ns-LQ}sJbwNH4zLP4dDE(@T`JoJ3IwTz{GD2`Z{o>9*dOi zLfEau+5*o(de*}e?gr!g$oSd#nuM={tHAcVCUPGm|2R_iLxi0OVA);pTuv;GTrE~U z3@>$Wq;N077GR&D&JpefY+=?Z7ODbDmZJ^#F{l)|t`QDmJBX;6w)Rmuz zS6A`Q9o@~XW>j^GrnSxpVRnHQ#?QgihafL~#VJC*U>jOLsb{;T>p`C?9nq<&GL)+; zpztmqR=n`6lHDK@GXbf`__OVyP3#jj?l=d_RO(&g^|4 z{}NC^9ygt^4ZA_02MI0e19WOzdp93MdstIxn7XYMGe-WT=sjkezA0fQ(Zv2$SLuWmXP-%%Qxama=+3uLR-3+W>QB_adDGk`4|q;m$WM7z`EzE^-!HFcR21Lvwt998Y$2L}wcL_*$t3 z^%++Ua6h*hnuhq2p?Y|nIh^5f$}~F1AL{k=6Q&|$JHmGmwH=;t4=U6;Kxg*gORbXO zg^kt6Sf`rdML#|~{hULMT4#voj{%x;`#`*~4dF#~2$;DQKGjfsI-F%lr1%1Oo`*-o z`8SipDW=rbH!_6tQF}mxg@eC2RP=);jUJ})S-L6!JO`AD`Vde&9KK3KDV_w+b?_89 z`QWk~UnIabuB+UXJ^<>2^r9@S)Tws+$esYsOXQxYrVy;wq%5O5-tR zQDjodE#zl5t`V9S#R7Z*GRbI#=4~H&yTIj*c7Ae22go3kkTS8j(Xqg_Wm1U`kEGB$QU`3b?e4E*lZ?mkleCciHm*%F9^fZQ zTYubiEx0PXMEaABe5QLIBl`s%kKyxcA-}Y7Ex+*q zkKY+AXq!}tQG3HmW^kViwAhg(E`BOYI6s6X+z(2mr-eI*(b(*9m3dI zY}(ilq!+pJZ1kzy(SCm@9SIJ&m3Q&;BN>3c0%%bel&wO#(oY3v*g3XY{!E&$x%d_f zWIay0#&=$$b(i7H(gnBMxaT6y=a!Sv(u;hGpd)3zb#w;ph}C;_YrmsgZv}BwzH}>J zVK`YFE1&P+Q}=7*q+g>T>};Zn0! z>?2Fg=VzIt4wKK__?+DbX^cXw@(#Y$JXY429wFXFY~R3=q+WEofK3ucOyw~5r%KSN z2;wNMAdPd(kK$_vr?dAPX5KWeDorb#j_|^%_$iHt&ZZ8Quda zh)L5!h{rWN~g;Iv3}hiTZ1OI+xglR7cb1^(`1fHR*A;npbK_G|3=)G_|H#*1xpz z)S~?|%h4*sZZfoE3mLKI$_0kjnU>ZCnwD5!7X=7hEE54#za3lb{EuCHsn)}Uej~s! z^Rxy&19@CgVKlH>h6yKJWGmNVnX!5j-}CC`X#5`I{sp{fL#ReZ4=-Je{Lkw(&}WQ0 zs?1`o6|C$_fHj92Z!zjvHmg!w%TXdvB7F8f1U!Xk#qZ#2A@B>hIy&|UoqQkBx1|?e zhOol(_;VV5iuw^e>pJ*ENi1?cMt|zD@b#c(rYR9%6l4Zhn2$14*BMtm9xmkL5rt>- z=Mwzzuc!ynihl=oP9rYqvUID{AN zC(%~;inrqDzrd4Bn%-%$`lQYBl>?r(jFiR$ZDpeMXA|mYLe~xulWD|PkeV@>X0Wnc zU^pIXv`e+87G@*)(s)4eFoe!W^jQ<4ah4(GdCAX8)7{TPu(dWmOsv46+z9 zsa9h6rp_8rLIYc^une+VaDd8{C!R*bWe0kQns1`5pRWt`Dljr+x~UQ`$q@Au1Zi#m ztqk5yyA%@cLNdBjdR+ovL|{33zBe*C|GDU^_`VQ-}--3vT*dCIjjp{Z2}FFJsLnaki)4Mh${ z1;r=9--&p|C&P0;JTthO8?MsvXBt;68c=uCHE8$5;Mt9OP44z3>foZlRS01Hv{8Qtq8E7O1BYo47 zfW-ph^&5B}XsRbu1T2W6IorBgo7+9zxzp^y`3dqNJ@%bqOidi!f>VY&y`J>9vI}Rl zU1s@Rnrvl}vtD{;;AOo{he|KIc`=<(jGsBb@nmomqwb-k$duMj@(xrLhUpN;!7WDBYfrrHFl ziwJC*X zAZ!i`>7&Iu(m?{!(|->Z3tvHaQ3*z(#eanFA&@El5S|s^ghzqD{q$tPbM&|183IrK zweXCE=Sg@9xL50qC7Nyz$f#4&%2J?6bFM?r{0V?v@D%L_WL7qUr3P92znOTdDouAZ z@qj=LDm~pW|Ds9{f9=sa+w;DSg-xp_qonUTy%$ZtjxxT{>99#QK|+RKm8JS;)% zf13+cMgMlXOxNFvkm=}G`9I)ID+jIRMVA|iKeTy7%vGGb?>un=K|v+z@NkhsCz&E|u~?EniH?fSODtCHlg z-$UkQdFDlfxDWiQjO;=#&lGZLMwVqP)WL8+uq-o&i%3J4>7+^s>&=>XBqDOzsE~_D zvTkHC))C{eNFmpa3b|%f$n~P4eF&DdqVvIxFk>V1F@jkudJaHgXa?7bc5Ty%K5X0o zQ)sTZ-n7-Q)lV8t*=Le1FH=I}oz0p?-WKipG^R0M_ZR}hmK*TC?6H*~;^l1y*TfRA z67p9Xk1~tvVvC_al8l8^C|)t22cELw~%VkAg$ zv|;TG%iA*w zd=@PvA0tUC#W!MDv>08)h>;>If~wU8yxX|yd)ZYB(95v0kGKsUR`~h!u+lfdQyL#d z8iBolNaYx42=xXS`XS@9ReGOTYzQotgE@*IQ}ZkzKQLrAf|>FzXx- z9yZ|gI?ev2Ktn5wHu%|Wp2T1q?946!^}P!%ml^y zoVZ3XyIbeG%(wv=N;5j`SPk!E?9+3eV&>S4)`0^liHqQo=Jd3!8uLcu`jkXUjfPM^ z37wU5LUpi)iF7PReg!ZRRJW)O!M?igG30uPY^2f`BNdBrfEYn_o$XA=P+$=|M4mjl zDCe(GgpU!ofX#kpz0O7nkkrLFeseE8T4)!ci9GH{u$11gJ5A}?2>py;_}mSk-<4g` zsS|wGxG}s!^=9C$gT*j=U{_p~^8r|ua!J{!WAy;6zLj$#vJ+Rbt4xWWnozRRcYM|4 z^F8CLYjPYUx*mbwClp{{UZ7ZK{oc_A#x5 z)P4hqWb89Ta6dC>LQ`i>_K2a2s!^|25D?k%b_c%jH-pjo4bSD9b>>xdwnQCypNU!zPiZ`skl6tU{$}T6 zJYByG&8W2bjWT59*lL~lZUYvx(G+FzzlN`Ae;kIf{aT≥ZeIL?1y`%F>2o*z*G< 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 diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..273f94b --- /dev/null +++ b/build.gradle @@ -0,0 +1,160 @@ +apply plugin: 'java' +apply plugin: 'cpp' +apply plugin: 'maven' +apply plugin: 'eclipse' + +repositories { + maven { + url 'https://github.com/Boukefalos/jlibloader/raw/mvn-repo/' + } +} + +dependencies { + compile 'com.github.boukefalos:jlibloader:0.2' +} + +group = 'com.github.boukefalos' +project.archivesBaseName = 'jlibintellitype' +version = '1.3.9' + +task wrapper(type: Wrapper) { + gradleVersion = '1.12' +} + +model { + platforms { + windows_i386 { + architecture 'i386' + operatingSystem 'windows' + } + windows_amd64 { + architecture 'amd64' + operatingSystem 'windows' + } + } + toolChains { + gcc(Gcc) { + addPlatformConfiguration(new TargetPlatformConfiguration() { + boolean supportsPlatform(Platform platform) { + platform.operatingSystem.current && platform.operatingSystem.name == 'windows' && + platform.architecture.name == 'amd64' + } + List getCppCompilerArgs() { ['-m64', '-fpermissive'] } + List getCCompilerArgs() { ['-m64'] } + List getObjectiveCCompilerArgs() { ['-m64'] } + List getObjectiveCppCompilerArgs() { ['-m64'] } + List getAssemblerArgs() { ['--64'] } + List getLinkerArgs() { ['-m64'] } + List getStaticLibraryArchiverArgs() { [] } + }) + } + } + repositories { + libs(PrebuiltLibraries) { + Gdi32 { lib -> + binaries.withType(StaticLibraryBinary) { + staticLibraryFile = file("lib/${targetPlatform.name}/${lib.name}.lib") + } + } + } + } +} + +def jniHeadersDir = file("$buildDir/headers") + +task jniHeaders(dependsOn: compileJava) { + def outputFile = file("$jniHeadersDir/com_melloware_jintellitype_JIntellitype.h") + inputs.files sourceSets.main.output + outputs.file outputFile + exec { + executable org.gradle.internal.jvm.Jvm.current().getExecutable('javah') + args '-o', outputFile + args '-classpath', sourceSets.main.output.classesDir + args '-classpath', file("$buildDir/../bin") + args 'com.melloware.jintellitype.JIntellitype' + } +} + +libraries { + main { + baseName project.archivesBaseName + } + all { + binaries.all { + cppCompiler.args '-I' + jniHeadersDir + cppCompiler.args "-I${org.gradle.internal.jvm.Jvm.current().javaHome}/include" + cppCompiler.args "-I${org.gradle.internal.jvm.Jvm.current().javaHome}/include/win32" + linker.args '-Wl,--kill-at', '-static-libgcc', '-static-libstdc++' + tasks.withType(CppCompile) { task -> + task.dependsOn jniHeaders + } + lib library: 'Gdi32', linkage: 'static' + } + } +} + +tasks.withType(Upload) { + repositories { + mavenDeployer { + repository(url: uri('.maven')) + } + } +} + +configurations { + jni +} + +def deployer = uploadJni.repositories.mavenDeployer + +binaries.withType(SharedLibraryBinary) { binary -> + if (!buildable) { + return + } + def variantName = "${targetPlatform.operatingSystem.name}-${targetPlatform.architecture.name}" + def taskName = "jar-${variantName}" + def nativeJar = project.tasks.findByName(taskName) + if (nativeJar == null) { + nativeJar = project.task(taskName, type: Jar) { + baseName = "${project.archivesBaseName}-$variantName" + } + artifacts { + jni nativeJar + } + def jniPom = deployer.addFilter(variantName) { artifact, file -> + return file == nativeJar.archivePath + } + jniPom.groupId = project.group + jniPom.artifactId = nativeJar.baseName + jniPom.version = project.version + jniPom.scopeMappings.mappings.clear() + } + def builderTask = binary.tasks.builder + def libraryDirectory = project.group.replace('.', '/') + "/${project.archivesBaseName}/${variantName}" + nativeJar.into(libraryDirectory) { from builderTask.outputFile } + nativeJar.dependsOn builderTask +} + +def mainPom = uploadArchives.repositories.mavenDeployer.pom +mainPom.groupId = project.group +mainPom.artifactId = jar.baseName +mainPom.version = project.version +mainPom.scopeMappings.mappings.clear() +mainPom.withXml { provider -> + def node = provider.asNode() + def deps = node.appendNode('dependencies') + ['windows-amd64', 'windows-i386'].each { platform -> + def dep = deps.appendNode('dependency') + dep.appendNode('groupId', project.group) + dep.appendNode('artifactId', "${project.archivesBaseName}-${platform}") + dep.appendNode('version', project.version) + } + def dep = deps.appendNode('dependency') + dep.appendNode('groupId', 'com.github.boukefalos') + dep.appendNode('artifactId', 'jlibloader') + dep.appendNode('version', '0.2') +} + +jar { + from sourceSets.main.allSource +} \ No newline at end of file diff --git a/src/changes/changes.xml b/changes.xml similarity index 98% rename from src/changes/changes.xml rename to changes.xml index 0d4cd5d..60983d3 100644 --- a/src/changes/changes.xml +++ b/changes.xml @@ -1,38 +1,38 @@ - - - - - - Release Notes - Melloware - - - - - - Modified JIntellitype.java a bit so that it would a)copy .dll files from jar to a temp location and b)load 64bit .dll if 32bit fails. Tested on WinXP 32bit and Win7 64bit (with 64bit JVM). - - - - - Now enables the user to use all keys instead of just [A-Z],[0-9] as before - - - - - Added JIntellitype64.dll for 64 bit JRE's. Simply rename the DLL to - JIntellitype.dll or use the Jintellitype.setLibraryLocation(''); function - to set the path to JIntellitype64.dll. - - - - - Fixed "Jintellitype.setLibraryLocation('');" method to to allow developers - to set the path of the JIntellitype.DLL for use in executable jar's etc. - - - Removed Commons-Logging dependency - + + + + + + Release Notes + Melloware + + + + + + Modified JIntellitype.java a bit so that it would a)copy .dll files from jar to a temp location and b)load 64bit .dll if 32bit fails. Tested on WinXP 32bit and Win7 64bit (with 64bit JVM). + + + + + Now enables the user to use all keys instead of just [A-Z],[0-9] as before + + + + + Added JIntellitype64.dll for 64 bit JRE's. Simply rename the DLL to + JIntellitype.dll or use the Jintellitype.setLibraryLocation(''); function + to set the path to JIntellitype64.dll. + + + + + Fixed "Jintellitype.setLibraryLocation('');" method to to allow developers + to set the path of the JIntellitype.DLL for use in executable jar's etc. + + + Removed Commons-Logging dependency + @@ -55,48 +55,48 @@ and the operating System is Windows and its a 32 bit JDK since it will not run on 64 bit JVM. - - - - Added Javadoc that explains a modifier of 0 means that no modifier is required if you - want to have a single key be a hotkey. - - - Added example of just using the PRINT_SCREEN key with no modifiers as a hotkey. - - - Added more constants to JIntellitypeConstants.java based on MSDN documentation. + + + + Added Javadoc that explains a modifier of 0 means that no modifier is required if you + want to have a single key be a hotkey. + + + Added example of just using the PRINT_SCREEN key with no modifiers as a hotkey. + + + Added more constants to JIntellitypeConstants.java based on MSDN documentation. Made JIntellitype singleton thread safe by using double checked pattern. - - - - - Added registerHotKey(int identifier, String modifierAndKeyCode) to allow Strings like "CTRL+A" to be - used to register hotkeys for applications that want their users to be able to define hotkeys. - - - Added checkInstanceAlreadyRunning(String appTitle) to prevent multiple instances - of your application from being started if you don't want to. Returns true - if an instance with this application title is already running on the system. - Useful for developers who only want ONE instance of their app running. - - - - - Changed Jintellitype to a singleton class like JIntellitype.getInstance() - - - Added ability to use Swing constants for ALT, CTRL, SHIFT. - - - - - Initial release of the JIntellitype API. - - - - - + + + + + Added registerHotKey(int identifier, String modifierAndKeyCode) to allow Strings like "CTRL+A" to be + used to register hotkeys for applications that want their users to be able to define hotkeys. + + + Added checkInstanceAlreadyRunning(String appTitle) to prevent multiple instances + of your application from being started if you don't want to. Returns true + if an instance with this application title is already running on the system. + Useful for developers who only want ONE instance of their app running. + + + + + Changed Jintellitype to a singleton class like JIntellitype.getInstance() + + + Added ability to use Swing constants for ALT, CTRL, SHIFT. + + + + + Initial release of the JIntellitype API. + + + + + \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..3d0dee6e8edfecc92e04653ec780de06f7b34f8b GIT binary patch literal 51017 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 H-~Rf4?cF@p literal 0 HcmV?d00001 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..535c584 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Wed Nov 26 21:42:48 GMT 2014 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-1.12-bin.zip diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..91a7e26 --- /dev/null +++ b/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/lib/windows_amd64/Gdi32.Lib b/lib/windows_amd64/Gdi32.Lib new file mode 100644 index 0000000000000000000000000000000000000000..83fe4625f01e400fe6d86935a47be80eefe3b6f4 GIT binary patch literal 103408 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 P>hUL - - org.sonatype.oss - oss-parent - 7 - - - - 4.0.0 - com.melloware - jintellitype - jar - 1.3.10-SNAPSHOT - http://www.melloware.com - JIntellitype - JIntellitype - JNI Java bridge to Microsoft Intellitype commands. - - Melloware Inc - http://www.melloware.com - - - http://melloware.com/images/header.jpg - - 1999 - - scm:svn:https://jintellitype.googlecode.com/svn/trunk - scm:svn:https://jintellitype.googlecode.com/svn/trunk - scm:svn:https://jintellitype.googlecode.com/svn/trunk - - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - - - - 3.0.0 - - - - mellowaredev@gmail.com - Melloware - mellowaredev@gmail.com - http://www.melloware.com - Melloware Inc - http://www.melloware.com - - Architect - - - - - - Bertrand Florat - bflorat@users.sourceforge.net - http://jajuk.info - Jajuk Team - http://jajuk.info - - Code Contributor - - - - Peter Fichtner - fichtner@c2tn.de - http://www.c2tn.de - C2TN Team - http://www.c2tn.de - - Code Contributor - - - - Thomas Beckers - - http://www.atunes.org/ - aTunes Team - http://www.atunes.org/ - - Code Contributor - - - - Karl von Randow - - http://xk72.com/ - XK72 - http://xk72.com/ - - Code Contributor - - - - Johannes Frank - - http://radis.sf.net/ - RadiS - http://radis.sf.net/ - - Code Contributor - - - - Wordoholic - - http://wordoholic.com/ - Wordoholic - http://wordoholic.com/ - - Code Contributor - - - - Zeroflag - - - ZeroFlag - - - x64 DLL Contributor - - - - Lars - - - Hamburg - - - Strings for Register Hotkeys - - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.4 - - - sign-artifacts - verify - - sign - - - - - - maven-release-plugin - 2.2.1 - - release-sign-artifacts - clean javadoc:jar source:jar deploy - - - - maven-assembly-plugin - 2.2.1 - - - - com.melloware.jintellitype.Main - - - - src/assembly/descriptor.xml - - target/assembly - target/assembly/work - - - - make-assembly - - package - - - assembly - - - - - - - maven-jar-plugin - 2.3.1 - - - - com.melloware.jintellitype.Main - - - ${project.url} - ${project.artifactId} - ${project.organization.name} - ${project.organization.name} - ${project.description} - ${project.version} - - - - - - org.apache.maven.plugins - maven-eclipse-plugin - 2.8 - - true - true - true - - - - maven-surefire-plugin - org.apache.maven.plugins - 2.9 - - true - - - - org.apache.maven.plugins - maven-changes-plugin - 2.6 - - - validate-changes - pre-site - - changes-validate - - - true - - - - - - - - - - org.apache.maven.plugins - maven-project-info-reports-plugin - 2.4 - - - - summary - dependencies - dependency-convergence - project-team - license - - - - - - org.apache.maven.plugins - maven-jxr-plugin - 2.2 - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.8 - - UTF-8 - private - false - - - - org.apache.maven.plugins - maven-pmd-plugin - 2.5 - - - /rulesets/basic.xml - /rulesets/imports.xml - /rulesets/unusedcode.xml - /rulesets/finalizers.xml - /rulesets/logging-jakarta-commons.xml - /rulesets/logging-java.xml - /rulesets/migrating_to_15.xml - /rulesets/design.xml - /rulesets/strings.xml - - 150 - true - utf-8 - 1.6 - - - - org.apache.maven.plugins - maven-changes-plugin - 2.6s - - - - changes-report - - - - - - - - - release-sign-artifacts - - - performRelease - true - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.4 - - - sign-artifacts - verify - - sign - - - - - - - - - \ No newline at end of file diff --git a/src/site/fml/faq.fml b/site/fml/faq.fml similarity index 97% rename from src/site/fml/faq.fml rename to site/fml/faq.fml index f141139..05f8877 100644 --- a/src/site/fml/faq.fml +++ b/site/fml/faq.fml @@ -1,131 +1,131 @@ - - - - - - General - - - - What is JIntellitype? - - - JIntellitype is a Java API for Windows that allows you to - register global hotkeys and listen for Microsft Intellitype commands. - - - - - - On which platform does it run? - - - Since JIntellitype uses Windows specific calls it will - only work on Windows. Windows 2000 or higher recommended. For a Linux - version see JxGrabKey project on Sourceforge. - - - - - - Does it run on x64 JDK or JRE's? - - - Starting with 1.3.3 JINtellitype comes with a 64 bit DLL. To use it Simply rename the DLL to - JIntellitype.dll or use the Jintellitype.setLibraryLocation(''); function to set the path to JIntellitype64.dll. - - - - - - Where do I get help on JIntellitype? - - - This FAQ answers some frequent questions already, please read the - it thoroughly. -

- If these resources don't help you with your problem, - or if you think that you found a bug that is not yet documented, - you should contact us. -
-
- - - - I have a question that is not addressed here. - Where can I ask? - - - See our Contacts page. - - - - - - - Problems - - - - I am pressing my special Intellitype keys on my keyboard but nothing is happening? - - - First, make sure you have followed instructions for using JIntellitype properly. Next, - make sure you do not have Microsft Intellitype drivers installed. The Microsoft software - intercepts the messages before they get to JIntellitype and "eats" them. You can tell if - you are running Microsoft Keyboard software by opening Task Manager and looking for the - process name "itype.exe". - - - - - - I am using Jintellitype.checkInstanceAlreadyRunning("MyApp") but it is allowing me to open - my application more than once when I am expecting it not to? - - - Make sure that "MyApp" is the getTitle() of the main JFrame of your application. - JIntellitype checks by Window title name. - - - - - - - Development - - - - Can I contribute? - - - Yes, please! Check out the contact page and contact us! - - - - - - I think I found a bug in JIntellitype. - What should I do? - - - You should post it to the forums to - make sure it is documented. - - - - - - When will feature XYZ be implemented? - - - Depends. If it is something you really sorely need, you could (politely) - try to exert some pressure on us. You can also try to pay us. - Or try to implement your feature yourself and send us some patches. - In any case, you should contact us about your problem. - - - - - + + + + + + General + + + + What is JIntellitype? + + + JIntellitype is a Java API for Windows that allows you to + register global hotkeys and listen for Microsft Intellitype commands. + + + + + + On which platform does it run? + + + Since JIntellitype uses Windows specific calls it will + only work on Windows. Windows 2000 or higher recommended. For a Linux + version see JxGrabKey project on Sourceforge. + + + + + + Does it run on x64 JDK or JRE's? + + + Starting with 1.3.3 JINtellitype comes with a 64 bit DLL. To use it Simply rename the DLL to + JIntellitype.dll or use the Jintellitype.setLibraryLocation(''); function to set the path to JIntellitype64.dll. + + + + + + Where do I get help on JIntellitype? + + + This FAQ answers some frequent questions already, please read the + it thoroughly. +

+ If these resources don't help you with your problem, + or if you think that you found a bug that is not yet documented, + you should contact us. +
+
+ + + + I have a question that is not addressed here. + Where can I ask? + + + See our Contacts page. + + + +
+ + + Problems + + + + I am pressing my special Intellitype keys on my keyboard but nothing is happening? + + + First, make sure you have followed instructions for using JIntellitype properly. Next, + make sure you do not have Microsft Intellitype drivers installed. The Microsoft software + intercepts the messages before they get to JIntellitype and "eats" them. You can tell if + you are running Microsoft Keyboard software by opening Task Manager and looking for the + process name "itype.exe". + + + + + + I am using Jintellitype.checkInstanceAlreadyRunning("MyApp") but it is allowing me to open + my application more than once when I am expecting it not to? + + + Make sure that "MyApp" is the getTitle() of the main JFrame of your application. + JIntellitype checks by Window title name. + + + + + + + Development + + + + Can I contribute? + + + Yes, please! Check out the contact page and contact us! + + + + + + I think I found a bug in JIntellitype. + What should I do? + + + You should post it to the forums to + make sure it is documented. + + + + + + When will feature XYZ be implemented? + + + Depends. If it is something you really sorely need, you could (politely) + try to exert some pressure on us. You can also try to pay us. + Or try to implement your feature yourself and send us some patches. + In any case, you should contact us about your problem. + + + + +
\ No newline at end of file diff --git a/src/site/resources/default.aspx b/site/resources/default.aspx similarity index 100% rename from src/site/resources/default.aspx rename to site/resources/default.aspx diff --git a/src/site/resources/favicon.ico b/site/resources/favicon.ico similarity index 100% rename from src/site/resources/favicon.ico rename to site/resources/favicon.ico diff --git a/src/site/resources/images/devc-jni.jpg b/site/resources/images/devc-jni.jpg similarity index 100% rename from src/site/resources/images/devc-jni.jpg rename to site/resources/images/devc-jni.jpg diff --git a/src/site/resources/images/duke.gif b/site/resources/images/duke.gif similarity index 100% rename from src/site/resources/images/duke.gif rename to site/resources/images/duke.gif diff --git a/src/site/resources/images/duke.ico b/site/resources/images/duke.ico similarity index 100% rename from src/site/resources/images/duke.ico rename to site/resources/images/duke.ico diff --git a/src/site/resources/images/duke_up.ico b/site/resources/images/duke_up.ico similarity index 100% rename from src/site/resources/images/duke_up.ico rename to site/resources/images/duke_up.ico diff --git a/src/site/resources/images/jintellitype-banner.png b/site/resources/images/jintellitype-banner.png similarity index 100% rename from src/site/resources/images/jintellitype-banner.png rename to site/resources/images/jintellitype-banner.png diff --git a/src/site/resources/images/jintellitype-banner.pspimage b/site/resources/images/jintellitype-banner.pspimage similarity index 100% rename from src/site/resources/images/jintellitype-banner.pspimage rename to site/resources/images/jintellitype-banner.pspimage diff --git a/src/site/resources/images/jintellitype-logo.png b/site/resources/images/jintellitype-logo.png similarity index 100% rename from src/site/resources/images/jintellitype-logo.png rename to site/resources/images/jintellitype-logo.png diff --git a/src/site/resources/images/jintellitype-logo.pspimage b/site/resources/images/jintellitype-logo.pspimage similarity index 100% rename from src/site/resources/images/jintellitype-logo.pspimage rename to site/resources/images/jintellitype-logo.pspimage diff --git a/src/site/resources/images/windows.png b/site/resources/images/windows.png similarity index 100% rename from src/site/resources/images/windows.png rename to site/resources/images/windows.png diff --git a/src/site/site.xml b/site/site.xml similarity index 100% rename from src/site/site.xml rename to site/site.xml diff --git a/src/site/xdoc/contacts.xml b/site/xdoc/contacts.xml similarity index 96% rename from src/site/xdoc/contacts.xml rename to site/xdoc/contacts.xml index 5ee5ea7..ed92fa8 100644 --- a/src/site/xdoc/contacts.xml +++ b/site/xdoc/contacts.xml @@ -1,32 +1,32 @@ - - - - - - Contacts - Emil A Lefkof III - - - - -
-

- The preferred way of getting in touch with one of the developers of - JIntellitype is via the forums. - Please direct any matters of general user support, questions, suggestions, discussions, etc., - to the forums. -

- - -

- In special cases, you may try to contact directly one of the - developers or contributors. You - can always send request to info@melloware.com also. -

-
- -
- - - + + + + + + Contacts + Emil A Lefkof III + + + + +
+

+ The preferred way of getting in touch with one of the developers of + JIntellitype is via the forums. + Please direct any matters of general user support, questions, suggestions, discussions, etc., + to the forums. +

+ + +

+ In special cases, you may try to contact directly one of the + developers or contributors. You + can always send request to info@melloware.com also. +

+
+ +
+ + +
\ No newline at end of file diff --git a/src/site/xdoc/dev-cpp.xml b/site/xdoc/dev-cpp.xml similarity index 96% rename from src/site/xdoc/dev-cpp.xml rename to site/xdoc/dev-cpp.xml index 20ed4b7..7a2ee44 100644 --- a/src/site/xdoc/dev-cpp.xml +++ b/site/xdoc/dev-cpp.xml @@ -1,37 +1,37 @@ - - - - JIntellitype - Emil A Lefkof III - - - -
- -

- Jintellitype uses the Bloodshed Dev C++ IDE for compiling the JIntellitype.dll. -

- -

- 1. Once you have DevC++ installed, just open the JIntellitype.dev project file. -

-

- 2. Navigate to the menu option Project->Options. -

-

- 3. Make sure to set the entries in the screenshot below to your JDK location. -
- Project Options -

- -

- 4. Change your Project->Options Build Options to point to an output directory of your choosing. - -

- -

- 5. Use the menu or toolbar button to build the DLL! -

-
- + + + + JIntellitype + Emil A Lefkof III + + + +
+ +

+ Jintellitype uses the Bloodshed Dev C++ IDE for compiling the JIntellitype.dll. +

+ +

+ 1. Once you have DevC++ installed, just open the JIntellitype.dev project file. +

+

+ 2. Navigate to the menu option Project->Options. +

+

+ 3. Make sure to set the entries in the screenshot below to your JDK location. +
+ Project Options +

+ +

+ 4. Change your Project->Options Build Options to point to an output directory of your choosing. + +

+ +

+ 5. Use the menu or toolbar button to build the DLL! +

+
+
\ No newline at end of file diff --git a/src/site/xdoc/index.xml b/site/xdoc/index.xml similarity index 98% rename from src/site/xdoc/index.xml rename to site/xdoc/index.xml index b210f75..d6513c3 100644 --- a/src/site/xdoc/index.xml +++ b/site/xdoc/index.xml @@ -1,136 +1,136 @@ - - - - Java API for Microsoft Intellitype - Emil A Lefkof III - - - -
- - -

- JIntellitype is a Java API for interacting with Microsoft Intellitype - commands as well as registering for Global Hotkeys in your Java application. - The API is a Java JNI library that uses a C++ DLL to do all the communication - with Windows. NOTE: This library ONLY works on Windows. If - you are looking for a Linux version please see JxGrabKey project on Sourceforge. -

-
- - -

- Have you ever wanted to have CTRL+SHIFT+G maximize your Swing application - on the desktop? Even if that application did not have focus? Well, now you can! By - registering a Windows Hotkey combination, your application will be alerted - when the combination you select is pressed anywhere in Windows. Windows has the - API call RegisterHotKey - for registering a global hotkey combination so that your app receives that message - no matter what else you are doing or even if your application has focus. This is - a commonly requested feature in Java that has now been implemented by JIntellitype. - - Check out the Quick Start Guide for an example on how to use JIntellitype. -

- -
- - - -

- Have you ever wanted your Java application to react to those special Play, Pause, - Stop keys on some newer keyboards like Winamp and Windows Media Player do? Ever wonder how they do it? - If you want your application to "listen" for those special keys, now you can with JIntellitype! - Just register an IntellitypeListener and you will be notified when those messages are received. - To read more about these special commands see the MSDN Documentation - about the Intellitype commands. - - Check out the Quick Start Guide for an example on how to use JIntellitype. -

- -
- - -

- Although JIntellitype is open source, small financial donations are appreciated. By supporting Melloware, you help fund the development - (mainly development tools and internet access etc) of Melloware's Software. To send money, simply click on the PayPal icon to the left. -

-
- - -

- Jukes cross platform music player and organizer. -

-

- JaJuk cross platform swiss army knife music player including DJ mode and much more! -

-

- C2TN C2TN is the first RSS Reader which integrates completely into your desktop. -

-

- aTunes aTunes is a GPL audio player and manager. -

-

- Topkeys emulates the mouse using the keyboard. -

-

- Google Translate Desktop is a free unofficial Java desktop client based on Google Translate service. -

-

- MiniGen is a program that can generate text in any Windows-based (tested on XP/Vista) application based on the currently selected text in a non-invasive manner. -

-

- Xtreme Media Player is a free cross-platform media player. -

-

- MyTime is a simple time tracker, mostly controlled through the tray icon. -

-

- RadiS is a cool-looking mouse menu that opens upon a global hot-key. Allows sub-menus which will be displayed in an adjacent partly circle. -

-

- JShot is a free and multiplatform screen capture and uploader utility which allows you to capture a part of your screen and publish it in one step. -

-

- OpenSoundboard plays sound files (.wav, .mp3) when the user presses hotkeys. -

-

- Clipcomrade - simple and free open source windows clipboard manager tool -

-

- Wordoholic Learner - a cross-platform language learning tool -

-

- Hotshots - Easy to use screenshot utility for Windows and Linux -

-

- G15Lastfm - Last.fm player for G15 gaming keyboard -

-

- webapp-workplace - Web Workspace/Client to provide notifications for different web applications such as gmail, facebook, etc. -

-

- Hawkscope - is a productivity tool that allows you to access your hard drive contents quickly via system tray / menubar icon with dynamic pop-up menu. -

-
- - -
    -
  • Can register global hotkey combinations in Java applications in Windows
  • -
  • Application is notified even if it does not have focus.
  • -
  • Can react to those Play, Pause, Stop, Next, Forward Media keys like Winamp
  • -
  • Very little code, easy to use API
  • -
  • Examples included in JIntellitypeTester.java
  • -
-
- - - -
- - - + + + + Java API for Microsoft Intellitype + Emil A Lefkof III + + + +
+ + +

+ JIntellitype is a Java API for interacting with Microsoft Intellitype + commands as well as registering for Global Hotkeys in your Java application. + The API is a Java JNI library that uses a C++ DLL to do all the communication + with Windows. NOTE: This library ONLY works on Windows. If + you are looking for a Linux version please see JxGrabKey project on Sourceforge. +

+
+ + +

+ Have you ever wanted to have CTRL+SHIFT+G maximize your Swing application + on the desktop? Even if that application did not have focus? Well, now you can! By + registering a Windows Hotkey combination, your application will be alerted + when the combination you select is pressed anywhere in Windows. Windows has the + API call RegisterHotKey + for registering a global hotkey combination so that your app receives that message + no matter what else you are doing or even if your application has focus. This is + a commonly requested feature in Java that has now been implemented by JIntellitype. + + Check out the Quick Start Guide for an example on how to use JIntellitype. +

+ +
+ + + +

+ Have you ever wanted your Java application to react to those special Play, Pause, + Stop keys on some newer keyboards like Winamp and Windows Media Player do? Ever wonder how they do it? + If you want your application to "listen" for those special keys, now you can with JIntellitype! + Just register an IntellitypeListener and you will be notified when those messages are received. + To read more about these special commands see the MSDN Documentation + about the Intellitype commands. + + Check out the Quick Start Guide for an example on how to use JIntellitype. +

+ +
+ + +

+ Although JIntellitype is open source, small financial donations are appreciated. By supporting Melloware, you help fund the development + (mainly development tools and internet access etc) of Melloware's Software. To send money, simply click on the PayPal icon to the left. +

+
+ + +

+ Jukes cross platform music player and organizer. +

+

+ JaJuk cross platform swiss army knife music player including DJ mode and much more! +

+

+ C2TN C2TN is the first RSS Reader which integrates completely into your desktop. +

+

+ aTunes aTunes is a GPL audio player and manager. +

+

+ Topkeys emulates the mouse using the keyboard. +

+

+ Google Translate Desktop is a free unofficial Java desktop client based on Google Translate service. +

+

+ MiniGen is a program that can generate text in any Windows-based (tested on XP/Vista) application based on the currently selected text in a non-invasive manner. +

+

+ Xtreme Media Player is a free cross-platform media player. +

+

+ MyTime is a simple time tracker, mostly controlled through the tray icon. +

+

+ RadiS is a cool-looking mouse menu that opens upon a global hot-key. Allows sub-menus which will be displayed in an adjacent partly circle. +

+

+ JShot is a free and multiplatform screen capture and uploader utility which allows you to capture a part of your screen and publish it in one step. +

+

+ OpenSoundboard plays sound files (.wav, .mp3) when the user presses hotkeys. +

+

+ Clipcomrade - simple and free open source windows clipboard manager tool +

+

+ Wordoholic Learner - a cross-platform language learning tool +

+

+ Hotshots - Easy to use screenshot utility for Windows and Linux +

+

+ G15Lastfm - Last.fm player for G15 gaming keyboard +

+

+ webapp-workplace - Web Workspace/Client to provide notifications for different web applications such as gmail, facebook, etc. +

+

+ Hawkscope - is a productivity tool that allows you to access your hard drive contents quickly via system tray / menubar icon with dynamic pop-up menu. +

+
+ + +
    +
  • Can register global hotkey combinations in Java applications in Windows
  • +
  • Application is notified even if it does not have focus.
  • +
  • Can react to those Play, Pause, Stop, Next, Forward Media keys like Winamp
  • +
  • Very little code, easy to use API
  • +
  • Examples included in JIntellitypeTester.java
  • +
+
+ + + +
+ + +
\ No newline at end of file diff --git a/src/site/xdoc/quick-start.xml b/site/xdoc/quick-start.xml similarity index 97% rename from src/site/xdoc/quick-start.xml rename to site/xdoc/quick-start.xml index 4a626e5..d32eac7 100644 --- a/src/site/xdoc/quick-start.xml +++ b/site/xdoc/quick-start.xml @@ -1,110 +1,110 @@ - - - - JIntellitype - Emil A Lefkof III - - - -
- -

- Here is a simple quick start for getting up and running with JIntellitype quickly. - An Example is also included in the - distribution to show you how easy it is to use JIntellitype. -

- - -

- If you are familiar with Eclipse there is a full working example Eclipse project that can be - found here Eclipse Example. - In Eclipse just navigate to File->Import->Existing Project Into Workspace and you are ready to go. -

-
- - -

- 1. Make sure JIntellitype.dll is in your PATH or in \Windows\System32. -

-

- 2. Initialize a JIntellitype object. - + + + + JIntellitype + Emil A Lefkof III + + + +

+ +

+ Here is a simple quick start for getting up and running with JIntellitype quickly. + An Example is also included in the + distribution to show you how easy it is to use JIntellitype. +

+ + +

+ If you are familiar with Eclipse there is a full working example Eclipse project that can be + found here Eclipse Example. + In Eclipse just navigate to File->Import->Existing Project Into Workspace and you are ready to go. +

+
+ + +

+ 1. Make sure JIntellitype.dll is in your PATH or in \Windows\System32. +

+

+ 2. Initialize a JIntellitype object. + // Initialize JIntellitype ... JIntellitype.getInstance(); - ... - // OPTIONAL: check to see if an instance of this application is already - // running, use the name of the window title of this JFrame for checking - if (JIntellitype.checkInstanceAlreadyRunning("MyApp")) { - LOG.error("An instance of this application is already running"); - System.exit(1); - } - -

- -

- 3. To listen to hotkey's, you need to register the combinations to listen for. - - // Assign global hotkeys to Windows+A and ALT+SHIFT+B - JIntellitype.getInstance().registerHotKey(1, JIntellitype.MOD_WIN, (int)'A'); - JIntellitype.getInstance().registerHotKey(2, JIntellitype.MOD_ALT + JIntellitype.MOD_SHIFT, (int)'B'); - - //or you can use the Swing constants instead - JIntellitype.getInstance().registerSwingHotKey(3, Event.CTRL_MASK + Event.SHIFT_MASK, (int)'C'); - - // To unregister them just call unregisterHotKey with the unique identifier - JIntellitype.getInstance().unregisterHotKey(1); - JIntellitype.getInstance().unregisterHotKey(2); - JIntellitype.getInstance().unregisterHotKey(3); - -

- -

- 4. Make sure to add a HotKeyListener and implement the interface. - - //assign this class to be a HotKeyListener - JIntellitype.getInstance().addHotKeyListener(this); - + ... + // OPTIONAL: check to see if an instance of this application is already + // running, use the name of the window title of this JFrame for checking + if (JIntellitype.checkInstanceAlreadyRunning("MyApp")) { + LOG.error("An instance of this application is already running"); + System.exit(1); + } + +

+ +

+ 3. To listen to hotkey's, you need to register the combinations to listen for. + + // Assign global hotkeys to Windows+A and ALT+SHIFT+B + JIntellitype.getInstance().registerHotKey(1, JIntellitype.MOD_WIN, (int)'A'); + JIntellitype.getInstance().registerHotKey(2, JIntellitype.MOD_ALT + JIntellitype.MOD_SHIFT, (int)'B'); + + //or you can use the Swing constants instead + JIntellitype.getInstance().registerSwingHotKey(3, Event.CTRL_MASK + Event.SHIFT_MASK, (int)'C'); + + // To unregister them just call unregisterHotKey with the unique identifier + JIntellitype.getInstance().unregisterHotKey(1); + JIntellitype.getInstance().unregisterHotKey(2); + JIntellitype.getInstance().unregisterHotKey(3); + +

+ +

+ 4. Make sure to add a HotKeyListener and implement the interface. + + //assign this class to be a HotKeyListener + JIntellitype.getInstance().addHotKeyListener(this); + // listen for hotkey public void onHotKey(int aIdentifier) { - if (aIdentifier == 1) - System.out.println("WINDOWS+A hotkey pressed"); + if (aIdentifier == 1) + System.out.println("WINDOWS+A hotkey pressed"); } - } - -

- -

- 5. To use Intellitype commands implement the IntellitypeListener interface. - - //assign this class to be a IntellitypeListener - JIntellitype.getInstance().addIntellitypeListener(this); - + } + +

+ +

+ 5. To use Intellitype commands implement the IntellitypeListener interface. + + //assign this class to be a IntellitypeListener + JIntellitype.getInstance().addIntellitypeListener(this); + // listen for intellitype play/pause command public void onIntellitype(int aCommand) { - switch (aCommand) { - case JIntellitype.APPCOMMAND_MEDIA_PLAY_PAUSE: - System.out.println("Play/Pause message received " + Integer.toString(aCommand)); + switch (aCommand) { + case JIntellitype.APPCOMMAND_MEDIA_PLAY_PAUSE: + System.out.println("Play/Pause message received " + Integer.toString(aCommand)); + break; + default: + System.out.println("Undefined INTELLITYPE message caught " + Integer.toString(aCommand)); break; - default: - System.out.println("Undefined INTELLITYPE message caught " + Integer.toString(aCommand)); - break; } - } - -

- -

- 6. Don't forget to call the cleanup method to release the DLL resources. - + } + +

+ +

+ 6. Don't forget to call the cleanup method to release the DLL resources. + // Termination, make sure to call before exiting ... JIntellitype.getInstance().cleanUp(); - System.exit(0); - -

-
- -
- + System.exit(0); + +

+
+ +
+
\ No newline at end of file diff --git a/src/assembly/descriptor.xml b/src/assembly/descriptor.xml deleted file mode 100644 index 0f6f4a1..0000000 --- a/src/assembly/descriptor.xml +++ /dev/null @@ -1,35 +0,0 @@ - - dist - - zip - - - - target - - - *.jar - - - - src\main - - **/.svn/** - - - - src\test - - **/.svn/** - - - - - *.dll - pom.xml - readme.txt - license.txt - - - - \ No newline at end of file diff --git a/src/main/cpp/JIntellitype.cpp b/src/main/cpp/JIntellitype.cpp index 060b2d5..f24769c 100644 --- a/src/main/cpp/JIntellitype.cpp +++ b/src/main/cpp/JIntellitype.cpp @@ -143,7 +143,7 @@ extern "C" * Signature: (Ljava/lang/String;)Z */ JNIEXPORT jboolean JNICALL Java_com_melloware_jintellitype_JIntellitype_isRunning - (JNIEnv *env, jclass, jstring wndName) + (JNIEnv *env, jobject, jstring wndName) { // App name for the hidden window's registered class CHAR szAppName[] = "SunAwtFrame"; diff --git a/src/main/cpp/JIntellitype.dev b/src/main/cpp/JIntellitype.dev deleted file mode 100644 index 62fa7e1..0000000 --- a/src/main/cpp/JIntellitype.dev +++ /dev/null @@ -1,149 +0,0 @@ -[Project] -FileName=JIntellitype.dev -Name=JIntellitype -Ver=1 -IsCpp=1 -Type=3 -Compiler=-D__GNUWIN32__ -W -DWIN32 -DNDEBUG -D_WINDOWS -D_MBCS -D_USRDLL -DBUILDING_DLL=1_@@_ -CppCompiler=-D__GNUWIN32__ -W -DWIN32 -DNDEBUG -D_WINDOWS -D_MBCS -D_USRDLL_@@_ -Includes=c:\java\jdk1.2.2\include;c:\java\jdk1.2.2\include\win32 -Linker=-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 --no-export-all-symbols --add-stdcall-alias_@@_ -Libs= -UnitCount=8 -Folders="Header Files","Resource Files","Source Files" -ObjFiles= -PrivateResource=JIntellitype_private.rc -ResourceIncludes= -MakeIncludes= -Icon= -ExeOutput=..\..\..\..\jintellitype -ObjectOutput=..\..\..\target -OverrideOutput=0 -OverrideOutputName=JIntellitype.dll -HostApplication= -CommandLine= -UseCustomMakefile=0 -CustomMakefile= -IncludeVersionInfo=1 -SupportXPThemes=0 -CompilerSet=0 -CompilerSettings=0000000001001000000100 - -[Unit1] -FileName=JIntellitypeThread.cpp -Folder="Source Files" -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit2] -FileName=JIntellitype.cpp -Folder="Source Files" -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit3] -FileName=JIntellitypeHandler.cpp -Folder="Source Files" -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit5] -FileName=JIntellitypeHandler.h -Folder="Header Files" -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit7] -FileName=StdAfx.h -Folder="Header Files" -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit8] -FileName=com_melloware_jintellitype_JIntellitype.h -Folder=Header Files -Compile=1 -CompileCpp=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[VersionInfo] -Major=1 -Minor=0 -Release=0 -Build=465 -LanguageID=1033 -CharsetID=1252 -CompanyName=Melloware Inc (www.melloware.com) -FileVersion=1.0 -FileDescription=Java JNI bridge to MS Intellitype commands -InternalName= -LegalCopyright=Copyright 2006 Melloware Inc -LegalTrademarks=Copyright 2006 Melloware Inc -OriginalFilename= -ProductName=JIntellitype -ProductVersion=1.0 -AutoIncBuildNr=1 - -[Unit11] -FileName=com_melloware_jintellitype_JIntellitype.h -CompileCpp=1 -Folder=Header Files -Compile=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit10] -FileName=com_melloware_jintellitype_JIntellitype.h -CompileCpp=1 -Folder=Header Files -Compile=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit4] -FileName=StdAfx.cpp -CompileCpp=1 -Folder="Source Files" -Compile=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - -[Unit6] -FileName=JIntellitypeThread.h -CompileCpp=1 -Folder="Header Files" -Compile=1 -Link=1 -Priority=1000 -OverrideBuildCmd=0 -BuildCmd= - diff --git a/src/main/cpp/JIntellitype.layout b/src/main/cpp/JIntellitype.layout deleted file mode 100644 index 6956056..0000000 --- a/src/main/cpp/JIntellitype.layout +++ /dev/null @@ -1,76 +0,0 @@ -[Editor_9] -CursorCol=1 -CursorRow=20 -TopLine=1 -LeftChar=1 -Open=0 -Top=0 -[Editors] -Focused=2 -Order=1,2,0,7,4 -[Editor_0] -Open=1 -Top=0 -CursorCol=5 -CursorRow=118 -TopLine=71 -LeftChar=1 -[Editor_1] -Open=1 -Top=0 -CursorCol=36 -CursorRow=149 -TopLine=75 -LeftChar=1 -[Editor_2] -Open=1 -Top=1 -CursorCol=14 -CursorRow=209 -TopLine=162 -LeftChar=1 -[Editor_3] -Open=0 -Top=0 -CursorCol=23 -CursorRow=3 -TopLine=1 -LeftChar=1 -[Editor_4] -Open=1 -Top=0 -CursorCol=1 -CursorRow=27 -TopLine=1 -LeftChar=1 -[Editor_5] -Open=0 -Top=0 -CursorCol=3 -CursorRow=24 -TopLine=11 -LeftChar=1 -[Editor_6] -Open=0 -Top=0 -CursorCol=1 -CursorRow=16 -TopLine=1 -LeftChar=1 -[Editor_7] -Open=1 -Top=0 -CursorCol=54 -CursorRow=35 -TopLine=3 -LeftChar=1 -[Editor_8] -Open=0 -Top=0 -CursorCol=1 -CursorRow=3 -TopLine=1 -LeftChar=1 -[Editor_10] -Open=0 -Top=0 diff --git a/src/main/cpp/JIntellitypeHandler.cpp b/src/main/cpp/JIntellitypeHandler.cpp index 666fc5d..01b8b61 100644 --- a/src/main/cpp/JIntellitypeHandler.cpp +++ b/src/main/cpp/JIntellitypeHandler.cpp @@ -137,7 +137,7 @@ void JIntellitypeHandler::doInitialize() return; //Set pointer to this object inside the Window's USERDATA section - SetWindowLong( m_window, GWL_USERDATA, (LONG) this ); + SetWindowLongPtr( m_window, GWLP_USERDATA, (LONG) this ); // hide the window ShowWindow(m_window, SW_HIDE); @@ -255,7 +255,7 @@ LRESULT CALLBACK JIntellitypeHandler::WndProc( HWND hWnd, UINT uMessage, WPARAM if (uMessage == WM_SHELLHOOK) { if (wParam == HSHELL_APPCOMMAND) { jint cmd = GET_APPCOMMAND_LPARAM(lParam); - JIntellitypeHandler *l_this = (JIntellitypeHandler *) GetWindowLong( hWnd, GWL_USERDATA ); + JIntellitypeHandler *l_this = (JIntellitypeHandler *) GetWindowLongPtr( hWnd, GWLP_USERDATA ); l_this->intellitype(cmd); } return TRUE; @@ -264,7 +264,7 @@ LRESULT CALLBACK JIntellitypeHandler::WndProc( HWND hWnd, UINT uMessage, WPARAM // check for registered hotkey messages and send them to HotKeyListeners switch( uMessage ) { case WM_HOTKEY: { - JIntellitypeHandler *l_this = (JIntellitypeHandler *) GetWindowLong( hWnd, GWL_USERDATA ); + JIntellitypeHandler *l_this = (JIntellitypeHandler *) GetWindowLongPtr( hWnd, GWLP_USERDATA ); l_this->fireHotKey(wParam); return TRUE; break; diff --git a/src/main/cpp/JIntellitype_private.rc b/src/main/cpp/JIntellitype_private.rc deleted file mode 100644 index 77374f8..0000000 --- a/src/main/cpp/JIntellitype_private.rc +++ /dev/null @@ -1,35 +0,0 @@ -/* THIS FILE WILL BE OVERWRITTEN BY DEV-C++ */ -/* DO NOT EDIT! */ - -#include // include for version info constants - - -// -// TO CHANGE VERSION INFORMATION, EDIT PROJECT OPTIONS... -// -1 VERSIONINFO -FILEVERSION 1,0,0,465 -PRODUCTVERSION 1,0,0,465 -FILETYPE VFT_DLL -{ - BLOCK "StringFileInfo" - { - BLOCK "040904E4" - { - VALUE "CompanyName", "Melloware Inc (www.melloware.com)" - VALUE "FileVersion", "1.0" - VALUE "FileDescription", "Java JNI bridge to MS Intellitype commands" - VALUE "InternalName", "" - VALUE "LegalCopyright", "Copyright 2006 Melloware Inc" - VALUE "LegalTrademarks", "Copyright 2006 Melloware Inc" - VALUE "OriginalFilename", "" - VALUE "ProductName", "JIntellitype" - VALUE "ProductVersion", "1.0" - } - } - BLOCK "VarFileInfo" - { - VALUE "Translation", 0x0409, 1252 - } -} - diff --git a/src/main/cpp/Makefile.win b/src/main/cpp/Makefile.win deleted file mode 100644 index 0ad1b2c..0000000 --- a/src/main/cpp/Makefile.win +++ /dev/null @@ -1,46 +0,0 @@ -# Project: JIntellitype -# Makefile created by Dev-C++ 4.9.9.2 - -CPP = g++.exe -CC = gcc.exe -WINDRES = windres.exe -RES = ../../../target/JIntellitype_private.res -OBJ = ../../../target/JIntellitypeThread.o ../../../target/JIntellitype.o ../../../target/JIntellitypeHandler.o ../../../target/StdAfx.o $(RES) -LINKOBJ = ../../../target/JIntellitypeThread.o ../../../target/JIntellitype.o ../../../target/JIntellitypeHandler.o ../../../target/StdAfx.o $(RES) -LIBS = -L"C:/Dev-Cpp/lib" -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 --no-export-all-symbols --add-stdcall-alias -s -INCS = -I"C:/Dev-Cpp/include" -CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" -BIN = ../../../../jintellitype/JIntellitype.dll -CXXFLAGS = $(CXXINCS) -D__GNUWIN32__ -W -DWIN32 -DNDEBUG -D_WINDOWS -D_MBCS -D_USRDLL -fexpensive-optimizations -O3 -CFLAGS = $(INCS) -D__GNUWIN32__ -W -DWIN32 -DNDEBUG -D_WINDOWS -D_MBCS -D_USRDLL -DBUILDING_DLL=1 -fexpensive-optimizations -O3 -RM = rm -f - -.PHONY: all all-before all-after clean clean-custom - -all: all-before ../../../../jintellitype/JIntellitype.dll all-after - - -clean: clean-custom - ${RM} $(OBJ) $(BIN) - -DLLWRAP=dllwrap.exe -DEFFILE=../../../../jintellitype/libJIntellitype.def -STATICLIB=../../../../jintellitype/libJIntellitype.a - -$(BIN): $(LINKOBJ) - $(DLLWRAP) --output-def $(DEFFILE) --driver-name c++ --implib $(STATICLIB) $(LINKOBJ) $(LIBS) -o $(BIN) - -../../../target/JIntellitypeThread.o: JIntellitypeThread.cpp - $(CPP) -c JIntellitypeThread.cpp -o ../../../target/JIntellitypeThread.o $(CXXFLAGS) - -../../../target/JIntellitype.o: JIntellitype.cpp - $(CPP) -c JIntellitype.cpp -o ../../../target/JIntellitype.o $(CXXFLAGS) - -../../../target/JIntellitypeHandler.o: JIntellitypeHandler.cpp - $(CPP) -c JIntellitypeHandler.cpp -o ../../../target/JIntellitypeHandler.o $(CXXFLAGS) - -../../../target/StdAfx.o: StdAfx.cpp - $(CPP) -c StdAfx.cpp -o ../../../target/StdAfx.o $(CXXFLAGS) - -../../../target/JIntellitype_private.res: JIntellitype_private.rc - $(WINDRES) -i JIntellitype_private.rc --input-format=rc -o ../../../target/JIntellitype_private.res -O coff diff --git a/src/main/cpp/com_melloware_jintellitype_JIntellitype.h b/src/main/cpp/com_melloware_jintellitype_JIntellitype.h deleted file mode 100644 index 2394ca6..0000000 --- a/src/main/cpp/com_melloware_jintellitype_JIntellitype.h +++ /dev/null @@ -1,53 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class com_melloware_jintellitype_JIntellitype */ - -#ifndef _Included_com_melloware_jintellitype_JIntellitype -#define _Included_com_melloware_jintellitype_JIntellitype -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: com_melloware_jintellitype_JIntellitype - * Method: initializeLibrary - * Signature: ()V - */ -JNIEXPORT void JNICALL Java_com_melloware_jintellitype_JIntellitype_initializeLibrary - (JNIEnv *, jobject); - -/* - * Class: com_melloware_jintellitype_JIntellitype - * Method: regHotKey - * Signature: (III)V - */ -JNIEXPORT void JNICALL Java_com_melloware_jintellitype_JIntellitype_regHotKey - (JNIEnv *, jobject, jint, jint, jint); - -/* - * Class: com_melloware_jintellitype_JIntellitype - * Method: terminate - * Signature: ()V - */ -JNIEXPORT void JNICALL Java_com_melloware_jintellitype_JIntellitype_terminate - (JNIEnv *, jobject); - -/* - * Class: com_melloware_jintellitype_JIntellitype - * Method: unregHotKey - * Signature: (I)V - */ -JNIEXPORT void JNICALL Java_com_melloware_jintellitype_JIntellitype_unregHotKey - (JNIEnv *, jobject, jint); - -/* - * Class: com_melloware_jintellitype_JIntellitype - * Method: isRunning - * Signature: (Ljava/lang/String;)Z - */ -JNIEXPORT jboolean JNICALL Java_com_melloware_jintellitype_JIntellitype_isRunning - (JNIEnv *, jclass, jstring); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/src/main/cpp/JIntellitypeHandler.h b/src/main/headers/JIntellitypeHandler.h similarity index 96% rename from src/main/cpp/JIntellitypeHandler.h rename to src/main/headers/JIntellitypeHandler.h index d003ff9..4806ef7 100644 --- a/src/main/cpp/JIntellitypeHandler.h +++ b/src/main/headers/JIntellitypeHandler.h @@ -1,93 +1,93 @@ -/* - JIntellitype (http://www.melloware.com/) - Java JNI API for Windows Intellitype commands and global keystrokes. - - Copyright (C) 1999, 2008 Emil A. Lefkof III, info@melloware.com - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - - Compiled with Mingw port of GCC, - Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) -*/ -#ifndef __JIntellitypeHandler_h__ -#define __JIntellitypeHandler_h__ - -#include "JIntellitypeThread.h" - -class JIntellitypeHandler -{ - friend DWORD WINAPI JIntellitypeThread::ThreadProc( LPVOID lpParameter ); - -public: - - static JIntellitypeHandler *extract( JNIEnv *env, jobject object ); - - JIntellitypeHandler( JNIEnv *env, jobject object ); - - void initialize( JNIEnv *env, HINSTANCE instance ); - void regHotKey( jint identifier, jint modifier, jint keycode ); - void unregHotKey( jint identifier ); - void intellitype( jint commandId ); - void terminate(); - -private: - - enum - { - INITIALIZE_CODE = 1, - REGISTER_HOTKEY_CODE = 2, - UNREGISTER_HOTKEY_CODE = 3, - TERMINATE_CODE = 4, - INTELLITYPE_CODE = 5 - }; - - ~JIntellitypeHandler(); - - void createHiddenWindow(); - void doInitialize(); - void doRegHotKey(LPARAM callback); - void doUnregisterHotKey(LPARAM callback); - void doIntellitype(LPARAM callback); - void fireHotKey(jint hotkeyId); - void fireIntellitype(jint commandId); - - HINSTANCE m_instance; - HWND m_window; - jobject m_object; - jmethodID m_fireHotKey; - jmethodID m_fireIntellitype; - - static LRESULT CALLBACK WndProc( HWND hWnd, UINT uMessage, WPARAM wParam, LPARAM lParam ); - static DWORD WINAPI ThreadProc( LPVOID lpParameter ); -}; - -typedef struct { - JIntellitypeHandler *handler; - jint identifier; - jint modifier; - jint keycode; - jint command; -} JIntellitypeHandlerCallback; - - -#ifndef WM_APPCOMMAND -#define WM_APPCOMMAND 0x319 -#define FAPPCOMMAND_MASK 0x8000 -#define GET_APPCOMMAND_LPARAM(lParam) ((short)(HIWORD(lParam) & ~FAPPCOMMAND_MASK)) -#define HSHELL_APPCOMMAND 12 - -#endif - - -#endif +/* + JIntellitype (http://www.melloware.com/) + Java JNI API for Windows Intellitype commands and global keystrokes. + + Copyright (C) 1999, 2008 Emil A. Lefkof III, info@melloware.com + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + Compiled with Mingw port of GCC, + Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) +*/ +#ifndef __JIntellitypeHandler_h__ +#define __JIntellitypeHandler_h__ + +#include "JIntellitypeThread.h" + +class JIntellitypeHandler +{ + friend DWORD WINAPI JIntellitypeThread::ThreadProc( LPVOID lpParameter ); + +public: + + static JIntellitypeHandler *extract( JNIEnv *env, jobject object ); + + JIntellitypeHandler( JNIEnv *env, jobject object ); + + void initialize( JNIEnv *env, HINSTANCE instance ); + void regHotKey( jint identifier, jint modifier, jint keycode ); + void unregHotKey( jint identifier ); + void intellitype( jint commandId ); + void terminate(); + +private: + + enum + { + INITIALIZE_CODE = 1, + REGISTER_HOTKEY_CODE = 2, + UNREGISTER_HOTKEY_CODE = 3, + TERMINATE_CODE = 4, + INTELLITYPE_CODE = 5 + }; + + ~JIntellitypeHandler(); + + void createHiddenWindow(); + void doInitialize(); + void doRegHotKey(LPARAM callback); + void doUnregisterHotKey(LPARAM callback); + void doIntellitype(LPARAM callback); + void fireHotKey(jint hotkeyId); + void fireIntellitype(jint commandId); + + HINSTANCE m_instance; + HWND m_window; + jobject m_object; + jmethodID m_fireHotKey; + jmethodID m_fireIntellitype; + + static LRESULT CALLBACK WndProc( HWND hWnd, UINT uMessage, WPARAM wParam, LPARAM lParam ); + static DWORD WINAPI ThreadProc( LPVOID lpParameter ); +}; + +typedef struct { + JIntellitypeHandler *handler; + jint identifier; + jint modifier; + jint keycode; + jint command; +} JIntellitypeHandlerCallback; + + +#ifndef WM_APPCOMMAND +#define WM_APPCOMMAND 0x319 +#define FAPPCOMMAND_MASK 0x8000 +#define GET_APPCOMMAND_LPARAM(lParam) ((short)(HIWORD(lParam) & ~FAPPCOMMAND_MASK)) +#define HSHELL_APPCOMMAND 12 + +#endif + + +#endif diff --git a/src/main/cpp/JIntellitypeThread.h b/src/main/headers/JIntellitypeThread.h similarity index 95% rename from src/main/cpp/JIntellitypeThread.h rename to src/main/headers/JIntellitypeThread.h index 10b09f9..e4a0048 100644 --- a/src/main/cpp/JIntellitypeThread.h +++ b/src/main/headers/JIntellitypeThread.h @@ -1,55 +1,55 @@ -/* - JIntellitype (http://www.melloware.com/) - Java JNI API for Windows Intellitype commands and global keystrokes. - - Copyright (C) 1999, 2008 Emil A. Lefkof III, info@melloware.com - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - - Compiled with Mingw port of GCC, - Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) -*/ -#ifndef __JIntellitypeThread_h__ -#define __JIntellitypeThread_h__ - - -class JIntellitypeThread -{ -public: - - JIntellitypeThread(); - - void MakeSureThreadIsUp( JNIEnv *env ); - - JNIEnv *m_env; - static DWORD WINAPI ThreadProc( LPVOID lpParameter ); - - operator DWORD (); - -private: - - DWORD m_thread; - JavaVM *m_vm; - int m_handlerCount; - - -}; - -extern JIntellitypeThread g_JIntellitypeThread; - - -#define WM_JINTELLITYPE (WM_USER+1) - - -#endif +/* + JIntellitype (http://www.melloware.com/) + Java JNI API for Windows Intellitype commands and global keystrokes. + + Copyright (C) 1999, 2008 Emil A. Lefkof III, info@melloware.com + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + + Compiled with Mingw port of GCC, + Bloodshed Dev-C++ IDE (http://www.bloodshed.net/devcpp.html) +*/ +#ifndef __JIntellitypeThread_h__ +#define __JIntellitypeThread_h__ + + +class JIntellitypeThread +{ +public: + + JIntellitypeThread(); + + void MakeSureThreadIsUp( JNIEnv *env ); + + JNIEnv *m_env; + static DWORD WINAPI ThreadProc( LPVOID lpParameter ); + + operator DWORD (); + +private: + + DWORD m_thread; + JavaVM *m_vm; + int m_handlerCount; + + +}; + +extern JIntellitypeThread g_JIntellitypeThread; + + +#define WM_JINTELLITYPE (WM_USER+1) + + +#endif diff --git a/src/main/cpp/JIntellitype_private.h b/src/main/headers/JIntellitype_private.h similarity index 96% rename from src/main/cpp/JIntellitype_private.h rename to src/main/headers/JIntellitype_private.h index 1c7f45e..688740c 100644 --- a/src/main/cpp/JIntellitype_private.h +++ b/src/main/headers/JIntellitype_private.h @@ -1,23 +1,23 @@ -/* THIS FILE WILL BE OVERWRITTEN BY DEV-C++ */ -/* DO NOT EDIT ! */ - -#ifndef JINTELLITYPE_PRIVATE_H -#define JINTELLITYPE_PRIVATE_H - -/* VERSION DEFINITIONS */ -#define VER_STRING "1.0.0.465" -#define VER_MAJOR 1 -#define VER_MINOR 0 -#define VER_RELEASE 0 -#define VER_BUILD 465 -#define COMPANY_NAME "Melloware Inc (www.melloware.com)" -#define FILE_VERSION "1.0" -#define FILE_DESCRIPTION "Java JNI bridge to MS Intellitype commands" -#define INTERNAL_NAME "" -#define LEGAL_COPYRIGHT "Copyright 2006 Melloware Inc" -#define LEGAL_TRADEMARKS "Copyright 2006 Melloware Inc" -#define ORIGINAL_FILENAME "" -#define PRODUCT_NAME "JIntellitype" -#define PRODUCT_VERSION "1.0" - -#endif /*JINTELLITYPE_PRIVATE_H*/ +/* THIS FILE WILL BE OVERWRITTEN BY DEV-C++ */ +/* DO NOT EDIT ! */ + +#ifndef JINTELLITYPE_PRIVATE_H +#define JINTELLITYPE_PRIVATE_H + +/* VERSION DEFINITIONS */ +#define VER_STRING "1.0.0.465" +#define VER_MAJOR 1 +#define VER_MINOR 0 +#define VER_RELEASE 0 +#define VER_BUILD 465 +#define COMPANY_NAME "Melloware Inc (www.melloware.com)" +#define FILE_VERSION "1.0" +#define FILE_DESCRIPTION "Java JNI bridge to MS Intellitype commands" +#define INTERNAL_NAME "" +#define LEGAL_COPYRIGHT "Copyright 2006 Melloware Inc" +#define LEGAL_TRADEMARKS "Copyright 2006 Melloware Inc" +#define ORIGINAL_FILENAME "" +#define PRODUCT_NAME "JIntellitype" +#define PRODUCT_VERSION "1.0" + +#endif /*JINTELLITYPE_PRIVATE_H*/ diff --git a/src/main/cpp/StdAfx.h b/src/main/headers/StdAfx.h similarity index 96% rename from src/main/cpp/StdAfx.h rename to src/main/headers/StdAfx.h index 7203ae8..5a1e4d6 100644 --- a/src/main/cpp/StdAfx.h +++ b/src/main/headers/StdAfx.h @@ -1,24 +1,24 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, but -// are changed infrequently -// - -#if !defined(AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_) -#define AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_ - -#if _MSC_VER > 1000 -#pragma once -#endif // _MSC_VER > 1000 - -// Insert your headers here -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers - -#include -#include - -#include - -//{{AFX_INSERT_LOCATION}} -// Microsoft Visual C++ will insert additional declarations immediately before the previous line. - -#endif // !defined(AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_) +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#if !defined(AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_) +#define AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_ + +#if _MSC_VER > 1000 +#pragma once +#endif // _MSC_VER > 1000 + +// Insert your headers here +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers + +#include +#include + +#include + +//{{AFX_INSERT_LOCATION}} +// Microsoft Visual C++ will insert additional declarations immediately before the previous line. + +#endif // !defined(AFX_STDAFX_H__1F571525_24C2_11D3_B0CF_0000E85D9A83__INCLUDED_) diff --git a/src/main/java/com/melloware/jintellitype/JIntellitype.java b/src/main/java/com/melloware/jintellitype/JIntellitype.java index b6f89f1..8fe7415 100644 --- a/src/main/java/com/melloware/jintellitype/JIntellitype.java +++ b/src/main/java/com/melloware/jintellitype/JIntellitype.java @@ -27,6 +27,8 @@ import java.util.concurrent.CopyOnWriteArrayList; import javax.swing.SwingUtilities; +import com.github.boukefalos.jlibloader.Native; + /** * JIntellitype A Java Implementation for using the Windows API Intellitype * commands and the RegisterHotKey and UnRegisterHotkey API calls for globally @@ -90,34 +92,9 @@ public final class JIntellitype implements JIntellitypeConstants { * calling. */ private JIntellitype() { - try { - // Load JNI library - System.loadLibrary("JIntellitype"); - } catch (Throwable exLoadLibrary) { - try { - if (getLibraryLocation() != null) { - System.load(getLibraryLocation()); - } else { - String jarPath = "com/melloware/jintellitype/"; - String tmpDir = System.getProperty("java.io.tmpdir"); - try { - String dll = "JIntellitype.dll"; - fromJarToFs(jarPath + dll, tmpDir + dll); - System.load(tmpDir + dll); - } catch (UnsatisfiedLinkError e) { - String dll = "JIntellitype64.dll"; - fromJarToFs(jarPath + dll, tmpDir + dll); - System.load(tmpDir + dll); - } - } - } catch (Throwable exAllFailed) { - throw new JIntellitypeException( - "Could not load JIntellitype.dll from local file system or from inside JAR", exAllFailed); - } - } - - initializeLibrary(); - this.keycodeMap = getKey2KeycodeMapping(); + Native.load("com.github.boukefalos", "jlibintellitype"); + initializeLibrary(); + this.keycodeMap = getKey2KeycodeMapping(); } /** diff --git a/src/test/resources/log4j.properties b/src/test/resources/log4j.properties deleted file mode 100644 index f1454f6..0000000 --- a/src/test/resources/log4j.properties +++ /dev/null @@ -1,29 +0,0 @@ -################################################################### -# # -# Copyright 2006 Melloware Inc # -# # -# http://www.melloware.com # -# # -################################################################### - -log4j.rootLogger=DEBUG,stdout - -######################################################################## -# -# Appenders -# -######################################################################## - - -#### Appender writes to console -log4j.appender.stdout = org.apache.log4j.ConsoleAppender -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%d{MM/dd/yyyy HH:mm:ss} %-5p - [%C{1}.%M:%L] %m %n - -#### jukes.log -log4j.appender.MELLOWARE = org.apache.log4j.FileAppender -log4j.appender.MELLOWARE.file = ${user.home}/.jintellitype/jintellitype.log -log4j.appender.MELLOWARE.layout = org.apache.log4j.PatternLayout -log4j.appender.MELLOWARE.layout.conversionPattern = %d{MM/dd/yyyy HH:mm:ss} %-5p - [%C{1}.%M:%L] %m %n -log4j.appender.MELLOWARE.append = false -