From 77531ca3474c3a8c1a05c4774ac8adba6e0925d2 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Sat, 26 Aug 2023 20:34:11 +0100
Subject: [PATCH 01/28] Drastically refactor glTexImage2D

---
 CMakeLists.txt                      |    5 +-
 GL/flush.c                          |   16 +-
 GL/platforms/software.c             |    4 +
 GL/private.h                        |    7 +-
 GL/state.c                          |   12 +
 GL/texture.c                        |  703 +--
 include/GL/gl.h                     |   35 +-
 include/GL/glkos.h                  |   18 +-
 samples/nehe06/main.c               |    5 +-
 samples/prof_texture_upload/image.h | 8207 +++++++++++++++++++++++++++
 samples/prof_texture_upload/main.c  |   47 +
 tests/CMakeLists.txt                |   26 +
 tests/test_glteximage2d.h           |   74 +
 tools/test.h                        |  445 ++
 tools/test_generator.py             |  212 +
 15 files changed, 9410 insertions(+), 406 deletions(-)
 create mode 100644 samples/prof_texture_upload/image.h
 create mode 100644 samples/prof_texture_upload/main.c
 create mode 100644 tests/CMakeLists.txt
 create mode 100644 tests/test_glteximage2d.h
 create mode 100644 tools/test.h
 create mode 100755 tools/test_generator.py

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 41a2b07..9cb2edd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -175,6 +175,8 @@ function(gen_sample sample)
     endif()
 endfunction()
 
+add_subdirectory(tests)
+
 gen_sample(blend_test samples/blend_test/main.c)
 gen_sample(depth_funcs samples/depth_funcs/main.c)
 gen_sample(depth_funcs_alpha_testing samples/depth_funcs_alpha_testing/main.c samples/depth_funcs_alpha_testing/gl_png.c)
@@ -206,9 +208,10 @@ gen_sample(zclip_trianglestrip samples/zclip_trianglestrip/main.c)
 gen_sample(scissor samples/scissor/main.c)
 gen_sample(polymark samples/polymark/main.c)
 gen_sample(cubes samples/cubes/main.cpp)
-
 gen_sample(zclip_test tests/zclip/main.cpp)
 
+gen_sample(prof_texture_upload samples/prof_texture_upload/main.c)
+
 if(PLATFORM_DREAMCAST)
     gen_sample(trimark samples/trimark/main.c)
     gen_sample(quadmark samples/quadmark/main.c samples/profiler.c)
diff --git a/GL/flush.c b/GL/flush.c
index cf85a4e..b2aab2d 100644
--- a/GL/flush.c
+++ b/GL/flush.c
@@ -49,7 +49,15 @@ void APIENTRY glKosInitConfig(GLdcConfig* config) {
     config->internal_palette_format = GL_RGBA8;
 }
 
+static bool _initialized = false;
+
 void APIENTRY glKosInitEx(GLdcConfig* config) {
+    if(_initialized) {
+        return;
+    }
+
+    _initialized = true;
+
     TRACE();
 
     printf("\nWelcome to GLdc! Git revision: %s\n\n", GLDC_VERSION);
@@ -83,6 +91,12 @@ void APIENTRY glKosInitEx(GLdcConfig* config) {
     aligned_vector_reserve(&TR_LIST.vector, config->initial_tr_capacity);
 }
 
+void APIENTRY glKosShutdown() {
+    aligned_vector_clear(&OP_LIST.vector);
+    aligned_vector_clear(&PT_LIST.vector);
+    aligned_vector_clear(&TR_LIST.vector);
+}
+
 void APIENTRY glKosInit() {
     GLdcConfig config;
     glKosInitConfig(&config);
@@ -117,4 +131,4 @@ void APIENTRY glKosSwapBuffers() {
     aligned_vector_clear(&TR_LIST.vector);
 
     _glApplyScissor(true);
-}
\ No newline at end of file
+}
diff --git a/GL/platforms/software.c b/GL/platforms/software.c
index 59d3859..d9d7fc8 100644
--- a/GL/platforms/software.c
+++ b/GL/platforms/software.c
@@ -33,6 +33,10 @@ static VideoMode vid_mode = {
 AlignedVector vbuffer;
 
 void InitGPU(_Bool autosort, _Bool fsaa) {
+
+    // 32-bit SDL has trouble with the wayland driver for some reason
+    setenv("SDL_VIDEODRIVER", "x11", 1);
+
     SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS);
 
     WINDOW = SDL_CreateWindow(
diff --git a/GL/private.h b/GL/private.h
index b0fe41a..5b11c52 100644
--- a/GL/private.h
+++ b/GL/private.h
@@ -164,7 +164,9 @@ typedef struct {
     GLboolean isCompressed;
     GLboolean isPaletted;
     //50
-    GLubyte padding[14];  // Pad to 64-bytes
+    GLenum internalFormat;
+    //54
+    GLubyte padding[10];  // Pad to 64-bytes
 } __attribute__((aligned(32))) TextureObject;
 
 typedef struct {
@@ -376,6 +378,9 @@ extern GLubyte ACTIVE_TEXTURE;
 extern GLboolean TEXTURES_ENABLED[];
 
 GLubyte _glGetActiveTexture();
+GLint _glGetTextureInternalFormat();
+GLboolean _glGetTextureTwiddle();
+void _glSetTextureTwiddle(GLboolean v);
 
 GLuint _glGetActiveClientTexture();
 TexturePalette* _glGetSharedPalette(GLshort bank);
diff --git a/GL/state.c b/GL/state.c
index 2a16367..52f2656 100644
--- a/GL/state.c
+++ b/GL/state.c
@@ -494,7 +494,11 @@ GLAPI void APIENTRY glEnable(GLenum cap) {
                 GPUState.is_dirty = GL_TRUE;
             }
         break;
+        case GL_TEXTURE_TWIDDLE_KOS:
+            _glSetTextureTwiddle(GL_TRUE);
+        break;
     default:
+        _glKosThrowError(GL_INVALID_VALUE, __func__);
         break;
     }
 }
@@ -596,7 +600,11 @@ GLAPI void APIENTRY glDisable(GLenum cap) {
                 GPUState.is_dirty = GL_TRUE;
             }
         break;
+        case GL_TEXTURE_TWIDDLE_KOS:
+            _glSetTextureTwiddle(GL_FALSE);
+        break;
     default:
+        _glKosThrowError(GL_INVALID_VALUE, __func__);
         break;
     }
 }
@@ -977,6 +985,10 @@ void APIENTRY glGetIntegerv(GLenum pname, GLint *params) {
         case GL_FREE_CONTIGUOUS_TEXTURE_MEMORY_KOS:
             *params = _glFreeContiguousTextureMemory();
         break;
+        case GL_TEXTURE_INTERNAL_FORMAT_KOS:
+            *params = _glGetTextureInternalFormat();
+        break;
+
     default:
         _glKosThrowError(GL_INVALID_ENUM, __func__);
         break;
diff --git a/GL/texture.c b/GL/texture.c
index e18c2e4..13f7605 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -23,16 +23,67 @@ GLubyte ACTIVE_TEXTURE = 0;
 
 static TexturePalette* SHARED_PALETTES[MAX_GLDC_SHARED_PALETTES] = {NULL, NULL, NULL, NULL};
 
-static GLuint _determinePVRFormat(GLint internalFormat, GLenum type);
+static GLuint _determinePVRFormat(GLint internalFormat);
 
 static GLboolean BANKS_USED[MAX_GLDC_PALETTE_SLOTS];  // Each time a 256 colour bank is used, this is set to true
 static GLboolean SUBBANKS_USED[MAX_GLDC_PALETTE_SLOTS][MAX_GLDC_4BPP_PALETTE_SLOTS]; // 4 counts of the used 16 colour banks within the 256 ones
 
 static GLenum INTERNAL_PALETTE_FORMAT = GL_RGBA8;
+static GLboolean TEXTURE_TWIDDLE_ENABLED = GL_FALSE;
 
 static void* YALLOC_BASE = NULL;
 static size_t YALLOC_SIZE = 0;
 
+static const unsigned short MortonTable256[256] =
+    {
+        0x0000, 0x0001, 0x0004, 0x0005, 0x0010, 0x0011, 0x0014, 0x0015,
+        0x0040, 0x0041, 0x0044, 0x0045, 0x0050, 0x0051, 0x0054, 0x0055,
+        0x0100, 0x0101, 0x0104, 0x0105, 0x0110, 0x0111, 0x0114, 0x0115,
+        0x0140, 0x0141, 0x0144, 0x0145, 0x0150, 0x0151, 0x0154, 0x0155,
+        0x0400, 0x0401, 0x0404, 0x0405, 0x0410, 0x0411, 0x0414, 0x0415,
+        0x0440, 0x0441, 0x0444, 0x0445, 0x0450, 0x0451, 0x0454, 0x0455,
+        0x0500, 0x0501, 0x0504, 0x0505, 0x0510, 0x0511, 0x0514, 0x0515,
+        0x0540, 0x0541, 0x0544, 0x0545, 0x0550, 0x0551, 0x0554, 0x0555,
+        0x1000, 0x1001, 0x1004, 0x1005, 0x1010, 0x1011, 0x1014, 0x1015,
+        0x1040, 0x1041, 0x1044, 0x1045, 0x1050, 0x1051, 0x1054, 0x1055,
+        0x1100, 0x1101, 0x1104, 0x1105, 0x1110, 0x1111, 0x1114, 0x1115,
+        0x1140, 0x1141, 0x1144, 0x1145, 0x1150, 0x1151, 0x1154, 0x1155,
+        0x1400, 0x1401, 0x1404, 0x1405, 0x1410, 0x1411, 0x1414, 0x1415,
+        0x1440, 0x1441, 0x1444, 0x1445, 0x1450, 0x1451, 0x1454, 0x1455,
+        0x1500, 0x1501, 0x1504, 0x1505, 0x1510, 0x1511, 0x1514, 0x1515,
+        0x1540, 0x1541, 0x1544, 0x1545, 0x1550, 0x1551, 0x1554, 0x1555,
+        0x4000, 0x4001, 0x4004, 0x4005, 0x4010, 0x4011, 0x4014, 0x4015,
+        0x4040, 0x4041, 0x4044, 0x4045, 0x4050, 0x4051, 0x4054, 0x4055,
+        0x4100, 0x4101, 0x4104, 0x4105, 0x4110, 0x4111, 0x4114, 0x4115,
+        0x4140, 0x4141, 0x4144, 0x4145, 0x4150, 0x4151, 0x4154, 0x4155,
+        0x4400, 0x4401, 0x4404, 0x4405, 0x4410, 0x4411, 0x4414, 0x4415,
+        0x4440, 0x4441, 0x4444, 0x4445, 0x4450, 0x4451, 0x4454, 0x4455,
+        0x4500, 0x4501, 0x4504, 0x4505, 0x4510, 0x4511, 0x4514, 0x4515,
+        0x4540, 0x4541, 0x4544, 0x4545, 0x4550, 0x4551, 0x4554, 0x4555,
+        0x5000, 0x5001, 0x5004, 0x5005, 0x5010, 0x5011, 0x5014, 0x5015,
+        0x5040, 0x5041, 0x5044, 0x5045, 0x5050, 0x5051, 0x5054, 0x5055,
+        0x5100, 0x5101, 0x5104, 0x5105, 0x5110, 0x5111, 0x5114, 0x5115,
+        0x5140, 0x5141, 0x5144, 0x5145, 0x5150, 0x5151, 0x5154, 0x5155,
+        0x5400, 0x5401, 0x5404, 0x5405, 0x5410, 0x5411, 0x5414, 0x5415,
+        0x5440, 0x5441, 0x5444, 0x5445, 0x5450, 0x5451, 0x5454, 0x5455,
+        0x5500, 0x5501, 0x5504, 0x5505, 0x5510, 0x5511, 0x5514, 0x5515,
+        0x5540, 0x5541, 0x5544, 0x5545, 0x5550, 0x5551, 0x5554, 0x5555
+};
+
+
+/* Given a 0-based texel location, and an image width/height. Return the
+ * new 0-based texel location */
+GL_FORCE_INLINE uint32_t twid_location(uint32_t i, uint32_t w, uint32_t h) {
+    uint16_t y = i % w;
+    uint16_t x = i / w;
+
+    return MortonTable256[y >> 8]   << 17 |
+           MortonTable256[x >> 8]   << 16 |
+           MortonTable256[y & 0xFF] <<  1 |
+           MortonTable256[x & 0xFF];
+}
+
+
 static void* yalloc_alloc_and_defrag(size_t size) {
     void* ret = yalloc_alloc(YALLOC_BASE, size);
 
@@ -146,78 +197,12 @@ static void _glReleasePaletteSlot(GLshort slot, GLushort size)
     }
 }
 
-/* Linear/iterative twiddling algorithm from Marcus' tatest */
-#define TWIDTAB(x) ( (x&1)|((x&2)<<1)|((x&4)<<2)|((x&8)<<3)|((x&16)<<4)| \
-                     ((x&32)<<5)|((x&64)<<6)|((x&128)<<7)|((x&256)<<8)|((x&512)<<9) )
-#define TWIDOUT(x, y) ( TWIDTAB((y)) | (TWIDTAB((x)) << 1) )
-
-
-static void GPUTextureTwiddle8PPP(void* src, void* dst, uint32_t w, uint32_t h) {
-    uint32_t x, y, yout, min, mask;
-
-    min = MIN(w, h);
-    mask = min - 1;
-
-    uint8_t* pixels;
-    uint16_t* vtex;
-    pixels = (uint8_t*) src;
-    vtex = (uint16_t*) dst;
-
-    for(y = 0; y < h; y += 2) {
-        yout = y;
-        for(x = 0; x < w; x++) {
-            int32_t idx = TWIDOUT((yout & mask) / 2, x & mask) +
-                 (x / min + yout / min)*min * min / 2;
-
-            gl_assert(idx < (w * h));
-            vtex[idx] = pixels[y * w + x] | (pixels[(y + 1) * w + x] << 8);
-        }
-    }
+GLboolean _glGetTextureTwiddle() {
+    return TEXTURE_TWIDDLE_ENABLED;
 }
 
-static void GPUTextureTwiddle4PPP(void* src, void* dst, uint32_t w, uint32_t h) {
-    uint32_t x, y, yout, min, mask;
-
-    min = MIN(w, h);
-    mask = min - 1;
-
-	uint8_t* pixels;
-    uint16_t* vtex;
-    pixels = (uint8_t*) src;
-    vtex = (uint16_t*) dst;
-
-    for(y = 0; y < h; y += 2) {
-        yout = y;
-        for (x = 0; x < w; x += 2) {
-            vtex[TWIDOUT((x & mask) / 2, (yout & mask) / 2) +
-                (x / min + yout / min) * min * min / 4] =
-            vtex[TWIDOUT((x & mask) / 2, (yout & mask) / 2) +
-                (x / min + yout / min) * min * min / 4] =
-                ((pixels[(x + y * w) >> 1] & 15) << 8) | ((pixels[(x + (y + 1) * w) >> 1] & 15) << 12) |
-                ((pixels[(x + y * w) >> 1] >> 4) << 0) | ((pixels[(x + (y + 1) * w) >> 1] >> 4) << 4);
-        }
-    }
-}
-
-static void GPUTextureTwiddle16BPP(void * src, void* dst, uint32_t w, uint32_t h) {
-    uint32_t x, y, yout, min, mask;
-
-    min = MIN(w, h);
-    mask = min - 1;
-
-    uint16_t* pixels;
-    uint16_t* vtex;
-    pixels = (uint16_t*) src;
-    vtex = (uint16_t*) dst;
-
-    for(y = 0; y < h; y++) {
-        yout = y;
-
-        for(x = 0; x < w; x++) {
-            vtex[TWIDOUT(x & mask, yout & mask) +
-                 (x / min + yout / min)*min * min] = pixels[y * w + x];
-        }
-    }
+void _glSetTextureTwiddle(GLboolean v) {
+    TEXTURE_TWIDDLE_ENABLED = v;
 }
 
 TexturePalette* _glGetSharedPalette(GLshort bank) {
@@ -278,7 +263,27 @@ GLubyte _glGetActiveTexture() {
     return ACTIVE_TEXTURE;
 }
 
- static GLint _determineStride(GLenum format, GLenum type) {
+static GLint _determineStrideInternal(GLenum internalFormat) {
+    switch(internalFormat) {
+        case GL_RGB565_KOS:
+        case GL_ARGB4444_KOS:
+        case GL_ARGB1555_KOS:
+        case GL_RGB565_TWID_KOS:
+        case GL_ARGB4444_TWID_KOS:
+        case GL_ARGB1555_TWID_KOS:
+            return 2;
+        case GL_COLOR_INDEX8_TWID_KOS:
+        case GL_COLOR_INDEX4_TWID_KOS:
+        case GL_COLOR_INDEX4_EXT:
+        case GL_COLOR_INDEX8_EXT:
+            return 1;
+    }
+
+    return -1;
+}
+
+
+static GLint _determineStride(GLenum format, GLenum type) {
     switch(type) {
     case GL_BYTE:
     case GL_UNSIGNED_BYTE:
@@ -528,6 +533,16 @@ TextureObject* _glGetBoundTexture() {
     return TEXTURE_UNITS[ACTIVE_TEXTURE];
 }
 
+GLint _glGetTextureInternalFormat() {
+    TextureObject* obj = _glGetBoundTexture();
+    if(!obj) {
+        return -1;
+    }
+
+    return obj->internalFormat;
+}
+
+
 void APIENTRY glActiveTextureARB(GLenum texture) {
     TRACE();
 
@@ -538,8 +553,6 @@ void APIENTRY glActiveTextureARB(GLenum texture) {
 
     ACTIVE_TEXTURE = texture & 0xF;
     gl_assert(ACTIVE_TEXTURE < MAX_GLDC_TEXTURE_UNITS);
-    gl_assert(ACTIVE_TEXTURE >= 0);
-
     gl_assert(TEXTURE_OBJECTS.element_size > 0);
 }
 
@@ -837,10 +850,8 @@ void APIENTRY glCompressedTexImage2DARB(GLenum target,
     /* Set the required mipmap count */
     active->width   = width;
     active->height  = height;
-    active->color   = _determinePVRFormat(
-        internalFormat,
-        internalFormat  /* Doesn't matter (see determinePVRFormat) */
-    );
+    active->internalFormat = internalFormat;
+    active->color   = _determinePVRFormat(internalFormat);
     active->mipmapCount = _glGetMipmapLevelCount(active);
     active->mipmap = (mipmapped) ? ~0 : (1 << level);  /* Set only a single bit if this wasn't mipmapped otherwise set all */
     active->isCompressed = GL_TRUE;
@@ -868,53 +879,95 @@ void APIENTRY glCompressedTexImage2DARB(GLenum target,
     _glGPUStateMarkDirty();
 }
 
+static GLboolean isTwiddledInternalFormat(GLint internalFormat) {
+    switch(internalFormat) {
+    case GL_RGB565_TWID_KOS:
+    case GL_ARGB4444_TWID_KOS:
+    case GL_ARGB1555_TWID_KOS:
+    case GL_COLOR_INDEX8_TWID_KOS:
+    case GL_COLOR_INDEX4_TWID_KOS:
+    case GL_RGB_TWID_KOS:
+    case GL_RGBA_TWID_KOS:
+        return true;
+    default:
+        return false;
+    }
+}
+
+/**
+ * Takes an internal format, and returns a GL format matching how we'd store
+ * it internally, so it'll return one of the following:
+ *
+ * - GL_RGB565_KOS,
+ * - GL_ARGB4444_KOS
+ * - GL_ARGB1555_KOS
+ * - GL_RGB565_TWID_KOS
+ * - GL_ARGB4444_TWID_KOS
+ * - GL_ARGB1555_TWID_KOS
+ * - GL_COLOR_INDEX8_EXT
+ * - GL_COLOR_INDEX4_EXT
+ * - GL_COLOR_INDEX8_TWID_KOS
+ * - GL_COLOR_INDEX4_TWID_KOS
+ */
 static GLint _cleanInternalFormat(GLint internalFormat) {
     switch (internalFormat) {
+    case GL_RGB565_KOS:
+    case GL_ARGB4444_KOS:
+    case GL_ARGB1555_KOS:
+    case GL_RGB565_TWID_KOS:
+    case GL_ARGB4444_TWID_KOS:
+    case GL_ARGB1555_TWID_KOS:
+    case GL_COLOR_INDEX8_TWID_KOS:
+    case GL_COLOR_INDEX4_TWID_KOS:
     case GL_COLOR_INDEX4_EXT:
-        return GL_COLOR_INDEX4_EXT;
     case GL_COLOR_INDEX8_EXT:
-        return GL_COLOR_INDEX8_EXT;
+        /* All of these formats are fine as they are, no conversion needed */
+        return internalFormat;
+    case GL_RGB_TWID_KOS:
+        return GL_RGB565_TWID_KOS;
+    case GL_RGBA_TWID_KOS:
+        return GL_ARGB4444_TWID_KOS;
     case GL_ALPHA:
-/*    case GL_ALPHA4:
+    case GL_ALPHA4:
     case GL_ALPHA8:
     case GL_ALPHA12:
-    case GL_ALPHA16:*/
-       return GL_ALPHA;
+    case GL_ALPHA16:
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB4444_TWID_KOS : GL_ARGB4444_KOS;
     case 1:
     case GL_LUMINANCE:
-/*    case GL_LUMINANCE4:
+    case GL_LUMINANCE4:
     case GL_LUMINANCE8:
     case GL_LUMINANCE12:
-    case GL_LUMINANCE16:*/
-       return GL_LUMINANCE;
+    case GL_LUMINANCE16:
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB1555_TWID_KOS : GL_ARGB1555_KOS;
     case 2:
     case GL_LUMINANCE_ALPHA:
-/*    case GL_LUMINANCE4_ALPHA4:
+    case GL_LUMINANCE4_ALPHA4:
     case GL_LUMINANCE6_ALPHA2:
     case GL_LUMINANCE8_ALPHA8:
     case GL_LUMINANCE12_ALPHA4:
     case GL_LUMINANCE12_ALPHA12:
-    case GL_LUMINANCE16_ALPHA16: */
-       return GL_LUMINANCE_ALPHA;
-/*    case GL_INTENSITY:
+    case GL_LUMINANCE16_ALPHA16:
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB4444_TWID_KOS : GL_ARGB4444_KOS;
+    case GL_INTENSITY:
     case GL_INTENSITY4:
     case GL_INTENSITY8:
     case GL_INTENSITY12:
     case GL_INTENSITY16:
-       return GL_INTENSITY; */
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB4444_TWID_KOS : GL_ARGB4444_KOS;
     case 3:
-       return GL_RGB;
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_RGB565_TWID_KOS : GL_RGB565_KOS;
     case GL_RGB:
-    /* case GL_R3_G3_B2: */
+    case GL_R3_G3_B2:
     case GL_RGB4:
     case GL_RGB5:
     case GL_RGB8:
     case GL_RGB10:
     case GL_RGB12:
     case GL_RGB16:
-       return GL_RGB;
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_RGB565_TWID_KOS : GL_RGB565_KOS;
     case 4:
-       return GL_RGBA;
+       return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB4444_TWID_KOS : GL_ARGB4444_KOS;
     case GL_RGBA:
     case GL_RGBA2:
     case GL_RGBA4:
@@ -923,92 +976,51 @@ static GLint _cleanInternalFormat(GLint internalFormat) {
     case GL_RGB10_A2:
     case GL_RGBA12:
     case GL_RGBA16:
-        return GL_RGBA;
-
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_ARGB4444_TWID_KOS : GL_ARGB4444_KOS;
     /* Support ARB_texture_rg */
     case GL_RED:
-/*    case GL_R8:
+    case GL_R8:
     case GL_R16:
-    case GL_RED:
-    case GL_COMPRESSED_RED: */
-        return GL_RED;
-/*    case GL_RG:
+    case GL_COMPRESSED_RED:
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_RGB565_TWID_KOS : GL_RGB565_KOS;
+    case GL_RG:
     case GL_RG8:
     case GL_RG16:
     case GL_COMPRESSED_RG:
-        return GL_RG;*/
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_RGB565_TWID_KOS : GL_RGB565_KOS;
     default:
         return -1;
     }
 }
 
- static GLuint _determinePVRFormat(GLint internalFormat, GLenum type) {
+static GLuint _determinePVRFormat(GLint internalFormat) {
     /* Given a cleaned internalFormat, return the Dreamcast format
      * that can hold it
      */
     switch(internalFormat) {
-        case GL_ALPHA:
-        case GL_LUMINANCE:
-        case GL_LUMINANCE_ALPHA:
-        case GL_RGBA:
-        /* OK so if we have something that requires alpha, we return 4444 unless
-         * the type was already 1555 (1-bit alpha) in which case we return that
-         */
-            if(type == GL_UNSIGNED_SHORT_1_5_5_5_REV) {
-                return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_NONTWIDDLED;
-            } else if(type == GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS) {
-                return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_TWIDDLED;
-            } else if(type == GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS) {
-                return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_TWIDDLED;
-            } else {
-                return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_NONTWIDDLED;
-            }
-        case GL_RED:
-        case GL_RGB:
-            switch(type) {
-                case GL_UNSIGNED_SHORT_5_6_5_TWID_KOS:
-                    return GPU_TXRFMT_RGB565 | GPU_TXRFMT_TWIDDLED;
-                case GL_COMPRESSED_RGB_565_VQ_KOS:
-                case GL_COMPRESSED_RGB_565_VQ_MIPMAP_KOS:
-                    return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-                case GL_COMPRESSED_RGB_565_VQ_TWID_KOS:
-                case GL_COMPRESSED_RGB_565_VQ_MIPMAP_TWID_KOS:
-                    return GPU_TXRFMT_RGB565 | GPU_TXRFMT_TWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-                default:
-                    return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED;
-            }
-        break;
-        /* Compressed and twiddled versions */
-        case GL_UNSIGNED_SHORT_5_6_5_TWID_KOS:
-            return GPU_TXRFMT_RGB565 | GPU_TXRFMT_TWIDDLED;
-        case GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS:
-            return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_TWIDDLED;
-        case GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS:
-            return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_TWIDDLED;
-        case GL_COMPRESSED_RGB_565_VQ_KOS:
-        case GL_COMPRESSED_RGB_565_VQ_MIPMAP_KOS:
-            return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COMPRESSED_RGB_565_VQ_TWID_KOS:
-        case GL_COMPRESSED_RGB_565_VQ_MIPMAP_TWID_KOS:
-            return GPU_TXRFMT_RGB565 | GPU_TXRFMT_TWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COMPRESSED_ARGB_4444_VQ_TWID_KOS:
-        case GL_COMPRESSED_ARGB_4444_VQ_MIPMAP_TWID_KOS:
-            return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_TWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COMPRESSED_ARGB_4444_VQ_KOS:
-        case GL_COMPRESSED_ARGB_4444_VQ_MIPMAP_KOS:
-            return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_NONTWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COMPRESSED_ARGB_1555_VQ_KOS:
-        case GL_COMPRESSED_ARGB_1555_VQ_MIPMAP_KOS:
-            return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_NONTWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COMPRESSED_ARGB_1555_VQ_TWID_KOS:
-        case GL_COMPRESSED_ARGB_1555_VQ_MIPMAP_TWID_KOS:
-            return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_TWIDDLED | GPU_TXRFMT_VQ_ENABLE;
-        case GL_COLOR_INDEX8_EXT:
-            return GPU_TXRFMT_PAL8BPP | GPU_TXRFMT_TWIDDLED;
-        case GL_COLOR_INDEX4_EXT:
-            return GPU_TXRFMT_PAL4BPP | GPU_TXRFMT_TWIDDLED;
-        default:
-            return 0;
+    case GL_RGB565_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED;
+    case GL_ARGB4444_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_NONTWIDDLED;
+    case GL_ARGB1555_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_NONTWIDDLED;
+    case GL_RGB565_TWID_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_TWIDDLED;
+    case GL_ARGB4444_TWID_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_TWIDDLED;
+    case GL_ARGB1555_TWID_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_TWIDDLED;
+    case GL_COLOR_INDEX8_EXT:
+        return GPU_TXRFMT_PAL8BPP | GPU_TXRFMT_NONTWIDDLED;
+    case GL_COLOR_INDEX4_EXT:
+        return GPU_TXRFMT_PAL4BPP | GPU_TXRFMT_NONTWIDDLED;
+    case GL_COLOR_INDEX8_TWID_KOS:
+        return GPU_TXRFMT_PAL8BPP | GPU_TXRFMT_TWIDDLED;
+    case GL_COLOR_INDEX4_TWID_KOS:
+        return GPU_TXRFMT_PAL4BPP | GPU_TXRFMT_TWIDDLED;
+    default:
+        _glKosThrowError(GL_INVALID_ENUM, __func__);
+        return 0;
     }
 }
 
@@ -1121,109 +1133,68 @@ static inline void _a8_to_argb4444(const GLubyte* source, GLubyte* dest) {
     *((GLushort*) dest) = (color << 8) | color;
 }
 
-static TextureConversionFunc _determineConversion(GLint internalFormat, GLenum format, GLenum type) {
-    switch(internalFormat) {
-    case GL_ALPHA: {
-        if(format == GL_ALPHA) {
-            /* Dreamcast doesn't really support GL_ALPHA internally, so store as argb with each rgb value as white */
-            /* Applying alpha values to all channels seems a better option*/
-            return _a8_to_argb4444;
-        } else if(type == GL_UNSIGNED_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_a000;
-        } else if(type == GL_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_a000;
-        }
-    } break;
-    case GL_RED: {
-        if(type == GL_UNSIGNED_BYTE && format == GL_RED) {
-            /* Dreamcast doesn't really support GL_RED internally, so store as rgb */
-            return _r8_to_rgb565;
-        }
-    } break;
-    case GL_RGB: {
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGB) {
-            return _rgb888_to_rgb565;
-        } else if(type == GL_UNSIGNED_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_rgb565;
-        } else if(type == GL_BYTE && format == GL_RGB) {
-            return _rgb888_to_rgb565;
-        } else if(type == GL_UNSIGNED_BYTE && format == GL_RED) {
-            return _r8_to_rgb565;
-        }
-    } break;
-    case GL_RGBA: {
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_argb4444;
-        } else if (type == GL_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_argb4444;
-        } else if(type == GL_UNSIGNED_SHORT_4_4_4_4 && format == GL_RGBA) {
-            return _rgba4444_to_argb4444;
-        }
-    } break;
-    case GL_RGBA8:
-    case GL_RGBA4:
-    case GL_RGB5_A1:
-    case GL_RGB565_KOS:
+/* Given an cleaned internal format, and the passed format and type, this returns:
+ *
+ * 0 if not conversion is necessary
+ * 1 if a conversion is necessary (func will be set)
+ * 2 if twiddling is necessary
+ * 3 if twiddling and conversion is necessary (func will be set)
+ * -1 if a conversion is unsupported
+ *
+ */
+static int _determineConversion(GLint internalFormat, GLenum format, GLenum type, TextureConversionFunc* func) {
+    static struct Entry {
+        GLint internalFormat;
+        GLenum format;
+        GLenum type;
+        TextureConversionFunc func;
+        bool twiddle;
+    } conversions [] = {
+        {GL_ARGB4444_KOS, GL_ALPHA, GL_UNSIGNED_BYTE, _a8_to_argb4444, false},
+        {GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_argb4444, false},        
+        {GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, _rgba4444_to_argb4444, false},
+        {GL_ARGB4444_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV, NULL, false},
+        {GL_ARGB4444_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS, NULL, false},
+        {GL_ARGB4444_TWID_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_argb4444, true},
+        {GL_ARGB1555_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, NULL, false},
+        {GL_ARGB1555_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS, NULL, false},
+        {GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_rgb565, false},
+        {GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, _r8_to_rgb565, false},
+        {GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_BYTE, _rgb888_to_rgb565, false},
+        {GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_rgb565, false},
+        {GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, _r8_to_rgb565, false},
+        {GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, NULL, false},
+        {GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_TWID_KOS, NULL, false},
+        {GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, _rgb888_to_rgb565, true},
+        {GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, NULL, false},
+        {GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, NULL, false},
+        {GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, NULL, false},
+    };
 
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_rgba8888;
+    for(size_t i = 0; i < sizeof(conversions) / sizeof(struct Entry); ++i) {
+        struct Entry* e = conversions + i;
+        if(e->format == format && e->internalFormat == internalFormat && e->type == type) {
+            *func = e->func;
+            int ret = (e->func) ? 1 : 0;
+            ret += (e->twiddle) ? 2 : 0;
+            return ret;
         }
-        else
-        if (type == GL_BYTE && format == GL_RGBA) {
-            return _rgba8888_to_rgba8888;
-        }
-        else
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGB) {
-            return _rgb888_to_rgba8888;
-        }
-        else
-        if (type == GL_BYTE && format == GL_RGB) {
-            return _rgb888_to_rgba8888;
-        }
-        else
-        if(type == GL_UNSIGNED_SHORT_4_4_4_4 && format == GL_RGBA) {
-            return _rgba4444_to_rgba8888;
-        }
-       else
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGBA4) {
-            return _rgba4444_to_rgba8888;
-        }
-        else
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGB5_A1) {
-            return _rgba5551_to_rgba8888;
-        }
-        else
-        if(type == GL_UNSIGNED_BYTE && format == GL_RGB565_KOS) {
-            return _rgb565_to_rgb8888;
-        }
-     break;
-    case GL_COLOR_INDEX8_EXT:
-        if(format == GL_COLOR_INDEX) {
-            switch(type) {
-                case GL_BYTE:
-                case GL_UNSIGNED_BYTE:
-                    return _i8_to_i8;
-                default:
-                    break;
-            }
-        }
-    break;
-    default:
-        fprintf(stderr, "Unsupported conversion: %x -> %x, %x\n", internalFormat, format, type);
-        break;
     }
-    return 0;
+
+    return -1;
 }
 
 static GLboolean _isSupportedFormat(GLenum format) {
     switch(format) {
     case GL_ALPHA:
+    case GL_LUMINANCE:
+    case GL_INTENSITY:
+    case GL_LUMINANCE_ALPHA:
     case GL_RED:
     case GL_RGB:
     case GL_RGBA:
     case GL_BGRA:
     case GL_COLOR_INDEX:
-    case GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS:
         return GL_TRUE;
     default:
         return GL_FALSE;
@@ -1299,49 +1270,44 @@ void _glAllocateSpaceForMipmaps(TextureObject* active) {
 #define TOSTRING(x) STRINGIFY(x)
 #define INFO_MSG(x) fprintf(stderr, "%s:%s > %s\n", __FILE__, TOSTRING(__LINE__), x)
 
-void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
-                           GLsizei width, GLsizei height, GLint border,
-                           GLenum format, GLenum type, const GLvoid *data) {
-
-    TRACE();
-
+static bool _glTexImage2DValidate(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type) {
     if(target != GL_TEXTURE_2D) {
         INFO_MSG("");
         _glKosThrowError(GL_INVALID_ENUM, __func__);
-        return;
+        return false;
     }
 
     if (width > 1024 || height > 1024){
         INFO_MSG("Invalid texture size");
         _glKosThrowError(GL_INVALID_VALUE, __func__);
-        return;
+        return false;
     }
 
     if(format != GL_COLOR_INDEX) {
         if(!_isSupportedFormat(format)) {
             INFO_MSG("Unsupported format");
             _glKosThrowError(GL_INVALID_ENUM, __func__);
-            return;
+            return false;
         }
 
         /* Abuse determineStride to see if type is valid */
         if(_determineStride(GL_RGBA, type) == -1) {
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_ENUM, __func__);
-            return;
+            return false;
         }
 
         internalFormat = _cleanInternalFormat(internalFormat);
         if(internalFormat == -1) {
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_VALUE, __func__);
-            return;
+            return false;
         }
     } else {
         if(internalFormat != GL_COLOR_INDEX8_EXT && internalFormat != GL_COLOR_INDEX4_EXT) {
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_ENUM, __func__);
-            return;
+            return false;
         }
     }
 
@@ -1352,7 +1318,7 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             /* Width is not a power of two. Must be!*/
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_VALUE, __func__);
-            return;
+            return false;
         }
 
 
@@ -1360,7 +1326,7 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             /* height is not a power of two. Must be!*/
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_VALUE, __func__);
-            return;
+            return false;
         }
     } else {
         /* Mipmap Errors, kos crashes if 1x1 */
@@ -1368,26 +1334,38 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             gl_assert(ACTIVE_TEXTURE < MAX_GLDC_TEXTURE_UNITS);
             gl_assert(TEXTURE_UNITS[ACTIVE_TEXTURE]);
             TEXTURE_UNITS[ACTIVE_TEXTURE]->mipmap |= (1 << level);
-            return;
+            return false;
         }
     }
 
     if(level < 0) {
         INFO_MSG("");
         _glKosThrowError(GL_INVALID_VALUE, __func__);
-        return;
+        return false;
     }
 
     if(level > 0 && width != height) {
         INFO_MSG("Tried to set non-square texture as a mipmap level");
         printf("[GL ERROR] Mipmaps cannot be supported on non-square textures\n");
         _glKosThrowError(GL_INVALID_OPERATION, __func__);
-        return;
+        return false;
     }
 
     if(border) {
         INFO_MSG("");
         _glKosThrowError(GL_INVALID_VALUE, __func__);
+        return false;
+    }
+
+    return true;
+}
+
+void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
+                           GLsizei width, GLsizei height, GLint border,
+                           GLenum format, GLenum type, const GLvoid *data) {
+
+    TRACE();
+    if(!_glTexImage2DValidate(target, level, internalFormat, width, height, border, format, type)) {
         return;
     }
 
@@ -1400,19 +1378,16 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         return;
     }
 
-    gl_assert(active);
-    GLuint original_id = active->index;
-
     GLboolean isPaletted = (internalFormat == GL_COLOR_INDEX8_EXT || internalFormat == GL_COLOR_INDEX4_EXT) ? GL_TRUE : GL_FALSE;
-
-    /* Calculate the format that we need to convert the data to */
-    GLuint pvr_format = _determinePVRFormat(internalFormat, type);
+    GLenum cleanInternalFormat = _cleanInternalFormat(internalFormat);
+    GLuint pvrFormat = _determinePVRFormat(cleanInternalFormat);
+    GLuint originalId = active->index;
 
     if(active->data && (level == 0)) {
         /* pre-existing texture - check if changed */
         if(active->width != width ||
            active->height != height ||
-           active->color != pvr_format) {
+           active->internalFormat != cleanInternalFormat) {
             /* changed - free old texture memory */
             yalloc_free(YALLOC_BASE, active->data);
             active->data = NULL;
@@ -1445,7 +1420,8 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         /* need texture memory */
         active->width   = width;
         active->height  = height;
-        active->color   = pvr_format;
+        active->color   = pvrFormat;
+        active->internalFormat = cleanInternalFormat;
         /* Set the required mipmap count */
         active->mipmapCount = _glGetMipmapLevelCount(active);
         active->mipmap_bias = GL_KOS_INTERNAL_DEFAULT_MIPMAP_LOD_BIAS;
@@ -1476,139 +1452,66 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
     /* If we run out of PVR memory just return */
     if(!active->data) {
         _glKosThrowError(GL_OUT_OF_MEMORY, __func__);
-        gl_assert(active->index == original_id);
+        gl_assert(active->index == originalId);
         return;
     }
 
     /* Mark this level as set in the mipmap bitmask */
     active->mipmap |= (1 << level);
 
-    /* Let's assume we need to convert */
-    GLboolean needsConversion = GL_TRUE;
-
-    /* Let's assume we need twiddling - we always store things twiddled! */
-    GLboolean needsTwiddling = GL_TRUE;
-
-    /*
-     * These are the only formats where the source format passed in matches the pvr format.
-     * Note the REV formats + GL_BGRA will reverse to ARGB which is what the PVR supports
-     */
-    if(format == GL_COLOR_INDEX) {
-        /* Don't convert color indexes */
-        needsConversion = GL_FALSE;
-
-        if(type == GL_UNSIGNED_BYTE_TWID_KOS) {
-            needsTwiddling = GL_FALSE;
-        }
-    } else if(format == GL_BGRA && type == GL_UNSIGNED_SHORT_4_4_4_4_REV && internalFormat == GL_RGBA) {
-        needsConversion = GL_FALSE;
-    } else if(format == GL_BGRA && type == GL_UNSIGNED_SHORT_1_5_5_5_REV && internalFormat == GL_RGBA) {
-        needsConversion = GL_FALSE;
-    } else if(format == GL_RGB && type == GL_UNSIGNED_SHORT_5_6_5 && internalFormat == GL_RGB) {
-        needsConversion = GL_FALSE;
-    } else if(format == GL_RGB && type == GL_UNSIGNED_SHORT_5_6_5_TWID_KOS && internalFormat == GL_RGB) {
-        needsConversion = GL_FALSE;
-        needsTwiddling = GL_FALSE;
-    } else if(format == GL_BGRA && type == GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS && internalFormat == GL_RGBA) {
-        needsConversion = GL_FALSE;
-        needsTwiddling = GL_FALSE;
-    } else if(format == GL_BGRA && type == GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS && internalFormat == GL_RGBA) {
-        needsConversion = GL_FALSE;
-        needsTwiddling = GL_FALSE;
-    }
-
     GLubyte* targetData = (active->baseDataOffset == 0) ? active->data : _glGetMipmapLocation(active, level);
     gl_assert(targetData);
 
-    GLubyte* conversionBuffer = NULL;
-
-    if(!data) {
-        /* No data? Do nothing! */
-        gl_assert(active->index == original_id);
+    TextureConversionFunc conversion;
+    int needs_conversion = _determineConversion(cleanInternalFormat, format, type, &conversion);
+    if(needs_conversion < 0) {
+        _glKosThrowError(GL_INVALID_VALUE, __func__);
+        INFO_MSG("Couldn't find necessary texture conversion\n");
         return;
-    } else if(!needsConversion && !needsTwiddling) {
+    } else if(needs_conversion > 0) {
+        /* Convert the data */
+        GLint sourceStride = _determineStride(format, type);
+        GLint destStride = _determineStrideInternal(cleanInternalFormat);
+
+        if(sourceStride == -1) {
+            INFO_MSG("Stride was not detected\n");
+            _glKosThrowError(GL_INVALID_OPERATION, __func__);
+            return;
+        }
+
+        GLubyte* conversionBuffer = (GLubyte*) malloc(bytes);
+        const GLubyte* src = data;
+        GLubyte* dst = conversionBuffer;
+        for(uint32_t i = 0; i < (width * height); ++i) {
+            if(needs_conversion > 1) {
+                // Needs twiddling. Set dst to the twiddle location
+                // for this texel
+                uint32_t newLocation = twid_location(i, width, height);
+                dst = conversionBuffer + (destStride * newLocation);
+            }
+
+            if(conversion) {
+                conversion(src, dst);
+            }
+
+            dst += destStride;
+            src += sourceStride;
+        }
+
+        FASTCPY(targetData, conversionBuffer, bytes);
+        free(conversionBuffer);
+    } else {
+        /* No conversion necessary, we can just upload data directly */
         gl_assert(targetData);
         gl_assert(data);
         gl_assert(bytes);
 
         /* No conversion? Just copy the data, and the pvr_format is correct */
         FASTCPY(targetData, data, bytes);
-        gl_assert(active->index == original_id);
-        return;
-    } else if(needsConversion) {
-        TextureConversionFunc convert = _determineConversion(
-            internalFormat,
-            format,
-            type
-        );
-
-        if(!convert) {
-            INFO_MSG("Couldn't find conversion\n");
-            _glKosThrowError(GL_INVALID_OPERATION, __func__);
-            return;
-        }
-
-        GLint stride = _determineStride(format, type);
-        gl_assert(stride > -1);
-
-        if(stride == -1) {
-            INFO_MSG("Stride was not detected\n");
-            _glKosThrowError(GL_INVALID_OPERATION, __func__);
-            return;
-        }
-
-        conversionBuffer = malloc(bytes);
-
-        GLubyte* dest = conversionBuffer;
-        const GLubyte* source = data;
-
-        gl_assert(conversionBuffer);
-        gl_assert(source);
-
-        /* Perform the conversion */
-        GLuint i;
-        for(i = 0; i < bytes; i += destStride) {
-            convert(source, dest);
-
-            dest += destStride;
-            source += stride;
-        }
+        gl_assert(active->index == originalId);
     }
 
-    if(needsTwiddling) {
-        const GLubyte *pixels = (GLubyte*) (conversionBuffer) ? conversionBuffer : data;
-
-        if(internalFormat == GL_COLOR_INDEX8_EXT) {
-            GPUTextureTwiddle8PPP((void*) pixels, targetData, width, height);
-        }
-        else{
-            if(internalFormat == GL_COLOR_INDEX4_EXT) {
-                GPUTextureTwiddle4PPP((void*) pixels, targetData, width, height);
-            }
-            else {
-                GPUTextureTwiddle16BPP((void*) pixels, targetData, width, height);
-            }
-        }
-
-        /* We make sure we remove nontwiddled and add twiddled. We could always
-         * make it twiddled when determining the format but I worry that would make the
-         * code less flexible to change in the future */
-        active->color &= ~(1 << 26);
-    } else {
-        /* We should only get here if we converted twiddled data... which is never currently */
-        gl_assert(conversionBuffer);
-
-        // We've already converted the data and we
-        // don't need to twiddle it!
-        FASTCPY(targetData, conversionBuffer, bytes);
-    }
-
-    if(conversionBuffer) {
-        free(conversionBuffer);
-        conversionBuffer = NULL;
-    }
-
-    gl_assert(active->index == original_id);
+    gl_assert(active->index == originalId);
     _glGPUStateMarkDirty();
 }
 
@@ -1764,13 +1667,15 @@ GLAPI void APIENTRY glColorTableEXT(GLenum target, GLenum internalFormat, GLsize
 
     gl_assert(sourceStride > -1);
 
-    TextureConversionFunc convert = _determineConversion(
+    TextureConversionFunc convert;
+    int ret = _determineConversion(
         INTERNAL_PALETTE_FORMAT,
         format,
-        type
+        type,
+        &convert
     );
 
-    if(!convert) {
+    if(ret < 0) {
         _glKosThrowError(GL_INVALID_OPERATION, __func__);
         return;
     }
diff --git a/include/GL/gl.h b/include/GL/gl.h
index f65bee6..7cc049e 100644
--- a/include/GL/gl.h
+++ b/include/GL/gl.h
@@ -310,7 +310,7 @@ __BEGIN_DECLS
 #define GL_4_BYTES                              0x1409
 
 /* ErrorCode */
-#define GL_NO_ERROR                       0
+#define GL_NO_ERROR                       ((GLenum) 0)
 #define GL_INVALID_ENUM                   0x0500
 #define GL_INVALID_VALUE                  0x0501
 #define GL_INVALID_OPERATION              0x0502
@@ -371,6 +371,31 @@ __BEGIN_DECLS
 #define GL_RGBA                           0x1908
 #define GL_LUMINANCE                      0x1909
 #define GL_LUMINANCE_ALPHA                0x190A
+
+#define GL_R3_G3_B2                    0x2A10
+
+#define GL_ALPHA4                    0x803B
+#define GL_ALPHA8                    0x803C
+#define GL_ALPHA12                    0x803D
+#define GL_ALPHA16                    0x803E
+
+#define GL_LUMINANCE4                  0x803F
+#define GL_LUMINANCE8                  0x8040
+#define GL_LUMINANCE12                  0x8041
+#define GL_LUMINANCE16                  0x8042
+
+#define GL_LUMINANCE4_ALPHA4              0x8043
+#define GL_LUMINANCE6_ALPHA2              0x8044
+#define GL_LUMINANCE8_ALPHA8              0x8045
+#define GL_LUMINANCE12_ALPHA4              0x8046
+#define GL_LUMINANCE12_ALPHA12              0x8047
+#define GL_LUMINANCE16_ALPHA16              0x8048
+
+#define GL_INTENSITY4                  0x804A
+#define GL_INTENSITY8                  0x804B
+#define GL_INTENSITY12                  0x804C
+#define GL_INTENSITY16                  0x804D
+
 #define GL_BGRA                           0x80E1
 #define GL_INTENSITY                      0x8049
 #define GL_RGB4                           0x804F
@@ -387,6 +412,14 @@ __BEGIN_DECLS
 #define GL_RGBA12                         0x805A
 #define GL_RGBA16                         0x805B
 
+#define GL_R8                      0x8229
+#define GL_RG8                      0x822B
+#define GL_RG                      0x8227
+#define GL_R16                      0x822A
+#define GL_RG16                      0x822C
+#define GL_COMPRESSED_RED                0x8225
+#define GL_COMPRESSED_RG                0x8226
+
 /* Polygons */
 #define GL_POINT				0x1B00
 #define GL_LINE					0x1B01
diff --git a/include/GL/glkos.h b/include/GL/glkos.h
index e2ef11a..5307d6b 100644
--- a/include/GL/glkos.h
+++ b/include/GL/glkos.h
@@ -87,7 +87,7 @@ GLAPI void APIENTRY glKosInitConfig(GLdcConfig* config);
  */
 GLAPI void APIENTRY glKosInitEx(GLdcConfig* config);
 GLAPI void APIENTRY glKosSwapBuffers();
-
+GLAPI void APIENTRY glKosShutdown();
 
 /*
  * CUSTOM EXTENSION multiple_shared_palette_KOS
@@ -186,12 +186,28 @@ GLAPI void APIENTRY glKosSwapBuffers();
 /* Memory allocation extension (GL_KOS_texture_memory_management) */
 GLAPI GLvoid APIENTRY glDefragmentTextureMemory_KOS(void);
 
+/* glGet extensions */
 #define GL_FREE_TEXTURE_MEMORY_KOS                  0xEF3D
 #define GL_USED_TEXTURE_MEMORY_KOS                  0xEF3E
 #define GL_FREE_CONTIGUOUS_TEXTURE_MEMORY_KOS       0xEF3F
 
 //for palette internal format (glfcConfig)
 #define GL_RGB565_KOS                               0xEF40
+#define GL_ARGB4444_KOS                             0xEF41
+#define GL_ARGB1555_KOS                             0xEF42
+#define GL_RGB565_TWID_KOS                          0xEF43
+#define GL_ARGB4444_TWID_KOS                        0xEF44
+#define GL_ARGB1555_TWID_KOS                        0xEF45
+#define GL_COLOR_INDEX8_TWID_KOS                    0xEF46
+#define GL_COLOR_INDEX4_TWID_KOS                    0xEF47
+#define GL_RGB_TWID_KOS                             0xEF48
+#define GL_RGBA_TWID_KOS                            0xEF49
+
+/* glGet extensions */
+#define GL_TEXTURE_INTERNAL_FORMAT_KOS              0xEF50
+
+/* If enabled, will twiddle texture uploads where possible */
+#define GL_TEXTURE_TWIDDLE_KOS                      0xEF51
 
 __END_DECLS
 
diff --git a/samples/nehe06/main.c b/samples/nehe06/main.c
index 387d963..7f32af5 100644
--- a/samples/nehe06/main.c
+++ b/samples/nehe06/main.c
@@ -56,11 +56,12 @@ void LoadGLTextures() {
     glTexImage2D(GL_TEXTURE_2D, 0, 3, image1->sizeX, image1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, image1->data);
 
     free(image1);
-};
+}
 
 /* A general OpenGL initialization function.  Sets all of the initial parameters. */
 void InitGL(int Width, int Height)	        // We call this right after our OpenGL window is created.
 {
+    glEnable(GL_TEXTURE_TWIDDLE_KOS);
     LoadGLTextures();
     glEnable(GL_TEXTURE_2D);
     glClearColor(0.0f, 0.0f, 0.0f, 0.0f);		// This Will Clear The Background Color To Black
@@ -74,7 +75,7 @@ void InitGL(int Width, int Height)	        // We call this right after our OpenG
 
     gluPerspective(45.0f,(GLfloat)Width/(GLfloat)Height,0.1f,100.0f);	// Calculate The Aspect Ratio Of The Window
 
-    glMatrixMode(GL_MODELVIEW);
+    glMatrixMode(GL_MODELVIEW);    
 }
 
 /* The function called when our window is resized (which shouldn't happen, because we're fullscreen) */
diff --git a/samples/prof_texture_upload/image.h b/samples/prof_texture_upload/image.h
new file mode 100644
index 0000000..44d9898
--- /dev/null
+++ b/samples/prof_texture_upload/image.h
@@ -0,0 +1,8207 @@
+/*  GIMP header image file format (RGB): /home/kazade/Documents/Untitled.h  */
+
+static unsigned int width = 512;
+static unsigned int height = 256;
+
+/*  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 =
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D*C=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D;7JKR-<&XO$@V.85L+WN;7JJ*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D@8Z^X_(AZODHZ?@GY_8EZ/<FY?,CS=L*0$Q])S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"@Y\"`Y/,BZODHZODHZODHZODHZODHZ?@GW>L:>(2T256&GZS<>XFY+CIK)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA)'\""
+	"Y?0CZODHZODHZODHZODHZODHZODHZ?@GS=L(?XNYM\\3TY_8EY_8ET^(1H*W>3UR,"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DAI/$Y?0C"
+	"ZODHZODHZODHZODHZODHZODHZODHYO4DP<[[BI?&X>`?Z/<FZ/<FY_8EY_8EXN`?"
+	"N\\GY>8:V*C=G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DAY3$Y?0CZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GW>L:O\\OXQM0#Z?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FYO4DT=`/G:K:25:&)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DDZ#1YO4DZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GT-T,N\\?UXO$?Z/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EZ/<FY_8EY_8EX>\\>N<?W=H*S*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C=HI+'AZ/<FZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZ?@GY_8EN,/RL;WIZ/8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FY_8EZ/<FY_8EY_8EYO4DT-\\.FZC81E*#)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!QM<+SZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GW.L:EJ+.R]@&Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EYO4DX.X=M\\3T<7VN)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D0$Q]PM'`ZODHZ?@GZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZ?@GZ?@GZ/<FQ]4#G*C4XN`?Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EYO4DS-H)AI+#+CIK)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D4EZ/SMP+ZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FY?0CKKOHO\\OYZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_4DT-\\.CYW-"
+	"-$!Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D9'&BU^85ZODHZODHZODHZODHZODHZ?@GZODHZ?@G"
+	"Z?@GZ?@GZ/<FZ?<FZ/<FV^D8GZS8VN@7Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EYO4D"
+	"UN03F:;6.TAX)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D=H.TW^X=ZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"Z?@GZ?@GZ/<FZ/<FY_8EQ='`K;KFY_8EZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EV>@7H:_?15*\")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-DB9;'Y/,BZODHZ?@GZODHZODHZODHZODHZODHZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?<FZ/<FY/,BJK;DSMP)Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EWNP;J[?H5F.4)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D-$!Q5F*3=(&Q@(R]B)3%CIK*DI[/C9O+@X^_=X.S"
+	"9W.D3UN,,3UN)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-DFZC8YO8EZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZODHZ?@G"
+	"Z?@GZ?@GZ/<FZ/<FU>02HZ_<XN`?Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EXO$@O,GZ=8*R*C9H)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G"
+	"76F:BI?'I+#AN<7VR]D(V>@7Y?,BZO@GZO<FZ?<FZ?<FZ?<FZ?8EZ?8EZ?8EZ/4D"
+	"Z/4DZ/4DX_$?V.44S-D(M,#PF*75E*'18&V=*S=H)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D,3UNL+WNZ/<FZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FY_4DN\\?VN\\CVZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FY_8EYO0CS-L*D)W-.45V)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G8&V>EZ34O<GZV^D8"
+	"Z?@GZ_DHZ_HHZODHZ/<EZ/8EY_4CYO0CY?,BY/(AX_$@XN`?XN`?XN`?X>\\>X>\\>"
+	"X>\\>XN`?XN`?X_$@X_$@Y/(AXN`?ZODGY?0CU>,2M<+SC9K)1U.$)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"1E*#Q-,\"Z?@GZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FX>\\>H:S9U^43Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EYO4DV>@7I[3D4V\"1)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=H:'6EJ;;FU.(1Z/8EZ_DH[/LJZ_DH"
+	"Z?@GY_4DY?,BY/(AXN`?X>\\>X.X=WNP;W>L:W.H9V^D8VN@7VN@7V><6V><6V><6"
+	"V><6V.<6V><6VN@7VN@7V^D8V^D8WNP:X_(AXO$@Y/(AY/(AU^03<7VM)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D8&R="
+	"U.(1ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FY_8ES-H)I;'=YO4CZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EX>\\>NL?W<G^O"
+	"*C=G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D6666H[#@T^$/Z/8E[/LI[?PKZ_HIZ?@GYO4DY/(B"
+	"X>`?W^T=WNP;W.H9V^D8VN@7V><6V.85U^44UN03UN03U>,2U.(1U.(1T^$0T^$0"
+	"T^$0T^$0T^$0TM`0T^$0T^$0U.(1U.(1UN03UN03V><6V^D8V^D8P,W\\*C9G)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>XBYW^X="
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZODHZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GYO4DKKKGR-4\"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY?0C"
+	"R]D(CIK+-D)S)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D.$5VC9K+Q=(!Y?,BZ_DH[?PK[/LJZ?@GYO4DX_(AX.\\>WNT<W.L:"
+	"V^D8VN@7V><6U^85UN44U>,3T^$1TM`/T=\\.T-X.S]T-S]T,S]T,SMP+S=L*S-H)"
+	"S=L*S-H)S=L*S-H)S=L*S=L*SMP+SMP+S]T,T-X-T-X-S]T,T=\\.T-X-L\\#PAY/$"
+	"25:&)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DEJ/3Y?0CZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FVN@7GZK6W^X<Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EY_8E"
+	"Y_8EYO4DV.<6I;+B45V.)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D1U.$HJ[?V><6Z?8E[/LI[?PJZ_HIZ/<FY?,BX>`?WNP;W.L:V^D8VN@7V><6"
+	"U^44U>,2T^$1T=\\/S]T-S]T-SMP+S=L*S=P+S-H)R]D(R]D(S-H)RM@(RM@'RMD("
+	"RM@'RM@'R=@'R=@&R=@'R=@'R=@'R=@'R=@&RM@'RMD'R]D(S-H)S=L*SMT+T-X-"
+	"S=L*K;KJLL#PC)G*-D)S)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,3UNK[SLZ/<FZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FY_8EP,W\\N,3RZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EX>`?N<;V;WRL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/TM\\"
+	"I;+BW>L:Z/8E[/LJ[?PKZ_HJY_8EX_(AX.X=W>L:V^D9VN@7V><6U^44U>03T^$0"
+	"T-X-S]T-S=L+S-L*S-L*S-H*S=L*R]H)R]D(R]D(RM@'R]D(RMD'RMD(RM@'RM@'"
+	"R=@'R=@'R=@'R=<&R-<&R-<&R-<&R-<&R-<%R-<%R-8%R-<%R=<&R=<&RM@'RM@'"
+	"R]H)R]H)R]D%Z_HJV><7J[?H7VN<)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1%\"!P](\"ZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FXO$@I+#=U>,1Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/<FY_8EZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_4DY?0CR=@'BYC(-$!Q)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,3UNE:+2V.85"
+	"Z/4D[/HI[?PK[?PKZ?@GY/(BW^T=W.H9V><6VN@7V.86UN04T^$1T-X.SMP,S-H*"
+	"R]D(S-H)R]H)R]D)R]D(RM@'Q=(\"O\\O[P\\[^R=<&RM@'R]D(RM@'RM@'RM@'RM@'"
+	"RM@'RM@'RM@'R=@'R=<&R-<&R-<&R-<&R-<&R-8%R-<&R-<%Q]8$R-<%R-<%R-8%"
+	"R-8%R-8%K+GGYO0CY?,CY/,BX_$@P]$!>8:W*S=H)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7FN<T^$0ZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FS]T,IK+?YO0CZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FY_8EZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EZ/8F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DU^85HJ_@3EJ+)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D;'FJSML*Y_0CZ_DG"
+	"[OPK[?PKZODHY/,CW^T=V^H9V><7V><6U^44U>,3TM`0S]T-S=L*R]D)RMD(RMD("
+	"R]D(R]D)S-H)Q]0%M+GILJW9MZ_:O;+=NK+=L[#;M[CEQL[[R]D(RMD(RM@'RM@'"
+	"RMD(RM@'RMD'RM@'R=<&R=<&R=<&R-<&R-<&R-<&R-<&Q]8%Q]8%R-8%Q]8%R-8%"
+	"Q]8$Q]8$J[GIU>(0X_(BX>\\?X_$@Y/(BX_(AQ-$!=(&Q)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>86VWNP<Z?@GZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"YO4DL;WKQ='_Z/<FY_8EZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DX.X>ML3T;'BI)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D2E:'JK?GX.X=YO0CYO0B[_XM"
+	"[?PKY_4EX.X>W>L:V^D8V><6U^85U.(2TM`0S]T,S-H*RMD(RMD(RM@(RM@(RMD("
+	"RMD(R]D(PLW_M*[:R:/.UG^EVFE`V6!KV6)QVG.-T9>\\P;#8O+[HRM@&R]D(RMD("
+	"RMD(RM@'RM@'R=@'R=@'R=<&R=@'R=<&R-<&R-<&R-<&R-<%R-8%R-8%Q]8%R-8%"
+	"Q]8$Q]8$N\\GZNL7SY_4FX>\\?X.X>X>\\?X_$@Y/(AX_$AP,W]9W2E)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-DDZ#1Y/,BZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZ?@GZ/<F"
+	"VND8GZO7W^X<Z/<FZ/<FZ?<FZ/<FZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/8EZ/8FY_8EY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY?0CR-8%B)7%"
+	"-$!Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!QF*76VN@7YO0BZ_HH[?PKY?0CZO@G"
+	"X_$AWNP;V^D8V><6V.85U>03T=`0SMP,S-H)RMD(RMD(RMD(RMD(RMD(R]D(R]D("
+	"R]D(Q,`\"N:_<TXJUV7:!T*/\"R[3;R;CCRK;@SJ;-VG>2VVU]R;3<NKWHRM@&R]D("
+	"RM@'RM@'RM@'RM@'R=@&R=@'R=<&R=<&R=@'R-<&R-<&R=<&R-8%R-8%Q]8%Q]8%"
+	"Q]8$Q]4$Q=0#I+#>Y_4EXN`@X.X>X.X>X.X>X.X>XN`@X_(AX>\\>L+SM3EJ+)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D+CIKK+GJZ/<FZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ/<F"
+	"P<W\\M<'OZ/<FZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Z/8EZ/<FZ/<FZ/8EY_8EZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"U>03H*W=2E>()S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D>H>XS]T,Y?,BY_4C[/PJ[OTLZODIW.H:W^X<"
+	"W.L:VN@7V.<6UN44TN$0SMT-S-H*RM@(R=@'R=@'RM@'R=@'RMD(RMD(R]D(R]D("
+	"R]D)N;3EU(FTV(.1R+SDSJO8UXVUV8BLUX^TSZW5R;SIUXFMVV]_QKKDO\\7QR]D("
+	"R]D(RM@'RM@'R=@'RM@'R=<&R=<&R-<&R=<&R-<&R-<&R-<&R=<&R-8%R-8%Q]8%"
+	"Q]8$Q]8$Q]8$H:[>X.X=XN`@X.X>X.X>X.X>X.X>X.X>X>\\?XO$@X_$@VN@7DI_/"
+	"*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D0DY_P<__Z?@GZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GXO$@"
+	"HJ_<T^$/Z/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EZ/<FY_4DY_8EY_8EY_8EZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO0CW^P;M,'Q:76F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-DFZ?8X^`?Y/$?Z/8D[OTK[OTMZ/<GW^X>V.86UN43"
+	"V><6V.85U.,2T-\\/S-L*RM@'RM@'R=@'R=@'R=@'RMD(RM@(RMD(R]D(R]D)S-H)"
+	"P\\S_RJ+1VG%YRKKBU9K*X&-MVHZGU9R^VHJIX5]EV(^KR;[KVH*EV8F@OL+NR-/`"
+	"R]D(RMD(RMD'RM@'RM@'R=@'R=@'R=@'R=<&R-<&R=@&R-<&R=<&R=@'Q]8$R-8%"
+	"Q]8$R-8%Q]8$K+KJS]P)Y/(CX.X>X.X>X.X>X.X>X.X>X.X>W^T=X>\\>XN`@X_$@"
+	"N\\CX35J*)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D7&B9T=`/ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GSMP*"
+	"HZ_<YO4CZ/<FZ/<FZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EZ/<FYO4DY_8EY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"YO4DY_8EY_4DYO4DX_(AQM0#AI+#,3UN)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DB9;&X_$@Y/$?Z/<E[OTL\\/\\NY_4FW>L;VN@7V><6V.86"
+	"UN44T^(2SMP,R]H)R=@'R=@'R=@'RM@(R=@'RM@(RMD(RMD(R]D(R]D(R]D)S-H)"
+	"O\\'SV(>RTJ&\\S;#>WF9PTK'4T:S9U*/+S[+<TK';X&AXU:'!S+CGWF=SR[K?P,CU"
+	"S-H)R]D(RMD(RMD'RMD(RMD(R=@'R=@'R=@'R=@'R=@&R-<&R-<%R=<&R-8%R-8%"
+	"Q]8$Q]8$Q]8$OLS\\L[_LY_8FX.X>X.X>X.X>X.X>X.X>X.X>W^T=X.X>X.X>X>\\?"
+	"XN`@U>,2?(FY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D=X.TW>P;Z?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GY_4EKKKH"
+	"Q='_Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EZ/<FY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EZ/<FY_8EZ/8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DU.,2GJO;1E.$)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D+3IKT]`/X.X<XN`>Y_8EZ_HIZ_HIW^T=V><7V.85V.85U>,3"
+	"T=`0S-L*RM@(RM@(R=<'R=@'R=@'RM@(RMD(RMD(RMD(R]D)R]D(RMD(R]H)S-H*"
+	"PK_PW'\"1S;37V(ZZVI2JUIS+X&APWX.:XV)JUZ\"_U*/0WVQUR,+MT:O5R;SBO<;T"
+	"SML)R]D(RMD'R]D(RM@'RMD(RM@'R=@'R=@'R=@'R=<&R=<&R-<&R-<%R-8%R-<%"
+	"Q]8%R-8%Q]8$QM4$H:W;YO0DX>\\?X.X>X.X>X.X>X.X>W^T=W^T=W^T=W^T=W^T="
+	"X.X>X>\\?WNP;H:_?,3UN)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"+CIKGZW>Y/,BZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GVN@7GJG6"
+	"W^X<Z?@GZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Z/<FY_8EY_8EY_8EY_8EZ/<FZ/<FY_4DY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DW^T<LK_O97*B)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D6VB9W>L9V^@6W.D7X_$@Y?,BYO4DV^D9V.85V.85U.,3S]X."
+	"R]H)RMD(R=@'R=@'R=@'R=@'R=@'RM@(RMD(RMD(R]D)R]D)R]D(R]D)R]D)S=L+"
+	"Q<#PW&=`RKC>W(.NU*7#W(&JUZ*^R,'MTZW:X69JS[KBWW*-T*W.P,CWP,O[O\\O["
+	"R-4!R]D(R]D(RMD(RM@'RMD(RMD(R=@'R=@'R=@&R=@&R=<&R=<&R=<&R-<%R-<%"
+	"R-8%R-8%Q]8$Q]8%H:_?WNP;XN`@X.X>X.X>X.X>X.X>X.X>W^T=W^T=W^T=W^T="
+	"W^T=X.X>X>\\?XN`?P,W]3UN,)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D5&\"1"
+	"Q=0#ZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ/<FOLKXLK_L"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EZ/<F"
+	"Y_8EY_8EY_4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY/(AQ-(!@X^`+CIK)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D76J<V^D7V>84V.43X.X=X_$@VND9U^85U^85U.,3SMT-RMD("
+	"R=@'RMD(R=@(R=@'R=@'RM@'RM@(RM@(RM@(R]D(R]D(R]D)R]D)R]H)R]H)S-L+"
+	"Q,3SW7*2SZ[0UY;#V9:QUI_)X6Y`W8.DS[;>X'\"2TJ[/VI;#V96MP<GYP,S\\P<W]"
+	"P\\_]S-H)R]D(R]D(R]D(RMD(RMD'RM@'RM@'R=@'R=@'R=@&R=<&R-<&R-<&R-<%"
+	"R-<&R-8%Q]8$Q]8$KKSMS-D%Y/,CX.X>X.X>X.X>X.X>X.X>X.X>W^T=W^T=W^T="
+	"W^T=W^T=W^T=X.X>X>\\?TM`/;7FJ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@Y\"`W>P;"
+	"ZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZ?@GX>`?GZS9U.(0"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_4DZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EZ/<F"
+	"Y_8EZ/<FY_8EZ/<FY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_4DY_4DY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_4DYO0CTN$0FZC8"
+	"15&\")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D,S]QTM\\.U^43U^02X.X<XN`@Q]4#V><6T^,3S-L+RMD(R=@'"
+	"RM@(RMD(RMD(RMD(R=@'RM@(RM@(RM@(RMD(RMD(R]D)R]D)R]H)S-H)R]H)S-L*"
+	"Q,GXV92`VI.JSK3BX6IVT+??TJS4U*G,T;/@XF9]T+/4V)O*W)\"?P<KYP<W]P<W]"
+	"P,S[S=L*R]D(R]D(R]D(R]D(RMD(RMD(RM@'R=@'R=@'R=<&R=<&R-<&R-<%R-<%"
+	"R-8%R-8%R-8%Q]4$O\\W^K[OHY_8FX.X>X.X>X.X>X.X>X.X>W^T=W^T=W^T=W^T="
+	"W^T=W^T=W^T=W^T=X.X>X>\\?VN@7A)'!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-T-TK[SMZ/<FZODH"
+	"ZODHZ?@GZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GR]D'H:W9Y_4D"
+	"Z?@GZ?@GZ/<FZ/8EYO4DY?,CY/(AX_$@XN`?X>\\>X.X=W^T<W^T<WNP;WNP;WNP;"
+	"W>P;WNP;W>P;W>P;W>P;WNP;W^T<W^T<X.X=X.\\>X>\\>XO$@X_(AY/(AY?,BYO0C"
+	"YO4DZ/8EZ/<FZ?@GZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EZ/<FY_8EZ/<FZ/<FY_8EZ/<FZ/8EZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO0C"
+	"W>P;L+WN8FZ?)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DN<7VV.43W>L8Z?<F[?PLN<?XT=`-S=P,R=@'RM@(RM@("
+	"RMD(RMD(RMD(R=@'RM@(RMD(RMD(RMD(RMD(RMD(R]D(R]D(R]D)R]H)S-H*S-H*"
+	"Q<W]S;WMX&ATSKC?V9G!XF]\\VY>ZW).ZXFE\\VIJQR\\'NX'JAU:;!P,O[P<W]P<[^"
+	"O\\O[Q=,!R]H)R-<&P<__PM#_R]D(R]D(RMD'RM@'R=@'R=@'R=@&R=<&R=@&R-<%"
+	"R-8%R-8%R-8%Q]8$QM4$GZK9Y?0CX>\\?X.X>X.X>X.X>W^T=X.X>X.X>W^T=W^T="
+	"WNP<W^T=W^T=W^T=W^T=W^T=X>\\>WNP;FZC8*S=H)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D97&BS]X.Z?@GZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZ?@GY?0CJ[?EO<KXX>\\>"
+	"W.H9VN<6V><5V><5VN@6W.D8W>L:WNP;W^T<X>\\>XO$@X_(@Y/,AY?,BY?,BYO0C"
+	"YO0CYO0CYO4DYO0CYO4DYO4CYO0CY?0CY?,BY?,BY/,AY/(AX_$@XN`?XN\\>X>\\="
+	"X.X=W^T<W^P;WNP;W^T<X.\\>XO$@Y/,BYO0CY_8EZ/<FZ?@GZ?@GZ/<FZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EZ/8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DY?0CY/(AP<__@(V]+CIK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DI[3EWNL7Z?@G[_XN[_XNQ]<*NL;SSMT-R=@'R=@'RMD("
+	"RMD(RMD(RM@(RMD(RMD(RM@'RMD(R]D)R]D)RMD(R]H)R]H)R]D)R]D)R]H)S-H)"
+	"Q]0$Q,KYU9O'WGR0SKWFTJ[8VI6TV)BXT;/8S,#NVXZZX'A^Q\\7OP,S\\P,W]P<[^"
+	"P,W]N\\CXM<+QL\\'PN<;UN\\CWO\\SZR]D(R]D(RM@'RM@'R=@'R=<&R=@'R=<&R-<%"
+	"R-<%R-8%Q]8$Q]8$Q]4$HJ_?W>L9XO$AX>\\?X.X>X.X>X.X>W^T=W^T=W^T=W^T="
+	"W^T=W^T=W^T=WNP<WNP<W^T=W^T=X>\\?X>\\?K[SL0DY_)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=HE*'2XO$@Z?@GZODHZ?@GZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZ?@GZODHZODHZ?@GZ?@GU^44F:71T^$/XN`?"
+	"Y/(AYO0CY_8EZ/<FZ?@GZ?<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8EYO4DY?,BY/(AXO$@X>\\>X.X=X.X=X>\\>X_(AY?0CY_8E"
+	"Z?<GZ?@HZ?@GZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EYO4DYO4DYO4DYO0CTM\\/F:7604U^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D,3UNP<__Z?<F[_XN\\/\\O[/PLV>H<G:G6T-\\.RM@(R=@'RMD("
+	"RMD(RMD(RMD(RM@(RMD(R]D(RMD(RM@(RMD(RMD(R]D)RMD(RMD(RMD(R]H)R]H)"
+	"S-H*O\\CWQ,?VV9>^WVY]V9F^U*K4TJO7UI['WW22WWJ&R[[EO\\KZP,S\\P,W]P,W]"
+	"O\\S\\OLO[N\\GYI;3FN\\CXO\\S\\O,GXS-H'RMD(RM@'RM@'RM@'R=@&R=@&R=@&R-<%"
+	"R-<%R-<%Q]8%R-8%Q]8%KKSMR=8#Y?,DX>\\?X.X>X.X>X.X>X.X>X.X>W^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=X.X>X>\\?X.\\?W>P;WNT=WNP<V><7U.(2"
+	"S]X-R]H)R-<&Q-(\"O\\S]N\\CYM</SL+[NJ[CIIK3DH:_?G*G:EZ34BI?(>H>X0$Q]"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1E*#O<K[Z?@GZ?@GZ?@GZ?@GZODHZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZ?@GZODHZODHZODHZODHZ/<FXO$@U^45N<;SL[_KZ/<FZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z?@GZ/<FZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_4DY?0CY/(AXN`?"
+	"X>\\>X.X=XN`?Y?,BY_8EZ?@GZO@HZ?@GZ/8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DY_8EY_8EYO4DW>L:KKOK7VR<)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D-$!QNLCXZ?<F[OTM\\?`P[OTMYO4FX>`AF:?8SMT+RMD(R=@'RM@("
+	"R=@'RMD(R=@'RMD(R=@'R=@'RMD(RMD(RMD(RMD(RMD(R]D)RMD(R]H)R]H)S-H)"
+	"S-L*O\\OZP<S\\P<GXS;;BVI2VWX\"6X'N-W(J@TZ;&Q,3POLGXO\\O[O\\S\\OLO[M,/U"
+	"K;OMI;;KK;OKDJ38NL?VP,W]P<[^Q]0!R]D(R]D(RM@'RM@'R=@&R=<&R-<&R-<&"
+	"R-<%R-<%R-8%Q]8$Q]8%O\\[_K+CEY_8FX>\\?X.X>X.X>X.X>X.X>W^T=W^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<X.X>XN`@Y/(BW^T=V^H:Y?,CYO4E"
+	"Y?,CY?0DY?0DY?0DY?0DYO4DYO4DYO0DYO4DYO4DYO4DYO4DYO4DYO4DYO0DWNP<"
+	"KKOL04U^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D=8&RV.<6Z?@GZODHZODHZ?@GZODHZ?@GZ?@G"
+	"Z?@GZODHZODHZODHZODHZODHZ?@GZ?@GZODHZ?@GZODHZODHZ?@GZODHZODHZ?@G"
+	"ZODHZODHZ?@GZODHZODHZ?@GY_8EW^X=T^(1R=<&S-D'U>,1W^T;Z/<EZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EYO0CY/,BX_$@X>\\>X.X=X_$@YO0CZ/<FZ?@GZ?<GY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DX_$@P,W^?(FY*C9G)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D+CIKM\\7UZ/8E[OTM\\/\\O[OTNY_8GY?0EX_(CK+OOP]#^RMD)R=@'R=@'"
+	"R=@'R=@'R=@'RMD(R=@'RM@(RMD(RMD(RMD(R]D)R]D)R]D)S-H*S-L*S-H)R]H)"
+	"Q-0$N<7TO\\O[O\\O[O\\KZO\\GYP,CWP<CWO\\CWO<?XNL7WK+KLM<+SI;3GL+[NM,+T"
+	"E:C=FJK<G*S?FJS@ML3SP,W]PL__Q-'_R]D(R]D(RM@'RM@'RM@'R=<&R=@&R-<%"
+	"R-<&R-<%R-8%R-8%Q]8$QM4$H*S;Y/(BX>\\?X>\\?X.X>X.X>X.X>X.X>W^T=W^T="
+	"W^T=W^T=W^T=W^T=WNP<WNP<W^T=W^T=WNP<WNP<W^T=W^T=X.X>VN@8U.(2W>L;"
+	"X.X>X.X>X.X>X.X>X.X>X.X>X.\\?X>\\?X>\\?XN`@X>\\?XN`@XN`@XN`@XN`@XN`@"
+	"W^T<M<+R*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D+CIKH[#AYO4DZ?@GZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@G"
+	"ZODHZODHZODHZODHZ?@GYO4DZ_HIZODHZ?@GY/(AZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GYO4DW.H9SMP+QM0\"SMP*V^D8YO0CZ?@GZ?@GZ?@GZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ?@GZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EYO0CY/(AXN`?X.X=XN`?Y?0CZ/8FZ?@GZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO0CT-X-F:760T]`)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D*C9GK;OKYO4D[?PL\\/\\O[_XOZ/<HY?4EY/0DY/,CQM<+KKGFS]T-R=@'R=@'"
+	"RM@(RM@(RMD(RM@(RM@(R=@'RMD(RM@(RM@(RMD(R]H)S-H*S=L*Q-0$M</SK;SL"
+	"J[KJN\\CXO<KZOLK[OLKZNL?XN<;WJ+7HK+KKE:/8F*C=L+OJE*C=H:[?O<K[H+#F"
+	"K+WQFZG:I;;JJ;?FJK?GP<[]PL__PL[]S-H)RMD(RMD'RM@'RMD'RM@'R=@'R=@'"
+	"R=<&R-<%R-<%R-<%Q]8$Q]8%H:[>V^@6XN`@X.X>X.X>X.X>X.X>X.X>W^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<UN45TM`0"
+	"W>L;W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<"
+	"WNP<V^@8BYC()S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D56*3R-8&ZODHZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZODHZ?@G"
+	"ZODHZODHZ?@GZ?@GZ?@GYO0CY?,BY/(AY?(AZ/8EZ?@GZ?@GZ?@GZ?@GZODHZ?@G"
+	"YO4DW.H9S-H(P]#^S=L(W>L9Z/8EZ?@GZODHZODHZODHZODHZODHZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EYO4DY/(AXN`?X.X=X_$@"
+	"YO0CZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4DY_8EYO4DYO4DY_4DYO4DW>L;LK[N"
+	"9G*C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DF:;7Y/,B[/LJ\\/\\O\\/\\PZ?@IY?0EY/0DY/0DY/,DV^L=EJ+1T-\\.RMD(R=@'"
+	"R=@'RMD(RM@(RMD(RMD(RM@'RMD(RMD(R]D)R]D(R]D(S-H*RMD*M,'RKK_SE*/4"
+	"J;?GEJ?;J[ONHK'CG:[BG*W@I;/BJ;CMD9_4F:C;LL+VJ;;EH+'GH;#BI[;IJKGJ"
+	"J;?FM\\3SO<KZP,S\\P,W]P<[^N,;UP]#\\S-H)RMD(RMD'R]D(RM@'RM@'RM@'RM@'"
+	"R=@&R=<&R-<%R-<%R-8%Q]8%K;SMQ]/`Y?,DX.X>X.X>X.X>X.X>X.X>W^T=X.X>"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>P<U.(2"
+	"TN$0WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W.H:TM\\.6665)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-DAY/$WNT<Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GY_8EWNP<S=L*"
+	"P<[\\RM@&W.H8Y_8EZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY?0C"
+	"XO$@X.\\>X>\\>Y/,BY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8E"
+	"Y_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y/$@Q=,\"B)7%,S]P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"?XN\\XN`?Z_DH\\/XN\\O`PZODJYO4FY?4EY/0DY/0DY/0DX>`AF:G=S=L)RMD(R=@'"
+	"RM@(R=@'RMD(RMD(RMD(RMD(RMD(R]D)RMD(RMD(RMD(S-H)Q=0$O\\S[N,?XF:C;"
+	"N\\CXK;_TDJ38I[/CF*C?K[OJM<3WFZK<EJC>GJS=N\\CXL[_OO,GZO\\O[P,W]P,W]"
+	"P,W]O<KZNL?VM\\7SNL?UO\\SZR-8#S=P*R]D(R]D(R]D(RMD(R]D(RM@'RM@'RM@'"
+	"R=<&R=<&R=<&R-8%Q]8%Q]8%OLW]K+CEYO4EX>\\?X.X>X.X>X.X>X.X>X.X>X.X>"
+	"W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=W^T=WNP<WNP<WNT=WNP<WNP<W>P<W>L;"
+	"TN$1U.(2W^T=WNP<WNP<WNP<W>L;W>L;WNP<W>L;W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;WNP<V^D9N,3T*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D.45VLL#PZ/8EZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZODHZ?@GZ?@GZ?@GZ?@GZ?<FZ?@GZ?@GZ?@GZ?@GXN`@T=`.P<[]Q=/`V.84"
+	"YO0CZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO0CX_$@X>\\>X.X=Y/(AY_4DZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CUN03H[#@4EZ/)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D8F^@"
+	"V^D8Z/8E[OTM\\?`P[/LLYO4FY?0EY?0EY/0DY/0DY/0DX_(CK\\#TP,SZS-L*R=@("
+	"RMD(RM@'RMD(RMD(RMD(RMD(R]D(RMD(RMD(R]D(R]D)S-H)R]D)O\\S[O<O[EJC<"
+	"N\\CXKL#UH['@GZ_@M<3VI++CJKGHL\\'QM\\3TO\\S\\P,W]P<[_P,W]N\\CXN,7TN\\GX"
+	"OLOZQ-,!R]D'SMP+SMP+S=L*S-H)R]D)R]D(R]D(R]D(R]D(R]D(RM@'RM@'R=@'"
+	"RM@'R=<&R=<&R-<%Q]8%Q]8%QM4$GJK:Y/,BX>\\?X.X>X.X>X.X>X.X>X.X>X.X>"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<W^T=WNT=WNT=WNP<WNP<WNP<WNP<"
+	"VN@8T=`0V><6W^T=WNP<W>L;WNP<W>L;W>L;W>L;W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;V><6@X^_)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"9W.DT=`/Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GY?0CU^85Q-'`P,W[T=\\-X_$?Z?@GZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"YO4DY_8EY_8EY_8EY_8EYO4DX_(AX>X>X.X=Y/(AY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DY_8EYO4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO0CX.\\>NL?W=H*S*C9H)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D0T]`SML+"
+	"Y?,B[OTL\\?`P[OTMY_8GY?0EY?0DY?,DY/,CY?0DY/0DY/(CR=H.I[/?SMX.R=@'"
+	"R=@'RMD(RM@(RMD(R=@'RM@(RMD(RM@(RMD(RMD(R]D(R]H)S-L*O\\W\\P<[_H;3G"
+	"I;+BI;/DO<KYNL?WO\\S\\P,W]P<[^P,W]O<KZOLOZN\\CWO\\S[P]#_RM@'SMT+S]T,"
+	"S=L*S=L*S=L*S=L*S=L*S=L*S-H)S-H)R]D)S-H)R]D)R]D(R]D(RM@'RM@'RM@'"
+	"R=@'R=<&R-<&R-8%Q]8%R-8%Q]4$HJ[?W.H8XN`@X.X>X.X>X.X>X.X>X.X>X.X>"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<W^T=WNP<WNP<WNP<WNP<WNP<"
+	"WNP<U^45T=`0W>L;WNP<WNP<WNP<W>L;W>L;W>L;W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;V^D9RM@'/TM\\)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=HFJ?8"
+	"X_$AZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FZ?@GZ?@GY_8EWNT<RMD'O<KWRM@$WNP9Z/<FZ?@GZ?@GZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ?<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_4DZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY?0CXN`?W^T<X>\\>Y?,BY_8EY_8EYO4D"
+	"Y_4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DY?0CY?,BS=L*DZ#0/TM\\)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GN<;WX_$@"
+	"Z_HI\\/\\O\\/\\OZ/<HY?0EY/,CY?,DY?,DY?,DY/,DY/0DY/,DW.P>DZ#/T-\\.RMD("
+	"R=@'R=@'RM@(RM@(RM@(RMD(R]D(RM@(RMD(RMD(R]D)R]H)S-L*P,[^QM0#O\\S\\"
+	"O\\S\\P,W]P<[^OLO[N<?VN<;UO,GXP,[\\QM0\"S]T+T-X-S]T,SMP+SMP+SMP+S=L*"
+	"S=L*S=L*S=L*S=L*S=L*S=L*S=L*S-H)S-H)S-H)S-H)S-H)R]D(R]D(RM@'RM@'"
+	"RM@'R=@'R-<&R=<&R-8%Q]8%Q]8%K+OLR=8#Y?,CX.X>X.X>X.X>X.X>X.X>X.X>"
+	"W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=WNP<W^T=WNP<WNP<WNP<WNP<WNP<WNP<"
+	"WNP<WNP<T^(2T^$1X.X>WNP<WNP<WNP<WNP<W>L;W>L;WNP<W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W.H:VN@7H:[=)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6&25QM0#Z?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GY/(AT^$0O\\WZP]#]U^42YO0CZ?@GZ?@GZ?@GZ?@GZ?@GZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY/(AX.X=W^T<X_$@YO4D"
+	"Y_8EY_4DYO4DYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DY?0CV^D8KKKK8&V=)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DF:?7XN`?Z/8E"
+	"[_XN\\O`QZODJYO4FY/,DY/,DY/,DY/,DY?0DY?0DY/,DY/,CXO$BFZK=S-H'RMD("
+	"R=@'R=@'R=@'R=@'RM@(RM@(RMD(RM@(RM@'RMD(R]D)R]H)S-H)RM@'OLOZO<KY"
+	"M\\3RN,7SO<OYQ-'`R]H(S]T,S]T,SMP+SMP+SMP+SMP+SMP+SMP+SMP+SMP+SMP+"
+	"SMP+SMP+S=L*S=L*S=L*S=L*S=L*S=L*S-L*S-H)S-H)S-H)R]D(S-H)RMD(RMD("
+	"R=@'R=@'R=@&R-<&R-<%R-8%Q]8$O\\W]K[KGYO4EX>\\?X.X>X.X>X.X>W^T=X.X>"
+	"X.X>W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<W^T=WNP<WNP<WNP<WNP<W^T=W^T="
+	"WNP<WNP<W.H:T=`0V.85W^T=WNP<W>L;W>L;W>P<W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W.H:U.(18FZ>)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C=HD9[.X.\\>Z?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ_HIZODHZ/<FY/,BZ?@GZ?@GZ?<FZ?<FZ/<FZ/<FZ/<F"
+	"Y_8EW.L:R-8$O<KWSMP'X>`>Z/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY?0CXN`?W^T<"
+	"X>\\>Y?0CY_8EYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CYO0CX_$@PL__@Y\"`,3UN"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D;7JKW>L:Y/,B[?PK"
+	"\\P$Q[?PMYO4FY?,DY/,DY/,DY/0DY/,DY?0DY/,DY/,DY/,DX_(CLL+VO<GVS-L+"
+	"R-<&R=@'RM@(RM@(RMD(RMD(RM@(RMD(RMD(RMD(R]D)R]D)S-H)S-H)S=L*S-H("
+	"SMP*S]T,SMP+SMP+SMP+SMP+SMP+SMP+SMP+SMP+S=P+SMP+SMP+SMP+SMP+SMP+"
+	"S=L+S=L*R]H)RM@(R=<'R-8&Q]4%QM0$QM0#QM0#Q]4$R-8%R=<&RM@(R]D(R]D("
+	"RM@'RM@'R=@'R=<&R-<%R-8%Q]8$Q]4$GJK8X_(AX>\\?X.X>X.X>X.X>X.X>W^T="
+	"W^T=X.X>W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=WNP<WNP<WNP<WNP<W^T="
+	"WNP<WNP<WNP<U^86T=\\/W>L;WNP<WNP<W>L;WNP<W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W.H:VN@8N<;V*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4%V.P,[^Z/<FZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FY/$@Y/(AYO0CY?(AZ/<FZ?@GZ?@GZ?<FZ/<FZ/<FX_(AT^$0"
+	"OLOYQ-'^VN<4Y_4DZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@G"
+	"Z?@GZ?@GZODHZODHZ?@GZ?@GZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8EZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4D"
+	"Y/(AX.X=X.X=Y?,BY_8EYO4DYO4DY_4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CT^(1"
+	"GZS<3%B))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/DM\\SMP,XN`?ZO@H\\/\\O"
+	"\\?\\PZ/<HY?0EY?0EY?0DY/,CY/,DY/,DY/,DY/0DY/,DY/,DY/,CS-P0HZ[:S]X."
+	"R=@'R=@'R-<&R=@'RM@(RM@(R]D(R]D(RMD(R]D)R]D)R]H)S-H)S-L*S=L*S=L*"
+	"S=L*S=L+S=L*SMP+SMP+SMP+SMP+S=P+SMP+SMP+S=L+S-L*RM@(QM4$PL__N\\GX"
+	"L\\'QJ[OII;3CH*_=G*O9F*?5E*32DJ'/DJ#.DZ'/E:/1F:?5GZW=J+7EM<+QQ=0\""
+	"RMD(RM@'R=@'R=<&R-<%R-8%R-8%Q]8%H*W=VN@7XN`@X.X>X.X>W^T=X.X>W^T="
+	"W^T=X.X>W^T=W^T=W^T=W^T=W^T=WNP<WNP<W^T=W^T=WNP<WNP<W^T=WNP<W^T="
+	"WNT=WNP<WNP<WNP<T^$1T^(1X.X>WNP<W>P<W>L;WNP<W>L;W>L;W>L;WNP<W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W.H:V.85@HZ^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DB9;'W>L:Z?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ?@GZ?@GZ/8EWNT<R-8$O,CUS=L&"
+	"XN`>Z/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<F"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY?0C"
+	"YO4DYO4DY/,BX>\\>X.X=Y/(AY_4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0C"
+	"Y?0CW^T<M\\/T<'RM*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DL+WMXN`?Y?0C[OTL\\`$Q"
+	"Z_LLYO0EY?0EY/,DY/,DY/,DY/,DY/,DY/,DY/,DY/0DY/,DY/,CW>P>D9W,T-X-"
+	"R-<&R-<&R=@'R=@'R=@'RMD(R]D(R]D)R]D)R]D(R]D(S-H)S=L*S-L*S=L*S=L*"
+	"S=L*S=L+S=P*SMP+SMP+SMP+SMP+S=L*RMD(Q-,\"NLCYK[WLHK'@EZ?5D*#-C)O'"
+	"B9G%AY?$AI7\"A)/!@Y&_@(Z\\?8NY>XFW>8:T=(&O<7ZL=8*O>(6S=(*O>HBUG:K7"
+	"Q-,!RMD'R=@'R=<&R=<&R-8&R-8%Q]8%J[GJR-4\"Y/,CX.X>X.X>X.X>X.X>X.X>"
+	"X.X>X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=WNP<WNP<WNP<"
+	"WNP<WNP<WNP<WNP<V^D9T-X.VN@8W^T=WNP<W>L;W>L;W>L;W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W>L;VN@8R=8%.D9W)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D1U2%NL?XZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GYO4DV><7P,W[O<KVU>,0Y_4DZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?<FZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DY/,BX>\\>X.X=Y/(AY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4D"
+	"YO4DYO4DY?0CY/(ARM@'CIO+.$1U)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@H^_X.X=Y/$@Z_HI\\?`O\\/XO"
+	"Y_8GY?,DY/,DY/,DY/,CY/,DY/,DY/,DY/,DY/,DY/,DY/,DY/,DX>`AG*O=RM@&"
+	"R=@(R-<&R=@'R=@'RMD(R]D)R]D)R]D(R]H)R]H)S-H)S-H)S-H*S=L*S=L*SMP+"
+	"S=L+SMP+SMP+SMP+S=L*R=@'P,__L,#PH+#?D:'0BYK(B9?%AY;#AY7\"AI3\"A9/!"
+	"@Y&_@I\"^@8^]?XR[>XFW>8:T=8&O;WRJ;'BG9W2B97*@:'6C:'6C;7JG?8RYDI_-"
+	"L;[LS=L*R=@'R=@'R=<&R-<&R-8%Q]8%O,O\\K+CEYO4EX.X>X.X>X.X>X.X>X.X>"
+	"X.X>X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<W^T=WNP<W^T="
+	"WNP<WNT=WNP<WNT=WNP<U.,3T=\\/X.X=WNP<W>L;W>L;W>L;WNP<W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W>L;W.H:V.45EZ/3)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D@(V]VND8Z?@GZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GYO4DU>,2N\\CUP,WYV^D6Z/<EZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DY/,BX.\\>W^X=Y?,BY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DY?0CY?0CV><6J+7E6666)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D2%6&UN03XN`?Y_4D[OTM\\`$QZ?DJ"
+	"Y?0EY/,DY/,DY/,DY/,DY/,DY/,DY/,DY/,DY/,DY?,DY/,DY/,DX_(CM,3XNL;S"
+	"R]L*R=<'RM@(R]D)R]D)R]D)R]H)R]H)S-H)S-H)S-H)S-H)S-L*S=L*S=L*S=L+"
+	"S=L+S=L+R]D)Q-,\"LL'RG:S;BYO)A9/!A)&_A)*`A)*`A)&_A)*`@Y&_@I\"^@H^]"
+	"@(Z\\?HRZ?(JX>8:T=H.Q<G^M:WBG9'\"@6F>54U^-45V*4EZ,76J7=X6QBYG'H;#>"
+	"LL#NS=L*R]D(R=@'R-<&R-<%R-8%R-8%QM4$FJ;5Y?,BX>\\?X.X>X.X>X.X>X.X>"
+	"W^T=X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=WNP<WNP<"
+	"W^T=WNP<WNP<WNP<WNP<W>L;S]X.V.86X.X>WNP<WNP<WNP<W>L;W>L;W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W>L;W.H:VN@8RM<&-4%R)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D0$Q]L\\'QY_8EZ?@GZ?@GZODHZODHZODHZODHZ?@GZ?@GZ?@G"
+	"ZODHZ?@GZ?@GZ?@GZ?@GYO4DT^(1N,3QP<WYWNP:Z?<FZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DY/,BX.X=X.X=YO0CY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DY?0C"
+	"Y?0CYO0CYO4DYO4DYO4DYO4DYO4DY?0CX>`?O<K[>H>W+CIK)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DL+[NXN`?Y/$@Z_HI\\?`O[_XNY?0E"
+	"Y/,DY/(CY/,DY/,DY/(CY/,DY/,DY/,DY/,DY/,DY?,DY/,DY/,DY/(CS=X1H*S9"
+	"S]X.R=@'RM@(RMD(R]D)RMD(R]H)R]H)R]H)S-H)S-H)S-H)S-L*S=L*S=L*S-H*"
+	"R=<'O<O\\H[3EC)O*@8Z\\?XNY?XRZ?XV[@(Z\\@(Z\\@H^]@8^]@8^]?XZ\\?XV[?8NY"
+	">XFW>8:T=(&O;WNI:W>E:76C:WBD;GRI;GRJ:'>F7FR:<X\"J>HFW@I&_G*O:K+OI"
+	"M<3RR-<%SMT-RM@'R-<&R-<%R-8%Q]8%R-8%FJC8W.H8XN`@X.X>X.X>X.X>X.X>"
+	"X.X>X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<W^T=W^T="
+	"W^T=WNP<WNP<WNP<WNP<WNP<U>04S]X.X.X=WNP<WNP<WNP<W>L;WNP<W>P<W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W>L;W.H:V^D9U^45AI+\")S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D=X2UU^44ZODHZODHZODHZ?@GZ?@GZODHZODHZODHZ?@GZODHZ?@G"
+	"Z?@GZ?@GZ?@GY_8EUN04ML/QO,GTW>L8Z?<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"ZODHZ?@GZ?@GZODHZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DX_(AW^T<X>`?YO4DY_4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CYO0CY?0CYO4DY?0CY?0CYO4DY?0CY?,BS]T-F:7615&\")S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<G^PX.X=XN`?YO4D[OTM\\`$QZ?@IX_(B"
+	"Y/,CY/(CY/(CY/(CY/,DY/,CY/,DY/,DY/,DY/,DY/,DY/,DY/,DY/,DW>T>DI[."
+	"S]X-RM@(RM@(RMD(R]D)R]D)R]D(R]D)R]H)S-H)S-H)S-L*S=L*S-H*Q]8&N<?X"
+	"F*C8?HR[>(:S=X6R>(:T>HBU?(FW?(JX?HRZ?XRZ?XV[?HRZ?8NY>HBV=X6R=H2Q"
+	">(6R?(FV@(Z[@Y*_?HZ];H\"Q6VV>052((C5H$\"17$2!16&6,H[/ACI[.I;7DK[[M"
+	"M<7SP<_^T=`/R=@'R-<&R-<&R-<%R-8%R-8%I[7GRM<$Y/(BX.X>X.X>X.X>W^T="
+	"X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<W^T=WNP<W^T=WNT=WNP<"
+	"W^T=W^T=WNT=WNP<WNP<WNP<W>P<S]X.UN44X.X>WNP<WNP<WNP<WNP<W>L;W>L;"
+	"W>L;W>L;W>L;W>L;W>L;W.H:W.H:W.H:VN@8O\\S[*C9G)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D.45VK;KKY_8EZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZ?@GZODHZ?@G"
+	"Z?@GZ?<FW.L:NLCUML'LV><3Z?<FZ?@GZ?@GZ?@GZODHZ?@GZODHZODHZ?@GZODH"
+	"Z?@GZODHZODHZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZODHZODHZ?@G"
+	"Z?@GZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EYO4DY?0CXN`?W^T<X_(AY_4D"
+	"YO0CYO4DYO4DYO4DYO4DYO4DYO0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CY?0CYO4DYO4DY?0CY?0CY?0CYO4DY?0CY?0CY?,CW>L:L;WN9G*C"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D,3UNR=<&XN`?X_$@ZODH\\O`P[_XOYO4FY/(C"
+	"Y/(CY/,DY/(CY/(CY/,DY/,DY/(CY/,DY/,DY/,DY/,DY/,DY/,DY/,CX?$AG:S?"
+	"R-8$R]D)RM@(RMD(RMD)R]D)R]D)R]H)R]H)R]H)S-H*S-H)R=<'N<CYEZ77=X2T"
+	";WRI<'VK<H\"M=8.P=8.P=X6S>(:T>8>T>8>T>8:T=X2R>8:S?8JW@Y\"\\B9C#B9K&"
+	"?I&`;'^P56F<-TV\"&\"]B\"298\"\"=:!RU?!C%F!3AO\"#5M2EJ#LL+QFJO=J;KIL<#O"
+	"M<7TN\\KZTN$0RM@(R=<&R-<&R-<&R-8%R-8%NLGZK[KGYO0EX.X>X.X>X.X>X.X>"
+	"X.X>W^T=W^T=W^T=W^T=WNT=WNP<W^T=WNP<WNP<WNP<WNP<WNP<W^T=WNP<WNP<"
+	"W^T=WNT=WNP<WNP<WNP<WNP<W>P<UN45SMP,X.X=WNP<WNP<WNP<WNP<WNP<W>L;"
+	"WNP<W>L;W>L;W>L;W>L;W>L;W.H:W.H:V^D9U^44<7VM)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	";WRMT^$0ZODHZODHZODHZODHZ_HIZ_HIZODHY?,BZ/<FZODHZODHZODHZODHZODH"
+	"Y/(BQ=,!J[?CS=L'Y_8EZ?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"Z?@GZODHZODHZ?@GZODHZODHZODHZODHZ?@GZ?@GZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EY_8EYO4DYO4DY?,BX.X=W^T<"
+	"Y?0CY_4DYO0CY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_4DYO4DYO4D"
+	"Y?0CYO0CYO4DY?0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CYO4DY?0CY?0CX_$@"
+	"Q=,\"AY3$,S]P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-DDZ#0X.X=X>\\>Y?,B[OTL\\`$QZ?@IY/,DY/,D"
+	"Y/,CX_(CY/,DY/,DY/,CX_(CY/(CY/,DY/,CY/,DY/,DY/,DY/,DY/,DX_(CM<7X"
+	"M\\/PS=P,R=@'RMD(RMD(RMD(R]D(R]H)S-H)S-H*S-H)PL`!GJW><X\"Q9W.B:7:D"
+	":WBF;GNI<7VK<G^M<7ZL<7ZK=(\"N>H:S@(RYB)2`C)O'A9?%>(NZ9'FI2F\"2*4)V"
+	"#RYA\"BI<!BU@!\"YC!#!E!#)H!#9N!#MT!$%\\!$N&!$J(*$!OL,+OJKOLJKOJLL'P"
+	"M<7UN<GYSMT,R]H)R=<&R-<%R-<%R-8%R-8%Q=0$FJ;4Y/(BX>\\?X.X>X.X>W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<W^T=WNP<WNP<"
+	"WNP<W^T=WNP<WNP<WNP<W>P<WNP<W>P<S]T-U^85X.X>WNP<WNP<WNP<WNP<WNP<"
+	"WNP<W>L;W>L;W>L;W>L;W.H:W.H:W.H:W.H:V><7LK[N)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!QIK/C"
+	"Y?0CZODHZODHZODHZODHZ/<FY/,BZ/8EY?,BZ/8EZODHZODHZODHZODHZ/<FU>03"
+	"K;OHN\\?RXO$>Z?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZ?@GZ?@GZO@HZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ/<FZ?@G"
+	"Z?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DYO4DXN`?"
+	"WNP;XN`?Z/8EY_4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO0CYO0CYO0CYO0CYO4D"
+	"YO0CYO0CYO0CY?0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY/,BU>,2HJ_@4%R-)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D0D]`U>,2X.T<XN\\>Z?@G\\?`O[_XOYO4FY/,DY/,D"
+	"Y/(CXO$AY/,DY/,DY/,DY/,DY/(CY/(CY/,DY/,DY/(CY/(CY/,DY/,DY/(CSMX1"
+	"GZK6T-\\/R=@'RMD(RMD(RMD(R]D(R]D)S-H*R]H)OLS^@Y'#86^=7VV;8F^<9'&?"
+	"9W.A:G:D;WNI>(2R@8Z[BIC%B9G'@)&`;H*R66V>.$^#&39J\"RYA\"#%D!C=M!39L"
+	"!#AO!#IQ!#MQ!#MT!#QS!#YX!$!Y!$-^!$B&!%&.!%*2$SMRI;3AN\\O]JKOKL\\3T"
+	"M<7VN,CYR=@&SMT,R=@&R-<&R-8%R-8%R-8%Q]8%EZ;5W>L9XN\\@X.X>X.X>W^T="
+	"X.X>W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<"
+	"WNP<W>P<W>P<W>P<W>P<W>P<W>P<WNP<U>04S=P+X>\\?WNP<WNP<WNP<WNP<WNP<"
+	"WNP<W>L;WNP<W>L;W>L;W>L;W>L;W.H:W.H:V^D9T^$06V>7)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9W.DSMT,Z?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHY/(AP<_^J+/="
+	"T]`,Z?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_4EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DYO4D"
+	"Y?0CX.X<W^T<Y?0CY_8EYO4DYO4DYO4DYO0CYO4DYO4DY?0CYO4DYO0CYO4DYO4D"
+	"Y?0CYO0CYO0CYO0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CW^X=N,7U<W^P*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D*S=HJ+;FX.T<X.X<X_(@[OPL\\P$QZ?@IY?0DY/,DY/,D"
+	"Y/(CY/(CY/(CY/(CY/(CY/,DY/,DY/,DY/(CY/(CY/,DY/,DY/,DY/,DY/,DW>T?"
+	"D9W.S]X-RMD(RMD(RMD(R]D)R]D)R]D)S-H*R-<'D:#47VN:6&226V>49G*?=(\"L"
+	"@(VZAY7#@I/\"=8>W872G1ER/)S]S$3%D#S-D!S5I!3EO!#MR!#QR!$%X!$1^!$1^"
+	"!$-^!$1`!$5_!$5`!$5`!$5`!$>\"!$J%!$V-!%.4!%F<#$%\\CY[*Q]<(JKOLL\\3U"
+	"M<7VN,CXPM#`T-`/R=@'R-<&R-<&R-8%Q]8%Q]8%I++CS=H'X_$BX.X>X.X>X.X>"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=WNP<WNP<WNP<WNP<WNP<"
+	"WNP<W>P<W>P<W>P<W>P<W>P<W>P<W>T=W.P<S-L*VND8X.X>WNP<WNP<WNP<W>L;"
+	"WNP<W>L;W>L;W>L;W>L;W>L;W>L;W.H:W.H:V^D9V.86I+'@)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=HEZ35Y/,BZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GVND8K;OGM+_IXN`="
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ?<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FY_8EZ/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4D"
+	"YO4DYO4DX^`?W^T<X_(AY_8EYO4DYO0CYO0CYO4DYO0CY?0CYO0CYO4DYO0CY?0C"
+	"Y?0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CX_(AS-D)D9W./4EZ)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D3EJ+G*G9S=L*X>\\>XN`?Z/8E[/LK\\?`P[OTNYO4FY/,DY/,CX_(C"
+	"Y/(CX_(CY/(CY/(CY/(CY/,DY/,DY?,DY/,DY/(DY/(CY/,DY/,DY/,DY/,DXO$B"
+	"GJW@R-8#R]H)RMD(RM@(R]D)R]D)R]H*R]H*PM$\"9G2D8VZ9<GZJ>8BV=H6T:'BH"
+	"4F68,DQ]%S=K#3)D\"3-G\"39K!SAP!#YV!$!X!$-Z!$=_!$9_!$B!!$J#!$N%!$N'"
+	"!$J'!$R(!$R(!$R(!$B%!$F&!$N)!$^-!%&3!%>9!%ZB!TR)=8>OR]P,K;[PL\\3U"
+	"M<;WM\\CYO<S\\T=`/R=@'R=<&R-<&R-8%R-8%Q]8$M\\7VL[_LY?,DX.X>X.X>W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<"
+	"W>P<W.P;W.P;W.P<W.P<VNL:V.H9V^P;WNX=U.,3T-X,X_$AWNP<WNP<WNP<WNP<"
+	"W>L;W>L;WNP<W>L;W>L;W>L;W.H:W.H:W.H:W.H:VN@8S]T,1%!`)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1%\"!N\\GYZ?@GZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ/<FS=P+H*W8Q=']Z?<FZODH"
+	"ZODHZODHZODHZODHZODHZODHZ_HIZODHZODHZ_HIZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"Z?@GZ?@GZODHZODHZ?@GZODHZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ?@GZ/<FZ?<GZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8EYO4DY_8EY_8EYO4DYO4DY_8E"
+	"YO4DYO4DYO4DY/,BW^T<X>\\>YO4DYO4DYO0CYO4DYO0CYO4DY?0CYO4DYO4DYO0C"
+	"Y?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BV><6JK?G7&F9)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D9W2EML3TW>L:XN`?Y?,BZ/<FZ/<G[/LK\\?\\P[/PLY_8GY/,DY/,DY/,CY/(C"
+	"Y/(CX_(BY/(CX_(CY/(CY/,DY/(CY/,DY/(CY/(CY/(CY/,DY/,DY/,DY/,DX_(C"
+	"M<7YM\\/PS=P,RMD(RMD(R]D)R]D)R]H)S-H)O<\\\"7W*G4V23/%\"\"(3MN$C%C##1H"
+	"\"35H!3EO!3MT!#YV!$)Y!$1\\!$>!!$J\"!$J\"!$N%!$^(!$Z(!$V(!$^)!$Z)!$Z)"
+	"!$^+!%\"+!$^*!%\",!$N)!$V*!$Z-!%&1!%.6!%J<!%^D!%274&.*RMP*M<?XL\\3U"
+	"M<7VM\\?XN\\K[S]X-R]D)R-<&R-<&R-8%Q]8$Q]8$Q-,#FZ?5Y/,BX.X>W^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=WNP<WNP<WNP<WNP<WNP<"
+	"W>P<V^L:V^L:S>(2D;#@7Y>T8J:[?L#4J=?ST^@2V.<6X.X=X.X>WNP<WNP<WNP<"
+	"WNP<W>L;W>L;W>L;W>L;W>L;W.H:W>L;W.H:W.H:V^D9U^04C9K))S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<H\"PU^85ZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHY?0CP,W\\GJO5U>(.ZODHZODHZODH"
+	"ZODHZ_HIZODHZODHZODHZOHHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ?@GZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DY_8EY_8EYO4DY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DY_8E"
+	"YO4DYO4DYO4DYO4DY?0CX>\\>X.X=Y?0CYO4DYO4DYO4DYO4DYO0CYO4DYO0CYO4D"
+	"YO0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BX>\\>O\\S\\?HJ[+CIK)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:W>H"
+	"NL?WX.X=X_$@YO0CZODI[?PLX>`@X>\\?[_XMZ_LLYO4FY?,DY/,DY/(CY/,CY/(C"
+	"Y/(CX_(CY/(CY/(CY/,DY/(CY/,DY/(CY/(CY/,CY/(CY/(CY/(CY/,DY/(CY/(C"
+	"SMX1GJK7T-\\.RMD(RMD(RMD(R]D)S-H*S-H)Q-4'.ER=$3-F#S1G\"#=K!SIO!#UU"
+	"!$%Y!$-\\!$A`!$F#!$N$!$R$!$Z'!%\"*!%\"+!%\",!%&,!%&-!%*.!%&,!%*,!%*-"
+	"!%*-!%*-!%&,!$^+!%\"-!$Z+!$Z-!%&0!%67!%J;!&\"E!%VB*$EZP-#]P-(#LL3U"
+	"M<;WML?XNLGZR=@'SMP,R=<&R-<&Q]8%Q]8%Q]4$Q]4$EZ33W^T;X>\\?W^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=WNP<WNP<WNP<WNP<WNP<"
+	"W.P<V^L:P-H)5Z.Y<=OC@?4#>_<%</,\"<?'_@NW]NNP,V^L9X.\\>WNP<WNP<WNP<"
+	"WNP<WNP<W>L;W>L;W>L;W>L;W>L;W>L;W.H:W.H:V^D9V><6NL?V)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!QJ+;FYO4DZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHXO$@M,'OHJ_9WNP9ZODHZODHZ_HIZ_HI"
+	"Z_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZ_HIZ_HIZODHZODHZ_HIZOHH"
+	"Z_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8EYO4DYO4DY_8EYO4DY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DXN`?W^T<Y/,BY_4DYO0CYO4DYO0CYO0CYO4DYO4D"
+	"YO0CYO0CY?0CYO4DY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CYO0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY/,BT=\\.FZ?8"
+	"1E*#)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D;WRMO,GYX.X="
+	"Y/(AY_4DZ_HI[OTL[OTMZ_HKT^$1XO$@[_XNY_8GY?,DY/,DY/,CY/(CY/,CY/,D"
+	"Y/(CX_(CX_(CY/(CY/(CY/,DY/(CY/(CY/(CY/,DY/(CY/(CY/(CY/(CY/(CY/(C"
+	"W.P>C)C'S]X,RMD(R=@'RMD(R]H)R]H)R]H)R=@(8H;%##MP!CEN!#QS!$!W!$-["
+	"!$A`!$J$!$N$!$V'!$Z(!%\")!%\"*!%&+!%*,!%60!%60!%61!%62!%60!%..!%6/"
+	"!%2/!%2/!%.-!%./!%*/!%&.!%\"/!%*1!%:7!%F9!%^C!&.H#49_JKGES-T.L,+S"
+	"M<;WML?XN<GYQ-(!T-\\/R=<&R-<&Q]8%Q]8$Q]4$Q]4$H*[?T=X+XN`@X.X>W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<W.P<"
+	"V^L;SN455['#>.WV@_L,9_,\"7._Z8>WZ6>OV6NKT:.OVI^D#U^@6W.L;W>P<WNP<"
+	"WNP<W>L;WNP<W>L;W>L;W>L;W>L;W.H:W.H:W.H:V^D9VN@8T^$05F*2)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D4V\"0RMD(Z?@GZODHZODHZODHZODHZ_HIZ_HIZ_HI"
+	"ZODHZ_HIZ_HIZ_HIZODHZ_HIZODHW^X=JK?DJ;7>X_$?ZODHZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZODHZ_HIZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZ?@HZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZODH"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DY_8EY_8EYO4D"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DX_$@W^T<X_$@Y_8EYO4DYO4DYO4DYO4DYO0C"
+	"YO0CYO0CY?0CYO0CY?0CY?0CYO0CY?0CY?0CY?0CY?0CY?0CYO0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?,BY?0CY?0CY?0CY/,B"
+	"W>L:LK_O:'6F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G=(\"QO\\S\\X.X=Y/(AZ/8E"
+	"[/LK[OTM[_XN[OTNZOHJX>`BR]D*Z/<F[/LLY?0EY/,DY/,DY/,CY/,CY/,DY/(C"
+	"Y/(CY/(CY/,CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/,DY/(CY/(CY/(C"
+	"X>`AEJ77Q]4#R]D)R=@(RMD)R]D)R]H)R]H)R]H)B:7C!T%X!#UU!$!Z!$1\\!$A_"
+	"!$N#!$Z(!$^)!%\"*!%\")!%.,!%*,!%6/!%6/!%:0!%B2!%>3!%:2!%>3!%:2!%>0"
+	"!%60!%6/!%*,!%21!%*/!%&.!%&/!%.3!%24!%F9!%V@!&:K!$Z,CZ#+TN,3L,+T"
+	"M<;WML?XN,GYOLW]T-\\.R=@'R-<&R-8%Q]8%Q]8$Q]8$L<#QN,/OX_(BW^T=W^T="
+	"W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=WNT=W^T=WNP<WNP<WNP<WNP<WNP<W.L;"
+	"V>H:E\\7P9^'EB?T.<?4%5^WZ4>OV3^GS5>CT1>'H6>CS8^?SL>,\"UN85V^H:W>P<"
+	"WNP<WNP<W>L;W>L;W>L;W>L;W>L;W.H:W.H:W.H:W.H:VN@8UN03F*34)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D=X2UV^D8ZODHZODHZODHZ_HIZODHZODHZ_HIZ_HIZODH"
+	"ZODHZ_HIZ_HIZODHZODHZODHW>L;I;+?K;GAYO0BZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZ_HIZ_HIZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<FZ?<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DY_8EY_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DY_8EYO4DYO4D"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EYO4DYO4DYO4DY_8EY_8EYO4DYO4D"
+	"Y_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DX_(AW^T<XN`?Z/8EYO4DYO4DY_4DYO4D"
+	"YO4DYO4DYO0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?,BY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY/,BXN`?Q=0#B)7%-D)S)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G>86VPL_`X>X=Y/(AZ/<F[?PK[OTM"
+	"[_\\O[_XNZ_LKY_<GY?,DV.<9T-X-[?LKZ/<HY?0EY?0EY/,DY/,DY/,DY/,DY/,D"
+	"Y/,CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/,DY/(CY/(CY/(C"
+	"XO$BK[[RM\\/PS=P,RMD(RMD)R]D)S-H*S-H*R]H)IK[Y!D>$!$)]!$-]!$A`!$N\""
+	"!$V&!$^(!%&*!%*,!%2.!%6/!%:0!%:0!%B1!%>1!%>2!%B3!%>2!%:1!%61!%:/"
+	"!%:0!%60!%.-!%..!%*/!%&.!%&0!%.3!%66!%B8!%Z?!&:K!523:'NFTN,2ML?Z"
+	"M<;WML?XN,GYO,O\\S]X-R]D)R=<&R-8%Q]8$Q]4$Q]8%P=$!G:C5Y/,BX.X>W^T="
+	"W^T=WNP<W^T=W^T=W^T=W^T=WNP<W^T=WNT=W^T=WNP<WNP<WNP<WNP<W>P<V^L;"
+	"U><78,'4?O3_A/L-8._]0.3M0N;N4NGT0N+L4N;P4^GU5>3P>^+RR]\\+V.86V^H:"
+	"W>L;W>P<W>L;W>L;W>L;W>L;W>L;W.H:W.H:W.H:V^D9V^D9V.86P<[^)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D*S=HFZC8YO4DZODHZODHZODHZODHZODHZODHZODIZ_DIZ?@GZ_HI"
+	"Z_HIZ_HIZODHZ_HIZ_HIW>P;HJ[<K[KCY_4DZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZOHHZOHHZ_HIZ_HIZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZ?@GZODHZODHZ?@GZODHZ?@GZODHZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<FZ?<FZ?<FZ?<FZ?<FZ?<FZ?<FZ/<F"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y_8EYO4DY_8EYO4DY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4D"
+	"YO4DY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DY/(AX.X=X>\\>Y_8EYO4DYO0CYO4D"
+	"YO4DYO4DYO4DYO0CYO4DY?0CY?0CY?0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CYO0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?0C"
+	"Y?,BY?0CY?0CY?,BY/(BU>03I+#A5&\"1)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D*C9G?HN[Q-(!X>\\>Y/(AZ?<F[?PL[_XN\\/\\O[_XN"
+	"[/LKZ/<HYO4EY?0DX_(BS=T.VN@7[OTMYO4FY?0EY?0DY/,DY/,DY/,DY/,DY/,D"
+	"Y/,DY/,DX_(CY/,CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"X_$BR=H-G:C4S]X.RMD)RMD)R]H)R]D)R]H)R]H*O=$&'5F>!$9^!$F\"!$N#!$V%"
+	"!%\"(!%.+!%.,!%6.!%:0!%>0!%B2!%B2!%B1!%B2!%F3!%B3!%>2!%B4!%B4!%:0"
+	"!%>1!%F5!%61!%61!%21!%.0!%.2!%65!%:6!%B8!%Z>!&2I!%R?1%F&S=X+OL`\""
+	"M,;WML?XN,CYN\\O[RMD(S=P,R=<&R-8%Q]8$Q]8$Q]8%QM4$DI[.W>H9X.X>W^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=WNP<W^T=W^T=WNP<WNT=WNP<WNP<WNP<W>P<VNH:"
+	"SN442,?.AOD'=/8'5>SY4.GT-./K/.3L+]_E8NSZ3^7P4>/N7./NLMC\\T^$0V><7"
+	"W.H:W>L;W>L;W>L;W.H:W>L;W.H:W.H:W.H:W.H:V^D9V^D9V><7U.(16VB8)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D1%\"!O,KZZODHZODHZODHZ_HIZODHZ_HIZ?@GZ_HI[/LKZ?@GY/(AZODH"
+	"Z_HIZ_HIZ_HIZ_HIW^T=HK#<J[?>Y_8DZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZODHZODHZ?@GZ?@G"
+	"Z?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?<FZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?<FY_0CY.\\>XNL9X.@6X.84X><5XND7Y.P:YN`>"
+	"Z/4DZ_@GZ?<FZ?<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DY_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4D"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY/,BX.X=X>\\>Z/8EYO0CY_4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CYO0CY?0CYO4DYO0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?,BY?,BY?,BY?0CY/,BY?,BY/,BX.X=N\\CX>(2U*C9G)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D+3EK@HZ_Q]4$X>\\>Y/,BZ?<G[?PL[OXM\\/\\O[_XNZ_LKZ/@H"
+	"Y_8GY?4EY/0DX_,CXO$BRMD*XN`?[OTMYO4FYO4EY/0DY?0DY/0DY?,DY/0DY/,D"
+	"Y/,CY/(CY/(CY/(CY/(CX_(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"Y/(CW.L=B97$S]T,RMD(R=@(R]H)S-H*S-L*R]H*R-<(5(\"`!$E`!$N\"!$R$!%\"("
+	"!%**!%2,!%:.!%6.!%B2!%B1!%B2!%>1!%B1!%B2!%F3!%F4!%B2!%J6!%F3!%B2"
+	"!%>2!%>3!%:4!%21!%20!%63!%.2!%:5!%65!%B8!%V<!&2G!&6H'4E_O<WYR=H+"
+	"L\\7VML?XN,CYNLK[Q-,\"T-\\.R=<&R-8%Q]8%Q]8%Q]8$QM4#FJC9T=X+X>\\?W^T="
+	"W^T=W^T=W^T=W^T=WNP<WNP<WNT=W^T=W^T=W^T=W^T=W^T=WNP<WNP<W.L;VNH:"
+	"R>,22,K.@?@(8O#`2^OU2NGR2NGR,./K/.3L7NSY2^3M3>/L5>+LG-7QS-L*UN45"
+	"VND9W.H:W>L;W>L;W>L;W.H:W.H:W.H:W.H:W.H:V^D9V^D9VN@8UN03DI[.)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D;7JKUN44ZODHZODHZODHZODHZ_HIZ_HIZODHY_8EX_(AY?0CY_4DZO@GZ_HI"
+	"Z_HIZ_HIZ_HIXO$@IK/AHJ_6Y?0BZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZ?@GZ?@GZODHZODHZODHZ?@GZ?@G"
+	"Z?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/8EX.L9VN$/W=\\,YMD%[<;Q]+7<]JS.]JO,]:_4\\KG@[L;O"
+	"Y]3`X^(.X^H7Z/,BZO<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DYO4DY_8EY_8EYO4DYO4DY_8EYO4D"
+	"Y_8EYO4DYO4DY_8EYO4DY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DY_8EY_8E"
+	"YO4DYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DY/(AX.X=X>\\>Y_8EYO4D"
+	"YO4DYO4DYO4DY?0CYO4DYO4DYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?0CY?,B"
+	"Y?0CY?,BY?,BY?0CY?,BY?0CY/,BY/,BY/,BY/(ASMP+EJ/30$Q])S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D*S=H=X2UQ-(!X>\\>Y/(AZ?<G[?PL[_XN[_\\O[OXN[/LKZ?@HZ/<GY_8F"
+	"YO4FY?4EY/0DY/,DW^\\@R]D)Z/8EZ_LKY_8FYO4FY?4EY?0EY?0EY?0DY/0DY/,D"
+	"Y/,DY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"Y/(CX>`AE:/6R-8$R]D)RMD)R]D)S-H*S-L*S-H*RMD)?Z#>!$R#!$R\"!$Z&!%&)"
+	"!%.+!%.+!%6-!%B1!%>0!%B1!%>0!%J4!%J4!%B1!%J4!%F3!%J5!%F4!%J3!%F2"
+	"!%N6!%F5!%J6!%>3!%60!%61!%:3!%:4!%:5!%F8!%V>!&.E!&FK#D^(I+3@TN,4"
+	"LL3VML?XM\\CYN<GZP,[^TM`0R=<&R-8%R-8%Q]8$QM4$QM4$K+OLO<GVX_(BW^T="
+	"W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;VNH:"
+	"SN440\\7-=?+`6>[\\0>GR0N?P1.?O1^;P-.+I3^CT1^/M2>+L4N#KDM#IQ-+`U.,2"
+	"V><7W.H:W.H:W>L;W>L;W.H:W.H:V^H:W.H:W.H:W.H:V^D9V^D9V.86N,3T)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"DI_/X_(AZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIYO4DK[SKEZ/*XN`=Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZ_HI"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZODHZ?@GZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/8EZ/<FZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ?@GZ?<FXNX=V=`.W^,0[,[Y^9Z]^Y.H]K33\\,;L[]#Y[]'Z[]'X[\\SS\\L'F"
+	"]JW.^9RX];39Z-D%X^84Y_(AZO<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EYO4DY_8EYO4DY_8E"
+	"Y_4DYO4DYO4DY_4DYO4DYO4DY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DX_(AX.X=XN`?Y_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CY?0CY?0CYO0CYO0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0C"
+	"Y?,BY?0CY?0CY?,BY/,BY?,BY?,BY/,BY?,BY?,BY?,BY/,BVN@7KKOK8V^@)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D:G>HO<KZX.X=Y/(AZ/<F[?PK[_XN\\/\\O[_XN[/LKZ?@IZ/<GY_8GY_8FY_8F"
+	"Y_8GYO4FYO4FY?4EV^H;T=\\.[/LJZODJZ/<GY_8GY_8GYO4FYO4EY?0EY?0EY/0D"
+	"Y?0EY?,DY/,DY/,DY/(CY/(CY/(CY/(CY/(CX_$BY/(CY/(CY/(CY/(CY/(CY/(C"
+	"X_(CX_$BK+SPN<7RS-H+RM@(RMD(R]H)S-H*S-H*R]H)GKGU!%\")!$R#!$V%!%&)"
+	"!%*+!%2,!%6-!%B1!%>0!%F2!%F2!%J4!%J4!%J3!%F3!%J4!%J4!%F2!%N4!%N5"
+	"!%N4!%J5!%F4!%:2!%:2!%:1!%:1!%:2!%>6!%B8!%R;!&*B!&JL\"%61B)C$U>86"
+	"M,;XML?XM\\CYN,GZO<S]S]X-RMD(R-8%Q]8%Q]4$Q]8$QM4#OLW]HJ[;Y/(BW^T="
+	"W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;VNH:"
+	"U>869L'88^KQ5NWX0.GQ/N;P/.7N/^7N'=WD3.;R0^+L1N#K4=[JD,+?P,[YT^$0"
+	"V><7V^D9W.H:W.H:W.H:V^H:VNH:VNH:V^H:V^H:V^H:W.H:V^D9V><7T=\\.0DY_"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.T=XM,+R"
+	"Z?@GZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ?<GO<KYBIB`VN@4Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODIZODHZ_HIZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GY_4DW>P;W.H9W>L:X.X=Y?,BZO@GZ?@GZ?@G"
+	"Z?@GZ/8EW.@6V^,1X>85\\,'I_WZ%];G;ZML&\\L;P^J3#^Y>P^YJU^YNW^YNW^:7#"
+	"\\\\#I[=@#\\[_C^X^E]+7:Y=\\,X^H8ZO<FZ?<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EY_8EY_8EY_8EYO4DYO4DYO4DY_8EYO4D"
+	"Y_4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DYO4D"
+	"YO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DX_$@X.X=XO$@"
+	"Y_8EYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DY?0CYO0CYO4DY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?,B"
+	"Y?0CY?,BY?0CY?,BY/,BY?,BY?,BY/,BY?0CY?,BY?,BY?,BY?,BY/,BXN`?PL__"
+	"A)'!,#QM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7FJ;"
+	"M<'QWNP;Y/(AZ/<G[/PK[_XN\\?`P[_\\O[/PLZ?DIZ/<HY_8GY_8GZ/<GZ/<GZ/<G"
+	"Z/<GZ/<GY_8GY_8FU.06V><6[_TMZODIZ/@HZ/<HZ/<HY_8GYO4FYO4EY?4EY?0D"
+	"Y?0EY?,DY/,DY/,DY/(CY/(CY/(CY/(CX_(CX_$BY/(CY/(CY/(CX_(CY/(CY/(C"
+	"Y/(CX_$BQM<+H*O7SMT-R=@(RM@(R]H)R]H)S-H*S-H*M\\X#\"UB:!$V$!$Z%!%&*"
+	"!%*+!%:.!%6-!%B0!%B0!%B1!%F3!%J4!%J5!%J4!%J3!%N5!%J4!%J3!%R6!%R5"
+	"!%J4!%F3!%B3!%>1!%>2!%>2!%:1!%B3!%>5!%>7!%R;!&&@!&FK!5R;9'B@U.44"
+	"NLO]ML?XML?XN,GZO,S\\R]D)S-L*R-8%R-8%Q]4$QM4$QM0#Q-,\"EJ+1X>\\>X.X>"
+	"W^T=W^T=W^T=WNP<W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;W>L;V^L:"
+	"V.@8H,KQ4-C;4>KT1.?P/^7N.N3M../L+-[B3^?R/>#J0=[I4]GEB:G/N<;PT^$1"
+	"V.86VND9V^H:V^H:VNH:VND9VND9VNH:VNH:V^H:V^H:W.H:W.H:V^D9U>,2@8V]"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7FN<T-\\.ZODH"
+	"ZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIS=P+B92_RM<!Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODIZODIZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZODHZ?@GZODHZODHZODHZ?@GZODHZ?@GZODHZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ/<FX_$@V^D8WNP<WNP;W>L:V><7VN@7WNL;XN`@Y/,B"
+	"X>\\>W.<7WND9W^H8Z=D$`'J\"];O>Y]X+^*K*_XJ;\\L;M\\LOS];G?]K?=\\\\;N\\<KQ"
+	"^:C%_8^G\\<?PZM@\"^*6`^Y.NZ-@#W^43ZO<FZ/8EZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4DYO4DY_8EYO4DY_4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DY_8EY_4DY_8E"
+	"Y_4EY_8EYO4DY_8EY_4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DXN`?W^T<"
+	"Y/(AY_8EYO4DYO4DYO4DYO4DYO0CYO4DY?0CYO4DYO4DY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY/,B"
+	"Y/,BY/,BY?,BY/,BY?0CY?0CY?,BY?,BY?,BY?,BY?,BY?,BY?,BY?,BY/,BY/,B"
+	"Y/(AT^(1GZS<3%F))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1U2%JK;GV^D8"
+	"Y/(AY_4DZ_HJ[_XN\\P$Q\\O`P[?PMZODJZ/@HZ/<HZ/<GZ/<HZ?@HZ?DIZODJZODI"
+	"ZODJZOHJZODJZOHJXO$BYO4D[_XNZ_HJZODIZ?@IZ/<HY_8GY_8FY_8FYO4FYO4E"
+	"Y?0EY?0EY/,DY/,DY/,DY/,DY/,DY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"Y/(CX_(CVNH<BY?&S]X-RM@(R=@(R]D)R]H)S-H*S-H*QM<(0W:]!$Z%!$Z&!%&("
+	"!%.+!%6-!%B0!%>0!%F2!%J3!%F2!%N4!%N5!%N4!%N3!%R6!%N5!%N4!%N4!%N3"
+	"!%J3!%F3!%B2!%>1!%>3!%>2!%:0!%:2!%>4!%B7!%N9!%^>!&BI!&*@-51_S-T)"
+	"P]4&M<;WML?XN,GZNLO[QM4$S]T-R-<&Q]8%Q]4$QM4$QM4$Q=0#F:?7V>84X>\\?"
+	"W^T=W^T=W^T=WNP<W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;W.L;"
+	"VND9SN(18;W*5N'G1^7N/./L-N+K,>'I0.+K0N'L/=[H0]SF<L7;D*'.L;[JU.(2"
+	"V.86VND9VND9VN@9V>@9U^<8U>48UN88V>@9V^D:V^H:V^H:V^H:V^D9U^45J+7D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D?HN\\W^X=ZODHZ_HI"
+	"ZODHZODHZ_HIZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"W>P<DZ#-KKKBZODHZ_HIZ_HI[/LJZ_HJZ_HIZ_HIZ_HIZ_HI[/LJZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZ?@GZODHZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FZ/<FX>\\>WNL:W^T<WNP;V^D9S-L+LL#QQM0$R=8&VN@8WNP;"
+	"X.T=X.T=X.P<X.H9[\\/K`'E[Z]L&[\\KT`F]L\\<KR[L[Y`75Z^JW,]+_C_)FR_)JV"
+	"[=3`]+_B`75X\\L/KY]T)^IVW_)\"HY=T)X.@6Z?<FZ?<FZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EY_8EYO4DY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO4DY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DX>\\>"
+	"W^T<Y?0CYO4DYO4DYO4DY?0CYO4DYO4DYO0CYO4DYO4DY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,B"
+	"Y/,BY/,BY?,BY?0CY?0CY?0CY?,BY?,BY?,BY?,BY?,BY?,BY?,BY?,BY/,BY/,B"
+	"Y/,BY/,BY/(AWNP;M<+R;GJK*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D256'Q=,\"XN`?Y?,B"
+	"Y_8EZ?@HZ_HJ\\O`P\\`$Q[?PMZODJZ?@IZ/<HZ/<HZ?@HZODIZOHJZ_HKZ_HKZ_LK"
+	"ZOHJZ?@IY_8GZ/<GZ?@HZ?@HZ?DIZODIZOHJZODJZODIZ?@IZ?@HZ/<GY_8GYO4E"
+	"YO4FYO4FY?0EY?0EY/,DY/(CY/,DY/(CY/(CY/(CX_(CY/(CX_(CX_(CY/(CY/(C"
+	"Y/(CY/(CX.\\@D*#3R=<%RMD(RM@(RMD(R]D)S-H*S-H*R]D)=)?9!$^&!%\"'!%&)"
+	"!%**!%6-!%:.!%B0!%J2!%J2!%N4!%F2!%N5!%F1!%R4!%R6!%V6!%V6!%R4!%N3"
+	"!%J3!%F3!%F4!%J4!%B3!%B3!%>2!%:2!%B6!%B6!%R9!%Z<!&:H!&>H'4N\"ML;R"
+	"S-T.M,7VM\\CYM\\CYN<K[P<_`T=\\/R=<&Q]8%Q]4$QM4$QM0#QM0#IK3FQM+`XN`A"
+	"W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<WNP<W>L;W>L;W>P<W>L;"
+	"V^H:U^@7N]8#2[S&2=SB/>'J,N#H+M_F,-[F--WF-MKC6\\G9F[?;JKGHL+[KUN44"
+	"V><7VN@9V>@9U>88M\\`+A)[@8X'%;(W4E['QQ]D-VND:V^H:V^H:W.H:V><7P\\__"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIKH['AY_8EZ_HIZ_HIZODH"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIY_8E"
+	"J[GHCYJ`Y/(@Z_HIZ_HIZ_HIZ_HIZ_HIZ_HJZ_HJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZODIZ_HIZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FX.X<XO$@X.X=V^D9N\\CZO,GZUN04V.85T=\\/M\\7VW.H:"
+	"W^P<X.T=X.T=X.L:ZM<!`7=\\\\,KS[M3^`'N$]KG>[=@\"_)ZX_)NX[-3`[=D#`GA^"
+	"^*O-Z]L'`(:5_9\"GY=X+\\<#F`VQ@[LGRV-L'Z?<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DY_8EYO4DY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EY_8EY_8EY_8EYO4D"
+	"Y_8EYO4DY_8EYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0C"
+	"X.X=W^T<YO4DY?0CY?0CY?0CY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0C"
+	"Y?,BY?0CY?0CY?0CY?,BY?,BY/,BY?,BY?0CY?,BY/,BY/,BY/,BY?,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/(AY/(AX_$@R=<&CIO+.$1U)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DH[#AVN@5XN`?Y/,B"
+	"YO4EZ/<GZ_HJ\\`$Q\\/\\OZOHKZ/<HZ/<HZ/@HZ?DIZODJZ_HKZODIZ?@IZ?@HZ/<G"
+	"Z/<GZ/<GZ/<GY_8FY?0DY/,CY?0DY/(BX_(BY/,CY_8FZODIZODIZ?@HZ/<GY_8F"
+	"Y_8GYO4FYO4FY?0EY/,DY/,DY/,DY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"Y/(CY/(CXO$BJ+?LN\\?TR]H*R=@(RM@(RMD)R]D)R]H*R]H)E;/O!%&*!$^&!%&)"
+	"!%**!%6-!%>/!%B0!%F0!%N2!%R5!%N5!%R5!%N3!%R5!%N5!%R5!%R5!%N4!%V7"
+	"!%J3!%N4!%J4!%J5!%B3!%B3!%>3!%:3!%:4!%F5!%R8!%V;!&.A!&NK\"U\"(G:W4"
+	"U.05LL3VM\\CYN,GZN<GZOLW]T-X.R=<'Q]8%Q]4$QM0#QM0#Q=0#N,;XK;?EY/(B"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<WNP<W>L;W>L;W>L;"
+	"W.L;VND9U^<7O=<#9K?)0<G/.]?=.-C?.M;>0LW69+K*FK79N<CUOLW]LK_MV>@7"
+	"V>@8V>@8U.48DJ_W*6C$09K`3+0A1K<G1;0F8K4=I\\X8U.8:VND:V^H:VN@8T]`/"
+	"256%)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1%\"!P,[^ZODHZ_HIZ_HIZODHZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI[/LJZ_HIZ_HIZODHRMD("
+	"?XVTS]P'Z_HI[/LJ[/LJ[/LJ[/LJZ_HI[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HJZ_HIZ_HIZ_HI[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZODIZ_HIZODHZODHZODHZODH"
+	"Z_HIZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZ?@GZODHZ?@GZ?@GZODHZ?@GZ?@G"
+	"ZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FYO0DX_$AW^T=T-X-Q]8&R-<'QM0#LL#RNL?YP,W_"
+	"U>,3W>L:W^P<X.L;X>@7]+O?_H>8\\<KT\\<[V_)JT_)V[]KSD],7J\\,WW^:C)`7I`"
+	"\\<KQ[]#Y`75W^J._Y=\\,\\[WB`FY@[,WVUM@#Z?8EZ/<FZ/8EZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_4DY_8EYO4DY_8EYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8E"
+	"YO4DY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y/(AX.X=X.X=Y_8EYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO0CYO0CYO4DY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,B"
+	"Y?0CY?,BY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY/,BY?,BY/,BY/,BY?,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AU^44I[3D5V24)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9HQM0\"W>L8XN`?Y/,B"
+	"YO4EZ/<G[/LK\\`$Q[OTNZODJZ/<HZ?@IZODIZ?@IZODIZODIZ/<FZODIZ_HJZ_HJ"
+	"Z_HJZODIZODIZODIZ?@HZ/<GY_8FYO4EY?0DY/(BXN`@X>\\?Y/(CZ/<GZ/@HZ/<H"
+	"Z/<GY_8FYO4FYO4FY?0EY/,DY/,DY/,DY/,DY/(CY/(CY/(CX_(CY/(CY/(CY/(C"
+	"Y/(CX_$BX_$BP-$$HZ_;S=P,R=@(R=@'RMD(R]H)R]D)RMD)L,C`!562!$^'!%\")"
+	"!%**!%6-!%>.!%F0!%F0!%J1!%N4!%N4!%R5!%N3!%V6!%N5!%R4!%N4!%R5!%N5"
+	"!%J4!%N4!%J5!%J6!%B3!%B3!%B4!%:2!%>5!%>4!%F5!%R9!&&?!&NJ!5>/>XVS"
+	"U.45M\\GZM\\CYM\\CYN<GZO<S]S-L*RMD)Q]8%QM4$QM0#QM0#QM0#P](\"F*/1XN`@"
+	"W^T=W^T=W^T=W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP<W>L;W>L;WNP;"
+	"W>L;W.H:V>D9UN<6T>,2K<?QB+33=:[)>ZS&E;'3K\\+LP,[]S-H)SMT,M,+QV^D9"
+	"V>@8UN87H+T!%G;=1+,C1KHN(*\\H\"J<E!J0B$Z0B,*@@B<$<T.,7V>@8VN@9U>,2"
+	"?HFY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7FN;T^$0ZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIXO$@E*'."
+	"I+#6ZODH[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HJZ_HJZ_HJZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZODHZODHZ_HIZODH"
+	"Z_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZODHZ?@G"
+	"Z?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FY_4EXO$@W^T<V^D8U^44P<[_P,S^TM`0"
+	"M<+UQM0%TM\\/W>H9WNH:X><6[\\KR_(ZB^:G+[]'[\\-'Y];SA^*W-^J;\"^+#/[M+["
+	"[M/^_XVC_8^AZMH%Z-X*_9\"F_HF7Y=`-V=X+Z?<FZ/8EZ/8EZ/8EZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EY_8EY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DX>\\>X.X=X_(AY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?0CY?,BY?,BY/,BY?,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AX.X>O,GY>H:W*C9G)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1U2&T=X,WNP;XN`?Y/,B"
+	"YO4EZ/<G[?PL\\`$Q[?PMZODJZ?DIZODJZOHJZ?DHZODIZ_HJ[/LKZ_HJ[/LK[/LK"
+	"[/LK[?PL[?PL[/LK[/LKZ_HJZODJZ?@HZ/<GYO4EY/,CX_$AX.X>W^T=XO$AZ/<G"
+	"Z/<HZ/<GY_8FYO4FY?0EY?0EY/,DY/,DY/,DY/(CY/(CY/(CY/(CY/(CY/(CY/(C"
+	"Y/(CX_$BX_$BU^89BY?$SMT,R=@(R=@(RM@(R]D)R]H)R]H)P]4'-6ZS!%\"'!%&)"
+	"!%*+!%6-!%>.!%>.!%J2!%N4!%N4!%N4!%N4!%R4!%R5!%N4!%R4!%R6!%R6!%J4"
+	"!%N5!%N5!%F4!%J5!%F5!%B3!%B4!%>3!%:4!%:4!%J6!%R8!%^<!&BI!%^96&N0"
+	"T^,1OL`!ML?XN,GZN<GZO,S\\Q]8%S=L+Q]4%Q]4$QM4$QM4#QM0#Q=,\"E*+1W.H8"
+	"X.X>W^T=W^T=WNP<W^T=W^T=W^T=W^T=WNP<WNP<WNP<WNP<WNP;WNP;WNP;WNP;"
+	"W>L;W.H:W.H:VND9V>@8U^86T^03SMX-R]L*S-L*S]T,T=`0U>,3UN44NLCXVN@8"
+	"VND9R=\\7/7G:.*T>6;\\P):`H$*HE!Z8C!)X>!)\\>\"*(?(*,=D,$6T^(3V.86UN04"
+	"H*S=)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D@(V]W^X=ZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZODHO,GY?(BL"
+	"W.D5Z_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJ[/LJ[/LJZ_HI[/LJZ_HI[/LJ"
+	"[/LJZ_HIZ_HJ[/LJZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZ_HIZ_HIZ_HI"
+	"ZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZ?@GZODH"
+	"ZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FY/(AX.X>W.H:V^D9P<[`"
+	"Q=,#QM0$M\\3VUN,3T-T-V^<7WN<7X^(/\\,'F^9JS_)BT^*W0]+OB\\\\+K];[E^:S-"
+	"_X:5^:G&ZMX*XN<5Z=3`^Y>NZM/]W^02XNT;Z/8EZ/8EZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EY_8EY_8EYO4D"
+	"Y_8EYO4DY_8EYO4DY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CX.X<W^T<YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y?0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?,BY?0CY?,BY/,BY?,BY?,B"
+	"Y?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(BY/(AX_(AX_$@SML+F:762%2%"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<'ZPTM`-W^T<X_$@Y?,C"
+	"YO4EZ/<G[_TM\\O`Q[/LLZ_HKZOHJZ_HKZODIZ_HJ[/LK[/LK[/LK[/LK[/LK[?PL"
+	"[OTM[OTM[?PL[/PLZ_HKZODJZODIZ?@HZ/<GY_8FY_8FY?0DX_(BX.X>W>L;W>P<"
+	"Y?0DZ/<GY_8GY_8FYO4FY?0EY?0EY/,DY/(CY/(CY/,DY/(CY/(CX_(CY/(CY/(C"
+	"Y/(CY/(CX_(CW^\\@C)K+RM@&R=@(R=@'RM@(RMD(R]H)R]H)RMD):H_0!%&(!%\"("
+	"!%.+!%2,!%:.!%>.!%F0!%J3!%J4!%N4!%R5!%R5!%N4!%N4!%R5!%V7!%V6!%N5"
+	"!%N5!%R6!%J4!%B3!%>3!%B4!%B4!%:2!%:3!%>4!%J5!%N7!%^<!&BH!&6D+$]^"
+	"QM<!R-D*ML?XN,GZN,GZN\\O\\P],\"SMT-Q]8%Q]4$QM0#QM0#Q=0#Q=,\"GJS=SML)"
+	"X>\\?W^T=W^T=WNP<WNP<W^T=W^T=WNP<WNP;WNP<WNP;WNP;WNP;WNP;WNP;WNP;"
+	"WNP;W>L;W>L;W.H:W.H:V^D9VND9VND9V><7V.<6V.86V><7V>@8V>@8O\\W^U^44"
+	"VND:I\\,%&8CW7,$N1;<L(:HE!9<8!)$4!906!),5!Y\\<!YX<0J08N](/U.(2UN04"
+	"N\\CX)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D*C=HG:O;YO4DZODHZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HJ[/LJZ_HIZODH[/LJ[/LJ[/LJZ_HI[/LJW^X>B97#K+?@"
+	"Z_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HJZ_HI[/LJ[/LJ[/LJZ_HJZ_HI"
+	"Z_HI[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZ_HIZ_HIZODH"
+	"ZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODH"
+	"Z?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FY?(AX>\\?W.H9"
+	"R]D)S]T-O<O\\Q=,$PL[`N\\?YTMX/VN87W>@8X.<6YM`,Z]/\\\\,?N\\L+F\\L+G[LWT"
+	"Z=\\*XNH9X>P;X>T<X>P;X>H9W^@7Y.`>Z?<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4D"
+	"Y_8EYO4DYO4DY?0CY/,BYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DX_$@X.X=X>\\>Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0C"
+	"YO0CYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,CY?,BY?,BY?,BY?,BY?,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AY/(AX_$@X.X=V.85S=L*QM,!Q-'`"
+	"I;+CD9[.3%B))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DC)K,U>$.W^T<X_$@Y/,C"
+	"YO4EZ/<G\\/\\N\\O`Q[/PLZ_HK[/PLZOHJ[/LK[/LK[/LK[/LK[/LK[?PL[OTM[OTM"
+	"[?TM[/PLZ_LKZ_LKZ_HKZODIZ?@HZ/<GZ/<GY_8FYO4EY?0DY?,CX_(BX.\\>V^H:"
+	"V^D9XO$AY_8FY_8GYO4FYO4FY?0DY/,DY/,DY/(CY/(CY/(CY/(CY/(CY/(CX_(C"
+	"X_(CY/(CX_$BXN`AH;#DP,OYRMD)R=@'R=@'R]D)R]D)R]H)R]D)C:OI!%*)!$^&"
+	"!%*)!%2,!%:.!%B/!%F0!%F1!%J3!%R5!%N4!%R5!%Z7!%V8!%R4!%V7!%V7!%V6"
+	"!%R5!%N5!%N5!%F4!%F4!%>3!%J6!%>3!%:2!%B4!%B4!%N7!%^;!&6E!&JI%D^$"
+	"K[_HT>(3M<;WN,GZN,GZNLK[P,__S]X.Q]8%QM4$QM0#QM0#Q=0\"Q=,\"KKSNN,/P"
+	"XO$AW^T=W^T=W^T=W^T=WNP<W^T=W^T<WNP;WNL:WNL:W>L8W>H8WNL9W^P;WNP;"
+	"W^T<WNP<WNP<WNP<W>L;W.H:W.H:W.H:W.H:W.H:W.H:W.H:W.H:V^H:Q=0$T^$0"
+	"W.L<B*CT*9\\/9<,P(*PG$:4B!I@9%J@C#Z4A!IP;'Z$<!IT<*J0<D;P/SMT-U>,3"
+	"S=L*,3QM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D-D)SML3TZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODH[/LJ[/LJZ/8FYO4D[/LJ[/LJZ_HIZ_HJZ_HIN\\CY=8&JW.H6"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ_HIZ_HJ[/LJ[/LJ[/LJ[/LJ"
+	"Z_HI[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZ?@GZODH"
+	"ZODHZ?@GZ?@GZODHZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GYO0C"
+	"XN`?WNL;S-H)P]$\"M<'TM\\7VN\\CZQ=,#P\\`!V.45W>H9W^L;X.L;X>P<X>T<X>T="
+	"X>T=X>X>X>X>X>X>X>X=X>X=Y_0CZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8E"
+	"YO4DYO4DY_8EYO4DYO0CYO4DYO4DYO4DYO4DY_8EYO4DYO4DY_8EYO4DYO4DY_8E"
+	"YO4DYO4DY_8EYO4DYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DW^T<X.\\>Y?,BYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO0CY?0CYO4D"
+	"Y?0CYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?,BY?0CY?,BY?,BY?0C"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/(AXN`?W>L:T^$0Q]0#N<7TKKOIO<KXUN03X_(A"
+	"Y/(AX_$@W.H9HJ_?.$1U)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DH*S>UN,0X.X=X_$@Y?,C"
+	"Y_8FZ?@H\\?\\O\\?`P[?TM[/PLZ_LK[/LK[/LK[/LK[/LK[?PL[?PL[OTM[OTM[?TM"
+	"[/PL[/PLZ_LKZODJYO4FX>`AWNP=WNT=X>`@Y/,CY?0DY?0DY?,CY/(BX_$AX.\\?"
+	"V^D9V.86W^X>YO4EYO4FYO4FY?0EY?0EY/,DY/(CY/,DY/(CY/(CY/(CX_(CY/(C"
+	"X_(CY/(CX_$BX_$BN<G^JK7BS-L+R=@'R=@'RMD(R]D)R]H)R]D)J<+\\!%2/!$^&"
+	"!%&)!%.,!%6-!%:.!%F1!%B0!%N4!%N5!%N4!%N5!%V6!%R7!%N4!%R6!%R5!%V6"
+	"!%R6!%N5!%R6!%J5!%F3!%B4!%>3!%:2!%B3!%:3!%>4!%N7!%V:!&2B!&NL\"%6."
+	"E*3,UN<7M<;XN,GZN,GZN<GZOLW^SMP,R-<&Q]4%QM0#Q=0#Q=0#Q=0\"OLS]H*O8"
+	"X_(AW^T=W^T=WNP<WNP<W^T=W^T<WNP;WNL:VN80P\\GKK:[&L*V[QL33V^#^W^P8"
+	"W^T<W^T<W^T<WNP<W>L;W>L;W>L;W.H:W>L;W>L;W>L;W>L;W>L;W.L;RMD*S=L*"
+	"W>T>>Z#R+:,76;TN\"J4E!:0C!)49\")T<!)$5!(`3'Y`<!9T:#YL5;ZP/Q]4&T^$1"
+	"TM`/8&R<)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D3%F*R=@'ZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIY_8EY/,BY?0CY?0CZ_HIZ_HI[/LJ[/LJ[/LJX_(BC)K&H:S4Z_HI"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HI"
+	"[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZODIZ_HIZODHZODHZ_HIZ_HIZODHZ_HIZ_HIZ_HI"
+	"Z_HIZODHZODHZ_HIZ_HIZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GY_4DX_$@WNP;U>,2T-X.T=\\/N,;WS-H)O\\S^S=L+V^D9W^P<X.T=X>X>X>X>"
+	"XN\\?XN\\?X>\\>XN\\>X>X=Z?8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DY/(AW^T=X.X=Z/8EYO4DYO4DYO4DYO0CYO4DYO4DYO4DYO0CY?0C"
+	"YO4DYO4DYO4DYO0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?0CY?,CY?0CY?0CY?0CY/,B"
+	"Y/,BY/,BY/,BX_(AX.X=V><6S]T+P]#_N,3RK+GFJ+7BO<KYV>@7Y/,CY/,CY?,C"
+	"Y/,CY/,BY/(AX_$@R=<&5F*3)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DKKOLV>83X.X=X_$AY?,C"
+	"YO4EZODI\\P$Q\\?`P[?TMZ_HJZ_HJZ_HJZ_HJ[/LK[?PL[OTM[_XN[OXN[OXN[?TM"
+	"[/PLZ/<HU.06J[GKCIK*?(>T?HFV?XJW@HVZCYO)K+CGT-X,X_$AY/(BX_$AXN`@"
+	"X.X>V><7UN04W^T=Y?0EY?4EY?0EY?0EY/,DY/,DY/,DY/(CY/(CY/(CY/(CX_(C"
+	"X_(CX_$BX_$BX_$BS]\\2D9O)SMT-RM@(RM@(RMD(R]D)R]D)R]D)O=(&(F2G!$^&"
+	"!%\"'!%.+!%6-!%>/!%>0!%F1!%J3!%N5!%J4!%N4!%R5!%R6!%V6!%R7!%R6!%V6"
+	"!%Z8!%R5!%R6!%N5!%B3!%F4!%B4!%B5!%>2!%>3!%>5!%J6!%R9!&*A!&NM!%R7"
+	"<X2IUN86N\\S]N,GZN,GZN<GZO<S]RMD(RMD)Q]4$Q]4$QM0#Q=,\"Q=,\"P](!E*#/"
+	"X>`?W^T=WNP<W^T=WNP<W^T<W^P;W>H9R]/ZF8^3OZI!X]!!\\-Y![]Q!Y=)<X=G("
+	"X.L2W^T<W^T<W^T<WNP<W>L;W>L;W>L;W>L;W>L;W>L;W>L;W>L;W.L;S]T.Q]4#"
+	"W^\\?A*;U))P30+0K!*$C!*$B!)D:\"Y88\"9L<$)`=!)(5#9`;!9L68J<.P,[`T-X."
+	"TM`0AI'!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D;7JJU^85ZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"[/LJ[/LJZ_HIZODHZODHZ_HI[/LJ[/LJ[/LJ[/LJ[/LJZ_HIR=@'<7^ET=X)[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZODIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODHZODHZODHZODHZODHZODHZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODH"
+	"Z?@HZ?@HZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FY?,BX.X>V.85V><7RM<'ML/UM\\3VR]@)S-H*V.86WNP<X.T="
+	"X>X>X>X>X>\\>X.T=Y/(AZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DW^T<X>\\>Y/,BYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO0CY?0CYO4DYO0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,CY?0CY/,BY?,BY/,BY/(B"
+	"X>`?W.H9T^$0RM@'P<[]M\\3RK+CEHZ_<GJK8O\\OZV^H9Y/(BY/,CY?0CY/,CY?0C"
+	"Y?,CY/,BY/,CX_$@X.X=O,CY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DO<KZW.H7X.X=X_(AY?0D"
+	"Y_8FZODI\\`$Q\\?\\PZ_HKZODIZODIZODI[/LK[/LK[?PL[_XN\\?`P\\/\\O[_XN[?PM"
+	"V>D<G:S?@XZZI;#<NL?UPL_^QM,\"Q=,!P]#_O<KYK+GHCIK(E:#-S=H(XO$AXN`@"
+	"X.X>WNP<U^45U>,2X.X>Y/,DY?0EY?0EY/,DY/,DY/,DY/(CY/(CY/(CY/(CY/(C"
+	"X_(CX_(CX_$BXO$AW.P=B9;'R]H(RM@(R=@(RMD(R]D)R]D)R]D)Q]<'6H;(!%&'"
+	"!%\"'!%.+!%2+!%>0!%>0!%F1!%J3!%J3!%R6!%R5!%R5!%R6!%R5!%N5!%N4!%R4"
+	"!%Z7!%V7!%R7!%N6!%J6!%J6!%B4!%B5!%>5!%>5!%>5!%J7!%N:!%^?!&JK!&.B"
+	"25^&T>$.P]0%M\\CYN,GZN<GZO,O\\Q]4%SMP,QM4$QM4$Q=,\"Q=,\"Q=,\"Q-,\"E:+1"
+	"W>P:X.X>W^T=W^T<W^T=W^T<WNL:SM;^MIUR^>%!`_1!`_!!`NQ!`>I!`.E!_NE!"
+	"[N*LWND.W^T<W^T<WNP<WNP<WNP<WNP<W>L;W>L;W>L;W>L;W>L;W.H:T^(3P,S\\"
+	"X?$AG;C_\"(D\"&*HE!)`B!)T@!)H;$IL:!:$>!)H9!(`2)J0<!9H5:J8(O,K[SMP,"
+	"T^$0H*S<)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DBI?(X_(AZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"[/LJ[/LJZ_HI[/LJZ_HJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ?@HH['?@HVQZ?<E[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ_HJ[/LJ[/LJ[/LJZ_HJ"
+	"[/LJ[/LJZ_HJZ_HIZODIZ_HIZODIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HI"
+	"ZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODH"
+	"Z?@GZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FY?0CXN\\?W.H9T=\\.P]$!U>,3T^$1S]T-R]D)S-L+"
+	"W.H:WNP<X.T=X.X>W^P<YO4DZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY_8EYO4DY/(AW^T<X>\\>Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y?0CY?0CYO4DYO4DY?0CYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CYO0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY/,BY/,BX_$@WNP<V.85SMP+"
+	"QM,\"O\\OZN<7SKKGFFZ71@HVYCYO)N\\CXWNP<Y/(BY/,CY?,CY?0DY?0DY?0CY?0C"
+	"Y?0CY?,CY/,BXN`@WNL:T^$045V.)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,C]PS-H'W>L9X.X=Y/(BY?0D"
+	"Y_8FZ_HJ\\`$Q[OTNZ?@HZ?@HZ?@HZ_HJ[/LK[?PL[_XN\\P$Q\\?`P\\/\\O[?PMQ-4)"
+	"AI\"`K+?CQ]4#T-X-T^$0U>,2UN03U>,2T^$0T=\\.T=\\.S]T,Q=,\"IK+AL;SJW^T<"
+	"X.X>W^T=V^D9U>,2U.(2X>\\?Y/,DY?0EY/,DY/,DY/,DY/,DY/(CY/(CX_$BX_(C"
+	"X_$BX_(CX_$BX_$BX.\\@G*K>PL_]RMD)R=@'RM@(RM@(RMD)RMD)R=@(@J/B!%&'"
+	"!%&(!%*)!%6+!%:/!%>0!%B0!%J3!%J5!%N6!%N5!%R5!%V6!%V7!%R7!%V8!%R5"
+	"!%R5!%N6!%R7!%R7!%F4!%N6!%F5!%B5!%>5!%>5!%B6!%J8!%R;!%^>!&>I!&JI"
+	"(D^#O\\[YS=X.M\\CXN<GZNLKZN\\O[P](!S]T-Q]4$QM4$Q=0#Q=,\"Q=,\"Q=,\"F*76"
+	"V.84X.X>W^T=W^T=W^T<W^P;V^@4NZBA_.-!`_=!`^]!`NM!`>A!`.5!_>)!_N1!"
+	"_>1![>.YVN<2WNP;WNP<WNP<WNP<WNP<W>L;W>L;W>L;W>L;W>L;W.H:U^46N\\CW"
+	"XO$AP=<2&7#A\")`=!)`B!)T?!)L=!)$4!(T1!(P.%YX9%I\\9$)@2@JKZO,KZS=L+"
+	"T^$0ML/R)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G"
+	"G:O;Y_8EZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJW^X>?(FVK[GBZ_HI[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HJZ_HJZ_HIZ_HIZ_HIZODHZOHIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODHZ_HIZ_HIZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FYO4DXN`@W.H:U.(1N<7WQ]4%L+[PO\\S^"
+	"N\\C[R]D)V.87U^45WNP<X.T=WNP;X_$?Z?@GZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DY_8EYO4DYO4DYO4DWNL:X>\\>YO0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DY?0CY?0CYO4DY?0CYO0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,CY/(AX.\\>VN@7T=\\.R=<&PL_^O<KYML/Q"
+	"J[?DH*O8C)?#@HZZI[/ASMP+XN`@Y/,BY/,CY?,CY?,CY?0CY?0CYO0DY?0CY?0C"
+	"Y?0CY/,CX_$AW^T=V.85S]P*<GZO)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D5&*4T-X,W>L:X>\\>Y/(AY?0D"
+	"Y_8F[/LK\\P$QZ?@HZ/<FZ?@HZODIZ_HJ[/LK[_XN\\P$Q\\P$Q\\?`P[OTNO<X#CIG$"
+	"P,SZTM`.UN03U^44V.85UN03U.(1TM`/T=\\.SMP+S]T,SMP+S-H(S-H)Q=,\"M\\/Q"
+	"V^D8W>L;W.H:V.86T=\\/UN44XN`AY/,DY?,DY/,DY/,DY/(CY/(CY/(CX_$BX_$B"
+	"X_$BX_$BX_$BX_$BX>\\@M,3XL+OHS-H*R=<'R=@(RMD)RMD(RMD)RM@(G[OV!%6-"
+	"!%\"'!%&(!%.*!%6-!%:.!%B1!%F2!%F5!%N7!%R7!%R7!%R7!%V7!%V8!%V8!%R7"
+	"!%R6!%N6!%J5!%N6!%N6!%J5!%B4!%F6!%F7!%F7!%J8!%N9!%V<!&*@!&:H!&VM"
+	"$E2+I[7=U>45M\\CXNLKZNLKZN\\O[P,__S]X-Q]8%QM0#QM0#Q=0#Q=0\"Q=,\"GJO<"
+	"T^$.X>\\?W^T=W^T=W^T<WNP:S=/WX\\-\"`_9!`_1!`>E!_^-!`.5!_^-!]]A!`.=!"
+	"_>%!^>!*W-_KV><6W>L:WNP;WNP;WNP<WNP<WNP<WNP<W>L;W>L;W>L;V><8N,7U"
+	"X_$@UN88>9OL!8H\"!)T<!)L=!)H<!9L9\"I`;\"Y\\<!9D8!)430YD*G[+LP,W]SMP,"
+	"T^$1R-4$*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.T=XN<;V"
+	"ZO@HZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIR-<&:W>AT=X([/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HJZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HI"
+	"Z_HIZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GY_8EX_$@W>L;T=X.QM0$S=L+"
+	"M,#RSMT-N,7VO,GZV^D9W^T<X.X=W^T<W>L:Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DYO4D"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY_8EYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DX>\\>X.\\>XN`?Y_8EY_4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DY?0CY?0C"
+	"Y?0DY?0CY?0CY?0CY/,BXO$@W>L:U>,2S-H)Q-(!O\\S[N\\CWML/QJ[CEFZ?4@HVY"
+	">(2PG*C7P<[^WNP;X_$AY/(BY/,CY?0CY?0CY?0DY?0DY?0CY?0CY?0DY?0CY?0C"
+	"Y/,CX_(AX.X=V><6T=X-R-8#<GZO)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<7ZQT=X,W>L:X>\\>Y/(BY?0D"
+	"Y_8F[OTL[/LLYO4EY_8FZ?@HZODIZ_HJ[?PL\\?`P\\`$Q\\P$Q\\?`PR-H/D9S'QM+`"
+	"TM`/U>,2U^44VN@7V.85T^$0TM`/TM`/T-X-S]T,SMP+S=L*S-H)S-H(R]D(R=@&"
+	"Q='`V^@8VN@8V><7T^$1S]T-W.H:XO$AX_(CY/(CY/,DY/(CY/(CY/(CY/(CX_$B"
+	"X_$BX_$BX_$BX_$BXN`@S=T0EZ'.S=P+R-<'R=@'RM@(RMD)RMD(RMD(NLX$&%R?"
+	"!%\"'!%&(!%2,!%6,!%:/!%F2!%F5!%B4!%N7!%N7!%N6!%R8!%Z9!%Z:!%V8!%R7"
+	"!%R7!%N7!%R8!%N6!%J6!%N6!%F6!%N8!%F8!%F8!%J9!%R:!%Z<!&&@!&>F!&^N"
+	"!UN7B)F`V.@8N<K[N,GYNLKZO,S\\P,__SMT,R-<&QM0#Q=0#Q=,\"Q=,\"Q=,\"H:_?"
+	"S]P)X>\\@W^T=W^T=W^T<W>L9Q\\#2^>!!`_E\"`^U!_^1!^]I!_>%!^^!!^]Y!_^=!"
+	"_.!!^]]!Y-JKU.$-V^D7W>L;WNP;WNP<WNP<WNP<WNP<W>L;W>L;W>L;VN@8M\\3T"
+	"X>\\?VND9Q=D12WK9#(X$!I@7!)@8!)87!)46!),4!9,3+I4+?:'KL\\'PQM0#T-X."
+	"U>,2TM\\.0DU^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6&25S]T-Z_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI[/LJZ_HIZ_HIZ_HIZ_HIZ_HI[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIJ[KI='VBY?0A[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HJZ_HIZ_HIZODHZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FY_8EX_$AW^P<UN04"
+	"S]P,M\\3UTM`/V^D9WNP<W^T<X.X=X.T<Y?,BZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY?0CW.H9X>\\>Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CYO4DY?0CY?0C"
+	"Y?0CY/(BW^T=V.85S]T,Q]4#P<W\\O<KYN,3SK[OJH[#>CYO)=8&N=8*NFZC6P<[]"
+	"W.H9XN`@X_(AY/,BY/,BY?,CY?0CY?0CY?0CY?0CY?0DY?0DY?0CY?0CY?0CY?,C"
+	"Y/(AX>\\>VN@7TM\\.R-4#QM,!:7:G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@I#!TM\\,W>L:X>\\>Y/(BY?0D"
+	"Y_8F[/PLY?0DY?0CY_8EZ?@HZODIZ_HJ[_TM\\`$R\\`$Q\\P$QWN\\CD)S+PL_\\TM`/"
+	"U.(1U.(1W.H8V^D8V><6UN03U.(1T-X-S]T,RM@'S-H)S-H)R-8%R]D'RM@&R-8$"
+	"Q]4#S=L)V.86U^45U>03S]T-TM`0W^T>XO$AX_(BY/(CX_(CY/(CX_(CY/(CY/(C"
+	"X_$BX_$BX_$BXO$AXN`AW.L=B97%S-H)R=@(R=<'R=@'RM@(RMD(RMD(Q=8'27F^"
+	"!%\"&!%&(!%**!%6-!%:/!%>2!%B4!%F5!%B4!%N7!%N8!%R9!%Z:!%V9!%R9!%R8"
+	"!%Z:!%R8!%N6!%V8!%N7!%N8!%V:!%R:!%J9!%N;!%V<!%^>!&\">!&.B!&BF!'&N"
+	"#&2<;GZAVNH9P-(\"O,W]OL[_O\\__P-#`SMT,RMD(QM4$Q=,\"Q=,\"Q=,\"Q=,\"HK#A"
+	"SML'X>`@W^T=WNP<WNP<W.H8S+V^_^9!`_9!`NE!`.9!_N-!^]Y!^=M!_^=!_>)!"
+	"^]]!^=Y![-IRS=C^U^44V^D8WNP;WNP<WNP<WNP<W>L;W>L;W>L;W.H:V^D9M\\7U"
+	"X.X=V^H:U^86P-,,6H'5&X'S'9(+%9,0#Y(/&9(,.H[^>IKEJ[KJP,[]S-H*TM`0"
+	"U>,3TM`/:76E)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<'VMV^D9Z_HIZ_HI"
+	"Z_HIZ_HIZ_HJZ_HIZ_HIZ_HI[/LJZ_HI[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ/8FCY[,D)K!Z_HH[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HJZ_HIZ_HIZODHZ_HIZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZODHZ_HIZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/8EY/(A"
+	"X>\\>W.D9W>L:WNP<W^T=X.T<X>\\>Z/8EZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DW.H9XN`?Y?,CYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CYO0CY?0CY?0CY?,CX>`?W.H9"
+	"T^$0RM@'P]#_OLOZN\\?VL\\#NI[/AE:'.?(BU:W>D?8JXIK/BRM@&WNP;XN`?X_$@"
+	"Y/(AY/,BY/,BY/,BY?,CY?0CY?0DY?0CY?0CY?0CY?0CY?0DY?0DY?0CY?0CY/(B"
+	"X>\\?V^D8T]`/R=8$Q-#_QM,!9G.D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DD)_1T]`-W>L:X>\\>Y/(BY?,C"
+	"Y_8FZ/<GX_$AY?0CY_8EZ/<GZODIZ_HJ\\?`O\\`$Q\\`$Q[_XOJKGNM<#LT=\\-U.(1"
+	"U>,2VN<6W>L:U^44V><6UN03TM`/SMP+SMP+S=L*R]D'R]D(R=<&R=<&R=<%Q]4#"
+	"Q]4#QM0\"T-T,U>,3U>,3T-X.S-H)VN@8X>\\?XN`AX_$BX_(CY/(CX_(CX_(CX_$B"
+	"X_$BX_$BX_$BX_$BXN`AX.\\@E:38Q=,!R=@(R-<'R=<'R=@(RM@(RM@(R-<'=9K<"
+	"!%&(!%&(!%*+!%6-!%6.!%>2!%F5!%F5!%N7!%J7!%R:!%Z<!%N7!%J7!%R9!%V:"
+	"!%R9!%R8!%N6!%V9!%R9!%V:!%Z;!%R9!%Z=!&\"@!&&@!&*A!&2B!&BD!&JF!'&M"
+	"&&RBC9>UY/,CRML+Q=<'QM<'QM<'Q]@(U>03R]H*QM0#Q=0#Q=,\"Q=,\"Q=,\"HK#A"
+	"SML(XN`@W^T=WNP<WNP;W.H8S;^\\_>5!`_)!`>A!`.1!_N)!_.)!^MQ!^]]!^^!!"
+	"^=Y!^-U![MA1R='OU.(1VN@7W.H:W>L;W>L;W>L;W>L;W>L;W.H:W.H:V^D9N<;W"
+	"W^T<W>L;VN@8V.87SM\\2H[;O;8S657[56H38=(_5F:O?M,+SPL__S-H)TM`/U>,2"
+	"UN04T^$0@X^_)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA9+\"X_(AZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HI[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJX.\\?>H:QK;?A[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HIZ_HIZODHZODHZ_HIZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZ_HIZODHZODHZODHZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FYO4DY?,BX_$@X_$@YO0CZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8E"
+	"Y_4DY_4DYO4DYO4DY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8E"
+	"YO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y_4DYO4DYO4DYO4DY_8EYO4DX.T<X.X>X_$@Y_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO4DY?0CX_(AWNT<UN04S=L*QM,\"P,W\\"
+	"N\\?UML+PJ+3AFJ72A(^];WFG:72AC)C&M<+QT^$0X.X=XN`@X_$AY/(AY/(AY/,B"
+	"Y/,BY?,BY?,BY?0CY?0CY?0CY?0CY?0CY?0DY?0DY?0DY?0DY?0DY?0CY/,BXN\\?"
+	"W.H9T^$0RM<%Q-#_Q-#_Q]0\"9G.C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DG*K<U>(/W>L:X>\\>X_(BY?,C"
+	"Y_8FY/(BX_(AYO4DY_8FZ?@HZ?@H[/LK\\`$Q]0$R\\`$QV^T@F:32S-H'U>,2X>\\>"
+	"V^@7X.X=WNP<V^D9V><6T^$0TM`/TM`/S-H)RM@'Q]4$R=<&Q]4$R=<%Q=,\"Q]4#"
+	"QM0\"Q]4#Q-'`T=\\/T^$1T=\\/R]D(TM`0W>P<X.X?XN`AX_$BX_$BX_$BX_(CX_$B"
+	"X_$BX_$BX_$BXN`AXN`AX>`AK;WQM<'ORMD)R-<&R-<&R=@(R=@(RM@(R=@(F+3R"
+	"!%.,!%\"'!%.+!%2-!%:/!%>3!%>4!%J6!%N7!%N8!%R:!%V<!%V:!%V;!%R:!%V;"
+	"!%^<!%Z;!%^<!%^;!%Z;!%Z;!%^;!&&=!&&?!&*A!&6B\"&JE%FVC/W:F=I;#G[;C"
+	"Q=/^WNL7WNT>R]P,RML+RML+RML+SMX.V>D9R=<'QM0#Q=0#Q=,\"Q=,\"Q=,\"GJS>"
+	"T-T*X>\\@WNP<WNP<WNP;W.H9S,32^-U!`NY!`.E!_N%!_.!!^-M!_.!!^=]!]ME!"
+	"]]U!]MM!Z=5:Q<SJTM\\.V><6W.H:W>L;W>L;W>L;W>L;W>H:W.H:W.D9V^D9NL?W"
+	"WNL:WNP<V^D9VN@8V.<7UN46TN$2RMH+Q=0%Q=,#QM0$R]D)S]T,TM`0U>,2UN04"
+	"U^45U.(2F:75)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DF:76YO4DZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HJ[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJZ_HI[/LJZ_HI[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJU>,3;WFBPLWW[/LJ[/LJ[/LJ"
+	"[?PK[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HIZ_HIZ_HIZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?<GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO0CYO4DYO4DYO4DYO4DYO4DY?,BW.D9XN`?Z/<FY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY?0DY?,CX.\\?VN@7T=\\.R-8$PL_^O<KYN<;TK;GHH[#="
+	"D)O(=H&N9&Z<=(\"NH*S;Q-#`V^D8XN`?X_$@X_$@Y/(AY/(AY/(BY/,BY/,BY/,B"
+	"Y/,BY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0DY?0DY?0CY?0DY/,BXN`?W.H9"
+	"U>(1R]@&Q='`Q-#_Q-#_Q]0#9G*C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DH:[@UN,0W>L:X>\\>X_(AY?,C"
+	"YO4EX>`?X_(AYO0DY_8FZ/<GZ?@H[OPL\\`$Q\\`$Q\\O`QN,?\\M\\+OT=\\.W^X<Y?0D"
+	"W.H9X.X=W^T=W>L;U^44T^$0TM`/S-L*RMD'S-H)R]D(R-8%R-8%QM0#QM0\"QM0\""
+	"QM0#PL__P<W]R=<&T-X-T=\\.R]D)RM@(V>@8WNT=X>\\@XN`AXN`AX_$BX_$BX_$B"
+	"X_$BX_$BX_$BX_$BXN`AXN`AQ=8)GJG5S-L*R-<'R-<'R=<'R=@(RM@(R=@(L\\H!"
+	"\"%B8!%\"(!%.+!%2,!%:/!%B3!%B5!%F6!%N8!%N8!%R:!%V=!%Z=!%Z=!%Z=!&\">"
+	"!&*>!&*>!&\"=!&.>!&2>!&2?!&6?\"FF@)FN?57ZMA*',J[[JR-H$W>P;Y/,BX.`@"
+	"V.<7S]T-R=@'RMD(R=D(RMH)S-L*T^,2T^(2QM4$QM0#Q=0\"Q=,\"Q=,\"Q=,\"FZC9"
+	"UN,1X.X?WNP<WNP<WNP<W>H9T=7WY\\E!_^A!_N-!_>%!^]]!]-=!_N=!_.%!^-M!"
+	"^MY!]-I!W,IVP\\OPT=\\-V.86W.H9W>L:W>L;W>H:W>H:W.D9W.D9W.D9V^@8N<7U"
+	"W>H9WNP<W.H:V^H:VN@8V>@8V.<7V.87UN04U>,3U.(2U.(2U>,3UN04U^45V.86"
+	"V.86U>,3J[?F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIKJ[CIZ?@GZ_HIZ_HIZ_HIZ_HI[/LJ"
+	"[/LJZ_HJ[/LJZ_HJZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LK[?PK[/LJ[/LJ[/LJ[/LJR-8&9G\"9S]P&[/LK[/LJ[/LK"
+	"[/LK[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZ_HIZODHZODHZODHZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<GZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DY_8E"
+	"YO4DY_8EY_8EYO4DYO4DYO4DYO4DV><6XO$@Y_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CX_$AWNP;U>,2S-H)Q-'`O\\S[N\\CVM<'OJ[CFF:73@8RY:G2B9&^<"
+	"B9;%LK_NT=\\-W^T<XN`?X_$@X_(AY/(AY/(AY/(AY/(AY/(AY/,BY?,BY/,BY?,B"
+	"Y?,BY?,CY?0CY?0CY?0CY?0CY?0CY?0CY?0DY?0DY?0DY?,CY?,CXO$@W>L:U>,1"
+	"S-D'Q='`Q-#_P\\_^Q-#_Q]0#76F:)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DI;/EV.43WNP;X>\\>X_$AY/,C"
+	"X_(BX>\\>X_$@Y?0CYO4EZ/<GZ?@H[_TM\\P$Q\\O`Q[/LLH:[@Q]4\"U>,2Y?0DXO$A"
+	"W>L:W.H:W>L;V^D9U^45U.(1S=L*S=L*R]D(R=@&QM4#R-8%R-8%QM0#R-8%P]#_"
+	"P<[]PL__P<[]PL[]S-H)SMP+R]D)Q=,#UN04W.L;X.X>X>\\@X>\\@XN`AX_$BX_$B"
+	"X_$BX_$BXN`AXN`AXN`AXN`AV.@:B)/!S-H*R-<'R-<&R=<'R=@'R=@(R=@(P]0&"
+	".G*U!%&)!%&*!%2-!%60!%B6!%B6!%N9!%V;!%R;!%Z=!%Z>!&\"?!&\"@!&*?!&6@"
+	"!&:@!&>@!&BB%6NB,G*B:8JVEZW9M\\CUT-`,X.\\>Y/,BX.\\?V.<7S]X.Q]8%PL__"
+	"P,W]P<[^P]#`R-<&R]H(S=P+T^(1TN$1R-<&QM4#Q=0#Q=,\"Q-,!Q=,\"Q-(!E:+3"
+	"W>L8X.X>WNP<WNP<WNP<W>L:VN83S[B=]]U!_N-!_>%!^M]!]]E!_N5!^-U!]MM!"
+	"]MM![]5!Q+RAQ<_XTM`/V><6W.D9W.H:W.H:W.H:W.D9W.D8W.@8W.D9V^@8NL;U"
+	"W>H8W^P<W.H:W.H:W.H:V^D9VN@8VN@8VN@8V><7V.86V><6V.86V><6V><7V><6"
+	"V.86UN03N\\?X)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D.45VO,GZZ_HIZ_HI[/LJZ_HI[/LJ[/LJZ_HJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJN\\GY8VV3U^41[/LK[/LJ[/LK"
+	"[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HIZODHZ?@GZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODIZ_HIZODHZ_HIZODHZ_HIZODHZODHZODHZODHZ_HIZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DY_8EYO4DYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4D"
+	"YO4DY_8EYO4DYO4DY_4EY_4EYO4DV><6X_$AY?0CY_8EYO4DYO4DYO4DYO4DY?,C"
+	"X>\\?VN@7T=X-Q]4$P<W]O,GXM\\3RKKOII+#>CIG'>(.P9&^:>86RH[#>Q-(!W.H8"
+	"XN`?X_$@X_$@Y/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,B"
+	"Y?,BY?0CY?0CY?,CY?0CY?0CY?0CY?0CY?0CY?0DY?0CY/,BXN`@WNP;U>,2S-H("
+	"Q='`Q-#_Q-#_Q-#_Q-#_Q]4#35J*)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DJ[CJV><4WNP;X>\\>X_$AY/,C"
+	"XN`@X.X=X_$@Y/,CYO4EY_8FZ/<G[_XM\\/\\O\\?\\OX_,EH*S:SMP*V^D8YO4EWNT="
+	"WNP;VN@7V^H9U>,3U.(1T^$1S=L*S-H)Q]4$R-<%R-8$Q]4$Q=,\"Q=,\"P]#`P\\__"
+	"P\\__PL[^P,W\\O<KYQ]4#S-H)R]D)Q-(!T=\\/V>@8W>P<W^T>X>\\@XN`AXN`AXN`A"
+	"X_$BX_$BXN`AXN`AXN`AXN`AWNT>C9S.QM0!R-<'R-<&R-<&R=@'R=@'R=@(Q]8&"
+	";9/2!%&*!%&*!%2-!%:1!%F6!%N8!%N9!%Z<!%Z<!&&?!&*?!&2A!&:B\"&>@(FN>"
+	"2'NG?9C%I+GEPM+^U^<5XO$?X_(BW^X>V.<7T-\\/R-<&Q-(\"P](!P](!P]'`Q-,!"
+	"Q=0#QM4$R-<&R]H)T=`/U.03SMT-R-<%QM0#QM0#QM0#Q=,\"Q-,!Q-(!P](!D9W,"
+	"XN`?X.X>WNP<WNP<WNP<W>L;V^D8TM;YV+UA^-Q!^^!!^-Y!^=Y!^-Q!]MI!\\]E!"
+	"\\-5!U<!CN;W4R=8#U.(1V><7W.D9W.D9W.D9V^@8V>05Q\\K^N;7HP+KJU-4#V^44"
+	"WNH9WNL;W>H:W>H:W.H:V^D9V^D9V^D9VN@8VN@8VN@8VN@8VN@8VN@7V>@7V><7"
+	"V.86UN04R-8%*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D2U>(R]@(Z_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LJL\\#P9FV1WNP8[?PK[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[?PK[/LK[?PK[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZODHZODHZ_HIZODHZODHZ?@G"
+	"ZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"Z?@GZODHZ?@GZODHZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<GZ?@GZ?@GZ?<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EYO4DY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DY_4EY_8EYO4D"
+	"Y_8EY_8EYO4DYO4DY_8EY_4EY_4DV^@7XN`@Y/,BYO4DY?0CY/(BW^T=UN03SML)"
+	"Q-'`O<KYN<;TL;WLJ+3BEJ+0?8BU:G6@<'NFEZ/0N\\CVUN02X.X>XN`?X_$@X_$A"
+	"Y/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,CY/,BY/,B"
+	"Y?0CY?0CY?,CY?0CY?,CY?0CY?0CY?0CY?0CY?0CY/,BX_$@WNP;U^03S=H(QM,!"
+	"Q-#_Q-#_P\\_^Q-#_P\\_^R=8$15&\")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DL;_PVN@5W>L:X>\\>X_$AY/(B"
+	"W^X>X.X=XN`@Y/,BY?0DY_8FZ/<G[OTM[_XN[OXNU^<;JK7BS]T+V.84Y?,CVND9"
+	"W>H:W.H9V^D8U^85U.(2S=L*S-H)RM@'R-8%Q]4$Q]4$Q]4$QM0#R-8%Q-#`Q-(!"
+	"PL_^P,W\\P<W]NL?UP,W\\R=8&RM@'P]#`S-H)U^46W.H:WNP=X.X?X.\\@XN`AXN`A"
+	"XN`AXN`AXN`AXN`AX>\\@X>\\@X.X?I;3HN,3QRMD(R-8&R-<&R=@'R-<'R=<'R=<'"
+	"DJ_M!%.,!%**!%2-!%:1!%N8!%N7!%V:!&&<!&2>%F6>,&R?7H*PC:71K\\/OS-P'"
+	"W>P:Y/(BXO(AW.L;UN45SMT-Q]8%Q=0#QM4$Q]8$Q]4$Q]8%Q]8%Q]8%Q]8%R-<&"
+	"R=@'RMD(S]X-U.,2T=`/RM@(Q]8%QM0#QM0#Q=0\"Q=,\"Q-(!Q-(!Q-(!P<_`DI[,"
+	"YO4DW^T=WNP<WNP<WNP<W>L;W>L:VN<6S]#KU+EL[]1!\\MI!\\]I!\\MA!\\=9!Z]%!"
+	"SKA;M;.[PLWXT-T,U^44VN@8W.D9W.D9V^<7RLT\"B'&IFT-LPUV(UFB4V&V7VI_)"
+	"W=X,WNH:W>H:W>H:W.H:W.H:W.H:V^D9V^D9V^D9V^D8VN@8VN@8VN@7VN@8V><7"
+	"V><6U^45T-X-1U.$)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D6F:7U.,2Z_HI[/LJ[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LK"
+	"[?PK[/LJ[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LKZ_HJKKOK;'27X.X;[/LK[?PK[/LK"
+	"[?PK[?PK[/LK[/LK[?PK[?PK[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[?PK"
+	"[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HI"
+	"Z_HIZODHZODHZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZODHZ_HIZODHZODHZ?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODH"
+	"ZODHZODHZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ?<GZ/<FZ/<FZ?@GZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<F"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"YO4DY_8EY_8EYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DY_8E"
+	"YO4DY_8EYO4DYO4DY_4DY_4DY_4DW.H8W^X=X_$@W>H:T^$0R=<&P<[]N\\CVL\\#N"
+	"JK?EG:G7AY3!<GVK;'>DCYO)L\\#NT-X,W^T<XN`?X_$@X_$@X_$@X_(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,CY/,BY?0C"
+	"Y?0CY?0CY?0CY?,CY?0CY?0CY?0CY?0CY?0CY?,BX_$@W^P<U^44S=L)QM,!Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_R-4#/$EZ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DML3UVN@6W>L:X>\\>XN`@Y/(B"
+	"WNP<W^T<XN`?X_$AY/,CYO4EY_8F[/PL[?PM[?TMT.$4L+SISMP+T=\\.X>\\>V.<7"
+	"V><6VN@7V.85U>,3TM`/T-X-R]D(RMD(Q]4$Q]4$QM0#QM0#Q=,\"PL__PL__P,W]"
+	"P,W]O\\S[O<KYNL?VNL?VQ=,\"R-8%PL_`QM0#U>,3V>@8W>L<WNP=W^T>X.X?X>\\@"
+	"X>\\@XN`AXN`AXN`AXN`AX>\\@X.\\@O\\`$H:O7RMD(Q]8&R-<&R-<&R-<&R=<'R-<&"
+	"KL3^!%>5!%**!%2+!%B/!%R4%EZ4.FJ:;(FVEZW9NLGUT=`-W^X<X_(BW^\\?V>@8"
+	"T>$0RMD(Q=0#Q=0\"QM0#QM4$Q]8$Q]8$Q]8%R=<&R=@'RM@'RMD(R]D(RMD(S-L*"
+	"T-X.U.,2T=`0R]H)Q]8%QM4$QM0#QM0#Q=0\"Q=,\"Q-,\"Q-(!Q-(!Q-(!N<CZHJS8"
+	"Y_8FW^T=WNP<WNP<W>L;W>L;W>L;W.H9V><5T]K`QKNVSK9@U[]!U;U!R+-2MJF+"
+	"MKG,P\\WVSML*U>,2V><6V^@8W.D9V^@8RLL!J4^#\\6N3`WNI`V^A`VJ:`VF9`F^?"
+	"^(VYX]8#W.@8W>H:W.H:W.H:W.H:V^D9V^D9V^D9V^D8VN@8V><7VN@8V><7V><7"
+	"V><7U^45TM`/:W>G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D7FJ;VN@7[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LJ[/LJ[/LK[/LJ"
+	"[/LK[/LJ[?PK[/LJ[/LJ[?PK[/LK[/LK[?PKZ_HJK;KJ<WVCX.\\<[?PK[?PK[?PK"
+	"[?PK[/LK[?PK[?PK[/LJ[/LJ[?PK[/LJ[/LJ[/LK[/LJ[?PK[/LK[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HIZ_HIZ_HIZODIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODH"
+	"ZODHZ_HIZ_HIZODHZODHZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZODHZODHZODHZ?@GZODHZODH"
+	"Z?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?<GZ/<FZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4D"
+	"Y_8EYO4DYO4DYO4DY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DY_4DY_8EY_4DYO4DYO4DYO4DYO4DYO4DYO4DY_8E"
+	"YO4DYO4DYO4DYO4DYO4DY?0CX.\\>T^$/W>L:UN03OLOZN<7SK[WKH[#>D)S(>X6R"
+	"<7RIBI?$K;KIR]D'W>P:XN`?X_$@X_$@X_$@X_$@Y/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,CY/,B"
+	"Y?,BY?0CY?,CY?,CY/,BY?0CY?,CY/,BY/,BX_$@W^T<U^44SML)Q]0\"Q-#_Q-#_"
+	"Q-#_Q-#_P\\_^Q-#_Q-#_QM0\"+3EJ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DN<;WV^D7WNP;X>\\>XN`@X_$A"
+	"W>L;WNP;X>\\>X_$AY/(BY?,CYO4EZODJZ_HKZ_HKT.$4LK[KS=L*S]T,UN03U>04"
+	"U>,2T=\\.U.(1SMP+SMP+R=<'R=<&Q]4$Q]4$Q]4$QM0#Q=,\"Q-,!Q-(!PL__PL__"
+	"P,W\\OLOZO,GXN,7TM<'OPL__QM0#PL[_P]#`T^$1U^86V^H:W>P<WNP=W^T>X.X?"
+	"X>\\@X.X?X>\\@XN`AX>\\@X>\\@X>\\@U^<9B)/!RM@'Q]8&Q]8%R-8&R-<&R=<'R-<&"
+	"P=,%.W\"M(%2#0&2/<8BOEJC4ML;PSMX+VND8W.L:V.<7T>$0S-L+QM0$P](!Q-,!"
+	"Q=,\"QM0#QM4#QM4#QM4$Q]8%R-<%R=@&RM@'RM@'R]D(R]H)S-H)SMP+TM`/U.,2"
+	"T-\\/R]H)R-<&Q]8%QM4$QM4$QM0#Q=0#Q=0#Q=,\"Q-,\"Q-(!Q-(!Q-(!I[7GP,OW"
+	"Y/,CWNP<WNP<WNP<W>L;W>L;W>L:W.H:V^D8VN@7V>84TMT%R,WLP\\CCPLKJQ=#Y"
+	"R]@%T=\\-UN03V><6V^@8V^D8W.D9V=`3LVFG^VN5`X*Q`VR>`V66`V.5`V*4`F*4"
+	"`F65^H2NWM8#VN<7W.D9W.H:W.H:W.H:V^D9V^D8V^D8VN@8VN@8VN@8V><7V><7"
+	"V><7U^45TM`/AI+!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D9'&AW.L:[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LK[/LK[/LK[?PK[/LK[/LJ[/LK[?PK[/LJ[/LK[/LK[?PK[/LK[?PK[/LK"
+	"[/LK[?PK[?PK[?PK[/LK[?PK[/LK[/LK[?PK[/LJK[WM=H*GWNP9[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[/LK[?PK[?PK[/LK[/LJ[/LJ[?PK[/LJ[/LJ[/LJ[/LK[/LJ[/LJ"
+	"[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HI"
+	"ZODHZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZ_HIZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?<FZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"Y_8EYO4DYO4DY_8EYO4DY_8EY_4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DY_8EYO4DYO4DYO4D"
+	"YO4DYO4DY?,BW^T<U^03TM\\.T=X-P<W\\P]#_L;WKGJK8AI/!=X.PCIG'J[?FR=<%"
+	"W>L:XN`?X_$@X_$@X_(AX_$@X_$@Y/(AY/(AY/(AY/(AY/(AY/,BY/,BY/(AY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,CY?,BY?,B"
+	"Y?,BY?,BY/,BY?,CY?0CY?0CY?,BY?,CX_$@W^T<V.44SML*QM,!Q-#_Q='`Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_QM,!*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DO<GYW.D7W>L:X.X>XN`@X_$A"
+	"W>L;W>L:X.X=XN`@X_$AY/(BY?0DZ/<GZ?@IZODJUN<:K[OIR]D'S-H)S-H)RM@&"
+	"T=\\-TM`/TM`/S]T-S=L*R]D)RM@'Q]8$RM@'Q=,\"Q=,\"Q-(!Q-(!P<[^P,W]OLOZ"
+	"O\\S[N\\CWOLOZM<+QL+SJO\\S\\Q-(!P,W^P<[^T=\\/U^45V>@9W.H;WNP=WNP=X.X?"
+	"X.X?X>\\@X>\\@XN`AX>\\@XN`@X>\\@W^T?E:37P<W[R-<'Q]8%Q]8%Q]8&R-<&R-<&"
+	"Q]8&H+/DH['=NLGVQM4#Q=0#O\\W^O<O[O,KYO<O[P,W]P<[^PL__P]'`Q-(!Q=,\""
+	"Q=0\"QM4#Q]8$R-8%R-8%R=<&R=@'RMD(R]H)R]H)S=P+T=\\.T^(1T^(1SMT,RM@("
+	"Q]8%Q]8%QM4$QM4$QM4$QM0#Q=0#Q=0#Q=,\"Q-,\"Q-(!Q-(!Q-,!P](!D)[/V>83"
+	"X.\\?WNP<WNP<WNP<WNP<W>L;W>L;W>L;W.H:V^D9V^D8VN@7V><6UN03U>,2U>,2"
+	"UN03V.85VN@7V^D8V^D9W.D9V^@8Q;SVZ51Z`XJW`W2H`V26`V26^UN+`5Z-`F\"2"
+	"`&\"1_F>5[IB_U=\\-V>86V^D8W.H9W.H9V^D9V^D8V^D8VN@8VN@8VN@8V><7V><7"
+	"V><7V.86TM`/EZ/4)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D:7:FWNP;[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[?PK[?PK[?PK"
+	"[?PK[/LK[/LK[/LK[/LK[/LJ[?PK[?PK[?PK[?PK[?PK[/LK[/LK[/LK[/LK[/LK"
+	"[?PK[/LK[?PK[?PK[/LK[?PK[/LK[/LK[?PK[/LJML3T=H*IV>@4[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[/LJ[?PK[/LK[?PK[/LJ[?PK[/LJ[/LJ[/LK[/LJ[/LK[/LJ"
+	"[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZODHZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODHZODHZODHZODHZ_HIZODHZODHZ_HIZODHZODHZODHZ?@GZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@G"
+	"ZODHZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY_4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DX_(A"
+	"W.H9U^03UN02V><6W^X=X_$@X_$@O<?U>X:T:7:CGZS;Q-'`W>L9X_$@X_(AX_(A"
+	"Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY?0CY?,B"
+	"Y?0CY?0CY/,BY?,CY?0CY/,BY/,BX_$@W^T<V.85S]P*Q]0\"Q-'`Q-#_Q-#_Q-#_"
+	"Q='`Q-#_Q-#_Q-#_Q='`QM0\"*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DP,W]V^D7W>L:X.X=XN`@X_$A"
+	"W>L;W.H9W^T<X>\\>XN`@X_$AY/(BY_8FZ/<GY_8GW>T?K+CGQ]4#R-<%R=<&Q-'`"
+	"S-H(S]T,SMP+S-H)S=L*R-8%Q=,\"Q]4$Q-(!Q-(!QM0#PL__PL__P,W]P<[]OLOZ"
+	"O,GXN\\CWM\\3SJKCGKKKGO<KZPL__OLO\\P,W\\T-X.U>,3V.87V^D:W.H;WNP=W^T>"
+	"X.X?X.X?X>\\@X>\\@X>\\@X>\\@X>\\@X.X?N<C]I*_<R=<'Q]8%Q]8%Q]8%R-<&Q]8%"
+	"R-<&P=#`GJ[;G*O7HK'=J+CDL;_MML3SNLCXO<OZO\\S\\P,W]P<[^P]#`Q-(!Q=,\""
+	"Q=0\"Q]8$R-8%R-<&R=@&RM@'S-H)SMP+T=`/T^$1T^(1S]X.R]D)R-<&Q]8%Q]8%"
+	"Q]4%QM4$QM0#QM4$Q=0#Q=0#Q=,\"Q=,\"Q-,\"Q-(!Q-(!Q-(!Q-(!P,[_BY?$Y?0C"
+	"W^T=WNP<WNP<WNP<W>L;W>L;W>L;W.H:W.H:W.H:V^D9V^D9V^D8V^D8V^D8VN@7"
+	"V^D8V^D9V^D9W.H9W.H9V^D9VN87PY+._VV3`Y7(`V*4`V\"2`V&3^%.$_5&$`5^1"
+	"_V\"1_6.2^&^9U\\?SU.(1V><6V^D9V^D9V^D9V^D9V^D9VN@8VN@8VN@8V><7VN@7"
+	"V><7V.86T^$0I[/B)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D;WRMX.\\>[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[?PK[?PK[?PK[/LK[/LK"
+	"[/LK[?PK[/LK[/LK[/LK[/LK[/LK[/LJ[/LJ[?PK[?PK[/LK[?PK[?PK[?PK[/LK"
+	"[/LK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LJPM#`=8&IT=\\*[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[/LK[?PK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HJZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODH"
+	"Z?@HZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"YO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_4DY_4D"
+	"Y_4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CXN`?W.L9VN@7V^D8"
+	"X.X=X_(AY/,BY/,BY/,BY?,BY/(AL;OI&R54E*/4Y?,BY/(AY/(AY/(AY/,BY/(A"
+	"Y/,BY/(AY/(AY/(AY/,BY/,BY/,BY/(AY/(AY/,BY/,BY/(AY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY?0C"
+	"Y?,CY?0CY?0CY?,BY?,BY/,BX_$AW^T<V.85S]P+Q]0\"Q='`Q='`Q-'_Q-#_Q='`"
+	"Q='`Q-#_Q='`Q-#_Q='`Q=(!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DP]$!V^D7W>L:X.X=XN`@X_$A"
+	"W>P<VN@7W>L:W^T=X.X>X>\\?X_$AY/,DY?0EY?0EXO$BK[SMPL__QM0#QM4#PL__"
+	"Q-'`S-H)S=L*RM@'QM0#Q]4$QM0#QM0#P]#`Q-(!PL__P<[^PL_^O\\S\\O<KYP,W\\"
+	"N\\CWN<;UML3RF:;5L+SIO,GYP<[^N\\CXO\\S]S]T-T^(2U^46V>@9W.H;W>L<WNP="
+	"X.X?X.X?X>\\?X>\\@X>\\@X>\\@X>\\@X.X?V.@:A9&`Q]4#QM4%Q]8%Q]8%Q]8%R-<&"
+	"R-<&R=<'PM#`J[OHJ;GEK[[KM,+PM\\7SNLCWO,GYO\\S\\P,W]P<[^P]#`Q=0\"QM4#"
+	"Q]4$R-<%S-H)SMP+T-\\.TN$0TN$0T=\\/S=L+RM@(R-<&Q]8%Q]8%Q]4$QM4$Q]4$"
+	"QM4$QM0$QM0#QM4$Q=,#Q=,\"Q=,\"Q=,\"Q-,\"Q-(!Q-(!Q-(!Q-(!K;SNKKCDYO4E"
+	"WNP<WNP<WNP<W>L;W>L;W>L;W>L;W>L;W>L;W.H:W.H:W.H:W.H9W.H:W.H:W.H:"
+	"W.H:W.H:W.H:W.H:W.H:W.D9V>46RW:S`G>@`XB\\`UZ/`UZ0`UZ1^E!`_5:,_U>)"
+	"_F&2_&.3]6.1W*S4S]P+UN03VN@7V^D9V^D9VN@8VN@8VN@8VN@8VN@8V.86V><7"
+	"V><6V.86T^$1M,'P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	">(6VX>`?[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LK[/LK[/LK[?PK[/LK[/LK[/LK"
+	"[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[?PL[?PK[?PK[?PK[/LK"
+	"[/LK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LJT=\\0<'RFQM+_[?PK[?PK[/LK"
+	"[?PK[?PK[?PK[?PK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZODH"
+	"Z_HIZODHZ_HIZ_HIZODHZODHZODHZ_HIZ_HIZODHZODHZ_HIZODHZODHZODHZODH"
+	"ZODHZODHZO@GZ?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZ?@H"
+	"Z?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/8EZ/<FY_8EY_8EZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4D"
+	"YO4DYO4DY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY/(AXN`?X.X=W^T;X>\\>Y/(AY/,BY/,B"
+	"Y/,BY?0CY?,BY?0CY?,BY?,BY/(AM+[K&R54F*C9Y?0CY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/(AY/,BY/,BY/,BY/(AY/(AY/(AY/,BY/,BY/(AY/(AY/,BY/(A"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,B"
+	"Y?0CY?0CY?,CY?,BY/,BX_$@W^T<V.85S]P+Q]0\"Q='`Q='`Q-'`Q='`Q='`Q='`"
+	"Q='`Q='`Q-#_Q='`Q='`P,S[)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DP\\_`V^D7W>L:W^T<X>\\?X_$A"
+	"X.X>V><6V^D8WNP;W^T=X.X>X>\\?X_(BY/(BX_(CX_(COLW`N\\CVP]#`Q-'`P<[^"
+	"N\\CWR-8$Q]4$R-8%Q]4$Q=0\"QM0#P]#`PL__PL__P<[^P<[]OLOZN\\CWO,GXNL?V"
+	"N,7TN<;UKKWM@HVYLK[LN\\CXO\\S\\M\\3TP<[^SMP,T^$2UN04V.<7V^D:W.H;WNP="
+	"W^T>W^T=X.X?X.X?X>\\?X>\\@X>\\@X>\\@W^T>I+3GL;SIR-<'Q]4%QM4$Q]8%R-<&"
+	"R-8&R-8&R=<'R]H)S=L+R]H)RMD(RM@'RM@'RM@'R]D)S=L*SMP+S]T,T-\\.T=\\."
+	"T=\\/T=\\/T-X.SMT,S-L*RMD(R=<'R-8&Q]8%Q]4%Q]8%Q]4$QM4$QM4$QM4$QM0#"
+	"QM4$QM4$Q=0#Q=0#Q=,#Q=,\"Q=,\"Q-(!Q-(\"Q-(!Q-(!Q-(!P]#`C)K+U^01X>\\@"
+	"W>L;WNP<W>L;W>L;W>L;W>L;W.H:W.H:W.H:W.H:W.H:V^D9V^D9W.H:W.H9W.H:"
+	"W.H:W.H:V^D9W.H:W.D:V^@9V>06RV^M`G.?`W:J`UN.`ER/`EZ1^DU]`&N;^4Z!"
+	"_F&2^V.3]F21WIS$RM8$U.(1V.85VN@7VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7"
+	"V><6V.85U.(1P,W\\)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA)#!"
+	"Y/,B[/LJ[/LJ[/LJ[/LJ[/LK[/LJ[/LK[?PK[/LK[/LK[?PK[?PK[/LK[/LK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[?PK[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LJX.X>;WJEM</N[/LJ[?PK[?PK"
+	"[?PK[/LK[?PK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODH"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZODHZODHZ?@GZODHZODHZODHZODHZ?@HZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@GZODHZODHZODHZ?@GZ?@GZ?@GZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8E"
+	"YO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY?,BY/,BX_$@Y/(AY/,BY/,BY/,BY?,BY?,BY/,BY?0C"
+	"Y?,BY?0CY?0CY?0CY?0CY?,BX_(AMK[I(\"E6F:C:Y?0CY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AY/(AY/,BY/(AY/(AY/,BY/(A"
+	"Y/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?0C"
+	"Y?,BY/,BY?,BY/,BX_(AW^T<V.85S]P*Q]0\"Q='_Q-#_Q='`Q-#_Q='`Q='`Q-#_"
+	"Q='`Q='`Q='`Q='`Q='`O,CX)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DP<W^V^D7W.H9W^T<X>\\?X_$A"
+	"XN`AV><6V^D8W.H:W>L;W^T=X.X>XN`@XO$AXO$AXO$AUN88L+SLP,W\\P<[^O\\S\\"
+	"M\\7TO,CVQM0#Q=,\"Q-(!P]#`P<[^PL__P<[^O\\S\\OLO[O<KZO,GYO\\S[N<;UN<;T"
+	"M\\3SM,'PAY7&DY[(L\\'OO,GXO<KZL\\'QP]#`S=L+TM`1U>04V.87VN@9W.H:W>L<"
+	"WNP<W^T=W^X>X.X?X.X?X>\\?X>\\@X.X?X.X?T>(4@X^]Q=0\"Q]8%QM4$Q]8%Q]4%"
+	"Q]8%Q]8%R-8&R-8&R-<&R=@'R=@'R]D(R]D)R]H)R]H)R]D)R]D)RMD(R=@'R=<'"
+	"R-<&R-<&R-8&R-<&R-8&Q]8%Q]8%Q]4%Q]4%Q]4$Q]4$QM4$QM4$QM0#QM0#QM0$"
+	"Q=0#QM0#Q=0#Q=,\"Q=,\"Q-(!Q-(!Q-(!Q-(!P]#`P](!P]'`N\\CZCYG%Y_4EW^T="
+	"W>L;W>L;W>L;W>L;W>L;W>L;W.H:W.H:W.H:W.H:W.H:V^D9W.H:W.H:W.H:V^D9"
+	"W.H:W.H:W.H:V^D9W.D:V^@9V.04Q(._`&24`VJ=`EN.`EN.`%R/^4M`^4-[^U.&"
+	"^E>(^6.0]F62V9O\"QM#_TM\\/U^44VN@7VN@8VN@8VN@8VN@8V><7V><7V><7V><7"
+	"V><7U^45U.(1RM<&,#QM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DCIS,Y_8E"
+	"[/LJ[/LJ[/LJ[/LJ[/LK[/LJ[?PK[/LK[/LJ[/LK[/LK[/LK[?PK[/LK[?PK[?PK"
+	"[?PK[?PK[?PL[?PK[?PK[/LK[/LJ[/LK[/LJ[/LJZ_HJZ_HJZ_HJ[?PK[?PK[?PK"
+	"[?PK[/LK[?PK[?PK[?PK[?PK[/LK[/LK[/LK[/LKZ/<G?8NXHJ[8ZO@G[/LK[?PK"
+	"[?PK[?PK[/LK[/LK[/LJ[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJZ_HJZ_HIZ_HIZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZ?@GZODH"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@HZODHZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<FZ/8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DYO4DY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DY?0CY/,BY?0CY?0CY/,BY?,BY?,BY?,BY?,BY?,BY?,BY/,BY/,B"
+	"Y?0CY?0CY?,BY?0CY?,BY?0CX_(@L;GC)C!>G*O=Y?0CY/,BY/,BY/,BY/,BY/,B"
+	"Y?,BY/,BY/,BY/,BY/,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(A"
+	"Y/,BY/,BY/,BY/,BY/(BY/(AY/,BY/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,B"
+	"Y?,BY?,CY/,BX_$AW^T<V.85S]P+Q]0\"Q='_Q='`Q='`Q-#_Q='`Q='`Q='`Q='`"
+	"Q='`Q='`Q='`Q='`Q='`N\\?W)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DOLO[V^@6W.H:WNP<X>\\?X_$A"
+	"Y/,CVND9V><6V^D8W.H:W>L;WNP<X.X>X>\\?X>\\?X>\\@X.X?N<?ZN<;TO,GXO,GX"
+	"N,7TK[WKO,GWP]#`Q=,\"P<[^P<[^P,W]P<[^O<KYO<KYOLO[N\\CWN<;UM\\7SML3R"
+	"M,'PG:S=8&F2IK+?M<+PO,GXN\\CXL;_MQ=,\"S=L+T=\\0U.,3U^86V>@9V^D:W.H;"
+	"W.H;W^T=W^T>X.X>X.X?X>\\?X>\\?X.X?X.X?WNT>H*_CK+CEQ]8%Q]8%QM0$QM4$"
+	"QM4$Q]8%Q]8%Q]8%Q]8&Q]8&Q]8%Q]8%Q]8&Q]8%R-<&Q]8%Q]8%R-<&Q]8%Q]8%"
+	"Q]8%Q]8%Q]8%Q]8%Q]8%QM4$QM4$QM4$QM4$Q]4$QM4$QM4$QM0#QM0#Q=0#QM0$"
+	"Q=0#Q=0#Q=0#Q=,\"Q-(!Q-,\"Q-,\"Q-(!Q-(!P]#`P]#`P]#`E:+4Q]/`X_(BWNP<"
+	"W>L;W>L;W>L;W.L;W.H:W.H:W.H:W.H:W.H:W.H:W.H:W.H:W.H:V^D9W.H:W.H:"
+	"W.H:W.H:V^D9V^D9V^D9VN@8V>86PJ;B]%>$`V*5`EJ.`5J-_%:)_%6#`6&1_U^."
+	"\\U2#^621\\F21RJ3-Q,_^T=X-UN03V><6VN@8VN@7VN@8VN@8VN@8V><7V><7V><7"
+	"V.86U^45U.(1SML*45V,)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DF:?7Z?@G[/LJ"
+	"[/LJ[/LJ[/LK[/LJ[/LK[?PK[/LK[/LJ[/LJ[/LK[/LK[/LK[?PK[?PK[?PK[?PL"
+	"[?PL[?PL[?PK[?PL[?PK[/LJ[/LK[/LK[/LJZ_HJZ_HIZ_HIZODH[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LKZ_HJG*G8BY>_X_(@[?PK[/LK"
+	"[/LK[?PK[/LK[/LK[/LJ[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HJ[/LJZ_HIZ_HIZ_HIZODHZODHZ_HIZODHZODHZODHZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"Z?@GZ?@GZ?@GZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODHZODHZODH"
+	"Z?@GZODHZODHZODHZ?@GZ?@GZODHZ?@GZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8EYO4DY_8E"
+	"YO4DY_8EYO4DYO4DYO4DY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CY?0CY?,BY/,BY?0CY?0CY/,BY?0CY/,BY/,BY/,BY?0CY?,BY?,BY?,B"
+	"Y?0CY?0CY?,BY?0CY?0CY?,BX_$@J;+>-C]LI;3EYO0DY/,BY/,BY/,BY/,BY/,B"
+	"Y?,BY/,BY/,BY/,BY/(AY/,BY/(AY/,BY/,BY/,BY/,BY/(AY/,BY/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/(AY/(AY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?0C"
+	"Y?,BY/,BX_$@W^T<V.85T-T+R-4#Q=#_Q-#_Q='_Q='`Q='`Q='`Q='`Q='`Q='`"
+	"Q='`Q='`QM,!Q='`Q='`N\\?X)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DO,CYVN@6W.H9WNP;X.X>XN`@"
+	"Y/,CW^X?U^44V><7V^D8W.H:W.H:WNP<W^T=W^X>W^T>W^T>U.06K;OJN<;UNL?V"
+	"N,7TL;[MJ;;DN<7TP,W]P,W]P,W]O\\S\\OLO[O<KZO,GXNL?VN<;UM\\3SNL?VL\\'O"
+	"H:_@25:&BY6_K[SJM\\3SO,CXML3TM,+QQM0$S-H*T=\\0U.,3U^46V>@8VND:V^H:"
+	"W.L;WNP<W^T=X.X>X.X>X>\\?X>\\?X.X?X.X?W^T>T^,5?XJYP<_]QM4$QM0$Q=0#"
+	"QM0$QM4$Q]8%Q]8%Q]8%Q]8%Q]4%Q]8%Q]8%Q]8%Q]8%Q]8%Q]8%Q]8%QM4%Q]8%"
+	"Q]4$Q]4$Q]4$Q]4%Q]4$QM4$QM4$QM4$QM0#QM0#QM4$QM0#Q=0#Q=0#Q=,#Q=,#"
+	"Q-,\"Q=0#Q=,\"Q-(!Q-(!Q-(!Q-(!Q-(!P]#`P](!P]#`N<?XAY*^Y?,BW^T=W>P<"
+	"W>L;W>L;W.L;W.L;W.H:W.H:W.H:W.H:W.H:V^D9W.H:V^D9W.H:W.H:V^D9V^D9"
+	"V^D9V^D9V^D9V^D9VN@8V^@9V>87T=('T$Y__V\"0`5J-_U:*^52%^V&-^U2'^E2%"
+	"^%R+]5^.YVZ8NK/=Q='`T=\\.UN03V.86V><7VN@8VN@8V><7V><7V><7V><7V><6"
+	"V.86U^45U.(2S=L*;GJI)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GI+'BZODH[/LJ[/LJ"
+	"[/LK[/LK[/LK[/LJ[/LKZ_HJZ_HJZ_HJ[/LJ[/LK[/LK[?PK[?PK[?PK[/LJZ/8F"
+	"Y/(AX.\\>W>P;W.L:W>L:WNP;X>`?YO4DZ_HIZ_HJZ_HIZODHZ?@GZ_HI[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LJO,GZ>82LU>,1[/LK[/LK"
+	"[/LK[/LK[?PK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJZ_HJZ_HIZ_HIZODHZ_HIZODHZODHZ_HIZ_HIZ_HIZODHZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZ_HIZODHZODHZODHZODHZ?@GZODH"
+	"ZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/8EZ/8FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8EY_8EY_8EY_8E"
+	"YO4DYO4DY_8EYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CY/,BY/,BY/,BY/,BY/,BY/,BY?,BY?,BY?0CY/,BY?0CY?0CY?,CY?,B"
+	"Y?,BY?0CY?0CY?0CY?,BY/,BXN`?H:G32%-`L\\'RY?0CY?,BY?,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AY/(AY/(AY/,BY/,BY/(AY/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,B"
+	"Y/,BX_$@W^T<V.85S]P+R-4#Q='`Q='`Q='`Q='`QM,!QM,!Q=,!Q='`Q='`Q='`"
+	"QM,!Q='`Q=,!Q=,!Q='`NL;V)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DN<7VVN@5W.H9WNP;X.X>XN`@"
+	"X_(BY?0EUN45U^44V><6VN@8V^D9W.H:W.H:WNP<W>P<W>P<W>P<R-@*L+WLM</Q"
+	"M<+QL;_NK+GGHJ_=K;GGO<KYOLOZOLO[N\\CWO,GXN<;UNL?VML/RML+QLK_NE:+3"
+	"04U_;7:>I[3AM,#ON<;VNL;VKKWLN\\CWQ]4%S=L+T=\\0U.(2U^46V><8VND:V^H;"
+	"W.L;W>P<WNP=W^T>X.X>X.X>X.X?X.X?X.X>X.X>W^T>K[_RF*30QM4$QM4$Q=0#"
+	"Q=0#QM4$QM4$QM4$QM4$Q]4%Q]4$Q]4$QM4$QM4$QM4$Q]4$QM4$QM4$QM4$QM4$"
+	"QM4$QM4$QM4$QM4$QM4$QM4$QM4$QM0#Q=0#QM0#Q=0#Q=,\"Q=0#Q=,\"Q-,\"Q=0#"
+	"Q=,\"Q-,\"Q=,\"Q-,\"Q-(!Q-(!Q-(!P]#`P]#`P]#`PL__BIC)R=4!Y/(BWNP<W>L;"
+	"W>L;W>L;W.L;W.H:W.H:W.H:V^D9W.H:W.H:W.H:W.H:V^D9V^D9V^D9V^D9V^D9"
+	"V^D9V^D9V^D9V^D9V^D9V^D9VN<7UN(3OJ#9Y%6!_5V/_E6(^U.$^E6&^5.$^F\"1"
+	"]5:([EV+Q)*YN<#LR=4$TM\\/UN04V.86V><7V><7VN@8VN@7V><7V><7V><7V><6"
+	"V.86U^45U.(2S=L*@XZ^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIKKKOKZODI[/LK[/LK[/LJ"
+	"[/LJ[/LK[/LJ[/LKZ_HJZ_HJZ_HJZ_HJ[/LJ[/LK[/LK[/LKY_4EW^X=V><7V.85"
+	"V.85U^44U^44U^44UN03UN03UN03UN03V.<6X>`?Z/<FZ?@GY_8EZO@G[?PK[?PK"
+	"[?PK[/LK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[/LKV^H::'2=P<W[Z_HI[/LK"
+	"[?PK[/LK[/LJ[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZODHZODHZ_HIZODHZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZODHZODHZ_HIZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FY_8FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY?,BY?,BY?,BY?,BY?,BY?,BY?,B"
+	"Y?,BY?,BY?0CY?0CY?,BY/,BX.X<DYS&4%R+O\\[^Y?0CY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/(AY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/,BY/,BY/(BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"X_$@W^T<V.44T-T+R-4#Q='`Q='`Q='`Q='`Q='`QM,!Q=,!Q='`Q='`Q='`Q='`"
+	"Q=,!Q='`QM,!QM,!QM,!M\\3S)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DLL#QV><4W.H9W>L;X.X=X>\\?"
+	"X_(AY_8FWNP>U>,2U^44V.86V><7V><7VN@8W.H:W.L;V^L;V^L;V^H;P],#K;KH"
+	"L+[LK[WKK[SJI;+AF*;4EJ/1J+3BML+QN<;UN<;UML3RM,'PL+WKH*S<<G^P,SYM"
+	"8FN3H:W:L;[LM\\3SNL?VML/SK+KHP,W^R-8&S=L+TM`0U.(3U^46V.<8VN@9V^H:"
+	"W.L;W>L<W>P<W^T>W^T>X.X>X.X?X.X>X.X>X.X>X.X>V^H;AI7'LK[LQM0#Q=0#"
+	"Q=0#Q=0#QM0$QM4$QM4$QM4$Q]4$QM4$QM4$QM4$QM4$QM4$QM4$QM0#QM0$QM0#"
+	"Q=0#QM0$QM0$Q=0#QM0#QM0#QM0#Q=0#Q=0#Q=0#Q=,#Q=,#Q=,#Q=,#Q=,#Q=,#"
+	"Q-,\"Q-(\"Q-(!Q-(!Q-(!P]#`P]#`P]#`P]#`P]#`K+OLE9_+Y_4EW^T=W>P<W>L;"
+	"W>L;W>L;W.L;W.H:W.H:W.H:V^D9W.H:W.H:W.H:V^D9V^D9V^D9V^D9V^D9V^D9"
+	"V^D9V^D9V^D9V^D9V^D9VN@8VN@8V.45U-X/MHW\"W%F'\\V\"0]U6']5&#\\U\"%\\%*'"
+	"YUZ-QHFPL[3?P<S[S=H)T^$0U^44V.86V><7V><7VN@7V><7V><7V><7V><7V.86"
+	"V.86U^45U.(1S=L*CIK))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,3UNM\\7UZ_HJ[/LJ[/LK[/LK[/LK"
+	"[/LJ[/LJ[/LK[/LJZODHZODIZ_HJZ_HJ[/LJ[/LJYO0DW.H9V.85V.85V.85U^44"
+	"U^44V.85U^44U^44UN03UN03UN03UN03U>,2U>,2VN@7Y/,BY?,BZ/8E[?PK[?PK"
+	"[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LKZODHA)*`J+3?YO0C[?PK"
+	"[/LK[/LJ[/LJ[/LK[/LJ[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZ?<FZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_4DY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"Y?0CY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY?,BY?,BY?,BY/,BY?,BY/,BY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY/,BW>H9A(ZY6V>5S-L+Y?,BY/,BY/,BY/,BY/,BY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/(AY/(AY/(AY/(AY/,B"
+	"Y/,BY/,BY/(BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@"
+	"W^P<V.84T-T+Q]4#Q='`Q='`Q='`Q='`Q='`Q='`Q='`QM,!Q='`QM,!Q='`QM,!"
+	"QM,!Q='`Q=,!QM,!QM,!M<'Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DJKCJV.42W.H9W>L:W^T=X>\\?"
+	"X_$AYO4EY_<IU.(2U>,2UN03U^44U^45V.86V><7VND9VNH:VNH:VND9VND:Q]8'"
+	"J;;EJ;?EJ[GGJ;?EI;+@G:K9EZ32DY_-E*#.E:'/DI_-BI?&=H*Q5%^--#]L;':?"
+	"HZ_<L+[MML/RN<?VM\\7TJ[KIM<+QP]$!R=@(S]T-TM`1U.,3UN45V.<7VN@9V^H:"
+	"V^L;W>L<W>L<W^T=W^T=W^T>W^X>X.X>X.X>X.X>X.X>W^T=SMX0>H:TO<GXQ=0#"
+	"Q=,#Q=0#Q=0#Q=0#QM0#QM0#QM0#QM0#QM0$QM0$QM0$QM4$Q=0#QM0$QM0#QM0#"
+	"Q=0#Q=0#Q=0#Q=0#Q=0#Q=0#QM0#Q=,\"Q=,\"Q=,#Q=,#Q=,\"Q-,\"Q=,\"Q-,\"Q=,\""
+	"Q-(!Q-(!Q-(!Q-(!P]#`P]#`P]#`P]#`P]#`N\\GZ>82SV^@6X>\\@WNP<W>L;W>L;"
+	"W.L;W.H:W.H:W.H:W.H:V^H:V^D9W.H:V^H:V^D9V^D9V^D9V^D9V^D9V^D9V^D9"
+	"V^D9V^D9VN@8V^D9V^D9V^D9VN@8V><7U^45U=X0NZ_ANFJ8SEJ(UUJ'TEN(QW\"6"
+	"M9C!M+?DP,KXRM<&T=\\.U>,2U^45V><6V><7V><7V><7V><7V><7V><7V><7V.86"
+	"V.86U^45U.(1S=L*F:75)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.$5VP,W^Z_HI[/LJ[/LJ[/LJ[/LK[/LK"
+	"[/LJ[/LJ[/LJZODHZ?@GZ?@HZODIZ_HJZ?@HWNP;U^44U>,2U^44V><6U^44V.85"
+	"V.85V.85V.85U^44U^44U^44UN03UN03UN03U>,2U>,2U.(1X>\\>Y_4D[?PK[?PK"
+	"[?PL[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LJM\\7UCIK%U^43[?PK"
+	"[?PK[?PK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZ?@GZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZ?@HZ?@GZODHZODHZ?@GZ?@GZ?@HZ?@HZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/8FY_8EY_8EZ/8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EYO4DY_8EYO4D"
+	"Y_8EYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DYO4DYO4D"
+	"Y?0CY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY?,BY?,BY/,BY/,BY/,BY/,BY?,B"
+	"Y?,BY?0CY?0CY?0CY/,BY/,BU^42='VG8V^=V>D9Y?,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/(AY/(AY/,BY/(AY/(AY/(AY/,BY/(AY/(AY/,BY/,BY/(AY/,BY/,BY/,B"
+	"Y/(AY/(AY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@W^T<"
+	"V.44T-T+R-0\"Q='`Q='`Q='`Q='`QM,!Q='`QM,!QM,!QM,!Q=,!QM,!Q='`QM,!"
+	"Q='`QM,!QM,!Q='`QM,!M,#P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DHJ_BU^01W.H9W.H:WNP<X.X>"
+	"XN`@YO4EZODIW>T>T=\\.T^$0U.(1U>,3UN04U^44U^45V><7V>@8V>@8V>@8VND9"
+	"T=`0KKSKG*G7GJO9G:K8G*C7F*33D9[,BY?&A)\"^=H*P7VN91U)_3UF$BY7!J[CF"
+	"L\\#OML3SN<;VN,7TL<#OJ;;DOLO[QM0$S-H*S]T-T^$1U>,3UN45V.<7VND9VNH:"
+	"V^L;WNP<WNP=WNP=W^T=W^T=X.X>X.X>X.X>X.X>X.X>X.X>W^T>NLK]@HVZP<[]"
+	"Q=0#Q=0#Q-,\"Q=,#Q-,\"Q=0#Q=,#Q=0#QM0$Q=0#Q=0#Q=0#Q=0#Q=0#Q=0#Q=0#"
+	"Q=0#Q=0#Q=,#Q=,#Q=0#Q=,\"Q=0#Q=,\"Q=,\"Q=,\"Q=,#Q=,\"Q=,\"Q-(\"Q-,\"Q-(!"
+	"Q-(!Q-(!P]#`P]#`P]#`P]#`Q-(!P]#`P,[^A9/$P,OXY?0DWNP<W>L;W.L;W.L;"
+	"W.H:W.H:W.H:V^H:W.H:V^H:W.H:V^D9V^D9V^D9V^D9V^D9VN@8V^D9V^D9V^D9"
+	"V^D9V^D9VN@8VN@8V^D9VN@8VN@8V><7V>86U^04UN,3TMP,PL3TM;/ANK?AO,#M"
+	"O\\CWQM'`S=D(T=\\.U.(1U^44V.85V.86V><7V><7V><7V><7V><7V><7V><7V><6"
+	"V.86U^45T^$1S=L*I+#?)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D04Y^Q]8%[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJZ_HJZ/8FZ/<FZ/<FZ?@HYO4EV><6UN03TM`/UN03T^$0U>,2T-X-TM`/"
+	"U.(1UN03U^44V.85U^44U^44UN03UN03U>,2U>,2U.(1R=<&T]`.Y?0B[?PK[?PK"
+	"[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LJW^X>?(JTP,WZZODH"
+	"[?PK[/LJ[/LK[/LJ[/LJ[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ?@GZODHZODH"
+	"ZODHZODHZODHZ?@GZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@G"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/8EYO4DY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4D"
+	"Y/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY?,BY/,BY?,BY?,BY/,BY/,BY/,BY?,B"
+	"Y?,BY?0CY?,BY?0CY/,BY/(AS=H':72A?8NZX_(AY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/(AY/,BY/(AY/(AY/(AY/,BY/,BY/,BY/(AY/(AY/(AY/(AY/(AY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@W^P;U^44"
+	"S]T+R-4#Q='`Q='`Q=+`QM,!Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!"
+	"Q='`Q='`Q=,!QM,!QM,!M<'Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DFZG;U.$/V^D8W.H9WNP;X.X="
+	"XN`@Y?,CZ/<HYO8GT^(3T-X-T=\\.T^$1T^$1U.(2U.(2UN04U^45V.86V.86V.87"
+	"V.86V.<7Q]<&J;?FD)W+A9*_?HJW=X.P<'NH9&^;6V20;'>BD)S'K;KGM,'QML3S"
+	"N<;VNL?WN,7UL\\'PI;/CM</RPL_`R=<'S=L+T=\\/T^$1U>04U^45V.<7VN@9VNH:"
+	"V^H;W>L<W>P<WNP=W^T=W^T=W^T=X.X>X.X>X.X>W^T>W^T>W^T>WNT>J;CLC)?#"
+	"PL_^Q-,#Q=,#Q-,\"Q=,#Q-,\"Q=,\"Q-,\"Q=,#Q=,#Q=0#Q=0#Q-,\"Q=,#Q=,#Q-,\""
+	"Q=,\"Q=,#Q-,\"Q-,\"Q=,#Q-,\"Q=,\"Q=,\"Q=,\"Q=,\"Q-,\"Q-(\"Q-(\"Q-(\"Q-(\"Q-(!"
+	"Q-(!P]$!P]#`P]#`P]#`P]#`P]#`P<__EZ78H:O7YO4EW^T=W>L;W>L;W.L;W.L;"
+	"W>L;W.H:W.H:V^H:V^D9V^H:W.H:V^D9V^D9V^D9V^D9V^D9VN@8V^D9V^D9V^D9"
+	"V^D9V^D9V^D9V^D9V^D9VN@8VN@8VN@8V><7V.86U^45U^44U.$1IK'APLKTS]P,"
+	"S]P,T=\\.T^$0U>,2U^44V.85V><6V><6V><7V><7V><7V><7V><7V><7V.86V.86"
+	"V.85U^44T^$1S=L*J[CH)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D2E>(SMT,Z_HJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LJ"
+	"[/LJ[/LJZ?@HY?,CYO4DY_8EY?,CV.85UN03U.(1U^44TM`/V.85U.(1T^$0U.(1"
+	"U.(1T^$0TM`/T^$0UN03U^44UN03UN03U>,2U.(1U.(1P]#`O<GUZ?<F[?PK[?PK"
+	"[?PL[?PK[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LKZ_HJI+'@IK/?W^T;"
+	"[?PK[?PK[/LK[/LK[/LJ[?PK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODHZ_HIZODHZODH"
+	"Z_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@HZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_4DY_8EY_8EY_8EZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4DY_8EY_8EY_8EY_8EY_8EY_8EYO8D"
+	"Y_4DY_8EY_8EYO4DY_8EY_8EYO4DYO4DY_8EY_8EY_8EYO4DY_8EYO4DYO4DY?0C"
+	"Y/,BY/(AY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,B"
+	"Y/,BY?0CY/,BY/,BY/,BXN`?O,?U9W2BGJW=Y?0CY/(AY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/(AY/(AY/(BY/,B"
+	"Y/(AY/,BY/(AY/(AY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BXN`?WNP;U^44S]P*"
+	"Q]0\"Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0\""
+	"QM,!Q='`QM,!QM,!Q]0\"M<'Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DDJ#3TM\\,V^D8W.H9W>L;W^T="
+	"X>\\?Y/,CY_8FY_8GX>`ASMT-S=L+S]T-T-X.T=\\/T=\\/TM`0T^$1UN04UN04V.86"
+	"V.87V.86UN04UN04TM`0QM0#M\\7TK[OIL;WJM,#NN<7SO,KYO,GYN\\CXN\\CXO<KZ"
+	"O,GYM\\7TL\\'QIK7EK;KIO\\S\\QM0$R]D)SMP-TM`0U.(2UN04V.87V>@8VND9VNH:"
+	"W.L;W>L<W>P<WNP=WNT=W^T=W^X>X.X>X.X>W^T>W^T>W^T>X.X>W^T>W>P=GJW@"
+	"CIG%P<[]Q-,\"Q-(\"Q-(\"Q-,\"Q-(\"Q-(\"Q=,\"Q-,\"Q=,\"Q=,\"Q-,\"Q-,\"Q-(\"Q-,\""
+	"Q-,\"Q-,\"Q-(!Q-,\"Q=,\"Q-,\"Q-(\"Q-,\"Q-(\"Q-(\"Q-(\"Q-(\"Q-(\"Q-(\"P]$!Q-(!"
+	"P]#`P]#`P]#`P]#`P]#`P]#`PL__H*[@C);\"X_(AX.X>W>L;W.L;W>L;W.L;W.H:"
+	"W.H:W.H:W.H:V^H:V^D9V^D9V^D9V^D9V^D9V^D9V^D9V^D9V^D9V^@9VN@8VN@8"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V.86V.85U.(2CIG'W.D7U^45"
+	"UN03U^44U^44V.85V.86V><6V><6V><7V><7V><7V><7V><7V.86V><6V.86V.86"
+	"V.86UN04T^$0S-H)M<+Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D5F*3T^(1Z_HJ[/LJ[/LJ[/LJ[/LK[/LK[/LK[/LK[/LJ"
+	"[/LJ[/LJYO4DX_$@Y/(AY/,BV.86U^44UN03U^44U^44UN03U>,3U^44U.(1U.(1"
+	"UN03TM`/U.(2UN03T-X-T=\\/T^$0U>,2U.(1U.(1T^$0M\\3TO<CR[/LK[?PL[?PL"
+	"[?PK[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LJU>04CIO'R-<#"
+	"Z_DH[?PK[/LK[/LJ[/LJ[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJZ_HI[/LJ[/LJZ_LJ[/LJ[/LJZ_HJ[/LJZ_HIZ_HIZODHZ_HIZ_HIZ_HIZODH"
+	"ZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODHZ_HIZ_HIZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"Z?@GZODHZ?@GZODHZ?@GZODHZODHZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/8FZ/8FZ/8FY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DY_8EY_8EY_4D"
+	"Y_8EY_8EYO4DY_8EYO4DYO4DYO4DY_8EYO4DY_8EY_8EYO4DYO4DYO4DYO4DY?,B"
+	"Y/,BY/,BY/(AY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY?,BY/,BY?,BY/,BW^T<I['>:WBFN,?WY?,BY/(AY/(AY/(AY/,BY/(AY/,B"
+	"Y/,BY/(AY/(AY/(AY/,BY/(AX_(AY/(AY/(AY/(AY/(AY/,BY/(AY/,BY/,BY/(A"
+	"Y/,BY/,BY/(AY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BXO$@WNP:U^03S]P*Q]0\""
+	"Q='`Q='`QM+`QM'`Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!QM,!"
+	"QM,!QM,!QM,!QM,!QM,!M,'P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@I#$S]P)V^D8W.H9W.H:WNP<"
+	"X.X>X_(BYO4EY_8FY/(CW.P=RMD)R]D(S=L*SMP+S]T-S]T-T-X-T=\\/T^$1U>,3"
+	"U>04U>,3T^$1TM`0T-X.S]T-S=L+R]D)R=<&Q=,#P]#`P<[_P,W^P,W]O\\S\\N\\CX"
+	"M<+QLL#OI[;FIK3CN\\GYQ-(\"R=<'SMP,T-X.T^$1U>,3U^46V.<7VN@9VND9V^H:"
+	"W.L;W>L<W>P<WNP=W^T=W^T=X.X>X.X>W^T>W^T>W^T>X.X>X.X>W^T>W^T>W.L<"
+	"G:O>B)2`O\\S\\Q-(\"Q-,\"Q-(\"Q-(\"Q-(\"Q-(\"Q-(!Q-(\"Q-(\"Q-,\"Q-,\"Q-(\"Q-(\""
+	"Q-(\"Q-(\"Q-(!Q-(\"Q-,\"Q-(\"Q-(!Q-,\"Q-(\"Q-(!Q-(!P](!P]$!P](!P]#`P]#`"
+	"P]#`P]#`PL_`PL_`P]#`P<__GZ[@@XVYX.X=X.\\?W>L;W>L;W>L;W.L;W.L;W.H:"
+	"W.H:W.H:V^D9V^D9V^D9V^D9V^D9W.H:V^D9V^D9VN@8V^D9V^D9VN@8VN@8V^@9"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V.86Q]8'J;/@Y/(BV><7"
+	"V><6V><6V><6V><6V><6V><7V><7V><7V><7V><7V><7V><7V><7V.86V.86V.86"
+	"U^45UN03T^$0S=L*O<GY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D8&V=V.<6Z_HJ[/LJ[/LJ[/LK[/LJ[/LK[/LK[/LK[/LK[/LJ"
+	"[/LJ[/LJXN`?W^T<XN`?VN@8UN04U^44U^44U^45U^45U^45U^45U^44U^44U^44"
+	"TM`/T^$0UN03T=\\.TM`/T^$0T=\\.U>,2U.(1T^$0T=\\/H:S8WNL6[?PK[?PL[?PL"
+	"[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PL[?PL[?PK[?PK[/LKZODII+'@L+[J"
+	"W^X=[?PK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HI[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DY_8EYO4DYO4DY_8EYO4D"
+	"YO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DY?0CY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY?,BY/,BY/(AV>84C)?#=(&PS]\\.Y?,BY/(AY/,BY/,BY/(AY/(AY/,B"
+	"Y/,BY/,BY/(AY/(AY/(AY/,BY/(AY/(AY/,BY/,BY/(AY/,BY/,BY/,BY/(AY/,B"
+	"Y/,BY/,BY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/(AXN`?W>L:UN,2SMP*R-4\"Q='`"
+	"Q='`Q='`QM,!QM(!QM,!QM,!QM,!QM,!QM,!Q]0\"QM,!Q]0\"QM,!Q]0\"QM,!QM,!"
+	"QM,!QM,!QM,!QM,!QM,!LK[N)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<H\"SS=H'VN@7V^D8W.H9WNP;"
+	"W^T=X_$AY?0DY_8FX_(CX_$BVND;R=<'R=<&RM@'R]D(R]D)S=L*S=L*SMP,S]T-"
+	"T=\\/TM`0TM`0T=\\/S]T-SMP,S=L+RM@(R=<'QM0$Q=,\"P]$!PL_`OLO[N,7UL\\#O"
+	"L+[MI+3DI++@N<;VPM$!R-8&S-H*T-X.T^$1U>,3UN45U^86V>@8VND9V^D:W.L;"
+	"W.L;W>P<WNP<WNP<W^T=W^T=W^T>X.X>W^T>W^T>W^T>W^T=W^T>W^T>W^T=W^T="
+	"WNP=I;3G>X>SN<;UP](!Q-(\"Q-(\"P](!Q-(!P](!Q-(!Q-(!Q-(!P](!Q-(!Q-(\""
+	"Q-(\"Q-(\"Q-(!Q-(!Q-(\"P](!Q-(!P](!P](!P]$!P]$!P]#`P](!P]$!P]#`P]#`"
+	"P]#`P]#`PL_`P]#`P,W^F*;9A(^ZX.X=X>\\?W>L;W>L;W>L;W.H:W.H:W.H;W.H:"
+	"W.H:W.H:W.H:V^D9V^D9V^D9V^D9V^D9V^D9VN@8VN@8VN@8VN@8V^D9VN@8VN@8"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V.86M,'SQM+_X>\\@V><7"
+	"V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><6V.86V.86V.86V.85"
+	"U^44U>,2TM`/S-H)Q='`)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D:G>GW.L:Z_HJ[/LK[/LK[/LK[/LJ[/LJ[/LK[/LK[/LJ[?PK[/LJ"
+	"[/LJ[/LKW.H:V><6U.(1UN03UN04UN04U^44U^44U^44U^44U^44UN04UN04UN04"
+	"U^44UN03T^$0U.(1T=\\/TM`/U>,2U.(1T^$0T^$0P]#`O\\OU[/LJ[?PK[?PL[?PK"
+	"[?PL[?PK[?PL[?PL[?PK[?PL[?PK[?PL[?PK[?PK[?PK[?PK[?PK[/LJV.86F:;2"
+	"R=<$Z?@G[?PK[/LK[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODHZODHZ_HIZ_HIZODHZODHZ_HIZ_HIZODHZ_HIZODHZ_HI"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@HZ?@HZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<F"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/8EY_8EZ/8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EY_8EY_4DYO4DY_8EY_8EYO4D"
+	"Y_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EYO4DYO4DY?0CY?,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BX_$@R]<$;7BD=(*RX>`@Y/,BY/(AY/,BY/,BY/(AY/(AY_4D"
+	"Y?0CX_(AY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,BY/(AY/(AY/,B"
+	"Y/,BY/,BY/,BY/(AY/(AY/,BY/,BY/,BY/(AXN`?W>H9UN02SML)Q]0\"Q='`Q='`"
+	"Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!Q]0\"QM,!QM,!Q]0\"QM,!Q],\"QM,!"
+	"Q]0\"QM,!QM,!QM,!P\\_^KKKH)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6VF<S-@&V^D8V^D8W.H9W>L;"
+	"W^T=XN`@Y/,CY_8GY/(CXO$AX>`@V>D:Q]8&QM0#Q]4$Q]4%R-8&R-8&R-8&R-8&"
+	"R=<'R]D(S-H*S=L+S=L+S=L+S-H*RM@(R-8&Q=,#PL_`OLO[N,7UL\\'PL;[MK[WL"
+	"H+#@I;/AN<?WP](!R-<&S-H*S]T-TM`0U.(2UN04U^86V.<7VN@9V^D:W.H;W.L;"
+	"W.L;W>P<WNP<WNP<W^T=W^T=W^T=W^T>W^T>W^T>W^T>W^T>W^T=W^T=W^T>W^T>"
+	"X.X>W^T>M\\7X<'NJK+CFPM#`Q-(\"P](!Q-(!P]$!P]$!P]$!P]#`P]$!P](!P]#`"
+	"P]$!P]$!P]$!P]$!Q-(\"P](!P]$!P]$!P]$!P]#`P]$!P]#`P]#`P]#`PL_`PM#`"
+	"P]#`PL_`P<[_N\\GZ@Y'#E9_,XN`?X>\\?W>L;W>L;W>L;W.H:W.H:W.H:W.H:W.H:"
+	"W.H:V^D9V^D9V^D9V^D9V^D9V^D9V^D9VN@8V^D9VN@8VN@8VN@8VN@8VN@8VN@8"
+	"VN@8VN@8V><7VN@8VN@8VN<8VN@8V><7V><7V><7V><7U^45H*S=W>H9W.H;V><7"
+	"V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86V.86V.86V.86V.85"
+	"U^44U>,3TM`/S-H)R=8%,CYO)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D<'VMW^X=[/LJ[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK"
+	"[?PK[/LJV.86S-H)O,CVU>,2UN03UN03UN03UN03UN04UN03UN03UN03UN03UN04"
+	"UN04UN04UN04UN03T=\\.U>,2U.(1U.(1T^$0S-H)M\\/LZODG[?PK[?PL[?PL[?PL"
+	"[?PL[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[?PK[?PKZ_HILK_M"
+	"L[_MW.H8[/LJ[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJZ_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HI[/LJZ_HIZODHZODHZODHZ_HIZ_HIZODHZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<F"
+	"Z?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4D"
+	"Y_8EY_8EYO4DYO4DY_4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DY?,BY/,BY/,B"
+	"Y/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BX.X<L;SI56\".E*+3Y?0CY/(AY/(AY/(AY/,BY/,BY/(AZ/<F"
+	"Y?0CX.X=W.H9Y/(AY/,BY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(A"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AXN`?W.H9UN,2S=H(Q],!Q='`Q='`QM,!"
+	"Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!Q]0!Q]0!Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\""
+	"QM,!QM,!QM+`P,OYM+_LNL?V)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/DM]R-8$VN@7V^D8W.H9W>L:"
+	"WNP<X>\\?Y/(BYO4EY/(DX_$BXN`@X>\\@VND;R=<(PL__Q-(!Q-(!Q=,\"Q-(!Q-(\""
+	"Q-(!Q-(!P]#`P]#`PL_`PL__P<W^O\\S\\O<KZN<;VML3SL\\'PL;_NL+WLJ;CGG:W<"
+	"K+GHO,GYQ-(\"R-8&S-H*S]T-TM`0T^(2U>,3U^45V.<7V>@8V^D:W.H:W.H;W.L;"
+	"W.L;W>P<W>P<WNP=WNP=W^T=W^T>W^T=W^T>W^T=W^T>WNT=W^T=W^T=W^T=W^T="
+	"W^T>W^T>W^T=RMH+>H>XCYK(N\\GXP]$!P](!P](!P]$!P]$!P]$!P]$!P]$!P]$!"
+	"P]#`P]$!P]#`PL_`P]$!P]#`P]#`P]$!P]$!P]#`P]#`P]#`PM#`PM#`PL_`PL_`"
+	"PL__P,W^J;CJ:':FL;SIY?,CX.X>W>L;W>L;W>L;W.H:W.H:W.H:V^H:W.H:W.H:"
+	"V^H:V^D9V^D9V^D9V^D9VN@8V^D9V^D9V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8"
+	"VN@8VN@8VN@8V><7VN@8V><7V><7V><7V><7V><7V.86S-H+HZ[<Y?,CV^@8V><7"
+	"V><7V><7V><7V><7V><7V><7V><6V><7V><7V><7V><6V.86V.86V.86V.86V.86"
+	"U^45U>,3TM`/S-H)RM<&2%2$)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D;WNLX.X=[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LK[/LJ[/LK[/LK[/LK[/LK[?PK"
+	"[/LK[/LKVND9L+WNJ+3>U.(2U>,2U>,2U>,2U>,2U>,2U>,2UN03UN03UN03UN04"
+	"UN04UN03UN04UN03U>,3U>,2U>,2U.(1R]H)N<3OY_4C[?PK[?PK[?PK[?PL[?PK"
+	"[?PK[?PK[/LK[?PK[?PK[/LK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LJX>`?"
+	"H*[:Q-'_Y_4D[/LK[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"Z_HJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HI"
+	"Z_HIZ_HI[/LJZ_HIZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ_HIZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@GZODHZODHZODHZODHZ?@HZ?@GZ?@HZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_4DY_8EY_8EY_8EYO4DY_8E"
+	"Y_8EYO4DYO4DYO4DY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DY?0CY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/(AY/,BY/,BX_(AV.44CYG%35F'O\\[_Y/,BY/(AY/(AY/(AY/(AY/(AY/(AY?,C"
+	"X_(AWNP;V.85Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/(AX>\\>W.D8U>,1S=H(QM,!Q='`Q='`Q='`Q='`"
+	"QM,!QM,!QM,!QM,!QM,!Q]0\"QM,!Q]0\"Q]0\"QM,!QM,!QM,!Q]0\"Q]0\"Q]0\"QM,!"
+	"QM,!Q=,!N\\;TLKWJR=8#O,CW)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GO\\S\\V><5VN@7W.H9W.H:"
+	"WNP;X.X>X_(BY?0DY/,DX_$BXN`AXN`AX.X?V^H:T-\\/PL_`O\\S\\P<[^P<[^P,W^"
+	"P<W^P,W]O\\S\\O\\S\\OLK[O<KZN\\CXN<;VM\\7TL\\'PLL#OL;_NJ[GIH;#?H[+@M</R"
+	"P<[^Q]4%RM@(SMP,T-X.TM`0U.(2U>,3U^45V.<7V>@8VND9V^D:V^H:W.L;W>L;"
+	"W>P<WNP<WNP<WNP<WNP=W^T=W^T=W^T>W^T>W^T>W^T=WNT=W^T=W^T=WNT=W^T="
+	"W^T=W^T=W^T=W^T=VND:I;/F;'>EH*S:OLO[P]#`P]$!P]$!P]$!P]$!P]#`P]#`"
+	"P]#`P]#`P]#`PM#`P]#`P]#`PM#`P]#`P]#`P]#`PM#`PM#`PL_`PL_`PL_`P<[_"
+	"M<+T@)#!>(.PT-X+Y/,CW^T=W>L;W>L;W>L;W.L;W.H:W.H:W.H:V^H:V^D9V^H:"
+	"V^D9V^D9V^D9V^D9V^D9V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN<8"
+	"VN@8VN@8V><7V><7VN@8VN@8V><7V><7V><7V><7V.86M,'SPL[\\X_$BV><7V><7"
+	"V><7V><7V><6V><7V><7V.86V><6V.86V><7V.86V.86V.86V.86V.86V.86U^45"
+	"U^45U.(2T=\\/S-H)R=<%6F:5)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	";7FJW^X=Z_HI[/LJ[/LK[/LK[/LK[/LJ[/LJ[/LK[/LK[/LK[/LK[/LK[?PK[?PK"
+	"[?PK[?PKZ/<GFJG:FJ3*T^$0U.(1U.(1U.(1U>,2U>,2U>,2U>,2UN03UN03UN04"
+	"UN04UN04UN04UN04UN03U>,3T^$1Q=,\"O<CUZ/8D[?PK[?PK[?PL[?PL[?PL[?PK"
+	"[?PK[?PK[/LK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PKZ_HJ"
+	"R-<%KKOITM`.ZODI[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ_HI"
+	"Z_HIZ_HIZ_HIZODHZ_HIZ_HIZODHZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZODHZ?@GZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<GZ?@G"
+	"Z/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EYO4DYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DY?0CY?,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/(AXN`?Q='_;':B7FR:W^\\>Y/(AY/(AY/(AY/(AY/,BY/(AX_$@W>L:"
+	"V.85VN@6W.H9Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/,BY/,BY/,BY/,BY/,BX_(AX.X=VN@7U.(1S-D'QM,!Q-#_Q='`Q='`QM,!QM,!"
+	"QM,!Q='`QM,!Q]0\"QM,!Q],\"Q]0\"Q],!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0\"Q]0\""
+	"Q='`M\\+ON,3QR]@%R-4\"O<GX)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DL;[NV.43VN@7V^D8W.H9"
+	"W>L;W^T=XN`@Y?,DY?,DXO$BXN`AXN`AXN`AW^X>W>L<U^<7S-H+O\\S]N\\CXO,GY"
+	"O<KZO<KZO,GYO,GYNL?WN<?VM\\7TML/SL\\'PKKOKJ;;FH['@IK3CM,+QO\\S\\Q=0$"
+	"R=@(S=L+S]T-T=`0TN$2U.,3UN04U^86V.<7V>D9VND9V^H:V^H;V^H;W.L;W>L<"
+	"W>L<WNP<WNP<WNP=WNP=WNT=WNT=W^T>W^T>W^T=W^T=WNP=W^T=WNT=W^T=WNT="
+	"W^T=W^T=W^T=W^T=W^T=W^T>T-X/DJ#1;WJHGJK8N\\CWPL__PL_`P]$!P]$!P]#`"
+	"PM#`P]#`P]#`P]#`PM#`P]#`P]#`P]#`P]#`PL_`P]#`PM#`PL_`O\\W]L<#QAI3&"
+	"97\"=ML'OXO$@X>\\?W>L;W>L;W>L;W>L;W.L;W.H:W.H:V^D9W.H:W.H:V^D9V^D9"
+	"V^D9V^D9V^D9VND9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7VN@8VN@8VN@8"
+	"V><7VN@8V><7V><7V.86V><7V><7V>87V><7V><7U>,3GJK:W>L9W>L;V.86V><7"
+	"V><6V><6V.86V><6V.86V><6V.86V.86V.86V.86V.86V.86V.86V.86V.86V.85"
+	"UN04U.(2T=\\.R]D(R=8%97\"@)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9'\"A"
+	"W>P;Z_HI[/LJ[?PK[/LJ[/LJ[/LK[/LK[?PK[/LK[/LK[?PK[?PK[?PK[?PK[/LK"
+	"[?PK[?PK[/LJRMH+AI&XR=<%U.(1U.(1U.(1U.(1U>,2U.(2U.(1U>,2U>,3UN03"
+	"UN04UN04UN04UN03U.(2SMP+NL;SRM<#Z_DH[?PK[?PK[?PL[?PL[?PL[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[/LK[/LK[/LK[?PK[/LK[/LK[/LK[?PK[/LK[/LK[/LK[/LJ"
+	"Z?@HLK_NO,GWWNP;[/LJ[/LK[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HI"
+	"Z_HIZ_HIZODHZODHZODHZODHZODHZ_HIZ_HIZ_HIZ_HIZODHZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZ?@HZ?@HZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DY_8EYO4DY_8EY_8EYO4DYO4DY?0CY?,BY?0CY?,BY?,BY?,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/(AW.D7I:_;5F&-H*[?Y?0CY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(A"
+	"XN`?XN`?X_$@Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,B"
+	"Y/,BY/,BY/,BY/(AX_(AX.T<VN@7U.$0R]@'QM,!Q=#_Q-#_Q='`Q='`QM,!QM,!"
+	"QM,!Q]0\"QM,!Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q]0\"Q]0\"Q]0\"QM0\"Q-#_"
+	"L;WJO\\OYS-D&Q]0!R-4\"N\\?W)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DHK#CU.$/VN@7VN@7W.H9"
+	"W>L:WNP<X>\\?Y/(BY?0EX_$BXN`AXN`AXN\\@X>\\@X.X?WNP=V^D:UN45S=P,P](!"
+	"O,KZM\\7TM<+RL\\'QLK_OL+[NKKOJJ[GGJ;?GJ[CHL+[NN\\CXPL_`Q]4%R]D)S=L,"
+	"S]X.TM`0T^$1U.,3U.04UN45U^86U^87U^<7V.<8V>D9V^D:W.L;V^L;W>P<W>P<"
+	"W>P<W>P<WNP<WNT=W^T=W^T=W^T=W^T=W^T>WNP=WNP=WNT=W^T=WNT=WNP=WNP="
+	"W^T=WNT=W^T=W^T=WNT=W^T=W^T=W^T=SMT-FJC9:W>FBI7$J;7DN\\CXP<[^PL__"
+	"PL_`PM#`PL__PL_`PM#`PL_`PL_`PL_`PL__PL__O\\W]ML3UG*G;<G^P:72@LK[L"
+	"W^T<XN`@WNP<W>L;W>L;W>L;W>L;W.H:W.L;W.H:W.H:V^D9V^D9V^D9V^D9V^D9"
+	"V^D9V^D9V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7"
+	"VN@8V><7V><7V><7V><7V><7V><7V><7V.86V.86QM0%I[+?YO0DVN@8V><6V.86"
+	"V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86U^45"
+	"UN04U.(2T-X.R]D(R-4$<'RL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-T-TT-X-"
+	"ZODH[/LJ[?PK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[?PK[?PK[?PL[?PL[?PK[?PL"
+	"[?PK[?PK[?PK[/LKQ=0\"L+[LRM@&T^(0U.(1U>,2U.(2U>,2U>,2U>,2U>,3UN03"
+	"U>,3UN03UN04SMP+OLKYOLKVW^T:[/LK[?PK[?PL[?PL[?PL[?PL[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK"
+	"[/LJX>`?K+KGQ]4#Y?,B[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HJ"
+	"Y/,BY_8EZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZ_HIZ_HI"
+	"ZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EZ/8EY_8EZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DY_8EY_8EYO4DY_8EYO4DY?0CY?,BY?0CY?0CY?0CY?,BY?,B"
+	"Y/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/(AX>\\>S-@$?XFU4U^.T^,2Y/,BY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,B"
+	"Y/(AY/(AY/(AY/,BY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/,BY/,B"
+	"Y/,BY/,BY/(AX_$@X.X=VN@7TM`/RM@&Q='`Q=#_QM'`Q='`Q='`QM,!QM,!QM,!"
+	"QM,!Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q]0\"Q]0\"Q]0\"QM,!Q]0\"Q]0\"QM,!QM0!PLW[L+OH"
+	"Q='_RM<$Q]0\"Q]0!R-4#M\\/R)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DE:+6T-T*V><6VN@8W.H9"
+	"W>L:WNP;X.X>X_$AY?0EX_(CXN`AXN`AX>\\@XN`AX>\\@X>\\@W^X?W>P=VND9U^87"
+	"T^(3S]T.R]D*QM4%P](\"P<_`P<_`P<_`P](\"M</VB)3$Q-#_S]T-T-X.TM`0TN$1"
+	"T^(2U.,3U>,4T^,4S-L,M\\3WH:_AD)W.B97&BY?'EZ/2NL7SWNP<W>P<W>P<WNP<"
+	"W>P<W>P<WNP<WNT=W^T=W^T=W^T>W^T=WNP=WNP=WNP=WNT=WNP=WNP=WNP=WNP="
+	"WNP=WNP=WNP=WNP=W^T=W^T=W^T=W^T=W^T=W^X>V>@8NL?YD9[/;WRJ?8FVDI[-"
+	"H:[=K+GHL\\#PM\\3TN,7UML/SL;[NJ+7EFZG8B)7%;'FH9G&?F*32R-4#XO$@XN`@"
+	"W^T=W>L;W>L;W>L;W.L;W.L;W.H:W.H:W.H:W.H:V^D9V^D9V^D9V^D9V^D9VN@8"
+	"V^D9VN@8V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7VN@8V><7"
+	"V><7V><7VN<8V><7V><7V><7V><7V><7V.86UN04J;;GS-@&X>\\@V><6V><6V.86"
+	"V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.85U^45"
+	"UN04T^$1S]T-R]D(Q]4#?(>W)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D?(BYX>\\>"
+	"Z/<FZODI[/LJ[/LJ[?PK[?PK[?PK[?PK[?PK[?PK[?PL[?PL[?PL[?PL[?PL[?PL"
+	"[?PK[?PL[?PL[?PL[/LJV^H9O\\S[P,W]S-H)T=\\.U.(1U.(2UN03UN04U^44U>,3"
+	"T-X.R-4$NL?UP]#^W.H8[/LJ[?PL[?PL[?PL[?PK[?PL[?PK[?PK[?PL[?PK[?PK"
+	"[?PK[/LK[?PK[/LK[?PK[?PK[/LJ[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK"
+	"[/LJ[/LJU.(1L\\'OSMP+Z/<F[?PK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZODI"
+	"TM`.T^$/W>H8Z?@GZ?@GZODHZ_HIZODHZODHZODHZODHZODHZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZODHZODHZODHZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?<FZ?<GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,B"
+	"Y/,BY?,BY/,BY?,BY?,BY?,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/(AV^@7JK3@8VZ;E*+2Y/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/(AY/(AY/(AY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/,B"
+	"Y/,BY/,BX_$@W^T<V><6TM\\.RM<%Q='`Q-#_Q-#_Q='`Q='`QM,!QM,!QM,!QM,!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q='`O<GWL;SIR=<$"
+	"R=8#Q]0!R-4\"R-4\"R=8#L;WL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA)+%R]D&V><6VN@7V^D8"
+	"W.H:W>L;W^T=XN`@Y?0DY/(CXN`AXN`AXN`AX>\\@X>\\@XN`AX>\\@X.X?WNP=W>L<"
+	"V^D:V><8U^46U.04T^(2TM`1T=\\0T=\\0T=\\0RMD+HK'AN<;UU>04U.,3U>04U.04"
+	"U>,4TN$2ML7Y@8_#1U2&+#9F)C)B+#AG,S]O,SYM;WFFLK[LWNP;W>P<W>P<W>P<"
+	"W>P<WNP<WNP=WNP=WNT=W^T=W^T=W^T=W^T=W^T=WNP=WNP=WNP=WNP=WNP<WNP="
+	"WNP=WNP=W>P<WNP<WNP<WNT=W^T=WNT=WNP<W^T=WNT=X.X>X>\\?W.L;S-L+M\\7V"
+	"H['BDI_/A)\"`>8:U<X\"O<X\"P>82RD)W+I;'AO,GXT^$0XN`@XN`AW^X>W>P<W>P<"
+	"W>L;W>L;W.L;W.H:W.H:W.H:V^H:W.H:V^H:V^D9V^D9V^D9V^D9V^D9VND9VN@8"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7VN<8VN@8"
+	"V><7V><7V><7V><7V><7V.86V><7V.86V.86S]X.F*32X_$@V^D9V.86V><6V.86"
+	"V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.85V.86U^45V.85U^45U^44"
+	"U>,3T^$1S]T-RM@'QM,\"AI&`)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DDI[/W.D8"
+	"Y/(AYO4DZ/<FZ?@HZ_HI[/LJ[/LK[?PK[?PL[?PL[?PL[?PL[?PL[?PL[?PL[?PL"
+	"[?PL[?PL[?PL[?PL[?PL[?PLZ_HJW>P;S=P+P]#`P,W]P<[]P<[]O\\S\\O<KYP,W\\"
+	"R-<$UN02Y?0C[?PK[?PK[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK"
+	"[/LK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LK[?PK[?PK[?PK[/LK[/LK[/LK[/LK"
+	"[/LK[/LKZ_HJQ]8$NLCVU>,1ZODH[/LK[/LK[?PK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJX_$@"
+	"U>,2UN03U.$0UN,1YO4CZ?@GZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZODHZ?@GZ?@HZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?<FZ/<FZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ/<FZ/<FZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/8EZ/8EZ/<FZ/<FZ/<FY_8EZ/8FZ/8FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EYO4DYO4DY?0CY?0CY?,BY?0CY?,BY?,BY?,BY?0CY?,B"
+	"Y?0CY?,BY/,BY/,BY/,BY/,BY?,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/(AX>\\>Q]+`@8RY7&B6T^(1Y/(AX_(AY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/(A"
+	"Y/(AY/(AY/(AY/(AY/(AY/,BY/(AY/(AY/(AY/,BY/(AY/,BY/,BY/,BY/,BY/,B"
+	"Y/(AX_$@WNP;V><6T=\\-R=<$Q='`Q-#_Q='`Q-#_Q='`Q='`QM,!QM,!QM,!QM,!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"QM0\"Q='`Q='_N,/PML/PS-D&R=8#"
+	"R-4\"R-4\"R-4\"R-4\"R=8#J;;E)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:WFLR=8#V><6VN@7V^D8"
+	"W.H9W>L:W^T<XN`@Y/,CY/,DXN`AX>\\@X>\\@X>\\@X>\\@X>\\@XN`AX>\\@X>\\@X.X?"
+	"WNP=W>L<V^D:VN@9V>@8V.<7V.87V.87U^87UN05O\\[`M\\3UT^$0U^87U^86U>05"
+	"O,O_<X&V)S-D/TIY97&@@(V\\E:+2H[#@K+GIK+GIJ;7EKKOJU^03W>P<W>P<W>P<"
+	"W>P<W>P<WNP=WNP=WNT=WNT=W^T=W^T=W^T=WNP=W^T=WNP=WNP=W>P<WNP=WNP<"
+	"WNP<WNP=WNP<WNP<WNP<WNP<WNP<WNP<WNP<WNT=WNT=W^T=WNT=WNT=W^T=X.X>"
+	"X.\\?XN`@XN`@XN`@XN`@XN`@XO$AXN`AX>\\@X.X?WNP=W>L;W>P<W>P<W>P<W>L;"
+	"W.L;W.L;W.H:W.H:W.H:W.H:W.H:V^D9W.H:V^D9VN@8V^D9V^D9V^D9VN@8VN@8"
+	"VN@8VN@8VN@8VN@8V><7V><7VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V.86V.86V.86U^45M,'SNL7SY/,CV><7V.86V.86V.86"
+	"V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86U^45V.85U^45UN04"
+	"U>,3TM`0S]T,RM@'Q=(!BY;$)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DG*C9T=\\."
+	"VN@7W^T<XN`?Y?,CYO4DZ/<GZODHZ_HI[/LK[?PL[?PL[?PL[?PL[OTL[?PL[?PL"
+	"[OTL[OTL[OTL[OTL[?PL[?PL[OTM[?PL[?PL[/LKZ?@GY?0CY?,BYO4DZ?@G[/LJ"
+	"[?PK[?PK[?PL[?PL[?PL[?PL[OTL[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[/LK[/LK[/LK[/LK[?PK[?PK[?PK[?PK[/LK[?PK[/LK"
+	"[/LK[/LJ[/LJZODHOLS[P,W\\VN@6Z_HI[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIV^D8"
+	"U^44UN03U>,2U>,2U.$/X.X<ZODHZODHZODHZODHZODHZODHZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZODHZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8EZ/<FZ/8FZ/8EY_8EZ/<FZ/8EZ/8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EYO4DYO4DY?0CY?0CY?0CY?,BY?0CY?,BY?,BY?0CY?,BY/,B"
+	"Y/,BY/,BY?,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY/,B"
+	"X_$@UN,1H:S89G*>H:_@Y/,BY/(AY/(AY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(A"
+	"Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AX_(AY/(AY/,BY/,BY/,BY/,BX_$@X_(A"
+	"XN`?WNP;V.44T-X,R=8$Q='`Q-#_Q='`QM,!Q='`Q='`QM,!QM,!QM,!QM0\"QM,!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"Q]4#Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q-#_L[[KO,GWS=H(R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4#R=8#IK+B)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D0$U_QM,\"V.85V><6V^D8"
+	"W.H9W>L:WNP<X>\\?X_(BY/,DXN`AX>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@"
+	"X.X?W^T>WNT=WNP=W>L<W>L<W.L;V^D:VN@9V>@9TN(3O<K\\Q=,\"VND9V.<8O<\\$"
+	"-4)V56\"-B9;$J;?EN<;VQ]4%T-X.TM`0T-X.S]T,RMD(GZS>Q=#_VNH:W.L;W>P<"
+	"W>P<WNP=WNT=W^T=WNT=WNT=W^T=W^T=WNT=W^T=WNT=WNT=WNP=WNP<WNP<W>P<"
+	"WNP<W>P<WNP<WNP<WNP<W>P<WNP<WNP=WNP<W>P<WNP<WNP<WNP<WNP<WNP=WNP<"
+	"WNP=WNP=WNP<WNP<WNP<WNP<WNP<WNP<W>P<W>P<W.L;W.L;W>P<W.L;W.L;W.L;"
+	"W.L;W.H:W.H:W.H:V^H:W.H:W.H:V^D9V^D9V^D9V^D9V^D9V^D9VN@8VN@8VN@8"
+	"VN@8VN@8VN@8VN@8V><7V><7VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V.86V.86U^45TN$1EJ/3WNP:W>L;V><6V.86V.86V.86"
+	"V.86V.86V.86U^45V.86V.86V.86V.86V.86V.85V.86V.86U^45V.45U^44UN04"
+	"U>,2TM`0SMP+R=<&P]#`D)S*)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DI+'AS=L*"
+	"TM`/U.(1U^85W.H9W^X=X_$@Y?0CY_8FZ?@GZ_HI[/LK[?PK[?PL[OTL[OTM[OTL"
+	"[OTM[OTL[OTL[?PL[OTL[OTM[OTM[OTM[?PL[OTL[?PL[OTL[?PL[?PL[?PL[?PL"
+	"[?PL[OTL[?PL[?PL[?PL[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LJ"
+	"[?PK[?PK[?PK[/LK[/LK[?PK[?PK[/LK[?PK[/LK[?PK[/LK[/LK[?PK[?PK[/LK"
+	"[/LK[/LJ[/LJ[/LJY_8EO,KXP]'_W>L:Z_HI[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIUN03"
+	"UN03U>,3U>,2U>,2U>,2U.(1V><5YO4DZODHZODHZODHZODHZODHZ_HIZODHZODH"
+	"ZODHZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZODHZODHZ?@GZ?@GZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FY_8EZ/8FY_8EY_8EZ/8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DYO4DY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?,BY/,B"
+	"Y/,BY/,BY/,BY?,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(A"
+	"W>L9N<3Q>X:R<7ZLW.P;Y/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/,BY/(AY/,BY/(AY/,BY/(AY/(AY/(AY/,BY/(AY/,BY/,BY/,BY/,BX_(AXN`?"
+	"W>L:U^03S]P+R-4#Q='`Q='`Q='`QM,!Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q='`PLW[L;SIQ-'_S-D'R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4#R=8#I+#?)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DM\\/SV.83VN@7VN@7"
+	"V^D9W.H:WNP;X.X=X_$AY/,CX>`@X.\\?X.X?X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@"
+	"X>\\@X>\\@X>\\?X.X?X.X>W^T>W^T=WNP=W.H;W.L;V^D:Q]8'P,W_U>,2VND9R=P0"
+	"-4-X?XNXL;[MQ=,!U>,3T=\\/R]D)QM4$Q=,#Q-(\"PL_`F:C:J+/?UN04V^D9W.L;"
+	"W>P<WNP=WNT=WNT=W^T>W^T=W^T=W^T=W^T=W^T=WNP<WNP<WNP<W>P<WNP<W>P<"
+	"WNP<W>P<W>P<W>P<W>P<W>P<WNP<WNP<WNP<W>P<W>P<W>P<WNP<WNP<W>P<WNP<"
+	"WNP<WNP<WNP<WNP<W>P<WNP<WNP<W>P<W>L;W>L;W>L;W.L;W.L;W.L;W.L;W.L;"
+	"W.L;W.H:W.H:V^H:V^H:V^H:V^D9V^D9VN@8VN@8V^D9VN@8VN@8VN@8VN@8VN@8"
+	"VN@8VN@8V><7V><7V><7V><7V><7V><7VN<8V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V><7V.86V><7V><7V.86U^45U^45N<?YK[KGY?0DV><7V.86V.86V.86V.86"
+	"V.86V.86U^45U^45V.86V.86U^45U^45U^45U^45V.85V.86U^45U^44U^44UN04"
+	"U.(2TM`0S=L*R-8%PL__E:#0)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DK+CHS=L)"
+	"T-X-TM`/T^$0T^$0U>,2V.85W>L:X>\\>Y/(BYO4DZ?@GZODI[/LJ[?PK[OTL[OTM"
+	"[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTL[?PL[?PL[OTM[OTL"
+	"[OTL[OTL[OTL[?PL[?PK[OTL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK"
+	"[?PK[?PK[/LJ[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK"
+	"[/LK[/LK[/LJ[/LJ[/LJY?0CN\\GWQ]0\"WNP;[/LJ[/LK[/LK[/LK[/LJ[/LK[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJX_(AU^44"
+	"UN03UN03U>,3U>,2U>,2U>,2U>,2U.(1WNT;Z?@GZODHZODHZODHZ_HIZODHZODH"
+	"Z_HIZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_4EYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?,BY/,BY?,BY?0C"
+	"Y?,BY/,BY?,BY?0CY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AX>X="
+	"R-4\"CIG%9W.@P](!Y/,BY/(AY/(AY/,BY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(A"
+	"Y/,BY/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@XN\\?W>H9"
+	"UN,2SML*Q]0\"Q=#_Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM0\"QM,!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"Q],!QM,!QM,!OLGWL;SIRM<$R]@&R-4\"R-4\"R-4#R-4\""
+	"R-4\"R-4\"R-4\"R-4#R=8$GZO:)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DHJ_@U>(.V><6VN@7"
+	"V^D8W.H9W>L;W^T<XN`@X_(BX>`AX.X?X.X?X.X?X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@"
+	"X>\\@X>\\@XN`@X>\\@X>\\@X.X?W^T>W^T>WNP=WNP=W.H;UN46P](\"Q=,\"V^H:U>47"
+	"7V^G;GJGH*W<ML/RS=L*Q]8&P]$!PL_`P]$!PL_`PL_`H[+DBY6`T-X-V.<7W.L;"
+	"WNT=WNP<WNP=WNT=WNT=W^T=W^T=W^T=WNP<WNP=WNP=WNP<WNP<WNP<W>P<W>L<"
+	"W>L<W>P<W>P<WNP<W>L;WNP<W>L<WNP<W>P<W>P<W>P<W>P<W>P<W>P<WNP<W>P<"
+	"W>P<WNP<W>P<W>P<W>P<W.L;W>L;W.L;W.L;W.L;W.L;V^L;V^H;W.L;V^L;V^H;"
+	"V^H:V^H:V^H:V^H:V^H:VND9V^D9V^D9V^D9V^D9VN@8VN@8VN@8VN@8VN@8VN@8"
+	"VN@8VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V.86V.86V.86V.86V.86U^45TN$2E:+2VN<5W>L<V.86V.86V.86V.86V.86"
+	"V.86V.85U^45U^45U^45V.86V.86U^45U^45U^45U^45V.85U^45U^44UN04U>,3"
+	"U.(2T=\\.S=L*Q]4$PL[^FZ?6)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DL;[MS-H)"
+	"T-X-TM`/TM`/TM`/T^$0T^$0U>,2U^44VN@7WNP;XN`@Y?0CZ/<GZODIZ_HJ[/LK"
+	"[?PL[OTL[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTL[OTM[OTM[OTL[OTM[OTL"
+	"[?PL[?PL[OTL[OTL[?PL[OTL[?PL[?PK[?PL[?PK[?PK[?PK[?PK[?PK[/LK[/LK"
+	"[/LK[/LJ[/LJ[/LJ[/LK[/LK[/LK[?PK[?PK[/LK[?PK[?LK[?PK[?PK[?PK[/LK"
+	"[/LK[?PK[/LJ[/LJ[/LJ[/LJX_(AO,KXR-8$W^T<Z_HI[/LK[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LJZ_HJ[/LJ[/LJ[/LJ[/LJZ_HIW>P;U^44"
+	"U>,2UN03U>,3U>,2U>,2U>,2U>,2U>,2U>,2UN03X>\\>ZODHZODHZODHZ_HIZODH"
+	"ZODHZ_HIZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8EZ/<FY_8EY_8EY_8EZ/8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4D"
+	"YO4DYO0DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?,BY?0CY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BXN`?T=X,"
+	"H*K7<'RHH:_>Y/,BY/(AY/(AY/(AY/(AY/,BY/(AY/,BY/(AY/(AY/(AY/,BY/(A"
+	"Y/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@X>X=V^D8U>(1"
+	"S=H)Q]0\"Q='`Q-#_Q='`Q='`Q='`Q=,!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0!"
+	"Q]0\"Q]0\"Q]0\"Q]0\"QM,!QM,!Q='_N,/QM<#NS=H'R]<%R-4\"R=8#R-4\"R-4\"R-4\""
+	"R-4\"R-4#R-4\"R-4\"RM<$FZ?6)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DCIS/T=X)V><6VN@7"
+	"V^D8V^D9W>L:WNP<XN`@XN`AXN`AX.X?X.X?X.X?X.X?X.X?X.\\@X.\\@X>\\@X>\\@"
+	"X>\\@X>\\@X>`AX>\\@XN`AX>\\@X.\\@X.X?W^T>WNT=WNP=W.L<R]L,P](\"T^$0VND:"
+	"AIC/9&Z<FJ?7L;[NR=<&R-8&P]$!P]$!P]$!PL_`PL_`LL#R<GRIR-4#UN04V^H:"
+	"W>P<W>T=W>P=W>L<V^H;U^86WNP;W^T=WNT=WNP=WNP=WNP<WNP<WNP<WNP<W>P<"
+	"W>L<W>L;W>L;W.L;W>L;W.L;W>P<W>L<W>L;W>P<W>L;W>P<W>P<W>L;W>L;W>P<"
+	"W>P<W>L;W>L<W>L;W>L;W.L;W.L;W.L;W.L;W.L;W.L;V^L;V^H;V^H:V^H:V^L;"
+	"V^H:V^H:VNH:V^H:V^D9VN@8V><7V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8"
+	"VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86V>87V><7V><7"
+	"V><7V.86V.86V.86V.86U^45UN04N,;XK;?CYO0DVN@8V.86V.86V.86U^45U^45"
+	"U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^44UN04U>,3"
+	"T^$1T-X-S-H)QM0#P<W]GJO9)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DN,7UR]D("
+	"S]T,T=\\.TM`/TM`/TM`/T^$0T^$0U.(1U>,2UN03V.85W.H9X.X=Y/(BYO4EZ?@H"
+	"ZODI[/LJ[?PK[OTM[OTL[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTL[OTL"
+	"[OTL[OTL[OTL[?PL[OTL[?PL[?PL[?PK[?PL[?PK[?PK[?PK[?PK[?PK[/LK[?PK"
+	"[/LK[/LK[?PK[/LK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[/LK"
+	"[?PK[/LK[/LJ[?PK[/LJ[/LJ[/LJXO$@OLSZRM<&W^T<Z_HI[?PK[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_DIV><6UN04"
+	"UN03UN03UN03UN03U>,2UN03UN03U>,2U>,2U>,2UN03U^44XN`?ZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZ?@GZODHZODHZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EZ/8F"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4D"
+	"YO0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?0CY?0CY?,BY?0CY?0CY?,BY?0CY?,B"
+	"Y/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BX_$@UN,1K+?D"
+	">X:SAI3\"X.\\>Y/(AY/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/(AY/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_(AW^T<VN@7U.$/S-D'"
+	"QM,!Q='`Q='`Q='`Q='`Q='`Q='`Q=,!QM,!QM0!Q]0\"QM,!Q]0\"Q]0\"Q]0\"Q]0\""
+	"Q]0\"Q]0\"Q]0\"Q]0\"QM,!Q=#_M+_LN\\?TSML(R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4#"
+	"R-4#R-4#R-4#R=8#RM<$FJ;5)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D=(*TS-D%V><6V><6"
+	"VN@8V^D9W.H:WNP<X>\\?XN`AXN`AX>\\@X.X?X.X?X.X?X>\\@X.\\?X.\\@X>\\@X>\\@"
+	"X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\@X>\\?X.X?W^T>WNP=WNP=V>@9R-<'Q-(\"V^H9"
+	"J+GO5V*/E:'1KKOKQM,\"R=<'P]$!PL_`PL_`PL_`PL_`O,K\\:W>HN\\;SU.,3V.<7"
+	"V>@8T^(3Q-,$KKOLDZ#/D9O(U.$/W^T=W^T=WNP=WNP=W>P<WNP<W>P<WNP<W>L;"
+	"W>L;W>P<W>L;W>L;W>L;W>L;W>P<W.L;W.L;W.L;W.L;W.L;W>L;W>L;W>P<W.L;"
+	"W.L;W>L<W>L;W.L;W.L;W.L;W.L;W.L;V^L;V^L;W.L;V^H:V^H;V^L;V^H:V^H:"
+	"V^H:V^H:V^H:V^D9V^D9V><7VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8"
+	"VN<8V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86V.86V.86V.86V><7"
+	"V.86V.86V.86V.86V.86U^45T=`0DI[-VN@5W>P<V.86V.86V.86U^45V.86U^45"
+	"U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45U^45UN04UN04U.(2"
+	"T^$1T-X-R]D(QM0#P,W]H:W;)S-D)S-D)S-D)S-D)S-D)S-D)S-D-D-TO<KYRM@'"
+	"SMP+T=\\.TM`/TM`/TM`/T^$0T^$0U.(1U.(1U.(1U>,2UN03U^44VN@7WNP;X>`?"
+	"Y?,CZ/<FZODH[/LJ[/LK[?PL[OTL[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTM[OTL"
+	"[?PL[OTL[?PL[OTL[?PL[?PL[?PK[?PL[?PK[?PL[?PK[?PK[/LK[/LK[?PK[?PK"
+	"[?PK[/LK[?PK[?PK[?PK[?PK[?PK[/LK[/LK[/LK[?PK[/LK[?PK[?PK[?PK[/LJ"
+	"[/LK[/LK[/LK[?PK[/LJ[/LJ[/LJ[/LJX_(AP<[]RM<&W>L:Z_HI[/LK[/LK[/LK"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIY?0CV.85UN04"
+	"UN03UN03UN03UN03U>,2UN03UN03U>,2UN03UN03UN03U>,2U>,2U^44X>\\>Z?@G"
+	"ZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZODHZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ/<FZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EZ/8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?,BY/,BY?,BY/,BY?,BY?,B"
+	"Y?,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@V><5M<#LA(^["
+	">H:SU^85Y/,BY/(AY/(AY/(AY/(AY/(AX_$@Y?0CY?0CY/(AY/(AY/(AY/(AY/(A"
+	"Y/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY?,BY/,BX_$@W^T<V><6TM\\.RM<%Q='`"
+	"Q-#_Q='`Q='`Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM0!QM,!Q]0\"Q]0\"Q]0\""
+	"Q]0\"Q]0\"Q]0\"Q='`PL[\\L;SIPL_]SML(R-4\"R-4\"R=8#R=8#R=8#R=8#R-4#R=8#"
+	"R-4#R-4#R-4\"R-4#RM<$F*33)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D3%N-R=8#V.85V><6"
+	"VN@7V^D8W.H9W>L;W^T=XN`@XN`AX>\\@X>\\@X.X?X.X?X.X?X.X?X.X?X.X?X.X?"
+	"X>\\@X>\\@X>\\@X>\\@X>\\@X.X?X.X?X.X?X.X?X.X>W^T>WNP=W.L;T=`1Q=0%T-X-"
+	"Q=8*45R-CYO*J[GHP<W\\R]D)P]$!P]$!PL_`P]$!PL_`P,[_=H6XEJ'-NL?XI;+C"
+	"A)+#7VR<1%!`,S]O04MYA(^[NL7SW^T<WNT=WNP=WNP=W>P<W>P<W>L;W>L;W.L;"
+	"W>L;W.L;W.L;W.L;W.L;W>L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;"
+	"V^L;W.L;W.H;W.L;W.L;W.L;V^H;V^H:V^H:V^H;V^H:V^H:V^H:V^H:VNH:V^H:"
+	"V^H:VND9V^D9V^D9VN@8V><7V^D9VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7VN@8"
+	"V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86V.86V.86V.86V.86V.86"
+	"V.86V.86U^45V.86U^45UN04L+[QLKWFY?,CV><7V.86V.86V.86V.86U^45U^45"
+	"U^45U^45U^44U^45U^44U^45UN04U^45U^45U^45UN04U^45U^45UN04U>,3U.(2"
+	"TM`0S]T,R]D(Q=,\"O\\S\\I;'?)S-D)S-D)S-D)S-D)S-D)S-D)S-D45V/O\\OZRM@&"
+	"S=L*T=\\.TM`/TM`/TM`/T^$0T^$0U.(1U.(1U.(1U.(1U>,2UN03UN03U^44V><6"
+	"V^D8WNP<X_$@YO0DZ/<FZODI[/LJ[?PK[?PL[OTL[OTM[OTM[OTM[OTM[OTM[OTM"
+	"[OTL[OTL[OTL[?PL[?PL[?PL[?PL[?PL[?PL[?PL[?PK[?PK[/LK[?PK[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[/LK[/LK[/LK[/LJ[?PK[/LK[/LK"
+	"[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJY?0DQ-(!R=<%V^D8ZODH[/LK[/LK"
+	"[/LJ[/LJ[/LJ[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJW^X=U^44UN04"
+	"UN03UN03UN03UN03UN03UN03UN03UN03U>,2U>,2UN03UN03U>,2U>,2U>,2U.(1"
+	"W.H9Y_8EZODHZO@GZO@HZODHZODHZODHZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZ?@GZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BY/,BY?,BY?,BY?0CY?0CY/,B"
+	"Y?,BY/,BY/,BY/(AY/(AY/,BY/,BY/,BY/(AY/,BY/,BX_$@V^@7NL7RBY>`=H.M"
+	"S=P,Y/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(@Y_8EY?,BX>\\>X.T<Y/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AX^`@W^P;V.84T=X,R=8$Q='`Q-#_"
+	"Q='`Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!Q]0\"Q]0!Q]0\"QM,!Q]0\"Q]0\"Q]0\""
+	"Q]0\"Q]0\"Q='`OLGWL;SIR-4\"S-H'R-4\"R-4\"R-4#R=8#R=8#R=8#R-4#R-4#R-4#"
+	"R=8#R-4#R-4\"R-4#RM<$CYO*)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GOLOYV.85V><6"
+	"VN@7VN@7V^D9W>L:W^T<XN`?X_$AX_$BX>\\@X.X?X.X?X.X?X.X?X.X?X.X?X.X?"
+	"X.X?X.X?X.X?X.X?X.X?X.X?X.X?X.X?X.X?X.X?W^T>WNP=WNP=W.H;S=P-SMP,"
+	"V.@997.HB)7#JKCGO<GXS-H*Q-(\"P]$!P]$!P]$!P]$!PL_`@Y/'.D5T,CYM+#AG"
+	"+3EI,3UM0T]^86R<=8&PC9G'J+3AU.$/W^T=WNP=WNP<W>P<W>P<W.L;W>P<W>L;"
+	"W>L<W.L;W.L;W>L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.L;W.H;W.L;W.L;"
+	"V^L;V^H;V^H;V^H;V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:VND:VNH:VND:"
+	"V^D:VND9VND9V^D9V^D9VN@8V^D9VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V><7V><7V>87V><7V.86V.86V.86V.86V.86V.86V.86"
+	"V.86V.86U^45U^45U^45R]H+D)S(W^P:W.L;V.86V.86V.86V.86U^45U^45U^45"
+	"U^45U^45U^44U^45U^44UN04UN04U^44U^45UN04UN04UN04UN04U>,3U>,3T^$1"
+	"T=\\/S]T,RM@'Q-(!O\\S[I[/A)S-D)S-D)S-D)S-D)S-D)S-D)S-D7&F:O\\OZR=<%"
+	"S=L*T-X-TM`/TM`/TM`/TM`/T^$0T^$0U.(1U.(1U.(1U>,2UN03U>,2UN03U^44"
+	"U^44V.85V><6W.H9X.\\>Y/(AYO4EZ?@GZODI[/LK[?PL[?PL[OTM[OTM[OTM[OTL"
+	"[OTM[OTL[?PL[OPL[?PL[?PL[?PL[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK[?PK"
+	"[?PK[/LK[/LK[?PK[?PK[?PK[?PK[?LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ/8FRM@'R-8$U^43Z/<F[?PK"
+	"[/LJ[/LK[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[?PK[/LJZ_DHVN@7U^44UN03"
+	"UN03UN03UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2U>,2"
+	"U>,2U.(1V.85X>\\>Z?@GZODHZODHZ?@GZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ?@GZ?@G"
+	"Z/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY?,BY?0CY/,BY/,BY/,BY?,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AX_$@V^@7N\\?UCIK$>(2NQM4$"
+	"Y/,BY/(AY/(AY/(AY/(AY/,BY/(AX_(@X.X<XN`?X_(AW.H8U>,1X_$AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/(AXN`?W>L:U^03S]P*Q]4\"Q='`Q-#_Q='`"
+	"Q='`Q='`Q='`QM,!QM(!QM,!QM,!QM,!QM,!Q]0\"QM,!Q]0\"Q]0\"Q]0\"Q]0\"Q]0\""
+	"QM,!Q-#_NL7SM<'NS=H'R]@&R-4\"R-4\"R=8#R-4\"R=8#R=8#R=8#R=8#R-4#R=8#"
+	"R-4\"R-4\"R-4#R-4\"RM<$@HZ^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DJK;FU^43V.86"
+	"VN@7VN@8V^D8W.H:WNP;X>\\>X_$AX_$BX>`@X.X?X.X?X.X?X.X?X.X?X.X?X.X?"
+	"X.X?X.X?X.X?X.X?X.X?X.X?X.X?X.X?X.X?W^X>W^T>WNT>WNT=W>P=V>D9QM0#"
+	"W>P<CIW2A9+!J+;FN,7SS-H)QM0$P]$!P]$!P]$!Q-(\"P]$!H*[B,S]P/4AV8&R8"
+	"A9&`I;+AO,GYRM@(T^$0SMT-GZS=O,?UWNP<WNP<WNT=W>P<W.L<W.L;W>L;W.L;"
+	"W.L;V^L;W.L;W.L;V^H:W.L;V^L;V^H:V^H;W.H:W.L;W.L;W.H;W.L;W.H;W.H;"
+	"W.L;V^H;V^H:V^H:V^L;V^D9V^H:V^H:VNH:V^H:V^H:V^H:V^H:VND9VND9VND9"
+	"VND9VND9V^D9V^D9VN@8VND9V^D9VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V><7V><7V.86V.86V.86V.86V.86V.86V.86V.86V.86"
+	"V.86V.86U^45U^45U>,3GZW?PLWXXO$AV><7V.86U^45V.86U^45U^45U^45V.85"
+	"U^45U^45U^45UN04UN04UN04UN04UN04U^44UN04UN04UN04UN03U>,3U.(2T^$1"
+	"T=\\.SMP+RM@'Q-(!O\\S[J[?E)S-D)S-D)S-D)S-D)S-D)S-D)S-D:7:GOLOZR-8$"
+	"S-H)T-X-TM`/TM`/TM`/TM`/T^$0T^$0T^$0U.(1U.(1U>,2U>,2UN03UN03UN03"
+	"U^44U^44U^44V.85V><6V^D8WNP;X>`?Y?,CY_8EZ?@HZ_HI[/LK[?PL[OTM[OTM"
+	"[OTM[OTL[OTL[?PL[OTL[?PL[?PL[?PL[?PK[?PL[?PL[?PK[?PK[?PK[?PK[?PK"
+	"[/LK[/LK[?PK[/LK[/LK[?PK[?PK[?PK[/LK[/LK[/LK[/LK[/LK[/LJ[/LK[/LJ"
+	"[/LJ[/LK[/LJ[/LK[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJZODHT-\\-Q]4#T^$/Y?0C"
+	"[/LJ[?PK[/LJ[/LK[/LK[/LK[/LK[/LJ[/LK[/LJ[?PK[/LJYO4DV.85U^44UN04"
+	"UN03UN03UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2U>,2"
+	"U>,2U>,2U>,2U.(0T^$0V^D7Y/(AZODHZ?@HZ?@GZODHZ?@GZODHZ?@GZ?@GZ?@H"
+	"ZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@GZ?@HZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/8FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8EY_8EY_8EY_8EZ/<FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DY?0CYO4DY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BY?,BY/,BY?0CY?0CY?,BY/,BY?,B"
+	"Y?,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/(AX_$@VN<6O,?TD9S&>(:PP](!Y/,B"
+	"Y/,BY/,BY/(AY/(AY/(AY/(AY/(AY/(AX_$@WNP:VN@6U^03W^T<Y/(AY/(AY/(A"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BX_(AX>\\=V^D8U>(1S=L)Q]0!Q-#_Q-#_Q-#_Q='`"
+	"Q='`Q='`QM,!QM,!Q],!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0\"Q]0\"Q]0\"QM,!"
+	"Q=#_M<#NNL?TS]P)RM<$R-4\"R-4\"R-4\"R=8#R=8#R=8#R=8#R=8#R=8#R=8#R-4\""
+	"R-4\"R-4#R-4\"R-4#RM<$<W^O)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DEJ/4U>(0V><6"
+	"V><6VN@7V^D8W.H9W>L:X.X>X>\\@XO$AX>`AX.X?X.X?X.X?X.X?X.X?X.X?W^T>"
+	"W^T>W^T>W^T>W^T>X.X?X.X?W^X?X.X?W^T>W^X>W^T>WNT>WNT>WNT>W^X?WNP<"
+	"W.L<G:W@CIS,JKCGML/RS-H(R-8'P]$!P]$!P]$!P]$!Q=,#Q=,$M</SP<[]SMP,"
+	"U.(2U.(2TM`0SMT,RM@(Q]4%J+;IG*?5UN,2W>L;W>P<W>P<W.L<W.L;W.L;W.L;"
+	"V^H:V^H:V^H:W.H:V^H:V^H:V^H:V^H:V^H:V^H:W.H:W.H;W.L;V^H:V^H:V^H:"
+	"V^H:V^H:V^H:V^H:VNH:VND:V^H:V^H:VNH:VND9VND9VND9VND9VND9VND9VND9"
+	"VND9VN@9VN@8VN@9VND9VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V.86V><7V><7V.86V><7V.86V.86V.86V.86V.86V.86"
+	"V.86U^45U^45UN04O,K\\FJ7/X_$@VN@8V.86U^45U^45U^45U^45U^45U^45U^45"
+	"U^45U^45U^44UN04UN04UN04U^45UN04UN04UN04UN04UN04UN03U>,3U.(2TM`0"
+	"T-X.S-H*R-8%P]#`OLOZKKGG)S-D)S-D)S-D)S-D)S-D)S-D)S-D=(*QOLOZQ]4#"
+	"S-H(S]T,T=\\.TM`/TM`/TM`/T^$0T^$0T^$0U.(1U.(1U>,2U>,2UN03UN03UN03"
+	"UN03U^44U^44V.85V.85V.85V.85V><6W.H9W^T<XN`@Y?0CZ/<GZO@HZ_HJ[?PK"
+	"[?PL[?PL[OTM[OTM[?PL[OTL[?PL[?PL[?PL[?PL[?PL[?PK[?PK[?PK[?PK[?PK"
+	"[?PK[?PK[/LK[?PK[/LK[?PK[/LK[?PK[/LK[/LK[/LK[/LJ[/LK[/LJ[/LJ[/LJ"
+	"[/LK[/LK[/LJ[/LJ[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJZ_HIV>@7QM0\"S]T,"
+	"X.X=Z_HI[/LK[/LK[/LK[/LJ[/LK[/LK[/LK[/LK[/LJ[/LJX.X=V.85U^44UN03"
+	"UN03UN03UN03UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2"
+	"U>,2U>,2U.(1U>,2U.(1U.(1TM`/U>,1W>H9YO0CZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?<GZ/<FZ/<FZ/<FZ?@GZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ/<FZ/<GZ/<FZ?@G"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DY?0CY?0CYO4DYO4DY?0CYO4DYO4DY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY/,BY?,BY?,BY?,BY/,BY?,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BX_$@V.84NL7RD)O%?(BSQ-,!Y/,BY/(A"
+	"Y/,BY/,BY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AX_$@XN`?Y/(AY/(AY/(AY/(A"
+	"Y/(AY/(AY/(AY/(AY/(AX_$@X.X=VN@7T^$0S-D'Q='`Q-#_Q-#_Q-#_Q-#_Q='`"
+	"Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0\"Q]0\"QM,!QM,!QM+`PL[\\"
+	"LKWJPL_]S]P)R=8#R=8#R-4\"R-4\"R-4\"R=8#R=8#R=8#R=8#R=8#R=8#R=8#R=8#"
+	"R-4\"R-4\"R-4#R-4\"RM<%7FJ:)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@8_!T=X*V.85"
+	"V><6VN@7V^D8W.H9W>L:W^T=X>\\?XN`AXN`AX.X?X.X?X.X?W^T>W^T>W^T>W^T>"
+	"W^T>W^T>W^T>W^T>W^T>W^T>W^T>W^T>W^T>W^T>W^T>WNP=V^L<U>05Q=0%J[GK"
+	"D)[/BI?(H['BL;_ON,7TSML*R]H+Q-,#PL_`O<O[O<K[Q-(!R=<&S=L+T-X.SMP,"
+	"S-H*RM@(R-8&Q]8&QM4%QM0$N,;X@XZ^Q='_V>@8W.L;W>P<W.L;W.L;W.L;W.L;"
+	"V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:"
+	"V^H:V^H:VNH:VNH:V^H:VNH:VNH:V^H:VND9VND9V^H:VND9V^H:VND9VND9VND9"
+	"VND9V>@9VN@8VN@8VN@9VN@8V>@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V><7V.86V.86V.86V><7V.86V.86V.86V.86V.86V.86V.86"
+	"U^45U^45UN04S=P-C9G'U>,/WNP=V.86V.86U^45U^45U^45U^45U^45U^45U^45"
+	"U^45U^45U^45UN04UN04UN04UN04UN04UN04UN03UN03UN04U>,3U>,3T^$1TM`0"
+	"S]T-S-H)R-8%P]#`OLOZK;GG)S-D)S-D)S-D)S-D)S-D)S-D)S-D?8NZO\\S[QM0\""
+	"R]D(SMP+T-X-TM`/TM`/TM`/T^$0T^$0U.(1U.(1U.(1U>,2U>,2UN03UN03UN03"
+	"U^44U^44U^44U^44U^44U^44V.85V.85V.85V><6VN@7W>L:X>\\>Y/(BY_4EZ?@G"
+	"Z_HI[/LK[?PK[?PL[?PL[OTL[?PL[?PL[?PK[?PL[?PL[?PL[?PK[?PL[?PK[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LK[?PK[/LK[/LJ[/LJ[/LK[?PK[/LJ[/LK"
+	"[/LJ[/LK[/LK[/LJ[/LK[/LJ[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJXN`@R=<%"
+	"R]D'VN@7Z?<F[?PK[/LJ[/LJ[/LJ[/LJ[?PK[/LJ[/LJZODHVND8U^44U^44UN03"
+	"U^44UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2U>,2U>,2"
+	"U>,2U>,2U.(1U.(1U.(1U.(1U.(1U.(1U.(1T=\\-U^44WNT;YO0DZ?@GZ?@GZ/8E"
+	"Y_4EY_8EZ/<FZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/8FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DY?0CYO4DY?0CY?0CYO4DYO4DYO4DY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY/,BY?0CY?,BY?,BY?0CY/,B"
+	"Y?,BY/,BY/,BY/,BY/,BY/(AY/(AXN`>U>,1M,#MCIG$?XVUR-<&Y/,BY/(AY/(A"
+	"Y/(AY/(AY/(AY/,BY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(A"
+	"Y/,BY/(AY/(AY/(AXN`?WNP;V>85T=\\-RM<%Q='`P\\_^Q-#_Q-#_Q-#_Q='`Q='`"
+	"QM,!QM,!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0\"Q]0\"QM,!QM,!Q='`O\\OYL+SI"
+	"R-8#SMH(R-4\"R-4#R-4\"R=4#R-4\"R-4\"R=8#R-4\"R=8#R=8$R=8#R=8#R=8#R-4#"
+	"R-4#R-4\"R-4#R-4\"R=8$.T=X)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9'*DSMH&V>86"
+	"V><6VN@7V^D8V^D9W.H:WNP<X.X>XN`@XN`AX>\\@X.X?W^T>X.X?W^T>W^T>W^T>"
+	"W^T>W^T>WNT>WNP=W^T>W^T>W^T>W^X>W^T>UN46P<`!H['C@(V_5&\"22%.#76F9"
+	">XBUFZC7K+GGM</RP,W]U^45R]D+O\\W_JKCII[3EK;OKM</RPL__R-8&R-8&Q]4%"
+	"Q]4%Q]4%Q]4%QM4%QM4%Q]4%P<_`?XR]ML#NU^45VND9W.H:W.L;W.L;W.H:W.L;"
+	"V^H:V^H;V^H:V^H:V^H:V^H:V^H:V^D9V^D9V^D9V^H:V^H:V^H:V^H:V^H:V^H:"
+	"V^H:V^H:VNH:VNH:VND:V^H:VNH:VND:VNH:VNH:VND9VND9VND9VND9VND9VND9"
+	"VN@9VND9VN@8VN@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7"
+	"V><7V><7V><7V.86V><7V><7V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86"
+	"U^45UN04U.(2GJ[?N<3NX_$AV><7U^45U^45U^45U^45U^45U^45U^45U^45U^45"
+	"U^45U^45UN04UN04UN04UN04UN04UN04UN04UN03UN03U>,3U>,3U.(2T^$1T=\\/"
+	"S]T-R]D)Q]4$PL__O<KYK;GG)S-D)S-D)S-D)S-D)S-D)S-D)S-DBIC&OLOZQM0\""
+	"RMD'SMP+T-X-T=\\.TM`/TM`/T^$0T^$0T^$0U.(1U.(1U>,2U>,2U>,2UN03UN03"
+	"UN03U^44U^44U^44U^44U^44V.85V.85V.85V.85V.85V><6V><6V^D8WNP;XN`?"
+	"Y?,CZ/8EZ?@HZ_HJ[/LK[?PL[?PL[?PL[?PL[?PL[?PK[?PL[?PL[?PL[?PK[?PK"
+	"[?PK[?PK[?PK[/LK[/LK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK"
+	"[/LJ[/LK[/LJ[/LK[/LJ[/LJ[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ/<F"
+	"T-X-RM<&T^$0X_(A[/LJ[?PK[/LK[/LK[/LJ[/LJ[/LJYO0DV.86U^45U^44UN03"
+	"UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2U>,2U.(1U.(1"
+	"U.(1U.(1U.(1U.(1U.(1U.(1U.(1T^$0T^$0T^$0T^$0T^$0S]T,R]D'Y/(AZ/8F"
+	"Z?@GZ?@GZODHZODHZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FZ/8FZ/<FY_8EY_8EY_8EY_8FY_8EY_8EY_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CYO4DY?0CY?0CY?0CYO4DY?0CYO4D"
+	"Y?0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?0CY?0CY/,B"
+	"Y/,BY/,BY/(AY/,BY/(AX_(AX.X=T=\\,KKGFBY?\"A9.^T-\\-Y/,BY/(AY/(AY/(A"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/,BY/,B"
+	"Y/,BY/(AX_(AX>\\>W>L:U^44T-T,R=8$Q-#_P\\_^Q-#_Q-#_Q='`Q='`Q='`Q='`"
+	"QM,!QM,!QM,!QM,!QM,!QM,!QM,!Q]0\"Q]0\"Q]0!Q]0!QM,!Q='_N\\;TM<'NS=H'"
+	"S-D&R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R=8#R-4\"R=8#R=8#R=8#R=8#R=8#R=8#R-4#"
+	"R=8#R-4\"R-4#R-4#O,CV)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.DAYR=8#V.85"
+	"V><6V><6VN@7V^D9W.H9WNP;X.X>X>\\?XN`@X>\\@X.X?W^T>W^T>W^T>W^T>W^T>"
+	"W^T>W^T>W^T>WNP=W^T>WNP=W^T>WNT=V>D;:WNS.T5T0DQ\\45V,:WBGBY?%I;+A"
+	"NL?VQM0#R]D(SMP,S]T-S-L+Q=0$J[KMIK3DK+OLM,+SN<;WO<K[R-8%Q]8&Q]4%"
+	"Q]4%Q]4%Q]4%Q]8&Q]4%QM0$P]$\"AY7(I['>T^$1V><7V^H:W.L;W.L;V^H:V^H:"
+	"V^H:V^L;V^H:W.H:V^H:V^H:V^H:V^H:V^D9V^D9V^D9VND9V^H:V^H:V^H:VNH:"
+	"V^H:V^D9VNH:VND:V^D:VND:VND:VND9VNH:VND9VND9VND9VND9VND9VN@9VN@8"
+	"VN@9V>@9VN@8VN@8VN@8VN@8VN@8V>@8VN@8V><7V><7VN@8V><7V><7V><7V><7"
+	"V><7V><7V><7V><7V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86U^45U^45"
+	"U^45UN04M\\7XFJ7,X_$@VN@9U^45U^45V.86U^45U^45U^45U^45U^45U^45U^45"
+	"U^45UN04UN04UN04UN04UN03UN03UN03UN03UN03U>,3U>,3U.(2U.(2T^$1T=\\."
+	"SMP,R]D(QM0#PL__O<GYK;GG)S-D)S-D)S-D)S-D)S-D)S-D)S-DE*#/OLOYQ=,!"
+	"RM@&S=L*T-X-TM`/TM`/TM`/T^$0T^$0T^$0U.(1U.(1U>,2U>,2UN03UN03UN03"
+	"UN03U^44U^44U^44V.85V.85V.85V.85V.85V.85V.85V.85V><6V><6V><6VN@7"
+	"W.H9X.X=X_(AYO4DZ/<GZODIZ_HJ[?PK[?PL[?PL[?PL[?PL[?PL[?PK[?PL[?PK"
+	"[?PL[?PK[?PK[?PK[/LK[?PK[/LK[/LK[/LJ[/LK[/LK[/LK[/LK[/LJ[/LK[/LK"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"Z_HIV^H9RM@'S]T,W.H9Z?@G[?PL[?PK[?PK[/LJ[/LJW^T<U^45U^44U^44UN03"
+	"UN03UN03UN03UN03UN03UN03UN03U>,2U>,2U>,2U>,2U>,2U>,2U.(1U.(1U.(1"
+	"U.(1U.(1U.(1U.(1T^(1T^$1T^$1T^$1T^$0T-X-QM,!P,SZT=\\-Y?,BZODIZODI"
+	"ZODHZODIZODHZODHZ?@HZODHZ?@GZ?@HZ?@HZ?@HZ?@GZ?@GZ?@HZ?@HZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO4DY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0C"
+	"Y/,BY/,BY/(AY/(AX_$@WNL:R]@%IK'=B).^DZ'-V.<6Y/(AY/(AY/,BY/(AY/,B"
+	"Y/(AY/,BY/(AY/(AY/,BY/(AY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/(A"
+	"Y/(AX_$@X>\\>W.H9U>,2SML)Q]0\"Q-#_P\\_^Q-#_Q-#_Q='_Q='`Q='`QM,!Q='`"
+	"QM,!QM,!QM,!QM,!QM,!QM,!QM0\"Q]0\"QM,!QM,!QM+`Q-#^ML'ON\\?US]P*R]<%"
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4#R=8#R=8#R=8#R=8#R=8#R=8#R=8#R=8#R=8#"
+	"R-4\"R-4#R-4#R=8#J+3C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DNL;UV.85"
+	"V.85V><6VN@7V^D8V^D9W>L:W^T=X>\\?X>\\@X>\\@W^X>W^T>W^T>W^T>W^T>WNT>"
+	"WNP=WNP=WNP=WNP=WNP=WNP=W>P=WNP=UN<976R@E:'-M<+QP]#`S-L*S]T-T-X."
+	"SMP,R]H)R=<'Q]4%QM0$Q=,#O\\W_I[7EKKWLM</TO,K[P<[`P](\"R=<'R=@(Q]4%"
+	"Q]4%Q]4%Q]4%Q]8&Q]8&QM4%P](\"CYW1FZ;1T-X.U^45V^D9W.L;V^H:V^H:V^H:"
+	"V^H:V^H:W.H:W.H:V^H:VNH:V^H:V^H:V^H:V^H:V^D9V^D9VND9V^D9V^D9V^D:"
+	"VNH:VNH:VNH:VND:V^D9VND9VND9VND9VND9VND9VND9V>@9VND9VN@8VN@9VN@9"
+	"VN@9V>@8VN@8V>@8VN@8VN@8VN@8V><8V><7VN@8V><7V><7V><7V><7V><7V><7"
+	"V><7V.86V.86V.86V><7V.86V.86V.86V.86V.86V.86V.86V.86U^45U^45UN04"
+	"UN04QM4&B96`V.83W>L<V.86V.86U^45V.86U^45U^45U^45U^45U^45UN04UN04"
+	"UN04UN04UN04UN03UN04U>,3UN03U>,3U>,3U>,3U>,3U>,3U.(2U.(2TM`0T-X."
+	"SMP+RM@'QM0#P<[^O,GXK;GF)S-D)S-D)S-D)S-D)S-D)S-D)S-DGJS;OLOYQ-'`"
+	"R=<%S=L*S]T,T=\\.TM`/TM`/T^$0T^$0T^$0U.(1U.(1U.(1U>,2UN03UN03UN03"
+	"UN03U^44U^44V.85U^44V.85V.85V.85V.85V.85V.85V.85V.85V.85V.85V><6"
+	"V><6VN@7V^D8WNP;XN`?Y?,CY_8EZ?@HZ_HJ[/LK[?PK[?PL[?PL[?PL[?PL[?PK"
+	"[?PK[?PK[?PK[?PK[?PK[?PK[/LK[/LK[/LK[?PK[/LJ[/LJ[/LK[/LK[/LK[/LK"
+	"[/LJ[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJY?0CT-X-S-H)U.(1X_(A[/LJ[?PK[/LJZO@HTM\\.SML*U>,2U^44UN03"
+	"UN03UN03UN03UN03UN03U>,2U>03U>,2U>,2U>,2U>,2U>,2U>,2U.(1U.(1U.(1"
+	"U.(1U.(1U.(1U.(1T^(1T^$1T=\\/R-8$N,3QNL;RT^$.Y_8EZ?@GZODHZODIZ_HI"
+	"ZODIZODIZODIZODIZODHZODHZODHZODHZ?@HZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO0CY?0CY?0C"
+	"YO0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0C"
+	"Y/,BY/(AY/(AXN`?VN<6PL[\\G:C3A9\"ZIK3AW^X=Y/,BY/(AY/(AY/(AY/,BY/,B"
+	"Y/,BY/(AY/(AY/,BY/(AY/(AY/(AY/(AY/(AY/(AY/(AY/,BY/(AY/(AY/(AY/(A"
+	"X_$@W^T<VN@7T^$/S-D'QM(!Q-#_P\\_^Q-#^Q-#_Q-#_Q-#_Q='`Q='`Q='`QM,!"
+	"QM,!QM,!QM,!QM,!Q]0\"Q]0\"QM,!QM,!QM,!Q='`PLW[LKWJP<W[S]P*R=8#R-4#"
+	"R=8#R=8#R-4\"R-4\"R=8#R=8#R-4#R=8#R=8#R=8#R=8#R=8#R=8#R=8#R-4\"R-4\""
+	"R=8#R=8#R-4\"R=8#DI[.)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DI+#@V.44"
+	"V><6V><6VN@7V^D8V^D8W.H:W^T<X.X>X>\\@X>\\@X.X?W^T>W^T>WNP=WNP=WNP="
+	"W>P<W>L<W>L<W>P=WNP=W>L<W>L<W>L<U.48:7:FM,'OQ]4$S-H*U.(2RM@)Q=,#"
+	"P]$!P]$!P]$!Q-(\"P]$!P]$!O<O]KKSKN<;VOLO\\R-<'T^$2T^(3T=\\0S-H+Q]4%"
+	"Q]4%Q]4%Q]8&Q]8&QM0$Q-,\"P,W^CY[1E)[*SMP,U>,3V><8V^H:W.L;V^H:W.H:"
+	"V^H:V^H:W.H:W.H:V^H:V^H:V^H:V^H:V^D9V^D9V^D9V^D9V^D:V^D9V^D9V^D9"
+	"VNH:VND:VND9VND9VND9VND9VND9V^D9VND9VND9VND9VND9VND9VN@8VN@9VN@8"
+	"VN@9VN@9V>@8V>@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7V><7V><7V>87"
+	"V.86V.86V><7V.86V><7V.86V.86V.86V.86V.86V.86V.86V.85U^45U^45UN04"
+	"S]T.C)C(Q]+^X>\\?V.86U^45U^45U^45U^45U^45U^45U^45U^45UN04U^45UN04"
+	"UN04UN04UN04UN04UN03UN03U>,3U>,3U>,3U>,3U>,3U>,3U.(2T^$1TM`0S]T-"
+	"S=L*R=@'Q=,\"P,W]O,GXK;GF)S-D)S-D)S-D)S-D)S-D)S-D)S-DI;+?O<KYP]#`"
+	"R-8$S-H)S]T,T=\\.TM`/TM`/T^$0T^$0T^$0U.(1U.(1U.(1U.(1UN03UN03UN03"
+	"UN03U^44U^44U^44U^44V.85V.85V.85V.85V.85V.85V.85V.85V.85V><6V><6"
+	"V.85V><6V><6V><6VN@7W.H9X.X=X_(AYO0DZ/<GZODHZ_HJ[/LK[?PL[?PL[?PL"
+	"[?PL[?PL[?PL[?PL[?PK[?PK[/LK[?PK[?PK[?PK[/LK[/LK[/LK[?PK[/LK[/LK"
+	"[/LK[/LJ[/LK[/LK[/LJ[/LK[/LK[/LJ[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJZ_DIW.L:S-H(T-X,VN@7Z/8E[?PKZO@H[/LKY?0CU>,2S-D(T^$0"
+	"U^44UN04U>,2UN03U>03UN03U>,2U>,2U>,2U>,2U>,2U>,2U.(2U.(1U.(1U.(1"
+	"U.(1U.(1T^$1TM`0R]D(O,GWK;KGP,SZVND7Y_8EZ/<FZ?@GZODHZODIZ_HIZODI"
+	"ZODIZODHZODHZODHZODHZODHZODHZ?@HZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@HZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@HZ?@HZ?@GZ/<GZ/<GZ?@GZ/<FZ?@GZ/<GZ/<FZ/<F"
+	"Z/<GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8F"
+	"Y_8FY_8FY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO0CYO4DY?0CYO4DY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BY?0CY?0CY?,B"
+	"Y/,BY/(AW^T<T]`.ML'NDY[*AI*]OLOZX_(AY/(AY/,BY/,BY/,BY/,BY/,BY/(A"
+	"Y/,BY/(AY/(BY/,BY/,BY/(AY/(AY/,BY/(AY/(AY/,BY/(AY/(AY/,BY/(AXN`?"
+	"WNP;V.44TM\\.RM<%Q='`P\\_^Q-#_Q-#_Q-#_Q-#_Q='`Q='`Q='`QM,!QM,!QM,!"
+	"QM,!QM,!QM,!Q]0\"Q]0\"QM,!QM,!QM,!Q='`O\\OXLKWJQ]0\"SML(R=8#R-4\"R-4\""
+	"R=8#R-4#R-4\"R=8#R-4\"R-4\"R=8#R=8#R=8#R=8#R=8#R-4#R=8#R=8#R=8#R-4#"
+	"R-4#R-4#R-4\"R=8#<GVM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DCIK,UN,1"
+	"V><6V><6V><7VN@7V^D8W.H:WNP;X.X>X.X?X>\\@X>\\@W^T>W>P<WNP=WNP=WNP="
+	"WNP=W>L<W>L<W>L<W>L<W.L;W.L<W>L<UN89;GJKLK_MQ-(\"RM@'T=\\.Q]4&PL_`"
+	"PL_`PL_`PL_`P]$!P]$!Q-(\"PL_`ML3TP,W^Q=,#TM`0X>\\@WNX?U^87RMD)QM0$"
+	"Q=0$Q-(\"PL_`O<K[ML/TJ;;GDI_0:G:GE9_+S-H*T^$1V><7V^D9V^H:V^H:W.H:"
+	"V^H:V^H:W.H:V^H:V^H:V^H:VND:V^H:V^H:V^D9V^H:V^D9V^D9VND9V^D9VND9"
+	"VND9VND9VND9VND9VND9VND9VND9VND9VND9VND9VN@9VN@9VN@8VN@8V>@8VN@8"
+	"VN@9VN@9VN@8V>@8V>@8VN@8VN@8V><8V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V>87V><7V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86U^45U^44T^$2"
+	"F:;7LKSFX_(BVN<7U^45U^45U^45U^45U^45U^45U^45U^45U^45UN04UN04UN04"
+	"UN04UN04UN04UN03UN04U>,3U>,3U>,3U>,3U>,3U.(2U.(2U.(2T^$1T=\\/S]T-"
+	"S=L*R=<&Q-(!P,W]O,CXK;KG)S-D)S-D)S-D)S-D)S-D)S-D)S-DJ[GFO<KXP]#_"
+	"R-8$R]D(SMP+T=\\.T^$0TM`/T^$0T^$0T^$0U.(1U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03UN03U^44U^44U^44V.85V.85V.85V.85V.85V.85V.85V.85V.85V><6V><6"
+	"V><6V><6V.85V><6V><6V><6VN@7V^D8WNP;X>\\?Y?,BY_8EZ?@HZ_HJ[/LJ[?PK"
+	"[?PK[?PL[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[/LK[/LK[?PK[/LK[/LK"
+	"[/LK[/LJ[/LK[/LJ[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJY_8EU>,2S=L*TM`/WNT<X_(AVN@7XO$@ZO@HZODIVN@8"
+	"S=L*TM`/UN03U>03U>03U>,2U>,2U.(1U>,2U>,2U>,2U>,2U.(2U.(2U.(1U.(1"
+	"T^$1S]T,PL_^K[OIJ[CDR-8$X_(AZ?@GZODHZ?<FZ?@GZ?@GZ?@GZODHZODIZODI"
+	"ZODHZODIZODHZODIZODHZODHZODHZODHZ?@HZODHZ?@HZ?@HZODHZ?@GZ?@HZ?@H"
+	"Z?@GZ?@HZ?@HZ?@HZ/<GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<FZ/<FZ?@GZ/<F"
+	"Z?@GZ/<GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/8FY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4D"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,B"
+	"X_(AV^D7R=4#I[/>BY?!E:+.T^(0Y/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY?,B"
+	"Y/,BY/,BY/,BY/(BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/(AY/(AX_(AX>\\>W.H9"
+	"UN,2S]T+Q]4#Q-#_P\\_^Q-#_P\\_^Q-#_Q-#_Q='`Q='`Q='`QM'`Q='`QM,!QM,!"
+	"QM,!QM,!Q],!Q]0\"QM,!QM,!QM,!Q='_O,?TL[_LS-D'S=H'R-4\"R-4\"R-4\"R-4#"
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4#R-4#R=8#R=8#R-4#R=8#R=8#R=8#"
+	"R-4\"R-4\"R-4\"R-4#0$Q\\)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D=X6YTM\\+"
+	"V.85V><6VN@7VN@7V^D8W.H9W>L;W^T=X.X>X>\\?X>\\?W^T>WNP=WNP=WNP=W>L<"
+	"W>L<W>P=W>L<W>L<W>L<W.L<W>L<W>L<V>@:<7^RK;GGP<[_R-8%SMP,R-8&PL_`"
+	"PL_`PL_`PL_`P]$!P]$!Q=,#Q=,#P<[_Q-(\"RM@(T=\\0V^D:V>D9U>05Q=,#N\\GZ"
+	"LL#PHJ_@B9?(;WRM2E>(*S=G)C)A45R)HJS8SMP,U.(2V.86VND9V^H:V^L;W.H:"
+	"V^H:V^H:V^H:V^H:V^H:V^H:VND:V^H:V^D9V^D9V^D9V^D9VND9VND9VND9VND9"
+	"VND9VND9VND9VND9VND9VND9V^D9VND9VND9VN@9VN@8VND9VN@8VN@8VN@8VN@8"
+	"V>@8V>@8V>@8VN@8V>@8VN@8V><7V><7VN@8V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V><7V.86V.86V.86V.86V.86U^45V.86V.86V.86V.86U^45U^45U.(2IK3F"
+	"G:G6XO$@V^D9V.86U^45U^45U^45U^45U^45U^45U^45UN04U^45UN04U^45UN04"
+	"UN04UN04UN04U>,3UN04U>,3U>,3U>,3U>,3U.(2U>,3U.(2U.(2TM`0T-X.SMP,"
+	"S-H)R-8%Q-(!O\\S\\N\\CWK;KH)S-D)S-D)S-D)S-D)S-D)S-D-$!QL;[KO<KXPL__"
+	"Q]4#R]D'SMP+T-X-TM`/TM`/T^$0T^$0U.(1U.(1U.(1U.(1U>,2U>,2UN03UN03"
+	"UN03UN03U^44U^44V.85V.85V.85V.85V.85V.85V.85V.85V.85V.85V><6V><6"
+	"V><6V><6V><6V><6V><6V><6V.85V><6VN@7V^D8W>L:X.X=X_(AYO4DZ/<GZODH"
+	"Z_HJ[/LK[?PK[?PK[?PK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[/LK[/LK[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[/LJ[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIXO$@T=\\.SMP*S]T,S=L)T-X,T=\\-VN@7YO4D"
+	"Z_HJWNP<S=L*TM`/UN04U>,2U>,2U>,2U>,2U>,2U.(2U.(2U.(2U.(1T=`/R-8%"
+	"M\\3SIK+>L;WIT=\\-YO4DZ?@GZODHZ_HIZODHZODHZ/<FZ?<FZ?@GZODHZODIZODH"
+	"ZODHZODHZODIZODIZODHZODHZODHZODHZ?@HZODHZODHZ?@GZODHZ?@GZ?@HZ?@H"
+	"Z?@HZ?@GZ?@GZ?@HZ?@HZ/<GZ?@GZ/<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8FY_8FY_8FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CYO4DYO4DYO4DYO0CYO4DY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY/,BX>X="
+	"T^$/N,3REZ//B)2`L\\'OX.\\>Y/(AY/(AY/(AY/,BY/,BY/,BY/(AY/,BY?0CY_8E"
+	"Y?0CY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/(AX_$@X.X=VN@7U.$0"
+	"S-H(QM,!P\\_^P\\_^P\\_^Q,__Q-#_Q-#_Q='`Q='`Q='`Q='`QM(!Q='`QM,!QM,!"
+	"QM,!QM,!QM,!QM,!QM,!Q='`Q-#_M\\+PN,3RS]P)S-@&R-4\"R-4\"R-4\"R-4\"R-4\""
+	"R-4#R-4\"R-4\"R-4\"R=8#R-4\"R=4#R=8#R-4\"R=8#R-4#R-4\"R-4#R=8#R=8#R-4\""
+	"R-4\"R-4\"Q]0!O,CW)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D5V:8SML("
+	"V.85V><6VN@7VN@7V^D8V^D9W>L:W^T=X.X>X.X?X.X?W^T>WNP=WNP=WNP=W>L<"
+	"W>L<W>L<W>L<W>L<W>L<W>L<W>L<W>L<V^H<@8_$HZ_=OLO[Q-(\"S-D)RM@(P]$!"
+	"PL_`PL_`P]$!P]$!Q-(\"Q-,#Q-(\"Q]4%R=<'S=L*TM`0U>04U>04RM@)N\\G[>XF\\"
+	"/TIZ&B55%B)2&B94(\"Q;,#MJ256#?8BTN\\?TT=\\/U>,3V.<7VND9V^H:V^L;V^H:"
+	"V^H:V^H:W.H:V^H:V^H:V^H:VNH:V^H:V^D9VND9V^D9V^D9V^D9VND9VND9VND9"
+	"VND9VND9VND9VND9VND9VND9V^D9VN@9VND9VND9VND9V>@8VN@8VN@8VN@8VN@8"
+	"V>@8V>@8V>@8VN@8V>@8VN@8VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V><7V.86V.86V.86V.86V.86U^45V.86V.86V.86U^45U^45U>,3L+[OD9O)"
+	"W^T<W.H:V.86V.86U^45U^45U^45U^45U^45U^45UN04U^45UN04UN04UN04UN04"
+	"UN04UN04UN03U>,3U>,3U>,3U>,3U>,3U>,3U>,3U.(2U.(2T^$1TM`0T-X-SMP,"
+	"R]D(Q]4%Q-(!O\\S\\NL?WKKKI)S-D)S-D)S-D)S-D)S-D)S-D2U>(L;_JO,GXPL_^"
+	"Q]4#RM@'S=L*T-X-TM`/TM`/T^$0T^$0U.(1T^$0U.(1U.(1U>,2U>,2UN03UN03"
+	"UN03U^44U^44U^44U^44V.85V.85V.85V.85V.85V.85V.85V.85V.85V><6V><6"
+	"V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6VN@7VN@7W.H9WNP;XN`?Y?,C"
+	"Y_8FZ?@GZODI[/LJ[/LK[?PK[?PK[?PK[?PK[/LK[?PK[?PK[?PK[/LJ[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[/LJ[?PK[/LK[/LJ[/LJ[/LK[/LJ[/LK[/LK[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZODHWNT<J[CH@8RXG*G6L[_MR=<%SMP+"
+	"UN03Y/,B[/HJW>P;SMP+U.$1UN03U>,2U.(2U.(2U.(2T^(1S]P,P<[^K[SJH[#<"
+	"M\\7RV.85Z/<FZODHZ_HIZ_HIZ_HIZ_HIZ_HIZODHZ?@GZODHZ_HIZODHZODIZODH"
+	"ZODHZODHZODHZODIZODHZODHZODHZODHZ?@HZODHZODHZODHZODHZ?@GZ?@HZ?@H"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4DY_8EYO4DYO4DY_4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BY/,BXN`?VN<6Q=+`"
+	"IK+>C9G&F:;3T-\\.X_(AY/(AY/(AY/(AY/(AY/,BY/,BY/,BY/,BY/,BZ/<FYO4D"
+	"X_$@W^T<X>\\>Y/,BY/,BY/,BY/,BY/,BY/,BY/(BY/(AXN`?WNP;V.85TM\\-RM<%"
+	"Q-#_P\\_^P\\_^P\\_^P\\_^Q-#_Q='`Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!"
+	"QM,!QM,!QM,!QM,!Q='`P\\[\\L[[KO\\OYS]T*RM<$R-4#R=8#R-4\"R-4\"R-4\"R=8#"
+	"R-4\"R=8#R=8#R=8#R=8#R=8#R=8#R-4\"R=8#R=8#R=8#R-4\"R-4\"R=8#R=8#R-4\""
+	"R-4\"R-4\"R-4\"H:W<)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,3YOR-4\""
+	"V.85V><6V><6V><7VN@7V^D8W.H9WNP<X.T>X.X>X.X?W^T>W^T>WNP=WNP=W>L<"
+	"W>L<W.L<W.L<W.L;W.H;W>L<W>L<W.L<W.L<FJK?DY_,N<;UPL__R-8%S-H)P](\""
+	"PL_`PL_`PL_`PL_`PL_`P<[_P,W^QM0#R=<'S-H*S]T-SMT-RM@(Q]4%L\\/W)31K"
+	"%R)2*C1C2%.!;WRJD9W-J[CGO\\S[R]D)T=\\/T^$1U^45V>@8VND9V^H:V^H;V^H:"
+	"V^H:V^H:V^H:V^H:V^D9V^H:VNH:VND:VND9VND9VND9V^D9VND9VND9VND9VND9"
+	"VND9VND9VND9VND9VND9VND9VN@9VN@8VN@9VN@9VN@9V>@8VN@8VN@8VN@8VN@8"
+	"V>@8V><8V>@8VN@8V>@8VN@8V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V><7V.86V.86V.86V.86V.86V.86V.86V.86V.86V.86U^45U>,3M,'SBI7#W.H8"
+	"W^T=V.86U^45U^45U^45U^45U^45U^45U^45U^45UN04UN04UN04UN04UN04UN04"
+	"UN04UN03UN04U>,3U>,3U>,3U>,3U.(2U.(2U.(2U.(2U.(2TM`0T=\\/S]T-S=L+"
+	"RM@(Q]4$P]#`OLO[NL?VK[SI)S-D)S-D)S-D)S-D)S-D)S-D6F>7L;[JN\\CWP<[]"
+	"Q=,\"R=<&S=L*S]T,T=\\.TM`/T^$0T^$0U.(1T^$0U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03U^44U^44U^44U^44U^44V.85V.85V.85V.85V.85V.85V.85V><6V><6V><6"
+	"V><6V><6V><6V.85V><6V><6V><6V><6V><6V><6VN@7V><6VN@7V^D8V^D8WNL:"
+	"X>\\>Y/,BYO4EZ/<GZODIZ_HJ[/LK[?PK[?PK[?PL[?PK[/LK[?PK[/LK[/LK[/LK"
+	"[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LK[/LJ[/LK[/LJ[/LK[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ?@GE*#/<GRG>(.M?(BSAY3!J+7D"
+	"Q-(!S=L*UN03Y?0CZ_HJV^H9S=L*U.,2U>,2TM`0RM@'N\\?WJ+7BI+'>PL_]X.X="
+	"Z?<FZODHZODIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODHZODIZODIZODIZODIZODI"
+	"ZODHZODIZODHZODHZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EZ/8EY_8E"
+	"Z/<FY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EY_8EYO4DYO4DYO4DY_4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BX_$@W>H9S=H)LKWJEJ+."
+	"CYS(OLS[X>`?X_(AY/(AY/(AY/(AY/,BY/,BY/(AY/,BY/,BY/,BY/(AW^T<Y/(B"
+	"W^T<U^03W.H9Y/(AY/,BY/,BY/,BY/,BY/,BY/(AXN\\?W>H9UN,2S]P+R-4#Q-#_"
+	"P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM0\""
+	"QM,!QM,!Q='`Q-#_P,SZL+SIQM0!S]P)R=8#R-4\"R-4\"R-4\"R-4\"R=8#R=8#R-4\""
+	"R=8#R-4\"R-4\"R-4#R-4#R-4\"R=8#R=8#R=8#R=8#R-4#R-4\"R=8#R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"9W.C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DN<3R"
+	"V.85V><6V><6V><7VN@7V^D8W.H9W>L;W^T=W^T=W^T>WNP=WNP=WNP=W>L<W>L<"
+	"W>L<W.H;W.L;V^H;W.H;W.H;W.H;W.H;W>L<NLO_?8BUL;[MOLO[P]#`RM@(P]$!"
+	"P,W^O\\S]N\\GYML/SJK?GFZC7HJ[<P,W\\RM@(R=<'R-<'Q]8&R-<'R-8&O<S_35V2"
+	"?(>SJ;?EOLO[Q]4$R]D)SMP+S]T-TM`0T^(2UN45V.<8VN@8V^H:V^H:V^H:V^H:"
+	"V^H:V^H:V^H:V^D:V^D9V^D9VND9VNH:VND9VND9VND9VND9VND9VND9VN@9VN@9"
+	"VND9VND9VND9VN@9VND9VND9VN@9VN@9VN@8VN@9V>@9VN@9VN@8VN@8VN@8V>@8"
+	"V>@8V><8V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86"
+	"V><7V.86V.86V.86V.86V.86V.86V.86U^45V.86U^45U>,3ML/UBY;$RM<&U.(2"
+	"VN@8V.86V.86U^45U^45U^45U^45U^45UN04UN04UN04UN04UN04UN04UN04UN04"
+	"U>,3U>,3UN04U>,3U>,3U>,3U>,3U>,2U>,3U.(2U.(2T^$1TM`0T=\\/S]T-S=L+"
+	"RM@'QM0#P]#`OLO[NL?VL;[J)S-D)S-D)S-D)S-D)S-D)S-D:'2DLK[JN\\CWP<[]"
+	"Q=,!R=<%S-H)S]T,T=\\.T^$0T^$0T^$0T^$0U.(1U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03U^44U^44U^44U^44U^44V.85V.85V.85V><6V.85V.85V.85V.85V><6V><6"
+	"V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6VN@7VN@7VN@7VN@7V^@7"
+	"V^D8W.H9X.X=X_$AY?0CZ/<FZODIZODI[/LK[?PK[?PK[?PK[?PK[?PK[/LK[/LK"
+	"[/LK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LK[/LJ[/LK[/LJ[/LJ[/LJ"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIX.X>9W*?9W&=;WJF?(BTB9;%F:73"
+	"GJO8KKOJQ-(!S-L)V.<5Z/<GZ?@HT^(1R-8$ML/RI+'>JK?ERMD&Y/,BZ?@GZODH"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HJZ_HIZ_HIZ_HIZODIZODIZODIZODIZODIZODIZODI"
+	"ZODIZODIZODHZODHZODHZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@HZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DYO4DYO4DY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BX_(AWNP;T=X-N,3QG:G4CYO'L+WK"
+	"W.L9Y/,BY/(AY/(AY/,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AX.\\>"
+	"V^D7W>L:Y/(AY/,BY/,BY/,BY/,BY/(AX_(AX.X=V^D8U.$0S-H'QM,!P\\_^P\\_^"
+	"P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q='`Q='`Q=,!Q='`QM,!QM,!QM,!QM,!QM,!Q]0\""
+	"QM,!Q='`QM'`O,CULK[KR]@&S=H(R=8#R=8#R-4\"R-4#R-4#R-4\"R-4\"R=8#R=8#"
+	"R-4\"R-4#R=8#R-4\"R-4\"R=8#R=8#R-4\"R=8#R-4#R-4\"R=8#R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"K;GG*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DHZ_>"
+	"V.85V><6V.86V>@7VN@7VN@8V^D9W>L;WNP<W^T=WNP=W^T>W^T>WNP=WNP=W>L<"
+	"W.H;W.L;W.L;W.L;V^H;V^H;W.H;W.L<W>L<U>47;GNMHJ[<N,;UOLO[Q-(!N<?X"
+	"IK3DCYO-=(&R5V*20DQ[55^-?XFVNL;TS]T-R=<'R-8&R-8&R=<'R-<'Q-,#>HJ_"
+	"HJS8P<[^R]D(T-X.TM`0U.(2U>03UN45V.86V.<7VN@9V^D9V^H:V^H:V^H:V^H:"
+	"V^H:V^H:V^H:V^H:VND9VND9VND:VND9VND9VND9VND9VND9VND9VND9VND9VN@8"
+	"VND9VN@9VN@8VN@9VN@9VN@9VN@9VN@8V>@8VN@8VN@8VN@8VN@8V>@8V><8V><8"
+	"V>@8V><7V><7V><7V><7V><7V><8V><7V><7V><7V><7V><7V><7V><7V.86V.86"
+	"V.86V.86V.86V.86V.86V.86V.86V.86U^45UN04U>,3M<+TC9C&RM@'TM`0S]T-"
+	"U>,2V><7U^45U^45U^45U^45U^45U^45UN04UN04UN04UN04U>,3U>,3U>,3U>,3"
+	"U>,3UN04U>,3U>,3U>,3U>,3U>,3U>,2U.(2U.(2T^$1TM`0T=\\/T-X-SMP+S-H)"
+	"RM@'QM0#PL__OLOZNL?VLK_L*S=H)S-D)S-D)S-D)S-D)S-D=H*QLK_KN\\CVP,W\\"
+	"Q-(!R=<%S-H)S]T,T=\\.TM`/T^$0T^$0T^$0U.(1U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03UN03UN03U^44U^44U^44V.85V.85V><6V.85V.85V.85V.85V.85V.85V><6"
+	"V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6VN@7V><6V><6VN@7VN@7VN@7"
+	"VN@7VN@7V^D8W.H9W^T<XN`@Y/,BY_8EZ?@HZ_HI[/LJ[/LK[?PK[/LK[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[/LK[/LK[/LJ[/LK[/LK[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LK"
+	"[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZODHQ-(\"7&:266./8FR8=8&NBI?&H*S:"
+	"K;OIKKWJJ+;DL\\'PR-8$SMP*WNP;W.L:M<'OL;[LT^(0Y_8EZODHZODHZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODIZODHZODIZODIZODIZODIZODI"
+	"ZODIZODIZODHZODIZODHZODHZODHZODHZODHZODHZ?@HZODHZ?@HZ?@HZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?,CY?,CY?0CY?0CX_(AWNP;T]`.O,CVH:W9D9W)J;;DU>02Y/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/(AX_$@W^T<V>85TM`/RM@&Q-'_P\\_^P\\_^P\\_^"
+	"P\\_^Q-#_Q-#_Q-#_Q-#_Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM,!"
+	"Q='`Q-#^N<3QML/PSMP)R]@%R-4\"R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R=8#"
+	"R-4\"R-4\"R=8#R=8#R=8#R=8#R-4\"R-4\"R=8#R-4#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\""
+	"R-4\"QM+`7&B8)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DC)C)"
+	"U^02V><6V><6V><6VN@7VN@8V^D9W.H:WNP<W^T=W^T=W^T>W^T>WNP=W>L<W>L<"
+	"W.H;W.H;W.H;W.H;W.H;W.H;W.H;W>L<W>L<W.L<G*SAAI&_I[7DG*K;?HN]35F+"
+	")C)B(2Q;*31C-4!O.45U14]\\?XJXM<'NT-X.R]D)R-8&R-8&R=<'R-<'QM4%EZ?;"
+	"G*;2QM0#S]T-U.(2U^45V.<7V><8V>@8VN@8V^D9V^D:V^D:V^H:V^H:V^H:V^H:"
+	"V^H:VND9V^D:V^H:VND9VND:VND9VND:VND9VND9VND9VND9VND9VN@9VND9VND9"
+	"VN@9VN@8VN@9VN@9VN@9VN@9VN@9VN@8VN@8VN@8VN@9VN@8V>@8V><8V>@8V>@8"
+	"V>@8V><7V><6V.86V.86V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86"
+	"V.86V.86V.86V.86V.86V.86V.86U^45UN04U.(2L+WOC9G'R]@'T^$1TM`0TM`0"
+	"S]T-V.85V.86U^45U^45U^45U^45U^45UN04UN04UN04UN04UN04U>,3U>,3U>,3"
+	"UN04U>,3U>,3U>,2U>,3U>,3U>,3U.(2U.(2T^$1T^$1TM`0T=\\/T-X-SMP+S-H)"
+	"R=<&Q=,\"P<[^O<KZN<;ULK_L*C9G)S-D)S-D)S-D)S-D)S-DA(^^LK_LN<?UO\\S["
+	"P]#_R-8$S-H)S]T+T-X-TM`/T^$0T^$0U.(1U.(1U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03UN03UN03U^44U^44V.85V.85U^44U^44U^44V.85V.85V><6V><6V><6V><6"
+	"V><6V><6V><6V><6VN@7V><6V><6VN@7V><6V><6V><6V><6VN@7VN@7VN@7VN@7"
+	"VN@7VN@7VN@7VN@7V^D8W.H9WNP;X>\\>Y/(AYO0DZ/<GZODIZ_HJ[/LK[/LK[/LJ"
+	"[/LJ[/LK[?PK[/LK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJZ_HI[/LJ"
+	"[/LJ[/LK[/LJ[/LK[/LK[/LJ[/LJZ_HIZ?@HL\\#Q@Y\"^=8&O97\"=8VV;=H.QCIO*"
+	"I+#@M,'OM,+PJ[GHI[3BP,W\\RM@&TM`.Y/,BZ?@HZ_HIZ_HI[/LJZ_HIZ_HIZ_HJ"
+	"Z_HJZ_HIZ_HJZ_HIZ_HIZ_HIZODIZODHZODHZODIZODHZODIZODIZODIZODIZODI"
+	"ZODIZODIZODHZODHZODHZODHZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@HZ?@H"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY_4EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY/,BX_$@W>L:T=\\-O,CVHZ_;DZ'+J+;CTN$/Y/,BY/,BY/,B"
+	"Y/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/(AXO$@WNP;U^44T-X,R=8$Q-#_PL[]P\\_^P\\_^P\\_^"
+	"Q-#_Q-#_Q-#_Q-#_Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM+`QM,!QM+`"
+	"P\\_]M+_LO<GWS]P*RM<$R-4\"R-4#R-4#R-4\"R-4\"R-4\"R-4\"R=8#R=8#R=8#R-4\""
+	"R=8#R-4\"R-4\"R=8#R=8#R=8#R=8#R=8#R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\""
+	"RM<$E9_/)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D=(&T"
+	"U-`-V.85V><6V><7VN@7VN@8V^D9V^D9WNP<WNP<W^T=WNP=WNP=WNP=W>L<W.H;"
+	"W.H;W.H;V^H;W.H;W.H;W.H;W.H;W>L<W>L<WNP=SMX14V&5.T=X-T-S.$-S1%!^"
+	"76J9=(&PB)7%CYW/35N/252#AI&`LK[LSMP,S=L+R-<'R-8&R-<'R-<'Q]8&K[[R"
+	"CYG$QM0#T-X.U>04V.<7VND9V^D:V^H:V^H:V^H:V^H:VNH:V^H:V^H:V^H:V^H:"
+	"V^H:VND:V^D:V^H:VND:VND9VND9VND9VND9VND9VND9VND9VN@9VN@9VND9VN@9"
+	"V>@8VN@8VN@9VND9VN@8VN@8VN@8VN@8VN@8VN@8VN@8V>@8VN@8V><8V><7V><7"
+	"V><7V><7V><6V.85V.85V><7V><7V><8V><7V><7V><7V><7V><7V.86V><7V.86"
+	"V.86V.86V.86V.86V.86V.86U^45UN04T^$1J+7GD9W+S=H)T^$1TM`0TM`0T^$1"
+	"TM`0T-X.V><7U^45UN04U^45UN04U^45U^44UN04UN04UN04U>,3U>,3U>,3UN04"
+	"U>,3U>,3U>,3U>,3U>,3U>,3U.(2U.(2U.(2T^$1T^$1TM`0T=\\/S]T-S=L+R]D("
+	"R-8&Q-,\"P<[^O,GYN,;TM,'N+#AI)S-D)S-D)S-D)S-D)S-DD)S)LK_LN<?UOLOZ"
+	"P]#_Q]4#R]D(SMP*T-X-TM`/T^$0T^$0U.(1U.(1U.(1U.(1U>,2U>,2U>,2UN03"
+	"UN03UN03UN03U^44U^44U^44V.85UN03R]D'T=\\-U>,2U^43V.85V><6V><6V><6"
+	"V><6V><6V><6V><6V><6V><6VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7"
+	"VN@7VN@7VN@7VN@7V^D8V^D8V^D8W.D9W>L:X.X=X_$AY?0DZ/<FZODIZ_HJ[/LK"
+	"[/LK[/LK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJZ_HI[/LJ[/LJ"
+	"[/LK[/LK[/LK[/LK[/LK[/LK[/LJZ_HIZ/<FN<;UM,+PM<+QJ[CGC)G(9G&@86R:"
+	"<7VLEZ73L\\#NI[/@D9O'H:W8P]#_T^$0XN`?ZODH[?PK[/LK[/LJZ_HJZ_HJZ_HJ"
+	"Z_HJZ_HJZ_HIZ_HJZ_HIZODIZODIZODHZODHZ_HIZODIZODIZODIZODHZODIZODI"
+	"ZODIZODIZODHZODHZODHZODHZ?@HZODHZODHZODHZODHZ?@GZ?@GZ?@HZ?@HZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0C"
+	"Y?0CY?0CY/,BXN`?V^D8SMP*N<7RH:[;E:+/K+GHT^$0Y/,BY?,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BY/,BY/(AXN`?W.H9UN,2SML*R-4#P\\_^P\\[]P\\_^P\\_^P\\_^P\\_^"
+	"Q,__Q=#_Q-#_Q-#_Q='`Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM+`Q='`PLSZ"
+	"L+OHP\\_^S]P)R=8#R-4\"R-4\"R-4#R-4\"R-4\"R-4\"R-4#R-4\"R-4\"R-4#R=8#R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4#R=8#R=8#R-4\"R-4\"R-4\"R-4#R-4\"R-4\"R-4\"R-4\"RM<$"
+	"O,CV-T-T)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4F\"2"
+	"S]P*V>86V><6V><6VN@7VN@8VN@8V^D9W>L;WNP<WNT=WNP=WNP=WNP=W>L<W>L<"
+	"W.H;W.H;V^H;V^D:W.H;W.H;W.H;W.L<W>L<WNT=WNP=L<#TJKCGN<?WN\\GZNL?X"
+	"ML3UM,+RML3UNL?X?8W#1U)`AY/!L;[MRM@'T-X.R=<'R-8&R-<'R-<'R-8&P,[`"
+	"A9\"_Q-(!T-X.U>04V><7V^H:W.H;W.L;W.L;V^L;V^H;V^L;V^L;V^H:V^H:V^H:"
+	"V^H:VND:V^D:VND9VND9VND9VND9VND9VND9VN@9VND9VND9VND9VN@9VN@9VN@9"
+	"VN@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7"
+	"V><7V><7V><7V><6V><6V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V.86V.86V.86V.86V.86U^45U^45S]T.G*G:FJ73S]T,TM`0T=\\/TM`0T^$1T^$1"
+	"T^$1T=\\/T^$0V><7U^45U^45UN04UN04UN04UN04UN04UN04UN04U>,3UN03U>,3"
+	"UN03U>,3U>,3U>,3U>,3U.(2U>,3U.(2U.(2T^$1T^$1TM`0T-X.S]T-S=L+R]D("
+	"R-8%Q-(!P,W]O,GYN,7TM<+O+CIK)S-D)S-D)S-D)S-D)S-DDY[+LK_MN<;TOLOZ"
+	"PL_^Q]4#RM@'S=L*S]T,T=\\.T^$0U.(1U.(1U.(1U.(1U.(1U.(1U>,2U>,2UN03"
+	"UN03UN03U^44U^44U^44U^44V.85U>,3S-D(T^$0T-\\-TM`/UN03U^44V.85V><6"
+	"V><6V><6V><6VN@7V><6VN@7V><6VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7"
+	"VN@7V^D8V^D8VN@7VN@7V^D8V^D8V^D8V^D8V^D8W.H:W^T<XN`@Y?,CY_8FZ?@H"
+	"Z_HJZ_HJ[?LK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ[/LJ[/LK[/LK[/LK"
+	"[/LJ[/LK[?PK[/LK[/LK[/LK[/LJZ_HIX>\\>P]#_R-4#R]D&RM<%Q]0\"I[3C;7FH"
+	"8&N9>H6SDIS(IK+>R]D&V^H9T^$0S=L*SMP+T^$0W>L:YO4D[/LJ[?PK[/LJZ_HJ"
+	"Z_HIZ_HJZ_HIZ_HIZ_HIZ_HIZODIZ_HIZODHZODIZODHZODIZODIZODIZODHZODI"
+	"ZODIZODHZODIZODHZODHZODHZ?@HZODHZODHZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EY_8EYO4DYO4DYO4DY_8E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?,B"
+	"X_(AX.X=V.44R=8#M,#MH*S8FJ;3ML/RU^85Y/,BY?,BY/,BY/,BY?,BY/,BY?,B"
+	"Y/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BY/,BY/,BX_(AX>X=V^D8U.$0S=H(QM,!P\\_^PL[]P\\_^P\\_^P\\_^Q-#_Q-#_"
+	"Q-#_Q='`Q='`Q='`Q='`Q='`QM,!QM,!Q='`QM,!QM,!QM,!Q='`Q-#_OLCVL+SH"
+	"R-8\"S=H'R-4\"Q]0!R-4#R-4\"R=8#R-4\"R-4\"R-4\"R=8#R=8#R=8#R=8#R=8#R=8#"
+	"R-4\"R-4\"R-4\"R=8#R-4\"R-4\"R=8#R-4\"R=8#R-4\"Q]0!R-4\"R-4\"R=8#RM<$RM<$"
+	"?HFY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+SML"
+	"R-0!V><6V><6V><6V><6VN@7VN@8V^D8W.H:W>L;WNP<WNP<WNP=WNP=W>L<W.L;"
+	"W.L;W.H;V^H:W.H;W.H;W.H;W.H;W.L<W>P<WNP=WNP=WNP=WNP=VND9T^(2S=L,"
+	"R-8'QM0$QM0$Q]4%GZ_D0TY]AI*`LK_NQM,\"T=\\/R=<(Q]8&R-<'R-<'R=<'Q-,#"
+	"CIO,O\\OZSMP,U>,3V><7V^H:W.L;W.L;W.L;W.L;V^L;V^H:V^H:VNH:VNH:VNH:"
+	"V^H:V^D:V^D:VND:VND:VND:VND9VND9VND9VND9VN@9VND9V>@9VN@9VN@9VN@9"
+	"VN@8VN@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V><7"
+	"V.86V.86V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86"
+	"V.86V.86V.86V.86U^45UN04Q]8&CIO+IK+@T=\\.TM`0T=\\/TM`0T^$1T^$1T^$1"
+	"T^$1T^$1S]X-U>,3V.86UN04UN04U>,3UN04UN04U>,3U>,3U>,3U>,3U>,3U>,3"
+	"U>,3U>,3U>,3U.(2U.(2U.(2U.(2U.(2T^$1T^$1TM`0T=\\/T-X.S]T,S-H*R]D("
+	"Q]4$Q-(!P,W]O,GXN,7TML+O-T-S)S-D)S-D)S-D)S-D)S-DDI[+LK_LN,;TO<KY"
+	"P<[]QM0\"RM<&S=L)S]T,T=\\.TM`/T^$0U.(1U.(1U.(1U.(1U.(1U>,2UN03UN03"
+	"UN03UN03U^44U^44U^44U^44U^44U.(1P<[^Q-#`S=L*U.(1TM`/U.(1UN03V.44"
+	"V><6V><6VN@7VN@7VN@7VN@7VN@7VN@7VN@7V><6VN@7VN@7VN@7V^D8V^D8VN@7"
+	"V^D8V^D8V^D8VN@7V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8W.H9WNP;XN`?Y/,B"
+	"YO4EZ?@HZ_HI[/LJ[/LK[?PK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK"
+	"[/LK[/LK[/LK[/LK[/LK[/LK[/LJZODHRM@&L\\#MO,CVQ]0!S]P*T]`.R]D'DY_."
+	"<7RFH*O5T-X,Y?,BZ/<FZODHZ_HIZ?@GX.X=U>,2SMP+T=\\.U^44W^T<Z/8F[/LK"
+	"[?PK[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZODIZODHZODHZODHZODIZODIZODHZODHZODH"
+	"ZODHZODHZODHZODIZODIZODHZODHZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<GZ?@GZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CYO4DYO0CY?0CY?0CY/,BXN`?W.D8"
+	"T=\\-P,S[K;GFGJK6I+#=PL__WNP;Y?0CY?,BY?,BY?0CY?,BY/,BY/,BY?,BY?0C"
+	"Y?0CY?0CY?0CY/,BY/,BY/,BY/,BY/,BY/(AY/,BY/,BY/,BY/,BY?,BY/,BY/,B"
+	"Y/(AY/,BX_$@X.T=VN<6TM`.RM<%Q-#_P\\_^PL[]P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_"
+	"Q-#_Q='`Q='`Q='`QM,!QM,!QM,!QM,!QM,!QM,!QM+`QM+`Q,_^N<3RL[_LS-D'"
+	"R]@%R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"R-4\"R-4\"R=8#R-4\"R=8#R=8#R=8#R=8#"
+	"R=8#R-4\"R-4\"R=8#R-4\"R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4#R=8#RM<$R=8#N<7T"
+	"+SMK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"ML+QV><6V><6V><6VN@7VN@7VN@7V^D8W.H9W>L;WNP<WNP<WNP<WNP=WNP=W>L<"
+	"W.H;W.H;W.H;W.H;W.H;W.H;W.H;W>L<W>L<W.L<W>P<W>L<W>L<V^H;V.<8U.,4"
+	"T=`0S]X/S]T.S]X.N<K^0$M\\@HZ\\L+WLPL__TM`/RMD)R-<'R-<'R-<'Q]8&Q-(\""
+	"GJS>M,#MR=<'T^$1U^45VND9W.H:W.L;V^H:W.L;V^H:V^H:V^H;V^H:V^H:V^H:"
+	"V^D:V^D:V^D:VND:VND9VND9VND9VND9VN@9VND9VN@9VN@9VND9VN@9VN@8VN@9"
+	"VN@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V.86U^45"
+	"U^45V.86V.86V.86V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7"
+	"V.86V.86V.86U^45U.,3N,7WAY/\"ML+QTM`0T=\\/T=\\/T=\\/TM`0TM`0TM`0T^$1"
+	"T^$1T^$1T^$1S]T-V.86U^45UN04UN04UN04UN04UN03UN04U>,3U>,3U>,3U>,3"
+	"U>,3U>,3U.(2U>,3U.(2U.(2U.(2T^$1T^$1TM`0TM`0T=\\/S]T-SMP,S-H)RM@'"
+	"QM0#P]#`O\\S\\N\\CWM\\7SM\\/P0$M[)S-D)S-D)S-D)S-D)S-DC9G&LK_KM\\7RO,GW"
+	"P,W\\Q=,!R=<%S-H)S]T,T=\\-TM`/T^$0T^$0U.(1U.(1U.(1U.(1U.(1U>,2UN03"
+	"UN03UN03U^44U^44U^44U^44V.85T^$0P<[^P<[^PL__Q=,\"S]T,U.,2T^$0U>,2"
+	"U^44V><6VN@6VN@7VN@7VN@7V^D8VN@7VN@7VN@7VN@7V^D8V^D8V^D8V^D8V^D8"
+	"V^D8V^D8VN@7V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8W.H9WNP;"
+	"X>\\>X_(AYO4EZ/<GZODIZ_HJ[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK"
+	"[/LJ[/LK[?PK[/LK[/LJ[/LKZ_HIZ/<FJ[?EHZ[:L+OGNL;SP\\_]OLGVE)W(FJ70"
+	"SML)Y?0CZ?@GZODHZ_HIZ_HI[/LJ[/LJZ_HIZ_HIY_8EW>P;U.(1S]T,T=\\.UN03"
+	"W^T<Y_8E[/LJ[?PK[/LJZ_HIZ_HIZ_HIZODIZODIZODIZODIZODHZODHZODIZODH"
+	"ZODHZODHZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<GZ/<FZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4EY_8EYO4DYO4DYO4DYO4DY_8E"
+	"Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?,BXO$@W>L:U.(0QM+`M,'N"
+	"I+#>GJO9ML/QT=`/X_(AY/,BY?,BY?0CY/,BY?0CY?,BY?0CY?0CY?,BY?0CY?0C"
+	"YO4DY_8EY?0CY/,BY?,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"Y/,BX_$@W^T<V.85T-X-R=8$P\\_^P\\_^PL[]P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q='`"
+	"Q='`Q='`Q='`Q='`Q='`QM,!QM,!QM,!Q='`QM,!Q='`Q,_]M+_LN,7RSMP)R]@%"
+	"R-4\"R-4\"R-4\"R-4\"R=4#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"R-4#R-4\"R-4\""
+	"R=8#R-4\"R=4\"R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#RM<$R=4#R-4\"A9&`"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"H*S;V.85V><6V><6V><6VN@7VN@7VN@8V^D9W>L;WNP<WNP<W>P<WNP<WNP=W>L<"
+	"W>L<W.H;W.H;V^H;V^H:W.H;W.H;W>L<W.H;W.H;W.L<W.L<W.H;W.H;V^D:V.<8"
+	"UN46U.,4U.,3U.,3S=T/3EV3?(BVKKKIO\\S[T-X-R]H*Q]8&Q]4%Q=,#P<[_N<;W"
+	"E*+3I;#=K+GJP\\[]U>,2V.87V^H:V^H:V^H;V^H:V^H:V^H:V^H:V^H:VNH:V^H:"
+	"V^H:V^H:V^H:VNH:VND:VND:VND9VND9VND9VND9VN@9VN@9VN@9VN@8VND9VN@9"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V><7V.86S-L+"
+	"Q]0!U^44V.86V.86V.86V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86"
+	"V.86V.86UN04S]T-H:[?CIK(Q-#`TM`0T-X.T=\\/T=\\/TM`0TM`0T^$1T^$1TM`0"
+	"T^$1TM`0T^$1TM`0T=\\/V><7U^45UN04UN04UN04U>,3U>,3U>,3U.(2U>,3U>,3"
+	"U>,3U>,3U.(2U.(2U.(2U.(2U.(2T^$1T^$1TM`0TM`0T=\\/S]T-S=L+R]D)R=<&"
+	"Q=,#PL__O\\S\\N\\CWM\\3SML+N14]^)S-D)S-D)S-D)S-D)S-DC)C&H:S5K;GCO,GW"
+	"P,W\\Q=,!R=<%S-H)SMP+T=X-TM`/T^$0T^$0U.(1U.(1U.(1U.(1U>,2U>,2U>,2"
+	"UN03UN03U^44UN44U^44U^44U^44T=\\.P<[^P<[^P<[^P<[^PL__Q]0#T=\\.U>(2"
+	"TM`/U>,2V.85V><6VN@7V^D8V^D8V^D8VN@7V^D8VN@7V^D8V^D8V^D8V^D8V^D8"
+	"V^D8W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8"
+	"W.H9W>L:X.X=X_$@Y?0CZ/<FZODIZ_HJ[/LK[/LK[?PK[/LK[/LK[/LK[/LK[/LK"
+	"[/LK[/LJ[/LK[/LK[/LK[/LJZ_HIW.L:F*+.GZG6J;3@K[OGI*[8J[7?TM`-YO4D"
+	"Z?@GZ_HIZ_HIZ_HIZ_HI[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZODHYO0CW>L:U.(1"
+	"SMP+S]T,U.(1W.H9Y?,CZODI[/LK[/LJZ_HJZODIZODIZODIZODHZODHZODHZODH"
+	"ZODHZODHZODHZODHZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY?0CY?0CY/,BX>\\?W.H9U.(1Q]4#N,3RJ;;BH:[<L+WL"
+	"RM@'W^X=Y?0CY?0CY?0CY?,BY?,BY?,BY/,BY?,BY?0CY?,BY?,BY?,BY/,BY_8E"
+	"Z/8FY?0CX_(AX.X=Y/,BY/,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/,B"
+	"X_$@W>L:U^44S]P+Q]0\"P\\_^PL[]P\\_^P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_"
+	"Q='`Q='`Q='`Q='`QM,!QM,!QM,!Q='`Q='`Q-#_PLW[L;SHP,W[S]P*R=8#R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4#R-4\"R-4\"R-4\"R=8#R-4\"R-4\"R-4\"R=8#R=8#"
+	"R-4\"R=8#R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"RM8#R=8#R=8#R-0\"O\\KX.45U"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"B93$V>84V><6V><6V><6V><7VN@7VN@8V^D9W.H:WNP<W>P<W>L<W>L<W>L<W>L<"
+	"W>L<W.H;W.H;W.H;V^H:W.H;W.H;W.H;W.H;W.H;W.H;W.L;W.L<W.H;W.H;VND:"
+	"V><8V><8V.87U^86U.05=86[<GVKJ[CGO,GYRM@'P]$!O<KZN,7VL+[NF*769W6G"
+	".T1RFJ30J;CK?(:RLKWKT^$0VN@8V^H:V^H:V^H:V^D:V^H:VNH:V^H:V^H:V^H:"
+	"V^H:V^D9VND9VNH:VND:VND9VND:VN@9VND9VN@9VN@9VN@9VN@9VN@9VN@9VN@8"
+	"VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8VN@8V><7V><7V.86T^(3M<+Q"
+	"O<GXO,?SUN44V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V><7V.86U^45"
+	"U^45U>,3O,G[BI;'I;#?SMP+T=\\/T-X.T=\\/T=\\/TM`0T=\\/TM`0TM`0TM`0TM`0"
+	"T^$1T^$1TM`0T^$1T=\\/U.(2V><7UN04U>,3U>,3U>,3U>,3U.(2U.(2U.(2U.(2"
+	"U>,3U.(2U.(2U.(2U.(2U.(2T^$1T^$1TM`0TM`0T=\\/T-X-SMP,S=L+R]D)R-8%"
+	"Q=,\"PL__OLO[NL?VML3RML'N0$MZ)S-D)S-D)S-D)S-D)S-D?XFWM<#LKKKGI[/<"
+	"N\\CUQ-'`R=<%S-H)SMP+T=X-TM`/T^$0U.(1U.(1U.(1U>,2U.(1U>,2UN03UN03"
+	"UN03UN03UN03U^44U^44U^44U^44S]T,P<[^P<[^P<[^P<[^P<[^PL__P]#`R-8$"
+	"TM`/U.(1TM`.UN03V.85VN@7V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8"
+	"V^D8W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8"
+	"V^D8W.H9W.H9W>L:W^T<XN`@Y?0CY_8FZ?@HZ_HJ[/LK[?PK[/LK[/LK[/LK[?PK"
+	"[?PK[/LK[/LK[/LK[/LK[/LJZ_HIQ=,\"F*/.I+#;I;#:LKSGTM`-Y_4EZ?@HZ_HI"
+	"Z_HJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZODH"
+	"YO4DWNP<U>,2SMP+S=L*T=\\.U^44X.X>Y_8EZ_HJ[?PK[/LJZ_HIZODHZODHZODH"
+	"ZODHZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CY?0CX_(AW^T=V><6T=X-Q='`M\\/QJK?EI;+@M,'PRM@'WNT<Y?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY/,BY?,BY?,BY?,BY/,BY/,BY/,BX>\\>"
+	"Y?,CXN`?WNP;V.85XN`?Y/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AXN`?"
+	"W.H9UN,2S=H)QM,!P\\_^PL[]PL[]P\\_^P\\_^P\\_^Q-#_P\\_^Q-#_Q-#_Q='`Q='`"
+	"Q-#_Q='`QM,!Q='`Q='`QM,!QM,!Q='`Q-#_OLGWK[KGQM+`SML(R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!R-4\"R=8#R-4\"R-4\"R-0\"Q]0!F:33)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	";GJLU>(0V><6V><6V><6V><7V><7VN@7V^D9W.H:W>L;W>P<W>L<W>L<W>L;W>L<"
+	"W.L;W.L;W.H;V^H:V^D:V^D:V^H:V^H;W.H;W.H;W.H;W.H;W.L;W.H;W.H;W.H;"
+	"V^D:VN@9VN@9V>@8U^87E:;=9W.@J+7CM\\3SL;WNGJO;CIO+=8*S3%B*)C%A.4-O"
+	"?XJUM\\/RQ=,#M<3UGZW>I+#@Q=,!V.86V^D:VNH:VNH:V^H:V^D:V^H:V^H:VND:"
+	"V^H:VND9VND:VNH:VN@9VND9VND9VN@9VN@9VND9VN@9VN@9VN@9VN@9V>@8VN@9"
+	"VN@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8V>@8V><7V><7V><7V.86U^45O\\W_U>(0"
+	"V.87O\\W^M<#MUN03V.86V><7V><7V><7V><7V><7V><7V><7V.<7V.86V.86UN05"
+	"R=<(G*G:C)C&OLKYTM`/T-X-T-X.T-X.T=\\/T=\\/T=\\/T=\\/TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0T^$1T-X.U^45U^45U>,3U>,3U>,3U>,3U.(2U.(2U.(2U.(2"
+	"U.(2U.(2U.(2U.(2U.(2U.(2T^$1T^$1TM`0T=\\/T=\\/T-X-SMP,S=L+R]D(R-8%"
+	"Q-(!P<[^O<KZNL?VM</QM<'M.T9W)S-D)S-D)S-D)S-D)S-D=8\"NK;GCML+NO\\OX"
+	"L\\#MM<'MQ]4\"R]D(SMP+T-X-TM`/T^$0U.(1U.(1U.(1U>(2U>,2U>,2U>,2UN03"
+	"UN03UN03UN03U^44U^44U^44U^44S=L*P<[^P<[^P<[^P<[^P<[^P<[^PL__P]#`"
+	"Q-(!RM@'U.(1T^$0TM`/U^44V><6VN@7V^D8V^D8V^D8V^D8W.H9V^D8W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9W.H9V^D8W.H9W.H9W.H9V^D8"
+	"V^D8V^D8V^D8V^D8W.H9W>L:W^T<XN`?Y/,BY_8EZ?@HZ_HJ[/LK[/LK[?PK[?PK"
+	"[/LK[/LK[/LK[/LK[/LJ[/LJZ?@GI*[<J++8ML+LU.(/Y_8EZODHZ_HIZ_HJ[/LJ"
+	"[/LK[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZODHZODHZ/<FX>`?V><7T=\\.S-H)SMP+TM`/V.85X.X=Y_8EZ_DI[/LK[/LJ"
+	"Z_HIZODHZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO0DY?,B"
+	"X_$@X.X=V^D8U.$0R=<%OLOYL[_LJ;;CJ[CFO,GXT-X-X.\\>Y?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY/,BY?,BY?0CY/,BY/,BY/,BY/,B"
+	"X>\\>W>L:U^03W^T<Y/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BY/,BY/(AX>\\>V^D8"
+	"U.$0R]D'Q='`P\\_^PL[]PL[]P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q='`Q='`Q='`"
+	"Q='`Q='`QM,!Q=,!Q='`Q='`Q='`Q-#_N\\;SL[[KRM@%S=H'R=4#R-0!R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!"
+	"Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-0\"R-4\"R=8#R-0\"R-4\"Q]0!Q]+`Q]+`:'2D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"35J-T=X,V>86V><6V><6V><6VN@7VN@7V^D8V^D9W>L;W>L;W>L;W.H;W>L;W.L;"
+	"W.H;W.H;V^H:V^H:V^D:V^H:V^H:V^H:V^H:V^H:V^H;W.H;W.H;W.H;W.H;W.H;"
+	"W.H;V^D:V^D:V^H:V^D:K\\+Z4%N*;'FH8FZ>4UZ//TI[+#=G*#)A0$IW='^KGJK8"
+	"ML/RPL__R]D)TM`0S]\\/O<O^J[GJL;WMS=L)V>@8VND:V^H:VND:V^H:V^H:V^D:"
+	"V^D:VND:V^D:VND9VND9VN@9VN@9VN@9VND9VN@9VN@9VN@9VN@9VN@9VN@8VN@8"
+	"V>@8V>@9VN@8VN@8VN@8VN@8VN@8VN@8VN@8V>@8VN@8V><7V.86T^(4N\\CXVND9"
+	"S-L,Q-(\"O\\S]ML'LUN03V.86V><7V><7V><7V><7V><7V><7V.86U^45T-X.K+CI"
+	"AI/\"JK;ESMP+T=\\/S]T-S]T-T-X.T-X.T=\\/T=\\/T=\\/T=\\/TM`0TM`0T=\\/TM`0"
+	"TM`0TM`0TM`0TM`0TM`0TM`0T=\\/V><7UN04U>,3U.(2U.(2U.(2U.(2U.(2T^$1"
+	"U.(2U.(2U.(2U.(2U.(2T^$1T^$1T^$1TM`0T=\\/T=\\.S]T-SMP+S-H*RM@(R-8%"
+	"Q-(!P,W]O<KZN<;VM</QM<+N-4%R)S-D)S-D)S-D)S-D)S-D;7FIJ[?ALK_KN,3P"
+	"P<WYQ=+`N,7QPL[[SML*T-X-TM`/U.(1U.(1U.(1U.(1U>,2U>,2U>,2UN03UN03"
+	"UN03UN03U^44UN44U^44U^44U^44R]D(P<[^P,W]P<[^P<[^P<[^PL__PL__PL__"
+	"P]#`P]#`Q=,!R]D(U.(1TM`/T=\\.U^03V><5VN@7V^D8W.H9W.H9W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9"
+	"V^D8V^D8V^D8V^D8V^D8V^D8W.H9W.H9WNP;X>\\?Y/(BY_8EZ?@HZ_HI[/LK[?PK"
+	"[/LK[?PK[/LK[/LK[/LK[/LJY?0CO<GSV.83Z/<GZODIZ_HJ[/LJ[/LJ[/LJ[/LJ"
+	"[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODHZ_HIZODHZ?@HYO4DW^X=V.85T-X-S-H)S=L*T-X-U>,3W.H9"
+	"X_$@Z/8FZODI[/LJ[/LJZODIZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?<GZ/<F"
+	"Z?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY?0CX_(AX>\\?W>L;V><6T]`/"
+	"RM<%O\\S[ML/PK;OHK;OHN<?VR]H(VND7Y/,BY?0CY?0CY?0CY?0CY?0CYO0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?,BY?,BY?,BY?0CY?,BY?,BY?,BY?,B"
+	"Y/,BX_$@Y/(AY/,BY?,BY?,BY?,BY/,BY/,BY/,BY/,BY/,BY/(AX.X=VN@7TM`/"
+	"RM<&Q-#_PL[]PL[]PL_^P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q='`Q='`Q-#_Q='`"
+	"Q='`QM,!Q='`QM,!Q='`Q=#_Q,_^M<#MML/PSML(R]@%R-4#R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4#R-4\"R-4\"R=8#R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!"
+	"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!R-4\"R=4\"Q]0!R-0!Q]0!Q]+`QM'`N,/R+3EI)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"+SMMRM8%V><6V><6V><6V><6V><7VN@7V^D8V^D9W.H:W>L;W>L<W.H;W.H;W.H;"
+	"W.H;W.H;W.H;V^D:V^H:V^D:V^H:V^D:V^H:V^D:V^D:V^D:W.H;W.H;W.H;W.H;"
+	"W.H;W.H;W.H;W.H;W.L;S]`3GJS=D)S-AI3$@(Z]@Y&_CYS+GZW;L+[MM\\7UN\\GY"
+	"PL__R-8&SMP,T^$1UN45V>@8T=`1OLW^KKOLM<'QSMP+V><8VND9VND:VND9V^D:"
+	"VND9VND9VND9VN@9VND:VN@9VN@9VND9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@8"
+	"V>@8V>@8VN@8VN@9VN@9V>@8VN@8VN@8VN@8V>@8V><7V.<7U^45P-$#SMP*UN46"
+	"Q-(\"P,W^PL_`O\\S]N</OUN03V.86V><7V><7V><7V.86U^45T-\\/L;[OB97&G:G8"
+	"Q=,\"T=\\.SMP,S]T,S]T-T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/TM`0T=\\/TM`0"
+	"TM`0TM`0TM`0TM`0TM`0T^$1T=\\/U>,2V><7UN04U>,3U.(2U.(2U.(2T^$1T^$1"
+	"T^$1U.(2U.(2U.(2T^$1T^$1T^$1T^$1TM`0T=\\/T-X.S]T-S=L+R]D)R=<'Q]4$"
+	"P]#`P,W]O<GYN<;UM,+PML+N,3UM)S-D)S-D)S-D)S-D)S-D7FJ:J[?@LK[JM\\/P"
+	"N\\?UP,SZRM@%R-8#O<GWRM<$T=\\.T^$0U.(1U.(1U.(1U.(1U>,2U>,2UN03UN03"
+	"UN03UN03UN43U^44U^44U^44UN03RM@'P,W]P<[^P,W]P,W]P<[^PL__PL__PL__"
+	"P]#`P]#`PL__Q-(!QM0#S=L*U>,2TM`/T^$/U^44V><6V^D7V^D8W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9W.H9"
+	"V^D8W.H9W.H9V^D8V^D8W.H9V^D8V^D8W.H9W.H9WNP;X>\\?Y/(BYO4EZ?@H[/LK"
+	"[/LK[?PK[?PK[?PK[/LK[/LKZ_HIZ_HIZ_HJ[/LJ[/LJ[/LK[/LK[/LK[/LK[/LJ"
+	"[/LK[/LJ[/LJ[/LJ[/LJ[/LJ[/LJZ_HIZ_HI[/LJZ_HIZ_HIZ_HIZ_HIZ_HIZ_HI"
+	"ZODIZ_HIZ_HIZ_HIZ_HIZODIZODIZODHZODHZODHZ?@HY_8EX>\\>VN@7T^$0S-H)"
+	"RM@'S-H(S]T,U.(1VN@7X.X=Y/,BZ/<FZODHZ_HIZ_HJZODHZODHZ?@GZ?<GZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"YO4DYO4DYO0CYO0DY?0CY/(AXO$@X.X=W.H9V.85TM`/R]D'Q-#_N\\CWM,+OL+WK"
+	"M,'OP,[]S=P*V>@7Y/,BYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CYO0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?,BY?0CY/,BY?,BY?,BY?0CY/,BY/,B"
+	"Y?,BY?,BY?,BY/,BY/,BY?,BY/,BY/,BY/,BY/,BY/,BX_$AW^T<V><5T-X-R-4$"
+	"P\\_^PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_Q='`Q-#_Q='`Q='`"
+	"Q='`Q='`Q='`Q='_Q-#^P<W[L+OHO,CVS]P)R=8#R-4\"R-4#R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4#R-4\"R-4\"R-4\"R-4\"R-4\"R-4#R-4\"R-4\"R-4\"Q]0!Q]0!"
+	"Q]0!Q]0!Q]0!R-4\"R-4\"R-4\"R-4\"Q]0!Q],!Q],!QM'`QM#_Q=#_CYK*)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DN<7TV><6V>86V><6V><6V><6VN@7VN@7V^D8W.H:W>L;W>L<W.L;V^H;W.H;"
+	"W.H;W.H;V^H;V^H;V^H:V^H:VND:VNH:V^D:V^D:V^D:W.H;W.H;V^D:W.H;W.H;"
+	"W.H;W.L;W>L;W>L;W>L<W>P<WNT=WNP=V^D:TN(2S-L+Q]8&Q-,#Q-(\"Q=,#R-8&"
+	"R]D)S]T-TM`0U.(2U^45V><7V^D9V^H;TN$2O\\[_L+[OL\\'QRM@'U^86VN@9VN@9"
+	"VND9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@9V>@9V>@9VN@9VN@9VN@9V>@8"
+	"V>@8VN@9VN@9VN@8V>@8V>@8VN@8V>@8V>@8VN@8V><7V.<7U.,4N<CYU^86SMT-"
+	"P<[_P,W^P,W^PL_`OLK[O<?UU^45V><7V.87UN05SMP,KKOLBY?&F:73P,W\\T=\\/"
+	"S]T,SMP+SMP,S]T-S]T-T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0"
+	"TM`0TM`0TM`0TM`0T=\\/TM`0T^$1T=\\/V.86U^45U>,3U.(2U.(2T^$1T^$1T^$1"
+	"T^$1U.(2U.(2T^$1T^$1T^$1T^$1TM`0TM`0T=\\/T-X.S]T-S=L+R]D)R=<'QM0#"
+	"PL__O\\S\\O,GYN,7TM<+PML+M+SML)S-D)S-D)S-D)S-D)S-D1U.#K+;@L;WHM<+M"
+	"NL;TOLKYPL[]R=8#T=\\-Q]4\"P\\_\\T-X,U.(1U.(1U.(1U.(1U>,2U>,2UN03UN03"
+	"UN03UN03U^44U^44U^44U^44UN03R=<&P<[^P,W]P,W]P,W]P<[^PL__PL__PL__"
+	"P]#`PL__P]#`Q-(!Q-(!Q=,\"Q]4#SMP+U>,2TM`/T^$0V.85VN@6V^D8W>L:W.H9"
+	"W.H9W.H9W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8W.H9V^D8V^D8W>L:WNP;X.X>Y/(AYO4E"
+	"Z?@HZ_HJ[?PL[?PL[?PL[?PK[?PK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ"
+	"[/LK[/LK[/LJ[/LJ[/LJZ_HI[/LJZ_HJZ_HIZ_HIZ_HJZ_HIZ_HJZ_HIZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODIZODIZODIZODIZODHZODHZODHZODHZODHZ?@GZ?@GZ/<F"
+	"Y?0CW^X=VN@7U.(1SMP*R=@&RM@&S-H(S]T+T^$0U^44W.H9X.\\>X_$AY?0CY_8E"
+	"Z/8EZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EZ/8FY_8EY_8EY_8EY_8EY_8EY_4EYO4DYO4DY?0CY?0CY/(BX_$@X>`?"
+	"W^T<W>L:VN@7UN03T=\\.S-H(Q]4#P<[]N\\CWML3QL\\'NN<;TP]#_S-H)U^44X>\\?"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CYO4DYO4DY?0CY?0CYO4DYO4D"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY/,BY?0CY/,BY?,BY?0CY/,BY/,B"
+	"Y?,BY/,BY?,BY?,BY/,BY/,BY?,BY/,BY?,BY/,BX_$AW^P;U^44T-T,Q]0\"PL[]"
+	"PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q='`"
+	"Q='`Q='`Q-#_P\\_]O<GVK;CDPL[]SML(R-4\"R-4\"R-4#R-4\"R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"R-4\"Q]0!Q]0!"
+	"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"Q]0!Q]+`Q]+`QM#_Q<_^Q,_^OLGX2E6%)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DHZ_>V.85V><6V.86V><6V><6V><7VN@7V^D8W.H:W>L;W>L;W.L;V^H:V^H:"
+	"V^H:W.H;V^H;V^H:V^D:V^D:VND:VNH:V^H:V^D:V^D:W.H;W.H;V^D:W.H;W.H;"
+	"V^H:W.H;W.L;W.L;W.L;W.L;W.L;W.L;V^D:V.87U.(3T=\\0S]T-S]T-S]X.T-X."
+	"T=\\/T^$1U.,3UN04V.86V><8VND9V^H:W.L;W>P<T^(3P](#L;_PL+WMP<[^U.$1"
+	"V><8VN@9VN@9V^D9VN@9VN@9VN@9VN@9VN@9VN@9V>@9V><8V><8VN@9VN@9V>@9"
+	"V>@8VN@9VN@8VN@9VN@9V>@8V>@8V>@8V>@8VN@8V><8U^86RMH,Q='_V.87QM0$"
+	"P,W^P,W^P,W^P,W^P<[_N,7UPLWZUN04T^(2J;?KA)&`FZC6P,S\\T-X.S]T,S=L+"
+	"SMP+SMP,S]T-S]T-T-X.T-X.T-X.T=\\/T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/TM`0"
+	"TM`0TM`0TM`0T=\\/TM`0TM`0TM`0TM`0TM`0VN<7UN04U.(2T^$1U.(2T^$1T^$1"
+	"T^$1T^$1U.(2T^$1T^$1T^$1TM`0TM`0TM`0T=\\/T-X-SMP,S-H*R]D)R-8&QM0#"
+	"PL__O\\S[N\\CWN,7TM<+PM<#L*C9G)S-D)S-D)S-D)S-D)S-D+#AHIK#:L+SGM<+M"
+	"NL;SO<KXP<[]Q='`R-8$T-T*U>(1Q=,!R-8#U.(1U>,2U>,2U>,2U>,2UN03UN03"
+	"UN03U^44U^44U^44U^44U^44UN03Q]4$P,W]P<[^P,W]P<[^P<[^PL__PL__PL__"
+	"PL__PL__P]#`P]#`Q-(!Q-(!Q-(!Q=,\"R-8$T-X-U.(2T=`/U>(1V.85VN@6W.H8"
+	"W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W>L:W>L:W.H9W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8W.H9W.H9W.H9W>L:WNP;X.X="
+	"X_$AYO0DZ?@H[/LK[?PK[?PL[?PL[?PL[/LK[/LK[/LK[/LK[/LK[/LK[/LK[/LJ"
+	"[/LJ[/LK[/LJ[/LJ[/LJZ_HJ[/LJZ_HJZ_HJZ_HIZ_HJZ_HIZ_HIZ_HIZ_HIZODI"
+	"Z_HIZ_HIZ_HIZODIZODIZODIZODHZODIZODHZODHZODHZODHZ?@HZODHZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GY_8EX_(AWNT<V>@7U>,2T-X-S-H)R=<&R-8$R=<%R]@'"
+	"S=L*S]T,TM`/U.(1U^44V><6V^D8W>L:WNP;W^T<W^X=X.X=X.\\>X.\\>X.\\>X.X>"
+	"X.X=X.X=W^T<W^T<WNP;W>L:V^H9VN@7V.85UN03U.(1TM`/S]T+R]D(R-8%Q=,!"
+	"PL[^OLOZNLCVN<;UN\\GWPL[]R-8%SMT,U>03W>P;Y/,BYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO0CYO4DYO4DYO4DYO4DYO4DYO0CY?0CY?0CYO0CYO4DYO4DY_4EY_8E"
+	"YO0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?,BY/,BY?,BY/,BY/,BY?,BY?,BY/,B"
+	"Y/,BY?,BY/,BY?,BY/,BY?,BY/,BY/,BY/,BX_$@WNL:U^03S]P*QM,!PL[]P<W\\"
+	"PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_^P\\_^Q-#_Q='`Q-#_Q-#_Q-#_Q-#_Q='`"
+	"Q='`Q-#_P\\_]N\\;SK;GER-4\"R]@%Q]0!R-4\"R-4\"R-4\"R-4\"R-0\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-0\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R=8#R-4\"R-4\"R-4\"Q]0!R-4\""
+	"R-0\"R-0!R-4\"R-4\"Q],!Q]+`Q]'`QM'_Q=#^Q,_]P\\[]P\\[\\BI7#)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DB)3%V.43V.85V><6V><6V.86V><6VN@7VN@8V^D9W.H:W>L;W.L;V^H;V^H:"
+	"V^H;V^H;V^H;V^H:V^D:V^H:VND:VNH:VNH:V^D:VND:V^D:V^D:V^H:W.H;W.H;"
+	"W.H;W.H;V^H:W.H;W.H;W.L;W.L;W.L;V^H:VN@9V.87U>04U.,3U.(2U.(2U.(2"
+	"U.,3UN04U^46V.86V>@8V>@8VND9VND:VND:V^H:W.L;WNP<U^87R=@)M\\3VK;KJ"
+	"ML+QR-8%U.,3V><8V><8VN@9VN@9VN@9VN@9VN@9V>@9V><8VN@9VN@9V>@8V><8"
+	"V.<8VN@9VN@9VN@9V>@8V>@8V>@8V>@8V>@8V><8V.<7UN45N\\G\\T^(0T^$2PL_`"
+	"O\\S]O\\S]O\\S]OLO\\O<KZOLO[K[KIP\\_]R=<'N,;WOLOZS]T-SMP,S=L+S=L+SMP,"
+	"SMP+SMP,S]T-S]T-S]T-T-X.T-X.T-X.T-X.T-X.T-X.T=\\/T=\\/T=\\/TM`0T=\\/"
+	"TM`0TM`0T=\\/TM`0T=\\/T=\\/TM`0T^$1T=\\/U>,3V><7U>,3U.(2U.(2U.(2U.(2"
+	"T^$1T^$1U.(2T^$1T^$1T^$1TM`0TM`0T=\\/T-X.S]T-SMP,S=L*R]D(R-8%Q=,\""
+	"PL__OLO[N\\CWM\\7SM,'PL+OG)S-D)S-D)S-D)S-D)S-D)S-D)S-DC9C#L+SGM,'M"
+	"N<;SO<GWP<W\\Q='`R-8$S-D(SML*UN,2T^$0Q-'`S-D'U>,2U>,2UN03UN03UN03"
+	"U^44U^44U^44U^44U^44U^44UN03Q=,\"P,W]P,W]P,W]P<[^P<[^P<[^PL__PL__"
+	"P]#`P]#`P]#`Q-(!Q-(!Q-(!Q=,\"Q=,\"QM0#QM0#R=<&T=\\.U>,2TM`/U>,2V.85"
+	"VN@7W.H9W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W>L:W.H9W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9W.H9V^D8W.H9W.H9V^D8W.H9W>L:W>L:"
+	"WNP;X.X=X_$AY?0DZ?@G[/LK[?PL[?PL[?PK[?PK[?PK[/LK[/LK[/LK[/LJ[/LJ"
+	"[/LJ[/LK[/LJ[/LJ[/LJZ_HJ[/LJ[/LJ[/LJZ_HJZ_HJZ_HIZ_HIZ_HJZ_HIZ_HI"
+	"Z_HIZ_HIZ_HIZODIZ_HIZODIZODIZODIZODIZODHZODHZODHZODHZODHZODHZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FY_8EY/,BX>\\>W>L:"
+	"VND8U^44T^$0T-X-S=L*R]D(R=8%Q]4#Q=,\"Q-(!Q-(!Q=,\"Q=,!Q=,!Q=(!P]#_"
+	"PL__PL__P<[^P<[^P<W]P,W\\P,W\\P,W\\P,W\\P<[]Q-'`Q=0\"R-<%S-H)S]X,T^(0"
+	"U^85W.H9X>\\>Y/,BY_8EYO8EY_8EY_8EY_8EYO4DYO4DYO4DY?0DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?0CY?0CY_4EZ/<FYO0D"
+	"Y/,BX.X=Y?0CY?0CY?0CY?0CY?0CY?,BY?0CY?,BY?,BY?0CY?,BY/,BY?,BY?,B"
+	"Y?,BY/,BY/,BY/,BY?,BY?,BY/,BY/,BXN`?W>H9UN,2S=H(Q=(!PL[]PL[]PL[]"
+	"PL[]P\\_^P\\_^P\\_^Q-#_Q-#_P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q=#_Q-#_Q=#_Q=#`"
+	"Q-#_PL[\\ML'MLK[KS-D'R]@%QM+`QM+`Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\""
+	"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!Q]0!Q]0!"
+	"R-4\"R-4\"R=4\"R-+`Q]'`QM#^QM#^Q,_^Q,_]P\\[\\P\\[\\F*+1+#AI)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D9G*EU.$/V><6V><6V><6V><6V><6VN@7VN@8V^D9W.H:W>L;W>L;V^H:V^H:"
+	"V^H;V^H:V^H:V^H:V^D:V^D:VNH:VND:V^H:VND:V^D:V^D:V^H:V^H:V^H:V^D:"
+	"W.H;W.H;V^D:W.H;W.H;W.H;W.L;W.H;W.H;V^H:V>@9V.<8U^86U^86UN46U^45"
+	"U^46V.87V.<7V><8VN@9VN@9VND9VND9VND:VND:V^H:V^H:W.H;W>L<S]X/Q]4%"
+	"O<O\\L+WPJ;?GL\\#OPL[^T-T-U^45V.87V><8V><8V><8VN@9V><8V><8VN@9V><8"
+	"V>@8V><8VN@8VN@9V>@8V>@8V>@8V>@8V>@8V>@8U^86U.,4ML7VUN45RMD*O\\S]"
+	"O<K[O<K[O<K[O<K[N\\CYN\\CXNLCXJ;;DQ-(!RM@'QM0#S=L*S=L+S=L+SMP,SMP,"
+	"S]T,S]T-S]T-S]T-T-X-T-X.T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/TM`0T=\\/T=\\/T=\\/T=\\/TM`0T^$1T^$1TM`0V>87U^45U.(2U>,3U.(2U.(2"
+	"U.(2U.(2T^$1T^$1T^$1TM`0TM`0TM`0T=\\/T-X.S]T-SMP+S=L*RM@(Q]4$Q-(!"
+	"P<[^OLO[NL?VM\\7SM,'OJ[;C)S-D)S-D)S-D)S-D)S-D)S-D)S-D45R+JK7?M+_L"
+	"N<7QO,GVP,S[Q-#`Q]4#RM@&S=H)SMP*T=\\-U^43S]P*Q=+`TM\\.U>,2UN03UN03"
+	"U^44U^44U^44U^44U^44V.85UN03Q-(!P,W]P,W]P,W]P,W]P<[^P<[^P<[^P<[^"
+	"PL__P]#`P]#`Q-(!Q-(!Q=,\"P,W\\OLS[QM0#QM0#QM0#Q]4$RM@&TM`/U.(1TM`/"
+	"U>,2V><5VN@7W.H9W>L:W>L:W>L:W>L:W>L:W>L:W.H9W>L:W.H9W>L:W.H9W>L:"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9"
+	"W.H9W>L:WNP;X.X=XO$@Y?0DZ?@G[/LK[?PL[?PL[?PK[?PK[?PK[/LK[/LK[/LJ"
+	"[/LK[/LJ[/LJ[/LJ[/LJ[/LJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HI"
+	"Z_HIZ_HIZ_HIZ_HIZODIZODIZODIZODIZODIZODHZODHZODHZODHZODHZODHZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<FY_8EYO4DY?0CY/,BX_(AXO$@XO$@XN`?"
+	"X>`@XO$@XO$AX_$AX_(AY/,BY?0CYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EYO4DY_8EY_8EY_8EYO4DYO4DYO4EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?0CY?0CY?0CXN`?YO0CXN`?"
+	"W^T<V^D8XO$@Y?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?,BY?,BY?0C"
+	"Y/,BY?,BY/,BY?,BY/,BY/,BY/,BXN`?W.H9U.(0R]@'Q-#_PL[]PL[]PL[]PL[]"
+	"P\\_^Q-#_P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q='`Q=#_Q-#_"
+	"P<W[LKWJN,3RSML(RM8#R-4\"QM+`Q]+`Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-0\""
+	"R-0\"Q]0\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!Q]0!R-0!Q]0!"
+	"R-4\"R-0!R-+`Q]'`Q<_^Q<_]Q,[]P\\[\\P\\[\\P,SYC9C&*C9F)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D,CYPS=H)V><6V.85V><6V.86V><7V><7VN@8V^D9W.H:W>L;W>L;W.L;V^H:"
+	"VNH:V^H:V^D:V^D:VND:V^D:VND:V^D:V^D:VND:V^D:VND9V^D:V^H:V^H;V^D:"
+	"V^H;V^D:V^H:V^H;W.H;W.H;W.H;V^H:V^H:W.L;V^H:VN@9V>@9V.<8V>@8V.<8"
+	"V><8V>@8VN@9VN@9VN@9VN@9VND:VND:VNH:V^H:VND:V^D:VN@9VN@9Q-,$T=\\/"
+	"V>@8T^(3R=D)O<O]L;_QI[3FIK/CL+WLO,CXR-4%T-X.U>,4U^46V.87V.<7V><8"
+	"V><8V><8V><8V><8V.<7V.<7V.<7V><7V.<7V.87U^46Q=8+PL[\\U.(2P]$!O,GZ"
+	"N\\CYNLCXNL?XN<;WN,;WN,7VN,7VK[WLM\\/QQ]4$Q]4$R]D(SMP,SMP,SMP,S]T-"
+	"S]T,S]T-S]T-S]T-T-X.T-X.T-X.T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0TM`0T^$1T^$1T^$1V><7U>,3U.(2U.(2U.(2"
+	"U.(2U.(2U.(2T^$1T^$1T^$1TM`0TM`0T=\\/T-X.S]T-S=L+S-H)RM@'Q]4$Q-(!"
+	"P,W]O<KZNL?VML3RM,'OI;#=)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D56\"/HJW9"
+	"M\\+NN\\?TO\\OYP\\_^QM0\"R=<%S-D(SML*S]P+S]T,U.(0VN<6R=<$Q]0!U>(1UN03"
+	"U^44U^44U^44V.85V.85V.85UN03P]#`P,W]P,W]P,W]P,W]P,W]P<[^OLO[ML3R"
+	"M,+POLO[PL__Q=,\"Q=,\"Q=,\"N\\CVQ-'`QM0#QM0#Q]4$Q]4$Q]4$Q]4$R]D'T^$0"
+	"U.,1TM`/UN03V><5V^D7W.H9W>L:W>L:W>L:W.H9W>H9W>L:W>L:W.H9W.H9W.H9"
+	"W>L:W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9W.H9V^D8V><6V^D8W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W>L;X.X=XN`?Y?0CZ?<GZ_HJ[?PL[?PL[?PK[?PK[/LK[/LK"
+	"[/LK[/LJ[/LJ[/LJZ_HJZ_HJ[/LJZ_HJZ_HJZ_HJZ_HJZ_HIZ_HIZ_HJZ_HIZ_HI"
+	"Z_HIZ_HIZODIZ_HIZODIZODIZODIZODIZODHZODHZODHZODHZODHZODHZODHZ?@G"
+	"ZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ/<FZ?@GZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FY_8EY_8FY_8FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0CY?0CY?0CY?0CY?0CY/,BX_$@V><6"
+	"V.85W.H9X_(AY?,BY?,BY?,BY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y/,BY/,BY?0CY/,BY/,BY/(AXN\\?V^D8T^$0R]@&P\\_^P<W\\PL[]PL[]P\\_^P\\_^"
+	"P\\_^Q-#_P]#_Q-#_P\\_^Q-#_P\\_^Q-#_Q-#_Q-#_Q=#_Q='`Q-#_Q=#`Q-#_P,OY"
+	"K;CDO\\OYSML)R-4\"Q]0!Q]0!Q]0!QM+`Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\""
+	"Q]0!Q]0!Q]0!Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!Q]0!Q],!R-0!"
+	"Q]+`Q]'_QM#_QM#^Q<_]Q<_]Q,[\\P\\W[O\\KX>H6T)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-DN\\?WV.86V><6V><6V><6V><7VN@7VN@8V^D9W.H:W>L;W>L;W.L;V^H:"
+	"V^D:V^D:V^H:V^D:VND:V^D:V^D:V^D:V^D:VND:V^D:V^D:V^D:V^H:V^D:W.H;"
+	"V^H:V^D:V^H:V^H:V^H;V^D:V^H;W.H;V^H:V^H:V^H;V^D:VND9VN@9V>@9V>@9"
+	"VN@9VND9VN@9VN@9VN@9VND9VND:VND:VNH:VND:VND:V^D:VN@9U^87O,GZTM`/"
+	"V.86V><7VN@8VND9UN86S]X.QM4%NLGZK[WOIK3EH*W=H*W=I;'AJK?GL+SLM<'R"
+	"N<;VO,CXOLO[O\\O\\OLK[O,CXM<'QL;WNL;WKU.(1SMP,L+WQSMP*S=L+O<K[N<;W"
+	"N,7VN,7VM\\7UML3UML/TML/TM</SM<+RKKGGP]#_RM@'Q]4%SMP,SMP,S]T-S]T-"
+	"S]T-T-X-S]T-S]T-S]T-T-X.T-X.T=\\/T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/TM`0TM`0TM`0TM`0TM`0T^$1T^$1T=\\/U^45V.86U>,3U.(2U.(2"
+	"U.(2U.(2U.(2T^$1T^$1T^$1T^$1T=\\/T=\\/T-X.S]T,S=L+S-H*R=<&QM0#P]#`"
+	"O\\S\\O<KYNL?VML/RM,'OGZK6)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,CUN"
+	"A(Z\\M<#KOLGWP<[\\QM,!R=<%S-D(S=H)SML*S]P+S]T,T=X-U^43V.44Q='_R=<#"
+	"UN02V.85V.85V.85V.85V.85U>,2PL__P<[^P<[^P,W]P,W]P<[^O\\S\\K+OI?HVZ"
+	"4UZ)AY2^K[SIP]#_QM0#Q=,\"O,GWP]#`Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$R-8$"
+	"S-H)U.$0U>,2T^$0UN03V><6V^D8W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9"
+	"W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8K;GIG*?7N<7TU>,2W.H9W>L:"
+	"W.H9W>L:W.H:W.H9W.H9W>L:WNP;X.T=XN`@Y?,CZ/<GZ_HJ[?PL[?PL[?PL[/LK"
+	"[/LK[/LK[/LJ[/LK[/LJ[/LJ[/LJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HIZ_HJZ_HIZODI"
+	"Z_HIZ_HIZODIZODIZODIZODHZODHZODIZODIZODHZ?@HZODHZODHZODHZODHZ?@G"
+	"ZODHZODHZ?@HZ?@HZ?@GZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DY?0CYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BXO$@"
+	"Y/,BY/,BY?,BY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?,B"
+	"Y?0CY?0CY?,BY?,BY/(AX>\\>V^@7TM\\.RM<%P\\_^P<W\\PL[]PL[]PL[]P\\_^P\\_^"
+	"P\\_^Q-#_P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_Q='_Q='`Q-#_Q-#_Q-#_P\\_^O,;TK;CF"
+	"Q='`S=H(Q]0!Q]0!QM+`Q='`Q]0!Q]0!R-0\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!"
+	"Q]0!Q]0!Q]0!Q]0!R-4\"R-4\"R-4\"R-0!R-4\"Q]0!R-4\"R-4\"Q]0!Q],!R-,!Q]'`"
+	"Q]'_QM#_Q<_]Q,[\\P\\W[P\\W[P\\W[OLCV;GFH)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-DIK+BV.85V.85V.86V><6V><6VN@7VN@7V^D8V^D9W.H:W>L;W>L;V^H:"
+	"V^H:V^D:VND:VND:VND:V^D:V^D:VN@9VND:VND:V^D:V^H:V^D:V^D:V^D:V^D:"
+	"V^D:V^D:V^H:VND:V^D:V^D:V^D:V^D:V^D:V^D:V^H:V^D:VND:VND:VND9VND:"
+	"V^D:V^D:V^D:VND:VN@9V^D:VND:V^D:VND:V^D:VND9V^D:VN@9SMT0O\\S[U.(2"
+	"U^45U^46U^86U^86V.87V><7VN@9VND9V.<7T^(2S=P,QM4%P,[_N<?WLL#PJ[GJ"
+	"I[7FHK'AH*[?GZW=GZS<GJO;FJ?6G*G9N<7TUN04Q=4&K;KKT-X.Q-(\"N,;VM</T"
+	"M</RM,+RM</TM</TM<+TM,+SM,+SM,+QL+WLO<GXRM@'Q]4$S=L+S]T,S]T-S]T-"
+	"S]T-T-X-S]T-S]T-T-X-T-X.T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/TM`0TM`0TM`0TM`0T^$1T^$1T^$1TM`0VN@8UN04U>,3U.(2"
+	"U.(2U.(2U.(2T^$1T^$1TM`0TM`0TM`0T-X.T-X-SMP,S=L+R]D)R=<&QM0#PL__"
+	"O\\S\\O,GYN<;UM<+QM,#NF:30)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D45V,GZK7OLGWP]#^R-4$R]@'S=H)SML*S]P+S]P+T-T,T=X-TM`.VN<6U.(1"
+	"P\\_\\SMP)V.85V.85V.85V.85U.(1P<[^P<[^P<[^P<[^P<[^PL__O<KZH*W<CYW("
+	"R=@&U.,2P,_^K+KGN,7SQ=,\"R-8$Q-'`Q]4$R-8%Q]4$Q]4$R-8%R-8%R-8%Q]4$"
+	"Q]4$R=8%S-H)U.(1U.(2T^$0U^44VN@6V^D8W.H9W>H9W>L:W>L:W.H9W>L:W>L:"
+	"W.H9W.H9W>L:W>L:W.H9W>L:W.H9W.H9W.H9UN03EZ/4K+CHIK/CGZO;Q=(!W.H9"
+	"W.H9W>L:W.H9W.H9W.H9W.H9W>L:W>L:WNP;X.X=X_$@Y?0CZ/<GZ_HJ[?PL[?PL"
+	"[/LK[/LK[/LK[/LK[/LJ[/LJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZ_HJZODHZODI"
+	"ZODIZODIZODIZODIZODIZODHZODIZODIZODHZODHZ?@HZODHZODHZ?@HZODHZ?@H"
+	"Z?@HZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ?@GZ/<FZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DY_8EY_8EYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DY?0CYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?,BY?,BY?0CY?0CY?0CY?0CY?0CY?,B"
+	"Y?0CY?,BY/,BY/(AX>\\>VN<6TM\\.R-8$P\\_^PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^"
+	"P\\_^P\\_^P\\_^P\\_^Q='`Q='`Q-#_Q-#_Q-#_Q-#_Q=#_Q-#_P\\_]N<3QK[KGRM<%"
+	"R]@&Q]0!Q]0!Q]0!QM+`Q]0!QM+`Q]0!Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"R-4\"R-4\""
+	"Q]0!Q]0!Q]0!Q]0!R-0\"R-4\"R-4\"R-4\"Q]0!R-4\"R-4\"Q]0!QM+`Q]+`Q]'_Q]'_"
+	"QM#^Q<_]Q,[\\P\\W[P\\W[PLSZL[WK8VZ=)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-DAI+#V.44V><6V><6V><6V><6V><7VN@7VN@8V^D9W.H:W>L;W>L;W.H;"
+	"VNH:VND:VND:VND9V^D:V^D:V^D:VND:V^D:V^D:V^D:V^D:V^D:V^D:V^H:V^D:"
+	"VND:V^H:VND:VND:V^D:V^D:V^D:V^D:V^D:V^H:V^H:V^D:V^H:V^D:VND:V^D:"
+	"V^D:V^D:V^D:V^D:V^D:VND9VND:V^D:VND:VND:VND:VN@9V>@9P<`\"R-8%U>,3"
+	"UN45U^46U^46U^46U^46UN45UN45U^45U^45UN45U^45V.86V.86V.86V.86V.86"
+	"U^45U>04U.,3U.(2U.(2U.(2U.(2U>,3X.X>S]T-M<7XP<W\\S=P,O<K[M</SM,+R"
+	"L\\'QL\\'RM,+SM,+SM,+SM,+SL\\'QL\\'PL\\'PN<7TQ]4$R-8%R]D(S]T,S]T-S]T-"
+	"S]T-T-X.T-X-T-X.T-X-T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0"
+	"T=\\/T=\\/T=\\/TM`0TM`0TM`0TM`0T]`1TM`0T^$1U.(2TM`0UN04V><7U>,3U.(2"
+	"U.(2U.(2U.(2T^$1T^$1TM`0TM`0T=\\/T-X.T-X-SMP,S-H*R]D(R-8%Q=,\"PL__"
+	"O\\S\\O,GYN,;TM,+PM<'NCIG&)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D*C9G<'NJM+_KQ='_R=<%S-H(SML*S]P+T-T,T-T,T-X,T=X-TM\\.U>(1"
+	"W.D8S]T+P]#^T^$/V.85V.85T^$0P<[^P<[^P<[^P<[^PL__P]#`P,W]QM0!W^T<"
+	"X_$@XN`?W^X=V.85P]'`LK_MO,GVQ]4$R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%"
+	"Q]4$R-8%R-8%R-8%S=L)U>,2U>,2T^$0U^44VN@7V^D8W.H9W>L:W>L:W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9VN@8H:[?G*G:F*35H*W>PL__N\\?X"
+	"N<;VU>,2W.H9W.H9W>L:W.H9W.H9W>L:W>L:W>L:WNP;X.X=X_$@Y?0DZ/<G[/LK"
+	"[?PL[?PL[/LK[/LKZ_HJZ_HJ[/LJZ_HJZ_HJZ_HJZ_HJZ_HIZ_HIZ_HIZODIZODI"
+	"ZODIZODIZ_HIZODIZODHZODHZODHZODIZODHZODHZ?@HZODIZODHZODHZ?@HZ?@H"
+	"ZODHZ?@HZ?@HZODHZ?@HZ?@HZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY_4EY_4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?,BY?0CY?,BY?0CY?0CY?0CY?,BY?,BY?0CY?0CY?0CY?,BY?0CY?0CY?0C"
+	"Y?0CY/,BY/(AX.X=V><6T=X-R-4#PL[]PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^"
+	"P\\_^P\\_^Q-#_Q-#_Q='`Q='`Q='`Q='`Q-#_Q-#_Q='_P\\_^M+_LL[_LS-H'RM8$"
+	"QM+`Q]0!Q]0!Q]0!QM+`QM+`QM+`R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!R-0\"Q]0!Q]0!"
+	"Q]0!Q]0!Q]0!Q]0!R-0!R-4\"R-4\"R-4\"R-4\"Q]0!Q]0!QM'_Q]'_QM#^QM#^QM#^"
+	"Q,[\\Q,[\\P\\W[PLSZPLSZJ+'@/TMZ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D76J<U>(/V.85V.85V><6V><6V><6VN@7VN@8V^D9W.H:W>L;W>L;W.L;"
+	"V^H:VND:VND:VND9VND9VND:VND:VND:V^D:V^D:VND:V^D:V^D:VND9VND:VND:"
+	"VND:VND:V^D:V^D:VND9VND9V^D:V^D:V^D:VND:VND:V^D:VND:VND:VND9VND:"
+	"V^D:V^D:VND:VND9VN@9V^D:VN@9V^D:V^D:VND:VND9VN@9U^46N<;XSMP,U>04"
+	"UN45U^46U^46U^86UN45UN05UN05UN04U>04U>,4U>,3U.(2U.(2U.(2U.(2T^$1"
+	"T^$1T^$1T^$1T^$1TM`0T=\\/T=\\/U.(1W.H;RM@(K;OLS-H)R-8&M\\7UM,+RM,+R"
+	"L\\'QL\\'RM,+SM,+RL\\'RL\\'QLL#OLL#OJK;FL+KFQ-#`RM@'R=<&SMP,S]T-S]T-"
+	"T-X.T-X.T-X.T-X.T-X.T-X.T-X.T=\\/T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"TM`0TM`0T=\\/TM`0TM`0TM`0TM`0TM`0TM`0T^$1T^$1T^$1TM`0V><7U^45U.(2"
+	"U.(2U.(2U.(2T^$1T^$1TM`0TM`0T=\\/T-X-S]T-S=L+S-H*RM@(R-8%Q-(!PL__"
+	"O\\S\\N\\CWM\\7SM,'NM<'NA(^[)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D.T=WDI[,O\\OYRM<%S=H)S]P+T-T,T-T,T=X-T=X-T=X-T=\\."
+	"T]`/V.44V^D8R-8$QM+`UN02T=\\.P<[^P<[^P<[^P<[^PL__Q]4$VN@6YO0CYO4D"
+	"Y?0CY/,BX_(AXN`?X.X=V.<6PM#`L\\#NOLSYQM0#R-8%R-8%Q]4$R-8%R-8%R-8%"
+	"R-8%R-8%R-8%Q]4$Q]4$R-8%S=L*U>,2U.(1T^$0V.84VN@7W.H9W.H9W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:V><7P,W_H*S=HZ_@LK_OQM0$EJ+5"
+	"J+3GGJO<M\\/SUN03W.H9W>L:W.H9W.H9W>L:W>L:W>L:W>L:WNP;X.X=XN\\?Y/(B"
+	"Z/<G[/LK[?PL[?PL[/LK[/LK[/LKZ_HJZ_HJZ_HJZ_HJZ_HIZ_HIZ_HIZODIZODI"
+	"ZODIZODIZ_HIZODIZODHZODIZODHZODHZODIZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<F"
+	"Z?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/<FY_8EY_8EY_8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?,BY?,BY?0CY?,BY?,CY?,BY/,BY?0CY?0CY?0CY?0CY?,BY?,BY?0CY?,BY/,B"
+	"Y/,BY/(AW^T<V.85T-T,Q]0\"PL[]P<W\\P<W\\P<W\\P<W\\PL[]PL[]P\\_^PL[]P\\_^"
+	"P]#_Q-#_Q='`Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_PLW\\K[KGNL;TS=H(R-4\"Q],!"
+	"Q],!Q]0!Q]0!Q]0!QM+`Q]0!Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"Q]0!R-4\"R-4\"R-0\""
+	"Q]0!Q]0!Q]0!Q]0!Q]0!R-4\"Q]0!R-4\"Q]0!Q]0!R-0\"Q]'`QM#^QM#^Q<_]Q,[\\"
+	"P\\W[PLSZPLSZPLSZFZ73-$!P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D+CMLRM<%V>86V><6V><6V><6V><6VN@7VN@8V^D9W.H:W.H:W>L;W.L;"
+	"V^H:VNH:VND9V>D9VND9VND:VND9VND:VND:V^D:V^D:V^D:V^H:VND:VND9VND:"
+	"VND9V^D:VND:VN@9V^D:V^D:VN@9VND:VND:V^D:VND:VND:VND:VND:VND9VN@9"
+	"VND:VND9VND9VND:V^D:VND9V^D:V^D:VND9VND9VND9VN@9S=T/O,CXT=\\/U>04"
+	"UN45U^45UN45UN45UN45U>45UN45UN04UN04U>,3U>,3U.(3T^(2T^$1T^$1T^$1"
+	"TM`0TM`0T=\\/T=\\/T=\\/T=\\/T=\\/V.86UN04Q=4&LK[LS=L+PL_`M,+SL\\'RM,+R"
+	"M,+QL\\'RM,+RL\\'QLL#PL+[MG*C9@XRYC9:]ML+OQ-#`R=<&R-8%S=L+S]T-S]T-"
+	"T-X.T-X.T-X.T-X.T-X.T-X.T=\\/T=\\/T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0"
+	"TM`0T=\\/TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T^$1T^$1TM`0U>,3VN@8U>,3"
+	"U.(2U.(2U.(2T^$1T^$1T^$1T=\\/T=\\/T-X-S]T-S=L+S-H)RM@'Q]4$Q-(!P<[^"
+	"OLO[NL?WM\\3RM,#MM\\+O=7^M)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D45V,HZ_>Q]4\"S=H)T-T,T-T,T-X,T=X-T=X-T=\\."
+	"TM\\.T]`/U.$0V^@6VN<6PL[\\O<KWP<[^P<[^P<[^P]#`S-H(X.\\>Y_8EZ/<FY_8E"
+	"YO4DYO4DY?0CY?,BY/(AXN`?X.X=V.<6PM#_M</PP,W\\QM0#Q]4$R-8%R-8%R-8%"
+	"R-8%R-8%R-8%R-8%Q]4$Q]4$QM0#Q]4$SML*U>,2U.,2U.(1V.85VN@7V^D8W.H9"
+	"W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:TM`0HZ[?GZO<E:'3H:[?PL_`GJO<"
+	"D9S-GJO<I++CR-8%Q]0#U>,1W.H9W.H9W>L:W.H9W>L:W>L:W.H9W>L:W>L:W^T<"
+	"XN`@Y?,BZ?<G[/LK[OTM[/LK[/LK[/LJ[/LJZ_HJZ_HJZ_HIZ_HJZ_HIZ_HIZ_HI"
+	"Z_HIZODIZ_HIZODIZODIZODIZODIZODIZODHZODHZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EZ/8EY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CYO4DY?0CYO4DYO0CYO0CY?0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?,BY?0CY?0CY?0CY?,BY?0CY?,BY?,BY?,BY?,BY?0CY?,CY?0CY?0CY?0CY/,B"
+	"X_(AW^T<U^44S]P+QM,!PL[]P<W\\P<W\\PL[]P<W\\P<W\\PL[]PL[]PL[]P\\_^P\\_^"
+	"P\\_^Q-#_Q-#_Q-#_Q='`Q-#_Q-#_Q-#_Q-#^O\\KXJ[;CP,W[S=H(Q]0!QM+`QM+`"
+	"Q]0!Q]0!Q]0!QM+`Q]0!Q]0!Q]0!R-4\"R-4\"R-4\"R-4\"R-4\"Q]0\"Q]0!Q]0!Q]0!"
+	"Q]0!Q]0!Q]0!Q]0!R-0!R-0!Q]0!Q]0!R-0\"Q]0!QM'_QM#^QM#^Q,[\\P\\W[P\\W["
+	"P<OYP<OYOLCVAI\"^*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-DLK[NV>86V>86V><6V><6V><6VN@7V><7VN@8V^D9W.H:W>L;W.L;"
+	"V^H:VNH:VND9V>D9VND:VND9VND:VND:VND:VND:VND9VND:VND:VNH:VND:VND9"
+	"VND9VND9VND:V^D:VND:VND9VN@9VND9V^D:VND9VND:VN@9VN@9VN@9VN@9VN@9"
+	"VND9VND9VND9VND9VN@9V^D:V^D:V^D:V^D:VN@9VN@9V><8O\\\\\"Q-(!T^$1U>04"
+	"U^45UN45UN04UN04U>05U>05U>04UN04U>04U>,3U>,3U.(2U.(2T^$1T^$1TM`0"
+	"TM`0TM`0T=\\/T=\\/T=\\/T=\\/T=\\/W.L:T-X/NLG]P<WZR]D)N\\GZL\\'RL\\'QL\\'Q"
+	"LL#PLL#PKKSLFZC:@X^_>X>TEJ',K[SJN<7UP,S\\QM0#RM@'RM@'S-H*S]T,S]T,"
+	"T-X.T-X.T-X.T-X.T=\\.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0"
+	"T=\\/TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T^$1T^$1T^$1U.(2TM`0V><7V.86"
+	"U>,3U.(2U.(2T^$1T^$1TM`0TM`0T=\\/T-X.SMP,S=L*S-H)R=<'QM0#P]#`P,W]"
+	"O<KZNL?VM\\/RL[_MN<3Q7VN9)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G;WNJM\\+PS-D(S]T+T-T,T=X-T=\\.T=\\."
+	"TM\\.TM`/T]`/T]`/UN02W.D8R]D(P<[^PL__Q-'`T^$0Y/,BZ/<FY_8EZ/<FY_8E"
+	"Y_8EY_8EYO4DYO4DY?0CY?0CY/,BX_$@X.\\=V.<6P<_^M\\3RPL_^Q]4$R-8%R-8%"
+	"R-8%R-8%R-8%Q]4$Q]4$Q]4$QM0#QM0#QM0#R-8$SMP+UN03U.(1U.(1V.85VN@7"
+	"W.D8W>L:W>L:WNP;W>L:WNP;W>L:W>L:W>L:SMP,HZ_?I;+DFJ?8I;+CJK;GH[#A"
+	"HJ_AGJO<I+'AJ[CJFZ?8H*S=M<'PU.$0W.H9W>L:W.H9W>L:W.H9W.H9W.H9W.H9"
+	"W>L:W^T<X>\\>Y/,CZ/<G[/LK[?PL[/LKZ_HJZ_HJZ_HJZ_HJZ_HIZ_HIZ_HJZ_HJ"
+	"ZODIZODIZODIZ_HIZODIZODIZODIZODHZODHZODIZODHZODHZODHZODHZODHZ?@H"
+	"ZODHZ?@HZ?@HZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8FZ/8FY_8EY_8EY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DY_8EY_8EYO4EYO4DYO4DYO4DYO4D"
+	"Y?0DYO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?,CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BX_$@"
+	"WNP;U^44SML)Q='`P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]P\\_^P\\_^PL[]P\\_^P\\_^"
+	"Q-#_Q-#_Q-#_Q-#_Q='`Q-#_Q='`Q,_^O,?UJK;BQ]0\"R]@&Q]0!QM,!QM,!Q]0!"
+	"Q]0!QM+`QM+`QM+`Q]0!Q]0\"R-0\"R-4\"R-0\"R-4\"Q]0\"R-4\"R-4\"Q]+`Q]0!Q]0!"
+	"Q]0!Q]0!Q]0!Q]0!Q]0!R-0!Q]0!R-0\"R-0\"Q]'_Q=#^Q<_]Q,[\\P\\W[PLSZP<OZ"
+	"P,KXNL3R;7BF)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-DE*#1V.85V><6V><6V><6V><7VN@7VN@7VN@8V^D9W.H:W>L;W>L;"
+	"V^H:VNH:VND:VND9VND9VND9VND9VND9VND9VND:VND9VN@9VND:VNH:VND9VND9"
+	"VND9VND:VND:VND9VN@9VND9VN@9VN@9V^D:VND:VND9VN@9VN@9VN@9V>@8VN@9"
+	"VN@9VN@9V>@9V>@9VND9VND9V^D:VN@9VND9VND9VN@9UN46M\\7WR]D(U.(2U>04"
+	"UN04UN04U>04UN04U>04U>05U>,4U>,3U>,3U.(3U.(3U.(2T^$2T^$1T^$1T^$1"
+	"TM`0T=\\/TM`0T=\\/T=\\/T-X.TM\\/W>L;SMP,LL'TQ]4#QM0#ML3SL+[NJ+3DF*;5"
+	"AY+!>82Q?(>SE:#,K+GFM,'ON,7TO\\S\\PL__Q=,\"R-8&R]D(S-H)S=L+S]T-S]T-"
+	"T-X.T-X.T-X.T-X.T=\\.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0TM`0T=\\/"
+	"TM`0TM`0TM`0TM`0T^$1TM`0TM`0TM`0T^$1TM`0T^$1T^$1U.(2TM`0U.(2V^D9"
+	"UN04T^$1U.(2T^$1T^$1TM`0TM`0T=\\/S]T-SMP,S=L*S-H)R=<&QM0#P]#`P,W]"
+	"O<KZN<;UML+QM,#MN\\7Q15!`)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-4!QC)C'Q-#_SML*T-T,T=X-T=\\."
+	"TM`/TM`/T]`/T^$0U.$0U.$0R]D(PL__Q]4$W.H9Y_8DZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EY_8EY_8EY_8EY_8EYO4DYO4DY?0CY/,BX_$@X>\\>V.85P<__O<OZQ]8$R-8%"
+	"R-8%R-8%QM0#Q]4$QM0#QM0#QM0#QM0#QM0#QM0#QM0#R-4$S]P+U>,2U.(1U.$0"
+	"V.85VN@6W.H8WNP;WNP;WNP;WNP;WNP;WNP;W>L;T=`0L+[PGZS<E:'2M,'SGZO="
+	"DY[0HZ[AN<7VL;[PH:[@FZ?8IK+DHZ_?V>85W>L:W.H9W.H9W>L:W.H9W>L:W.H9"
+	"W.H9W>L:W>L:W^T<X>\\?Y/,CZ?<G[/LK[OTM[/LK[/LJZ_HJZ_HJZ_HIZ_HJZ_HJ"
+	"Z_HIZ_HIZ_HIZODIZODIZODIZODIZODIZODHZODIZODHZODHZODHZODHZODHZODH"
+	"ZODHZ?@HZ?@HZODHZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z?@GZ/<FZ/<FZ?@GZ/<GZ/<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FY_8EZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY_8EY_8E"
+	"Z/8EY_8EY_8EY_8EY_8EYO4DY_8EYO4DYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CY?0CY?0CYO4DY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?,BY?0CY?0CY?0CY?0CY?0CY?0CY?,BY?0CY?0CY?0CY?0CY?,BX_$@W>L:"
+	"UN03S=L)Q-#`P<W\\P<W\\PL[]PL[\\PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_^"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_P\\_]N,/PKKKFRM<%RM<$Q]0!Q]0!Q]0!QM,!Q]0!"
+	"Q]0!QM+`Q]0!Q]0!R-4\"R-0\"R-4\"R-4\"R-4\"Q]0\"Q]0\"R-4\"R-4\"R-0\"Q]0!Q]0!"
+	"Q]0!Q]+`Q],!QM+`Q]0!Q]0!Q]0!R-0!Q]'`QM#^Q<_]Q,[\\P\\W[P<OYP<OYP<OY"
+	"M+[K7&>6)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D;'BIU^43V><6V><6V><6V><6V><7VN@7VN@8V^D9W.H:W.H:W>L;"
+	"W.L;V^H:VND:VND9VND9VN@9VN@9VND9VND9VND9VND9VN@9VND9VND9VND9VND9"
+	"VND9VND9VND:VND9VN@9VN@9VN@9VND9VN@9VND9VN@9VN@9V>@9V>@9V>@9V>@9"
+	"VND9VN@9V>@9VND9VN@9VN@9VN@9VND9VND9VN@9VN@9S]X/N,7USMP+U.(2U>,3"
+	"U>,3UN04U>04U>04U>04U>04U.,3U>,3U>,3U.(2U.(2U.(2T^$1T^$1TM`0TM`0"
+	"TM`0T=\\/T=\\/T=\\/T=\\/T=\\/U.(2VN@8S=L+M<7XEJ'0BI7\"?HJW?(FVB)3!F*73"
+	"JK;CLL#ON,7TN<;TN\\CWP\\__Q-(!Q=,\"Q]4$R=8&RM@'S-H)S=L+S=L+S]T-S]T-"
+	"S]T-T-X.T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0T=\\/TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T^$1T^$1T^$1U.(2U.(2T=\\/V.86"
+	"V.86U>,3U.(2T^$1T^$1TM`0T=\\/T=\\/S]T-SMP,S-H*R]D)R=<&QM0#P]#`P,W]"
+	"O,GYN,7TM<'OL\\#MN,+N+#AI)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4U^/H:W<R=8$S]T+T=X-"
+	"TM`/TM`/TM`/T]`/T^$0T]`/R]D(S=L)XO$@Z/<FZ/<FY_8EY_8EY_8EZ/<FZ/<F"
+	"Z/<FY_8EZ/<FY_8EY_8EY_8EY_8EY_8EYO4DY?0CY/,BY/(AWNT<RMD(O\\S[Q]4$"
+	"Q]4$QM0#QM0#QM0#QM0#QM0#QM0#QM0#QM0#QM0#QM0#Q]4$QM0#R-8%S]T,UN03"
+	"T^(1U.(0V><5V^D7W.H9W>L:WNP;WNP;WNP;WNP;WNP;W>L:U>03TN$0U>,2H:W>"
+	"G:G;HJ_ANL?XK+GLG:K;I[3EIK/EI;+CVN@7SML+L[[NTM`/W.H9W>L:W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W>L:W^T<X>\\?Y?,CZ?@H[?PL[?PL[/LJZ_HJZ_HJZ_HJZ_HJ"
+	"Z_HJZ_HIZ_HIZ_HIZODIZODIZODIZODIZODIZODHZODHZ?@HZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<F"
+	"Z/<GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ/<FZ/<FZ/<GZ/<FZ?@GZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/8EY_8EZ/<FY_8EY_8EY_8EY_8E"
+	"Z/8EY_8EY_8EY_8EY_8EYO4DYO4DY_8EYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CY?0CY?0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CXN`?WNL:U>,2"
+	"S=H(Q-#_P<W\\P<W\\P<W\\PL[]P<W\\PL[]PL[]PL[]PL[]P\\_^P\\_]P\\_^P\\_^Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_P\\_^LKWJL[_MS=D'R=4#QM+`Q]0!Q],!Q]0!QM+`QM+`"
+	"QM+`Q]0!Q]0\"Q]0!R-4\"R-4\"Q]0!Q]0!Q]0\"R-4\"R-4\"R-4\"R-4\"Q]0!Q]0!Q],!"
+	"Q]+`Q]+`QM+`Q],!Q],!Q]0!Q],!QM'_Q<_]Q<_]Q,[\\P\\W[PLSZP<OYP,KXJ;/A"
+	"2%*!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D.$5VT-T,V><6V>86V><6V><7VN@7VN@7VN@8V^D9V^D9W.H:W>L;"
+	"W.L;V^H:VND:VND9VND9VN@9VN@9VND9V>D9V>@9V>@9V>@8VND9VND9VN@9VND:"
+	"VND9VND9VN@9VN@9V>@9VN@9VN@9VND9VND:V>@9VND9VN@9VN@9VN@9V>@9VND9"
+	"VN@9VND9VND9VND9VN@9VND9VND9V>@9VN@9VN@9V><8P=$#P,W\\T-X-U.(2U>,3"
+	"U>,3UN04U>,3U>,3U>,3U>,3U.,3U.(2U.(2U.(2U.(2T^$2T^$1TM`0TM`0TM`0"
+	"TM`0T=\\/T=\\/T=\\/T-X.T-X.V.85U.,3SMP,SMP+R]D)P<[_O,KZN,;UN<;UNL?V"
+	"O,CWP\\__O\\S\\QM0#Q=,\"Q]4$QM0#R=<&RM@'RM@(S-H*S=L*S=L+SMP,S]T-S]T-"
+	"S]T-T-X.T-X.T=\\/T=\\/T=\\/T=\\/T=\\/TM`0TM`0TM`0T=\\/TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T^$1TM`0T^$1T^$2U>,3T^(2T^$0"
+	"V^D9UN04U.(2U.(2T^$1T^$1TM`0T-X.S]T-SMP,S-H*R]D)R-8&Q=,\"PL__O\\S\\"
+	"N\\CXM\\3SM,#NM,#NL;KG)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D8V^>LK[KSML)"
+	"T=X-TM`/T]`/T^$0T^$0U.$0V^D7Z?<EZ_@GZO@GZ?@GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Y_8EZ/<FZ/<FY_8EY_8EZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY/,BW^T<U.(2N\\GXP<[^"
+	"QM0#Q=,\"Q=,\"Q=,\"Q=,\"Q=,\"Q=,\"Q=,\"QM0#QM0#QM0#Q]4$Q]4$Q]4$Q]4$R=<&"
+	"T-T,UN03U.(1U.(1V>85V^@7W.H9W>L:WNP;WNP;WNP;WNP;WNP;WNP;W>L:P]$!"
+	"GJS<HK#CH*[>H[#BGJO<J;;GH[#AJ+3EV><7IK/FJ+;GJ+3EVN@7W>L:W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W>L:W^T<XN`?Y?,CZ/<G[?LL[?PL[/LK[/LJZ_HJ"
+	"Z_HJZ_HIZ_HJZ_HIZ_HIZODIZODIZODIZODIZODIZODHZODHZODHZODHZODIZODH"
+	"ZODHZODHZ?@HZ?@GZODHZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<G"
+	"Z/<GZ/<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<GZ/<FZ?@GZ?@GZ?@GZ/<FZ?@G"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8EY_8EY?0CY?,CY?,CY?0CYO0DY_4E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,CY/,BX_$@W>L:U>(1S-D("
+	"Q-#_P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_PLW\\K+?DN<7SS-D'R-4\"Q],!QM,!QM,!QM+`QM+`QM+`QM+`"
+	"Q],!Q]0!Q]0!Q]0!R-4\"Q]0\"Q]0\"Q]0!Q]0\"R-4\"R-0\"Q]0!Q]0!Q]0!Q]+`QM+`"
+	"QM'_QM+`QM+`Q]+`Q],!Q]+`QM#^Q<_]Q,[\\P\\W\\PLSZP<OYP<OYP,KXFZ32-4%Q"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-DNL;VV><6V><6V><6V><6V><7VN@7VN@8V^D9V^D9W.H:W.H:"
+	"W>L;W.H:V^H:V>D9VND9VN@9VN@9VN@9VND9VN@9VN@9VN@9VN@9V>@9VN@9VND9"
+	"VND9VND9VND9VND9VN@9VN@9VN@9VN@9VN@9VN@9VN@9V>@9V>@8V>@8V>@9V>@9"
+	"VND9VN@9VND9VND9VND9VN@9VN@9VN@9VN@9VN@9U^46N<?XQ]0$T=\\/U.(2U>,3"
+	"U>,3U>,3U>04U>,3U>,3U>,3U.(2T^(2T^$1T^$1T^$1T^$1T^$1TM`0TM`0TM`0"
+	"TM`0T=\\/T=\\/T=\\/T-X.T=\\/V><7T=\\/SMP,SMP,S=L*R=<'R-8&Q]0$PL_^Q]0#"
+	"PL__RM@'QM,\"R-4%RM@'R=<&R=8&R]D)S-H*S-H*S-H*S=L+SMP,S]T-S]T-S]T-"
+	"T-X.T-X.T-X.T=\\/T=\\/T=\\/TM`0T=\\/TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T^$1T^$1U.(2U>,3TM`0"
+	"U^44V><7U>,3T^$1T^$1TM`0TM`0T=X/S]T-SMP,S-H*RM@(R-8%Q=,\"PL__OLO["
+	"N\\CWML/QM,#NM<'OI['=)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIK@HZ]"
+	"P\\[]T-T,TM`/U.$0UN,2X.X<YO0CY/$?X^`>Y/$>Y/(?Y/(?Y_0BZO@FZ?<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ?@GZ/<GYO4DXN`?VN@7S]T,O<KZK;OI"
+	"P]#`Q=,\"Q=,\"Q-(!Q=,\"Q=,\"Q=,\"QM0#QM0#QM0#QM0#Q]4$Q]4$Q]4$R-8%R-8%"
+	"R-8%RM@'T-X-UN03U.(1U.(1V><6V^D8W>L:W>L:WNP;WNP;WNP;WNP;WNP;WNP;"
+	"T^$1LL#RHJ_@L;[PH:[>G:K<GJO<G:C:S=L+EJ+4H*W?I;'CT-X-W>L:W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W>L:W^T<X.X=Y/,BZ?<G[?LK[OTM[/LK"
+	"[/LJZ_HJZ_HJZ_HIZ_HIZODIZODIZODIZODIZODIZODHZODIZODHZODHZODHZODH"
+	"ZODHZODHZODHZ?@GZ?@GZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<GZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/8EYO4DXN`?W>L:VN@7V><6V^D8W.L:X.X=XN`?Y/,CYO4D"
+	"YO4EZ/<FZ/<FZ/<GY_8FY_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CY?0CY?0CY?0CY?0CY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY/,BXO$@W>H:U>,2R]D'P\\_^"
+	"P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^Q-#^Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_P,OYJK7AP,SZS-D&Q]0!Q]0!Q]0!Q]0!Q]0!Q],!QM'_QM'`QM+`"
+	"Q]0!Q]0!Q]0!Q]0!R-4\"R-4\"Q]0!Q]0!Q]0\"Q]0\"Q]0!Q]0!Q]0!Q],!Q]0!QM+`"
+	"QM+`QM+`QM+`Q],!Q]'`QM#^Q<_]P\\[\\P\\W[PLSZP<OYP<OYOLCVB)*`*35F)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-DGJK:V.85V.85V><6V><6V><7VN@7VN@7VN@8V^D9W.H:W.H:"
+	"W>L;W.H:VNH:VND:VND9VN@9VN@9VN@9VN@9V>@9V>@9V>@9V>@9VN@9V>@9VND9"
+	"V>@9VND9V>D9VN@9V>@9V>@9VN@9VN@9V>@9V>@9V>@9V>@9V><8VN@9V>@9VN@9"
+	"VN@9VND9VN@9VN@9VN@9VN@9VN@9VN@9V>@9V><8T=`2M,+QRM@(T=\\/T^$1U.(2"
+	"U>,3U>,3U>,3U>,3U>,3U.(2U.(2U.(2T^$1T^$1T^$1TM`0TM`0TM`0T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T-X.T=\\/V.86S]T-SMP,SMP,S=L+S-H*S-H*R=8&Q]4$S-H*"
+	"R=<&Q]4%R-8&R=<&RM@(R]D)S-H*S=L+S=L+S=L+SMP,SMP,S]T-S]T-T-X.T-X."
+	"T-X.T-X.T=\\/T=\\/TM`0T=\\/TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0"
+	"TM`0TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/TM`0TM`0TM`0TM`0U.(2U>,3U.(2"
+	"TM`/VN@8UN04U.(2T^$1TM`0T=\\/T-X.S]T-SMP,S-H*RM@(R-8%Q-(!P<[^OLO["
+	"N\\?WM</QM,#NML+PFZ72)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"252$GJK9RM<%U^03Y/(AZ/<FZ/<FZ?@GZ/<FZ/<FZ/<FZ/<EY?,BXN`<X_$<Z?<E"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FZ?@GZ?@GZ/<GY?0CX>\\?V^D8TM`/Q=0\"L+[LDZ',"
+	"P<[^Q-(!Q-(!Q=,\"Q=,\"Q=,\"Q=,\"Q=,\"QM0#QM0#QM0#Q]4$Q]4$R-8%R-8%R-8%"
+	"R-8%R=<&R=<&R]D(T=\\.U^44U.(1U.(1V><6V^D8W>L:WNP;WNP;W^T<WNP;W^T<"
+	"WNP;W>L:UN03U.(2I+#AH[#CJ;?HH*S=K;KLI;+CC9G+H[#CPL__W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9V^D8W.H9W>L:W^T=XN`@Y/,CZODI[OTM"
+	"[OTM[/LKZ_HJZ_HJZ_HJZ_HIZODIZODIZ_HIZODIZODIZODIZODIZODHZODHZODH"
+	"ZODHZODHZ?@HZ?@HZODHZODHZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<FZ?@GZ?@GZ?@GZ/<GZ/<FZ?<GZ?<GZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FZ/<FY_8EX_(AV>85T-X,SMP+T=\\.U.(1V.85V^D9WNP<X>`?Y/,CYO4EZ/<G"
+	"Z/<GZ?@HZ?@HZ?@HZ?@HZ?@HZ/<GY_8FY_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DY?0CY?0CY?0CYO0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?,BX_$@W.H9U.(1R]@'P\\_^P<W\\"
+	"P<W\\PL[]PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^Q-#^Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_P\\_^O<CVJ;/@QM+`RM<%Q]0!Q]0!Q]0!Q],!QM,!QM,!QM+`Q],!Q],!Q]0!"
+	"QM+`QM+`Q],!Q]0!R-4\"R-4\"Q]0!Q]0!Q]0!R-4\"Q]0!Q]0!Q]0!Q]0!QM+`Q]+`"
+	"QM+`Q],!Q]0!Q]'_QM#^Q<_]Q,[\\P\\W[PLS[P<OYP<OYNL3R<WVK)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D>(6VV.44V><6V><6V><6VN@7VN@7VN@7V^D8V^D9W.H:W.H:"
+	"W.H:W.H:V^H:V^H:V>D9VND9V>@9VN@9V>@9V>@8VN@9VN@9VN@9V>@9V>@9V>@9"
+	"V>@8VN@9VN@9V>D9V>@9V>@9VN@9VN@9V>@8VN@9V>@9V>@9V>@9V>@9V>@9V>@8"
+	"VN@9V>@9VN@9VN@8VN@9VN@9VN@9V>@9V>@8V.87Q]8(NL?VS=L*TM`0U.(2U>,3"
+	"U.(2U.(2U.(2U>,3U.(2U.(2T^$1T^$1TM`0T^$1TM`0TM`0TM`0T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T=\\.U>,3SMP,SMP,SMP,SMP,SMP+T-X.S]T,R-8%R]D("
+	"RM@'R]D(S-H*S=L+S=L+S=L+S=L+SMP,SMP,S]T-S]T-S]T-S]T-T-X.T-X.T=\\/"
+	"T=\\/T-X.T=\\/T=\\/TM`0T=\\/T=\\/TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T=\\.T-X.T-X."
+	"T-X.T-X.S]P,SMP+SMP,SMP+S=L+S=L*S=L+S=L*S=H*S=H*S=L+S]T-TM`0U>,3"
+	"T-X.U.(2V><7U>,3T^$1T^$1T=\\/T-X.S]T-S=L+S-H*RM@'Q]4$Q-(!P<[^O<KZ"
+	"NL?VML+QM<'ON,3QB9/!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D/DEYQ=,!Y_4DZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<FZ/<FY_8DX.T:"
+	"Y?(?Z?@GZ/<FZ/<FZ/<FZ?@GZ?@GZ/<FY?,BX.X=VN@7T=\\.Q]4$M\\7TGZ[:B);!"
+	"P,W\\P]#`Q-(!Q-(!Q-(!Q=,\"QM0#QM0#QM0#QM0#Q]4$Q]4$R-8%R-8%R-8%R=<&"
+	"R=<&R=<&R=<&RM@'RM@'R]D(T=\\.U^44U>,2U.(1V><5V^D8W.H9WNP;WNP;WNP;"
+	"WNP;WNP;WNP;W>L:U>,3M,'RG*G:EJ+4D)W0H:[?G:K>H[#CL\\#PW.H9W>L:W>L:"
+	"W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9W.H9W>L:W^T=XN`@YO0D"
+	"Z_HJ[OTM[OTM[/LKZ_HJZ_HJZODIZODIZ_HIZODIZODIZODIZODIZODIZODHZODH"
+	"ZODHZ?@HZODHZ?@HZODHZODHZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ/<GZ/<GZ/<FZ?<FZ/<FZ/<FZ/<FZ/<FZ/<FZ/<F"
+	"Z/<FY/(AU.$0QM0\"Q=,!R-<%SMP+T^$0U^44V^D8W^T=X_$AYO4EZ/<GZ?@HZODI"
+	"ZODIZODIZODIZODIZODHZ?@HZ/<GZ/<GZ/<GZ/<FY_8EYO4DYO0DYO4DYO4DY?0D"
+	"YO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CYO4DY?0CY?0C"
+	"Y?0CY?0CY?0CYO0CY?0CY?0CY?0CY?0CY?,CXN`?W>L:U.(1RM@&P\\_^P<W\\P<W\\"
+	"P<W\\PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^Q-#_Q-#_P\\_^Q-#_Q-#_Q='`Q-#_"
+	"P\\_^M\\'OJK;BR=8#R-4\"Q]0!Q],!Q]+`Q]0!QM+`QM,!QM+`QM+`QM+`Q]0!QM+`"
+	"Q]0!Q='_Q]0!Q]0\"R-4\"R-4\"Q]0!Q]0!Q]0!R-4\"Q],!Q]0!R-4\"Q],!QM'`QM+`"
+	"Q='_Q]+`QM'_QM#^Q<_]Q,[\\P\\W[PLSZP<OYP,KXL[WJ76B6)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D1E*$T]\\/V><6V><6V><6V><6V><7VN@7V^D8V^D9V^D9W.H:"
+	"W.H:W.H:V^H:VNH:VND9V>@9V>D9V>@9V>@9V>@9VN@9VN@9V>@9V>@9V>@8V>@9"
+	"V>@8V>@8V><8V>@9V>@8V>@8V>@8VN@9V>@8V><8VN@9V>@8V>@8VN@9V>@9V>@8"
+	"V>@8V>@9VN@9VN@9VN@9VN@9VN@9VN@9V>@8U^46O,K\\P<[]SMP,TM`0T^$1U.(2"
+	"U.(2T^$1U.(2U.(2U.(2T^$1T^$1TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\.T-X.T=\\/TM`0SMP,SMP,SMP,SMP,SMP+S=L+S-H*S=L*S=L+"
+	"S=L+SMP,SMP,SMP,SMP,SMP,S]T-S]T-S]T-S]T-S]T-T-X.S]T-S]T-T-X.T-X."
+	"T-X.T-X.T-X.T-X.T-X.S]T,SMP+S-H*R]@(R=8&Q]4$Q=,\"P]#`P\\__P\\_^PL[]"
+	"PLW\\PLS\\P,S[O\\OZP,OYO\\KYOLKYOLGXOLGWO<CWOLGXOLGXO<GYO\\O[Q-#`S=L*"
+	"T=\\/S=L+VN@8UN04U.$2T^$1TM`0T-X.S]T-SMP,S-H)RM@'Q]4$Q-(!P,W]O,GY"
+	"N<;UML+PM<'ON\\;S<WVK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"7&B8R]D(Z/<FZ?@GZ?@GZ?@GZODHZODHZ_DHZODHZ_HIZODHZ?@GZ/<FZ?@GZ/<F"
+	"XN`>XN`=ZODGZ/<FZ?@GZ?@GYO4DX_$@WNP;U^44S]T,Q=,\"N,;TKKSIGJS9CIO'"
+	"P,W\\PL__P]#`Q-(!Q=,\"Q=,\"Q=,\"QM0#QM0#Q]4$Q]4$Q]4$R-8%R-8%R-8%R=<&"
+	"R=<&R=<&P,W\\QM0#RM@'RM@'RM@'S-H)T=\\.U^44U.(1U.(0V>85V^@7W.H9W>L:"
+	"WNP;WNP;WNP;WNP;WNP;W>L:U.(2M,+TIK/EE*#3H*W?GZS>I;+CW.H9W>L:W>L:"
+	"W>L:W>L:W.H9W.H9W.H9W>L:W.H9W.H9W.H9V^D8V^D8V^D8W.H9W.H9W>L:W^T="
+	"X_$@YO4E[/LK[_XN[?PLZ_HJZ_HJZ_HJZ_HIZODIZODIZODIZODIZODIZODIZODH"
+	"ZODHZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<FZ?<G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<GZ/<FZ?<FZ?<FZ/<FZ/<FZ/<FY_8E"
+	"VN@7PL[]NL?VO,GXQM0\"SMP+TM`0U.(1U>,2U>,1UN03VN@7X.X>Z/8F[?PL[?PL"
+	"Z_HJZ_HIZODIZODIZ?@HZ?@HZ/<GZ/<GZ/<GZ/<GY_8FY_8EYO4EYO4DYO4DY?0D"
+	"YO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CY?0CYO0CY?0CY?0CY?0CY?,CXN`@W.H9T^$0R]@&P\\_^P<W\\P<W\\P<W\\"
+	"P<W\\PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P]#^Q-#^Q-#_Q-#_Q='`Q-#_P\\_^"
+	"LKWJL;WJRM<$Q]0!QM+`Q]0!QM+`QM+`Q]+`QM+`Q]+`QM+`QM+`QM+`Q]0!Q]0!"
+	"Q]0!QM+`Q],!R-4\"R-4\"Q]0\"Q]0!Q]0!Q]0!R-0\"Q]+`Q]0!Q]0!QM+`QM+`Q]+`"
+	"Q]'`QM'_QM#^Q,_]PLW[PLS[PLSZP<OYP<OYJ+/@2%*!)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DO<GYV.86V.85V><6V><6V><6V><7VN@8V^D9VN@8W.H:"
+	"W.H:W.H:V^H:VNH:VND:VND9V>D9V>@9V>@9V>@9VN@9V>@9V>@8V>@8V>@8V>@9"
+	"V><8VN@9V><8V>@9V>@9V>@8V>@8V>@8V>@9V><8V><8V>@9V>@8V>@9V>@9V>@8"
+	"V>@8V>@8V>@8VN@9VND9V>@8VN@9VN@9V><8U.,3M</TQ=,\"S]T-TM`0U.(2U.(2"
+	"T^$1T^$1T^$1T^$1T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/"
+	"T=\\/T=\\/T=\\.T=\\/T=\\/T=\\/T=\\/SMP,SMP,S]T-S]T,S]T-S]T-S]T-S]T-S]T-"
+	"S]T-S]T-S]T-S]T-S]T-S]T-T-X.S]T-S]T-S]T-S]T-S]T-S]T-S]T,S]P,S=L+"
+	"S=L+S-D)RM@'R-4$Q-#`P<S\\N\\?VL+SMIK'DH:S>HJO<I*S;HJO8IJ[<I[#<IZ_;"
+	"IJW8HJO7H*K6GZC3G:;2G:71G*72G*;1G*30I:[:L+CCMK_LN,/QN<3SN\\;UOLKZ"
+	"R=<&R]D)T^$0V><7U>,3T^$1T=\\/T-X.S]T-S=L+R]D)R=<'QM0#P]#`O\\S\\O,GY"
+	"N,7TM<'PM<'OO,?U4EV,)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D?XN["
+	"W>H9Z?@GZ?@GZ?@GZ?@GZO@GZODHZODHZ_HIZ_HI[/LI[/LJZODHZ/<FZ/<FZ/<F"
+	"Z/<FX.\\<Y?0@Z?@GZ/<FY?0CXN`?W.H9U>,2S-H)P<_]M\\7RL;_MK+OFGZW9DJ#,"
+	"P,W]P]#`P]#`Q-(!Q=,\"Q=,\"Q=,\"QM0#Q]4$Q]4$QM0#Q=,\"QM0#R-8%R-8%R=<&"
+	"RM@'RM@'P,W\\S-H)Q]4#RM@'RM@'RM@'R]D(S-H)T=\\.UN44U.(2U.(1V>85V^D8"
+	"W.H9W>L:WNL:WNP;WNP;WNP;WNP;W>L:U^45Q]4$JK;HJK?HH*W?V><6W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W.H9W.H9V^D8W.H9W.H9V^D8V^D8V^D8V^D8V^D8W.H9"
+	"WNL;W^T=X_$AY_8F[/LK[_TN[?PLZ_HJZ_HJZ_HIZODIZODIZ_HIZODIZODIZODI"
+	"ZODIZODHZODHZ?@HZ?@HZ?@HZODHZ?@HZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ/<G"
+	"Z?@GZ/<GZ?@GZ/<FZ?@GZ?@GZ/<FZ/<GZ?@GZ/<FZ?@GZ/<FZ?@GZ/<FYO4DTM\\."
+	"M\\3RLL#MO,KXS=L*U.(1U>,2U.(1U.(1U.(1U.(1T^$0TM`/TM`/TM`/V.85Y/(B"
+	"[/LK[/LKZODIZ?@HZ?@HZ/<GZ/<GZ/<GZ/<FY_8FY_8FY_8FY_8FY_8EYO4DYO4D"
+	"YO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CYO4D"
+	"Y?0CY?0CY?0CY?0CY?0CY?0CY?,CXO$@V^D8T^$0RM<&PL[]P<W[P<W\\P<W\\P<W\\"
+	"PL[]PL[]PL[]P\\_^PL[]P\\_^P\\_^Q-#_P\\_^Q-#^Q-#_P\\_^Q-#_Q-#_P\\_^KKCD"
+	"N,3QRM<$Q],!QM+`Q]+`QM+`QM+`QM+`QM'`QM+`QM+`QM+`QM+`Q],!QM+`QM+`"
+	"QM+`QM+`QM+`Q]0!Q]0!Q]0!Q]0!Q]0!Q]0!Q]0!Q]0!Q]0!Q]0!QM+`Q]+`Q]'`"
+	"QM#^QM#^Q,[]P\\W[P<SZP<OYP<OYP,KXFZ72-4%Q)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DFZC9V><6V><6V><6V><6V><7V><7VN@8V^@8V^D8V^D9"
+	"W.H:W.H:W.L;VNH:VND9VND9V>@8V>@8V>@9V>@9V>@8V>@8V>@9V>@8V><8V>@9"
+	"V>@9V><8V><8V>@8V><8V>@8V>@8V><8V>@9V>@8V><8V><8V><8V>@8V>@8V>@8"
+	"V>@8V>@8V>@8V>@8V>@8V>@8V>@9VN@8V.87SMP.M<+RR=<'T-X.TM`0T^$1U.(2"
+	"T^$1T^$1T^$1T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T-X.S]T-S]T-S]T-T-X.T-X.T-X.S]T-S]T-T-X."
+	"T-X-T-X.S]T-T-X.S]T-T-X.S]T-S]T-S]T,SMP+S=L+S-H)RM<'QM,\"Q,_^P<OZ"
+	"O,7SL;GFI*S:F*#-D9C&?H.R9&J:3E2&/T5Y1DE[>G^P2U2%)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D?X6NEYN`IJ_9M,#MN,/RN\\?V"
+	"O\\O[Q]4$S-H)V><7UN04T^$1T=\\/T-X.SMP,S=L+R]D)R-8&Q=,\"PL__O\\S\\N\\CX"
+	"N,7SML+PM\\/QN<3R+SMK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+3EJH:W=YO0C"
+	"Z?<FZ/<FZ/<FZ?<FZ?@GZO@GZO@GZODHZ_DHZ_HHZ_HIZ_HIZ_HIZODHZ?@GZ?@G"
+	"Z?@GY_8EW^T:Z/<EY/(AX.X=V><6TM`/R=<%OLS[ML/QL\\'NL;_LK+OGH*_:EJ71"
+	"P,W]P]#`P]#`Q-(!Q=,\"Q=,\"QM0#QM0#Q]4$QM0#O\\S\\L+WKI[/@M\\/RQM0\"R-8%"
+	"RM@'RM@'O\\S[Q=,\"Q=,!R]D(R]D(R]D(R]D(RM@'R]D(S-H)T=\\.UN03U>,2U.(1"
+	"V.85VN@7W.D8W>L:W>L:WNP;WNP;WNP;WNP;W>L:UN04ML3UEJ+3S]T,W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8"
+	"V^D8W.H9W>L:W^T=X_$AZ/8F[?PL[_XN[?PKZ_HJZ_HIZODIZODIZODIZODIZODH"
+	"ZODIZODHZODHZODHZ?@HZ?@HZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z/<GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<GZ?@GZ/<GZ/<FZ/<FZ?<GZ/<FY_8ES]T+L;WI"
+	"J[CEP]#`U.(1U.(1U.(1U.(1U.(1T^$0T^$1T^$1T^$0TM`/TM`/TM`/T=\\.T=\\."
+	"U^44Y?0DZODIZ?@HZ/<GZ/<GZ/8FZ/<GZ/<FZ/<FY_8FY_8FY_8FY_8FY_8FYO4D"
+	"YO4DYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0C"
+	"Y?0CY?0CYO4DY?0CY?0CY?,BXN`@W.H9T^$0RM<%PL[]P<W\\P<W\\P<W\\P<W\\PL[]"
+	"P<W\\PL[]PL[]P\\_^P\\_^P\\_^Q-#_P\\_^P]#^Q-#_Q-#_Q-#_P\\_^Q=#_L;OGO<GW"
+	"R=8#QM'`QM'`QM'_QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`Q],!QM'`QM'`"
+	"QM+`QM+`Q]0!Q]0!Q]0!Q],!Q]+`QM+`Q],!Q]0!Q]0!Q],!Q]+`Q],!QM'_QM#^"
+	"Q<_^Q,[\\P\\W[PLSZP<OYP,KXOLCVB).`*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D<'VNU^44V>86V><6V><6VN@7VN@7VN@8VN@8V^D9V^D9"
+	"W.L;W.H:W.L;V^H:VND9VND9V>D9V>@9V>@9V>@8V>@8V><8V>@8V><8VN@9V>@8"
+	"VN@9V>@8V>@9V>@8V><8V><8V>@8V><8V><8V><8V><8VN@9V>@8V><8V>@8VN@9"
+	"V>D9V>@8V>@8VN@9V>@8VN@9VN@9V><8U^86P](#N\\CWR]D)T-X.TM`0T^$1T^$1"
+	"T^$1T^$1T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T-X.T-X.T-X.T-X.T-X.T=\\/T-X.T-X.T-X.T-X."
+	"S]T-T-X.S]T-SMP,SMP,S=L+S-H)R=8%QM(!P,KYM+[KHZS:DIO(@(FV:G*@3E>&"
+	",#MK)S-D)S-D)S-D.4)U5EJ5.#YZ*S%J+S)L-3IS65Z7<7BK)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9FZ:@8>ODIG\"H:K5ML'PN<;U"
+	"O\\O[P]#`R=8&T^$1V><7U.(2TM`0T-X.SMP,S-H*R]D(R-8%Q=,\"PL__OLO[N\\CW"
+	"N,3SML+PN,3RKKCF)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D256%P,S\\Z?@GZ?@G"
+	"Z?8EZ/8EZ/<FZ?<FZO<FZO@GZO@GZ_DHZODHZ_DHZ_HHZ_HHZ_HIZODHZ?@GZ/<F"
+	"Z?@GZ/<FY?,BV><4W^T<U^44S]T,Q=,!N\\CVM</PL\\'NLL#ML;_LK;OGH[+=G*G5"
+	"P<[^P]#`Q-(!Q-(!Q=,\"QM0#QM0#Q]4$R-8%P]#`JK?GA)\"];WNI<GVJF:;2NL?V"
+	"Q]4#R=<&P<[]S=H)QM,!R]D(R]D(R]D(R]D(R]D(R]D(RM@'RM@'S-H)T=\\.U^44"
+	"U>,2T^(0V.85VN@6V^D7W>L:WNP;WNP;WNP;WNP;WNP;W>L;UN44U>,2W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8"
+	"V^D8V^D8V^D8W.H9W>L;X.X>Y/(BZ/<G[OTM[_XN[/LKZ_HJZODIZODIZODIZODI"
+	"ZODIZODIZODIZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@HZ?@HZ?@GZ/<GZ/<G"
+	"Z?@GZ/<GZ/<GZ?@GZ?@GZ?@GZ/<GZ?@GZ/<FZ/<GZ/<FZ/<FZ/8FUN02L+SIHJ[:"
+	"P]#`U.(1U.(1U.(1U.(1U.(1T^$1TM`0TM`/T-X.T=\\/T=\\/T=\\.T=\\.T=\\.T-X-"
+	"T-X-T=\\.W^T=Z/<GZ/<GZ/<GZ/<GZ/<GZ/<GZ/<FZ/<FZ/<GZ/<FY_8FY_8FYO4E"
+	"YO4DYO4DYO4DY?0CYO4DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CYO0CY?0C"
+	"Y?0CY?0CYO0DY?0CY?,BXN`?V^D8T]`/R=8$PL[]P<W\\P<W\\P<W\\P<W\\P<W\\P<W\\"
+	"PL[]PL[]PL[]P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q='_Q-#_Q-#_N\\;TOLGWQ]0!"
+	"QM'`Q='_QM'`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`"
+	"QM+`QM+`Q]0!Q]0!QM+`Q]+`QM+`QM+`Q]+`Q]0!Q]0!Q],!Q]+`QM#^QM#^Q,[]"
+	"Q,[\\PLSZP<SYP<OYP,KXNL3Q<WVL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D-T1US]P,V><7V><6V><6V><7VN@8VN@8VN@8VN@8V^D9"
+	"W.H:W.H:W.L;W.H:VNH:VND9VND9V>@9V>@9V><8V><8V><8V><8V><8V><8VN@9"
+	"VN@9V><8V><8V><8V><8V>@9V><8VN@9V><8V><8VN@9V>@9V>@8V>@8V>@8V>@8"
+	"V>@8V>@8V>@8V>@9V>@8V>@8V>@8V><8U>05N<?XP<[]S=L*T=\\/TM`0T^$1T^$1"
+	"T^$1T^$1T^$1T^$1TM`0TM`0T^$1TM`0TM`0T=\\/TM`0T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T-X.T=\\/T=\\/T=\\/T=\\/T=\\/T-X.T-X.T-X.T-X.T-X.T=\\/T-X.S]X.S]T-S]T-"
+	"SMP,S-H*RM<'Q-#`NL7TL;GFE9W+=GZL66&/-D%Q)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D3E6+35&/,#AQ,3=Q-3MU14R&>'^S0TQ\\)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D2%.\"AHZV@(>OFZ+-JK3@NL;V"
+	"P,S\\P]#`R-4$S=L*V><7UN04TM`0T-X.SMP,S-H*RM@(R-8%Q=,\"P<[^O<KZNL?V"
+	"M\\3RML/QN<;TFZ;5)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<'RLUN03Z?@GZ?@GZ?<F"
+	"Z?8EZ/8EZ?8EZO<FZ?<FZ?@GZ?@GZO@GZO@GZODGZODHZ_DHZODHZODHZODHZ?@G"
+	"Z/<FY/,BX>\\>V><6T-X*S]T+P<[]N,;TM,'OLL#MLL#MLL#ML;_LK;SHIK7@H*[:"
+	"P<[^P]#`P]#`Q=,\"Q=,\"QM0#Q]4$Q]4$R-8%O\\S\\GJS;=X2O<'VJ>8>UC9S*EZ/2"
+	"C);\"M\\/QS-H)QM0$R=<&R]D(R]D(R]D(R]D(R]D(R]D(R]D(R]D(R]D(RM@'S-H)"
+	"T-X-UN43U>,2U.(1U^44VN@6V^D8W>L:WNP;WNP;WNP;WNP;WNP;W>L:W>L:W>L:"
+	"WNP;W>L:W>L:W>L:W>L:W.H9W>L:W.H9W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8"
+	"V^D8V^D8V^D8V^D8V^D8W.H9WNP;X.X=Y/(BZODH[OTM[OTM[/LKZ_HJZ_HIZODI"
+	"ZODIZODIZODHZODIZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@HZ?@GZ/<GZ?@HZ?@GZ/<G"
+	"Z/<GZ?@GZ?@GZ/<GZ/<GZ/<GZ?@GZ?@GZ/<FZ/<GZ/<FZ/<FXN`?NL;SH:W8M\\3R"
+	"U.(1U.(1U.(2U.(1T^$0S=L*R=<'T-X.T=\\/T-X.T-X.T-X.T=\\/T=\\.T-X-S]T,"
+	"S]T,S]T,S]T,W.H:Y_8FZ/<GZ/<GZ/<GZ/<FZ/<FZ/<GZ/<GZ/<GY_8FZ/<FY_8F"
+	"YO4DY?0DY?0DY?0DY?0CY?0CY?0CY?0CY?0CY?0CY?0CY?0CYO4DYO4DYO0CY?0C"
+	"YO4DY?0CY?0CY?,CXO$@V^D8T^$0R=8%PL[]P<W\\P<W\\P<W\\P<W\\P<W\\P<W\\PL[]"
+	"PL[]P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_P\\_^P\\_^Q-#_Q-#_Q-#_M;_LQ]0!QM'_"
+	"Q='_QM'_QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`"
+	"QM+`Q]0!R-0\"Q]0!Q]0!Q]+`QM+`QM+`QM+`QM+`Q],!QM+`QM#^Q<_]Q,[]P\\W["
+	"PLS[P<OZP,KXP,KXL[WK7FB7)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-DL;[NV><6V><6V><6V><6V><7VN@7VN@8VN@8V^D9"
+	"W.H:W.H:W.H:W.H:VNH:VND9V>D9V>@9V>@9V>@8V>@9V>@9V>@9V><8V>@8VN@9"
+	"V>@8V><8V><8V><8V>@8V>@8V><8V><8V><8V>@9V>@9V>@8V>@9V>@9V>@9V>@8"
+	"V>@8V>@8V>@8V>@9V>@8V>@8V>@8V><8TN$2M,'QQ=(\"SMP,T=\\/TM`0T^$1T^$1"
+	"T^$1T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T-X.T=\\/T-X.T-X.T-X-S]T-S]T,S=L+RM<'P<W]"
+	"K[KLF:/8AHS$='FW6EN5/DAZ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D*C9G5UV9/$)]-SMU.#QW/T-_9&JC;'.C)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=GAHZX@HFPD):^H:G5NL;U"
+	"P,S\\Q-(!Q]4$RM@'U>,2V.<7T^$1T-X.SMP,S-H*RM@(Q]4$Q-(!P,W]O<KYN<;U"
+	"ML/QM\\/RN\\?UA8^^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DC9K*Y/(AZODHZ?@GZ?@GZ?<F"
+	"Z?8EZ/8EZ?8EZ?<FZO<FZO<FZO<FZO@GZO@GZ?@GZ?@GZO@GZ?@GZODHZODHY_8E"
+	"Y/(AX.X=VN@7T^$0PL_\\QM0!M\\3QM,'NL\\#NL\\'NLL'NLL#ML;_LL;_KGZ[:G*K7"
+	"P<[^PL__Q-(!Q=,\"Q=,\"QM0#Q]4$R-8%R-8%P,W]G*K9>(:Q=H.OA93!FZG9FZK8"
+	".41R-T!L@8JUN<7SR-8%RM@'R]D(R]D(R]D(R]D(R]D(R]D(R]D(RM@'R]D(RM@'"
+	"R]D(R]D(T-T,UN03U>,2T^$0U^44VN@7W.D8W>H9WNP;WNP;WNP;WNP;W>L:WNP;"
+	"W>L:WNP;WNP;W>L:W>L:W>L:W>L:W>L:W.H9W.H9W>L:W.H9W.H9W.H9W.H9W.H9"
+	"W.H9V^D8V^D8V^D8V^D8V^D8V^D8W.H9WNP;X>\\>Y/,CZODI[_XN[OTM[/LKZ_HJ"
+	"ZODIZODIZODHZODHZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ/<GZ/8FS]P*J;/=H*O7T=`/"
+	"U.(1U.(2U.(1U.(1S-H)R]D(T=\\/S-H)T=\\/T-X.T=\\/T-X.T-X.T=\\.T=\\.T-X-"
+	"S]T,SMP+S=L*SMP+W.H:Z/<GZ/<GZ/<GZ/<GZ/<FZ/<GZ/<GZ/<GZ/<GZ/<GZ/<G"
+	"Y_8EYO4DY?0CY?0DY?0DY?0CY?0CY?0CYO0CY?0CYO4DYO4DYO4DYO4DYO0CYO4D"
+	"YO4DY?0CY?,BXN`@W.H9T^$0R=<%PL[]P<W\\P<W\\P<W\\P<W\\P<W\\P<W\\PL[]PL[]"
+	"PL[]PL[]P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-'`Q='`PL[\\N,/PQM'_QM'`"
+	"Q='_QM'_QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`QM+`"
+	"QM+`QM+`Q]0!QM+`Q]0!QM+`QM+`QM+`QM+`Q],!Q]+`QM#^Q<_]Q,[\\P\\W\\PLSZ"
+	"P<OZP,KXP,KXJK/A2%.#)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-DAY3$V><6V><6V><6VN@7V><7VN@7VN@7V^D9V^D9"
+	"V^D9W.H:W.H:V^H;V^H:V^H:VND9V>@9V><8V>@9V>@9V>@9VN@9VN@8V>@9V><8"
+	"V><8V>@8V><8V><8V><8V><8V>@8V>@8V>@8V>@8V>@8V><8V><8V>@8V>@8V>@8"
+	"VN@9VN@9V>@8V>@9V>@8V>@8V>@8V.<7S-L,ML+RQ]4%SMP,T=\\/TM`0TM`0T^$1"
+	"T^$1T^$1T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T=\\/T-X.T=\\/T=\\/T-X.T-X.S]T-SMP+R]D)Q=($LK[RFZ7;@8>];G&J"
+	";&^I;W2U;G6V;W2[8&*=,3QO)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D0$M^4%21/D)[/$%]046!4EB5>X&W+CIK)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D=7ZJAHVVA8RUH:G3LKOG"
+	"P,S\\Q-$!Q]4$R=<&S]T,V><8U>,3T=\\/SMP,S-H*R=<'Q]4$P]#`P,W]O,GYN,7T"
+	"M\\/RN,3RO<CW9G&@)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DF*76Z_HI[?PKZ_HIZODHZO@GZO@G"
+	"Z?<FZ/8EZ/8EZ?8EZ?8EZO<FZO<FZ?<FZ?@GZ?<FZO@GZ?@GZ?@GZ?@GYO0CXO$@"
+	"WNP;V.84T-X-Q=,!M\\/QO,CTM<'OL\\#NL\\#NL\\#NL\\'NLL#ML\\'MK+KFCYW+I+#="
+	"PL__P]$!Q=,\"QM0#QM0#Q]4$Q]4$R-8%R=<&O\\S\\F:?6>8>T>HBTC9O*I;7CH+#@"
+	"-D)P&B=7!A)\"*3)<@8RXN,3RQ]4$RM@'R]D(R]D(S-H)R]D(R]D(R]D(R]D(R]D("
+	"R]D(RM@'RM@'R]D(S]T,UN03U>,2T^$0U^44V><6V^@7W>L:WNP;WNP;WNP;WNP;"
+	"WNP;WNP;WNP;WNP;W>L:W>L:W>L:W>L:W.H9W>L:W>L:W>L:W.H9W.H9W.H9W.H9"
+	"W.H9V^D8W.H9V^D8V^D8V^D8V^D8V^D8V^D8W.H9WNP;X>\\?YO0D[/LK[_XN[OTM"
+	"Z_HJZODIZODIZODHZODHZ?@HZODHZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@GZ?@G"
+	"Z?@GZ/<GZ?@GZ?@GZ?@GZ/<GZ?@GZ?@GZ/<GZ/<GZ?@GY?0CO\\KXFZ7/O,KXU.(1"
+	"U.(2U.(1U.(1T^$1R=<&T^$0S]T-Q]4$S-H)R-8%T=\\/T=\\/T=\\.T-X.T-X.T-X."
+	"T-X-SMP+S=L*S-H)S=L*X>\\?Z/<GZ/<GZ/<GZ/<FZ/<GZ/<GZ/<GZ/<GZ/<GZ/<G"
+	"Z/<GYO4DY?0DYO4DYO0DYO4DY?0CYO4DYO4DYO4DY?0CY?0CY?0CYO4DYO4DYO4D"
+	"Y?0DY?,CX_$@W.H9T^$/R=8$P<W\\P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]PL[]PL[]"
+	"P\\_^P\\_^P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_O,?UN\\?UQM'`QM'_"
+	"QM'_Q='_QM+`QM+`QM+`QM+`QM+`Q],!Q]0!QM+`Q='_Q='_Q='_QM+`QM+`QM'`"
+	"QM'_QM+`Q]0!Q]0!Q],!QM+`Q]+`QM+`Q]+`Q]'`QM#_Q<_]Q,[\\PLSZP<OYP<OY"
+	"P,KXP,KXFJ73-4%Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D2UB*U>(2V><6V><6V><6V><7VN@8VN@8V^D8V^D9"
+	"V^D9W.H:W.H:W.H:W.H:W.H:VND9VND9V>@9V>@9VN@9V>@9VN@9VN@9VN@9VN@9"
+	"V><8V>@8V><8V><8V><8V>@9V>@8V>@8V>@8V>@8V><8V><8V>@9V>@9V>@9VN@8"
+	"VN@9VN@8V>D9V>@8V>@8V>@8V>@8U^86PL`\"O,CWRM@'S]T-T=\\/TM`0T^$1T^$1"
+	"T^$1T^$1T^$1TM`0T^$1TM`0TM`0T=\\/TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/T=\\/"
+	"T=\\/T=\\/T-X.T-X.S]T-S]T-SMP,RM@(P,S^J;+GBI/-;'.T96JL:FRM;&^P;W*S"
+	"<G:V<GB]<WF_<7:]96:B*35G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D*#1E6UZ92$R+0D6#1$B&2U\",<7FR5EZ0)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6621C96^AY\"[E9W%J;/="
+	"P,S[Q-#`Q]4$R=<&R]D(UN04V.86TM`0SMP,S-H*R=<&QM0#PL__O\\S\\O,CXN,7T"
+	"M\\/RN<7TO,?U/$=W)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>X>XX_$@[/HI[OTL[?PKZ_HIZODHZODH"
+	"Z?@GZ?<FZ?8EZ?8EZ?8EZ?8EZ?8EZO<FZ?<FZ/<FZ?@GZ?@GZ?<FY?,BX>\\>W.H9"
+	"UN02SMP*PL_^N<?SM,'MM\\/MM,#NLL#NL\\#NL\\'NM,+NL\\'MK[WJI++>=X&MM<+P"
+	"Q-(!Q=,\"QM0#QM0#Q]4$Q]4$R-8%R=<&R=<&O<KZEJ34>XFV?(RXE:32K+KII;/B"
+	"-D)R&R=8!!!!!1%\"!A%\"*S-?@XVYNL7SR-8%RM@'R]D(R]D(R]D(R]D(R]D(R]D("
+	"RM@'R]D(RM@'RM@'RM@'R]D(S]T,U>,2U>,2T^$0UN03V><6V^D8W.H9W>L:WNP;"
+	"WNP;WNP;WNP;WNP;WNP;WNP;W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9"
+	"W.H9V^D8W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8W.H9W^P<XN`@Y_4E[?PL"
+	"[_XN[?PLZ_HJZODIZODHZODHZ?@HZ?@HZ?@HZ?@HZ?@HZ?@HZ?@HZ?@GZ?@GZ?@G"
+	"Z?@GZ/<GZ?@GZ/<GZ?@GZ?@GZ/<GZ/<GZ?@GZ?@GZ?@GX.\\=M<#LEJ'+R=<&U.(2"
+	"U>,2U>,2U>,2TM`0S]T-S=L*R=<&S-D(R]D(TM`0R]D(T-X.T=\\/T=\\.T=\\.T-X."
+	"T-X.SMP+S=L*S-H)R]D(T-X-Y_8FZ/<GZ?@GZ/<FZ?@GZ?@GZ?@GZ?@GZ/<GZ?@G"
+	"Z/<GYO4DYO4DYO4DYO0DY?0CYO4DYO4DY?0CYO4DYO4DY?0CY?0CYO4DYO4DYO4D"
+	"Y?0CXO$@V^D8T^$0R=<%PL[]P<W\\P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]P\\_^PL[]"
+	"P\\_^Q-#_Q-#_Q-#_Q-#_Q-'`Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_NL7RO<GWQM'_QM+`"
+	"QM+`QM+`QM+`QM+`QM'`QM+`QM+`QM,!Q='`QM+`QM'`QM+`QM+`QM'_QM'`Q='_"
+	"Q='_Q='_QM+`Q],!QM+`QM+`QM+`Q]+`QM#_Q<_^Q<_]Q,[\\PLS[P<OZP,OYO\\KW"
+	"O<?UB9*`*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-DOLO[V>86V><6V><6V><7VN@7VN@7VN@8V^D9"
+	"V^D9V^D9W.H:W.H:W.H:V^H:VND9V>@9VN@9VN@9V>@8VN@9VN@9VN@8V>@8V>@8"
+	"VN@9VN@9V><8V><8V><8V><8V>@8V>@8V><8V>@8V>@8VN@9V><8V>@8VN@9V>@8"
+	"V>@8VN@8V>@8V>@8V>@8V>@8V.<8U>04NL?XO\\S[R]D)T-X-T=\\/TM`0T^$1T^$1"
+	"T^$1T^$1T^$1TM`0TM`0TM`0TM`0TM`0T=\\/TM`0T=\\/T=\\/T=\\/T=\\/T=\\/T-X."
+	"T-X.S]T-S]T,SMP,R]D(P\\[^I;#?A(^^<GBV:6NL:&NP:FZT;7&W<7>]='O!=W_$"
+	">H''>H'(=W_(='O#9FFC)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D3%*+3E*22$F*2DN,3$^-8FJF9W&F)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+SIKCY?!BI.^C9:`I:[8"
+	"M\\+PP]#`Q]0#R=<&R]D(T=\\.V>@8U.(2SMP,S-H)R=<&Q=,\"PL__OLO[N\\CWN,7T"
+	"N,3SN<;TL+OJ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DQM0\"W^P;Y/$@ZODH[OTL[OTL[/HIZODH"
+	"ZODHZODHZ_@GZO<FZ?<FZ?<FZ?<FZ?<FZO@GZO@GZ?@GY_4DY/$@X.X=V^@7U.$0"
+	"RM@&OLOYM\\7QM</OM,'OL[_IM,'NL\\#NL\\#NM,+NL\\#MK[[JJ[KEC9O)@(RVOLO["
+	"Q-(!QM0#QM0#Q]4$Q]4$R-8%R-8%R=<&R-8%O,GYE:+1?(NX?X^[F:?6K[WLI;/C"
+	"-T%R&B97!!!!%\"%2&B=8%2%2\"Q9&+C5?A8ZZN\\;URM@'R]D(R]D(R]D(R]D(R]D("
+	"R]D(R]D(RM@'RM@'RM@'RM@'RM@'RM@'SMP+U>,1U.(1TM`/UN03V><6VN@7W.H9"
+	"W>L:WNP;WNP;WNP;WNP;WNP;WNP;W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9"
+	"W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8W>L:W^T<XO$@"
+	"Z/8F[?PL[_XN[?PLZ_HIZODIZODHZ?@HZ?@HZODHZ?@HZ?@HZ?@HZ?@GZ?@GZ?@G"
+	"Z/<FZ/<GZ/<GZ/<GZ?@GZ?@GZ?@GZ/<GZ?@GZ/<GZ/<FW>L:LK[JBI6_T-\\.U.(2"
+	"U>,2U>,2U>,2TM`/T=\\/T=\\/S=L*R]@(T-X-S=L*R]D(QM0#R]H)T=\\/T=\\/T-X."
+	"T-X.S]T,S=L*S-H)S-H)Q-'`W^X=Z?@GZ/<GZ/<GZ?@GZ?@GZ?@GZ?@HZ?@GZ?@H"
+	"Z/<GYO4DYO4DYO4DYO4DY?0CYO4DY?0CYO4DY?0DYO4DYO4DY?0CYO4DYO0DY?0C"
+	"X_$@W.H9T^$/R=8%PL[]P,S[P<W\\P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]P\\_^P\\_^"
+	"P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_M\\+PO\\KXQM+`QM+`"
+	"QM'_Q='_QM'_Q='`QM+`QM+`QM+`Q],!QM,!Q='_Q='_QM+`QM'`Q='_Q='_Q='_"
+	"Q='_Q='_Q='_QM+`QM+`QM+`Q]+`QM#_Q<_^Q,_]P\\W\\PLW[P,OYP,KXO\\GVN<3Q"
+	"<WVL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-DF:75V><6V><6V><7V><7VN@8VN@8VN@8VN@8"
+	"V^D9V^D9W.H:W.H:W.L;W.H:VND9V>D9VN@9VN@9V>@9V>@8V>@8V>@8VN@9V>@8"
+	"VN@9VN@9VN@9V><8V><8VN@9V><8V><8V><8V>@8V>@8V><8VN@9V>@8V>@9V>@8"
+	"V><8VN@8V>@8V>@8V>@8V>@8V.<7T^$2M<+RP]#`S-H*S]T-T=\\/TM`0T^$1T^$1"
+	"TM`0TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/TM`0T=\\/T-X.T-X.S]T-SMP,"
+	"SMP+S-D)PLW]H:S;=G^N.D5T)S-D+3EJ='JX;W&T;G.Y<'C\"=7[(>(++?(C1?XK4"
+	"@8S6@HS6@(G3=W_'9&BC)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D-T%T6%R;3%&23U\"53E\"36V&=<GBO)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@(BSDIK\"CYC\"G*3."
+	"L+KFP\\__QM0#R=<&R]@(S=L*V.86U^45T-X.S-H*R-8%Q=,\"P<[^OLKZNL?WN,7T"
+	"N,3SN\\?VFJ74)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D,#QMU^43W>H9X.T;XN`?Z?8E[?LJ[_XM[?PK"
+	"Z_HIZ_DHZ_DGZO@FZO@GZO@GZO@GZODHZ_DHZO@GYO4DXN`?WNP;V.85TM`.Q]0\""
+	"O,CVML3OM</OM</PM,+PLK[GM,+NM,'LM<+OLK_LL+[JK;SGF*728FZ7K+GFP<[^"
+	"Q=,\"Q]4$Q]4$R-8%R-8%R-8%R=<&R=<&R=<&NL?WDZ'/?HVZ@Y*`FJG9L+_NI+'C"
+	"-T%R&B97!!!!%B)3)#%B(B]A&2=8'BA5#AA'3E!QK[?@RM@'R]D(R]D(R]D(R]D("
+	"R]D(R]D(R]D(RM@'RM@'RM@'RM@'RM@'RM@'RM@'SML*U.(1U>,2TM`/U>,2V><6"
+	"V^D8W.H9W>L:WNP;WNP;WNP;WNP;WNP;W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9"
+	"W.H9W.H9W.H9W.H9V^D8W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8W.H9"
+	"X.X=X_$AZ?<G[OTM[_XN[/LKZODIZODHZ?@HZODHZ?@HZ?@HZ?@GZ?@GZ?@HZ?@G"
+	"Z?@GZ/<GZ/<GZ/<GZ?@GZ?@GZ/<GZ/<GZ?@GZ?@GZ/<GWNP;L+SH>82NTM`0U.(2"
+	"U>,2U>,2U>,2T=\\/T=\\.T=\\/T=\\.T=\\/T=\\/T-T-Q]4$S]T,T=\\.S=L*S]T,T-X."
+	"T-X.S]T-S=L*S-H)R]D(R-8%R=<%Z/<FZ?@GZ?@GZ?@GZ?@HZ?@HZ?@HZ?@HZ?@H"
+	"Z?@HYO4DYO4DYO4DYO4DYO0CYO4DYO4DYO4DY?0CYO4DYO4DY?0CY?0CY?0CXO$@"
+	"W.D9T]`/R=8$PL[]P,S[P<W\\P<W\\P<W\\P<W\\P<W\\PL[]PL[]P\\_^P\\_^P\\_^P\\_^"
+	"P\\_^Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-'`Q-#_Q-#_ML#MP<W[QM+`QM+`"
+	"Q='_QM'_QM+`QM+`QM+`QM+`QM+`Q],!QM+`QM+`Q='_Q='_Q='_Q='_Q='_Q='_"
+	"Q=#^Q-#^Q='_QM'_QM+`Q]'`QM#^Q<_^Q,[]P\\W[PLS[P<OYP,KXO\\GWM+[J7VF7"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D8V^@V.85V><6V><6V><7VN@7VN@7VN@8VN@8"
+	"V^D9W.H:W.H:W.H:W.H:V^H:VNH:V>D9VN@9VN@9V>@9V><8V>@8V>@8VN@8VN@9"
+	"V><8V>@8V>@9V>@9V>@8VN@9V>@8V>@8V><8V>@9V>@8V>@9VN@8V>@8V>@8V>@8"
+	"V>@8VN@8V>@8VN@9VN@9V><8V.<7S=L-M<+QQ=,#S=L+T-X.T=\\/TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0TM`0TM`0TM`0TM`0T=\\/T=\\/T=\\/T-X.S]T-SMP,S-H)QM,\""
+	"J;/C=X*Q-4!Q)S-D)S-D)S-D)S-D)S-D<G>U='N`=7W%>H/.?HG4@HW:AI'?B9/A"
+	"AY+?AY+?A)#<>H3-8F>@)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D76&=4E>;45694%6855N9<GFQ-D!Q)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D8VV;EY_(DIO&EY_+"
+	"J;/@O,CVQM,\"R=8&R]@(S-H)T^$1V><7TM`1S-H*R-8%Q-(!P,W]O<GYN<;UN,7S"
+	"N<7TO,CW?(:V)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D.45VV.84W.D7W>L9W^P;X>X=Y/(AZ?<F[OPK"
+	"[_XM[_TL[?LJZ_HIZODHZ_DHZ_DHZ_DHZ?<FY?,BX>\\>W>H9U^44S]P+P\\__NL?U"
+	"ML3PM</NM</OM</PM,+PLK[FM</NM,'ML;_KL+[JK[SHF:719G\":F:72N<;UP<[^"
+	"Q=,\"Q]4$R-8%R-8%R-8%R-8%R=<&R=<&R=<&NL?WE*'0@Y*`BIC'G*K:L;_NI;/D"
+	"0$]_%R-5!!!!%B-3(S%A)C-D)C-D)#)C&RA9'\"93,#=@L[[LRM@'R]D(R]D(R]D("
+	"RM@'R]D(R]D(R]D(R]D(RM@'RM@'RM@'R=<&R=<&RM@'RM@'S=L*U.(1U>,2TN$0"
+	"U>,2V><6V^@7W>L:WNP;W>L:WNP;WNP;WNP;W>L:W>L:W>L:W>L:W>L:W.H9W.H9"
+	"W.H9W.H9W.H9W.H9W.H9V^D8W.H9V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7"
+	"V^D8W>L:X.X=Y/(BZ_HI[_XN[OTMZ_HJZODHZODHZ?@HZ?@HZ?@HZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<GZ/<GZ?@GZ?@GZ?@GZ/<GZ/<GZ/<GXO$@M,#N;7BBT=\\.U.(2"
+	"U.(2U.(2T^$1TM`0T=\\.T=\\.T=\\.T=\\/T=\\/R-8%T-X-T=\\.T-X-R]D'R-8%TM`/"
+	"T-X.S]T,S-H)R]D(R]D(R=<&N,3SY_8FZ?@GZ?@GZ?@GZ?@HZ?@HZ?@HZ?@HZ?@H"
+	"Z?@GYO4DYO4DYO4DYO0DYO4DYO4DY?0DYO4DYO4DYO4DY?0CYO0DY?0CX_$@W.H9"
+	"U.$0R=<%PL[]P<W\\P,S[P<W\\PL[]PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q='_Q-#_Q-#_Q='`Q-#_P\\_^L[[KPL[\\QM'`Q='_"
+	"Q='_QM+`QM+`QM+`Q='_QM+`QM+`QM+`QM+`QM+`Q='_Q='_Q='_Q=#^Q='_Q=#_"
+	"Q=#_Q=#_Q='_Q=#_QM#_QM#^Q<_]Q,_]P\\W\\PLSZP<OYP,KXP,KWJK/@252#)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D+#EJR=8&V><6V><6V><6VN@7VN@7VN@8VN@8"
+	"V^D9V^D9W.H:W.H:W.H:W.H:VNH:VNH:VND9VN@9VN@9V>@8V>@8V><8V>@8V>@8"
+	"VN@9VN@9VN@9V>@8VN@9V><8V><8V><8VN@9V><8V>@8V>@9VN@9V>@8VN@8V>@8"
+	"V>@8V>@8V>@9V>@8V>@8V><8U^86Q=,$N<;UR-8%SMP,T-X.TM`0TM`0TM`0T^$1"
+	"TM`0TM`0TM`0TM`0TM`0T=\\/TM`0T=\\/T-X.S]T-SMP,S=L*R=<&M\\+QBI3$2%.\""
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:G*M?8/'?X?.@HS7AI+?BI;DC)CGCIGI"
+	"C9CHB);DAI+A<7K#65^4)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D55N47%^E6%F@6%NA55R>;'.P3E:&)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,SYOF:',EI_*F*'-"
+	"HJS7M+_LQM,\"R=8%R]@(R]D(S]T,V.86U>,3S=L+Q]4%P]#`P,S\\O,GYN<;UN,7T"
+	"NL;UO<GX3%B')S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D.45VV.44V^@7W.H8W>L9WNP:X.T<XN\\>Y?,A"
+	"ZO@F[?PK[_XM[_XM[OTL[?PKZ_DHZ?8EY/(AX.X=V^D7U>,2R]D(O\\SZNL?TM\\7Q"
+	"M</NM</OM</OM<3PM<+OLKWEML+NLK_KL;[JK[WHEJ+.=X.LDY_+K[SIN\\CXP<[^"
+	"Q=,\"R-8%R-8&R-8%R=<&R-8%R=<&R=<&R=<&N\\GYF:;6BYC(D)W-G*O:LL#PL+[O"
+	"9W:F'RU>\"A9(#!E)(S!@)3)C*#5F*SAI*SEJ*#9G%R-58FN5R-8%S-H)R]D(R]D("
+	"R]D(R]D(R]D(R]D(R]D(R]D(RM@'RM@'RM@'RM@'RM@'R=<&R=<&R=<&S=H)T^$0"
+	"U>,2TM`/U>,2V><6VN@7W>H9W>L:WNP;WNP;WNP;W>L:W>L:W>L:W>L:W>L:W.H9"
+	"W.H9W.H9W.H9W.H9W.H9W.H9V^D8W.H9V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7"
+	"VN@7VN@7V^D8W>L:X.X>Y?0C[/LK\\/\\O[OTMZODIZODHZ?@HZ?@HZ?@GZ?@GZ?@G"
+	"Z?@GZ?@GZ?@GZ/<GZ?@GZ/<GZ/<GZ/<GZ/<GZ?@GZ/<GY_8EP<W\\;7>@R]D(T^$1"
+	"TM`0TM`0T=\\/TM`/T=\\.T-X.T-X.T-X.T=\\/T=\\.SMP+S]T,R]D(R]D(S=L*S=H)"
+	"RM@'S]T,S-H)R]D(RM@'R=<&J[?DY_8FZ?@GZ?@GZ?@HZ?@HZ?@HZ?@HZ?@HZ?@H"
+	"Z/<GYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CX_$@W>H9T^$0"
+	"R=8$P<W\\P,S[P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_^Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_P\\_^Q-#_Q-#_Q-#_Q-#_LKWJP\\_]QM'`QM'_"
+	"QM'`Q='_QM'`QM+`QM+`QM+`QM,!QM+`QM+`Q='_QM'`Q='_Q=#^Q=#_Q-#^QM'_"
+	"Q=#^QM'_QM'`Q<_^QM#^Q<_]Q,[\\P\\W[PLSZP<OYP,KXP,KWG:71-T)R)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DI[/DV><6V><6V><7V><7V><7VN@8VN@8"
+	"V^D9V^D9W.H:W.H:W.H:W.H:V^H:V^H:VND9VND9VND9V>@9V>@9V>@8V>@8V>@8"
+	"V>@8V>@8V>@9V>@8V>@8VN@9V><8V><8V><8VN@9V>@9VN@9VN@8V>@8V>@8V>@8"
+	"V>@9V>@8V>@8V>@8V>@8V>@8UN45O<K\\OLKYR=<'SMP,T-X.TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0TM`0T=\\/T=\\/T-X.S]T-SMP,S-H)Q-#_HJW<:G2B*S=G)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D86FB@HG-A(K4AY#?BY?GCYKLD9SLDISM"
+	"D)KK>XC65V&K65R?5%N0)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D2U.(8VFN8&*J862K7&\"F96NM86B;)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DAX^]FJ/-FZ70"
+	"H*G5K[KFP<SZR=8%R]@(S-D)S=L*U>03U^45S]T-Q]4%P]#`O\\S\\O,CXN<;UN,7T"
+	"NL?VLKWK*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D.45VU^03VN@6V^D7WNP:X.T<X.X<X.T<X.T<"
+	"X>\\>X_$@Y_4DZ_DH[OPL\\?\\N[OTLY?0CW^T<VN<6T^$0R=<%O<KXM\\7QM\\7PM\\3P"
+	"ML/OM</PML3PM</OM,#ML[_IM,'MLK_JK[SHEZ//BI7!EJ/.J+3@L\\#NO,GXP<[^"
+	"Q=,\"Q]4$R=<&R-8%R=<&R-8%R=<&RM@'R=<'OLS\\H:_?D*#/E:74GJW=LL'PN,7U"
+	"F*;74628+CMN#AQ/$1U-(\"U>*#5F*SAI*SAI*39H#AI+#A=%LK[KR]D(R]D(R]D("
+	"R]D(R]D(R]D(RM@'RM@'R]D(RM@'RM@'RM@'RM@'RM@'RM@'RM@'R=<&R=<&RM@'"
+	"S-H)TM`/U>,2TM`0U.(1V><6V^D7W.H9WNP;WNP;W>L:W>L:W>L:W>L:W>L:W>L:"
+	"W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8"
+	"VN@7VN@7VN@7VN@7W.H9WNP;X>\\?Y_4E[?PL[_XN[/LKZODIZ?@HZ?@HZ?@GZ/<G"
+	"Z?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<FZ?@GZ/<GZ?@GZ/<FUN03@(JWO<KZTM`0"
+	"T=\\/T=\\/T=\\/T=\\/T=\\/T-X.T=\\.T-X.T=\\/T=\\/T=\\/T-X-R]D(SMP+R]D)RM@'"
+	"T-X-S-H)R]D(R]D(RM@'R-8%HJW;Y_8FZ?@GZ?@GZ?@HZ?@HZ?@HZ?@HZ?@HZ?@H"
+	"Y_8EYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?4DY?0CX_$@W>L:T^$0R=8$"
+	"PL[]P,SZP<W[P<W\\P<W\\P<W\\PL[]PL[]PL[]P\\_^PL_]P\\_^P\\_^Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-'_Q-#_P\\_^L;OHQ='_QM'`Q='_"
+	"QM+`QM'_QM+`QM'`QM+`QM+`QM+`QM'`QM+`Q='_Q='_Q='_Q='_Q='_Q='_Q-#^"
+	"Q,_^QM'_Q<_^Q<_]Q<_]Q,[\\PLSZPLSZP<OYP,KWOLCUBI2`*S=H)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<X\"QV.85V><6V><6V><7V><7VN@7VN@8"
+	"VN@8V^D9V^D9W.H:W.H:W.H:W.H:V^H:VND9VND9VND9VN@9V>@8V>@9V>@8V>@8"
+	"V>@8V>@8V>@8VN@8V>@8VN@9V>@8V><8V>@9VN@9V>@8VN@9V>@8V>@8V>@8V>@8"
+	"VN@9V>@8V>@8VN@8V>@8V>@8U>,4N,7VP<W]RM@(SMP,T=\\/TM`0TM`0TM`0TM`0"
+	"TM`0TM`0TM`0T=\\/T-X.S]T-S=L+RM@(O,?VC9?&15!_)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D55Z4A8S1='K'='O'=X'.>8'.<7K&9FNU"
+	"1TZ8.D&.866T@H?125&#)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-#]Q:&^P:&NR9FVU8VJR96NO:W*J)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9&Z;H*G3GZC3"
+	"H:O8J[7BN</PR=8%R]@(S-H)S-H)TM`/V.86TM`0R=<'PL__OLO[N\\CWN<;UN<;U"
+	"O,CWFJ74)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D-D)SUN02V><5V><6V^D:X_$@Z?<FY?,BX.X="
+	"W^P;X.T<X.X=XN\\>X_$?Y?,BZ/8EY/(BVN@7T-X-QM,!O<GXN,;RM\\7PM\\7QM\\3P"
+	"M\\/OML3PM<+NM<'NM<'NL[_JM,#MK;KFF:31DI[+EZ30H*W;K+CEM<+QO,GYP<[^"
+	"Q=,\"Q]4$R=<&R-8%R=<&R=<&R=<&R=<&RM@'PL_`K+GIFZG9FJO:H;/AL+_NN<;V"
+	"M\\3UCI[13%R11%6+$2!3!1%\"$AY/(B]@+3EK)S5F#!A)!A%\"FJ71R]D(R]D(R]D("
+	"R]D(R]D(R]D(R]D(RM@'R]D(RM@'RM@'RM@'RM@'RM@'RM@'RM@'RM@'RM@'R=<&"
+	"R=<&RM@'R]D(T=\\.U>,2T^$0T^(1V.85VN@7W.H9W>L:W>L:W>L:W>L:W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8"
+	"V^D8VN@7VN@7VN@7VN@7V^D8W.H9WNP<XN`?Z/<G[OTM[_XN[/LKZODIZ?@GZ?@G"
+	"Z/<GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GYO4DK+CFH:[<T=\\/"
+	"T^$1TM`0T^$1T^$1TM`0T=\\/T=\\/T=\\.T-X.T=\\/T=\\.T=\\/T=\\.S-H)S]T,T-X."
+	"S-H)RM@'R]D(RM@'R=<&Q=,!H:W<Y_8FZ?@GZ?@HZ?@HZ?@HZ?@HZ?@HZ?@HZ/<F"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0DY?0DX_(AW>L:T^$/R-4#P<W\\"
+	"P,S[P,S[P<W[P<W\\P<W\\PL[]PL[]PL[]O\\OYHJS8P,S[P\\_^Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q=#_Q-#_K[OHQM+`QM+`QM'`"
+	"QM+`QM'_QM'_QM+`QM+`QM+`QM+`QM+`Q='_Q=#_Q=#_Q=#_Q='_Q='_Q=#^Q=#^"
+	"QM'_Q<_]Q,[\\Q,[\\P\\W[P<OYP<SYP,OYO\\KWNL7P='^L)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+SMLR]D(V><6V><6VN@7V><7V><7V><7"
+	"VN@8VN@8V^D9W.H:W.H:W.H:W.H:V^H:V^D9VND9V>@8V>@9V>@9V>@9V>@9V>@8"
+	"V>@8V>@8V>@8VN@9VN@9V>@8V>@8V>@9V>@8V>@8VN@8VN@8VN@9V>@8V>@8V>@9"
+	"V>@8V>@8V>@8VN@8V>@8V><7T=`0M<+RP]#_R]D)S]T-T=\\/T=\\/T=\\/TM`0TM`0"
+	"TM`0TM`0T-X.S]T,S=L*R=8&LKWM>X:U-#]O)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.T9XB([2;7?*6&&Y3E:N2%.H2U:J56&S"
+	"9F_$?8?:C9?F>'W&1DZ\")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:W*P;G2]<7G\";W>`:G&X=7RY-4!P"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+3EJFZ//HJO6"
+	"I*W:J+/?LK[KQM+`R]D(S-H)S-H*S]T,U^45U.(2S-D)PL_`OLO[N\\?VN<;UNL;U"
+	"O<GX>H6T)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D+3EJS]T,T-X1P,X.O\\T1P<\\1RM@1X.T=Y_8E"
+	"X.X<WNP:WNP:X.T<W^T<W^T<X.X=X.X=U.(1P\\__O,GWN<?SN,7QN,7PM\\7QML3P"
+	"ML/NML/NM<+NM,#NM<'MML+NJ[?CEZ//E*#-EJ/0G*G6I+'>KKOIM<+QO,GYP<[^"
+	"Q-(!QM0#R-8%R-8%R=<&R=<&R=<&RM@'RM@(QM0$M</RHK'BH;+AJ;GGK[[MN\\CY"
+	"O,GYM</TC9_24%^425J0'BYB!1%\"!!!!%2%2%B)3!A)#!1%!E*'-R]D(R]D(R]D("
+	"R]D(R]D(R]D(R]D(R]D(R]D(R]D(RM@'RM@'R]D(RM@'R]D(RM@'RM@'RM@'RM@'"
+	"R=<&RM@'RM@'RM@'R]D(T=\\.U>,2T^$0T^$0V.84VN@7V^D8W>L:W>L:W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8"
+	"V^D8VN@7V^D8VN@7VN@7VN@7VN@7V^D8W.H9W^T=X_$AZO@I\\/XN[_TMZ_HJZ?@G"
+	"Z?@HZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ?@GZ/<GZ?@GZ?@GZ/<GZ/<GWNT<E:#.Q-'`"
+	"U.(2U>,3UN04U^45UN04U.(2TM`0T=\\/T=\\.T=\\/T=\\/T-X.T-X.T-X.SMP,RM@'"
+	"R-8%R-8%R=<&R=<&R-8%L[[MN<?WZ/<FZ?@GZ?@HZODHZ?@HZ?@HZ?@HZ?@HY_4E"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0DX_(AW>L:U.(0R-4#P<W\\P<W\\"
+	"P<W[P<W\\P<W\\P<W\\PL[]PL[]PL[]PL[]E9S&?XJWOLKYP\\_^P\\_^Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q=#_Q-#^Q=#_Q='`Q-#^K[KHQM+`Q='_QM'_"
+	"QM'`Q='_QM+`QM+`QM+`QM+`QM'`QM'`Q='_QM'_Q='_Q=#^Q=#_Q='_QM'_Q]'_"
+	"Q<_]Q,[\\P\\W[PLW[P,OYP<OYP<OYO\\GWM+WJ7VJ8)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DI+'AV.86V><6V><6VN@7V><7V><7"
+	"VN@8V^D9V^D9V^D9V^D9W.H:W.H:W.H:V^H:VND9VND9VN@9VN@9V>@8V>@9V>@8"
+	"V>@8V>@8V>@8VN@9V><8VN@9V>@8V>@9V>@8V>@8VN@9VN@8V>@8V>@9V>@9V>@9"
+	"V>@9VN@9V>@8VN@9V>@8V.<7R]H+ML/RQ=(\"S-H*S]T-T=\\/T=\\/T=\\/T=\\/TM`0"
+	"T-X.S]T-S-H*R-0#J;/A;'>D*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C5F<W:[AHC3C9;GC);HAI7GAI7GCYKM"
+	"E*#ODIWL<'K&;F^T3%6))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D8VJE=WW%>8+*>H7.<WS%=GS!5EZ2"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>8.PI:W9"
+	"IJ_<J;3AL;WIO,?UR]D(S-H)S=L+S]P,U.(2UN04SMP,Q-(\"OLKZNL?VNL;UN\\?V"
+	"O,?V1%!_)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DM\\+YN,4'OLT0OLP2O<L2O,H1O<L-U.$2"
+	"X_(@W.H9W.H8WNL:W^P;W^P;WNP;W.H9S=L*O<GWNL;SN<;QN,7PN,7PN,7PM\\3O"
+	"ML+MML+MM<+NM\\/ONL7QK+;CF*30EJ'.EZ+/FZ?4GZS:I[7BKKSJML/RO,GYP,W]"
+	"P]#`QM0#R-8%R-8%R-8%R-8%R=<&R=<&RM@'RM@'OLO[J[OJI[CFK;WKM,+QN<?V"
+	"O<K[O\\S\\N<?XD:;:5&28152**#AK\"Q=)!1%\"!!!!!!!!\"!-$G:G6R]D(R]D(R]D("
+	"S-H)R]D(R]D(R]D(R]D(R]D(R]D(R]D(RM@'RM@'RM@'RM@'R]D(R]D(RM@'Q-'`"
+	"O<KYQM0#RM@'RM@'RM@'R=<'R]D(T-X-U>,2T^$0TM`/U^44V><6V^D8W.H9W>L:"
+	"W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8"
+	"V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7W>L:X.X=Y?,BZ_HJ\\/\\O[OTM"
+	"ZODIZ?@HZ?@GZ?<GZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<GZ/<GZ/<GZ/<FUN03K+CF"
+	"S]T,V.45W.H:W.H:W.H:V^D9UN04TM`0S]T-S]T-S]T,SMP+S=L*R]D(R=<&R-8%"
+	"Q]4$Q]4$Q]4$Q]4$QM0#EI_+W.P;Z/<GZ?@GZODHZODHZODHZODHZ?@GY_8EYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DYO0DY?0CY/(AWNL;U>(1RM@&PL[]P<W\\P<W["
+	"P<W\\P<W\\P<W\\PL[]PL[]PL[]P\\_^OLGW:&V5AY3!P,S[P\\_^Q='`Q,_^Q-#^Q-#_"
+	"Q-#_Q-#_Q-#_Q=#_Q-#_Q-#_Q-#_Q-#_Q='_Q=#_Q='_Q=#_L+OHQ]0!QM+`QM'`"
+	"QM+`QM+`Q='_QM+`QM+`QM'_QM'`QM'`Q='_Q=#_Q='_Q='_Q=#_QM'`QM'`Q<_^"
+	"Q<_]P\\W[PLSZP,KXP,OYP,KXP,KWJK3?2E2#)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:G>HV.85V><6V><6V><7V><7V><7"
+	"VN@8VN@8VN@8V^D9V^D9W.H:V^H:V^H:V^H:VND9VND9VN@8VN@8VN@9VN@9VN@8"
+	"V>@8VN@9V>@8VN@9VN@9VN@9V><8V>@8V>@8V>@8V>@8V><8VN@8V>@9VN@9VN@9"
+	"VN@9VN@9V>@9VN@9V>@8U^86Q=,$NL;VQM0$S=L*T-X.T=\\/T=\\/T=\\/T=\\/S]T,"
+	"S-H)Q,__GZG87&:4)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D;G6\\65^O:&JUA(;0D9CCF*#JF:3Q"
+	"E:#OB)3E>H',AXK23UF,)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4EN3@8?-@HK4AY#<@8O5?(/+;G6N"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/$=WI*W9"
+	"J;+?J[;CK[KGM<'NR=8#S=H*SMP+S]P,TM`0U^45T-X.QM0$OLO[N\\?WNL?VO,CW"
+	"J+3B)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D>H:`N<8)O,L/O<P0NL@.N,4,N<</M\\8-M\\,("
+	"T=T-W.H8VN@6W.H8W>L9WNP:W>L9VN@7RM@'N\\?UN<;RN<7QN,7QN,7QN,3PM\\/N"
+	"ML+NM\\/ON,3OHZ_;8FV;?8BVG:C4FJ;2FZ?4GJO7H[#=J;?CL+WLM\\3SO,GYP,W]"
+	"P\\__Q=,\"R-8%R-8%R=<&R=<&R=<&R=<&RM@'R]D(Q=,#ML3TKKWLL+[MML3TN<?W"
+	"OLO[O\\S\\PL__O\\W\\H;/D9WRQ-D5W*SAK'\"I<$Q]1$1U/&R96I[+@R]D(R]D(R]D("
+	"R]D(R]D(R]D(R]D(R]D(R]D(RM@'Q]4$P]#`P]#_Q]4$RM@'RM@'R]D(RM@'OLKY"
+	"RM@'RM@'RM@'RM@'RM@'R=<&R=<&R=<&R]@'S]T,U.(2U.(1TM`/UN03V><6V^D8"
+	"W.H9W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8"
+	"V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7VN@7V^D8W>L:X.X>YO4D[?PL"
+	"\\/XO[/LKZ?@HZ?@HZ?@HZ?@GZ?@GZ?@GZ?@HZ?@GZ?@GZ/<GZ?@GZ/<GZ/<FW.L:"
+	"OLKXU>,2W.H:W>L;WNP<W.H:V^D9U^45T=\\/SMP,S-H)RM@(R=<'R-8&R-8%Q]4$"
+	"QM0#QM0#Q]4$QM0#M+_LL+WMY_8EZ?@GZODHZODHZODIZODHZ/<FY_8EYO4DYO4D"
+	"YO4DYO4DYO4DYO4DYO4DYO4DYO4DY?0CY/(AWNP;UN,2R]D'PL[]P<W\\P<W\\P<W\\"
+	"P<W\\P<W\\PL[]PL[]PLW\\J;3@N<7SM+[K8VN6CYO(P<W\\Q-#_Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q='_Q-#_Q-#_Q-#_Q-#_Q='`Q-#_Q-#_Q-#^L+OHQ]0!Q='_QM+`"
+	"QM'`Q='_QM+`QM+`Q='_QM'`QM'`QM'_QM'_QM'`QM'_Q='_QM+`QM'_Q=#^Q<_]"
+	"Q,[\\PLSZP,OYP<OYP,KXP,KXG*;3-T)R)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GR-4%V>86V><6V><6V><7V><7"
+	"VN@7VN@8V^D9V^D9V^D9W.H:V^H:V^H:V^H:V^H:V^D9VN@9VN@8VN@9V>@8VN@8"
+	"VN@9V>@8V>@8V>@9VN@9VN@9V>@9V>@8V>@8VN@9VN@9V>@8V>@8V>@8VN@9VN@9"
+	"VN@9VN@9VN@9VN@9V>@9UN45OLO]O<KYR-8%S=L+T-X.T-X.T-X.S]T-S-D)P,S["
+	"E*#.3EB')S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<7FW@8S;<7S397/)9W+%>8'/FZ7R"
+	"EJ'ODISK?875:FJM3%6))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-4!RBX[2BY'>CYGGCYCFAY#;@HC'"
+	",#MK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>H6S"
+	"J[;BK+CDK[OHML+POLGUS=H*SMP+S]P,T=\\.UN04TM\\0R-8&O\\O[O,CXN\\?VO<GX"
+	"B)/\")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D+SML@X_+F*3PF:3RK[L\"N\\D/HZ_\\BY;GL;X%L<$)L+T%"
+	"L;W]U>(0U>,1VN@6W.D8W.H8W.D7V>85R=8%N\\?UN<;RN<7QN,7QN<7QN,7PM\\/N"
+	"N,3PN<3PDY_*,CUN)S-D)S-D0$Q[@8VZHJW:HZ_;IK/?J[GFL;[MM\\3RO,GXP,W]"
+	"P\\__Q=,\"Q]4$R-8%R-8%R-8%R=<&R=<&R=<&R]D(RM@(P,W^M</SLL#OM\\7TOLS\\"
+	"OLO[O\\W]P,W]PL_`Q-(!M,/SDJ3787&E-$)U*#5F)C)B*C9DK[OIR]D(R]D(R]D("
+	"R]D(R]D(R]D(R]D(R]D(R]D(Q]4$NL;VGJG7A8^[BY?#LK[MQM0#RM@'RM@'P]#`"
+	"R=<&R]D(R]D(RM@'RM@'RM@'RM@'R=<&R=<&R=<&RM@'SML*U.(1T^$1T=\\.U>,1"
+	"V.85VN@7V^D8W.H9W.H9W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9W.H9"
+	"W.H9V^D8V^D8W.H9V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7VN@7W.H9WNP<XN`?"
+	"Z/<G[OTM[_XN[/LKZODIZ?@GZ?@GZ?@GZ?@GZ?@GZ/<GZ/<GZ/<GZ/<GZ/<GZ/<G"
+	"Y/,CT=\\-U.(2VN@7W>H:V^D9VN@8V.86T^$1S]T,S-H)RM@(R-8&R-8%Q]4$QM0#"
+	"QM0#QM0#Q=,\"NL;TG*C5X.\\?Z/<FZ?@GZODHZODHZ?@GZ/<FY_8EYO4DYO4DYO4D"
+	"YO4DYO4DYO4DYO4EYO4EYO4DY?0DY/(AW^P<UN03S-D'PL[]P,S[P<W[P<W\\P<W\\"
+	"PL[]PL[]PL[]PL[]K;;C<7NEL;WLL+GF9W\";DI_-PL[]Q-#_Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_Q=#_Q-#_Q=#_Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_Q='_Q-#^K[KFQ]0!QM+`Q='_"
+	"Q='_QM'`Q='_Q='_Q='_Q='_QM'`Q='_Q='_QM'_QM'_QM+`Q='_Q<_]Q,[\\Q,[\\"
+	"PLSZP,KXP,KXP,KXOLCUBI/!+#=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DG:G:V.85V.86V><6V><7V><7"
+	"VN@7VN@7VN@8VN@8V^D9V^D9W.H:V^H:V^H:VNH:VND9V^D9VND9VN@8VN@8V>@8"
+	"V>@8V>@8V>@8V>@8VN@9V><8V>@8V>@9V>@8VN@9VN@9VN@9VN@8VN@9VN@9VN@9"
+	"VND9VN@9VN@9VN@9VN@9U.,3NL?XO\\S\\R=<&S=L+S]T-SMP,R]D)O<GYCIC'0DY]"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6&&8DYOBD9GFF:/OG:GUG*CUDIOI"
+	"?X;57&&O65NGAXK12%*&)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D@(;&D)GCEZ#MFJ/PDYWKBY+;"
+	"76.5)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!P"
+	"HZ[:K;GEK[OHL[_LM\\+NR]@&S=L*S]P,T-X-U.(2T]`1RM@(O\\S\\N\\?WN\\CWO<GX"
+	"56\"0)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D04V!H*SMO<P0I[<\"?HK@AY+FI[+\\ML,-?8S@BY7FK;H#J[?`"
+	"J+3]N\\7ZS]T+UN02V^@7V^D7V^@7V.44Q]4#NL?TN<;SN,3ON,3ON,3PN,3ONL7Q"
+	"N,3P?8>U*C5F)S-D)S-D)S-D)S-D)S-D2%.#BY7\"JK7AK;KGLK_MM\\3RO,CXO\\S\\"
+	"PL__Q-(!QM0#Q]4$R-8%R-8%R-8%R=<&R=<&RM@'S-H)R=<'OLO\\M\\7UN,;VO<O["
+	"PL_`P<__P<[^P<[_P]#`Q=,\"PL__ML3UG:[@@Y3&=8:VD9[-Q=,\"S-H)R]D(S-H)"
+	"R]D(R]D(R]D(R]D(R]D(R]D(PL__HZ_>>8:S;'BE:W>E@8Z[F:;4LK[LQ=,\"RMD'"
+	"Q]4$O<GXRM@'R]D(RM@'RM@'RM@'RM@'RM@'R=<&R=<&R=<&R=<&S=L*T^$0U.(1"
+	"T-X-T^$0V.85VN@7V^D8W>L:W>L:W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9W.H9"
+	"W.H9W.H9W.H9V^D8V^D8V^D8VN@7V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7W.H9"
+	"W^T<X_$AZODI\\/\\O[_XMZ_HJZ?@HZ?@HZ?@HZ?@GZ?@HZ/<GZ/<GZ/<GZ/<GZ/<G"
+	"Z/<GZ/<FXN`?VN@7VN@7V^D9VN@8U^45U.(2T-X.S=L*R]D(R=<'R-8&Q]4$Q]4$"
+	"QM0#Q-'`ML/PH*W:VN@7Y?0CY_8EZ/<FZ?@GZ?<FY_8EY_8EYO4DYO4DYO4DYO4D"
+	"YO4DYO4EYO4EYO4EYO4DY?0DY/,BW^P<U^04S-D(P\\_^P,S[P<W\\P<W\\P<W\\PL[]"
+	"PL[]P<W\\PL[]P<W\\A8JT>(2PML+QK;;B:G.>EJ/1P\\_^Q-#_Q-#_Q='`Q-#_Q-#_"
+	"Q='`Q-#_Q-#_Q=#_Q-#_Q-#_Q='_Q-#_Q-#_Q-#_Q='`Q-#^KKGFQ]0!QM+`Q='_"
+	"Q='_QM+`QM+`QM'_Q=#_Q='_Q='_Q='_QM'_QM'_QM'_QM#^Q<_^Q,[]P\\W[P<OZ"
+	"P<OYP,OXP,KXN\\7R='^M)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D76J:U^44V.85V.86V><6V><7"
+	"V><7V><7VN@8V^D9V^D9V^D9W.H:V^D9V^H:VND:V^D9V^D9VN@8VN@8VN@8VN@8"
+	"VN@9V>@9V>@8VN@9V>@9V><8VN@9VN@9V>@8VN@9VN@9V>@9V>@8VND9VND9VN@9"
+	"VND9VN@9VN@9VN@9V>@8TN$1M\\3TP<[^R=<'S-H*R]D)OLGYB)/#.T9V)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIKCY?<=X'79VS!8&6W4%6E2U\"?"
+	"6F\"R>8'/CY?H>G[#.T9X)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D:'&JF9[IG:;RHJOXGZGVEI_L"
+	"@X;$*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	";'BFK[KGK[OHLK[LN,3SOLCUSML+S]P,T-X-T^$1T^$1RM@(P<[^O,CXO,CWL+SK"
+	"*C5F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D86VDL;[_O<L1O,L1N\\H0I[8#>(;<AI3IKKH#G:S[:W7'E)_NI;+]"
+	"H*WXHJSNQ]0!SMP)VN<6V^@7V^@7V.44Q]4#NL?TM\\3ON<7NN,3ON<7QNL;RKKKF"
+	"7FJ9)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4EV,DY_+LK[LML/QO,CXO\\O["
+	"PL__Q-(!Q=,\"Q]4$R-8%R-8%R-8%R-8%R-8%R=<&R]D(SMP,RM@(O\\S\\N\\GYO\\S\\"
+	"PL_`QM4$P]$!P<[^PL__PL__P]#`P]#`P]#`P<[^P,W]O\\S\\R-<%S-H)R]D(S-H)"
+	"R]D(R]D(R]D(R]D(R]D(RM@'OLO[FJ?7=8*N;WRI=(*PCIS+EZ748&B69F^:I*_;"
+	"R=8$S=L*R]D(R]D(R]D(R]D(RM@'RM@'RM@'RM@'R=<&R=<&R=<&R=<&R=<&S-D("
+	"TM`/U.(1TM`/T^$0V.85VN@7V^D8W.H9W>L:W>L:W>L:W>L:W>L:W>L:W.H9W.H9"
+	"W.H9W.H9W.H9W.H9V^D8W.H9V^D8V^D8VN@7V^D8V^D8V^D8VN@7VN@7V><6VN@7"
+	"V^D8W>L:X.X>Y?,C[?LK\\/\\O[OTMZ_HIZ?@HZ?@HZ?@HZ/<GZ/<GZ/<GZ/<FZ/<F"
+	"Z/<FZ/<FY_8FY_8EYO4DX>`?W.H9U^45T^$0S]T,S=L*R]D(R=<&R-8%Q]4#Q-'`"
+	"O,CVIK+>L+WLV><6XN`?YO0CY_8EZ/<FY_8EY_8EYO4DYO4DYO4DYO4DYO4DYO4D"
+	"YO4DYO4EYO4EYO4EY?,CX_(AW^T<U^44S-H(P\\_^P,S[P<W\\P,S[P<W\\PL[]PL[]"
+	"PL[]M\\'NL[[LPLW[;W2;?HNYN,3RJK/?;':BF:;4P\\_^Q-#_Q-#_Q='`Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q-#_Q-#_Q='`Q=#_Q-#_Q='`Q='`Q=#_Q-#^K;GEQ],!QM'_QM'_"
+	"Q='_QM'_QM'_QM'_Q='_Q='_Q='_Q='_QM'_Q]'`QM#^Q,_]P\\[\\PLW[P<OYP<OY"
+	"P<OYO\\GWM+[K7VJ8)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DO\\O\\V.85V.85V.86V.86"
+	"V><7V><7VN@8VN@8VN@8V^D9V^D9W.H:V^H:V^H:V^D9V^H:VND9VN@8VND9VN@8"
+	"V>@8V>@9V>@8VN@9V><8VN@9V>@8VN@8VN@9VN@9VN@9VN@9VN@9VND9VND9VND9"
+	"VN@9VND:VN@9V^D:V><8S=P-M\\/RP]#_R-4%P<W\\D9S+/TIZ)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>'_%E9CBE:#PD9[PD)OOE)[Q"
+	"F:/REZ'N<7C'@H?'+CIK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.D5XG:'GHZOUJ+#]J++^H*SX"
+	"F)_F6V*6)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"*35FF*/0L;SILK[LM<'PM\\'NS-H)SMP+S]T,TM\\/TM`0R]D)PL__O<GYO<GXDIW,"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D*C9G8&REFJ3LM+\\$O<H1I+#^EI_NN,4,I;4\">XGCEJ#SJKD$;7G.>X39GJKX"
+	"FJ;RF:/MN,+RQM/]V.43VN<5VN<6U^03R-8$N\\;QN<3MN<7PNL;RO,CTGZO8/TM["
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7&>6G*C7N<;UOLO["
+	"P<W]P]#`Q=,\"QM0#Q]4$Q]4$R-8%R-8%R-8%R=<&RM@'S=L*T^$1RMD(P<[_O\\S\\"
+	"PL__Q=0#R-<&Q-,\"O\\S]P<[^P<[^P<[^P<[^P,W]O\\S\\O\\S\\RM@'R]D(R]D(R]D("
+	"S-H)R]D(R]D(S-H)R]D(RM@'OLO[EZ74=X6P<X*M?HRZFJ?7HJ_?55Z.'RM;$QU,"
+	"6&&,H*K7Q-#`R=<&RM@'RM@'R]D(R]D(RM@'RM@'RM@'R=<&R=<&R=<&R=<&R=<&"
+	"R=<&R]D(T=\\.U.(1TM`/TM`/UN03V><6V^D8W.H9W>L:W>L:W>L:W>L:W>L:W>L:"
+	"W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7"
+	"VN@7VN@7W.H9WNP;X>\\?Y_8E[OTM\\?\\O[?PKZ?@HZ?@HZ/<GZ/<GZ/<GZ/<GZ/<F"
+	"Z/<FZ/<FZ/<FZ/8FZ/<FZ/<FZ/<FY_8EX_(AWNT<VN@7UN44T^$0S]T,R]D(R=<%"
+	"Q-(!U.,2X_(AYO4DY_8EY_8EY_8EYO4DY_8EYO4DYO4DY_8EYO4EYO4DY_4EYO4D"
+	"YO4EYO4EYO4EYO4DY?,CX.X=U^44S=H)P\\_^P,S[P<W[P<W\\P<W\\PL[]PL[]PL[]"
+	"OLGV=WZDGZS9P<W[:G&9@Y&]NL;UI['>;7FDG*G7Q-#_Q-#_Q-#_Q='_Q-#_Q-#_"
+	"Q-#_Q-#_Q-#_Q='`Q-#_Q='_Q='_Q-#_Q='_Q='`Q='_Q,_]KKGFQ]0!QM'_Q=#_"
+	"Q='_QM'_QM'`QM'`QM'_QM'`QM'_QM'`QM'`QM#^Q<_]P\\[\\PLW[P<OYP<OYP,KX"
+	"P,KXJK/A2E6$)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA)'\"V.85V.85V.85V.86"
+	"V.86V><7V><7VN@8VN@8V^D9V^D9V^D9V^H:V^H:V^H:V^H:VND9VN@8VN@8VN@9"
+	"V>@8V><8V><8V>@9VN@9VN@9V><8VN@9VN@9VN@9VN@9VN@9VND9VN@9VN@9VN@9"
+	"VND9VND9V^D9VND9V.87R-8'NL;UP,S\\G:C73EB')S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D=(#!=7S/=GW*B(W6CI/>EY_J"
+	"E9_MDIOIC)3>>X&_)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DA8W)IZ[VJK3^K+@!JK;`"
+	"H:OWE9O8.D5V)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D35F(K+CELK[LM<'PN<7TP<SXSMP+S]T,T=\\.TM\\/R]D)PL__O<GYOLKZ9G&@"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"7VNBJ[CZM\\8,A97E@HO<M+T%KKT)='_6CYCFL;\\'DZ/U?HWEI*_]AI7G9G#!DI[N"
+	"E*#LDY_HK[GIQ='\\U^02V.84V>85U^43R]@&O,?TNL;SN\\?TO,;UB)/\"+#AI)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35F9W*AI[+A"
+	"O\\OZP<[^Q-(!QM0#Q]4$R-4%Q]4$R-8%R-8%R=<&R=<&RM@(S]T-U^86S-L+P]$!"
+	"PL_`Q-(!Q]4$RM@'R=<'P]#`P,W]P,W]P<[^P<[^P,W]PL__S-H)R]D(R]D(R]D("
+	"R]D(S-H)R]D)R]D(R]D(RM@'O,GYE*'0=X6Q=X:RA9/!H;#?J+?F4%J*'\"A9\"A5'"
+	"!!!!\"!-\"45B#FJ31PL[]R=<&RM@'RM@'R]D(RM@'RM@'RM@'R=<&R=<&R=<&R-8%"
+	"R=<&R-8%R-8%RM@'S]T,U.(1TM`/T=\\.UN03V><6V^D8W.H9W.H9W>L:W>L:W>L:"
+	"W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8W.H9V^D9V^D8V^D8V^D8V^D8VN@7VN@7"
+	"V><6VN@7VN@7V^D8V^D9W^T<XO$AZ?@H\\/XN\\/\\O[/LJZ?@HZ/<GZ/<GZ/<FZ/<F"
+	"Z/<FZ/<FZ/8FZ/<FZ/<FZ/<FZ/<FZ/<FY_8FZ/<FY_8EY_8FY_8EY_8EY_8FY_8E"
+	"Y_8EYO4DYO4DY_4DYO4DYO4DYO4DYO4DYO4DYO4DY_8EY_8EYO4DYO4DYO4DY_8E"
+	"YO4EYO4EYO4DY?,BX.X=V>85SML*Q,_^P,S[P,S[P,S[P<W\\PL[]P<W\\PL[]PL[]"
+	"HJK5:G6>IK/BP,OY:'&;B)3#O,CWI:_<;WNHGJO:Q-#_Q='`Q-#_Q='`Q='`Q-#_"
+	"Q-#_Q-#_Q=#`Q-#_Q='`Q='`Q='`Q-#_Q='`Q=#_Q-#_O,;TJK7BQ]+`QM'`QM'`"
+	"Q-#^QM'`QM'_Q='_QM'_QM'`Q]+`Q]'_QM#^Q,[]P\\[\\PLW[P<OYP,OYP,KXO\\GW"
+	"G*;4-D)R)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-$!QR-8%V.85V.45V.86"
+	"V.86V><6V><7V><7VN@8VN@8V^D9V^D9V^H:V^H:V^D9V^H:V^D9V^D9VN@8VN@8"
+	"V>@8V>@9V>@8V>@8VN@9VN@9VN@9VN@8VN@9VN@9VN@9VN@9VN@9VN@9VN@9VND9"
+	"VND9VND:VN@9VND9U^86Q-(\"L+SJ9&^>)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D3%:,DYSBD)WKB)7FAY+AEJ#K"
+	"E:#MDYSIDIC=4EF+)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4UV3J;#TK+7^K[H\"K[L#"
+	"J[@!HZWVC9+/+SML)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D:G:EL;WKM,#OM\\/RM\\/OSMP+S]T,T-X-T-X.R]D(PL[^OLKZM\\+Q+CIK"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.45X"
+	"K;;[NL8-O<H1L\\,-@)'DBY3DM\\4,DJ#Q=H#8F:+OIK']FZG[I+'`DI_Q76.RBY?G"
+	"E:#KD)O?K;?DPL_[UN,2V.44V.84UN02R-4$O,?UO,CUML+O:W:E)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=H"
+	"<7RJKKGHPL__Q=,\"QM0#Q]4$Q]4$R-8%Q]4$R-8%R=<&R=<&S-H)TM`/V^D:SMT-"
+	"Q=,#P]$!Q-(!R-8%R-8&R]D)Q]4$P](!P<[^P<[^P<[^QM0#S=L*R]D(R]D(R]D("
+	"R]D(R]D(R]D(S-H)S-H)RM@'N\\CXD9[.>(>R>8BTBIC(I[7DK+OJ35>&'2E:\"15&"
+	"!!!!#AE+\"!-$*35?2U)\\E)[*O\\OZR=<&RM@'RM@'R]D(RM@'RM@'R=<&R=<&R=<&"
+	"R=<&R-8%R-8%R-8%R-8%RM<&SMP+T^$0TM`/T=\\.U>,2V><6W.H9W>L:W>L:W>L:"
+	"W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8VN@7VN@7"
+	"VN@7VN@7VN@7VN@7VN@7V^D8W.H9W^T<Y/(BZ_HJ\\?\\O[OTMZODIZ/<GZ/<FZ/<F"
+	"Z/<FZ/<FZ/<FZ/<FZ/<FZ/<FY_8FZ/<FY_8FY_8FY_8FY_8FY_8FY_8FY_8EY_8E"
+	"Y_8EY_8EYO4DYO4DY_8EYO4DYO4DYO4DY_8EYO4DY_8EY_8EYO4DYO4DY_4EYO4E"
+	"Y_8EYO4EY?0CX.X=V><6S]P+Q-#_P<W\\P,S[P,S[P<W\\P<W\\P<W\\O\\KYK[OHP<W\\"
+	"CY:_<GVGJ[CGOLCV:'&=BYC&OLOYHJW8<GZJH:[=Q-#_Q-#_Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_Q-#_Q='`Q-#_Q-#_Q-#_Q-'_Q='`Q='_Q-#_O<CUH:K6M+_LQM'`QM'`QM'`"
+	"QM'_QM'_QM'_Q='_QM'_Q]+`Q]'_QM#^Q,[]P\\[\\PLSZP<OYP,OYO\\KXOL?UB93!"
+	"*S=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DDZ#1U^44V.85U^45"
+	"V.85V.85V.86V><7V><7VN@8VN@8V^D9W.H:V^D9W.H:V^D9V^D9V^D9VND9VN@9"
+	"VN@9VN@9V>@9VN@8VN@9VN@9V>@9VN@9VN@9VND9V>D9VND9VND9VND:VN@9VND9"
+	"VND:V^D:V^D:VN@9UN05LK[O04Q\\)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D45N2CYC=F:/LF:/LEZ#K"
+	"EI[HE)S@EIW:.$%Q)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DCI;4K;7[L+L\"L;T%"
+	"L+T%K;H!IK#XBY'*,#ML)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D@X^^M,#OML+QNL;TQ=,!S]T,S]T-S]T-R=<&PL[^O\\O[FZ?6)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D4%V5"
+	"HZSQK;;^O<H0NL@0K+L'B9;JI*[ZI[8\"?8GA?(;<H*OWGZKVEJ'ODY_O76.T@(S:"
+	"E9[FEZ'@M\\+NQM0\"T]`/U^03UN03TM`/Q-#_OLKXJ[;D3EF))S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D+3EJ=H*PL;WLQ-(!QM0#Q]4$R-8%Q]4$R-8%R-8%R=<&R=<&S=H*T^$0W.H:"
+	"T=`0R-8&QM0#QM0#QM4$Q]4$R-8%Q]4$Q-(!P]$!P<[^S-H)S-H)R]D(R]D(R]D("
+	"R]D(R]D(S-H)S-H)S-H)R-8&N<;VCIO+>HBU?(NXC)O*J;CGKKSK252\"'\"A9\"!1%"
+	"!1%\"(R]A(\"Q>'RI7\"Q9',CIG0TISF*+/QM0#RM@'R]D(RM@'RM@'RM@'RM@'R=<&"
+	"R=<&R-8%R-8%R-8%R-8%R-8%R-8%R=<&S=L*T^$1T^$0T-X-U.(1V><5V^D8W.H9"
+	"W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8W.H9V^D8V^D8V^D8"
+	"VN@7VN@7VN@7VN@7VN@7VN@7VN@7V^D8W>L:X.X>YO0D[?PL\\/\\O[?PLZ?@HZ/<G"
+	"Z/<GZ/<FZ/<FY_8FZ/<FZ/<FZ/<FZ/<FY_8FY_8FY_8FY_8FY_8FY_8FY_8EY_8E"
+	"Y_8EYO4DYO4DY_8EYO4DYO4DYO4DYO4DYO4DYO4EY_8EYO4DY_8EYO4DYO4DY_8E"
+	"YO4DY?0CX>\\?V><6T-T+Q='`P,S[P<W[P<W\\P<W\\P<W\\PL[]PL[]CY:_BI;\"P<W\\"
+	"B9\"Z=H.OKKKIO,;U:7*>CIO)O\\S[H:G6<GZJH[#?Q='`Q='`Q='`Q-#_Q-'`Q-#_"
+	"Q-#_Q='_Q='`Q-#_Q-#_Q='`Q='`Q='`Q-#_NL3RI*[;P\\_]P,OXQM'`QM'_QM'`"
+	"QM'_QM'_Q=#_QM'_Q]'`QM#^Q=#^Q<_]P\\W[P<SZP<OYP,KXP,KXNL3R=H\"N)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D04U^S]P,U^44U^45"
+	"V.85V.86V.86V><7V><7V><7VN@8V^D9V^D9V^D9V^D9V^D9V^D9V^D9VND9VND9"
+	"VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VN@9VND9VND9VND9V^D:V^D:VND9"
+	"VND9VN@9V^D:VN@9U.(2BI;')S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9&^GFZ'DEYWBEYSA"
+	"F)WCF9[BBI'+)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1U*&I[#QL+G_LKT%"
+	"L[\\&L[`'K[T$J[3\\D9K5/4AY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D*35FB)3\"ML+PNL;UNL7TSMP+S]T,S=L*R-8%P<W]P,S\\9&^>)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D?HS%"
+	"J[C`HJ[\\L+P$N,8.L;`*FJ?WF*7UI[/`@HS?<H#3EJ'PEJ+OF:#KCIGD9F^\\AI#;"
+	"G:CHM+_QO\\OZR=<%T=\\-U.$/U.$0SML*PL[]E:#/,S]O)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D+3EJ>H:VM<'PQ=,\"Q]4$Q]4$R-8%R-8%R=<&R-8%RM@'S-H)T=\\/"
+	"V.86T^$1S-L*R-8&Q]4$QM0#Q=,\"Q-(!PL__P]#`R]D(S=L*R]D(RM@'R]D(S-H)"
+	"R]D(R]D(R]D(R]D(S-H)R-8%M\\7TCIK*?HNY@8^^D)[-JKGHKKSK2E6#'2E:!A)#"
+	"!A)#(S!B*35H)C-E(2Y?)B]='2=6.T)KA(ZYQM8$RM@'R]D(RM@'RM@'RM@'RM@'"
+	"R=<&R=<&R=<&R-8%R-8%R-8%R-8%R-8%R-8%R=<&S-H)TM`/T^(1T=\\.T^$0V.85"
+	"V^D7W.H9W>L:W>L:W>L:W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8"
+	"V^D8V^D8VN@7VN@7VN@7VN@7VN@7V><6VN@7V^D8W>L:X>\\?Z/<F[_XN\\/XO[/HJ"
+	"Z/<GZ/<FZ/<FY_8FZ/<FZ/<FY_8FZ/<FY_8FY_8EY_8FY_8FY_8FY_8FY_8FY_8E"
+	"Y_8EYO4EYO4DY_8EYO4EYO4DYO4DY_8EYO4DY_8EY_8EY_8EY_8EY_8EYO4DYO4D"
+	"Y?0CXN`?V^@7T-T,QM,!P<W[P,S[P<W\\P<W\\P<W\\PL[]PL[]ML'M96V4DZ#.PL[]"
+	"A(RV>8:SL;[MN<3R;'2?D)[+P,W\\G:;1=8&NIK/BQ='`Q='`Q-#_Q-#_Q='`Q='`"
+	"Q-#_Q-#_Q='`Q-#_Q='`Q='`Q='`Q=#_M;_MJ;3AQ-'_Q=#^O\\GVQM'`QM'`QM'_"
+	"Q=#_QM'_QM'_Q]'`Q=#^Q<_]Q,[]PLW[P<OYP,OYP,OYP,KXL[[L8&N9)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DG*K:U^44U^45"
+	"U^45U^45V.85V.86V><7V><7VN@8V^D9V^D9V^D9V^D9V^D9V^D9V^D9V^D9VN@9"
+	"VN@9V>@9VN@8VN@9VN@9VN@9VN@9VND9VND9VND9VND9VND9VND9V^D:VND9VND:"
+	"V^D:V^D:VND9VN@9T=\\/<WZN)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*S=I?H:`G:3EG:3G"
+	"H*;HCI;//TEZ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D<GVUKK;[LKP\""
+	"L[X$M,$)M<()L[`'K[P#HJWO<7JQ+#=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D?XNZML/RN,/RRM<&SMP+R]D(QM,\"PL[^I;'@)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D97\"HH:WMNL<-"
+	"N<8/L\\(.I;+_L;\\&J[<!I;'^J[H$H:W[AY/D6EVNCYKJDIOHAX[7EI[EA(O0J;/N"
+	"O,CXO\\OZP\\_^R=8$S]P+TM\\-T-T+P<W\\>86T)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D,#ML?HJYML+RQM0\"Q]4$Q]4$R-8%Q]4$R=<&R=<&S-H)"
+	"S]T,T^$0T^$1T=\\.S=L+R]H)RM@'R=<&RM@(S=L+SMP+S-H)R]D(R]D(R]D(R]D("
+	"RM@'R]D(R]D(R]D(S-H)R=<&M\\3TD9[-@Y\"_B);%DJ'0K+SJK[[M8W&@(BYA\"!1%"
+	"!A)#(C!A*35G*SAJ*SAJ*C9H(2Y@)C%?$1Q)H*S9RM@'R]D(RM@'R]D(RM@'R=<&"
+	"RM@'RM@'R=<&R=<&R-8%R-8%R=<&R-8%R-8%R-8%R-8%R=<&R]D(T=\\.U.(1TM`/"
+	"TM`/V.85VN@7W.H9W>L:W>L:W.H9W>L:W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8"
+	"V^D8VN@7VN@7VN@7VN@7VN@7V><6V><6V><6V><6VN@7W.H9WNP<X_$AZ_HJ\\/\\O"
+	"[OTMZODIZ/<GZ/<FY_8FZ/<FY_8EY_8EY_8FY_8FY_8EY_8FY_8FY_8FY_8FY_8E"
+	"Y_8EYO4EYO4DYO4DYO4EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DYO4DY?0C"
+	"XN`?VN@7T=\\.QM,!P<W\\P,S[P<W\\P<W\\P<W\\P<W\\LKWKP,S[IJ_;:'*=F:;4PL[]"
+	"@(FR?8JWL\\#NM\\'O;':ADZ#.P<[]FJ//=8*OJ+7DQ='`Q='`Q-#_Q-#_Q='`Q='`"
+	"Q-#_Q='`Q='`Q='`Q='`Q='`P\\[]K[KGK[KHQ]0!Q,_^P\\[]OLGUQM'`QM+`QM'_"
+	"Q=#_QM'`QM'_QM#^Q<_]P\\W\\P\\W[P<OYP,KXP,KXO\\GWJ[7C2E6%)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1E*#S]T,U^44"
+	"UN04U^45U^45V.86V><7V><7VN@8VN@8V^D9V^D9V^D9V^H:V^D9V^D9V^D9V^D9"
+	"VND9VND9VN@8VN@9VN@9VN@9VN@9VN@9VND9VND9VND9VND9VND9V^D:VND9V^D:"
+	"V^D:V^D:V^D:V><8S=L,5V*1)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,CYP0DQ_"
+	"04M^)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35FB)3/L+K^"
+	"LKP!M+\\&ML,*ML,+M<0+M,$)LKX%GZCG9W\"F*C9G)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D=8*QML+RM;[KR]D(R=8%Q=(!NL7U3%B()S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9G:'2LH:WMO,D-O<H1O<H2"
+	"N<<0L;X*I;+`J+3]HZ_\\GZKXH*KXGJCTCIGI4U2CBI3AEI[GBI#5BY715F&59'\"B"
+	"EZ/3O,CWQ],!R=8$S=H(S=H(K;GH4%R,)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D,S]O@8V]N,3SQM0#Q]4$Q]4$R-8%R-8%R=<&"
+	"RM@'S=L*T-X-TM`/T=\\/T=\\/T-X.T-X-S]T,SMP+S-H)R]D(RM@'RM@'R]D(RM@'"
+	"R]D(R]D(R]D(R]D(R]D(R=<&N<?VF*74BIC'CYS,EJ34K+OJM,+QD9[.1E:(%B15"
+	"\"!1%%R-5)S1E+#AJ+#EJ+CIL+3IL)S1F!Q-$35>#Q]4$RM@(R]D(R]D(RM@'RM@'"
+	"RM@'R=<&R=<&R=<&R=<&R=<&R=<&R-8%R-8%R-8%R-8%R-8%R-8%R-8%RM@'T-X-"
+	"U.(1TM`/T-X-U^44VN@7V^D8W.H9W.H:W.H9W.H9W.H9W.H9W.H9V^D9W.H9V^D8"
+	"V^D8V^D8VN@7VN@7VN@7VN@7V><6VN@7V><6V><6V><6VN@7VN@7W.H9W^T=Y?0D"
+	"[OPL\\O`P[OPLZ?@GZ/<FZ/<FY_8FY_8FY_8FY_8EY_8FY_8FY_8FY_8FY_8FY_8E"
+	"YO4EYO4EYO4DYO4EY_4EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4EYO4EY?0DXN`@"
+	"V^D8TM`.Q]0\"P<W\\P,S[P<W[P<W\\P<W\\PL[]J+#<>8*NNL;UH:K7;7>DGJK9P\\_^"
+	"?H:P@8VZML+PML#M;GBCE:+0PL_^F*',>(2QJ+7DQ-#_Q='`Q='`Q='`Q-'`Q-#_"
+	"Q-#_Q-#_Q='`Q='`Q='`PL[\\J++?M,#MQ],!Q-#^PL[]P\\_\\OLGUQ='_QM'_QM'_"
+	"QM'`Q]'_QM#^Q,[\\Q,[\\PLS[P<OYP,KXP,KXO\\GWGZK7.D5U)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DFZC8U^44"
+	"UN03U^44U^45V.85V.86V><7V><7VN@8V^D9V^D9V^D9V^D9V^D9V^D9V^D9V^D9"
+	"VND9VND9VND9VN@9VND9VND9VN@9VND9VND9VND9VND9VND9VND9V^D:V^D:V^D:"
+	"V^D:V^D:VN@9V.87Q]0$,S]O)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+SMME9_<"
+	"L;K^L[T\"M+\\&M<()ML0+M\\0,M\\0,M\\0+M<$%H:OJ<'JR,CYO)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D4EZ/G*C5N,'LQ='`J+3C3UJ*)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D56\"4AY'-KKGZO<H/O<H/O,D.O<H0NL8."
+	"K[L%IK#\\G*?UI*_YH:SWEZ+NEZ#LEI[JDISJ8&FWDYSBCIC57&B>)S-D)S-D)S-D"
+	")S-D-$!Q:'2D<GZM;'BH2U>')S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-4%RA)\"_N<;VQ]4$Q]4$R-8%R=<&"
+	"R=<&R=<&R]D(S-H)SMP+S]T,SMP+S=L*S-H)R]D(RM@'RM@'RM@'RM@'R]D(R]D("
+	"RM@'RM@'R]D(R]D(R]D(RM@'O<KZH*[>D9_.E:/2G:K:JKCGM,+RLL#O?8^`-T9X"
+	"+#IO\"15&$!Q-(BY?*SEJ+SMM+CMM(2Y@!A)#$!E&ML+QR]D(R]D(R]D(RM@'RM@'"
+	"RM@'R=<&RM@'RM@'R=<&R=<&R=<&R=<&R=<&R-8%R-8%R-8%R-8%R-8%Q]4$R-8%"
+	"RM@'SMP+U.(1TM`/T-X-U>,2V><6V^D8V^D8W.H9W.H9W.H9W.H9W.H9W.H9W.H9"
+	"V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7VN@7V><6V><6V><6VN@7V^D8W>L:"
+	"X>\\>Z/<G\\/XN\\/\\OZ_HJZ/<FY_8FY_8FZ/<FY_8FZ/<FY_8FY_8FY_8FY_8FY_8E"
+	"Y_8EYO4DYO4DYO4DY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4EYO4DX_$@W.H9"
+	"T^$/R-4#P<W\\P,S[P,S[P<W[P<W\\PL[]P<W\\='JB?XRZO,GWGJC4;WJGHJ_=P\\_^"
+	">X.O@H^[M\\/RL[WK;7BDEJ/2P\\_^E9W(>86RJK?EQ-#_Q='`Q='`Q-#_Q='`Q='`"
+	"Q='`Q='`Q-'`Q-#_P<SZHZW9N\\?UQ='_Q-#^P\\_^P\\_^P<SYP,SYQ='_QM'_QM'`"
+	"QM'_Q<_]Q<_]P\\W\\PLSZP<OYP,KXO\\GWO\\GWE)[++CEJ)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D04U^RMD("
+	"U^44UN04U^44U^45V.86V.86V><7VN@8VN@8VN@8V^D9W.H:V^D9V^D9VN@8VND9"
+	"VND9VND9VND9VND9VND9VN@9VN@9VND9VND9VND:VND:VND:VND:V^D:V^D:V^D:"
+	"V^D:V^D:V^D:UN05O<CX)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,3UN"
+	"D)O7L;O_L;P!LKX$L[`&ML()N,0,N<8-N<8-N,4,ML,)K;GZD)K69&^D,S]P)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35F45V+2E6#)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D,3UN9&^DBI71K+;WOLD-OLD/OLL0P,T2O,@-M\\0)L+T$J[7^"
+	"I*SWFZ3PDYOGEZ#IH:OTEI_IC9?@AX[/F*'D:76P2U:+)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-D-SAY/#O,CXQ]4$R-8%"
+	"R-8%R=<&R=<&RM@'RM@'R]D(R]D(RM@'RM@'RM@'RM@'RM@'RM@'RM@'RM@'RM@'"
+	"RM@'R]D(R]D(R]D(R]D(R]D(P<__JKGIFJC8G*K9H['@J+CFML3TNL?WK;OL>8F\\"
+	"2EB-/4R\"#!A*!1%\"$1U.)#%B*SAI'RQ=!1%\"#AA&LK_NR]D(R]D(R]D(R]D(RM@'"
+	"RM@'RM@'RM@'R=<&R=<&R=<&RM@'R=<&R=<&R=<&R=<&R=<&R=<&R-8%R-8%R-8%"
+	"R-8%R-8%R=<&S-H)T^$0U.(1T=\\.T^$0V.85VN@7V^D8W.H9W.H9W.H9W.H9W.H9"
+	"V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7V><6VN@7V><6V><6V><6VN@7"
+	"V^D8WNP;XN`@Z_HJ\\?\\P[OTMZO@HZ/<FZ/<FZ/<FY_8EY_8FY_8FY_8FY_8FY_8E"
+	"YO4EYO4EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_4EY_8EY_8EYO4EX_(AW>H:T^$0"
+	"R-8$P<W\\P,S[P,S[P<W\\P<W\\O<CVO\\OYNL3S8FJ1B)3\"O<KXFZ31<WVJI;+@P\\_^"
+	">'^KAI*_N<;TL;SI;GFEF*33P\\_^D9O'>H:SK+GHQ-#_Q='`Q='`Q-#_Q='`Q='`"
+	"Q='`Q=#_Q-#_OLGWI:_<P<S[Q='_Q-#^Q-#^P\\_^Q,_^P,KVPL[[QM'_QM'`Q=#^"
+	"Q<_^P\\[\\PLW[P<SZP,OYP,KXO\\GWO<;TA9\"^*35F)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DB)7%"
+	"UN03U^44U^44U^44U^45V.86V>87V><7VN@8VN@8V^D9V^D9V^D9V^D9V^D9V^D9"
+	"V^H:VND9VND9VN@9VN@9VN@9VND9VND9VND9VND9VND:VND:VND9VND9V^D:V^D:"
+	"V^D:V^H:VN@9U.(3J+3D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"+#AI?HK#KKG[L;O_L;P!L[X%ML$)M\\0+N,8-NL8.NL8.N<8.N<8-M\\,*LKX!H:WM"
+	"C);2='ZW7VJ>2%2'+3EJ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+3EJ0TY_"
+	"8&J>?(6]DIS7IK#PM\\(#O<D.O<H/O\\L1P<T3P<X3OLH0M\\,)K;@!IK'ZH:GTG:/M"
+	"FJ'IF*#BE:#@I:_SI*[TF*#ECYG78&RD.45W)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D.D9VBY?'O<KZ"
+	"Q]4$R-8%R-8%R=<&R=<&R=<&RM@'R=<&RM@'R=<&RM@'RM@'R=<&RM@'RM@'RM@'"
+	"RM@'RM@'R]D(R]D(R]D(R]D)QM0$M</SH['@HK#@I[?FK;SKM</SN<?WOLO[KKSM"
+	">HR`3ER0156+'BM@\"!1&!1%\"#AE*!Q-$!!!!$!M(M\\3SR]D(R]D(R]D(R]D(RM@'"
+	"RM@'RM@'RM@'RM@'RM@'R=<&R=<&R=<&R=<&R=<&R=<&R=<&R=<&R=<&O,GXP]#`"
+	"R-8%R-8%R-8%R-8%R-8%R]D(TM\\.U.(1T=\\.T=\\.UN03V><6V^D8V^D8W.H9W.H9"
+	"V^D8V^D8V^D8V^D8V^D8V^D8VN@7V^D8VN@7VN@7VN@7V><6VN@7V><6V><6V><6"
+	"V><6VN@7V^D9W^T<Y?0C[?PL\\?`P[?PLZ/<GY_8FY_8FY_8FY_8FY_8EY_8FY_8E"
+	"Y_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EY_8EYO4DY/(BWNP;U>(1R=<$"
+	"P<W\\P,S[P,S[P<W\\PL[]NL7S?(6PK;KHM;_M9&V8C9G'P,S[F:+.=(\"LJ+7CP\\_^"
+	"=7NFAY/!NL?UK[GF<'JFF:;5Q-#_D)C$>X:TKKOIQ='`Q='`Q='`Q-#_Q='`Q='`"
+	"Q-#_Q-#^N</QIK'>P\\_]Q-#^Q-#^Q-#^Q,_^P\\_^P\\_^OLCTQ-#^QM'_QM#^Q,_]"
+	"P\\[\\PLW[P<OYP,OYP,KXO\\GWNL3Q='ZL)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+3EJ"
+	"O<KZUN03UN04U^44U^45U^45V.86V><7VN<8VN@8VN@8V^D9V^D9V^D9V^H:V^H:"
+	"V^D9VND9VND9VND9VND9VND9VND9VND9VND:VND:VND:VND:VND9V^D:VND:V^H:"
+	"VND:VNH:V>@9TM`1C9C()S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D7&B>HJWML;K^L+K_L[X#L[`%ML()N,0+N,4-N<8-N\\<.N\\</N\\@/N\\</"
+	"O,<.O,<-N\\<,NL@+N<4&L[W_KK?ZJ[7VJK3UJ[3UJ[3UJK3TK+;WM+\\!N\\4&OL<("
+	"OL@+O<@+O<@*O\\L0PL\\5PL\\5P<X4O\\L1N<4+L+T$J[3^I:[XH*GTG:7OFZ+JF:'D"
+	"?(2^/DE[*C9G<G^YB933:W:N,#QM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/4EZ"
+	"C9K*O\\S[Q]4$R-8%R-8%R-8%R=<&R=<&R=<&R=<&RM@'R=<&RM@'RM@'RM@'RM@'"
+	"RM@'RM@'RM@'R]D(R]D(R]D(RM@'OLO\\K;OKI[;EK+OKLL#OM</TN\\GYO,KZP,W]"
+	"L\\'QAYC(3%F-04Z\"*3=I$A]0\"A=(\"15%#!=((BU<O<KYR]D(R]D(R]D(R]D(R]D("
+	"R]D(R]D(RM@'RM@'RM@'R=<&R-8%Q]4$R-8%R=<&R=<&RM@'R=<&R=<&OLOZSMP+"
+	"PL_^R-8%R-8%R-8%R-8%Q]4$R-8%RM@'T-X-U.(1TM`/T-X-U>,2V><6VN@7V^D8"
+	"W.H9V^D9W.H9V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7V><6V><6V><6"
+	"V><6V><6V><6VN@7W.H9X.X>Y_8F[_XN\\/\\NZODIY_8FY_8FY_8FY_8EY_8FY_8F"
+	"Y_8EY_8EY_8EY_8FY_8EY_8EY_8EY_8EYO4EY_8EYO4DY/(BWNP;UN,2R]@&PL[]"
+	"P,S[P,S[P<W\\PL[]P<W\\EI[)='^JL;WKLKWJ:'&=D9[,P<W\\EI_+=H*OJK?EP\\_]"
+	"<GFDB97$N\\CWKK?E<'NIFZC6P\\_^BI*_>X>UK[SKQ='`Q-#_Q='_Q='_Q='`Q-#_"
+	"P\\_^LKSIJ[;CP\\_]P\\_]P\\_]P\\_^P\\_]P\\_]Q,_^P\\_^P,OXQM'_Q=#^Q<_]Q,[\\"
+	"PLW[P<OYO\\KXP,KXO\\GWM;_K8FV;)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	":G>GU>,2UN03UN04UN04U^45V.85V.86V><7V><7VN@8VN@8V^D9V^D9V^D9V^H:"
+	"V^H:V^H:V^H:VND:VND:VND9VN@9VND9VND9VND:VND:V^D:VND:VND9V^H:V^D:"
+	"V^H:V^D:V.<7S]T.;'>G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D,S]Q?HK#J;/TL;K^K[K_L;T#L[\\&M<((M\\,*N<4-N<4-N<8.N\\</"
+	"O,</O,@/O,@/O,@/O,@0O,@/O<D0O<D0O<D0O<D/O<D/OLD0O<D0OLL1OLL1P,P1"
+	"P,T2P<T2O\\T2OLL2O,<.ML,*L+T&J[;`IK#[I*WWH:GRG:;NFZ+IF:'C?(:_0$Q^"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D0$Q]D9W-P<[^R-8%R-8%R-8%R=<&R=<&R=<&R=<&R=<&R=<&R=<&RM@'R=<&"
+	"RM@'RM@'RM@(RM@'R]D(R]D(S-H)Q=,#M\\7UK;WKK[[MM,+RN,;UN<;VOLO[O\\S\\"
+	"PL__O<KZG:W=:'BI.$1V+#EL(S!C'2I;'RQ<.T=TQ-(!R]D(R]D(R]D(R]D(R]D("
+	"RM@'RM@'R]D(RM@'R=<&Q-'`ML+RI;'>HZ[<NL;UQ]4$R=<&R=<&R=<&OLOZRM@'"
+	"O\\OZR=<&R-8%R-8%R-8%R-8%Q]4$R-8%R-8%R=<&SMP+U.(1T=\\/SMP+T=`.V.85"
+	"VN@7V^D8W.H9V^D8V^D8V^D8V^D8VN@7V^D8VN@7VN@7VN@7VN@7V><6V><6V><6"
+	"V><6V><6V><6V><6VN@7V^D8W>L;XO$@Z_HJ\\/\\O[OTMZ?@HY_8FY_8EY_8FY_8F"
+	"Y_8EY_8EY_8FY_8FY_8EY_8EY_8EY_8EY_8EYO4EY/,BW^T<U^03S-D'PL[]P,S["
+	"P,S[P<W\\PL[]P<W\\P<W\\=WZF>H>SM,'PL;OH:G2?E*#/P<[]DYS(>(2RK+CGPL[\\"
+	";76ABI?%O,CXJ[7A<'RIG*G8Q-#_B(VX>86QL+SKQ='`Q='`Q='`Q='`Q='_P\\[]"
+	"KKCEL;WKQ=#^P\\_]P\\_^P\\_^P\\_]P\\_^P\\_^P\\_^Q-#^Q,[\\Q<_^Q,[]Q,[\\PLW["
+	"P<OYP,KXOLGWO\\GVKK?E3UJ))S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-DJ[CHUN03UN03UN03UN04U^45V.85V.86V><7VN@8VN@8V^D9V^D9V^D9W.H:"
+	"V^H:V^D9V^H:V^H:VNH:VND9VND9VND9VND9VND9VNH:VND:V^H:V^H:VND:V^D:"
+	"V^D:VND:U^86R]@)/TIZ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D/TM^B)//K;;VKKG[L+K_L+T\"LK\\$M+`'M<((ML,*M\\0+"
+	"N,0,N<4-N<8,NL8-NL8.NL8.NL8.NL8-NL<.NL<.NL<.N\\<.N\\<.NL<.NL8-N<4+"
+	"ML0*M+`'L;T$K;D!JK7]IK'ZI*[WH:OTH:?QGJ3MGJ/IEIW=>H&Z.T=Y)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D15*\"EJ/3PL__R-8%R-8%R-8%R=<&R-8%R=<&R=<&R=<&R=<&R=<&"
+	"R=<&RM@'RM@'RM@'R]D(R]D(R]D(RM@(PL__M<3SLL#PM</SN<?WO<KZO<KZOLO["
+	"P,W]PL__P]#`M<3TEJ?9;G^P1UB*,T%R-$)Q@I\"_R=<&R]D(R]D(R]D(R]D(R]D("
+	"RM@'R]D(RM@'R=<'Q]4#M,'PC9G%<7VJ;'BGA)\"^H*W;N<7UQ=,\"R=<&P]#`P]#_"
+	"OLKYR=<'R=<&R=<&R=<&R-8%Q]4$Q]4$Q]4$Q]4$Q]4$R-8%S-H)T^$0T=\\/S-H)"
+	"SMP*U^44V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7V><6VN@7"
+	"V><6V><6V><6V><6V><6V><6VN@7W.H9W^T<Y?0C[OPL\\?\\P[/LKZ/<GY_8EY_8F"
+	"Y_8EY_8EY_8FY_8FY_8FY_8FY_8EY_8EY_8EY?,CX.X=U^44S=H)PL[]O\\OZP,S["
+	"P<W\\PL[]PL[]PL[]P<W\\<'>B@8R[M\\/RKKCF;'>BEJ/2PL[]D9G%>H:TKKKHP<W["
+	":W2>BYC&OLKYJ;+?;WNHGZS:Q-'`@HFS>8>SLK_NQ='`Q='`Q='_Q-#_PL[\\J;/?"
+	"N,3QP\\_]P\\[]Q-#^Q-#_P\\_^P\\_^Q,_^Q-#^Q=#_P\\[[Q<_]Q,[]P\\W\\PLS[P<OY"
+	"P,KXO\\GWOLCVHZ[9/TEY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D3EN,SMP+UN03UN03UN04U^44U^45V.86V><7V><7VN@8VN@8V^D9V^D9W.H:"
+	"V^D9V^H:V^H:V^H:V^H:VNH:VND:VND:VND9VND9VNH:VND:VNH:V^H:V^H:V^H:"
+	"V^H:VND:UN45N<7V)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D/TM]?(B_GZGFKKG[K[G\\L+G^L+O`L;X\"L[\\%"
+	"M+`'M,$'M<$)M<$)ML()ML$)M,$)M<()M,$(M,$'M,$'LK\\&LKT%K[L\"K[H!KK?_"
+	"J[3]J;/[I['XIJ[UHZSSH*GPH:;MH*7KFZ'DA8W)7FB>+#AI)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D3%B)FZ?7P]#`R-8%R-8%R-8%R-8%R-8%R=<&R=<&R=<&"
+	"RM@'R=<&RM@'RM@'RM@'RM@'R]D(S-H)RM@(O\\S]M\\7VN,7UN\\CXO\\S\\PL__OLS\\"
+	"P,W]P<[^PL__P]#`P]#`N\\GYLL#QJ;CHKKSLOLO[R]D(R]D(R]D(R]D(R]D(R]D("
+	"R]D(RM@'RM@'RM@'P]#`I[3C>(:S<'RK>(:UD9[.G*C8=G^M;G>CI[+?R-4$S-H)"
+	"R]D(R=<&R=<&R=<&R=<&R=<&R-8%R-8%R-8%Q]4$Q]4$QM0$Q]4$Q]4$RM<&T=\\."
+	"T^$0S-H)T=\\.V^D8V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7V><6"
+	"VN@7V><6V><6V><6V.85V><6V><6V><6VN@7W.H9X.X>Y_4E\\/XN\\/\\OZODIY_8F"
+	"Y_8EY_8EY_8FY_8FY_8EY_8FY_8FY_8EY?,CX.X=V.85SML)P\\_^P,SZP,S[P<W\\"
+	"PL[]P<W\\PL[]PL[]P<W\\;G>AA)&^N,7SK+;D;GFDF*;4PL_^C9;\">X>TK[SKP,SZ"
+	":W2>C9K)OLOZIJ_<;WNGH*W;Q-'`AHZYC)K)O,GWQ='`Q='`Q='_P,OYIK#<O<GW"
+	"PL[\\PL[\\P\\_^Q-#^P\\_^P\\_^Q,_^Q,_^QM'_Q,[]PLSZQ,[\\PLW[P<SZP,OYO\\KX"
+	"OLGWO\\GUEJ#-,3UM)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-DBYC)UN03UN03UN03UN04U^44U^45V.86V><7VN@8VN@8VN@8V^D9V^D9"
+	"V^D9V^H:V^H:V^H:V^H:V^H:VND:VND:VND:V^H:V^H:V^H:V^H:V^H:V^H:V^D:"
+	"V^D:VND9U>,4H:W>)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D3UN/?XO$G*;CK;;WKKCZKKC\\"
+	"K[C]L+K_L;K`L+K`L;P\"L+P\"L+P\"L+P\"K[L!K[L!KKG`K;C`K+?_JK3\\J;/[J;+Y"
+	"IJ_WI:[UHZOQHZKPHZONFZ/CAI#+8FRB+SMM)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D5%^0GZO;Q-(!Q]4$R-8%R-8%R-8%R=<&R=<&"
+	"R=<&R=<&R=<&RM@'RM@'RM@'RM@'R]D(S=L+R]D*P,W^O,GZO<K[OLO[P]#`Q=,\""
+	"P,W]OLO[P,W]P<[^P<[^P<[^P<[^P<[^P,W]P,W]S=L*R]D(R]D(R]D(R]D(RM@'"
+	"R]D(R]D(R]D(RM@'PL[_I+#?>(:S=(*OA9/\"GZS<I++A14UY'RM<#A=$66&+G:C5"
+	"PL[^R-8%R=<&R=<&R=<&R=<&R-8%R-8%R-8%R-8%Q]4$QM0#QM0#QM0#QM0#QM0#"
+	"R-8%R]@'O\\SZVN@7V^D9V^D9V^D8V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN<7"
+	"VN<7VN<7V><6V><6V.85V.85V><6V><6V><6V><6V^@8W>L;X_$AZ_HJ\\?\\P[OTM"
+	"Z?@HY_8FY_8EY_8EY_8FY_8FY_8EY?0CX>\\>VN<6S]P+P\\_^O\\OZP,SZP<W\\P<W\\"
+	"P<W\\P<W\\PL[]PL[]P<W\\;7:AAI.`NL;TJ;/A;WJEFJ?6P\\_^BI2`?(FVL;[MO\\KX"
+	":G.>CIO)O\\OZI*S9<'NGHJ_<Q-#_D9O&I[3BQM,!Q='`Q-#_O,;TI['>P,SZP\\_]"
+	"P\\_]P\\_^Q,_^P\\_^P\\_]Q-#^Q=#_QM'`Q<_^O\\KVP\\W\\PLS[P<OYP,OYO\\KXO\\GW"
+	"O<?RAI\"]*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-DM,'QUN03UN03UN04UN04U^45V.85V.86V><7V><7VN@8V^D9V^D9"
+	"V^D9W.H:V^H:V^H:V^H:V^H:V^H:VNH:V^H:V^H:VND9V^H:V^H:V^H:V^H;V^H:"
+	"V^H:V>@9T^$1@X^`)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-T1U8V^E?8G#"
+	"D9O9GZGGJ[/SK;?WK;7XK;;YK+7YJ[7ZJ[;ZJ[;ZJK3YJK/XJ;+WJ+#UIJ_SIZ_Q"
+	"GZGIDYS;A(_*<'RT4%N/*C9G)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6&25HZ_?Q=,\"R-8%R-8%R-8%R=<&"
+	"R=<&R=<&R=<&RM@'RM@'R]D(RM@'R]D(S-H)T-X.S]X.P]$!P,W]P,W]P<[^Q-(!"
+	"Q]4$PL__O\\S\\P,W]P,W]P<[^P<[^P<[^P<[^P]#`S=L*R]D(R]D(RM@'R]D(R]D("
+	"R]D(R]D(R]D(RM@'P,W]H:W=>(6S>8>TCYW,J+;FJ;;F/D=T&B97!!!!!!!!!Q)\""
+	"2E)]E9[+OLKYR-4$R-8%R=<&R=<&R-8%R-8%R-8%Q]4$Q]4$Q]4$QM0#QM0#QM0#"
+	"Q=,\"P<[^M<'PV><6V^D8V^D9V^D8V^D9V^D8V^D8VN@7V^D8VN@8VN@7VN@7VN@7"
+	"VN@7VN<7V><6V><6V><6V><6V.85V><6V><6V><6V>86V><6V^D9WNP=Y?,C[OTM"
+	"\\?`P[/LKZ/<GY_8FY_8FYO4EYO0DXN`?VN@7T-X-Q='`P,S[O\\OZP<W\\P<W\\P<W\\"
+	"P<W\\PL[]PL[]PL[]P<SZ;G:@B97\"NL7TI['><7NGG:K9P\\_^B)\"]?HNXL[_NO<CV"
+	":W.>CYS*P,S[H*G5<7VKI;+@QM'`N,3SP\\_^Q='`Q-#_M\\'NJ[;BPL[\\P\\_]P\\_^"
+	"P\\_^Q-#^P\\_]P\\_^P\\_^QM'_QM'_Q,_]P<OXP,KWP\\W[P<OYP,OXO\\KXO\\GWNL3P"
+	"='^L)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D35F*S-L*UN03UN03UN03UN04U^45V.85V.86V><7V><7V^@9V^D9"
+	"V^D9V^H:V^H:V^H:V^H:V^H:V^H:VNH:V^H:VND:VNH:V^H:V^H:V^H:W.H:V^H:"
+	"V^D:V.<8S]T.6V>8)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D+CIL1U.&7&B=9'\"G<GVV@(K#A9#*A9#*A([(?HB`=H\"X:W6K6V><.D9X"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7VN;I[/CQM0#R-8%R-8%"
+	"R-8%R-8%R=<&R=<&RM@'RM@'RM@'RM@'R]D(S=L*U>,3U.,3QM4$PL_`PL__PL__"
+	"QM0#Q]4$QM0#P]#`P,W]P,W]P,W]P<[^P<[^R-8%S-H*R]D(RM@'R]D(RM@'R]D("
+	"R]D(R]D(R]D(R=<&O\\S\\G*G8>8:S?(FWDZ'1K+KJJK?G.4-P'\"A9!!!!!!!!!!!!"
+	"!A%\"%A]-/T5PB9/!N<3SQ]0#R-8%R=<&R-8%R-8%Q]4$Q]4$Q]4$Q]4$QM0#QM0#"
+	"Q=,\"O\\S\\M\\3SV><6V^D8W.H9V^D8V^D9V^D8V^D8V^D8V^D8VN@7VN@7VN@8VN@7"
+	"VN@7VN<7V><6V><6V><6V><6V><6V.85V>86V.86V><6V><6V><6VN@7W.H:X>\\?"
+	"Z?<H\\/\\O[_XNZ?@HY_8EY?,CX>\\>VN@7T=\\-Q='`O\\OZO\\OZP<W\\P<W\\P<W\\P<W\\"
+	"P<W\\PL[]P\\_^PL[]P,OZ;7:@BI;#O,CWIK#=<GRHGZO:P\\_^A8VY@(RZM,'ON\\;T"
+	":'&=DI[-P<W\\H*G6?8NXL\\#OQM,!QM,!Q='_P\\_^LKSIL[[KQ-#^Q,_^P\\_]P\\_^"
+	"P\\_^P\\_^P\\_^Q-#^QM'`QM#_Q,[]PLW[N\\;RP<SZP<OYP,KXO\\KWO\\GVM+WJ76B6"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D@Y\"`U.(1U>,2U>,2UN04UN04U^45V.86V><6V><7VN@8VN@8"
+	"V^D9V^D9V^D9V^D9V^D9V^H:V^H:V^H:V^H:V^H:VNH:V^H:V^H:V^H:V^H;W.H:"
+	"VND:U^86Q=,#+CIK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D9G&AJK?GQM0#"
+	"R-8%R-8%R-8%R=<&R=<&RM@'RM@'RM@'RM@'R]D(SMP,V><7V><7R=<'Q=,#Q-(!"
+	"Q-(!Q=,\"R-8%Q]4$R-8%Q-(!PL__P<[^P<[^S=L*S-H)R]D(RM@'RM@'R]D(R]D("
+	"RM@'R]D(R]D(R=<&O<KZF*74>HBU?8JYF*?6KKSKJ+;E.$%N&R=8!!!!#QQ/%B18"
+	"+CEF*S5C\"!-$&2)0,CIC?XFUN,/RR-8%R-8%R-8%R=<&R-8%Q]4$Q]4$QM0#QM0#"
+	"Q=,\"OLOZN\\?VVN@7V^D8W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8VN@8VN@7VN@7"
+	"VN@7VN@7V><6V><6V><6V><6V><6V.85V><6V><6V.85V>86V><6V.85V><6VN@8"
+	"WNP;Y/(BZ/<GY_4EX_$AWNL;V><6TM\\.Q],\"P,SZO\\OZP,S[P<W\\P,S[P<W\\P<W\\"
+	"PL[]PL[]P\\_^P\\_^OLKW;G>@BYC$O<GXI:[;<GVKH:[<Q-#_@8JU@(RZM<'PN<3Q"
+	":'\";D9[,P<W\\I*[;EZ33PL_^Q='`QM,!P\\_]J[7BNL7SQ=#_P\\_^Q,_^Q-#^Q-#_"
+	"Q-#_Q-#^Q=#_Q]'`Q=#^Q,[]P\\W\\P<OYO,;RP<OYO\\KXP,KXO\\GVJ[7@2E6$)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-DI[/DU>,2U>,2UN03UN03UN04U^45V.86V>87V><7VN@8"
+	"VN@8V^D9V^D9V^D9W.H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:W.L;V^H:"
+	"VND9U>04L+SN)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35F:W:F"
+	"K+GIQ]4$R-8%R-8%R=<&R=<&R=<&RM@'RM@'RM@'R]D)S]T,V><7V^D9SMP,R-8&"
+	"QM0$Q-(!Q=,!Q-(!Q-(!P]#`P<[^P<[^R]@'S=L*R]D(RM@'RM@'RM@'RM@'RM@'"
+	"RM@'R]D(R]D(R=<&N\\CXE:+1>XJX@(Z]F:G8K[WLIK/C-#UK%R-4!!!!%2%4*#5H"
+	")#%D%R59,CQI+3AE\"11$'B=3/D-PJK7DQ]4$R-8%R-8%R-8%Q]4$Q]4$Q]4$QM0#"
+	"Q=,\"O,GXO<KYVN@8W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8VN@7VN@7"
+	"VN@7VN@7VN@7V><6V><6V><6V><6V><6V><6V><6V><6V.85V.85V.85V.85V.85"
+	"V><6VN@8W.H9VN@8U^45U.(1SML*QM,\"P,S[O\\OZP,SZP,S[P,S[P<W\\P<W\\PL[]"
+	"PL[]PL[]PL[]P\\_^OLGW;7:BC9G&OLKYHZS9<GZLHJ_<Q-#_?X>Q@(RZML+QN,+P"
+	"9G\";E*'/PL[]NL;TO,GXQM,!Q='`O\\KWJ;/@P,SZQ<_^Q-#^Q-#_Q-#_Q-#_Q-#_"
+	"Q-#_Q=#_QM'`Q,_]PLW\\P<S[P<OZN\\7PO\\GWP,KXO\\GWO\\GWH:K6.D5U)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D-D)SNLCWU>,2U>,2UN03UN03UN04U^45U^45V>87V><7"
+	"VN@8VN@8V^D9V^D9W.H:V^H:V^H:V^H:V^H:V^H:V^H;V^H:V^H:V^H:V^H:V^D:"
+	"V><8U.(2E:+3)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"*35F;GJJL+SLQ]4$R-8%R=<&R=<&R=<&RM@'RM@'RM@'S-H)SMP+U.(2V.86T^$1"
+	"S=L+RM@(R-8&QM0#Q=,\"Q=,\"QM4$S-H*SMP,R]D(R]D(RM@'RM@'RM@'RM@'RM@'"
+	"RM@'RM@'RM@'R-8%NL?WE:'1?XV\\A9/\"FZO:L+[MI;'@.T5S%R-4!!!!%B)4*#5G"
+	"*SAJ*C=J*35H&299,SUM+S9C\"!-$1E%^O<KYR-8%R-8%R-8%Q]4$Q]4$QM0#QM0#"
+	"QM0#N\\?VP,S[V^D8W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8V^D8VN@7"
+	"VN@7VN@7V><6VN@7V><6VN@7V><6V><6V><6V><6V><6V>86V><6V.85V><6V.85"
+	"V><6V.85UN04U.(1S]T-RM<&P]#_O\\O[OLKYP,SZO\\OZP,S[P<W\\P<W\\P<W\\PL[]"
+	"PL[]P\\_^P\\_^PL[]O,?U;GBCCYO)O\\SZH:K7<W^LI+'?Q-#^?82L@H^\\ML/RM\\'N"
+	"<'VIHJ_>Q-#_Q='`Q=,!Q-#_O,?TJK7BP\\_]Q,_]Q,_]Q='_Q-#^P\\_^Q-#_Q-#_"
+	"QM+`Q='_PLW\\PLW[P<SZO\\OYO\\KXN,+LO\\KXO\\GWO\\CUD9O(+3EJ)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D3EN+Q]0$U>,2U>,2U>,2UN03U^44U^45V.86V>87"
+	"V><7VN@8VN@8V^D9V^D9V^D9V^H:V^H:V^H:V^H:V^H:V^H:V^H:V^H;V^H;V^D:"
+	"V>@8T=\\/=H*S)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D*35F<GVML+SLQ]4$R-8%R=<&R=<&R=<&RM@'RM@'R]D(S=L+T-X-TM`0"
+	"T^$1TM`/T-X.S]T-S]T-S]T,T-X-S]T,S-H)R]D(RM@'RM@'RM@'RM@'RM@'RM@'"
+	"RM@'RM@'RM@'R-8&N\\CXF:;6A9/\"BYG(FZK9L+_NKKOK6F:6%R-4!Q-%$AY/)S-E"
+	"*S=I+#AJ+#AJ+3EK+3IN(\"Q>!1%\"#AI)H:_=R-4%R-8%R-8%R-8%Q]4$QM0#QM0#"
+	"QM0#N,7TQ-#`V^D8W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8"
+	"VN@8VN@7VN@7VN@7VN@7V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6"
+	"V><6V.85UN03T=\\.R]D(Q=,\"P<[]OLKYOLKYO\\OZP,SZP,S[P<W\\P<W\\P<W\\PL[]"
+	"P\\_^P\\_^P\\_^Q-#_NL;S;GBBD)S+P,S[GJ?4=8\"MI;'@Q,_^=GZG@H^\\N,7SML'N"
+	"@H^]N<;UQ='`Q='`Q=#_M<#MK[KGQ='_P\\_]Q-#^Q=#_Q-#_Q-#^Q,_^Q-#_QM'`"
+	"Q-#^PLW[P<S[P,OYO\\OYOLKXOLGWN<+NO\\GVO<;T@(JW*35F)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D9'&ASMP+U>,2U>,2U>,2UN04U^45U^45V.86"
+	"V>87V><7VN@8V^D9V^D9V^D9V^D9V^D:V^H:V^H:V^H:V^L;V^H;V^H;V^H;VND9"
+	"U^86S=L,3EJ+)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D+#AI=(\"OLK[NQ]4$R=<&R=<&RM@'RM@'RM@'RM@(S-H)S=L*"
+	"S]T,T=\\.T=\\/T=\\/T=\\.T-X-SMP+S-H)RM@'RM@'RM@'RM@'RM@'RM@'RM@'RM@'"
+	"RM@'R]D(RM@'R=<'OLO[H*W=C)G)D9[.F:G8LL'PM\\3TC)K*.TE\\'\"E;\"A9''2E:"
+	"*C9H+#AJ+#AI+3EK+3EL(2U?!!!!%!]0GJO;Q-(!R=<&R-8%R-8%Q]4$Q]4$QM0#"
+	"Q=,\"ML+PR-4$W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8V^D8V^D8"
+	"VN@8VN@7VN@8V^D8VN@7VN@7V><6V><6V><6V><6V><6V><6V><6V><6V><6V><6"
+	"V><6V.85U>,2T-X-R]@'Q=(!P<W]OLKYOLKYO\\OZP,S[P,S[P<W\\P<W\\P<W\\PL[]"
+	"P\\_^P\\_^P\\_^P\\_^N<3R;GBCDI[,P,W[FZ72='^LIK+AQ-#^<WJC@Y\"^N<;UP,SZ"
+	"K[OJQM,!Q='`Q-#^L+OGL[_LP\\_]PL[\\Q=#_Q='`Q-#_Q-#_Q,_^Q='_QM'`Q,[\\"
+	"P<OZP<OZP,OYO\\GXOLGWO<GVN\\7QO,7RN,+N;7BE)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D>H>XTM\\/U.(1U>,2U>,3UN03UN04U^45"
+	"V.86V><7V><7VN@8V^D9V^D9V^D9W.H:V^H:V^H:V^H:V^H:V^H:V^H:V^H:VN@9"
+	"U>04P<[_*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D+#=H=X.SM,#OQ]4$R-8%R=<&R=<&R=<'RM@'RM@'"
+	"R]D(R]D)S-H*S-H)S-H)R]D)R]D(RM@'R=<&RM@'RM@'RM@'RM@'RM@'RM@'RM@'"
+	"RM@'RM@'RM@'RM@'P<[^JK?GE*'1EZ34GJS<K[WMM\\7TL\\#P?(R_.DE\\,D%W!Q1%"
+	"#AI+(\"Q=*S=I+#EK*39G&257!!!!&256IK3DP]#`R=<&R-8%R-8%Q]4$Q]4$QM0#"
+	"QM0#L[[LR]D'V^D8W.H9VN<7V.85W.H9W.H9W.H9V^D8V^D9V^D8V^D8V^D8V^D8"
+	"V^D8V^D8VN@8VN@7VN@7VN@7VN@7VN@7V><6V><6VN@7V><6V><6V><6V><6V><6"
+	"V><6V.85UN03T-X-R]@'Q=,!P<W]OLKYO\\OZO\\OZP,S[P<W\\P<W\\PL[]PL[]P\\_^"
+	"P\\_^P\\_^P\\_^P\\_^M\\+Q;WBBDY_-P,W\\FJ/0<W^LI[3BQ-#_=7ZHCYS+O\\O[QM,!"
+	"QM,!Q='_PL[\\JK7AN\\;UP\\[\\PLW[Q-#^Q='_Q='_Q-#_Q-#_Q='_Q=#^PLS[P,OY"
+	"OLKXOLGXOLGXO<CVOLCVO<CUNL/NKK?D5F&/)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DC)C(T^$0U.(1U.(2U>,2UN03U^45"
+	"U^45V.86V><7V><7VN@8V^D9V^D:W.H:V^D9V^H:V^H:V^H:V^H:V^H:V^H:V>@8"
+	"T^$1J[?H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIJ>X:VM<'PQ]4$R-8%R=<&R=<&R=<&"
+	"RM@'R=<&RM@'RM@'RM@(RM@'RM@'RM@'R=<'R=<&R=<'RM@'R=<&RM@'RM@'RM@'"
+	"RM@'RM@'RM@'RM@(Q=(\"M,'QGJO;G:K:H[+AK+KIN,;VO,GYK[SL>8F[3ER1/DZ%"
+	"#1E,!A%##AI*(2U>)C-D$Q]1!!!!&RA5K;KJQ-(!R=<&R-8%R-8%R-8%Q]4$Q]4$"
+	"Q=,\"KKKIS]T+V^D8W.H9Q=,#P,W]UN03V^D8W.H9W.H9V^D8V^D8W.H9V^D9V^D8"
+	"V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7V><6VN@7V><6V><6V><6VN@7V><6"
+	"V><6V.85U>,2T-X-RM@'Q=,!P<W\\OLKYP,S[P,S[P<W\\P<W\\PL[]PL[]PL[]PL_^"
+	"P\\_^P\\_^P\\_^P\\_^ML#N;G>ADI_,P,W[E9[+<W^JJ+3CQ,_^@8NUIK/CQ='`Q='`"
+	"Q='`P,OYJ+/@O\\OYP\\[\\PLW\\Q-#^Q='`QM'`Q='`Q,_^Q='_Q,[]P,OYO\\KXOLGW"
+	"O,CVO,CVO,CUO<CUO<?UO<CUGJ?4/4AW)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DD9_/T^$0U.(1U.(1U>,2U>,3"
+	"UN04U^45V.86V><7V><7VN@8V^D9V^D9V^D9V^H:V^H:V^H:W.H:W.H:V^D9V.86"
+	"S]T.C9G*)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,#QM?8FXM<'PQ]0#R-8%R=<&"
+	"R=<&R=<&R=<&R=<&R=<&R=<'RM@'RM@'R=<&R=<'RM@'R=<&RM@'R=<&RM@'RM@'"
+	"RM@'RM@'RM@'RM@(R-8%O,GYJ+?GH;#@J+;EK;SKN,;VN\\CXO\\S\\L\\'Q>HN^3%J."
+	"1E6-'RQ?\"19&!1%\"!A)#!!!!!!!!(\"M;LL#OQM0#R=<&R-8%R-8%R-8%Q]4$Q]4$"
+	"Q=,\"J[?ET^$/V^D8W.H9S-H*J[?IJ;7FML/ST]`/V^D8V^D8V^D8V^D9V^D9V^D8"
+	"V^D8V^D8V^D8V^D8VN@7V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7V><6V><6"
+	"V><6V><6U>,2T-X-RM@'Q=(!P<W\\O\\OZP,S[P,S[P<W\\P<W\\P<W\\PL[]PL[]P\\_^"
+	"P\\_^P\\_^P\\_^P\\_^M+_M;G>BDI_,P,W[E)S(=(\"LJK?EQ='`J+/@P<[\\Q='`Q-#_"
+	"O,;TJ;3APL[\\P<WZP\\_]Q-#_Q-#_Q='`QM'`QM'`QM'`PLSZO\\GWO<CVO,?UO,?T"
+	"N\\?TN\\?UN\\?UO,?TN\\;SBY7#+#=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DE:+2TM`0U.(1U.(2U>,2"
+	"U>,2UN04U^45V.86V><7V><7VN@8V^D9V^D9V^D9V^H:V^H:W.H:W.H:V^D9U>,3"
+	"R]D*9'\"@)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIJ>8.SL+SLQ]0#"
+	"R-8%R-8%R=<&R=<&R=<&R=<&R=<&R=<'RM@'RM@'R=<&R=<'RM@'R=<&R=<&R=<&"
+	"R=<'RM@'RM@'RM@'RM@'P]#`M,+SJ+?FJ[GHLL#OM</SO,GYO<KZPL__M\\7VBIS-"
+	"2UF-/$I_*#9H%\"%2#!A)\"A9'$Q]0*S=FN,7UR-8%R=<&R-8%R-8%R-8%Q]4$Q]4$"
+	"Q=,\"JK;DUN02V^D8W.H9W.H9U.(2N\\GYI[7FHJ[?N,7UQ-#`S]P,VN@7V^D8V^D8"
+	"V^D8V^D8V^D8V^D8V^D8VN@7VN@7VN@7VN@7V^D8VN@7VN@7VN@7VN@7VN@7VN@7"
+	"V><6V><6U>,2T-X-RM@'Q=,!P<W\\O\\OYP,S[P,S[P<W\\P<W\\PL[]PL[]PL[]PL_^"
+	"P\\_^PL[]PL[]P\\_^L[WK:W6@E:'0P<W\\DYS(?HNYL\\#OQ-'_Q='`QM'`Q-#_ML#N"
+	"K;CEQ-#^PLW[Q,_^Q='_Q-#_Q=#_Q='_QM'`Q=#^O\\GWO<CUO,?TO,;TN\\;TN\\;T"
+	"NL;SN\\;TNL;SML'N=8\"O)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GEZ34TM`/T^$0U.(1"
+	"U>,2U>,3UN04U^45V.86V><7V><7VN@8V^@9V^D9V^D9W.H:W.H:V^D9V><7TM`0"
+	"P<W^+#=H)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35F;WFI"
+	"K+CHQM,\"R-8%R-8%R=<&R=<&R=<&R=<&R=<&R=<&R=<'R=<&R=<&R=<&R=<&R=<&"
+	"R=<'R=<&RM@'RM@'R]D(R-8&OLO\\L<#OK[WLLL#ON,;VNLCXOLO[O\\S\\P]#`O\\W]"
+	"H[3E:WZQ.4=X+#EJ)C-D'BM<)#%B1E!_O\\S\\R=<&R=<&R-8%R-8%R-8%Q]4$Q]4$"
+	"Q-(!JK;DU^44V^D8W.H9W.H9W.H9V^D8UN04ML/UHJ[@FZC9J;7GO,GYT-X-V^D8"
+	"V^D8V^D8V^D8V^D8VN@7V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7V><6VN@7VN@7"
+	"VN@7V><6U>,2T-X-R]D'QM,\"P<W\\O\\OYP<W\\P,S[P<W\\P<W\\PL[]PL[]PL[]P\\_^"
+	"P\\_^P\\_^P\\_^P\\_^L+KH:W2@E:'/PL[]F*'-DZ#/P,W\\Q-#_Q-#_P\\_^L;KGL[[L"
+	"P\\_]P<SZQ-#_Q='`Q='_Q-#^Q-#^QM'`Q,[\\O<?UN\\;TNL7RNL7RNL3RNL7RNL7R"
+	"NL7RN\\7SL+KH7FF8)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-DEZ33TM`/T^$0"
+	"U.(1U.(2U>,3UN04U^45V.86V><7V><7VN@8VN@8V^D9V^D9V^D9VND9UN04SMP,"
+	"I+#A)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D97\"@IK'AQ-(!R-8%R=<&R=<&R=<&R=<&R-8&R=<&R=<&R=<&R=<'R=<&R=<&"
+	"R=<&R=<&R=<&RM@'RM@'R]D(Q=,#O<KZM,+QL\\'PN,;UO\\S\\O<K[OLO[P,W]P]#`"
+	"Q=,#O,KZHK+D>HR^5FB:/T^\"1%*\"D9_.P<[^R]D(R=<&R-8%R-8%R-8%R-8%Q]4$"
+	"P\\_`K;GGV><6V^D8W.H9W.H9W.H9W.H9W.H9V^D8V.86P](\"J+7GG:O<I;'AR=<&"
+	"UN03UN03VN@8V^D8V^D8V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7"
+	"VN@7V><6U>,2T-X-R]D(QM,\"P<W\\O\\OYP<W\\P<W\\P<W\\PL[]PL[]PL[]P\\_^P\\_^"
+	"P\\_^P\\_^P\\_^PL[]K;?E9W*=EZ/0P\\_^J;3AL\\#OQ-#_P\\_^PLW\\J[3BNL7SQ,_]"
+	"PLW\\P\\_^Q=+`Q='`Q='_Q-#^Q='_PLSZN\\7RNL3QNL3QN</PN</PN<3QN<3QNL3Q"
+	"N\\7RI:_;252#)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GEZ34T=\\."
+	"T^$0T^$1U.(2U.(2UN03U^45V.85V.86V><7VN<8V^@9V^D9V^D9V><7T^$2RM@("
+	"?(>X)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D6V:7H*S;P]#`R-8%R-8&R-8%R-8&R-8%R=<&R=<&R=<&R=<&R=<&"
+	"R=<&R=<&R=<&RM@'RM@'RM@'RM@'QM0$O<KZN<;VN<?VO\\S\\P]#`OLS\\O\\S\\P,W]"
+	"PL__P]#`QM0#PL__N\\GYML3TN<?WPL__P<[^R]D(R=<&R=<&R-8%R-8%Q]4$Q]4$"
+	"PL__L+SJV><6V^D8W.H9W.H9W>L:W.H9W.H9W.H9W.H9SMP+O,CYPM$!L;[OM\\3U"
+	"FJ76J;7FO,CYV><6VN@7VN@8V^D8VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7VN@7"
+	"VN@7V.85U>,2T-X-R]D(QM,\"P<W\\O\\OYP,S[P<W\\PL[]PL[]PL[]PL[]PL_]PL[]"
+	"P\\_^P\\_^P\\_^P\\_^K;;C;WNGH*W;P\\_^Q-#_Q-#_P\\_]OLGVIK#=O\\KXQ,[]P\\_]"
+	"Q-#_Q='`Q='`Q='`Q=#_QM'_O\\GVNL3PN</ON,+NN,+NN,+NN</ON,+ON</PM\\'N"
+	"AY&^,#MK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*C9GE*#0"
+	"T=\\.TM`/T^$0U.(2U.(2UN03UN04U^45V.86V><7V><7VN@8VN@8U^05S]T-P<[^"
+	".D9W)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D45V-F:74P<[^Q]0$R-8%R-8%R-8%R=<&R=<&R=<&R=<&"
+	"R=<&R=<&R=<&R=<&RM@'RM@'R]D(R]D)R=<'P,W]O<K[OLO[P]#`Q=,#OLO[OLO["
+	"O\\S\\P<[^P<[^P<[^PL__PL__P<[^P<[^Q-(!S-H)R=<&R-8%R-8%R-8%Q]4$QM0#"
+	"P<[^L[_MVN@7W.H9W.H9W>L:W>L:W.H9W.H9W.H9W.H9UN,3M\\/TL;_PQ=(\"RM@'"
+	"N,7WI+'CHZ_BQ-(\"T=X-R]D'U^44VN@7VN@7VN@7VN@7VN@7V^D8V^D8VN@7VN@7"
+	"VN@7V><6U.(1T-X-R]D(QM,\"P<W\\O\\OYP<W\\P<W\\PL[]PL[]P\\_^PL[]P\\_^P\\_^"
+	"P\\[]P\\_^P\\_^P\\_^K+;C@(RYM<+QQ-#^P\\_^P\\_^N<3QI['>P<W\\PLW[Q,_^Q-#_"
+	"Q-#_Q='`Q='_Q='_Q,_]O,;RN,+NML'LML#LM<#LML#LML'MN,+NM\\+NG*?45%^-"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"B)7$SMP+T=\\.T^$0T^$1U>,2U>,3UN04U^45V.86V.86V><7V.86T^$1RM@(GZO;"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D1U.#DIW-OLKZQ]4$R-8%R-8%R-8&R=<&R=<&"
+	"R-8%R=<&R=<&RM@'R=<&RM@'RM@'R]D)T=\\/S]X.P]$!P,W^PL__Q-(!QM4$P<[_"
+	"OLO[O\\S\\P,W]P,W]P,W]P<[^P<[^PL__R-8%R]D(R=<&R-8%R-8%R-8%Q]4$QM0#"
+	"P<W]M<+QV^D8W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8QM,#FZC9K+CIJ+3D"
+	"OLOZR-8&M\\7WN<;WK;GIML/SNL;VU.(1VN@7VN@7V^D8V^D8VN@7V^D8V^D8VN@7"
+	"VN@7VN@7U.(1S]T,R]D(QM,\"P<W\\O\\OZP<W\\P<W\\PL[]PL[]P\\_^P\\_^PL[]PL[]"
+	"PL[]P\\_^P\\_^P\\_^M+_LH:W;P\\_^P\\_^PL[\\M<#MJ;3APLW[P<SZP\\_^Q-#_Q='`"
+	"Q='`Q='_Q='_P\\[[N</OML#LM+_JM+_JM+_JM+_JM;_KM\\'MHJS886N:)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D?(BWS-D(T=\\.TM`/T^$0U.(1U>,3UN03UN04U^45U^45U>,3SMP,Q=,\"9'\"@"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/4EYBI;%N\\CXQ]4$Q]4%R-8%R-8%"
+	"R-8%R-8&R=<&R=<&R=<&R=<'R=<&RM@(S=L*UN45U>04Q]4%Q-(\"Q-(!Q=,\"Q]4$"
+	"QM0#PL__O\\S]OLO[O\\S\\O\\S\\P,W]PL__S-H*RM@'R=<&R-8%R-8%Q]4$Q]4$Q]4$"
+	"O\\O[NL;UV^D8W.H9W.H9W.H9W.H9W>L:W.H9W.H9W.H9V^D8T=\\.D)[0C)C*GJK="
+	"N<?WN<;VM\\3TML/TK;GJM,'QKKKKLK_PVN@7VN@7V^D8V^D8VN@7V^D8V^D8V^D8"
+	"V^D8V><6U>,2S]T,R]D(Q=,\"PL[]O\\OZP<W\\P<W\\PL[]PL[]PL[]P\\_^PL[]PL[]"
+	"P\\_^P\\_^P\\_^Q-#_Q,_^Q,_^P\\_^PL[\\K[GFK[KHP<WZP<OYP\\_]Q-#_Q-#_Q-#_"
+	"Q-#_Q='`P,KXM<#KM+[ILKWHLKSGLKWHL[WHL[[HGJC49W&@*35F)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D;'BHQ]4$T-X-T=\\.TM`/T^$1U>,2U>,3UN04UN04T=\\/RM@(K[SL*35F"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-D%R@HZ^M\\/SQ]4$R-8%"
+	"R-8%R-8%R-8%R=<&R=<&R=<&R=<&R=<'RM@(S=L+V><7V^H:S-L+Q]4%Q=0#Q=,\""
+	"QM0\"Q]4$Q]4$Q=,\"P]#`P,W]P,W]RM@'S=L*R=<&R-8%R-8%R-8%R-8%Q]4$Q]4$"
+	"O<GYO,GXV^D8W.H9W>H9W.H9W>L:W.H9W.H9W.H9W.H9W.H9V^D8T^$0NL?XI[3E"
+	"E:+4K+GIO\\S\\P<[^N<;WL+WNK+GJJKCIV><6V^D8V^D8VN@7V^D8V^D8V^D8V^D8"
+	"V^D8VN@7U>,2T-X-R]@'Q=,!PL[]P,S[P<W\\PL[]PL[]PL[]P\\_^P\\_^PL[]P\\_^"
+	"P\\_^P\\_^Q,_^Q-#^P\\_^P\\_]P<W[JK/@M<'NPLW[P<SZP\\_]Q-#_Q-#_Q='_Q-#_"
+	"Q=#_O,;SLKSFL;OEL;ODL;OELKSEL[WGGZK59&^<*35F)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D6V>7O\\S\\T-X-T=\\.TM`/T^$0T^$1U.(2TM`0S=L*QM0#>H:V)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D,#QL>H:VLK_N"
+	"Q]4$Q]4$R-8%R-8%R-8&R=<&R=<&R=<&RM@'R]D(S-H*U.(1W.H:T^$1R]H*R=<'"
+	"Q]4%QM4$Q=,\"Q-(!P]#`Q-(\"R]D)SMP+RM@(R=<&R-8%R-8%R-8%Q]4%Q]4$QM0#"
+	"N<7TI[+>TM\\,V^D8W.H9W.H9W>L:W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8TN$1"
+	"N\\GZG*G;E*'4G*G:N,3TOLO[GZO=O,KZV><6VN@7VN@7VN@7V^D8V^D8V^D8V^D8"
+	"V^D8V><6U>,2T-X-R]D'Q=,!PL[]P,S[PL[]PL[]PL[]P\\_^P\\_^P\\_^PL[]P\\_^"
+	"PL[]P\\_^Q-#^P\\_]PL[\\O\\KXI:_;N\\?TPLW[P<SZP\\_]Q-#^Q-#_Q=#_Q-#_Q,_]"
+	"N,+ML+KCK[GAK[GAL;ODJK/=BY6`66.1*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D2E:&M<'PT-T,T-X.T=\\.TM`/T=\\/S=L+R=<&LK[N+CIK)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+#AH"
+	"<7VMK;GIQM,#Q]4$R-8%R-8&R-8%R=<&R=<&R=<&RM@'S-H)S]T-U.(2T^$1T=\\/"
+	"S]T,S=L+S-H*R]H)S=P+S]T,S]T,R]D(R-8%R-8%R-8%R-8%Q]4$R-8%Q]4$QM0#"
+	"M<'PL\\#OM\\+QN<3QS]P*W.D8W.H9W.H9W.H9W.H9W.H9W.H9W.H9V^D8V^D8V^D8"
+	"VN@7V.85OLS]I+'DF*77DY_0M,+RPL__U>,2VN@7VN@7VN@7V^@8V^D8V^D8V^D8"
+	"V^D8V><6U>,2T-X-R]D'QM0\"PL[]P,S[PL[]PL[]P\\_^P\\_^P\\_^P\\_^P\\_]PL[]"
+	"P\\_^Q,_^P\\_^PL[\\O,?TI*_;O\\KXP<WZPLW[P\\_]Q,_^Q-#_Q-#_Q-#^PLW[MK[G"
+	"L;GAL;GAK;7;E)W':7*?+SMK)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D.$1UF*33R]D(S]T,T-X-SMP+RM@'P]#`97*B)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D*35F:'.CI[/CQ=,\"Q]4$R-8%R-8%R-8%R=<&R=<&RM@'RM@'S-H*S]T,T-X."
+	"T=\\.T=\\/T=\\.T=\\.T-X-SMP+R]D(R=<&R-8%R-8%R-8%R-8%Q]4$Q]4$Q]4$QM0#"
+	"L;WLS=L*V^@7V^D8S=H)O\\KYR=/`VN@6W.H9W.H9W.H9W.H9W.H9W.H9W.H9W.D8"
+	"V^D8V^D8VN@7V><6QM4%N,?XCYS-FZG:KKKJP,W]SMP+U^44VN@7V^D8V^D8V^D8"
+	"V^D8V><6U>,2S]T,RM@'Q=,!PL[]P<W\\PL[]PL[]PL[]PL[]P\\_^P\\_^P\\_^PL[]"
+	"P\\_^P\\_^PL[\\M\\+OIK'>P<W[P<W[P\\[]Q,_^Q-#^Q-#^Q=#_Q-#^P<OWM;WDK[C?"
+	"F*#*<WRG.D5T)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D97&@L+SLP]#_OLKZH[#@6F:6)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D7&B8H:W=P]#`Q]4$R-8%Q]4$R-8%R-8%R=<&RM@'RM@'R]D("
+	"S=L*S=L*S=L*S-H)R]D(RM@'R=<&R-8%R-8%R-8%Q]4$R-8%Q]4$Q]4$Q]4$Q=,\""
+	"K;GGSMP*UN03VN<6W>H8W>L:TM`.OLGWQM'_V.43W.H9W.D8W.H9W.H9W.H9W.H9"
+	"W.D8V^D8V^D8V^D8VN@7VN@7T-X.P]$!E*#2Q=,#FZ?8KKOLO\\S\\T^$0V^@8V^D8"
+	"V^D8V><6U>,2S]T,R]@'QM,!P<W\\P,S[PL[]PL[]PL[]PL[]PL[]P\\_^P\\_^PL[]"
+	"PL[]PL[\\L;SIJ[;CPL[[PLW[P\\_^P\\_^P\\_]Q-#^Q-#^Q,_]K+7BAX^Y:'&=-D)Q"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D4U^/FJ;6PL[^Q]4$Q]4$R-8%R-8%R=<&R=<&R=<&"
+	"R=<&R=<&R=<&R=<&R=<&R-8%R-8%R-8%R-8%R-8%R-8%Q]4%R-8%Q]4$Q]4$Q-(!"
+	"J;7CSMP+UN03V.44V><6VN<5V^@7W>L9V.44Q-#^P\\[[T]`.V^D8W.H9W.H9W.H9"
+	"W.H9V^D8V^D8V^D8V^D8V^D8V^D8VN@7U.,2U^44KKOLM,'RE*'3K;OMVN@7V^D8"
+	"V^D8VN@7U>,2S]T,RM@&Q=,!PL[]P,S[P<W\\PL[]PL[]P\\_^PL[]P\\_^P\\_^PL[]"
+	"PLW\\K+;CK[KGPLW[P<SZP\\_^Q-#_Q-#^P\\_]Q-#^P<SZ?XJX*35F)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D2E6&E*#0O\\S\\Q]4$Q]4$Q]4$R-8%R-8%"
+	"R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%Q]4$R-8%Q]4$Q]4$Q]4$Q]4$Q]4$PL__"
+	"I+#>S=L)V.85U^44V.85V><5V>85V><5VN<6W.D8V^@7R=8%P<SYS=H&V^@7V^D8"
+	"W.D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8VN@7V^D8V.85S]T.J;;HN<;WV^D8V^D8"
+	"V^D8V><6U.(1S]T,RM<&Q=(!P<W\\P,SZPL[]PL[]PL[]PL[]PL[]PL_]P\\_]P,OY"
+	"I:_;ML+OPLW[P\\_]P\\_]Q-#_Q-#_P\\_]P\\_]NL;T9'\"?)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D/TM[C)?'NL?WQM0#Q]4$Q]4$"
+	"R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%R-8%Q]4$Q]4$Q]4$QM0#P,W]"
+	"HJ_<S]T,V.85V.85V.85V.85V><6V><6V.85V.85V.84V^@6W.H9T=\\.P,W[R-0!"
+	"V.44V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8VN@7U.(1V^D8V^D8"
+	"V^D8V><6U.(1S]T,RM<&Q='`P<W\\O\\OZP<W\\PL[]PL[]P\\_^P\\_^PL[]O<CVHZ[:"
+	"N\\?TP,OZP\\_]Q-#^Q-#^Q=#_Q-#^P\\_]M;_N5F&0)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-T-T@X^^ML+RQM0#"
+	"Q]4$Q]4$R-8%R-8%R-8%R-8%Q]4$Q]4$R-8%R-8%Q]4$Q]4$Q]4$Q]4$QM0#OLO["
+	"H*S:SMT+V.85V><6V><6V><6V><6V><6V>85V>85V.85V.44V.44VN<6W>H9U^43"
+	"Q-#_Q,_]T]`-V^@7V^@7V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D8V^D9V^D9V^D8"
+	"V^D8V><6U.(1S]T,RM<&Q='`PL[]P<W\\P<W\\P<W\\P\\_^P\\_^PL[]N,/PI:_<O<GW"
+	"P,OYPL[\\P\\_]Q,_^Q=#_Q=#_Q-#^I[+@04Q[)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+CIJ=X*R"
+	"KKKJQ=,\"Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$R-8%R-8%R-8%Q]4$Q]4$Q]4$Q=,\"N\\CW"
+	"GZO8SMP*V.85V><6VN@7V><6V><6V><6V><6V>85V.85V.85V.44V.84V>85V>85"
+	"W.D8VN<6RM<&PLW[S=H&VN<6V^D8V^D8VN@7V^D8V^D8V^D9W.D9V^D8V^D8V^D8"
+	"V^D8V><6U.(1S]T,RM<&Q='`P<W\\P,S[P<W\\PL[]P\\_^PL[\\L[WJJ++?O<GWP,SY"
+	"PL[]P\\_^Q-#^Q-#_Q-#^Q,_^EJ#/+CIJ)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"*35F:'2DIK+BP]#_Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$QM0#Q=,\"N,7T"
+	"H*O8ML+PSML*U^03V><6VN<6VN<6VN<6V><6V><6V>85V.85V.85V.44V.85V.85"
+	"V>85V>85V^@7V^D7S]P+P<SZQ]+`U^03V^@7VN@7V^D8W.D9W.H9V^D8V^D9W.H9"
+	"V^D9V><6U.(1S]T,RM<&Q='`P<W\\P,S[PL[]PL[]PL[\\K;?DK;?DO\\OYPLW\\PL[]"
+	"P\\_^Q-#_Q-#^P\\_^PLW[@8NY)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D6F65G:G8P<[]Q]4$Q]4$Q]4$Q]4$Q]4$Q]4$QM0$QM4$Q-(!ML+P"
+	"HJS9FZ72HZW8O\\KWT=X-U^03V><6V><6V><6V><6V><6V><6V.85V.85V.85V.85"
+	"V.85V>85V>85V.85V>85VN@6U^03Q='_P\\[\\T-X+V^@7V^D8W.H9W.H9W.D9V^D9"
+	"V^D9V><6U.(1SMP+R=<&Q-#_P<W\\P,S[PL[]P,SZJK3@L;SIO\\KXP<W\\P\\[]P\\_^"
+	"P\\_^P\\_^Q-#^O,CV:72C)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D2U>'DI[-O,CXQM,\"Q]4$Q]4$QM0#QM0#QM0#P]#`LK[L"
+	"GJC6G*;3F*+-JK7@L[[IQ<_]T=X,UN,2V>85V><6V><6V><6V><6V>85V>85V.85"
+	"V.85V.85V.85V.85V.44V.44V>85W.D8W.D7S-H(P,OYR-4\"V>85V^D8W.H9W.H9"
+	"V^D8V><6U.(1S]P+R=<&Q-#_P,S[P,S[O\\OYI['>ML+OP,SZP<W[PL[]P\\_^P\\_^"
+	"Q,_^Q-#^ML#N5F*1)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D.45U@8V]M,#PQM,#QM0#QM0#QM0#P,W]L+SJ"
+	"G:G7G:C6H*G5M<'MML#LN</OO,?SQ<_]SML)U.$0V.44V><6V><6V><6V>85V.85"
+	"V.85V.85V.85V.85V.44U^44V.44V>85V>85VN@7W.D8U.(1PLWZQ=#^UN,1W.D8"
+	"V^D8V.85T^$0SMP+R=<%P\\_^P,SZNL7RIK#<O,CVP,SZPL[]PL[\\P\\_]P\\_^P\\_^"
+	"Q=#_K;?E0DY])S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D+#AH<7RLJ;7EP]#`Q=,\"O\\O[KKKH"
+	"I;'>JK7BH:S8BY7$@XVZJ[3@N,+LNL3PO<;SP\\W[S-@&T]`.U^03V.85V>85V.85"
+	"V>85V.85V>85V.85V.85U^44U^44U^44V.85V.85V.85VN<6WNP;VN@7R=8$PLW["
+	"S=D'UN02T]`/SMP+R-4#P,OZKKGFJ+/@OLKXP,S[PL[]P\\[]PL[\\P\\_]P\\_^Q=#_"
+	"H*K8-#]P)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7VN:FZ?7IK+BD9S)"
+	"<W^M0TY^)S-D)S-D)S-D+SMK;GBEH:O6N,+MN\\7QO<?UP<SZR=8#T=X,UN,2U^44"
+	"U^44V>85V>85V><6V>85V.85U^44V.44V.44U^44V.44V>85V><6VN@7W>H9W>L:"
+	"T-X-N\\?ULKSJJ[7BHZW:I[+?N\\;TP<W[P,SZPL[\\PL[]PL[]PL[\\P\\_]P\\_]CIG'"
+	"*35F)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D6V:4E:#-ML'MO,;SOLCVP,KYR-+`S]P*"
+	"U>(0U^03V.44V.85V>85V.85V.85V.85V.85V.85V.85V.85V><6V><6V><6V><6"
+	"VN@7W.D8V>85T]`.R]@&QM+`P,SZP,SZPL[\\PL[\\PL[]PL[\\PL[\\O\\OY=H\"O)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D1U*!B93!LKSIO,;TOLCWP,KX"
+	"Q=#_S=H(T]`/UN,2V.44V.85V>85V>85V.85V.85V.85V.85V.85V><6V.85V><6"
+	"V.85UN,2T=\\.R]@&Q-#_P<W[P<W[PL[\\P<W[PL[\\PL[\\PL[\\N,+P7FF8)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D-4!P>82RJ[7BO<?U"
+	"OLGWP,OYQ<_^R]<%T=X,U>,1U^44V.85V.85V>85V><6V.85V>85V><6V><6V><6"
+	"V>85U>,2T=X-R=<%Q-#_P<W\\P<W\\P<W\\P<W[PL[\\PL[\\K;?E2%.\")S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D*35F9W*@"
+	"H*G7O,;TOLGWP<OYP\\[\\R=4#S]P*U.$0U^03V.85V.85V><6V><6V><6V><6V><6"
+	"V.85U>,2T-T,R=8$Q-#_P<W[P,S[P<W[P<W[PLW[FZ74-#]P)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D4UZ-DY[-N</QP,KYP<OZP\\[\\QM,!S=H(T]`/UN03V.44V>85V.85V><6V><6"
+	"V.85U>(1S]T,R=8$Q-#_P<W\\P,SZP<W[P,OYAI\"^*35F)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D/DEYA8^]LKSKP<OZP<S[P\\[\\Q=#_R]<%TMX-UN,2U^44V.85V.85"
+	"V.85U.$0S]P*R-4#Q-#_P,S[P<W[N\\;T;GBG)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D+CEJ<WZMJ++@P,KXP<S[P\\[\\Q=#^RM8$S]P*U.$0UN,2"
+	"UN03T]`/S=H)R-4#P\\_^P<W\\M;_M5V*2)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D7VJ:G:?6O<GWP<OZPLS[PLSZQ<_^R-0!"
+	"R]@'T=X,S=H)R-4#Q-#_JK3C1E&!)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D3UJ*C9C'IK'?KKGFFJ314%N+"
+	"-T)S?HJYH*O<G*C7=8\"P+#AH)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	")S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D)S-D"
+	"";
diff --git a/samples/prof_texture_upload/main.c b/samples/prof_texture_upload/main.c
new file mode 100644
index 0000000..d2fd12f
--- /dev/null
+++ b/samples/prof_texture_upload/main.c
@@ -0,0 +1,47 @@
+#include <stddef.h>
+#include <time.h>
+#include <stdio.h>
+
+#ifdef __DREAMCAST__
+#include <kos.h>
+#endif
+
+#include <GL/gl.h>
+#include <GL/glkos.h>
+
+#include "image.h"
+
+
+int main(int argc, char* argv[]) {
+    (void) argc;
+    (void) argv;
+
+    glKosInit();
+    glClearColor(0.5f, 0.0f, 0.5f, 1.0f);
+    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+    glKosSwapBuffers();
+
+    GLuint texture_id = 0;
+    glGenTextures(1, &texture_id);
+    glBindTexture(GL_TEXTURE_2D, texture_id);
+
+    time_t start = time(NULL);
+    time_t end = start;
+
+    int counter = 0;
+
+    fprintf(stderr, "Starting test run...\n");
+
+    while((end - start) < 5) {
+        glTexImage2D(
+            GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, header_data
+        );
+
+        ++counter;
+        end = time(NULL);
+    }
+
+    fprintf(stderr, "Called glTexImage2D %d times (%.4f per call)\n", counter, (float)(end - start) / (float)(counter));
+
+    return 0;
+}
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
new file mode 100644
index 0000000..bc7a45f
--- /dev/null
+++ b/tests/CMakeLists.txt
@@ -0,0 +1,26 @@
+
+
+FILE(GLOB GL_TESTS ${CMAKE_CURRENT_SOURCE_DIR}/test_*.h)
+
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
+
+SET(TEST_GENERATOR_BIN ${CMAKE_SOURCE_DIR}/tools/test_generator.py)
+SET(TEST_MAIN_FILENAME ${CMAKE_CURRENT_BINARY_DIR}/main.cpp)
+
+ADD_CUSTOM_COMMAND(
+    OUTPUT ${TEST_MAIN_FILENAME}
+    COMMAND ${TEST_GENERATOR_BIN} --output ${TEST_MAIN_FILENAME} ${TEST_FILES} ${GL_TESTS}
+    DEPENDS ${TEST_FILES} ${GL_TESTS} ${TEST_GENERATOR_BIN}
+)
+
+add_executable(gldc_tests ${TEST_FILES} ${TEST_SOURCES} ${TEST_MAIN_FILENAME})
+target_link_libraries(gldc_tests GLdc)
+
+if(!PLATFORM_DREAMCAST)
+set_target_properties(
+    gldc_tests
+    PROPERTIES
+    COMPILE_OPTIONS "-m32"
+    LINK_OPTIONS "-m32"
+)
+endif()
diff --git a/tests/test_glteximage2d.h b/tests/test_glteximage2d.h
new file mode 100644
index 0000000..3c5995a
--- /dev/null
+++ b/tests/test_glteximage2d.h
@@ -0,0 +1,74 @@
+#include "tools/test.h"
+
+#include <stdint.h>
+#include <GL/gl.h>
+#include <GL/glkos.h>
+
+
+class TexImage2DTests : public test::TestCase {
+public:
+    uint8_t image_data[8 * 8 * 4] = {0};
+
+    void set_up() {
+        glKosInit();
+
+        /* Init image data so each texel RGBA value matches the
+         * position in the array */
+        for(int i = 0; i < 8 * 8 * 4; i += 4) {
+            image_data[i + 0] = i;
+            image_data[i + 1] = i;
+            image_data[i + 2] = i;
+            image_data[i + 3] = i;
+        }
+    }
+
+    void tear_down() {
+        glKosShutdown();
+    }
+
+    void test_rgb_to_rgb565() {
+        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, image_data);
+        assert_equal(glGetError(), GL_NO_ERROR);
+
+        GLint internalFormat;
+        glGetIntegerv(GL_TEXTURE_INTERNAL_FORMAT_KOS, &internalFormat);
+
+        assert_equal(internalFormat, GL_RGB565_KOS);
+    }
+
+    void test_rgb_to_rgb565_twiddle() {
+        glEnable(GL_TEXTURE_TWIDDLE_KOS);
+        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 8, 8, 0, GL_RGB, GL_UNSIGNED_BYTE, image_data);
+        glDisable(GL_TEXTURE_TWIDDLE_KOS);
+
+        assert_equal(glGetError(), GL_NO_ERROR);
+
+        GLint internalFormat;
+        glGetIntegerv(GL_TEXTURE_INTERNAL_FORMAT_KOS, &internalFormat);
+
+        assert_equal(internalFormat, GL_RGB565_TWID_KOS);
+    }
+
+    void test_rgba_to_argb4444() {
+        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 8, 8, 0, GL_RGBA, GL_UNSIGNED_BYTE, image_data);
+        assert_equal(glGetError(), GL_NO_ERROR);
+
+        GLint internalFormat;
+        glGetIntegerv(GL_TEXTURE_INTERNAL_FORMAT_KOS, &internalFormat);
+
+        assert_equal(internalFormat, GL_ARGB4444_KOS);
+    }
+
+    void test_rgba_to_argb4444_twiddle() {
+        glEnable(GL_TEXTURE_TWIDDLE_KOS);
+        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 8, 8, 0, GL_RGBA, GL_UNSIGNED_BYTE, image_data);
+        glDisable(GL_TEXTURE_TWIDDLE_KOS);
+
+        assert_equal(glGetError(), GL_NO_ERROR);
+
+        GLint internalFormat;
+        glGetIntegerv(GL_TEXTURE_INTERNAL_FORMAT_KOS, &internalFormat);
+
+        assert_equal(internalFormat, GL_ARGB4444_TWID_KOS);
+    }
+};
diff --git a/tools/test.h b/tools/test.h
new file mode 100644
index 0000000..6341a36
--- /dev/null
+++ b/tools/test.h
@@ -0,0 +1,445 @@
+/* *   Copyright (c) 2011-2017 Luke Benstead https://simulant-engine.appspot.com
+ *
+ *     This file is part of Simulant.
+ *
+ *     Simulant is free software: you can redistribute it and/or modify
+ *     it under the terms of the GNU Lesser General Public License as published by
+ *     the Free Software Foundation, either version 3 of the License, or
+ *     (at your option) any later version.
+ *
+ *     Simulant is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU Lesser General Public License for more details.
+ *
+ *     You should have received a copy of the GNU Lesser General Public License
+ *     along with Simulant.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include <vector>
+#include <functional>
+#include <stdexcept>
+#include <iostream>
+#include <sstream>
+#include <algorithm>
+#include <fstream>
+#include <memory>
+
+#define assert_equal(expected, actual) _assert_equal((expected), (actual), __FILE__, __LINE__)
+#define assert_not_equal(expected, actual) _assert_not_equal((expected), (actual), __FILE__, __LINE__)
+#define assert_false(actual) _assert_false((actual), __FILE__, __LINE__)
+#define assert_true(actual) _assert_true((actual), __FILE__, __LINE__)
+#define assert_close(expected, actual, difference) _assert_close((expected), (actual), (difference), __FILE__, __LINE__)
+#define assert_is_null(actual) _assert_is_null((actual), __FILE__, __LINE__)
+#define assert_is_not_null(actual) _assert_is_not_null((actual), __FILE__, __LINE__)
+#define assert_raises(exception, func) _assert_raises<exception>((func), __FILE__, __LINE__)
+#define assert_items_equal(expected, actual) _assert_items_equal((actual), (expected), __FILE__, __LINE__)
+#define not_implemented() _not_implemented(__FILE__, __LINE__)
+
+
+namespace test {
+
+class StringFormatter {
+public:
+    StringFormatter(const std::string& templ):
+        templ_(templ) { }
+
+    struct Counter {
+        Counter(uint32_t c): c(c) {}
+        uint32_t c;
+    };
+
+    template<typename T>
+    std::string format(T value) {
+        std::stringstream ss;
+        ss << value;
+        return _do_format(0, ss.str());
+    }
+
+    template<typename T>
+    std::string format(Counter count, T value) {
+        std::stringstream ss;
+        ss << value;
+        return _do_format(count.c, ss.str());
+    }
+
+    template<typename T, typename... Args>
+    std::string format(T value, const Args&... args) {
+        std::stringstream ss;
+        ss << value;
+        return StringFormatter(_do_format(0, ss.str())).format(Counter(1), args...);
+    }
+
+    template<typename T, typename... Args>
+    std::string format(Counter count, T value, const Args&... args) {
+        std::stringstream ss;
+        ss << value;
+        return StringFormatter(_do_format(count.c, ss.str())).format(Counter(count.c + 1), args...);
+    }
+
+    std::string _do_format(uint32_t counter, const std::string& value) {
+        std::stringstream ss; // Can't use to_string on all platforms
+        ss << counter;
+
+        const std::string to_replace = "{" + ss.str() + "}";
+        std::string output = templ_;
+
+        auto replace = [](std::string& str, const std::string& from, const std::string& to) -> bool {
+            size_t start_pos = str.find(from);
+            if(start_pos == std::string::npos)
+                return false;
+            str.replace(start_pos, from.length(), to);
+            return true;
+        };
+
+        replace(output, to_replace, value);
+        return output;
+    }
+
+private:
+    std::string templ_;
+};
+
+class StringSplitter {
+public:
+    StringSplitter(const std::string& str):
+        str_(str) {
+
+    }
+
+    std::vector<std::string> split() {
+        std::vector<std::string> result;
+        std::string buffer;
+
+        for(auto c: str_) {
+            if(c == '\n') {
+                if(!buffer.empty()) {
+                    result.push_back(buffer);
+                    buffer.clear();
+                }
+            } else {
+                buffer.push_back(c);
+            }
+        }
+
+        if(!buffer.empty()) {
+            result.push_back(buffer);
+        }
+
+        return result;
+    }
+
+private:
+    std::string str_;
+};
+
+typedef StringFormatter _Format;
+
+class AssertionError : public std::logic_error {
+public:
+    AssertionError(const std::string& what):
+        std::logic_error(what),
+        file(""),
+        line(-1) {
+    }
+
+    AssertionError(const std::pair<std::string, int> file_and_line, const std::string& what):
+        std::logic_error(what),
+        file(file_and_line.first),
+        line(file_and_line.second) {
+
+    }
+
+    ~AssertionError() noexcept (true) {
+
+    }
+
+    std::string file;
+    int line;
+};
+
+
+class NotImplementedError: public std::logic_error {
+public:
+    NotImplementedError(const std::string& file, int line):
+        std::logic_error(_Format("Not implemented at {0}:{1}").format(file, line)) {}
+};
+
+
+class SkippedTestError: public std::logic_error {
+public:
+    SkippedTestError(const std::string& reason):
+    std::logic_error(reason) {
+
+    }
+};
+
+class TestCase {
+public:
+    virtual ~TestCase() {}
+
+    virtual void set_up() {}
+    virtual void tear_down() {}
+
+    void skip_if(const bool& flag, const std::string& reason) {
+        if(flag) { throw test::SkippedTestError(reason); }
+    }
+
+    template<typename T, typename U>
+    void _assert_equal(T expected, U actual, std::string file, int line) {
+        if(expected != actual) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("{0} does not match {1}").format(actual, expected));
+        }
+    }
+
+    template<typename T, typename U>
+    void _assert_not_equal(T lhs, U rhs, std::string file, int line) {
+        if(lhs == (T) rhs) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("{0} should not match {1}").format(lhs, rhs));
+        }
+    }
+
+    template<typename T>
+    void _assert_true(T actual, std::string file, int line) {
+        if(!bool(actual)) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("{0} is not true").format(bool(actual) ? "true" : "false"));
+        }
+    }
+
+    template<typename T>
+    void _assert_false(T actual, std::string file, int line) {
+        if(bool(actual)) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("{0} is not false").format(bool(actual) ? "true" : "false"));
+        }
+    }
+
+    template<typename T, typename U, typename V>
+    void _assert_close(T expected, U actual, V difference, std::string file, int line) {
+        if(actual < expected - difference ||
+           actual > expected + difference) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("{0} is not close enough to {1}").format(actual, expected));
+        }
+    }
+
+    template<typename T>
+    void _assert_is_null(T* thing, std::string file, int line) {
+        if(thing != nullptr) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, "Pointer was not NULL");
+        }
+    }
+
+    template<typename T>
+    void _assert_is_not_null(T* thing, std::string file, int line) {
+        if(thing == nullptr) {
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, "Pointer was unexpectedly NULL");
+        }
+    }
+
+    template<typename T, typename Func>
+    void _assert_raises(Func func, std::string file, int line) {
+        try {
+            func();
+            auto file_and_line = std::make_pair(file, line);
+            throw test::AssertionError(file_and_line, test::_Format("Expected exception ({0}) was not thrown").format(typeid(T).name()));
+        } catch(T& e) {}
+    }
+
+    template<typename T, typename U>
+    void _assert_items_equal(const T& lhs, const U& rhs, std::string file, int line) {
+        auto file_and_line = std::make_pair(file, line);
+
+        if(lhs.size() != rhs.size()) {
+            throw test::AssertionError(file_and_line, "Containers are not the same length");
+        }
+
+        for(auto item: lhs) {
+            if(std::find(rhs.begin(), rhs.end(), item) == rhs.end()) {
+                throw test::AssertionError(file_and_line, test::_Format("Container does not contain {0}").format(item));
+            }
+        }
+    }
+
+    void _not_implemented(std::string file, int line) {
+        throw test::NotImplementedError(file, line);
+    }
+};
+
+class TestRunner {
+public:
+    template<typename T, typename U>
+    void register_case(std::vector<U> methods, std::vector<std::string> names) {
+        std::shared_ptr<TestCase> instance = std::make_shared<T>();
+
+        instances_.push_back(instance); //Hold on to it
+
+        for(std::string name: names) {
+            names_.push_back(name);
+        }
+
+        for(U& method: methods) {
+            std::function<void()> func = std::bind(method, dynamic_cast<T*>(instance.get()));
+            tests_.push_back([=]() {
+                instance->set_up();
+                func();
+                instance->tear_down();
+            });
+        }
+    }
+
+    int32_t run(const std::string& test_case, const std::string& junit_output="") {
+        int failed = 0;
+        int skipped = 0;
+        int ran = 0;
+        int crashed = 0;
+
+        auto new_tests = tests_;
+        auto new_names = names_;
+
+        if(!test_case.empty()) {
+            new_tests.clear();
+            new_names.clear();
+
+            for(uint32_t i = 0; i < names_.size(); ++i) {
+                if(names_[i].find(test_case) == 0) {
+                    new_tests.push_back(tests_[i]);
+                    new_names.push_back(names_[i]);
+                }
+            }
+        }
+
+        std::cout << std::endl << "Running " << new_tests.size() << " tests" << std::endl << std::endl;
+
+        std::vector<std::string> junit_lines;
+        junit_lines.push_back("<testsuites>\n");
+
+        std::string klass = "";
+
+        for(std::function<void ()> test: new_tests) {
+            std::string name = new_names[ran];
+            std::string this_klass(name.begin(), name.begin() + name.find_first_of(":"));
+            bool close_klass = ran == (int) new_tests.size() - 1;
+
+            if(this_klass != klass) {
+                if(!klass.empty()) {
+                    junit_lines.push_back("  </testsuite>\n");
+                }
+                klass = this_klass;
+                junit_lines.push_back("  <testsuite name=\"" + this_klass + "\">\n");
+            }
+
+            try {
+                junit_lines.push_back("    <testcase name=\"" + new_names[ran] + "\">\n");
+                std::string output = "    " + new_names[ran];
+
+                for(int i = output.length(); i < 76; ++i) {
+                    output += " ";
+                }
+
+                std::cout << output;
+                test();
+                std::cout << "\033[32m" << "   OK   " << "\033[0m" << std::endl;
+                junit_lines.push_back("    </testcase>\n");
+            } catch(test::NotImplementedError& e) {
+                std::cout << "\033[34m" << " SKIPPED" << "\033[0m" << std::endl;
+                ++skipped;
+                junit_lines.push_back("    </testcase>\n");
+            } catch(test::SkippedTestError& e) {
+                std::cout << "\033[34m" << " SKIPPED" << "\033[0m" << std::endl;
+                ++skipped;
+                junit_lines.push_back("    </testcase>\n");
+            } catch(test::AssertionError& e) {
+                std::cout << "\033[33m" << " FAILED " << "\033[0m" << std::endl;
+                std::cout << "        " << e.what() << std::endl;
+                if(!e.file.empty()) {
+                    std::cout << "        " << e.file << ":" << e.line << std::endl;
+
+                    std::ifstream ifs(e.file);
+                    if(ifs.good()) {
+                        std::string buffer;
+                        std::vector<std::string> lines;
+                        while(std::getline(ifs, buffer)) {
+                            lines.push_back(buffer);
+                        }
+
+                        int line_count = lines.size();
+                        if(line_count && e.line <= line_count) {
+                            std::cout << lines.at(e.line - 1) << std::endl << std::endl;
+                        }
+                    }
+                }
+                ++failed;
+
+                junit_lines.push_back("      <failure message=\"" + std::string(e.what()) + "\"/>\n");
+                junit_lines.push_back("    </testcase>\n");
+            } catch(std::exception& e) {
+                std::cout << "\033[31m" << " EXCEPT " << std::endl;
+                std::cout << "        " << e.what() << "\033[0m" << std::endl;
+                ++crashed;
+
+                junit_lines.push_back("      <failure message=\"" + std::string(e.what()) + "\"/>\n");
+                junit_lines.push_back("    </testcase>\n");
+            }
+            std::cout << "\033[0m";
+            ++ran;
+
+            if(close_klass) {
+                junit_lines.push_back("  </testsuite>\n");
+            }
+        }
+
+        junit_lines.push_back("</testsuites>\n");
+
+        if(!junit_output.empty()) {
+            FILE* f = fopen(junit_output.c_str(), "wt");
+            if(f) {
+                for(auto& line: junit_lines) {
+                    fwrite(line.c_str(), sizeof(char), line.length(), f);
+                }
+            }
+
+            fclose(f);
+        }
+
+        std::cout << "-----------------------" << std::endl;
+        if(!failed && !crashed && !skipped) {
+            std::cout << "All tests passed" << std::endl << std::endl;
+        } else {
+            if(skipped) {
+                std::cout << skipped << " tests skipped";
+            }
+
+            if(failed) {
+                if(skipped) {
+                    std::cout << ", ";
+                }
+                std::cout << failed << " tests failed";
+            }
+
+            if(crashed) {
+                if(failed) {
+                    std::cout << ", ";
+                }
+                std::cout << crashed << " tests crashed";
+            }
+            std::cout << std::endl << std::endl;
+        }
+
+        return failed + crashed;
+    }
+
+private:
+    std::vector<std::shared_ptr<TestCase>> instances_;
+    std::vector<std::function<void()> > tests_;
+    std::vector<std::string> names_;
+};
+} // test
+
diff --git a/tools/test_generator.py b/tools/test_generator.py
new file mode 100755
index 0000000..a3bb43c
--- /dev/null
+++ b/tools/test_generator.py
@@ -0,0 +1,212 @@
+#!/usr/bin/env python3
+
+import argparse
+import re
+import sys
+
+parser = argparse.ArgumentParser(description="Generate C++ unit tests")
+parser.add_argument("--output", type=str, nargs=1, help="The output source file for the generated test main()", required=True)
+parser.add_argument("test_files", type=str, nargs="+", help="The list of C++ files containing your tests")
+parser.add_argument("--verbose", help="Verbose logging", action="store_true", default=False)
+
+
+CLASS_REGEX = r"\s*class\s+(\w+)\s*([\:|,]\s*(?:public|private|protected)\s+[\w|::]+\s*)*"
+TEST_FUNC_REGEX = r"void\s+(?P<func_name>test_\S[^\(]+)\(\s*(void)?\s*\)"
+
+
+INCLUDE_TEMPLATE = "#include \"%(file_path)s\""
+
+REGISTER_TEMPLATE = """
+    runner->register_case<%(class_name)s>(
+        std::vector<void (%(class_name)s::*)()>({%(members)s}),
+        {%(names)s}
+    );"""
+
+MAIN_TEMPLATE = """
+
+#include <functional>
+#include <memory>
+#include <map>
+
+#include "tools/test.h"
+
+%(includes)s
+
+
+std::map<std::string, std::string> parse_args(int argc, char* argv[]) {
+    std::map<std::string, std::string> ret;
+
+    for(int i = 1; i < argc; ++i) {
+        std::string arg = argv[i];
+
+        auto eq = arg.find('=');
+        if(eq != std::string::npos && arg[0] == '-' && arg[1] == '-') {
+            auto key = std::string(arg.begin(), arg.begin() + eq);
+            auto value = std::string(arg.begin() + eq + 1, arg.end());
+            ret[key] = value;
+        } else if(arg[0] == '-' && arg[1] == '-') {
+            auto key = arg;
+            if(i < (argc - 1)) {
+                auto value = argv[++i];
+                ret[key] = value;
+            } else {
+                ret[key] = "";
+            }
+        } else {
+            ret[arg] = "";  // Positional, not key=value
+        }
+    }
+
+    return ret;
+}
+
+int main(int argc, char* argv[]) {
+    auto runner = std::make_shared<test::TestRunner>();
+
+    auto args = parse_args(argc, argv);
+
+    std::string junit_xml;
+    auto junit_xml_it = args.find("--junit-xml");
+    if(junit_xml_it != args.end()) {
+        junit_xml = junit_xml_it->second;
+        std::cout << "    Outputting junit XML to: " << junit_xml << std::endl;
+        args.erase(junit_xml_it);
+    }
+
+    std::string test_case;
+    if(args.size()) {
+        test_case = args.begin()->first;
+    }
+
+    %(registrations)s
+
+    return runner->run(test_case, junit_xml);
+}
+
+
+"""
+
+VERBOSE = False
+
+def log_verbose(message):
+    if VERBOSE:
+        print(message)
+
+
+def find_tests(files):
+
+    subclasses = []
+
+    # First pass, find all class definitions
+    for path in files:
+        with open(path, "rt") as f:
+            source_file_data = f.read().replace("\r\n", "").replace("\n", "")
+
+            while True:
+                match = re.search(CLASS_REGEX, source_file_data)
+                if not match:
+                    break
+
+                class_name = match.group().split(":")[0].replace("class", "").strip()
+
+                try:
+                    parents = match.group().split(":", 1)[1]
+                except IndexError:
+                    pass
+                else:
+                    parents = [ x.strip() for x in parents.split(",") ]
+                    parents = [
+                        x.replace("public", "").replace("private", "").replace("protected", "").strip()
+                        for x in parents
+                    ]
+
+                    subclasses.append((path, class_name, parents, []))
+                    log_verbose("Found: %s" % str(subclasses[-1]))
+
+                start = match.end()
+
+                # Find the next opening brace
+                while source_file_data[start] in (' ', '\t'):
+                    start += 1
+
+                start -= 1
+                end = start
+                if source_file_data[start+1] == '{':
+
+                    class_data = []
+                    brace_counter = 1
+                    for i in range(start+2, len(source_file_data)):
+                        class_data.append(source_file_data[i])
+                        if class_data[-1] == '{': brace_counter += 1
+                        if class_data[-1] == '}': brace_counter -= 1
+                        if not brace_counter:
+                            end = i
+                            break
+
+                    class_data = "".join(class_data)
+
+                    while True:
+                        match = re.search(TEST_FUNC_REGEX, class_data)
+                        if not match:
+                            break
+
+                        subclasses[-1][-1].append(match.group('func_name'))
+                        class_data = class_data[match.end():]
+
+                source_file_data = source_file_data[end:]
+
+
+    # Now, simplify the list by finding all potential superclasses, and then keeping any classes
+    # that subclass them.
+    test_case_subclasses = []
+    i = 0
+    while i < len(subclasses):
+        subclass_names = [x.rsplit("::")[-1] for x in subclasses[i][2]]
+
+        # If this subclasses TestCase, or it subclasses any of the already found testcase subclasses
+        # then add it to the list
+        if "TestCase" in subclass_names or "SimulantTestCase" in subclass_names or any(x[1] in subclasses[i][2] for x in test_case_subclasses):
+            if subclasses[i] not in test_case_subclasses:
+                test_case_subclasses.append(subclasses[i])
+
+                i = 0 # Go back to the start, as we may have just found another parent class
+                continue
+        i += 1
+
+    log_verbose("\n".join([str(x) for x in test_case_subclasses]))
+    return test_case_subclasses
+
+
+def main():
+    global VERBOSE
+
+    args = parser.parse_args()
+
+    VERBOSE = args.verbose
+
+    testcases = find_tests(args.test_files)
+
+    includes = "\n".join([ INCLUDE_TEMPLATE % { 'file_path' : x } for x in set([y[0] for y in testcases]) ])
+    registrations = []
+
+    for path, class_name, superclasses, funcs in testcases:
+        BIND_TEMPLATE = "&%(class_name)s::%(func)s"
+
+        members = ", ".join([ BIND_TEMPLATE % { 'class_name' : class_name, 'func' : x } for x in funcs ])
+        names = ", ".join([ '"%s::%s"' % (class_name, x) for x in funcs ])
+
+        registrations.append(REGISTER_TEMPLATE % { 'class_name' : class_name, 'members' : members, 'names' : names })
+
+    registrations = "\n".join(registrations)
+
+    final = MAIN_TEMPLATE % {
+        'registrations' : registrations,
+        'includes' : includes
+    }
+
+    open(args.output[0], "w").write(final)
+
+    return 0
+
+if __name__ == '__main__':
+    sys.exit(main())

From 34173d926c8a6086689d01b77072ebe10afe7db8 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Thu, 31 Aug 2023 08:44:09 +0100
Subject: [PATCH 02/28] Drastically refactor glTexImage2D

---
 tests/test_allocator.h | 89 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 89 insertions(+)
 create mode 100644 tests/test_allocator.h

diff --git a/tests/test_allocator.h b/tests/test_allocator.h
new file mode 100644
index 0000000..3f2b762
--- /dev/null
+++ b/tests/test_allocator.h
@@ -0,0 +1,89 @@
+#include "tools/test.h"
+
+#include <stdint.h>
+#include <assert.h>
+
+#include <GL/gl.h>
+#include <GL/glkos.h>
+
+#include "GL/alloc/alloc.h"
+
+static inline int round_up(int n, int multiple)
+{
+    assert(multiple);
+    return ((n + multiple - 1) / multiple) * multiple;
+}
+
+class AllocatorTests : public test::TestCase {
+public:
+    uint8_t pool[16 * 2048];
+
+    void set_up() {
+    }
+
+    void tear_down() {
+        alloc_shutdown(pool);
+    }
+    
+    void test_alloc_init() {
+        alloc_init(pool, sizeof(pool));
+
+        void* expected_base_address = (void*) round_up((uintptr_t) pool, 2048);
+        assert_equal(alloc_next_available(pool, 16), expected_base_address);
+        assert_equal(alloc_base_address(pool), expected_base_address);
+
+        int expected_blocks = (
+            uintptr_t(pool + sizeof(pool)) -
+            uintptr_t(expected_base_address)
+        ) / 2048;
+
+        assert_equal(alloc_block_count(pool), expected_blocks);
+    }
+
+    void test_alloc_malloc() {
+        alloc_init(pool, sizeof(pool));
+
+        void* base_address = alloc_base_address(pool);
+        void* a1 = alloc_malloc(pool, 1024);
+
+        /* First alloc should always be the base address */
+        assert_equal(a1, base_address);
+
+        /* An allocation of <= 2048 (well 1024) will not necessarily be at
+         * a 2k boundary */
+        void* expected_next_available = base_address + uintptr_t(1024);
+        assert_equal(alloc_next_available(pool, 1024), expected_next_available);
+
+        /* Requesting 2k though will force to a 2k boundary */
+        expected_next_available = base_address + uintptr_t(2048);
+        assert_equal(alloc_next_available(pool, 2048), expected_next_available);
+
+        /* Now alloc 2048 bytes, this should be on the 2k boundary */
+        void* a2 = alloc_malloc(pool, 2048);
+        assert_equal(a2, expected_next_available);
+
+        /* If we try to allocate 1k, this should go in the second half of the
+         * first block */
+        expected_next_available = base_address + uintptr_t(1024);
+        void* a3 = alloc_malloc(pool, 1024);
+        assert_equal(a3, expected_next_available);
+
+        alloc_free(pool, a1);
+
+        /* Next allocation would go in the just freed block */
+        expected_next_available = base_address;
+        assert_equal(alloc_next_available(pool, 64), expected_next_available);
+
+        /* Now allocate 14 more 2048 size blocks, the following one should
+         * return NULL */
+        for(int i = 0; i < 14; ++i) {
+            alloc_malloc(pool, 2048);
+        }
+
+        assert_is_null(alloc_malloc(pool, 2048));
+
+        /* But we should still have room in the second block for this */
+        assert_is_not_null(alloc_malloc(pool, 64));
+    }
+
+};

From f278777c0e7c41793d4732565a672b17b69dee43 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Thu, 31 Aug 2023 08:45:05 +0100
Subject: [PATCH 03/28] WIP: Start implementing new allocator

---
 CMakeLists.txt       |   1 +
 GL/alloc/alloc.c     | 228 +++++++++++++++++++++++++++++++++++++++++++
 GL/alloc/alloc.h     |  28 ++++++
 tests/CMakeLists.txt |   2 +-
 4 files changed, 258 insertions(+), 1 deletion(-)
 create mode 100644 GL/alloc/alloc.c
 create mode 100644 GL/alloc/alloc.h

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9cb2edd..7e52ac2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -81,6 +81,7 @@ set(
     GL/texture.c
     GL/util.c
     GL/yalloc/yalloc.c
+    GL/alloc/alloc.c
     ${CMAKE_CURRENT_BINARY_DIR}/version.c
 )
 
diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
new file mode 100644
index 0000000..85b96a9
--- /dev/null
+++ b/GL/alloc/alloc.c
@@ -0,0 +1,228 @@
+#include <stdint.h>
+
+#include "alloc.h"
+
+
+/* This allocator is designed so that all allocations larger
+ * than 2k, fall on a 2k boundary. Smaller allocations will
+ * never cross a 2k boundary.
+ *
+ * House keeping is stored in RAM to avoid reading back from the
+ * VRAM to check for usage. Headers can't be easily stored in the
+ * blocks anyway as they have to be 2k aligned (so you'd need to
+ * store them in reverse or something)
+ *
+ * Defragmenting the pool will move allocations less than 2k
+ * first, and then shift any full 2k blocks to the start of the
+ * address space.
+ *
+ * The maximum pool size is 8M, made up of:
+ *
+ * - 4096 blocks of 2k
+ * - each with 8 sub-blocks of 256 bytes
+ *
+ * Why?
+ *
+ * The PVR performs better if textures don't cross 2K memory
+ * addresses, so we try to avoid that. Obviously we can't
+ * if the allocation is > 2k, but in that case we can at least
+ * align with 2k and the VQ codebook (which is usually 2k) will
+ * be in its own page.
+ *
+ * The smallest PVR texture allowed is 8x8 at 16 bit (so 128 bytes)
+ * but we're unlikely to use too many of those, so having a min sub-block
+ * size of 256 should be OK (a 16x16 image is 512, so two sub-blocks).
+ *
+ * We could go down to 128 bytes if wastage is an issue, but then we have
+ * to store double the number of usage markers.
+ */
+
+#include <assert.h>
+
+#define EIGHT_MEG (8 * 1024 * 1024)
+#define TWO_KILOBYTES (2 * 1024)
+#define BLOCK_COUNT (EIGHT_MEG / TWO_KILOBYTES)
+
+static inline int round_up(int n, int multiple)
+{
+    assert(multiple);
+    return ((n + multiple - 1) / multiple) * multiple;
+}
+
+struct AllocEntry {
+    void* pointer;
+    size_t size;
+    struct AllocEntry* next;
+};
+
+
+typedef struct {
+    /* This is a usage bitmask for each block. A block
+     * is divided into 8 x 256 byte subblocks. If a block
+     * is entirely used, it's value will be 255, if
+     * it's entirely free then it will be 0.
+     */
+    uint8_t block_usage[BLOCK_COUNT];
+    uint8_t* pool;  // Pointer to the memory pool
+    size_t pool_size; // Size of the memory pool
+    uint8_t* base_address; // First 2k aligned address in the pool
+    size_t block_count;  // Number of 2k blocks in the pool
+
+    /* It's frustrating that we need to do this dynamically
+     * but we need to know the size allocated when we free() */
+    struct AllocEntry* allocations;
+} PoolHeader;
+
+
+static PoolHeader pool_header = {
+    {0}, NULL, 0, NULL, 0, NULL
+};
+
+void* alloc_base_address(void* pool) {
+    return pool_header.base_address;
+}
+
+size_t alloc_block_count(void* pool) {
+    return pool_header.block_count;
+}
+
+void* alloc_next_available(void* pool, size_t required_size) {
+    uint8_t* it = pool_header.block_usage;
+    uint32_t required_subblocks = (required_size / 256);
+    if(required_size % 256) required_subblocks += 1;
+
+    while(true) {
+        // Skip full blocks
+        while((*it) == 255) {
+            ++it;
+            if(it >= pool_header.block_usage + sizeof(pool_header.block_usage)) {
+                return NULL;
+            }
+            continue;
+        }
+
+        uint32_t found_subblocks = 0;
+        bool requires_alignment = required_size >= 2048;
+
+        /* We just need to find enough consecutive blocks */
+        while(found_subblocks < required_subblocks) {
+            uint8_t t = *it;
+
+            /* Optimisation only. Skip over full blocks */
+            if(t == 255) {
+                ++it;
+                found_subblocks = 0;
+                continue;
+            }
+
+            /* Now let's see how many consecutive blocks we can find */
+            for(int i = 0; i < 8; ++i) {
+                if((t & 0x80) == 0) {
+                    if(requires_alignment && found_subblocks == 0 && i != 0) {
+                        // Ignore this subblock, because we want the first subblock to be aligned
+                        // at a 2048 boundary and this one isn't (i != 0)
+                        found_subblocks = 0;
+                    } else {
+                        found_subblocks++;
+                        if(found_subblocks >= required_subblocks) {
+                            /* We found space! Now calculate the address */
+                            uintptr_t offset = (it - pool_header.block_usage) * 8;
+                            offset += (i + 1);
+                            offset -= required_subblocks;
+                            return pool_header.base_address + (offset * 256);
+                        }
+                    }
+                } else {
+                    found_subblocks = 0;
+                }
+
+                t <<= 1;
+            }
+
+            ++it;
+            if(it >= pool_header.block_usage + sizeof(pool_header.block_usage)) {
+                return NULL;
+            }
+        }
+
+    }
+
+}
+
+uint32_t alloc_block_from_address(void* p) {
+
+}
+
+int alloc_init(void* pool, size_t size) {
+    if(pool_header.pool) {
+        return -1;
+    }
+
+    if(size > EIGHT_MEG) {  // FIXME: >= ?
+        return -1;
+    }
+
+    uint8_t* p = (uint8_t*) pool;
+
+    memset(pool_header.block_usage, 0, sizeof(pool_header.block_usage));
+    pool_header.pool = pool;
+    pool_header.pool_size = size;
+    pool_header.base_address = round_up(pool_header.pool, 2048);
+    pool_header.block_count = ((p + size) - pool_header.base_address) / 2048;
+
+    return 0;
+}
+
+void alloc_shutdown(void* pool) {
+    pool_header.pool = NULL;
+}
+
+void* alloc_malloc(void* pool, size_t size) {
+    void* ret = alloc_next_available(pool, size);
+    if(ret) {
+        uintptr_t start_subblock = (uint8_t*) ret - pool_header.base_address;
+
+        uint32_t required_subblocks = (size / 256);
+        if(size % 256) required_subblocks += 1;
+
+        uintptr_t start_block = start_subblock / 8;
+        uintptr_t filled_blocks = required_subblocks / 8;
+        uintptr_t trailing_subblocks = required_subblocks % 8;
+
+        for(size_t i = start_block; i < start_block + filled_blocks; ++i) {
+            pool_header.block_usage[i] = 255;
+        }
+
+        uint8_t* trailing = &pool_header.block_usage[start_block + filled_blocks];
+        uint8_t mask = 0;
+        for(size_t i = 0; i < trailing_subblocks; ++i) {
+            mask |= 1;
+            mask <<= 1;
+        }
+
+        mask <<= 8 - trailing_subblocks - 1;
+        *trailing |= mask;
+    }
+
+    return ret;
+}
+
+void alloc_free(void* pool, void* p) {
+
+}
+
+void alloc_defrag_start(void* pool) {
+
+}
+
+void* alloc_defrag_address(void* pool, void* p) {
+
+}
+
+void alloc_defrag_commit(void* pool) {
+
+}
+
+bool alloc_defrag_in_progress(void* pool) {
+
+}
diff --git a/GL/alloc/alloc.h b/GL/alloc/alloc.h
new file mode 100644
index 0000000..466c80a
--- /dev/null
+++ b/GL/alloc/alloc.h
@@ -0,0 +1,28 @@
+#pragma once
+
+#include <stdbool.h>
+#include <stdint.h>
+#include <stddef.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int alloc_init(void* pool, size_t size);
+void alloc_shutdown(void* pool);
+
+void *alloc_malloc(void* pool, size_t size);
+void alloc_free(void* pool, void* p);
+
+void alloc_defrag_start(void* pool);
+void* alloc_defrag_address(void* pool, void* p);
+void alloc_defrag_commit(void* pool);
+bool alloc_defrag_in_progress(void* pool);
+
+void* alloc_next_available(void* pool, size_t required_size);
+void* alloc_base_address(void* pool);
+size_t alloc_block_count(void* pool);
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index bc7a45f..7dc2faf 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -16,7 +16,7 @@ ADD_CUSTOM_COMMAND(
 add_executable(gldc_tests ${TEST_FILES} ${TEST_SOURCES} ${TEST_MAIN_FILENAME})
 target_link_libraries(gldc_tests GLdc)
 
-if(!PLATFORM_DREAMCAST)
+if(NOT PLATFORM_DREAMCAST)
 set_target_properties(
     gldc_tests
     PROPERTIES

From f49a98ab543b1be0049e07456fb23022435ba450 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Thu, 31 Aug 2023 20:49:34 +0100
Subject: [PATCH 04/28] Fix allocate and free

---
 GL/alloc/alloc.c | 198 ++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 170 insertions(+), 28 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 85b96a9..8222db6 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -1,4 +1,6 @@
 #include <stdint.h>
+#include <string.h>
+#include <stdlib.h>
 
 #include "alloc.h"
 
@@ -35,6 +37,10 @@
  *
  * We could go down to 128 bytes if wastage is an issue, but then we have
  * to store double the number of usage markers.
+ *
+ * FIXME:
+ *
+ *  - Allocations < 2048 can still cross boundaries
  */
 
 #include <assert.h>
@@ -69,7 +75,12 @@ typedef struct {
     size_t block_count;  // Number of 2k blocks in the pool
 
     /* It's frustrating that we need to do this dynamically
-     * but we need to know the size allocated when we free() */
+     * but we need to know the size allocated when we free()...
+     * we could store it statically but it would take 64k if we had
+     * an array of block_index -> block size where there would be 2 ** 32
+     * entries of 16 bit block sizes. The drawback (aside the memory usage)
+     * would be that we won't be able to order by size, so defragging will
+     * take much more time.*/
     struct AllocEntry* allocations;
 } PoolHeader;
 
@@ -79,10 +90,12 @@ static PoolHeader pool_header = {
 };
 
 void* alloc_base_address(void* pool) {
+    (void) pool;
     return pool_header.base_address;
 }
 
 size_t alloc_block_count(void* pool) {
+    (void) pool;
     return pool_header.block_count;
 }
 
@@ -91,7 +104,9 @@ void* alloc_next_available(void* pool, size_t required_size) {
     uint32_t required_subblocks = (required_size / 256);
     if(required_size % 256) required_subblocks += 1;
 
-    while(true) {
+    uint8_t* end = pool_header.block_usage + pool_header.block_count;
+
+    while(it < end) {
         // Skip full blocks
         while((*it) == 255) {
             ++it;
@@ -102,6 +117,8 @@ void* alloc_next_available(void* pool, size_t required_size) {
         }
 
         uint32_t found_subblocks = 0;
+
+        /* Anything gte to 2048 must be aligned to a 2048 boundary */
         bool requires_alignment = required_size >= 2048;
 
         /* We just need to find enough consecutive blocks */
@@ -112,6 +129,11 @@ void* alloc_next_available(void* pool, size_t required_size) {
             if(t == 255) {
                 ++it;
                 found_subblocks = 0;
+
+                if(it >= end) {
+                    return NULL;
+                }
+
                 continue;
             }
 
@@ -140,20 +162,19 @@ void* alloc_next_available(void* pool, size_t required_size) {
             }
 
             ++it;
-            if(it >= pool_header.block_usage + sizeof(pool_header.block_usage)) {
+            if(it >= end) {
                 return NULL;
             }
         }
 
     }
 
-}
-
-uint32_t alloc_block_from_address(void* p) {
-
+    return NULL;
 }
 
 int alloc_init(void* pool, size_t size) {
+    (void) pool;
+
     if(pool_header.pool) {
         return -1;
     }
@@ -167,48 +188,169 @@ int alloc_init(void* pool, size_t size) {
     memset(pool_header.block_usage, 0, sizeof(pool_header.block_usage));
     pool_header.pool = pool;
     pool_header.pool_size = size;
-    pool_header.base_address = round_up(pool_header.pool, 2048);
+    pool_header.base_address = (uint8_t*) round_up((uintptr_t) pool_header.pool, 2048);
     pool_header.block_count = ((p + size) - pool_header.base_address) / 2048;
+    pool_header.allocations = NULL;
+
+    assert(((uintptr_t) pool_header.base_address) % 2048 == 0);
 
     return 0;
 }
 
 void alloc_shutdown(void* pool) {
-    pool_header.pool = NULL;
+    (void) pool;
+
+    struct AllocEntry* it = pool_header.allocations;
+    while(it) {
+        struct AllocEntry* next = it->next;
+        free(it);
+        it = next;
+    }
+
+    memset(&pool_header, 0, sizeof(pool_header));
+}
+
+static inline uint32_t size_to_subblock_count(size_t size) {
+    uint32_t required_subblocks = (size / 256);
+    if(size % 256) required_subblocks += 1;
+    return required_subblocks;
+}
+
+static inline uint32_t subblock_from_pointer(void* p) {
+    uint8_t* ptr = (uint8_t*) p;
+    return (ptr - pool_header.base_address) / 256;
 }
 
 void* alloc_malloc(void* pool, size_t size) {
     void* ret = alloc_next_available(pool, size);
+    if(size >= 2048) {
+        assert(((uintptr_t) ret) % 2048 == 0);
+    }
+
     if(ret) {
-        uintptr_t start_subblock = (uint8_t*) ret - pool_header.base_address;
-
-        uint32_t required_subblocks = (size / 256);
-        if(size % 256) required_subblocks += 1;
-
-        uintptr_t start_block = start_subblock / 8;
-        uintptr_t filled_blocks = required_subblocks / 8;
-        uintptr_t trailing_subblocks = required_subblocks % 8;
-
-        for(size_t i = start_block; i < start_block + filled_blocks; ++i) {
-            pool_header.block_usage[i] = 255;
-        }
-
-        uint8_t* trailing = &pool_header.block_usage[start_block + filled_blocks];
+        uintptr_t start_subblock = subblock_from_pointer(ret);
+        uint32_t required_subblocks = size_to_subblock_count(size);
+        size_t offset = start_subblock % 8;
+        size_t block = start_subblock / 8;
         uint8_t mask = 0;
-        for(size_t i = 0; i < trailing_subblocks; ++i) {
-            mask |= 1;
-            mask <<= 1;
+
+        /* Toggle any bits for the first block */
+        for(int i = offset - 1; i >= 0; --i) {
+            mask |= (1 << i);
+            required_subblocks--;
         }
 
-        mask <<= 8 - trailing_subblocks - 1;
-        *trailing |= mask;
+        if(mask) {
+            pool_header.block_usage[block++] |= mask;
+        }
+
+        /* Fill any full blocks in the middle of the allocation */
+        while(required_subblocks > 8) {
+            pool_header.block_usage[block++] = 255;
+            required_subblocks -= 8;
+        }
+
+        /* Fill out any trailing subblocks */
+        mask = 0;
+        for(size_t i = 0; i < required_subblocks; ++i) {
+            mask |= (1 << (7 - i));
+        }
+
+        if(mask) {
+            pool_header.block_usage[block++] |= mask;
+        }
+
+
+        /* Insert allocations in the list by size descending so that when we
+         * defrag we can move the larger blocks before the smaller ones without
+         * much effort */
+        struct AllocEntry* new_entry = (struct AllocEntry*) malloc(sizeof(struct AllocEntry));
+        new_entry->pointer = ret;
+        new_entry->size = size;
+        new_entry->next = NULL;
+
+        struct AllocEntry* it = pool_header.allocations;
+        struct AllocEntry* last = NULL;
+
+        if(!it) {
+            pool_header.allocations = new_entry;
+        } else {
+            while(it) {
+                if(it->size < size) {
+                    if(last) {
+                        last->next = new_entry;
+                    } else {
+                        pool_header.allocations = new_entry;
+                    }
+
+                    new_entry->next = it;
+                    break;
+                } else if(!it->next) {
+                    it->next = new_entry;
+                    new_entry->next = NULL;
+                    break;
+                }
+
+                last = it;
+                it = it->next;
+            }
+        }
     }
 
     return ret;
 }
 
 void alloc_free(void* pool, void* p) {
+    struct AllocEntry* it = pool_header.allocations;
+    struct AllocEntry* last = NULL;
+    while(it) {
+        if(it->pointer == p) {
+            size_t used_subblocks = size_to_subblock_count(it->size);
+            size_t subblock = subblock_from_pointer(p);
+            size_t block = subblock / 8;
+            size_t offset = subblock % 8;
+            uint8_t mask = 0;
 
+            /* Wipe out any leading subblocks */
+            for(int i = offset; i > 0; --i) {
+                mask |= (1 << i);
+                used_subblocks--;
+            }
+
+            if(mask) {
+                pool_header.block_usage[block++] &= ~mask;
+            }
+
+            /* Clear any full blocks in the middle of the allocation */
+            while(used_subblocks > 8) {
+                pool_header.block_usage[block++] = 0;
+                used_subblocks -= 8;
+            }
+
+            /* Wipe out any trailing subblocks */
+            mask = 0;
+            for(size_t i = 0; i < used_subblocks; ++i) {
+                mask |= (1 << (7 - i));
+            }
+
+            if(mask) {
+                pool_header.block_usage[block++] &= ~mask;
+            }
+
+            if(last) {
+                last->next = it->next;
+            } else {
+                assert(it == pool_header.allocations);
+                pool_header.allocations = it->next;
+            }
+
+            free(it);
+            break;
+        }
+
+        last = it;
+        it = it->next;
+    }
 }
 
 void alloc_defrag_start(void* pool) {

From 3248499d5ae4b19b5d961776e7f8d6c679ae6efa Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Thu, 31 Aug 2023 21:21:14 +0100
Subject: [PATCH 05/28] Switch to the new allocator

---
 GL/alloc/alloc.c        | 72 ++++++++++++++++++++++++++++++++++++++---
 GL/alloc/alloc.h        |  3 ++
 GL/platforms/software.c |  2 +-
 GL/texture.c            | 46 +++++++++++++-------------
 tests/test_allocator.h  |  6 ++--
 5 files changed, 97 insertions(+), 32 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 8222db6..45e2ebc 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -41,6 +41,7 @@
  * FIXME:
  *
  *  - Allocations < 2048 can still cross boundaries
+ *  - Only operates on one pool (ignores what you pass)
  */
 
 #include <assert.h>
@@ -73,6 +74,7 @@ typedef struct {
     size_t pool_size; // Size of the memory pool
     uint8_t* base_address; // First 2k aligned address in the pool
     size_t block_count;  // Number of 2k blocks in the pool
+    bool defrag_in_progress;
 
     /* It's frustrating that we need to do this dynamically
      * but we need to know the size allocated when we free()...
@@ -86,7 +88,7 @@ typedef struct {
 
 
 static PoolHeader pool_header = {
-    {0}, NULL, 0, NULL, 0, NULL
+    {0}, NULL, 0, NULL, 0, false, NULL
 };
 
 void* alloc_base_address(void* pool) {
@@ -100,6 +102,8 @@ size_t alloc_block_count(void* pool) {
 }
 
 void* alloc_next_available(void* pool, size_t required_size) {
+    (void) pool;
+
     uint8_t* it = pool_header.block_usage;
     uint32_t required_subblocks = (required_size / 256);
     if(required_size % 256) required_subblocks += 1;
@@ -301,6 +305,8 @@ void* alloc_malloc(void* pool, size_t size) {
 }
 
 void alloc_free(void* pool, void* p) {
+    (void) pool;
+
     struct AllocEntry* it = pool_header.allocations;
     struct AllocEntry* last = NULL;
     while(it) {
@@ -354,17 +360,73 @@ void alloc_free(void* pool, void* p) {
 }
 
 void alloc_defrag_start(void* pool) {
-
+    (void) pool;
+    pool_header.defrag_in_progress = true;
 }
 
 void* alloc_defrag_address(void* pool, void* p) {
-
+    (void) pool;
+    return p;
 }
 
 void alloc_defrag_commit(void* pool) {
-
+    (void) pool;
+    pool_header.defrag_in_progress = false;
 }
 
 bool alloc_defrag_in_progress(void* pool) {
-
+    (void) pool;
+    return pool_header.defrag_in_progress;
+}
+
+static inline uint8_t count_ones(uint8_t byte) {
+    static const uint8_t NIBBLE_LOOKUP [16] = {
+        0, 1, 1, 2, 1, 2, 2, 3,
+        1, 2, 2, 3, 2, 3, 3, 4
+    };
+    return NIBBLE_LOOKUP[byte & 0x0F] + NIBBLE_LOOKUP[byte >> 4];
+}
+
+size_t alloc_count_free(void* pool) {
+    uint8_t* it = pool_header.block_usage;
+    uint8_t* end = it + pool_header.block_count;
+
+    size_t total_free = 0;
+
+    while(it < end) {
+        total_free += count_ones(*it) * 256;
+        ++it;
+    }
+
+    return total_free;
+}
+
+size_t alloc_count_continuous(void* pool) {
+    (void) pool;
+
+    size_t largest_block = 0;
+
+    uint8_t* it = pool_header.block_usage;
+    uint8_t* end = it + pool_header.block_count;
+
+    size_t current_block = 0;
+    while(it < end) {
+        uint8_t t = *it++;
+        if(!t) {
+            current_block += 2048;
+        } else {
+            for(int i = 7; i >= 0; --i) {
+                bool bitset = (t & (1 << i));
+                if(bitset) {
+                    current_block += (7 - i) * 256;
+                    if(largest_block < current_block) {
+                        largest_block = current_block;
+                        current_block = 0;
+                    }
+                }
+            }
+        }
+    }
+
+    return largest_block;
 }
diff --git a/GL/alloc/alloc.h b/GL/alloc/alloc.h
index 466c80a..d69bb9f 100644
--- a/GL/alloc/alloc.h
+++ b/GL/alloc/alloc.h
@@ -19,6 +19,9 @@ void* alloc_defrag_address(void* pool, void* p);
 void alloc_defrag_commit(void* pool);
 bool alloc_defrag_in_progress(void* pool);
 
+size_t alloc_count_free(void* pool);
+size_t alloc_count_continuous(void* pool);
+
 void* alloc_next_available(void* pool, size_t required_size);
 void* alloc_base_address(void* pool);
 size_t alloc_block_count(void* pool);
diff --git a/GL/platforms/software.c b/GL/platforms/software.c
index d9d7fc8..4245930 100644
--- a/GL/platforms/software.c
+++ b/GL/platforms/software.c
@@ -12,7 +12,7 @@
 #define CLIP_DEBUG 0
 #define ZNEAR_CLIPPING_ENABLED 1
 
-static size_t AVAILABLE_VRAM = 16 * 1024 * 1024;
+static size_t AVAILABLE_VRAM = 8 * 1024 * 1024;
 static Matrix4x4 MATRIX;
 
 static SDL_Window* WINDOW = NULL;
diff --git a/GL/texture.c b/GL/texture.c
index 13f7605..aebfde5 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -8,7 +8,7 @@
 #include "config.h"
 #include "platform.h"
 
-#include "yalloc/yalloc.h"
+#include "alloc/alloc.h"
 
 /* We always leave this amount of vram unallocated to prevent
  * issues with the allocator */
@@ -31,8 +31,8 @@ static GLboolean SUBBANKS_USED[MAX_GLDC_PALETTE_SLOTS][MAX_GLDC_4BPP_PALETTE_SLO
 static GLenum INTERNAL_PALETTE_FORMAT = GL_RGBA8;
 static GLboolean TEXTURE_TWIDDLE_ENABLED = GL_FALSE;
 
-static void* YALLOC_BASE = NULL;
-static size_t YALLOC_SIZE = 0;
+static void* ALLOC_BASE = NULL;
+static size_t ALLOC_SIZE = 0;
 
 static const unsigned short MortonTable256[256] =
     {
@@ -84,15 +84,15 @@ GL_FORCE_INLINE uint32_t twid_location(uint32_t i, uint32_t w, uint32_t h) {
 }
 
 
-static void* yalloc_alloc_and_defrag(size_t size) {
-    void* ret = yalloc_alloc(YALLOC_BASE, size);
+static void* alloc_malloc_and_defrag(size_t size) {
+    void* ret = alloc_malloc(ALLOC_BASE, size);
 
     if(!ret) {
         /* Tried to allocate, but out of room, let's try defragging
          * and repeating the alloc */
         fprintf(stderr, "Ran out of memory, defragmenting\n");
         glDefragmentTextureMemory_KOS();
-        ret = yalloc_alloc(YALLOC_BASE, size);
+        ret = alloc_malloc(ALLOC_BASE, size);
     }
 
     gl_assert(ret && "Out of PVR memory!");
@@ -505,15 +505,15 @@ GLubyte _glInitTextures() {
     //memset((void*) SUBBANKS_USED, 0x0, sizeof(SUBBANKS_USED));
 
     size_t vram_free = GPUMemoryAvailable();
-    YALLOC_SIZE = vram_free - PVR_MEM_BUFFER_SIZE; /* Take all but 64kb VRAM */
-    YALLOC_BASE = GPUMemoryAlloc(YALLOC_SIZE);
+    ALLOC_SIZE = vram_free - PVR_MEM_BUFFER_SIZE; /* Take all but 64kb VRAM */
+    ALLOC_BASE = GPUMemoryAlloc(ALLOC_SIZE);
 
 #ifdef __DREAMCAST__
     /* Ensure memory is aligned */
     gl_assert((uintptr_t) YALLOC_BASE % 32 == 0);
 #endif
 
-    yalloc_init(YALLOC_BASE, YALLOC_SIZE);
+    alloc_init(ALLOC_BASE, ALLOC_SIZE);
 
     gl_assert(TEXTURE_OBJECTS.element_size > 0);
     return 1;
@@ -610,7 +610,7 @@ void APIENTRY glDeleteTextures(GLsizei n, GLuint *textures) {
             }
 
             if(txr->data) {
-                yalloc_free(YALLOC_BASE, txr->data);
+                alloc_free(ALLOC_BASE, txr->data);
                 txr->data = NULL;
             }
 
@@ -858,10 +858,10 @@ void APIENTRY glCompressedTexImage2DARB(GLenum target,
 
     /* Odds are slim new data is same size as old, so free always */
     if(active->data) {
-        yalloc_free(YALLOC_BASE, active->data);
+        alloc_free(ALLOC_BASE, active->data);
     }
 
-    active->data = yalloc_alloc_and_defrag(imageSize);
+    active->data = alloc_malloc_and_defrag(imageSize);
 
     gl_assert(active->data);  // Debug assert
 
@@ -1242,14 +1242,14 @@ void _glAllocateSpaceForMipmaps(TextureObject* active) {
         memcpy(temp, active->data, size);
 
         /* Free the PVR data */
-        yalloc_free(YALLOC_BASE, active->data);
+        alloc_free(ALLOC_BASE, active->data);
         active->data = NULL;
     }
 
     /* Figure out how much room to allocate for mipmaps */
     GLuint bytes = _glGetMipmapDataSize(active);
 
-    active->data = yalloc_alloc_and_defrag(bytes);
+    active->data = alloc_malloc_and_defrag(bytes);
 
     gl_assert(active->data);
 
@@ -1389,7 +1389,7 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
            active->height != height ||
            active->internalFormat != cleanInternalFormat) {
             /* changed - free old texture memory */
-            yalloc_free(YALLOC_BASE, active->data);
+            alloc_free(ALLOC_BASE, active->data);
             active->data = NULL;
             active->mipmap = 0;
             active->mipmapCount = 0;
@@ -1434,7 +1434,7 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             /* If we're uploading a mipmap level, we need to allocate the full amount of space */
             _glAllocateSpaceForMipmaps(active);
         } else {
-            active->data = yalloc_alloc_and_defrag(active->baseDataSize);
+            active->data = alloc_malloc_and_defrag(active->baseDataSize);
         }
 
         active->isCompressed = GL_FALSE;
@@ -1856,23 +1856,23 @@ GLAPI void APIENTRY glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height
     gl_assert(0 && "Not Implemented");
 }
 GLuint _glMaxTextureMemory() {
-    return YALLOC_SIZE;
+    return ALLOC_SIZE;
 }
 
 GLuint _glFreeTextureMemory() {
-    return yalloc_count_free(YALLOC_BASE);
+    return alloc_count_free(ALLOC_BASE);
 }
 
 GLuint _glUsedTextureMemory() {
-    return YALLOC_SIZE - _glFreeTextureMemory();
+    return ALLOC_SIZE - _glFreeTextureMemory();
 }
 
 GLuint _glFreeContiguousTextureMemory() {
-    return yalloc_count_continuous(YALLOC_BASE);
+    return alloc_count_continuous(ALLOC_BASE);
 }
 
 GLAPI GLvoid APIENTRY glDefragmentTextureMemory_KOS(void) {
-    yalloc_defrag_start(YALLOC_BASE);
+    alloc_defrag_start(ALLOC_BASE);
 
     GLuint id;
 
@@ -1881,11 +1881,11 @@ GLAPI GLvoid APIENTRY glDefragmentTextureMemory_KOS(void) {
         TextureObject* txr = (TextureObject*) named_array_get(&TEXTURE_OBJECTS, id);
         if(txr){
             gl_assert(txr->index == id);
-            txr->data = yalloc_defrag_address(YALLOC_BASE, txr->data);
+            txr->data = alloc_defrag_address(ALLOC_BASE, txr->data);
         }
     }
 
-    yalloc_defrag_commit(YALLOC_BASE);
+    alloc_defrag_commit(ALLOC_BASE);
 }
 
 GLAPI void APIENTRY glGetTexImage(GLenum tex, GLint lod, GLenum format, GLenum type, GLvoid* img) {
diff --git a/tests/test_allocator.h b/tests/test_allocator.h
index 3f2b762..32ac1cc 100644
--- a/tests/test_allocator.h
+++ b/tests/test_allocator.h
@@ -16,7 +16,7 @@ static inline int round_up(int n, int multiple)
 
 class AllocatorTests : public test::TestCase {
 public:
-    uint8_t pool[16 * 2048];
+    uint8_t __attribute__((aligned(2048))) pool[16 * 2048];
 
     void set_up() {
     }
@@ -32,7 +32,7 @@ public:
         assert_equal(alloc_next_available(pool, 16), expected_base_address);
         assert_equal(alloc_base_address(pool), expected_base_address);
 
-        int expected_blocks = (
+        size_t expected_blocks = (
             uintptr_t(pool + sizeof(pool)) -
             uintptr_t(expected_base_address)
         ) / 2048;
@@ -43,7 +43,7 @@ public:
     void test_alloc_malloc() {
         alloc_init(pool, sizeof(pool));
 
-        void* base_address = alloc_base_address(pool);
+        uint8_t* base_address = (uint8_t*) alloc_base_address(pool);
         void* a1 = alloc_malloc(pool, 1024);
 
         /* First alloc should always be the base address */

From 4b47f6878ffe4ebe7d4b8b41ab0541ab7e759c24 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 08:34:48 +0100
Subject: [PATCH 06/28] Remove yalloc

---
 CMakeLists.txt               |   1 -
 GL/texture.c                 |   2 +-
 GL/yalloc/LICENSE            |  21 -
 GL/yalloc/README.md          | 158 -------
 GL/yalloc/yalloc.c           | 803 -----------------------------------
 GL/yalloc/yalloc.h           | 176 --------
 GL/yalloc/yalloc_dump.c      |  39 --
 GL/yalloc/yalloc_internals.h |  63 ---
 8 files changed, 1 insertion(+), 1262 deletions(-)
 delete mode 100644 GL/yalloc/LICENSE
 delete mode 100644 GL/yalloc/README.md
 delete mode 100644 GL/yalloc/yalloc.c
 delete mode 100644 GL/yalloc/yalloc.h
 delete mode 100644 GL/yalloc/yalloc_dump.c
 delete mode 100644 GL/yalloc/yalloc_internals.h

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7e52ac2..c148059 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,7 +80,6 @@ set(
     GL/state.c
     GL/texture.c
     GL/util.c
-    GL/yalloc/yalloc.c
     GL/alloc/alloc.c
     ${CMAKE_CURRENT_BINARY_DIR}/version.c
 )
diff --git a/GL/texture.c b/GL/texture.c
index aebfde5..e699e3c 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -510,7 +510,7 @@ GLubyte _glInitTextures() {
 
 #ifdef __DREAMCAST__
     /* Ensure memory is aligned */
-    gl_assert((uintptr_t) YALLOC_BASE % 32 == 0);
+    gl_assert((uintptr_t) ALLOC_BASE % 32 == 0);
 #endif
 
     alloc_init(ALLOC_BASE, ALLOC_SIZE);
diff --git a/GL/yalloc/LICENSE b/GL/yalloc/LICENSE
deleted file mode 100644
index 8aa2645..0000000
--- a/GL/yalloc/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) [year] [fullname]
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/GL/yalloc/README.md b/GL/yalloc/README.md
deleted file mode 100644
index ca23ec2..0000000
--- a/GL/yalloc/README.md
+++ /dev/null
@@ -1,158 +0,0 @@
-# Summary
-
-yalloc is a memory efficient allocator which is intended for embedded
-applications that only have a low amount of RAM and want to maximize its
-utilization. Properties of the allocator:
-
- - pools can be up to 128k
- - user data is 32bit aligned
- - 4 bytes overhead per allocation
- - supports defragmentation
- - uses a free list for first fit allocation strategy (most recently freed
-   blocks are used first)
- - extensively tested (see section below)
- - MIT license
-
-# Defragmentation
-
-This feature was the initial motivation for this implementation. Especially
-when dealing with highly memory constrained environments fragmenting memory
-pools can be annoying. For this reason this implementation supports
-defragmentation which moves all allocated blocks into a contiguous range at the
-beginning of the pool, leaving a maximized free range at the end.
-
-As there is no garbage collector or other runtime system involved that updates
-the references, the application must do so. This is done in three steps:
-
- 1. yalloc_defrag_start() is called. This calculates the new
-    post-defragmentation-addresses for all allocations, but otherwise leaves
-    the allocations untouched.
-
- 2. yalloc_defrag_address() is called by the application for every pointer that
-    points to an allocation. It returns the post-defragmentation-address for
-    the allocation. The application must update all its relevant pointers this
-    way. Care must be taken not not yet dereference that moved pointers. If the
-    application works with hierarchical data then this can easily be done by
-    updating the pointers button up (first the leafs then their parents).
-
- 3. yalloc_defrag_commit() is called to finally perform the defragmentation.
-    All allocated blocks are moved to their post-defragmentation-address and
-    the application can continue using the pool the normal way.
-
-It is up to the application when (and if) it performs defragmentation. One
-strategy would be to delay it until an allocation failure. Another approach
-would be to perform the defragmentation regularly when there is nothing else to
-do.
-
-# Configurable Defines
-
-INTERNAL_VALIDATE
-
-If this is not defined on the compiler commandline it will be defined as 0 if
-NDEBUG is defined and otherwise as 1. If you want to disable internal
-validation when NDEBUG is not defined then define INERNAL_VALIDATE as 0 on the
-compiler commandline.
-
-If it is nonzero the heap will be validated via a bunch of assert() calls at
-the end of every function that modifies the heap. This has roughly O(N*M)
-overhead where N is the number of allocated blocks and M the number of free
-blocks in a heap. For applications with enough live allocations this will get
-significant.
-
-YALLOC_VALGRIND
-
-If this is defined in yalloc.c and NVALGRIND is not defined then
-valgrind/memcheck.h is included and the the allocator functions tell valgrind
-about the pool, the allocations and makes the block headers inaccessible outside
-of yalloc-functions. This allows valgrind to detect a lot of the accidents that
-can happen when dealing dynamic memory. This also adds some overhead for every
-yalloc-call because most of them will "unprotect" the internal structure on
-entry and "protect" it again (marking it as inaccessible for valgrind) before
-returning.
-
-# Tests
-
-The tests rely on internal validation of the pool (see INTERNAL_VALIDATE) to
-check that no assumptions about the internal structure of the pool are
-violated. They additionally check for correctness of observations that can be
-made by using the public functions of the allocator (like checking if user data
-stays unmodified). There are a few different scripts that run tests:
-
- - run_coverage.sh runs a bunch of testfunctions that are carefully crafted to
-   cover all code paths. Coverage data is generated by clang and a summary is
-   shown at the end of the test.
-
- - run_valgrind.sh tests if the valgrind integration is working as expected,
-   runs the functions from the coverage test and some randomly generated
-   testcases under valgrind.
-
- - run_libfuzzer.sh uses libfuzzer from clang to generate interesting testcases
-   and runs them in multiple jobs in parallel for 10 seconds. It also generates
-   coverage data at the end (it always got 100% coverage in my testruns).
-
-All tests exit with 0 and print "All fine!" at the end if there where no
-errors. Coverage deficits are not counted as error, so you have to look at the
-summary (they should show 100% coverage!).
-
-
-# Implementation Details
-
-The Headers and the user data are 32bit aligned. Headers have two 16bit fields
-where the high 15 bits represent offsets (relative to the pools address) to the
-previous/next block. The macros HDR_PTR() and HDR_OFFSET() are used to
-translate an offset to an address and back. The 32bit alignment is exploited to
-allow pools of up to 128k with that 15 significant bits.
-
-A pool is always occupied by non-overlapping blocks that link to their
-previous/next block in address order via the prev/next field of Header.
-
-Free blocks are always joined: No two free blocks will ever be neighbors.
-
-Free blocks have an additional header of the same structure. This additional
-header is used to build a list of free blocks (independent of their address
-order).
-
-yalloc_free() will insert the freed block to the front of the free list.
-yalloc_alloc() searches that list front to back and takes the first block that
-is big enough to satisfy the allocation.
-
-There is always a Header at the front and at the end of the pool. The Header at
-the end is degenerate: It is marked as "used" but has no next block (which is
-usually used to determine the size of a block).
-
-The prev-field of the very first block in the pool has special meaning: It
-points to the first free block in the pool. Or, if the pool is currently
-defragmenting (after yalloc_defrag_start() and before yalloc_defrag_commit()),
-points to the last header of the pool. This state can be recognized by checking
-if it points to an empty block (normal pool state) or a used block
-(defragmentation in progress). This logic can be seen in
-yalloc_defrag_in_progress().
-
-The lowest bit of next/prev have special meaning:
-
- - low bit of prev is set for free blocks
-
- - low bit of next is set for blocks with 32bit padding after the user data.
-   This is needed when a block is allocated from a free block that leaves only
-   4 free bytes after the user data... which is not enough to insert a
-   free-header (which is needs 8 bytes). The padding will be reclaimed when
-   that block is freed or when the pool is defragmented. The predicate
-   isPadded() can be used to test if a block is padded. Free blocks are never
-   padded.
-
-The predicate isNil() can be used to test if an offset points nowhere (it tests
-if all 15 high bits of an offset are 1). The constant NIL has all but the
-lowest bit set. It is used to set offsets to point to nowhere, and in some
-places it is used to mask out the actual address bits of an offset. This should
-be kept in mind when modifying the code and updating prev/next: Think carefully
-if you have to preserve the low bit when updating an offset!
-
-Defragmentation is done in two phases: First the user calls
-yalloc_defrag_start(). This will put the pool in a special state where no
-alloc/free-calls are allowed. In this state the prev-fields of the used blocks
-have a special meaning: They store the offset that the block will have after
-defragmentation finished. This information is used by yalloc_defrag_address()
-which can be called by the application to query the new addresses for its
-allocations. After the application has updated all its pointers it must call
-yalloc_defrag_commit() which moves all used blocks in contiguous space at the
-beginning of the pool, leaving one maximized free block at the end.
diff --git a/GL/yalloc/yalloc.c b/GL/yalloc/yalloc.c
deleted file mode 100644
index 6dcf0e5..0000000
--- a/GL/yalloc/yalloc.c
+++ /dev/null
@@ -1,803 +0,0 @@
-#include "yalloc.h"
-#include "yalloc_internals.h"
-
-#include <assert.h>
-#include <string.h>
-
-#define ALIGN(num, align) (((num) + ((align) - 1)) & ~((align) - 1))
-
-#if defined(YALLOC_VALGRIND) && !defined(NVALGRIND)
-# define USE_VALGRIND 1
-#else
-# define USE_VALGRIND 0
-#endif
-
-#if USE_VALGRIND
-# include <valgrind/memcheck.h>
-#else
-# define VALGRIND_MAKE_MEM_UNDEFINED(p, s) ((void)0)
-# define VALGRIND_MAKE_MEM_DEFINED(p, s) ((void)0)
-# define VALGRIND_MAKE_MEM_NOACCESS(p, s) ((void)0)
-# define VALGRIND_CREATE_MEMPOOL(pool, rz, z) ((void)0)
-# define VALGRIND_MEMPOOL_ALLOC(pool, p, s) ((void)0)
-# define VALGRIND_MEMPOOL_FREE(pool, p)  ((void)0)
-# define VALGRIND_MEMPOOL_CHANGE(pool, a, b, s)  ((void)0)
-#endif
-
-#define MARK_NEW_FREE_HDR(p) VALGRIND_MAKE_MEM_UNDEFINED(p, sizeof(Header) * 2)
-#define MARK_NEW_HDR(p) VALGRIND_MAKE_MEM_UNDEFINED(p, sizeof(Header))
-#define PROTECT_HDR(p) VALGRIND_MAKE_MEM_NOACCESS(p, sizeof(Header))
-#define PROTECT_FREE_HDR(p) VALGRIND_MAKE_MEM_NOACCESS(p, sizeof(Header) * 2)
-#define UNPROTECT_HDR(p) VALGRIND_MAKE_MEM_DEFINED(p, sizeof(Header))
-#define UNPROTECT_FREE_HDR(p) VALGRIND_MAKE_MEM_DEFINED(p, sizeof(Header) * 2)
-
-
-#if USE_VALGRIND
-static void _unprotect_pool(void * pool)
-{
-  Header * cur = (Header*)pool;
-  for (;;)
-  {
-    UNPROTECT_HDR(cur);
-    if (isFree(cur))
-      UNPROTECT_HDR(cur + 1);
-
-    if (isNil(cur->next))
-      break;
-
-    cur = HDR_PTR(cur->next);
-  }
-}
-
-static void _protect_pool(void * pool)
-{
-  Header * cur = (Header*)pool;
-  while (cur)
-  {
-    Header * next = isNil(cur->next) ? NULL : HDR_PTR(cur->next);
-
-    if (isFree(cur))
-      VALGRIND_MAKE_MEM_NOACCESS(cur, (char*)next - (char*)cur);
-    else
-      PROTECT_HDR(cur);
-
-    cur = next;
-  }
-}
-#define assert_is_pool(pool) assert(VALGRIND_MEMPOOL_EXISTS(pool));
-
-#else
-
-static void _unprotect_pool(void * pool){(void)pool;}
-static void _protect_pool(void * pool){(void)pool;}
-#define assert_is_pool(pool) ((void)0)
-#endif
-
-// internal version that does not unprotect/protect the pool
-static int _yalloc_defrag_in_progress(void * pool)
-{
-  // fragmentation is indicated by a free list with one entry: the last block of the pool, which has its "free"-bit cleared.
-  Header * p = (Header*)pool;
-  if (isNil(p->prev))
-    return 0;
-
-  return !(HDR_PTR(p->prev)->prev & 1);
-}
-
-int yalloc_defrag_in_progress(void * pool)
-{
-  _unprotect_pool(pool);
-  int ret = _yalloc_defrag_in_progress(pool);
-  _protect_pool(pool);
-  return ret;
-}
-
-#if YALLOC_INTERNAL_VALIDATE
-
-static size_t _count_free_list_occurences(Header * pool, Header * blk)
-{
-  int n = 0;
-  if (!isNil(pool->prev))
-  {
-    Header * cur = HDR_PTR(pool->prev);
-    for (;;)
-    {
-      if (cur == blk)
-        ++n;
-
-      if (isNil(cur[1].next))
-        break;
-
-      cur = HDR_PTR(cur[1].next);
-    }
-  }
-  return n;
-}
-
-static size_t _count_addr_list_occurences(Header * pool, Header * blk)
-{
-  size_t n = 0;
-  Header * cur = pool;
-  for (;;)
-  {
-    if (cur == blk)
-      ++n;
-
-    if (isNil(cur->next))
-      break;
-
-    cur = HDR_PTR(cur->next);
-  }
-  return n;
-}
-
-static void _validate_user_ptr(void * pool, void * p)
-{
-  Header * hdr = (Header*)p - 1;
-  size_t n = _count_addr_list_occurences((Header*)pool, hdr);
-  assert(n == 1 && !isFree(hdr));
-}
-
-/**
-Validates if all the invariants of a pool are intact.
-
-This is very expensive when there are enough blocks in the heap (quadratic complexity!).
-*/
-static void _yalloc_validate(void * pool_)
-{
-  Header * pool = (Header*)pool_;
-  Header * cur = pool;
-
-  assert(!isNil(pool->next)); // there must always be at least two blocks: a free/used one and the final block at the end
-
-  if (_yalloc_defrag_in_progress(pool))
-  {
-    Header * prevUsed = NULL;
-    while (!isNil(cur->next))
-    {
-      if (!isFree(cur))
-      { // it is a used block
-        Header * newAddr = cur == pool ? pool : HDR_PTR(cur->prev);
-        assert(newAddr <= cur);
-        assert(newAddr >= pool);
-
-        if (prevUsed)
-        {
-          Header * prevNewAddr = prevUsed == pool ? pool : HDR_PTR(prevUsed->prev);
-          size_t prevBruttoSize = (char*)HDR_PTR(prevUsed->next) - (char*)prevUsed;
-          if (isPadded(prevUsed))
-            prevBruttoSize -= 4; // remove padding
-          assert((char*)newAddr == (char*)prevNewAddr + prevBruttoSize);
-        }
-        else
-        {
-          assert(newAddr == pool);
-        }
-
-        prevUsed = cur;
-      }
-
-      cur = HDR_PTR(cur->next);
-    }
-
-    assert(cur == HDR_PTR(pool->prev)); // the free-list should point to the last block
-    assert(!isFree(cur)); // the last block must not be free
-  }
-  else
-  {
-    Header * prev = NULL;
-
-    // iterate blocks in address order
-    for (;;)
-    {
-      if (prev)
-      {
-        Header * x = HDR_PTR(cur->prev);
-        assert(x == prev);
-      }
-
-      int n = _count_free_list_occurences(pool, cur);
-      if (isFree(cur))
-      { // it is a free block
-        assert(n == 1);
-        assert(!isPadded(cur)); // free blocks must have a zero padding-bit
-
-        if (prev)
-        {
-          assert(!isFree(prev)); // free blocks must not be direct neighbours
-        }
-      }
-      else
-      {
-        assert(n == 0);
-      }
-
-      if (isNil(cur->next))
-        break;
-
-      Header * next = HDR_PTR(cur->next);
-      assert((char*)next >= (char*)cur + sizeof(Header) * 2);
-      prev = cur;
-      cur = next;
-    }
-
-    assert(isNil(cur->next));
-
-    if (!isNil(pool->prev))
-    {
-      // iterate free-list
-      Header * f = HDR_PTR(pool->prev);
-      assert(isNil(f[1].prev));
-      for (;;)
-      {
-        assert(isFree(f)); // must be free
-
-        int n = _count_addr_list_occurences(pool, f);
-        assert(n == 1);
-
-        if (isNil(f[1].next))
-          break;
-
-        f = HDR_PTR(f[1].next);
-      }
-    }
-  }
-}
-
-#else
-static void _yalloc_validate(void * pool){(void)pool;}
-static void _validate_user_ptr(void * pool, void * p){(void)pool; (void)p;}
-#endif
-
-int yalloc_init(void * pool, size_t size)
-{
-  if (size > MAX_POOL_SIZE)
-    return -1;
-
-  // TODO: Error when pool is not properly aligned
-
-  // TODO: Error when size is not a multiple of the alignment?
-  while (size % sizeof(Header))
-    --size;
-
-  if(size < sizeof(Header) * 3)
-    return -1;
-
-  VALGRIND_CREATE_MEMPOOL(pool, 0, 0);
-
-  Header * first = (Header*)pool;
-  Header * last = (Header*)((char*)pool + size) - 1;
-
-  MARK_NEW_FREE_HDR(first);
-  MARK_NEW_HDR(first);
-
-  first->prev = HDR_OFFSET(first) | 1;
-  first->next = HDR_OFFSET(last);
-  first[1].prev = NIL;
-  first[1].next = NIL;
-
-  last->prev = HDR_OFFSET(first);
-  last->next = NIL;
-
-  _unprotect_pool(pool);
-  _yalloc_validate(pool);
-  _protect_pool(pool);
-  return 0;
-}
-
-void yalloc_deinit(void * pool)
-{
-#if USE_VALGRIND
-  VALGRIND_DESTROY_MEMPOOL(pool);
-
-  Header * last = (Header*)pool;
-  UNPROTECT_HDR(last);
-  while (!isNil(last->next))
-  {
-    Header * next = HDR_PTR(last->next);
-    UNPROTECT_HDR(next);
-    last = next;
-  }
-
-  VALGRIND_MAKE_MEM_UNDEFINED(pool, (char*)(last + 1) - (char*)pool);
-#else
-  (void)pool;
-#endif
-}
-
-
-void * yalloc_alloc(void * pool, size_t size)
-{
-  assert_is_pool(pool);
-  _unprotect_pool(pool);
-  assert(!_yalloc_defrag_in_progress(pool));
-  _yalloc_validate(pool);
-  if (!size)
-  {
-    _protect_pool(pool);
-    return NULL;
-  }
-
-  Header * root = (Header*)pool;
-  if (isNil(root->prev))
-  {
-    _protect_pool(pool);
-    return NULL; /* no free block, no chance to allocate anything */ // TODO: Just read up which C standard supports single line comments and then fucking use them!
-  }
-
-  /* round up to alignment */
-  size = ALIGN(size, 32);
-
-  size_t bruttoSize = size + sizeof(Header);
-  Header * prev = NULL;
-  Header * cur = HDR_PTR(root->prev);
-  for (;;)
-  {
-    size_t curSize = (char*)HDR_PTR(cur->next) - (char*)cur; /* size of the block, including its header */
-
-    if (curSize >= bruttoSize) // it is big enough
-    {
-      // take action for unused space in the free block
-      if (curSize >= bruttoSize + sizeof(Header) * 2)
-      { // the leftover space is big enough to make it a free block
-        // Build a free block from the unused space and insert it into the list of free blocks after the current free block
-        Header * tail = (Header*)((char*)cur + bruttoSize);
-        MARK_NEW_FREE_HDR(tail);
-
-        // update address-order-list
-        tail->next = cur->next;
-        tail->prev = HDR_OFFSET(cur) | 1;
-        HDR_PTR(cur->next)->prev = HDR_OFFSET(tail); // NOTE: We know the next block is used because free blocks are never neighbours. So we don't have to care about the lower bit which would be set for the prev of a free block.
-        cur->next = HDR_OFFSET(tail);
-
-        // update list of free blocks
-        tail[1].next = cur[1].next;
-        // NOTE: tail[1].prev is updated in the common path below (assignment to "HDR_PTR(cur[1].next)[1].prev")
-
-        if (!isNil(cur[1].next))
-          HDR_PTR(cur[1].next)[1].prev = HDR_OFFSET(tail);
-        cur[1].next = HDR_OFFSET(tail);
-      }
-      else if (curSize > bruttoSize)
-      { // there will be unused space, but not enough to insert a free header
-        internal_assert(curSize - bruttoSize == sizeof(Header)); // unused space must be enough to build a free-block or it should be exactly the size of a Header
-        cur->next |= 1; // set marker for "has unused trailing space"
-      }
-      else
-      {
-        internal_assert(curSize == bruttoSize);
-      }
-
-      cur->prev &= NIL; // clear marker for "is a free block"
-
-      // remove from linked list of free blocks
-      if (prev)
-        prev[1].next = cur[1].next;
-      else
-      {
-        uint32_t freeBit = isFree(root);
-        root->prev = (cur[1].next & NIL) | freeBit;
-      }
-
-      if (!isNil(cur[1].next))
-        HDR_PTR(cur[1].next)[1].prev = prev ? HDR_OFFSET(prev) : NIL;
-
-      _yalloc_validate(pool);
-      VALGRIND_MEMPOOL_ALLOC(pool, cur + 1, size);
-      _protect_pool(pool);
-      return cur + 1; // return address after the header
-    }
-
-    if (isNil(cur[1].next))
-      break;
-
-    prev = cur;
-    cur = HDR_PTR(cur[1].next);
-  }
-
-  _yalloc_validate(pool);
-  _protect_pool(pool);
-  return NULL;
-}
-
-// Removes a block from the free-list and moves the pools first-free-bock pointer to its successor if it pointed to that block.
-static void unlink_from_free_list(Header * pool, Header * blk)
-{
-  // update the pools pointer to the first block in the free list if necessary
-  if (isNil(blk[1].prev))
-  { // the block is the first in the free-list
-    // make the pools first-free-pointer point to the next in the free list
-    uint32_t freeBit = isFree(pool);
-    pool->prev = (blk[1].next & NIL) | freeBit;
-  }
-  else
-    HDR_PTR(blk[1].prev)[1].next = blk[1].next;
-
-  if (!isNil(blk[1].next))
-    HDR_PTR(blk[1].next)[1].prev = blk[1].prev;
-}
-
-size_t yalloc_block_size(void * pool, void * p)
-{
-  Header * a = (Header*)p - 1;
-  UNPROTECT_HDR(a);
-  Header * b = HDR_PTR(a->next);
-  size_t payloadSize = (char*)b - (char*)p;
-  if (isPadded(a))
-    payloadSize -= sizeof(Header);
-  PROTECT_HDR(a);
-  return payloadSize;
-}
-
-void yalloc_free(void * pool_, void * p)
-{
-  assert_is_pool(pool_);
-  assert(!yalloc_defrag_in_progress(pool_));
-  if (!p)
-    return;
-
-  _unprotect_pool(pool_);
-
-  Header * pool = (Header*)pool_;
-  Header * cur = (Header*)p - 1;
-
-  // get pointers to previous/next block in address order
-  Header * prev = cur == pool || isNil(cur->prev) ? NULL : HDR_PTR(cur->prev);
-  Header * next = isNil(cur->next) ? NULL : HDR_PTR(cur->next);
-
-  int prevFree = prev && isFree(prev);
-  int nextFree = next && isFree(next);
-
-#if USE_VALGRIND
-  {
-    unsigned errs = VALGRIND_COUNT_ERRORS;
-    VALGRIND_MEMPOOL_FREE(pool, p);
-    if (VALGRIND_COUNT_ERRORS > errs)
-    { // early exit if the free was invalid (so we get a valgrind error and don't mess up the pool, which is helpful for testing if invalid frees are detected by valgrind)
-      _protect_pool(pool_);
-      return;
-    }
-  }
-#endif
-
-  _validate_user_ptr(pool_, p);
-
-  if (prevFree && nextFree)
-  { // the freed block has two free neighbors
-    unlink_from_free_list(pool, prev);
-    unlink_from_free_list(pool, next);
-
-    // join prev, cur and next
-    prev->next = next->next;
-    HDR_PTR(next->next)->prev = cur->prev;
-
-    // prev is now the block we want to push onto the free-list
-    cur = prev;
-  }
-  else if (prevFree)
-  {
-    unlink_from_free_list(pool, prev);
-
-    // join prev and cur
-    prev->next = cur->next;
-    HDR_PTR(cur->next)->prev = cur->prev;
-
-    // prev is now the block we want to push onto the free-list
-    cur = prev;
-  }
-  else if (nextFree)
-  {
-    unlink_from_free_list(pool, next);
-
-    // join cur and next
-    cur->next = next->next;
-    HDR_PTR(next->next)->prev = next->prev & NIL;
-  }
-
-  // if there is a previous block and that block has padding then we want to grow the new free block into that padding
-  if (cur != pool && !isNil(cur->prev))
-  { // there is a previous block
-    Header * left = HDR_PTR(cur->prev);
-    if (isPadded(left))
-    { // the previous block has padding, so extend the current block to consume move the padding to the current free block
-      Header * grown = cur - 1;
-      MARK_NEW_HDR(grown);
-      grown->next = cur->next;
-      grown->prev = cur->prev;
-      left->next = HDR_OFFSET(grown);
-      if (!isNil(cur->next))
-        HDR_PTR(cur->next)->prev = HDR_OFFSET(grown);
-
-      cur = grown;
-    }
-  }
-
-  cur->prev |= 1; // it becomes a free block
-  cur->next &= NIL; // reset padding-bit
-  UNPROTECT_HDR(cur + 1);
-  cur[1].prev = NIL; // it will be the first free block in the free list, so it has no prevFree
-
-  if (!isNil(pool->prev))
-  { // the free-list was already non-empty
-    HDR_PTR(pool->prev)[1].prev = HDR_OFFSET(cur); // make the first entry in the free list point back to the new free block (it will become the first one)
-    cur[1].next = pool->prev; // the next free block is the first of the old free-list
-  }
-  else
-    cur[1].next = NIL; // free-list was empty, so there is no successor
-
-  VALGRIND_MAKE_MEM_NOACCESS(cur + 2, (char*)HDR_PTR(cur->next) - (char*)(cur + 2));
-
-  // now the freed block is the first in the free-list
-
-  // update the offset to the first element of the free list
-  uint32_t freeBit = isFree(pool); // remember the free-bit of the offset
-  pool->prev = HDR_OFFSET(cur) | freeBit; // update the offset and restore the free-bit
-  _yalloc_validate(pool);
-  _protect_pool(pool);
-}
-
-size_t yalloc_count_free(void * pool_)
-{
-  assert_is_pool(pool_);
-  _unprotect_pool(pool_);
-  assert(!_yalloc_defrag_in_progress(pool_));
-  Header * pool = (Header*)pool_;
-  size_t bruttoFree = 0;
-  Header * cur = pool;
-
-  _yalloc_validate(pool);
-
-  for (;;)
-  {
-    if (isFree(cur))
-    { // it is a free block
-      bruttoFree += (char*)HDR_PTR(cur->next) - (char*)cur;
-    }
-    else
-    { // it is a used block
-      if (isPadded(cur))
-      { // the used block is padded
-        bruttoFree += sizeof(Header);
-      }
-    }
-
-    if (isNil(cur->next))
-      break;
-
-    cur = HDR_PTR(cur->next);
-  }
-
-  _protect_pool(pool);
-
-  if (bruttoFree < sizeof(Header))
-  {
-    internal_assert(!bruttoFree); // free space should always be a multiple of sizeof(Header)
-    return 0;
-  }
-
-  return bruttoFree - sizeof(Header);
-}
-
-size_t yalloc_count_continuous(void * pool_)
-{
-  assert_is_pool(pool_);
-  _unprotect_pool(pool_);
-  assert(!_yalloc_defrag_in_progress(pool_));
-  Header * pool = (Header*)pool_;
-  size_t largestFree = 0;
-  Header * cur = pool;
-
-  _yalloc_validate(pool);
-
-  for (;;)
-  {
-    if (isFree(cur))
-    { // it is a free block
-      size_t temp = (uintptr_t)HDR_PTR(cur->next) - (uintptr_t)cur;
-      if(temp > largestFree)
-        largestFree = temp;
-    }
-
-    if (isNil(cur->next))
-      break;
-
-    cur = HDR_PTR(cur->next);
-  }
-
-  _protect_pool(pool);
-
-  if (largestFree < sizeof(Header))
-  {
-    internal_assert(!largestFree); // free space should always be a multiple of sizeof(Header)
-    return 0;
-  }
-
-  return largestFree - sizeof(Header);
-}
-
-void * yalloc_first_used(void * pool)
-{
-  assert_is_pool(pool);
-  _unprotect_pool(pool);
-  Header * blk = (Header*)pool;
-  while (!isNil(blk->next))
-  {
-    if (!isFree(blk))
-    {
-      _protect_pool(pool);
-      return blk + 1;
-    }
-
-    blk = HDR_PTR(blk->next);
-  }
-
-  _protect_pool(pool);
-  return NULL;
-}
-
-void * yalloc_next_used(void * pool, void * p)
-{
-  assert_is_pool(pool);
-  _unprotect_pool(pool);
-  _validate_user_ptr(pool, p);
-  Header * prev = (Header*)p - 1;
-  assert(!isNil(prev->next)); // the last block should never end up as input to this function (because it is not user-visible)
-
-  Header * blk = HDR_PTR(prev->next);
-  while (!isNil(blk->next))
-  {
-    if (!isFree(blk))
-    {
-      _protect_pool(pool);
-      return blk + 1;
-    }
-
-    blk = HDR_PTR(blk->next);
-  }
-
-  _protect_pool(pool);
-  return NULL;
-}
-
-void yalloc_defrag_start(void * pool_)
-{
-  assert_is_pool(pool_);
-  _unprotect_pool(pool_);
-  assert(!_yalloc_defrag_in_progress(pool_));
-  Header * pool = (Header*)pool_;
-
-  // iterate over all blocks in address order and store the post-defragment address of used blocks in their "prev" field
-  size_t end = 0; // offset for the next used block
-  Header * blk = (Header*)pool;
-  for (; !isNil(blk->next); blk = HDR_PTR(blk->next))
-  {
-    if (!isFree(blk))
-    { // it is a used block
-      blk->prev = end >> 1;
-      internal_assert((char*)HDR_PTR(blk->prev) == (char*)pool + end);
-
-      size_t bruttoSize = (char*)HDR_PTR(blk->next) - (char*)blk;
-
-      if (isPadded(blk))
-      { // the block is padded
-        bruttoSize -= sizeof(Header);
-      }
-
-      end += bruttoSize;
-      internal_assert(end % sizeof(Header) == 0);
-    }
-  }
-
-  // blk is now the last block (the dummy "used" block at the end of the pool)
-  internal_assert(isNil(blk->next));
-  internal_assert(!isFree(blk));
-
-  // mark the pool as "defragementation in progress"
-  uint32_t freeBit = isFree(pool);
-  pool->prev = (HDR_OFFSET(blk) & NIL) | freeBit;
-
-  _yalloc_validate(pool);
-  internal_assert(yalloc_defrag_in_progress(pool));
-  _protect_pool(pool);
-}
-
-void * yalloc_defrag_address(void * pool_, void * p)
-{
-  assert_is_pool(pool_);
-  assert(yalloc_defrag_in_progress(pool_));
-  if (!p)
-    return NULL;
-
-  Header * pool = (Header*)pool_;
-
-  _unprotect_pool(pool);
-  _validate_user_ptr(pool_, p);
-
-  if (pool + 1 == p)
-    return pool + 1; // "prev" of the first block points to the last used block to mark the pool as "defragmentation in progress"
-
-  Header * blk = (Header*)p - 1;
-
-  void * defragP = HDR_PTR(blk->prev) + 1;
-
-  _protect_pool(pool);
-  return defragP;
-}
-
-void yalloc_defrag_commit(void * pool_)
-{
-  assert_is_pool(pool_);
-  _unprotect_pool(pool_);
-  assert(_yalloc_defrag_in_progress(pool_));
-  Header * pool = (Header*)pool_;
-
-  // iterate over all blocks in address order and move them
-  size_t end = 0; // offset for the next used block
-  Header * blk = pool;
-  Header * lastUsed = NULL;
-  while (!isNil(blk->next))
-  {
-    if (!isFree(blk))
-    { // it is a used block
-      size_t bruttoSize = (char*)HDR_PTR(blk->next) - (char*)blk;
-
-      if (isPadded(blk))
-      { // the block is padded
-        bruttoSize -= sizeof(Header);
-      }
-
-      Header * next = HDR_PTR(blk->next);
-
-      blk->prev = lastUsed ? HDR_OFFSET(lastUsed) : NIL;
-      blk->next = (end + bruttoSize) >> 1;
-
-      lastUsed = (Header*)((char*)pool + end);
-      VALGRIND_MAKE_MEM_UNDEFINED(lastUsed, (char*)blk - (char*)lastUsed);
-      memmove(lastUsed, blk, bruttoSize);
-      VALGRIND_MEMPOOL_CHANGE(pool, blk + 1, lastUsed + 1, bruttoSize - sizeof(Header));
-
-      end += bruttoSize;
-      blk = next;
-    }
-    else
-      blk = HDR_PTR(blk->next);
-  }
-
-  // blk is now the last block (the dummy "used" block at the end of the pool)
-  internal_assert(isNil(blk->next));
-  internal_assert(!isFree(blk));
-
-  if (lastUsed)
-  {
-    Header * gap = HDR_PTR(lastUsed->next);
-    if (gap == blk)
-    { // there is no gap
-      pool->prev = NIL; // the free list is empty
-      blk->prev = HDR_OFFSET(lastUsed);
-    }
-    else if (blk - gap > 1)
-    { // the gap is big enouogh for a free Header
-
-      // set a free list that contains the gap as only element
-      gap->prev = HDR_OFFSET(lastUsed) | 1;
-      gap->next = HDR_OFFSET(blk);
-      gap[1].prev = NIL;
-      gap[1].next = NIL;
-      pool->prev = blk->prev = HDR_OFFSET(gap);
-    }
-    else
-    { // there is a gap, but it is too small to be used as free-list-node, so just make it padding of the last used block
-      lastUsed->next = HDR_OFFSET(blk) | 1;
-      pool->prev = NIL;
-      blk->prev = HDR_OFFSET(lastUsed);
-    }
-  }
-  else
-  { // the pool is empty
-    pool->prev = 1;
-  }
-
-  internal_assert(!_yalloc_defrag_in_progress(pool));
-  _yalloc_validate(pool);
-  _protect_pool(pool);
-}
diff --git a/GL/yalloc/yalloc.h b/GL/yalloc/yalloc.h
deleted file mode 100644
index 4349eb9..0000000
--- a/GL/yalloc/yalloc.h
+++ /dev/null
@@ -1,176 +0,0 @@
-/**
-@file
-
-API of the yalloc allocator.
-*/
-
-#ifndef YALLOC_H
-#define YALLOC_H
-
-#include <stddef.h>
-
-/**
-Maximum supported pool size. yalloc_init() will fail for larger pools.
-*/
-#define MAX_POOL_SIZE ((2 << 24) - 4)
-
-/**
-Creates a pool inside a given buffer.
-
-Pools must be deinitialized with yalloc_deinit() when they are no longer needed.
-
-@param pool The starting address of the pool. It must have at least 16bit
-alignment (internal structure uses 16bit integers). Allocations are placed at
-32bit boundaries starting from this address, so if the user data should be
-32bit aligned then this address has to be 32bit aligned. Typically an address
-of static memory, or an array on the stack is used if the pool is only used
-temporarily.
-@param size Size of the pool.
-@return 0 on success, nonzero if the size is not supported.
- */
-int yalloc_init(void * pool, size_t size);
-
-/**
-Deinitializes the buffer that is used by the pool and makes it available for other use.
-
-The content of the buffer is undefined after this.
-
-@param pool The starting address of an initialized pool.
-*/
-void yalloc_deinit(void * pool);
-
-/**
-Allocates a block of memory from a pool.
-
-This function mimics malloc().
-
-The pool must not be in the "defragmenting" state when this function is called.
-
-@param pool The starting address of an initialized pool.
-@param size Number of bytes to allocate.
-@return Allocated buffer or \c NULL if there was no free range that could serve
-the allocation. See @ref yalloc_defrag_start() for a way to remove
-fragmentation which may cause allocations to fail even when there is enough
-space in total.
-*/
-void * yalloc_alloc(void * pool, size_t size);
-
-/**
-Returns an allocation to a pool.
-
-This function mimics free().
-
-The pool must not be in the "defragmenting" state when this function is called.
-
-@param pool The starting address of the initialized pool the allocation comes from.
-@param p An address that was returned from yalloc_alloc() of the same pool.
-*/
-void yalloc_free(void * pool, void * p);
-
-/**
-Returns the maximum size of a successful allocation (assuming a completely unfragmented heap).
-
-After defragmentation the first allocation with the returned size is guaranteed to succeed.
-
-@param pool The starting address of an initialized pool.
-@return Number of bytes that can be allocated (assuming the pool is defragmented).
-*/
-size_t yalloc_count_free(void * pool);
-
-/**
-Returns the maximum continuous free area.
-
-@param pool The starting address of an initialized pool.
-@return Number of free bytes that exist continuously.
-*/
-size_t yalloc_count_continuous(void * pool_);
-
-/**
-Queries the usable size of an allocated block.
-
-@param pool The starting address of the initialized pool the allocation comes from.
-@param p An address that was returned from yalloc_alloc() of the same pool.
-@return Size of the memory block. This is the size passed to @ref yalloc_alloc() rounded up to 4.
-*/
-size_t yalloc_block_size(void * pool, void * p);
-
-/**
-Finds the first (in address order) allocation of a pool.
-
-@param pool The starting address of an initialized pool.
-@return Address of the allocation the lowest address inside the pool (this is
-what @ref yalloc_alloc() returned), or \c NULL if there is no used block.
-*/
-void * yalloc_first_used(void * pool);
-
-/**
-Given a pointer to an allocation finds the next (in address order) used block of a pool.
-
-@param pool The starting address of the initialized pool the allocation comes from.
-@param p Pointer to an allocation in that pool, typically comes from a previous
-call to @ref yalloc_first_used()
-*/
-void * yalloc_next_used(void * pool, void * p);
-
-/**
-Starts defragmentation for a pool.
-
-Allocations will stay where they are. But the pool is put in the "defagmenting"
-state (see @ref yalloc_defrag_in_progress()).
-
-The pool must not be in the "defragmenting" state when this function is called.
-The pool is put into the "defragmenting" state by this function.
-
-@param pool The starting address of an initialized pool.
-*/
-void yalloc_defrag_start(void * pool);
-
-/**
-Returns the address that an allocation will have after @ref yalloc_defrag_commit() is called.
-
-The pool must be in the "defragmenting" state when this function is called.
-
-@param pool The starting address of the initialized pool the allocation comes from.
-@param p Pointer to an allocation in that pool.
-@return The address the alloation will have after @ref yalloc_defrag_commit() is called.
-*/
-void * yalloc_defrag_address(void * pool, void * p);
-
-/**
-Finishes the defragmentation.
-
-The content of all allocations in the pool will be moved to the address that
-was reported by @ref yalloc_defrag_address(). The pool will then have only one
-free block. This means that an <tt>yalloc_alloc(pool, yalloc_count_free(pool))</tt>
-will succeed.
-
-The pool must be in the "defragmenting" state when this function is called. The
-pool is put back to normal state by this function.
-
-@param pool The starting address of an initialized pool.
-*/
-void yalloc_defrag_commit(void * pool);
-
-/**
-Tells if the pool is in the "defragmenting" state (after a @ref yalloc_defrag_start() and before a @ref yalloc_defrag_commit()).
-
-@param pool The starting address of an initialized pool.
-@return Nonzero if the pool is currently in the "defragmenting" state.
-*/
-int yalloc_defrag_in_progress(void * pool);
-
-
-/**
-Helper function that dumps the state of the pool to stdout.
-
-This function is only available if build with <tt>yalloc_dump.c</tt>. This
-function only exists for debugging purposes and can be ignored by normal users
-that are not interested in the internal structure of the implementation.
-
-@param pool The starting address of an initialized pool.
-@param name A string that is used as "Title" for the output.
-*/
-void yalloc_dump(void * pool, char * name);
-
-
-#endif // YALLOC_H
diff --git a/GL/yalloc/yalloc_dump.c b/GL/yalloc/yalloc_dump.c
deleted file mode 100644
index f0dfdcb..0000000
--- a/GL/yalloc/yalloc_dump.c
+++ /dev/null
@@ -1,39 +0,0 @@
-#include "yalloc_internals.h"
-
-#include <stdio.h>
-
-static void printOffset(void * pool, char * name, uint16_t offset)
-{
-  if (isNil(offset))
-    printf("  %s: nil\n", name);
-  else
-    printf("  %s: %td\n", name, (char*)HDR_PTR(offset) - (char*)pool);
-}
-
-void yalloc_dump(void * pool, char * name)
-{
-  printf("---- %s ----\n", name);
-  Header * cur = (Header*)pool;
-  for (;;)
-  {
-    printf(isFree(cur) ? "%td: free @%p\n" : "%td: used @%p\n", (char*)cur - (char*)pool, cur);
-    printOffset(pool, cur == pool ? "first free" : "prev", cur->prev);
-    printOffset(pool, "next", cur->next);
-    if (isFree(cur))
-    {
-      printOffset(pool, "prevFree", cur[1].prev);
-      printOffset(pool, "nextFree", cur[1].next);
-    }
-    else
-      printf("  payload includes padding: %i\n", isPadded(cur));
-
-    if (isNil(cur->next))
-      break;
-
-    printf("  %td bytes payload\n", (char*)HDR_PTR(cur->next) - (char*)cur - sizeof(Header));
-
-    cur = HDR_PTR(cur->next);
-  }
-
-  fflush(stdout);
-}
diff --git a/GL/yalloc/yalloc_internals.h b/GL/yalloc/yalloc_internals.h
deleted file mode 100644
index ffb70cb..0000000
--- a/GL/yalloc/yalloc_internals.h
+++ /dev/null
@@ -1,63 +0,0 @@
-#ifndef YALLOC_INTERNALS_H
-#define YALLOC_INTERNALS_H
-
-#include <stdint.h>
-
-typedef struct
-{
-  uint32_t prev; // low bit set if free
-  uint32_t next; // for used blocks: low bit set if unused header at the end
-
-  /* We need user data to be 32-byte aligned, so the header needs
-   * to be 32 bytes in size (as user data follows the header) */
-  uint8_t padding[32 - (sizeof(uint32_t) * 2)];
-} Header;
-
-// NOTE: We have 32bit aligned data and 16bit offsets where the lowest bit is used as flag. So we remove the low bit and shift by 1 to address 128k bytes with the 15bit significant offset bits.
-
-#define NIL 0xFFFFFFFEu
-
-// return Header-address for a prev/next
-#define HDR_PTR(offset) ((Header*)((char*)pool + (((offset) & NIL)<<1)))
-
-// return a prev/next for a Header-address
-#define HDR_OFFSET(blockPtr) ((uint32_t)(((char*)blockPtr - (char*)pool) >> 1))
-
-#ifndef YALLOC_INTERNAL_VALIDATE
-# ifdef NDEBUG
-#   define YALLOC_INTERNAL_VALIDATE 0
-# else
-#   define YALLOC_INTERNAL_VALIDATE 1
-#endif
-#endif
-
-
-/*
-internal_assert() is used in some places to check internal expections.
-Activate this if you modify the code to detect problems as early as possible.
-In other cases this should be deactivated.
-*/
-#if 0
-#define internal_assert assert
-#else
-#define internal_assert(condition)((void) 0)
-#endif
-
-// detects offsets that point nowhere
-static inline int isNil(uint32_t offset)
-{
-  return (offset | 1) == 0xFFFFFFFF;
-}
-
-static inline int isFree(Header * hdr)
-{
-  return hdr->prev & 1;
-}
-
-static inline int isPadded(Header * hdr)
-{
-  return hdr->next & 1;
-}
-
-
-#endif // YALLOC_INTERNALS_H

From cfbaea4a465bd9bdd1347e3b5c8f87ae4a53f7a6 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 08:52:01 +0100
Subject: [PATCH 07/28] Don't calculate things twice

---
 GL/alloc/alloc.c | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 45e2ebc..42b64e0 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -101,7 +101,13 @@ size_t alloc_block_count(void* pool) {
     return pool_header.block_count;
 }
 
+void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_subblock, size_t* required_subblocks);
+
 void* alloc_next_available(void* pool, size_t required_size) {
+    return alloc_next_available_ex(pool, required_size, NULL, NULL);
+}
+
+void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_subblock_out, size_t* required_subblocks_out) {
     (void) pool;
 
     uint8_t* it = pool_header.block_usage;
@@ -110,6 +116,10 @@ void* alloc_next_available(void* pool, size_t required_size) {
 
     uint8_t* end = pool_header.block_usage + pool_header.block_count;
 
+    if(required_subblocks_out) {
+        *required_subblocks_out = required_subblocks;
+    }
+
     while(it < end) {
         // Skip full blocks
         while((*it) == 255) {
@@ -155,6 +165,11 @@ void* alloc_next_available(void* pool, size_t required_size) {
                             uintptr_t offset = (it - pool_header.block_usage) * 8;
                             offset += (i + 1);
                             offset -= required_subblocks;
+
+                            if(start_subblock_out) {
+                                *start_subblock_out = offset;
+                            }
+
                             return pool_header.base_address + (offset * 256);
                         }
                     }
@@ -226,14 +241,14 @@ static inline uint32_t subblock_from_pointer(void* p) {
 }
 
 void* alloc_malloc(void* pool, size_t size) {
-    void* ret = alloc_next_available(pool, size);
+    size_t start_subblock, required_subblocks;
+    void* ret = alloc_next_available_ex(pool, size, &start_subblock, &required_subblocks);
+
     if(size >= 2048) {
         assert(((uintptr_t) ret) % 2048 == 0);
     }
 
     if(ret) {
-        uintptr_t start_subblock = subblock_from_pointer(ret);
-        uint32_t required_subblocks = size_to_subblock_count(size);
         size_t offset = start_subblock % 8;
         size_t block = start_subblock / 8;
         uint8_t mask = 0;

From 246cb997dabe0ea377d5f052c78eabdcfcf198eb Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:22:19 +0100
Subject: [PATCH 08/28] Add optional dcprof to prof_texture_upload

---
 CMakeLists.txt                     |  4 ++--
 samples/prof_texture_upload/main.c | 17 +++++++++++++++++
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c148059..51ad8ea 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -210,11 +210,11 @@ gen_sample(polymark samples/polymark/main.c)
 gen_sample(cubes samples/cubes/main.cpp)
 gen_sample(zclip_test tests/zclip/main.cpp)
 
-gen_sample(prof_texture_upload samples/prof_texture_upload/main.c)
-
 if(PLATFORM_DREAMCAST)
     gen_sample(trimark samples/trimark/main.c)
     gen_sample(quadmark samples/quadmark/main.c samples/profiler.c)
+    gen_sample(prof_texture_upload samples/prof_texture_upload/main.c samples/profiler.c)
 else()
     gen_sample(quadmark samples/quadmark/main.c)
+    gen_sample(prof_texture_upload samples/prof_texture_upload/main.c)
 endif()
diff --git a/samples/prof_texture_upload/main.c b/samples/prof_texture_upload/main.c
index d2fd12f..4981679 100644
--- a/samples/prof_texture_upload/main.c
+++ b/samples/prof_texture_upload/main.c
@@ -4,6 +4,7 @@
 
 #ifdef __DREAMCAST__
 #include <kos.h>
+#include "../profiler.h"
 #endif
 
 #include <GL/gl.h>
@@ -11,11 +12,13 @@
 
 #include "image.h"
 
+#define PROFILE 0
 
 int main(int argc, char* argv[]) {
     (void) argc;
     (void) argv;
 
+    fprintf(stdout, "Initializing\n");
     glKosInit();
     glClearColor(0.5f, 0.0f, 0.5f, 1.0f);
     glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
@@ -32,6 +35,13 @@ int main(int argc, char* argv[]) {
 
     fprintf(stderr, "Starting test run...\n");
 
+#ifdef __DREAMCAST__
+#if PROFILE
+    profiler_init("/pc/gmon.out");
+    profiler_start();
+#endif
+#endif
+
     while((end - start) < 5) {
         glTexImage2D(
             GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, header_data
@@ -41,6 +51,13 @@ int main(int argc, char* argv[]) {
         end = time(NULL);
     }
 
+#ifdef __DREAMCAST__
+#if PROFILE
+    profiler_stop();
+    profiler_clean_up();
+#endif
+#endif
+
     fprintf(stderr, "Called glTexImage2D %d times (%.4f per call)\n", counter, (float)(end - start) / (float)(counter));
 
     return 0;

From 36de063756c6055a6944d086ba5efa423f328826 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:22:38 +0100
Subject: [PATCH 09/28] Allow configuring automatic texture twiddling in
 glKosInitEx

Defaults to enabled.
---
 GL/flush.c         | 6 ++++++
 include/GL/glkos.h | 7 +++++++
 2 files changed, 13 insertions(+)

diff --git a/GL/flush.c b/GL/flush.c
index b2aab2d..75da3c8 100644
--- a/GL/flush.c
+++ b/GL/flush.c
@@ -47,6 +47,8 @@ void APIENTRY glKosInitConfig(GLdcConfig* config) {
     config->initial_tr_capacity = 1024 * 3;
     config->initial_immediate_capacity = 1024 * 3;
     config->internal_palette_format = GL_RGBA8;
+
+    config->texture_twiddle = GL_TRUE;
 }
 
 static bool _initialized = false;
@@ -78,6 +80,10 @@ void APIENTRY glKosInitEx(GLdcConfig* config) {
 
     _glInitTextures();
 
+    if(config->texture_twiddle) {
+        glEnable(GL_TEXTURE_TWIDDLE_KOS);
+    }
+
     OP_LIST.list_type = GPU_LIST_OP_POLY;
     PT_LIST.list_type = GPU_LIST_PT_POLY;
     TR_LIST.list_type = GPU_LIST_TR_POLY;
diff --git a/include/GL/glkos.h b/include/GL/glkos.h
index 5307d6b..3dfe9ad 100644
--- a/include/GL/glkos.h
+++ b/include/GL/glkos.h
@@ -57,6 +57,13 @@ typedef struct {
     GLuint initial_pt_capacity;
     GLuint initial_immediate_capacity;
 
+    /* Default: True
+     *
+     * Whether glTexImage should automatically twiddle textures
+     * if the internal format is a generic format (e.g. GL_RGB).
+     * this is the same as calling glEnable(GL_TEXTURE_TWIDDLE_KOS)
+     * on boot */
+    GLboolean texture_twiddle;
 } GLdcConfig;
 
 

From b19b9d498ad876c4a828ef07a5d3b0537d086782 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:25:21 +0100
Subject: [PATCH 10/28] Clean up the allocator code

---
 GL/alloc/alloc.c | 58 ++++++++++++++++++++----------------------------
 1 file changed, 24 insertions(+), 34 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 42b64e0..b263d46 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -116,47 +116,41 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
 
     uint8_t* end = pool_header.block_usage + pool_header.block_count;
 
+    /* Anything gte to 2048 must be aligned to a 2048 boundary */
+    bool requires_alignment = required_size >= 2048;
+
     if(required_subblocks_out) {
         *required_subblocks_out = required_subblocks;
     }
-
     while(it < end) {
-        // Skip full blocks
-        while((*it) == 255) {
-            ++it;
-            if(it >= pool_header.block_usage + sizeof(pool_header.block_usage)) {
-                return NULL;
-            }
-            continue;
-        }
-
         uint32_t found_subblocks = 0;
 
-        /* Anything gte to 2048 must be aligned to a 2048 boundary */
-        bool requires_alignment = required_size >= 2048;
-
         /* We just need to find enough consecutive blocks */
         while(found_subblocks < required_subblocks) {
             uint8_t t = *it;
 
             /* Optimisation only. Skip over full blocks */
             if(t == 255) {
-                ++it;
                 found_subblocks = 0;
-
-                if(it >= end) {
-                    return NULL;
-                }
-
-                continue;
-            }
-
-            /* Now let's see how many consecutive blocks we can find */
-            for(int i = 0; i < 8; ++i) {
-                if((t & 0x80) == 0) {
-                    if(requires_alignment && found_subblocks == 0 && i != 0) {
-                        // Ignore this subblock, because we want the first subblock to be aligned
-                        // at a 2048 boundary and this one isn't (i != 0)
+            } else {
+                /* Now let's see how many consecutive blocks we can find */
+                for(int i = 0; i < 8; ++i) {
+                    if((t & 0x80) == 0) {
+                        if(requires_alignment && found_subblocks == 0 && i != 0) {
+                            // Ignore this subblock, because we want the first subblock to be aligned
+                            // at a 2048 boundary and this one isn't (i != 0)
+                            found_subblocks = 0;
+                        } else {
+                            found_subblocks++;
+                            if(found_subblocks >= required_subblocks) {
+                                /* We found space! Now calculate the address */
+                                uintptr_t offset = (it - pool_header.block_usage) * 8;
+                                offset += (i + 1);
+                                offset -= required_subblocks;
+                                return pool_header.base_address + (offset * 256);
+                            }
+                        }
+                    } else {
                         found_subblocks = 0;
                     } else {
                         found_subblocks++;
@@ -173,11 +167,9 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                             return pool_header.base_address + (offset * 256);
                         }
                     }
-                } else {
-                    found_subblocks = 0;
-                }
 
-                t <<= 1;
+                    t <<= 1;
+                }
             }
 
             ++it;
@@ -185,7 +177,6 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                 return NULL;
             }
         }
-
     }
 
     return NULL;
@@ -279,7 +270,6 @@ void* alloc_malloc(void* pool, size_t size) {
             pool_header.block_usage[block++] |= mask;
         }
 
-
         /* Insert allocations in the list by size descending so that when we
          * defrag we can move the larger blocks before the smaller ones without
          * much effort */

From 5e7b33797df32c88b87871dcf5cfa777a4c9d484 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:23:22 +0100
Subject: [PATCH 11/28] Perf improvements and fixes

---
 GL/texture.c | 113 +++++++++++++++++++++++++++++++++++----------------
 1 file changed, 78 insertions(+), 35 deletions(-)

diff --git a/GL/texture.c b/GL/texture.c
index e699e3c..e8e33e1 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -31,6 +31,10 @@ static GLboolean SUBBANKS_USED[MAX_GLDC_PALETTE_SLOTS][MAX_GLDC_4BPP_PALETTE_SLO
 static GLenum INTERNAL_PALETTE_FORMAT = GL_RGBA8;
 static GLboolean TEXTURE_TWIDDLE_ENABLED = GL_FALSE;
 
+#define STRINGIFY(x) #x
+#define TOSTRING(x) STRINGIFY(x)
+#define INFO_MSG(x) fprintf(stderr, "%s:%s > %s\n", __FILE__, TOSTRING(__LINE__), x)
+
 static void* ALLOC_BASE = NULL;
 static size_t ALLOC_SIZE = 0;
 
@@ -1018,6 +1022,30 @@ static GLuint _determinePVRFormat(GLint internalFormat) {
         return GPU_TXRFMT_PAL8BPP | GPU_TXRFMT_TWIDDLED;
     case GL_COLOR_INDEX4_TWID_KOS:
         return GPU_TXRFMT_PAL4BPP | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_ARGB_1555_VQ_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_ARGB_1555_VQ_TWID_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_ARGB_4444_VQ_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_ARGB_4444_VQ_TWID_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_RGB_565_VQ_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_RGB_565_VQ_TWID_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_ARGB_1555_VQ_MIPMAP_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_ARGB_1555_VQ_MIPMAP_TWID_KOS:
+        return GPU_TXRFMT_ARGB1555 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_ARGB_4444_VQ_MIPMAP_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_ARGB_4444_VQ_MIPMAP_TWID_KOS:
+        return GPU_TXRFMT_ARGB4444 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
+    case GL_COMPRESSED_RGB_565_VQ_MIPMAP_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_VQ_ENABLE;
+    case GL_COMPRESSED_RGB_565_VQ_MIPMAP_TWID_KOS:
+        return GPU_TXRFMT_RGB565 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
     default:
         _glKosThrowError(GL_INVALID_ENUM, __func__);
         return 0;
@@ -1076,7 +1104,13 @@ GL_FORCE_INLINE void _rgb888_to_rgba4444(const GLubyte* source, GLubyte* dest) {
 }
 
 GL_FORCE_INLINE void _rgb888_to_rgb565(const GLubyte* source, GLubyte* dest) {
-    *((GLushort*) dest) = ((source[0] & 0b11111000) << 8) | ((source[1] & 0b11111100) << 3) | (source[2] >> 3);
+    GLushort* d = (GLushort*) dest;
+
+    uint16_t b = (source[2] >> 3) & 0x1f;
+    uint16_t g = ((source[1] >> 2) & 0x3f) << 5;
+    uint16_t r = ((source[0] >> 3) & 0x1f) << 11;
+
+    *d = r | g | b;
 }
 
 GL_FORCE_INLINE void _rgb565_to_rgb8888(const GLubyte* source, GLubyte* dest) {
@@ -1144,31 +1178,31 @@ static inline void _a8_to_argb4444(const GLubyte* source, GLubyte* dest) {
  */
 static int _determineConversion(GLint internalFormat, GLenum format, GLenum type, TextureConversionFunc* func) {
     static struct Entry {
+        TextureConversionFunc func;
         GLint internalFormat;
         GLenum format;
         GLenum type;
-        TextureConversionFunc func;
         bool twiddle;
     } conversions [] = {
-        {GL_ARGB4444_KOS, GL_ALPHA, GL_UNSIGNED_BYTE, _a8_to_argb4444, false},
-        {GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_argb4444, false},        
-        {GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, _rgba4444_to_argb4444, false},
-        {GL_ARGB4444_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV, NULL, false},
-        {GL_ARGB4444_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS, NULL, false},
-        {GL_ARGB4444_TWID_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_argb4444, true},
-        {GL_ARGB1555_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, NULL, false},
-        {GL_ARGB1555_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS, NULL, false},
-        {GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_rgb565, false},
-        {GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, _r8_to_rgb565, false},
-        {GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_BYTE, _rgb888_to_rgb565, false},
-        {GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, _rgba8888_to_rgb565, false},
-        {GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, _r8_to_rgb565, false},
-        {GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, NULL, false},
-        {GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_TWID_KOS, NULL, false},
-        {GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, _rgb888_to_rgb565, true},
-        {GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, NULL, false},
-        {GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, NULL, false},
-        {GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, NULL, false},
+        {_a8_to_argb4444, GL_ARGB4444_KOS, GL_ALPHA, GL_UNSIGNED_BYTE, false},
+        {_rgba8888_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
+        {_rgba4444_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, false},
+        {NULL, GL_ARGB4444_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV, false},
+        {NULL, GL_ARGB4444_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS, false},
+        {_rgba8888_to_argb4444, GL_ARGB4444_TWID_KOS, GL_RGBA, GL_UNSIGNED_BYTE, true},
+        {NULL, GL_ARGB1555_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, false},
+        {NULL, GL_ARGB1555_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS, false},
+        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
+        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false},
+        {_rgb888_to_rgb565, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_BYTE, false},
+        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
+        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false},
+        {NULL, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, false},
+        {NULL, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_TWID_KOS, false},
+        {_rgb888_to_rgb565, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, true},
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false},
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false},
     };
 
     for(size_t i = 0; i < sizeof(conversions) / sizeof(struct Entry); ++i) {
@@ -1266,10 +1300,6 @@ void _glAllocateSpaceForMipmaps(TextureObject* active) {
     active->baseDataOffset = _glGetMipmapDataOffset(active, 0);
 }
 
-#define STRINGIFY(x) #x
-#define TOSTRING(x) STRINGIFY(x)
-#define INFO_MSG(x) fprintf(stderr, "%s:%s > %s\n", __FILE__, TOSTRING(__LINE__), x)
-
 static bool _glTexImage2DValidate(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type) {
     if(target != GL_TEXTURE_2D) {
         INFO_MSG("");
@@ -1479,23 +1509,36 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             return;
         }
 
-        GLubyte* conversionBuffer = (GLubyte*) malloc(bytes);
+        GLubyte* conversionBuffer = (GLubyte*) memalign(32, bytes);
         const GLubyte* src = data;
         GLubyte* dst = conversionBuffer;
-        for(uint32_t i = 0; i < (width * height); ++i) {
-            if(needs_conversion > 1) {
-                // Needs twiddling. Set dst to the twiddle location
-                // for this texel
+
+        if(needs_conversion == 1) {
+            // Convert
+            for(uint32_t i = 0; i < (width * height); ++i) {
+                conversion(src, dst);
+                dst += destStride;
+                src += sourceStride;
+            }
+        } else if(needs_conversion == 2) {
+            // Twiddle
+            for(uint32_t i = 0; i < (width * height); ++i) {
                 uint32_t newLocation = twid_location(i, width, height);
                 dst = conversionBuffer + (destStride * newLocation);
-            }
 
-            if(conversion) {
+                for(int j = 0; j < destStride; ++j)
+                    *dst++ = *src++;
+
+                src += sourceStride;
+            }
+        } else if(needs_conversion == 3) {
+            // Convert + twiddle
+            for(uint32_t i = 0; i < (width * height); ++i) {
+                uint32_t newLocation = twid_location(i, width, height);
+                dst = conversionBuffer + (destStride * newLocation);
                 conversion(src, dst);
+                src += sourceStride;
             }
-
-            dst += destStride;
-            src += sourceStride;
         }
 
         FASTCPY(targetData, conversionBuffer, bytes);

From 0e31aa3d2777a315aeb3b03ea89578d05d1c7357 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:23:36 +0100
Subject: [PATCH 12/28] Tweak

---
 samples/lights/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/samples/lights/main.c b/samples/lights/main.c
index f03ede9..afd048d 100644
--- a/samples/lights/main.c
+++ b/samples/lights/main.c
@@ -145,7 +145,7 @@ int check_start() {
 
 void DrawCube(float x, float z) {
     static float pos = 0.0f;
-    const static float radius = 30.0f;
+    static const float radius = 30.0f;
 
     pos += 0.001f;
 

From 9cedc8185065ff59cb909cbdb7a0a485b8d334bf Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:29:24 +0100
Subject: [PATCH 13/28] Fix broken merge

---
 GL/alloc/alloc.c          | 19 +++++--------------
 tests/test_glteximage2d.h |  5 ++++-
 2 files changed, 9 insertions(+), 15 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index b263d46..24ade90 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -147,25 +147,16 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                                 uintptr_t offset = (it - pool_header.block_usage) * 8;
                                 offset += (i + 1);
                                 offset -= required_subblocks;
+
+                                if(start_subblock_out) {
+                                    *start_subblock_out = offset;
+                                }
+
                                 return pool_header.base_address + (offset * 256);
                             }
                         }
                     } else {
                         found_subblocks = 0;
-                    } else {
-                        found_subblocks++;
-                        if(found_subblocks >= required_subblocks) {
-                            /* We found space! Now calculate the address */
-                            uintptr_t offset = (it - pool_header.block_usage) * 8;
-                            offset += (i + 1);
-                            offset -= required_subblocks;
-
-                            if(start_subblock_out) {
-                                *start_subblock_out = offset;
-                            }
-
-                            return pool_header.base_address + (offset * 256);
-                        }
                     }
 
                     t <<= 1;
diff --git a/tests/test_glteximage2d.h b/tests/test_glteximage2d.h
index 3c5995a..3349c42 100644
--- a/tests/test_glteximage2d.h
+++ b/tests/test_glteximage2d.h
@@ -10,7 +10,10 @@ public:
     uint8_t image_data[8 * 8 * 4] = {0};
 
     void set_up() {
-        glKosInit();
+        GLdcConfig config;
+        glKosInitConfig(&config);
+        config.texture_twiddle = false;
+        glKosInitEx(&config);
 
         /* Init image data so each texel RGBA value matches the
          * position in the array */

From 49a0e103cb613daade35d494d4e329c6c78fd03c Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 1 Sep 2023 20:34:29 +0100
Subject: [PATCH 14/28] Fix up CI

---
 CMakeLists.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 51ad8ea..65b940f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -54,10 +54,10 @@ else()
     set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -ffast-math")
 endif()
 
-set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -mpretend-cmove -fexpensive-optimizations -fomit-frame-pointer -finline-functions")
+set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -fexpensive-optimizations -fomit-frame-pointer -finline-functions")
 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -std=c++14 -O3 -g0 -s -fomit-frame-pointer -fstrict-aliasing")
 
-set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O3 -mpretend-cmove -fexpensive-optimizations -fomit-frame-pointer -finline-functions")
+set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O3 -fexpensive-optimizations -fomit-frame-pointer -finline-functions")
 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -std=c++14 -O3 -fomit-frame-pointer -fstrict-aliasing")
 
 set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g -Wall -Wextra")

From 4d39e19ed51c4f0e57a69e504a492031432f4532 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Sat, 2 Sep 2023 21:10:42 +0100
Subject: [PATCH 15/28] Start repairing paletted textures

---
 GL/texture.c | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

diff --git a/GL/texture.c b/GL/texture.c
index e8e33e1..daf4e74 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -281,6 +281,12 @@ static GLint _determineStrideInternal(GLenum internalFormat) {
         case GL_COLOR_INDEX4_EXT:
         case GL_COLOR_INDEX8_EXT:
             return 1;
+        case GL_RGBA8:
+            return 4;
+        case GL_RGB8:
+            return 3;
+        case GL_RGBA4:
+            return 2;
     }
 
     return -1;
@@ -1047,6 +1053,7 @@ static GLuint _determinePVRFormat(GLint internalFormat) {
     case GL_COMPRESSED_RGB_565_VQ_MIPMAP_TWID_KOS:
         return GPU_TXRFMT_RGB565 | GPU_TXRFMT_VQ_ENABLE | GPU_TXRFMT_TWIDDLED;
     default:
+        fprintf(stderr, "Unexpected format: %d\n", internalFormat);
         _glKosThrowError(GL_INVALID_ENUM, __func__);
         return 0;
     }
@@ -1203,6 +1210,8 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false},
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, false},
         {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false},
+        {NULL, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, false},
+        {NULL, GL_RGBA8, GL_RGBA, GL_BYTE, false},
     };
 
     for(size_t i = 0; i < sizeof(conversions) / sizeof(struct Entry); ++i) {
@@ -1215,6 +1224,7 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
         }
     }
 
+    fprintf(stderr, "No conversion found for format: %d, internalFormat: %d, type: %d\n", format, internalFormat, type);
     return -1;
 }
 
@@ -1707,6 +1717,7 @@ GLAPI void APIENTRY glColorTableEXT(GLenum target, GLenum internalFormat, GLsize
     }
 
     GLint sourceStride = _determineStride(format, type);
+    GLint destStride = _determineStrideInternal(internalFormat);
 
     gl_assert(sourceStride > -1);
 
@@ -1785,10 +1796,15 @@ GLAPI void APIENTRY glColorTableEXT(GLenum target, GLenum internalFormat, GLsize
     /* Transform and copy the source palette to the texture */
     GLushort i = 0;
     for(; i < width; ++i) {
-        convert(src, dst);
-
-        src += sourceStride;
-        dst += 4;
+        if(convert) {
+            convert(src, dst);
+            src += sourceStride;
+            dst += destStride;
+        } else {
+            for(int j = 0; j < sourceStride; ++j) {
+                *dst++ = *src++;
+            }
+        }
     }
 
     _glApplyColorTable(palette);

From e5a4f4f716b3dec2c4e07face47cfde0ed40473c Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Sun, 3 Sep 2023 21:12:11 +0100
Subject: [PATCH 16/28] Continue fixing up paletted texture issues

---
 GL/texture.c | 133 +++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 98 insertions(+), 35 deletions(-)

diff --git a/GL/texture.c b/GL/texture.c
index daf4e74..f890d05 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -297,7 +297,19 @@ static GLint _determineStride(GLenum format, GLenum type) {
     switch(type) {
     case GL_BYTE:
     case GL_UNSIGNED_BYTE:
-        return (format == GL_RED || format == GL_ALPHA) ? 1 : (format == GL_RGB) ? 3 : 4;
+        switch(format) {
+        case GL_RED:
+        case GL_ALPHA:
+        case GL_COLOR_INDEX:
+            return 1;
+        case GL_RGB:
+            return 3;
+        case GL_RGBA:
+            return 4;
+        default:
+            _glKosThrowError(GL_INVALID_VALUE, __func__);
+            return 1;
+        }
     case GL_UNSIGNED_SHORT:
         return (format == GL_RED || format == GL_ALPHA) ? 2 : (format == GL_RGB) ? 6 : 8;
     case GL_UNSIGNED_SHORT_5_6_5:
@@ -921,6 +933,7 @@ static GLboolean isTwiddledInternalFormat(GLint internalFormat) {
  */
 static GLint _cleanInternalFormat(GLint internalFormat) {
     switch (internalFormat) {
+    /* All of these formats are fine as they are, no conversion needed */
     case GL_RGB565_KOS:
     case GL_ARGB4444_KOS:
     case GL_ARGB1555_KOS:
@@ -929,10 +942,11 @@ static GLint _cleanInternalFormat(GLint internalFormat) {
     case GL_ARGB1555_TWID_KOS:
     case GL_COLOR_INDEX8_TWID_KOS:
     case GL_COLOR_INDEX4_TWID_KOS:
-    case GL_COLOR_INDEX4_EXT:
-    case GL_COLOR_INDEX8_EXT:
-        /* All of these formats are fine as they are, no conversion needed */
         return internalFormat;
+    case GL_COLOR_INDEX4_EXT:
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
+    case GL_COLOR_INDEX8_EXT:        
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX8_TWID_KOS : internalFormat;
     case GL_RGB_TWID_KOS:
         return GL_RGB565_TWID_KOS;
     case GL_RGBA_TWID_KOS:
@@ -1174,6 +1188,16 @@ static inline void _a8_to_argb4444(const GLubyte* source, GLubyte* dest) {
     *((GLushort*) dest) = (color << 8) | color;
 }
 
+
+enum ConversionType {
+    CONVERSION_TYPE_NONE,
+    CONVERSION_TYPE_CONVERT = 1,
+    CONVERSION_TYPE_TWIDDLE = 2,
+    CONVERSION_TYPE_PACK = 4,
+    CONVERSION_TYPE_INVALID = -1
+};
+
+
 /* Given an cleaned internal format, and the passed format and type, this returns:
  *
  * 0 if not conversion is necessary
@@ -1190,42 +1214,61 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
         GLenum format;
         GLenum type;
         bool twiddle;
+        bool pack; // If true, each value is packed after conversion into half-bytes
     } conversions [] = {
-        {_a8_to_argb4444, GL_ARGB4444_KOS, GL_ALPHA, GL_UNSIGNED_BYTE, false},
-        {_rgba8888_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
-        {_rgba4444_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, false},
-        {NULL, GL_ARGB4444_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV, false},
-        {NULL, GL_ARGB4444_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS, false},
-        {_rgba8888_to_argb4444, GL_ARGB4444_TWID_KOS, GL_RGBA, GL_UNSIGNED_BYTE, true},
-        {NULL, GL_ARGB1555_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, false},
-        {NULL, GL_ARGB1555_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS, false},
-        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
-        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false},
-        {_rgb888_to_rgb565, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_BYTE, false},
-        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false},
-        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false},
-        {NULL, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, false},
-        {NULL, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_TWID_KOS, false},
-        {_rgb888_to_rgb565, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, true},
-        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false},
-        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, false},
-        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false},
-        {NULL, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, false},
-        {NULL, GL_RGBA8, GL_RGBA, GL_BYTE, false},
+        {_a8_to_argb4444, GL_ARGB4444_KOS, GL_ALPHA, GL_UNSIGNED_BYTE, false, false},
+        {_rgba8888_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
+        {_rgba4444_to_argb4444, GL_ARGB4444_KOS, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, false, false},
+        {NULL, GL_ARGB4444_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV, false, false},
+        {NULL, GL_ARGB4444_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_4_4_4_4_REV_TWID_KOS, false, false},
+        {_rgba8888_to_argb4444, GL_ARGB4444_TWID_KOS, GL_RGBA, GL_UNSIGNED_BYTE, true, false},
+        {NULL, GL_ARGB1555_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, false, false},
+        {NULL, GL_ARGB1555_TWID_KOS, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV_TWID_KOS, false, false},
+        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
+        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false, false},
+        {_rgb888_to_rgb565, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_BYTE, false, false},
+        {_rgba8888_to_rgb565, GL_RGB565_KOS, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
+        {_r8_to_rgb565, GL_RGB565_KOS, GL_RED, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_RGB565_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, false, false},
+        {NULL, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_SHORT_5_6_5_TWID_KOS, false, false},
+        {_rgb888_to_rgb565, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, true, false},
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, true, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_BYTE, true, false},
+        {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false, true},
+        {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX, GL_BYTE, false, true},
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false, true},
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, true, true},
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_BYTE, true, true},
+        {NULL, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_RGBA8, GL_RGBA, GL_BYTE, false, false},
+        {_rgb888_to_rgba8888, GL_RGBA8, GL_RGB, GL_UNSIGNED_BYTE, false, false},
+        {_rgb888_to_rgba8888, GL_RGBA8, GL_RGB, GL_BYTE, false, false},
     };
 
     for(size_t i = 0; i < sizeof(conversions) / sizeof(struct Entry); ++i) {
         struct Entry* e = conversions + i;
         if(e->format == format && e->internalFormat == internalFormat && e->type == type) {
             *func = e->func;
-            int ret = (e->func) ? 1 : 0;
-            ret += (e->twiddle) ? 2 : 0;
+
+            int ret = (e->func) ? CONVERSION_TYPE_CONVERT : CONVERSION_TYPE_NONE;
+
+            if(e->twiddle) {
+                ret |= CONVERSION_TYPE_TWIDDLE;
+            }
+
+            if(e->pack) {
+                ret |= CONVERSION_TYPE_PACK;
+            }
+
             return ret;
         }
     }
 
-    fprintf(stderr, "No conversion found for format: %d, internalFormat: %d, type: %d\n", format, internalFormat, type);
-    return -1;
+    fprintf(stderr, "No conversion found for format: 0x%x, internalFormat: 0x%x, type: 0x%x\n", format, internalFormat, type);
+    return CONVERSION_TYPE_INVALID;
 }
 
 static GLboolean _isSupportedFormat(GLenum format) {
@@ -1446,11 +1489,6 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
     GLint destStride = isPaletted ? 1 : 2;
     GLuint bytes = (width * height * destStride);
 
-    //special case 4bpp
-    if(internalFormat == GL_COLOR_INDEX4_EXT){
-        bytes >>= 1;
-    }
-
     if(!active->data) {
         gl_assert(active);
         gl_assert(width);
@@ -1523,7 +1561,10 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         const GLubyte* src = data;
         GLubyte* dst = conversionBuffer;
 
-        if(needs_conversion == 1) {
+        bool pack = (needs_conversion & CONVERSION_TYPE_PACK) == CONVERSION_TYPE_PACK;
+        needs_conversion &= ~CONVERSION_TYPE_PACK;
+
+        if(needs_conversion == CONVERSION_TYPE_CONVERT) {
             // Convert
             for(uint32_t i = 0; i < (width * height); ++i) {
                 conversion(src, dst);
@@ -1551,6 +1592,28 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             }
         }
 
+        if(pack) {
+            assert(isPaletted);
+
+            size_t dst_byte = 0;
+            for(size_t src_byte = 0; src_byte < bytes; ++src_byte) {
+                uint8_t v = conversionBuffer[src_byte];
+
+                if(src_byte % 1 == 0) {
+                    conversionBuffer[dst_byte] = (conversionBuffer[dst_byte] & 0xF) | ((v & 0xF0) << 4);
+                } else {
+                    conversionBuffer[dst_byte] = (conversionBuffer[dst_byte] & 0xF0) | (v & 0xF);
+                }
+
+                if(src_byte % 1 == 0) {
+                    dst_byte++;
+                }
+            }
+
+            // Halve the byte count to upload
+            bytes >>= 1;
+        }
+
         FASTCPY(targetData, conversionBuffer, bytes);
         free(conversionBuffer);
     } else {

From 12bd6f474f993bfba5ac8e8057f73feed4cea05f Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Wed, 6 Sep 2023 07:59:40 +0100
Subject: [PATCH 17/28] Fix issues with the allocator

---
 GL/alloc/alloc.c | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 24ade90..cb549e4 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -1,6 +1,7 @@
 #include <stdint.h>
 #include <string.h>
 #include <stdlib.h>
+#include <stdio.h>
 
 #include "alloc.h"
 
@@ -42,6 +43,7 @@
  *
  *  - Allocations < 2048 can still cross boundaries
  *  - Only operates on one pool (ignores what you pass)
+ *  - If there are no 2048 aligned blocks, we should fall-back to unaligned
  */
 
 #include <assert.h>
@@ -222,6 +224,11 @@ static inline uint32_t subblock_from_pointer(void* p) {
     return (ptr - pool_header.base_address) / 256;
 }
 
+static inline void block_and_offset_from_subblock(size_t sb, size_t* b, uint8_t* off) {
+    *b = sb / 8;
+    *off = (sb % 8);
+}
+
 void* alloc_malloc(void* pool, size_t size) {
     size_t start_subblock, required_subblocks;
     void* ret = alloc_next_available_ex(pool, size, &start_subblock, &required_subblocks);
@@ -231,13 +238,17 @@ void* alloc_malloc(void* pool, size_t size) {
     }
 
     if(ret) {
-        size_t offset = start_subblock % 8;
-        size_t block = start_subblock / 8;
+        size_t block;
+        uint8_t offset;
+
+        block_and_offset_from_subblock(start_subblock, &block, &offset);
+
         uint8_t mask = 0;
 
         /* Toggle any bits for the first block */
-        for(int i = offset - 1; i >= 0; --i) {
-            mask |= (1 << i);
+        int c = (required_subblocks < 8) ? required_subblocks : 8;
+        for(int i = 0; i < c; ++i) {
+            mask |= (1 << (7 - (offset + i)));
             required_subblocks--;
         }
 
@@ -309,8 +320,10 @@ void alloc_free(void* pool, void* p) {
         if(it->pointer == p) {
             size_t used_subblocks = size_to_subblock_count(it->size);
             size_t subblock = subblock_from_pointer(p);
-            size_t block = subblock / 8;
-            size_t offset = subblock % 8;
+            size_t block;
+            uint8_t offset;
+            block_and_offset_from_subblock(subblock, &block, &offset);
+
             uint8_t mask = 0;
 
             /* Wipe out any leading subblocks */

From 7ce01ad93f5fc2164b977e796c38cd02113c682a Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Wed, 6 Sep 2023 08:01:01 +0100
Subject: [PATCH 18/28] Fix up paletted textures

---
 GL/flush.c                  |   4 +-
 GL/texture.c                | 188 ++++++++++++++++++++++--------------
 include/GL/glkos.h          |   2 -
 samples/paletted/main.c     |   2 +-
 samples/paletted_pcx/main.c |   6 +-
 tests/test_allocator.h      |  15 +++
 6 files changed, 137 insertions(+), 80 deletions(-)

diff --git a/GL/flush.c b/GL/flush.c
index 75da3c8..e07c3a1 100644
--- a/GL/flush.c
+++ b/GL/flush.c
@@ -46,7 +46,9 @@ void APIENTRY glKosInitConfig(GLdcConfig* config) {
     config->initial_pt_capacity = 512 * 3;
     config->initial_tr_capacity = 1024 * 3;
     config->initial_immediate_capacity = 1024 * 3;
-    config->internal_palette_format = GL_RGBA8;
+
+    // RGBA4444 is the fastest general format - 8888 will cause a perf issue
+    config->internal_palette_format = GL_RGBA4;
 
     config->texture_twiddle = GL_TRUE;
 }
diff --git a/GL/texture.c b/GL/texture.c
index f890d05..e60200c 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -28,7 +28,7 @@ static GLuint _determinePVRFormat(GLint internalFormat);
 static GLboolean BANKS_USED[MAX_GLDC_PALETTE_SLOTS];  // Each time a 256 colour bank is used, this is set to true
 static GLboolean SUBBANKS_USED[MAX_GLDC_PALETTE_SLOTS][MAX_GLDC_4BPP_PALETTE_SLOTS]; // 4 counts of the used 16 colour banks within the 256 ones
 
-static GLenum INTERNAL_PALETTE_FORMAT = GL_RGBA8;
+static GLenum INTERNAL_PALETTE_FORMAT = GL_RGBA4;
 static GLboolean TEXTURE_TWIDDLE_ENABLED = GL_FALSE;
 
 #define STRINGIFY(x) #x
@@ -224,8 +224,8 @@ void _glSetInternalPaletteFormat(GLenum val) {
             GPUSetPaletteFormat(GPU_PAL_ARGB4444);
             break;
          case GL_RGB5_A1:
-                GPUSetPaletteFormat(GPU_PAL_ARGB1555);
-                break;
+            GPUSetPaletteFormat(GPU_PAL_ARGB1555);
+            break;
          case  GL_RGB565_KOS:
              GPUSetPaletteFormat(GPU_PAL_RGB565);
             break;
@@ -301,15 +301,19 @@ static GLint _determineStride(GLenum format, GLenum type) {
         case GL_RED:
         case GL_ALPHA:
         case GL_COLOR_INDEX:
+        case GL_COLOR_INDEX8_TWID_KOS:
+        case GL_COLOR_INDEX4_TWID_KOS:  // We return 1 for 4bpp, but it gets sorted later
+        case GL_COLOR_INDEX4_EXT:
+        case GL_COLOR_INDEX8_EXT:
             return 1;
         case GL_RGB:
             return 3;
         case GL_RGBA:
             return 4;
         default:
-            _glKosThrowError(GL_INVALID_VALUE, __func__);
-            return 1;
+            break;
         }
+        break;
     case GL_UNSIGNED_SHORT:
         return (format == GL_RED || format == GL_ALPHA) ? 2 : (format == GL_RGB) ? 6 : 8;
     case GL_UNSIGNED_SHORT_5_6_5:
@@ -324,6 +328,8 @@ static GLint _determineStride(GLenum format, GLenum type) {
         return 2;
     }
 
+    fprintf(stderr, "Couldn't find stride for format: 0x%x type: 0x%x\n", format, type);
+    _glKosThrowError(GL_INVALID_VALUE, __func__);
     return -1;
 }
 
@@ -812,13 +818,13 @@ void APIENTRY glCompressedTexImage2DARB(GLenum target,
         case GL_PALETTE4_RGB8_OES:
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 16, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 16*3;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
 
         case GL_PALETTE4_RGBA8_OES:
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 16, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 16*4;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
 
         case GL_PALETTE4_R5_G6_B5_OES:
@@ -826,31 +832,28 @@ void APIENTRY glCompressedTexImage2DARB(GLenum target,
         case GL_PALETTE4_RGB5_A1_OES:
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 16, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 16*2;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX4_EXT, width, height, border, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
 
         case GL_PALETTE8_RGB8_OES:
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 256, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 256*3;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
 
 
         case GL_PALETTE8_RGBA8_OES:
-        //
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 256, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 256*4;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
-
-
         case GL_PALETTE8_RGBA4_OES:
         case GL_PALETTE8_RGB5_A1_OES:
         case GL_PALETTE8_R5_G6_B5_OES:
 
             glColorTableEXT(GL_TEXTURE_2D, GL_RGBA8, 256, internalFormat, GL_UNSIGNED_BYTE, data);
             ptr += 256*2;
-            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, ptr);
+            glTexImage2D(GL_TEXTURE_2D, level, GL_COLOR_INDEX8_EXT, width, height, border, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, ptr);
             return;
 
         default: {
@@ -944,7 +947,10 @@ static GLint _cleanInternalFormat(GLint internalFormat) {
     case GL_COLOR_INDEX4_TWID_KOS:
         return internalFormat;
     case GL_COLOR_INDEX4_EXT:
-        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
+        // FIXME: We can't auto twiddle GL_COLOR_INDEX4 -> GL_COLOR_INDEX4_TWID_KOS
+        // so until we can, we need to not twiddle 4bpp paletted textures automatically
+        // return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
+        return internalFormat;
     case GL_COLOR_INDEX8_EXT:        
         return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX8_TWID_KOS : internalFormat;
     case GL_RGB_TWID_KOS:
@@ -1234,18 +1240,35 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
         {_rgb888_to_rgb565, GL_RGB565_TWID_KOS, GL_RGB, GL_UNSIGNED_BYTE, true, false},
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false, false},
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX, GL_BYTE, false, false},
-        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false, false},
         {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, true, false},
         {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX, GL_BYTE, true, false},
         {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, false, true},
         {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX, GL_BYTE, false, true},
-        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, false, true},
+
+        {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX4_EXT, GL_BYTE, false, false},
         {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, true, true},
         {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_BYTE, true, true},
+
+        /* FIXME: Implement 4bpp -> 4bpp twiddling
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, true, false},
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX4_EXT, GL_BYTE, true, false}, */
+
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX8_EXT, GL_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX8_TWID_KOS, GL_UNSIGNED_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX8_TWID_KOS, GL_BYTE, false, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, true, false},
+        {NULL, GL_COLOR_INDEX8_TWID_KOS, GL_COLOR_INDEX8_EXT, GL_BYTE, true, false},
+
         {NULL, GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
         {NULL, GL_RGBA8, GL_RGBA, GL_BYTE, false, false},
         {_rgb888_to_rgba8888, GL_RGBA8, GL_RGB, GL_UNSIGNED_BYTE, false, false},
         {_rgb888_to_rgba8888, GL_RGBA8, GL_RGB, GL_BYTE, false, false},
+        {_rgb888_to_argb4444, GL_RGBA4, GL_RGB, GL_UNSIGNED_BYTE, false, false},
+        {_rgb888_to_argb4444, GL_RGBA4, GL_RGB, GL_BYTE, false, false},
+        {_rgba8888_to_argb4444, GL_RGBA4, GL_RGBA, GL_UNSIGNED_BYTE, false, false},
+        {_rgba8888_to_argb4444, GL_RGBA4, GL_RGBA, GL_BYTE, false, false},
     };
 
     for(size_t i = 0; i < sizeof(conversions) / sizeof(struct Entry); ++i) {
@@ -1271,23 +1294,6 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
     return CONVERSION_TYPE_INVALID;
 }
 
-static GLboolean _isSupportedFormat(GLenum format) {
-    switch(format) {
-    case GL_ALPHA:
-    case GL_LUMINANCE:
-    case GL_INTENSITY:
-    case GL_LUMINANCE_ALPHA:
-    case GL_RED:
-    case GL_RGB:
-    case GL_RGBA:
-    case GL_BGRA:
-    case GL_COLOR_INDEX:
-        return GL_TRUE;
-    default:
-        return GL_FALSE;
-    }
-}
-
 GLboolean _glIsMipmapComplete(const TextureObject* obj) {
 
     // Non-square textures can't have mipmaps
@@ -1366,32 +1372,40 @@ static bool _glTexImage2DValidate(GLenum target, GLint level, GLint internalForm
         return false;
     }
 
-    if(format != GL_COLOR_INDEX) {
-        if(!_isSupportedFormat(format)) {
-            INFO_MSG("Unsupported format");
-            _glKosThrowError(GL_INVALID_ENUM, __func__);
-            return false;
-        }
+    GLint validFormats [] = {
+        GL_ALPHA,
+        GL_LUMINANCE,
+        GL_INTENSITY,
+        GL_LUMINANCE_ALPHA,
+        GL_RED,
+        GL_RGB,
+        GL_RGBA,
+        GL_BGRA,
+        GL_COLOR_INDEX,
+        GL_COLOR_INDEX4_EXT,  /* Extension, this is just so glCompressedTexImage can pass-thru */
+        GL_COLOR_INDEX8_EXT,  /* Extension, this is just so glCompressedTexImage can pass-thru */
+        GL_COLOR_INDEX4_TWID_KOS,  /* Extension, this is just so glCompressedTexImage can pass-thru */
+        GL_COLOR_INDEX8_TWID_KOS,  /* Extension, this is just so glCompressedTexImage can pass-thru */
+        0
+    };
 
+    if(_glCheckValidEnum(format, validFormats, __func__) != 0) {
+        return false;
+    }
+
+    if(format != GL_COLOR_INDEX4_EXT && format != GL_COLOR_INDEX4_TWID_KOS) {
         /* Abuse determineStride to see if type is valid */
         if(_determineStride(GL_RGBA, type) == -1) {
             INFO_MSG("");
             _glKosThrowError(GL_INVALID_ENUM, __func__);
             return false;
         }
+    }
 
-        internalFormat = _cleanInternalFormat(internalFormat);
-        if(internalFormat == -1) {
-            INFO_MSG("");
-            _glKosThrowError(GL_INVALID_VALUE, __func__);
-            return false;
-        }
-    } else {
-        if(internalFormat != GL_COLOR_INDEX8_EXT && internalFormat != GL_COLOR_INDEX4_EXT) {
-            INFO_MSG("");
-            _glKosThrowError(GL_INVALID_ENUM, __func__);
-            return false;
-        }
+    if(_cleanInternalFormat(internalFormat) == -1) {
+        INFO_MSG("");
+        _glKosThrowError(GL_INVALID_VALUE, __func__);
+        return false;
     }
 
     GLuint w = width;
@@ -1461,7 +1475,12 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         return;
     }
 
-    GLboolean isPaletted = (internalFormat == GL_COLOR_INDEX8_EXT || internalFormat == GL_COLOR_INDEX4_EXT) ? GL_TRUE : GL_FALSE;
+    GLboolean isPaletted = (
+        internalFormat == GL_COLOR_INDEX8_EXT ||
+        internalFormat == GL_COLOR_INDEX4_EXT ||
+        internalFormat == GL_COLOR_INDEX4_TWID_KOS ||
+        internalFormat == GL_COLOR_INDEX8_TWID_KOS
+    ) ? GL_TRUE : GL_FALSE;
     GLenum cleanInternalFormat = _cleanInternalFormat(internalFormat);
     GLuint pvrFormat = _determinePVRFormat(cleanInternalFormat);
     GLuint originalId = active->index;
@@ -1486,8 +1505,26 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
     /* All colour formats are represented as shorts internally. Paletted textures
      * are represented by byte indexes (which look up into a color table)
      */
-    GLint destStride = isPaletted ? 1 : 2;
-    GLuint bytes = (width * height * destStride);
+    GLint destStride = _determineStrideInternal(cleanInternalFormat);
+    GLint sourceStride = _determineStride(format, type);
+    GLuint srcBytes = (width * height * sourceStride);
+    GLuint destBytes = (width * height * destStride);
+
+    TextureConversionFunc conversion;
+    int needs_conversion = _determineConversion(cleanInternalFormat, format, type, &conversion);
+
+    // Hack: If we're doing a 4bpp source (via glCompressedTexture...)
+    // halve the srcBytes
+    if(format == GL_COLOR_INDEX4_EXT || format == GL_COLOR_INDEX4_TWID_KOS) {
+        srcBytes /= 2;
+    }
+
+    /* If we're packing stuff, then the dest size is half what it would be */
+    if((needs_conversion & CONVERSION_TYPE_PACK) == CONVERSION_TYPE_PACK) {
+        destBytes /= 2;
+    } else if(internalFormat == GL_COLOR_INDEX4_EXT || internalFormat == GL_COLOR_INDEX4_TWID_KOS) {
+        destBytes /= 2;
+    }
 
     if(!active->data) {
         gl_assert(active);
@@ -1504,9 +1541,9 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         active->mipmapCount = _glGetMipmapLevelCount(active);
         active->mipmap_bias = GL_KOS_INTERNAL_DEFAULT_MIPMAP_LOD_BIAS;
         active->dataStride = destStride;
-        active->baseDataSize = bytes;
+        active->baseDataSize = destBytes;
 
-        gl_assert(bytes);
+        gl_assert(destBytes);
 
         if(level > 0) {
             /* If we're uploading a mipmap level, we need to allocate the full amount of space */
@@ -1540,24 +1577,19 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
     GLubyte* targetData = (active->baseDataOffset == 0) ? active->data : _glGetMipmapLocation(active, level);
     gl_assert(targetData);
 
-    TextureConversionFunc conversion;
-    int needs_conversion = _determineConversion(cleanInternalFormat, format, type, &conversion);
     if(needs_conversion < 0) {
         _glKosThrowError(GL_INVALID_VALUE, __func__);
         INFO_MSG("Couldn't find necessary texture conversion\n");
         return;
     } else if(needs_conversion > 0) {
         /* Convert the data */
-        GLint sourceStride = _determineStride(format, type);
-        GLint destStride = _determineStrideInternal(cleanInternalFormat);
-
         if(sourceStride == -1) {
             INFO_MSG("Stride was not detected\n");
             _glKosThrowError(GL_INVALID_OPERATION, __func__);
             return;
         }
 
-        GLubyte* conversionBuffer = (GLubyte*) memalign(32, bytes);
+        GLubyte* conversionBuffer = (GLubyte*) memalign(32, srcBytes);
         const GLubyte* src = data;
         GLubyte* dst = conversionBuffer;
 
@@ -1590,13 +1622,17 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                 conversion(src, dst);
                 src += sourceStride;
             }
+        } else if(pack) {
+            fprintf(stderr, "Just packing\n");
+            FASTCPY(conversionBuffer, data, srcBytes);
         }
 
         if(pack) {
             assert(isPaletted);
 
+            fprintf(stderr, "Packing data...\n");
             size_t dst_byte = 0;
-            for(size_t src_byte = 0; src_byte < bytes; ++src_byte) {
+            for(size_t src_byte = 0; src_byte < srcBytes; ++src_byte) {
                 uint8_t v = conversionBuffer[src_byte];
 
                 if(src_byte % 1 == 0) {
@@ -1610,25 +1646,28 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                 }
             }
 
-            // Halve the byte count to upload
-            bytes >>= 1;
+            fprintf(stderr, "Packed\n");
         }
 
-        FASTCPY(targetData, conversionBuffer, bytes);
+        fprintf(stderr, "Uploading data (%d)...\n", destBytes);
+        FASTCPY(targetData, conversionBuffer, destBytes);
         free(conversionBuffer);
     } else {
         /* No conversion necessary, we can just upload data directly */
         gl_assert(targetData);
         gl_assert(data);
-        gl_assert(bytes);
+        gl_assert(destBytes);
 
         /* No conversion? Just copy the data, and the pvr_format is correct */
-        FASTCPY(targetData, data, bytes);
+        fprintf(stderr, "Uploading data (%d)...\n", destBytes);
+        FASTCPY(targetData, data, destBytes);
         gl_assert(active->index == originalId);
     }
 
     gl_assert(active->index == originalId);
     _glGPUStateMarkDirty();
+
+    fprintf(stderr, "Done\n");
 }
 
 void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param) {
@@ -1780,13 +1819,16 @@ GLAPI void APIENTRY glColorTableEXT(GLenum target, GLenum internalFormat, GLsize
     }
 
     GLint sourceStride = _determineStride(format, type);
-    GLint destStride = _determineStrideInternal(internalFormat);
+
+    /* We always store the palette in RAM in RGBA8888. We pack when we set
+     * the individual colours in the PVR */
+    GLint destStride = 4;
 
     gl_assert(sourceStride > -1);
 
     TextureConversionFunc convert;
     int ret = _determineConversion(
-        INTERNAL_PALETTE_FORMAT,
+        GL_RGBA8,
         format,
         type,
         &convert
@@ -1833,8 +1875,8 @@ GLAPI void APIENTRY glColorTableEXT(GLenum target, GLenum internalFormat, GLsize
         palette->bank = -1;
     }
 
-    palette->data = (GLubyte*) malloc(width * 4);
-    palette->format = format;
+    palette->data = (GLubyte*) malloc(width * destStride);
+    palette->format = internalFormat;
     palette->width = width;
     palette->size = (width > 16) ? 256 : 16;
     gl_assert(palette->size == 16 || palette->size == 256);
diff --git a/include/GL/glkos.h b/include/GL/glkos.h
index 3dfe9ad..81827d5 100644
--- a/include/GL/glkos.h
+++ b/include/GL/glkos.h
@@ -35,8 +35,6 @@ extern const char* GLDC_VERSION;
 
 #define GL_NEARZ_CLIPPING_KOS                       0xEEFA
 
-#define GL_UNSIGNED_BYTE_TWID_KOS                   0xEEFB
-
 
 /* Initialize the GL pipeline. GL will initialize the PVR. */
 GLAPI void APIENTRY glKosInit();
diff --git a/samples/paletted/main.c b/samples/paletted/main.c
index 7ada768..7b88cf3 100644
--- a/samples/paletted/main.c
+++ b/samples/paletted/main.c
@@ -132,7 +132,7 @@ void LoadGLTextures() {
 
     // 2d texture, level of detail 0 (normal), 3 components (red, green, blue), x size from image, y size from image,
     // border 0 (normal), rgb color data, unsigned byte data, and finally the data itself.
-    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX8_EXT, image1->width, image1->height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE_TWID_KOS, image1->data);
+    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX8_EXT, image1->width, image1->height, 0, GL_COLOR_INDEX8_TWID_KOS, GL_UNSIGNED_BYTE, image1->data);
     glGenerateMipmapEXT(GL_TEXTURE_2D);
 
     free(image1);
diff --git a/samples/paletted_pcx/main.c b/samples/paletted_pcx/main.c
index 4f08a64..7599dcb 100644
--- a/samples/paletted_pcx/main.c
+++ b/samples/paletted_pcx/main.c
@@ -429,7 +429,7 @@ void LoadGLTextures() {
 #ifndef USE_16C_PALETTE
     glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX8_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image1.data);
 #else
-    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image1.data);
+    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, image1.data);
 #endif
 
     glBindTexture(GL_TEXTURE_2D, textures[1]);   // 2d texture (x and y size)
@@ -444,7 +444,7 @@ void LoadGLTextures() {
 #ifndef USE_16C_PALETTE
     glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX8_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image1.data);
 #else
-    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image1.data);
+    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image1.width, image1.height, 0, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, image1.data);
 #endif
 
     glBindTexture(GL_TEXTURE_2D, textures[2]);
@@ -463,7 +463,7 @@ void LoadGLTextures() {
 #ifndef USE_16C_PALETTE
     glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX8_EXT, image2.width, image2.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image2.data);
 #else
-    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image2.width, image2.height, 0, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, image2.data);
+    glTexImage2D(GL_TEXTURE_2D, 0, GL_COLOR_INDEX4_EXT, image2.width, image2.height, 0, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, image2.data);
 #endif
 }
 
diff --git a/tests/test_allocator.h b/tests/test_allocator.h
index 32ac1cc..1c5d7e9 100644
--- a/tests/test_allocator.h
+++ b/tests/test_allocator.h
@@ -40,6 +40,21 @@ public:
         assert_equal(alloc_block_count(pool), expected_blocks);
     }
 
+    void test_complex_case() {
+        uint8_t* large_pool = (uint8_t*) malloc(8 * 1024 * 1024);
+
+        alloc_init(large_pool, 8 * 1024 * 1024);
+        alloc_malloc(large_pool, 262144);
+        alloc_malloc(large_pool, 262144);
+        void* a1 = alloc_malloc(large_pool, 524288);
+        alloc_free(large_pool, a1);
+        alloc_malloc(large_pool, 699056);
+        alloc_malloc(large_pool, 128);
+        alloc_shutdown(large_pool);
+
+        free(large_pool);
+    }
+
     void test_alloc_malloc() {
         alloc_init(pool, sizeof(pool));
 

From 6eb079228eeeb18211e16c47204fd275a29f26af Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Wed, 6 Sep 2023 21:01:37 +0100
Subject: [PATCH 19/28] Fix infinite loop

---
 GL/alloc/alloc.c       | 25 +++++++++++++++++++--
 GL/texture.c           | 51 +++++++++++++++++++++++++-----------------
 tests/test_allocator.h | 20 +++++++++++++++++
 3 files changed, 73 insertions(+), 23 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index cb549e4..1a03cc3 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -47,11 +47,20 @@
  */
 
 #include <assert.h>
+#include <stdio.h>
 
 #define EIGHT_MEG (8 * 1024 * 1024)
 #define TWO_KILOBYTES (2 * 1024)
 #define BLOCK_COUNT (EIGHT_MEG / TWO_KILOBYTES)
 
+#define ALLOC_DEBUG 0
+#if ALLOC_DEBUG
+#define DBG_MSG(fmt, ...) fprintf(stderr, fmt, ##__VA_ARGS__)
+#else
+#define DBG_MSG(fmt, ...) do {} while (0)
+#endif
+
+
 static inline int round_up(int n, int multiple)
 {
     assert(multiple);
@@ -230,6 +239,8 @@ static inline void block_and_offset_from_subblock(size_t sb, size_t* b, uint8_t*
 }
 
 void* alloc_malloc(void* pool, size_t size) {
+    DBG_MSG("Allocating: %d\n", size);
+
     size_t start_subblock, required_subblocks;
     void* ret = alloc_next_available_ex(pool, size, &start_subblock, &required_subblocks);
 
@@ -245,6 +256,8 @@ void* alloc_malloc(void* pool, size_t size) {
 
         uint8_t mask = 0;
 
+        DBG_MSG("Alloc: size: %d, rs: %d, sb: %d, b: %d, off: %d\n", size, required_subblocks, start_subblock, start_subblock / 8, start_subblock % 8);
+
         /* Toggle any bits for the first block */
         int c = (required_subblocks < 8) ? required_subblocks : 8;
         for(int i = 0; i < c; ++i) {
@@ -308,6 +321,8 @@ void* alloc_malloc(void* pool, size_t size) {
         }
     }
 
+    DBG_MSG("Alloc done\n");
+
     return ret;
 }
 
@@ -326,9 +341,12 @@ void alloc_free(void* pool, void* p) {
 
             uint8_t mask = 0;
 
+            DBG_MSG("Free: size: %d, us: %d, sb: %d, off: %d\n", it->size, used_subblocks, block, offset);
+
             /* Wipe out any leading subblocks */
-            for(int i = offset; i > 0; --i) {
-                mask |= (1 << i);
+            int c = (used_subblocks < 8) ? used_subblocks : 8;
+            for(int i = 0; i < c; ++i) {
+                mask |= (1 << (7 - (offset + i)));
                 used_subblocks--;
             }
 
@@ -359,6 +377,7 @@ void alloc_free(void* pool, void* p) {
                 pool_header.allocations = it->next;
             }
 
+            DBG_MSG("Freed: size: %d, us: %d, sb: %d, off: %d\n", it->size, used_subblocks, block, offset);
             free(it);
             break;
         }
@@ -366,6 +385,8 @@ void alloc_free(void* pool, void* p) {
         last = it;
         it = it->next;
     }
+
+    DBG_MSG("Free done\n");
 }
 
 void alloc_defrag_start(void* pool) {
diff --git a/GL/texture.c b/GL/texture.c
index e60200c..5fcf473 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -947,10 +947,7 @@ static GLint _cleanInternalFormat(GLint internalFormat) {
     case GL_COLOR_INDEX4_TWID_KOS:
         return internalFormat;
     case GL_COLOR_INDEX4_EXT:
-        // FIXME: We can't auto twiddle GL_COLOR_INDEX4 -> GL_COLOR_INDEX4_TWID_KOS
-        // so until we can, we need to not twiddle 4bpp paletted textures automatically
-        // return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
-        return internalFormat;
+        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
     case GL_COLOR_INDEX8_EXT:        
         return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX8_TWID_KOS : internalFormat;
     case GL_RGB_TWID_KOS:
@@ -1250,9 +1247,8 @@ static int _determineConversion(GLint internalFormat, GLenum format, GLenum type
         {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_UNSIGNED_BYTE, true, true},
         {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX, GL_BYTE, true, true},
 
-        /* FIXME: Implement 4bpp -> 4bpp twiddling
         {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX4_EXT, GL_UNSIGNED_BYTE, true, false},
-        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX4_EXT, GL_BYTE, true, false}, */
+        {NULL, GL_COLOR_INDEX4_TWID_KOS, GL_COLOR_INDEX4_EXT, GL_BYTE, true, false},
 
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX8_EXT, GL_UNSIGNED_BYTE, false, false},
         {NULL, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEX8_EXT, GL_BYTE, false, false},
@@ -1457,6 +1453,10 @@ static bool _glTexImage2DValidate(GLenum target, GLint level, GLint internalForm
     return true;
 }
 
+static inline GLboolean is4BPPFormat(GLenum format) {
+    return format == GL_COLOR_INDEX4_EXT || format == GL_COLOR_INDEX4_TWID_KOS;
+}
+
 void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                            GLsizei width, GLsizei height, GLint border,
                            GLenum format, GLenum type, const GLvoid *data) {
@@ -1605,14 +1605,32 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             }
         } else if(needs_conversion == 2) {
             // Twiddle
-            for(uint32_t i = 0; i < (width * height); ++i) {
-                uint32_t newLocation = twid_location(i, width, height);
-                dst = conversionBuffer + (destStride * newLocation);
+            if(is4BPPFormat(internalFormat) && is4BPPFormat(format)) {
+                // Special case twiddling. We have to unpack each src value
+                // and repack into the right place
+                for(uint32_t i = 0; i < (width * height); ++i) {
+                    uint32_t newLocation = twid_location(i, width, height);
 
-                for(int j = 0; j < destStride; ++j)
-                    *dst++ = *src++;
+                    // This is the src/dest byte, but we need to figure
+                    // out which half based on the odd/even of i
+                    src = &((uint8_t*) data)[i / 2];
+                    dst = &conversionBuffer[newLocation / 2];
+                    if(i % 2 == 0) {
+                        *dst = (*dst & 0xF) | (*src & 0xF0);
+                    } else {
+                        *dst = (*dst & 0xF0) | (*src & 0xF);
+                    }
+                }
+            } else {
+                for(uint32_t i = 0; i < (width * height); ++i) {
+                    uint32_t newLocation = twid_location(i, width, height);
+                    dst = conversionBuffer + (destStride * newLocation);
 
-                src += sourceStride;
+                    for(int j = 0; j < destStride; ++j)
+                        *dst++ = *src++;
+
+                    src += sourceStride;
+                }
             }
         } else if(needs_conversion == 3) {
             // Convert + twiddle
@@ -1623,14 +1641,11 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                 src += sourceStride;
             }
         } else if(pack) {
-            fprintf(stderr, "Just packing\n");
             FASTCPY(conversionBuffer, data, srcBytes);
         }
 
         if(pack) {
             assert(isPaletted);
-
-            fprintf(stderr, "Packing data...\n");
             size_t dst_byte = 0;
             for(size_t src_byte = 0; src_byte < srcBytes; ++src_byte) {
                 uint8_t v = conversionBuffer[src_byte];
@@ -1645,11 +1660,8 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                     dst_byte++;
                 }
             }
-
-            fprintf(stderr, "Packed\n");
         }
 
-        fprintf(stderr, "Uploading data (%d)...\n", destBytes);
         FASTCPY(targetData, conversionBuffer, destBytes);
         free(conversionBuffer);
     } else {
@@ -1659,15 +1671,12 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
         gl_assert(destBytes);
 
         /* No conversion? Just copy the data, and the pvr_format is correct */
-        fprintf(stderr, "Uploading data (%d)...\n", destBytes);
         FASTCPY(targetData, data, destBytes);
         gl_assert(active->index == originalId);
     }
 
     gl_assert(active->index == originalId);
     _glGPUStateMarkDirty();
-
-    fprintf(stderr, "Done\n");
 }
 
 void APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param) {
diff --git a/tests/test_allocator.h b/tests/test_allocator.h
index 1c5d7e9..f31e8aa 100644
--- a/tests/test_allocator.h
+++ b/tests/test_allocator.h
@@ -55,6 +55,26 @@ public:
         free(large_pool);
     }
 
+    void test_complex_case2() {
+        uint8_t* large_pool = (uint8_t*) malloc(8 * 1024 * 1024);
+        alloc_init(large_pool, 8 * 1024 * 1024);
+
+        void* a1 = alloc_malloc(large_pool, 131072);
+        alloc_free(large_pool, a1);
+
+        alloc_malloc(large_pool, 174768);
+        void* a2 = alloc_malloc(large_pool, 131072);
+        alloc_free(large_pool, a2);
+
+        alloc_malloc(large_pool, 174768);
+        void* a3 = alloc_malloc(large_pool, 128);
+
+        alloc_free(large_pool, a3);
+
+        alloc_shutdown(large_pool);
+        free(large_pool);
+    }
+
     void test_alloc_malloc() {
         alloc_init(pool, sizeof(pool));
 

From db9e1cd42434a5c66f815af9af0dbdfd38948eda Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 8 Sep 2023 09:13:33 +0100
Subject: [PATCH 20/28] Fall back to unaligned if there's no more aligned
 spaced

---
 GL/alloc/alloc.c       | 89 ++++++++++++++++++++++++++++++------------
 tests/test_allocator.h | 35 ++++++++++++++++-
 2 files changed, 99 insertions(+), 25 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 1a03cc3..6b787d6 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -44,6 +44,7 @@
  *  - Allocations < 2048 can still cross boundaries
  *  - Only operates on one pool (ignores what you pass)
  *  - If there are no 2048 aligned blocks, we should fall-back to unaligned
+ *  - Defrag not implemented!
  */
 
 #include <assert.h>
@@ -61,8 +62,12 @@
 #endif
 
 
-static inline int round_up(int n, int multiple)
+static inline intptr_t round_up(intptr_t n, int multiple)
 {
+    if((n % multiple) == 0) {
+        return n;
+    }
+
     assert(multiple);
     return ((n + multiple - 1) / multiple) * multiple;
 }
@@ -112,6 +117,23 @@ size_t alloc_block_count(void* pool) {
     return pool_header.block_count;
 }
 
+static inline void* calc_address(
+    uint8_t* block_usage_iterator,
+    int bit_offset,
+    size_t required_subblocks,
+    size_t* start_subblock_out
+) {
+    uintptr_t offset = (block_usage_iterator - pool_header.block_usage) * 8;
+    offset += (bit_offset + 1);
+    offset -= required_subblocks;
+
+    if(start_subblock_out) {
+        *start_subblock_out = offset;
+    }
+
+    return pool_header.base_address + (offset * 256);
+}
+
 void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_subblock, size_t* required_subblocks);
 
 void* alloc_next_available(void* pool, size_t required_size) {
@@ -125,7 +147,7 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
     uint32_t required_subblocks = (required_size / 256);
     if(required_size % 256) required_subblocks += 1;
 
-    uint8_t* end = pool_header.block_usage + pool_header.block_count;
+    // uint8_t* end = pool_header.block_usage + pool_header.block_count;
 
     /* Anything gte to 2048 must be aligned to a 2048 boundary */
     bool requires_alignment = required_size >= 2048;
@@ -133,16 +155,27 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
     if(required_subblocks_out) {
         *required_subblocks_out = required_subblocks;
     }
-    while(it < end) {
-        uint32_t found_subblocks = 0;
 
+    /* This is a fallback option. If while we're searching we find a possible slot
+     * but it's not aligned, or it's straddling a 2k boundary, then we store
+     * it here and if we reach the end of the search and find nothing better
+     * we use this instead */
+
+    uint8_t* poor_option = NULL;
+    size_t poor_start_subblock = 0;
+
+    uint32_t found_subblocks = 0;
+    uint32_t found_poor_subblocks = 0;
+
+    for(size_t j = 0; j < pool_header.block_count; ++j, ++it) {
         /* We just need to find enough consecutive blocks */
-        while(found_subblocks < required_subblocks) {
+        if(found_subblocks < required_subblocks) {
             uint8_t t = *it;
 
             /* Optimisation only. Skip over full blocks */
             if(t == 255) {
                 found_subblocks = 0;
+                found_poor_subblocks = 0;
             } else {
                 /* Now let's see how many consecutive blocks we can find */
                 for(int i = 0; i < 8; ++i) {
@@ -153,35 +186,39 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                             found_subblocks = 0;
                         } else {
                             found_subblocks++;
-                            if(found_subblocks >= required_subblocks) {
-                                /* We found space! Now calculate the address */
-                                uintptr_t offset = (it - pool_header.block_usage) * 8;
-                                offset += (i + 1);
-                                offset -= required_subblocks;
-
-                                if(start_subblock_out) {
-                                    *start_subblock_out = offset;
-                                }
-
-                                return pool_header.base_address + (offset * 256);
-                            }
                         }
+
+                        found_poor_subblocks++;
+
+                        if(found_subblocks >= required_subblocks) {
+                            /* We found space! Now calculate the address */
+                            return calc_address(it, i, required_subblocks, start_subblock_out);
+                        }
+
+                        if(!poor_option && (found_poor_subblocks >= required_subblocks)) {
+                            poor_option = calc_address(it, i, required_subblocks, &poor_start_subblock);
+                        }
+
                     } else {
                         found_subblocks = 0;
+                        found_poor_subblocks = 0;
                     }
 
                     t <<= 1;
                 }
             }
-
-            ++it;
-            if(it >= end) {
-                return NULL;
-            }
         }
     }
 
-    return NULL;
+    if(poor_option) {
+        if(start_subblock_out) {
+            *start_subblock_out = poor_start_subblock;
+        }
+
+        return poor_option;
+    } else {
+        return NULL;
+    }
 }
 
 int alloc_init(void* pool, size_t size) {
@@ -200,7 +237,11 @@ int alloc_init(void* pool, size_t size) {
     memset(pool_header.block_usage, 0, sizeof(pool_header.block_usage));
     pool_header.pool = pool;
     pool_header.pool_size = size;
-    pool_header.base_address = (uint8_t*) round_up((uintptr_t) pool_header.pool, 2048);
+
+    intptr_t base_address = (intptr_t) pool_header.pool;
+    base_address = round_up(base_address, 2048);
+
+    pool_header.base_address = (uint8_t*) base_address;
     pool_header.block_count = ((p + size) - pool_header.base_address) / 2048;
     pool_header.allocations = NULL;
 
diff --git a/tests/test_allocator.h b/tests/test_allocator.h
index f31e8aa..5117f52 100644
--- a/tests/test_allocator.h
+++ b/tests/test_allocator.h
@@ -19,12 +19,45 @@ public:
     uint8_t __attribute__((aligned(2048))) pool[16 * 2048];
 
     void set_up() {
+        assert(((intptr_t) pool) % 2048 == 0);
     }
 
     void tear_down() {
         alloc_shutdown(pool);
     }
-    
+
+    void test_poor_alloc_aligned() {
+        /* If we try to allocate and there are no suitable aligned
+         * slots available, we fallback to any available unaligned slots */
+        alloc_init(pool, sizeof(pool));
+
+        // Leave only space for an unaligned block
+        alloc_malloc(pool, (15 * 2048) - 256);
+
+        // Should work, we have space (just) but it's not aligned
+        void* a1 = alloc_malloc(pool, 2048 + 256);
+        assert_is_not_null(a1);
+        assert_equal(a1, pool + ((15 * 2048) - 256));
+    }
+
+    void test_poor_alloc_straddling() {
+        /*
+         * If we try to allocate a small block, it should not
+         * cross a 2048 boundary unless there is no other option */
+        alloc_init(pool, sizeof(pool));
+        alloc_malloc(pool, (15 * 2048) - 256);
+        void* a1 = alloc_malloc(pool, 512);
+        assert_true((uintptr_t(a1) % 2048) == 0); // Should've aligned to the last 2048 block
+
+        /* Allocate the rest of the last block, this leaves a 256 block in the
+         * penultimate block */
+        alloc_malloc(pool, 1536);
+        alloc_free(pool, a1);
+
+        /* No choice but to straddle the boundary */
+        a1 = alloc_malloc(pool, 768);
+    }
+
     void test_alloc_init() {
         alloc_init(pool, sizeof(pool));
 

From 3308a57e5948aa09bb739279e265f37367471822 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Fri, 8 Sep 2023 17:49:46 +0100
Subject: [PATCH 21/28] Implement defragmenting the memory

---
 GL/alloc/alloc.c       | 169 ++++++++++++++++++++++++-----------------
 GL/alloc/alloc.h       |   6 +-
 GL/texture.c           |  36 +++++----
 tests/test_allocator.h |  48 ++++++++++--
 tools/test.h           |   8 +-
 5 files changed, 170 insertions(+), 97 deletions(-)

diff --git a/GL/alloc/alloc.c b/GL/alloc/alloc.c
index 6b787d6..6760ff4 100644
--- a/GL/alloc/alloc.c
+++ b/GL/alloc/alloc.c
@@ -6,7 +6,7 @@
 #include "alloc.h"
 
 
-/* This allocator is designed so that all allocations larger
+/* This allocator is designed so that ideally all allocations larger
  * than 2k, fall on a 2k boundary. Smaller allocations will
  * never cross a 2k boundary.
  *
@@ -15,9 +15,9 @@
  * blocks anyway as they have to be 2k aligned (so you'd need to
  * store them in reverse or something)
  *
- * Defragmenting the pool will move allocations less than 2k
- * first, and then shift any full 2k blocks to the start of the
- * address space.
+ * Defragmenting the pool will move larger allocations first, then
+ * smaller ones, recursively until you tell it to stop, or until things
+ * stop moving.
  *
  * The maximum pool size is 8M, made up of:
  *
@@ -41,10 +41,7 @@
  *
  * FIXME:
  *
- *  - Allocations < 2048 can still cross boundaries
  *  - Only operates on one pool (ignores what you pass)
- *  - If there are no 2048 aligned blocks, we should fall-back to unaligned
- *  - Defrag not implemented!
  */
 
 #include <assert.h>
@@ -90,7 +87,6 @@ typedef struct {
     size_t pool_size; // Size of the memory pool
     uint8_t* base_address; // First 2k aligned address in the pool
     size_t block_count;  // Number of 2k blocks in the pool
-    bool defrag_in_progress;
 
     /* It's frustrating that we need to do this dynamically
      * but we need to know the size allocated when we free()...
@@ -104,7 +100,7 @@ typedef struct {
 
 
 static PoolHeader pool_header = {
-    {0}, NULL, 0, NULL, 0, false, NULL
+    {0}, NULL, 0, NULL, 0, NULL
 };
 
 void* alloc_base_address(void* pool) {
@@ -147,8 +143,6 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
     uint32_t required_subblocks = (required_size / 256);
     if(required_size % 256) required_subblocks += 1;
 
-    // uint8_t* end = pool_header.block_usage + pool_header.block_count;
-
     /* Anything gte to 2048 must be aligned to a 2048 boundary */
     bool requires_alignment = required_size >= 2048;
 
@@ -160,7 +154,6 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
      * but it's not aligned, or it's straddling a 2k boundary, then we store
      * it here and if we reach the end of the search and find nothing better
      * we use this instead */
-
     uint8_t* poor_option = NULL;
     size_t poor_start_subblock = 0;
 
@@ -180,7 +173,16 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                 /* Now let's see how many consecutive blocks we can find */
                 for(int i = 0; i < 8; ++i) {
                     if((t & 0x80) == 0) {
-                        if(requires_alignment && found_subblocks == 0 && i != 0) {
+                        bool block_overflow = (
+                            required_size < 2048 && found_subblocks > 0 && i == 0
+                        );
+
+                        bool reset_subblocks = (
+                            (requires_alignment && found_subblocks == 0 && i != 0) ||
+                            block_overflow
+                        );
+
+                        if(reset_subblocks) {
                             // Ignore this subblock, because we want the first subblock to be aligned
                             // at a 2048 boundary and this one isn't (i != 0)
                             found_subblocks = 0;
@@ -188,6 +190,12 @@ void* alloc_next_available_ex(void* pool, size_t required_size, size_t* start_su
                             found_subblocks++;
                         }
 
+                        /* If we reset the subblocks due to an overflow, we still
+                         * want to count this free subblock in our count */
+                        if(block_overflow) {
+                            found_subblocks++;
+                        }
+
                         found_poor_subblocks++;
 
                         if(found_subblocks >= required_subblocks) {
@@ -234,7 +242,7 @@ int alloc_init(void* pool, size_t size) {
 
     uint8_t* p = (uint8_t*) pool;
 
-    memset(pool_header.block_usage, 0, sizeof(pool_header.block_usage));
+    memset(pool_header.block_usage, 0, BLOCK_COUNT);
     pool_header.pool = pool;
     pool_header.pool_size = size;
 
@@ -253,6 +261,10 @@ int alloc_init(void* pool, size_t size) {
 void alloc_shutdown(void* pool) {
     (void) pool;
 
+    if(!pool_header.pool) {
+        return;
+    }
+
     struct AllocEntry* it = pool_header.allocations;
     while(it) {
         struct AllocEntry* next = it->next;
@@ -261,6 +273,7 @@ void alloc_shutdown(void* pool) {
     }
 
     memset(&pool_header, 0, sizeof(pool_header));
+    pool_header.pool = NULL;
 }
 
 static inline uint32_t size_to_subblock_count(size_t size) {
@@ -285,10 +298,6 @@ void* alloc_malloc(void* pool, size_t size) {
     size_t start_subblock, required_subblocks;
     void* ret = alloc_next_available_ex(pool, size, &start_subblock, &required_subblocks);
 
-    if(size >= 2048) {
-        assert(((uintptr_t) ret) % 2048 == 0);
-    }
-
     if(ret) {
         size_t block;
         uint8_t offset;
@@ -367,6 +376,45 @@ void* alloc_malloc(void* pool, size_t size) {
     return ret;
 }
 
+static void alloc_release_blocks(struct AllocEntry* it) {
+    size_t used_subblocks = size_to_subblock_count(it->size);
+    size_t subblock = subblock_from_pointer(it->pointer);
+    size_t block;
+    uint8_t offset;
+    block_and_offset_from_subblock(subblock, &block, &offset);
+
+    uint8_t mask = 0;
+
+    DBG_MSG("Free: size: %d, us: %d, sb: %d, off: %d\n", it->size, used_subblocks, block, offset);
+
+    /* Wipe out any leading subblocks */
+    int c = (used_subblocks < 8) ? used_subblocks : 8;
+    for(int i = 0; i < c; ++i) {
+        mask |= (1 << (7 - (offset + i)));
+        used_subblocks--;
+    }
+
+    if(mask) {
+        pool_header.block_usage[block++] &= ~mask;
+    }
+
+    /* Clear any full blocks in the middle of the allocation */
+    while(used_subblocks > 8) {
+        pool_header.block_usage[block++] = 0;
+        used_subblocks -= 8;
+    }
+
+    /* Wipe out any trailing subblocks */
+    mask = 0;
+    for(size_t i = 0; i < used_subblocks; ++i) {
+        mask |= (1 << (7 - i));
+    }
+
+    if(mask) {
+        pool_header.block_usage[block++] &= ~mask;
+    }
+}
+
 void alloc_free(void* pool, void* p) {
     (void) pool;
 
@@ -374,42 +422,7 @@ void alloc_free(void* pool, void* p) {
     struct AllocEntry* last = NULL;
     while(it) {
         if(it->pointer == p) {
-            size_t used_subblocks = size_to_subblock_count(it->size);
-            size_t subblock = subblock_from_pointer(p);
-            size_t block;
-            uint8_t offset;
-            block_and_offset_from_subblock(subblock, &block, &offset);
-
-            uint8_t mask = 0;
-
-            DBG_MSG("Free: size: %d, us: %d, sb: %d, off: %d\n", it->size, used_subblocks, block, offset);
-
-            /* Wipe out any leading subblocks */
-            int c = (used_subblocks < 8) ? used_subblocks : 8;
-            for(int i = 0; i < c; ++i) {
-                mask |= (1 << (7 - (offset + i)));
-                used_subblocks--;
-            }
-
-            if(mask) {
-                pool_header.block_usage[block++] &= ~mask;
-            }
-
-            /* Clear any full blocks in the middle of the allocation */
-            while(used_subblocks > 8) {
-                pool_header.block_usage[block++] = 0;
-                used_subblocks -= 8;
-            }
-
-            /* Wipe out any trailing subblocks */
-            mask = 0;
-            for(size_t i = 0; i < used_subblocks; ++i) {
-                mask |= (1 << (7 - i));
-            }
-
-            if(mask) {
-                pool_header.block_usage[block++] &= ~mask;
-            }
+            alloc_release_blocks(it);
 
             if(last) {
                 last->next = it->next;
@@ -430,24 +443,40 @@ void alloc_free(void* pool, void* p) {
     DBG_MSG("Free done\n");
 }
 
-void alloc_defrag_start(void* pool) {
-    (void) pool;
-    pool_header.defrag_in_progress = true;
-}
+void alloc_run_defrag(void* pool, defrag_address_move callback, int max_iterations, void* user_data) {
 
-void* alloc_defrag_address(void* pool, void* p) {
-    (void) pool;
-    return p;
-}
+    for(int i = 0; i < max_iterations; ++i) {
+        bool move_occurred = false;
 
-void alloc_defrag_commit(void* pool) {
-    (void) pool;
-    pool_header.defrag_in_progress = false;
-}
+        struct AllocEntry* it = pool_header.allocations;
 
-bool alloc_defrag_in_progress(void* pool) {
-    (void) pool;
-    return pool_header.defrag_in_progress;
+        if(!it) {
+            return;
+        }
+
+        while(it) {
+            void* potential_dest = alloc_next_available(pool, it->size);
+            if(potential_dest < it->pointer) {
+                potential_dest = alloc_malloc(pool, it->size);
+                memcpy(potential_dest, it->pointer, it->size);
+
+                /* Mark this block as now free, but don't fiddle with the
+                 * allocation list */
+                alloc_release_blocks(it);
+
+                callback(it->pointer, potential_dest, user_data);
+
+                it->pointer = potential_dest;
+                move_occurred = true;
+            }
+
+            it = it->next;
+        }
+
+        if(!move_occurred) {
+            return;
+        }
+    }
 }
 
 static inline uint8_t count_ones(uint8_t byte) {
@@ -459,6 +488,8 @@ static inline uint8_t count_ones(uint8_t byte) {
 }
 
 size_t alloc_count_free(void* pool) {
+    (void) pool;
+
     uint8_t* it = pool_header.block_usage;
     uint8_t* end = it + pool_header.block_count;
 
diff --git a/GL/alloc/alloc.h b/GL/alloc/alloc.h
index d69bb9f..49400f9 100644
--- a/GL/alloc/alloc.h
+++ b/GL/alloc/alloc.h
@@ -14,10 +14,8 @@ void alloc_shutdown(void* pool);
 void *alloc_malloc(void* pool, size_t size);
 void alloc_free(void* pool, void* p);
 
-void alloc_defrag_start(void* pool);
-void* alloc_defrag_address(void* pool, void* p);
-void alloc_defrag_commit(void* pool);
-bool alloc_defrag_in_progress(void* pool);
+typedef void (defrag_address_move)(void*, void*, void*);
+void alloc_run_defrag(void* pool, defrag_address_move callback, int max_iterations, void* user_data);
 
 size_t alloc_count_free(void* pool);
 size_t alloc_count_continuous(void* pool);
diff --git a/GL/texture.c b/GL/texture.c
index 5fcf473..4871e12 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -78,8 +78,8 @@ static const unsigned short MortonTable256[256] =
 /* Given a 0-based texel location, and an image width/height. Return the
  * new 0-based texel location */
 GL_FORCE_INLINE uint32_t twid_location(uint32_t i, uint32_t w, uint32_t h) {
-    uint16_t y = i % w;
-    uint16_t x = i / w;
+    uint16_t y = i / w;
+    uint16_t x = i % w;
 
     return MortonTable256[y >> 8]   << 17 |
            MortonTable256[x >> 8]   << 16 |
@@ -1611,14 +1611,21 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
                 for(uint32_t i = 0; i < (width * height); ++i) {
                     uint32_t newLocation = twid_location(i, width, height);
 
+                    assert(newLocation < (width * height));
+                    assert((newLocation / 2) < destBytes);
+                    assert((i / 2) < srcBytes);
+
                     // This is the src/dest byte, but we need to figure
                     // out which half based on the odd/even of i
                     src = &((uint8_t*) data)[i / 2];
                     dst = &conversionBuffer[newLocation / 2];
-                    if(i % 2 == 0) {
-                        *dst = (*dst & 0xF) | (*src & 0xF0);
+
+                    uint8_t src_value = (i % 2) == 0 ? (*src >> 4) : (*src & 0xF);
+
+                    if(newLocation % 2 == 0) {
+                        *dst = (*dst & 0xF) | (src_value << 4);
                     } else {
-                        *dst = (*dst & 0xF0) | (*src & 0xF);
+                        *dst = (*dst & 0xF0) | (src_value & 0xF);
                     }
                 }
             } else {
@@ -2044,21 +2051,20 @@ GLuint _glFreeContiguousTextureMemory() {
     return alloc_count_continuous(ALLOC_BASE);
 }
 
-GLAPI GLvoid APIENTRY glDefragmentTextureMemory_KOS(void) {
-    alloc_defrag_start(ALLOC_BASE);
-
-    GLuint id;
-
-    /* Replace all texture pointers */
-    for(id = 0; id < MAX_TEXTURE_COUNT; id++){
+static void update_data_pointer(void* src, void* dst, void*) {
+    for(size_t id = 0; id < MAX_TEXTURE_COUNT; id++){
         TextureObject* txr = (TextureObject*) named_array_get(&TEXTURE_OBJECTS, id);
-        if(txr){
+        if(txr && txr->data == src) {
+            fprintf(stderr, "Defrag moved 0x%x -> 0x%x\n", src, dst);
             gl_assert(txr->index == id);
-            txr->data = alloc_defrag_address(ALLOC_BASE, txr->data);
+            txr->data = dst;
+            return;
         }
     }
+}
 
-    alloc_defrag_commit(ALLOC_BASE);
+GLAPI GLvoid APIENTRY glDefragmentTextureMemory_KOS(void) {
+    alloc_run_defrag(ALLOC_BASE, update_data_pointer, 5, NULL);
 }
 
 GLAPI void APIENTRY glGetTexImage(GLenum tex, GLint lod, GLenum format, GLenum type, GLvoid* img) {
diff --git a/tests/test_allocator.h b/tests/test_allocator.h
index 5117f52..5967983 100644
--- a/tests/test_allocator.h
+++ b/tests/test_allocator.h
@@ -1,7 +1,9 @@
 #include "tools/test.h"
 
-#include <stdint.h>
-#include <assert.h>
+#include <cstdint>
+#include <cassert>
+#include <malloc.h>
+#include <utility>
 
 #include <GL/gl.h>
 #include <GL/glkos.h>
@@ -14,22 +16,52 @@ static inline int round_up(int n, int multiple)
     return ((n + multiple - 1) / multiple) * multiple;
 }
 
+#define POOL_SIZE (16 * 2048)
+
 class AllocatorTests : public test::TestCase {
 public:
-    uint8_t __attribute__((aligned(2048))) pool[16 * 2048];
+    uint8_t* pool = NULL;
+
+    std::vector<std::pair<void*, void*>> defrag_moves;
 
     void set_up() {
+        pool = (uint8_t*) memalign(2048, POOL_SIZE);
         assert(((intptr_t) pool) % 2048 == 0);
     }
 
     void tear_down() {
         alloc_shutdown(pool);
+        free(pool);
+    }
+
+    static void on_defrag(void* src, void* dst, void* user_data) {
+        AllocatorTests* self = (AllocatorTests*) user_data;
+        self->defrag_moves.push_back(std::make_pair(src, dst));
+    }
+
+    void test_defrag() {
+        alloc_init(pool, POOL_SIZE);
+
+        alloc_malloc(pool, 256);
+        void* a2 = alloc_malloc(pool, 256);
+        void* a3 = alloc_malloc(pool, 256);
+
+        alloc_free(pool, a2);
+
+        alloc_run_defrag(pool, &AllocatorTests::on_defrag, 5, this);
+
+        assert_equal(defrag_moves.size(), 1u); // Moved a3 -> a2
+
+        assert_equal(defrag_moves[0].first, a3);
+        assert_equal(defrag_moves[0].second, a2);
+
+        assert_equal(alloc_malloc(pool, 256), a3);
     }
 
     void test_poor_alloc_aligned() {
         /* If we try to allocate and there are no suitable aligned
          * slots available, we fallback to any available unaligned slots */
-        alloc_init(pool, sizeof(pool));
+        alloc_init(pool, POOL_SIZE);
 
         // Leave only space for an unaligned block
         alloc_malloc(pool, (15 * 2048) - 256);
@@ -44,7 +76,7 @@ public:
         /*
          * If we try to allocate a small block, it should not
          * cross a 2048 boundary unless there is no other option */
-        alloc_init(pool, sizeof(pool));
+        alloc_init(pool, POOL_SIZE);
         alloc_malloc(pool, (15 * 2048) - 256);
         void* a1 = alloc_malloc(pool, 512);
         assert_true((uintptr_t(a1) % 2048) == 0); // Should've aligned to the last 2048 block
@@ -59,14 +91,14 @@ public:
     }
 
     void test_alloc_init() {
-        alloc_init(pool, sizeof(pool));
+        alloc_init(pool, POOL_SIZE);
 
         void* expected_base_address = (void*) round_up((uintptr_t) pool, 2048);
         assert_equal(alloc_next_available(pool, 16), expected_base_address);
         assert_equal(alloc_base_address(pool), expected_base_address);
 
         size_t expected_blocks = (
-            uintptr_t(pool + sizeof(pool)) -
+            uintptr_t(pool + POOL_SIZE) -
             uintptr_t(expected_base_address)
         ) / 2048;
 
@@ -109,7 +141,7 @@ public:
     }
 
     void test_alloc_malloc() {
-        alloc_init(pool, sizeof(pool));
+        alloc_init(pool, POOL_SIZE);
 
         uint8_t* base_address = (uint8_t*) alloc_base_address(pool);
         void* a1 = alloc_malloc(pool, 1024);
diff --git a/tools/test.h b/tools/test.h
index 6341a36..b4ef409 100644
--- a/tools/test.h
+++ b/tools/test.h
@@ -289,7 +289,13 @@ public:
             std::function<void()> func = std::bind(method, dynamic_cast<T*>(instance.get()));
             tests_.push_back([=]() {
                 instance->set_up();
-                func();
+                try {
+                    func();
+                } catch(...) {
+                    instance->tear_down();
+                    throw;
+                }
+
                 instance->tear_down();
             });
         }

From 61e5a7a2a6c72201c3b1815ddc998cce47f01b88 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Sun, 10 Sep 2023 19:41:25 +0100
Subject: [PATCH 22/28] More twiddling work

---
 GL/texture.c                    |  68 +++++++++++++++++++++++++++++---
 samples/nehe06/main.c           |   2 +-
 samples/nehe06/romdisk/NeHe.bmp | Bin 196662 -> 522 bytes
 samples/paletted_pcx/main.c     |   4 +-
 4 files changed, 66 insertions(+), 8 deletions(-)

diff --git a/GL/texture.c b/GL/texture.c
index 4871e12..a60c715 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -75,16 +75,70 @@ static const unsigned short MortonTable256[256] =
 };
 
 
+static struct TwiddleTable {
+    int32_t width;
+    int32_t height;
+    int32_t* table;
+} TWIDDLE_TABLE = {0, 0, NULL};
+
+
+int32_t twiddle_recurse(int32_t* table, int32_t stride, int32_t x, int32_t y, int32_t block_size, int32_t idx) {
+    int32_t prev_idx = idx;
+    if(block_size == 1) {
+        table[idx++] = y * stride + x;
+    } else {
+        block_size = block_size >> 1;
+        idx += twiddle_recurse(table, stride, x, y, block_size, idx);
+        idx += twiddle_recurse(table, stride, x, y + block_size, block_size, idx);
+        idx += twiddle_recurse(table, stride, x + block_size, y, block_size, idx);
+        idx += twiddle_recurse(table, stride, x + block_size, y + block_size, block_size, idx);
+    }
+
+    return (idx - prev_idx);
+}
+
+void build_twiddle_table(int32_t* table, int32_t w, int32_t h) {
+    free(TWIDDLE_TABLE.table);
+    TWIDDLE_TABLE.table = (int32_t*) malloc(w * h * sizeof(int32_t));
+    TWIDDLE_TABLE.width = w;
+    TWIDDLE_TABLE.height = h;
+
+    int32_t idx = 0;
+
+    if(w < h) {
+        for(int32_t i = 0; i < h; i += w) {
+            idx += twiddle_recurse(table, w, 0, i, w, idx);
+        }
+    } else {
+        for(int32_t i = 0; i < w; i += h) {
+            idx += twiddle_recurse(table, w, i, 0, h, idx);
+        }
+    }
+}
+
 /* Given a 0-based texel location, and an image width/height. Return the
  * new 0-based texel location */
 GL_FORCE_INLINE uint32_t twid_location(uint32_t i, uint32_t w, uint32_t h) {
-    uint16_t y = i / w;
-    uint16_t x = i % w;
+    if(TWIDDLE_TABLE.width != w || TWIDDLE_TABLE.height != h || !TWIDDLE_TABLE.table) {
+        build_twiddle_table(TWIDDLE_TABLE.table, w, h);
+    }
 
-    return MortonTable256[y >> 8]   << 17 |
-           MortonTable256[x >> 8]   << 16 |
-           MortonTable256[y & 0xFF] <<  1 |
-           MortonTable256[x & 0xFF];
+    uint32_t ret = TWIDDLE_TABLE.table[i];
+    fprintf(stderr, "%d -> %d\n", i, ret);
+
+    return ret;
+
+//    uint32_t x = i % w;
+//    uint32_t y = i / w;
+
+//    uint32_t ret = MortonTable256[y >> 8]   << 17 |
+//           MortonTable256[x >> 8]   << 16 |
+//           MortonTable256[y & 0xFF] <<  1 |
+//           MortonTable256[x & 0xFF];
+
+//    uint32_t min = (w < h) ? w : h;
+//    uint32_t r = (x / min + y / min) * min * min / 2;
+//    return ret + r;
 }
 
 
@@ -1024,6 +1078,8 @@ static GLuint _determinePVRFormat(GLint internalFormat) {
     /* Given a cleaned internalFormat, return the Dreamcast format
      * that can hold it
      */
+
+    fprintf(stderr, "Internal format -> 0x%x\n", internalFormat);
     switch(internalFormat) {
     case GL_RGB565_KOS:
         return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED;
diff --git a/samples/nehe06/main.c b/samples/nehe06/main.c
index 7f32af5..21aaa15 100644
--- a/samples/nehe06/main.c
+++ b/samples/nehe06/main.c
@@ -53,7 +53,7 @@ void LoadGLTextures() {
 
     // 2d texture, level of detail 0 (normal), 3 components (red, green, blue), x size from image, y size from image,
     // border 0 (normal), rgb color data, unsigned byte data, and finally the data itself.
-    glTexImage2D(GL_TEXTURE_2D, 0, 3, image1->sizeX, image1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, image1->data);
+    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, image1->sizeX, image1->sizeY, 0, GL_RGB, GL_UNSIGNED_BYTE, image1->data);
 
     free(image1);
 }
diff --git a/samples/nehe06/romdisk/NeHe.bmp b/samples/nehe06/romdisk/NeHe.bmp
index 6b3db10f2b8d60997f7e213255809961985c2ef3..06f8a229e75734c035a0203715ca36297f0c68b4 100644
GIT binary patch
literal 522
zcmZ?r<ziw0gDxOh1H=MA%mKuV3=%++fuVtsfkBuXg24h{;y(ie1c7-@?m@)}IpSDQ
zYmpSg%|v1RS7AUy|5O-&2<8A3#Xvzc#SreGQctS;$x#1S1sH4SAp;RX3m=H#K=lCo
C43AF$

literal 196662
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

diff --git a/samples/paletted_pcx/main.c b/samples/paletted_pcx/main.c
index 7599dcb..f306481 100644
--- a/samples/paletted_pcx/main.c
+++ b/samples/paletted_pcx/main.c
@@ -281,6 +281,8 @@ int BMP_GetPalette(FILE *pFile)
 		}
 		return 1;
 	}
+
+    fprintf(stderr, "BitCount: %d\n", BmpInfoHeader.BitCount);
 	return 0;
 }
 
@@ -346,7 +348,7 @@ int LoadPalettedBMP(const char* filename, Image* image)
 	}
 
 	if (!BMP_GetPalette(fp)) {
-		printf("Only 16c BMP are supported for this sample");
+        printf("Only 16c BMP are supported for this sample\n");
 		return 0;
 	}
 

From 951ece6d198004ff60b77cb73af324db28b64b25 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 17:25:47 +0100
Subject: [PATCH 23/28] Add test job to CI

---
 .gitlab-ci.yml                  |  18 +++++++++++++++++-
 samples/nehe06/romdisk/NeHe.bmp | Bin 522 -> 196662 bytes
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0f90dcd..701e2a9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,6 @@
 stages:
   - build
+  - test
 
 build:sh4-gcc:
   stage: build
@@ -17,7 +18,7 @@ build:sh4-gcc:
     
 build:x86-gcc:
   stage: build
-  image: fedora:34
+  image: fedora:38
   before_script:
     - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686
   script:
@@ -25,3 +26,18 @@ build:x86-gcc:
     - cd builddir
     - cmake -DCMAKE_BUILD_TYPE=Release ..
     - make
+  artifacts:
+    paths:
+    - builddir/tests/gldc_tests
+    
+test:x86-gcc:
+  stage: build
+  image: fedora:38
+  before_script:
+    - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686
+  script:
+    - cd builddir/tests/
+    - SDL_VIDEODRIVER=dummy ./gldc_tests --junit-xml=report.xml
+  artifacts:
+   reports:
+    junit: builddir/tests/report.xml
diff --git a/samples/nehe06/romdisk/NeHe.bmp b/samples/nehe06/romdisk/NeHe.bmp
index 06f8a229e75734c035a0203715ca36297f0c68b4..6b3db10f2b8d60997f7e213255809961985c2ef3 100644
GIT binary patch
literal 196662
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

literal 522
zcmZ?r<ziw0gDxOh1H=MA%mKuV3=%++fuVtsfkBuXg24h{;y(ie1c7-@?m@)}IpSDQ
zYmpSg%|v1RS7AUy|5O-&2<8A3#Xvzc#SreGQctS;$x#1S1sH4SAp;RX3m=H#K=lCo
C43AF$


From 43d64a4957c916a584ee506de141d02d7fb95dd4 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 17:27:04 +0100
Subject: [PATCH 24/28] Fix twiddling issues

---
 GL/draw.c                                   |  24 +------
 GL/platforms/software.h                     |   3 +-
 GL/texture.c                                |  72 +++-----------------
 samples/nehe06/main.c                       |   1 -
 samples/nehe06/romdisk/NeHe.bmp             | Bin 196662 -> 98442 bytes
 samples/paletted_pcx/main.c                 |   3 +
 samples/paletted_pcx/romdisk/NeHe-Alpha.bmp | Bin 32886 -> 16586 bytes
 7 files changed, 16 insertions(+), 87 deletions(-)

diff --git a/GL/draw.c b/GL/draw.c
index 2fa6d88..38139d7 100644
--- a/GL/draw.c
+++ b/GL/draw.c
@@ -78,7 +78,7 @@ static void _readVertexData3f3f(const GLubyte* __restrict__ in, GLubyte* __restr
 
 // 10:10:10:2REV format
 static void _readVertexData1i3f(const GLubyte* in, GLubyte* out) {
-    const static float MULTIPLIER = 1.0f / 1023.0f;
+    static const float MULTIPLIER = 1.0f / 1023.0f;
 
     GLfloat* output = (GLfloat*) out;
 
@@ -585,7 +585,6 @@ static void _readPositionData(ReadDiffuseFunc func, const GLuint first, const GL
     const GLubyte* vptr = ((GLubyte*) ATTRIB_POINTERS.vertex.ptr + (first * vstride));
 
     float pos[3];
-    float w = 0.0f;
 
     ITERATE(count) {
         PREFETCH(vptr + vstride);
@@ -726,9 +725,7 @@ typedef struct {
 } Float2;
 
 static const Float3 F3Z = {0.0f, 0.0f, 1.0f};
-static const Float3 F3ZERO = {0.0f, 0.0f, 0.0f};
 static const Float2 F2ZERO = {0.0f, 0.0f};
-static const uint32_t U4ONE = ~0;
 
 static void generateElementsFastPath(
         SubmissionTarget* target, const GLsizei first, const GLuint count,
@@ -910,24 +907,6 @@ static void transform(SubmissionTarget* target) {
     TransformVertices(vertex, target->count);
 }
 
-static void mat_transform3(const float* xyz, const float* xyzOut, const uint32_t count, const uint32_t inStride, const uint32_t outStride) {
-    const uint8_t* dataIn = (const uint8_t*) xyz;
-    uint8_t* dataOut = (uint8_t*) xyzOut;
-
-    ITERATE(count) {
-        const float* in = (const float*) dataIn;
-        float* out = (float*) dataOut;
-
-        TransformVec3NoMod(
-            in,
-            out
-        );
-
-        dataIn += inStride;
-        dataOut += outStride;
-    }
-}
-
 static void mat_transform_normal3(const float* xyz, const float* xyzOut, const uint32_t count, const uint32_t inStride, const uint32_t outStride) {
     const uint8_t* dataIn = (const uint8_t*) xyz;
     uint8_t* dataOut = (uint8_t*) xyzOut;
@@ -1224,7 +1203,6 @@ GL_FORCE_INLINE void submitVertices(GLenum mode, GLsizei first, GLuint count, GL
     target->header_offset = vector_size;
     target->start_offset = target->header_offset + (header_required ? 1 : 0);
 
-    gl_assert(target->header_offset >= 0);
     gl_assert(target->start_offset >= target->header_offset);
     gl_assert(target->count);
 
diff --git a/GL/platforms/software.h b/GL/platforms/software.h
index bbb4f35..5fee317 100644
--- a/GL/platforms/software.h
+++ b/GL/platforms/software.h
@@ -48,7 +48,8 @@ void TransformVec3NoMod(const float* v, float* ret);
 
 /* Transform a 3-element normal using the stored matrix (w == 0)*/
 static inline void TransformNormalNoMod(const float* xIn, float* xOut) {
-
+    (void) xIn;
+    (void) xOut;
 }
 
 void TransformVertices(Vertex* vertices, const int count);
diff --git a/GL/texture.c b/GL/texture.c
index a60c715..fe1df47 100644
--- a/GL/texture.c
+++ b/GL/texture.c
@@ -38,54 +38,16 @@ static GLboolean TEXTURE_TWIDDLE_ENABLED = GL_FALSE;
 static void* ALLOC_BASE = NULL;
 static size_t ALLOC_SIZE = 0;
 
-static const unsigned short MortonTable256[256] =
-    {
-        0x0000, 0x0001, 0x0004, 0x0005, 0x0010, 0x0011, 0x0014, 0x0015,
-        0x0040, 0x0041, 0x0044, 0x0045, 0x0050, 0x0051, 0x0054, 0x0055,
-        0x0100, 0x0101, 0x0104, 0x0105, 0x0110, 0x0111, 0x0114, 0x0115,
-        0x0140, 0x0141, 0x0144, 0x0145, 0x0150, 0x0151, 0x0154, 0x0155,
-        0x0400, 0x0401, 0x0404, 0x0405, 0x0410, 0x0411, 0x0414, 0x0415,
-        0x0440, 0x0441, 0x0444, 0x0445, 0x0450, 0x0451, 0x0454, 0x0455,
-        0x0500, 0x0501, 0x0504, 0x0505, 0x0510, 0x0511, 0x0514, 0x0515,
-        0x0540, 0x0541, 0x0544, 0x0545, 0x0550, 0x0551, 0x0554, 0x0555,
-        0x1000, 0x1001, 0x1004, 0x1005, 0x1010, 0x1011, 0x1014, 0x1015,
-        0x1040, 0x1041, 0x1044, 0x1045, 0x1050, 0x1051, 0x1054, 0x1055,
-        0x1100, 0x1101, 0x1104, 0x1105, 0x1110, 0x1111, 0x1114, 0x1115,
-        0x1140, 0x1141, 0x1144, 0x1145, 0x1150, 0x1151, 0x1154, 0x1155,
-        0x1400, 0x1401, 0x1404, 0x1405, 0x1410, 0x1411, 0x1414, 0x1415,
-        0x1440, 0x1441, 0x1444, 0x1445, 0x1450, 0x1451, 0x1454, 0x1455,
-        0x1500, 0x1501, 0x1504, 0x1505, 0x1510, 0x1511, 0x1514, 0x1515,
-        0x1540, 0x1541, 0x1544, 0x1545, 0x1550, 0x1551, 0x1554, 0x1555,
-        0x4000, 0x4001, 0x4004, 0x4005, 0x4010, 0x4011, 0x4014, 0x4015,
-        0x4040, 0x4041, 0x4044, 0x4045, 0x4050, 0x4051, 0x4054, 0x4055,
-        0x4100, 0x4101, 0x4104, 0x4105, 0x4110, 0x4111, 0x4114, 0x4115,
-        0x4140, 0x4141, 0x4144, 0x4145, 0x4150, 0x4151, 0x4154, 0x4155,
-        0x4400, 0x4401, 0x4404, 0x4405, 0x4410, 0x4411, 0x4414, 0x4415,
-        0x4440, 0x4441, 0x4444, 0x4445, 0x4450, 0x4451, 0x4454, 0x4455,
-        0x4500, 0x4501, 0x4504, 0x4505, 0x4510, 0x4511, 0x4514, 0x4515,
-        0x4540, 0x4541, 0x4544, 0x4545, 0x4550, 0x4551, 0x4554, 0x4555,
-        0x5000, 0x5001, 0x5004, 0x5005, 0x5010, 0x5011, 0x5014, 0x5015,
-        0x5040, 0x5041, 0x5044, 0x5045, 0x5050, 0x5051, 0x5054, 0x5055,
-        0x5100, 0x5101, 0x5104, 0x5105, 0x5110, 0x5111, 0x5114, 0x5115,
-        0x5140, 0x5141, 0x5144, 0x5145, 0x5150, 0x5151, 0x5154, 0x5155,
-        0x5400, 0x5401, 0x5404, 0x5405, 0x5410, 0x5411, 0x5414, 0x5415,
-        0x5440, 0x5441, 0x5444, 0x5445, 0x5450, 0x5451, 0x5454, 0x5455,
-        0x5500, 0x5501, 0x5504, 0x5505, 0x5510, 0x5511, 0x5514, 0x5515,
-        0x5540, 0x5541, 0x5544, 0x5545, 0x5550, 0x5551, 0x5554, 0x5555
-};
-
-
 static struct TwiddleTable {
     int32_t width;
     int32_t height;
     int32_t* table;
 } TWIDDLE_TABLE = {0, 0, NULL};
 
-
 int32_t twiddle_recurse(int32_t* table, int32_t stride, int32_t x, int32_t y, int32_t block_size, int32_t idx) {
     int32_t prev_idx = idx;
     if(block_size == 1) {
-        table[idx++] = y * stride + x;
+        table[y * stride + x] = idx++;
     } else {
         block_size = block_size >> 1;
         idx += twiddle_recurse(table, stride, x, y, block_size, idx);
@@ -97,7 +59,7 @@ int32_t twiddle_recurse(int32_t* table, int32_t stride, int32_t x, int32_t y, in
     return (idx - prev_idx);
 }
 
-void build_twiddle_table(int32_t* table, int32_t w, int32_t h) {
+void build_twiddle_table(int32_t w, int32_t h) {
     free(TWIDDLE_TABLE.table);
     TWIDDLE_TABLE.table = (int32_t*) malloc(w * h * sizeof(int32_t));
     TWIDDLE_TABLE.width = w;
@@ -107,11 +69,11 @@ void build_twiddle_table(int32_t* table, int32_t w, int32_t h) {
 
     if(w < h) {
         for(int32_t i = 0; i < h; i += w) {
-            idx += twiddle_recurse(table, w, 0, i, w, idx);
+            idx += twiddle_recurse(TWIDDLE_TABLE.table, w, 0, i, w, idx);
         }
     } else {
         for(int32_t i = 0; i < w; i += h) {
-            idx += twiddle_recurse(table, w, i, 0, h, idx);
+            idx += twiddle_recurse(TWIDDLE_TABLE.table, w, i, 0, h, idx);
         }
     }
 }
@@ -120,25 +82,11 @@ void build_twiddle_table(int32_t* table, int32_t w, int32_t h) {
  * new 0-based texel location */
 GL_FORCE_INLINE uint32_t twid_location(uint32_t i, uint32_t w, uint32_t h) {
     if(TWIDDLE_TABLE.width != w || TWIDDLE_TABLE.height != h || !TWIDDLE_TABLE.table) {
-        build_twiddle_table(TWIDDLE_TABLE.table, w, h);
+        build_twiddle_table(w, h);
     }
 
     uint32_t ret = TWIDDLE_TABLE.table[i];
-    fprintf(stderr, "%d -> %d\n", i, ret);
-
     return ret;
-
-//    uint32_t x = i % w;
-//    uint32_t y = i / w;
-
-//    uint32_t ret = MortonTable256[y >> 8]   << 17 |
-//           MortonTable256[x >> 8]   << 16 |
-//           MortonTable256[y & 0xFF] <<  1 |
-//           MortonTable256[x & 0xFF];
-
-//    uint32_t min = (w < h) ? w : h;
-//    uint32_t r = (x / min + y / min) * min * min / 2;
-//    return ret + r;
 }
 
 
@@ -295,7 +243,6 @@ void _glApplyColorTable(TexturePalette* src) {
 
     GLushort i;
     GLushort offset = src->size * src->bank;
-
     for(i = 0; i < src->width; ++i) {
         GLubyte* entry = &src->data[i * 4];
 
@@ -1000,10 +947,12 @@ static GLint _cleanInternalFormat(GLint internalFormat) {
     case GL_COLOR_INDEX8_TWID_KOS:
     case GL_COLOR_INDEX4_TWID_KOS:
         return internalFormat;
+    /* Paletted textures are always twiddled.. otherwise they don't work! */
     case GL_COLOR_INDEX4_EXT:
-        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX4_TWID_KOS : internalFormat;
+        return GL_COLOR_INDEX4_TWID_KOS;
     case GL_COLOR_INDEX8_EXT:        
-        return (TEXTURE_TWIDDLE_ENABLED) ? GL_COLOR_INDEX8_TWID_KOS : internalFormat;
+        return GL_COLOR_INDEX8_TWID_KOS;
+
     case GL_RGB_TWID_KOS:
         return GL_RGB565_TWID_KOS;
     case GL_RGBA_TWID_KOS:
@@ -1079,7 +1028,6 @@ static GLuint _determinePVRFormat(GLint internalFormat) {
      * that can hold it
      */
 
-    fprintf(stderr, "Internal format -> 0x%x\n", internalFormat);
     switch(internalFormat) {
     case GL_RGB565_KOS:
         return GPU_TXRFMT_RGB565 | GPU_TXRFMT_NONTWIDDLED;
@@ -1700,8 +1648,8 @@ void APIENTRY glTexImage2D(GLenum target, GLint level, GLint internalFormat,
             for(uint32_t i = 0; i < (width * height); ++i) {
                 uint32_t newLocation = twid_location(i, width, height);
                 dst = conversionBuffer + (destStride * newLocation);
+                src = data + (sourceStride * i);
                 conversion(src, dst);
-                src += sourceStride;
             }
         } else if(pack) {
             FASTCPY(conversionBuffer, data, srcBytes);
diff --git a/samples/nehe06/main.c b/samples/nehe06/main.c
index 21aaa15..543c3a2 100644
--- a/samples/nehe06/main.c
+++ b/samples/nehe06/main.c
@@ -61,7 +61,6 @@ void LoadGLTextures() {
 /* A general OpenGL initialization function.  Sets all of the initial parameters. */
 void InitGL(int Width, int Height)	        // We call this right after our OpenGL window is created.
 {
-    glEnable(GL_TEXTURE_TWIDDLE_KOS);
     LoadGLTextures();
     glEnable(GL_TEXTURE_2D);
     glClearColor(0.0f, 0.0f, 0.0f, 0.0f);		// This Will Clear The Background Color To Black
diff --git a/samples/nehe06/romdisk/NeHe.bmp b/samples/nehe06/romdisk/NeHe.bmp
index 6b3db10f2b8d60997f7e213255809961985c2ef3..ad2171df184e5b0e600054579faf304e98d5b506 100644
GIT binary patch
literal 98442
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

literal 196662
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

diff --git a/samples/paletted_pcx/main.c b/samples/paletted_pcx/main.c
index f306481..e397ab7 100644
--- a/samples/paletted_pcx/main.c
+++ b/samples/paletted_pcx/main.c
@@ -254,6 +254,8 @@ int BMP_Infos(FILE *pFile, uint32_t *width, uint32_t *height)
 	*width = (uint32_t)BmpInfoHeader.Width;
 	*height = (uint32_t)BmpInfoHeader.Height;
 
+    fseek(pFile, BmpInfoHeader.Size + 14, SEEK_SET);
+
 	return 1;
 }
 
@@ -270,6 +272,7 @@ int BMP_GetPalette(FILE *pFile)
 		bitCount = BmpInfoHeader.ClrImportant * sizeof(RGB_QUAD);
 
 		if (fread(BmpRgbQuad, 1, bitCount, pFile) != bitCount){
+            fprintf(stderr, "Failed to read palette: %d\n", bitCount);
 			return 0;
 		}
 
diff --git a/samples/paletted_pcx/romdisk/NeHe-Alpha.bmp b/samples/paletted_pcx/romdisk/NeHe-Alpha.bmp
index db96b15c092cb4ca6756dd4886aeeb25a420961e..d8d9dea7ca9d685826dd72fb7a01cc347a21a775 100644
GIT binary patch
literal 16586
zcmeI3Uu@&ZdBCSt>m%Bi76pQ!Kv0yzVw}6!*ovY^oK}~>lD);|oVzT=mEk=WPPyU=
zJp@R}$U`(|S2$J@0mFIEOABPrEs*OXKvm}sH4a60u`dU2f=Xt!*qV#hi-XZ(Zy%C0
zD2kx%Hyo0pY}uAl7yIG?EDq=2@B6-)`DQqz=N3Qy5(>h{@cRyp{Srcr;PNZ<4xuk0
z^jp8q{(b{)=^y$}g#P6vgnoy{A<SL9Zn4<-zrTE>=u0n6p}+X{w@~()jz0hLZ=<)%
z7|rE=7vazT8v6Y2<<Vz8`x*4}|Nc2z{i7Uu{SSGx`o~{GU-@zt-S}D!wcgI6@BHQq
z4d3~5{)L8ryWn5g{{>p$V*I^8;{*D_{ulOtkrucZf06ac%=6vd-RIAvdpzqe?mfXg
zkIg5~c6Sd<6Y_t^<5?(0%f$ISdGh?gqzRBsgZb&6zerOctUcSkXVPDm#q<7N=}C~o
zej@v0SJM66-H$y{yW6K(So3{F*Ze-8ZWX?=yX(DMfc%G*wD#9fDw%&t7oT|7dHxdQ
z--DWU-}iE&?^6NN;{NV#H?6@h&7zHJg0_1AaTX%}wCh+BS-ZPN$jtr$lq~eW{a}We
zGy8qDEfDf-$<0alod=3_n@A7)$$U&Krvj~|Gx)3bc;52uXV?3L_aB<P+0jkwtKGC=
z+BA#iJ<bq<_YdJF2oe91>yj2(E3RA6(6cUYRmqi~%x3Vx`sY3%_HA-awuw&u^e@}(
zoK*iQv^2=aHfd#epC-L?kH@)+^`p#FejWd7_Z6`tOV*Wc4&5eK?txMU<oy9jck5Aa
z4E!(USDIU!7Lo8<_i#=pU;J6SZC9+_o^4lG-vGW*p-HP%>!-Y$$meajnc+=7S0#V{
zW4zRotpBOmq)Ca+2X>XbI+sILviVoM;L<$FwxsEO=&vFDdB*<_7ck_t`@~@|(EPD{
zoPS9Ug|Tm^_e~d3J{GDL@Tq*155~L${L5AQi{HJ0bgQ|=TWyf0RD<Toa`zN|W%Euu
zXur^(HUv>8$MjD}#;~i<p_KnhCau?iF9m$vH(R=(q?>J2<H|qIA@1_jJa0<SoaV|<
z>2&_BpD_MwFieO`#Xe&H1b_97fPX1t2?_pllgG9`oo_d$IQ41{A=fGK>o6mT;kvD=
zT|UkJm5BfDC(w)~kHb%QbHeRd|Jp1}2qJcNh`|}kf`QPK3j9YPfZdo{smbNcY4(r!
zoYsX3?l^qR=LE_6+wU^_uQYua?M)@%-=KV>e2vFsji0ew#tO$3K$0Lt^DjC6nEuz_
zxsNzWwcPReX+7U@vU8M=cP}HSUXfjA$2PcJz^|4;<vQVU-JsUcL;TVC7mWXqzrH01
zf~v|X7%*q{|0|ZB-%-kp|L=+*h^o@y^0wi6H*yBz%H?ceatt?U%81N=3cuoLickh;
zzjS>5jTnE1klzvZ0=_MJg82IG?tQLl8?E`AVQ{TdHhUd(W_X=M>Yv8n^dv%v^$(B6
z;ZN(id`B-azOO(<a^-WbYwN9|VHobze6~Cn<D<?8DNgSH%B_Vb(zHaLjqpFm^|ye3
zqssWJrLR9V9kPC(b5?6p3ylAD4fw0W#y_2(T`(nZ72x^D=>MFqZ;RFWK!2-rI}OhK
z&+c&TR;>x6za}>qbmb~opZ2{3*f^Y`f8hUvkv9%s&^v0=WBkDX!YBrQWwTgA)o*Nq
z6^dAav2Walr2_U8p#<l{Pi1l)y;IcHVZICeTURCE-&$xH#c9FT8(Jn^h1~!hj5M6U
zC(-&cp8ivY-f^}Ua>^)v<#NEUshF%*S4+GNdxC%LGW<#WwU}@3NvHO|y_a#hDdX)<
zzOa-t<|HXv|G@HY+i2hFS8U)Hb6lD7t!rtSE~;nn*UgsnCv^SS-STZ%|17%yFr-@x
zu>R}TB7U04*JY_S1^jZYWz4OUX`OtZuD>wmTw=7d72w;qmR3_)d^lYt-%s1N;V@@(
zvi+Z|+tqLWjB{;cDhE<j$?KP0*ATJ`uzJ;6Dn1PJ8<5Yz&c(PXZ2RsC@DC4Ll{Z$P
z=U4O^On;KC^le?fCAXSca(HM|-r!}Zq@OYV*89ArE}&Lp%BX?=*M;omsTEXnR!|Gp
z5($6Wj`O89<?kq+qJxaN*{3EJ%PU+BK}FY|63Wuyw4qmPu8<WD%yhNPE6~F2u=`Ky
zfBw)sAUQ*J1letHHlb>}u0*Vy3sEyo>@Z(W@h$@Xc77ZB#+U=iX0c`HF036v#g=q<
zXo2Zuxn->PXR#x|PFK#H!N;>!8)hkNB4AacwgQhmdq4<8pJTbp+a$_&C?Dy{PWDY0
zZgV^#G88g-(%@J{5S4Bsz?WNQzfIfXiSsvS@S&MHC=H>x?Y6<0Lkung{JJh}*N*ZF
zbmc}X;!at%DId2<#SUr)H6RL0F-?$NmzTo4X7?;U2+#*C5lvnuP}(PcaKGjgJ8+;;
zJ|FOn{Pui0;PbG{pcSnOrWI$1+g^iB9F^YTaV5wL48tTC>3=qhG!sKBk(gk!!1(kM
zrA7I4=UmHg7ehW|hh=FjDjZ)2c|p<$eoGenaq%%CjQ>$L{S9jW3B!QjkXn`cR>O6Z
z+mmrxbD?HU%x0z=E#(*I%iuBuGT%t8ps9Fvj)Ui+CNd1&{6F#?$#n$5sI|iZHWr%}
za-pVc==@T{k%i3I)mXvE{^>TEWzYV^b|-3t)x-iXNhWViR24*s_?KLP2r|rXn5ND|
zI$&B;5?p=>e4hO7M0E#z-ZnvhYJp1KoU9F6^8h=%CxKh~MfINyd48oM`=4KnleKig
zpUht8UHZcQ=WWr++Pkp-WcE7m(iiqWZ;MXW-i7@qv)6f-zOes!TXeGa&dL7tSr9_N
zW>L0@O~ywGb}oDjr_D4d0^zMV4o?I0{5nWKaZ7zBADcc6-QdK~oMAVhXc+aoaHbw2
zsQ^wCSKtiX5k<yVgp&j~m5)vAs^wA;yb8Qo)L6XanRPXcmb~k5)DmETuM0VbRN)Po
z6URZ8k=9Q<e;ms<XC%uJ98dIv#)ZWU-U~UNcr}Wus(4jgg7#UE9WjcE4m?hVK@^n}
z9!y5-kIi1)5**iUq_(yj2m*KWT4rXeN23U(yshv3b0dhNRPT<ebXXj1C{F%z7|(<G
zKaA2vb$mXI<vNHi2Xzzt>)-tHBi3GOe(S$tesQbZi}@XABVqzSAH_Ec-ne|TZ@H4i
z;6O|Amv4r;4fF2|@nhzI5AO%Z)E}=A8BY8{tI<n>UnzamU^y}0f$88~)%pqjkMUDC
zcea)4NfRL1{}@|>;D!uFO7g|62$R~{DpC7$n*Y7`=9T)O|346p*?*&`!zhH)#E~Jv
zCsy4`svbxX>5pzMmlwnCN1*?;fWKW@^c6R@KesW8|Dh--@Mu0d#C-6S!ZCWn{`uvy
z_9n-y64{^Ies2YeB>0`dn9B>?x9IrW=y>vIHcgHABpUFH5dCuPEw4duVE*lCjWhVb
zO7c^TUlbMfB=;BcaUYIeB4&K$Tt{vfJ$9e>=X+63tp7))k|z)JKf-6SG<(9DB}(xd
zpJ7`B`op+$8d2lX6;5+p$91+kEGIAYqS;LQKbZfV>Z^jU$M#S1xoG}zs;A1LV@qv%
zdVMqm{EBQH#nbb184~01m(LX<&ld9$2cEwyjO3$@f&WQ$R0-p@?X=knoe+ZZi7gz#
z!?Axj5mV8m(_Aes<a)9H<8Cffewa1f|M6Hzu_1`p1XrjG8-en>85<1+N0O-SG^Fmb
zNzawlB1?f^?kNAm2FpwG3*vzP12voiCY;0%bp!D6)0wb3YlL&$fjwgWa{2dJHvFcP
zQ2)sO(a6~7xUv6>_#C_m&#AEkz_yhf2*9819mXxw2-v<6C&cz&UVd|s80rs0OUu#m
z7xVwg$g((x3Ss{@=M@-B39DmU7W&Z;IL?2`Rt9(&f1%UOmgC_^*IzdNxA)lmi}^+4
z)tH}S_TMPNmLP!#GJLVr3{#HVe?9XkRurLMjrgKEkZQmm_J61epI0$4LH`^V^u@*_
zRfw%0sSR&Mm;k`%&7twP{+gZOHzR(y9|*Dr{E{N9B>WG8i4#?h`FCLbk%kQbTRGPa
zk|-Yz+y}a$Vf|x%)GWQGyt~Z)o?4n$TWtO(nh459{M4eS!nY}r=Ft^13s62!7yY0P
z{dw2Mjrazg%0~|D4YNz9^T8&9P*oyse7z)7nF2ltAjJZ3#EIkR3_i%YvD`a@4~6pD
zaXx#M#rQnDPOL`@kOSM^*aGqR8<=EZf10+jTx9bvt`e4v>`!m=<q>>*2|Q8Ahbd7J
zl~4i@pdOhZo_}Gh!6mu>4fOvonH$CnxrTF@3*JN`u`q(qn`SrW!z>^bwa(nGE6I||
zBpBw0n={~-qQ?w1s|@^4Qj9`QHiVlyG$^@|&mZ{kAi)O-RIT18)C!zf7u3Gh82JC7
z<&?6-uHKfW`K6NY@6o{xd?<M|6hy@l6#DF<s7D<T8-)1j;Se7j6UG{uS@SK|5p7q5
zCjl#5e}dMV8Z$KL?`YcIB5Zy=aIS;(4}3i{8x#k=D+$#1Dw055KE@;-{6PdC9_2$a
zndzH+y*oqf27EOqVK3hGAoS{T%=a{}=W9L1yK`lojeja3^?%Gnz%TR!Ur`}N^fVt<
z3T?)}J|w_Qf7t#}CY2NOGhny|a+Oa&4i>oO(7D6<_h8ZQJ$R7qiTAJM2mFoL{{#P4
z{}X@Sd$_+34+(FnaQ#C3)dwT3!B=q6_>b6wE9Rens`>srd;X&mq`WM1?o+@A(?7hw
zS!~|FQb_QB5Uqby|Emx77JI<;9)965<-h!RNdFlH^gNl*B)Jqme^UOY5<XnQ{>KBp
zSMmjA&-WAjjyrh%DD<Jg9pLsJzWi8&>;7BafqKx>6087|@C!={)8Cojf`0A8hsG*c
z2<Bh7Mkn{5C|~eYO<8=nuXzt<ea%x<Ujtwqh)jp$1bnVn>@hy<f8l#qn6MaL@MCKv
zpUW52w&t%r^hCA7Q#m#GmU<9unW{fNpF=5s@qISCQuB8Q4e{xbe9&Lb@H`yYXmB|e
zV8scHF@gS@%X{xXqT>Me-(&N^LL>kUOAz75*B_q19{=6@;rt(;Ka36UFp(mm#@C<o
z-a9A$n&3qE3G`3xZ7rXN{y4ThwZ{1R7nZx{z^6+}to$T=PP=A~!%z4h_1M6t|0*!}
zfM+88Q`>j>6Zq=D|13Eh(fX4w96j@c^PMB~3GCn0t`7L#7L`2=X;E1UHYQx7nbSr1
zU=5}y=ZZ~bXyRc~w}y46_0Q`6^dfa#u+XdU$^1+)h{Mf%1cxgYZa6o0pv=y;pbN6d
z;&A>dBnt6qr+%D%HlL5qf9K&01xGjFQ4@h4c?TPv<oPqihty9Oz+oQ`XX(%5nc)0a
z3)T)3REOXt9XYg_7T7_z0{fig`TKF)v6M6U$7+m92wy)024=4uMta>5RnLb%qTw-<
UF8E^_>i?<O3%CD^{{Q>`1?XwK!2kdN

literal 32886
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


From 3eee140addac7bfcaa48b43a10060e605b5ffcde Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 17:29:59 +0100
Subject: [PATCH 25/28] Fix stage

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 701e2a9..94a548b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,7 +31,7 @@ build:x86-gcc:
     - builddir/tests/gldc_tests
     
 test:x86-gcc:
-  stage: build
+  stage: test
   image: fedora:38
   before_script:
     - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686

From a1536cba445ea0a96ad69881784a78b3a095bb79 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 17:31:08 +0100
Subject: [PATCH 26/28] Add dependency

---
 .gitlab-ci.yml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 94a548b..56bd87c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -33,6 +33,8 @@ build:x86-gcc:
 test:x86-gcc:
   stage: test
   image: fedora:38
+  dependencies:
+    - build:x86-gcc
   before_script:
     - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686
   script:

From 9bc6da9fba3bbd87858acccf018f498633d66684 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 19:55:26 +0100
Subject: [PATCH 27/28] Add some requirements

---
 .gitlab-ci.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 56bd87c..fbd447f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -20,7 +20,7 @@ build:x86-gcc:
   stage: build
   image: fedora:38
   before_script:
-    - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686
+    - sudo dnf install -y cmake gcc gcc-c++ SDL2.i686 SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686 pkgconf-pkg-config.i686
   script:
     - mkdir builddir
     - cd builddir
@@ -36,7 +36,7 @@ test:x86-gcc:
   dependencies:
     - build:x86-gcc
   before_script:
-    - sudo dnf install -y cmake gcc gcc-c++ SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686
+    - sudo dnf install -y cmake gcc gcc-c++ SDL2.i686 SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686 pkgconf-pkg-config.i686
   script:
     - cd builddir/tests/
     - SDL_VIDEODRIVER=dummy ./gldc_tests --junit-xml=report.xml

From 1bf85549263aea1fffc1dd82211d486ad66883f8 Mon Sep 17 00:00:00 2001
From: Luke Benstead <kazade@gmail.com>
Date: Mon, 11 Sep 2023 20:34:18 +0100
Subject: [PATCH 28/28] More erquirements

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fbd447f..01e03dd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -20,7 +20,7 @@ build:x86-gcc:
   stage: build
   image: fedora:38
   before_script:
-    - sudo dnf install -y cmake gcc gcc-c++ SDL2.i686 SDL2-devel glibc-devel pkgconf-pkg-config glibc-devel.i686 SDL2-devel.i686 pkgconf-pkg-config.i686
+    - sudo dnf install -y cmake gcc gcc-c++ SDL2.i686 SDL2-devel.x86_64 glibc-devel glibc-devel.i686 SDL2-devel.i686 pkgconf-pkg-config.i686 pkgconf-pkg-config.x86_64
   script:
     - mkdir builddir
     - cd builddir