From ce70ae4fcee762c94c6e80c3d63481f739897ff6 Mon Sep 17 00:00:00 2001 From: Roger Clark Date: Mon, 20 Jul 2015 06:38:38 +1000 Subject: [PATCH] Added source to maple_loader.jar --- tools/src/maple_loader/README.md | 5 + tools/src/maple_loader/build.xml | 73 + .../maple_loader/build/built-jar.properties | 4 + .../build/classes/CliTemplate/CliMain.class | Bin 0 -> 1753 bytes .../classes/CliTemplate/DFUUploader.class | Bin 0 -> 7476 bytes .../classes/CliTemplate/ExecCommand.class | Bin 0 -> 3243 bytes .../build/classes/processing/app/Base.class | Bin 0 -> 639 bytes .../classes/processing/app/Preferences.class | Bin 0 -> 2215 bytes .../build/classes/processing/app/Serial.class | Bin 0 -> 7732 bytes .../processing/app/SerialException.class | Bin 0 -> 735 bytes .../app/debug/MessageConsumer.class | Bin 0 -> 174 bytes .../processing/app/debug/MessageSiphon.class | Bin 0 -> 2325 bytes .../app/debug/RunnerException.class | Bin 0 -> 2509 bytes .../processing/app/helpers/ProcessUtils.class | Bin 0 -> 1399 bytes tools/src/maple_loader/dist/README.TXT | 32 + tools/src/maple_loader/dist/lib/jssc.jar | Bin 0 -> 152418 bytes tools/src/maple_loader/dist/maple_loader.jar | Bin 0 -> 32791 bytes tools/src/maple_loader/jars/jssc.jar | Bin 0 -> 152418 bytes tools/src/maple_loader/manifest.mf | 3 + .../src/maple_loader/nbproject/build-impl.xml | 1413 +++++++++++++++++ .../nbproject/genfiles.properties | 8 + .../nbproject/private/config.properties | 0 .../nbproject/private/private.properties | 6 + .../nbproject/private/private.xml | 10 + .../maple_loader/nbproject/project.properties | 79 + tools/src/maple_loader/nbproject/project.xml | 15 + .../maple_loader/src/CliTemplate/CliMain.java | 60 + .../src/CliTemplate/DFUUploader.java | 345 ++++ .../src/CliTemplate/ExecCommand.java | 119 ++ .../maple_loader/src/processing/app/Base.java | 53 + .../src/processing/app/Preferences.java | 157 ++ .../src/processing/app/Serial.java | 527 ++++++ .../src/processing/app/SerialException.java | 39 + .../processing/app/debug/MessageConsumer.java | 42 + .../processing/app/debug/MessageSiphon.java | 104 ++ .../processing/app/debug/RunnerException.java | 161 ++ .../processing/app/helpers/ProcessUtils.java | 32 + 37 files changed, 3287 insertions(+) create mode 100644 tools/src/maple_loader/README.md create mode 100644 tools/src/maple_loader/build.xml create mode 100644 tools/src/maple_loader/build/built-jar.properties create mode 100644 tools/src/maple_loader/build/classes/CliTemplate/CliMain.class create mode 100644 tools/src/maple_loader/build/classes/CliTemplate/DFUUploader.class create mode 100644 tools/src/maple_loader/build/classes/CliTemplate/ExecCommand.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/Base.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/Preferences.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/Serial.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/SerialException.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/debug/MessageConsumer.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/debug/MessageSiphon.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/debug/RunnerException.class create mode 100644 tools/src/maple_loader/build/classes/processing/app/helpers/ProcessUtils.class create mode 100644 tools/src/maple_loader/dist/README.TXT create mode 100644 tools/src/maple_loader/dist/lib/jssc.jar create mode 100644 tools/src/maple_loader/dist/maple_loader.jar create mode 100644 tools/src/maple_loader/jars/jssc.jar create mode 100644 tools/src/maple_loader/manifest.mf create mode 100644 tools/src/maple_loader/nbproject/build-impl.xml create mode 100644 tools/src/maple_loader/nbproject/genfiles.properties create mode 100644 tools/src/maple_loader/nbproject/private/config.properties create mode 100644 tools/src/maple_loader/nbproject/private/private.properties create mode 100644 tools/src/maple_loader/nbproject/private/private.xml create mode 100644 tools/src/maple_loader/nbproject/project.properties create mode 100644 tools/src/maple_loader/nbproject/project.xml create mode 100644 tools/src/maple_loader/src/CliTemplate/CliMain.java create mode 100644 tools/src/maple_loader/src/CliTemplate/DFUUploader.java create mode 100644 tools/src/maple_loader/src/CliTemplate/ExecCommand.java create mode 100644 tools/src/maple_loader/src/processing/app/Base.java create mode 100644 tools/src/maple_loader/src/processing/app/Preferences.java create mode 100644 tools/src/maple_loader/src/processing/app/Serial.java create mode 100644 tools/src/maple_loader/src/processing/app/SerialException.java create mode 100644 tools/src/maple_loader/src/processing/app/debug/MessageConsumer.java create mode 100644 tools/src/maple_loader/src/processing/app/debug/MessageSiphon.java create mode 100644 tools/src/maple_loader/src/processing/app/debug/RunnerException.java create mode 100644 tools/src/maple_loader/src/processing/app/helpers/ProcessUtils.java diff --git a/tools/src/maple_loader/README.md b/tools/src/maple_loader/README.md new file mode 100644 index 0000000..c6c9379 --- /dev/null +++ b/tools/src/maple_loader/README.md @@ -0,0 +1,5 @@ +These files build the maple_loader.jar file used on Windows to reset the Sketch via USB Serial, so that the bootloader will run in dfu upload mode, ready for a new sketch to be uploaded + +The files were written by @bobC (github) and have been slightly modified by me (Roger Clark), so that dfu-util no longer attempts to reset the board after upload. +This change to dfu-util's reset command line argument, was required because dfu-util was showing errors on some Windows systems, because the bootloader had reset its self after upload, +before dfu-util had chance to tell it to reset. \ No newline at end of file diff --git a/tools/src/maple_loader/build.xml b/tools/src/maple_loader/build.xml new file mode 100644 index 0000000..63ae9c2 --- /dev/null +++ b/tools/src/maple_loader/build.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + Builds, tests, and runs the project maple_loader. + + + diff --git a/tools/src/maple_loader/build/built-jar.properties b/tools/src/maple_loader/build/built-jar.properties new file mode 100644 index 0000000..94002ae --- /dev/null +++ b/tools/src/maple_loader/build/built-jar.properties @@ -0,0 +1,4 @@ +#Mon, 20 Jul 2015 11:21:26 +1000 + + +C\:\\Users\\rclark\\Desktop\\maple-asp-master\\installer\\maple_loader= diff --git a/tools/src/maple_loader/build/classes/CliTemplate/CliMain.class b/tools/src/maple_loader/build/classes/CliTemplate/CliMain.class new file mode 100644 index 0000000000000000000000000000000000000000..37ee63000b20df7528829288b7f0fbeb28eb3b98 GIT binary patch literal 1753 zcmZ`(?^7F96g^8e*(Ke!Bot_BEkSJ?Qc5V;R-jfb6dMgcG>{5a@g;erOE=l=X2Z~N zI-?()v44qQZ9mYCj{X7uQR;cgB4LP`%)9&UJMY|k&%L{U{r%gY0A}FDk-}_0<}h#K zP8=WNu8EK0_!ysNj62~BB)v{_}O_60{U^nDSt6rA=x+pvJBnxgu zI3?lRY9BiF;IZA*FjQD@>~&f991+MIpO=N*m?v4CR>N@SQDIl?iJT)EwOldq?M7{0 z1=Gko)OB=!zaqWBcH4J_UnBKkkE}dUI6;1gw$&`>7YQ%hjU`)E zajLr0+VC7#RHd&Wbu912rH#WQ=6<>uh{}^?;k8ROkTtMLX(_0Nc+qY771^P*!g?oF zA{H)T)WDX7NBCMpqAol~Zg=9P_ogOq82HA*x7cPXO-U`CNso0H_|AernPCsT6gqfD ziB{N*&{q|KDBD5PLIqWlAG&3^RonI{{SmYoxSoP)usq+b`J%ok9YH>;)vkUrROWE2 z1fx)i@Km${ciWdu8CZ~@l4rt$J?WR-CIgLhcf3nE3pG4u+m5>OUsEmEN|O=MNK4;$ z{j^)Dw0vJy$I{IU`M8_2<0+8CF&@gCoHaGY7pQPWHk+L4obWud${p#; z27L@k4K-ZtakV#DocMerkTo@*!#%F$RY--p=emv*?bquh)s{kq%`Mr24f>z_x0oWk zLCTs8mRW_UvAgFo<0m=Ux^{yCxgX?0=#uN#1q+Prgb%YlQtp0*JB^+1Ngr)XjWN8< zkD&VXK~wJ&*EDxIT8%cEeGTnp`*@6NtnD1eJAAe}0KAL$xa-GdT%jioXby1(eJ`?+ z=|WbYUd~3RSF*9`IsFy-l92=G$>_B=h$W4rsZ9R>O+0xjarp;jEnTgr6Z)^pp1H0d zXD8G;z>`EW8R7an1~*^h+*~vjP3Z?1diV=2&c$9~Bza!{1F6kODt3Si#W#5C02f~} zu__!6^)Mo=87N_h>m}%{*ksZcy$P0*Vi}_>IX literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/CliTemplate/DFUUploader.class b/tools/src/maple_loader/build/classes/CliTemplate/DFUUploader.class new file mode 100644 index 0000000000000000000000000000000000000000..77087b052fbd03f77b9e1417f2754196beaf1844 GIT binary patch literal 7476 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 literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/CliTemplate/ExecCommand.class b/tools/src/maple_loader/build/classes/CliTemplate/ExecCommand.class new file mode 100644 index 0000000000000000000000000000000000000000..ad95f79845d3d1b0c1d2245d06800c06c37e8c08 GIT binary patch literal 3243 zcma)8TW}NS75;u{rC%0{F$RGJfhdV%e8DI8>iD5`@f$5 zobR0TowIuL-k)v*cpTT`Xu((=I*^sf#Sz9>9Ca|&Fun>Cm{fx$aYoHgOYE&f9t8WB885cO{+|kW;2R=9EkUaYA6t zxaF3-gRbkihn%vV6KE)zS;x-R9@UxCS+nR_jxEqKP;{NFSt?ofMA|48(>ZgjJdr+9 zwr$frxFEMnAiCSKEw5J~+}d_bK6Ts5zpt3hVZm@qR|ani9V8zv@!I)W%#c?OJOT$+=a;zC}UmqFTH zV?2m#49>}jGqW>Tz-F`Y~^#NtK+Bm8Ih%QT*6BdKiBapPV4xEf|14!9gks$#A`a{ z@XG~EOL@W!{XfN|<5vp$<4XIl@r1y`E52HiR*4sN{06^O&o1luom%}~A^U^!dF!H2 zD^XI%PIT$`gmS;(++*icuIZIs+sviT?L5CEVnbtR%&aGIMaNbAQQ~zS*HBSGI4w|b zPFr3o%ewDLQ42%)KGpnwaR@x>bL>*NV3MQti;1n4$l66m0`9Y3S?L9V^{s99bBPti zYM$^W{kFu44jVbv=n~phecIK=?x>ZlXGk{bIX;gBT9@>f1N} z$}HW*mNCrshI|tYLYF9FnPqJE{mK z6v5<_kuRG=8sTcI_HMSA5xSb;dhj19djx zgIwuVNxpfKJAoeTq6D>sPebyj48*Bh2#;QeHrR2v^LDou?v5lP3GEWLbtWQRJ<(*e zf=G3W&O+awjNXI{;rNA!n4AB{_U$(j6Lz106kD zQoG$933o>m(M04D+LKx$+SMbkLcfL8v|OK*6|8A&;84NZ3K}m&srv7{uV7t!_!`!$ zA<=OI8+x=kZ0?ENLepq6QbF=MHdUc*PDbzC!ULm8t%5BK%T^^+-9G4VqguC2$XRSv z?^4RCl#+d@H{31f=Ks|bo16b95kK-*#ME?Wi}orWyo%<=MqhnX3br`OQNu>~<~ z!&bE7QSLj@&bw{cO->APH$n~^B_ocrNuMSU&XNPqbG}F>yu$2WVpiuUeHr^{VGsLq zFEg+gf5ATd4SjeEAI97GDBeLo-o?l9Zw%lr25}EVLSR_bVN^8Wgh=3&*u*y84MX%` zOk|K1Pa!8xV%+D@n^;ebO|-NJQ8KKHcJ`8!^~AT2wl%CJmk)3iA;wL#yocN}=!=rm zsAZ=w7lFkWN-j#AF{10@>MGfK5Qh*EQAXq=#2X`m>TOK%GvKaT^-~|apcui&=nq*a zBJ^oLv0UaiZxDxR?JYdV=nWIg+nC~)ZJ0LRK?z4_TOvanswS#BMyTT`PmW;CJe`P2 z9FtfjahxMVgyy@5G|gijx0-$0j#Q*>R literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/processing/app/Base.class b/tools/src/maple_loader/build/classes/processing/app/Base.class new file mode 100644 index 0000000000000000000000000000000000000000..4aa0bde02049fbb6c4e035d952edc3f002cba1e1 GIT binary patch literal 639 zcmaKp%TB^T6o&tSLZKAVg7^Ck!G)N(aDg#K6B84>Bp6NH4Q13pXq&cpc^a2)+_+KW z!Uyo7jHgH%(vSU{TL#iY#anNj3gnP^@bs|Q|HhKMoyE2H|Q1LIN$1qrOT-y|$C#{PD zcbvjD_e7B)F1=G}RqY$fA^jOcvg~v7YM(o8fhs+!)VyWT%68K=#jXsB#RI`gjbC#e zacB&x?X6h6Aymxhn8h5Cwpqozjs+|-MB1iwk7gM916!fasl&rcO_+WcD&Kj&XfPx$ zgn#7Pj&S`uhHS3%^Q!E-G+r_P8+DsnY1AJLE^ZIc>Fe~e?9mh|{hDBfK@&rxJwZ`{ zPDW>B`33BWE+Oc&M_X_PNxJLb3Ft$LqB#07KqPp)PT9fA7@=2$4doe;&^=V;0ZRCh ec&BR#29XFt##T^2{g)*ApJcUD!jNgz82kc&eSc^G literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/processing/app/Preferences.class b/tools/src/maple_loader/build/classes/processing/app/Preferences.class new file mode 100644 index 0000000000000000000000000000000000000000..89cf0100455af1f41500150e545c8bbd12583674 GIT binary patch literal 2215 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 L#S!xqDulu}Wzd50 literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/processing/app/debug/MessageConsumer.class b/tools/src/maple_loader/build/classes/processing/app/debug/MessageConsumer.class new file mode 100644 index 0000000000000000000000000000000000000000..37250e7704487822639cf03f4e4a333da994be50 GIT binary patch literal 174 zcmX^0Z`VEs1_omWPId-%b_Nbc2KL<4;^M^gR7M6-4WF#UvPAuy#JqI<;F6-uymV{L zFh&Nh;QZ2}36TD<=a zee$u-T}#4J*3vf~eDmkHmbdTB3`x3-T|Q)=efH(-y}z^fnf&_KPd@_~$Jc3`K|#YE z4ezEAM=^~U<~s2b<`r2`3FpOF@DY|1aeE`vQp>rz{0}ik26Y+<5P_3@WA4aH*G_Nr)yS)eXYYsjn$=fJOWF4tYZhC37l!#w}YMI5E!%pT%fP% z+dxal=PHf9X`?)_MwAB1vTAyk>pLES*6{_t)bW){_Z9doX zp*cQw*xW5Rg|$DEB4^Hd92&M1T~J--)m&ee8#S=#_5-Loy058<-UTH+9!Y~sI?QMy zn1HJE?|PQwSw7)TWD82zQS}XvWu(;85YEQY?D>`vXiP_vZ;Q0~d|YUa5UKy|5#2V& zD&;$eAPhYZ*KvUzx$BPrxE*8^HuS-Abd74{xS?(;X{fBvh&yULy=i|kxTlNf7 z;w+!=GZ1(g31n24^DB^1jm|Zu+BsO+^IQ|O%i=s~j=OJ>nhpw19x}OH;50efeMVe!jVSW-ua2gkw zO`dcdm+%Iz;Y~`x9D}Hok8;QOw0WI5DNf}bBYzQNVV2?>S|_O6VZ79L80C_z<4CD^ zfI;%wK6*-f=pC-(g-nK|j=mppG=?XC|CSTX_X(zo5p(&F87o^tr z9?2)rD19-q?V1mm3%@)Ksv5%;9Ag$^m_dKA7Fna(JET`I5v((~5v)b52P@x^V2u+I z;12HvxQ;$d({BZrQKIK8eOE9=eg?Pczk&k!BCY2zk3}rN#66z3f(qph*T;Ae;5fm_32#8&VW5Z_DWZjif-x5zCr=eMcl9{`-9>GD2Q?oaJ}>;w=qVZ)>>5-{ha@ zC)IHMcf={5(&)lhg-58CS>Z0m^@zIs;_yKL*=f}RVTnhAt9^(L80hAo19jc~p+^+7 zg8`@6lwrath(FM+v2>NRYR{Ye%`#rtqAGQjaxxcZ8#Y@_{ZRoV0mQotV5n6@E2k~%3N36at+NEB6-iZpQsd%&@c zA5A4Tuz*j%h6Rru8x|m8Sz^Hl;6tJQ&z#FqWkoT zMK-PSux61%52o=};bEPJ4IUoy@DZt?IbKWPfebnC6t{hn9-@}T2Yu_~Sl zGS`A;(5nc_7S3xI4+ZI)kPtM>f{*(rM}FtPJ8DRlR@G}9dYyph>Z9JP2VFsL?zKCu zDyTtN_S)_8v47OBl|St_n|^2OMb&Tjf>smk3khDIvfC>O3%k1#=<|Tx>kS#<)kHgK zXjWC=*OG0dpELW%Wb8=5OE#92@hTEq^Lvj*RhcgoV`foZtZvN4!3NHxs#B^^M5P>9 z#6Ic;$!!E-EuFg8jjdt}>NO(^_{eLkgxg9tthcQM)l3P5vl+EEYKIxMb2NuOg3i=~ zV?W*`vu(6lFaE{aZ}mG>e_NJeexjyJ+@KC+DaXSt9#$Nhp^QVbbjhJtc(}~N9L@9U zjzjO$ilE#7r(*=ojSoOn4?$!Z7 z;WTsKk=&3Rg9MWTqKiRx`z2eXhyHnb=qBD$(nntT@ZiJ1n(dZyi&;I%$qF{UC!H*ZrjZjn!nbMU#8yrqi8@^Z z7ANbLa`yv3Ot{OtLrS@&0qJgTK!&?GAk)q21C%6d3}|Yc!W&3B(JFM-5bOg~yMk1$ zgJ%Pt9!joCs2OqPBd&bJm5;dciVGAn>4qeHT@mhpkduXk3~Aa0QVb>|>$in8Y$GW< z(s|e;cI4cq+w=y+aADG0O0+EJXju0z(*J;Z*ls316FrtPj(j(ijG#i)trbON%6yG8 z6E^EUU=Cs+W&~nJ&00h|hn*h>F@B!_d6EcHqPNxNG01h)Y!c)dKt8(wXIWW>;Zp|t)R=_w{k$&(nS<|sy#QGvY!8-p}wg9Yy*v>)mJ{n9+<-P@KEO7OK70uz15(}q literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/build/classes/processing/app/helpers/ProcessUtils.class b/tools/src/maple_loader/build/classes/processing/app/helpers/ProcessUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..27eca62622c61bc21ae557714ca4fa2d4c1eb22b GIT binary patch literal 1399 zcmah}Sy$6Q7`@XLQbO2@A}XTd)|Mr1C|W=TH?$PBD#zs|q@zUJBqpiLyT8ImUwqXU z+>ZPJe~HJR;5jZgC15~3=A6vTcjucs_gj+BKRzr2ID)Gxx-g_-7$Yil91Mp;3J#}n zB#omgnlP&1n2Hu04~MZdPNZ?N6$Olk_Jo2-1*Zg>$1U3mCIyn&+)aVhv{R7+9YxEQ zrFv~ade@DGDv?alF^%d?!?Qv=0#m`F^CTYS6zNcsy3f#h~aIPY8?ejDTV~wVGj91iJrnHr%gOLdgON zcR^s=pJY>Yt6GsBIg`?U97foXP^UC~)^LgUtdH=SyBg)_de`w7c_jW%WRiq!<-jl> zlDv^E1^oi*xu>Rd1Iw{}1*d73ow{er^H!MRu6VjeLU|f8=vHt>!xW|!oYim+=QV7_ zHi6EKDP*Pw82{Y?4Hs}xp!c^!L>%QHWS!A)371*^>01}(XG)~Aor>e%qmUrTHOw;8oku}GFUSD$z#b&AmmXn=E66?~`-!w6+5R1hf&=0k Rugelj(J99_&vgQWzW|+SRY?E< literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/dist/README.TXT b/tools/src/maple_loader/dist/README.TXT new file mode 100644 index 0000000..795e0cf --- /dev/null +++ b/tools/src/maple_loader/dist/README.TXT @@ -0,0 +1,32 @@ +======================== +BUILD OUTPUT DESCRIPTION +======================== + +When you build an Java application project that has a main class, the IDE +automatically copies all of the JAR +files on the projects classpath to your projects dist/lib folder. The IDE +also adds each of the JAR files to the Class-Path element in the application +JAR files manifest file (MANIFEST.MF). + +To run the project from the command line, go to the dist folder and +type the following: + +java -jar "maple_loader.jar" + +To distribute this project, zip up the dist folder (including the lib folder) +and distribute the ZIP file. + +Notes: + +* If two JAR files on the project classpath have the same name, only the first +JAR file is copied to the lib folder. +* Only JAR files are copied to the lib folder. +If the classpath contains other types of files or folders, these files (folders) +are not copied. +* If a library on the projects classpath also has a Class-Path element +specified in the manifest,the content of the Class-Path element has to be on +the projects runtime path. +* To set a main class in a standard Java project, right-click the project node +in the Projects window and choose Properties. Then click Run and enter the +class name in the Main Class field. Alternatively, you can manually type the +class name in the manifest Main-Class element. diff --git a/tools/src/maple_loader/dist/lib/jssc.jar b/tools/src/maple_loader/dist/lib/jssc.jar new file mode 100644 index 0000000000000000000000000000000000000000..eb74f154a01c8c16712233cca36b65120ea47986 GIT binary patch literal 152418 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 @v>QJza{i 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�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 literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/dist/maple_loader.jar b/tools/src/maple_loader/dist/maple_loader.jar new file mode 100644 index 0000000000000000000000000000000000000000..e1f9965c1ff0fe14384717ea4559c7f59e9a1ca6 GIT binary patch literal 32791 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 VEwG5^!#_X%TL6{zhrDw%{eMvMy}$qf literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/jars/jssc.jar b/tools/src/maple_loader/jars/jssc.jar new file mode 100644 index 0000000000000000000000000000000000000000..eb74f154a01c8c16712233cca36b65120ea47986 GIT binary patch literal 152418 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 @v>QJza{i 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�dexyp^A4suEUFHgmJ`O6cOxVp+kv~=*oYxd;^ygyh`@iE@Rm=G}nfk{| z5xv_!vM=~@Fv3@w_EVj|Dq(#zet&m@KBP4rA8Ym!QUncn7sy)z>A_j3?^RCW;gXf`$U;2^7T)43t(M1}* z6p&}p<$yOJVHsN|u*!D93eD_VwPn0)>cDQvxds#!^; z6u&=>S0+2S$+fnEHcH?^`(^XGv1$8CynHFMm4K+-`KdRw!>52MdI&NDpQg(1@pXHD zU1YNqzB)ro`UrP03*v(YnX7jIc9Sd^=lGUp{YG3qmJ~=1eT@5c!ZSdo9jX*pd1$1! zwBj;CVU`$tJSl#^wz$gI*P?t9+ziw8M3yXu?-is#t>7y7@V?KbvQH%Cpi61S!9TW} zwd%?_h08(0N5ogqT<}h)x&$r8r;_j^18waH&V9MNIsbz{fHt-VM8qF%qov!;2#0e}Xg>i?6J{Se}JdXM0AG4K}6;beD3>-fv&<$LQn#I98aPXN?@JTUn z5y3H(%5wI7#9#}eu$y_x#nF^rvC>_!^urhRHWVj)r78LN|O4vfi2(*F!kYcYTmQ7KZQFF`Xqy5GbL^W3ZAKD&1$o(zY_LgBh6T;vR4bQr|229rld;B4fe?WkfHU$)cRC{uOGv|XBxx4 z=^2wjGUx__*=uL{UdW|l2*;(o=TkNYn#at`tPhxbe?VWIWoy3_b_~B(uz*x3>->Nu zY%vbR@b#%`HiazR`0=qX%ZcBQNap7!k`ka?H9(t|6nEAXpX#x>=>r3;Y6$JTF9mXR z0sD)m?j6FSK2Ba(zXf-mux5}0R``@HksdL5+>KU%?nOI!tUa{Ze@Ma&jA`z$OLyVd zD$8a-R>3C!`*AIg8G@e&Kzd2p47*pIWkc&GXrYxO+A!n|Y!K*+j>rH>sgdG#6iIAH zk+0xOzN1JCZbAWF#5NTz9B%mEiQiAew-~kER%GrfS}B>kn1;VR8MmJfS`9yu7(e_# z>)%9MzXvyH6q#F^wzs407h-MqWNl|*+dtUjSes)qet|Y0oJ4K@Wm5b4d&e))b`op5 zXnFG1s}tj${{w6DJ{y?%kV-yKhF ze=z>s`a9y6X!A+jy4zd+k>kE6D0$DLb$A8`BvZC=XSEF9Oq{$BD+wEbKu zwf)c1bL;P|J$`{U2e39TDQ#bWJO2E(S?S>G7nuGJ?YOT?NnQ;4tS*46lmYov?0Z(zDU+Z zJ=qEP2Yt55-94(!gP#Gp0t@V^V$e2#s-XQdP)h~%qL7n83@*uvQTQHCVIXZGr!o{{ z6fQ&xBPwapN=8L1al}=U8mnZKIaE}`D4#+I>wlyj8?T>%JlY}PXT6+-M%pAGhe~D> z9_%8S-+19?vJy}NOPOX?c=VTehRqZ*ch1koB4aY?bH)<&c2?(gP-nmZ=U+upr#^zk zeab9b^fPz~EPK1s0z;oERUfbh>IF#vSDgS688bHf*U?@fk7ma~Y1RrN$q-X5=*}z7@ zRq(wSeCDWOxRn=&A$KZ=IajRf4~$bVJ8R(L52AWzQ0rL63l$0aWuxGZm&T{v{CkGK zvu?Y^Rf{bC9qs7&OEJwhZ7dOf&e(I)rjq!Ri5+t_^@ni-D^fCls2KbNjG(x@c}Gxx z%>oa676=v(Uxv%zt8dGDQyhxZ@P*6i)G%{?Ux8oYQ}O8BTMiKVMMt7cj`o9>dc4wm zZax0;r_Z@qn?qQe!@TXY9~S@gwvmLf_MewX%fA3W9(AT2znO9VK>P99e(X=5S~v!h z>bK)p7oGTEY`ri#u}!f$t9Mjk-pduHS2@h2>Ak$ziZhEP#fmLT(6fv5%fDp|5Z~~4 ztRb+-4kdfhBIN5-*^<`NSlhBcqh1UbEx8g0Y52k`qw@GL(nbPJO;orY&3*q^Vcz+?Mrr0^s>pzffhN(y|G zEaiZhd+ShanhD>Zi#7Scp`UC`@`haEsyQ~3D}AQoJi*h17Y7y_^Q z>96CZ#D6_BCU3#d|I&xC{`@8FXQ`sRCfwbWjk}xFyZQuL1^h2nTsjw}Uuy?3n2`}5 z-)}P~*7S%;C;GF=dLR5W@9NBpcvOXG1?4 zC+K?s4yufY5>W^v)Fg&>-~yi^$o;{0W>88q^W?!h*Se#|Fa-Yr9;E@Q^3w91Q^1b`pynT(hNIPl!`s0brni{W;-irln)r z?$2ZE`*C?kdf|yxiSQp`+RC%TS7YAq6XE}bX$#H@5As z{eK_<|G#0{tOIAoe+lOK65xSH?j#=Re=G9H^cY5w>~o9f{9OLPC^W?@!;ZNlOpn4H zb_&{-C)@8;aB4E=LM}s(;==!>A>_iJ+yi%PxzYgjZDAI6`q}CNM(m;fBIdYBzTfP>VL)C2O~cD$@T%x$8fZNc^9Jm|2SSpY3bci z{(qb>A9$}YstsBzpe=* ziehLbew%nF76}g@cLmu=rB|HW^2~FVpAirke)r|n*aG+gnNj(_o7?iyPq)YT%<)2F z9%VldKRosLFEVj1J|}*WulR|x$7K00eppbvf}7LIX4$>!92;N+jovj<|Lcb_w&qpf zf%Pn8Q5XwZyva_}suQGw@5QAvY5%SUSV}pEr9gA?;y0ZY#&rLGD;5jW{r|35oHWV* zyf0jy>?`_ zXO4~B^l;JoTyy`qdMmi?x5A*{SDm@IYyH`dNPoxkL+N~QG}JS-;2Z3t>P!~S$T01j zOp7J@ZTSAzaJ!l52pq-JJWz10*-P8WdGeb8tv`oJ^x@hd4D5)(&M0oxAz;k)jUk3+ z`nQ14AFIWOYw~yaJGuh-$zt&1w5YdrN2ckG6@52^m-A8_0{5X~UzXVTp|tSMY70F` zZJA;Uod9h>CMDSd`Gdqz+Fm4^(-v4@7sSxXJ?yO_f0P*d2413{OCNa^MACthiCk9R4uAT{PnTbO0(Xol z&&=o|Ad6#zFxSsNfum2OmY)|L?OdPIbnH2Q$G{>B4Dw2-0-lD7!GezQs~g+;;;y$Q zG1&Vn`T(aT$}U)13?8S?$&20_l#m>Xe0heHIc1{|UpA712Lw4aV$3?Y(-|uLudG;3 ztXK{&rZ;?WMk6~qFiMnw8jXuV^7eQuyU#nLm0LUfpy7}SU8zeM3Zrl|HXeCRY(%7b zs)i&T8yx)#4S4q4rPzCVyTC6z-Y)QeHMOtykJ|3yRfX>3KQi|Sq@CY3O6hqDL0WPMH zKlu_KH3Up@_GO&}?CPQcbPAp`-b9SW(0b%be5_09J_xr-Gr&Qd+4U#d$F+U5cpWpp z1AYbe9_bjnTkYrxZ5BfZKwt#!L6N>2pPH`_L)%e?sH1K85q7Q^6rfmPo)}t9qQ$Xp zAiEz!c?HAMJK6qW41jr5J07YTs-$}I#o+y^vG^Yzj?Ly-G?k_0@wCpEHXqW~&gKJf&x?>U6I1*=WfrDP*vb577D?0H zJI{%JTy*O}_CU*}Vkkw6s0jcuq5(wRk`b z&7@<}**7M^DO88P;Vbj|Z7$#nQb>$u#>A)@8r3(%%%31$()I&jQ}&%9ZRfB`r^cYC znhGxFvRr39L)vy><)+2TO*30LwF6q=f!t8(>9%a&mYzUL`g}Mx@88@(AEB+C3NPBa z=Mm=w(_<^Ny>=QO$-hIsKKHoEs0ZoXz_GT90T=^4L;+6^c7dm~4}2>QI0$LFf-M)fw&epOqMX*Hy$OLZ*+CsE;vM?} zML_BHbCSx?&dB5E3c0r_ftwG#YtRvmxh7iM_Ao|-0%B+q@#`dTIQoMhs_CAlb8TkT zo^yr#=H$6T{_SJ}#YXptX8>71roW6}cR;=$^oCXu^!(jyDcq%6^s9HDYYUss8JBXz zrQi#3X;-kW3#WsV0l!?VEIW;-HZ6G*DU1oqE_o~$P<*AH*6wkCo${qAmyRAz7?(-! z0G|!w!ePok*aX&Ro%nJ5&a@UIOM$7@_h(F1iPGrgwghQ_hnWY!NU-pQ4>33tM7#d} zHZI?Bhe=jm*UwI%U7A_j>-!9>H zfip;W7A3lw;$^Y+#}1&tk#E2`_+JV8KVpjMC&cTJiS;dU_dQ1O+0dWxsq5cPeDHkG zpN>zg{i|8~CD{I@=iI)$_~*sn+i3c}$uZ9~!LQ2nsaM+dhfcE%7-Db(-l9Y2PbPeH z+qS;bNzwWSB-A$`vXP(XYxaLq7K>VDwUhq$7(XX|8*6{}Mb!SDi`qN>t-nnBH?sC` zZg2bd{H*rb#`J7Cr_I1UBm4*>#8!{qxR8*39e%V6PDTyR|Fu6M9{;tce^&fGijDSE z%NYhQeaC+GFhMc952#IneX#w)s27cG2TE{TcPee1pI`wx4M! z{?OL{{&F!WFu9yA2n$)bgLp*iM2E#OaP@q=Orf(|eVM7tL-Io)Z=7+L_W0CJ-awU| zmwkdxfn#OQ24~}N$CG{tPEucHUs)_Qzp{WLv@I3S^KE9|kw^*yQkSxonz_U@gL3-N zR?sZ?iJdQ>upfJ1PoMzPr{BAmzfAJ`H_`prw@3G5FXaQYlnu}k<1rebr3u{s62Dku zI^);W!IJVA@#|7rf~I>D)G2lq>;#v;OXRoa`RRD}0w1EIUS&5Y$<4=OWKSf?IiO_n z%sl!ab}18RgS`ES9@oH6+^Xac(V^fc(?Kn^OX1mBnRr@cAG)!L)>9w2AIlt6J4%6? zl<*Q-7}{~cCblr7C+?gyF@g9TB6&zgIu9nGywn9rFdq0M-T%KIhCh7#o+pR!5r&o>B(!PjWs(#D<$ zJD>sYoZ6!uJb8wg9sPsKBD%-xKLkR1yr%NdLy4M_#q|MN#a&tT`@TD)dMQ?Yn_UsH zOOJ_FNuE2w*BT%O=L+%0#dbC~xAaNi#WpeiCex-G@sn*TJkL-$Sb}$6?$N49A;s@? z!=n$024+m$)JCthPdGnvZr~g%}c;z7D73%+qX#e$N{5+^L zcyAXtGd|@VF*qDWyy~*!sd^!{?QWBcokqRZVyUJ`JM+Xa! zg^v3Qk1od4-fupGYyZou;zNI?3F2SSjv*|K+Us<_Lnl?T<5_%oL=DFdIqzs3VqP`~ zBb(1)!sVO^v!naGJ0#3Q>d}NFXY}Yl+&GGTPnzReBUqvxf)-iX`r~-_2VoU=EjiKK z9EVIXxTLi$W@7N)7A7WGlV@%S6+<_)Z>9`wANU3Bv#B!MH4k;X6Xgfa)AuQLCFI^K zAGiYfDRM8Z@moAj%{+5H#_#MtAN6@=rz|mtn=Vqs*cecZgQU_)ySPrQg`l$NhpYrc z;VCirp{30nkZ(6XXyu==qM?sf(LgCJ6qLO@THPoyxcQ7Kt~>kZtP%@}#Pz9N@z_~L z`|RU;>Ar_H47Sh`)kAGqOFz|m2E3g41F+qr_f4Gp6kdIf{WZDeTEsslFM%xv0e|4B z(dLxWUp_>^V4JUOhFxNxXTtcg%hzICDt=JmMK|#k#BZl)-$#LM=C_F~=Vf5)K=VM^ z8fX^g_wXu**~$INB+ejw)S7-O}%(IWr zoo6Cz+reKnK9gdX+b{XLibOuU3K?v(Jg@SOmwY8xMeB4iSVP%G?{^d|Yw!>rpYjdv z-l!2DuF5m=Yy3l9;wlfneM}536X;7NPgIb1I-dX=S(v0NuX2-h*n;Qt#PK(xR+JnY69mv!7n@ zROfn+#_|vIq>cEYxAr)0tIpW~@9*@abiA)Ku>Y_YU>N}e)WM`GE_gf*>{1*t@Erk{ zJgIH{D>@eSlImFvB+1RI@&ud2(4R0Hzoq^IX{zS63|n2Q51A3yx{!^Oe|;#^6mj(- zQ`*&shDD$9`IAri2L)}Fzu~CWhjMwkww%6^d6cblh1ihlb#8~nVmyi^+-ewM0X0ym zE1)m`a0+y!5i={N)#8y;XmaVZ*>Q;1QBYhAU505Ge~G*A8n@La;|aDEi#km&3Hv+w z6#r`Qiz^m&zK-2GB!&G?`oQIS%8xi7b>Zm+N3>^Dy5uRZF<{_@F5;s#pwI&~qqLR> z5PSb>BqG4w2BjpSPJ&v2o|o${;z4c(F<9scJXB3wj-k;yqTTQSAKXb; zbO!gr_9A!ei;|-d)~6tpKUrUE$Gq5PMzZ8|8!QuliLR{Q~vL`gi<39H@PKk}o_O z%8h=au=jjB-tGp)?CgEsVW@t(d@%9=CrEl;qe+cdUuM^A;pIoz8y%N3W3dkj?bY|m zTHPvl1WU<(5nfI6D-2Pj)+e7f=;&5D+1DABh;%P8dZzEa4wN!4`AxX?m+mn(Z#ULn zI>`=ydlo6BPRz>3^X@ZUZ{e_cLXAGreREbW9{5`>g$~K%5btZ}LPaAx%)P=#SEU}s zi?@f*r2&$ZZ?yC95wCrkLDxPUu1}_xV^|{m_jln?UmV$mH!n3sw#VX+SQ0PW^9D`{ z&>#82dOX(}j}Nso{p!og)K=X^kp9o~6L?!_GF?x8nDi;0O9^D^g@wYWQ>7IDGQ2LTdf<>E6217GlN|7ngBe|)q$L7@Z83=F{nL6p$ zPZF33q>aF79>!xlNmk)us(9(hBUHwRDYe=FfxUo=v7U#uI3QsSyFAj`mD)vcI#V)t zDjwQyIPREF*KS1<&GSIN&epD^LzS^x)The0KX&`0oDpbAmb;VIOuQdc+uFrqiKX-N zLjy%SU$R(|kK@@Z5Ca&I5BGq zqx7e9P{uh%cSW?M8Cq{Tnn8w~ddiVzNXlNk_Rk3!+B1+=8F#*Se0%}`-&NBUClVe^ ziH#thAAFOB&N|zPH-wj0`oRD56})>_cihOSj<nAF#;U$to3WF&bfCHd8+&4)IYkUrBOca`04cB0!NaxW_BhO~jPg2v9uL=0*HUJPDN$LggY8-*9LBsNtd95Ed4&Sh7) zccI(kSKo!BpZ;G_uqZWJ-D>m%M%Y9P<0DFJMJbg$=+a1K8E7JJ+T?PPaj&_ZM-@ zk7{A|dO5t}iMdEX?QT3bIO;!1$`{Q10(MdRmO!N-k2^`>nfpnBPphrB4ueFT0NORU z<@Qfx?tpzmw=kh8vs$DW(W?$bx$g_`Q*X78V%7uMK4jZiPZS|ehou}40L>j1KMwzQ zT0GRP_FVuaJRm1SPms`d%%=B7G4uy|PoF{WoBchZ_9+g$)F>H`bd=SrQXutqb%G6# zQV(^ZL&s}7!;BRJBiZ@sCDTCi;vIE()}R3e)MRnh1RI_fDVzwj*nKK4+M&g@Y%d83 zn;0x68zcQMT>#yB&q`ur&na_%5mx>&83aX#ucs=d@T6z?6+6NSRY*=ov7vaL)#l&{ zodw74+NWBrML6B^nqYt*e3D`g{lCO(2-Ttw;3v{2c7H6MeNdY*a`?_d!6JrbHrDIl zMG|(ab`XUhVaSHhrtqX!T*iAe6^;@|SyvQdpswUuFex@kYRM~ZH6_FNAhHraqYnO! zy66-`c&~srr^=TsKou*&Mp?5^Ew#~?|%o)GpB*t{Eal1_{I*e(&$~X1!-9h za+z=Nn{O}08nU^SqP7*4JMQk;>)X{Jo*jN~k~<1&g`YSSKRA<9H&o!OpiVn4F&ZD zIj>srD-PPAMr#!g|8pek{GTyx6O*szNzv9v9>dd745d~c7}^KiAAoncQ>C)o=usDl z2>vE${15EPX*`{}#|dU%=igG^@bHKh&Q&psRpnrwTyi zI!50?n&B(xI$m=a23|%JVkjol0pMcr8RCCWgJhb1UN9_x>G7y`+&>id>?U<8g{>qi0W;hPq zPCPdqtW3j^eg~rbEm&G>u@XtCHXJ(uK(pOqp8BcJj&0RhD_A{DzXvCKhYmshVr%uZ(tRJcqdbl74rPs01-S)SbJ&~LqrU| zO@?h1yPt#d)ihM~gDYwMxE{GN{;m z!s!DFk%c$h3Y_^HgKx%;(ES6Zyz2@!s+y!!FZmSmGnbqwF1|98U9w56JMT))cmq+F zF5QLc#0k@g6U5->7QWv_wf=dez*r!<>q?59_s(X3cU}Ap$Syazr`d&cB#c?4tB!=)dC%rU*e>um?(Fy}*g?L{m=X$-^jDLb3=s1(#*KmG+7d3FN_0E%|aRAb?QW<@9J(0b?zS&~Y-%n)j-I!M0N)jk~_dz(lnwa3*-;(J45G@X{1cyrM zpgy;drP6GrB|5^g=1)!0g zRE1)_16xrVB74X_K`-^nyBz59&PZ^1p+42xLiT~bT(usCCtxxEKJ5QUlsS7xFss{e zWCHq;n(|83x`o*j7gJ63);G90!Rmzk7g+vd+7S>kkv~9Pt4AP$+uXlw2owIL73yR5q?q5_T*pDD_w@{)3o(cSffqaYdDx?}Gel@eNlG@B@Sl@eOZk zXtSIh_JVcRSpolPQ?@E~b}5^@1r76U$r3o+Tkh%verL9?V3YszysBfhXWm}|?!>#= zQ#aBSv(3K^aK3pQOoHhK27lzKQkkQ29DN>9fWx2m zaqayM%gko&l|q;QMkTD*;g3)wzA+jpo&;SUp9%~-I6NM5dpsjJGdU`P0lB zMrzTo#qvProGsd3c14}MU!9V5d}no}Ulb1InJF)*$M<1%_fU0mIne0EYv_CJS@4s0 zNPR1{5)cR(@(Av(SMZuI!FS=Pzhfk`lKNQFLmi8*V+T;5kbiz?-+f=Hw|2&FhU2ap zWb!%T_QCQ>e*2~M^DCGV6Qh%z%m2;cYXxl#yM$Z*ow&*#IPghDONoCBUVcK)6Z|7E zI7`oy{e$5-nVyUN7s7K2J&*VIglDU=Bk<`b6(=UjodXAR@vh<&Wl!YqWMMvWlfWdS z^;$qh49N!Dj~7nQvEcMwkNJwV5Hj^CM%4e=_gP}RYFw#QWWf^$!Q#)jtGBd7r?)_w zMH)m;lso?`DW@6}r(By@ys{p(ni1=NJqe(CR|-q6jNUhtBq`e^WmjZuUL$bF$SX5^ zYH6;xqPF_8q)?-ON(r#&g)mtZIV;nvoCs`5@~It22e^#JKywFqB+PVw9;lZQxSEQ~ zW2q>6U(MU+$!o;=)>_fT;1$aM=JK3*ru+&bZQe8tmLP(EOV^y@i9T)e zlX*VsPW}3}`E*;S_50yS?JYRw{ZyObIC3KiRV%L5)XHZ?J}U&FM=`rbR7Dd=k?b@+UGZjy%>ju|(iPB7#? zN@`vs=$yjoD8xVs=XWInMB$F+b@$0Eo!rq>tfkA-+AW6|uL)__i@#UP6`E()aaS$@bicM9vQx z;_??Q6elWV?TJAQj;Xo8Jimd|!Di|gm0mUSkT6)V=LRyq zT8Cg0mm=b0K-D4VAHRW_8*$gQSU(xUI(M_Ag0<6KQZnN1b3Ga}5D(yZ(7ia;XQ4>s zC3t@kuR6QRFyo)vK9;`_^7Ts~S=+)AZo`D3n2^H~ZpB7bJIToIepTznk|!YCJ+b=E zXUW4bx#OApOU$9}OttmKUigp|7mUR5&tv@>iz#vsb7@}x>SWya5!O#R)G*d>&=%S* zXf(18$4l$P+J6Z@qkj(idy?+|u|AIPE8%@=-21xnSo{Y>>MeGkdL!OgCMjS@CPi+b z{d)^?y~+`vax;pS>$5U_YARh^M6%R)A12^z33TKIl!=fD`5&ODEkaQ{Mp8RztrUJt zCUJ|4BDnBsR?N$umr%F;6)P9EeElw7{!%DN6{NC8Np&~ang6Tehn_OV-AWNYuc|gt zJ`=o8iG#--idBO2C-c2N$->>jZqclmK0dR)z(GMNwMFf70h-RQ{UP}FzDI*|*1ea- zrr#B~PJwcGc{*EudHXUx(K?tp!G{^QylCdIDQh@hz7A$xopQo(te6TjI0&d@qG;}T^D{~IXsaJ^DnO?OUO zcMRrJmhPrCo6)x5E%Lf4@3fN)_;Ccr`xmu?EJ4MD)tKOA2@hbx?R>_b8J~gqVg1cu zHUzXulDdEw^|66?gpqsLVBWb$c#b>`QU|b9`6e~na16Ruu(*^BC;_{{Sh$r>Nd)e? zR^Zz?l(`_)?#&=7%+AWxrko-Q$a52>g2{i@9fMfqFvGGz-~NSmj$2=c)JSEe_9ouu zUKW#25tjXX$kwk%@wS&G+=~f$m{7nH?!gLPqWG>h`2;QTxa017w2mDV<40W7P;H^j z;_?*?r$K`_8E^@PmKngVu=eAa-mK;tjsa6JJ`9e&qw}>)57Zfs9aGS*xz}zXc0)d7 zE5=9tnVQhV$nY!8m_Uu}9>}VLs&gZowLFk)m64B-O`d~JYY#P1KVAT+$b;JJ&@25W z?4QokAAocnSBkaWEa7fUz~GB^1xr|fC7(I_eV2i|5y!25QM-=rP2+b`Rsvdi19{({ zwBT|R-es|10i^df)BjBA7BpUvkX_^9p)0Xj2HsV=%-u@hLYBqG2<1&{lT{gu#9}-p2;t`kEF)sS* z5>A;9D32_k#gP7inI1;&$}k*zC*hg{hV-kD9y(ZRh9fkYEJji;^2O2fNn6;G#V(+J zG245oW|(09{R#OOk@hh+N1FQgM%KDK845=JZVDd;rSS`L;xtAr_!Ez25 zhU)N#fH2?=b&vBW!5B^k?3wv3VvA2# zOt4sD^q4l$49cN50;LVdkV#~;bzp6v$(GN703?B5xHtZ;;pjOLwGj^7DTD9R^vhwUMjeixtKr*NAU!T?%B)`3e!*Nn5ueh zSQYcn`O@N6Ag+MqxCFD;(&CllK88v!3LOJLax5y(?2p9w41wh}9u{Bidc2`p>sQ-$ z{y_iM@~XP#RfQTCpNA_}*d7^0j^9oYq7E2eOgyLlf(woL^)4G{1BYiki)|*vE6wrW zYB&}_J~gV;0W#eKErvX&2y!T588`*b8@6C8iG$T-)B1Bm(hA&V*uc{vM zV#WBIGS_B8pJ6{EdLNI&H8+=1#hZAw6IjuiZorUm@TX#nxv}7>Xfv}$_|gR)tys~Ij)_b zdCRs+X`2wl{}HDb)fIUyx*lrYA!%NXsciF=9rY=mOzmYKUHz@pg{O#N=Q!z4QlLtt zJs89A`th6%-m=p^JokMeDq~;PWq3*E>fe@?4VpXa_L;bA?)E|Q&E@bg@b)3JBwFXr z8a&AR){Xp6E5sJU?qA!zYs@t7+UV1p=93gnlcI1wWk$XyJhRlhI-0jW`lNt~B-wll zo`@`E;MO6fG}EU{$wrn3m!)h&-sU=YN~WbmX|8kk$%Nr5xkj+yBe=x%#J&{wT2CV& z3)_5X5|0Cza@;ku%z|5kjs)uLuE54pZPHcb{qd5t9ikLTuMWr0PR7WpOmHo%iUMypL-?Qw zl%)b%3WLpW6YfL!DPE;<-z9s#`0FS8Kib{2L6FaH+K|G$1M!W~HefC{>e#%-h@-p` zvi#SW$uyxG`&%k-Bk|)|D8O9cR|5KY|5R2k{L920RcXNj)VHnz5Jc8CT7UDj zZ5lHUF5@r`j?RpZ8;%Z&qILjDz%39L7L|aG-lhSA3xu`5->ItGeY*+jyx;r%@jXxO z^HiT&Pi?18ovN-n<=!VZ?pyeFAceiJvVFA$<`L^BKHsJ!0$R%yR}B`6z>wCFlv}Z zHFOQ<*`RzO{H4+Oz4^h$eW+-H>>Ou$Z~N_jtiBs$J%=_ca!wIz>E=LVfNCS2xwrYC|?T1Gj%SIbuSS2STyP*%nDc6aQwC2gI! zIIg$d-3-2eIM(&8-FrXf{n7$G>IMhV|fD`Y#M}cYl>ug%@E|S?hN%v}xBT7BqraZ&MoV zG3=&+ef0;;`F92UVkNzXe>Y~3$n~z+fHt)GymD}7M zXqGn8rK&VsB(o!#HhyYHYqfi)%l1RN5EI-W?jcq7saehL=4{B(*2Nf`n_Z9EJd@~Z z5OletLt+J0?XIViYl$-b3J~EB}4N^9{s*~I1`cd`H=mXnPrC~0wKN8$X3x=%i z@>yy1xf`~aad4YwEpYJ(2 zt;6aSC^3*8)8SXgBZCxYjYSq1?Wt<@^&Bn_q3Cjdld8;PDb=85Y|K^ z#N48bJ<_B8k57pEpBwVzk!Y?M|5`em(nS1s#D>@rlxN_9@+O1n|WpbW&PrWUL`vZ)IslFtne!AvPO@ zq@pR4<2IGHhJbHDi1f?lvP+JwqveRR&8WYt55Qd+}Dd(fUPat=WdP_^nYjrC;yBX zBL9U%{{LW?REm=Gb3eCfTQLOIn})!Vuh|g5k`fFw!@>zYpSFy?vbw*q1p3(9{fnms z=_%~tHu^7cooqX+)mxZdeO@o^$9hz19&T zSY;`V6*JMEM6izBuat(rA(pn)mepa+U8gLiO~QQb3v1T9`HlN*T2=CbOso4yl{4+& zqAk6{DyQ!wMBguW(R}ljYcC-_ z)6j>!Ka8#k5xkQKn;*2@X1X90=I1u8BSgO)f_^{tUlF3;mdT7)zfE^2tZ%V<5@(pt z$536BM%pK&`YH`Cnh5W&Gy_adJcnrgGEVAWoFIif`()}^@3pZg>sE7z6qN2`IZg4- z7$J-7UW~Y}Wb<5=Lf4)erkXOE5Y~^h=$jzB%=?u#FVRo`6)&}izO0|#ls3I_;%-XgS}_NCr!5;^Lx=8^1^ z;_w!Hu6hf$TVH3l-KLIa`9u7@ZhN_QeY!R&)jy7y!)w>42fmNIzi!i7=RY`H$gdm0O)!DJ(mVd-F*{lmHR8=A8q zM>GbR|ARDW%A43EL0Y0elXs}k5*z6PJOm-2QiQz#B;=HZ`$LHBpS zoFWT>Pgz>R??&o}=|BTSlN9H0e<>ZG>mJ25Kau>BBIK8pg~llqcCI%>k3yEQvSn~% zP+5AEhQh?86s3XApOm}rw$S^EuzIhGVIvLG#NlCw_GE3ML-b4Erz>z&I@*!P8aS&B zV<9jgG``rMr%OazT62A_{nVQNhmHOFkht~Kk5S?lb;5GS`nRtpO>+7o#PB~6D&E>~ z@m`}tn_Y+YXUr?pQE~y^keyPVn!E5dGe&x}K4qGrhlD^lm1oXxT+V*#^ zpG7-iO)V2rNbjljb^2vXB+7zGy=(Oc+0O9+{eE+j@{{*l>q7Oly1OK0$;FJ=`^&7_ z#Z>JXRPDUgF{0YVTpcrPv&hDF2&VIDU)ss5JtJIg$SZ6>cO6%j(EWaJ8I0_OPCj;+ zh6C+@jcp-}x`d`Y*lbxoTEL|!i%I1d>IC%PQ?s3ZB(m9V4z<|tJ5SMKi_hcLuS4}I zPnRQ<-&?sNKej+jp?vJ@|0R9+ao%=Uni7NmqP^K4os9VWG`+j;NRa~@Li{nJKi(oH zmqqpP=koJYJO|c02hhWT<&6C+OHV_v+(xX97KWz(8^gElX0aaH=0l%kv)z&MbEN$8 z%OqK8cp{eO^Z6O$w8M*b(e{VZI2;8Odnh7aywb1~@yZu{8(gR~43v3SW|uGeE_j7! zT8jHfzj?VTt);O%y7TDjeykeo`1@u(Yjg9i7<+q%L&kW>BqfBhZ?!_}Yzk1@bvg#& zt;m4%e|ao5>6KVj?av24&^B2YeI+GQ|L?X0a*z>bJGK~_mZCQ6aS(fNbstVzaEBG5 zZhlgmZE=FiA7kc!7TUoe+#L!C#-=s9d}{9gdHqN+XOhixM+!-Ty*4C_=1;nI$#eUA zZwR8e+Gpf~ectzwDL1;Fpkzo|jTnVbwk(-O*^FgZ>t_A+TR*xPwXbn{1w&ldWrF7+2q+EPaZTy7s+IdFQ*V zJ>KLPBFa|fs?Fyx-bD9NZC+bU0))dih#?-@V{JY@3_MWVY|HXHhg;twUp9YQX><3` zKC64ZjPR^YSh0Saue|ehK8f$7eA-8$XKb57-$i~i+3~U~6C1aHps;%Py5tRDwWBvA(59U1e++C1V<@oG zdZ?L36-Jr!tH9QunZN2PhLH7F))A_ODh$1`TInr6!^K>*cU7=Ips4V~NB+@@z6ZmkCd8O$N>Odj42` z;wMFUJB1xFa_`A@ABmaUSHJmOI6CA*Tiw1`ts!GMtB?T`cOtof>U)Rmtw>HJnm=WgAidW+=oH!1i1 zf#J(l9(=qP4bS7T%Kc5f$m@J%>HWQ!{zawHf!4RaMI))8afdU_O8@ODi+dy38&~hO zS=+2ytg>n{B>tTZKJZ2DXt>0UQ%QW_jiD}DPkj--WNa-G_ld5}s8+Qf^x=L`Yd=)yx%$|0(O62u0$w6#vz&0WlC6EnD<1KVOi71$!uWT10 z6*ZXk4I%^UTQnh#uTUD_WT#Y%Vh|Q%{Z}m0^TF0<6g4&!746Kl!G-pdS-2cVHA`u% zjzAUXFE+);0IXy6ceh%ei35$HT@J@myToPe$mG3&VV#FY!4S{WM;@g27LJGZ2f9nY z?Pt;-qeaifKcC(obL#Z->E`UAW1;kd9!!+aN#h+_`AVDwkiM8T33be3NSFE`9avr_ zeXENc8Flpx4|U?6Sl+2h!%cDY&|F*wVY7SbmOA}Er8GPo$700UwU4nTkCT`hiDFhx z-9jXL^D$NgAbTlG(kVnByE%kxJ*Y8`#+u9dA|0zPW+m63pjX|J zj+x&N?54f?{Y-lerT%IOpXYR=zHyv1#4z<=dn{uA={Q<1JyuXsh{nzr`c)Vcpfjh` za8g_tOTS~r_);3_3@8hi!{Pgn^7pI3HU4HjMC-*M7y|8ipyaHD8-2t(7Ec#>qlNS7 z9>z}pD@Vih%JBc`D9w`BW@I|F85!9urxd0`Wd=pjw~nT6DNGa#3rEIHVtc1*C~dWn zT9r(P2PqfyRbIO`#fBaD)ud$weu=OA(NzDVrux$v zDum}5fd`Hl`+uSSdnQh498Bx-FXA%%sUiIcWrdr8Qbc@nq#} zbRV}YNO_%bmp92imS zma)=1_>M`o-Ure`Cb{>TCUu1uv{74Nyk)_`#T`@YR&oDW+C8HV>a(f^``b$ zn|GrOo89v>W(_LP-kW!kT1sk?ylH2=PgQkfWTH^~H*OOUHY@kNf`)ZhWXzIHs|9KY z6T8V;OWPV4{mSC}UMzGL{nvY^u*(QBtv|%12C66Jc1g*IR}Eqm;hCJQtfFAv>lBQx&%>(U-9-$r!f9cPC8Yp%_cw{m zt1lzT5wMc8VGD%x7}g*aeb6XM<4$tD%G#8*dlF7h2yn>*0!YiVtkNtyBn z0iyTwb2ef;P@|#48YcI_YDuM~dB06msB0M^#J{|ewVqKpwG`x+!oq$Vw+U^y+3uYu zgL>DZE4H}TW?L5zhKrNW{SWc#j2g=-k@*QiHX~#$y8Q^7f(Wg9t(?17<95YMS~`&A zj3gupj1lr-WZH)#)3zCDmo8*!Z+s7C9TiO!Y4IT1L@-J<_h0z^ka+Q32};AClSoFO zsmwq7NJt*VG7T*1qO)0Z5$-JTw|sA0od3e3^#1@_!Kz)K+Ppj7s=Q@en(po#mbI46 zXC!2mH=)4{J&*AxKnRx|!e~$)@%hi=?>h)0j#C zFP!T1y@SzkH+F^S!G@loPGSE^uR~5FDl&>aH^kYrW^cZn<Z=P%uk#s7Ed4q>DWMn$c!^w>{o(IIyf3^#9 zSQ}`2^hraQDo}cSiSX-#(%Fp2{`=534&r-hDx?bxMt1sakJ9)_tf6G$^}!NTL~gd|Y>;Rc$o}u@SD(fzJA~095ul&0)|-fuG8xAX zu$&;8B-Ud+^tpfLag%&=Xggw8i}{i&>Hk}o`Tr4;0%*(;2TP%wVKhbi6S_j{BXEqY zB`jrVzYkcqfm2XB`|qIzKm=KZis%3LaoPc0F6e!S(jcQ{ys4L?=@dRXDh-OWiH@g9 zv5x7M8%;0ZYRiqBpBIb_byYnWV|0^iIz(!RhW?|6@{0X$Ah^k)HS2Y$jNvh{!0$?D zf4Ci#WLH0$cPrRG)fJllr<`J zfbBi%7b@&(4cu0(#pW%})+eTOmNH${wp&3Rq@UR4QB&+1Q|rqPg{f?|VO!GrKpJ8s zXK3&GzYU*v(cc`%vPaH=hVc9$D@%7CWt*2&P0^tkCt2_2@&R?v5N+)U-bXq6O)WKgCV5!1)f#4 zJygQ>L2NW@V~){gbEucu_|WGLFc^a1c#Z$zvoGP67WNB`_6I$^SRu$?3iZW zmZlxjo{*SJzY7MD>OCf>-8cOp%@gS42gb7FdZX!&+?;)Zl=AR?m7uk3qBUnHNy~ow zckGx&gG@ih>LF$hwqC7@YX>A9y&Myw-9N>IDEeRwDb@aft``;tCO2Ueu+iz~ ze3j0bZ|g_o{GBmkRmIlDCfRlRJN=0F?SUAA;iPX);seR9eZiF0`t_XyXfQ8)&gwpv zTcG(>$ex8t!)jKJ^)eq6$dGj$Wku_)I@W`oKT%&D;D5nB*591X12l@eu;yF{PU7lq zt^XRtSIc(MS>3LWHP#J*c&rD|Rtti>v3>|sNE00{d(}J{(wE~K!37C__CeZWvnT4y zlO?9OwodhuVyg{m>4a3(y*9<+jca6D$&L;dO3G+^aeoT&v1b1ty4bLw_Eip3$&TgH zzmz9+i_-8sFNV;uKcbgFmpIOb7Mf#55l% zOP}C;{0)9B&e#di7b#}4s7+yH5#9<=mL6yAcP!UACEr^d;=znaK9WL<%e!geXEde1 zJwP2lDV^q^Gmp?zwa@=1opM_%`#(k4hJ;+!gw#WCNk z>;9+t=wQb?Nn@VKk{&IIoIm~V{3yl_ZxH3d*?cgi%lSk0Sr2_;b^j;De;u2)_lcfa z4j0Qobf?(M@jHKv-q5A{Q|$1QuN85HBMtRW@GEzNgAuM)z~&pY&3S#*mh&vwr!u_)TDHB7of@;!MT)Bh$m^9DX;P2K*(t|(N0}54QRc_Qjn=v4 zRMg!>a^5ctuSAzl70sk8CFn-T3^qA($FRyUoI17}$AsEjIBDf6&EBO=wS~I4ai7wR*OzJ@y~2p|14dC1bph7VA_5w^bc1O_;Xl z@qjq`g6JNEA>ZRU?q*_@L&fvsVJ)iTRf*8)Pf^kKu*350v4(fn9V3sFw5uQm^XInH z$fh|~ZL?`XdQ{_;TxXa{($%qK{n>bdHDPb{-<;zEBW)<>$L0qCqB&;9OA==*8w-0EEU6^p3Pdt4JH`}bD6a*+*JYo{ZOuLeLJ44rmN>WwP7eCD)s?y)GFJQ^ZwkgpzrA-lRCRMhN};ya_OT6J97#JayVLP3)$P&S!cn7Z zYZv9y%*!fisDxGwt8I82bjcE)DV!$55XrizBgdKfr)kFa?hg9`2@9Mn4l3M3a1P8y z4s>M|f^~^^Wl&LtT{EpBk|R>;S*FG(^sRWB=?w_d>@>Z5i;*Oj`3U=IaGZsqDwKWh zdae)j%Q+)){UANNj)|TEG%~*UA)Fd`F85Yz|5a5hwGr7D$sFFRZ1RSWuO1PQ!dt%N z6FB)1J`e47_rtcB(Yw4uA$hqTZsTv8`Ru0dT2pR%yyf(o73Cti8zK@qD{~DOi;d;R ziHy2)+|m>KNv7oxNB0luS40^8yS$WEVw_FLbh zX!!|u*)~?a@wmE%#Oz+zIoief0j7SpJe^ z>4J8r<{7@Scy7hYu!V(TzIq>*5=ET~C79t^GTE!m`p9>HhAhu7zt1v2#uSzcqjmED z&!gX2SLsfbjs+ZSto}GtKXHrz-vTaN zY>exlVl)OX6aoX!5913}X*9==$7}yhQ71QPzkltkZKCdyPZqUOnmpCn(k-doI8?-%CZKY|A4(!6Q+6-S-+N5gB7_pF;6{4SX?CVU0iYB$4;>L9B7PcohMR zL=bpZdBFR+h<+O-P8u-m>GN#ro)9MuxR5aM-S$&QmNxo|j$h@j2wa#dL zK)QSGS&X;h;$8`b?@mDCqh)OgARBwrordNIame1x+jpze#-D~C^BPGU8CqiUO~QOc zZ8HDThh8j?G8WcbfkeK!LWQ|6?qv@SCC@`HYHuU@|I~hL_U$P?6?*kVH?JICqE-3U zr<~@r)eL#0m1c9|m%0X#yv_di^0^%*u-x$Jbjt7U#7`>r7sQ>ZO& zx$5^UB@`v9s9mG(h8%P!tiYF)`<6UYV9rFd-27Jflf#1dP|!Kda~CAKYi)1q#kqY?~PC#NHkaCVJ?{L zm+XFIeG1psZe5as^5I8VcjZ%TmC0=aws6Zt7~f_aP(n#cUHUeX4aZ*RnTcC~%w2QT z#bcit6D!g<@a@1)@cMBm2qkn~@MT!_+STw<*c|d-`N_7BW6svj&8=ZoHH@}v`79=R z%G#z+Zdrhb@Z8!aNu5jqJmjc=jc#wT{J3umibl0f89aHj?X$qQwJZHMOwkt2w!hc4 z-kD_{(Onbb+ZuKp9@{}|+wxL+E_M$tV>SH+yo(ha(f=TkM}E8?_-)?(K_!HF2P=KQ z)i|!dizaIZwSTrfI0IIrB%4bij4GW9L**oMbta=q)W%>eQ?$uhSI$%%@TQ^lzKBqN zkz@?k}lYU}wwDmeHZ(u?FG|1@h&;<+#G)I{HdOw^OHs>K03Wgev)F5Uj4@?Gc4hyP&jAo#`KYI z^cwCT%?0-7xf@SK89AhO#U`Vz)U&*4)<-?Luq5P;*swow0JPt$-}4|}m>Jgux94-I z*hjACRr=2c?@yRTmyD(s>tSWBM`csLPK9cwd2Aht9neYm0|E4>PjFkD=V78vRb}cD zc;(OT7JsbqidH&#sBt~)MR{~RC(1h(FRqBqChywXy@JM>8XJaTY~;w~)Scf*{r(GA zIOKKeuDmq8m%FHMKG)}(EN*IcUrF$>QYNyUrm6=U&CMq+Nn8RpYt2tz-fH3%-WuAe!mY;FLNS~9EHjIX zDMOn!Kljp8Y%};>MkL%h;Fodb=iAX8KYf)Mc45OXgB=rw%*x* zm5pLc8YXaSTi)JGFp!(|NFS;Fr(L1#ntrKLvXWFw3Dl} ztZ7rva~rF1we7yRUipRq&Bcrur}KZrWXac5V5uBXzrpOR=lokJpU#Rz4H!-u7 zDjAO@CVoLhWWi+V9+kOU3)Wb#Bl!=f=P`>+1 z+t$e2uL7P-9qm&e{6qPG-5wTWaiOm*{s?eB6x>+)R6CCpK6a{JFpxtf5Dy|K z{{}#A80dc-c>}I54RcV894irQe)D0DD^FF*Q7iG65PB0oe6v&)$_c*%sPw?~L4y6s z#^N8@&e}N3b)S(ulvLl#`h=unzd}^8e#OdltHv^I+Y>xogD5xi(C-!H#(dusKk&VP zY-gQ{VLTr<_A6|g`}$&JAFau|dca`&gIyiEEO38<9dgMqN~8MP1=6JkwYGu5$dP-l zu7i3-XJ`NBM#XnaTfhFHe|lH_8WThouGeGEPfabLmD}4VG+6#dsB^hjlvU_kvEvZY z_9xbcuKH74hb&Q{r`!Rh6E18G|L%0@3{goEl+F^ICG?WYdb71A`Td}&ZOh3kz0NcA zVP5;RO!dzby6GA~-l?(^^Ux~}P8%1J9=Tg2Yz=hVAK}@5?4ETKMKz?^lhvwT>+t>X z851ps7$n~YgqZf=n`@u__Tm5d2K_O(J5_R2@s4`gyxP@?zbsryPuj$kP?W1>E$ThK z80WZ=>JtcvZLEDs?6$5TLB!Q|Y7YJ#Db%fh@dNvVNAiTj#Pi0~YCbNF`P6mFqZ3TO z7gIM@?)R{)0p9(-j4;uNLo)l$-$`+Lqn~a;TLiS;#T4UO=BBHFFWZuK0>|&{S*E|c z(#=6yl@?OUfIh z&AiD|uWNOSz#7l|I6cQ#|3QTts!?bfY%X*9)mwlck#Q9l-a~Az?3P&kvm!}7hTrMd z`15=h7ho2iEOe_D(+{soN$njKvISgxa-26nq6+p?Q2PzpDh~iM+*b}lpXvi*v3A;x zeHGnyn77Hh88hzH;t#cpFvRB-I-ZcQrxNmsNuulY+P;c}tvPx|T?BHRtO75Zj%qLa z`qGO$bh*E_c?e&y<|v;vRHu{Fvq>us_f@I@(Pki3Z$--$NoCcFb}@onK^}cbW0Wna zUvnB_FW$cO$a zOk`i}{tz2A4Wz+OJ9HU8&{}Y14G|AVHvZG!R@@>Ieadx)2WK=V0nLtjg9#jV_14|F%I>B$C%D?hRMqOetcAoFRU zw_UBx1U#^SqRSv<$tDBQL5M#;cy~Cc_jQ~h!kaNh+J%6j3l>c)ciUjEe5&Sms>dA` ziN4=Oncs%z#a0)ue!pE03cpgyiv{wEsF=PP@|0y-brGXzhKSH@Z-2*^bVH7d$+5(?um_pENyI1~at*p{1;_0EvN*L^@_YM5NWR+lAtFdKRBpjq%T zLBG^9`jMnRI}#(nb_zpBTC9ItRC68~jf20nbGFAv0+A!zY#v+)miRtn01im1x?vmL z8Z2(cGQQO&jM`5UHd@$rXIp3q`4xwp=XVw6(0}&ao41|T7nVzX0KUYgI=qNaui;Q5 z+ek&X$Mqo1N7$M(KCQC$sxId9kdI`0(klD8NpGB#2c+DbI>R0V4xs0IPTKlak78df zUf9TDeT&_ad=?1AyvDviCV{MFVs7Q))=Q@PnM@CGCX$-kuYsRuK0x2|A8zz1Q$x3! zEXhtEp7?3{P&Rs3+Q1as94bO}7edZYW?{4}9Pc1B1D1@3fQD|1LFTq*C@g>dZ?ZsD zqb1TxE4-OEGJ1(79hy0MxrlCfyx&K^I|?LC=lrZY6y?kjVTq;jMGo~KT1{(wfyA5(Q`$^kzAl??KXWfeyz z_LrwrFH$!ju!)Q8acRwa)8cPkOvYtI2P?ERH@Bj$YqWfXfek}GtqrFeX~*gvxtKb-|{yQk_NU^ST<@~ z_h>JKQEGqC2Nq85Nh35&%mi}RkI;6WWnP+7Mo%TBtVK7Fm`eMK`NC_F$W3)MQwN4O z&|Gq?HvX5ZfcqHpvbP#SgSzg(BiZ&y_k2P3Y}K$1EW=?V7q1}$j!wP`x+iiZ=HQf0 z3r(k2vnO{yre=j*1-X<$oB`hGvmQF+?}nvHIYh@%FMyP3$kR)=AY?e>2x9Ag{{W`W z5tiN&!06u$yXM{v5|9nH$K4g1c!_8ky*me8Y2=?tFSMftVpi|htVI9(&rq@TgVTWL z_T`_+7vpdPwB6sk$mF>B4;&HPD|35m(Wji2_c)e|mvzAf-qf0l$5lp2IfNU5jbw>l?eW=Z9*d&+##s@q-U*|#6Q??_O_-TPs5@V^-##7VadmSc_79boihOOV*PX5aoGFN!)ifnT?H<#ns}RuH6$oe>>T(|&9o8TrJcquuKWy>;HPJ2CV80J-2+g>L7TL5{$pg-rJ zakB5dbC0`-?!DuwM>lv6I_U=vhYOp4pTAxM4A>c0Xkqwz-wJc}G;eSJa8o)Naczya z2T{A7KL*aM66SsA%(l@5I4AgVm1*2hOplmsX8gWdvZ))CIxTC(`*C;2kC zxdu#|EsJ~>;zRVWIXIO{q^Si0FQ9JkqI{+QMAToAS*$b&+~g{Bgc9j-JNqx_2UZiCz~s=9(W8w*CcFsLl@5y${!oi3m}lj%QR%QXhsUgcZ7%R_ca8 zbtO>aywcMljJnaC`fL3Pv%iOYw*zf5sYT8wN+a}Og9f%?v%KImfhV`B7GD1NC9$MkRizat z&^V3_*!@~;6Sh6;imI-DOSE;-3T(fw1VLF`_Q>v-w|y%vvpNuq&gH6K4#`ivfR!0( z7i&}Yx0*7H+c3%yvfmvgszzm7VN6FZZ48x>&^CaTD^$}Ixt1JmAOgkD8!@2?#LNfh?r5eSn}hoHK)i>gnPf6Y5iB@iclyUPYtd4dte~cYI$F?sDqR2b zdCbJRfaZ~`{~{z?+Tg$3>)9U_9){nbVdP76MNF*o@0rogr8(}q)9jX`q)Sd}o~a7D zwXaRVt~+S625|&nahA60ovtaZ;t&4DfrW|63Sme0_N=LbZ12n1k*nA53p4`m5-u9I zBm+=ld5WJ+%p7^%n(>9DT$mIarcCNQ_Zm|daO$?;dcl~lm^g0X zm;7mYu(!b6m8KHOq-ncX%sDvHj@Fv+HYVS!bz&*Lvz^}_IH<}+nFzC+_B%EnL7qfG*C=1IFV8)RF`&;c=CDCrT-U=FUInjj*7i7AuTE$2d7 zXb|>AT%avhcncq!AKV|LJ5i!Z-eJ#-{6j{qXqPnft*dcOfO#p^PavX^3c;;z`o@q0mwW4OiTXju52Gk54z=Jzwpqf(ui(#eNZ zFmtm0n9r1gNQ@lW4sVeoYLp= z$dXata)Nhim6lTcPl7s#ZxKPZt`F_j-7rr9Q@efqxsmcmoXz1fv| z4DjqF2%`noQ^IAr;;-X4PR$Rtk*zTYyI(OOttGwq_t!}`Mt?4^q<%{N8r0)1ctC`V zAiBrIlKv`RH|N8r6xgrL(2?#Ok4=-(2LUsRM-^{`RK-m9c|Omt_GXbvJOZM6v5{G-+j}J6OBMKTpqxx5 z%Q%SvQy_Rs5sB1~m*JPve1+NVkJ$V7-$F3lU=cu+P&QkhPIu92+{d*chcyTiz3SJH zx&4S6hg!3LpH5rF6ar2z?QH2yi6@`sBU#JYwnE%q=3zy0Pe*^OWy--XK{Wvapo(a7 zKI}u8l5c`$wzqg%5C^9$aPH{aQPX<%coQ+b_(dNTiPCVuXx&S>rv|PSY|aRS8op&d z?Iy2ZA%ET!eGl=aivw8H3UAuu`V_f`BPd&JS`*VUOI~wZ-#FYmn0k+M99A)=>Bb?k z0;n$oV_1SQx}++FIoH75w;fLf4PS-bEt(C-K5&u4GuBaN>CJyh?JBL<{~YK42;d~= zuFCJ$u{gMQAo8@+3re?oM>#ZP_Nj!l*C58Z<^I^H+ibN=%VOLZrFe(lrP*McV*&0P zgxjDuWLhG{F~qIPJ65wF(z@>FFmHercRzsOP0~fc?3LB-l{@k?i!VyS+VsVc%r7es za=Ew%@%eo$%p9tXqo)#fVTuiypRKF%oEhM0sn>8f08t2F4Lruux*eInZQ*XM3ZAsf z4?xd9AzuTZvb4HO%*r;d)9Ea)5Q*H3|bv_M_IBHWH>ZtyUEp>s>kCfw4`A;?p*z6F8 zc{P{nx5-20(f9`Ur2MpTdTn(~>oJREd z0g)k_z~d`Zr9&UpRjis2<_&>@y=&Yn$j_H+Ja7{zy%vD& zE#C1T&Ib&|huHMby;a&h*Df5==>tfC16kzQv-2#Pq&{*S#~7tik;QXz{B2^0juwGd z&PQK1;WuEdLoV(iFw{XO|0b*R?%?B-;~We;8XI{cAm1p^2tB4Rzt`OD;$_&D{WqFA zVcM6CcL)$^{VZsd+!Md`}f3Ly5I#qh?ly0?;h%{i@C{nr|5B5$e6Fe{= z-%wM!RGCL5mC(rF)>C?c4+dt_3m-bBI&5Qq>(+1GR61-kXeA40fMD(Vu_8|^#9xas zQVw75GqyiN8XRg^9|e4Ycvt3dau~P3OT11ro!elScD@a~CcE)Bbay=W;B#zDv<9^E z|F*yFI;9>x4(>tk=KSH7;IdY6)ME3sb(}B7CDuu0iBU*xCF~2=adFmBnCvr8QA>h)q%R1r zMPZSZCn(nz@V3($%nsfyyh(8K(8_ACDnH80Wui__Sxs)5!s3i6D&M#xI^_}EPMn*} zjEUA$kol$jsn;o68sR02JKmv1JvC7&%al_3^g7^6v4U$V9KlY~*O-3MZ9=!%U&30_ zXM7;;m?39s$x&p>FW#0fFUj+C;zDwDb#6Jpl5x>$6}YHGWtyU@uC~QjGNxu-#+0t2 zuA`@{okA^5fS!do^pk+->kB##4gaTv&ehF_eG%K(Q+EJF)vqafP?NzdNJ^H$VnQb2 zN(i%3%ZVb5{_pAq#;bZxUIXJREB>Z7`Cu|w7r?+}KU58{^bKS$ zG~lTJ9ERQN4e0^vL%$OrC799%-lt|~9UYI=dac%QYz|(cO+T0Pc)ssq_m-i5JRcQ7 zME-@zTUH18j#JVGq6_tHGAgC4nbMX>V_Wje8x^F4+;2xdRi&Y>#mg`jrYn@K(SxVp z2=PDSuzT%uKDs#)dTx8S`QD$mA=i!{JV%M$*@#{K>{&0IJm{Gh&prBPPPt<^-=|(E z^dSbAfVD;l*rdCp{q~J(D8waImqNa7X(4HYe$yw4b6LyDT0Fg|qkM=$4|v(M5hzU> z-K!?UkuXSXyl^q5lyEd&@ri|98{K-A10%rqOLzgg&oykqu{D0FFl!^ zvWtbD$>n`C!9LOQtw9zR-dtYV)E246*iu~0RI9bJ1d$;_eQ%(qsd0fzk|9Gi2!Bp0 zN>vSY>ogeAM3YH*RPK~pipw?O5X+D$(>z}Ho3c2ZA7h~tqM+%>rW#GQ3R|K^WpQQm zm|9Svm=t~0-=_u>nF7hUl&l7`Wf^yk)P)HGW=Eq@th2204DE3eQ+Lt7f8nw6IL7~> zbhPK2OjU8nvKLkE&TUr9oH4+DC*qu*>5CZh1(EG)Yfvj8$_km~$HQ5~j)8#)ahfS`|LFY(ZJ>D%RquNv!DCq7 zRzD~5@7jr~ayrMUYPv)Z7U|<0l#Cn|JtcMXc(ZBxHq_tWEtLNqB-~TUD$Q=NpOwgE zuyk*^QGm{tAVM72AirQoySPROqVpBnh%l={8X1zGpVKQ@$o4X;`!o|Hi=*0q`c-YV ztuE**2;mKGPqxW_^X9aux#p_W)V^JmR2C}l3A^);7pAK*f0ajCaLp878D}h)k(x1Q zHJ{)eRkM`fY@Z`|ViUkmaKLc>_KjQuHujI=Wo0=bHqBL*4wrW^XWSjV)17E`bdtBx z*Zc+sW_;rnWp07^ z^|S}zSn2zE1FglPx)XoLl?X~|rvYjdFw>sgjVYUUvJyksVOgeNI#EKF<5=cc z)>K2f`_oiKf*)ftSmECV`)M=#sna`u(Rfj$unX2IgGEiC5HnSJ@!K3?8R01lK(V|!MWROuCCnv6RpooObGj;r{6FHsige0s z%Eg7gSP>r$05KU`_k& zP?4p>%IagmI?Cp0^vSwJdUUmS$NSi^;n@cbfLFWs?yw@Yk{IHBePVb6p55r$NcsR; z;UW>EK}kaUp*2Xf#--nR_&t=}%1!dE)4YS@onKHY za7kyBW%c{W{pzYZM@;2Td=+|A6w&p3oby|53Ck?Lvxlwm{T&E=x*f6o>+SfJ_V~8c zE8KsRdPAp4O=~ZL&=IvG)d%FhEF72PVZWc(&mYPCO-)ZRhqyw66YKmYOZ<(e!KbkY z5z4;9gYMN03Q6iVwjD+n8xhLq3+qRm03M}(7tezRirZXl_M_eBQy%n_>Y&Xl#cttC znRT&T94em$Eqe}`E{XNmlkR3FGGH$t=fwmh;(cWb0nNJUzO1JK0RIjO26*g*&3`Z6 zb8uj57lgTjuwT%tqan}T29W;3Tr`8-xK1nG-ZYMS^oskdPRn=IM`4k+Wg-mEN-Fl70{3^WEA&lX*0oApfMLeN8IDXBf4CAH@3jeUS z29`L1LHe{-=SzhlyHO3iU>1$^YOQP#)#-b0LSbJHDleQF|1MMqYH`{gjPMr@lqZ@V zV83er6^tOXiloOJ^(j`G*UJ4D+5bkO=zr|o%^MmTK=B^BNP8vUz!ZN?E_|&0RNtN$ z#zB}tpNI0M-9hcAwq&^&^!Ey-8ng`s>~I|W2laMgu^#J6-!)Mh^mrRB^>4v~hPS1Z z87~;W*bgPOe0%!c6T?bU+XAKUL3*R2{U3`QZ4ulC{5+gD!e1GPo^LcejF%ynkv()4 z7nZAkCt)qN8QleJNsOpKzy4Pc^@P-lz?W;{AJY4VH3%D?!Z!(k9i^LhYoihbNoVGt znf*Bk9`Edp94`jU(%o>+m9$wJ4zZoEZYVq5G%|C>wQpY_rjqS{NNO#RLAZkm8;JAB z-b6bKqN*Wh(7X>;jr5=XX@`0&s)y?Ol6Z%-hU<`o@Y0)uN+%TV)vMs}aZPP0c=6~T zl_IT7ej)GAA{2P1qTQ4EIRiCff$unDOCoy`?YTIl1MI?9zBW(^p?Y)e6tLFxbwN9f zVbcKy5k9M{uk7 z^2L4W!Rg;Z0`)puAgru^VeuwyHJpa=K`=u)MA3ZsoSh%Sc_1EH_TA@G#rS)YKH2<7 zJ0ZgWW4N61&HLla&Uj<=(=cEqD;u#IF?rsC|7ABIQp{ z8L}I)z*hzlAbAVzJhOg=XHB4MPc-fOr@gxo$hHMKKEh|HxK||<5(JYu^jep~>_Sa= zlUzazhzy@o(f%d*B5Q=(uaC-0W`;CKi#QMKjlILjI&Sz3Wf$lfeFok7&5ZAY#NVK| z@~;mR(BCs-tXVtZw^2?WKQvmfXU-TpD2!)DQq`>IcncP_zYFW8#`?b&69gMS6whD! z{@Xo1@*t=m*Z%5A=sQ8Ida4RN+-a><>_LE@!XD-qR&Jv?qiOgo_(Ujgw!a8wRG%TB z*b^P%3-=d|1MNxSzcvC}1aIUWSbU<35P!nxpgCx>N;m_GcYnLI-**V_U(Iko+s0D^ zW2@5T&(jsv9NJ0fz&ydeat?JJqen!2>fDF!vG`^o#sDzvl}vb`T!k8L2~ckd;Qo?pBl*_Xh2^j{ z{8#AHwydy-;7SD)ws5~@pb*^69!aS{5!^f4XJfMcsUc9ENhhR&XMyc^tuCGx>NVQ=u5K%*-5@Yof|1PJFlQ6qIo0i zu%&%np(Ze5t50gn?l)%jJRoC~PgrIlUovx9Q!!NKY3O%DduUy_dDwRJ+RjuaAqmGX^NBOn!DOseJbj~RnrQcIpD{Q66kk;J zndf|{v{Jf?eV`yqc#kx|9`!Wi&xB%k7Up%~Pg2`WAv^jBr|BT+03o6q?ljfUPY+@h zGrGqAE(-}54erEdb^FT{6D$PBid~H1?8W^TdEdVi<3^En|GRAEmklvDkUR80_(|Mt0=E)#?-F2v8?<=WB5Pkx8GhcBpVcJNT)zY74e?HrI>Ab{|or~FTY zJMn9g&A_+`sV1j(Y00(AFv4hwh;PU}sfK%o21p>ZXmmHS9q-SSum#_WP@FvW1)nOb zR<C#ZiA998m1@5AZq zMsfiBKWG7+iw{8AIHDmb<$lLxI^zcMz-mgcJp#Kd8Yo(}A=34%_7yg+>{D#+G z7K|jY{Cb$vY*vaIX1H0c5orziC!G3_(va@?-y5Ja6O-#Wm*FK zU!)tv!Y^NYm#%zBaBVFa?KFj>gP1>CTe-+@*- zJ;O%0_AmDOAs>+A#C_vJ5Svr;hJeT?W0hQ>i?^D;nRSSkc1Sh?d#~O&%DCKg+6pX~S>g1T@YiMuzSMaCI)RoFcJAWDLZ0Zc|GUj}Q zPvM7C$bx`C8E@S`4WmGo>L0~0x88%&ourYIvGgewhXb1QN~GV}-V<1H{9+J!&O}}| z8Sl=kQSHB-4yE1ZOy07;&5Q_6_$DP#70HD&`>JN02u_+7@^Xb!iZ?~^b@KUfGM5n< z7jpcaMU!?^PROEB8VheW{(w<@;+ado)idr}*V_VUkcJ8@E>tVM;Li}_ZVu17vKzX* z5twp~-8l0W#1I^p^-+xR)76va2^PFE&`9LZW!L8_F4~)|MJo`Av~13#W8%t-wMfJ) z>L|v?-nBpC7>9xSgXumDr-pTxuJ$DM1-`NTQHbv{$X}?TNf2Z0W>fOpyj61cE$E+o zB%5n@l(GSOX7xt++}c7)vMZu&_j&s$NvY=(zHvBSmNzG0*^#YK$ZIV-2KS)97BEoP zPll^9egAI++q2%{{UFD23gpc$Pa(Xj>kZ z|2>f6*L+yHtv{lt1;01(+JbasQWvakV-IMZ;A-k}YU*mz(|vF^vSc~JwxOB(ed>gE z$kF;&gRj=Q0as(^eb1vp_5ETHTGX}wiu&q-xkUC5cToetmV)LWlJrrkiMaD0^sMs@)-2U=Fx)>tCZHsA^fGZDo6Yay{t= zgyJ6lN*_dG+&;imsV|w?5OjV5*s-{8s(+peLKtSN=53;`J`rS%{QxwNLI5^h^<5iw z^}9Oq=hL?Rud}-92HvrDdfp1ef!OmT>ou}5T|9A&nf=D0d=oi|R(H=wyq4`;(aD}h zL}XmAd{II)EfGR)_aw$PMp-QalkwTVvpYNRqOD=Ar=_jp9QD&CXJ(oYJKHDuUmB+O zFVX9KNt^NdpIo;jgqCozdE==HiRZ}vFyUADz@73Ho=X8ly|70o(sz)kNG;J$hox+A zq{6lVgt@2(3jN$PO}-PxU6ds_ON5Wi z@#+7oPn{FXJ6Q~{_!%oMcAO7o#G)nvQ5Jh5R#eSA?oK)&H<*K{}wM0ZAlYJoMAFMzBwdJ)8E^p%9B(B~<0h347(* zD{S+tr*^y8++P#yr6Ss6f8^Z!=mT<}`TmPl@0-TXp?<*7r^zDk5CLHs#oyrWlJs?B zbSbWEsSQgaDq^Eyz9NeEWdR_rXY?_gJuTk?b)) zGHw)uudy>?mv8ZRrTZk2a;b=EzG6&aY<+(x&6DtW106Yb8t-UC05fm&MDHW`g@3Nd zThO{-2ut%y@yeW#`{X!8vWoJG@ydco`r!I-@+3gmeaO2kNZVAEm|bEZ=G|_jADgc4 zIJ=a=Pgj#qE4k=z_W?!VmtTt0X+y!XQ&NKOOk|NLzB|V6a9??IaI5*Seeo|J;h=q; zI5!Yj;bF)F;!uC~?|S|Ga`lE~4xYQ_m0`^xTB_OaL&fh2tpD3Bq|`6J7ZynFvxFWY zfR_sAgEREcb?Zm4rz1aMKgEqC{(_=5`c4$r$+4InzwA3H@2c!FU1;JDh0*CKXzRIO zf}(S@+M$7%XA=2`)`1iCOrSnmpVZsRR?@f*kGTF{lyYn&6Fh}--~VcyclfQyxeey~ zi6rds=$KMMf%Fm=I41j;ar%s~Wh6bNX)1hUZ$Sed;Y?wdgl6?99HLAEQTZ77*o7Wa zp^h}BXQ#DXJuT@2zVZnnwY1?v32Ba6Xmb~MiZj3>Qu==H;&{Z2D0H~)uE8912g*4^ zh`)Cdw3s=xVX&B;nXFQ4PmIJ%kA*{mUg;xAx0$08R`TY<4Q4VwtMV}OgescI4{@R2pC~AAl7Cqud>0D)4{|hgfbrDH)=cWQ zjv{P02c@61&lV68DJmMu%`qlXFw5vzr-ZLZHvHI-1UfZwTb4`{eDere z?%ewsRB(H3cQY|H%L^YWLSsodn@Rv6Ei;fs=Or43uPdlrhHDU@LZo zzoDkryi)6hM);C_e?%2tKPG%RqX%PWR^8LRQO(Rx)!k3czJZ$yn3yI(#!h-pxG!;; z8SD23)QmQ7&ss?uXHK`tm%wdBh)&tG(cG}(pW1c_V9BuA8rim@s8eGPIc!rfr&CRnUgsAz3@lmrkVkPyI3NJ6R;UYP$gf+~g9vGdpu{=6=8Z_MAOu6HaVb)O)IR zcN9Kjw0sg#tEf}e)v^RZHi+bu_9wBxr8dd6XR(8e7df~IjyJ`qpnznY8Hf&>ja^1elc&A78flZW}x(-$RkV|GEH}+0>kQ|@ z{L!R?T{X_bqtfP>dIFVLF=h5%1~NZWl&A#+Q(7C zGs=O~9dU_2DYXS{XX3PR4b=_EM0u5ne5f>i?4CxwYyXqdUwiapd7795Bu1}#jCD(s zmORO7C9m@BAb1fzEF3HxO-XrW1G2qYO&rKOGIVy^9<}}ybKpXUqDVLLw8Z@%+i05A zGUw&?0N4R=_~5tifCXa(u%3Ne4Sw5ec#I68?`>+Uz^6HBYwW1Z7*+uEc0RHEL0bh$BTT`^8E%M(H6$%#$2iD7Bl; zX5ba2tMX+4dIJ% zFlMn5QZB*iilH^ba4eujOQbT-*YP1AI}$JImjU4L5&-TP$On$*kdQ3CSVm8i@;N+w zT)amKjcf~mHQeQ^7+m8Tb6kWWuS+ryod2CISPK9%000*Z(`~&O6W>;xN^$xr+@&?N z1~qd-m3z_83^8p8pA$(w8vF@Vx52q(j$%mQ#14E;1cJ)=V!jlgcYWkZ#*fQkwLxE- zFuW#zbDo^b&yXP!F+R&CyRy$4mg&wF0BpdpS^~{j23w0AiB|8Eu2r!Abis_R!+@OM z#s%T~c^=@F6aZtM0=pIwgZbk^jTmRO z=%O(BPJbL<=Nxk6TVXvP-D%n+N((HZ*#2+e(D>`G3XiV_fCp)w7-RpQo~6w-$%RqN z$ly{0Vg&wV8n==h>ZT%iG%mv|VoUt0W(gv6h|g^552^2iF6m*WF3YUp2v| zy@X|DHFH%i0>jVrZuu>0ZYJESwUx;ce6fC(XS|o@YQx}+ClZ;a_{9AS!^Q0ob;ru& ep6V#JfHL@+rrE&D#1J7j@B{24pHX2K0RI9161a*0 literal 0 HcmV?d00001 diff --git a/tools/src/maple_loader/manifest.mf b/tools/src/maple_loader/manifest.mf new file mode 100644 index 0000000..328e8e5 --- /dev/null +++ b/tools/src/maple_loader/manifest.mf @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +X-COMMENT: Main-Class will be added automatically by build + diff --git a/tools/src/maple_loader/nbproject/build-impl.xml b/tools/src/maple_loader/nbproject/build-impl.xml new file mode 100644 index 0000000..080006a --- /dev/null +++ b/tools/src/maple_loader/nbproject/build-impl.xml @@ -0,0 +1,1413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set src.dir + Must set test.src.dir + Must set build.dir + Must set dist.dir + Must set build.classes.dir + Must set dist.javadoc.dir + Must set build.test.classes.dir + Must set build.test.results.dir + Must set build.classes.excludes + Must set dist.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + No tests executed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set JVM to use for profiling in profiler.info.jvm + Must set profiler agent JVM arguments in profiler.info.jvmargs.agent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To run this application from the command line without Ant, try: + + java -jar "${dist.jar.resolved}" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + Must select one file in the IDE or set run.class + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + Must select one file in the IDE or set debug.class + + + + + Must set fix.includes + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + Must select one file in the IDE or set profile.class + This target only works when run from inside the NetBeans IDE. + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + + + Must select some files in the IDE or set test.includes + + + + + Must select one file in the IDE or set run.class + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + Some tests failed; see details above. + + + + + + + + + Must select some files in the IDE or set test.includes + + + + Some tests failed; see details above. + + + + Must select some files in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + Some tests failed; see details above. + + + + + Must select one file in the IDE or set test.class + + + + Must select one file in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + + + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/src/maple_loader/nbproject/genfiles.properties b/tools/src/maple_loader/nbproject/genfiles.properties new file mode 100644 index 0000000..1007bfc --- /dev/null +++ b/tools/src/maple_loader/nbproject/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=2e6a03ba +build.xml.script.CRC32=4676ee6b +build.xml.stylesheet.CRC32=8064a381@1.75.2.48 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=2e6a03ba +nbproject/build-impl.xml.script.CRC32=392b3f79 +nbproject/build-impl.xml.stylesheet.CRC32=876e7a8f@1.75.2.48 diff --git a/tools/src/maple_loader/nbproject/private/config.properties b/tools/src/maple_loader/nbproject/private/config.properties new file mode 100644 index 0000000..e69de29 diff --git a/tools/src/maple_loader/nbproject/private/private.properties b/tools/src/maple_loader/nbproject/private/private.properties new file mode 100644 index 0000000..ab05185 --- /dev/null +++ b/tools/src/maple_loader/nbproject/private/private.properties @@ -0,0 +1,6 @@ +compile.on.save=true +do.depend=false +do.jar=true +javac.debug=true +javadoc.preview=true +user.properties.file=C:\\Users\\rclark\\AppData\\Roaming\\NetBeans\\8.0.2\\build.properties diff --git a/tools/src/maple_loader/nbproject/private/private.xml b/tools/src/maple_loader/nbproject/private/private.xml new file mode 100644 index 0000000..9feb3fe --- /dev/null +++ b/tools/src/maple_loader/nbproject/private/private.xml @@ -0,0 +1,10 @@ + + + + + + file:/C:/Users/rclark/Desktop/maple-asp-master/installer/maple_loader/src/CliTemplate/CliMain.java + file:/C:/Users/rclark/Desktop/maple-asp-master/installer/maple_loader/src/CliTemplate/DFUUploader.java + + + diff --git a/tools/src/maple_loader/nbproject/project.properties b/tools/src/maple_loader/nbproject/project.properties new file mode 100644 index 0000000..984cc6a --- /dev/null +++ b/tools/src/maple_loader/nbproject/project.properties @@ -0,0 +1,79 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=maple_loader +application.vendor=bob +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.test.classpath=\ + ${run.test.classpath} +# Files in build.classes.dir which should be excluded from distribution jar +dist.archive.excludes= +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/maple_loader.jar +dist.javadoc.dir=${dist.dir}/javadoc +endorsed.classpath= +excludes= +file.reference.jssc.jar=dist/lib/jssc.jar +file.reference.jssc.jar-1=jars/jssc.jar +includes=** +jar.compress=false +javac.classpath=\ + ${file.reference.jssc.jar}:\ + ${file.reference.jssc.jar-1} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.processorpath=\ + ${javac.classpath} +javac.source=1.7 +javac.target=1.7 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +main.class=CliTemplate.CliMain +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +platform.active=default_platform +run.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +# Space-separated list of JVM arguments used when running the project. +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value. +# To set system properties for unit tests define test-sys-prop.name=value: +run.jvmargs= +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +source.encoding=UTF-8 +src.dir=src +test.src.dir=test diff --git a/tools/src/maple_loader/nbproject/project.xml b/tools/src/maple_loader/nbproject/project.xml new file mode 100644 index 0000000..076fe22 --- /dev/null +++ b/tools/src/maple_loader/nbproject/project.xml @@ -0,0 +1,15 @@ + + + org.netbeans.modules.java.j2seproject + + + maple_loader + + + + + + + + + diff --git a/tools/src/maple_loader/src/CliTemplate/CliMain.java b/tools/src/maple_loader/src/CliTemplate/CliMain.java new file mode 100644 index 0000000..c7dc9f0 --- /dev/null +++ b/tools/src/maple_loader/src/CliTemplate/CliMain.java @@ -0,0 +1,60 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package CliTemplate; + +import java.io.IOException; +import java.text.MessageFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import processing.app.Preferences; + +//import processing.app.I18n; +import processing.app.helpers.ProcessUtils; + +/** + * + * @author cousinr + */ +public class CliMain { + + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + + String comPort = args[0]; // + String altIf = args[1]; // + String usbID = args[2]; // "1EAF:0003"; + String binFile = args[3]; // bin file + + System.out.println("maple_loader v0.1"); + + Preferences.set ("serial.port",comPort); + Preferences.set ("serial.parity","N"); + Preferences.setInteger ("serial.databits", 8); + Preferences.setInteger ("serial.debug_rate",9600); + Preferences.setInteger ("serial.stopbits",1); + + Preferences.setInteger ("programDelay",1200); + + Preferences.set ("upload.usbID", usbID); + Preferences.set ("upload.altID", altIf); + Preferences.setBoolean ("upload.auto_reset", true); + Preferences.setBoolean ("upload.verbose", false); + + // + DFUUploader dfuUploader = new DFUUploader(); + try { + //dfuUploader.uploadViaDFU(binFile); + dfuUploader.uploadViaDFU(binFile); + } catch (Exception e) + { + System.err.print (MessageFormat.format("an error occurred! {0}\n", e.getMessage())); + } + } +} diff --git a/tools/src/maple_loader/src/CliTemplate/DFUUploader.java b/tools/src/maple_loader/src/CliTemplate/DFUUploader.java new file mode 100644 index 0000000..3dee0b4 --- /dev/null +++ b/tools/src/maple_loader/src/CliTemplate/DFUUploader.java @@ -0,0 +1,345 @@ +/* + DFUUploader - uploader implementation using DFU + + Copyright (c) 2010 + Andrew Meyer + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +*/ + +package CliTemplate; + +import java.io.BufferedReader; +import java.io.File; +import java.io.InputStreamReader; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import processing.app.Preferences; +import processing.app.Serial; +import processing.app.debug.MessageConsumer; +import processing.app.debug.MessageSiphon; +import processing.app.debug.RunnerException; + +/** + * + * @author bob + */ +public class DFUUploader implements MessageConsumer { + + boolean firstErrorFound; + boolean secondErrorFound; + // part of the PdeMessageConsumer interface + boolean notFoundError; + boolean verbose; + RunnerException exception; + + static final String SUPER_BADNESS = + "Compiler error!"; + + public boolean uploadUsingPreferences(String binPath, boolean verbose) + throws RunnerException { + + this.verbose = verbose; + + return uploadViaDFU(binPath); + } + + // works with old and new versions of dfu-util + private boolean found_device (String dfuData, String usbID) + { + return dfuData.contains(("Found DFU: [0x"+usbID.substring(0,4)).toUpperCase()) || + dfuData.contains(("Found DFU: ["+usbID.substring(0,4)).toUpperCase()); + } + + public boolean uploadViaDFU (String binPath) + throws RunnerException { + + this.verbose = Preferences.getBoolean ("upload.verbose"); + + /* todo, check for size overruns! */ + String fileType="bin"; + + if (fileType.equals("bin")) { + String usbID = Preferences.get("upload.usbID"); + if (usbID == null) { + /* fall back on default */ + /* this isnt great because is default Avrdude or dfu-util? */ + usbID = Preferences.get("upload.usbID"); + } + + /* if auto-reset, then emit the reset pulse on dtr/rts */ + if (Preferences.get("upload.auto_reset") != null) { + if (Preferences.get("upload.auto_reset").toLowerCase().equals("true")) { + System.out.println("Resetting to bootloader via DTR pulse"); + emitResetPulse(); + } + } else { + System.out.println("Resetting to bootloader via DTR pulse"); + emitResetPulse(); + } + + String dfuList = new String(); + List commandCheck = new ArrayList(); + commandCheck.add("dfu-util"); + commandCheck.add("-l"); + long startChecking = System.currentTimeMillis(); + System.out.println("Searching for DFU device [" + usbID + "]..."); + do { + try { + Thread.sleep(100); + } catch (InterruptedException e) {} + dfuList = executeCheckCommand(commandCheck); + //System.out.println(dfuList); + } + while ( !found_device (dfuList.toUpperCase(), usbID) && (System.currentTimeMillis() - startChecking < 7000)); + + if ( !found_device (dfuList.toUpperCase(), usbID) ) + { + System.out.println(dfuList); + System.err.println("Couldn't find the DFU device: [" + usbID + "]"); + return false; + } + System.out.println("Found it!"); + + /* todo, add handle to let user choose altIf at upload time! */ + String altIf = Preferences.get("upload.altID"); + + List commandDownloader = new ArrayList(); + commandDownloader.add("dfu-util"); + commandDownloader.add("-a "+altIf); + commandDownloader.add("-R"); + commandDownloader.add("-d "+usbID); + commandDownloader.add("-D"+ binPath); //"./thisbin.bin"); + + return executeUploadCommand(commandDownloader); + } + + System.err.println("Only .bin files are supported at this time"); + return false; + } + + /* we need to ensure both RTS and DTR are low to start, + then pulse DTR on its own. This is the reset signal + maple responds to + */ + private void emitResetPulse() throws RunnerException { + + /* wait a while for the device to reboot */ + int programDelay = Preferences.getInteger("programDelay"); + + try { + Serial serialPort = new Serial(); + + // try to toggle DTR/RTS (old scheme) + serialPort.setRTS(false); + serialPort.setDTR(false); + serialPort.setDTR(true); + try { + Thread.sleep(50); + } catch (InterruptedException e) {} + serialPort.setDTR(false); + + // try magic number + serialPort.setRTS(true); + serialPort.setDTR(true); + try { + Thread.sleep(50); + } catch (InterruptedException e) {} + serialPort.setDTR(false); + try { + Thread.sleep(50); + } catch (InterruptedException e) {} + serialPort.write("1EAF"); + try { + Thread.sleep(50); + } catch (InterruptedException e) {} + serialPort.dispose(); + + } catch(Exception e) { + System.err.println("Reset via USB Serial Failed! Did you select the right serial port?\nAssuming the board is in perpetual bootloader mode and continuing to attempt dfu programming...\n"); + } + } + + protected String executeCheckCommand(Collection commandDownloader) + throws RunnerException + { + firstErrorFound = false; // haven't found any errors yet + secondErrorFound = false; + notFoundError = false; + int result=0; // pre-initialized to quiet a bogus warning from jikes + + String userdir = System.getProperty("user.dir") + File.separator; + String returnStr = new String(); + + try { + String[] commandArray = new String[commandDownloader.size()]; + commandDownloader.toArray(commandArray); + + String armBasePath; + + //armBasePath = new String(Base.getHardwarePath() + "/tools/arm/bin/"); + armBasePath = ""; + + commandArray[0] = armBasePath + commandArray[0]; + + if (verbose || Preferences.getBoolean("upload.verbose")) { + for(int i = 0; i < commandArray.length; i++) { + System.out.print(commandArray[i] + " "); + } + System.out.println(); + } + + Process process = Runtime.getRuntime().exec(commandArray); + BufferedReader stdInput = new BufferedReader(new + InputStreamReader(process.getInputStream())); + BufferedReader stdError = new BufferedReader(new + InputStreamReader(process.getErrorStream())); + + // wait for the process to finish. if interrupted + // before waitFor returns, continue waiting + // + boolean busy = true; + while (busy) { + try { + result = process.waitFor(); + busy = false; + } catch (InterruptedException intExc) { + } + } + + String s; + while ((s = stdInput.readLine()) != null) { + returnStr += s + "\n"; + } + + process.destroy(); + + if(exception!=null) { + exception.hideStackTrace(); + throw exception; + } + if(result!=0) return "Error!"; + } catch (Exception e) { + e.printStackTrace(); + } + //System.out.println("result2 is "+result); + // if the result isn't a known, expected value it means that something + // is fairly wrong, one possibility is that jikes has crashed. + // + if (exception != null) throw exception; + + if ((result != 0) && (result != 1 )) { + exception = new RunnerException(SUPER_BADNESS); + } + + return returnStr; // ? true : false; + + } + + // Need to overload this from Uploader to use the system-wide dfu-util + protected boolean executeUploadCommand(Collection commandDownloader) + throws RunnerException + { + firstErrorFound = false; // haven't found any errors yet + secondErrorFound = false; + notFoundError = false; + int result=0; // pre-initialized to quiet a bogus warning from jikes + + String userdir = System.getProperty("user.dir") + File.separator; + + try { + String[] commandArray = new String[commandDownloader.size()]; + commandDownloader.toArray(commandArray); + + String armBasePath; + + //armBasePath = new String(Base.getHardwarePath() + "/tools/arm/bin/"); + armBasePath = ""; + + commandArray[0] = armBasePath + commandArray[0]; + + if (verbose || Preferences.getBoolean("upload.verbose")) { + for(int i = 0; i < commandArray.length; i++) { + System.out.print(commandArray[i] + " "); + } + System.out.println(); + } + + Process process = Runtime.getRuntime().exec(commandArray); + new MessageSiphon(process.getInputStream(), this); + new MessageSiphon(process.getErrorStream(), this); + + // wait for the process to finish. if interrupted + // before waitFor returns, continue waiting + // + boolean compiling = true; + while (compiling) { + try { + result = process.waitFor(); + compiling = false; + } catch (InterruptedException intExc) { + } + } + if(exception!=null) { + exception.hideStackTrace(); + throw exception; + } + if(result!=0) + return false; + } catch (Exception e) { + e.printStackTrace(); + } + //System.out.println("result2 is "+result); + // if the result isn't a known, expected value it means that something + // is fairly wrong, one possibility is that jikes has crashed. + // + if (exception != null) throw exception; + + if ((result != 0) && (result != 1 )) { + exception = new RunnerException(SUPER_BADNESS); + //editor.error(exception); + //PdeBase.openURL(BUGS_URL); + //throw new PdeException(SUPER_BADNESS); + } + + return (result == 0); // ? true : false; + + } + + // deal with messages from dfu-util... + public void message(String s) { + + if(s.indexOf("dfu-util - (C) ") != -1) { return; } + if(s.indexOf("This program is Free Software and has ABSOLUTELY NO WARRANTY") != -1) { return; } + + if(s.indexOf("No DFU capable USB device found") != -1) { + System.err.print(s); + exception = new RunnerException("Problem uploading via dfu-util: No Maple found"); + return; + } + + if(s.indexOf("Operation not perimitted") != -1) { + System.err.print(s); + exception = new RunnerException("Problem uploading via dfu-util: Insufficient privilages"); + return; + } + + // else just print everything... + System.out.print(s); + } + +} diff --git a/tools/src/maple_loader/src/CliTemplate/ExecCommand.java b/tools/src/maple_loader/src/CliTemplate/ExecCommand.java new file mode 100644 index 0000000..3d6c106 --- /dev/null +++ b/tools/src/maple_loader/src/CliTemplate/ExecCommand.java @@ -0,0 +1,119 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package CliTemplate; + +import java.io.IOException; +import java.text.MessageFormat; +import java.util.ArrayList; +import java.util.List; + +import processing.app.debug.MessageConsumer; +import processing.app.debug.MessageSiphon; +import processing.app.debug.RunnerException; +import processing.app.helpers.ProcessUtils; + +/** + * + * @author cousinr + */ +public class ExecCommand implements MessageConsumer { + + private boolean verbose = true; + private boolean firstErrorFound; + private boolean secondErrorFound; + private RunnerException exception; + + /** + * Either succeeds or throws a RunnerException fit for public consumption. + * + * @param command + * @throws RunnerException + */ + public void execAsynchronously(String[] command) throws RunnerException { + + // eliminate any empty array entries + List stringList = new ArrayList<>(); + for (String string : command) { + string = string.trim(); + if (string.length() != 0) + stringList.add(string); + } + command = stringList.toArray(new String[stringList.size()]); + if (command.length == 0) + return; + int result = 0; + + if (verbose) { + for (String c : command) + System.out.print(c + " "); + System.out.println(); + } + + firstErrorFound = false; // haven't found any errors yet + secondErrorFound = false; + + Process process; + try { + process = ProcessUtils.exec(command); + } catch (IOException e) { + RunnerException re = new RunnerException(e.getMessage()); + re.hideStackTrace(); + throw re; + } + + MessageSiphon in = new MessageSiphon(process.getInputStream(), this); + MessageSiphon err = new MessageSiphon(process.getErrorStream(), this); + + // wait for the process to finish. if interrupted + // before waitFor returns, continue waiting + boolean compiling = true; + while (compiling) { + try { + in.join(); + err.join(); + result = process.waitFor(); + //System.out.println("result is " + result); + compiling = false; + } catch (InterruptedException ignored) { } + } + + // an error was queued up by message(), barf this back to compile(), + // which will barf it back to Editor. if you're having trouble + // discerning the imagery, consider how cows regurgitate their food + // to digest it, and the fact that they have five stomaches. + // + //System.out.println("throwing up " + exception); + if (exception != null) + throw exception; + + if (result > 1) { + // a failure in the tool (e.g. unable to locate a sub-executable) + System.err.println(MessageFormat.format("{0} returned {1}", command[0], result)); + } + + if (result != 0) { + RunnerException re = new RunnerException(MessageFormat.format("exit code: {0}", result)); + re.hideStackTrace(); + throw re; + } + } + + /** + * Part of the MessageConsumer interface, this is called + * whenever a piece (usually a line) of error message is spewed + * out from the compiler. The errors are parsed for their contents + * and line number, which is then reported back to Editor. + * @param s + */ + @Override + public void message(String s) { + int i; + + + System.err.print(s); + } + +} diff --git a/tools/src/maple_loader/src/processing/app/Base.java b/tools/src/maple_loader/src/processing/app/Base.java new file mode 100644 index 0000000..c3a174d --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/Base.java @@ -0,0 +1,53 @@ +/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Processing project - http://processing.org + + Copyright (c) 2004-10 Ben Fry and Casey Reas + Copyright (c) 2001-04 Massachusetts Institute of Technology + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License version 2 + as published by the Free Software Foundation. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app; + + +/** + * The base class for the main processing application. + * Primary role of this class is for platform identification and + * general interaction with the system (launching URLs, loading + * files and images, etc) that comes from that. + */ +public class Base { + + /** + * returns true if running on windows. + */ + static public boolean isWindows() { + //return PApplet.platform == PConstants.WINDOWS; + return System.getProperty("os.name").indexOf("Windows") != -1; + } + + + /** + * true if running on linux. + */ + static public boolean isLinux() { + //return PApplet.platform == PConstants.LINUX; + return System.getProperty("os.name").indexOf("Linux") != -1; + } + + + +} diff --git a/tools/src/maple_loader/src/processing/app/Preferences.java b/tools/src/maple_loader/src/processing/app/Preferences.java new file mode 100644 index 0000000..6368e38 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/Preferences.java @@ -0,0 +1,157 @@ +/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Processing project - http://processing.org + + Copyright (c) 2004-09 Ben Fry and Casey Reas + Copyright (c) 2001-04 Massachusetts Institute of Technology + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app; + +import java.io.*; +import java.util.*; + + +/** + * Storage class for user preferences and environment settings. + *

