From 88d0d2a0581ad37f479c8f81cfc49d27cfebc476 Mon Sep 17 00:00:00 2001 From: Barry Kane Date: Thu, 9 Mar 2023 23:04:24 +0000 Subject: [PATCH] Guile SDL Experiment 01 First test of Scheme with graphics. Fun! --- .../Guile-SDL-Experiment-01.scm | 27 ++++++++++++++++++ .../Guile-SDL-Experiment-01/guile.png | Bin 0 -> 13802 bytes 2 files changed, 27 insertions(+) create mode 100755 SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/Guile-SDL-Experiment-01.scm create mode 100644 SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/guile.png diff --git a/SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/Guile-SDL-Experiment-01.scm b/SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/Guile-SDL-Experiment-01.scm new file mode 100755 index 0000000..f607f9e --- /dev/null +++ b/SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/Guile-SDL-Experiment-01.scm @@ -0,0 +1,27 @@ +#!/usr/bin/guile -s +!# +(use-modules (sdl2) + (sdl2 render) + (sdl2 surface) + (sdl2 video) + (sdl2 image) + (sdl2 events) + (sdl2 input keyboard)) + +(define (draw ren) + (set-renderer-draw-color! ren 255 255 255 255) + (let* ((surface (load-image "guile.png")) + (texture (surface->texture ren surface))) + (do ((event (poll-event) (poll-event))) + ((eq? '#t (quit-event? event))) + (clear-renderer ren) + (render-copy ren texture) + (present-renderer ren)))) + +(sdl-init) + +(call-with-window (make-window) + (lambda (window) + (call-with-renderer (make-renderer window) draw))) + +(sdl-quit) diff --git a/SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/guile.png b/SDL2-Bits-And-Pieces/Guile-SDL-Experiment-01/guile.png new file mode 100644 index 0000000000000000000000000000000000000000..eef44d726108ea478f80da67273ab8b88310c065 GIT binary patch literal 13802 zcmXY2cRbX8{QsPteX@55S)J^?4#_+rD|_$k?T}5f_d1GG%2m ze!uIH`on$hKJVB2{dzsuCr(F8m4uL<5C8xYwWn}h0D#DY|F0&%1Ah`)`fP*$;904w z!hwJP{VDD$PXho}Kn<>-=bwL25ET6U@9jVH!?ZFI*EF-TCW(8)v}}fLEv($*Sdxd5 zt&ig89<|rz-S=4$^=Tj7yAkxsTh;6_TbLfbrtFj={Hk0mKf&YF%Ok|KC2EpK|x>{+h%^`Uru8*$6%^U5(&igl{-MkN#!{ydbDgqDmDm_pr4 zU`?VX3K~h@>(yGGc)u5`GNx@!`=a2>_w` z23t#hKqJl(okc#01xFr#rF%3adj#VJS)wD1A{7-Du7=cMet2}Ir=&c{sUGXIl7GU1 zwU%YArRI)tl+8hJiwXbP#d_=5!kIzLj=B%zlgGiC|NFe0%YeMmGb;lFgPMhP@Z$(0 zB>^}79GL>OPwRl#?Q0}se2caX?+{2M2Iy*h_DCte#4)c1qG=9E7`*B=!C90vi z?mkV#g+0JI1$^q6A!iUOdJ5-?RxG))fL#y^$>kOlymW1W5hdu^jN_n_lMBqr<5X%1 zBg5k675j9!SkNSJ?+_Sm@O^ZMTWe6#0*a4MHx9xA@RpBVGV}J;OgQ{h#F`wPO^YA^ zwD3IwVYH_G7(ZKk`ySU8Zt$uWXgu_=^+<5_QBw7qJzx@E8^)*&cgKzF{R{kl)v@fJ z&HuHpPXo^sSkentY>Dh^^-Qk~7g<-&qyx;{9US~u?HX@+czK=k79#lgF!C@H`7lfQ z3ceh#`hvb9ArJQIwQ_nkNd-hYf3JmyqqVhl$wD9>U!t8n4!Y){*LxSO9xUp0sN5c90b(5vOO@*uPEFgp-Mgin`7B zgoV{FSb>*gwZ*pBY-&4^sM!>PtrDZ@GiY&yw5f0`Uvg8nC*|NTG1f;Zvz3_wHa`CHGpfM5Nc^h`aH#q2Z45GhFoO;5XU!2Ln{c2=ix-3@8nJ z9Vjv0V?mSHs3_(#jkgO=T)*Ke>dgav6L!w^JMx^!^2pvbU877P47Igo$;0nb#)8E%0-9uv7>yCsW z$X_Rw=r|NEDDv?&p_>3hBVAvOc8Uc8i;qV1e5q{7Ijf|2kuS3O2l^EG-{YW1r?xVm zTqpsnLj65aPK*FE5nklEVB?J8h!xt(A6U|Ta?Tf?(F)iw94sn&xsgUGY8zcfP-9am zVO!V^<&WGO9*Ol!7qI%w|itG0M=8Bi<5H*YL>&8p#~lTxAXW)33vQN-rce zN^NDCLJ$oW?z8Q`{()q=O>O*K1w+k&z|71rD*1vpXMeZS!C!5l!r{lGXxFxIFEF@z z4l9K9WktURf`KhEDux*xMP=m-!5|3~WvsO=M=y0;gB85D!>w=x@XwOEP{VoUwh&R;Y2)bPl3&3+ zj0*_hdt@&J21dp*d$yU*<<#`|p~SrJAs6FEzC6OJ#btj%c1=GH^a;6?;+I!Ht`#)V zK*7BJJ4o{IIqYnkmcl}dE$7C@Mix<%m?&j!2WCKwDvP8QTFbR|ZM-;(tR)COhp1k( zZOqn4IkeF76GSP#!vqr{(?(|}Nf36jyi!s@ZT}U#U13yXICa{j#5>Rft(ob!RBPrAj?W(^5gR|@lj*cs z$`yIg_<4s!=()A^#sVf-OxL-$Op-oHYh-kE*}a9FDB;Y38sJrbHf9et;r$O$NU?s# zuFA6Yes|2Ql`zJIEK0El>qx3h>%7xeAZt&9&Fa5x(Nv-aEJ?b$K@Ben>eqAZo@=Am z)$$Bv!7Dc2i&EUkxqJl-=F~j=#_!g89one;-#a9MP>HSd(=Yk&NpLi#72nd+`pXV` zYpN+2^y3br-PQ)Uj$*mh{e4(SJa7-%e2XM*Hy{$^ad@zv z$K`5j`_A-K9!ATEzeWXYXl6E)zI$i;EHw14xG1gpX^7sz=(4VEAX_B0^Fz)@v?38~ zjPAHSD_|E}WKa330o3O3ZC>y0?viC!_kte~54G4FV6pKu9vOtSR_qcwkratJE`DF; zbfVRP34tBZId%s!K$w@yri4gO^Yrvw5gO`=!Ud?<<+a?~@a^#AzD!*=?BE+5sS~rU zU;IvF!G`hD<>M&$SGTl?Qc;icMZ?sRzye_kNeP@S4P50=*IcfA|3n}L&!PwwOU4=P zLYcPow?okfzN}5n>w6Zba@|}9P!J;*IWfcf zldeVBU+2`c$6%o%ZC0B_iM~>Sr#t&wTU)wpxr3M!z(K_71EdZQZOmrOt~NOcXjB!^ z5Jtsk2T&oU?=KY{_;!q%6|~Ssa8LqZ|Go~hxXUoJ3VgkDH^eaFE;#)1)vJ1Ta)Nve zhUWf64v^?@aUz1`f=Kg^G(1{7kLX=H238`EHLEIL3d~KwDMjbqbz@Q4r>6;gBlkkK z6Hi4bchB*g0)~%K7L8%|&^yaG|FWALHy^5CE;qNgX(Son>_KiQ(H>p5e*tX&nApOv zLqh>w!)w1pz|K<+op6SIiWh_4CXZ}Bv37cBSq+H$@0_#6T6o=1f5GqZJGY&%4aAp2 zP?FIoA3r9I+294l`a0L}2SU@e?6zpm4;H!NQ2r+sh*ILJ%7TJ|uKZZy+MRw(t5D;N zz)YXc6&28`nI}TOHgZZm#f;S*2YU%??KExOlDxdUG(vH&kQLLTXP$Qbx$TE6&3*sg z{*v-DF07(HePlC`7(JzO;S?iAN%+#XPCMa&Ru5Kj-&vl;{>Sh-#o+EY$|PSmj`I&Z z#AUH9PFFLDRe_5v?s#Wqgm76y!pLTOe5@$Lk18fHV^Xz0mUR>PS~tN$@UH;e zC34NeMy96wM}b{qu*L;klfPS8*JlSoQgU)~>SP-rifjhlX8V1~@+pb&2I+UktYRmv zfhAENH$m)&c)Jc(3@<<0cAE!_4US->^*Cp?!QIw+^5@S|Agy1UX)-qVT)(dvIZ(RI z%pc7vgD0;XYvzc)!);Stf%(E)gu4YVll>xV;9=yI5j#cKfXcfrMROs-~KP}fRTw$UM59zLYnddnw* zHMkcugW+3nY0>fZ_1y@^#(y1&Pu4y)IcbUsHWa3pc}D*F7-Nc4OnF7aDx*aCImXs# z)>?hh6$r(_rcTFE_(YEG2)tH{7#pRwC?Q#PtEtR4xZ)F{re8CEV3tKNOp;!C$RI=TA_;xIv4A=SAZ z&$d5t6$^m*qd0wH1@rb``Mmf9Cg0)jB&@1_hl$RdFRE`6sNeqq*IcXIO9*-BY+1`> z4t#nnCU$Pb#M3x0!#tJ~!3x6Ncl3*RNEJ4oOpaY5{v=Tmk)%X8o0J8Hx=(1y?feP$ zO&Ny)Fr6jfh4i)g76t7kBM@24E1DS2p4z=(Xd(&y3-^xW8&Mr;xJlQt{lFG3zec5& zx{c5p+2 zZu~U!R!xEYi&|^_Q~yDV(hnKyKU)2sj^~U*86aG%UDRR#qC@8r{i23xHw} zD`SGq6%=|2YW5-Z(a(SuN5@8d6=7jv4MBABXY#WCXDeHePTl~h(!ajX(AR0AA1fyN zW_u&?-2s>i_VerPOZ)~t_epdn4~LrZs{yF0#=V&SL+o+XTKJ+}<1)?~9*GN6L@cwV z-Ex&UQ3Q-kK58YDuSuEm^AC))3HfU_J7!h5bxweIw=*jqP;#+hGO)GS!-~@G|8X?D z+~MaeO0W}0npOtlI|2LgjX){f@K1vB-1ad7Kqkxj51p*X38EO z_Z)^eOvQd!_~DUwcePiGO+SwXOwZ2Rfv?|ob}xCO?oUVwWQ}A?rG>8j4YcP7`pBWS zcV8m3m_Onoxcgo_%9LOYAKx`$_%Z51 z$8u;5p6#>=j)M5i;d!~<5jL{Dy?xoN)=xmFR-qcVoId}D$AvLRTX}28T%FTye`$VGIq-p;x1g0yxnh#sk(bEypwl6V)8ttE@*9i;i6#qf|WV-eX%%_6_0S$42j zE9+Lt!<`s*f~iPjNcKdksf{xKVXw*A?ZJrb3g66g_xHiUZ)piI+itPs@!3*ByB@}` zdyS5czBpL!5c`ncuEZ`+k#2R+^!IBn%4binJPRzH1fWt`uK@3d6T-73~QotE_l-DTb`z#zNa?kBi?vw zrzK`GpabsEBA)mLdLDdc$ybz6S8&YW#}!^I6OflVM=}BAv`z+N0C3Ftqw<-L;K@ta zTIj0c^ZlfxB-LDgEAI8bfwlNY9J(DLF4RadI6|WWuL2k#WUUh&8tCd3Rjv9pGYh^J zbXqTt9a+g?PApYXEjxGYt`ksj38jRbjccE)P6C~&Psu3(q_`Kc_nY51E^}6Q$+5%J z`D2)K^ry-%)Zd?cbAc$`OCI!kDD-c|h3TFZ{!!=LUcq!xBrZ_5_?q220|y!Y`pH^Q zQ@`o^_0y1WdHKJjltf+@cFVQT6KG|N4)xe3-^sN?Y@VDju&X5QG*&bM0P$?k3xTv> zx!%Vg?Wgp!{b}UkHKgF1MAsynkzjXHM5No7yrL6{q;qUtERtuDa$gT)-Ro}XUt@A| z6=!@Cr-O(uh+Q$L>g|(`{Yr?uvgShBTWVdLs8o(~h5Ba|IL z3uO{E8L=4HJ_(>wZqsD%jiCw+AVfy}O`5#~inUunEJ4Qiqrl z_{fAdpeA+-fRFpXM_Yn!OsPn(`d1#AjGR}ApgeIdx{d!)Z%s{4mz_6D+8`)5lYwb! zI`OCQ9!+(12Ck7mAu_lk8kpLFA*V9guXB59EibW0*?JP;-Q9B_uq-xohDjA%!*x3(88U$q0Y>h%q5$QtY zdqV}pa^S&uIV<@ctN3FOAKiH6j=aGnefBNAV;u~tKwf=|rU#4g0}~wDuzi0*OMzS~ z%{Cx8vt9DJiODrJQdzCgEm@`XCC}65WvsoI9M7u=KdRx&$Mlz|;Y$*E#i^8H*B3ii zdOb?je(cPKVxgabYh-S20~|9r{M{9k4_fOFl4pa`8Vw+@-Fx3}Zf?G~cVDVB0|?5h zl8_T0p#XzS+vXV`;>g%)XmJa<9_AK2W8ke@ll(nZ6KA|j>i;25R=-{mxAylkcZ6W_n*e6gxZqLzAx5X814&8xA5DZtAs#m||0 zR^6XzaYApI?vRf-poOdLO z8@rMpIcnF4RjfiuLnDPOlTzq5c>cUJ&?}NY`*M>*s}v+xN+c~-Cyx@TUv^}8{;6s$ zsK6bsl{8=WphQy9@6rkrH$jV0+{U9^WC1s!{}7^i{0r~Th~Nm*;t#Bmtf<{s{pk2) z;NG?O*@qzla`{QMOpIw+N_6iRfks>oEa)z{f#`4)XjA#|vID#qPg>v(U0(i8zZfbx zM}ps|(Bo0Xqk|=fWNfsPlcCvST8oLr^7#;jOX;<2rJwKN%1eAI{g>I7Y|Zp|bd`(gXZXq!)%f~Z zm&1rsm3N+1U(%y&7!4J?Ff;a)GB2tT)eym?9x| z0%Cp1(U7_kA4!*am@`hcG`17X+syfcGw)(o((x}Mco+F4DFswItv-kGH#fmG2Ji5n z1lby`*u5^zq;~DLhoAav&+Yqmh+t_HLNah_A4ae;;;hGwU&q`t-xT#EI;|lRfA3^$ zWI6H0Q$Iuk9O(v>pT!{gIc0I)G5xP-Qmc76NB(4U+&cAvyfVM0rlv^VR+-)|6dI>L zuX%Mf?twFJd)M057LYw^R};yB4UNiPaG`sz^ZfY~7APNhjf}9vimg1WP@~*$bBYj- z>z)Y8=KWw>T7G{1IfY11Q_M|pL^(&-Zr2C3yofc-jpKjcH>hZ|mcKnF=V7Br_CPB@ zyJN^$_sqQ(F8!QHDkmpr1Txd{qA*s>m<5)|D51-NG7*721V`ORt)u)h?6u#^xlOO{ zb(nq>D8S8GAVdz8s$X6~&}S`NF<7jTa)Rh%KK?|#7cW|2CsRD5jGG?fcW-1R2g}Jt zl@ZJ_qP%|EY_qi@&{Sp+7;|DLjm1`|KjLF+*z!ty9UC1CNb8xV(lU?`;0lRSjh&_I zRg+eT*fcI=a>xH6s^HxY3!mFt=2M$2n*KGx01izqp`yw2l#ofrB$a=;J8E!m*uo{7 zk=A=5D;n8fzm@Hn-$fmle66$Wmvwe>a>85FSoi)6Lb~p|E9aS2TcJxg99k+-)?zG#jc# zPmcl{HuIyUXJ%&jFFw)*pa{SkVmHuh1d-yR{Wm7PzAf&f7h38&!;WaA-F)Gd8!rxiG|v^APn;@b?0!UF7Q6bdB_OzF|JT(B|kE2ZCN^Jk|PPf#n(n{#;fuq;l@jc3fqagJ4mlf)X|LKNk-*6A@ z>5&}rN|PZAmj|T$erue00}i0wvfqGpbI`i_EylNK^er5bE|w~jm6LqzFa1cuW9Kmw zHtR$f$_l6hrm;;;19R2cZ6mI^AY`gV6-6nl7UJoo{%q@KA{}G^*@dl-kB@P4 z&jA$ND-_Uz?ETAlR42m3B*=j*I7|M8k?z$a?2R;^ar4-Wbv3FgF=tyX%Fiz#4x$Z- zCvQ;Pb91w^zHPUYxj*`2Iv7a@XW*v{6%N2E_MVMVAvTo>L5S>XN<6B9FhXqE`@TR2 z-?0=YTke`?8|gd8IFvX=Jz|7FBoL6#+7V_r7q1EFm~?9QW#JU_cgtc0XRh= znT8@lY*(DTyn8ySp$ZBLoX{>}l87SZ#IB%oJcxAl7d)Y&R8Y@Z**@9Twf(+vY^n}d zFA=z?ab~$ex?!;@U&`??a`au&>&M{%7q@p^5v=({8RnDB;zVdC1Z8Ui%3l>MmLTY! z5D^kS=`uTPGpjv+SUzQhzh(xs>s8rpnNQEmd@v3Nkn!>HFuiJ8EHtP>)HzJBO;1mA zcz$<=4*+Y&{_(D&Cb&W-ygl^Rt&1!w6d}G+ubNQYCUC?JIOM}Q-?aqGuF`_rksXCU z^F5vnCfPlE8AbC=Vo>y~Y8e7tIx(H`6ZGUXy|UG1S_x7FX#loATs=>wE+*FCQM@jQ zJhL#S`~-c!!8Q9*AmztQt}F-+>dn{vKR}r3nRDsDmWySOFoa&L4Eu9uq`(^v%~>_gHN4#_do$v~uI1+i`#Y+;akq zZS(V1Y|f$9Lb#!dr&cB1K1NA0BalR^GIXCBt2 zA09xyaeghwiK@cPmONk?Zs;s47waHF;&7KOpH+2#C2mA1$CZDB+ZuJhj@7GiBZ2vH z$3JnN`}p$Zu!^Gsj5a^y?s8i@7iJm3yv47Jqn27|x1~BdTLMV}PYK0o!^@Vzw)_gs z0An)cWu+GendwZWkv}Rp)aIZQB$D%5B9-8=-vc>{h?znhLDYC zrcoFH`jmw^nu!$Q z_x#)opBxf&?a$539Gv<~H|AWr?U-NdxSvr>?1DuSbmV6vjCNp z%5)A#0VqFkl(cduy#CxyfCL9Ci^FI};sHGa1DBvzEv}w6SOw`nU)k040}w<)pfF~V zX{-56%jEP8-^f2a7_@$6>BB%6rE(4}0S<-0-i$qve>|b8V0YK^)BEAQjW@%Nwp87oa*flv>Rek;;FIUY`0Dzlnk3$vA#U< ze;A=Mi*4S?2+;If1wKhFocQg}hsQ7n5*+sY>;7fNTHv1?>z2yl=)4VzE7g#4#f$DG|L;^um7pA~bYYnXUK0x-2-crz ze6G~_%!>{waXfe~EZoCV|IM^2J3#qA*{@f>VsUDG+{3c-ckZtQ!%W-Gqdp@4y_(je zzjJC?PA+&yghKyh$O%pjUzk&V{tE=FIcQuk@&adxb9;Xw;#oP`_%Q6-Y{gw{IV;+H*?fZ0HN zPK(SFpb1MHD2AdTY?by~OvjT(Ghlk=@chLCWnE9u`~ve8;a?t>10ejgUT*ifxH%cC z_uAIl|K3al>QN3(PKq29KOBUORpCL|ZOrw$)-w|h-aZ@@mpWrS{nS?oJ-zgnuzz>! z{ysUN83=bdT2tYx;UTI=&eDbnv(5(Zd9hvP=gbW?+~9iOtZ-2RbKmkM_)0|%o|CKW zf*tivJYecs)x9@bV6}396{YfEId)c5n?P38l0y$Q^}WqSrdGFQ1p*fX@^(k{Ax4>a zPT~N1diwX+{`Wa?fRsk!X)y1MPDR$i80l$vZNzx-i%zUk{4^Dwv z#cMNA1Oct4QZG->?kByVwdpA(fJ5*CYrJ~WLlO3`vZ2g-H@=}EeLhm;?LE9m`_By4 zdC(hRjm+Sv5tdelwN|FdD{DU&XZO}@vtL}cPHuY2 zSbz>I5x{e{^q#4@2VY*l2>%yOk&%jk|aFWJcc7-5s?6;5*-Pk@x|1kU&r#E#;k>9 z$;V&AKQ*hwkVA=`XeDwFTA`l*O`HT8q|ohvNfQb1VBbe>j7}@S^FU{_z|N_z&Oyls zePQK&*A;tU1G|rPGMe%5-C>xi^x-w9v)ZHV1-hQiTL3vbT22uWo11-!#pWdP91I&U z8gu`E5)0C=82melZ{L6sbo0Xgx&mQ8>h(_2s$2ERE@RhS{ zAs|W+6<*{u1g(D?JF_?GZ6uq?1brxQh|39@#7%%2N=LrdwhZRRs|?eFU+CSjoR!B9 z=DB2Y-7;5nb$z+Q5636pKVt(5^-w9Rn#&C;q9%zeu*TB*`r~p;Fc*-#5cnOj>)B>U zk@7=7gpV%}%r$&P)-{)%>SKMIp8SX>9DXsT*!X8KjwS5Vn2VrsKSmKoE1evBhs1HZ zpd0w@AROr8=H`~PpqTouhAn|^MqgL0-vU0hOo_v-kG~sn1T!PCXvl2QPldcUp)5bJ zH!07MwYk5ataY&yDcPvp{2<;652*}4Ww(>XlNYtZb@0Qw&>?>vc6ED~ELqSGzykjK zv;}iE98gWCe|Mi=Z2-Vxs~_K^`Ki6z5IF^7Aiu!jsIhyWTBYRjMhBrEP)d=MkGD}Z za7MyTlenr}n&Qq=p3zPoq)2-gP}KuL&ZbDM*~XRkZUi{ z=Z|gKE(-oLv}+#nS3hPgiw!1Z{=>IpE|(w9-@unfm59&PuJKkITt_>U(A##VvdQdM zqzacFdrgx*8J}$vM8PzPm@!D_=;Bd)N-h~^M0VZTu_}Smg-s5^x$n4#1>vV&z+TS6 z1lZF&VYD~+LM*>NgCR8#@u|_c&!(Axp^AV1TlbamnqqW%(x!=+_G1}k9n1&8Id@v2 zZ2xGci|g4`iM_ZZE5jc&&v*>*iI2Jo>etSVyu42Sj||ACasUKEUVlM!E{*AYKuLHR z=K#0I_S(YqR_a$B_2RQw+}&K_J^lT4ueRq+mRaDvqR^{H#>U1vhK8}n8-wm<%}z7_ zT9`onu?OG-tsoAy+}J~&%eNqVr|vlj)5_c=`u;-R?O*3D0R|)*pnJ<^SD0w{`NvDZ z?3HAJ-{DeQV@ckL5Y+kb>i&SQfQ-P%pV~!lP)@asN8Qk)+W-}|7XOy;SmsO)MgLZ^=9CJ|}bJtakJ>82thd$#B?PPncTKrN>SUp(i zlGev0aaa{V9Uhj!b1(nVGFN92ccn-1>(2nMSch;9wa2hVAxc6`rF}&S=K4Fr-@m`P z=2ZoqjEcS5%CSe))sc^6Jys1242(Jdn~QB@x8%Q(WY|(YC|a!#+9QMi*&{nAmwzag zFKLkkYn}c<%CRVaX5=;`_`q9|>)^kYDW^C(PACHT5En8k<(AKo7;DM zBVkD_=fX(!z(0$Z>N0ki?9=z}-}_B?sePgXSEQ_kb>5t*YeLCl_jeGUS)WfEYz5X`s?MWBpLxNLKiTbascmIKl;ZkNt_1 z(Cmk>>hf&r6GtdFx6@jDyW2XBYnTDLd1w%!v(c<@2HCYM)Nrl-C6t$N+%kYJ;y zE8!j{0J5+Nu(BBla6W1(sw%=x)PZ=RCr|Q0wr~xY;jYE{IqfOR-K-`W0+k5LcYL6s zL8<)6+D>1y_v%CAYIj-}X?y=$j)ftH7hQd8EPd7V5#M2=l^iSHQn*A;R8sry#&-mj;zAVvqla9&kal?kYW{fF=xFHDvNe*f+NM|a$_m(|?d z%)7U@$KdSj`~vI3wt@cscuwqL*~iG=FqbTJx@Of1N1p^xZ8LvJ0FhTxQi{P_`OcZ;eaqbUH@iuXyDzW+k6v6FR@rA=n7zL$ z$_N`!5MmFVuh1%A1}yNQ%e|N$+`48khw@FfAY}0MMc9i3)Yk)+u8Y@GyVBDtULYNG z?IDlZdKb6D19U+0@z%81jKLGTZC2Y_KJ&L8Kx1D1{zs)8AamC=a@ODN%@GUQTnuo; z5?lN_1VL#;{<_66H{!R}PRu_9u;w8yxqr~Qc;Iw)b^gMhtvjt9togXBE@-U>M^fev zqFYt2G%aOuk(rs98`Jd0brz5>ZHXb|Ql zU$$Hk12+@o=L1n_A(=ce4%WiG`Mt4xpRBemaKX>~m|t#{f*P_s`D+BIyr{s*Aa5aw zmRmg>#WmVjlPLt?>4pGgteHF+6T1h(UAL_p<2^&!g4XRzy&R=N(4wyKS`qyI^Ej>V zrrm{4xs`dg?$M7q1K{iky&qTM?B~?DaI|Osj~?)td+GPre+hgm065S2YL1yS+G)mE z2U=sY1&P53wuZahi@D2*JI0v)V?Uq`?#+MSbWFEVu>y|QwX6g&Lk%u8I0~+Usq_Fr zOn>9|9@-?8j*fRL*nn)2woA~Dwcg0*dOI2et#)(aj~F(&+)WXpE3zh=PLC3uy$9QV|-1T?>{U~+^6!|sAXS^C@`^P&7pcjNg=(BqZB zJ${fWvs|Aa4(7Rc2ke}+9b}t1oL&Zp;Q|WeW;DvL5SErdxIt6j1-$iLFc$!d9&MnW zq=W#K{1Zq%m3GvnJxHmQfNn?~dgIu;(0P#v01JWR-Kp|V3|e#xdeC4PRl2^om{kZ& z8}U-a-N5b)v{#e20b~x#pTI7f1eCZb7^MKEGF>3dDJ=1gj;Yf4t~WC`H@A314$IzN znXDmo>!p42pil>Rl_}8EwA+&N^V-h>$dgpu$3QI+^dYGQPuO|9IoC}Z_t4Y(XSKt_ z`MuaTI9|yk3y;8@7VMo>#(SEUvF*HK?qSb?KV$6{t&6V~U0Z*2o_yOo3e?`^Sq(lR z(ULk421PKpRkE1=PZ#S6^|m9KZhtijB&oo4j9Ol?j;}CBq&I@`NYMn;h5f0Zg22cV zDoV=4x&;?~Ao~6U9hh;!1}#7uEPv|y%T_j{%yR(rn*-{-+EqF-)O&Zugt*f@m``Eqk)2q!WobLPevQQ<` zp4ETHu~2qSv!H`!@vUs@w;36@G5wIDu^3z;YKzN1n=d2G-5EnKe*Aa8LBXp(Jk~yx z7xsbjo}ll(VOe>3|E{;y{(QY*r@vq!2<%oORzVTx+tAPgG0?zgt_0^Am}2A@&@CXv zs<7IUgHG50V4sBo{g7%$qR``$qU3V^MERQ+Ou)YHwG~?+U44p0%-XbhQ5-8l-_oZZ z_l*`=F4QVvL|sM4#(&NA$&)8qI37e+ZO)^|CoPaqZ6QZfL<;1gar4Q8W&@M23JGKS zX+G2&fffrGzL5Yj*;{Br9z$imV0zxLcsi^bW^R@POUd*0)K**XQl6HnKhqBL;ar#c zZJxHrYI`Q;#xGDn)aM0jb9&{zBZ!r__)dpAeOM0AfQJnY4_{G1Kjc+6(RzTGLj>6a z^9o=k&z8y#F4u5h9-`uX;Zh(``?`N(Tf@2CZGx#I=hCWm@%9ZEXg*b?{5+Q(pr)>_ z{%&M**u~XVh6%kazfbK~cd3;FwO}9~Z*lbcX!-s+#m1`6jJOxNwg{>c4H%4ubwd@u zMtRodc>L1R(#C0Lvsk}hWxBc?4n*2Be!4kqYWZn+{1YV`oKJkSpgsQfzh@@EMsMb>FZQB(19?h>3Xg&uI5YXUTMQLTV2{4^##ufCi2h;NvtpLKWB+K`memTC4bk?({xu+Y0jsS|F|> zE@zb!wGE~hGogsa*(>k~8s10Gi51*A-Hp2-Xgpxfl|M%aSED@A1J6o741ZcrUfMB0 z0{LGgy$5dd*QmbkX~cv3z@kvVR3$&q0$lXB+-vkK-F+j0g|a2)QLg^+>{*Barc<5# zwLZr58-^F;K|R7IX;GgoSl@N;*ujoB$j%=a_?*cBb-r5|%N+jQG(-7&=;wd{)($ry z(M3NQZ7}dG$(;-JOc}w0qcHyybavf`-7GCFC){OaeM1#yFgXE%3*d7w;;A_?H)N?% dQ7JcJZ}I%YpBQsigAZ>3YRX#hkBSx%{{xEG>6ZWi literal 0 HcmV?d00001