From f1c58fe901583859422c4d7ab4ab94ef77d1898c Mon Sep 17 00:00:00 2001 From: lerabot Date: Tue, 5 Jun 2018 12:16:10 -0400 Subject: [PATCH 1/3] lerabot example --- samples/lerabot01/Makefile | 30 +++ samples/lerabot01/main.c | 289 ++++++++++++++++++++++++++ samples/lerabot01/romdisk/NeHe.bmp | Bin 0 -> 196662 bytes samples/lerabot01/romdisk/PLACEHOLDER | 0 samples/lerabot01/romdisk/flag1.bmp | Bin 0 -> 49206 bytes 5 files changed, 319 insertions(+) create mode 100644 samples/lerabot01/Makefile create mode 100644 samples/lerabot01/main.c create mode 100644 samples/lerabot01/romdisk/NeHe.bmp create mode 100644 samples/lerabot01/romdisk/PLACEHOLDER create mode 100644 samples/lerabot01/romdisk/flag1.bmp diff --git a/samples/lerabot01/Makefile b/samples/lerabot01/Makefile new file mode 100644 index 0000000..cc15d71 --- /dev/null +++ b/samples/lerabot01/Makefile @@ -0,0 +1,30 @@ +TARGET = lerabot01.elf +OBJS = main.o +KOS_CFLAGS += -std=c99 + +all: rm-elf $(TARGET) + +include $(KOS_BASE)/Makefile.rules + +clean: + -rm -f $(TARGET) $(OBJS) romdisk.* + +rm-elf: + -rm -f $(TARGET) romdisk.* + +$(TARGET): $(OBJS) romdisk.o + $(KOS_CC) $(KOS_CFLAGS) $(KOS_LDFLAGS) -o $(TARGET) $(KOS_START) \ + $(OBJS) romdisk.o $(OBJEXTRA) -lm -lkosutils $(KOS_LIBS) + +romdisk.img: + $(KOS_GENROMFS) -f romdisk.img -d romdisk -v + +romdisk.o: romdisk.img + $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o + +run: $(TARGET) + $(KOS_LOADER) $(TARGET) + +dist: + rm -f $(OBJS) romdisk.o romdisk.img + $(KOS_STRIP) $(TARGET) diff --git a/samples/lerabot01/main.c b/samples/lerabot01/main.c new file mode 100644 index 0000000..d002df9 --- /dev/null +++ b/samples/lerabot01/main.c @@ -0,0 +1,289 @@ +#include +#include "gl.h" +#include "glu.h" +#include "glkos.h" +#include + +extern uint8 romdisk[]; +KOS_INIT_ROMDISK(romdisk); + +/* floats for x rotation, y rotation, z rotation */ +float xrot, yrot, zrot; + +/* storage for one texture */ +int texture[1]; + +/* Image type - contains height, width, and data */ +struct Image { + unsigned long sizeX; + unsigned long sizeY; + char *data; +}; +typedef struct Image Image; + +// quick and dirty bitmap loader...for 24 bit bitmaps with 1 plane only. +// See http://www.dcs.ed.ac.uk/~mxr/gfx/2d/BMP.txt for more info. +int ImageLoad(char *filename, Image *image) { + FILE *file; + unsigned long size; // size of the image in bytes. + unsigned long i; // standard counter. + unsigned short int planes; // number of planes in image (must be 1) + unsigned short int bpp; // number of bits per pixel (must be 24) + char temp; // temporary color storage for bgr-rgb conversion. + + // make sure the file is there. + if ((file = fopen(filename, "rb"))==NULL) + { + printf("File Not Found : %s\n",filename); + return 0; + } + + // seek through the bmp header, up to the width/height: + fseek(file, 18, SEEK_CUR); + + // read the width + if ((i = fread(&image->sizeX, 4, 1, file)) != 1) { + printf("Error reading width from %s.\n", filename); + return 0; + } + printf("Width of %s: %lu\n", filename, image->sizeX); + + // read the height + if ((i = fread(&image->sizeY, 4, 1, file)) != 1) { + printf("Error reading height from %s.\n", filename); + return 0; + } + printf("Height of %s: %lu\n", filename, image->sizeY); + + // calculate the size (assuming 24 bits or 3 bytes per pixel). + size = image->sizeX * image->sizeY * 3; + + // read the planes + if ((fread(&planes, 2, 1, file)) != 1) { + printf("Error reading planes from %s.\n", filename); + return 0; + } + if (planes != 1) { + printf("Planes from %s is not 1: %u\n", filename, planes); + return 0; + } + + // read the bpp + if ((i = fread(&bpp, 2, 1, file)) != 1) { + printf("Error reading bpp from %s.\n", filename); + return 0; + } + if (bpp != 24) { + printf("Bpp from %s is not 24: %u\n", filename, bpp); + return 0; + } + + // seek past the rest of the bitmap header. + fseek(file, 24, SEEK_CUR); + + // read the data. + image->data = (char *) malloc(size); + if (image->data == NULL) { + printf("Error allocating memory for color-corrected image data"); + return 0; + } + + if ((i = fread(image->data, size, 1, file)) != 1) { + printf(stderr, "Error reading image data from %s.\n", filename); + return 0; + } + + for (i=0;i rgb) + temp = image->data[i]; + image->data[i] = image->data[i+2]; + image->data[i+2] = temp; + } + + // we're done. + return 1; +} + +// Load Bitmaps And Convert To Textures +void LoadGLTextures() { + // Load Texture + Image *image1; + + // allocate space for texture + image1 = (Image *) malloc(sizeof(Image)); + if (image1 == NULL) { + printf("Error allocating space for image"); + exit(0); + } + + if (!ImageLoad("/rd/flag1.bmp", image1)) { + exit(1); + } + + // Create Texture + glGenTextures(1, &texture[0]); + glBindTexture(GL_TEXTURE_2D, texture[0]); // 2d texture (x and y size) + + glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR); // scale linearly when image bigger than texture + glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR); // scale linearly when image smalled than texture + + // 2d texture, level of detail 0 (normal), 3 components (red, green, blue), x size from image, y size from image, + // border 0 (normal), rgb color data, unsigned byte data, and finally the data itself. + glTexImage2D(GL_TEXTURE_2D, 0, 3, image1->sizeX, image1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, image1->data); +}; + +/* A general OpenGL initialization function. Sets all of the initial parameters. */ +void InitGL(int Width, int Height) // We call this right after our OpenGL window is created. +{ + LoadGLTextures(); + glEnable(GL_TEXTURE_2D); + glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // This Will Clear The Background Color To Black + glClearDepth(1.0); // Enables Clearing Of The Depth Buffer + glDepthFunc(GL_LESS); // The Type Of Depth Test To Do + glEnable(GL_DEPTH_TEST); // Enables Depth Testing + glShadeModel(GL_SMOOTH); // Enables Smooth Color Shading + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); // Reset The Projection Matrix + + gluPerspective(45.0f,(GLfloat)Width/(GLfloat)Height,0.1f,100.0f); // Calculate The Aspect Ratio Of The Window + + glMatrixMode(GL_MODELVIEW); + glEnable(GL_LIGHTING); + glDisable(GL_LIGHT0); + glEnable(GL_LIGHT1); + glEnable(GL_COLOR_MATERIAL); + + GLfloat l1_pos[] = {5.0, 0.0, 1.0, 1.0}; + GLfloat l1_diff[] = {1.0, 0.0, 0.0, 1.0}; + GLfloat l1_amb[] = {0.5, 0.5, 0.5, 1.0}; + + //glLightfv(GL_LIGHT1, GL_AMBIENT, l1_amb); + glLightfv(GL_LIGHT1, GL_DIFFUSE, l1_diff); + glLightfv(GL_LIGHT1, GL_POSITION, l1_pos); +} + +/* The function called when our window is resized (which shouldn't happen, because we're fullscreen) */ +void ReSizeGLScene(int Width, int Height) +{ + if (Height == 0) // Prevent A Divide By Zero If The Window Is Too Small + Height = 1; + + glViewport(0, 0, Width, Height); // Reset The Current Viewport And Perspective Transformation + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + + gluPerspective(45.0f,(GLfloat)Width/(GLfloat)Height,0.1f,100.0f); + glMatrixMode(GL_MODELVIEW); +} + +void DrawTexturedQuad(int *tex, float x, float y, float z) +{ + GLfloat texW = 10; + GLfloat texH = 10; + GLfloat x0 = x - texW / 2; + GLfloat y0 = y - texH / 2; + GLfloat x1 = x + texW / 2; + GLfloat y1 = y + texH / 2; + GLfloat color[] = {1.0f, 1.0f, 1.0f, 1.0f}; + GLfloat mat_ambient[] = {1.0f, 1.0f, 1.0f, 1.0f}; + + GLfloat vertex_data[] = { + /* 2D Coordinate, texture coordinate */ + x0, y1, z, + x1, y1, z, + x1, y0, z, + x0, y0, z + }; + + GLfloat uv_data[] = { + /* 2D Coordinate, texture coordinate */ + 0.0f, 1.0f, + 1.0f, 1.0f, + 1.0f, 0.0f, + 0.0f, 0.0f + }; + + GLfloat normal_data[] = { + /* 2D Coordinate, texture coordinate */ + 0.0, 0.0, 1.0, + 0.0, 0.0, 1.0, + 0.0, 0.0, 1.0, + 0.0, 0.0, 1.0 + }; + + GLfloat color_data[] = { + /* 2D Coordinate, texture coordinate */ + color[0], color[1], color[2], color[3], + color[0], color[1], color[2], color[3], + color[0], color[1], color[2], color[3], + color[0], color[1], color[2], color[3] + }; + + //GLint indices[] = {0,1,2,3,2,3}; + + glEnable(GL_TEXTURE_2D); + glBindTexture(GL_TEXTURE_2D, tex); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); + + glEnableClientState(GL_VERTEX_ARRAY); + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glEnableClientState(GL_NORMAL_ARRAY); + glEnableClientState(GL_COLOR_ARRAY); + + glVertexPointer(3, GL_FLOAT, 0, vertex_data); + glTexCoordPointer(2, GL_FLOAT, 0, uv_data); + glNormalPointer(GL_FLOAT, 0, normal_data); + glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, mat_ambient); + + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + + glVertexPointer(3, GL_FLOAT, 0, vertex_data); + glDrawArrays(GL_QUADS, 0, 4); + + + glDisableClientState(GL_VERTEX_ARRAY); + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + glDisableClientState(GL_NORMAL_ARRAY); + glDisableClientState(GL_COLOR_ARRAY); +} + + +float delta = 0; +/* The main drawing function. */ +void DrawGLScene() +{ + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear The Screen And The Depth Buffer + glLoadIdentity(); // Reset The View + //glTranslatef(-5.0f, -5.0f, -10.0f); + glTranslatef(-50.0f, 0.0f, -200.0f); + + GLfloat l1_pos[] = {50 + sin(delta) * 100.0f, 25.0, 1.0, 1.0}; + delta+= 0.03; + + glLightfv(GL_LIGHT1, GL_POSITION, l1_pos); + //glLightfv(GL_LIGHT1, GL_SPOT_EXPONENT, 3); + DrawTexturedQuad(texture[0], l1_pos[0], l1_pos[1], l1_pos[2]); + + for (int i = 0; i < 5; i++) + DrawTexturedQuad(texture[0], i * 20, 0.0f, 0.0f); // Draw the textured quad. + // swap buffers to display, since we're double buffered. + glKosSwapBuffers(); + +} + +int main(int argc, char **argv) +{ + glKosInit(); + + InitGL(640, 480); + ReSizeGLScene(640, 480); + + while(1) { + DrawGLScene(); + } + + return 0; +} diff --git a/samples/lerabot01/romdisk/NeHe.bmp b/samples/lerabot01/romdisk/NeHe.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6b3db10f2b8d60997f7e213255809961985c2ef3 GIT binary patch literal 196662 zcmeFa_j4RccJJHXRabXcwTbrLn`rNWh7EWSpaDP=^xn=4gF|vSepb6HZAiPix=*_D zSN8|KYva8?@x4!>W-t^9atLCFOANaL>}Xb3Wu5%yH&32CdGgfkdPk$zC`X5XdF6{% z{ioIVmH+K~{D0$PjKGJDz`p%rd~%GyFCGE4-~ZyPIj-OsfqfAe^M7Ah#wR}z1jhXT zKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah z#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n z&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV z^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zFV^M7Ah#wR}z1jhXT zKpJ{n&3zFV^M7Ah#wR}z1jhXTKpJ{n&3zF#5dXD59QzhEJ~>9<$RThb{_B4@bUNKT ztEt0oOGW*IMsBuOobQ*0jch&{k{ouu{@uxNn99Dl^1p>(Kj=T@twQhS(Cc)P(_TnN zMxEl~L~X8L?o>0ekk@84|4{@u5dTdkli6$*MbY7Kr2Mvi(r~6LTwhN;xw`zD&#wK$ zZ=d}8-+ui+|LHgX{qKMEufPBLuYdLN*H11#`{>x?tFsT!&s^M`>^Jg0kMxFO>vh^# z(6c(-e|-JIcc0$;`oY%Y%M%Yzl|S9CetvWAtB<#?T|CxnmRwHpg#v>PO(&)~)B91d zfBfy!|NdXT`#=BkyZ`l1zx}sAeEa47%Zn3TpX}hqgwL|pi#)wH_2-|R`@6q<`0s!B z?f?FlzxW^j@Mr)0mtTB*Woy`|*llKuQCp6Q$7eH7t}XxevupqK7tgqW%l_}b`}QAx z^W^f$m2x)yf(-ok?c|4G=$MGCA7;!~W_%AXbie!L%x^!t_wD_wC*~*8QQylCN(F?q z>D*WMPX5hrKK=K<{d21M=+1>+tNikn>Y29_Oug6e!+`=6&6;M)ac;Fl)BMe^AN~8^ z{`UX*x8MKg-#*>hT#N+2m(yX@b+YosjoLRK@BGbgxaQCQ-~aZ9|Ms`PzH#AXF`Imq zgz9;tL7#~Sww9;AynFRGPw#yD(az^LXTP{K`25D~Hy@vQbm#oW!fYZMH0aege!af1 zSN?h+{@ZLem&+9h1TvXSrI0Qr{k5oNIv2V;SATYK_7Bgl(*^$Z_fP)Qw|76fyuLbF zYNUd-s4z?!PIg@Pwrk%$JooJ3jbn@Rkx<~30`30bw42+FgTO4~U7Nvl=x|<-%v?8jmi`|HT(K zA??5Y^|QbF^7g%p>$Ckb{7;76+%?QtRy(2V3svO*>(6ie)9*h2x4-`EyGNI=oSGYU zD)WPuBw8I7?I>@bYsRl1Ykq!v@`r+;K53X&!AkrZPQ*Q@etJNw90$;p>Zl>he=$1b|IrY0o7ykKoU;K~1|FhqJ z^YO#m=X%ZWdtXe}&sU}Ge(B-X;CG*1{O8|&{y+cm*Z<{jzNUw6Y%J_6p?XqwScaYK z?F(zDzK^b*?bLJ8M7mZ;=F&;Q?irL553kJr{#SQDxp{iB*RTt=*A(^opAN)-G=DG{ zg#U>|!k4Ito@P!6RC98(Gb(qM6UA;Q5DY}^^=AF-skLVxU;F6h=845jKX0pL0#Yzu z4HX|=SpEH1pItk*Q!bQV)pPA;U9T88yVk#Sa=zbg%7S}iX6?r5`JLHFKj^7Sa=Yv= z)$2}Q^X%Hxx1Zj-d}bq;PN>zCB&lBrq}Jk z$J5zHASx!aAufA(<2?HR1^ypKel$!x9&e>nF;_M3bT!M7;q3C(_Qj7bokRbt{D=H1 z3Hh{J^ryS_Yp1%6h3mD}d^i|(`#g-l|Md^wyxi`G5lk%ͰF-6LSL>~!sG^Y!B7 z*?M;=la9GOft}+^47Dd#r_}4KVg30DX=YT<_D$8!0U%k669(*NrpfAiU=*I$-U zJtGUcK{Q1AQf4K`-44S-Ow>_KRxVTj)F4%P9#%TG|JC}>u zK)pQ}^jf**tlrbAgyosd%kkR8M8EXW^&PrEG8P6s`XAec?e^DCgp>*^~K+Qz36MAq75vc;n&iGtFY$B^ccv zUo4);yZrr_wp6cFrp{*Ti%B_|$fiI0=n7+SITQA{guSLbr2OdBN~KaS=Ujob)tf6j zJ@H6jqfzLT6PbwHWw-DkXb%C=MI0`hc`>J3?}mn}=j)?0-e4#kl>YJ0Kf@N<6G{DY zNWs)XcrFSM8hAV&$t90smdUcGId!Zxb1t2!hZ3&EsS!i%>5Un#XLzcF^oZBYdMbmZ z#?<9pp%YHHa=!4tq69ztk^j$6E38Hhy=G^wuy$c5TbQ?)?3+_7kMCSgL|wIJx7wMK z;;pDtoSR$gPHe}0(xp?!p4`7QJ!tZ{7pnXw|2+`@>Hd*Oq);g2ayj&X&*ux}2jJ;W{d4EeB~qDWd0UvxU`vR0zqAy_yZE|<%xbjBfFG{OoJ15L>}Ay~~@O=RdNGyABWR?!z?vlp_BrFgIu6uf`QBvAYwKH%NXKdqesulZmv>KigRzq*Ptt0^{J@%7?G>VnJ9lc6i=m+J ztA|&f+&!O)D+=(S$AS2dcB1>2N+now4xT8JjCTl$*-&mZfGo$R} zyioDlwQF4L@rUb6*WJ$M^0AY1o42Bg+(fzXXP@1^eDQ?;xf!v=sA+~Zi+Sy2JD*uN z;f&R7j?mMOPJeN0o;ml%#s&zW{aQ08{mq?jC9rb(R)1>8WVYVExbs(E-R;!#n5M(s z!xb)sDvJnKOFBCfgG8-o%hfNO=renY2b>Ta*+QX^oa&oG-KeB#<%8|1*+98#NmstU zxANKbX^_n4^AzTGd!*FRC}vY0eZ8KoP0V@k`dtUsjuJQVdZ zH#f)FWDYhAkrjtv*(mGEQLEarMxzn#!G9bPK;gE@MM+G$HQh#`KD8-_n^s@-n~!$B zcz9gBURAA3;SVnu1@c^`eh5Gp5F81YF&Pq##h7b2xs>Uyx#dCKzkYi8*|T%1gnUvL)wLp6^sR_yKBpZvvz7TxYpkYs zgq}Rues*Ivl}_*M?DTrQShk)UT}XN4)f1;jtJi|j^wOyL&wu&V@um5_0^j`0f%uQ* zN!{s#baN<#B1)8cna;XhCuP0bZY^DIbOq5h-$_0@--ZA12mL=747h7z{hGJFHPz2A z@7(N8Zrk1RrHz$8{Py$7QA?E;4dAuwhH+gxswwAUrI}?%x@;00&pulJ>dFKVp%qV@ zIFU}L%e{qU_f+0(TUuS8JbpVG$(1XafB4Pg>!&x6u+!Fs&#Y5-#{eH$TWfp8Sd-a}#;KJoq%ZBQMktbQeuKV)#;^()%Cj-2q zn|NHdUi7enAshOiK@(y_Z-bmQI0_!CA?el*x{b=@vdJIu`<juHIg#B+_!EnKYnyVu$t7S$Dm@cpm4ui?1W9th_;-Kw5Apn0@&=I z-CzCU(hy@~ZEcO_2n3VmsU3$cKR4Z&J9#6MUl5(T-#+>1i@P^O;d?Ei7W*cj2jV}N z!+ER=hynj;g>a^ks4ogyDdW|4Dv4^N%5=IPz*XBhk_nPy7J)~eT%a%)Q|UvpyGm#NtGhA(a}z<=rjC015e zP>iucC)QXEnWd>=dGh4-cyZ(~Ie+!^#y6i{vzkrFHZwD07X#t)j9nw;;D0S$Y4k*w z=j?m|Bvt(n$53UF;-tSY1OJPDZLd|y*9K;*@a5$pm+?gUFMvA)Q?xv73s&QjwvlqQ zTg`B?7;#&<=Ila|%OC?CoWt*t^Df8R$Zy=0|FI%JWN0)RXc(7-kGW?v8MYecdeW)3 zCMZEaT0v3ldaK{y4O<<4QBz6#TkT#jmNghn-&~*OkL$UFHbStV&r@)ThZKwgDGf{* zH_#c$03C=d6UtgOVRKgGgZH&w`LB6vbtSsfc+R0(1zj-B+nGsFV&mLU=>a&|Jbezcq z0tuHhZ1IE~nsVIP9}JR(CPv|RH|HpgN7Lg_+UOr|tQ;)OdJL{!-aWa#5$zvy+LL!~ zp8EFLRj(v6Kuku$vJ0WVAZE5?BT(vcHNZxacC5lP}U8qnD8;T0$hu+*2{4WKx zgHFBBn6%jJUtb-mPo#tJM9E&<66=2lkm)~e6qL6{$4Yu1S&qbFds`5l@{Hr#0U zec|Nu{HG{J6Dli9VUHzzNWpkI{SMh^2)$Ns^p^FGoJY_`T$)BXU26@^p@dU!eSBx> z{`Cd;pG(J*PP5q(h5yQo`UE9mmC-;_95v5X81oSu{w#yZFo1-CzwiFXF zP$J_B= zRRXj-R16fRpc(w{)iRCtQ1S-n8Zq?GpsKj#G5%4Z3b(7%zQPP9M6clOudW9hOAcH7 z^7%Eyj`$^jg||MZ%VtdlL~SWz9rU}Ia@Sxoe|uv_)n>FK#HQ=HBZY8j)~RzMIj7pEQ}07Jnz@e4C>{%bxSDGALO2VdUCp*RZ)8L z&!3zBs?1a^s#w}n5to*gsp0e}Ib7DszU`BPCy!2MVqQiQ{2qc3(tE2x_!BZJuFl%P zWU)arm5sDJT?u0NVx??r$!c(CJ=#twnyWX$jfwTC5(~u1pbI3iZ44H#FE>fYd*>f(@E=8i3j$+6 zuQ$qCPt@#|tvdK$DI_b+zU&J<&wn~*y z{xkb1rb3}a(Ho4rLqTRwn5^{BVlt3)*vv-1!=k}LOGo5fz9`8N$>r%6ytHXEAEHcp z3Qdok)C+Y)t9h9(`}FmEB%R5{v(<+uOOH=CxRSn%0x{{$-t5p|i=lESnz`EKoGFwT zb&_6Id{3L9c9>1z0SKomy}461F~G=M4BJYXNVVRWEtPMt!~-r9BMvAT#gIBMy#xL; zb|V$d=S}w`?D6ee`mGMycORprZxJXv3_6u&m@rtVc6*O z7O&nLvA86wM&W-kU8?saPvCj}LsU?O|K4=>HG;hfuu-ov0cQwidWAOAnjP@pY6`gp zO+eJ-;y%%vaQh?KRP4dY+PBwd>{fFr=}m}sv%v%ZeRd6t^2t=%Zuc_~r~Fptbi=B$ zoQ)NMkfP&RamPp#8%{+El{LapbLeb4hBMlol^V-U;@UL)A+fvtrUV1q6ryy8j(!wS+_WrMdO7y=$a z(e0^-M`sVR{>w_@#f3CO0C7|0q@1ujEPBad)_4U?#A^>nV}ezdJ${=(k0Wleo1#qg zKjg=^1HDJfTkAX5Z6=M!u8GN-q}PxPifa{dr(**a%uz-kn@uqJYjy*x{F)9^PQ~O7 z%{F7-T$^Ue=|JS?;&;h^W|}Jh2klCwJ!N;uM7Chw)97dwOgmekbm#IDg||IG!>aG_p+-acbg{1~1%X+~oEq+U+(PPmUDB<=J<`e|5$I z|HFj|Pj;lvreBu-dHyptsrvurxru5I1BhD_e%b!Vlc1O%xXW~|kO?N4Vl}VQ zbxK}lOwVf!Iwt(bu6T`LuLm|EYjMb9lQ1w*6q<@@g~9IEc`6RA+iTbOL`^*8wwXP$ zQ*M{ytDV5J^Bsp-S53I^&04ii_)j+px@}H(z$b}3&hBt>&53EndknFsrl#?&BRbaXR<2y?;!-RGrtK*?eWEg-PF4q zC7l!U(*>eIkI(3oMcYIzK2emOoM||W#(F|b*kqfQF+hV!4mi$_a9%r^>A(bdTF?64tHzubd8nD-6d~6-M&ynaQiG) zd?^Hqi0#pK#ceS(6SkzyW7Apj|IkUjlHHS^ zi&d(%bSmj^x&46v^C^6T(R}Bf>Hl}ef6N}puP{(!3@9sKPL@^`{!8XeHW$lO;J?vi zVQNVicys>09@u81UMyr~w_BZh`N@fb zUof^4=A;##nw+~rx+T$V6x%T)QLM+Ns*koRPtPlhj2xI%1h=qG6puw^$t75cy45o( z<@1Fa!Nj#nDiPzq4C^+%r4!ZHf=aK)=Hf=;Fd6k`Yrc;*b1WOF1-|*`d(MBW-NC$u zIf7av^ba9$Oo73Q`2u3*TUE5 z17WukAA6wVz2*Nzzm@6C;v>aD^wr%ZwNkVKWP|?g9i^75r_+7Ww6<7 z@+%DCvOuzi|L0Y6Os-)l!DjfQtbe^T{?o6K9JYvBM~DS;t6AZ{RpW7(B9RzTNss}L z8KyN|0L1p?|3QI8&oHHe;gBEO5^OaZttC)3Ito#jviRjg^9Mr1q^=kdR$G3HNq=`W z5we?yNo~gF7fgzTl3;YYq@vHTP*H4^E5}-w=9C~A#&G1MU!&RZ+F`BX;$|#3zI&+d zKDq!?9-YAq?FR`WRTPVh39{X0u?nK>_J)Fijk>(m5s1_}5c#?I{p5c+sGA&i5`!g{ z_gNs=i)KV%@JH2y3GG5h;9yY#EEed9WG3Z&(5{M>Sg}F1+YMh$3`VT*b<&Z>;ut&W_uPdJuVu*EP4as z`GTpPac*?IR*Ui0QZ(T*ps3U6f3q?|5kn$6rB+n8*>=uUy|<3HHrotCvZj*Epe~qSj9M*W@o2b z*a1G@L;eSM{XbI^y~t=?ABaBs_}H_jr{APXc#>%#22I5l@}*fx{DtX%Y!7%S3KpN< z9kED~P0PFz?~2{5m0T{#<#)?&V#pqBWSCuo*bDqu9cym^EJZP;LJ4DMVqvoMOz?xn zn!*DUm9&13)9nv$Hibb!-s-!3F3Z&!Z^o_1Z<(@r*e1+=F3BYl7(AJ^oEggOhEbbj3w!}vLOQIbJAv1>dpdO z-mjU57b_tBphLevz-uUA4A7jN|Uq=vAX9Q+fl=z=t0RK(T#s4t& zK|iNWA2hlN`-J?oK9(@+AZ!5iI2}IO&1(4Vl^BTv0P1D_zcsLwhW*bH6|^+yECx@R zs92T;;%&P9LQw~snk9=(T&p|i8hn1bQ)9ls zXD$7s$A)ROx(kL+zN-xl&)Gi1Htk`~o(wu{g56{?3l_qvHMo_SS;S>co2_{PWl(sF z<9+16LtF4^C$axWtJ-kt>bcR?>nn5pB7ZZT+^CrvHBx+8nyejL=$~4jJ$+*N%*oZc zQ8%54G6FJQV-6W?eotoj3-EtF&wm`1Xh^qBA2G`To0SzJ_>UUI7_gX48Og*7)NCtx zVQu$jHN5IR2)x0|NZ z9qX;7$kVH%-+g}J?|=W8v;!pl`0nYgtz+}#SHW4q+?M#~UkLxTHsU`!c`xm&@;_iR z#jLW|X7q~6x+)uc>Gfm_X-D*uBp)B8ugxmXz?b>Y;`?EM#YBPpI1P+iyUty5X}xKW zCKVFBKA*uXUZ3+XwSwDCLo04s%NsM2r5Cmk|G)|bjl%MQ(P+Lh8^BAmSh66VUGL#@ zRExffx4UMKez;5isMm_k1Nj}yeME~S=+OMQUNatT+M{z5PGL|w2lMFX$BtK({QUX% zlmF}{YgN*@O4|{N4@>!Ovpn6&RZ||XV6s?bi$RF_{MlL~Q<&@*bEIEjEVzAT`*&a7 z%O)afG>%E{`sMLoaqzn3s9=j(CAUq>+LOnwHR&-Mw4zCiy&dt(JG0rV(+air<^S6Q zn^Zz;;6Khuqu!}?mt>uk@n|wp958;X-f&|+Fe-bGSGE1Pb}k`gUDj?;NJ3Y;;RKv8{H($0yUbR}-s6wjCDi-Z`(YQVh6SgI;a& zc&WY=jYNYn@yWgGq@XEhMchgx+KJH<8p-64L3p z+?6T$qvJ|w%?tJq`XBzkHL!d9*PA>Ve3>SZ(z0>C><#!F`kRZPZbn=$8wXL-MA(sX z*gAd(@y}kD%@+t`AUOo%ot5~R3I8CeI7oxh6rZQ2m45odfjLLmPcN<;WUScysC}c6 zZE<$lVU_L5YJyMDMI6SU-6|Rt@-uOU`K+6({6A0^ct7<&+r((5SSqK}8$Ldszqgj8 z>G6iKM1p4^*<8{_W~woJXKJN3dnT2vrQDG_*U$d`+XqCp_{5Xr-;d(5j?q|K;drD*I198Iq)Vz)Fru9V9Z@UkN+Mu<+(Bivg{ZFaqlh>m#X zTDi#Qm6h)k2<&wMCcdmG^kSNBOiOAzyGSIF374&hE{(#MF)md2VhV#1!n13<) zUyTuMlv43@k!aqBr%LxXGMK)&g;@~6!&9GFi+4_h1hH99_ZPNerMalTf9~x1SC21c zV?Nl34_R+=zq9=>KP&&${a>xDvj2;^r~Q_s=wRhbiMo*tZkJ#%8Z9YG^~JCymq`%3U5q*Jti}so!$RKBbbARv z^jJ+5*_HMfSe)_%VvOV2sLZCrmH>}Z!<%4eIb9YY=8B`9o2Jjy0fB298r&Y}*^EInY z#Fb4KpmwbAlK%w%M}4qV9&NddaxE?lrY7Ru8GS6Xb)wJysZ`jlgprR%I*ZqzA02i7 zPtL&pM+;6Bb^ou+=_m#bDboH}^%(!`Nx`p{rh*WPVy74ld8eEXSfbGw zAv#8rxsmlVE14|1@E*;I&YWi=C{4#z%g zg6N-2b(rfN6SXq?2Zx<XrZ=lP zmH;d!164zBD@$NzeIu-62F>V(dtbB~@M}433i+Af&?(sS#azQ`QIfhaE~vCWsLp@B zYrKd2$E;0aR$m$0|BK^A0rpcD&vFpp6Y?Tl-uWgy1>d|$x+=W}2Ft7%@|8dywFu#JU%S}AX~rC9u` zXMBZXQE<4HI#H%+2D2YWyIFrU+q~(RFOg;(@R7%3p%cg9p9`9EQP+CGu+k1r zC(N92JCvk7STgY0BiUz(D{BhIXzn}b9_rJUl zroI=n!~XHt#P_@B|1QGush#zxA;2*_enJ*4$n&2WP-<7n7#!TsTomuu4Lw#lN` zV<~OVWcYj){|^H!_6FF7eJ=QKHAmTS*T@C)#WJC!n-fVaE~7Kj%Q{`=oE6htZ;0EZ zTr!x<79ElY;g1c|tV%~E9WJAVlx49Z*1h6`jck)1wj^uUI87=nDAD8?*cg+9icWk}T;}~l&rC!Sa^J4y!pK1P!{!eMEHlrTfrk-?Q z9*|a|5z;x$29`VHejywR=nY1fByV-4t(IA`o6oe(Cnpnp?(6^D+nD)6HQ!LNU}-CX zpk#cI3pP`j#otCDk}p<>INh1apvj&7R5vSGMHUEf&FCUF2k)&&<;v_z&}nsB(>eH0 zzN}m-HWd?QGuo6O;}I>yl@K6;ih?=$}sy1HQ0ovQ0<3DImaw3MwM zdYh3%ks4+?%0^(FF6eV#oRn6}#;6y&TDQ>;?=%hju74ep|4cSF*2Cd3SmJZ~1j;7JC^k?CSjQzzp*+qF@!%4?5Z*GP&xlL=ng@Snc8 z`CtF~TV8AOhhIJ1-drr@_FqkVO@|os|9$3vT;CwJ^JG<9jR{Nx`w4Bqt0&rxbRx-! z*W*+4e<9();ophsQX%I?$++6`ZPj(y6*T$_{+~ngAI}?$zaG0D{=2j?u9#*il_^x& zad~sS1poQotHg|frqS+oSPWsirJRj%k_iI#&#hx+_-`?b@Vw=7bUc31=tJ^88T5B^ zn-KqRa_5ZxI{9+h+n$dr+1#D7|HLp%a1krr6v8wi?9?xnZS(zNwzE>N3@7`A#fj?j z+~i+=^I&20{f5fd5dMXq-V^>4=FR?hF;sz#>iqZRY;5}u)4ko?hRm?eEtJ^wnhYrk zDlu9#@7DjriUWa>WE1t}m2A4q-``q(b^kA#R?>x|hK6X-5mZo)Si+Kl9VIcB9y5Rq z@9_wUbiDW#hb1o#|A=TImUt;;Tdc_^Yue}ek7|t+Ck`Q4aTi#L&};ZF^LVK!>m95} zG%J}@zRLRZ$ET|BztLKR+4ZINRxD_(ko!vB25CMwxVKi*RIJUU&nvc1bA)>uTa z`I)Mdx&hOUsCD+glK?@C^+*6n=c?qQv1E?9!_Cz!&Q(%a~mRnOByaT3_Rx0_*e2uAc)P?+O3$ZQ|Q;MrwiL%n$spm;Pfm!k784;4;5}q z<(lIq;2#sa!Z91$dFdOhW`fMl z4)&VG?BQxq+wQkIOXpI>sjM%)x;+1f?;b2pzPOt9lYQYm;Xhj!*~#TjG-I^|*1r@t zMW81G2K*JYd2}xQ5E%xA+o@kEKX54H|gE#h>U=|GOX|OP8S6F3oET47LUhOk8!F# zb6~+#U?tD#*W(rq~X8AMGkGQxwev{5!vLGc3HBzQYheKAz)`F%OV%bpQsgIs?Dx#_)l|m>tq4$ zvbwdwC4f4t`IcVD#dUj&xS9!y)_xZ2pqO6!Th8r(eMgd z-pWzUMbQ7WPEfXS&6(L0g9xfV?ldQ~wOrhLvSzrlQo!Vc0O*i#zL#mQz<(47nZe49 z0dwcQ<{zs-sR4yn}2p=W>7vF`QKjVKQtq^RiZTL&TYG` zhH_9l(NMCflhBoH{3`z$I;lSVcLsC59I*{f!oN#NcZ?($-q6WG@cw$*Y1N}iNS!Ts zQ=!t#e(?`Vy1Big{F$D6H)CPJ#|s+DtT?l$8ik|oABX?6DY`3Im^Ay#@V^$fH|kXy zJ?s|PzN)_ef(B*FHm%c~Tt$A5?LW$Y>2>m#lb%>2Nd~`@!yx+>1CkXDiI!tF!TS(= zmIkVGrKly^Z6U8E$c@-Yr&Svb`P?3|!0GBK7yK^=w2%`zm4(a3cDTLX4KnOb^cs=UR3O`9 z4x935YPm?ZplGLb$iX$6!#MR~tdBU2Ol^3X$nlE)-th|hALY;De!SRgPM=T#95%?Q zuB6k4|7toT)z54t^LlndFT`-bR(aE5F6R%YhQ%mBGHR3*9skXbKehc+h1*P83GBRb zjTMy$WE?VX9C)t!)%1NhGpWGZ0wdgMSjcA_1+ zG;$j(B7KAr))C0<>VGG51afTFyHi$AkaSy0y3w%AY73;LC}*@T#(T6T+lX2%w= zP$Jxdhw?;bj-+NKIlG+f>fHsldzZpiG7b78sgUeuHg{^2;4-$G(RnGYF<3x;;~UDa zRpqz&JnmpPexe<@Jmq1KM9b?II>U1e>tmllTITB_a$w=ZrjP<=*8 ztOE2uSznY4s9KRgSv(7hgGV4Bu%6`O-uQy@mV(Wm!U z(-98}2QZ;WAQ&?;nmY(A(Nqg5W^-;?A}ECo+B^{wDiJTqq$FpJwggV;jL(pa1sRnR zvH0!f=zLw-mc?*$;lc&f8nx*tkazL&pKEg=6+?N_^RBifVS=MR{DRq=cI^}J%3 zyw#g^$7;o*(JE>d{m(2w=U^7uVB`2gPRk}oMginB>exhsaQOO6JmMVO$L{;_zM)3 zq|Cqq{~KvH$vkK3A#j+RLHYM%m09wI601|shjT?GD;F<)pdE*$0P9>BQ9-AWvXqwE z;pv28-jl|GPD&mdyhG%_^+xmDJIFbP-DbSfRnocKRtTUjKu~wVT{Kznjj~3jlk8SP ztfw>Xtu|iQ1MdNTPxz1R_vq0h63lE}yfd|Q!mhX0!urW-q&}P?nFg;^p!)dGaDUOJ zA-Bh9Pg}Jj%b-NU5Ecu2mkZjQM^6Vqv18r{-V9bEeFQ7CRg5({6JoN+-YEFb>jo%| zAplJqa(g9HgmTz$K@#I|G+rv^*_W|Bt=P{nmZBo0zHzyotc~1wH5jxI}n&lS{z<7iKcbRxkKZY%m+6$TLef$Lr3*^yL{pi@%VQDMQF@jq8g2 zgr50=>i=ZINM2b*uZE+~3-%_!DoIOz05&a|u&)>mu|2e|JXzmJdsT=!$WaxFXIb-w z|HDd%L{%#*%br9l(_SX;CrW@ml1ZoByks`-{^Uflk#U13Dup!lc~kaSKi2X)$O07h zIvKKW-@cuSh1R#P_NG?wvNoee^7&T=Q#d~vwZWPG&hWuI&_!FwWKvR3({Stpj*+1^ ztD8vb0Oz2`d%}N|_NSkIifg6Oo8G>7J5}Tzuexs9-tE;l8=(iM8%75H-7Fk1oSgsI z#=QT;Zc?HI2@5F)G`w|AZxAs;fEPs}cv7D9z+!NrB?>WDF`r3R+e`KQ<0})Hs1i#L z8wpJ(nUY86C)Ab|)qrG<1l?q3JwNmf3qQVZC>`}ComPj=Lr@kmW^TKVWZ>WP ze-uT#U%Ysclypvq*qNB$y6~g?qh4*Z5k&Rv$q$PP$Zts)kl(Ci@IXS+7a%`;Qxd5) z8ho3r6a>1uhSUOSNaLv9{*7n z7-qL_-SYc9F9`OAz#>>JU@+Nzs2#ch9pC1w=!CGc0OvDjli^e*SC3~1H)`d4jDRE} z^QD^D@U#m7((Hv#Mttc^wv$ZXm=ESjOXKq~j`$@xZOtuKU0KnM*CHG9P=%W}Z!Rs) zV?-W5eJz+Mq0{;~S7*@K>I6SI-@$_l)QrfyOWkXbwN|CoK#zuFh@ad|3daQpJ^s}E zSM%R0TAjqUY;R$s^yJ+7`l<7tNS+)T6J_ie`<2L$&ig)XAJ@2?P(!-A6y_0Sc!wi0_FvpbJ?`|opZ@KDTb zw&%bQuRk;~xAwgJMURO5UZ;6a{!++nc4kbw@=F#YuMy={R#?+id1`=_!P+8VE%_&U(e=4!hhp7DBvOnaSPx^XKUTp=e@u_0-bF zXBD^@);2Fbgss6_(dYu;F)k z?WU;T6RgH;qnu@;;A*BEQ5PWxlE6}gm3&iNrcb+dt(XBDfCC=#T@l43aW>yaL0Mkq&jp^woPu}LJ3pR^i z*|(x2`qymK*=zzTf?PUGe%D$aoIe4l0mlfVhQqA)n;Ue@J^hb(46Kj}FV^#dy$P^7 zd(494+ve)ag7^EVaw9e8UcTh^`0Z$f^n-fFVi!?{kfj!iI3 zM{?nS@~&8Dk9CAHXYxxUn!N>!v(8=*hPjeopY-VX&RQyqWo#$m``MBI!pLjZYw0p{ zJ%Q}FmgWomr!;I5#wJy;HwTti2KeKpP$a>4O0RU;9fA}RT!COD?(s*$iJ}zBiJ)o; znoN@4VJ|17N@scN{LOeG$t12&t|c=?PdFnwB9hr1ljN$;Pj>ody&NHg&McbjA<>pJ z>*cUyO}b6I@GF>U;{!pB5XQ;d^ftCH?_B*P*Im_%;gD=j$;M91m|_c%(QeS|Xj4|( zc@bVRQBOubOTJ9Bqs=k~k3rRUNw=zS0j{^JWpTY6}ZALL)! zmA^W@(;ls~cIEFboSQy=d$4jLQ=bY363KX!RU!Hq4aba?(S(iwAXZ<&DAn2IYB4ai zHw2t)`s3ZXB>Zr2C4K7ZT!1W^gaGkq4vWt0wYFa1KgBXVhyOna_NKsk{c)l%l|3mQ z55`X*n#PH`vUUCZjZbfU^yTe`UthZO^wgC{lbg3Qljod;6)`m#DokLyVB7RY3m0!b zyz}Urs}H_dKlh+Ab2d?#<*m(yV!2)|X3Fi_aCK_)#$fYqX8NipwHWs2YjLmL8Dkj* zZxz-WJ3W(Rw^`Ucee>DUh0kfY*8G{)#A0J&xiz~raqQak=Jnd-MmSw#L;y6j2W_#p z9qi4!zQt6|$Ye2`lNc_=kb7FC7adU3<)WZ7q{Mr^@MvEsJ{keR7kgZQPXSQcg z-935r>4n?RF5Y^4{OpbHXekg$5>WtjP}=VDM02gq{LbpRkI&xv{PNw;&)GaGcG5$w+#cIN$rqf{@!T;yyzo1H8 zKoVeI7VP!FM)7gFTr>)TDg5_1y}ayvxHwwam|Hmsqzj07U@nd%&(r}H9h^AwL)tqo~^SB9*vPo#!2AriDXQ*(el( zRFuZSpa7B_D#sMMh@ykc0#;_edbZc$VD$TaTu)J4&*RjK@l+_N+S!9miUlKn7)B-R zE11Tkxs1obf5u!SS1xckIEfy{5xOTo*DLZ%GV=2R6RnA)-8Q^2yW%G?EqEx8qbN8} zQ3ybTQWwT?d!V2XwCs9|ThIkXz0YMM)s#(i5pPM@^JG!N_%DQbpPY>GLxJ4kwY6X1 zKV1MC0|0P_F&{1e&ygYx<3W-6f8*qq{C7aH*$;H>jOYu{K&>K76fS}3gH&@5vnkhPYDMi zKj8eS^nbZE$+F=2rSk6j@As*D!Do*`*ny1NtP9f-Xgli5Pc({Zj)D^4&>Wms`2%$H z0x+S0u*T7N%5voH!54HgUP{i>G-^BYNl!t~;BVo8LL7MTI2e66&#$x#pWMX-oIwok zqD5dS?GCRH80LdH2jIhDep0&t@-vh(FQy&UF8RFt2)`#k?The?Uz9-Y;0FDUVx6I) zHPUtH1=f;SP7TO{$LD7ju4r|mX|toG+$8@M-5;5GuGZ+-m;Wyd_9nop)kHSfMd9!n z9MH^a?*>x705Y)f6HR~^d?Gx;fI17BAOMX~XkbpeZ~=!}6o3FJK&ko-8UqdrMC~9v zi1I-XIrjjhSpkPDxdrIdcH|@l0v9^%EsXy^75{t9QmHw?P=0=~#H;NIT1FBMSOfx4 z3mBm*=m8@*&1dSC!512rM&u_|06zK7H9VT~X$2mtDjapf#ej?Okd~9Q@}B%~VDDa} zf$_DH3&djDN^F4y`oOUi-H%I&F(B5lMsey@pjRRQ@%4pH_HJq zhtgoF*5urm|6KpFU_S{gb)+K5hA@Cktw9E$K$YbDDyl^6P!6!Dx`k`#4$of(=HN!f zp|m=7pg`1XxQjML)uV0riH?RofyN9X)QF;J1@5H_>=A&AIjO=30o3lJ-UxJ9dNhGb zq&NS3_xhiJoGwv3^**i)l64SixyOIC3(%2Kq|^%*p_5VFP*LS7yahK9219;D;Q$w1 zhFh@xK##_PLZ}y7gd0JaPQ)jC20hO3$$u$F)z35^ZOVBbL~larsTzh7ASze#T=3^& zWZ=1APWdYNUsgCUjqZRXZ!SN5c5e`22tWWB0`VwBj+Wf%3A@$-|A~Cy{kgo|jCZ}! z)1p2B<7cU=>>Nj6dL=~Fm|gqwpKIPiFo303A`*(_WmG|f1AM>}SU?ZPLSqgzGp&P2 zaFv5ED*2I9wOF`@Gc*u40y6hfWfT{~H!TPnJXamcDU;i2aoS7OR6LZ%g8ckMfe6Me zFE_+{&3~`9UE{TtEt}vtJ)0$plE9Vc1y&mi1qc-A1nP)Fpt5iS?tvk?PQ_|(zC*|7 zKmz~;cYz5vLM>Rq!Nq)65B>|gC=i`SX?q3oD|ewrD3edVa~BU%n~aOOg&Vny)_FbP zZy`UofBTx4)ZOWy3rrsW-@+7Q`({384}TLhg>-%2~-zZ!kPEwBi>YAw>M z_^-lyP{HWS9Q&e*2H;S!<H2UUaEdzh&BaE9|7uej-Tr_~$PGAZp<1-{{BuY1z&Z<0`yEC)xVZi{sAW01%$;x@BL8jXZD>b{*G zJNynFx3_O)j`+!au|@y$LJ)=jVZ4Ar5@M6*hp^96JsIaMHOAh?mR3wbi^P7hVcNJ> z(tWh4KfE zgXzw&?(xPAqUO6}N_(Y~>&% zvQ>&VyOUx(H>xNvEuCs9Td?uGDP15I3yKblEu}{M63T}|k9@7{X??rb_WfkNj^YLT zV#_uGHHwTpfs*7_vVA5+-f&TgDrqz64!8wyg#j|t&6+)NYASuQX8Gdc;3y*S?qxm@ z|3RBJLi4MO4hsLpuszZ;>z%~-u@$#mDnyI*MlAdBwW+C=vW0|$p*f$4C!J=a5GQDp zut3rmr$`PE)DgM;c44b($-kt}S7B>1IN5X%bZUaKnJDUj-#3$&&yr%qVW9fV-_b>Q zMbI<69jobxk^l2l&B&&bUlKS!UtJEwf2Q7y(M)DlCnO!g>($4;2jcgvgG})hjU^5eBivZk|94J zpeXji*6zVQMzAp^P(;#2+@|@QdA(vF9~9!z9O!@45&GZb_2%r^g{o__;(T~gNlY<5 zeiDHL@gH|9I-kib&e%}E<6|eDCtB{z+Ff4uk1zxfW?zVi?2=wA%h`~PtY!7Mtr`-e z9>HvM+H8W^<{~S$HBd2QDQ7(1d9o#q}xa!bTMeOTRvP=-=u{O#DC}t;5dJ9X(lsl)9FqxpV+!^ z>+YxD+<)?CSMGnYef_if(~k((FU?*mPMoTaP7kuA%zifbp{rwvWEK_xL-uFc54{9C*08SWgw>ekJ;dgMk?5 zXD%6MJ-t0z9jsn1&tDI>w|zcxGrLGtExcb=TR`DAJ5UUTVcYT{h9cP247n;C485P+Aq5dF(sfF@(g zMmT}We+GSqesx9f-BDyeHLs55+hT|4}$NKbde5zr+xLS6_|C z;3T?>sR0M=NaPFw9@6&jL(^1NLJnn#sg~p z3+#kVa`3AfEe7+s7{U|a$9XQ}lkc3NHR&UJmd~ri`#{d`+5h`u3uqYmP#ThhGd$-q zR1N%R{!3p_n}d$Pm0Y0eC{8k1qhx5c58S=*8WtUh|M)5~S70>_K^QjC-Dl36VbeOP zOYZL;ckbM|apMNbph&y4v$I215H?>QKYpBuaiWL`m!-3CFAb!Uf7~u=(_sF+23vN8 zlf&oIrAvTGv^ISK#SZh)?R@f`GXw?$G8?GDoUnXi4(SVOH$lmaaeh@7I1v9;HyxUX zkW};xmM3xb1ZJ~IfxZCje6l}+{}NZvdBU~{zb8ao4FX4T!F-yG;4Yf`1Go8~ZxPl1 zk14n>wm^#Zfcb>eGlpXGtJWqkVn8w?GX%hP#$uWS<`ZzZx2a^TXP(FTohv8h7x`#>cM*1I4ZOoKcYlUA_m9D>dz>LrKX?KHSu2G4$foR^(?mqYKc>+M#Z)vPm{v__-y z#~1#~Nq*u2E_+oWl*}V!hn~lYHl59~TgWblje4c){ZNkXjmkkD5qWe}fr?NaDy8ie6JyHzbBy`_{>}h_hS?dt=UP)m-gfFG6wXCgK z5ZXndQxZDm|M1r?39W)q&)Ui(*+bu3G%y*j2%##?lY*`r<#@YkXF^7Cc1|XNiAUOssha z{LOV-qlUAYw8Z?0v8$(nPn{rz3)y)S(J|Lwg8a~sK)wkeYE z-UqxlgbNTJbf67-?@dsKk|=MwqowXvo7>mSy?4HtnVp@P-PmttV}I*Di6SA01R+rF zcB@rUDisS=S(#byIr*NGCo`uj=82N2n%2hyYG4M(rdcNiJ~7-NAJ^9NZ%IK)P)cVo ztM3n~ofbJHf#NhYzYNTvgwfT*RpZ#Wd3@YDGisZw+UBeFbNgJ?K09ign6OSvnnwqX zm5i=mKu+$o%3M|%pr!d39MFvo8z-mClM_~Mz9b#n^oXrKW*M!UY9&KHp$&Ugu7(^r z%t9DRwwl$}2Mv>xripQj$WNtRek!(^QS11)WqiUsQZ<&-x>!)kn4IId!Jl)aqpEI0f(HQ3}(4rCfD|fydpkK-Mo4`M6noXflIGxT^Dpjl1ip63g z(GUJZA%A%wFjaBXlcr?A?NNFH7FWWi>9@;bW;uJmy*KUZk@k$cXTaN6Pb#PKy7`(Z z6V+-|r(c4$08PFyWL~HkrgQ4NPnLC`KGl5u+)2*UTL~#AbDH_8k%j=$f)P4bGuHFE zk)$f;m1R6{NkK}Gbjm@+WL7g*F^~=xD~2j`rJU6I^w)H5ZFbT%wjY?i9$vo@-8qcz z9mUS=yN9vOo6&`v;mM;wX~AQS7!19AkyCqF9dap@O1VE{9$xd#+z2imN49Q7dE{Io z{JC=wUArEcJ`4@-_~RoEl~wK4_h80)9SXl&8Fef4Ju+w9SX=f?9R(I|g*Put=PetW=`P~Yd0CdF{{CBPa0N>l&i=MYwEQv&7czAeZWMp7q zAQFkVTrRWOtWqgG9#1@xo)`$s<}7NXb7rpe?BVp2lhM0J`CGfGTYG8t`Yjv z*RBrg4py8dy==T>y0z}`So#L?uEV1g_cZVCa6%^6mST1*a;G_5aq6^vXl(4$@uJ?M zQw1|-Z$O(&8wc{Ha@kz1SZdYtI~OZubD>~PXN?^xZ%c=)=JO`99f;_I zX|vI;s}E?a8C^W6!luSX>-_aU*{{DU{SW2=yj(6f8jay_xKgQ1OiYZ9j%G3$uh*+m zso*^Ec)V5r`<$MWZTn_TnW}oy{ib}%P)HjKX>&1SX}cFP=4{FoNIP!L81L_U-8O|( z)v(hiN51Qe)>y%rEm%9G&`h?JHOIsH;;^@#kpFNJc3KqImz+;-xZM#;s%qy&%{x1v zlrrX2%vc%q^;`R1-3>V`0&?}DVQR>zx9ci%Zj)Id!?ah3U8!upOTWtH*Jy?cYVGgu9~v5( zo}Px`1cO1HPN&gmI2jxqY}NlZn~k4jGFix@`r&D4zpk6v4ApBk>Rj1zSIDnT4B6|; zq3e_SZy$vME*13y`Nv}Y%aiDEM!C8X8z@*hCnEjIyTSqO_D-VY@B3e0C43I$^8?@W z6VK>`Z(=Q=0%IL>()^WlEGEV7PQOE@{QJ|m-=)gM)U!jzsR@(XV;I@+TCEDaTit9F zM6K?tEV$#tPP1L6H_I$u6-L3}rmr|^2iRS1q~r5x2G@ORvnG+&!dRjKr9YskOuGxS zuHNo4BfSgP+|a5wn756O8s~>ixTj!un801;9txdtUjGi!*C`iC$rfs z^af!2{r*y^BVZZiZGgip z%B^+ElvcShpi=32>(_(DX(xi#fbs3AvwU_?RFOmg|V?Qv_1GorK9R&u^6hJE9G(-st@M5 zh~G#WYVaTSs3HIB6Xy9vt0iKZ zza4Tqy2U@p)M)y~cD?-z9<4*BwaJYkwN}$RcM>YhyWXlCnnfm^P)Iv-9M-yZiGrS3 z2v0=qi6{rR{3BaF_)nLcz<*!Q=w2XEb<`(KE8}K5@9;|D=It_tkA2&x)c?R#{K-!;=0V-1bLH_K|VpQr-0X)c+`O ziQ8kkLgRrwmMpqm(*H9vGx>ZTh6B9;^YEf>zO{7E`{SRt(HHQSZ{lM)#o~5+AaChX zzkP80n|p=+54pg_@6rP4XpaK_P##5+#FW-sC!l)N2<$i zRo9dZIRgJn_agX_k`n%7YF|t_xF49@_rDeYRH^uer_rZ9)n%_QXRD7GFlq`3jn^($ z{ciX_x*gXIsvcH@NsAN!@=z#*{)gdkopS`?N|(xjc>jXGKmK)^zU%AmpB@CQ zQQPWPM5~s4RQ@A@M4{+WDo=O3k!GWOZ9V4JDu1~jwVM^StafL{0{$H_1=kWWef zA8sbGfB)lIKj8tdj(uO>_jIs-sUN$~J~&p|yRmln_THUivEM!3-Pzg7RVU-2>Yc4Z zt}s}x4A0>N7%#h%vE4`L3QcGJLr-BJp&Xb@@?QA=^r3fPP4NHTQ~iJKwf?7vMchV* zf`Ulo%StElpR4NsSlTc#=X&%k@$HNBohJ!8nn$+%=}DK)qw{Ech~lGPgPAN@bf$)u&J>6$%v{ae~5LzJdQp&~W$WXdsaO>&a-PI(%;>alC7uoexf~ z1uptODSBUDZ@wIzpUmI5RouK)9NozdZf5H1>EcA(V6vA&+Oe8RsU||tJX14IR7}21 zWdCm2iEyF@J1>vi-$K1}pKSGvp2mG62h{xPT(N|jb`)anf? zwMHTD#s4|6E&TsKzKqcAJ5#g#{o8~`t=Ky1$Dgm!D!EN>G#N~0t7iFP= zf8)umF`vrvmpjq0M{{RUadS&KHy>(?e>}KydGG4Zz|Q_~Hd?+uKl|OC)t~OIvA?>z z`rXOOy`%Z<^{Mgku}W=ZrZzlLsrs_<{gV#(??I>mv(8{-*XRrelY#!>yPC;i< zYTZt~SMvt`dwZ!0Bt@eWB49LI4JM1$fY51a6q?19@V|5~Z1(H>i-dUecIN+xHhX>3 z^Xy65XI7U&y5XFuHfSCmH4Rn_#9c@IN=D7Vd>BW7@q39g`^sPc{U3NA{7cA(&)~g; z)#J=TusO%2-}L8vY*Fuwf8vLPZWQ1bADu6*Rx77QoKt&=gE7skZ^AB{_HaG)mnV69 ze|Tr7q}9kYTJALgdk|$XTR;d;p2{cI-tF~)PHl^d>Q`5kVbj$ z`c8auKCwLNKR!%8dzyLnB=hy7^y8cTy9=S(fXnBxxUHs2+OUcLbH?KCw{6~uwdMa* zzFe-LOyrX?BBY#~ZC1IgPvC#MU@?`AuB6^;W57dG{{vIK$xMlOycZ56MBTs@qeTb; z6{J$(d6wgQ#{aW&JC6OE%9#v0nJubn_<#I3S1Y)q|CXLKA#nY zpT2B{zz{)4{J&n)hj>DMr2F3=z3-pGJL4Z<f)QC^W*jUm3dwnaDb;Nos9I?=RQ`g$87m_lz0ivW42eH4O#yqhef91Li7 z?$)e9U$GF;Yjv)q(G#|e-iS>fg)hVZ$hv#uddz5$O$}LVCE@Ccdc|l;!jJ^`wPHXJ z;HPmpQz7q<-}g=79q><$;kpS1gFqd653z^*AO!@f(XoYN|5G+^m*F2)47mj!N|grd zkZQt6)auZ4mcb#nz<*x<{BB62vpl`!Uaq*8_6sA`2%iQdm@GD6-*91z>g7SW0RU+T zg4JlY=^zZ;q3#3!M-BV;zn&)rvHiIO1| zQ8VaRrxqiB33zCXd~8fiajDrYYWov!SH(X}9>7Cy@aJId;^agMh*%5JU#``D8lB%- zMFj2t{B4BzhuMS3XvGE`*iLCrgS|_-QF;UpW3}5#CClP|d9Iv&ey3)2#a`XC26T$8 ztwbcKgO{RCO%^L?Z+(k&PEu%HfUkl-Yjj$TT;RX!_=hI`6Ak=7+4W)xo_h;Wc`N>D zl^WoOlBt^Dm(tNd;8doOHS_EKuM7Tvbb`TRqaZ?Vq`f5*R2_Q5Xfk;{>dgm5OTar& z@~YIvV9M{YI%bc-fA%u`53jiwuZK+z+5EJ1qNGhnRE)u-L=b+JQcNEq4Sqk9*Os^b z<4&)He?l~a!615`O$tTk1XK5YI|COMl}57#fW4s{&yt`m5Z1KLAP}gQ zy&L}HnTGz~@oKM*e`HX!L~wqU>f$ikhF{ZAUDRcl+#0F>_X7SAUhofDx`=;x9f|Wh zw9)TVEZqy4{Q5**tua`9@tEI{o4lTz-Rr*$|DzkegOj4)5uF~+PF4fuj17m6!_4F@ zjVVx+4f4~N0_Cha|MCBKiGL^!<4}lFgXhqzMeH$602}W8kLTODtafN+Xlv+ABLjs} z>AO3rsg!r?V0diE4=4bzR&RpNqRK9$(1SCom{bg}cyCM^?%xfp%{so`cNa!{3-bZS zLZS|#I?!X3(pXi0;!l6zRN%CLO1xw)Fn6*_YRx~ z@&n1IZ;Ku-B;r%%8+>48V_f4_rB4CVoAaPs^Yp+!p73uT42=!>bXwdX2HcmxxNY7T zHI_-rEAx(>N#pLW=Xk@rHLhP=jSUY&m&FsX3k*OsY%6h+l7e+Zp20uHG{i%)f3L)U zuzyz$BGvK0%>(DnO*g|Wrz@txtRWH5*i0fS0EBeFKZYtM40#Y4Xt!bL(8*Dr*Tkj_ zT8F%C`~w6I{Nv{V|EHD*f+s}(8pk<0GT7vEkI%NU>bZ1^t*j!uxqqx3nwGr?~c3{Nu?1X4tu)4nIGzM+#^H(7>O- z&ZVMw3+6UKM3Mjkdxkxd6GSqb%N2^nlikEz*15Es9;w*PX4tJ+E?gp#QafLVc=i%m zRdL#~GG!T?w%ytHG0u1MAd!w6@V&4h?6?Qfu@_5+Of`I=ddZ-^D*h$^|JqSxbt67r zwtTe{{P!pQe}9&Ec^ulBcMQaJj16a+wYK<&a!?|HPoo7beUA1w3km*dm8wg|@R-Kn zR=3B$Qe`|f@XzosS^`mBqUmfvo8?>jX|3fb8izn`lnre1GQXA0Q?fB~T$joKgL$gH+`n;G1 z#1Y9EZfv+^M#JV_%*Lz-4Z6g8kszJHeBrzF2-{Hf90|iya3Q(ye|E3`kx1S?KId6p z4qIbpuTLE?_Qvh9N?0+G(<}{|N=Y5=!M6BEHqrSyBVBUFcD(MixTKHcc5uZUuB(k6 zw04{LH(}sdY!u|2f)H&0y~7RbMrY6k{EF`Nzx4V*Ogl7gzj-He|0K3^Gd{7OOwT9v z(SX$)jCqo!Ov+;?^wXr*>)@_vGkQpg1O`s%H@@tJ3cu_de#q+`@K0?x91eho&L@Xt zm=gfW^$(eY3uz%}yiTI`6OB*`NEcj73L-*v&=z2Ea}PDf_^-zJ7tQQmq?l6Lg$`}c ze5CgX{1**{DRXVeW_7COX3VLIXL=*3q*-nhi_)R|p+MquNSF}im3G*Xun)AWI>HWQAq2^O77>{q>o3U%veQohiyqxIAgPaJT&xI;G zyFhpc#RvcKDScc0Pf?H~lhr1)1o;uIYhR-|69uHW9Pk^MEM~V;xpWe`Qv4@FZ+u>L zE^DZiO@%ytLprBN8O&Nu8ueI#$?J4hn>(2jCL}%+JcoQ}Jm+XL^cx?S&kDc&1giC{ zw#5G(@J|lGJh{c~gA@?14ER5)kdinx5Q#+asiGWE_*|h|4KEWJ;Do;BbBdzj|Br4B zY9_Y=xtN>|+m7Oiev|hz5y8A8o6=it@=QW8y&kUCos#mGYDTB0hsfHPs*(nfaL{HO zEs!Uy0G&Y?0{B0Dn(p<#lsH}^w?mzb8FEQeE@c`>nbHYkvgAA%(?7rIvzg`KpZMo< z{(qHP2KC~l67`ajdVOq21lZ+EVfYWPSyJ;howE)92jYk@`kz)zbbC?VdOZO_l(CVT z5CQ63Z!p*`s<~sY$)``2h<|ts|9_p6(^U8fSmHfSm%23TCK6+|Zl+LSPoGJrB=KM{ zDCvJ1ca$49b40Tt3pmwLZWN^BcRcsPcmMM;{6p^%NdyzjqxLyLJU<@zk$OBcp->1b z1BxYSct{uepDS=Mv^`k7SWXH5+rzriRaY*i(CIqGR5uJ*?LbaHw(cV?z-Lq#WvcbP zc;t-yOX&kMI=KYHX*g1$3Jq^z17r>5D>-3IW?j&ux+?yqR|q}Z*a?gpDp_Z@!W)B{ zpPz@l4$)zH4*xEf5}Tf$S;71-(f*)?OzI56H#N5H7+7KaW1IMY-U@x9|BFHael4qLlp>nps{Y;0X&3;M9 ziw50d>dtfcX95$m)u=ZzFs*&*04=nK+>&uL$<%>2-{}8s%m2YYg~AKU{Rk96K!^-> zwfrnbk<|M7dRhs zyQoRNFVI5cp=Krh&qatgf1&`v0~#1%X+H8{Puk)iRtDzD419wVa)PLS*!N1QA!yjM zupL+yrVwu-d=6g|;)WD-fPFJF3HpD(i)~KYYx5QoxNKk%?K}J#MW@lK#%k8xy`Ua zR964-Rg8G-i}<&iWi|&ITQ6FSb{iNLLaKwwCRbC7ZQZDFVF@Gw0x`Ud&uz2HG0M2T(` zZZ1$EY)=CYdV+1Fe2M=I2Ax%}+FT3`c(48E^W?kD|L|7)GyaR|DQtEk78tT+ z_w@>|6b&0*UnqBD{L5R$KT;v6-7|4Us_?98B;y+J3;g#A)jcugViM16#G%(+jsHt^ zg#Kqp_sFJCp;gaLnVI|w{&P~1`?EU(@vw7ZDD?0~wm)h(CvD(?BDa+{Q zjAy;B0(m&?Y(~Y(w5J%5y(j+X4x=j-HN$W&@}ISPL9I$n*dF1iqCl?i>vXB!E3k7+BIeU>mYY_Tagj-|f$H z_~+9DNMJ8%=DE4K58lbkDZKqed^^}XNPYKezgbv%PXGM#0QetS^@WSpi};tx z35O7!wvvm3k5aGMzk65+$80yZQg?5qtY+mo{5KPCo{(qJ1Q;!%2@sn=As%ZYdlx61 z)rk7a_&);)ooLvIj-mrg{8{^-XZ~HU~9W{3P+BfkJIco?e!5+dipdb?d zi|c-kP0W9Sr7P3)Y}||vu67##E(%C|tJy-^*TnzKd`NAT6%ql9Nn`6`{5xwc8CfI4 zr9|zsdpt}%r%04-cB6czDn`Mu1_z6AbdP^ZgxLiN#~F_PM+#^Ns0!#16a}CnAmm)s z%)4&q@Q?LG*V4+$3VN6$t-y!%$D&jvPd-wN*$eCee=rz)XX82<(*4sf#hDpzeLZ*) z|7b*%BkB>HNHrwk|EH%Vn@j)oNq&1XLQH~Cd2icDfxcIS0F^7<%Y)2jyg1<+?l=DD zSLrVKk6P8|uqlZ(rQKo25t>aJvo+WLnC|Oaeg?lc`M-q!g_|z5obTMQzuwFz3ZMMo z7sW!6vIPF|lg(ZC53UC2!DG~pOV5y=-rb|v@Omfw^Eip<%~r-rfGA1-&n$#=PS!H; zJ8ULvM2vswJpY5!uda;P_pV27A15{sqf_gF{$YpGq6!#$2D4gLpJ5aXtI0IyoPS%D zzy2NAfEI89Y(PE@0lj9Jjr_^9IgsafmV$Hm2lkL3)IQpHV`BqwzRtvZpOHy&PIHEZ zD@id$!2UgRt-Q+%(h3JMgdw7#f2kNHD*~{D#=-<$N-@SqBl=a^SMl4fLJyDvoHOWud@{5P5FxO{pI5RO zTiC}B;I=Sd!CaxoClsy6Ce$lM0ly}_enOFu>9@M)$wuL_*OLZ zCjTL2C<};{%vk9y;2--J{$sT$e|TJ=`-w1yE;o#5obXJhFWoQj@6)c#hQR;-{j&5{ z{PWpy<<_U&OH(0#%;vW0Sv13~>C3p~qbc>uh^dm&x5hs(|CK#zoZ2^Q8P?9iPHZi} zfv2PV30G?>e|`u5jNf0q6WH92y7lt7Q57?&oEqh`XDJ5fUL2Ay6+}A1$PlFl1(JjR zP*4m0O(!=%x@^BLpVsA~YR0&+oCiyUp!^9> zdRO?LW|q&26wpn8@h43CKpObR zlhpVU^f#gZwd)Jfk)-8+e_v%P(YKEOV*KygVPt(VUN4xx+9v)j@z2lW-`x)FEIJAa zozu#+B(LLtmRBs+uzqsasMo3#bQ%Hv*ZA*Y4GBCpG)aQ2oNW^R*H41CZY7*r1^AB| zlwPCuhwn22|8H|GU_>)O4&N8!JDd3L_nF-;yUx?sf&WPOuWz^?K1dn0%6h-Klrv0E$8@fOQNP;!g<1l@dFLeXp&vWgk!-~L<~9x|T8KbS|Gfqx9T)}&xN zqob~!gIKv@+uDz*l(+#~fA4gT1r6T-a>BuJO~SusV<|BhH~#kzLovVZt@x+OSUrdg z4h4?(oHrKT>*LnNVKd7frNSDPdc=5djeiFJmY@dw)2YRSZ{q)&Qmv+wT7)sTYy$tv zUiAOToqm_-R$>KJS<<5a`Bi3Q{Vn{5^zopAe@uWT|3Ux9JqDN4s&Og25&6)5`}yA* z^>MAf;bHtc(@jqnY{M19Kupb?*p$nn??dx5*pu1uVzf@@SC&9q@&)MiKpiux< z*vQ@M)pPjgK~TE9yo@2hk&fx^lWO@6ZBEG>eF~WHG+U(nLHZPM)|IpFzy7g2R5QGR zf6+W+}+ zxIbj<2LEFGOTqKZ*{0sOu`Bjs<29vSxJpPex!f4FaR%%C< zC=R(ATXt=31c%1m6XRZD?P{a0yT_5jm{=U4)7A)$W6BFW2AKGaf0y`A%&m9WO=^eA z9qN56{ts^?m~M2sY-2UaY*Z~R`)FeMRIL~VEQSDoQ2a~9!B&M)U>DOOz^EZb_=~zU zD$n7cW(Bv>($W&-1o8u2!4T+FXTJb(G6SgY#K;UCMl z5#@fq+Zu#0P5MC5GC6F|<}J{nD{X{E(54V%$x~VE`KkROBToOGjFF)_kPJ@c^Leh_>5sQ=mH z_qUz@Q_}yK*f(zVD>S_m zdFxQwkd3MRE-~j1>kOJ%kNa#D_$%q0PT6hw4J3ehls`wL05cPbfO53l(*E=u{<#T= zV*e6~1Mflf|Nf`6K1ls|pG@8IgcSO8?an)m+s=R&otJ%@kctvB0RZA0mC zzEqJFwcP4*&g|)Kor~7@VoiX5DcL6eSu79yXA_RM;-5#B_QIKh=fxu*`k%$A@zT%= zzzv9|ruV9K{s-`H@W{Zw)p8F1Ju-!Y(ox3Nyfq8R!Z>s!rjmwS#yF5QCi|Ilo{Db_ z@4Wax%N0xs0wItrT9ViJcWNyrt%~uKKJAAQRE$=XKV~M>8e4!+inns?i}(kbJPS&t$Q*DB#d?3zCgC5F zMz;bK>x1AQ2Vkw>`_oSYm6B$BE7G)og|CvS(3s_>-BjiwrUtR8IN~a7Q;!`lHC#Y8 zLgToriGLPwg#QdAT|eAr{g+PqU*i8m!-2yc$Mpr*_LOa7!nQbUVf|m$j)Wwm=a~!W z)c?6+(YyOD;-8iP@^7-(&yoLT#v84G2)~5zuycZB2^Iaejj!Am|7N2a{M)=T_|Ig! z`JYLgeRSRZ{7Kr?@c$I!hFa0cJ1C zp?8T^0LZ=m`NG*n{BsMMpRgbJ51JpW!q{n3E0J&k z@&7EvNAl)po5KIY{>%Ny$+mZ5$Q<+I=I?FHeL(dVRiYv-Ts0rzAgT-3Yo)-p@MA_qPthx+y2_=Vh`SR4TGl| z(ekhHpK)FL?;i%i|Eptf2mJHZA?Ksh?!~E4FkyFD4EjD+=u)_KihMvZQqV38n(6;# zc?c=~S;GJ1jsg5DWN-L?7_>q*M6ANqMYux&!GELO6!>Szg=GImoveSS#QwFo6~i6z z?~7=M#vC{9L?1m!9^8p7?u7=IJf417o_rvp%=c^PBEcO51^S@5Zc`xG9?Bo|;>IC} zj#l6@bGR-3Ns(3q2?F^D0{&IJtTZe1xV~2L*(U2(xpW!+iB*6e z5Z`{4#Jajy;9ux}MvI)`e<>;O|EgBZcwZfRI^drdAa|kD{@*0yAMYJxj(1b*8wr2N z5_9+5-*soAI=tm?#Xo*6@Xv^b4~r!9g2Wri=>_~NEpFxTVW@-t$KC35Dp9vA?~_Uy z;t73-1;oO7YusE2E9xbEDx_w_1UCN1#y?d}D*y{ZZxbm2hq=s+a~b|g0fmo24f08W zFgy~$tR|gz!>u%w0Dt%vS8~9hB z$N%?Lf&W|X&iLoG*r9f-Djd`$q6V=?*!8t3uhMAv@o{jfVs=?&gN^Zz4gD`e|6~6O z{m*t*Ti_o@J=V?p)!+GAAnt(>2qH#K@joy6fARka{qKA`{#%kGqhiPO7^qmYb!R!E zSQs_s6I!Amq*)(ZZvI%O0E|vCtXEVntw37>(*gfv3zmY~M+9)I(yf3Gla2<&p|efV zwmdW(GyynN@vkCHxPTB(gtYC=U0#&z-#?zSe;L88R15rzF@0U8)a`A^6!@oy^qui9 zy@|(>eIfpsD81K~52OBs3b~J?ZXS6d|a_PW2t0xEN#zfk{|rLG~d{I zLPdcz(91{`1OX|y=ymUme^NkiBLb*v+5#kqbbv0MSx~IjcXe|P`NyW_aZZo|+5)ol z4(T-Cg?V1f`~LKE9{=ZS|Bp0-!NZP z=K%jhXZSbzl=Od@jZB_-rvDp)^HK2M=>H|74@k;8UD!(2to5pWMh1MoVMUx4m;ytx*6C**RflP zG6JrM0~n?uAQBJz;#`6q{-g<@9T9!i#Ui~7*ybe2kyhs2IF<1K4|xClhhnXw6Y+0S z{Le?ke-H3)Or9*d%})KF690b>{L?M9aWmeZbN&6t=+V5h760ZyqyN{?=>O%F60Nv) z?PKsC(V{7pv~Kiq;G$>z3;N&S(Z}67tBFam)drh#a5KPo_I6I?_MaX67pI)l>pt+m zzhE00(8YWz`hwrv@@xOPwpXQYtY9#R2NF-_Ieps={z;ankR7x){bHzY(nOjdGuRiL zUuIli%n!tg9y+pt2p~IH=p=|)LD-7|u~?P0W#8bE`>p-R%`(zXvIO4vinkC~?#@}UYgp{yQ|f8q$P9h!v?JSxD%WS`)HF zK}s2yi2oTfw&I`uS@6#{Yboeif#2hQ=FCU=(*!gW@tgV||Bt}G@c&HDUTyt%l;OsW zcs%R++YiyhIVW@GpYb27Eux>=H|f=^N7nZm|BcW-3dqp5_bAQzN2yGrJMb$p;$P^0 z;(z8tdbcj+)B9XngHCTZD@&8^%9NAnI4ZWA9s9RBY_HC^t5N0pq@|qFhCE8$r{e$3 z5~6a6>c<==o&n&ss_X9YPij;V4FPflT#4btvH<!VM(he=ekT>2g7RB%rq#j4qopRU#&dtm_2RZCS9aBBncH8kQFpsfZUilU>yKZB7Kg1){GYi-|8Hab@7xWC z2FPfIw?S$GC=`;2fHx)ajeNfAAEZg^#$b9%D&c>6E~Ig43lT#qX0n^DKD$EY&^QCS z!kB$<(KWK=o!s+HANXeu-`Kgr9OJ8 zmJm#yl6*nrlgA}FqM_k&UesEabLW|;@o#@BPfj`n{>A(c+>A#NqHYm^$~4toZ|Gr` zPl*Jz%umR~p69|;7+@~QznB;LG|eXdb6yeuQ^~ql$F0u~U97p6E!kF>=lLkQdKBxt zuN*}e_9CIA#jfjncI;*4JGbr3|KGs>;;~1=_+NtvWfb^t{726h0xp;s?Z=1MuxP~K zFOwMmPI^uJs~p;Dzp0$Fxg2&}_f~n2$*JwH+6E?_#U*!P-Ba51mbc#6xx)40vO7QJ zObyyhKE@FD<|3+eRKs!@ECfcR--pTcRSHfY?&jtuc;g5xn~%OT{z(A<15Ug{1WUt( zXbWfpfb(cYQs4hJW#khA9&WkB5MEUDw1ydt91o&E|5di)CgyeWUdd0oABS zu`beSicS3I{c_?zt668EUw1fb%f(d8vz5v@iWPUI=IOi_%C1=2?$9f%Y4yg8&F@k+ z;~!Z6j`hD*PyAXXoo=UX*;y0Nu*6MQ6L6`<+8)K|epdYuk^jQcO4|qjNB=AB+L4T9 ztm=*i9RZgr=2c|;ivFM?8c_t}%5Xw;*&d3kVo_x>sK^8q{eC4gp9I`WhnZkk5#!f3 z4SMs2-^9n z)dm4)5Gn)*A>uZg0~i$Yg69?yAXow+;+%^#G3UD8nE&uEKM%~#`bJm%t@xK*8Df=_ zt~cfwPh~9=^PY6pJUUIt>uco-Di~`^n}XtPrq{%ODWn4bm5i8tx|-5&&e|T|@;tlm ze|+ML+Hur1AUWj> z%>rL?0@~qO3CEvt^Z)C|Q9FAv-ihv5#W5c0zcIk}&Z!GoKV!HqSVYr;K@Nr`S zQzhpNxNNl;Q#$Bg9=U(K9bo@@-*q@`n8;{G`_-Exh9_ILXFK+z8SUPrYIoAOF>XzV zRSK2fs_zU z5hAEvQ~C45Yy4X^vlZ9+OemkUu|iGIqs+#&g98BDI94(+r7h#UrU#AelU2i1%{Vh? zny!hT>P5q7(ZHPp2^POr5&TSaH}ymC=ci`>je<(}2Wj9RMcOR<2gH9fO->+1yakYB zBcsECJ(vf#2nac$b$}Y}?(QNW*u0P&Jg96iB_slxL<>d3!JnMaW+4}(2J$7bVr+tB zH764N4u|vQQ}5cGueM-K44Cl$NEksBPsb{r(e>8sT|DQb;A7m|PL!tH``d|;MKLr| z!au9#;Yxz}%UYB_DM&GLwUdm&s(TMXJ>m)#Hx1(T_)%^5PA4C#n6;M7^n2F^WJtr#Y$ z(7PO_m{0C9Yb_Q}BAE#XBR-$s<92!7_E^{x4mzVDr&^^j=+ud*o1Ocinl7g)9(6~< zF1_x`aRsf#zw8{H&wM_>68=w*Rr9uwg#Tvxv^c17SUn)es@>VyK^%ZOYM(ETJt9$k z1cZ$of^8@eQiC~6*D$aL|9oyf6C2F|Mlp}WkziRgCG}RhQ zPC^_S=*hDyo&INp2w`c@Zx4h^)@R29L-S1bF7VH*QM{UcKH*as^pQ)G)rUpMbgQ(P~sadU#0=5LAkYT)TxvY74 z(fiF;sb7A|{_*GBvlsmnbM9!0DXg1$KRuC3$IOS)^oh-%oA~cFsWv9UyNlsc%4oM) zYNLhyqlM$U>(}=e2WzEFzi%KDs+CgZLMopPj}I3@;pF5ICHARD?f3 zLQuI#K{Mr#jsND0(CXOTI5tt^SOhdf$O7CR_bEgOR1;qZz2}6iqTboCCJ6Caq(Gl6^IxsZ1jYP6FNzG3eSBv=9QTe5C0~5K`SfI= zKA75CsiE!;4<=_Pa)nIj>jz8xG&GtC#l5kp`(S@!ay0Ymyck7a#|TMupo zoxKMOjwb%yE<{ywSX>RI-H?_x_DYB48+bjU}&M z6jQ?*8*2tNu96G}Ec-=?073P-_m{6qMxE*p&&#z2{s}w4=T90U;O)ZJz`uHFlKI~( z|MhjwYWDo}{hr38y>)ZO?KIJ{M}kgT1a#f^FSi-l_5A5tE*(I>-8)%`hh6=d;7GN9 zY$)}IZ?**f1CHm0kk!P5NJc&W>%pIsZ?OSSS|eL$bn4_U0zxe`+q&r=5 z7bO(B)rIou@!wh=1QTII?X!_d2tVRLR;3MbAj61lb3-&DkqBHC|Lu^TM3z5d$D_A#7OwHBlsGhPH*Vz#FTvZ%*HDKXCcd^d2H>B3wQ=iYacZVOi}32(opL_H zk>&{@zPUSgW2X+`@p-J^|K~374??l%5oQqE6kbFC%p;x@kRiz`xTa9%y2&l$-fqyT zlf_NSm`Q2ZXuf@sW^#t+{BIP88sJW(TX>Kz6i&kbtlN1X59n7MN}d24t4n?D>SW1gq4_UGotD*4FEudY*Sl)w+qk8)}M zFE4J!s{J&AFMhesaegxY%ZqL42>!o&vN}{raGa`VFIM&YTmfScW>`0vfipwJQKZcT z|FQUQWGC$@hD+D|O@oJrBYVxfB`a7o0cc1l0oZ^iG}`($Gl$^$&lhb62gy{w)1%WJ>?aCi7@RB*L|1*&pgxy7 zG5^2asAT^CQa}#=4c5T7-|W{iv9sMUyNCU5PH zA8n2LJ=T!lTPsHY`0_xbW=3e|_dnh0lPPZ8zkZSbNDPHmOo*`FAobFU;t8?np^hjc z;1^9puWE2fJ-F;-z7exQ9<-=cy1whT;vb>dkpjMbplV&3toqzBr7?XcD1u%}*wnr8M6-ZzdB#W zJj5`p52e0)vCZ{oPgV<=V1Lwo|6~DcHPThE8ySjk&P^~ri@~B$+10ScL$QU4ma|d=<-Yzma@AuHZz_(zB!}Q zs?Ov8)tu^Zt+g4Z^dIsy)_@0SRJ@S`#>qBJ$iDSY_W ztZ%Zs6%Aw@24|nep()H*i{nf!c&X+mSv0N1YPK2VyQ_`$zn-T84mExroImAU`0Ho% zZj9+I`Uf{>@%-=aPw=@1l7X)uF1`F_t2UI1CVcUz=kCFV(_z|}pMHF24n|R`X2&Lr z3(E_ch>Onw|GKhc-yQ zL?RQQK&@d9&163_{Nv&S6-WRw&>*)hBG4!^DqRYV6S}goL9OFq{rX-`5U?2<$>dUjiQ)Y1gW0bitiO1)^22vKz+j}FwOS0) z{3n;;pAzA;5zBRH#d2Mz1#Gkeq8D4%3;tu1`ZoA)^aRq?#U!`V6n1BF^F|{AyJX5; z7O9y#_V<~!tDE+fy15WnWmDm~i2_n=)N6bpC#@LXt&OD$_`iEJiU0HFjRl-thX=F6 zBl%Fwd;8W>B;X)>_`Al3Qyg*m(jhoISE5hE<+Bc#GdFjqhY6gr86yGj*hFq=rbZo} z`(*F%Cn^G+kGDS*3eic#37xQQwb^Hhf3V#)Vxdu!Vu~k%=bQK^9BY0qFfimhn6)`v zs?AkLX4q65!{<*FaGSb^L$RO?ei#-`5BXoO{|^4S8=j9RABIq1K^PYcT%3|9x_JCv z8&WV-PQZvzhe`42C{KYbWr7#gosibbnY*QaWn zp)@_$m}43IM<;Zb;lHueor!J(sRcaO1Rzk9&S)`tJ&MJXaG&KA|J5`>5}IlucKvYb z#rM1S9mTI55qc09*EGge%jsy@5B z`sC3vjmWK&h5h|;v>8(%$Lo1ZUZQ_~c-sr0K{Li0m)2(~10jBX}E1%kmK7u%-s z`Qe|>3PW!A_h889IXrklbu)O1&QqFyDjV{@u@+O?OpkYbp{V9?+deR6&yQ$us5d^v zxz8ajvu=W7(Ph9ef#&+}68_s(a`zWo=YMXCf7qP>zgV$d-Q+M$3=8}-1X9llgpfP&6~`hjE9(Rh zhVp(JUmWn`^C5DE&QqiShhbahBfaM{!#^%S(aEJ{C1|m9HD#1Y&RGL5^riUtOdco` z{XWQtAph%$q`mj6qhN8^e7tYZPJ8mB+(l1Q6CIq0oiwp5Xk0h}X`dMXWFDgiUWfEu z6m1GihM8TkG_L{w+Dq`yZSX_M3VyS8PCLa&T%nXl!rBY?r$4+|ArgG9q5n^gra0o% zU0EG0SNl1Jd{uqSeoBbuMk8o*C?Qip^;GyH3`!uX{Dm&@K5Wh8Jf zBtaax0sI3b3IC&`&e^5N?v&xtzJGDWd2-#6pAVGA4MsEUrM1x%;D;MXmNhB;qwr7L zhHxU|a)k;m)F{{K7smd@$yr{|3j90eZS_C5Vl_jbnChyzmLFHB5Nd`3A|2R1UE-er z58~E1;tpC{8!8WkIfneN11vjW?*slsCD6T#pOdf|*bd-F3ZzlAt@U&9jh`R>p$E9f z1wB@4gqItg*rK$k4SEL{IYKkRb+KB|a;U%Td3DpfyX-tV^4`DUEG~p<(>9Y?EF9TT z`$A2U6n{ee8xM+R`qSf|mkRzP+BYNP5!f+9)H)sgU!pkx#G*t!l?7d7OsjJ$F2g_R z0CtwTqbfM3ib#QUkgP_}8eZaSUE&|8j}0c-p)`qf5TlqT0BS_CpK>E$fW9qyctJkO zAKHWSM;am0IUAoD{vpNqM&P$_9D~tHE6;@X=rukoJ^{eb27aVD%ps>vn`&!6F4O7% z`b~7aY`S+6xPQ}CTnvvaxS3)TLjeT~u6VrBtPl=?)SPnEe+d2?UlYLgQB2^9GZQsV zF>wcp76HRY-B(*OM#eOH7c-5@&8_~=mPl~n2-OQmC`)NzN}w*NGzt8?qI>*PsgQhj zoCW;jgnkn$xijiM;I9Zi42NiWz>kv$w-5bXfS(TEZr<{l;a_s`V#lE;B||`(&=^(8 z=N3i*VQpfps~E{k*h4yJUfW9)qJ4jT5s&!PPacNu-w^m8Tk>f%YGY${QB)(IMht3@ z(gZ(s`;Wta^TP^3z!0G_<@ON5<4;pe?lLVzkV!0RPQ`icT@9MbPUF z6MOE|yiMoo#D92FqEe`S1OYjEoz_+Kf9q49_#6!{S-aAl2~vauSE!2abMkrPzgZ6` ziqjT>iTrd1G^SD|XDagL%}6lo`j&y}`(8Zf&mOty=T%C){K2bFo+*|5ccT9< zer7%~^PDWL#4G)>zdVjJ_Xw-Aox^`;GwuuiFV^Zuy@GpR>ewZuGZYFD$&by86cFKm zE~>fvZ2WHVkE?Ke+&eTGy18ik_D(3ktAa( zr!31WR!7XV_8{zXz8?S8`Qswj*uPT;_z9B;ekso2>ge%v$w+vlV)knwm4!c^=nzZ z`eOXsB?-LyWgM8eF+n@iU_x@}$%@5d==|2npx!<83s3$I@z2LK8WbD5F|)_~%aicU zWhb6bD&|*$e^!VnCN(Q#rkQz*Ic%J{8Fbi{7pHE!@Fm3s3I8M8-pq_g=a8waazjw9 z)bvgrhpMyZ=f7&3f^?B|LLu$=^`Kg>o?o`j4I1+a4O91jRQyX*1=5)-p`AaadBu?h zqI$aT((O>Li$DDi@vo3yi-q*tM~RTJ_wO&`6J?V$Be#VAds6(vvLAN&>HVLWA32ESo=&u_CSy2L+uhW`w&xYKo)#UayMWLCe*Xy_Z;4^+pobuNDY_E$(J z5YUWn`;{8i!klHQV#q`_VrrQS@z3p_zv5Ncjuf}U6b;z9OnrmSXWR;cKny2>aK-el zaQkl^|M7t4=WnB1L)zJcDC6I|Y2s0CkpIQq=;EOEFE6A0L9v)M8~A_uFm&&Rb8tRX zUw%FR?Pawo`Tq|$Q+e;T|9qYrh<$*dNAS;>;&encQ8tX%jT)D}vg|RN2}pjO3vzpI zZ~g{u>C~=GJNqkkmrce}Vor||+zzgI%Y!W2+PqPmoJ&Ni1nCaa@pv`0MX%PVT$nJA z=5_rcmDMEsuv7O-JRidrPbTvd60|8TDo5Nt8%8dHZ6CzQeWTcK{_$JKf7GY`!&i~r z5$*hTqz?WSblP^>v2*3J-q{uZz>xRRk?X5le&8WhiPb2>7Pxch9GnUcFL=R2=cH&y z82_@nn=JZ!{_RCF6ZrsY3d6*1ma$F{OCZ&&dV@uq8FLs6BD@lI!+4#y>U5YDvxCNRS`+ap=^vDz zTNCO{EOq}E$VbUbBXgOV0S^!U9PC^?oalV6)5-e*joc0y`>o@jeyeZq2KMXv(HUQ@ zU{$MFUW#3D+0HmzlR-JTDW>m!@i?$OZD+{|seVj)+2dW$oo#!%;4aslnztpz4Su(J zekD>1$^Y^+7Wa1*aNFTq@DmEwZ0HNR6;PnzoYt!B)4R0Ux^r~XH@OpB-eD5&@YYu3 z+`h3HS=kNG?1sj-{iSJ_J)|eTFXUFR*kahL3OeN)x7L|56&F3jJN~)7(CTh@bMt&6 zq`AHkUfK>#Yz2nae2JQ!)xLbXp5dG>6IJ&qJVC#+I0%W@SykBjdX`}8b4*$7o&EMez~G0e9mj{nqIg45{-)hOt0;O z0;?c9-W|`7uYZV6j-$4$ZZ&M;Y>{ zB0g2vt*|J1v>t7|Vk?e2EA#HsO8a!OE1trlJ3sA8583T;lU=QdyJXp@I_y=@N}?!4 zEA$>4DjljX^vE z(^V7n;60#m`X~TnibR?Kk6jMsNCegSn7WYB6pFh1fWDkI)MAFgxbfUxiyJE$L$P2e zmGz~ZwwO?}7yyZ1L@~}sd3aK&)bvCETmUYFvzADl=p9pD^IIrMEg@P`h*5sn< z{(vgvQo5`%lfI9!auCAz*}y-Zd{{j`d~`ngALc{!CjDHWhV5L;{BIrqN_nrxuBfK< zHy2!gI1c~I!}z~FPITHICI0vzdT+-!Rx?MuswVlNW*EU_Gt2V{-PXM0yW63^KYL43 z|N1ELmy_tdb>j`?+_Morw@Hj&zxd9-dC$Msa! zS2EgUSj~!!*du_Sih`Rpb;VW7CEefD|Jb}Ze56IJ-Z#;A%gWhPzjgehk?1q^I+W#< zex+``vFNzF>N;6#zu#SR-CS}qo8Rz&0d9cXpWyeinh^6l&;&rJ@Z`)7nGfe3cUGMp zlDf6z+?cQqW%YocHJw{sG|e=xdIG>0l}R>85Y*A-6!9w45j8ymwXAkHuLZ-S#q&EC zhX=H^jJDXX$wbsqpUUe1w{nX?#twDyyA(7fxwxjB)(+;{CqlBMGc=&3_qmYJq(W+> z5Ak8$E{(buJ%fIDPyACGBta{}#tGY1>*s^t|69jD6@t#hFO7ndV%Y3v1zwBGcAT6L z6_C#=v=>|R2K;)MgvX?l*^De%D8DQnuG>ulU|0=k?2Adg+m|8(B!v|~_GkqlLf8VV z915iI)272};7yBgZs#ID^@r5V28_)Mce0uKjJjUEM(oHDIvj}zdzCZ<$&ea>x;!0K zBA|-;l!%PWDmSC~RbtUPvP3<9e%oh&|Ih5BG(>(mD*%i|V5-xiAV>pi#cNmk z9Ori~vU_YGR;YbRz>#7o8A~p5f|bNYe&PmhlkRVu4rG!S(PZEaM)L!HG`|G?UxBv% z@Spk%{y%)3zITd31n|*|sTF!?T$s`d3`0T?2d##gb=&M*hca;+fCsTW2xwt<>^Qg- zBAruN;I_*WA!YFjwYU@M6KY>3QlLrtEWyu*`hx%WM(f8-0N^!uaM)pQ-X@(ivvuw| ze|AVjf_n3jW+I>K$rt>8u3z>`xw@%=FZl1KmcHEcxz@lJ{C}=r_Di|Csev!}@1~Z% z-1E8Cz!&^~u3z>`xw@%=FZl1KmcHEcxz@lJ{C}=r_Di|Csev!}@1~Z%-1E8Cz!&^~ iu3z>`xw@%=FZl1KmcHEcxz>P$|1ZZcHSoKwf&U*U5ht?% literal 0 HcmV?d00001 diff --git a/samples/lerabot01/romdisk/PLACEHOLDER b/samples/lerabot01/romdisk/PLACEHOLDER new file mode 100644 index 0000000..e69de29 diff --git a/samples/lerabot01/romdisk/flag1.bmp b/samples/lerabot01/romdisk/flag1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..f3f53854dd86a12f70f31c346075189982f545de GIT binary patch literal 49206 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 literal 0 HcmV?d00001 From 7c60a2b0db03ef333a4a7c072966ce8d71dccbb4 Mon Sep 17 00:00:00 2001 From: lerabot Date: Tue, 5 Jun 2018 12:16:38 -0400 Subject: [PATCH 2/3] adding lerabot sample --- samples/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/samples/Makefile b/samples/Makefile index 4798342..b9394f1 100644 --- a/samples/Makefile +++ b/samples/Makefile @@ -11,4 +11,5 @@ all: $(KOS_MAKE) -C nehe02va all $(KOS_MAKE) -C nehe03 all $(KOS_MAKE) -C nehe06 all - $(KOS_MAKE) -C ortho2d all \ No newline at end of file + $(KOS_MAKE) -C ortho2d all + $(KOS_MAKE) -C lerabot01 all \ No newline at end of file From e4311c5d0bcfff70254a518b8e8dd619a4b4e1e7 Mon Sep 17 00:00:00 2001 From: Luke Benstead Date: Tue, 5 Jun 2018 19:52:01 +0100 Subject: [PATCH 3/3] Update Makefile --- samples/Makefile | 3 --- 1 file changed, 3 deletions(-) diff --git a/samples/Makefile b/samples/Makefile index c3bdd7c..ca3c239 100644 --- a/samples/Makefile +++ b/samples/Makefile @@ -12,8 +12,5 @@ all: $(KOS_MAKE) -C nehe03 all $(KOS_MAKE) -C nehe06 all $(KOS_MAKE) -C ortho2d all -<<<<<<< HEAD $(KOS_MAKE) -C lerabot01 all -======= $(KOS_MAKE) -C zclip all ->>>>>>> 5b05039dfd461861a8541aa66ea325f59bb9f746