From 84ffcdb88902dd75328253cab96b6bf51fb5d3b0 Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Wed, 29 May 2019 22:38:24 -0700 Subject: [PATCH 01/13] I dumb IDK if this makes a giant line creation count --- src/GeneticAlgorithm.java | 26 ++++++++++++++++++-------- src/Mario.java | 13 +++++-------- src/NeuralNetworkTester.java | 24 +++++++++++++----------- src/Trainer.java | 35 ++++++++++++++++++++++++++++------- 4 files changed, 64 insertions(+), 34 deletions(-) diff --git a/src/GeneticAlgorithm.java b/src/GeneticAlgorithm.java index d47a7f9..54333f4 100644 --- a/src/GeneticAlgorithm.java +++ b/src/GeneticAlgorithm.java @@ -1,4 +1,3 @@ -import java.io.EOFException; import java.util.ArrayList; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; @@ -46,13 +45,16 @@ private void main() throws InterruptedException, ExecutionException { if (firstTime) { for(int i = 0; i < popSize; i++) { Individual ind = new Individual(numInputs); - + /*/ try { - ind.getNN().getFromFile("best.nn"); +// System.out.println(ind.getNN().getLayers()); +// System.out.println(NeuralNetwork.getFromFile("best.nn")); + ind.getNN().setLayers(NeuralNetwork.getFromFile("best.nn").getLayers()); } catch (EOFException e) { e.printStackTrace(); } - + /*/ +// System.out.println(ind.getNN().getLayers().get(0).get(0).getBias()); futures.add(service.submit(ind)); } firstTime = false; @@ -85,7 +87,8 @@ private void main() throws InterruptedException, ExecutionException { break; } } -// individuals.get(0).getNN().save("best.nn"); + + individuals.get(0).getNN().save("best.nn"); System.out.println("Generation Score: " + (mean / individuals.size())); System.out.println("Best Fitness: "+ (best)); System.out.println("Old best: " + (oldBest)); @@ -131,16 +134,16 @@ private void select() { // theBest.add(new Individual(m1)); // theBest.add(new Individual(m2)); // } - for (int i = 0; i < 3; i++) + for (int i = 0; i < initSize / 3 + 1; i++) theBest.add(individuals.get(i)); - for (int i = 0; i < 5; i++) { + for (int i = 0; i < initSize * 2 / 3 + 1; i++) { NeuralNetwork m1 = NeuralNetwork.reproduce(individuals.get(i).getNN(), individuals.get(i+1).getNN(), mutationRate); theBest.add(new Individual(m1)); } while (theBest.size() < initSize) { - //System.out.println("WAITING HERE"); + System.out.println("WAITING HERE"); theBest.add(new Individual(numInputs)); } System.out.println(theBest); @@ -153,3 +156,10 @@ private void select() { System.out.println("*********************************"); } } + + + + + + + diff --git a/src/Mario.java b/src/Mario.java index ab4a8bd..4fac2a6 100644 --- a/src/Mario.java +++ b/src/Mario.java @@ -1,9 +1,6 @@ import java.awt.Color; import java.awt.Graphics; import java.awt.Image; -import java.awt.geom.AffineTransform; -import java.awt.image.AffineTransformOp; -import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; @@ -96,11 +93,11 @@ public int draw(Graphics g, int[][] t, int offset) { tilex = (int) Math.ceil(x / 48.0); tiley = (int) Math.ceil((624 - y) / 48.0); - g.setColor(Color.RED); - g.drawLine((tilex * 48) - offset, (tiley * 48), (tilex * 48) + 48 - offset, (tiley * 48)); - g.drawLine((tilex * 48) - offset, (tiley * 48), (tilex * 48) - offset, (tiley * 48) + 48); - g.drawLine((tilex * 48) - offset, (tiley * 48) + 48, (tilex * 48) + 48 - offset, (tiley * 48) + 48); - g.drawLine((tilex * 48) + 48 - offset, (tiley * 48) + 48, (tilex * 48) + 48 - offset, (tiley * 48)); +// g.setColor(Color.RED); +// g.drawLine((tilex * 48) - offset, (tiley * 48), (tilex * 48) + 48 - offset, (tiley * 48)); +// g.drawLine((tilex * 48) - offset, (tiley * 48), (tilex * 48) - offset, (tiley * 48) + 48); +// g.drawLine((tilex * 48) - offset, (tiley * 48) + 48, (tilex * 48) + 48 - offset, (tiley * 48) + 48); +// g.drawLine((tilex * 48) + 48 - offset, (tiley * 48) + 48, (tilex * 48) + 48 - offset, (tiley * 48)); if (tiley < 0) { tiley = 0; } diff --git a/src/NeuralNetworkTester.java b/src/NeuralNetworkTester.java index 4c35ad8..403959e 100644 --- a/src/NeuralNetworkTester.java +++ b/src/NeuralNetworkTester.java @@ -1,19 +1,21 @@ import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; public class NeuralNetworkTester implements Callable> { public static void main(String args[]) throws InterruptedException, ExecutionException { - ExecutorService executor = Executors.newFixedThreadPool(10); - int times = 0; - while (true) { - times++; - System.out.println(times+" times"); - Callable> callable = new NeuralNetworkTester(); - executor.submit(callable).get(); - executor.submit(callable).get(); +// ExecutorService executor = Executors.newFixedThreadPool(10); +// int times = 0; +// while (true) { +// times++; +// System.out.println(times+" times"); +// Callable> callable = new NeuralNetworkTester(); +// executor.submit(callable).get(); +// executor.submit(callable).get(); +// } + + for (int i=0; i<100; i++) { + System.out.println(1 / (1 + Math.pow(Math.E, (-1 * i)))); } } @@ -38,7 +40,7 @@ public ArrayList testPredict() { in.add(1.0); in.add(2.0); in.add(5.0); - return nn.predict(in); + return nn.predict(in, 0.8); } public void testReproduction() { diff --git a/src/Trainer.java b/src/Trainer.java index 15b32d1..64bccde 100644 --- a/src/Trainer.java +++ b/src/Trainer.java @@ -1,27 +1,48 @@ import java.io.EOFException; +import java.util.ArrayList; import java.util.concurrent.ExecutionException; public class Trainer { public static void main(String args[]) throws InterruptedException, ExecutionException, EOFException { Trainer t = new Trainer(); - t.start(); + try{ + t.start(); + } + catch(Exception e) { + e.printStackTrace(); + } + +// t.testSave(); +// t.testGet(); } public void start() throws InterruptedException, ExecutionException { GeneticAlgorithm ga = new GeneticAlgorithm(0.9, 10, 169); ga.start((int)Double.MAX_VALUE); } - static String path = "/home/computerscience/eclipse-workspace/Mario-Bros-Genetic-Algorithm/best.nn"; + + static String path = "best.nn"; public void testSave() throws EOFException { - - NeuralNetwork network = new NeuralNetwork(100); + ArrayList arr = new ArrayList(); + arr.add(123); + arr.add(9); + NeuralNetwork network = new NeuralNetwork(2); network.addLayer(40, Activation.Sigmoid); network.addLayer(3, Activation.Sigmoid); network.save(path); - System.out.println("done"); - NeuralNetwork nn2 = NeuralNetwork.getFromFile(path); - System.out.println("done2"); + System.out.println(network.getLayers().get(0).get(0).getBias()); + } + + public void testGet() { + NeuralNetwork network = null; + try { + network = NeuralNetwork.getFromFile(path); + } catch (EOFException e) { + + } + + System.out.println(network.getLayers().get(0).get(0).getBias()); } From 1de983198f827a8d27c57cbf5a946ff53943727d Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Thu, 30 May 2019 20:36:29 -0700 Subject: [PATCH 02/13] Yes maybe or not --- Lframe_0_delay-0.1s.gif | Bin 0 -> 2084 bytes Lframe_1_delay-0.1s.gif | Bin 0 -> 1969 bytes Lframe_2_delay-0.1s.gif | Bin 0 -> 1739 bytes Lframe_3_delay-0.1s.gif | Bin 0 -> 1969 bytes _classpath.xml | 10 ++++++++++ _project.xml | 17 +++++++++++++++++ best.nn | Bin 155 -> 98251 bytes best2.nn | Bin 0 -> 98251 bytes data | 10 +++++----- frame_0_delay-0.1s.gif | Bin 0 -> 1667 bytes frame_1_delay-0.1s.gif | Bin 0 -> 1602 bytes frame_2_delay-0.1s.gif | Bin 0 -> 1502 bytes frame_3_delay-0.1s.gif | Bin 0 -> 1602 bytes 13 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 Lframe_0_delay-0.1s.gif create mode 100644 Lframe_1_delay-0.1s.gif create mode 100644 Lframe_2_delay-0.1s.gif create mode 100644 Lframe_3_delay-0.1s.gif create mode 100644 _classpath.xml create mode 100644 _project.xml create mode 100644 best2.nn create mode 100644 frame_0_delay-0.1s.gif create mode 100644 frame_1_delay-0.1s.gif create mode 100644 frame_2_delay-0.1s.gif create mode 100644 frame_3_delay-0.1s.gif diff --git a/Lframe_0_delay-0.1s.gif b/Lframe_0_delay-0.1s.gif new file mode 100644 index 0000000000000000000000000000000000000000..77a5cc8958bc669d450c98b1ce0c22fcb1ae7de5 GIT binary patch literal 2084 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 literal 0 HcmV?d00001 diff --git a/Lframe_3_delay-0.1s.gif b/Lframe_3_delay-0.1s.gif new file mode 100644 index 0000000000000000000000000000000000000000..95d6e63c8275fb485ee10dbc25b2f7d08b8ac862 GIT binary patch literal 1969 zcmV;i2Tu5jP)9(E6#m}NblOf!sih;8VryGUSpY^zh;bph(1pRoxG^Mdj7EcOjB(-Gg)3u7Kut8d zF!66;A`lc4jUjPikeHwd(o)*e(*M@!Or4+ibIrML&YL^0GxSa0RJofs@4k2MJKs6q z`MGB_L>ylq>KCS?m+fL3E@+Og{IJse)4vXDQACKem_B^^;4TqGfV&bvQ1f>JxM=`t z)$E;wu12LGu#JGJN});sf*h_z(_v_~=>SLwO=!@Y1$4s`DP`HdY)yua23?2iz<*8} z%DXPIwp)&&g6f|8`DV>NS@Qyt;^v7#>A0zajc;aWu#$3NXc~_6cA`7cCB>?=K z0Tdipf{bYzCRg(~H?e@6?V>$yO4@C0FkuOSbK?sbPv<1K58kswDYxoNOcPa`LBWVZ z)c`PPRsi#7Je|c?H)eeR&kuH?Egq8!`h0i>W9b|W9XNF|B7kZZD9DK700NQ<-``q9 z#&#qPp6N?sN70FyLUeTnyfuKd!0E9$P*5TZ5P(F?knems;sMyO1z77Uf7t@8$;nI( zXU68?2!UqPz?1iPAa3Z0=^7HIQARi3$B#l3ohW+cz0k`5f)*e;p4^B9SnDe1gJ6gP zpAAo!G`PD9Z4EI$!l;^OAK)mYx#f&i0g#{6)dG1(AnQ2N@puRgn97tW&=xoGY+n*B zF)yoCv%r<541SnelJ9WDAxpFrElBGvS4hiFX7Vy1Y{&w>qyXM}BO(4N@>ZRxz0#oU} zS{?{eN~L5fZ^=ADVc7FA${*e}vISl}Zu+{4={l&+S#PKo2>Ov4PW?PmOoR-8LC}XI zhtZ(0*G~2e*Ki?u14z!2e^3IF)Bw&y;#i)sy560 zqf|ar3dIbHLo?m)c;R|z87hGYy|`M4rE(%TC@GOq=t}t_?iz^Mx?i1U8!Tx_vf}<@ zW1(e;1fZG;-+Zlc&6$`&BzX+iq&pT`&_C8L&j^3F=5cvoPHsofDMJ?=QB(P#$`T1Z zZS=~qlCyJk61s)sn~Wee*Jp(4ch`HfxDIkpZY7R&z9|O{(qpj&`Cg6ZiIKVrjr~YYrnj zz4HK#T-=NMEIh}4x^lFxdl*$ws{nYOgn9VS`_Rq+lm+9-6m8>JRwp_l~82Y&0HD=SCT5~6OUM9>112cQeAOadck z0bzSB7Ez2QS_~L?3TW*HsD>K9ATV>)1Hgmkm$u|^anH2x#6b&enh%Vg@Oq$`Sz!D} zz!ENEw&4SyXT47Vt@nByCkrfJ_e7@#Si$tNLKq9w5>i9wf$t6v3TlPG0i0}Q4~eyS zoOS~5un%yCR(&8CjX0Oo-3QJb7!*tw(r8fotZC_-mJUrRUMULw(YGL}r53dmf%sni zO?%WmjB>A36yv+z0Jw#6OPI|h{aWkHY|G#}=K&$W^%Hj+8w^dB6KWz1+ocOlA^IbO zwC<`$Dn(WT)bp6<10wJafzHNl(CJh?k_MyC{?Sgfr@hu>*gk1!0AvA;Dg{e}WjcsK zhie0l>Cp)dLPnu2-5x5XyXeEzpXXgGLnJ33ap&fbwr;mYiq0MN!v zp&(Jn0y`fU*pl?N)Di+_pqr}#pfa2GYATfKr@bScn+HG@n5;pLY}h4FCE=*;&OXq6 z2)JkWT7Q^G=cEM)Kx5v-zTqU|mghKOX`}8M+5+k#ib#A + + + + + + + + + diff --git a/_project.xml b/_project.xml new file mode 100644 index 0000000..eab011b --- /dev/null +++ b/_project.xml @@ -0,0 +1,17 @@ + + + Full algorithm + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/best.nn b/best.nn index 1544120a4a3b461136e5000e4242dcb99bb59ca4..07255c8e1ccd10bfb44bc53e3681d40d2015ff9e 100644 GIT binary patch literal 98251 zcmaHUc|6tI_r6L}Bo$4BN>WkMB;id-(qK#)6hcUnDU~Eq(j-wrq9h_yrc7`190v!- zd?x1{XGD~w`rXg9cHiG$_x^ET_vu;dS!=Jg_I~d(b<=o4b3HwT79Ml(_ONw5=HPYp zvd6{OOKuh&c}Qr!oA;$dZtmV*o=1d4Ty3v8czAjVNgr{s z^|9UR?d9ycRnNo2_Sz9=Pp`ec?z-MW=%18-0xbQX)t3KRZTV~Ed%JD*%Uau4bA)Cc z5)$@wzV6`b{*TY>tHS^Lx91fhf1x@5{Fm~-Sot3jk^g0R*)7K6?C0WfoAiIv6Si}< z{U@IVw&%T^eQdp)FS~gOi67DXi}oH7ns?Q~`GS+zzk;)T-Lc%*1F^LVWPcB#1^;J< zl3gMs z1bnJ6+IaD&@NA)3`a*MkY+bz_{?Y&c%#L|qvUBjbn-;lREQ0)C_CMj>alWlvQ*ia# zfAuA>nr*Di?IaSQjLTGG`aT;#gB9yK4y2r!L3r=sM$Q>gDc}f+#im1jl7P6=m^@KY z6A(vUS8#LfOpzsUM)jHUt4EqarDE5u)w0{N7vXJP+tn0FL`|pu{@- z7;wbs&`%$pDFWgTG~6Ez_XkV%>Gbktm&yQzdQijVs{_Dtu(Qv1S*trjCk$8WT~Gl_ z=C{o>l3xuV_Q{A}u0?KO+0pef?UnpYUnTI)+O7l73SEIC+|`o3;z9(}zUNqp*?w72 zDciX)=uHU$IO2WM+pGaDAnLNyIksInV9D6tDIDse4jidZ&|59z1RQrDT1|BU^a!Vw zT)EcmbR9T)v97w9I;<9>MCywe>p|9d`Sz1akf067IQau&iy`t2Z8_0f-fL?9JIr zXnkC7P3b5xs2NT%bJt^jNCwNYEr#YBeGNgA?iF_Lt2(J@JYNY5|DuN_eV)Oy=m zIpGRa9uvIJ8a=&o8E}mUt8XTqMYB|6d+x;;Q)q_61nMUejR*sPh|}g0nm3EVZ|Kp1 z#9w_V9!>ly^?Ml^Ea@jVX{1_g0!yN1(Z^2*P$dN4O*Z^0g0*9`A1^n#T}6nw{2Oz~ z(F#%IMgH#odal@BYgDD)ZrQr{KtVdKn;qD8X zrQY|qa2ruPdi;%`6jwkvRd!SG>o_}zBqtpT8+>(aNrnef4qJMZO=J}Jl(d$-YTB(4|o#0aPRg#!xVG{q_VMSg0Y zYXB7n)pO^*wLO67XB-#BDU5?=l~<~>WLy{^R=|h#8L@COV1ssz36F_>;Ky8JbX4+c zAy~G_XVK1{fz{%@$A9cuqzaaJyPh>|g9qwLm($x>SI(l$=+hH#jE|lLm5PtI-%nK) z03xJc?(%RV0HPVxZMe7tRjEP!de3qu>I3nu@xzc@I#^z*muIE$gk})N-)Ji2QbPu= z`(o3x$ruaZiW4)e-{_;&a&LCOwD3nWU%Iu)AZQ4w(7kP&gg&hT6>_$Jc$^(%hS5G; z!sBQV9V3fb9oeZR3lTVXuzT;P(J9p_b3e}TqyngPcv>G;n1kw4?wxIDJlh@oh8q{Y zA}c`F*w8zrBeR{)0M|FV`ncj*eLz&AOCBi>R4|_Zse*lHP+cmuq-hTypm;U@spIJv z(LSQ*v+f3+L%rptq?^YkqW-bl$F;mOQ6IY3z2`1)OoObmoI+N*G}}OQR!Qb7{@EHp zgpE}$siG!;Y9EbvQd&`UIc<4j{UN(RMX;;B)+DhLESXdnd4)nPK!T6^3e|(55BT8f z_?J^3BY@+{W-STIMt$ft5!(m?lH`-IB?F%onW*2$y2)|;ofR;U^6=Ek-d28S{^V~GukzN|U%H6Hw^u_J41o2-yZ z(wp5ZRZT!_+M3x-SJ3l?sK0yBsuy0swT7M+OROgY8WP+{70E@NOaIjpcxgH0iKP{e z){gKMW-PJ7;&a9L21!6yj-2%$uo419{+Kv^tz#SzbD4=Nb3z1h?ZOsUEvSI{T?TFu zY7GH3Ot&q#T?19dnaZ9Eqj_6^V|YuEr{_w{AiQ6D1y!~Ot%01R)v4BcOhu&Bvpej+OkEj}mp8~%D zS?;;Kc-WQr^OLNR^gAdX?;Tr2Ytdhnz;k@)k1F43e)r~WaVdx}^i|Pr$LtEwWF=Zm z&mJBFl&zCBe#RBecfImCvR5Xo9q+nV5_vfuojSvF@I37d=n*bZ?b`NcHLMozEXeLZ zc>&EJ$5Q9#+50vSp~cgYPVra)x%B*8Q}>W04yeKDSD9&3JXrE>utit3qqDNwwk+W6 zw-DgidvjVJ>cIMNvKnh21oOkl?lJa54VLf6Ed+c8tLIj>?u}-3*E1)5d(5j+0D0+h9-lU*1 zAy8@5bRF2TSq&^{_#E$~G*RH#Ds|y~1!p49&M2K@TU zOY=s~=mH|dl&xF5#2ygi<)@2l=b#n!w93>w50ZduS(vM0^iu&4<VsfQl*$?j=q+9!eswlkCK)0K6j~y#CQJcJe6e%xKd&=DlcCe6vfu(b3#jiNTh6=v z95{A$cY@OT5%8(9Q)mpuf(e60y}qdqcd zw%3dqGJ~yvqgPIMzmwhp95aX$Xk-WRFltGPX#Gkp;22(wo4?z_3}UPWFBU#34FQ!Q zBXahwROl^6Efch=enqdgcv;Vuwy47_VR`xscZiMaf+n@==aPb#>Y&nb+U)Czz?h0+xj*qt`01d zOpIq|@XG)(=|N1jMtW|G22p27VkL^RCc3m{y#jZCc-5ECL+!oF(o0 z5@A5(Z#@TpR-}VUMLK??!N~*=q4Qw#X#zSiyIfA2wH|=};erjnC{LcFotpRIX4myN zUGQsp5nb49s|<)@#J{_~#R*Wy?S_ce-_i7ZQR-vwvOxRcMNsT>S@enu=gFmP;NCWx z@x!}3T_&#WO#_u8o{#6l3ZWTC5$t-YlC7|$(0|>q8gD+4e?=_=|9-~;(O+Bi0hRT2 z$5BUY02O~a?h^kL>WbHGHpEA1D`q&Hzdt2)!Ru&1b%V>~oO+QTZ&Br3lffgP(mQBi z7iJHB81Kwh8>(nA_;HPv-!Ghmir|@R>x8}A15kutohvo(Ld~&Z;;d5p-GFc=>&e8 zky!0+1CdnnBya=MQrXg&2B=i5czY)M7OE%Pd~nEdWg2iyxwgSr-O71hol_*cvS&^z|2P1%M{1~?S zrdbpq%3;_03D+$_g|@km@Z1-js#F)c<#Gu)@9`l8Mr8UJJg+fQUcRNlG#ymBqhBBQ zS_yr}sNpr~N46ybH#A6Yt1&~Tj=-rqK|^r~#Cw#zS?Cla08n{p!{ZiZRL|a5)0;*v zK&LU*d6ImcBO5IHb_NtEiP-~smWp|E9>Z!ek|1sJ+=gl3s#~qa`yvVev7dfveK`m_ z0Ppq9s`#Wtp5d_JbGI_>Igrag?@ZmhLVuD69Oc`(4zH`IN32b~;n$VW&1FcHT)Di& z6(V##aEou^pc&*!DQwS9M&~F?N!&iT1I=0U)(oANa|G}kkWKmaeHF|+mLplYZC)Cv z;Mp6n1I^n;z_R7OguF>VnvkCTu}e>>uz>rZ6n&sf2`Y%SwHpMFgw_E^8LUz7b3k3` zI`v|oM;TNJB1K9 zBi+qzUj1AR;&m#zpLlH)gwUs;uHj^;5=IkG;nqHP0gk+hY!_$%y~U^uX{8^DQos#| zwyO3T5oZv_o#GM6+fbF*>oTtGU4v9Q&Y7*>zFiqCdz234omE3Bgw?XWjG7&Y+yAQU z#v4!A8ych=OBLo_6nXWseVFgOaUzWGY%NdlQ$~olrlVn{xU$d8^;7Xt}6hwU!A?V5uGo1+q(kAK=I-k4x?ntPKd4d z0L!e2+e)lWXdjiAzH4>3U;>upKVGDmMwm~WGG~qb&ON8Vuh+@ZtL%jpSaQuAa>M-5 zX+tME+DFKSBJPlZjO{xj_|e;|OivV70M|~BZCdXLPZE3}qoY72*a<8NlAoVt$u|LF zejGCz555b2g6U11vk7QE8HtgH`l_Hu_}hg)skwW5W(>3XN|`f+h7k zrZIfsF(6*_?iPpV1~UlD*DuM*oe!GW>yqID10fV)aDL!L^Fmp$qNSrND4Lco9AurRiljNa^)0MKr%&5141Wz8Urx7^`rcn7L- z+cD2SuE$Xy2RcRPT80C{$iJz^!9U@)kMl!sXNcT}^B!w_xu@H1Rv5}2zyGIl_gX;d zoYm{}O%+gd{LJ0j7x93Y8`XbKoZut$Q%3CSAj*Xp$Bt3(Kvm9k5b*Q$GQpDi(KEKSUW}#lCFHb8aQl7 zgJOSgXaQ)_lm@bzBpqiEPC2~iq5Nlyr2vD

jef&@qfw;GRjLn*rA!Q6A&z7%+qIxX{PDuLkP^$B{jF@Y+c-pn-b&gz4ibKz-*W z2|ojmfS(}r)78)bVc>>KR>il-fC^5z^J1UGHh5y<)XsuF8*aLk7B4%UurKoo73`rHAL z8H5SePEh+)dw`>FIkR`4w<~Z%vR!|oFgHMKyoi4=9A(W`h_aTGE(Sl^DfRv5$_fEF z$|oHg(-i_gLV?t@VXPM*W_!7!-%C0mmS6E4-F2Xe)%z5!a(sx^*D*J`R+$Aek2hpd z|Ioz$?to|ds}{DYL%jUfl(dSU1kfBFAIi453sZ;p`0?%YNjt!jZYmNRmK+V1^}5G; z^{1gq7{lp%is9#JupA6^o^6djg~5A85<*mhNx&7;f78^0M?fWH@{>euEn02O@(Dq% zFsgjsRna%eMebl3CM%u?lSLK%)x&%OkcXP_8mj;35>(lKr zR$oz9>IeJ_{!~DxvCb~3*E$%g8ADv$#J2|3?0II{>V{iopptVoR=_%w3Fs4nu`;wy z5)fYXD8lr<0wDH6q980F9T0DmsKZaHG9X5~qxwLu)eOSBH#>Fhx(*!Prgdaa4oeYP z?wzm0-TD|%*Fw2O!Pap=DW9JH)-;X>6+T_dcET1tDYI`q9#;#2tntdgvwLM?L%@

eOqhYXr*pQ7Upg*l+v8N-csqS2|VS&FcprNHS*zh;(!@a1Y_;r-+iTh z_J7^5Di*)CJ9<(Bw3`~f$nPjd>umnOO)}a-f}F@E4qLaPcLlH#a?|6_F=*8tueIg& zNTWSU6`i=>XlenP>_sMXK2@p!s@aZpEH)?r&34HK&Y49s=}KUIU50)ayJ4^4m0_ud z6CThHye*>sXvQa$8B4FYF@_BYCp_tx^bCVFV9kqZ%D!&Mk3$pNHk<_0jz_$5d_nrZ z+wh-_{&qfIkV|I4-o4FvLXcY+zi@8M-CDe~^%*LUgM z!)n=)8HBgSN{FW}K{K2yIq}>Vhpu2Xeqp`cJR#uprWY6PQ2>PXj~V** z?njzQpYKUlN|k{oJLbe3S4%6Tx%g^f$w@!pcuU`y>eZti*MG&>_R&UI1706W%o92e zDtI|=t`~1j0zVR;;Zl#@C&qg^UunxTAv#8_6SDL6V1Okzwb;Z|vI)=^k(?b;-wA-2 ze(P5F>7rctwQujl%I%xsaHfCHNRKK!iSRZl?i2Mi=q)~c(n%$^G6^iX??da)S-_14 zumAYd-Q@wQwa+qt&r};!Gj_1L`Lyy9h~DA+X?V?c3sB*#SS2>r2_3^pYBBR)Dx+DV z-x?d!^xXuO6ymri(H+iTyxlC8mTg4`P0CXTqWfL6|9T?Bu!~}7Ub>DCF2TlHp6z!aO&p~D2&ONHs-`+CQ!iq%8&o!yuZ@xX(B6V~HaCF(^eEX{!;8#7kK1ln?$Uk^fNSeW1M4w(Z15P{z#(W0*j zr`tc@yA)r4VYd`;yn*d9PAy1f&}*lStfm5F&AM6rB0uX4ATIxCU%+@X_?0uS=v$JM z0d*eFw|Q-cW`6kE*>l4$y=X-prmgkkCTUK)e z!&UcWgbblv1o{2VX`vEenWm;Pd;0HrcQS>8^9<7(70*b8= zUFP)nGp9O-Ehz*=@(hO$9a<1Kz8bBs{d}B`aQ!6s@y^UD`gxuRh*o<_B^SlR`}5Y^ zf3O==u)*@|!{T>MK$B$B+Pi5bbQ)ty%z5jsi&jfxOZ?a!h%_lvVHC1Kkm8(YK`@&`uhBm z8Uan}iyrgr2G{{OsVs3(XRt4Dz0p*tjqz@42jmYSsq zmV`uMiGn0l`5sa4y9s(Q1$fulH4c~bkqYO>ynN+s74Tzw91#^VT>zT>9%qwTSvJ7Y zuix{qeCr2@W1Z!E%u^IlVUVRyM35x-4QExTN=CZQEJ6e$9c;gL{Ab#K+^}$VQ?J;< zfxk6ho`L5}!wHBDzYrx1eL>T}c&+Jk$Vves^1QsVA*-0V`NnhbO0l~8dx^+As#sX@ySMpY7Y1fYBjij{RR__XUWBXo;w$2 z3S+ZRUf+BH-3Yi}%Qh_AAqy(Zl=bO9614y|)NEbo)ocie-uD}yn}|9<*&w=JD0mn0 z6IjU=griF4%Z*>$`lJlF!CM~22M!3&Ae?R4S&>wZGNb#t-wH#|R;)VQ+C1(un!c*s zrL)`6y#i+noy=&8b^}eut9)g%IG7u(wd#;QEd%^;+JpQ%fxMVJ}v$J^+Y&&SZtzk0`M0c&e~|Mbkq-^qX1+lE>Bp>UX{U z&a@%`P{UKb)HBb+kmb6)Dy-3(8H5c@8~5jZftw3n7kslMM-xR56fL@B@9hhI41;y7 z1=$kdM-F}YO2twQIMVg6;#;=EzQ>36-Z(~$hdIL-gmpc7y;}t$k5B}vxSi`p>h>j)m#V49NQ2%INulsbCPJ&93&;RSGi*>)N)$ ze%Ko2GNhs=D(?idgmd1_+PkBt6#UpBJ_XxPaKW#g;30qEDx73^@5J(@Wt0%$hOO^i zHnTPW#E{k$my8($6^g{@O4<>BK!iaCo|6~ zS3q?KGh*pNl7P6P%;XbhC>Q=W1;2g2RBOEF zR+3_HJaBCuO@;<%g#Zn66Y+HmNr0#-t$qg!{ALhFTR3QIcN+B}ZMaTz&N>CK9K6PQ zwE=ymjj(mxEMNy5$269 zQ!{~h7*Q~%LeK~262{I~OIZH{Rf2P48EH)EEab^wzu3600T9j@{^r@(h4LH_c9LFo z60L!on19K2k0nIU79v204Ds?y~9s;7Txu6nUa~=F>DopX~4n*Jt z4jgY6Nwmj$XMK{AmqdBe)aN;9OoJvi_~%!`>;rwEl5leOty7G6P-*H3Z~1ZC3OM@Y zvy`E8%K$N!7j7uEsR7Hf`RmnLDlmh1dsXX__wwUlIb^4B&3mN^ST=Gdi?`l31dgrM z@8*zf0*E_$=8oDX$OVr+qvRxh6|%+zyRLtC^6>|iE|n8ip|xnWEEf5$&kGi)^w}rq zlOAV+<-mz$S3Ve$5clj>GH0AssD z)dkcZyL{~SKFJw`H5hn{JxA|~W9;_8p>;Y(z_RY*v9Dj#&}xUuYd^1AQwV;n4BR>2 zs16V#Q*iglbQAau+b&%csFMsFr(?m@U=u^&7`}J5g``XZN78KaYJ%QE z^ShE|pxrl?R1wz+IpG|Ylttt?v`2gDQ&-S6(fxp*s9&i!0rx|^PiD_rIbl%2sHJhA zdSzyVCavj1k<$e97-w8ml=psxdc|=&=*!1kXDqQH!sjaox55(|{~X5rn&XZ9nAegv zZ;{;unhed}KfQP;pw|6MKBvh*S25c1r|aI|e+-)JpS2qeTK*Xkdy z+1~|Ax)AGUzV~m?q}mm$bvMBs04Em8H~pEL29{lWmo_?;AavWvIL00wO{kX`IQ!^ z3|9>_|F|ayXz1g)hR;jMU|Ab;U$!f|4iMGJKXKbm79h&OFi*)8FYqIA-rcqx5eM|H zvyUQk0jc0ceb*LDD*#v5_q<7q3z`_IH|T-5J*eQ64W)f5LJz@`qaG=g6bqT*+_Xli z@C;PJ%3PDh_YT7j!1#*V?a}9B!7nRj`r+9f5dELuV~JUnY(dXY`kSo4*A(<*7)Z-F zp7HlP4XmOdR)-dx7ytY+O=0VE3fck8;TF-SLmCi)JL0!&uFpO|eBkX*T#S*`+`1{?wnvt=9J=&=9t*l$h z^FN#cOK$j--s@T}Ac4TG{6`V&BfMPPV`tE>D2PC8DOsCx7}ay&{K_i}RZv%kpKfi{ z&4pYr$`gtEnJ3CXvnWz#)gtuC6;8LB=+Qdc2OJx3l~7kePdD=BrQzT9gh0H3SE<)7utKOBFQ%N0i$#OYLJC;+!-VPsxn{qJ)+_nk9wq zKZ14FeVoVhfUDTNR@9u1;!$F~^IX;(18%51aS-C`dxd=9FF zw+N3NB)(^XC2^gqs8V}8sPLA#Ic>V60^Hyp#dY1$XkJ=-3)w5kM6hf+R~e>8*9A-N zH+k*!eSmOY?~OhMArzfr)#E;@vH~pIyaJEhUos7d9j)~BW6(M|30azsYzbB=1xsGz!v}>A7XV_d-ZRg3;s~G?jhFKk7*62Fy0_GJ zbQjWOYi7!>`&|K+-0cb*h`(f!<-$cv)3v?S}QM|Is&KYkis|GV0aXi?|86}N4}J_gZZLn14O>B%U&CEm{yE$_sQo%b2?ad z{FIyC)(_pp*||wuR@$T#+*^Wx?!0|Z}2OeDVMW|3l_<24|0Y*-k-n;82R2QSQ z(&uYUvB0vc>bJC!AF>=;zi8n%4RlLryKkQvX9Ru6n94VF>rbPzb%2%=H?h(lRH!nG zPtUE-2GlshuX{gcID_!=pIrTSDTJBSMDVsLDPgbUD*tuE8gj6^G)0FUgg;k38y&v9 z4Ai1_D3ovidmi$(ufPwb!@j^NH|NdOo`Y&IAQiG>zcHFzH+JQJX;+!*&I}e3c1syc-#~)-4jCA#37SkK6Ek!3UyxOf{y# z66-OwzWC=W%7wFilY#L;*s&Pb(B+k1wi!eqUnz(@XzBr)%;`vCqCQL?&az2fCAC8b zEMGO#-&;BafF@X4SP?r-vh;QZYeVW6-M%Xz&Bpd|^K1iE)pJN&fhA2K+J^H4ck! z5WsR^eT?1DM^=Ei=E5HF`PqONl3%wc{UQURE#iL@9Y^~u zSi6}7!1^$@UC`dD18`blv~!D}e_+Eoigz{JW@1`p5P@^<%k4LJbOGhnegF9VJ5mv( zEPc5wT6l)T-ka6l?)m$Ajwt_`pEM5D#VH|z&qJ@`z>>18q;v6J6ro@IV1b4iTJ3=L zVa0%T?qJDvuUoP2$1y5f9)=}5QzfRY&y$Jpo(?}{me(FnsPX8@J982UcOqn z&sbuV9;KVZ1k?w?W=pKp1fDCH;O9vB2>Ny-)_d_$Ww%cn@;k6E^qkReK+M4jt-W;( z5Z$%FUD{?0RlZ*={Cp_a3%I77^Y=bJFa$(9wqY;vL@^-l$qW|;7wyzmwzkBn%l0!I zMoK%z-HpD7h2<4K{3>b$b-}pJ1+#W1qUU`5`}Q+lCIO(?w=MB!xh+y*D`@ThvfU9h zd)<<3O5USf3Rt^0X*ntYM>{vEInBKbDxE|3R{b#t6}-yZZ}qLw6~Hmf{w$9bht*K6M@dj29=rPUiEs{BvOl!>{N4@|f-%kOCbzV~xr_5Rh6Pn?qcsfVpT1B33G;$e zzrK?YorkJBm~wH2f+|!AC+tuiAa)QS0`m(y`w!a&q7P{<6f>wt9peN(t6w@r2TT5} zny8AuPc^1)`u#KRp}+|O4c@qrtw4pDmb7FgUk$j_Z}(;?u7%a&740S@QjP{#4%1Gj zSFbYwOB#J6$L!(&pyp9?uiY1izI<0-8bqs$hG8UG;-qh#P2nba3OE zSg`D*oy^$g;$|`>1nc=eLTd)eFMx!XQ2$4@jI4^_k@EVk89NQ)@lb>(r=ypDzXhd>k33x z#B|}hz|}}RNM5Wa3W!JBw!-Z)IyrkQyT2O^qv$#6QRlX~1we$My zrEUUTR;KZb7b%i}2uGHzd!-)+5lGwbE0E{<0V@4Ht4kpUt$|p(`H$l0cZ}+=@oVnJ_2Z1VKgWFn+RCa11pv<>`?}; zJfC=YzYSXZpo!KK(ODM2(F`UI=eZdHYCly$aZ^EcVJp2gK6hmkaKnna(UeQ-fEe>{ zYAgLl_vJp1-?xw=;=+i{ZY6xE&w?4dasUxMsYwqX_>cy z=U`s&;hoPbI*w}2a2Ta9M@y{`omSm>@3u*AVS!(J)1C$DWHbfzWC`um^JtIt29t&2 z38+fs7*&b3W~9QnWpHh4{|Km*MQ099Mw1{O?P+AoqpU>W`ihtI4g|ylN3Opq@$&)7 zjHYtD=Efd$BWLrl%+pnh;8%S-=PZ?tB5+i9Uu!Yvg9_oEgx>vfm=~Nb`FLCI9Egt7 zo7*=nRUQM&N~L>!N?sp zIu1V!G&_Fxy$x901c)$R(r}rNB2cc>IeHbrl;eZt4nYM;Q4lXIjT?6&TNea zF9B2-MU9eD3aGmDOILH=jH-cUWtBzb^h+zS?AJRwO1Ytd{5IU#>3ks^EPMU)wOxwP z?B*^e9sMwB1KgK`9gFQmQS`c;G;U}>GN`oqeNt|VFab1tEob?ID98-w-J0xl+*Su1 zQ`2IqAq(wyN@b(OC!1p6SP!pt-}w8>e40*G<(L<$(%@`GTG~4_1>I|oTdN);&G_N1 zE~cM^QvqRpQ8qSH+vdS<@dMYQ{ApH{BE zS(*lx!_#jDN^9I8!e?d01z0T98tYA_6qyxA0oP$5CaS+)4G_0wjEI z*qdCd5?2D$6{yOxn`@6aktlZx58ZKS-+n(hwUP}gEN5xwkw<6^ysoy<-Nw3zi-}x1 z+4=!cSv~(qt{lt+)}K*(e!(+T`R1>rzTpO#a-4pguN#RDw+PxaAnuI>ZW+C9}e2fe$E^EcgjjVnt4N8RY9@co(=X!cQM-`{Vu z@%(k^pdK;axnby2_1$PXqH_H zUP!tb23+?R@wDwJpn`Ww_hu`{wdgJ@kxZ&|9nYCZVfXrIY0s3l{1}wR(w< z?hjG$d$jt;AKUjrfZ7QSvc7!}0S$cOJUT>xN@Da=7ozkJSOUivxf1m4UM%vnTvV?4 z994o%*-^ee%5H|kDxb}2YI==oM(I+CCHZ*D9+Qh( z08tI@N@Edlj$)MWf7o^l(MiU7wKRD7;!Lolk2JRh2BQ5yu?#S}ZH+YfJ5zq$u^EBr zyiJ9xhOU}{AJ;j9nQ#;JoqlU_x$xibp*P;%j8&bq0>5bcUCTJJf7iDqEMTN~=17ph zIi5VTSdtrP5=&1gMH`&~R8y=;7^<8^$o5f?vMS6c*2~$SGC3D%7L0j4%HBl)OU6c@ zWh>Fs4HpojN<{~4fXfWwwHiN-pFw!7#rN}$&L)8R&qUiDM(&ifd5q8taBQXgO+xYm})5b8nIENFmb!Q-Y#lbk;aOc)Vm=K)g`CWE=Hd;{)f03$8 zC7SZK3o`WuXQ0+tX=!_mqBa?#^FJFeT}aM>c&vFpjHQ}Mz)?q+(gV_=D>y+=@#6{Z z1(qCr^_{-%Xv#aHU+@Uk!r)i6V^L;ACiDmwsJ$OwwHPwPvLD3VjQy^QRKA*TvrL3J z!-uwn6S>difMa?XE6>xi08QqGk;AS#V*w2t9M)--MQ3Yb;y$|a3mfpO(#(!{y(<7v zwb%0N6>TsRczpvYj$)MwD%8B)B262T0TIU*wLdmQ@p>LTeQn892CkN#sG;}E3N$;u zDpizY;=u7@s(XcYy8~(!%hRxst^&(8u3Ar?YzUx~ggWiT0hI7yix`QrzUkOj#8q}E{7CzR z;-&gOQn@4(4}Ls7xh3B%(22>>NoL-E2DcNu{KMA$jR|N)HGG-g)t_u27vfml~*=~vB!RnwwRc@O8G}!F;Y!J%9fepaF*E zquVT~HAb|f%u2i!0V>V+Zr;9_W&)_T#wc>fMYR7oT9Nvl7o0$|VA~$G<)zSRysS{T zFB*OFgt1g5{5!4(fl5c}qCLBsWx=ogVdin#Fq|RS^^5fVUsT~M10q<%@$O2`sF44- zVPRjyramY9{bZIi_~_T9X%1*7(6q{bxsf4mk7<{szYDAkD`0e7e4&q4#=&H8Sa zY3QLnn1w9G3eQMLH~58q7rqj&}3iB#v^nKOQPPFJ+3^~nHGskpk`a>=83;D)UG zbS2lS02(;BZeD=g2%suS5XZw)Z;VW;5rFHK2v$qo5(TJ{5*4)1 zHvl5=zAqUv`+-itq5Wclp+zuDI63ju6?@)eu;eeSPCs+g4pcZLgz=-oHh^kxdc4id zlLSOev8y}zm)Gc#45ESSSg^u2JI)i$uihi>dz@bUBC%-#-vexwiU z!`fdeUm4#66~qH=#t+HK3V}-XXMu^It`kHUHhZEJmzfQSQ4;qe+Oq)A(CHi7Sek4= zS&^mUsMs==eWx{&y}mMtOGTv5%`hMw)Qd#t^;Chk8r9RD+3jNnV*#QJxAa;lmWM4F%#fe&p$tw z{>}o#d{HWA8zBXj!^zP-&g1Beq=kM}wt9rlZJzbxN7p<@BfO6CDDD(lNylgsBd(0AYsV$c*e4Gz?VvQ?QhWj!h zI>wI8ReTl!r#H?oQ$8!-Jpz7YgXQm2rq2Lkv^ymPtb!@P*iUacoV)k|a_NXN-Jvc& z4T!V;?B$%l-|ERae5r5E90G9N-!I3ww~B%$Jz_xS%isTRLMr1x(Se)LKdkT8(5j>1`5lgW#3GuWF0vQ{zpg7AZuA|16=4Hx(RwT$ z)ta(`T^YI)W)NpBR8ctSe;53kl!JRcT{QspJfAmtMGoR&N!w4CTr?4y;jqDnuiGXs z)B)-jou_+X1ZswLsdZ|_G@yCm-YhjTT-gAYTpB0U;|xM%CFzck2DDQ@nrd;~Cm{mf zc0z41CPx?i_$m5kZgOZon~NTim{TY^eR*rq-s3$pmUx4q)2O~YbQ-5eY55oCgab!9 z(SCxfjZUe~d8J_w#8KY`D?KeDckm(J`ximq+K)qYoGf2Zc6l@zROtRMik+@4KqzKg zUYxBBpzzy%AI-hd8cM#UELPnY}_MA5FH=!^m)-@4u!Z|NJ#ofvTkz-XDo#Y^*`f%vQ#<0< zL?nV=zjepTI06YYJ6Be#JY9vNlajlh<2MyhgnP49lGefW;hbOmkKfB|fFln`S(i?r zS?q2}5u(JhK(k$J!sYu~0wDI;7uvnwVBh2X!i%3zF1J9O_u)qE%|4(x)HApt-4ki{ z9#T*~R(%F6JLXDi8QG};sur&~=;nuVpvYGIo`M$SQkhx9 zv6~eSh?k(fepF5vG{1zr+!TrDec4Q$45L%N7 z=u<5}9%tBq-%#L0)3AFnAj*E@_Um8t!IJw!X>^klJW;UfGP#UrLoiv`&<8t-&0f$y zoOx^0>CH8$N9-5xQck48(;I8^x)UO80rP@We)#WVek+9tUEA`y^WIMaV$C9~78^k) zH0{vWDaVHv!1c{OICpFQ$PB`3-+Wn6*%bm@+hvz=Id5b+%*@bVGmLT}omg{WU;<46 z?Muw;BROD+6Lp+r;+>Ht)3NN>{LSdj(G?fl(d1tR@dk?fh+DnJAzo|cYoX?aR={)zTTHDD7394qwqhaIcJ0JW~l zcRltQ^@yS*A8I=bqT>TE?_&Y`AZxri?&F}cJ4DCw6;g;g8%#iDu!Q1UEkXdq4=b}b zxVQ<>GwI89Ve89g5MKT5yyUuc@WVfBDkIHOQ~-|u>*`y}g^A!dD0N|7LAoq(w3kYw zq}Jbniu9A!?kfoa;->lwdId+oFKI!t@pB=R=fKG;ZybYjz>^r1szvw2EWXww;Hv7k-@TegTSCUjtd<1 zdta2#3AjPx9B$Fb1$iOFZ9aLzd>>2!UWWfZ*)m@ZRNm|g6u@m-IOjJL@0|wtt0k@B_HH;N2!0FBS}@7$-ln!V};MSTv-vto0wzrg^58c7qb8**k zuK&^BeYhY~_N?pi?^B3o4L@qrg<2d7o zGjuKOR*X_Xh5f4cP>(L0hZx)c=(ME_11y;Vf^g;E2(dKN4bH9d2d@6qtetoK-2n-F zqs`-kf{^0i50f(A-UY4)+vej*vInkNZ-7^N z-v&@Ft3u;v4NTGh$Tqo4gPkCY59R3W7e^EMvw6XX0^TKr-N&8WYw_sij{ zXdP0 z97hB5;D4yEn~T&wd8flJ#t5w^I!f~TFMAG@ta{epXKt0iRZ`>!wVsp!$5@?WIUa#_71{r);3tYcaGcd9Oxdg8iBSu- zFXFm?0GHm`i`rB28v&(m6xc04_uZL#?S>OKjnTEI-TS!2@16W(R1)VLUbFjZE*kZ) z>nGBoe>31R92(ZLw`(0_&j_f}-m0Mmi1K@0qQV{2AstN`0pfye;K(=pZwKtY4la!C z0dmxxcL8x~mODOv3cCaAyz=6z&nhDncYNLYc|im~y~o>LFI4r1xZXz9qaLf%0X1w1 zK0jF(0?M>v!Xr%$CqN{jD;82$O8~Jn&0btMggm)lY?|WGQ)F=R$cy!-f?)0#{b=8e zJo@(xoVE7Rzs|jK;F4Ek@=m@@01#(%XV!#r5FkPd>0p!Q0mNaU^VhC3;3J%Olf->L z_YKrurwjXCtn7eeMOp1=zoZFqwQ3hyxz9uay}oCAq)`Rs%lTygBaMdUP@UnJ@BZII z694~|PZIA>t&I=a4VA!KSfYvFxy|6hrj|OCG_L_A<%w0mY>f?Y^~wpcif>TQGroNs zYMn-1z=*W?G`t%Wiv=a?o%^?u@Ip{hoJ1UDM4{(#=E9y#{kulMRc}3z{6Ytz{zaPV54WJM zW5%$!=9T)OWY$+5zA@knh~e1h|Lz7{!?7mw^CT|XWB+{`@?qt+A#~0Y-xe)NN=@d+ zVTASf79`(z4lX>+oK*s5uts=~l7iTtTovGkFI^~6eWVI;Tm{pw`T~G()`|;peHPZB zQ_2w>$;Q<=(~;GXlRNjp!Smq<>M)67k`h{J==W9lFwn(60!O&5f~ZP zq;%OZb~*^+%GB3sZb=RSWphceiT~rd9WJ~+KNv^ZD@16Kf5fFg$xA(c!Fr87Ai_wt zT>GL)exL|mb${pQ-~`eCb%(_qOE4HNMC(yE&-6F*5JG*y!SYry<}gCyyI4Z=zCl1K z&l28mI1e3-$9<+~KTAS&eNtogb!svY#c5fsJYk;-sQq-D|BN$S&#$5SS#MoV5H@Zag5l+g}nz>W~eTq}J z-pzSaRSZhzX?Zt?)@p=ye&4q52IRxrf^&r99!!Hvf9CCly$fL-v0eq;n8+)r_vur< z5#45R9%A2bMjq;-YC#;qG5X@pE2w7NF0%Ezfo{mhOXIMXF6IInx_{=*qq*nuvi^Kd zi*-jQb#cqX<8n<<-T!`3<2_a4g+?~8H#YI#ZPa08`JUXP;=_=gGUo1CASnZ=LcKhq zQ;`mcn(Xpn{4`t@F~Z{KBk}BH;5t6H7guSb3J%yV%V2$%0FLfz(?yqu%Hw@I3huVt zK{Xq=DBb)}_$gnBmEB#YXW)Z4N|hMIbO#zNy#2)-l;ORTV$5BrLs;`PrK0yF z0hbz9cV2z&J^i-ShTGIAG){JY-=p~8cJO4zpFOkRzZc>-^M#sqyWsS|m{a6)SG_Yp zNu2t9)&%`eD^6Tip?{BcAL4iiKfeE+^$<{|!9~{}K1LANJ$jNbYKZ1u*nQ-s$m3>E zc1i0b9TF)4MDk($wFrZi#yg);Bg(c0flImntH6H-mZ0QVZe)nwM!iIp@_X+$aRE4X zJw+z-;2J>G3g@ZQJ=*{=hVG`SG@}!#`cjnH`X&M3qW8RhGIo4!)PiNQ*AIvBIh>d}qb|&S8?Q!i&Go`RXnw5@H)y+(VIA<^4BLlig;93ei*GcO2`$K1?ih48 zOD-G`$#v`ZJ7K7v6tbT5^Pgx{KJ5$1>CA^pU^$sH9Um5YLL6h8kXrBDd&oTjBcJ8b zd+Rt&SMk8Z8B`bg_DhfG0R)I+`RJr`-Q@WQ@3niR*!I;8xM9*A(@uA^nr)3I9R{ah zei%6}=_=J($-a4)~HJ2DO~oEyp<_G4#2#hw1FrZFk-Zv9Bcs1uv$TJ59dP6Z9H?9qc`PBCFQ+D~~~dlz~TV}Eu^oK%kljJBoyw2D0;12ZnOXJ956 z5GN+P?U~XHDBIWQc7EQ3>dDo6J&+PB2OR6dQZ4xhFfxooZ`^R^oi4bre42G~J7hpf zknNe}ZAY)RTD`;0=rlrhyt(o(t@oTT#5G3_sW5&cu7OCF{lJPGh=Oz!Ue+>EPYn5y^^2ueLGT#M@i! z6?cK7trj^au;&sVVa(eN>b(>@Nu6vfx;VqZ1CgsjkL&_~zGh@TxoWTaBS?R7~ zZon}PFTZo;{B?-ql&tvqHy7PSRk)57Hp!zCzUQq1C;amoP!37{JrE@(1ujK|0=0G8 zXzrBKAKy|u(ftAAw#EUbyCTF944#^opM3~%_p&_(*9*a3!%9~_DL4|B0LrJ90aqIK z0Eb82FC*=4K+2ZM1Aq5+MT4>Br_rS)q|pw(adaKlk6L^&*S2EDS;* zu1DhHMO}X_i0ip0zV&i3Ae?#c{&j2+&6aji?yCEl=P2%9gZYkJJwUuC>l61hKrdk# zK2=}r-l4G!$t;)C*bl3M6^N!b1@Xu%Se*e3>XX6IHRI76@xq(0_M~Hi*3N=lUk0=aT0QA&&^|R-DQn3P)8D{ zI+6j^`7UOv8h{dKIe#z@Rb&E3d3Peb)frAJoW0F6MFX6dV4&p7Z?LBy`R zKwMe8_!-_;Q=M>&EH&hfqO` zSTGWE=ioj*hZTKm&>PJ}GwONuFyf?7Kg3ZbiX2L>zzL5T?_GEOH(da@4>e}rdJF+! zt@V?Rnmd&;7MyV zajvC31?A_S^MgsMPQZ1XmMxY-pT%K}ZDWV&Oy~)WVE^@2VxT>LO> z%Ye=Zj0`{4SJX8h%{|nb;TY9g0xqmHGvkey13`JCpmXu7R|3G%ui7Y3k4gg~c5L7b z9fS_SI=AVk3P>!6xZzjVJzOO85jv}%a2EZt5F1DkH9RgS1uk9jhbEmjrvqx(>g#qn z3^@Epz)crQ9@?8>4I!gy8)2L{=WAJdWUDj8al4;fQ0s;4*bnQi^}Z%3L%W|(^P+wq z7)xc(n!jUn|NQ(_H=?*&f&kq24-@*TIa+|aH(KJW&LL0Q=-Cb38Ro#z4nLbXUOx_~ z^KB2-m4o_)knO`L=(Fc@82iLi8GWNcP%?M6m;TjKMo4v_^21YOK%6hi+B4bHfVf?& zv>)2A`3U3W6zHBwGzG3p%SZB7bqH_+GXw9!x)OjJK6$I-w;!4VVIh&YBDxc}o{D zTfzRH&vd6AZZMtVAn(?DeT$p#>Oo%Sl=zMYeHaDSgx`B>qX!ki+Uz5jI4?!(NOfIS zl)fPZ;>xZoEco&%9md4@Ft*vs8eMG|FTBKe<)GE+pD%EE(?PUHhf~P6#7cxAZm{z3 zjhF;f<&J?~>4r10kfCkIK?`;C1WAl{_OU%1J>3qY_-dbia~?Vx|FSx%_0UP!c{u4n z^QwI<$dj&=DU|Dqu5LZCTWy%`Flro^xiB=61G@z4smeZPLX?4#1tczSa5n}|jPfV6 z@qtV~j4b8V?n^cMu_94-TqbnD-00HbLslOsm-A5e;Ouy^b+dfc7>wJ zRYQ;ur(T-Bbi*p>DV%OnSuC;*y*li4`XZNY=npQPs%!U6t3xkhy%Ea>21e>pzDrEv z#Q0NCMoij<4l2O>@XU+r;#2<`fwG8dxq3KQ3zYQ{3#}V8&^UYVuj=}@Y9Da#=j~L& zVgdn`zjUZkI7z}iYVtx8+H!G*mb^w?A>TH7Bx^I`_Q zkY{nW^ZFG<>7b-vugm@U8rBcv{9BWBpaeLaJX9!bzt|9zRZVTeH7e17nj7}t{_)6w zkMQ9{ef@a!&1Jkh%|vT)F&&g#lhiQo@gP8Cr+b3pKT&^DcHPP|IqL;nZ^Qn(ehp}) zxygimYQ}S?zur5It#yr%kKDcT=@~9$z&RmDlOJTF4Ai>;sWm6$K}pRzD1G7qy4v(V z+xXJug(7fm$40c4hCl`JnEbsr;4upE?h+1`2)dN!c6Vjp(!7AHXYPn#}n-+-z+81j2vTBieeHrE+TkEV?Ps`3*G zEJp84VY#oFj^qu%VYDlLUqqjw`@*u*x0mcZ>Irc)SCLa!LtqYA_w4uiZ*-xaSe0XP z+siRGP*T3xE^3{O2E?9GrC&E6M=lBnTn`>punBRYF;#xZpNLx??MEb{?4oWAD5 zmRB0Wpd2!nA@&cpgG;_tk>cPk0&rC9{_%3V5a4)0r;ob0p>w-|b)Mxj_tcuY-{W#s z=zA47g;DzNFYgq%bRJOHd1z}mxI`9P9ywAT2#7fREz|I}HYnMbqt4Hiy8y>FHK_X{ z6$ywHzt-a3{CR+=Gd)(8_mm;7b{lU+treO(VfAf?RSBY?Y|^j1secx-V@%4F&|SP1 zxZXWK&jsFuD*{%x>5T2IBT~STt+(LL3n3pybK2sNqrDIEkt!~?UF-%IYWD_&w^m|XSD6!Vov*LteLHy{ zT#CZ~b&j4wHOokzJwLt;#))A7Nb&vNq3O2t9~pei}3XX^TeI zF|8{8Sq&d4MHV&2&0MvQa=W&fIO zjPL68fSBZUOQq2>*|3UFYVCnXd?2oaxkZ27b@2S}d0*O}Zds#UOmN)!eYPPCTnLwY zH8KU^dW3N%>jQ3iK|L|L(XxDMy*VgZ7GqEMwo(AG3qzm&u|<2DqZ9eBIk1?Y{=cU+ zT>gCQcaz@#cn=FN{qHwj6>_Ksw6Hi$>PRbilSwZvhv%bN4;(N$R{Eik&*7W{mCD$Q z5rnTPuNQzLY%MA7F-F%c z#vudytP7UF^)+gk6#PUZtH{)JHGZ@lG7RWE>S`24$`VdfDvqA(ff3o}=?i@;KuH+= zKowMe2&j{qQgHN=0igIsE7{m5Flvluy~()Ti_YgTZr7uZI*aRo=*zE8CFIHg%GUX_ z{)9b>>#Xe9^=*eWc$Q1lJDfU>IEviN^_%YwK-}OT6}sy~lzm`*;m0vDs`aqcFReJ~ zUQiBCofX52=TD1 z;cVt4yUC3M$1n@NnjO#%9QPZoBZ+z+xQeAdpc!#03zXzv zvcHzj4+2y^ub)<)A_{S($LaNzA}}(%)x2ZT!vM5maaG&Ta+w5B_H|tK#?rtOuQGf1 z;h+c14;$)pq8KGW!J5}FMn^Xjst|dNQEyoi8wQe8&`7I39y6d3M z{+|=kz}4mIii!+&10oUXk7(7Sd*ZM82mXdlI04s^bMDe*!CXGVh)ru+?~a55NAz$o zUzP{`f)5KYT-86#f|7H2(Xq$hHv-Chx8(KoF*FvE)xUFVWmSRWvBdA6PzVClQg!WO zOGF4C;a@B3hp*+MD%CH^mP!vmF0_g_j`v3)1Ky!;AFTLkAH=m6|J+dLhw9R+F=1-E zP!Blj{FU!kr$O)Hl%%fY`NvTwGlC5s%qPRu1{=&vOjT1r+4GBoz0+@upbQ2IzZ4n$ ze1tvJzxk^QUA?h($sIe)!=dZ2Jdq9Svj+|wnlRSs$pN3^T?r*xMBsKsf`UL8Fd zPPmf5*5eqj3&$!#-M#`=ETL z&y-xKFfxp>|HtCDBsAN$L$$MY?E;|eZ;(`b=3@+qdTg7=Dv1Ob3q5Fc*ynd}<-@ZT zBX%veXaHXURtMPm`mUzjF^*f|B^e}@4XTK)K@?C2Cj!A z=|01T{>0zByM11u5ypvkNzg1Kgi!Ae4+Up`7Se?{7KN~_(Reu^_TzK&F4>_DArC8c z71R~-IsC;k*NCg<&}`ep=bg&&Re`vtQnZg6X@P*UZt9;D=c4Ro=6%zW%h3Aq_Wu0W zv&s~dkzV)LPs<@?9b;dW>RDKKZ0LPPk0%YS%8&5IPTvJa5Jwi&)pTF#3n(-1$<$Sv z03fQ=Ble}aYX^(*?D85fe?EsNGG1Zv^NuEpP_wvlTNQU2{6_Josjx<;GXy zkB3e?S}}u0-6Q#dv4nxfl2HLt$rg~o&E#0a)Vq&h$FXK-4tDZ0hC`oPVJ9(K`YSR5xo6gp$c%FVg_eV z`$N}aeQ_Q~FLL|AgiTS{%BR1+Na(yChvoiHQ~RiHuo>` z^q87&^#;A`(J!%p^$R_h7aKm-#1ZsZ2g>qg+sFE4)4`?FFL3Dk6Mx`_mf`|07fS(G zv(jj)|4LD+% zzPpj!T|iw68cMGz#)6Wjc~q*dz8*M&J1M8<;RoQF*|!4I0>%NQYl*LvsI&xS!|`OL zZY$^)tih0XESTL4962y^zdzFkP^W*;)$Xk>;KJ`7ln1rukAEc*g*HU#nuO zgbRT3%h{#RyB5J3VUK5DO{E3}f+r*Bg?Hu-)XAKiMe~m=6NfnV-Q8~&rJMp(I{y98 zg3Y;rXj>fw?Al|%g@Vn?J6>W0sAB(3!|MH7fI20gEy?Z!gw=8SqKyuY07qT%Y^Pj_ z44{q!L2t7DK&>$r<&3TDM{D3HmOhiYW>7(#G?AC~d8s0BU#-8D9zmbpV62_Qo%=IT z4_51+$h(ftHLUKm(wdv-4g{;^_ULU~54FaaQa^R>tDyODmw#`ZeF zgM6eR>gcXueL&Chlvd4;LiJ>?3SnD}6hj=5Bqh2q>^Ueovg8+Qd#r$?{Rp=mQ$Gh> z*W%H|{Vf#W?wamw|8pKZG5U#@)+avDfqQU0$Szu10MPIxS$g+`HlU1Fbw620CqBY^ zQYurv&)t1-&hGpsDF~y+D6KmVRW5_B!+FpB_b+3kbCmVbQ>icq^)A=NYX8X#s*s^a ziTTmjHXIOdUR}QJ+^hQvMJ@02m7c)82p?Hu>^?WnV0YIggL`0POizNx1{} zR%DbQrMpj$^jA|*HkmPhDtlW3VkT_rG*d1E#8E5oI6VfZ8%DH~Q&WmN1RO!CeO@*vZLLvaE}Je z0cQsHJXJ4h1!arvtBbn9_d!WHtg*qQ9j!yFiMYzjS}9O+_FcDIDGu|)YlUwbzNkbM zWYMdmV+!Gl`QLLLtnb^#jesZfhV8k<&(IZ`@_qh_#S4RhBba`yzlPqG!#i6|?n)V> znx!{I9S(HTg6#FBznhBYo~TM*w#Te(QU*BUiHlM%Z*Bw6KEKS~5 zHQR_gM?@mezR;2{yI!KWTx(GU&AE5z$!~^bH%vuA9AoTjU*2uBA4sEbT?xn08Oi?p z_o~1ZxOc!=S9-s<2BQ7fzwxw$MqM|!G`(CKP_bPFMwWNy^uhXLA%IF>DkSH!Q3ZJ! zM~qn`XpO3NQ~vsuj(`if?{#|aopy+09Xg!RH~kPe?#Zd6Z`IMdmrq+=u-s({%66UR zmqzbgK*>4Qt{Q$9&T@QEA;#hTDKy*MGe<7eUWx|g?Gs)}!`TAh!V+FN81WG5iRZgg z+D9D;pd{djisPKnYSu)DlD7+^xQ5Y1BZ{86;KJUD{VozgPiw#_bwBeuv_<~c9TxNM z3i{C*?sercXQupVojJCmp1l7CL-yDA_gR3F+l+#p=6>nGmadr^ zTvf~G@B-XLY~ej8K;20eYx3R;LmWr#Os?<=58y~H;gUupA-?MRoNdlGi*UxCOs zJt3eZpILt@yGRcZb^5Ydz(F+XW}U((6$G?$ZOxJoQvbnS2A*}r`S8S;5oDk=_AMB| z0O73ehziQSYVf3tg>GLabq0?6POR_v-_JefNXazmY1I}%^W*$5KJ!b-9LB<# zl+Ik}6a{E_3UmI;Mb$k{Sbus)mH>=1b^UMK(wb;cc1hFDom<-vi1}_$hOg=%D2D`V zl;w(`N?7{^YTAc7Pf)fJ%Ny0t>w+@<^Wd?UKT(E~JI)vLE~W!V{1g4}V;YPaBbxlV zBlN`*T#W_@0J1oP0LgSNs56g|Xp5-EEh6uwwY| zN&S571)`9F#ba+1PlWw|=PPbB<&BmAS7Yt+eKno{h$Q$pROwYUpx%-XDYcJKK7vl+ zxY&8bvGMS_8Ee!%Z5Lu0p2FSyIJ`kSLJ_m-e8pys{fy`Lh0 zXMI?hZ1^QLKm}fxwFJG9@zx*dZemhE_xl^rvJZ^sj_c1tUd}QjAVl>|c z&+wycyLF%$JR4Vx`KzE$0 >QTyq&=saufZ|G7_cYrv`zO-WZ%Qg_lb11|0_0U)f z=PM^(yAPf?sY|K9r*I#{@ub7J9kYrM$8|5-F7VwRxK@c4`ufXgw*97IdUu~ee`1W< zEvlnLeTZW{$x;ha3IoJ35G>1|MR9{xUrKE5B95%{-&0ga_JH#9_dT*DE=GX97%Ek* zH3EdUpX@KZH#^Pe@FD7v2)C4QP|}|01l*3W0*)f*bxt*BBcSq#0~W@b5cl8vV#MvU zI;Ox4UNR9T3Auqw^S*YKLoFe|k)0G5JbH<`;Cp6u@txvmP|`X&ZrW%`gR)Vnc5x;X zRhO`1&(BL$Oi;Gxw&i!~!5NA3y31S3R2~A?*CJN=>l%uyYKyrNepmoJo5fAkJJ!*W z%XoBj<$N}vp}GKkZx4(Nt2&*s{Lvk#1WsC!bNtq3xWZz?_Ms_96$ zaPz2XQLz+wQkDgK^>~J&3}(eLADJ?IgtO#1yEU|(fa^Bs6jgTs4x>8C&nw=K<~MYH zfMr1-KpZu2z~a!{s<5ODQr5Dbf(vh9f_ux9IiR+cW&wpN$$(nFo>7??gSq3pjP>|W zKeX=DKo{zee+($8dc(K96)O1%Cw;EgCVhi?ViYgMzWI02$T+P_XLn_zIrNKb?3O>4 z0CD-ELaxg_N5C`l7UMRFssdaU#bo432vVLbIYhUP5&&-a-S`=&WfBm_SV4Ss`-&GJ z7RT%RzcFJ_venWSKGqEZ#9}x;Gf7qP`9COv4+L1-R0+BLuRAQVL!Vay3+>9m1@e98 zHyJ^u;b&t867OLj;=}lp#@d--$V6D+cW;=W4a%A?1{b~=r~w*Oo=klFcN~-?gD3t$ zFYEv@Gbm0k=U!uScYJxP(2e#CVcwhR?4wW-jMk1_%zNDkabNWBx*I%<22>O9_u;A9 z<$xlp71J%YmGBWp*>(29=PhA?2nw$q_4O-2Sz2kb%x`%RaO^iP*ZkOylr^8-G&U{? z1SQ*9U2SNuCMcV!E?$)Z(9w9OsIG`?2lNfrGC&>Bx7LNYj;QR3SEEi4$Dmm|=l>7@ zu0801yJx2da0GevvDb%DUC6qh$|T>SHKrdQ+wtzyC@5*>`3o1zf2beKpEzFG3Zp_)2Uqe2MaPYGmz^B%&({>C)PybhlKg;`s@xJhX@a8rZ=cNt7gjfEe91WCY8<@Y z;(jOtt-btwVm#^)LW1#0my(U(LK<{i>zhyvF0DBeGh8=Rd4ifwvA|3#D7#PZD~L;L z2gEMdFx0vM{fRMiGrYfVM4rT;(dE|T!Qk0%y4OhJGFmZ4)Ij&iRBv$UKbrA{yVn>H z%_jSXh@TuFm-(ZshI(NRI4gKrmw*^r>Fl?LuT5)8K*Y-vMqz4{3h6C`rm_t0kJ-q{eAo`9MGNo z=(hHpKyVpex=6P}8O~&kZ0vR70Udc(ZccvLTelqI+O|j?`tc7|1*2W8KfHcN6mSd` zSaYAsbM}wz%{tE62BUw*^(Ee=SH442IbJzT7`3K z=?KNRe;dq4Bcs{5~FFj^U>U=M5K!F?(HI-p!}+@ zcgaa3+oV}xQEzIG+ z``%*d%f6BP6#v~}z0P|x(wp$V?y#C{hK-i~g?Zv^8S{yYw$tFv?6E?^m1%A z`g8;Dtd4s2Q`aB3THnIh^-4~F1`ZeH*lVM1Z~5=96hro))40{|(+9-`x{!}?zAr(b zYi@p?hF_l?(*v$xqwBg|w_%(Zy<=H?*GU*B-oAra-S7hu&duC{Qc4g%`v`g@oOV59Ai-znhO-B-W@fSdydxl?0OhGSV1+!KS*1Qt% z9DHKq`6dGDM~A>=NcoZSi*`03 z;>j-d`U&80e8c4xdFg1S8R0$g$4~l#lK$y}=`S&K>dv{0QJW!HG z4$3aMqzGKA*A35VZaZ)+&uHBPvFNp8pxxQE9m#>9Bwpmni3x-PYF3X})D()&JZ|P5 zshPR|BVdtTFRKoqF7HhEwxCHl3Np|#I&EU-$pB&pTd!Uj3u}Z8omWU?TtVH+vn{EA zg+5cmS>`Tpf2RjQT&akyEltk}#?tuh*ynLM*qhiu3cfS=y$i~xw=D0Wr4OJk`urc) z+|Y_uxJA8sV}m@|T^@cbzCssZwB0d@8k2CZg7uTnr4K3Vfy=ioS9o3&)XB8cMe(&N zoxly!&d&=r5#}R&Fswu+WbXg>SVtUEWW>>`P~yr&KPA#ZneUgrV;-6jM!r`wy{oMr zID+G2$379XV(&AxxAlrc&2VDHgj_47AC$cKT;E+MH2DZi4qg}>)1v|$SLXrt<{%n1 zuPAtP^U7_Y?8RMo7p%8 z-GQ26WY@<%NB_J5m)6CPpT{48x?uFXO9nzU3n8vwCHTRwNthAde8NW1au!vo_)XH; zMP8^2GTuJ4{(2s=V?*J*8@fhl4m6@SHl%R@Jlp99;=g%AXW<;R{EfSY(A>$AulH10 zpq(q}mz(yc+BT9JQF6676RVi07wIlcT|? zvCb-^8G*tu;J&c_Zdptb0GDdJY)iq9sLKabc8yESJDjNiUck9hXOyZ|9sV3Ok7Y-b@QRR^?v}h};Fvd3KMLNF05mwQZgyooj0J1WS{c(C zh4x>)k!j@8>S$1Qtan~v@rDkFVI2MTZ!lViu0(%|s1n*o?9iVMD&fw2B~ETzR<)g= z2B_@kwCJCS66EsW*vr%N(OF0N``1EZBoH{Z?dHgT&ia5@G=f=WhBBZp4KuT*8;k%E zU9=K)%g9$9JrG>8VS@_LGoSr-~7>%&1S zUDhSwu2BRxk4r)vR;R4Fvx74YE~GE-pT~s2l^J9BkKeR5@dA$FBJb9qev03OA{gnj z&Xx5Cvj4{&7T&QjjhMIrRsdtJAIbPSK>;_`;;x~ucCg|&>u!pvKml6E9`z;f4!(z- zj&;4ig(dkf{E>CFpLm}%x zaAC@>%57b!3TQacaJzzn6rcy=nKp~hp*Tv5MODddH+25O@y5Al5v9XfvU;88Qr~xam6UqSq5N zGdpw9pRl)ao`>vkzl0>jb!B~1{kR-vi*b{$BzvsU1CIGe<;|KYEAXV|_pO_$*oZP* zEB$WeOaR2W={2@j5LOyv9I1_eYMKl#EJ<4xu^M#m$6MR`UA_q7a8~Nh^U~MtK}p!u zX}n!50X+AakG;AS4Ryh3m*R`3%Ys2U(A)fK;mQg?soPn8$v&XONGChvq6eNLCBY=5 zYa4V3-ma_Nx40k(xQ5wJ^Tyx$@DVn={FWT+5JEi@T2m$`qky9vF+O!jEEZ5_4XY=s zSOvxHI4%@r24@h)kdd2>cR)SgC}iI|zCN0-#JhyQct3F{0Yp$`+K+lj0HQQW+Ds(+ zgC|9uwxHRJ091$F|%pe2SYx&8+UDFB0E#p|LxtjxO ze!4rUUV1L>p|hIJse15iSC;irGeIZkY0^r~K2HJQ$|Gf07BJCX=@8YlZ+U@~yn%!} zEv4y@VQ8(hyq~rU#8nm)hdK+vSg<5*XHxP(gf5nK?MQ7#8HhET_P%~u2ytx76|=UA z>VW9)K0C&2f_xZzrFNT`8tgHg=~2)k&<|%iR!%Hlx-roc#xmTI7u9Gl2QIwpeNJmO z&jL5FLHuiZc{^}jCrc;I4Wob~JiDsEsVoN6AJ&@qEXn|stfM|5W9U1J7~S_n%hG+# z!0}!j*=?e{5#o4CL-TCDY68a?cu}XoMOUfrpd||x33O2QMr3V%UlRzZ$K}~W|ChjF z+|LPr-Z!GUe9NxsK7B9*lm+1qW6x`}AVc#i6YHf8)qqHMzgymuZ3JcW?!^KW}vUVNmwm(YYDYqymWi%#~DIgiz0n^Yu#%KseFwKIa=_5R{ZvS2vyCnGG38SiJoO zA2eGAAuVRZNmR2|3xoNm?>K>yv1VCYd7(6*YF~!<8YLq@^eZ(tsDXem?wQZu1u9_< zSne)gGcRiaz7nH;6#bL*J_!&{@~@-baYH~%mCHJ@Gw5tByVa*1t*QbUXpzqTUYQ2~ zaqP1LY#&+zYN(`awEP50jHkQttam2baee2{Tb*-9XHUs-Yt?cWCy1;6_41D1>1jZu z>u*jbX>kF?-&=TwJs(Dm^Nj0O?`nWug%e(S6nd2H0VVZw0cBbq&T@<}Yu`|5X#`x0 zaw7ZE9W=7~e`lukyFGzpv5G6w4Lkr5pQY64_uT@N|8mFvnx&8(tI;Yf>C|-sE<-uk zZPnHiKxJB9vKil^`3PftdtzcAu?{$LNp5hhSU+&24IiFGoJMtFl!UvlTlo~Y;qWwz z`zuj)>e`s>!f$YAhLP&3MAO-@-*L(^fBAJ5;t)qDUz&6v!VM7fj;yNm^Fcu0tah}# zxRVZuG&Ux#GxyJ`nGN@TQMW)PFz#Cw3`f| zVcGVM@6;9r@-yN6zY1R1Ee`>d=bNP+Fa`C&+c!!7ytR9-B9)`BEA(bzgw>pzdz;Mc zAdc+WIH0;o571E1lfmza8v$iLov%YyXofhdWo*Tc2z0&fipLqAiKwoOkU{yd^yi=? zbxktH14jV;7?JNGr_urCrvJhUq@*>T3&m0IKUeFgg2rx)n-XAy>9FMb2pL7erj``4ej?>=$uSlylL zOkuW^;u77dEs=nFovz9HZ$X|zW2;;h!kd93#aQuBY%m2soPHV($Yp>41g;_v^JTfG)?FW$O+OxWjpY@$!G` zXvjhwR_(l5W4F&V#4)iwQ%__>0TF0Q#uf|Ve8QPlE8;|`XntH9kHVMe7pyp0DQW)m zxlgA$^FOspPJ$=a{P@N?tH-E!SwWx5>Ca~P88GT>%#xA749G`{`XG^JfzEEdiUodu6=NjON^HNA%R!(R& z=^?jgQi4&x5IJ43YDf2hCrQaT;57@Xi_z-v$l7KP@a*1%f4`nn4NBJGi{k4;9|EEq zJ34m8eF0_Pj1aniY^ttUN035G9Vaes{e(>y#m#^p!3k1Y-JiqI(Gbk~9_jwJ6 z=PJOF8xNfKQ@#$U=b8TBQuKXWoMM0Z!*xA5K8FuKdPgzO-3Cg6NL=Y{0b}3>K8PKb z{}lqLyz>!T$#0nq~ICG|F=WWqL$*a8oU+;E?{NkLUEefny!NBK;;5b!5v}PMP#xHgKF{ zi!!%+Lmb|?`?&gzLA=4~mceA9q+d`>cW8 z_!G#Bv5bBuQ<#>J_Xjz6+w!kyyhOI|eMybw!13_>- zk0#o5mSmw-scN#>mPqC=xFjC;`}xI%UkRWj9F%;OeiHT}&c2v@=a(7U_jHRh-G;Og zzVg3!$rQhJmCXahnd&Of$buEavJCeqcwCSIPpb(aZDFVu3-1aCxBLHzc)dVwQIXcsc6DGTMMxowkOMa~QhGa( zwx7Bul|yg?j-k8oDg*tK1jdwTxO_1n8n}*Kk%~**(gE>;zpVPwvk_3+Th_dX=-25u zIfu)2?rjH-;I98W*F*~t>z%_1lv-|l_ zijQ!v$xxY{2OBub3y*M_j95UNu!EX!Yfy*8vfn;x{b&SnY4JZC7hea2Q8urXQZLVj zxFS*cJgEzwpltV>kyp=$-GR|7ozy?~D+3ovyJPDshdhbXLs!qJqP`wHy^Qri1l9;+ zlwVPOl}3lSJ1r8gGXDfZz8`82q^m!o-B{;PaHGK-T(IHQzW%=#7(g8DN`}ASYzZK0 z2#F??eIHQE=drT;w_&Amp4i#gq9?GL*bq_q;z@aAskw7m3zMS;fG0zj_$3>#;Xvr%V{g&9{X({FRK9&l*nwP-g#V zd%ICv3zU7jL&wMVLp^bll#SJp(ll_4!HC4p?da~Z@!HE1ZNj49V&*&gAam|cu%_Xc z_?hQWGd%9}Wo@FZ5hxikl%MhF|BkVtvkM~)Ji>t+c6B;5w&N7!8!!`enKmK-$J|Wr zy0Z?gSeJ0*`Hs7Rz%_Koy}f}>DSY_aPC;q(WO#fy?{sAFGjxAP*`GHMm}3nYns+_S z*jR=7lO?&f8WZLMR~%(@!_gh}b+@SHoonlJfg{~puuoPg8nRP#SOqsUP|uU6L)8p3 z%Yb7))BaU5pa+OpWD$9O?q6(aTR2-!{N4jxSKH9as=Lq=I3bx6SuDRCII{MX>D;&V zF>ae+zv*r1CF&#D7I_@u18qytF)enjS0x5 zW1%YTI=W703fk37i3lL><_VG@(;g7fK&b7B)F`0#CpQ8N#n7(mG#=Z2{-g_V)OSUc zZJ%lZrMwC=3R5aUoIh=7br_m0ePEYt^e5<6ygkOB$Xcb!L8tlwfl&V&tD=8+<;tm4apa+ z17*v4LX8Ha`CcMX;*aE%TlgO#hENEUafw`ovQ+U5F=n zTnsdtkmMsgPKEl<_kju^Iu=y0r|lM?jx)u}^uq{%nD>MZy;&g7N7&FnQAW0h5g^(! z6QLymupU^?F`0lgkr9Y%SZYI8dlU!=-?EDI*#q@HYgKM(;}uvdY}kL#OU1>Cpd@O4 zs91gi`V{Ngdak@C7WG^CVVzqdd(%P5P4_=Hd~6;d^4TMWeG4P`=)Z4$S4`UBo`84( z=N?BG4gz9+t9W6d3Uk1VT%T|y=b=&e-+U60wp##{RHgBfe`GZ3v>d^wvsEg`*Z4V>>Rs1a@G|v5wfb-?5 z+Jpi0#(&Qpj-ORfhyKPGYo03~dvF)xsxp@6RH>jUb)8soI_yd^aJ-j={o`lQ+_~G| zU#YMO0j^nQ#TCt?-F$>`>Do7fNe=<>7*?A8*9<|)`C3btDY<}9$O{*C1)YyDuFFx^n&w+g`?F1ar-tGEh>oPvVyGgHVPItiE@z?|Rx@vt0pscR7?>tqg z2TH;>+rjltNx=2@D62S2L%-m(cP^6l_Nanw>r)cj$Iy(Zejl6*m(67t)ZQUz;|nfB zQrUy`=oxTW4{utGQP~b0-F)CiszfJbCuY2Vyov^WhHdsxt=JgPV_xCb(YubteN9SDG z_`v|Z0_fXL*DrKHHS6#d6X{jTf(-33uNp{yp(F9uzq&8p?ePE?R&;%hPLw5}iY4yl zkDi18;tdAtIq!qD#lOG$e|&v;JXGKRKPt%<64E9~QY2bLx!P5dHVIjZQXwf)skD$# zA)-=ADqFH|;o7pVV;jpbyD=-Gi1h3C@jAZ$z5jeZp3m2EUgverJu`FX-U9*OIWgdq zsj7bP`Gs?UIv+d^^txjTcGX>XhWRt!EifOw*sENER!3Xn-*>wlQO#I`j~i5Lb-_!S z_odKRH__ZyPMqmzJQpCx!>gPZv-^Zm9*&9Zs;C7FJAMk$2`akPrRdE?)n|olOcOrypFE} zcJ!EDvdl`X=|%30r3xQ<2?fA>}9mM$_VNl7A6N*{Xw z)j7DzeEJJYtdnQ+p(b4Vm*Ts3WQGx_|$D-wW}`5~fnG7NfP& z`t}TgSB>VK`)JnFci~J>@=2pj7KfVv#R+%Z*scpz!uq#g*}7x|%^2OVJMi{bw4Zg9 z2<)x8oFOwt{LtNnjd#Ecaa;fC6=Q?I@%QwZN%N)vu`>n>6AoAcs(NDP*S;wi?A|9t zv)8OdmG8Z4=t61t24&A0`i<4?N`Po5MlQd-hjx_0RcC?-+4jJZhL)4p1j6GsL@_~e z#4EED_5V0w;oRC7;h;6UAq)24wH+t=v;nam%p0~RB?F2#_q&~X2h~Sl(kNn5A`Nk4 zv|l|cTMQiDBY5@q;{eKu@%F5r#4Axyb~b7^6cxmSPx^M--e1;mBEU+QD*C&j&l-5b zEfOyzMhKLh9YV{u*Ubi0=t>o(;V^R;QAw`HU;$JTqlwk49raZPW&2|3IH@q=G{U-u z3S*B)m;)-_u+pgDlRGF`p5s&J%gzADR^J>~u|ypZ-E=qe!!WEvjNU6$Du&)iiZc#9 z{kBJ~0hBbgjbEiD(!poZZLQ34bgvywTzb2oHFH-Fzn^`~V&={W-tdd|yBz`GWneEe zDeotY9pe#o^=OeOGm`o3?&?Qqv`u{G;m!A4AYR+Pby7drT=3F&%XfHK#~V0;^r%&Z z-8w+5*&?*YbEv@`yr2|>8REe`NJR1+&DVTVPBW5lH*4egOZ5{R>&Ek9hbSoO5@ia1K>FRezZ#T zyER6~r^Zz+&^IDqpSQ{HeqanfNpXJGZ~f5NYl9a*({6w<;Ixjr?fqL}v{=J3nTFPx z{~a-MZGIl@LuY>el9vq+4P_vD!&s5peDqWTjPG>aUa$alYeuBT!rldBP*Nvr8?S5( zhFqvg$J0~QV9&$oO2)1}XO{s-tFsI^f71i(X#H2DH2=bWk8yP}V}AF$0oUdsaVq~n zIUt@QLHf0WK6oJ(N;tjggt6nb=bauFp3wm%fs)7|Oh$n+pEGss8G4!%&LB$|rYxMf zPPiD$HMzhTFml=U@x_Yh?8npBXr&N=W096v9u4E4k+Kg5L^JcbB3Bh~Y*RWI5P zxmJo*Yd0%FE)`Ri zab0ib{sF-*X@`ZXIH}<)q)9BiIRHNk&Y~H@R_CI zvedp*1`xY8eu2p)g!u8zAzBXkFuv+n4kB07oB?H?bZm9~47uPP+OiMUH$aszl9s)G zsjLt9WTw#PjGL7Lsz_eyCiNVRfge_#l=%e3Ba7c?3!P&M5xDEep0}vOPK%QVR^Q2< zCj?%o9xoLZD98aK&+cMe3#|jY@_;$gL+Fkcj64`voH9Ri|M*M_4c^)T)!c5R;Ngb<4ISFVzRP)c3O1^>7Vh!sBqf>V^z>c-q z`$4E&1?2f%+^i;I8xgn`r-w;F3IV{;X65MKu-FD%YI9uIjt?<_c*Nav9XwE%(;m$K zuxNV~*tH4Co8_Xcy^ zpt3S|Uuk(%Pv(zJIo?lEo*kC+JUUE6Kq>egbJ1|-my52C!Gyn(#@_!UMX@GNLWMNecJoxuKB>w2D@3VrYPp?Rui4-~;pBwPMPuPdB-yo{E&?x%>u)<& zYxV%*kGv(-qJPa`pLnldC(ME_!nwg2uf5e%z$dj~zuv9o#$d;)ROlKSe+o$8UNise zx}Bixoh@xmtqun69rKvM-jk3S-Z=N){Uf8$i&+2MbPd<7nP5jQRraIibb(#kpRWD0 zD$%U+FI$={xDfyxqv}`H5esFoqtz*LpWe*{j=z2F!SC)?z%j)xIryPBci}NFB98yP z=?fg^*n;+OZF4}3#cn}bOsF;1c<-uo$N2PwOJnTf`Hy_7JwPcK%xg0;tD8nRuPRk| z^E|X$(RZ&kxE6T_IDwq}tyxQm$nJUh^}kbtfCg*>!aUJi;IIyr>QL4$ecM5UrUWkt^RL?cx#Fa(8jWJoRaW(d~Ui_T)4H$2uN=BU>7> z#%rED<%pWV9AV{?30r>rfePZxZ)LCNAM*k)Bvy*hsyv8}@fW1Ic-o?lOzXQJcP_>p zBJ{6P*u7VPcJX$v@x?I%<-k!M<%EA!)dioFqF?jPJ?#Mzhiz)E^40+=7ESZ}zh|iS z+xVXn?1x#wyNmiyMe|X02Y$9j+qooy9b+`qOq>Cgz!(>{2VK~MMmu0T-m>{>>$DQj zyZ86votG-d5&N;uQzogMIhb)s%M-0=rTdbx)07C|+mm zB8i-xW5A_+(2^yrEQWZzqdI5Dtsov=-nr+fIbs;ag{GLO{uNOVZK03w8PT8`tTs zr905ryPiL{e|jC(CeCWRonf*Saij(7gSMxj%-RAKZDPZhfX_Y({#QZ58BnuLO6sGP zF@UZV%j-FHQ-j%E$}t=KMQ1!-gS3Uc)e(~hMj#oIOz6)=c0j^DE#i5@k&{c+Ky;wax1$J7z zMCI_*SRxub>0@|EvyLf5Pj!#;&M!r?LbFP^k+5nR_^fj4`YK5`2E;maUZye+T>}_C zB5vY32f$0)gA);Ln^QqatMj0KN&ugDhjp}zXB~_k=SZIt|LBVPg=L#e zT_9oxW5;;`y=tZP$V=Pn>(}pzsX@HB^74R~4^Hg0P=ubxTg(1P;StH;lWG{H zc~n*glzD37pKZ}6BfMTUIZguIXNKiR)*jxKfRt2;%ETI5*x50hFjsV*{UGw0wr|kk z0PK-CTk(=?^siiqKsYG!l7yqI$WKC2*RUS2%tfmbE`*?5=&rXPMK~0Ik`%8h{Ju;H5Q9YCwtokl zZSj{?t#hqjqRuLAE1Sy-LRqta2HCF~dI6aw?y6YnL-YkN^{zygrZ4I`N}h0B{LJ&r zm?Pv_e;2~_2xC%>?8S+Y3rtmsEZVhnXs-<-6dQm+SDuXZU210b4-h<~~HFkpt&9&|; zmTa>DJ0`V!p?>cj;99iRPVS<^6%!}-e0K0Xo(mjb$16VR0-QDRj;~E$(|uyV3pL*1 z)B*KYK!TTL7HSD_V#R5f$5*XsfISbVZ<*{Wuz^*HF(jAw-y26>D08`M_*YP7tV<8P zZDU{_Fs9w2{8!nq=VAQ9y>st=%7)DP|FG7k3cmtG+1|7#?w}(e>V3TL(b?9q{0S7rKGz`|_>|P!=~meqL3J z>Ox=hv>;y})&oZQxK!FX8zBat@l|6R>g(@5u5-&Q>kcx zM6ZRJ#`Da&Q|6=Zv$56-EcbzCG}^Zx{I&i2jKPi&Fih-4cW+|t_EPKoGGVX7yS_V} zaYT28{5yTUlD;kG4tBLgyBzadkr$Su+MO0Q%qHFwrJehRq5{g+XL@TVf7T6T0C$UT@0J_Ykx?d~Non;2usnFj(pI3eTAGm1C721`LnC&ccc)0_ddTVJ)4 zBM$-^*!ky;ofYh0Sk1oV$(7>dX%1%?PMTY(2Y`~+NZbG17{-8AnyZ@&dBTdrIhmIO zeV)Ub#uHn!isGD$!Ar--ccL$>TLD%0cHbE9Gy$IjdM?(p0-}Hu{9df}Jaidw^z%zr zingK|V~NISv@E{{%KDDX>h8G5*uIJtCs$IRu0d+dN{XODk z4yd0prMuq?jh*u8$cJGim}z`~XevGHKAKJX`85yf?F_(<&Hr&DXb@%-kGo~0zyGZ< zaIK~E7pt3>Orw8q967Rkox2dAKCyhCo97YYZb>4T@7xJ?{K&GOwi}?6@um|F-!G$Y zn=!6mtl4v)+2F-*PM)S`I`SfLaG51KjK)WeE4}b=ZZ0U99DPNOC{!0?M|SM-MNi6>!wWK}lw21mM1%On91lFU0$QP!waB9xQa~ z_^)3HF>+G9nBhf#@J0_Qtnir)-tf;6p+@p&V!$`${u34TUuacQx4n(a_)!NOVOO%w ziWfvcZFNyr91GMb{X{0$umSCI#o~3d$B&UgNt!b^q;?b32j>);6mR|mXED6r^4mA= z9HvS)kd%ag5ymW=^da&Kn5$wVY20L!L8w1DuIVgLU=mx0Sp76CoSss)WX-;qm zDIX9^-^s20>P=7%Ot^WZwQdGP(;a^&A&h#1&=R>J%UTV%%69+g&`>l6_KkU$YaQUa zg!TS7Q1Ph++4YtfZSp%0dEx_8LU$IUHxXcz-#NGlDBaCMtzrQgz@BimMZM_0*tJ zE4x#M3ZN9kFBqvR>j6Z!^HxqOcnT=BYwLx7&xrxVFxK2ClFJ6v@?edc=FA;b$sgEn zzC;;MbN}A3X?^$kTjYg)Yh%{_Y#HE6Tq$Ch? zy_LyGxvph)?Zsq373sOl7zdGE;%S!f(gVmRk)MW_bA3R`lj#nZbqWDQ2s&vWxIhvR z*ZQkbOe6TjYOPnK6`qBC6mOQkV*34^&9oA0bKT*2COrxeKh;{o{1aMZ@jtB??J_7j zC1%cjo%4G^Ngi7xojh}IEqAY<#bc9TnH~ z_~7aZMU-{^hxwuzEvcaF4B~Y0HS9rIFA{z4TM`jC-iw-D1$0!w*PIpF@ehy}uBo-L z7aI`PTDNWP)V@~mLcYAa$H5ua3P#zUI_NGR2VCvfZ^~+WVRyqj-d?n@$b=cgIBr%Y z!g**N#irZ)T+LMhyYe*4y`v9w09CK!pE8*FrIWEXpvO=N^--RW_UC91O=|xJ zB-k;_r&>7^qBrRVZDUZN)_D7&BMcHH0J#2~G5u>CQ?TQ8+*0U8zt&={lR5Q{MPi`r z}%^zXPj0;t|_ zTrYMG3+(v2){bvlr;3!qvO*FwPe)J8IIzZ2JO-51&Djy>mO|FpfXBks-_Sp-vDU<* zH4*~U^8-l(CFI^-up>9k(*1Q6GQ-0BfBoh$%b6mD^xd) zQK6GDUdvvsGwHTq*LSS`;)+Q$o2;bA_ltL-E?{rbpeXq(fs*&zq3o9u9S}v^84K~N z0z|}Zm7UozV|erGv%WGx@zWg6^hMVIh%2HUH7)7*o&I)sgfOo`;tyypo z)-=|nR-q8O7S+0IG_5vz=2-!+gmhIGRu@AA-YM_ICzZ%c)f0&%$6-{7*w_KWQV&#l z5^?=^qt$Vcb)P09>uG{Mpp1LGyN?dcRH9;WP@&N^;23@@pGj+l0HO*-%|BDJZW`f9 zKIMCqWQ+k-Nq6toeVz-5Lauh*=K%G@L(_Kd`(5tq{XbF^;~m@@y35GtzrMqwe3#E4 z4?&p zZgL5?Y&i?;Xm*$98f-%QcKWkxLv>}K#7S8W?N87X9kC)MR%E#xia?3d+_5Yv1R~JI zD#v?9(20Pz->a}N=Kw?yyw&_=^KKAO*1Z#jQA@xJ-gDOzo2t+Ou1`;9^z=ql3C`?> zN}W021)~%W)l;jWE_msc`EJC(c(CIvW-0GcgcAYItkp2{*$(rMQ71%YH>PN!T%ujr z>!-#5^(4>pd^3?cjj*ow;rpt8m;=}O!d6`)&<8l;@R}Fq?lQp9KYTK43El{(m8rXW z#2Bq~8slz&_Hr`Vah$1%@^jJEhOj_Bv|6+d`3&qHNnL?@k>2DjcIzV_xSk6qeHULv z9YW2r3*1z21~_JpxOZ_f;489fVt@!!i6{OL?ARjycI?$Q5Fy88 zaglDhJ#giU9_)w-m=&x^Hd%QKZv>Q_$+Jh(-@z3c>+*jrm>4MluDf#9zB%X&fam6D z&(WCq{foct^r}sZ;A(@@Xz~57nYEft(;UvFO^E8J8iA5LR7%`` z%^SGZTa%i7Y0x2t{5mublx?P2=6_y+9sgMVEuUFv75DR&e!YD^7dVzo`sA4c zlo>yXS?ZC8*28PoZ`+g~XhgMF50*c&bq71asj=azeX)QVJCf=aI_Xa%yuoU0F`);P zI5}`n;r@Ch;L`VM5FVQ#?%3Cp=6-5I;N`p6ssOvqWKcHt&Oh8)tN|Q-`RglUIcU9? z*&R-8w2T6dwEBX^^UdC1M@UHAwcZPI!N@|)2CuDXja~wFix_>$G0tuuLj&HF}Kl#0`KjdVYIhTJs=ysr9pMm%khW%JhNEQ<~^E zdz^Q_1XFYw2IUjtF_LSsFDMzu6|WX*!H6)y;(?7{u0Sv0q{Fr$X&KRAmoB6{`)9lm z*p)h%d;XS_0mQZOU6b083`*LmYW0p-6T}V0tavii1&AD+)Ydvbc{7}kAu znQlU&3n=NcZ+QjWhJL|&{SR4>JwQECWq#S^RwWUXohv&j##wcM8X6w#UL6w!sAl2U z%vxuJxLu=%W@#x+b2#aQ^~w2i1>XOIqWHH9b4)Hvy8p)s3+L%B)s2493%;9wJI_*n z77X6{UW;z9(3Ax3>pa!NUK|zRx)o(sO)eP&Zouwhf%QgZK)ol9EqaNOLD@9EjPmoE zDIhvkD^={TBcP5hdy9>cxnNfjOIs!N#U2nrZ~IgNEfY|)O(dJVayOtBbGa=xGb_k3 z`+M^p6Er(*>emahNxq=$)ysY0)}lX+@J}Y~7p3MJ16M4&lxTjM2#C2Q_E_0r=oCy~ zxT;MpzzpmdtoEhrvit#2@W=Y{3`=B}m$`q3j0bQ$sSa%W2H44Ps&DM~g{JPH%sA-y zwbQu?5UD1b)VLSMj??1$O=ITCgO_fnoo$yTyg^yIb3x|aZZsnL!?KZ8iJO7r-R{se z5myD&U;n$hQeqOJG*h{TH8y}=oDmDTFuxcOp7kmFCfyg2Q zN0#2&6SkTPh*_Or7G}H?5M6&nF=3H8AnK|L1En3Px&xZlvV*rPfXm&ywtU4WSfhA# zXqWT#K<8-=Z+%#N<8bo`Ao|4^le=#}0bY zhV`O$CV)7NZW}w7!&$CN}AVS&xM1>4?44|5Oq+PV&F|cD*EC@Hqf|Y~yX}($XYvy#jXRcR1iBm{V;gJn@>i)yzPN{x9)st*qrk)2AsGq_2|)X)0hSG@b7=OO^^N2ISucMI&t?y z-6SZPUcV>k#xEd3S(iR>%|+-CEYw5j&B1zK;5bL_XDA;J1G~}(amo@AgTQt7q+Px` zDh6ET=wHKvC^DdoT}>?~?>2#wsq|s1V`nBHuC11)MUNUN%fE;)I%$@GD(!r(;nnV- z?C<`=t_p{~#t2!(37-~oK}lI%xkP6#%ru_;tJd^{Ae; zbLUAs&q{>|yt$K%r-i5ze5t&3N&N-jr9Zsm)7oR&pzO+C`QG|q9dM~pA1ZI`G6#Ft%WlrkbEUvFU{f(SX6_ID=5|Y4aye4c)D+M2 zhfvL^+X%{+j->R4wX1ik`3Ot(%WWgz4@z9+4UIU=$TjV zDM}!peec$K)Z;GTg{sr;x>7*_5c9!@phaJafI38Cqg0p31EPQPS?4+*PG1=FP|X74 zbHUTxzvou$KVxEuW~Ea{IpQA22RNpomi%ysDR^lz8J{SBw+^@gvWj(Pu^DizMTj!UE?EJ42RzrJdR#OP-Opac&%)~nA6s%&m@}-+=px`w=}NlEu19(&XI63Rdgpn<1vp9i-E18P;QKPIxl98iU|BJIAaHz2-znFvD(^(T3v z&sr`sRMqqwxccp@xVChp#DD*OzWU1`a2(NluA?02 zI-KIyAk=gMRf2Bj`tcAIol#jDo5GlX)FFCY(Pwx23%-D;rRD7+iU=`pj9jk&7!DEI zBGro;^kqQVa?_|t#?TlLN8&|_?uArPQrr~Yr=aJqVVT66FTxjrPpmtoPy6vQAy9Jv zZabAS3i||3J^Gg}^d0q}peSvU;t>K7TGMjl*4AAE#7sWA|LG>AEcFQuf8l|0DXnhZ zMec*KV?2JEiX|832;JXfcAv6X?ecR=(sRHoQv0B6{FhK=SRqH&OnE=(g^kIwe8f_wQWQ|8z``(`e z#DBv&BKB}2pp?nXj{M#B$V-&deRs*GX@pl>UM(_o8U#cSeHLPdp6ZKr_`lnWA%P-}kc!Hk=1x}%8#ZlZIDXVem;Il`?>Rf`c57;rj zRW%N0ivm}0GqrY1Tm{hMLjy7&uK0p7|B`r z_$@$tT{WSm!S5(k9;bB%vNF)`i8#kt9+xrx1QCeIr&s=ZhN2hWc`U8589SQB11;8;TtMnVTqAPok z*V*khIxtSGa(N+t@$Sxl}b0KIgGJ%)bWjh8X)qBUBsqK+rX|!xN|6BKn75k=Ak`SJ}{41 z|C-5#?&tP`T~hYur8-%VHO`YVpm|;%1g_+vV&xGJF+k)VJ1N=CF5r{Ey~o>I5CUAk zt!h?XF|201)lp@_NIMxgM!@BqS6rkdB)6J>){X&=DZQ|Op^f_O!@SRTg0>e!1o{DW z)(dA7P_o<_9mRA}H}F&pH#&SAh7nqc<7yt$=zf=Dt3p3-gC@gLepo zRyc!C+RF29d?tSb>U`8-y85FEpyu@#4MGk>E?8@;V!O=Ua_~v18B&iyZ&ScnHu`mb zXJP$feQUZew$${17tV&~=TBRr=-)D*Ok7Ar)#WTbzwTW%%ry3G>uR9}1AB46A$CqPJX9 z2sozcNmA($?6FuQbNR&1SYs67>H5nqGv{SeZ3zR*M%`0(<<7Ucjxy6qjOTdvlnCc3 zp!UTbKdlOa0d<^xJ&bQP2gLkHZaRBK8&Hev!JjuX<);zOD!FBN;0Wr-;=HMTtj!mc zj71|O4L{BS;=kO?a8DHhRNKAvPnLWxpo&LbB;H)8E?#Y1<3LUUFL+1&_|)bfBcNnO zY|{@~=Rb{bdTW7yrWLA0&XVq$)P+z9tdjYtwES2M*pXQ`y9lvLfcn((<@HOT5;#ru z$J}CF7Whn;pW`*J4&_4Ey|Vb)95=A5H~O)DmITxVCw!0Jw)I0C*fB@P4y~?-O5kKA zXF*yybQUhSTl&i+_9u$&y?0IWRxz;a&N$fNfX*Cv_4t;r&l^#M`c7$=^|h&BM?374 zGtXBC5M_AMe~kw^1yc#mT~CJ0+SW9o%%%o!4Xdzuo#OY49}W0V$BwkfKJ?$9n1%8SoOck~>(p#TS%$R$q4e&HRUg(&}eazhfP6UDefOhjYewdP=u_{(K4obkSEs5l%OqH3gg2%jtq`( zE`V9VSxX+gSaQG-ybPSrZuZhZ^Uj~#D14W@6LM*_Pg$|bdlHn~cQP&UcM1UIY{YiA zY(eutdSN#rPnHC(jP71y*ee8H66X=6-Y2O5VjJ`j4^7cQ$@v?YJ}e3q#LHgz^!RN> zBWkbz@<#hP)Dsuv9I1UTRUY@7jm@g?~HyX1gBD5ytPDt1NOT z7VOB6PP_iO&j!@LD_-H$s5~HUb5f@Px+flI&Qd#Bb0ZNr(xZBncba3<2FMbUq-F-ZxiYx&|Zaze|%dmqfb`N9!qt_6azw!v}vAS;+#Qr0 zt+kLRM)@AT$3mG7UZ^TNGic4ZfS5Mp2MwiA^!DB4%byP*Fa6sUm4wY7g0l0q!0krA zJw%`^Px>)e7+r1p^IV1ZS~G!rzk<9V*VGs6C@&KwwH?%f3-w6jK3-Z39IZQle#akl zHSLQnOSe2|16;fDwl%Y7KFQTx2;Zlo>JA)B_28Ms0omY_B4JoToYxD8s#-VI{W2I( zTTJGZ!wpoy2hr=vk_kfKW#FR1@w0CsYn*dDjcA??KJnhS!6VDwbHPihu-CD55ix-J z#WoGv?|%zk2#z|5jWhqn{}7gMZE2+f%5Uqtb|gx{Xt8F^xd|^%C;^u?AaY!8unD|$ z20iiY%tM*cb(~|Xu1_x+X^bv}-PQVW9PDTmr@Kduz&lWez^+ z;)nhQyhF3XFADoYwI2a59d|N<*XB6`BL6tZ)0K_~JGN7WTHVa^?3==p!Y|uz1m(MB zl=drizJLaV#CQICN+Xd;jC2`(%O>IOfwGn zf4_WhHhAHfMDPYupm*`MntOz!XP`lB{`YR;Xu|h~N$^r< z9eraW73zXBbk;xDaxs|ZaQgAM&*hQSD|b>xFV&6tVH#$3X?-JHcFL4Ks@_=?D ztmgoD=~J1#j;qn9 ziZ+`|RVJy);3ZRMftq~`8SEgV;!4LpkKUj`nw|;r7PfCfc0p;TCI0$2`HJpcLSrD z=vvO|_srO0wi_~I*0Uen%z>I?j5#Y`3Wr|;Zrez6@D3D@^3*%kcpvI1*8cb-9@Rpi?BB{$Qc_8sMmT54n&2a#JfrcRC%KH zL>{#X5bJJ!MF$14#<`#TjTSRw!Atkp$HPtwP!G2d&N#SsBfAQnsqfbFV!#V!@I=-P zWm`b$3yW>24~xMIKl01B)oN%&P0#preTCVe>}~iyF`{M<%94{*GZf*-iM+$$8B@sShK*6 zDcE@MU@w{40go#YJNX=q7_im8-4mm4pO$) zoSI7S^#;4%IUAS$UIv-r-$t!1mB>24kq5)gTrR_YfpJP!{ataf2O{(c%#_@l#Xwnd zS%J9B!yFKQ%fx*PJp(|*zt;|&4z>Y1)@SLO!8&x_x*qqm=f_GRP;yl&vp>{Bb@8Tr zL0$4F>;*XQV@0Y~7R3AaZekH1bsNYNXD?o)U-cpxyre|ChQ^|M&~T2pYg|wly3W%D zJK8P;6+kYe2p?P`8}E_X1X#y=Ch(7)}pF1ms$(P42Zd(|+iV4d8V*Ya60pyYp$ z{josF7kuW#yPxk=atHKXt8m}NMC7GhQF^Y^{1D(sVVB}26667~jC6kN3k{w|82Q%7EByiOCLYQJ1qLcX$=op>q@GarWy~ZK#uJ6rmmWHv@-}NhcVpM{2+erNG3_ ze+>3IOkg>DH%=LG{M&LwTRYWhCC=2ITCe{K?fS%#EuYq(gE3%zu_-^a?9u$?CZ*L| z(a_lWt|yGI^rMy2QC<ttxl^*6$RJUkzIzCCmA;z2a9*Dri z*A7$GqPkQH+ibAB5(QkZz%8s&RS3|xpP1)$4Knx~D9w8{_7G+Tuf5r||H85uQ1;DM z86V+0f-)yw?c+-$$Qma}#6D>F6962y;E8Nhy3KScMDdd6qhkd>{`0+rtQ}1C9VugA z-{tW{d54TWLI)N!*L+7D>zLNIobx8r99|J#$rFBV4$A)f3JMwm0+*o^;BwEfw8yiIFy63w5-HeGO+k zJSTTY&mZhscyfLv+=qa8{yXH&0uU!~^f{Pv3azegzn`AlvtV}cmc3suE5)E(s3rTK zH4$>bOWV=9`XcmSNxb>Vn~D?K@xWz9hW%DMYYd3(FnmhVL1`M{Y*E{jy56uZFsizp z%(F!@prk)BdN%$J_HDfIwMv4}JybK^qovy;Kf*}@%Z;$g(o(*aV zc2WVTYw-cm<0cxA3(ix&;dDuT7;@>K)MLIrj(Q@q@Ka}oW<`6 zN1=EhKixj|I0R5d%cKH59F31MyJyLXxWH)+r!zWA=1aW=WyYt@tuc{8!1ebJh3`28 z(Q$#@&ttQ!20_^rmG=EYYcZf0g^y}4^n3wv|E|8fW&;rr??L=qMwQYu!h5haN<$0L zXa$qK0+tP$X=>jj^|CnhC(gW`X6XKKCwL*eKg^;hq2BfUD5N?j0(oMu@>d+vN8g-c z>Fw$4bn8@zN7x<6ukJ*9Ws_|77JYNrW3jrVgHz^1kS9(#a#MWgn`nr~*-19lyDkb| zXmsAOvj?q!i=h=BGB73s;x)BaZM7~2RAF`I(#EqofH+wd502it52$JM;}M%gA3$YO z2TpEAPhP@li$8YVx&+a2YNUtcT6Na65+}b=pS?~UK%vO@BZ?-GdD)AfOU?N2hq<3-eIWnpk$#_Nt}z3)O#?8dld#jPGq%Rt$<*Kwtf zTL7R+C#`jriA<@GoRoX1r>i1X3k=L%Fm*1SflYV z!gvL-+hGiN*H%xD6lD$YBA{lbXr`kbrJg`8S`!E3!>ct^7c#?)rfrMYk|_H1k0hu4=xWha z$onk1232=}J8QwJ+4`WYF;n%mJj;T39M$Do%dB9p!`OM7zglPf1|`GTv-OG!TAOvc zijPj;RROMh$MSK#1ZVJ4dw$=6l{zwj+Q&cE&8BI9lK(?1o{8>P!c>o zrHfSBgR&}APV?d|G`Bn(@0w6t2e>{FA@L$LOR(d9-9InhHw2JCBJ+Lt6?B4Zz0$Ee z#x55)a+=Z$;a6zvcy{IdiC!{r^~6u54(bpOonob+jV|;014tG-Ip0gnHu5?_b`UA%1Qgp{1G|3ZjBDxsXlJK6>$bim9QFPmDT-0b4)dwcmi*UuSiGe}7s`m@;H`~x z_ulZAI6%BS_FXwTe;Q%5ugZH|?V$#^!08>=QVDtrqXs^->KMsIUcQBnygZ`@c8sND zy@Pfef$Kk4al!tyF>q|PYbv2JD0^;>lC^>sstDb14olu?66|>Xgk_zcXpik_lJy=O ziUN+d#%|u;TPlD!-_q;$x4A$BN^0?3{tdJTRgMZ4SVq|c*JNZqACoCZb|r7$m6On{ z_TO&Ie-IE3%Cb{2mDR7O%PNhtrbN}gNT6K0qb2Q(Tv2pdwdcos^=OT@?f8(CHuG;O zX87WLTP~+VJVDW+kLiZ%0M*|4pu6VgAfV=2JTzj1BSeoL|D+y3Hb!=xeVNAV1AwD$ zzFO*X>lJYQ6Z68_Isjn<2jX%TXYK}$e?d%2(zXF1OV4ESW_Lgh+jDd;?5zTn%BlE0 zC;$#?nSbfHEBefU(-X`}wN#j(6#P-TReD2z8ex1@aosH^^8xjlM9evzAO=dZ(Xrjt z-Dn+l|C#!naRl`XuDpFPIAdmfo@qU+0;RzV&*8+f5CzmBRgK|^5#BQ3la;)$Q7O#> zl-29%RR^w+f$PgIQX-v1BO1_RSe(Prb%MR}R7TiME3oU17ultnJ{wS4_N((F`M!Yq zmLDU>rCWkevgdEN=c*%s29yL|m&%TUlG%LdLe!&PK(yX3zI)8j=cQH>$uuqvW*TES znhtkgN7e0Z5l?T*L6s1MKi(oFQvnf3F)|z9L>>p!`dRYX0sUZzQ0{iu$-3AC5ap_& zY{hXRD9f@nQ~#_~0ggH`Ar)n(2^@WUbHbPe;>dh6?p8aPF`N`M)oT^)03e%b`+y@u@LumVuxf^fmBdypDfBCr~1=S_@UdWfV#gG|JUA)M&OFsp?)Xk|~Jx^O7 zP=DA2Kv}gp*cZB!pjwS^4)3TEvzUD^bm8i}?cU%iF+?_SbHn#kdgI^%}M`dY3?+ zcuxF}_xx*UJ+Lk{Jks=b0VPkSz=D1RbqHs@^Uu&+*fp@$GjsWtt7Sk*?~a?>(T4hr zx8aMy(1KQoP6;#m^w1u5H!R;p{MVjhGH?SqhHBXnD0+X7`PPUjP~vR^niWUXQP)*n z)cO-~F#zJxTATvM9izbuwb$t8L3vXYZ=qC1Zm%yO_6K6_x0Wog4$@Tssd zK;5F*Qupq`Zi7>Zc!qr~^1=`NyuAP4-Sq$elp&21h8wv17oZLy?Qdy1atHNb-^x{nDQ;WuRSZ1WJ+@L$3QN*x`&TtE5ye76Hd_HXPF% zh0HLvVqN3_1IG`plBc)j<0T zW#J$>=7cYJDbq-@)vKxU{vQ;@h(CWjDXFXd*9oigRQq-L`DBR8lklEHIu5;$albRq zx0`r@Z>p3!#a1XAl>Hp;Z%lJHaDqiw$d&P7fH(*KJ;$tK7?f1`uv?Gcz>MSnzQyPF zb~pnkSh?cweho3OWBI#Fv<{78R}7?(>(clqX<~ zVgx&>1_L(CG0u^F#vuNIYT+FPEi7)TIYj^VxAE@&fmDe8{hH#nix|uYMmntCAACI% zIBLTw-5ymrKy5KovQM7c0HXJ*CRP@r%-E;iNICsNI|RvctKP)SJ;3bL|JT=*hf}$| zZJBZkNg}66sR*T%QmI!esZ?f?iU#e7$Z#Y|QYngP9!$xYc_v=-Oy*&m_GHgCM~P(k z&UZY^cl~~UeE)P^_jTXTu%7j-=UuyP?`=9ElML&_`c;&E=1uF*d%@_8@6)2o`oL#h zUh@@hG|H3eq?iAPsxc_Pxkz3JtyKop*S=&iZQ+(!QxfKR)|~)e8bg&^)2&fvOlDV; zb_sMXUao4_t;1YUu1i~*NY_C=U9aFPo{IotpDeuVAc>-LZVu)*a?p*3B3j)A`duX_S=`y*O-9Pdo1}}2$6tzpN(`j5+G}wy8XC*b>b#uce|MG zZ-(L#H+jl-o`lTsuv&uhTJe&3CD!OG0&v{h$!9O?MFSerlDQT` zfoY60?xpP0db<aUc`-b<^!Ow6%k)^YctFWn zdmZr774sspPd5ha>bj<-MPHEsrR%Y})5@Ab$vIb={bb4#I1+E<_=Xke>CLjKx8uY@ zbus^hjS8;l)9E-hG_Bd-66`I;mG<+GJ+dBrcBve7EIwufsKa-wk&urXAli-A2eGbA z5O2V)m$1GY^+c+@^2*&me35ch+)BX)w0|^uU<6ru;iRgNwd2OVA}@)TtM8b+0lPt+ zs{-5^LqNkNvFAc!Yd|@&!_G=K0G>TKBXF&TsdKEN3De!i?>Kc z4Ucc7ffxGjj+0`F9$?4V<~HL}xCBtUd+pY^3~f-h+#Y2y!@mI6qmdiyMuPQW%p0M< z&wW5=tVxUFC?cs0c5F3i9l~nJ<)8Nxw;Xt^I||%zX^yY|QkWWe!l|1jZ7vEBfkH8O z)Gx6HP?LjmMa6Sxup=+a&MqlE58TLMxi3ZTNXg){`})nm4V0fJGRn*R&^~0Iybw3K zFkjdoYimB_CxRCa=ZOB}le%EXs^4W)IfG`_@VRlzfpsWei}X@KvxpBUx}`T&NvIA` zb@0=Kr-{&mI4N4kr$0^yIO60V>t{7YkzJ>>_Q*&8AiCPto{{f_d4v%ie5e{Sf`G_* zn>9rgp=LN;Y4;I+Q^ZwA97xVc-v&xbU&v`iCDaomzDe$RIGo-)`1m_kSS2%~o1J|)Zax_1RigZ}q_oho{-mWx|_B7zYopIeE|kxW)lOy{Qx*Ag;suThXs4 z0nuyAK4{G4fL%ubdD-i~xWKhFyj&JGju0<0zh3?!36uj8PENt4=v47493LxXy#PB- zhOV8Ag)%5P`oFCdTMCd}B%SEH@QnjRx7x&Fd(>y0R4pr36`U&Un}tk`xS#^~q>g7i zOX;1O)G8FH^3YIu}4;`obNg3uVLT32j;^2+h zW@ts;Dk?MLrDlm_MzPMWKl1{<6L5>d*pr-15+%)`?00vv5I83SO0KH0LUmz0a9vqv6ZjgLfS4+$4^Hw> zgrScH%7@dTZ*We<%01c}VSQM?`n@B4>M*NlAO&7J@n_;!;=TZ? ziI?m5lhgq;lyXXOUz8P~fs#6d4ZVi*2=AFV(p;&A>e(i=L&LQt3zU^l6LYOjLr-DD zXOFl3BCCKMOV7(U-VkNoOBAk*B5nhYEhb79aDyiU)-JH$IMFKrd=3`#X|n6}0ge38 zyFTdKPq6zqmz5Q8*%wfs{7}(fx4{nQ=-T@KM&Fo^H_d(sWTt=@oDuwNbos(xBh=yf zce0PnH@i4am&oYft|bgUlX$b+<8PJ#B416F>Xc#5Bdokn+T8LWiayv=e2ypv(XrlR z1Ou*x4JdhAlFD!0gl@$;r%qU_DMo@%-mX>IeQ0lSc9QZFzv>X+a(CAq>#0G?sw1m0 z0S^iA*}CkODdFTAP!5=x-thiq35crI+3B{><;h|)a>lwOuw!&>@QonBH2&w6irmnd zjq$+IN8`5~a=!^)I2ZC%Pth^}H3y~-Zx~tyh@Dui;_tuEk!Q1ySpW0I0sp@K#Mrr~ zZRBU^prrjNE?i@XvL-F{P}uAUJ~76c^!|`wZ%__Ai~L&u9rXmo>fX;j2bg3y(|mNN zQ_=y5P#wQY_q(hDpqf95yb2j;4Gb)|!e?+2e748Pu2Me>lL(_JeLc|g08Phavg|Vf z6FwCEa_ng?^#}Omx#{-{M`;79^|=#3X@|9Am5&KB4kRt$3Rx_hWkginK5ptFqb1hB z(U=jFKHJfG@0el>hUdar!7Ca{5{Dm0f|5J9JRo-qnu;A;olTq4W9B)Wcww^W3C#wS zBstVY;o`shuRHT%KYV@~RKK-nXc z8)bPLRgkXNz|PMR1+F7C`PbBIv=5|^CBN)Loq_wBdDEl*pUd_9z89^?8Ezbb{llp8 zX$}~U;tg#bD2mQ>0wrrwf>ZX;4iML~dQ-4Ca~|PL-PnP{$;W|XeYAZg(fW+OKSD>`%ifuki9=A0+N{^30}%N{&7Mt#PaD1D#Y zs03f&QBb_byHe^q-g*K@H~HZeyPQvYk<|_ zjr*p}_RcLtsCb&DX@G86q)7J@CuX3Y7>>(1UO0ieV7TMqPnJE3UaxBZBQC%Yq7T#$ zT@t(A4v3?FeUsctamcgp&du^>O|)8KY|&8tQ4vtGr6=0RHcybdqt>rDv0d{B=hoZg77jxvH^;4bvFBIt z(nZ%vIVcG0!)tVVDp?ku;HABgB*4wm2PN5duHiHjIIKQl|LTgj+koTYn_0W1W5KRe zVKgu3LN{>j7n3=PQ7`5Vg|QsLX!|vXO8&namfQPN;TOAL=dj^P>w6~2s6GvAlctJ~ zFp=*?@y|t~8UT%KFTZ$pc|2s%IVE8}-gF&M>64EI{@bChI4NfHn9hA0;F=qHHa_o} z1TXAc8g_rWQ~(!oO(w&vy#&yguS%IR9wbl_w`yo|stte}7Cf=)>qa7Qq{_nJU2$|k zEZw?5au0fHP*vX>z{qnT)fU3ywIcs6s;D45+7(esunQ~yMwizahYm!c>_wy zFGcRzwZP%!26rE;{mKK5npJI)x9;HoB!lA~|wgBLdAN`#vYnjW50YsJ4aQJz#{vZe(K&OMf4F(PG}3>CyX zKSxYVk^8`BT2pS}P*5|VjC;0GBzIqkkn*kZ`p!)xK-?`_-;`EY0kUgjtWKw(c!M>) z-HMl);H9l!-N$WH04S-N1&y0W48|IDMy!Vj@J6^#O=MFy9pQPr9&!yin!o4bg8-^XULred5cBA1_d!wTdKWB$RrB&yhQn)XCiJVsT;xnz8MKWqw%~Av277_tWaYAs)oz?WuOvyoykJ^0ck}btZ81 zG4a-{AL#rsL}~8$1GEqHaqqcN94e19WoJgBi%`FG?)ltM%Rya7VIt@WVxnr{)EDOJe+ZR`G?hP0z}VX7zqk$@&VW3HGF3#4eiQsFJ;PqTL~yzepnja z3pNC0)g!{7cfAO3M89dNBx^WFI9=%b!!LW$`C~?f|1EeL<(aqRlxL?lWcVg z?w0$V@*N`A%E-~&YD$(=ai90aKG(4t>y=>1u2ShK5MObIH8kq=zkGdK;eVsN_L zEnmL(=!xDbQ?&nIpKw;WgN zIjRN9&hMY|nOdlxMHU`W2NwRSwM$}q{Uzg_^GZDaxR`us1qnr9?h(3Ehbm99s4~gw zZugv@ivoOnd;)(7{_ns4s)aG;S9PT+t2_UB7vq6`k>&dgae89ES*>~nf->M)Fa zj3#$$jC3Aa94jyIicQr3JDj#QcBAnbXjPoOQsNm!vI2baoV7(hZCL||ai}tr{RPG) z&e?2xup$pd;2N(s__D7Xl$=_kwMhX#Aac|F=$MbI<`GV#H7aPMpM}FmCe6gxTl6nFqsIq`TV5Hk<9Gw0DyMPRQT-4=^h%8NWe?ax=ztk=#bFOG3nQV;geJOhsXm^Y-}kFIQO#={;m`1Pu($@LJ{6X&_?dp@_`o?F8@>6CIt}fQ^&oR z$3nr5v8LC=^)ebx=?&yVIXj_?aEA5kcdo0gK}mAh`R=6|syyfK(lDhIG*bIlzVM5D ztUON&W3)RLLTVNM>nH2~qo?rBS-WQvuTTx@zB9Yt5fmUp##TqV0RKYVXN_X-B)nnPU$t54QfYS-_cXRO{kCpFSPo6tBVV7tc|=2 zip`DlL+ezNHT}OYTOeI_@>lU90LSV5x!37wICyEk^x0$wCk;?f;2!h+(vTV6-@D_` zUtu4>uGxC7J#4}aP?x-En8fHCK)kk{k{K*mJJuW`@y#SN4>+!#Yz2i~(eOsl1fPtX4WhSaW; delta 32 dcmX^8pLI6lgh(C+1hAQys>i`l&H@st004L#1-t+N diff --git a/best2.nn b/best2.nn new file mode 100644 index 0000000000000000000000000000000000000000..b775540a12c76d6c88e62616cf7fd702eadbf0fd GIT binary patch literal 98251 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�}7yj>11L*&H#^qer@D8-&NOJ!t$ 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 literal 0 HcmV?d00001 diff --git a/frame_1_delay-0.1s.gif b/frame_1_delay-0.1s.gif new file mode 100644 index 0000000000000000000000000000000000000000..6cf6d7a0a8ce117880b514289bedbf447fe2b475 GIT binary patch literal 1602 zcmeIxX;V{I7{KvpZZ<%c00~=CZjy6}txANbEG`Kkivnd;Q9zVMlH9Ng0kzs7h9w|@ zfMJJVMbxP!pvWNY5X0(>Q-a7+p~|LJ(NU&FeF4+(0s0Mk<~RR2XP$S@%<&8Gb#p(( z!Ei92F__$w#;IrUXN1@@C^lJ$O%`DVB5X2>6>K~qfq@7T2_d1OA_x`W1Slj#ArT6p z8*pM2mtr8sr6&?H5(#NZgtQcVRx06aJSi)ll%7D$NFZh!nn=t{BxWa(E(wh#X@r~% zf+U@olTOS{C!S9uoy#Cz$RPc^hk17ov&{p( z&jSw(_@J9-fas2c!8kB1X8xW5^b#<7o;7w3v=>s_i>MFewml_wk7RV6j6R^C4V2Rc z%W1 z&i0_k~&VY!h(quRWo+wBBZ>~ zSA7=#O2!(-x4gwGcu8TSxl$H>-Es@d-*N88{7rGs(ORGE@CJgJ8^=x_*1*lfo+%eJ@(N@`RMnS9}^J@J#wLo&3! zW}myVpf5{IS=%fKdktAq2*OfHIK4ai19aMIWaVUyB{$Qz9)pX1*ygnJt+GH~Op*8$ z&}kX>7bZ_wnwX2+xy*h`-ui(Lbe9~}{*qez0{P}($v|W)W7l3Lqb~>@E>IycFGIROj8lVaB-?HcN!pi4;u6K z+Eq@=%y?3BYwU$xn4{B?Q3^;~^`*~}8>+Sniw85Bp<7n))ozznKfue zoX$H)%|q9Hmp2*3iDLwUq~ymhM_Y^AwISxtHrheB0K&hjKT-NoOAO^y_6OSl3t!vo zg933q)~Yzf)VUg3z9R)yeYg`r94RUExW!=4J4B;<=;`ojhnG}uHPE8jzTyY>lb_$| z{rH)lLzw2D}{U3S~ z{q@?~0RHxnQP00#W@-;7OuU{tUNC>}=AoQzyQ?pHm1c$6q1|0mNU?jiN*wF|nK2{& mP9V5(^lpP>HnM`$cDZXcri({8^0s?k?s?Vus2B%fJpTopARN>H literal 0 HcmV?d00001 diff --git a/frame_2_delay-0.1s.gif b/frame_2_delay-0.1s.gif new file mode 100644 index 0000000000000000000000000000000000000000..f1e016baaf81b87103917c62da8d469abbe9ba68 GIT binary patch literal 1502 zcmZ?wbhEHbG+;1b_|Cvk70+E2%afnZmY&6&p2M7x#hj7NoSDs>k;9w`;<97{Q8r6< z7E2b8%x1~SWX;QB&COuT%3;aQVaWj@*4!M{JRr(tElg!ENMkR^V=K*PFHPnwOyMX> z;V1@@sT{?r9A#;o^;z82`J811?BxaQ6-7Xjqr8x#qL8DqkfW-Iqo#;+iM{+fGnMsb zDl4oMS6V5quvT1Yt+>ikX|<)&Dl4T`)=I1G6gL{HZZcBc1R~Wo8LMqHQQcswy2(U! zley|lx+zYXb%yZ6f3gOL2kLPTw4-InTyA$*m5m+kwbYb%%r6nR=xS9pW21#kY4$?&^^`+$MLZU*>qf+|dcLM<>c2 zn<#r?lH5rknk;u}vfTA%)vK*47rK=$PE)u%P4V({#VgYkuS{3GI$iPFbj2G}ly6T` zxjRAi?nKpl6IJhnklNK5idSbUUYh|#O1EYz-<_>|f40i~IVullsXm;e@_3HwXW&uPv)sU1)}*tw%Su5ny2;*h~}$3pRWdt7lu(lK?o@RWZ~pun9867 zG6R$+7&!hhXmiSVY*=uxnL}7B=ER1DhuZ~|TJ`#`=YZq9kadDw*kECYPn;QZu zC%V+NC;3POsd&k0=pXuH;o@<8nto-1Pvykt6Z%Y>xJ0{By{G9!_i)+HN=-i2r@Y8( zYSq)e(A9|^JsKB}y*kyz$z>riLE&HoQ=FP;)Rv4%GkG`zenh&w)OHlp37JvaprkLc zEn9rA?}0{N+>GPj!xQ9iL`u z=)^6tymNE=^R}+F|JHm>u6lDr?{4j8)+N$gbKZ9!;9qd*M~{eT< zY<_(M16y25rDx%>hJUi(Z*y1bK6fbj@lf0~L&)mDp_rGfYO^K9coO2;B$G5Aw#imS zoKQ)3=(yfpQK;}RT<*~G=z1QbjOz}szTUW&YIkgVvZ^KD3wPOY-XHg(%4SY&1A8plG<1d4l?umY8$74V2F^|9L))hvKv*~re|AC zXkZP}-F~y~uIlp(QTb12Dl!T2Ent$LxA(cUOK$JNsWaOqbu6mt3!f)EM;ri;mRmXPSX`8%)J+QB?z%h_lE<qV0g7@$hEzvr%q)!ood?he7f_loQ#uVPv%@$ QQS>WE-~yk6hya5%09DB8p8x;= literal 0 HcmV?d00001 diff --git a/frame_3_delay-0.1s.gif b/frame_3_delay-0.1s.gif new file mode 100644 index 0000000000000000000000000000000000000000..322e177b14fc89ba6d102dc85041d9e87158cbcc GIT binary patch literal 1602 zcmeIxX;V{I7{KvhZZ<#&0TQ;P+$84`Ta^e=SrijM76rF;~(hf=6;He zVxvBzP@?ij1VVNKAtMo=nTXFaGzp)TgwIJPToRZ_(s8+& zI7tRRHv^xSfj^&4IG2gPkV*J?FXQfBM!N@m%L8urgl`#m&~F=f(rY#T`owcE7IkPXgHvg1G@GCjTfWK4RpDKt^>^b`$2h#wek?9%HS}iGKf;^ zZ`aJDsse25zqge|S`3jDMjKR62P>#U z71WVR+Ngn&_E<@Kn$Mgn0Aq5x{+i>{Yw&~$ex`yaRq%|GF8^K}|SZV}IO<>t@X$H#%O~@;QX5@7< zveW{WTYxwfLj8aKV*~J4$jBI_Ms44mZ~h4segox0a0uv#Z-;&2n7%!su#SRd9BN=G z)Pr*JHo-)ZzST!&??dYQ@@Y|bm2!~mJ4#YNQf-SetKun<(t37@!h(Sm*U)$8A%y&} zSN#?NO8Pp=ucFmEWLaUOxl$f+-Eu24z;XV^0;BlnqB`H4h(?^b8{1AE)oN_bqKTG2 zu03hfNZti0TIgdx1&ax(|BO3@QmqMl`Uw-b@wv`(mhJJ8tb zq){{PFHW7XG$jh%Ig9~I?#6)+G?!eJS81Jnp?ph-Wcf{4zpRU;SogZxp0?yMzeBZe z?fv9*%B4B%R2=`;8;+EIZFkhkMWC9Bn@Q@fzJiV?&tAT`4yXd`x2y#$smi8?OFMFH zfmy-sbV%5Vbr~tfJWEa}Q8%vHm!Z{^qKGS|hhqv3*8i}|auSgzN5?{(PI>%ttgWO&8%lJx(GJ0d5cXBWiL#Gcd>FfGAjAe(_}N|` z;)@&5Rwbck&Na}=9Vw{p$D9aeO9^4eErxpEAsXF7Plr!Cy`_4q!B)+VReyMZ^!!fW z$KOmu@jNI4)0`2<9Y(4-vusw&J>wNK-#%i2g%44b9=;ewpYIHz{y z51)0L?XY`~HTuOnjlA6lx43hK&Ei99of!rloBo71@{)&R4(OdVDY?sk!J~mK|;<>gk?FO5Af);<$j%^jYzD leEyB2cN-;hQI&-D%iU|S-CXjKw>=AT&#TTy#TW?X`7eTy9LxX! literal 0 HcmV?d00001 From e8cf001c6b2ac10dc81eb7f8e321c7930fa7d699 Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Thu, 30 May 2019 20:38:57 -0700 Subject: [PATCH 03/13] Maybe Yes or no --- src/Game.java | 5 +++-- src/GeneticAlgorithm.java | 3 +++ src/Gui.java | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Game.java b/src/Game.java index 67dcb57..726d8cc 100644 --- a/src/Game.java +++ b/src/Game.java @@ -31,7 +31,7 @@ public class Game { public static int maxFrames = 50; public boolean play = false; public BufferedReader in; - private Timer repaint = new Timer(18, new ActionListener(){ + private Timer repaint = new Timer(0, new ActionListener(){ public void actionPerformed(ActionEvent e) { frame.repaint(); frames += 1; @@ -66,7 +66,7 @@ public static void main(String[] args) { } void start() { - //System.out.println("THREAD: "+Thread.currentThread().getId()+ " "+getFitness()); +// System.out.println("THREAD: "+Thread.currentThread().getId()+ " "+getFitness()); makeFrame(); repaint.start(); } @@ -118,6 +118,7 @@ private void makeFrame() { frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); panel = new JPanel() { public void paintComponent(Graphics g) { + System.out.println("yet"); super.paintComponent(g); m.key(keys.r); draw(g); diff --git a/src/GeneticAlgorithm.java b/src/GeneticAlgorithm.java index 54333f4..bb9fb66 100644 --- a/src/GeneticAlgorithm.java +++ b/src/GeneticAlgorithm.java @@ -24,6 +24,9 @@ public GeneticAlgorithm(double mutationRate, int popSize, int numInputs) { this.mutationRate = mutationRate; this.popSize = popSize; this.numInputs = numInputs; + System.out.println(mutationRate); + System.out.println(popSize); + System.out.println(numInputs); } public void start(int times) throws InterruptedException, ExecutionException { diff --git a/src/Gui.java b/src/Gui.java index 782cda0..d3cddae 100644 --- a/src/Gui.java +++ b/src/Gui.java @@ -35,9 +35,9 @@ public Gui(int[][] gg) { } public void train() { - GeneticAlgorithm ga = new GeneticAlgorithm(jSlider1.getValue()/100, jSlider2.getValue(), 169); + GeneticAlgorithm ga = new GeneticAlgorithm(jSlider1.getValue() / 100.0, jSlider3.getValue(), 169); try { - ga.start(jSlider3.getValue()); + ga.start(jSlider2.getValue()); } catch (Exception e) { e.printStackTrace(); } From 922a01af039dce6c1ba52cdd48dee1215a113632 Mon Sep 17 00:00:00 2001 From: Abemarkar23 Date: Fri, 31 May 2019 17:00:20 -0700 Subject: [PATCH 04/13] fixed gui bug --- bin/.gitignore | 10 +--------- bin/Game$2.class | Bin 773 -> 925 bytes bin/Game.class | Bin 7059 -> 7058 bytes bin/GeneticAlgorithm.class | Bin 4037 -> 4464 bytes bin/Gui$1.class | Bin 0 -> 599 bytes bin/Gui.class | Bin 0 -> 7619 bytes bin/Mario.class | Bin 4105 -> 3781 bytes bin/NeuralNetworkTester.class | Bin 3752 -> 3151 bytes bin/Trainer.class | Bin 1589 -> 2303 bytes src/Gui.java | 14 +++++++++----- src/Trainer.java | 17 ++++++++++++++--- 11 files changed, 24 insertions(+), 17 deletions(-) create mode 100644 bin/Gui$1.class create mode 100644 bin/Gui.class diff --git a/bin/.gitignore b/bin/.gitignore index f5d4628..7ad6bd0 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -1,14 +1,6 @@ -/gui$1.class -/gui$2.class -/gui$3.class -/gui$4.class -/gui.class -/gui$5.class -/gui$6.class -/Gui$1.class +/Gui$1$1.class /Gui$2.class /Gui$3.class /Gui$4.class /Gui$5.class -/Gui.class /Gui$6.class diff --git a/bin/Game$2.class b/bin/Game$2.class index 57fef853d581d621026113c1488d19baa44fad8c..1b94b7e78b4ad8b42b768f5c408fd9c04c8be4bd 100644 GIT binary patch delta 442 zcmZvX$uC1u6vltIhF337l$z(UszuFH&0|C*5{Zq~6E9La@H~=d2pc;a>DnJb1hMc3 z*!Xko#A&;AZ*tB(=lkw=zH?XnsOew7AD_S&YY+POO$pW1YSbuvhvvB%NtmgF$hLdx zSV@CA>J-PhCJISuE&){C#}`6^>r?@3AI9#%6*^O_mvpoWeW_u0xwy<`k)* z*$mt5LRpb6`Y})~`Da0N*{a5Z1)D{dx^K$y9SRo9qBspZjaCp{*sQRsP?5r@*EB_3 zi;^NaklT2yD-u^>M^43ht#lqg+_c$ZyPGv`)Is;zczkGJNP^>fpG>(ubf4*Ao9~hT zU@cy}J{#}CGDu4u$CTP3$t^kV$aBxATr$H?j0qzShaGki6O?5$*kfP1DK;t`%A`># Hfd}yqV_q-D diff --git a/bin/Game.class b/bin/Game.class index 1602dba580fabbc053befcaa58d430270d7af103..7f0faf28ef1f808d68112071e03051495d5dd8ee 100644 GIT binary patch delta 352 zcmXAlTPTA87>1wUAtP-~%b_V(zij0KZF4BK78hEP5{YYRNx2bn$dwSaf0*PLxuMiQ zQY43z!_810PHiAEm*{7f**Br8m@PLL4O>@uSnEa&PR z2IeucKqiaiu!JgkA_;U?jAB6-ajLk)#}zGHi|;rc+|t7xgWT)k9KYgy#LN>m yo+%VCH|Gwcq@nBARqb~Xg- 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 literal 4037 zcmai0ZE#d)6@K3AZtiZlKnMf~Bs6>!k|j;37ARR7zCth<0wtI>q$)SNm*kS&z3bh( zNuaH5H56=xwusV}il(i`&#KUbP!!RrbgbX{#~+T)=sy`}oarw+NPN!S-F#7XC%NzE zdEax+^PF?ucW=LS4ZsHcK|_H;@h&rIx>j^syxVpxw&&)FkJpHUY#lHGNCyN;Mq zS7DZwj9GnFEMvse3Z*UHj*M%?>$W+LakRxsyAg#@o7J5(+>B!?to)!on_HSE&WSWo zLQiB|!?o<>e#51ZYE;ltcB;)fCZlE^nam`blc|i$Yc=*8?Ic$;J09C^rm0xyu;rxP z16D%zA5;i#j>fH|9dn>7%x$rfW@{$VWjY6pt~ljNTI{G1 zZ#NuE#<|JD&ADR=s~Ve|tJ{mNxm#dcR2%u1UD|O6;F1@>T z6l0$B*60YKNP5*eW@T5`>XcWDhD zQdl;LT65Ah9Ve4=&Dg{y4fpZtNv)%HGMaH5GwIgt95AEA(oRln4v``EYuGrA3vEZ! zu9?uW3H5ZYouMi@B3O3aKF3PBZLVV)iHL^H3X3My;k1?P-k!1IG1Ccx&@5;ZQ#e`K zO#(U|11gIU!B+9`HXdA+rH@C#tb9Z;h+v0~M(k85G*T%u8B-{yJMP$=yDTCSyL5a6 zq*BnevnTQXsyjuv_oLXOp(PLQbgOis?2;V*(4`Mz6Nf=g=__$;t!BdvP zY#JEt-D9LYHWi^A4{LZR50V!+cK~2JX&oIPiA$1Zf0H#}#t!t*p|O3o9Vb~P?EG)y zZKl&_MNRtu5z=Ea(u&ZDPl#jdX5kRJG#Co2{s$9mCwG#LDCptBbfzm|5$=W@Dl-+> zVZ`GSI+2`LXRbG8Bqz|p6*#P;8$INY5#!0zV9w^6NcBP4cSJ`oXm!vcl?~T+7{GbZ zyyKg5^O0FdBBjBm+a_(wuj=>|DC$p|1Jr*y?790y-qn#oAJOeG(yiWBCXa(b43G=^ z>{KS6WoVjdsnSZ5smJh`hDWD`M;0p`kK@x4t8vpzNv!U!ZV%!~g?Vj8pAde(na;%B zbZu>|nE4qUpT!{E(QQgNO+Y*)`4Y~j6_!rgHibA@$IilWoRotcLHZdT&*JkW0FP|4 z+@zT%CuvTj+;>{Xb9kP5i7DQ6vrL~6RK6fCZk`fKc|d5u7wKI|Nx4vMi`tG^??vo6 ziN_Zu3>)u^seBj)@v_1k$=H=SmFg=)cm)?Ue3{DZG7_eauSfz6C5(Y4hvT$_h$;SIePcD6 zTAp~96g@Tx(_nb}yS##<$ccs13&zn@zG!Tpa`QxC+&pD+iaJ^BW>mz6NDyyQkv7jL z^2OsxCq{K##u#};P+MEcCdNXmnQ@GGtLgUJPA`M&E&Nc!Rpy>)3p##;YxJvQrW`w# zi4yg7RWoE~3<>14BY1Wvu1f;>3287>xVpV?%Nt`4-aNi+EW~|3({TeujGL5W#;mB6 z6^V>=4@-98mJ8X9LA=X~*u)B(?lEIii-1?-Bu*q^D_QJ=_$3Q!`2YPRQ?Tr39}b$^ zV`iTR1&Mp5;!ih+vC(E{oT%AkN%=3GS!-)0*07u;^YN|3hmurtjx>%65ad7Wx7TO& z_FC3%wjp_7u;q7`ow%pULGI#r=Zu_Z+;>~N&#$Evq@Eihl3jwu^LzZQJXQ<~}N@ablKmYgT|aJ=dztoJnxqw*>`J2uFjou z!XCw!vT){?U*huOz?A9p#YKlM;e2>;;52E4;J+dgb$O}ig2@L_tE&%GD%0A5D} zzJo2ynOm9uw&Azfjz3}t{>EDMckIMJc*;Mq3-6&xE#lj71-7bMw5mPWt76!v5`3$< zcvwA-4t0VrvS-n$p2H&^8B+`gawr!lL3I+}z&A<8V)Z1x<%L5TsytfysP}Aqo0|Bk zt&Z=q=cAtEc!NCjQQKSi9(w_%Zr790sOf%BB1j$As&GpYIl`)GgF#=#+pdSotriSs>+{yDXl_7`j?`PE7j!KY3TJ>-`~Jo}ku2FS2}dixma@hA*D2AlnUJi+f%c!up6 z4B|CBO(ae*6`aI1&fefNOA==TF{i6?d?+U8e&wOHnArZ>Y%fo^ucR2NBR^H6x3xC*u3cej8kr_Clj?T~F5rV7;75r! zW5E}3Aj!Rldlv3|e!YJH*ha-ciXnU4la);e8HUmwf8h0ytDE|H`%VPLL5^WQLHVPp ziwB`h{U9(>D__P&C=oH_%&m+o8>Hlu)D8i=Qc1JNkgq1lYKtM$&>c|#!=MKTc^7FE zJrq!4NLTGZ(U(e`^}1~lUGa7(7)E>@@UX=rY5P8yv1Sa86|QWOS&=7kE<|*#qps*M zl&k)qiJLb4&T7lW6lNSulQW5Un6)9YCgM^tFfyL|kI&#<>RuFxBWXkCNn+jFQIe(# zLLEzWb1KZO?s! zplXYHi@3G57kITd3_T??!*u6p1~|kB-Ck0=7{wTM4C9#SE9}#274o%bc(0iJ<+};q nB;TV%W8!D7uR#pVVV>A&ED%41GUWv_w815;P-QdP1oV9aVTN<) literal 0 HcmV?d00001 diff --git a/bin/Gui.class b/bin/Gui.class new file mode 100644 index 0000000000000000000000000000000000000000..c42129fa476c6b6e963b7806757cb81406a36c02 GIT binary patch literal 7619 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 DhLRx+ delta 1553 zcmZ{k3s96*6vuz}Ufd6s4Ov8OB~a8-Ac8chP$^O@i$*6)rSh@D0;?+!4>d8#vV4W9 zpARr!IR+_eiLjuK)o9L?Hrb4p_8N1toUxpm9@9)UPG{H0SYzKebMHCl|NozJ@BQxi zjwCMW<2-t4|2seyoqL>XbzKxwnP%Zt#7y_j@@9BvS7(eU50qEBD5OYX9?Ki4h|T{u zIMhior4}U$_ci3fN^eD}zp%=MpXrLoDqnRtlcL+e|LRl5hcX0Qw=t74;TBbTXXpFN zdchDB0o@6w4+RlCS#vc)V#&v4Ozx2z;%Ty>?ttmJ_jf1t=$8Oa=l zqqx#L(>KLQ4Rc-eq*l@W$^x!a3=Ng2;W-!csk3i2scL~e*2G8F@M0*m&<>bE;=Jr) z5sU36(_byMkC}x2uP9W$#d3u!ya<1J#wdTl=cJywPF7-Dtg@XEz07LX*aIT6Ba2z* zqJc*H`G_%&jV?B^+5R-*cGYa_E{h^sEZXKi6Num@qKJ{VE8U3YX51taM_=&< z5>Gna8AK26mQ4*4G#3w}xP?cAHI^j%qN7~(vnN^eJp-^r5krb7(uA2#e=@|o)Beqx z?7mCTA(A^QoGXEB`;*8ddqHH5d$=Gug4`#_{Uk6#klN(Y5`CCx@?|ZL3Nj{KFPU-N z!Q*5z!45-NCaGOiY{_>kL>GLFUChALNA~FJ)WJ#KbKLO;+6H41*i#5mqe| zmB+fuJ3xJb$LiqKPF7?)(mak(LbtAvsdteIqSo4HqmvTWH*CO}8qfN6Lg$q(*42pJ z%he}$!{T-lQ$wOfA-J%UP^7om8I2^R7K9~RO4>;e*=g}?ogtZ;>3YT8X4kq3>a<^< z*B5BQ$UQ^l$k&D^#q-JyoF;dukW7l0fKR%lm=;PnO(|!j>CZ8Piv;+U3gw|nB~z_Z zSfVmnss^)6Wl^t6SfOfIsphguEoO~sWUbo7I<=Dq)lQ?T+s|w2ARE;owy58EUH!>c zZSjVVp-H=G*70oDdF<5V*rg}3Tl;9$e%f>e?Rp+Ty^#*Rg?)M(2Xr$Bbqnw6R^HP` zIHXT-SfA&8{UaafKlo5z;+TozBNNNVCV}IoFDL3uDkse#J~JaZWyW*bOyYCn=L=KA zmu3!Mn}wV)%lXDMaMo<*Thqij)53SAjqlAqE||moV2<*WInK}KB)@QvoZr)zJA-?r zTjVjPc$4k&g9}+Zmem9d9b wY0f;!nMcy!oU?0Vl2eK;_9`X6Qrf^_JVh2w%I$Xl#S_uJJh4(YC<0B#KbMex-v9sr diff --git a/bin/NeuralNetworkTester.class b/bin/NeuralNetworkTester.class index e5f9e0de93f35db07338760828ec320f41df4c3b..d9e3c0c090fca7f8b439fdd8b1f93ef5b8e3748b 100644 GIT binary patch literal 3151 zcmZ`*TXP%b8Gb$;yt1;f9Y-<_Ip8FO$gvVr2Mk88W5-TFt*j)LN$Nm`ZlsO9iM*?> zS4j+|EyWxfpg>QQ^Z@2i7p@=|N+6w3fsFpLir1O&Eb^|GxMv$}J|vMl&3{GmrqISNh3$%?Irs0eU1QY$I1wxZnL60JcO)3;b1UfT@ zsb|ZJ=XHD5yV0Go@>=n|p3t*^$1x3Jq)UB>i&eovtmW+Q!5GioO&(V?@!1JqmUUbkv-i)|>?udvQ0F zl&mWP;l$Kb|5OzBAfaGC(Q2VnML!M*C?#p8$h3qKQ*Q1xd!9Mm+9F2+!r(70usP>w z`AgGUshW6VQ53i%(eJtMB0XW-+H%HNa#9KoSDkQ~v5^&l_M9gHFH71iE1($(-cJ(o1&P(tb$wvPo}IgNv`5ikfq9HtytDiTp(A7SY2*B zDLR|Qk5tUzEa^aJrCgnqSCy&$vu)$7XZhDQ9`h$h{{5!>yDsBBuObg#CPCc13LNy+ zG%ZbD_F3rQ6}SMdux!@E>0<hm*k;(PMthKDM6n4|4Ab(+5 zcO3b4KjtI=)feI>Hgm3e0_Z>|SMBJ+7D{!yQUPp5+*MTKGr+yQ z!O=C`c>{NJcE+$Xuzlf$TevH4Rj_YGi0xg4)%CBWnV@T?8zIiO&`>wFaomHLYqG~v zg#jda9^l*OAP&)uL9X~A@Lz;Q50^|a6-iG*Tn*tqSNQ&>z$zI2$UUe9*4rX5A)7jF z)hQ9%s5r>GuiVDST;wKFnE~Yn#wwT^h}^&<-!V3y|FBN(HnMX!adJA@c?+j1ICCZ$ z!(-KHtGyV``NsnkeWC(Q2IHmgD6s%`Fy5U^-Y%x_E<)YMLf_3$_OPAq#RTp~8vAgH zJ>V?%Lq`H8C6;l3H9O!YqR$I*1K|})U0_B}VHERNU{Va)kv#BrE^E|!$=Px-BL-7{OY;ZVqumZb+a?%^#LPuygL?U%BSMXGDIJ}0T0UpJ} z75wZoWPQoHW$nfiXv$BjMn%vW8r6II@P}UiT=jc)H>dcU+MkH1AdL ze10Un5)tu;)K)#F`PKD*tSBO`Y#3SV4R^e89XsjtZCsn{e)%ST-Ai|0tKfI^h~dOT z*Re^)^hd61bzl=jS&QwY^cF(54TlNeeT3+K()t0U2;~?a!U@i12+CQ$-G7X6JVSU_ z_yO@U*MH)N!e8+)-oqpKkdS}L@oV|%fN7y1D|Yb%U^iyOJ$%a_!f6-y$357p!1L_7 z3;Z6jnffje<`n*eKXVqO{jc#CS_t7B=Wnqd!(6?Nx3S9EDxPrn6s++> literal 3752 zcmb7H`*Ryt75=UsURmBGu4B1wn}?I;VaIaRIMl7H#EIiaYa%;NyZGnLTr8I>Ww*^CawE<+O?l25LG5o+Ez<<#he(C_`ySpn{GD-(*OMCa; zbI(2JeBXC={nvkg_(uSJ_((xOVEcq#w6)xX?p(L*Yg2l`(QO4Gf#$2)yq3sm=4|53 z%vC+(C}CP4%BbUfnW~OM{y6Gf_v|LV`$>{eok&8+vx?imhweNz2L!bajq(d7=U?mBYUq#r;0`{tJ_f=K&OI( zwXWSNs_4QY0cBpx74ciozkc{CZksJvRXMa z3W263oWP)hlLGrbg$$PMW252}hL}pBI5TGuf&o93&5)MWk-Q7!qeZ7^>&YgJ;Bf_` z0uR(Z-7{111jY#Ztj-f_^Y&ya<)PWLRL}N0>R{P)m(rFkaNvKVpg`EgPeAbG2-WI~ zeRuu+m3*ntT5&Jr%K|_B>06IgEf3nZwvaLkjz8&QEM+{a+sOg`3T#O`TISlgmM^yt z86$~briF`0#ScmGxiTqSXBBM=G^UMNQJL6uyDm1I}SV|iFST>0_Wy#A=8JFgM(IfZ?o0hcg=vDAG z$MRr{EpQ3%s`x2>#sf3fTwb&FDT{3OBDc(B*Khb$!AUmb@JUPjJOSTdJazT5D-k#`AR z1+U>lD~Nu;K>(_61e$H(SoI9B729~%h-TbFs}|QPfbEF6j{b%ae}S>)=qm0_1&=QV z#BJp#PkY|PjvU(!9W0az`|XqxmjNSGo6LpVD>Uv zd2j=w9I0qxSo;`GoB{PSoKbfMIOGL@&*HQj+z?V2XYdgWVghFvbR73%5@%V9bF`3& zc{6FwOu1)>e<7mage(dHA~R@NBAExs6N-Mt9^k=I(Ocyq>SJTSI|$Esn>xtzy1}FI#U8pFN6^8#?_pKq@0IWa<|r?3VQZ)_M0U2^A{m2y;bru8b14=s;YWW$ z!MCis-PrLKcPxfQEbRMQTK~(|{&28QSw=e87g8-rXyN^stDB31osm9wBVK6w6V5Ka3Fg+{9dsIzvU>v zlmCJDISTT$kMRL+Q)ibr{vBfp^SoE^d;Ec;B|PKKDOjeoOI(e(VjVzqo#BQRFo?_E zA4B>l!lFB{j#el&D?xv)_Y<^z!hZvr2dVHe#<8Jr*%0@WezasmEMaA{viWMnrGWdn L<9>hWD|+oeKklV< diff --git a/bin/Trainer.class b/bin/Trainer.class index 0a8dc335b491aee7e3a379456839db0096e4b621..b2416758c7fe78796c97a5950ac59a5c6c5db31c 100644 GIT binary patch literal 2303 zcmZ`)Yf~Fl7=BI&*(6;ggiA|XX_Z2gLW!MLYz10rxd;Ym4bswjTb6BDNOt39LyJ{g zFCYBm2meIJkHwkLkr~IYI{Hui4dQclmym#FCfT#^c`wiVyw5rLXiBA* z=zPmwHKI7iv@1s09kQ$#1X@%yBO=h6Wuf^>am8>JwUvS)v)Z~=SkfF*z6Zw0sFyR2 zCL~oP5M^F>%`6MVvH@7u4i^bqpeyy@C^88pKKWQTO0H>JWd+>=JqP$_EZ1cZvlbK0h%fYR_=_E;Tv9BnIWmPyE%@6HTjl7c*>6Tcuz-Q*~|&E9-{t zj->A^c#o9K8x=<@%p2|_+u4X?7IU)IYcVX~j)L1%&A9HGo0^=qiuaKtf}EKz+9ngL z*@I2ioy7+#mT;HtvTjz}G8__{nyL3nFG;^;75DLgyp>7GA%MYIN-xFm5k67yal;|Z zZIxZ4sNz$Q>L$Cwkq6_Z?r!^X;V~_GaC8-`VE$O%a6LGb&hb=0S|j})ZFv=IFqxPB z5>*4g0dWd8r~^rxZN;$;VzFS86~^2&HCEukpNQi#@RYHCf7XrQRJf=x#FKY{XEvOg zkosxT97Y8F9KuI;3RF%>UKC{m@<2DLbg zuT(t6Gl665Ys#^UQ>MJ0dh4aMKdB>VJhe|2$_$9-?24lsezY1~Rzp(UJUQ%`_b%lk zZ$qvWuH=^!<6A$U@)JqMe}?*ks}Nq1@1Fe}T0M)5=ZzS|WcZX(%@=mib~q&Bg{Zy* z+R;JB7&_6##K*ag63z*n#A&bm_q0lQox2drJLt&{RB`4xqH}{)y#9hoqEMNzmrfGZ zNw0$_t#R6qaYr7c78Xf*WzYJ_a2_eIR14DFli0(!fB_a8q`e)XJ-UY!TvWIz6!eDq z9I7?=Bg;rsXLgZU?!cu)ybV9?;Bs~#Ib6kC_4pEOtosnYF4jBY*}HMdYqbYGb@d`P}mnyPsC8^-*{dKHB#N^-nD_x*uhqGUHo zeovFzKC(JQUWdu+7%t)--=t#vIV=Z#MsWw5ctp^BxPr&nVjG{+ONzwbd%~5#7qtQW z5VVyRSt5LiFSE}Po+C`k<9}fCkAVPH!t&vEQSQJcS})Ung(A61(APY8Qi~vbU!5T~ tBteM-ai{_Lvy%MNQvF}ounjO&s$U#d{&g?6uY6ufp7I60p=$`={tHs9-2eap delta 800 zcmZ9I+f&m(6vn@8NK!H>l$L^sR9Z!W8Y<_SgGp3HrIQr`7AL5LEgY~2^c*&XU?sxW_`F&?=E$>z3>#vWW0F2`4j?yJ9J$r8G z?v6G#mrrlln?_ooTLt5rLKVX1N0PHaXzfHV7H3Cd@6Eb+k^H$&41qzQJVguwIfOl z(2b0X7_8GW$Fv60r|PV? private void jSlider1StateChanged(javax.swing.event.ChangeEvent evt) { diff --git a/src/Trainer.java b/src/Trainer.java index 64bccde..934aee1 100644 --- a/src/Trainer.java +++ b/src/Trainer.java @@ -3,7 +3,7 @@ import java.util.ArrayList; import java.util.concurrent.ExecutionException; -public class Trainer { +public class Trainer extends Thread { public static void main(String args[]) throws InterruptedException, ExecutionException, EOFException { Trainer t = new Trainer(); try{ @@ -17,10 +17,21 @@ public static void main(String args[]) throws InterruptedException, ExecutionExc // t.testGet(); } - public void start() throws InterruptedException, ExecutionException { + + public void run() { GeneticAlgorithm ga = new GeneticAlgorithm(0.9, 10, 169); - ga.start((int)Double.MAX_VALUE); + try { + ga.start((int)Double.MAX_VALUE); + } + + catch (Exception e) { + e.printStackTrace(); + } } +// public void start() throws InterruptedException, ExecutionException { +// GeneticAlgorithm ga = new GeneticAlgorithm(0.9, 10, 169); +// ga.start((int)Double.MAX_VALUE); +// } static String path = "best.nn"; public void testSave() throws EOFException { From ef230467de882598bfc7446ae7122a02e59e8b7f Mon Sep 17 00:00:00 2001 From: Abemarkar23 Date: Fri, 31 May 2019 17:31:29 -0700 Subject: [PATCH 05/13] put everyone's code together --- bin/.gitignore | 1 + bin/Game$2.class | Bin 925 -> 773 bytes bin/Game.class | Bin 7058 -> 7169 bytes bin/GameGrid.class | Bin 3398 -> 3645 bytes bin/Gui$1.class | Bin 599 -> 599 bytes bin/Gui.class | Bin 7619 -> 7668 bytes bin/LevelMaker$1.class | Bin 644 -> 644 bytes bin/LevelMaker$2.class | Bin 651 -> 651 bytes bin/LevelMaker$3.class | Bin 642 -> 642 bytes bin/LevelMaker$4.class | Bin 638 -> 642 bytes bin/LevelMaker.class | Bin 4455 -> 3560 bytes bin/Trainer.class | Bin 2303 -> 2459 bytes src/Game.java | 13 +++++---- src/GameGrid.java | 7 +++++ src/Gui.java | 10 +++++-- src/LevelMaker.java | 65 ++++++++++++++++++----------------------- src/Trainer.java | 14 ++++++--- 17 files changed, 63 insertions(+), 47 deletions(-) diff --git a/bin/.gitignore b/bin/.gitignore index 7ad6bd0..4e3fb3a 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -4,3 +4,4 @@ /Gui$4.class /Gui$5.class /Gui$6.class +/LevelMaker$5.class diff --git a/bin/Game$2.class b/bin/Game$2.class index 1b94b7e78b4ad8b42b768f5c408fd9c04c8be4bd..5eb11dbab26d4fa0a424710d4ec9c0e40a92ac40 100644 GIT binary patch delta 322 zcmXAjxlRIM6otS42ORQe5?m47kP(%|9YqbbF+^-_XdG|~V+;{0ViX%2J2SN}U}r*< zSoi=oK8WvNyaV?pcRT0YoEPhH#C-pKegP#8pUuyaAw=9}f=NSy8H=PMeC%F(HnYqr zqHd$%wcDAZB9^TNKsi@Ebz7Isav)f+NwMg^DyQm@u~-ttiPxz&-PVQ8GAjzzQs`R6 zkR@-CQ$z-Gn*wW!(3RJbQ?^#godpj!Y&O~Q6Z%H&`%n5@-TJ>e)vco?!O0gsn9BDs zeWr(PzDN3<)nF;~S$`9jCMI>9u+%#u+>@kBng>SZ5+8nIOc+5pY_o${p(vYXmp$oW OF;n6|CWDF!Jcxfq+A+}p delta 448 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 VH%ok=j;a_(!OdZg^7n`{{2vAR4i*3a literal 7058 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 F@Ou#}{D=Sm diff --git a/bin/GameGrid.class b/bin/GameGrid.class index 592b04f527ba4fc16acdd45b093d0e87f50b65bf..bdb5ceabab39261e6ee7e91b4a4e5df6c692e7a9 100644 GIT binary patch delta 1604 zcmZux+fy5L6#jm@n`{V6NwI|rB+YOskV{i21?{~Bs$c??RthR@14&CDBoxw?sueF) z6t%7XyxXgnqIR5t>I6r|j!!=5lP~I9{{UwkeRtGv7btx&oBi$Y@||Mdq;0z;^7ASA@^COF#*D&CNaL=3e=msB<);*+2{S$pWRq{xI5fw94(uI`t8R z3nT`h0y!C?bO za8$r?ERjrh#RoD1dUY#*HQhPrLcf6lbepdik2%qUxPfChDx>N~F)S~t?o~tJi>*Oe zM_Qm*Ueb!4PNZw)e`AYOUJ&JiGlcNCXr6*cv-q^rGY7o=y+A&{$)@{{}36srbbU@4rIpSQ6_O3 zubZLI%O0ECF^!7`-oTsktZf4q6HZKFLf*7}>AGRyI<7h)@R@-txGD$jZ6a5GW%rAK zykq}saxIVYStvK4!N%uib;k_+-=Na>HQZ|5?Wy7OJC|1Gyg@Vf*J^cct>c^`N=vT) z`^y~7R1|P5hTR%%D8YRwg%@u4xLb$yTm$usA-M8##b9Xg!z8C*69SwmgcTvknM#Ng z8+mIeCsc>>H*BJc;1D*+pY^86+66TB&f`IM7F!E;X0dy%##t6kSv<7D$wO11jLgcB zhf1>9fGSj@mgU|-b}PI(@AB$IgnLVLhCk*j7lF(7C}u)$7;0$opQ!e)385_ zLw@%yxCTqjfj9qI^v%HIzlG@kpT?v;$JexxqJ$V^6ADSnO|fbzOg+138{4;oXMGHv zz*dW@k9vT`v@GEej$=@c=Y)n62ruRGGSxFt6$=>Z_0J<2SwN~cFptsppf8K@U>2tX zSv)xdEiz}l=6VYB)KU`5;GpeJuV7*yYM|k zJD<{@#aqGIu$Z-2mZM^YWz3@4M*m@kjxew7@KCNY=B$DpU5SJD2v!A?uF0kZZ{r=h zE8z7m-XpVOivK>#ZIQSgB4!d7_y8YDJ$F}C5B>I9z6yy3k&EJcxVnVPL@HKmjpXhR z_A!}<>F)?-J4_CJOlJQ*Jj_n;(g&F4Yx4KpkjnOyZX?_pM=n1(E~c{(gDistamQJo z!)%PCLz@=mg~$lis|deA5BH^Z49Ce(@h5xf{v= delta 1469 zcmZvb-BTM?7{;HI4J_F%lu}445NHE5pOBVTXr&b?LV*&(heEO162cZj1B)S)RxK1i z>-WdeR;_K-aqKvbGti4LBcszR$MM4PKXAr-o$H~gELLCXLrwe&inq}=e+r$ z{HIdwm;2xU2%rI9u4qmnP2oJ|gS^<}Awz;-z2*G6y`*iF_z5G)I3J(g{Lc6WW25YiWdTsT2 zAsp862%2QfR=wvanpHe1u=4@Ybv%X^`L!*iDJgTFAaOG(f3tbYJ8?oqmq0;wQ*1sR zZZ(r;N=G*$vOsa?M$xCDSMFDwNv#r3@++k-G%B!bldnCIG@^6qnYj%MG{i8bqZlnJ&I**u-|eOQ zG#Hq$CKCb=`Tlcm>%J!cprtyeBZ(>5VfXDaVCtAbfj~|?Y0er}WK+egykcLDUlJ(Z zL}-h)w_S)EGwFmmtzwY}u(@Kvbxv<#Tfmr#7YVVch>lLO^8aa;@Un&aioBlV&RfE3 zIK?f_OM4hw7yFAI$Vv% zU?l^3(aI+qwOx3ePYQRmqK!{>RB=5IwtMgj;h?%5$K_3jzo8?8o}l{<3Ma~~ffs)n zJaHQp!8NUiMgR6)~)?f^WRx#dF8^~a?HiPL<2G8DxJ+hK5u#!cmHjMGG z9H0>n9HLQ&;o?7~jF~HOgsP(~xEVXC2(0Je{BFKs5!Fazj^P}{K970&RYacxxWK@c zODb%mD$`JK5zle?c~087;e{;qtqp4L8Wx5FtGL{~h9wLCr3hhPy$jL9`y0Uw-mG2j z7Ry=iDrQ{=9|!3y@>a%gW9oJu>2V%x2j@E}JAoQRwvc8w`0V-&Jyr z6$`37q-7IQ>&7SYn|zP*DXz<3^J}_33(&!v!DT{P=K)?;YfNAV8_0=C7JqI_A?^*B P9niBO1;c-y-TTGAxdj+K diff --git a/bin/Gui$1.class b/bin/Gui$1.class index a595f0954c5b3cad82c91dee59b8f8a1158a32d9..e7fcc51fc9ca2142123f802a61869ebf0cc2be3d 100644 GIT binary patch delta 23 fcmcc4a-C(vB}PV%$(I@JS-lz98GI&-GdTbNVz~ym delta 23 fcmcc4a-C(vB}PW4$(I@JSzQ^}8Qdm|GdTbNVhaYQ diff --git a/bin/Gui.class b/bin/Gui.class index c42129fa476c6b6e963b7806757cb81406a36c02..aa1aa7f3af4a1b23bab1979cf1ec56107bfb9b09 100644 GIT binary patch literal 7668 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 gc+-4&gyXwQgm0P`l@*-U0(r z#62o;H))!sHEn{4tt~{}ppzP6n%btDiLFgc(loJax+STmyY&B^d*3!oO!@uhopZnQ zZRcChIeh)SmtO&JtvqeR5=_{fjoGLWR3CDWxPwjUqp?J9)7DKXx8D;?+UzB^XZr=x zCJ6NswmB8+A=SQp1lWfnZnqa-CYT;6qc-4XQXFcJ$9lXJF=muw`0x^x^)s zxYaP@Y(lKRS5RsAG`UAJO>O;duSXV>y0e)~GBHZVMgt~-?IWm&t#Q?OC5hI=60yuW zvaPG%EvRTo_IP1Tz+4BjFgpyvWezUKY{67TY)SSHBokgDlMbO)FmIciiY03|rjqGe zn#jwVVOL%lZx0mX0yOm3IBpG$%yD47317JnwU@T3l2%V`0siS** z)^jJ5|1}P5galSE4LC8Aa$||fScz+GtfE2Hb4|Wd$I=!E~E8Lxp#d{*&5ihRB-|65c+$;#w_`752n6Yw2U03~X8yy52#BFY$s@$$Bw_~S` zy@7&-gz*D9j6E~c4LGR5bQ>uyGd3123*#^{x}0Tf)|q(GK#Ad~ zgFze`NiA``;H4EPTBV6xv0<3XI#&3!~LYm98uoKg=x=HPKW;pdz3ppQy+s1WYR z##7Awf~=NgJjn=n63?iBk7|;&<@x=RgOB5vsTtMZluUWOsbn_6Dp^y))zF)K--Ay& z_>^w9hWOjuL&;P}EZWyT;6_;zRKH(w@T(e@#bqn1N!3}ztdhSc0i;2u@KHPFs@l#yDghBuB^S8A)-q!I~X?QfeLqc zgQWZ&Zdt3T@ALHP+G|4iGM%$CIgpL}#9AH+xA7IaSe=tscQb815OI&OYH37$)xq!L zYvkAKv34gI$TU}iRbpmceX)b+im67;VO+p#>e=5fhK`0<5ko`g>-ZxZe;A~+=|P2c z2Y-w|5lrT0d@TfXOWg0nwz&zmtdt3Z3wYhZH}Fk{LDZzpPB-Po<6hkCL{J|nI>rVU zm7!AiKf{|g{#>wl9E+3_IQR>EOW-im3vErXwnW`|B_nZ{fQ(z9U#Lo(>!0 zvED>K9pT`6_)BJAq;jQ ze=S%)rVTXD$JKDOEB@BO-{J3>h_r9u%Pr$8Y%qRdGi#Xs$iYA2pBRJ;wJkhx9M>Su zM@>+w$FgN0iD7&J|Ki|Z@niN(KlIwY!&y2eR$$ZkbAoRKGClKCykq0v1Xqsd`Vk~* z?RNzm|Nqt=!N|z|cV+hUW&)Mz$99*{@1~KxX8mU zYs!Xb)JvPgf~hWp>>+|hl= zi&A^P3zQzl!!i|#kSyeJaxv$!$dSdegjRG120ZQOSC{h1pWsLF3HDDf*RfBRw>@%g z&>c3??D-V%4yX`jbx+3v^= zO;0_#m8ct*n^Zd<+@=*H-VlbRLzqarXcM!N&BWqO@nmnWUc)0CH6`}QUV4kNe1Kr- z_>njUgXYQ7CAZkJFQ2XDI1I12Be%+J+w2CtjdT$!+?D>#wM^pZ zBB>{Kk$W9+WJ-~oS74C`99dcl0WUNY_-5zuZz3k~ z7y6*XUrV14%*fXUGx8C^jC?{cBOegV$mau&KozRZ$Y%jF@@~%2(wjL)hm!dG#osyn zYNu4;IHzFOjCI3bqIflljty#&c*Ya-3?mynq}Ra+6mWPBVS%fD`GkjMCVzvAm%4 zV8C*TBwEYx~gG94m*a?P8D`l2A9)t zEBLsxvcyzXfgDR8AjyWlsAyF=bkw^I!`MS+o#)WS=`Ebzb`JZCP`3z;7NK4d+RJII zv$}5x{pXNucoE5A9PXqC(m5RQ*N&UDJBloF z58;s<9`!*_c2?oygvtX$cshrVDXcP_!zXk?6MQ-tpVg7p`E?zKaawtQK8G*x(;dy0 zpiykyJX<$ltD~}Y1GXf3LD~Mc&(<5wmY`8=y*yhlV5_6D^#ZmeI-_jA=(F8#*uGd% zInx*+N6h`zLpi*}NwoS)!DKX2Z}ltwTJPw!6Jvlh`Cb~vh0cZ?ULC^kMRa65|3M>v z{#2#r@J8cVd^?Bl^Q+6Us_wd&!w-WM4sHo3N@Rk(5>T%XN|u1`$j@{5n;iZ@CH=GV zu6)m`d@qNe_`H8s!dpS)t)M(_1(COc^1Kz4=lzo${*#~7{(ou&IkEUb4*8Fq*oCB# zh1kNZTFuARW+vzwmd3SA)pdNbz8)L-n!JO*x1kMvd?`M{6uqBC>|yNUd)sclPVK?V z*o#-u$(Niid=vZd1Kf^x;7SPHQiZ6@L60neC-pcWA4H$r$d}dq=$C^?$N-Wuhygi? z!}1u8%4aYr&-2anMI4vc`2P7i?vS@}r~C{j!PC}WJY((0N3A}5%sNV(lB zdJfN7FXHpoFuq{DhUcv}i1#MWT5scv){l|1-oa3@U|H|_g@l^?NWyXnONph;&@U;7 zvW#idFVoM;1B?n&kR?MQ+Vf7Gm+LxLSG=-r!rIeV zIHzLX@<@$b-q00h>MwHZ0N3A@R=3fiu(z?1?KSZpJN=Fyk$ZU4;)wDrk7?_&*E4>uh%4z6I_d0Rj#45h0Y{9pfMc?MD$6L4+-@yRB%l|p}9`42u@d)3yw6Cu-P4kpwB+IXA z%#tH=l-5~=N*R=6oVA(Ran5cvvk!50*v#(WOq=IYgf8+wKKKA~Cr@CuoB-xp7uoAL zC&ZR`yDbU+4e&2jSs9X(ayM!9c(Q~cs6jZXp>as=DTd}Gt^+R_9l1`L`^KiZep^CNIbn+|5rpK1us*ASbcXJux?RvMu8tM(@eL80}g87}y#7C)+VO008E03l;zX delta 33 pcmZo-{l~Jwf{~RaCqFS|vLoXjMvuw=80}fT8Q2+oCOa`X006Nc34s6r diff --git a/bin/LevelMaker.class b/bin/LevelMaker.class index 2c4d15eadc295936b6a0aa061e062d1cb6a3cf6c..7aa4962b057b35f5b59e7f71f223bd4e5d04b9ef 100644 GIT binary patch delta 1115 zcmZvb*>4+V6vcnzIQDolrin|Ex-2TFgv3q=Z4*js7AcWhwRKTc3c(E(Oq(I3N$lVy zg@WV<1TQ=e4d)GU+^ zjW}6%+Q2Nh+3_Lg@Kl&{22DFllM%Z3z$U_n%E!he{w(KhI`~**-8$&G*FSpPVwumw zd?s3dJ2n^m3gH#&E83#&iPEG&b6TJ&-OOr{ex={2Z7egWR$rxX)BZ)uTe5}&{N(*< zWsQh8-O}6KPKXZg#g>Wobp(mh#u~1rl_YWcS?|T|^P8@rg$>-mb!?)W6g}+bX6{jT zkj+f7g&YGs!5~lStv09UK9b=$!_Ng*&!^3rDnG#*+Vb;r1WmeLyRfCU+F1edNUbb?pGE0M2S;7#|L%gdfAgB?}C~6W`iW;V7G=f|!s=qCuB&4Ov!QE^hP}uoF&cdF zFY~BseCEy?%UbD|>12hkR*AN)GR34B&2I7tHhHb8a2ZQygT<7RulWYUTWGzhJg4fT zmsLd?Rp{gXmhUiHO}^)c#umC7T0)6rl^<7`L%N4;bsS%7fS>F37k-sbXahUs{U@{H Qcz(ru544%4e*gOOH`egycK`qY delta 1957 zcmZ`)YjYE27(H(;-R)+3A*HQI!AvVyl0c*&BEeB8Qp>b}fM$gH{EBa!HUPqKKDz$GeDk1@CxQMDXlxDrE*g zREEy(KL}uks2NbUm3ciWJr*|)mDNvEFc}Z4=*Mz_imYbL*E3ooqvz6b8IKB-wQ6ZY z%gER&;8~_+4H=J{Nhy-I0OsZlLr)7-X4mNJ=OdRu9KzEKO|V>Q5g6TEQa4htf&*w|2l_I4Z=WIH zALh2G^G;E`j+bh#b*?WgCd#g@wkax|>*4YR%22o4dR7?UPvc5H>M2kxMeHg9xPa_OaVWIo`tu65bc6 z9x;eJvxe5I;ut<;mY!oxCDBy1*h=H5v{)}^^N~RPh(x>Cxw&L2u4NQ_g3qKpKD`jz z4pH$rzM%MZu~bf5w3_(M?HBFraWu*}A>axJ6dcFbD!#$DtSr{o$F2xW{(l2GBXas* zk`%QtzE|;sHC5Tr9mgp+g`Xw-G;FgAi&XIrnq>ScASmG!epm4anyB6GUy81F$1)kN zY(8VS6V|gw##sU`$!jUC#|T*V2^e}{5oIe7G#du6i_Q@)Rk$rVRW#Y0RarfiGqlAq zV-1Hays9V@l7P=LAl>DdaQsDUZlmihBSa-pK3oY~;7deq*wCZ(8A&~DE|6PYqRPBq zP79xTRt|edqYSlXq&!hu4-YCZ3RM`7YJ_kJA{b+CEk8W90X~ew1fEaj8m0FZ@TcGw zOul$5QV&HwTG%Uo^OfY=82Ji z75RJ6fVjt5Auz@HQ#R>FJ{odAsQCEWqm0JooH=MBUf+qiGl39mMgj;MkUi zDf{qo5nuYhD&S-R-xcuVW|wFPx?2uzId_b4{$C3CZL<(#gFHB5Npjm$8V`y41hLn! z+$65xvxRP%#j{qVZFzZTJoE4;{$j8Tb8s4eQ=dcwp5e{~ljoK2oPk%Ifk#|+8h+ky z`L9tAFvb$!6!ia7z`2fKs362X;n|B&KRlhotqK+~eZU6xqgKczjY}PocaSejTm!Yp z(NgPZ_4S<9h7mn%D)mreZ>@0&TUiZU=a}S@ASC_?@T)4r3{_0=-VGV|n738bbqGcH xAgX1diV9{~E}KZr)^N*$p`xffKgBZM^PksdweDS_+FnNqKc9{8n1?C?{{kLF$7TQk diff --git a/bin/Trainer.class b/bin/Trainer.class index b2416758c7fe78796c97a5950ac59a5c6c5db31c..567707f42e54add4f1996211064448367741d6d5 100644 GIT binary patch literal 2459 zcmZ`*d3O_49KA0|J82kb=mvycmL_R!6$%KHVxf!Cv;|TF0k>&7qyx!JoJ>j!D(<`J z@k?<06O@!=&++)L9{nbM2KBy~X%^6&)4c8Xe((P7z3-*J|NZkX0FL831pxtN-qs9L zw-tm0qBpc6V5^D_L?FBuwe~P&P~-<+Ry&=hy45* zVMY5??8h?#?W2DAN_--fN+q&#@t}%BP|0G&(QGGzek2sc1-ctJ>seJKWoT!aj5--d z%ipAEc`_5y>;e_&{tphQizCpH_T{Axf*X39$f~F3+GaQFj8=BpRWKMq5F--5Dz!PT zLP1!;3$)0SPKe+HPRU57X_o~ivU1BA6>VrIL}$q$M730PG)dwm%^?mkLGjC0Ib+=B zsKcz5Qf9g8Ffh#iyl1SST{UI)DM{5dQ^lE^5e`k0(Ux@uFK_VWYBp}$+G^UUkj)fE zBACIPf>}DNL8+9!pxY`g;35$$YsIQQcU{^jm1v^I4?8UrWmL@LReD!jBLn9m&xI*UbVI2tnS>h?3)o}k(0Dcci*J_02dj-{fEx2aV@cU(BsYFpeVt(AV4wu%Y|Rpw>9 zMAgEtPn?2V^o*pZH6K9FXTc#C`y zLh%XdlAvajF~6QC@G+dPnN&$WH!ZT!#C@&L&1!k$$w_+BwBWu{39;o5KeS~KQYdHLX3A?y`2Oqegdqm8I z7iK@g`Au9=5o5|doRP=w^U`7fgB*2ntLg&>BuY!f2!FE~W;-gjin$+nG1!LKz{K z%z!Zhke?XN;zj0{y>XWh**nLc+#kbv_S(2UQRlftxB;&9B!9vv|Blr#NopiTE;S$l zTk6#Gx##WS++NP^M<=W4#z7ZLpO?qS(&>{STr&7WKI;?k5|8%el5}`d{YFNmRJnDe za%*@cJrKR~80i`=T^@*b_`P*xb8Tz5GBX&BKg87<-WqK8+lPqOu=o&56x0mXVE>Ag z*DTktQo}ovNl)CvbPOn5n4)!&wOy3#5Jejz&f_?OGdPMX7;!7|gwFXDg>exd;v<4S z#PyHy3CsADxuj#gwa?fS_`J^TJ-@7kNE6{>e38D7&*6y9%s?F5&;sbd>p0_hXcFqwC?CfwYz PC>h`xOW+ literal 2303 zcmZ`)Yf~Fl7=BI&*(6;ggiA|XX_Z2gLW!MLYz10rxd;Ym4bswjTb6BDNOt39LyJ{g zFCYBm2meIJkHwkLkr~IYI{Hui4dQclmym#FCfT#^c`wiVyw5rLXiBA* z=zPmwHKI7iv@1s09kQ$#1X@%yBO=h6Wuf^>am8>JwUvS)v)Z~=SkfF*z6Zw0sFyR2 zCL~oP5M^F>%`6MVvH@7u4i^bqpeyy@C^88pKKWQTO0H>JWd+>=JqP$_EZ1cZvlbK0h%fYR_=_E;Tv9BnIWmPyE%@6HTjl7c*>6Tcuz-Q*~|&E9-{t zj->A^c#o9K8x=<@%p2|_+u4X?7IU)IYcVX~j)L1%&A9HGo0^=qiuaKtf}EKz+9ngL z*@I2ioy7+#mT;HtvTjz}G8__{nyL3nFG;^;75DLgyp>7GA%MYIN-xFm5k67yal;|Z zZIxZ4sNz$Q>L$Cwkq6_Z?r!^X;V~_GaC8-`VE$O%a6LGb&hb=0S|j})ZFv=IFqxPB z5>*4g0dWd8r~^rxZN;$;VzFS86~^2&HCEukpNQi#@RYHCf7XrQRJf=x#FKY{XEvOg zkosxT97Y8F9KuI;3RF%>UKC{m@<2DLbg zuT(t6Gl665Ys#^UQ>MJ0dh4aMKdB>VJhe|2$_$9-?24lsezY1~Rzp(UJUQ%`_b%lk zZ$qvWuH=^!<6A$U@)JqMe}?*ks}Nq1@1Fe}T0M)5=ZzS|WcZX(%@=mib~q&Bg{Zy* z+R;JB7&_6##K*ag63z*n#A&bm_q0lQox2drJLt&{RB`4xqH}{)y#9hoqEMNzmrfGZ zNw0$_t#R6qaYr7c78Xf*WzYJ_a2_eIR14DFli0(!fB_a8q`e)XJ-UY!TvWIz6!eDq z9I7?=Bg;rsXLgZU?!cu)ybV9?;Bs~#Ib6kC_4pEOtosnYF4jBY*}HMdYqbYGb@d`P}mnyPsC8^-*{dKHB#N^-nD_x*uhqGUHo zeovFzKC(JQUWdu+7%t)--=t#vIV=Z#MsWw5ctp^BxPr&nVjG{+ONzwbd%~5#7qtQW z5VVyRSt5LiFSE}Po+C`k<9}fCkAVPH!t&vEQSQJcS})Ung(A61(APY8Qi~vbU!5T~ tBteM-ai{_Lvy%MNQvF}ounjO&s$U#d{&g?6uY6ufp7I60p=$`={tHs9-2eap diff --git a/src/Game.java b/src/Game.java index 726d8cc..73fa940 100644 --- a/src/Game.java +++ b/src/Game.java @@ -20,7 +20,7 @@ public class Game { private JPanel panel; private Mario m = new Mario(0, 624); private Keyboard keys = new Keyboard(m); - private int[][] tilelayout = new int[13][14]; + private static int[][] tilelayout = new int[13][14]; private String[] tileID = {"AIR", "ground"}; private int offset = 0; private double fitness = 0; @@ -29,9 +29,9 @@ public class Game { public Individual indiv; public static int me = 0; public static int maxFrames = 50; - public boolean play = false; + public boolean play = true; public BufferedReader in; - private Timer repaint = new Timer(0, new ActionListener(){ + private Timer repaint = new Timer(15, new ActionListener(){ public void actionPerformed(ActionEvent e) { frame.repaint(); frames += 1; @@ -61,12 +61,16 @@ public void actionPerformed(ActionEvent e) { } }); + public static void setLevel(int[][] nl) { + tilelayout = nl.clone(); + } + public static void main(String[] args) { new Game().start(); } void start() { -// System.out.println("THREAD: "+Thread.currentThread().getId()+ " "+getFitness()); + //System.out.println("THREAD: "+Thread.currentThread().getId()+ " "+getFitness()); makeFrame(); repaint.start(); } @@ -118,7 +122,6 @@ private void makeFrame() { frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); panel = new JPanel() { public void paintComponent(Graphics g) { - System.out.println("yet"); super.paintComponent(g); m.key(keys.r); draw(g); diff --git a/src/GameGrid.java b/src/GameGrid.java index e81f726..5ee9677 100644 --- a/src/GameGrid.java +++ b/src/GameGrid.java @@ -22,6 +22,13 @@ public GameGrid (int cols) { } } + public void addRandom(int num) { + for (int i=0; iGreen Squares represent blocks, black squares are holes"); private Dimension DIM; int[] dims; + public static void main(String[] args) { new LevelMaker(); } @@ -26,6 +27,8 @@ public LevelMaker() { private void start() { dims = grid.recommendedDims(); + + DIM = new Dimension(dims[0], dims[1]+50); panel = new JPanel() { @Override @@ -68,59 +71,49 @@ public void actionPerformed(ActionEvent e) { } }); - JButton loadButton = new JButton("load"); - loadButton.addActionListener(new ActionListener() { + JButton gameButton = new JButton("Play Game"); + gameButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + playGame(); + } + }); + + JButton randomButton = new JButton("Random"); + randomButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - load(); + grid.addRandom(7); + frame.repaint(); } }); + JPanel subPanel = new JPanel(); + subPanel.add(gameButton); + subPanel.add(randomButton); + + label.setForeground(Color.BLACK); frame.add(label, BorderLayout.CENTER); - frame.add(saveButton, BorderLayout.WEST); - frame.add(loadButton, BorderLayout.EAST); - + frame.add(saveButton, BorderLayout.WEST); + frame.add(subPanel, BorderLayout.EAST); } - public File showFileDialog(String prompt) { - FileDialog dialog = new FileDialog((Frame)null, prompt); - dialog.setMode(FileDialog.LOAD); - dialog.setVisible(true); - File file = new File(dialog.getFile()); - return file; - } - - public void sendBack() { - Gui gui = new Gui(grid.getGrid()); + Gui gui = new Gui(grid.grid); gui.setVisible(true); frame.setVisible(false); - } - - public static void print(int[][] arr) { - for (int r=0; r Date: Fri, 31 May 2019 18:19:49 -0700 Subject: [PATCH 06/13] stufzz --- best.nn | Bin 98251 -> 98251 bytes bin/.gitignore | 1 + bin/Game.class | Bin 7169 -> 7169 bytes bin/GeneticAlgorithm.class | Bin 4464 -> 4790 bytes bin/Gui$1.class | Bin 599 -> 599 bytes bin/Gui.class | Bin 7668 -> 7677 bytes src/Game.java | 4 ++-- src/GenerationUpdate.java | 30 ++++++++++++++++++++++++++++++ src/GeneticAlgorithm.java | 10 +++++++++- src/Gui.java | 9 +++++++++ 10 files changed, 51 insertions(+), 3 deletions(-) create mode 100644 src/GenerationUpdate.java diff --git a/best.nn b/best.nn index 07255c8e1ccd10bfb44bc53e3681d40d2015ff9e..e483a6f516211c63721e1950aeba55abf4fd56b3 100644 GIT binary patch literal 98251 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 `+cPV86)q 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 diff --git a/bin/.gitignore b/bin/.gitignore index 4e3fb3a..4b5b9d0 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -5,3 +5,4 @@ /Gui$5.class /Gui$6.class /LevelMaker$5.class +/GenerationUpdate.class diff --git a/bin/Game.class b/bin/Game.class index 02aece1b9db36cd681bd4c145034eb34fff0a613..b454768c8d8d4177568dc2f3997e60fce84b5416 100644 GIT binary patch delta 20 bcmZp)Xtdbyh>uZZ@?*XUjLe%$_y`|@?*XUj4Yc=_ diff --git a/bin/GeneticAlgorithm.class b/bin/GeneticAlgorithm.class index 3ab13eb59965b5d2ba159fcef2d437f0aabc25e2..8f5668c85e7db4e92b347392e20731dd81f0262f 100644 GIT binary patch delta 1377 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 K@P*MG(fAkUpQmF0 diff --git a/src/Game.java b/src/Game.java index 73fa940..8a704ef 100644 --- a/src/Game.java +++ b/src/Game.java @@ -28,8 +28,8 @@ public class Game { private int frames = 0; public Individual indiv; public static int me = 0; - public static int maxFrames = 50; - public boolean play = true; + public static int maxFrames = 20; + public boolean play = false; public BufferedReader in; private Timer repaint = new Timer(15, new ActionListener(){ public void actionPerformed(ActionEvent e) { diff --git a/src/GenerationUpdate.java b/src/GenerationUpdate.java new file mode 100644 index 0000000..1e88e25 --- /dev/null +++ b/src/GenerationUpdate.java @@ -0,0 +1,30 @@ +import javax.swing.*; + +import java.awt.Dimension; +import java.awt.Font; +public class GenerationUpdate { + private JFrame frame = new JFrame(); + + public GenerationUpdate(String text) { + JLabel jtf = new JLabel(""+text+""); + jtf.setFont(new Font(jtf.getName(), Font.PLAIN, 20)); + frame.add(jtf); + frame.pack(); + frame.setVisible(true); + frame.setTitle("Generation Update!"); + } + + public GenerationUpdate(String text, int height) { + frame.setPreferredSize(new Dimension(400, height)); + JLabel jtf = new JLabel(""+text+""); + jtf.setFont(new Font(jtf.getName(), Font.PLAIN, 20)); + frame.add(jtf); + frame.pack(); + frame.setVisible(true); + + } + + public static void main(String[] args) { + GenerationUpdate gu = new GenerationUpdate("lol
lol"); + } +} diff --git a/src/GeneticAlgorithm.java b/src/GeneticAlgorithm.java index bb9fb66..9b25451 100644 --- a/src/GeneticAlgorithm.java +++ b/src/GeneticAlgorithm.java @@ -4,6 +4,8 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; +import javax.swing.JOptionPane; + public class GeneticAlgorithm { private ArrayList individuals = new ArrayList (); private double mutationRate; @@ -92,7 +94,13 @@ private void main() throws InterruptedException, ExecutionException { } individuals.get(0).getNN().save("best.nn"); - System.out.println("Generation Score: " + (mean / individuals.size())); +// new GenerationUpdate("Generation Score: " + (mean / individuals.size())+"
" +// +"Best Fitness: "+ (best)+"
" +// +"Old best: " + (oldBest)); + JOptionPane.showMessageDialog(null, "Generation Score: " + (mean / individuals.size())+"\n" + +"Best Fitness: "+ (best)+"\n" + +"Old best: " + (oldBest)+"\n"+"click okay to start next Generation", "Generation Update", JOptionPane.INFORMATION_MESSAGE); + System.out.println(); System.out.println("Best Fitness: "+ (best)); System.out.println("Old best: " + (oldBest)); System.out.println("Order: " + (individuals)); diff --git a/src/Gui.java b/src/Gui.java index 459b9b9..4df3382 100644 --- a/src/Gui.java +++ b/src/Gui.java @@ -27,6 +27,7 @@ public Gui() { initComponents(); setTitle("Mario Bros Genetic Algorithm"); setSize(600,400); + } int[][] gameGrid; public Gui(int[][] gg) { @@ -38,12 +39,14 @@ public void train() { //System.out.println("LuL"); //double mutationRate, int popSize, int numInputs, int numTimes // GeneticAlgorithm ga = new GeneticAlgorithm(jSlider1.getValue()/100, jSlider2.getValue(), 169); + try { double mutationRate = ((double) jSlider1.getValue())/100.0; int popSize = jSlider3.getValue(); int numTimes = jSlider2.getValue(); Trainer t = new Trainer(mutationRate, popSize, 169, numTimes); t.start(); + setVisible(false); //new Trainer((double)jSlider1.getValue()/100, jSlider).start(); } @@ -232,6 +235,12 @@ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Gui().setVisible(true); + new GenerationUpdate("Multiple windows will appear once you hit train, " + + "every generation there will be an update given on how good all" + + " Mario's are doing. In the multiple windows you can see how " + + "Mario is doing and learning. You can also create your own level, " + + "after creating the level you can click the Genetic Algorithm " + + "button so you can use it.", 400); } }); } From 44c9677f6fe4045c1d903a88ab2867afe0383eb3 Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 19:59:49 -0700 Subject: [PATCH 07/13] Fix Bug fix --- src/Game.java | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/src/Game.java b/src/Game.java index 8a704ef..5be40cb 100644 --- a/src/Game.java +++ b/src/Game.java @@ -5,8 +5,10 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; +import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; +import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; @@ -28,8 +30,8 @@ public class Game { private int frames = 0; public Individual indiv; public static int me = 0; - public static int maxFrames = 20; - public boolean play = false; + public static int maxFrames = 10; + public static boolean play = false; public BufferedReader in; private Timer repaint = new Timer(15, new ActionListener(){ public void actionPerformed(ActionEvent e) { @@ -62,7 +64,20 @@ public void actionPerformed(ActionEvent e) { }); public static void setLevel(int[][] nl) { - tilelayout = nl.clone(); + try { + BufferedWriter out = new BufferedWriter(new FileWriter("data")); + for (int[] y : nl) { + String s = ""; + for (int x : y) { + s += x + ", "; + } + s += "\n"; + out.write(s); + } + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } } public static void main(String[] args) { @@ -140,6 +155,10 @@ public void paintComponent(Graphics g) { String str; for (int x = 0; x < tilelayout[0].length; x++) { str = in.readLine(); + if (str == null) { + in = new BufferedReader(new FileReader("level.gg")); + str = in.readLine(); + } process(str, x); } } catch (IOException e) { From 0fe721aca39f77eff46e9ce1c18e1d334a002b4e Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 20:00:51 -0700 Subject: [PATCH 08/13] Fixed Play longer harder faster stronger --- src/LevelMaker.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/LevelMaker.java b/src/LevelMaker.java index fdf2843..6a505b8 100644 --- a/src/LevelMaker.java +++ b/src/LevelMaker.java @@ -89,9 +89,8 @@ public void actionPerformed(ActionEvent e) { }); JPanel subPanel = new JPanel(); - subPanel.add(gameButton); - subPanel.add(randomButton); - + subPanel.add(gameButton); + subPanel.add(randomButton); label.setForeground(Color.BLACK); frame.add(label, BorderLayout.CENTER); @@ -101,17 +100,18 @@ public void actionPerformed(ActionEvent e) { public void sendBack() { - Gui gui = new Gui(grid.grid); + Gui gui = new Gui(grid.getGrid()); gui.setVisible(true); frame.setVisible(false); - Game.setLevel(grid.grid); + Game.setLevel(grid.getGrid()); } // grid.addRandom(25); public void playGame() { Game game = new Game(); + Game.setLevel(grid.getGrid()); + game.play = true; game.start(); - Game.setLevel(grid.grid); } public void setVisible(boolean b) { From 887bcf5a4adc2cc9f35efdc68e581b879a1256d1 Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 20:41:51 -0700 Subject: [PATCH 09/13] User Friendly --- src/GeneticAlgorithm.java | 33 ++++++++------------------------- 1 file changed, 8 insertions(+), 25 deletions(-) diff --git a/src/GeneticAlgorithm.java b/src/GeneticAlgorithm.java index 9b25451..39f5c7a 100644 --- a/src/GeneticAlgorithm.java +++ b/src/GeneticAlgorithm.java @@ -4,8 +4,6 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; -import javax.swing.JOptionPane; - public class GeneticAlgorithm { private ArrayList individuals = new ArrayList (); private double mutationRate; @@ -52,14 +50,12 @@ private void main() throws InterruptedException, ExecutionException { Individual ind = new Individual(numInputs); /*/ try { -// System.out.println(ind.getNN().getLayers()); -// System.out.println(NeuralNetwork.getFromFile("best.nn")); - ind.getNN().setLayers(NeuralNetwork.getFromFile("best.nn").getLayers()); - } catch (EOFException e) { + ind.getNN().setLayers(NeuralNetwork.getFromFile(System.getProperty("user.dir") + "/" + "best.nn").getLayers()); + } catch (Exception e) { e.printStackTrace(); } - /*/ -// System.out.println(ind.getNN().getLayers().get(0).get(0).getBias()); +// /*/ + System.out.println(ind.getNN().getLayers().get(0).get(0).getBias()); futures.add(service.submit(ind)); } firstTime = false; @@ -93,14 +89,8 @@ private void main() throws InterruptedException, ExecutionException { } } - individuals.get(0).getNN().save("best.nn"); -// new GenerationUpdate("Generation Score: " + (mean / individuals.size())+"
" -// +"Best Fitness: "+ (best)+"
" -// +"Old best: " + (oldBest)); - JOptionPane.showMessageDialog(null, "Generation Score: " + (mean / individuals.size())+"\n" - +"Best Fitness: "+ (best)+"\n" - +"Old best: " + (oldBest)+"\n"+"click okay to start next Generation", "Generation Update", JOptionPane.INFORMATION_MESSAGE); - System.out.println(); + individuals.get(0).getNN().save(System.getProperty("user.dir") + "/" + "best.nn"); + System.out.println("Generation Score: " + (mean / individuals.size())); System.out.println("Best Fitness: "+ (best)); System.out.println("Old best: " + (oldBest)); System.out.println("Order: " + (individuals)); @@ -145,10 +135,10 @@ private void select() { // theBest.add(new Individual(m1)); // theBest.add(new Individual(m2)); // } - for (int i = 0; i < initSize / 3 + 1; i++) + for (int i = 0; i < Math.round(initSize / 3.0); i++) theBest.add(individuals.get(i)); - for (int i = 0; i < initSize * 2 / 3 + 1; i++) { + for (int i = 0; i < Math.round(initSize * 2 / 3.0); i++) { NeuralNetwork m1 = NeuralNetwork.reproduce(individuals.get(i).getNN(), individuals.get(i+1).getNN(), mutationRate); theBest.add(new Individual(m1)); } @@ -167,10 +157,3 @@ private void select() { System.out.println("*********************************"); } } - - - - - - - From 749ac4eb50c608d9b0c30aa8ff349468c052fc3c Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 20:42:40 -0700 Subject: [PATCH 10/13] Other Fix --- src/Game.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Game.java b/src/Game.java index 5be40cb..60c2164 100644 --- a/src/Game.java +++ b/src/Game.java @@ -263,7 +263,7 @@ private void draw(Graphics g) { if (tile != 0) { Image img; try { - img = ImageIO.read(new File(tileID[tile] + ".png")); + img = ImageIO.read(new File(System.getProperty("user.dir") + "/" + tileID[tile] + ".png")); g.drawImage(img, x * 48 - offset, y * 48, null); } catch (IOException e) { // Auto-generated catch block From 4ec6102f86d8c46e40f5abdadb34da1805bd8d26 Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 20:43:40 -0700 Subject: [PATCH 11/13] I dumber Dumb and Dumber 2 --- src/Mario.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Mario.java b/src/Mario.java index 4fac2a6..183c7fe 100644 --- a/src/Mario.java +++ b/src/Mario.java @@ -188,7 +188,7 @@ else if (y < tiley * 48){ if (isLeft) { str = "L" + str; } - img = ImageIO.read(new File(str)); + img = ImageIO.read(new File(System.getProperty("user.dir") + "/" + str)); g.drawImage(img, x, 624 - y, null); } catch (IOException e) { // 1 2 Oatmeal From cb90d6add8ced1e6251b110bf58e4137ffa82d3d Mon Sep 17 00:00:00 2001 From: IceGawd <35550454+IceGawd@users.noreply.github.com> Date: Fri, 31 May 2019 21:02:27 -0700 Subject: [PATCH 12/13] Fixed I am a dumb sorry boi --- src/GeneticAlgorithm.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/GeneticAlgorithm.java b/src/GeneticAlgorithm.java index 39f5c7a..f841f75 100644 --- a/src/GeneticAlgorithm.java +++ b/src/GeneticAlgorithm.java @@ -4,6 +4,8 @@ import java.util.concurrent.Executors; import java.util.concurrent.Future; +import javax.swing.JOptionPane; + public class GeneticAlgorithm { private ArrayList individuals = new ArrayList (); private double mutationRate; @@ -90,10 +92,13 @@ private void main() throws InterruptedException, ExecutionException { } individuals.get(0).getNN().save(System.getProperty("user.dir") + "/" + "best.nn"); - System.out.println("Generation Score: " + (mean / individuals.size())); - System.out.println("Best Fitness: "+ (best)); - System.out.println("Old best: " + (oldBest)); - System.out.println("Order: " + (individuals)); +// new GenerationUpdate("Generation Score: " + (mean / individuals.size())+"
" +// +"Best Fitness: "+ (best)+"
" +// +"Old best: " + (oldBest)); + JOptionPane.showMessageDialog(null, "Generation Score: " + (mean / individuals.size())+"\n" + +"Best Fitness: "+ (best)+"\n" + +"Old best: " + (oldBest)+"\n"+"click okay to start next Generation", "Generation Update", JOptionPane.INFORMATION_MESSAGE); + System.out.println(); // Game.maxFrames += 10; Game.maxFrames += (int) ((best - oldBest) / 10.0) + 1; mutationRate = mutationRate * (oldBest / (best + time) * (1.0 + (1.0 / time))); From 3c38d791327be0798a762e30547ecc4a5ccfda5c Mon Sep 17 00:00:00 2001 From: Abemarkar23 Date: Fri, 31 May 2019 22:01:45 -0700 Subject: [PATCH 13/13] finalCHANGESBOIIIII --- bin/.gitignore | 8 -------- bin/Game$1.class | Bin 1929 -> 1925 bytes bin/Game$2.class | Bin 773 -> 773 bytes bin/Game.class | Bin 7169 -> 7881 bytes bin/GenerationUpdate.class | Bin 0 -> 1574 bytes bin/GeneticAlgorithm.class | Bin 4790 -> 5013 bytes bin/Gui$2.class | Bin 0 -> 604 bytes bin/Gui$3.class | Bin 0 -> 653 bytes bin/Gui$4.class | Bin 0 -> 653 bytes bin/Gui$5.class | Bin 0 -> 653 bytes bin/Gui$6.class | Bin 0 -> 1120 bytes bin/Gui.class | Bin 7677 -> 7677 bytes bin/LevelMaker$5.class | Bin 0 -> 798 bytes bin/LevelMaker.class | Bin 3560 -> 3597 bytes bin/Mario.class | Bin 3781 -> 3976 bytes src/GenerationUpdate.java | 2 +- src/Gui.java | 16 ++++++++++------ 17 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 bin/.gitignore create mode 100644 bin/GenerationUpdate.class create mode 100644 bin/Gui$2.class create mode 100644 bin/Gui$3.class create mode 100644 bin/Gui$4.class create mode 100644 bin/Gui$5.class create mode 100644 bin/Gui$6.class create mode 100644 bin/LevelMaker$5.class diff --git a/bin/.gitignore b/bin/.gitignore deleted file mode 100644 index 4b5b9d0..0000000 --- a/bin/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -/Gui$1$1.class -/Gui$2.class -/Gui$3.class -/Gui$4.class -/Gui$5.class -/Gui$6.class -/LevelMaker$5.class -/GenerationUpdate.class diff --git a/bin/Game$1.class b/bin/Game$1.class index 7a83639bf26908206d837ee719cf458b1c7f5e5c..a1cbafa14d0c62dcfe57c682330228ca63875798 100644 GIT binary patch delta 189 zcmXAjI}1Sp7=|C0LoRi4iIET|L^!S~i^*z~zhJOflu1%2Rsd{)QmW1(CBCZh%HsEc1l(-s7pYUFY9np7~M?-U%6O%Jn215CS>)@A6 z;wD8HjVfu{WayHkN1h=C#uS-RVvWw0GJ7hR)WlQgMuR&|UbKFu=zpC6LGj8D7A&y{ TXJ;h_tBZ})9voGp@63Jy?CB%# delta 193 zcmXAjy9$9}0EQojj~q%4r7Xlxh@Acq+2sagatB6>fyE%l`euX4r2H}{#bDwlxCU3? z!}8Yq_Vo0QJrmFVE=*DR5MjpvfdzQUw}|;e=_BqF(F6Jh<6DkWv+afkXD;*<=~ZkC zpGplUae^eMlcY(CHW|8P>62qbo+$++Mb?zqqGM22o(fm0+^F%S@iRsK5AYLEUiF0; Vb4-e}vS5kX!Ai|8Y<1bOXFk2oB^dw! diff --git a/bin/Game$2.class b/bin/Game$2.class index 5eb11dbab26d4fa0a424710d4ec9c0e40a92ac40..596ad2dc7da2f9ac3bd4bfd18d7d8ba32dc16d46 100644 GIT binary patch delta 31 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 U;sbS5#W)IX4s(>hN1WmR0B@@e_W%F@ diff --git a/bin/GenerationUpdate.class b/bin/GenerationUpdate.class new file mode 100644 index 0000000000000000000000000000000000000000..db2a5b37a3c758442f0c8ec43cd54b9336ec1389 GIT binary patch literal 1574 zcmaJ>U31$+6g_LJk*g?8qBseGlqNu1+i_|>O8Iaw(3F&3(p98D6xzckj7-&e^;A>*b#>0Nlb;6ET6gyV8@s8>qJT zuv2pbX~JOi#Qnw1HC?Zsdr&=*M}feFW8ZB_fn-tdJr^^DycDp7m#4&Bdge?$HrOPHR2{@AlEzDs0A_V4bT)>oxh4HkaTa`@{ zivr6duF-L~PgS!f{REaZtwzvl7Az#OqR&m}*&8-iahaQLrz5?Zz~*_JCu9uk<`cLg zU~c8kDzDpk3vUY~f_B7!E~U~F_`C%ND<-Z9%!HiXXF+bK?FBlXvXRy`%(@IpwA8{? zY-q+=Dm;hY?ryrQaW`z_@Gfy(8R%N{X_)=0I^EZHzHj3L+@$Spjfyk>N!o6=I&DvS zL4L?tBS%3EzGdSheP>3;J^EP(KC$sBcT$Z9z-Qzz>Z-M&~=58beeQ*0l(&9dt&y&eXQprN{~TO1XR>XL&I$md%3 zq~TP15*$zTY}h*lE}iGAZpwSCc6LK|R7-kYz7Gp~xUa9I#Mh9DE?@@xHon2Pd@|Iu z@5^K9`?7YRexKJ|~}j?y+Sj{9~)>%%&W#rZcNM87l6;+*rD@OzP~7mVrs zpE7+|nE_@hea!xWxdEKY0LhB8)W>TZJ-qI`$xjb!eY|r&JHXXSwukHSxnv)i9yT+- zV~&CM9_dLBAL_yA;bT2ITRjwh;~6o0$?vuB+yo4sJj;0&77CcgUDznGh03^ur`);C z+_i`swsD6mvcy-|A@eM5GXHB<)LM3jTK;B5gIQ`!izYF^US(eVv)V_ohX?bH=dDKUxI3i$$TdVZ)a(Kv6l#0iALWpju@981i5kGJp!;k+0PHS5s literal 0 HcmV?d00001 diff --git a/bin/GeneticAlgorithm.class b/bin/GeneticAlgorithm.class index 8f5668c85e7db4e92b347392e20731dd81f0262f..31fc8a61f69b2a313f2a962963d7b14603e99224 100644 GIT binary patch delta 2378 zcmZWr3v?9K8UF684si_$BpDne!BFI_@zt%+yYxUrkG2LHm#;8_ z$toFL3_09xEUKatt2C^}8U~qk=7n{#>G1mI=VC2>CgZ0J6U=9n36h2st~0L^8?@^+ z{2bjRrH4Xho;uomLzHrE(9nY$&G*Dfo(;G~#?1^a+jD0!90}AUjkunSQFOOrqgf_- zN;cqj4R>G@xoy)E4aO=SwAXi;g3aa?lDqa!+$CcxL;mUT7q`U?J)~h9?q-k@5yPNT zh~8S?r3&t07`aIA3P)Q#%|@a#l1x-oRLI!DP-5OHmZWlVFLv_UY~+>RrQv>_u}T>) z2q&XPBEgIIfQARrM>Z4THHIBd4QD^h^L>P2l(**pi^-io#-Ma2jCe&T99J<7PiS}& zPch_@`KEZR!-z}C)eMu&Jb7XTwW%L_Wel8=+oEKgV%IPTiz?EkM>>thpKz6tYT@|r zdCkgIDM&Lgg2@8x*U*RqX0Ckh+0T&bawCzfh*Do8cvi!6sN?DAU50{Rm`~>v=f23r zf5}kloo|-OrT&-5j;i2S40-cN)pN2Ol^zAJP=OjFArCjn>0g`6W$(<_snXR(l=m|n zi+Wl*LVD6r@g{yN<2M9H-mg`G#7ashP}|tSg_`uJq2YJCF7&73ANWSbKPlkT(5Tmw zG(F$qI|4>L))@_PV9fW`@-iIP@NfLb-0ZyQ!V?Tv+9%BSqx?7I@L3*m z7gN&saoquoTRH?!J<*f5VXJJfsk;Xd14rQ$1AEcB*=wf63ow(fvxA7@C8>CQgnbURs*GaK#hT`1wF zBByO7NQ$=T)_XEXvwTiI)Gf0j*>7QYZ)Ou`XX`@Jt#%HNrtx?hdngmvkcEA&r)f#q z*&JlH!1HwFJL$0}X5j_bAujhaEpF))d6-BN8c(Ij-oHu=GUIwpOydnIfrTUec-t*; zp`O-4ydT>rE?YK$x67CA1-C!G$G)7{6O5T7MvO^)I7n=_v~dvQNu6{pRMCMXebi9L z09AMhAMYU)i*VC=5CK}JLBS7@k8?2^=b;qm!-tu;1V2Oz(aSI!2Iim*^XLV>2shKd zh35VVRO2a<8bB?EP=^;#pTa9>z!4hoqiDicSV$Am%mgfAPAp~`TG$9&%3QQh$B)=t zG_rbJ$<|;wyAwh707C3}I=={m9Y!nr2yFsGSWvM-7>StRMu$*_YlJC?3jrjA^N>U_ zh2KHIC)i^aQnQIv1V28-XQ1azn1Iib1A)Y>IAwSwF4}T>OR}iOZ8uCt{RK{8v<5<;k zjL1-Ek_?t*LB4d`}*&2A7O7Nz45#7K7Cs`E@n|BsgAUBSmfh1mS;E3jYEV(4vR6Eh|4Dt(}B5! l;4DJgk;n4cNJ7YPmu&^}4p&ir!G*_B;07ZM6XaOI{{V~8WPAVs delta 2098 zcmY+F3vg8B6~}+y?%v#eTmnS$2HYS>7Lowsqe&bb5Q53X1%f1^btY?an+MA#W;X$; z?P?pv`at1=h(;ue2CG#`%qAEG?1Q#;TDA36YpqIKTdgfEebO1X=k8|dFuQZV?>xW% zIp6=>yJvo4p7+%+UOWn1%9+F75|__MJDoZmin&&oXRc{SVy&d=gn-h-qrk-ecWR3HNLLU+e6WyxizM6mIkhKbF1RKwO!r4 z;ZUrjE8>rKY%~2GQNNdO(694NYe`n_(%ZR1p+&={*{yJu)&&~f+^LwpKGfF{Y4bOj z(cW+@T2WEqWj1#i+|51KewW|1Ls2Y>VV8l$ZiTnajMa3+ zB4#w2!nD#(@_@l!9+bmuJSlapt$xU^_hCg|X>EOHs4uiA9E!9pT61Hk*%GS`G}>t& zG1$+e0$0)og95TNP`@H*_V$FrK{K|ct7lWSn?dQrjb=1f5s7$toF{Y+DyE#{W$+~R zHh@r{>E@927rij++XicR+RAp9O#O~RdA-!|oUMD_+OJpI5Y^w<9d3Y7al;$2va}*sDXEO@mjh3eQ~E>jrOF zjh?rQK2R9z&9F2}t}S(4kMp6yM|^DE;=S^+-x?J0J4H@u{W-0W&bs+TVw;xNUQ-)f z?Z0YO!z!=P^N%*TPpxh(-_z)k-v7zqb1Tm`$H8B%Dqle3w4%hi$yYFPt8bGdeg+?2 zaI9SL0t?5vp?-qd8^`cpE%N+*T;g0dgnxpTjUtziVOF`y78bgW(B>e)=B9q9nq@~0 zCO=r<9A*9xi$yF+a8s3Qh$7pwS8<${VA;a*vr)GCtBQw`A1@td(F8RcbK+yv*@+Td zonT#p4cT?sm6~^)+lI-r4X)O~1g*T^Rq?aqd0BeW~14?m(eC!OoVt)KZ}B z-H$i5t<;>CdWOjA_o!S?8rYu4D7JUGo&=JlMdDJfdk2#5r}ehDuU}WWdRc-!gUMaC z+L`el$T^VUvA9a19um}n$-LXU5Gs$uQijDFGL~1;7HRqSG9f1lH2b*iZ8P{u*A7>6^9U!b zH>Z}ze>zHFL4meolnW$$m=g)AWh2gkgk1HAbb5@}4$EuKMS(m|utc7VamzZ5i^yjw zGr5=mR|wOVvRr;Ote}>aG_#7ZtbJU?eWKY(9lNRLL4q8V!FYzXamHB3%QWyh>v@-J zILQV+rIF8R;uP0%nkJRcb!ralR0YjyIj!mjOcmxU>Q33;O`F_kx8=Y%zmb`rAl|aE&^5-%%+wca?de3vhbXo|{9Zta-`O{X?Pw2B@nG_#*k${N zVLp@p4F0^SWrWWbl#NniN1l>Md;OcN|0iFA)C&DVzT1U-cf^H}yP3rv%4MyTPth{r zmdQT(#O~!b2E_Fd?vW48fcy?}fT!gvazu7Vc|w>x#LqaCBEm9hoiuKe2h%vl-&40# zAoTo4iU&oUKgok?;dh!5`6k)?lYa>%GS`|4u)5F7oi^pNGfc^stNFKNcJQD70g#d= AA^-pY diff --git a/bin/Gui$2.class b/bin/Gui$2.class new file mode 100644 index 0000000000000000000000000000000000000000..7329a7b2d6b975144e03f1a213df079d88fd1477 GIT binary patch literal 604 zcmaJ;(M}UV6g|_HZo96uAc7zWLLW*^tRcpi5~FDfF(wQK)*sCO%4-&QmRSRQ$0E-lk9|DB5;K9PSe`L_ z;O!VHt=|Z)u=2m(&+!xL{>V9&@9Jh8?7%uU*j>a6_7|{8zd(s&e2E=K&ZBd{bqh#E Bb`k&p literal 0 HcmV?d00001 diff --git a/bin/Gui$3.class b/bin/Gui$3.class new file mode 100644 index 0000000000000000000000000000000000000000..2b8fc450af527a783700e69644b4c9e5d147b517 GIT binary patch literal 653 zcmaixT}vB56o%hPVm7;-YW%4Eur+=}j1iiGr8gF#1Y3k{y-;#L*^Fjn-IdHF`nQCZ zmR|G+^hZhGSp&Ti7iRXH!`bJ&=iR?|zyAREfUN)}ftfF3)7%SC5vX6NiRz>(JMSF# zFLdGpR0Y<2^`>L54eNTMGuP=3*`s4)ozC<~pz4OkHs28zleW*oN0S+MAW&-+m7ShI zrJE0Q2!W>(0csJ-n3D)m7bv%U!(41K{cU{N*P~O_Pqn~8oF^*nsgd#dv{>=O1Og9k z?s1s3PC0$AX&|uCiXT#Z=+*D<^dh{#s{k)KnGlH;yrxu@B-$2hY~QPXl*8}!#0fMW z=@f`g^6@CqpN(Iu#-VS$M(%u=C24MH?N{xF`9NaR8#3$d>*kkNc}B(DRvu+^x|=F% zwZ$4;Ec47j)a%|%{?8Imh=|oEjNUW%m8iY@1G4=Sv$sXhJnt%dfB_bG%OZ}jh$UtM z&#*ite3}x%_IJqLUwHl>5EbY%jy*3R%S9eeAzsECtP)d3gU}M?uJc`?=^JP=@*=$i GKK}r&t%l72 literal 0 HcmV?d00001 diff --git a/bin/Gui$4.class b/bin/Gui$4.class new file mode 100644 index 0000000000000000000000000000000000000000..e22af43a5b1dfd7682ce340bd7607a345ab2ea2d GIT binary patch literal 653 zcmaixU279T7=_OyX*Ro#ZCY#nto_jjbYiU2xh@5oZenbFKv+WBA%)i_H|~uQaOz)Di2DjTZO_2lQ$Cedjt*XO0#M@ZMGh*u4AhbriTYNVd`Zi*oyh(3? F&p*G{hVcLZ literal 0 HcmV?d00001 diff --git a/bin/Gui$5.class b/bin/Gui$5.class new file mode 100644 index 0000000000000000000000000000000000000000..655f9168c14c290375314ac3a934daf772db099a GIT binary patch literal 653 zcmaixT~8B17=_QYrQ2ObsEB;{0f=iXC836hHy9JrpfOqD0@M5Hc4CJtyQVX(#K?~_ z(MY`T2l%6iXO<>j5jL6Gc~9Pb-ZN+aUj6<9;1!+)s0hrw8=H79Kuw@|swS$Fsr*yt zxPPis7oaY%;nnkw{bH!=iOyZ8J7kYejCDHKBZ0ab8XLbLEFo>5!fTTo_eP-6DwVCC zK&@L0bO?bv5&;?!s+gAu(G;k*e8YTVa(y&D>+8`+)z7rRLQ#33P^;E3+VFG~% z$9o(mty4~4dm0FAwvwA1AA0xuTfGP?co1NflL?V{h)1-l(o|a;?+QG>c6}>{-|LAJ zSihxHAUY|=qg1~&{#p$V-SHlI=fgbB3d?9eXg4ed5>I^~b3VRqarU{$>6o{b?{g;I z&6Ks;VuLAGxn>}mO&=!zXN4<7M0J*@m#n=KwYPslwtr#nd)afBd!0SNS1fRslTihRVY~`u7)xNHDK$MS zIxVu>eMGHkQlWN)m0^A2Ecv!{36z^r#4^*_LYJY&6ZTYK62`;tVioEzoj}Er-;qv6 z38lF=^E+j@#Jbl=lNDYX{i>S@Ph)T;8Jb(k_6q0Gw+Wq+8Ci$k;Grojb}j9awUi;f z^Q1lQ8jB>-Hk#cCcz|7DMTdMqo%li)FH>Amxv|o>I}O}!(;*5=5wlVFr~x-w!a{WQ zPaqHsBsvs2i@PsOw@`h^mV8fW$#wbE3|6 ztS?9U25uC}%dR5qNu8OVW2+R3ZkL4R#Ay_VZN_`c_=TW=)!9SLPcJGQ0H0e#wkT*V z;?-f!_;Sr%&jI;YJjJaFcC`-{vj2!?Ow}4m$b!1Lc7+3IG5A literal 0 HcmV?d00001 diff --git a/bin/Gui.class b/bin/Gui.class index 6166bc202112d318de9b0c1b32f729d790b24d6d..3c674b13bdf59540c7278dd12012f8329cc905de 100644 GIT binary patch delta 14 Vcmexs{nvU!oeblz&Gj;Mi~u+#27>?q delta 14 Vcmexs{nvU!oebl*&Gj;Mi~u+d27dqm diff --git a/bin/LevelMaker$5.class b/bin/LevelMaker$5.class new file mode 100644 index 0000000000000000000000000000000000000000..a3e9b394205c2a7113db5d648424f2fdbc0599e7 GIT binary patch literal 798 zcmaKqZ%-3J5XPTvOOHF(wjxshfFM@A7UfXEH#H_ofM5PkadkZXH_sHEA{8}c6 zi7)&BekkMYQBzEem+al_?CfuznYo|8zW)I5466xFrU1 zi|n?C+gNZg&oKGN$8iUX46cZxcS1+WfbRL*=imm%J=|xQ*h`7PFr91p9AqboTK#&{ zdWq?y<)BHWTBU!VaxB^AIH^1mN*e}7nA!i8M0z{PFzw4tW!qOBSG8>M2h;+nR>F9*ZoK85U?{MOqVJwVItA{Z0j1E`b1#KEeWZJj5dc7qLvS1q4{3Z;6Ke7*ENvvaKk3egpSesW|`u literal 0 HcmV?d00001 diff --git a/bin/LevelMaker.class b/bin/LevelMaker.class index 7aa4962b057b35f5b59e7f71f223bd4e5d04b9ef..41b80a9921d8297c73433afd02e953d73e987e4d 100644 GIT binary patch delta 442 zcmZ9HNiRcT6o#K$)n36~zA=&GwOK~a|Uu5_+RNp~y~m{L%B z%n$YQ4$HJe`OIG}(&#rj)K=wrc~PCn$nz7Vk1+yF)6YCXqd@PPjj_GTzRzQg5wBUH zG9$*cRFC*;94*Nu7D`2n$rKHf!yttWQNgfW7NIQNvxrvFNR!kYnLp(W;d4%jXo0wX z$uXy#8zj0{x$u2Mye7rE%%uQt{?kTLW#4?pg&w7xi9a;w4^5TyTkZ_E!qz)bw}+NCk2C17(`ctVe=53FMb<76ufQxSUC2S&b+! z+gobNT0g}!F_Oed%WH!fqgxwa&vKCGSP$EBoQATrS#zZ24vW7-DI?2T@QHe;5uL}) z0!=L9XGxY%(DIvEMBC}3Uv9VbFStbbT;UaM6n9MKm@V%v<%vAkdN{{TC_DI{)PPNT zNmN$QSQT>W55-%hsKUAB&KPm&fqNcM>Qo+is?vg0T5Twt=h-N@{Ek-{YT=D{6o%jLd^2;M>!lpEVkUH2^gHIvBKjLat4*80up|UGqu!=5Q@LIZky6Wa zvh43>YFU{?nPp}=<6uy^Fzjbhq!nSIxu`|qqE!UZH)9cPzVCU@;XMZq?^sIEDL?x) z@({oVLfl!7ej1S=Ye~E5Nr6_F5gZ@d4Dl#M%hzBWM~%Ah9J3 z%`S;2jLKo0j^K>fl4iHKhLB>Ta`8EfSQry?cuF;RPK|g$EqF<-ctw}-n))$8qnM;|yrBuarD?pQS-ht? zOwkW~;2a;hjA?Ge3}1{-+=*Gf9G|%xU-)`_6^+9ZS+6WI{y bfrZ--OXy)Xo9!oZ;~n+{u_-Lp5{7>RtCP9- delta 593 zcmX|;OGs2<7>1w!JDzj$G@?TjGKP%{gBr7;P1r<5D|6+-E);GK8q=7Ws8kSPWi?jP z?O17f=|0sW2(!dR(LXcM=6^5z-}l1%wTDIvoqKPwdw|YS0^!}Q?x7zP=2BhC#-Rh zl8n>Q)suEQGEQlL|Bg55D_VB2eUQR%YFR=*r8PsOoRH>`Zf1tpXfMFg*dV1Tt|K}( z=uJs-|HUki|Jd|xbk~SX8 zF`h`03AxHs8RnUc@m$7vArrim*G$T1Udeaf$WPwNZ{8Uu?+u5KMu1Po489med^KkA zjWT_@>P%lNSV&Y$T^%Pmg-Wv?dXY5i!@|JOWBrhNE$Otipl2;XR*|< rYTz8_z4^KG<|J$`D5bEu2$m77wdqoRzyB92rxpbBbkZdqD_s5yFPoUE diff --git a/src/GenerationUpdate.java b/src/GenerationUpdate.java index 1e88e25..136419c 100644 --- a/src/GenerationUpdate.java +++ b/src/GenerationUpdate.java @@ -15,7 +15,7 @@ public GenerationUpdate(String text) { } public GenerationUpdate(String text, int height) { - frame.setPreferredSize(new Dimension(400, height)); + frame.setPreferredSize(new Dimension(500, height)); JLabel jtf = new JLabel(""+text+""); jtf.setFont(new Font(jtf.getName(), Font.PLAIN, 20)); frame.add(jtf); diff --git a/src/Gui.java b/src/Gui.java index 4df3382..fae1df6 100644 --- a/src/Gui.java +++ b/src/Gui.java @@ -235,12 +235,16 @@ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Gui().setVisible(true); - new GenerationUpdate("Multiple windows will appear once you hit train, " - + "every generation there will be an update given on how good all" - + " Mario's are doing. In the multiple windows you can see how " - + "Mario is doing and learning. You can also create your own level, " - + "after creating the level you can click the Genetic Algorithm " - + "button so you can use it.", 400); + new GenerationUpdate("Adjust the sliders to your preferred extent " + + "for each of the 3 parameters of the Genetic Algorithm. " + + "They are the Mutation Rate, the Number of Generations and the " + + "Population Size respectively. Select Level Builder to create " + + "your own custom level clicking on an area in a grid to " + + "designate it as a solid block and clicking it again to " + + "deselect it. Multiple windows will appear once you hit train, " + + "in every generation there will be an update given on how " + + "good all the Mario's are doing. In the multiple windows you " + + "can see how Mario is doing and learning. ", 400); } }); }