aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/u-boot
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2009-10-20 20:15:40 +0200
committerKoen Kooi <koen@openembedded.org>2009-10-21 15:27:27 +0200
commitd57e14b9e27ed8360d49446361c5f7607ea34d88 (patch)
tree5537320fb1b8a6022ae998a458c051c5bd7721a8 /recipes/u-boot
parent9566f5fa6724f0beae77c206c9c391b177060fb8 (diff)
downloadopenembedded-d57e14b9e27ed8360d49446361c5f7607ea34d88.tar.gz
u-boot: fix fw_env logic, update beagle and touchbook
Diffstat (limited to 'recipes/u-boot')
-rw-r--r--recipes/u-boot/files/beagleboard/fw_env.config8
-rw-r--r--recipes/u-boot/files/fw_env.config7
-rw-r--r--recipes/u-boot/files/omap3-touchbook/fw_env.config6
-rw-r--r--recipes/u-boot/files/rootfs.patch62
-rw-r--r--recipes/u-boot/u-boot-git/600mhz.patch11
-rw-r--r--recipes/u-boot/u-boot-git/ai-logo.patch1336
-rw-r--r--recipes/u-boot/u-boot-git/mmcinit.patch20
-rw-r--r--recipes/u-boot/u-boot-git/omap3-touchbook/new-pinmux.patch73
-rw-r--r--recipes/u-boot/u-boot-git/power.patch13
-rw-r--r--recipes/u-boot/u-boot-git/spi3.patch29
-rw-r--r--recipes/u-boot/u-boot-git/spi4.patch14
-rw-r--r--recipes/u-boot/u-boot-git/touchbook-config.patch11
-rw-r--r--recipes/u-boot/u-boot.inc8
-rw-r--r--recipes/u-boot/u-boot_git.bb18
14 files changed, 1590 insertions, 26 deletions
diff --git a/recipes/u-boot/files/beagleboard/fw_env.config b/recipes/u-boot/files/beagleboard/fw_env.config
new file mode 100644
index 0000000000..8fc96f7572
--- /dev/null
+++ b/recipes/u-boot/files/beagleboard/fw_env.config
@@ -0,0 +1,8 @@
+# Configuration file for fw_(printenv/saveenv) utility.
+# Up to two entries are valid, in this case the redundant
+# environment sector is assumed present.
+# Notice, that the "Number of sectors" is ignored on NOR.
+
+# MTD device name Device offset Env. size Flash sector size Number of sectors
+/dev/mtd2 0x0000 0x20000 0x40000
+
diff --git a/recipes/u-boot/files/fw_env.config b/recipes/u-boot/files/fw_env.config
new file mode 100644
index 0000000000..940308f28b
--- /dev/null
+++ b/recipes/u-boot/files/fw_env.config
@@ -0,0 +1,7 @@
+# Configuration file for fw_(printenv/saveenv) utility.
+# Up to two entries are valid, in this case the redundand
+# environment sector is assumed present.
+
+# MTD device name Device offset Env. size Flash sector size
+#/dev/mtd1 0x0000 0x4000 0x4000
+#/dev/mtd2 0x0000 0x4000 0x4000
diff --git a/recipes/u-boot/files/omap3-touchbook/fw_env.config b/recipes/u-boot/files/omap3-touchbook/fw_env.config
new file mode 100644
index 0000000000..a7bfec1ebb
--- /dev/null
+++ b/recipes/u-boot/files/omap3-touchbook/fw_env.config
@@ -0,0 +1,6 @@
+# Configuration file for fw_(printenv/saveenv) utility.
+# Up to two entries are valid, in this case the redundand
+# environment sector is assumed present.
+
+# MTD device name Device offset Env. size Flash sector size
+/dev/mtd2 0x0000 0x20000 0x20000
diff --git a/recipes/u-boot/files/rootfs.patch b/recipes/u-boot/files/rootfs.patch
new file mode 100644
index 0000000000..655c040500
--- /dev/null
+++ b/recipes/u-boot/files/rootfs.patch
@@ -0,0 +1,62 @@
+--- git/include/configs/omap3_overo.h-orig 2009-09-17 13:06:08.000000000 -0700
++++ git/include/configs/omap3_overo.h 2009-09-17 13:06:49.000000000 -0700
+@@ -158,20 +158,24 @@
+ "vram=12M\0" \
+ "dvimode=1024x768MR-16@60\0" \
+ "defaultdisplay=dvi\0" \
++ "mmcroot=/dev/mmcblk0p2 rw\0" \
++ "mmcrootfstype=ext3 rootwait\0" \
++ "nandroot=/dev/mtdblock4 rw\0" \
++ "nandrootfstype=jffs2\0" \
+ "mmcargs=setenv bootargs console=${console} " \
+ "vram=${vram} " \
+ "omapfb.mode=dvi:${dvimode} " \
+ "omapfb.debug=y " \
+ "omapdss.def_disp=${defaultdisplay} " \
+- "root=/dev/mmcblk0p2 rw " \
+- "rootfstype=ext3 rootwait\0" \
++ "root=${mmcroot} " \
++ "rootfstype=${mmcrootfstype}\0" \
+ "nandargs=setenv bootargs console=${console} " \
+ "vram=${vram} " \
+ "omapfb.mode=dvi:${dvimode} " \
+ "omapfb.debug=y " \
+ "omapdss.def_disp=${defaultdisplay} " \
+- "root=/dev/mtdblock4 rw " \
+- "rootfstype=jffs2\0" \
++ "root=${nandroot} " \
++ "rootfstype=${nandrootfstype}\0" \
+ "loadbootscript=fatload mmc 0 ${loadaddr} boot.scr\0" \
+ "bootscript=echo Running bootscript from mmc ...; " \
+ "source ${loadaddr}\0" \
+--- git/include/configs/omap3_beagle.h-orig 2009-09-17 14:48:55.000000000 -0700
++++ git/include/configs/omap3_beagle.h 2009-09-19 22:15:01.000000000 -0700
+@@ -167,20 +167,24 @@
+ "vram=12M\0" \
+ "dvimode=1024x768MR-16@60\0" \
+ "defaultdisplay=dvi\0" \
++ "mmcroot=/dev/mmcblk0p2 rw\0" \
++ "mmcrootfstype=ext3 rootwait\0" \
++ "nandroot=/dev/mtdblock4 rw\0" \
++ "nandrootfstype=jffs2\0" \
+ "mmcargs=setenv bootargs console=${console} " \
+ "vram=${vram} " \
+ "omapfb.mode=dvi:${dvimode} " \
+ "omapfb.debug=y " \
+ "omapdss.def_disp=${defaultdisplay} " \
+- "root=/dev/mmcblk0p2 rw " \
+- "rootfstype=ext3 rootwait\0" \
++ "root=${mmcroot} " \
++ "rootfstype=${mmcrootfstype}\0" \
+ "nandargs=setenv bootargs console=${console} " \
+ "vram=${vram} " \
+ "omapfb.mode=dvi:${dvimode} " \
+ "omapfb.debug=y " \
+ "omapdss.def_disp=${defaultdisplay} " \
+- "root=/dev/mtdblock4 rw " \
+- "rootfstype=jffs2\0" \
++ "root=${nandroot} " \
++ "rootfstype=${nandrootfstype}\0" \
+ "loadbootscript=fatload mmc 0 ${loadaddr} boot.scr\0" \
+ "bootscript=echo Running bootscript from mmc ...; " \
+ "source ${loadaddr}\0" \
diff --git a/recipes/u-boot/u-boot-git/600mhz.patch b/recipes/u-boot/u-boot-git/600mhz.patch
new file mode 100644
index 0000000000..65b1a439a6
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/600mhz.patch
@@ -0,0 +1,11 @@
+--- a/include/asm-arm/arch-omap3/clocks_omap3.h
++++ b/include/asm-arm/arch-omap3/clocks_omap3.h
+@@ -71,7 +71,7 @@
+ #define MPU_FSEL_13_ES1 0x03
+ #define MPU_M2_13_ES1 0x01
+
+-#define MPU_M_13_ES2 0x1F4
++#define MPU_M_13_ES2 0x258
+ #define MPU_N_13_ES2 0x0C
+ #define MPU_FSEL_13_ES2 0x03
+ #define MPU_M2_13_ES2 0x01
diff --git a/recipes/u-boot/u-boot-git/ai-logo.patch b/recipes/u-boot/u-boot-git/ai-logo.patch
new file mode 100644
index 0000000000..0a8087fc9c
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/ai-logo.patch
@@ -0,0 +1,1336 @@
+diff -Nur a/board/omap3/beagle/beagle.c b/board/omap3/beagle/beagle.c
+--- a/board/omap3/beagle/beagle.c 2009-04-09 02:05:04.000000000 -0700
++++ b/board/omap3/beagle/beagle.c 2009-04-14 14:40:45.000000000 -0700
+@@ -35,9 +35,147 @@
+ #include <asm/arch/sys_proto.h>
+ #include <asm/mach-types.h>
+ #include "beagle.h"
++#include "logo.h"
++
++#define LOGO_SCREEN_WIDTH 1024
++#define LOGO_SCREEN_HEIGHT 600
++#define LOGO_FILL_COLOUR 0x0
+
+ static int beagle_revision_c;
+
++void dss_init(void)
++{
++ unsigned int i, k=0;
++ unsigned char pixel[3];
++ int offset = 0;
++
++ /* Fill up to the logo */
++ for (i = 0; i < 2 * (LOGO_SCREEN_WIDTH * ((LOGO_SCREEN_HEIGHT/2) - (height/2))); i += 2) {
++ *((unsigned short *)(0x80500000 + i)) = LOGO_FILL_COLOUR;
++ }
++ offset += i;
++
++ /* Paint the image data */
++ for (i = 0; i < height; i++) {
++ for (k = 0; k < LOGO_SCREEN_WIDTH; k++) {
++ if(k < (LOGO_SCREEN_WIDTH / 2 - width / 2) || k >= (LOGO_SCREEN_WIDTH / 2 + width / 2))
++ *((unsigned short *)(0x80500000 + offset + 2*k)) = LOGO_FILL_COLOUR;
++ else {
++ HEADER_PIXEL(header_data, pixel);
++ *((unsigned short *)(0x80500000 + offset + 2*k)) =
++ ((((pixel[0])&0xf8) << 8) |
++ (((pixel[1])&0xfc) << 3) |
++ (((pixel[2])&0xf8) >> 3));
++ }
++ }
++
++ offset += 2 * LOGO_SCREEN_WIDTH;
++ }
++
++ /* Fill the rest */
++ for (i = 0; i < 2 * (LOGO_SCREEN_WIDTH * ((LOGO_SCREEN_HEIGHT/2) - (height/2))); i += 2) {
++ *((unsigned short *)(0x80500000 + offset + i)) = LOGO_FILL_COLOUR;
++ }
++
++ *((uint *) 0x48310034) = 0xfefffedf;
++ *((uint *) 0x48310094) = 0x01000120;
++ *((uint *) 0x48004D44) = 0x0001b00c;
++ *((uint *) 0x48004E40) = 0x00001002;
++ *((uint *) 0x48004D00) = 0x00370037;
++
++ *((uint *) 0x48050C00) = 0x00000002;
++ *((uint *) 0x48050C04) = 0x0000001B;
++ *((uint *) 0x48050C08) = 0x00000040;
++ *((uint *) 0x48050C0C) = 0x00000000;
++ *((uint *) 0x48050C10) = 0x00000000;
++ *((uint *) 0x48050C14) = 0x00008000;
++ *((uint *) 0x48050C18) = 0x00000000;
++ *((uint *) 0x48050C1C) = 0x00008359;
++ *((uint *) 0x48050C20) = 0x0000020C;
++ *((uint *) 0x48050C24) = 0x00000000;
++ *((uint *) 0x48050C28) = 0x043F2631;
++ *((uint *) 0x48050C2C) = 0x00000024;
++ *((uint *) 0x48050C30) = 0x00000130;
++ *((uint *) 0x48050C34) = 0x00000198;
++ *((uint *) 0x48050C38) = 0x000001C0;
++ *((uint *) 0x48050C3C) = 0x0000006A;
++ *((uint *) 0x48050C40) = 0x0000005C;
++ *((uint *) 0x48050C44) = 0x00000000;
++ *((uint *) 0x48050C48) = 0x00000001;
++ *((uint *) 0x48050C4C) = 0x0000003F;
++ *((uint *) 0x48050C50) = 0x21F07C1F;
++ *((uint *) 0x48050C54) = 0x00000000;
++ *((uint *) 0x48050C58) = 0x00000015;
++ *((uint *) 0x48050C5C) = 0x00001400;
++ *((uint *) 0x48050C60) = 0x00000000;
++ *((uint *) 0x48050C64) = 0x069300F4;
++ *((uint *) 0x48050C68) = 0x0016020C;
++ *((uint *) 0x48050C6C) = 0x00060107;
++ *((uint *) 0x48050C70) = 0x008D034E;
++ *((uint *) 0x48050C74) = 0x000F0359;
++ *((uint *) 0x48050C78) = 0x01A00000;
++ *((uint *) 0x48050C7C) = 0x020501A0;
++ *((uint *) 0x48050C80) = 0x01AC0024;
++ *((uint *) 0x48050C84) = 0x020D01AC;
++ *((uint *) 0x48050C88) = 0x00000006;
++ *((uint *) 0x48050C8C) = 0x00000000;
++ *((uint *) 0x48050C90) = 0x03480079;
++ *((uint *) 0x48050C94) = 0x02040024;
++ *((uint *) 0x48050C98) = 0x00000000;
++ *((uint *) 0x48050C9C) = 0x00000000;
++ *((uint *) 0x48050CA0) = 0x0001008A;
++ *((uint *) 0x48050CA4) = 0x01AC0106;
++ *((uint *) 0x48050CA8) = 0x01060006;
++ *((uint *) 0x48050CAC) = 0x00000000;
++ *((uint *) 0x48050CB0) = 0x00140001;
++ *((uint *) 0x48050CB4) = 0x00010001;
++ *((uint *) 0x48050CB8) = 0x00FF0000;
++ *((uint *) 0x48050CBC) = 0x00000000;
++ *((uint *) 0x48050CC0) = 0x00000000;
++ *((uint *) 0x48050CC4) = 0x0000000D;
++ *((uint *) 0x48050CC8) = 0x00000000;
++ *((uint *) 0x48050010) = 0x00000001;
++ *((uint *) 0x48050040) = 0x00000078;
++ *((uint *) 0x48050044) = 0x00000000;
++ *((uint *) 0x48050048) = 0x00000000;
++ *((uint *) 0x48050050) = 0x00000000;
++ *((uint *) 0x48050058) = 0x00000000;
++ *((uint *) 0x48050410) = 0x00002015;
++ *((uint *) 0x48050414) = 0x00000001;
++ *((uint *) 0x48050444) = 0x00000004;
++ *((uint *) 0x4805044c) = 0xFFFFFFFF;
++ *((uint *) 0x48050450) = 0x00000000;
++ *((uint *) 0x48050454) = 0x00000000;
++ *((uint *) 0x48050458) = 0x00000000;
++ *((uint *) 0x48050464) = 0x02600202;
++ *((uint *) 0x48050468) = 0x00700200;
++ *((uint *) 0x4805046c) = 0x00000000;
++ *((uint *) 0x48050470) = 0x00010007;
++ *((uint *) 0x48050478) = 0x00ef027f;
++ *((uint *) 0x4805047c) = 0x02ff03ff;
++ *((uint *) 0x48050480) = 0x80500000;
++ *((uint *) 0x48050484) = 0x80500000;
++ *((uint *) 0x48050488) = 0x00000000;
++ *((uint *) 0x4805048c) = 0x02ff03ff;
++ *((uint *) 0x480504a0) = 0x0000008d;
++ *((uint *) 0x480504a4) = 0x03fc03bc;
++ *((uint *) 0x480504a8) = 0x00000400;
++ *((uint *) 0x480504ac) = 0x00000001;
++ *((uint *) 0x480504b0) = 0x00000001;
++ *((uint *) 0x480504b4) = 0x00000000;
++ *((uint *) 0x480504b8) = 0x807ff000;
++ udelay(1000);
++ *((uint *) 0x48050440) = 0x0001836b;
++ udelay(1000);
++ *((uint *) 0x48050440) = 0x0001836b;
++ udelay(1000);
++ *((uint *) 0x48050440) = 0x0001836b;
++ udelay(1000);
++
++ /* Turn on GPT9 PWM */
++ *((uint *) 0x49040024) = 0x80;
++}
++
+ /*
+ * Routine: board_init
+ * Description: Early hardware init.
+@@ -118,6 +252,9 @@
+
+ dieid_num_r();
+
++ /* Touch Book logo */
++ dss_init();
++
+ return 0;
+ }
+
+diff -Nur a/board/omap3/beagle/logo.h b/board/omap3/beagle/logo.h
+--- a/board/omap3/beagle/logo.h 1969-12-31 16:00:00.000000000 -0800
++++ b/board/omap3/beagle/logo.h 2009-04-14 14:10:52.000000000 -0700
+@@ -0,0 +1,1171 @@
++/* GIMP header image file format (RGB): /Documents/Desktop/u-boot-black.h */
++
++static unsigned int width = 136;
++static unsigned int height = 136;
++
++/* Call this macro repeatedly. After each use, the pixel data can be extracted */
++
++#define HEADER_PIXEL(data,pixel) {\
++ pixel[0] = (((data[0] - 33) << 2) | ((data[1] - 33) >> 4)); \
++ pixel[1] = ((((data[1] - 33) & 0xF) << 4) | ((data[2] - 33) >> 2)); \
++ pixel[2] = ((((data[2] - 33) & 0x3) << 6) | ((data[3] - 33))); \
++ data += 4; \
++}
++static char *header_data =
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!(R]?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(RY?7VB9F:+3YO$A````````````"
++ "````````O,;WB)'#1E\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(RY?"
++ "B)'\"````````````````````````````````````````````````Y?$@:W2E%2%2"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!%2%2>H.S````````````````````````````````````"
++ "````````````````````````````YO(A1E!`!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIKO,;W````````"
++ "````````````````````````````````````````````````````````````````"
++ "````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!+SEJY?$@````````````````````````````````````````````"
++ "````````````````````````````````````````JK3D%B)3!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(RY?YO$@````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````B9+#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!O<;W````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````;'6E!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:W2E````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````+SIK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "(RY?YO$A````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````JK3E!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!>8*S````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````+SIJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "YO$@````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````B9+#!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!1E!`````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````YO$A!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6F"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````+SIK"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````4EN,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````:W2E"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````:W2E!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````:W2E"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!O<;W````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````;'6F!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.D1U.T5U.T5V.T5U"
++ ".T5V.T5V.T5U.T5U%2%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````7F>8"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.T5U:W6E"
++ "F:+3JK3D````````````````````````````````````````````````T-L+JK/D"
++ ":W2E1E!`(R]@!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!>8*S````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````.D1U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!(R]?7FB8JK3E````````````````````````````````````````````"
++ "````````````````````````````````````````````O<;W>H*S+SIK!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1D]`"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!%B)24ER,O<;W````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````T-L,>H*S)\"]@!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!%B)2````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````F:+3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)\"]@B)'\"YO(A"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````J[3E.T5U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "B)'\"````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````1E\"!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!)\"]@B)'\"````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````J[3E.T5V!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJ````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````T-H+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:W2EYO$A````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````FJ/3(RY?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!B)'\"````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````1D]`!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ ".T5VT-L+````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````YO$A7VB9"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%2%2YO$A````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````F:+3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!>8*S````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````J[3E(RY?!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!+SIJ````````````````````````````````````````````````````"
++ "````````````````````````````````````````````O<;W%2%2!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%2%2O<;W````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````YO$A.T5U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!4EN,````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````O<;W%B%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!+SEJYO$A````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````4ER,!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!1E!`YO$A````````````````````````````````````````"
++ "````````````````````````````````````O<;W%B)2!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJYO$A````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJO<;W````"
++ "````````````````````````````````````````````````````````````````"
++ ">H*S%B)3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!1D]`YO$A````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````B)'\"!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!4UR,T=L,````````````````````````````"
++ "````````````````````````JK/D.T5V!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIKYO$@````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!1D]`B)'\"YO$@````````````````````````````T-L,>8*S+SIK!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ ",#IKYO$A````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````4UR,"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)\"]@.T5V.D5U.T5V"
++ ".T5U.T5U%2%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!%2%2T-L+````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````1D]`!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "Y?$@)\"]@!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!7F>8````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````JK/D!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(R]?YO$A````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````7F>8!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````YO$A(R]?!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1D]`````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!T-L+````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````+SEJ!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!4EN,````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!O<;W````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````(R]?!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!(R]@7F>8F:+3T=L,````````````O<;WB9+#4ER,%B)3!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIK````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````YO$AJ[3E:W2E:W2E"
++ ";'6F:W2EFJ+3T-L+````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````>8*S!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(RY?B9+#````````````````````````"
++ "````````````````YO$@;'6E%2%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!B)'\"````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````F:+31E!`!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!,#IK>H*SYO$@````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````Y?$@!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6E"
++ "````````````````````````````````````````````````````````YO$A.T5V"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!YO(A````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````O<;W.T5V!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!%2%2>8*S````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````1E\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!B)'\"````````````````````````````````````"
++ "````````````````````````````````4ER,!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!.T5U````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````B)'\""
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "1E!`Y?$@````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````>8*S!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!B)'\"````````"
++ "````````````````````````````````````````````````````````````````"
++ "````4EN,!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6E````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````4ER,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJYO$A````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````T-L+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!:W2E````````````````````````````````````````````"
++ "````````````````````````````````````````+SIK!!!!!!!!!!!!!!!!!!!!"
++ "!!!!JK3D````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````B9+#!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!.T5V````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````%2%2"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(R]?````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````T-L+!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````T-H+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:W2E````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````.D1U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!B)'\"````````````````````````````````````````````````"
++ "````````````````````````````````````````````4EN,!!!!!!!!!!!!!!!!"
++ "+SIK````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````.D1U!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!%2%2YO(A````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````:W2E"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)\"]@````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````T=L,!!!!!!!!!!!!!!!!.T5U````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````T=L,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6F````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!7F>8````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````+SIK!!!!!!!!!!!!"
++ "7F>8````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````;'6F!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!+SIJ````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````J[3E"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F:+3````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````7F>8!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````.T5V!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!YO$A````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````JK/D!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!O<;W````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````>8*S!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````+SIJ!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````O<;W"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3E!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3E!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````J[3E!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3D!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````J[3E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3E!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK/D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!JK/D````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK/D!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!JK/D````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````JK3D!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!J[3E````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````JK3E!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!J[3E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "%2%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIK````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````:W2E!!!!!!!!!!!!;'6E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!>8*S````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````1E!`!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!7F>8````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````;'6F!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!:W2E````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "B)'\"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!O<;X````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````7FB8!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1E!`````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````(RY?!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ ".T5U````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````.D1U!!!!!!!!!!!!"
++ ";'6F````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!+SIK````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````JK/D!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!O<;W````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````%2%2!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!YO$A````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````7F>8!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!>8*S"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````T=L,!!!!!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!F:+3````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````4EN,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!4EN,````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````B)'\"!!!!!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!7F>8````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````;'6F!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!B)'\"````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````1E\"!!!!!!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!(RY?````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````JK3E.D1U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!.T5UO<;W````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````%2%2!!!!!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!O<;W"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````JK3E"
++ "1E!`%2%2!!!!!!!!!!!!!!!!!!!!!!!!%2%24UR,JK3D````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````F:+3!!!!!!!!!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!4ER,````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````O<?XF:+3;'6E:W2EJ[3EO<;W"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````1D]`!!!!!!!!!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%B)2"
++ "YO$A````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````T-L+!!!!!!!!!!!!!!!!!!!!!!!!"
++ ";'6E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6F````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````4UR,!!!!!!!!!!!!!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "%B%2YO(A````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````T=L,!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;'6E````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "4EN,!!!!!!!!!!!!!!!!!!!!!!!!!!!!:W2E````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!T-H+````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````JK/D!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ ":W2E````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.T5V````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````+SIJ"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.D5U````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````JK/D!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!>8*S````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````;'6F!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "%B)2````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````>8*S!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%B)3O,;W````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````JK3E!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F:+2````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````+SIK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!(RY?YO$@````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````T-L+%B)3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!.D1U````````````````````````````````````````````````````````"
++ "````````````````````````````````````JK/D!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIK````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````YO$A+SIK!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F:+3````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````.T5U!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!4EN,````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````+SIJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!%2%2YO$@````````````````````````````````````````````````"
++ "````````````````````````````````>8*S!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!4EN,"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````4EN,!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIK````````````````"
++ "````````````````````````````````````````````````````````````JK3E"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!4UR,````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "YO$@+SIJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!.T5UYO$A````````````````````````````````````````"
++ "````````````````````````F:+2%2%2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!+SIKYO(A````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````YO$@+SIK!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJO<;W````"
++ "````````````````````````````````````````````````````;'6E!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)\"]@O<;W````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````JK/D%B)3"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!4ER,T=L,````````````````````````````"
++ "````````````B9+#(R]@!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!%2%2>8*S````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````;'6F!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!1E!`>H*SJK/DT-L+````````JK3EF:+37F>8(R]?!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!.D1UT-L+````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````O<;W+SIJ!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!%B)2:W2EYO$A````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````Y?$@:W2E!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "(R]?B)'\"````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````YO$@:W2E%B)2!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(R]?>8*SYO$@````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````````````````````````````````````````````YO$@;'6E%2%2"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!%2%24UR,JK/D````````````````````````````````````"
++ "````````````````````````````````````````````````````````````````"
++ "````````````F:+34EN,!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(R]?"
++ "4EN,F:+3YO(A````````````````````````````````````````````````````"
++ "````````````````````````````YO(AF:+34ER,%B)2!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIJ4ER,>8*SJK/DT=L,"
++ "````````````````````````````````````````T-L+JK/D>8*S4ER,+SEJ!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+SIK.T5U.D1U.T5V.T5U(R]?"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
++ "";
diff --git a/recipes/u-boot/u-boot-git/mmcinit.patch b/recipes/u-boot/u-boot-git/mmcinit.patch
new file mode 100644
index 0000000000..8aee768e54
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/mmcinit.patch
@@ -0,0 +1,20 @@
+--- a/common/cmd_mmc.c 2009-09-02 23:02:48.000000000 -0700
++++ b/common/cmd_mmc.c 2009-09-02 23:01:09.000000000 -0700
+@@ -92,6 +92,17 @@
+ "init [dev] - init MMC sub system\n"
+ "mmc device [dev] - show or set current device\n"
+ );
++int do_mmcinit (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
++{
++ char *argv2[] = {"mmc", "init"};
++ return do_mmc (cmdtp, flag, 2, argv2);
++}
++
++U_BOOT_CMD(
++ mmcinit, 1, 0, do_mmcinit,
++ "mmcinit - init mmc card\n",
++ NULL
++);
+ #else /* !CONFIG_GENERIC_MMC */
+
+ static void print_mmcinfo(struct mmc *mmc)
diff --git a/recipes/u-boot/u-boot-git/omap3-touchbook/new-pinmux.patch b/recipes/u-boot/u-boot-git/omap3-touchbook/new-pinmux.patch
new file mode 100644
index 0000000000..4e2be64d98
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/omap3-touchbook/new-pinmux.patch
@@ -0,0 +1,73 @@
+--- git/board/ti/beagle/beagle.h-orig 2009-09-29 16:39:34.000000000 -0700
++++ git/board/ti/beagle/beagle.h 2009-09-29 16:40:03.000000000 -0700
+@@ -201,16 +201,16 @@ const omap3_sysinfo sysinfo = {
+ MUX_VAL(CP(MMC1_DAT6), (IEN | PTU | EN | M0)) /*MMC1_DAT6*/\
+ MUX_VAL(CP(MMC1_DAT7), (IEN | PTU | EN | M0)) /*MMC1_DAT7*/\
+ /*Wireless LAN */\
+- MUX_VAL(CP(MMC2_CLK), (IEN | PTU | EN | M4)) /*GPIO_130*/\
+- MUX_VAL(CP(MMC2_CMD), (IEN | PTU | EN | M4)) /*GPIO_131*/\
+- MUX_VAL(CP(MMC2_DAT0), (IEN | PTU | EN | M4)) /*GPIO_132*/\
+- MUX_VAL(CP(MMC2_DAT1), (IEN | PTU | EN | M4)) /*GPIO_133*/\
+- MUX_VAL(CP(MMC2_DAT2), (IEN | PTU | EN | M4)) /*GPIO_134*/\
+- MUX_VAL(CP(MMC2_DAT3), (IEN | PTU | EN | M4)) /*GPIO_135*/\
+- MUX_VAL(CP(MMC2_DAT4), (IEN | PTU | EN | M4)) /*GPIO_136*/\
+- MUX_VAL(CP(MMC2_DAT5), (IEN | PTU | EN | M4)) /*GPIO_137*/\
+- MUX_VAL(CP(MMC2_DAT6), (IEN | PTU | EN | M4)) /*GPIO_138*/\
+- MUX_VAL(CP(MMC2_DAT7), (IEN | PTU | EN | M4)) /*GPIO_139*/\
++ MUX_VAL(CP(MMC2_CLK), (IEN | PTU | EN | M0)) /*MMC2_CLK*/\
++ MUX_VAL(CP(MMC2_CMD), (IEN | PTU | EN | M0)) /*MMC2_CMD*/\
++ MUX_VAL(CP(MMC2_DAT0), (IEN | PTU | EN | M0)) /*MMC2_DAT0*/\
++ MUX_VAL(CP(MMC2_DAT1), (IEN | PTU | EN | M0)) /*MMC2_DAT1*/\
++ MUX_VAL(CP(MMC2_DAT2), (IEN | PTU | EN | M0)) /*MMC2_DAT2*/\
++ MUX_VAL(CP(MMC2_DAT3), (IEN | PTU | EN | M0)) /*MMC2_DAT3*/\
++ MUX_VAL(CP(MMC2_DAT4), (IEN | PTU | EN | M1)) /*MMC2_DIR_DAT0*/\
++ MUX_VAL(CP(MMC2_DAT5), (IEN | PTU | EN | M1)) /*MMC2_DIR_DAT1*/\
++ MUX_VAL(CP(MMC2_DAT6), (IEN | PTU | EN | M1)) /*MMC2_DIR_CMD*/\
++ MUX_VAL(CP(MMC2_DAT7), (IEN | PTU | EN | M1)) /*MMC2_CLKIN*/\
+ /*Bluetooth*/\
+ MUX_VAL(CP(MCBSP3_DX), (IEN | PTD | DIS | M1)) /*UART2_CTS*/\
+ MUX_VAL(CP(MCBSP3_DR), (IDIS | PTD | DIS | M1)) /*UART2_RTS*/\
+@@ -229,13 +229,13 @@ const omap3_sysinfo sysinfo = {
+ MUX_VAL(CP(MCBSP4_DR), (IEN | PTD | DIS | M1)) /*SSI1_FLAG_RX*/\
+ MUX_VAL(CP(MCBSP4_DX), (IEN | PTD | DIS | M1)) /*SSI1_RDY_RX*/\
+ MUX_VAL(CP(MCBSP4_FSX), (IEN | PTD | DIS | M1)) /*SSI1_WAKE*/\
+- MUX_VAL(CP(MCBSP1_CLKR), (IDIS | PTD | DIS | M4)) /*GPIO_156*/\
+- MUX_VAL(CP(MCBSP1_FSR), (IDIS | PTU | EN | M4)) /*GPIO_157*/\
+- MUX_VAL(CP(MCBSP1_DX), (IDIS | PTD | DIS | M4)) /*GPIO_158*/\
+- MUX_VAL(CP(MCBSP1_DR), (IDIS | PTD | DIS | M4)) /*GPIO_159*/\
++ MUX_VAL(CP(MCBSP1_CLKR), (IEN | PTU | EN | M1)) /*MCSPI4_CLK*/\
++ MUX_VAL(CP(MCBSP1_FSR), (IEN | PTU | EN | M4)) /*GPIO_157*/\
++ MUX_VAL(CP(MCBSP1_DX), (IEN | PTD | EN | M1)) /*MCSPI4_SIMO*/\
++ MUX_VAL(CP(MCBSP1_DR), (IEN | PTD | DIS | M1)) /*MCSPI4_SOMI*/\
+ MUX_VAL(CP(MCBSP_CLKS), (IEN | PTU | DIS | M0)) /*McBSP_CLKS*/\
+- MUX_VAL(CP(MCBSP1_FSX), (IDIS | PTD | DIS | M4)) /*GPIO_161*/\
+- MUX_VAL(CP(MCBSP1_CLKX), (IDIS | PTD | DIS | M4)) /*GPIO_162*/\
++ MUX_VAL(CP(MCBSP1_FSX), (IEN | PTD | EN | M1)) /*MCSPI4_CS0*/\
++ MUX_VAL(CP(MCBSP1_CLKX), (IEN | PTD | DIS | M4)) /*GPIO_162*/\
+ /*Serial Interface*/\
+ MUX_VAL(CP(UART3_CTS_RCTX), (IEN | PTD | EN | M0)) /*UART3_CTS_RCTX*/\
+ MUX_VAL(CP(UART3_RTS_SD), (IDIS | PTD | DIS | M0)) /*UART3_RTS_SD */\
+@@ -255,8 +255,8 @@ const omap3_sysinfo sysinfo = {
+ MUX_VAL(CP(HSUSB0_DATA7), (IEN | PTD | DIS | M0)) /*HSUSB0_DATA7*/\
+ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /*I2C1_SCL*/\
+ MUX_VAL(CP(I2C1_SDA), (IEN | PTU | EN | M0)) /*I2C1_SDA*/\
+- MUX_VAL(CP(I2C2_SCL), (IEN | PTU | EN | M4)) /*GPIO_168*/\
+- MUX_VAL(CP(I2C2_SDA), (IEN | PTU | EN | M4)) /*GPIO_183*/\
++ MUX_VAL(CP(I2C2_SCL), (IEN | PTU | EN | M0)) /*I2C2_SCL*/\
++ MUX_VAL(CP(I2C2_SDA), (IEN | PTU | EN | M0)) /*I2C2_SDA*/\
+ MUX_VAL(CP(I2C3_SCL), (IEN | PTU | EN | M0)) /*I2C3_SCL*/\
+ MUX_VAL(CP(I2C3_SDA), (IEN | PTU | EN | M0)) /*I2C3_SDA*/\
+ MUX_VAL(CP(I2C4_SCL), (IEN | PTU | EN | M0)) /*I2C4_SCL*/\
+@@ -374,9 +374,9 @@ const omap3_sysinfo sysinfo = {
+ MUX_VAL(CP(SDRC_CKE1), (IDIS | PTU | EN | M0)) /*sdrc_cke1*/
+
+ #define MUX_BEAGLE_C() \
+- MUX_VAL(CP(MCBSP3_DX), (IEN | PTD | DIS | M4)) /*GPIO_140*/\
+- MUX_VAL(CP(MCBSP3_DR), (IEN | PTD | DIS | M4)) /*GPIO_142*/\
+- MUX_VAL(CP(MCBSP3_CLKX), (IEN | PTD | DIS | M4)) /*GPIO_141*/\
++ MUX_VAL(CP(MCBSP3_DX), (IEN | PTD | DIS | M4)) /*GPIO_140*/\
++ MUX_VAL(CP(MCBSP3_DR), (IEN | PTD | DIS | M4)) /*GPIO_142*/\
++ MUX_VAL(CP(MCBSP3_CLKX), (IEN | PTD | DIS | M4)) /*GPIO_141*/\
+ MUX_VAL(CP(UART2_CTS), (IEN | PTU | EN | M0)) /*UART2_CTS*/\
+ MUX_VAL(CP(UART2_RTS), (IDIS | PTD | DIS | M0)) /*UART2_RTS*/\
+ MUX_VAL(CP(UART2_TX), (IDIS | PTD | DIS | M0)) /*UART2_TX*/
diff --git a/recipes/u-boot/u-boot-git/power.patch b/recipes/u-boot/u-boot-git/power.patch
new file mode 100644
index 0000000000..f73d74e5f7
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/power.patch
@@ -0,0 +1,13 @@
+--- a/board/omap3/beagle/beagle.h 2009-09-06 10:28:33.000000000 -0700
++++ b/board/omap3/beagle/beagle.h 2009-09-06 10:29:16.000000000 -0700
+@@ -255,8 +255,8 @@
+ MUX_VAL(CP(HSUSB0_DATA7), (IEN | PTD | DIS | M0)) /*HSUSB0_DATA7*/\
+ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /*I2C1_SCL*/\
+ MUX_VAL(CP(I2C1_SDA), (IEN | PTU | EN | M0)) /*I2C1_SDA*/\
+- MUX_VAL(CP(I2C2_SCL), (IEN | PTU | EN | M0)) /*I2C2_SCL*/\
+- MUX_VAL(CP(I2C2_SDA), (IEN | PTU | EN | M0)) /*I2C2_SDA*/\
++ MUX_VAL(CP(I2C2_SCL), (IEN | PTU | EN | M4)) /*GPIO_168*/\
++ MUX_VAL(CP(I2C2_SDA), (IEN | PTU | EN | M4)) /*GPIO_183*/\
+ MUX_VAL(CP(I2C3_SCL), (IEN | PTU | EN | M0)) /*I2C3_SCL*/\
+ MUX_VAL(CP(I2C3_SDA), (IEN | PTU | EN | M0)) /*I2C3_SDA*/\
+ MUX_VAL(CP(I2C4_SCL), (IEN | PTU | EN | M0)) /*I2C4_SCL*/\
diff --git a/recipes/u-boot/u-boot-git/spi3.patch b/recipes/u-boot/u-boot-git/spi3.patch
index 57f60b5daf..0b8bae9d11 100644
--- a/recipes/u-boot/u-boot-git/spi3.patch
+++ b/recipes/u-boot/u-boot-git/spi3.patch
@@ -1,20 +1,29 @@
--- a/board/omap3/beagle/beagle.h 2009-02-19 13:30:50.000000000 -0800
+++ b/board/omap3/beagle/beagle.h 2009-02-19 13:12:16.000000000 -0800
-@@ -205,12 +205,12 @@
+@@ -201,16 +201,16 @@
MUX_VAL(CP(MMC1_DAT6), (IEN | PTU | EN | M0)) /*MMC1_DAT6*/\
MUX_VAL(CP(MMC1_DAT7), (IEN | PTU | EN | M0)) /*MMC1_DAT7*/\
/*Wireless LAN */\
-- MUX_VAL(CP(MMC2_CLK), (IEN | PTU | EN | M4)) /*GPIO_130*/\
-- MUX_VAL(CP(MMC2_CMD), (IEN | PTU | EN | M4)) /*GPIO_131*/\
-- MUX_VAL(CP(MMC2_DAT0), (IEN | PTU | EN | M4)) /*GPIO_132*/\
+- MUX_VAL(CP(MMC2_CLK), (IEN | PTU | EN | M0)) /*MMC2_CLK*/\
+- MUX_VAL(CP(MMC2_CMD), (IEN | PTU | EN | M0)) /*MMC2_CMD*/\
+- MUX_VAL(CP(MMC2_DAT0), (IEN | PTU | EN | M0)) /*MMC2_DAT0*/\
+- MUX_VAL(CP(MMC2_DAT1), (IEN | PTU | EN | M0)) /*MMC2_DAT1*/\
+- MUX_VAL(CP(MMC2_DAT2), (IEN | PTU | EN | M0)) /*MMC2_DAT2*/\
+- MUX_VAL(CP(MMC2_DAT3), (IEN | PTU | EN | M0)) /*MMC2_DAT3*/\
+- MUX_VAL(CP(MMC2_DAT4), (IEN | PTU | EN | M1)) /*MMC2_DIR_DAT0*/\
+- MUX_VAL(CP(MMC2_DAT5), (IEN | PTU | EN | M1)) /*MMC2_DIR_DAT1*/\
+- MUX_VAL(CP(MMC2_DAT6), (IEN | PTU | EN | M1)) /*MMC2_DIR_CMD*/\
+- MUX_VAL(CP(MMC2_DAT7), (IEN | PTU | EN | M1)) /*MMC2_CLKIN*/\
+ MUX_VAL(CP(MMC2_CLK), (IEN | PTU | DIS | M1)) /*MCSPI3_CLK*/\
+ MUX_VAL(CP(MMC2_CMD), (IEN | PTU | DIS | M1)) /*MCSPI3_SIMO*/\
+ MUX_VAL(CP(MMC2_DAT0), (IEN | PTU | EN | M1)) /*MCSPI3_SOMI*/\
- MUX_VAL(CP(MMC2_DAT1), (IEN | PTU | EN | M4)) /*GPIO_133*/\
-- MUX_VAL(CP(MMC2_DAT2), (IEN | PTU | EN | M4)) /*GPIO_134*/\
-- MUX_VAL(CP(MMC2_DAT3), (IEN | PTU | EN | M4)) /*GPIO_135*/\
++ MUX_VAL(CP(MMC2_DAT1), (IEN | PTU | EN | M4)) /*GPIO_133*/\
+ MUX_VAL(CP(MMC2_DAT2), (IEN | PTU | EN | M1)) /*MCSPI3_CS1*/\
+ MUX_VAL(CP(MMC2_DAT3), (IEN | PTU | EN | M1)) /*MCSPI3_CS0*/\
- MUX_VAL(CP(MMC2_DAT4), (IEN | PTU | EN | M4)) /*GPIO_136*/\
- MUX_VAL(CP(MMC2_DAT5), (IEN | PTU | EN | M4)) /*GPIO_137*/\
- MUX_VAL(CP(MMC2_DAT6), (IEN | PTU | EN | M4)) /*GPIO_138*/\
++ MUX_VAL(CP(MMC2_DAT4), (IEN | PTU | EN | M4)) /*GPIO_136*/\
++ MUX_VAL(CP(MMC2_DAT5), (IEN | PTU | EN | M4)) /*GPIO_137*/\
++ MUX_VAL(CP(MMC2_DAT6), (IEN | PTU | EN | M4)) /*GPIO_138*/\
++ MUX_VAL(CP(MMC2_DAT7), (IEN | PTU | EN | M4)) /*GPIO_139*/\
+ /*Bluetooth*/\
+ MUX_VAL(CP(MCBSP3_DX), (IEN | PTD | DIS | M1)) /*UART2_CTS*/\
+ MUX_VAL(CP(MCBSP3_DR), (IDIS | PTD | DIS | M1)) /*UART2_RTS*/\
diff --git a/recipes/u-boot/u-boot-git/spi4.patch b/recipes/u-boot/u-boot-git/spi4.patch
index 3b0781f999..bf35964a99 100644
--- a/recipes/u-boot/u-boot-git/spi4.patch
+++ b/recipes/u-boot/u-boot-git/spi4.patch
@@ -1,20 +1,20 @@
--- a/board/omap3/beagle/beagle.h 2009-02-19 13:30:50.000000000 -0800
+++ b/board/omap3/beagle/beagle.h 2009-02-19 13:12:16.000000000 -0800
-@@ -233,13 +233,13 @@
+@@ -229,13 +229,13 @@
MUX_VAL(CP(MCBSP4_DR), (IEN | PTD | DIS | M1)) /*SSI1_FLAG_RX*/\
MUX_VAL(CP(MCBSP4_DX), (IEN | PTD | DIS | M1)) /*SSI1_RDY_RX*/\
MUX_VAL(CP(MCBSP4_FSX), (IEN | PTD | DIS | M1)) /*SSI1_WAKE*/\
-- MUX_VAL(CP(MCBSP1_CLKR), (IDIS | PTD | DIS | M4)) /*GPIO_156*/\
-- MUX_VAL(CP(MCBSP1_FSR), (IDIS | PTU | EN | M4)) /*GPIO_157*/\
+- MUX_VAL(CP(MCBSP1_CLKR), (IEN | PTU | EN | M1)) /*MCSPI4_CLK*/\
+- MUX_VAL(CP(MCBSP1_FSR), (IEN | PTU | EN | M4)) /*GPIO_157*/\
+- MUX_VAL(CP(MCBSP1_DX), (IEN | PTD | EN | M1)) /*MCSPI4_SIMO*/\
+- MUX_VAL(CP(MCBSP1_DR), (IEN | PTD | DIS | M1)) /*MCSPI4_SOMI*/\
+ MUX_VAL(CP(MCBSP1_CLKR), (IEN | PTU | DIS | M1)) /*MCSPI4_CLK*/\
+ MUX_VAL(CP(MCBSP1_FSR), (IEN | PTU | EN | M4)) /*GPIO_157*/\
-- MUX_VAL(CP(MCBSP1_DX), (IDIS | PTD | DIS | M4)) /*GPIO_158*/\
-- MUX_VAL(CP(MCBSP1_DR), (IDIS | PTD | DIS | M4)) /*GPIO_159*/\
+ MUX_VAL(CP(MCBSP1_DX), (IEN | PTU | DIS | M1)) /*MCSPI4_SIMO*/\
+ MUX_VAL(CP(MCBSP1_DR), (IEN | PTU | EN | M1)) /*MCSPI4_SOMI*/\
MUX_VAL(CP(MCBSP_CLKS), (IEN | PTU | DIS | M0)) /*McBSP_CLKS*/\
-- MUX_VAL(CP(MCBSP1_FSX), (IDIS | PTD | DIS | M4)) /*GPIO_161*/\
-- MUX_VAL(CP(MCBSP1_CLKX), (IDIS | PTD | DIS | M4)) /*GPIO_162*/\
+- MUX_VAL(CP(MCBSP1_FSX), (IEN | PTD | EN | M1)) /*MCSPI4_CS0*/\
+- MUX_VAL(CP(MCBSP1_CLKX), (IEN | PTD | DIS | M4)) /*GPIO_162*/\
+ MUX_VAL(CP(MCBSP1_FSX), (IEN | PTU | EN | M1)) /*MCSPI4_CS0*/\
+ MUX_VAL(CP(MCBSP1_CLKX), (IEN | PTU | EN | M4)) /*GPIO_162*/\
/*Serial Interface*/\
diff --git a/recipes/u-boot/u-boot-git/touchbook-config.patch b/recipes/u-boot/u-boot-git/touchbook-config.patch
new file mode 100644
index 0000000000..712a313251
--- /dev/null
+++ b/recipes/u-boot/u-boot-git/touchbook-config.patch
@@ -0,0 +1,11 @@
+--- a/board/omap3/beagle/beagle.c 2009-10-18 05:31:23.000000000 +0800
++++ b/board/omap3/beagle/beagle.c 2009-10-18 05:31:34.000000000 +0800
+@@ -186,7 +186,7 @@
+
+ gpmc_init(); /* in SRAM or SDRAM, finish GPMC */
+ /* board id for Linux */
+- gd->bd->bi_arch_number = MACH_TYPE_OMAP3_BEAGLE;
++ gd->bd->bi_arch_number = 2393;
+ /* boot param addr */
+ gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 + 0x100);
+
diff --git a/recipes/u-boot/u-boot.inc b/recipes/u-boot/u-boot.inc
index 6c8566fb28..8ab0282743 100644
--- a/recipes/u-boot/u-boot.inc
+++ b/recipes/u-boot/u-boot.inc
@@ -5,6 +5,8 @@ PRIORITY = "optional"
LICENSE = "GPL"
PROVIDES = "virtual/bootloader"
+DEPENDS = "mtd-utils"
+
PACKAGE_ARCH = "${MACHINE_ARCH}"
PARALLEL_MAKE=""
@@ -14,18 +16,20 @@ UBOOT_MACHINE ?= "${MACHINE}_config"
UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin"
UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin"
+INSANE_SKIP_${PN} = True
+
do_compile () {
unset LDFLAGS
unset CFLAGS
unset CPPFLAGS
oe_runmake ${UBOOT_MACHINE}
oe_runmake all
- oe_runmake tools
+ oe_runmake tools env
}
do_install () {
if [ -e ${WORKDIR}/fw_env.config ] ; then
- install -d ${D}$base_sbindir}
+ install -d ${D}${base_sbindir}
install -d ${D}${sysconfdir}
install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_printenv
diff --git a/recipes/u-boot/u-boot_git.bb b/recipes/u-boot/u-boot_git.bb
index 1a5a4e2ed8..9958475130 100644
--- a/recipes/u-boot/u-boot_git.bb
+++ b/recipes/u-boot/u-boot_git.bb
@@ -1,5 +1,5 @@
require u-boot.inc
-PR ="r30"
+PR ="r32"
FILESPATHPKG =. "u-boot-git:"
@@ -14,20 +14,24 @@ SRCREV_palmpre = "6b8edfde22acc574b5532e9f086e6a7287a9bc78"
SRC_URI_append_afeb9260 = " file://AFEB9260-network-fix.patch;patch=1"
SRC_URI_append_afeb9260-180 = " file://AFEB9260-network-fix.patch;patch=1"
-SRC_URI_beagleboard = "git://gitorious.org/u-boot-omap3/mainline.git;branch=omap3-dev;protocol=git \
- file://fw-env.patch;patch=1 \
- file://dss2.patch;patch=1 \
+SRC_URI_beagleboard = "git://git.denx.de/u-boot-ti.git;protocol=git \
+ file://fw_env.config \
file://new-pinmux.patch;patch=1 \
"
-SRCREV_beagleboard = "d363f9cb0918a1b6b92e2e20d01543d0c4f53274"
-PV_beagleboard = "2009.05+${PR}+gitr${SRCREV}"
+SRCREV_beagleboard = "1590f84007e2b50ad346a482fff89195cb04ff4e"
+PV_beagleboard = "2009.08+${PR}+gitr${SRCREV}"
SRC_URI_omap3-touchbook = "git://gitorious.org/u-boot-omap3/mainline.git;branch=omap3-dev;protocol=git \
- file://fw-env.patch;patch=1 \
+ file://fw_env.config \
file://dss2.patch;patch=1 \
+ file://600mhz.patch;patch=1 \
file://spi3.patch;patch=1 \
file://spi4.patch;patch=1 \
file://headphone.patch;patch=1 \
+ file://power.patch;patch=1 \
+ file://ai-logo.patch;patch=1 \
+ file://mmcinit.patch;patch=1 \
+ file://touchbook-config.patch;patch=1 \
"
SRCREV_omap3-touchbook = "d363f9cb0918a1b6b92e2e20d01543d0c4f53274"
PV_omap3-touchbook = "2009.05+${PR}+gitr${SRCREV}"