+ * This class no longer uses the Properties class, since + * properties files are iso8859-1, which is highly likely to + * be a problem when trying to save sketch folders and locations. + *

+ * The GUI portion in here is really ugly, as it uses exact layout. This was + * done in frustration one evening (and pre-Swing), but that's long since past, + * and it should all be moved to a proper swing layout like BoxLayout. + *

+ * This is very poorly put together, that the preferences panel and the actual + * preferences i/o is part of the same code. But there hasn't yet been a + * compelling reason to bother with the separation aside from concern about + * being lectured by strangers who feel that it doesn't look like what they + * learned in CS class. + *

+ * Would also be possible to change this to use the Java Preferences API. + * Some useful articles + * here and + * here. + * However, haven't implemented this yet for lack of time, but more + * importantly, because it would entail writing to the registry (on Windows), + * or an obscure file location (on Mac OS X) and make it far more difficult to + * find the preferences to tweak them by hand (no! stay out of regedit!) + * or to reset the preferences by simply deleting the preferences.txt file. + */ +public class Preferences { + + // what to call the feller + + static final String PREFS_FILE = "preferences.txt"; + + + // prompt text stuff + + static final String PROMPT_YES = "Yes"; + static final String PROMPT_NO = "No"; + static final String PROMPT_CANCEL = "Cancel"; + static final String PROMPT_OK = "OK"; + static final String PROMPT_BROWSE = "Browse"; + + /** + * Standardized width for buttons. Mac OS X 10.3 wants 70 as its default, + * Windows XP needs 66, and my Ubuntu machine needs 80+, so 80 seems proper. + */ + static public int BUTTON_WIDTH = 80; + + /** + * Standardized button height. Mac OS X 10.3 (Java 1.4) wants 29, + * presumably because it now includes the blue border, where it didn't + * in Java 1.3. Windows XP only wants 23 (not sure what default Linux + * would be). Because of the disparity, on Mac OS X, it will be set + * inside a static block. + */ + static public int BUTTON_HEIGHT = 24; + + // value for the size bars, buttons, etc + + static final int GRID_SIZE = 33; + + + // indents and spacing standards. these probably need to be modified + // per platform as well, since macosx is so huge, windows is smaller, + // and linux is all over the map + + static final int GUI_BIG = 13; + static final int GUI_BETWEEN = 10; + static final int GUI_SMALL = 6; + + + + // data model + + static Hashtable table = new Hashtable();; + static File preferencesFile; + + + static protected void init(String commandLinePrefs) { + + + } + + + public Preferences() { + + } + + // ................................................................. + + // ................................................................. + + // ................................................................. + + // ................................................................. + + + + static public String get(String attribute) { + return (String) table.get(attribute); + } + + static public void set(String attribute, String value) { + table.put(attribute, value); + } + + + static public boolean getBoolean(String attribute) { + String value = get(attribute); + return (new Boolean(value)).booleanValue(); + } + + + static public void setBoolean(String attribute, boolean value) { + set(attribute, value ? "true" : "false"); + } + + + static public int getInteger(String attribute) { + return Integer.parseInt(get(attribute)); + } + + + static public void setInteger(String key, int value) { + set(key, String.valueOf(value)); + } + +} diff --git a/tools/src/maple_loader/src/processing/app/Serial.java b/tools/src/maple_loader/src/processing/app/Serial.java new file mode 100644 index 0000000..04566a7 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/Serial.java @@ -0,0 +1,527 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + PSerial - class for serial port goodness + Part of the Processing project - http://processing.org + + Copyright (c) 2004 Ben Fry & Casey Reas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA +*/ + +package processing.app; +//import processing.core.*; + + +import java.io.*; +import java.text.MessageFormat; +import java.util.*; +import jssc.SerialPort; +import jssc.SerialPortEvent; +import jssc.SerialPortEventListener; +import jssc.SerialPortException; +import jssc.SerialPortList; +import processing.app.debug.MessageConsumer; + + +public class Serial implements SerialPortEventListener { + + //PApplet parent; + + // properties can be passed in for default values + // otherwise defaults to 9600 N81 + + // these could be made static, which might be a solution + // for the classloading problem.. because if code ran again, + // the static class would have an object that could be closed + + SerialPort port; + + int rate; + int parity; + int databits; + int stopbits; + boolean monitor = false; + + // read buffer and streams + + InputStream input; + OutputStream output; + + byte buffer[] = new byte[32768]; + int bufferIndex; + int bufferLast; + + MessageConsumer consumer; + + public Serial(boolean monitor) throws SerialException { + this(Preferences.get("serial.port"), + Preferences.getInteger("serial.debug_rate"), + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); + this.monitor = monitor; + } + + public Serial() throws SerialException { + this(Preferences.get("serial.port"), + Preferences.getInteger("serial.debug_rate"), + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); + } + + public Serial(int irate) throws SerialException { + this(Preferences.get("serial.port"), irate, + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); + } + + public Serial(String iname, int irate) throws SerialException { + this(iname, irate, Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); + } + + public Serial(String iname) throws SerialException { + this(iname, Preferences.getInteger("serial.debug_rate"), + Preferences.get("serial.parity").charAt(0), + Preferences.getInteger("serial.databits"), + new Float(Preferences.get("serial.stopbits")).floatValue()); + } + + public Serial(String iname, int irate, + char iparity, int idatabits, float istopbits) + throws SerialException { + //if (port != null) port.close(); + //this.parent = parent; + //parent.attach(this); + + this.rate = irate; + + parity = SerialPort.PARITY_NONE; + if (iparity == 'E') parity = SerialPort.PARITY_EVEN; + if (iparity == 'O') parity = SerialPort.PARITY_ODD; + + this.databits = idatabits; + + stopbits = SerialPort.STOPBITS_1; + if (istopbits == 1.5f) stopbits = SerialPort.STOPBITS_1_5; + if (istopbits == 2) stopbits = SerialPort.STOPBITS_2; + + try { + port = new SerialPort(iname); + port.openPort(); + port.setParams(rate, databits, stopbits, parity, true, true); + port.addEventListener(this); + } catch (Exception e) { + throw new SerialException(MessageFormat.format("Error opening serial port ''{0}''.", iname), e); + } + + if (port == null) { + throw new SerialException("Serial port '" + iname + "' not found. Did you select the right one from the Tools > Serial Port menu?"); + } + } + + + public void setup() { + //parent.registerCall(this, DISPOSE); + } + + public void dispose() throws IOException { + if (port != null) { + try { + if (port.isOpened()) { + port.closePort(); // close the port + } + } catch (SerialPortException e) { + throw new IOException(e); + } finally { + port = null; + } + } + } + + public void addListener(MessageConsumer consumer) { + this.consumer = consumer; + } + + public synchronized void serialEvent(SerialPortEvent serialEvent) { + if (serialEvent.isRXCHAR()) { + try { + byte[] buf = port.readBytes(serialEvent.getEventValue()); + if (buf.length > 0) { + if (bufferLast == buffer.length) { + byte temp[] = new byte[bufferLast << 1]; + System.arraycopy(buffer, 0, temp, 0, bufferLast); + buffer = temp; + } + if (monitor) { + System.out.print(new String(buf)); + } + if (this.consumer != null) { + this.consumer.message(new String(buf)); + } + } + } catch (SerialPortException e) { + errorMessage("serialEvent", e); + } + } + } + + + /** + * Returns the number of bytes that have been read from serial + * and are waiting to be dealt with by the user. + */ + public synchronized int available() { + return (bufferLast - bufferIndex); + } + + + /** + * Ignore all the bytes read so far and empty the buffer. + */ + public synchronized void clear() { + bufferLast = 0; + bufferIndex = 0; + } + + + /** + * Returns a number between 0 and 255 for the next byte that's + * waiting in the buffer. + * Returns -1 if there was no byte (although the user should + * first check available() to see if things are ready to avoid this) + */ + public synchronized int read() { + if (bufferIndex == bufferLast) return -1; + + int outgoing = buffer[bufferIndex++] & 0xff; + if (bufferIndex == bufferLast) { // rewind + bufferIndex = 0; + bufferLast = 0; + } + return outgoing; + } + + + /** + * Returns the next byte in the buffer as a char. + * Returns -1, or 0xffff, if nothing is there. + */ + public synchronized char readChar() { + if (bufferIndex == bufferLast) return (char)(-1); + return (char) read(); + } + + + /** + * Return a byte array of anything that's in the serial buffer. + * Not particularly memory/speed efficient, because it creates + * a byte array on each read, but it's easier to use than + * readBytes(byte b[]) (see below). + */ + public synchronized byte[] readBytes() { + if (bufferIndex == bufferLast) return null; + + int length = bufferLast - bufferIndex; + byte outgoing[] = new byte[length]; + System.arraycopy(buffer, bufferIndex, outgoing, 0, length); + + bufferIndex = 0; // rewind + bufferLast = 0; + return outgoing; + } + + + /** + * Grab whatever is in the serial buffer, and stuff it into a + * byte buffer passed in by the user. This is more memory/time + * efficient than readBytes() returning a byte[] array. + *

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

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

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

