diff --git a/Practice_space_game/index.html b/Practice_space_game/index.html new file mode 100644 index 0000000..e7b8ca9 --- /dev/null +++ b/Practice_space_game/index.html @@ -0,0 +1,17 @@ + + + + + Space Game + + + + + +

Image to use:

+

Canvas:

+ + Your browser does not support the HTML5 canvas tag. + + + \ No newline at end of file diff --git a/Practice_space_game/spaceArt/png/Background/backgroundColor.png b/Practice_space_game/spaceArt/png/Background/backgroundColor.png new file mode 100644 index 0000000..be46541 Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/backgroundColor.png differ diff --git a/Practice_space_game/spaceArt/png/Background/nebula.png b/Practice_space_game/spaceArt/png/Background/nebula.png new file mode 100644 index 0000000..c456fa8 Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/nebula.png differ diff --git a/Practice_space_game/spaceArt/png/Background/speedLine.png b/Practice_space_game/spaceArt/png/Background/speedLine.png new file mode 100644 index 0000000..26846cf Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/speedLine.png differ diff --git a/Practice_space_game/spaceArt/png/Background/starBackground.png b/Practice_space_game/spaceArt/png/Background/starBackground.png new file mode 100644 index 0000000..5393c5c Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/starBackground.png differ diff --git a/Practice_space_game/spaceArt/png/Background/starBig.png b/Practice_space_game/spaceArt/png/Background/starBig.png new file mode 100644 index 0000000..30a1cc4 Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/starBig.png differ diff --git a/Practice_space_game/spaceArt/png/Background/starSmall.png b/Practice_space_game/spaceArt/png/Background/starSmall.png new file mode 100644 index 0000000..eec17fb Binary files /dev/null and b/Practice_space_game/spaceArt/png/Background/starSmall.png differ diff --git a/Practice_space_game/spaceArt/png/enemyShip.png b/Practice_space_game/spaceArt/png/enemyShip.png new file mode 100644 index 0000000..a9b90a6 Binary files /dev/null and b/Practice_space_game/spaceArt/png/enemyShip.png differ diff --git a/Practice_space_game/spaceArt/png/enemyUFO.png b/Practice_space_game/spaceArt/png/enemyUFO.png new file mode 100644 index 0000000..a070cb5 Binary files /dev/null and b/Practice_space_game/spaceArt/png/enemyUFO.png differ diff --git a/Practice_space_game/spaceArt/png/laserGreen.png b/Practice_space_game/spaceArt/png/laserGreen.png new file mode 100644 index 0000000..52b0d60 Binary files /dev/null and b/Practice_space_game/spaceArt/png/laserGreen.png differ diff --git a/Practice_space_game/spaceArt/png/laserGreenShot.png b/Practice_space_game/spaceArt/png/laserGreenShot.png new file mode 100644 index 0000000..3496a2f Binary files /dev/null and b/Practice_space_game/spaceArt/png/laserGreenShot.png differ diff --git a/Practice_space_game/spaceArt/png/laserRed.png b/Practice_space_game/spaceArt/png/laserRed.png new file mode 100644 index 0000000..7cd9c01 Binary files /dev/null and b/Practice_space_game/spaceArt/png/laserRed.png differ diff --git a/Practice_space_game/spaceArt/png/laserRedShot.png b/Practice_space_game/spaceArt/png/laserRedShot.png new file mode 100644 index 0000000..f7211cf Binary files /dev/null and b/Practice_space_game/spaceArt/png/laserRedShot.png differ diff --git a/Practice_space_game/spaceArt/png/life.png b/Practice_space_game/spaceArt/png/life.png new file mode 100644 index 0000000..708a9fc Binary files /dev/null and b/Practice_space_game/spaceArt/png/life.png differ diff --git a/Practice_space_game/spaceArt/png/meteorBig.png b/Practice_space_game/spaceArt/png/meteorBig.png new file mode 100644 index 0000000..88bbf12 Binary files /dev/null and b/Practice_space_game/spaceArt/png/meteorBig.png differ diff --git a/Practice_space_game/spaceArt/png/meteorSmall.png b/Practice_space_game/spaceArt/png/meteorSmall.png new file mode 100644 index 0000000..1cfd9b2 Binary files /dev/null and b/Practice_space_game/spaceArt/png/meteorSmall.png differ diff --git a/Practice_space_game/spaceArt/png/player.png b/Practice_space_game/spaceArt/png/player.png new file mode 100644 index 0000000..9238efa Binary files /dev/null and b/Practice_space_game/spaceArt/png/player.png differ diff --git a/Practice_space_game/spaceArt/png/playerDamaged.png b/Practice_space_game/spaceArt/png/playerDamaged.png new file mode 100644 index 0000000..c160bed Binary files /dev/null and b/Practice_space_game/spaceArt/png/playerDamaged.png differ diff --git a/Practice_space_game/spaceArt/png/playerLeft.png b/Practice_space_game/spaceArt/png/playerLeft.png new file mode 100644 index 0000000..2e94da3 Binary files /dev/null and b/Practice_space_game/spaceArt/png/playerLeft.png differ diff --git a/Practice_space_game/spaceArt/png/playerRight.png b/Practice_space_game/spaceArt/png/playerRight.png new file mode 100644 index 0000000..8282ac8 Binary files /dev/null and b/Practice_space_game/spaceArt/png/playerRight.png differ diff --git a/Practice_space_game/spaceArt/png/shield.png b/Practice_space_game/spaceArt/png/shield.png new file mode 100644 index 0000000..24cda51 Binary files /dev/null and b/Practice_space_game/spaceArt/png/shield.png differ diff --git a/Practice_space_game/spaceArt/preview.jpg b/Practice_space_game/spaceArt/preview.jpg new file mode 100644 index 0000000..33073b5 Binary files /dev/null and b/Practice_space_game/spaceArt/preview.jpg differ diff --git a/Practice_space_game/spaceArt/readme.txt b/Practice_space_game/spaceArt/readme.txt new file mode 100644 index 0000000..d1aebea --- /dev/null +++ b/Practice_space_game/spaceArt/readme.txt @@ -0,0 +1,8 @@ + --- + +Space Shooter graphics by Kenney Vleugels (www.kenney.nl) + +You may use these graphics in personal and commercial projects. +Credit (www.kenney.nl) would be nice but is not mandatory. + + -- \ No newline at end of file diff --git a/Practice_space_game/spaceArt/spaceArt.ai b/Practice_space_game/spaceArt/spaceArt.ai new file mode 100644 index 0000000..ba87add --- /dev/null +++ b/Practice_space_game/spaceArt/spaceArt.ai @@ -0,0 +1,951 @@ +%PDF-1.4 % +1 0 obj <> endobj 2 0 obj <>stream + + + + + Adobe Illustrator CS6 (Windows) + 2012-10-08T13:59:46+02:00 + 2012-10-08T13:59:46+02:00 + 2012-10-08T13:59:46+02:00 + + + + 256 + 156 + JPEG + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAnAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A53mzc52KuxV2KuxV2Kux V2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV1R44odil2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2K uxV2KuxV2KuxV2KuxV2KuxV2KuxVrkMUW4t4Yra3kfHAhxJOKtYquU9sUrsKXYq7FXYq7FXYq7FX Yq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FVrGuBDVMUOpirqYq6mKupirqYqu5DCm2 64q7FLsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVabFBawIdirsVdirsVd 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 + + + + + + 1 + True + False + + 800.000000 + 480.000000 + Pixels + + + + Cyan + Magenta + Yellow + Black + + + + + + Default Swatch Group + 0 + + + + + + Document + + + application/pdf + + + spaceGraphics + + + + + proof:pdf + xmp.did:D25603A53F11E211A862D82018F201E6 + uuid:4d74c508-4d0f-4050-845e-a000778f3b81 + xmp.did:D25603A53F11E211A862D82018F201E6 + + proof:pdf + + + + + saved + xmp.iid:D25603A53F11E211A862D82018F201E6 + 2012-10-08T13:59:42+02:00 + Adobe Illustrator CS6 (Windows) + / + + + + + + Adobe PDF library 10.01 + + + + + + + + + + + + + + + + + + + + + + + + + +endstream endobj 3 0 obj <> endobj 5 0 obj <>/Resources<>/Properties<>/Shading<>/XObject<>>>/Thumb 18 0 R/TrimBox[0.0 0.0 800.0 480.0]/Type/Page>> endobj 6 0 obj <>stream +HlWl +>IԚz 8Ác1T9Bݚ/WI߯??{Ͽ<ܞ +7?t3Vߏ +05|JsAѕ#gW5>ޢx%o|3"0BiIKPZJ7ZI4iՑy%3Vꊥ1iLF(܍\'7{`;$(5x+* #rzEO}}omFq.τ;Zo#mMԷE VB0VρAܖU!DxDa4{Ãa>5oWˇ|B E5QŦv,@|pKU1D50TEWDj>kXd%&bOe>*{K z/y#pQ»* "0]T9:rp,/UaF?zX-jp"kXr? 9ݤ?Ġ!{|2qSkj#a5`FJ%{ِl2&k!20KHDC& ٧mod>N{N&Rrrk+q0,@O*H!_G)B"6G(7݃#zrx,v0*"rן<8#Ӎ)UCp$#\C GFeZo5y_3?L\"I:FR2,1Y,%e"&KZnX6be"6K`Y&b9ܞaǓ'b;OSK=;Dt#;I_ gEoY`q"D"-NK~whwjW(WBKL9w #[-_j9uRZ]cuqEЕ]5U-֤TBФ>&Z}%}p&fBpF W2+ n]qh4Ĭg0[]VX]v/͉L jc٭JSªjzvSf51~^xLTCb`ј5m ?rtǠm1c\ֆڲckȺ=w a+8̯%#G{Ѿ]0)B>0 .7L}Ę)7(Qf[d :'c0'Ia#v0#30!? qj~ݞ ߢZ4'eܦ>86D K.D%f4Iy 64&Wh<gLbdݒ@x8{y=Ąk^Ăhwd>Yct]+V܋k_F(7hx12jB  4A*XK˛S 5T:VRybgMeeL, z}Љ_0yW@UBp*l@EF׶Q쓼9/A*q m[&uQjW)rΫdmS:}ˠ+Ɔ"A7Jb4p蝭XJv;b:9B'E܁H9\ה]ukdTJϏ +t1Q5=7N̚"T Y 4|&EA 28"xp"6Dʵp|rwrPM'G@:"ǰȣX?8"6GOp;g f{r2#0D =p43wA:qJH~t:E "Lj*E(YQ\eU*_h@$QU,_hBQhIy-R( ++"_hr͊*EY`DK%H +hC` +*8I~QUP X?m/ [$3Zw~悀7D\'yX#dbd41fo22>Ӭ+ iMY^+¥OM(⎶y&&bXwٯ$L"-@S,b-t"T䊶)b/MΑqApcݟ&oaq󏛇?0E^"bܛ^0.[b NLDTD[օA}/TRC6P7 G'b ej3Cгx\KzK_qεV4a;)y}Ρ1.>l9ɜsnt]gM. "kY6i[!&G.*_:^)ڌH9,δB[#h{1GPڊi%,|J % O L==c] m"``rL<H|mVʊtxaUHEyU +1 Yە}wTPnɿ"CՑ⨔5# G?_:uXoXѷz=X}"ӵZ'%7#Zt;Ɖ.=(A&X"SU2hRg+\_)MMH]^RJ:.y҉H)~9ehD}lW6UcH,݌G|+0GId:mد|N']g%*ìC6ezgf;5쾻Ў8ާ@~.O"Zf0 0¦a*&uͽt?. ]X\d';1ݼǀ;KɉBYLdA⼋M +8qu|McnZC YX, ,#yKYr,ÓCj#9||ӴcؚlJR ). pX. H~,KcrUni[&8j'T **0ڂ/c_DB%ױsɴ&]/A5 ޾m6&nE?!CxѼ^rxֳB!+2s{IA\ԵJ L&Dv ʹ=5fm[&T#RÐs_w[kAX +N 9T h(jޞ4k6j=kEo`[ +hb_h%=5T5XAsK>WAHs03 ǐA·P|r?3>bk$Cк%Ѓ+wE mGl\'ڙWZGq,c$RG> DN2 כQΡ-3P7'q34.\]55s5>M"4y[U6z"f@HHm;yPl{>D"̟A8)kG 1U 68GMP 1GhA%4 QV`i;O<3m~ 6JG0hf},Pa 5S44=wp4hؕ#ZyZX!lo,fGp'.vKY#oSE6YJ3LF˅މdIO.3XH^a(/l}}O(܈1[ 8_? BMvz ~??-F|`-nEr'/jTڎ8)@q!SWA`z'Ni45)>`qJ6Nzaכ\)Ct9ɮ”18vT-P1Kpgb;DG"XJ&Yɥ}OQ!Tn.KÂmE ,2l %Ոa{ 7R;Yɪ[Zdtu<}?ap+[Spfܓ,Xꏘ~ȬO#"bhvdv)@꛷A h[V9qvPKx*jQ V2ܟ-kt,)/XF770[^rKx( -NVюY˙b8,w$7v1km(ddqcix[~Q uw4'R:nyrnz-\]z"Y粍[^&KȆ]3J;reFw&x{yU' !-k2}_iGpsCzanPUxbKs& +/0=f ΁~ +zW.x1)ſH}yJZ( CF#<a1.`bWQ@dT ]Kðr): gi 8s_ Иq2|qPSG]P4蓖ِz(SW9 r.vaU/{QW>1 ݸX-<6M D.|sŐ&:պ&vKp!{!_}P: Cܑ9XUCBD>-QL`Nvr PT>:PBk! +#XPaYO +eתǘY@'۹LDgSڭ'n$Kj 2Boi]<{> ~dIziQ7n-us{SRoo-Fy?%U>NF?'t?K]ɫTn2wآJG-;YozyvIZr<_ұkNu\' +?'Qo>0."@,}LRX,E\{ ׍bV$7+˧car1%;A,/q^pݿ(9Q;4>g2Ė?aX^ɓY*_m.:駈] m[\N`:k*I;$|o;WS&92r[qWi+g>= șH7}Ш@=lČަY ;P +#c#'ۘ' +؆TN96ҁ*Ų9Sr>YE2"mG)`ɺc&-Ɂp̧y tEҵ [W*`}pXΞ"RЈC Q~"W0-u?p(,-m{TWYk(`U,exޠKƀMd'0ORɣ)eYF9@a; +4ΩT^M̯Β߸SU6],2%D*Nj5ĐR4mIuqDl8}؝ HHwu5,gXEh +,\€m$TRVk{W[zcґv˻H[Qt($1 v?= "9NL!!r"X]A` "!%!uJqUd iJ|zp RNBԅSE#R*+}/a׾v%ou2_؆lWަӥpVDEߗ GbzDd3!䉣 ^fi r coCXTggP RCi +-LUF*Gi4ʝ슞+\#^~+OyN6Y ,BQ _\80h0Ŝs"}軱p}BZC䩀gH2|Hm;-x(+!t` +xȓJ&9 ^8Ga_F991' cƮ =lw/9|dφ&А7ā Xh4 >N4^ R)ЋMdt-NkH+Mrps%Fo9j*T@+8sf Acv6|c`v²0;nD X%Bb{ [ *(2W.{{3\aIAss8#߁g%p[8cQ z?3F4\%amFн+i4)-(r~{)n`G:x-ОfH g8qaB +[;"Dz,KɌ5rh.(-K($:>YN56p!;݃HTY!PŢeh3ـ#Q6 +ra'oA]n:;?ǕaPI>rg+$EJGidY{P{j,yVTp,hbLtZaNDbUf껰6B9dgqbE-,Et,` nG!@(k 6TK1&J03!Q/LHvi0Xs蠞uS/ږEٞ8~}s|@RC3OaxP4-0p +H\b +0M4}  )O7;eBx[$vR3ͤt܂GJx0$8D6S ^BjG +g{ +-ȤNJ_Bjq3qY#t9ơJ9Bu"9tpWyD%xz铌!D!3P3mF0 syqe&=ؕ +\#͛gB {EK9FmexSj9 X?J\НA6BKq bZ%pEEHm+gLLT3rPC\Ց#qC%1qQb؂xj!iԴPҦ7xFHxV:׽^t~43jq08GW|i6^d|Gx3/Aۯx´ 5! ,a۪zG= @gF'G6U +mSQn FK>*-9:x[뙊f L^r9\8n-Xo}h5[LZRLA6T?2fݞ/x+@ +_zUS58 +z;YRH"áj&ڡZ9b&!3ֽ)G +\S ~Jfo8\A[mUyƫK]^Eoz&qTɌX-Q? O{pI]v;6_xa)V.Gb``a|cOj ԍ2?z1*cFL-<\ vv3o\wpPw\!=6z@ш&0&~Y#=z,f>U=R[HNpг+oij@;]bIRR> W=J/e!w)/YXdV6_  $ =Od2<;h2U!dZ[I҆[٨)v!hoF kftDk '#P iqBZt8^<~!%eS!KƍM}owKQ-Iұ&iJug +tL$Q^Sϔ$/X ,|wyWyx" 5v4|p' \*t27 + l|4P)֠B@Vΐ }IʝgQB_|f +Szyhed z]NtlM3Md(_9cK cO!R̘<^Z{!シ֧9h,`Rgֳu(;XBUwphӑVRZ^Wn>b% m)cgVJWO&$ўH7vB&+gHҌ4Wۿ PTRnOӪrO׳U_I(' ? +FqgU07UFi̖Pe~̱ Z kP##>:,;-Ij3 H~Et!J`]ukU#?cOrXva3MB[.SBnAsX `ӰX9p(P[lQ20bq<*yRgJ98QaU"E ܳ\ +3:tdR\79 za*w )] +lwV5[r{JvNO]hjgh%ש!.-Qթʁ==)JhQF,rQ%DH`Hkn`Y3VɁdExsc94T&ѻti%oo-9 4s(tHOKm]%J= KH/?v?GMRkC,ʛe-;wu욃%%PGR75bjGQؑ3gmHa_.z`x@"t5 +"j?<ԐjULN9'>B; = ΎG8h쪦#AYn }]NY֌c%g +FT'HMbQb9!͟ +s v^HgKgW[d4UFb)|WlW% ŰA6[R̜0IΈBCZc da֙|.㭜 !7OeЩ+ is#=fp:rFmKMO*{TlwV0޵,; xɌ2e۫],Fcc} +*/rFxAjݨ&uكvlWK*)YHt9Cm"k1 ڬ @@|=N[/dqS`"Bj-` +Qx5&M2!:w2vA$@!rPCV nӝ(xϗo4! Lx +Q!_Afg1WFiFf>iEtөa.|P$hNƋ)k[b!5Cu ˁ+b5 9FO,Sf5 RQwsMBv^y>d)M%eq_CRP-g7lT=y'qy6X`Z&fh~UTUMM $Äu7!GZn-fw:kfɲ̼Xt1*&a_-vI|V1( n`pvf_ rhY,.8%Q\V)׻8l$v)0 +g9,}gbB +D3櫗o'yIR]$A -l 0/ۋ.󳥀BLetKÙ +\`6 iQ.J͐c|u(ʃ"TJ6i8(qMuf4/u_J>梱j)$y_HZoCt޺L\5_ce_uMd}>I-# Y 欑QH1)b.J6\ Hvf2B$p1.T5QKͻqxXA6j'e Kfݠj1A^ſΨJ_ۭLoۙ?cx *H6`XS^ ׋:uVROI}\2n9~QPX!uFOCjuo BԦ\ OCYbV 4(v $^KJK "P +*RGLrF!R}P:>.v$?p,.:*?{} *Bu_AP% ,a;NШ(N:61 Lc :I8̪>H"=Mr7@~WU<;Nj~6w+܊}Q)uw4݃iUvwhcO +F}lڤ VTdfBAxDHؙM /bz L4a1xw +Ec.6ot^Gyaɡ+>tC+aDC 6]>*`Æ40Y0؃B%H1@A<!ነ97pmcPwV& g#v6#BZz$x*:ѝ_(ygW_ZdS+ƣ +ÓTeO>iR|!fJ*!H;BVѤY6u}fYx +< U@HM\ASI@KUK/D-7+KG-d?Ѭԩ+O98/9T^ zr^w9A--QFu%Vٓs&Y/2{ p{m^ױb{NO¼/;%U;W<|Y#7ZLA?J9f*nQfit58W`1pﯓ`L n,Jkwz/! ~%JrAebscA"sϙba *8y? >T3L(~??^#@?lƢ7#tzk +(v t rkfև͉*k$D9RI8 D^kC~.ph=1oήa->SM'epB-źk!6%)Kaahl-ji~:VP@V-j/{ RU2@9qlV#՛Uv/gr_Z+1l[@P5w0.Щjdq!l ?vZ`pǤ}(6 IpLrb;4e8}0|}-AK*s狺yH;>Y IߓYӥzwNӕ9Z78>HH'/v:8gW!raVR\:5̩BH$R5D)3`LS.s œ)aPig}Ŗ&~U%S,S/P]0@Q@@Ɍ](|c"ͤ_iK{G%}75IpHy ym%3>)jsOKM:Cuy4ZKU$m`Y 2BŇ[fIc޼yϦZo ke\".<=%(?uC)/R:YU.)B٪d3rQLmX2Dfj~>F?z7NPaWίfE{rCrj7wo4q}mP Qe<:wv#> >r!+i¬?vdZ O|ϐlWq-u&pCK!FڡJ' 9ÃGպ߿\XEl>}@E^Zn|,hFVYtlm['hlBek62]FF»wvťeݕz(y *fW G\~cH>8bDD><1!J!TYT_}.?GTvM)Wq9 (  MC훚t@| #q4h5'S9%nĪ[_m0)ry>ukZf] Y`|JY`;ow0 eZ,>h^fK;4.V@u/ߘ3&=Д̈;MU߇0>kG TC."!/I@u^q/1ԶSVk_RTǶpȨW<_xfdi*t\~M{pi AP87*Uh;D ZyYnWZ!iQv$]c$c0U`#N3 i1X0a$uQ Rp! U7J+ٺI-2$W$3ʎK稺eع`a~GҘ0JMHEXr␚mfU*(9+Jk +w - "{*fJՐkl9&Gr8*pO|;Ϸ6]6ݟUtTUղQ_ r0Wyc Ӯ4?L_I.j=j3 %Q2*gj־R*{ޣ<x}eXo芐,kg_Nz -3硰hM{JfQ4Շt%P .џL{H;9l+)oŊN;KG (2gHRmk NZ$ޑ!B^u9BE!3Y`LbvdW=K`lqӑ8N|l-wf(oQfe(`s}fEǃcqd8N'l(}ԛ_NZ8#Ů%k$pk|.yrjrX!;bhDd<IGYC{6ӀlU*!i{Ꞇ!u-< +Vn !<1Z|NÔܶI*Hf<)}PWYNIJP}%s8Oa^H ܇@V <4ɿF;0JRvŷ4~ptzNBGM0О[P09\o"##Q(,mHtmF־BbYDmsl0b$=f٘L.UqK1 $7fA0Qug*l̆ZL,agfR2a=\ A(Х"֐R!mvd@DPS:!z9%cT~K'#wPp FŇӔO>Cr4~|ڮz)F790 z`!C&g[T3ؔSL&G#h wL&GCo pw: i;Ŭ)f:pJz@&8MM/MSiiKYдBQt?~D̦-V8-\`|jOp?~fLE푅\aW/ʑ#ƑWR7DvfXC-&*uf3_X|= l"ėj~f}h ?0G_% +7.(Fg wh޸H6W::-}<ڵ)ٛZ(FHqu 9pfiĒT%cK$׌ ;+dRm1v8N-K>sKc*j *-T[?"ÌAܷM>k,spY:ű#chNx ܁yn$6$:bm*׼aj#l ֒AS9q^ovScK7<%}n +:f=^$?|k[!%X2D`Hbx`H$wlU27e+M Pq|f2JVOZ&zB1]҉16Iԗ0XPg֊k"BȠQ@dta2QQ̓Q=׾";5Wkr]`bc@\X0.;ǐ9#;Op] t h6*HL$M1|!7 +׺V8#;[m _HӉ[7y\xd^,YfVxZ#*FqȃAEumt<:ID,NE5LQ˽׫F]c=)u +ey_~[2MiezFNIQc[i8\ct[/3]}:#Wa=ci͡H:@K !eӯ4ezX/In{W|KRq>B!>C<#zOq!DCѺ&>nq!z LJxM\!N}&n%&=]L7aRtH;>Gwџ¹盰.M!ιWwY_f|= x=b#_R$ybdafM"W&p:[:}4%L}G{wl ,yI|L{y G:kkk+}-Dwgψ } +UkAa’L٭%pU{/Q3Qf喯M7fDf QANjV.DBb;/<|m:qg-7\ n|nՁ vܞdPƤ/{7&{*Z F9 +t~1J("T $s%ޭTࢗJ0_澫c?ƼO/^$aZ#ljqqZ8n-wOHR"dm.d)K^UNYR>G lr{BbNP42 +f#)ћ%.O:K=6Bi~L5Bn^R[+WpǸ!F9u EN- 74Yxqg.ͤC!:U'\\ȵGR4_+\~3}TyI_?roxtĉށN[zi0 N&.rOf5IMȘ\6R#M+a yŧNڈICfvihIV0K}*1z2eP'e04%4 Z!z"PS.5kC[$) ײ*u+rb<.P<ܚZ>c Dlǀ@ z755 Pk }UۂcbAn]JE@G1(]"DRbee0Rm/0NA`+Ժ=f^Zͮwe2>h,`l3,˴dZMNB+Va%HWS  +CAϴ$$^̶ʗxDV IeE$mYZq^Us#RⅤt{gP:!ĺMWN)\b! .k4}hq $gV+f"f)f_Ḧڃ8䋖Ӭuz%>&đȅH]I»d}ܧu%Ce@@(R(y@<-pN],&ib~@]NĶzƟ#;騹ȞvIk *)*]=~=@otni}rt3$;#z]ђ't`yju0r(Z%Qҵ}ABLs X Ĩ`%] kgMz6h?m_&2+q aڊtauV9VMrrnF 1f oJK@$&J:S|Le[>)aE7_Z KNI{5}n֍&pziJgz|KZ`7T{?y8y+a':BK/Č1\LKyZbc)v"dyy#ϗ_i5uoiy؈8]̀ղ#I g}N{ z@h_""2r5H3/gF::.@XFJyKP6Y|˨n +\ ʂNlw~Dciaч=0'7l­p4pmY V2GRRX%@o 0d8 >W}35 ɳO\v4Y|B/hr!K@ +B} ùtщ 2oͧvz/;k=2;P3e|~#߶O_6Ki9"ۖ2,^A4ϭ~nO?>hDxt=kAy+zC | +FîkQp@&O *9KESr'u_Ct 4&.i>˳@A4 ݼ HEep&D]䉞 +E:TveEQ?jv~g +Ÿv`cf!0q1!Z!5k}{} +yT9B7d>#_8l ~lL3 x+l"s@ow]x*R+Tydԋ_wD4QFېHy$/"_0:"R_ ]ۘAľ;#dJ`IIS { RY8r{7N'MI+V |vd!a9oWδB`fW +d*eL#Hf8SwQmGu9`~P7OXbGW' !1wx{Y7)#ʁuO-`ȧ ?'NMgg(SřFXuWlJvoFPsC fgՎnMKVXX+X́ =4o#z!z%;`O|?$lj珰 `a +endstream endobj 7 0 obj <> endobj 18 0 obj <>stream +8;Yht4-&>\&3Z+tONF:dE\NWZYSB_:/.(M@P6EjSA-G:=0XaUd_`bg;S@G`.7?Or@ +]mY9EZb7n`m;)@!A1uBO9)gjFG^[$SVN6.ACt?WZs0(\Is*9(SaYqWVU54UZ +M5XOWO!rn?qO+QV@T2:,>()Y22Um5<68F%hcG`D(*6W2tRlCn*18;YF]M]guN\-2( +B0&P<,kr%`>cEdi*459HH";EIaI,8A4r5LuYuVrKhWoH4[qCX2R?FM9oRDm?Kfq5; +hUT0lIKOhl%n'LF#L!VADn]$85;QS4M%GTuTgpcN)AFC@lWeQ1LScXd\ +I@/[aG!6f9;6?kj70dPI4'm\)bIgLW`l*Wd>ji0WSI+* +p$mfZq+Um/h@8Cp'0]He%3p;n)2h7ur(D?QUi>9@/f.CP^L*!!j((gY\*F^X"aF*' +<+;+V_KaEKZIA^>-X4`ol`5\8OJ5jPO"ef;1sC9:<.\`ESK&aBcCS$]-)NJrk\"TF +4*Q*N,QY&3eK;-JK0ENKenlLJRM3;9S'a`r=j+D>,]iAG0llEk:V/#Q(Wfb2#W_m+ +Q53V3]OU&=DS.4T;B(D#3'I0@$_Q[Y@tLK>S/I/h5@4DqT-lqun'I.JJr^d=`lRs= +A`M^[lfVJ'p9R$$]l%_trRb["2:bD!WucT +bu=*#m;m\D8"Zabg8Ijn!WT1HD0Q2/,Eu#7H`K/cTDV'LjrZHF0aW+F<>VPK:X9PX +im*-s^d`*r]$Xe'>V\k4.75.j&6e\d[&16C3;M7c1OW@``dJETZmO3q"(;mq=V.CC +E@V?b7\^[Oe0Bcef.2pG-4-<9+(;@0Trlkc4'tUGo^Nk"ok_#2r-4'JbmEpqrYY]e_SXn~> +endstream endobj 19 0 obj [/Indexed/DeviceRGB 255 20 0 R] endobj 20 0 obj <>stream +8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0 +b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup` +E1r!/,*0[*9.aFIR2&b-C#soRZ7Dl%MLY\.?d>Mn +6%Q2oYfNRF$$+ON<+]RUJmC0InDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j$XKrcYp0n+Xl_nU*O( +l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~> +endstream endobj 17 0 obj <>>>/Subtype/Form>>stream +1 1 1 rg +/GS0 gs +q 1 0 0 1 384 266.75 cm +0 0 m +-0.05 0.05 l +h +-90.05 0.05 m +-90.05 0 l +h +7.05 -81.75 m +14.783 -71.117 18.65 -58.85 18.65 -44.95 c +18.65 -27.416 12.434 -12.434 0 0 c +-12.434 12.467 -27.434 18.7 -45 18.7 c +-62.6 18.7 -77.616 12.483 -90.05 0.05 c +-102.45 -12.417 -108.65 -27.416 -108.65 -44.95 c +-108.65 -58.783 -104.833 -71 -97.2 -81.6 c +-106.733 -69.834 -111.5 -56.066 -111.5 -40.3 c +-111.5 -21.9 -105.017 -6.217 -92.05 6.75 c +-79.05 19.717 -63.366 26.2 -45 26.2 c +-26.634 26.2 -10.967 19.717 2 6.75 c +15 -6.25 21.5 -21.934 21.5 -40.3 c +21.5 -56.133 16.684 -69.95 7.05 -81.75 c +f +Q + +endstream endobj 21 0 obj <> endobj 9 0 obj <> endobj 13 0 obj <> endobj 14 0 obj <> endobj 15 0 obj <> endobj 16 0 obj <> endobj 25 0 obj <> endobj 26 0 obj <> endobj 24 0 obj <> endobj 27 0 obj <> endobj 23 0 obj <> endobj 28 0 obj <> endobj 22 0 obj <> endobj 29 0 obj <> endobj 12 0 obj <> endobj 10 0 obj <> endobj 11 0 obj <> endobj 30 0 obj <> endobj 31 0 obj <>/Shading<>>>/Subtype/Form>>stream +q +0 g +/GS0 gs +0 114.0005951 103.8505402 0 215.9746094 233.5996094 cm +BX /Sh0 sh EX Q + +endstream endobj 32 0 obj <> endobj 33 0 obj <> endobj 34 0 obj <> endobj 35 0 obj <> endobj 8 0 obj <> endobj 36 0 obj <> endobj 37 0 obj <>stream +%!PS-Adobe-3.0 +%%Creator: Adobe Illustrator(R) 12.0 +%%AI8_CreatorVersion: 16.0.0 +%%For: (Kenney) () +%%Title: (spaceGraphics.ai) +%%CreationDate: 10/8/2012 1:59 PM +%%Canvassize: 16383 +%%BoundingBox: -95 156 706 637 +%%HiResBoundingBox: -94.5 156.5 705.5 636.5 +%%DocumentProcessColors: Cyan Magenta Yellow Black +%AI5_FileFormat 8.0 +%AI12_BuildNumber: 682 +%AI3_ColorUsage: Color +%AI7_ImageSettings: 0 +%%RGBProcessColor: 0 0 0 ([Registration]) +%AI3_TemplateBox: 306 396 306 396 +%AI3_TileBox: -90.5 90.5 701.5 702.5 +%AI3_DocumentPreview: None +%AI5_ArtSize: 14400 14400 +%AI5_RulerUnits: 6 +%AI9_ColorModel: 1 +%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0 +%AI5_TargetResolution: 800 +%AI5_NumLayers: 1 +%AI9_OpenToView: -605 930 1 1821 1045 26 0 0 50 116 0 0 1 1 1 0 1 +%AI5_OpenViewLayers: 7 +%%PageOrigin:0 0 +%AI7_GridSettings: 1 1 1 1 1 1 0.8 0.8 0.8 0.9 0.9 0.9 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments + +endstream endobj 38 0 obj <>stream +%%BoundingBox: -95 156 706 637 +%%HiResBoundingBox: -94.5 156.5 705.5 636.5 +%AI7_Thumbnail: 128 80 8 +%%BeginData: 22780 Hex Bytes +%0000330000660000990000CC0033000033330033660033990033CC0033FF +%0066000066330066660066990066CC0066FF009900009933009966009999 +%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66 +%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333 +%3333663333993333CC3333FF3366003366333366663366993366CC3366FF +%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99 +%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033 +%6600666600996600CC6600FF6633006633336633666633996633CC6633FF +%6666006666336666666666996666CC6666FF669900669933669966669999 +%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33 +%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF +%9933009933339933669933999933CC9933FF996600996633996666996699 +%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33 +%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF +%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399 +%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933 +%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF +%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC +%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699 +%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33 +%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100 +%000011111111220000002200000022222222440000004400000044444444 +%550000005500000055555555770000007700000077777777880000008800 +%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB +%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF +%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF +%524C45534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C534C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C524C524C524C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C284C284C4C4C284C284C28 +%4C284C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C28524C4C +%28524C4C28524C4C28524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C524C524C524C524C524C524C524C524C524C524C524C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C524C524C524C524C524C524C524C524C524C524C524C524C524C52 +%4C524C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C534C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C7D7D4C28767D7E7D7D4C4C537D524C +%4C534C524C534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C285282AF7E7D7CFFFF +%FF7C7D7EA8A67C284C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C774C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C52FD044C76A6A8 +%FFA8A6A8FFFFA783FFA9A77B524C4C4C524C4C4C524C4C4C524C4C4C524C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C524C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C4B7C7BA87EA87CFFA8FF7CA77EA87C7B514C284C284C284C284C +%284C284C284C284C524C534C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C524C7D4C524C534C524C534C524C534C524C534C +%524C534C524C534C524C534C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C524C527BA6A77E52A6525352A77C77A8A67B764C +%524C534C524C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C7753284C284C4C4C284C +%4C4C284C4C4C284C284C284C284C284C4C4C284C4C4C284C4C4C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28527BA77D4C7B522752 +%7C5253AE7B52284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C7E4C +%524C4C4C524C4C4C524C4C4C524C4C4C7752774C534C4C4C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C28 +%7682A84C767C7C7B7C4CA8A67C4C4C4C524C4C4C524C4C4C524C4C4C524C +%4C4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C28527D52284C284C284C284C284C284C28535277537D53775377 +%524C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C284C284C2876A77D27524C4C2753A87C284C284C284C284C284C +%284C284C284C284C284C534C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C524C534CA84C524C524C534C524C534C4C4C7D77 +%7752534C534C77537D77774C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C524C534C524C534C7D77FD054C53A14C534C524C +%534C524C534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C +%4C4C284C4C4C284C4C4C284C4C4C284C4C4C28527D53284C4C4C284C4C4C +%284C4C775253284C284C4C4C284C4C537777284C284C4C4C284C4C4C284C +%4C4C284C4C4C284C4C4C284C284C284C4C4C284C4C4C284C284C284C4C4C +%284C284C284C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4CA8524C4C +%524C4C4C524C4C4C7D534C4C524C4C4C524C4C4C524C5377774C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C +%524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C7E53284C284C284C284C2877524C284C284C284C284C284C284C +%28525352284C284C284C284C284C5158284C284C284C284C284C6F4C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C284C284C524C534C524C534C524C534C524C534C524C534C524C +%534C524C534C4C4C534C524CA84C4C4C534C524C534C7777534C524C534C +%524C534C524C534C524C7777524C534C524C534C524C7C7C4C4C534C524C +%534C524CA14C524C534C524C534C524C53FD074C534C524C534C524C534C +%524C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C +%284C4C4C284C4C4C28534C4C284C284C7E53284C284C4C4C284C5353284C +%4C4C284C4C4C284C4C4C284C4C4C28774C4C284C4C4C284C28577CA85152 +%284C4C4C284C4B9AA1704B4C284C4C4C284C4C4C284C4C53537D4C4C284C +%4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C777D4C4C4C524CA84C524C4C4C +%524C4C4C7D4C4C4C524C4C4C524C4C4C524C4C4C524C4C52774C4C4C524C +%524C5283FFFFAE52524C534C524C9BFFFFCA764C4C4C524C4C4C524C537D +%AFA9AFA8AF7E7728524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C +%284C284C284C284C284C284C284C284C284C284C284C284C28524C4C284C +%284C7D52284C284C284C28534C4C284C284C284C284C284C284C284C284C +%284C524C284C284C285858CFAECFA8835852284C6F9AA1FFA8FF9A9A4B4C +%284C284C277784AFA8A984A8A8AF847D274C284C284C284C284C284C284C +%284C284C284C534C524C534C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C774C534C524C534C4C52774C524C534C524C534C +%524C534C524C534C524C774C524C534C524C527CFFFFAD52524C534C524C +%9ACAFFA1704C524C534C524C77A8FFA8A1759999A1A8FFA87D4C524C534C +%524C534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C2853FD04 +%4C284C4C4C284C4C4C284C4C4C28FD044C524C4C284C4C4C28527C832D52 +%4C4C284C284C4B76A1704B4C4C4C284C4C4C7DAFA8766E6F6F996E9AA8AF +%7E53284C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C +%5252534C524C4C4C524C4C4C524C4C4C524C4C4C524C774C524C4C4C524C +%4C287C7C4C4C524C4C4C524C4C4C9A4C524C52FD044C53AFA8A06F754B76 +%6F996E9AA8AF53FD044C524C4C4C524C4C4C524C4C4C524C284C284C284C +%284C284C284C284C284C284C284C284C284C284C27774C4C284C284C284C +%284C284C284C28534C4C284C284C284C284C284C284C284C284C284C4C4C +%284C284C284C284C2752284C284C284C284C284C4B4C284C284C284C277D +%A8A86F994B28274C4B6F6EA8A97E284C284C284C284C284C284C284C284C +%284C524C534C524C534C524C534C524C534C524C534C524C534C524C77A8 +%A24C534C524C534C524C534C524C534C774C534C524C534C524C534C524C +%534C524C534C774C534C524C534C524C534C524C534C524C534C524C534C +%524C534C524C537DFFA199995228524C526F6FA1FF7E534C524C534C524C +%534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C +%4C4C28FD044CA2534C284C4C4C284C4C4C284C4C4C28524C4C284C4C4C28 +%4C4C4C284C4C4C284C4C4C28534C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C287EA9A16E752728274C27996EA1AF8428 +%4C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C524C4C4C524C4C4C534C4C4C524C4C4C524C4C4C524C4C +%4C774C4C4C524C4C4C524C4C4C524C4C4C524C4C4C534C4C4C524C4C4C52 +%4C7652524C4C4C524C4C4C534C704C534C4C4C524C4C7DFFA86F6F76284C +%27769999A1FF7E4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C2852284C284C284C284C284C284C284C284C4C5228 +%4C284C284C284C284C7DA7274C284C284C284C2870934C284C284C284C28 +%53A8A9756F6F754B4B6E9375A8A87D284C284C284C284C284C284C284C28 +%4C284C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C534C534C524C534C524C534C8383524C524C534C524C5370BC +%4C534C524C534C4C4CA8A9A8759999996F6F6FA8A8A94C4C4C534C524C53 +%4C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C284C28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C7C82274C4C +%4C284C4C4C28769A4C284C4C4C284C4C4C52AFA9A8769A6F7576A8A9AF53 +%4C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C4C +%4C524C4C4C524C4C4C524C4C4C534C4C4C524C4C4C524C4C4C524C4C4C52 +%4C4C4C77534C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C8282524C524C4C4C524C4C76CA4C4C4C524C4C4C524C4C53AFAFFFA8A8 +%A8FFA8AF7D4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C274C4B524B52284C28 +%4C284C284C284C284C284C76A1284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C5158284C284C284C284C28769A4C284C284C284C28 +%4C284C5284A8AF84AFA884524C284C284C284C284C284C284C284C284C28 +%4C284C524C534C524C534C524C534C524C534C524C534C524C524C524B76 +%5176517651524C534C524C534C524C534C7D7DA176A877534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C52 +%4C524C534C524C534C524C4C4C77537E77774C4C4C524C534C524C534C52 +%4C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C28 +%4C28524B7651754B7651754B765152284C4C4C284C4C4C285377A8527684 +%A1FD044C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C +%4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C284C284C284C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C4C4C +%524C4C4C524C4C4C5275765176517651767676517675524C534C4C4C524C +%4C4C7D84A19AA8774C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C +%524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C284C +%284C284C284C284C284C284C284C284C4B764B7651767576517675764B76 +%5151274C284C284C284C284C5277284C284C284C284C284C284C284C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C534C524C534C524C534C524C534C524C534C524B765176767C76 +%767576767C767C757651764C534C534C524C534C4C28534C524C534C524C +%534C524C534C524C534C524C534C524C534C524C534C524C534C524C534C +%524C534C524C534C524C534C524C534C524C534C524C534C524C534C524C +%534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C284C +%4B754B76757675767576517675767576517551764C4C284C4C4C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C +%4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C +%284C4C4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C +%4C4C524C4C4C767576757C7676757C7676757C7676757C757651524C4C4C +%524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C +%4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C +%524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C284C284C +%284C284C284C284C284C284C284C4B765176517675767576757675767576 +%75764B75274C284C284C284C284C284C214C284C284C284C284C284C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C284C284C284C284C284C284C284C284C284C284C284C284C284C +%284C284C524C534C524C534C524C534C524C534C524C767576757C767C76 +%7C767C757C767C757C767651764C524C534C524C534C524C7E7D774C534C +%524C534C524C534C524C53537D52534C524C534C524C534C524C53527D77 +%774C524C534C524C534C524C534C5352764C524C534C524C534C524C534C +%524C534C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C +%4B765176757675767576757675767576757651754B4C4C4C284C4C4C284C +%287DA8CF7E4C284C4C4C284C4C4C28FD044CA8A1A2284C4C4C284C4C4C28 +%4C4C4C28A2A8CA774C4C4C284C4C4C284C4C4C284C52A17C7C284C284C4C +%4C284C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C4C +%4C524C4C4C524C525176517651765176757C7676757C7676757675764C53 +%4C4C4C52FD044C7DA076A84C4C4C524C4C4C524C4C4C524C7D7693A1534C +%524C4C4C524C4C4C524C4C7EA193A228524C4C4C524C4C4C524C4C287D9A +%A176524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C284C +%284C284C284C284C284C284C284C2851517651754B764B75517675767576 +%75764B764B4C284C284C284C284C277D6F9AA853284C284C284C284C284C +%284C779A68A1524C284C284C284C284C284C4CA876937D4C284C284C284C +%284C284C284C779AA0A0274C284C284C284C284C284C284C284C284C284C +%284C284C534C524C534C524C534C524C534C524C534C534C7651764B7651 +%7651765176767C7676517675764C534C524C534C524C52A29A6FFF534C4C +%534C524C534C524C52287E6F93A17D28534C524C534C534C534C53A89A6F +%A84C4C4C524C534C524C534C4C28A2939AA1774C524C534C524C534C524C +%534C524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C284C +%4C4C284C284C284C4B754B7651765176517551764B4C284C4C4C4B4C284C +%59A86F93A884524C28FD054C284C287E849368A18453284C284C284C4B4C +%28537DA86F93A17EFD044C284C4C4C284C4C777D9A68A18477284C284C4C +%4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C524B524C524C524B7651765176517651524B524C4C4C534C6F +%4B7784FFA8764BA8A9AF59766F704C704B5353A8A9A84B4C4CAFA9845252 +%6F4C4B6F4C7D84FFA8764BA8AFA953766F4C28704B524CA1A1A84B7076AF +%A87D4C5276524C4C4C524C4C4C524C4C4C524C4C4C524C284C284C284C28 +%4C284C284C284C284C284C284C4B754B764B4C284C4B514B7651514B4C28 +%4C284C284C284C6FA884AFA87D274C7DAFA8AF7E6F4B4C4B9A7EAFA8A97D +%4C274C7EAFA8A87D6F4B4C68A184AFA8A8272777AFA8AF7E76274C45A17E +%A1A1A8774B277684AFA1A07C76274C284C284C284C284C284C284C284C28 +%4C524C534C524C534C524C534C524C534C524C534C76757C76764B534C53 +%4C7651524C534C524C534C524C534C76A8FFA9AFA1946FA8A9FFA9A96F4C +%4C7076AFA9FFA9A26F936FAFAFAFA9AF6F4C4C6FA1AFA9FFA89A6FA8AFAF +%A9AF704C4C70A1AFA9FFAFA16F946FA8A9AFA8A76F524C524C534C524C53 +%4C524C534C524C534C4C4C284C4C4C284C4C4C284C4C4C284C4C4C285251 +%7675767551284C4C4C284C284C284C4C4C284C4C4C284C4BA8A7C9A8A86F +%93A1AEA7C9846F4B4C4B76A8C9A7A87D936F7684AEA7A78470284C45A8A7 +%A7A7A86F6FA1AFA7A78476284C45A1A8A7A7AE766F6F9A84A8A6AD846F28 +%4C4C4C284C4C4C284C4C4C284C4C4C284C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4B76767C7576514C4C524C4C4C524C4C4C524C4C4C524C4C +%4C7077A5C0CDA2936FA8A5C69F7D6FFD044C7D9EC6A5A26F9370A8A4C69F +%7D4B524C6F77A6C6C7A89A6FA8A6C69E7D4B524C4C4CA19EC7A0A175936F +%A7C6C67B7D4B4C4C524C4C4C524C4C4C524C4C4C524C4C4C284C284C284C +%284C284C284C284C284C284C28514B7675754B4C284C284C284C284C284C +%284C284C284C284C274C4C5151A86F93A17C4B52274C284C284C284C4B76 +%7D93689A7D514B4C284C284C4B4C4B5275A86F93A17C4B52274C284C284C +%28524C5276A16F9A7D754B4C274C284C284C284C284C284C284C284C284C +%284C534C524C534C524C534C524C534C524C534C524C5251764B524C524C +%534C524C534C524C534C524C534C524C534C4C284D7DA19AFF4C4D4C534C +%524C534C524C53287D7693A15328534C524C534C534C534C4DA8A19AA828 +%534C524C534C524C534C4D2876A09A7D534C4D4C534C524C534C524C534C +%524C534C524C534C524C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C +%284C4B4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C284C4C4C2852 +%4C52FD044C284C4C4C284C4C4C284C4C524B53284C284C4C4C284C4C4C28 +%4C28524C524C4C284C4C4C284C4C4C284C4C4C284C4C52284C4C4C284C4C +%4C284C4C4C284C4C4C284C4C4C28FD054C524C4C4C524C4C4C524C4C4C52 +%4C4C4C524C4C4C534C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C +%4C524C524C524C4C4C524C4C4C524C4C4C524C4C4C524C524C524C4C4C52 +%4C4C4C524C4C4C534C4C28524C4C4C524C4C4C524C4C4C524C4C4C534C4C +%4C524C4C4C524C4C4C524C4C4C524C4C4C524C4C4C524C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C524C534C524C534C524C534C524C534C524C534C52 +%4C534C524C534C524C534C524C534C524C534C524C534C524C534C524C53 +%4C524C534C524C534C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C284C284C284C284C284C284C28 +%4C284C284C284C284C284C284C284C284C77537752775377527753775277 +%537752775377527753775277537752775377527753775277537752775377 +%527753775277537752775377527753775277537752775377527753775277 +%537752775377527753775277537752775377527753775277537752775377 +%52775377527753775277537752775377527753775277537752FD7FFFFF +%%EndData + +endstream endobj 39 0 obj <>stream +%AI12_CompressedDatax}v=kLD0 3-`f>neDߙsf +uUuWZНIID EۜO\@AO}yJwY2yT@;w= Wχ];6ݒМY*@92q"Dsz46gT"@7b鏿9O$S'MP*FݙP2gH'0;i/F*L٬8NYS{._it_fl<]9dp8,b* 'qw3 *Fnպ9`b,ޖmS.Ϸݯ> `5(\C@ePRrh:?D_9dܕJ @ < !ݾ] ݸ?bO/'襾RzS΁hb + I_]Dz'>%P} D2!) "w-!mBU +1TB?mK~G%Q\sьH|˭(^jHMD/k&7'#fm ?|IOTJ7ށPU?Fq%>˼W xX&sG@lhOAHO r9 :v? +Ļp2Ti;0uSyu7~}4j=W@-S9o@c:""g܁yWd4E֋kNmTהTM"?f"a;n /6+=HWQd.H ;HlʪFqXEJ>ep ]0rNQ4r1DWQ ZLcqe 2`͕MA%IBly*[]Edb Z LND."ݕvW ŖW[^)PňF\8d鬯4 'Y a%ϋȓ:z4ӻ1)E:dWȊ|ʀ|IsFHF9qšQF3CH 5V3g4hi'[;wa$'",]/JG.-S?300aE{[Hsdk#FvheadDD!6 teq'D-h10C2jh2&c4j@Cg"5]D;cY1M f Zle6+3Hϊl<[؀Ҡ&FthK34,5k*{0&$`l^ҹ8q2DLI}!L9<](,;/g;k39C濸 !񿦿I&ʔ,X4SN$3EI4RNdq=RSrR3Ei69Y䁇8E8&p + .G tO+,IWn88f&Uggh5װ *_c˓'~6kw2h:*ϵ1Dwnߝ|L + _RPIGB\z_ Og" c*꣝?<1h)t;;wnT[mLbx9cvC 3jk*fb5y"N5Ө#߇ʌw Hs0漉X9&@|~=MtjZ<> P Ҝυ~k1΂'0-jES;Bw,"=s@}q`<{)̎@8ka/gsP +3(#Z3Gx2pt;$ #:ܰNԺ+&Sl=Rܡl $ 匰R^- Gl/f~+fMdo1=o 4֞,Q}M>9jNCچLӚ~yW[~cD`X,vo#ϰ"`pGcԝ7;`^m1ٍבb$xNS:l*L Ji#,l`t27k2˦eLQyn'CAm}9wZx#w3G=Y=_b]l6 xcgڜvϬ?Z q.HS&Mi]>  lAL +f,kк_BWa"‚xRDʺh\Dz68VۀQ!>qU; +v=s}l/RPX B<mAQLN +{!ݗދdL~l/Qq#1Tѽ|# ߍmMMFKۧK=JqxI}^m + +zv*L>nH-]*ˣ\~ޔXܨU +XM 0i/PF_?g]r=c%b؉s#5RhIA:qIl)؜Qs^ E2P=̑o!TTeZhPB':$-FJ~ ܛ#𘦫̈́-0௨=+JLi,6k7]6ǂ:t֞ۿlԕX=25 {X6lN]C*hׁh4ZFfh;NE=7/ nrcdT0 ̠ta[L S9AT. +̎j7@C:Asm +kG"ʲ) f( k[b&Yy3tЇb9*CTnn 0aFtϮM EZ}d$}w(:a_B,ءa<&CY Vz[Tw|1OŇi}biiTHfp ,REZLMhƌjA10P@{(pԻ%'Ӷ%fv%:"Lpf.\s1nXH (|0~2ab>F{wZmyL;@I:x{# +1I ŵGl-5dstELRF +Bʛ*O]YK7~6vRa+|vKK(#elC4UoڀH)XW5>6nsΚ6I58(9vSuFR}׊kPUn?3(MyA x;tqvB|-<ѫ+L5L"l+رyxhFA;z 3)*rУ{ GI9(A XVHfd=. + /?|r}DIs GCӗ=tVˉSJ^k-p_73uwQ{]2yx_E;sef?LČf„p=,YaV!cptR9uvsQ'bF%XL~.T߯L)G` P{ MDeZ/L Cfc͋S\)ObEYm~ιd}t-7,L;jsMKA + +E_.O{v9@!'fZ>rr#BeA_~PrIݿq? +_ң~:}&h} rq6[n!Atrb D_".3LWGby~ gSh ;I'o}9G^q'} uL=P7cf"w.%kxoI@`( ׂ{?B'|^*bbk#9p#:9${u,Up?|_aj*- J1e j[TR^}4I=Qm~Xk6>jdwuO5Nyd'ĽCLb}apxNv&*LgT/+<TDȸE| 7.Pf>ߥbsj0!QU@hS E~OY)$0?< *70m,Æ7~/1×] #^¦x 鵄CiƎK@}s4*vD'B}<F%"Pby@H^CreU [ **cQ윆/U\1YH2kW&<1_w|#Ka?.9{Em2= +{w_{k~ıMccUkwGk5ǃ~EMX=# +@[>ޥou&q;,z0!Z䮈{>OOcgpT\;\1Th\8bܙjraȪ̵ƻZ"8;'ٶTc^Lb/4j2O=m⼸\sAQ#scF3wlz,3UQVx`[^ +CB96r)6AUBUwb9y Y~xQ* "-9DPԡ"%fH}=crSli9ɣGn+ %^X0ylJtmX_?5Yf%w~| iWxsw^(2J3J ò<'rѐ@*dD@+OQI?F}[HnKifZF`c!@nqY3_;h2fr &y?}j=IVog\Ԏw^wp@//5SȤшK?Rʐ㺗ߟl0ͳCʥBubW0}>698:sSd*NRki4?rߊY⥽-=Ѽ9KūA &-P1(`mOLAP1sg)@e?kbחN^#a ޻Xq3՚R..qOo_[AOzׇizQ(Em>4\*'TŒK-'ϛE!l/ү_|u{;؀6/B~M>5[=t +C&`82xThkɗItƛBhMnB7#BS U^Nh,wS(M(rCh*x#u>dtwZ]/سٌ x.G6~Ijinva899&|q+&iB#ٿACoEӋ=~ 25豥.YJܶfJG|-n 9#*D@0X*}q&預?iR['A$1 ?Q'wINE*7HeMRomwsAgZ/M q +FE<9dc79f9(| w٘ž1.H0Rt-\|u`0r;DwH ƧqI:>>-{ϝ]77R*א7XAڠ0 NaAYq{LʋOX+_)j7^Cܤ>Ϸ%Ttd$鴙sTBDž.#@K^ZgGQ#N]ϑ*3ǧ1fΨ?[k.zh;Oq7Ewz)zNW9£f݆{k>T~ +у.̉0c֔Dj b|1|=pЙ9zV/H286}]9C_ Rצ]+G͇7rqc>e'}w'0)A]?KΏ&\ +`߄n c߀-p}O\bo/J<x_R1Vnp̾{vS*?A#:7^aχ@7/{|dmO:>QS\ΥT5t,`O:AtSoH(^زP(Wvt~}vKZЛ./َp((@ @xޫUK{ eABakAUwS_{e' m;C1]稕dGɃԯcn2n5}H\0U{i89p + Z(R;%[B')v<8!:y=}L&=浳nQN|\4s!;uZBlqQ-N{D[ ^'79#/ҋ~߁ B3A gMo)PJ?'@@QPovzd"7{#L#IĎMrF.WܩwZ\B/ȕ?Ke}k%Ͻ^G-B4XC-Id&+M.%>{ǖKR=&.2I{v$eJтZh(K"P;`Sr›UVPS7`Cxa7zrE6#)Y!n,ݧfP wf~dj]aZ3O-R{gCE י3]~ۿ_ޚB-M.̠/_$/|'2\Cb?5k]s ko m. 1!P_֭{3@~_I]}Pޠ0˅fPc",f3I#n5 nj ,qeHJnGT}-R{e +j(? O%H E6ò@|[>ɃӋTfRuydnuf4svpO??e݅GRnP]\[>gCi|S  +7Sb4oxZ(VO{SNVjN +&|7bHtEI}tްA}j7R6D> Ej/߼yJT%Ո48-pc?Sy˪Ȉ]f~p6y^ +3ѩn l׍F{kR{{w9d* Iq-.^,!m0T#\15Mw;{*^{@M0|)}- uP Ud2IKص +'oTj]ɳ5TZXBE~EOc 軛F^-b#UO 0S:v2|M"F)uZ(=^;VI' zBpv +U!n)р_mZGZadԥRO'`~:/5bw-=ĚЩ)ۗ>— 6ejsD9:HE2^W>nƸ>YG4$E9wUs|š #=`4(bMrjYY6/aJC(c|]0aCC%5*$uځTU2 =ԫD]m7J4 K,КYu@tw%̂,!9ܭ#KdB gXYႆ螆PֲYmdM?MiְwrV撵ޅm"MVH Kd4L2MF[t&Ǟ0m.'[͝'&l. ј.=p뛨1P@sev7[gfaInIu2sZ`\DguVZy i-ub+ԨխL!_g&s+@赳lL5;"&q-fm +TՉduo?RUU&.`C[Fa˼f>G3`-v^g%( u%VĐ%Vv+G9Vvže1,`;Ǣyw]Sec @fȅ i2Z%qR QƔz 0vI+u8QM376 +!ĸEl!rК E% ,fp?`-^}6} D$N~3ƊJ^Onr7Aea4OcO+ƁжKqAapUpz2ikE|ETKAi\Z2su(4. +A{n8^$.BkDu~YL6JkШUpɡ.4bʹX\9Ƣ(֢kU*\]6Djê>}b v+EJVG>ShaY51L% kz &%6NnK"v3h7]\`evVa;9(TۆMT6'p1,JZ*ZS\ ղY\\tR (@1e3@.:2ͺNpVrq\㠒-"HR娺[ {uQ7YPHq+ 3,EV66`["*PslnDsE9U-kZ0GNۑU͝LJ_au:rjW֌-ֿX~p\oXYYfQVǗ8Qߗ1>"Ud kY +K 6db3f +q Z 9f%֫mֹ D]I4lPz5Ygh=[@Gb4bt^̝b"bͥq&qhiٶU5^T܏~qX%|GSiݬQw[6 oخհ~*®Y.\*U$Hy:ĭdͻ7|y#t eq|f;|Ұf'OHng˷#2q:T5o,uqt>\)uqt>3j.),>oGN]4>O(/d'OogWg}o'>f|J|KƭhW['#-qѦ1V]o^ c 3 4WCWq?&)ݽw*T*/=hV[-sCCDn7+fYY.6Y&i@9R;Ni\חX8kM;^:sab;˵$w`64;iՍrJspbg+$.1N^ +g%]6OqLtlgljFj^q ǜfk52SCD޽^WIFSiGs4\.WޯSزϿٓ]1fep\ޞU +f94t^y:")飞4ȍ5GPģڶ*RtfW0zfi6A1;e ʂg&NsBoHW Zu7t.#ʹzȜ-r7~J \.ംM>&eYǵBbcSz tN!N[eMU1u<9rZ_(ƒi*ȇfح=m13~`ky泸3.󶝙fǪyVkg>mky;MN-s6SKbr޶31Mrަw#2m)}NZ&ӧ/Ak Tp?X&%viw%T|)F޴JZd5PaL3ݡ hx rN*ُ/Viwvٍ&%ԃncpNͣ% d5s'ޭ0iAt&oR^`nYËԢɗ WU&U4^P&&,#jcb.>` T&I.r>mf9uquv3kJ66x3jer<^;d=668YϮA+n{t׈w:cŸ 7yLfKkW::@vb1,vN쳶gE͖Jm$ogէ_>\/vط Nb,v&VgbЪ}fQzq jb2;%Ӷg1>>u]Ӭtm ֥}f44X6H3Sƛ js,-'CƉ}fY}@耴favzֈʉ};8PzbՇsˉ}f-j[}.l&Vg?l-:>3t(gHn-̼\Z2r1bwVsL33w+m%).eUN;TlW <H !> GF9ocoLiB[ڳaW+ RuI~ +Xa VP4K67ȝ81úYz."i?fXmk1O1&0;gg⪴kM}klxڶs3 +/"^m:Ybn%hMUۇ˳()bɶnj;l'1F慮+M +)<:6wm!b|tXѦ'|qǰYjbܦP,Lm +c~;,l[Mk4Ky\?SS]{&0'_]J:|466Gsv(7)kD9Z r<(klߗc m/ф,ퟗM}ԏ1/(DQ\VL/Xu~Y"j" +"r٤6 +eesV? Nkl0:Bʻm蝹eӚ~Ś[|Iޭ&>9>nEisMrΎ ^dbv[RǓ?JU1]VpDXsNoPuyFU0M+>7,2#7@dVԞ/}||B& OD,=YB_VG 9r'-#"5P9r3@=a1aH NVi"JjO^*Tm|5ޓ tNiL ;aro x1C7)+tqxӳED/#{9EdΩ'4d:j=mru&5Tvc\.t<]46bep˲MYEUU3ik/Rvpwb],ܲ$[Uָ%Wmܦ9Ij[Zު!m2_׈_m jvK,e` uv ZנCL8g֨Trb{o(Q٬v3MmŮ7nմ;{wqDU8%qӍ-1[sjsri(&M~#̕ 5O/)Qv,7u s.c|Z#0ɟ `H7Rvףj mxlpRl*%4]i+c4Mdsv4um2fU>etsk0;zX64UIƦ6(!wdt9)./-e1[HCo6&MJ* mJ|DCHuՔDS>$GDAJ|DmxD;.234eڬ6Y?%qMآ~mWm|Xԛ|X.+4]봭V(:ưn}( +wB]5l"eYoi1xjUPO*if^pZqu<\c]o ڟvh>m;n7r:^ZvDp-N3;оZׂ@{w"2<$ntifj)xhmHÚò=ڟvM<_-[85|v,WW<*k3r假9́)CWI%=~diow-||xh2ߛLHFv͇ƿCkuY†*7u(W4խ<\9{Mjq{*ײcՎ(\JrCрkvl<7~L8m-2nk656:ʁs;jʆ]er%0xhڡn; ԭv45L#Pxhڡ:pXik&^x(gHvE-F6[8b\CAz;*4=PgޅCK_]oCHƁrRʺڏ9vƭ~xݮ,wfP=uD~!RR +?'SmG$X7DK)(y3A g=a =_ -BY]^y4zed; DFA?g_Wς/N}|wpys4өh `2cRܝvjC޽J:dw뷕AntOϾPSWއS/(QEo99y0qq)r<{o4V_?|_ xgL[AY|FfsUKch"+'}DŽú,@Ky=zx)HLt#H.f!Cvhսo,2vZU4y]q}dǸq FйjQFi5gj`.1Z|->RWn!6ϗ Y C!/mAE?rxhFхWG]yxxGr?0Râjص"bZ>r,s3}sAOqg| {F޻JP ;o*B6~ JD-U^iL_ʃAAi W{w\ +g_Ɏ,O +!|@⠔&-yBȽ EھtN[#qT*F9܍To׋m{!)$oP #>eѯC`+ޚʙʜBQR y\Y}UC8VdR[z}|ѵ=uW\agV(8k%d&'5gOmhC)ϘPyW,&"=$ E |3(U~gwkWAh^v(\|/L{so1=]JS]GJxhaPq8ǭϦHj/X|!Sk ͞p/b.^i EIFcPzoӇf_rׁ6צy:^7wiȔ=x@0FN COSy;ySM_V`rO?t3g PhKvm(O-@Ca$ A7,B_WfehQg'R .z>Rstc]&^ /@'~kE +wF\jJ= 禐D:|L?\qMY^St3;ȼ^)=d0,%uk} '|Ӵ?w0!sC!ʦyypƒ2hV)v彳ϰw<h: drQ$@ =)?A:Qĕ#?k~ Ҡ׭y{6#Vx򁞡q,f2Kn4R#u01]Ұ(}VНT\)DĶ1 (cVu |5?|2Fefܞb!3 3fq[ȟ&Kpc +,* [>|ꌌ}<=ʅ;ÖBA/7YZ>鳋E}tzKg*7_TA)nn YXE&J+:<% +`u^i(UÓBqPrvr:C+L N^9 h]d睼3eny^aຜi O½p.sOGDMP2[c>>ۣtMZUG +{۠G*pQ nSm/ɌrM+i ^l<=FD+wG_rsj˥,U"]k&u3G1CSOAڏ~͞3Pzq,N0DPpq3@Ƭ0A޼v%:GhS7On*y ]D/Ux;0QǾ9fPK^pͦ? +bZLgs";S|걵|`,`qr$A2 +/=w"p5ģxGiew]۟-)?`V kJ'FH6?sdh\=Mx +oܒ7Ez3sڛ?~ai{qczƉ XIL` ~.-"ߺ7}$˚<Ec@}uj&7ubO>1@ubO>cA@Pވ|[sۑ#_GByKGƀm9 ^=ev>oğ73Fb  _>ּ` 2ao$yod|%PSԁ#нGJ{Lu1 kf<_C$}|]|HPZ~!K7sYNJB ) +f .3UL$ A1s]-J}x;x =`[7K }:ۻ=>JЂݤs7չnr|6F}P=A1P"[IUq$3\iW"mc6(qd@0 +9"a(3  lOCZjٓގTVj = iwt7o!-5nMCZGښ윬:!-#٢Th޲lM5 , Tg*Lpq]4O߇[`>&yoSF?pYf^·kda\F #Ͱ{V{OK!NznYn6ϘunGܵw&`\yARŷa m"^_=W|M#vH0e2pˌ~k 3pG'f<؇Ӵјi#Nxm]3xi"O4w1Uc:Ku01MqWC8VUrP:ù5XzJI +:檢< :|AFh/z(͞hxw4]Z|x  M |GEq;`y BDz mF.~k%ڸn#ePEbmNL`f^}7whXl SoZ<_7 +{٥Ǎ#~sZg*XIR+y%8d҆/o jR9ޝSh (!G./o>=CPFKYtQ+""wGgSF:/5WnZ`.`qԹWVE{Ӎ ZP+E}@S M3 sݣ+2wogA'1PsPy˝4~Fݷ?*}_fǷ V3TT۝ B#Pc\xs7>p]q_?ՓwOSk?.~o+˦y]ue@^tmocɑZc(/LhbI O_xI͘v&rc86bè_??7NF5 + 8KO*8OAu)A˅Dn}+ ݩFwΊ?}[>Pпg>voߒv3&?}>w볐qPUCHޭϺ _:MkXLį{hy8G'<;vz7?W?hYQ7٪w|ϟl/_p_ћ}5,| + ۟ZW%酫sb/!>ׯÛW>xI;].eY_{ݐy6XՌw } ܽN__9z[{sn~׿'WNާˇ]臷~z"]ǵK]$䷷ξ{?F;>Tx;}ݪG㥛Wn~?~v\_=`9S=*}:\/}?owJԑrobw?qV +?snSgno^=~?~9>Jƈ7Fnq+_|[fqnq_a/BGƓ濾s꩟+b]t.OPs4,lzO~kWN?[AodP/Ž}ſ6ƯWvf\ ۧ6ҴM:H꽇Pd4Nxx $ <Ὃ#Lnw?PUnk>II2&r!.lcۿ$1˷$k=s?W￉~ȵp:UxlT~9r\_*f[#b}nPG^klntFUf +>}w%ϤѠR7wp> 4fRMY%1(xE\Fw`˟^vˇ7>yOqVL%>Swus7w~{;ix/\i~>_|y_K*ǥ_s +z34y4<ޅϞO~G{N['¥kO>^y|ӽ{.}~pcZQtN{_xfhW=%w]]O/]:٫:xW{@ ?0%}w'/}͚%](gS:خ? A'_WBrԗ~ +mcwn~YVR#*X_)lQ&qGDxppֿGĢ}0wL&^4XgG?;jY)ȡ6d+p|??rde}ѐ1ߓT+";?BOo}tG]!=dvwL]sp\@SƇЗRw"ߖg?Jߟ@}9Oi|'(}JȗR/`X#ՙo=Qw/z܇ eXOA}(]JN8y{7ʪ (s"(3zK(>Dtn ?7QYr8D >;I4?pk'7O'%so]uFf\a{Ew>4 +d1sO[' +.?/*a*)VnSxt})qH驧_֏Wx.;ڽ̲rW@|z)Nn]NxOOT_{&; a?<uͿNf.|I;Y) Gn/o~aH5 ?kÅ*?rV'W>cpqx8MCw폯ZIqDuͫd/g=ߋ†TW޼o"gZ&C#p0l^${.|t cG/F_<.P͟o eM7m_IӁMGq?5Du>}ʼnJQד5Gwp"^ţWRdϑ}|JRl>na|r hș7Dyg_#e + wGw;e;_g #]Fu7ﶱs޽sbڝ$s` aڑНG$D:<{믿|]8?~.wP8=yA(/~O%=|!&vFDS}whWx݆π?oO/Ο9y3 +PNWI1|w~_ُΜ:پˆ* \ >߻ɓo߻<kW7{+Q~ˣEzG?98g\ÔBy!c~ۑF>oGti|pPg|/ +>Ǘ_-+?:ig պՉխw.@I~ۥը/u[6o;r/-/μwxNg iwtu/:g(r_;ς_clr_\/ݼC/},\{y8}ze;]}m~2cH^/n-:~q~*H._A|ǵ݇t' \qQvz|KϫϿE\vߞ_y1!O~z݋/n7~_A׵O}%:L2>fx~}wg|7|*:wۂGܻOw^Qcbřӑk>[Ԛ Oƪ7y|zr/?7y}M~ޝݥzL*Wr1޾k]bkzu.o=k\[R֎]]c}׺ztu}wW=ITA?| ~0|w?=:?cwn/eyC|ze)lN¥'OtO}?{v[\ٻZ[w*.6:#~HY> }O=}|ɓ߻!ԏOv…~.sb3hڅPw};?qn}tw4L=_\?qׇE/4 Ns?K?4^?}?E4vM0ΣnXn߅na}_?Gný_7cw=xȏnԸy̍w[њ*|, Nk3+ +nq9]7Lc?„}?w3ĥaec؏-z㘧E1Ї#pyXBp[y/ݘLJt)S>]L<%〃#\>Baz ?4ݰ? ~IVy:>ԯUoG2-Cܵ-8N{e]P-Soĕo.oq}pJw`Rc׵n9OS\IQ r'rg2i2/m˖gvD>tqStH’۱%ߟ 0H5]% "0~}\qwbk ts{G8ndDA]M=\0 In aGb]ҢFJ_i`b^ &T +Ҍ5-5@׏-0.Q[h6U.ѷ A +N?SӐaz0icyhiZF`.z&5i[~-Q-#7suˈ#A4(N3a"G}mʱDNlf79V7,fNf|0G6x1ĵNiXO&nYZ`0kఐ@>\ #ahZJeB~ E,cNeݐ֦ڔ,ݐb=Xͫw-(DYSa2Ԥw-PAѕK^7 cK*2]["蝅gYFB`"-Gf +ˊhmb4qtze*8_sh,>()G}(GSb4,ve*RC1(~/Wf놉e^"h9%h!Z|#- ^IVkNJ4sЊ/آ!* lMy}12 I1ҕkT.hwWʙEC5hK稁@Cp +X42,j HS'`?(`ok ̓0YY[A ygomb!J=_[QرdmJ; (zPxPomIw-P0zgBꝅk =( +YD@у""q!LVt> F3 +a+Ȇ1%q3cj1";dF2c^fẗ736gFX`KHwh4<<6q2,䞻n +5(r;^-R~QyWҊ1En -'_%Ӂ?+@nA5 q=9e NѨ\-sDޭ@)"{aϳc`ruhnYB8hiБ&+~4ppN +KX㲔0jQj9U0]&4 &`pWj'َ6%7c2*>"%aq9h98mW4pXek:wM70֮e 家ڦtNuᦷߊ3蠣fC;@PshF +[!e 89B0~􅮳qA +` LnQ0`5^edqQ0aXLTGBm,Uy ]g!go"WI A(9{!PS/0ڠ~ z2,`C_)<կ +اGm3{ Wh+>픚B]?m.qi@9@28i)mg;cU`&ɝAz +|'c#r߁a⎈3e7+cڴM4qL4Ȅg#6<hXFi+&yQF E|.j3b FmL*\3Ե3]ӆ|íoF̐Z \PqE-T}+ӡD|0r:16,UGP1|1#jV5RJ1jΥNb ,rQᝣK6Q,WAVA9L;PKchrcz 5T3t_%k1[pLz R.e1%jF?tљ@0QbCU2y;a3as3f;y܏MK7L]_}=zpF7${=F$ii3P~6tZ;yՇ I?}/W1bDd-q8Q /?!T׭E1\hsKͳٶʍ-)Us1W4( M@`uP}vCPe_G`Y4uQ`1W2ZZx50lAӘ3>@4Lɝ[7utmZ?1ѰG,x"fw{du*O-0L=XO2u]̙d[zkjIߵ@aXrWY5C\-˱"v,X&o;*3=wQqa'w<5 :}v֍X;HA{Hj/ FJJR^;IK̨BX6*HcWO@ |}ѻP뙓 jvj!a8ī&MWdGlٱW3;Jk\*鿿>_%4>'k];R..pNǸw\ t}$e뗽>Z$ qz2_A!k#88y1K{!Ω]fѨ4(yTB Zeq +;FY i,s6% 0RD +nGƒgׁA(!-jJ} %iMC&P7ľ!D}R`^DJ4zu]Gz1i/ Q~1+Sf0!c`aA:'BZĩp%pf5O.8KY<95dİơ.JThɽ/oruh0g *0쫚 i`jfЏ,2N >bIl)rDU 0Tf0aFIx 8F|I8WTD 87٧k#*;(b^chQ ZY Q kǦH1P8y%yLcgH$HeXXI̊(1ǥބXiɐowsgg@!`n,[H^dd^<,2A[hL1nڋo]⁶BMǂ@xХ9L.ɬ%- +0ꁂCMIE  ޖu娢jPFY5E5c#WJ nM4I]Ywެ%-ώ>-x΢u5m$ P8?gH$m1D9ŏ8n*%!"ԓjjpᝥkUyTDmv[?O%34İH^ Ɍ c? K{yPSb>(8~0.J4R7E  +SP/FF" n|&- +'t,ƖGxiG1|C47|릵`Xa6xYIe^bB$t QeltMbMI +x(ExҒAi '3tS|P*ܛɛBWl֑uKUԬ`hF{&lbͿ-No >d5^>B xݜG7Kk rU*;kg -Mu iDgU4nޥ$ ׶L+Ѳ﬍Y 4)=m0d _ 2ݽզDP [-,6l^deDE;k- ei=5M2lʕ&\ã\ndK pn,AoTiwzw =0 K` [vѭ'| +AE3n껥[&AL=yƇiX$δrIY`!Lyݐئ+Pw `&sQaj2?Mit.ptnр=70t3Bc2cNp9k=Mp^Eq8٧KJ)G]TqoFeo;~sd{tEha3,)QOYvs\HL:YE4 ot??7%CByA +V/E_*$(Gƴ@1Qsq g˻H'b-˘#p(zEd i1"@o 0j`;gZ Nszq +VC|#  +7Gŧ &㳃_<ġY2'| + + NaX|I2B̌1hp%N1("JY.6Plxy]ǂi  ?3"g\K13T +arpJ5?5S:6{yŽ,qXk NGwwI*C)F0Q`|Sșy_֑tS=%E5|` +N)ӨA6{dm-]^fT~[t D0(2! oaiQcP&UٗC1O݋N5Bu$*`q.V+o !̤sb)KkuC6mHeӾL<qggHi (X$ {Kq+R09Tb+R00͇}B#4cbb#LcW?p)kŭ'ylifz<p b{1tsaS}0uU"&$j>(/\)[źΜ; Nr\l"x|F,q~q(&"\.^p +#ő6AlVo5͡L^V33\vg6[#캅&b3} N^lԮՖٌb&35镵b/ܺ)-WJƴ8,뙅$>d睥=h<@C|<7HmVi=B14K'2'{#-mKSnknvC!6qQ'h -RYZB\ay5M2 }X2]ز K5 дw' jiy8,__]KsujҔof`NAHM&kXgzV@3S4OuyvmL[5xL'k@edP*ti}ͭ"@L?7yWNtb``bhyWN\ӣߜ!Lag1lpsae+ukD.Tx9U9IL΢uL5PX>/СJlUM_R:з[Q>]GZlP_6kQsu |4=/) _]j׍O_)+9nV_Cor^ts^쬽] +ǧֻvtA!d +'6Ǡgs-,;6C#\nn! 10 Tgv e&rwYD PcCjBW!Ӌ H#rVϔ=0k8R8GvԣdLNPXyq)ɥH_7+?<6lބ[ABƲ1|BS9<.@#ܞU6 Hۖ6ґ:K +Z!WA! ;H/P"W# fI<* WB_*US&"T+ߕ3Vq (fTC@y#2p'sJ5WqP f_5ٔ!)-5JkP@x6j*q&O1|f2oy7PƝh"[%^)!FFѾ|fX*QaG"%z`<HӦ8%zɁx:\c)ie4f,9XpzQ͌/xielե44b#"ⰴ߀7|HW [35Sp;4Ha-SA21GJ8b,b{ dl8 +d#ˎqYbŵ6+Y']C  ](@p|RRVÙ +b3L#Û&"PԚdBp>e_H'$ +ș $ n!7 GB eo!#3"R.XGŞ֜ ԃ%%wX = խmZ &kr^G76ؕѳZ#ܻم )_1 SҘhՏp0< +F,3Y*89Ϋ00r&CQCMNesY}ĵ01Ŏ%jv)6 dG- +;k<ǤF +0~I|蝏v鈩18Q6ȻqsNnB6T14_Yn3k 6Rﷅ; [-6)@Ѱ9`X؝hqeɳFqgEOVZ'Nk릶:V+Aj,S2滓]*ND蛖ۏvR5b 1PJ1,T>lO$䡽AU285grЋ"*ѧы䏐! '̞| +?bȁ\ D~DzK~561l'TNpBvYwZrt"V loZ/nd&{38&5Yzk&kmkoM^i05+bkv2u/"Z+.6L{5ʘ*+M>e-iwj^ͧ^͠7y PvnV83eZ|=?8"EQ"$u':99ECX0v+~1t#E# +>bi+B/ɵSG|N?^~_Q>6p>Ha PڔI/f9KWۈ81#%Dap8zlCB90〈.Sj5{.=[xJq˞Z87_x+~ɺR&jҹ\ĥQq2rOaj~FҬ˻/b-#OB+^{⧲2)~q1.2sg=+T89xtF.iT1C|b0`:P$i=ghʗʗh4t>F8C\J`ϝSW] rS/-\R]K4?0m2vy]I,Po4;-NI׵;\NsN:d;ovҩu81idjN}W䲎eaۧ7@aߋk݌}SN8mۖm<̅TCqx"GoSAƧc:8DMIJZ6EWvup,ӀK=J&0i.赙ħq),bPA  ~ݟjmPYrkef\{ ղplYʭ5-&V-h/Ά<|CHZ/h_Lk{g09R;jc] +Πy2)TF2G*WnɃ_qf?=2.0*CD T #˖|(S_ oIJ*Fʳ @Z=U)mxJ?y&67;y_0ɳV"Ca92rNXi]/sF;p,'O΢}JS usiWX,4ֺ8<(oQ,JKQH 1 LS)l)%i>% ѳ27.12<'abQ )qZ0oez~q(9ҐBȬBdŠ-<fՂ#ɷ#Xk[ƺ2`r;(RsK~9gHCt1%PҤi[,֕ t`#Z74MU넍\S"$޲'IJ8gٻ]ĥP6}&>:C="*C9; pX,8"1YA ܳ/31vjjMAl%n 0O/Siil G"d5YK?&71N˚428 54785$@竖 YpݔTբאϦ$^)`hb+^c?#R@ΦRBJ?GِĘ j;^˄wj4T +gLeosz$8悫- -1&N*3c ֫X+WL9庥:*TB7Lo[,Z ߈ 1 Ed_piW,OxrB;rցOE4<쇜PxoagsA hJDF -2#I.*nK/ҷ1m\;vya/x TZ1TUHJE%ywo2Cg){"KJQrŁNr8_"υe0Y"%R>;@J]RΝřSﱐ-qm₣bq,?^ŏu8 Ĉwq/ KE@Q{aA\sW>f3x xYu4!"..ieg)(SN5Ǔ^@sKE? &I0A + k}y-L^_R:&euir4a{?%;Zj<-xNP~+@H<H\e^Ɠݺl[E}a +X%%fbp}ʡ;}Cb܊Gb*1,g0džDqٖ+f}`3u[B”&1%)l%EdZE+&nsS`Z)gF@mXpˢ79J`l,pZdIV)ǝW5]$Z9ݡ>S˂U0, H18v;時6ϊ+6o%0ZbK8)- l%JjlHc h4 oV0LW]S1NClRqaLfXYtwHM2Jdͺ.6@UJ˴MYHn^r!5&l\cD.]MR(ҚvT4Jp")irz"?;P~iI䁬 _W 2H808Y7]ش=9A!#"=^dg`4M[p+ҵoT0Fk FS\'V:Sr"zhj^ Tk",K8q\$Eq, ]sB&πa9tLU$m17\gDKs/cJbǯbJ2N];Oq h( wuӥh,B$ǣ-2ynha=:ӖlM(XmtR#,r1 ?L rȞUpWigqdžZeVH=iD4G| gt|-M, _B5]fAT-m>L\983Y>cɷm,yZS,ʮKR3/LEĥR1,WG]XZ0H|mˑ dq\1DƬ@:"J8Uat:Q9\=0<&ࡂ~&h*B7$G*R)G쟸R[ǥ&Z|wZd0rpQWUNdB !VAeWH˘v!k",/(@Q6n&m@2*)$Q ])`*E-jH'Y5TN!tH$Ȕ_#D Y=8E +-0l]ZH`diZGަ|6"͞E~^>!fbE1α=0l_+דWԖ|x')(P5?"dOd-T:d8`Q+"HϜ :Զ& mA(GLd8^&y&iێ%98 Y]yJ;%-j ߴQ2j&&$1sE@D=1l$./j)2 ;u3q5he@KQ)=ZRpZ@7gn1򵆹TS/,'< ɳʐȒY$n,+=t\&u_kC5Q'%sOEik^pHa-W1yP- b@g~?"JcqͶ*R +Zr@ˊ J-Z!~Z֙"qKhJy9TV.+ѽ![=@ +*EwhP_cAGKYZJ/|5R[Q+ZRXMV+ZAУg\+ZPqњiM"m6֕6”fsg ͼ$Z%lVmbzV66[kªg7DcK@9hG +S~ i='#b)phwM)>sޏ8B;Pb2Yպ,ϙvNWk} \ډX*Y%ѡr%C]Je^[墴K\7 2v' -Zoݓ +T&NJ_+$rkb|>G|lc@ŵTBQ&ITS'A!`[1fںX[`>[C lmDZ|Ȉk0pp&)xXhRT j *DJqI A… [n)M_8:}A /eI^vU#MCk89#Qr/W)#t>Q!U~݅x[yk@`` e.Z@RF!{3(a$&}STٕXcfD aq4Y7sz ko0p_TF^y 4Y"\/dAUЦ/d)d2uۗص_Y~ AF/΂ [/hb B`2 "B0xp&-L2荀3nWoε<`נּs EZRuH!ːa=2g pуܡrPZS; + sK@Z''𳉁.M*ZwXKKkA¯dLx67(%t 6xFX41fb;fY'[VA߫|+ТD%LRS-qe|ҒڕP7ⓖnj~'m-TfZGE, +Y"jMO2[F5cDk=ۈOj;9[^*F|R[E1?LC6iأe#i;J+{zk]϶[bkAfD[[2ikXǦmmmF;OZ>%P٠}F*Pn&JPIo<-3thNrWmE͔}P*SJ;.|_?Fkm#k{X ]9quCmVӡ~Mh7\VhY=zߺ5ȩKEn`Y֚ZA5 Z[4Zz֜v])߆nn:X6IkhF>dR֪cWԬ5ՌO~N^%. S*d8c>"{D]_:q=b߉ߥ7߱yA +fJQyyp f>1ڮL$;r&YD6:{*\N=f$8d?/akGYt[Av'_a&Q&<V(te5MגWbX |' +2-ϋDWԒ>KoXF2 y"vd '_ A0NƣyӐ1i7qX)'N^2}y#r x_҈+p< V K+sc,^mFHڦ< +!zMLF#U{BVg!Fx.4 ^ +!߳h$mh.Qo(#Wv\l=pn=ztw}`'w{\Z6]MQU7R{+gwy7q/ZS!Nu'Hc&{X'yFW- {>z?y IdI+ҧ>32Žû~x铟^;up7woL{.=x|w>Xc2XwAL +EN޻eT]gǓMMbmtBѪpX,-@jdKQC,nzľPb7R!E/:`2=5̳GRjwz +~qy0)+g tgi^ 6z2ʳ 3엍"aM@\gOA| ,c60е_bCk4tOPoi%W1z Qx~.`MzXJbe & xan4k;rF Xy#R^ +"C.GS庘2n*9N0ِBKݯr/6y"$Q[-wrM˸RMFH׉|9 Lj dьe:e9gYt x;K>j$7db@|uI^CVk  Z'Yw ̡!~Μ?â5Lj N'UP8']a 4!8S(KeLn=Se!+M7Q <0y(@CE|ߢ-vʗBDs8~<07$!Kz?txYDܽïXt;GLJX7d-ƩRb9|cEYS1Tb}39Ij|a~Xʫ S\MءOY0U&Zϳ[L !)b|DpGuw<3wYi)9c> *S~G2*ԠtKopcoImZ[`c|46)3w欛8fbal1]W/3 pEYbb7@zAXy~ +1n0m)|Q"L/in۵nЦyzc@uWxŐy}ѻՓ(2 N;n!K#וVYnspeskqig'cZF,\Y7°]VNxV5>\i-?yoa>:y|˲ !q;`_^}R.ڐuw'Mܵ1[eSXv2縧N[QpZh*%8kRb%#}R?\4&1d4 +DYsM)Y>E3+-0i2ԷKh]uFܴqg1+ CʪRg*ŭlj֖֋NRq-cW |5C-`sdZء T89{vFZ.m৅_@D8v ;"[BH6֫S۱oҤ- +xuØyh8:J-Ъ麡bк)ش!*є7 ^-vtY7Бu{U | Z1Sn3RקO]<6yީO>RJ{Ϟ>z&!% 8?dTg)?5[riNU8Ԙ +M{`=#4 "=Zt ^F|&Luaz%pv:$|KfWC?8LRO'f8 'z/\1e ]ΐC1jS a:q-=DS}[ږdfj\䨶epFuK 5 ;qSp#s ? ܠō5_Zezmqu92"nGe%e纶eKX98k !5 +C*OU'r-`dc?4K`TۀFqsv (h}Kj<6CqU f\+)zYɁa@ega 0Fp& gWP%Ji<F!*h`?^S2ϐCU]xRVHknkig0AZUcvҮ-5=MY;JvU`BU2; Vޚ&,_ 8, E7Cf݃Eԃ,*'Zu:VVD9B i?G(R˩K\:Ben4!4 15mJDچ.%MCܭar2l\L5LjVe'` -=nM;2Ma8yur};>Iźe$ tY$xX5P$"2khdž{ tģ mZ5$rM>] p'E]Sw /fc0Cc4x83|Z+`D ld=ҩTČVo!k$&1N4]{Sas +1NCGG#;0aжf/ ,b+Ed!M9nfSs1MlZCznDS2ܵ;kQZ"1(Y˻nF,\[JY`0g:k cPڊRX9ES;u-0`r;I97-BZʒc(@1SĨUKYr (ƠXb45iKYr (Ơ${Æy8|KYe `!Oh1 +x:GХtpUu=xJh>P6/̭u +hLADB R\٢Pॄ5G!k )59D,8,C[f5K $'8lm<~۝5hw(P-; 7(zPXimr; {0sgE +w-(|Y(@уBk =(J%63TUI/ro87tA3\`k+RbETt ر3c@r2SF x13Y-2w,ä/D͑2ɞ'82Bɒ}as˹HS܌ZP@Dy- ޲w(` +s:36ad gLyWf I10:=40pZdB~n*±mC p޵i@|qjr,Mhq҂dExvrkfzΠt2*oX //5=֚~]l7ʖS[mm7|[n|oFt 6Xq k m6bճ&`վb)i cB, L]'B8x?(`El컾ih`BЩRФ%,W+zB;3r8GˋN.pE%BnJ0I^~5ZUHq$֘F^潆ØAr`+bVQ1Rۼ0ĕq@ɍA +–HOsB!r,E"*H#`|)t4b fSmrp1^?TF4b ;Rc*U&1O؛ +҈1bESeǰU˯uCJ,tz4u*SV8ogm n;ľnAjR ;kPn7;-ikz-b7ժCz1d>>'xوbՍ5F,Y0F U,=j4Z+1(2\!2q/6?G=reòLxi| +t΋@ ZM ȯJmJ pL8e*ib!<& gO\ C6*c!%MD[mpQVeAy&yHrΥaTֲTڻ:n#@a_ 8(l/w=(iBi +7p"ёYI_~s#wɕH0 e87!h.ˍ$I@ڱO&hj" /'|Hiɴ'E9TX[p*,': i+cPVZL(`{U"-{B!)GC>,MRg'NhmݱE1f|ٕt7!H'?(Trkp@,G89rudʒO^2OskކL;>E~\>-_)o68+VJgeR7Y>4E'ZE~!%= +'MެkzgvkJ@)<+&vM |&'e6QX^SBw\6y߬nRSFzG &F̚9Ej0F֜cy% RV$RufO}g\*RD"JtU %YޅV5}x5+|\S˪,fٵ@ <'>D7* 2n-@C[)i@&&@0lngX-eSHCh3@& #@uT(dDX4nPyޒoyE!?h& +` + ){9Mȫ\3@ +24c$=% BR~ +eA1!:-Eh6tWq~UOۻ݅(O.O/yP|_?ZXQBjB`VE>BQ*W \Ѳ1JQ,](&j8rBHJE=!UP}>㏷鋳=4Jqho2l]Y#NgM MijP͟oon/" ^v^Pl͛w1'_H7I$#/WI S\heUm@~ Tl?ŧEύkm.(x6/\V&*G@8 +.%y2 ~Z!QN;)1*L-m!@Sggr@([Ovc (> m +%L2uR0XўMc9q>=w957.SzjU(w!cH^D<&71be8Fh0"C44H˞#x;!G:wgM4Ppu 21Qy۰f5MR &m +U BI1>_ PZ;E\@-0):($H0ϴ匘B0l-PA澅R~;rD?Jh9w |cTBp$a,${1:ɸ2=v8 w<T̓ +!-ٰPbѤh;}59(bCQ^2Sd#:N+>nirͫ3CqX `z O^%r.Ú>~@CZzVۓWj~Po)h?R,MMζQ4 +P.-,$~v*C?a)s)MUdF:;dy8"DV'ם#4žh Q*Oo NIuњ|`v\Z2 ,1xnC "ue+[%KwCԒ_2F2v6*r}vݢA#&90atyb /; V^89 6[s8 qixJ ^r#CqÇ!bT +/^|>7)) +endstream endobj 40 0 obj <> endobj xref +0 41 +0000000000 65535 f +0000000016 00000 n +0000000076 00000 n +0000016382 00000 n +0000000000 00000 f +0000016433 00000 n +0000016868 00000 n +0000042773 00000 n +0000048240 00000 n +0000045639 00000 n +0000047262 00000 n +0000047377 00000 n +0000047135 00000 n +0000045751 00000 n +0000045897 00000 n +0000046043 00000 n +0000046189 00000 n +0000044802 00000 n +0000042837 00000 n +0000044240 00000 n +0000044288 00000 n +0000045577 00000 n +0000046935 00000 n +0000046735 00000 n +0000046550 00000 n +0000046335 00000 n +0000046430 00000 n +0000046645 00000 n +0000046830 00000 n +0000047030 00000 n +0000047500 00000 n +0000047553 00000 n +0000047847 00000 n +0000047924 00000 n +0000048071 00000 n +0000048166 00000 n +0000048313 00000 n +0000048486 00000 n +0000049462 00000 n +0000072439 00000 n +0000128986 00000 n +trailer +<<647F4E0C077AE047AC783EC203F62904>]>> +startxref +129176 +%%EOF diff --git a/Practice_space_game/spaceArt/spaceArt.svg b/Practice_space_game/spaceArt/spaceArt.svg new file mode 100644 index 0000000..c75b5e9 --- /dev/null +++ b/Practice_space_game/spaceArt/spaceArt.svg @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Practice_space_game/spaceArt/spaceArt.swf b/Practice_space_game/spaceArt/spaceArt.swf new file mode 100644 index 0000000..94526fa Binary files /dev/null and b/Practice_space_game/spaceArt/spaceArt.swf differ diff --git a/Practice_space_game/spritesheet.png b/Practice_space_game/spritesheet.png new file mode 100644 index 0000000..3957293 Binary files /dev/null and b/Practice_space_game/spritesheet.png differ diff --git a/docs/02-html/Practice/images/plant1.png b/docs/02-html/Practice/images/plant1.png new file mode 100644 index 0000000..9baee27 Binary files /dev/null and b/docs/02-html/Practice/images/plant1.png differ diff --git a/docs/02-html/Practice/images/plant10.png b/docs/02-html/Practice/images/plant10.png new file mode 100644 index 0000000..4b5136d Binary files /dev/null and b/docs/02-html/Practice/images/plant10.png differ diff --git a/docs/02-html/Practice/images/plant11.png b/docs/02-html/Practice/images/plant11.png new file mode 100644 index 0000000..3530fe5 Binary files /dev/null and b/docs/02-html/Practice/images/plant11.png differ diff --git a/docs/02-html/Practice/images/plant12.png b/docs/02-html/Practice/images/plant12.png new file mode 100644 index 0000000..b7f6dfd Binary files /dev/null and b/docs/02-html/Practice/images/plant12.png differ diff --git a/docs/02-html/Practice/images/plant13.png b/docs/02-html/Practice/images/plant13.png new file mode 100644 index 0000000..18938b7 Binary files /dev/null and b/docs/02-html/Practice/images/plant13.png differ diff --git a/docs/02-html/Practice/images/plant14.png b/docs/02-html/Practice/images/plant14.png new file mode 100644 index 0000000..87ccb62 Binary files /dev/null and b/docs/02-html/Practice/images/plant14.png differ diff --git a/docs/02-html/Practice/images/plant2.png b/docs/02-html/Practice/images/plant2.png new file mode 100644 index 0000000..b90853f Binary files /dev/null and b/docs/02-html/Practice/images/plant2.png differ diff --git a/docs/02-html/Practice/images/plant3.png b/docs/02-html/Practice/images/plant3.png new file mode 100644 index 0000000..17e10d1 Binary files /dev/null and b/docs/02-html/Practice/images/plant3.png differ diff --git a/docs/02-html/Practice/images/plant4.png b/docs/02-html/Practice/images/plant4.png new file mode 100644 index 0000000..4bbafad Binary files /dev/null and b/docs/02-html/Practice/images/plant4.png differ diff --git a/docs/02-html/Practice/images/plant5.png b/docs/02-html/Practice/images/plant5.png new file mode 100644 index 0000000..d303d40 Binary files /dev/null and b/docs/02-html/Practice/images/plant5.png differ diff --git a/docs/02-html/Practice/images/plant6.png b/docs/02-html/Practice/images/plant6.png new file mode 100644 index 0000000..823eeed Binary files /dev/null and b/docs/02-html/Practice/images/plant6.png differ diff --git a/docs/02-html/Practice/images/plant7.png b/docs/02-html/Practice/images/plant7.png new file mode 100644 index 0000000..fceb7f2 Binary files /dev/null and b/docs/02-html/Practice/images/plant7.png differ diff --git a/docs/02-html/Practice/images/plant8.png b/docs/02-html/Practice/images/plant8.png new file mode 100644 index 0000000..40b4f15 Binary files /dev/null and b/docs/02-html/Practice/images/plant8.png differ diff --git a/docs/02-html/Practice/images/plant9.png b/docs/02-html/Practice/images/plant9.png new file mode 100644 index 0000000..17a3435 Binary files /dev/null and b/docs/02-html/Practice/images/plant9.png differ diff --git a/docs/02-html/Practice/index.html b/docs/02-html/Practice/index.html new file mode 100644 index 0000000..47836ed --- /dev/null +++ b/docs/02-html/Practice/index.html @@ -0,0 +1,157 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrarium

+ +
+
+
+ A small plant +
+ +
+ A small cactus plant +
+ +
+ A small pink plant +
+ +
+ A small lush plant +
+ +
+ A long plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/02-html/Practice/index_1.html b/docs/02-html/Practice/index_1.html new file mode 100644 index 0000000..fbbcdf5 --- /dev/null +++ b/docs/02-html/Practice/index_1.html @@ -0,0 +1,157 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrarium

+ +
+
+
+ A small plant +
+ +
+ A small cactus plant +
+ +
+ A small pink plant +
+ +
+ A small lush plant +
+ +
+ A long plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/02-html/Practice/index_2.html b/docs/02-html/Practice/index_2.html new file mode 100644 index 0000000..81d22ff --- /dev/null +++ b/docs/02-html/Practice/index_2.html @@ -0,0 +1,149 @@ + + + + + + Welcome to my Virtual Terrarium + + + + + + + + + + +

My Terrarium

+ +
+
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/03-css/Practice/1/images/plant1.png b/docs/03-css/Practice/1/images/plant1.png new file mode 100644 index 0000000..9baee27 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant1.png differ diff --git a/docs/03-css/Practice/1/images/plant10.png b/docs/03-css/Practice/1/images/plant10.png new file mode 100644 index 0000000..4b5136d Binary files /dev/null and b/docs/03-css/Practice/1/images/plant10.png differ diff --git a/docs/03-css/Practice/1/images/plant11.png b/docs/03-css/Practice/1/images/plant11.png new file mode 100644 index 0000000..3530fe5 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant11.png differ diff --git a/docs/03-css/Practice/1/images/plant12.png b/docs/03-css/Practice/1/images/plant12.png new file mode 100644 index 0000000..b7f6dfd Binary files /dev/null and b/docs/03-css/Practice/1/images/plant12.png differ diff --git a/docs/03-css/Practice/1/images/plant13.png b/docs/03-css/Practice/1/images/plant13.png new file mode 100644 index 0000000..18938b7 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant13.png differ diff --git a/docs/03-css/Practice/1/images/plant14.png b/docs/03-css/Practice/1/images/plant14.png new file mode 100644 index 0000000..87ccb62 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant14.png differ diff --git a/docs/03-css/Practice/1/images/plant2.png b/docs/03-css/Practice/1/images/plant2.png new file mode 100644 index 0000000..b90853f Binary files /dev/null and b/docs/03-css/Practice/1/images/plant2.png differ diff --git a/docs/03-css/Practice/1/images/plant3.png b/docs/03-css/Practice/1/images/plant3.png new file mode 100644 index 0000000..17e10d1 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant3.png differ diff --git a/docs/03-css/Practice/1/images/plant4.png b/docs/03-css/Practice/1/images/plant4.png new file mode 100644 index 0000000..4bbafad Binary files /dev/null and b/docs/03-css/Practice/1/images/plant4.png differ diff --git a/docs/03-css/Practice/1/images/plant5.png b/docs/03-css/Practice/1/images/plant5.png new file mode 100644 index 0000000..d303d40 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant5.png differ diff --git a/docs/03-css/Practice/1/images/plant6.png b/docs/03-css/Practice/1/images/plant6.png new file mode 100644 index 0000000..823eeed Binary files /dev/null and b/docs/03-css/Practice/1/images/plant6.png differ diff --git a/docs/03-css/Practice/1/images/plant7.png b/docs/03-css/Practice/1/images/plant7.png new file mode 100644 index 0000000..fceb7f2 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant7.png differ diff --git a/docs/03-css/Practice/1/images/plant8.png b/docs/03-css/Practice/1/images/plant8.png new file mode 100644 index 0000000..40b4f15 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant8.png differ diff --git a/docs/03-css/Practice/1/images/plant9.png b/docs/03-css/Practice/1/images/plant9.png new file mode 100644 index 0000000..17a3435 Binary files /dev/null and b/docs/03-css/Practice/1/images/plant9.png differ diff --git a/docs/03-css/Practice/1/index_1.html b/docs/03-css/Practice/1/index_1.html new file mode 100644 index 0000000..23a73b6 --- /dev/null +++ b/docs/03-css/Practice/1/index_1.html @@ -0,0 +1,157 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrarium

+ +
+
+
+ A small plant +
+ +
+ A small cactus plant +
+ +
+ A small pink plant +
+ +
+ A small lush plant +
+ +
+ A long plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/03-css/Practice/1/style.css b/docs/03-css/Practice/1/style.css new file mode 100644 index 0000000..68b4a78 --- /dev/null +++ b/docs/03-css/Practice/1/style.css @@ -0,0 +1,137 @@ +/* begin styling */ + +body { + font-family: helvetica, arial, sans-serif; +} + +h1 { + color: #3a241d; + text-align: center; +} + +#left-container { + background-color: #eee; + position: absolute; + left: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +#right-container { + background-color: #eee; + position:absolute; + right: 0px; + top: 0px; + width: 15%; + height: 100%; + right: 0px; +} + +.plant-holder { + position: relative; + height: 13%; + left: -10px; +} + +.plant { + position: absolute; + max-width: 150%; + max-height: 150%; + z-index: 2; +} + +h1:hover { + color: hotpink; +} + +.jar-walls { + height: 80%; + width: 60%; + background-color: #d1e1df; + border-radius: 1rem; + position: absolute; + bottom: 0.5%; + left: 20%; + opacity: 0.5; + z-index: 1; +} + +.jar-top { + width: 50%; + height: 5%; + background: #d1e1df; + position: absolute; + bottom: 80.5%; + left: 25%; + opacity: 0.7; +} + +.jar-bottom { + width: 50%; + height: 1%; + background: #d1e1df; + position: absolute; + bottom: 0%; + left: 25%; + opacity: 0.7; +} + +.dirt { + width: 60%; + height: 5%; + background: #3a241d; + position: absolute; + border-radius: 0 0 1rem 1rem; + bottom: 1%; + left: 20%; + opacity: 0.7; + z-index: -1; +} + +.jar-glossy-long { + width: 3%; + height: 20%; + border-radius: 2rem; + background: #ddfbff; + position: absolute; + bottom: 20%; + left: 5%; +} + +.jar-glossy-short { + width: 3%; + height: 5%; + border-radius: 2rem; + background: #ddfbff; + position: absolute; + bottom: 45%; + left: 5%; +} + +/* Define the animation */ +@keyframes slide-in { + 0% { + transform: translateX(-100%); + } + 100% { + transform: translateY(0); + } +} + +.plant { + animation: slide-in 1s ease-in-out; +} + +.plant { + transition: width 2s, height 2s, background-color 1s; +} + +.plant:hover { + width: 200px; + height: 200px; + background-color: goldenrod; +} + +/* End styling */ \ No newline at end of file diff --git a/docs/03-css/Practice/2/images/plant1.png b/docs/03-css/Practice/2/images/plant1.png new file mode 100644 index 0000000..9baee27 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant1.png differ diff --git a/docs/03-css/Practice/2/images/plant10.png b/docs/03-css/Practice/2/images/plant10.png new file mode 100644 index 0000000..4b5136d Binary files /dev/null and b/docs/03-css/Practice/2/images/plant10.png differ diff --git a/docs/03-css/Practice/2/images/plant11.png b/docs/03-css/Practice/2/images/plant11.png new file mode 100644 index 0000000..3530fe5 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant11.png differ diff --git a/docs/03-css/Practice/2/images/plant12.png b/docs/03-css/Practice/2/images/plant12.png new file mode 100644 index 0000000..b7f6dfd Binary files /dev/null and b/docs/03-css/Practice/2/images/plant12.png differ diff --git a/docs/03-css/Practice/2/images/plant13.png b/docs/03-css/Practice/2/images/plant13.png new file mode 100644 index 0000000..18938b7 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant13.png differ diff --git a/docs/03-css/Practice/2/images/plant14.png b/docs/03-css/Practice/2/images/plant14.png new file mode 100644 index 0000000..87ccb62 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant14.png differ diff --git a/docs/03-css/Practice/2/images/plant2.png b/docs/03-css/Practice/2/images/plant2.png new file mode 100644 index 0000000..b90853f Binary files /dev/null and b/docs/03-css/Practice/2/images/plant2.png differ diff --git a/docs/03-css/Practice/2/images/plant3.png b/docs/03-css/Practice/2/images/plant3.png new file mode 100644 index 0000000..17e10d1 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant3.png differ diff --git a/docs/03-css/Practice/2/images/plant4.png b/docs/03-css/Practice/2/images/plant4.png new file mode 100644 index 0000000..4bbafad Binary files /dev/null and b/docs/03-css/Practice/2/images/plant4.png differ diff --git a/docs/03-css/Practice/2/images/plant5.png b/docs/03-css/Practice/2/images/plant5.png new file mode 100644 index 0000000..d303d40 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant5.png differ diff --git a/docs/03-css/Practice/2/images/plant6.png b/docs/03-css/Practice/2/images/plant6.png new file mode 100644 index 0000000..823eeed Binary files /dev/null and b/docs/03-css/Practice/2/images/plant6.png differ diff --git a/docs/03-css/Practice/2/images/plant7.png b/docs/03-css/Practice/2/images/plant7.png new file mode 100644 index 0000000..fceb7f2 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant7.png differ diff --git a/docs/03-css/Practice/2/images/plant8.png b/docs/03-css/Practice/2/images/plant8.png new file mode 100644 index 0000000..40b4f15 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant8.png differ diff --git a/docs/03-css/Practice/2/images/plant9.png b/docs/03-css/Practice/2/images/plant9.png new file mode 100644 index 0000000..17a3435 Binary files /dev/null and b/docs/03-css/Practice/2/images/plant9.png differ diff --git a/docs/03-css/Practice/2/index_2.html b/docs/03-css/Practice/2/index_2.html new file mode 100644 index 0000000..f9186f5 --- /dev/null +++ b/docs/03-css/Practice/2/index_2.html @@ -0,0 +1,161 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrrarium

+ +
+
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+ +
+
+ +
+ +
+ +
+
+
+ + diff --git a/docs/03-css/Practice/2/style.css b/docs/03-css/Practice/2/style.css new file mode 100644 index 0000000..d78a54b --- /dev/null +++ b/docs/03-css/Practice/2/style.css @@ -0,0 +1,132 @@ +body { + font-family: helvetica, arial, sans-serif; +} + +h1 { + color: #3a241d; + text-align: center; +} + +h1:hover { + color: hotpink; +} + +#left-container { + background-color: #eee; + position: absolute; + left: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +#right-container { + background-color: #eee; + position: absolute; + right: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +.plant-holder { + position: relative; + height: 13%; + left: -10px; +} + +.plant { + position: absolute; + max-width: 150%; + max-height: 150%; + z-index: 2; +} + +.jar-walls { + position: absolute; + height: 80%; + width: 60%; + background-color: #d1e1df; + border-radius: 1rem; + bottom: 0.5%; + left: 20%; + opacity: 0.5; + z-index: 1; +} + +.jar-top { + position: absolute; + width: 50%; + height: 5%; + background: #d1e1df; + bottom: 80.5%; + left: 25%; + opacity: 0.7; +} + +.jar-bottom { + position: absolute; + width: 50%; + height: 1%; + background: #d1e1df; + bottom: 0%; + left: 25%; + opacity: 0.7; +} + +.dirt { + position: absolute; + width: 60%; + height: 5%; + background: #3a241d; + border-radius: 0, 0, 1rem, 1rem; + bottom: 1%; + left: 20%; + opacity: 0.7; + z-index: -1; +} + +.jar-glossy-long { + position: absolute; + width: 3%; + height: 20%; + border-radius: 2rem; + background: #ddfbff; + bottom: 20%; + left: 5%; +} + +.jar-glossy-short { + position: absolute; + width: 3%; + height: 5%; + border-radius: 2rem; + background: #ddfbff; + bottom: 45%; + left: 5%; +} + +@keyframes slide-in { + 0% { + transform: translateX(-100%) + } + 100% { + transform: translateY(0); + } +} + +.plant { + animation: slide-in 1s ease-in-out; +} + +.plant { + transition: width 2s, height 2s, background-color 1s; +} + +.plant:hover { + width: 200px; + height: 200px; + background-color: goldenrod; +} \ No newline at end of file diff --git a/docs/04-js/Practice/1/images/plant1.png b/docs/04-js/Practice/1/images/plant1.png new file mode 100644 index 0000000..9baee27 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant1.png differ diff --git a/docs/04-js/Practice/1/images/plant10.png b/docs/04-js/Practice/1/images/plant10.png new file mode 100644 index 0000000..4b5136d Binary files /dev/null and b/docs/04-js/Practice/1/images/plant10.png differ diff --git a/docs/04-js/Practice/1/images/plant11.png b/docs/04-js/Practice/1/images/plant11.png new file mode 100644 index 0000000..3530fe5 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant11.png differ diff --git a/docs/04-js/Practice/1/images/plant12.png b/docs/04-js/Practice/1/images/plant12.png new file mode 100644 index 0000000..b7f6dfd Binary files /dev/null and b/docs/04-js/Practice/1/images/plant12.png differ diff --git a/docs/04-js/Practice/1/images/plant13.png b/docs/04-js/Practice/1/images/plant13.png new file mode 100644 index 0000000..18938b7 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant13.png differ diff --git a/docs/04-js/Practice/1/images/plant14.png b/docs/04-js/Practice/1/images/plant14.png new file mode 100644 index 0000000..87ccb62 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant14.png differ diff --git a/docs/04-js/Practice/1/images/plant2.png b/docs/04-js/Practice/1/images/plant2.png new file mode 100644 index 0000000..b90853f Binary files /dev/null and b/docs/04-js/Practice/1/images/plant2.png differ diff --git a/docs/04-js/Practice/1/images/plant3.png b/docs/04-js/Practice/1/images/plant3.png new file mode 100644 index 0000000..17e10d1 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant3.png differ diff --git a/docs/04-js/Practice/1/images/plant4.png b/docs/04-js/Practice/1/images/plant4.png new file mode 100644 index 0000000..4bbafad Binary files /dev/null and b/docs/04-js/Practice/1/images/plant4.png differ diff --git a/docs/04-js/Practice/1/images/plant5.png b/docs/04-js/Practice/1/images/plant5.png new file mode 100644 index 0000000..d303d40 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant5.png differ diff --git a/docs/04-js/Practice/1/images/plant6.png b/docs/04-js/Practice/1/images/plant6.png new file mode 100644 index 0000000..823eeed Binary files /dev/null and b/docs/04-js/Practice/1/images/plant6.png differ diff --git a/docs/04-js/Practice/1/images/plant7.png b/docs/04-js/Practice/1/images/plant7.png new file mode 100644 index 0000000..fceb7f2 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant7.png differ diff --git a/docs/04-js/Practice/1/images/plant8.png b/docs/04-js/Practice/1/images/plant8.png new file mode 100644 index 0000000..40b4f15 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant8.png differ diff --git a/docs/04-js/Practice/1/images/plant9.png b/docs/04-js/Practice/1/images/plant9.png new file mode 100644 index 0000000..17a3435 Binary files /dev/null and b/docs/04-js/Practice/1/images/plant9.png differ diff --git a/docs/04-js/Practice/1/index_1.html b/docs/04-js/Practice/1/index_1.html new file mode 100644 index 0000000..b4c9561 --- /dev/null +++ b/docs/04-js/Practice/1/index_1.html @@ -0,0 +1,157 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrarium

+ +
+
+
+ A small plant +
+ +
+ A small cactus plant +
+ +
+ A small pink plant +
+ +
+ A small lush plant +
+ +
+ A long plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/04-js/Practice/1/script.js b/docs/04-js/Practice/1/script.js new file mode 100644 index 0000000..96dbdfb --- /dev/null +++ b/docs/04-js/Practice/1/script.js @@ -0,0 +1,44 @@ +function dragElement(terrariumElement) { + let pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; + + terrariumElement.onpointerdown = pointerDrag; + + function pointerDrag(e) { + e.preventDefault(); + console.log(e); + pos3 = e.clientX; + pos4 = e.clientY; + document.onpointermove = elementDrag; + document.onpointerup = stopElementDrag; + } + + function elementDrag(e) { + pos1 = pos3 - e.clientX; + pos2 = pos4 - e.clientY; + pos3 = e.clientX; + pos4 = e.clientY; + + terrariumElement.style.top = (terrariumElement.offsetTop - pos2) + 'px'; + terrariumElement.style.left = (terrariumElement.offsetLeft - pos1) + 'px'; + } + + function stopElementDrag() { + document.onpointermove = null; + document.onpointerup = null; + } +} + +dragElement(document.getElementById('plant1')); +dragElement(document.getElementById('plant2')); +dragElement(document.getElementById('plant3')); +dragElement(document.getElementById('plant4')); +dragElement(document.getElementById('plant5')); +dragElement(document.getElementById('plant6')); +dragElement(document.getElementById('plant7')); +dragElement(document.getElementById('plant8')); +dragElement(document.getElementById('plant9')); +dragElement(document.getElementById('plant10')); +dragElement(document.getElementById('plant11')); +dragElement(document.getElementById('plant12')); +dragElement(document.getElementById('plant13')); +dragElement(document.getElementById('plant14')); \ No newline at end of file diff --git a/docs/04-js/Practice/1/style.css b/docs/04-js/Practice/1/style.css new file mode 100644 index 0000000..68b4a78 --- /dev/null +++ b/docs/04-js/Practice/1/style.css @@ -0,0 +1,137 @@ +/* begin styling */ + +body { + font-family: helvetica, arial, sans-serif; +} + +h1 { + color: #3a241d; + text-align: center; +} + +#left-container { + background-color: #eee; + position: absolute; + left: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +#right-container { + background-color: #eee; + position:absolute; + right: 0px; + top: 0px; + width: 15%; + height: 100%; + right: 0px; +} + +.plant-holder { + position: relative; + height: 13%; + left: -10px; +} + +.plant { + position: absolute; + max-width: 150%; + max-height: 150%; + z-index: 2; +} + +h1:hover { + color: hotpink; +} + +.jar-walls { + height: 80%; + width: 60%; + background-color: #d1e1df; + border-radius: 1rem; + position: absolute; + bottom: 0.5%; + left: 20%; + opacity: 0.5; + z-index: 1; +} + +.jar-top { + width: 50%; + height: 5%; + background: #d1e1df; + position: absolute; + bottom: 80.5%; + left: 25%; + opacity: 0.7; +} + +.jar-bottom { + width: 50%; + height: 1%; + background: #d1e1df; + position: absolute; + bottom: 0%; + left: 25%; + opacity: 0.7; +} + +.dirt { + width: 60%; + height: 5%; + background: #3a241d; + position: absolute; + border-radius: 0 0 1rem 1rem; + bottom: 1%; + left: 20%; + opacity: 0.7; + z-index: -1; +} + +.jar-glossy-long { + width: 3%; + height: 20%; + border-radius: 2rem; + background: #ddfbff; + position: absolute; + bottom: 20%; + left: 5%; +} + +.jar-glossy-short { + width: 3%; + height: 5%; + border-radius: 2rem; + background: #ddfbff; + position: absolute; + bottom: 45%; + left: 5%; +} + +/* Define the animation */ +@keyframes slide-in { + 0% { + transform: translateX(-100%); + } + 100% { + transform: translateY(0); + } +} + +.plant { + animation: slide-in 1s ease-in-out; +} + +.plant { + transition: width 2s, height 2s, background-color 1s; +} + +.plant:hover { + width: 200px; + height: 200px; + background-color: goldenrod; +} + +/* End styling */ \ No newline at end of file diff --git a/docs/04-js/Practice/2/images/plant1.png b/docs/04-js/Practice/2/images/plant1.png new file mode 100644 index 0000000..9baee27 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant1.png differ diff --git a/docs/04-js/Practice/2/images/plant10.png b/docs/04-js/Practice/2/images/plant10.png new file mode 100644 index 0000000..4b5136d Binary files /dev/null and b/docs/04-js/Practice/2/images/plant10.png differ diff --git a/docs/04-js/Practice/2/images/plant11.png b/docs/04-js/Practice/2/images/plant11.png new file mode 100644 index 0000000..3530fe5 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant11.png differ diff --git a/docs/04-js/Practice/2/images/plant12.png b/docs/04-js/Practice/2/images/plant12.png new file mode 100644 index 0000000..b7f6dfd Binary files /dev/null and b/docs/04-js/Practice/2/images/plant12.png differ diff --git a/docs/04-js/Practice/2/images/plant13.png b/docs/04-js/Practice/2/images/plant13.png new file mode 100644 index 0000000..18938b7 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant13.png differ diff --git a/docs/04-js/Practice/2/images/plant14.png b/docs/04-js/Practice/2/images/plant14.png new file mode 100644 index 0000000..87ccb62 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant14.png differ diff --git a/docs/04-js/Practice/2/images/plant2.png b/docs/04-js/Practice/2/images/plant2.png new file mode 100644 index 0000000..b90853f Binary files /dev/null and b/docs/04-js/Practice/2/images/plant2.png differ diff --git a/docs/04-js/Practice/2/images/plant3.png b/docs/04-js/Practice/2/images/plant3.png new file mode 100644 index 0000000..17e10d1 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant3.png differ diff --git a/docs/04-js/Practice/2/images/plant4.png b/docs/04-js/Practice/2/images/plant4.png new file mode 100644 index 0000000..4bbafad Binary files /dev/null and b/docs/04-js/Practice/2/images/plant4.png differ diff --git a/docs/04-js/Practice/2/images/plant5.png b/docs/04-js/Practice/2/images/plant5.png new file mode 100644 index 0000000..d303d40 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant5.png differ diff --git a/docs/04-js/Practice/2/images/plant6.png b/docs/04-js/Practice/2/images/plant6.png new file mode 100644 index 0000000..823eeed Binary files /dev/null and b/docs/04-js/Practice/2/images/plant6.png differ diff --git a/docs/04-js/Practice/2/images/plant7.png b/docs/04-js/Practice/2/images/plant7.png new file mode 100644 index 0000000..fceb7f2 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant7.png differ diff --git a/docs/04-js/Practice/2/images/plant8.png b/docs/04-js/Practice/2/images/plant8.png new file mode 100644 index 0000000..40b4f15 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant8.png differ diff --git a/docs/04-js/Practice/2/images/plant9.png b/docs/04-js/Practice/2/images/plant9.png new file mode 100644 index 0000000..17a3435 Binary files /dev/null and b/docs/04-js/Practice/2/images/plant9.png differ diff --git a/docs/04-js/Practice/2/index_2.html b/docs/04-js/Practice/2/index_2.html new file mode 100644 index 0000000..345b132 --- /dev/null +++ b/docs/04-js/Practice/2/index_2.html @@ -0,0 +1,157 @@ + + + + + Welcome to my Virtual Terrarium + + + + + + + +

My Terrarium

+ +
+
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+ +
+ A plant +
+
+ +
+
+
+
+
+
+
+
+
+
+ + diff --git a/docs/04-js/Practice/2/script.js b/docs/04-js/Practice/2/script.js new file mode 100644 index 0000000..888bab2 --- /dev/null +++ b/docs/04-js/Practice/2/script.js @@ -0,0 +1,44 @@ +function dragElement(terrariumElement) { + let pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; + + terrariumElement.onpointerdown = pointerDrag; + + function pointerDrag(e) { + e.preventDefault(); + console.log(e); + pos3 = e.clientX; + pos4 = e.clientY; + document.onpointermove = ElementDrag; + document.onpointerup = stopElemntDrag; + } + + function ElementDrag(e) { + pos1 = pos3 - e.clientX; + pos2 = pos4 - e.clientY; + pos3 = e.clientX; + pos4 = e.clientY; + + terrariumElement.style.left = (terrariumElement.offsetLeft - pos1) + 'px'; + terrariumElement.style.top = (terrariumElement.offsetTop - pos2) + 'px'; + } + + function stopElemntDrag() { + document.onpointermove = null; + document.onpointerup = null; + } +} + +dragElement(document.getElementById('plant1')); +dragElement(document.getElementById('plant2')); +dragElement(document.getElementById('plant3')); +dragElement(document.getElementById('plant4')); +dragElement(document.getElementById('plant5')); +dragElement(document.getElementById('plant6')); +dragElement(document.getElementById('plant7')); +dragElement(document.getElementById('plant8')); +dragElement(document.getElementById('plant9')); +dragElement(document.getElementById('plant10')); +dragElement(document.getElementById('plant11')); +dragElement(document.getElementById('plant12')); +dragElement(document.getElementById('plant13')); +dragElement(document.getElementById('plant14')); \ No newline at end of file diff --git a/docs/04-js/Practice/2/style.css b/docs/04-js/Practice/2/style.css new file mode 100644 index 0000000..ab38567 --- /dev/null +++ b/docs/04-js/Practice/2/style.css @@ -0,0 +1,133 @@ +body { + font-family: helvetica, arial, sans-serif; +} + +h1 { + color: #3a241d; + text-align: center; +} + +h1:hover { + color: hotpink; +} + +#left-container { + background-color: #eee; + position: absolute; + left: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +#right-container { + background-color: #eee; + position: absolute; + right: 0px; + top: 0px; + width: 15%; + height: 100%; + padding: 10px; +} + +.plant-holder { + position: relative; + height: 13%; + left: -10px; +} + +.plant{ + position: absolute; + max-width: 150%; + max-height: 150%; + z-index: 2; +} + +.jar-wall { + position: absolute; + height: 80%; + width: 60%; + background-color: #d1e1df; + border-radius: 1rem; + bottom: 0.5%; + left: 20%; + opacity: 0.5; + z-index: 1; +} + +.jar-top { + position: absolute; + height: 5%; + width: 50%; + background: #d1e1df; + bottom: 80.5%; + left: 25%; + opacity: 0.7; +} + +.jar-bottom { + position: absolute; + height: 1%; + width: 50%; + background: #d1e1df; + bottom: 0%; + left: 25%; + opacity: 0.7; +} + +.dirt { + position: absolute; + height: 5%; + width: 60%; + background: #3a241d; + border-radius: 0 0 1rem 1rem; + bottom: 1%; + left: 20%; + opacity: 0.7; + z-index: -1; +} + +.jar-glossy-long { + position: absolute; + height: 20%; + width: 3%; + border-radius: 2rem; + background: #ddfbff; + bottom: 20%; + left: 5%; +} + +.jar-glossy-short { + position: absolute; + height: 5%; + width: 3%; + border-radius: 2rem; + background: #ddfbff; + bottom: 45%; + left: 5%; +} + +@keyframes slide-in { + 0% { + transform: translateY(-100%); + } + 100% { + transform: translateX(0); + } +} + +.plant { + animation: slide-in 1s ease-in-out; +} + +.plant:hover { + width: 200px; + height: 200px; + background-color: goldenrod; +} + +.plant { + transition: width 2s, height 2s, background-color 1s; +} + diff --git a/docs/04-js/src/script05.js b/docs/04-js/src/script05.js index 39f5d4e..11a7341 100644 --- a/docs/04-js/src/script05.js +++ b/docs/04-js/src/script05.js @@ -16,6 +16,7 @@ function dragElement(terrariumElement) { pos2 = pos4 - e.clientY; pos3 = e.clientX; pos4 = e.clientY; + terrariumElement.style.top = (terrariumElement.offsetTop - pos2) + 'px'; terrariumElement.style.left = (terrariumElement.offsetLeft - pos1) + 'px'; } diff --git a/docs/05-app-dev/Practice/index_1.html b/docs/05-app-dev/Practice/index_1.html new file mode 100644 index 0000000..1699033 --- /dev/null +++ b/docs/05-app-dev/Practice/index_1.html @@ -0,0 +1,30 @@ + + + + + Typing game + + + + + +

Typing game!

+ +

+ Practice your typing skills with a quote from Sherlock Holmes. Click + **start** to begin! +

+ +

+ +

+ + +
+ + + + +
+ + diff --git a/docs/05-app-dev/Practice/script.js b/docs/05-app-dev/Practice/script.js new file mode 100644 index 0000000..5c128ee --- /dev/null +++ b/docs/05-app-dev/Practice/script.js @@ -0,0 +1,93 @@ +// inside script.js +// all of our quotes + +const quotes = [ + 'When you have eliminated the impossible, whatever remains, just be the truth.', + 'There is nothing more deceptive than an obvious fact.', + 'I ought to know by this time that when a fact appears to be opposed to a long train of deductions it invariably proves to be capable of bearing some other interpretation.', + 'I never make exceptions. An exception disproves the rule.', + 'What one man can invent another can discover.', + 'Nothing clears up a case so much as stating it to another person.', + 'Education never ends, Watson. It is a series of lessons, with the greatest for the last.', +] + +// store the list of words and the index of the word the player is currently typing +let words = []; +let wordIndex = 0; + +// the starting time +let startTime = Date.now(); + +// page elements +const quoteElement = document.getElementById('quote'); +const messageElement = document.getElementById('message'); +const typedValueElement = document.getElementById('typed-value'); + +// at the end of script.js +document.getElementById('start').addEventListener('click', () => { + // get a quote + const quoteIndex = Math.floor(Math.random() * quotes.length); + const quote = quotes[quoteIndex]; + // Put the quote into an array of words + words = quote.split(' '); + // resete the word index for tracking + wordIndex = 0; + + // UI updates + // Create an array of span elements so we can set a class + const spanWords = words.map(function(word) { return `${word} `}); + // Convert into string and set as innerHTML on quote display + quoteElement.innerHTML = spanWords.join(''); + // Highlight the first word + quoteElement.childNodes[0].className = 'highlight'; + // Clear any prior messages + messageElement.innerText = ''; + + // Setup the textbox + // Clear the textbox + typedValueElement.value = ''; + // set focus + typedValueElement.focus(); + // set the event handler + + // Start the timer + startTime = new Date().getTime(); +}) + +// at the end of script.js +typedValueElement.addEventListener('input', () => { + // Get the current word + const currentWord = words[wordIndex]; + // Get the current value + const typedValue = typedValueElement.value; + + if (typedValue === currentWord && wordIndex === words.length - 1) { + // end of sentence + // Display success + const elapsedTime = new Date().getTime() - startTime; + const message = `CONGRATULATIONS! you finished in ${elapsedTime / 1000} seconds.`; + messageElement.innerText = message; + } + else if (typedValue.endsWith(' ') && typedValue.trim() === currentWord) { + // end of word + // clear the typedValueElement for the new word + typedValueElement.value = ''; + // move to the next word + wordIndex++; + // reset the class name for all elements in quote + for (const wordElement of quoteElement.childNodes) { + wordElement.className =''; + } + // highlight the new word + quoteElement.childNodes[wordIndex].className = 'highlight'; + } + else if (currentWord.startsWith(typedValue)) { + // currently correct + // highlight the next word + typedValueElement.className = ''; + } + else { + // error state + typedValueElement.className = 'error'; + } +}) \ No newline at end of file diff --git a/docs/05-app-dev/Practice/style.css b/docs/05-app-dev/Practice/style.css new file mode 100644 index 0000000..d6453f0 --- /dev/null +++ b/docs/05-app-dev/Practice/style.css @@ -0,0 +1,31 @@ +/* inside style.css */ +.highlight { + background-color: yellow; +} + +/* Define the error class with styling */ +.error { + background-color: #ffe6e6; + border: red; + animation: shake 0.5s; + animation-iteration-count: 3; +} + +/* Define the shake animation */ +@keyframes shake { + 0% { + transform: translateX(0); + } + 25% { + transform: translateX(-5px); + } + 50% { + transform: translateX(5px); + } + 75% { + transform: translateX(-5px); + } + 100% { + transform: translateX(0); + } +} \ No newline at end of file