From 67a79de4663d111fa1e02569963480a3b6d11bd5 Mon Sep 17 00:00:00 2001 From: DavidAlexanderKelly <72560815+DavidAlexanderKelly@users.noreply.github.com> Date: Tue, 24 Nov 2020 20:15:47 +0000 Subject: [PATCH] Add files via upload menu finaltouches --- .../game/Entities/Behaviors/Node.class | Bin 0 -> 730 bytes .../game/Entities/Behaviors/Pathfinding.class | Bin 0 -> 4556 bytes .../game/Entities/Enemy$State.class | Bin 0 -> 1216 bytes .../game/Entities/Enemy.class | Bin 7805 -> 7797 bytes .../game/Entities/Player$State.class | Bin 0 -> 1224 bytes .../game/Entities/Player.class | Bin 5335 -> 5698 bytes .../game/Entities/Teleporter.class | Bin 0 -> 713 bytes .../davidalexanderkelly/game/Scenes/Hud.class | Bin 724 -> 3138 bytes .../game/Screens/MainMenuScreen$1.class | Bin 0 -> 1251 bytes .../game/Screens/MainMenuScreen$2.class | Bin 0 -> 1009 bytes .../game/Screens/MainMenuScreen.class | Bin 0 -> 4277 bytes .../game/Screens/PlayScreen.class | Bin 8167 -> 8741 bytes .../game/SpaceGamePrototype.class | Bin 1039 -> 1318 bytes .../game/Tools/BinarySearch.class | Bin 0 -> 1986 bytes .../game/Tools/EnemyUpdater.class | Bin 0 -> 686 bytes .../game/Tools/InteractiveWorldCreator.class | Bin 0 -> 2027 bytes .../game/Tools/MenuCamera.class | Bin 0 -> 1880 bytes .../game/Tools/PathfindingWorldCreator.class | Bin 0 -> 4587 bytes .../game/Tools/QuickSort.class | Bin 0 -> 1907 bytes .../game/Tools/TaskWorldCreator.class | Bin 0 -> 2424 bytes .../game/Tools/WorldContactListener.class | Bin 0 -> 1802 bytes .../game/Entities/Behaviors/Node.java | 54 +- .../game/Entities/Behaviors/Pathfinding.java | 208 +- .../game/Entities/Enemy.java | 8 +- .../game/Entities/Player.java | 12 +- .../game/Entities/Teleporter.java | 31 + .../davidalexanderkelly/game/Scenes/Hud.java | 90 +- .../game/Screens/MainMenuScreen.java | 158 + .../game/Screens/PlayScreen.java | 20 +- .../game/SpaceGamePrototype.java | 12 +- .../game/Tools/BinarySearch.java | 126 +- .../game/Tools/Box2DWorldCreator.java | 2 +- .../game/Tools/EnemyUpdater.java | 36 +- .../game/Tools/InteractiveWorldCreator.java | 49 + .../game/Tools/MenuCamera.java | 37 + .../game/Tools/PathfindingWorldCreator.java | 86 + .../game/Tools/QuickSort.java | 120 +- .../game/Tools/TaskWorldCreator.java | 40 + .../game/Tools/WorldContactListener.java | 47 + .../desktop/assets/Maps/Background.tsx | 8 +- .../desktop/assets/Maps/SpaceStation.tmx | 4628 +++++++++-------- .../desktop/assets/UI/ExitButton.png | Bin 0 -> 1621 bytes SpaceGameFolder/desktop/assets/UI/Menu.atlas | 19 + SpaceGameFolder/desktop/assets/UI/Menu.png | Bin 0 -> 4586 bytes .../desktop/assets/UI/StartButton.png | Bin 0 -> 3361 bytes .../gradle/wrapper/gradle-wrapper.properties | 2 +- 46 files changed, 3179 insertions(+), 2614 deletions(-) create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Behaviors/Node.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Behaviors/Pathfinding.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Enemy$State.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Player$State.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Teleporter.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$1.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$2.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/BinarySearch.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/EnemyUpdater.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/MenuCamera.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/QuickSort.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/TaskWorldCreator.class create mode 100644 SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/WorldContactListener.class create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Teleporter.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/MainMenuScreen.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/MenuCamera.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/TaskWorldCreator.java create mode 100644 SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/WorldContactListener.java create mode 100644 SpaceGameFolder/desktop/assets/UI/ExitButton.png create mode 100644 SpaceGameFolder/desktop/assets/UI/Menu.atlas create mode 100644 SpaceGameFolder/desktop/assets/UI/Menu.png create mode 100644 SpaceGameFolder/desktop/assets/UI/StartButton.png diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Behaviors/Node.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Behaviors/Node.class new file mode 100644 index 0000000000000000000000000000000000000000..28a1d25f04247ac0f775a148cd40e5527992d139 GIT binary patch literal 730 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 f6;o`uhU^WKJ?O=j1%@x6IFs>%*^CZvYJPyonkj zCdIng`skY7xO}r*x>LMTE?&M-S|P^dqqAG({vn_3NTURs{Ict;|4-O_()5Tj<+@}X zAbQ1a3CL61bXxQv=b(q}iXHUHXIFoHK(UiSvF$!bh&?8|iR9k|SDj)n!*buA_Iemm zj516Z<<;9I3lA7qOt4Qr*+t_J5z$GJ28&7LOb*Je=45C9Ig0}vQB2_>;aDk^7m8Px z@2)tQ~Qn78uDp;#Bsa^erDhG5NnosQ8=5Rbw;bCoBi*GX{7kmXzmXo^v zMRf2er%;0u+D9P7}EDUoAn|M@?6&Y2MQp0y#N3J diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Player$State.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Player$State.class new file mode 100644 index 0000000000000000000000000000000000000000..5a6bd23dba5fd6b6b4472ae23c5f92795e0189f4 GIT binary patch literal 1224 zcmbVLTXWJt7(Lqn;SyU!OQo%MRGPl;0we!Q+lO{^ z?D*`Da{M-8$%B0;dC2D5{m$8QvS)w&{&oW3AvRSkFl=@P{d|{?jV?FEXKre;TU3=e{J%Ku#>vO9ihUBC48UiTbGD7WP}-HU&ehHt2A( z$!$Z{?qnDWmPms0!5Gr6V{VQFeLPL2=W-Xu4ct<3lOgI+JsCQpui-Y53?XjYe9{?w znlNO%-uBx2qT>{+9=rdh$S)m(t8MQ+!%Hu0`b*ODoP{)>(r^c9I!!O>w#kRXqDRT; zE;Cm$T9l5kJ{Z{@v17;|9Qm8Yoa`d2y3w<^GqP!A$3rHOrFryj(SBOhvV`pl6hjpc z7_#R{HG|*1DCGhrMWM^4loK*V0F4wNAi65!Ln}TS!-!CyMpd0^`Q*NXwPF{PBP<>w z<`$QIZn5nDK}*U3VtUJWfMxv=gYaMcd)U>|&+U5;!)vP_R&e(c%>P*1?U{fKbB?kR2 z_pm?W#rPyd3d2sx^(?;dEy~wGB$sGR+k9u2Q02SDZr}CVoT8(4CN9+L1%Gilj%cea zrPiWZLbim(P_blNNFr)avcnWx*r+N-ovIF})cLS|aVB}zu%wnSrhd<9RY-5^oZy~W z=6+tsSeYmJ<}%OMOyK1wdDU~3+r5{V*=%Huns<}j$!85c&TDx8pHuU3lF#E>E`+18 zoh9mKdd0p1J2=8_JUS_|mt*vEoFPVax1_5RoZ=+=^~Q#OX6Vxli0SSRej==;n_v9a zx|_7l9DlU!esav~%uu<^GHapt2F6&=Wf9eyX~-;$X>N)v%f+OgMw-M_qnX@xi7t>v nq7n_jq$2=A5(`{QTr3^y2ul?Wk|54?%93o!(ySj`-IDza2#%H% delta 351 zcmW-dOG`pg6otR*y_#OGT_JCv6oG?4Q3`~bg@l8^<`Ry244O13n>2|2LucwwNYKiV z1`P@t^amoMhdu0N4|~q4?H!!G_St8xwHIeUc^o&7es}kPG(T0dWT{Lr?K`));8Lvw z=T)w|91fsyXW`ImlH$SQktgNYSr5;uVCTGiXpE?~5mmMxQX9Ip)v(tMlR7$vSWl|e z@K`ie<0P@oQgVm0d{xFCrllq@RnQqIEHX}!9LvnOQ&-3=b8_>OrNNcN7^0tRZbUmO zc}}@S5Ba4l$y-F2YqC-k9Nwfkb%;^P*SS|^Csu4$L=+NIA1yH%Brd4C5qz%1b{Bg@ wydWonccP1zKYGvvJEcXgQ^e*~2p-;O3r5A{ofw}4IH1N?CL*7t@tukM1FNS_D*ylh diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Teleporter.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Entities/Teleporter.class new file mode 100644 index 0000000000000000000000000000000000000000..76ba0e819842b3f68b3f40a1e14aed8a79962c53 GIT binary patch literal 713 zcmb7BO>fgc5Ph4ZacoSJ8VZ!pmbQ@Oz@l>C5X1pQP7xrbiqzxUUb$P=-pF>U>7m8YI}_)EYf)tULwqKant?58jcKhI{Mamy(l;ih_;6ws zVv%Z-sf1_glFv_9l}ak^P~5^s4DDB{Q1xqujsAE%m@%~8np6g8Vlza5E<>|FnE7DX z3bBErI~BG!^2nwUiBnJAUbFE3m5sj3)`Tu1*iGqvX>Mr)Ny zA9r!z!@a*en69c?<{=*7A+>21WXJZzS)>gASgN9))}<8rsDoXG&Xt(~9^=5nJ`M5@ zaEL=ZA>p~L*9B4b*PPCFB2+~-vPK0{vnUfeR(A026}c>*SyJqgPfhyaO*E`+6g8}A z?(D#KCvo5!;X=wz=-uMG!*94g+`m9?cyNK}vjg6wJwl829_?FH9$^#P^Z~o;GTg## z%80_m^gV(*VYKu;iO2Rn{9q!I#N5;HudtbzV-%FvYL literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Scenes/Hud.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Scenes/Hud.class index d638b6ce2cbb899e01592438595474443f54cb86..7685bf99c8e64600b0ec5054de23fbfb5bcc68e1 100644 GIT binary patch literal 3138 zcmb7GYgZFT7=DHXH^j99URrBgK}ABKEQ*SXRk=lCLqHP2U~Ri($7FSrjhhW(@Av!t z-u{MuXnRWVl+*rz{)~R;AL#deOJ)hAg=Wp_~t6&>L zyD%}Y8t6}3^bSg?!wyu}$Bi>{ubu`^a9T&(zz!!bik2*E*yz=Fx| z6l}+32-hlAJgkanGoCEzZOd}qabD;2*IK9)u73RP4dS48Bm;Oc0OYF$IrOBsJSsaR6-$ z%7Si{_~Z?Sy`gAVo$NG$;h>7`P{rF}6+59SIKt3fQ?#o5M@)CM1pd+EfPyZDo*J#S zZB06E*7m+e2xyKTLJdP$Y7n#8k8>A0kvuMH7Mwjxu!AIIXIg#8(h~ z=ogNTGfdaXf7SL@_cnN+fJCKMYb0VisZtgK3QjSE{wpTJQBs_fAO=Jd1~91NES{js zx;8>NVtxfVBC+Te6u$`PveolurpsOM>cx}T}rFjf)#GogoV1l843;B}4 z9hT38d)ML$ChP5L4RNwOrkm3X5j*b&5y!qJOe3iv!Em6);hNrvZP|{BE1-kdI6EFq zQaajetFc+0iV(w9fv*%pybiwB#5ad^KYYnR2=74*LhH&pCGixA7I*o_u}$eSu|fqJS>H%O=6k*kVtDDBz~A*7}w#R6j=%~Jmira9gEAqtx(cV?+a$7rQ(w%>(4G=y{Di&~uuwT%PWaY3%{!i2c zxU1qh5s1&R?})zif{GXM5)mM!N@jtWs1AgxHs$4uP`Wc_=6Sr7BkGY&g`qWOr*&&a zcTCY_yh*>CHH!?DShsKiAdYJ&&Qq3ZOR@>g8`+AEj9cOVIuu^Dfwcz45HyIwNA;Y% zG5CqAB)h$*;(dHTc`@_uj9@ZJd{Iih;fXT(Pz-tNpjO(4PgQ&@_%UD>lOF36Rn7@y zeyL&y9w1i-0lG~! z2>y{Hk*6HVx*Ul@n6M$d^Om6?CLpJ6k(f5K1kBgu0i|OS65c@XzS&UdFK{oLIpCEuNm}DdWs+kH3s_ zBr%+79rgbTU&=?4?TLGctRR+JL7YUVe!}Ht%r0YY3D+yK&(vSlE34`HtGwFJp?~+2 z>7h7y8D<%|)?yj%teDU@O_Z@HXRlXg<$K0^C*c#c!RLRJxqO+Paq2z5LCWZ1s_+rY zX*YW4cNQ8(aTHOy`NnaQj@$sg!6}q+8h_C0UqrWloM%nA!1fS#wqulaA%a)PT3e+W zconbF7u5x?;|;3SDE`Eoc#Epf@HXC|CsmI;_-F=b38yH>WxTuJE8u#NK`9WWK6^TAlA=yi-ZZ5ZF8=^qVGMc)7b delta 275 zcmZ9GzfJ-{7{q_O=VkBC^*H{Br-EQXAhafGL*uh(L8S=~psnTQ-h$4=U}9lGNp0(^ z5XY5@eA#a@^G#-UU4F;KX8ZXCTrqT5!?^Y&ReOf+qDNm#qW3^>fhb1KoXq4-vABoL`Rv1q|$lt=b zshtJUb3jf@y!&sWO-D?2j-?rmI(JdmfkSdTeWzS;wjbBhPud~wuU*DnoZ&*uGWZ2S CpBYjB diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$1.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$1.class new file mode 100644 index 0000000000000000000000000000000000000000..0341dec02010c1db6e5eedb09ad5307d17106818 GIT binary patch literal 1251 zcmbVL|8LSj6#pD_bkyo_ej9G;R8(Md9d1SwjK7d!mVj9@L)?!?dx3LZOL_(2&oWVG zH1QAck21b%NsO71Nt?TS@9us7y!Yeh*Y5y!P&1KXckvRFVkTkD-=k^RIgD2ZLd} zHxfZyZ#F9(3)it?;>Hw-{{+!S5jPnYx$6p*0Mehco->jka96ydW;%$%IE*I)Q8%&1 z;G7Hn1D{XQrn9h$+Zv-g47;-;J?m4K>n`q_xHr@F8D$$KJYdKx5vQ>*to;S8^sTPj zXF+I`7&epIoD)+9Hm232HDRz0!(rr#rqs=M<<9}!ddEkcnshI4{ZPrE*A{U<^lUh~ zgALUW-!s_z0S#Qk=Sm5Mb!zr3%{?m=bjK5wp=Dx`?(;c%J9PGNsYWR_^p zkqpp5fp$BgEnLPjaTFP@PAv!+^aI7}M_6BQ?Hg8)rsOGZea8B4gI40|Emm-p7_Fv? rQ=?=85Ai5*R74q-M7oG7QCa#o$Vmp9cuc23Gq8niqAZfvVbb>t&DK{> literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$2.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen$2.class new file mode 100644 index 0000000000000000000000000000000000000000..41f4e7a827b218874a1f0e153e21c0ff0407ae14 GIT binary patch literal 1009 zcmbVLZEw>s5PsZd4aov4W4w<6qd?mY0v!mXA|zC;Xj03Uv3_?GD>X}i#R^< zBR&-VVUP-;wBO}Yb%h$w>`KFi#jt0N_IVg5kqrDOoccNtO6b|v2>o#;W9_$M860<{ z&gfgpP|5~USDsMj&JwAc1n^2KnZ0IsSzQXD)?=_*NhlmJta?~M$wd+8J=nOwP^_AO zwT@Kc-FVm+>3iOf1;ctL33%M&sWkT7X_;aeUMxeT(x77Oz;s813{Pj({Hvb_YBbLF zCqiY-cDvSda0SuHmtO!GeVRsSxuR%CPoPkYgwP~F&xQEF&4Mba-4qrMuWsg7b38$Ob zS3#U;siLmP21#h6HXptJoLUb%Ie9%uJ~DU*ipH@ObFGEO9U6rq{S~ZSHuFGQftHPP zgfe41WOJ z96F+8gB+wj3!H<{5u$fD2X?THdwH~j3TZ`p?-OVN5Acw73suyyOPWjZh88`)0TuTE A+5i9m literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/MainMenuScreen.class new file mode 100644 index 0000000000000000000000000000000000000000..4cb62f4ba15201a4ac95284c86955634ee1ac4ce GIT binary patch literal 4277 zcmbVP`*#%O8GgQX!z7y#As`n~3mV8Ks|*A$z$y>|3EM7$1cSkPnd}U^1CyC$W|joJ zi`Z&!wzl@7ZEdZ+TNT|+FLBuc8gX)D;iUE5dv*~pchSno_y?xUoaih z*Fw^7Xe07qmK=Iu>%PD(agL&=mrGW`*NQxU*qjO~o;e^-lP&3=upEKjIM*e5Dwa0F zqf%3#kK44ZuN9ud@+_G;$16eLI<(dc1Tw9#?hZM~n~He%PFZA4%BvRG97>o!6lJ|& z4)f$e&kfw*bXnT4=q}5#f*k_4r7xSica*9JUBgV_Dy&km9IFMcO81U-KwyoEE-Vwc zCT}_BJ(Y=Z(+m9;=*qhV-5%9FOWs3$F&UIBM(XwjjA)uobR+4P+(`vD39N4^IZ{}M zRnpA$DipMLpa;DQ(gMq4?8C;Ciaul*WXma6c-^bwk;=)PY$tAoreLGMikO)2go;hr zEU?r!gK*AB6inZDJ%R4%{^w-=+%wtUQ3YF=V=>wDCUZM(r%Sp|eZF>IPLmb5F)WG{ z`f;ZW*;avT)A>dzjs%|N6sb$z&UO_YNGZ6BRTtCRyckl*VuuvGQ$TCt)4aCURSu}= zgsNarAl-t>Fnv6FAhnGW^lwZf>Kx?Imvlg#eH(CgIoJdt5^!87e`dwk1?(?V!Pdn zW3VQa^br4K@E;JkJEkh`oP@IoD7qWNk>Iq=LOqIA?RbdT6QWLZN`~wa6*|VbPILBn z`eX!WdzxiN{7No0A+T&;o0XF7pi)DHiDLqZN?Bmjl}IS5uy9;paoJ@m+k6N<5cA&7?1n`}-<>fS34m80L7T zDAB1U{wNjXBlRN{FXP8V5c(LJPyBD$QNGWq;360Z>|D6;tgsoX=lUh+A=?Gdlnovq zTqZT2h#vf0#V_znR(8=ASQ}R`i>2CdzJC)j^H+FX!LJ2wjFsw~lPZ2AaZoMVgSM%A zgRbp*lKHnPeuv)^6zdz(lAO%ib@-!-Kj9Ub4h3TAI=rdkFR~*^8pN|O1a_c@F8J0N zwo7g4963oRBV-miZk9qQ=3-f|_&h|1{fca^k|oO^Q4Gs3yK<*pFUYsMdy_!v3X3hg zt@%r|S-+MVaVuWI9I|A$xomD%y-~j6ytACcdL3jh>zlrUkLz_dr?a>eu`MkQZ><0S z0Xqes5XxdfiwkNb4V%BlBt%R`h4JBk8}T|JJ1_o_NXQ-|q=gw>D|FG9+O zl2n4oa$L*r3eJYepCC>3O=D$Wri$y{3C~{7?_%l#wjzmb! z-Bs-3bhn)Dn#P_ghB+GU>^zU$1?(4iE*y+-P{Zg9j#Bp5^BH-%>%kfxuA-1pt0-o= zPVh@f_E=^bP8BD4ynl1fR1R`6tHl1v$RNar_Gt_zxVRz!l5* zWUs+Vu>pP~prWT9P?P*W!B4}0{tT}~0mX?Zpy)Y|S35g9)eCs74ID4sg$sCt0i`oH z*YF2PYxr}+p%r8V%~koduEZJU%wyPqCmM>0fU}v@gSTj^%%r#RPF?X%a?2bP4Uvnu z1w0#ySQ~9#6d`ETyWzgTdmJS=uFj?kRQlM)P+a#m2MNeZjxOzvkXcrH0yE+F1AIt&6D#~9_AP&7 Sl^@05@hRyP*X7^2i2N7Kl5))e literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/PlayScreen.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Screens/PlayScreen.class index 81df8c51b465d2787c58d1411639397ea8d500c4..c9e7e84ef967f782d6a1b2fe094d49f70e0a9cfa 100644 GIT binary patch literal 8741 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