+ * If you want to move Unicode data, you can first convert the + * String to a byte stream in the representation of your choice + * (i.e. UTF8 or two-byte Unicode data), and send it as a byte array. + */ + public synchronized String readStringUntil(int interesting) { + byte b[] = readBytesUntil(interesting); + if (b == null) return null; + return new String(b); + } + + + /** + * This will handle both ints, bytes and chars transparently. + */ + public void write(int what) { // will also cover char + try { + port.writeInt(what & 0xff); + } catch (SerialPortException e) { + errorMessage("write", e); + } + } + + + public void write(byte bytes[]) { + try { + port.writeBytes(bytes); + } catch (SerialPortException e) { + errorMessage("write", e); + } + } + + + /** + * Write a String to the output. Note that this doesn't account + * for Unicode (two bytes per char), nor will it send UTF8 + * characters.. It assumes that you mean to send a byte buffer + * (most often the case for networking and serial i/o) and + * will only use the bottom 8 bits of each char in the string. + * (Meaning that internally it uses String.getBytes) + *

+ * If you want to move Unicode data, you can first convert the + * String to a byte stream in the representation of your choice + * (i.e. UTF8 or two-byte Unicode data), and send it as a byte array. + */ + public void write(String what) { + write(what.getBytes()); + } + + public void setDTR(boolean state) { + try { + port.setDTR(state); + } catch (SerialPortException e) { + errorMessage("setDTR", e); + } + } + + public void setRTS(boolean state) { + try { + port.setRTS(state); + } catch (SerialPortException e) { + errorMessage("setRTS", e); + } + } + + static public List list() { + return Arrays.asList(SerialPortList.getPortNames()); + } + + + /** + * General error reporting, all corraled here just in case + * I think of something slightly more intelligent to do. + */ + static public void errorMessage(String where, Throwable e) { + System.err.println("Error inside Serial." + where + "()"); + e.printStackTrace(); + } +} + + + /* + class SerialMenuListener implements ItemListener { + //public SerialMenuListener() { } + + public void itemStateChanged(ItemEvent e) { + int count = serialMenu.getItemCount(); + for (int i = 0; i < count; i++) { + ((CheckboxMenuItem)serialMenu.getItem(i)).setState(false); + } + CheckboxMenuItem item = (CheckboxMenuItem)e.getSource(); + item.setState(true); + String name = item.getLabel(); + //System.out.println(item.getLabel()); + PdeBase.properties.put("serial.port", name); + //System.out.println("set to " + get("serial.port")); + } + } + */ + + + /* + protected Vector buildPortList() { + // get list of names for serial ports + // have the default port checked (if present) + Vector list = new Vector(); + + //SerialMenuListener listener = new SerialMenuListener(); + boolean problem = false; + + // if this is failing, it may be because + // lib/javax.comm.properties is missing. + // java is weird about how it searches for java.comm.properties + // so it tends to be very fragile. i.e. quotes in the CLASSPATH + // environment variable will hose things. + try { + //System.out.println("building port list"); + Enumeration portList = CommPortIdentifier.getPortIdentifiers(); + while (portList.hasMoreElements()) { + CommPortIdentifier portId = + (CommPortIdentifier) portList.nextElement(); + //System.out.println(portId); + + if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) { + //if (portId.getName().equals(port)) { + String name = portId.getName(); + //CheckboxMenuItem mi = + //new CheckboxMenuItem(name, name.equals(defaultName)); + + //mi.addItemListener(listener); + //serialMenu.add(mi); + list.addElement(name); + } + } + } catch (UnsatisfiedLinkError e) { + e.printStackTrace(); + problem = true; + + } catch (Exception e) { + System.out.println("exception building serial menu"); + e.printStackTrace(); + } + + //if (serialMenu.getItemCount() == 0) { + //System.out.println("dimming serial menu"); + //serialMenu.setEnabled(false); + //} + + // only warn them if this is the first time + if (problem && PdeBase.firstTime) { + JOptionPane.showMessageDialog(this, //frame, + "Serial port support not installed.\n" + + "Check the readme for instructions\n" + + "if you need to use the serial port. ", + "Serial Port Warning", + JOptionPane.WARNING_MESSAGE); + } + return list; + } + */ + + + diff --git a/tools/src/maple_loader/src/processing/app/SerialException.java b/tools/src/maple_loader/src/processing/app/SerialException.java new file mode 100644 index 0000000..525c240 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/SerialException.java @@ -0,0 +1,39 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Copyright (c) 2007 David A. Mellis + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app; + +public class SerialException extends Exception { + public SerialException() { + super(); + } + + public SerialException(String message) { + super(message); + } + + public SerialException(String message, Throwable cause) { + super(message, cause); + } + + public SerialException(Throwable cause) { + super(cause); + } +} diff --git a/tools/src/maple_loader/src/processing/app/debug/MessageConsumer.java b/tools/src/maple_loader/src/processing/app/debug/MessageConsumer.java new file mode 100644 index 0000000..5e20429 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/debug/MessageConsumer.java @@ -0,0 +1,42 @@ +/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Processing project - http://processing.org + + Copyright (c) 2004-06 Ben Fry and Casey Reas + Copyright (c) 2001-04 Massachusetts Institute of Technology + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app.debug; + + +/** + * Interface for dealing with parser/compiler output. + *

