summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorMichael Lauer <mickey@vanille-media.de>2007-08-03 01:09:38 +0000
committerMichael Lauer <mickey@vanille-media.de>2007-08-03 01:09:38 +0000
commit3601798980713422b2b45ba39ab1d36a92f9e426 (patch)
tree0ed0e275aee8df313a3493ab5a7f5f45fe8c7774 /packages
parent49f14dc848ba6e6928e88a9ae0c020ead296bac2 (diff)
psplash: add OpenMoko branding
Diffstat (limited to 'packages')
-rw-r--r--packages/psplash/files/configurability.patch292
-rw-r--r--packages/psplash/files/fic-gta01/.mtn2git_empty0
-rw-r--r--packages/psplash/files/fic-gta01/psplash-bar-img.h35
-rw-r--r--packages/psplash/files/fic-gta01/psplash-hand-img.h5377
-rw-r--r--packages/psplash/psplash_svn.bb23
5 files changed, 5718 insertions, 9 deletions
diff --git a/packages/psplash/files/configurability.patch b/packages/psplash/files/configurability.patch
new file mode 100644
index 0000000000..b923cb24f1
--- /dev/null
+++ b/packages/psplash/files/configurability.patch
@@ -0,0 +1,292 @@
+Index: psplash/psplash.c
+===================================================================
+--- psplash.orig/psplash.c
++++ psplash/psplash.c
+@@ -44,17 +44,17 @@ psplash_draw_msg (PSplashFB *fb, const c
+
+ /* Clear */
+
+- psplash_fb_draw_rect (fb,
+- 0,
+- fb->height - (fb->height/6) - h,
++ psplash_fb_draw_rect (fb,
++ 0,
++ fb->height - (fb->height/PSPLASH_TEXT_DIVIDER) - h,
+ fb->width,
+ h,
+- 0xec, 0xec, 0xe1);
++ PSPLASH_BACKGROUND_COLOR_R, PSPLASH_BACKGROUND_COLOR_G, PSPLASH_BACKGROUND_COLOR_B);
+
+ psplash_fb_draw_text (fb,
+- (fb->width-w)/2,
+- fb->height - (fb->height/6) - h,
+- 0x6d, 0x6d, 0x70,
++ (fb->width-w)/2,
++ fb->height - (fb->height/PSPLASH_TEXT_DIVIDER) - h,
++ PSPLASH_TEXT_COLOR_R, PSPLASH_TEXT_COLOR_G, PSPLASH_TEXT_COLOR_B,
+ &radeon_font,
+ msg);
+ }
+@@ -66,36 +66,36 @@ psplash_draw_progress (PSplashFB *fb, in
+
+ /* 4 pix border */
+ x = ((fb->width - BAR_IMG_WIDTH)/2) + 4 ;
+- y = fb->height - (fb->height/6) + 4;
+- width = BAR_IMG_WIDTH - 8;
++ y = fb->height - (fb->height/PSPLASH_PROGRESS_DIVIDER) + 4;
++ width = BAR_IMG_WIDTH - 8;
+ height = BAR_IMG_HEIGHT - 8;
+
+ if (value > 0)
+ {
+ barwidth = (CLAMP(value,0,100) * width) / 100;
+- psplash_fb_draw_rect (fb, x + barwidth, y,
++ psplash_fb_draw_rect (fb, x + barwidth, y,
+ width - barwidth, height,
+- 0xec, 0xec, 0xe1);
++ PSPLASH_BACKGROUND_COLOR_R, PSPLASH_BACKGROUND_COLOR_G, PSPLASH_BACKGROUND_COLOR_B);
+ psplash_fb_draw_rect (fb, x, y, barwidth,
+- height, 0x6d, 0x6d, 0x70);
++ height, PSPLASH_PROGRESS_COLOR_R, PSPLASH_PROGRESS_COLOR_G, PSPLASH_PROGRESS_COLOR_B);
+ }
+ else
+ {
+ barwidth = (CLAMP(-value,0,100) * width) / 100;
+- psplash_fb_draw_rect (fb, x, y,
++ psplash_fb_draw_rect (fb, x, y,
+ width - barwidth, height,
+- 0xec, 0xec, 0xe1);
++ PSPLASH_BACKGROUND_COLOR_R, PSPLASH_BACKGROUND_COLOR_G, PSPLASH_BACKGROUND_COLOR_B);
+ psplash_fb_draw_rect (fb, x + width - barwidth,
+ y, barwidth, height,
+- 0x6d, 0x6d, 0x70);
++ PSPLASH_PROGRESS_COLOR_R, PSPLASH_PROGRESS_COLOR_G, PSPLASH_PROGRESS_COLOR_B);
+ }
+
+- DBG("value: %i, width: %i, barwidth :%i\n", value,
++ DBG("value: %i, width: %i, barwidth :%i\n", value,
+ width, barwidth);
+ }
+
+-static int
+-parse_command (PSplashFB *fb, char *string, int length)
++static int
++parse_command (PSplashFB *fb, char *string, int length)
+ {
+ char *command;
+ int parsed=0;
+@@ -103,21 +103,21 @@ parse_command (PSplashFB *fb, char *stri
+ parsed = strlen(string)+1;
+
+ DBG("got cmd %s", string);
+-
++
+ if (strcmp(string,"QUIT") == 0)
+ return 1;
+
+ command = strtok(string," ");
+
+- if (!strcmp(command,"PROGRESS"))
++ if (!strcmp(command,"PROGRESS"))
+ {
+ psplash_draw_progress (fb, atoi(strtok(NULL,"\0")));
+- }
+- else if (!strcmp(command,"MSG"))
++ }
++ else if (!strcmp(command,"MSG"))
+ {
+ psplash_draw_msg (fb, strtok(NULL,"\0"));
+- }
+- else if (!strcmp(command,"QUIT"))
++ }
++ else if (!strcmp(command,"QUIT"))
+ {
+ return 1;
+ }
+@@ -125,8 +125,8 @@ parse_command (PSplashFB *fb, char *stri
+ return 0;
+ }
+
+-void
+-psplash_main (PSplashFB *fb, int pipe_fd, int timeout)
++void
++psplash_main (PSplashFB *fb, int pipe_fd, int timeout)
+ {
+ int err;
+ ssize_t length = 0;
+@@ -143,14 +143,14 @@ psplash_main (PSplashFB *fb, int pipe_fd
+
+ end = command;
+
+- while (1)
++ while (1)
+ {
+- if (timeout != 0)
++ if (timeout != 0)
+ err = select(pipe_fd+1, &descriptors, NULL, NULL, &tv);
+ else
+ err = select(pipe_fd+1, &descriptors, NULL, NULL, NULL);
+-
+- if (err <= 0)
++
++ if (err <= 0)
+ {
+ /*
+ if (errno == EINTR)
+@@ -158,29 +158,29 @@ psplash_main (PSplashFB *fb, int pipe_fd
+ */
+ return;
+ }
+-
++
+ length += read (pipe_fd, end, sizeof(command) - (end - command));
+
+- if (length == 0)
++ if (length == 0)
+ {
+ /* Reopen to see if there's anything more for us */
+ close(pipe_fd);
+ pipe_fd = open(PSPLASH_FIFO,O_RDONLY|O_NONBLOCK);
+ goto out;
+ }
+-
+- if (command[length-1] == '\0')
++
++ if (command[length-1] == '\0')
+ {
+- if (parse_command(fb, command, strlen(command)))
++ if (parse_command(fb, command, strlen(command)))
+ return;
+ length = 0;
+- }
++ }
+ out:
+ end = &command[length];
+-
++
+ tv.tv_sec = timeout;
+ tv.tv_usec = 0;
+-
++
+ FD_ZERO(&descriptors);
+ FD_SET(pipe_fd,&descriptors);
+ }
+@@ -188,14 +188,14 @@ psplash_main (PSplashFB *fb, int pipe_fd
+ return;
+ }
+
+-int
+-main (int argc, char** argv)
++int
++main (int argc, char** argv)
+ {
+ char *tmpdir;
+ int pipe_fd, i = 0, angle = 0;
+ PSplashFB *fb;
+ bool disable_console_switch = FALSE;
+-
++
+ signal(SIGHUP, psplash_exit);
+ signal(SIGINT, psplash_exit);
+ signal(SIGQUIT, psplash_exit);
+@@ -214,10 +214,10 @@ main (int argc, char** argv)
+ angle = atoi(argv[i]);
+ continue;
+ }
+-
++
+ fail:
+- fprintf(stderr,
+- "Usage: %s [-n|--no-console-switch][-a|--angle <0|90|180|270>]\n",
++ fprintf(stderr,
++ "Usage: %s [-n|--no-console-switch][-a|--angle <0|90|180|270>]\n",
+ argv[0]);
+ exit(-1);
+ }
+@@ -231,7 +231,7 @@ main (int argc, char** argv)
+
+ if (mkfifo(PSPLASH_FIFO, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP))
+ {
+- if (errno!=EEXIST)
++ if (errno!=EEXIST)
+ {
+ perror("mkfifo");
+ exit(-1);
+@@ -239,8 +239,8 @@ main (int argc, char** argv)
+ }
+
+ pipe_fd = open (PSPLASH_FIFO,O_RDONLY|O_NONBLOCK);
+-
+- if (pipe_fd==-1)
++
++ if (pipe_fd==-1)
+ {
+ perror("pipe open");
+ exit(-2);
+@@ -252,30 +252,30 @@ main (int argc, char** argv)
+ if ((fb = psplash_fb_new(angle)) == NULL)
+ exit(-1);
+
+- /* Clear the background with #ecece1 */
+- psplash_fb_draw_rect (fb, 0, 0, fb->width, fb->height, 0xec, 0xec, 0xe1);
++ /* Clear the background */
++ psplash_fb_draw_rect (fb, 0, 0, fb->width, fb->height, PSPLASH_BACKGROUND_COLOR_R, PSPLASH_BACKGROUND_COLOR_G, PSPLASH_BACKGROUND_COLOR_B);
+
+ /* Draw the OH logo */
+- psplash_fb_draw_image (fb,
+- (fb->width - HAND_IMG_WIDTH)/2,
+- (fb->height - HAND_IMG_HEIGHT)/2,
++ psplash_fb_draw_image (fb,
++ (fb->width - HAND_IMG_WIDTH)/2,
++ (fb->height - HAND_IMG_HEIGHT)/2,
+ HAND_IMG_WIDTH,
+ HAND_IMG_HEIGHT,
+ HAND_IMG_BYTES_PER_PIXEL,
+ HAND_IMG_RLE_PIXEL_DATA);
+
+ /* Draw progress bar border */
+- psplash_fb_draw_image (fb,
+- (fb->width - BAR_IMG_WIDTH)/2,
+- fb->height - (fb->height/6),
++ psplash_fb_draw_image (fb,
++ (fb->width - BAR_IMG_WIDTH)/2,
++ fb->height - (fb->height/PSPLASH_PROGRESS_DIVIDER),
+ BAR_IMG_WIDTH,
+ BAR_IMG_HEIGHT,
+ BAR_IMG_BYTES_PER_PIXEL,
+ BAR_IMG_RLE_PIXEL_DATA);
+
+- psplash_draw_progress (fb, 0);
++ psplash_draw_progress (fb, 0); /* draw initial progress */
+
+- psplash_draw_msg (fb, MSG);
++ if (strlen(MSG)) psplash_draw_msg (fb, MSG);
+
+ psplash_main (fb, pipe_fd, 0);
+
+Index: psplash/psplash.h
+===================================================================
+--- psplash.orig/psplash.h
++++ psplash/psplash.h
+@@ -54,6 +54,21 @@ typedef int bool;
+ #define TRUE 1
+ #endif
+
++#define PSPLASH_BACKGROUND_COLOR_R 0x00
++#define PSPLASH_BACKGROUND_COLOR_G 0x00
++#define PSPLASH_BACKGROUND_COLOR_B 0x00
++
++#define PSPLASH_PROGRESS_COLOR_R 0xe3
++#define PSPLASH_PROGRESS_COLOR_G 0x71
++#define PSPLASH_PROGRESS_COLOR_B 0x00
++
++#define PSPLASH_TEXT_COLOR_R 0xff
++#define PSPLASH_TEXT_COLOR_G 0xff
++#define PSPLASH_TEXT_COLOR_B 0xff
++
++#define PSPLASH_PROGRESS_DIVIDER 3
++#define PSPLASH_TEXT_DIVIDER 3
++
+ #define PSPLASH_FIFO "psplash_fifo"
+
+ #define CLAMP(x, low, high) \
diff --git a/packages/psplash/files/fic-gta01/.mtn2git_empty b/packages/psplash/files/fic-gta01/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/psplash/files/fic-gta01/.mtn2git_empty
diff --git a/packages/psplash/files/fic-gta01/psplash-bar-img.h b/packages/psplash/files/fic-gta01/psplash-bar-img.h
new file mode 100644
index 0000000000..ab47c99ef2
--- /dev/null
+++ b/packages/psplash/files/fic-gta01/psplash-bar-img.h
@@ -0,0 +1,35 @@
+/* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */
+
+#define BAR_IMG_ROWSTRIDE (920)
+#define BAR_IMG_WIDTH (230)
+#define BAR_IMG_HEIGHT (28)
+#define BAR_IMG_BYTES_PER_PIXEL (4) /* 3:RGB, 4:RGBA */
+#define BAR_IMG_RLE_PIXEL_DATA ((uint8*) \
+ "\203\0\0\0\377\3\320\324\310\377\230\234\230\377\200\200\200\377\377h" \
+ "lp\377\333hlp\377\3\200\200\200\377\230\234\230\377\320\324\310\377\205" \
+ "\0\0\0\377\1\260\260\250\377\377hlp\377\341hlp\377\1\260\260\250\377" \
+ "\203\0\0\0\377\1\260\260\250\377\377hlp\377\343hlp\377\4\260\260\250" \
+ "\377\0\0\0\377\345\345\337\377ppp\377\377hlp\377\343hlp\377\3ppp\377" \
+ "\220\220\212\377\240\244\240\377\203hlp\377\377\0\0\0\377\337\0\0\0\377" \
+ "\203hlp\377\2\240\244\240\377\210\210\210\377\203hlp\377\377\0\0\0\377" \
+ "\337\0\0\0\377\203hlp\377\2\210\210\210\377ppp\377\203hlp\377\377\0\0" \
+ "\0\377\337\0\0\0\377\203hlp\377\1ppp\377\204hlp\377\377\0\0\0\377\337" \
+ "\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210hlp\377\377\0\0" \
+ "\0\377\337\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210hlp\377" \
+ "\377\0\0\0\377\337\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210" \
+ "hlp\377\377\0\0\0\377\337\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0" \
+ "\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210hlp\377\377\0\0\0\377" \
+ "\337\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210hlp\377\377" \
+ "\0\0\0\377\337\0\0\0\377\210hlp\377\377\0\0\0\377\337\0\0\0\377\210h" \
+ "lp\377\377\0\0\0\377\337\0\0\0\377\204hlp\377\1ppp\377\203hlp\377\377" \
+ "\0\0\0\377\337\0\0\0\377\203hlp\377\2ppp\377\210\210\210\377\203hlp\377" \
+ "\377\0\0\0\377\337\0\0\0\377\203hlp\377\2\210\210\210\377\240\244\240" \
+ "\377\203hlp\377\377\0\0\0\377\337\0\0\0\377\203hlp\377\3\240\244\240" \
+ "\377\220\220\212\377ppp\377\377hlp\377\343hlp\377\4ppp\377\220\220\212" \
+ "\377\0\0\0\377\260\260\250\377\377hlp\377\343hlp\377\1\260\260\250\377" \
+ "\203\0\0\0\377\1\260\260\250\377\377hlp\377\341hlp\377\1\260\260\250" \
+ "\377\205\0\0\0\377\3\320\324\310\377\230\234\230\377\200\200\200\377" \
+ "\377hlp\377\333hlp\377\3\200\200\200\377\230\234\230\377\320\324\310" \
+ "\377\203\0\0\0\377")
+
+
diff --git a/packages/psplash/files/fic-gta01/psplash-hand-img.h b/packages/psplash/files/fic-gta01/psplash-hand-img.h
new file mode 100644
index 0000000000..96dc16c723
--- /dev/null
+++ b/packages/psplash/files/fic-gta01/psplash-hand-img.h
@@ -0,0 +1,5377 @@
+/* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */
+
+#define HAND_IMG_ROWSTRIDE (1920)
+#define HAND_IMG_WIDTH (480)
+#define HAND_IMG_HEIGHT (640)
+#define HAND_IMG_BYTES_PER_PIXEL (4) /* 3:RGB, 4:RGBA */
+#define HAND_IMG_RLE_PIXEL_DATA ((uint8*) \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\377\0\0\0\377\257\0\0\0\377\204\1\1\0\377\203\2\2\1\377" \
+ "\214\3\3\1\377\202\2\2\1\377\203\1\1\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\377\0\0\0\377\310\0\0\0\377\3\1\1\0\377\2\2\1\377\3\3\1\377\202\4\3" \
+ "\1\377\202\5\4\1\377\203\5\4\2\377\205\6\5\2\377\202\7\6\2\377\204\6" \
+ "\5\2\377\203\5\4\2\377\202\5\4\1\377\202\4\3\1\377\202\3\3\1\377\1\2" \
+ "\2\1\377\202\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\300" \
+ "\0\0\0\377\7\1\1\0\377\3\3\1\377\4\3\1\377\5\4\2\377\6\5\2\377\7\6\2" \
+ "\377\10\7\3\377\202\11\10\3\377\202\12\11\3\377\203\13\11\3\377\210\14" \
+ "\12\4\377\203\13\11\3\377\1\12\11\3\377\202\11\10\3\377\1\10\7\3\377" \
+ "\202\7\6\2\377\4\6\5\2\377\5\4\2\377\5\4\1\377\4\3\1\377\202\3\3\1\377" \
+ "\2\2\2\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\272" \
+ "\0\0\0\377\12\1\1\0\377\3\3\1\377\5\4\1\377\6\5\2\377\10\7\3\377\12\11" \
+ "\3\377\13\11\3\377\15\13\4\377\16\14\4\377\17\15\5\377\202\17\15\4\377" \
+ "\1\20\16\4\377\203\21\16\5\377\210\22\17\5\377\202\21\16\5\377\202\20" \
+ "\16\4\377\15\17\15\4\377\17\15\5\377\16\14\4\377\15\13\4\377\14\12\4" \
+ "\377\13\11\3\377\12\11\3\377\11\10\3\377\10\7\3\377\7\6\2\377\6\5\2\377" \
+ "\5\4\2\377\5\4\1\377\202\3\3\1\377\202\1\1\0\377\377\0\0\0\377\377\0" \
+ "\0\0\377\377\0\0\0\377\265\0\0\0\377\16\2\2\1\377\4\3\1\377\6\5\2\377" \
+ "\10\7\3\377\13\11\3\377\15\13\4\377\17\15\4\377\20\16\4\377\22\17\5\377" \
+ "\23\20\5\377\24\21\5\377\25\22\6\377\26\23\6\377\27\24\6\377\203\30\25" \
+ "\7\377\210\31\25\7\377\202\30\25\7\377\202\27\24\6\377\24\26\23\6\377" \
+ "\25\22\6\377\24\21\5\377\23\20\5\377\22\17\5\377\21\16\5\377\20\16\4" \
+ "\377\17\15\4\377\16\14\4\377\15\13\4\377\14\12\4\377\12\11\3\377\11\10" \
+ "\3\377\7\6\2\377\6\5\2\377\5\4\1\377\4\3\1\377\3\3\1\377\2\2\1\377\1" \
+ "\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\261\0\0\0\377\15\3" \
+ "\3\1\377\5\4\1\377\7\6\2\377\12\11\3\377\15\13\4\377\20\16\4\377\22\17" \
+ "\5\377\25\22\6\377\27\24\6\377\30\25\7\377\31\25\7\377\33\27\10\377\34" \
+ "\30\10\377\202\35\31\10\377\1\36\32\11\377\204\37\33\11\377\204\40\33" \
+ "\11\377\203\37\33\11\377\202\36\32\11\377\4\35\31\10\377\34\30\10\377" \
+ "\33\27\10\377\32\26\7\377\202\31\25\7\377\20\30\25\7\377\27\24\6\377" \
+ "\25\22\6\377\24\21\5\377\22\17\5\377\21\16\5\377\20\16\4\377\17\15\5" \
+ "\377\15\13\4\377\13\11\3\377\12\11\3\377\10\7\3\377\6\5\2\377\5\4\2\377" \
+ "\4\3\1\377\3\3\1\377\202\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0" \
+ "\0\0\377\255\0\0\0\377\15\3\3\1\377\5\4\2\377\10\7\3\377\14\12\4\377" \
+ "\17\15\4\377\22\17\5\377\25\22\6\377\30\25\7\377\32\26\7\377\34\30\10" \
+ "\377\37\33\11\377!\34\11\377\"\35\12\377\202#\36\12\377\202$\37\13\377" \
+ "\202%!\13\377\210&!\13\377\1%!\13\377\202$\37\13\377\203#\36\12\377\27" \
+ "\"\35\12\377!\34\11\377\40\33\11\377\37\33\11\377\35\31\10\377\34\30" \
+ "\10\377\32\26\7\377\31\25\7\377\30\25\7\377\26\23\6\377\24\21\5\377\23" \
+ "\20\5\377\21\16\5\377\17\15\4\377\16\14\4\377\14\12\4\377\12\11\3\377" \
+ "\10\7\3\377\6\5\2\377\5\4\1\377\4\3\1\377\2\2\1\377\1\1\0\377\377\0\0" \
+ "\0\377\377\0\0\0\377\377\0\0\0\377\251\0\0\0\377\22\1\1\0\377\3\3\1\377" \
+ "\5\4\2\377\11\10\3\377\15\13\4\377\20\16\4\377\24\21\5\377\30\25\7\377" \
+ "\32\26\7\377\36\32\11\377!\34\11\377#\36\12\377%!\13\377&!\13\377'#\14" \
+ "\377($\14\377)%\14\377*%\15\377\203+&\15\377\210,'\15\377\202+&\15\377" \
+ "\1*%\15\377\202)%\14\377\2($\14\377'#\14\377\202&!\13\377\26%!\13\377" \
+ "$\37\13\377#\36\12\377\"\35\12\377\40\33\11\377\36\32\11\377\34\30\10" \
+ "\377\32\26\7\377\31\25\7\377\27\24\6\377\25\22\6\377\23\20\5\377\21\16" \
+ "\5\377\17\15\4\377\16\14\4\377\14\12\4\377\12\11\3\377\7\6\2\377\5\4" \
+ "\2\377\4\3\1\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377" \
+ "\0\0\0\377\246\0\0\0\377\21\1\1\0\377\3\3\1\377\5\4\2\377\11\10\3\377" \
+ "\16\14\4\377\21\16\5\377\25\22\6\377\31\25\7\377\35\31\10\377!\34\11" \
+ "\377#\36\12\377&!\13\377)%\14\377+&\15\377,'\16\377-(\16\377.)\16\377" \
+ "\202/*\16\377\2020+\17\377\2121,\17\377\2020+\17\377\1/*\16\377\202." \
+ ")\16\377\33-(\16\377,'\16\377,'\15\377+&\15\377)%\14\377($\14\377'#\14" \
+ "\377&!\13\377$\37\13\377#\36\12\377\"\35\12\377\40\33\11\377\35\31\10" \
+ "\377\33\27\10\377\31\25\7\377\30\25\7\377\25\22\6\377\23\20\5\377\21" \
+ "\16\5\377\17\15\4\377\15\13\4\377\13\11\3\377\11\10\3\377\6\5\2\377\5" \
+ "\4\1\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\244\0\0\0\377\20\3\3\1\377\5\4\2\377\11\10\3\377\16\14\4\377\22\17\5" \
+ "\377\26\23\6\377\32\26\7\377\37\33\11\377#\36\12\377&!\13\377)%\14\377" \
+ ",'\15\377.)\16\3770+\17\3772-\17\3773-\17\377\2024.\20\377\2035/\17\377" \
+ "\21260\20\377\2035/\17\377\1""4.\20\377\2023-\17\377\34""2-\17\3771," \
+ "\17\3770+\17\377/*\16\377.)\16\377,'\16\377,'\15\377*%\15\377)%\14\377" \
+ "'#\14\377&!\13\377$\37\13\377#\36\12\377\40\33\11\377\36\32\11\377\33" \
+ "\27\10\377\31\25\7\377\27\24\6\377\25\22\6\377\22\17\5\377\20\16\4\377" \
+ "\16\14\4\377\14\12\4\377\11\10\3\377\7\6\2\377\5\4\1\377\3\3\1\377\1" \
+ "\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\241\0\0\0\377\16\3" \
+ "\3\1\377\5\4\2\377\11\10\3\377\15\13\4\377\21\16\5\377\27\24\6\377\33" \
+ "\27\10\377\37\33\11\377#\36\12\377&!\13\377+&\15\377-(\16\3771,\17\377" \
+ "4.\20\377\20260\20\377\20371\20\377\20482\20\377\20792\21\377\20582\20" \
+ "\377\20271\20\377\20360\20\377\34""5/\17\3774.\20\3773-\17\3772-\17\377" \
+ "1,\17\377/*\16\377.)\16\377,'\16\377+&\15\377)%\14\377'#\14\377&!\13" \
+ "\377$\37\13\377#\36\12\377\40\33\11\377\35\31\10\377\32\26\7\377\31\25" \
+ "\7\377\26\23\6\377\23\20\5\377\21\16\5\377\17\15\5\377\14\12\4\377\12" \
+ "\11\3\377\7\6\2\377\5\4\1\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0" \
+ "\0\0\377\377\0\0\0\377\236\0\0\0\377\17\2\2\1\377\5\4\1\377\10\7\3\377" \
+ "\15\13\4\377\21\16\5\377\26\23\6\377\32\26\7\377\37\33\11\377$\37\13" \
+ "\377'#\14\377,'\15\377/*\16\3773-\17\37760\20\37771\20\377\23292\21\377" \
+ "\20282\20\377\1""71\20\377\20260\20\377\31""5/\17\3774.\20\3772-\17\377" \
+ "0+\17\377/*\16\377-(\16\377,'\15\377)%\14\377'#\14\377&!\13\377#\36\12" \
+ "\377\"\35\12\377\37\33\11\377\34\30\10\377\31\25\7\377\27\24\6\377\24" \
+ "\21\5\377\21\16\5\377\17\15\5\377\14\12\4\377\11\10\3\377\7\6\2\377\5" \
+ "\4\1\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377" \
+ "\233\0\0\0\377\33\1\1\0\377\4\3\1\377\7\6\2\377\14\12\4\377\20\16\4\377" \
+ "\25\22\6\377\32\26\7\377\37\33\11\377$\37\13\377'#\14\377,'\15\3770+" \
+ "\17\3774.\20\377A;\34\377NH,\377YT8\377a[B\377jeM\377zt\\\377\221\214" \
+ "q\377\243\236\177\377\251\245\205\377\273\265\223\377\307\302\242\377" \
+ "\322\315\252\377\320\312\241\377\320\313\241\377\202\345\340\261\377" \
+ "\14\344\337\257\377\344\336\252\377\336\327\241\377\311\300\214\377\305" \
+ "\275\204\377\303\273\201\377\254\243j\377\237\227`\377\217\206R\377}" \
+ "uF\377^V-\377JC\35\377\20592\21\377\20282\20\377\1""71\20\377\20260\20" \
+ "\377\26""4.\20\3772-\17\3771,\17\377/*\16\377,'\16\377+&\15\377)%\14" \
+ "\377&!\13\377$\37\13\377#\36\12\377\40\33\11\377\34\30\10\377\31\25\7" \
+ "\377\27\24\6\377\24\21\5\377\21\16\5\377\17\15\5\377\14\12\4\377\11\10" \
+ "\3\377\6\5\2\377\4\3\1\377\2\2\1\377\377\0\0\0\377\377\0\0\0\377\377" \
+ "\0\0\0\377\232\0\0\0\377.\3\3\1\377\6\5\2\377\13\11\3\377\17\15\4\377" \
+ "\24\21\5\377\31\25\7\377\37\33\11\377#\36\12\37730\31\377LH3\377daL\377" \
+ "to\\\377\204\200n\377\211\206s\377\210\205r\377\210\204r\377\226\222" \
+ "~\377\222\216z\377\232\226\200\377\211\206r\377\206\201o\377\205\200" \
+ "n\377\204\200n\377\203\177l\377\203~k\377\202}k\377\201|j\377\200|i\377" \
+ "\212\207q\377\223\217w\377\233\226}\377\247\241\206\377\265\261\222\377" \
+ "\300\273\232\377\320\313\246\377\345\340\264\377\344\337\256\377\344" \
+ "\336\247\377\344\335\241\377\343\333\232\377\343\332\225\377\332\320" \
+ "\215\377\271\260t\377\232\221Z\377wpA\377OH#\377\20492\21\377\2""82\20" \
+ "\37771\20\377\20260\20\377\25""4.\20\3772-\17\3770+\17\377.)\16\377," \
+ "'\15\377*%\15\377'#\14\377&!\13\377#\36\12\377\40\33\11\377\35\31\10" \
+ "\377\31\25\7\377\27\24\6\377\24\21\5\377\21\16\5\377\16\14\4\377\13\11" \
+ "\3\377\10\7\3\377\5\4\2\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0" \
+ "\0\377\377\0\0\0\377\227\0\0\0\3773\2\2\1\377\5\4\1\377\11\10\3\377\16" \
+ "\14\4\377\23\20\5\377#\37\22\377B\77""1\377`]O\377xuh\377\204\201t\377" \
+ "\206\203u\377\210\204t\377\210\205s\377\210\205r\377\210\204r\377\210" \
+ "\203r\377\212\206s\377\244\240\210\377\277\272\235\377\277\273\235\377" \
+ "\262\256\222\377\235\230\201\377\203\177l\377\203~k\377\202}k\377\201" \
+ "|j\377\200|i\377\200{g\377\177{g\377~zf\377}ye\377~ze\377}yd\377|xd\377" \
+ "{wc\377{wa\377zua\377\216\211q\377\241\235\200\377\272\264\222\377\324" \
+ "\317\250\377\345\340\261\377\344\336\251\377\344\335\240\377\343\333" \
+ "\231\377\343\332\225\377\343\332\224\377\323\311\206\377\252\241g\377" \
+ "|tD\377JC\35\377\20392\21\377\30""82\20\37771\20\37760\20\3775/\17\377" \
+ "3-\17\3771,\17\377/*\16\377,'\16\377+&\15\377($\14\377&!\13\377#\36\12" \
+ "\377\40\33\11\377\35\31\10\377\31\25\7\377\26\23\6\377\23\20\5\377\20" \
+ "\16\4\377\15\13\4\377\12\11\3\377\7\6\2\377\5\4\1\377\3\3\1\377\1\1\0" \
+ "\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\224\0\0\0\377\22\1\1\0" \
+ "\377\3\3\1\377\7\6\2\377\27\25\20\377@>7\377caX\377~|t\377\177}s\377" \
+ "\201~r\377\203\200s\377\205\202s\377\207\203s\377\210\204s\377\210\204" \
+ "r\377\210\203r\377\207\203q\377\250\243\212\377\337\333\270\377\202\346" \
+ "\342\275\377\202\346\342\274\377\16\346\341\274\377\331\324\261\377\246" \
+ "\243\210\377\200|i\377\200{g\377\177{g\377~zf\377}ye\377~ze\377}yd\377" \
+ "|xd\377{wc\377{wa\377zua\377\202yu`\377\21xs^\377xr^\377wr]\377vq\\\377" \
+ "\177zb\377\232\225y\377\276\271\225\377\334\327\254\377\344\337\255\377" \
+ "\344\335\243\377\343\333\231\377\343\332\225\377\343\332\224\377\343" \
+ "\332\223\377\277\267w\377\216\206Q\377QJ#\377\20392\21\377\26""82\20" \
+ "\37771\20\37760\20\3774.\20\3772-\17\377/*\16\377-(\16\377+&\15\377(" \
+ "$\14\377&!\13\377#\36\12\377\37\33\11\377\34\30\10\377\31\25\7\377\25" \
+ "\22\6\377\22\17\5\377\17\15\5\377\14\12\4\377\10\7\3\377\5\4\2\377\3" \
+ "\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\223\0\0" \
+ "\0\377\25\5\5\4\377.-+\377]\\Y\377wvr\377yxr\377|zr\377~{r\377\177}r" \
+ "\377\201~r\377\204\200r\377\206\202r\377\207\203r\377\210\203r\377\207" \
+ "\203q\377\206\202p\377\277\273\236\377\346\342\276\377\346\342\275\377" \
+ "\346\342\276\377\346\342\275\377\346\341\276\377\204\346\341\275\377" \
+ "\13\217\212u\377~zf\377}ye\377~ze\377}yd\377{xc\377{wa\377zw`\377yt_" \
+ "\377xt^\377xs_\377\202xr^\377\5wr]\377vq\\\377up[\377uo[\377toZ\377\202" \
+ "soY\377\15rnW\377\220\213n\377\266\260\214\377\333\326\252\377\344\336" \
+ "\252\377\344\335\240\377\343\333\230\377\343\332\225\377\343\332\224" \
+ "\377\343\332\222\377\301\271x\377\207\177K\377H@\33\377\20292\21\377" \
+ "\25""82\20\37771\20\37760\20\3775/\17\3772-\17\377/*\16\377-(\16\377" \
+ "+&\15\377'#\14\377%!\13\377\"\35\12\377\37\33\11\377\33\27\10\377\30" \
+ "\25\7\377\24\21\5\377\20\16\4\377\16\14\4\377\12\11\3\377\7\6\2\377\5" \
+ "\4\1\377\2\2\1\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\220\0\0" \
+ "\0\377\25\21\21\21\377BBA\377jji\377ttq\377utp\377wup\377yxq\377|zq\377" \
+ "~|q\377\177}p\377\202~q\377\204\200q\377\206\202p\377\207\203p\377\206" \
+ "\202p\377\206\201o\377\274\270\234\377\346\342\276\377\346\342\277\377" \
+ "\346\342\276\377\346\341\276\377\205\346\342\276\377\20\324\317\257\377" \
+ "}ye\377~ze\377}yd\377{xc\377zwa\377yt`\377xs_\377vr^\377uq]\377tp]\377" \
+ "tp\\\377up]\377tp\\\377to[\377toZ\377\203soY\377\21rnW\377rmW\377qmV" \
+ "\377plU\377okT\377plU\377\224\217q\377\303\275\226\377\344\337\257\377" \
+ "\344\335\245\377\343\333\232\377\343\332\225\377\343\332\224\377\343" \
+ "\332\223\377\340\327\217\377\252\241e\377f^2\377\20392\21\377\24""82" \
+ "\20\37760\20\3775/\17\3772-\17\377/*\16\377,'\16\377*%\15\377'#\14\377" \
+ "$\37\13\377!\34\11\377\35\31\10\377\31\25\7\377\26\23\6\377\22\17\5\377" \
+ "\17\15\4\377\14\12\4\377\10\7\3\377\5\4\2\377\3\3\1\377\1\1\0\377\377" \
+ "\0\0\0\377\377\0\0\0\377\377\0\0\0\377\214\0\0\0\377\2\27\27\27\377L" \
+ "LL\377\202qqq\377\22rqp\377tsp\377uto\377wuo\377zwo\377|yo\377~{p\377" \
+ "\200}o\377\202~o\377\204\200o\377\206\202o\377\206\201o\377\205\200n" \
+ "\377\243\237\210\377\346\342\277\377\346\342\300\377\346\342\277\377" \
+ "\346\342\300\377\205\346\342\277\377\22\346\342\276\377\266\261\225\377" \
+ "}yd\377|xd\377{wa\377yua\377xs_\377vq^\377tp^\377sp\\\377rn[\377qnZ\377" \
+ "pmZ\377qnY\377qmY\377qmX\377qmW\377qmV\377\202pmV\377\24pmU\377plU\377" \
+ "okT\377oiS\377nhR\377mhQ\377lgP\377lfO\377zuZ\377\255\247\203\377\336" \
+ "\330\251\377\344\336\247\377\343\334\234\377\343\333\226\377\343\332" \
+ "\224\377\343\332\223\377\343\332\222\377\305\274{\377wo@\377;4\23\377" \
+ "\20292\21\377\23""82\20\37760\20\3774.\20\3771,\17\377.)\16\377,'\15" \
+ "\377)%\14\377&!\13\377#\36\12\377\37\33\11\377\33\27\10\377\30\25\7\377" \
+ "\24\21\5\377\20\16\4\377\15\13\4\377\11\10\3\377\6\5\2\377\4\3\1\377" \
+ "\1\1\0\377\377\0\0\0\377\377\0\0\0\377\377\0\0\0\377\211\0\0\0\377\24" \
+ "\31\31\31\377RRR\377qqq\377ppp\377ooo\377ppo\377qqn\377srn\377tsn\377" \
+ "wun\377ywn\377|yn\377}{n\377\200}n\377\202~n\377\204\200n\377\205\200" \
+ "n\377\204\200n\377\212\206r\377\337\333\273\377\210\346\342\300\377\26" \
+ "\346\342\277\377\346\342\300\377\235\230\200\377{wc\377zw`\377yt_\377" \
+ "ws_\377tp^\377sp\\\377qn[\377olZ\377miY\377lhX\377lhW\377kgW\377kgV\377" \
+ "kgU\377lhU\377lhT\377lgU\377lgT\377lgR\377\202mhR\377\23mhQ\377lgP\377" \
+ "lfO\377kfO\377jeN\377ieM\377jeM\377ohP\377\236\230v\377\333\325\246\377" \
+ "\344\336\250\377\343\334\234\377\343\333\226\377\343\332\224\377\343" \
+ "\332\223\377\343\332\222\377\320\307\203\377\177vE\377>7\25\377\2029" \
+ "2\21\377\22""71\20\37760\20\3774.\20\3770+\17\377-(\16\377+&\15\377'" \
+ "#\14\377$\37\13\377!\34\11\377\35\31\10\377\31\25\7\377\26\23\6\377\21" \
+ "\16\5\377\16\14\4\377\12\11\3\377\7\6\2\377\4\3\1\377\2\2\1\377\377\0" \
+ "\0\0\377\377\0\0\0\377\377\0\0\0\377\206\0\0\0\377\21\20\20\20\377LL" \
+ "L\377qqq\377ppp\377ooo\377nnn\377nnm\377onm\377ppm\377rqm\377tsm\377" \
+ "vtl\377ywm\377|ym\377}{m\377\200}m\377\202~m\377\202\203\177l\377\2\203" \
+ "~k\377\267\264\230\377\202\346\342\300\377\206\346\342\301\377\15\346" \
+ "\342\300\377\346\342\301\377\346\342\300\377\210\203m\377zua\377xt^\377" \
+ "vr^\377to\\\377rn[\377olZ\377miY\377jgW\377ifW\377\202hdV\377\11gdU\377" \
+ "gcT\377gcS\377gdS\377gdR\377hdQ\377gdP\377hdP\377idO\377\202ieO\377\2" \
+ "ieN\377jeN\377\202jeM\377\17idL\377hbK\377gcJ\377gaI\377kfL\377\235\227" \
+ "u\377\333\324\245\377\344\335\246\377\343\333\232\377\343\333\226\377" \
+ "\343\332\224\377\343\332\223\377\343\332\222\377\316\304\200\377yqA\377" \
+ "\20292\21\377\22""82\20\37771\20\3775/\17\3772-\17\377/*\16\377,'\16" \
+ "\377)%\14\377&!\13\377#\36\12\377\37\33\11\377\32\26\7\377\27\24\6\377" \
+ "\23\20\5\377\17\15\4\377\13\11\3\377\10\7\3\377\5\4\1\377\2\2\1\377\377" \
+ "\0\0\0\377\377\0\0\0\377\377\0\0\0\377\203\0\0\0\377\7\6\6\6\377\77\77" \
+ "\77\377mmm\377ppp\377ooo\377nnn\377mmm\377\202lll\377\16mmk\377pnl\377" \
+ "rql\377tsl\377vtk\377ywk\377{yk\377}{l\377\177|k\377\202~k\377\203~k" \
+ "\377\202}k\377\213\207q\377\340\335\275\377\202\346\342\302\377\1\346" \
+ "\342\301\377\204\346\342\302\377\202\346\342\301\377\22\345\342\301\377" \
+ "\341\336\275\377yu`\377xs^\377vr]\377to[\377rnZ\377nkY\377lhW\377jgW" \
+ "\377gcU\377eaT\377c`S\377b_R\377`]Q\377a^Q\377a^P\377a^O\377\202a_N\377" \
+ "\14b_M\377b`M\377c`M\377c_L\377daL\377eaL\377e`K\377faJ\377gcJ\377gc" \
+ "I\377gaI\377faH\377\202e`G\377\10d_F\377idJ\377\246\240{\377\340\330" \
+ "\247\377\344\335\243\377\343\333\230\377\343\332\225\377\343\332\224" \
+ "\377\202\343\332\222\377\2\305\274z\377c[0\377\20292\21\377\22""82\20" \
+ "\37760\20\3774.\20\3771,\17\377-(\16\377+&\15\377'#\14\377#\36\12\377" \
+ "\40\33\11\377\34\30\10\377\30\25\7\377\24\21\5\377\20\16\4\377\14\12" \
+ "\4\377\10\7\3\377\5\4\2\377\3\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0" \
+ "\0\377\377\0\0\0\377\3###\377ddd\377ooo\377\202nnn\377\24mmm\377lll\377" \
+ "kkk\377jjj\377kkj\377lli\377oni\377qoj\377trj\377vsj\377yvj\377{yj\377" \
+ "}{j\377\177{j\377\201}k\377\201|j\377\200|i\377\261\255\223\377\346\342" \
+ "\302\377\346\342\303\377\203\346\342\302\377\1\346\342\303\377\205\346" \
+ "\342\302\377\15\322\314\257\377xr^\377wr]\377tp\\\377rnZ\377nkX\377k" \
+ "gV\377heV\377ebT\377b_R\377`]Q\377^[P\377\\ZO\377\202[XM\377\17[XL\377" \
+ "\\XL\377\\YL\377]YL\377]ZL\377^ZK\377^[J\377^[I\377_[I\377`[I\377`\\" \
+ "H\377a]H\377b]H\377b^G\377c_F\377\202d_F\377\17d_E\377c^D\377b]D\377" \
+ "a[C\377qkO\377\274\266\213\377\345\336\250\377\343\334\235\377\343\333" \
+ "\227\377\343\332\225\377\343\332\223\377\343\332\222\377\343\332\221" \
+ "\377\254\242f\377MF\40\377\20292\21\377\21""71\20\3775/\17\3772-\17\377" \
+ "/*\16\377,'\15\377($\14\377$\37\13\377\"\35\12\377\35\31\10\377\31\25" \
+ "\7\377\25\22\6\377\21\16\5\377\15\13\4\377\11\10\3\377\5\4\2\377\3\3" \
+ "\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\374\0\0\0\377\4\11\11\11" \
+ "\377JJJ\377ooo\377nnn\377\202mmm\377\2lll\377kkk\377\202jjj\377\17jj" \
+ "i\377jih\377lkh\377mlg\377poh\377sqi\377vsi\377xuh\377{wi\377~{i\377" \
+ "\177{i\377\200|i\377\200{g\377\200{i\377\331\325\266\377\205\346\342" \
+ "\303\377\206\346\343\303\377\15\303\300\242\377vq\\\377up[\377soZ\377" \
+ "olX\377kgV\377heU\377eaS\377a^Q\377^[O\377[XN\377XVM\377VTL\377\202U" \
+ "SK\377\202VSJ\377\4VSI\377VTH\377WTH\377WTG\377\202YVG\377\15ZUF\377" \
+ "ZVF\377VR\77\377RM:\377TP:\377UP:\377VQ:\377WR9\377XS:\377YU9\377YT8" \
+ "\377ZU9\377`[A\377\202_Z@\377\6\207\201_\377\326\316\236\377\344\335" \
+ "\244\377\343\333\232\377\343\333\226\377\343\332\224\377\202\343\332" \
+ "\222\377\2\334\321\212\377\201yF\377\20292\21\377\21""82\20\37760\20" \
+ "\3774.\20\3770+\17\377,'\16\377)%\14\377&!\13\377#\36\12\377\36\32\11" \
+ "\377\32\26\7\377\26\23\6\377\21\16\5\377\16\14\4\377\12\11\3\377\6\5" \
+ "\2\377\4\3\1\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\372\0\0\0\377" \
+ "\5###\377fff\377nnn\377mmm\377lll\377\202kkk\377\202jjj\377\1iii\377" \
+ "\202hhh\377\17iig\377jjf\377mlg\377png\377sqg\377urf\377xuh\377zwh\377" \
+ "}zh\377~{h\377\177{g\377~zf\377\232\226\200\377\346\342\303\377\346\342" \
+ "\304\377\211\346\343\304\377$\346\342\304\377\270\263\231\377uo[\377" \
+ "soY\377qmW\377mjV\377ieT\377daR\377a^Q\377]ZN\377YVM\377VTL\377SQK\377" \
+ "POI\377OMH\377ONH\377OMG\377OMF\377MKC\377DB8\37796+\3771-!\377-*\34" \
+ "\377(%\24\377&\"\17\377#\36\12\377%!\13\377'#\14\377)%\14\377,'\15\377" \
+ "-(\16\3770+\17\3773-\17\3775/\17\37771\20\37782\20\377\20292\21\377\15" \
+ ">7\27\377C<\35\377NG(\377\255\245w\377\345\335\243\377\343\333\233\377" \
+ "\343\333\227\377\343\332\225\377\343\332\223\377\343\332\222\377\343" \
+ "\332\221\377\271\260p\377QJ#\377\20292\21\377\20""71\20\3775/\17\377" \
+ "1,\17\377-(\16\377+&\15\377&!\13\377#\36\12\377\37\33\11\377\32\26\7" \
+ "\377\27\24\6\377\22\17\5\377\16\14\4\377\12\11\3\377\6\5\2\377\4\3\1" \
+ "\377\1\1\0\377\377\0\0\0\377\377\0\0\0\377\367\0\0\0\377\6\3\3\3\377" \
+ "===\377nnn\377mmm\377lll\377kkk\377\203jjj\377\22iii\377hhh\377ggg\377" \
+ "fff\377ggf\377hge\377jie\377lje\377omf\377rpf\377ure\377wtf\377zwf\377" \
+ "}zf\377}ze\377}ye\377~ze\377\272\267\234\377\204\346\343\304\377\202" \
+ "\346\343\305\377\1\346\343\304\377\202\346\343\305\377'\346\342\304\377" \
+ "\346\342\305\377\346\342\304\377\255\251\216\377soY\377snW\377okV\377" \
+ "kgT\377gdS\377b_P\377^[O\377XVL\377USK\377QOI\377MLH\377JJF\377A@<\377" \
+ "0/+\377!\37\32\377\24\23\15\377\16\14\4\377\17\15\4\377\21\16\5\377\23" \
+ "\20\5\377\25\22\6\377\27\24\6\377\31\25\7\377\34\30\10\377\37\33\11\377" \
+ "\