diff options
| -rw-r--r-- | README.md | 2 | ||||
| -rw-r--r-- | include/cub3d.h | 49 | ||||
| -rw-r--r-- | minimalist.cub | 19 | ||||
| -rw-r--r-- | screenshot_me.png | bin | 0 -> 565632 bytes | |||
| -rw-r--r-- | src/capture.c | 192 | ||||
| -rw-r--r-- | src/main.c | 2 | ||||
| -rw-r--r-- | src/state.c | 3 | ||||
| -rw-r--r-- | textures/cacharle.xpm | 379 | ||||
| -rw-r--r-- | textures/cacharle_filled.xpm | 316 |
9 files changed, 811 insertions, 151 deletions
@@ -3,3 +3,5 @@ The cub3d project of school 42.  + + diff --git a/include/cub3d.h b/include/cub3d.h index 36d59c5..9c4a79f 100644 --- a/include/cub3d.h +++ b/include/cub3d.h @@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/11/15 06:40:37 by cacharle #+# #+# */ -/* Updated: 2020/02/03 01:43:17 by cacharle ### ########.fr */ +/* Updated: 2020/02/04 00:26:19 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include <stdio.h> @@ -35,6 +35,9 @@ # define MLX_LITTLE_ENDIAN 0 # define MLX_BIG_ENDIAN 1 +# define FILE_HEADER_SIZE 14 +# define INFO_HEADER_SIZE 40 + # define TRUE 1 # define FALSE 0 @@ -150,43 +153,6 @@ typedef struct s_option_parser t_option_parser_func func; } t_option_parser; -typedef unsigned int t_byte4; -typedef unsigned short t_byte2; -typedef unsigned char t_byte1; - -typedef struct -{ - struct - { - t_byte2 file_type; - t_byte4 file_size; - t_byte2 reserved1; - t_byte2 reserved2; - t_byte4 offset; - } file_header; - struct - { - t_byte4 size; - t_byte4 width; - t_byte4 height; - t_byte2 planes; - t_byte2 depth; - t_byte4 compression; - t_byte4 size_image; - t_byte4 w_pix_per_meter; - t_byte4 h_pix_per_meter; - t_byte4 color_used; - t_byte4 color_important; - } info_header; - // struct - // { - // t_byte1 blue; - // t_byte1 green; - // t_byte1 red; - // t_byte1 reserved; - // } color_table; -} t_bmp_header; - /* ** parse/parse.c */ @@ -309,8 +275,11 @@ int texture_x(t_state *state, t_render_state *rstate, t_image *texture); */ int capture(t_state *state); -t_bool bmp_write(t_image *image, t_bmp_header *header); -void bmp_fill_header(t_image *image, t_bmp_header *header); +t_bool bmp_write(t_image *image, t_byte file_header[FILE_HEADER_SIZE], + t_byte info_header[INFO_HEADER_SIZE]); +void bmp_write_pixels(int fd, t_image *image, t_byte *bmp_data); +void bmp_fill_header(t_image *image, t_byte file_header[FILE_HEADER_SIZE], + t_byte info_header[INFO_HEADER_SIZE]); /* ** render_sprite.c diff --git a/minimalist.cub b/minimalist.cub index 25953f8..5a691b0 100644 --- a/minimalist.cub +++ b/minimalist.cub @@ -1,24 +1,23 @@ -R 1500 1200 -NO ./textures/wood.xpm -SO ./textures/eagle.xpm -WE ./textures/redbrick.xpm -EA ./textures/eagle.xpm - -S ./textures/cheese.xpm +R 1201 900 +NO ./textures/cacharle_filled.xpm +SO ./textures/cacharle_filled.xpm +WE ./textures/cacharle_filled.xpm +EA ./textures/cacharle_filled.xpm +S ./textures/cacharle.xpm F 10,10,10 C 40,40,40 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 2 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 2 0 0 0 0 0 1 0 0 2 1 +1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 2 0 0 0 0 0 1 0 0 0 1 1 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 1 1 1 1 0 2 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 0 0 0 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 0 0 1 0 0 0 1 -1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 0 0 0 0 0 0 1 2 0 0 1 +1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 0 2 0 1 +1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 1 0 N 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 diff --git a/screenshot_me.png b/screenshot_me.png Binary files differnew file mode 100644 index 0000000..33db4c6 --- /dev/null +++ b/screenshot_me.png diff --git a/src/capture.c b/src/capture.c index 72c1f81..59c49ec 100644 --- a/src/capture.c +++ b/src/capture.c @@ -6,132 +6,128 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/01/11 13:15:11 by cacharle #+# #+# */ -/* Updated: 2020/02/03 02:25:43 by cacharle ### ########.fr */ +/* Updated: 2020/02/04 00:29:59 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include "cub3d.h" -#define BM_FILE_TYPE 19778 -#define DATA_OFFSET 1078 -#define BITMAP_INFO_HEADER_SIZE 0x424d #define CAPTURE_FILENAME "capture.bmp" +#define IMG_DEPTH 3 int capture(t_state *state) { - t_bmp_header header; + t_byte file_header[FILE_HEADER_SIZE]; + t_byte info_header[INFO_HEADER_SIZE]; render_update_window(state); - bmp_fill_header(&state->window, &header); - if (!bmp_write(&state->window, &header)) + render_update_sprite(state); + bmp_fill_header(&state->window, file_header, info_header); + if (!bmp_write(&state->window, file_header, info_header)) { state_destroy(state); return (1); } + state_destroy(state); return (0); } -unsigned char* createBitmapFileHeader(int height, int width, int paddingSize){ - int fileSize = 14 + 40 + (3*width+paddingSize) * height; - - static unsigned char fileHeader[] = { - 0,0, /// signature - 0,0,0,0, /// image file size in bytes - 0,0,0,0, /// reserved - 0,0,0,0, /// start of pixel array - }; - - fileHeader[ 0] = (unsigned char)('B'); - fileHeader[ 1] = (unsigned char)('M'); - fileHeader[ 2] = (unsigned char)(fileSize ); - fileHeader[ 3] = (unsigned char)(fileSize>> 8); - fileHeader[ 4] = (unsigned char)(fileSize>>16); - fileHeader[ 5] = (unsigned char)(fileSize>>24); - fileHeader[10] = (unsigned char)(14 + 40); - - return fileHeader; -} - -unsigned char* createBitmapInfoHeader(int height, int width){ - static unsigned char infoHeader[] = { - 0,0,0,0, /// header size - 0,0,0,0, /// image width - 0,0,0,0, /// image height - 0,0, /// number of color planes - 0,0, /// bits per pixel - 0,0,0,0, /// compression - 0,0,0,0, /// image size - 0,0,0,0, /// horizontal resolution - 0,0,0,0, /// vertical resolution - 0,0,0,0, /// colors in color table - 0,0,0,0, /// important color count - }; - - infoHeader[ 0] = (unsigned char)(40); - infoHeader[ 4] = (unsigned char)(width ); - infoHeader[ 5] = (unsigned char)(width>> 8); - infoHeader[ 6] = (unsigned char)(width>>16); - infoHeader[ 7] = (unsigned char)(width>>24); - infoHeader[ 8] = (unsigned char)(height ); - infoHeader[ 9] = (unsigned char)(height>> 8); - infoHeader[10] = (unsigned char)(height>>16); - infoHeader[11] = (unsigned char)(height>>24); - infoHeader[12] = (unsigned char)(1); - infoHeader[14] = (unsigned char)(3*8); - - return infoHeader; -} - -t_bool bmp_write(t_image *image, t_bmp_header *header) +/* +** bmp file format: +** header: +** file_header: +** 2: signature = "BM" +** 4: file size +** 4: reserved +** 4: offset to pixel array +** info_header: +** 4: header size +** 4: image width +** 4: image height +** 2: number of color planes +** 2: bits per pixel +** 4: compression +** 4: image size +** 4: horizontal resolution +** 4: vertical resolution +** 4: colors in color table +** 4: important color count +** data: +** pixel in rgb format (without alpha component) +** padding added at the end of each pixel row +** so the length of the row is a multiple of 4 +*/ + +t_bool bmp_write(t_image *image, t_byte file_header[FILE_HEADER_SIZE], + t_byte info_header[INFO_HEADER_SIZE]) { - int fd; - - unsigned char padding[3] = {0, 0, 0}; - int paddingSize = (4 - (image->width*3) % 4) % 4; //redundant? - unsigned char* fileHeader = createBitmapFileHeader(image->height, image->width, paddingSize); - unsigned char* infoHeader = createBitmapInfoHeader(image->height, image->width); + int fd; + t_byte *bmp_data; if ((fd = open(CAPTURE_FILENAME, O_WRONLY | O_CREAT, S_IRWXU)) < 0) return (FALSE); - - write(fd, fileHeader, 14); - write(fd, infoHeader, 40); - /* write(fd, &header, sizeof(t_bmp_header)); */ - for (int i = 0; i < image->width; i++) + if ((bmp_data = malloc(sizeof(unsigned char) * + (image->width * IMG_DEPTH))) == NULL) { - for (int j = 0; j < image->height; j++) - { - write(fd, &image->data[4 * (i * image->width + j)], 3); - } - write(fd, padding, paddingSize); + close(fd); + return (FALSE); } - /* write(fd, image->data, image->width * image->height * 4); */ + write(fd, file_header, FILE_HEADER_SIZE); + write(fd, info_header, INFO_HEADER_SIZE); + bmp_write_pixels(fd, image, bmp_data); close(fd); return (TRUE); } -void bmp_fill_header(t_image *image, t_bmp_header *header) +void bmp_write_pixels(int fd, t_image *image, t_byte *bmp_data) { - header->file_header.file_type = BM_FILE_TYPE; - header->file_header.file_size = sizeof(t_bmp_header) + image->width * image->height * 3; - header->file_header.reserved1 = 0; - header->file_header.reserved1 = 0; - header->file_header.offset = sizeof(t_bmp_header); - - header->info_header.size = sizeof(header->info_header); - header->info_header.width = image->width; - header->info_header.height = image->height; - header->info_header.planes = 0; - header->info_header.depth = 8 * 3; - header->info_header.compression = 0; - header->info_header.size_image = image->width * image->height * 3; - header->info_header.w_pix_per_meter = 0; - header->info_header.h_pix_per_meter = 0; - header->info_header.color_used = 0; - header->info_header.color_important = 0; + int i; + int j; + t_byte padding[3]; + int padding_size; + + ft_bzero(padding, 3); + padding_size = (4 - (image->width * IMG_DEPTH) % 4) % 4; + i = image->height; + while (--i >= 0) + { + j = -1; + while (++j < image->width) + { + bmp_data[3 * j + 0] = image->data[4 * (i * image->width + j) + 0]; + bmp_data[3 * j + 1] = image->data[4 * (i * image->width + j) + 1]; + bmp_data[3 * j + 2] = image->data[4 * (i * image->width + j) + 2]; + } + write(fd, bmp_data, image->width * 3); + write(fd, padding, padding_size); + } +} - /* header->color_table.blue = 0xff; */ - /* header->color_table.green = 0xff; */ - /* header->color_table.red = 0xff; */ - /* header->color_table.reserved = 0; */ +void bmp_fill_header(t_image *image, t_byte file_header[FILE_HEADER_SIZE], + t_byte info_header[INFO_HEADER_SIZE]) +{ + int file_size; + + file_size = FILE_HEADER_SIZE + INFO_HEADER_SIZE + (IMG_DEPTH * image->width + + ((4 - (image->width * IMG_DEPTH) % 4) % 4)) * image->height; + ft_bzero(file_header, FILE_HEADER_SIZE); + ft_bzero(info_header, INFO_HEADER_SIZE); + file_header[0] = (unsigned char)('B'); + file_header[1] = (unsigned char)('M'); + file_header[2] = (unsigned char)(file_size); + file_header[3] = (unsigned char)(file_size >> 8); + file_header[4] = (unsigned char)(file_size >> 16); + file_header[5] = (unsigned char)(file_size >> 24); + file_header[10] = (unsigned char)(FILE_HEADER_SIZE + INFO_HEADER_SIZE); + info_header[0] = (unsigned char)(INFO_HEADER_SIZE); + info_header[4] = (unsigned char)(image->width); + info_header[5] = (unsigned char)(image->width >> 8); + info_header[6] = (unsigned char)(image->width >> 16); + info_header[7] = (unsigned char)(image->width >> 24); + info_header[8] = (unsigned char)(image->height); + info_header[9] = (unsigned char)(image->height >> 8); + info_header[10] = (unsigned char)(image->height >> 16); + info_header[11] = (unsigned char)(image->height >> 24); + info_header[12] = (unsigned char)(1); + info_header[14] = (unsigned char)(IMG_DEPTH * 8); } @@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/11/15 06:39:39 by cacharle #+# #+# */ -/* Updated: 2020/02/02 19:22:09 by cacharle ### ########.fr */ +/* Updated: 2020/02/03 20:45:17 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/src/state.c b/src/state.c index ddab714..303ab60 100644 --- a/src/state.c +++ b/src/state.c @@ -6,7 +6,7 @@ /* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/11/19 16:39:57 by cacharle #+# #+# */ -/* Updated: 2020/02/02 22:16:47 by cacharle ### ########.fr */ +/* Updated: 2020/02/03 18:52:21 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -33,7 +33,6 @@ t_state *state_new(t_state *state) i = -1; while (++i < TEXTURES_NUM) { - puts(state->textures_path[i]); load_texture(state->mlx_ptr, &state->textures[i], state->textures_path[i]); if (state->textures[i].id == NULL) diff --git a/textures/cacharle.xpm b/textures/cacharle.xpm new file mode 100644 index 0000000..cdf8849 --- /dev/null +++ b/textures/cacharle.xpm @@ -0,0 +1,379 @@ +/* XPM */ +static char *cacharle[] = { +/* columns rows colors chars-per-pixel */ +"120 120 253 2 ", +" c None", +". c #382829", +"X c #372D2D", +"o c #2B1619", +"O c #59353C", +"+ c #4C2E34", +"@ c #69353B", +"# c #411B23", +"$ c #56423E", +"% c #583D44", +"& c #733C45", +"* c #5B4448", +"= c #505451", +"- c #674749", +"; c #75484C", +": c #794C54", +"> c #6A5557", +", c #7C5454", +"< c #775859", +"1 c #6D4E51", +"2 c #556C58", +"3 c #6E655C", +"4 c #765B63", +"5 c #605A60", +"6 c #5D7663", +"7 c #596E62", +"8 c #7A6465", +"9 c #667B69", +"0 c #6F746D", +"q c #893D4C", +"w c #86464C", +"e c #8A4954", +"r c #845C5B", +"t c #865858", +"y c #94595D", +"u c #944B57", +"i c #89615E", +"p c #885B63", +"a c #965A65", +"s c #944F61", +"d c #A55969", +"f c #A55065", +"g c #8C6463", +"h c #8C6B6C", +"j c #856669", +"k c #946C6B", +"l c #986668", +"z c #9A716D", +"x c #886D73", +"c c #996973", +"v c #8A7779", +"b c #9C7473", +"n c #987778", +"m c #8D716E", +"M c #A7666D", +"N c #A96B74", +"B c #B66A79", +"V c #A27574", +"C c #A47C7A", +"Z c #A87779", +"A c #B3767C", +"S c #A7716F", +"D c #C4677C", +"F c #66826C", +"G c #6C8473", +"H c #6D8A74", +"J c #6A8575", +"K c #738B77", +"L c #75927B", +"P c #7A947E", +"I c #77957C", +"U c #70816F", +"Y c #89887B", +"T c #A9827D", +"R c #B5817F", +"E c #937A81", +"W c #A77A82", +"Q c #B97B84", +"! c #C77B89", +"~ c #CD7C8E", +"^ c #7C9483", +"/ c #7D9A84", +"( c #7E9B89", +") c #7D8D80", +"_ c #7BA289", +"` c #878A86", +"' c #998386", +"] c #819C85", +"[ c #859989", +"{ c #8C9C92", +"} c #999896", +"| c #98928D", +" . c #AC8583", +".. c #A78888", +"X. c #B28A85", +"o. c #B48C8B", +"O. c #BB8B8C", +"+. c #B88488", +"@. c #BA928D", +"#. c #B8918C", +"$. c #B98D92", +"%. c #A99598", +"&. c #BC9494", +"*. c #BE9B9B", +"=. c #B89496", +"-. c #A68C91", +";. c #85A28C", +":. c #8AA38D", +">. c #8CA492", +",. c #8CAA94", +"<. c #85A691", +"1. c #93AD9A", +"2. c #95A897", +"3. c #94B29B", +"4. c #99B39D", +"5. c #94A991", +"6. c #A3A79D", +"7. c #B89BA4", +"8. c #9CB5A3", +"9. c #9CBAA3", +"0. c #98B7A2", +"q. c #9DADA3", +"w. c #A1BBA6", +"e. c #A4BCAB", +"r. c #A5B6A9", +"t. c #AABCB2", +"y. c #B1AEAB", +"u. c #C5848A", +"i. c #C68A94", +"p. c #CB959B", +"a. c #C39C9C", +"s. c #C79797", +"d. c #D4959C", +"f. c #CB9094", +"g. c #C9A19E", +"h. c #D6A09E", +"j. c #C89CA2", +"k. c #D49DA3", +"l. c #D999A4", +"z. c #DB8EA0", +"x. c #E596A7", +"c. c #F398AD", +"v. c #C5A2A3", +"b. c #CCA4A4", +"n. c #CDA5AA", +"m. c #CCABAB", +"M. c #C8A8A8", +"N. c #D3A3A4", +"B. c #D3AAA6", +"V. c #D4A4AA", +"C. c #DCA5AB", +"Z. c #D3ACAB", +"A. c #DBABAC", +"S. c #D9A3A7", +"D. c #DBB2AD", +"F. c #D6B1AD", +"G. c #CDADB3", +"H. c #D3AEB1", +"J. c #DCACB1", +"K. c #DAA7B3", +"L. c #CBB5B5", +"P. c #D5B2B3", +"I. c #DBB4B4", +"U. c #DDB5B9", +"Y. c #DEBABC", +"T. c #DAB8B7", +"R. c #CFB0AE", +"E. c #E4A8AD", +"W. c #E4B4AE", +"Q. c #E3ADB3", +"!. c #E7A8B6", +"~. c #E3B3B4", +"^. c #E3BAB5", +"/. c #E4B5BB", +"(. c #EBB4BC", +"). c #E4BBBC", +"_. c #EBBBBC", +"`. c #EBB8B4", +"'. c #F4B6BC", +"]. c #F7A6B4", +"[. c #A5C3AC", +"{. c #A8C3AC", +"}. c #ACC5B2", +"|. c #B4C8B8", +" X c #B8D3BD", +".X c #B1C2AF", +"XX c #9FC2A9", +"oX c #CCC4BC", +"OX c #ECC2BD", +"+X c #E5C1BE", +"@X c #F0C2BC", +"#X c #D9BCC4", +"$X c #E4BCC2", +"%X c #EBBDC3", +"&X c #EBB8C3", +"*X c #F2BEC3", +"=X c #F7BBC5", +"-X c #FFBDD1", +";X c #BBCEC2", +":X c #BED9C4", +">X c #C6D8C9", +",X c #D3CFCA", +"<X c #E5C2C3", +"1X c #EBC3C4", +"2X c #ECC9C6", +"3X c #ECC5CA", +"4X c #EDCACC", +"5X c #E6C8C9", +"6X c #F3C4C4", +"7X c #F3CAC4", +"8X c #F4C5CB", +"9X c #FAC5CB", +"0X c #F4CCCC", +"qX c #FBCBCD", +"wX c #FAC7C6", +"eX c #F4D1CE", +"rX c #FAD1CE", +"tX c #EDCED2", +"yX c #F4CDD2", +"uX c #FCCDD2", +"iX c #FFCEDA", +"pX c #FAC5D3", +"aX c #EAD3D5", +"sX c #F5D2D3", +"dX c #FCD3D4", +"fX c #FED9D6", +"gX c #F4D5DA", +"hX c #FDD5DB", +"jX c #F3DBDC", +"kX c #FEDBDC", +"lX c #F5D9D6", +"zX c #ECD0CF", +"xX c #D5E6D9", +"cX c #FEE1DE", +"vX c #F3E3DF", +"bX c #E5ECDF", +"nX c #FED6E1", +"mX c #FEDCE2", +"MX c #F8DDE5", +"NX c #EDDDE0", +"BX c #FEE2E4", +"VX c #FEE5EA", +"CX c #FEEAED", +"ZX c #F8E7E7", +"AX c #FCF2EE", +"SX c #FEEDF2", +"DX c #FFE4F1", +"FX c #FEF2F4", +"GX c #FEF5FA", +"HX c #FEFCFD", +"JX c #FBF8F6", +"KX c #E4EDE6", +"LX c #DCEAE2", +/* pixels */ +" ", +" ", +" ", +" * - 3 > ", +" < 8 8 8 j j 8 8 8 x v v v 8 ", +" < i t i i < t i , r r i r < g k g m j j ", +" 1 3 3 i t r r < t < , ; i r , , ; , i < i m 8 3 ", +" > j 3 , r i r i i i i i i < r < , < ; ; < , 1 < < 8 3 ", +" 1 j i i i i i i i k i i k z i k < i g i < i ; ; - - - - 3 1 > ", +" > 8 p t t T z g g k k k k k k k k g k k g k m < , , ; - - - 1 * 1 ", +" 4 j h c i T T T C V z z n T k k z k k z z n z g g g r r < 1 - $ % ; * ", +" > j n h T T T i i T z T V T T T T n C z C z n .n k k i i r , , ; ; , - & - ", +" > v T ..T T T T T T Y z T T T T T X.T C C n n . .n b l g p r i t t r , , ; - - ", +" 8 v ..=.T T R R R T T T T T z T T T T X.T T T ..X.T T C z z z l S z t i < k r , - * ", +" 8 ' v.v.@. .T #.@.*.*.R R T T T R #.T T X.R #.o.X.#. .T T C b z C T T Z z z b k k 4 < % ", +" x 7.G.$XP.a.s.@.s.R R R R .Xg.s.@.s.g.@.@.#.#.*.#.X.o. .o. .T T T X.X.X.o.X.X.+.C W C c 1 ", +" 4 G.#XjXsX+XI.I.B.g.g.s.#.@.*.g.g.g.g.g.g.g.g.@.g.@.X.T X.#.&.X.*.@.a.*.@.=.o.=.&.+.s.s.o.x < ", +" 7.jXZXFXBX4X<X+X).^.D.B.g.g.s.s.g.g.g.b.B.B.B.B.g.g.@.*.@.*.g.g.B.g.b.g.g.g.*.M.b.s.n.Z.n.$.n , ", +" 7.vXCXHXGXGXCXZXlX4X2X2XOX+X^.I.oXD.W.+XD.D.F.F.F.B.B.M.M.g.B.B.Z.F.M.F.T.T.P.P.#XI.K.H.J.J.V.O.k 1 ", +" E ZXHXJXHXFXHXHXFXZXCXCXCXcXcXfXfXrX7X@X@X7X+X^.^.D.+XD.F.D.+X+X+X+X<X2X5XzXsXzXzXsX3X$X%X)._.I.N.$.p 1 ", +" 4 aXFXJXHXHXHXHXHXHXAXFXCXCXCXBXBXcXcXcXfXfXfXrXrX7X^.^.I.I.+X7X7XeXfXkXBXBXCXCXCXFXDXmXhXhXyX9X%X_.C.W p ", +" #XNXGXHXHXHXHXHXHXHXHXJXJXFXFXCXCXCXcXAXCXcXcXcXkXdX0X1X).$XzXvXBXCXVXJXJXJXHXHXHXHXHXFXAXCXZXkXMXgXtXH.c 1 ", +" %.aXZXHXHXHXHXHXHXHXHXHXHXJXFXFXSXSXVXAXAXcXCXcXcXkXhXdXyXyXyXhXBXBXCXCXGXGXGXHXHXHXHXHXJXFXAXCXCXBXmXmX8Xk.j - ", +" aXNXZXHXHXHXHXHXHXHXHXHXGXGXFXFXCXVXCXAXcXCXcXCXcXmXkXhXkXkXmXBXBXCXCXSXGXGXGXHXHXHXHXHXHXHXFXCXCXCXCXmXhX8XE < ", +" 7.vXaXAXHXHXHXHXHXHXHXHXGXGXGXGXSXCXVXCXCXBXBXBXBXmXBXmXmXmXmXVXVXVXBXCXSXSXJXGXGXHXHXHXHXHXGXFXCXCXCXCXVXmXhX*.x > ", +" ZXaXaXFXFXHXHXHXHXHXHXHXFXFXGXSXSXVXZXZXVXVXZXmXmXBXmXmXBXmXmXmXVXVXCXCXSXSXSXJXHXHXHXHXHXHXHXJXSXSXSXCXVXmXkXY...8 ", +" v CXaXvXcXCXHXHXHXHXHXHXHXFXFXFXSXSXSXVXVXVXVXBXZXBXmXmXBXmXmXVXBXVXVXCXSXDXSXDXFXGXHXHXHXHXHXGXSXFXSXSXSXSXBXhX4Xv.h > ", +" L.vXzXzXvXCXJXJXHXHXJXGXFXFXFXFXSXSXSXVXVXZXCXBXmXVXVXVXmXBXBXmXVXBXZXCXCXFXFXFXFXGXHXHXHXGXJXJXFXFXFXFXSXSXBXkXeXP...8 ", +" aXZX5X5XaXCXAXJXJXFXFXFXFXSXSXSXSXSXSXSXCXSXCXBXZXBXVXVXBXmXmXmXBXZXZXSXFXGXFXFXFXGXGXGXHXHXJXJXSXGXFXFXCXCXBXkXzX<X*.v < ", +" > vXaX5X5XsXkXAXFXJXFXAXFXFXSXSXFXFXSXCXSXSXSXVXVXMXVXVXVXmXVXVXVXZXVXSXSXFXFXFXDXFXGXHXGXJXJXGXJXGXFXGXFXFXCXcXcXeX<Xb...8 ", +" x vXzX<X2XlXcXCXCXAXAXAXCXFXSXGXFXFXSXSXSXSXSXCXVXVXVXVXVXVXVXVXBXVXVXCXSXFXFXFXFXFXGXHXHXGXGXHXGXGXFXFXFXCXCXcXcXeX<XF.o.j > ", +" ' 5XoX+X2XzXcXvXCXCXCXCXCXFXSXFXGXGXGXFXSXSXCXCXSXCXVXVXBXVXVXVXVXVXVXDXSXFXDXFXFXFXGXHXHXGXGXGXHXGXFXCXCXBXBXcXkXzX+XI.a.' x ", +" ' T.T.5X2X4XfXcXBXZXCXCXAXAXFXGXGXFXGXFXSXSXSXVXCXSXVXVXBXVXBXVXVXVXVXVXSXSXSXSXSXSXJXJXHXGXGXHXGXGXFXCXBXZXkXkXfX2XY.).M.o.E ", +" | y.R.5XeXdXfXkXkXBXCXCXFXFXJXGXHXGXHXGXGXSXSXCXCXVXBXBXVXVXVXBXVXmXBXCXSXSXSXJXSXJXGXHXHXHXGXGXGXFXCXCXBXkXjXfXeX<XI.Y.F.%.-. ", +" ' *.v.5XfXcXkXkXkXmXCXAXAXFXHXHXHXHXGXGXFXSXSXCXVXVXjXmXmXBXmXVXmXVXVXVXVXSXSXGXGXHXHXHXHXGXGXFXFXSXCXBXjXkXfXlX0X2XI.P.M.%.| ", +" ' %.*.eXkXcXkXkXkXmXBXAXFXFXJXJXHXHXHXSXSXSXZXCXBXBXZXmXmXBXBXmXmXBXBXVXVXVXSXGXGXHXHXHXHXHXGXFXSXCXBXcXfXfXdXkXsX4XY.b.*.o... ", +" ' o.*.kXkXrXmXmXkXmXCXCXFXFXJXJXJXJXJXSXZXZXZXVXBXBXVXVXBXmXmXmXmXmXmXmXVXCXDXSXJXGXHXGXHXGXGXGXSXCXvXkXhXdXrXkXsXeXI.a.%.T | ", +" x -.=.dXdXfXfXNXZXCXAXFXSXAXCXVXSXVXmXVXmXmXmXmXmXmXkXhXkXmXmXmXkXhXnXmXnXmXnXDXnXDXFXFXFXGXGXFXCXZXZXkXkXyXdXkXdXdX+X*.n v ' ", +" 4 ....jXrXfXfXjXSXGXCXNXZXBXVXVXmXkXnXnXhXhXnXmXhXkXhXhXhXhXdXhXhXhXnXhXhXnXnXMXnXnXnXmXDXDXmXSXVXBXmXkXgXdXkXdXkXkX4Xv.n h v ", +" * ' T sXrXfXfXCXSXBX#XM.G.H.P.$XJ.n.k.H.Q.).%X8XyXdXdXhXdXdXdXhXhXyXyXiX8X8XtX-XpXyXyXnXmXDXDXVXBXmXkXkXkXhXyXdXdXkXdXI.m x j ", +" v n 4XdXfXfXkX%XU.b.a.=.C C C c l k S A O.k.^.%X*X9XyXyXqXdXyXyX9X9X8X*X&X/.J.K.K.k.j.j.P.#X$X#X$X%XyXmXhXhXyXdXhXkX1Xh v 4 ", +" 8 n $XkXdXdX^.a.&.@.X.C r : - & ; w t l S A p.A.^.(.6X*X_.=XwX6X*X*X*X(.J.V.i.$.W c h j j E ..W o.j.H.0XhXkXyXyXdXdX+Xg v > ", +" > v P.BXrXrX^.g.@.C k r ; @ @ @ ; ; t t l Z Z s.N.E._.(./._.(._._./.^.C.p.+.Z c t : : & & & : j C ..=.V.$X0XdXdXqXfXP.k Y * ", +" - n n.BXrX0XD.W.B.s.X.C k < t r t t t y l S S R f.S.A.Q.^.(.Q.!.Q.C.d.i.Q M l t ; : : & % % - p n W ..a.J.qXdXrXhXg.h n * ", +" * j *.fXfXrXW.W.W.`.`.A.a.#.T T Z z Z S S S S R u.s.h.A.E.Q.J.E.l.d.i.A S S a y y p p p & : : : p c l n o.j.).0X0XfX=.m Y O ", +" v o.cXfXrX`.`.W.!.`.V.p.@.@.W A Z N S N A S R R u.p.N.^.Q.J.C.j.s.+.A S M M S M c a N W N c W N N W Q ..p.F.1XdXlX .m 8 X ", +" + n o.CXrX7X`.E.E.l.u.+.$.o.W c p t e y M M S A A i.s.N.(./.%X^.k.i.A S M M l N d a N c c N W W Q i.$.O.b.b.I.dXeXeX..j 8 . ", +" -.ZX7.v &.BXeX1X`.h.f.+.+.i.k : & + + O & w q u l l S O.p./.yXyXyX$XN.X.N M y y u w & : : p a c E c N Z p.k.k.A.<X2XfX7Xn z > o ", +" GXVXmXM.b.kXeX+XA.O.k Q W & O O & w q y y S O.J.yXVXVXVXmXU.+.c u e s & @ & & + % % : j E W p c +.s.B.Y.0XfX1XC g > E E ", +" #XSXkXcX2XkXBX+XB.f.R p & W E : p & q w S R s.$XhXVXSXFXVX3X=.a t w q & & : # % s C , l O.h.I.eXdX1X..b j.SXGX-. ", +" 7.5XmXCXOXcX7X@XOXf.+.p.k.=.j.: . + - c a @ w w R f.k.1XmXVXSXSXSXyXj.c u e & & & E O x O ; l l S g.I._.kX1X@._.BXVXDXaX ", +" M.M.iXrXfXCXfX7X@X`._./.J.K.n.n.j % < c c e w w d f.E.U.yXBXSXSXGXGXmXH.o.S y & s s s 4 j Q W b a l O.p.+X1XfX6X_.BXkXmXG.7. ", +" G.P.nXhXdXkXcXfXfX@XqX_.C.K.k.n.n.7.-.C c a f D R l.`.%XyXmXSXMXFXFXMX$Xj.i.B s q s E E 4 % % E 7.j.#X&Xl.d.s.W.1X0XdXwX6XhXhXK.n #X ", +" G.$XSXkXjXCXkXcXcXfXfX0X/.C.p.z.Q ~ Q B M N B S u.E.9XpX8XVXmXNXFXFXnXpX&XV.Q Q f W f Q Q ~ j.!.K.l.l.E.&X%X*X6XsXdXfX9XqXyX9X(.N &X ", +" %.DXSXkXgXBXCXBXkXkXdX0X_.A.k.z.u.! Q ! Q Q Q u.`.*XyXyXyXmXVXDXFXFXnXiX-X&Xp.W W Q f W W Q Q i.l.j.K.&X8XyXdXhXfXfXdXyX'._.9X9XW !. ", +" E GXnX_.0XBXFXBXBXBXfX0X1X(.J.C.j.z.z.d.i.i.k.W.rXyXqXpXyXVXDXDXFXFXNXiXiX-X&X~ ! Q f W W W Q Q j.l.&X=XiXhXfXfXkXcXdXyX`.yXmXyXf.K. ", +" E DX&Xp.1XCXCXCXCXBXkXfXyXqX_.(.!.`.E.l.k.E.8XyXyXyXqXpXdXSXVXMXGXSXnXgXhXhX0X8X!.f.! ~ $.Q i.s.k.K.*X0XdXcXcXcXkXfXkXfXd.E.9XiX*Xo. ", +" %.SX].f.rXBXBXcXBXBXBXkXkXdXyX9X_.`.K.A.(.yXhXkXyXdXyXyXgXSXVXNXGXSXnXnXgXdXyXyXiX'.p.j.l.K.!.K.&X=XyXhXcXcXcXBXcXkXcXdXA ! l.yXnXh ", +" | VX!.z.mXcXBXkXBXBXBXmXkXhXdX8X_./._.8XhXkXkXhXyXyXyXqXiXSXVXZXGXSXgXhXhXdXyXhXnXiX%XK.K.&X&X-XiXhXmXkXBXcXCXcXfXcXfXyXA ! f.8XDX- ", +" E CX!.x.kXkXkXkXcXcXkXkXdXdXyX8X8X0XhXkXmXhXhXkXqXyXyXyXhXDXDXDXGXSXgXhXdXdXyXhXnXmXmXyX&X#X&X3XhXhXkXmXBXcXCXCXcXfXdXBXd.A f.iXmX% ", +" v HX&Xz.hXcXdXkXsXhXkXdXdXhXhXdXhXkXmXkXmXmXkXhXdXyXyXnXnXDXDXDXFXSXnXhXhXyXyXyXhXnXmXDXmXiXyXiXnXnXmXmXBXmXkXvXfXkXdXkX=XQ E.iXmX% ", +" ` HXyXC.6XkXdXrXdXdXqXqXqXyXdXdXhXkXmXkXhXkXkXdXdXyXhXmXMXDXZXDXFXDXnXiXyXdXyXyXmXmXmXmXVXmXmXmXmXmXmXmXkXkXkXfXdXfXdXdX'.x.&XmXhXX ", +" [ HXVX(.N.qXfXdX0X0X6X6XwXqXyXyXdXkXhXhXhXkXdXyXyXiXmXZXDXDXDXDXFXFXDXmXgXpX9XyXmXmXVXmXmXmXmXmXhXnXnXhXhXdXsXsXjXfXdXyX!./.iXSXtX ", +" %.JXBXdXdXdX0XrX0X0X6X6X=X9X9XqXqXdXhXdXkXhXdXyX4XjXSXSXSXSXDXDXDXFXVXmXhXsX9X9XkXmXmXVXmXmXmXhXhXiXhXdXdXdXdXrXfXdXqX9X!.8XVXSX#X ", +" y.HXVXkXCXrXqXfX7XrXqX@X@X9X9XyXyXdXhXhXfXhXdX9XdXmXVXSXFXSXDXDXDXDXDXmXmXhX9X*XdXkXmXVXmXmXmXnXhXgXdXyXyXyXqXdXdXeXqX9X8XnXVXDXL. ", +" #XZXkXdX1XfXrX@XrX7XqXwXwX9XqXdXqXdXfXdXdXdXqX9XyX0XdXSXSXmXmXDXDXFXDXmXnXdX9X&X8XyXmXmXmXBXmXkXgXhXyXdXyXyXqXqXqXqXdXdXhXVXVXFX7. ", +" 6.GX4XeXeXrXqX7X@X@X7X@XwX'.9XqXdXkXkXdXdXyX9XwXwX*XwXhXmXmXnXnXgXmXmXhXyXyX9X'.9XpXhXkXmXmXmXkXkXhXdXyXyXqXqXqX6X0XdXhXnXnXMXGXE ", +" tXkXrXcXfX7XrX@XeX@XwX'.wXwXyXdXkXkXkXdXdXyXwX].].S.&XyXyXpX-X%X%X-X%XQ.'.wX'.=X9XiXhXkXmXBXmXkXkXdXdXyXdXqX0X6X1XfXnXgXMXMXGXE ", +" 4 mXkXzXlXrX@X@X@X@XwXwXwXdXhXkXkXkXkXfXdX9X@X].D M d.'.!.Q.E.E.K.E.K.Q f.].=X9XpXiXhXmXmXmXBXkXkXdXdXdXrXqXqX9X6XkXBXgXnXiXZX4 ", +" > G.T.).rXqXqXrXeX7XrXdXfXfXkXcXmXhXhXmXhXqX].~ u u z.z.f.! u.f.! q Q z.-XgXhXhXnXmXBXmXmXkXkXkXdXrXrXrX7X_.qXdXhXmXDXtX#X ", +" # ..fX7X7XqXrXrXrXfXfXkXkXcXkXkXhXmXhXdX=Xx.A M u.u.A A B B @ a N &XpXnXmXmXmXmXmXmXmXBXkXkXkXfXdXrXrX7XrX0X/.iXnXMX4 ", +" v cX7XrX7XrXrXfXfXcXkXkXkXkXhXkXmXmXhXqX9XE.E.l.d.u.A Z u W W a k.nXmXmXmXBXmXmXmXmXkXBXcXcXkXfXfXrXrXrX0X1Xn.$X#Xx ", +" h BX4XrXrXrXfXfXfXcXcXkXcXkXkXkXnXmXhXyXhX9X9X_.Q.p.Q Q k.H.J.$XnXnXDXVXmXVXmXmXmXmXkXBXcXcXcXfXfXrXrX0XkXkX% ", +" < BX4XrXdXfXfXcXcXcXkXkXcXkXkXhXhXnXnXkXhXdXhX9X*Xl.p.N.*X%XhXmXnXVXmXVXVXVXBXmXmXkXkXcXcXkXfXcXfXfXdXlXkX<X# ", +" * BXsXeXdXfXfXfXcXfXkXcXmXmXkXhXhXhXhXBXmXmXhXyX%X!.Q./.=XmXnXnXDXZXmXVXmXmXBXBXBXcXjXcXkXfXkXfXfXfXfXeXMXG. ", +" O zXsXrXkXfXfXdXcXcXkXcXkXkXkXhXyXiXnXnXkXnXnXhXpX&X&X=XiXiXmXDXmXnXmXVXmXmXkXBXcXcXfXcXkXfXkXkXfXkXfXzXmX#X ", +" 5XgXsXkXfX0XeXkXcXkXcXkXkXhXhXiXhXhXnXmXnXnXnXpX&X/.%XnXnXnXmXDXnXVXmXmXhXkXkXcXkXkXfXfXfXfXkXdXdXdXsXcX7. ", +" M.mXdXdXkXeXeXcXfXfXkXkXhXyXhXhXyXiXhXmXnXmXnXnX4X%XiXmXmXmXmXmXmXmXmXhXdXsXdXkXkXfXlXeXfXfXfXhXdXdXeXBX' ", +" ' BXdXdXkXfXfXfXfXfXdXdXdXyXyX8XiXnXnXnXnXmXnXmXnXnXnXDXmXDXmXnXnXmXiXyX8X4X8X0XdXfXrXdXrXdXdXfXdXdX4XcX ", +" BXdXfXfXfXcXdXfXdXeX7X1X8X%X=X=XyXiX=X!.!.&XnXnXmXnXpX&X&X-XnXiXnXpXqX8X).^./.6X7XrXrXrXdXdXdXdXyX4XmX ", +" zXdXdXkXrXfXrXfX7X7XOXD.l.k.Q.'.!.z.~ ~ ~ ! ~ ~ x.~ ! ~ Q i.z.!.=X8X(.N.b.p.D.1XrXrXrXrXqXdXdXdXqXzXP. ", +" %.kX0XdXdXfXfXfX7X@XA.s.W a c N W W s f f Q Q ! W f Q ! W d f M Q +.Z l Z s.N.W.@XeXrXeXeXdXdXqX0XmX' ", +" dXdXdXrXfXrX7X@X^.S.p.f.f.u.u.~ z.~ ! f f f f f q q q s f a q q a a c S O.h.^._.7X7X0X0X0XeXsXyXaX1 ", +" o.eX0XeX7X@XOX@X^.A.E.'.=X=XE.!.c.].].c.~ ! ~ D ! ~ z.c.x.z.f.f.Q._.(.N.s.g.D.^.+XOX2X7X0X2X2X4XG.. ", +" OX0XeX7X@X@X^.W.W.`.'.'.'.E.x.!.!.!.].c.c.].~ c.c.].c.l.z.E.!.&X_._.^.S.s.h.W.^.+XOXOXzXOX5X3X#X. ", +" 3 aX0X2X6X@XW.W.W.W.W.`.(.A.K.~ x.~ ~ ~ c.~ c.c.c.~ d.z.k.l.l./._._.^.N.N.N.B.^.^.+X+XzXOX+XtXNXX ", +" 7.sX1X_.`.`.`.W.W.W.W.E.N.j.j.~ i.! ! ~ ~ ~ ~ ~ ~ ! Q +.f.d.^.(._.^.Z.N.B.A.I.^.^.+XzX+X+XsXZX* ", +" O gX3X6X@X`.`.`.W.W.E.A.d.j.~ Q Q Q ! f f f W W Q Q Q +.f.S.Q.I.^.^.B.h.B.B.D.I.I.+X+XD.+XkXSX= ", +" ..sX1XrX@XW.@X@X`.^.A.C.l.i.f.+.A B M d d M M N +.i.s.S.A.J.A.B.A.B.N.B.B.oX+X+X+XD.oX@XkXHX8 ", +" . M.1XOX@X@X@X@X`._.(.`.K.k.B.d.d.u.A M M N A O.s.p.B.A.A.W.A.A.A.A.A.A.W.W.@XD.+XF.+XfXkXGX' ", +" 1 4XI.7X@X@X@XqXwX6X@X%X6X6X6XwX`.E.S.l.l.Q.`.^.D.I.^.D.^.^.^.W.^.^.^.W.+X+X+XB.oX@XcXjXFX7. ", +" . Y.1XOX@XqX@XqXqXrXqXhXdXfXdXdXqXqXwXwXqXhXkXrXqX0X7X1XOX_.@X@X@X`.^.W.+XB.F.F.+XeXcXcXFX,X ", +" o <XsX+XOXOXqXqX7XrXfXfXkXkXkXhXdXqX9X9XdXhXkXkXcXcXfXfXrXrX7XOXOX@X`.+XD.g.g.I.zXfXlXcXAXaXo ", +" 7.CXoX^.OX@XqXqXfXcXfXfXkXdXqXqX*X*XwXyXhXkXkXkXkXdXdXrXrX7X6XOX@X^.+Xs.g.+XOXzXlXkXcXCXZX+ ", +" ' CXkX+X^.^.qXrXqXqXdXrXyXqX6X(.Q.^._.8XqXhXkXkXkXdXrXqXfX7XOX@X+XB.s.g.B.T.zXsXkXcXkXZXFX> ", +" 8 SXjXeX+XI.^.OX0X7X1X).1X8X/.J.k.C./.8X8X0XqXdX0X7X6X7X@XOX+X^.g.s.@.B.T.+XzXfXkXcXBXBXMX,X' * 4 3 ", +" * DXaXgX0X).A.V.^.).F.b.D.I.A.C.Z.A./._.).).).OX).).)._.^.I.F.s.X.@.g.D.).0XeXsXcXBXcXBXBXCXjX%.j * ` | 6. ", +" X NXVXgXyX8X^.b.g.p.g.b.b.g.k.p.p.h.N.V.b.k.b.b.Z.A.B.B.B.g.#. .o.g.F.Y.1XeXsXdXkXcXcXkXBXCXBXAXcXy.8 X X 5 ;X= ", +" o ,XgXgXyXyX8X^.b.*.&.@.O.X.X.O.i.@.O.&.o.o.#.#.f.O.O.#. .T T .s.Z.I.).2X0XyXsXkXmXBXCXcXvXCXCXcXAXCX,X5 = >X} [ 0 ", +" 0 v 4 ,XVXgXgXyX0X1X<XI.g.R T C b Z Z Z C Z C C z T V C S C n n #.g.Z.I.+XOX1X0XdXhXkXmXmXBXcXkXAXCXCXcXvXAXAX| r.6.;Xt.t.{ = ", +" 4 } 5 %.VXgXgXdXyX9X0X0X<X^.B.O.Z z z z z z z z k z z k z z .&.g.Z.I.+X+X1X1X4XsXhXkXmXmXkXBXCXcXAXCXAXAXAXvXoX2.,.|.r.q.|.t.y.0 ", +" 0 K X y.ZXjXgXdXyXyXyXyXyX4X0X).b.$.Q C Z Z b C Z b b b C #.a.b.F.I.).OXOX1X1X8XyXhXhXhXmXmXBXBXCXCXCXAXAXAXAXoXy.5.>.e.>.( t.0.q.q.( J ", +" 5 } o v NXHXZXNXjXdXdXpXpXyXyXyX8X1X).A.s.X.W Z Z Z C b Z W o.b.F.^.I.).+XOX+X_.1X1X0XhXhXmXkXmXZXBXBXAXAXCXAXAXAX[ 6.|.[ <.{ ^ t.0.1.q.0.1.{ { ", +" = >X% 5 aXGXHXGXZXMXgXsXyX8XyXyXsXdX0X0X8X1XJ.a.@.o.O.X. . . .a.b.I.oX_.).).).1X$X1X1X3XyXyXhXhXmXvXBXcXcXCXAXAXAXAXxXY U |.t.J ( 0._ 1.1.( e.^ { q.q.t. ", +" = r.KX.X > ZXJXHXJXHXSXZXkXgXdX8XyXgXgXyXgXgX8X8X%XD.k.&.o...o.s.b.H.Y.Y.).$X%X).OX).).1X3X8XyXyXgXhXmXkXBXjXBXCXAXCXFXZXq.0 ( e.0.,._ 9.<.0.3.[.<.9.t.9 2.t.;X{ ", +" ` >X>XxX{ + L.FXHXHXHXHXFXmXjXhXdXyX8XyX4X4X8X8XyX8X8X$XI.b.s.o.$.b.I.).).).$X).).).$X%X_.1X%X3X0XyXyXhXmXjXmXjXBXCXcXAXJXbXq.t.q.1.1.<.0.L 9.XX3.0.t.;.F { [.}.2.[ q.[ ", +" J q.;X{ ;Xe.2 ; 4XJXHXJXJXHXSXMXjXhXdXyXtXtX%X%X$X3XyXqX1X).).H.Z.k.b.Z.I.I.I.I.U.).).).).$X1X%X1X3X8XyXyXhXkXMXBXjXBXCXBXAXAX4.9 J 0.( 1.,.<.0.H XX9.L ^ _ 0.|.^ 2.2.q.0.{ = ", +" { t.>Xt.^ >Xt.9 1 sXJXJXHXJXHXHXmXhXsXyXyXyXtX5X$X$X$X$X3X%X).U./.I.J.H.V.Z.H.Z.H.H.I.I.I./.).$X%X%X3X3XyXiXiXhXkXBXkXBXBXCXCX,XY ^ J ^ F H ( J [.^ L 0.[.G _ }.3.( XX1.[.^ J t.t.|.} = ", +" q.KX7 J :X^ r.e.4.>.; iXFXHXJXJXHXSXBXmXgXhXsXyX4X3X%X%XU.H.Y.%X).I.I.I.J.M.n.n.b.n.n.n.Z.U.U.$X$X$X%X%X%X3X8XgXiXhXsXBXkXCXcXCXvXy.6.] 9 F ,.^ F 0.9.0.0.[.^ ^ XX;.XX;.( 0.^ 9.9.e.,.|.;Xr.| 5 ", +" J t.LXxX) ) t.>X9 |.r.|.U : 1XFXHXJXJXJXFXVXmXhXgXsXsXyXtX%X#X$XU.I.U.U.I.H.Z.n.j.a.j.v.b.n.H.P.P.U./.$X&X%X#X%X3X8X8X8XyXkXmXkXcXcXcXL.6.K 6 / 3.,.0.H K t.q.t.[.XX/ 6 _ J 1.L ^ 1.^ 0./ :.;X.X{ 4.|.6.", +" ` LX>Xt.;X) J ;Xt.>X;.{.oX:.0 ; H.FXJXHXJXHXSXCXmXgXhXsXsXtX4X3X$X#XU.H.I.J.Z.b.b.b.j.*.j.v.b.n.M.P.P.$XK.$X$X$X$X&X%X4X8XgXyXdXcXcXcXvXvXY [ U 4.[ 3.9.9.|.9 ) }.;Xt.6 G ,.9.9.F L ( 9.1.J ;.|.e.^ 0.t..Xt.", +" = ` LXt.q.{ >X( ) _ _ >X:X:.4.:XF 4.< o.AXJXHXHXHXGXCXmXkXgXsXsX0XtX3X<X$XU.J.H.n.j.a.a.=.*.*.j.M.n.n.M.P.U.P.U.P.$XK.$X%X%X3X%X4X0XsXkXBXvXvXy.3 ` 9 { ,.[ [ ;.e.t.J J e.9 K e.r.{.e.}.) G 0.[.t.e.[.e.{ ] r.9.3.", +" 0 y.KX6.;X4.K |.0.G 7 <.I XX:XXX X5.Y r.k z AXJXJXHXHXFXCXVXmXkXsXsXsX4X4X5X$X$XP.G.k.=.o.o.o.$.=.j.*.v.v.R.R.P.P.P.P.P.U.$X$X$X1X1X0X0XgXlXlXvXr.5.3 K = ;.>.,.6 0.e.0.9 9 7 ^ 9.0.0.I [.4.4.,.F [ }.{.{.I ;.e.|.{..X", +" r.xX>X5.K r.|.e.}.}.L J 1.{. X9.3.3.Y :.U 9 j < lXFXJXHXGXSXSXMXmXhXgXhXsXtXtX3X<X$XJ.H.v.&.o.o...o.o.=.*.v.M.b.R.R.F.H.P.I.I.K.U.$X<X1X4X4XsXzXvX,X8 [ H P ;.>.U G 1.[.6 2 <.}.t.{ 6 I I :.4.{.4.6 P 5.J _ 9.[.5.e.;X", +" t.>X|.t.r..X5.G >.|.P J 5.9.9.XX X:X_ I :.{.3.I z > oXSXGXHXGXGXSXVXmXkXdXiXsX0X4X3X5X$XY.P.n.a.o.o. .o.=.=.*.v.M.R.R.F.G.H.P.I.U.U.Y.).$X1X2X1XzXsX<X6.2 ] >._ ,.0.3.9.1.F H 0.J J e.9.( 2 5.F F {.4.;.H 6 H :.[.{.I I 5.I ", +" r.vX5.4.U { t.e.4.H P / / 4.;./ / 9.XX:XI XXX{.{.:.| 8 | CXSXGXGXSXCXCXVXmXdXdXsXtXyX3X<X<X).Y.Z.v.*.o.o.o.o.=.*.v.b.m.R.R.H.H.U.U.I.).Y.).).1X1X1X5XoX| Y / ,.;.2 ,.[.e.4.G J 0.9.[.L J 9.<.3.F I H 9.Y 2 L F H e.0.{.] L :.J ", +" ` LXLXt.2.[ 5.3.,.I I I L {.4.5.U P P F X4.Y :.{.9.{.Y Y 3 3 MXFXSXHXGXSXVXBXkXsXdXsXtX4X3X$X<X).Y.I.b.a.&.=.o.&.=.*.v.v.R.R.R.P.P.P.U.U.$X).+X+X+XOX2Xb.< 3 2 6 ;./ <.I F 1.e.H H XX9.9.9.9.I H ,.[.3.4.XXI F ,.{.5.I F :.4.3.e.I 4.", +" :.>X|.t..XoX.X.X5.I I 3.{.{.I I 5.3.;.Y I ,.,.Y :X3.H I 4.,.U 3 ; ).FXFXFXFXAXZXCXmXkXdXsXyXyXtX5X$XY.Y.P.G.j.*.*.*.*.a.j.v.b.b.R.R.G.P.P.K.$X$X/.I.oX,XoX.X;.L P ] [ / ;.J L _ L H H ,.;.9.3.9.3.{./ F ;.XXXXH F ,.XX9.9.{.,.F I 4.{.9.|.", +" U >XKX>X X4.[ 5.r.I L 9.{.{.{.{.{.;.I ;.e.}.3.:.I XX X X,.H 9.Y 2 0 r D.CXCXFXFXAXCXCXmXhXrXsXyXyX4X5X<X).Y.P.M.M.j.=.=.=.*.*.g.g.b.b.R.G.R.P.I.J.).).+XoXy.Y 6 6 H [ ;.L ;.;.2 [.;.H [.9 :.XX5.F 9.9.I :.H ;.I F 3.3.3.XX9.9.{.4.I I ] 9.r.", +"r.bXoX X>XoX5.t.5.U 5.I ;.{.4.L 5.4.Y :.] ;.] L I XX{.XX XXX5.3.9.5.Y ; &.CXCXFXFXFXFXVXmXhXfXsXyXtX4X5X$X#XU.G.n.M.*.=.=.=.o.=.&.*.v.v.M.M.G.P.U.U./.D.g.%.} U 9 F F 6 2 L [.4.H J 4.9.H F H {.I L 4.I H I {.9.I I XX4.H 5.5.[ U " +}; diff --git a/textures/cacharle_filled.xpm b/textures/cacharle_filled.xpm new file mode 100644 index 0000000..b32e221 --- /dev/null +++ b/textures/cacharle_filled.xpm @@ -0,0 +1,316 @@ +/* XPM */ +static char *cacharles[] = { +/* columns rows colors chars-per-pixel */ +"64 64 246 2 ", +" c #030103", +". c #0B0003", +"X c #04020A", +"o c #0C030B", +"O c #0B0A0E", +"+ c #11060E", +"@ c #140608", +"# c #0E0A12", +"$ c #0D0611", +"% c #130D15", +"& c #130E19", +"* c #170C16", +"= c #0E1214", +"- c #141116", +"; c #16121A", +": c #1A141C", +"> c #1C191E", +", c #1A1418", +"< c #290105", +"1 c #21151C", +"2 c #26181B", +"3 c #291418", +"4 c #1C1621", +"5 c #1D1A23", +"6 c #141923", +"7 c #221C24", +"8 c #2A1D25", +"9 c #231E29", +"0 c #2A1E2A", +"q c #211623", +"w c #331E22", +"e c #261F31", +"r c #1B232B", +"t c #232126", +"y c #2D2226", +"u c #25222B", +"i c #2A242C", +"p c #2D292E", +"a c #242C2C", +"s c #32252C", +"d c #332A2D", +"f c #38272B", +"g c #262432", +"h c #2C2632", +"j c #2D2A33", +"k c #2D2B3A", +"l c #272935", +"z c #322633", +"x c #322C34", +"c c #332E3A", +"v c #392E39", +"b c #3B2D33", +"n c #2C3032", +"m c #353136", +"M c #35313C", +"N c #3A333C", +"B c #3C3637", +"V c #46292E", +"C c #43343A", +"Z c #463639", +"A c #4F2E36", +"S c #363140", +"D c #3B3442", +"F c #3E3946", +"G c #3E3B4A", +"H c #382F40", +"J c #413643", +"K c #443B44", +"L c #423749", +"P c #433B4B", +"I c #493C47", +"U c #493E51", +"Y c #513E40", +"T c #733D48", +"R c #46414D", +"E c #4A4349", +"W c #564448", +"Q c #4C4153", +"! c #534C53", +"~ c #534559", +"^ c #534657", +"/ c #585459", +"( c #4E5452", +") c #63474C", +"_ c #654C52", +"` c #784B52", +"' c #695356", +"] c #79595B", +"[ c #7C434C", +"{ c #5D4F63", +"} c #5D5062", +"| c #675A63", +" . c #775E62", +".. c #6B636A", +"X. c #676869", +"o. c #786669", +"O. c #766D74", +"+. c #79787B", +"@. c #71736E", +"#. c #854C57", +"$. c #86575B", +"%. c #94575F", +"&. c #965B68", +"*. c #915365", +"=. c #8A6569", +"-. c #97696C", +";. c #9D6C74", +":. c #8B7779", +">. c #987375", +",. c #8C6B70", +"<. c #A66B77", +"1. c #A6797B", +"2. c #8A615D", +"3. c #79877A", +"4. c #6C8974", +"5. c #848479", +"6. c #A9807C", +"7. c #787D80", +"8. c #8E7C83", +"9. c #A77B83", +"0. c #B87B84", +"q. c #7C9A83", +"w. c #8A8588", +"e. c #95868B", +"r. c #978587", +"t. c #889789", +"y. c #968C93", +"u. c #8D9B93", +"i. c #9A979A", +"p. c #A8868A", +"a. c #BC8B8E", +"s. c #B48889", +"d. c #A88C92", +"f. c #B88C92", +"g. c #A8969A", +"h. c #B99597", +"j. c #B7928D", +"k. c #85A38B", +"l. c #8CA492", +"z. c #8DAA93", +"x. c #94AC9A", +"c. c #97A799", +"v. c #96B59D", +"b. c #A79BA3", +"n. c #B79FA3", +"m. c #9CABA2", +"M. c #9CB5A3", +"N. c #A8A7A7", +"B. c #B6A7A8", +"V. c #A5B7A9", +"C. c #B6B8B6", +"Z. c #AFB7B2", +"A. c #A0A19B", +"S. c #CD8997", +"D. c #C7989B", +"F. c #D1909A", +"G. c #CEA19C", +"H. c #C89CA2", +"J. c #D698A6", +"K. c #D286A0", +"L. c #E39EAE", +"P. c #CDA3A5", +"I. c #C9A7A8", +"U. c #D2A5AA", +"Y. c #D4ACAC", +"T. c #D7A6A8", +"R. c #D4B0AC", +"E. c #D4ADB1", +"W. c #DCAEB5", +"Q. c #CAB6B6", +"!. c #DBB2B4", +"~. c #DCB3B9", +"^. c #DCBABB", +"/. c #D4B6B6", +"(. c #C2ABB3", +"). c #E7ACB5", +"_. c #E3B4B4", +"`. c #E2B4B9", +"'. c #E4BABC", +"]. c #EABCBD", +"[. c #E7B9B9", +"{. c #E1AAAF", +"}. c #ACC3AD", +"|. c #B6C2B8", +" X c #AFC0B0", +".X c #D6C2BD", +"XX c #C0C0B6", +"oX c #C9BCC4", +"OX c #EBBEC3", +"+X c #E7BDC4", +"@X c #F4BCC6", +"#X c #C7C6C6", +"$X c #D5C6C4", +"%X c #DBCBCB", +"&X c #D9C5C8", +"*X c #D4CCD4", +"=X c #D9D4D9", +"-X c #D0CDCE", +";X c #ECC3C4", +":X c #ECC6C9", +">X c #ECCBCD", +",X c #E4C9C8", +"<X c #F3C5C6", +"1X c #F3C5CB", +"2X c #F2CACC", +"3X c #FACBCD", +"4X c #FCC3C9", +"5X c #F6D2CD", +"6X c #EBCCD2", +"7X c #F3CCD1", +"8X c #FCCDD2", +"9X c #FBCDD8", +"0X c #E8D7D9", +"qX c #F3D2D4", +"wX c #FCD3D4", +"eX c #F3D4DA", +"rX c #FED5DA", +"tX c #F4DBDB", +"yX c #FDDBDC", +"uX c #FBD8D7", +"iX c #E5D2CE", +"pX c #FDE1DD", +"aX c #EBE7DE", +"sX c #E7DDE2", +"dX c #FEDCE2", +"fX c #FADAE3", +"gX c #EEE4E5", +"hX c #EDE4EB", +"jX c #E9E6E7", +"kX c #F4E3E3", +"lX c #FCE3E4", +"zX c #F2E5EB", +"xX c #FEE4EC", +"cX c #F3E9EC", +"vX c #FEEAEC", +"bX c #FCEAE5", +"nX c #F9F1EE", +"mX c #F4ECF3", +"MX c #FDEDF3", +"NX c #F4E7F0", +"BX c #F4F2F5", +"VX c #FDF4F4", +"CX c #FCF5FB", +"ZX c #FEFDFD", +"AX c #F7F5F8", +"SX c #EFEDF0", +/* pixels */ +"Q.Q.$Xr.I W I I i M M M B d x p B m k j j j h j h z z c z z z z z z c z x b x x v v c M D D G G G G P Q R R Q ~ ~ { | H oXZXZXZX", +".XQ.$Xr.Z E L J 0 M M m x x x i B x n j j j i j c x z h h s z z k c h h c v v z D v M D D D G P P L G Q Q R R Q ~ Q { z *XCXZXZX", +".X.X%Xr.C ^ J J 0 m m m x p p i M B x p p j p j j x h h h x x j k c k c h c c v S c k S D D G P L F G L Q Q Q Q ~ ~ { k *XZXZXZX", +".X$X%Xr.b E J C 8 x m x x p p i B x x x p j j j h j c j a p p p h h h j k k S c c k S S m D D G D F F G L Q P Q ~ ~ { h *XZXZXZX", +"$X.X%Xy.x E J C 8 m m m d p p i M b x x p j i j h j j p p n d n j j m x k k k k k S S S S D D D D F F G L R Q Q { U { z =XZXZXZX", +"$X$X%Xr.s E J M 8 x m x j p p i M x s i i h j p i j j p p d d p y p j j i j k k k k S S S v H D D D F F G F L U U U ~ q *XZXZXZX", +"-X$X-Xr.y I J M 5 x m p p i p i M x d p j p i x j j d d y y f p Z b p y z c c g k k k c c c m M m S D F D F G L U U ~ & *XZXZXZX", +".X$X%Xy.8 I J M 8 j x j p i i 9 m x h h h p x i i s y y b Y ' ] ] .] W b z j c k k k k k j j x S S S S S F L J U U ~ & =XZXZXZX", +"%X$X%Xy.8 I M M 8 j d p p i i 9 m j j j i p s x d y f V ' .o.2.] ] . .' Z i z z h c j j n j m S m m S D D G D L L ~ q *XZXZXZX", +"B.%X*Xe.* I J z 5 j x p p i i 9 k a k j i i x 8 s w Z ] =.=.-.2.2.2.] ` ] ) Z b s j x j n n n n S S S S D D D P L L U * *XCXZXZX", +"1 N.0Xw.1 M M v 5 p p p i i i 9 S k j i i i t d w W ] :.>.>.1.-.-.-.-.2.` ' ) Z s i x j j n j k m k S m S S D D L L U q =XZXZXZX", +"@ .=Xe.+ I x x > p p p i i i 9 m k l i l i s i b :.p.p.6.1.1.6.6.6.>.2.$. .` Z V s d x p j j h c k k S m S D D L L U q =XZXZXZX", +"Z . N.y.o v J z > p i i i t i 9 k h g i x i i 1 :.B.d.j.j.6.j.j.6.6.6.6.6.5.:. .A b s z z k l l j c m k c m S D G L L 8 =XZXZXZX", +"g. o.y.* M v j : i i i i i 9 9 k h h h 9 x o o.0X,XI.B.G.j.G.G.G.j.G.6.D.6.h.h.' C s s z k k l k j k m m S S D D L L 9 =XZXBXZX", +"Q.g. I M C i m > t i i i i 9 9 c z h h 8 i p =XnXlXtX,X'.'.'.T.R.G.R..X_..X!./.d.W z s z z k l j k c k c m H D D L L h 0XZXZXZX", +"g.-X| C J x x j > i i t i 9 5 8 c c 9 9 c g.VXZXZXnXpXbXpX5X5X.X].aXpXbXbXpX5X+X,.C s z k e S j j j k c c D H H L L l jXZXBXZX", +"w.B.8.O.1 x m j 5 9 g e 9 i 9 9 h k 5 i 8 J 6XCXZXZXCXVXMXdXxXdXeXdXxXMXCXZXAXcXkXE.V f m n a k m n j k x c M D D M B N jXZXZXZX", +"O.y./ ..i b h h 4 9 h i 9 9 9 9 i h i m o 8.xXCXZXZXCXMXxXxXdXdXdXxXxXMXCXZXZXVXvX2X=.y p l k l j j j j k c c M D J F B jXZXZXZX", +"+.O.v I i x v j 4 9 h 9 9 9 9 5 e z i x . C.zXMXZXBXZXcXxXdXxXkXfXxXxXMXCXZXBXnXMXdXd.V d p l k j j j k h c S m M M M J jXZXZXZX", +"o.8.Q M M x 9 h 4 9 9 9 9 8 8 5 i h i 9 8 +X0XxXZXBXBXVXMXxXxXlXkXxXMXVXCXZXZXBXvXrXR.W d j j j l j m k c c c v M J B E jXZXZXZX", +"C b... C i h i 4 8 9 9 5 8 5 8 0 i p > J Q.6XzXnXBXBXnXvXvXvXkXkXvXvXVXVXCXZXVXvXdX^.=.8 x j h j j j k n c c c m F j ! jXZXZXZX", +"! C.| M y m 0 : 9 9 9 9 9 5 5 i t p > Z I.0X0XkXBXZXVXVXvXbXkXlXvXMXVXCXZXCXvXdXeX^.e.s i j k j a j j j j x c c D i ( jXZXZXZX", +"! o.8 R i j 8 h : 5 9 9 5 8 5 4 0 9 p 1 Z n.dXfXbXnXVXVXvXlXlXpXtXlXxXMXCXZXVXkXeX7XE.d.C i g k j l p j k x c k c G i ( SXZXZXZX", +"/ / ! ! 8 i i i : q 9 9 5 5 8 4 8 0 p > V g.tXtXvXvXMXvXlXdXyXpXdXdXdXxXMXCXvXfXyXrXI.:.M i c e j j j j k x c x m J i / SXZXZXZX", +"O.O.! / 5 i i i - 5 8 5 5 8 4 6 9 i 5 p , p.>XlXtX,X&X~.;X8X8XwXrX7X1X9X6XxXxXfXwXyX^.] B i k k a l g j h c z c c D i | jXZXZXZX", +"e c m L i i i t - > 8 5 5 5 5 ; 9 5 n d . :.>X2Xj.:.] ` <.L.;X2X4X1X+XK.9.h.g.+XrXrX`.' y l r g i i j j j h k x c M i | SXZXZXZX", +"X $ : m 8 i i i ; > 5 5 5 5 5 4 5 p r t @ ] >X;XD.1.$.#.&.1.D._.`.`.0.*.T A T 9.Y.3X!.' p t l g i l g j h h h c x M 9 X.BXZXZXZX", +"# X : j t i t t - ; 8 5 4 5 5 : 4 a t d . ) >X;XE.U.s.1.<.1.S.U.U.S.0.9.9.=.=.9.a.3XR.W 2 t i g i i j g h h h h h M 8 X.BXZXZXZX", +"; O & g h i 8 5 * : 5 > 5 > 5 ; 9 9 j 5.n.;X'.f.9.#.[ #.&.s.;X1Xf.&.*.[ &.9.0.D.3XU.V : i 5 e r i i g h h j c z M 6 O.BXZXZXZX", +"& X O g i i 8 5 - : > 8 : 5 4 ; 4 i j . B.lX7X'.>.=.< V #.#.T.wXdXS.T T A < ' *.S.wXh./.b.X c e i r i i g h h j c M : @.BXZXZXZX", +"$ $ O 5 i i 5 8 - : 1 > > : ; 6 9 9 0 8.>XyX;X~.P.9.-.#.1.T.bXxXW.#.*.#.V 9.;.f.<X;X0Xb. k e i r r i g h h z h M 6 O.BXZXZXZX", +"O $ X 5 i 5 > t * : 5 > : 5 5 ; 9 q c r.dXdXyX<XY.f.1.%.G.2XyXxX2Xf.&.<.p.E.~.<X4XuX;Xw.. h e 5 5 i g i h h h h M & @.BXZXZXZX", +"X * $ 8 i 8 8 8 * : > : : : : : > 5 x d.0XdXyX2X].T.a.(.+X9XxXxXuX`.9.9.d.H.6XyXwX3X:Xp.o l r r 9 9 i 9 g g g l m X O.BXZXCXZX", +"* 4 h x i : ; i * , : : > > ; : ; 8 i y.&XeXxXyX3X_.`.1X9XeXxXvXeXfXOXH.U.:XfXvXwXT.+Xd. r r 9 9 9 5 g g i g l m $ 7.BXCXCXZX", +"$ o i i 5 8 i : * - : : : : , - ; i c . e.+XeXyXrXwX4XrXdXrX9XNXlXqXrXfX1X7XfXdXyXlXW.~.p.@ c 6 5 i r 9 i 5 i 9 l m X 7.CXZXCXZX", +"o # X 5 8 ; : > * - ; : : - : - ; > i o d.sXeX7X4X5X8XfXrX7XfXxXvXrX1XfXxXrXrXdXwXrXOX1X8.+ h r 9 5 9 9 5 e r g i m X 7.BXCXCXCX", +"+ X p 8 t ; 5 = - ; : : ; : : 5 : x . b.fX,X9X<X2X8XwX8XrXxXdXxXfX7XrXdXfX9XrXwXwX1XdX,.o i i 9 5 9 g 5 g i g g m X w.CXCXCXCX", +"# m w.+. > 8 ; * - : ; ; ; - - : 8 v . g.xX6X7X2X<X8XyX9X1XfXdXdXfX7X1XfXdXrXwX2X2XyXdX . k 6 5 5 5 e 5 i i g l S X w.BXMXAXCX", +" E +...- t 8 : # * - ; ; ; - - : 1 8 | 0XtX>X;X3X8XyX7X~.(.1X+X+X+X1XdXyX7XwX7X:XdXrXW o j r 9 5 i 9 r 9 g g i m X y.mXmXmXBX", +", , M t - 5 > # - , - * ; - - : : 0 i :./.qX>XwXwXuXrXJ.9.h.9.` D.yXrXyXlXwX>XqXfXoX1 0 5 5 5 9 5 r e 9 i r g m X y.mXmXmXmX", +"@ 8 d . > 1 > > $ & & ; & & ; * : : 5 8 d . d.tX5XuXyXuXuX8X~.S.9.f.@XxXpXyXpXuXqX,Xn.' . y 5 6 5 5 5 e 5 9 r g i m X i.BXhXmXBX", +". b C t , , : O & & & & ; = * ; i > t i N.pXuXuXpXyX3XrXrX~.+X9XdXfXyXpXuXpXuXtXW t r 5 i 5 5 5 r e 9 9 g i S X i.mXhXmXmX", +"@ 3 E O.1 1 , : O & ; & ; - ; * * 5 5 5 d w.6XtXuXuX5X3XrXdX@X@XdXfXfXuXpXuXpXyX,XE + p - 5 6 5 5 5 5 5 5 i 5 i m X i.mXmXNXNX", +"@ 3 _ :.1 , , > O & & ; & * * = ; 5 > > p O.pXtXpXuX5XrXrX9X9XfX9XdXfXwX5X5X5XtX$XB > t 5 5 ; 5 5 5 5 5 g 5 e 5 c X b.mXmXNXNX", +". w ' W 1 * , ; $ & & & & - * = - t > 5 > + E iXpX5X2X{.).L.J.).@XJ.+X`.U.;X5X5XrXQ.. > > r t 8 5 5 5 5 r 5 e 9 9 c O b.mXhXNXmX", +"@ 3 W ] 3 3 1 * $ $ & & & = - * * 5 > 8 1 1 . (.bX<X[.D.0.0.<.&.*.*.;.9.1.{.;X5XqXe. x - > > 1 5 5 5 5 5 5 5 e 9 k X N.NXhXNXNX", +"@ 3 ) _ 1 1 : : $ & ; ; & # - - : : 8 - t b . :.2X;X).).).).L.S.L.L.K.`.T._.].;X>X8.. t > r - 8 5 5 5 9 5 5 8 9 9 c X N.NXhXNXfX", +"< 3 A ) 3 1 1 : O # & # ; ; # * : : 1 > 1 2 2 @ _.<X).).).F.S.S.K.K.K.+X{.G.].].1Xg.. i ; 6 t , & 5 6 5 5 5 5 9 9 z O N.NXhXNXNX", +"< 8 i E 1 : , > # + = ; # * ; # - 8 - 5 6 6 j . r.iX].!.{.S.1.%.%.1.G.{.T.R.!./.aXn. d ; : 4 6 5 4 & 4 5 4 5 5 5 c N.BXhXhXNX", +"* : 8 I : : 1 : = # * ; - - - - + 8 ; ; 5 5 > : b R.iX,X].@X].F.T.T.[.[.{.[..X!.pXB.. d : 4 ; 5 4 e 9 4 6 5 e 6 5 m X Z.BXhXhXNX", +"* * 0 0 q ; * : * # = ; * - - * 1 * : 5 6 ; i : 2 I.>X5X5XdX8X@X5X5X5X4X2X_.Y..XpXXX d * > 5 ; 4 & & 4 5 4 5 9 r j C.SXhXsXNX", +"+ + / I X 8 > ; + # = - = * ; = : : 4 4 4 5 ; t . Q.;X;XwX4X@X].4XpX5X5X<XR.T.>XbX,Xy t p O 6 6 6 6 6 9 5 6 5 5 9 h oXBXhXhXNX", +"+ * q | 9 * 5 ; # # * - * - ; * + 8 : ; 6 ; 8 p . n.pXR._._.T.T._.[.].[.D.D._.wXlXlXQ./ X.} X 6 9 & = = > 5 5 9 z h X oXBXmXNXNX", +"+ * * 9 9 8 * : * # # ; # - - - * : : 4 > > > 5 , r.bXiXP.s.a.a.j.j.j.s.s.T.<X>XyXbXVX0Xi.i.q.5 X & r r 6 5 5 4 9 0 $ oXmXsXhXhX", +"* + q 4 & $ 4 4 # # # - # - ; * : : - > ; j E Y r.iX>X2X_.s.;.-.>.>.6.H.'.<XyXyXpXkXZXjXm.|.u.X.a O ; r > ; h 9 9 + oXcXjXhXgX", +"o * + 9 : q : & & # * - - * - = - ; ; > l B @. .iXbX>X5X8X'.f.p.>.6.T.].].;X2XyXlXnXnX=Xi.u.m.m.t.( ; r i ; 9 z : *XmX0XcXgX", +": + : q q & & & & X * ; # - - = = - t r B Z.y.0XZXxX6X2X>XwX^.j.j.R.].].'.;X2XtXbXpXnX|.c.x.m.M.u.m.t.l 5 i 9 9 i *XcXsXzXgX", +"& o : 9 & 9 & * $ # ; # = ; + # > a ( V.XXy.cXZXkXeX>X].2X].Q.I./.!.^.].<X2XpX5XnXaXt.3.t.m.x.x.m.m.M.X. X 9 q d -XcXzXkXgX", +": o q 0 q * & : $ & # # = = > > = B c.V.Z.c.i.ZXZXlXeX6X].!.'./.I.U.U.W.+XOX:XiXaXbX-X3.t.t.M.u.l.c.u.x.|.t.( X t B =XhXgXjXcX", +": + & z & * & : # # # ; = > = 5. XN.l.|.N.t.jXZXvXtX6X,X~.Y.G.n.G.I.W.'.^.;XiXbXaX5.t.x.x.v.l.l.l.x.M.m.V.}.X. E -XgXgXhXkX", +": + * 8 8 : * : = O - = t O 4.M.Z.M.t.M. Xc.@.0XZXvXtXqX6X~.Y.d.f.H.I.~.~.E.;X>XiXXX@.3.v.q.4.v.z.x.x.v.v.}.M. X5.a -XgX0XhXcX", +"1 + + 1 : : * & o + + r B c.V.V.l.l.l.}.c.m.3.-XZXvXdXeX7X'.Y.j.f.h.U.Y.E.E.&XiX.Xt.5.z.v.q.q.x.4.z.4.3.v.3.}.V. XM..XsXcXsXcX", +"1 + q s : * * ; + # > X.|.#Xu.x.k.z.5.z.M.V.@.C.VXvXfX7X6X;XE.H.h.H.I.E.~..X.X&X5.5.t.t.q.M.M.q.v.q.M.z.k.v.z.v.V.|.=X0XsXzXfX", +"1 + v E 8 * : - = > 3.-XXXc.y.V.v.z.z.z.}.c.3.c.VXMXxX0X>X;XY.I.f.h.H.R.~./.E.5.@.5.q.l.q.z.q.z.q.q.v.v.k.z.k.}. XV.Z.=XsXsXhX" +}; |
