]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-74902: Add Unicode Grapheme Cluster Break algorithm (GH-143076)
authorSerhiy Storchaka <storchaka@gmail.com>
Wed, 14 Jan 2026 14:37:57 +0000 (16:37 +0200)
committerGitHub <noreply@github.com>
Wed, 14 Jan 2026 14:37:57 +0000 (14:37 +0000)
Add the unicodedata.iter_graphemes() function to iterate over grapheme
clusters according to rules defined in Unicode Standard Annex #29.

Add unicodedata.grapheme_cluster_break(), unicodedata.indic_conjunct_break()
and unicodedata.extended_pictographic() functions to get the properties
of the character which are related to the above algorithm.

Co-authored-by: Guillaume "Vermeille" Sanchez <guillaume.v.sanchez@gmail.com>
Doc/library/unicodedata.rst
Doc/whatsnew/3.15.rst
Lib/test/test_unicodedata.py
Misc/ACKS
Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst [new file with mode: 0644]
Modules/clinic/unicodedata.c.h
Modules/unicodedata.c
Modules/unicodedata_db.h
Tools/unicode/makeunicodedata.py

index 34f21f49b4bcb199e1b514900c15a8d01e8a0341..8ae0a9220551d366cdef6b1a6d54c63127a12b18 100644 (file)
@@ -184,6 +184,28 @@ following functions:
       '0041 0303'
 
 
+.. function:: grapheme_cluster_break(chr, /)
+
+   Returns the Grapheme_Cluster_Break property assigned to the character.
+
+   .. versionadded:: next
+
+
+.. function:: indic_conjunct_break(chr, /)
+
+   Returns the Indic_Conjunct_Break property assigned to the character.
+
+   .. versionadded:: next
+
+
+.. function:: extended_pictographic(chr, /)
+
+   Returns ``True`` if the character has the Extended_Pictographic property,
+   ``False`` otherwise.
+
+   .. versionadded:: next
+
+
 .. function:: normalize(form, unistr, /)
 
    Return the normal form *form* for the Unicode string *unistr*. Valid values for
@@ -225,6 +247,24 @@ following functions:
    .. versionadded:: 3.8
 
 
+.. function:: iter_graphemes(unistr, start=0, end=sys.maxsize, /)
+
+   Returns an iterator to iterate over grapheme clusters.
+   With optional *start*, iteration begins at that position.
+   With optional *end*, iteration stops at that position.
+
+   Converting an emitted item to string returns a substring corresponding to
+   the grapheme cluster.
+   Its ``start`` and ``end`` attributes denote the start and end of
+   the grapheme cluster.
+
+   It uses extended grapheme cluster rules defined by Unicode
+   Standard Annex #29, `"Unicode Text Segmentation"
+   <https://www.unicode.org/reports/tr29/>`_.
+
+   .. versionadded:: next
+
+
 In addition, the module exposes the following constant:
 
 .. data:: unidata_version
@@ -234,7 +274,7 @@ In addition, the module exposes the following constant:
 
 .. data:: ucd_3_2_0
 
-   This is an object that has the same methods as the entire module, but uses the
+   This is an object that has most of the methods of the entire module, but uses the
    Unicode database version 3.2 instead, for applications that require this
    specific version of the Unicode database (such as IDNA).
 
index 08afda053f72e0005f503fab64443c4a411e7d74..57c9bc255b2a9a0f66fda1e21dd518dab4674c0d 100644 (file)
@@ -811,6 +811,16 @@ unicodedata
   `Unicode Standard Annex #31 <https://www.unicode.org/reports/tr31/>`_ identifier.
   (Contributed by Stan Ulbrych in :gh:`129117`.)
 
+* Add the :func:`~unicodedata.iter_graphemes`
+  function to iterate over grapheme clusters according to rules defined in
+  `Unicode Standard Annex #29, "Unicode Text Segmentation"
+  <https://www.unicode.org/reports/tr29/>`_.
+  Add :func:`~unicodedata.grapheme_cluster_break`,
+  :func:`~unicodedata.indic_conjunct_break` and
+  :func:`~unicodedata.extended_pictographic` functions to get the properties
+  of the character which are related to the above algorithm.
+  (Contributed by Serhiy Storchaka and Guillaume Sanchez in :gh:`74902`.)
+
 
 unittest
 --------
index b1888b6db9be6a3b08213f40678e64fdaf59c554..07aa992de6d706f407e8e3e6ff9a9c5223153e36 100644 (file)
@@ -616,6 +616,221 @@ class UnicodeFunctionsTest(unittest.TestCase):
         self.assertRaises(TypeError, self.db.isxidcontinue)
         self.assertRaises(TypeError, self.db.isxidcontinue, 'xx')
 
+    def test_grapheme_cluster_break(self):
+        gcb = self.db.grapheme_cluster_break
+        self.assertEqual(gcb(' '), 'Other')
+        self.assertEqual(gcb('x'), 'Other')
+        self.assertEqual(gcb('\U0010FFFF'), 'Other')
+        self.assertEqual(gcb('\r'), 'CR')
+        self.assertEqual(gcb('\n'), 'LF')
+        self.assertEqual(gcb('\0'), 'Control')
+        self.assertEqual(gcb('\t'), 'Control')
+        self.assertEqual(gcb('\x1F'), 'Control')
+        self.assertEqual(gcb('\x7F'), 'Control')
+        self.assertEqual(gcb('\x9F'), 'Control')
+        self.assertEqual(gcb('\U000E0001'), 'Control')
+        self.assertEqual(gcb('\u0300'), 'Extend')
+        self.assertEqual(gcb('\u200C'), 'Extend')
+        self.assertEqual(gcb('\U000E01EF'), 'Extend')
+        self.assertEqual(gcb('\u1159'), 'L')
+        self.assertEqual(gcb('\u11F9'), 'T')
+        self.assertEqual(gcb('\uD788'), 'LV')
+        self.assertEqual(gcb('\uD7A3'), 'LVT')
+        # New in 5.0.0
+        self.assertEqual(gcb('\u05BA'), 'Extend')
+        self.assertEqual(gcb('\u20EF'), 'Extend')
+        # New in 5.1.0
+        self.assertEqual(gcb('\u2064'), 'Control')
+        self.assertEqual(gcb('\uAA4D'), 'SpacingMark')
+        # New in 5.2.0
+        self.assertEqual(gcb('\u0816'), 'Extend')
+        self.assertEqual(gcb('\uA97C'), 'L')
+        self.assertEqual(gcb('\uD7C6'), 'V')
+        self.assertEqual(gcb('\uD7FB'), 'T')
+        # New in 6.0.0
+        self.assertEqual(gcb('\u093A'), 'Extend')
+        self.assertEqual(gcb('\U00011002'), 'SpacingMark')
+        # New in 6.1.0
+        self.assertEqual(gcb('\U000E0FFF'), 'Control')
+        self.assertEqual(gcb('\U00016F7E'), 'SpacingMark')
+        # New in 6.2.0
+        self.assertEqual(gcb('\U0001F1E6'), 'Regional_Indicator')
+        self.assertEqual(gcb('\U0001F1FF'), 'Regional_Indicator')
+        # New in 6.3.0
+        self.assertEqual(gcb('\u180E'), 'Control')
+        self.assertEqual(gcb('\u1A1B'), 'Extend')
+        # New in 7.0.0
+        self.assertEqual(gcb('\u0E33'), 'SpacingMark')
+        self.assertEqual(gcb('\u0EB3'), 'SpacingMark')
+        self.assertEqual(gcb('\U0001BCA3'), 'Control')
+        self.assertEqual(gcb('\U0001E8D6'), 'Extend')
+        self.assertEqual(gcb('\U0001163E'), 'SpacingMark')
+        # New in 8.0.0
+        self.assertEqual(gcb('\u08E3'), 'Extend')
+        self.assertEqual(gcb('\U00011726'), 'SpacingMark')
+        # New in 9.0.0
+        self.assertEqual(gcb('\u0600'), 'Prepend')
+        self.assertEqual(gcb('\U000E007F'), 'Extend')
+        self.assertEqual(gcb('\U00011CB4'), 'SpacingMark')
+        self.assertEqual(gcb('\u200D'), 'ZWJ')
+        # New in 10.0.0
+        self.assertEqual(gcb('\U00011D46'), 'Prepend')
+        self.assertEqual(gcb('\U00011D47'), 'Extend')
+        self.assertEqual(gcb('\U00011A97'), 'SpacingMark')
+        # New in 11.0.0
+        self.assertEqual(gcb('\U000110CD'), 'Prepend')
+        self.assertEqual(gcb('\u07FD'), 'Extend')
+        self.assertEqual(gcb('\U00011EF6'), 'SpacingMark')
+        # New in 12.0.0
+        self.assertEqual(gcb('\U00011A84'), 'Prepend')
+        self.assertEqual(gcb('\U00013438'), 'Control')
+        self.assertEqual(gcb('\U0001E2EF'), 'Extend')
+        self.assertEqual(gcb('\U00016F87'), 'SpacingMark')
+        # New in 13.0.0
+        self.assertEqual(gcb('\U00011941'), 'Prepend')
+        self.assertEqual(gcb('\U00016FE4'), 'Extend')
+        self.assertEqual(gcb('\U00011942'), 'SpacingMark')
+        # New in 14.0.0
+        self.assertEqual(gcb('\u0891'), 'Prepend')
+        self.assertEqual(gcb('\U0001E2AE'), 'Extend')
+        # New in 15.0.0
+        self.assertEqual(gcb('\U00011F02'), 'Prepend')
+        self.assertEqual(gcb('\U0001343F'), 'Control')
+        self.assertEqual(gcb('\U0001E4EF'), 'Extend')
+        self.assertEqual(gcb('\U00011F3F'), 'SpacingMark')
+        # New in 16.0.0
+        self.assertEqual(gcb('\U000113D1'), 'Prepend')
+        self.assertEqual(gcb('\U0001E5EF'), 'Extend')
+        self.assertEqual(gcb('\U0001612C'), 'SpacingMark')
+        self.assertEqual(gcb('\U00016D63'), 'V')
+        # New in 17.0.0
+        self.assertEqual(gcb('\u1AEB'), 'Extend')
+        self.assertEqual(gcb('\U00011B67'), 'SpacingMark')
+
+        self.assertRaises(TypeError, gcb)
+        self.assertRaises(TypeError, gcb, b'x')
+        self.assertRaises(TypeError, gcb, 120)
+        self.assertRaises(TypeError, gcb, '')
+        self.assertRaises(TypeError, gcb, 'xx')
+
+    def test_indic_conjunct_break(self):
+        incb = self.db.indic_conjunct_break
+        self.assertEqual(incb(' '), 'None')
+        self.assertEqual(incb('x'), 'None')
+        self.assertEqual(incb('\U0010FFFF'), 'None')
+        # New in 15.1.0
+        self.assertEqual(incb('\u094D'), 'Linker')
+        self.assertEqual(incb('\u0D4D'), 'Linker')
+        self.assertEqual(incb('\u0915'), 'Consonant')
+        self.assertEqual(incb('\u0D3A'), 'Consonant')
+        self.assertEqual(incb('\u0300'), 'Extend')
+        self.assertEqual(incb('\U0001E94A'), 'Extend')
+        # New in 16.0.0
+        self.assertEqual(incb('\u034F'), 'Extend')
+        self.assertEqual(incb('\U000E01EF'), 'Extend')
+        # New in 17.0.0
+        self.assertEqual(incb('\u1039'), 'Linker')
+        self.assertEqual(incb('\U00011F42'), 'Linker')
+        self.assertEqual(incb('\u1000'), 'Consonant')
+        self.assertEqual(incb('\U00011F33'), 'Consonant')
+        self.assertEqual(incb('\U0001E6F5'), 'Extend')
+
+        self.assertRaises(TypeError, incb)
+        self.assertRaises(TypeError, incb, b'x')
+        self.assertRaises(TypeError, incb, 120)
+        self.assertRaises(TypeError, incb, '')
+        self.assertRaises(TypeError, incb, 'xx')
+
+    def test_extended_pictographic(self):
+        ext_pict = self.db.extended_pictographic
+        self.assertIs(ext_pict(' '), False)
+        self.assertIs(ext_pict('x'), False)
+        self.assertIs(ext_pict('\U0010FFFF'), False)
+        # New in 13.0.0
+        self.assertIs(ext_pict('\xA9'), True)
+        self.assertIs(ext_pict('\u203C'), True)
+        self.assertIs(ext_pict('\U0001FAD6'), True)
+        self.assertIs(ext_pict('\U0001FFFD'), True)
+        # New in 17.0.0
+        self.assertIs(ext_pict('\u2388'), False)
+        self.assertIs(ext_pict('\U0001FA6D'), False)
+
+        self.assertRaises(TypeError, ext_pict)
+        self.assertRaises(TypeError, ext_pict, b'x')
+        self.assertRaises(TypeError, ext_pict, 120)
+        self.assertRaises(TypeError, ext_pict, '')
+        self.assertRaises(TypeError, ext_pict, 'xx')
+
+    def test_grapheme_break(self):
+        def graphemes(*args):
+            return list(map(str, self.db.iter_graphemes(*args)))
+
+        self.assertRaises(TypeError, self.db.iter_graphemes)
+        self.assertRaises(TypeError, self.db.iter_graphemes, b'x')
+        self.assertRaises(TypeError, self.db.iter_graphemes, 'x', 0, 0, 0)
+
+        self.assertEqual(graphemes(''), [])
+        self.assertEqual(graphemes('abcd'), ['a', 'b', 'c', 'd'])
+        self.assertEqual(graphemes('abcd', 1), ['b', 'c', 'd'])
+        self.assertEqual(graphemes('abcd', 1, 3), ['b', 'c'])
+        self.assertEqual(graphemes('abcd', -3), ['b', 'c', 'd'])
+        self.assertEqual(graphemes('abcd', 1, -1), ['b', 'c'])
+        self.assertEqual(graphemes('abcd', 3, 1), [])
+        self.assertEqual(graphemes('abcd', 5), [])
+        self.assertEqual(graphemes('abcd', 0, 5), ['a', 'b', 'c', 'd'])
+        self.assertEqual(graphemes('abcd', -5), ['a', 'b', 'c', 'd'])
+        self.assertEqual(graphemes('abcd', 0, -5), [])
+        # GB3
+        self.assertEqual(graphemes('\r\n'), ['\r\n'])
+        # GB4
+        self.assertEqual(graphemes('\r\u0308'), ['\r', '\u0308'])
+        self.assertEqual(graphemes('\n\u0308'), ['\n', '\u0308'])
+        self.assertEqual(graphemes('\0\u0308'), ['\0', '\u0308'])
+        # GB5
+        self.assertEqual(graphemes('\u06dd\r'), ['\u06dd', '\r'])
+        self.assertEqual(graphemes('\u06dd\n'), ['\u06dd', '\n'])
+        self.assertEqual(graphemes('\u06dd\0'), ['\u06dd', '\0'])
+        # GB6
+        self.assertEqual(graphemes('\u1100\u1160'), ['\u1100\u1160'])
+        self.assertEqual(graphemes('\u1100\uAC00'), ['\u1100\uAC00'])
+        self.assertEqual(graphemes('\u1100\uAC01'), ['\u1100\uAC01'])
+        # GB7
+        self.assertEqual(graphemes('\uAC00\u1160'), ['\uAC00\u1160'])
+        self.assertEqual(graphemes('\uAC00\u11A8'), ['\uAC00\u11A8'])
+        self.assertEqual(graphemes('\u1160\u1160'), ['\u1160\u1160'])
+        self.assertEqual(graphemes('\u1160\u11A8'), ['\u1160\u11A8'])
+        # GB8
+        self.assertEqual(graphemes('\uAC01\u11A8'), ['\uAC01\u11A8'])
+        self.assertEqual(graphemes('\u11A8\u11A8'), ['\u11A8\u11A8'])
+        # GB9
+        self.assertEqual(graphemes('a\u0300'), ['a\u0300'])
+        self.assertEqual(graphemes('a\u200D'), ['a\u200D'])
+        # GB9a
+        self.assertEqual(graphemes('\u0905\u0903'), ['\u0905\u0903'])
+        # GB9b
+        self.assertEqual(graphemes('\u06dd\u0661'), ['\u06dd\u0661'])
+        # GB9c
+        self.assertEqual(graphemes('\u0915\u094d\u0924'),
+                         ['\u0915\u094d\u0924'])
+        self.assertEqual(graphemes('\u0915\u094D\u094D\u0924'),
+                         ['\u0915\u094D\u094D\u0924'])
+        self.assertEqual(graphemes('\u0915\u094D\u0924\u094D\u092F'),
+                         ['\u0915\u094D\u0924\u094D\u092F'])
+        # GB11
+        self.assertEqual(graphemes(
+                '\U0001F9D1\U0001F3FE\u200D\u2764\uFE0F'
+                '\u200D\U0001F48B\u200D\U0001F9D1\U0001F3FC'),
+                ['\U0001F9D1\U0001F3FE\u200D\u2764\uFE0F'
+                '\u200D\U0001F48B\u200D\U0001F9D1\U0001F3FC'])
+        # GB12
+        self.assertEqual(graphemes(
+            '\U0001F1FA\U0001F1E6\U0001F1FA\U0001F1F3'),
+            ['\U0001F1FA\U0001F1E6', '\U0001F1FA\U0001F1F3'])
+        # GB13
+        self.assertEqual(graphemes(
+            'a\U0001F1FA\U0001F1E6\U0001F1FA\U0001F1F3'),
+            ['a', '\U0001F1FA\U0001F1E6', '\U0001F1FA\U0001F1F3'])
+
 
 class Unicode_3_2_0_FunctionsTest(UnicodeFunctionsTest):
     db = unicodedata.ucd_3_2_0
@@ -624,6 +839,11 @@ class Unicode_3_2_0_FunctionsTest(UnicodeFunctionsTest):
                         if quicktest else
                         'f217b8688d7bdff31db4207e078a96702f091597')
 
+    test_grapheme_cluster_break = None
+    test_indic_conjunct_break = None
+    test_extended_pictographic = None
+    test_grapheme_break = None
+
 
 class UnicodeMiscTest(unittest.TestCase):
     db = unicodedata
@@ -726,6 +946,17 @@ class UnicodeMiscTest(unittest.TestCase):
                 self.assertEqual(len(lines), 1,
                                  r"%a should not be a linebreak" % c)
 
+    def test_segment_object(self):
+        segments = list(unicodedata.iter_graphemes('spa\u0300m'))
+        self.assertEqual(len(segments), 4, segments)
+        segment = segments[2]
+        self.assertEqual(segment.start, 2)
+        self.assertEqual(segment.end, 4)
+        self.assertEqual(str(segment), 'a\u0300')
+        self.assertEqual(repr(segment), '<Segment 2:4>')
+        self.assertRaises(TypeError, iter, segment)
+        self.assertRaises(TypeError, len, segment)
+
 
 class NormalizationTest(unittest.TestCase):
     @staticmethod
@@ -848,5 +1079,61 @@ class NormalizationTest(unittest.TestCase):
                     self.assertIs(type(normalize(form, MyStr(input_str))), str)
 
 
+class GraphemeBreakTest(unittest.TestCase):
+    @staticmethod
+    def check_version(testfile):
+        hdr = testfile.readline()
+        return unicodedata.unidata_version in hdr
+
+    @requires_resource('network')
+    def test_grapheme_break(self):
+        TESTDATAFILE = "auxiliary/GraphemeBreakTest.txt"
+        TESTDATAURL = f"https://www.unicode.org/Public/{unicodedata.unidata_version}/ucd/{TESTDATAFILE}"
+
+        # Hit the exception early
+        try:
+            testdata = open_urlresource(TESTDATAURL, encoding="utf-8",
+                                        check=self.check_version)
+        except PermissionError:
+            self.skipTest(f"Permission error when downloading {TESTDATAURL} "
+                          f"into the test data directory")
+        except (OSError, HTTPException) as exc:
+            self.skipTest(f"Failed to download {TESTDATAURL}: {exc}")
+
+        with testdata:
+            self.run_grapheme_break_tests(testdata)
+
+    def run_grapheme_break_tests(self, testdata):
+        for line in testdata:
+            line, _, comment = line.partition('#')
+            line = line.strip()
+            if not line:
+                continue
+            comment = comment.strip()
+
+            chunks = []
+            breaks = []
+            pos = 0
+            for field in line.replace('×', ' ').split():
+                if field == '÷':
+                    chunks.append('')
+                    breaks.append(pos)
+                else:
+                    chunks[-1] += chr(int(field, 16))
+                    pos += 1
+            self.assertEqual(chunks.pop(), '', line)
+            input = ''.join(chunks)
+            with self.subTest(line):
+                result = list(unicodedata.iter_graphemes(input))
+                self.assertEqual(list(map(str, result)), chunks, comment)
+                self.assertEqual([x.start for x in result], breaks[:-1], comment)
+                self.assertEqual([x.end for x in result], breaks[1:], comment)
+                for i in range(1, len(breaks) - 1):
+                    result = list(unicodedata.iter_graphemes(input, breaks[i]))
+                    self.assertEqual(list(map(str, result)), chunks[i:], comment)
+                    self.assertEqual([x.start for x in result], breaks[i:-1], comment)
+                    self.assertEqual([x.end for x in result], breaks[i+1:], comment)
+
+
 if __name__ == "__main__":
     unittest.main()
index 63ddfb89071c0b42835353b04ffc6476f27b4b70..49a8deb30fc83c1bbf650caa016839bbc653fbf5 100644 (file)
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -1664,6 +1664,7 @@ Victor Salgado
 Rich Salz
 Kevin Samborn
 Adrian Sampson
+Guillaume Sanchez
 Nevada Sanchez
 James Sanders
 Ilya Sandler
diff --git a/Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst b/Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst
new file mode 100644 (file)
index 0000000..e3922b2
--- /dev/null
@@ -0,0 +1,8 @@
+Add the :func:`~unicodedata.iter_graphemes` function in the
+:mod:`unicodedata` module to iterate over grapheme clusters according to
+rules defined in `Unicode Standard Annex #29, "Unicode Text Segmentation"
+<https://www.unicode.org/reports/tr29/>`_. Add
+:func:`~unicodedata.grapheme_cluster_break`,
+:func:`~unicodedata.indic_conjunct_break` and
+:func:`~unicodedata.extended_pictographic` functions to get the properties
+of the character which are related to the above algorithm.
index 5fcba083c2f4ce44795bc96990a8c31143b87a4c..c0497cf45f6cff4284cfbc9d517bd3d8fa98005b 100644 (file)
@@ -2,6 +2,7 @@
 preserve
 [clinic start generated code]*/
 
+#include "pycore_abstract.h"      // _PyNumber_Index()
 #include "pycore_modsupport.h"    // _PyArg_CheckPositional()
 
 PyDoc_STRVAR(unicodedata_UCD_decimal__doc__,
@@ -621,4 +622,180 @@ unicodedata_UCD_lookup(PyObject *self, PyObject *arg)
 exit:
     return return_value;
 }
-/*[clinic end generated code: output=c5e56c8f6bb80f93 input=a9049054013a1b77]*/
+
+PyDoc_STRVAR(unicodedata_iter_graphemes__doc__,
+"iter_graphemes($module, unistr, start=0, end=sys.maxsize, /)\n"
+"--\n"
+"\n"
+"Returns an iterator to iterate over grapheme clusters.\n"
+"\n"
+"It uses extended grapheme cluster rules from TR29.");
+
+#define UNICODEDATA_ITER_GRAPHEMES_METHODDEF    \
+    {"iter_graphemes", _PyCFunction_CAST(unicodedata_iter_graphemes), METH_FASTCALL, unicodedata_iter_graphemes__doc__},
+
+static PyObject *
+unicodedata_iter_graphemes_impl(PyObject *module, PyObject *unistr,
+                                Py_ssize_t start, Py_ssize_t end);
+
+static PyObject *
+unicodedata_iter_graphemes(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
+{
+    PyObject *return_value = NULL;
+    PyObject *unistr;
+    Py_ssize_t start = 0;
+    Py_ssize_t end = PY_SSIZE_T_MAX;
+
+    if (!_PyArg_CheckPositional("iter_graphemes", nargs, 1, 3)) {
+        goto exit;
+    }
+    if (!PyUnicode_Check(args[0])) {
+        _PyArg_BadArgument("iter_graphemes", "argument 1", "str", args[0]);
+        goto exit;
+    }
+    unistr = args[0];
+    if (nargs < 2) {
+        goto skip_optional;
+    }
+    {
+        Py_ssize_t ival = -1;
+        PyObject *iobj = _PyNumber_Index(args[1]);
+        if (iobj != NULL) {
+            ival = PyLong_AsSsize_t(iobj);
+            Py_DECREF(iobj);
+        }
+        if (ival == -1 && PyErr_Occurred()) {
+            goto exit;
+        }
+        start = ival;
+    }
+    if (nargs < 3) {
+        goto skip_optional;
+    }
+    {
+        Py_ssize_t ival = -1;
+        PyObject *iobj = _PyNumber_Index(args[2]);
+        if (iobj != NULL) {
+            ival = PyLong_AsSsize_t(iobj);
+            Py_DECREF(iobj);
+        }
+        if (ival == -1 && PyErr_Occurred()) {
+            goto exit;
+        }
+        end = ival;
+    }
+skip_optional:
+    return_value = unicodedata_iter_graphemes_impl(module, unistr, start, end);
+
+exit:
+    return return_value;
+}
+
+PyDoc_STRVAR(unicodedata_grapheme_cluster_break__doc__,
+"grapheme_cluster_break($module, chr, /)\n"
+"--\n"
+"\n"
+"Returns the Grapheme_Cluster_Break property assigned to the character.");
+
+#define UNICODEDATA_GRAPHEME_CLUSTER_BREAK_METHODDEF    \
+    {"grapheme_cluster_break", (PyCFunction)unicodedata_grapheme_cluster_break, METH_O, unicodedata_grapheme_cluster_break__doc__},
+
+static PyObject *
+unicodedata_grapheme_cluster_break_impl(PyObject *module, int chr);
+
+static PyObject *
+unicodedata_grapheme_cluster_break(PyObject *module, PyObject *arg)
+{
+    PyObject *return_value = NULL;
+    int chr;
+
+    if (!PyUnicode_Check(arg)) {
+        _PyArg_BadArgument("grapheme_cluster_break", "argument", "a unicode character", arg);
+        goto exit;
+    }
+    if (PyUnicode_GET_LENGTH(arg) != 1) {
+        PyErr_Format(PyExc_TypeError,
+            "grapheme_cluster_break(): argument must be a unicode character, "
+            "not a string of length %zd",
+            PyUnicode_GET_LENGTH(arg));
+        goto exit;
+    }
+    chr = PyUnicode_READ_CHAR(arg, 0);
+    return_value = unicodedata_grapheme_cluster_break_impl(module, chr);
+
+exit:
+    return return_value;
+}
+
+PyDoc_STRVAR(unicodedata_indic_conjunct_break__doc__,
+"indic_conjunct_break($module, chr, /)\n"
+"--\n"
+"\n"
+"Returns the Indic_Conjunct_Break property assigned to the character.");
+
+#define UNICODEDATA_INDIC_CONJUNCT_BREAK_METHODDEF    \
+    {"indic_conjunct_break", (PyCFunction)unicodedata_indic_conjunct_break, METH_O, unicodedata_indic_conjunct_break__doc__},
+
+static PyObject *
+unicodedata_indic_conjunct_break_impl(PyObject *module, int chr);
+
+static PyObject *
+unicodedata_indic_conjunct_break(PyObject *module, PyObject *arg)
+{
+    PyObject *return_value = NULL;
+    int chr;
+
+    if (!PyUnicode_Check(arg)) {
+        _PyArg_BadArgument("indic_conjunct_break", "argument", "a unicode character", arg);
+        goto exit;
+    }
+    if (PyUnicode_GET_LENGTH(arg) != 1) {
+        PyErr_Format(PyExc_TypeError,
+            "indic_conjunct_break(): argument must be a unicode character, "
+            "not a string of length %zd",
+            PyUnicode_GET_LENGTH(arg));
+        goto exit;
+    }
+    chr = PyUnicode_READ_CHAR(arg, 0);
+    return_value = unicodedata_indic_conjunct_break_impl(module, chr);
+
+exit:
+    return return_value;
+}
+
+PyDoc_STRVAR(unicodedata_extended_pictographic__doc__,
+"extended_pictographic($module, chr, /)\n"
+"--\n"
+"\n"
+"Returns the Extended_Pictographic property assigned to the character, as boolean.");
+
+#define UNICODEDATA_EXTENDED_PICTOGRAPHIC_METHODDEF    \
+    {"extended_pictographic", (PyCFunction)unicodedata_extended_pictographic, METH_O, unicodedata_extended_pictographic__doc__},
+
+static PyObject *
+unicodedata_extended_pictographic_impl(PyObject *module, int chr);
+
+static PyObject *
+unicodedata_extended_pictographic(PyObject *module, PyObject *arg)
+{
+    PyObject *return_value = NULL;
+    int chr;
+
+    if (!PyUnicode_Check(arg)) {
+        _PyArg_BadArgument("extended_pictographic", "argument", "a unicode character", arg);
+        goto exit;
+    }
+    if (PyUnicode_GET_LENGTH(arg) != 1) {
+        PyErr_Format(PyExc_TypeError,
+            "extended_pictographic(): argument must be a unicode character, "
+            "not a string of length %zd",
+            PyUnicode_GET_LENGTH(arg));
+        goto exit;
+    }
+    chr = PyUnicode_READ_CHAR(arg, 0);
+    return_value = unicodedata_extended_pictographic_impl(module, chr);
+
+exit:
+    return return_value;
+}
+/*[clinic end generated code: output=6991246310e3f2aa input=a9049054013a1b77]*/
index a6094676d4194cca15e8b1293039ef22340edb8d..669aa26aee5dc1bb397ce7163f4868942203f6e0 100644 (file)
 #include <stdbool.h>
 #include <stddef.h>               // offsetof()
 
+/* helper macro to fixup start/end slice values */
+#define ADJUST_INDICES(start, end, len) \
+    do {                                \
+        if (end > len) {                \
+            end = len;                  \
+        }                               \
+        else if (end < 0) {             \
+            end += len;                 \
+            if (end < 0) {              \
+                end = 0;                \
+            }                           \
+        }                               \
+        if (start < 0) {                \
+            start += len;               \
+            if (start < 0) {            \
+                start = 0;              \
+            }                           \
+        }                               \
+    } while (0)
+
 /*[clinic input]
 module unicodedata
 class unicodedata.UCD 'PreviousDBVersion *' '<not used>'
@@ -42,6 +62,11 @@ typedef struct {
     const unsigned char east_asian_width;       /* index into
                                                    _PyUnicode_EastAsianWidth */
     const unsigned char normalization_quick_check; /* see is_normalized() */
+    const unsigned char grapheme_cluster_break; /* index into
+                                                   _PyUnicode_GraphemeBreakNames */
+    const unsigned char incb;           /* index into
+                                           _PyUnicode_IndicConjunctBreakNames */
+    const unsigned char ext_pict;       /* true if Extended_Pictographic */
 } _PyUnicode_DatabaseRecord;
 
 typedef struct change_record {
@@ -71,6 +96,19 @@ _getrecord_ex(Py_UCS4 code)
     return &_PyUnicode_Database_Records[index];
 }
 