r09jiw%fz3qm$`O zXb*GC);4Yw$P6cs3u=a0SjX+|L~4vC7-)2(=a29&2L4%aPMLG>ij151G5(ccAM;4g zD-WeEv(_5?JAPu|KX|4xHtq@&KgE9%Xk(e{?TNm$&5T_$k;d+(!_~B$|2FYI_+OTB zZn4vzj4&0yw0yHtBhqDbh_~@`1OLbPQ?_&YaudJ6FIhy<2leu;^ne{thGP!5Th%y! zlx=CPX83#86lj2ziNLiRH*O5Ho&Ugt6hQ)}R4V5}$nUVVy3tRDDT}3=#$}~aak`jp z+dY~Zi)UzY?LMwj6xv%nA1OhclFy8(fv>0_&ruKxD7B`XIP%2JKiOEtjF zI&gKwjyu-=m_CVAjV6!T2U0xOVdhRc*qJ=e+^Jf-`!spUPxshI*sWz|86IJxnYY)f zu~fuzSjUK5XyPsWFtF{eyY6OkAQzc(v8+@JbZoM(YV7Ln*0kYeS#8Ss_@N<}ER=P7 zX@Kj(2i$GaL0Kc05o=^E-O^LwoG4Oo3$J3+oQ2d)rZg+WSMu>AO~`v&E;r>0y}%lp zMqfU6ti~Nu%OAYUqDD5Tz+0H5%0^Q*$!5kOYE@Ihf)pk9R6yVI8i_#0oouZky(29M zFXc+0TUU9xwW^)T?~kO_lx@QDt|H15dS$u$6eQZ!({g2Nja(}`4B0NYsLXRpR+`c- ztOCtwydzHA?MTLx484XXrc|f0=`^KFc5yDh#Pe)kb5y!bd5=c#cDde^9_ghWaknAb zBK?1^)V$YXO*+1b&V5q$l7aLIcKdirse`)-&s+{O%~Fl;N!e#gzwBoK(JC5!_!Km&#h~|2s3N@~gDTg} zrre?|7qJ?qb-EtPd!|j&*_5F#MwKVJ)G}#Yh0H+j z*gSJr}hr6o5Zh7 z;XoFLI6Tb7H)e5DGZ)=dcS{ad7B=UjgPgGIVpBMp#i(+aM3PN!4w>47*O{nI)Z}pc zLH%0y!7M&Rx;qC?3tVo)}2p~{VQ3##_=1|KT!{}7K|dn98PyMw%lEnOO7DV6_qQDJs$GK>u3Lq_ z!{5{J{(;jb`r1jMwq+LBpMwsrNDrQ9i-ANO#5WjOLP`1fR#FER;Wu7w{Qg+DXxehemvs*7LaR z!xM58UvRIu&AY~e1&v4@KFUk3ky~Y%CRlRgl>w;`{s*)*{2bf)?;=_rlRM97SWgDjUJ-9zlamX0z7xx&VM$eGPFCn)Il1bz ztWghpbIp`o+Ix9U8ac@0iEA{nj@Oly_2tueCo3VH&dHT*Tp-Fx%Zy<+yAb{~4R?~@ zoTbz`!s--#;1nOsp2Z-(j9Xb%kKk)FzC|C+`xaj#JPhsf>9f5;z7;&% zaXs5r&&bs^H8tibX{+S3$JI->vPdj4TX)KQ0nU z3g?M0O!!k@!qJ5Zf96ZbOen8}aki@d7FB;vG{Dl7GHg!d#9{MzPR7_A%E>V{U(d;L zHc#bbd`4NT-DKvMj1liJeR&u4WY|D=T_ZG2#+nUMRU}1A;oK8)TV9G{BWRm-k5XMk NJYxj!Q&W-K{~t115~~0J diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/SpaceGamePrototype.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/SpaceGamePrototype.class index dad1e7ace3dcbd5d099d670173fbb82a2dca24ed..b4012932abf953729764994a5748ee0e0028e36c 100644 GIT binary patch literal 1318 zcmb7DYflqF6g^W~3(Eq6BBJ%hL%Ky+q4+=$ld`(qZFaW=ewK+q zqKTi4pZG<_J1w>qBGF_sGiT=BGv}T=`{U=AZvc{b9Yu&iH{7aj@_ozXwm9I9DZG!u zwh#3RuL?a^+pSoJUNH}J8N(1Ql-{Q|^4kn7&Cs{* zI)1>Npup|A=mJ8g4Bds&b}GHKooDFJS_i`Rv%=dEfk)|VGraa4VCdaQZLYq{o<$ z3dEWWUSjAnc$NHUm!2@c|ID_`jB`X+1 ztcTowsNy2W$7q4In30dVdc^*%vwSuIZQE>w!QRocGOX+eXTR7wm$FpsoEy=z`P0O#jexr4ZDxP6f z8nj66dP4pcvZXIoEXkHCIk)Z^V$+h{9J$z&*$;f5;{geg@3b4Eh~NsLsC=~z+;a{q z=xv>=6yJyb79JpcwF3_l9_ql?D3Tf|{}Jgt&0$*6+oSOoA)RJMb0l$s+n;C=!W|l= zAYcG@X;hm5xQF|M7)k$~Tq5Z*PD^~nSn&iCN0_ALRBK_21owjdrzK`rI`Y= zFyswgQ%-(T&CJ4_24O`YjZ6x~afw~L==y%A=bc`)Z_mSAhmBHDT_)^S5ee}#EF6hKDF>+8jGBZ@dsGKGT#VRRD2R*faSg++ZrMNf&!;@i?P)qDibe*zRJZp z%plK9AqHC!%zH2&Om)aHm`X5Ib)Qif!i{5rRpRDl_9`(;L>BM>F(t14@@HRpM5! zhzWFGl2@eV%6iqhP`YH70|9;9sXM`hKs1$}7l@tpDs}=1ltv6oAf<>nxaJ=w8VPyr((iWHk`BWi9*$f=lDmaZG`(U5v>wyzE zHlwu{Nr&e*tQp3TP3HwVicYmIgQic|Z?^j#-=5!zZR6=gFOmj!3+%i%LKAzim)tj; zHwcu8$Sc!*Ci=0T>#EH>B~$ryis6hyRjn*rH5n{g^OTL}pU8ILAsjOBu)v_Y|GtJM9>HM&vCLmC z0fDrMBN!FXe6Lxra7^X$>6~)+sEMPY?Fv)pQe_GYRn^_D2!YJ@k|&UGz1MAjvURnf zMiR}XrN3Y33u@zKLVcCQ*BrvzbFbW2mhMV^stwh)^(3&P7|8PFX}J_ulYw!8-JwK6 z#wVTXIlJuCq?^D5o;L6l%W|`lbFL=?6VG5$ARc(dz<26ZC79e+!L(jy6UgG6D(&;i zVvC?Q_S5sq;#m_@AUE-b9TZvYRAqlEe^-EQphBO|n3AZq(3^}4I-)vNyc{`drNj#3IS2CM74md!`f=8kybo-KkW;W%Tf$6aByeBT*Z zbx*kC`)8YnB1l1FC_M5Jw;b;EtX4k|+-67!mBet;T-dPgg))?4-t&?nZ3`#lE$Ipd z)?i3pNl%8?3}@w~IyEY72JObTg^oC~2GYne#LJa-8Z@wh1d=K$8c1PWjqxE;D3 z5wv*6A@yR@?{cTj1F87@QVaWXK*KDa<^P(?Q~&?~ literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.class new file mode 100644 index 0000000000000000000000000000000000000000..d3825d60cc67b5eab540fd079e75d4c1caeda7a4 GIT binary patch literal 2027 zcmb7F>r&fB7(HtnWV;Fpw9ry=;TEtlL=8=EHiZNO38_tJ?b7MLuC2u=6_Q616hBrw zxy+QAK0qI;(<8|tVFIZAVR?7;eP_@4Zue?Mh;sPGAL=@{M(MK=Q8V z8#}J4Dyzg!AIh%4Tm;aPrtNmDw$U+944(T2nJCj}hR?d}(p=lOPGTa3_g%UNJ>P2k zM$0`}HjS;=l1_swmSY900uN%ROC#85drCRJv1`j-ysi}Y1Ts~!%_EIr9oH~I(uLw) z9v@*$!>E99rTF(Tb$pCZ1hO3!L>Uq&6pBe|BFjp6>8Cm-aFeR&&!Al5eNp%{+-9gl zw&x;!K5Xl*+1pV2dECOVhADwkg2S$B_d2fAIFMZiX)^Sh6(}Zn^|KS*G=t$B=26s8 z=tnb|-)zXU+3PAD3n&TX8v)C>9i9r@Pl{$=#R?3F8x;Q7(pPah>jaFTBQ$(kpye=VN^56t{kUjXUMcDJHp?E)SeyhKsx9!ST!=n0txE-yb}KlU%@Z*3zd(ZVvP(R)fXpTVtwHSwiaLE$y=5q!~zFT v7A5Lm#3+^`R+F*!8LKhuV3XKcvU!GGqNngZJyZAr4gTl(Zk}qJ56AxnWVJMx literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/MenuCamera.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/MenuCamera.class new file mode 100644 index 0000000000000000000000000000000000000000..fd1cd19c3bf6ba89fccbfb89aa76ac3d3f9cb884 GIT binary patch literal 1880 zcmb7F?Q+vb6g}(MQ7j7_LZC_QKmsY)A&H8ipC&*XaB%AoAgP1t=UP(jO=Zg?%fb2G z8NWndqGf_TG&6mGK2)c7<&R`W6KKaH>F(X#d(J)g?)vY4{`?ETE$k@>F{~I)O*i?z zFu85DdEKlK$bs={dMTdr4i2BUtgEW^aUuwFJCmm=H@?rnL3z=uopZO^ql zqgotnq3z>$L|u4y86v5CK3!x8uRErtVhm?AL~)jQrP4(OlMKuMhnb2v&P2g*UPA=q z3NA3{fdFr(r(zoKNft8<*HgJ%Fujp913A(~3HiPT1ru_2Qp23gA;KFC`yfi3E^C;_ z0?F2Jn!*!Ko#ApYZjF0Yy+~zo+*?@{SMh;@MTWUR0w))0xQ6SbSJR?eEE3;b`kj&E zNNZS<6vtZ)lY16Jyddh<<5sO~xjVdUlV_^n7~C#$SIF_e8TP88Nt*f)|GD|7;*poa z^r{RjPoPyxRH{UGf-)-;uF0^FI*s-w_gvAwos~L%q#=WkPZw{vR#xFtnW9RqP_evx zz0soA1|5Z6$F<*z*DpYZ@b2KQf;EQeKmj()wuXDSPk9L$nqej=x(}L-;Y&PFu+DHX z5XN7j;URK#0*K~wzwh%B`H_Y^z9NZ+&Bl-jLTn5UDWMebSivU4Yyf4rNW+!{iW1Nx zzW|cjQw`6C@Fm%EJF@k^p(6RMRFo%bSHp9ZXlJY5aGn0WaX%GgbFwY7rIZ;>ERm6zUM&23z(8Fb!&v^%8MlC*JImoEsG9WY{Xdhn7Zw> zT*Jx<+1~NvyKz-si&&sDJVy6xh<#`i5yH3YFe58vRCda^1tF9<-$+#7jM# zdyOeFr%Q=Wva@uEsU9xA#w=O0T_mLA5SJ1WyOX3R*2R@w>FXl(hYxdu-k0e10Er#O zB)!k!3Z{_8d8|<@Kfnbn)9id77%Nz%5mA7S4~dqvZju!uJ41gEeWDrq%DIU?{_Wq% z4nbm#`~Dd}rq*9Gh{@!cA&*S7Kxi^iRi=?hcJawETa_XKNs?vm1T%HSOdT;(N6bFM z=Yz<E4>pfQs^JO=cP!P~fY2gl@v~py6_U3?mXxYW6haXH0-kxk4*&oF literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.class new file mode 100644 index 0000000000000000000000000000000000000000..9be034666c9599e127d709004c85fd7e1543c392 GIT binary patch literal 4587 zcmb_fi(ed989jGdc3?6jffQ0mFc4zOtC=Pyv1KC-&}>5rgam|wT06TtVJ8ebxU&$b z)mBaGqduyMuc(dH8mhLnt;rIK*7&aV{jBdl#H#V!nFTfhHf?_X`0X(F^?lzx-}%nH z^YVXRcoD#x@J|H+ftHvvrpJv*D{k24l#z^^sZrCmr}YtI%+&iG$9DBzBb_*ACF53d zWY9_3@s5;fq@9$4puqa$#-yR!Msh?y96fHv(gMY{6Eo75lXN-U<&96IEnDxh+;o`3 zebz|QNKd3pfrD2K@9WAN&VgjwN?WF@x0?xu?4(@1$BCQaR+=qc@Y>GkM&r(jq`>ep z^H)Z5-R`8rf-z%UV7nJ_)QH>8h!xXE;!`^NU7Z^?<9fe*b{pfI9@=Lmt#qqEL;Y)8 z(l8(p?BMoP6rfZ?3CifSzG0vk0yk(_15IFEmz6YoCdQ&>s^5s(gtV-S=-UHE%98DD zXE2?xn2l@fH*dDN1$Dr0~(RehMTd25YwT+?s}g)9<%$>DOw6&%XwJEE!d@CC-? zcE`vi;T&t0ImOX)7VH zbwxQ_+H|;KU=5DLRxm2Cb}4;QDm09NGF@QA;{xTmH1ksuZWxxSAJ_0MkR3|GaC^Kg zQwE0>Fx}00!}kU4$b=Oe?Q>Fuz{R8t`vjFM>uu>|^5dM=a39`H=w0hR!b3-$a@l({ zycZA1ZrYImc6Lf3cJV$9??;FO<4iPF-Y-Id+SP?ByEm>$dFSPdQ*+rs=`Eh@bzGi( z4&mCelIa}42~^TNArD4@z24l{n_oH%I8lKe`Bz^BFIScHrH$Aq)g*iF$U0g)F<89| z#kqvKz@cTG*EptDA*FWsMNs@^S?`)uCoTegpob&3i-5R;Wj9Fubt>QEIoPy8t z1oehJwTRe`K~8=iXINut$5(wx%t%(1at{L)r|?BdrY~JZ-G#$qK+ZU;;mdfO=6H1W z@myv~sw8)OmAfh^>gFkYRl^gqa@AupngPR};2Oa#i3oKm?uXxN8!_44$wWmtR3e_lhdJW;I;&x~3JpAfUenv1zxGMryjxG*YpIiaC_Z$9FZn zi0?6d(VS6%&Se^uzus0OenY2J*ze2x%MT&rwV>@#kIX}+D)5d z8eYQBsCUi;<*nSOljZ2Wy!fQaXww)YJF76Q;urXpf?qD&{jQv&;n(;L^=Dizv#C`< z1|tu$q^Cw|GKY#;C!Q4KQYsWnn6XhFd;ZJN!VAs#Jv^Ux<_F3brrcDJs-cwWPT1UC z#g#W?-f^;O)tz(qSd8epNy!rKW6{OT2tNXN6I$gfYKPPx)bf^Gz|XP*1mvZeErqQB ziumKzd9kgs&5J+B3fWhJwS2B)E5iN&|ErC&Sl`%m0UMt4)|d0S*0WrRAU4s~W>m1R z!k>+exREV+iI7%FepI5&w<&t)H^i~08|P6qG>gp_P`&iJrSUvAWKdgnQw9wg=w*8{ zcyk7C>7K!n<~ei-Tta78(}zkB@FER2@mJmN!@ z!C4$@DWvi0%ECEV0SwZbBXH*OQ}b|#Vr z3*F6|lnfs0ZqDE<&v4AQ=TqP|M%%*J!k*n4e=WX-bDT#jn8A~@tnu&b_y$)Be3Pgw z1pKu0DIVvp*Kqc^EGN1HtuuHeus1k^`>V@?XW{aB?-_(u!=21OZsXRlhW2F{|QS@x8xbGQ^B zznJ(R4xS8(@?h|Z%O_73h-&_yd>%jI?qAN}=gkt)poeG#rF_4g1+|}L(?%59QNx_p z;Q*NuVe3u`{y_|*6EPgZIPStEx|rQI;=LbdaD*&5>LEAoBd}OJ=kQx{fQLLD!|(8W zBBtU|9wtu`;q|;8UgTSlUIy_8VqNI@`Xk>$^w@$wkx2^u>Uf1#is*eine=Ct>Nq*| t7p_(DSH>=R;CuKRJxG?7BlI7XD5w(uMxj{uD$KyYI7Q&^91P$e{{y5i^;G}> literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/QuickSort.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/QuickSort.class new file mode 100644 index 0000000000000000000000000000000000000000..491279a790035237a02b6097a79f1d8eeeb0e206 GIT binary patch literal 1907 zcmbVN&2QUu7=C_^6DO(Lb#2qIC7~OTk&h9xQA#1De2I!^VSIE7<2E<8QnyYVIc{ks zgh1@d1&K)oE^tAb5D01O1VV@#5}Y`3LtOYPCMb`c1e!Dqv_tIo_q^Y~_j#Qk|NQ1V z0FU4q1(Lwoy3^DQecLj0+uYGxhUspaw!N!0^rop@avZy(y|QK1H&-3kQy>dWZs^;( zX6vnn_R`vhS@#6ww(hM{Qw>yGo@HxQtK*dgVyjl8rF&bhDe%IOdZ~KH+|Rc>%d^am z_N=+i`W&~TU33hyyv(qXC97q5%L3E6p`hh_P2j>Xde^D^X!3JR8%GEeDq=V$5X$9i zF$f%25k^GdSk-Eo7q^;grh7?Wv)SrY)v4=tO?NH-+yiBA-RcOG?%ej!m9yE|!C<@X ze!y5;cl|qZS_0u*rIN3V;Uv-uQUVi$qfn8-y{x=pa$JdACEvZaLsKj(I3+NDHzSE- z4)>|J9}kcN%sEtw47aUqhwVm!_v_SI{B2O-na%d) z-kbRNs;AdCU)06yCzZbU;RcgY+Fp%_L?r#mL8u#CzA{vDWF%hfw=!Vwn+{!j zKX3Ry4Etptc27on-UA?8DJB^1bCRG-pjSx~;5eUCT%l={D9w{XZ<84B@|&@T6uv|n zzwk40zz;5$|z7_mLAnAuoPIF(6?ZV?LP}Eg&JK5;UKDlpdxe zF~-k0hXU)!i*IqBl8lnL#s43TggqxhtV82^?BRVpO0B{=-oyf>C^PQ`ScLiC2`~kZ zv5ymw59p>S5JE_jV7}Y9a2wYprsjHfxsJD(N~U=xmHreb3#s%zo>(rVGP1Fcr9wu& zLSX5iC7WeEVAWyPrZUeAL#0s;`t+-2pnji}dVNyr_NihL%j_f+RLB)ivx=waB;o15 E08;jva{vGU literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/TaskWorldCreator.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/TaskWorldCreator.class new file mode 100644 index 0000000000000000000000000000000000000000..32c17ae988a876e9004bfe241a4e3307d25a17c3 GIT binary patch literal 2424 zcmbtVZBrXn6n-uQ7M7(@C|Fu3l+v0&+l4|a608<1_9Z|qF%%T-CRvk(%`WaP6s*6* zKj1e*+kup?mK}MSf;Pf znR#aIdcMBoX3h9r`fe;3+XB}@2WcZ~yE!YP=dyb`<-X2L%&eZ2&qZUK>dmv3V+D5w zV$uI*5=#k0<{3>zBRVv+p_4(Qu~aJrx-_&x73fG)wT%|N;h(N@qW&|L*@73a|*lk3;egk}|&Fr;8mU_@g4Hi$G_ z#xOgUV<=Hyi<9f677N zNZ2MTE7_@-!W{*-1%|4d9&7p<-otbW@VWiu{x-QYQ3=JoZTNmQB;=I&r7RmgVs_e1tg#_sHYZUp36*V-AI5?y+y@jyzOs z1){c4ul+|LP2hoshj>J4voXgo)}&mJKf#(Y5&{FK$}JewO0grZcT2?*o+wzZo=c@S z4WHsEYhoJD!tq{^wn+`2NpTCst5!D1N9O(jfVY9-7hXzT71*XK5O z9d@Of>xxR4m1Dk;t6tzv{iRt0I0kHA35?7Z2d=z?CDo3%C<%VV-|*HdUs#V$3IE3p zrLMR;UdCMDCB#Pj`(C{%2aHRXo#GAMz<(}no|N#^!ZU9ezBf|V293{lo)$t)a&hzk zXGX_f;q1?$em9?ILQma@pog}-I7eA8^(AwA_$L3<(5s-gchFh#DH<8Kncuz}J;eF7 z16+88i=)5bY!L%pSBkh=#8}rv5tBu{zxV@|um6e<1zzKRV(c|2|77V9kJoM#vB=*_ zyOZupIec5?Z@qLnz{X7E5YN~8A_qv%G|~CRzNR9~Rr<07zJK$htfCRJiea?yd4V1~7GzM)NowkmuCwAi6d zHyYmXu4+`Mt#A_X7bjL=7cU4_3I4qhY@Jd;gD~Nr_|gz&D7yq)4YQDap+Y$ef&EbH G+kXH8osB>M literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/WorldContactListener.class b/SpaceGameFolder/core/bin/main/com/davidalexanderkelly/game/Tools/WorldContactListener.class new file mode 100644 index 0000000000000000000000000000000000000000..98dd98350297e7f5f658fb723c056194b5625686 GIT binary patch literal 1802 zcmb_dT~E|N6g|U!6iXFdKtu!)6?S2l0*W83qN0*$7K~w86W?aH!!kIuYuhF8Q}hSu zvoDzVV0`kyf8(oB<88NKT#Plwq@B4loqO)NGiPo;eSh~Jz$M()(7|xE=4_c3-ew0Kc-YaOo@$t2nEvBg-M4+|OW~Pip+v)R{UDWQFQv`0Ep6=v+V8 z_E@j|P5sr5mMA-YrtT}rPk)npszYjwg(DJX5EX*edlKEHA z3N*;irv_5A^dpXi{RiasFd48(gltBME+~GA80Zvz6dBCX9bcq6@euu3!(hmCp~WU* zO1v-?CYZuwOk;-F>L_8BtOWUw;0#$wLg}HJKSSu3DasJi-!Q6Sn4WI>5e$Dt7qx-) z1-+E`+(G(tw7i2}*1m7&LN+H`9}n12`H!~y3a&;wc#GT findPath(Node startPosition,Node goalPosition, PathfindingWorldCreator pathfinder) { - this.pathfinder = pathfinder; - Node startNode = startPosition; - Node endNode = goalPosition; - depth = 0f; - - ArrayList openSet = new ArrayList(); - HashSet closedSet = new HashSet(); - openSet.add(startNode); - while(openSet.size() > 0) { - Node currentNode = openSet.get(0); - for(int i = 1; i < openSet.size(); i++) { - if((openSet.get(i).fCost() < currentNode.fCost() || (openSet.get(i).fCost() == currentNode.fCost() && openSet.get(i).hCost < currentNode.hCost)) && depth > currentNode.fCost()) { - currentNode = openSet.get(i); - depth = currentNode.fCost(); - - - - } - } - openSet.remove(currentNode); - closedSet.add(currentNode); - if(round(currentNode.getWorldPosition().x,2) == round(endNode.getWorldPosition().x,2) && round(currentNode.getWorldPosition().y,2) == round(endNode.getWorldPosition().y,2)) { - ArrayList returnPath = new ArrayList(); - returnPath = retracePath(startNode,currentNode); - - return returnPath; - - } - - for(Node neighbour : pathfinder.getNeighbours(currentNode)){ - if(closedSet.contains(neighbour)) { - - continue; - - } - - float newMovementCostToNeighbour = currentNode.gCost + getDistance(currentNode,neighbour); - if(newMovementCostToNeighbour < neighbour.gCost || !openSet.contains(neighbour)) { - neighbour.gCost = newMovementCostToNeighbour; - neighbour.hCost = getDistance(neighbour,endNode); - neighbour.parent = currentNode; - - if(!openSet.contains(neighbour)) { - openSet.add(neighbour); - - - } - } - - } - - } - - return openSet; - - } - - public ArrayList retracePath(Node startNode, Node endNode) { - - ArrayList path = new ArrayList(); - Node currentNode = endNode; - while(currentNode != startNode) { - path.add(currentNode); - currentNode = currentNode.parent; - } - - Collections.reverse(path); - return path; - } - - public float getDistance(Node nodeA, Node nodeB) { - - float distanceX = round(nodeA.getWorldPosition().x,2) - round(nodeB.getWorldPosition().x,2); - float distanceY = round(nodeA.getWorldPosition().y,2) - round(nodeB.getWorldPosition().y,2); - - if(distanceX > distanceY) - return 14*distanceY + 10*(distanceX-distanceY); - return 14*distanceX + 10*(distanceY-distanceX); - } -} +package com.davidalexanderkelly.game.Entities.Behaviors; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; + +import com.badlogic.gdx.math.Vector2; +import com.davidalexanderkelly.game.Screens.PlayScreen; +import com.davidalexanderkelly.game.Tools.PathfindingWorldCreator; + +public class Pathfinding { + + private float depth; + PathfindingWorldCreator pathfinder; + + public static float round(float d, int decimalPlace) { + BigDecimal bd = new BigDecimal(Float.toString(d)); + bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP); + return bd.floatValue(); + } + + public ArrayList findPath(Node startPosition,Node goalPosition, PathfindingWorldCreator pathfinder) { + this.pathfinder = pathfinder; + Node startNode = startPosition; + Node endNode = goalPosition; + depth = 0f; + + ArrayList openSet = new ArrayList(); + HashSet closedSet = new HashSet(); + openSet.add(startNode); + while(openSet.size() > 0) { + Node currentNode = openSet.get(0); + for(int i = 1; i < openSet.size(); i++) { + if((openSet.get(i).fCost() < currentNode.fCost() || (openSet.get(i).fCost() == currentNode.fCost() && openSet.get(i).hCost < currentNode.hCost)) && depth > currentNode.fCost()) { + currentNode = openSet.get(i); + depth = currentNode.fCost(); + + + + } + } + openSet.remove(currentNode); + closedSet.add(currentNode); + if(round(currentNode.getWorldPosition().x,2) == round(endNode.getWorldPosition().x,2) && round(currentNode.getWorldPosition().y,2) == round(endNode.getWorldPosition().y,2)) { + ArrayList returnPath = new ArrayList(); + returnPath = retracePath(startNode,currentNode); + + return returnPath; + + } + + for(Node neighbour : pathfinder.getNeighbours(currentNode)){ + if(closedSet.contains(neighbour)) { + + continue; + + } + + float newMovementCostToNeighbour = currentNode.gCost + getDistance(currentNode,neighbour); + if(newMovementCostToNeighbour < neighbour.gCost || !openSet.contains(neighbour)) { + neighbour.gCost = newMovementCostToNeighbour; + neighbour.hCost = getDistance(neighbour,endNode); + neighbour.parent = currentNode; + + if(!openSet.contains(neighbour)) { + openSet.add(neighbour); + + + } + } + + } + + } + + return openSet; + + } + + public ArrayList retracePath(Node startNode, Node endNode) { + + ArrayList path = new ArrayList(); + Node currentNode = endNode; + while(currentNode != startNode) { + path.add(currentNode); + currentNode = currentNode.parent; + } + + Collections.reverse(path); + return path; + } + + public float getDistance(Node nodeA, Node nodeB) { + + float distanceX = round(nodeA.getWorldPosition().x,2) - round(nodeB.getWorldPosition().x,2); + float distanceY = round(nodeA.getWorldPosition().y,2) - round(nodeB.getWorldPosition().y,2); + + if(distanceX > distanceY) + return 14*distanceY + 10*(distanceX-distanceY); + return 14*distanceX + 10*(distanceY-distanceX); + } +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Enemy.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Enemy.java index 8c6d420..da658fd 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Enemy.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Enemy.java @@ -18,8 +18,8 @@ import com.davidalexanderkelly.game.Entities.Behaviors.Node; import com.davidalexanderkelly.game.Entities.Behaviors.Pathfinding; import com.davidalexanderkelly.game.Screens.PlayScreen; -import com.davidalexanderkelly.game.Tools.InteractableWorldCreator; import com.davidalexanderkelly.game.Tools.PathfindingWorldCreator; +import com.davidalexanderkelly.game.Tools.TaskWorldCreator; public class Enemy extends Sprite{ public enum State{IDLE,RUNNING}; @@ -27,7 +27,7 @@ public enum State{IDLE,RUNNING}; public State previousState; - private InteractableWorldCreator interactables; + private TaskWorldCreator tasks; private Animation playerIdle; private Animation playerRun; private float stateTimer; @@ -165,14 +165,14 @@ public State getState() { public void setPath(int start, int end) { moving = false; pathfinding = new Pathfinding(); - List interactables = screen.interactables.getLocations(); + List interactables = screen.tasks.getLocations(); path = pathfinding.findPath(interactables.get(start),interactables.get(end),screen.pathfinder); } public void defineEnemy() { BodyDef bodyDefinition = new BodyDef(); - bodyDefinition.position.set(screen.interactables.getLocations().get(0).getWorldPosition().x,screen.interactables.getLocations().get(0).getWorldPosition().y); + bodyDefinition.position.set(screen.tasks.getLocations().get(0).getWorldPosition().x,screen.tasks.getLocations().get(0).getWorldPosition().y); bodyDefinition.type = BodyDef.BodyType.DynamicBody; box2dBody = world.createBody(bodyDefinition); FixtureDef fixtureDefinition = new FixtureDef(); diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Player.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Player.java index 97b9c47..42a34db 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Player.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Player.java @@ -109,10 +109,18 @@ public void definePlayer() { FixtureDef fixtureDefinition = new FixtureDef(); CircleShape shape = new CircleShape(); shape.setRadius(5 / SpaceGamePrototype.PixelsPerMetre); - + fixtureDefinition.filter.categoryBits = SpaceGamePrototype.PLAYER_BIT; + fixtureDefinition.filter.maskBits = SpaceGamePrototype.DEFAULT_BIT | SpaceGamePrototype.TELEPORTER_BIT; fixtureDefinition.shape = shape; - + box2dBody.createFixture(fixtureDefinition); + + CircleShape sensor = new CircleShape(); + sensor.setRadius(6 / SpaceGamePrototype.PixelsPerMetre); + fixtureDefinition.shape = sensor; + fixtureDefinition.isSensor = true; + box2dBody.createFixture(fixtureDefinition).setUserData("player"); + } diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Teleporter.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Teleporter.java new file mode 100644 index 0000000..a170eba --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Entities/Teleporter.java @@ -0,0 +1,31 @@ +package com.davidalexanderkelly.game.Entities; + +import com.badlogic.gdx.physics.box2d.Body; +import com.badlogic.gdx.physics.box2d.BodyDef; +import com.badlogic.gdx.physics.box2d.CircleShape; +import com.badlogic.gdx.physics.box2d.Filter; +import com.badlogic.gdx.physics.box2d.FixtureDef; +import com.davidalexanderkelly.game.SpaceGamePrototype; + +public class Teleporter { + + private float x; + private float y; + private Body box2dBody; + + public Teleporter(float x, float y) { + this.x = x; + this.y = y; + + + } + + public void collide() { + System.out.println("Teleport"); + } + + + + + +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Scenes/Hud.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Scenes/Hud.java index cff19e0..d2b3d7f 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Scenes/Hud.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Scenes/Hud.java @@ -1,22 +1,84 @@ package com.davidalexanderkelly.game.Scenes; +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.graphics.OrthographicCamera; +import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.scenes.scene2d.Stage; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.Table; import com.badlogic.gdx.utils.Disposable; +import com.badlogic.gdx.utils.viewport.FitViewport; import com.badlogic.gdx.utils.viewport.Viewport; +import com.davidalexanderkelly.game.SpaceGamePrototype; + public class Hud implements Disposable{ - public Stage stage; - private Viewport viewport; - - public Hud(SpriteBatch sb) { - - } - - @Override - public void dispose() { - stage.dispose(); - } - - -} + + //Scene2D.ui Stage and its own Viewport for HUD + public Stage stage; + private Viewport viewport; + + //Mario score/time Tracking Variables + private Integer health; + private boolean timeUp; // true when the world timer reaches 0 + private Integer imposterCount; + + //Scene2D widgets + private Label healthLabel; + private Label imposterTextLabel; + private Label auberLabel; + private Label imposterLabel; + + public Hud(SpriteBatch sb){ + //define our tracking variables + health = 100; + //get imposetcount + imposterCount = 8; + + + //setup the HUD viewport using a new camera seperate from our gamecam + //define our stage using that viewport and our games spritebatch + viewport = new FitViewport(SpaceGamePrototype.V_WIDTH, SpaceGamePrototype.V_HEIGHT, new OrthographicCamera()); + stage = new Stage(viewport, sb); + + //define a table used to organize our hud's labels + Table table = new Table(); + //Top-Align table + table.top(); + //make the table fill the entire stage + table.setFillParent(true); + + //define our labels using the String, and a Label style consisting of a font and color + healthLabel = new Label(String.format("%03d", health), new Label.LabelStyle(new BitmapFont(), Color.WHITE)); + imposterTextLabel = new Label("IMPOSTERS REMAINING:", new Label.LabelStyle(new BitmapFont(), Color.WHITE)); + auberLabel = new Label("AUBER HEALTH:", new Label.LabelStyle(new BitmapFont(), Color.WHITE)); + imposterLabel = new Label(String.format("%03d",imposterCount), new Label.LabelStyle(new BitmapFont(), Color.WHITE)); + + //add our labels to our table, padding the top, and giving them all equal width with expandX + table.add(auberLabel).expandX().padTop(10); + table.add(imposterTextLabel).expandX().padTop(10); + //add a second row to our table + table.row(); + table.add(healthLabel).expandX(); + table.add(imposterLabel).expandX(); + + //add our table to the stage + stage.addActor(table); + + } + + public void dealDamage(int damage) { + health -= damage; + } + + + + + + @Override + public void dispose() { stage.dispose(); } + + public boolean isTimeUp() { return timeUp; } +} \ No newline at end of file diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/MainMenuScreen.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/MainMenuScreen.java new file mode 100644 index 0000000..04a2d54 --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/MainMenuScreen.java @@ -0,0 +1,158 @@ +package com.davidalexanderkelly.game.Screens; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.InputAdapter; +import com.badlogic.gdx.Screen; +import com.badlogic.gdx.graphics.GL20; +import com.badlogic.gdx.graphics.Texture; +import com.badlogic.gdx.graphics.g2d.BitmapFont; +import com.badlogic.gdx.graphics.g2d.TextureAtlas; +import com.badlogic.gdx.math.Vector3; +import com.badlogic.gdx.scenes.scene2d.InputEvent; +import com.badlogic.gdx.scenes.scene2d.Stage; +import com.badlogic.gdx.scenes.scene2d.ui.Button; +import com.badlogic.gdx.scenes.scene2d.ui.Label; +import com.badlogic.gdx.scenes.scene2d.ui.Skin; +import com.badlogic.gdx.scenes.scene2d.ui.Table; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton.TextButtonStyle; +import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; +import com.davidalexanderkelly.game.SpaceGamePrototype; + + + +public class MainMenuScreen implements Screen { + + /* + * Initialise menu stage where widgets wil go + */ + private Stage stage; + + /* + * Initialise atlas which will retrieve button images + */ + private TextureAtlas atlas; + + /* + * Initialise skin which will map textures to widgets + */ + private Skin skin; + + /* + * Initialise table where widgets will be organised + */ + private Table table; + + /* + * Initialise menu buttons + */ + private Button buttonStart, buttonExit; + + /* + * reference to game + */ + private SpaceGamePrototype game; + + public MainMenuScreen(SpaceGamePrototype game) { + this.game = game; + } + + @Override + public void show() { + stage = new Stage(); + + //look for inputs on stage + Gdx.input.setInputProcessor(stage); + + //load in button assets + atlas = new TextureAtlas("assets/UI/Menu.atlas"); + skin = new Skin(atlas); + + //load skin for use in table + table = new Table(skin); + table.setBounds(0,0,Gdx.graphics.getWidth(),Gdx.graphics.getHeight()); + + //Initialise button styler + TextButtonStyle textButton = new TextButtonStyle(); + + //Start button styling + textButton.up = skin.getDrawable("StartButton"); + textButton.pressedOffsetX = 1; + textButton.pressedOffsetX = -1; + buttonStart = new Button(textButton); + buttonStart.padTop(20); + + //Start button click event + buttonStart.addListener(new ClickListener(){ + public void clicked(InputEvent event, float x, float y) { + game.setScreen(new PlayScreen(game)); + } + }); + buttonStart.padTop(20); + + //Exit button styling + textButton = new TextButtonStyle(); + textButton.up = skin.getDrawable("ExitButton"); + textButton.pressedOffsetX = 1; + textButton.pressedOffsetX = -1; + buttonExit = new Button(textButton); + + //Exit button click event + buttonExit.addListener(new ClickListener(){ + public void clicked(InputEvent event, float x, float y) { + Gdx.app.exit(); + } + }); + buttonExit.padTop(20); + + //Add buttons to table + table.add(buttonStart); + table.row(); + table.add(buttonExit); + table.debug(); + stage.addActor(table); + + } + + @Override + public void render(float delta) { + Gdx.gl.glClearColor(0,0,0,1); + Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + + stage.act(delta); + + stage.draw(); + + } + + @Override + public void resize(int width, int height) { + // TODO Auto-generated method stub + + } + + @Override + public void pause() { + // TODO Auto-generated method stub + + } + + @Override + public void resume() { + // TODO Auto-generated method stub + + } + + @Override + public void hide() { + // TODO Auto-generated method stub + + } + + @Override + public void dispose() { + // TODO Auto-generated method stub + + } + +} \ No newline at end of file diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/PlayScreen.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/PlayScreen.java index 97bfd92..2a11fd4 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/PlayScreen.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Screens/PlayScreen.java @@ -41,8 +41,10 @@ import com.davidalexanderkelly.game.Scenes.Hud; import com.davidalexanderkelly.game.Tools.Assets; import com.davidalexanderkelly.game.Tools.Box2DWorldCreator; -import com.davidalexanderkelly.game.Tools.InteractableWorldCreator; import com.davidalexanderkelly.game.Tools.PathfindingWorldCreator; +import com.davidalexanderkelly.game.Tools.TaskWorldCreator; +import com.davidalexanderkelly.game.Tools.InteractiveWorldCreator; +import com.davidalexanderkelly.game.Tools.WorldContactListener; import com.davidalexanderkelly.game.Tools.EnemyUpdater; public class PlayScreen implements Screen { @@ -74,7 +76,8 @@ public class PlayScreen implements Screen { private Box2DDebugRenderer collisionRenderer; public PathfindingWorldCreator pathfinder; - public InteractableWorldCreator interactables; + public TaskWorldCreator tasks; + public InteractiveWorldCreator teleporters; private Assets assets; private Player player; @@ -100,17 +103,19 @@ public PlayScreen(SpaceGamePrototype game) { //Game camera position and zoom level gamecam.position.set(gamePort.getWorldWidth() /2 , gamePort.getWorldHeight() /2,0); - gamecam.zoom = 0.2f; + gamecam.zoom = 0.15f; //Creates the collision world world = new World(new Vector2(0,0), true); - interactables = new InteractableWorldCreator(map); - interactables.setLocations(); + tasks = new TaskWorldCreator(map); + tasks.setLocations(); pathfinder = new PathfindingWorldCreator(map); pathfinder.setLocations(); + teleporters = new InteractiveWorldCreator(this); + //allows the rendering of collision boxes @@ -132,6 +137,8 @@ public PlayScreen(SpaceGamePrototype game) { //creates Player in the world player = new Player(world,this ); enemy = new Enemy(world,this); + + world.setContactListener(new WorldContactListener()); @@ -212,6 +219,9 @@ public void render(float delta) { player.draw(game.batch); enemy.draw(game.batch); game.batch.end(); + + game.batch.setProjectionMatrix(hud.stage.getCamera().combined); + hud.stage.draw(); } public TiledMap getMap() { diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/SpaceGamePrototype.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/SpaceGamePrototype.java index aef8de3..3e9447e 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/SpaceGamePrototype.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/SpaceGamePrototype.java @@ -8,7 +8,9 @@ import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.davidalexanderkelly.game.Screens.MainMenuScreen; import com.davidalexanderkelly.game.Screens.PlayScreen; +import com.davidalexanderkelly.game.Tools.MenuCamera; public class SpaceGamePrototype extends Game { @@ -17,14 +19,20 @@ public class SpaceGamePrototype extends Game { public static final int V_HEIGHT = 720; public static final float PixelsPerMetre = 100; - public SpriteBatch batch; + public static final short DEFAULT_BIT = 1; + public static final short PLAYER_BIT =2; + public static final short TELEPORTER_BIT = 4; + public SpriteBatch batch; + public MenuCamera cam; @Override public void create () { // Sets level batch = new SpriteBatch(); - setScreen(new PlayScreen(this)); + cam = new MenuCamera(V_WIDTH, V_HEIGHT); + + setScreen(new MainMenuScreen(this)); } @Override diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/BinarySearch.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/BinarySearch.java index 9c54822..a4a13fe 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/BinarySearch.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/BinarySearch.java @@ -1,63 +1,63 @@ -package com.davidalexanderkelly.game.Tools; - -import java.math.BigDecimal; -import java.util.List; - -import com.davidalexanderkelly.game.Entities.Behaviors.Node; - -class BinarySearch { - - public int binarySearch(List locations, Node x) - { - int lowerBound = 0, upperBound = (locations.size() - 1); - boolean foundX = false; - int mid = 0; - while (lowerBound <= upperBound) { - if(foundX == false) { - mid = (lowerBound + upperBound) / 2; - } - - - if (round(locations.get(mid).getWorldPosition().x,2) == round(x.getWorldPosition().x,2) ) { - foundX = true; - if(round(locations.get(mid).getWorldPosition().y,2) == round(x.getWorldPosition().y,2) ) { - - return mid; - } - - if(round(locations.get(mid).getWorldPosition().y,2) < round(x.getWorldPosition().y,2)) { - mid +=1; - lowerBound +=1; - } - else { - mid -=1; - upperBound -=1; - } - - } - else if(foundX == true) { - return -1; - } - - - if (round(locations.get(mid).getWorldPosition().x,2) < round(x.getWorldPosition().x,2)) { - lowerBound = mid + 1; - - } - else { - upperBound = mid - 1; - } - - } - - return -1; - } - - public static float round(float d, int decimalPlace) { - BigDecimal bd = new BigDecimal(Float.toString(d)); - bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP); - return bd.floatValue(); - } - - -} +package com.davidalexanderkelly.game.Tools; + +import java.math.BigDecimal; +import java.util.List; + +import com.davidalexanderkelly.game.Entities.Behaviors.Node; + +class BinarySearch { + + public int binarySearch(List locations, Node x) + { + int lowerBound = 0, upperBound = (locations.size() - 1); + boolean foundX = false; + int mid = 0; + while (lowerBound <= upperBound) { + if(foundX == false) { + mid = (lowerBound + upperBound) / 2; + } + + + if (round(locations.get(mid).getWorldPosition().x,2) == round(x.getWorldPosition().x,2) ) { + foundX = true; + if(round(locations.get(mid).getWorldPosition().y,2) == round(x.getWorldPosition().y,2) ) { + + return mid; + } + + if(round(locations.get(mid).getWorldPosition().y,2) < round(x.getWorldPosition().y,2)) { + mid +=1; + lowerBound +=1; + } + else { + mid -=1; + upperBound -=1; + } + + } + else if(foundX == true) { + return -1; + } + + + if (round(locations.get(mid).getWorldPosition().x,2) < round(x.getWorldPosition().x,2)) { + lowerBound = mid + 1; + + } + else { + upperBound = mid - 1; + } + + } + + return -1; + } + + public static float round(float d, int decimalPlace) { + BigDecimal bd = new BigDecimal(Float.toString(d)); + bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP); + return bd.floatValue(); + } + + +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/Box2DWorldCreator.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/Box2DWorldCreator.java index d68e96e..c983e1a 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/Box2DWorldCreator.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/Box2DWorldCreator.java @@ -32,6 +32,6 @@ public Box2DWorldCreator(PlayScreen screen) { shape.setAsBox(rect.getWidth() / 2 / SpaceGamePrototype.PixelsPerMetre, rect.getHeight() /2 / SpaceGamePrototype.PixelsPerMetre); fixtureDefinition.shape = shape; body.createFixture(fixtureDefinition); - }; + } } } diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/EnemyUpdater.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/EnemyUpdater.java index 365dc6d..c98cda7 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/EnemyUpdater.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/EnemyUpdater.java @@ -1,18 +1,18 @@ -package com.davidalexanderkelly.game.Tools; - -import com.davidalexanderkelly.game.Entities.Enemy; - -public class EnemyUpdater extends Thread { - - Enemy enemy; - float deltaTime; - - public EnemyUpdater(Enemy enemy, float deltaTime) { - this.enemy = enemy; - this.deltaTime = deltaTime; - } - - public void run() { - enemy.update(deltaTime); - } -} +package com.davidalexanderkelly.game.Tools; + +import com.davidalexanderkelly.game.Entities.Enemy; + +public class EnemyUpdater extends Thread { + + Enemy enemy; + float deltaTime; + + public EnemyUpdater(Enemy enemy, float deltaTime) { + this.enemy = enemy; + this.deltaTime = deltaTime; + } + + public void run() { + enemy.update(deltaTime); + } +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.java new file mode 100644 index 0000000..7887a91 --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/InteractiveWorldCreator.java @@ -0,0 +1,49 @@ +package com.davidalexanderkelly.game.Tools; + +import java.util.ArrayList; +import java.util.List; + +import com.badlogic.gdx.maps.MapObject; +import com.badlogic.gdx.maps.objects.RectangleMapObject; +import com.badlogic.gdx.maps.tiled.TiledMap; +import com.badlogic.gdx.math.Rectangle; +import com.badlogic.gdx.math.Vector2; +import com.badlogic.gdx.physics.box2d.Body; +import com.badlogic.gdx.physics.box2d.BodyDef; +import com.badlogic.gdx.physics.box2d.Filter; +import com.badlogic.gdx.physics.box2d.Fixture; +import com.badlogic.gdx.physics.box2d.FixtureDef; +import com.badlogic.gdx.physics.box2d.PolygonShape; +import com.badlogic.gdx.physics.box2d.World; +import com.davidalexanderkelly.game.SpaceGamePrototype; +import com.davidalexanderkelly.game.Entities.Behaviors.Node; +import com.davidalexanderkelly.game.Screens.PlayScreen; + +public class InteractiveWorldCreator { + + private ArrayList locations; + private TiledMap map; + + protected Fixture fixture; + +public InteractiveWorldCreator(PlayScreen screen) { + World world = screen.getWorld(); + TiledMap map = screen.getMap(); + + BodyDef bodyDefinition = new BodyDef(); + PolygonShape shape = new PolygonShape(); + FixtureDef fixtureDefinition = new FixtureDef(); + Body body; + + bodyDefinition.type = BodyDef.BodyType.StaticBody; + } + + public void setCategoryFilter(short filterBit) { + Filter filter = new Filter(); + filter.categoryBits = filterBit; + fixture.setFilterData(filter); + } + + + +} \ No newline at end of file diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/MenuCamera.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/MenuCamera.java new file mode 100644 index 0000000..12aedca --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/MenuCamera.java @@ -0,0 +1,37 @@ +package com.davidalexanderkelly.game.Tools; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.OrthographicCamera; +import com.badlogic.gdx.math.Matrix4; +import com.badlogic.gdx.math.Vector2; +import com.badlogic.gdx.math.Vector3; +import com.badlogic.gdx.utils.viewport.StretchViewport; + +public class MenuCamera { + + private OrthographicCamera cam; + private StretchViewport viewport; + + public MenuCamera (int width, int height) { + cam = new OrthographicCamera(); + viewport = new StretchViewport(width, height, cam); + viewport.apply(); + cam.position.set(width / 2, height / 2, 0); + cam.update(); + } + + public Matrix4 combined() { + return cam.combined; + } + + public void update (int width, int height) { + viewport.update(width, height); + } + + public Vector2 getInputInGameWorld () { + Vector3 inputScreen = new Vector3(Gdx.input.getX(), Gdx.graphics.getHeight() - (Gdx.input.getY()), 0); + Vector3 unprojected = cam.unproject(inputScreen); + return new Vector2(unprojected.x, unprojected.y); + } + +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.java new file mode 100644 index 0000000..7bd73f2 --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/PathfindingWorldCreator.java @@ -0,0 +1,86 @@ +package com.davidalexanderkelly.game.Tools; + +import com.badlogic.gdx.maps.MapObject; +import com.badlogic.gdx.maps.objects.RectangleMapObject; +import com.badlogic.gdx.maps.tiled.TiledMap; +import com.badlogic.gdx.math.Rectangle; +import com.badlogic.gdx.math.Vector; +import com.badlogic.gdx.math.Vector2; +import com.davidalexanderkelly.game.SpaceGamePrototype; +import com.davidalexanderkelly.game.Entities.Behaviors.Node; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + + + +public class PathfindingWorldCreator { + + private List locations; + private List> locationBreakdown; + private TiledMap map; + + + public PathfindingWorldCreator(TiledMap map) { + + this.map = map; + } + + public void setLocations() { + + this.locations = new ArrayList(); + this.locationBreakdown = new ArrayList>(); + + for(MapObject object : map.getLayers().get("Ai Pathing").getObjects().getByType(RectangleMapObject.class)){ + Rectangle rect = ((RectangleMapObject) object).getRectangle(); + Vector2 vPosition = new Vector2((rect.getX() + rect.getWidth() / 2) / SpaceGamePrototype.PixelsPerMetre,(rect.getY() + rect.getHeight() / 2) / SpaceGamePrototype.PixelsPerMetre); + Node newNode = new Node(vPosition); + locations.add(newNode); + + } + QuickSort ob = new QuickSort(locations); + ob.sort(0, (locations.size())-1); + locations = ob.path; + + + } + + + + public List getLocations() { + + return locations; + } + + public static float round(float d, int decimalPlace) { + BigDecimal bd = new BigDecimal(Float.toString(d)); + bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP); + return bd.floatValue(); + } + + public ArrayList getNeighbours(Node node){ + ArrayList neighbours = new ArrayList(); + for(int x = -1; x<= 1; x++) { + for(int y = -1; y<= 1; y++) { + if(x == y || (x+y) == 0) + continue; + + float checkX = node.getWorldPosition().x + (x*0.16f); + float checkY = node.getWorldPosition().y + (y*0.16f); + Vector2 checkV = new Vector2(checkX,checkY); + Node checkN = new Node(checkV); + BinarySearch ob = new BinarySearch(); + int result = ob.binarySearch(locations,checkN); + if(result != -1) { + neighbours.add(locations.get(result)); + } + + } + } + System.out.println(neighbours.size()); + return neighbours; + } + + +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/QuickSort.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/QuickSort.java index 8871f71..683377a 100644 --- a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/QuickSort.java +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/QuickSort.java @@ -1,61 +1,61 @@ -package com.davidalexanderkelly.game.Tools; - -import java.util.List; - -import com.davidalexanderkelly.game.Entities.Behaviors.Node; - -class QuickSort { - - public List path; - - public QuickSort(List path) { - this.path = path; - } - - public int partition(int low, int high) - { - float pivot = path.get(high).getWorldPosition().x; - float pivotY = path.get(high).getWorldPosition().y; - int i = (low-1); - for (int j=low; j path; + + public QuickSort(List path) { + this.path = path; + } + + public int partition(int low, int high) + { + float pivot = path.get(high).getWorldPosition().x; + float pivotY = path.get(high).getWorldPosition().y; + int i = (low-1); + for (int j=low; j locations; + private TiledMap map; + +public TaskWorldCreator(TiledMap map) { + + this.map = map; + } + + public void setLocations() { + + this.locations = new ArrayList(); + + for(MapObject object : map.getLayers().get("Tasks").getObjects().getByType(RectangleMapObject.class)){ + Rectangle rect = ((RectangleMapObject) object).getRectangle(); + Vector2 vPosition = new Vector2((rect.getX() + rect.getWidth() / 2) / SpaceGamePrototype.PixelsPerMetre,(rect.getY() + rect.getHeight() / 2) / SpaceGamePrototype.PixelsPerMetre); + Node newNode = new Node(vPosition); + locations.add(newNode); + } + } + + public List getLocations() { + return this.locations; + } + +} diff --git a/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/WorldContactListener.java b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/WorldContactListener.java new file mode 100644 index 0000000..e4dda73 --- /dev/null +++ b/SpaceGameFolder/core/src/com/davidalexanderkelly/game/Tools/WorldContactListener.java @@ -0,0 +1,47 @@ +package com.davidalexanderkelly.game.Tools; + +import com.badlogic.gdx.physics.box2d.Contact; +import com.badlogic.gdx.physics.box2d.ContactImpulse; +import com.badlogic.gdx.physics.box2d.ContactListener; +import com.badlogic.gdx.physics.box2d.Fixture; +import com.badlogic.gdx.physics.box2d.Manifold; +import com.davidalexanderkelly.game.Entities.Teleporter; + +public class WorldContactListener implements ContactListener{ + + @Override + public void beginContact(Contact contact) { + Fixture fixtureA = contact.getFixtureA(); + Fixture fixtureB = contact.getFixtureB(); + + if("player".equals(fixtureA.getUserData()) || "player".equals(fixtureB.getUserData())) { + Fixture player = "player".equals(fixtureA.getUserData()) ? fixtureA : fixtureB; + Fixture object = player == fixtureA ? fixtureB : fixtureA; + + + if(object.getUserData() != null) { + ((Teleporter) object.getUserData()).collide(); + } + } + + } + + @Override + public void endContact(Contact contact) { + // TODO Auto-generated method stub + + } + + @Override + public void preSolve(Contact contact, Manifold oldManifold) { + // TODO Auto-generated method stub + + } + + @Override + public void postSolve(Contact contact, ContactImpulse impulse) { + // TODO Auto-generated method stub + + } + +} diff --git a/SpaceGameFolder/desktop/assets/Maps/Background.tsx b/SpaceGameFolder/desktop/assets/Maps/Background.tsx index 4903943..72ed3af 100644 --- a/SpaceGameFolder/desktop/assets/Maps/Background.tsx +++ b/SpaceGameFolder/desktop/assets/Maps/Background.tsx @@ -1,4 +1,4 @@ - - - - + + + + diff --git a/SpaceGameFolder/desktop/assets/Maps/SpaceStation.tmx b/SpaceGameFolder/desktop/assets/Maps/SpaceStation.tmx index 371fef8..b75f5ac 100644 --- a/SpaceGameFolder/desktop/assets/Maps/SpaceStation.tmx +++ b/SpaceGameFolder/desktop/assets/Maps/SpaceStation.tmx @@ -1,2309 +1,2319 @@ - - - - - -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,34,23,36,31,9,9,9,31,36,23,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483671,2147483684,2147483679,2147483657,2147483657,2147483657,2147483679,2147483684,2147483682,2147483671,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,91,92,93,3221225505,91,92,93,3221225505,21,21,121,124,125,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483773,2147483772,2147483769,2147483669,2147483669,1073741857,2147483735,2147483734,2147483733,1073741857,85,86,87,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,103,104,105,3221225505,103,104,105,3221225505,21,21,133,136,137,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741840,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483785,2147483784,2147483781,2147483669,2147483669,1073741857,2147483747,2147483746,2147483745,1073741857,97,98,99,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,115,116,117,3221225505,115,116,117,3221225505,21,21,21,21,21,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741831,31,31,29,29,29,31,9,10,10,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483759,2147483758,2147483757,1073741857,109,110,111,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,123,124,125,21,2147483665,3221225478,6,2147483654,2147483654,2147483654,2147483654,2147483654,5,0,0,0,1073741831,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,2147483653,6,6,6,6,6,2147483654,1073741830,17,2147483669,2147483773,2147483772,2147483771,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,91,92,93,3221225505,91,92,93,3221225505,21,21,135,136,137,21,2147483679,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483679,3221225479,0,0,0,1073741831,21,65,21,21,65,21,21,21,21,21,65,21,21,65,21,3221225479,0,0,0,1073741831,31,29,29,29,29,29,29,31,2147483669,2147483785,2147483784,2147483783,2147483669,2147483669,1073741857,2147483735,2147483734,2147483733,1073741857,94,95,96,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,103,104,105,3221225505,103,104,105,3221225505,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,21,77,21,21,77,21,21,21,21,21,77,21,21,77,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483747,2147483746,2147483745,1073741857,106,107,108,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,115,116,117,3221225505,115,116,117,3221225505,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483759,2147483758,2147483757,1073741857,118,119,120,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,1073741840,3221225478,3221225478,3221225478,5,3221225493,3221225493,3221225493,3221225477,6,6,6,1073741829,21,65,21,21,65,21,21,21,21,21,65,21,21,65,21,3221225477,2147483654,2147483654,2147483654,1073741829,1073741845,1073741845,1073741845,2147483653,1073741830,1073741830,1073741830,3221225488,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,94,95,96,3221225505,21,21,21,21,21,21,21,21,21,2147483773,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,2147483679,2147483677,2147483677,2147483677,2147483679,21,77,21,21,77,21,21,21,21,21,77,21,21,77,21,31,29,29,29,31,1073741845,1073741845,1073741845,1073741831,0,0,0,7,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,85,86,87,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,106,107,108,3221225505,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,21,536870945,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2684354593,2147483669,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,7,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,97,98,99,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,118,119,120,3221225505,21,21,21,21,21,21,21,21,21,2147483773,2147483655,0,0,0,3221225479,3221225493,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,3758096417,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,21,21,21,1073741845,1073741831,0,0,0,7,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,109,110,111,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,1073741828,6,6,6,6,6,6,6,1073741841,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225489,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,3221225476,0,0,0,7,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,2147483664,0,0,0,0,0,0,0,0,0,0,0,1073741831,125,44,45,2147483773,125,21,21,21,21,21,2147483773,125,2147483689,2147483688,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,16,2147483654,2147483654,2147483654,2147483654,2147483654,1073741841,2147483681,2147483681,2147483681,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,56,57,2147483785,137,21,21,21,21,21,2147483785,137,2147483701,2147483700,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,125,44,45,2147483773,125,21,21,21,21,21,2147483773,125,2147483689,2147483688,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,56,57,2147483785,137,21,21,21,21,21,2147483785,137,2147483701,2147483700,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,3221225476,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,3221225477,6,6,6,6,6,6,6,6,6,6,6,6,6,5,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,2147483653,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,1073741829,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483679,2147483679,29,29,29,29,29,29,29,29,29,29,2147483679,2147483679,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,31,31,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,31,31,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,3221225478,1073741830,1073741830,1073741830,1073741830,1073741830,5,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483653,3221225478,3221225478,3221225478,3221225478,3221225478,1073741830,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,2147483664,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,1073741831,21,21,21,7,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,29,29,29,31,29,29,29,31,31,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483677,2147483677,2147483679,29,29,29,2147483679,2147483677,2147483677,2147483677,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,137,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225477,2147483654,6,6,17,21,21,21,3221225477,2147483654,6,6,17,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225477,2147483654,6,6,17,2147483669,2147483669,2147483669,3221225477,2147483654,6,6,17,2147483669,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,21,1073741845,21,31,29,29,29,31,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,2147483669,3221225493,2147483669,31,29,29,29,31,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,1073741845,1073741845,1073741845,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,3221225493,3221225493,3221225493,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483653,3221225478,1073741830,1073741830,5,1073741845,1073741845,1073741845,2147483653,3221225478,1073741830,1073741830,5,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483653,3221225478,1073741830,1073741830,5,3221225493,3221225493,3221225493,2147483653,3221225478,1073741830,1073741830,5,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,125,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,1073741830,1073741830,1073741830,1073741830,1073741830,6,6,6,6,6,3221225476,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,3221225476,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741828,2147483654,2147483654,2147483654,2147483654,2147483654,3221225478,3221225478,3221225478,3221225478,3221225478,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483653,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741829,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225477,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,2147483679,2147483679,29,29,29,29,29,29,29,29,29,29,2147483679,2147483679,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,31,31,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,31,31,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483653,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741829,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,3221225477,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,5,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,2147483669,2147483669,2147483669,2147483665,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483677,2147483677,2147483679,2147483681,2147483681,2147483681,2147483679,2147483677,2147483677,2147483677,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,2147483653,6,6,6,6,6,2147483654,1073741830,17,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483665,3221225478,6,2147483654,2147483654,2147483654,2147483654,2147483654,5,0,0,0,1073741831,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,1073741831,31,29,29,29,29,29,29,31,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483679,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483679,3221225479,0,0,0,1073741831,137,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225477,2147483654,2147483654,2147483654,1073741829,1073741845,1073741845,1073741845,2147483653,1073741830,1073741830,1073741830,3221225488,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1073741840,3221225478,3221225478,3221225478,5,3221225493,3221225493,3221225493,3221225477,6,6,6,1073741829,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,2147483679,2147483677,2147483677,2147483677,2147483679,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2684354593,2147483669,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,21,536870945,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,21,21,21,1073741845,1073741831,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,2147483655,0,0,0,3221225479,3221225493,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,3758096417,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225489,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,3221225476,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,1073741828,6,6,6,6,6,6,6,1073741841,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2147483664,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,125,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,1073741829,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225477,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,34,23,36,31,9,9,9,31,36,23,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483671,2147483684,2147483679,2147483657,2147483657,2147483657,2147483679,2147483684,2147483682,2147483671,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,91,92,93,3221225505,91,92,93,3221225505,21,21,121,124,125,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483773,2147483772,2147483769,2147483669,2147483669,1073741857,2147483735,2147483734,2147483733,1073741857,85,86,87,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,103,104,105,3221225505,103,104,105,3221225505,21,21,133,136,137,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741840,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483785,2147483784,2147483781,2147483669,2147483669,1073741857,2147483747,2147483746,2147483745,1073741857,97,98,99,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,115,116,117,3221225505,115,116,117,3221225505,21,21,21,21,21,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741831,31,31,29,29,29,31,9,10,10,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483759,2147483758,2147483757,1073741857,109,110,111,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,123,124,125,21,2147483665,3221225478,6,2147483654,2147483654,2147483654,2147483654,2147483654,5,0,0,0,1073741831,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,2147483653,6,6,6,6,6,2147483654,1073741830,17,2147483669,2147483773,2147483772,2147483771,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,91,92,93,3221225505,91,92,93,3221225505,21,21,135,136,137,21,2147483679,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483679,3221225479,0,0,0,1073741831,21,65,21,21,65,21,21,21,21,21,65,21,21,65,21,3221225479,0,0,0,1073741831,31,29,29,29,29,29,29,31,2147483669,2147483785,2147483784,2147483783,2147483669,2147483669,1073741857,2147483735,2147483734,2147483733,1073741857,94,95,96,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,103,104,105,3221225505,103,104,105,3221225505,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,21,77,21,21,77,21,21,21,21,21,77,21,21,77,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483747,2147483746,2147483745,1073741857,106,107,108,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,115,116,117,3221225505,115,116,117,3221225505,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,2147483759,2147483758,2147483757,1073741857,118,119,120,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,1073741840,3221225478,3221225478,3221225478,5,3221225493,3221225493,3221225493,3221225477,6,6,6,1073741829,21,65,21,21,65,21,21,21,21,21,65,21,21,65,21,3221225477,2147483654,2147483654,2147483654,1073741829,1073741845,1073741845,1073741845,2147483653,1073741830,1073741830,1073741830,3221225488,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,94,95,96,3221225505,21,21,21,21,21,21,21,21,21,2147483773,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,2147483679,2147483677,2147483677,2147483677,2147483679,21,77,21,21,77,21,21,21,21,21,77,21,21,77,21,31,29,29,29,31,1073741845,1073741845,1073741845,1073741831,0,0,0,7,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,85,86,87,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,106,107,108,3221225505,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,21,536870945,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2684354593,2147483669,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,7,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,97,98,99,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,118,119,120,3221225505,21,21,21,21,21,21,21,21,21,2147483773,2147483655,0,0,0,3221225479,3221225493,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,3758096417,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,21,21,21,1073741845,1073741831,0,0,0,7,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,109,110,111,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,3221225505,3221225505,3221225505,3221225505,3221225505,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,1073741828,6,6,6,6,6,6,6,1073741841,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225489,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,3221225476,0,0,0,7,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,1073741857,1073741857,1073741857,1073741857,1073741857,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,2147483664,0,0,0,0,0,0,0,0,0,0,0,1073741831,125,44,45,2147483773,125,21,21,21,21,21,2147483773,125,2147483689,2147483688,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,16,2147483654,2147483654,2147483654,2147483654,2147483654,1073741841,2147483681,2147483681,2147483681,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,56,57,2147483785,137,21,21,21,21,21,2147483785,137,2147483701,2147483700,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,125,44,45,2147483773,125,21,21,21,21,21,2147483773,125,2147483689,2147483688,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,56,57,2147483785,137,21,21,21,21,21,2147483785,137,2147483701,2147483700,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,3221225476,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,3221225477,6,6,6,6,6,6,6,6,6,6,6,6,6,5,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,2147483653,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,1073741829,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483679,2147483679,29,29,29,29,29,29,29,29,29,29,2147483679,2147483679,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,31,31,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,31,31,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,3221225478,1073741830,1073741830,1073741830,1073741830,1073741830,5,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483653,3221225478,3221225478,3221225478,3221225478,3221225478,1073741830,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,2147483664,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,21,21,21,7,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3221225488,0,0,0,1073741831,21,21,21,7,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,29,29,29,31,29,29,29,31,31,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483677,2147483677,2147483679,29,29,29,2147483679,2147483677,2147483677,2147483677,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,137,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,21,21,21,7,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,2147483655,2147483669,2147483669,2147483669,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225477,2147483654,6,6,17,21,21,21,3221225477,2147483654,6,6,17,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225477,2147483654,6,6,17,2147483669,2147483669,2147483669,3221225477,2147483654,6,6,17,2147483669,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,21,1073741845,21,31,29,29,29,31,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,2147483669,3221225493,2147483669,31,29,29,29,31,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,1073741845,1073741845,1073741845,1610612769,21,21,21,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,1610612769,3221225493,3221225493,3221225493,1610612769,21,21,21,1610612769,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483653,3221225478,1073741830,1073741830,5,1073741845,1073741845,1073741845,2147483653,3221225478,1073741830,1073741830,5,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483653,3221225478,1073741830,1073741830,5,3221225493,3221225493,3221225493,2147483653,3221225478,1073741830,1073741830,5,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,125,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,1073741830,1073741830,1073741830,1073741830,1073741830,6,6,6,6,6,3221225476,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,16,6,6,6,6,6,3221225488,33,33,33,3221225489,6,6,6,6,6,3221225476,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741828,2147483654,2147483654,2147483654,2147483654,2147483654,3221225478,3221225478,3221225478,3221225478,3221225478,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2147483653,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741829,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225477,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,2147483679,2147483679,29,29,29,29,29,29,29,29,29,29,2147483679,2147483679,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,31,31,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,31,31,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225479,0,0,0,0,0,0,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483653,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741830,1073741829,0,0,0,0,0,0,0,0,0,7,21,21,21,7,0,0,0,0,0,0,0,0,0,3221225477,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,3221225478,5,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,1073741831,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225479,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,4,6,6,6,6,6,17,21,21,21,16,6,6,6,6,6,3221225488,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741840,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,2147483669,2147483669,2147483669,2147483665,2147483654,2147483654,2147483654,2147483654,2147483654,2147483652,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,31,31,29,29,29,31,33,33,33,31,29,29,29,31,31,3221225479,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,2147483655,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483679,2147483679,2147483677,2147483677,2147483677,2147483679,2147483681,2147483681,2147483681,2147483679,2147483677,2147483677,2147483677,2147483679,2147483679,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,125,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483773,3221225479,0,0,0,2147483653,6,6,6,6,6,2147483654,1073741830,17,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483665,3221225478,6,2147483654,2147483654,2147483654,2147483654,2147483654,5,0,0,0,1073741831,125,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,137,94,95,96,21,21,21,21,21,21,21,94,95,96,2147483785,3221225479,0,0,0,1073741831,31,29,29,29,29,29,29,31,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483679,2147483677,2147483677,2147483677,2147483677,2147483677,2147483677,2147483679,3221225479,0,0,0,1073741831,137,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,118,119,120,21,21,21,21,21,21,21,118,119,120,21,3221225479,0,0,0,1073741831,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1610612769,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3758096417,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,3221225479,0,0,0,1073741831,2147483669,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225477,2147483654,2147483654,2147483654,1073741829,1073741845,1073741845,1073741845,2147483653,1073741830,1073741830,1073741830,3221225488,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1073741840,3221225478,3221225478,3221225478,5,3221225493,3221225493,3221225493,3221225477,6,6,6,1073741829,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,31,29,29,29,31,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,2147483679,2147483677,2147483677,2147483677,2147483679,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,2684354593,2147483669,1073741845,1073741845,1073741845,1073741845,1073741845,1073741845,1073741831,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,2147483655,0,0,0,3221225479,3221225493,3221225493,3221225493,3221225493,3221225493,3221225493,21,536870945,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,1610612769,21,21,21,21,21,21,1073741845,1073741831,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,2147483655,0,0,0,3221225479,3221225493,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,3758096417,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225489,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,3221225476,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,2147483655,0,0,0,1073741828,6,6,6,6,6,6,6,1073741841,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,2147483664,0,0,0,0,0,0,0,0,0,0,0,2147483655,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,94,95,96,21,21,21,21,21,21,21,94,95,96,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483744,2147483743,2147483742,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483744,2147483743,2147483742,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,21,106,107,108,21,21,21,21,21,21,21,106,107,108,21,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,2147483669,2147483756,2147483755,2147483754,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483756,2147483755,2147483754,2147483669,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,125,118,119,120,21,21,21,21,21,21,21,118,119,120,2147483773,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,125,2147483768,2147483767,2147483766,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483768,2147483767,2147483766,2147483773,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,7,137,21,21,21,21,21,21,21,21,21,21,21,21,21,2147483785,3221225479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1073741831,137,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483669,2147483785,2147483655,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,16,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,1073741829,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3221225477,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483654,2147483664,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SpaceGameFolder/desktop/assets/UI/ExitButton.png b/SpaceGameFolder/desktop/assets/UI/ExitButton.png new file mode 100644 index 0000000000000000000000000000000000000000..a9f661cdef99c4f8b930119c7929d5da14ceaee1 GIT binary patch literal 1621 zcmb7EeKga182?VWx_0FxS;c_9M4NbxSVw+eV|S(2`hKUXpY! z4VkQ4(r6Mjq8F|*casozjFv*N&Hd?|&OP08|GD3Dp6~N~&i8r$p66k05AfB|Hq-_H z=xp}$2?7Asj>y3aG?3e`C9?@(sF)yMFTi_hBtyXb2s{xFKvg8jmZ)uYuF}M}qNNC~V?Q_;AfAsdH=M^1; z+jFI2mh|&1ec^}W<4>PIRNEFET7u;A^=#VT)zxKVkSYYH3MKbWjP%sSwc~Xu!gywQ zcsP}6k>6&O*&GiPxpem{{>9NXlE%hHiG)%^;o$B?GMTDR@B3dI+yMhc-KG`$cFPl5M^hQ ze#zgGY_#Fzr<)WMID($95fc-`@2ak^;H3nN20m5l=-+Kz-3+^_qEN%~NG;2q^T$ znqb?%1cD{1Q=K@xq4=6<`Ckz{q7yc~(kADHuxDvMro3Z^$LO`9F< zjY-psXc4bR#?9C2@zKzhkmCD+&(!_u-!C-V+a1n-F6_y>>&3HaHU8g9Q@Y`pu z#9K@WBz(Pil4sx8$IvWH5jz8NFHteFLtl9+BXz_l+^E%NY$zwMd*`69D)U`m26WvU zUalujvQ^$uSJ7x9UWb`Lhb3?LV>amgt8gFhl%GrcyvdS;z!YR@m{ zhYoHtQ3lWEox3IMo`un~5mZb`!3ih-f!yn>1?vf(orOm%mfR=6VdjGFMf}v*6#^$V zG`c`c@W_C2L_GM6{F;dfyOp|oqZb^gOT}36%Z<$hTrEDjDwIP^Ju>w%u)2cSECY+`yiS=|Qp>WxzVdnRcpz_?w(%k|0%RSv`)S#)`1DcsQ*4 zgFHE8=jr@8t6ODxEB~=N3g_?LF{Z0Jo4R<05<*RqH!Pp4Slo6)IhDSzX5E9VTJE)% zfvV9*7MzbMU6)&ls=!C4beb>xM(0aShL+<$Bpk!wkSPDVC8Y43mEQ5t+ZG;iWUeRF zFK&i~+*c2zV%1|y5%y#v@_QeWL$qiq@%hE?a~eXEc5 z+s$6@Sx}w)RR?k^>I;?SMja51O=duzD+OGKoSjf5w};m0{7$gGEs#Mc{5W>I(#2}& zB|*T6t+I4&p=I@rwDXA`uzl z%YGJm)yH0Qno6ErT1BJLkU@?zN9H-3SzcbwWHRSemKqvfw4X6?r#m@0tw4i%R%xki zP4qxl)&6KraI>PK;%HbH-oTefscD#62I@;s;u5CDAo685#`tgSqhtWK>9Kq`91gX# zVQ_Fzp}2{x6G-#)1DWg)xeT5d?%d;Gg}B{|D-^~IU2wSVN*klB$sM?E4eI^l;$}o5 zQQC4BY9&-d!9@@Fxf*edfx<5|^mS`%>&urMIo2(1^2qx9QJIWw43v%rscC6xkN_r5 z#yUmczkAo!!@~oI!@0S+%?CJVclVQu-Ur?(3kz_}SO$aKx8Un${f1wyvYA-*%zBU; SQ06*0_p+G~;KTFUm-sj1RsIzK literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/desktop/assets/UI/Menu.atlas b/SpaceGameFolder/desktop/assets/UI/Menu.atlas new file mode 100644 index 0000000..7fda0d4 --- /dev/null +++ b/SpaceGameFolder/desktop/assets/UI/Menu.atlas @@ -0,0 +1,19 @@ + +Menu.png +format: RGBA8888 +filter: Nearest,Nearest +repeat: none +ExitButton + rotate: false + xy: 1, 1 + size: 466, 91 + orig: 466, 91 + offset: 0, 0 + index: -1 +StartButton + rotate: false + xy: 469, 1 + size: 462, 91 + orig: 462, 91 + offset: 0, 0 + index: -1 diff --git a/SpaceGameFolder/desktop/assets/UI/Menu.png b/SpaceGameFolder/desktop/assets/UI/Menu.png new file mode 100644 index 0000000000000000000000000000000000000000..7cb43ad978e03757c0631f6781dc87c0984757e2 GIT binary patch literal 4586 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 literal 0 HcmV?d00001 diff --git a/SpaceGameFolder/gradle/wrapper/gradle-wrapper.properties b/SpaceGameFolder/gradle/wrapper/gradle-wrapper.properties index f4d7b2b..bc1c717 100644 --- a/SpaceGameFolder/gradle/wrapper/gradle-wrapper.properties +++ b/SpaceGameFolder/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-bin.zip +distributionUrl=https://services.gradle.org/distributions/gradle-6.4.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists