[Python-checkins] cpython: use full unicode mappings for upper/lower/title case (#12736)

benjamin.peterson python-checkins at python.org
Thu Jan 12 00:17:46 CET 2012


http://hg.python.org/cpython/rev/f7e05d205a52
changeset:   74338:f7e05d205a52
parent:      74328:0c5266390992
user:        Benjamin Peterson <benjamin at python.org>
date:        Wed Jan 11 18:17:06 2012 -0500
summary:
  use full unicode mappings for upper/lower/title case (#12736)

Also broaden the category of characters that count as lowercase/uppercase.

files:
  Doc/c-api/unicode.rst            |     9 +
  Doc/library/stdtypes.rst         |     3 +-
  Include/unicodeobject.h          |    23 +
  Lib/test/string_tests.py         |     2 +-
  Lib/test/test_unicode.py         |    44 +
  Lib/test/test_unicodedata.py     |     2 +-
  Misc/NEWS                        |     2 +
  Objects/unicodectype.c           |    97 +-
  Objects/unicodeobject.c          |   413 +-
  Objects/unicodetype_db.h         |  6529 ++++++++++++-----
  Tools/unicode/makeunicodedata.py |   101 +-
  11 files changed, 5051 insertions(+), 2174 deletions(-)


diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst
--- a/Doc/c-api/unicode.rst
+++ b/Doc/c-api/unicode.rst
@@ -318,16 +318,25 @@
 
    Return the character *ch* converted to lower case.
 
+   .. deprecated:: 3.3
+      This function uses simple case mappings.
+
 
 .. c:function:: Py_UNICODE Py_UNICODE_TOUPPER(Py_UNICODE ch)
 
    Return the character *ch* converted to upper case.
 
+   .. deprecated:: 3.3
+      This function uses simple case mappings.
+
 
 .. c:function:: Py_UNICODE Py_UNICODE_TOTITLE(Py_UNICODE ch)
 
    Return the character *ch* converted to title case.
 
+   .. deprecated:: 3.3
+      This function uses simple case mappings.
+
 
 .. c:function:: int Py_UNICODE_TODECIMAL(Py_UNICODE ch)
 
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -1360,7 +1360,8 @@
 .. method:: str.swapcase()
 
    Return a copy of the string with uppercase characters converted to lowercase and
-   vice versa.
+   vice versa. Note that it is not necessarily true that
+   ``s.swapcase().swapcase() == s``.
 
 
 .. method:: str.title()
diff --git a/Include/unicodeobject.h b/Include/unicodeobject.h
--- a/Include/unicodeobject.h
+++ b/Include/unicodeobject.h
@@ -2008,6 +2008,29 @@
     Py_UCS4 ch       /* Unicode character */
     );
 
+PyAPI_FUNC(int) _PyUnicode_ToLowerFull(
+    Py_UCS4 ch,       /* Unicode character */
+    Py_UCS4 *res
+    );
+
+PyAPI_FUNC(int) _PyUnicode_ToTitleFull(
+    Py_UCS4 ch,       /* Unicode character */
+    Py_UCS4 *res
+    );
+
+PyAPI_FUNC(int) _PyUnicode_ToUpperFull(
+    Py_UCS4 ch,       /* Unicode character */
+    Py_UCS4 *res
+    );
+
+PyAPI_FUNC(int) _PyUnicode_IsCaseIgnorable(
+    const Py_UCS4 ch         /* Unicode character */
+    );
+
+PyAPI_FUNC(int) _PyUnicode_IsCased(
+    const Py_UCS4 ch         /* Unicode character */
+    );
+
 PyAPI_FUNC(int) _PyUnicode_ToDecimalDigit(
     Py_UCS4 ch       /* Unicode character */
     );
diff --git a/Lib/test/string_tests.py b/Lib/test/string_tests.py
--- a/Lib/test/string_tests.py
+++ b/Lib/test/string_tests.py
@@ -669,7 +669,7 @@
 
         # check that titlecased chars are lowered correctly
         # \u1ffc is the titlecased char
-        self.checkequal('\u1ffc\u1ff3\u1ff3\u1ff3',
+        self.checkequal('\u03a9\u0399\u1ff3\u1ff3\u1ff3',
                         '\u1ff3\u1ff3\u1ffc\u1ffc', 'capitalize')
         # check with cased non-letter chars
         self.checkequal('\u24c5\u24e8\u24e3\u24d7\u24de\u24dd',
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -369,6 +369,8 @@
     def test_islower(self):
         string_tests.MixinStrUnicodeUserStringTest.test_islower(self)
         self.checkequalnofix(False, '\u1FFc', 'islower')
+        self.assertFalse('\u2167'.islower())
+        self.assertTrue('\u2177'.islower())
         # non-BMP, uppercase
         self.assertFalse('\U00010401'.islower())
         self.assertFalse('\U00010427'.islower())
@@ -383,6 +385,8 @@
         string_tests.MixinStrUnicodeUserStringTest.test_isupper(self)
         if not sys.platform.startswith('java'):
             self.checkequalnofix(False, '\u1FFc', 'isupper')
+        self.assertTrue('\u2167'.isupper())
+        self.assertFalse('\u2177'.isupper())
         # non-BMP, uppercase
         self.assertTrue('\U00010401'.isupper())
         self.assertTrue('\U00010427'.isupper())
@@ -548,6 +552,18 @@
                          '\U0001044F\U0001044F')
         self.assertEqual('X\U00010427x\U0001044F'.lower(),
                          'x\U0001044Fx\U0001044F')
+        self.assertEqual('fi'.lower(), 'fi')
+        self.assertEqual('\u0130'.lower(), '\u0069\u0307')
+        # Special case for GREEK CAPITAL LETTER SIGMA U+03A3
+        self.assertEqual('\u03a3'.lower(), '\u03c3')
+        self.assertEqual('\u0345\u03a3'.lower(), '\u0345\u03c3')
+        self.assertEqual('A\u0345\u03a3'.lower(), 'a\u0345\u03c2')
+        self.assertEqual('A\u0345\u03a3a'.lower(), 'a\u0345\u03c3a')
+        self.assertEqual('A\u0345\u03a3'.lower(), 'a\u0345\u03c2')
+        self.assertEqual('A\u03a3\u0345'.lower(), 'a\u03c2\u0345')
+        self.assertEqual('\u03a3\u0345 '.lower(), '\u03c3\u0345 ')
+        self.assertEqual('\U0008fffe'.lower(), '\U0008fffe')
+        self.assertEqual('\u2177'.lower(), '\u2177')
 
     def test_upper(self):
         string_tests.CommonTest.test_upper(self)
@@ -558,6 +574,13 @@
                          '\U00010427\U00010427')
         self.assertEqual('X\U00010427x\U0001044F'.upper(),
                          'X\U00010427X\U00010427')
+        self.assertEqual('fi'.upper(), 'FI')
+        self.assertEqual('\u0130'.upper(), '\u0130')
+        self.assertEqual('\u03a3'.upper(), '\u03a3')
+        self.assertEqual('ß'.upper(), 'SS')
+        self.assertEqual('\u1fd2'.upper(), '\u0399\u0308\u0300')
+        self.assertEqual('\U0008fffe'.upper(), '\U0008fffe')
+        self.assertEqual('\u2177'.upper(), '\u2167')
 
     def test_capitalize(self):
         string_tests.CommonTest.test_capitalize(self)
@@ -570,6 +593,11 @@
                          '\U00010427\U0001044F')
         self.assertEqual('X\U00010427x\U0001044F'.capitalize(),
                          'X\U0001044Fx\U0001044F')
+        self.assertEqual('h\u0130'.capitalize(), 'H\u0069\u0307')
+        exp = '\u0399\u0308\u0300\u0069\u0307'
+        self.assertEqual('\u1fd2\u0130'.capitalize(), exp)
+        self.assertEqual('finnish'.capitalize(), 'FInnish')
+        self.assertEqual('A\u0345\u03a3'.capitalize(), 'A\u0345\u03c2')
 
     def test_title(self):
         string_tests.MixinStrUnicodeUserStringTest.test_title(self)
@@ -584,6 +612,9 @@
                          '\U00010427\U0001044F \U00010427\U0001044F')
         self.assertEqual('X\U00010427x\U0001044F X\U00010427x\U0001044F'.title(),
                          'X\U0001044Fx\U0001044F X\U0001044Fx\U0001044F')
+        self.assertEqual('fiNNISH'.title(), 'Finnish')
+        self.assertEqual('A\u03a3 \u1fa1xy'.title(), 'A\u03c2 \u1fa9xy')
+        self.assertEqual('A\u03a3A'.title(), 'A\u03c3a')
 
     def test_swapcase(self):
         string_tests.CommonTest.test_swapcase(self)
@@ -597,6 +628,19 @@
                          '\U00010427\U0001044F')
         self.assertEqual('X\U00010427x\U0001044F'.swapcase(),
                          'x\U0001044FX\U00010427')
+        self.assertEqual('fi'.swapcase(), 'FI')
+        self.assertEqual('\u0130'.swapcase(), '\u0069\u0307')
+        # Special case for GREEK CAPITAL LETTER SIGMA U+03A3
+        self.assertEqual('\u03a3'.swapcase(), '\u03c3')
+        self.assertEqual('\u0345\u03a3'.swapcase(), '\u0399\u03c3')
+        self.assertEqual('A\u0345\u03a3'.swapcase(), 'a\u0399\u03c2')
+        self.assertEqual('A\u0345\u03a3a'.swapcase(), 'a\u0399\u03c3A')
+        self.assertEqual('A\u0345\u03a3'.swapcase(), 'a\u0399\u03c2')
+        self.assertEqual('A\u03a3\u0345'.swapcase(), 'a\u03c2\u0399')
+        self.assertEqual('\u03a3\u0345 '.swapcase(), '\u03c3\u0399 ')
+        self.assertEqual('\u03a3'.swapcase(), '\u03c3')
+        self.assertEqual('ß'.swapcase(), 'SS')
+        self.assertEqual('\u1fd2'.swapcase(), '\u0399\u0308\u0300')
 
     def test_contains(self):
         # Testing Unicode contains method
diff --git a/Lib/test/test_unicodedata.py b/Lib/test/test_unicodedata.py
--- a/Lib/test/test_unicodedata.py
+++ b/Lib/test/test_unicodedata.py
@@ -21,7 +21,7 @@
 class UnicodeMethodsTest(unittest.TestCase):
 
     # update this, if the database changes
-    expectedchecksum = '21b90f1aed00081b81ca7942b22196af090015a0'
+    expectedchecksum = 'df0b3ca6785a070b21f837b227dbdbdff3c2e921'
 
     def test_method_checksum(self):
         h = hashlib.sha1()
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,8 @@
 Core and Builtins
 -----------------
 
+- Issue #12736: Use full unicode case mappings for upper, lower, and title case.
+
 - Issue #12760: Add a create mode to open(). Patch by David Townshend.
 
 - Issue #13738: Simplify implementation of bytes.lower() and bytes.upper().
diff --git a/Objects/unicodectype.c b/Objects/unicodectype.c
--- a/Objects/unicodectype.c
+++ b/Objects/unicodectype.c
@@ -21,8 +21,10 @@
 #define XID_START_MASK 0x100
 #define XID_CONTINUE_MASK 0x200
 #define PRINTABLE_MASK 0x400
-#define NODELTA_MASK 0x800
-#define NUMERIC_MASK 0x1000
+#define NUMERIC_MASK 0x800
+#define CASE_IGNORABLE_MASK 0x1000
+#define CASED_MASK 0x2000
+#define EXTENDED_CASE_MASK 0x4000
 
 typedef struct {
     const Py_UCS4 upper;
@@ -57,15 +59,8 @@
 Py_UCS4 _PyUnicode_ToTitlecase(register Py_UCS4 ch)
 {
     const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
-    int delta = ctype->title;
 
-    if (ctype->flags & NODELTA_MASK)
-        return delta;
-
-    if (delta >= 32768)
-            delta -= 65536;
-
-    return ch + delta;
+    return ctype->title ? ctype->title : ch;
 }
 
 /* Returns 1 for Unicode characters having the category 'Lt', 0
@@ -188,12 +183,10 @@
 Py_UCS4 _PyUnicode_ToUppercase(Py_UCS4 ch)
 {
     const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
-    int delta = ctype->upper;
-    if (ctype->flags & NODELTA_MASK)
-        return delta;
-    if (delta >= 32768)
-            delta -= 65536;
-    return ch + delta;
+
+    if (ctype->flags & EXTENDED_CASE_MASK)
+        return _PyUnicode_ExtendedCase[ctype->upper & 0xFFFFFF];
+    return ctype->upper ? ctype->upper : ch;
 }
 
 /* Returns the lowercase Unicode characters corresponding to ch or just
@@ -202,12 +195,72 @@
 Py_UCS4 _PyUnicode_ToLowercase(Py_UCS4 ch)
 {
     const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
-    int delta = ctype->lower;
-    if (ctype->flags & NODELTA_MASK)
-        return delta;
-    if (delta >= 32768)
-            delta -= 65536;
-    return ch + delta;
+
+    if (ctype->flags & EXTENDED_CASE_MASK)
+        return _PyUnicode_ExtendedCase[ctype->lower & 0xFFFFFF];
+    return ctype->lower ? ctype->lower : ch;
+}
+
+int _PyUnicode_ToLowerFull(Py_UCS4 ch, Py_UCS4 *res)
+{
+    const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
+
+    if (ctype->flags & EXTENDED_CASE_MASK) {
+        int index = ctype->lower & 0xFFFFFF;
+        int n = ctype->lower >> 24;
+        int i;
+        for (i = 0; i < n; i++)
+            res[i] = _PyUnicode_ExtendedCase[index + i];
+        return n;
+    }
+    res[0] = ctype->lower ? ctype->lower : ch;
+    return 1;
+}
+
+int _PyUnicode_ToTitleFull(Py_UCS4 ch, Py_UCS4 *res)
+{
+    const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
+
+    if (ctype->flags & EXTENDED_CASE_MASK) {
+        int index = ctype->title & 0xFFFFFF;
+        int n = ctype->title >> 24;
+        int i;
+        for (i = 0; i < n; i++)
+            res[i] = _PyUnicode_ExtendedCase[index + i];
+        return n;
+    }
+    res[0] = ctype->title ? ctype->title : ch;
+    return 1;
+}
+
+int _PyUnicode_ToUpperFull(Py_UCS4 ch, Py_UCS4 *res)
+{
+    const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
+
+    if (ctype->flags & EXTENDED_CASE_MASK) {
+        int index = ctype->upper & 0xFFFFFF;
+        int n = ctype->upper >> 24;
+        int i;
+        for (i = 0; i < n; i++)
+            res[i] = _PyUnicode_ExtendedCase[index + i];
+        return n;
+    }
+    res[0] = ctype->upper ? ctype->upper : ch;
+    return 1;
+}
+
+int _PyUnicode_IsCased(Py_UCS4 ch)
+{
+    const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
+
+    return (ctype->flags & CASED_MASK) != 0;
+}
+
+int _PyUnicode_IsCaseIgnorable(Py_UCS4 ch)
+{
+    const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
+
+    return (ctype->flags & CASE_IGNORABLE_MASK) != 0;
 }
 
 /* Returns 1 for Unicode characters having the category 'Ll', 'Lu', 'Lt',
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -41,6 +41,7 @@
 #define PY_SSIZE_T_CLEAN
 #include "Python.h"
 #include "ucnhash.h"
+#include "bytes_methods.h"
 
 #ifdef MS_WINDOWS
 #include <windows.h>
@@ -9428,188 +9429,222 @@
     return v;
 }
 
+static PyObject *
+ascii_upper_or_lower(PyObject *self, int lower)
+{
+    Py_ssize_t len = PyUnicode_GET_LENGTH(self);
+    char *resdata, *data = PyUnicode_DATA(self);
+    PyObject *res;
+
+    res = PyUnicode_New(len, 127);
+    if (res == NULL)
+        return NULL;
+    resdata = PyUnicode_DATA(res);
+    if (lower)
+        _Py_bytes_lower(resdata, data, len);
+    else
+        _Py_bytes_upper(resdata, data, len);
+    return res;
+}
+
 static Py_UCS4
-fixupper(PyObject *self)
-{
-    /* No need to call PyUnicode_READY(self) because this function is only
-       called as a callback from fixup() which does it already. */
-    const Py_ssize_t len = PyUnicode_GET_LENGTH(self);
-    const int kind = PyUnicode_KIND(self);
-    void *data = PyUnicode_DATA(self);
-    int touched = 0;
-    Py_UCS4 maxchar = 0;
-    Py_ssize_t i;
-
-    for (i = 0; i < len; ++i) {
-        const Py_UCS4 ch = PyUnicode_READ(kind, data, i);
-        const Py_UCS4 up = Py_UNICODE_TOUPPER(ch);
-        if (up != ch) {
-            if (up > maxchar)
-                maxchar = up;
-            PyUnicode_WRITE(kind, data, i, up);
-            touched = 1;
-        }
-        else if (ch > maxchar)
-            maxchar = ch;
-    }
-
-    if (touched)
-        return maxchar;
-    else
-        return 0;
-}
-
-static Py_UCS4
-fixlower(PyObject *self)
-{
-    /* No need to call PyUnicode_READY(self) because fixup() which does it. */
-    const Py_ssize_t len = PyUnicode_GET_LENGTH(self);
-    const int kind = PyUnicode_KIND(self);
-    void *data = PyUnicode_DATA(self);
-    int touched = 0;
-    Py_UCS4 maxchar = 0;
-    Py_ssize_t i;
-
-    for(i = 0; i < len; ++i) {
-        const Py_UCS4 ch = PyUnicode_READ(kind, data, i);
-        const Py_UCS4 lo = Py_UNICODE_TOLOWER(ch);
-        if (lo != ch) {
-            if (lo > maxchar)
-                maxchar = lo;
-            PyUnicode_WRITE(kind, data, i, lo);
-            touched = 1;
-        }
-        else if (ch > maxchar)
-            maxchar = ch;
-    }
-
-    if (touched)
-        return maxchar;
-    else
-        return 0;
-}
-
-static Py_UCS4
-fixswapcase(PyObject *self)
-{
-    /* No need to call PyUnicode_READY(self) because fixup() which does it. */
-    const Py_ssize_t len = PyUnicode_GET_LENGTH(self);
-    const int kind = PyUnicode_KIND(self);
-    void *data = PyUnicode_DATA(self);
-    int touched = 0;
-    Py_UCS4 maxchar = 0;
-    Py_ssize_t i;
-
-    for(i = 0; i < len; ++i) {
-        const Py_UCS4 ch = PyUnicode_READ(kind, data, i);
-        Py_UCS4 nu = 0;
-
-        if (Py_UNICODE_ISUPPER(ch))
-            nu = Py_UNICODE_TOLOWER(ch);
-        else if (Py_UNICODE_ISLOWER(ch))
-            nu = Py_UNICODE_TOUPPER(ch);
-
-        if (nu != 0) {
-            if (nu > maxchar)
-                maxchar = nu;
-            PyUnicode_WRITE(kind, data, i, nu);
-            touched = 1;
-        }
-        else if (ch > maxchar)
-            maxchar = ch;
-    }
-
-    if (touched)
-        return maxchar;
-    else
-        return 0;
-}
-
-static Py_UCS4
-fixcapitalize(PyObject *self)
-{
-    /* No need to call PyUnicode_READY(self) because fixup() which does it. */
-    const Py_ssize_t len = PyUnicode_GET_LENGTH(self);
-    const int kind = PyUnicode_KIND(self);
-    void *data = PyUnicode_DATA(self);
-    int touched = 0;
-    Py_UCS4 maxchar = 0;
-    Py_ssize_t i = 0;
-    Py_UCS4 ch;
-
-    if (len == 0)
-        return 0;
-
-    ch = PyUnicode_READ(kind, data, i);
-    if (!Py_UNICODE_ISUPPER(ch)) {
-        maxchar = Py_UNICODE_TOUPPER(ch);
-        PyUnicode_WRITE(kind, data, i, maxchar);
-        touched = 1;
-    }
-    ++i;
-    for(; i < len; ++i) {
-        ch = PyUnicode_READ(kind, data, i);
-        if (!Py_UNICODE_ISLOWER(ch)) {
-            const Py_UCS4 lo = Py_UNICODE_TOLOWER(ch);
-            if (lo > maxchar)
-                maxchar = lo;
-            PyUnicode_WRITE(kind, data, i, lo);
-            touched = 1;
-        }
-        else if (ch > maxchar)
-            maxchar = ch;
-    }
-
-    if (touched)
-        return maxchar;
-    else
-        return 0;
-}
-
-static Py_UCS4
-fixtitle(PyObject *self)
-{
-    /* No need to call PyUnicode_READY(self) because fixup() which does it. */
-    const Py_ssize_t len = PyUnicode_GET_LENGTH(self);
-    const int kind = PyUnicode_KIND(self);
-    void *data = PyUnicode_DATA(self);
-    Py_UCS4 maxchar = 0;
-    Py_ssize_t i = 0;
+handle_capital_sigma(int kind, void *data, Py_ssize_t length, Py_ssize_t i)
+{
+    Py_ssize_t j;
+    int final_sigma;
+    Py_UCS4 c;
+    /* U+03A3 is in the Final_Sigma context when, it is found like this:
+
+     \p{cased}\p{case-ignorable}*U+03A3!(\p{case-ignorable}*\p{cased})
+
+    where ! is a negation and \p{xxx} is a character with property xxx.
+    */
+    for (j = i - 1; j >= 0; j--) {
+        c = PyUnicode_READ(kind, data, j);
+        if (!_PyUnicode_IsCaseIgnorable(c))
+            break;
+    }
+    final_sigma = j >= 0 && _PyUnicode_IsCased(c);
+    if (final_sigma) {
+        for (j = i + 1; j < length; j++) {
+            c = PyUnicode_READ(kind, data, j);
+            if (!_PyUnicode_IsCaseIgnorable(c))
+                break;
+        }
+        final_sigma = j == length || !_PyUnicode_IsCased(c);
+    }
+    return (final_sigma) ? 0x3C2 : 0x3C3;
+}
+
+static int
+lower_ucs4(int kind, void *data, Py_ssize_t length, Py_ssize_t i,
+           Py_UCS4 c, Py_UCS4 *mapped)
+{
+    /* Obscure special case. */
+    if (c == 0x3A3) {
+        mapped[0] = handle_capital_sigma(kind, data, length, i);
+        return 1;
+    }
+    return _PyUnicode_ToLowerFull(c, mapped);
+}
+
+static Py_ssize_t
+do_capitalize(int kind, void *data, Py_ssize_t length, Py_UCS4 *res, Py_UCS4 *maxchar)
+{
+    Py_ssize_t i, k = 0;
+    int n_res, j;
+    Py_UCS4 c, mapped[3];
+
+    c = PyUnicode_READ(kind, data, 0);
+    n_res = _PyUnicode_ToUpperFull(c, mapped);
+    for (j = 0; j < n_res; j++) {
+        if (mapped[j] > *maxchar)
+            *maxchar = mapped[j];
+        res[k++] = mapped[j];
+    }
+    for (i = 1; i < length; i++) {
+        c = PyUnicode_READ(kind, data, i);
+        n_res = lower_ucs4(kind, data, length, i, c, mapped);
+        for (j = 0; j < n_res; j++) {
+            if (mapped[j] > *maxchar)
+                *maxchar = mapped[j];
+            res[k++] = mapped[j];
+        }
+    }
+    return k;
+}
+
+static Py_ssize_t
+do_swapcase(int kind, void *data, Py_ssize_t length, Py_UCS4 *res, Py_UCS4 *maxchar) {
+    Py_ssize_t i, k = 0;
+
+    for (i = 0; i < length; i++) {
+        Py_UCS4 c = PyUnicode_READ(kind, data, i), mapped[3];
+        int n_res, j;
+        if (Py_UNICODE_ISUPPER(c)) {
+            n_res = lower_ucs4(kind, data, length, i, c, mapped);
+        }
+        else if (Py_UNICODE_ISLOWER(c)) {
+            n_res = _PyUnicode_ToUpperFull(c, mapped);
+        }
+        else {
+            n_res = 1;
+            mapped[0] = c;
+        }
+        for (j = 0; j < n_res; j++) {
+            if (mapped[j] > *maxchar)
+                *maxchar = mapped[j];
+            res[k++] = mapped[j];
+        }
+    }
+    return k;
+}
+
+static Py_ssize_t
+do_upper_or_lower(int kind, void *data, Py_ssize_t length, Py_UCS4 *res,
+                  Py_UCS4 *maxchar, int lower)
+{
+    Py_ssize_t i, k = 0;
+
+    for (i = 0; i < length; i++) {
+        Py_UCS4 c = PyUnicode_READ(kind, data, i), mapped[3];
+        int n_res, j;
+        if (lower)
+            n_res = lower_ucs4(kind, data, length, i, c, mapped);
+        else
+            n_res = _PyUnicode_ToUpperFull(c, mapped);
+        for (j = 0; j < n_res; j++) {
+            if (mapped[j] > *maxchar)
+                *maxchar = mapped[j];
+            res[k++] = mapped[j];
+        }
+    }
+    return k;
+}
+
+static Py_ssize_t
+do_upper(int kind, void *data, Py_ssize_t length, Py_UCS4 *res, Py_UCS4 *maxchar)
+{
+    return do_upper_or_lower(kind, data, length, res, maxchar, 0);
+}
+
+static Py_ssize_t
+do_lower(int kind, void *data, Py_ssize_t length, Py_UCS4 *res, Py_UCS4 *maxchar)
+{
+    return do_upper_or_lower(kind, data, length, res, maxchar, 1);
+}
+
+static PyObject *
+case_operation(PyObject *self,
+               Py_ssize_t (*perform)(int, void *, Py_ssize_t, Py_UCS4 *, Py_UCS4 *))
+{
+    PyObject *res = NULL;
+    Py_ssize_t length, newlength = 0;
+    int kind, outkind;
+    void *data, *outdata;
+    Py_UCS4 maxchar = 0, *tmp, *tmpend;
+
+    if (PyUnicode_READY(self) == -1)
+        return NULL;
+
+    kind = PyUnicode_KIND(self);
+    data = PyUnicode_DATA(self);
+    length = PyUnicode_GET_LENGTH(self);
+    tmp = PyMem_MALLOC(sizeof(Py_UCS4) * 3 * length);
+    if (tmp == NULL)
+        return PyErr_NoMemory();
+    newlength = perform(kind, data, length, tmp, &maxchar);
+    res = PyUnicode_New(newlength, maxchar);
+    if (res == NULL)
+        goto leave;
+    tmpend = tmp + newlength;
+    outdata = PyUnicode_DATA(res);
+    outkind = PyUnicode_KIND(res);
+    switch (outkind) {
+    case PyUnicode_1BYTE_KIND:
+        _PyUnicode_CONVERT_BYTES(Py_UCS4, Py_UCS1, tmp, tmpend, outdata);
+        break;
+    case PyUnicode_2BYTE_KIND:
+        _PyUnicode_CONVERT_BYTES(Py_UCS4, Py_UCS2, tmp, tmpend, outdata);
+        break;
+    case PyUnicode_4BYTE_KIND:
+        memcpy(outdata, tmp, sizeof(Py_UCS4) * newlength);
+        break;
+    default:
+        assert(0);
+        break;
+    }
+  leave:
+    PyMem_FREE(tmp);
+    return res;
+}
+
+static Py_ssize_t
+do_title(int kind, void *data, Py_ssize_t length, Py_UCS4 *res, Py_UCS4 *maxchar)
+{
+    Py_ssize_t i, k = 0;
     int previous_is_cased;
 
-    /* Shortcut for single character strings */
-    if (len == 1) {
-        const Py_UCS4 ch = PyUnicode_READ(kind, data, i);
-        const Py_UCS4 ti = Py_UNICODE_TOTITLE(ch);
-        if (ti != ch) {
-            PyUnicode_WRITE(kind, data, i, ti);
-            return ti;
-        }
+    previous_is_cased = 0;
+    for (i = 0; i < length; i++) {
+        const Py_UCS4 c = PyUnicode_READ(kind, data, i);
+        Py_UCS4 mapped[3];
+        int n_res, j;
+
+        if (previous_is_cased)
+            n_res = lower_ucs4(kind, data, length, i, c, mapped);
         else
-            return 0;
-    }
-    previous_is_cased = 0;
-    for(; i < len; ++i) {
-        const Py_UCS4 ch = PyUnicode_READ(kind, data, i);
-        Py_UCS4 nu;
-
-        if (previous_is_cased)
-            nu = Py_UNICODE_TOLOWER(ch);
-        else
-            nu = Py_UNICODE_TOTITLE(ch);
-
-        if (nu > maxchar)
-            maxchar = nu;
-        PyUnicode_WRITE(kind, data, i, nu);
-
-        if (Py_UNICODE_ISLOWER(ch) ||
-            Py_UNICODE_ISUPPER(ch) ||
-            Py_UNICODE_ISTITLE(ch))
-            previous_is_cased = 1;
-        else
-            previous_is_cased = 0;
-    }
-    return maxchar;
+            n_res = _PyUnicode_ToTitleFull(c, mapped);
+
+        for (j = 0; j < n_res; j++) {
+            if (mapped[j] > *maxchar)
+                *maxchar = mapped[j];
+            res[k++] = mapped[j];
+        }
+
+        previous_is_cased = _PyUnicode_IsCased(c);
+    }
+    return k;
 }
 
 PyObject *
@@ -10445,7 +10480,7 @@
 static PyObject*
 unicode_title(PyObject *self)
 {
-    return fixup(self, fixtitle);
+    return case_operation(self, do_title);
 }
 
 PyDoc_STRVAR(capitalize__doc__,
@@ -10457,7 +10492,11 @@
 static PyObject*
 unicode_capitalize(PyObject *self)
 {
-    return fixup(self, fixcapitalize);
+    if (PyUnicode_READY(self) == -1)
+        return NULL;
+    if (PyUnicode_GET_LENGTH(self) == 0)
+        return unicode_result_unchanged(self);
+    return case_operation(self, do_capitalize);
 }
 
 #if 0
@@ -11715,7 +11754,11 @@
 static PyObject*
 unicode_lower(PyObject *self)
 {
-    return fixup(self, fixlower);
+    if (PyUnicode_READY(self) == -1)
+        return NULL;
+    if (PyUnicode_IS_ASCII(self))
+        return ascii_upper_or_lower(self, 1);
+    return case_operation(self, do_lower);
 }
 
 #define LEFTSTRIP 0
@@ -12604,7 +12647,7 @@
 static PyObject*
 unicode_swapcase(PyObject *self)
 {
-    return fixup(self, fixswapcase);
+    return case_operation(self, do_swapcase);
 }
 
 PyDoc_STRVAR(maketrans__doc__,
@@ -12750,7 +12793,11 @@
 static PyObject*
 unicode_upper(PyObject *self)
 {
-    return fixup(self, fixupper);
+    if (PyUnicode_READY(self) == -1)
+        return NULL;
+    if (PyUnicode_IS_ASCII(self))
+        return ascii_upper_or_lower(self, 0);
+    return case_operation(self, do_upper);
 }
 
 PyDoc_STRVAR(zfill__doc__,
diff --git a/Objects/unicodetype_db.h b/Objects/unicodetype_db.h
--- a/Objects/unicodetype_db.h
+++ b/Objects/unicodetype_db.h
@@ -8,184 +8,2616 @@
     {0, 0, 0, 0, 0, 48},
     {0, 0, 0, 0, 0, 1056},
     {0, 0, 0, 0, 0, 1024},
-    {0, 0, 0, 0, 0, 5638},
-    {0, 0, 0, 1, 1, 5638},
-    {0, 0, 0, 2, 2, 5638},
-    {0, 0, 0, 3, 3, 5638},
-    {0, 0, 0, 4, 4, 5638},
-    {0, 0, 0, 5, 5, 5638},
-    {0, 0, 0, 6, 6, 5638},
-    {0, 0, 0, 7, 7, 5638},
-    {0, 0, 0, 8, 8, 5638},
-    {0, 0, 0, 9, 9, 5638},
-    {0, 32, 0, 0, 0, 1921},
+    {0, 0, 0, 0, 0, 5120},
+    {0, 0, 0, 0, 0, 3590},
+    {0, 0, 0, 1, 1, 3590},
+    {0, 0, 0, 2, 2, 3590},
+    {0, 0, 0, 3, 3, 3590},
+    {0, 0, 0, 4, 4, 3590},
+    {0, 0, 0, 5, 5, 3590},
+    {0, 0, 0, 6, 6, 3590},
+    {0, 0, 0, 7, 7, 3590},
+    {0, 0, 0, 8, 8, 3590},
+    {0, 0, 0, 9, 9, 3590},
+    {65, 97, 65, 0, 0, 10113},
+    {66, 98, 66, 0, 0, 10113},
+    {67, 99, 67, 0, 0, 10113},
+    {68, 100, 68, 0, 0, 10113},
+    {69, 101, 69, 0, 0, 10113},
+    {70, 102, 70, 0, 0, 10113},
+    {71, 103, 71, 0, 0, 10113},
+    {72, 104, 72, 0, 0, 10113},
+    {73, 105, 73, 0, 0, 10113},
+    {74, 106, 74, 0, 0, 10113},
+    {75, 107, 75, 0, 0, 10113},
+    {76, 108, 76, 0, 0, 10113},
+    {77, 109, 77, 0, 0, 10113},
+    {78, 110, 78, 0, 0, 10113},
+    {79, 111, 79, 0, 0, 10113},
+    {80, 112, 80, 0, 0, 10113},
+    {81, 113, 81, 0, 0, 10113},
+    {82, 114, 82, 0, 0, 10113},
+    {83, 115, 83, 0, 0, 10113},
+    {84, 116, 84, 0, 0, 10113},
+    {85, 117, 85, 0, 0, 10113},
+    {86, 118, 86, 0, 0, 10113},
+    {87, 119, 87, 0, 0, 10113},
+    {88, 120, 88, 0, 0, 10113},
+    {89, 121, 89, 0, 0, 10113},
+    {90, 122, 90, 0, 0, 10113},
     {0, 0, 0, 0, 0, 1536},
-    {65504, 0, 65504, 0, 0, 1801},
-    {0, 0, 0, 0, 0, 1801},
-    {0, 0, 0, 0, 2, 5124},
-    {0, 0, 0, 0, 3, 5124},
-    {743, 0, 743, 0, 0, 1801},
-    {0, 0, 0, 0, 1, 5124},
-    {0, 0, 0, 0, 0, 5120},
-    {121, 0, 121, 0, 0, 1801},
-    {0, 1, 0, 0, 0, 1921},
-    {65535, 0, 65535, 0, 0, 1801},
-    {0, 65337, 0, 0, 0, 1921},
-    {65304, 0, 65304, 0, 0, 1801},
-    {0, 65415, 0, 0, 0, 1921},
-    {65236, 0, 65236, 0, 0, 1801},
-    {195, 0, 195, 0, 0, 1801},
-    {0, 210, 0, 0, 0, 1921},
-    {0, 206, 0, 0, 0, 1921},
-    {0, 205, 0, 0, 0, 1921},
-    {0, 79, 0, 0, 0, 1921},
-    {0, 202, 0, 0, 0, 1921},
-    {0, 203, 0, 0, 0, 1921},
-    {0, 207, 0, 0, 0, 1921},
-    {97, 0, 97, 0, 0, 1801},
-    {0, 211, 0, 0, 0, 1921},
-    {0, 209, 0, 0, 0, 1921},
-    {163, 0, 163, 0, 0, 1801},
-    {0, 213, 0, 0, 0, 1921},
-    {130, 0, 130, 0, 0, 1801},
-    {0, 214, 0, 0, 0, 1921},
-    {0, 218, 0, 0, 0, 1921},
-    {0, 217, 0, 0, 0, 1921},
-    {0, 219, 0, 0, 0, 1921},
+    {65, 97, 65, 0, 0, 9993},
+    {66, 98, 66, 0, 0, 9993},
+    {67, 99, 67, 0, 0, 9993},
+    {68, 100, 68, 0, 0, 9993},
+    {69, 101, 69, 0, 0, 9993},
+    {70, 102, 70, 0, 0, 9993},
+    {71, 103, 71, 0, 0, 9993},
+    {72, 104, 72, 0, 0, 9993},
+    {73, 105, 73, 0, 0, 9993},
+    {74, 106, 74, 0, 0, 9993},
+    {75, 107, 75, 0, 0, 9993},
+    {76, 108, 76, 0, 0, 9993},
+    {77, 109, 77, 0, 0, 9993},
+    {78, 110, 78, 0, 0, 9993},
+    {79, 111, 79, 0, 0, 9993},
+    {80, 112, 80, 0, 0, 9993},
+    {81, 113, 81, 0, 0, 9993},
+    {82, 114, 82, 0, 0, 9993},
+    {83, 115, 83, 0, 0, 9993},
+    {84, 116, 84, 0, 0, 9993},
+    {85, 117, 85, 0, 0, 9993},
+    {86, 118, 86, 0, 0, 9993},
+    {87, 119, 87, 0, 0, 9993},
+    {88, 120, 88, 0, 0, 9993},
+    {89, 121, 89, 0, 0, 9993},
+    {90, 122, 90, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 4096},
+    {0, 0, 0, 0, 2, 3076},
+    {0, 0, 0, 0, 3, 3076},
+    {924, 181, 924, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 5632},
+    {0, 0, 0, 0, 1, 3076},
+    {0, 0, 0, 0, 0, 3072},
+    {192, 224, 192, 0, 0, 10113},
+    {193, 225, 193, 0, 0, 10113},
+    {194, 226, 194, 0, 0, 10113},
+    {195, 227, 195, 0, 0, 10113},
+    {196, 228, 196, 0, 0, 10113},
+    {197, 229, 197, 0, 0, 10113},
+    {198, 230, 198, 0, 0, 10113},
+    {199, 231, 199, 0, 0, 10113},
+    {200, 232, 200, 0, 0, 10113},
+    {201, 233, 201, 0, 0, 10113},
+    {202, 234, 202, 0, 0, 10113},
+    {203, 235, 203, 0, 0, 10113},
+    {204, 236, 204, 0, 0, 10113},
+    {205, 237, 205, 0, 0, 10113},
+    {206, 238, 206, 0, 0, 10113},
+    {207, 239, 207, 0, 0, 10113},
+    {208, 240, 208, 0, 0, 10113},
+    {209, 241, 209, 0, 0, 10113},
+    {210, 242, 210, 0, 0, 10113},
+    {211, 243, 211, 0, 0, 10113},
+    {212, 244, 212, 0, 0, 10113},
+    {213, 245, 213, 0, 0, 10113},
+    {214, 246, 214, 0, 0, 10113},
+    {216, 248, 216, 0, 0, 10113},
+    {217, 249, 217, 0, 0, 10113},
+    {218, 250, 218, 0, 0, 10113},
+    {219, 251, 219, 0, 0, 10113},
+    {220, 252, 220, 0, 0, 10113},
+    {221, 253, 221, 0, 0, 10113},
+    {222, 254, 222, 0, 0, 10113},
+    {33554433, 16777216, 33554435, 0, 0, 26377},
+    {192, 224, 192, 0, 0, 9993},
+    {193, 225, 193, 0, 0, 9993},
+    {194, 226, 194, 0, 0, 9993},
+    {195, 227, 195, 0, 0, 9993},
+    {196, 228, 196, 0, 0, 9993},
+    {197, 229, 197, 0, 0, 9993},
+    {198, 230, 198, 0, 0, 9993},
+    {199, 231, 199, 0, 0, 9993},
+    {200, 232, 200, 0, 0, 9993},
+    {201, 233, 201, 0, 0, 9993},
+    {202, 234, 202, 0, 0, 9993},
+    {203, 235, 203, 0, 0, 9993},
+    {204, 236, 204, 0, 0, 9993},
+    {205, 237, 205, 0, 0, 9993},
+    {206, 238, 206, 0, 0, 9993},
+    {207, 239, 207, 0, 0, 9993},
+    {208, 240, 208, 0, 0, 9993},
+    {209, 241, 209, 0, 0, 9993},
+    {210, 242, 210, 0, 0, 9993},
+    {211, 243, 211, 0, 0, 9993},
+    {212, 244, 212, 0, 0, 9993},
+    {213, 245, 213, 0, 0, 9993},
+    {214, 246, 214, 0, 0, 9993},
+    {216, 248, 216, 0, 0, 9993},
+    {217, 249, 217, 0, 0, 9993},
+    {218, 250, 218, 0, 0, 9993},
+    {219, 251, 219, 0, 0, 9993},
+    {220, 252, 220, 0, 0, 9993},
+    {221, 253, 221, 0, 0, 9993},
+    {222, 254, 222, 0, 0, 9993},
+    {376, 255, 376, 0, 0, 9993},
+    {256, 257, 256, 0, 0, 10113},
+    {256, 257, 256, 0, 0, 9993},
+    {258, 259, 258, 0, 0, 10113},
+    {258, 259, 258, 0, 0, 9993},
+    {260, 261, 260, 0, 0, 10113},
+    {260, 261, 260, 0, 0, 9993},
+    {262, 263, 262, 0, 0, 10113},
+    {262, 263, 262, 0, 0, 9993},
+    {264, 265, 264, 0, 0, 10113},
+    {264, 265, 264, 0, 0, 9993},
+    {266, 267, 266, 0, 0, 10113},
+    {266, 267, 266, 0, 0, 9993},
+    {268, 269, 268, 0, 0, 10113},
+    {268, 269, 268, 0, 0, 9993},
+    {270, 271, 270, 0, 0, 10113},
+    {270, 271, 270, 0, 0, 9993},
+    {272, 273, 272, 0, 0, 10113},
+    {272, 273, 272, 0, 0, 9993},
+    {274, 275, 274, 0, 0, 10113},
+    {274, 275, 274, 0, 0, 9993},
+    {276, 277, 276, 0, 0, 10113},
+    {276, 277, 276, 0, 0, 9993},
+    {278, 279, 278, 0, 0, 10113},
+    {278, 279, 278, 0, 0, 9993},
+    {280, 281, 280, 0, 0, 10113},
+    {280, 281, 280, 0, 0, 9993},
+    {282, 283, 282, 0, 0, 10113},
+    {282, 283, 282, 0, 0, 9993},
+    {284, 285, 284, 0, 0, 10113},
+    {284, 285, 284, 0, 0, 9993},
+    {286, 287, 286, 0, 0, 10113},
+    {286, 287, 286, 0, 0, 9993},
+    {288, 289, 288, 0, 0, 10113},
+    {288, 289, 288, 0, 0, 9993},
+    {290, 291, 290, 0, 0, 10113},
+    {290, 291, 290, 0, 0, 9993},
+    {292, 293, 292, 0, 0, 10113},
+    {292, 293, 292, 0, 0, 9993},
+    {294, 295, 294, 0, 0, 10113},
+    {294, 295, 294, 0, 0, 9993},
+    {296, 297, 296, 0, 0, 10113},
+    {296, 297, 296, 0, 0, 9993},
+    {298, 299, 298, 0, 0, 10113},
+    {298, 299, 298, 0, 0, 9993},
+    {300, 301, 300, 0, 0, 10113},
+    {300, 301, 300, 0, 0, 9993},
+    {302, 303, 302, 0, 0, 10113},
+    {302, 303, 302, 0, 0, 9993},
+    {16777223, 33554437, 16777223, 0, 0, 26497},
+    {73, 305, 73, 0, 0, 9993},
+    {306, 307, 306, 0, 0, 10113},
+    {306, 307, 306, 0, 0, 9993},
+    {308, 309, 308, 0, 0, 10113},
+    {308, 309, 308, 0, 0, 9993},
+    {310, 311, 310, 0, 0, 10113},
+    {310, 311, 310, 0, 0, 9993},
+    {313, 314, 313, 0, 0, 10113},
+    {313, 314, 313, 0, 0, 9993},
+    {315, 316, 315, 0, 0, 10113},
+    {315, 316, 315, 0, 0, 9993},
+    {317, 318, 317, 0, 0, 10113},
+    {317, 318, 317, 0, 0, 9993},
+    {319, 320, 319, 0, 0, 10113},
+    {319, 320, 319, 0, 0, 9993},
+    {321, 322, 321, 0, 0, 10113},
+    {321, 322, 321, 0, 0, 9993},
+    {323, 324, 323, 0, 0, 10113},
+    {323, 324, 323, 0, 0, 9993},
+    {325, 326, 325, 0, 0, 10113},
+    {325, 326, 325, 0, 0, 9993},
+    {327, 328, 327, 0, 0, 10113},
+    {327, 328, 327, 0, 0, 9993},
+    {33554441, 16777224, 33554441, 0, 0, 26377},
+    {330, 331, 330, 0, 0, 10113},
+    {330, 331, 330, 0, 0, 9993},
+    {332, 333, 332, 0, 0, 10113},
+    {332, 333, 332, 0, 0, 9993},
+    {334, 335, 334, 0, 0, 10113},
+    {334, 335, 334, 0, 0, 9993},
+    {336, 337, 336, 0, 0, 10113},
+    {336, 337, 336, 0, 0, 9993},
+    {338, 339, 338, 0, 0, 10113},
+    {338, 339, 338, 0, 0, 9993},
+    {340, 341, 340, 0, 0, 10113},
+    {340, 341, 340, 0, 0, 9993},
+    {342, 343, 342, 0, 0, 10113},
+    {342, 343, 342, 0, 0, 9993},
+    {344, 345, 344, 0, 0, 10113},
+    {344, 345, 344, 0, 0, 9993},
+    {346, 347, 346, 0, 0, 10113},
+    {346, 347, 346, 0, 0, 9993},
+    {348, 349, 348, 0, 0, 10113},
+    {348, 349, 348, 0, 0, 9993},
+    {350, 351, 350, 0, 0, 10113},
+    {350, 351, 350, 0, 0, 9993},
+    {352, 353, 352, 0, 0, 10113},
+    {352, 353, 352, 0, 0, 9993},
+    {354, 355, 354, 0, 0, 10113},
+    {354, 355, 354, 0, 0, 9993},
+    {356, 357, 356, 0, 0, 10113},
+    {356, 357, 356, 0, 0, 9993},
+    {358, 359, 358, 0, 0, 10113},
+    {358, 359, 358, 0, 0, 9993},
+    {360, 361, 360, 0, 0, 10113},
+    {360, 361, 360, 0, 0, 9993},
+    {362, 363, 362, 0, 0, 10113},
+    {362, 363, 362, 0, 0, 9993},
+    {364, 365, 364, 0, 0, 10113},
+    {364, 365, 364, 0, 0, 9993},
+    {366, 367, 366, 0, 0, 10113},
+    {366, 367, 366, 0, 0, 9993},
+    {368, 369, 368, 0, 0, 10113},
+    {368, 369, 368, 0, 0, 9993},
+    {370, 371, 370, 0, 0, 10113},
+    {370, 371, 370, 0, 0, 9993},
+    {372, 373, 372, 0, 0, 10113},
+    {372, 373, 372, 0, 0, 9993},
+    {374, 375, 374, 0, 0, 10113},
+    {374, 375, 374, 0, 0, 9993},
+    {376, 255, 376, 0, 0, 10113},
+    {377, 378, 377, 0, 0, 10113},
+    {377, 378, 377, 0, 0, 9993},
+    {379, 380, 379, 0, 0, 10113},
+    {379, 380, 379, 0, 0, 9993},
+    {381, 382, 381, 0, 0, 10113},
+    {381, 382, 381, 0, 0, 9993},
+    {83, 383, 83, 0, 0, 9993},
+    {579, 384, 579, 0, 0, 9993},
+    {385, 595, 385, 0, 0, 10113},
+    {386, 387, 386, 0, 0, 10113},
+    {386, 387, 386, 0, 0, 9993},
+    {388, 389, 388, 0, 0, 10113},
+    {388, 389, 388, 0, 0, 9993},
+    {390, 596, 390, 0, 0, 10113},
+    {391, 392, 391, 0, 0, 10113},
+    {391, 392, 391, 0, 0, 9993},
+    {393, 598, 393, 0, 0, 10113},
+    {394, 599, 394, 0, 0, 10113},
+    {395, 396, 395, 0, 0, 10113},
+    {395, 396, 395, 0, 0, 9993},
+    {398, 477, 398, 0, 0, 10113},
+    {399, 601, 399, 0, 0, 10113},
+    {400, 603, 400, 0, 0, 10113},
+    {401, 402, 401, 0, 0, 10113},
+    {401, 402, 401, 0, 0, 9993},
+    {403, 608, 403, 0, 0, 10113},
+    {404, 611, 404, 0, 0, 10113},
+    {502, 405, 502, 0, 0, 9993},
+    {406, 617, 406, 0, 0, 10113},
+    {407, 616, 407, 0, 0, 10113},
+    {408, 409, 408, 0, 0, 10113},
+    {408, 409, 408, 0, 0, 9993},
+    {573, 410, 573, 0, 0, 9993},
+    {412, 623, 412, 0, 0, 10113},
+    {413, 626, 413, 0, 0, 10113},
+    {544, 414, 544, 0, 0, 9993},
+    {415, 629, 415, 0, 0, 10113},
+    {416, 417, 416, 0, 0, 10113},
+    {416, 417, 416, 0, 0, 9993},
+    {418, 419, 418, 0, 0, 10113},
+    {418, 419, 418, 0, 0, 9993},
+    {420, 421, 420, 0, 0, 10113},
+    {420, 421, 420, 0, 0, 9993},
+    {422, 640, 422, 0, 0, 10113},
+    {423, 424, 423, 0, 0, 10113},
+    {423, 424, 423, 0, 0, 9993},
+    {425, 643, 425, 0, 0, 10113},
+    {428, 429, 428, 0, 0, 10113},
+    {428, 429, 428, 0, 0, 9993},
+    {430, 648, 430, 0, 0, 10113},
+    {431, 432, 431, 0, 0, 10113},
+    {431, 432, 431, 0, 0, 9993},
+    {433, 650, 433, 0, 0, 10113},
+    {434, 651, 434, 0, 0, 10113},
+    {435, 436, 435, 0, 0, 10113},
+    {435, 436, 435, 0, 0, 9993},
+    {437, 438, 437, 0, 0, 10113},
+    {437, 438, 437, 0, 0, 9993},
+    {439, 658, 439, 0, 0, 10113},
+    {440, 441, 440, 0, 0, 10113},
+    {440, 441, 440, 0, 0, 9993},
     {0, 0, 0, 0, 0, 1793},
-    {56, 0, 56, 0, 0, 1801},
-    {0, 2, 1, 0, 0, 1921},
-    {65535, 1, 0, 0, 0, 1857},
-    {65534, 0, 65535, 0, 0, 1801},
-    {65457, 0, 65457, 0, 0, 1801},
-    {0, 65439, 0, 0, 0, 1921},
-    {0, 65480, 0, 0, 0, 1921},
-    {0, 65406, 0, 0, 0, 1921},
-    {0, 10795, 0, 0, 0, 1921},
-    {0, 65373, 0, 0, 0, 1921},
-    {0, 10792, 0, 0, 0, 1921},
-    {10815, 0, 10815, 0, 0, 1801},
-    {0, 65341, 0, 0, 0, 1921},
-    {0, 69, 0, 0, 0, 1921},
-    {0, 71, 0, 0, 0, 1921},
-    {10783, 0, 10783, 0, 0, 1801},
-    {10780, 0, 10780, 0, 0, 1801},
-    {10782, 0, 10782, 0, 0, 1801},
-    {65326, 0, 65326, 0, 0, 1801},
-    {65330, 0, 65330, 0, 0, 1801},
-    {65331, 0, 65331, 0, 0, 1801},
-    {65334, 0, 65334, 0, 0, 1801},
-    {65333, 0, 65333, 0, 0, 1801},
-    {65329, 0, 65329, 0, 0, 1801},
-    {42893, 613, 42893, 0, 0, 3849},
-    {65327, 0, 65327, 0, 0, 1801},
-    {65325, 0, 65325, 0, 0, 1801},
-    {10743, 0, 10743, 0, 0, 1801},
-    {10749, 0, 10749, 0, 0, 1801},
-    {65323, 0, 65323, 0, 0, 1801},
-    {65322, 0, 65322, 0, 0, 1801},
-    {10727, 0, 10727, 0, 0, 1801},
-    {65318, 0, 65318, 0, 0, 1801},
-    {65467, 0, 65467, 0, 0, 1801},
-    {65319, 0, 65319, 0, 0, 1801},
-    {65465, 0, 65465, 0, 0, 1801},
-    {65317, 0, 65317, 0, 0, 1801},
-    {84, 0, 84, 0, 0, 1536},
+    {444, 445, 444, 0, 0, 10113},
+    {444, 445, 444, 0, 0, 9993},
+    {503, 447, 503, 0, 0, 9993},
+    {452, 454, 453, 0, 0, 10113},
+    {452, 454, 453, 0, 0, 10049},
+    {452, 454, 453, 0, 0, 9993},
+    {455, 457, 456, 0, 0, 10113},
+    {455, 457, 456, 0, 0, 10049},
+    {455, 457, 456, 0, 0, 9993},
+    {458, 460, 459, 0, 0, 10113},
+    {458, 460, 459, 0, 0, 10049},
+    {458, 460, 459, 0, 0, 9993},
+    {461, 462, 461, 0, 0, 10113},
+    {461, 462, 461, 0, 0, 9993},
+    {463, 464, 463, 0, 0, 10113},
+    {463, 464, 463, 0, 0, 9993},
+    {465, 466, 465, 0, 0, 10113},
+    {465, 466, 465, 0, 0, 9993},
+    {467, 468, 467, 0, 0, 10113},
+    {467, 468, 467, 0, 0, 9993},
+    {469, 470, 469, 0, 0, 10113},
+    {469, 470, 469, 0, 0, 9993},
+    {471, 472, 471, 0, 0, 10113},
+    {471, 472, 471, 0, 0, 9993},
+    {473, 474, 473, 0, 0, 10113},
+    {473, 474, 473, 0, 0, 9993},
+    {475, 476, 475, 0, 0, 10113},
+    {475, 476, 475, 0, 0, 9993},
+    {398, 477, 398, 0, 0, 9993},
+    {478, 479, 478, 0, 0, 10113},
+    {478, 479, 478, 0, 0, 9993},
+    {480, 481, 480, 0, 0, 10113},
+    {480, 481, 480, 0, 0, 9993},
+    {482, 483, 482, 0, 0, 10113},
+    {482, 483, 482, 0, 0, 9993},
+    {484, 485, 484, 0, 0, 10113},
+    {484, 485, 484, 0, 0, 9993},
+    {486, 487, 486, 0, 0, 10113},
+    {486, 487, 486, 0, 0, 9993},
+    {488, 489, 488, 0, 0, 10113},
+    {488, 489, 488, 0, 0, 9993},
+    {490, 491, 490, 0, 0, 10113},
+    {490, 491, 490, 0, 0, 9993},
+    {492, 493, 492, 0, 0, 10113},
+    {492, 493, 492, 0, 0, 9993},
+    {494, 495, 494, 0, 0, 10113},
+    {494, 495, 494, 0, 0, 9993},
+    {33554444, 16777227, 33554444, 0, 0, 26377},
+    {497, 499, 498, 0, 0, 10113},
+    {497, 499, 498, 0, 0, 10049},
+    {497, 499, 498, 0, 0, 9993},
+    {500, 501, 500, 0, 0, 10113},
+    {500, 501, 500, 0, 0, 9993},
+    {502, 405, 502, 0, 0, 10113},
+    {503, 447, 503, 0, 0, 10113},
+    {504, 505, 504, 0, 0, 10113},
+    {504, 505, 504, 0, 0, 9993},
+    {506, 507, 506, 0, 0, 10113},
+    {506, 507, 506, 0, 0, 9993},
+    {508, 509, 508, 0, 0, 10113},
+    {508, 509, 508, 0, 0, 9993},
+    {510, 511, 510, 0, 0, 10113},
+    {510, 511, 510, 0, 0, 9993},
+    {512, 513, 512, 0, 0, 10113},
+    {512, 513, 512, 0, 0, 9993},
+    {514, 515, 514, 0, 0, 10113},
+    {514, 515, 514, 0, 0, 9993},
+    {516, 517, 516, 0, 0, 10113},
+    {516, 517, 516, 0, 0, 9993},
+    {518, 519, 518, 0, 0, 10113},
+    {518, 519, 518, 0, 0, 9993},
+    {520, 521, 520, 0, 0, 10113},
+    {520, 521, 520, 0, 0, 9993},
+    {522, 523, 522, 0, 0, 10113},
+    {522, 523, 522, 0, 0, 9993},
+    {524, 525, 524, 0, 0, 10113},
+    {524, 525, 524, 0, 0, 9993},
+    {526, 527, 526, 0, 0, 10113},
+    {526, 527, 526, 0, 0, 9993},
+    {528, 529, 528, 0, 0, 10113},
+    {528, 529, 528, 0, 0, 9993},
+    {530, 531, 530, 0, 0, 10113},
+    {530, 531, 530, 0, 0, 9993},
+    {532, 533, 532, 0, 0, 10113},
+    {532, 533, 532, 0, 0, 9993},
+    {534, 535, 534, 0, 0, 10113},
+    {534, 535, 534, 0, 0, 9993},
+    {536, 537, 536, 0, 0, 10113},
+    {536, 537, 536, 0, 0, 9993},
+    {538, 539, 538, 0, 0, 10113},
+    {538, 539, 538, 0, 0, 9993},
+    {540, 541, 540, 0, 0, 10113},
+    {540, 541, 540, 0, 0, 9993},
+    {542, 543, 542, 0, 0, 10113},
+    {542, 543, 542, 0, 0, 9993},
+    {544, 414, 544, 0, 0, 10113},
+    {546, 547, 546, 0, 0, 10113},
+    {546, 547, 546, 0, 0, 9993},
+    {548, 549, 548, 0, 0, 10113},
+    {548, 549, 548, 0, 0, 9993},
+    {550, 551, 550, 0, 0, 10113},
+    {550, 551, 550, 0, 0, 9993},
+    {552, 553, 552, 0, 0, 10113},
+    {552, 553, 552, 0, 0, 9993},
+    {554, 555, 554, 0, 0, 10113},
+    {554, 555, 554, 0, 0, 9993},
+    {556, 557, 556, 0, 0, 10113},
+    {556, 557, 556, 0, 0, 9993},
+    {558, 559, 558, 0, 0, 10113},
+    {558, 559, 558, 0, 0, 9993},
+    {560, 561, 560, 0, 0, 10113},
+    {560, 561, 560, 0, 0, 9993},
+    {562, 563, 562, 0, 0, 10113},
+    {562, 563, 562, 0, 0, 9993},
+    {570, 11365, 570, 0, 0, 10113},
+    {571, 572, 571, 0, 0, 10113},
+    {571, 572, 571, 0, 0, 9993},
+    {573, 410, 573, 0, 0, 10113},
+    {574, 11366, 574, 0, 0, 10113},
+    {11390, 575, 11390, 0, 0, 9993},
+    {11391, 576, 11391, 0, 0, 9993},
+    {577, 578, 577, 0, 0, 10113},
+    {577, 578, 577, 0, 0, 9993},
+    {579, 384, 579, 0, 0, 10113},
+    {580, 649, 580, 0, 0, 10113},
+    {581, 652, 581, 0, 0, 10113},
+    {582, 583, 582, 0, 0, 10113},
+    {582, 583, 582, 0, 0, 9993},
+    {584, 585, 584, 0, 0, 10113},
+    {584, 585, 584, 0, 0, 9993},
+    {586, 587, 586, 0, 0, 10113},
+    {586, 587, 586, 0, 0, 9993},
+    {588, 589, 588, 0, 0, 10113},
+    {588, 589, 588, 0, 0, 9993},
+    {590, 591, 590, 0, 0, 10113},
+    {590, 591, 590, 0, 0, 9993},
+    {11375, 592, 11375, 0, 0, 9993},
+    {11373, 593, 11373, 0, 0, 9993},
+    {11376, 594, 11376, 0, 0, 9993},
+    {385, 595, 385, 0, 0, 9993},
+    {390, 596, 390, 0, 0, 9993},
+    {393, 598, 393, 0, 0, 9993},
+    {394, 599, 394, 0, 0, 9993},
+    {399, 601, 399, 0, 0, 9993},
+    {400, 603, 400, 0, 0, 9993},
+    {403, 608, 403, 0, 0, 9993},
+    {404, 611, 404, 0, 0, 9993},
+    {42893, 613, 42893, 0, 0, 9993},
+    {407, 616, 407, 0, 0, 9993},
+    {406, 617, 406, 0, 0, 9993},
+    {11362, 619, 11362, 0, 0, 9993},
+    {412, 623, 412, 0, 0, 9993},
+    {11374, 625, 11374, 0, 0, 9993},
+    {413, 626, 413, 0, 0, 9993},
+    {415, 629, 415, 0, 0, 9993},
+    {11364, 637, 11364, 0, 0, 9993},
+    {422, 640, 422, 0, 0, 9993},
+    {425, 643, 425, 0, 0, 9993},
+    {430, 648, 430, 0, 0, 9993},
+    {580, 649, 580, 0, 0, 9993},
+    {433, 650, 433, 0, 0, 9993},
+    {434, 651, 434, 0, 0, 9993},
+    {581, 652, 581, 0, 0, 9993},
+    {439, 658, 439, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 14089},
+    {0, 0, 0, 0, 0, 5889},
+    {921, 837, 921, 0, 0, 13832},
+    {880, 881, 880, 0, 0, 10113},
+    {880, 881, 880, 0, 0, 9993},
+    {882, 883, 882, 0, 0, 10113},
+    {882, 883, 882, 0, 0, 9993},
+    {886, 887, 886, 0, 0, 10113},
+    {886, 887, 886, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 13321},
+    {1021, 891, 1021, 0, 0, 9993},
+    {1022, 892, 1022, 0, 0, 9993},
+    {1023, 893, 1023, 0, 0, 9993},
+    {902, 940, 902, 0, 0, 10113},
+    {904, 941, 904, 0, 0, 10113},
+    {905, 942, 905, 0, 0, 10113},
+    {906, 943, 906, 0, 0, 10113},
+    {908, 972, 908, 0, 0, 10113},
+    {910, 973, 910, 0, 0, 10113},
+    {911, 974, 911, 0, 0, 10113},
+    {50331663, 16777230, 50331663, 0, 0, 26377},
+    {913, 945, 913, 0, 0, 10113},
+    {914, 946, 914, 0, 0, 10113},
+    {915, 947, 915, 0, 0, 10113},
+    {916, 948, 916, 0, 0, 10113},
+    {917, 949, 917, 0, 0, 10113},
+    {918, 950, 918, 0, 0, 10113},
+    {919, 951, 919, 0, 0, 10113},
+    {920, 952, 920, 0, 0, 10113},
+    {921, 953, 921, 0, 0, 10113},
+    {922, 954, 922, 0, 0, 10113},
+    {923, 955, 923, 0, 0, 10113},
+    {924, 956, 924, 0, 0, 10113},
+    {925, 957, 925, 0, 0, 10113},
+    {926, 958, 926, 0, 0, 10113},
+    {927, 959, 927, 0, 0, 10113},
+    {928, 960, 928, 0, 0, 10113},
+    {929, 961, 929, 0, 0, 10113},
+    {931, 963, 931, 0, 0, 10113},
+    {932, 964, 932, 0, 0, 10113},
+    {933, 965, 933, 0, 0, 10113},
+    {934, 966, 934, 0, 0, 10113},
+    {935, 967, 935, 0, 0, 10113},
+    {936, 968, 936, 0, 0, 10113},
+    {937, 969, 937, 0, 0, 10113},
+    {938, 970, 938, 0, 0, 10113},
+    {939, 971, 939, 0, 0, 10113},
+    {902, 940, 902, 0, 0, 9993},
+    {904, 941, 904, 0, 0, 9993},
+    {905, 942, 905, 0, 0, 9993},
+    {906, 943, 906, 0, 0, 9993},
+    {50331667, 16777234, 50331667, 0, 0, 26377},
+    {913, 945, 913, 0, 0, 9993},
+    {914, 946, 914, 0, 0, 9993},
+    {915, 947, 915, 0, 0, 9993},
+    {916, 948, 916, 0, 0, 9993},
+    {917, 949, 917, 0, 0, 9993},
+    {918, 950, 918, 0, 0, 9993},
+    {919, 951, 919, 0, 0, 9993},
+    {920, 952, 920, 0, 0, 9993},
+    {921, 953, 921, 0, 0, 9993},
+    {922, 954, 922, 0, 0, 9993},
+    {923, 955, 923, 0, 0, 9993},
+    {924, 956, 924, 0, 0, 9993},
+    {925, 957, 925, 0, 0, 9993},
+    {926, 958, 926, 0, 0, 9993},
+    {927, 959, 927, 0, 0, 9993},
+    {928, 960, 928, 0, 0, 9993},
+    {929, 961, 929, 0, 0, 9993},
+    {931, 962, 931, 0, 0, 9993},
+    {931, 963, 931, 0, 0, 9993},
+    {932, 964, 932, 0, 0, 9993},
+    {933, 965, 933, 0, 0, 9993},
+    {934, 966, 934, 0, 0, 9993},
+    {935, 967, 935, 0, 0, 9993},
+    {936, 968, 936, 0, 0, 9993},
+    {937, 969, 937, 0, 0, 9993},
+    {938, 970, 938, 0, 0, 9993},
+    {939, 971, 939, 0, 0, 9993},
+    {908, 972, 908, 0, 0, 9993},
+    {910, 973, 910, 0, 0, 9993},
+    {911, 974, 911, 0, 0, 9993},
+    {975, 983, 975, 0, 0, 10113},
+    {914, 976, 914, 0, 0, 9993},
+    {920, 977, 920, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 10113},
+    {934, 981, 934, 0, 0, 9993},
+    {928, 982, 928, 0, 0, 9993},
+    {975, 983, 975, 0, 0, 9993},
+    {984, 985, 984, 0, 0, 10113},
+    {984, 985, 984, 0, 0, 9993},
+    {986, 987, 986, 0, 0, 10113},
+    {986, 987, 986, 0, 0, 9993},
+    {988, 989, 988, 0, 0, 10113},
+    {988, 989, 988, 0, 0, 9993},
+    {990, 991, 990, 0, 0, 10113},
+    {990, 991, 990, 0, 0, 9993},
+    {992, 993, 992, 0, 0, 10113},
+    {992, 993, 992, 0, 0, 9993},
+    {994, 995, 994, 0, 0, 10113},
+    {994, 995, 994, 0, 0, 9993},
+    {996, 997, 996, 0, 0, 10113},
+    {996, 997, 996, 0, 0, 9993},
+    {998, 999, 998, 0, 0, 10113},
+    {998, 999, 998, 0, 0, 9993},
+    {1000, 1001, 1000, 0, 0, 10113},
+    {1000, 1001, 1000, 0, 0, 9993},
+    {1002, 1003, 1002, 0, 0, 10113},
+    {1002, 1003, 1002, 0, 0, 9993},
+    {1004, 1005, 1004, 0, 0, 10113},
+    {1004, 1005, 1004, 0, 0, 9993},
+    {1006, 1007, 1006, 0, 0, 10113},
+    {1006, 1007, 1006, 0, 0, 9993},
+    {922, 1008, 922, 0, 0, 9993},
+    {929, 1009, 929, 0, 0, 9993},
+    {1017, 1010, 1017, 0, 0, 9993},
+    {1012, 952, 1012, 0, 0, 10113},
+    {917, 1013, 917, 0, 0, 9993},
+    {1015, 1016, 1015, 0, 0, 10113},
+    {1015, 1016, 1015, 0, 0, 9993},
+    {1017, 1010, 1017, 0, 0, 10113},
+    {1018, 1019, 1018, 0, 0, 10113},
+    {1018, 1019, 1018, 0, 0, 9993},
+    {1021, 891, 1021, 0, 0, 10113},
+    {1022, 892, 1022, 0, 0, 10113},
+    {1023, 893, 1023, 0, 0, 10113},
+    {1024, 1104, 1024, 0, 0, 10113},
+    {1025, 1105, 1025, 0, 0, 10113},
+    {1026, 1106, 1026, 0, 0, 10113},
+    {1027, 1107, 1027, 0, 0, 10113},
+    {1028, 1108, 1028, 0, 0, 10113},
+    {1029, 1109, 1029, 0, 0, 10113},
+    {1030, 1110, 1030, 0, 0, 10113},
+    {1031, 1111, 1031, 0, 0, 10113},
+    {1032, 1112, 1032, 0, 0, 10113},
+    {1033, 1113, 1033, 0, 0, 10113},
+    {1034, 1114, 1034, 0, 0, 10113},
+    {1035, 1115, 1035, 0, 0, 10113},
+    {1036, 1116, 1036, 0, 0, 10113},
+    {1037, 1117, 1037, 0, 0, 10113},
+    {1038, 1118, 1038, 0, 0, 10113},
+    {1039, 1119, 1039, 0, 0, 10113},
+    {1040, 1072, 1040, 0, 0, 10113},
+    {1041, 1073, 1041, 0, 0, 10113},
+    {1042, 1074, 1042, 0, 0, 10113},
+    {1043, 1075, 1043, 0, 0, 10113},
+    {1044, 1076, 1044, 0, 0, 10113},
+    {1045, 1077, 1045, 0, 0, 10113},
+    {1046, 1078, 1046, 0, 0, 10113},
+    {1047, 1079, 1047, 0, 0, 10113},
+    {1048, 1080, 1048, 0, 0, 10113},
+    {1049, 1081, 1049, 0, 0, 10113},
+    {1050, 1082, 1050, 0, 0, 10113},
+    {1051, 1083, 1051, 0, 0, 10113},
+    {1052, 1084, 1052, 0, 0, 10113},
+    {1053, 1085, 1053, 0, 0, 10113},
+    {1054, 1086, 1054, 0, 0, 10113},
+    {1055, 1087, 1055, 0, 0, 10113},
+    {1056, 1088, 1056, 0, 0, 10113},
+    {1057, 1089, 1057, 0, 0, 10113},
+    {1058, 1090, 1058, 0, 0, 10113},
+    {1059, 1091, 1059, 0, 0, 10113},
+    {1060, 1092, 1060, 0, 0, 10113},
+    {1061, 1093, 1061, 0, 0, 10113},
+    {1062, 1094, 1062, 0, 0, 10113},
+    {1063, 1095, 1063, 0, 0, 10113},
+    {1064, 1096, 1064, 0, 0, 10113},
+    {1065, 1097, 1065, 0, 0, 10113},
+    {1066, 1098, 1066, 0, 0, 10113},
+    {1067, 1099, 1067, 0, 0, 10113},
+    {1068, 1100, 1068, 0, 0, 10113},
+    {1069, 1101, 1069, 0, 0, 10113},
+    {1070, 1102, 1070, 0, 0, 10113},
+    {1071, 1103, 1071, 0, 0, 10113},
+    {1040, 1072, 1040, 0, 0, 9993},
+    {1041, 1073, 1041, 0, 0, 9993},
+    {1042, 1074, 1042, 0, 0, 9993},
+    {1043, 1075, 1043, 0, 0, 9993},
+    {1044, 1076, 1044, 0, 0, 9993},
+    {1045, 1077, 1045, 0, 0, 9993},
+    {1046, 1078, 1046, 0, 0, 9993},
+    {1047, 1079, 1047, 0, 0, 9993},
+    {1048, 1080, 1048, 0, 0, 9993},
+    {1049, 1081, 1049, 0, 0, 9993},
+    {1050, 1082, 1050, 0, 0, 9993},
+    {1051, 1083, 1051, 0, 0, 9993},
+    {1052, 1084, 1052, 0, 0, 9993},
+    {1053, 1085, 1053, 0, 0, 9993},
+    {1054, 1086, 1054, 0, 0, 9993},
+    {1055, 1087, 1055, 0, 0, 9993},
+    {1056, 1088, 1056, 0, 0, 9993},
+    {1057, 1089, 1057, 0, 0, 9993},
+    {1058, 1090, 1058, 0, 0, 9993},
+    {1059, 1091, 1059, 0, 0, 9993},
+    {1060, 1092, 1060, 0, 0, 9993},
+    {1061, 1093, 1061, 0, 0, 9993},
+    {1062, 1094, 1062, 0, 0, 9993},
+    {1063, 1095, 1063, 0, 0, 9993},
+    {1064, 1096, 1064, 0, 0, 9993},
+    {1065, 1097, 1065, 0, 0, 9993},
+    {1066, 1098, 1066, 0, 0, 9993},
+    {1067, 1099, 1067, 0, 0, 9993},
+    {1068, 1100, 1068, 0, 0, 9993},
+    {1069, 1101, 1069, 0, 0, 9993},
+    {1070, 1102, 1070, 0, 0, 9993},
+    {1071, 1103, 1071, 0, 0, 9993},
+    {1024, 1104, 1024, 0, 0, 9993},
+    {1025, 1105, 1025, 0, 0, 9993},
+    {1026, 1106, 1026, 0, 0, 9993},
+    {1027, 1107, 1027, 0, 0, 9993},
+    {1028, 1108, 1028, 0, 0, 9993},
+    {1029, 1109, 1029, 0, 0, 9993},
+    {1030, 1110, 1030, 0, 0, 9993},
+    {1031, 1111, 1031, 0, 0, 9993},
+    {1032, 1112, 1032, 0, 0, 9993},
+    {1033, 1113, 1033, 0, 0, 9993},
+    {1034, 1114, 1034, 0, 0, 9993},
+    {1035, 1115, 1035, 0, 0, 9993},
+    {1036, 1116, 1036, 0, 0, 9993},
+    {1037, 1117, 1037, 0, 0, 9993},
+    {1038, 1118, 1038, 0, 0, 9993},
+    {1039, 1119, 1039, 0, 0, 9993},
+    {1120, 1121, 1120, 0, 0, 10113},
+    {1120, 1121, 1120, 0, 0, 9993},
+    {1122, 1123, 1122, 0, 0, 10113},
+    {1122, 1123, 1122, 0, 0, 9993},
+    {1124, 1125, 1124, 0, 0, 10113},
+    {1124, 1125, 1124, 0, 0, 9993},
+    {1126, 1127, 1126, 0, 0, 10113},
+    {1126, 1127, 1126, 0, 0, 9993},
+    {1128, 1129, 1128, 0, 0, 10113},
+    {1128, 1129, 1128, 0, 0, 9993},
+    {1130, 1131, 1130, 0, 0, 10113},
+    {1130, 1131, 1130, 0, 0, 9993},
+    {1132, 1133, 1132, 0, 0, 10113},
+    {1132, 1133, 1132, 0, 0, 9993},
+    {1134, 1135, 1134, 0, 0, 10113},
+    {1134, 1135, 1134, 0, 0, 9993},
+    {1136, 1137, 1136, 0, 0, 10113},
+    {1136, 1137, 1136, 0, 0, 9993},
+    {1138, 1139, 1138, 0, 0, 10113},
+    {1138, 1139, 1138, 0, 0, 9993},
+    {1140, 1141, 1140, 0, 0, 10113},
+    {1140, 1141, 1140, 0, 0, 9993},
+    {1142, 1143, 1142, 0, 0, 10113},
+    {1142, 1143, 1142, 0, 0, 9993},
+    {1144, 1145, 1144, 0, 0, 10113},
+    {1144, 1145, 1144, 0, 0, 9993},
+    {1146, 1147, 1146, 0, 0, 10113},
+    {1146, 1147, 1146, 0, 0, 9993},
+    {1148, 1149, 1148, 0, 0, 10113},
+    {1148, 1149, 1148, 0, 0, 9993},
+    {1150, 1151, 1150, 0, 0, 10113},
+    {1150, 1151, 1150, 0, 0, 9993},
+    {1152, 1153, 1152, 0, 0, 10113},
+    {1152, 1153, 1152, 0, 0, 9993},
+    {1162, 1163, 1162, 0, 0, 10113},
+    {1162, 1163, 1162, 0, 0, 9993},
+    {1164, 1165, 1164, 0, 0, 10113},
+    {1164, 1165, 1164, 0, 0, 9993},
+    {1166, 1167, 1166, 0, 0, 10113},
+    {1166, 1167, 1166, 0, 0, 9993},
+    {1168, 1169, 1168, 0, 0, 10113},
+    {1168, 1169, 1168, 0, 0, 9993},
+    {1170, 1171, 1170, 0, 0, 10113},
+    {1170, 1171, 1170, 0, 0, 9993},
+    {1172, 1173, 1172, 0, 0, 10113},
+    {1172, 1173, 1172, 0, 0, 9993},
+    {1174, 1175, 1174, 0, 0, 10113},
+    {1174, 1175, 1174, 0, 0, 9993},
+    {1176, 1177, 1176, 0, 0, 10113},
+    {1176, 1177, 1176, 0, 0, 9993},
+    {1178, 1179, 1178, 0, 0, 10113},
+    {1178, 1179, 1178, 0, 0, 9993},
+    {1180, 1181, 1180, 0, 0, 10113},
+    {1180, 1181, 1180, 0, 0, 9993},
+    {1182, 1183, 1182, 0, 0, 10113},
+    {1182, 1183, 1182, 0, 0, 9993},
+    {1184, 1185, 1184, 0, 0, 10113},
+    {1184, 1185, 1184, 0, 0, 9993},
+    {1186, 1187, 1186, 0, 0, 10113},
+    {1186, 1187, 1186, 0, 0, 9993},
+    {1188, 1189, 1188, 0, 0, 10113},
+    {1188, 1189, 1188, 0, 0, 9993},
+    {1190, 1191, 1190, 0, 0, 10113},
+    {1190, 1191, 1190, 0, 0, 9993},
+    {1192, 1193, 1192, 0, 0, 10113},
+    {1192, 1193, 1192, 0, 0, 9993},
+    {1194, 1195, 1194, 0, 0, 10113},
+    {1194, 1195, 1194, 0, 0, 9993},
+    {1196, 1197, 1196, 0, 0, 10113},
+    {1196, 1197, 1196, 0, 0, 9993},
+    {1198, 1199, 1198, 0, 0, 10113},
+    {1198, 1199, 1198, 0, 0, 9993},
+    {1200, 1201, 1200, 0, 0, 10113},
+    {1200, 1201, 1200, 0, 0, 9993},
+    {1202, 1203, 1202, 0, 0, 10113},
+    {1202, 1203, 1202, 0, 0, 9993},
+    {1204, 1205, 1204, 0, 0, 10113},
+    {1204, 1205, 1204, 0, 0, 9993},
+    {1206, 1207, 1206, 0, 0, 10113},
+    {1206, 1207, 1206, 0, 0, 9993},
+    {1208, 1209, 1208, 0, 0, 10113},
+    {1208, 1209, 1208, 0, 0, 9993},
+    {1210, 1211, 1210, 0, 0, 10113},
+    {1210, 1211, 1210, 0, 0, 9993},
+    {1212, 1213, 1212, 0, 0, 10113},
+    {1212, 1213, 1212, 0, 0, 9993},
+    {1214, 1215, 1214, 0, 0, 10113},
+    {1214, 1215, 1214, 0, 0, 9993},
+    {1216, 1231, 1216, 0, 0, 10113},
+    {1217, 1218, 1217, 0, 0, 10113},
+    {1217, 1218, 1217, 0, 0, 9993},
+    {1219, 1220, 1219, 0, 0, 10113},
+    {1219, 1220, 1219, 0, 0, 9993},
+    {1221, 1222, 1221, 0, 0, 10113},
+    {1221, 1222, 1221, 0, 0, 9993},
+    {1223, 1224, 1223, 0, 0, 10113},
+    {1223, 1224, 1223, 0, 0, 9993},
+    {1225, 1226, 1225, 0, 0, 10113},
+    {1225, 1226, 1225, 0, 0, 9993},
+    {1227, 1228, 1227, 0, 0, 10113},
+    {1227, 1228, 1227, 0, 0, 9993},
+    {1229, 1230, 1229, 0, 0, 10113},
+    {1229, 1230, 1229, 0, 0, 9993},
+    {1216, 1231, 1216, 0, 0, 9993},
+    {1232, 1233, 1232, 0, 0, 10113},
+    {1232, 1233, 1232, 0, 0, 9993},
+    {1234, 1235, 1234, 0, 0, 10113},
+    {1234, 1235, 1234, 0, 0, 9993},
+    {1236, 1237, 1236, 0, 0, 10113},
+    {1236, 1237, 1236, 0, 0, 9993},
+    {1238, 1239, 1238, 0, 0, 10113},
+    {1238, 1239, 1238, 0, 0, 9993},
+    {1240, 1241, 1240, 0, 0, 10113},
+    {1240, 1241, 1240, 0, 0, 9993},
+    {1242, 1243, 1242, 0, 0, 10113},
+    {1242, 1243, 1242, 0, 0, 9993},
+    {1244, 1245, 1244, 0, 0, 10113},
+    {1244, 1245, 1244, 0, 0, 9993},
+    {1246, 1247, 1246, 0, 0, 10113},
+    {1246, 1247, 1246, 0, 0, 9993},
+    {1248, 1249, 1248, 0, 0, 10113},
+    {1248, 1249, 1248, 0, 0, 9993},
+    {1250, 1251, 1250, 0, 0, 10113},
+    {1250, 1251, 1250, 0, 0, 9993},
+    {1252, 1253, 1252, 0, 0, 10113},
+    {1252, 1253, 1252, 0, 0, 9993},
+    {1254, 1255, 1254, 0, 0, 10113},
+    {1254, 1255, 1254, 0, 0, 9993},
+    {1256, 1257, 1256, 0, 0, 10113},
+    {1256, 1257, 1256, 0, 0, 9993},
+    {1258, 1259, 1258, 0, 0, 10113},
+    {1258, 1259, 1258, 0, 0, 9993},
+    {1260, 1261, 1260, 0, 0, 10113},
+    {1260, 1261, 1260, 0, 0, 9993},
+    {1262, 1263, 1262, 0, 0, 10113},
+    {1262, 1263, 1262, 0, 0, 9993},
+    {1264, 1265, 1264, 0, 0, 10113},
+    {1264, 1265, 1264, 0, 0, 9993},
+    {1266, 1267, 1266, 0, 0, 10113},
+    {1266, 1267, 1266, 0, 0, 9993},
+    {1268, 1269, 1268, 0, 0, 10113},
+    {1268, 1269, 1268, 0, 0, 9993},
+    {1270, 1271, 1270, 0, 0, 10113},
+    {1270, 1271, 1270, 0, 0, 9993},
+    {1272, 1273, 1272, 0, 0, 10113},
+    {1272, 1273, 1272, 0, 0, 9993},
+    {1274, 1275, 1274, 0, 0, 10113},
+    {1274, 1275, 1274, 0, 0, 9993},
+    {1276, 1277, 1276, 0, 0, 10113},
+    {1276, 1277, 1276, 0, 0, 9993},
+    {1278, 1279, 1278, 0, 0, 10113},
+    {1278, 1279, 1278, 0, 0, 9993},
+    {1280, 1281, 1280, 0, 0, 10113},
+    {1280, 1281, 1280, 0, 0, 9993},
+    {1282, 1283, 1282, 0, 0, 10113},
+    {1282, 1283, 1282, 0, 0, 9993},
+    {1284, 1285, 1284, 0, 0, 10113},
+    {1284, 1285, 1284, 0, 0, 9993},
+    {1286, 1287, 1286, 0, 0, 10113},
+    {1286, 1287, 1286, 0, 0, 9993},
+    {1288, 1289, 1288, 0, 0, 10113},
+    {1288, 1289, 1288, 0, 0, 9993},
+    {1290, 1291, 1290, 0, 0, 10113},
+    {1290, 1291, 1290, 0, 0, 9993},
+    {1292, 1293, 1292, 0, 0, 10113},
+    {1292, 1293, 1292, 0, 0, 9993},
+    {1294, 1295, 1294, 0, 0, 10113},
+    {1294, 1295, 1294, 0, 0, 9993},
+    {1296, 1297, 1296, 0, 0, 10113},
+    {1296, 1297, 1296, 0, 0, 9993},
+    {1298, 1299, 1298, 0, 0, 10113},
+    {1298, 1299, 1298, 0, 0, 9993},
+    {1300, 1301, 1300, 0, 0, 10113},
+    {1300, 1301, 1300, 0, 0, 9993},
+    {1302, 1303, 1302, 0, 0, 10113},
+    {1302, 1303, 1302, 0, 0, 9993},
+    {1304, 1305, 1304, 0, 0, 10113},
+    {1304, 1305, 1304, 0, 0, 9993},
+    {1306, 1307, 1306, 0, 0, 10113},
+    {1306, 1307, 1306, 0, 0, 9993},
+    {1308, 1309, 1308, 0, 0, 10113},
+    {1308, 1309, 1308, 0, 0, 9993},
+    {1310, 1311, 1310, 0, 0, 10113},
+    {1310, 1311, 1310, 0, 0, 9993},
+    {1312, 1313, 1312, 0, 0, 10113},
+    {1312, 1313, 1312, 0, 0, 9993},
+    {1314, 1315, 1314, 0, 0, 10113},
+    {1314, 1315, 1314, 0, 0, 9993},
+    {1316, 1317, 1316, 0, 0, 10113},
+    {1316, 1317, 1316, 0, 0, 9993},
+    {1318, 1319, 1318, 0, 0, 10113},
+    {1318, 1319, 1318, 0, 0, 9993},
+    {1329, 1377, 1329, 0, 0, 10113},
+    {1330, 1378, 1330, 0, 0, 10113},
+    {1331, 1379, 1331, 0, 0, 10113},
+    {1332, 1380, 1332, 0, 0, 10113},
+    {1333, 1381, 1333, 0, 0, 10113},
+    {1334, 1382, 1334, 0, 0, 10113},
+    {1335, 1383, 1335, 0, 0, 10113},
+    {1336, 1384, 1336, 0, 0, 10113},
+    {1337, 1385, 1337, 0, 0, 10113},
+    {1338, 1386, 1338, 0, 0, 10113},
+    {1339, 1387, 1339, 0, 0, 10113},
+    {1340, 1388, 1340, 0, 0, 10113},
+    {1341, 1389, 1341, 0, 0, 10113},
+    {1342, 1390, 1342, 0, 0, 10113},
+    {1343, 1391, 1343, 0, 0, 10113},
+    {1344, 1392, 1344, 0, 0, 10113},
+    {1345, 1393, 1345, 0, 0, 10113},
+    {1346, 1394, 1346, 0, 0, 10113},
+    {1347, 1395, 1347, 0, 0, 10113},
+    {1348, 1396, 1348, 0, 0, 10113},
+    {1349, 1397, 1349, 0, 0, 10113},
+    {1350, 1398, 1350, 0, 0, 10113},
+    {1351, 1399, 1351, 0, 0, 10113},
+    {1352, 1400, 1352, 0, 0, 10113},
+    {1353, 1401, 1353, 0, 0, 10113},
+    {1354, 1402, 1354, 0, 0, 10113},
+    {1355, 1403, 1355, 0, 0, 10113},
+    {1356, 1404, 1356, 0, 0, 10113},
+    {1357, 1405, 1357, 0, 0, 10113},
+    {1358, 1406, 1358, 0, 0, 10113},
+    {1359, 1407, 1359, 0, 0, 10113},
+    {1360, 1408, 1360, 0, 0, 10113},
+    {1361, 1409, 1361, 0, 0, 10113},
+    {1362, 1410, 1362, 0, 0, 10113},
+    {1363, 1411, 1363, 0, 0, 10113},
+    {1364, 1412, 1364, 0, 0, 10113},
+    {1365, 1413, 1365, 0, 0, 10113},
+    {1366, 1414, 1366, 0, 0, 10113},
+    {1329, 1377, 1329, 0, 0, 9993},
+    {1330, 1378, 1330, 0, 0, 9993},
+    {1331, 1379, 1331, 0, 0, 9993},
+    {1332, 1380, 1332, 0, 0, 9993},
+    {1333, 1381, 1333, 0, 0, 9993},
+    {1334, 1382, 1334, 0, 0, 9993},
+    {1335, 1383, 1335, 0, 0, 9993},
+    {1336, 1384, 1336, 0, 0, 9993},
+    {1337, 1385, 1337, 0, 0, 9993},
+    {1338, 1386, 1338, 0, 0, 9993},
+    {1339, 1387, 1339, 0, 0, 9993},
+    {1340, 1388, 1340, 0, 0, 9993},
+    {1341, 1389, 1341, 0, 0, 9993},
+    {1342, 1390, 1342, 0, 0, 9993},
+    {1343, 1391, 1343, 0, 0, 9993},
+    {1344, 1392, 1344, 0, 0, 9993},
+    {1345, 1393, 1345, 0, 0, 9993},
+    {1346, 1394, 1346, 0, 0, 9993},
+    {1347, 1395, 1347, 0, 0, 9993},
+    {1348, 1396, 1348, 0, 0, 9993},
+    {1349, 1397, 1349, 0, 0, 9993},
+    {1350, 1398, 1350, 0, 0, 9993},
+    {1351, 1399, 1351, 0, 0, 9993},
+    {1352, 1400, 1352, 0, 0, 9993},
+    {1353, 1401, 1353, 0, 0, 9993},
+    {1354, 1402, 1354, 0, 0, 9993},
+    {1355, 1403, 1355, 0, 0, 9993},
+    {1356, 1404, 1356, 0, 0, 9993},
+    {1357, 1405, 1357, 0, 0, 9993},
+    {1358, 1406, 1358, 0, 0, 9993},
+    {1359, 1407, 1359, 0, 0, 9993},
+    {1360, 1408, 1360, 0, 0, 9993},
+    {1361, 1409, 1361, 0, 0, 9993},
+    {1362, 1410, 1362, 0, 0, 9993},
+    {1363, 1411, 1363, 0, 0, 9993},
+    {1364, 1412, 1364, 0, 0, 9993},
+    {1365, 1413, 1365, 0, 0, 9993},
+    {1366, 1414, 1366, 0, 0, 9993},
+    {33554455, 16777238, 33554457, 0, 0, 26377},
+    {0, 0, 0, 0, 0, 1537},
+    {4256, 11520, 4256, 0, 0, 10113},
+    {4257, 11521, 4257, 0, 0, 10113},
+    {4258, 11522, 4258, 0, 0, 10113},
+    {4259, 11523, 4259, 0, 0, 10113},
+    {4260, 11524, 4260, 0, 0, 10113},
+    {4261, 11525, 4261, 0, 0, 10113},
+    {4262, 11526, 4262, 0, 0, 10113},
+    {4263, 11527, 4263, 0, 0, 10113},
+    {4264, 11528, 4264, 0, 0, 10113},
+    {4265, 11529, 4265, 0, 0, 10113},
+    {4266, 11530, 4266, 0, 0, 10113},
+    {4267, 11531, 4267, 0, 0, 10113},
+    {4268, 11532, 4268, 0, 0, 10113},
+    {4269, 11533, 4269, 0, 0, 10113},
+    {4270, 11534, 4270, 0, 0, 10113},
+    {4271, 11535, 4271, 0, 0, 10113},
+    {4272, 11536, 4272, 0, 0, 10113},
+    {4273, 11537, 4273, 0, 0, 10113},
+    {4274, 11538, 4274, 0, 0, 10113},
+    {4275, 11539, 4275, 0, 0, 10113},
+    {4276, 11540, 4276, 0, 0, 10113},
+    {4277, 11541, 4277, 0, 0, 10113},
+    {4278, 11542, 4278, 0, 0, 10113},
+    {4279, 11543, 4279, 0, 0, 10113},
+    {4280, 11544, 4280, 0, 0, 10113},
+    {4281, 11545, 4281, 0, 0, 10113},
+    {4282, 11546, 4282, 0, 0, 10113},
+    {4283, 11547, 4283, 0, 0, 10113},
+    {4284, 11548, 4284, 0, 0, 10113},
+    {4285, 11549, 4285, 0, 0, 10113},
+    {4286, 11550, 4286, 0, 0, 10113},
+    {4287, 11551, 4287, 0, 0, 10113},
+    {4288, 11552, 4288, 0, 0, 10113},
+    {4289, 11553, 4289, 0, 0, 10113},
+    {4290, 11554, 4290, 0, 0, 10113},
+    {4291, 11555, 4291, 0, 0, 10113},
+    {4292, 11556, 4292, 0, 0, 10113},
+    {4293, 11557, 4293, 0, 0, 10113},
+    {0, 0, 0, 0, 1, 3588},
+    {0, 0, 0, 0, 2, 3588},
+    {0, 0, 0, 0, 3, 3588},
+    {0, 0, 0, 0, 4, 3588},
+    {0, 0, 0, 0, 5, 3588},
+    {0, 0, 0, 0, 6, 3588},
+    {0, 0, 0, 0, 7, 3588},
+    {0, 0, 0, 0, 8, 3588},
+    {0, 0, 0, 0, 9, 3588},
+    {0, 0, 0, 0, 0, 3840},
+    {42877, 7545, 42877, 0, 0, 9993},
+    {11363, 7549, 11363, 0, 0, 9993},
+    {7680, 7681, 7680, 0, 0, 10113},
+    {7680, 7681, 7680, 0, 0, 9993},
+    {7682, 7683, 7682, 0, 0, 10113},
+    {7682, 7683, 7682, 0, 0, 9993},
+    {7684, 7685, 7684, 0, 0, 10113},
+    {7684, 7685, 7684, 0, 0, 9993},
+    {7686, 7687, 7686, 0, 0, 10113},
+    {7686, 7687, 7686, 0, 0, 9993},
+    {7688, 7689, 7688, 0, 0, 10113},
+    {7688, 7689, 7688, 0, 0, 9993},
+    {7690, 7691, 7690, 0, 0, 10113},
+    {7690, 7691, 7690, 0, 0, 9993},
+    {7692, 7693, 7692, 0, 0, 10113},
+    {7692, 7693, 7692, 0, 0, 9993},
+    {7694, 7695, 7694, 0, 0, 10113},
+    {7694, 7695, 7694, 0, 0, 9993},
+    {7696, 7697, 7696, 0, 0, 10113},
+    {7696, 7697, 7696, 0, 0, 9993},
+    {7698, 7699, 7698, 0, 0, 10113},
+    {7698, 7699, 7698, 0, 0, 9993},
+    {7700, 7701, 7700, 0, 0, 10113},
+    {7700, 7701, 7700, 0, 0, 9993},
+    {7702, 7703, 7702, 0, 0, 10113},
+    {7702, 7703, 7702, 0, 0, 9993},
+    {7704, 7705, 7704, 0, 0, 10113},
+    {7704, 7705, 7704, 0, 0, 9993},
+    {7706, 7707, 7706, 0, 0, 10113},
+    {7706, 7707, 7706, 0, 0, 9993},
+    {7708, 7709, 7708, 0, 0, 10113},
+    {7708, 7709, 7708, 0, 0, 9993},
+    {7710, 7711, 7710, 0, 0, 10113},
+    {7710, 7711, 7710, 0, 0, 9993},
+    {7712, 7713, 7712, 0, 0, 10113},
+    {7712, 7713, 7712, 0, 0, 9993},
+    {7714, 7715, 7714, 0, 0, 10113},
+    {7714, 7715, 7714, 0, 0, 9993},
+    {7716, 7717, 7716, 0, 0, 10113},
+    {7716, 7717, 7716, 0, 0, 9993},
+    {7718, 7719, 7718, 0, 0, 10113},
+    {7718, 7719, 7718, 0, 0, 9993},
+    {7720, 7721, 7720, 0, 0, 10113},
+    {7720, 7721, 7720, 0, 0, 9993},
+    {7722, 7723, 7722, 0, 0, 10113},
+    {7722, 7723, 7722, 0, 0, 9993},
+    {7724, 7725, 7724, 0, 0, 10113},
+    {7724, 7725, 7724, 0, 0, 9993},
+    {7726, 7727, 7726, 0, 0, 10113},
+    {7726, 7727, 7726, 0, 0, 9993},
+    {7728, 7729, 7728, 0, 0, 10113},
+    {7728, 7729, 7728, 0, 0, 9993},
+    {7730, 7731, 7730, 0, 0, 10113},
+    {7730, 7731, 7730, 0, 0, 9993},
+    {7732, 7733, 7732, 0, 0, 10113},
+    {7732, 7733, 7732, 0, 0, 9993},
+    {7734, 7735, 7734, 0, 0, 10113},
+    {7734, 7735, 7734, 0, 0, 9993},
+    {7736, 7737, 7736, 0, 0, 10113},
+    {7736, 7737, 7736, 0, 0, 9993},
+    {7738, 7739, 7738, 0, 0, 10113},
+    {7738, 7739, 7738, 0, 0, 9993},
+    {7740, 7741, 7740, 0, 0, 10113},
+    {7740, 7741, 7740, 0, 0, 9993},
+    {7742, 7743, 7742, 0, 0, 10113},
+    {7742, 7743, 7742, 0, 0, 9993},
+    {7744, 7745, 7744, 0, 0, 10113},
+    {7744, 7745, 7744, 0, 0, 9993},
+    {7746, 7747, 7746, 0, 0, 10113},
+    {7746, 7747, 7746, 0, 0, 9993},
+    {7748, 7749, 7748, 0, 0, 10113},
+    {7748, 7749, 7748, 0, 0, 9993},
+    {7750, 7751, 7750, 0, 0, 10113},
+    {7750, 7751, 7750, 0, 0, 9993},
+    {7752, 7753, 7752, 0, 0, 10113},
+    {7752, 7753, 7752, 0, 0, 9993},
+    {7754, 7755, 7754, 0, 0, 10113},
+    {7754, 7755, 7754, 0, 0, 9993},
+    {7756, 7757, 7756, 0, 0, 10113},
+    {7756, 7757, 7756, 0, 0, 9993},
+    {7758, 7759, 7758, 0, 0, 10113},
+    {7758, 7759, 7758, 0, 0, 9993},
+    {7760, 7761, 7760, 0, 0, 10113},
+    {7760, 7761, 7760, 0, 0, 9993},
+    {7762, 7763, 7762, 0, 0, 10113},
+    {7762, 7763, 7762, 0, 0, 9993},
+    {7764, 7765, 7764, 0, 0, 10113},
+    {7764, 7765, 7764, 0, 0, 9993},
+    {7766, 7767, 7766, 0, 0, 10113},
+    {7766, 7767, 7766, 0, 0, 9993},
+    {7768, 7769, 7768, 0, 0, 10113},
+    {7768, 7769, 7768, 0, 0, 9993},
+    {7770, 7771, 7770, 0, 0, 10113},
+    {7770, 7771, 7770, 0, 0, 9993},
+    {7772, 7773, 7772, 0, 0, 10113},
+    {7772, 7773, 7772, 0, 0, 9993},
+    {7774, 7775, 7774, 0, 0, 10113},
+    {7774, 7775, 7774, 0, 0, 9993},
+    {7776, 7777, 7776, 0, 0, 10113},
+    {7776, 7777, 7776, 0, 0, 9993},
+    {7778, 7779, 7778, 0, 0, 10113},
+    {7778, 7779, 7778, 0, 0, 9993},
+    {7780, 7781, 7780, 0, 0, 10113},
+    {7780, 7781, 7780, 0, 0, 9993},
+    {7782, 7783, 7782, 0, 0, 10113},
+    {7782, 7783, 7782, 0, 0, 9993},
+    {7784, 7785, 7784, 0, 0, 10113},
+    {7784, 7785, 7784, 0, 0, 9993},
+    {7786, 7787, 7786, 0, 0, 10113},
+    {7786, 7787, 7786, 0, 0, 9993},
+    {7788, 7789, 7788, 0, 0, 10113},
+    {7788, 7789, 7788, 0, 0, 9993},
+    {7790, 7791, 7790, 0, 0, 10113},
+    {7790, 7791, 7790, 0, 0, 9993},
+    {7792, 7793, 7792, 0, 0, 10113},
+    {7792, 7793, 7792, 0, 0, 9993},
+    {7794, 7795, 7794, 0, 0, 10113},
+    {7794, 7795, 7794, 0, 0, 9993},
+    {7796, 7797, 7796, 0, 0, 10113},
+    {7796, 7797, 7796, 0, 0, 9993},
+    {7798, 7799, 7798, 0, 0, 10113},
+    {7798, 7799, 7798, 0, 0, 9993},
+    {7800, 7801, 7800, 0, 0, 10113},
+    {7800, 7801, 7800, 0, 0, 9993},
+    {7802, 7803, 7802, 0, 0, 10113},
+    {7802, 7803, 7802, 0, 0, 9993},
+    {7804, 7805, 7804, 0, 0, 10113},
+    {7804, 7805, 7804, 0, 0, 9993},
+    {7806, 7807, 7806, 0, 0, 10113},
+    {7806, 7807, 7806, 0, 0, 9993},
+    {7808, 7809, 7808, 0, 0, 10113},
+    {7808, 7809, 7808, 0, 0, 9993},
+    {7810, 7811, 7810, 0, 0, 10113},
+    {7810, 7811, 7810, 0, 0, 9993},
+    {7812, 7813, 7812, 0, 0, 10113},
+    {7812, 7813, 7812, 0, 0, 9993},
+    {7814, 7815, 7814, 0, 0, 10113},
+    {7814, 7815, 7814, 0, 0, 9993},
+    {7816, 7817, 7816, 0, 0, 10113},
+    {7816, 7817, 7816, 0, 0, 9993},
+    {7818, 7819, 7818, 0, 0, 10113},
+    {7818, 7819, 7818, 0, 0, 9993},
+    {7820, 7821, 7820, 0, 0, 10113},
+    {7820, 7821, 7820, 0, 0, 9993},
+    {7822, 7823, 7822, 0, 0, 10113},
+    {7822, 7823, 7822, 0, 0, 9993},
+    {7824, 7825, 7824, 0, 0, 10113},
+    {7824, 7825, 7824, 0, 0, 9993},
+    {7826, 7827, 7826, 0, 0, 10113},
+    {7826, 7827, 7826, 0, 0, 9993},
+    {7828, 7829, 7828, 0, 0, 10113},
+    {7828, 7829, 7828, 0, 0, 9993},
+    {33554460, 16777243, 33554460, 0, 0, 26377},
+    {33554463, 16777246, 33554463, 0, 0, 26377},
+    {33554466, 16777249, 33554466, 0, 0, 26377},
+    {33554469, 16777252, 33554469, 0, 0, 26377},
+    {33554472, 16777255, 33554472, 0, 0, 26377},
+    {7776, 7835, 7776, 0, 0, 9993},
+    {7838, 223, 7838, 0, 0, 10113},
+    {7840, 7841, 7840, 0, 0, 10113},
+    {7840, 7841, 7840, 0, 0, 9993},
+    {7842, 7843, 7842, 0, 0, 10113},
+    {7842, 7843, 7842, 0, 0, 9993},
+    {7844, 7845, 7844, 0, 0, 10113},
+    {7844, 7845, 7844, 0, 0, 9993},
+    {7846, 7847, 7846, 0, 0, 10113},
+    {7846, 7847, 7846, 0, 0, 9993},
+    {7848, 7849, 7848, 0, 0, 10113},
+    {7848, 7849, 7848, 0, 0, 9993},
+    {7850, 7851, 7850, 0, 0, 10113},
+    {7850, 7851, 7850, 0, 0, 9993},
+    {7852, 7853, 7852, 0, 0, 10113},
+    {7852, 7853, 7852, 0, 0, 9993},
+    {7854, 7855, 7854, 0, 0, 10113},
+    {7854, 7855, 7854, 0, 0, 9993},
+    {7856, 7857, 7856, 0, 0, 10113},
+    {7856, 7857, 7856, 0, 0, 9993},
+    {7858, 7859, 7858, 0, 0, 10113},
+    {7858, 7859, 7858, 0, 0, 9993},
+    {7860, 7861, 7860, 0, 0, 10113},
+    {7860, 7861, 7860, 0, 0, 9993},
+    {7862, 7863, 7862, 0, 0, 10113},
+    {7862, 7863, 7862, 0, 0, 9993},
+    {7864, 7865, 7864, 0, 0, 10113},
+    {7864, 7865, 7864, 0, 0, 9993},
+    {7866, 7867, 7866, 0, 0, 10113},
+    {7866, 7867, 7866, 0, 0, 9993},
+    {7868, 7869, 7868, 0, 0, 10113},
+    {7868, 7869, 7868, 0, 0, 9993},
+    {7870, 7871, 7870, 0, 0, 10113},
+    {7870, 7871, 7870, 0, 0, 9993},
+    {7872, 7873, 7872, 0, 0, 10113},
+    {7872, 7873, 7872, 0, 0, 9993},
+    {7874, 7875, 7874, 0, 0, 10113},
+    {7874, 7875, 7874, 0, 0, 9993},
+    {7876, 7877, 7876, 0, 0, 10113},
+    {7876, 7877, 7876, 0, 0, 9993},
+    {7878, 7879, 7878, 0, 0, 10113},
+    {7878, 7879, 7878, 0, 0, 9993},
+    {7880, 7881, 7880, 0, 0, 10113},
+    {7880, 7881, 7880, 0, 0, 9993},
+    {7882, 7883, 7882, 0, 0, 10113},
+    {7882, 7883, 7882, 0, 0, 9993},
+    {7884, 7885, 7884, 0, 0, 10113},
+    {7884, 7885, 7884, 0, 0, 9993},
+    {7886, 7887, 7886, 0, 0, 10113},
+    {7886, 7887, 7886, 0, 0, 9993},
+    {7888, 7889, 7888, 0, 0, 10113},
+    {7888, 7889, 7888, 0, 0, 9993},
+    {7890, 7891, 7890, 0, 0, 10113},
+    {7890, 7891, 7890, 0, 0, 9993},
+    {7892, 7893, 7892, 0, 0, 10113},
+    {7892, 7893, 7892, 0, 0, 9993},
+    {7894, 7895, 7894, 0, 0, 10113},
+    {7894, 7895, 7894, 0, 0, 9993},
+    {7896, 7897, 7896, 0, 0, 10113},
+    {7896, 7897, 7896, 0, 0, 9993},
+    {7898, 7899, 7898, 0, 0, 10113},
+    {7898, 7899, 7898, 0, 0, 9993},
+    {7900, 7901, 7900, 0, 0, 10113},
+    {7900, 7901, 7900, 0, 0, 9993},
+    {7902, 7903, 7902, 0, 0, 10113},
+    {7902, 7903, 7902, 0, 0, 9993},
+    {7904, 7905, 7904, 0, 0, 10113},
+    {7904, 7905, 7904, 0, 0, 9993},
+    {7906, 7907, 7906, 0, 0, 10113},
+    {7906, 7907, 7906, 0, 0, 9993},
+    {7908, 7909, 7908, 0, 0, 10113},
+    {7908, 7909, 7908, 0, 0, 9993},
+    {7910, 7911, 7910, 0, 0, 10113},
+    {7910, 7911, 7910, 0, 0, 9993},
+    {7912, 7913, 7912, 0, 0, 10113},
+    {7912, 7913, 7912, 0, 0, 9993},
+    {7914, 7915, 7914, 0, 0, 10113},
+    {7914, 7915, 7914, 0, 0, 9993},
+    {7916, 7917, 7916, 0, 0, 10113},
+    {7916, 7917, 7916, 0, 0, 9993},
+    {7918, 7919, 7918, 0, 0, 10113},
+    {7918, 7919, 7918, 0, 0, 9993},
+    {7920, 7921, 7920, 0, 0, 10113},
+    {7920, 7921, 7920, 0, 0, 9993},
+    {7922, 7923, 7922, 0, 0, 10113},
+    {7922, 7923, 7922, 0, 0, 9993},
+    {7924, 7925, 7924, 0, 0, 10113},
+    {7924, 7925, 7924, 0, 0, 9993},
+    {7926, 7927, 7926, 0, 0, 10113},
+    {7926, 7927, 7926, 0, 0, 9993},
+    {7928, 7929, 7928, 0, 0, 10113},
+    {7928, 7929, 7928, 0, 0, 9993},
+    {7930, 7931, 7930, 0, 0, 10113},
+    {7930, 7931, 7930, 0, 0, 9993},
+    {7932, 7933, 7932, 0, 0, 10113},
+    {7932, 7933, 7932, 0, 0, 9993},
+    {7934, 7935, 7934, 0, 0, 10113},
+    {7934, 7935, 7934, 0, 0, 9993},
+    {7944, 7936, 7944, 0, 0, 9993},
+    {7945, 7937, 7945, 0, 0, 9993},
+    {7946, 7938, 7946, 0, 0, 9993},
+    {7947, 7939, 7947, 0, 0, 9993},
+    {7948, 7940, 7948, 0, 0, 9993},
+    {7949, 7941, 7949, 0, 0, 9993},
+    {7950, 7942, 7950, 0, 0, 9993},
+    {7951, 7943, 7951, 0, 0, 9993},
+    {7944, 7936, 7944, 0, 0, 10113},
+    {7945, 7937, 7945, 0, 0, 10113},
+    {7946, 7938, 7946, 0, 0, 10113},
+    {7947, 7939, 7947, 0, 0, 10113},
+    {7948, 7940, 7948, 0, 0, 10113},
+    {7949, 7941, 7949, 0, 0, 10113},
+    {7950, 7942, 7950, 0, 0, 10113},
+    {7951, 7943, 7951, 0, 0, 10113},
+    {7960, 7952, 7960, 0, 0, 9993},
+    {7961, 7953, 7961, 0, 0, 9993},
+    {7962, 7954, 7962, 0, 0, 9993},
+    {7963, 7955, 7963, 0, 0, 9993},
+    {7964, 7956, 7964, 0, 0, 9993},
+    {7965, 7957, 7965, 0, 0, 9993},
+    {7960, 7952, 7960, 0, 0, 10113},
+    {7961, 7953, 7961, 0, 0, 10113},
+    {7962, 7954, 7962, 0, 0, 10113},
+    {7963, 7955, 7963, 0, 0, 10113},
+    {7964, 7956, 7964, 0, 0, 10113},
+    {7965, 7957, 7965, 0, 0, 10113},
+    {7976, 7968, 7976, 0, 0, 9993},
+    {7977, 7969, 7977, 0, 0, 9993},
+    {7978, 7970, 7978, 0, 0, 9993},
+    {7979, 7971, 7979, 0, 0, 9993},
+    {7980, 7972, 7980, 0, 0, 9993},
+    {7981, 7973, 7981, 0, 0, 9993},
+    {7982, 7974, 7982, 0, 0, 9993},
+    {7983, 7975, 7983, 0, 0, 9993},
+    {7976, 7968, 7976, 0, 0, 10113},
+    {7977, 7969, 7977, 0, 0, 10113},
+    {7978, 7970, 7978, 0, 0, 10113},
+    {7979, 7971, 7979, 0, 0, 10113},
+    {7980, 7972, 7980, 0, 0, 10113},
+    {7981, 7973, 7981, 0, 0, 10113},
+    {7982, 7974, 7982, 0, 0, 10113},
+    {7983, 7975, 7983, 0, 0, 10113},
+    {7992, 7984, 7992, 0, 0, 9993},
+    {7993, 7985, 7993, 0, 0, 9993},
+    {7994, 7986, 7994, 0, 0, 9993},
+    {7995, 7987, 7995, 0, 0, 9993},
+    {7996, 7988, 7996, 0, 0, 9993},
+    {7997, 7989, 7997, 0, 0, 9993},
+    {7998, 7990, 7998, 0, 0, 9993},
+    {7999, 7991, 7999, 0, 0, 9993},
+    {7992, 7984, 7992, 0, 0, 10113},
+    {7993, 7985, 7993, 0, 0, 10113},
+    {7994, 7986, 7994, 0, 0, 10113},
+    {7995, 7987, 7995, 0, 0, 10113},
+    {7996, 7988, 7996, 0, 0, 10113},
+    {7997, 7989, 7997, 0, 0, 10113},
+    {7998, 7990, 7998, 0, 0, 10113},
+    {7999, 7991, 7999, 0, 0, 10113},
+    {8008, 8000, 8008, 0, 0, 9993},
+    {8009, 8001, 8009, 0, 0, 9993},
+    {8010, 8002, 8010, 0, 0, 9993},
+    {8011, 8003, 8011, 0, 0, 9993},
+    {8012, 8004, 8012, 0, 0, 9993},
+    {8013, 8005, 8013, 0, 0, 9993},
+    {8008, 8000, 8008, 0, 0, 10113},
+    {8009, 8001, 8009, 0, 0, 10113},
+    {8010, 8002, 8010, 0, 0, 10113},
+    {8011, 8003, 8011, 0, 0, 10113},
+    {8012, 8004, 8012, 0, 0, 10113},
+    {8013, 8005, 8013, 0, 0, 10113},
+    {33554475, 16777258, 33554475, 0, 0, 26377},
+    {8025, 8017, 8025, 0, 0, 9993},
+    {50331694, 16777261, 50331694, 0, 0, 26377},
+    {8027, 8019, 8027, 0, 0, 9993},
+    {50331698, 16777265, 50331698, 0, 0, 26377},
+    {8029, 8021, 8029, 0, 0, 9993},
+    {50331702, 16777269, 50331702, 0, 0, 26377},
+    {8031, 8023, 8031, 0, 0, 9993},
+    {8025, 8017, 8025, 0, 0, 10113},
+    {8027, 8019, 8027, 0, 0, 10113},
+    {8029, 8021, 8029, 0, 0, 10113},
+    {8031, 8023, 8031, 0, 0, 10113},
+    {8040, 8032, 8040, 0, 0, 9993},
+    {8041, 8033, 8041, 0, 0, 9993},
+    {8042, 8034, 8042, 0, 0, 9993},
+    {8043, 8035, 8043, 0, 0, 9993},
+    {8044, 8036, 8044, 0, 0, 9993},
+    {8045, 8037, 8045, 0, 0, 9993},
+    {8046, 8038, 8046, 0, 0, 9993},
+    {8047, 8039, 8047, 0, 0, 9993},
+    {8040, 8032, 8040, 0, 0, 10113},
+    {8041, 8033, 8041, 0, 0, 10113},
+    {8042, 8034, 8042, 0, 0, 10113},
+    {8043, 8035, 8043, 0, 0, 10113},
+    {8044, 8036, 8044, 0, 0, 10113},
+    {8045, 8037, 8045, 0, 0, 10113},
+    {8046, 8038, 8046, 0, 0, 10113},
+    {8047, 8039, 8047, 0, 0, 10113},
+    {8122, 8048, 8122, 0, 0, 9993},
+    {8123, 8049, 8123, 0, 0, 9993},
+    {8136, 8050, 8136, 0, 0, 9993},
+    {8137, 8051, 8137, 0, 0, 9993},
+    {8138, 8052, 8138, 0, 0, 9993},
+    {8139, 8053, 8139, 0, 0, 9993},
+    {8154, 8054, 8154, 0, 0, 9993},
+    {8155, 8055, 8155, 0, 0, 9993},
+    {8184, 8056, 8184, 0, 0, 9993},
+    {8185, 8057, 8185, 0, 0, 9993},
+    {8170, 8058, 8170, 0, 0, 9993},
+    {8171, 8059, 8171, 0, 0, 9993},
+    {8186, 8060, 8186, 0, 0, 9993},
+    {8187, 8061, 8187, 0, 0, 9993},
+    {33554490, 16777273, 16777276, 0, 0, 26377},
+    {33554494, 16777277, 16777280, 0, 0, 26377},
+    {33554498, 16777281, 16777284, 0, 0, 26377},
+    {33554502, 16777285, 16777288, 0, 0, 26377},
+    {33554506, 16777289, 16777292, 0, 0, 26377},
+    {33554510, 16777293, 16777296, 0, 0, 26377},
+    {33554514, 16777297, 16777300, 0, 0, 26377},
+    {33554518, 16777301, 16777304, 0, 0, 26377},
+    {33554522, 16777305, 16777308, 0, 0, 26433},
+    {33554526, 16777309, 16777312, 0, 0, 26433},
+    {33554530, 16777313, 16777316, 0, 0, 26433},
+    {33554534, 16777317, 16777320, 0, 0, 26433},
+    {33554538, 16777321, 16777324, 0, 0, 26433},
+    {33554542, 16777325, 16777328, 0, 0, 26433},
+    {33554546, 16777329, 16777332, 0, 0, 26433},
+    {33554550, 16777333, 16777336, 0, 0, 26433},
+    {33554554, 16777337, 16777340, 0, 0, 26377},
+    {33554558, 16777341, 16777344, 0, 0, 26377},
+    {33554562, 16777345, 16777348, 0, 0, 26377},
+    {33554566, 16777349, 16777352, 0, 0, 26377},
+    {33554570, 16777353, 16777356, 0, 0, 26377},
+    {33554574, 16777357, 16777360, 0, 0, 26377},
+    {33554578, 16777361, 16777364, 0, 0, 26377},
+    {33554582, 16777365, 16777368, 0, 0, 26377},
+    {33554586, 16777369, 16777372, 0, 0, 26433},
+    {33554590, 16777373, 16777376, 0, 0, 26433},
+    {33554594, 16777377, 16777380, 0, 0, 26433},
+    {33554598, 16777381, 16777384, 0, 0, 26433},
+    {33554602, 16777385, 16777388, 0, 0, 26433},
+    {33554606, 16777389, 16777392, 0, 0, 26433},
+    {33554610, 16777393, 16777396, 0, 0, 26433},
+    {33554614, 16777397, 16777400, 0, 0, 26433},
+    {33554618, 16777401, 16777404, 0, 0, 26377},
+    {33554622, 16777405, 16777408, 0, 0, 26377},
+    {33554626, 16777409, 16777412, 0, 0, 26377},
+    {33554630, 16777413, 16777416, 0, 0, 26377},
+    {33554634, 16777417, 16777420, 0, 0, 26377},
+    {33554638, 16777421, 16777424, 0, 0, 26377},
+    {33554642, 16777425, 16777428, 0, 0, 26377},
+    {33554646, 16777429, 16777432, 0, 0, 26377},
+    {33554650, 16777433, 16777436, 0, 0, 26433},
+    {33554654, 16777437, 16777440, 0, 0, 26433},
+    {33554658, 16777441, 16777444, 0, 0, 26433},
+    {33554662, 16777445, 16777448, 0, 0, 26433},
+    {33554666, 16777449, 16777452, 0, 0, 26433},
+    {33554670, 16777453, 16777456, 0, 0, 26433},
+    {33554674, 16777457, 16777460, 0, 0, 26433},
+    {33554678, 16777461, 16777464, 0, 0, 26433},
+    {8120, 8112, 8120, 0, 0, 9993},
+    {8121, 8113, 8121, 0, 0, 9993},
+    {33554682, 16777465, 33554684, 0, 0, 26377},
+    {33554687, 16777470, 16777473, 0, 0, 26377},
+    {33554691, 16777474, 33554693, 0, 0, 26377},
+    {33554696, 16777479, 33554696, 0, 0, 26377},
+    {50331915, 16777482, 50331918, 0, 0, 26377},
+    {8120, 8112, 8120, 0, 0, 10113},
+    {8121, 8113, 8121, 0, 0, 10113},
+    {8122, 8048, 8122, 0, 0, 10113},
+    {8123, 8049, 8123, 0, 0, 10113},
+    {33554706, 16777489, 16777492, 0, 0, 26433},
+    {921, 8126, 921, 0, 0, 9993},
+    {33554710, 16777493, 33554712, 0, 0, 26377},
+    {33554715, 16777498, 16777501, 0, 0, 26377},
+    {33554719, 16777502, 33554721, 0, 0, 26377},
+    {33554724, 16777507, 33554724, 0, 0, 26377},
+    {50331943, 16777510, 50331946, 0, 0, 26377},
+    {8136, 8050, 8136, 0, 0, 10113},
+    {8137, 8051, 8137, 0, 0, 10113},
+    {8138, 8052, 8138, 0, 0, 10113},
+    {8139, 8053, 8139, 0, 0, 10113},
+    {33554734, 16777517, 16777520, 0, 0, 26433},
+    {8152, 8144, 8152, 0, 0, 9993},
+    {8153, 8145, 8153, 0, 0, 9993},
+    {50331954, 16777521, 50331954, 0, 0, 26377},
+    {50331958, 16777525, 50331958, 0, 0, 26377},
+    {33554746, 16777529, 33554746, 0, 0, 26377},
+    {50331965, 16777532, 50331965, 0, 0, 26377},
+    {8152, 8144, 8152, 0, 0, 10113},
+    {8153, 8145, 8153, 0, 0, 10113},
+    {8154, 8054, 8154, 0, 0, 10113},
+    {8155, 8055, 8155, 0, 0, 10113},
+    {8168, 8160, 8168, 0, 0, 9993},
+    {8169, 8161, 8169, 0, 0, 9993},
+    {50331969, 16777536, 50331969, 0, 0, 26377},
+    {50331973, 16777540, 50331973, 0, 0, 26377},
+    {33554761, 16777544, 33554761, 0, 0, 26377},
+    {8172, 8165, 8172, 0, 0, 9993},
+    {33554764, 16777547, 33554764, 0, 0, 26377},
+    {50331983, 16777550, 50331983, 0, 0, 26377},
+    {8168, 8160, 8168, 0, 0, 10113},
+    {8169, 8161, 8169, 0, 0, 10113},
+    {8170, 8058, 8170, 0, 0, 10113},
+    {8171, 8059, 8171, 0, 0, 10113},
+    {8172, 8165, 8172, 0, 0, 10113},
+    {33554771, 16777554, 33554773, 0, 0, 26377},
+    {33554776, 16777559, 16777562, 0, 0, 26377},
+    {33554780, 16777563, 33554782, 0, 0, 26377},
+    {33554785, 16777568, 33554785, 0, 0, 26377},
+    {50332004, 16777571, 50332007, 0, 0, 26377},
+    {8184, 8056, 8184, 0, 0, 10113},
+    {8185, 8057, 8185, 0, 0, 10113},
+    {8186, 8060, 8186, 0, 0, 10113},
+    {8187, 8061, 8187, 0, 0, 10113},
+    {33554795, 16777578, 16777581, 0, 0, 26433},
+    {0, 0, 0, 0, 0, 3076},
+    {0, 0, 0, 0, 4, 3076},
+    {0, 0, 0, 0, 5, 3076},
+    {0, 0, 0, 0, 6, 3076},
+    {0, 0, 0, 0, 7, 3076},
+    {0, 0, 0, 0, 8, 3076},
+    {0, 0, 0, 0, 9, 3076},
+    {0, 0, 0, 0, 0, 1792},
+    {8486, 969, 8486, 0, 0, 10113},
+    {8490, 107, 8490, 0, 0, 10113},
+    {8491, 229, 8491, 0, 0, 10113},
+    {8498, 8526, 8498, 0, 0, 10113},
+    {8498, 8526, 8498, 0, 0, 9993},
+    {8544, 8560, 8544, 0, 0, 12160},
+    {8545, 8561, 8545, 0, 0, 12160},
+    {8546, 8562, 8546, 0, 0, 12160},
+    {8547, 8563, 8547, 0, 0, 12160},
+    {8548, 8564, 8548, 0, 0, 12160},
+    {8549, 8565, 8549, 0, 0, 12160},
+    {8550, 8566, 8550, 0, 0, 12160},
+    {8551, 8567, 8551, 0, 0, 12160},
+    {8552, 8568, 8552, 0, 0, 12160},
+    {8553, 8569, 8553, 0, 0, 12160},
+    {8554, 8570, 8554, 0, 0, 12160},
+    {8555, 8571, 8555, 0, 0, 12160},
+    {8556, 8572, 8556, 0, 0, 12160},
+    {8557, 8573, 8557, 0, 0, 12160},
+    {8558, 8574, 8558, 0, 0, 12160},
+    {8559, 8575, 8559, 0, 0, 12160},
+    {8544, 8560, 8544, 0, 0, 12040},
+    {8545, 8561, 8545, 0, 0, 12040},
+    {8546, 8562, 8546, 0, 0, 12040},
+    {8547, 8563, 8547, 0, 0, 12040},
+    {8548, 8564, 8548, 0, 0, 12040},
+    {8549, 8565, 8549, 0, 0, 12040},
+    {8550, 8566, 8550, 0, 0, 12040},
+    {8551, 8567, 8551, 0, 0, 12040},
+    {8552, 8568, 8552, 0, 0, 12040},
+    {8553, 8569, 8553, 0, 0, 12040},
+    {8554, 8570, 8554, 0, 0, 12040},
+    {8555, 8571, 8555, 0, 0, 12040},
+    {8556, 8572, 8556, 0, 0, 12040},
+    {8557, 8573, 8557, 0, 0, 12040},
+    {8558, 8574, 8558, 0, 0, 12040},
+    {8559, 8575, 8559, 0, 0, 12040},
+    {8579, 8580, 8579, 0, 0, 10113},
+    {8579, 8580, 8579, 0, 0, 9993},
+    {9398, 9424, 9398, 0, 0, 9344},
+    {9399, 9425, 9399, 0, 0, 9344},
+    {9400, 9426, 9400, 0, 0, 9344},
+    {9401, 9427, 9401, 0, 0, 9344},
+    {9402, 9428, 9402, 0, 0, 9344},
+    {9403, 9429, 9403, 0, 0, 9344},
+    {9404, 9430, 9404, 0, 0, 9344},
+    {9405, 9431, 9405, 0, 0, 9344},
+    {9406, 9432, 9406, 0, 0, 9344},
+    {9407, 9433, 9407, 0, 0, 9344},
+    {9408, 9434, 9408, 0, 0, 9344},
+    {9409, 9435, 9409, 0, 0, 9344},
+    {9410, 9436, 9410, 0, 0, 9344},
+    {9411, 9437, 9411, 0, 0, 9344},
+    {9412, 9438, 9412, 0, 0, 9344},
+    {9413, 9439, 9413, 0, 0, 9344},
+    {9414, 9440, 9414, 0, 0, 9344},
+    {9415, 9441, 9415, 0, 0, 9344},
+    {9416, 9442, 9416, 0, 0, 9344},
+    {9417, 9443, 9417, 0, 0, 9344},
+    {9418, 9444, 9418, 0, 0, 9344},
+    {9419, 9445, 9419, 0, 0, 9344},
+    {9420, 9446, 9420, 0, 0, 9344},
+    {9421, 9447, 9421, 0, 0, 9344},
+    {9422, 9448, 9422, 0, 0, 9344},
+    {9423, 9449, 9423, 0, 0, 9344},
+    {9398, 9424, 9398, 0, 0, 9224},
+    {9399, 9425, 9399, 0, 0, 9224},
+    {9400, 9426, 9400, 0, 0, 9224},
+    {9401, 9427, 9401, 0, 0, 9224},
+    {9402, 9428, 9402, 0, 0, 9224},
+    {9403, 9429, 9403, 0, 0, 9224},
+    {9404, 9430, 9404, 0, 0, 9224},
+    {9405, 9431, 9405, 0, 0, 9224},
+    {9406, 9432, 9406, 0, 0, 9224},
+    {9407, 9433, 9407, 0, 0, 9224},
+    {9408, 9434, 9408, 0, 0, 9224},
+    {9409, 9435, 9409, 0, 0, 9224},
+    {9410, 9436, 9410, 0, 0, 9224},
+    {9411, 9437, 9411, 0, 0, 9224},
+    {9412, 9438, 9412, 0, 0, 9224},
+    {9413, 9439, 9413, 0, 0, 9224},
+    {9414, 9440, 9414, 0, 0, 9224},
+    {9415, 9441, 9415, 0, 0, 9224},
+    {9416, 9442, 9416, 0, 0, 9224},
+    {9417, 9443, 9417, 0, 0, 9224},
+    {9418, 9444, 9418, 0, 0, 9224},
+    {9419, 9445, 9419, 0, 0, 9224},
+    {9420, 9446, 9420, 0, 0, 9224},
+    {9421, 9447, 9421, 0, 0, 9224},
+    {9422, 9448, 9422, 0, 0, 9224},
+    {9423, 9449, 9423, 0, 0, 9224},
+    {11264, 11312, 11264, 0, 0, 10113},
+    {11265, 11313, 11265, 0, 0, 10113},
+    {11266, 11314, 11266, 0, 0, 10113},
+    {11267, 11315, 11267, 0, 0, 10113},
+    {11268, 11316, 11268, 0, 0, 10113},
+    {11269, 11317, 11269, 0, 0, 10113},
+    {11270, 11318, 11270, 0, 0, 10113},
+    {11271, 11319, 11271, 0, 0, 10113},
+    {11272, 11320, 11272, 0, 0, 10113},
+    {11273, 11321, 11273, 0, 0, 10113},
+    {11274, 11322, 11274, 0, 0, 10113},
+    {11275, 11323, 11275, 0, 0, 10113},
+    {11276, 11324, 11276, 0, 0, 10113},
+    {11277, 11325, 11277, 0, 0, 10113},
+    {11278, 11326, 11278, 0, 0, 10113},
+    {11279, 11327, 11279, 0, 0, 10113},
+    {11280, 11328, 11280, 0, 0, 10113},
+    {11281, 11329, 11281, 0, 0, 10113},
+    {11282, 11330, 11282, 0, 0, 10113},
+    {11283, 11331, 11283, 0, 0, 10113},
+    {11284, 11332, 11284, 0, 0, 10113},
+    {11285, 11333, 11285, 0, 0, 10113},
+    {11286, 11334, 11286, 0, 0, 10113},
+    {11287, 11335, 11287, 0, 0, 10113},
+    {11288, 11336, 11288, 0, 0, 10113},
+    {11289, 11337, 11289, 0, 0, 10113},
+    {11290, 11338, 11290, 0, 0, 10113},
+    {11291, 11339, 11291, 0, 0, 10113},
+    {11292, 11340, 11292, 0, 0, 10113},
+    {11293, 11341, 11293, 0, 0, 10113},
+    {11294, 11342, 11294, 0, 0, 10113},
+    {11295, 11343, 11295, 0, 0, 10113},
+    {11296, 11344, 11296, 0, 0, 10113},
+    {11297, 11345, 11297, 0, 0, 10113},
+    {11298, 11346, 11298, 0, 0, 10113},
+    {11299, 11347, 11299, 0, 0, 10113},
+    {11300, 11348, 11300, 0, 0, 10113},
+    {11301, 11349, 11301, 0, 0, 10113},
+    {11302, 11350, 11302, 0, 0, 10113},
+    {11303, 11351, 11303, 0, 0, 10113},
+    {11304, 11352, 11304, 0, 0, 10113},
+    {11305, 11353, 11305, 0, 0, 10113},
+    {11306, 11354, 11306, 0, 0, 10113},
+    {11307, 11355, 11307, 0, 0, 10113},
+    {11308, 11356, 11308, 0, 0, 10113},
+    {11309, 11357, 11309, 0, 0, 10113},
+    {11310, 11358, 11310, 0, 0, 10113},
+    {11264, 11312, 11264, 0, 0, 9993},
+    {11265, 11313, 11265, 0, 0, 9993},
+    {11266, 11314, 11266, 0, 0, 9993},
+    {11267, 11315, 11267, 0, 0, 9993},
+    {11268, 11316, 11268, 0, 0, 9993},
+    {11269, 11317, 11269, 0, 0, 9993},
+    {11270, 11318, 11270, 0, 0, 9993},
+    {11271, 11319, 11271, 0, 0, 9993},
+    {11272, 11320, 11272, 0, 0, 9993},
+    {11273, 11321, 11273, 0, 0, 9993},
+    {11274, 11322, 11274, 0, 0, 9993},
+    {11275, 11323, 11275, 0, 0, 9993},
+    {11276, 11324, 11276, 0, 0, 9993},
+    {11277, 11325, 11277, 0, 0, 9993},
+    {11278, 11326, 11278, 0, 0, 9993},
+    {11279, 11327, 11279, 0, 0, 9993},
+    {11280, 11328, 11280, 0, 0, 9993},
+    {11281, 11329, 11281, 0, 0, 9993},
+    {11282, 11330, 11282, 0, 0, 9993},
+    {11283, 11331, 11283, 0, 0, 9993},
+    {11284, 11332, 11284, 0, 0, 9993},
+    {11285, 11333, 11285, 0, 0, 9993},
+    {11286, 11334, 11286, 0, 0, 9993},
+    {11287, 11335, 11287, 0, 0, 9993},
+    {11288, 11336, 11288, 0, 0, 9993},
+    {11289, 11337, 11289, 0, 0, 9993},
+    {11290, 11338, 11290, 0, 0, 9993},
+    {11291, 11339, 11291, 0, 0, 9993},
+    {11292, 11340, 11292, 0, 0, 9993},
+    {11293, 11341, 11293, 0, 0, 9993},
+    {11294, 11342, 11294, 0, 0, 9993},
+    {11295, 11343, 11295, 0, 0, 9993},
+    {11296, 11344, 11296, 0, 0, 9993},
+    {11297, 11345, 11297, 0, 0, 9993},
+    {11298, 11346, 11298, 0, 0, 9993},
+    {11299, 11347, 11299, 0, 0, 9993},
+    {11300, 11348, 11300, 0, 0, 9993},
+    {11301, 11349, 11301, 0, 0, 9993},
+    {11302, 11350, 11302, 0, 0, 9993},
+    {11303, 11351, 11303, 0, 0, 9993},
+    {11304, 11352, 11304, 0, 0, 9993},
+    {11305, 11353, 11305, 0, 0, 9993},
+    {11306, 11354, 11306, 0, 0, 9993},
+    {11307, 11355, 11307, 0, 0, 9993},
+    {11308, 11356, 11308, 0, 0, 9993},
+    {11309, 11357, 11309, 0, 0, 9993},
+    {11310, 11358, 11310, 0, 0, 9993},
+    {11360, 11361, 11360, 0, 0, 10113},
+    {11360, 11361, 11360, 0, 0, 9993},
+    {11362, 619, 11362, 0, 0, 10113},
+    {11363, 7549, 11363, 0, 0, 10113},
+    {11364, 637, 11364, 0, 0, 10113},
+    {570, 11365, 570, 0, 0, 9993},
+    {574, 11366, 574, 0, 0, 9993},
+    {11367, 11368, 11367, 0, 0, 10113},
+    {11367, 11368, 11367, 0, 0, 9993},
+    {11369, 11370, 11369, 0, 0, 10113},
+    {11369, 11370, 11369, 0, 0, 9993},
+    {11371, 11372, 11371, 0, 0, 10113},
+    {11371, 11372, 11371, 0, 0, 9993},
+    {11373, 593, 11373, 0, 0, 10113},
+    {11374, 625, 11374, 0, 0, 10113},
+    {11375, 592, 11375, 0, 0, 10113},
+    {11376, 594, 11376, 0, 0, 10113},
+    {11378, 11379, 11378, 0, 0, 10113},
+    {11378, 11379, 11378, 0, 0, 9993},
+    {11381, 11382, 11381, 0, 0, 10113},
+    {11381, 11382, 11381, 0, 0, 9993},
+    {11390, 575, 11390, 0, 0, 10113},
+    {11391, 576, 11391, 0, 0, 10113},
+    {11392, 11393, 11392, 0, 0, 10113},
+    {11392, 11393, 11392, 0, 0, 9993},
+    {11394, 11395, 11394, 0, 0, 10113},
+    {11394, 11395, 11394, 0, 0, 9993},
+    {11396, 11397, 11396, 0, 0, 10113},
+    {11396, 11397, 11396, 0, 0, 9993},
+    {11398, 11399, 11398, 0, 0, 10113},
+    {11398, 11399, 11398, 0, 0, 9993},
+    {11400, 11401, 11400, 0, 0, 10113},
+    {11400, 11401, 11400, 0, 0, 9993},
+    {11402, 11403, 11402, 0, 0, 10113},
+    {11402, 11403, 11402, 0, 0, 9993},
+    {11404, 11405, 11404, 0, 0, 10113},
+    {11404, 11405, 11404, 0, 0, 9993},
+    {11406, 11407, 11406, 0, 0, 10113},
+    {11406, 11407, 11406, 0, 0, 9993},
+    {11408, 11409, 11408, 0, 0, 10113},
+    {11408, 11409, 11408, 0, 0, 9993},
+    {11410, 11411, 11410, 0, 0, 10113},
+    {11410, 11411, 11410, 0, 0, 9993},
+    {11412, 11413, 11412, 0, 0, 10113},
+    {11412, 11413, 11412, 0, 0, 9993},
+    {11414, 11415, 11414, 0, 0, 10113},
+    {11414, 11415, 11414, 0, 0, 9993},
+    {11416, 11417, 11416, 0, 0, 10113},
+    {11416, 11417, 11416, 0, 0, 9993},
+    {11418, 11419, 11418, 0, 0, 10113},
+    {11418, 11419, 11418, 0, 0, 9993},
+    {11420, 11421, 11420, 0, 0, 10113},
+    {11420, 11421, 11420, 0, 0, 9993},
+    {11422, 11423, 11422, 0, 0, 10113},
+    {11422, 11423, 11422, 0, 0, 9993},
+    {11424, 11425, 11424, 0, 0, 10113},
+    {11424, 11425, 11424, 0, 0, 9993},
+    {11426, 11427, 11426, 0, 0, 10113},
+    {11426, 11427, 11426, 0, 0, 9993},
+    {11428, 11429, 11428, 0, 0, 10113},
+    {11428, 11429, 11428, 0, 0, 9993},
+    {11430, 11431, 11430, 0, 0, 10113},
+    {11430, 11431, 11430, 0, 0, 9993},
+    {11432, 11433, 11432, 0, 0, 10113},
+    {11432, 11433, 11432, 0, 0, 9993},
+    {11434, 11435, 11434, 0, 0, 10113},
+    {11434, 11435, 11434, 0, 0, 9993},
+    {11436, 11437, 11436, 0, 0, 10113},
+    {11436, 11437, 11436, 0, 0, 9993},
+    {11438, 11439, 11438, 0, 0, 10113},
+    {11438, 11439, 11438, 0, 0, 9993},
+    {11440, 11441, 11440, 0, 0, 10113},
+    {11440, 11441, 11440, 0, 0, 9993},
+    {11442, 11443, 11442, 0, 0, 10113},
+    {11442, 11443, 11442, 0, 0, 9993},
+    {11444, 11445, 11444, 0, 0, 10113},
+    {11444, 11445, 11444, 0, 0, 9993},
+    {11446, 11447, 11446, 0, 0, 10113},
+    {11446, 11447, 11446, 0, 0, 9993},
+    {11448, 11449, 11448, 0, 0, 10113},
+    {11448, 11449, 11448, 0, 0, 9993},
+    {11450, 11451, 11450, 0, 0, 10113},
+    {11450, 11451, 11450, 0, 0, 9993},
+    {11452, 11453, 11452, 0, 0, 10113},
+    {11452, 11453, 11452, 0, 0, 9993},
+    {11454, 11455, 11454, 0, 0, 10113},
+    {11454, 11455, 11454, 0, 0, 9993},
+    {11456, 11457, 11456, 0, 0, 10113},
+    {11456, 11457, 11456, 0, 0, 9993},
+    {11458, 11459, 11458, 0, 0, 10113},
+    {11458, 11459, 11458, 0, 0, 9993},
+    {11460, 11461, 11460, 0, 0, 10113},
+    {11460, 11461, 11460, 0, 0, 9993},
+    {11462, 11463, 11462, 0, 0, 10113},
+    {11462, 11463, 11462, 0, 0, 9993},
+    {11464, 11465, 11464, 0, 0, 10113},
+    {11464, 11465, 11464, 0, 0, 9993},
+    {11466, 11467, 11466, 0, 0, 10113},
+    {11466, 11467, 11466, 0, 0, 9993},
+    {11468, 11469, 11468, 0, 0, 10113},
+    {11468, 11469, 11468, 0, 0, 9993},
+    {11470, 11471, 11470, 0, 0, 10113},
+    {11470, 11471, 11470, 0, 0, 9993},
+    {11472, 11473, 11472, 0, 0, 10113},
+    {11472, 11473, 11472, 0, 0, 9993},
+    {11474, 11475, 11474, 0, 0, 10113},
+    {11474, 11475, 11474, 0, 0, 9993},
+    {11476, 11477, 11476, 0, 0, 10113},
+    {11476, 11477, 11476, 0, 0, 9993},
+    {11478, 11479, 11478, 0, 0, 10113},
+    {11478, 11479, 11478, 0, 0, 9993},
+    {11480, 11481, 11480, 0, 0, 10113},
+    {11480, 11481, 11480, 0, 0, 9993},
+    {11482, 11483, 11482, 0, 0, 10113},
+    {11482, 11483, 11482, 0, 0, 9993},
+    {11484, 11485, 11484, 0, 0, 10113},
+    {11484, 11485, 11484, 0, 0, 9993},
+    {11486, 11487, 11486, 0, 0, 10113},
+    {11486, 11487, 11486, 0, 0, 9993},
+    {11488, 11489, 11488, 0, 0, 10113},
+    {11488, 11489, 11488, 0, 0, 9993},
+    {11490, 11491, 11490, 0, 0, 10113},
+    {11490, 11491, 11490, 0, 0, 9993},
+    {11499, 11500, 11499, 0, 0, 10113},
+    {11499, 11500, 11499, 0, 0, 9993},
+    {11501, 11502, 11501, 0, 0, 10113},
+    {11501, 11502, 11501, 0, 0, 9993},
+    {4256, 11520, 4256, 0, 0, 9993},
+    {4257, 11521, 4257, 0, 0, 9993},
+    {4258, 11522, 4258, 0, 0, 9993},
+    {4259, 11523, 4259, 0, 0, 9993},
+    {4260, 11524, 4260, 0, 0, 9993},
+    {4261, 11525, 4261, 0, 0, 9993},
+    {4262, 11526, 4262, 0, 0, 9993},
+    {4263, 11527, 4263, 0, 0, 9993},
+    {4264, 11528, 4264, 0, 0, 9993},
+    {4265, 11529, 4265, 0, 0, 9993},
+    {4266, 11530, 4266, 0, 0, 9993},
+    {4267, 11531, 4267, 0, 0, 9993},
+    {4268, 11532, 4268, 0, 0, 9993},
+    {4269, 11533, 4269, 0, 0, 9993},
+    {4270, 11534, 4270, 0, 0, 9993},
+    {4271, 11535, 4271, 0, 0, 9993},
+    {4272, 11536, 4272, 0, 0, 9993},
+    {4273, 11537, 4273, 0, 0, 9993},
+    {4274, 11538, 4274, 0, 0, 9993},
+    {4275, 11539, 4275, 0, 0, 9993},
+    {4276, 11540, 4276, 0, 0, 9993},
+    {4277, 11541, 4277, 0, 0, 9993},
+    {4278, 11542, 4278, 0, 0, 9993},
+    {4279, 11543, 4279, 0, 0, 9993},
+    {4280, 11544, 4280, 0, 0, 9993},
+    {4281, 11545, 4281, 0, 0, 9993},
+    {4282, 11546, 4282, 0, 0, 9993},
+    {4283, 11547, 4283, 0, 0, 9993},
+    {4284, 11548, 4284, 0, 0, 9993},
+    {4285, 11549, 4285, 0, 0, 9993},
+    {4286, 11550, 4286, 0, 0, 9993},
+    {4287, 11551, 4287, 0, 0, 9993},
+    {4288, 11552, 4288, 0, 0, 9993},
+    {4289, 11553, 4289, 0, 0, 9993},
+    {4290, 11554, 4290, 0, 0, 9993},
+    {4291, 11555, 4291, 0, 0, 9993},
+    {4292, 11556, 4292, 0, 0, 9993},
+    {4293, 11557, 4293, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 5121},
+    {0, 0, 0, 0, 0, 3841},
+    {42560, 42561, 42560, 0, 0, 10113},
+    {42560, 42561, 42560, 0, 0, 9993},
+    {42562, 42563, 42562, 0, 0, 10113},
+    {42562, 42563, 42562, 0, 0, 9993},
+    {42564, 42565, 42564, 0, 0, 10113},
+    {42564, 42565, 42564, 0, 0, 9993},
+    {42566, 42567, 42566, 0, 0, 10113},
+    {42566, 42567, 42566, 0, 0, 9993},
+    {42568, 42569, 42568, 0, 0, 10113},
+    {42568, 42569, 42568, 0, 0, 9993},
+    {42570, 42571, 42570, 0, 0, 10113},
+    {42570, 42571, 42570, 0, 0, 9993},
+    {42572, 42573, 42572, 0, 0, 10113},
+    {42572, 42573, 42572, 0, 0, 9993},
+    {42574, 42575, 42574, 0, 0, 10113},
+    {42574, 42575, 42574, 0, 0, 9993},
+    {42576, 42577, 42576, 0, 0, 10113},
+    {42576, 42577, 42576, 0, 0, 9993},
+    {42578, 42579, 42578, 0, 0, 10113},
+    {42578, 42579, 42578, 0, 0, 9993},
+    {42580, 42581, 42580, 0, 0, 10113},
+    {42580, 42581, 42580, 0, 0, 9993},
+    {42582, 42583, 42582, 0, 0, 10113},
+    {42582, 42583, 42582, 0, 0, 9993},
+    {42584, 42585, 42584, 0, 0, 10113},
+    {42584, 42585, 42584, 0, 0, 9993},
+    {42586, 42587, 42586, 0, 0, 10113},
+    {42586, 42587, 42586, 0, 0, 9993},
+    {42588, 42589, 42588, 0, 0, 10113},
+    {42588, 42589, 42588, 0, 0, 9993},
+    {42590, 42591, 42590, 0, 0, 10113},
+    {42590, 42591, 42590, 0, 0, 9993},
+    {42592, 42593, 42592, 0, 0, 10113},
+    {42592, 42593, 42592, 0, 0, 9993},
+    {42594, 42595, 42594, 0, 0, 10113},
+    {42594, 42595, 42594, 0, 0, 9993},
+    {42596, 42597, 42596, 0, 0, 10113},
+    {42596, 42597, 42596, 0, 0, 9993},
+    {42598, 42599, 42598, 0, 0, 10113},
+    {42598, 42599, 42598, 0, 0, 9993},
+    {42600, 42601, 42600, 0, 0, 10113},
+    {42600, 42601, 42600, 0, 0, 9993},
+    {42602, 42603, 42602, 0, 0, 10113},
+    {42602, 42603, 42602, 0, 0, 9993},
+    {42604, 42605, 42604, 0, 0, 10113},
+    {42604, 42605, 42604, 0, 0, 9993},
+    {42624, 42625, 42624, 0, 0, 10113},
+    {42624, 42625, 42624, 0, 0, 9993},
+    {42626, 42627, 42626, 0, 0, 10113},
+    {42626, 42627, 42626, 0, 0, 9993},
+    {42628, 42629, 42628, 0, 0, 10113},
+    {42628, 42629, 42628, 0, 0, 9993},
+    {42630, 42631, 42630, 0, 0, 10113},
+    {42630, 42631, 42630, 0, 0, 9993},
+    {42632, 42633, 42632, 0, 0, 10113},
+    {42632, 42633, 42632, 0, 0, 9993},
+    {42634, 42635, 42634, 0, 0, 10113},
+    {42634, 42635, 42634, 0, 0, 9993},
+    {42636, 42637, 42636, 0, 0, 10113},
+    {42636, 42637, 42636, 0, 0, 9993},
+    {42638, 42639, 42638, 0, 0, 10113},
+    {42638, 42639, 42638, 0, 0, 9993},
+    {42640, 42641, 42640, 0, 0, 10113},
+    {42640, 42641, 42640, 0, 0, 9993},
+    {42642, 42643, 42642, 0, 0, 10113},
+    {42642, 42643, 42642, 0, 0, 9993},
+    {42644, 42645, 42644, 0, 0, 10113},
+    {42644, 42645, 42644, 0, 0, 9993},
+    {42646, 42647, 42646, 0, 0, 10113},
+    {42646, 42647, 42646, 0, 0, 9993},
+    {42786, 42787, 42786, 0, 0, 10113},
+    {42786, 42787, 42786, 0, 0, 9993},
+    {42788, 42789, 42788, 0, 0, 10113},
+    {42788, 42789, 42788, 0, 0, 9993},
+    {42790, 42791, 42790, 0, 0, 10113},
+    {42790, 42791, 42790, 0, 0, 9993},
+    {42792, 42793, 42792, 0, 0, 10113},
+    {42792, 42793, 42792, 0, 0, 9993},
+    {42794, 42795, 42794, 0, 0, 10113},
+    {42794, 42795, 42794, 0, 0, 9993},
+    {42796, 42797, 42796, 0, 0, 10113},
+    {42796, 42797, 42796, 0, 0, 9993},
+    {42798, 42799, 42798, 0, 0, 10113},
+    {42798, 42799, 42798, 0, 0, 9993},
+    {42802, 42803, 42802, 0, 0, 10113},
+    {42802, 42803, 42802, 0, 0, 9993},
+    {42804, 42805, 42804, 0, 0, 10113},
+    {42804, 42805, 42804, 0, 0, 9993},
+    {42806, 42807, 42806, 0, 0, 10113},
+    {42806, 42807, 42806, 0, 0, 9993},
+    {42808, 42809, 42808, 0, 0, 10113},
+    {42808, 42809, 42808, 0, 0, 9993},
+    {42810, 42811, 42810, 0, 0, 10113},
+    {42810, 42811, 42810, 0, 0, 9993},
+    {42812, 42813, 42812, 0, 0, 10113},
+    {42812, 42813, 42812, 0, 0, 9993},
+    {42814, 42815, 42814, 0, 0, 10113},
+    {42814, 42815, 42814, 0, 0, 9993},
+    {42816, 42817, 42816, 0, 0, 10113},
+    {42816, 42817, 42816, 0, 0, 9993},
+    {42818, 42819, 42818, 0, 0, 10113},
+    {42818, 42819, 42818, 0, 0, 9993},
+    {42820, 42821, 42820, 0, 0, 10113},
+    {42820, 42821, 42820, 0, 0, 9993},
+    {42822, 42823, 42822, 0, 0, 10113},
+    {42822, 42823, 42822, 0, 0, 9993},
+    {42824, 42825, 42824, 0, 0, 10113},
+    {42824, 42825, 42824, 0, 0, 9993},
+    {42826, 42827, 42826, 0, 0, 10113},
+    {42826, 42827, 42826, 0, 0, 9993},
+    {42828, 42829, 42828, 0, 0, 10113},
+    {42828, 42829, 42828, 0, 0, 9993},
+    {42830, 42831, 42830, 0, 0, 10113},
+    {42830, 42831, 42830, 0, 0, 9993},
+    {42832, 42833, 42832, 0, 0, 10113},
+    {42832, 42833, 42832, 0, 0, 9993},
+    {42834, 42835, 42834, 0, 0, 10113},
+    {42834, 42835, 42834, 0, 0, 9993},
+    {42836, 42837, 42836, 0, 0, 10113},
+    {42836, 42837, 42836, 0, 0, 9993},
+    {42838, 42839, 42838, 0, 0, 10113},
+    {42838, 42839, 42838, 0, 0, 9993},
+    {42840, 42841, 42840, 0, 0, 10113},
+    {42840, 42841, 42840, 0, 0, 9993},
+    {42842, 42843, 42842, 0, 0, 10113},
+    {42842, 42843, 42842, 0, 0, 9993},
+    {42844, 42845, 42844, 0, 0, 10113},
+    {42844, 42845, 42844, 0, 0, 9993},
+    {42846, 42847, 42846, 0, 0, 10113},
+    {42846, 42847, 42846, 0, 0, 9993},
+    {42848, 42849, 42848, 0, 0, 10113},
+    {42848, 42849, 42848, 0, 0, 9993},
+    {42850, 42851, 42850, 0, 0, 10113},
+    {42850, 42851, 42850, 0, 0, 9993},
+    {42852, 42853, 42852, 0, 0, 10113},
+    {42852, 42853, 42852, 0, 0, 9993},
+    {42854, 42855, 42854, 0, 0, 10113},
+    {42854, 42855, 42854, 0, 0, 9993},
+    {42856, 42857, 42856, 0, 0, 10113},
+    {42856, 42857, 42856, 0, 0, 9993},
+    {42858, 42859, 42858, 0, 0, 10113},
+    {42858, 42859, 42858, 0, 0, 9993},
+    {42860, 42861, 42860, 0, 0, 10113},
+    {42860, 42861, 42860, 0, 0, 9993},
+    {42862, 42863, 42862, 0, 0, 10113},
+    {42862, 42863, 42862, 0, 0, 9993},
+    {42873, 42874, 42873, 0, 0, 10113},
+    {42873, 42874, 42873, 0, 0, 9993},
+    {42875, 42876, 42875, 0, 0, 10113},
+    {42875, 42876, 42875, 0, 0, 9993},
+    {42877, 7545, 42877, 0, 0, 10113},
+    {42878, 42879, 42878, 0, 0, 10113},
+    {42878, 42879, 42878, 0, 0, 9993},
+    {42880, 42881, 42880, 0, 0, 10113},
+    {42880, 42881, 42880, 0, 0, 9993},
+    {42882, 42883, 42882, 0, 0, 10113},
+    {42882, 42883, 42882, 0, 0, 9993},
+    {42884, 42885, 42884, 0, 0, 10113},
+    {42884, 42885, 42884, 0, 0, 9993},
+    {42886, 42887, 42886, 0, 0, 10113},
+    {42886, 42887, 42886, 0, 0, 9993},
+    {42891, 42892, 42891, 0, 0, 10113},
+    {42891, 42892, 42891, 0, 0, 9993},
+    {42893, 613, 42893, 0, 0, 10113},
+    {42896, 42897, 42896, 0, 0, 10113},
+    {42896, 42897, 42896, 0, 0, 9993},
+    {42912, 42913, 42912, 0, 0, 10113},
+    {42912, 42913, 42912, 0, 0, 9993},
+    {42914, 42915, 42914, 0, 0, 10113},
+    {42914, 42915, 42914, 0, 0, 9993},
+    {42916, 42917, 42916, 0, 0, 10113},
+    {42916, 42917, 42916, 0, 0, 9993},
+    {42918, 42919, 42918, 0, 0, 10113},
+    {42918, 42919, 42918, 0, 0, 9993},
+    {42920, 42921, 42920, 0, 0, 10113},
+    {42920, 42921, 42920, 0, 0, 9993},
+    {33554799, 16777582, 33554801, 0, 0, 26377},
+    {33554804, 16777587, 33554806, 0, 0, 26377},
+    {33554809, 16777592, 33554811, 0, 0, 26377},
+    {50332030, 16777597, 50332033, 0, 0, 26377},
+    {50332037, 16777604, 50332040, 0, 0, 26377},
+    {33554828, 16777611, 33554830, 0, 0, 26377},
+    {33554833, 16777616, 33554835, 0, 0, 26377},
+    {33554838, 16777621, 33554840, 0, 0, 26377},
+    {33554843, 16777626, 33554845, 0, 0, 26377},
+    {33554848, 16777631, 33554850, 0, 0, 26377},
+    {33554853, 16777636, 33554855, 0, 0, 26377},
+    {33554858, 16777641, 33554860, 0, 0, 26377},
     {0, 0, 0, 0, 0, 1025},
-    {0, 38, 0, 0, 0, 1921},
-    {0, 37, 0, 0, 0, 1921},
-    {0, 64, 0, 0, 0, 1921},
-    {0, 63, 0, 0, 0, 1921},
-    {65498, 0, 65498, 0, 0, 1801},
-    {65499, 0, 65499, 0, 0, 1801},
-    {65505, 0, 65505, 0, 0, 1801},
-    {65472, 0, 65472, 0, 0, 1801},
-    {65473, 0, 65473, 0, 0, 1801},
-    {0, 8, 0, 0, 0, 1921},
-    {65474, 0, 65474, 0, 0, 1801},
-    {65479, 0, 65479, 0, 0, 1801},
-    {0, 0, 0, 0, 0, 1921},
-    {65489, 0, 65489, 0, 0, 1801},
-    {65482, 0, 65482, 0, 0, 1801},
-    {65528, 0, 65528, 0, 0, 1801},
-    {65450, 0, 65450, 0, 0, 1801},
-    {65456, 0, 65456, 0, 0, 1801},
-    {7, 0, 7, 0, 0, 1801},
-    {0, 65476, 0, 0, 0, 1921},
-    {65440, 0, 65440, 0, 0, 1801},
-    {0, 65529, 0, 0, 0, 1921},
-    {0, 80, 0, 0, 0, 1921},
-    {0, 15, 0, 0, 0, 1921},
-    {65521, 0, 65521, 0, 0, 1801},
-    {0, 48, 0, 0, 0, 1921},
-    {65488, 0, 65488, 0, 0, 1801},
-    {0, 0, 0, 0, 0, 1537},
-    {0, 7264, 0, 0, 0, 1921},
-    {0, 0, 0, 0, 1, 5636},
-    {0, 0, 0, 0, 2, 5636},
-    {0, 0, 0, 0, 3, 5636},
-    {0, 0, 0, 0, 4, 5636},
-    {0, 0, 0, 0, 5, 5636},
-    {0, 0, 0, 0, 6, 5636},
-    {0, 0, 0, 0, 7, 5636},
-    {0, 0, 0, 0, 8, 5636},
-    {0, 0, 0, 0, 9, 5636},
-    {0, 0, 0, 0, 0, 5888},
-    {42877, 7545, 42877, 0, 0, 3849},
-    {3814, 0, 3814, 0, 0, 1801},
-    {65477, 0, 65477, 0, 0, 1801},
-    {0, 57921, 0, 0, 0, 1921},
-    {8, 0, 8, 0, 0, 1801},
-    {0, 65528, 0, 0, 0, 1921},
-    {74, 0, 74, 0, 0, 1801},
-    {86, 0, 86, 0, 0, 1801},
-    {100, 0, 100, 0, 0, 1801},
-    {128, 0, 128, 0, 0, 1801},
-    {112, 0, 112, 0, 0, 1801},
-    {126, 0, 126, 0, 0, 1801},
-    {0, 65528, 0, 0, 0, 1857},
-    {9, 0, 9, 0, 0, 1801},
-    {0, 65462, 0, 0, 0, 1921},
-    {0, 65527, 0, 0, 0, 1857},
-    {58331, 0, 58331, 0, 0, 1801},
-    {0, 65450, 0, 0, 0, 1921},
-    {0, 65436, 0, 0, 0, 1921},
-    {0, 65424, 0, 0, 0, 1921},
-    {0, 65408, 0, 0, 0, 1921},
-    {0, 65410, 0, 0, 0, 1921},
-    {0, 0, 0, 0, 0, 5124},
-    {0, 0, 0, 0, 4, 5124},
-    {0, 0, 0, 0, 5, 5124},
-    {0, 0, 0, 0, 6, 5124},
-    {0, 0, 0, 0, 7, 5124},
-    {0, 0, 0, 0, 8, 5124},
-    {0, 0, 0, 0, 9, 5124},
-    {0, 0, 0, 0, 0, 1792},
-    {0, 58019, 0, 0, 0, 1921},
-    {0, 57153, 0, 0, 0, 1921},
-    {0, 57274, 0, 0, 0, 1921},
-    {0, 28, 0, 0, 0, 1921},
-    {65508, 0, 65508, 0, 0, 1801},
-    {0, 16, 0, 0, 0, 5888},
-    {65520, 0, 65520, 0, 0, 5888},
-    {0, 26, 0, 0, 0, 1024},
-    {65510, 0, 65510, 0, 0, 1024},
-    {0, 54793, 0, 0, 0, 1921},
-    {0, 61722, 0, 0, 0, 1921},
-    {0, 54809, 0, 0, 0, 1921},
-    {54741, 0, 54741, 0, 0, 1801},
-    {54744, 0, 54744, 0, 0, 1801},
-    {0, 54756, 0, 0, 0, 1921},
-    {0, 54787, 0, 0, 0, 1921},
-    {0, 54753, 0, 0, 0, 1921},
-    {0, 54754, 0, 0, 0, 1921},
-    {0, 54721, 0, 0, 0, 1921},
-    {58272, 0, 58272, 0, 0, 1801},
-    {0, 0, 0, 0, 0, 5889},
-    {42877, 7545, 42877, 0, 0, 3969},
-    {42893, 613, 42893, 0, 0, 3969},
-    {0, 40, 0, 0, 0, 1921},
-    {65496, 0, 65496, 0, 0, 1801},
+    {65313, 65345, 65313, 0, 0, 10113},
+    {65314, 65346, 65314, 0, 0, 10113},
+    {65315, 65347, 65315, 0, 0, 10113},
+    {65316, 65348, 65316, 0, 0, 10113},
+    {65317, 65349, 65317, 0, 0, 10113},
+    {65318, 65350, 65318, 0, 0, 10113},
+    {65319, 65351, 65319, 0, 0, 10113},
+    {65320, 65352, 65320, 0, 0, 10113},
+    {65321, 65353, 65321, 0, 0, 10113},
+    {65322, 65354, 65322, 0, 0, 10113},
+    {65323, 65355, 65323, 0, 0, 10113},
+    {65324, 65356, 65324, 0, 0, 10113},
+    {65325, 65357, 65325, 0, 0, 10113},
+    {65326, 65358, 65326, 0, 0, 10113},
+    {65327, 65359, 65327, 0, 0, 10113},
+    {65328, 65360, 65328, 0, 0, 10113},
+    {65329, 65361, 65329, 0, 0, 10113},
+    {65330, 65362, 65330, 0, 0, 10113},
+    {65331, 65363, 65331, 0, 0, 10113},
+    {65332, 65364, 65332, 0, 0, 10113},
+    {65333, 65365, 65333, 0, 0, 10113},
+    {65334, 65366, 65334, 0, 0, 10113},
+    {65335, 65367, 65335, 0, 0, 10113},
+    {65336, 65368, 65336, 0, 0, 10113},
+    {65337, 65369, 65337, 0, 0, 10113},
+    {65338, 65370, 65338, 0, 0, 10113},
+    {65313, 65345, 65313, 0, 0, 9993},
+    {65314, 65346, 65314, 0, 0, 9993},
+    {65315, 65347, 65315, 0, 0, 9993},
+    {65316, 65348, 65316, 0, 0, 9993},
+    {65317, 65349, 65317, 0, 0, 9993},
+    {65318, 65350, 65318, 0, 0, 9993},
+    {65319, 65351, 65319, 0, 0, 9993},
+    {65320, 65352, 65320, 0, 0, 9993},
+    {65321, 65353, 65321, 0, 0, 9993},
+    {65322, 65354, 65322, 0, 0, 9993},
+    {65323, 65355, 65323, 0, 0, 9993},
+    {65324, 65356, 65324, 0, 0, 9993},
+    {65325, 65357, 65325, 0, 0, 9993},
+    {65326, 65358, 65326, 0, 0, 9993},
+    {65327, 65359, 65327, 0, 0, 9993},
+    {65328, 65360, 65328, 0, 0, 9993},
+    {65329, 65361, 65329, 0, 0, 9993},
+    {65330, 65362, 65330, 0, 0, 9993},
+    {65331, 65363, 65331, 0, 0, 9993},
+    {65332, 65364, 65332, 0, 0, 9993},
+    {65333, 65365, 65333, 0, 0, 9993},
+    {65334, 65366, 65334, 0, 0, 9993},
+    {65335, 65367, 65335, 0, 0, 9993},
+    {65336, 65368, 65336, 0, 0, 9993},
+    {65337, 65369, 65337, 0, 0, 9993},
+    {65338, 65370, 65338, 0, 0, 9993},
+    {0, 0, 0, 0, 0, 5633},
+    {66560, 66600, 66560, 0, 0, 10113},
+    {66561, 66601, 66561, 0, 0, 10113},
+    {66562, 66602, 66562, 0, 0, 10113},
+    {66563, 66603, 66563, 0, 0, 10113},
+    {66564, 66604, 66564, 0, 0, 10113},
+    {66565, 66605, 66565, 0, 0, 10113},
+    {66566, 66606, 66566, 0, 0, 10113},
+    {66567, 66607, 66567, 0, 0, 10113},
+    {66568, 66608, 66568, 0, 0, 10113},
+    {66569, 66609, 66569, 0, 0, 10113},
+    {66570, 66610, 66570, 0, 0, 10113},
+    {66571, 66611, 66571, 0, 0, 10113},
+    {66572, 66612, 66572, 0, 0, 10113},
+    {66573, 66613, 66573, 0, 0, 10113},
+    {66574, 66614, 66574, 0, 0, 10113},
+    {66575, 66615, 66575, 0, 0, 10113},
+    {66576, 66616, 66576, 0, 0, 10113},
+    {66577, 66617, 66577, 0, 0, 10113},
+    {66578, 66618, 66578, 0, 0, 10113},
+    {66579, 66619, 66579, 0, 0, 10113},
+    {66580, 66620, 66580, 0, 0, 10113},
+    {66581, 66621, 66581, 0, 0, 10113},
+    {66582, 66622, 66582, 0, 0, 10113},
+    {66583, 66623, 66583, 0, 0, 10113},
+    {66584, 66624, 66584, 0, 0, 10113},
+    {66585, 66625, 66585, 0, 0, 10113},
+    {66586, 66626, 66586, 0, 0, 10113},
+    {66587, 66627, 66587, 0, 0, 10113},
+    {66588, 66628, 66588, 0, 0, 10113},
+    {66589, 66629, 66589, 0, 0, 10113},
+    {66590, 66630, 66590, 0, 0, 10113},
+    {66591, 66631, 66591, 0, 0, 10113},
+    {66592, 66632, 66592, 0, 0, 10113},
+    {66593, 66633, 66593, 0, 0, 10113},
+    {66594, 66634, 66594, 0, 0, 10113},
+    {66595, 66635, 66595, 0, 0, 10113},
+    {66596, 66636, 66596, 0, 0, 10113},
+    {66597, 66637, 66597, 0, 0, 10113},
+    {66598, 66638, 66598, 0, 0, 10113},
+    {66599, 66639, 66599, 0, 0, 10113},
+    {66560, 66600, 66560, 0, 0, 9993},
+    {66561, 66601, 66561, 0, 0, 9993},
+    {66562, 66602, 66562, 0, 0, 9993},
+    {66563, 66603, 66563, 0, 0, 9993},
+    {66564, 66604, 66564, 0, 0, 9993},
+    {66565, 66605, 66565, 0, 0, 9993},
+    {66566, 66606, 66566, 0, 0, 9993},
+    {66567, 66607, 66567, 0, 0, 9993},
+    {66568, 66608, 66568, 0, 0, 9993},
+    {66569, 66609, 66569, 0, 0, 9993},
+    {66570, 66610, 66570, 0, 0, 9993},
+    {66571, 66611, 66571, 0, 0, 9993},
+    {66572, 66612, 66572, 0, 0, 9993},
+    {66573, 66613, 66573, 0, 0, 9993},
+    {66574, 66614, 66574, 0, 0, 9993},
+    {66575, 66615, 66575, 0, 0, 9993},
+    {66576, 66616, 66576, 0, 0, 9993},
+    {66577, 66617, 66577, 0, 0, 9993},
+    {66578, 66618, 66578, 0, 0, 9993},
+    {66579, 66619, 66579, 0, 0, 9993},
+    {66580, 66620, 66580, 0, 0, 9993},
+    {66581, 66621, 66581, 0, 0, 9993},
+    {66582, 66622, 66582, 0, 0, 9993},
+    {66583, 66623, 66583, 0, 0, 9993},
+    {66584, 66624, 66584, 0, 0, 9993},
+    {66585, 66625, 66585, 0, 0, 9993},
+    {66586, 66626, 66586, 0, 0, 9993},
+    {66587, 66627, 66587, 0, 0, 9993},
+    {66588, 66628, 66588, 0, 0, 9993},
+    {66589, 66629, 66589, 0, 0, 9993},
+    {66590, 66630, 66590, 0, 0, 9993},
+    {66591, 66631, 66591, 0, 0, 9993},
+    {66592, 66632, 66592, 0, 0, 9993},
+    {66593, 66633, 66593, 0, 0, 9993},
+    {66594, 66634, 66594, 0, 0, 9993},
+    {66595, 66635, 66595, 0, 0, 9993},
+    {66596, 66636, 66596, 0, 0, 9993},
+    {66597, 66637, 66597, 0, 0, 9993},
+    {66598, 66638, 66598, 0, 0, 9993},
+    {66599, 66639, 66599, 0, 0, 9993},
+};
+
+/* extended case mappings */
+
+const Py_UCS4 _PyUnicode_ExtendedCase[] = {
+    223,
+    83,
+    83,
+    83,
+    115,
+    105,
+    775,
+    304,
+    329,
+    700,
+    78,
+    496,
+    74,
+    780,
+    912,
+    921,
+    776,
+    769,
+    944,
+    933,
+    776,
+    769,
+    1415,
+    1333,
+    1362,
+    1333,
+    1410,
+    7830,
+    72,
+    817,
+    7831,
+    84,
+    776,
+    7832,
+    87,
+    778,
+    7833,
+    89,
+    778,
+    7834,
+    65,
+    702,
+    8016,
+    933,
+    787,
+    8018,
+    933,
+    787,
+    768,
+    8020,
+    933,
+    787,
+    769,
+    8022,
+    933,
+    787,
+    834,
+    8064,
+    7944,
+    921,
+    8072,
+    8065,
+    7945,
+    921,
+    8073,
+    8066,
+    7946,
+    921,
+    8074,
+    8067,
+    7947,
+    921,
+    8075,
+    8068,
+    7948,
+    921,
+    8076,
+    8069,
+    7949,
+    921,
+    8077,
+    8070,
+    7950,
+    921,
+    8078,
+    8071,
+    7951,
+    921,
+    8079,
+    8064,
+    7944,
+    921,
+    8072,
+    8065,
+    7945,
+    921,
+    8073,
+    8066,
+    7946,
+    921,
+    8074,
+    8067,
+    7947,
+    921,
+    8075,
+    8068,
+    7948,
+    921,
+    8076,
+    8069,
+    7949,
+    921,
+    8077,
+    8070,
+    7950,
+    921,
+    8078,
+    8071,
+    7951,
+    921,
+    8079,
+    8080,
+    7976,
+    921,
+    8088,
+    8081,
+    7977,
+    921,
+    8089,
+    8082,
+    7978,
+    921,
+    8090,
+    8083,
+    7979,
+    921,
+    8091,
+    8084,
+    7980,
+    921,
+    8092,
+    8085,
+    7981,
+    921,
+    8093,
+    8086,
+    7982,
+    921,
+    8094,
+    8087,
+    7983,
+    921,
+    8095,
+    8080,
+    7976,
+    921,
+    8088,
+    8081,
+    7977,
+    921,
+    8089,
+    8082,
+    7978,
+    921,
+    8090,
+    8083,
+    7979,
+    921,
+    8091,
+    8084,
+    7980,
+    921,
+    8092,
+    8085,
+    7981,
+    921,
+    8093,
+    8086,
+    7982,
+    921,
+    8094,
+    8087,
+    7983,
+    921,
+    8095,
+    8096,
+    8040,
+    921,
+    8104,
+    8097,
+    8041,
+    921,
+    8105,
+    8098,
+    8042,
+    921,
+    8106,
+    8099,
+    8043,
+    921,
+    8107,
+    8100,
+    8044,
+    921,
+    8108,
+    8101,
+    8045,
+    921,
+    8109,
+    8102,
+    8046,
+    921,
+    8110,
+    8103,
+    8047,
+    921,
+    8111,
+    8096,
+    8040,
+    921,
+    8104,
+    8097,
+    8041,
+    921,
+    8105,
+    8098,
+    8042,
+    921,
+    8106,
+    8099,
+    8043,
+    921,
+    8107,
+    8100,
+    8044,
+    921,
+    8108,
+    8101,
+    8045,
+    921,
+    8109,
+    8102,
+    8046,
+    921,
+    8110,
+    8103,
+    8047,
+    921,
+    8111,
+    8114,
+    8122,
+    921,
+    8122,
+    837,
+    8115,
+    913,
+    921,
+    8124,
+    8116,
+    902,
+    921,
+    902,
+    837,
+    8118,
+    913,
+    834,
+    8119,
+    913,
+    834,
+    921,
+    913,
+    834,
+    837,
+    8115,
+    913,
+    921,
+    8124,
+    8130,
+    8138,
+    921,
+    8138,
+    837,
+    8131,
+    919,
+    921,
+    8140,
+    8132,
+    905,
+    921,
+    905,
+    837,
+    8134,
+    919,
+    834,
+    8135,
+    919,
+    834,
+    921,
+    919,
+    834,
+    837,
+    8131,
+    919,
+    921,
+    8140,
+    8146,
+    921,
+    776,
+    768,
+    8147,
+    921,
+    776,
+    769,
+    8150,
+    921,
+    834,
+    8151,
+    921,
+    776,
+    834,
+    8162,
+    933,
+    776,
+    768,
+    8163,
+    933,
+    776,
+    769,
+    8164,
+    929,
+    787,
+    8166,
+    933,
+    834,
+    8167,
+    933,
+    776,
+    834,
+    8178,
+    8186,
+    921,
+    8186,
+    837,
+    8179,
+    937,
+    921,
+    8188,
+    8180,
+    911,
+    921,
+    911,
+    837,
+    8182,
+    937,
+    834,
+    8183,
+    937,
+    834,
+    921,
+    937,
+    834,
+    837,
+    8179,
+    937,
+    921,
+    8188,
+    64256,
+    70,
+    70,
+    70,
+    102,
+    64257,
+    70,
+    73,
+    70,
+    105,
+    64258,
+    70,
+    76,
+    70,
+    108,
+    64259,
+    70,
+    70,
+    73,
+    70,
+    102,
+    105,
+    64260,
+    70,
+    70,
+    76,
+    70,
+    102,
+    108,
+    64261,
+    83,
+    84,
+    83,
+    116,
+    64262,
+    83,
+    84,
+    83,
+    116,
+    64275,
+    1348,
+    1350,
+    1348,
+    1398,
+    64276,
+    1348,
+    1333,
+    1348,
+    1381,
+    64277,
+    1348,
+    1339,
+    1348,
+    1387,
+    64278,
+    1358,
+    1350,
+    1358,
+    1398,
+    64279,
+    1348,
+    1341,
+    1348,
+    1389,
 };
 
 /* type indexes */
@@ -208,59 +2640,59 @@
     34, 34, 34, 103, 34, 34, 34, 34, 34, 34, 105, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 106, 107, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 108, 109, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 110, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 111, 34, 34, 112, 113, 114, 115, 116, 117, 118, 119, 120, 
-    121, 122, 123, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 110, 111, 34, 34, 34, 34, 34, 
+    34, 34, 34, 112, 34, 34, 113, 114, 115, 116, 117, 118, 119, 120, 121, 
+    122, 123, 124, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 124, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 126, 127, 128, 
-    129, 130, 131, 132, 34, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 
-    17, 143, 144, 145, 146, 147, 17, 17, 17, 17, 17, 17, 148, 17, 149, 17, 
-    150, 17, 151, 17, 152, 17, 17, 17, 153, 17, 17, 17, 154, 155, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 34, 34, 34, 34, 34, 34, 156, 17, 157, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 34, 34, 34, 34, 34, 34, 34, 34, 158, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 34, 34, 34, 34, 159, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 160, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 64, 161, 162, 163, 164, 17, 165, 17, 166, 167, 168, 169, 170, 171, 
-    172, 173, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 174, 175, 176, 
-    177, 178, 17, 179, 180, 181, 182, 183, 184, 185, 186, 65, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 187, 188, 189, 34, 
-    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 86, 190, 34, 191, 
-    192, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
+    34, 125, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 127, 128, 129, 
+    130, 131, 132, 133, 34, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 
+    17, 144, 145, 146, 147, 148, 17, 17, 17, 17, 17, 17, 149, 17, 150, 17, 
+    151, 17, 152, 17, 153, 17, 17, 17, 154, 17, 17, 17, 155, 156, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 34, 34, 34, 34, 34, 34, 157, 17, 158, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 34, 34, 34, 34, 34, 34, 34, 34, 159, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 34, 34, 34, 34, 160, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 161, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 64, 162, 163, 164, 165, 17, 166, 17, 167, 168, 169, 170, 171, 172, 
+    173, 174, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 175, 176, 177, 
+    178, 179, 17, 180, 181, 182, 183, 184, 185, 186, 187, 65, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 188, 189, 190, 34, 
+    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 86, 191, 34, 192, 
+    193, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 193, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 34, 34, 194, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 194, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 34, 34, 195, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 34, 195, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 34, 196, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 196, 34, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 197, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
@@ -268,1594 +2700,1798 @@
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 34, 34, 34, 34, 197, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
+    34, 34, 34, 34, 34, 198, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
     34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 
-    34, 34, 198, 34, 199, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 34, 193, 34, 34, 199, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 200, 17, 201, 202, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 203, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 
-    125, 125, 125, 125, 125, 125, 125, 125, 125, 203, 
+    34, 34, 199, 34, 200, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 34, 194, 34, 34, 200, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 201, 17, 202, 203, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
+    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 204, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 204, 
 };
 
-static unsigned char index2[] = {
+static unsigned short index2[] = {
     1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 3, 3, 3, 2, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 5, 5, 5, 5, 5, 5, 5, 16, 16, 16, 16, 
-    16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    16, 16, 16, 16, 5, 5, 5, 5, 17, 5, 18, 18, 18, 18, 18, 18, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 5, 5, 
+    1, 1, 1, 1, 3, 3, 3, 2, 4, 5, 5, 5, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 6, 5, 
+    7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 6, 5, 5, 5, 5, 5, 5, 17, 18, 19, 20, 
+    21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 
+    39, 40, 41, 42, 5, 5, 5, 6, 43, 6, 44, 45, 46, 47, 48, 49, 50, 51, 52, 
+    53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 5, 5, 
     5, 5, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 19, 5, 5, 
-    1, 5, 5, 5, 5, 20, 21, 5, 22, 5, 17, 5, 23, 19, 5, 24, 24, 24, 5, 16, 16, 
-    16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    16, 16, 16, 5, 16, 16, 16, 16, 16, 16, 16, 19, 18, 18, 18, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 5, 
-    18, 18, 18, 18, 18, 18, 18, 25, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 28, 29, 26, 27, 26, 27, 26, 27, 19, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 30, 26, 27, 26, 27, 26, 27, 31, 32, 33, 26, 27, 26, 27, 34, 26, 
-    27, 35, 35, 26, 27, 19, 36, 37, 38, 26, 27, 35, 39, 40, 41, 42, 26, 27, 
-    43, 19, 41, 44, 45, 46, 26, 27, 26, 27, 26, 27, 47, 26, 27, 47, 19, 19, 
-    26, 27, 47, 26, 27, 48, 48, 26, 27, 26, 27, 49, 26, 27, 19, 50, 26, 27, 
-    19, 51, 50, 50, 50, 50, 52, 53, 54, 52, 53, 54, 52, 53, 54, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 55, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 52, 53, 54, 
-    26, 27, 56, 57, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 58, 19, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 19, 19, 19, 19, 19, 59, 26, 
-    27, 60, 61, 62, 62, 26, 27, 63, 64, 65, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 66, 67, 68, 69, 70, 19, 71, 71, 19, 72, 19, 73, 19, 19, 19, 19, 
-    71, 19, 19, 74, 19, 75, 19, 19, 76, 77, 19, 78, 19, 19, 19, 77, 19, 79, 
-    80, 19, 19, 81, 19, 19, 19, 19, 19, 19, 19, 82, 19, 19, 83, 19, 19, 83, 
-    19, 19, 19, 19, 83, 84, 85, 85, 86, 19, 19, 19, 19, 19, 87, 19, 50, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 50, 50, 50, 
-    50, 50, 5, 5, 5, 5, 5, 5, 5, 50, 5, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 88, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 26, 27, 26, 27, 50, 5, 26, 27, 0, 0, 89, 
-    45, 45, 45, 5, 0, 0, 0, 0, 0, 5, 5, 90, 17, 91, 91, 91, 0, 92, 0, 93, 93, 
-    19, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 94, 95, 95, 95, 19, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 96, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 97, 98, 98, 99, 100, 101, 102, 102, 102, 103, 
-    104, 105, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 106, 107, 108, 19, 109, 110, 5, 26, 27, 
-    111, 26, 27, 19, 58, 58, 58, 112, 112, 112, 112, 112, 112, 112, 112, 112, 
-    112, 112, 112, 112, 112, 112, 112, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    16, 16, 16, 16, 16, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 
-    18, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 
-    107, 107, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    5, 17, 17, 17, 17, 17, 5, 5, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 113, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 114, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 115, 115, 115, 115, 115, 115, 
-    115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 
-    115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 
-    115, 115, 115, 0, 0, 50, 5, 5, 5, 5, 5, 5, 0, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 19, 0, 5, 5, 0, 0, 0, 0, 0, 0, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 5, 17, 5, 17, 17, 5, 17, 17, 5, 17, 0, 0, 0, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 50, 50, 50, 5, 5, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 5, 0, 0, 5, 5, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 
-    5, 5, 5, 5, 50, 50, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 50, 17, 
-    17, 17, 17, 17, 17, 17, 1, 5, 17, 17, 17, 17, 17, 17, 50, 50, 17, 17, 5, 
-    17, 17, 17, 17, 50, 50, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 50, 50, 50, 
-    5, 5, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 1, 50, 17, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 50, 50, 5, 5, 5, 5, 50, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 
-    17, 17, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 17, 17, 17, 50, 17, 
-    17, 17, 17, 17, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 17, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 5, 5, 5, 5, 5, 5, 5, 6, 5, 70, 5, 5, 
+    71, 5, 6, 5, 5, 72, 73, 6, 74, 5, 75, 6, 76, 70, 5, 77, 77, 77, 5, 78, 
+    79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 
+    97, 98, 99, 100, 5, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 
+    111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 
+    125, 126, 127, 128, 129, 130, 131, 5, 132, 133, 134, 135, 136, 137, 138, 
+    139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 
+    153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 
+    167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 
+    181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 
+    195, 70, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 
+    209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 
+    223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 
+    237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 
+    251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 
+    265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 
+    279, 70, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 
+    70, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 
+    70, 70, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 
+    320, 70, 321, 322, 323, 70, 324, 321, 321, 321, 321, 325, 326, 327, 328, 
+    329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 
+    343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 
+    357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 
+    371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 
+    385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 
+    399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 
+    413, 414, 415, 416, 417, 70, 418, 419, 420, 421, 422, 423, 424, 425, 426, 
+    427, 428, 429, 430, 431, 432, 433, 434, 435, 70, 70, 70, 70, 70, 70, 436, 
+    437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 
+    451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 70, 463, 464, 
+    70, 465, 70, 466, 70, 70, 70, 70, 467, 70, 70, 468, 70, 469, 70, 70, 470, 
+    471, 70, 472, 70, 70, 70, 473, 70, 474, 475, 70, 70, 476, 70, 70, 70, 70, 
+    70, 70, 70, 477, 70, 70, 478, 70, 70, 479, 70, 70, 70, 70, 480, 481, 482, 
+    483, 484, 70, 70, 70, 70, 70, 485, 70, 321, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 486, 486, 486, 486, 486, 486, 486, 486, 486, 487, 487, 487, 487, 
+    487, 487, 487, 486, 486, 6, 6, 6, 6, 487, 487, 487, 487, 487, 487, 487, 
+    487, 487, 487, 487, 487, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 486, 
+    486, 486, 486, 486, 6, 6, 6, 6, 6, 6, 6, 487, 6, 487, 6, 6, 6, 6, 6, 6, 
+    6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 488, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 489, 490, 491, 492, 487, 
+    6, 493, 494, 0, 0, 495, 496, 497, 498, 5, 0, 0, 0, 0, 0, 6, 6, 499, 75, 
+    500, 501, 502, 0, 503, 0, 504, 505, 506, 507, 508, 509, 510, 511, 512, 
+    513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 0, 524, 525, 526, 
+    527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 
+    541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 
+    555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 
+    569, 570, 571, 571, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 
+    581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 
+    595, 596, 597, 598, 599, 600, 601, 70, 602, 603, 5, 604, 605, 606, 607, 
+    608, 70, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 
+    622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 
+    636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 
+    650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 
+    664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 
+    678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 
+    692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 
+    706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 
+    720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 
+    734, 735, 736, 737, 738, 739, 740, 741, 5, 75, 75, 75, 75, 75, 6, 6, 742, 
+    743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 
+    757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 
+    771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 
+    785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 
+    799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 
+    813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 
+    827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 
+    841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 
+    855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 
+    869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 
+    883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 
+    897, 898, 899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 900, 901, 902, 903, 904, 905, 
+    906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 
+    920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 
+    934, 935, 936, 937, 0, 0, 487, 5, 5, 5, 5, 5, 5, 0, 938, 939, 940, 941, 
+    942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 
+    956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 
+    970, 971, 972, 973, 974, 975, 976, 0, 5, 5, 0, 0, 0, 0, 0, 0, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 5, 75, 5, 75, 75, 5, 75, 75, 5, 75, 0, 0, 0, 0, 
+    0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 0, 0, 321, 321, 321, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    71, 71, 71, 71, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 5, 0, 0, 5, 5, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 487, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 7, 8, 9, 10, 11, 12, 
+    13, 14, 15, 16, 5, 5, 5, 5, 321, 321, 75, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 321, 75, 75, 75, 75, 75, 
+    75, 75, 71, 5, 75, 75, 75, 75, 75, 75, 487, 487, 75, 75, 5, 75, 75, 75, 
+    75, 321, 321, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 321, 321, 321, 5, 5, 
+    321, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 71, 321, 75, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 0, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 487, 487, 5, 5, 5, 5, 487, 0, 0, 0, 0, 0, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 75, 75, 487, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 487, 75, 75, 75, 487, 75, 75, 75, 75, 75, 0, 0, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 75, 75, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 50, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 17, 17, 17, 
-    17, 17, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 5, 5, 6, 
-    7, 8, 9, 10, 11, 12, 13, 14, 15, 5, 50, 50, 50, 50, 50, 50, 50, 0, 50, 
-    50, 50, 50, 50, 50, 50, 0, 17, 17, 17, 0, 50, 50, 50, 50, 50, 50, 50, 50, 
-    0, 0, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 
-    0, 0, 0, 50, 50, 50, 50, 0, 0, 17, 50, 17, 17, 17, 17, 17, 17, 17, 0, 0, 
-    17, 17, 0, 0, 17, 17, 17, 50, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 50, 
-    50, 0, 50, 50, 50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 50, 
-    50, 5, 5, 24, 24, 24, 24, 24, 24, 5, 5, 0, 0, 0, 0, 0, 17, 17, 17, 0, 50, 
-    50, 50, 50, 50, 50, 0, 0, 0, 0, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 
-    50, 50, 50, 50, 50, 0, 50, 50, 0, 50, 50, 0, 50, 50, 0, 0, 17, 0, 17, 17, 
-    17, 17, 17, 0, 0, 0, 0, 17, 17, 0, 0, 17, 17, 17, 0, 0, 0, 17, 0, 0, 0, 
-    0, 0, 0, 0, 50, 50, 50, 50, 0, 50, 0, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 10, 
-    11, 12, 13, 14, 15, 17, 17, 50, 50, 50, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 17, 17, 17, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 0, 50, 50, 50, 
-    50, 50, 0, 0, 17, 50, 17, 17, 17, 17, 17, 17, 17, 17, 0, 17, 17, 17, 0, 
-    17, 17, 17, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 
-    50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 5, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 0, 50, 50, 50, 50, 50, 50, 
-    50, 50, 0, 0, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 
-    50, 0, 50, 50, 0, 50, 50, 50, 50, 50, 0, 0, 17, 50, 17, 17, 17, 17, 17, 
-    17, 17, 0, 0, 17, 17, 0, 0, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 
-    0, 0, 0, 0, 50, 50, 0, 50, 50, 50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 
-    13, 14, 15, 5, 50, 24, 24, 24, 24, 24, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    17, 50, 0, 50, 50, 50, 50, 50, 50, 0, 0, 0, 50, 50, 50, 0, 50, 50, 50, 
-    50, 0, 0, 0, 50, 50, 0, 50, 0, 50, 50, 0, 0, 0, 50, 50, 0, 0, 0, 50, 50, 
-    50, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 
-    17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 0, 17, 17, 17, 17, 0, 0, 50, 0, 
-    0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 
-    10, 11, 12, 13, 14, 15, 24, 24, 24, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 
-    0, 0, 17, 17, 17, 0, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 
-    50, 50, 50, 0, 0, 0, 50, 17, 17, 17, 17, 17, 17, 17, 0, 17, 17, 17, 0, 
-    17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 17, 17, 0, 50, 50, 0, 0, 0, 0, 0, 0, 
-    50, 50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 0, 0, 
-    0, 0, 0, 24, 24, 24, 24, 24, 24, 24, 5, 0, 0, 17, 17, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 0, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 0, 0, 17, 50, 17, 17, 17, 
-    17, 17, 17, 17, 0, 17, 17, 17, 0, 17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 
-    17, 17, 0, 0, 0, 0, 0, 0, 0, 50, 0, 50, 50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 
-    11, 12, 13, 14, 15, 0, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 17, 17, 0, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 0, 50, 17, 17, 17, 17, 17, 17, 17, 0, 17, 17, 17, 0, 17, 
-    17, 17, 17, 50, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 50, 
-    50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 24, 24, 24, 24, 24, 
-    24, 0, 0, 0, 5, 50, 50, 50, 50, 50, 50, 0, 0, 17, 17, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 0, 0, 0, 17, 0, 0, 0, 0, 17, 17, 17, 17, 17, 17, 
-    0, 17, 0, 17, 17, 17, 17, 17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 50, 117, 17, 17, 17, 
-    17, 17, 17, 17, 0, 0, 0, 0, 5, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 
-    17, 17, 17, 17, 17, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 5, 5, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 75, 75, 43, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 75, 43, 75, 321, 43, 43, 43, 75, 75, 
+    75, 75, 75, 75, 75, 75, 43, 43, 43, 43, 75, 43, 43, 321, 75, 75, 75, 75, 
+    75, 75, 75, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 5, 
+    5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 5, 487, 321, 321, 321, 321, 321, 
+    321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 75, 43, 43, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 0, 0, 321, 321, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 0, 0, 
+    0, 321, 321, 321, 321, 0, 0, 75, 321, 43, 43, 43, 75, 75, 75, 75, 0, 0, 
+    43, 43, 0, 0, 43, 43, 75, 321, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 0, 
+    321, 321, 0, 321, 321, 321, 75, 75, 0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 
+    15, 16, 321, 321, 5, 5, 77, 77, 77, 77, 77, 77, 5, 5, 0, 0, 0, 0, 0, 75, 
+    75, 43, 0, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 321, 321, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 
+    0, 321, 321, 0, 321, 321, 0, 321, 321, 0, 0, 75, 0, 43, 43, 43, 75, 75, 
+    0, 0, 0, 0, 75, 75, 0, 0, 75, 75, 75, 0, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 
+    321, 321, 321, 321, 0, 321, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 12, 13, 
+    14, 15, 16, 75, 75, 321, 321, 321, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    75, 75, 43, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 
+    321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 
+    321, 321, 0, 321, 321, 0, 321, 321, 321, 321, 321, 0, 0, 75, 321, 43, 43, 
+    43, 75, 75, 75, 75, 75, 0, 75, 75, 43, 0, 43, 43, 75, 0, 0, 321, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 75, 75, 0, 0, 7, 8, 9, 10, 
+    11, 12, 13, 14, 15, 16, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 75, 43, 43, 0, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 321, 321, 
+    0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 
+    321, 321, 0, 321, 321, 0, 321, 321, 321, 321, 321, 0, 0, 75, 321, 43, 75, 
+    43, 75, 75, 75, 75, 0, 0, 43, 43, 0, 0, 43, 43, 75, 0, 0, 0, 0, 0, 0, 0, 
+    0, 75, 43, 0, 0, 0, 0, 321, 321, 0, 321, 321, 321, 75, 75, 0, 0, 7, 8, 9, 
+    10, 11, 12, 13, 14, 15, 16, 5, 321, 77, 77, 77, 77, 77, 77, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 75, 321, 0, 321, 321, 321, 321, 321, 321, 0, 0, 0, 321, 
+    321, 321, 0, 321, 321, 321, 321, 0, 0, 0, 321, 321, 0, 321, 0, 321, 321, 
+    0, 0, 0, 321, 321, 0, 0, 0, 321, 321, 321, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 43, 43, 75, 43, 43, 
+    0, 0, 0, 43, 43, 43, 0, 43, 43, 43, 75, 0, 0, 321, 0, 0, 0, 0, 0, 0, 43, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 
+    15, 16, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 43, 43, 43, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 0, 321, 321, 321, 321, 321, 0, 0, 0, 321, 75, 75, 75, 43, 
+    43, 43, 43, 0, 75, 75, 75, 0, 75, 75, 75, 75, 0, 0, 0, 0, 0, 0, 0, 75, 
+    75, 0, 321, 321, 0, 0, 0, 0, 0, 0, 321, 321, 75, 75, 0, 0, 7, 8, 9, 10, 
+    11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 0, 0, 77, 77, 77, 77, 77, 77, 
+    77, 5, 0, 0, 43, 43, 0, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 
+    321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 0, 0, 75, 
+    321, 43, 75, 43, 43, 43, 43, 43, 0, 75, 43, 43, 0, 43, 43, 75, 75, 0, 0, 
+    0, 0, 0, 0, 0, 43, 43, 0, 0, 0, 0, 0, 0, 0, 321, 0, 321, 321, 75, 75, 0, 
+    0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 321, 321, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 43, 43, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 0, 321, 43, 43, 43, 75, 75, 75, 75, 0, 43, 43, 43, 
+    0, 43, 43, 43, 75, 321, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 0, 0, 0, 0, 
+    0, 321, 321, 75, 75, 0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 77, 77, 
+    77, 77, 77, 77, 0, 0, 0, 5, 321, 321, 321, 321, 321, 321, 0, 0, 43, 43, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 0, 0, 0, 75, 0, 0, 0, 0, 43, 43, 43, 75, 
+    75, 75, 0, 75, 0, 43, 43, 43, 43, 43, 43, 43, 43, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 43, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 321, 977, 75, 75, 75, 75, 75, 75, 75, 
+    0, 0, 0, 0, 5, 321, 321, 321, 321, 321, 321, 487, 75, 75, 75, 75, 75, 75, 
+    75, 75, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 5, 5, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 0, 50, 0, 0, 50, 50, 0, 50, 0, 0, 
-    50, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 
-    50, 50, 50, 0, 50, 0, 50, 0, 0, 50, 50, 0, 50, 50, 50, 50, 17, 50, 117, 
-    17, 17, 17, 17, 17, 17, 0, 17, 17, 50, 0, 0, 50, 50, 50, 50, 50, 0, 50, 
-    0, 17, 17, 17, 17, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 
-    0, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 5, 5, 5, 5, 5, 5, 6, 7, 8, 
-    9, 10, 11, 12, 13, 14, 15, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 5, 17, 
-    5, 17, 5, 17, 5, 5, 5, 5, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 
-    0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 5, 17, 17, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 0, 5, 5, 5, 5, 5, 5, 5, 5, 17, 5, 5, 5, 5, 5, 5, 0, 
+    0, 0, 0, 0, 0, 0, 0, 321, 321, 0, 321, 0, 0, 321, 321, 0, 321, 0, 0, 321, 
+    0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 
+    321, 0, 321, 321, 321, 0, 321, 0, 321, 0, 0, 321, 321, 0, 321, 321, 321, 
+    321, 75, 321, 977, 75, 75, 75, 75, 75, 75, 0, 75, 75, 321, 0, 0, 321, 
+    321, 321, 321, 321, 0, 487, 0, 75, 75, 75, 75, 75, 75, 0, 0, 7, 8, 9, 10, 
+    11, 12, 13, 14, 15, 16, 0, 0, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 75, 
+    75, 5, 5, 5, 5, 5, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 5, 75, 5, 75, 5, 75, 5, 5, 5, 5, 43, 43, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 0, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    43, 75, 75, 75, 75, 75, 5, 75, 75, 321, 321, 321, 321, 321, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 0, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 0, 5, 5, 5, 5, 5, 5, 5, 5, 75, 5, 5, 
+    5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 43, 43, 75, 75, 75, 75, 43, 75, 75, 75, 75, 75, 
+    75, 43, 75, 75, 43, 43, 75, 75, 321, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
+    5, 5, 5, 5, 5, 5, 321, 321, 321, 321, 321, 321, 43, 43, 75, 75, 321, 321, 
+    321, 321, 75, 75, 75, 321, 43, 43, 43, 321, 321, 43, 43, 43, 43, 43, 43, 
+    43, 321, 321, 321, 75, 75, 75, 75, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 43, 43, 75, 75, 43, 43, 43, 43, 43, 43, 
+    75, 321, 43, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 43, 43, 43, 75, 5, 5, 
+    978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 
+    992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 
+    1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 5, 487, 0, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 0, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 0, 321, 321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 0, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 0, 0, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 75, 75, 75, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 0, 0, 0, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 5, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 2, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 
+    5, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 5, 5, 5, 1025, 1025, 1025, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 75, 75, 75, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 75, 5, 5, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 
+    321, 321, 0, 75, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 71, 71, 43, 75, 75, 75, 75, 75, 75, 
+    75, 43, 43, 43, 43, 43, 43, 43, 43, 75, 43, 43, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 5, 5, 5, 487, 5, 5, 5, 5, 321, 75, 0, 0, 7, 8, 9, 10, 
+    11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 77, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 75, 75, 75, 2, 
+    0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 487, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 75, 321, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 75, 75, 75, 43, 43, 43, 43, 75, 75, 43, 43, 43, 0, 0, 0, 0, 
+    43, 43, 75, 43, 43, 43, 43, 43, 43, 75, 75, 75, 0, 0, 0, 0, 5, 0, 0, 0, 
+    5, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 321, 321, 321, 
+    321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 43, 43, 43, 
+    43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 321, 321, 321, 
+    321, 321, 321, 321, 43, 43, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 12, 13, 
+    14, 15, 16, 1016, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 75, 43, 43, 43, 0, 0, 5, 5, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 43, 75, 43, 75, 75, 75, 75, 
+    75, 75, 75, 0, 75, 43, 75, 43, 43, 75, 75, 75, 75, 75, 75, 75, 75, 43, 
+    43, 43, 43, 43, 43, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 0, 0, 75, 7, 
+    8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 12, 
+    13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 487, 5, 5, 5, 5, 
+    5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 75, 75, 75, 43, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 75, 43, 75, 75, 75, 75, 75, 43, 75, 43, 43, 43, 43, 43, 75, 43, 
+    43, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 7, 8, 9, 10, 11, 12, 
+    13, 14, 15, 16, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 75, 
+    75, 43, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 43, 75, 75, 75, 75, 43, 43, 75, 75, 43, 0, 0, 0, 321, 321, 
+    7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 75, 43, 75, 75, 43, 43, 43, 75, 43, 
+    75, 75, 75, 43, 43, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 43, 43, 43, 43, 43, 43, 43, 43, 75, 75, 75, 75, 
+    75, 75, 75, 75, 43, 43, 75, 75, 0, 0, 0, 5, 5, 5, 5, 5, 7, 8, 9, 10, 11, 
+    12, 13, 14, 15, 16, 0, 0, 0, 321, 321, 321, 7, 8, 9, 10, 11, 12, 13, 14, 
+    15, 16, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 487, 487, 487, 487, 487, 487, 5, 5, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 75, 75, 75, 5, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 43, 
+    75, 75, 75, 75, 75, 75, 75, 321, 321, 321, 321, 75, 321, 321, 321, 321, 
+    43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 
+    486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 
+    486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 
+    486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 486, 1026, 70, 70, 70, 1027, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 
+    486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 
+    486, 486, 486, 486, 486, 486, 486, 486, 486, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 75, 75, 75, 1028, 1029, 
+    1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 
+    1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 
+    1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 
+    1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 
+    1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 
+    1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 
+    1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 
+    1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 
+    1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 
+    1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 
+    1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 
+    1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 
+    1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 70, 70, 1184, 
+    70, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 
+    1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 
+    1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 
+    1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 
+    1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 
+    1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 
+    1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 
+    1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 
+    1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 
+    1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 0, 0, 
+    1303, 1304, 1305, 1306, 1307, 1308, 0, 0, 1309, 1310, 1311, 1312, 1313, 
+    1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 
+    1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 
+    1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 0, 0, 1347, 1348, 
+    1349, 1350, 1351, 1352, 0, 0, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 
+    1360, 0, 1361, 0, 1362, 0, 1363, 0, 1364, 1365, 1366, 1367, 1368, 1369, 
+    1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 
+    1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 
+    1394, 0, 0, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 
+    1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415, 1416, 
+    1417, 1418, 1419, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, 1428, 
+    1429, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 
+    1441, 1442, 1443, 1444, 1445, 1446, 1447, 0, 1448, 1449, 1450, 1451, 
+    1452, 1453, 1454, 6, 1455, 6, 6, 6, 1456, 1457, 1458, 0, 1459, 1460, 
+    1461, 1462, 1463, 1464, 1465, 6, 6, 6, 1466, 1467, 1468, 1469, 0, 0, 
+    1470, 1471, 1472, 1473, 1474, 1475, 0, 6, 6, 6, 1476, 1477, 1478, 1479, 
+    1480, 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1488, 6, 6, 6, 0, 0, 
+    1489, 1490, 1491, 0, 1492, 1493, 1494, 1495, 1496, 1497, 1498, 6, 6, 0, 
+    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 71, 71, 71, 71, 71, 5, 5, 5, 5, 5, 5, 5, 
+    5, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 5, 5, 6, 3, 3, 71, 71, 71, 71, 
+    71, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 43, 43, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 43, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 2, 71, 71, 71, 71, 71, 0, 0, 0, 0, 0, 71, 71, 71, 71, 71, 71, 1499, 
+    487, 0, 0, 1500, 1501, 1502, 1503, 1504, 1505, 5, 5, 5, 5, 5, 487, 1499, 
+    76, 72, 73, 1500, 1501, 1502, 1503, 1504, 1505, 5, 5, 5, 5, 5, 0, 486, 
+    486, 486, 486, 486, 487, 487, 487, 487, 487, 487, 487, 487, 0, 0, 0, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 6, 6, 6, 6, 75, 6, 6, 6, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 5, 5, 571, 5, 5, 5, 5, 571, 5, 5, 70, 571, 571, 571, 
+    70, 70, 571, 571, 571, 70, 5, 571, 5, 5, 1506, 571, 571, 571, 571, 571, 
+    5, 5, 5, 5, 5, 5, 571, 5, 1507, 5, 571, 5, 1508, 1509, 571, 571, 1506, 
+    70, 571, 571, 1510, 571, 70, 321, 321, 321, 321, 70, 5, 5, 70, 70, 571, 
+    571, 5, 5, 5, 5, 5, 571, 70, 70, 70, 70, 5, 5, 5, 5, 1511, 5, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 1512, 1513, 1514, 
+    1515, 1516, 1517, 1518, 1519, 1520, 1521, 1522, 1523, 1524, 1525, 1526, 
+    1527, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1537, 1538, 
+    1539, 1540, 1541, 1542, 1543, 1025, 1025, 1025, 1544, 1545, 1025, 1025, 
+    1025, 1025, 77, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 72, 73, 
+    1500, 1501, 1502, 1503, 1504, 1505, 77, 77, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 76, 72, 73, 1500, 1501, 1502, 1503, 1504, 1505, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 76, 72, 73, 1500, 1501, 1502, 1503, 1504, 
+    1505, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1546, 1547, 1548, 
+    1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, 1559, 1560, 
+    1561, 1562, 1563, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1571, 1572, 
+    1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, 1583, 1584, 
+    1585, 1586, 1587, 1588, 1589, 1590, 1591, 1592, 1593, 1594, 1595, 1596, 
+    1597, 1499, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 76, 72, 73, 1500, 
+    1501, 1502, 1503, 1504, 1505, 77, 1499, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 76, 72, 73, 1500, 1501, 1502, 1503, 
+    1504, 1505, 77, 76, 72, 73, 1500, 1501, 1502, 1503, 1504, 1505, 77, 76, 
+    72, 73, 1500, 1501, 1502, 1503, 1504, 1505, 77, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 
+    5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1598, 1599, 1600, 1601, 1602, 1603, 
+    1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 
+    1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 
+    1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639, 
+    1640, 1641, 1642, 1643, 1644, 0, 1645, 1646, 1647, 1648, 1649, 1650, 
+    1651, 1652, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 
+    1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 
+    1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 
+    1687, 1688, 1689, 1690, 1691, 0, 1692, 1693, 1694, 1695, 1696, 1697, 
+    1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 70, 
+    1709, 1710, 70, 1711, 1712, 70, 70, 70, 70, 70, 70, 486, 1713, 1714, 
+    1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 
+    1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, 
+    1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, 1747, 1748, 1749, 1750, 
+    1751, 1752, 1753, 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 
+    1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, 
+    1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 
+    1787, 1788, 1789, 1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, 
+    1799, 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 
+    1811, 1812, 1813, 1814, 70, 5, 5, 5, 5, 5, 5, 1815, 1816, 1817, 1818, 75, 
+    75, 75, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 77, 5, 5, 1819, 1820, 1821, 
+    1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 
+    1834, 1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844, 1845, 
+    1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, 1855, 1856, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 487, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 75, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 
+    321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 
+    321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 
+    321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 321, 
+    321, 321, 321, 321, 321, 321, 0, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 1857, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 0, 0, 0, 0, 2, 5, 5, 5, 5, 487, 321, 1025, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 75, 75, 75, 75, 75, 75, 5, 487, 487, 
+    487, 487, 487, 5, 5, 1025, 1025, 1025, 487, 321, 5, 5, 5, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 
+    0, 75, 75, 6, 6, 487, 487, 321, 5, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 487, 
+    487, 487, 321, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 5, 5, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 
+    0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 77, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 0, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 1858, 321, 
+    321, 1858, 321, 321, 321, 1858, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 
+    321, 321, 321, 321, 321, 321, 1858, 321, 1858, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 1858, 1858, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 
+    321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 1858, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 1858, 321, 1858, 1858, 1858, 321, 321, 321, 321, 321, 321, 1858, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 1858, 1858, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    1858, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 1858, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 1858, 1858, 1858, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 6, 7, 8, 9, 10, 11, 12, 13, 
-    14, 15, 5, 5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 50, 50, 
-    50, 50, 17, 17, 17, 50, 17, 17, 17, 50, 50, 17, 17, 17, 17, 17, 17, 17, 
-    50, 50, 50, 17, 17, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 17, 6, 7, 8, 
-    9, 10, 11, 12, 13, 14, 15, 17, 17, 17, 17, 5, 5, 118, 118, 118, 118, 118, 
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 
-    118, 118, 118, 118, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 5, 50, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 0, 0, 50, 50, 
-    50, 50, 50, 50, 50, 0, 50, 0, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    0, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 
-    0, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 17, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 119, 120, 121, 122, 123, 124, 125, 126, 127, 24, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 2, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 0, 0, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 5, 5, 5, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 
-    50, 50, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 5, 5, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 17, 17, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 1, 1, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 5, 5, 5, 50, 5, 5, 5, 5, 50, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 
-    13, 14, 15, 0, 0, 0, 0, 0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 
-    0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 17, 2, 0, 6, 7, 
-    8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 17, 50, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 0, 0, 0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    0, 0, 0, 0, 5, 0, 0, 0, 5, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 10, 11, 12, 
-    13, 14, 15, 119, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    17, 17, 17, 17, 17, 0, 0, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 0, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 0, 0, 17, 6, 7, 8, 9, 10, 11, 
-    12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 
-    0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 50, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    487, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 487, 487, 487, 487, 487, 487, 5, 5, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 487, 5, 5, 5, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 7, 8, 9, 10, 11, 
+    12, 13, 14, 15, 16, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 1859, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 
+    1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 
+    1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 
+    1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 
+    1904, 321, 75, 6, 6, 6, 5, 0, 0, 0, 0, 0, 0, 0, 0, 75, 75, 5, 487, 1905, 
+    1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916, 1917, 
+    1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928, 0, 0, 
+    0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 75, 75, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 6, 6, 6, 
+    6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 487, 487, 487, 487, 
+    487, 487, 487, 487, 487, 6, 6, 1929, 1930, 1931, 1932, 1933, 1934, 1935, 
+    1936, 1937, 1938, 1939, 1940, 1941, 1942, 70, 70, 1943, 1944, 1945, 1946, 
+    1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 
+    1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 
+    1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 
+    1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 
+    1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 486, 70, 70, 
+    70, 70, 70, 70, 70, 70, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 
+    2013, 2014, 2015, 2016, 2017, 2018, 2019, 487, 6, 6, 2020, 2021, 2022, 
+    70, 0, 2023, 2024, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2025, 2026, 
+    2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 17, 17, 17, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 
-    14, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 17, 17, 17, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 0, 0, 0, 50, 50, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 
-    0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 0, 0, 0, 5, 5, 5, 5, 
-    5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 50, 50, 50, 6, 7, 8, 9, 
-    10, 11, 12, 13, 14, 15, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    70, 321, 321, 321, 321, 321, 321, 321, 75, 321, 321, 321, 75, 321, 321, 
+    321, 321, 75, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 43, 43, 75, 75, 
+    43, 5, 5, 5, 5, 0, 0, 0, 0, 77, 77, 77, 77, 77, 77, 5, 5, 5, 5, 0, 0, 0, 
+    0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 5, 5, 5, 0, 0, 
+    0, 0, 0, 0, 0, 0, 43, 43, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 43, 43, 
+    43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 75, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 5, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 
+    0, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 321, 321, 321, 321, 321, 321, 5, 5, 5, 321, 0, 0, 0, 0, 7, 8, 9, 10, 
+    11, 12, 13, 14, 15, 16, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 75, 75, 75, 75, 75, 75, 75, 75, 5, 5, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    43, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 75, 75, 75, 43, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 75, 43, 43, 75, 75, 75, 75, 43, 43, 75, 43, 43, 
+    43, 43, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 487, 7, 8, 9, 10, 11, 
+    12, 13, 14, 15, 16, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 75, 75, 75, 75, 
+    75, 75, 43, 43, 75, 75, 43, 43, 75, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 75, 321, 321, 321, 321, 321, 321, 321, 321, 75, 43, 0, 0, 7, 8, 
+    9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 5, 5, 5, 5, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 487, 321, 321, 
+    321, 321, 321, 321, 5, 5, 5, 321, 43, 0, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 75, 321, 75, 75, 75, 321, 321, 75, 75, 321, 321, 321, 321, 321, 
+    75, 75, 321, 75, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 321, 321, 487, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 0, 0, 321, 
+    321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 5, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 50, 50, 50, 50, 17, 50, 50, 50, 50, 17, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 50, 129, 
-    19, 19, 19, 130, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 
-    17, 17, 17, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 19, 19, 19, 19, 131, 19, 19, 132, 
-    19, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 133, 133, 133, 133, 133, 133, 133, 133, 134, 
-    134, 134, 134, 134, 134, 134, 134, 133, 133, 133, 133, 133, 133, 0, 0, 
-    134, 134, 134, 134, 134, 134, 0, 0, 133, 133, 133, 133, 133, 133, 133, 
-    133, 134, 134, 134, 134, 134, 134, 134, 134, 133, 133, 133, 133, 133, 
-    133, 133, 133, 134, 134, 134, 134, 134, 134, 134, 134, 133, 133, 133, 
-    133, 133, 133, 0, 0, 134, 134, 134, 134, 134, 134, 0, 0, 19, 133, 19, 
-    133, 19, 133, 19, 133, 0, 134, 0, 134, 0, 134, 0, 134, 133, 133, 133, 
-    133, 133, 133, 133, 133, 134, 134, 134, 134, 134, 134, 134, 134, 135, 
-    135, 136, 136, 136, 136, 137, 137, 138, 138, 139, 139, 140, 140, 0, 0, 
-    133, 133, 133, 133, 133, 133, 133, 133, 141, 141, 141, 141, 141, 141, 
-    141, 141, 133, 133, 133, 133, 133, 133, 133, 133, 141, 141, 141, 141, 
-    141, 141, 141, 141, 133, 133, 133, 133, 133, 133, 133, 133, 141, 141, 
-    141, 141, 141, 141, 141, 141, 133, 133, 19, 142, 19, 0, 19, 19, 134, 134, 
-    143, 143, 144, 5, 145, 5, 5, 5, 19, 142, 19, 0, 19, 19, 146, 146, 146, 
-    146, 144, 5, 5, 5, 133, 133, 19, 19, 0, 0, 19, 19, 134, 134, 147, 147, 0, 
-    5, 5, 5, 133, 133, 19, 19, 19, 108, 19, 19, 134, 134, 148, 148, 111, 5, 
-    5, 5, 0, 0, 19, 142, 19, 0, 19, 19, 149, 149, 150, 150, 144, 5, 5, 0, 2, 
-    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 3, 3, 1, 1, 1, 1, 1, 2, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 2, 1, 
-    1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 151, 50, 0, 0, 152, 153, 
-    154, 155, 156, 157, 5, 5, 5, 5, 5, 50, 151, 23, 20, 21, 152, 153, 154, 
-    155, 156, 157, 5, 5, 5, 5, 5, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    5, 5, 5, 5, 17, 5, 5, 5, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 102, 5, 5, 5, 5, 102, 
-    5, 5, 19, 102, 102, 102, 19, 19, 102, 102, 102, 19, 5, 102, 5, 5, 158, 
-    102, 102, 102, 102, 102, 5, 5, 5, 5, 5, 5, 102, 5, 159, 5, 102, 5, 160, 
-    161, 102, 102, 158, 19, 102, 102, 162, 102, 19, 50, 50, 50, 50, 19, 5, 5, 
-    19, 19, 102, 102, 5, 5, 5, 5, 5, 102, 19, 19, 19, 19, 5, 5, 5, 5, 163, 5, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 164, 164, 
-    164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, 
-    165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, 
-    165, 165, 128, 128, 128, 26, 27, 128, 128, 128, 128, 24, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 43, 43, 75, 43, 43, 75, 43, 43, 5, 43, 75, 0, 0, 7, 8, 9, 
+    10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 
+    0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 1858, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2035, 2036, 2037, 2038, 
+    2039, 2040, 2041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2042, 2043, 2044, 
+    2045, 2046, 0, 0, 0, 0, 0, 321, 75, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 5, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 321, 321, 321, 321, 321, 0, 321, 0, 321, 321, 0, 321, 321, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 6, 6, 6, 6, 6, 6, 6, 6, 
+    6, 6, 6, 6, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 2047, 
+    2047, 2047, 2047, 2047, 2047, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 5, 5, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 2047, 2047, 5, 5, 0, 0, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 
+    0, 0, 0, 0, 0, 0, 75, 75, 75, 75, 75, 75, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    5, 5, 5, 43, 43, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 43, 43, 43, 5, 5, 6, 0, 5, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 0, 0, 0, 0, 2047, 321, 2047, 321, 
+    2047, 0, 2047, 321, 2047, 321, 2047, 321, 2047, 321, 2047, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 71, 0, 5, 5, 
+    5, 5, 5, 5, 6, 5, 5, 5, 5, 5, 5, 6, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 
+    16, 6, 5, 5, 5, 5, 5, 5, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 
+    2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, 
+    2068, 2069, 2070, 2071, 2072, 2073, 5, 5, 5, 6, 43, 6, 2074, 2075, 2076, 
+    2077, 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2086, 2087, 2088, 
+    2089, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097, 2098, 2099, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 487, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 2100, 2100, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 321, 321, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 0, 0, 321, 321, 321, 
+    321, 321, 321, 0, 0, 321, 321, 321, 0, 0, 0, 5, 5, 5, 6, 5, 5, 5, 0, 5, 
+    5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 71, 71, 5, 5, 0, 0, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 0, 321, 321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 5, 5, 5, 0, 
+    0, 0, 0, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 77, 77, 77, 77, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 77, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 75, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 77, 77, 77, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 1025, 321, 321, 321, 321, 321, 321, 321, 321, 1025, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 0, 5, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 5, 1025, 1025, 1025, 1025, 1025, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2101, 2102, 2103, 2104, 
+    2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113, 2114, 2115, 2116, 
+    2117, 2118, 2119, 2120, 2121, 2122, 2123, 2124, 2125, 2126, 2127, 2128, 
+    2129, 2130, 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138, 2139, 2140, 
+    2141, 2142, 2143, 2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, 2152, 
+    2153, 2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2163, 2164, 
+    2165, 2166, 2167, 2168, 2169, 2170, 2171, 2172, 2173, 2174, 2175, 2176, 
+    2177, 2178, 2179, 2180, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 7, 8, 
+    9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    321, 321, 321, 321, 321, 321, 0, 0, 321, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 321, 321, 0, 0, 0, 
+    321, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 5, 77, 77, 77, 
+    77, 77, 77, 77, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 77, 77, 77, 77, 77, 77, 0, 0, 0, 5, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 75, 75, 75, 0, 75, 75, 0, 0, 0, 0, 0, 75, 
+    75, 75, 75, 321, 321, 321, 321, 0, 321, 321, 321, 0, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 75, 75, 75, 0, 
+    0, 0, 0, 75, 76, 72, 73, 1500, 77, 77, 77, 77, 0, 0, 0, 0, 0, 0, 0, 0, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 77, 77, 5, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 5, 5, 5, 5, 5, 
+    5, 5, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 77, 77, 77, 77, 77, 
+    77, 77, 77, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 77, 77, 77, 77, 77, 77, 
+    77, 77, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 72, 73, 1500, 1501, 1502, 
+    1503, 1504, 1505, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 0, 43, 75, 43, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 76, 72, 73, 1500, 1501, 
+    1502, 1503, 1504, 1505, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 7, 8, 
+    9, 10, 11, 12, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 75, 75, 43, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 43, 43, 43, 75, 75, 75, 75, 43, 43, 75, 75, 
+    5, 5, 71, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1506, 1506, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1506, 1506, 1025, 1025, 
+    1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 321, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 
     0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 20, 21, 152, 153, 154, 155, 156, 157, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 20, 21, 152, 153, 154, 155, 
-    156, 157, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 20, 21, 152, 
-    153, 154, 155, 156, 157, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 
-    166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, 167, 167, 
-    167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 
-    167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 151, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 23, 20, 21, 152, 153, 154, 155, 156, 157, 24, 
-    151, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 23, 
-    20, 21, 152, 153, 154, 155, 156, 157, 24, 23, 20, 21, 152, 153, 154, 155, 
-    156, 157, 24, 23, 20, 21, 152, 153, 154, 155, 156, 157, 24, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 0, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 115, 115, 115, 115, 
-    115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 
-    115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 
-    115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 0, 
-    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 
-    116, 116, 116, 116, 116, 0, 26, 27, 168, 169, 170, 171, 172, 26, 27, 26, 
-    27, 26, 27, 173, 174, 175, 176, 19, 26, 27, 19, 26, 27, 19, 19, 19, 19, 
-    19, 19, 50, 177, 177, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 5, 5, 5, 
-    5, 5, 5, 26, 27, 26, 27, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 24, 
-    5, 5, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 
-    178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 
-    178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 
-    50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 
-    0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 
-    50, 50, 50, 50, 50, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 89, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 
-    0, 0, 2, 5, 5, 5, 5, 50, 50, 128, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 17, 17, 17, 17, 17, 17, 5, 50, 50, 50, 50, 50, 5, 5, 128, 128, 
-    128, 50, 50, 5, 5, 5, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 0, 0, 17, 17, 5, 5, 50, 50, 50, 5, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 50, 50, 50, 50, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 5, 5, 24, 24, 24, 24, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 
-    0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 24, 24, 24, 24, 24, 24, 24, 24, 
-    24, 24, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 0, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 179, 50, 50, 179, 
-    50, 50, 50, 179, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 
-    179, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 179, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 179, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 179, 
-    179, 179, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    179, 179, 179, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 179, 179, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 
-    50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 50, 17, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 
-    0, 0, 17, 17, 5, 50, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 
-    27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 0, 0, 0, 0, 0, 0, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 17, 17, 5, 5, 5, 5, 5, 5, 0, 0, 
-    0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 19, 19, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 50, 19, 19, 19, 19, 19, 19, 19, 19, 26, 27, 26, 27, 180, 26, 27, 
-    26, 27, 26, 27, 26, 27, 26, 27, 50, 5, 5, 26, 27, 181, 19, 0, 26, 27, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 27, 26, 27, 26, 27, 26, 27, 
-    26, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 50, 50, 50, 50, 50, 50, 50, 17, 50, 50, 
-    50, 17, 50, 50, 50, 50, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 5, 5, 
-    5, 5, 0, 0, 0, 0, 24, 24, 24, 24, 24, 24, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 5, 
-    5, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 6, 7, 8, 9, 10, 11, 12, 
-    13, 14, 15, 0, 0, 0, 0, 0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 50, 50, 50, 50, 50, 50, 5, 5, 5, 50, 0, 0, 0, 
-    0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 5, 5, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 17, 17, 17, 17, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 50, 
-    6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 17, 50, 50, 50, 50, 50, 
-    50, 50, 50, 17, 17, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 5, 5, 
-    5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 5, 5, 5, 50, 17, 0, 0, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 17, 50, 17, 17, 17, 50, 50, 17, 17, 50, 50, 
-    50, 50, 50, 17, 17, 50, 17, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 
-    50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 0, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 5, 17, 17, 0, 0, 
-    6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 179, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 19, 19, 19, 
-    19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 19, 19, 0, 0, 0, 0, 
-    0, 50, 17, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 0, 50, 0, 50, 50, 
-    0, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 89, 89, 89, 89, 89, 89, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 89, 89, 5, 5, 0, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 17, 
-    17, 17, 17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 17, 17, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 
-    17, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    0, 5, 5, 5, 5, 0, 0, 0, 0, 89, 50, 89, 50, 89, 0, 89, 50, 89, 50, 89, 50, 
-    89, 50, 89, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 0, 0, 1, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 
-    7, 8, 9, 10, 11, 12, 13, 14, 15, 5, 5, 5, 5, 5, 5, 5, 16, 16, 16, 16, 16, 
-    16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
-    16, 16, 16, 5, 5, 5, 5, 17, 5, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 
-    18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 117, 117, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 0, 0, 0, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 
-    50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 0, 0, 0, 5, 
-    5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    1, 1, 1, 5, 5, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 5, 5, 5, 0, 0, 
-    0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 24, 24, 24, 24, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 24, 0, 0, 0, 0, 0, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 0, 0, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 24, 24, 24, 24, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 128, 50, 50, 50, 50, 50, 50, 50, 50, 128, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 5, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 
-    0, 50, 50, 50, 50, 50, 50, 50, 50, 5, 128, 128, 128, 128, 128, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 182, 182, 182, 182, 
-    182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 
-    182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 
-    182, 182, 182, 182, 182, 182, 182, 183, 183, 183, 183, 183, 183, 183, 
-    183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 
-    183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 
-    183, 183, 183, 183, 183, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 6, 7, 8, 9, 10, 11, 
-    12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 
-    50, 50, 0, 0, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 0, 0, 0, 
-    50, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 5, 24, 24, 24, 24, 24, 24, 24, 24, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 24, 24, 24, 24, 24, 24, 0, 0, 0, 5, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 50, 17, 17, 17, 0, 17, 17, 0, 0, 0, 0, 0, 17, 17, 
-    17, 17, 50, 50, 50, 50, 0, 50, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 0, 0, 0, 0, 17, 17, 17, 0, 0, 0, 0, 17, 23, 20, 21, 152, 24, 24, 24, 
-    24, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 
-    0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 24, 24, 5, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 5, 
-    5, 5, 5, 5, 5, 5, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    0, 0, 0, 0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    23, 20, 21, 152, 153, 154, 155, 156, 157, 24, 24, 24, 24, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 17, 17, 17, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 5, 5, 5, 5, 5, 5, 
-    5, 0, 0, 0, 0, 23, 20, 21, 152, 153, 154, 155, 156, 157, 24, 24, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 5, 5, 1, 5, 
-    5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 158, 158, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 158, 158, 128, 128, 
-    128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 17, 17, 17, 
-    5, 5, 5, 17, 17, 17, 17, 17, 17, 1, 1, 1, 1, 1, 1, 1, 1, 17, 17, 17, 17, 
-    17, 17, 17, 17, 5, 5, 17, 17, 17, 17, 17, 17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 17, 17, 
-    17, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 43, 43, 75, 75, 75, 5, 5, 5, 43, 
+    43, 43, 43, 43, 43, 71, 71, 71, 71, 71, 71, 71, 71, 75, 75, 75, 75, 75, 
+    75, 75, 75, 5, 5, 75, 75, 75, 75, 75, 75, 75, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 75, 75, 
+    75, 75, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 17, 17, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    5, 5, 5, 5, 5, 5, 75, 75, 75, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 24, 
-    24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 19, 19, 19, 19, 0, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 102, 0, 102, 102, 0, 0, 102, 0, 0, 102, 102, 0, 0, 
-    102, 102, 102, 102, 0, 102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 
-    19, 19, 0, 19, 0, 19, 19, 19, 19, 19, 19, 19, 0, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 0, 102, 102, 102, 102, 
-    0, 0, 102, 102, 102, 102, 102, 102, 102, 102, 0, 102, 102, 102, 102, 102, 
-    102, 102, 0, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 0, 102, 102, 102, 
-    102, 0, 102, 102, 102, 102, 102, 0, 102, 0, 0, 0, 102, 102, 102, 102, 
-    102, 102, 102, 0, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 0, 0, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 5, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 5, 19, 19, 19, 19, 19, 19, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 5, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 5, 19, 19, 19, 19, 19, 19, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 5, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 5, 19, 19, 19, 19, 
-    19, 19, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 5, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 5, 19, 19, 19, 19, 19, 19, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 
-    102, 102, 102, 102, 102, 102, 5, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 
-    19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 5, 19, 19, 
-    19, 19, 19, 19, 102, 19, 0, 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 6, 7, 
-    8, 9, 10, 11, 12, 13, 14, 15, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 6, 7, 
-    8, 9, 10, 11, 12, 13, 14, 15, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 77, 
+    77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 70, 70, 70, 70, 0, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 571, 0, 571, 571, 0, 0, 571, 0, 0, 571, 571, 0, 0, 
+    571, 571, 571, 571, 0, 571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 
+    70, 70, 0, 70, 0, 70, 70, 70, 70, 70, 70, 70, 0, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 0, 571, 571, 571, 571, 
+    0, 0, 571, 571, 571, 571, 571, 571, 571, 571, 0, 571, 571, 571, 571, 571, 
+    571, 571, 0, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 0, 571, 571, 571, 
+    571, 0, 571, 571, 571, 571, 571, 0, 571, 0, 0, 0, 571, 571, 571, 571, 
+    571, 571, 571, 0, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 0, 0, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 5, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 5, 70, 70, 70, 70, 70, 70, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 5, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 5, 70, 70, 70, 70, 70, 70, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 5, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 5, 70, 70, 70, 70, 
+    70, 70, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 5, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 5, 70, 70, 70, 70, 70, 70, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 
+    571, 571, 571, 571, 571, 571, 5, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 
+    70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 5, 70, 70, 
+    70, 70, 70, 70, 571, 70, 0, 0, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 7, 8, 
+    9, 10, 11, 12, 13, 14, 15, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 7, 8, 
+    9, 10, 11, 12, 13, 14, 15, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
@@ -1866,181 +4502,206 @@
     5, 5, 5, 5, 5, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 23, 20, 21, 152, 153, 
-    154, 155, 156, 157, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1499, 1499, 76, 72, 73, 1500, 
+    1501, 1502, 1503, 1504, 1505, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 5, 
+    5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 
+    5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 0, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 0, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 
+    5, 5, 5, 5, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 0, 
+    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 0, 5, 0, 5, 
+    0, 5, 0, 5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 0, 0, 5, 5, 5, 5, 0, 5, 0, 0, 5, 
+    5, 5, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 5, 5, 5, 5, 
+    5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 
-    5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
     5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    0, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 0, 5, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    5, 5, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 1858, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 1858, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1858, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 
+    321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 0, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 5, 5, 5, 0, 5, 0, 5, 0, 5, 0, 5, 
-    5, 5, 0, 5, 5, 5, 5, 5, 5, 0, 0, 5, 5, 5, 5, 0, 5, 0, 0, 5, 5, 5, 5, 0, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
-    5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 
-    50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    179, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 179, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 
-    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
+    0, 0, 0, 0, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 
+    71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 
+    71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 
+    71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 
+    71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 
+    71, 71, 71, 71, 71, 71, 71, 71, 71, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 
+    75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 0, 0, 0, 0, 
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 
-    17, 17, 17, 17, 17, 17, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
-    1, 1, 1, 1, 1, 1, 1, 0, 0, 
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 
 };
 
 /* Returns the numeric value as double for Unicode characters
diff --git a/Tools/unicode/makeunicodedata.py b/Tools/unicode/makeunicodedata.py
--- a/Tools/unicode/makeunicodedata.py
+++ b/Tools/unicode/makeunicodedata.py
@@ -22,6 +22,7 @@
 # 2006-03-10 mvl  update to Unicode 4.1; add UCD 3.2 delta
 # 2008-06-11 gb   add PRINTABLE_MASK for Atsuo Ishimoto's ascii() patch
 # 2011-10-21 ezio add support for name aliases and named sequences
+# 2012-01    benjamin add full case mappings
 #
 # written by Fredrik Lundh (fredrik at pythonware.com)
 #
@@ -47,6 +48,7 @@
 LINE_BREAK = "LineBreak%s.txt"
 NAME_ALIASES = "NameAliases%s.txt"
 NAMED_SEQUENCES = "NamedSequences%s.txt"
+SPECIAL_CASING = "SpecialCasing%s.txt"
 
 # Private Use Areas -- in planes 1, 15, 16
 PUA_1 = range(0xE000, 0xF900)
@@ -84,8 +86,10 @@
 XID_START_MASK = 0x100
 XID_CONTINUE_MASK = 0x200
 PRINTABLE_MASK = 0x400
-NODELTA_MASK = 0x800
-NUMERIC_MASK = 0x1000
+NUMERIC_MASK = 0x800
+CASE_IGNORABLE_MASK = 0x1000
+CASED_MASK = 0x2000
+EXTENDED_CASE_MASK = 0x4000
 
 # these ranges need to match unicodedata.c:is_unified_ideograph
 cjk_ranges = [
@@ -384,6 +388,7 @@
     numeric = {}
     spaces = []
     linebreaks = []
+    extra_casing = []
 
     for char in unicode.chars:
         record = unicode.table[char]
@@ -396,7 +401,7 @@
             delta = True
             if category in ["Lm", "Lt", "Lu", "Ll", "Lo"]:
                 flags |= ALPHA_MASK
-            if category == "Ll":
+            if "Lowercase" in properties:
                 flags |= LOWER_MASK
             if 'Line_Break' in properties or bidirectional == "B":
                 flags |= LINEBREAK_MASK
@@ -406,7 +411,7 @@
                 spaces.append(char)
             if category == "Lt":
                 flags |= TITLE_MASK
-            if category == "Lu":
+            if "Uppercase" in properties:
                 flags |= UPPER_MASK
             if char == ord(" ") or category[0] not in ("C", "Z"):
                 flags |= PRINTABLE_MASK
@@ -414,35 +419,41 @@
                 flags |= XID_START_MASK
             if "XID_Continue" in properties:
                 flags |= XID_CONTINUE_MASK
-            # use delta predictor for upper/lower/title if it fits
-            if record[12]:
-                upper = int(record[12], 16)
+            if "Cased" in properties:
+                flags |= CASED_MASK
+            if "Case_Ignorable" in properties:
+                flags |= CASE_IGNORABLE_MASK
+            sc = unicode.special_casing.get(char)
+            if sc is None:
+                if record[12]:
+                    upper = int(record[12], 16)
+                else:
+                    upper = char
+                if record[13]:
+                    lower = int(record[13], 16)
+                else:
+                    lower = char
+                if record[14]:
+                    title = int(record[14], 16)
+                else:
+                    title = upper
+                if upper == lower == title:
+                    upper = lower = title = 0
             else:
-                upper = char
-            if record[13]:
-                lower = int(record[13], 16)
-            else:
-                lower = char
-            if record[14]:
-                title = int(record[14], 16)
-            else:
-                # UCD.html says that a missing title char means that
-                # it defaults to the uppercase character, not to the
-                # character itself. Apparently, in the current UCD (5.x)
-                # this feature is never used
-                title = upper
-            upper_d = upper - char
-            lower_d = lower - char
-            title_d = title - char
-            if -32768 <= upper_d <= 32767 and \
-               -32768 <= lower_d <= 32767 and \
-               -32768 <= title_d <= 32767:
-                # use deltas
-                upper = upper_d & 0xffff
-                lower = lower_d & 0xffff
-                title = title_d & 0xffff
-            else:
-                flags |= NODELTA_MASK
+                # This happens when some character maps to more than one
+                # character in uppercase, lowercase, or titlecase. The extra
+                # characters are stored in a different array.
+                flags |= EXTENDED_CASE_MASK
+                lower = len(extra_casing) | (len(sc[0]) << 24)
+                extra_casing.extend(sc[0])
+                upper = len(extra_casing) | (len(sc[2]) << 24)
+                extra_casing.extend(sc[2])
+                # Title is probably equal to upper.
+                if sc[1] == sc[2]:
+                    title = upper
+                else:
+                    title = len(extra_casing) | (len(sc[1]) << 24)
+                    extra_casing.extend(sc[1])
             # decimal digit, integer digit
             decimal = 0
             if record[6]:
@@ -469,6 +480,7 @@
     print(sum(map(len, numeric.values())), "numeric code points")
     print(len(spaces), "whitespace code points")
     print(len(linebreaks), "linebreak code points")
+    print(len(extra_casing), "extended case array")
 
     print("--- Writing", FILE, "...")
 
@@ -482,6 +494,14 @@
     print("};", file=fp)
     print(file=fp)
 
+    print("/* extended case mappings */", file=fp)
+    print(file=fp)
+    print("const Py_UCS4 _PyUnicode_ExtendedCase[] = {", file=fp)
+    for c in extra_casing:
+        print("    %d," % c, file=fp)
+    print("};", file=fp)
+    print(file=fp)
+
     # split decomposition index table
     index1, index2, shift = splitbins(index, trace)
 
@@ -1070,6 +1090,23 @@
             # Patch the numeric field
             if table[i] is not None:
                 table[i][8] = value
+        sc = self.special_casing = {}
+        with open_data(SPECIAL_CASING, version) as file:
+            for s in file:
+                s = s[:-1].split('#', 1)[0]
+                if not s:
+                    continue
+                data = s.split("; ")
+                if data[4]:
+                    # We ignore all conditionals (since they depend on
+                    # languages) except for one, which is hardcoded. See
+                    # handle_capital_sigma in unicodeobject.c.
+                    continue
+                c = int(data[0], 16)
+                lower = [int(char, 16) for char in data[1].split()]
+                title = [int(char, 16) for char in data[2].split()]
+                upper = [int(char, 16) for char in data[3].split()]
+                sc[c] = (lower, title, upper)
 
     def uselatin1(self):
         # restrict character range to ISO Latin 1

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list