+typedef struct {
+    PyObject *SegmentType;
+    PyObject *GraphemeBreakIteratorType;
+} unicodedatastate;
+
+static inline unicodedatastate *
+get_unicodedata_state(PyObject *module)
+{
+    void *state = _PyModule_GetState(module);
+    assert(state != NULL);
+    return (unicodedatastate *)state;
+}
+
 /* ------------- Previous-version API ------------------------------------- */
 typedef struct previous_version {
     PyObject_HEAD
@@ -1628,11 +1666,469 @@ unicodedata_UCD_lookup_impl(PyObject *self, const char *name,
     return PyUnicode_FromOrdinal(code);
 }
 
+
+/* Grapheme Cluster Break algorithm */
+
+enum ExtPictState {
+    ExtPictState_Init,
+    // \p{Extended_Pictographic} Extend*
+    ExtPictState_Started,
+    // ... ZWJ
+    ExtPictState_ZWJ,
+    // ... \p{Extended_Pictographic}
+    ExtPictState_Matched,
+};
+
+enum InCBState {
+    InCBState_Init,
+    // \p{InCB=Consonant} \p{InCB=Extend}*
+    InCBState_Started,
+    // ... \p{InCB=Linker} [ \p{InCB=Extend} \p{InCB=Linker} ]*
+    InCBState_Linker,
+    // ... \p{InCB=Consonant}
+    InCBState_Matched,
+};
+
+typedef struct {
+    PyObject *str;
+    Py_ssize_t start;
+    Py_ssize_t pos;
+    Py_ssize_t end;
+    int gcb;
+    enum ExtPictState ep_state;
+    enum InCBState incb_state;
+    bool ri_flag;
+} _PyGraphemeBreak;
+
+static inline enum ExtPictState
+update_ext_pict_state(enum ExtPictState state, int gcb, bool ext_pict)
+{
+    if (ext_pict) {
+        return (state == ExtPictState_ZWJ) ? ExtPictState_Matched : ExtPictState_Started;
+    }
+    if (state == ExtPictState_Started || state == ExtPictState_Matched) {
+        if (gcb == GCB_Extend) {
+            return ExtPictState_Started;
+        }
+        if (gcb == GCB_ZWJ) {
+            return ExtPictState_ZWJ;
+        }
+    }
+    return ExtPictState_Init;
+}
+
+static inline enum InCBState
+update_incb_state(enum InCBState state, int incb)
+{
+    if (incb == InCB_Consonant) {
+        return (state == InCBState_Linker) ? InCBState_Matched : InCBState_Started;
+    }
+    if (state != InCBState_Init) {
+        if (incb == InCB_Extend) {
+            return (state == InCBState_Linker) ? InCBState_Linker : InCBState_Started;
+        }
+        if (incb == InCB_Linker) {
+            return InCBState_Linker;
+        }
+    }
+    return InCBState_Init;
+}
+
+static inline bool
+update_ri_flag(bool flag, int gcb)
+{
+    if (gcb == GCB_Regional_Indicator) {
+        return !flag;
+    }
+    else {
+        return false;
+    }
+}
+
+static inline bool
+grapheme_break(int prev_gcb, int curr_gcb, enum ExtPictState ep_state,
+               bool ri_flag, enum InCBState incb_state)
+{
+    /* GB3 */
+    if (prev_gcb == GCB_CR && curr_gcb == GCB_LF) {
+        return false;
+    }
+
+    /* GB4 */
+    if (prev_gcb == GCB_CR ||
+        prev_gcb == GCB_LF ||
+        prev_gcb == GCB_Control)
+    {
+        return true;
+    }
+
+    /* GB5 */
+    if (curr_gcb == GCB_CR ||
+        curr_gcb == GCB_LF ||
+        curr_gcb == GCB_Control)
+    {
+        return true;
+    }
+
+    /* GB6 */
+    if (prev_gcb == GCB_L &&
+        (curr_gcb == GCB_L ||
+         curr_gcb == GCB_V ||
+         curr_gcb == GCB_LV ||
+         curr_gcb == GCB_LVT))
+    {
+        return false;
+    }
+
+    /* GB7 */
+    if ((prev_gcb == GCB_LV || prev_gcb == GCB_V) &&
+        (curr_gcb == GCB_V || curr_gcb == GCB_T))
+    {
+        return false;
+    }
+
+    /* GB8 */
+    if ((prev_gcb == GCB_LVT || prev_gcb == GCB_T) &&
+        curr_gcb == GCB_T)
+    {
+        return false;
+    }
+
+    /* GB9 */
+    if (curr_gcb == GCB_Extend || curr_gcb == GCB_ZWJ) {
+        return false;
+    }
+
+    /* GB9a */
+    if (curr_gcb == GCB_SpacingMark) {
+        return false;
+    }
+
+    /* GB9b */
+    if (prev_gcb == GCB_Prepend) {
+        return false;
+    }
+
+    /* GB9c */
+    if (incb_state == InCBState_Matched) {
+        return false;
+    }
+
+    /* GB11 */
+    if (ep_state == ExtPictState_Matched) {
+        return false;
+    }
+
+    /* GB12 and GB13 */
+    if (prev_gcb == GCB_Regional_Indicator && curr_gcb == prev_gcb) {
+        return ri_flag;
+    }
+
+    /* GB999 */
+    return true;
+}
+
+static void
+_Py_InitGraphemeBreak(_PyGraphemeBreak *iter, PyObject *str,
+                      Py_ssize_t start, Py_ssize_t end)
+{
+    iter->str = str;
+    iter->start = iter->pos = start;
+    iter->end = end;
+    iter->gcb = 0;
+    iter->ep_state = ExtPictState_Init;
+    iter->ri_flag = false;
+    iter->incb_state = InCBState_Init;
+}
+
+static Py_ssize_t
+_Py_NextGraphemeBreak(_PyGraphemeBreak *iter)
+{
+    if (iter->start >= iter->end) {
+        return -1;
+    }
+
+    int kind = PyUnicode_KIND(iter->str);
+    void *pstr = PyUnicode_DATA(iter->str);
+    while (iter->pos < iter->end) {
+        Py_UCS4 chr = PyUnicode_READ(kind, pstr, iter->pos);
+        const _PyUnicode_DatabaseRecord *record = _getrecord_ex(chr);
+        int gcb = record->grapheme_cluster_break;
+        iter->ep_state = update_ext_pict_state(iter->ep_state, gcb, record->ext_pict);
+        iter->ri_flag = update_ri_flag(iter->ri_flag, gcb);
+        iter->incb_state = update_incb_state(iter->incb_state, record->incb);
+        int prev_gcb = iter->gcb;
+        iter->gcb = gcb;
+        if (iter->pos != iter->start &&
+            grapheme_break(prev_gcb, gcb, iter->ep_state, iter->ri_flag,
+                           iter->incb_state))
+        {
+            iter->start = iter->pos;
+            return iter->pos++;
+        }
+        ++iter->pos;
+    }
+    iter->start = iter->pos;
+    return iter->pos;
+}
+
+
+/* Text Segment object */
+
+typedef struct {
+    PyObject_HEAD
+    PyObject *string;
+    Py_ssize_t start;
+    Py_ssize_t end;
+} SegmentObject;
+
+static void
+Segment_dealloc(PyObject *self)
+{
+    PyObject_GC_UnTrack(self);
+    Py_DECREF(((SegmentObject *)self)->string);
+    PyObject_GC_Del(self);
+}
+
+static int
+Segment_traverse(PyObject *self, visitproc visit, void *arg)
+{
+    Py_VISIT(((SegmentObject *)self)->string);
+    return 0;
+}
+
+static int
+Segment_clear(PyObject *self)
+{
+    Py_CLEAR(((SegmentObject *)self)->string);
+    return 0;
+}
+
+static PyObject *
+Segment_str(PyObject *self)
+{
+    SegmentObject *s = (SegmentObject *)self;
+    return PyUnicode_Substring(s->string, s->start, s->end);
+}
+
+static PyObject *
+Segment_repr(PyObject *self)
+{
+    SegmentObject *s = (SegmentObject *)self;
+    return PyUnicode_FromFormat("<Segment %zd:%zd>", s->start, s->end);
+}
+
+static PyMemberDef Segment_members[] = {
+    {"start", Py_T_PYSSIZET, offsetof(SegmentObject, start), 0,
+        PyDoc_STR("grapheme start")},
+    {"end", Py_T_PYSSIZET, offsetof(SegmentObject, end), 0,
+        PyDoc_STR("grapheme end")},
+    {NULL}  /* Sentinel */
+};
+
+static PyType_Slot Segment_slots[] = {
+    {Py_tp_dealloc, Segment_dealloc},
+    {Py_tp_traverse, Segment_traverse},
+    {Py_tp_clear, Segment_clear},
+    {Py_tp_str, Segment_str},
+    {Py_tp_repr, Segment_repr},
+    {Py_tp_members, Segment_members},
+    {0, 0},
+};
+
+static PyType_Spec Segment_spec = {
+    .name = "unicodedata.Segment",
+    .basicsize = sizeof(SegmentObject),
+    .flags = (
+        Py_TPFLAGS_DEFAULT
+        | Py_TPFLAGS_HAVE_GC
+        | Py_TPFLAGS_DISALLOW_INSTANTIATION
+        | Py_TPFLAGS_IMMUTABLETYPE
+    ),
+    .slots = Segment_slots
+};
+
+
+/* Grapheme Cluster iterator */
+
+typedef struct {
+    PyObject_HEAD
+    _PyGraphemeBreak iter;
+} GraphemeBreakIterator;
+
+static void
+GBI_dealloc(PyObject *self)
+{
+    PyObject_GC_UnTrack(self);
+    Py_DECREF(((GraphemeBreakIterator *)self)->iter.str);
+    PyObject_GC_Del(self);
+}
+
+static int
+GBI_traverse(PyObject *self, visitproc visit, void *arg)
+{
+    Py_VISIT(((GraphemeBreakIterator *)self)->iter.str);
+    return 0;
+}
+
+static int
+GBI_clear(PyObject *self)
+{
+    Py_CLEAR(((GraphemeBreakIterator *)self)->iter.str);
+    return 0;
+}
+
+static PyObject *
+GBI_iternext(PyObject *self)
+{
+    GraphemeBreakIterator *it = (GraphemeBreakIterator *)self;
+    Py_ssize_t start = it->iter.start;
+    Py_ssize_t pos = _Py_NextGraphemeBreak(&it->iter);
+
+    if (pos < 0) {
+        return NULL;
+    }
+    PyObject *module = PyType_GetModule(Py_TYPE(it));
+    PyObject *SegmentType = get_unicodedata_state(module)->SegmentType;
+    SegmentObject *s = PyObject_GC_New(SegmentObject,
+                                       (PyTypeObject *)SegmentType);
+    if (!s) {
+        return NULL;
+    }
+    s->string = Py_NewRef(it->iter.str);
+    s->start = start;
+    s->end = pos;
+    PyObject_GC_Track(s);
+    return (PyObject *)s;
+}
+
+
+static PyType_Slot GraphemeBreakIterator_slots[] = {
+    {Py_tp_dealloc, GBI_dealloc},
+    {Py_tp_iter, PyObject_SelfIter},
+    {Py_tp_iternext, GBI_iternext},
+    {Py_tp_traverse, GBI_traverse},
+    {Py_tp_clear, GBI_clear},
+    {0, 0},
+};
+
+static PyType_Spec GraphemeBreakIterator_spec = {
+    .name = "unicodedata.GraphemeBreakIterator",
+    .basicsize = sizeof(GraphemeBreakIterator),
+    .flags = (
+        Py_TPFLAGS_DEFAULT
+        | Py_TPFLAGS_HAVE_GC
+        | Py_TPFLAGS_DISALLOW_INSTANTIATION
+        | Py_TPFLAGS_IMMUTABLETYPE
+    ),
+    .slots = GraphemeBreakIterator_slots
+};
+
+
+/*[clinic input]
+unicodedata.iter_graphemes
+
+    unistr: unicode
+    start: Py_ssize_t = 0
+    end: Py_ssize_t(c_default="PY_SSIZE_T_MAX") = sys.maxsize
+    /
+
+Returns an iterator to iterate over grapheme clusters.
+
+It uses extended grapheme cluster rules from TR29.
+[clinic start generated code]*/
+
+static PyObject *
+unicodedata_iter_graphemes_impl(PyObject *module, PyObject *unistr,
+                                Py_ssize_t start, Py_ssize_t end)
+/*[clinic end generated code: output=b0b831944265d36f input=a1454d9e8135951f]*/
+{
+    PyObject *GraphemeBreakIteratorType = get_unicodedata_state(module)->GraphemeBreakIteratorType;
+    GraphemeBreakIterator *gbi = PyObject_GC_New(GraphemeBreakIterator,
+            (PyTypeObject *)GraphemeBreakIteratorType);
+    if (!gbi) {
+        return NULL;
+    }
+
+    Py_ssize_t len = PyUnicode_GET_LENGTH(unistr);
+    ADJUST_INDICES(start, end, len);
+    Py_INCREF(unistr);
+    _Py_InitGraphemeBreak(&gbi->iter, unistr, start, end);
+    PyObject_GC_Track(gbi);
+    return (PyObject*)gbi;
+}
+
+/*[clinic input]
+unicodedata.grapheme_cluster_break
+
+    chr: int(accept={str})
+    /
+
+Returns the Grapheme_Cluster_Break property assigned to the character.
+[clinic start generated code]*/
+
+static PyObject *
+unicodedata_grapheme_cluster_break_impl(PyObject *module, int chr)
+/*[clinic end generated code: output=39542e0f63bba36f input=5da75e86435576fd]*/
+{
+    Py_UCS4 c = (Py_UCS4)chr;
+    int index = (int) _getrecord_ex(c)->grapheme_cluster_break;
+    return PyUnicode_FromString(_PyUnicode_GraphemeBreakNames[index]);
+}
+
+/*[clinic input]
+unicodedata.indic_conjunct_break
+
+    chr: int(accept={str})
+    /
+
+Returns the Indic_Conjunct_Break property assigned to the character.
+[clinic start generated code]*/
+
+static PyObject *
+unicodedata_indic_conjunct_break_impl(PyObject *module, int chr)
+/*[clinic end generated code: output=673eff2caf797f08 input=5c730f78e469f2e8]*/
+{
+    Py_UCS4 c = (Py_UCS4)chr;
+    int index = (int) _getrecord_ex(c)->incb;
+    return PyUnicode_FromString(_PyUnicode_IndicConjunctBreakNames[index]);
+}
+
+/*[clinic input]
+@permit_long_summary
+unicodedata.extended_pictographic
+
+    chr: int(accept={str})
+    /
+
+Returns the Extended_Pictographic property assigned to the character, as boolean.
+[clinic start generated code]*/
+
+static PyObject *
+unicodedata_extended_pictographic_impl(PyObject *module, int chr)
+/*[clinic end generated code: output=b6bbb349427370b1 input=250d7bd988997eb3]*/
+{
+    Py_UCS4 c = (Py_UCS4)chr;
+    int index = (int) _getrecord_ex(c)->ext_pict;
+    return PyBool_FromLong(index);
+}
+
+
 // List of functions used to define module functions *AND* unicodedata.UCD
 // methods. For module functions, self is the module. For UCD methods, self
 // is an UCD instance. The UCD_Check() macro is used to check if self is
 // an UCD instance.
 static PyMethodDef unicodedata_functions[] = {
+    // Module only functions.
+    UNICODEDATA_GRAPHEME_CLUSTER_BREAK_METHODDEF
+    UNICODEDATA_INDIC_CONJUNCT_BREAK_METHODDEF
+    UNICODEDATA_EXTENDED_PICTOGRAPHIC_METHODDEF
+    UNICODEDATA_ITER_GRAPHEMES_METHODDEF
+
+    // The following definitions are shared between the module
+    // and the UCD class.
+#define DB_methods (unicodedata_functions + 4)
+
     UNICODEDATA_UCD_DECIMAL_METHODDEF
     UNICODEDATA_UCD_DIGIT_METHODDEF
     UNICODEDATA_UCD_NUMERIC_METHODDEF
@@ -1664,7 +2160,7 @@ static PyType_Slot ucd_type_slots[] = {
     {Py_tp_dealloc, ucd_dealloc},
     {Py_tp_traverse, _PyObject_VisitType},
     {Py_tp_getattro, PyObject_GenericGetAttr},
-    {Py_tp_methods, unicodedata_functions},
+    {Py_tp_methods, DB_methods},
     {Py_tp_members, DB_members},
     {0, 0}
 };
@@ -1677,6 +2173,7 @@ static PyType_Spec ucd_type_spec = {
     .slots = ucd_type_slots
 };
 
+
 PyDoc_STRVAR(unicodedata_docstring,
 "This module provides access to the Unicode Character Database which\n\
 defines character properties for all Unicode characters. The data in\n\
@@ -1686,9 +2183,47 @@ this database is based on the UnicodeData.txt file version\n\
 The module uses the same names and symbols as defined by the\n\
 UnicodeData File Format " UNIDATA_VERSION ".");
 
+static int
+unicodedata_traverse(PyObject *module, visitproc visit, void *arg)
+{
+    unicodedatastate *state = get_unicodedata_state(module);
+    Py_VISIT(state->SegmentType);
+    Py_VISIT(state->GraphemeBreakIteratorType);
+    return 0;
+}
+
+static int
+unicodedata_clear(PyObject *module)
+{
+    unicodedatastate *state = get_unicodedata_state(module);
+    Py_CLEAR(state->SegmentType);
+    Py_CLEAR(state->GraphemeBreakIteratorType);
+    return 0;
+}
+
+static void
+unicodedata_free(void *module)
+{
+    unicodedata_clear((PyObject *)module);
+}
+
 static int
 unicodedata_exec(PyObject *module)
 {
+    unicodedatastate *state = get_unicodedata_state(module);
+
+    PyObject *SegmentType = PyType_FromModuleAndSpec(module, &Segment_spec, NULL);
+    if (SegmentType == NULL) {
+        return -1;
+    }
+    state->SegmentType = SegmentType;
+
+    PyObject *GraphemeBreakIteratorType = PyType_FromModuleAndSpec(module, &GraphemeBreakIterator_spec, NULL);
+    if (GraphemeBreakIteratorType == NULL) {
+        return -1;
+    }
+    state->GraphemeBreakIteratorType = GraphemeBreakIteratorType;
+
     if (PyModule_AddStringConstant(module, "unidata_version", UNIDATA_VERSION) < 0) {
         return -1;
     }
@@ -1730,9 +2265,12 @@ static struct PyModuleDef unicodedata_module = {
     PyModuleDef_HEAD_INIT,
     .m_name = "unicodedata",
     .m_doc = unicodedata_docstring,
-    .m_size = 0,
+    .m_size = sizeof(unicodedatastate),
     .m_methods = unicodedata_functions,
     .m_slots = unicodedata_slots,
+    .m_traverse = unicodedata_traverse,
+    .m_clear = unicodedata_clear,
+    .m_free = unicodedata_free,
 };
 
 PyMODINIT_FUNC
index eb0da8a6ff9455dd5958ad2f20795d75b99db6d3..a0b656280359848872abfaceaff30085dc56b8f2 100644 (file)
 #define UNIDATA_VERSION "17.0.0"
 /* a list of unique database records */
 const _PyUnicode_DatabaseRecord _PyUnicode_Database_Records[] = {
-    {0, 0, 0, 0, 0, 0},
-    {13, 0, 15, 0, 0, 0},
-    {13, 0, 17, 0, 0, 0},
-    {13, 0, 16, 0, 0, 0},
-    {13, 0, 18, 0, 0, 0},
-    {10, 0, 18, 0, 3, 0},
-    {26, 0, 19, 0, 3, 0},
-    {26, 0, 11, 0, 3, 0},
-    {28, 0, 11, 0, 3, 0},
-    {22, 0, 19, 1, 3, 0},
-    {23, 0, 19, 1, 3, 0},
-    {27, 0, 10, 0, 3, 0},
-    {26, 0, 13, 0, 3, 0},
-    {21, 0, 10, 0, 3, 0},
-    {7, 0, 9, 0, 3, 0},
-    {27, 0, 19, 1, 3, 0},
-    {27, 0, 19, 0, 3, 0},
-    {1, 0, 1, 0, 3, 0},
-    {29, 0, 19, 0, 3, 0},
-    {20, 0, 19, 0, 3, 0},
-    {2, 0, 1, 0, 3, 0},
-    {10, 0, 13, 0, 0, 136},
-    {26, 0, 19, 0, 4, 0},
-    {28, 0, 11, 0, 4, 0},
-    {30, 0, 19, 0, 3, 0},
-    {29, 0, 19, 0, 4, 136},
-    {30, 0, 19, 0, 0, 0},
-    {19, 0, 1, 0, 4, 136},
-    {24, 0, 19, 1, 0, 0},
-    {14, 0, 15, 0, 4, 0},
-    {30, 0, 19, 0, 4, 0},
-    {29, 0, 19, 0, 3, 136},
-    {30, 0, 11, 0, 4, 0},
-    {27, 0, 11, 0, 4, 0},
-    {9, 0, 9, 0, 4, 136},
-    {2, 0, 1, 0, 0, 136},
-    {25, 0, 19, 1, 0, 0},
-    {9, 0, 19, 0, 4, 136},
-    {1, 0, 1, 0, 0, 10},
-    {1, 0, 1, 0, 4, 0},
-    {27, 0, 19, 0, 4, 0},
-    {2, 0, 1, 0, 4, 0},
-    {2, 0, 1, 0, 4, 10},
-    {2, 0, 1, 0, 0, 10},
-    {1, 0, 1, 0, 0, 0},
-    {1, 0, 1, 0, 4, 136},
-    {2, 0, 1, 0, 4, 136},
-    {2, 0, 1, 0, 0, 0},
-    {19, 0, 1, 0, 0, 0},
-    {1, 0, 1, 0, 0, 136},
-    {3, 0, 1, 0, 0, 136},
-    {18, 0, 1, 0, 0, 136},
-    {18, 0, 19, 0, 0, 0},
-    {18, 0, 1, 0, 0, 0},
-    {29, 0, 19, 0, 0, 0},
-    {29, 0, 19, 0, 4, 0},
-    {18, 0, 19, 0, 4, 0},
-    {18, 0, 1, 0, 4, 0},
-    {29, 0, 19, 0, 0, 136},
-    {4, 230, 14, 0, 4, 80},
-    {4, 230, 14, 0, 4, 0},
-    {4, 232, 14, 0, 4, 0},
-    {4, 220, 14, 0, 4, 0},
-    {4, 216, 14, 0, 4, 80},
-    {4, 202, 14, 0, 4, 0},
-    {4, 220, 14, 0, 4, 80},
-    {4, 202, 14, 0, 4, 80},
-    {4, 1, 14, 0, 4, 0},
-    {4, 1, 14, 0, 4, 80},
-    {4, 230, 14, 0, 4, 170},
-    {4, 240, 14, 0, 4, 80},
-    {4, 0, 14, 0, 4, 0},
-    {4, 233, 14, 0, 4, 0},
-    {4, 234, 14, 0, 4, 0},
-    {18, 0, 19, 0, 0, 170},
-    {26, 0, 19, 0, 0, 170},
-    {29, 0, 19, 0, 0, 138},
-    {1, 0, 1, 0, 0, 138},
-    {27, 0, 19, 0, 0, 0},
-    {1, 0, 1, 0, 4, 10},
-    {30, 0, 1, 0, 0, 0},
-    {4, 230, 14, 0, 0, 0},
-    {6, 0, 14, 0, 0, 0},
-    {26, 0, 1, 0, 0, 0},
-    {21, 0, 19, 0, 0, 0},
-    {28, 0, 11, 0, 0, 0},
-    {4, 220, 14, 0, 0, 0},
-    {4, 222, 14, 0, 0, 0},
-    {4, 228, 14, 0, 0, 0},
-    {4, 10, 14, 0, 0, 0},
-    {4, 11, 14, 0, 0, 0},
-    {4, 12, 14, 0, 0, 0},
-    {4, 13, 14, 0, 0, 0},
-    {4, 14, 14, 0, 0, 0},
-    {4, 15, 14, 0, 0, 0},
-    {4, 16, 14, 0, 0, 0},
-    {4, 17, 14, 0, 0, 0},
-    {4, 18, 14, 0, 0, 0},
-    {4, 19, 14, 0, 0, 0},
-    {4, 20, 14, 0, 0, 0},
-    {4, 21, 14, 0, 0, 0},
-    {4, 22, 14, 0, 0, 0},
-    {21, 0, 4, 0, 0, 0},
-    {4, 23, 14, 0, 0, 0},
-    {26, 0, 4, 0, 0, 0},
-    {4, 24, 14, 0, 0, 0},
-    {4, 25, 14, 0, 0, 0},
-    {19, 0, 4, 0, 0, 0},
-    {14, 0, 12, 0, 0, 0},
-    {27, 0, 5, 0, 0, 0},
-    {26, 0, 11, 0, 0, 0},
-    {28, 0, 5, 0, 0, 0},
-    {26, 0, 13, 0, 0, 0},
-    {26, 0, 5, 0, 0, 0},
-    {4, 30, 14, 0, 0, 0},
-    {4, 31, 14, 0, 0, 0},
-    {4, 32, 14, 0, 0, 0},
-    {14, 0, 5, 0, 0, 0},
-    {19, 0, 5, 0, 0, 0},
-    {19, 0, 5, 0, 0, 10},
-    {18, 0, 5, 0, 0, 0},
-    {4, 27, 14, 0, 0, 0},
-    {4, 28, 14, 0, 0, 0},
-    {4, 29, 14, 0, 0, 0},
-    {4, 33, 14, 0, 0, 0},
-    {4, 34, 14, 0, 0, 0},
-    {4, 230, 14, 0, 0, 80},
-    {4, 220, 14, 0, 0, 80},
-    {7, 0, 12, 0, 0, 0},
-    {26, 0, 12, 0, 0, 0},
-    {4, 35, 14, 0, 0, 0},
-    {19, 0, 5, 0, 0, 136},
-    {7, 0, 9, 0, 0, 0},
-    {30, 0, 5, 0, 0, 0},
-    {4, 36, 14, 0, 0, 0},
-    {4, 0, 14, 0, 0, 0},
-    {7, 0, 4, 0, 0, 0},
-    {18, 0, 4, 0, 0, 0},
-    {26, 0, 19, 0, 0, 0},
-    {28, 0, 4, 0, 0, 0},
-    {29, 0, 5, 0, 0, 0},
-    {5, 0, 1, 0, 0, 0},
-    {19, 0, 1, 0, 0, 10},
-    {4, 7, 14, 0, 0, 80},
-    {4, 9, 14, 0, 0, 0},
-    {19, 0, 1, 0, 0, 170},
-    {7, 0, 1, 0, 0, 0},
-    {4, 7, 14, 0, 0, 0},
-    {5, 0, 1, 0, 0, 80},
-    {5, 0, 1, 0, 0, 10},
-    {9, 0, 1, 0, 0, 0},
-    {4, 0, 14, 0, 0, 80},
-    {4, 0, 14, 0, 0, 10},
-    {4, 84, 14, 0, 0, 0},
-    {4, 91, 14, 0, 0, 80},
-    {9, 0, 19, 0, 0, 0},
-    {4, 0, 1, 0, 0, 0},
-    {4, 9, 14, 0, 0, 80},
-    {19, 0, 1, 0, 0, 136},
-    {4, 103, 14, 0, 0, 0},
-    {4, 107, 14, 0, 0, 0},
-    {4, 118, 14, 0, 0, 0},
-    {4, 122, 14, 0, 0, 0},
-    {26, 0, 1, 0, 0, 136},
-    {4, 216, 14, 0, 0, 0},
-    {22, 0, 19, 1, 0, 0},
-    {23, 0, 19, 1, 0, 0},
-    {4, 129, 14, 0, 0, 0},
-    {4, 130, 14, 0, 0, 0},
-    {4, 0, 14, 0, 0, 170},
-    {4, 132, 14, 0, 0, 0},
-    {4, 0, 14, 0, 0, 136},
-    {19, 0, 1, 0, 2, 0},
-    {19, 0, 1, 0, 0, 80},
-    {10, 0, 18, 0, 0, 0},
-    {8, 0, 1, 0, 0, 0},
-    {5, 9, 1, 0, 0, 0},
-    {14, 0, 15, 0, 0, 0},
-    {4, 234, 14, 0, 0, 0},
-    {4, 1, 14, 0, 0, 0},
-    {4, 214, 14, 0, 0, 0},
-    {4, 202, 14, 0, 0, 0},
-    {4, 232, 14, 0, 0, 0},
-    {4, 218, 14, 0, 0, 0},
-    {4, 233, 14, 0, 0, 0},
-    {2, 0, 1, 0, 0, 138},
-    {2, 0, 1, 0, 0, 170},
-    {3, 0, 1, 0, 0, 10},
-    {1, 0, 1, 0, 0, 170},
-    {29, 0, 19, 0, 0, 170},
-    {10, 0, 18, 0, 0, 170},
-    {10, 0, 18, 0, 0, 136},
-    {14, 0, 1, 0, 0, 0},
-    {14, 0, 4, 0, 0, 0},
-    {21, 0, 19, 0, 4, 0},
-    {21, 0, 19, 0, 0, 136},
-    {26, 0, 19, 0, 0, 136},
-    {24, 0, 19, 0, 4, 0},
-    {25, 0, 19, 0, 4, 0},
-    {22, 0, 19, 0, 0, 0},
-    {24, 0, 19, 0, 0, 0},
-    {26, 0, 19, 0, 4, 136},
-    {11, 0, 18, 0, 0, 0},
-    {12, 0, 16, 0, 0, 0},
-    {14, 0, 2, 0, 0, 0},
-    {14, 0, 6, 0, 0, 0},
-    {14, 0, 8, 0, 0, 0},
-    {14, 0, 3, 0, 0, 0},
-    {14, 0, 7, 0, 0, 0},
-    {26, 0, 11, 0, 4, 0},
-    {26, 0, 11, 0, 4, 136},
-    {26, 0, 11, 0, 0, 136},
-    {20, 0, 19, 0, 0, 0},
-    {27, 0, 13, 0, 0, 0},
-    {14, 0, 20, 0, 0, 0},
-    {14, 0, 21, 0, 0, 0},
-    {14, 0, 22, 0, 0, 0},
-    {14, 0, 23, 0, 0, 0},
-    {9, 0, 9, 0, 0, 136},
-    {27, 0, 10, 0, 0, 136},
-    {27, 0, 19, 0, 0, 136},
-    {22, 0, 19, 1, 0, 136},
-    {23, 0, 19, 1, 0, 136},
-    {18, 0, 1, 0, 4, 136},
-    {28, 0, 11, 0, 0, 136},
-    {28, 0, 11, 0, 1, 0},
-    {30, 0, 19, 0, 0, 136},
-    {30, 0, 19, 0, 4, 136},
-    {1, 0, 1, 0, 4, 170},
-    {30, 0, 11, 0, 0, 0},
-    {27, 0, 19, 1, 0, 136},
-    {9, 0, 19, 0, 0, 136},
-    {8, 0, 1, 0, 4, 136},
-    {8, 0, 1, 0, 0, 136},
-    {27, 0, 19, 0, 0, 10},
-    {30, 0, 19, 0, 0, 10},
-    {27, 0, 19, 1, 0, 0},
-    {27, 0, 19, 1, 4, 0},
-    {27, 0, 19, 1, 0, 10},
-    {27, 0, 10, 0, 0, 0},
-    {27, 0, 11, 0, 0, 0},
-    {27, 0, 19, 1, 4, 136},
-    {27, 0, 19, 1, 4, 10},
-    {30, 0, 19, 0, 2, 0},
-    {22, 0, 19, 1, 2, 170},
-    {23, 0, 19, 1, 2, 170},
-    {30, 0, 1, 0, 4, 136},
-    {9, 0, 19, 0, 4, 0},
-    {27, 0, 19, 0, 2, 0},
-    {27, 0, 19, 1, 0, 170},
-    {30, 0, 19, 1, 0, 0},
-    {30, 0, 19, 0, 2, 136},
-    {10, 0, 18, 0, 5, 136},
-    {26, 0, 19, 0, 2, 0},
-    {18, 0, 1, 0, 2, 0},
-    {8, 0, 1, 0, 2, 0},
-    {22, 0, 19, 1, 2, 0},
-    {23, 0, 19, 1, 2, 0},
-    {21, 0, 19, 0, 2, 0},
-    {22, 0, 19, 0, 2, 0},
-    {23, 0, 19, 0, 2, 0},
-    {4, 218, 14, 0, 2, 0},
-    {4, 228, 14, 0, 2, 0},
-    {4, 232, 14, 0, 2, 0},
-    {4, 222, 14, 0, 2, 0},
-    {5, 224, 1, 0, 2, 0},
-    {8, 0, 1, 0, 2, 136},
-    {19, 0, 1, 0, 2, 10},
-    {4, 8, 14, 0, 2, 80},
-    {29, 0, 19, 0, 2, 136},
-    {18, 0, 1, 0, 2, 10},
-    {19, 0, 1, 0, 2, 136},
-    {30, 0, 1, 0, 2, 0},
-    {9, 0, 1, 0, 2, 136},
-    {30, 0, 1, 0, 2, 136},
-    {9, 0, 1, 0, 4, 0},
-    {9, 0, 19, 0, 2, 136},
-    {29, 0, 1, 0, 0, 0},
-    {15, 0, 1, 0, 0, 0},
-    {16, 0, 1, 0, 4, 0},
-    {19, 0, 1, 0, 2, 170},
-    {0, 0, 0, 0, 2, 0},
-    {19, 0, 4, 0, 0, 170},
-    {4, 26, 14, 0, 0, 0},
-    {19, 0, 4, 0, 0, 136},
-    {23, 0, 19, 0, 0, 0},
-    {28, 0, 5, 0, 0, 136},
-    {26, 0, 19, 0, 2, 136},
-    {22, 0, 19, 0, 2, 136},
-    {23, 0, 19, 0, 2, 136},
-    {21, 0, 19, 0, 2, 136},
-    {20, 0, 19, 0, 2, 136},
-    {26, 0, 13, 0, 2, 136},
-    {22, 0, 19, 1, 2, 136},
-    {23, 0, 19, 1, 2, 136},
-    {26, 0, 11, 0, 2, 136},
-    {27, 0, 10, 0, 2, 136},
-    {21, 0, 10, 0, 2, 136},
-    {27, 0, 19, 1, 2, 136},
-    {27, 0, 19, 0, 2, 136},
-    {28, 0, 11, 0, 2, 136},
-    {26, 0, 19, 0, 5, 136},
-    {26, 0, 11, 0, 5, 136},
-    {28, 0, 11, 0, 5, 136},
-    {22, 0, 19, 1, 5, 136},
-    {23, 0, 19, 1, 5, 136},
-    {27, 0, 10, 0, 5, 136},
-    {26, 0, 13, 0, 5, 136},
-    {21, 0, 10, 0, 5, 136},
-    {7, 0, 9, 0, 5, 136},
-    {27, 0, 19, 1, 5, 136},
-    {27, 0, 19, 0, 5, 136},
-    {1, 0, 1, 0, 5, 136},
-    {29, 0, 19, 0, 5, 136},
-    {20, 0, 19, 0, 5, 136},
-    {2, 0, 1, 0, 5, 136},
-    {26, 0, 19, 0, 1, 136},
-    {22, 0, 19, 1, 1, 136},
-    {23, 0, 19, 1, 1, 136},
-    {19, 0, 1, 0, 1, 136},
-    {18, 0, 1, 0, 1, 136},
-    {30, 0, 19, 0, 5, 136},
-    {30, 0, 19, 0, 1, 136},
-    {27, 0, 19, 0, 1, 136},
-    {14, 0, 19, 0, 0, 0},
-    {8, 0, 19, 0, 0, 0},
-    {9, 0, 9, 0, 0, 0},
-    {9, 0, 4, 0, 0, 0},
-    {30, 0, 4, 0, 0, 0},
-    {1, 0, 4, 0, 0, 0},
-    {2, 0, 4, 0, 0, 0},
-    {27, 0, 4, 0, 0, 0},
-    {9, 0, 12, 0, 0, 0},
-    {9, 0, 5, 0, 0, 0},
-    {5, 0, 1, 0, 0, 90},
-    {4, 9, 1, 0, 0, 0},
-    {4, 0, 14, 0, 0, 90},
-    {19, 0, 1, 0, 0, 90},
-    {4, 0, 14, 0, 2, 0},
-    {5, 6, 1, 0, 2, 0},
-    {30, 0, 1, 0, 0, 136},
-    {7, 0, 9, 0, 0, 136},
-    {30, 0, 1, 0, 0, 170},
-    {5, 216, 1, 0, 0, 0},
-    {5, 226, 1, 0, 0, 0},
-    {9, 0, 1, 0, 2, 0},
-    {30, 0, 1, 0, 4, 0},
-    {29, 0, 19, 0, 2, 0},
+    {0, 0, 0, 0, 0, 0, 0, 0, 0},
+    {13, 0, 15, 0, 0, 0, 4, 0, 0},
+    {13, 0, 17, 0, 0, 0, 4, 0, 0},
+    {13, 0, 16, 0, 0, 0, 3, 0, 0},
+    {13, 0, 18, 0, 0, 0, 4, 0, 0},
+    {13, 0, 16, 0, 0, 0, 2, 0, 0},
+    {13, 0, 16, 0, 0, 0, 4, 0, 0},
+    {10, 0, 18, 0, 3, 0, 0, 0, 0},
+    {26, 0, 19, 0, 3, 0, 0, 0, 0},
+    {26, 0, 11, 0, 3, 0, 0, 0, 0},
+    {28, 0, 11, 0, 3, 0, 0, 0, 0},
+    {22, 0, 19, 1, 3, 0, 0, 0, 0},
+    {23, 0, 19, 1, 3, 0, 0, 0, 0},
+    {27, 0, 10, 0, 3, 0, 0, 0, 0},
+    {26, 0, 13, 0, 3, 0, 0, 0, 0},
+    {21, 0, 10, 0, 3, 0, 0, 0, 0},
+    {7, 0, 9, 0, 3, 0, 0, 0, 0},
+    {27, 0, 19, 1, 3, 0, 0, 0, 0},
+    {27, 0, 19, 0, 3, 0, 0, 0, 0},
+    {1, 0, 1, 0, 3, 0, 0, 0, 0},
+    {29, 0, 19, 0, 3, 0, 0, 0, 0},
+    {20, 0, 19, 0, 3, 0, 0, 0, 0},
+    {2, 0, 1, 0, 3, 0, 0, 0, 0},
+    {10, 0, 13, 0, 0, 136, 0, 0, 0},
+    {26, 0, 19, 0, 4, 0, 0, 0, 0},
+    {28, 0, 11, 0, 4, 0, 0, 0, 0},
+    {30, 0, 19, 0, 3, 0, 0, 0, 0},
+    {29, 0, 19, 0, 4, 136, 0, 0, 0},
+    {30, 0, 19, 0, 0, 0, 0, 0, 1},
+    {19, 0, 1, 0, 4, 136, 0, 0, 0},
+    {24, 0, 19, 1, 0, 0, 0, 0, 0},
+    {14, 0, 15, 0, 4, 0, 4, 0, 0},
+    {30, 0, 19, 0, 4, 0, 0, 0, 1},
+    {29, 0, 19, 0, 3, 136, 0, 0, 0},
+    {30, 0, 11, 0, 4, 0, 0, 0, 0},
+    {27, 0, 11, 0, 4, 0, 0, 0, 0},
+    {9, 0, 9, 0, 4, 136, 0, 0, 0},
+    {2, 0, 1, 0, 0, 136, 0, 0, 0},
+    {25, 0, 19, 1, 0, 0, 0, 0, 0},
+    {9, 0, 19, 0, 4, 136, 0, 0, 0},
+    {1, 0, 1, 0, 0, 10, 0, 0, 0},
+    {1, 0, 1, 0, 4, 0, 0, 0, 0},
+    {27, 0, 19, 0, 4, 0, 0, 0, 0},
+    {2, 0, 1, 0, 4, 0, 0, 0, 0},
+    {2, 0, 1, 0, 4, 10, 0, 0, 0},
+    {2, 0, 1, 0, 0, 10, 0, 0, 0},
+    {1, 0, 1, 0, 0, 0, 0, 0, 0},
+    {1, 0, 1, 0, 4, 136, 0, 0, 0},
+    {2, 0, 1, 0, 4, 136, 0, 0, 0},
+    {2, 0, 1, 0, 0, 0, 0, 0, 0},
+    {19, 0, 1, 0, 0, 0, 0, 0, 0},
+    {1, 0, 1, 0, 0, 136, 0, 0, 0},
+    {3, 0, 1, 0, 0, 136, 0, 0, 0},
+    {18, 0, 1, 0, 0, 136, 0, 0, 0},
+    {18, 0, 19, 0, 0, 0, 0, 0, 0},
+    {18, 0, 1, 0, 0, 0, 0, 0, 0},
+    {29, 0, 19, 0, 0, 0, 0, 0, 0},
+    {29, 0, 19, 0, 4, 0, 0, 0, 0},
+    {18, 0, 19, 0, 4, 0, 0, 0, 0},
+    {18, 0, 1, 0, 4, 0, 0, 0, 0},
+    {29, 0, 19, 0, 0, 136, 0, 0, 0},
+    {4, 230, 14, 0, 4, 80, 5, 3, 0},
+    {4, 230, 14, 0, 4, 0, 5, 3, 0},
+    {4, 232, 14, 0, 4, 0, 5, 3, 0},
+    {4, 220, 14, 0, 4, 0, 5, 3, 0},
+    {4, 216, 14, 0, 4, 80, 5, 3, 0},
+    {4, 202, 14, 0, 4, 0, 5, 3, 0},
+    {4, 220, 14, 0, 4, 80, 5, 3, 0},
+    {4, 202, 14, 0, 4, 80, 5, 3, 0},
+    {4, 1, 14, 0, 4, 0, 5, 3, 0},
+    {4, 1, 14, 0, 4, 80, 5, 3, 0},
+    {4, 230, 14, 0, 4, 170, 5, 3, 0},
+    {4, 240, 14, 0, 4, 80, 5, 3, 0},
+    {4, 0, 14, 0, 4, 0, 5, 3, 0},
+    {4, 233, 14, 0, 4, 0, 5, 3, 0},
+    {4, 234, 14, 0, 4, 0, 5, 3, 0},
+    {18, 0, 19, 0, 0, 170, 0, 0, 0},
+    {26, 0, 19, 0, 0, 170, 0, 0, 0},
+    {29, 0, 19, 0, 0, 138, 0, 0, 0},
+    {1, 0, 1, 0, 0, 138, 0, 0, 0},
+    {27, 0, 19, 0, 0, 0, 0, 0, 0},
+    {1, 0, 1, 0, 4, 10, 0, 0, 0},
+    {30, 0, 1, 0, 0, 0, 0, 0, 0},
+    {4, 230, 14, 0, 0, 0, 5, 3, 0},
+    {6, 0, 14, 0, 0, 0, 5, 3, 0},
+    {26, 0, 1, 0, 0, 0, 0, 0, 0},
+    {21, 0, 19, 0, 0, 0, 0, 0, 0},
+    {30, 0, 19, 0, 0, 0, 0, 0, 0},
+    {28, 0, 11, 0, 0, 0, 0, 0, 0},
+    {4, 220, 14, 0, 0, 0, 5, 3, 0},
+    {4, 222, 14, 0, 0, 0, 5, 3, 0},
+    {4, 228, 14, 0, 0, 0, 5, 3, 0},
+    {4, 10, 14, 0, 0, 0, 5, 3, 0},
+    {4, 11, 14, 0, 0, 0, 5, 3, 0},
+    {4, 12, 14, 0, 0, 0, 5, 3, 0},
+    {4, 13, 14, 0, 0, 0, 5, 3, 0},
+    {4, 14, 14, 0, 0, 0, 5, 3, 0},
+    {4, 15, 14, 0, 0, 0, 5, 3, 0},
+    {4, 16, 14, 0, 0, 0, 5, 3, 0},
+    {4, 17, 14, 0, 0, 0, 5, 3, 0},
+    {4, 18, 14, 0, 0, 0, 5, 3, 0},
+    {4, 19, 14, 0, 0, 0, 5, 3, 0},
+    {4, 20, 14, 0, 0, 0, 5, 3, 0},
+    {4, 21, 14, 0, 0, 0, 5, 3, 0},
+    {4, 22, 14, 0, 0, 0, 5, 3, 0},
+    {21, 0, 4, 0, 0, 0, 0, 0, 0},
+    {4, 23, 14, 0, 0, 0, 5, 3, 0},
+    {26, 0, 4, 0, 0, 0, 0, 0, 0},
+    {4, 24, 14, 0, 0, 0, 5, 3, 0},
+    {4, 25, 14, 0, 0, 0, 5, 3, 0},
+    {19, 0, 4, 0, 0, 0, 0, 0, 0},
+    {14, 0, 12, 0, 0, 0, 1, 0, 0},
+    {27, 0, 5, 0, 0, 0, 0, 0, 0},
+    {26, 0, 11, 0, 0, 0, 0, 0, 0},
+    {28, 0, 5, 0, 0, 0, 0, 0, 0},
+    {26, 0, 13, 0, 0, 0, 0, 0, 0},
+    {26, 0, 5, 0, 0, 0, 0, 0, 0},
+    {4, 30, 14, 0, 0, 0, 5, 3, 0},
+    {4, 31, 14, 0, 0, 0, 5, 3, 0},
+    {4, 32, 14, 0, 0, 0, 5, 3, 0},
+    {14, 0, 5, 0, 0, 0, 4, 0, 0},
+    {19, 0, 5, 0, 0, 0, 0, 0, 0},
+    {19, 0, 5, 0, 0, 10, 0, 0, 0},
+    {18, 0, 5, 0, 0, 0, 0, 0, 0},
+    {4, 27, 14, 0, 0, 0, 5, 3, 0},
+    {4, 28, 14, 0, 0, 0, 5, 3, 0},
+    {4, 29, 14, 0, 0, 0, 5, 3, 0},
+    {4, 33, 14, 0, 0, 0, 5, 3, 0},
+    {4, 34, 14, 0, 0, 0, 5, 3, 0},
+    {4, 230, 14, 0, 0, 80, 5, 3, 0},
+    {4, 220, 14, 0, 0, 80, 5, 3, 0},
+    {7, 0, 12, 0, 0, 0, 0, 0, 0},
+    {26, 0, 12, 0, 0, 0, 0, 0, 0},
+    {4, 35, 14, 0, 0, 0, 5, 3, 0},
+    {19, 0, 5, 0, 0, 136, 0, 0, 0},
+    {7, 0, 9, 0, 0, 0, 0, 0, 0},
+    {30, 0, 5, 0, 0, 0, 0, 0, 0},
+    {14, 0, 5, 0, 0, 0, 1, 0, 0},
+    {4, 36, 14, 0, 0, 0, 5, 3, 0},
+    {4, 0, 14, 0, 0, 0, 5, 3, 0},
+    {7, 0, 4, 0, 0, 0, 0, 0, 0},
+    {18, 0, 4, 0, 0, 0, 0, 0, 0},
+    {26, 0, 19, 0, 0, 0, 0, 0, 0},
+    {28, 0, 4, 0, 0, 0, 0, 0, 0},
+    {29, 0, 5, 0, 0, 0, 0, 0, 0},
+    {5, 0, 1, 0, 0, 0, 7, 0, 0},
+    {19, 0, 1, 0, 0, 0, 0, 2, 0},
+    {19, 0, 1, 0, 0, 10, 0, 2, 0},
+    {4, 7, 14, 0, 0, 80, 5, 3, 0},
+    {4, 9, 14, 0, 0, 0, 5, 1, 0},
+    {19, 0, 1, 0, 0, 170, 0, 2, 0},
+    {7, 0, 1, 0, 0, 0, 0, 0, 0},
+    {4, 7, 14, 0, 0, 0, 5, 3, 0},
+    {5, 0, 1, 0, 0, 80, 5, 3, 0},
+    {5, 0, 1, 0, 0, 10, 7, 0, 0},
+    {9, 0, 1, 0, 0, 0, 0, 0, 0},
+    {19, 0, 1, 0, 0, 170, 0, 0, 0},
+    {4, 9, 14, 0, 0, 0, 5, 3, 0},
+    {4, 0, 14, 0, 0, 80, 5, 3, 0},
+    {19, 0, 1, 0, 0, 10, 0, 0, 0},
+    {4, 0, 14, 0, 0, 10, 5, 3, 0},
+    {4, 84, 14, 0, 0, 0, 5, 3, 0},
+    {4, 91, 14, 0, 0, 80, 5, 3, 0},
+    {9, 0, 19, 0, 0, 0, 0, 0, 0},
+    {4, 0, 1, 0, 0, 0, 5, 3, 0},
+    {5, 0, 1, 0, 0, 10, 5, 3, 0},
+    {19, 0, 1, 0, 0, 0, 1, 0, 0},
+    {4, 9, 14, 0, 0, 80, 5, 3, 0},
+    {19, 0, 1, 0, 0, 136, 7, 0, 0},
+    {4, 103, 14, 0, 0, 0, 5, 3, 0},
+    {4, 107, 14, 0, 0, 0, 5, 3, 0},
+    {4, 118, 14, 0, 0, 0, 5, 3, 0},
+    {4, 122, 14, 0, 0, 0, 5, 3, 0},
+    {19, 0, 1, 0, 0, 136, 0, 0, 0},
+    {26, 0, 1, 0, 0, 136, 0, 0, 0},
+    {4, 216, 14, 0, 0, 0, 5, 3, 0},
+    {22, 0, 19, 1, 0, 0, 0, 0, 0},
+    {23, 0, 19, 1, 0, 0, 0, 0, 0},
+    {4, 129, 14, 0, 0, 0, 5, 3, 0},
+    {4, 130, 14, 0, 0, 0, 5, 3, 0},
+    {4, 0, 14, 0, 0, 170, 5, 3, 0},
+    {4, 132, 14, 0, 0, 0, 5, 3, 0},
+    {4, 0, 14, 0, 0, 136, 5, 3, 0},
+    {5, 0, 1, 0, 0, 0, 0, 0, 0},
+    {19, 0, 1, 0, 2, 0, 8, 0, 0},
+    {19, 0, 1, 0, 0, 0, 9, 0, 0},
+    {19, 0, 1, 0, 0, 80, 9, 0, 0},
+    {19, 0, 1, 0, 0, 80, 10, 0, 0},
+    {19, 0, 1, 0, 0, 0, 10, 0, 0},
+    {10, 0, 18, 0, 0, 0, 0, 0, 0},
+    {8, 0, 1, 0, 0, 0, 0, 0, 0},
+    {5, 9, 1, 0, 0, 0, 5, 3, 0},
+    {14, 0, 15, 0, 0, 0, 4, 0, 0},
+    {4, 234, 14, 0, 0, 0, 5, 3, 0},
+    {5, 9, 1, 0, 0, 0, 5, 1, 0},
+    {4, 1, 14, 0, 0, 0, 5, 3, 0},
+    {4, 214, 14, 0, 0, 0, 5, 3, 0},
+    {4, 202, 14, 0, 0, 0, 5, 3, 0},
+    {4, 232, 14, 0, 0, 0, 5, 3, 0},
+    {4, 218, 14, 0, 0, 0, 5, 3, 0},
+    {4, 233, 14, 0, 0, 0, 5, 3, 0},
+    {2, 0, 1, 0, 0, 138, 0, 0, 0},
+    {2, 0, 1, 0, 0, 170, 0, 0, 0},
+    {3, 0, 1, 0, 0, 10, 0, 0, 0},
+    {1, 0, 1, 0, 0, 170, 0, 0, 0},
+    {29, 0, 19, 0, 0, 170, 0, 0, 0},
+    {10, 0, 18, 0, 0, 170, 0, 0, 0},
+    {10, 0, 18, 0, 0, 136, 0, 0, 0},
+    {14, 0, 15, 0, 0, 0, 5, 0, 0},
+    {14, 0, 15, 0, 0, 0, 13, 3, 0},
+    {14, 0, 1, 0, 0, 0, 4, 0, 0},
+    {14, 0, 4, 0, 0, 0, 4, 0, 0},
+    {21, 0, 19, 0, 4, 0, 0, 0, 0},
+    {21, 0, 19, 0, 0, 136, 0, 0, 0},
+    {26, 0, 19, 0, 0, 136, 0, 0, 0},
+    {24, 0, 19, 0, 4, 0, 0, 0, 0},
+    {25, 0, 19, 0, 4, 0, 0, 0, 0},
+    {22, 0, 19, 0, 0, 0, 0, 0, 0},
+    {24, 0, 19, 0, 0, 0, 0, 0, 0},
+    {26, 0, 19, 0, 4, 136, 0, 0, 0},
+    {11, 0, 18, 0, 0, 0, 4, 0, 0},
+    {12, 0, 16, 0, 0, 0, 4, 0, 0},
+    {14, 0, 2, 0, 0, 0, 4, 0, 0},
+    {14, 0, 6, 0, 0, 0, 4, 0, 0},
+    {14, 0, 8, 0, 0, 0, 4, 0, 0},
+    {14, 0, 3, 0, 0, 0, 4, 0, 0},
+    {14, 0, 7, 0, 0, 0, 4, 0, 0},
+    {26, 0, 11, 0, 4, 0, 0, 0, 0},
+    {26, 0, 11, 0, 4, 136, 0, 0, 0},
+    {26, 0, 11, 0, 0, 136, 0, 0, 0},
+    {26, 0, 19, 0, 0, 136, 0, 0, 1},
+    {20, 0, 19, 0, 0, 0, 0, 0, 0},
+    {27, 0, 13, 0, 0, 0, 0, 0, 0},
+    {0, 0, 0, 0, 0, 0, 4, 0, 0},
+    {14, 0, 20, 0, 0, 0, 4, 0, 0},
+    {14, 0, 21, 0, 0, 0, 4, 0, 0},
+    {14, 0, 22, 0, 0, 0, 4, 0, 0},
+    {14, 0, 23, 0, 0, 0, 4, 0, 0},
+    {9, 0, 9, 0, 0, 136, 0, 0, 0},
+    {27, 0, 10, 0, 0, 136, 0, 0, 0},
+    {27, 0, 19, 0, 0, 136, 0, 0, 0},
+    {22, 0, 19, 1, 0, 136, 0, 0, 0},
+    {23, 0, 19, 1, 0, 136, 0, 0, 0},
+    {18, 0, 1, 0, 4, 136, 0, 0, 0},
+    {28, 0, 11, 0, 0, 136, 0, 0, 0},
+    {28, 0, 11, 0, 1, 0, 0, 0, 0},
+    {30, 0, 19, 0, 0, 136, 0, 0, 0},
+    {30, 0, 19, 0, 4, 136, 0, 0, 0},
+    {30, 0, 19, 0, 4, 136, 0, 0, 1},
+    {1, 0, 1, 0, 4, 170, 0, 0, 0},
+    {30, 0, 11, 0, 0, 0, 0, 0, 0},
+    {2, 0, 1, 0, 0, 136, 0, 0, 1},
+    {27, 0, 19, 1, 0, 136, 0, 0, 0},
+    {9, 0, 19, 0, 0, 136, 0, 0, 0},
+    {8, 0, 1, 0, 4, 136, 0, 0, 0},
+    {8, 0, 1, 0, 0, 136, 0, 0, 0},
+    {27, 0, 19, 0, 4, 0, 0, 0, 1},
+    {27, 0, 19, 0, 0, 10, 0, 0, 0},
+    {30, 0, 19, 0, 4, 0, 0, 0, 0},
+    {30, 0, 19, 0, 0, 10, 0, 0, 0},
+    {27, 0, 19, 1, 0, 0, 0, 0, 0},
+    {27, 0, 19, 1, 4, 0, 0, 0, 0},
+    {27, 0, 19, 1, 0, 10, 0, 0, 0},
+    {27, 0, 10, 0, 0, 0, 0, 0, 0},
+    {27, 0, 11, 0, 0, 0, 0, 0, 0},
+    {27, 0, 19, 1, 4, 136, 0, 0, 0},
+    {27, 0, 19, 1, 4, 10, 0, 0, 0},
+    {30, 0, 19, 0, 2, 0, 0, 0, 1},
+    {22, 0, 19, 1, 2, 170, 0, 0, 0},
+    {23, 0, 19, 1, 2, 170, 0, 0, 0},
+    {30, 0, 1, 0, 4, 136, 0, 0, 0},
+    {30, 0, 1, 0, 4, 136, 0, 0, 1},
+    {9, 0, 19, 0, 4, 0, 0, 0, 0},
+    {27, 0, 19, 0, 0, 0, 0, 0, 1},
+    {27, 0, 19, 0, 2, 0, 0, 0, 1},
+    {30, 0, 19, 0, 2, 0, 0, 0, 0},
+    {27, 0, 19, 1, 0, 170, 0, 0, 0},
+    {30, 0, 19, 1, 0, 0, 0, 0, 0},
+    {30, 0, 19, 0, 2, 136, 0, 0, 0},
+    {10, 0, 18, 0, 5, 136, 0, 0, 0},
+    {26, 0, 19, 0, 2, 0, 0, 0, 0},
+    {18, 0, 1, 0, 2, 0, 0, 0, 0},
+    {19, 0, 1, 0, 2, 0, 0, 0, 0},
+    {8, 0, 1, 0, 2, 0, 0, 0, 0},
+    {22, 0, 19, 1, 2, 0, 0, 0, 0},
+    {23, 0, 19, 1, 2, 0, 0, 0, 0},
+    {21, 0, 19, 0, 2, 0, 0, 0, 0},
+    {22, 0, 19, 0, 2, 0, 0, 0, 0},
+    {23, 0, 19, 0, 2, 0, 0, 0, 0},
+    {4, 218, 14, 0, 2, 0, 5, 3, 0},
+    {4, 228, 14, 0, 2, 0, 5, 3, 0},
+    {4, 232, 14, 0, 2, 0, 5, 3, 0},
+    {4, 222, 14, 0, 2, 0, 5, 3, 0},
+    {5, 224, 1, 0, 2, 0, 5, 3, 0},
+    {21, 0, 19, 0, 2, 0, 0, 0, 1},
+    {8, 0, 1, 0, 2, 136, 0, 0, 0},
+    {26, 0, 19, 0, 2, 0, 0, 0, 1},
+    {19, 0, 1, 0, 2, 10, 0, 0, 0},
+    {4, 8, 14, 0, 2, 80, 5, 3, 0},
+    {29, 0, 19, 0, 2, 136, 0, 0, 0},
+    {18, 0, 1, 0, 2, 10, 0, 0, 0},
+    {19, 0, 1, 0, 2, 136, 0, 0, 0},
+    {30, 0, 1, 0, 2, 0, 0, 0, 0},
+    {9, 0, 1, 0, 2, 136, 0, 0, 0},
+    {30, 0, 1, 0, 2, 136, 0, 0, 0},
+    {9, 0, 1, 0, 4, 0, 0, 0, 0},
+    {9, 0, 19, 0, 2, 136, 0, 0, 0},
+    {30, 0, 1, 0, 2, 136, 0, 0, 1},
+    {29, 0, 1, 0, 0, 0, 0, 0, 0},
+    {19, 0, 1, 0, 2, 10, 11, 0, 0},
+    {19, 0, 1, 0, 2, 10, 12, 0, 0},
+    {15, 0, 1, 0, 0, 0, 0, 0, 0},
+    {16, 0, 1, 0, 4, 0, 0, 0, 0},
+    {19, 0, 1, 0, 2, 170, 0, 0, 0},
+    {0, 0, 0, 0, 2, 0, 0, 0, 0},
+    {19, 0, 4, 0, 0, 170, 0, 0, 0},
+    {4, 26, 14, 0, 0, 0, 5, 3, 0},
+    {19, 0, 4, 0, 0, 136, 0, 0, 0},
+    {23, 0, 19, 0, 0, 0, 0, 0, 0},
+    {28, 0, 5, 0, 0, 136, 0, 0, 0},
+    {26, 0, 19, 0, 2, 136, 0, 0, 0},
+    {22, 0, 19, 0, 2, 136, 0, 0, 0},
+    {23, 0, 19, 0, 2, 136, 0, 0, 0},
+    {21, 0, 19, 0, 2, 136, 0, 0, 0},
+    {20, 0, 19, 0, 2, 136, 0, 0, 0},
+    {26, 0, 13, 0, 2, 136, 0, 0, 0},
+    {22, 0, 19, 1, 2, 136, 0, 0, 0},
+    {23, 0, 19, 1, 2, 136, 0, 0, 0},
+    {26, 0, 11, 0, 2, 136, 0, 0, 0},
+    {27, 0, 10, 0, 2, 136, 0, 0, 0},
+    {21, 0, 10, 0, 2, 136, 0, 0, 0},
+    {27, 0, 19, 1, 2, 136, 0, 0, 0},
+    {27, 0, 19, 0, 2, 136, 0, 0, 0},
+    {28, 0, 11, 0, 2, 136, 0, 0, 0},
+    {26, 0, 19, 0, 5, 136, 0, 0, 0},
+    {26, 0, 11, 0, 5, 136, 0, 0, 0},
+    {28, 0, 11, 0, 5, 136, 0, 0, 0},
+    {22, 0, 19, 1, 5, 136, 0, 0, 0},
+    {23, 0, 19, 1, 5, 136, 0, 0, 0},
+    {27, 0, 10, 0, 5, 136, 0, 0, 0},
+    {26, 0, 13, 0, 5, 136, 0, 0, 0},
+    {21, 0, 10, 0, 5, 136, 0, 0, 0},
+    {7, 0, 9, 0, 5, 136, 0, 0, 0},
+    {27, 0, 19, 1, 5, 136, 0, 0, 0},
+    {27, 0, 19, 0, 5, 136, 0, 0, 0},
+    {1, 0, 1, 0, 5, 136, 0, 0, 0},
+    {29, 0, 19, 0, 5, 136, 0, 0, 0},
+    {20, 0, 19, 0, 5, 136, 0, 0, 0},
+    {2, 0, 1, 0, 5, 136, 0, 0, 0},
+    {26, 0, 19, 0, 1, 136, 0, 0, 0},
+    {22, 0, 19, 1, 1, 136, 0, 0, 0},
+    {23, 0, 19, 1, 1, 136, 0, 0, 0},
+    {19, 0, 1, 0, 1, 136, 0, 0, 0},
+    {18, 0, 1, 0, 1, 136, 0, 0, 0},
+    {18, 0, 1, 0, 1, 136, 5, 3, 0},
+    {30, 0, 19, 0, 5, 136, 0, 0, 0},
+    {30, 0, 19, 0, 1, 136, 0, 0, 0},
+    {27, 0, 19, 0, 1, 136, 0, 0, 0},
+    {14, 0, 19, 0, 0, 0, 4, 0, 0},
+    {8, 0, 19, 0, 0, 0, 0, 0, 0},
+    {9, 0, 9, 0, 0, 0, 0, 0, 0},
+    {9, 0, 4, 0, 0, 0, 0, 0, 0},
+    {30, 0, 4, 0, 0, 0, 0, 0, 0},
+    {19, 0, 4, 0, 0, 0, 0, 2, 0},
+    {1, 0, 4, 0, 0, 0, 0, 0, 0},
+    {2, 0, 4, 0, 0, 0, 0, 0, 0},
+    {27, 0, 4, 0, 0, 0, 0, 0, 0},
+    {9, 0, 12, 0, 0, 0, 0, 0, 0},
+    {9, 0, 5, 0, 0, 0, 0, 0, 0},
+    {14, 0, 1, 0, 0, 0, 1, 0, 0},
+    {5, 0, 1, 0, 0, 90, 5, 3, 0},
+    {4, 9, 1, 0, 0, 0, 5, 3, 0},
+    {4, 0, 14, 0, 0, 90, 5, 3, 0},
+    {19, 0, 1, 0, 0, 90, 9, 0, 0},
+    {19, 0, 1, 0, 0, 10, 9, 0, 0},
+    {4, 0, 14, 0, 2, 0, 5, 3, 0},
+    {5, 6, 1, 0, 2, 0, 5, 3, 0},
+    {30, 0, 1, 0, 0, 136, 0, 0, 0},
+    {7, 0, 9, 0, 0, 136, 0, 0, 0},
+    {30, 0, 1, 0, 0, 170, 0, 0, 0},
+    {5, 216, 1, 0, 0, 0, 5, 3, 0},
+    {5, 226, 1, 0, 0, 0, 5, 3, 0},
+    {9, 0, 1, 0, 2, 0, 0, 0, 0},
+    {0, 0, 0, 0, 0, 0, 0, 0, 1},
+    {30, 0, 1, 0, 4, 0, 0, 0, 0},
+    {30, 0, 1, 0, 4, 0, 0, 0, 1},
+    {30, 0, 1, 0, 2, 0, 0, 0, 1},
+    {30, 0, 1, 0, 0, 0, 6, 0, 0},
+    {29, 0, 19, 0, 2, 0, 5, 3, 0},
+    {14, 0, 15, 0, 0, 0, 5, 3, 0},
 };
 
 /* Reindexing of NFC first characters. */
@@ -707,6 +749,48 @@ const char *_PyUnicode_EastAsianWidthNames[] = {
     "F",
     NULL
 };
+#define GCB_Other 0
+#define GCB_Prepend 1
+#define GCB_CR 2
+#define GCB_LF 3
+#define GCB_Control 4
+#define GCB_Extend 5
+#define GCB_Regional_Indicator 6
+#define GCB_SpacingMark 7
+#define GCB_L 8
+#define GCB_V 9
+#define GCB_T 10
+#define GCB_LV 11
+#define GCB_LVT 12
+#define GCB_ZWJ 13
+const char * const _PyUnicode_GraphemeBreakNames[] = {
+    "Other",
+    "Prepend",
+    "CR",
+    "LF",
+    "Control",
+    "Extend",
+    "Regional_Indicator",
+    "SpacingMark",
+    "L",
+    "V",
+    "T",
+    "LV",
+    "LVT",
+    "ZWJ",
+    NULL
+};
+#define InCB_None 0
+#define InCB_Linker 1
+#define InCB_Consonant 2
+#define InCB_Extend 3
+const char * const _PyUnicode_IndicConjunctBreakNames[] = {
+    "None",
+    "Linker",
+    "Consonant",
+    "Extend",
+    NULL
+};
 static const char *decomp_prefix[] = {
     "",
     "<noBreak>",
@@ -752,55 +836,55 @@ static const unsigned short index1[] = {
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 103, 101, 101, 101, 101, 101, 101, 101, 101, 104, 41, 41, 105, 106,
-    107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
-    117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 118,
-    119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
-    119, 119, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 121, 121, 122, 123,
-    124, 125, 126, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
-    137, 138, 139, 140, 141, 142, 143, 144, 41, 41, 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, 137, 173, 174, 175, 176,
-    137, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 137,
-    189, 190, 191, 41, 41, 41, 41, 41, 41, 41, 192, 193, 41, 194, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 195, 41, 41, 41, 41, 41, 41, 41, 41, 196, 41, 41, 41,
+    107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 120,
+    121, 122, 123, 117, 118, 119, 120, 121, 122, 123, 117, 118, 119, 124,
+    125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+    125, 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, 127, 127, 128, 129,
+    130, 131, 132, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
+    143, 144, 145, 146, 147, 148, 149, 150, 41, 41, 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, 143, 179, 180, 181, 182,
+    143, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 143,
+    195, 196, 197, 41, 41, 41, 41, 41, 41, 41, 198, 199, 41, 200, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 201, 41, 41, 41, 41, 41, 41, 41, 41, 202, 41, 41, 41,
     41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
-    41, 41, 41, 41, 41, 41, 41, 41, 41, 134, 41, 41, 41, 41, 197, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 198, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 41, 41, 41, 41, 199, 200,
-    201, 202, 137, 137, 203, 137, 204, 205, 206, 207, 101, 101, 101, 101,
+    41, 41, 41, 41, 41, 41, 41, 41, 41, 140, 41, 41, 41, 41, 203, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 204, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 41, 41, 41, 41, 205, 206,
+    207, 208, 143, 143, 209, 143, 210, 211, 212, 213, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 208, 209, 210,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 211, 101, 101,
-    212, 101, 101, 213, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 214, 215, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 216, 217,
-    216, 216, 216, 218, 219, 220, 78, 221, 222, 223, 224, 225, 226, 137, 227,
-    228, 229, 230, 231, 232, 233, 234, 78, 78, 78, 78, 235, 236, 137, 137,
-    137, 137, 137, 137, 137, 137, 237, 137, 238, 239, 240, 137, 137, 241,
-    137, 137, 137, 242, 137, 243, 137, 244, 137, 245, 246, 247, 248, 137,
-    137, 137, 137, 137, 249, 250, 251, 137, 252, 253, 137, 137, 254, 255,
-    256, 257, 258, 137, 259, 260, 261, 262, 263, 264, 265, 266, 216, 267,
-    268, 269, 270, 271, 272, 273, 216, 274, 137, 137, 137, 137, 137, 137,
-    137, 137, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
+    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 214, 215, 216,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 217, 101, 101,
+    218, 101, 101, 219, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 220, 221, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 222, 223,
+    222, 222, 222, 224, 225, 226, 78, 227, 228, 229, 230, 231, 232, 143, 233,
+    234, 235, 236, 237, 238, 239, 240, 78, 78, 78, 78, 241, 242, 143, 143,
+    143, 143, 143, 143, 143, 143, 243, 143, 244, 245, 246, 143, 143, 247,
+    143, 143, 143, 248, 143, 249, 143, 250, 143, 251, 252, 253, 254, 143,
+    143, 143, 143, 143, 255, 256, 257, 143, 258, 259, 143, 143, 260, 261,
+    262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 222, 274,
+    275, 276, 277, 278, 279, 280, 222, 281, 265, 265, 265, 265, 265, 265,
+    265, 282, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
@@ -823,1434 +907,1219 @@ static const unsigned short index1[] = {
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 275,
+    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 283,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 276, 101, 101, 101, 101, 101, 101, 101,
+    101, 101, 101, 101, 101, 101, 284, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 101, 101, 101, 277, 101, 101, 101, 101,
+    101, 101, 101, 101, 101, 101, 101, 101, 101, 285, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 278, 101, 101,
-    101, 101, 279, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 121, 121, 121, 121, 281, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 282, 101, 101, 101, 101,
+    101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 286, 101, 101,
+    101, 101, 287, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 127, 127, 127, 127, 289, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 290, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 101, 101, 101, 101, 283, 101, 101, 101, 101, 101, 101, 101,
+    101, 101, 101, 101, 101, 101, 291, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
     101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
-    101, 101, 284, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 282, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    285, 137, 286, 287, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
-    137, 137, 137, 137, 137, 137, 137, 137, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 288, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
-    120, 120, 120, 120, 120, 120, 120, 120, 120, 288,
+    101, 101, 292, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
+    288, 288, 288, 290, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    293, 294, 295, 296, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
+    294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
+    294, 294, 294, 294, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
+    143, 143, 143, 143, 143, 143, 143, 143, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 297, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
+    126, 126, 126, 126, 126, 126, 126, 126, 126, 297,
 };
 
 static const unsigned short index2[] = {
-    1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 2, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
-    1, 1, 1, 1, 3, 3, 3, 2, 5, 6, 6, 7, 8, 7, 6, 6, 9, 10, 6, 11, 12, 13, 12,
-    12, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 12, 6, 15, 16, 15, 6, 6, 17,
-    17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
-    17, 17, 17, 17, 17, 17, 17, 9, 6, 10, 18, 19, 18, 20, 20, 20, 20, 20, 20,
-    20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
-    20, 20, 9, 16, 10, 16, 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, 21, 22, 8, 8, 23, 8, 24,
-    22, 25, 26, 27, 28, 16, 29, 30, 31, 32, 33, 34, 34, 25, 35, 22, 22, 25,
-    34, 27, 36, 37, 37, 37, 22, 38, 38, 38, 38, 38, 38, 39, 38, 38, 38, 38,
-    38, 38, 38, 38, 38, 39, 38, 38, 38, 38, 38, 38, 40, 39, 38, 38, 38, 38,
-    38, 39, 41, 42, 42, 43, 43, 43, 43, 41, 43, 42, 42, 42, 43, 42, 42, 43,
-    43, 41, 43, 42, 42, 43, 43, 43, 40, 41, 42, 42, 43, 42, 43, 41, 43, 38,
-    42, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 44, 41, 38,
-    42, 38, 43, 38, 43, 38, 43, 38, 42, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 39, 41, 38, 43, 38, 42, 38, 43, 38, 43, 38, 41, 45, 46, 38, 43, 38,
-    43, 41, 38, 43, 38, 43, 38, 43, 45, 46, 39, 41, 38, 42, 38, 43, 38, 42,
-    46, 39, 41, 38, 42, 38, 43, 38, 43, 39, 41, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 39, 41, 38, 43, 38, 42, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 38, 43, 38, 43, 38, 43,
-    35, 47, 44, 44, 47, 44, 47, 44, 44, 47, 44, 44, 44, 47, 47, 44, 44, 44,
-    44, 47, 44, 44, 47, 44, 44, 44, 47, 47, 47, 44, 44, 47, 44, 38, 43, 44,
-    47, 44, 47, 44, 44, 47, 44, 47, 47, 44, 47, 44, 38, 43, 44, 44, 44, 47,
-    44, 47, 44, 44, 47, 47, 48, 44, 47, 47, 47, 48, 48, 48, 48, 49, 50, 35,
-    49, 50, 35, 49, 50, 35, 38, 42, 38, 42, 38, 42, 38, 42, 38, 42, 38, 42,
-    38, 42, 38, 42, 47, 38, 43, 38, 43, 38, 43, 44, 47, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 43, 49, 50, 35, 38, 43, 44, 44, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 44, 47, 38, 43, 44,
-    47, 44, 47, 44, 47, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 47, 47, 47, 47, 47, 47, 44, 44, 47, 44, 44, 47, 47, 44, 47, 44, 44,
-    44, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 47, 41, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 41, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 48, 48, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 52, 52, 53, 53, 53, 53, 53, 53, 53, 54,
-    54, 55, 54, 52, 56, 52, 56, 56, 56, 52, 56, 52, 52, 57, 53, 54, 54, 54,
-    54, 54, 54, 25, 25, 25, 25, 58, 25, 54, 55, 51, 51, 51, 51, 51, 54, 54,
-    54, 54, 54, 54, 54, 52, 54, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-    54, 54, 54, 54, 54, 54, 54, 59, 59, 59, 59, 59, 60, 59, 59, 59, 59, 59,
-    59, 59, 60, 60, 59, 60, 59, 60, 59, 59, 61, 62, 62, 62, 62, 61, 63, 62,
-    62, 62, 62, 62, 64, 64, 65, 65, 65, 65, 66, 66, 62, 62, 62, 62, 65, 65,
-    62, 65, 65, 62, 62, 67, 67, 67, 67, 68, 62, 62, 62, 62, 60, 60, 60, 69,
-    69, 59, 69, 69, 70, 60, 62, 62, 62, 60, 60, 60, 62, 62, 71, 60, 60, 60,
-    62, 62, 62, 62, 60, 61, 62, 62, 60, 72, 73, 73, 72, 73, 73, 72, 60, 60,
-    60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 44, 47, 44, 47, 74, 54, 44,
-    47, 0, 0, 51, 47, 47, 47, 75, 44, 0, 0, 0, 0, 58, 76, 38, 75, 38, 38, 38,
-    0, 38, 0, 38, 38, 43, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
-    39, 39, 39, 39, 0, 39, 39, 39, 39, 39, 39, 39, 38, 38, 43, 43, 43, 43,
-    43, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
-    47, 41, 41, 41, 41, 41, 41, 41, 43, 43, 43, 43, 43, 44, 35, 35, 49, 77,
-    77, 35, 35, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 35, 35, 35, 47, 49, 35, 78, 44,
-    47, 49, 44, 47, 47, 44, 44, 44, 38, 79, 44, 38, 44, 44, 44, 38, 44, 44,
-    44, 44, 38, 38, 38, 44, 39, 39, 39, 39, 39, 39, 39, 39, 39, 79, 39, 39,
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 2, 4, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+    1, 1, 1, 1, 6, 6, 6, 2, 7, 8, 8, 9, 10, 9, 8, 8, 11, 12, 8, 13, 14, 15,
+    14, 14, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 14, 8, 17, 18, 17, 8, 8,
+    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, 11, 8, 12, 20, 21, 20, 22, 22, 22, 22,
+    22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
+    22, 22, 22, 22, 11, 18, 12, 18, 1, 1, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1,
+    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 23, 24, 10, 10,
+    25, 10, 26, 24, 27, 28, 29, 30, 18, 31, 32, 33, 34, 35, 36, 36, 27, 37,
+    24, 24, 27, 36, 29, 38, 39, 39, 39, 24, 40, 40, 40, 40, 40, 40, 41, 40,
+    40, 40, 40, 40, 40, 40, 40, 40, 41, 40, 40, 40, 40, 40, 40, 42, 41, 40,
+    40, 40, 40, 40, 41, 43, 44, 44, 45, 45, 45, 45, 43, 45, 44, 44, 44, 45,
+    44, 44, 45, 45, 43, 45, 44, 44, 45, 45, 45, 42, 43, 44, 44, 45, 44, 45,
+    43, 45, 40, 44, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    46, 43, 40, 44, 40, 45, 40, 45, 40, 45, 40, 44, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 41, 43, 40, 45, 40, 44, 40, 45, 40, 45, 40, 43, 47, 48,
+    40, 45, 40, 45, 43, 40, 45, 40, 45, 40, 45, 47, 48, 41, 43, 40, 44, 40,
+    45, 40, 44, 48, 41, 43, 40, 44, 40, 45, 40, 45, 41, 43, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 41, 43, 40, 45,
+    40, 44, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 40, 45, 40,
+    45, 40, 45, 37, 49, 46, 46, 49, 46, 49, 46, 46, 49, 46, 46, 46, 49, 49,
+    46, 46, 46, 46, 49, 46, 46, 49, 46, 46, 46, 49, 49, 49, 46, 46, 49, 46,
+    40, 45, 46, 49, 46, 49, 46, 46, 49, 46, 49, 49, 46, 49, 46, 40, 45, 46,
+    46, 46, 49, 46, 49, 46, 46, 49, 49, 50, 46, 49, 49, 49, 50, 50, 50, 50,
+    51, 52, 37, 51, 52, 37, 51, 52, 37, 40, 44, 40, 44, 40, 44, 40, 44, 40,
+    44, 40, 44, 40, 44, 40, 44, 49, 40, 45, 40, 45, 40, 45, 46, 49, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 45, 51, 52, 37, 40, 45, 46, 46, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 46, 49,
+    40, 45, 46, 49, 46, 49, 46, 49, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 49, 49, 49, 49, 49, 49, 46, 46, 49, 46, 46, 49, 49, 46,
+    49, 46, 46, 46, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 49, 43, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 43, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50, 50, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 53, 53, 53, 53, 53, 53, 53, 53, 53, 54, 54, 55, 55, 55, 55, 55,
+    55, 55, 56, 56, 57, 56, 54, 58, 54, 58, 58, 58, 54, 58, 54, 54, 59, 55,
+    56, 56, 56, 56, 56, 56, 27, 27, 27, 27, 60, 27, 56, 57, 53, 53, 53, 53,
+    53, 56, 56, 56, 56, 56, 56, 56, 54, 56, 55, 56, 56, 56, 56, 56, 56, 56,
+    56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 61, 61, 61, 61, 61, 62, 61, 61,
+    61, 61, 61, 61, 61, 62, 62, 61, 62, 61, 62, 61, 61, 63, 64, 64, 64, 64,
+    63, 65, 64, 64, 64, 64, 64, 66, 66, 67, 67, 67, 67, 68, 68, 64, 64, 64,
+    64, 67, 67, 64, 67, 67, 64, 64, 69, 69, 69, 69, 70, 64, 64, 64, 64, 62,
+    62, 62, 71, 71, 61, 71, 71, 72, 62, 64, 64, 64, 62, 62, 62, 64, 64, 73,
+    62, 62, 62, 64, 64, 64, 64, 62, 63, 64, 64, 62, 74, 75, 75, 74, 75, 75,
+    74, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 46, 49, 46, 49,
+    76, 56, 46, 49, 0, 0, 53, 49, 49, 49, 77, 46, 0, 0, 0, 0, 60, 78, 40, 77,
+    40, 40, 40, 0, 40, 0, 40, 40, 45, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
+    41, 41, 41, 41, 41, 41, 41, 0, 41, 41, 41, 41, 41, 41, 41, 40, 40, 45,
+    45, 45, 45, 45, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43,
+    43, 43, 43, 49, 43, 43, 43, 43, 43, 43, 43, 45, 45, 45, 45, 45, 46, 37,
+    37, 51, 79, 79, 37, 37, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 37, 37, 37, 49, 51,
+    37, 80, 46, 49, 51, 46, 49, 49, 46, 46, 46, 40, 81, 46, 40, 46, 46, 46,
+    40, 46, 46, 46, 46, 40, 40, 40, 46, 41, 41, 41, 41, 41, 41, 41, 41, 41,
+    81, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
+    41, 41, 41, 41, 41, 43, 43, 43, 43, 43, 43, 43, 43, 43, 44, 43, 43, 43,
+    43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43,
+    43, 45, 44, 49, 45, 49, 49, 49, 45, 49, 49, 49, 49, 45, 45, 45, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 40, 45, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 82, 83, 83,
+    83, 83, 83, 84, 84, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 40, 45, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 49, 40, 45, 40, 45, 46, 49, 40, 45, 46, 49, 40, 45, 40, 45, 40,
+    45, 46, 49, 40, 45, 40, 45, 40, 45, 46, 49, 40, 45, 40, 45, 40, 45, 40,
+    45, 40, 45, 40, 45, 46, 49, 40, 45, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 0, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 0, 0, 55, 85, 85, 85, 85,
+    85, 85, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 37, 49, 85, 86, 0, 0, 87, 87, 88, 0, 89, 83, 83, 83,
+    83, 89, 83, 83, 83, 90, 89, 83, 83, 83, 83, 83, 83, 89, 89, 89, 89, 89,
+    89, 83, 83, 89, 83, 83, 90, 91, 83, 92, 93, 94, 95, 96, 97, 98, 99, 100,
+    101, 101, 102, 103, 104, 105, 106, 107, 108, 109, 107, 83, 89, 107, 100,
+    0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 0, 0, 0, 0, 110, 110, 110, 110, 107, 107, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 111, 111, 111, 111, 111, 111, 80, 80, 112, 113, 113,
+    114, 115, 116, 87, 87, 83, 83, 83, 83, 83, 83, 83, 83, 117, 118, 119,
+    116, 120, 116, 116, 116, 121, 121, 122, 122, 122, 122, 122, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 123, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 124, 125, 126, 117, 118, 119, 127, 128,
+    129, 129, 130, 89, 83, 83, 83, 83, 83, 89, 83, 83, 89, 131, 131, 131,
+    131, 131, 131, 131, 131, 131, 131, 113, 132, 132, 116, 121, 121, 133,
+    121, 121, 121, 121, 134, 134, 134, 134, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 122, 121, 122, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    122, 116, 121, 83, 83, 83, 83, 83, 83, 83, 111, 87, 83, 83, 83, 83, 89,
+    83, 123, 123, 83, 83, 87, 89, 83, 83, 89, 121, 121, 135, 135, 135, 135,
+    135, 135, 135, 135, 135, 135, 121, 121, 121, 136, 136, 121, 116, 116,
+    116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 0, 137, 121,
+    138, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 83, 89, 83, 83, 89, 83, 83, 89, 89, 89, 83, 89, 89, 83,
+    89, 83, 83, 83, 89, 83, 89, 83, 89, 83, 89, 83, 83, 0, 0, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 121, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 140, 140, 140, 140, 140, 140,
+    140, 140, 140, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 83, 83, 83, 83, 83, 83, 83, 89,
+    83, 141, 141, 87, 142, 142, 142, 141, 0, 0, 89, 143, 143, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 83, 83, 83, 83, 141, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 141, 83, 83, 83, 141, 83, 83, 83, 83, 83, 0, 0, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 89, 89, 89, 0, 0, 107, 0,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 0, 0, 0, 0, 0,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 144, 121, 121, 121,
+    121, 121, 121, 121, 111, 111, 0, 0, 0, 0, 0, 83, 83, 89, 89, 89, 83, 83,
+    83, 83, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    123, 83, 83, 83, 83, 83, 89, 89, 89, 89, 89, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 111, 89, 83, 83, 89, 83, 83, 89, 83, 83, 83,
+    89, 89, 89, 124, 125, 126, 83, 83, 83, 89, 83, 83, 89, 89, 83, 83, 83,
+    83, 83, 139, 139, 139, 145, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 147, 146, 146, 146,
+    146, 146, 146, 146, 147, 146, 146, 147, 146, 146, 146, 146, 146, 139,
+    145, 148, 50, 145, 145, 145, 139, 139, 139, 139, 139, 139, 139, 139, 145,
+    145, 145, 145, 149, 145, 145, 50, 83, 89, 83, 83, 139, 139, 139, 150,
+    150, 150, 150, 150, 150, 150, 150, 50, 50, 139, 139, 85, 85, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 85, 55, 50, 50, 50, 50, 50, 50,
+    146, 146, 146, 146, 146, 146, 146, 146, 50, 139, 145, 145, 0, 50, 50, 50,
+    50, 50, 50, 50, 50, 0, 0, 50, 50, 0, 0, 50, 50, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 0, 146, 146, 146, 146, 146, 146, 146, 0, 146, 0, 0, 0, 146, 146,
+    146, 146, 0, 0, 152, 50, 153, 145, 145, 139, 139, 139, 139, 0, 0, 145,
+    145, 0, 0, 154, 154, 149, 50, 0, 0, 0, 0, 0, 0, 0, 0, 153, 0, 0, 0, 0,
+    150, 150, 0, 150, 50, 50, 139, 139, 0, 0, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 146, 146, 88, 88, 155, 155, 155, 155, 155, 155, 82,
+    88, 50, 85, 83, 0, 0, 139, 139, 145, 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,
+    156, 0, 50, 156, 0, 50, 50, 0, 0, 152, 0, 145, 145, 145, 139, 139, 0, 0,
+    0, 0, 139, 139, 0, 0, 139, 139, 157, 0, 0, 0, 139, 0, 0, 0, 0, 0, 0, 0,
+    156, 156, 156, 50, 0, 156, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 139, 139, 50, 50, 50, 139, 85, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 139, 139, 145, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50,
+    50, 50, 0, 50, 50, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 146, 146, 146, 146, 146,
+    146, 146, 0, 146, 146, 0, 146, 146, 146, 146, 146, 0, 0, 152, 50, 145,
+    145, 145, 139, 139, 139, 139, 139, 0, 139, 139, 145, 0, 145, 145, 149, 0,
+    0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 139, 139, 0,
+    0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 85, 88, 0, 0, 0, 0,
+    0, 0, 0, 146, 139, 139, 139, 139, 139, 139, 0, 139, 145, 145, 0, 50, 50,
+    50, 50, 50, 50, 50, 50, 0, 0, 50, 50, 0, 0, 50, 50, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 0, 146, 146, 146, 146, 146, 146, 146, 0, 146, 146, 0, 146, 146,
+    146, 146, 146, 0, 0, 152, 50, 153, 139, 145, 139, 139, 139, 139, 0, 0,
+    145, 154, 0, 0, 154, 154, 149, 0, 0, 0, 0, 0, 0, 0, 139, 158, 153, 0, 0,
+    0, 0, 150, 150, 0, 146, 50, 50, 139, 139, 0, 0, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 82, 146, 155, 155, 155, 155, 155, 155, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 139, 50, 0, 50, 50, 50, 50, 50, 50, 0, 0, 0, 50, 50,
+    50, 0, 50, 50, 159, 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, 153, 145, 139, 145, 145, 0, 0, 0, 145, 145, 145, 0,
+    154, 154, 154, 157, 0, 0, 50, 0, 0, 0, 0, 0, 0, 153, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    155, 155, 155, 87, 87, 87, 87, 87, 87, 88, 87, 0, 0, 0, 0, 0, 139, 145,
+    145, 145, 139, 50, 50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 50, 50,
+    50, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 0, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 152, 50, 139, 139, 139,
+    145, 145, 145, 145, 0, 139, 139, 160, 0, 139, 139, 139, 149, 0, 0, 0, 0,
+    0, 0, 0, 161, 162, 0, 146, 146, 146, 0, 50, 50, 0, 0, 50, 50, 139, 139,
+    0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0,
+    0, 85, 163, 163, 163, 163, 163, 163, 163, 82, 50, 139, 145, 145, 85, 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, 152, 50,
+    145, 164, 165, 145, 153, 145, 145, 0, 164, 165, 165, 0, 165, 165, 139,
+    157, 0, 0, 0, 0, 0, 0, 0, 153, 153, 0, 0, 0, 0, 0, 50, 50, 50, 0, 50, 50,
+    139, 139, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 50,
+    50, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 139, 145, 145, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 0, 50, 50, 50, 0, 50, 50, 50, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 157, 157, 50, 153, 145, 145, 139, 139,
+    139, 139, 0, 145, 145, 145, 0, 154, 154, 154, 149, 166, 82, 0, 0, 0, 0,
+    50, 50, 50, 153, 155, 155, 155, 155, 155, 155, 155, 50, 50, 50, 139, 139,
+    0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 82, 50, 50, 50, 50, 50, 50, 0, 139, 145,
+    145, 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, 167, 0, 0, 0,
+    0, 153, 145, 145, 139, 139, 139, 0, 139, 0, 145, 145, 154, 145, 154, 154,
+    154, 153, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 0, 0, 145, 145, 85, 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, 139, 50, 168, 139, 139, 139, 139,
+    169, 169, 157, 0, 0, 0, 0, 88, 50, 50, 50, 50, 50, 50, 55, 139, 170, 170,
+    170, 170, 139, 139, 139, 85, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 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, 0, 50, 0, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 139, 50, 168, 139, 139, 139, 139, 171, 171, 157, 139,
+    139, 50, 0, 0, 50, 50, 50, 50, 50, 0, 55, 0, 172, 172, 172, 172, 139,
+    139, 139, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 173,
+    173, 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, 50, 82, 82, 82, 85, 85, 85, 85, 85,
+    85, 85, 85, 174, 85, 85, 85, 85, 85, 85, 82, 85, 82, 82, 82, 89, 89, 82,
+    82, 82, 82, 82, 82, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 82, 89, 82, 89, 82,
+    175, 176, 177, 176, 177, 145, 145, 50, 50, 50, 156, 50, 50, 50, 50, 0,
+    50, 50, 50, 50, 156, 50, 50, 50, 50, 156, 50, 50, 50, 50, 156, 50, 50,
+    50, 50, 156, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 156, 50, 50,
+    50, 0, 0, 0, 0, 178, 179, 180, 181, 180, 180, 182, 180, 182, 179, 179,
+    179, 179, 139, 145, 179, 180, 83, 83, 157, 85, 83, 83, 50, 50, 50, 50,
+    50, 139, 139, 139, 139, 139, 139, 180, 139, 139, 139, 139, 0, 139, 139,
+    139, 139, 180, 139, 139, 139, 139, 180, 139, 139, 139, 139, 180, 139,
+    139, 139, 139, 180, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 180, 139, 139, 139, 0, 82, 82, 82, 82, 82, 82, 82, 82, 89, 82,
+    82, 82, 82, 82, 82, 0, 82, 82, 85, 85, 85, 85, 85, 82, 82, 82, 82, 85,
+    85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 147, 146, 146, 146, 146, 183, 183, 139, 158, 139,
+    139, 145, 139, 139, 139, 139, 139, 152, 183, 149, 157, 145, 145, 139,
+    139, 146, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 85, 85, 85,
+    85, 85, 85, 146, 146, 146, 146, 146, 146, 145, 145, 139, 139, 146, 146,
+    146, 146, 139, 139, 139, 146, 183, 183, 183, 146, 146, 183, 183, 183,
+    183, 183, 183, 183, 146, 146, 146, 139, 139, 139, 139, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 139, 183, 145, 139,
+    139, 183, 183, 183, 183, 183, 183, 89, 146, 183, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 183, 183, 183, 139, 82, 82, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 0, 46, 0, 0,
+    0, 0, 0, 46, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 85, 53, 49, 49, 49, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 185, 186, 186,
+    186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
+    186, 186, 186, 186, 186, 185, 185, 185, 185, 185, 185, 185, 185, 185,
+    185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
+    185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
+    185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 187,
+    187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+    187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 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, 83, 83, 83, 85, 85, 85, 85, 85, 85, 85, 85, 85, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 0,
+    0, 0, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 0, 0, 49,
+    49, 49, 49, 49, 49, 0, 0, 86, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 82, 85, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 189, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 176, 177, 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, 85, 85, 85, 190, 190, 190,
+    50, 50, 50, 50, 50, 50, 50, 50, 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, 139, 139, 157, 191,
+    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, 139, 139, 191, 85, 85, 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, 139, 139, 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, 139, 139, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    139, 139, 145, 139, 139, 139, 139, 139, 139, 139, 145, 145, 145, 145,
+    145, 145, 145, 145, 139, 145, 145, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 149, 139, 85, 85, 85, 55, 85, 85, 85, 88, 50, 83, 0, 0, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 163, 163,
+    163, 163, 163, 163, 163, 163, 163, 163, 0, 0, 0, 0, 0, 0, 142, 142, 142,
+    142, 142, 142, 86, 142, 142, 142, 142, 139, 139, 139, 192, 139, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 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, 55, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 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,
+    50, 50, 50, 50, 50, 139, 139, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 91, 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, 50, 50, 0, 139, 139, 139, 145, 145,
+    145, 145, 139, 139, 145, 145, 145, 0, 0, 0, 0, 145, 145, 139, 145, 145,
+    145, 145, 145, 145, 90, 83, 89, 0, 0, 0, 0, 87, 0, 0, 0, 142, 142, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 50, 50, 50, 50, 50, 50, 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, 50, 50, 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, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 155, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 83, 89, 145, 145, 139, 0, 0, 85, 85, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 145, 139, 145, 139,
+    139, 139, 139, 139, 139, 139, 0, 149, 183, 139, 183, 183, 139, 139, 139,
+    139, 139, 139, 139, 139, 145, 145, 145, 145, 145, 145, 139, 139, 83, 83,
+    83, 83, 83, 83, 83, 83, 0, 0, 89, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 0, 0, 0, 0, 0, 0, 85, 85, 85, 85, 85, 85, 85, 55, 85, 85, 85, 85,
+    85, 85, 0, 0, 83, 83, 83, 83, 83, 89, 89, 89, 89, 89, 89, 83, 83, 89, 84,
+    89, 89, 83, 83, 89, 89, 83, 83, 83, 83, 83, 89, 83, 83, 83, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 89, 0, 0, 83, 83, 83, 83,
+    83, 83, 89, 83, 83, 83, 83, 193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 139, 139, 139, 139, 145, 50, 159, 50, 159, 50, 159,
+    146, 147, 50, 159, 50, 50, 50, 159, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 152, 153,
+    139, 139, 139, 139, 139, 165, 139, 165, 145, 145, 154, 154, 139, 165,
+    194, 146, 146, 146, 146, 146, 146, 146, 146, 0, 85, 85, 151, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 85, 85, 85, 85, 85, 85, 85, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 83, 89, 83, 83, 83, 83, 83, 83, 83, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 85, 85, 85, 139, 139, 145, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 145,
+    139, 139, 139, 139, 145, 145, 139, 139, 191, 149, 139, 139, 146, 146,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 50, 146, 146, 146, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 152, 145, 139, 139, 145, 145, 145, 139, 145, 139, 139, 139,
+    191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 85, 85, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 145, 145, 145, 145, 145,
+    145, 145, 145, 139, 139, 139, 139, 139, 139, 139, 139, 145, 145, 139,
+    152, 0, 0, 0, 85, 85, 85, 85, 85, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 0, 0, 0, 50, 50, 50, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 55, 55, 55, 55,
+    55, 55, 85, 85, 49, 49, 49, 49, 49, 49, 49, 49, 49, 46, 49, 0, 0, 0, 0,
+    0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 0, 0, 46, 46, 46, 85, 85, 85, 85, 85, 85,
+    85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 83, 85, 195, 89, 89, 89, 89, 89,
+    83, 83, 89, 89, 89, 89, 83, 145, 195, 195, 195, 195, 195, 195, 195, 50,
+    50, 50, 50, 89, 50, 50, 50, 50, 50, 50, 83, 50, 50, 145, 83, 83, 50, 0,
+    0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 53, 53, 53, 55, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 55, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 55, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 53, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 83, 83, 89,
+    83, 83, 83, 83, 83, 83, 83, 89, 83, 83, 193, 196, 89, 197, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 198, 91,
+    91, 89, 199, 83, 200, 89, 83, 89, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 45, 45, 45, 45,
+    37, 201, 49, 49, 46, 49, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45, 40, 45,
+    40, 45, 40, 45, 40, 45, 46, 49, 46, 49, 46, 49, 45, 45, 45, 45, 45, 45,
+    45, 45, 40, 40, 40, 40, 40, 40, 40, 40, 45, 45, 45, 45, 45, 45, 0, 0, 40,
+    40, 40, 40, 40, 40, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 40, 40, 40, 40,
+    40, 40, 40, 40, 45, 45, 45, 45, 45, 45, 45, 45, 40, 40, 40, 40, 40, 40,
+    40, 40, 45, 45, 45, 45, 45, 45, 0, 0, 40, 40, 40, 40, 40, 40, 0, 0, 45,
+    45, 45, 45, 45, 45, 45, 45, 0, 40, 0, 40, 0, 40, 0, 40, 45, 45, 45, 45,
+    45, 45, 45, 45, 40, 40, 40, 40, 40, 40, 40, 40, 45, 202, 45, 202, 45,
+    202, 45, 202, 45, 202, 45, 202, 45, 202, 0, 0, 45, 45, 45, 45, 45, 45,
+    45, 45, 203, 203, 203, 203, 203, 203, 203, 203, 45, 45, 45, 45, 45, 45,
+    45, 45, 203, 203, 203, 203, 203, 203, 203, 203, 45, 45, 45, 45, 45, 45,
+    45, 45, 203, 203, 203, 203, 203, 203, 203, 203, 45, 45, 45, 45, 45, 0,
+    45, 45, 40, 40, 40, 204, 203, 60, 202, 60, 60, 78, 45, 45, 45, 0, 45, 45,
+    40, 204, 40, 204, 203, 78, 78, 78, 45, 45, 45, 202, 0, 0, 45, 45, 40, 40,
+    40, 204, 0, 78, 78, 78, 45, 45, 45, 202, 45, 45, 45, 45, 40, 40, 40, 204,
+    40, 78, 205, 205, 0, 0, 45, 45, 45, 0, 45, 45, 40, 204, 40, 204, 203,
+    205, 60, 0, 206, 206, 207, 207, 207, 207, 207, 207, 207, 207, 207, 192,
+    208, 209, 210, 211, 212, 213, 86, 212, 212, 212, 24, 214, 215, 216, 217,
+    218, 215, 216, 217, 218, 24, 24, 24, 142, 219, 219, 219, 24, 220, 221,
+    222, 223, 224, 225, 226, 23, 227, 113, 227, 228, 229, 24, 214, 214, 142,
+    30, 38, 24, 230, 142, 219, 231, 231, 142, 142, 142, 232, 176, 177, 214,
+    214, 230, 142, 142, 142, 142, 142, 142, 142, 142, 80, 142, 231, 142, 142,
+    214, 142, 142, 142, 142, 142, 142, 142, 207, 192, 192, 192, 192, 192,
+    233, 234, 235, 236, 237, 192, 192, 192, 192, 192, 192, 238, 53, 0, 0, 36,
+    238, 238, 238, 238, 238, 239, 239, 240, 241, 242, 243, 238, 36, 36, 36,
+    36, 238, 238, 238, 238, 238, 239, 239, 240, 241, 242, 0, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 0, 0, 0, 88, 88, 88, 88, 88, 88, 88,
+    88, 244, 245, 88, 88, 25, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
+    88, 88, 88, 88, 88, 88, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 83, 83, 195, 195, 83, 83, 83, 83, 195, 195, 195, 83, 83, 84, 84,
+    84, 84, 83, 84, 84, 84, 195, 195, 83, 89, 83, 195, 195, 89, 89, 89, 89,
+    83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 246, 51, 247, 87,
+    247, 246, 51, 87, 247, 37, 51, 51, 51, 37, 37, 51, 51, 51, 48, 87, 51,
+    247, 87, 80, 51, 51, 51, 51, 51, 87, 87, 246, 247, 248, 87, 51, 87, 249,
+    87, 51, 87, 204, 249, 51, 51, 250, 37, 51, 51, 46, 51, 37, 173, 173, 173,
+    173, 251, 87, 246, 37, 37, 51, 51, 252, 80, 80, 80, 80, 51, 37, 37, 37,
+    37, 87, 80, 87, 87, 49, 82, 253, 253, 253, 39, 39, 253, 253, 253, 253,
+    253, 253, 39, 39, 39, 39, 253, 254, 254, 254, 254, 254, 254, 254, 254,
+    254, 254, 254, 254, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254,
+    254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 190, 190, 190, 46, 49,
+    190, 190, 190, 190, 39, 87, 87, 0, 0, 0, 0, 42, 42, 42, 42, 256, 32, 32,
+    32, 32, 32, 257, 257, 87, 87, 87, 87, 80, 87, 87, 80, 87, 87, 80, 87, 87,
+    28, 28, 87, 87, 87, 257, 87, 87, 87, 87, 87, 87, 87, 87, 87, 258, 258,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 259, 257, 257, 87, 87, 42, 87, 42, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 258, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 42,
+    260, 261, 261, 262, 80, 80, 42, 261, 262, 260, 261, 262, 260, 80, 42, 80,
+    261, 263, 264, 80, 261, 260, 80, 80, 80, 261, 260, 260, 261, 42, 261,
+    261, 260, 260, 42, 262, 42, 262, 42, 42, 42, 42, 261, 265, 252, 261, 252,
+    252, 260, 260, 260, 42, 42, 42, 42, 80, 260, 80, 260, 261, 261, 260, 260,
+    260, 262, 260, 260, 262, 260, 260, 262, 261, 262, 260, 260, 261, 80, 80,
+    80, 80, 80, 261, 260, 260, 260, 80, 80, 80, 80, 80, 80, 80, 80, 80, 260,
+    266, 42, 262, 80, 261, 261, 261, 261, 260, 260, 261, 261, 80, 262, 266,
+    266, 262, 262, 260, 260, 262, 262, 260, 260, 262, 262, 260, 260, 260,
+    260, 260, 260, 262, 262, 261, 261, 262, 262, 261, 261, 262, 262, 260,
+    260, 260, 80, 80, 260, 260, 260, 260, 80, 80, 42, 80, 80, 260, 42, 80,
+    80, 80, 80, 80, 80, 80, 80, 260, 260, 80, 42, 260, 260, 260, 260, 260,
+    260, 262, 262, 262, 262, 260, 260, 260, 260, 260, 260, 260, 260, 260, 80,
+    80, 80, 80, 80, 260, 261, 80, 80, 80, 80, 80, 80, 80, 80, 80, 260, 260,
+    260, 260, 260, 80, 80, 260, 260, 80, 80, 80, 80, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 262, 262, 262, 262, 260, 260, 260, 260, 260,
+    260, 262, 262, 262, 262, 80, 80, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 87, 87, 87, 87, 87, 87, 87, 87,
+    176, 177, 176, 177, 87, 87, 87, 87, 87, 87, 258, 87, 87, 87, 87, 87, 87,
+    87, 267, 267, 87, 87, 87, 87, 260, 260, 87, 87, 87, 87, 87, 87, 28, 268,
+    269, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 87, 80, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 82,
+    87, 87, 87, 87, 87, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 28, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 80, 80,
+    80, 80, 80, 80, 87, 87, 87, 87, 87, 87, 87, 267, 267, 267, 267, 28, 28,
+    28, 267, 28, 28, 267, 87, 87, 87, 87, 28, 28, 28, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 39, 39, 39, 39, 39,
     39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
-    39, 39, 41, 41, 41, 41, 41, 41, 41, 41, 41, 42, 41, 41, 41, 41, 41, 41,
-    41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 43, 42,
-    47, 43, 47, 47, 47, 43, 47, 47, 47, 47, 43, 43, 43, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    38, 43, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 80, 81, 81, 81, 81, 81,
-    82, 82, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 38, 43, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 47,
-    38, 43, 38, 43, 44, 47, 38, 43, 44, 47, 38, 43, 38, 43, 38, 43, 44, 47,
-    38, 43, 38, 43, 38, 43, 44, 47, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43,
-    38, 43, 44, 47, 38, 43, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 0, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 0, 53, 83, 83, 83, 83, 83, 83, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 35, 47, 83, 84, 0, 0, 26, 26, 85, 0, 86, 81, 81, 81, 81, 86, 81,
-    81, 81, 87, 86, 81, 81, 81, 81, 81, 81, 86, 86, 86, 86, 86, 86, 81, 81,
-    86, 81, 81, 87, 88, 81, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 98, 99,
-    100, 101, 102, 103, 104, 105, 106, 104, 81, 86, 104, 97, 0, 0, 0, 0, 0,
-    0, 0, 0, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0,
-    0, 0, 0, 107, 107, 107, 107, 104, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    108, 108, 108, 108, 108, 108, 78, 78, 109, 110, 110, 111, 112, 113, 26,
-    26, 81, 81, 81, 81, 81, 81, 81, 81, 114, 115, 116, 113, 117, 113, 113,
-    113, 118, 118, 119, 119, 119, 119, 119, 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, 120, 118, 118, 118, 118, 118, 118, 118, 118,
-    118, 118, 121, 122, 123, 114, 115, 116, 124, 125, 126, 126, 127, 86, 81,
-    81, 81, 81, 81, 86, 81, 81, 86, 128, 128, 128, 128, 128, 128, 128, 128,
-    128, 128, 110, 129, 129, 113, 118, 118, 130, 118, 118, 118, 118, 131,
-    131, 131, 131, 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, 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, 119, 118, 119, 118, 118, 118, 118, 118, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 119, 113, 118, 81, 81, 81,
-    81, 81, 81, 81, 108, 26, 81, 81, 81, 81, 86, 81, 120, 120, 81, 81, 26,
-    86, 81, 81, 86, 118, 118, 132, 132, 132, 132, 132, 132, 132, 132, 132,
-    132, 118, 118, 118, 133, 133, 118, 113, 113, 113, 113, 113, 113, 113,
-    113, 113, 113, 113, 113, 113, 113, 0, 117, 118, 134, 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, 81, 86, 81,
-    81, 86, 81, 81, 86, 86, 86, 81, 86, 86, 81, 86, 81, 81, 81, 86, 81, 86,
-    81, 86, 81, 86, 81, 81, 0, 0, 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, 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, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 81, 81, 81, 81, 81, 81, 81, 86, 81, 137, 137, 26,
-    138, 138, 138, 137, 0, 0, 86, 139, 139, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 81, 81, 81, 81, 137, 81, 81, 81, 81, 81, 81, 81, 81, 81, 137,
-    81, 81, 81, 137, 81, 81, 81, 81, 81, 0, 0, 104, 104, 104, 104, 104, 104,
-    104, 104, 104, 104, 104, 104, 104, 104, 104, 0, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 86, 86, 86, 0, 0, 104, 0, 118, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 118, 0, 0, 0, 0, 0, 118, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 140, 118, 118, 118, 118, 118, 118,
-    118, 108, 108, 0, 0, 0, 0, 0, 81, 81, 86, 86, 86, 81, 81, 81, 81, 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, 118, 118, 118, 120, 81, 81,
-    81, 81, 81, 86, 86, 86, 86, 86, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
-    81, 81, 81, 81, 108, 86, 81, 81, 86, 81, 81, 86, 81, 81, 81, 86, 86, 86,
-    121, 122, 123, 81, 81, 81, 86, 81, 81, 86, 86, 81, 81, 81, 81, 81, 135,
-    135, 135, 141, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 142, 48, 48, 48, 48, 48, 48, 48, 142, 48, 48, 142,
-    48, 48, 48, 48, 48, 135, 141, 143, 48, 141, 141, 141, 135, 135, 135, 135,
-    135, 135, 135, 135, 141, 141, 141, 141, 144, 141, 141, 48, 81, 86, 81,
-    81, 135, 135, 135, 145, 145, 145, 145, 145, 145, 145, 145, 48, 48, 135,
-    135, 83, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 83, 53,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 141,
-    141, 0, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 48, 48, 0, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 0, 0, 0, 48, 48, 48, 48, 0, 0,
-    147, 48, 148, 141, 141, 135, 135, 135, 135, 0, 0, 141, 141, 0, 0, 149,
-    149, 144, 48, 0, 0, 0, 0, 0, 0, 0, 0, 148, 0, 0, 0, 0, 145, 145, 0, 145,
-    48, 48, 135, 135, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    48, 48, 85, 85, 150, 150, 150, 150, 150, 150, 80, 85, 48, 83, 81, 0, 0,
-    135, 135, 141, 0, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 48, 48, 0, 0, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 145, 0, 48, 145, 0, 48,
-    48, 0, 0, 147, 0, 141, 141, 141, 135, 135, 0, 0, 0, 0, 135, 135, 0, 0,
-    135, 135, 144, 0, 0, 0, 135, 0, 0, 0, 0, 0, 0, 0, 145, 145, 145, 48, 0,
-    145, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 135, 135, 48, 48, 48, 135, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135,
-    135, 141, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 0, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48, 48,
-    48, 0, 0, 147, 48, 141, 141, 141, 135, 135, 135, 135, 135, 0, 135, 135,
-    141, 0, 141, 141, 144, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 48, 48, 135, 135, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 83, 85, 0, 0, 0, 0, 0, 0, 0, 48, 135, 135, 135, 135, 135, 135,
-    0, 135, 141, 141, 0, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 48, 48, 0, 0,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48,
-    48, 48, 0, 0, 147, 48, 148, 135, 141, 135, 135, 135, 135, 0, 0, 141, 149,
-    0, 0, 149, 149, 144, 0, 0, 0, 0, 0, 0, 0, 135, 151, 148, 0, 0, 0, 0, 145,
-    145, 0, 48, 48, 48, 135, 135, 0, 0, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 80, 48, 150, 150, 150, 150, 150, 150, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 135, 48, 0, 48, 48, 48, 48, 48, 48, 0, 0, 0, 48, 48, 48, 0, 48,
-    48, 142, 48, 0, 0, 0, 48, 48, 0, 48, 0, 48, 48, 0, 0, 0, 48, 48, 0, 0, 0,
-    48, 48, 48, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,
-    0, 0, 0, 148, 141, 135, 141, 141, 0, 0, 0, 141, 141, 141, 0, 149, 149,
-    149, 144, 0, 0, 48, 0, 0, 0, 0, 0, 0, 148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 150, 150,
-    150, 26, 26, 26, 26, 26, 26, 85, 26, 0, 0, 0, 0, 0, 135, 141, 141, 141,
-    135, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,
-    0, 147, 48, 135, 135, 135, 141, 141, 141, 141, 0, 135, 135, 152, 0, 135,
-    135, 135, 144, 0, 0, 0, 0, 0, 0, 0, 153, 154, 0, 48, 48, 48, 0, 48, 48,
-    0, 0, 48, 48, 135, 135, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 0, 0, 0, 0, 0, 0, 0, 83, 155, 155, 155, 155, 155, 155, 155, 80,
-    48, 135, 141, 141, 83, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 0,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48,
-    48, 48, 48, 0, 0, 147, 48, 141, 156, 149, 141, 148, 141, 141, 0, 156,
-    149, 149, 0, 149, 149, 135, 144, 0, 0, 0, 0, 0, 0, 0, 148, 148, 0, 0, 0,
-    0, 0, 48, 48, 48, 0, 48, 48, 135, 135, 0, 0, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 146, 0, 48, 48, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 135, 135, 141, 141, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 144, 144, 48, 148, 141, 141, 135, 135, 135, 135,
-    0, 141, 141, 141, 0, 149, 149, 149, 144, 48, 80, 0, 0, 0, 0, 48, 48, 48,
-    148, 150, 150, 150, 150, 150, 150, 150, 48, 48, 48, 135, 135, 0, 0, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 80, 48, 48, 48, 48, 48, 48, 0, 135, 141, 141, 0, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 157, 0, 0, 0, 0, 148, 141,
-    141, 135, 135, 135, 0, 135, 0, 141, 141, 149, 141, 149, 149, 149, 148, 0,
-    0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0,
-    141, 141, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 135, 48, 158, 135, 135, 135, 135, 159, 159, 144,
-    0, 0, 0, 0, 85, 48, 48, 48, 48, 48, 48, 53, 135, 160, 160, 160, 160, 135,
-    135, 135, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 83, 83,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 48, 0, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 135, 48, 158, 135, 135, 135, 135, 161, 161, 144, 135, 135, 48, 0,
-    0, 48, 48, 48, 48, 48, 0, 53, 0, 162, 162, 162, 162, 135, 135, 135, 0,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 158, 158, 48, 48,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 48, 80, 80, 80, 83, 83, 83, 83, 83, 83, 83, 83,
-    163, 83, 83, 83, 83, 83, 83, 80, 83, 80, 80, 80, 86, 86, 80, 80, 80, 80,
-    80, 80, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 80, 86, 80, 86, 80, 164, 165, 166,
-    165, 166, 141, 141, 48, 48, 48, 145, 48, 48, 48, 48, 0, 48, 48, 48, 48,
-    145, 48, 48, 48, 48, 145, 48, 48, 48, 48, 145, 48, 48, 48, 48, 145, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 145, 48, 48, 48, 0, 0, 0, 0,
-    167, 168, 169, 170, 169, 169, 171, 169, 171, 168, 168, 168, 168, 135,
-    141, 168, 169, 81, 81, 144, 83, 81, 81, 48, 48, 48, 48, 48, 135, 135,
-    135, 135, 135, 135, 169, 135, 135, 135, 135, 0, 135, 135, 135, 135, 169,
-    135, 135, 135, 135, 169, 135, 135, 135, 135, 169, 135, 135, 135, 135,
-    169, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 169,
-    135, 135, 135, 0, 80, 80, 80, 80, 80, 80, 80, 80, 86, 80, 80, 80, 80, 80,
-    80, 0, 80, 80, 83, 83, 83, 83, 83, 80, 80, 80, 80, 83, 83, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 142, 48, 48, 48, 48, 141, 141, 135, 151,
-    135, 135, 141, 135, 135, 135, 135, 135, 147, 141, 144, 144, 141, 141,
-    135, 135, 48, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 83, 83,
-    83, 83, 83, 83, 48, 48, 48, 48, 48, 48, 141, 141, 135, 135, 48, 48, 48,
-    48, 135, 135, 135, 48, 141, 141, 141, 48, 48, 141, 141, 141, 141, 141,
-    141, 141, 48, 48, 48, 135, 135, 135, 135, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 135, 141, 141, 135, 135, 141, 141, 141, 141, 141,
-    141, 86, 48, 141, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 141,
-    141, 141, 135, 80, 80, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 0, 44, 0, 0, 0, 0, 0, 44, 0, 0, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 83, 51, 47, 47, 47, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 48, 173, 173, 173, 173, 173, 173, 173, 173,
-    173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 173, 173, 173, 173, 173,
-    173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
-    173, 173, 173, 173, 173, 173, 173, 173, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    0, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 0, 48, 48,
-    48, 48, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 0, 0, 48,
-    48, 48, 48, 48, 48, 48, 0, 48, 0, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48,
-    48, 48, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 81,
-    81, 81, 83, 83, 83, 83, 83, 83, 83, 83, 83, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 0, 47, 47, 47, 47, 47, 47, 0, 0,
-    84, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 80, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 174, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 165, 166, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 83, 83, 83, 175, 175, 175, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 135, 135, 144, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 135, 135, 176, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 0, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135,
-    141, 135, 135, 135, 135, 135, 135, 135, 141, 141, 141, 141, 141, 141,
-    141, 141, 135, 141, 141, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    144, 135, 83, 83, 83, 53, 83, 83, 83, 85, 48, 81, 0, 0, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 155, 155, 155, 155,
-    155, 155, 155, 155, 155, 155, 0, 0, 0, 0, 0, 0, 138, 138, 138, 138, 138,
-    138, 84, 138, 138, 138, 138, 135, 135, 135, 177, 135, 146, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 48, 48,
-    48, 48, 48, 135, 135, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 88, 48, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 135, 135, 135, 141, 141, 141, 141,
-    135, 135, 141, 141, 141, 0, 0, 0, 0, 141, 141, 135, 141, 141, 141, 141,
-    141, 141, 87, 81, 86, 0, 0, 0, 0, 26, 0, 0, 0, 138, 138, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 0, 0, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    150, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 81, 86, 141, 141, 135, 0, 0, 83, 83, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 135, 141,
-    135, 135, 135, 135, 135, 135, 135, 0, 144, 141, 135, 141, 141, 135, 135,
-    135, 135, 135, 135, 135, 135, 141, 141, 141, 141, 141, 141, 135, 135, 81,
-    81, 81, 81, 81, 81, 81, 81, 0, 0, 86, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 0, 0, 0, 0, 0, 0, 83, 83, 83, 83, 83, 83, 83, 53, 83, 83, 83,
-    83, 83, 83, 0, 0, 81, 81, 81, 81, 81, 86, 86, 86, 86, 86, 86, 81, 81, 86,
-    82, 86, 86, 81, 81, 86, 86, 81, 81, 81, 81, 81, 86, 81, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 86, 0, 0, 81, 81, 81,
-    81, 81, 81, 86, 81, 81, 81, 81, 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 135, 135, 135, 135, 141, 48, 142, 48, 142, 48,
-    142, 48, 142, 48, 142, 48, 48, 48, 142, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 147, 148, 135, 135, 135, 135, 135, 149, 135,
-    149, 141, 141, 149, 149, 135, 149, 176, 48, 48, 48, 48, 48, 48, 48, 48,
-    0, 83, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 83, 83, 83,
-    83, 83, 83, 83, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 81, 86, 81, 81,
-    81, 81, 81, 81, 81, 80, 80, 80, 80, 80, 80, 80, 80, 80, 83, 83, 83, 135,
-    135, 141, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 135, 135,
-    135, 135, 141, 141, 135, 135, 176, 144, 135, 135, 48, 48, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 147,
-    141, 135, 135, 141, 141, 141, 135, 141, 135, 135, 135, 176, 176, 0, 0, 0,
-    0, 0, 0, 0, 0, 83, 83, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 141, 141, 141, 141, 141,
-    135, 135, 135, 135, 135, 135, 135, 135, 141, 141, 135, 147, 0, 0, 0, 83,
-    83, 83, 83, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0,
-    0, 48, 48, 48, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 53, 53, 53, 53, 53, 83, 83,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 44, 47, 0, 0, 0, 0, 0, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 0, 0, 44, 44, 44, 83, 83, 83, 83, 83, 83, 83, 83, 0, 0,
-    0, 0, 0, 0, 0, 0, 81, 81, 81, 83, 179, 86, 86, 86, 86, 86, 81, 81, 86,
-    86, 86, 86, 81, 141, 179, 179, 179, 179, 179, 179, 179, 48, 48, 48, 48,
-    86, 48, 48, 48, 48, 48, 48, 81, 48, 48, 141, 81, 81, 48, 0, 0, 0, 0, 0,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 51, 51, 51, 53, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 53, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 53, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 51, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 81, 81, 86, 81, 81, 81,
-    81, 81, 81, 81, 86, 81, 81, 178, 180, 86, 181, 81, 81, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 182, 88, 88, 86, 183,
-    81, 184, 86, 81, 86, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 43, 43, 43, 43, 35, 185, 47,
-    47, 44, 47, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38, 43, 38,
-    43, 38, 43, 44, 47, 44, 47, 44, 47, 43, 43, 43, 43, 43, 43, 43, 43, 38,
-    38, 38, 38, 38, 38, 38, 38, 43, 43, 43, 43, 43, 43, 0, 0, 38, 38, 38, 38,
-    38, 38, 0, 0, 43, 43, 43, 43, 43, 43, 43, 43, 38, 38, 38, 38, 38, 38, 38,
-    38, 43, 43, 43, 43, 43, 43, 43, 43, 38, 38, 38, 38, 38, 38, 38, 38, 43,
-    43, 43, 43, 43, 43, 0, 0, 38, 38, 38, 38, 38, 38, 0, 0, 43, 43, 43, 43,
-    43, 43, 43, 43, 0, 38, 0, 38, 0, 38, 0, 38, 43, 43, 43, 43, 43, 43, 43,
-    43, 38, 38, 38, 38, 38, 38, 38, 38, 43, 186, 43, 186, 43, 186, 43, 186,
-    43, 186, 43, 186, 43, 186, 0, 0, 43, 43, 43, 43, 43, 43, 43, 43, 187,
-    187, 187, 187, 187, 187, 187, 187, 43, 43, 43, 43, 43, 43, 43, 43, 187,
-    187, 187, 187, 187, 187, 187, 187, 43, 43, 43, 43, 43, 43, 43, 43, 187,
-    187, 187, 187, 187, 187, 187, 187, 43, 43, 43, 43, 43, 0, 43, 43, 38, 38,
-    38, 188, 187, 58, 186, 58, 58, 76, 43, 43, 43, 0, 43, 43, 38, 188, 38,
-    188, 187, 76, 76, 76, 43, 43, 43, 186, 0, 0, 43, 43, 38, 38, 38, 188, 0,
-    76, 76, 76, 43, 43, 43, 186, 43, 43, 43, 43, 38, 38, 38, 188, 38, 76,
-    189, 189, 0, 0, 43, 43, 43, 0, 43, 43, 38, 188, 38, 188, 187, 189, 58, 0,
-    190, 190, 191, 191, 191, 191, 191, 191, 191, 191, 191, 177, 177, 177,
-    192, 193, 194, 195, 84, 194, 194, 194, 22, 196, 197, 198, 199, 200, 197,
-    198, 199, 200, 22, 22, 22, 138, 201, 201, 201, 22, 202, 203, 204, 205,
-    206, 207, 208, 21, 209, 110, 209, 210, 211, 22, 196, 196, 138, 28, 36,
-    22, 196, 138, 201, 212, 212, 138, 138, 138, 213, 165, 166, 196, 196, 196,
-    138, 138, 138, 138, 138, 138, 138, 138, 78, 138, 212, 138, 138, 196, 138,
-    138, 138, 138, 138, 138, 138, 191, 177, 177, 177, 177, 177, 0, 214, 215,
-    216, 217, 177, 177, 177, 177, 177, 177, 218, 51, 0, 0, 34, 218, 218, 218,
-    218, 218, 219, 219, 220, 221, 222, 223, 218, 34, 34, 34, 34, 218, 218,
-    218, 218, 218, 219, 219, 220, 221, 222, 0, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 0, 0, 0, 85, 85, 85, 85, 85, 85, 85, 85, 224,
-    225, 85, 85, 23, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
-    85, 85, 85, 85, 85, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
-    81, 179, 179, 81, 81, 81, 81, 179, 179, 179, 81, 81, 82, 82, 82, 82, 81,
-    82, 82, 82, 179, 179, 81, 86, 81, 179, 179, 86, 86, 86, 86, 81, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 226, 49, 227, 26, 227, 226, 49,
-    26, 227, 35, 49, 49, 49, 35, 35, 49, 49, 49, 46, 26, 49, 227, 26, 78, 49,
-    49, 49, 49, 49, 26, 26, 226, 227, 227, 26, 49, 26, 228, 26, 49, 26, 188,
-    228, 49, 49, 229, 35, 49, 49, 44, 49, 35, 158, 158, 158, 158, 35, 26,
-    226, 35, 35, 49, 49, 230, 78, 78, 78, 78, 49, 35, 35, 35, 35, 26, 78, 26,
-    26, 47, 80, 231, 231, 231, 37, 37, 231, 231, 231, 231, 231, 231, 37, 37,
-    37, 37, 231, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
-    233, 233, 233, 233, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
-    233, 233, 233, 233, 233, 233, 175, 175, 175, 44, 47, 175, 175, 175, 175,
-    37, 26, 26, 0, 0, 0, 0, 40, 40, 40, 40, 40, 30, 30, 30, 30, 30, 234, 234,
-    26, 26, 26, 26, 78, 26, 26, 78, 26, 26, 78, 26, 26, 26, 26, 26, 26, 26,
-    234, 26, 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 235, 234, 234, 26,
-    26, 40, 26, 40, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 30, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 40, 236, 237, 237, 238, 78,
-    78, 40, 237, 238, 236, 237, 238, 236, 78, 40, 78, 237, 239, 240, 78, 237,
-    236, 78, 78, 78, 237, 236, 236, 237, 40, 237, 237, 236, 236, 40, 238, 40,
-    238, 40, 40, 40, 40, 237, 241, 230, 237, 230, 230, 236, 236, 236, 40, 40,
-    40, 40, 78, 236, 78, 236, 237, 237, 236, 236, 236, 238, 236, 236, 238,
-    236, 236, 238, 237, 238, 236, 236, 237, 78, 78, 78, 78, 78, 237, 236,
-    236, 236, 78, 78, 78, 78, 78, 78, 78, 78, 78, 236, 242, 40, 238, 78, 237,
-    237, 237, 237, 236, 236, 237, 237, 78, 238, 242, 242, 238, 238, 236, 236,
-    238, 238, 236, 236, 238, 238, 236, 236, 236, 236, 236, 236, 238, 238,
-    237, 237, 238, 238, 237, 237, 238, 238, 236, 236, 236, 78, 78, 236, 236,
-    236, 236, 78, 78, 40, 78, 78, 236, 40, 78, 78, 78, 78, 78, 78, 78, 78,
-    236, 236, 78, 40, 236, 236, 236, 236, 236, 236, 238, 238, 238, 238, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 78, 78, 78, 78, 78, 236, 237, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 236, 236, 236, 236, 236, 78, 78, 236,
-    236, 78, 78, 78, 78, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    238, 238, 238, 238, 236, 236, 236, 236, 236, 236, 238, 238, 238, 238, 78,
-    78, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 26, 26, 26, 26, 26, 26, 26, 26, 165, 166, 165, 166, 26, 26, 26,
-    26, 26, 26, 30, 26, 26, 26, 26, 26, 26, 26, 243, 243, 26, 26, 26, 26,
-    236, 236, 26, 26, 26, 26, 26, 26, 26, 244, 245, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 26, 78, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 80, 26, 26, 26, 26, 26, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 78, 78, 78, 78, 78, 78, 26, 26, 26,
-    26, 26, 26, 26, 243, 243, 243, 243, 26, 26, 26, 243, 26, 26, 243, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
-    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
-    37, 37, 37, 37, 37, 37, 37, 37, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
-    34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 231, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247,
-    247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 30, 30, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 26, 26,
-    26, 26, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-    30, 30, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, 30, 30,
-    30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 26, 26, 30, 30, 30, 30,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, 26, 30, 30, 30, 30, 30,
-    30, 30, 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, 26, 26, 30, 40, 26, 26,
-    26, 26, 30, 30, 26, 26, 30, 40, 26, 26, 26, 26, 30, 30, 30, 26, 26, 30,
-    26, 26, 30, 30, 30, 30, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 30, 30, 30, 30, 26, 26, 26, 26, 26, 26, 26, 26, 26, 30,
-    26, 26, 26, 26, 26, 26, 26, 26, 78, 78, 78, 78, 78, 248, 248, 78, 26, 26,
-    26, 26, 26, 30, 30, 26, 26, 30, 26, 26, 26, 26, 30, 30, 26, 26, 26, 26,
-    243, 243, 26, 26, 26, 26, 26, 26, 30, 26, 30, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 243, 243, 243, 243,
-    243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 30, 26, 30, 26, 26, 26, 26, 26,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, 26, 30, 30, 30, 26, 30, 30,
-    30, 30, 26, 30, 30, 26, 40, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243,
-    243, 243, 243, 243, 26, 26, 26, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 30, 30, 26, 243, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 80, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 30,
-    26, 26, 26, 26, 243, 243, 30, 30, 30, 30, 30, 30, 30, 30, 243, 30, 30,
-    30, 30, 30, 243, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 26,
-    30, 26, 26, 26, 26, 30, 30, 243, 30, 30, 30, 30, 30, 30, 30, 243, 243,
-    30, 243, 30, 30, 30, 30, 243, 30, 30, 243, 30, 30, 26, 26, 26, 26, 26,
-    243, 26, 26, 26, 26, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 30, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    243, 26, 243, 26, 26, 26, 26, 243, 243, 243, 26, 243, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 165, 166, 165, 166, 165, 166,
-    165, 166, 165, 166, 165, 166, 165, 166, 247, 247, 247, 247, 247, 247,
-    247, 247, 247, 247, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
-    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 26, 243, 243, 243, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 243, 236, 78, 78, 236, 236, 165, 166, 78, 236, 236, 78, 236, 236,
-    236, 78, 78, 78, 78, 78, 236, 236, 236, 236, 78, 78, 78, 78, 78, 236,
-    236, 236, 78, 78, 78, 236, 236, 236, 236, 9, 10, 9, 10, 9, 10, 9, 10,
-    165, 166, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
+    39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 36, 36, 36,
+    36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 271, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 253, 272, 272, 272, 272, 272, 272,
+    272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
+    272, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 87, 87, 87, 87, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 258, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 258,
+    258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 87, 87, 258, 258, 258, 258, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    258, 258, 87, 258, 258, 258, 258, 258, 258, 258, 28, 28, 87, 87, 87, 87,
+    87, 87, 258, 258, 87, 87, 32, 42, 87, 87, 87, 87, 258, 258, 87, 87, 32,
+    42, 87, 87, 87, 87, 258, 258, 258, 87, 87, 258, 87, 87, 258, 258, 258,
+    258, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 258,
+    258, 258, 258, 87, 87, 87, 87, 87, 87, 87, 87, 87, 258, 87, 87, 87, 87,
+    87, 87, 87, 87, 80, 80, 80, 273, 273, 274, 274, 80, 28, 28, 28, 28, 28,
+    258, 258, 87, 87, 258, 87, 87, 87, 87, 32, 258, 87, 28, 87, 87, 267, 267,
+    87, 87, 28, 87, 87, 87, 258, 28, 258, 87, 28, 87, 28, 28, 87, 87, 28, 87,
+    87, 87, 28, 87, 87, 87, 28, 28, 275, 275, 275, 275, 275, 275, 275, 275,
+    28, 28, 28, 87, 87, 87, 87, 87, 32, 87, 32, 87, 87, 87, 87, 87, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 28, 32, 258, 87, 32, 258, 32, 28, 258, 32, 258, 258,
+    87, 258, 258, 87, 42, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 28, 87,
+    87, 28, 267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 275, 275, 275, 275,
+    275, 275, 87, 87, 28, 267, 28, 28, 28, 28, 87, 28, 87, 28, 28, 87, 258,
+    258, 28, 267, 87, 87, 87, 87, 87, 28, 87, 87, 267, 267, 82, 87, 87, 87,
+    28, 28, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 267, 258, 87,
+    87, 87, 87, 267, 267, 258, 258, 32, 258, 258, 258, 258, 258, 267, 32,
+    258, 32, 258, 32, 267, 258, 258, 258, 258, 258, 258, 258, 258, 258, 258,
+    258, 258, 258, 87, 258, 87, 87, 87, 87, 258, 32, 267, 258, 258, 258, 258,
+    258, 32, 32, 267, 267, 32, 267, 258, 32, 32, 32, 267, 258, 258, 267, 258,
+    258, 87, 87, 28, 87, 87, 267, 87, 87, 28, 28, 267, 267, 28, 28, 87, 28,
+    87, 87, 28, 87, 28, 87, 28, 87, 87, 87, 87, 87, 87, 28, 87, 87, 87, 28,
+    87, 87, 87, 87, 87, 87, 267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 28,
+    28, 87, 87, 87, 87, 87, 87, 87, 87, 258, 87, 87, 87, 87, 87, 87, 28, 87,
+    87, 28, 87, 87, 87, 87, 267, 87, 267, 87, 87, 87, 87, 267, 267, 267, 87,
+    267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 28, 28, 87, 87, 87, 176,
+    177, 176, 177, 176, 177, 176, 177, 176, 177, 176, 177, 176, 177, 272,
+    272, 272, 272, 272, 272, 272, 272, 272, 272, 163, 163, 163, 163, 163,
+    163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
+    163, 87, 267, 267, 267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 28, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 260, 80, 80, 260, 260, 176, 177,
+    80, 260, 260, 80, 260, 260, 260, 80, 80, 80, 80, 80, 260, 260, 260, 260,
+    80, 80, 80, 80, 80, 260, 260, 260, 80, 80, 80, 260, 260, 260, 260, 11,
+    12, 11, 12, 11, 12, 11, 12, 176, 177, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+    80, 80, 80, 80, 80, 80, 80, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 80, 80, 80, 80, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+    80, 80, 80, 80, 80, 80, 80, 273, 273, 80, 80, 80, 80, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 176, 177, 11, 12,
+    176, 177, 176, 177, 176, 177, 176, 177, 176, 177, 176, 177, 176, 177,
+    176, 177, 176, 177, 80, 80, 260, 260, 260, 260, 260, 260, 80, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 80, 80, 80,
+    80, 80, 80, 80, 80, 260, 80, 80, 80, 80, 80, 80, 80, 260, 260, 260, 260,
+    260, 260, 80, 80, 80, 260, 80, 80, 80, 80, 260, 260, 260, 260, 260, 80,
+    260, 260, 80, 80, 176, 177, 176, 177, 260, 80, 80, 80, 80, 260, 80, 260,
+    260, 260, 80, 80, 260, 260, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 260,
+    260, 260, 260, 260, 260, 80, 80, 176, 177, 80, 80, 80, 80, 80, 80, 80,
+    80, 80, 80, 80, 80, 260, 260, 252, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 80, 260, 260, 260, 260, 80,
+    80, 260, 80, 260, 80, 80, 260, 80, 260, 260, 260, 260, 80, 80, 80, 80,
+    80, 260, 260, 80, 80, 80, 80, 80, 80, 260, 260, 260, 80, 80, 80, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+    80, 260, 260, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 260, 260, 80,
+    80, 80, 80, 260, 260, 260, 260, 80, 260, 260, 80, 80, 260, 252, 240, 240,
+    80, 80, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 80, 80, 260, 260, 260, 260, 260, 260, 260, 260, 80, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 260,
+    260, 260, 260, 260, 260, 260, 260, 260, 260, 260, 80, 80, 80, 80, 80,
+    276, 80, 260, 80, 80, 80, 260, 260, 260, 260, 260, 80, 80, 80, 80, 80,
+    260, 260, 260, 80, 80, 80, 80, 260, 80, 80, 80, 260, 260, 260, 260, 260,
+    80, 260, 80, 80, 87, 87, 87, 87, 87, 28, 28, 28, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 267, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 80, 80,
     80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 165, 166, 9, 10, 165, 166, 165, 166, 165,
-    166, 165, 166, 165, 166, 165, 166, 165, 166, 165, 166, 165, 166, 78, 78,
-    236, 236, 236, 236, 236, 236, 78, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 78, 78, 78, 78, 78, 78, 78, 78, 236, 78,
-    78, 78, 78, 78, 78, 78, 236, 236, 236, 236, 236, 236, 78, 78, 78, 236,
-    78, 78, 78, 78, 236, 236, 236, 236, 236, 78, 236, 236, 78, 78, 165, 166,
-    165, 166, 236, 78, 78, 78, 78, 236, 78, 236, 236, 236, 78, 78, 236, 236,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 236, 236, 236, 236, 236, 236, 78,
-    78, 165, 166, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 236, 236,
-    230, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 78, 236, 236, 236, 236, 78, 78, 236, 78, 236, 78, 78, 236,
-    78, 236, 236, 236, 236, 78, 78, 78, 78, 78, 236, 236, 78, 78, 78, 78, 78,
-    78, 236, 236, 236, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 236, 236, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 236, 236, 78, 78, 78, 78, 236, 236, 236, 236, 78,
-    236, 236, 78, 78, 236, 230, 220, 220, 78, 78, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 78, 78, 236, 236, 236,
-    236, 236, 236, 236, 236, 78, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
-    236, 236, 236, 78, 78, 78, 78, 78, 249, 78, 236, 78, 78, 78, 236, 236,
-    236, 236, 236, 78, 78, 78, 78, 78, 236, 236, 236, 78, 78, 78, 78, 236,
-    78, 78, 78, 236, 236, 236, 236, 236, 78, 236, 78, 78, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 26, 26, 78, 78, 78, 78, 78, 78,
-    26, 26, 26, 243, 26, 26, 26, 26, 243, 30, 30, 30, 30, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 250, 26, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 44, 47, 44, 44, 44, 47, 47, 44, 47, 44, 47, 44, 47, 44,
-    44, 44, 44, 47, 44, 47, 47, 44, 47, 47, 47, 47, 47, 47, 51, 51, 44, 44,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 47, 26, 26, 26, 26, 26, 26, 44,
-    47, 44, 47, 81, 81, 81, 44, 47, 0, 0, 0, 0, 0, 138, 138, 138, 138, 155,
-    138, 138, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 0, 47, 0, 0, 0, 0, 0, 47, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0,
-    0, 51, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48,
-    48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48,
-    48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 138, 138, 28, 36, 28, 36, 138,
-    138, 138, 28, 36, 138, 28, 36, 138, 138, 138, 138, 138, 138, 138, 138,
-    138, 84, 138, 138, 84, 138, 28, 36, 138, 138, 28, 36, 165, 166, 165, 166,
-    165, 166, 165, 166, 138, 138, 138, 138, 138, 52, 138, 138, 138, 138, 138,
-    138, 138, 138, 138, 138, 84, 84, 138, 138, 138, 138, 84, 138, 199, 138,
-    138, 138, 138, 138, 138, 138, 138, 138, 138, 138, 138, 138, 26, 26, 138,
-    138, 138, 165, 166, 165, 166, 165, 166, 165, 166, 84, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 0,
-    243, 243, 243, 243, 251, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, 251,
-    251, 251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 252, 253, 253, 253, 243, 254, 172, 255, 256,
-    257, 256, 257, 256, 257, 256, 257, 256, 257, 243, 243, 256, 257, 256,
-    257, 256, 257, 256, 257, 258, 259, 260, 260, 243, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 261, 262, 263, 264, 265, 265, 258, 254, 254,
-    254, 254, 254, 251, 243, 266, 266, 266, 254, 172, 253, 243, 26, 0, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 267, 172, 267, 172,
-    267, 172, 267, 172, 267, 172, 267, 172, 267, 172, 267, 172, 267, 172,
-    267, 172, 267, 172, 267, 172, 172, 267, 172, 267, 172, 267, 172, 172,
-    172, 172, 172, 172, 267, 267, 172, 267, 267, 172, 267, 267, 172, 267,
-    267, 172, 267, 267, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 267, 172,
-    172, 0, 0, 268, 268, 269, 269, 254, 270, 271, 258, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 267, 172, 267, 172, 267, 172, 267,
-    172, 267, 172, 267, 172, 267, 172, 267, 172, 267, 172, 267, 172, 267,
-    172, 267, 172, 172, 267, 172, 267, 172, 267, 172, 172, 172, 172, 172,
-    172, 267, 267, 172, 267, 267, 172, 267, 267, 172, 267, 267, 172, 267,
-    267, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 267, 172, 172, 267, 267,
-    267, 267, 253, 254, 254, 270, 271, 0, 0, 0, 0, 0, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 0, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271,
-    271, 271, 271, 271, 271, 271, 271, 0, 272, 272, 273, 273, 273, 273, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    243, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 251, 251, 0, 273, 273, 273, 273, 273, 273, 273, 273,
-    273, 273, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 275, 275, 275, 275, 275, 275, 275, 275, 251, 276,
-    276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    251, 251, 251, 272, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 276, 276, 276,
-    276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 251, 251, 251, 251,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 251,
-    251, 251, 251, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 251, 251, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 251, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 254, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 0, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 53, 53, 53, 53, 53,
-    83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 138, 138,
-    138, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 48, 48, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 48, 81, 82, 82, 82, 138, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
-    138, 52, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 51, 51, 81, 81, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 81, 81, 83, 83, 83, 83, 83, 83, 0, 0,
-    0, 0, 0, 0, 0, 0, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-    54, 54, 54, 54, 54, 54, 54, 54, 54, 52, 52, 52, 52, 52, 52, 52, 52, 52,
-    54, 54, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 47, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 51, 47, 47, 47, 47, 47, 47, 47, 47, 44,
-    47, 44, 47, 44, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 52, 277, 277, 44,
-    47, 44, 47, 48, 44, 47, 44, 47, 47, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 44, 44, 44, 44, 47,
-    44, 44, 44, 44, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 44, 44, 44, 47, 44, 47, 44, 44, 47, 44, 47, 44, 47, 44, 47,
-    44, 47, 44, 47, 44, 47, 44, 47, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 51, 51, 51, 51, 44, 47, 48, 51, 51, 47, 48, 48,
-    48, 48, 48, 48, 48, 135, 48, 48, 48, 144, 48, 48, 48, 48, 135, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 141, 141, 135, 135, 141, 26, 26, 26, 26, 144, 0, 0, 0, 150,
-    150, 150, 150, 150, 150, 80, 80, 85, 229, 0, 0, 0, 0, 0, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 138, 138, 138, 138,
-    0, 0, 0, 0, 0, 0, 0, 0, 141, 141, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
-    141, 141, 141, 141, 141, 144, 135, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 48, 48,
-    48, 48, 48, 48, 83, 83, 83, 48, 83, 48, 48, 135, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 146, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135,
-    135, 135, 135, 86, 86, 86, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 141, 176, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 83, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 0, 0, 0, 135, 135, 135, 141, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 147, 141, 141, 135, 135, 135, 135, 141, 141, 135, 135,
-    141, 141, 176, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 0, 53,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 83, 83, 48,
-    48, 48, 48, 48, 135, 53, 48, 48, 48, 48, 48, 48, 48, 48, 48, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 48, 48, 48, 48, 48, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 135, 135, 135, 135, 135, 135, 141, 141, 135, 135, 141, 141,
-    135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 135, 48, 48, 48, 48, 48,
-    48, 48, 48, 135, 141, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 0, 0, 83, 83, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 53, 48, 48, 48, 48, 48, 48, 80, 80, 80, 48, 141, 135,
-    141, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 81, 48, 81,
-    81, 86, 48, 48, 81, 81, 48, 48, 48, 48, 48, 81, 81, 48, 81, 48, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48,
-    53, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 135, 135,
-    141, 141, 83, 83, 48, 53, 53, 141, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
-    48, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48,
-    48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48,
-    48, 48, 48, 48, 48, 0, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 277, 51, 51, 51, 51,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 51, 54, 54, 0, 0, 0, 0, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 141, 141, 135, 141, 141, 135, 141, 141, 83, 141, 144, 0,
-    0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
-    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 278, 278, 278, 278, 278, 278, 278,
+    80, 87, 87, 80, 80, 80, 80, 80, 80, 87, 87, 87, 267, 87, 87, 87, 87, 267,
+    258, 258, 258, 258, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 277, 87, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 46, 49, 46, 46,
+    46, 49, 49, 46, 49, 46, 49, 46, 49, 46, 46, 46, 46, 49, 46, 49, 49, 46,
+    49, 49, 49, 49, 49, 49, 53, 53, 46, 46, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49,
+    46, 49, 49, 87, 87, 87, 87, 87, 87, 46, 49, 46, 49, 83, 83, 83, 46, 49,
+    0, 0, 0, 0, 0, 142, 142, 142, 142, 163, 142, 142, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 0, 49, 0, 0, 0,
+    0, 0, 49, 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, 0, 0, 0, 0, 0, 0, 0, 53, 85, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 157, 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, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 83, 142, 142, 30, 38, 30, 38, 142, 142, 142, 30, 38, 142, 30, 38,
+    142, 142, 142, 142, 142, 142, 142, 142, 142, 86, 142, 142, 86, 142, 30,
+    38, 142, 142, 30, 38, 176, 177, 176, 177, 176, 177, 176, 177, 142, 142,
+    142, 142, 142, 54, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 86,
+    86, 142, 142, 142, 142, 86, 142, 217, 142, 142, 142, 142, 142, 142, 142,
+    142, 142, 142, 142, 142, 142, 87, 87, 142, 142, 142, 176, 177, 176, 177,
+    176, 177, 176, 177, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 0, 275, 275, 275, 275, 278, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 278, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 278, 278, 278, 278, 278, 278, 278, 278, 278,
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
@@ -2259,1251 +2128,1579 @@ static const unsigned short index2[] = {
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
     278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
-    278, 278, 278, 278, 278, 278, 278, 278, 278, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 172,
-    172, 280, 172, 280, 172, 172, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 172, 280, 172, 280, 172, 172, 280, 280, 172, 172, 172, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 281, 281, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 35, 35, 35, 35, 35, 35, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 35, 35, 35, 35, 35, 0, 0, 0, 0, 0, 282, 283, 282, 284, 284, 284,
-    284, 284, 284, 284, 284, 284, 219, 282, 282, 282, 282, 282, 282, 282,
-    282, 282, 282, 282, 282, 282, 0, 282, 282, 282, 282, 282, 0, 282, 0, 282,
-    282, 0, 282, 282, 0, 282, 282, 282, 282, 282, 282, 282, 282, 282, 284,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
-    140, 140, 140, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 285, 199, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 26, 26, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 286,
-    26, 26, 26, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
-    71, 287, 287, 287, 287, 287, 287, 287, 288, 289, 287, 0, 0, 0, 0, 0, 0,
-    81, 81, 81, 81, 81, 81, 81, 86, 86, 86, 86, 86, 86, 86, 81, 81, 287, 290,
-    290, 291, 291, 288, 289, 288, 289, 288, 289, 288, 289, 288, 289, 288,
-    289, 288, 289, 288, 289, 253, 253, 288, 289, 287, 287, 287, 287, 291,
-    291, 291, 292, 287, 292, 0, 287, 292, 287, 287, 290, 293, 294, 293, 294,
-    293, 294, 295, 287, 287, 296, 297, 298, 298, 299, 0, 287, 300, 295, 287,
-    0, 0, 0, 0, 131, 131, 131, 118, 131, 0, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 0, 0, 177, 0, 301, 301, 302, 303, 302, 301, 301, 304, 305,
-    301, 306, 307, 308, 307, 307, 309, 309, 309, 309, 309, 309, 309, 309,
-    309, 309, 307, 301, 310, 311, 310, 301, 301, 312, 312, 312, 312, 312,
-    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
-    312, 312, 312, 312, 312, 312, 312, 304, 301, 305, 313, 314, 313, 315,
-    315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315,
-    315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 304, 311, 305,
-    311, 304, 305, 316, 317, 318, 316, 316, 319, 319, 319, 319, 319, 319,
-    319, 319, 319, 319, 320, 319, 319, 319, 319, 319, 319, 319, 319, 319,
-    319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
-    319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
-    319, 319, 319, 319, 319, 319, 319, 319, 320, 320, 319, 319, 319, 319,
-    319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
-    319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 0, 0, 0,
-    319, 319, 319, 319, 319, 319, 0, 0, 319, 319, 319, 319, 319, 319, 0, 0,
-    319, 319, 319, 319, 319, 319, 0, 0, 319, 319, 319, 0, 0, 0, 303, 303,
-    311, 313, 321, 303, 303, 0, 322, 323, 323, 323, 323, 322, 322, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 324, 324, 324, 26, 30, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,
-    48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 0, 0, 0, 83, 138, 83, 0, 0, 0, 0, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 0, 0, 0, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 325, 325, 325, 325, 325, 325, 325, 325, 325,
-    325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
-    325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
-    325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
-    325, 325, 155, 155, 155, 155, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 155, 155, 26, 80, 80, 0, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 326, 326, 326, 326, 326, 326,
-    326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
-    326, 326, 326, 326, 326, 326, 326, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 150, 150, 150, 150, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 175, 48, 48, 48, 48, 48, 48, 48, 48, 175, 0, 0, 0, 0, 0, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 81, 81, 81, 81, 81, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 0, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 83,
-    175, 175, 175, 175, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 0, 0,
-    0, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 83, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 44, 44, 44, 44, 44,
-    44, 44, 0, 44, 44, 0, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 0, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 0, 47, 47, 47,
-    47, 47, 47, 47, 0, 47, 47, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    142, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 142, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 53, 51, 51, 51, 51, 51, 0, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 0, 51, 51, 51, 51, 51, 51, 51, 51, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 107, 107, 107, 0, 0, 107,
-    0, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 0, 107, 107, 0, 0, 0, 107, 0, 0, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 0, 104, 327, 327, 327, 327, 327, 327, 327, 327, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 328, 328, 327, 327, 327, 327, 327,
-    327, 327, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 327, 327, 327, 327, 327,
-    327, 327, 327, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 0, 107, 107, 0, 0, 0, 0, 0, 327,
-    327, 327, 327, 327, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 327, 327,
-    327, 327, 327, 327, 0, 0, 0, 138, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 0, 0, 0, 0, 0, 104, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0,
-    0, 0, 0, 327, 327, 107, 107, 327, 327, 327, 327, 327, 327, 327, 327, 327,
-    327, 327, 327, 327, 327, 327, 327, 0, 0, 327, 327, 327, 327, 327, 327,
-    327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
-    327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327,
-    327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 107, 135,
-    135, 135, 0, 135, 135, 0, 0, 0, 0, 0, 135, 86, 135, 81, 107, 107, 107,
-    107, 0, 107, 107, 107, 0, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 0, 0, 81, 179, 86, 0, 0, 0, 0, 144, 327,
-    327, 327, 327, 327, 327, 327, 327, 327, 0, 0, 0, 0, 0, 0, 0, 104, 104,
-    104, 104, 104, 104, 104, 104, 104, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 327, 327,
-    104, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 327, 327, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 107, 107,
-    107, 107, 107, 328, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 81, 86, 0, 0, 0, 0, 327, 327, 327, 327, 327, 104,
-    104, 104, 104, 104, 104, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0, 138, 138, 138, 138,
-    138, 138, 138, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 327, 327,
-    327, 327, 327, 327, 327, 327, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0, 0, 0,
-    327, 327, 327, 327, 327, 327, 327, 327, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0, 0,
-    0, 0, 0, 104, 104, 104, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327,
-    327, 327, 327, 327, 327, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 0, 0, 0,
-    0, 0, 0, 0, 327, 327, 327, 327, 327, 327, 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, 81, 81, 81, 81, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128,
-    128, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128,
-    128, 128, 128, 128, 128, 107, 107, 107, 107, 137, 107, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 0, 0, 0, 81, 81, 81, 81, 81, 84, 137, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 0, 0, 0, 0, 0, 0, 0, 0, 331, 331, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 332, 332, 332, 332, 332, 332, 332,
-    332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
-    332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 0, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 81, 81, 102, 0, 0,
-    107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 118, 118,
-    120, 118, 118, 0, 0, 0, 0, 0, 0, 0, 0, 138, 26, 26, 26, 26, 26, 26, 26,
-    26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 86, 135, 86, 86, 86, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 327, 327,
-    327, 327, 327, 327, 327, 327, 327, 327, 107, 0, 0, 0, 0, 0, 0, 0, 0, 118,
-    118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
-    118, 118, 118, 118, 118, 118, 118, 86, 86, 81, 81, 81, 86, 81, 86, 86,
-    86, 86, 333, 333, 333, 333, 113, 113, 113, 113, 113, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 81, 86,
-    81, 86, 104, 104, 104, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 327, 327, 327, 327, 327, 327, 327, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 141, 135, 141, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 144, 83, 83,
-    83, 83, 83, 83, 83, 0, 0, 0, 0, 155, 155, 155, 155, 155, 155, 155, 155,
-    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 144, 48, 48, 135, 135, 48, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 144, 135, 135, 141, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 142, 48, 142,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 142, 48, 48, 48,
-    48, 141, 141, 141, 135, 135, 135, 135, 141, 141, 144, 143, 83, 83, 192,
-    83, 83, 83, 83, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 0, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 0, 0, 0, 0, 0, 0, 81, 81, 81, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 151, 135, 135, 135, 135, 141,
-    135, 152, 152, 135, 135, 135, 144, 144, 0, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 83, 83, 83, 83, 48, 141, 141, 48, 0, 0, 0, 0, 0, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    147, 83, 83, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 135, 141, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 141, 176, 48, 48, 48, 48, 83, 83, 83, 83, 135,
-    147, 135, 135, 83, 141, 135, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 48, 83, 48, 83, 83, 83, 0, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 135,
-    135, 135, 141, 141, 135, 176, 147, 135, 83, 83, 83, 83, 83, 83, 135, 48,
-    48, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 0, 48, 0, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 83, 0,
-    0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 141,
-    141, 141, 135, 135, 135, 135, 135, 135, 147, 144, 0, 0, 0, 0, 0, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 135, 135,
-    141, 141, 0, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 48, 48, 0, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48, 48, 48,
-    0, 147, 147, 48, 148, 141, 135, 141, 141, 141, 141, 0, 0, 141, 141, 0, 0,
-    149, 149, 176, 0, 0, 48, 0, 0, 0, 0, 0, 0, 148, 0, 0, 0, 0, 0, 48, 48,
-    48, 48, 48, 141, 141, 0, 0, 81, 81, 81, 81, 81, 81, 81, 0, 0, 0, 81, 81,
-    81, 81, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 142, 48, 142,
-    48, 48, 48, 48, 0, 48, 0, 0, 142, 0, 48, 142, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 148, 141, 141, 151,
-    135, 135, 135, 135, 135, 0, 148, 0, 0, 334, 0, 334, 334, 148, 141, 0,
-    141, 141, 144, 176, 144, 48, 135, 48, 83, 83, 0, 83, 83, 0, 0, 0, 0, 0,
-    0, 0, 0, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 135, 135, 135, 135, 135, 135,
-    135, 135, 141, 141, 144, 135, 135, 141, 147, 48, 48, 48, 48, 83, 83, 83,
-    83, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 83, 83, 0, 83,
-    81, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 148, 141, 141, 135, 135, 135, 135, 135, 135, 141, 151, 149, 149,
-    148, 149, 135, 135, 141, 144, 147, 48, 48, 83, 48, 0, 0, 0, 0, 0, 0, 0,
-    0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 148, 141,
-    141, 135, 135, 135, 135, 0, 0, 141, 141, 149, 149, 135, 135, 141, 144,
-    147, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
-    83, 83, 83, 83, 83, 83, 48, 48, 48, 48, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 135,
-    135, 135, 135, 135, 135, 135, 135, 141, 141, 135, 141, 144, 135, 83, 83,
-    83, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 138, 138, 138, 138, 138, 138, 138,
-    138, 138, 138, 138, 138, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 141, 135, 141, 141, 135,
-    135, 135, 135, 135, 135, 176, 147, 48, 83, 0, 0, 0, 0, 0, 0, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 146, 146, 146,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278,
+    278, 278, 278, 278, 278, 278, 278, 278, 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 279, 280,
+    280, 280, 275, 281, 282, 283, 284, 285, 284, 285, 284, 285, 284, 285,
+    284, 285, 275, 275, 284, 285, 284, 285, 284, 285, 284, 285, 286, 287,
+    288, 288, 275, 283, 283, 283, 283, 283, 283, 283, 283, 283, 289, 290,
+    291, 292, 293, 293, 294, 281, 281, 281, 281, 281, 278, 275, 295, 295,
+    295, 281, 282, 296, 275, 87, 0, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 297,
+    282, 297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 282,
+    297, 282, 297, 282, 297, 282, 282, 282, 282, 282, 282, 297, 297, 282,
+    297, 297, 282, 297, 297, 282, 297, 297, 282, 297, 297, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 297, 282, 282, 0, 0, 298, 298, 299, 299, 281,
+    300, 301, 286, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 297, 282,
+    297, 282, 297, 282, 297, 282, 297, 282, 297, 282, 282, 297, 282, 297,
+    282, 297, 282, 282, 282, 282, 282, 282, 297, 297, 282, 297, 297, 282,
+    297, 297, 282, 297, 297, 282, 297, 297, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 297, 282, 282, 297, 297, 297, 297, 280, 281, 281, 300, 301, 0,
+    0, 0, 0, 0, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 0, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301,
+    301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 0, 302,
+    302, 303, 303, 303, 303, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 275, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 278, 278, 0, 303, 303,
+    303, 303, 303, 303, 303, 303, 303, 303, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 305, 305, 305, 305,
+    305, 305, 305, 305, 278, 306, 306, 306, 306, 306, 306, 306, 306, 306,
+    306, 306, 306, 306, 306, 306, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 278, 278, 278, 302, 303, 303, 303, 303,
+    303, 303, 303, 303, 303, 303, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 307, 304, 307, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306,
+    306, 306, 306, 306, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 278, 278, 278, 278, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 278, 278, 278, 278, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 278, 278, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    304, 278, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 281,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 0, 0, 0, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 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, 55, 55, 55, 55, 55, 55, 85, 85, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 55, 142, 142, 142, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 50, 83, 84, 84, 84, 142, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 142, 54, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 53, 53, 83, 83, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 83, 83, 85,
+    85, 85, 85, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 56, 56, 56, 56, 56, 56, 56,
+    56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 54, 54,
+    54, 54, 54, 54, 54, 54, 54, 56, 56, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 49, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 53, 49, 49,
+    49, 49, 49, 49, 49, 49, 46, 49, 46, 49, 46, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 54, 308, 308, 46, 49, 46, 49, 50, 46, 49, 46, 49, 49, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 46, 46, 46, 46, 49, 46, 46, 46, 46, 46, 49, 46, 49, 46, 49, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 46, 46, 46, 49, 46, 49, 46, 46,
+    49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 49, 46, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 53, 53, 53, 46,
+    49, 50, 53, 53, 49, 50, 50, 50, 50, 50, 50, 50, 139, 50, 50, 50, 157, 50,
+    50, 50, 50, 139, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 145, 145, 139, 139, 145, 87, 87, 87,
+    87, 157, 0, 0, 0, 155, 155, 155, 155, 155, 155, 82, 82, 88, 250, 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,
+    142, 142, 142, 142, 0, 0, 0, 0, 0, 0, 0, 0, 145, 145, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 145, 145, 145, 145, 145, 145, 145,
+    145, 145, 145, 145, 145, 145, 145, 145, 145, 157, 139, 0, 0, 0, 0, 0, 0,
+    0, 0, 85, 85, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0,
+    0, 0, 0, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
+    83, 83, 50, 50, 50, 50, 50, 50, 85, 85, 85, 50, 85, 50, 50, 139, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 139, 139, 139, 139, 139, 89, 89, 89, 85, 85, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 145, 191, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
+    184, 184, 184, 184, 184, 184, 184, 0, 0, 0, 139, 139, 139, 145, 50, 50,
+    50, 50, 50, 146, 146, 146, 50, 50, 50, 146, 146, 146, 146, 146, 146, 146,
     146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0,
-    135, 141, 135, 141, 141, 135, 135, 135, 135, 141, 135, 135, 135, 135,
-    144, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 150,
-    150, 83, 83, 83, 80, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 141, 141, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 141, 144, 147, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 48, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 148, 141, 141, 141,
-    141, 141, 0, 141, 149, 0, 0, 135, 135, 176, 144, 48, 141, 48, 141, 147,
-    83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 141, 141,
-    141, 135, 135, 135, 135, 0, 0, 135, 135, 141, 141, 141, 141, 144, 48, 83,
-    48, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 48, 135, 135, 135, 135, 135, 135, 156, 156, 135, 135,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 135, 144, 135, 135, 135, 135, 141, 48, 135, 135, 135,
-    135, 83, 83, 83, 83, 83, 83, 83, 83, 144, 0, 0, 0, 0, 0, 0, 0, 0, 48,
-    135, 135, 135, 135, 135, 135, 141, 141, 135, 135, 135, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 141, 135, 144, 83, 83, 83, 48, 83, 83, 83, 83, 83, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 83, 83, 83, 83,
-    83, 83, 83, 83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135,
-    141, 135, 135, 135, 141, 135, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 83,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 141, 135, 135, 135, 135, 135, 135, 135, 0, 135, 135, 135, 135,
-    135, 135, 141, 335, 48, 83, 83, 83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 0, 0, 0, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 0, 141, 135, 135, 135, 135, 135,
-    135, 135, 141, 135, 135, 141, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0,
-    48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 135, 135, 135, 135, 135, 135, 0, 0, 0, 135, 0, 135,
-    135, 0, 135, 135, 135, 147, 135, 144, 144, 48, 135, 0, 0, 0, 0, 0, 0, 0,
-    0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0,
-    48, 48, 48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 141, 141, 141, 141, 141, 0, 135, 135, 0, 141, 141,
-    135, 141, 144, 48, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 48, 48, 0, 0,
-    0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 135, 135, 141, 141,
-    83, 83, 0, 0, 0, 0, 0, 0, 0, 135, 135, 48, 141, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 141, 141, 135, 135, 135, 135, 135, 0, 0, 0, 141,
-    141, 135, 176, 144, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
-    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 135, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 26, 26, 26, 26, 26, 26, 26, 26, 85,
-    85, 85, 85, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
-    175, 175, 175, 175, 175, 0, 83, 83, 83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 192, 192, 192, 192,
-    192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 135, 48, 48,
-    48, 48, 48, 48, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 151, 151, 151, 336, 336, 336, 336, 336, 336,
-    336, 336, 151, 141, 141, 141, 135, 135, 144, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 146, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 0, 0, 0, 0, 83, 83, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 0, 0, 179, 179, 179, 179, 179, 83, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 81,
-    81, 81, 81, 81, 81, 81, 83, 83, 83, 83, 83, 80, 80, 80, 80, 53, 53, 53,
-    53, 83, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 0, 150, 150, 150, 150, 150, 150, 150, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 53, 53, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 173, 337, 142, 142,
-    53, 53, 83, 83, 83, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 83, 83, 83, 83, 0, 0, 0, 0, 0, 44, 44, 44, 44, 44, 44, 44, 44, 44,
-    44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 0, 0, 47,
-    47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 135, 48, 141, 141, 141, 141, 141,
-    141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
-    141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
-    141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
-    141, 141, 141, 141, 141, 141, 141, 141, 0, 0, 0, 0, 0, 0, 0, 135, 135,
-    135, 135, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254, 254, 253, 254, 338, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 339, 339, 254, 254, 255, 255, 255, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 254, 254, 254, 254, 0, 254,
-    254, 254, 254, 254, 254, 254, 0, 254, 254, 0, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 172, 172, 172, 0, 0, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    172, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 0, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 0, 0, 80, 135, 179, 83, 177, 177, 177, 177, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 340, 340, 340, 340, 340, 340, 340, 340, 340,
-    340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340,
-    340, 340, 340, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 26, 26,
-    26, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 0,
-    0, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    0, 0, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    342, 342, 342, 342, 342, 342, 342, 343, 343, 179, 179, 179, 80, 80, 80,
-    344, 343, 343, 343, 343, 343, 177, 177, 177, 177, 177, 177, 177, 177, 86,
-    86, 86, 86, 86, 86, 86, 86, 80, 80, 81, 81, 81, 81, 81, 86, 86, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 81, 81, 81, 81, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 342, 342, 342, 342, 342, 342, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 81, 81, 81, 26, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150,
-    150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
-    150, 150, 150, 150, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345, 345, 345, 345, 345, 345, 345, 345,
-    345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345,
-    345, 150, 150, 0, 0, 0, 0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35,
-    35, 35, 35, 35, 0, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 49, 0, 49, 49, 0, 0, 49, 0, 0, 49, 49, 0, 0, 49, 49, 49, 49,
-    0, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 0, 35, 0, 35, 35, 35,
-    35, 35, 35, 35, 0, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 49, 49,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 152, 145, 145, 139, 139, 139, 139, 145, 145, 139, 139, 145, 145,
+    194, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 0, 55, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 85, 85, 146, 146,
+    146, 146, 146, 139, 55, 146, 146, 146, 146, 146, 146, 146, 146, 146, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 146, 146, 146, 146, 146, 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, 139, 139, 139, 139, 139, 139, 145, 145, 139, 139,
+    145, 145, 139, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 139, 50, 50,
+    50, 50, 50, 50, 50, 50, 139, 145, 0, 0, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 0, 0, 85, 85, 85, 85, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 55, 146, 146, 146, 50,
+    50, 50, 82, 82, 82, 146, 183, 139, 183, 146, 146, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 83, 50, 83, 83, 89, 50, 50, 83, 83, 50, 50, 50,
+    50, 50, 83, 83, 50, 83, 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, 55, 85, 85, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 145, 139, 139, 145, 145, 85, 85, 50, 55,
+    55, 145, 149, 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,
     49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 49, 49, 0, 49,
-    49, 49, 49, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 0, 49, 49, 49, 49, 49,
-    49, 49, 0, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 49, 49, 0, 49, 49, 49, 49, 0,
-    49, 49, 49, 49, 49, 0, 49, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 0, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 49,
     49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 308, 53, 53, 53, 53, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 53, 56, 56, 0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49,
     49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 0, 0, 49, 49,
     49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 220, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 230, 35, 35, 35, 35,
-    35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 220, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 230,
-    35, 35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 220, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 230, 35, 35, 35, 35, 35, 35, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 220,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 230, 35, 35, 35, 35, 35, 35, 49, 49, 49, 49,
     49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
-    49, 49, 49, 220, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
-    35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 230, 35, 35, 35, 35, 35, 35,
-    49, 35, 0, 0, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
-    341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
-    341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
-    341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 80, 80, 80, 80, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 135, 135, 135, 80, 80, 80, 80, 80, 80, 80, 80, 135, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 135, 80, 80, 83, 83,
-    83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 135, 135,
-    135, 135, 0, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
-    135, 135, 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 48, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
-    47, 47, 47, 47, 47, 0, 0, 0, 0, 0, 0, 47, 47, 47, 47, 47, 47, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 81, 81, 81, 81, 81, 81, 0, 81, 81, 81, 81,
-    81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 0, 0, 81, 81, 81, 81,
-    81, 81, 81, 0, 81, 81, 0, 81, 81, 81, 81, 81, 0, 0, 0, 0, 0, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
-    51, 51, 51, 51, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 50, 50, 50,
+    50, 50, 50, 50, 50, 145, 145, 139, 145, 145, 139, 145, 145, 85, 145, 157,
+    0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    309, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 309, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
+    310, 310, 310, 310, 310, 310, 310, 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
+    185, 185, 185, 185, 185, 185, 185, 185, 185, 0, 0, 0, 0, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+    188, 188, 188, 188, 0, 0, 0, 0, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
+    311, 311, 311, 311, 311, 311, 311, 311, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 282, 282,
+    313, 282, 313, 282, 282, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 282, 313, 282, 313, 282, 282, 313, 313, 282, 282, 282, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 314, 314, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 37, 37, 37, 37, 37, 37, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    37, 37, 37, 37, 37, 0, 0, 0, 0, 0, 315, 316, 315, 317, 317, 317, 317,
+    317, 317, 317, 317, 317, 239, 315, 315, 315, 315, 315, 315, 315, 315,
+    315, 315, 315, 315, 315, 0, 315, 315, 315, 315, 315, 0, 315, 0, 315, 315,
+    0, 315, 315, 0, 315, 315, 315, 315, 315, 315, 315, 315, 315, 317, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 144,
+    144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+    144, 144, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 318, 217, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 87, 87, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 319, 87,
+    87, 87, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    320, 320, 320, 320, 320, 320, 320, 321, 322, 320, 0, 0, 0, 0, 0, 0, 83,
+    83, 83, 83, 83, 83, 83, 89, 89, 89, 89, 89, 89, 89, 83, 83, 320, 323,
+    323, 324, 324, 321, 322, 321, 322, 321, 322, 321, 322, 321, 322, 321,
+    322, 321, 322, 321, 322, 280, 280, 321, 322, 320, 320, 320, 320, 324,
+    324, 324, 325, 320, 325, 0, 320, 325, 320, 320, 323, 326, 327, 326, 327,
+    326, 327, 328, 320, 320, 329, 330, 331, 331, 332, 0, 320, 333, 328, 320,
+    0, 0, 0, 0, 134, 134, 134, 121, 134, 0, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 0, 0, 192, 0, 334, 334, 335, 336, 335, 334, 334, 337, 338,
+    334, 339, 340, 341, 340, 340, 342, 342, 342, 342, 342, 342, 342, 342,
+    342, 342, 340, 334, 343, 344, 343, 334, 334, 345, 345, 345, 345, 345,
+    345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345,
+    345, 345, 345, 345, 345, 345, 345, 337, 334, 338, 346, 347, 346, 348,
+    348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348,
+    348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 337, 344, 338,
+    344, 337, 338, 349, 350, 351, 349, 349, 352, 352, 352, 352, 352, 352,
+    352, 352, 352, 352, 353, 352, 352, 352, 352, 352, 352, 352, 352, 352,
+    352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
+    352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
+    352, 352, 352, 352, 352, 352, 352, 352, 354, 354, 352, 352, 352, 352,
+    352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
+    352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 0, 0, 0,
+    352, 352, 352, 352, 352, 352, 0, 0, 352, 352, 352, 352, 352, 352, 0, 0,
+    352, 352, 352, 352, 352, 352, 0, 0, 352, 352, 352, 0, 0, 0, 336, 336,
+    344, 346, 355, 336, 336, 0, 356, 357, 357, 357, 357, 356, 356, 0, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 358, 358, 358, 87, 258, 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, 85, 142, 85, 0, 0, 0, 0, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 0, 0, 0, 82, 82, 82, 82, 82, 82, 82, 82, 82, 359, 359, 359, 359,
+    359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359,
+    359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359,
+    359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359,
+    359, 359, 359, 359, 359, 359, 359, 163, 163, 163, 163, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 163, 163, 87, 82, 82,
+    0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 0, 87, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 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, 89, 360,
+    360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360,
+    360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 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, 155, 155, 155,
+    155, 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, 190, 50, 50, 50, 50, 50, 50, 50,
+    50, 190, 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, 83, 83, 83, 83, 83, 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, 85, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 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, 85, 190, 190, 190, 190, 190, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 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, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    0, 0, 0, 0, 0, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 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, 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, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 0, 46,
+    46, 46, 46, 46, 46, 46, 0, 46, 46, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 0, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 0,
+    49, 49, 49, 49, 49, 49, 49, 0, 49, 49, 0, 0, 0, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 159, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 159, 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, 50, 50, 50, 50, 50, 50, 50, 50, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 53, 53, 53, 53, 53, 0, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 0, 53, 53, 53, 53, 53, 53, 53, 53, 53, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110, 110,
+    110, 0, 0, 110, 0, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 0, 110, 110, 0, 0, 0, 110, 0, 0, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 0, 107, 361, 361, 361, 361, 361, 361, 361,
+    361, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 362, 362, 361, 361,
+    361, 361, 361, 361, 361, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0, 0, 0, 0, 0, 0, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 110, 110, 0, 0,
+    0, 0, 0, 361, 361, 361, 361, 361, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    361, 361, 361, 361, 361, 361, 0, 0, 0, 142, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 0, 0, 0, 0, 0, 107, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 0, 0, 0, 0, 361, 361, 110, 110, 361, 361, 361, 361, 361, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 361, 361, 0, 0, 361, 361, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361,
+    363, 139, 139, 139, 0, 139, 139, 0, 0, 0, 0, 0, 139, 89, 139, 83, 363,
+    363, 363, 363, 0, 363, 363, 363, 0, 363, 363, 363, 363, 363, 363, 363,
+    363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363,
+    363, 363, 363, 363, 363, 363, 363, 363, 0, 0, 83, 195, 89, 0, 0, 0, 0,
+    149, 361, 361, 361, 361, 361, 361, 361, 361, 361, 0, 0, 0, 0, 0, 0, 0,
+    107, 107, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    361, 361, 107, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 361, 361, 361, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110,
+    110, 110, 110, 110, 110, 362, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 83, 89, 0, 0, 0, 0, 361, 361, 361, 361,
+    361, 107, 107, 107, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0, 142, 142,
+    142, 142, 142, 142, 142, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 0,
+    361, 361, 361, 361, 361, 361, 361, 361, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0,
+    0, 0, 361, 361, 361, 361, 361, 361, 361, 361, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0,
+    0, 0, 0, 0, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 361,
+    361, 361, 361, 361, 361, 361, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 0, 0, 0,
+    0, 0, 0, 0, 361, 361, 361, 361, 361, 361, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 83, 83, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 131, 131, 131, 131,
+    131, 131, 131, 131, 131, 131, 0, 0, 0, 0, 0, 0, 131, 131, 131, 131, 131,
+    131, 131, 131, 131, 131, 110, 110, 110, 110, 141, 110, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 0, 0, 0, 83, 83, 83, 83, 83, 86, 141, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 0, 0, 0, 0, 0, 0, 0, 0, 366, 366, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 367, 367, 367, 367,
+    367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367,
+    367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 0, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 0, 83, 83, 105, 0, 0,
+    110, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 121, 121,
+    123, 121, 121, 0, 0, 0, 0, 0, 0, 0, 0, 142, 87, 87, 87, 87, 87, 87, 87,
+    87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 89, 139, 89, 89, 89, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 361, 361,
+    361, 361, 361, 361, 361, 361, 361, 361, 110, 0, 0, 0, 0, 0, 0, 0, 0, 121,
+    121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 89, 89, 83, 83, 83, 89, 83, 89, 89,
+    89, 89, 368, 368, 368, 368, 116, 116, 116, 116, 116, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 83, 89,
+    83, 89, 107, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 361, 361, 361, 361, 361, 361, 361, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 139, 145, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 157, 85, 85,
+    85, 85, 85, 85, 85, 0, 0, 0, 0, 163, 163, 163, 163, 163, 163, 163, 163,
+    163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 157, 50, 50, 139, 139, 50, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 157, 139, 139, 145, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 159, 50, 159,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 159, 50, 50, 50,
+    50, 145, 145, 145, 139, 139, 139, 139, 145, 145, 157, 148, 85, 85, 369,
+    85, 85, 85, 85, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 369, 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, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 0, 0, 0, 0, 0, 0, 83, 83, 83, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 158, 139, 139, 139, 139, 145, 139, 160, 160, 139, 139,
+    139, 149, 157, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 85,
+    85, 85, 85, 146, 145, 145, 146, 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, 152, 85, 85, 50, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 139, 139, 145, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 145, 145, 145, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 145, 191, 50, 166, 166, 50, 85, 85, 85, 85, 139, 152, 139, 139, 85,
+    145, 139, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 50, 85, 50,
+    85, 85, 85, 0, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 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, 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, 145, 145, 145, 139, 139, 139, 145,
+    145, 139, 191, 152, 139, 85, 85, 85, 85, 85, 85, 139, 50, 50, 139, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 50, 0,
+    50, 50, 50, 50, 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, 85, 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, 139, 145, 145, 145, 139, 139,
+    139, 139, 139, 139, 152, 157, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 139, 139, 145, 145, 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, 152, 152, 50,
+    153, 145, 139, 145, 145, 145, 145, 0, 0, 145, 145, 0, 0, 154, 154, 191,
+    0, 0, 50, 0, 0, 0, 0, 0, 0, 153, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 145,
+    145, 0, 0, 83, 83, 83, 83, 83, 83, 83, 0, 0, 0, 83, 83, 83, 83, 83, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 146, 146, 147, 146, 147, 146, 146, 146,
+    146, 0, 146, 0, 0, 147, 0, 146, 147, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 0, 50, 153, 145, 145, 158, 139, 139, 139, 139, 139, 0, 153, 0, 0,
+    370, 0, 370, 370, 153, 145, 0, 145, 145, 157, 191, 149, 166, 139, 50, 85,
+    85, 0, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 139, 139, 0, 0, 0, 0, 0, 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, 145, 145,
+    145, 139, 139, 139, 139, 139, 139, 139, 139, 145, 145, 157, 139, 139,
+    145, 152, 50, 50, 50, 50, 85, 85, 85, 85, 85, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 85, 85, 0, 85, 83, 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,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 153, 145, 145, 139, 139,
+    139, 139, 139, 139, 145, 158, 154, 154, 153, 154, 139, 139, 145, 157,
+    152, 50, 50, 85, 50, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 153, 145, 145, 139, 139, 139, 139, 0,
+    0, 145, 145, 154, 154, 139, 139, 145, 157, 152, 85, 85, 85, 85, 85, 85,
+    85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 50,
+    50, 50, 50, 139, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 145, 145, 145, 139, 139, 139, 139, 139, 139,
+    139, 139, 145, 145, 139, 145, 157, 139, 85, 85, 85, 50, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0,
+    0, 0, 0, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
+    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, 139, 145, 139, 145, 145, 139, 139, 139, 139, 139, 139, 191,
+    152, 50, 85, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 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, 0, 0, 139, 145, 139, 183, 183, 139, 139, 139,
+    139, 145, 139, 139, 139, 139, 157, 0, 0, 0, 0, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 155, 155, 85, 85, 85, 82, 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, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 145, 145,
+    145, 139, 139, 139, 139, 139, 139, 139, 139, 139, 145, 157, 152, 85, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 155, 155, 155, 155, 155, 155, 155, 155, 155, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 146, 146, 146, 146, 146, 146, 146,
+    0, 0, 146, 0, 0, 146, 146, 146, 146, 146, 146, 146, 146, 0, 146, 146, 0,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 153, 145, 145, 145,
+    145, 145, 0, 145, 154, 0, 0, 139, 139, 191, 149, 166, 145, 166, 145, 152,
+    85, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 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, 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, 145, 145,
+    145, 139, 139, 139, 139, 0, 0, 139, 139, 145, 145, 145, 145, 157, 50, 85,
+    50, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 146, 139, 139, 139, 139, 139, 139, 164, 164, 139, 139,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 139, 157,
+    139, 139, 139, 139, 145, 50, 139, 139, 139, 139, 85, 85, 85, 85, 85, 85,
+    85, 85, 149, 0, 0, 0, 0, 0, 0, 0, 0, 146, 139, 139, 139, 139, 139, 139,
+    145, 145, 139, 139, 139, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 166, 166, 166, 166, 166, 166, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 145, 139, 149, 85, 85, 85, 50,
+    85, 85, 85, 85, 85, 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, 0, 0, 0,
+    0, 0, 0, 0, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 139, 145, 139, 139, 139, 145, 139, 145, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 81,
-    81, 81, 81, 81, 81, 81, 53, 53, 53, 53, 53, 53, 53, 0, 0, 146, 146, 146,
-    146, 146, 146, 146, 146, 146, 146, 0, 0, 0, 0, 48, 80, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 81, 81, 81, 81, 146, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 0, 0, 0, 0, 0, 85, 0, 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, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 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, 145, 139, 139, 139, 139, 139,
+    139, 139, 0, 139, 139, 139, 139, 139, 139, 145, 371, 50, 85, 85, 85, 85,
+    85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 0, 0, 0, 85, 85, 50, 50, 50, 50, 50,
+    50, 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, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 0,
+    145, 139, 139, 139, 139, 139, 139, 139, 145, 139, 139, 145, 139, 139, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 53, 182, 182, 86, 81, 146, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     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, 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, 139, 139, 139, 139, 139,
+    139, 0, 0, 0, 139, 0, 139, 139, 0, 139, 139, 139, 152, 139, 157, 157,
+    166, 139, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 0, 0, 0, 0, 0, 0, 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, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 145, 145, 145, 145, 145,
+    0, 139, 139, 0, 145, 145, 139, 145, 157, 50, 0, 0, 0, 0, 0, 0, 0, 151,
+    151, 151, 151, 151, 151, 151, 151, 151, 151, 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, 55, 50, 50, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 81, 86, 48, 146, 146, 146, 146, 146,
-    146, 146, 146, 146, 146, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,
-    48, 48, 48, 81, 48, 48, 81, 48, 48, 48, 48, 48, 48, 48, 81, 81, 48, 48,
-    48, 48, 48, 81, 0, 0, 0, 0, 0, 0, 0, 0, 48, 53, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,
-    48, 0, 48, 48, 48, 48, 0, 48, 48, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-    48, 48, 48, 48, 48, 48, 0, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
-    107, 107, 107, 107, 107, 107, 0, 0, 327, 327, 327, 327, 327, 327, 327,
-    327, 327, 86, 86, 86, 86, 86, 86, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
-    329, 329, 329, 329, 329, 329, 329, 329, 329, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
-    330, 81, 81, 81, 81, 81, 81, 147, 137, 0, 0, 0, 0, 136, 136, 136, 136,
-    136, 136, 136, 136, 136, 136, 0, 0, 0, 0, 104, 104, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 133,
-    333, 333, 333, 111, 333, 333, 333, 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 133,
-    333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
-    333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131, 131, 131,
-    131, 0, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 0,
-    131, 131, 0, 131, 0, 0, 131, 0, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 0, 131, 131, 131, 131, 0, 131, 0, 131, 0, 0, 0, 0, 0, 0, 131,
-    0, 0, 0, 0, 131, 0, 131, 0, 131, 0, 131, 131, 131, 0, 131, 131, 0, 131,
-    0, 0, 131, 0, 131, 0, 131, 0, 131, 0, 131, 0, 131, 131, 0, 131, 0, 0,
-    131, 131, 131, 131, 0, 131, 131, 131, 131, 131, 131, 131, 0, 131, 131,
-    131, 131, 0, 131, 131, 131, 131, 0, 131, 0, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 0, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 0, 0, 0, 0, 0, 131, 131, 131, 0, 131,
-    131, 131, 131, 131, 0, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
-    131, 131, 131, 131, 131, 131, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 78, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26, 243, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 0, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 155, 155, 26, 26, 26,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 340, 26, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246,
-    246, 246, 246, 246, 246, 246, 246, 346, 346, 346, 346, 346, 346, 346,
-    346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346,
-    346, 346, 346, 346, 346, 226, 226, 226, 26, 26, 26, 346, 346, 346, 346,
-    346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346,
-    346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 272, 346,
-    246, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 346, 346, 346,
-    346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346,
-    346, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
-    80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 274, 274,
-    274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 0, 0, 0, 0, 274, 274,
-    274, 274, 274, 274, 274, 274, 274, 0, 0, 0, 0, 0, 0, 0, 274, 274, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 243, 243, 243, 243, 243, 243, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 26,
-    26, 26, 243, 243, 243, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 26, 26, 26, 243, 26, 26, 26, 243, 243, 243, 347, 347,
-    347, 347, 347, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 243, 26, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 26, 26, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 243, 243, 26, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 243, 243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 26, 26, 26, 26, 26, 26, 243, 26, 26,
-    26, 243, 243, 243, 26, 26, 243, 243, 243, 243, 0, 0, 0, 243, 243, 243,
-    243, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 0, 0, 0, 26,
-    26, 26, 26, 243, 243, 243, 243, 243, 243, 243, 243, 243, 0, 0, 0, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0,
-    0, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 0,
-    0, 0, 0, 243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0,
-    0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0,
-    26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 78, 78, 78, 78, 78,
-    78, 78, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 26, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 0, 0, 0, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 0, 0, 0, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 0, 243, 0, 0, 0, 0, 243,
-    243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243,
-    243, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 0,
-    0, 0, 0, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 0, 0, 0, 0, 0,
-    0, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-    26, 26, 26, 26, 26, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 26,
-    0, 0, 0, 0, 0, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 281, 281, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 281, 281, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280,
-    280, 280, 280, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
-    281, 281, 281, 0, 0, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 281, 281, 281, 281, 281,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
-    172, 172, 281, 281, 281, 281, 281, 281, 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
-    177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
-    279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 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, 139, 139, 145, 145, 85, 85, 0, 0, 0, 0, 0, 0, 0, 139, 139,
+    166, 145, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 0, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
+    146, 146, 146, 146, 146, 146, 146, 145, 145, 139, 139, 139, 139, 139, 0,
+    0, 0, 145, 145, 139, 191, 149, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
+    85, 85, 85, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 139, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 87, 87, 87, 87, 87, 87, 87, 87,
+    88, 88, 88, 88, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 50, 50, 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, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+    190, 190, 190, 190, 190, 0, 85, 85, 85, 85, 85, 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, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 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, 85, 85, 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, 210, 210, 210, 210,
+    210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 139, 50, 50,
+    50, 50, 50, 50, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 158, 158, 158, 372, 372, 372, 372, 372, 372,
+    372, 372, 158, 145, 145, 145, 139, 139, 157, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 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, 50, 50, 50, 50, 50, 50,
+    50, 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, 151, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 0, 0, 0, 0, 85, 85, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 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, 151, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 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, 0, 195, 195, 195, 195, 195, 85, 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, 83,
+    83, 83, 83, 83, 83, 83, 85, 85, 85, 85, 85, 82, 82, 82, 82, 55, 55, 55,
+    55, 85, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 0, 155, 155, 155, 155, 155, 155, 155, 0, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 55, 55, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 50, 50, 50, 185, 50, 50, 50, 186, 373, 374, 374,
+    55, 55, 85, 85, 85, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 85, 85, 85, 85, 0, 0, 0, 0, 0, 46, 46, 46, 46, 46, 46, 46, 46, 46,
+    46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 0, 0, 49,
+    49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 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, 0, 0, 0, 0, 139, 50, 145, 145, 145, 145, 145,
+    145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+    145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+    145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 145,
+    145, 145, 145, 145, 145, 145, 145, 145, 0, 0, 0, 0, 0, 0, 0, 139, 139,
+    139, 139, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 281, 281, 280, 281, 375, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 376, 376, 281, 281, 283, 283, 283, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 281, 281, 281, 281, 0, 281,
+    281, 281, 281, 281, 281, 281, 0, 281, 281, 0, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 282, 282, 282, 0, 0, 282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    282, 282, 282, 282, 0, 0, 0, 0, 0, 0, 0, 0, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 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, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 0, 0, 82, 139, 195, 85, 192, 192, 192, 192, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 377, 377, 377, 377, 377, 377, 377, 377, 377,
+    377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
+    377, 377, 377, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 87, 87,
+    87, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 0, 0, 0, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 0,
+    0, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    0, 0, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    379, 379, 379, 379, 379, 379, 379, 380, 380, 195, 195, 195, 82, 82, 82,
+    381, 380, 380, 380, 380, 380, 192, 192, 192, 192, 192, 192, 192, 192, 89,
+    89, 89, 89, 89, 89, 89, 89, 82, 82, 83, 83, 83, 83, 83, 89, 89, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 83, 83, 83, 83, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 379, 379, 379, 379, 379, 379, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+    82, 82, 87, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 83, 83, 83, 87, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155,
+    155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
+    155, 155, 155, 155, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
+    275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 382, 382, 382, 382, 382, 382, 382, 382,
+    382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382,
+    382, 155, 155, 0, 0, 0, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37,
+    37, 37, 37, 37, 0, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 51, 0, 51, 51, 0, 0, 51, 0, 0, 51, 51, 0, 0, 51, 51, 51, 51,
+    0, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 0, 37, 0, 37, 37, 37,
+    37, 37, 37, 37, 0, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 51, 51, 0, 51,
+    51, 51, 51, 0, 0, 51, 51, 51, 51, 51, 51, 51, 51, 0, 51, 51, 51, 51, 51,
+    51, 51, 0, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 51, 51, 0, 51, 51, 51, 51, 0,
+    51, 51, 51, 51, 51, 0, 51, 0, 0, 0, 51, 51, 51, 51, 51, 51, 51, 0, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 0, 0, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 240, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 252, 37, 37, 37, 37,
+    37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 240, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 252,
+    37, 37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 240, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 252, 37, 37, 37, 37, 37, 37, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 240,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 252, 37, 37, 37, 37, 37, 37, 51, 51, 51, 51,
+    51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+    51, 51, 51, 240, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+    37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 252, 37, 37, 37, 37, 37, 37,
+    51, 37, 0, 0, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
+    378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
+    378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
+    378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 82, 82, 82, 82, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 139, 139, 139, 82, 82, 82, 82, 82, 82, 82, 82, 139, 82,
+    82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 139, 82, 82, 85, 85,
+    85, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 139, 139,
+    139, 139, 0, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+    139, 139, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 50, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
+    49, 49, 49, 49, 49, 0, 0, 0, 0, 0, 0, 49, 49, 49, 49, 49, 49, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 83, 83, 83, 83, 83, 0, 83, 83, 83, 83,
+    83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 0, 0, 83, 83, 83, 83,
+    83, 83, 83, 0, 83, 83, 0, 83, 83, 83, 83, 83, 0, 0, 0, 0, 0, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+    53, 53, 53, 53, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 83,
+    83, 83, 83, 83, 83, 83, 55, 55, 55, 55, 55, 55, 55, 0, 0, 151, 151, 151,
+    151, 151, 151, 151, 151, 151, 151, 0, 0, 0, 0, 50, 82, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 83, 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, 83, 83, 83, 83, 151, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 55, 198, 198, 89, 83, 151, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 83, 89, 50, 151, 151, 151, 151, 151,
+    151, 151, 151, 151, 151, 0, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 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,
+    50, 50, 50, 83, 50, 50, 83, 50, 50, 50, 50, 50, 50, 50, 83, 83, 50, 50,
+    50, 50, 50, 83, 0, 0, 0, 0, 0, 0, 0, 0, 50, 55, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 50, 50, 50, 50, 0, 50, 50, 0, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+    50, 50, 50, 50, 50, 50, 0, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 0, 0, 361, 361, 361, 361, 361, 361, 361,
+    361, 361, 89, 89, 89, 89, 89, 89, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
+    364, 364, 364, 364, 364, 364, 364, 364, 364, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365,
+    365, 83, 83, 83, 83, 83, 83, 152, 141, 0, 0, 0, 0, 140, 140, 140, 140,
+    140, 140, 140, 140, 140, 140, 0, 0, 0, 0, 107, 107, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 136,
+    368, 368, 368, 114, 368, 368, 368, 368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 136,
+    368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368,
+    368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 134, 134,
+    134, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, 0,
+    134, 134, 0, 134, 0, 0, 134, 0, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 0, 134, 134, 134, 134, 0, 134, 0, 134, 0, 0, 0, 0, 0, 0, 134,
+    0, 0, 0, 0, 134, 0, 134, 0, 134, 0, 134, 134, 134, 0, 134, 134, 0, 134,
+    0, 0, 134, 0, 134, 0, 134, 0, 134, 0, 134, 0, 134, 134, 0, 134, 0, 0,
+    134, 134, 134, 134, 0, 134, 134, 134, 134, 134, 134, 134, 0, 134, 134,
+    134, 134, 0, 134, 134, 134, 134, 0, 134, 0, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 0, 0, 0, 0, 0, 134, 134, 134, 0, 134,
+    134, 134, 134, 134, 0, 134, 134, 134, 134, 134, 134, 134, 134, 134, 134,
+    134, 134, 134, 134, 134, 134, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 87, 87, 87, 87, 267, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383, 383,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    267, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 36, 36, 36,
+    36, 36, 36, 36, 36, 36, 36, 36, 163, 163, 87, 87, 87, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 377, 87, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
+    270, 270, 270, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384,
+    384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384,
+    384, 246, 246, 246, 87, 87, 87, 385, 385, 384, 384, 384, 384, 384, 384,
+    384, 384, 384, 384, 384, 384, 385, 385, 384, 384, 384, 384, 384, 384,
+    384, 384, 384, 384, 384, 384, 384, 384, 386, 384, 270, 386, 386, 386,
+    386, 386, 386, 386, 386, 386, 386, 384, 384, 384, 384, 384, 384, 384,
+    384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 87, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 387, 387, 387,
+    387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387,
+    387, 387, 387, 387, 387, 387, 387, 387, 387, 304, 307, 307, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 307, 304, 304, 304, 304, 304, 304,
+    304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
+    307, 304, 304, 307, 307, 307, 307, 307, 307, 307, 307, 307, 304, 383,
+    383, 383, 383, 304, 304, 304, 304, 304, 304, 304, 304, 304, 383, 383,
+    383, 383, 383, 383, 383, 307, 307, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 275, 275, 275, 275, 275, 275, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 28, 87, 87, 28, 28, 28, 28, 28, 28, 28, 28, 28, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 28, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 28, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 87, 87, 28, 28, 87, 28, 28, 28, 87, 87, 28, 28, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 28, 28, 28,
+    28, 267, 267, 267, 267, 267, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
+    28, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 87, 87, 28, 267, 28, 87, 28, 267, 267, 267, 388, 388, 388,
+    388, 388, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 28, 267, 28, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 28, 87, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 28, 28, 267, 267, 267, 267, 87, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 87, 87, 87, 87, 87, 87, 87, 28, 28, 87, 87,
+    28, 28, 28, 28, 28, 28, 28, 267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 28, 87, 87, 28, 28, 28, 28, 87, 87, 28, 87, 87, 87, 87, 267, 267,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 28, 87, 87, 28,
+    87, 87, 87, 87, 87, 87, 87, 87, 28, 28, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 28, 87, 87, 87, 87, 87, 28, 28, 28, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 28, 28, 28, 87, 87, 87, 87, 87, 87, 87, 87, 28, 28, 28,
+    87, 87, 28, 87, 28, 87, 87, 87, 87, 28, 87, 87, 87, 87, 87, 87, 28, 87,
+    87, 87, 28, 87, 87, 87, 87, 87, 87, 28, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 87, 87, 87, 87, 87, 28, 267, 28, 28, 28, 267, 267,
+    267, 87, 87, 267, 267, 267, 267, 383, 383, 383, 267, 267, 267, 267, 28,
+    28, 28, 28, 28, 28, 87, 87, 87, 28, 87, 267, 267, 383, 383, 383, 28, 87,
+    87, 28, 267, 267, 267, 267, 267, 267, 267, 267, 267, 383, 383, 383, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383,
+    383, 383, 383, 383, 383, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 383, 383, 383, 383, 267, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 383, 383, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383, 383, 383,
+    383, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383,
+    383, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383, 383, 383, 383, 383, 383,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 383, 383, 383, 383, 87, 87, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 80, 80, 80,
+    80, 80, 80, 80, 80, 80, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 87, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 87, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 383,
+    383, 383, 383, 383, 383, 383, 383, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 383, 383, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 383, 383, 383, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 383, 383, 383, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 267, 267, 267, 267, 267, 267, 383, 267, 383, 383, 383,
+    383, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 383, 383, 267, 267, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 383, 383, 383, 383, 267, 267, 267, 267, 267, 267, 267,
+    267, 267, 267, 383, 383, 383, 383, 383, 383, 383, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 0, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+    87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 378, 378,
+    378, 378, 378, 378, 378, 378, 378, 378, 87, 0, 0, 0, 0, 0, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
+    383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 0, 0, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 314, 314, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 314, 314, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313,
+    313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+    314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 0, 0, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 314, 314, 314, 314, 314, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
+    282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 314, 314, 314,
+    314, 314, 314, 233, 192, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
+    389, 389, 389, 389, 389, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
+    73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 233, 233,
+    233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312,
+    312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 0,
+    0,
 };
 
 /* decomposition data */
index ddd564deffd7e57ebbaab2a1e24c82d273f7d5fc..f5fa30a3622a3a3bac9a8625d37c5d1f3ac17267 100644 (file)
@@ -56,6 +56,8 @@ NAME_ALIASES = "NameAliases%s.txt"
 NAMED_SEQUENCES = "NamedSequences%s.txt"
 SPECIAL_CASING = "SpecialCasing%s.txt"
 CASE_FOLDING = "CaseFolding%s.txt"
+GRAPHEME_CLUSTER_BREAK = "auxiliary/GraphemeBreakProperty%s.txt"
+EMOJI_DATA = "emoji/emoji-data%s.txt"
 
 # Private Use Areas -- in planes 1, 15, 16
 PUA_1 = range(0xE000, 0xF900)
@@ -77,6 +79,14 @@ BIDIRECTIONAL_NAMES = [ "", "L", "LRE", "LRO", "R", "AL", "RLE", "RLO",
     "PDF", "EN", "ES", "ET", "AN", "CS", "NSM", "BN", "B", "S", "WS",
     "ON", "LRI", "RLI", "FSI", "PDI" ]
 
+# "Other" needs to be the first entry, see the comment in makeunicodedata
+GRAPHEME_CLUSTER_NAMES = [ 'Other', 'Prepend', 'CR', 'LF', 'Control',
+    'Extend', 'Regional_Indicator', 'SpacingMark', 'L', 'V', 'T', 'LV', 'LVT',
+    'ZWJ' ]
+
+# "None" needs to be the first entry, see the comment in makeunicodedata
+INDIC_CONJUNCT_BREAK_NAMES = [ 'None', 'Linker', 'Consonant', 'Extend' ]
+
 # "N" needs to be the first entry, see the comment in makeunicodedata
 EASTASIANWIDTH_NAMES = [ "N", "H", "W", "Na", "A", "F" ]
 
@@ -147,7 +157,9 @@ def makeunicodedata(unicode, trace):
     # EastAsianWidth.txt
     # see https://unicode.org/reports/tr11/#Unassigned
     assert EASTASIANWIDTH_NAMES[0] == "N"
-    dummy = (0, 0, 0, 0, 0, 0)
+    assert GRAPHEME_CLUSTER_NAMES[0] == "Other"
+    assert INDIC_CONJUNCT_BREAK_NAMES[0] == "None"
+    dummy = (0, 0, 0, 0, 0, 0, 0, 0, 0)
     table = [dummy]
     cache = {0: dummy}
     index = [0] * len(unicode.chars)
@@ -160,23 +172,25 @@ def makeunicodedata(unicode, trace):
 
     for char in unicode.chars:
         record = unicode.table[char]
+        eastasianwidth = EASTASIANWIDTH_NAMES.index(unicode.widths[char] or 'N')
+        graphemebreak = GRAPHEME_CLUSTER_NAMES.index(unicode.grapheme_breaks[char] or 'Other')
+        extpict = unicode.ext_picts[char]
         if record:
             # extract database properties
             category = CATEGORY_NAMES.index(record.general_category)
             combining = int(record.canonical_combining_class)
             bidirectional = BIDIRECTIONAL_NAMES.index(record.bidi_class)
             mirrored = record.bidi_mirrored == "Y"
-            eastasianwidth = EASTASIANWIDTH_NAMES.index(record.east_asian_width)
             normalizationquickcheck = record.quick_check
+            incb = INDIC_CONJUNCT_BREAK_NAMES.index(record.incb)
             item = (
                 category, combining, bidirectional, mirrored, eastasianwidth,
-                normalizationquickcheck
+                normalizationquickcheck, graphemebreak, incb, extpict,
                 )
-        elif unicode.widths[char] is not None:
+        elif eastasianwidth or graphemebreak or extpict:
             # an unassigned but reserved character, with a known
-            # east_asian_width
-            eastasianwidth = EASTASIANWIDTH_NAMES.index(unicode.widths[char])
-            item = (0, 0, 0, 0, eastasianwidth, 0)
+            # east_asian_width or grapheme_break or ext_pict
+            item = (0, 0, 0, 0, eastasianwidth, 0, graphemebreak, 0, extpict)
         else:
             continue
 
@@ -296,7 +310,7 @@ def makeunicodedata(unicode, trace):
         fprint("/* a list of unique database records */")
         fprint("const _PyUnicode_DatabaseRecord _PyUnicode_Database_Records[] = {")
         for item in table:
-            fprint("    {%d, %d, %d, %d, %d, %d}," % item)
+            fprint("    {%d, %d, %d, %d, %d, %d, %d, %d, %d}," % item)
         fprint("};")
         fprint()
 
@@ -337,6 +351,24 @@ def makeunicodedata(unicode, trace):
         fprint("    NULL")
         fprint("};")
 
+        for i, name in enumerate(GRAPHEME_CLUSTER_NAMES):
+            fprint("#define GCB_%s %d" % (name, i))
+
+        fprint("const char * const _PyUnicode_GraphemeBreakNames[] = {")
+        for name in GRAPHEME_CLUSTER_NAMES:
+            fprint('    "%s",' % name)
+        fprint("    NULL")
+        fprint("};")
+
+        for i, name in enumerate(INDIC_CONJUNCT_BREAK_NAMES):
+            fprint("#define InCB_%s %d" % (name, i))
+
+        fprint("const char * const _PyUnicode_IndicConjunctBreakNames[] = {")
+        for name in INDIC_CONJUNCT_BREAK_NAMES:
+            fprint('    "%s",' % name)
+        fprint("    NULL")
+        fprint("};")
+
         fprint("static const char *decomp_prefix[] = {")
         for name in decomp_prefix:
             fprint("    \"%s\"," % name)
@@ -783,6 +815,10 @@ def merge_old_version(version, new, old):
                         # normalization quickchecks are not performed
                         # for older versions
                         pass
+                    elif k == 18:
+                        # The Indic_Conjunct_Break property did not exist for
+                        # older versions
+                        pass
                     else:
                         class Difference(Exception):pass
                         raise Difference(hex(i), k, old.table[i], new.table[i])
@@ -804,7 +840,7 @@ def open_data(template, version):
             url = ('https://www.unicode.org/Public/3.2-Update/'+template) % ('-'+version,)
         else:
             url = ('https://www.unicode.org/Public/%s/ucd/'+template) % (version, '')
-        os.makedirs(DATA_DIR, exist_ok=True)
+        os.makedirs(os.path.dirname(local), exist_ok=True)
         urllib.request.urlretrieve(url, filename=local)
     if local.endswith('.txt'):
         return open(local, encoding='utf-8')
@@ -892,9 +928,13 @@ class UcdRecord:
     # We store them as a bitmask.
     quick_check: int
 
+    # The Indic_Conjunct_Break property from DerivedCoreProperties.txt.  See:
+    #   https://www.unicode.org/reports/tr44/#DerivedCoreProperties.txt
+    incb: str
+
 
 def from_row(row: List[str]) -> UcdRecord:
-    return UcdRecord(*row, None, set(), 0)
+    return UcdRecord(*row, None, set(), 0, "None")
 
 
 # --------------------------------------------------------------------
@@ -992,14 +1032,14 @@ class UnicodeData:
         self.widths = widths
 
         for char, (propname, *propinfo) in UcdFile(DERIVED_CORE_PROPERTIES, version).expanded():
-            if propinfo:
-                # this is not a binary property, ignore it
-                continue
-
-            if table[char]:
-                # Some properties (e.g. Default_Ignorable_Code_Point)
-                # apply to unassigned code points; ignore them
-                table[char].binary_properties.add(propname)
+            if not propinfo:
+                # binary property
+                if table[char]:
+                    # Some properties (e.g. Default_Ignorable_Code_Point)
+                    # apply to unassigned code points; ignore them
+                    table[char].binary_properties.add(propname)
+            elif propname == 'InCB':  # Indic_Conjunct_Break
+                table[char].incb, = propinfo
 
         for char_range, value in UcdFile(LINE_BREAK, version):
             if value not in MANDATORY_LINE_BREAKS:
@@ -1068,6 +1108,19 @@ class UnicodeData:
                     c = int(data[0], 16)
                     cf[c] = [int(char, 16) for char in data[2].split()]
 
+        if version != "3.2.0":
+            grapheme_breaks = [None] * 0x110000
+            for char, (prop,) in UcdFile(GRAPHEME_CLUSTER_BREAK, version).expanded():
+                grapheme_breaks[char] = prop
+            self.grapheme_breaks = grapheme_breaks
+
+            ext_picts = [False] * 0x110000
+            for char, (prop,) in UcdFile(EMOJI_DATA, version).expanded():
+                if prop == 'Extended_Pictographic':
+                    ext_picts[char] = True
+            self.ext_picts = ext_picts
+
+
     def uselatin1(self):
         # restrict character range to ISO Latin 1
         self.chars = list(range(256))