From a8ad2934d89e3bf793989ac2f8b23d1ac16b79c6 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Tue, 18 Oct 2016 09:00:42 -0400 Subject: [PATCH 01/26] v.0.0.1 --- .ipynb_checkpoints/v.0.0.1-checkpoint.ipynb | 70 +++++++++++++++++++++ test | 18 ++++++ v.0.0.1.ipynb | 70 +++++++++++++++++++++ 3 files changed, 158 insertions(+) create mode 100644 .ipynb_checkpoints/v.0.0.1-checkpoint.ipynb create mode 100644 test create mode 100644 v.0.0.1.ipynb diff --git a/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb b/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb new file mode 100644 index 0000000..412a222 --- /dev/null +++ b/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb @@ -0,0 +1,70 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import pygame\n", + "pygame.init()\n", + "\n", + "white = (255, 255, 255)\n", + "black = (0, 0,0 )\n", + "red = (255, 0, 0)\n", + "green = (0, 255, 0)\n", + "blue = (0, 0, 255)\n", + "\n", + "gameDisplay = pygame.display.set_mode((300,300))\n", + "pygame.display.set_caption('magic')\n", + "\n", + "running = True\n", + "while running == True:\n", + " for event in pygame.event.get():\n", + " if event.type == pygame.QUIT:\n", + " running = False\n", + " \n", + "\n", + " gameDisplay.fill(white)\n", + " \n", + " pygame.display.update()\n", + " \n", + "\n", + "\n", + "pygame.quit()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.6" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/test b/test new file mode 100644 index 0000000..f6b88d6 --- /dev/null +++ b/test @@ -0,0 +1,18 @@ +import pygame +pygame.init() +gameDisplay = pygame.display.set_mode((300,300)) +pygame.display.set_caption('magic') + +pygame.display.update() + +gameExit = False + +while not gameExit: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + + + +pygame.quit() +quit() diff --git a/v.0.0.1.ipynb b/v.0.0.1.ipynb new file mode 100644 index 0000000..412a222 --- /dev/null +++ b/v.0.0.1.ipynb @@ -0,0 +1,70 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import pygame\n", + "pygame.init()\n", + "\n", + "white = (255, 255, 255)\n", + "black = (0, 0,0 )\n", + "red = (255, 0, 0)\n", + "green = (0, 255, 0)\n", + "blue = (0, 0, 255)\n", + "\n", + "gameDisplay = pygame.display.set_mode((300,300))\n", + "pygame.display.set_caption('magic')\n", + "\n", + "running = True\n", + "while running == True:\n", + " for event in pygame.event.get():\n", + " if event.type == pygame.QUIT:\n", + " running = False\n", + " \n", + "\n", + " gameDisplay.fill(white)\n", + " \n", + " pygame.display.update()\n", + " \n", + "\n", + "\n", + "pygame.quit()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.6" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} From 44448afcc3db1f700ec21fb985fac8b18f853bea Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Wed, 19 Oct 2016 09:06:45 -0400 Subject: [PATCH 02/26] v.0.0.2 --- .ipynb_checkpoints/v.0.0.1-checkpoint.ipynb | 70 --------------------- test | 18 ------ v.0.0.1.ipynb | 70 --------------------- v.0.0.2 | 26 ++++++++ 4 files changed, 26 insertions(+), 158 deletions(-) delete mode 100644 .ipynb_checkpoints/v.0.0.1-checkpoint.ipynb delete mode 100644 test delete mode 100644 v.0.0.1.ipynb create mode 100644 v.0.0.2 diff --git a/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb b/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb deleted file mode 100644 index 412a222..0000000 --- a/.ipynb_checkpoints/v.0.0.1-checkpoint.ipynb +++ /dev/null @@ -1,70 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import pygame\n", - "pygame.init()\n", - "\n", - "white = (255, 255, 255)\n", - "black = (0, 0,0 )\n", - "red = (255, 0, 0)\n", - "green = (0, 255, 0)\n", - "blue = (0, 0, 255)\n", - "\n", - "gameDisplay = pygame.display.set_mode((300,300))\n", - "pygame.display.set_caption('magic')\n", - "\n", - "running = True\n", - "while running == True:\n", - " for event in pygame.event.get():\n", - " if event.type == pygame.QUIT:\n", - " running = False\n", - " \n", - "\n", - " gameDisplay.fill(white)\n", - " \n", - " pygame.display.update()\n", - " \n", - "\n", - "\n", - "pygame.quit()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 2", - "language": "python", - "name": "python2" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.6" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} diff --git a/test b/test deleted file mode 100644 index f6b88d6..0000000 --- a/test +++ /dev/null @@ -1,18 +0,0 @@ -import pygame -pygame.init() -gameDisplay = pygame.display.set_mode((300,300)) -pygame.display.set_caption('magic') - -pygame.display.update() - -gameExit = False - -while not gameExit: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameExit = True - - - -pygame.quit() -quit() diff --git a/v.0.0.1.ipynb b/v.0.0.1.ipynb deleted file mode 100644 index 412a222..0000000 --- a/v.0.0.1.ipynb +++ /dev/null @@ -1,70 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "import pygame\n", - "pygame.init()\n", - "\n", - "white = (255, 255, 255)\n", - "black = (0, 0,0 )\n", - "red = (255, 0, 0)\n", - "green = (0, 255, 0)\n", - "blue = (0, 0, 255)\n", - "\n", - "gameDisplay = pygame.display.set_mode((300,300))\n", - "pygame.display.set_caption('magic')\n", - "\n", - "running = True\n", - "while running == True:\n", - " for event in pygame.event.get():\n", - " if event.type == pygame.QUIT:\n", - " running = False\n", - " \n", - "\n", - " gameDisplay.fill(white)\n", - " \n", - " pygame.display.update()\n", - " \n", - "\n", - "\n", - "pygame.quit()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 2", - "language": "python", - "name": "python2" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.6" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} diff --git a/v.0.0.2 b/v.0.0.2 new file mode 100644 index 0000000..c0a27bd --- /dev/null +++ b/v.0.0.2 @@ -0,0 +1,26 @@ +import pygame +pygame.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) + +gameDisplay = pygame.display.set_mode((300,300)) +pygame.display.set_caption('magic') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + + + gameDisplay.fill(white) + + pygame.display.update() + + + +pygame.quit() From a4b5f6f275f1009c8b2811aaeeb63b4c2099c8a3 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Wed, 19 Oct 2016 09:23:31 -0400 Subject: [PATCH 03/26] v.0.0.3 --- v.0.0.2 => v.0.0.3 | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) rename v.0.0.2 => v.0.0.3 (68%) diff --git a/v.0.0.2 b/v.0.0.3 similarity index 68% rename from v.0.0.2 rename to v.0.0.3 index c0a27bd..5eab3c0 100644 --- a/v.0.0.2 +++ b/v.0.0.3 @@ -6,9 +6,10 @@ black = (0, 0,0 ) red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) +brick = (144, 69, 53) -gameDisplay = pygame.display.set_mode((300,300)) -pygame.display.set_caption('magic') +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') running = True while running == True: @@ -16,11 +17,8 @@ while running == True: if event.type == pygame.QUIT: running = False - - gameDisplay.fill(white) + gameDisplay.fill(brick) pygame.display.update() - - pygame.quit() From 88685c7761cb6d9e878d38c59273168889399881 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Wed, 19 Oct 2016 09:38:45 -0400 Subject: [PATCH 04/26] adding pngs --- food.png | Bin 0 -> 288672 bytes rainbow.png | Bin 0 -> 53014 bytes unicorn.png | Bin 0 -> 128164 bytes unicornflipped.png | Bin 0 -> 132422 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 food.png create mode 100644 rainbow.png create mode 100644 unicorn.png create mode 100644 unicornflipped.png diff --git a/food.png b/food.png new file mode 100644 index 0000000000000000000000000000000000000000..21e43aacaf5d5f7793ba8817010085f26b90c057 GIT binary patch literal 288672 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 z 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®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 LCQ~PE8vcI(hQEMp literal 0 HcmV?d00001 diff --git a/rainbow.png b/rainbow.png new file mode 100644 index 0000000000000000000000000000000000000000..8fa1594462972c3164f6660e18148ed3437519bc GIT binary patch literal 53014 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 Z6{PS+VBjJia}r@?1sPRXjg(pF{{tE|DT)99 literal 0 HcmV?d00001 diff --git a/unicorn.png b/unicorn.png new file mode 100644 index 0000000000000000000000000000000000000000..f41f89ab17f6e475c8505b3165dcdc808be3e31c GIT binary patch literal 128164 zcmYgY2RzjO|8FY0lx$Ms8=2WV%AVP0r9-$oBhFqWB+g7W37Kca*`ty(v$=EUjO?8~ zj{HBO-{XIeM-PvOKKJ>&KJWMYHJ;Dc^Ce72OPP|4k?h>LbCjwokDs19cbWOzxr^mj zNr2zr_Bxz_9}I3!jNSB{Y~4JpUfP^{WbO3a=C&%#>V?fy8!Kxsmv$TJbLY2|R3AUm z_rxs|D1G&}la7xdA*7+L(N{UDRUc%U2h+IUFD6-riM{5jCSK{gMOOK~^x3XuzBGzx z8B8$Ut1_;ne!R3eW^n%_-T`GW=pJwQrnpiXMs6PT5k^W@Mx%3^y)8PIX!gQZ;7ylT zqQt`_RoOMaw6tgm*V(Rije`!%(t$bqdBE6{54A!_%!{!Ikt!_mK>f($ZRf?)-+$F= z6A;!f5~ym59Gh(+By?Ur{r$&>?9F+?POG9-lf`V!HfLA&S_s<}(WI!MtD|N%&Tg&4 z-kj(-_TYmG-tA81b@27Egd1KQYS^M zC($&Rt(8gSW%l6kFvuWMR7*6pd4I0w72DZm(MJj)f`)gjrktyy7RH;JghfTs4VIxT z)y|g0fZnH+r;o9&iMG;z*LrJleP(8ZP~daqc|b{*N-jrr`ro&GfVc0cH~BRqSk;}( zTmItb#?*qCaAB1_>;Ji^P7EsGWb z8p)%L6#Vu~=N(^z{>H`zjZC~jnqOR|;Mwy(*oiTt;c9un1F9kWm#wmDi>i%ZzI(6%BJl?_L(B_EyJWCb9pzS3* zroa*El)d|5(V%j!E9&g^+obzc2PK(ptMRQG$>MzuS*sD1I&?=P8RlC@qpvPDqz-e} zEh;V5@Av()@*bn8HzQTnqb!ohw7#&xgj=^jRcU?S1c7ts?ENlo*1cpvOC$fx4j~mc znr+tgYoZQJ@cL3+dmAuRMMIe%Hu8%Ts;{2XJQ=4Ywf#%^>Y3Fc(N^;}7Xx+=s%vW{ z8FVET-i3$r*J@*+%;L}FbE68K?4l*&UGMp>rVi*a1LtzCMuLu;`P8yNifcj<+cZf^ zY0=5a$>EI{mpgD}k78rT;7C3Sk0Z%F-7`-#=aLKq1)z+oCu<#qPW#u_9>f|me{zs8y*>m zC>d@kkF}SZ6}y0=s5dl<{_ll^$rzM!JSmvg_75BwbU};NYti3=knW3~J8a^&3o%75 zn-!s5Faw2>D7Lc`7tPvN>e7HeA}1rWZZYpP4@USAcj6E0_ZU7`>WnweQ&nmEl_!WU zl3U!Bvpu!$_O?Pu<|A+p{z$}numf!@g^J^mTPMX6;VK$17&1i>39R!j=b_}j?wJGU z-$;9mw3>3Oiej*|;8VZF>&_xtFgiL~y}MA0IN91+0eo`vWV~vFh5z*FL*yMEH!Eq! z<#B1I+65#0*GnCC{#WPd!Z?9}`-a5VbTr8b=$vT5;p)--5^19I| zYE%%aAAC8uxMyZTGo|R~W%H_aTe*^pyhCR%6{`@U%O11M$TKRdq=;TKBrI`5-N2Y) zLJXczhg?)j@HMGge+~JDKXV-wvo-<4WHApPuL!MA!{-HYS}Py))Zu=L4MPfkL>5bT zpEd)3B;NDe_5|EY{TSf;2L(xG0;yeHpks`NW` zu3i+Q1ow!d1GZW$eokZJ%#p>fGN6q&ZKG;5wK1;l6ih?gah#m4ZC?5GGy~UP-925u zXLqgX)j4QHsZOrBC0bBeQY+b~=x9e3DwaJpO8U>OwJIQ)#Ty&d*K=|ri9j?9_Zbg7 ze^HW>X(%t|E)vBo(;qgt*$*dN{r3eb8dzo{d>CpX5b)@G4}?C%jFAf(QDak^tEaZ` zc(ME1zcpCl=vN>#1q9U0Efw1A6q!U4Z{57VrmDLT20Sh@@)l>?v`4>2EbV^0pk1q?Xuchocr;2tqaOxR$xEHpi#i%mWG4* zNSTmJZKkBBuPtN#ccaQISjAwA`ZYhne-z9kf)7Df@$?nABRqCRcU|}={I=k4ue?) zTY}jg2?>cx;#ke|nuOBzv0^GFB%~8hetNM?*f{SX3rkUcS;KMvcLg9{&3iIaGG&Za zw6EMh*}w$bAKNp$rzbNo{k8#cwFF9^`nXM*IVwgTE6xute&}>o$hdj1H`69JeAYsJN4qU)S!I!J+&ZnzGEZSGA62M3S8DpSP*TUZ$)qjqNxzoOY^EW(OLF-bz%2GFB5as^o_0|YGa+INHZMuRvP(ke)5P0sY zsr$)goWDq-;y)Ig`_zBPpq*6|(yX-f;s^fbsnJPVrg=Y8Ui<(XOzmyFGyy8G!bPPL z+Gw1DpS{)OlW|O@AZVsqP7;C3DxzYdr9G=I+w9nzdlv@MP4j>}Aa4l7V0g6gV&;V} zN70GhU1^)ak1ZUALxFdlTLM~jl?j=_;ADDgpmnkx`L?%f%Ib^@xT8bbK*W276FPW*5b#0oBqb#K zRQ>8TQIMR}SmW6)aP-}BFfVbbPG}`aLMpq`MR+FXkooy#7dk!b-ym3rod%&y)O7tmEi5Bk1)=|iCD@|awI@JUN;b6-YW3RLpNo}@x=uwKx!4r2nNqzg(_kNW5>US@UHRv4DoKDD zAqa4sjG?)Cnn7@4#Ov1=@WfpA3BoeDwEOnV5#muZ1>gZBqTZdbnyc*BvmVOcv2u=_>h{5E@b@ zv8}z`bN|559y?B9CBHz|G?k7Yw9&+}VNsk+t` zOE8ahN@Ws!UaOzpBJlAW3UH2>YgIz48#Hq@Z_w(U+o$JN;E0gOs!?GABTZIZK4d&U z9)|;cSCSi}GdnA|J+BKloqulk*!G+IjqKj-DCI0{xB zgpincwz6#Wf8cebR>j)w{+XaTeehQ#00vb!pc<;=aH~hJO6HjOp%Fl(t2JX**wJ?n zI1vr-*k{OL!)gECzRjx9njdT683#(cY?CtCI zcelzkYwuFBtb{ZJE-J}-7r<&E5saeg(=1j|WM{bk2Q3i)W51K}M-ALsr1jw4WftYm ztz2{ng)@^f)$PeN-#fKd{sm2v0&*yfQ8-fNIj%y_bbA3k;IeiX+7-A<`ENH?f+@h& zUgZ}3gFx1`dX%|xB;qpc%mM9+-lhI`jUaHQ_+m;0dpf58LxEzqF;&sTBx&U+jS|5Q z?P4xEI}zv9+XMVTnPL5;igOUsm(}c*0$z6c5dNHK5(-^+eG-e=a)JKl=Zd0M(1A zQ$=uXf6tU5(Rk8$QD@TF)D!|sV}~w-{<*b`N}GUNni3^bXq{g~ac-VoUaPo9)J|N= zocF>EFP&dhY1z_0SKT^y5|#_gIy$G^cw2lL8$q8n(-w{4^IVh?X~QnQ-UFY>|7c

__f`kSvpRpYOvAV4&rgvwg13lGM_aw!L{VvgwDZ zcI>0m>Ri%96(eW}#YDN#2VJex9 zLj{E771AbNr778SM$M2Byjko-L462Vaf$$nm>+|(+x3BQ^GxAXqFYz4V9W?W;|mp6 z&oUCX8`GPppoU&PVp?G!qG;tdG1Hj1UaJw7GY)wKFRW0f;bUT?59U6ntEnW^T+#b zcj(c8r5%xc2b6Q4$0~=&S{rfdgWVL@UVGLt#MbYBn_GoPVW=={RjCqEYk1g)0N9{z zGM~(gcFz3OFm8z}B=b!sE(^c@M*zQgkYy)7G%WuM#XpBh+tgB#nN@-#P znrK3CW13VfcXsB?Tuu!%PHd#yoxb@5tMvwAdVH3_Gg| zN=rF_u622;;smox0E3b)SaSG@&I=t_>^PyOX4VZw>1}a4v8SMg!7_Y4|B3b3RWYc; zM*geJnAN)NR$(iR2Uy)3C!dQ;!G)Qhiqthsf5tu`fk}zrj;va*um2g_RR5@yMMPlz zafoG@aMr=9woM8IUAN@zOWje$xZ##dmLb;B?A2D=g&I2VESdJx9I3l@@WU(mZ0D*h zE0v_greP3BlL;GAT~;9@s8H;4gHQgNU!oJNH2NO`lq#9*son?0#Y~k5w5KRCE#?xv zyK%EgB|uc_P{k7fqio#yC=#y2lvi3ru6wX8WEQsak%WsPidW@WR0p&DZD!Q)g7ox| zoTc;2k#^1>I^n@8#y{rWwkcgVKH?(Beg%v&J?)|uZx)4X|C~w_uO#bXGaN6;H9Pku21pg4toQ(;$R2Bnw}p zIA}?I4QtEgxVX>u2S=Qy@agB9@nGCR;W*%TT3<{@sQSEGKidBoum1u+APQnpQ^}r# zQ{q13l+u%mjZQxLm@^D>^}W(lx=Q?Y-H@U*}=_#9Cn%H4k?Vt|sqdqPT0Qsli!5 zMmlTb`WHx;*Wvds{H1zqS?MoHDCn*w+hyjZ-kuqd8N|JUo&UsyNZ8$jQjFHtWz#n- zDK!ndJ^R`W6GrKyU7yv+B)ibDc^Ku&7-*QLBSzF-jzY4bHZnw}HP_sDRa6e?xrwB- z*<`+B(Cg;?yEYIOjA3tKq8h!%sMowJr^HafAUdwuVRe6nDoxWlg9!e7fheb6vg7 z6N7^(pgN2>XRH80?pyuWay$EQs`MW-9>hKn?6s*6TTYLGEUrw%Mau%z2q|1-@2(1& zjtl);l15PX4WJGF+nkI}Nl5T}bxWj{0wtg3d(sF`tDH`&5Z`oWXgA_v^k9@J|4cNR zKT6CQhS8f*e6ChfQd(MBQ^V%8?Zi4j6>i+0@JA^^^3l-SY{Q1Kn^A-Mi2INEZJl2Z z+iey*MRr%1t~=BXe)Ytg)y|jlGMT9~wt!wlGssgBc7bKxHDa~7eo>OQ|ER| zvN0JxX0kFhx<`dOZHgw3~vZScg zmg&*#Py%OoVE*RHSM_VTOXD11>a`1tY6opnf5*E16t!_4<$Nsc_hrtS=pLTD8X<)E z`6G*ro6rhea-y0J!Lf)&?KHN@p7Up)*@=F5M#Q=P2Z7ado#&NI?~Z>H)R- zcbBOo=g#3QND>P#9|ckMC(lL0AO$2~ou|Iwxi322%2U(X?cY$RO<2fo5bQDdBy=mlNZ3zF-}|io^7pJj?SC8l=9$@0ewS%vXV;{ zl#h>>&&t4DgZFc#KaY|_vbt!nMgYvlg}AwX{dD+5cyR2C5iUq*cJ~H1u68jy`tNVX zg>JcK;F=`MBgl&c7u#4*<#O%v0`sVZed!hoiK29oUe zLv|xu9SY2#4=)|?bge;d)M6zPBP(Ur53Jp*;p(%op5HhC>2^#PHNIiY5w^jl95b*k zi&aKsw_(O#PfEn?_MnMeEs@hiDAZ5kEK098BVxtT?v930-=k;3hYTa{qL>anjj+P0T4lH__J28-F zNbubDrr2k{^L3A{h{uUVO=(gF=de4wf-GjSismbCirtorsmsp6s#2|7Rbs*vkFPHb zva5Zr2vUkRvf*TqB@AToTCm%&3d^VpUTO2ul%Cb3zbmRUwRyPs;@MHTseqhsXXrp6 z=cY|;=d-98QK`Rvb8@79XCI+@rw zypM9PK-Sd^Q^>)DxCH~xkjix}K!UfpScF^oM|E7+Xh*g@?rjGAs%Ss-rMsfmiCiyQ>6;+HoN{FOT(VOK z{@z^rHwT***);4}Ojzq$XnSj8e&dhHXzR;Xe;b`s5Jz@9s1KTsBXf*1=h%2s&0rJX zh`Sxm?d(cr?sM~P_bpUN<7*HxaXrHqvQnmx>km(dYll=9>*6&Je#au?mFvISR;`d& zp_R+8q%$T_t!emW*--PT>~rkAwuWB&vPYIbgI}O$3ZL6S(2IvYQA(~PgSo;5LgVUI z)6()TS-~X;CK>D;ng#k#kyu3L9KV*FB6EcCR|8AjSp+xiG9XtiUqyK!ORwN?ywN*54HPWO6c2$j0WcERmIaT)(SE{p{bgE^2sZ(%eUogK zuHuxCSD}zTSda&o@@*|!a0@&mjGj**RAfcrdF4E_bSQ3pFfPU(FC}zhKR4UNziP@w zBZb*#|m zH^n7YVUsI;%mO<)~L)Q_^tz)Lpl65?CwTskQ+@uvi2K zJtid587w+YU-oZZ4@lwE7n8~CF;R_2P(e zZB*D#Von_9A-$5y-P(Qq!j~*8)nyGeHQ^XaXeiQdjrj0$jV>ZOgfGh&$h|+*SPO10 za?vwhKEjyBs(--OduK~DeGTzT_8J5%BaJzhUMRqJrNWEgQkxdOsxD_2Eab(bUyMw~ z`?1s1iNo%*PaSJydnOrT%%;uKyQ{Y3*FP?AF2-zr5n~@8jA(ur)(py*WtK0ycAK2|(x(usIP_k+$KO^Aq zk_qo|K(9+%v3WVOq0&^@=kC;|IIhiuQ+WwzY$mVw?5tA|)BtGg#DOAY7u%qm;)6!DPd8 z|IVbDHddacvfBl@<7(fM(QW-RQ^bD#)>B9ADgovUB|PAIytrr-pSDRsBz(k!xE)N#D&dkWxOms5tWSU(~K<{y#;q{dN)mbNJflHOEcwK+k1tl>2Ab0SR4~}ij zrD%r6_=JDcqzVFEjC$S}XGc_=uur^2el~uj84oS{ch$K4OoR%vy(fi=;L)oD?5fu| z?`?nsNc`lyy(V5h*u*`S{c272Y=f*f*ZZQaokNplVCf23+MGm2uBRtH4NFwa$3!%? z#2^FD4FM)OxuSO&Sd<2rLt5(FJE6twJ8QmoR{RDtPpm<1eC`O?D#)GSW9}iM4z!3z z>Z})2k$tl?Pb<(A0zz9N9g~)?Pu_%t8fM{qy9BKDq;KGkl(WdwhXXI9r_$@XfW9Yg~^5_u?iJSGcLAZi|CG~+5ycrUm_Ek_A!8YW?Q zW`i|wj#=Upo*BtasfVW?L$ktq22x4`3M`<3dmI+XP1xtO^A*dU{z8D;N1uGTVZk(2 zX#5+*gm@?z;@xe}3DcD+KMd(>Nt;-tZ8-d5@g>6b!EYbME5X67ZkPCaUrtQZ7@oS~broYjw|J=2}w_(|Z7hy*7$nBS^QruscW}W0m)7#TUmEF`tTT`){!)07rJ=HcBL4!(H>;PlVGk~K!HKt1K!<) zzsk8QT815C#tzj9s{SxsNoiB>~9-QOlj|Dk6tv~@bZZGg)2THhf;s1++ zh-qMl{_neTmB@LwLIt#NEKd*ZxBqN>SIi>ABCWfCr_A8nannRnFJ&)up5hz#w z*?(`}3rNxHH#^C>@c14gKsiu!^Or*fX{~*B+9z(sSKdK{PL05|fxN}U(c^lRPv&PW zIw^OznF3AG6UgI!6AS>>K2Qq?M2vx?fxq7|7?#07ialag|9JKkJw&HZ^=>EM~ezEU(_R_a|J)<2e&dYJLb^B)_Veb?RD@c<=kfLBB=HpSO+!*W7VP4`zL#{t)y!|4t$m z`2F+4C>;~lQpAh8HG+4rAe?z%(2Eg=$ZyAi+@Lx%Say{p}8BwRgv%o>5E ziln?1jjXTF5E0<}{@sB9i=O3CGx2`N)bm^Ofny@VM`FG1Z{qHq;=jkbisylLK!GA; z5WfJ?T%g2+_?>3ZxY)DZl2yy+gFa@6KV_VWP=2XQ6)Jl2j*i55wS9nZSUyE%dJyK; zYUh0e-;kYsCO)8E0fD|r(qeBrXFINXb?5j3MG69m4u1uFB*c*FYadD-I{7DOU+I9b z>8;5r>S@^EchPS9xk^v`N8g6O$Mg1Cdbga5yDxqkX$)7=1SSGoK~}Q+q26;m-gadK z(+PyBioG%&`}qKD@%%1O$%;EvG4kMto0;(o7H}U}NEZokT@Z{L$yN^fVYf=4r;=D{ z9MX@foRx9OS~J;f`?6&t>{1>HR=)eD5@|XTC_a#{v5$N0Np_h_qX#a)Eu2NUot??^ zN+5UY{$j;`a&iKMM;%sZV22&LA$u^Sx4PU_v|%eV6So^>8>~#)HSlh?8(q;gs3?D~ z;792Kmr4o$?-vRG{ld@X#u6t4)D0KbAD?}294X@@orbYdX+>P|TR{c5f{4L{2Gf+0 z-|-a%Ny(rc7#cIsqTbU+-p3w}4K8FN98U?crIAm;q1Q-*|z}V379^VXt-z z{-HR~8D=^R^g6U0yOeMN7eBg7H=oAU`2R_Ff$pW-|h&`=Ccj6lQ4B9MVqD9j1yP z*E@PS#pJTTuv>-w#soZ;9z+G6{vrVaawcNn_POL*q*~C)-znNq;%CeM`Rckzxew$A z;7NVTG~~*mdzn)`;wzn)U%-#aSN@6rC%>?;^lzIJGui20*4*AaXnoVXpbr#2$ajO% zY6xn-P5B@8nEdOaqAb^}5Bi`=98Z*@LHjd!=f-~xFeP%HS~mhaxOElpwpFm3r|n49 zn?y>&_%@9@knaga`WKXcd{Y9(zwMDdzb=lN)wL#%{Boaf8MPh)ed_5XP$YsM*s#|K&o&bHFUHYv_US6lv`2P<7)Cu3%wexcl=AnT;k@5 zr5I1vmkXeMB2nM(b7484Jvj$nYze|~Xr=NU0IM3b5lY`+Wb|GXzlvQ4#APE+wV;t> z-PGFBOeXrI%-MhwXV=`-0AmQ23Wr(1b%-1atF$^exDG#f6E=`4L;FN4ci0rg-X=Gy zCOnQckBfQ)+N6=x}=@4Z^c!3VH;E*ynKp&qOI*MO3JkEi-p%)v*{GvgqRD$zYO0<#B zhhGmgKt}ri(k&2AC}W7lBH&c{2lXbz=?&J?Vfq$zNn)$pz;-#TIygLMamq@xKOJ+u%>W zVdoEr3jXin3>7vVzu1o&qX2KI&EImqInRmYs*+oL{0#;YTm#ho))JcSJ)2Ax_q*Pj z7-qdfy#kL!=t4 zCARBKjX#BkRZ|DEdTNP>N(0mJ52RYb&UEdDHLGY_dh|ohH0PAzEXyHVv%sFmVs4J`utjeV8~BH*?1P%yY+n zCU#5QukF5j+bL%w|DQsWyy~QIoC9dK*28D{!%Fg_3GWZ4Jr7`D zLiZ&&Z0fWM_<~w1{>%&U_qW&VDa}iMS508vmC4$=olg)FneK%lbugXQE)afTCJuY& zSB=FSvhrS@X1r2iALJ?(Jz?cpBL7DQPF9;7jBV~SZtPP&xYj;>hFZ&mi zR_UK;(q?~UJMR1mkjC9)E5GwXx_ad!X^rwCZ#_bJH&T6sUpO;1En@&Mt|(ae0pVxX zOz;$!?lB<#^C}y5O0vl>-@f`Y{@>_W0;sEGIQgt8P^jY#1+TWg==rLRc}zqYQwau& z+lj~=ks=8PyWfQF96X-v6jceh4(GjqkAWh^VDH}&p$d{Lxr74!S!@a+h4f1hIkT-t z+8tB*vKE>+CjThk+ny!j%L(DkPLPji%LWa}Cr^VTI&|3x_E9awckl^O6g^TQYSmfx zL*fq0C9<-#F&hhIqM+iAC}}0t(vs}6T#b({DbMY)l+#-rt&9?UbC#FBnj`SOoD|5T zfawAF3t$!Ys2mHFNC1Z0Y9>?hC1*dH=FulOLr@=nl_tQzF;5`@2I`NtR--u=MV~kv zzv3d1p!osQ3N~bd_|2J1ieOMs%LRC6aqTKg-mQ1(@kJq`iaGY8{>?bXRhX(g(dO%p z06jXCec^A&ozQ7TUR-nxyG11cjlhO;=yY4s-#zV3v@81)272Zwxg(1DXoNpK{#*Ic zh*_-iNFPcoXbNVN{AQG8o)B@Iw%=li&hY$er{XsJ_FworE8Yfv;Pq&cDE`3QvYOpg zu2Dv&U#yB)`(CP{moBw-gt9m%JwgPSwZ0Jp-7%l7iwjY_kA^THdNAm69$qLJVtSJy(CS+G#~wktzelT>?T*3a*PoD-4Hk zYM1^f#NYP{Ko%2MQ5~E#jg8*3Dh6@diPO6t=c!!uS5^QVpeS(+{OFv#=X0>ybs|l0 zkW=}Oc=*M2hub;rf*9Ez89D@CF|mkLA2ly=l^-b6`e7Ecind0}_V77Zu}d8vf0Em~ z`(B;LfaldQDY%m%$Ksdd>JnEAqOCXzTC>ZSG+2gY^5S;#^-O!K8lj zYl1r}THb$r@LOU%Pp)q|&Ts#!)R(oAFB7_K7mXgKP;oX1)=D0(xx4GX0w~|;EDHeR za=u3m(Fj;fjCX^gOt>Mcna%DPMb6-fE#UzlE@nPff!^<=wwJrp+10F86G7G-D{Fz=7-;VWT|g8B<$+rd}3k1_)ya z>;8<3gAZe0q~SB!Wtpo%t9f4iILg{tE8m+m9){2p**!r6(~HY+3z9b|*mSH9+#;m_ z8cvkUd=qkYvMC3Up;{^P41@tQ+k7ec*=i2L^ma z0DJrZwF9V;TK62Ui%R9;D8BEXO1KGpGo;DxI&3WY(5AgVqSRa~H)7+;gm$o{H8tZh zJ^5OiA9EzbhA=ATL_?}d?cRqTTek>qIoC)t0eI~9gMiVY!O%AZ)~?) z9sFqX_1#-6H_<_r#_Ysvftsa-Nan@FA&es+zW+060-qEeE`wnCHRq~N5UA_!ivAp& z0N^tMNYbRGjIZX|4Opn;jJJ7zaUEBba+z#gP(FFJ$#l8d;R=B0K+r3AtA~Z_fS#+x zm_(nj7Ul0b?6l)RD<&EABm7%!28{69#Dm45;DXx$#wgILcI{f*Fv%CdDCV^BDKO}= zRpf9Qa6Rrdr^^}HgO{C_6a;F+tI7}6a3Xhd@?%|o?lT1^PpXC9uHvR3Tf~oLA`1PY z89+odMH{S(Y(U!sV84n=mgYSimxcP_qe57lk%#6OS33St;H=868|6AjG0ZO+iX5Ur z&y$0Ct9SBM{ETqH(a3K5yC$a5HX8?4`+u~00U%4k5zwK5DHdU2k1WRw;(>Jsjhyyc zx%vBjk0+wzMob^t5^{#y^z+vDs)O^>GLG?7UoT(MI~vLC9(@^Z0~fbBjV{9*hUp|p z=K^f)WC=Jkf+x0|hQsRL?~LjUvW%_9JfA;tN`gzPtkSp*p|9$48kZ$TZ~>7S_xo}I z&tC5WZN5HFH}fKxDeyM}TN|5B(=i~-eeG~)*x0)a8BK~>7Rw?-7~FI`V}M?+!FzkY z-gz1TXC>ijnV?Yas{1CQwK<$SAC&p>Z9C%Akw~QR)F%yO$&T|5ErDb=Eaulk8Q63__AXjkVz}cB0g={gNCvta{+?zbsTt|YioQC=lfzK2*R}9`n?w~v6 zqKqANFf8vBXOrEqG#Y)Dp2~sSLXpwQdeEZ3-unmMaF_Hrjfo4*Vow6$B{)1;{00e_ z17u2H7HK~ucgci>e_F0uryEBA$RW$fh~Q`Pn$1)G=-QOH4l<_&Ajuu+gkvkH(h$&0 zLXish-ajbz+GNZYqXnl=^%4^Q0n+!Mhg=iaJhQfX^C~}uX1Ba#{pnhl?CaVppTXPu zJNlQT{)0rn-+%B=t-a$hoWPS_sX`5><7Ui6zHjs4+%L$o!(x=VJ7D!q5q%NBmI4&OQ}4WfAX&wo7F@Ka)D^ zmpV-!`xe#ibY{Zb$F9PuyY1!1Xu(TLL(i}6l@Qx)mOb?!?isXo2qFml#|s%7_~3ly zJszrzPkrFJRX==hz;r{-Qqsq^XL-WBAa}++P%6wcNTIM=YP1Y_$9%k$kG8dZF7=dM zksZgX*|2Qlw@n|LBj8zDIY-h$#Uy33F7C-TPxrc5NM$yK3{d_LaVYD1{}~<*$BpekSysBg3NTctXX#JokL; z7;6p6?bovPPtR?0|2ZyMrg3?>3n%ny&U;626PkL$0<3jCW5605PnCeu+Hl&oMoT4* zU&y(Yd88OYW3wJ}Cbp`pCntE$1h0)n;_)Kk3v3!aXLHU$s`;k?d<{qlh~Zxq_DZQ# zZtOknd&AOm@c0;Z(V+N{==rfX zplW=OBd9Cclz(k3;t^WqNoS_ZwGA{29hBC83=8RVjHQ3xM?DsIPj+&2M4M&Xxh#`? zQhn2s{|r#S!b?VZ3)~ViP4;$0Rj-u7lQF5qF5ZOhUrhufmbaMh`$i!6B3wGE4iP?( zHI+OUdRISJow3CB;w!@C#qeTxM$3tMO<>6mfAZe?L9Y=d(efxc_V3ENN;_kyF!+H> zZs-w6Uk@J5BmQ9Wg8v@M5-Tcj0%H?|5&vA~3|tvX9eg(_KF1X2bpSU!+}MPIr;(1YKe|2`_51PS?9>Z?`}^OZcz(H+XI15mb}0P24^*i8^X~&n|y_R zwB^*E`usXgH@Jb?wJ%v4P107X2gbvWi9G=kcr%6;f)_QI2ec~$C8|`sgXN782&@B{N+|+U7~)Yd%8kRcXbYFCmfED50*#=5`mk1mAqTiF_{HP z4s-DxbEiHe=pIkK?;_j5h*o6peAX4~6Q%_8*4`f0B%?)*HFu%w`6-VmB;t4RbGU>t zx!jMb-TnQsJe&=^VS7>sFUc7@b;P5G^P?4q1Bz%rc8wlcMO#Eg9aF;GH;2V2xY^$=S*?>{(d7{^(hTEOk787p8}owrWy=JM+Bo=+~o7RazUQUE|#?Eu<5W( zO;>vQwJ9zbc$U~Ls=9i^f|jlD-wVSCqpKHa&azGg%aSwMzAoeFv{Newsy+AOd8 zlAzZo-anJbb;Dn3IKJu5S^RUdz1~k|g3DCY++dAV8E1(!+~8}hX7}HS!;6gNic{zV zKd-*M286X?g$f{)^tb?Bf4artvp%b5Npv4|B4a<@`6+vwn6!Fe$9;MayI=j|Q91V0 zpXSjQyXml`!=Yq$NsoBw7UGQ zvku&mpsUYgwQ3hWojnsk+GZ;NR_TNZ16TQPtWM1MUZ9?@nD53dt236DtYT^F)ATdJ z(gBEOmVjow)i_(q?nvkU!1~63 ze8^I_Y?h#hLw_GQo#Zlu^^X!pD>U=>&kL^mSJ&9`EN8KDSbG6)wc;ZTXag?wkL> zydSFKTCblA{O;0Y{Ayy5${IjsRc&4&jt6x%>Wc@36*6$fw?&FmP6uL}xtGNtNH!G~ zYH>dvF&p}Is_1xFL!TR|J~2?F!Njegg)t*L2xxBo&sGmLpbI-kZmxD2w^FLYU5fPzprlUpW>M}Kt&LXE)|fLMi@#(K^jTv?v9~T1e6$*&H6xqd;SRSidZc3AZ84)xDMD_tcj`+NN@u5b zb9oHCyeIBbG98jJ5#*Hr88U*Y zp48^tm<}gK#0N&-+6B* zcZmR&YbBeTBs|BH7N4e=u(Ne`Cwb-&BMKNPVVtd`2>3=e&Q{{=o1xG}k3>;D1A{WC z4Qgp2#lda5zv9l7P%{D_T9T`$7a0<8Gu3{6S~KMwPPZ~zMt-!Ec!UY}$Jou;{uQ$C z5;(moAnC{Z-xRs5>=Zrqe?$GD@^T3r1AqU1YTC*1b}g-+*pQ?_d`Oe;k`rJ$`+>#o z*xy!Nn?rp*I?iBO~+NY>LE3kU8IHGW5MyY-dR-IkYn0 z6ScBk#*&{;-lBtj=)UuC*gAASh#OFVz z6^!0zi=XJFc?p(lM(W#Z%y?^{zyCdY3pU4+CNE1Adv-;xn9BjPJzB`i>B~k&e9dPs zeFut=VngK+t2!>cAA$WoczFk)Jh^2BY?1|5T+9yMt1icAJH~}<>7(To(LPJ8H62<&`+YhN$@HF|osp6wt zFBugfnvsunbvC8s&ZP{krl(I0SY&Y6&6s|NB;MLGX)cYFQm2m8uguMGp}p{5QeZ%t z``N9OJ$Elir&|a=)T;Ph*hh{;F4on$lxZc1p`5hj!qJTi-Ch5Cta7z3$&1a~5Gfn$ z(p~LCg-3blPcxX5RL_vY>* z-8Mo3Gw!cvn~_fim%B(z!rAlg>ywr7N)hyyZcNes-d;mfy8y?7S7#fn-s&=AnKuL< zX>|Vetarqk7596|I5GY?<}AF`{=))KVM2TsEBS%a=A4J?>Jbf9@cvu-bMll1s+xnH z*?F=E5Ds)cn9QFf0t(1!50ls|h8 zs2omBB^nI-@Z#Br7vG2WZ~pU8)x3;bATw<9SJ%xANJE=y9-+6u`cRiPPeIdjJ#_bR zP!AGXVg|mib>B&2&)jdFUFd@xa}0b$?9*0e16tV6_Q>bQ7WcCU)R1;#9;H4e*RxP$ zEBnje>m*vOfy3c!Q1D4l)IsRq^hABxgnNo_CNDUm0g?5)8ylSi%Lt}|L_(cg)4S; za4ZieJD>bnls+Dd{T(35Rf3Fm?aTFM7VBG6@%MkyH`xSDS)FKT+wf}THw%6$|LN@V zu58A@ERzZNQ~W}&j=5q546w)QMuAz3C0dQzz{55g;6}Ws);`{i<$zWWSqanix`<9s zEJL1|->>N$1|~p;J(ck*?KjpxP{m<@J&TRI&C&6@Ibv|MM{$uHqOML9t3zJoqBnFW z$_98m%F$Vr@5cMiTG-j`J7XKlMwdNd_1k|&Y%Ka@qw#rA20nQwYS|I}M4)XBys2~_ zlwSyS^YkZJv_Z6&p@n4!FOVEsq+wUojk!O#r==IRoi3n{!Y9F#JRAPc;Th!yr&Ju4 zgkYu=r9oOD(o&mq=?7^KH@D{X-23Q{K3Ln>h)GD?A++*bb|xkw%I`D7t`QBz$`1`` z{d0#>_0KPVxUtQ%ep$x4rz;=o$i-t!HqiTip+gqEJ58ZvHmAmAI0ib~!xeK(F9kgh zc0Wzda?!REBlFLWwwH@tCMT(=sMs(`V`MfWanWgtW-$L*{mmagl z=p2(~eKpOzam%XFn)M!{i>3r!$(?5@mrvI7g0xvkM|Mo-YplVT-`3xRuuxb$6Z@TL z%kr}=){PT$jFn>6Bp*%oS>~+K->8-ig@qWg+#u{U3_Dwx_nOboOUqnJ3w;GDWR6_C zyqDcey|jfNDG3`>W}KX*`;Xe@nx+sR+s@KJN0D)0)^A^D=ty0)&4zw+d8y*8y0#&z0HgG>>CQ(ebYKy z^i;a0-_g?2a_3P+i;GsWu$lgAJY=o2&KMrBJS> z_b!v5go_{3ADc{}4?~swR20@89JU@GTxJr}FrgarCr5PpoI2sT%I~q7LgpYt{&5{2 z8aL6?D~*FiZ>~-6L^hyYs@0U9{R@p51>{B8pe4p~0zTq(m3Db~S#C``nwN6~?;SBU1} z(q!24fA47?-J;eUzzoZBSwiPrdBjn>ly-VeOeYi^KHWUllK3+Ww56DVv`0>qDy-Te5vl;yY9PF*4P**+o2h$5+<2OrQ% zW8P<*(3VKXi8PUtlrB>bu(uEbP~lnh9U_A2FPWJb6#FHR1ZDo2ms_w%DkR$kFikv+ z0H(6Qff)T3{2VKs^n&r1O=D7;@k(a&?bF-lKN#Y2jFlyWe4cXdR!{fGm!%Z6|F5bP zP{~3eBy42io=waX#y{?yWh8m#AwI|0u+8KbDZ7TJ)pF&Qeguzd%&C-Mb7M zl+Mhu^VWt_&l!sLC4sGP?%kFjSAY^ z+ohECf$L^gKG`xaaqXF>Hzckts@)qZ+6V@Hi~em0d|6y`(_2x^F&xVM;(u%16G1|g zBab=3O=MJ%g}FQxr(eDx{4Bwm;a@}!G)VuhX0zA02#Yq&Q!%?n%LU5UBo|%Oz8C5p zzQ()fWEtTT*T1Myep$&D$;RmFGynZvs!c`aTz|jvR3l-DV~^Kt8#xr9Je+Tc(Z7Tp z5S9$0`?rLvkKwW;WCR)K@?-iq>Ug$JN%aFMOu}a^_~UBczfFtdT|O_}X#heT6zyJ0 z2plVxj++80eR=W$C~t!;EstM%zooDG zIX*Xx!B1Vg#iJ4|Dx*l61|(^-!LOo!t!J##6KfUrh;-9lpVP)_O`;8QqvPLw&oK!W zU67V>ww-XtjILp_Owvgn-10=#?4&*vds!1|#DmZ1D>^m1REj2vxy8zF|7~9E9jh3y zbxIN&b^y%kL|0WbilOTOcrbfT0JE>SX96(uHg@?h^4tGHLN>C+DR#Pl?UiPN+sar; zD4mD$KytDS>HwP}SRhEnxzspCqTX-f(DR4|5# z&t{3aM6Hf`ejwKe1qJPG=1G*G9;D9i^aqhFWnQKm21!3wHiutSRJWhK@$av2&pb6Q z8!b0=QZtr2gX<&nh2h9WUH6)3I!U!wZqrxszlD;{n#GKBfdzhng>yo(%rU?flrrba zOCOf#)N6ovRQFeHj0Y)TM92Q6ukYb#@^dIOI=lNJT8!*IJS(`au|#1FWRUCh>!OR0 z31d63VMB{5O%G1@#{8;wAu}Hp1VYDt2!lecxOwtJ>3o!zM@k#nYylFW_29&R0Hf~;&7=@)kbwd0|IoTh z2uxB^(zDE)n7Xopa|EByCZ+#HO~ZZ1P0;pgh`Ro96K)w>Bmlk(5dvQz7D0^tiJs38b`?)j4G2PLOg+wX4x1DpJGVB=Uow!|GjYZ zJx7kmIRGPM@^Er;!l&+~f7B^fIJ$EBYBLPk&oAM3XUIy)rZEH-z9e4wiiU#1k(Nre zgA$fw`v1cc5#V000inU~S{x~bc#3d&c){fUhZip`gcLW^ESh!xHk#kP3+fpK%V`V7 zy?j%MtUxz&u6EVM6K5TU@NKjZN7vQs6|qj9kQe^|kYPLnEnA@T8(5>nzSfj)d^N|$ z7A%f?#F+Mq{8rKFmK%oM5Q=}nDv3Bc^4r4U(31@M-v|-*3EOtf^4-y-gac<=!F}zf zP`q-%Q-r1>+_BML>*@nF@9N^5=lJjg^=p?7G@n<3O}Uj%k*T2uc&T!gH!#o|tWTlt zMC}tEhml4hs?E2oSEf<3`+r`r-*`_+6uU61iT&lx%?7|DHl`{Ypq>L* z45Fb!R3<6I<+P37t()ctZS;GhfBDZ`^gM!hjT*9w4{_H&p}R%YOa;}|)%orzn5Wa1 z`fM0Jy#4GjnTyAK0K)}8<+VD)&WQuyfgMViovwGc0eY)}A8prclopkhp_=P=7gQRi z5;HS18&J&G$P#KkFM%dynsa2~3zrjQLFGak78~v&Eg(QI{NxN5R0o<5R z)lI8jgnMtUwS|*j50zWjPIuK>`ECrDYxLU5C{96E}x4*Np}ZZ zLrJehOp;#-MQrl~eU-m!l`M}qUCP9#7h$9`%&xAL6(xGPR@P3Ek}?28{M63FPJMX^ zYKWTa`yU=5MjiY=U5cyq-S0kEt*zj^p|hN>p(%ra@vfD3;O##!OjV0*7ZuyB;tL9c1aY&UR=xwj4@}Y z4|-BacN$r;Z?nw^vtwic4DYu7u~E1^hYXsaB!7e;(f4b zoDO!Jm?K#p`HiJQX?Y#_hbN6#2IPj2;!O!Wh-n|H8@E&oUs^KV%O9=pM>xV70iV zoK)@Fc}r|#cnJOtF*|G22&gLCgpn1{5RM-*d#{&zZgVxOMt}PI)FAyjt@v*$N5v|$ z4YJ8{>o~>&^cEe{t#>_T-d?W4AC#5)qz%{wPMJ zvYkr;KSt<2Wt-xA#^gizRyb~ItFAlPy0cQB- zrYKiPNXX{z0S1WEdUn}}+F+ZpJ~U!Z$a!$_ zBXdNSYy0I$twlB2>(i%vRN?tR6VeVi1Evl1iCdNkKP4Nxi4p3Ahx0_VH7ld=nqQwl zwZYR2n;a5~siFnUQFJH#q_;-#t4s+AXSJ76w`;ld>#|kz6c=~a61LXY=7O7+C=gCz za9-FikjnUOBv#!Qier9t+CIm%QNq+)lteI~-a$q8^7E=s!XXIsvhF{sGc)g@wiljW zZugjFwvFW_jVNJ{_r6X-O-)s0bm&DZ=B#!|&b5g7kY!Rb7R)U*F)ch@zFwi;QVXNc z*t>&Y&wwRknQ;*$*MBlF2Feg3k_!e$i+RV{dwX7-dKKTHB}NosBf~6lvU=)^J9EwZ zB5C3-53r5%6x+^wJ(P!IkD6chH@3F6dd&ut$G%|P9P9IGM>RI@rZgASkNnKp|7`n` zUxPxG|Lx=&jKHjZf;CzbWm zZmi*Xo>JN%F5O$7U8DGK<7Fgl-h$vf;hU$Ww^6i+%pbHTZ_Oq-^U4e~vd}u$ky5dG zK%JpBrpkk_Rp*x~f_e)lwAX}S)jVN-kTOCl?BJ1;s0vsTr*Ed9uIl0>Pc=BslY3Fpor3J-W{2we0!Ol_gy}jYJtwYbtz4F69e->v+!wSnYzv8?V7di$Q_7(y!$THr7W7o#X zBvKON)uTsTPE*!QBwG)+>5FJ9^CK$?li8|Fc|$!m*xc{qZbC#-71LzWUnrOV?1@XX zc&G^}Ug)*V$s)(|yn5blN?t1ff-h@DxtHkA?H@Kc7TL%0TaB{F0Mvcmoo*Akq}N4e zBQp*NDL>Z(X={7?ZJ#JoqImwt$*Vp0i>MGqdv4aP?}1kY2vEe560+X7&JGwc!eG-# z_^y?9y!=qCRWj3Yr7=bO=v0hfL`d^(iQ)m=55J4wW{bpo4F6`4bVplh@p8z8810CM zp7iA0d|J`lid%9mK?BxITtn~saNC8)nupqBeo&iDu=#@-a@||KD-!}1y{RAdp}ZF^ zTmbpiw0F7u6^FwpC1LPpefm+=!t;ei`XjW2ht~oaE9ra8UShg+)pwgOeQm!Bl^-bu zMJ3mRmf+7WZN+rim@ZR%Nk8Xiar--(iFj4Bz^o6%#L^e)%kTE`Tj<_MIK=TtNvfOp z1PDL;&R=nSl+}FM1etac(v(r_MONR-?fT;M0046>F0%Qv0Z3@a5_{dTsnX-Em~=Hf zcOu3-w4yTmDj}=R>7ziA=CU&SYbx@6Os8V`_R#e-Iesc6gEy{l<8dB3khjwFb+wgN z#na4a0((`xNlS|MSD)fb&h@}$v4=9R0^&II(mTmTE$ig%{d$S*t;VpSQBeXJF z5Q}ax1Ejf0=G+inNSkdPT8>vi74Z17bdV;AO~0vSzw_Up>J;l}a^NeE=yXh9$ky`K zAsUXOgT!P0d|S+p4^rFeD=2n>A*6rmS&ZGx)>ppbjUy@sn3x3~h0u0^R2r zon(S7#$(}+jVG#l%DKqCah^B|LF^SlNOg2&0Z zxK#G0LRNNl5n8t)=6TBd#oIPjKm8rpZVE0CQ55JGUm4=(yZ8IcU1yFrzfU=!q4N@r z3aX!@u6ERhbVT4lf2Y6YSs;lxfscoPpG>eThXL{vy9=Ua?;vE0$)^11$feJwb&nW6 z(zn?^KtW7>cu}%Cw;)g4Ey(^_?XecSw1~ieCR^0k?lJpB5p`3gte-Hh`E&=*#3FNi z-@tZoE`x=MLST$frb>C5>_bn~AsPflt`6M!}$p`q8t{S6IUpbDy@`u$T{U||6s#nktS z7hy&B^^|aox2{h5A=tz!+{-@iSpMkE*?63*zF&(@chR%a)>shz#+LF~H~;C=VF|cq zQCUxSYT#}pZn8+>T8Vv+qUs2Sf4*SE^3t%SmUY#6ZQDzC1c<9IKAkJofsc1H52eYn z&CYV&)2FT7_U}%h)tT(PiGm_Kz|5@L#Eq@N&LYG%jwSm9MDIw>2u%vZ20Kl^X3hb) zQVqxeEY%SI769p6%a5jq=g*J7pLV@U1BydgJjQ1gAZyUqE$!_2p#)cp%T_0g;BeGd z$5bOcwB`3NX4k6o|K;QvUXd*@yPWT#ZjnD)+TSl!87)?A!0owDet;DCG87*uDL>i#I zT2XL&0P?D!2sb5UoYs#YKb8&_{_B%8T=!hvMOT}kuPfQeA*m!t4?-e2zh=NV-xiGQ zuw3!6+6fbE+;^MWe~{K|PmyFez@2T|Ary?>og^cS3J&KCH2kU_#`om&V1M(ZzYilkli)UGDNs-9=s<; zI%g=i$Z_XSJay^PuN9g!^_O^1l-;8t?UpCy%9Ezy z?)*%wAp4=F<$2G~TM+N;|LjosWTEV(Ce+IvV&!$pms-HRw80Q(x^K6Q+QCD7$Z6vc zH&1*F!2fd_jk4{->$NnZJ};OR;T+acoGCS!n@OO`VZH9QQUJu!vi&z;)$oTT6&GI9*)JYXiA45)2Lp$^9qj?>e<8W zx)t*Zyzr1B;MQ#30%bcsY5yzs*9d7FuSZi-Q8}0JbC?Csy^CRX35f*LxQ$wvG>q#1?bcS_o&=k8jtib%iTH(V<=P}VEe29p9Ie{W7U962)~3xk`EQIUZbWiX&Ft5_HX_xb$IxV8Zq85J=!ey^&jwgT)#n=wzHw?7oCzcN~@dNuuaUFCtAtae~aEXnhv4sL}$BNO1K zw;v7HURUw7`r^DYd@+I#g*QQi&w#nqfPdS!(WUn{=Rt4>ox5T1Q}z9XlbFZzA{Ih; zP^IXtt+UkcWN7#pV6ye8`eL)BGK={k^m_4{dgLiG8eSjK=-ZdT9k}4@Or6J~$`dSk zq!e=Z#|3!r8-6+65_KYpmEC_K?|7`#eOnSszHcoI0(?0Nja({-n#@Q?A#Zc{-WoI9 zE!cg80ZZexWbz1e&4r4Fi?XjuVeM%74#J+z62N$cFwvG>`y>N{<=TZkCFfrev zGU)3-i}Z=7xD!IXb@sC@q#oK>4OGON;hUUjy52?_I=T^;K8dpN@qF>!PNhA+zV>!0 z0YSl~owYenl-WdKp0i~zDWRt|cKf!V>|oQ^?j@PpWBo_k|5aZM0tKtir59>_tq*zl zfojrwQk1q-FC+B+OS@F+0kG{y36GU|V!HU`OPMGJ$AwXgM=v6c<8x~MR1w(L&m0o9 zQizxbd_9@YI|}5g_1*FtH?ABh(JPV`SyxJgN7zm5O(YnM^hzAbPC@Y`9Kdh;QxXYC z8*G=i?{O2Xfiw z_hzyn`_|ky_{7uN%OwBJ52nd3y~}*kDC+Y(A^ZwGEuvE`n!Nm^5$|E#r0TsDd~nwX z%>Kb}VB0s{DtWISOxu?s5@_Z+VKi^5l(WM$;JZLEk^~b%c)CtcEiCQwb&nKXu}dXL z^Sd*`wwtPBiO5@5mOd+c{JD@w$QhV%9rdt(Ecnrq&A{%ZbZinWhbk%JE`E<6liqbq zea=P-*~a0PUukMi2>^#LV;!*nNzm@$3v@^W+a(kDNo8N(!v$Rg=u+x5q^Uyg@hR6n zVb*6>v1pa5u^N6{T_hks>96-=)G;&ue30Z2UM>M=uEY07E%MK2gu+KJecs znJcxC^>oW()Wg)j$9bjoIaUHP15DoZ1;!xh&+cdTIlL-k0Cmhu(L^!`LgHFi%Ewv6 z8{_2rCMDFG{Dz=$`|h`&ZxwZ$Ur4;V!JfY-xKDo3FX|KiWdf4kfVgoQTzrk)qJlKJ zZ5P`>K@Ycv{QM_aM{WyvU=t26D*>DwGcA8iwd-&l+c6LkwlV>v9iXeCU53qA;a?dPE8J~I6+iLZX~7D6xvk)-Un z6RpLw86ozu#j4`_d2|*!MJN#5KuG}ab&nVs#vJb`9m~MxFery6t>F!Xi0^{@)N=4= z)u>0@+%tQrx^91dX2RigV!v)N$_~c=(Afm!nJ2S8xX%jUS8+)lRUAtHZKA9f$bI0n zqRI5JH+gfGIas3$o(USy5hQRBss9!z-5vTn(lN@F7C6xI&`J)QQ+lLL>Ip!g{@&j( zeY&QP-Dagit^nbfs@%6dVLfCn!YZR<6uZ|bc;{n?De-Y4OLV=i)W6E4`J;e;5P~@0DXSr;?`A6|yx9bAE8 zkdj$q2UFkdgeZDc8}Tx}K6>^+0hC!1?JxMDBZ!_XyHkSH|JE+W-clQRiQCx7%I|UA z!}nJy(U-Glh#aKpi5U=~(IJfJYTWOGUqKaOg4F!tYhMk=iYP1pxF&z)#@qD%Lf{++ zAoO@;mFF?ft8&c;@A1*6NEiT$u7cMuZX9``5 z6|wdC74!r|=dS6S#%`#yt!_0=12JtoVp z{B(x7+ts`d1}rYE3cTVjjS))2T{}C_H<4O0^~FYWW{8oIZY)OWHa1Scw#rTiP{#!y zZstf!U7^M!o0bdb5n4TpdEMeKp}5jeK%7T6*boxaDy51p)|q?S6k&a@4cu`Uob3&2 zdSHwlt!2PITLO)&^tSk~x~PP!L$@h&7pc?)wg2-q(>F5u8^OzCc<}Q+WxDp=xrHmU z#t$7LJB|i)%&t*$<*I7qdIOr=&GNJN&Dkl23Sz-TQI?p*;(=1$5Yd|xoJ9{{R;_c| zlX$x<{TjEDye%*iaGm^F+XP?h>b&h)#${v0swJ|uFNv)$efRACNt2cI0f6v<1u<+C`T0(b*jQCnk5`CFsIF^Ff_C8RAG;hlee8g)WD5qR!{B_h-`siR;2)k7Urw*9Rh->eH16onIZCdd-#WF1WYdT#C93bLws|c3P|`QsFDOMn zjKf7c>w7D0llY|x7nMgm$zsIUoX`4x2%PWOd#7Tr@~5gNq9H@UIcA#|usNUwBWl$w zng!%__bmvRMqzZ_-KTuVC&pzVXzGZsPQ~5OALk`n&glQ?ZTzFRo{ckXsa(oBw;Y^&}yYu zX)hBH=;o;+jCl-#bbfwOeOFE#Lq^qq0$026D|)_hRihoOmnu zdPrF9Q(c)t0R`GZy_sFwBK_}OM1H%6bv^y$<2i@ak1n<^9y`kF&mJukN+=BzT_jBY zbscXB%XJCgIR<^5A_dhDGu9QL1OOV+W$1%zw2f+yrmDRn%g|reR3<69Zwtw)fT;yg z!1@Hk`oxZZ3fwNnt@?h42FN!RK4egu*@^QUpd6638}9qCJ4Vg>#Ka}?PG;ASn(VX! zOOA~j6kPV#g13S$@f;dHk&le8agjyvDX5a2N~G0>HULeLY{0CT1#;fDQr)EL^-vZlPU1)t6$7Q8z6~ z1WdYlwJw(i85s=(=ptBX87J~KJ|s0Ui7y!O!>i4o8-2?#^`a`{wy=g}h3;r03X}Ax zW2i1fw2S7_6JZWu<>^vs6%+>gVAR%KtpAQ}BJpaLO0oaZffnW#w7yt$hpUS`ZWAz4Z<= z)_kBi&?k%^`S!nz2JPToR=yvQ^v#ZrY;`^N-lU?u1@bt*I6dU$$gy)ynZJJ;MyPYf zr#L;~HE_yyCVKB@^GtF2va{dX6G}m@=8}Zz0bD7Or*;ZhI^t8s@{VLMgKkcY%%!KR zfl7kIV2PvEA*=qI%cVvp9AxZrKx~i(*c_Y}4>EF&bTEE}jNhCxFo56aigJn7k}?RS zzT(8UOj)&3NH_5;m!Rwr`7fAZcGa)1jM{exK9%c|g_v>>by}8w*yzJ{FV^#xXqS*g z9o25%f+Pn9fQmlvcXBEx5qgDY*4~vRBH`RX6|d^+!w?vWt?vtogCdi#5g-0@AA!OI z3`KOY%?=y!6{(XfwdvCscf%f2z?k}IKH4)%UJy`4V4F*GAvy&?<_|0zYDK4&n%mE} z?+pa-h*o3yG{#k?e8Y?<`f@~xbyyf(|6sB7MXo&|FoYk5P7o+Oi;ilh5A}#i5}Il@0gXaM)n&kh zRC!H^zz^?16aO3=)3+19V@-R<O?cS?hTr@pHW3WKg>H5zfQUpH1Ji^R)M{d)6_oT7?<}-~@Ts&a;)_ zH<1H9u9n_unVW|pf8vs?`qfDVWqFTt;WdeqqB`oU3^b$x@WaqUe$ zAR$Pq3|j{Yba-k+W0SAF-lbP}lB_VAk<-##+fBlyk-vE}&`E!G;QgAt)sjnu2uAAT1l^aip$G^E={wmLq>wIHS9}K1%!b=Sqd1m8Ws#RzD zj?Qc5Yk6Pm>?g1uu^cBY&G~>G>kU zbR>o&?$0!RiRnSr2jQ&pE=mWv_9Rxz95+63kK&41@ww`YulKZFo0cKquto&knTt_u2j1aSZbd?5gLE}QllLLJQk7Fazy4YJR{g{n}8wJBDvDn8g+>i8R5rB1!& zV)_%(Z2TmvQq4JD!@a1AyqB4XvP@XTxN!RW^Y2|%2%J9)nx0Ee5-IRz9%O(<$a+~_ zDw<1{2nZssbSUPq?U>^|g?rCEC3#kMmP{ALG=YNS^6#1`iv-tV%PsK4vo zuqcStx9<3Im+~0Xfk|I_)YS(X8wRrIA-=>UOFbrQVpR}QmP7TsB(40M;Vmb}Q^KCf z34|@=HA1K%5b+24^vg?w0DJm2s@m}v0>Nd|YA3|Wd0k_*SfyIE{#{!st=quKxfs~T z2d|npXG!(sHCdFC=zHWd9=eYv+NCt1-uo7r%a01dhhmem?aERJ)Kju91cE5j@Vl!_ z2UvVBo05mE!zTmBM1?CfFK;!0#duFj2q=PG_)|#){+JUA=v(Xc*h%CBzPFXgmfJ_S zyzF`dI{`Rr9$)+Xeg)yKHKEw&7G6AX42xaUZOAt*>$w=&%gm^bzWJJIepo4MhKE|{ z5t{Ctx)pfo{E?jd6Z{I4Aulr@;S*UvQfRz&Y()CDwM^0?62^dV50`HT#l91G#dGBY{E=x=nY4_$DOf_~XqoiCSBld(V47`=RxIBMsg@e(U zV!nqT)YN0Jk&06;as+vdnn%AqS5|@yG3(5%J|R{JpU%9EUZ;lamD~p^=Nuh}T6O%8 z%tz^S^*E<15MuU&NyTbY41E7m^eU@-h6`iu&j3y5Y<@ zJQKDo4kk})2l9{XNnsoJH$+z|0l6u&P77(`_sPi)%vxJpHa$?R5>?HwY&AS;%zZww zIUk#8pwF{O?LvzrNDUJm+I{xGgWtf#^uXjfop3?;JEOyFiOkg+ab?^DJ%%}fP17r> zAhzet8?MDAZZIp!XQEJ(yPG}n)X2BQyh)#yvR9-!`5h7;e##WU%-|K5Th#_2$~sL| z=yhv97k0|wSxeTj-Ns@*Va(c=?(Crn@b&zG7mJUe+Za~ z6$n9bnLK{XFD+V?!T1r3qWWjYF9mBt2oxxrZ>tOEDvNAIZ`6mRQp+|$JLQQeEB&w` zRetsD6OXei-kKA1Q;_q1H7S@V=6VpaRYN|7tVB<%;B@F?-8KljG$&ciU_RXPLmQ6l zc#9r`POPh|+zzlCrUXG|Nqcobvi01?x~gJw;x73RKR6CDTi8Ef1DyllJKS%Yqef;l zx~e#*4cGL464iwt#Q<1+U_8z=>5ttVTh7^Kx*jWCv{|^7+D>A(h?dOl)o+5B_Ux@t z>C_BsNI#zEms#|d8!{JDeJTayx+=-1>B;AwY`fTy-4;X+4l773rBpq zH1&yGE(VdJ@>y2hD2s@wrqDT5mHN3jnP92}gVANHc?xJ-!bkO<=MAk zz}y^L9gVxngMmcvzJ8U@nNw9_*PgTU=-ii-+*|mnh=KwQlIq}+RA=M2a@Hxe;Uj>@ zyw)){r*X9!kX{n=@q9U;A$Xl4v%mRF-GHB#tD8qtYSJ!UzW!P9Su>cpjwHMb}&(6xZxOEx^)1!C%9> zc!LuOK-%{_IokwUTLM{}^j{x`GH|T34Bfv5+Le-{qXQEkIbXM|SV}Uylr|?|gBsxt zOzm44z6~^)aE{GDytMH6T>fj|~W2&^qF)xfNSii+=;LqpK#k7uLwyJt_!;E)_SpsW0q6aE}4 zMmbc$*d1**;jF@XIwGV9ZMmu1u9#;w@ww-5hN*=J9J_)%l5Q@Q7TK;Z_5QPl(8KKm zACS|Z#E=QfwpFX8FRzXO)JNE4kj&`H;WUcjFDM+(^M_b2A+U*csp}G>mUY3ACf^3R zQlvJ2xF9;@J@_R9nK!#w#bF z>9066)|UWp>?X{|OBPN_>I@h1ypOKNtEPg<4K}O#UST}u4hDlGXXW>+5?n5_XC`Lw zEXVm*-nk~c7g-Bi`UbPUfTR~A&z5d3sZDW(>jLi)1fZnCF#^_vu$pmSGD zvX}U|gL;+9#YnB@24hTuCQ({r>TZMJ3W^!j0tbF{ z7(fV8lRB$e$`-&&c&#)L)|!HWOq$qoL7W$0!Uw)in>M6Qe^qHxIl*c0uau1w*#D2-Nh(h(FFgMS7|$#Lv)KSc za2VyM2afimyz##QBLs+=3yat>NxNUF@jPK0z7F&egz5hT)B)O&j~e3EJkRikSZ=$n zfS7t3WQ#Qef=$$gk=Qqpw-0?fhH?IOi};V`+`Eqzr#=2eYm^FWI*w8Rvdid@AWa;q zEgeOZwq`W<45)*Z(Sa8r(;Ibou{qd@YvTxT*7;J9%GKU{Jd+u)7|?Q4oy)t)B=f6@ zoAVYRmQmHhd$gdc+Dn&dRi!xfPxuLqfNHoc3~p8GQoXy zI7u}R={eI9VU_k!4Sdu~D+1jcW(9LU4i*o7c~CH3skNOT4ter}-$7O;K7TDIj7)Baj(Os@voy(I?tnNS`H&bCaCz;F%ekeFJ`z14D07A zQ#0rnN=m<;4Dn*kXg*MX>~Lqd_uVt?V+#aV^=g#9CT{n@f8+t5xaChkP=6e-e2L|| zZTG6VX=Voeh83-^hB5>u`11N#fWh&5)f_m0Y^nl=`O#_NWF-XyHP=H9`(Mk&eycVM4 z1+glvtP%ccL2o$5ly-&`Sueu&ki|z@#uTw|qsq81Glko@c0Y1<*IivjUn8q?a z?ePcf1}Bg#krFzU;?s8k<-4YbJy+b=Tolu+w3=4KM}{rIJn7hfdsVcl05VCxgHB~s znBbRT?I*K(e20?z(y+++|C~x^`hRt0l(5hJ%-o|QPn>|jSopNnZjg^tQpAR5aM)Lc zeYty)754Fsncw~XEBC`)KRmRRN%?G*{2M2oJjf)hqc~XQJ5@$rRxUi9>SAg=|4y*u(P8gCM-p|wV#N|MVEO&E z#fA}YlIfR;rXTO)Ly$!pt;XedA90b)lg__}qo<8m+-lFg3o5^I@6C;;SMD)Vy$ohp z6cFX){2PW@5proK@;R85dSaB7J}irfre#V+%#SJ(p9A8y-;LMP3siHjOd0EGPXq{u zMoIJA+OD57NPTGtecrb?L=l#T_90D`rls}Q)ggH_Gfur7ew`W$p(Xo`Hkr`i3y$RF zOOhWo7i17&*ZJ#mkjbD9xdki$W_aBuq>(B6Wp8y;v~#bWRh7r%(+*FUu_PinIr*(^ z9zl!Fb5_^;Tf?lXj@U`u747=@<&B+<7{sL#V&qo{Sy`HjQ95UZL|yVyNalKr!F{hE z+qRrU;`u5wX(I&_)Pf_%OLmu^D`oWdcD2)W+yB1u6QcBeXwj90gQaCjz37s|%e?*% z_|jXIa0Z$+}0rfu}ZweE2hjaYFp^8B@p?7o{%#$m2|Y{g)a;5T%RK z+v^_0Rs=rEY7yUFpI;iHxR*ppIch#dkTt+!DHaSn*_Su(r{0{G9$fYiqkEE>)mVBx zswa(M7Xn)OD2c;28y?Qiyi$32a!n-7*6%Kud^y1Wl(=@CR*L6#G=R->fh@^C=-1}Szl8^4Vue($)ML(5syhL{tmU6b(Fv>`; zRdPp`)FBmNWFl(r{wN{y-@3@!=fNZ_&hv^#%rzUZwX+*(?quYHlaI}@0-xVt9Q+v2_$Y)VskfZ{o0wUW#aR!f}WF4d}8XxFu%6ese>) zXq(oH%}-GVo#+1SiQ?Tx^U?-n48y~D(rVx%H@a1gK#aRgebJLv-YZx-gR}Cf8s^N>!Hjru;$^Cmj3;nA#rXbv5!06>i`C_>mL0*>ZW+)$@CG z?%|>K!oz@4gIhWs@#+ffDuU`1<2Qz%Y5$9{kW*y>@XZJJoKSU$1=m%qfQ>DI1_u>X_lh{VH1A@4@3QdmBdK^tan9gEQ2NEglV>hM+lQE;{My7< zB|X1$_9gd}z|{;^r{fqiRHHXX_+&h!vC=kBD`^8e$}_7NiP<-AK1s-E7Gs=H;Qm`m zkH>w@TS2^!a_Wo_a9PiX@s3yk4Ry<|>8v)Pe3sG>yLWBP?9~P#KF{^+F3V$h8P_$1 zmf2@@-im9Og?GXbmy(hV#iKRSXWo%1X%Brm&MoU-HR+VjQVa*9o~fN=_K-#0qBH^D zIB&@oUHo5$8I4%@nP4!ycIW~6qr|n@-cb-o`Sbt)| zk`*gF_`*vS4g@}_xLPgzGvVF#MdJH`CcB*2?(O6Kt;s%($xUK>e^R-c!-Yr_4f5)| zPijky^fm+kLVI8cb(#e)Jra$g_}BkJ8eU~d_8KAYjy#pcFs|k1Jk*8dturSN0r63J z)5gBHM5CfN0|JIi;tN#oi)>+4yTU;b&f*MOP#s9~Ni?2eX5>(bben^Hp~$x#W-BEZ za_K714(w**e2{ICUv`7_&fOaqR(8`&$=#Z?eP4?D-?A4V=d~xEl1SX}i@ez2nAzE; zGkm*u?b>|zLJ3w_wNJ4`YuaJmAIwd7-K*XR59!?m08)a zWkQRsmH3P*>?HJE)u5(^%>2JUuY41h{0JM07&=p%9M*a25{ih}H_*4F-&@J79ZCb| zF79;5TuudmV{L|l<(b>9Cwq@l1t<`+w zW4`}}7P__n{R6a;)ZW zUW6NsY$@d3R8t1euMG+;?I0ml3>Kdnj1$(JxiZ`Et~&(VnLb_;N1sY2l#PdR!5<$V zC!{Bi(gyb&N1D>-jX){w$@}?`KS-$At>X<0?(zbYO-eI#4Rc67t zA)xs=sHuTp!u{pHCmwrDDcm5-yqgIUmCY2jr`%}tJjq$7;L0Dj`nDNLJTfu@lQGYF zl`Q~mdCR-uSPc8NCIV0kw9MsN}>t0ry2W^L@s z%$TuvYHp3c7+Odpy?F7$+eQp(U@T7UmQLS3baWDE3}I(RuVCnWt^6-Ur4Sy02cgx> zW}VxeKup`Y&K#esRr~7W{CCO39cI5B%8v)D06v1u-(dFo ze|JX?9N)tBIh{p|^pdGGHgeV4XK%|pX7M?jg!ZjUdeh%8uI>)sIIgc|C#A6-mS9)p9;K z^j>v!mARw+IjMyF-@~iKf(`ThnK~2uS0B#A^+A79s`$Bxj$mYW51-X9uV?Dt;UApz z8VX`z4_x~~r+>mDOO$Emmk1oz>f~W1ryQT#lZ*N_7dWRLBczkY(l4z_Nc8T>$C<46 zo6^k_r=FPeb{KHuiY*0vtGe_n4jS6|56(DbHjv(h`Ne6oT(DEH29}U{%kgO%s06O8 z&=3$3hPNcCM4d02x@q!!ulnvaSG$ur%g@Nfx;_`BsPR8&Q#5()7y7u{BT&gIa(pQ4 z8vYR7p1s;<89#3n7|0N%+L`|P&fCWO6)G6j#|u({GNNc=*4^X!R&KMB;<8W~6NmP? zES>yO+3iI}smgZT!_c@?%qC__rQWDu9(BsLyX_RW^7u6Rv*}ts(^f(mav%c&!^z6aj ztl2l2*4m+Pc4+@M^U`_ho%3T7fwWsMAw9%AFJf~4Tr9e?X_k9Xz&IQ(i8tR3HD&Hx z>_VeKt?SK{p?qm>{yDc2_t5t9z8=X|;q(?xsb>DyPZFw|_1?pjL#z07|Cf#pd3Ik6 zt=7$ZJ?A2QJ+d|Fy&&>bKH2n-IGJ4CZwHg<#U-l};rYk7B$es09Ahlt2zfCyjP5bYQ2qx+bw^?{a`jd=Jxw|J5Mz5Nr#jX?fA z4rcT)dQJTQAi^hq28;4u8o9Jb7>4pSpUO zNSns%FLICofvI=gp1{&AhF2+_ge0XPCChdDukMjEvHZ!Rdt^2$8#eLwr94`p`HKMJ z9JV<>kUNyM{Zc_I%tu_bFZuBi`Fy#njq*plpkgEz8SJudN$`QrwFt(RlS2Va4kG&Hmo;Wk+y0yYZOo z_xY)!MA~nDgF2hlI^sLRl-R$Rn3h}w5X&AO%fk69gn)}hPc3D3NZ5IRt~R$D(86PZ1~eD`~1T;`pB1E37@tu3VL1twqiWP z3KTu=YjG9FiBr-!D;}^YT2o>}#B>Hx;@4&|vXo)s*MX1%rF9?0tnt8{691mjkMH?( zoWJko{Q0y4OBnBN@zzn3A5JW~J%{)|s(^#XiqS7Isw4HstzqfRgVBLbI8(tmf3cI8 z*mU_5v1BVtmS!|4CnghpiJ!7Jjy#mrbkWI_W>y{e*l+TX`QgR=UGvoIhU&9UE=AEF zs7pl6Do2juQhN{2oxTcLc4gNo zn?*baeRI#3+6R&-h8m`JeT1>CQ7=ucyFaN+MRf}l!Y?MjIhs`RKGaVqEVP{?Y?T1` zy>EC}#zHy_!=14L)EA45fpxuAyLW-pdvPQG2U{7koJjmt5YE7uh`QK~5W`}P%$VPd{tlF{=?}0($qW8u8;_nO&oHWn#=P+?BKB2Q5=^y z%tW^wZ)?{|q|0=IcVuF^?8_nXi+UW2>rFczS>TiMJyIEKMU#^}w#VT;4UY#jJ1vWo zjQ%|;fM@IlpMQGxQ~w<33!ols=f}-7e^dX=f$qO$b9sMmoL@NajlaDt>qQr4o)-~` zOV0CAba8-;=i1ieK!5XW>hqZAfzMP6tO9@g)*EHD+{&a6a z8+OuIq-X=}8S1ZJ`7C$v7zHR;W=`Blri3cln2l*+FzQdYD>Lh=##s7|N(G2cJv24l zr1ojkK)zcZ+GT!aygHa~-`>x;VSMvY-pk25h-y6p>5Eu1?#sHCvAG^cYxWyHsrNj^ z94Yx+gHx%^oR-3YSsJ9EdB8d=G+siIV$k!iAkF7HkN_b_Sx4>RrcJ*+W zN~4Rk8B`pwD@!x_5BDf{_0-;sY&mQtP#Xy%qJ_)J3#y|a;mOUQ93sa(!-IchM+&vJ*L-Og2m<(TJK!5 zkWfYr+crOKQuuOu#yYUHLI$`cV?5Ts@Lz5&6F&ahEKCFc4Z7#SBT7{zS#8RN!NP?qWlRQPuMfxGauHYq1Pv;TU|I)teCtN^ zHsB90jVEOP{*2{uhvC+9Ug>lGh?ou+VtD3Jty5OdDToeGk-PV%UJ2IvSnu zA1>>U^hzobi!5-eY_g&)E+)e+Y_La|!gJxa@aU*779!-~AUh3s$QukwE)*)COW1?o zK*0%fDFf_sA&{#}0)q?IkX`4yX?W3wp6{f#-Xtlrf#cO5+1HqJ8{bPBqb~GH*lml6 z@Oa?bgKiN=wp@%G!i_>gV(($u-5;)r-Y_V*GZc5^KOB@cN%juJU<@rJNqEiv6SX49 zgUmVAL1<_0qmV&!4w6%eR`W!K2O5S9w8CZ9hdO$x>^}Ty4BVZs!(QB59B!cJ=Oh>*tjsh6>`LPPreWu@esY2wF^LC;y+n#;UYB68v=HiSfsW;B9^pN5T8 zj+(uo7JPmTEp|R}0%Tx zbjR#sKlEzBttb1Z4;X&lTIr@7Pv1Ke3km9fpHLF<4Ej|xZ8n`+~eZz;_zo-4w8_F&*dKv=RZ*i zu03*c&_imvk{yxEF2$8q}I*vQmC0JXey>S$)LLxm-s%d|Bj8!=$<6Wg>h}Sha-VWJQ{r*Yy z_?Ck~Vsak1);zkG-Q7v$4BaJ@rON7h6U*O_E1F7e$6O52$nL7GFb%T#v4`ilWRzdN z^?b<>_#dsq+dz^rjLhD5YX4{}ogO3y$B4HWD9Gao z_agr&2o4Qz3PTPm0ngv(#V<3?pWb=-zKVpu${CR3j;4D6a)V0nt{#IE?44D8-i<^V z4timVBS%MSefx{-dGMrUJTcBQ(RyD+wG#y*3O_}6ab)Ll_fO*V_)vdU^jLTUN?}pB+Go4laj+SRL@%ar}Di z7Mx4X)RGJefc1q)FPT7!)(06EL7{*1?viRGY4SVei!r$7{=atw{zsCnk7d&%+Cuk7B-rdNz(i?`FdLfjM z-F;vpOuEL#=x<;fJ$ZOQhCz*0jN#Xb{7}`3ruIOz{ryfC(XiBa1_kCl!)qxkE4gs) z2G0iAI^l4M!tv$cPbO=B)~PvZgR2DUhPK+t7H!(U)=~DZOB(+2q7sg*s91g9EKH$Q zW5EjMu1Wn#j?z6{gVNWojL>)lt)=PJhj+lcVCc;lJsl52%S!j5ps0D0>aui z^lM$u`L|~9hKOO<8++lngI`~bn^G-#WOHKXiv8F0Olx$E>!7qQGMyk*{wIedqW5!x z1d2~*g8&e?%9D=(japjTY#*nMT4Gp>_5u|QwIt5RXzBn6Qr1mElvKpw{o$C_WXd#B zKe6t&e&hGVgQpakw`t|hFkgkUQ)2nQ_cP`vZHTDKQ`~DRKXU(M*q-5+i z2mxOO{fG}AG5}ju=pR7QP1Dd;ZYL9fBfb$7xn1D&{oeMNSeGbhRlGP?Am(*QL)3{W8*j9 z9H8&{{MKburqi-HFdvvbxGk455)#0pTObKp)aY=q(9+rjri_f>!n8hr-W@~e-|3vg zw&Q$9VNc=RS#)?xS7{kKw&LEPO+=vn>k<;abP^>EwBrWKCQen<#{(AgTk$M#PKk75nkAfm1M zkD1-BgNZ3;gN+J@I;x5?yTJ8{H``|}N_-78?!%y>HcL0T0Q)&j~vFhWLs-v-v z?v+=LZrMo7%O8#{odYz9hK}~P1a0L?nt_(sHz1ZRILDCkw_tFkANs*QM5L2&_oYH|zM=JVZbS%T%mYG*ib?zN$gF-eJ zE=VP7dQ}CvFjdYL;h!r^jl~0(4)ohv@r3-&@Gt!FB}B{;##zyaiT=L;gZEAD^JYht z9=s_G5b#34SGlib#4bW(C2CdOQ_>RyK@0~?4PAG^!%Ft)aq-DrU&R;m$2= zDa`hv*_^U!E3WV!Jb* zYaMDb9>0>6ZU3}EbXfkpg0Z)H0OPAp3sb=kq6tu-2W^OIx_?*r9$tcC>D8^i(`M%r z$tecBW#VlzUE;EAN*`5U|CiKoqm3aQd;7mvNr_fv0%;>rLgk+F*)*S}WHhnZ5L6`# zBytx&GDPOR2;k<~~$#s~BHPd0ElM-7tJxuPC~~pE3mktINZFM9hz{0dG%Ey1sYo z6prUr=E9U}l@aOhpc+3}F2g1P>ek_$&p+t#6qn2#$UmZutsJA=LiG@$OVi-oWdpv)28d({q5Ge%C+1gq`$!Bc$ObkPb8-DEDu`RxeH?_?e{63W)Qkc=!G<#fu?_`gt?9e!t?R1Efc6ms zfakNOC6qZgJ|sL;*GcaB1_lNQ`#putpWt40zs$4_@oD^5XQ=m{eUMX;G`S4{opF!> zjp=!8^cq&q*cVkC;=-igFolAEUC^u18TlQX!D9>_`P*B=C9BG#>A0?IZtE^Q9=o~f zNOzj^%~KaW9-B1gX&}yHA2^UoehhTiZPX;wf!sxxHG}2lB)2#&hy?f@Z8X^UN7~6| zS5ToIbkA)rJuCEaQB?QppNLX5u{25k7VrVZ^5Wry#Nz8EzD3I!-@?Q2TNM(K?Al4A zDcyK2=O zDm%@aY%$#^Aa9Y~pO7ppUZm&d@q%pb&D=x_9F}11@D=9ZGeGZrZt(bim*&3_pBk8~ zTO+KvH6Vn>5%A$%)$mXd>U?Z+>fWh;X!U*^a7}f+iWZyCi*JwyPtRs3^__ukqry35 zYzMPmGvpDD>T%xxcD$4khaJiiWh)YePkmIg!sQxnRw7ZIw|99a)F1FpFVEEco?lbK z|Cb3)94BYKea}>ishcYA)wOPT5Zz`Ld`<>RW*1S!PYNNp001=4XnU61Ft+L~B5(nV z{GKHU`6iyf2zs2j6hzLT+#M{|6n;je{QZCFAwY#OSD8stKqh+p*{%-gHue>VhsGLI z5c4$Aew8E+35x^TJy7#8LEC&0zzK(@0IQa|>95`O))k@se>!KKH;nKbY*WqOSmNVV zUM8m=U8S%z?+~wTpzo7y9@RS@UykPX{y`xR$8IB!&enYbHG({=O{-h(PBp+iBmb`t zhoBK9M;Ny>s#H3)^pRRRMwTSZ8eU ztj?H#Tr}JeRzmg<7fEn1KYvH#>TM8@Y?mrOb0!u@n<$Ts4)An&D|JEfgv9Iqfq+S? zKl;2@YqDPrtB3^3c$hD!U7puexUYT0if_9d&%?kl<$8xZmIp*Q&{84N>n4i=yDUPHsg7^!_*(v$6N;;d(?*N!etqz!aDEpwL=? zGiml>`Dm`W(hiZeqDaiq5qAN&7|&sO=2^y!^CzvkLC2-pKmPwetsE{szS9f}%E2NE z3>wT8wPE7vJD_+!JIv6knC`m0vWOw;rLYLi=${Pgkv8^4Udz=ib-b~yTU|7~BLlZR zXIc+u@(2GiWHLY4sNb#muHO2z6comW+`@f3o7aA1X~hF+Qi^25QwQ8r#mGWuXZNJt1)BFwxF5p-5Dkb-wF zKySzBMf%}Petf49djPD%?xo{w1^z4W$G}|EgZXf`h}-mKq!KsaK&_j-Ht5N}oPZUD zL$B(-{*FZe&qW{9Cy6ItkOM>?B}kXFgQyJXo_GuGVak#N9=-sjh!cW9mS(N-Q!-xL zP8wL<3|Ac%%`%^S`I=7GN!Dn z+kbOMY3pRMv2-?VfG*ER7SnCg;ajy&OvK|QbQtB4_fKX#ef?DqQB!QD=6i+lk}^+@c^_$j7Aq7>$>J_mVh{+qU8RWLs{}GEV4PPv>8D#eVV@yaqx_Uw^-( zg|zg{7oD4AE%kQLvi`JUBEEPr{}c~843GQbNl$#O>c2);h*7d!B^u&^fN;Nwsp^Y+ z8^LJRxIlIj?>@C9Svp*No;VUt()D3p$%^UltMbc9LDFR>SAX+_kr9=`$(2=XUX#P6 zj-+x<`}=XwWPP7o^SF~%LZj*QH-K#5VYW}cV9ezQ>Hv@~qxYdRZ=(A{frl5}!{&Z5 zr+diW{V1E3ni|%=TyL~&yy$aDNl8yMTN~b3z+*n!{c5wew$`4ILccnX2>Pn9(cN%W zp3mLhFsqE7JSu%}-4wNvcM(kLpotl&(Pb7@OB>Z(yyKcy|Hw3hW*!W*`0Ne4{MoC% znAoletNn`;lfTLg9;%ns%*@0@OwX6TGut&F!XEWz&Vp=`xl^D}UJiI4t@Fmxqx3Nq z{({2$5jp_Preo(15V4qkDRyoFHtPX00{GpX=3&FjTR4E?-Uk~#c2g9b92=wI=1r;ln!x_pT;tZVW;^w`gy|&deSLiq9+QTi zFA;&R;CI=9Ryz6n+_eaxtQaj)V=jZpn3#bGb!Q}#zYrndA~)Z4A8g~g-#-sn#mhJrjN*nvn{iqkBFFrwAYn#ndk}%0F+hRUx0nI4aZ^*ZHN+{I0Pibrvw2CV^o{@O1n}ps(e3S!6 zrQKyc4MB5%`6<0kGk|1Ap#7asZ?n4}Ibkxp=LTQ{RW+Ji;iO3~F%#|H$w4cjwZ z7YYvJ{I*Yy-mfAzb8!>il5*#ij1xLcxVO}S?BxyBv|?RGp}bR|#|Op5=%Z0o6jP_A z%Ktehoc#jYyLZm6YneyLm?TiPsszHL5`SOM;a>*JpglpQ{vm^lPs?b-#rT1dBw>u& zhS}E9csreGXd`lO@sYZFL|~F>l`m0^;XaECqvzs{-r>Mu0W$%*tk@9Em^L@^sfst_ z%N!iRx?sOVPN%T0?#6d;g^F3|D)z@U5UhDEftA@A3!45Gu~3(sNuhoSKj(5O;A z-M>z#Q?2?6=Xi9aTxyDopN~|kELNtus$k2#z1!h!=u*hCZtG#a*O(CAkML=Hi+$8A z=%?8>o){4U(GxaarE_cP_rQygHmIwju1D@P{3^Z|KECgs5yZWh$QN!sg#Mt<4k{mN zVZNVXQ-_>BMN5_&30L(>>Fy~oD|jwwAw)(>k!HOkK->W+bm#mW^K~m=KH_I{c%Qr*wvX%ZfgK9z{nr%8|oKOdAY;BIsTxbtM;#prohL8lqKB)h6{E7AX{#6 z`k(zbMtfMaunLvXoB^H^YO)YUZ0PlQZ%6ry>T?YyOD-KtSFfVUZ?MxILUx%#e(DpR zliS*-@}w}Dd1BH1h~OW-j>Uv6wC`UAL_+ztqX$d;>)dS%KEp=^57S8|q3l%T)nw^3 zg)f!*oJqTGf^Kho#%l&Gs@CLsh6+xlfjBV6$-(S>q(n7CMDdEUE~8UMLN*7-3P241 zil%_%xTS*!VLM)6&i-@&%szO^N?2t1o-{QCKw9b>_9xOET*r!MGpI*-EIB3gbdEWn&lKdz=;&w+2-VY!pP zIwWtUtfYigcK}-1ZG$C0Y0560j~iCa1?sk*=bvu>I16Boo1*$!spD^Xw>ZM^)}7w` zn2b6kA-ju;`C3vMkAy%3Pr~cDW-&tP=C#O+gwNM>bA*Mc9yZ&vOdp(@u@iL&#DU8u zsIzC&>~DI_?K+H%7oD4#3V+NG;2M&Z!+7HGo|x-NSwI25+uodld2qPwGbRTp2@G8l z7;kJY-pX=55fyEN(vwUBX5{kxBpTGJti^r2mSh1|R?53;Y$-i(-r1X9O&1dyy7Y9* zPc9iPjJgXhEH;aOd&j8BLD3=M+0+FxmQnwd?ab94>#VmhnmPDi2NRIM5^tV0*1j5t zp;0B-da&>R4!vk=VkT1mpw*|@0*MgM`+<)taNDvEXH#Y$#^^!^yxqYnjP2|(OS~bY z62srwk&1$FqpZi?xgUA895&8ZzYo9}d)`OL11Ba&cyUAF?p#$M-VB68EH9^-O*e04 zt;G>qdR6)4jMQo4+!)2uZtMPgLWezIZG?sKzSs|L8DjPDs?i4J3wwR-2>=XriY(<- zP-V3{`F2ymw)xPK5+<{G4z-bnN4;N-6_zAcndSivB11B;(h^Htn`(n}w_xydFAqB*S4HZ90TbfJ zXtPU#hK3Gz?z)RL`(_rPKLGpY!`SMU-7;R)>=6FVrF+>)ar zK6Cy{Ms*q@=k)hcJwrL{ZrK;9PrQvsG7 zx&VeWhKw&oiK3Q+f&3;Y9Exx8!51NAzrR(1ZQFUVNYy@M-xg~*+`C|OZGPu)ad_V+ z1i2mW7-~`byTcf#VyR7Uj7E!8J93rJ)09=1Gp6B7`$P2y6@8#{1hr+q34}o8!8L#` z#bsA0=gimyd&96ug7PH8jE>iK1cdg_yi~Ln zVd|O=?wpo#OzwJ0G;n9}tUxR2aaz&=q2!@xz>2+t{>&OcF$y z`W>j+@x8GnhD@DPP>!^c602QNhkz0){sQcn-uZl_l`s9*9l7B32F+6f9%X^yoVJ!O zM&)JJ2TFDQFYN=sc@;T!w3pD7E!mMOX8N9@#PXPq9}w;sCc;yNQ=7?stj{d0yH=P~ z4GVPg;vKZqbUKkgZO1g2Y!u{(PQ8wHevfBPuI;A~c|1LD{oMX7erKq1)S_y6e3)l- zd|0Fl_=o}r>6sZxf%BuhZC_x{f6=$zWyak1g^kTHl@JjjVZXuAW`zZCn@9DH#3?(T zIbulXq=mr3tC_W6m+#Fx+00@|SSjpZlm!azA;qD^lJRY~$62a)Y4C+C_@O!0I%+5hy%WZb5!G>q2n;8q1W~TP3 zE*52cuhyt!69x*k$`d`~{K1_L0PV%Ut0F&!!nrL5JkVw>$s#h1SBt;DVAeaO5xKLe zT1w!60O$ln$29uO&PuLe>h0Pq=`qmiwWuN?ihk*I32d~WTuby+$FO$sf6AH>iTn91 zRjhP8{Eq>g?SW>gX(ErAwstwPi~r_~fv>OdITc?77~LcHYN>^L;rjszzjw#Szh^6V zT;GTDS0>ENAgqB2g`G$3BwTqptVt!4Ou*v^Bf0$hAVVzUd+Es&BiB4Qpc zfy%s5>i#FBAd+6!(1*CNg$2H#mmX2&Fs8*>_`4r{wRl5fc``7Sg!r-T+fMBIHde;p zOL8`R&{EI+)J&c-PXyD>8vVJ;(YNVco0h@55Neh(ty_K6y;aCiCGMuc#LKd{?x*i0 z&7igO3qT47loA8HbX6lSfAOF6vU!;1uVdk^@a4lVcJ0_x6;en=Oz#gzfr9uk7ZeD* zF|St#!sW<_?kvJVoqq7kjOk!&YbE46LDbLTXrPK4YkwZ&H5b4T&(AhbERO3cfN;Ms zU1c=F$Y&Xnwy|^xY2N!-`vza4F*agOdieWH+6U&6LVLdd7Vh;t4o@rai+Zg5^rY6} zk~0R8L`w_L&(H7Mc>S${?{7(JCp7U}#v;1|+Fo^aeXe>*r&r4?f0c0+^hjKVLx_^s zub44-e3qbgC-Q7XzQQQlQ#ZU9BxPTCrBN>zj>g4}e;_&+Mz1=sp`pHX{74vZ{#)S(wSP{snpMCH} zQGWkw#T4{N&i61UnE)K%in#4;uock%+^O$Kst^;oSJS2cDIM%hvN*5i#Z8oV{oF10 zcoH;B1AveW)MRyq^^_mT+)CUv$OM{F6#&cI>1#oY0n0SeMT`~$FJ+Ue*~5_>%AUd; z+Y}!xe&F>0Zq8}iYh1i{m-JHDkTf`7nuqH0?1G|tAdWTwHYsf^4y&Wb`XMzdq!*t; zHvrhFDDBJir~e!=01Z@LVh4tX5dA#GOpLI3Y!&(|8WVR~p=S%5o z5wW@$%x|i8y$;xZv(eqrcEaojvRYJ5p}@w_%kc^`I}?KXG}onVxs) zU(7`ZBR45#?c0GvUwy-dVubN63B9X5KUZboDaW@@WfdFfI^7BU+?puzW3=GJbT=)V z9I)P6<(oRlSGJGlDzAuwCG{PI)ELG5PALD=f_A8|?r&^&3{xts+wtvxUV#4O%9@Bp zR^ooRI=Utf3EJC1q?>Hwfpi#TJxW7S8JS*UC+a)($4Y^-1xY!x%}Q~Eo}SL|DQNYM zYHm>)X;tA@OhD<7<0qhCTs$N=$bDUPyn%*+acMwRo*EN z7(_VLS3b8}KH#BHQBetm+UEo|3Xln@9HI(!<@Tpo!Blz+%W8Emp*^6lg%YuMt-^+$ z^7<7nt7TaNyEf~4>+pqCIM&5XO*{B^*_ zN_2yGUPw)Ms400MP1koL?UWK`6ly7ihXSRBu#SRK^|bf7UC$f+Jf4WaZk0fOggN$M zB!&avHV-y+RAgw)XA*82L-{T4G#or4nywxIQx#NtaCK$wrPn@9-J?VeRw{b2As55C+h;aW3bu7_ScvY1#Q9|r)>vvEWY;F$e*rfYn zZKfseI?lg#(<9&Sawyb!NjN+UgoTMd4Pz-5L#s|cxe_2W+tF+S%BFX|0rwFtB@Y&b zfco*-n$b6H_606j&C(j(gWx^}gZCrLJ8K`rmCuir>1k=Jx~5AtD>{izYAY4GiFSZ# zEtnDtidUXi-n0%wKlf~`fmr(nN*l!z5ii1*Ec$ph7aP1wom~=S4`gJ1K6a#m`X5-> zTO>pe6DJpBpC6B82AM*TzREqV59d#f#78(g!lmE*T#R_PZZ7 zZpOE;fdj%~sMNj+App{3wvfSwR44zA_j_^fbbrs~bLu5LkYnF7LOoWO`P+tP&ULsY zsH^A44=HBPGY#^aBbnRv>z${DT38_PfWtbksJ{Mjh>~S-w&=gPP=B+6I8CHx!IaMb z)@3@pE*hPq^ioDQcw*v1ZZ8j4E!q8wLqEQN0IZwy($+}U{0n6->@W1#hsMc=B}Buq z7`a$JF%4Xl0~!>fhw0^U_^17#`2*-5VX3+V5Vw!T(g1k89BvoCWPHZI#_K`n1*T!x z8sGPBM5_6V>ZU9T>MKwLVT}HiI((pZD4>jMN%P-9q4J;Mvl!S+DCad@r{MFDoe4-= z)bkhS@jpg=@#QuAQmNDJ;Mp`S2L~>(O|9K*+@6boF;9juJEReTw_wAuA=A>a#%Ls$ zOPsK^Mcmew1qgM}X~jbPCO2JnVN+5Qgj;5mLi^T7!q6^h^J{)Tju7$1sS^Us7g(bq z_yyd#jaSNW-_Vw%f~$GaYKf4ZS>^i21Q45Z2l!#6<-k!{T=!lg_371LMy^WLkQ(yv z9-XIxw<=95$%PqWp#WlFN{D9o(i8OhwNF(?jQ|m<4#nxU-^hi0kaT{iL~#goo~C~(9ROG# z|0S_@Q@0A__a-K6=WWLx(6Hi=DE|MK&hvtSU>3YN7$} z>?j=YVL16}B{w1c>}j9ky2HL8@p&%%s1A*r_>qk>hRgv_t{9{k1MR87$kUYvyc<)K zn2$*9r^fiE6KMqa(E!KKv~(J1-7R{bE>ls5Xz_v;M|Xe@zd;2#YYx=%b~V zj;*i1+;5GIkW*BYc64-1rIt1S^G8-zHsI)&3I(NBiMs5zC=UF4WNMCL(G_k~pbF)w z7USUOOE=TQMn=9;W+bq*T=ElNQ9E!j>P>xE*W(oC*=SR(N%*OnUsq;d5#8~i2LowSmy1ShZ@F6 z%^Qk&0B9W5nwTOIf|E!W5-YI?k3tyv7e}{X0dtR4jPHZ* z#mb*lqHv!U|CVzB#pEOG&uM~h<2Hd|b~lY@Cc!-@y zl6Pbjqd8aTXQz1f%NyvevujD<#lO5H-z^}RKa9Z!-1jWkkw*xHw{ zQsTyw>4TgXCLjX@h=2v8|M&E0UEhQJwjQaOK_az{kcMVhXtcqa{zb-4MQ@Up0qT~{ z{RqbxFlK?i2-(pN9!>J7C7=Qh&jTu27a|YZu;*k{9>oBUQtAdhVK?TDBbKaEa#)YH zRJOynLzhexS95&rTHiL^OH^jq5NNqp>L@&r>lDk^+hgPrOq;besLzS9LqT`znNJch z_DBh8e#ScsD-%W|eZ{yRHEv|8`u%W3z ziWdlfyGq!;4{ZtHFc@N-6L^b9OzwTW6V!_5QM|-$W2IJ2SNM|K3%rOD0`82ur4@}) z3=TF{A!TZ6ZuYU`T3d|x>j>>W!!7gxw&kA-suM4y${jE+QnALUpj*s!GueM@3jp1% z8JtcNK)R3=c23_>H+c$-S21VHj;M{uN~DyltAK)n%MjJsqdzF5+bTvFSAb7#oNrLk z3!E^?Pao%&-h-(o^ZvfB&3JPp54UYU3EWh$A?p=mjea}HDjSi^Ok;9 z%`>s&RX@R{q>3Yfrtuvzx-ROMd)@ZPmlD17*vfkt2V{uDvA6H5)8$ts(J6H6sKzoV zC1jO;l&H6|l;HV=2^Wl-EP~=EAH<5`E`3eIkw*($#UqOF64&L7Xpb&!d%>C*_zEzU zh#`I_<$6Z~JuxIK{oJ9NykU~=>ioX}(rS7lx-$J#>d|1c>C&;N&hm^ArI@#Pf~glc z_%Nu3goWrwYOU&p4)WRwtdfPjpi@A(U2bK4s$`eKITz5js(ZF z*k3neC|guPOI=X-ZfBBld1DFye>tRr6;E55Q;fSg+G9LI0W=%mmnd82pO}Fk)5(3B zI(_e_#ypVYXI8;U-dx@|wzg_W-GWmU^E83({N?1dVZW1p+v4!YNfwPbqUg|C&G(eF zoV1*q98L3-V;A35KPL%^0oTo|%wBlgQY09AbNuGy*Gc6h302%KYs)!e6u4IHobO>T z(H!tJjO;hD>8_ce2VnEPZi5Y~bGwq1+1`;wiFEs_`m9(hA0)uXimIaeVk~(=F(@QH zZ6q;SJ5L^ED;<&&+gOPUBd0${7zb<{Fl9L(P(8Xl9#g|N8OoHsMw2>KDn1Y8TI-v6 zKd9~Z9JL7L=Upg~1fc5zbJ$Zd(&_ALBKiv6tiY}m3E&JD2Y(s{BsJ7Z?}q8i8~(Tv zDR!6Ubl3@@9UVy-`q?^%Mgc{2(P!-!frPf-=tHEQh9wFGUjK(t+4U)i!^mh0N?ksq z0nBqn3^$>ao**J&Gjo|BO_m4(>0p_0BgG0az-M+ynntdV_b`nk|C`;QZbWQs@?N9+ zyfa&-;=Odf-|N?}>+foz2_KVapu&7vir^GyzncihbXi&1OM0a=Nm+L?aNs5?Iyx9> z4Zs|vU|8@T)Uhj)u+Sil_T?h{v*v;VIvWmqN#7RQ&5uq>=#&vkn_lg!p>?$+1AmUW zZ{9M&>J7n=+djkp(7ME7vI2`?-hPV^@Z3;?-H0{z;;c?+N8&|kJLWc@&xX?{=_NKa zjIQdIyj15K1nLmkZbkxSxgsmja5^+leX$=m{v<_2mionaPvOg<$rz_P!Oa|(WVEf4 zwDvON-$(w21+)18sg4QA(}0hA&e9LkWi^IM9txs z<5x?NPUO4rL3+E z%KKQy67C(7EO+FzgMzuP-rV5Q3Yc}K7W=fAC|l@nZedM5bL>)e)k#F^0_daZa+&mg zYy9b*+PfRB#BRWT?hV{w+XS_Oak-NrD*Asrw6`ZfW=pdcWZ1j~cLF3VL~Afgg@cOw zQ%j+v_g7Vx&OWvz2;{(!b6enBa|LNpYRcOGdiHHncAedwmtF#nIufVb0AzOP>B}N< zOzK3?Oz!qdzPic!fg@JD-{Lr?u2^w7%p$fYMPJG+zP z1a__5I_X!ZI?p#HMI^kaG>Zu)X@$ptaN$GNu{QyfQQ^3e*4UFAKe<|Jjy+#+Cg#;} zlfyDx3X3j1)HhSWRj$_gmAFP+0RuRb$6i3fHy!f(;}g(e(8;Q2+MbvoSa>&iz>Bo# zgn4<*j|48i2O_6P$+3n+BZ3`^2nIU?0!u6-$bBHR3o#KmXQm}qL9R*JelKkxG~m(ehKG+dKkcje$lQ@Uj33REUWxjWn+>XrNDKj1Cbrg@lFG;f_UD%6%@v z9&DrqZ)dSa*Wkm$k}yas2M4a#MY%yw?qKdJwqS3Ibw`Q|lEi|z#? z1SU8YxW&7~;MJx%&+r~_d}Er%pq0L>x?_@C%S$98^3)myv@kXiNXK78r3$}P*A^|Z z&r3NHVd2WSMx#(S;9ek2oKnZnUsI!9Ind#B8oCZQHIiC|l@zvzWwRgui`#J#QKa+_L64+yFsgC)FUwV0Vwf>60Ot=(2D(7jv5Z|Y z8h<%8-72sWoYFZ6Gjtu{-i2C6cDug;=3Ow~0xlPH@G1N%SNbI!odfWxeMUN}P)mCR`gbY2RPh{}(x+D1f)|j~cvKmaRGzl$s@Q%=ganeuL4; zOcOB@ZZ6yT3O>N~=lmsU$bQquAH0`;BNfw`J<1JRxiMrqP*Dy)8U{-e@EF0j5()V1 zBinS)taf7qBFh%*Mw;*Gu#C&^kGFY8JQxW8huxs=QEEFxjKW;7?ojeUT>>*9<3I z{)SaJU5CsNnly+S^(zoJJH=v>>r}bMTouzv4O+B|V1k^(#Vvn;%2DV%ACZ{Y6a|oN zK5Vs7`CXY=yGVN&%}?Ij%EzLLYsM=Ny5bM#-D#++uy`-P;Z6B-(|Obi>K|uT>QzJkaK47kMqjf?jcXkZ&XK}5z-Lm?uZB@d3lCYl14wrk%ehShF8pm zXfD79tEi%~W!wn3>bo??nowRCI_GMe$$ZO2BD)E5sru%oZEl2h*pNF|Bopjg4qhRG zWA;%qq+y^VZ5I_=iPb9O0o(G|6&n?xO2{Gr`UP*PaO=7LJ!loNkkN>nwrfTv!!j4% zk-~Qg?&SIe@A!wScA%gf5)WXCCt?>oOHx=^d9Ij=2t?wx?=e z@v3Y0%|x-e_#i?Kyj8_ReY^?I>&+3aw#X&Q5iu7VB^AfyDbN5$knY0t1Ms*MA z=CZd+%f%}z>_RHPPx?td?KP94eWkk|meE+GPmEZk+oK*zrXOo4&e)(VO0qV}M7HO9 z`SaQv^0JwqB(UDveh)NpcR4bPt9NQo5t1Dz0@)IQ?N*LVQEozUW?XicJWP16FG(tq zLWo&ND%V_EXwsp7v9~PxL-p~{YmJ8pU5tmj4iqQdkJjryZ`UI}4sda0@4pbj;6gL; z8SyqZYDzr1l~eeONHLCTeYg9YX46$`i6*E2 zmyfn^goYk&T&@NSyoQ%H^e-dJ7>z8prkBhfE|q;KMx=%6Y*%` zei$s6k|o{}CX})7CNIEf;!VP4p3=Nh&O~7kd+X);d-`B9n9ri`IQAxT(4|J4zQUQV zHNRMCcH#9W#*3k2)%8(|fu5Y4_@3tr6wRH!G?r##csogh^HH{L&+`cDqbyy^`=yN# ztf?(@!JXk!Q(ezLi7uW|;@7WUIf%oG-JYtdqFVlpOs+(Ux_$A|gCp>cCd5>>XDV&| zrEt2*2g3!cu&kZGVgeMyv;_r)4ZME2dOLgh>P)-J)QooTfnrh?hhxvogAAtkNkvhx z3RYTm)HW3Yjd$-MLgwiZ*`KgN*d*Kw7Pko+3ul_q^*jy6qe_Q)OgkQ?qH-;f?BIz0 zxZ?~X0Jp=NI1m3ht1B-PikKEM?jFV`)MFZ36lqzvq=OC@X2uih3(E*T4i{cm<@Qrn zEt@GNM!I^jbq3lmsNx$YU%@8wg-l;pCtl|K^Y*nw9~VqN-aC*!7~?IqnDB7(e~x0n zyzdNha(~^5he0#oxk!-)DTQh>i)g-O=0Y>9xFRVjWeOM2(W(kbuK#68BA)K-BkCaj zeQjZ_@-%hALo7?t%+yPE`VkU8Y^{LYu(d%xk+sicK!vNCpiPL{CecQm)s6azEMaM- z?#{P&^t0t^dm_>i#+8nl?rb=M11wBJySQ&>kgkTX!xC|V*PA%$3Jm>@x91xj`k0Mv zrOgACh3YBO8oND}ymS2eyoWTXXpx!};kNf{g?H!0bStRu3disujJxV}1$dl0wM__I%1=nQu z+Xcbitw$Mwdo%u@0b-LuY@!z`2|fjL${+cOgN$@@J7J8$6g*91y0lTL0;yL8>f@;W z4POR_((hj!c;Kal*C03C#?!}1JwLblvQo8zOOc{t>8nf{tbhxZqI9W(k)KOT%zhnd zE^o8eFl*KPDDy`P?)Enk9OLk4Geu^5ETdRJ*mgyzLQ3Q0}ci~9GFZSlr07+2nh zVzzOtD&SFO;Nn7*U4&uZ5oYYAXh*~%-VVG;ERpD$v|6sxv9{bZbT#z-Dohr$dXI-T zD8eO>Wl^tz=k@&LRndg2KK>~Q|8S+vw1mT6gU5%rY^-pIHFau1huD4UPA4aw5+9_O zMjS>9H8&7ZayCao`WJ5k7fGZ1{(Z;J$pidDX1n(T?@vJ=c?a2F4Ii@#W z2vU1&_jgLR*d(7hma0BxuOVerXR!jq>PYQ^rY0bQ?9hOaS;gPGp*OSZr+ZWx;6E$r|% zZ0Bl1{n!H`WVrk9XQ$9Ok|3=3^5xuak|`sqelqN#v_^CjCD=AhuI|0wDcyY!HfD(q zE}PErm#q;S`-Wx8yj$2<#t8zy{EOAu;PFXWk$-M7-M~v6br=w?{G2rAx8^xy6G8*U zWx$@4A6rsXT;lkOMNo?<{`vW&U{d~8eWXEutyiPW{ce&h8=XXJ-D79ubozGRE6xZt z{SGFfa2Q{3MD*`0bNeKLOgzffDOmc`@LwK`Nx^dM z6Jxf|9Zh4O*zkg|dpK##On8=zfcZ68f+a5B7XRdO$a0a8Tw@N4136tObiXy35=(;# z&zp;_auKdk}fEhnLy-~63X)(Iui62e#0SgwUxi4$e;cuOu0nq@6GJKGhB3E zAyLt1-t=}B<`fSaH&3ZQe*qYXCFC@FyhqFwFI^CX-#X(;<{_q`0nuYN*8g&A>6GAU znQ&W(ELv`kzd&AVbAuc)Lr?1xN(e9f;Y}KCo6~_N!zY(Uh6{(DJTz;vg14BA?PRKC zqzRUKbj2UfM(Wsl8aDkX0$6l@hSQ)$7Gm^qX*+#IlMs!L#W#*B%-2`q*4WCFReZ3T zL4@rAx$fzA`DCo-q)9Dh?1_)l%a^Rnxm+OSl2^!v#X#_4ri+ULX5-Xb>IB3jizYpm z`sMcp;k4cO$oja}4AIqK2Q)_M5@J97Md^zgiu9*yN^v1@nuP-oE8E_$8xJShVO{-TON4&=?~8 z909>RV)o-CST%KzR3yDq78;jj$(a%icQy?$?{%loILQ2IwG>H?uh z38X9n3^=a`pimS9I25GtsOoU((b8Zu7;$lA_cODX|B(Noud8tp$#M}5fCE}o(uU|b z?`1hNq=LT{aBSzAjz^}JD-mB%;Am%eA6=SIIlqg7LeB#eLqL8V4=E=gi}e=vQ1}qy zPBG4COAyFo=TnajGxCijacNGv%hHYRB9PPktb8S0VT}TW|9PXnc4M}J`wmI|Hf^M) zL;0c|S#dAyte#3M5pZJ9XCg30$NQnJjE`Gnk=IT-4G>1vjzKtLxCBV0P+E(d2{)PW zlw4+;)#0VR!j=!28r_*VPTXdpzHM>q6;&Uy`+z0yJe5>3a;)c}c3ai7>9(*ot=xC5>e0p)VmY(|C!SJvl_Vd;eIC ze%?aH*W#%fE6dit%^&uSJtBQGT!;YK{2R+lm=Y|~S4&@5%&p}61GSh^A)58mV_d%L zwiD;PT3e0bY+j*k7vTmM*okW62&l7Yh@9380v_EDKawqq6ww{~m08M|?85mYHT_Zg zQE*FGAjq8R`c!r0d4U>)#G{`P`e?tSZb4Tt!WZzDc99_N~MZPpt?3403_Zew> z7kh4hRO{DZp93A+-8V8_$bKEM9$JErREgDFBI{NivpMRyQc=AngNNDQ5J|A3E4;P5 zd$>YebM61Gd7|Lmsb?BAphhBwp~ku4z+h3Bb7 zvZ{DF-l_5o7r**>nzS;LM&WJ-d3)0Y4fKJ7o&NCRi!7Q3Mre$f@N@P%7gAR-fm(Es z*Dg#o7=twJzq=X_c!iJn;{OCtXta7IKp9$nx}7@wnt2E!Uy*?^TV-NGTTx3|*|Tw4 znTfS;i>ujXB?_Nalzuo^`4w1`nA9BWBcDrOv4%qEsFp2PVO^-kizW(AGDx3l{<5Kw z`&rpj*zTAJ!|BY4yxx9HwuP0zf4Cr3?*h$D_|GXs)syd!9uzS)J*~7$$!(AA3by9( zG|;5ata>I=&sJb-uARZjXU+i>+2_zFi?EJ7fI}2JZ8V83D`?eEjO5^A{nfj=!k0v9 ztcp1#c6JI0yF2+{z5lpzbY)pKT;}_pX0Pz)H9eXf>Ca#-hYJ$H4u|t!t|}h!q?Eg~LyyZ~Wg-*y)i^$9Z**n#EZE3@zi1F@zeTHM=N~ z`r1W~euwx4G@Q1l={&n7Rn*EPesd9Zc27LR#HrEJw)*8hsf}grLPCv0S+nEwIWNSN z?qLzLUpcy}oE)uI4Dd-5;QZV{8hP+hz|{b+t2|T^AI@}0gEq_2p?={=FW~$Q9(gL- z9UdCJpsW}F7qWtNumZN#f6x(a_MLdBNonN}hk1sMe-9lT=-Z?i(qW z)q@VHkm~TOrYDDsBadl%VIUN9(gnEfqQRJ1(G}lXistaUiNx9kM^SM+x@}xf&+<{5 z_;}YOc5c)t!cJ9gMX(ekc4r0~{T_&K5FbsJ8-Hi4@v@C47aZZ->$$A}sMGP~4Igq}r&JwuPjSmA4G?j$f* z!-f_~)3fMg<}5HrJIh%SCtU}pIWbG4?Z&2+(n@+A`1D?++D1f6p`x)s81j>8bf8F) z)`p+t#9>@cI0o_ub2t_z#0_-_&{jj^eGO!d26biI|>4f#=4 zgU}!SsP?b8GjX!XQ{!UsJ-+|h5w(HRV+btFs*<$Li%@bH1%RgDxv1uUqq6}Ks<3uh zc*IveB9yU((AvMyW2*D?=%_=m^3%_ah2!%y4>6h?xdp)&!w+@78u?_FQjmD%bT@Zq zXXRHV`3f^4wEHgKJa5VMyY4Y_ba{z$_silnZD*F+G>7N(69_Ur4e*fP`@4apqea+6 zb}SsdvI3&8Z1|wWE(|B>e)e!ikpU-qxXCqPwhz=7+W94#qJ}?2R|YZnbFDP#w6#?C zx!qzmhw`cuiKFkbV}v{&Q3`ZpqUv^5ZRNj;37)Xp=;-CUeVc|OBJ_Zpv5O< z^mH~Jag6)*F4>Xbn=F&2CN6fe{d|cv4ym)VaVx+0NU*G>ksNf&^*zbMv z#?6S+wi>5O={K%DxEAHae$*A{aKPXAfTfw}7%N?Yz!OZ#LW}a@z<;#5jVzphFL#>0PW<+Rk$#|6vOuyaejvb69+HqB;!tMW;<+OtRt7 z1$VYc>1lZREusC3E|Cf7iz?8o!(3#8;>%j7(@s?rKZBCQ<}?4VZqWu%OVoqc;0T6b zxxKz3d<~F$g!xifgX)6F+r`84)CW19wtIQ;;R;w5pFcC+3}3-efG4rvTIsb{={tu4Xh3ONN3#_f*Phj7J99)^F<9sJ=Jxd(bYz&8(9-zQ$=sA}8)Dnv z$l>7`Q_B3h)jDZV?RG2KO{`&N2lp&A&}!@~@&(Hj^mD89R?khRVD*@y)z`lPU9C59 z2LlHDkWF~?7Y7Rjh>fcT8=cikgcre053rfvJIQCJbUC4y6c~<)V7es6RbG-Il^itYa7&|rVhOg){coT zyW;#nWdYqv{Fg<{XZz?_65+J?IUh?1)&_>X9?9`3nRR7GqYVM{;$_LE2sDi^kEpL;F<4$z0ok8hw+uu#y!61!)59z(u{#=G4^ zd=E?o7NIm|4@RQvjVHexUGUWup2&0et8EbVVCsc!-mA6%+{hQ!Yi1A=Pt$9LwXxJV zd|+KJ|NEA7)B`r{=kCF^rMv^^}SS|#%Om9kA7Y| zDL=JQKtNLsYS!B(`ZkhWY)bnT{y{5{=RR&Fv~^nNtbDf5G|_nZ%Z7~{EbSy{?7khl zs(Ww6HtTDB$4@4hMfY=Y^_klS@R498hKc_x(?bQ_Kdqm;nxKfv>^!OiYNzYZ?guZ! z2`dZBNMvEHbSQ#jdq=!U7(G@4rl7$jY+gg9zCaNcSAborQB^iQi`h1o~w+)jw+2r;MCfgf0KBx zt~5`EG>?HVefu!9SFgo+#!YU%xU(~-S&P-`sJZ%p@<7m^xcw}rta{hO$=*fdn=_xL z$Ol?=l5}WbiI=ddH~k)Qg+xkfMT2+%?bD-bRE6g>-5Y$$cm4ri)DTh=*(G=cNEK1# zJD5`fu%ePCh_C-+V9RD=y!r;wEN8CyLJ%A(W+tUThxZIu0~#=k3j)Z$DxKjV)lTAZ z_*8^)VK~j6DAsdfjG;|!!9hYnZ8~>&YiS^Qmg=T0@1|{tQ^kK--W&n`d!7Awme`LF zg1m<&duVA4;YwF~YD|sN;?rsn=uLqB5OaPT;A^%fa{sLi*)>}zbYPLF=51Tp2AM=0 z@_hBD&L^;o07fW$NOh1=R&LxmDO1hMy=B>fPaMUgQMpt{L!i|J$P++mhHn~@l~&udz!rbvW1ceNqW5Ut2$)ZB zReoOsRfLrU6CQI4!nvfDd|N!|S{ueWg^u>-VE+EO3C52=-n1=~T!wiRfCGPiyTG}m zp7m}NL;ZhMN=a~kLQ8-FrReNFPGoMW?|FSlBFxb^A`5DUM#*BbYPpbLP+%ScQ}N*} zTa>?CzT@bI|L}OSAX1}f79dveaTEL_JiPvNTjBArm1lkF`xm**W+r*-`iH{X7q@34 zdR<}cM$J8pTVfJ{dl;`u33kCQg#O8(TE z=$nZo>nSYG#i+>Aw8Y~97CVIdGazh0oyHs}6f!E5rmxQMiWEKa4EnWz6t|{+37`~} zsv;0FVsn~)p|OvnWaz>Fna+$M$=CzyWzX=bYcjwT$%7a$d}rR9%R)Ds(Qf9o(uZpF z=aE}Sh@IVTqjas>TQg30O3c&|A&X9k!X&U;orfANAJF3M0U>fTd-ZD6IT;EKfgSc? z3n6cpbcm#Shjk5lAPBv(%d|Z|u56)YW{x8Geh?oYU;dQzZ+`YOU$L7!$y-!1$oDR| z$_Q{f)b{pZtURYo+WfrkH~$+hiHnS>{PuQ3kCoCP`I`WV`|b4Z@s5cm$Aur$>yR{p zUFdgtY|IbV{$)-C z9_Mgj<|VE$FWD3W?xJ9c6XWDX>v#8qFFt##^pe>y8K=oXtK67GRjat%yqnfU_mV!y z^9!x#24(2%0;DzW%*Ol&EDbmfYY7qNJd_yyR>sNTkkyP{BAXkScQ_$i{|ll*pmXfT zJL*|JN$zeO^byTH|2Nmokck3X>~WrMDuJ{j)>Zg3Zx|PbO;?)Dr??O!)t+})XR$vi z?Fnhc4qqZB9>H9oQ*de4del>0I3Tn@?Hv4VJP^UtRMooEj$hn#f4m>&Y{N2b?7fJJ z#=ujOkY#kC9>xGP<9%f}Y@T;J+rxS>|C6H=UU&SyAoZEp%k_M8ENvVPY!6}*PjH*b zL*7%iYGuZAT;JY5X8v}mIy5Odl$e;Dd7oQaB8(=qIAi${E*0#<{oa}Rc#f#vc_4*; z3#LTg*8`i9dIx4CqF4xyBWRHf@|se3xW6${MPt0!a!#|Vv6847U{k}YZEs6@ABs2=cWFo6O5b*I-_e@PP|Q9 zuAD-3edByt`yh#;ph21GyTi}?gLa>3mdiRZ!iQH)zKJwe(2$nzCbGtHJ7kmOhgps$ zvc|SOJx(2cO&%Q>nte;I^?m03U+uVqR(mKz)$uW(KXEA|875%M)rdMV3}ovy93n(0 zJ^Uaa{$b*`v%S?w9{kdBFv7(az>7xYnwJ0ms?)7wEqUdbl>Aln!e5o!Mc+qO$ch3T zn$@I22|2mM`=xBfbkbcmi7(cf`oeN`+BAmCWSD-_9!fs+_#7okqN-~KM~&;RbC~$j zWU%9GV_I7yL+;SwesdIN)O|(=HrxAUSqn=6d=9Y~_W4@|+G4W-%?vn?KTIhWqm%Y* zJDqJnZviaFwuT`8-A>WFHw@j=Qt7<-WXd7Q4WB*S1#K>NAmo68q+jVKwgU|6Cs7~p zYRYv_Z4YT9&H=xXC7BeR5OxrU-GrPf8pxQDYTryE63_JR9$ZcQSlw+6F!-<|Kn-DC z-2LnsEXJ78=_Qbq$dQ<_943yaY3j%LR+l#YX0h+*CyAz!m^6VEx@n#~x6wV8wG0{) z9^rwp1{|aIh~k+=FsDIdMKaJ3@k(FuCbyu)OYIz-3XKC^SAWwuiBB}*EbT{eeB zDgfH@TWw9gG%?j0!m-;A0mm4QXlcs==nQ++i>ayde!%VduhPA$ePe(D(?9gwIiw-9 zRSrFK=l{txb8ol^IO97s2B7DggW=-VM~~iR@W6 zd#y7K8b@zKNv|5u9NyxBGJE*y>ttd@pEc%r@+h^*9uC(9f20~Yt{|zVMLz(0qROAA zE15Y6{>Qb=X#qIkBwG&a;1DD&MjCpwC^`PBm|eXL{PqQOyr z{kc#OLF~4=m_WruwuK9t{lbngW=41Z<*7&qwQ&M2e6sCY+NiTvJyocozKYehE8NYJ zy~Z@%hfg~vmncoC6}52S59+Ma9&t0W?R;vbC))H;B zK>;=RzMD&v+HNt9p(_`ubO{{uo6lDargPg%1=hncvzu&r{{PA166*S zaXr}Q1pcxtg?yk}Lz49gHf;*iMlNtN>qd*(p3n+5!WZ+yki|j#u+>W|r9lu$xy+JJ z1oKhC29iY;G`0$pmlQ-}2>#;zu*^kRGOJz@V zh)fPCFGWKCA=|^p4UAy&zAbY)`Ub4I{PeMU$y9ANaQFRx6o;Su$V~Mdfc7U0f4Eyp zk@@cA73xHB1Xk_SMej7*P}12YI4W`Er^GROEwX<6&Y4QGr!(oZ`g8G5>or+){I+d< z`Ir49JPV`uT3XOznsTi&HCu_`qdqxVn&sWknrJdEWbZSnG9GGYgD$eMGDTXZm86Sg znBH%>()_dHbb#qb*(AiK;t-->=aeW_IAI+34ErEl7)2$6AAYWSDjw}_q& zbb}8@t*>kZ@Y?-znn@$L3Omqu(k29o-~FS%ap#{do4X@JW_BUCu(QAUV{hxmG)`cj zfJqAAg+J|=0P|rbnws+8A`znh+yoN>)PgE-{6D3U2#BjIIdEJ4vmSPe$%B)C2 zt=bG^%U^#tHCmAW2Rr4STxgO|f-d_K+#QX8U#Uh4@bj1KZRmC2uQ`mreZDosqD6Fn z@8*UTu2=J>Egmh^pW1s|SS4;gnip8WiW|eB5GzEDonA{ zK8?Bz__efv5Q#w-0-Syj1It zrWq)2aNGyY zU#zV;)&Vg}3tbbWP2j+aZznHbE#X;O{*x#PV4~N(+(Z}z4@B~`Lir4_ zIR3jra8lL7u|S^7Y$IC%G6h%xz{cgg%d&V2Q9ySiI*y4rYv`svJy|{d5HbC$!Vf~} z2`h&Nsf?;o5^zZ8U3xk-QKbB4o#3xVexA!hfPCzuf?3=_rs^e}EtK`f?EQ`WG<2R( zEoW#{tL(gpFevWD5#5`$Rwge3_c<9drCLx!hpG~CB;7~vsrk{}es5U?m`CuKgPXbF)& zW@n>IONU->7cG+VO{aeAZ!V!<@6 z5KP+>+6-QI3fapZcEq}r5M#9tijAnNfnhXUiq44MBA1sGUTyW_VsY^G+eLZ}g9;{I zYO$COpR!#Y;HarWs2FS>Sl`vuB8|mW;?j6&+x@Ux2Og{c^or)PtwuFb@NPdT`r7navS*%wuaJ~{QE*>S^0|?{7Mo;?rk(40y z9aN-n{raD)mi=1x&d!6R!S|NacemFICjD<&i`8a1uV3Ol2$k&IoI_h(RUW&;|F8X= z>5_c1{AVb-PT3lv|EA+pgsWtevd>rl>X{P%RrS}=o)U)oq$bslDPBWKe*9F*fuF!g zqbS5(FbU*bb!nL%n~tj}+JZUj-AsKgoYr&6?Vj)P zHXSUdm$r^&{R9NUqA;4nM5mtq6_4rvdjYa|i{{zR8WCIaN)$@@Z8X=5@GTEms*Ind zfEq=8+%0ZOvSC=Vbmlgm*h6a;;t#n@Og8b-gh%UIa8nnG@uY-)r3maXX0qRP?PUM? z-s?_T)pPfTzW3ug4g9*D^doU+qtPJO7MyvMA)8OykEc)f`*o*x8#C^5Qal-biUTCB zg`lZFI1-JJ2@FhDX&c-=_kC_I0o@D$vS47+hty|@?l^c-B$At^TR4E|>10wgc6qo& zIlXSP`<`&r`MZvrQ|^U^5ZPRb@iHASc72m{d)@fJY+r>GqIZ;8r$3aGrczI{4)*+* z>6&jEJm1}%4pqT#ni;T+_Ov|KI2LVh+E5b=xpcl|vl!cma!3-9WivP!rV`Aj5m1v8 zQ)}V|_;4u)W^nUqB~9Awq$PiM=Ou_P$*QS1)AuOd`wlk}ovhWOCBxzFmW6_#3#U9Z z2#L9;BI{q|$E&iNOYwI{Ur9m_4v2<^tA%L@F_5rgrqp46QBaJK*rA5I%X3G~KLwYPdc_{{)+ zHfCmS`n1)V^@fdKd$#q3{J}9|!PoFztuyhz%%D;G>+9=t3t>_>JUJa4(YeVkgsVUNmx4HE!}7)#<2;*zI04W5^PqQHe42}V{(Ypp*}wC5 z0{0)clDi>H!a-{B30ZyCZx9t;P_eP{`R$tj&K4FTy#EAY#W5L|-YRF#wJOO6UJm#N z-0d_bF3q^!80hTM{e)mQxC!sxruSNpNAqF3mqJTYZ5KfS#`omu8_&u6$Be7bTeYln z4IVfN3Fe!f@Ay{oG}EELMfYRZjb(ZNZ<6_OEDPbIM}b$$`=758l+ufmy*YsHANjo!3+lfG{EN;pB)_OmADC-mRDy~*7^Bjnv#uNO;8xJjtq@k_bd(!$W; zyw>{mIW;D2&qk|bkR=`(%(O=IjpF`f&+kFZ>G^D(^g&H`x23RW6D+c+gb;4c)VB&af1Ui7OQCc2ryU; z`2oScXEKD%i`hr`FXXi#k03w4#cA$ZJE|%W{ifb${p?F}Vl?>MTFJBw^Hp2ctFpPN zxm40sdrnG)nS5zt^EQaFkc(4>wv_3Po5zELzF-!n8p6G;XCH! zfw8i5Pw`ruAtYTd;s?qO$A=8KV81u%3+Qdocf9e(TD=!3@QF9hdzNBp>Cu+L1x!R@Vb^6vt``bkF1TQ%ZG zI+yTj{Wj`EQ;CmnC|X_V7sQMAxG0nEag%lv<9GA1&yE1` z3-%S2G+4#sL0)tJJ<1NCoB&Zw&#Eyd-^^+?;NZqkX_SQ~QOe|9Q(Gg{$0^ZKbF zGN<})gs9O_5&3}O380hDyc?Dj_0zC!V--KjkpswkHc}^lz89@LTpnK}E*NKe$TdXm zvjpnRq#-5XUZ2_fb>Fy{1d`qhF(Fz=hB6%wT$psIC zX|ukjoqUmSo#DD=SS8VxI}2!%$w*=g1SMh`k>1(~kg`{)q+(UtYG6>)eHtro8ac2g zdUneP++>KDmOgXq@X1t+U)G~3|ng|O29b3b>q)vsy?2roGEF6mxEk5H|r zklKJ-YH~dU;JP7-&)9!0&+J;2yYV?zq1mbTuWJyl#OdW8carJ-pY+9>&G483`TPJx z1(?rI+?L1GWa)h+?>NGsU*B6kZSQf8Lg-nT6O(Ys2J?0kOl}C5z*TeeQG&m0U%T+4 z=8=zAo49pTCW|pAj|Gn|yisM2s|YJ0IcViA!Hb?6{ZuwdL?i99#s@5;!AKGvEr%^{U6_L%Mn0qHZKXnjE^L zOpnVj*o_Wa^T8)qj#RjGwrb@RuJHi{)a6#fl@riMW$`i;Io0!;{XT=g()r#@sTv|$ zm4i(~35F2VHE$N6x1~rdLIfX;MX%a6^SFR9DMyzUi{c|qDoZzEP>itf;!Jq;N;63( z#>D@L9b$DZYsK70|EDxnGDkSPqx z$JAh8D2ldKeLp+n`YUnA27Xo3%G}}~t@^lnr;jcyeSH-h*+!e^b=gekLunNfUc0o2 z;>f4>XLx4Ia&&W(wyeanzm)tBU;aG@#9yX~PMQ%T`B;fM%S&!}{*K~9;5!lW`}O9Z z=?UV9x>#ghPDj-9Z}5u$W~`Y3EXjh+&N8gqJM1$-{BG75iL*x7Ab|{`Hi_YIV*!61 zVJuz>_$J`x#J6~(B&KAqi*Pt!f2*s_B4E& z>_}fskT~mD3pqrMmFu~Uj8l#hn9@LKPjIyC4d>{-ayNnE`I7%3eGmO<%^lMAhZJy& z1d+sJ7C5LEi?+ zJgF7ZCVKm5m-qMdqZ+?~Ue8gb5wi;WST!U+K@lrmpr776KYyv;z3EGUI06>XVLdMJ z?=n;Kw?6{kAj&t#h5q-}M!1Gzk;0BQ0tJD~U!XImgD68nVXRODOXkgAt(zAATGRWb z)7w;;l*43*LiY)=XA+D*0oZ=wz+&Q?9h1&Q96I#{vkeqGvU5*0W|_&qPGrdp;@p`-eR}?hhY_ znDvN$2C+Z9)D!IN@|*=$aS6j)Va?Dk2e&rIEw6bhf*G5*-V+~7U|DQHe0D}IlA~4< zz&d)S)QSB$lL7S!2+|YM?WwJ(<^90$y(5iBC0IqsF-|7zj{(lZP*Tyb6_h#!C#LLd zstoBI{HDEUFz$D&RrCdnwj8S&PaLwVM>UluiI9!sag9kV&rITgdnF>d4KXSPo3v~j zwzUK%4M!`%SZk|3KnN?=LXXZk@h%xEv?T8!ttf8{+F*Jgj=jRl<&RCO3w-Y!2DdCC zu^mi9Eh;g84?SvYHh=wC6lQr#bshGcE!Ye^VpS`#H~n%UT3TL=L>MHU2+BWx8dIpO z+gRHK(ju+DS7?0jt~H6=pcH2im1t$f0iCq%v|jlC*nrAos52$;&_&m_%*f7Ag*`8S zq_jrZ%CmuFYV}cAM}=q>&**l-2$QlY%DUH03Kms zBW`vUxIa2n%vKNvCs5W zY(|T%m~`#%s4?K1mCP&aA?iuog2fZ)4L@{dB@Tp|_&`O(;@uO3X!RyZbJN?nmT?eN zqZ!4N)O2A_DY!0Iu4C{e4c5#aMAzm_&K9uv{m@ zalj;$1RKEKMg(HTZ8wXQ5X&)ESKEl;rgsbB9b*ACL)@4`l-6fu*u4|wDGo@jl^l`u zO_$z=+!R3D3)wZ0<8>wNENA;qg~p9QODHV@RQ2C8w`u93B`jXzbRFUHk6P)K%FJr>HHj|+XHbgqUVW# zWm|dQfD4}7imU|4%2(DomZ)nB1Y3EcY+{Yzu#JPw^VJAt#o|C0rDTP${u`gfvKmKF3jiD%*WXLRp&hmf^ z0<)7@7)Mm5S|W5NM&6RIKCY;cAxbvkCFdN~jk$GJS6VaX`f!3-m1JLy6mqgwi58PJ5?QPKohTQoO9( za!93aCr-fN_Cq&KaWmD5iHSGd!sZdzat0d#lpk%9ytj7!FJ{po3M^v3HPnh~h2a9~~d!{ht+$0KvTEr4=xLh>KKP!DVhJ7JN?Mv$+t|zJ7^;7qH=L zoF`~h!p9ec0H!j3It7CPtc2hb?f}a>+=dkwN@CqLLvj4x-9<)WpT#_-ZRBai>4ek- zkn)p{)1?d4WgF0KpFv}8UblA2QT?@`jL_dvE{e6Eamd|2ino+5c!ywXKj?px7&m(p ze$i?A7JrhP1g-rNMwuB-#jaNZ%1KiRwMNYD5#+TqQ>Z12w_DlYgwqZ{{Z% zbxxnxA%+^~V?H=|Mc_Bu{=G#1+eoBsZe~JHA;}9p!BJKf-Z6fL&k^76L zUm=cKjI>g0Aej-oVCh9In%^(d_MJsxMT-a0AUj*Eway&M;)%XfBO$-I)*hCC|KzbmgGaEaIv3v8aMRfqafxPGT*#XA9UxtXS z@{2tBSYc#SLD6@s6FuFbNfgZOr8)W~@h6Cc28u3485p=LCuzGM+8s*=S~qI>;&TXl zxRwjB3Us`^0Izm)*Byvsx(bd{wxH4y;9Q*yCIH?B_OLJgz2a}Sh%NDe;~#mu)tkEy z+O;p)6PjMLl~J~5x%-wk#&9Z$bU9u%J%-hNt4Ums^{+AGOV{NW!Y!Fa(#6s6n}o0x zatz=7zw(B$Iu@YccN76iN84As7cf2w!;!6d#&9MTa*7&?coMbW-xNkW7C?WLD9l)V zHl`DL+n`r10X~n`tHB?U6!df5Zq zD(qQjHOdYgMN~<}k=%GtyHa9E^4AR$iZILS6?VT4gW4K?z989)z-OihMQO|xw(5ONAoqwBv zmT})bB1-489*PSU(8^D~NEO|kO@7-DPnwu#fwzP57LNke3;no@Z0O~|wB?e2UOxVT zPB3w`9b+(!#263u`4v|1&Fj70-U)=}He}U9^Hw+&pf9et{mhbObFoyx`tXaAaI^_beEp+G2X@o7lVpTHFoSo|T zF~J1+TUJ1AJ}LixEYkrY)=+%d+Byq9Z1M@p93a}g1AUcWel*zIMJz9!*>3#TC5iLo zlS(|Z1w`R5p3DUNC&=wo?mEyf&fKhYctDjO2jFg;ZY2#eJAK+ku!C@!A6H1zU`feN zBH!H*{`Iu)4%4cthfp>?{b*qUkRiiecvY%eU4`VFfU{|r7ifv7nJG1>y2DoRPRzWDgPD9n26vh-HmSH z2DDFAP)(jqf7s_rvs?i&v#F;DBmv05;Cb`rPrC4b9Va7(Y3U=i zqG4xe$~pbDq9}y6hM1h-M@?Ze%=_U&r*!Ha(Gwla(&;lCc4An!p{1phMa<*?od|R~ zu!nihP3Qxwnz$S_=DC(u z3F_zVJ)-SHsAD#h%WBoQmOTr-jOI^rV)$H0#S{P>B-Z`Y>EbR!= zi2q*-_ zo>T+_3x&Lu%Y0C70y8T`ln_XG`8+c)&2c8~5rjXoygeuY>;~e4-FzoN9nz z?mj%WLQm9my%6ej=tClwaxZ47McPhtEakLZ;2)DNmv-vd81Z=sI!NoABzyR`%jRQO2s>Yz260b#~$xw6NnNQ zl`!hiJ{1^dv#6xViK^*xk(`mTlTt@gf&kT|_govQ%F$I)8^ruEq7;d=bs&5ud6!@r13NCm zFj$>STC;J5r6xk0krU};tJa{mMEnx|mB+@mgn!rCMlB3~>22^r52!kK*vEb2YRwY% zImT!5^|AEJ56WTdUx07(iz)dY* zj{I+S1OuuQnLk!?Cr;bErpB+$mw1;9lxm)q6ZTSswsl_Hg1cu!x$Ro{8Y+cIbaKUS z+OztH6xy!JE}I*5P8Z;B%)Bo%TG~{8jG#`V(9BD3ZL7Q{sQX2?6+h0bxL`)Tr$I0U zpzXY;zBenu%bjLUqSnB1VaW8Ild@i$zxX6EC{P%}r_od%fSEOCrf2%kt#`62-~fE zkd|js?re1a#g3p5{vh zQ%a7A)p#ORbKp3D&T#a*fhZ0MXkiV@YHF-dm%w-AHX1uuS@)EBd)hDa$ zypZSX*~l+ZlE!(5Vm4Q;k4Qo;ByzkBzBq5OjN4~FOQs)shevGuEbt$7x>I4OgsRbP z2wZ?^T2$q3U;$hR4!kKqfH+O)wQ$aerRHtV$gBA{Pa?#Z~_&Tti-l zDevOa5_4;EM$ z&}3%Ge%1S3noz)YrGupVXr-PM$jI>4WbA6WWl zL6-XZ;Qtzp3xoL^jG6;~-8X>~3S-3_HEPCgap!y|C6nZA8PcP?N_b9Tgvm)%zsm20 z;IE?V*}g;z&pnX1-i;{J{dkY!#;Xcpw z)k_qm^WlU2pcX4cQ=bJWAqL=w zsY#4@KPviO^1iJXKv9hU!xOn<$J&i3EVOUqhfiDmV3Da2S{d1lRHc=WNb&70Ed}MM z*Xfv({<`Leq5szc$c=)TI^Se1{_cq5k!w9};%KDD>6ejg7Sv;52H*|fqD}LXOKAK= z9AL?Q)sv2mU@+U5vapjh_qe@b_eu9p1-YM9%cCUzOE#7sJ$z21EKQTmn| zO_X%~gx1*KU@=lzIP_e?tYtI4ZiBV#84JplR|_VyKS&5FCN9KPci4Pza1fi6TP>S7 zlq(&m{VMkKRj^HGHzfRkY*L!N!1$$O8FaN?tagGT`)91#et=nl3T+}XE$(GuNV6Mqc+Q$4ox2-gZoDB;v^2{WYE+4aPn^UVHCfi-s!uK_cpLhPZ_$Xx@laEqOPD2#^(h zCNJTo@4|*sCD3SQN|pfgeZc$T;k941zEpiT0{UO-8^8$kN7&!_NjMd3U`dpL9}Q4J ztiZ(_&y+`vJK=e4ZG@lxn3bVx+9!|R056tY1DEi(u6Cxmm>X@`&-;I_kb6SpZJ zfyw1yzT6V`5s~HCBj5CxCoY=2LAy8LO=QA|$cRmA3RC)=MG>oie(KEp_H(wxvoBQU z$@hx@2~*N91?x*FeP-w`B(W6C7=9IzmpS+Wl9~km8&GU?O-mxq zu+`&PKep^lbQYwAxT*QX(V)O!E3%TKZcz6|NQzUcUHDtGRQ@}j+pAqW-jw>?1|<7U zlD`aDs<@piUhO>NplN}tWM)1Qr|k`CKs{J1nZhXWbjSCMI7s86giBn%p*j<>q7BEU z6PrQ2YwWW8%XuFUKVoxM-iF_Ic{Fd*yU>Rki7T@|G!a_@+v=5!YO+Jkxy%oWQB_iMDabK zkBnTam;#I^srVMurxI&pg-(Vcqtk57bl=UvqJOO0yxe;slrBp}Kq|#TAjN~D!Xm5o z8W&WMtgep+n{pTFe6SI*B!`}_Zjo6Y{_L8h%83vu3Q{_>-|W`#hp8AmV36f_ya#{a zQ=yCDQSAO7LvBTk6u*1>JBqWVhFjgW!dx=XDX)C*6%iO}!%CMJ%CWs=k9J0eF;E16 zl|4_vrvf~B))?qO^F#_3wF-%r$hiD@>lw`hyD#Q;Y-vWs7&6$^6Y<)1c#{#0y7(*h ze63p5y`VN)yX6ill%NAtL5F11b+-HP!YbqyiWI6HnB(==aN4_Fj0P(<1}R{35?jDu zaai8HCzUL(2NiPP*VS9cE&}V*$hGUubu2;a&-`l60X{GW>O=J%)J%?tbzV%IeiXKT z)WV2_r~bPT-!@zU)c6mR38I{6Ph4)vT5uu{AqBOvw*q-cVY#dw1}!b5n6U#`iP(6R zLjR?SI133ju-s(w!=P1*I~Q>cZ3mC`QxBE6&f1B!!$eE<&JFD;!SxPXhQL3Q3-^D zgHALVdcS>doQNb>Pbn||{nS%gVkCn&9!uZ!n-l_4ygPz4Ce^4-%*d z!7qA$kkC)Ai3WnHBWQ)stY7RBRFPSKvRd1J2%Fn{ONA8(`is|hpfdF6QNMgSH&yiD z15<%if0W~q|^P&rr^y!K`uWjmRH)JCL%(Ot)SXV|nya@dA zd(-so&Wu>J?;sjR9u$+7k{R2(zxG>eCO$A%2Em+-XWB;H##D+d&gR7|))9Z_S1f?L9{`jt#Q8F9%YCVDa5r?uyZvQc z&E)9U_fY1^6Fjdry&H5JV2XH3vB}p2y^wN><4yb@{4%O(h;OKgZ;-cnQbSJ^-NZF# z(0&Wa#)7)8D8R7Gx#Epd)zu`_LWv;d6cKDLkP!P~*j@YD-2Dwlwe+o)#H~PJo1Q?q z(`ySbG3la?2>Uf;r>`Gc zz>U@H?t_unIl|KHG6VoLQXU6XvCu$ov5D_-D%n~B&va`wYqr;CE6py2|B{ndtb5um ze-#+zVe??cCuJ%wnx!!pp~pp*ETAExpvb40!;d4GJhMBgFFku>GMoQe;-16oC8oOZ*=FJ3foTi>VtJulwHUx!@%&kG(9ZhMrUrzo;B%^ zb`|{3YK)a_XTIuMCi-$ZXcJCi2}zZfAY1kN>;f6*l#^)OGZymy=c!a;+~V}F`843A za{=lT)-=#DUSGR6tgRaIws#+2|I2IjsLb%t`ttLfQeH0690V#rz@&41OE~3_?xikBmEw$eDegD1 zJv|?-czKdtr8As5Xi(00G>xaQ$e&Y3b9SPq-S&Foa)fg)e4fYp0iQ-j`+1%}o%oXk zeIG4#O+B(X!O>V!C`WB}8aV>2DH1}=$5%KDfh5XXdf^ts0{7}`8V@q%A9XafG;%do z9{qE|8G_g}9>vYc*Zku*A?`=bTaDp40dU1p0YM#AMNkZF)9Tb)TPb#xtBNz9xk5eH zyTW*^J?d{gKc2CqnA}5oLJuN#XCe`&Q$vM%PjK?j)v|xFu8kvbFxLC+%955Y&B3h@ zD3O{fgESN9NDiAP@Dmelx22VHgs{C;WgN)yOYPyH5X78(8(BCs%i+uAviF)g8W791 znCpw~*#r1P)`Tut78e)mGTOAG7z0@h1wH=un#Btjmrd-)lJfou*K11Y=RHs-AsHwS zdA`|sX6mCpKB$TA_{e4$f>xgtu*Dw?W6zlRZ(>W+vkK=yU))G>T?hi4_Wp~ zYROnn5sch935|G*k&~OvC)TwTe1Qxyx902Bzjb_C%t5+!YPJN(_?d%zy5;YPjFq4i za-p(FF$rd9M%x2UBI~0$R zi=Vy5hy?Q|K^9v1izptXxck60KN{=arwz50XUElpFX!>Ei|6&i+8?R}V&U$}O%hghVh2ewR`ZYL)+qQe!5gwU1 zh^34qsXcJVL;UHrGpy684_APh2rl9)6JKZZ_m?Ch1O+HVswLa~n>U#_n%pzFVn4_3kvwy5;fvrR- zs z@8b^T;kVCx`tX=I$IIG6&5&81T)4eV2>;nzt?ReUNc2pyP*ok_&?ll|c9pwSWC@^kM%ta?Y%e;p`{d4Fq~$zL_} zdCDkK+;5`ya5d7F-atikbmiczxR0^IddzV-4TsqyQMV6t+q{&n&}+gV<+J-bYm4vF zqQBcGQ{CU*14djp^bf|8j?h~xB_!(Ks(Cd|I_8o2;ca%b*xvb+X}Z3gCg7wl6XR6&og3>1CIyZvhw8(_R2a)*;#&?X*HSdetJ@||}l%+S=z z%I%q`@F%N)2mSFAbf~Lq-G6iY_RqBOxVE}~&|W*LS2{OHH( zKMA@26wU>*dp;$5Ff~ciuO;Gt9*n{?smW%EBskhR zIo(wOjmWmS-7Y0%0O7Qp7^&XbMbO>DzueTmSK#)atKJAEtcuCwVYkY^+Q_ObKbX{8^%1dgF;BgQ%3Z zCK%D>+UDrGPU~xOhO=e&VhzQL9%@UCBUhK#z1z+keV7Iij#c;Uvd2~@Z<=C0B^h8! zW0@ZOtav0hz+Fn}&7S=0-F4a}6k+hnU2xgiIoFmlb6i(=yYs!ag8q=ezH2Q$wkbeK z^KeblS@&S-?ceD_eU%xr4@nQjaUE6g%qRDR8te(f_`q0V;%Mkp9_MX#oDAMzwrP@g z@p8)yHeK(OoXOyabiOyOcQcCU9g<7a#c;F^BEg7}DADgu`(l@C7!s4xs}Rbch%|d4 z6)D9D<+$DAf7x%wWW-)%!6}CaQ3{%|?zU-UGMdm>Pdoft>n5bFzsN&ryJODJ@pd4Q zddtXLz{z!8-H@3&6?jJw1%CGut0ormsz2Y#i1r^OGt-`^Re=}r{A<#hr^lMh%=}h= z_9js;G)Y}+w|{&$=jVM3ZnEBkFm=*Ez6uCc$@EYJShY#PG3X&IQ|hu)lVp9Bu6b4N1WaR5dgzr!;)i! zc8q*YBzx2-sV{Jc&&v?+;-KXd;)38O=;ae)?2h6uDFd`B>k#;F-L-#S zEs{Z!E|Ihf);~anHUE{Gyp@aFx1TNwGF-k5)2?_HON~MBRnDb$wK04uXFsyUp2SHS zk@~5#P+^0yk&YSH+0Oaw$4EFVS&e_wzQ!jP;PB?f<|@;!+Tl?OU1131&w6;EXR2jH zfD+;7ih#vF6a8A$z(UXDR;D>V|IhE{b~~x7H~x7)p(3RRJo)~gsI#U&vn(t~xs=Se z$F#Yv7VgTFj39wct&3-=Ig(HdC)h@U?BR2V1LFpQwJvi?W0`!Ina8V=8u5jtE&6Q3 zwuNAGrSZk>Rh{;sCdl4Vd<<`P~RM2aGn+4QaV{{zIKV)O+WiQ;_yUTlm$=717^Ld?CbS=SRM4}eD-U9enKS99v(?|y7<)C{CDIEkE{5b z?J2E5tHJz5&uW&YC|G`Iw_Jmr$@?*1C%$k`_G4*^-iqaSZ51u$+-D)mq4d?`tnj$u z^l%|c8GsV98jMBGlX5q{rXJR&hk2~mbm90pAs z4liXA(ROXcRoBclt}psD5w1%flx#282w>t_%oOPI>2mu)xfDvKj{ew=gHeGN59xZ3 zOuP+!GtGS&(jyo2o{KE&9hVr{(6kbfVd?onzrvQFwZiLx7Z=cF1t<9Fj}POY1SGh; z%Y1&|AHQz*mt+^?LM)d=vhC74i`{fo*!)y7{U@lv*Lq&;<(}?LUT3X%+?{XV&hD^k zclvsbAIr&#taR+#xBs3^Ilm&EGl)m*ydfWc_=WQs^&DG3>EBIe`OkT0!XN)mhA4l2 zNTz|03n>Ic33@gu@=^|8(cZ*ncj@>ru<1Pv{G%+Dt;xVrz?U(0@a)*L6fS$?$r4>A zlgJl}LJ}ltLDN=!Nig6EM^Op;hpDXlA|iE9-wOQLR0I$pK!Q3s3ecPNyZ-A#YIHxM z<<#0H_?MgIV@AA>=4w=tA`d%3mRq8-&qjne+)k&4X4Jl7{%qR=6tCht+X$% za_T)U9owFa(yfvh8m3;^R~vFx-EKa_Y&(l)=wCxBK%WUIm8d&NAoz(F@4CZp=yP&i zXIGhG`b|W#$1IL+QDfA6mS#ALgRj<0mvK7&`dU z_VcnX6p;s@z&w`i(X#i(xqQj`@U+O8Sir_jfM=rlG}^lRq;KJAwc-TzKQP7=Ky3dZ zJ=RF{s+!+R2?w0JIs2sjUuh0V@uf;c2-rA1nz1WeIr9f#FwC8P&rwjYQx;bbCS4Qg zU=$rS?yvDVe`sNB=k)zB>KoL6aot0MLyz()(34iR8y7zXpqhNoHhD8H|ky%d{Un33v`~$Z2c%AmZ;h<=1RAQ^`}H0-dE9e>bJ;G@9t9-DS)Q zWeiyl6J-&xrN*zGi{@MPgq;w2Kzo(IvGX$%Q7K;|_p|u^-d^{(L7QZC!juv^l)DUF zgYKdzFW7!tqx}&n4jwCBS(rhVEoaxHo_{>R==ULi$S1Rifx2pE8+#jtg>#Q94K0(a zvSb}mvsVSf3L8AsI)5Or6}*Ts^xUSC)=HfOpZ}FsR7hG_(5LM6Q;=7 zuyUSYEWv@d59@c|OE$ZwJp(+RvXB|$!E+sX$ED=M$%8E94$bg_;1aG@EiekKCm4~* zleVnx@TSf2biL9>Xw43eMV0f7#Cg3&H38Ry<<7yUO1>Q zC35M<=w(cDjs-^me{Vo9$A`0SvQGCw#;hq8m2C-4u0R0|o=;`;j+U^iBYxs~uA|x$tF?5_<)KCHho(WX3 z&OtoHKUk~8@SYYh9qg^)8~FX@S@Le~X28;uI9QlTAcpncS6_lQJ-TlEd~Y5wsmM}{ z%6ulu^v>3Q-k3Z!%*KqrJ9m)QfSny{A!#ybqyV<*KhY9XMgb1X=KNxaQo_OE;Jbdy z%tw~;w^9}wZ1I|^pdd5@hCvZX(Z-&jr>-K^XtQ5_w{Fxu6^eIcOuHgZ1pvVB0n^xg z>(3fXr}G58y5`O`p%Drh@~|)p#mvcph1Q1XlMCi699Ea7JbND2mRhkA)wtDZ%-!X` zzxMj|enJP%gniv!-hF;;IlO-MSu2=`2*RHX9}g88Z$Z@p7iKgnW^Dl#8o*+<1jiw9 z*Vg4|jCX1=_wma&*aVIo5?mwIzM)Mz!8XoFm?1gs6!^Y6CZk+3h_?{M^7GH1^Vf#~ zNslo_iWg_)6GAa>T&fUCW~|%{Rf)jYgMXdS62?GW-n&67_M=3hh$Inea4X--qyf$b z4S}YDR|cFx;uwLgW}X=jPEbKU4w}n`Pg0L{$lT_*9O~eVmO*Ihl3~YQ>W0I|C+XRn z>=+ms@$>LcGFQJ3udHosdJlcpusZC={0Ibs@snf!aHm8YtZXX}qmasLC_uFaqhWZx zIUOQaKZKSzFcMDY=JajPfVLqLL*>B!)tml`Mjf^nf0KIC6uz98foWUQ2C8|D`%_M{ z=f0&-u>z5bWPz!&S}km}-Lue&2wVRFgMp zF3yIkp4??5HU2%i6-G4#osLum?uU^*W?*ga&d&n6w}l+u-acpjNy-t17Yj=cqz+B^ zL&Ru=8mkG@V+71RBKTn{}%#vJ0+U8g&6eKo%huTCF2baH>1*6Lr5o+b`NJ8rff z)_0zm<3Vr|1BTaCN~UPYkb~IIMj}lom!}!a8@(HDB*vN#aDRPqd@C-b8ss^R5*C~6 zcj`$$wr+rlsvHw!fU2#I1yiIBjZ{AfTfTr6f`SkM8{-L0s1orW{VP7!Y#idC8{@5= zvLPRFt#+6_~oW?pE{iIVx_=7fp*s#NyuFB9|WA-NNO&H_>Vqj*N8( zHXNG^5q}d#d!-ur%e}cX_htD6ob8p17U8LRC_efO)mA#}^E%hyDA<_6(?L=-%ZssJb}lF(^|gnoi2#t%P4tNYO*g#MS0h zJj`oc+3%Q|RAIY=Mfmh_L~}1{iQXfuWimNtg-lvY!VXQWI3bc@_~@E!3YXgth(7%# zD6?Tv8FoLM2-qS}sGrNXJyli z=A&ljX1)czB*_r5F<0is&E0PlDAURLFBe>~(%im=%J#bDsRp5<$9}N6w@dK_Elf8? z!HkZyg*Cv3Oj>`Mv5^37MBOxuYM4EG0H(t*{@UZ2#XEcVh!cb#m?VkTsju_Mp9m6a zz2Rhbd--Z$dL~=e3p8sM-|J|KdYht&Trv=haVWg7G2BL z4^h!iF1zDJzQWlDygpKNt^x*Cahkjhx~vtNq~blC{hR0h^H^}umeKgSe+M2lE2Lpl zEV%4va%8LL%!c!&N~_C*2TX_W{gYJIWh1z>V-X0-(WR4!d)A2>b(pPJw_TiWJ8qn= zj{^7HR-eq$oMsqMTwh;B$W$WTS@w!HqXp#^Ma0d(Lb(nKrHFrfpJwG~%2I1=3DJf7 zJBzD`FUHFq_|X?y5$?{mfYog{(1{b)-z{H5H*Ek4|NVf1G=Ca(pkJk{-Z$v=eNIsf z$$rG_6nQrqC=RHR&46zT6-tPjg}syZO?{hZva2PH?({kBk0#puz+$X?MCPMQZcct! z_n<-9wff*f`IoQ!zZRgg(E`;DPbiV>)Vm{1P}!I0F+Si@qQbC6eD=|D+#Y_^#@VT% zuK&UbEt@oOg85Mx9;(bXt46SRmCUdBhUe2;w^VHP7gn`Sci#+4b=FfPE@6Y(bNSB< zA#K2T4te+Bk|?v+N}{qzU@;vZ9>@!ZY{WS<$bxGBNB~BO(T_}uhZLTr=3LvFHHZ(b zJ#syg80MGYs;+#rH5)Y#Rc&)ghTOj!oLjfgk2n9mt6o&+z%GxlDqbK7RSC>t#{VGo z`9wu!C{2#2z5zf;Xu-VYTwx|auw8b(pLyRWRWMTsVz{lRTjd7zben*^M_vMSOoTpb zp0Mogr=RxTtgV9OHCMll+O#!;N6Iqv$tzhn(K2Vbh_iEohlSj>P1y9xFG63FA*)dI z)o`S=C9md;&?l~k!VCkqg8k1ZD+o5*Ag%0r6B@LzZHgM z^{Ujjt&xljN8>a4rVCZIG1ZtNOF>Yq9GtB_F>B!lR31jRomg6KDay8J%B{yMo_L33 zO|Q%bvLg}bvB-ZbMvixZImS;ERDI9r_h-(s|IoyRst$7JTw+1kEQFEa1i|8@`T^xw z$IUiQSt`nax5o@XDN={_w-@AcvpHVZI+J&?Zf;7;XX#7kE2G97y*4ge2i6up!QZU8 zXx49{pP+iV6h;DefyGy9MvIB9h-OdiqER1wo!U39U8F*S>BZ?HOIXgF;vx-Len9y5 zG%bpGUW>$|i!sAZ2%O>ppT=$J_Ob={h0`DR!zxY!U4)v$DC5}zJdDVcjj*$i^DaYr zVMBU#p*9GmRycF%QT1>1N~QB3@6IKe8yx9i{fS{s1_~W(;a(Fnm?=RWbqa~B>%)n+ z-D>WM-`4rS8NO{t;iu53f>A>Tfiv;Ly7l&$XX5wwxX8onlQtZEZpF-%m9xWlafa1| zS}X=Aam+zYt+H>0&$e*){{B_Gy9dNit@q43og1zUg;YC5`gE}Dy+)7>Df|;tlhUE9 zz+`vaCR&7KZ|x^0@6GrQ!yK0lDuDEuWLGFp=eU2IhPS;&Yf zeK(SOH&~K1a9>v4Mu`$rVK;6bKm=|nQhsGQ}^M2{D}hS+O2 zu_>3(6qV*VweB5a`kn~Z@u^P(c{v8SpdNr|W@L9EI6qGeYC5 zP-hFz(txaOy=^l0yZTOT*v68UkAeed;as>$WnL5}Px(%CHyPYP&J((;2QFqaE#s%?9t6{8yPxCwwE2R0dIb_-P(Yna-I%{N5r>oskB z`(Nm1F27TKS61!v2QV2@)n{44VZafITYbKHOsD;BfCysNQULlNkSlF-pKy+G?_n5P zx5S}FqR&YQo^Vns$f^@so)gCAE6K0!^5&2PpRSF>t3j}kH&wc{E;F1f?BN(4+u_P* zMli_u0xsEnKmObW+opz5N@mP{W|h|#yAdnJXUW+XxH&kmgJOo9yhQ{p{{`s_|75XN zT~~)t@$x~@n&qKC4WV;(CnmJG^(vTB2Nj;Qvz4k_z2X2S%l9X<3LLiU+(O4pqy(uB z1k^Ex;wTBbIMxR&6t#M=BB713rrvwgYB{f(wS3plB{Dm!3Lg*)d8=Uj&TN&231tjB z5I>hBf!qVH_bp#H^E1K%z#MS{{ase)IMu1IQOFo3ts4{PwE4Ngt*rIl!`q@dzEWi? z8^eFee|59DC%ua0uT9gpRMUe`$oktyck=+!nqZ(C*h>iThXWy39$<|Nu&}#zFg@A~ z8yR=ET&L3AG3)K@kW&_Ptu`Juexv>Sby-=bUp9>(CytP&Da%IId$-fjU_3|Z9&N}i z;7E4(6P2TnRHpAM>CZto6wm-%oTWhjgQq!eSK$P8o@+LGQO^p|)FV1~(>0uR8M_QN?%g0@zG^0AV`<>TJEi8&Im|0s7#&UYsWfT8;1Bxlqn$JW`PQhkv)n z@38DEap=iPS*Sa<;>loyyr#-l0+MP~_xUvQ@7kOMr{%@(m&igM1xwsq_Pe$% z4@pdH5ua5?;gD%<_X*~DAB~J;HL6r_no+=+^Sh5(;nX<6bVOl&lp)}Y!`||dAgt8H zh8m+t^>B#ED$~5Dj|yeRBFjcyTfkp8BiKWeuu!`~(kByf57!RyvT38|$NMkWq)5F& z3OIwZnmH@Jf5DVY1S0fj08|ziytDo=MoZFR*idxe=pZ6-K_b_4>4R`~D&Hk3<6)&s z+2niYEc7(LX`RK^NgMJdTx)UB@us*zu3Eo4rg4uH@|g!d*bL%ROekcOGeaD@e)CX!c0JK^LYOOceKYqAms~u?tLa%G z-OM_8@hrz?S(6>oa*xF_^KEG2ivR<|*BO?tGyQ$TDw1Mcea8gdm)j>#z27*I{vM=h z9AkSnU_?B}-xUq0xyKl^uf1G8|E#3TnHXzwvvns`GrFD91Tw7 zpHrVdq~#@L&R<5cA`R5xKaipZZ3i`LO0dpoYvHm%App61OtN;xP!IHJn z5Z7zo4<@a^%QrA;2aL;OhZPzAIqfTC_?pxRX)4tCiZcU_NLco@N zbU5igdHQGizeoPhd&zy?I>~L}{>S?yL-U0etPJ<)>yd7~)mHY!+JTtUy;dXEJXhVgxM*Z4RR$Z1}mt z-;VdxnoHGJjBS7ndVcQwwgr2;r^_1yskC5mmFBehKwnhoRc6U(M=LfsRC(Et-#P*N z1&)-O&{0=7WkUB8bH+|V!4RF#HwDx0o7~nPKD?DjeXKLG*JmRHCyYF4d))lU%ft6( zq?6%eDVvCHB>{cC&g46pIPPCZ%HmN(fc;t|E7OzJc#Wd64cUIY6o6Ck4gtT%dP}1X{icISe=)StdF0e;H_KT)N^}t81D#SjqYt{7sjUUke4+u8Tec$C1 zu>add_1ui*ldQhG-f{d+(Tv=jvi+r|736~dV%^}=P)JKSoci2c zD=5%NgU2C-m$i7fxH!>PN-?#&OVvrx=K4@a4F#nY91@W&v0h8E=wgm{RAgGpZXGh~ zXZRBwy*Q%ELj?!OvdQ8>n{cYYkl^Dag;RKc4rR<*IA-%lZ3MRWw2+4joDOC>81E+* zl~xx0Dkb|j1=5?<)zvT6>^kj8xwp683pdedrHaP9=N!u3#vBk6AZNP&cUA6Cs@n~!}<-i zCgauZb3VjOR?W1r6uWq7yh8Oo>&C?o*9_EjA)9D;0y{y=uZOm|tCJ13f7GM-TEYrx z(uBtFCsuf0UK<5_Hp5i#!m*ab{cN#WkEGMB5xuPUoJ&G_)h2-!R=`38m4(m{Q4Ckp z2FG#7a_uHVeMG78Gcm33L73(g<&ViL4L*91aN3(PH)lg^;?*V9Z$iG{#Bm31q7jjzetFC))1N%NA|fUp2$zW~Y^NWTQL(L*3GR@a z71nth*heY(_!+T+ipuzf`OX7HCm0ENY$9D0s9(er$$m4N<|a8kj+eb;KS1DHy|Q+E zl~x*}pe~^*=+0?kgxl@9dj_pS@$X5+Sb<#LG!byN^VoRLewk&Y>|eW`$O>jY#Y^|p zR9LS!`}aJ51y`in(Lun+t{pAQ5;e|kP$x2Yl^3mBAwU29@6yIShugNTK{l>Yrp~-5cN{%d$@kEcKN^|vHFX;d;bQIDO)W$q1?d$cO=Qbwkmd-(#81RvOdbvLfLmir7vn~Q z4O4ua0hCU@<*?!`U7@W{5Co&9cXp^xLQYSlAxH+SEUyYXpiJsVcYDfI$;8p zgss^HU-rP7#iJVSzg}&k)RH>y*o$7jA&7>zn!s3}Kig!gMwTA>rTWNM%A--@7l1-> z!Oo?L378;2dweq4{N-Gre#NMkW;KqOFx>L_#2d%Ne2yrZ#-9Mz1i`BJ=x*c()&$<0aEJ6!AeBrvrNvnC z6<0?*Y2%1*>2g~Ur}$qPovo~hzLoJP*}4KQF0;ulY;?O9v&sJFGql`l$M0E$>N#fb zpJ2xO?^cFJ)zqp35(Yp8A|Q@arG$G}Ff-da`zwn_v^r)%gFIkE!GX`y(16u(z`C!* zz6U5Bq6{x)&z|4edX1ScLgIIxuzAp0Ip14I7*)bj3qN|N$pf+nEw>rIAS2Vb3<6`j z0u5O6ca-JU=pnd0xBJEify=|lyXDljS1@RV^d)%4r%cPrj?Cj|%SbQeAa4-z=e^St0Flw;*4Sa!@V2YV$i$>|gy zbKXL!!%I(3jHLfZ3x9m@Sl@5*_;H{1aj9uzT@dl?Asdi^le`P2^l#cGO>2#>M({tZ zs43Tr$Y)Gii?y{yuNRInjY7by+7vP zOKZg8e%KTOP;57NXzD5%PiTjTlCN8|0q!Y}4pdmQvk{HI?L(DgSEsz%mk&$qE`nYY zDP`=yRjD$eSylnqMZfdXwHq^Da{Co!$%#+Ww>`CH$fXZrvIq?IhlPf7&3^~nqKU#N z-9VpluuT~>O6PF+Mx`Ve5i_c@(|oeG;Y1EUt|;E(O=*==zLzv=#rGrKuRyESdcUvp zvi?XvF^^`{rjVUJAIQNvw%!CBi+rB45(w|mp7laW&87&U7Eczq!$KA0SoFj7emch_ z5;`h^h1>ywsVWV=bvE)$?BHP>m`m73wPZcH+9Xa-ZZWr8y*h5ikby7s6bC4 zdY{Zj%@PR<4fKOz#gfYDkS|P?nyA5(NV#(bmnu<?J5FYFW*+Ssxo-aF|6)mg1~9Bje0_W zg5Kn}#!kzLUi&ywy?SB~wB%EI;Zumhu+hm5|2ArK?;gP9F!}&{6MDL@KAZaf94wse zGdcOUcRxV{0B4X5p*m1}9D4TK^}6kY9&@lRTCbIK(iN`CY(qhVb#)yrH?$+og>AlG zw7u|wB&sP3-O&nQxB-UVW9pMj`o7@!9ClwM9EQ=`cH`u(E8`do!V{q61%n#`ZwP0x)(APm6=*QWBy z%gdk3vjMIz;-CR(e?NA}cYPB9-1Y{kc2JE2JyaOM&oAkrniPk&Gx*K;w03Y*N2JhU zGmQxX-+(A9b>(+*YD2oW4akn@u_3zX1fbOLJrHpui=C{SJHVS_ZRHV{j9iGWrMCG( zfpC@IiD=HCGfI32=R2sJzSv4r-1pH%(-o&uSW5rB-bLHFPX)yOQX4^t6j%mC_1@bk z%btC$4aeVR_SYTNEq!=Y`vLU|v;-`gq!qkFQUN*@yhO3|){Q(D(OAyVL&S`(W2$}z z$#eEtQ`oFXYIN^Tr$Rb;T&Ck6hukO@mP0ZRz z#dE#Oy(uqSHliY*#}#H`zo~ruXD*&&g^MRUw=U;Mv3nHhe%)ONRPN^uSW&CeI}es5Wh4*K#7{2VdVK4&QpgJ~#ntDt$eGj{Sg6N`9M znT}aSNhds(jWR?n^lmXZ64b=p;fnYyr;Y}v866eWfNTFP^SNO+xTE=|g)+urTFFSp zgTeo1m(a!cbv`d3{j84v@!O~9)E+vwI6k%>en^iQ`McaGf1csmqy`&_J{W=}E=&LV zb@_)Nbprd(lgX#{H%~BGTQF_x5u-|&#yYznP$*ET2;94U+~My9yQDYFkeLo^&Zddr zQd_&+|BbN=ho|*QI{|yhOB*%0@vR}m?7Bp~?fos+PJ}`>I)rK8iYeN>FQPN&-C^kK zy@{ZcN1!6Drj(X(M-9awOF~Ov zWD^t)#6QUvb9qK;IQ#P`T&AsnM)@Gvg>bTfk0(NqSBF9RAda=Ta_1+T0uW4Mv?<(M zC`zrl=WrVdZlIL2<}ps2F3)>0KyROq(8{#RTy|sd0gyn=U4^ky8=#(uXl)d*GF3d} zYIis9+R_IL7h(W&v1nW=j)+Oo53r47^{~0%8!=QfB*P3{5-B>9*n+&@lWsca&<(Oz4(dQ?rXiv7Iy zx2A%D-w_1z1zU{+zeJRr|D*6*E_Um71?&N6!Th+Au_lqwuvMO&vBQTWjx-FPGGn}W zNnc}k03T~^!&lX2c%Cu-BmobJgnZ0;;ZQ~elsD?8f*o&z-%)IR6m|{5UmZZ347Rf#~d=(t+QA8WBop9(umD6*}9g zXEJi&nEhkcsAXo>=hocQf;0Mh$4qCy7jDxei{eoE&dIy7)0)>gX}N}Etois{10uW} zK1Jh~IOjojAO`3Zd+pTKL9;|k09T|TS@#T~3g3aHM&a26(*Pqu1(cmRZ{NvO#OmX`l;kEI=m@TRYBXWxI?LSM~z_;D~On!xRJwxabF*9a%=F~!d&#;rV z-ryp@!Pn?s*~7890a)?uI+&-pqM+jlkNU!>YK5y)@?Q6w-RA3gGYe5hCy(`R_~v(W z!fPhoXV1+prfZAX%0Vk9E#_ceD-rW*9{kl-^P{tOXvd~3?;zn;m@=N$*DoqGYqX|R zG#J>!gg?EDUrxN>#&rV>raqqs{(VO~epYQLPdCxcw z|Lkky+;h)8celGgz)UT^IX=L=7?x~`@D^5`l%*bX`Ya_Hzk>u>mI4K_X9S_yL>n0v z>nfSe2jW3Apm(sNuRHmk{!Q0kV$oLy0t&6gtxDJxGjNI&CF!lQlJF|=-UrG)6dy?n%t7@Cz03W#M(%<$pi-Q5RrEhYXG}uGr&oo) z0y2rLy7W`SDtJTMP8~;^;h(>7J784ekdeS#0L-J#g>@{N3Zi2LmAO9^?eutzA&3Yc{t!rilL1Z38fs?5KW;fsZJyEndV~hT`;8JN; z*{LsbY?gls1m3v;VXqo@{C1jne`1d*2`Ov6IY3kj26&YItv0A!rUE-y*0igo{}-Ou zgB1@?oY8-Y~_sPkA z!9>R^>oOl}NOTgjI|v3}GUPiy$1cAw)6kc@n z(|o5r1o){>>Taq~Ils;9@0fbp^oF>+T52l5;wXGzXpt3{ws__I2X=n9xl=8ww9cx7 z^lYUB8Xyc!cSNeLNyC#-Mgzh$v>!Lrb1|1mJrsFZIm8@QQ0XYJz27suh(`Bm9!5ZI zm!XH{6>K$`!;OLiONrG0^n)KI_GCn~a~7`Xf!x#Hi+&`z$yG=o5vWu4X*!5cJK<{< zGg}KFS3e+PBqJOh=fZ<$B!EXu(BW)ULK`zq2$AsB9R|7ixBESi@HM(IsN_%x2qGFh zkO&~VNpjuNWsGh2OX{<=8ADi+={RPg`oX2rW-{Uw6nR={8>|Ah zfc?K4WPRn&)Mn}?bQJHR|8P2`v$J&yzh@lzdA7diE0U8J)~w3}e$!UAx^6y$H${k2 z;K1GuI>3VV5LRbfk^Q{l%=E^CZ81N_)^3Mf(|HPcC@3{9b53B>1s`W#D)7?MWX>OmuVi^eG?1JW*}sM6l`N-#@A|o&@r$oY)-J z0%`(*vKyz!vijgnZ)p8Bg2wrfH$#}vp`G3(-Bhn0_|CQmnxy)Ars@V$@2P90vmbB# zjcvBYGs@HPx)x8-I`2pA|82nJ!yc3motP7G4WO8?1F={c9$3@B&W3)hZ_yqF zbukI3ArLg+C5Kd-D)=x)N{5nz21F9xLaC`+wlJ|_l%WJ5Y?)?imZJ8opL*(Nkx3>P zZQDYQD;g1NSQ~BU`7-n6&DdG+ zys;)ZinlJ&XE)OtyrC(mXe>p1slK+lU9{dOaewbT4sJD9u<_eN1=43SBLI<10BP(xM{&}XDpe*6nbAkcj%_a6`LUH`Jn@_DL0w{=XL>^TVV06my}s zO@IwbMC$l%Qaf8UNl)`FNhPOKV$QmL+Vqo*2a8T51UMg}fEYWRZhrXhfCw^R%MMPl zfGZckav>HMmltw(P?l>qC|_R1)R09)U=`QPPyx1=-lsp#KOJqw7iF{_>I+1LlKYze z5;ALDy^%6%YttJ90QI^Lc3`xEXSl>yvM=(ZL)-PV)Uud7VLwv0dDPOJm;@hZn3=WE zfSC5y%BVG`pX=($6)T z)uyZsYGVoIzF;9C5?wNT!*1l$tNfi`8CY=u`bBtPo-KFaT<+a5DSiiv2 z8Sf2X;~*h70_}J z@NW0u=oMqt&G>xFU$&a1{Fs7bbxMj-i|#zEbu~Z2IIS~zx zY3<`lIfu@e1v8pGdY03LE(S1xIVW4$PU;(Lhku<PW8VawTv3bwSIm&d`vn3IfW z&lV67W*-M)US7zoQkCX=PUPw;tj0im+V$#p()G%2qwwf}jWoS}h}y>obq#)dmE+8t z-D%h9gF%?a#QNg}q2QoO#;&CU|$jYo6Z87SHrOl4kZ02o?~-BigpZ^&>NCJme~EJl7y zyte4YSCNq1(}T*29;AY5CJ2?{#*m+5hb;RI(lRhPKK@L*SK_p4qU#;xFB~vbv}Yk= zhh}+ETg0{$_ke$pB16XB8@vIWPyp*xMqf&}j<&&PMr({xgx*jCvS$LqD4iK>s| z(=kB)LNw~!JLsjp_A%U8dhinVDgNa#=CCVLD`6(9?tdEU=vB=}c?COW6k-8dPq2Z) zf6lP+m+dL?bAs*FP*UnZ=L4-4TMDRE3~`A#B7LFJt1LRSD%s9m6woV)0J;b*=?Jh; z38FE5^(k@%ZaexU2)L-VOQa~P@+#);J_O_;E5CP>ay$NtUg9;PhZ`rq*bLx;t0G_B zGL|=L_M1_P>~o8jT`UowFUYA8iKwI}Y@z)LYSY)?|2K*&8S9ElC4d)ore~tl3sQqY zENtq-&R_F?b35Kz)nOc6m~B=~G^jM{#)WH@qUQKMV;FLhNlfLqFY>I5PIOX31dcxq z_DME}yA^KXNCj`kC^bkMnfNMh(tcCjY?dhOHveIjQC~XTLw2q_YwmP(D4Up*=&KgIe5d8#0K7+tW60St=lKE4EA1`0%F8`}&%OlxY3&&g7v(KzO?zmG|?GYNV z*JGZU3GCZNP2SPFT(RlW^XhMhQHk`JaE_Oq-72Hi(Hm_xs68ek4}b0a(Nf)dJ!ch` z8ME<1Uk@0x(z_ZDZgdFjTRYDm3%`(0*!{8h_T=Q-<;wN(WtU&jAkQzFM{u;@=TKeTHwXkA-`yK&eVS8&+vanEA=!lg8V{6^ae=j2cbP4f zBhQf!_$cZ;2Qw!-avA5HD(aNgd5MuOH($~p1*2g8Jc$?qThsY<@U(W?S_*>9j3p<0 zRG>d5g#vwq>*J>hhDRl1r&kvVc=P#}zL(80s#gB%^UwDUUhhzfe1j)}+ciqp%wbz8x zID0fGvlS7UfBZBx65fdqo&iei`!brCCs7a)_T@a^PtLy3PHi|)ZzJbJ#GCzG%JX%3 z%omDrPyL>DG$_)@-$x8$1tt5ZRx*ETv2_Ht-9VPqro+WBX)k#jPwa0tE{(YHX^jsl z(3x<3h0m53yVJs3z`S|k85A>IfZzk7CkOyi59VgtH=d`v55O73JLKT`{cDL>4b0?N zwZ~3|yZ1|1=(^d;wM{ZN$XzRmZ$9dznU>uF8fysRfN$coIMx*S;JJ#{yrr_7=C`cj*<7?6bv&I z=oqPamC(vl>KL}2&||~aNr`#hbW534b%(|fKMut#h*x=;ABrWr-R&fEM>iIYX<<8o z4$Z7Mv;8ZM?sPOz!m)7S1NKWp)7$hJDWyQF@P3>jh)~`rP}G%uSXVplmI&BZjU}Um zNY6Z-q6vyd@k2|+MGfzt3bl-b$8>?;Z#dPAJSE_@WSnB{C?Np{k-jsKPiCY##s)4~ z_&tU{LeU_)kx5J&@UP3`sfBwBpaf`_TtvN*YJrCQN*dCr)-^w$sg{s8Kq|<6lr-d* zboNw{j)%G~XGAeVB5xYCEqHyxYxt(TA-a&q$p8N~>*&Kl$*fxd<} zl1r?yQ66_qU@GVXcN#*_gM<$**dr=ki!y}Z|2osg3H>3vVh%>sKw_4(f7`IWNhBSuoW{QoX77x2h&f}@vIr9I1WN;%@T$d#fJonArHusT!qo_6m& z78jcogliTAt?DB^$bZw(4fJ)8`An1q{>EwK$T$%o1-}{Mz|5`ieEQnpet$G)GoNB! zkrA4;el9q-GSH-p5sT!R5|F25*DI|1z`1(!yANJm*)PtkpyDmKSb=WLBMN-YYum^` zcz=`1Xu;m!U^}o-1AUftCZ>M~jW5S2w6(RX?feez++J7dL~jQryTuRsb)h+DCI63T@$iW|5vYa0D(0KC zS7?s|J?_g@h)$JmmYN~&67YBo0Z9RDu=ltb`ZN#A+Ok;BMn@g73xf4mWX-xI+|5aJ z9(4r5Np*X8k(XiuKwtQ+{F4{E#yl(t-srqye z)iJz~=DvB>i^C^GOrd}zF@)}i$~H;Qt`7F*b+dj_&dOebjT+$%U#bP}^UK5&lMAVn zQ44>W5X{J+Ky{ifch7(ew$;wRb`n)GlTHjYftBD6i@ccs1l!lFEws~*Y+9Ld=ZKH! z-jWEf3B$nE6J#r~TP?t0w0E+V$Um#_^ydUIfTX5WK!NCUi5|Si-pueidV!i@&T#W-b zIs<5%v*C0mIRHF8TdBNbA1ylz<*OtZ=w6WSkHUqbP+_0LP$vt0Z`MFHGN%GuP+Fnm zWG{L}@9YAKjM?)eRq|A?(3+cD3fr?@QV5ZV$~(3VOOdx}#sMWgE>-UM03@*jPMova zStxiX?U9N3?-2f=F%3-Y*F*xfd)g#T1A-yZGG`>)N){RrJHuciMaZpJ`H{tuZo2rh zGVw1)^wBYjs+Hd1L+B(3iPsousypj&0w3jFIhB@R-aIdcm3GorMqKa~s_Y9HSOHzP zJG#ezi6`5wEoI#nJ2ptvcdzW#+i4;C^l^&|l&b=Lr#2=0T%6m$|23wkw|hCfY-H-Y z*pa^}riyhWaWf5$>DiItD?Fj74dtMeYjzSwMn*0XE6xAkwG(0buZqO0>0vU{f=$P; zCh>&J{&m;O7R{1j5{faX<74rs@I9_S zo=et!%PKlIh&)#eatr7BALqF{tHl;ijQ_6e0_IDLe1MM1a2gnd`y~yLV~82K+UCuo zD+HqJ1!B=4X*=he(*oA6(;a)XjnjzX*2JQg$grGlRl|ulo@g=s^z5$JP#Rcp9w!}tDA$? z^M1fbPJ^Me;C_9aHRr&+fSbL??T`%aDoF_xCRPwUC4@jB_J$+iwuRQ{MUp>WuSd|Y z0?t?FjXDG;%3aQaKHDn)9+7!Ousg!y)QdnvFkq))e6Ig^gajNZcMkdTVBR7Ld5#EY z5emKW7s3zb5^}-9q=#n-%-gG?q70q?uE=`L2Cyx5h(UgN)CBTZ` zuPq_x?Vt%@VyQ!V>%XrBWoy=>=!dl|1M!8;_pe76%SESMzDkTER=?nbW9GKgNym@# zR8Zo3e5@Jz*x29+SVrv^?)B#5`*b0VDLh9{VX*G`KVs_$zxB*$e*J*}4xjljvq$s~ z{qXJCG6z5xf%GyL>8`ZXc^T={#tgq#jS8jqD`HCaBU~9mkGdPguU4p1ZFu%+fPK+w zLq@dy*hnY0um_!Q1Z3q9Y;xrfLWk_fhO^5ffrk(!GqImGEOF3O`T&DFE;}?n3J?IZ zE8f>;e^8J)B+M*6z10130byrw=`dc3X_vCz=tBVVmgMQD`SHW6-+M5bYsunJH-Ld- zwuP1A7er^%mP`ic#0Af`ZdCUnFO+-MPh|xFV?&4q)AM}IG6j)g?2K6%zkkp`bnp6U zt7YHdAID_T?~&I0*>@Ryy@Sfj;%^~{1BP(c#AqfGnmKr$hoin%@K#v&p`Yo`+!C&J&x>N zb8+=1BdB-;?33IL_T)G(!KZ5!Aia-|fEV4$CIsx$)s{k5aC~$xUpIrmb+a?4VGZbw zara!|8aX^yUNfg#|K$V5ZJO&?=@?&Evg~xNId~Ioq4`RYg}U$nna)Hdmbn8-7Z1L^ z)Hc>jNU4^e;?DJczB+q!8-a;A*s>H6`1=Di(JyBkwSuwaxQPK=;YWd4$q%dy#cgtzsae9;xIl|z z_YF#YZGt2Ra+e|Pw&iQWT~M%EMyNx%T$?W0%Yw8f z@V@ncM@TQ}1=|vww!26O>JAGS4+?PF%-xbq7n><)t8!Dhl*^F7z|h?FYe&!a$!$Za z_7886KdMu5;aZ&yw?CX+X*E$jJ6+qD*W_nvEl#g#)gRqy+Z@;&J6h{I6kT%aaG6~p zbK1A)F1A<|{c*Wjdzfz*=!)m|eU&qX)zifGDQE{RYeG7YCvtmZ;z|C;Me~ee?!QSw zm~$aEx3Ru3&i&`%=Sg`|R#zq!lK((wwL&ZAi%tD9edyl7Yo zke$<=n({!dU9IW{dYWWLO8?U<7Ite|8JC2fPUtid6a`pE4Wup=lW#`gh=E6nw*O5c+F|*7T%cmn5XLuMv_P>^fw_m5ge4RTQ zfU$_nsHb%>(BA^qNPB<3NDCA7=M5k_V6s3K9S|fD-3t`WE1Ovv*9w1yg`KWa))pUa z&ZF6F=p@wM=a|^E1^9d%E<^zZqr5P1grOXTdP+uX1a5mxa;wI)&`sv-Z|}=j6ib>6 zE~j2*W>e;u;&Z1>Up{{UB+T3T8gbexbG`AC<9^t(!1e8m*~$8Ldg;mIS=XctTZ$1A zBsA=3#rk4{ZoR6Fl7&@?8vW5t5#!&5F_Wgo!$y|^Ve^}r>tGibk`>QyYc4tu1W@SKr$M=q*GF4-beg*rBE_Ss(_vTxf z)HL55LWq1m^H#lsKrweHM?pz#RsT3rT?5VX--u0E@CTQV%?zOw-h;UHc$z9w^utCpdS=PWU`l68Bl9Lx4bE#>0+NG_`vo>?Ff+`17W_Dhy zKf>T}`rrnR{h3_UpR?C9Vei2t$(udkupq+xNZlyMZp}c1Ovu=;6=nLzl(Nm><&b8a zJ^kUYb6BpXYn4~kGa>#V(}?>-DtfUaN1K+{K%W8qU*22lh>(y`J)gc?W0D@%C1=Uz z4zsPa=P$JfHb|@bPV*9f#zl&0u<^{&V3GIf%Y&GJQ6 z!Q~DO@b=(#8ke1;bAk!DS$b5h47p0jd;4wSa_)K0+j((u)#C#KZ!B)1Kcn_XR{mP+iJ{)*H*0yC{hneGGVL`<03&?dx>)`-KxflCHZWJ2rh44UJ$wpWj(XTy3nM&*Lp%I)vZ7 zi@`8IJNm@`b8Ri|`V4`6$Y}8EC6bE(=TmW7J+l%XjX=oTv#YNd%^lxf zKXzI6x{rJNlU%Dc(gF36m`h(xZLwU1dI0J?g119z6wFm_cEv0_!~qk63r;qV^G%ol zFY;X*q+zjuPI17$UP)4|&4KEg{OaCmb#Ah3F--HFx)uNXNyTLV_EZOU3ErkNC=%o0b_K^viXEn z$g~qNK_OStpMPD-35YmD3Vs*>AME71?w4W?R5mWTmGlhwPGBPP8|D3cT-!IXB17IB z9I~+%P4{H%*3P50cx7Ab6hj*7aKx%D77uOzpsu3YGYm8dFfDaNmgp<4svKxX9j`eP zH${cfLH#H9V6KR?-8e|#)Os-@P2!mc1>wJddOSG9^uWSYlJR4<;~zF2J}iUx(N9fo zga|`pm5_td7J(&p|dF%VcBnX0%B6+FWaWLMc_HeW2~Slc9fZPpfV!X+TD^h9i8 z6^M6h~`C8Q2+ZW-xiuA#fOa zOjA0kXgD)fHP_(s{dt-iWlvLCoRM$7k?a*R9ZMdqw}C1)n{Vm-V1o2sJf*oy_2n zkYR)af|v-5SJ7 zC?_DrAn;bXDhN9Rf|1Mj&rmv{uX-f^+j&7`w|Ual^*Tk}zT#3r!Sj;@^A8=}Up)h~ zIJxQvB_SK$Dr#r6Ab;WTphaFHW;iUBBz?zKd5W6cnQ3HVVX~=7D!Q=cSoE_030iV$ ztEBCDWKcyZXWq+-b%L8}o9q1PxsMkn>VlxMn^~cQ_xvQ-Gg|HPMT{iP<1GNd4+^Pt zulJoEefp%?X`M1b)28X=#h=MpBj~k+b4+)en;f6&P;N^}o;#|fqXCysVx_5maDez? zFT#dWNqH2yX_ItSrM1JgnW~B&A)R=bY6Z*4l&0#v>;*FGPXRza{SVZy*_)rqPD4M z1K&2-Y@wXhCCKh&djrRt-sNLL($O3U35ZQ$r~lsz;9+TX814ft6%rJ=k!Lz~Bp8lR zr{8yJmD%%Mt4gbuQ|s?Myz7RcHyQ6}x^_T;igS4@M-B8~WwjD7e6xPMq5*S2HEX%p z^DeS!Sr>WlAl5TvP$X7ZfC;1w8R_M?)jx#?ubStINUn^Ke};v|E+^dq>Bl}2YXcRF zB_2@;mLoeUNvGw0TQF(zjx}IQ6*ej}cb>sAbWV5T%yDu~Wqqw|c7ILjC1e zZZ-~{OCQ?T5C(K)ot_;&rkFwbvk- z#@V$s%If#1c*0t~p_kHgRm40+IA>$GY&$D6xv(@Jm{6vUude|%gxv~oE(Bslfr%}# zv^k*8?oS^Y?DB?;)adYUm3eUNoJuiq({iV)9n~bu)4RY6m_fp4#Z`cg#8RIBoAkyF z<&w?1+@1*{8tVZqK}3!HW&gp}jQ=>>MBL!$#b+9J`eM82c~KR6F6<1eCf^qo5g{=j$&JF8n|N1bvK zqd`z*B~#yFXVZOKa*TadtogoLD1W6}jWle?)D$qxj9hnCM$qt}I33TGi~ zPe=zp@q~a6$)*(%V8c^RHK59tpb>F-+ozMXB28W^*?_3aC2u(WUHoTrwtnt3{g!-J zZMUbA2rqK8ew-po?;Vm61Su2g4IJqW%A3A~cZGKa-Fi?R?li>gE*{2mYm7yK)`4rzFHse*?8_Y62JV{B^w2*eU#c|e!qXxNhzoq z-KhB7hmG6Jf8x^Mt<5l>~_G8l`^BD(Y8hfgs& zWGHNgtAuNez(a&kH_9ieN>D&}c*Fmm*B=&3sH@xZ#~zA(CMFC?qvtYO)Lh5qSr+H6 z5&3fXoDrnvpo)Lc(a^ltI-ZtC;fdLG(aoZA|B{^(~trs1#xThvZAHID-Tf5b0WSzn!jPR=4XT%FBjG$ za)zFs`zgHvm&;L?(DPKIO#yL5Y1n@|d8xSqAN~><=K&sKa>65>>m)eHiMZjf`z2B5 zRAHQ26jB-P$%B8;q4%4}b@Ct)kf>0}GMh&r4R?IQYQUuaY(g19^|W@Hmfk}fXt<~e z38qmx*}MWpvhOySQDGUZZN8@+BiQ6lgI45VCIzm({JQDPb^X_93E_Uz4@r11VMk&3 z{(iCCicM&JW=8qv9xC*k+jEUh>(bcsnBcA;dh7HR9_@+d%YLD#7 z>G|f_=0CL>EKdh!tiJbYih3q+xqSh$4!eJGtcCPEO4Kos3~W>Kx3`w|G+39{>3nh^ zvO6=8@pY8=K2XH26d4=^3J9tG%Ue87QG}p>#5uv04mL8`p}i(~k0lj7^tMTzSJKOe^(^Oq9bpv4|{lOsv--r3~V-1vD?&rV{Ixa?gJiaG2Lvj-~(Ec``_|Xsp z5j`_&ngxj`E6B;o--t;SIeJa?azA~N>!O~v75tSxr1%p2?!Z9v`)oqx5+^!H1id|i zxY)wa__F+`jv~6HczNl}1vLN7nwBub)-)6uH!4K$CcUA5gmULIeeU=ty(ocZ9!U?_imJv-#w9 zN}e05^LX~OSLLUB{v?{^d>n(`RX2uc3^#Z*F#|8$vxz z`X9aIa}JRS=p&H2O$LO-2V&3_F=;J#+uf$7eQp;&lMGTdU|93vV)drKPcjDQDrA5E z#r`M~WizZ*D_L`g-DhL{FN8cwQPz!z%n|hXLw9=lq&BU#u9P#6`Ynwz=Hu}#$&8SI z)2qWdY)JFK|}=ujgt;4|Cb@r25jrem=b(!xP5SfP(XiXdP=aA<`g4ZA)5IJu=~ zGk=u>g?tL(GN=(tl)o3I(6#5D_jcDv=c6g=GSP;`UZ*A#OFfkIHSdUV_Z(K%o;jNq z+#hK7Up8-D{{=)?O8fsi&K@3Q>|EM;q+AoudqtS=L%p9W-Y zx+dKx&OeVadUXO;;Qh2!MS(wI(=F%bhANuFBINnxl9=&6?hJ#bXZvjNTo;@q`9fN{ zpkA`S)J-LcslOU;{+CiI0|zi5?XRKWez3#dL-c154aMrqR@hsjy*WgNON3PcrOjPg z=-s)G9G;)g_E-urVCLK)UCO>Y;!<&Dy%Qlfe^i05{fvfNo%5qNhfA{ecEjueZNm6D zmpGc>xHkLz&zx`+-PaVy-(np@&Ekc~t3F4{b6!^L`s`>ICSD44`(9tP385&TH%j^& z5AIZ6$d63a8&%z0UADrR^wyU8FZr5rH2vxKw=oMG#erO3FLOPiUzPvz%$jfMnj zYKeJc)TSuL6HKlnlxdN3lCrrFn=K?lSv80~h{y!5gVUHeiKMby{r=7TaSTUM&ktFY zxgzWnMTyOfY!PLnjGu?3aoS}$elT2w%;<$BEq!%20qYu9HxRtJB zA%B@iBr*Yl;ijgu^1`PHw#8OIn#SWP+ZuS@F~J3<0dR=$^>36HxMpuSfS+mAi(z|v zhgKz!0;2xkNZ06DPnGwQs{Q+d@5JFBaJ}>128!N3t0?UGRLYgM?_80mhlJ1?aB^;E zmsT2+d}G+W&I~-jXS!xR-*w8;xsF|??#N!}UCEzNM0rz*6Blk61-3aa;^B`rICLZ< zSbDD!87GFY!+ZH{5$rMje6*h?HT}nkrRKw?Oq{qd(_&DAKUHaQ`pj;kW`4!#%4tMKr+8db1=F$hnnfUxzHZ zz@bu+q+soX5=>WZS)t32&WYnT-nDevx^dn04J3>~3wlaPExk49K*tg@S);NbIr(=m zezy*W-CH=3CZ|Wwan!DGHLl8L=YD1eV^vXk?uq1R0K_+C^-2naFiqYRC4KdT5VeJq8|>_@*E)c7LM z|3L3fHg0|x^i^|aBT|0NJHeQ)Z_^PM9|=k-I7T$N6qf(!WMIL-Gd{;8^u9k~VH-n3 z-_AWl>F=#_(H(fM&e&}cp43E^^M_u-HdyEy$N7(7gk)?QbZOL{ zB5+W+>U|Vs$xw__%ynmbD*op;-B3*g3W*Am;+F+gN!%?bn#8VGeHy1Iar1Z5bguu5 zHtb3vGifv`)pF6wH|s3V;ScVbH~?|&q}6V+VP#ez__ z=&x2_dV#TPWdF?j&>t>m&>i_@{0Yy0(34%z4=T~uxqNauasSv&iX0P}K3vjHeSf26 zmy@V08a=>M6(h%LAgjgwZuMf>DOtN#^Vi(ktd+w?1daiLWB&3UA)%>!1@;<1Mi~7S=Qtq zB7uql^LKykO*$#22r_bVw%sfBB!$hzS-pQ0raO-ZQrTes`t8ZRIkYuRiU6%PNG?tA zmTd-rh4PV>Cfo--JkVvhk8IfF-J}`ew^uY>^5qz+l}-BWxKGujsKWH|F?tL!2AL}Y z`x8X^zUChANB5eqf8hhm)7S@fnzY%3HM@knA#?J z=kJ;O`MoDV_>YQuABZ43Va*mmFv6%K>Eclva$}0#224a#pysw>ES%qaH0(7RG~@9l=X(U||Re2~rpdStci<6)PJdSrijs?*T| z4LRLk?aJTwiFHinj0j)3+}ozX*yU8x`X?ad{GB2}OtI-5!Z{ zXo5H1P;b?dYy!wkN1i-jZDJkIJylJ zx32}>41M&3k`Nb-QK`u6`ZHKXrCoKD{IZCl!b0CiZC9jt zABSW(YQaSzHdt;GF8SYJ>hKHV(Wu+#LnB!188~^>`PiHp7_*wsJ;(26>TXAlBMW!= z|PX`wbQJJKk~C4 z683pmDLl~#sdo4tuc*h=H-^38Y@*&&QCadq&qu7X2;`Hcw5^pCgiKEZtQ9sVISmzz zN8kzvBR1PxbB|7;VkfBCGAbceni})3-T&|rvfx4xNz3;%o{C5M1$XE8iq2*C;pV;| zTygt5;wlD(`Q!@p!x_LC^Epu{0X2OQTV*r`nsfi{0vQ&wc1;t^v+ zh`q;9nI$Dmm4vAG>WoxmY!v9klC+BL3X2Ao51jgz5A(^PKph75fFZBWr+Ok$@-_@V= zd;mFnQ=T802C(jqE=h@UO;B(^=qrUD&kO6kuMcgyrl`rUvX0P7%r-Hp9dk#>aV4Fs zU)n}Qwalr>1B(RPk`_n;7>JwuKZJ{_=C$UfVFtTv=04-`Rr+jq*%#m7z8+UD!YH}~ zO!Vn3O{FRDqKo+YO*OqWG`b0TemtHZiJg_@D4qRfGdo-|7=&|YYN|ts_{SFJ`Nj4! z%U8YD{1PNuRFxN@7o{Yqfstmy%h-Id5LXJJ*)^tRcyQZ4hJw){DavpeX9>fNT~4ik z9nFgT_6e@EfWYZf3}CfqfYSrA@AQ}Juy>c|em=tK0(HR^oqvD&&gT26C&!-Lzn#Uqp3hnJ9@53i zLYl%YK`hD99?Zfh!s_N!W?D)Qh6W(Oh4G({1Rvf~Oc%!+l~P^6$1miTdvrg>&hbi(7~`BdJf}L;y&Dz+ z^~@?t@YQ?`jE%Mp2^~*J`itHjtTz`AOeUrGAVT`TRd?nW&=wj z<|$y?D#wTWb{kYkAP(K^7{EA`k)>)kqSWCZyq?qNujE08Zt{IM>Fn+ZW^~bL*ftsv zJmZy5(9CVD*xL(p0vP98KH>-+<10#)5?%a`NSaO=fcbMq2CDOD{P(zQ*dT8J<#}Tn zKetJO;w#Mv#yM3EWWup{uneEreV!E7mqYv(&!M36S|+}desmB8{hrwv4{Z~0QEYb; z&5K4R2MjZtgkRoB*%ku~9sR`XhEUx)&4&{dt&epp(KKeiB{u@(j%(8XvW_2Ka4isp z-M`+#IOuIylq12_J!`+Ga{lyf*eC}%CIKutYtCV47-O8Tmpe1@;^`+qPSm?qlz793 ze*gTv`|ViNeOsDcz5Tv<|1c0u>q)5Q8^j#(NB#*`p8Y?AV$hF{LtVt>OEzQZAWu z_|t^7?*>EM6(rKTAWt=B?F%c3pVJ+xcyPnMHC2rY3J%j*yR~cMHat3hTUdqDdOWP~ z{5=#0=QaI2J9Dg@Bn2Li{8Wb>9T*;`)}}=%TCco4{x7on2~wIC4bxbW!HX~&<{7O) zUBv%}GN3wme)K(Hr09~TeM+KG%5ji&p&EAl<^l{7+f{lyBIzvL4+a96f(2Xx045@1I&o7T$0@ z2>?5)Z9z9+X7UxY@1uMT#IPa*Okk$B9g1zaRg+rO!@#uswx4n+@7z9N zF&iy_5h6-x&Dm5`%5?La$~t4__xo-?{&-<{Zo^C&ItH(_eTng zRws-@LqKbOI84$DpsV4UB1;i4ww?L*gsy3ezegsdkNC+U^0C;~sp}F{EVlyQZuE~* zq5jUaO2WQ%RxJ%vTe}s8GZ<2MHuUXlRpC-fBXc2Qx%FwiOJKac7Jhz`5S~N?mFwKq zg!96KJ|ZbLp-dN97X#wp7XO*7$6!+y4}IE{(nL9RnbG|{4HH) ztpOn!{Mhv4Y=D`>E6L1Nc|O+UdyFHWKdgwnvj0dP9o1N}W_h=Z@*6InOy+3R564LM zWO4zVL%Etn0%@}mgP4s9D({UpHFNUOv?g4j(RIo7>y@Lltv)=PnSb@qaO5)6U zIC@v}_#|af=u<&RfJxw(Yvrp`NZ9%g^0>wIeW&B>TDdEwP8q@f5ehYRgFGwkT)`IT z6pJ|b!-_Q=m?(Wa-j3e@iE0fJn($+!9d=drMvF5%*VR5>whBVfLPAJMsflsrCstC@ zlgWB><+sEBkV0w`2{JMw;5TI4*D@V?Ns&j$Cq8yh^5tcRSL2fNV)X?|BLw(r)`OrKLKBgTWA zIqb-tRTPm&D?C_sGt8F^8EVp zQH86JU@uNV+e3&);}e_?A@7_p3IpmH6q-JyRMiEqA zLlb1XzlLIZSIdIht6>xwV4pzFx0ccHa&1lPp%rT-C_4GgjrB{JGYQLV3c*TOB5##HvnPoEpWq%kN zx2|M)=U@3wJh<3nqrP=(__~*pdv#mHOihn2=j(_|59+>AJL7w`i~Vwu7ZH^oJ0_C;2#O+Q)ZFy;o1`5pRlJ5`$*N=-XoIb^S3}pxIN=G+VsMO zMl}+DQdEfGnFyD8VLG4FQvw!aEiM=niwF16?hlCAk)y|B?#0=(hfeK`sX(bW8P9-5 z>C5NTUx}KoSxvEZ=}bQn`euGVwFZCv7)nZSS-T#Z6SeStm)f=qJACw z=1VoqNLN;6e`oG5~j!!O$(Il#m{ z=oI9P6yY@X+^wIIz4*0Gnt2{Dz@OMtm4zS43M|)o_OZj>sXFNCQBu@B!vE)B(^V4C z%#c%;d>fiAkRRMx??qaz@+Q{O3tu5ft1J`%XCAOPV36SW&EKe996pEiBPN~J)NKq3 zWpj`1*#$2g25Ox3+hI3`kERnU-rI?Z!-*&)OQF!`gKPIs10=J`%X5;MUi>S%xYYkN zHNTNH1C>tL^@r&`9yYrhffOqTF7KDMxdX<7U`O}8kY6{fnCE%R*`^VhL{zO>TU(o* zlYEtPBybKshW)33?+803Z|SAr zLB@LK@}rW{Nt1d_F>}%T+3z8aHhq&wrdgtAMxg3}%tSQtd(t9nppG*LRn(;sLra*$ z;8FIw82!%r6d5`YgHb6}ubUqj9GNfs5&#w(Ch5 z)AJD|@-d?wi5VE-j+(IDvgN&GcYv?IWiqz&)k;h& zQJyMeWB=+R_U>BZK{bsjiVCpEH24u&^dE)Ni{^@?jE>D)wSi3sNHUlh5@XLjN3R#8 z=&UdB(!8|yKnF&bo=U-6Q&Vlw)n{kYl)GkE8aQm#@?1n7d0iECe5%q*?iKe-9#1b7 zde8~!*4+pn&3_rKI4KFC%%dw*l0t(kNvPDOj%~0jq&)rjz%iGW3p`eT3@f)}(T!cK z(yQ5AW)$X7MtChqfxeQ>WEceOkP|9}RITQlv?~VNYL+tX4%q78o+o#!ePu$?3GSz| z*KYL{dblZv?(=~>O)&{V{Aq8y%|UO^3xwyHpdHq^Nti(-Iczch6_=6{jqlQ*vc&uD{((?UI68{ zjDYN!jQ>F=wjep`db16`1PXk?9y&>A#cx!pipX6@VwNV>3gBg!(%d+JrBw#f(NNu% zjeh?bb1=r|1eo5t=JAn{&r7xY@5ID{7D)k;=-b{G5q>&!4t$)2kJ|-cDLR98y-JcJ zwruOm@Jd)g%~V|9B2a_68GgOa7S|OJ8^0;-iZs}@@TePz&5xa zXO@~anQlF%M|;FVfpAHr2KmJtdDS96zQ`-Bs(6OQGtD{%A)qpH)N3neo+PC)keSP^ zcS!E>OkI(dpy9+29XrLOPtpcVCJ4Wdb+lWBGMMf~V=>_SGqJ+ODfn>Xqy zI>qs@xU;|e`!e^{Jh*V&>0z+Tmj9F^Hrzr_ORF2|qnl6+7#w;hOWb~`R2(IYZrlkl zl==HsU}k{?cfoFtN;PdE4Ln>QGV~qsk%M-4^~SsG=b>LvhRkRy$X=86vK2wx5kJF# z7>uvv+hfCEE_tzyB^DliAKAd;{IrxVpxd6Q)fKgd7VleDn@+q({@*N#@Z)f~6dQh+ zb>HwgUh9`fv%bo{iLBM*h8Nc1hj!z>WTrxmLL|er7F;qXYq*QlZ;B(PriEG^svHX(2YQi; zXEr!_l+wxMt*L8Y$kqs&%ht%B38BXLfM>5UuzaHSuA+CBeP6Bf22_&Ayp@@nYsa+J zCty^I9hn6fAmIa&ukv+1@!c^|U)JV z0i9I$&SDnW03rXwr6#F@v;T*D#{r3k;@Mb^=pF~yJsjdddaTx2p=|38IWg?_4k6p* z-ejLr{qRhPfTQJG{s61}ukV@pmek%%ZO4Zo@OO1+IKglUsCCy`{}|eC5V2?d>dq7e zyCmtj#Xo`~;I#76L>%gu9nBWuF9%f%%PcowvPFQ7-lh`qzP%m+4Y>}q2Wwr)OT5W~ zZ{zZVXq;HA2U}QEoxiu&G4~tuyI=qf(+?Fs0^9^Mr5wX$>6hB#Q&xwO}2OV8_2rN`O2|?6kX#Fi;$z=kT4i=&InE7Ff~+=36K2e7O>2a|FYTV zmQF*7fJ-=@8D2^{Ne1o;{Ysl_CKoq{uI3WXphdSz975vgT*&>gX}70NT7`eMtbMlc za@TMqE62k&%bN}Cgjx>-ItnCz>bzDgo1D5~uk*Bbd!C;HQ7G9VUld?zmebadN64!l z0?XqZjk8Jl!jnv7tfq>(faK;sIe~}0=5k%J1#-*dI_PTg*!t1>yQt8cJB>b|h3NOt zgJDJ%bws^t<47gV+7m;m44X_xz)JxUt@Ccqm`;~1E5sO`tiW2m*|<9*uyQkVQ2^74 zw z)f%8AM0&FYD?wjOwK`?_tY@H+GwO!ejO9RO z6ZWGM&HOkErGykiaWB?zA6FGKz3brnki#pBN#F{}WF#Oa0$d!95#QL0sqaa6pjiOE zc3+w!`XUoZqP(D54YcEny&BN7vWp_2X>}ogI(+YOLJW9erB)t6%;%s$YvFbOa z4=uG>VZf0xN+~pa6Doehh>@&fRi3@H0=DiYsS6}U98$QBW zCzw=7I9a3-P;E6i?F=Go)*m%x<=?LBX#2Cx0&8ovk*M0;)PPA!CktZFBLGV9+b_^w z)zIA!q}(L9@LQjRb?Gx^qLHhJfDQ$tbS;aB8U)t%UnOGHCxcX~_b95&*WG)D?|u5z z3SMMq(SL@B!sGaT!kc@o6Zo7a(>U|(MVx42zT5TpCG6a8zB3Bq<=UdRHI&lzG2tlgkuYOVCIrn%WeHmTGe%(` zBbt5xq8pRQ#pl;xtu{k1)lt*)H}&N+J7@g(67LaXvO7jq;6llUZA~k$bLCQ;8hF4n z@q-lwE)FKRjv4Bkn`5EDRIZnF9Z)d?D(m|SG!J&e8==tsiVoq=Hl5v%SmCG#uV_fn zfF4ekBndt#?k{&1J?b~hVYzz_mPBOp3F5EP15e2oeh66F>UT*8ITv88Z%E2jU(sBt zxo7SXZ^gR0x)_da4#F@O5*?s=80~->?0G0U{=v;)mGY7;YwKuS8RpEcLe<-;hM%&f zPhWXuMqC*$xe5^llSLrV1;0?h-16hjqSk=L9O>y}eukG{#kh@e`QQE%ANz#07)NCon;z^>x2ZwKSKU0wB5G5Fys@D-?}E@{Q%;)L|A zy5iJ~9+3Wc^;0EPRU9Xx@OO%M`L=F`o7rK>%8h9&9|-z*WbWn}oC5YvFcJ;Fxrqh~QYgCYc7(xvbVtkkB?ex6VwOf|rh< zUPlL%H&-?Hw<}k-E0kovy>73Jj=w;Qb6*uw1U~-;dbAZ&EZc`Tw< zJ_IDJ;`Ls8#RC(OZ&j;X(vtH<|D&_dg=qlF6u0Ijv)CBm1O!6!-Bl7^k87EPzL?-N936lM&ti&v2GoQ5TSo)#g9}{M*H}y900*eF06hv!RN=h4 z3Bk{a3oVP`xC-qC2?;eL>cj!Jw&nLi@cL_OJPTmt453l`mzynBCQZ3995iib9TDkg zLNnb(d#hP9X}EOq9dyDs4Bp^#^&~gtLnSO#wY7AN7*|z4o12A>I0_)BDyr{L;IX6W zzCh9a55dubbsKC(5PJy2E{+CtpdxV&b`@(udRc^to(%e-XkysZcyVHU@Q@(=CLSZa z{Q7tEe*~DC-NH)Hwi_^C(5@yweL*V@|5OY}O*6rc%gN1+&j0x$LiO!RC~_78uYXgq zq26dJw>S)R4JuJXnCC{zvKa@%x65LB5>n6@(8J(de{#8Q!3`t@O`xj6bB8d^O$I1+ zpaUH+Se6zKOwhJB-0k$4sw(hF|Jv1DLh7Fn{wd8PYgZx8vlN|2K@4p->F6C zkKI~2g-%(*JY#GVngodCXEei*imtYp5Y!IH&l6zG9rsrYW)?m4Uqu8D?>@7ofpaO+ zYo!29sTEDTF{=Lrgp~sJ=z*f@zDEcsfua_rNn0n&kutfnuCKBj%K#^~yQ~i+KyXyf zy zFoGFEeAIfRD>H-_Z57hR^?OaTSC!4w3g-BLHd3ZWyRr{dthT*fk)tI04ZR^@!m{a4 zGYl8Jt+O20|69al#Tp_}H=YRKVQ{)A9Z+7awz?g}Hg#k=EtU%*;$UIvU{Eh4LB}rD)lW`<;?B2+q2H z6(nw5PCHU$DXk_v5q=g7`qC0FQbFzLBd$gOWjMB?yh=1OORYd&*~!E0VORU*z53PK z))^{kP8<%$DzaY~}$UEuXJVA9h#d9n0#Zmekan9s?^P;b=7O$-r{#pq> zu2CB4S*7fht}wv@0%9X0S;p#a!wu z9vY(Gv^-O|Uq)6h)AwC83+Y-7L5KF4j#cS&WKuOKxMemrB7-cdz~BP0EfQ8&W^jc` zgHZa9eBd%a(jRbf=-4(1d1$^Hey4&8GMBv|QBd^TBIHDc&$NIGCkkN#*efK00acsN z`e(Y36+yb^De^VAa;I;<E?hKL04v`Fg(~t{r4u$u2VbGOf zJm_4C5%OOHO;|x7qvKrTQs9h$immOUd16x2!K!7Bw5em%iKBJ?$@$0gU2oyA`BGLL z+c$;|qfvoBZ}qy~yFRRaWH{PNP@)#(jBwZPzt!DfB15Gn!=%O`{z4E=aSpOR&pg|~Km*x3!?zSbAjV;|&3o8BK-f#o$E_Rv}i0K+b zR#g=cHj1g|6eOl2yg~YH(fx zy-}cFTSb}THvhRgIyJ@CEov6^D%4mU5e}%t@->)(HOlngP6|B=5-=rZTsiGEh`7^t zV2l%vtU8=urZQfu4VdWF;Q|GNq54Lh#hEFSUQN+YGmsrRCYy6=mU*RsCua7AlR}!1 z1Q23$BtNlpL$iJin2<$skc6fN${2;v?`^PNExEl(_dP{EzVQZuRx2Os>iUxs!R)WK zR|~MG4Z^(NQu7Z%H%^ky zkH73y5pw8B$R+iLEx^sH5w1<*5n9r&MlDn;sn`McSiFl6{d#oHsqgeQc}6yERasR~ zQJBIl!NbbspIQtK?)kST$V_A}Iru*}l|xA2SjRRxWD`g+AetxsCGnET5ow+VjF><` z-GFJ~5KoJ(0eEReq<(H|YfqcPmtdM3uoy`u(*wZ{B{MhGwZMU`T3)an@s;9lpq;nKozp%QQLEJ^wFkyP+&bQoy7JzT2>K^!8rz^K z2us~?G%A52WMrwS+}7x!RzcTl5F;3hOlcYA(8)p>KXMyn$DaWaCb)@pWTtWU^dXDs zV@OM%E!3>ENY#q&eyq5(PFE4b3KJ{;_T2@t=OaT{x1qVftI1cZ&g1GvaErosQoy*` zAY?))2~3LjXO}${g_PInk?XRxWY(WgzOVozITIAQ=X=-ma=5?j#PHrn=okwVv}bMA zZ|)YJtXP$Fw@lVVObIo*V)&MuSIXtV7-7oc`{SFY4oSFUG=IRNSOd}MQA_AC14JS( zTl*$ZTJ2Ux`y>IC#s?DSamdJ-|Kap#$YSDfoXdHaADltz2$xo8SDZ?J)wl~w94#XP zxUUc@U~mdTHwbqNQ>~`GXYAI38PE9}6kIeknGJFd4=I>huY5cA04W&0(f?z{9+p0@ z^0}^mGf6}FFE*=Q*JS{4<1X0Fu=mrSoH)xsqZXxB-!nl~8u-&~y)kb;A7y{)&oSKF z3*`p=31`Muw8pXz65<;Hu#<+}Wm_kSLD*iHq~ya>JxAvNI?6vy-LeA%KUSX*1NA4O z6eeZWzV4Fx1#>6M69&Ye^dIqF7J4Q0ize|k)2)~t8`GoPIS4oeSA0&mK-Y1e9V*22sgDox;Cye^z0nHdHNJX_K5^n_ zn52xClW#y%t4Q~cZ+Gcn>o*vvyPq5;(yg>OdsS6cHEmAA&@}$$S}i332xxXst3o&uTqaw_bmfX|eTy^W@8f3la^i z#=G6CM<_(0aQ8UyEhgX4-U1ywKOCsA4IP3a-?x9J1fCfb8rT9wUx0BIUwn#>GPAQ0 z^1M8OtckYJs|dInFCu;r?})=R#(y+`7D50e=+?LjKAUo8S^)9~pbyBR7yml6X8U=1 ze#S?~N^-j*$j~%qQ9k20iRS{IHz8#AF1>yfp=9_-sBrm~t4Cq%e`a;x$H&%_By}ZP zC%mEt+^9;oHbry+p)|}QWjZD0#;_?IFC#=7d6}*Ew|T$#*w}1?KRTtNjLBJ|aw-dP zttLy_A@PMwye|NOD9qwQ-tgSMe&JQGQ~Uq40HI}r zzYtFT=@UU(ajm8!)@xmnZgp(n!7Yre5yM_SFERzycKjKEN<}QGTecr~Fe=XZlqK>7 zqp~TF(h_jYFgVEUrOWX0&i~jWD2*{?67Me$48 zf#h>3)?RPHeHHDe17m&%OYi=$S|h?GZ#b zHs)*n-%4}|Mk6D$BbGrRqHf?@6Od!lGkp6BRj*&{95-&&ALElfa71Y#_)^un}A){3sl zZzrN4goPCY9I8S9T>BB_QP0hu0DshSdvJ@Td)i1<>W{I+15@JgvALp8K*PjBHsBsf z5gso^^dp&^uYsCfmEoDXE(1fLG$LHVM~CyJ&=4k2CC?wIgFw*r;;y~l-WB+?<``s` zpdo%S=s)}f$r?4#s#SDzyV5^jz~<} zTRXcM0l5&9I_uJ(EzF>xpB6(FHVjW+I5+w2hcFu$f#y{1rfX$ut69b4t-eWM94DZ< zG&-`}#KQ_AifJ18Hnc6NCAH-ev{c$zDn_WPdfuoA41qlR$_1mYF_-(uN!_A1=`g}( zLWEcqfYA6C|Is&4_hn?!+Y?(~Abj3>xL>mGXU?cOug@MO$|^^_`|5%B!Z~%9A71YD z{;(KWL^{YPVBL_}YtjZ900`2T5tfjzQ$}h>$v)&eT*aV%HLbOP!8q+uY9ViN1v2c3|YZ1W$|MtmC3Rz7ZOh~0p!86-Au%7IrQSbuOFpKKpz z%5WY~Q*0`GK!Ozl)hJ?tM35UAMb_6~1@4u>O*0lz6kl&`Jb$bif z$D45=;|u~>IVQ{y&=WljG{Do~SOv+%jO!{0yVl1XO}c@!#QiW>n7w-A4|>u(f8y}v zI}Ug^F);++rHbHx=IH3CLv$9Yy42A!$=$h!x`0|l|G}`vh$7{ia{HRi1eb&s%b6_w z=RC28h$%ewrk6k?2EZGmLs(XuiQ(&u^aVSOx3!8W@P0qRGyhvoeRoI>F8zWOCC5c~ zSC6!nGrRdfLKY-f^O}%Z^Q)fqZ0gk+0QEBrM90~+TPkXLl|Z@)*4dp#TW^~)1PHcw zF7>Cgj;Wd~PHuy|1I`<|d`W1ncpyjSynBit;rft@gB`;MYOX4)z=^Je_Z<0d&8c5@ zy-|Od2l&ak*-=aV>j(&Z_g_@#VH!ufqQ3<4soMiL6#tlH=^7FZPk9DhEgTF+x`u{^ zpY);20G{WoAR_pR2V(#V^AFItF8Q3Zb?yNrq2?xmfz117N$9JN#jX(_ZXPS$9!C`? z+#aqou7*l!Ig*~i$F|WuGkijUfo*Ih^V$4n8>eVGz4}RUX-w z+h2gC8Vc-4eMNd*|9d}DLX_I>r>kbezfOgK^N6w>rekzH!fXlPFq2Pts1u-YXU#hp z`@o*`H*V=meX^%!A^dXQf)F}6_zkwFx6w2tLWO&?<>hSN^=Fu5LX5hbKSH{gJbZ@4 zFWsrOMoiNtmmSwQHhlXb6c+=ID)>n6+tsXqh7%KTyvSp?m+RT_B+L8Vqr&OGZ;z5V zl-X>|&586Hw{&&v)J>J>7>Std=)Tj|xm2Aa2fS;VzNIGF-DBp(1K05q?`7y3G-|s= z_Xs)A)#5gu_SyG2n-9k*a56#^)+|?RntC3K9Z;|t5BuvO$NY_V6rhOwF>$9=JdQ)? z%)RBIy73H$`-uprT0;hvRJNHM_|^l3P|)y_XUa+$+d^`DL>KBAM$OPU8!wgfXWK~t^PwFhftrkO|Cy_mrCoxy@%ez=X$0O>9 zcC-WcZyn;N@~o^}OTrz&6&3`D(~(}$Wv!!IvZ>(_f2N5w zyd~tw_Xs;8lGsY|)A#pQTOt-Cb6M3EYp=j~zlvoT=$;`a_9e`to=u7IccLT+oAwE> zfE{jy9OkZQMTDyE((h_sGY*T?%;)QtE5+>=SWHoj=oPM*@9X?c2Za4_BI zc2rc$!_95D(h)dz1ju(dDm+vRHOZ*RjCX>z(LehwDbu|v>4e>ftDs()R}%Z~%kRXl z6!DQhP{$;gaMh0p44{EdDAktKdIj>xul_VKojojs#_gt-uffv*4%JuHB4uf=g3<93t?L`v-c`n>;aX3%lSpd& z$#k#)bh57jf|4&{v1UTlJl{@4ra#Br%1UgmuOE|1#A7VXebM-jfKElzbL*{nXtVBg4+Zq8%*vAE0e#_<#eAChv8>9nFRwZwv`I zGkZAo&36MSG2wbB+@EK>!!aTGtg!Wlq!p50z}Bm!Mas|5U)GYHJpvsaERtaJtkuZn zyB`c&6fOk-rp#-~_Mbt-C8_ZQ#Jpsazb|7Ym48Mlv-9{2J4OfSK^;-v|5!P7NA*Eh zE_9c`D{1Zq)JKt&!M=s(yl{ldh+SUam-%q?W>U^pX@h+vADsdB&tC991a z*d<89NF(}vJzbz-cY9Y{yRtoM)B&}hCBoy#F%$YwVcn0_!v|L0qsam{hvtJqjT5WG zGUw-MJw9p#9hsX8Kk|9>az7hn%^D>FKH4WTn znog(#qbG@x8Pvge-CZp@Asn3I1v!}iz9tF2O|S8Ar~Go&q3J9*n@@Ns3Yp?JTJsy! z($_U*Y;s39#BkFy)wn6#wgYD{=}K<@xcvQfbb8yG@L$4}`|t~{dD+!~^4&o`MQ;h1qVF){yM>w4Iq=UCH^h)z;U)-NjP?^ElA1|+a? zeS2BN91zm~_Ztm{-r3ZUzKMW;4_N7pJz85wK9YO51BQ0(xJBOZmX&GaC9LaT6WooN zRQfuN(K@_n@5>Z|bm>;yY?|u}t=4v{`vSN>1E@XVDCJ0b4E83Ab8EFy6c?t?D$R}; zj)bV2O2EqyCC$)xi~y{0dXOeeCShne(+@l-_rf`!jzKnrzMvk~kLFAP{317ru@$qR;^m)}wbG@(kp∾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 literal 0 HcmV?d00001 From 7640ce8e92853e340ca10457ed4dd8202084fae4 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Thu, 20 Oct 2016 15:26:09 -0400 Subject: [PATCH 05/26] github fix lock & task list --- Task List | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 Task List diff --git a/Task List b/Task List new file mode 100644 index 0000000..7c620c0 --- /dev/null +++ b/Task List @@ -0,0 +1,9 @@ +import graphics to pygame +create controls +combine graphics with controls +figure out how to get pieces of food to show up at random times and places. While always making sure there is a piece on the map +figure out an optimal size for the screen to make it difficult enough but no too easy. +need to create grid system for unicorn to follow. Can only be in certain directions/orientations. + + + From 7960cdb6720d5a9e8b15db458e6d0382041a78dd Mon Sep 17 00:00:00 2001 From: Prabha Dublish Date: Thu, 20 Oct 2016 15:43:23 -0400 Subject: [PATCH 06/26] Prabha added to Task List --- Task List | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Task List b/Task List index 7c620c0..30dc38f 100644 --- a/Task List +++ b/Task List @@ -4,6 +4,13 @@ combine graphics with controls figure out how to get pieces of food to show up at random times and places. While always making sure there is a piece on the map figure out an optimal size for the screen to make it difficult enough but no too easy. need to create grid system for unicorn to follow. Can only be in certain directions/orientations. - - - +Creation of different classes +Being able to move the unicorn around by using keyboard +Ensure we are using the right image of the unicorn based on orientation +Insert code to end the game if the unicorn encounters a rainbow +Use python mixer for background music +Create a scoreboard that counts the number of “food eaten” +Create a reset button that allows the game to start over +Create a leaderboard so people can compare themselves +Create popup message that explains to someone how to play +Create a way to pause the game (aka press spacebar) From 49a661d774372ffbfcc1cb4906c4724ec6fe6acc Mon Sep 17 00:00:00 2001 From: Prabha Dublish Date: Thu, 20 Oct 2016 15:52:55 -0400 Subject: [PATCH 07/26] Updating the color --- v.0.0.3 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/v.0.0.3 b/v.0.0.3 index 5eab3c0..b4f2172 100644 --- a/v.0.0.3 +++ b/v.0.0.3 @@ -7,6 +7,7 @@ red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) brick = (144, 69, 53) +sky_blue= (52, 152, 219) gameDisplay = pygame.display.set_mode((800,800)) pygame.display.set_caption('Unicorn Squad') @@ -17,7 +18,7 @@ while running == True: if event.type == pygame.QUIT: running = False - gameDisplay.fill(brick) + gameDisplay.fill(sky_blue) pygame.display.update() From 0e1b80c9bcb0453467312c1089ec6aed72a4a375 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Thu, 20 Oct 2016 16:29:03 -0400 Subject: [PATCH 08/26] exit window fix --- v.0.0.3.py~ | 29 +++++++++++++++++++++++++++++ v.0.0.3~ | 32 ++++++++++++++++++++++++++++++++ v.0.0.4.py | 29 +++++++++++++++++++++++++++++ v.0.0.4.py~ | 29 +++++++++++++++++++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 v.0.0.3.py~ create mode 100644 v.0.0.3~ create mode 100644 v.0.0.4.py create mode 100644 v.0.0.4.py~ diff --git a/v.0.0.3.py~ b/v.0.0.3.py~ new file mode 100644 index 0000000..8f22bed --- /dev/null +++ b/v.0.0.3.py~ @@ -0,0 +1,29 @@ +import sys +import pygame + +pygame.display.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + + pygame.display.update() + +pygame.display.quit() + diff --git a/v.0.0.3~ b/v.0.0.3~ new file mode 100644 index 0000000..f779061 --- /dev/null +++ b/v.0.0.3~ @@ -0,0 +1,32 @@ +import sys +import pygame +pygame.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + + gameDisplay.fill(sky_blue) + + pygame.display.update() + + +print "hello" +pygame.display.quit() +print "hello" +print "hello" +print "hello" +d diff --git a/v.0.0.4.py b/v.0.0.4.py new file mode 100644 index 0000000..8f22bed --- /dev/null +++ b/v.0.0.4.py @@ -0,0 +1,29 @@ +import sys +import pygame + +pygame.display.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + + pygame.display.update() + +pygame.display.quit() + diff --git a/v.0.0.4.py~ b/v.0.0.4.py~ new file mode 100644 index 0000000..8f22bed --- /dev/null +++ b/v.0.0.4.py~ @@ -0,0 +1,29 @@ +import sys +import pygame + +pygame.display.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + + pygame.display.update() + +pygame.display.quit() + From a50bd2e11c0f8ec3caf2cb06fa2e5b52f3bdea63 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Thu, 20 Oct 2016 16:29:23 -0400 Subject: [PATCH 09/26] exit window fix --- v.0.0.3 | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 v.0.0.3 diff --git a/v.0.0.3 b/v.0.0.3 deleted file mode 100644 index b4f2172..0000000 --- a/v.0.0.3 +++ /dev/null @@ -1,25 +0,0 @@ -import pygame -pygame.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -gameDisplay = pygame.display.set_mode((800,800)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - - gameDisplay.fill(sky_blue) - - pygame.display.update() - -pygame.quit() From 8f309f12b81fd950d70696537710768529ced20e Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Sat, 22 Oct 2016 15:02:32 -0400 Subject: [PATCH 10/26] version v.0.1.0 --- v.0.0.4.py~ | 165 ++++++++++++++++++++++++++++++++++++++++++++- v.0.1.0.py | 190 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 353 insertions(+), 2 deletions(-) create mode 100644 v.0.1.0.py diff --git a/v.0.0.4.py~ b/v.0.0.4.py~ index 8f22bed..efd80f0 100644 --- a/v.0.0.4.py~ +++ b/v.0.0.4.py~ @@ -1,7 +1,10 @@ import sys import pygame +import random + pygame.display.init() +pygame.font.init() white = (255, 255, 255) black = (0, 0,0 ) @@ -11,7 +14,9 @@ blue = (0, 0, 255) brick = (144, 69, 53) sky_blue= (52, 152, 219) -gameDisplay = pygame.display.set_mode((800,800)) +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) pygame.display.set_caption('Unicorn Squad') running = True @@ -22,8 +27,164 @@ while running == True: break gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(white) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + - pygame.display.update() +gameLoop() pygame.display.quit() +pygame.quit() diff --git a/v.0.1.0.py b/v.0.1.0.py new file mode 100644 index 0000000..7f58e60 --- /dev/null +++ b/v.0.1.0.py @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + From 9700fc0b1fe0634f692c790dbea51650afa39d2b Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Sat, 22 Oct 2016 15:02:56 -0400 Subject: [PATCH 11/26] version v.0.1.0 --- v.0.0.4.py | 29 ----------------------------- 1 file changed, 29 deletions(-) delete mode 100644 v.0.0.4.py diff --git a/v.0.0.4.py b/v.0.0.4.py deleted file mode 100644 index 8f22bed..0000000 --- a/v.0.0.4.py +++ /dev/null @@ -1,29 +0,0 @@ -import sys -import pygame - -pygame.display.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -gameDisplay = pygame.display.set_mode((800,800)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - break - - gameDisplay.fill(sky_blue) - - pygame.display.update() - -pygame.display.quit() - From def28e99f648d11d6982b20bc0b60d917bd47a63 Mon Sep 17 00:00:00 2001 From: Prabha Dublish Date: Thu, 27 Oct 2016 16:31:52 -0400 Subject: [PATCH 12/26] Prabha add --- main.py | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 main.py diff --git a/main.py b/main.py new file mode 100644 index 0000000..bcf7e35 --- /dev/null +++ b/main.py @@ -0,0 +1,52 @@ +import sys +import pygame +import random + + +pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + +clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + +clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() From e25d97e411514e00821c41c6b60b2eb5f485f459 Mon Sep 17 00:00:00 2001 From: pdublish Date: Thu, 27 Oct 2016 16:36:33 -0400 Subject: [PATCH 13/26] Add files via upload --- controller.py | 84 +++++++++++++++++++++++++++++++++++++++++++++++++++ main.py | 52 +++++++++++++++++++++++++++++++ model.py | 20 ++++++++++++ viewer.py | 20 ++++++++++++ 4 files changed, 176 insertions(+) create mode 100644 controller.py create mode 100644 main.py create mode 100644 model.py create mode 100644 viewer.py diff --git a/controller.py b/controller.py new file mode 100644 index 0000000..a967fc2 --- /dev/null +++ b/controller.py @@ -0,0 +1,84 @@ +class Controller(object): + def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True diff --git a/main.py b/main.py new file mode 100644 index 0000000..bcf7e35 --- /dev/null +++ b/main.py @@ -0,0 +1,52 @@ +import sys +import pygame +import random + + +pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + +clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + +clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/model.py b/model.py new file mode 100644 index 0000000..ddbccc5 --- /dev/null +++ b/model.py @@ -0,0 +1,20 @@ +class Model(object): + def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) diff --git a/viewer.py b/viewer.py new file mode 100644 index 0000000..4765c2f --- /dev/null +++ b/viewer.py @@ -0,0 +1,20 @@ +class Viewer(objects): + def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 From 8397f51366fd8d3be71e3c696f670d004e2b4520 Mon Sep 17 00:00:00 2001 From: Prabha Dublish Date: Thu, 27 Oct 2016 16:54:21 -0400 Subject: [PATCH 14/26] Updated --- main.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/main.py b/main.py index bcf7e35..9f60254 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,9 @@ import sys import pygame import random +from model import * +from viewer import * +from controller import * pygame.display.init() @@ -46,7 +49,7 @@ clock.tick(FPS) -gameLoop() +controller.control.gameLoop() pygame.display.quit() pygame.quit() From 04c1ad88b3a7cd5d5c790be712e8aedd4ebe4157 Mon Sep 17 00:00:00 2001 From: Prabha Dublish Date: Fri, 28 Oct 2016 17:03:55 -0400 Subject: [PATCH 15/26] Adding comments and adding food and rainbow images --- main.py | 221 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 205 insertions(+), 16 deletions(-) diff --git a/main.py b/main.py index 9f60254..597b9ff 100644 --- a/main.py +++ b/main.py @@ -1,14 +1,12 @@ import sys import pygame import random -from model import * -from viewer import * -from controller import * - +# Initliizlies PyGame Window & Gameover Font pygame.display.init() pygame.font.init() +# Defineing Color RGB Values for GUI elements white = (255, 255, 255) black = (0, 0,0 ) red = (255, 0, 0) @@ -17,11 +15,16 @@ brick = (144, 69, 53) sky_blue= (52, 152, 219) +# Sets size of display display_width = 1200 display_height = 1200 + +# Sets Top of game Windoe Caption gameDisplay = pygame.display.set_mode((display_width,display_height)) pygame.display.set_caption('Unicorn Squad') +image_pixels = 50 +# Defines close of game (Ends program) running = True while running == True: for event in pygame.event.get(): @@ -29,27 +32,213 @@ running = False break + # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px gameDisplay.fill(sky_blue) - unicorn = pygame.image.load('unicorn.png') - unicorn = pygame.transform.scale(unicorn, (50, 50)) - rainbow = pygame.image.load('rainbow.png') - rainbow = pygame.transform.scale(rainbow, (50, 50)) - food = pygame.image.load('food.png') - food = pygame.transform.scale(food, (50, 50)) + unicorn = pygame.image.load('static/unicorn.png') + unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) + rainbow = pygame.image.load('static/rainbow.png') + rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) + food = pygame.image.load('static/food.png') + food = pygame.transform.scale(food, (image_pixels, image_pixels)) -clock = pygame.time.Clock() + clock = pygame.time.Clock() -block_size = 20 -FPS = 15 +# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay +FPS = 10 + +# Initial directio of character sprite direction = "right" -font = pygame.font.SysFont(None, 25) +# Aiisgns font & font size 25 pixels +font = pygame.font.SysFont(None, 55) + + +# Initlizes up down left right actions +def snake(image_pixels, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + +# Initliazes text object +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + +# Defines display message with color variable +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + +# Sets counnt positoin +def score_to_screen(msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + gameDisplay.blit(textSurf, textRect) + + + +# Main game engine - +def gameLoop(): + global direction + # Sets game exit variblaes to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (HItting the walls or your own tail) + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + # Snake size array + snakeList = [] + # Sets inital snake length (Snake head counts as 1) + snakeLength = 1 + player_score = 0 + + + # Randomly places next block + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + + # View + while not gameExit: + # Game over viwe + while gameOver == True: + # Sets window to white + gameDisplay.fill(white) + # Sets message text, color, and positoin + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + if event.key == pygame.K_c: + gameLoop() + + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -image_pixels + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = image_pixels + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -image_pixels + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = image_pixels + lead_x_change = 0 + + # If you go outside game area horizontlal or vertically + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + # Defines game ares as skyblue + gameDisplay.fill(sky_blue) + + + # Sets carroat ad player treat and sets random x y coordinates + # Sets square thickness + + gameDisplay.blit(food, (randAppleX,randAppleY)) + + + unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(lead_x) + snakeHead.append(lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList) + + score_to_screen(str(player_score), white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if lead_y > randAppleY and lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + + + -clock.tick(FPS) + # Rate of referesh + clock.tick(FPS) -controller.control.gameLoop() +gameLoop() pygame.display.quit() pygame.quit() From 0cf8a7107be14baabdaedf4e27a36c3eed38c5fe Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Sun, 30 Oct 2016 16:17:55 -0400 Subject: [PATCH 16/26] updated working code --- main.py | 33 ++++--- main.py~ | 241 ++++++++++++++++++++++++++++++++++++++++++++++++++++ v.0.1.0.py | 2 +- v.0.1.0.py~ | 190 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 447 insertions(+), 19 deletions(-) create mode 100644 main.py~ create mode 100644 v.0.1.0.py~ diff --git a/main.py b/main.py index 597b9ff..472e5be 100644 --- a/main.py +++ b/main.py @@ -24,24 +24,17 @@ pygame.display.set_caption('Unicorn Squad') image_pixels = 50 -# Defines close of game (Ends program) -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - break - - # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px - gameDisplay.fill(sky_blue) - unicorn = pygame.image.load('static/unicorn.png') - unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) - rainbow = pygame.image.load('static/rainbow.png') - rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) - food = pygame.image.load('static/food.png') - food = pygame.transform.scale(food, (image_pixels, image_pixels)) - - clock = pygame.time.Clock() + +# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px +gameDisplay.fill(sky_blue) +unicorn = pygame.image.load('unicorn.png') +unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) +rainbow = pygame.image.load('rainbow.png') +rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) +food = pygame.image.load('food.png') +food = pygame.transform.scale(food, (image_pixels, image_pixels)) + +clock = pygame.time.Clock() # The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay @@ -121,8 +114,10 @@ def gameLoop(): # View while not gameExit: + print 'not exit game' # Game over viwe while gameOver == True: + print 'game over' # Sets window to white gameDisplay.fill(white) # Sets message text, color, and positoin @@ -143,9 +138,11 @@ def gameLoop(): gameExit = True if event.key == pygame.K_c: gameLoop() + print 'game over, loop over' # While game in progress (Maps keyboard actions to sprike movements) Controller for event in pygame.event.get(): + print 'event' if event.type == pygame.QUIT: gameExit = True if event.type == pygame.KEYDOWN: diff --git a/main.py~ b/main.py~ new file mode 100644 index 0000000..472e5be --- /dev/null +++ b/main.py~ @@ -0,0 +1,241 @@ +import sys +import pygame +import random + +# Initliizlies PyGame Window & Gameover Font +pygame.display.init() +pygame.font.init() + +# Defineing Color RGB Values for GUI elements +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +# Sets size of display +display_width = 1200 +display_height = 1200 + +# Sets Top of game Windoe Caption +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +image_pixels = 50 + +# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px +gameDisplay.fill(sky_blue) +unicorn = pygame.image.load('unicorn.png') +unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) +rainbow = pygame.image.load('rainbow.png') +rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) +food = pygame.image.load('food.png') +food = pygame.transform.scale(food, (image_pixels, image_pixels)) + +clock = pygame.time.Clock() + + +# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay +FPS = 10 + +# Initial directio of character sprite +direction = "right" + +# Aiisgns font & font size 25 pixels +font = pygame.font.SysFont(None, 55) + + +# Initlizes up down left right actions +def snake(image_pixels, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + +# Initliazes text object +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + +# Defines display message with color variable +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + +# Sets counnt positoin +def score_to_screen(msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + gameDisplay.blit(textSurf, textRect) + + + +# Main game engine - +def gameLoop(): + global direction + # Sets game exit variblaes to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (HItting the walls or your own tail) + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + # Snake size array + snakeList = [] + # Sets inital snake length (Snake head counts as 1) + snakeLength = 1 + player_score = 0 + + + # Randomly places next block + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + # Sets window to white + gameDisplay.fill(white) + # Sets message text, color, and positoin + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + if event.key == pygame.K_c: + gameLoop() + print 'game over, loop over' + + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + print 'event' + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -image_pixels + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = image_pixels + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -image_pixels + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = image_pixels + lead_x_change = 0 + + # If you go outside game area horizontlal or vertically + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + # Defines game ares as skyblue + gameDisplay.fill(sky_blue) + + + # Sets carroat ad player treat and sets random x y coordinates + # Sets square thickness + + gameDisplay.blit(food, (randAppleX,randAppleY)) + + + unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(lead_x) + snakeHead.append(lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList) + + score_to_screen(str(player_score), white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if lead_y > randAppleY and lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + + + + + # Rate of referesh + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/v.0.1.0.py b/v.0.1.0.py index 7f58e60..f6af339 100644 --- a/v.0.1.0.py +++ b/v.0.1.0.py @@ -3,7 +3,7 @@ import random -pygame.display.init() +#pygame.display.init() pygame.font.init() white = (255, 255, 255) diff --git a/v.0.1.0.py~ b/v.0.1.0.py~ new file mode 100644 index 0000000..f6af339 --- /dev/null +++ b/v.0.1.0.py~ @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +#pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + From 86b07d311c7315a9c99a867707b427a71d271f4f Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Sun, 30 Oct 2016 19:45:02 -0400 Subject: [PATCH 17/26] starting mvc --- controller.py | 84 ----------------- model.py | 20 ---- mvcmain.py | 246 ++++++++++++++++++++++++++++++++++++++++++++++++++ viewer.py | 20 ---- 4 files changed, 246 insertions(+), 124 deletions(-) delete mode 100644 controller.py delete mode 100644 model.py create mode 100644 mvcmain.py delete mode 100644 viewer.py diff --git a/controller.py b/controller.py deleted file mode 100644 index a967fc2..0000000 --- a/controller.py +++ /dev/null @@ -1,84 +0,0 @@ -class Controller(object): - def gameLoop(): - global direction - gameExit = False - gameOver = False - - lead_x = display_width/2 - lead_y = display_height/2 - - lead_x_change = 10 - lead_y_change = 0 - - snakeList = [] - snakeLength = 1 - - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - - while not gameExit: - - while gameOver == True: - gameDisplay.fill(white) - message_to_screen("Game over", red, y_displace=-50) - message_to_screen("Press C to play again or Q to quit",black, 50) - pygame.display.update() - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameOver = False - gameExit = True - - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_q: - gameExit = True - gameOver = False - if event.key == pygame.K_c: - gameLoop() - - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameExit = True - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_LEFT: - direction = "left" - lead_x_change = -block_size - lead_y_change = 0 - elif event.key == pygame.K_RIGHT: - direction = "right" - lead_x_change = block_size - lead_y_change = 0 - elif event.key == pygame.K_UP: - direction = "up" - lead_y_change = -block_size - lead_x_change = 0 - elif event.key == pygame.K_DOWN: - direction = "down" - lead_y_change = block_size - lead_x_change = 0 - - if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: - gameOver = True - - - lead_x += lead_x_change - lead_y += lead_y_change - - gameDisplay.fill(sky_blue) - - AppleThickness = 30 - pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) - - - snakeHead = [] - snakeHead.append(lead_x) - snakeHead.append(lead_y) - snakeList.append(snakeHead) - - if len(snakeList) > snakeLength: - del snakeList[0] - - for eachSegment in snakeList[:-1]: - if eachSegment == snakeHead: - gameOver = True diff --git a/model.py b/model.py deleted file mode 100644 index ddbccc5..0000000 --- a/model.py +++ /dev/null @@ -1,20 +0,0 @@ -class Model(object): - def snake(block_size, snakelist): - - if direction == "right": - head = unicorn - - if direction == "left": - head = pygame.transform.flip(unicorn, 1, 0) - - if direction == "up": - head = pygame.transform.rotate(unicorn, 90) - - if direction == "down": - head = pygame.transform.rotate(unicorn, 270) - - - gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) - - for XnY in snakelist[:-1]: - pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) diff --git a/mvcmain.py b/mvcmain.py new file mode 100644 index 0000000..b122aeb --- /dev/null +++ b/mvcmain.py @@ -0,0 +1,246 @@ +import sys +import pygame +import random + +# Sets size of display +display_width = 1200 +display_height = 1200 +image_pixels = 50 +# Randomly places next block +randAppleX = round(random.randrange(0, display_width-image_pixels)) +randAppleY = round(random.randrange(0, display_height-image_pixels)) + + +class viewer(object): + def __init__(self): + # Initliizlies PyGame Window & Gameover Font + pygame.display.init() + pygame.font.init() + + # Defineing Color RGB Values for GUI elements + self.white = (255, 255, 255) + self.sky_blue= (52, 152, 219) + + # Sets Top of game Window Caption + self.gameDisplay = pygame.display.set_mode((display_width,display_height)) + pygame.display.set_caption('Unicorn Squad') + + + + # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px + self.gameDisplay.fill(self.sky_blue) + self.unicorn = pygame.image.load('unicorn.png') + self.unicorn = pygame.transform.scale(self.unicorn, (image_pixels, image_pixels)) + self.rainbow = pygame.image.load('rainbow.png') + self.rainbow = pygame.transform.scale(self.rainbow, (image_pixels, image_pixels)) + self.food = pygame.image.load('food.png') + self.food = pygame.transform.scale(self.food, (image_pixels, image_pixels)) + + self.clock = pygame.time.Clock() + + + # The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay + self.FPS = 10 + + # Aiisgns font & font size 25 pixels + font = pygame.font.SysFont(None, 55) + + def drawapple(self): + self.gameDisplay.blit(self.food, (randAppleX,randAppleY)) + + + # Initlizes up down left right actions + def snake(self, image_pixels, snakelist, direction): + head = self.unicorn + + if direction == "left": + head = pygame.transform.flip(self.unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(self.unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(self.unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + + # Initliazes text object + def text_objects(self, text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + # Defines display message with color variable + def message_to_screen(self, msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + self.gameDisplay.blit(textSurf, textRect) + + # Sets counnt positoin + def score_to_screen(self, msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + self.gameDisplay.blit(textSurf, textRect) + + def gameover(self): + # Sets window to white + self.gameDisplay.fill(self.white) + # Sets message text, color, and positoin + self.message_to_screen("Game over", red, y_displace=-50) + self.message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + +class model(object): + def __init__(self): + self.lead_x = display_width/2 + self.lead_y = display_height/2 + + self.lead_x_change = 10 + self.lead_y_change = 0 + + # Snake size array + self.snakeList = [] + # Sets inital snake length (Snake head counts as 1) + self.snakeLength = 1 + self.player_score = 0 + + # Initial direction of character sprite + self.direction = "right" + + # If you go outside game area horizontlal or vertically + + def snakemodel(self): + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + if self.lead_x >= display_width or self.lead_x < 0 or self.lead_y >= display_height or self.lead_y < 0: + gameOver = True + + self.unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(self.lead_x) + snakeHead.append(self.lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList, direction) + + score_to_screen(str(player_score), self.white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if self.lead_x > randAppleX and self.lead_x < randAppleX + image_pixels or self.lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if self.lead_y > randAppleY and self.lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif self.lead_y + image_pixels > randAppleY and self.lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + +class controller(object): + def gameovercontrol(self): + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + return gameOver, gameExit + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + return gameOver, gameExit + + if event.key == pygame.K_c: + gameLoop() + + def movement(self, gamemodel): + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + return gameExit + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + gamemodel.direction = "left" + gamemodel.lead_x_change = -image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + gamemodel.direction = "right" + gamemodel.lead_x_change = image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_UP: + gamemodel.direction = "up" + gamemodel. lead_y_change = -image_pixels + gamemodel.lead_x_change = 0 + elif event.key == pygame.K_DOWN: + gamemodel.direction = "down" + gamemodel.lead_y_change = image_pixels + gamemodel.lead_x_change = 0 + return False + + +# Main game engine - +def gameLoop(): + drawer = viewer() + game = model() + control = controller() + # global direction + # # Defines game ares as skyblue + # + # + # # Sets game exit varibles to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (Hitting the walls or your own tail) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + drawer.gameover() + control.gameovercontrol() + gameExit = control.movement(game) + + + + # Rate of referesh + drawer.clock.tick(drawer.FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/viewer.py b/viewer.py deleted file mode 100644 index 4765c2f..0000000 --- a/viewer.py +++ /dev/null @@ -1,20 +0,0 @@ -class Viewer(objects): - def message_to_screen(msg,color, y_displace=0): - textSurf, textRect = text_objects(msg,color) - textRect.center = (display_width / 2), (display_height / 2)+y_displace - gameDisplay.blit(textSurf, textRect) - def text_objects(text,color): - textSurface = font.render(text, True, color) - return textSurface, textSurface.get_rect() - - if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: - - if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 - - elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 From 7bf846299750fca1c10e091e7903931aaba1d6c9 Mon Sep 17 00:00:00 2001 From: agrant4 Date: Sun, 30 Oct 2016 22:53:19 -0400 Subject: [PATCH 18/26] How to run our game --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3181463..af97ffc 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # InteractiveProgramming +Prabha Dublish, Alex Grant, Jonathan Kohlmeier + +Unicorn Squad + +To play this game you must run the main.py file. In order to move the unicorn, press the arrow keys. If you run into yourself or naviagte outside of the game window, the game will end. -This is the base repo for the interactive programming project for Software Design, Fall 2016 at Olin College. -This file is not a good project README. -Replace the contents of this file before you submit your project. \ No newline at end of file From a2b0bdb575566c344b5327e5f342704470cf8c39 Mon Sep 17 00:00:00 2001 From: agrant4 Date: Sun, 30 Oct 2016 22:54:37 -0400 Subject: [PATCH 19/26] Game Directions --- main.py | 241 ++++++++++++++++++++++++++++++++++++++++ main.py~ | 241 ++++++++++++++++++++++++++++++++++++++++ mvcmain.py | 246 +++++++++++++++++++++++++++++++++++++++++ v.0.0.3 => v.0.0.3.py~ | 11 +- v.0.0.3~ | 32 ++++++ v.0.0.4.py~ | 190 +++++++++++++++++++++++++++++++ v.0.1.0.py | 190 +++++++++++++++++++++++++++++++ v.0.1.0.py~ | 190 +++++++++++++++++++++++++++++++ 8 files changed, 1338 insertions(+), 3 deletions(-) create mode 100644 main.py create mode 100644 main.py~ create mode 100644 mvcmain.py rename v.0.0.3 => v.0.0.3.py~ (75%) create mode 100644 v.0.0.3~ create mode 100644 v.0.0.4.py~ create mode 100644 v.0.1.0.py create mode 100644 v.0.1.0.py~ diff --git a/main.py b/main.py new file mode 100644 index 0000000..472e5be --- /dev/null +++ b/main.py @@ -0,0 +1,241 @@ +import sys +import pygame +import random + +# Initliizlies PyGame Window & Gameover Font +pygame.display.init() +pygame.font.init() + +# Defineing Color RGB Values for GUI elements +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +# Sets size of display +display_width = 1200 +display_height = 1200 + +# Sets Top of game Windoe Caption +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +image_pixels = 50 + +# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px +gameDisplay.fill(sky_blue) +unicorn = pygame.image.load('unicorn.png') +unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) +rainbow = pygame.image.load('rainbow.png') +rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) +food = pygame.image.load('food.png') +food = pygame.transform.scale(food, (image_pixels, image_pixels)) + +clock = pygame.time.Clock() + + +# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay +FPS = 10 + +# Initial directio of character sprite +direction = "right" + +# Aiisgns font & font size 25 pixels +font = pygame.font.SysFont(None, 55) + + +# Initlizes up down left right actions +def snake(image_pixels, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + +# Initliazes text object +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + +# Defines display message with color variable +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + +# Sets counnt positoin +def score_to_screen(msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + gameDisplay.blit(textSurf, textRect) + + + +# Main game engine - +def gameLoop(): + global direction + # Sets game exit variblaes to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (HItting the walls or your own tail) + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + # Snake size array + snakeList = [] + # Sets inital snake length (Snake head counts as 1) + snakeLength = 1 + player_score = 0 + + + # Randomly places next block + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + # Sets window to white + gameDisplay.fill(white) + # Sets message text, color, and positoin + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + if event.key == pygame.K_c: + gameLoop() + print 'game over, loop over' + + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + print 'event' + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -image_pixels + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = image_pixels + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -image_pixels + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = image_pixels + lead_x_change = 0 + + # If you go outside game area horizontlal or vertically + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + # Defines game ares as skyblue + gameDisplay.fill(sky_blue) + + + # Sets carroat ad player treat and sets random x y coordinates + # Sets square thickness + + gameDisplay.blit(food, (randAppleX,randAppleY)) + + + unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(lead_x) + snakeHead.append(lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList) + + score_to_screen(str(player_score), white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if lead_y > randAppleY and lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + + + + + # Rate of referesh + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/main.py~ b/main.py~ new file mode 100644 index 0000000..472e5be --- /dev/null +++ b/main.py~ @@ -0,0 +1,241 @@ +import sys +import pygame +import random + +# Initliizlies PyGame Window & Gameover Font +pygame.display.init() +pygame.font.init() + +# Defineing Color RGB Values for GUI elements +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +# Sets size of display +display_width = 1200 +display_height = 1200 + +# Sets Top of game Windoe Caption +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +image_pixels = 50 + +# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px +gameDisplay.fill(sky_blue) +unicorn = pygame.image.load('unicorn.png') +unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) +rainbow = pygame.image.load('rainbow.png') +rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) +food = pygame.image.load('food.png') +food = pygame.transform.scale(food, (image_pixels, image_pixels)) + +clock = pygame.time.Clock() + + +# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay +FPS = 10 + +# Initial directio of character sprite +direction = "right" + +# Aiisgns font & font size 25 pixels +font = pygame.font.SysFont(None, 55) + + +# Initlizes up down left right actions +def snake(image_pixels, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + +# Initliazes text object +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + +# Defines display message with color variable +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + +# Sets counnt positoin +def score_to_screen(msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + gameDisplay.blit(textSurf, textRect) + + + +# Main game engine - +def gameLoop(): + global direction + # Sets game exit variblaes to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (HItting the walls or your own tail) + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + # Snake size array + snakeList = [] + # Sets inital snake length (Snake head counts as 1) + snakeLength = 1 + player_score = 0 + + + # Randomly places next block + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + # Sets window to white + gameDisplay.fill(white) + # Sets message text, color, and positoin + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + if event.key == pygame.K_c: + gameLoop() + print 'game over, loop over' + + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + print 'event' + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -image_pixels + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = image_pixels + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -image_pixels + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = image_pixels + lead_x_change = 0 + + # If you go outside game area horizontlal or vertically + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + # Defines game ares as skyblue + gameDisplay.fill(sky_blue) + + + # Sets carroat ad player treat and sets random x y coordinates + # Sets square thickness + + gameDisplay.blit(food, (randAppleX,randAppleY)) + + + unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(lead_x) + snakeHead.append(lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList) + + score_to_screen(str(player_score), white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if lead_y > randAppleY and lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + + + + + # Rate of referesh + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/mvcmain.py b/mvcmain.py new file mode 100644 index 0000000..b122aeb --- /dev/null +++ b/mvcmain.py @@ -0,0 +1,246 @@ +import sys +import pygame +import random + +# Sets size of display +display_width = 1200 +display_height = 1200 +image_pixels = 50 +# Randomly places next block +randAppleX = round(random.randrange(0, display_width-image_pixels)) +randAppleY = round(random.randrange(0, display_height-image_pixels)) + + +class viewer(object): + def __init__(self): + # Initliizlies PyGame Window & Gameover Font + pygame.display.init() + pygame.font.init() + + # Defineing Color RGB Values for GUI elements + self.white = (255, 255, 255) + self.sky_blue= (52, 152, 219) + + # Sets Top of game Window Caption + self.gameDisplay = pygame.display.set_mode((display_width,display_height)) + pygame.display.set_caption('Unicorn Squad') + + + + # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px + self.gameDisplay.fill(self.sky_blue) + self.unicorn = pygame.image.load('unicorn.png') + self.unicorn = pygame.transform.scale(self.unicorn, (image_pixels, image_pixels)) + self.rainbow = pygame.image.load('rainbow.png') + self.rainbow = pygame.transform.scale(self.rainbow, (image_pixels, image_pixels)) + self.food = pygame.image.load('food.png') + self.food = pygame.transform.scale(self.food, (image_pixels, image_pixels)) + + self.clock = pygame.time.Clock() + + + # The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay + self.FPS = 10 + + # Aiisgns font & font size 25 pixels + font = pygame.font.SysFont(None, 55) + + def drawapple(self): + self.gameDisplay.blit(self.food, (randAppleX,randAppleY)) + + + # Initlizes up down left right actions + def snake(self, image_pixels, snakelist, direction): + head = self.unicorn + + if direction == "left": + head = pygame.transform.flip(self.unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(self.unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(self.unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + + # Initliazes text object + def text_objects(self, text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + # Defines display message with color variable + def message_to_screen(self, msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + self.gameDisplay.blit(textSurf, textRect) + + # Sets counnt positoin + def score_to_screen(self, msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + self.gameDisplay.blit(textSurf, textRect) + + def gameover(self): + # Sets window to white + self.gameDisplay.fill(self.white) + # Sets message text, color, and positoin + self.message_to_screen("Game over", red, y_displace=-50) + self.message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + +class model(object): + def __init__(self): + self.lead_x = display_width/2 + self.lead_y = display_height/2 + + self.lead_x_change = 10 + self.lead_y_change = 0 + + # Snake size array + self.snakeList = [] + # Sets inital snake length (Snake head counts as 1) + self.snakeLength = 1 + self.player_score = 0 + + # Initial direction of character sprite + self.direction = "right" + + # If you go outside game area horizontlal or vertically + + def snakemodel(self): + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + if self.lead_x >= display_width or self.lead_x < 0 or self.lead_y >= display_height or self.lead_y < 0: + gameOver = True + + self.unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(self.lead_x) + snakeHead.append(self.lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList, direction) + + score_to_screen(str(player_score), self.white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if self.lead_x > randAppleX and self.lead_x < randAppleX + image_pixels or self.lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if self.lead_y > randAppleY and self.lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif self.lead_y + image_pixels > randAppleY and self.lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + +class controller(object): + def gameovercontrol(self): + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + return gameOver, gameExit + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + return gameOver, gameExit + + if event.key == pygame.K_c: + gameLoop() + + def movement(self, gamemodel): + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + return gameExit + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + gamemodel.direction = "left" + gamemodel.lead_x_change = -image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + gamemodel.direction = "right" + gamemodel.lead_x_change = image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_UP: + gamemodel.direction = "up" + gamemodel. lead_y_change = -image_pixels + gamemodel.lead_x_change = 0 + elif event.key == pygame.K_DOWN: + gamemodel.direction = "down" + gamemodel.lead_y_change = image_pixels + gamemodel.lead_x_change = 0 + return False + + +# Main game engine - +def gameLoop(): + drawer = viewer() + game = model() + control = controller() + # global direction + # # Defines game ares as skyblue + # + # + # # Sets game exit varibles to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (Hitting the walls or your own tail) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + drawer.gameover() + control.gameovercontrol() + gameExit = control.movement(game) + + + + # Rate of referesh + drawer.clock.tick(drawer.FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/v.0.0.3 b/v.0.0.3.py~ similarity index 75% rename from v.0.0.3 rename to v.0.0.3.py~ index 5eab3c0..8f22bed 100644 --- a/v.0.0.3 +++ b/v.0.0.3.py~ @@ -1,5 +1,7 @@ +import sys import pygame -pygame.init() + +pygame.display.init() white = (255, 255, 255) black = (0, 0,0 ) @@ -7,6 +9,7 @@ red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) brick = (144, 69, 53) +sky_blue= (52, 152, 219) gameDisplay = pygame.display.set_mode((800,800)) pygame.display.set_caption('Unicorn Squad') @@ -16,9 +19,11 @@ while running == True: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False + break - gameDisplay.fill(brick) + gameDisplay.fill(sky_blue) pygame.display.update() -pygame.quit() +pygame.display.quit() + diff --git a/v.0.0.3~ b/v.0.0.3~ new file mode 100644 index 0000000..f779061 --- /dev/null +++ b/v.0.0.3~ @@ -0,0 +1,32 @@ +import sys +import pygame +pygame.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + + gameDisplay.fill(sky_blue) + + pygame.display.update() + + +print "hello" +pygame.display.quit() +print "hello" +print "hello" +print "hello" +d diff --git a/v.0.0.4.py~ b/v.0.0.4.py~ new file mode 100644 index 0000000..efd80f0 --- /dev/null +++ b/v.0.0.4.py~ @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(white) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + diff --git a/v.0.1.0.py b/v.0.1.0.py new file mode 100644 index 0000000..f6af339 --- /dev/null +++ b/v.0.1.0.py @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +#pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + diff --git a/v.0.1.0.py~ b/v.0.1.0.py~ new file mode 100644 index 0000000..f6af339 --- /dev/null +++ b/v.0.1.0.py~ @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +#pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + From 0efdd27e0b0b8516989b1f252f46edd171416300 Mon Sep 17 00:00:00 2001 From: agrant4 Date: Sun, 30 Oct 2016 22:55:58 -0400 Subject: [PATCH 20/26] Directions to play our game --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3181463..af97ffc 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # InteractiveProgramming +Prabha Dublish, Alex Grant, Jonathan Kohlmeier + +Unicorn Squad + +To play this game you must run the main.py file. In order to move the unicorn, press the arrow keys. If you run into yourself or naviagte outside of the game window, the game will end. -This is the base repo for the interactive programming project for Software Design, Fall 2016 at Olin College. -This file is not a good project README. -Replace the contents of this file before you submit your project. \ No newline at end of file From 3b8c660df28ae836ebbbaf4e208f1a67d98d9deb Mon Sep 17 00:00:00 2001 From: agrant4 Date: Mon, 31 Oct 2016 01:48:49 -0400 Subject: [PATCH 21/26] Add files via upload --- game.py | 282 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 282 insertions(+) create mode 100644 game.py diff --git a/game.py b/game.py new file mode 100644 index 0000000..d697114 --- /dev/null +++ b/game.py @@ -0,0 +1,282 @@ +import sys +import pygame +import random + +class GameManager(object): #*args, **kwargs + def __init__(self, **kwargs): + # Initliizlies PyGame Window & Gameover Font + pygame.display.init() + pygame.font.init() + + # Defineing Color RGB Values for GUI elements + self.white = (255, 255, 255) + self.black = (0, 0,0 ) + self.red = (255, 0, 0) + self.green = (0, 255, 0) + self.blue = (0, 0, 255) + self.brick = (144, 69, 53) + self.sky_blue= (52, 152, 219) + + self.display_width = kwargs.pop('display_width') + self.display_height = kwargs.pop('display_height') + + self.game_display = pygame.display.set_mode((self.display_width,self.display_height)) + self.game_display.fill(self.sky_blue) + if 'caption' in kwargs: + pygame.display.set_caption(caption) + else: + pygame.display.set_caption('Unicorn Squad') + + self.clock = pygame.time.Clock() + if 'FPS' in kwargs: + self.FPS = kwargs.pop('FPS') + else: + self.FPS = 10 + + self.font = pygame.font.SysFont(None, 55) + + def game_did_quit(self): + gameExit = False + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + return gameExit + + def add_icon(self,icon,location): + self.game_display.blit(icon,location) + + def get_center(self): + return (self.display_width/2, self.display_height/2) + + def did_collide(self,obj1, obj2): + if obj1.x > obj2.x and obj1.x < obj2.x + obj2.image_width or obj1.x + obj1.image_width > obj2.x and obj1.x + obj1.image_width < obj2.x + obj2.image_width: + if obj1.y > obj2.y and obj1.y < obj2.y + obj2.image_height: + return True + elif obj1.y + obj1.image_height > obj2.y and obj1.y + obj1.image_height < obj2.y + obj2.image_height: + return True + return False + +#display_width,display_height, caption='Unicorn Squad', FPS=10 + +class SnakeGame(GameManager): + def __init__(self,**kwargs): + super(SnakeGame,self).__init__(**kwargs) + + def is_game_over(self,snake): + if snake.x >= self.display_width or snake.x < 0 or snake.y >= self.display_height or snake.y < 0: + return True + return False + + def fill_blue(self): + self.game_display.fill(self.sky_blue) + + # Initliazes text object + def text_objects(self, text, color): + textSurface = self.font.render(text, True, color) + return textSurface, textSurface.get_rect() + + # Defines display message with color variable + def message_to_screen(self, msg, color, y_displace=0): + textSurf, textRect = self.text_objects(msg,color) + textRect.center = (self.display_width / 2), (self.display_height / 2) + y_displace + self.game_display.blit(textSurf, textRect) + + def score_to_screen(self, msg, color): + textSurf, textRect = self.text_objects(msg, color) + textRect = (self.display_width - 50), (self.display_height - 50) + self.game_display.blit(textSurf, textRect) + +class Image(object): + def __init__(self,**kwargs): + self.start_pos = kwargs.pop('start_pos') #(x,y) + self.icon = pygame.image.load(kwargs.pop('icon')) + self.icon = pygame.transform.scale(self.icon, (kwargs.pop('image_width'), kwargs.pop('image_height'))) + self.x = self.start_pos[0] + self.y = self.start_pos[1] + if 'image_width' in kwargs: + self.image_width = kwargs.pop('image_width') + else: + self.image_width = 50 + if 'image_height' in kwargs: + self.image_height = kwargs.pop('image_height') + else: + self.image_height = 50 + + +#start_pos=(0,0),icon='food.png', image_width=50, image_height=50 + +class Carrot(Image): + def __init__(self,**kwargs): + super(Carrot,self).__init__(**kwargs) + + def set_random_location(self,display_width,display_height): + self.x = round(random.randrange(0, display_width-self.image_width)) + self.y = round(random.randrange(0, display_height-self.image_height)) + self.start_pos = (self.x,self.y) + +class Rainbow(Image): + def __init__(self, **kwargs): + super(Rainbow,self).__init__(**kwargs) + +class Snake(Image): + def __init__(self,**kwargs): + super(Snake,self).__init__(**kwargs) + self.tail_list = [] + self.tail_size = 1 + self.direction = "right" + self.delta_y = 0 + self.delta_x = 40 + + def add_to_tail(self): + gameOver = False + snake_head = [] + snake_head.append(self.x) + snake_head.append(self.y) + + self.tail_list.append(snake_head) + + if len(self.tail_list) > self.tail_size: + del self.tail_list[0] + + for eachSegment in self.tail_list[:-1]: + if eachSegment == snake_head: + gameOver = True + + return gameOver + + def handle_tail(self): + if self.direction == "right": + head = self.icon + + if self.direction == "left": + head = pygame.transform.flip(self.icon, 1, 0) + + if self.direction == "up": + head = pygame.transform.rotate(self.icon, 90) + + if self.direction == "down": + head = pygame.transform.rotate(self.icon, 270) + + return head + + + def process_move(self): + gameExit = False + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + self.direction = "left" + self.delta_x = -self.image_width + self.delta_y = 0 + elif event.key == pygame.K_RIGHT: + self.direction = "right" + self.delta_x = self.image_width + self.delta_y = 0 + elif event.key == pygame.K_UP: + self.direction = "up" + self.delta_y = -self.image_height + self.delta_x = 0 + elif event.key == pygame.K_DOWN: + self.direction = "down" + self.delta_y = self.image_height + self.delta_x = 0 + return gameExit + + def move(self): + self.x += self.delta_x + self.y += self.delta_y + # self.delta_x = 0 + # self.delta_y = 0 + +class Player: + def __init__(self): + self.player_score = 0 + + def set_score(self,score): + self.player_score = score + + def increase_score(self): + self.player_score += 1 + + def decrease_score(self): + self.player_score -= 1 + + def reset_score(self): + self.player_score = 0 + +def run_game(display_width,display_height): + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (Hitting the walls or your own tail) + game = SnakeGame(display_width=display_width,display_height=display_height) + player = Player() + + snake = Snake(start_pos=game.get_center(),image_height=50,image_width=50, icon="unicorn.png") + + carrot = Carrot(icon='food.png',image_height=50,image_width=50, start_pos=(0,0)) + carrot.set_random_location(display_width,display_height) + + while not gameExit: + while gameOver: + game.game_display.fill(game.white) + game.message_to_screen("Game Over!", game.red, -50) + game.message_to_screen("Press C to play again, or Q to quit", game.black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + exit() + if event.key == pygame.K_c: + run_game(display_width,display_height) + + gameExit = snake.process_move() + + + snake.move() + + gameOver = game.is_game_over(snake) + + + #fill blue + game.fill_blue() + + game.add_icon(carrot.icon,(carrot.x,carrot.y)) + + gameOver2 = snake.add_to_tail() + if not gameOver: + gameOver = gameOver2 + head = snake.handle_tail() #drawing snake + + # defines movement of snake tail + game.game_display.blit(head, (snake.tail_list[-1][0], snake.tail_list[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snake.tail_list[:-1]: + rainbow = Rainbow(icon="rainbow.png", image_height=50, image_width=50, start_pos=(0,0)).icon + game.game_display.blit(rainbow,(XnY[0], XnY[1])) + + game.score_to_screen(str(player.player_score), game.white) + + pygame.display.update() + + if (game.did_collide(snake,carrot)): + carrot.set_random_location(display_width,display_height) + snake.tail_size += 1 + player.increase_score() + + game.clock.tick(game.FPS) + + + pygame.display.quit(str()) + pygame.quit() + +run_game(800,600) \ No newline at end of file From 50de69ce6dc5ce5de0758ba2f5a1829e3a04937d Mon Sep 17 00:00:00 2001 From: agrant4 Date: Mon, 31 Oct 2016 01:50:02 -0400 Subject: [PATCH 22/26] Updated instructions to match file name --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index af97ffc..0c351cd 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,6 @@ Prabha Dublish, Alex Grant, Jonathan Kohlmeier Unicorn Squad -To play this game you must run the main.py file. In order to move the unicorn, press the arrow keys. If you run into yourself or naviagte outside of the game window, the game will end. +To play this game you must run the game.py file. In order to move the unicorn, press the arrow keys. If you run into yourself or naviagte outside of the game window, the game will end. From c096d97dbdf27600d1a4b0f8b001191fce48f3ce Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Mon, 31 Oct 2016 09:25:09 -0400 Subject: [PATCH 23/26] turing in final code --- .idea/InteractiveProgramming.iml | 11 + .idea/misc.xml | 14 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .idea/workspace.xml | 412 +++++++++++++++++++ mvcmain.py | 246 ----------- Task List => old/Task List | 0 main.py => old/main.py | 0 old/mvcmain.py | 243 +++++++++++ unicornflipped.png => old/unicornflipped.png | Bin v.0.1.0.py => old/v.0.1.0.py | 0 11 files changed, 694 insertions(+), 246 deletions(-) create mode 100644 .idea/InteractiveProgramming.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml delete mode 100644 mvcmain.py rename Task List => old/Task List (100%) rename main.py => old/main.py (100%) create mode 100644 old/mvcmain.py rename unicornflipped.png => old/unicornflipped.png (100%) rename v.0.1.0.py => old/v.0.1.0.py (100%) diff --git a/.idea/InteractiveProgramming.iml b/.idea/InteractiveProgramming.iml new file mode 100644 index 0000000..6711606 --- /dev/null +++ b/.idea/InteractiveProgramming.iml @@ -0,0 +1,11 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..cd9d35b --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..39eb916 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..0bcb009 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,412 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + DEFINITION_ORDER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1477871590384 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mvcmain.py b/mvcmain.py deleted file mode 100644 index b122aeb..0000000 --- a/mvcmain.py +++ /dev/null @@ -1,246 +0,0 @@ -import sys -import pygame -import random - -# Sets size of display -display_width = 1200 -display_height = 1200 -image_pixels = 50 -# Randomly places next block -randAppleX = round(random.randrange(0, display_width-image_pixels)) -randAppleY = round(random.randrange(0, display_height-image_pixels)) - - -class viewer(object): - def __init__(self): - # Initliizlies PyGame Window & Gameover Font - pygame.display.init() - pygame.font.init() - - # Defineing Color RGB Values for GUI elements - self.white = (255, 255, 255) - self.sky_blue= (52, 152, 219) - - # Sets Top of game Window Caption - self.gameDisplay = pygame.display.set_mode((display_width,display_height)) - pygame.display.set_caption('Unicorn Squad') - - - - # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px - self.gameDisplay.fill(self.sky_blue) - self.unicorn = pygame.image.load('unicorn.png') - self.unicorn = pygame.transform.scale(self.unicorn, (image_pixels, image_pixels)) - self.rainbow = pygame.image.load('rainbow.png') - self.rainbow = pygame.transform.scale(self.rainbow, (image_pixels, image_pixels)) - self.food = pygame.image.load('food.png') - self.food = pygame.transform.scale(self.food, (image_pixels, image_pixels)) - - self.clock = pygame.time.Clock() - - - # The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay - self.FPS = 10 - - # Aiisgns font & font size 25 pixels - font = pygame.font.SysFont(None, 55) - - def drawapple(self): - self.gameDisplay.blit(self.food, (randAppleX,randAppleY)) - - - # Initlizes up down left right actions - def snake(self, image_pixels, snakelist, direction): - head = self.unicorn - - if direction == "left": - head = pygame.transform.flip(self.unicorn, 1, 0) - - if direction == "up": - head = pygame.transform.rotate(self.unicorn, 90) - - if direction == "down": - head = pygame.transform.rotate(self.unicorn, 270) - - # deifnes movement of snake tail - gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) - - # defines adding of rainbow image to user sprite - for XnY in snakelist[:-1]: - gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) - - # Initliazes text object - def text_objects(self, text,color): - textSurface = font.render(text, True, color) - return textSurface, textSurface.get_rect() - - # Defines display message with color variable - def message_to_screen(self, msg,color, y_displace=0): - textSurf, textRect = text_objects(msg,color) - textRect.center = (display_width / 2), (display_height / 2)+y_displace - self.gameDisplay.blit(textSurf, textRect) - - # Sets counnt positoin - def score_to_screen(self, msg, color): - textSurf, textRect = text_objects(msg,color) - textRect = (display_width -50), (display_height -50) - self.gameDisplay.blit(textSurf, textRect) - - def gameover(self): - # Sets window to white - self.gameDisplay.fill(self.white) - # Sets message text, color, and positoin - self.message_to_screen("Game over", red, y_displace=-50) - self.message_to_screen("Press C to play again or Q to quit",black, 50) - pygame.display.update() - -class model(object): - def __init__(self): - self.lead_x = display_width/2 - self.lead_y = display_height/2 - - self.lead_x_change = 10 - self.lead_y_change = 0 - - # Snake size array - self.snakeList = [] - # Sets inital snake length (Snake head counts as 1) - self.snakeLength = 1 - self.player_score = 0 - - # Initial direction of character sprite - self.direction = "right" - - # If you go outside game area horizontlal or vertically - - def snakemodel(self): - # Change player coordinates based on user action - lead_x += lead_x_change - lead_y += lead_y_change - - if self.lead_x >= display_width or self.lead_x < 0 or self.lead_y >= display_height or self.lead_y < 0: - gameOver = True - - self.unicorn - # Defines snake head as an empty deict - snakeHead = [] - # Appends Initial X and Y coordinates to the snake head - snakeHead.append(self.lead_x) - snakeHead.append(self.lead_y) - # Adds snake head to sake body. Snkae body is an empty dict - snakeList.append(snakeHead) - - - if len(snakeList) > snakeLength: - del snakeList[0] - - # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head - # ie the snake is overlapping itslef and it runs the game over sequensce - for eachSegment in snakeList[:-1]: - if eachSegment == snakeHead: - gameOver = True - - # Initlizes the snakeList - snake(image_pixels, snakeList, direction) - - score_to_screen(str(player_score), self.white) - - # Updates the screen screen with new movement - pygame.display.update() - - # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list - if self.lead_x > randAppleX and self.lead_x < randAppleX + image_pixels or self.lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: - - if self.lead_y > randAppleY and self.lead_y < randAppleY + image_pixels: - randAppleX = round(random.randrange(0, display_width-image_pixels)) - randAppleY = round(random.randrange(0, display_height-image_pixels)) - snakeLength += 1 - player_score += 1 - - - elif self.lead_y + image_pixels > randAppleY and self.lead_y + image_pixels < randAppleY + image_pixels: - randAppleX = round(random.randrange(0, display_width-image_pixels)) - randAppleY = round(random.randrange(0, display_height-image_pixels)) - snakeLength += 1 - # Updates player score as well as as snake lenth - player_score += 1 - -class controller(object): - def gameovercontrol(self): - # Maps user close window actio to close og game window - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameOver = False - gameExit = True - return gameOver, gameExit - - # Maps keboard strokes to close game and redo game - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_q: - gameOver = False - gameExit = True - return gameOver, gameExit - - if event.key == pygame.K_c: - gameLoop() - - def movement(self, gamemodel): - # While game in progress (Maps keyboard actions to sprike movements) Controller - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameExit = True - return gameExit - - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_LEFT: - gamemodel.direction = "left" - gamemodel.lead_x_change = -image_pixels - gamemodel.lead_y_change = 0 - elif event.key == pygame.K_RIGHT: - gamemodel.direction = "right" - gamemodel.lead_x_change = image_pixels - gamemodel.lead_y_change = 0 - elif event.key == pygame.K_UP: - gamemodel.direction = "up" - gamemodel. lead_y_change = -image_pixels - gamemodel.lead_x_change = 0 - elif event.key == pygame.K_DOWN: - gamemodel.direction = "down" - gamemodel.lead_y_change = image_pixels - gamemodel.lead_x_change = 0 - return False - - -# Main game engine - -def gameLoop(): - drawer = viewer() - game = model() - control = controller() - # global direction - # # Defines game ares as skyblue - # - # - # # Sets game exit varibles to false - gameExit = False # HItting the close button (closing Window) - gameOver = False # Internal game over view (Hitting the walls or your own tail) - - # View - while not gameExit: - print 'not exit game' - # Game over viwe - while gameOver == True: - print 'game over' - drawer.gameover() - control.gameovercontrol() - gameExit = control.movement(game) - - - - # Rate of referesh - drawer.clock.tick(drawer.FPS) - - -gameLoop() - -pygame.display.quit() -pygame.quit() diff --git a/Task List b/old/Task List similarity index 100% rename from Task List rename to old/Task List diff --git a/main.py b/old/main.py similarity index 100% rename from main.py rename to old/main.py diff --git a/old/mvcmain.py b/old/mvcmain.py new file mode 100644 index 0000000..be1c1a2 --- /dev/null +++ b/old/mvcmain.py @@ -0,0 +1,243 @@ +import sys +import pygame +import random + +# Sets size of display +display_width = 1200 +display_height = 1200 +global image_pixels +image_pixels = 50 + +# Randomly places next block +randAppleX = round(random.randrange(0, display_width - image_pixels)) +randAppleY = round(random.randrange(0, display_height - image_pixels)) + + +class viewer(object): + def __init__(self): + # Initliizlies PyGame Window & Gameover Font + pygame.display.init() + pygame.font.init() + + # Defineing Color RGB Values for GUI elements + self.white = (255, 255, 255) + self.sky_blue = (52, 152, 219) + + # Sets Top of game Window Caption + self.gameDisplay = pygame.display.set_mode((display_width, display_height)) + pygame.display.set_caption('Unicorn Squad') + + # Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px + self.gameDisplay.fill(self.sky_blue) + self.unicorn = pygame.image.load('unicorn.png') + self.unicorn = pygame.transform.scale(self.unicorn, (image_pixels, image_pixels)) + self.rainbow = pygame.image.load('rainbow.png') + self.rainbow = pygame.transform.scale(self.rainbow, (image_pixels, image_pixels)) + self.food = pygame.image.load('food.png') + self.food = pygame.transform.scale(self.food, (image_pixels, image_pixels)) + + self.clock = pygame.time.Clock() + + # The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay + self.FPS = 10 + + # Aiisgns font & font size 25 pixels + font = pygame.font.SysFont(None, 55) + + def drawapple(self): + self.gameDisplay.blit(self.food, (randAppleX, randAppleY)) + + # Initlizes up down left right actions + def snake(self, image_pixels, snakelist, direction): + head = self.unicorn + + if direction == "left": + head = pygame.transform.flip(self.unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(self.unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(self.unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow, (XnY[0], XnY[1])) + + # Initliazes text object + def text_objects(self, text, color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + # Defines display message with color variable + def message_to_screen(self, msg, color, y_displace=0): + textSurf, textRect = text_objects(msg, color) + textRect.center = (display_width / 2), (display_height / 2) + y_displace + self.gameDisplay.blit(textSurf, textRect) + + # Sets counnt positoin + def score_to_screen(self, msg, color): + textSurf, textRect = text_objects(msg, color) + textRect = (display_width - 50), (display_height - 50) + self.gameDisplay.blit(textSurf, textRect) + + def gameover(self): + # Sets window to white + self.gameDisplay.fill(self.white) + # Sets message text, color, and positoin + self.message_to_screen("Game over", red, y_displace=-50) + self.message_to_screen("Press C to play again or Q to quit", black, 50) + pygame.display.update() + + +class model(object): + def __init__(self): + self.lead_x = display_width / 2 + self.lead_y = display_height / 2 + + self.lead_x_change = 10 + self.lead_y_change = 0 + + # Snake size array + self.snakeList = [] + # Sets inital snake length (Snake head counts as 1) + self.snakeLength = 1 + self.player_score = 0 + + # Initial direction of character sprite + self.direction = "right" + + # If you go outside game area horizontlal or vertically + + def snakemodel(self): + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + if self.lead_x >= display_width or self.lead_x < 0 or self.lead_y >= display_height or self.lead_y < 0: + gameOver = True + + self.unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(self.lead_x) + snakeHead.append(self.lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + model.snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList, direction) + + score_to_screen(str(player_score), self.white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if self.lead_x > randAppleX and self.lead_x < randAppleX + image_pixels or self.lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if self.lead_y > randAppleY and self.lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width - image_pixels)) + randAppleY = round(random.randrange(0, display_height - image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif self.lead_y + image_pixels > randAppleY and self.lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width - image_pixels)) + randAppleY = round(random.randrange(0, display_height - image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + +class controller(object): + def gameovercontrol(self): + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + return gameOver, gameExit + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + return gameOver, gameExit + + if event.key == pygame.K_c: + gameLoop() + + def movement(self, gamemodel): + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + return gameExit + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + gamemodel.direction = "left" + gamemodel.lead_x_change = -image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + gamemodel.direction = "right" + gamemodel.lead_x_change = image_pixels + gamemodel.lead_y_change = 0 + elif event.key == pygame.K_UP: + gamemodel.direction = "up" + gamemodel.lead_y_change = -image_pixels + gamemodel.lead_x_change = 0 + elif event.key == pygame.K_DOWN: + gamemodel.direction = "down" + gamemodel.lead_y_change = image_pixels + gamemodel.lead_x_change = 0 + return False + + +# Main game engine - +def gameLoop(): + drawer = viewer() + game = model() + control = controller() + # global direction + # # Defines game ares as skyblue + # + # + # # Sets game exit varibles to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (Hitting the walls or your own tail) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + drawer.gameover() + control.gameovercontrol() + gameExit = control.movement(game) + + # Rate of referesh + drawer.clock.tick(drawer.FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/unicornflipped.png b/old/unicornflipped.png similarity index 100% rename from unicornflipped.png rename to old/unicornflipped.png diff --git a/v.0.1.0.py b/old/v.0.1.0.py similarity index 100% rename from v.0.1.0.py rename to old/v.0.1.0.py From c827264daeb0284d2ed44847a04d5aa063711077 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Mon, 31 Oct 2016 10:19:41 -0400 Subject: [PATCH 24/26] cleaning up folder --- old/.idea/InteractiveProgramming.iml | 11 + old/.idea/misc.xml | 14 + old/.idea/modules.xml | 8 + old/.idea/vcs.xml | 6 + old/.idea/workspace.xml | 412 +++++++++++++++++++++++++++ old/main.py~ | 241 ++++++++++++++++ old/v.0.0.3.py~ | 29 ++ old/v.0.0.3~ | 32 +++ old/v.0.0.4.py~ | 190 ++++++++++++ old/v.0.1.0.py~ | 190 ++++++++++++ 10 files changed, 1133 insertions(+) create mode 100644 old/.idea/InteractiveProgramming.iml create mode 100644 old/.idea/misc.xml create mode 100644 old/.idea/modules.xml create mode 100644 old/.idea/vcs.xml create mode 100644 old/.idea/workspace.xml create mode 100644 old/main.py~ create mode 100644 old/v.0.0.3.py~ create mode 100644 old/v.0.0.3~ create mode 100644 old/v.0.0.4.py~ create mode 100644 old/v.0.1.0.py~ diff --git a/old/.idea/InteractiveProgramming.iml b/old/.idea/InteractiveProgramming.iml new file mode 100644 index 0000000..6711606 --- /dev/null +++ b/old/.idea/InteractiveProgramming.iml @@ -0,0 +1,11 @@ + + + + + + + + + + \ No newline at end of file diff --git a/old/.idea/misc.xml b/old/.idea/misc.xml new file mode 100644 index 0000000..cd9d35b --- /dev/null +++ b/old/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/old/.idea/modules.xml b/old/.idea/modules.xml new file mode 100644 index 0000000..39eb916 --- /dev/null +++ b/old/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/old/.idea/vcs.xml b/old/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/old/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/old/.idea/workspace.xml b/old/.idea/workspace.xml new file mode 100644 index 0000000..0bcb009 --- /dev/null +++ b/old/.idea/workspace.xml @@ -0,0 +1,412 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + DEFINITION_ORDER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1477871590384 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/old/main.py~ b/old/main.py~ new file mode 100644 index 0000000..472e5be --- /dev/null +++ b/old/main.py~ @@ -0,0 +1,241 @@ +import sys +import pygame +import random + +# Initliizlies PyGame Window & Gameover Font +pygame.display.init() +pygame.font.init() + +# Defineing Color RGB Values for GUI elements +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +# Sets size of display +display_width = 1200 +display_height = 1200 + +# Sets Top of game Windoe Caption +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +image_pixels = 50 + +# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px +gameDisplay.fill(sky_blue) +unicorn = pygame.image.load('unicorn.png') +unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) +rainbow = pygame.image.load('rainbow.png') +rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) +food = pygame.image.load('food.png') +food = pygame.transform.scale(food, (image_pixels, image_pixels)) + +clock = pygame.time.Clock() + + +# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay +FPS = 10 + +# Initial directio of character sprite +direction = "right" + +# Aiisgns font & font size 25 pixels +font = pygame.font.SysFont(None, 55) + + +# Initlizes up down left right actions +def snake(image_pixels, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + # deifnes movement of snake tail + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snakelist[:-1]: + gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) + +# Initliazes text object +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + +# Defines display message with color variable +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + +# Sets counnt positoin +def score_to_screen(msg, color): + textSurf, textRect = text_objects(msg,color) + textRect = (display_width -50), (display_height -50) + gameDisplay.blit(textSurf, textRect) + + + +# Main game engine - +def gameLoop(): + global direction + # Sets game exit variblaes to false + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (HItting the walls or your own tail) + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + # Snake size array + snakeList = [] + # Sets inital snake length (Snake head counts as 1) + snakeLength = 1 + player_score = 0 + + + # Randomly places next block + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + + # View + while not gameExit: + print 'not exit game' + # Game over viwe + while gameOver == True: + print 'game over' + # Sets window to white + gameDisplay.fill(white) + # Sets message text, color, and positoin + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + # Maps user close window actio to close og game window + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + if event.key == pygame.K_c: + gameLoop() + print 'game over, loop over' + + # While game in progress (Maps keyboard actions to sprike movements) Controller + for event in pygame.event.get(): + print 'event' + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -image_pixels + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = image_pixels + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -image_pixels + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = image_pixels + lead_x_change = 0 + + # If you go outside game area horizontlal or vertically + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + # Change player coordinates based on user action + lead_x += lead_x_change + lead_y += lead_y_change + + # Defines game ares as skyblue + gameDisplay.fill(sky_blue) + + + # Sets carroat ad player treat and sets random x y coordinates + # Sets square thickness + + gameDisplay.blit(food, (randAppleX,randAppleY)) + + + unicorn + # Defines snake head as an empty deict + snakeHead = [] + # Appends Initial X and Y coordinates to the snake head + snakeHead.append(lead_x) + snakeHead.append(lead_y) + # Adds snake head to sake body. Snkae body is an empty dict + snakeList.append(snakeHead) + + + + + if len(snakeList) > snakeLength: + del snakeList[0] + + # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head + # ie the snake is overlapping itslef and it runs the game over sequensce + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + # Initlizes the snakeList + snake(image_pixels, snakeList) + + score_to_screen(str(player_score), white) + + # Updates the screen screen with new movement + pygame.display.update() + + # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list + if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: + + if lead_y > randAppleY and lead_y < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + player_score += 1 + + + elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: + randAppleX = round(random.randrange(0, display_width-image_pixels)) + randAppleY = round(random.randrange(0, display_height-image_pixels)) + snakeLength += 1 + # Updates player score as well as as snake lenth + player_score += 1 + + + + + + # Rate of referesh + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() diff --git a/old/v.0.0.3.py~ b/old/v.0.0.3.py~ new file mode 100644 index 0000000..8f22bed --- /dev/null +++ b/old/v.0.0.3.py~ @@ -0,0 +1,29 @@ +import sys +import pygame + +pygame.display.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + + pygame.display.update() + +pygame.display.quit() + diff --git a/old/v.0.0.3~ b/old/v.0.0.3~ new file mode 100644 index 0000000..f779061 --- /dev/null +++ b/old/v.0.0.3~ @@ -0,0 +1,32 @@ +import sys +import pygame +pygame.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +gameDisplay = pygame.display.set_mode((800,800)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + + gameDisplay.fill(sky_blue) + + pygame.display.update() + + +print "hello" +pygame.display.quit() +print "hello" +print "hello" +print "hello" +d diff --git a/old/v.0.0.4.py~ b/old/v.0.0.4.py~ new file mode 100644 index 0000000..efd80f0 --- /dev/null +++ b/old/v.0.0.4.py~ @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(white) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + diff --git a/old/v.0.1.0.py~ b/old/v.0.1.0.py~ new file mode 100644 index 0000000..f6af339 --- /dev/null +++ b/old/v.0.1.0.py~ @@ -0,0 +1,190 @@ +import sys +import pygame +import random + + +#pygame.display.init() +pygame.font.init() + +white = (255, 255, 255) +black = (0, 0,0 ) +red = (255, 0, 0) +green = (0, 255, 0) +blue = (0, 0, 255) +brick = (144, 69, 53) +sky_blue= (52, 152, 219) + +display_width = 1200 +display_height = 1200 +gameDisplay = pygame.display.set_mode((display_width,display_height)) +pygame.display.set_caption('Unicorn Squad') + +running = True +while running == True: + for event in pygame.event.get(): + if event.type == pygame.QUIT: + running = False + break + + gameDisplay.fill(sky_blue) + unicorn = pygame.image.load('unicorn.png') + unicorn = pygame.transform.scale(unicorn, (50, 50)) + rainbow = pygame.image.load('rainbow.png') + rainbow = pygame.transform.scale(rainbow, (50, 50)) + food = pygame.image.load('food.png') + food = pygame.transform.scale(food, (50, 50)) + + clock = pygame.time.Clock() + +block_size = 20 +FPS = 15 + +direction = "right" + +font = pygame.font.SysFont(None, 25) + + + +def snake(block_size, snakelist): + + if direction == "right": + head = unicorn + + if direction == "left": + head = pygame.transform.flip(unicorn, 1, 0) + + if direction == "up": + head = pygame.transform.rotate(unicorn, 90) + + if direction == "down": + head = pygame.transform.rotate(unicorn, 270) + + + gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) + + for XnY in snakelist[:-1]: + pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) + +def text_objects(text,color): + textSurface = font.render(text, True, color) + return textSurface, textSurface.get_rect() + + +def message_to_screen(msg,color, y_displace=0): + textSurf, textRect = text_objects(msg,color) + textRect.center = (display_width / 2), (display_height / 2)+y_displace + gameDisplay.blit(textSurf, textRect) + + +def gameLoop(): + global direction + gameExit = False + gameOver = False + + lead_x = display_width/2 + lead_y = display_height/2 + + lead_x_change = 10 + lead_y_change = 0 + + snakeList = [] + snakeLength = 1 + + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + + while not gameExit: + + while gameOver == True: + gameDisplay.fill(white) + message_to_screen("Game over", red, y_displace=-50) + message_to_screen("Press C to play again or Q to quit",black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameExit = True + gameOver = False + if event.key == pygame.K_c: + gameLoop() + + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + direction = "left" + lead_x_change = -block_size + lead_y_change = 0 + elif event.key == pygame.K_RIGHT: + direction = "right" + lead_x_change = block_size + lead_y_change = 0 + elif event.key == pygame.K_UP: + direction = "up" + lead_y_change = -block_size + lead_x_change = 0 + elif event.key == pygame.K_DOWN: + direction = "down" + lead_y_change = block_size + lead_x_change = 0 + + if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: + gameOver = True + + + lead_x += lead_x_change + lead_y += lead_y_change + + gameDisplay.fill(sky_blue) + + AppleThickness = 30 + pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) + + + snakeHead = [] + snakeHead.append(lead_x) + snakeHead.append(lead_y) + snakeList.append(snakeHead) + + if len(snakeList) > snakeLength: + del snakeList[0] + + for eachSegment in snakeList[:-1]: + if eachSegment == snakeHead: + gameOver = True + + + snake(block_size, snakeList) + + + pygame.display.update() + + + if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: + + if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: + randAppleX = round(random.randrange(0, display_width-block_size)) + randAppleY = round(random.randrange(0, display_height-block_size)) + snakeLength += 1 + + + clock.tick(FPS) + + +gameLoop() + +pygame.display.quit() +pygame.quit() + From bfc9041a489a0793bc77dd9490ebe375f94803d5 Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Mon, 31 Oct 2016 10:22:13 -0400 Subject: [PATCH 25/26] cleaning up folder --- .idea/InteractiveProgramming.iml | 11 - .idea/misc.xml | 14 -- .idea/modules.xml | 8 - .idea/vcs.xml | 6 - .idea/workspace.xml | 412 ------------------------------- main.py~ | 241 ------------------ v.0.0.3.py~ | 29 --- v.0.0.3~ | 32 --- v.0.0.4.py~ | 190 -------------- v.0.1.0.py~ | 190 -------------- 10 files changed, 1133 deletions(-) delete mode 100644 .idea/InteractiveProgramming.iml delete mode 100644 .idea/misc.xml delete mode 100644 .idea/modules.xml delete mode 100644 .idea/vcs.xml delete mode 100644 .idea/workspace.xml delete mode 100644 main.py~ delete mode 100644 v.0.0.3.py~ delete mode 100644 v.0.0.3~ delete mode 100644 v.0.0.4.py~ delete mode 100644 v.0.1.0.py~ diff --git a/.idea/InteractiveProgramming.iml b/.idea/InteractiveProgramming.iml deleted file mode 100644 index 6711606..0000000 --- a/.idea/InteractiveProgramming.iml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index cd9d35b..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 39eb916..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 94a25f7..0000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml deleted file mode 100644 index 0bcb009..0000000 --- a/.idea/workspace.xml +++ /dev/null @@ -1,412 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - DEFINITION_ORDER - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1477871590384 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/main.py~ b/main.py~ deleted file mode 100644 index 472e5be..0000000 --- a/main.py~ +++ /dev/null @@ -1,241 +0,0 @@ -import sys -import pygame -import random - -# Initliizlies PyGame Window & Gameover Font -pygame.display.init() -pygame.font.init() - -# Defineing Color RGB Values for GUI elements -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -# Sets size of display -display_width = 1200 -display_height = 1200 - -# Sets Top of game Windoe Caption -gameDisplay = pygame.display.set_mode((display_width,display_height)) -pygame.display.set_caption('Unicorn Squad') - -image_pixels = 50 - -# Linking color values to GUI elements & Imports iimages and reduces size to 50 by 50px -gameDisplay.fill(sky_blue) -unicorn = pygame.image.load('unicorn.png') -unicorn = pygame.transform.scale(unicorn, (image_pixels, image_pixels)) -rainbow = pygame.image.load('rainbow.png') -rainbow = pygame.transform.scale(rainbow, (image_pixels, image_pixels)) -food = pygame.image.load('food.png') -food = pygame.transform.scale(food, (image_pixels, image_pixels)) - -clock = pygame.time.Clock() - - -# The higher the FPS the fasted the sprite moves. We fid that 15 is a good balance for gameplay -FPS = 10 - -# Initial directio of character sprite -direction = "right" - -# Aiisgns font & font size 25 pixels -font = pygame.font.SysFont(None, 55) - - -# Initlizes up down left right actions -def snake(image_pixels, snakelist): - - if direction == "right": - head = unicorn - - if direction == "left": - head = pygame.transform.flip(unicorn, 1, 0) - - if direction == "up": - head = pygame.transform.rotate(unicorn, 90) - - if direction == "down": - head = pygame.transform.rotate(unicorn, 270) - - # deifnes movement of snake tail - gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) - - # defines adding of rainbow image to user sprite - for XnY in snakelist[:-1]: - gameDisplay.blit(rainbow,(XnY[0], XnY[1]) ) - -# Initliazes text object -def text_objects(text,color): - textSurface = font.render(text, True, color) - return textSurface, textSurface.get_rect() - -# Defines display message with color variable -def message_to_screen(msg,color, y_displace=0): - textSurf, textRect = text_objects(msg,color) - textRect.center = (display_width / 2), (display_height / 2)+y_displace - gameDisplay.blit(textSurf, textRect) - -# Sets counnt positoin -def score_to_screen(msg, color): - textSurf, textRect = text_objects(msg,color) - textRect = (display_width -50), (display_height -50) - gameDisplay.blit(textSurf, textRect) - - - -# Main game engine - -def gameLoop(): - global direction - # Sets game exit variblaes to false - gameExit = False # HItting the close button (closing Window) - gameOver = False # Internal game over view (HItting the walls or your own tail) - - lead_x = display_width/2 - lead_y = display_height/2 - - lead_x_change = 10 - lead_y_change = 0 - - # Snake size array - snakeList = [] - # Sets inital snake length (Snake head counts as 1) - snakeLength = 1 - player_score = 0 - - - # Randomly places next block - randAppleX = round(random.randrange(0, display_width-image_pixels)) - randAppleY = round(random.randrange(0, display_height-image_pixels)) - - # View - while not gameExit: - print 'not exit game' - # Game over viwe - while gameOver == True: - print 'game over' - # Sets window to white - gameDisplay.fill(white) - # Sets message text, color, and positoin - message_to_screen("Game over", red, y_displace=-50) - message_to_screen("Press C to play again or Q to quit",black, 50) - pygame.display.update() - - # Maps user close window actio to close og game window - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameOver = False - gameExit = True - - # Maps keboard strokes to close game and redo game - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_q: - gameOver = False - gameExit = True - if event.key == pygame.K_c: - gameLoop() - print 'game over, loop over' - - # While game in progress (Maps keyboard actions to sprike movements) Controller - for event in pygame.event.get(): - print 'event' - if event.type == pygame.QUIT: - gameExit = True - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_LEFT: - direction = "left" - lead_x_change = -image_pixels - lead_y_change = 0 - elif event.key == pygame.K_RIGHT: - direction = "right" - lead_x_change = image_pixels - lead_y_change = 0 - elif event.key == pygame.K_UP: - direction = "up" - lead_y_change = -image_pixels - lead_x_change = 0 - elif event.key == pygame.K_DOWN: - direction = "down" - lead_y_change = image_pixels - lead_x_change = 0 - - # If you go outside game area horizontlal or vertically - if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: - gameOver = True - - # Change player coordinates based on user action - lead_x += lead_x_change - lead_y += lead_y_change - - # Defines game ares as skyblue - gameDisplay.fill(sky_blue) - - - # Sets carroat ad player treat and sets random x y coordinates - # Sets square thickness - - gameDisplay.blit(food, (randAppleX,randAppleY)) - - - unicorn - # Defines snake head as an empty deict - snakeHead = [] - # Appends Initial X and Y coordinates to the snake head - snakeHead.append(lead_x) - snakeHead.append(lead_y) - # Adds snake head to sake body. Snkae body is an empty dict - snakeList.append(snakeHead) - - - - - if len(snakeList) > snakeLength: - del snakeList[0] - - # Runs through each segment of the snake list and checks if the x y corrsoidate of the snake segment equalis the x y coordinates of the snake head - # ie the snake is overlapping itslef and it runs the game over sequensce - for eachSegment in snakeList[:-1]: - if eachSegment == snakeHead: - gameOver = True - - # Initlizes the snakeList - snake(image_pixels, snakeList) - - score_to_screen(str(player_score), white) - - # Updates the screen screen with new movement - pygame.display.update() - - # Defiens the paraemnts necuasey for player spriite to pick up Apple and add length to snake list - if lead_x > randAppleX and lead_x < randAppleX + image_pixels or lead_x + image_pixels > randAppleX and lead_x + image_pixels < randAppleX + image_pixels: - - if lead_y > randAppleY and lead_y < randAppleY + image_pixels: - randAppleX = round(random.randrange(0, display_width-image_pixels)) - randAppleY = round(random.randrange(0, display_height-image_pixels)) - snakeLength += 1 - player_score += 1 - - - elif lead_y + image_pixels > randAppleY and lead_y + image_pixels < randAppleY + image_pixels: - randAppleX = round(random.randrange(0, display_width-image_pixels)) - randAppleY = round(random.randrange(0, display_height-image_pixels)) - snakeLength += 1 - # Updates player score as well as as snake lenth - player_score += 1 - - - - - - # Rate of referesh - clock.tick(FPS) - - -gameLoop() - -pygame.display.quit() -pygame.quit() diff --git a/v.0.0.3.py~ b/v.0.0.3.py~ deleted file mode 100644 index 8f22bed..0000000 --- a/v.0.0.3.py~ +++ /dev/null @@ -1,29 +0,0 @@ -import sys -import pygame - -pygame.display.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -gameDisplay = pygame.display.set_mode((800,800)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - break - - gameDisplay.fill(sky_blue) - - pygame.display.update() - -pygame.display.quit() - diff --git a/v.0.0.3~ b/v.0.0.3~ deleted file mode 100644 index f779061..0000000 --- a/v.0.0.3~ +++ /dev/null @@ -1,32 +0,0 @@ -import sys -import pygame -pygame.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -gameDisplay = pygame.display.set_mode((800,800)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - - gameDisplay.fill(sky_blue) - - pygame.display.update() - - -print "hello" -pygame.display.quit() -print "hello" -print "hello" -print "hello" -d diff --git a/v.0.0.4.py~ b/v.0.0.4.py~ deleted file mode 100644 index efd80f0..0000000 --- a/v.0.0.4.py~ +++ /dev/null @@ -1,190 +0,0 @@ -import sys -import pygame -import random - - -pygame.display.init() -pygame.font.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -display_width = 1200 -display_height = 1200 -gameDisplay = pygame.display.set_mode((display_width,display_height)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - break - - gameDisplay.fill(sky_blue) - unicorn = pygame.image.load('unicorn.png') - unicorn = pygame.transform.scale(unicorn, (50, 50)) - rainbow = pygame.image.load('rainbow.png') - rainbow = pygame.transform.scale(rainbow, (50, 50)) - food = pygame.image.load('food.png') - food = pygame.transform.scale(food, (50, 50)) - - clock = pygame.time.Clock() - -block_size = 20 -FPS = 15 - -direction = "right" - -font = pygame.font.SysFont(None, 25) - - - -def snake(block_size, snakelist): - - if direction == "right": - head = unicorn - - if direction == "left": - head = pygame.transform.flip(unicorn, 1, 0) - - if direction == "up": - head = pygame.transform.rotate(unicorn, 90) - - if direction == "down": - head = pygame.transform.rotate(unicorn, 270) - - - gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) - - for XnY in snakelist[:-1]: - pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) - -def text_objects(text,color): - textSurface = font.render(text, True, color) - return textSurface, textSurface.get_rect() - - -def message_to_screen(msg,color, y_displace=0): - textSurf, textRect = text_objects(msg,color) - textRect.center = (display_width / 2), (display_height / 2)+y_displace - gameDisplay.blit(textSurf, textRect) - - -def gameLoop(): - global direction - gameExit = False - gameOver = False - - lead_x = display_width/2 - lead_y = display_height/2 - - lead_x_change = 10 - lead_y_change = 0 - - snakeList = [] - snakeLength = 1 - - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - - while not gameExit: - - while gameOver == True: - gameDisplay.fill(white) - message_to_screen("Game over", red, y_displace=-50) - message_to_screen("Press C to play again or Q to quit",black, 50) - pygame.display.update() - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameOver = False - gameExit = True - - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_q: - gameExit = True - gameOver = False - if event.key == pygame.K_c: - gameLoop() - - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameExit = True - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_LEFT: - direction = "left" - lead_x_change = -block_size - lead_y_change = 0 - elif event.key == pygame.K_RIGHT: - direction = "right" - lead_x_change = block_size - lead_y_change = 0 - elif event.key == pygame.K_UP: - direction = "up" - lead_y_change = -block_size - lead_x_change = 0 - elif event.key == pygame.K_DOWN: - direction = "down" - lead_y_change = block_size - lead_x_change = 0 - - if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: - gameOver = True - - - lead_x += lead_x_change - lead_y += lead_y_change - - gameDisplay.fill(white) - - AppleThickness = 30 - pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) - - - snakeHead = [] - snakeHead.append(lead_x) - snakeHead.append(lead_y) - snakeList.append(snakeHead) - - if len(snakeList) > snakeLength: - del snakeList[0] - - for eachSegment in snakeList[:-1]: - if eachSegment == snakeHead: - gameOver = True - - - snake(block_size, snakeList) - - - pygame.display.update() - - - if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: - - if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 - - elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 - - - clock.tick(FPS) - - -gameLoop() - -pygame.display.quit() -pygame.quit() - diff --git a/v.0.1.0.py~ b/v.0.1.0.py~ deleted file mode 100644 index f6af339..0000000 --- a/v.0.1.0.py~ +++ /dev/null @@ -1,190 +0,0 @@ -import sys -import pygame -import random - - -#pygame.display.init() -pygame.font.init() - -white = (255, 255, 255) -black = (0, 0,0 ) -red = (255, 0, 0) -green = (0, 255, 0) -blue = (0, 0, 255) -brick = (144, 69, 53) -sky_blue= (52, 152, 219) - -display_width = 1200 -display_height = 1200 -gameDisplay = pygame.display.set_mode((display_width,display_height)) -pygame.display.set_caption('Unicorn Squad') - -running = True -while running == True: - for event in pygame.event.get(): - if event.type == pygame.QUIT: - running = False - break - - gameDisplay.fill(sky_blue) - unicorn = pygame.image.load('unicorn.png') - unicorn = pygame.transform.scale(unicorn, (50, 50)) - rainbow = pygame.image.load('rainbow.png') - rainbow = pygame.transform.scale(rainbow, (50, 50)) - food = pygame.image.load('food.png') - food = pygame.transform.scale(food, (50, 50)) - - clock = pygame.time.Clock() - -block_size = 20 -FPS = 15 - -direction = "right" - -font = pygame.font.SysFont(None, 25) - - - -def snake(block_size, snakelist): - - if direction == "right": - head = unicorn - - if direction == "left": - head = pygame.transform.flip(unicorn, 1, 0) - - if direction == "up": - head = pygame.transform.rotate(unicorn, 90) - - if direction == "down": - head = pygame.transform.rotate(unicorn, 270) - - - gameDisplay.blit(head, (snakelist[-1][0], snakelist[-1][1])) - - for XnY in snakelist[:-1]: - pygame.draw.rect(gameDisplay, green, [XnY[0],XnY[1],block_size,block_size]) - -def text_objects(text,color): - textSurface = font.render(text, True, color) - return textSurface, textSurface.get_rect() - - -def message_to_screen(msg,color, y_displace=0): - textSurf, textRect = text_objects(msg,color) - textRect.center = (display_width / 2), (display_height / 2)+y_displace - gameDisplay.blit(textSurf, textRect) - - -def gameLoop(): - global direction - gameExit = False - gameOver = False - - lead_x = display_width/2 - lead_y = display_height/2 - - lead_x_change = 10 - lead_y_change = 0 - - snakeList = [] - snakeLength = 1 - - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - - while not gameExit: - - while gameOver == True: - gameDisplay.fill(white) - message_to_screen("Game over", red, y_displace=-50) - message_to_screen("Press C to play again or Q to quit",black, 50) - pygame.display.update() - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameOver = False - gameExit = True - - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_q: - gameExit = True - gameOver = False - if event.key == pygame.K_c: - gameLoop() - - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - gameExit = True - if event.type == pygame.KEYDOWN: - if event.key == pygame.K_LEFT: - direction = "left" - lead_x_change = -block_size - lead_y_change = 0 - elif event.key == pygame.K_RIGHT: - direction = "right" - lead_x_change = block_size - lead_y_change = 0 - elif event.key == pygame.K_UP: - direction = "up" - lead_y_change = -block_size - lead_x_change = 0 - elif event.key == pygame.K_DOWN: - direction = "down" - lead_y_change = block_size - lead_x_change = 0 - - if lead_x >= display_width or lead_x < 0 or lead_y >= display_height or lead_y < 0: - gameOver = True - - - lead_x += lead_x_change - lead_y += lead_y_change - - gameDisplay.fill(sky_blue) - - AppleThickness = 30 - pygame.draw.rect(gameDisplay, red, [randAppleX, randAppleY, AppleThickness, AppleThickness]) - - - snakeHead = [] - snakeHead.append(lead_x) - snakeHead.append(lead_y) - snakeList.append(snakeHead) - - if len(snakeList) > snakeLength: - del snakeList[0] - - for eachSegment in snakeList[:-1]: - if eachSegment == snakeHead: - gameOver = True - - - snake(block_size, snakeList) - - - pygame.display.update() - - - if lead_x > randAppleX and lead_x < randAppleX + AppleThickness or lead_x + block_size > randAppleX and lead_x + block_size < randAppleX + AppleThickness: - - if lead_y > randAppleY and lead_y < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 - - elif lead_y + block_size > randAppleY and lead_y + block_size < randAppleY + AppleThickness: - randAppleX = round(random.randrange(0, display_width-block_size)) - randAppleY = round(random.randrange(0, display_height-block_size)) - snakeLength += 1 - - - clock.tick(FPS) - - -gameLoop() - -pygame.display.quit() -pygame.quit() - From 9ae0a0f8881e8b4ff1548a97d179b6b3adfe85fa Mon Sep 17 00:00:00 2001 From: Jonathan Kohlmeier Date: Mon, 31 Oct 2016 14:50:57 -0400 Subject: [PATCH 26/26] adding notes to code --- game.py | 31 +++--- game.py~ | 282 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 302 insertions(+), 11 deletions(-) create mode 100644 game.py~ diff --git a/game.py b/game.py index d697114..ce9be0f 100644 --- a/game.py +++ b/game.py @@ -19,14 +19,15 @@ def __init__(self, **kwargs): self.display_width = kwargs.pop('display_width') self.display_height = kwargs.pop('display_height') - + #set game display size and color self.game_display = pygame.display.set_mode((self.display_width,self.display_height)) self.game_display.fill(self.sky_blue) + #set caption for the game if 'caption' in kwargs: pygame.display.set_caption(caption) else: pygame.display.set_caption('Unicorn Squad') - + #Set fps self.clock = pygame.time.Clock() if 'FPS' in kwargs: self.FPS = kwargs.pop('FPS') @@ -34,20 +35,20 @@ def __init__(self, **kwargs): self.FPS = 10 self.font = pygame.font.SysFont(None, 55) - + #game exit def game_did_quit(self): gameExit = False for event in pygame.event.get(): if event.type == pygame.QUIT: gameExit = True return gameExit - + def add_icon(self,icon,location): self.game_display.blit(icon,location) - + #set starting spot to center def get_center(self): return (self.display_width/2, self.display_height/2) - + #identify if unicorn intersects carrot. def did_collide(self,obj1, obj2): if obj1.x > obj2.x and obj1.x < obj2.x + obj2.image_width or obj1.x + obj1.image_width > obj2.x and obj1.x + obj1.image_width < obj2.x + obj2.image_width: if obj1.y > obj2.y and obj1.y < obj2.y + obj2.image_height: @@ -80,7 +81,7 @@ def message_to_screen(self, msg, color, y_displace=0): textSurf, textRect = self.text_objects(msg,color) textRect.center = (self.display_width / 2), (self.display_height / 2) + y_displace self.game_display.blit(textSurf, textRect) - + #places score on bottom right corner def score_to_screen(self, msg, color): textSurf, textRect = self.text_objects(msg, color) textRect = (self.display_width - 50), (self.display_height - 50) @@ -105,6 +106,7 @@ def __init__(self,**kwargs): #start_pos=(0,0),icon='food.png', image_width=50, image_height=50 +#init "food" image class Carrot(Image): def __init__(self,**kwargs): super(Carrot,self).__init__(**kwargs) @@ -113,11 +115,12 @@ def set_random_location(self,display_width,display_height): self.x = round(random.randrange(0, display_width-self.image_width)) self.y = round(random.randrange(0, display_height-self.image_height)) self.start_pos = (self.x,self.y) - +#init rainbow image class Rainbow(Image): def __init__(self, **kwargs): super(Rainbow,self).__init__(**kwargs) +#init unicorn/snake image class Snake(Image): def __init__(self,**kwargs): super(Snake,self).__init__(**kwargs) @@ -126,7 +129,8 @@ def __init__(self,**kwargs): self.direction = "right" self.delta_y = 0 self.delta_x = 40 - + + #function to add rainbow to tail def add_to_tail(self): gameOver = False snake_head = [] @@ -144,6 +148,8 @@ def add_to_tail(self): return gameOver + + #function to handle orientation of unicorn depending on which direction it is going def handle_tail(self): if self.direction == "right": head = self.icon @@ -159,7 +165,7 @@ def handle_tail(self): return head - + #init movement of unicorn def process_move(self): gameExit = False for event in pygame.event.get(): @@ -190,6 +196,7 @@ def move(self): # self.delta_x = 0 # self.delta_y = 0 +#manages player score class Player: def __init__(self): self.player_score = 0 @@ -206,6 +213,7 @@ def decrease_score(self): def reset_score(self): self.player_score = 0 +#main game loop def run_game(display_width,display_height): gameExit = False # HItting the close button (closing Window) gameOver = False # Internal game over view (Hitting the walls or your own tail) @@ -219,6 +227,7 @@ def run_game(display_width,display_height): while not gameExit: while gameOver: + #sets game over screen and options to continue game.game_display.fill(game.white) game.message_to_screen("Game Over!", game.red, -50) game.message_to_screen("Press C to play again, or Q to quit", game.black, 50) @@ -279,4 +288,4 @@ def run_game(display_width,display_height): pygame.display.quit(str()) pygame.quit() -run_game(800,600) \ No newline at end of file +run_game(800,600) diff --git a/game.py~ b/game.py~ new file mode 100644 index 0000000..d697114 --- /dev/null +++ b/game.py~ @@ -0,0 +1,282 @@ +import sys +import pygame +import random + +class GameManager(object): #*args, **kwargs + def __init__(self, **kwargs): + # Initliizlies PyGame Window & Gameover Font + pygame.display.init() + pygame.font.init() + + # Defineing Color RGB Values for GUI elements + self.white = (255, 255, 255) + self.black = (0, 0,0 ) + self.red = (255, 0, 0) + self.green = (0, 255, 0) + self.blue = (0, 0, 255) + self.brick = (144, 69, 53) + self.sky_blue= (52, 152, 219) + + self.display_width = kwargs.pop('display_width') + self.display_height = kwargs.pop('display_height') + + self.game_display = pygame.display.set_mode((self.display_width,self.display_height)) + self.game_display.fill(self.sky_blue) + if 'caption' in kwargs: + pygame.display.set_caption(caption) + else: + pygame.display.set_caption('Unicorn Squad') + + self.clock = pygame.time.Clock() + if 'FPS' in kwargs: + self.FPS = kwargs.pop('FPS') + else: + self.FPS = 10 + + self.font = pygame.font.SysFont(None, 55) + + def game_did_quit(self): + gameExit = False + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + return gameExit + + def add_icon(self,icon,location): + self.game_display.blit(icon,location) + + def get_center(self): + return (self.display_width/2, self.display_height/2) + + def did_collide(self,obj1, obj2): + if obj1.x > obj2.x and obj1.x < obj2.x + obj2.image_width or obj1.x + obj1.image_width > obj2.x and obj1.x + obj1.image_width < obj2.x + obj2.image_width: + if obj1.y > obj2.y and obj1.y < obj2.y + obj2.image_height: + return True + elif obj1.y + obj1.image_height > obj2.y and obj1.y + obj1.image_height < obj2.y + obj2.image_height: + return True + return False + +#display_width,display_height, caption='Unicorn Squad', FPS=10 + +class SnakeGame(GameManager): + def __init__(self,**kwargs): + super(SnakeGame,self).__init__(**kwargs) + + def is_game_over(self,snake): + if snake.x >= self.display_width or snake.x < 0 or snake.y >= self.display_height or snake.y < 0: + return True + return False + + def fill_blue(self): + self.game_display.fill(self.sky_blue) + + # Initliazes text object + def text_objects(self, text, color): + textSurface = self.font.render(text, True, color) + return textSurface, textSurface.get_rect() + + # Defines display message with color variable + def message_to_screen(self, msg, color, y_displace=0): + textSurf, textRect = self.text_objects(msg,color) + textRect.center = (self.display_width / 2), (self.display_height / 2) + y_displace + self.game_display.blit(textSurf, textRect) + + def score_to_screen(self, msg, color): + textSurf, textRect = self.text_objects(msg, color) + textRect = (self.display_width - 50), (self.display_height - 50) + self.game_display.blit(textSurf, textRect) + +class Image(object): + def __init__(self,**kwargs): + self.start_pos = kwargs.pop('start_pos') #(x,y) + self.icon = pygame.image.load(kwargs.pop('icon')) + self.icon = pygame.transform.scale(self.icon, (kwargs.pop('image_width'), kwargs.pop('image_height'))) + self.x = self.start_pos[0] + self.y = self.start_pos[1] + if 'image_width' in kwargs: + self.image_width = kwargs.pop('image_width') + else: + self.image_width = 50 + if 'image_height' in kwargs: + self.image_height = kwargs.pop('image_height') + else: + self.image_height = 50 + + +#start_pos=(0,0),icon='food.png', image_width=50, image_height=50 + +class Carrot(Image): + def __init__(self,**kwargs): + super(Carrot,self).__init__(**kwargs) + + def set_random_location(self,display_width,display_height): + self.x = round(random.randrange(0, display_width-self.image_width)) + self.y = round(random.randrange(0, display_height-self.image_height)) + self.start_pos = (self.x,self.y) + +class Rainbow(Image): + def __init__(self, **kwargs): + super(Rainbow,self).__init__(**kwargs) + +class Snake(Image): + def __init__(self,**kwargs): + super(Snake,self).__init__(**kwargs) + self.tail_list = [] + self.tail_size = 1 + self.direction = "right" + self.delta_y = 0 + self.delta_x = 40 + + def add_to_tail(self): + gameOver = False + snake_head = [] + snake_head.append(self.x) + snake_head.append(self.y) + + self.tail_list.append(snake_head) + + if len(self.tail_list) > self.tail_size: + del self.tail_list[0] + + for eachSegment in self.tail_list[:-1]: + if eachSegment == snake_head: + gameOver = True + + return gameOver + + def handle_tail(self): + if self.direction == "right": + head = self.icon + + if self.direction == "left": + head = pygame.transform.flip(self.icon, 1, 0) + + if self.direction == "up": + head = pygame.transform.rotate(self.icon, 90) + + if self.direction == "down": + head = pygame.transform.rotate(self.icon, 270) + + return head + + + def process_move(self): + gameExit = False + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameExit = True + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_LEFT: + self.direction = "left" + self.delta_x = -self.image_width + self.delta_y = 0 + elif event.key == pygame.K_RIGHT: + self.direction = "right" + self.delta_x = self.image_width + self.delta_y = 0 + elif event.key == pygame.K_UP: + self.direction = "up" + self.delta_y = -self.image_height + self.delta_x = 0 + elif event.key == pygame.K_DOWN: + self.direction = "down" + self.delta_y = self.image_height + self.delta_x = 0 + return gameExit + + def move(self): + self.x += self.delta_x + self.y += self.delta_y + # self.delta_x = 0 + # self.delta_y = 0 + +class Player: + def __init__(self): + self.player_score = 0 + + def set_score(self,score): + self.player_score = score + + def increase_score(self): + self.player_score += 1 + + def decrease_score(self): + self.player_score -= 1 + + def reset_score(self): + self.player_score = 0 + +def run_game(display_width,display_height): + gameExit = False # HItting the close button (closing Window) + gameOver = False # Internal game over view (Hitting the walls or your own tail) + game = SnakeGame(display_width=display_width,display_height=display_height) + player = Player() + + snake = Snake(start_pos=game.get_center(),image_height=50,image_width=50, icon="unicorn.png") + + carrot = Carrot(icon='food.png',image_height=50,image_width=50, start_pos=(0,0)) + carrot.set_random_location(display_width,display_height) + + while not gameExit: + while gameOver: + game.game_display.fill(game.white) + game.message_to_screen("Game Over!", game.red, -50) + game.message_to_screen("Press C to play again, or Q to quit", game.black, 50) + pygame.display.update() + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + gameOver = False + gameExit = True + + # Maps keboard strokes to close game and redo game + if event.type == pygame.KEYDOWN: + if event.key == pygame.K_q: + gameOver = False + gameExit = True + exit() + if event.key == pygame.K_c: + run_game(display_width,display_height) + + gameExit = snake.process_move() + + + snake.move() + + gameOver = game.is_game_over(snake) + + + #fill blue + game.fill_blue() + + game.add_icon(carrot.icon,(carrot.x,carrot.y)) + + gameOver2 = snake.add_to_tail() + if not gameOver: + gameOver = gameOver2 + head = snake.handle_tail() #drawing snake + + # defines movement of snake tail + game.game_display.blit(head, (snake.tail_list[-1][0], snake.tail_list[-1][1])) + + # defines adding of rainbow image to user sprite + for XnY in snake.tail_list[:-1]: + rainbow = Rainbow(icon="rainbow.png", image_height=50, image_width=50, start_pos=(0,0)).icon + game.game_display.blit(rainbow,(XnY[0], XnY[1])) + + game.score_to_screen(str(player.player_score), game.white) + + pygame.display.update() + + if (game.did_collide(snake,carrot)): + carrot.set_random_location(display_width,display_height) + snake.tail_size += 1 + player.increase_score() + + game.clock.tick(game.FPS) + + + pygame.display.quit(str()) + pygame.quit() + +run_game(800,600) \ No newline at end of file

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