+ * Different instances of MessageStream need to do different things with + * messages. In particular, a stream instance used for parsing output from + * the compiler compiler has to interpret its messages differently than one + * parsing output from the runtime. + *

+ * Classes which consume messages and do something with them + * should implement this interface. + */ +public interface MessageConsumer { + + public void message(String s); + +} diff --git a/tools/src/maple_loader/src/processing/app/debug/MessageSiphon.java b/tools/src/maple_loader/src/processing/app/debug/MessageSiphon.java new file mode 100644 index 0000000..26901c3 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/debug/MessageSiphon.java @@ -0,0 +1,104 @@ +/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Processing project - http://processing.org + + Copyright (c) 2004-06 Ben Fry and Casey Reas + Copyright (c) 2001-04 Massachusetts Institute of Technology + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app.debug; + +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.SocketException; + +/** + * Slurps up messages from compiler. + */ +public class MessageSiphon implements Runnable { + + private final BufferedReader streamReader; + private final MessageConsumer consumer; + + private Thread thread; + private boolean canRun; + + public MessageSiphon(InputStream stream, MessageConsumer consumer) { + this.streamReader = new BufferedReader(new InputStreamReader(stream)); + this.consumer = consumer; + this.canRun = true; + + thread = new Thread(this); + // don't set priority too low, otherwise exceptions won't + // bubble up in time (i.e. compile errors have a weird delay) + //thread.setPriority(Thread.MIN_PRIORITY); + thread.setPriority(Thread.MAX_PRIORITY - 1); + thread.start(); + } + + + public void run() { + try { + // process data until we hit EOF; this will happily block + // (effectively sleeping the thread) until new data comes in. + // when the program is finally done, null will come through. + // + String currentLine; + while (canRun && (currentLine = streamReader.readLine()) != null) { + // \n is added again because readLine() strips it out + //EditorConsole.systemOut.println("messaging in"); + consumer.message(currentLine + "\n"); + //EditorConsole.systemOut.println("messaging out"); + } + //EditorConsole.systemOut.println("messaging thread done"); + } catch (NullPointerException npe) { + // Fairly common exception during shutdown + } catch (SocketException e) { + // socket has been close while we were wainting for data. nothing to see here, move along + } catch (Exception e) { + // On Linux and sometimes on Mac OS X, a "bad file descriptor" + // message comes up when closing an applet that's run externally. + // That message just gets supressed here.. + String mess = e.getMessage(); + if ((mess != null) && + (mess.indexOf("Bad file descriptor") != -1)) { + //if (e.getMessage().indexOf("Bad file descriptor") == -1) { + //System.err.println("MessageSiphon err " + e); + //e.printStackTrace(); + } else { + e.printStackTrace(); + } + } finally { + thread = null; + } + } + + // Wait until the MessageSiphon thread is complete. + public void join() throws java.lang.InterruptedException { + // Grab a temp copy in case another thread nulls the "thread" + // member variable + Thread t = thread; + if (t != null) t.join(); + } + + public void stop() { + this.canRun = false; + } + +} diff --git a/tools/src/maple_loader/src/processing/app/debug/RunnerException.java b/tools/src/maple_loader/src/processing/app/debug/RunnerException.java new file mode 100644 index 0000000..0a67d1e --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/debug/RunnerException.java @@ -0,0 +1,161 @@ +/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Processing project - http://processing.org + + Copyright (c) 2004-08 Ben Fry and Casey Reas + Copyright (c) 2001-04 Massachusetts Institute of Technology + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +package processing.app.debug; + + +/** + * An exception with a line number attached that occurs + * during either compile time or run time. + */ +@SuppressWarnings("serial") +public class RunnerException extends Exception { + protected String message; + protected int codeIndex; + protected int codeLine; + protected int codeColumn; + protected boolean showStackTrace; + + + public RunnerException(String message) { + this(message, true); + } + + public RunnerException(String message, boolean showStackTrace) { + this(message, -1, -1, -1, showStackTrace); + } + + public RunnerException(String message, int file, int line) { + this(message, file, line, -1, true); + } + + + public RunnerException(String message, int file, int line, int column) { + this(message, file, line, column, true); + } + + + public RunnerException(String message, int file, int line, int column, + boolean showStackTrace) { + this.message = message; + this.codeIndex = file; + this.codeLine = line; + this.codeColumn = column; + this.showStackTrace = showStackTrace; + } + + + public RunnerException(Exception e) { + super(e); + this.showStackTrace = true; + } + + /** + * Override getMessage() in Throwable, so that I can set + * the message text outside the constructor. + */ + public String getMessage() { + return message; + } + + + public void setMessage(String message) { + this.message = message; + } + + + public int getCodeIndex() { + return codeIndex; + } + + + public void setCodeIndex(int index) { + codeIndex = index; + } + + + public boolean hasCodeIndex() { + return codeIndex != -1; + } + + + public int getCodeLine() { + return codeLine; + } + + + public void setCodeLine(int line) { + this.codeLine = line; + } + + + public boolean hasCodeLine() { + return codeLine != -1; + } + + + public void setCodeColumn(int column) { + this.codeColumn = column; + } + + + public int getCodeColumn() { + return codeColumn; + } + + + public void showStackTrace() { + showStackTrace = true; + } + + + public void hideStackTrace() { + showStackTrace = false; + } + + + /** + * Nix the java.lang crap out of an exception message + * because it scares the children. + *

+ * This function must be static to be used with super() + * in each of the constructors above. + */ + /* + static public final String massage(String msg) { + if (msg.indexOf("java.lang.") == 0) { + //int dot = msg.lastIndexOf('.'); + msg = msg.substring("java.lang.".length()); + } + return msg; + //return (dot == -1) ? msg : msg.substring(dot+1); + } + */ + + + public void printStackTrace() { + if (showStackTrace) { + super.printStackTrace(); + } + } +} diff --git a/tools/src/maple_loader/src/processing/app/helpers/ProcessUtils.java b/tools/src/maple_loader/src/processing/app/helpers/ProcessUtils.java new file mode 100644 index 0000000..c023f58 --- /dev/null +++ b/tools/src/maple_loader/src/processing/app/helpers/ProcessUtils.java @@ -0,0 +1,32 @@ +package processing.app.helpers; + +//import processing.app.Base; + +import java.io.IOException; +import java.util.Map; + +import processing.app.Base; + +public class ProcessUtils { + + public static Process exec(String[] command) throws IOException { + // No problems on linux and mac + if (!Base.isWindows()) { + return Runtime.getRuntime().exec(command); + } + + // Brutal hack to workaround windows command line parsing. + // http://stackoverflow.com/questions/5969724/java-runtime-exec-fails-to-escape-characters-properly + // http://msdn.microsoft.com/en-us/library/a1y7w461.aspx + // http://bugs.sun.com/view_bug.do?bug_id=6468220 + // http://bugs.sun.com/view_bug.do?bug_id=6518827 + String[] cmdLine = new String[command.length]; + for (int i = 0; i < command.length; i++) + cmdLine[i] = command[i].replace("\"", "\\\""); + + ProcessBuilder pb = new ProcessBuilder(cmdLine); + Map env = pb.environment(); + env.put("CYGWIN", "nodosfilewarning"); + return pb.start(); + } +}