]> granicus.if.org Git - icu/commitdiff
ICU-21569 LSTM Part 2- include C++ implementation
authorFrank Tang <ftang@chromium.org>
Wed, 28 Apr 2021 01:06:06 +0000 (01:06 +0000)
committerFrank Yung-Fong Tang <ftang@google.com>
Wed, 28 Apr 2021 07:51:11 +0000 (00:51 -0700)
See #1689

21 files changed:
icu4c/source/common/brkeng.cpp
icu4c/source/common/common.vcxproj
icu4c/source/common/common.vcxproj.filters
icu4c/source/common/common_uwp.vcxproj
icu4c/source/common/lstmbe.cpp [new file with mode: 0644]
icu4c/source/common/lstmbe.h [new file with mode: 0644]
icu4c/source/common/sources.txt
icu4c/source/test/depstest/dependencies.txt
icu4c/source/test/intltest/Makefile.in
icu4c/source/test/intltest/intltest.vcxproj
icu4c/source/test/intltest/intltest.vcxproj.filters
icu4c/source/test/intltest/itrbbi.cpp
icu4c/source/test/intltest/lstmbetst.cpp [new file with mode: 0644]
icu4c/source/test/intltest/lstmbetst.h [new file with mode: 0644]
icu4c/source/test/testdata/BUILDRULES.py
icu4c/source/test/testdata/Burmese_graphclust_model5_heavy.txt [new file with mode: 0644]
icu4c/source/test/testdata/Burmese_graphclust_model5_heavy_Test.txt [new file with mode: 0644]
icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy.txt [new file with mode: 0644]
icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy_Test.txt [new file with mode: 0644]
icu4c/source/test/testdata/Thai_graphclust_model4_heavy.txt [new file with mode: 0644]
icu4c/source/test/testdata/Thai_graphclust_model4_heavy_Test.txt [new file with mode: 0644]

index 78492db66201f1cbdd42767ea41c276dc20b0dac..a4c88a4db6bacf6d371594f9319a0c13264c9b72 100644 (file)
@@ -25,6 +25,7 @@
 #include "brkeng.h"
 #include "cmemory.h"
 #include "dictbe.h"
+#include "lstmbe.h"
 #include "charstr.h"
 #include "dictionarydata.h"
 #include "mutex.h"
@@ -163,9 +164,26 @@ ICULanguageBreakFactory::loadEngineFor(UChar32 c) {
     UErrorCode status = U_ZERO_ERROR;
     UScriptCode code = uscript_getScript(c, &status);
     if (U_SUCCESS(status)) {
+        const LanguageBreakEngine *engine = nullptr;
+        // Try to use LSTM first
+        const LSTMData *data = CreateLSTMDataForScript(code, status);
+        if (U_SUCCESS(status)) {
+            if (data != nullptr) {
+                engine = CreateLSTMBreakEngine(code, data, status);
+                if (U_SUCCESS(status) && engine != nullptr) {
+                    return engine;
+                }
+                if (engine != nullptr) {
+                    delete engine;
+                    engine = nullptr;
+                } else {
+                    DeleteLSTMData(data);
+                }
+            }
+        }
+        status = U_ZERO_ERROR;  // fallback to dictionary based
         DictionaryMatcher *m = loadDictionaryMatcherFor(code);
         if (m != NULL) {
-            const LanguageBreakEngine *engine = NULL;
             switch(code) {
             case USCRIPT_THAI:
                 engine = new ThaiBreakEngine(m, status);
index ec2b30222f866a84271bdc348bb85863072eec53..bf90db2e43c986860c7653c94050969deb549491 100644 (file)
@@ -87,6 +87,7 @@
     <ClCompile Include="brkeng.cpp" />
     <ClCompile Include="brkiter.cpp" />
     <ClCompile Include="dictbe.cpp" />
+    <ClCompile Include="lstmbe.cpp" />
     <ClCompile Include="pluralmap.cpp" />
     <ClCompile Include="rbbi.cpp" />
     <ClCompile Include="rbbidata.cpp" />
     <ClInclude Include="ubidiimp.h" />
     <ClInclude Include="brkeng.h" />
     <ClInclude Include="dictbe.h" />
+    <ClInclude Include="lstmbe.h" />
     <ClInclude Include="rbbidata.h" />
     <ClInclude Include="rbbinode.h" />
     <ClInclude Include="rbbirb.h" />
index f1ba90109ce3b4e631dc0246e80274a4dd49e9a3..61faae5282de7123a4b342a1a0ec8b5aee5d1586 100644 (file)
@@ -73,6 +73,9 @@
     <ClCompile Include="dictbe.cpp">
       <Filter>break iteration</Filter>
     </ClCompile>
+    <ClCompile Include="lstmbe.cpp">
+      <Filter>break iteration</Filter>
+    </ClCompile>
     <ClCompile Include="rbbi.cpp">
       <Filter>break iteration</Filter>
     </ClCompile>
     <ClInclude Include="dictbe.h">
       <Filter>break iteration</Filter>
     </ClInclude>
+    <ClInclude Include="lstmbe.h">
+      <Filter>break iteration</Filter>
+    </ClInclude>
     <ClInclude Include="rbbidata.h">
       <Filter>break iteration</Filter>
     </ClInclude>
index da2b899c9050a6939d16ffab9e4ffab498792324..f22d46e14f52682e9fb798798a33b6bf0a13cc3a 100644 (file)
     <ClCompile Include="brkeng.cpp" />
     <ClCompile Include="brkiter.cpp" />
     <ClCompile Include="dictbe.cpp" />
+    <ClCompile Include="lstmbe.cpp" />
     <ClCompile Include="pluralmap.cpp" />
     <ClCompile Include="rbbi.cpp" />
     <ClCompile Include="rbbidata.cpp" />
     <ClInclude Include="ubidiimp.h" />
     <ClInclude Include="brkeng.h" />
     <ClInclude Include="dictbe.h" />
+    <ClInclude Include="lstmbe.h" />
     <ClInclude Include="rbbidata.h" />
     <ClInclude Include="rbbinode.h" />
     <ClInclude Include="rbbirb.h" />
diff --git a/icu4c/source/common/lstmbe.cpp b/icu4c/source/common/lstmbe.cpp
new file mode 100644 (file)
index 0000000..b051936
--- /dev/null
@@ -0,0 +1,815 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#include <utility>
+#include <ctgmath>
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_BREAK_ITERATION
+
+#include "brkeng.h"
+#include "charstr.h"
+#include "cmemory.h"
+#include "lstmbe.h"
+#include "putilimp.h"
+#include "uassert.h"
+#include "ubrkimpl.h"
+#include "uresimp.h"
+#include "uvectr32.h"
+#include "uvector.h"
+
+#include "unicode/brkiter.h"
+#include "unicode/resbund.h"
+#include "unicode/ubrk.h"
+#include "unicode/uniset.h"
+#include "unicode/ustring.h"
+#include "unicode/utf.h"
+
+U_NAMESPACE_BEGIN
+
+// Uncomment the follwoing #define to debug.
+// #define LSTM_DEBUG 1
+// #define LSTM_VECTORIZER_DEBUG 1
+
+/**
+ * Interface for reading 1D array.
+ */
+class ReadArray1D {
+public:
+    virtual ~ReadArray1D();
+    virtual int32_t d1() const = 0;
+    virtual float get(int32_t i) const = 0;
+
+#ifdef LSTM_DEBUG
+    void print() const {
+        printf("\n[");
+        for (int32_t i = 0; i < d1(); i++) {
+           printf("%0.8e ", get(i));
+           if (i % 4 == 3) printf("\n");
+        }
+        printf("]\n");
+    }
+#endif
+};
+
+ReadArray1D::~ReadArray1D()
+{
+}
+
+/**
+ * Interface for reading 2D array.
+ */
+class ReadArray2D {
+public:
+    virtual ~ReadArray2D();
+    virtual int32_t d1() const = 0;
+    virtual int32_t d2() const = 0;
+    virtual float get(int32_t i, int32_t j) const = 0;
+};
+
+ReadArray2D::~ReadArray2D()
+{
+}
+
+/**
+ * A class to index a float array as a 1D Array without owning the pointer or
+ * copy the data.
+ */
+class ConstArray1D : public ReadArray1D {
+public:
+    ConstArray1D() : data_(nullptr), d1_(0) {}
+
+    ConstArray1D(const float* data, int32_t d1) : data_(data), d1_(d1) {}
+
+    virtual ~ConstArray1D();
+
+    // Init the object, the object does not own the data nor copy.
+    // It is designed to directly use data from memory mapped resources.
+    void init(const int32_t* data, int32_t d1) {
+        U_ASSERT(IEEE_754 == 1);
+        data_ = reinterpret_cast<const float*>(data);
+        d1_ = d1;
+    }
+
+    // ReadArray1D methods.
+    virtual int32_t d1() const { return d1_; }
+    virtual float get(int32_t i) const {
+        U_ASSERT(i < d1_);
+        return data_[i];
+    }
+
+private:
+    const float* data_;
+    int32_t d1_;
+};
+
+ConstArray1D::~ConstArray1D()
+{
+}
+
+/**
+ * A class to index a float array as a 2D Array without owning the pointer or
+ * copy the data.
+ */
+class ConstArray2D : public ReadArray2D {
+public:
+    ConstArray2D() : data_(nullptr), d1_(0), d2_(0) {}
+
+    ConstArray2D(const float* data, int32_t d1, int32_t d2)
+        : data_(data), d1_(d1), d2_(d2) {}
+
+    virtual ~ConstArray2D();
+
+    // Init the object, the object does not own the data nor copy.
+    // It is designed to directly use data from memory mapped resources.
+    void init(const int32_t* data, int32_t d1, int32_t d2) {
+        U_ASSERT(IEEE_754 == 1);
+        data_ = reinterpret_cast<const float*>(data);
+        d1_ = d1;
+        d2_ = d2;
+    }
+
+    // ReadArray2D methods.
+    inline int32_t d1() const { return d1_; }
+    inline int32_t d2() const { return d2_; }
+    float get(int32_t i, int32_t j) const {
+        U_ASSERT(i < d1_);
+        U_ASSERT(j < d2_);
+        return data_[i * d2_ + j];
+    }
+
+    // Expose the ith row as a ConstArray1D
+    inline ConstArray1D row(int32_t i) const {
+        U_ASSERT(i < d1_);
+        return ConstArray1D(data_ + i * d2_, d2_);
+    }
+
+private:
+    const float* data_;
+    int32_t d1_;
+    int32_t d2_;
+};
+
+ConstArray2D::~ConstArray2D()
+{
+}
+
+/**
+ * A class to allocate data as a writable 1D array.
+ * This is the main class implement matrix operation.
+ */
+class Array1D : public ReadArray1D {
+public:
+    Array1D() : memory_(nullptr), data_(nullptr), d1_(0) {}
+    Array1D(int32_t d1)
+        : memory_(uprv_malloc(d1 * sizeof(float))),
+          data_((float*)memory_), d1_(d1) {
+      clear();
+    }
+
+    virtual ~Array1D();
+
+    // A special constructor which does not own the memory but writeable
+    // as a slice of an array.
+    Array1D(float* data, int32_t d1)
+        : memory_(nullptr), data_(data), d1_(d1) {}
+
+    // ReadArray1D methods.
+    virtual int32_t d1() const { return d1_; }
+    virtual float get(int32_t i) const {
+        U_ASSERT(i < d1_);
+        return data_[i];
+    }
+
+    // Return the index which point to the max data in the array.
+    inline int32_t maxIndex() const {
+        int32_t index = 0;
+        float max = data_[0];
+        for (int32_t i = 1; i < d1_; i++) {
+            if (data_[i] > max) {
+                max = data_[i];
+                index = i;
+            }
+        }
+        return index;
+    }
+
+    // Slice part of the array to a new one.
+    inline Array1D slice(int32_t from, int32_t size) const {
+        U_ASSERT(from >= 0);
+        U_ASSERT(from < d1_);
+        U_ASSERT(from + size <= d1_);
+        return Array1D(data_ + from, size);
+    }
+
+    // Dot product of a 1D array and a 2D array into this one.
+    inline Array1D& dotProduct(const ReadArray1D& a, const ReadArray2D& b) {
+        U_ASSERT(a.d1() == b.d1());
+        U_ASSERT(b.d2() == d1());
+        for (int32_t i = 0; i < d1(); i++) {
+            data_[i] = 0;
+            for (int32_t j = 0; j < a.d1(); j++) {
+                data_[i] += a.get(j) * b.get(j, i);
+            }
+        }
+        return *this;
+    }
+
+    // Hadamard Product the values of another array of the same size into this one.
+    inline Array1D& hadamardProduct(const ReadArray1D& a) {
+        U_ASSERT(a.d1() == d1());
+        for (int32_t i = 0; i < d1(); i++) {
+            data_[i] *= a.get(i);
+        }
+        return *this;
+    }
+
+    // Add the values of another array of the same size into this one.
+    inline Array1D& add(const ReadArray1D& a) {
+        U_ASSERT(a.d1() == d1());
+        for (int32_t i = 0; i < d1(); i++) {
+            data_[i] += a.get(i);
+        }
+        return *this;
+    }
+
+    // Assign the values of another array of the same size into this one.
+    inline Array1D& assign(const ReadArray1D& a) {
+        U_ASSERT(a.d1() == d1());
+        for (int32_t i = 0; i < d1(); i++) {
+            data_[i] = a.get(i);
+        }
+        return *this;
+    }
+
+    // Apply tanh to all the elements in the array.
+    inline Array1D& tanh() {
+        for (int32_t i = 0; i < d1_; i++) {
+            data_[i] = std::tanh(data_[i]);
+        }
+        return *this;
+    }
+
+    // Apply sigmoid to all the elements in the array.
+    inline Array1D& sigmoid() {
+        for (int32_t i = 0; i < d1_; i++) {
+            data_[i] = 1.0f/(1.0f + expf(-data_[i]));
+        }
+        return *this;
+    }
+
+    inline Array1D& clear() {
+        uprv_memset(data_, 0, d1_ * sizeof(float));
+        return *this;
+    }
+
+private:
+    void* memory_;
+    float* data_;
+    int32_t d1_;
+};
+
+Array1D::~Array1D()
+{
+    uprv_free(memory_);
+}
+
+class Array2D : public ReadArray2D {
+public:
+    Array2D() : memory_(nullptr), data_(nullptr), d1_(0), d2_(0) {}
+    Array2D(int32_t d1, int32_t d2)
+        : memory_(uprv_malloc(d1 * d2 * sizeof(float))),
+          data_((float*)memory_), d1_(d1), d2_(d2) {
+        clear();
+    }
+    virtual ~Array2D();
+
+    // ReadArray2D methods.
+    virtual int32_t d1() const { return d1_; }
+    virtual int32_t d2() const { return d2_; }
+    virtual float get(int32_t i, int32_t j) const {
+        U_ASSERT(i < d1_);
+        U_ASSERT(j < d2_);
+        return data_[i * d2_ + j];
+    }
+
+    inline Array1D row(int32_t i) const {
+        U_ASSERT(i < d1_);
+        return Array1D(data_ + i * d2_, d2_);
+    }
+
+    inline Array2D& clear() {
+        uprv_memset(data_, 0, d1_ * d2_ * sizeof(float));
+        return *this;
+    }
+
+private:
+    void* memory_;
+    float* data_;
+    int32_t d1_;
+    int32_t d2_;
+};
+
+Array2D::~Array2D()
+{
+    uprv_free(memory_);
+}
+
+typedef enum {
+    BEGIN,
+    INSIDE,
+    END,
+    SINGLE
+} LSTMClass;
+
+typedef enum {
+    UNKNOWN,
+    CODE_POINTS,
+    GRAPHEME_CLUSTER,
+} EmbeddingType;
+
+struct LSTMData : public UMemory {
+    LSTMData(UResourceBundle* rb, UErrorCode &status);
+    ~LSTMData();
+    UHashtable* fDict;
+    EmbeddingType fType;
+    const UChar* fName;
+    ConstArray2D fEmbedding;
+    ConstArray2D fForwardW;
+    ConstArray2D fForwardU;
+    ConstArray1D fForwardB;
+    ConstArray2D fBackwardW;
+    ConstArray2D fBackwardU;
+    ConstArray1D fBackwardB;
+    ConstArray2D fOutputW;
+    ConstArray1D fOutputB;
+
+private:
+    UResourceBundle* fDataRes;
+    UResourceBundle* fDictRes;
+};
+
+LSTMData::LSTMData(UResourceBundle* rb, UErrorCode &status)
+    : fDict(nullptr), fType(UNKNOWN), fName(nullptr),
+      fDataRes(nullptr), fDictRes(nullptr)
+{
+    if (U_FAILURE(status)) {
+        return;
+    }
+    if (IEEE_754 != 1) {
+        status = U_UNSUPPORTED_ERROR;
+        return;
+    }
+    LocalUResourceBundlePointer embeddings_res(
+        ures_getByKey(rb, "embeddings", nullptr, &status));
+    int32_t embedding_size = ures_getInt(embeddings_res.getAlias(), &status);
+    LocalUResourceBundlePointer hunits_res(
+        ures_getByKey(rb, "hunits", nullptr, &status));
+    int32_t hunits = ures_getInt(hunits_res.getAlias(), &status);
+    const UChar* type = ures_getStringByKey(rb, "type", nullptr, &status);
+    if (u_strCompare(type, -1, u"codepoints", -1, false) == 0) {
+        fType = CODE_POINTS;
+    } else if (u_strCompare(type, -1, u"graphclust", -1, false) == 0) {
+        fType = GRAPHEME_CLUSTER;
+    }
+    fName = ures_getStringByKey(rb, "model", nullptr, &status);
+    fDataRes = ures_getByKey(rb, "data", nullptr, &status);
+    int32_t data_len = 0;
+    const int32_t* data = ures_getIntVector(fDataRes, &data_len, &status);
+    LocalUResourceBundlePointer fDictRes(
+        ures_getByKey(rb, "dict", nullptr, &status));
+    int32_t num_index = ures_getSize(fDictRes.getAlias());
+    fDict = uhash_open(uhash_hashUChars, uhash_compareUChars, nullptr, &status);
+    if (U_FAILURE(status)) {
+        return;
+    }
+
+    ures_resetIterator(fDictRes.getAlias());
+    int32_t idx = 0;
+    // put dict into hash
+    while(ures_hasNext(fDictRes.getAlias())) {
+        const char *tempKey = nullptr;
+        const UChar* str = ures_getNextString(fDictRes.getAlias(), nullptr, &tempKey, &status);
+        uhash_putiAllowZero(fDict, (void*)str, idx++, &status);
+        if (U_FAILURE(status)) {
+            return;
+        }
+#ifdef LSTM_VECTORIZER_DEBUG
+        printf("Assign [");
+        while (*str != 0x0000) {
+            printf("U+%04x ", *str);
+            str++;
+        }
+        printf("] map to %d\n", idx-1);
+#endif
+    }
+    int32_t mat1_size = (num_index + 1) * embedding_size;
+    int32_t mat2_size = embedding_size * 4 * hunits;
+    int32_t mat3_size = hunits * 4 * hunits;
+    int32_t mat4_size = 4 * hunits;
+    int32_t mat5_size = mat2_size;
+    int32_t mat6_size = mat3_size;
+    int32_t mat7_size = mat4_size;
+    int32_t mat8_size = 2 * hunits * 4;
+#if U_DEBUG
+    int32_t mat9_size = 4;
+    U_ASSERT(data_len == mat1_size + mat2_size + mat3_size + mat4_size + mat5_size +
+        mat6_size + mat7_size + mat8_size + mat9_size);
+#endif
+
+    fEmbedding.init(data, (num_index + 1), embedding_size);
+    data += mat1_size;
+    fForwardW.init(data, embedding_size, 4 * hunits);
+    data += mat2_size;
+    fForwardU.init(data, hunits, 4 * hunits);
+    data += mat3_size;
+    fForwardB.init(data, 4 * hunits);
+    data += mat4_size;
+    fBackwardW.init(data, embedding_size, 4 * hunits);
+    data += mat5_size;
+    fBackwardU.init(data, hunits, 4 * hunits);
+    data += mat6_size;
+    fBackwardB.init(data, 4 * hunits);
+    data += mat7_size;
+    fOutputW.init(data, 2 * hunits, 4);
+    data += mat8_size;
+    fOutputB.init(data, 4);
+}
+
+LSTMData::~LSTMData() {
+    uhash_close(fDict);
+    ures_close(fDictRes);
+    ures_close(fDataRes);
+}
+
+class Vectorizer : public UMemory {
+public:
+    Vectorizer(UHashtable* dict) : fDict(dict) {}
+    virtual ~Vectorizer();
+    virtual void vectorize(UText *text, int32_t startPos, int32_t endPos,
+                           UVector32 &offsets, UVector32 &indices,
+                           UErrorCode &status) const = 0;
+protected:
+    int32_t stringToIndex(const UChar* str) const {
+        UBool found = false;
+        int32_t ret = uhash_getiAndFound(fDict, (const void*)str, &found);
+        if (!found) {
+            ret = fDict->count;
+        }
+#ifdef LSTM_VECTORIZER_DEBUG
+        printf("[");
+        while (*str != 0x0000) {
+            printf("U+%04x ", *str);
+            str++;
+        }
+        printf("] map to %d\n", ret);
+#endif
+        return ret;
+    }
+
+private:
+    UHashtable* fDict;
+};
+
+Vectorizer::~Vectorizer()
+{
+}
+
+class CodePointsVectorizer : public Vectorizer {
+public:
+    CodePointsVectorizer(UHashtable* dict) : Vectorizer(dict) {}
+    virtual ~CodePointsVectorizer();
+    virtual void vectorize(UText *text, int32_t startPos, int32_t endPos,
+                           UVector32 &offsets, UVector32 &indices,
+                           UErrorCode &status) const;
+};
+
+CodePointsVectorizer::~CodePointsVectorizer()
+{
+}
+
+void CodePointsVectorizer::vectorize(
+    UText *text, int32_t startPos, int32_t endPos,
+    UVector32 &offsets, UVector32 &indices, UErrorCode &status) const
+{
+    if (offsets.ensureCapacity(endPos - startPos, status) &&
+            indices.ensureCapacity(endPos - startPos, status)) {
+        utext_setNativeIndex(text, startPos);
+        int32_t current;
+        UChar str[2] = {0, 0};
+        while (U_SUCCESS(status) &&
+               (current = (int32_t)utext_getNativeIndex(text)) < endPos) {
+            // Since the LSTMBreakEngine is currently only accept chars in BMP,
+            // we can ignore the possibility of hitting supplementary code
+            // point.
+            str[0] = (UChar) utext_next32(text);
+            U_ASSERT(!U_IS_SURROGATE(str[0]));
+            offsets.addElement(current, status);
+            indices.addElement(stringToIndex(str), status);
+        }
+    }
+}
+
+class GraphemeClusterVectorizer : public Vectorizer {
+public:
+    GraphemeClusterVectorizer(UHashtable* dict)
+        : Vectorizer(dict)
+    {
+    }
+    virtual ~GraphemeClusterVectorizer();
+    virtual void vectorize(UText *text, int32_t startPos, int32_t endPos,
+                           UVector32 &offsets, UVector32 &indices,
+                           UErrorCode &status) const;
+};
+
+GraphemeClusterVectorizer::~GraphemeClusterVectorizer()
+{
+}
+
+constexpr int32_t MAX_GRAPHEME_CLSTER_LENTH = 10;
+
+void GraphemeClusterVectorizer::vectorize(
+    UText *text, int32_t startPos, int32_t endPos,
+    UVector32 &offsets, UVector32 &indices, UErrorCode &status) const
+{
+    if (U_FAILURE(status)) {
+        return;
+    }
+    if (!offsets.ensureCapacity(endPos - startPos, status) ||
+            !indices.ensureCapacity(endPos - startPos, status)) {
+        return;
+    }
+    LocalPointer<BreakIterator> graphemeIter(BreakIterator::createCharacterInstance(Locale(), status));
+    if (U_FAILURE(status)) {
+        return;
+    }
+    graphemeIter->setText(text, status);
+    if (U_FAILURE(status)) {
+        return;
+    }
+
+    if (startPos != 0) {
+        graphemeIter->preceding(startPos);
+    }
+    int32_t last = startPos;
+    int32_t current = startPos;
+    UChar str[MAX_GRAPHEME_CLSTER_LENTH];
+    while ((current = graphemeIter->next()) != BreakIterator::DONE) {
+        if (current >= endPos) {
+            break;
+        }
+        if (current > startPos) {
+            utext_extract(text, last, current, str, MAX_GRAPHEME_CLSTER_LENTH, &status);
+            if (U_FAILURE(status)) {
+                break;
+            }
+            offsets.addElement(last, status);
+            indices.addElement(stringToIndex(str), status);
+        }
+        last = current;
+    }
+    if (U_FAILURE(status) || last >= endPos) {
+        return;
+    }
+    utext_extract(text, last, endPos, str, MAX_GRAPHEME_CLSTER_LENTH, &status);
+    if (U_SUCCESS(status)) {
+        offsets.addElement(last, status);
+        indices.addElement(stringToIndex(str), status);
+    }
+}
+
+// Computing LSTM as stated in
+// https://en.wikipedia.org/wiki/Long_short-term_memory#LSTM_with_a_forget_gate
+void compute(
+    const ReadArray2D& W, const ReadArray2D& U, const ReadArray1D& b,
+    const ReadArray1D& x, Array1D& h, Array1D& c)
+{
+    // ifco = x * W + h * U + b
+    Array1D ifco(b.d1());
+    ifco.dotProduct(x, W)
+        .add(Array1D(b.d1()).dotProduct(h, U))
+        .add(b);
+
+    int32_t hunits = b.d1() / 4;
+    ifco.slice(0*hunits, hunits).sigmoid();  // i: sigmod
+    ifco.slice(1*hunits, hunits).sigmoid(); // f: sigmoid
+    ifco.slice(2*hunits, hunits).tanh(); // c_: tanh
+    ifco.slice(3*hunits, hunits).sigmoid(); // o: sigmod
+
+    c.hadamardProduct(ifco.slice(hunits, hunits))
+        .add(Array1D(c.d1())
+             .assign(ifco.slice(0, hunits))
+             .hadamardProduct(ifco.slice(2*hunits, hunits)));
+
+    h.assign(c)
+        .tanh()
+        .hadamardProduct(ifco.slice(3*hunits, hunits));
+}
+
+// Minimum word size
+static const int32_t MIN_WORD = 2;
+
+// Minimum number of characters for two words
+static const int32_t MIN_WORD_SPAN = MIN_WORD * 2;
+
+int32_t
+LSTMBreakEngine::divideUpDictionaryRange( UText *text,
+                                                int32_t startPos,
+                                                int32_t endPos,
+                                                UVector32 &foundBreaks ) const {
+    utext_setNativeIndex(text, startPos);
+    utext_moveIndex32(text, MIN_WORD_SPAN);
+    if (utext_getNativeIndex(text) >= endPos) {
+        return 0;       // Not enough characters for two words
+    }
+    utext_setNativeIndex(text, startPos);
+    UErrorCode status = U_ZERO_ERROR;
+
+    UVector32 offsets(status);
+    UVector32 indices(status);
+    fVectorizer->vectorize(text, startPos, endPos, offsets, indices, status);
+    int32_t* offsetsBuf = offsets.getBuffer();
+    int32_t* indicesBuf = indices.getBuffer();
+
+    int32_t input_seq_len = indices.size();
+    int32_t hunits = fData->fForwardU.d1();
+
+    // To save the needed memory usage, the following is different from the
+    // Python or ICU4X implementation. We first perform the Backward LSTM
+    // and then merge the iteration of the forward LSTM and the output layer
+    // together because we only neetdto remember the h[t-1] for Forward LSTM.
+    Array1D c(hunits);
+
+    // TODO: limit size of hBackward. If input_seq_len is too big, we could
+    // run out of memory.
+    // Backward LSTM
+    Array2D hBackward(input_seq_len, hunits);
+    for (int32_t i = input_seq_len - 1; i >= 0; i--) {
+        Array1D hRow = hBackward.row(i);
+        if (i != input_seq_len - 1) {
+            hRow.assign(hBackward.row(i+1));
+        }
+#ifdef LSTM_DEBUG
+        printf("hRow %d\n", i);
+        hRow.print();
+        printf("indicesBuf[%d] = %d\n", i, indicesBuf[i]);
+        printf("fData->fEmbedding.row(indicesBuf[%d]):\n", i);
+        fData->fEmbedding.row(indicesBuf[i]).print();
+#endif  // LSTM_DEBUG
+        compute(fData->fBackwardW, fData->fBackwardU, fData->fBackwardB,
+                fData->fEmbedding.row(indicesBuf[i]),
+                hRow, c);
+    }
+
+    Array1D logp(4);
+
+    // Allocate fbRow and slice the internal array in two.
+    Array1D fbRow(2 * hunits);
+    Array1D forwardRow = fbRow.slice(0, hunits);  // point to first half of data in fbRow.
+    Array1D backwardRow = fbRow.slice(hunits, hunits);  // point to second half of data n fbRow.
+
+    // The following iteration merge the forward LSTM and the output layer
+    // together.
+    c.clear();  // reuse c since it is the same size.
+    for (int32_t i = 0; i < input_seq_len; i++) {
+#ifdef LSTM_DEBUG
+        printf("forwardRow %d\n", i);
+        forwardRow.print();
+#endif  // LSTM_DEBUG
+        // Forward LSTM
+        // Calculate the result into forwardRow, which point to the data in the first half
+        // of fbRow.
+        compute(fData->fForwardW, fData->fForwardU, fData->fForwardB,
+                fData->fEmbedding.row(indicesBuf[i]),
+                forwardRow, c);
+
+        // assign the data from hBackward.row(i) to second half of fbRowa.
+        backwardRow.assign(hBackward.row(i));
+
+        logp.dotProduct(fbRow, fData->fOutputW).add(fData->fOutputB);
+#ifdef LSTM_DEBUG
+        printf("backwardRow %d\n", i);
+        backwardRow.print();
+        printf("logp %d\n", i);
+        logp.print();
+#endif  // LSTM_DEBUG
+
+        // current = argmax(logp)
+        LSTMClass current = (LSTMClass)logp.maxIndex();
+        // BIES logic.
+        if (current == BEGIN || current == SINGLE) {
+            if (i != 0) {
+                foundBreaks.addElement(offsetsBuf[i], status);
+            }
+        }
+    }
+    return foundBreaks.size();
+}
+
+Vectorizer* createVectorizer(const LSTMData* data, UErrorCode &status) {
+    if (U_FAILURE(status)) {
+        return nullptr;
+    }
+    switch (data->fType) {
+        case CODE_POINTS:
+            return new CodePointsVectorizer(data->fDict);
+            break;
+        case GRAPHEME_CLUSTER:
+            return new GraphemeClusterVectorizer(data->fDict);
+            break;
+        default:
+            break;
+    }
+    UPRV_UNREACHABLE;
+}
+
+LSTMBreakEngine::LSTMBreakEngine(const LSTMData* data, const UnicodeSet& set, UErrorCode &status)
+    : DictionaryBreakEngine(), fData(data), fVectorizer(createVectorizer(fData, status))
+{
+    if (U_FAILURE(status)) {
+      fData = nullptr;  // If failure, we should not delete fData in destructor because the caller will do so.
+      return;
+    }
+    setCharacters(set);
+}
+
+LSTMBreakEngine::~LSTMBreakEngine() {
+    delete fData;
+    delete fVectorizer;
+}
+
+const UChar* LSTMBreakEngine::name() const {
+    return fData->fName;
+}
+
+UnicodeString defaultLSTM(UScriptCode script, UErrorCode& status) {
+    // open root from brkitr tree.
+    UResourceBundle *b = ures_open(U_ICUDATA_BRKITR, "", &status);
+    b = ures_getByKeyWithFallback(b, "lstm", b, &status);
+    UnicodeString result = ures_getUnicodeStringByKey(b, uscript_getShortName(script), &status);
+    ures_close(b);
+    return result;
+}
+
+U_CAPI const LSTMData* U_EXPORT2 CreateLSTMDataForScript(UScriptCode script, UErrorCode& status)
+{
+    if (script != USCRIPT_KHMER && script != USCRIPT_LAO && script != USCRIPT_MYANMAR && script != USCRIPT_THAI) {
+        return nullptr;
+    }
+    UnicodeString name = defaultLSTM(script, status);
+    CharString namebuf;
+    namebuf.appendInvariantChars(name, status).truncate(namebuf.lastIndexOf('.'));
+
+    LocalUResourceBundlePointer rb(
+        ures_openDirect(U_ICUDATA_BRKITR, namebuf.data(), &status));
+    if (U_FAILURE(status)) {
+        return nullptr;
+    }
+
+    return CreateLSTMData(rb.getAlias(), status);
+}
+
+U_CAPI const LSTMData* U_EXPORT2 CreateLSTMData(UResourceBundle* rb, UErrorCode& status)
+{
+    return new LSTMData(rb, status);
+}
+
+U_CAPI const LanguageBreakEngine* U_EXPORT2
+CreateLSTMBreakEngine(UScriptCode script, const LSTMData* data, UErrorCode& status)
+{
+    UnicodeString unicodeSetString;
+    switch(script) {
+        case USCRIPT_THAI:
+            unicodeSetString = UnicodeString(u"[[:Thai:]&[:LineBreak=SA:]]");
+            break;
+        case USCRIPT_MYANMAR:
+            unicodeSetString = UnicodeString(u"[[:Mymr:]&[:LineBreak=SA:]]");
+            break;
+        default:
+            delete data;
+            return nullptr;
+    }
+    UnicodeSet unicodeSet;
+    unicodeSet.applyPattern(unicodeSetString, status);
+    const LanguageBreakEngine* engine = new LSTMBreakEngine(data, unicodeSet, status);
+    if (U_FAILURE(status) || engine == nullptr) {
+        if (engine != nullptr) {
+            delete engine;
+        } else {
+            status = U_MEMORY_ALLOCATION_ERROR;
+        }
+        return nullptr;
+    }
+    return engine;
+}
+
+U_CAPI void U_EXPORT2 DeleteLSTMData(const LSTMData* data)
+{
+    delete data;
+}
+
+
+U_NAMESPACE_END
+
+#endif /* #if !UCONFIG_NO_BREAK_ITERATION */
diff --git a/icu4c/source/common/lstmbe.h b/icu4c/source/common/lstmbe.h
new file mode 100644 (file)
index 0000000..8a1acda
--- /dev/null
@@ -0,0 +1,84 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#ifndef LSTMBE_H
+#define LSTMBE_H
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_BREAK_ITERATION
+
+#include "unicode/uniset.h"
+#include "unicode/ures.h"
+#include "unicode/utext.h"
+#include "unicode/utypes.h"
+
+#include "brkeng.h"
+#include "dictbe.h"
+#include "uvectr32.h"
+
+U_NAMESPACE_BEGIN
+
+class Vectorizer;
+struct LSTMData;
+
+/*******************************************************************
+ * LSTMBreakEngine
+ */
+
+/**
+ * <p>LSTMBreakEngine is a kind of DictionaryBreakEngine that uses a
+ * LSTM to determine language-specific breaks.</p>
+ *
+ * <p>After it is constructed a LSTMBreakEngine may be shared between
+ * threads without synchronization.</p>
+ */
+class LSTMBreakEngine : public DictionaryBreakEngine {
+public:
+    /**
+     * <p>Constructor.</p>
+     */
+    LSTMBreakEngine(const LSTMData* data, const UnicodeSet& set, UErrorCode &status);
+
+    /**
+     * <p>Virtual destructor.</p>
+     */
+    virtual ~LSTMBreakEngine();
+
+    virtual const UChar* name() const;
+
+protected:
+    /**
+     * <p>Divide up a range of known dictionary characters handled by this break engine.</p>
+     *
+     * @param text A UText representing the text
+     * @param rangeStart The start of the range of dictionary characters
+     * @param rangeEnd The end of the range of dictionary characters
+     * @param foundBreaks Output of C array of int32_t break positions, or 0
+     * @return The number of breaks found
+     */
+     virtual int32_t divideUpDictionaryRange(UText *text,
+                                             int32_t rangeStart,
+                                             int32_t rangeEnd,
+                                             UVector32 &foundBreaks ) const;
+private:
+    const LSTMData* fData;
+    const Vectorizer* fVectorizer;
+};
+
+U_CAPI const LanguageBreakEngine* U_EXPORT2 CreateLSTMBreakEngine(
+    UScriptCode script, const LSTMData* data, UErrorCode& status);
+
+U_CAPI const LSTMData* U_EXPORT2 CreateLSTMData(
+    UResourceBundle* rb, UErrorCode& status);
+
+U_CAPI const LSTMData* U_EXPORT2 CreateLSTMDataForScript(
+    UScriptCode script, UErrorCode& status);
+
+U_CAPI void U_EXPORT2 DeleteLSTMData(const LSTMData* data);
+
+U_NAMESPACE_END
+
+#endif /* #if !UCONFIG_NO_BREAK_ITERATION */
+
+#endif  /* LSTMBE_H */
index e0410daaa475fad0b76587cec3e2dc4d124814f2..44735256b6fd4db59b48d713a445ab88b752e062 100644 (file)
@@ -40,6 +40,7 @@ locmap.cpp
 locresdata.cpp
 locutil.cpp
 lsr.cpp
+lstmbe.cpp
 messagepattern.cpp
 normalizer2.cpp
 normalizer2impl.cpp
index c8c3971138414f0de3ae09d3e25bb7f59b8eb42f..cf6ecdadae9be68a3f9b723697f9c075f9b6999f 100644 (file)
@@ -19,6 +19,7 @@ system_symbols:
     PIC system_misc system_debug malloc_functions ubsan
     c_strings c_string_formatting
     int_functions floating_point trigonometry
+    exp_and_tanhf
     stdlib_qsort
     system_locale
     stdio_input stdio_output file_io readlink_function dir_io mmap_functions dlfcn
@@ -76,6 +77,9 @@ group: int_functions
 group: floating_point
     abs fabs floor ceil modf fmod log pow round sqrt trunc
 
+group: exp_and_tanhf
+    expf tanhf
+
 group: trigonometry
     acos asin atan atan2 cos sin tan
     # Additional symbols in an optimized build.
@@ -207,7 +211,7 @@ group: breakiterator
     brkiter.o brkeng.o ubrk.o
     rbbi.o rbbinode.o rbbiscan.o rbbisetb.o rbbistbl.o rbbitblb.o
     rbbidata.o rbbirb.o rbbi_cache.o
-    dictionarydata.o dictbe.o
+    dictionarydata.o dictbe.o lstmbe.o
     # BreakIterator::makeInstance() factory implementation makes for circular dependency
     # between BreakIterator base and FilteredBreakIteratorBuilder.
     filteredbrk.o
@@ -219,6 +223,7 @@ group: breakiterator
     ucharstriebuilder  # for filteredbrk.o
     normlzr  # for dictbe.o, should switch to Normalizer2
     uvector32 # for dictbe.o
+    exp_and_tanhf # for lstmbe.o
 
 group: unormcmp  # unorm_compare()
     unormcmp.o
index 13d3ea86dc9bd7c17c944b2fb7b04a143879421f..4bb615f1b6e3485eb1ab782ff5f14a6e90c54fd7 100644 (file)
@@ -52,7 +52,7 @@ tfsmalls.o tmsgfmt.o trcoll.o tscoll.o tsdate.o tsdcfmsy.o tsdtfmsy.o \
 tsmthred.o tsnmfmt.o tsputil.o tstnrapi.o tstnorm.o tzbdtest.o         \
 tzregts.o tztest.o ucdtest.o usettest.o ustrtest.o strcase.o transtst.o strtest.o thcoll.o \
 bytestrietest.o ucharstrietest.o \
-itrbbi.o rbbiapts.o rbbitst.o rbbimonkeytest.o ittrans.o transapi.o cpdtrtst.o \
+itrbbi.o lstmbetst.o rbbiapts.o rbbitst.o rbbimonkeytest.o ittrans.o transapi.o cpdtrtst.o \
 testutil.o transrt.o trnserr.o normconf.o sfwdchit.o \
 jamotest.o srchtest.o reptest.o regextst.o \
 itrbnf.o itrbnfrt.o itrbnfp.o ucaconf.o icusvtst.o \
index 319c3ab58f68f70f3da6ead4ca6cf5ca81da617b..e8bdacd5fc9d2bdc0c416338c33d7978f2b35452 100644 (file)
@@ -82,6 +82,7 @@
     <ClCompile Include="regiontst.cpp" />
     <ClCompile Include="ucharstrietest.cpp" />
     <ClCompile Include="itrbbi.cpp" />
+    <ClCompile Include="lstmbetst.cpp" />
     <ClCompile Include="rbbiapts.cpp">
       <DisableLanguageExtensions>false</DisableLanguageExtensions>
     </ClCompile>
index b7069801c5b2f5af60bc328fe57681a5c7d2e366..079cbbb1629298ba214182137707bd585f4f49c5 100644 (file)
@@ -64,6 +64,9 @@
     <ClCompile Include="itrbbi.cpp">
       <Filter>break iteration</Filter>
     </ClCompile>
+    <ClCompile Include="lstmbetst.cpp">
+      <Filter>break iteration</Filter>
+    </ClCompile>
     <ClCompile Include="rbbiapts.cpp">
       <Filter>break iteration</Filter>
     </ClCompile>
index 819f413427f1522faabaffe95ee4264e9d43e404..3c9d8a0ec01f75b06b243a3452779ef53a366d9f 100644 (file)
@@ -20,6 +20,7 @@
 
 #include "intltest.h"
 #include "itrbbi.h"
+#include "lstmbetst.h"
 #include "rbbiapts.h"
 #include "rbbitst.h"
 #include "rbbimonkeytest.h"
@@ -36,6 +37,7 @@ void IntlTestRBBI::runIndexedTest( int32_t index, UBool exec, const char* &name,
 #if !UCONFIG_NO_FORMATTING
     TESTCASE_AUTO_CLASS(RBBIMonkeyTest);
 #endif
+    TESTCASE_AUTO_CLASS(LSTMBETest);
     TESTCASE_AUTO_END;
 }
 
diff --git a/icu4c/source/test/intltest/lstmbetst.cpp b/icu4c/source/test/intltest/lstmbetst.cpp
new file mode 100644 (file)
index 0000000..f53421f
--- /dev/null
@@ -0,0 +1,246 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_BREAK_ITERATION
+
+#include "lstmbetst.h"
+#include "lstmbe.h"
+
+#include <algorithm>
+#include <sstream>
+#include <vector>
+
+#include "charstr.h"
+
+//---------------------------------------------
+// runIndexedTest
+//---------------------------------------------
+
+
+void LSTMBETest::runIndexedTest( int32_t index, UBool exec, const char* &name, char* params )
+{
+    fTestParams = params;
+
+    TESTCASE_AUTO_BEGIN;
+
+    TESTCASE_AUTO(TestThaiGraphclust);
+    TESTCASE_AUTO(TestThaiCodepoints);
+    TESTCASE_AUTO(TestBurmeseGraphclust);
+
+    TESTCASE_AUTO_END;
+}
+
+
+//--------------------------------------------------------------------------------------
+//
+//    LSTMBETest    constructor and destructor
+//
+//--------------------------------------------------------------------------------------
+
+LSTMBETest::LSTMBETest() {
+    fTestParams = NULL;
+}
+
+
+LSTMBETest::~LSTMBETest() {
+}
+
+UScriptCode getScriptFromModelName(const std::string& modelName) {
+    if (modelName.find("Thai") == 0) {
+        return USCRIPT_THAI;
+    } else if (modelName.find("Burmese") == 0) {
+        return USCRIPT_MYANMAR;
+    }
+    // Add for other script codes.
+    UPRV_UNREACHABLE;
+}
+
+// Read file generated by
+// https://github.com/unicode-org/lstm_word_segmentation/blob/master/segment_text.py
+// as test cases and compare the Output.
+// Format of the file
+//   Model:\t[Model Name (such as 'Thai_graphclust_model4_heavy')]
+//   Embedding:\t[Embedding type (such as 'grapheme_clusters_tf')]
+//   Input:\t[source text]
+//   Output:\t[expected output separated by | ]
+//   Input: ...
+//   Output: ...
+// The test will ensure the Input contains only the characters can be handled by
+// the model. Since by default the LSTM models are not included, all the tested
+// models need to be included under source/test/testdata.
+
+void LSTMBETest::runTestFromFile(const char* filename) {
+    UErrorCode   status = U_ZERO_ERROR;
+    LocalPointer<const LanguageBreakEngine> engine;
+    //  Open and read the test data file.
+    const char *testDataDirectory = IntlTest::getSourceTestData(status);
+    CharString testFileName(testDataDirectory, -1, status);
+    testFileName.append(filename, -1, status);
+
+    int len;
+    UChar *testFile = ReadAndConvertFile(testFileName.data(), len, "UTF-8", status);
+    if (U_FAILURE(status)) {
+        errln("%s:%d Error %s opening test file %s", __FILE__, __LINE__, u_errorName(status), filename);
+        return;
+    }
+
+    //  Put the test data into a UnicodeString
+    UnicodeString testString(FALSE, testFile, len);
+
+    int32_t start = 0;
+
+    UnicodeString line;
+    int32_t end;
+    std::string actual_sep_str;
+    int32_t caseNum = 0;
+    // Iterate through all the lines in the test file.
+    do {
+        int32_t cr = testString.indexOf(u'\r', start);
+        int32_t lf = testString.indexOf(u'\n', start);
+        end = cr >= 0 ? (lf >= 0 ? std::min(cr, lf) : cr) : lf;
+        line = testString.tempSubString(start, end < 0 ? INT32_MAX : end - start);
+        if (line.length() > 0) {
+            // Separate each line to key and value by TAB.
+            int32_t tab = line.indexOf(u'\t');
+            UnicodeString key = line.tempSubString(0, tab);
+            const UnicodeString value = line.tempSubString(tab+1);
+
+            if (key == "Model:") {
+                std::string modelName;
+                value.toUTF8String<std::string>(modelName);
+                engine.adoptInstead(createEngineFromTestData(modelName.c_str(), getScriptFromModelName(modelName), status));
+                if (U_FAILURE(status)) {
+                    dataerrln("Could not CreateLSTMBreakEngine for " + line + UnicodeString(u_errorName(status)));
+                    return;
+                }
+            } else if (key == "Input:") {
+                // First, we ensure all the char in the Input lines are accepted
+                // by the engine before we test them.
+                caseNum++;
+                bool canHandleAllChars = true;
+                for (int32_t i = 0; i < value.length(); i++) {
+                    if (!engine->handles(value.charAt(i))) {
+                        errln(UnicodeString("Test Case#") + caseNum + " contains char '" +
+                                  UnicodeString(value.charAt(i)) +
+                                  "' cannot be handled by the engine in offset " + i + "\n" + line);
+                        canHandleAllChars = false;
+                        break;
+                    }
+                }
+                if (! canHandleAllChars) {
+                    return;
+                }
+
+                // If the engine can handle all the chars in the Input line, we
+                // then find the break points by calling the engine.
+                std::stringstream ss;
+
+                // Construct the UText which is expected by the the engine as
+                // input from the UnicodeString.
+                UText ut = UTEXT_INITIALIZER;
+                utext_openConstUnicodeString(&ut, &value, &status);
+                if (U_FAILURE(status)) {
+                    dataerrln("Could not utext_openConstUnicodeString for " + value + UnicodeString(u_errorName(status)));
+                    return;
+                }
+
+                UVector32 actual(status);
+                if (U_FAILURE(status)) {
+                    dataerrln("%s:%d Error %s Could not allocate UVextor32", __FILE__, __LINE__, u_errorName(status));
+                    return;
+                }
+                engine->findBreaks(&ut, 0, value.length(), actual);
+                utext_close(&ut);
+                for (int32_t i = 0; i < actual.size(); i++) {
+                    ss << actual.elementAti(i) << ", ";
+                }
+                ss << value.length();
+                // Turn the break points into a string for easy comparions
+                // output.
+                actual_sep_str = "{" + ss.str() + "}";
+            } else if (key == "Output:" && !actual_sep_str.empty()) {
+                std::string d;
+                int32_t sep;
+                int32_t start = 0;
+                int32_t curr = 0;
+                std::stringstream ss;
+                while ((sep = value.indexOf(u'|', start)) >= 0) {
+                    int32_t len = sep - start;
+                    if (len > 0) {
+                        if (curr > 0) {
+                            ss << ", ";
+                        }
+                        curr += len;
+                        ss << curr;
+                    }
+                    start = sep + 1;
+                }
+                // Turn the break points into a string for easy comparions
+                // output.
+                std::string expected = "{" + ss.str() + "}";
+                std::string utf8;
+
+                assertEquals((value + " Test Case#" + caseNum).toUTF8String<std::string>(utf8).c_str(),
+                             expected.c_str(), actual_sep_str.c_str());
+                actual_sep_str.clear();
+            }
+        }
+        start = std::max(cr, lf) + 1;
+    } while (end >= 0);
+
+    delete [] testFile;
+}
+
+void LSTMBETest::TestThaiGraphclust() {
+    runTestFromFile("Thai_graphclust_model4_heavy_Test.txt");
+}
+
+void LSTMBETest::TestThaiCodepoints() {
+    runTestFromFile("Thai_codepoints_exclusive_model5_heavy_Test.txt");
+}
+
+void LSTMBETest::TestBurmeseGraphclust() {
+    runTestFromFile("Burmese_graphclust_model5_heavy_Test.txt");
+}
+
+const LanguageBreakEngine* LSTMBETest::createEngineFromTestData(
+        const char* model, UScriptCode script, UErrorCode& status) {
+    const char* testdatapath=loadTestData(status);
+    if(U_FAILURE(status))
+    {
+        dataerrln("Could not load testdata.dat " + UnicodeString(testdatapath) +  ", " +
+                  UnicodeString(u_errorName(status)));
+        return nullptr;
+    }
+
+    LocalUResourceBundlePointer rb(
+        ures_openDirect(testdatapath, model, &status));
+    if (U_FAILURE(status)) {
+        dataerrln("Could not open " + UnicodeString(model) + " under " +  UnicodeString(testdatapath) +  ", " +
+                  UnicodeString(u_errorName(status)));
+        return nullptr;
+    }
+
+    const LSTMData* data = CreateLSTMData(rb.getAlias(), status);
+    if (U_FAILURE(status)) {
+        dataerrln("Could not CreateLSTMData " + UnicodeString(model) + " under " +  UnicodeString(testdatapath) +  ", " +
+                  UnicodeString(u_errorName(status)));
+        return nullptr;
+    }
+    if (data == nullptr) {
+        return nullptr;
+    }
+
+    LocalPointer<const LanguageBreakEngine> engine(CreateLSTMBreakEngine(script, data, status));
+    if (U_FAILURE(status) || engine.getAlias() == nullptr) {
+        dataerrln("Could not CreateLSTMBreakEngine " + UnicodeString(testdatapath) +  ", " +
+                  UnicodeString(u_errorName(status)));
+        DeleteLSTMData(data);
+        return nullptr;
+    }
+    return engine.orphan();
+}
+
+#endif // #if !UCONFIG_NO_BREAK_ITERATION
diff --git a/icu4c/source/test/intltest/lstmbetst.h b/icu4c/source/test/intltest/lstmbetst.h
new file mode 100644 (file)
index 0000000..da6f86d
--- /dev/null
@@ -0,0 +1,49 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#ifndef LSTMBETEST_H
+#define LSTMBETEST_H
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_BREAK_ITERATION
+
+#include <memory>
+
+#include "intltest.h"
+
+#include "unicode/uscript.h"
+
+struct TestParams;
+
+U_NAMESPACE_BEGIN
+class LanguageBreakEngine;
+U_NAMESPACE_END
+
+
+/**
+ * Test the LSTMBreakEngine class giving different rules
+ */
+class LSTMBETest: public IntlTest {
+public:
+
+    LSTMBETest();
+    virtual ~LSTMBETest();
+
+    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
+
+    void TestThaiGraphclust();
+    void TestThaiCodepoints();
+    void TestBurmeseGraphclust();
+    void runTestFromFile(const char* filename);
+
+private:
+    const LanguageBreakEngine* createEngineFromTestData(const char* model, UScriptCode script, UErrorCode& status);
+
+    // Test parameters, from the test framework and test invocation.
+    const char* fTestParams;
+};
+
+#endif /* #if !UCONFIG_NO_BREAK_ITERATION */
+
+#endif
index 6e09938f9e607bd5f81d5600a4d24735f300b1ae..7e25a1ac648e9a96a379af7abb39b450fe789905 100644 (file)
@@ -44,6 +44,10 @@ def generate_rb(config, io, common_vars):
         "testaliases",
         "testempty",
         "testtypes",
+        # LSTM models
+        "Thai_graphclust_model4_heavy",
+        "Thai_codepoints_exclusive_model5_heavy",
+        "Burmese_graphclust_model5_heavy"
         # "metaZones",
         # "timezoneTypes",
         # "windowsZones",
@@ -59,7 +63,7 @@ def generate_rb(config, io, common_vars):
             input_files = [InFile("%s.txt" % bn) for bn in basenames],
             output_files = [OutFile("%s.res" % bn) for bn in basenames],
             tool = IcuTool("genrb"),
-            args = "-q -s {IN_DIR} -d {OUT_DIR} {INPUT_FILE}",
+            args = "-q -s {IN_DIR} -eUTF-8 -d {OUT_DIR} {INPUT_FILE}",
             format_with = {},
             repeat_with = {}
         ),
@@ -169,7 +173,6 @@ def generate_conv(config, io, common_vars):
         )
     ]
 
-
 def generate_copy(config, io, common_vars):
     return [
         CopyRequest(
diff --git a/icu4c/source/test/testdata/Burmese_graphclust_model5_heavy.txt b/icu4c/source/test/testdata/Burmese_graphclust_model5_heavy.txt
new file mode 100644 (file)
index 0000000..93ab54d
--- /dev/null
@@ -0,0 +1,7061 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+Burmese_graphclust_model5_heavy:table(nofallback){
+    model{"Burmese_graphclust_model5_heavy"}
+    type{"graphclust"}
+    embeddings:int{12}
+    hunits:int{12}
+    dict{
+        " ",
+        "း",
+        "ာ",
+        "င်",
+        "အ",
+        "တ",
+        "က်",
+        "ယ်",
+        "က",
+        "ရ",
+        "န်",
+        "ပ",
+        "ါ",
+        "မ",
+        "သ",
+        "လ",
+        "တွေ",
+        "စ်",
+        "ကို",
+        "ပ်",
+        "ည်",
+        "စ",
+        "တ်",
+        "မှ",
+        "။",
+        "ရေ",
+        "နေ",
+        "တဲ့",
+        "ပြ",
+        "နဲ့",
+        "န",
+        "ဖြ",
+        "ဝ",
+        "လို့",
+        "မ်",
+        "တေ",
+        "ခဲ့",
+        "ပြီ",
+        "နို",
+        "ဆို",
+        "ပေ",
+        "ာ်",
+        "ပြေ",
+        "ထ",
+        "ကြ",
+        "င့်",
+        "မှု",
+        "ရှိ",
+        "ဆ",
+        "ချ",
+        "သူ",
+        "ခ",
+        "လို",
+        "တို",
+        "ဘ",
+        "မြ",
+        "တွ",
+        "ဦ",
+        "ငံ",
+        "၊",
+        "ဆေ",
+        "ခံ",
+        "လု",
+        "ဒီ",
+        "ဟ",
+        "စီ",
+        "ဖို့",
+        "ကြေ",
+        "ဖွဲ့",
+        "ဒေ",
+        "ာ့",
+        "စို",
+        "ရှ",
+        "ကြီ",
+        "ရဲ့",
+        "ကေ",
+        "အေ",
+        "သွ",
+        "ခု",
+        "ကျ",
+        "ါ်",
+        "လေ",
+        "ဒ",
+        "ပို",
+        "ခို",
+        "ယ",
+        "၁",
+        "ကျေ",
+        "ဘီ",
+        "နှ",
+        "ခွ",
+        "ဖ",
+        "မျို",
+        "၂",
+        "၀",
+        "ရွ",
+        "လူ",
+        "ဆုံ",
+        "စု",
+        "သေ",
+        "ထေ",
+        "သိ",
+        "မေ",
+        "ဉ်",
+        "တီ",
+        "ပွဲ",
+        "ကု",
+        "ယ့်",
+        "ချု",
+        "ဂ",
+        "တို့",
+        "လုံ",
+        "မြို့",
+        "ထု",
+        "မြေ",
+        "ယူ",
+        "က္",
+        "မျ",
+        "ပြု",
+        "န့်",
+        "ထဲ",
+        "နေ့",
+        "ထွ",
+        "ဥ",
+        "ဘူ",
+        "ထိ",
+        "စ္",
+        "တွေ့",
+        "ခြ",
+        "ဌ",
+        "ဖေ",
+        "စေ",
+        "လွ",
+        "ဆွေ",
+        "ကွ",
+        "င",
+        "ရီ",
+        "မို",
+        "ညီ",
+        "N",
+        "ရုံ",
+        "န္",
+        "အဲ",
+        "လွှ",
+        "မ္",
+        "ထို",
+        "ရို",
+        "လ်",
+        "ဒု",
+        "နွေ",
+        "ခြေ",
+        "ပဲ",
+        "တိ",
+        "မိ",
+        "ခေ",
+        "မီ",
+        "ဘေ",
+        "လှ",
+        "င်္",
+        "ဆီ",
+        "ရဲ",
+        "ရိ",
+        "A",
+        "သုံ",
+        "ကိ",
+        "ရု",
+        "မှူ",
+        "C",
+        "ည့်",
+        "ယေ",
+        "ည",
+        "a",
+        "ဝေ",
+        "၅",
+        "ဂ္",
+        "၃",
+        "ကူ",
+        "တူ",
+        "ဇ",
+        "e",
+        "နီ",
+        "ပွ",
+        "ချိ",
+        "ပု",
+        "ငြိ",
+        "ဂျ",
+        "စိ",
+        "ဏ်",
+        "စွ",
+        "လဲ",
+        "ရွေ",
+        "၆",
+        "ပုံ",
+        "n",
+        "သူ့",
+        "(",
+        ")",
+        "S",
+        "အိ",
+        "သီ",
+        "၄",
+        "စွဲ",
+        "၇",
+        "၈",
+        "သံ",
+        "မူ",
+        "D",
+        "i",
+        "၉",
+        "တု",
+        "ခြုံ",
+        "o",
+        "r",
+        "ဟု",
+        "ချို့",
+        "မွ",
+        "ထူ",
+        "ဏ",
+        "ပူ",
+        "မဲ့",
+        "ငွေ",
+        "L",
+        "စုံ",
+        "P",
+        "ဗ",
+        "အို",
+        "ဗို",
+        "ကြို",
+        "t",
+        "ရှ်",
+        "ပိ",
+        "အု",
+        "ဒေ့",
+        "ရှေ့",
+        "မံ",
+        "လူ့",
+        "ဖွ",
+        "U",
+        "ဓ",
+        "ဖြေ",
+        "ဒ်",
+        "လီ",
+        "ပို့",
+        "ဘဲ",
+        "လေ့",
+        "l",
+        "ဇေ",
+        "I",
+        "ကြံ",
+        "ဧ",
+        "ဟေ",
+        "လိ",
+        "မဲ",
+        "မ့်",
+        "ကြိ",
+        "ဖြို",
+        "နှု",
+        "F",
+        "K",
+        "M",
+        "ရှေ",
+        "ဟို",
+        "ါ့",
+        "s",
+        "ခွဲ",
+        "ဖျ",
+        "ဏီ",
+        "ပျ",
+        "ဂို",
+        "ခဲ",
+        "R",
+        "ထွေ",
+        "ဘု",
+        "ချီ",
+        "လျှေ",
+        "ဖိ",
+        "ကျွ",
+        "ရွှေ",
+        "သို",
+        "ဓိ",
+        "-",
+        "h",
+        "နှို",
+        "လှု",
+        "c",
+        "ဝို",
+        "m",
+        "ဏ္",
+        "ညှိ",
+        "u",
+        "ဒိ",
+        "ညွှ",
+        "ဿ",
+        "ပြို",
+        "ချို",
+        "မျှ",
+        "ဋ္",
+        "တွဲ",
+        "ယံ",
+        "ဍ",
+        "ချေ",
+        "ဖွံ့",
+        "O",
+        "ငြ",
+        "ကျို",
+        "စံ",
+        "T",
+        "ဂု",
+        "ညွ",
+        "ဆု",
+        "ဆံ",
+        "လျ",
+        "d",
+        "ဖူ",
+        "H",
+        "တ္",
+        "ကျူ",
+        "ဃ",
+        "ဋိ",
+        "'",
+        "အီ",
+        "B",
+        "နှံ",
+        "မြှ",
+        "y",
+        "ကွဲ",
+        "လျေ",
+        "မု",
+        "ဆဲ",
+        "နှီ",
+        "ရှု",
+        "ဒို",
+        "ဆိ",
+        "ဖွေ",
+        "ဖြူ",
+        "သြ",
+        "ဖို",
+        "ကြုံ",
+        "ရွှေ့",
+        "မွေ",
+        "E",
+        "G",
+        "ဈေ",
+        "ပံ့",
+        "သု",
+        "g",
+        "စဲ",
+        "တံ",
+        "ပီ",
+    }
+    data:intvector{
+        1096750353,
+        -1063986413,
+        -1062596740,
+        1092709663,
+        1066167299,
+        1095673996,
+        -1107895189,
+        1065903672,
+        -1058841372,
+        -1058279743,
+        1097546499,
+        -1087421171,
+        -1110244829,
+        1087802055,
+        1069427355,
+        1013662598,
+        995118755,
+        -1118991632,
+        -1121861654,
+        -1107930155,
+        1081420409,
+        1079615124,
+        -1070782118,
+        -1114885085,
+        1038732448,
+        1079819450,
+        1080009858,
+        -1136441950,
+        1040794162,
+        1019752792,
+        -1119256581,
+        -1123616251,
+        1075104948,
+        1087945501,
+        -1087542469,
+        -1095464736,
+        1015060932,
+        1063521493,
+        1057908948,
+        1032065441,
+        -1122259596,
+        -1094453153,
+        1032799103,
+        -1113693524,
+        1057747686,
+        1058117130,
+        -1082554303,
+        -1111075202,
+        1044857758,
+        -1105524109,
+        -1097360226,
+        -1074152471,
+        -1081844825,
+        -1089250656,
+        -1067828068,
+        -1079801533,
+        1043574034,
+        -1096032332,
+        1006292712,
+        1074669209,
+        -1113191312,
+        1015425304,
+        1008709162,
+        -1109164032,
+        1033953233,
+        1031378765,
+        -1107261960,
+        1044677190,
+        -1109029996,
+        -1114269375,
+        1024278490,
+        1056988379,
+        -1113910521,
+        1069781073,
+        1053483654,
+        1037478441,
+        -1080311278,
+        -1067359098,
+        -1106591204,
+        -1096928589,
+        1044033388,
+        1060055701,
+        -1076385881,
+        1025944056,
+        -1108705358,
+        1071044692,
+        1064975569,
+        1043148661,
+        -1098008133,
+        -1090915552,
+        1043122810,
+        1057637915,
+        1040427876,
+        1059637927,
+        -1056548148,
+        -1092335736,
+        1057087652,
+        -1098232645,
+        -1118885246,
+        -1118521234,
+        -1121522158,
+        1030044167,
+        -1086286802,
+        -1123914467,
+        -1108855456,
+        -1106988030,
+        1051208894,
+        -1141820794,
+        1052420665,
+        -1114538512,
+        -1115985126,
+        1048219409,
+        1033227632,
+        1000795458,
+        1058817203,
+        1041895199,
+        -1128430099,
+        986572496,
+        1062121018,
+        1043997057,
+        1036881418,
+        1058263765,
+        1049694468,
+        -1107269268,
+        -1127305100,
+        -1082657166,
+        1028589556,
+        1039590008,
+        1043681304,
+        1050203836,
+        -1086893071,
+        -1109793247,
+        -1098274935,
+        1015936512,
+        1045047083,
+        -1081583262,
+        -1109881446,
+        1026514272,
+        1051049640,
+        -1135717930,
+        1033627674,
+        -1103970687,
+        -1135652065,
+        1065666741,
+        1015325364,
+        1062906991,
+        1101040253,
+        -1099093409,
+        -1096124269,
+        1050366744,
+        1018918462,
+        -1140026478,
+        1060193653,
+        1069175133,
+        -1089796586,
+        -1103141454,
+        -1111777184,
+        1024588779,
+        -1115953985,
+        1034400544,
+        1033272988,
+        1055199022,
+        1046486840,
+        1053451485,
+        -1122471869,
+        1019633468,
+        1037497588,
+        1031661783,
+        -1095973243,
+        -1119314788,
+        -1129995220,
+        -1107530988,
+        -1076846683,
+        -1129693225,
+        -1081584832,
+        -1110537897,
+        1032037746,
+        -1131611601,
+        1039982964,
+        1041684774,
+        -1088141590,
+        1025362348,
+        -1117881944,
+        1052770646,
+        -1104286220,
+        -1086541865,
+        1055761506,
+        -1095600986,
+        -1119048044,
+        -1122104534,
+        -1133412276,
+        -1120132043,
+        1028775501,
+        -1145162528,
+        -1088618720,
+        1046041314,
+        1062443996,
+        1080472615,
+        -1098674573,
+        1063959754,
+        -1082792257,
+        -1068339486,
+        1078173658,
+        -1090367848,
+        1030863080,
+        1051530864,
+        1051339833,
+        -1097438161,
+        -1086236616,
+        -1088620401,
+        1051264366,
+        1062388563,
+        1041677197,
+        1043481869,
+        -1093785189,
+        -1110636132,
+        1067301405,
+        1038409369,
+        -1080796462,
+        1069959850,
+        1076152654,
+        -1121859108,
+        -1110053169,
+        1060885008,
+        986172457,
+        -1115677566,
+        1059150154,
+        -1089994209,
+        -1132837683,
+        1051892092,
+        1061677640,
+        1049131586,
+        1053643819,
+        -1063773532,
+        -1114004493,
+        -1094077496,
+        1040011937,
+        1047558417,
+        -1082767882,
+        -1114182766,
+        1036463825,
+        1083811412,
+        1059981569,
+        -1145802006,
+        1058921933,
+        -1076319756,
+        1008458120,
+        -1096322897,
+        1078496911,
+        1075850631,
+        -1080916527,
+        1048750294,
+        -1125318706,
+        1028674262,
+        -1108734022,
+        -1093020867,
+        -1140408330,
+        -1116017313,
+        -1087496973,
+        -1145953924,
+        1036473664,
+        1017576789,
+        1029456355,
+        1036404106,
+        -1103173667,
+        1059064973,
+        1047991225,
+        1048591620,
+        -1081833703,
+        -1073112463,
+        -1130411471,
+        -1095878912,
+        1053407343,
+        1054868517,
+        -1077551836,
+        1017875698,
+        -1107309337,
+        -1113629643,
+        1050082102,
+        -1111447491,
+        1054005694,
+        1087690287,
+        -1080689183,
+        1018141203,
+        -1088304662,
+        -1090511250,
+        1026006165,
+        1057438962,
+        1077037172,
+        -1046732874,
+        -1094692002,
+        -1104590479,
+        1086165507,
+        1075104550,
+        1065260337,
+        1049354522,
+        -1047789738,
+        -1061536022,
+        1066413748,
+        1050216647,
+        -1081788130,
+        -1115606585,
+        1010282663,
+        1036479805,
+        -1118254338,
+        1029396205,
+        1028522691,
+        1030086410,
+        -1114396050,
+        -1125579263,
+        -1113926920,
+        -1087520290,
+        1042342453,
+        -1133821936,
+        -1112067466,
+        1045542607,
+        1032668561,
+        1030510778,
+        -1091387194,
+        1046483736,
+        -1096302934,
+        -1098905033,
+        -1122882288,
+        -1132180245,
+        1057078341,
+        -1056129178,
+        -1076916189,
+        1091301166,
+        1076054063,
+        1094994864,
+        1059244308,
+        1074846040,
+        -1061064363,
+        -1053991387,
+        1092902706,
+        -1063037140,
+        1039376665,
+        1023665352,
+        1024243558,
+        -1105075822,
+        -1123640868,
+        -1127969949,
+        -1121337584,
+        -1121837944,
+        -1109610398,
+        -1117610209,
+        -1128842496,
+        1015798417,
+        1045067384,
+        -1071183895,
+        -1073728925,
+        1039705864,
+        -1111663994,
+        1081844392,
+        -1119328013,
+        1052031452,
+        -1060596138,
+        -1063228671,
+        1099885915,
+        1059056344,
+        1008672088,
+        1041757718,
+        -1106404967,
+        1049224285,
+        1057154351,
+        -1113303008,
+        1056136459,
+        -1098870075,
+        1033449941,
+        1032278148,
+        -1102383724,
+        -1098749660,
+        1056631719,
+        -1105105311,
+        -1088960178,
+        1048850841,
+        1041202016,
+        -1115430393,
+        -1074325346,
+        -1097310239,
+        1020656904,
+        -1116508600,
+        1020199648,
+        1050431501,
+        -1098747472,
+        1020745048,
+        1029229396,
+        1056579929,
+        1045179329,
+        -1126636238,
+        1055292791,
+        -1081693430,
+        1029874505,
+        -1129604393,
+        -1110108883,
+        1036713178,
+        -1129456785,
+        -1064340306,
+        1025633103,
+        1037633409,
+        1065437991,
+        1051726960,
+        1039850160,
+        1065324848,
+        -1063188379,
+        -1082852519,
+        1075903370,
+        -1092450949,
+        1011793688,
+        1057307758,
+        1009301445,
+        1032076485,
+        1057147448,
+        -1123851641,
+        1057488069,
+        1076587635,
+        1045771116,
+        1051679119,
+        -1085932389,
+        1030736024,
+        1053906723,
+        1032210314,
+        1056260011,
+        1054965718,
+        1050250085,
+        979576608,
+        1034911769,
+        -1100227143,
+        1024693729,
+        1019629180,
+        -1106694825,
+        -1094044913,
+        1050336646,
+        -1079398032,
+        1051927555,
+        1071272348,
+        1087377321,
+        1062327119,
+        1029280932,
+        1054351504,
+        -1096768288,
+        -1098397337,
+        1076554130,
+        -1091345564,
+        -1104361421,
+        -1081237455,
+        1054127262,
+        1017985332,
+        1055446350,
+        1081042200,
+        -1086009242,
+        1056574217,
+        -1097112180,
+        -1069543999,
+        -1110829538,
+        1047831329,
+        -1085677569,
+        -1091939943,
+        1042202526,
+        -1128653873,
+        1043285401,
+        1045826036,
+        -1081860997,
+        1044256426,
+        -1094008322,
+        -1103339106,
+        -1109703859,
+        1049311862,
+        -1101503242,
+        1034461075,
+        -1105441650,
+        1075681017,
+        1027794209,
+        1045196067,
+        1056059715,
+        1065534821,
+        -1127140220,
+        1036327398,
+        -1120840399,
+        1044621935,
+        1037537562,
+        -1082044508,
+        -1108661978,
+        -1081999559,
+        1061011139,
+        -1105823670,
+        -1093843958,
+        -1111394590,
+        -1113172728,
+        -1102014993,
+        1024268467,
+        -1093431942,
+        -1107656865,
+        1062593135,
+        1067274256,
+        1018713321,
+        -1095495137,
+        -1090688208,
+        1016967946,
+        -1123412359,
+        1105090659,
+        1067033872,
+        -1066120384,
+        -1118157913,
+        -1085459611,
+        -1101463291,
+        -1114660106,
+        -1094308907,
+        -1094908262,
+        1038325818,
+        -1078123782,
+        -1077893526,
+        1036956493,
+        -1117404055,
+        1025345345,
+        1061875348,
+        -1098479330,
+        -1119743720,
+        1013053397,
+        1043522919,
+        1056360077,
+        1073253761,
+        -1095496434,
+        1042808234,
+        1037784616,
+        1033538217,
+        -1105832044,
+        -1098795213,
+        1044514479,
+        1014719994,
+        -1119305764,
+        1046355579,
+        1053135006,
+        1031805262,
+        1044234321,
+        1051601532,
+        -1108885504,
+        -1102629661,
+        1026022044,
+        1051362195,
+        -1117363581,
+        1080557093,
+        1088086242,
+        -1102148781,
+        -1082930041,
+        -1090568878,
+        1050883891,
+        1059443233,
+        1071837967,
+        1076024443,
+        -1080668762,
+        -1106070491,
+        -1103323582,
+        1004816609,
+        -1145444429,
+        1060015421,
+        1048456387,
+        1030213217,
+        1025489587,
+        1052400361,
+        -1114444248,
+        -1116705998,
+        1038272914,
+        -1093579852,
+        -1136539950,
+        1027579347,
+        1044656378,
+        1078491304,
+        1047713741,
+        1062555778,
+        1051319436,
+        1049788862,
+        -1112109558,
+        1019253834,
+        -1137110570,
+        -1087237782,
+        1034229773,
+        -1106854402,
+        1033845750,
+        -1134375626,
+        -1103023102,
+        1005738316,
+        1024591190,
+        -1069818383,
+        1025090803,
+        1011861636,
+        -1113566286,
+        -1065283506,
+        1050324848,
+        992331856,
+        1033351017,
+        -1094457003,
+        1017658141,
+        1040893137,
+        1045337285,
+        -1112177619,
+        1040468664,
+        1028159398,
+        1026355848,
+        1013424268,
+        -1129162798,
+        -1114401691,
+        -1090928239,
+        -1092764832,
+        1041618957,
+        1059826771,
+        1065250436,
+        -1105386034,
+        1041896750,
+        -1110199542,
+        1033505619,
+        -1120648094,
+        -1126138256,
+        -1109589239,
+        1028061767,
+        -1137149045,
+        -1105597362,
+        -1113926228,
+        -1074431394,
+        1041518711,
+        -1129381543,
+        -1116353684,
+        1023985478,
+        1049335886,
+        1042677026,
+        1026861336,
+        1022957021,
+        -1089160457,
+        -1099596503,
+        -1077544621,
+        1041497754,
+        -1095244622,
+        -1094297862,
+        -1107189220,
+        -1119081322,
+        -1102770577,
+        -1086367449,
+        -1108241766,
+        -1098729572,
+        -1092434124,
+        1039466838,
+        -1112229442,
+        1052297841,
+        -1094273083,
+        -1106922907,
+        1030044992,
+        -1096257111,
+        1043063152,
+        1051820715,
+        1023960706,
+        1040147890,
+        -1085069393,
+        1049337047,
+        -1102756197,
+        1061921863,
+        1046087875,
+        -1098563246,
+        -1097544241,
+        -1122273229,
+        -1080784666,
+        1018101211,
+        1043046758,
+        -1076008619,
+        -1097151873,
+        -1108426197,
+        -1099597977,
+        1047652417,
+        1051320525,
+        1050658533,
+        1025139875,
+        1031985330,
+        -1104264161,
+        1052039522,
+        -1091842626,
+        -1182141584,
+        -1098656140,
+        1046174029,
+        1067563896,
+        -1072210443,
+        -1071378115,
+        -1084199284,
+        -1120596666,
+        1034532957,
+        1057708890,
+        1056288177,
+        -1093423333,
+        -1107137402,
+        1033597076,
+        999904336,
+        1036870632,
+        -1075550080,
+        -1098750059,
+        -1105303530,
+        -1107099689,
+        -1116665638,
+        1052290742,
+        -1081499263,
+        1068261473,
+        1052608811,
+        1048205137,
+        -1100466362,
+        -1101950058,
+        -1097448594,
+        -1110523537,
+        1038414795,
+        1056382251,
+        -1073527151,
+        1024529144,
+        -1110910141,
+        -1060248185,
+        -1084393976,
+        1027028015,
+        1070932174,
+        1074335348,
+        1041040908,
+        1054436021,
+        -1053939457,
+        -1073963023,
+        1070486314,
+        -1087127492,
+        -1105602031,
+        1037333375,
+        994095176,
+        -1090974695,
+        1028857710,
+        1030979694,
+        -1060764479,
+        -1079600046,
+        1042780578,
+        1011857127,
+        1036125777,
+        1052212737,
+        -1095725074,
+        1023517722,
+        -1154087636,
+        1052871423,
+        1007365836,
+        1032757685,
+        -1103222572,
+        1031835312,
+        1007388876,
+        988524968,
+        1028962313,
+        -1087009173,
+        -1098143284,
+        -1097134956,
+        -1095541692,
+        1033906545,
+        1053022424,
+        1026822492,
+        -1077646797,
+        -1097466955,
+        981021196,
+        -1112951991,
+        -1102941023,
+        -1091235159,
+        1025085184,
+        1046619215,
+        -1104312099,
+        1082459907,
+        1055573785,
+        1043705386,
+        -1106056066,
+        1076754627,
+        955855360,
+        1047575850,
+        -1095542166,
+        -1086578625,
+        1078855647,
+        -1098310429,
+        1062000429,
+        -1100915032,
+        -1101749010,
+        1023712918,
+        -1100983286,
+        1035639497,
+        -1100068453,
+        -1094786416,
+        1040939044,
+        1060193689,
+        1022567828,
+        1032730371,
+        -1130873854,
+        -1099760006,
+        1025843577,
+        1044181413,
+        -1089464763,
+        1029966823,
+        -1120697444,
+        1034352597,
+        -1123017597,
+        1047684927,
+        1047407420,
+        1013740584,
+        -1086537498,
+        1046004334,
+        -1137592618,
+        1082596958,
+        1053830803,
+        1073102606,
+        -1084246300,
+        -1068439203,
+        1079802975,
+        -1101246386,
+        -1089556359,
+        -1111299625,
+        -1090340913,
+        1015259232,
+        1056789269,
+        -1105347536,
+        1035299623,
+        -1091860148,
+        1031351018,
+        1014322230,
+        -1103172107,
+        1052769557,
+        -1113568108,
+        1011155155,
+        1050165075,
+        1073610769,
+        -1073644352,
+        1053487369,
+        -1110932330,
+        1059895967,
+        1035209190,
+        -1122323894,
+        1047471948,
+        -1075878416,
+        1051199170,
+        -1096259558,
+        1066232909,
+        1057691274,
+        -1045688621,
+        1042684114,
+        -1089944850,
+        -1089374807,
+        -1096211303,
+        -1089414544,
+        -1108608292,
+        1052139364,
+        -1120438821,
+        1100331023,
+        1095083231,
+        -1094217253,
+        -1071944076,
+        1082372080,
+        1088889415,
+        1091930754,
+        1091190844,
+        1103092201,
+        -1074195849,
+        -1091412362,
+        -1086774172,
+        -1098495308,
+        994714672,
+        -1086536545,
+        1050693742,
+        1012933356,
+        -1098314738,
+        -1079733034,
+        -1092857596,
+        -1119285121,
+        1041778025,
+        1084559892,
+        1063534287,
+        1031332740,
+        -1116882878,
+        1024564399,
+        1062595140,
+        996376371,
+        -1106930694,
+        1055559227,
+        1036700922,
+        -1118854252,
+        1023072382,
+        -1082739078,
+        1033103338,
+        -1146398023,
+        -1106681779,
+        -1132688499,
+        1069027461,
+        -1127662332,
+        -1072251126,
+        1055519109,
+        1032425800,
+        989678436,
+        1011508832,
+        -1122923530,
+        1053571271,
+        -1055902130,
+        -1080752063,
+        -1093640004,
+        -1131530118,
+        1056748373,
+        -1101668809,
+        1065716389,
+        -1054979078,
+        -1059918615,
+        1065723123,
+        1065531437,
+        -1114334850,
+        1024596088,
+        -1091313739,
+        -1128589008,
+        1032197646,
+        1043208281,
+        1037876404,
+        1072219747,
+        -1092537180,
+        -1103729895,
+        1032229616,
+        1043874946,
+        1051447777,
+        -1095799270,
+        -1110932439,
+        -1077581709,
+        1052602601,
+        -1107899962,
+        1059012886,
+        1054406642,
+        -1097246663,
+        -1080499622,
+        -1105300939,
+        -1095216416,
+        1050727748,
+        -1081316904,
+        -1122339439,
+        -1076199343,
+        -1090534444,
+        -1122114168,
+        1068260894,
+        1055395846,
+        -1110085098,
+        -1107035206,
+        -1095443063,
+        -1102961373,
+        1054758589,
+        -1091774594,
+        1050245090,
+        1071725769,
+        1042855497,
+        1049102701,
+        1062324597,
+        1041599565,
+        -1101352117,
+        -1082844370,
+        1072593922,
+        1024644884,
+        -1098309362,
+        -1125890952,
+        -1113308964,
+        1077323503,
+        1046143716,
+        -1124444572,
+        1018499777,
+        -1139434966,
+        -1123857742,
+        1021960396,
+        -1112663846,
+        1014939236,
+        1035728716,
+        1064683771,
+        1074648399,
+        -1093251673,
+        -1059499699,
+        -1072249825,
+        1047329980,
+        1096868346,
+        1049590893,
+        1051729649,
+        -1088420484,
+        -1096542203,
+        -1095735138,
+        -1105271656,
+        -1114278639,
+        1047721792,
+        1067983042,
+        1048940925,
+        1030743127,
+        1030011575,
+        -1113665035,
+        -1120928733,
+        1029608155,
+        -1074185842,
+        -1086945582,
+        -1109597352,
+        1043514732,
+        1019863450,
+        -1077256432,
+        -1088406592,
+        -1103241785,
+        1035606810,
+        -1141365478,
+        -1117174255,
+        1041307510,
+        -1095712004,
+        -1095705318,
+        1024071369,
+        -1114466852,
+        1054341088,
+        1065802940,
+        1067718696,
+        1048414788,
+        -1093635332,
+        997677822,
+        -1125973742,
+        -1105708879,
+        -1108005003,
+        1035264553,
+        -1139760944,
+        1065971494,
+        1057503203,
+        1046051128,
+        1045457957,
+        -1108716186,
+        -1099180408,
+        1039611157,
+        1034379002,
+        1043331845,
+        -1096575631,
+        1013510866,
+        -1096353777,
+        1061444042,
+        1025543678,
+        -1085587593,
+        1015466655,
+        1059485939,
+        -1092425245,
+        -1113010495,
+        -1107084322,
+        1041329256,
+        1050080172,
+        -1113518000,
+        -1103308606,
+        1059078838,
+        -1101939388,
+        -1102893724,
+        -1126889144,
+        -1070962394,
+        -1083759306,
+        1051359512,
+        1042263562,
+        1043924852,
+        1072061204,
+        -1086330568,
+        -1092954785,
+        -1116220743,
+        -1082855609,
+        -1086076102,
+        -1113153676,
+        1055700268,
+        1064060055,
+        -1149610368,
+        -1097720722,
+        1031246480,
+        1057147850,
+        -1086226468,
+        -1054215342,
+        1034409411,
+        -1080495974,
+        1046903763,
+        1050547500,
+        1024832887,
+        1024050746,
+        -1097428431,
+        -1085643273,
+        1022646476,
+        1052520099,
+        -1140356898,
+        -1095000178,
+        1011122156,
+        -1102726875,
+        1041080684,
+        1067677439,
+        -1080325315,
+        -1092272019,
+        -1097960560,
+        -1102033125,
+        1034212623,
+        -1122932110,
+        -1071919496,
+        -1102042736,
+        1036226677,
+        -1102722975,
+        1070881965,
+        -1131821720,
+        -1103591345,
+        -1090066343,
+        -1149001100,
+        -1123896901,
+        1039927782,
+        1034352748,
+        1062945795,
+        -1105242084,
+        -1096891944,
+        1047423983,
+        1025533962,
+        -1088590674,
+        1035771046,
+        -1092703081,
+        1030605752,
+        -1107129024,
+        -1103045245,
+        -1080321077,
+        1056081793,
+        -1097501780,
+        1061873834,
+        1035046736,
+        1051528987,
+        1027876204,
+        -1086052428,
+        1046534612,
+        -1097710876,
+        -1100858117,
+        1034449063,
+        1047651529,
+        -1096947642,
+        -1107259955,
+        1063312098,
+        -1103874927,
+        -1074226529,
+        -1118649995,
+        -1070163807,
+        -1088973539,
+        1050686075,
+        1039368048,
+        1051212761,
+        -1100116812,
+        -1090445932,
+        -1122795400,
+        1065361887,
+        1035018766,
+        -1087238554,
+        1072322866,
+        -1075705198,
+        -1074663970,
+        1073490607,
+        1055506121,
+        1056315205,
+        1055900822,
+        -1097988348,
+        -1114852220,
+        -1080107895,
+        -1094721209,
+        1046692867,
+        -1098340650,
+        -1067254919,
+        -1120412784,
+        1071008886,
+        1039198893,
+        1050906751,
+        1057324854,
+        -1115490343,
+        -1054522186,
+        -1129233209,
+        1038440410,
+        1034160370,
+        1049161278,
+        1040030972,
+        -1091720133,
+        -1119040120,
+        -1091949116,
+        1033097256,
+        1058361656,
+        1048915008,
+        1049387587,
+        1036350542,
+        -1098386837,
+        -1093745099,
+        -1096922691,
+        -1076767150,
+        1062073353,
+        -1127875375,
+        1026854387,
+        1018098934,
+        -1088234564,
+        -1106392482,
+        -1148580109,
+        1043147668,
+        1067437617,
+        -1098916122,
+        -1083813663,
+        1038683304,
+        -1113718675,
+        1027448684,
+        1018242478,
+        -1147529704,
+        -1100001778,
+        1040687675,
+        1032633342,
+        -1102117500,
+        -1110937091,
+        -1077209530,
+        -1078309889,
+        1059222635,
+        -1099377725,
+        -1081712969,
+        -1079586960,
+        -1129905767,
+        1024400042,
+        -1097372010,
+        -1101572295,
+        -1092645753,
+        -1104962849,
+        -1079644124,
+        -1103478408,
+        -1075415668,
+        1024967939,
+        1050895212,
+        -1113909343,
+        -1115588044,
+        1073772908,
+        -1099037545,
+        -1133083634,
+        1023587522,
+        -1082294354,
+        1049117506,
+        1037259487,
+        1050003495,
+        -1085967744,
+        -1112240454,
+        1029594498,
+        -1129420265,
+        -1111049396,
+        1055358929,
+        -1043601402,
+        -1095984504,
+        -1107739420,
+        1078677326,
+        -1077865593,
+        -1070360966,
+        1051618626,
+        -1073579938,
+        1023442827,
+        1064958148,
+        -1082459610,
+        -1104597986,
+        1091034342,
+        1078065375,
+        1073081046,
+        1071882829,
+        1015886422,
+        -1100363658,
+        1067147176,
+        1079774772,
+        1083943107,
+        -1086779818,
+        -1073355336,
+        -1086968632,
+        1031372823,
+        1053840719,
+        1061102666,
+        -1074436711,
+        -1066786602,
+        1063394274,
+        1027864926,
+        1045351459,
+        1025457822,
+        1052461248,
+        -1084347689,
+        -1096924886,
+        -1137454496,
+        1040396685,
+        1049298100,
+        1025349087,
+        1029417231,
+        1054564106,
+        -1118119785,
+        986347119,
+        1022817037,
+        1024891797,
+        -1084942958,
+        -1086436156,
+        -1128606083,
+        1045931035,
+        -1056650363,
+        1046161497,
+        -1096508482,
+        -1078093141,
+        -1094626612,
+        -1078076842,
+        -1114712000,
+        1034651742,
+        -1095709196,
+        1063275433,
+        1100950722,
+        1083830094,
+        -1068490192,
+        -1071322080,
+        -1101032218,
+        1052876509,
+        1087739565,
+        1069720255,
+        1093256827,
+        -1064231275,
+        -1073882590,
+        1003704256,
+        -1102488974,
+        1057633553,
+        1063861045,
+        1042088719,
+        1049080420,
+        1026234354,
+        -1096018493,
+        1046552554,
+        1032216677,
+        -1123066290,
+        -1120167157,
+        -1081289614,
+        1043194014,
+        -1102923323,
+        1034969389,
+        1023842466,
+        1006993854,
+        1058517892,
+        1050861585,
+        1039806077,
+        -1114928172,
+        -1106705856,
+        -1085558330,
+        -1095156410,
+        1047516702,
+        -1086804810,
+        1060638951,
+        1085491431,
+        1067207915,
+        -1082085935,
+        1056555175,
+        -1079930152,
+        -1072189171,
+        1058022878,
+        -1072857989,
+        1072151873,
+        -1104708752,
+        -1086291481,
+        -1111896976,
+        1022925978,
+        -1095959259,
+        -1109751257,
+        -1098367374,
+        1035542312,
+        1028740755,
+        1045608319,
+        -1099973598,
+        1063381546,
+        -1056378250,
+        -1106776417,
+        1043044072,
+        1069555192,
+        -1088578017,
+        -1145759672,
+        -1099955880,
+        -1090149784,
+        -1080949948,
+        -1095483062,
+        1039812280,
+        1048373654,
+        -1121694461,
+        1050159461,
+        -1107470117,
+        1044491697,
+        -1122955476,
+        -1090092762,
+        -1115414678,
+        -1115792051,
+        -1123642777,
+        -1104070350,
+        -1069653975,
+        -1091204858,
+        1044896231,
+        1054853282,
+        1061391668,
+        -1098874944,
+        1047475810,
+        1060296533,
+        -1092164172,
+        1032192062,
+        1041317799,
+        1006647555,
+        -1090395451,
+        1031486706,
+        -1168011696,
+        -1126485769,
+        -1106982991,
+        -1107000060,
+        1045651578,
+        1057172224,
+        1066423187,
+        1017110281,
+        -1115660901,
+        998751686,
+        -1075228541,
+        1046547039,
+        1053864093,
+        -1084791014,
+        -1073416627,
+        1057862985,
+        1072615179,
+        -1078268126,
+        -1082113593,
+        -1093904114,
+        1063102450,
+        -1062646238,
+        1067340952,
+        1051939810,
+        -1082053508,
+        1041874522,
+        1042975350,
+        -1076761638,
+        1050905374,
+        1066362274,
+        -1079128444,
+        -1075673398,
+        -1080741122,
+        -1098241333,
+        -1089097107,
+        -1081834070,
+        -1097089701,
+        1048638451,
+        -1097075991,
+        -1105038877,
+        1030708549,
+        1066659078,
+        967335456,
+        1042859285,
+        -1099170665,
+        1069000228,
+        -1115215440,
+        -1102396445,
+        1057301477,
+        1026416698,
+        -1131581806,
+        -1071701066,
+        -1072828229,
+        1044373479,
+        1046153280,
+        1057001223,
+        1033719278,
+        -1085896920,
+        1042879324,
+        -1112175115,
+        -1128840525,
+        -1099991870,
+        -1111513614,
+        1036207138,
+        1053145290,
+        -1085093238,
+        1066728137,
+        1026072234,
+        -1099667498,
+        1065069507,
+        1051145217,
+        1042646963,
+        -1118176254,
+        -1147948194,
+        1088317191,
+        -1126043528,
+        -1096504475,
+        1058567558,
+        1051052312,
+        -1115058259,
+        -1116276871,
+        1031069988,
+        -1089596203,
+        -1079147976,
+        -1095468388,
+        1037959515,
+        -1092152222,
+        1055489575,
+        1051247799,
+        1070993569,
+        -1097551876,
+        1041717855,
+        -1089578882,
+        -1107881685,
+        -1082277626,
+        -1089695784,
+        -1065435879,
+        1033425582,
+        -1101022474,
+        -1099898910,
+        1041299916,
+        1049503434,
+        -1091424165,
+        1049479617,
+        -1076279557,
+        -1108925954,
+        1058972217,
+        1062039550,
+        1040655780,
+        1060418513,
+        -1109532036,
+        1036159041,
+        1071348228,
+        -1103113669,
+        1053214843,
+        -1097288917,
+        -1081314661,
+        -1129673061,
+        1065555991,
+        1042572786,
+        1016225481,
+        1049351676,
+        1046184252,
+        1041098148,
+        -1126360922,
+        -1110816098,
+        1056917106,
+        -1098515320,
+        -1097538687,
+        -1114881331,
+        1058484515,
+        1042872069,
+        1056696230,
+        -1094384466,
+        -1083520072,
+        1087195869,
+        -1108449267,
+        -1097675963,
+        1034939352,
+        -1098585053,
+        1045276616,
+        -1087004959,
+        1055175067,
+        -1102915245,
+        1017901786,
+        1052959589,
+        -1086247127,
+        1049091840,
+        1059198397,
+        1038449998,
+        1049278894,
+        -1096382875,
+        -1098574783,
+        1030530560,
+        1032190051,
+        1069025442,
+        -1133287558,
+        1016650038,
+        1065727773,
+        -1089879799,
+        1056584428,
+        1054969588,
+        -1099104039,
+        1037631512,
+        1029837924,
+        -1153740946,
+        -1067461596,
+        -1117732700,
+        1050858657,
+        -1104152714,
+        1026424674,
+        -1065192390,
+        -1071186118,
+        -1081659776,
+        -1080364896,
+        -1139954439,
+        1041711340,
+        1036373366,
+        1058310145,
+        1058060082,
+        1016628213,
+        1025489045,
+        -1090412313,
+        -1094822362,
+        1023823659,
+        1063070316,
+        -1105194238,
+        1039748330,
+        1037989572,
+        -1112496475,
+        1042939464,
+        -1087716395,
+        1023154776,
+        -1083659752,
+        -1131134869,
+        1039983523,
+        -1094126135,
+        1024245573,
+        1043749413,
+        -1090506267,
+        -1067485685,
+        1046373662,
+        -1089079736,
+        -1090970655,
+        -1093033995,
+        -1099407002,
+        1051112795,
+        -1078016984,
+        -1077009532,
+        1050155760,
+        -1082082941,
+        1038167021,
+        -1090326099,
+        -1113995434,
+        1024554319,
+        -1098341321,
+        -1073559684,
+        -1103565315,
+        1067709870,
+        -1125102260,
+        -1157078736,
+        1061976860,
+        1064185684,
+        -1080190080,
+        -1090374925,
+        -1096667094,
+        -1098324234,
+        -1118949512,
+        -1116582479,
+        -1114092498,
+        1060514899,
+        -1091842057,
+        1022951810,
+        -1068948926,
+        -1115235486,
+        1030578675,
+        1024296742,
+        1024729746,
+        -1093191553,
+        -1110391106,
+        -1096264683,
+        -1109279708,
+        -1086104192,
+        -1087979050,
+        1060578190,
+        -1075506375,
+        1052304954,
+        1047451486,
+        1057272426,
+        1064711169,
+        -1069516603,
+        -1095174269,
+        1036104789,
+        1055414296,
+        -1090873951,
+        1035099638,
+        1047129640,
+        1064811743,
+        1060715142,
+        -1115406896,
+        -1115482109,
+        -1106580562,
+        1058387727,
+        1049411841,
+        1046632866,
+        1058847790,
+        1054633652,
+        -1103251750,
+        1061078462,
+        -1087909027,
+        1069293263,
+        -1104660732,
+        -1112949332,
+        1032882205,
+        -1079655925,
+        -1117802468,
+        -1106598463,
+        1035003237,
+        1053028160,
+        -1079950271,
+        -1088259992,
+        -1082949707,
+        1047976606,
+        -1106564624,
+        -1115198144,
+        1024644456,
+        -1094502524,
+        -1100656569,
+        -1122705119,
+        1062133391,
+        1054378139,
+        -1081406772,
+        1038356701,
+        -1073563672,
+        -1083147019,
+        1050585227,
+        1044749809,
+        1049291474,
+        1069430382,
+        -1083419136,
+        1026838221,
+        1046633213,
+        1069936440,
+        1023530160,
+        1060277223,
+        1049838519,
+        -1080058976,
+        1042055162,
+        1038697108,
+        1027702456,
+        -1070989855,
+        1036803570,
+        1054474585,
+        -1093930275,
+        -1081556372,
+        1081067636,
+        1052084722,
+        -1083670225,
+        -1076442326,
+        1043707609,
+        1055072582,
+        -1073172046,
+        1068716878,
+        1070385353,
+        -1052843896,
+        1071799129,
+        1048877224,
+        1067241032,
+        1018582689,
+        1059406467,
+        -1090453506,
+        -1104580030,
+        -1084993202,
+        1064405303,
+        1068521960,
+        -1110447772,
+        1011426031,
+        -1098262410,
+        1049240198,
+        -1081215287,
+        -1087441563,
+        1058265004,
+        1025070172,
+        -1099477589,
+        -1105700856,
+        -1096253082,
+        1038789686,
+        1025686229,
+        1034818568,
+        991718704,
+        -1073190005,
+        1073611141,
+        1073949293,
+        -1085268941,
+        -1085509252,
+        -1105332854,
+        1054567186,
+        -1072725684,
+        1073032406,
+        1065410459,
+        1039494623,
+        1053434360,
+        1064475421,
+        1074290583,
+        1036877574,
+        1054881258,
+        -1088232473,
+        1035873336,
+        1036213656,
+        1059226213,
+        -1074748238,
+        1061662936,
+        1040162252,
+        -1106639461,
+        -1090065164,
+        1066471425,
+        1061797124,
+        1026284224,
+        1051059210,
+        -1102215374,
+        1036490912,
+        1046541459,
+        1043163665,
+        1049430758,
+        1054566510,
+        1057372710,
+        -1089451819,
+        1074250958,
+        -1102541281,
+        1051893176,
+        1074625299,
+        -1088748890,
+        -1098176173,
+        -1085756004,
+        1041043799,
+        -1098134887,
+        1007385646,
+        -1102619992,
+        1052159614,
+        -1104601685,
+        -1090025900,
+        -1105035306,
+        -1108292250,
+        -1100960980,
+        -1077981065,
+        1014552428,
+        1052968448,
+        1058589628,
+        -1110795717,
+        1081183529,
+        1058684211,
+        -1071599863,
+        1063304138,
+        -1069668244,
+        -1072630386,
+        1061573135,
+        1051828324,
+        1054604937,
+        -1082303094,
+        -1088948564,
+        1041293322,
+        -1110340388,
+        1019594853,
+        -1085795009,
+        1066484646,
+        -1079852664,
+        -1078192560,
+        1055346804,
+        1031875686,
+        -1084264960,
+        -1087960609,
+        1066932779,
+        -1067895644,
+        -1086416105,
+        -1094653364,
+        -1115553540,
+        -1097135762,
+        -1085240982,
+        1031882775,
+        -1090790204,
+        -1056601245,
+        1024821764,
+        -1090282067,
+        1012963434,
+        1037039161,
+        1048842594,
+        1037465447,
+        -1093665833,
+        -1097094589,
+        -1104993898,
+        -1104681558,
+        1032772382,
+        -1161333171,
+        -1103559337,
+        1068639247,
+        1050697821,
+        -1111025662,
+        1033112449,
+        1072429998,
+        -1109795722,
+        -1110963887,
+        -1095397672,
+        -1099816585,
+        1036975842,
+        1023884938,
+        1049537221,
+        -1078714781,
+        1037204784,
+        -1058449993,
+        1040962867,
+        -1100700951,
+        1063566283,
+        1059650948,
+        -1111776067,
+        -1071879747,
+        -1093380903,
+        -1093994895,
+        -1133042704,
+        1078587562,
+        1057864339,
+        -1094283270,
+        -1088944966,
+        1063297559,
+        1035661426,
+        -1088590065,
+        1069727437,
+        1077124405,
+        1040600418,
+        -1115078659,
+        -1114659956,
+        -1087162343,
+        -1140766924,
+        1026375109,
+        1049937809,
+        1066112718,
+        -1125832126,
+        -1126838010,
+        1062524191,
+        -1088727361,
+        -1113917073,
+        -1107073071,
+        1043557503,
+        1077229328,
+        1067159272,
+        1039559846,
+        -1094518078,
+        1063093156,
+        1059652691,
+        -1120381966,
+        -1103451359,
+        1063954172,
+        1042452584,
+        1044333954,
+        1058220425,
+        -1079688187,
+        -1089969381,
+        1067547996,
+        -1084710464,
+        -1060890923,
+        1058784582,
+        1057321739,
+        -1067192632,
+        1084977465,
+        -1080245584,
+        1057900328,
+        -1062847454,
+        1074294922,
+        1066114683,
+        -1105861659,
+        1029957904,
+        -1089766672,
+        1043850616,
+        1066302381,
+        1069728831,
+        1038816368,
+        1053425828,
+        1045129378,
+        1055692705,
+        -1103209452,
+        1041073917,
+        -1087629265,
+        -1095036191,
+        1064045492,
+        1027470708,
+        1025935653,
+        1024271683,
+        -1096274104,
+        -1140393766,
+        -1085960143,
+        1046580850,
+        1027106246,
+        1068111690,
+        1044382049,
+        1046659831,
+        1065475061,
+        1077139874,
+        1058420779,
+        1069677371,
+        1058225943,
+        -1108762860,
+        -1111699258,
+        1051336545,
+        1031294395,
+        -1097327184,
+        1014075519,
+        1039133345,
+        1060056506,
+        -1070521664,
+        -1137926840,
+        -1079820702,
+        -1093171098,
+        1051619166,
+        1034911120,
+        1022513139,
+        -1098041483,
+        1016211412,
+        1037354523,
+        1052648573,
+        -1063653345,
+        1055568702,
+        -1101146046,
+        -1110756027,
+        -1090518745,
+        -1110439624,
+        -1102413040,
+        -1101804566,
+        -1089108430,
+        1051404809,
+        -1053474902,
+        1051683596,
+        -1106505267,
+        -1063793421,
+        1056581378,
+        -1073517229,
+        -1079187675,
+        1056718816,
+        -1065308997,
+        1069516287,
+        1087303007,
+        1062965706,
+        -1117906708,
+        1063349141,
+        1075434740,
+        1055108636,
+        1054637072,
+        -1093823781,
+        -1083311148,
+        -1109985802,
+        -1110315920,
+        1043408615,
+        1075026952,
+        -1076579801,
+        -1103577169,
+        1005052634,
+        -1086350450,
+        1078699781,
+        1057963963,
+        1046306748,
+        -1090453452,
+        1028410632,
+        1021895196,
+        1065894264,
+        -1072638490,
+        -1089268197,
+        -1117709254,
+        1065699045,
+        1056241102,
+        -1093105956,
+        -1114876046,
+        -1073530246,
+        -1097111013,
+        1052599801,
+        1043661794,
+        1037468341,
+        1041842583,
+        1036891260,
+        1073938867,
+        1094293349,
+        -1088429417,
+        -1098500046,
+        1037689212,
+        1058648149,
+        1066214346,
+        1052860404,
+        1065321312,
+        -1069369830,
+        -1095143718,
+        -1090420683,
+        -1070630242,
+        -1112706655,
+        1045515227,
+        -1097630497,
+        1040599995,
+        1073532047,
+        1031288114,
+        1048791584,
+        -1086802649,
+        -1115389580,
+        1070450078,
+        1041529916,
+        -1128470439,
+        1040443858,
+        1076058722,
+        1009321182,
+        -1114686676,
+        1044864666,
+        -1077970146,
+        1040716676,
+        1043059979,
+        1057177335,
+        1042207718,
+        1021601943,
+        1064305033,
+        1049968532,
+        1020297670,
+        1060514874,
+        -1098897392,
+        -1071481348,
+        -1083627149,
+        1067815466,
+        1057774906,
+        -1082044480,
+        1066787838,
+        1053104359,
+        -1105356545,
+        -1142370482,
+        -1091239541,
+        -1090112235,
+        -1095264920,
+        -1079206432,
+        1055905172,
+        1036404822,
+        -1107059672,
+        1021723572,
+        -1066771811,
+        -1101409671,
+        -1100041561,
+        1061577501,
+        1040296930,
+        -1074255443,
+        1066354578,
+        -1074067292,
+        -1078430463,
+        1054407215,
+        1048701693,
+        1035775437,
+        1045437678,
+        -1118044021,
+        1075378048,
+        -1098855940,
+        -1084213310,
+        1076077602,
+        1079573947,
+        -1072363324,
+        -1052537143,
+        1059368269,
+        1065026014,
+        -1051503828,
+        1085154794,
+        -1093046533,
+        -1122899296,
+        1062424213,
+        1050503705,
+        -1073913555,
+        -1075127070,
+        -1072715443,
+        -1100000901,
+        1049059448,
+        -1109613762,
+        -1144203856,
+        -1097681013,
+        -1092226263,
+        -1092972152,
+        1056452536,
+        1043900527,
+        1035296629,
+        1064986214,
+        -1098653740,
+        -1107195241,
+        -1096664445,
+        -1093449304,
+        1016995774,
+        1054709468,
+        -1104921610,
+        -1105742493,
+        1055383337,
+        1053224907,
+        -1102277730,
+        1044316841,
+        1070590958,
+        -1109933842,
+        1035392108,
+        -1097228330,
+        1065593545,
+        1042928289,
+        1047372686,
+        -1101911322,
+        1066054046,
+        -1074682418,
+        -1081843429,
+        -1073900821,
+        1057673470,
+        -1078609315,
+        -1100276562,
+        1007977728,
+        -1083976138,
+        1095474679,
+        1050205385,
+        1061327143,
+        1087241813,
+        1062030692,
+        1064468790,
+        1047510348,
+        -1073559064,
+        -1083252407,
+        1060518312,
+        1083819719,
+        -1078447556,
+        1053285746,
+        1039595421,
+        1041609198,
+        -1097124499,
+        -1087720323,
+        1051877812,
+        -1117904001,
+        1065487700,
+        1075013777,
+        -1101030349,
+        -1111699150,
+        1065636702,
+        -1122979768,
+        1051162160,
+        1053666673,
+        -1098756385,
+        -1111950240,
+        1052528837,
+        -1119927679,
+        -1073580020,
+        1068211445,
+        -1104971367,
+        -1103058318,
+        1040065646,
+        1051937907,
+        -1089239950,
+        -1079674912,
+        1054190084,
+        -1090161481,
+        1042202433,
+        1035033348,
+        -1081049939,
+        -1120549260,
+        1034077681,
+        -1109730855,
+        -1109187794,
+        1074788041,
+        1078105216,
+        1025269854,
+        -1091918473,
+        1060629833,
+        1058495344,
+        1048313227,
+        1035528874,
+        -1089722689,
+        -1101540510,
+        -1089853303,
+        1049180386,
+        1051134565,
+        -1113292208,
+        -1121206008,
+        -1097732317,
+        1060772990,
+        -1140198762,
+        -1105629551,
+        -1063154372,
+        -1081438672,
+        1056341804,
+        1024630717,
+        1050464621,
+        1078175858,
+        1057283155,
+        -1102859072,
+        1063670651,
+        -1082290100,
+        1049829226,
+        -1087926037,
+        -1085210821,
+        1053531009,
+        -1097309511,
+        1031705148,
+        1043464029,
+        -1098339233,
+        -1086648410,
+        -1108528028,
+        -1105499217,
+        -1055902841,
+        1050162023,
+        -1098316780,
+        1066360226,
+        -1116252174,
+        -1102209137,
+        -1106087586,
+        -1104230064,
+        -1063459966,
+        -1083931377,
+        1084380446,
+        1079211631,
+        1053303956,
+        1053629791,
+        -1079365123,
+        -1093950656,
+        -1093844369,
+        1101796997,
+        1094970702,
+        -1072214593,
+        -1085605753,
+        -1090824449,
+        -1079560839,
+        -1099559223,
+        -1077885681,
+        -1081013647,
+        -1093393241,
+        -1063490976,
+        -1091764217,
+        -1119771019,
+        -1105680041,
+        -1093440519,
+        -1072689057,
+        -1096839696,
+        1007872689,
+        1062827188,
+        -1091218368,
+        1063439461,
+        -1069723460,
+        1070234050,
+        -1084713940,
+        -1090424240,
+        -1104203772,
+        1059158539,
+        -1097616459,
+        -1104680147,
+        -1088000671,
+        -1086025339,
+        1066663824,
+        -1062964295,
+        -1104757790,
+        1065893781,
+        1080863117,
+        -1089083378,
+        -1056125016,
+        1076706218,
+        -1089252159,
+        -1100194426,
+        998626708,
+        1061202218,
+        1033296595,
+        -1076999026,
+        -1096322111,
+        -1067855465,
+        -1080361828,
+        1058655296,
+        1035287536,
+        1047001164,
+        1061628274,
+        -1106808982,
+        1047608865,
+        -1139349961,
+        1063386647,
+        1018409960,
+        1048744814,
+        1025985314,
+        -1094384056,
+        1023968427,
+        1027069316,
+        1028614763,
+        -1078765980,
+        -1103550132,
+        1065903020,
+        1048911096,
+        1027851026,
+        1050018717,
+        -1114249796,
+        -1078122864,
+        -1091418057,
+        1056954993,
+        1058120178,
+        -1080591094,
+        1065530280,
+        -1084944065,
+        1071439502,
+        -1055624399,
+        1066859285,
+        1095555262,
+        1058139497,
+        1023521144,
+        1074595160,
+        -1073701874,
+        1064224516,
+        1052818161,
+        1058469505,
+        1092349742,
+        -1054198370,
+        1072653181,
+        1090916127,
+        1069800051,
+        1106531400,
+        1040354533,
+        1051192113,
+        -1056019226,
+        -1048419884,
+        1095521317,
+        -1072465490,
+        1068827334,
+        -1062464963,
+        -1079679121,
+        1091261484,
+        1060085041,
+        1094924912,
+        -1087356815,
+        1075484560,
+        -1061126692,
+        -1052902497,
+        1093587234,
+        -1078710464,
+        -1095443411,
+        -1098570570,
+        1049842911,
+        1057025416,
+        1020590754,
+        -1081671062,
+        -1073094250,
+        1048777403,
+        1054736493,
+        1041166532,
+        1038521611,
+        1032337168,
+        1055778577,
+        -1099375533,
+        1067453888,
+        1057467336,
+        1055589641,
+        -1093565688,
+        -1131892983,
+        -1091172642,
+        -1118531878,
+        -1148572574,
+        1058892763,
+        1053443760,
+        1038488208,
+        -1122311811,
+        1040536579,
+        -1117443531,
+        -1093134850,
+        1022747132,
+        1024591818,
+        -1085329329,
+        1035401491,
+        1018609940,
+        -1123702167,
+        1069883359,
+        -1097907382,
+        -1090880804,
+        -1108692833,
+        1057616800,
+        -1073949199,
+        -1124360227,
+        -1072267447,
+        -1085131970,
+        1063574246,
+        1058384719,
+        1057126449,
+        1028022307,
+        -1096804279,
+        -1121007317,
+        -1122429690,
+        -1093630992,
+        1011726022,
+        1010193467,
+        1055937780,
+        -1092326754,
+        -1130017303,
+        1047853690,
+        1048040473,
+        -1102222689,
+        -1104455500,
+        1020521400,
+        1061119071,
+        -1106236074,
+        -1073533377,
+        -1090664094,
+        -1095937547,
+        -1080701611,
+        1035121870,
+        -1104981755,
+        -1115578983,
+        -1081532053,
+        -1100929727,
+        -1148453404,
+        1064870141,
+        1012303173,
+        -1065275568,
+        -1095004466,
+        -1070001614,
+        -1078978942,
+        1041049051,
+        1038653287,
+        1042640261,
+        1057695094,
+        1073803625,
+        -1082058631,
+        -1097191881,
+        -1063103931,
+        -1094532623,
+        -1081818605,
+        -1104432294,
+        -1072569826,
+        1064202998,
+        -1102849754,
+        1052904970,
+        -1122498060,
+        1033663426,
+        1017761766,
+        -1094835622,
+        1058821605,
+        -1109584080,
+        1018890538,
+        -1130352815,
+        1075277777,
+        -1107149770,
+        -1081689887,
+        1081775219,
+        1066066854,
+        1031586760,
+        -1111531030,
+        1065945609,
+        1057948007,
+        -1089422845,
+        -1092389121,
+        -1078137028,
+        -1081459724,
+        1058044403,
+        1057434622,
+        1054713597,
+        1064299665,
+        1062014249,
+        1090808551,
+        1085382448,
+        1056753385,
+        1066429368,
+        -1090246635,
+        -1059801607,
+        1053461445,
+        1089114171,
+        1090808876,
+        -1078510957,
+        1079997328,
+        1035805785,
+        -1113620492,
+        -1131438088,
+        -1091703770,
+        -1095600706,
+        -1117089226,
+        -1070651265,
+        -1087599916,
+        1063597199,
+        1052039868,
+        -1097055145,
+        1067153193,
+        -1091648363,
+        -1086632833,
+        1048793751,
+        1044246539,
+        1060356409,
+        1055377792,
+        1018679527,
+        1026216804,
+        -1104240558,
+        -1078526282,
+        -1102740403,
+        -1071692972,
+        1038141914,
+        1062926983,
+        -1086522577,
+        -1071988505,
+        -1085666085,
+        1003543492,
+        -1060656863,
+        1066237895,
+        1049760800,
+        1054277318,
+        -1077733968,
+        1058327730,
+        1046844820,
+        -1105660339,
+        1054112313,
+        1058971756,
+        1064076423,
+        1019614502,
+        -1068054034,
+        -1080364808,
+        1068918987,
+        1055019435,
+        -1081653373,
+        1076021466,
+        -1089767360,
+        1093082430,
+        1070019348,
+        1064055249,
+        1071201808,
+        1047495421,
+        -1076810128,
+        1050514196,
+        1080182323,
+        1081092756,
+        -1076097369,
+        -1113324103,
+        1067036691,
+        1049606034,
+        1056969296,
+        1076083053,
+        1058206836,
+        1059150133,
+        -1082217086,
+        1041750950,
+        -1128322669,
+        1039736254,
+        1053013967,
+        1032281921,
+        1056063303,
+        -1103832873,
+        1069930584,
+        -1094394374,
+        -1064218299,
+        1057823403,
+        1048260946,
+        1076431967,
+        1071130713,
+        1058031270,
+        -1093603226,
+        -1070424672,
+        -1090426722,
+        -1055585182,
+        1067295850,
+        -1073143967,
+        1038271654,
+        1070820596,
+        -1086481753,
+        -1109992460,
+        -1083655407,
+        1049695163,
+        1064446920,
+        -1081981631,
+        1062460761,
+        1017335308,
+        -1070683602,
+        -1095488370,
+        -1103671054,
+        1011089586,
+        -1085473649,
+        -1082158703,
+        -1106264270,
+        1053265280,
+        1058186558,
+        -1096420590,
+        1051099559,
+        1066753711,
+        1079496356,
+        1073144439,
+        1084723761,
+        -1076652825,
+        1036535795,
+        -1096210103,
+        1068421407,
+        1075158875,
+        -1088185163,
+        -1057858395,
+        -1098117747,
+        1032394135,
+        -1086520954,
+        1083510583,
+        -1103395706,
+        -1088583157,
+        1045793298,
+        1069322243,
+        -1095771209,
+        -1102809433,
+        -1106724480,
+        1047501389,
+        -1090373514,
+        -1071553241,
+        -1083994326,
+        1093264400,
+        -1108688533,
+        1055246658,
+        1066444172,
+        1071613693,
+        -1096398402,
+        -1083589695,
+        1084586706,
+        -1096668054,
+        -1081391028,
+        981618416,
+        -1094305076,
+        1048441144,
+        -1078869749,
+        -1090192098,
+        1047124036,
+        1051725179,
+        -1116493452,
+        -1108969058,
+        -1143405836,
+        -1070182588,
+        -1096624236,
+        -1098206022,
+        1067929776,
+        1057842700,
+        -1088865506,
+        1053194986,
+        -1068936165,
+        -1089054655,
+        1058676516,
+        1049782495,
+        1045284578,
+        1076884487,
+        -1090670381,
+        -1055941704,
+        1054733339,
+        -1077865421,
+        -1097113999,
+        1052563295,
+        -1085359056,
+        1050988785,
+        -1110865640,
+        -1066605305,
+        1050822028,
+        -1074329940,
+        -1096881263,
+        -1143836224,
+        1060994431,
+        1058198309,
+        -1101256259,
+        1038838275,
+        -1074523051,
+        -1108735971,
+        1061894662,
+        1047015918,
+        1007323356,
+        1034861773,
+        1055316699,
+        -1091737902,
+        1041955920,
+        -1074578871,
+        1044132139,
+        1048149819,
+        1075775306,
+        -1089639674,
+        -1085424438,
+        -1064947320,
+        -1117329867,
+        -1080474294,
+        -1087326143,
+        -1079907479,
+        1051102995,
+        1037933804,
+        1092018414,
+        1078706899,
+        -1110300806,
+        1055870252,
+        -1104024897,
+        -1081857037,
+        1029525835,
+        -1091798282,
+        1066294269,
+        -1071258378,
+        1046307640,
+        -1081891440,
+        -1077277475,
+        1059032494,
+        -1063402913,
+        -1051943705,
+        1048830097,
+        -1064923524,
+        1067705234,
+        1086281838,
+        1059050200,
+        1023937357,
+        -1100818199,
+        1069542589,
+        -1080410277,
+        -1081154742,
+        -1098284086,
+        -1095226873,
+        -1107409631,
+        -1098473551,
+        -1108248237,
+        -1085294022,
+        -1088089078,
+        1061865636,
+        1046021227,
+        1061010675,
+        -1095090118,
+        -1103298196,
+        -1080531111,
+        1032989884,
+        1060099966,
+        1058300548,
+        -1081776343,
+        1062176912,
+        1091906224,
+        -1048527246,
+        1087732223,
+        -1073995232,
+        1090857654,
+        1084447674,
+        -1050322930,
+        1092135551,
+        -1040843929,
+        -1054864009,
+        1083195171,
+        -1073404296,
+        -1093247641,
+        -1080758102,
+        1040430059,
+        1050930019,
+        -1091734286,
+        1054988732,
+        -1083388385,
+        1032010246,
+        -1108047377,
+        -1094349691,
+        -1129883048,
+        -1084174953,
+        1040638799,
+        -1073561694,
+        -1082229112,
+        -1070259646,
+        -1054367940,
+        -1072476029,
+        1059090216,
+        -1070608027,
+        -1110815765,
+        -1101638812,
+        -1094087400,
+        1074243757,
+        1070340726,
+        -1038323354,
+        -1064411012,
+        1074842503,
+        1090770851,
+        -1093056094,
+        -1062025513,
+        -1076429106,
+        -1060149493,
+        -1063009558,
+        -1080506539,
+        -1083519202,
+        -1113759002,
+        -1099594444,
+        -1098745754,
+        -1105398745,
+        -1080045654,
+        -1093781373,
+        1023575580,
+        -1098203540,
+        -1095740587,
+        -1093030770,
+        1057877768,
+        1024874482,
+        -1081670508,
+        1101577085,
+        1073606438,
+        1057438513,
+        -1073305552,
+        -1069354878,
+        -1083889516,
+        -1075326663,
+        1067552658,
+        1052236785,
+        -1052469886,
+        -1083011139,
+        -1089289706,
+        -1082173660,
+        -1077748140,
+        -1080190350,
+        -1084967508,
+        -1121613264,
+        -1077803698,
+        1081165964,
+        -1096591110,
+        -1053077669,
+        1082666788,
+        -1096539503,
+        1087795594,
+        -1077888440,
+        1023793500,
+        -1072546433,
+        1077111370,
+        -1094323528,
+        -1071734357,
+        -1076096572,
+        -1078588901,
+        -1100465448,
+        -1094875767,
+        -1095343480,
+        1035167442,
+        -1099518790,
+        1050724417,
+        -1108173663,
+        -1055644443,
+        -1093330456,
+        -1078539111,
+        -1094502759,
+        1052191736,
+        -1095839960,
+        1039236140,
+        1041527540,
+        -1089713187,
+        1052565047,
+        1034837872,
+        1048214539,
+        -1103212500,
+        -1085732393,
+        -1066624242,
+        -1067143768,
+        1042159017,
+        1033830905,
+        -1101070240,
+        1078285274,
+        1056554759,
+        1018551548,
+        1060709114,
+        1054562888,
+        -1099553680,
+        -1070263522,
+        1049940905,
+        1072449959,
+        -1106630244,
+        -1094244267,
+        1082405350,
+        -1057705731,
+        1060448093,
+        1045167068,
+        1059509437,
+        1080393682,
+        1060281382,
+        1062061722,
+        1054624090,
+        -1071972114,
+        1047722695,
+        -1105052190,
+        -1098431624,
+        -1125012210,
+        -1086899123,
+        1057458820,
+        -1096998286,
+        -1088255270,
+        1072196608,
+        1052868659,
+        1064964680,
+        1071802856,
+        -1094568096,
+        1049236176,
+        -1123175734,
+        -1073221245,
+        -1091275828,
+        -1090887157,
+        1037191091,
+        1068246747,
+        1043887124,
+        -1111393450,
+        1053684775,
+        1018782042,
+        -1097314688,
+        -1094683688,
+        1072740199,
+        -1103566801,
+        1035018469,
+        -1056963071,
+        -1086276284,
+        -1072354687,
+        1068519132,
+        1079887028,
+        1069658591,
+        1077525779,
+        -1054258020,
+        -1072090999,
+        1078850109,
+        -1090397629,
+        -1081776838,
+        -1094205067,
+        -1083487263,
+        -1056541068,
+        1069706737,
+        1047898758,
+        -1069801944,
+        1012357884,
+        -1083061195,
+        -1111191540,
+        -1094027895,
+        -1078222714,
+        1035872264,
+        1086187890,
+        1090490621,
+        1068325195,
+        1073980433,
+        -1071198074,
+        -1089054850,
+        -1087436964,
+        1082676834,
+        1091016507,
+        -1069670709,
+        1071173621,
+        1069962938,
+        -1090540664,
+        1065354837,
+        -1075385670,
+        1051495904,
+        1079969494,
+        1039962664,
+        -1091937256,
+        -1134417839,
+        -1072658063,
+        -1103467299,
+        1066945644,
+        -1088059940,
+        -1106057721,
+        1049414913,
+        1043340348,
+        -1081398305,
+        -1077598965,
+        -1078440785,
+        -1079490572,
+        1057266031,
+        1034018282,
+        1040720154,
+        1056002926,
+        -1106675547,
+        1037964901,
+        1073452275,
+        -1070621861,
+        1078834449,
+        1050166154,
+        1053253875,
+        -1091430580,
+        -1122318614,
+        -1101825650,
+        1038922989,
+        1078295193,
+        -1080390305,
+        -1090759971,
+        1046134056,
+        -1068578013,
+        -1064280050,
+        -1086767351,
+        -1052103107,
+        -1086015736,
+        1064714945,
+        -1085417842,
+        -1104190711,
+        1095238458,
+        1027570524,
+        1050579913,
+        -1096221739,
+        -1070844958,
+        -1095076687,
+        -1083934633,
+        1056759760,
+        1044602883,
+        1048772845,
+        -1110336958,
+        -1106021800,
+        1033022056,
+        1060239441,
+        -1054989584,
+        1048600041,
+        -1072598404,
+        1040670776,
+        1063734060,
+        1054447093,
+        -1108265387,
+        -1174251840,
+        -1082085560,
+        -1110654672,
+        1015369904,
+        1070885041,
+        1052481629,
+        1040248525,
+        -1080798313,
+        1037567952,
+        1055743408,
+        1061595269,
+        1060610718,
+        -1098604894,
+        -1081640123,
+        1047777828,
+        -1082248341,
+        1045860832,
+        1033979482,
+        -1119167499,
+        -1089850995,
+        1013014783,
+        1025310960,
+        -1112715248,
+        1082103562,
+        1034062841,
+        1036159136,
+        1020115657,
+        -1081951614,
+        -1107277295,
+        -1095639374,
+        1040563805,
+        1038898420,
+        -1090882631,
+        -1090247317,
+        -1072252571,
+        -1078038243,
+        1038055456,
+        -1121729230,
+        -1123207649,
+        -1106395796,
+        -1085554375,
+        -1087360686,
+        1059048858,
+        1019027654,
+        -1072681644,
+        1054483123,
+        -1078187356,
+        1059385407,
+        -1130824551,
+        -1079179204,
+        1024217874,
+        -1081462259,
+        -1090120149,
+        1000905312,
+        1051943006,
+        -1113131120,
+        -1102863538,
+        1024357135,
+        1076680634,
+        1066964756,
+        1057227999,
+        -1111006247,
+        1049892399,
+        1092416780,
+        -1091953159,
+        1038271150,
+        1051843971,
+        1068010862,
+        -1078927926,
+        1066315451,
+        -1082475929,
+        -1079716634,
+        1037825459,
+        1054785045,
+        1043288182,
+        1065501531,
+        1048360870,
+        -1079411069,
+        1051494482,
+        1066368932,
+        -1086998156,
+        -1087740551,
+        -1080449182,
+        -1090338370,
+        -1098298395,
+        -1111729347,
+        1032367298,
+        1068790202,
+        -1106722014,
+        -1123271179,
+        -1114401380,
+        1047669844,
+        -1089119581,
+        -1117887312,
+        -1079054829,
+        -1080294990,
+        1050762390,
+        1053251761,
+        1050550764,
+        1057573269,
+        -1074969793,
+        1048417840,
+        1051927150,
+        -1071725367,
+        -1081475356,
+        -1079745531,
+        1068417368,
+        1070410729,
+        1040519602,
+        1026734380,
+        1047013259,
+        -1089132576,
+        -1087512713,
+        1031924476,
+        -1116212076,
+        1077769716,
+        -1062509439,
+        1042038968,
+        1025127236,
+        1074127235,
+        1046250209,
+        1065842713,
+        1065772961,
+        -1071920886,
+        1052694847,
+        -1135192310,
+        1065890778,
+        1077399081,
+        -1063814083,
+        -1057644744,
+        1056053965,
+        1056617166,
+        1056910421,
+        1057055195,
+        -1097817882,
+        -1087829413,
+        -1083897627,
+        1062455174,
+        1043661031,
+        1049252999,
+        1038252972,
+        -1106909761,
+        -1086927779,
+        -1111842850,
+        1063969976,
+        1051940469,
+        -1079028144,
+        -1084431746,
+        -1106655120,
+        1021804656,
+        1034418063,
+        1050292424,
+        1053930226,
+        1063999139,
+        1056863487,
+        1042292589,
+        -1103688584,
+        -1106420403,
+        -1149841228,
+        -1084842302,
+        1058694568,
+        -1097598656,
+        1057453901,
+        1032996225,
+        -1067464479,
+        -1128192738,
+        1062932197,
+        -1095006145,
+        1051146653,
+        -1098180181,
+        1065843729,
+        -1073417569,
+        -1084748135,
+        -1089149385,
+        1059773794,
+        1075866805,
+        -1055126436,
+        1027519356,
+        1072816738,
+        1055946946,
+        1040387380,
+        -1083572855,
+        1055004325,
+        -1072038630,
+        1037096174,
+        -1115311864,
+        -1092850010,
+        1048841302,
+        -1098671734,
+        -1072635046,
+        -1071526014,
+        -1079851490,
+        1031579666,
+        -1095467394,
+        -1103121150,
+        1026784064,
+        -1098663835,
+        -1086973297,
+        1048948135,
+        -1089887754,
+        1057105220,
+        1054725751,
+        -1080749510,
+        -1079658299,
+        1049396424,
+        -1073475755,
+        -1086460125,
+        1075326159,
+        -1097955372,
+        -1104752379,
+        1058299237,
+        1079239830,
+        1051885394,
+        -1089774262,
+        1062241636,
+        1077999441,
+        -1105196519,
+        -1102454709,
+        1040731794,
+        -1102631859,
+        1034558926,
+        -1090045134,
+        1061104496,
+        1068010838,
+        -1075062979,
+        -1093281016,
+        -1079056267,
+        -1112945555,
+        1050161356,
+        1041456586,
+        -1088594976,
+        1035008021,
+        -1109379562,
+        -1095675311,
+        1058082950,
+        1049272697,
+        1023797651,
+        1072096071,
+        1049814110,
+        1041439439,
+        -1103395565,
+        -1102637850,
+        -1098605177,
+        1060949249,
+        -1116030969,
+        -1103704878,
+        1037297247,
+        1054714680,
+        1041013965,
+        1054775329,
+        -1077530077,
+        -1074157300,
+        -1117615698,
+        -1121241178,
+        -1101463090,
+        1044931805,
+        1080181650,
+        -1067142475,
+        -1077612903,
+        -1077287617,
+        1092657918,
+        1052607906,
+        1058925799,
+        1038867512,
+        -1071506498,
+        -1064776209,
+        1077831973,
+        -1056650659,
+        -1096427693,
+        1053884591,
+        -1096792085,
+        1050757542,
+        -1095911509,
+        -1086874806,
+        1065295323,
+        -1072732345,
+        -1115835102,
+        -1092557044,
+        -1097352761,
+        1075299434,
+        1056161373,
+        -1090251318,
+        1073889527,
+        -1087152251,
+        -1081209817,
+        1050862511,
+        1053757480,
+        -1085523854,
+        -1096425617,
+        -1066051852,
+        -1098463916,
+        1086709440,
+        -1084369625,
+        -1109214113,
+        -1083251514,
+        1069301757,
+        1060769034,
+        1008212033,
+        1016911341,
+        -1087110636,
+        -1109730037,
+        -1114252099,
+        1026641852,
+        -1071771043,
+        1051086587,
+        -1068461103,
+        1059079813,
+        -1088475092,
+        1045384242,
+        1050899056,
+        -1097895593,
+        1057685285,
+        -1077734250,
+        -1052161707,
+        1077634348,
+        1049546158,
+        -1095327038,
+        -1110866500,
+        1049029129,
+        1069837865,
+        -1099520320,
+        1040720673,
+        -1063552600,
+        -1072111369,
+        1032376633,
+        1049466474,
+        1016765480,
+        1089546324,
+        -1098037732,
+        1057773451,
+        1053256168,
+        1061250746,
+        -1121839220,
+        1037386409,
+        -1071184474,
+        -1075042454,
+        1057757661,
+        -1105668230,
+        1056662737,
+        1088744238,
+        1095546754,
+        -1063997798,
+        -1070292368,
+        1084605440,
+        1055709685,
+        1091510394,
+        1066367622,
+        1075232712,
+        -1069739412,
+        -1070836432,
+        1099300506,
+        1068025926,
+        1047882801,
+        1091913526,
+        1097149464,
+        -1090878409,
+        1065729027,
+        -1079159865,
+        -1065060105,
+        1006924646,
+        1082219057,
+        1082536582,
+        1066091874,
+        1079346994,
+        -1111830565,
+        1066127345,
+        -1094520353,
+        -1087373011,
+        -1065709236,
+        1063149146,
+        -1081670190,
+        1046706731,
+        1058390124,
+        1060475855,
+        -1078006070,
+        1059807479,
+        -1129440042,
+        1031689272,
+        1044721792,
+        1068861688,
+        1043611794,
+        1042283047,
+        1048487226,
+        1049047135,
+        -1112388833,
+        1026886875,
+        -1106420254,
+        1077147163,
+        1044244301,
+        1058173904,
+        1071127533,
+        1059946347,
+        1066567313,
+        1078661300,
+        -1069008476,
+        -1079909902,
+        1065504694,
+        1081795190,
+        -1078190579,
+        1060890782,
+        -1089861956,
+        -1087376509,
+        1063132738,
+        -1085933249,
+        -1058728032,
+        1045672337,
+        1042462917,
+        1053510616,
+        -1083979447,
+        1020063129,
+        1040975175,
+        1067289943,
+        -1080468147,
+        1085242001,
+        1092261975,
+        -1084060930,
+        -1092999984,
+        -1077669492,
+        -1068578967,
+        1054688587,
+        1080182911,
+        1087139953,
+        1067011068,
+        1065262233,
+        -1095128026,
+        1074059166,
+        -1097930055,
+        -1080425121,
+        -1080080171,
+        -1109126199,
+        -1088682714,
+        -1070225807,
+        -1124363326,
+        1062332431,
+        -1045097069,
+        1045961375,
+        1035717706,
+        -1064298669,
+        1055661887,
+        1034828093,
+        1082698055,
+        1069784250,
+        1027450656,
+        -1088870188,
+        -1073248256,
+        -1073437607,
+        -1105334261,
+        -1073619740,
+        1049564580,
+        1062793013,
+        1061499065,
+        1056566278,
+        1076025573,
+        -1079951771,
+        -1072522977,
+        -1081265209,
+        1060997696,
+        1058243246,
+        -1081752021,
+        1072065559,
+        -1092795297,
+        1061066907,
+        1073518601,
+        1046597327,
+        1058726467,
+        1069047370,
+        -1075648488,
+        -1093941339,
+        1067250191,
+        1042765340,
+        1059460305,
+        1080743530,
+        1052783580,
+        -1096650546,
+        -1124049213,
+        1051668127,
+        -1092695109,
+        -1105884585,
+        -1075958566,
+        1034007792,
+        -1113076995,
+        -1105683153,
+        1062608880,
+        -1082461678,
+        1038170876,
+        998499736,
+        1034793633,
+        -1100373589,
+        -1074395625,
+        1066408557,
+        -1082837273,
+        1018659466,
+        1068123045,
+        1052265518,
+        -1095673471,
+        1048881432,
+        -1083549912,
+        987222864,
+        -1124345584,
+        1063420014,
+        -1164306224,
+        1052463871,
+        1069486456,
+        -1095214711,
+        -1118799532,
+        -1106519189,
+        -1101741712,
+        -1091850284,
+        1069226791,
+        -1049033390,
+        1059993340,
+        -1074484851,
+        1071824768,
+        1055136821,
+        -1074417449,
+        -1088030738,
+        1058310167,
+        -1083063399,
+        1067813148,
+        -1070826813,
+        1050392502,
+        -1103128313,
+        1027946161,
+        -1101083685,
+        -1051150304,
+        -1106771559,
+        1051631947,
+        1042267603,
+        1047486182,
+        -1119014831,
+        1042254021,
+        1050502209,
+        1059664035,
+        1057694647,
+        -1092499607,
+        1060721796,
+        1073588728,
+        -1121404111,
+        -1075415770,
+        1051427744,
+        1025178848,
+        1047770758,
+        -1090482301,
+        -1086487183,
+        -1106085479,
+        1043253612,
+        1061321702,
+        1046013907,
+        -1080265345,
+        1026192650,
+        -1105050267,
+        -1093831825,
+        1044624796,
+        1042746096,
+        1048029027,
+        -1073198999,
+        -1093176026,
+        1046215105,
+        1050002023,
+        -1103254985,
+        1073561755,
+        1039748754,
+        -1101130641,
+        1083225954,
+        -1100532290,
+        1037809838,
+        -1095468102,
+        1080784346,
+        1035509562,
+        1064781583,
+        -1120247368,
+        1036564630,
+        1048569400,
+        -1090715306,
+        1032637326,
+        -1098618883,
+        1062739244,
+        1060677644,
+        -1080869953,
+        -1059945356,
+        1051639652,
+        1040387879,
+        1035096615,
+        1042156963,
+        1002843641,
+        1049001986,
+        1053221523,
+        1050840641,
+        -1098762514,
+        -1073924668,
+        1015469466,
+        1066058012,
+        1063238895,
+        -1086497114,
+        1054022577,
+        -1074378186,
+        -1072439549,
+        1057277833,
+        -1062139743,
+        -1061067021,
+        1036346990,
+        -1070974767,
+        -1087828984,
+        1086202931,
+        -1117811716,
+        -1096009719,
+        1047040080,
+        1050692862,
+        -1077264287,
+        -1088695004,
+        1040557796,
+        -1079912301,
+        1048375290,
+        1045195996,
+        1036341635,
+        -1098043235,
+        1057600176,
+        1060800226,
+        1075283212,
+        1063914019,
+        1066618567,
+        -1114179623,
+        -1064293680,
+        -1077048457,
+        -1120202232,
+        -1124693328,
+        1063242513,
+        1072021544,
+        -1073947881,
+        1077235549,
+        -1104586794,
+        1066678394,
+        -1077918584,
+        -1087658478,
+        -1079531352,
+        1072752998,
+        1069162231,
+        1082579524,
+        -1079031577,
+        -1068604024,
+        -1093997973,
+        -1089142414,
+        1027612000,
+        1057259745,
+        -1053234616,
+        1052611313,
+        1075813361,
+        1073578641,
+        -1095083861,
+        -1090266180,
+        1055772461,
+        -1054465387,
+        -1088260706,
+        -1099971741,
+        1057586939,
+        1041275490,
+        -1068695818,
+        -1090370535,
+        -1073995389,
+        -1088870024,
+        1053646128,
+        -1107328051,
+        -1110463156,
+        -1093197500,
+        1037921048,
+        -1089939682,
+        1056586249,
+        1050239513,
+        1050434419,
+        -1107292062,
+        1051626630,
+        -1087774550,
+        -1087966980,
+        -1090027726,
+        -1088540832,
+        1075292964,
+        1057006070,
+        -1092810758,
+        1045692003,
+        1056434389,
+        -1133712042,
+        1040664586,
+        -1072172382,
+        -1084999465,
+        -1108978272,
+        -1122409594,
+        1046317227,
+        1054496179,
+        -1061674978,
+        -1070550402,
+        1058410261,
+        -1074864587,
+        1086123753,
+        1075762889,
+        -1071560727,
+        1054741961,
+        -1090481553,
+        -1063174962,
+        1052630797,
+        -1076554773,
+        -1112211996,
+        1053182248,
+        1048160069,
+        1054739316,
+        -1093197224,
+        1059353979,
+        1037314052,
+        -1112247408,
+        1083071435,
+        1067062273,
+        -1060175191,
+        1027149687,
+        -1097857193,
+        1025536616,
+        1053068894,
+        -1134731580,
+        -1097837046,
+        -1211316736,
+        -1091578954,
+        -1118486461,
+        1033115174,
+        -1142094896,
+        1043732612,
+        -1066486608,
+        1051834479,
+        1082262881,
+        1075369405,
+        -1093703066,
+        1058328348,
+        -1095914042,
+        -1079079395,
+        1053198900,
+        1083317897,
+        1087251827,
+        -1086790829,
+        1072770755,
+        1036302119,
+        1021202382,
+        1042684692,
+        -1082707763,
+        1061975587,
+        1076104532,
+        -1073458925,
+        -1084769062,
+        1011028803,
+        -1105878615,
+        1031115512,
+        1082144352,
+        1043171098,
+        -1082118884,
+        -1081970168,
+        -1081822140,
+        -1089285896,
+        -1081466416,
+        -1085254066,
+        -1073943017,
+        1027166155,
+        -1087093610,
+        -1094423904,
+        1075344746,
+        1042798915,
+        1050734166,
+        -1128832594,
+        1060160116,
+        1047718731,
+        1071739057,
+        -1072838486,
+        -1112299849,
+        -1106206774,
+        1048681063,
+        1012125388,
+        1054636014,
+        -1091212134,
+        1058306177,
+        1037560681,
+        -1086825005,
+        -1073352166,
+        1019288920,
+        -1051285599,
+        -1086726659,
+        1027193663,
+        -1092902554,
+        -1109215838,
+        1071819934,
+        1087400564,
+        -1108836302,
+        -1081765758,
+        1084699769,
+        1065409606,
+        1089346851,
+        1067425169,
+        1044189816,
+        1042668302,
+        -1108269355,
+        1040827398,
+        1075108169,
+        1043808921,
+        1080128268,
+        -1075138549,
+        -1062818406,
+        1091990308,
+        -1087936494,
+        -1059896322,
+        -1057662612,
+        -1103732840,
+        -1111817978,
+        -1051526199,
+        1090194140,
+        1081899639,
+        -1076166407,
+        -1052594568,
+        1082243943,
+        1057761991,
+        1090896648,
+        -1082015537,
+        1082528959,
+        -1059899787,
+        -1046778896,
+        1097539684,
+        -1065026794,
+        1071933724,
+        1049667595,
+        1068854376,
+        -1106012845,
+        1060475845,
+        1074788185,
+        1065988599,
+        1067167960,
+        -1086060638,
+        -1056668245,
+        -1115007198,
+        1070177590,
+        -1157568432,
+        1020175012,
+        1060360399,
+        1062162449,
+        -1086672540,
+        -1094905038,
+        -1071582444,
+        -1094305357,
+        1066049243,
+        1042898444,
+        1025271746,
+        1062943546,
+        -1105454536,
+        -1112451408,
+        1020268342,
+        1069662926,
+        1041903853,
+        -1101541995,
+        1060694450,
+        -1089747658,
+        1053287958,
+        1045797681,
+        1051320340,
+        1045055546,
+        1063861293,
+        -1091781820,
+        1052916050,
+        -1128247322,
+        1015591387,
+        1077451040,
+        -1073294932,
+        1047229904,
+        -1090935396,
+        -1077539388,
+        -1097543484,
+        -1141246264,
+        1042216564,
+        1060705104,
+        1057714365,
+        1073401194,
+        -1095803958,
+        1074583586,
+        -1072002707,
+        -1087623695,
+        1063301541,
+        1073049526,
+        -1075461268,
+        -1085885096,
+        -1124462158,
+        -1127484840,
+        -1115254574,
+        1053360256,
+        1037580031,
+        -1093811015,
+        1048680041,
+        -1106651934,
+        -1111722655,
+        1025431018,
+        1009282638,
+        -1088056336,
+        -1105082726,
+        1042718426,
+        -1088867876,
+        1066552150,
+        -1101446569,
+        1059234937,
+        1040741203,
+        -1087958192,
+        -1128880627,
+        -1120060500,
+        -1089875967,
+        1044861624,
+        1065822073,
+        -1069406085,
+        1057516817,
+        -1072520693,
+        1049140596,
+        -1102665028,
+        -1085834496,
+        -1092501094,
+        1055524391,
+        -1075590221,
+        -1070108059,
+        -1101498704,
+        1055232141,
+        -1098516077,
+        1033180768,
+        1049576012,
+        1050019891,
+        1078749924,
+        -1086291401,
+        -1090969212,
+        -1093221839,
+        -1073917615,
+        1044028027,
+        1050530082,
+        -1072360073,
+        -1118162994,
+        -1073829359,
+        -1100944446,
+        1056275226,
+        -1088922288,
+        -1106080576,
+        -1102749060,
+        -1084265170,
+        1062657343,
+        1069204232,
+        1063987503,
+        -1079631347,
+        1030637969,
+        1059398083,
+        1038415108,
+        1039323343,
+        1058956230,
+        -1100956607,
+        -1102724711,
+        -1102270869,
+        1047688636,
+        -1086234423,
+        1037309894,
+        -1095022174,
+        -1044964228,
+        1076415284,
+        -1074062556,
+        1093816625,
+        1068400730,
+        -1077294355,
+        1071123957,
+        -1072461302,
+        -1065812187,
+        -1098290230,
+        1071449646,
+        1072665426,
+        1049460852,
+        -1076640454,
+        1044258566,
+        1081738637,
+        1065708159,
+        -1072941323,
+        -1088021349,
+        -1097487487,
+        -1095289772,
+        -1084138728,
+        1053851392,
+        -1089837257,
+        1099421214,
+        1067099406,
+        -1081989927,
+        -1077054027,
+        -1076610559,
+        -1082341958,
+        1054995441,
+        1075611801,
+        1069725908,
+        -1047883140,
+        -1089152315,
+        -1115632114,
+        -1076696719,
+        -1117839021,
+        1082344356,
+        1048589254,
+        -1082468140,
+        1058206396,
+        1069253183,
+        -1098442170,
+        -1073122752,
+        1081674379,
+        1068430726,
+        -1077425985,
+        -1083318336,
+        1074264670,
+        -1070958675,
+        1104185449,
+        1077121257,
+        1094248722,
+        1074611953,
+        -1113582931,
+        -1073522270,
+        -1087997750,
+        -1072330742,
+        -1098010467,
+        -1093997461,
+        1065702763,
+        1057615478,
+        -1074259690,
+        1051566905,
+        1061921218,
+        -1105613643,
+        1045110725,
+        -1095788317,
+        1031365306,
+        -1085624970,
+        1059396572,
+        -1101919797,
+        1065491950,
+        1052938012,
+        -1042984765,
+        -1074271455,
+        1069853619,
+        -1090018109,
+        -1098264083,
+        -1077856825,
+        -1095202686,
+        -1074333095,
+        -1090849446,
+        -1101095894,
+        1046923419,
+        -1089524033,
+        -1060472658,
+        -1062767510,
+        1063985389,
+        -1086080388,
+        1060862852,
+        -1097900924,
+        1033701983,
+        -1077701647,
+        1046907461,
+        -1075174043,
+        -1097806845,
+        -1072304847,
+        -1071339630,
+        -1081347128,
+        -1049580877,
+        -1043913140,
+        -1081808822,
+        1043255869,
+        -1092737529,
+        -1107546468,
+        1048752631,
+        1034821381,
+        1066756022,
+        1031837370,
+        -1072165667,
+        1020245344,
+        -1073757084,
+        -1082962569,
+        1060890577,
+        1042781111,
+        1049960214,
+        1053114173,
+        1043427735,
+        -1085453902,
+        1067879079,
+        1059777390,
+        -1059633063,
+        -1080432415,
+        -1066912823,
+        -1080734103,
+        1054834247,
+        -1098928946,
+        -1089881013,
+        1064271084,
+        1064737121,
+        -1073698005,
+        -1122980491,
+        1048418293,
+        -1078024395,
+        1041757510,
+        -1076906678,
+        1055763694,
+        -1087200523,
+        -1082986286,
+        -1086319633,
+        -1069348921,
+        1051155714,
+        1026588856,
+        1061757939,
+        -1087789747,
+        -1098360894,
+        1038912152,
+        -1093910907,
+        1009944912,
+        1041148347,
+        -1108475851,
+        -1126808234,
+        -1094611835,
+        1054065656,
+        -1080034011,
+        -1097522123,
+        -1070297084,
+        -1094319875,
+        -1070631132,
+        1066673396,
+        1063088341,
+        -1090178777,
+        -1076373698,
+        -1099538162,
+        1082634927,
+        1054064429,
+        1088952743,
+        1070066443,
+        -1090707291,
+        1050814352,
+        1047862251,
+        -1072240787,
+        1060833194,
+        1082059005,
+        1087111194,
+        -1104402679,
+        1078341383,
+        -1087997892,
+        1058851646,
+        1094181724,
+        1083353246,
+        -1051731816,
+        1056964714,
+        1065269551,
+        -1080907401,
+        1067860072,
+        1084363692,
+        1071478245,
+        -1077798364,
+        1069987900,
+        -1095344275,
+        1071302179,
+        1066989259,
+        -1085889110,
+        1052672016,
+        -1065805550,
+        -1082004053,
+        1033743340,
+        -1081431645,
+        1060603508,
+        1093035612,
+        1063793770,
+        1057485629,
+        1040442054,
+        1072016253,
+        1067127677,
+        1068639415,
+        1074077830,
+        -1089856612,
+        1043516058,
+        1044510367,
+        -1131236648,
+        1064945675,
+        1053666900,
+        1020627005,
+        -1100606780,
+        -1073734109,
+        1040571446,
+        -1109802826,
+        1073045294,
+        1050520077,
+        -1105483515,
+        1025195237,
+        -1118507646,
+        -1096292659,
+        1051071938,
+        -1098723735,
+        -1079875480,
+        1051084524,
+        -1081067851,
+        1072833359,
+        1063671026,
+        1041038039,
+        1076473170,
+        1036586250,
+        1038635195,
+        1077105618,
+        1047057999,
+        -1088961333,
+        -1107184233,
+        -1068856366,
+        -1072209056,
+        -1081090984,
+        -1084265766,
+        -1087186220,
+        -1083080621,
+        -1069324543,
+        1042881621,
+        -1090709125,
+        -1117535045,
+        1044274592,
+        1068288591,
+        -1105108599,
+        1054465243,
+        1056996507,
+        -1109691663,
+        1024921439,
+        1060959607,
+        1033481409,
+        1057884097,
+        1017239691,
+        1042463986,
+        -1088109011,
+        1068931272,
+        -1072806472,
+        -1089464611,
+        -1093283522,
+        -1089341010,
+        1028465432,
+        1079784883,
+        1025166472,
+        1052994621,
+        1022596845,
+        -1088830691,
+        -1078977568,
+        1048336536,
+        -1120079764,
+        1027403498,
+        -1117741533,
+        -1046513724,
+        -1085789405,
+        -1071251706,
+        1039749794,
+        1074434373,
+        1037998930,
+        1029730945,
+        1051731040,
+        1042955166,
+        1055280328,
+        1034121285,
+        1084881775,
+        1106120702,
+        -1072740435,
+        1054233493,
+        -1085059427,
+        -1134532381,
+        1032488634,
+        1011800626,
+        -1129625916,
+        1057927235,
+        1039917946,
+        1060673061,
+        985044414,
+        -1110667164,
+        -1102613837,
+        -1127655793,
+        -1116174488,
+        -1092080578,
+        1042686328,
+        1039289001,
+        1066265000,
+        1058775919,
+        1088591513,
+        1025648865,
+        -1132337734,
+        -1070817423,
+        1039493514,
+        -1143425416,
+        -1088364690,
+        1020946127,
+        -1105928824,
+        1024214065,
+        -1136110374,
+        1045612344,
+        -1122616517,
+        1037563537,
+        -1112523206,
+        -1106578696,
+        -1119186958,
+        -1065346385,
+        -1107115925,
+        1055810070,
+        -1109747415,
+        -1111393059,
+        -1106178667,
+        1047979980,
+        1041905665,
+        -1111250092,
+        1076061208,
+        -1101908757,
+        -1068816826,
+        1092690555,
+        -1100708467,
+        -1106684945,
+        -1093631194,
+        -1108794769,
+        -1065448480,
+        1039185152,
+        1032634193,
+        1052257354,
+        1043642069,
+        1049926778,
+        -1108806800,
+        -1088708750,
+        1035261494,
+        -1091859467,
+        1052530835,
+        1019791633,
+        1077809182,
+        1061773717,
+        1082182461,
+        1018308034,
+        -1107903034,
+        -1089007475,
+        -1088068799,
+        -1088132199,
+        -1090186899,
+        -1143238176,
+        1079953834,
+        1030266162,
+        1062031154,
+        -1092625378,
+        1067842571,
+        1007152122,
+        1040591042,
+        -1091832839,
+        -1102497726,
+        -1077555677,
+        1049624717,
+        -1078334622,
+        1036583016,
+        1049082649,
+        -1121918984,
+        -1112392023,
+        -1118720348,
+        1054880839,
+        1049757365,
+        -1092864786,
+        1065004579,
+        -1087825781,
+        1055377940,
+        1044585137,
+        -1098324140,
+        1031627455,
+        1041790280,
+        -1082435225,
+        1014504745,
+        1042749378,
+        1039907846,
+        -1098041742,
+        -1135202970,
+        1050593291,
+        1038652035,
+        1038867281,
+        1024152771,
+        1058588637,
+        -1103844981,
+        1061686855,
+        1046214479,
+        -1097648059,
+        -1092196514,
+        1060275810,
+        1040574604,
+        1060989493,
+        -1115753879,
+        1051049070,
+        1032229028,
+        1021562893,
+        -1102027672,
+        -1105593975,
+        -1087175508,
+        -1108509087,
+        -1104460589,
+        -1111347392,
+        1052590972,
+        1088429331,
+        1051704594,
+        -1098533858,
+        1065513517,
+        1073018172,
+        -1105214632,
+        -1094989264,
+        1054628764,
+        1044399028,
+        1081198088,
+        1068766922,
+        1058377529,
+        1092505819,
+        -1108311732,
+        1058906701,
+        1045447468,
+        1046047273,
+        1032602618,
+        -1109892014,
+        1018052323,
+        1027338976,
+        1007211708,
+        994491648,
+        -1114584923,
+        1084519911,
+        1009556314,
+        1042091262,
+        -1120954833,
+        -1079936377,
+        -1101801825,
+        1036437149,
+        1039606475,
+        -1112548696,
+        1036200509,
+        -1073503205,
+        -1108088773,
+        -1096113868,
+        -1095463313,
+        1052845169,
+        1050735470,
+        -1173996880,
+        1100736389,
+        1044451287,
+        1050285740,
+        -1098181309,
+        -1091182133,
+        1066794142,
+        -1098741583,
+        1086445747,
+        1048877921,
+        -1068972712,
+        1042605395,
+        1083155300,
+        1042452061,
+        1031123035,
+        -1113428338,
+        -1098282921,
+        -1088155784,
+        -1091496950,
+        -1094792716,
+        -1096643428,
+        1060799972,
+        1067638402,
+        -1106483164,
+        1013823326,
+        -1102414584,
+        -1093496115,
+        -1113159429,
+        -1143824760,
+        -1124376450,
+        -1114726945,
+        1001390936,
+        1068125830,
+        1024902583,
+        1057214552,
+        -1106204240,
+        1070369378,
+        -1065390458,
+        -1087842977,
+        -1104982657,
+        -1113094245,
+        -1108549280,
+        1060583337,
+        1032835209,
+        1049607092,
+        -1101298383,
+        1035510404,
+        -1089914499,
+        -1090288505,
+        1024018337,
+        -1082873348,
+        1059214184,
+        1015737114,
+        -1113961756,
+        -1096340764,
+        1035286964,
+        -1079916780,
+        1014723774,
+        -1055275081,
+        1052478002,
+        -1173045840,
+        -1128595736,
+        -1109653023,
+        1057171761,
+        1066576552,
+        1059636280,
+        1067481894,
+        -1090095341,
+        1077359328,
+        -1113608214,
+        -1102770391,
+        1045796091,
+        1002605597,
+        -1114547851,
+        1032741827,
+        1017048272,
+        -1117100149,
+        1054592068,
+        -1096656356,
+        -1114226084,
+        1044678164,
+        1026520697,
+        1073130125,
+        -1097938417,
+        1052939472,
+        1023887581,
+        1053722965,
+        -1097623915,
+        -1104074935,
+        1038505858,
+        -1075793540,
+        -1098407442,
+        -1101166441,
+        -1073046357,
+        1058728487,
+        -1101106132,
+        -1079880416,
+        1041130752,
+        1009158867,
+        1057528321,
+        -1177790880,
+        -1107474187,
+        -1089412524,
+        1033809826,
+        1046865613,
+        1031998145,
+        -1093612139,
+        1035418669,
+        1049634254,
+        1054456445,
+        1045679077,
+        1027666331,
+        1040783353,
+        -1109325763,
+        1067417386,
+        1052987892,
+        1078094451,
+        1052255710,
+        1042741589,
+        -1084056020,
+        1066166533,
+        1057940417,
+        1048326199,
+        -1146064615,
+        1041869541,
+        1037661037,
+        -1083596525,
+        -1107711190,
+        1041597207,
+        1026601506,
+        980958216,
+        -1112566314,
+        1074980159,
+        1068539284,
+        1045880663,
+        1071569821,
+        -1138349768,
+        -1090912043,
+        -1114592216,
+        -1110127393,
+        -1099917911,
+        -1092224125,
+        1049527779,
+        1058460060,
+        -1082711426,
+        -1077717564,
+        1052725070,
+        -1113780211,
+        1046799508,
+        1030527505,
+        1063688857,
+        -1082607723,
+        1040757890,
+        -1094455934,
+        1088176284,
+        1042957780,
+        989741936,
+        1056541146,
+        1050319864,
+        1065384155,
+        1014506424,
+        1069307203,
+        1051759886,
+        1063739510,
+        1066010833,
+        -1115476744,
+        -1112973623,
+        -1112925364,
+        -1090692306,
+        -1094055253,
+        1090381989,
+        1044328194,
+        1052669554,
+        1008486066,
+        1047478169,
+        -1119192850,
+        -1077137017,
+        -1113808815,
+        -1167981988,
+        1059939694,
+        -1091602985,
+        1056616408,
+        1082286792,
+        1075025532,
+        1044517588,
+        1041315086,
+        -1087678048,
+        -1105856510,
+        -1076301150,
+        -1061433035,
+        -1102923665,
+        1078507621,
+        -1097519013,
+        -1081443907,
+        1054800774,
+        -1114103831,
+        -1140796102,
+        -1128165948,
+        -1072394565,
+        -1075713511,
+        -1079828535,
+        -1096344786,
+        1088731079,
+        1040041121,
+        1036958261,
+        1051764188,
+        1040269403,
+        1058257073,
+        1041202304,
+        1091489999,
+        1049744654,
+        -1083653481,
+        1057685790,
+        1052541306,
+        1046811328,
+        -1106985816,
+        -1118860627,
+        -1122424028,
+        1051048758,
+        1038949903,
+        1069059589,
+        1033685511,
+        1048332024,
+        -1114624880,
+        1054487810,
+        -1110425014,
+        -1078534696,
+        1047932658,
+        -1101754151,
+        1060380236,
+        1064390727,
+        -1092217794,
+        1030471334,
+        973488128,
+        -1063749940,
+        -1104432687,
+        -1073307133,
+        -1082644987,
+        -1155589404,
+        1055615898,
+        1033480662,
+        1064305401,
+        1036359281,
+        1038153310,
+        -1098204687,
+        -1111267934,
+        1065796251,
+        1048338174,
+        1045923753,
+        -1106691366,
+        -1077907958,
+        1043056662,
+        1039818316,
+        -1094125409,
+        -1088948046,
+        -1089987484,
+        -1103804691,
+        -1066870063,
+        -1067762518,
+        1070445781,
+        -1098003673,
+        1053435683,
+        1051828698,
+        -1102030774,
+        1033636360,
+        1050506678,
+        -1098902401,
+        -1107928098,
+        -1093490633,
+        -1114746202,
+        -1086087446,
+        1029281267,
+        1015390940,
+        1029098345,
+        1061047517,
+        -1105280339,
+        1060327117,
+        -1102047603,
+        -1123955102,
+        -1123269534,
+        -1113292027,
+        -1108930252,
+        1075830134,
+        -1131456942,
+        1091633970,
+        1033271603,
+        1049427308,
+        -1079877893,
+        1045005688,
+        -1127283809,
+        1049683092,
+        1040221364,
+        1049447154,
+        1055481043,
+        1045023059,
+        1036422805,
+        1075897834,
+        1044037351,
+        -1104491510,
+        -1090638862,
+        1021829322,
+        1039100277,
+        1061944256,
+        1055328508,
+        1042146307,
+        -1098275297,
+        -1092698556,
+        -1106950043,
+        1079197685,
+        -1105666429,
+        -1087531861,
+        1060664578,
+        -1097782504,
+        -1110149898,
+        1046913139,
+        -1119725749,
+        -1121600653,
+        -1072054205,
+        1035980224,
+        -1113878108,
+        -1096033841,
+        1018200943,
+        -1118213135,
+        1028543102,
+        -1106760586,
+        -1089028076,
+        -1093258465,
+        1038496157,
+        -1126051608,
+        1066355901,
+        1057012632,
+        1031171994,
+        1051361901,
+        1059788284,
+        1034295277,
+        1049201427,
+        -1104693904,
+        -1078213654,
+        1053916711,
+        1074177060,
+        -1103954435,
+        1076879546,
+        1057325673,
+        -1074339675,
+        -1072740227,
+        -1073333729,
+        -1057256407,
+        -1069198232,
+        -1102781370,
+        -1103764190,
+        -1064414968,
+        -1075286349,
+        1069753949,
+        1067349187,
+        -1100236966,
+        1088145007,
+        -1067193851,
+        1070015837,
+        -1080785495,
+        -1103081281,
+        -1097226651,
+        1048651366,
+        1074137047,
+        -1090588290,
+        -1079503711,
+        1067105057,
+        1028537718,
+        1050079145,
+        1051634654,
+        -1117985642,
+        -1073731692,
+        -1080815187,
+        -1078940843,
+        -1072224984,
+        -1077936898,
+        1019436688,
+        1056711933,
+        -1072116588,
+        1056824535,
+        -1077884138,
+        1076645333,
+        -1062892948,
+        1050647164,
+        1068541629,
+        1048909230,
+        1039227961,
+        1058371014,
+        -1062794361,
+        -1077636302,
+        -1065651987,
+        1077537155,
+        -1082066185,
+        1077080131,
+        1068561913,
+        -1087258023,
+        -1083909741,
+        1074704028,
+        1057353277,
+        1060291382,
+        1089675536,
+        1074441230,
+        1073904446,
+        1089356704,
+        1042860196,
+        -1077408520,
+        1084113846,
+        -1075189486,
+        1081944593,
+        -1096408766,
+        -1081637047,
+        -1089325405,
+        1042022289,
+        1055215954,
+        -1079408809,
+        1068726190,
+        -1087141600,
+        1065766240,
+        -1089876298,
+        -1103518370,
+        -1105703482,
+        -1086953752,
+        -1073390994,
+        1077352759,
+        -1069791321,
+        -1080926202,
+        -1117233418,
+        1042181372,
+        -1082923752,
+        -1097979126,
+        1062829333,
+        1072127059,
+        -1073636098,
+        1076465265,
+        1076654282,
+        -1085846703,
+        1086116696,
+        -1057730990,
+        -1091287851,
+        -1127229288,
+        -1060989995,
+        -1057943028,
+        -1089322011,
+        1091386850,
+        1062942503,
+        -1091762540,
+        -1073134165,
+        1061263833,
+        -1056705820,
+        -1075996346,
+        -1053728457,
+        -1057884842,
+        1062684089,
+        1061718117,
+        -1060730331,
+        1075420071,
+        -1055166983,
+        -1165340035,
+        -1084112099,
+        -1075358929,
+        1042348849,
+        1057605442,
+        1072863764,
+        1055141837,
+        1050515068,
+        1066832404,
+        -1109858840,
+        1061593844,
+        -1088010274,
+        1049336987,
+        1077140299,
+        1071229737,
+        1094128005,
+        1068652964,
+        1073761263,
+        -1080823558,
+        -1080612295,
+        -1069492533,
+        -1076568267,
+        1016254432,
+        1065465786,
+        1076621535,
+        -1067018786,
+        1044120022,
+        -1063612725,
+        -1088868178,
+        -1097505784,
+        1081400901,
+        1078491867,
+        1058465231,
+        1075142054,
+        -1083623957,
+        -1086719983,
+        -1082210137,
+        1071933930,
+        -1074073535,
+        -1078566806,
+        -1065678814,
+        -1111316996,
+        -1078336746,
+        1070740177,
+        1069943940,
+        -1088959134,
+        -1085890078,
+        1072860055,
+        1041993261,
+        -1093062530,
+        -1083588898,
+        -1083038720,
+        -1088907022,
+        -1085595625,
+        1068287035,
+        1062146147,
+        1051004601,
+        1054107130,
+        1058497817,
+        -1086203469,
+        -1077576653,
+        -1070592531,
+        -1089467378,
+        1066656359,
+        1060735033,
+        -1067897381,
+        1073617298,
+        1066345835,
+        1041445888,
+        1074931894,
+        -1075812972,
+        1079303671,
+        -1077984302,
+        1083007811,
+        -1092531478,
+        -1067471692,
+        1086198063,
+        1076521997,
+        -1064529174,
+        1080631055,
+        1076395727,
+        -1080986619,
+        1079792596,
+        -1080832923,
+        -1062716147,
+        -1086302341,
+        -1127916910,
+        1074580338,
+        1061925128,
+        1082884844,
+        1064851000,
+        1080615498,
+        -1063600615,
+        1073954814,
+        1066674762,
+        -1085023002,
+        -1097164616,
+        1063834952,
+        1063321300,
+        -1093493278,
+        -1086621768,
+        -1079288401,
+        1063636137,
+        -1128499533,
+        -1100959460,
+        1041628395,
+        -1084743415,
+        -1099571596,
+        -1063279956,
+        1067033027,
+        -1113153260,
+        -1064337427,
+        -1098357774,
+        -1072878054,
+        1087542283,
+        1052472352,
+        1068120113,
+        1074910717,
+        1039324688,
+        -1089261886,
+        1067827534,
+        -1097457750,
+        -1097750563,
+        1071980600,
+        1086678889,
+        1035227229,
+        1061793755,
+        1076712782,
+        1079828043,
+        1032646900,
+        -1080491025,
+        1061130171,
+        -1087839881,
+        -1080539312,
+        -1097249232,
+        1061496693,
+        1040456971,
+        -1069696967,
+        -1063683343,
+        1074888984,
+        -1084961865,
+        1068672080,
+        -1090662350,
+        1081144929,
+        1058033832,
+        -1089030043,
+        -1078895177,
+        -1097457048,
+        -1096859790,
+        -1081841664,
+        1059968953,
+        1060760572,
+        -1079023849,
+        1058342491,
+        -1095195805,
+        -1089120616,
+        -1074032293,
+        -1077410768,
+        -1063685158,
+        -1062040964,
+        -1072643604,
+        -1083311835,
+        -1072759764,
+        -1087774845,
+        1045225986,
+        1046937492,
+        -1071795919,
+        1045740663,
+        -1098631065,
+        -1067875375,
+        1072575710,
+        1069076885,
+        1069040543,
+        1059144786,
+        1073846876,
+        -1073669539,
+        -1058738446,
+        -1078430236,
+        -1077567885,
+        1068472105,
+        1058959248,
+        -1103897783,
+        1063603208,
+        -1075658728,
+        1080802947,
+        1080295955,
+        -1073259101,
+        -1072177139,
+        1083268173,
+        -1078865652,
+        1066501044,
+        -1071839542,
+        -1094931324,
+        -1080502637,
+        1080768941,
+        1036329836,
+        1059521957,
+        1069798255,
+        -1079312558,
+        -1085816060,
+        -1079643341,
+        -1086722366,
+        1043599961,
+        1062166563,
+        1061973195,
+        1071371874,
+        1073229843,
+        -1061445555,
+        1043468529,
+        -1074126149,
+        -1070030693,
+        -1074638185,
+        -1086468465,
+        -1071534031,
+        1078383893,
+        -1096567561,
+        1059057313,
+        -1064281023,
+        1066320794,
+        -1071213643,
+        -1095622871,
+        -1070430059,
+        -1102977623,
+        1081369411,
+        -1069081009,
+        1079231280,
+        1087104565,
+        1047364451,
+        -1064925938,
+        1036380031,
+        1077110985,
+        1075939560,
+        -1064753711,
+        1082002001,
+        1056507941,
+        -1059755615,
+        -1064375097,
+        -1087692804,
+        -1086089786,
+        1066957523,
+        -1080468127,
+        -1081012174,
+        1071212393,
+        -1109986923,
+        -1097684837,
+        -1067339779,
+        1061564371,
+        -1086052519,
+        1037734284,
+        -1087505241,
+        1067430553,
+        -1119470931,
+        -1110867099,
+        -1070421980,
+        1032622795,
+        -1081877335,
+        -1089545380,
+        -1079412132,
+        1090920436,
+        1077980975,
+        1082242947,
+        1076635496,
+        1071279024,
+        -1092787228,
+        -1085232178,
+        1053332960,
+        1050454689,
+        1078595264,
+        1073618576,
+        -1088560341,
+        1072287784,
+        1053511605,
+        1072836574,
+        -1077550991,
+        -1064293020,
+        1071537963,
+        1033075688,
+        -1073549464,
+        1070255803,
+        1059442895,
+        1068751064,
+        -1059118400,
+        1077147308,
+        1083369764,
+        -1094320149,
+        1028617639,
+        -1120573237,
+        1065037566,
+        -1096153546,
+        -1081990727,
+        1058358739,
+        1045733025,
+        1032160282,
+        -1077197494,
+        -1090408926,
+        1047967431,
+        -1083413978,
+        1032880285,
+        -1107171584,
+        1029258881,
+        -1065010204,
+        -1084595321,
+        -1071628950,
+        1081847795,
+        1069934810,
+        -1056753300,
+        -1077745951,
+        -1082063194,
+        -1095755969,
+        1075902479,
+        -1077417942,
+        -1089539493,
+        1066098806,
+        1047912679,
+        1067192257,
+        1066987047,
+        1080608712,
+        1061781570,
+        1080665947,
+        1053123302,
+        1076730940,
+        -1079498731,
+        -1085482987,
+        1067541776,
+        1062575146,
+        -1096871603,
+        -1062668783,
+        -1097152860,
+        -1057857089,
+        -1071530349,
+        1053065285,
+        1059965977,
+        1064779175,
+        -1070560111,
+        1078472638,
+        -1071968133,
+        1062267719,
+        -1080575845,
+        1061813212,
+        -1143185132,
+        -1105116470,
+        1033335036,
+        1063841378,
+        1065395340,
+        -1086764982,
+        1050463714,
+        1063790044,
+        -1093668792,
+        -1090414132,
+        -1085191086,
+        -1070799165,
+        -1077795617,
+        1075529455,
+        1067651868,
+        -1087516912,
+        1038698811,
+        -1077040274,
+        1066292798,
+        -1072292152,
+        1077512022,
+        -1082479975,
+        -1073151778,
+        -1081197324,
+        1070530628,
+        1041899513,
+        1062543744,
+        -1083331476,
+        1065726927,
+        -1081047910,
+        -1077128850,
+        -1077649718,
+        -1083730914,
+        1073328847,
+        -1082051681,
+        1074048894,
+        -1072998458,
+        -1082675163,
+        -1073393404,
+        -1092397892,
+        -1072764161,
+        1073530650,
+        1060020120,
+        -1127247156,
+        1067027181,
+        -1092301251,
+        -1081366329,
+        1025544449,
+        -1149019237,
+        1067146213,
+        1060553232,
+        -1098073787,
+        -1086564621,
+        -1123724299,
+        -1097663574,
+        -1097096499,
+        1057814203,
+        1048661767,
+        1078743503,
+        1063295730,
+        -1095632837,
+        -1062631321,
+        1057917147,
+        -1078348273,
+        -1071460504,
+        -1061991263,
+        1072007746,
+        1058392250,
+        -1067326355,
+        -1077861936,
+        -1071461872,
+        1076546774,
+        -1067492916,
+        1062251697,
+        -1065822372,
+        1051829674,
+        -1087124741,
+        -1076839110,
+        1072452168,
+        -1072219407,
+        1060964121,
+        1070744460,
+        -1075121700,
+        1059093929,
+        1065080790,
+        1034653814,
+        1074604455,
+        -1107956361,
+        -1064766210,
+        -1080478713,
+        -1076867533,
+        -1097663750,
+        -1071929297,
+        1039977153,
+        1051774732,
+        1055278575,
+        1048988626,
+        1055937832,
+        -1082025240,
+        -1087686901,
+        -1119256578,
+        -1110732045,
+        1019693139,
+        -1092980748,
+        -1099006958,
+        1082415506,
+        -1064441198,
+        -1064396800,
+        -1066213804,
+        1049319572,
+        1067373297,
+        -1083944143,
+        1072144804,
+        1074355207,
+        -1077346773,
+        -1099721483,
+        -1070307846,
+        -1079135649,
+        -1069655869,
+        -1103126205,
+        -1073099888,
+        1076349893,
+        1067500104,
+        1057112503,
+        1073786140,
+        1082715876,
+        -1097988835,
+        1084492678,
+        1031337176,
+        -1089760329,
+        -1103647185,
+        -1067356810,
+        1052566031,
+        -1080898018,
+        1052572125,
+        -1069369417,
+        -1074281444,
+        -1112358514,
+        1053319610,
+        -1086862715,
+        1023326217,
+        1043654943,
+        -1089434485,
+        1076344172,
+        -1106885456,
+        -1098244491,
+        -1088104901,
+        1064159789,
+        1018588039,
+        1061688066,
+        1032462069,
+        -1072978526,
+        -1114470348,
+        1078199066,
+        -1104323880,
+        -1078336282,
+        1076879406,
+        -1077665544,
+        1045357291,
+        -1122438438,
+        -1094742281,
+        -1083452682,
+        1075312979,
+        -1068943012,
+        -1079629284,
+        1043375845,
+        1048332817,
+        1051193996,
+        -1086977222,
+        -1087647059,
+        1064984308,
+        1073415508,
+        1063096665,
+        1051307972,
+        1023560474,
+        -1087545283,
+        1053292318,
+        -1067437652,
+        1057941361,
+        -1073047966,
+        -1103862992,
+        1075426239,
+        1055358384,
+        1079975631,
+        1017477005,
+        1087349560,
+        1036408553,
+        -1078420244,
+        -1088651423,
+        1039523619,
+        -1109001884,
+        1060084922,
+        -1131886872,
+        1050614446,
+        -1097388726,
+        -1106047532,
+        1073493615,
+        1034886782,
+        1030251799,
+        994866788,
+        -1127458253,
+        1035335111,
+        1054989202,
+        1053441213,
+        -1097085492,
+        1054818101,
+        1058854121,
+        1043441033,
+        1040945475,
+        -1074939808,
+        1069496610,
+        991495172,
+        1042259989,
+        976914048,
+        1070108182,
+        -1107011812,
+        998431770,
+        -1088595868,
+        -1120796326,
+        -1135170194,
+        1068757090,
+        -1121044545,
+        -1106248309,
+        1056881696,
+        1045557876,
+        1020576387,
+        1025728215,
+        1049536038,
+        1034923952,
+        1047070927,
+        -1090314408,
+        -1132709040,
+        1036172190,
+        -1103364244,
+        1040339129,
+        1045529931,
+        -1090237410,
+        995388174,
+        1073296092,
+        -1073735027,
+        1013193555,
+        1048837299,
+        1063050577,
+        1065531576,
+        -1114436611,
+        1049567572,
+        -1130347980,
+        -1089665392,
+        1057585238,
+        -1117009990,
+        1090907634,
+        -1114388866,
+        -1119650282,
+        -1104882449,
+        1014746202,
+        1032720260,
+        1057385715,
+        -1113010208,
+        -1120782218,
+        1008293920,
+        -1126141588,
+        1044018444,
+        -1126914478,
+        1051446820,
+        -1104163769,
+        1067664703,
+        1012561282,
+        -1122855509,
+        1072358420,
+        1041439139,
+        1046003339,
+        1069379479,
+        -1118602879,
+        1023419480,
+        -1122623018,
+        1051852341,
+        -1107626656,
+        -1087234248,
+        -1077287157,
+        1033608197,
+        -1071705245,
+        -1109407200,
+        1028436832,
+        -1093794077,
+        -1106525440,
+        994541891,
+        1035015483,
+        1053798756,
+        -1127062001,
+        -1087269484,
+        1054542492,
+        -1123003113,
+        -1099702338,
+        1047214228,
+        -1100085612,
+        -1090701324,
+        1069451648,
+        -1125023767,
+        1066256783,
+        1006809943,
+        1032282486,
+        -1059092690,
+        -1103255600,
+        1032003005,
+        1062946719,
+        1049185453,
+        -1165408424,
+        -1104168700,
+        -1108198032,
+        1040697124,
+        1023671202,
+        -1104472126,
+        1074492938,
+        -1098309299,
+        1103086693,
+        1053935729,
+        1043997044,
+        1049170811,
+        1046621535,
+        1062994724,
+        -1106396952,
+        -1112828619,
+        1025787216,
+        1043760327,
+        1040358509,
+        1074864359,
+        1077374369,
+        -1062923130,
+        -1107215153,
+        1079624103,
+        -1086378690,
+        -1086923043,
+        -1099376255,
+        1044062984,
+        1025199469,
+        -1105671034,
+        1039867710,
+        1026354054,
+        -1131822811,
+        1043386746,
+        1032678950,
+        1028773204,
+        -1129264890,
+        1059465544,
+        -1113284807,
+        1048053510,
+        -1123957369,
+        1059603480,
+        -1097575519,
+        -1092625393,
+        -1106937853,
+        1050118316,
+        1031902391,
+        -1078970942,
+        -1107722103,
+        -1129910800,
+        1035446661,
+        1038968416,
+        -1111874379,
+        -1122911957,
+        1053633025,
+        1032920632,
+        1061141449,
+        1069947724,
+        1040412626,
+        -1094598536,
+        1064794174,
+        1058652824,
+        1078003148,
+        1031882883,
+        1019308515,
+        -1094030930,
+        -1098451506,
+        -1111012168,
+        -1108286648,
+        1039913082,
+        1063125253,
+        1068957087,
+        1023783637,
+        -1078252571,
+        -1094179333,
+        1017968746,
+        1047832971,
+        -1127889031,
+        1016030590,
+        1024922356,
+        -1105736754,
+        -1138349372,
+        1018599645,
+        -1140468878,
+        1014751046,
+        -1138115176,
+        -1064527519,
+        1044193108,
+        -1094052687,
+        -1115648463,
+        1040855268,
+        1044440682,
+        1055725609,
+        -1088349764,
+        -1105733618,
+        -1103833553,
+        -1130321018,
+        -1123264290,
+        1059962646,
+        1045242582,
+        -1114428761,
+        1048589747,
+        1056009821,
+        -1108324331,
+        -1097910904,
+        1045291406,
+        -1095262568,
+        1057898855,
+        1034237326,
+        1032007602,
+        1053797716,
+        -1140080344,
+        -1111412913,
+        -1087766131,
+        -1100143651,
+        1067842488,
+        1012410649,
+        1041020650,
+        1082892561,
+        -1076277088,
+        -1094054282,
+        1036286596,
+        -1090632939,
+        1033462468,
+        -1119322634,
+        1033224939,
+        -1130959437,
+        1023491332,
+        -1108653953,
+        -1103082302,
+        1025990200,
+        1045053623,
+        1007072883,
+        1018363297,
+        -1081330658,
+        1042209297,
+        1019102924,
+        -1105520880,
+        -1111076357,
+        1066057385,
+        1035849662,
+        1032398542,
+        -1116571216,
+        -1098409318,
+        1047587935,
+        -1105974018,
+        1074881397,
+        1049499566,
+        1040151695,
+        -1097929369,
+        -1104399955,
+        1022701569,
+        1067668611,
+        -1115188854,
+        1045911226,
+        1060647628,
+        -1091003643,
+        -1095856634,
+        1035323152,
+        1039393016,
+        1029084684,
+        -1069897590,
+        1034218946,
+        -1102849757,
+        1050872922,
+        -1109649127,
+        -1098897066,
+        1033080000,
+        -1089879208,
+        -1099567149,
+        -1070739469,
+        1057187433,
+        1040758758,
+        -1086334183,
+        1034993701,
+        1052946941,
+        1018506471,
+        -1111999184,
+        1039276171,
+        -1098312167,
+        1002041627,
+        -1083004972,
+        -1093551179,
+        -1078015519,
+        -1097667358,
+        1055152559,
+        -1098761576,
+        -1088629700,
+        -1061060501,
+        -1122079290,
+        -1117156782,
+        1052852969,
+        -1101725054,
+        -1098224409,
+        -1106123409,
+        1044777527,
+        -1129845608,
+        1036837418,
+        1059403728,
+        -1090859869,
+        1046395418,
+        1018344302,
+        1030133886,
+        1076132738,
+        -1089384880,
+        -1088035724,
+        1070525538,
+        1077432527,
+        -1099319701,
+        1069397769,
+        1049293070,
+        1072656298,
+        1060368048,
+        1049973908,
+        1062969899,
+        -1081347624,
+        -1107006382,
+        -1070942572,
+        -1102115598,
+        1042841411,
+        1049423015,
+        -1103474651,
+        1051353506,
+        1048532581,
+        -1106628818,
+        -1109679024,
+        -1122144159,
+        1048837671,
+        1044402474,
+        1037026795,
+        -1103135451,
+        -1083937760,
+        -1132968184,
+        1041454552,
+        -1106169571,
+        -1099833695,
+        -1080274044,
+        1058801339,
+        1035408258,
+        1040195500,
+        1044624802,
+        1040464170,
+        1072302844,
+        -1106868176,
+        1068313146,
+        -1067856157,
+        1048036283,
+        -1089112214,
+        -1104221816,
+        1011212219,
+        1049590964,
+        -1112256733,
+        -1105805989,
+        1065697381,
+        1052114832,
+        1014134638,
+        1058298504,
+        1050103142,
+        1042615487,
+        -1116700302,
+        -1068735502,
+        -1128371874,
+        1060427663,
+        1034862658,
+        -1144431595,
+        1057142814,
+        1019832008,
+        -1123625892,
+        1058280811,
+        -1085270922,
+        -1109160062,
+        1056245924,
+        1072398913,
+        1078686902,
+        -1106038135,
+        1059993571,
+        -1105684447,
+        -1072468506,
+        1069361426,
+        1032653547,
+        1069436502,
+        1015721278,
+        -1123432371,
+        -1099530465,
+        1007002485,
+        1034447306,
+        1057529561,
+        -1146730605,
+        -1105358413,
+        -1115611800,
+        -1136700319,
+        993929880,
+        1067508145,
+        -1081131909,
+        1035876760,
+        -1086502688,
+        1034419917,
+        -1129579995,
+        1068926935,
+        -1131192068,
+        1035081810,
+        1061196023,
+        1048224107,
+        -1110833377,
+        1046087107,
+        1056106284,
+        1015689017,
+        1071806552,
+        -1132530814,
+        1028841488,
+        -1079589253,
+        1022660124,
+        1032720424,
+        -1094526350,
+        -1108132861,
+        -1134553608,
+        1078745423,
+        -1063056547,
+        -1127540776,
+        1063902425,
+        1076653302,
+        1072877035,
+        -1106849059,
+        1059175157,
+        -1112772587,
+        -1087815036,
+        1063268428,
+        -1110069559,
+        1076285015,
+        1010758504,
+        -1170405684,
+        -1080414941,
+        1020014436,
+        1015631126,
+        1061906910,
+        1036351291,
+        -1115300196,
+        1024071910,
+        1023485152,
+        1032750020,
+        -1053504417,
+        1052161426,
+        1074343503,
+        -1090206652,
+        1040810073,
+        1032918497,
+        -1083411100,
+        1055601193,
+        1033387396,
+        1018198188,
+        -1101959959,
+        -1138051048,
+        1063135760,
+        -1072538013,
+        1029687440,
+        1072209803,
+        1082495458,
+        1037682874,
+        1050198907,
+        1050267098,
+        -1096763009,
+        1032327521,
+        -1095504296,
+        1033081157,
+        -1072683597,
+        1053483299,
+        1009922557,
+        1041382957,
+        -1086240895,
+        -1088580349,
+        1015585819,
+        1032538738,
+        1017091817,
+        1051734535,
+        -1099048754,
+        1018896552,
+        -1059231693,
+        1029871567,
+        -1106346233,
+        1039013192,
+        1038508265,
+        1022600130,
+        -1103279428,
+        -1108303103,
+        1041627302,
+        -1119385149,
+        1043537224,
+        1019677053,
+        -1086649308,
+        -1097413976,
+        1040503142,
+        -1112633448,
+        -1072306906,
+        1046261089,
+        1060376560,
+        -1085151011,
+        -1090143396,
+        -1089062409,
+        -1062684256,
+        -1092325961,
+        -1090619008,
+        -1073892866,
+        1030301400,
+        -1107066805,
+        -1103471876,
+        1058040529,
+        1058297382,
+        1062955398,
+        -1094309058,
+        1072926548,
+        -1064895579,
+        -1115349061,
+        1025196834,
+        -1096520947,
+        -1103281703,
+        -1123293227,
+        1015358155,
+        -1088414708,
+        1028243967,
+        1042723198,
+        1021611568,
+        -1105195638,
+        -1089618608,
+        -1157195327,
+        1063760861,
+        1039836568,
+        1026593931,
+        1051350357,
+        1048179795,
+        -1137754134,
+        -1096797386,
+        -1107110455,
+        1038172572,
+        -1103691715,
+        1067375599,
+        1037595737,
+        1071500001,
+        -1080815307,
+        1056290220,
+        1065580847,
+        1074654092,
+        1076864395,
+        -1064032392,
+        -1085447006,
+        1047152480,
+        -1074198357,
+        1049896228,
+        1062685373,
+        1056763864,
+        1082428738,
+        -1096617549,
+        -1064300881,
+        -1092103051,
+        -1077687113,
+        1077480070,
+        -1081771156,
+        -1064076012,
+        -1062933671,
+        -1061233819,
+        -1104907380,
+        1052752001,
+        -1072740315,
+        -1119671911,
+        1047327019,
+        1042561467,
+        -1106387210,
+        -1070765477,
+        1068105086,
+        -1111313686,
+        -1131823370,
+        -1105403817,
+        1000355048,
+        1071677388,
+        1042693161,
+        1066007217,
+        -1073753380,
+        1073837901,
+        -1091817646,
+        -1128437584,
+        -1059618865,
+        -1081801774,
+        1066595187,
+        1068939609,
+        -1079403876,
+        -1112763389,
+        -1073191371,
+        -1059371142,
+        1041612488,
+        -1069743710,
+        1059030873,
+        1067932210,
+        1076055163,
+        -1078240016,
+        1068349745,
+        -1068110571,
+        -1077889906,
+        1057817574,
+        -1070331710,
+        1081882522,
+        -1072337386,
+        -1087603628,
+        1075042177,
+        1056889262,
+        -1089854627,
+        1057919963,
+        1066401330,
+        1085737219,
+        -1081639791,
+        -1089154178,
+        1036343645,
+        -1078282000,
+        -1078295000,
+        -1085791800,
+        1046556085,
+        -1106218682,
+        -1101696923,
+        -1090486072,
+        -1068717910,
+        -1100099754,
+        1070514407,
+        1083156348,
+        -1068397963,
+        1069356463,
+        1078123976,
+        -1068802576,
+        1043769116,
+        -1063739139,
+        1078048988,
+        1070641209,
+        1076703642,
+        -1081754907,
+        1067753633,
+        -1079252255,
+        1057965502,
+        1071431460,
+        -1089600091,
+        -1076279528,
+        1035367653,
+        1081425906,
+        -1092505942,
+        -1113324677,
+        -1097531072,
+        1071075367,
+        -1120448108,
+        1058335358,
+        -1065866702,
+        1054253127,
+        1052098872,
+        -1084145955,
+        1066050322,
+        -1084288011,
+        1073941381,
+        1065955669,
+        1075407418,
+        -1077375490,
+        1027108764,
+        1055707816,
+        -1088483083,
+        -1106366499,
+        1009464846,
+        -1109712910,
+        1057778038,
+        -1076601134,
+        -1088999170,
+        -1088712121,
+        1057333838,
+        1039687430,
+        -1106574007,
+        -1123374135,
+        -1072747826,
+        1053972234,
+        1066602790,
+        1027092217,
+        1034561142,
+        1051945585,
+        1070062920,
+        -1084206394,
+        1064487856,
+        1065509408,
+        -1072789599,
+        -1091587404,
+        -1088397966,
+        -1075634519,
+        -1081468450,
+        1062503413,
+        1064262807,
+        1067621221,
+        -1070063084,
+        -1097213291,
+        1065056241,
+        -1065824139,
+        -1065271799,
+        1075198524,
+        -1064821830,
+        -1086167925,
+        1087174760,
+        1078010040,
+        1072577045,
+        -1061338163,
+        1067218935,
+        1080611136,
+        1087543130,
+        1088154060,
+        1046348062,
+        -1078277313,
+        1083023370,
+        1051944656,
+        1065741877,
+        -1101819168,
+        1059179555,
+        1075189675,
+        -1079663807,
+        1067185634,
+        -1078817497,
+        -1112264307,
+        1035736362,
+        -1080055960,
+        1067207527,
+        -1086222417,
+        1072348158,
+        -1059674961,
+        -1090188682,
+        -1103323654,
+        1082608574,
+        1077386934,
+        -1073838667,
+        -1068489124,
+        -1077215998,
+        -1066481765,
+        -1076932502,
+        -1072346534,
+        1061797239,
+        -1093655929,
+        1062553572,
+        -1089830141,
+        1095987426,
+        1071673824,
+        1074362914,
+        -1078638808,
+        -1064241924,
+        1094172566,
+        -1058644846,
+        1020992007,
+        -1089727053,
+        1052390229,
+        1053832535,
+        -1074531177,
+        -1080182150,
+        1078169302,
+        1092148430,
+        1090155381,
+        -1078436897,
+        -1080327198,
+        1080684662,
+        -1088357532,
+        1076471185,
+        -1083379219,
+        1084061965,
+        1070158799,
+        1024578939,
+        -1104103537,
+        1076492205,
+        1047633047,
+        -1084054674,
+        -1116599548,
+        -1070396068,
+        -1076518927,
+        1077836951,
+        1042270480,
+        -1090635139,
+        1059331881,
+        1092201250,
+        -1078276487,
+        1067698169,
+        -1071129394,
+        1067567458,
+        -1089269652,
+        1072997286,
+        1050812539,
+        -1107655150,
+        -1107056276,
+        1074645842,
+        -1087290174,
+        -1065149341,
+        1075248193,
+        1065718660,
+        1082689719,
+        -1114038326,
+        1076275065,
+        -1069839383,
+        -1080869854,
+        -1075044312,
+        1065566224,
+        994694025,
+        1076798102,
+        -1067665033,
+        -1093968766,
+        1078147310,
+        1081240340,
+        -1088344220,
+        -1082316809,
+        -1078785877,
+        -1097203543,
+        1041549355,
+        1043890938,
+        1069241023,
+        -1135401438,
+        -1119826282,
+        -1096243446,
+        -1070890771,
+        -1107004927,
+        -1088206922,
+        1054203345,
+        -1069105306,
+        1062035647,
+        1080830328,
+        1048066522,
+        -1072543614,
+        -1103059590,
+        1083265642,
+        1064548889,
+        1072631513,
+        -1069246715,
+        1055182473,
+        -1059331815,
+        1071545244,
+        1009798764,
+        1059434159,
+        -1067498712,
+        1081091088,
+        -1085843782,
+        -1069474195,
+        1063098166,
+        1051848166,
+        1078830286,
+        1067999335,
+        1036421987,
+        1079749184,
+        1072486948,
+        -1093730825,
+        1085906223,
+        1061348220,
+        1073834946,
+        -1067519269,
+        1048532989,
+        1080155506,
+        -1066698726,
+        -1085582367,
+        1016775466,
+        -1066577944,
+        -1083373322,
+        1067564640,
+        1049703829,
+        -1079571296,
+        -1090963561,
+        1067522645,
+        -1091072748,
+        1079231478,
+        -1093890501,
+        -1076084420,
+        1065578318,
+        -1068856312,
+        -1101569908,
+        -1089523795,
+        1069494794,
+        1069725290,
+        1074776264,
+        -1095231977,
+        1058179959,
+        1073367955,
+        -1078244857,
+        -1073702847,
+        -1075022698,
+        -1075271215,
+        -1069267458,
+        -1086825289,
+        -1066731864,
+        -1071025688,
+        1082077859,
+        1082429939,
+        1050112109,
+        1063691972,
+        1081489636,
+        1090933134,
+        -1081093706,
+        1094048910,
+        1078780998,
+        1078527498,
+        1026628320,
+        1061771249,
+        -1071289319,
+        1087373105,
+        1075338126,
+        -1065746584,
+        -1067530568,
+        1076695791,
+        1066398903,
+        -1088128422,
+        1072958196,
+        1058019375,
+        -1092569208,
+        -1080902638,
+        1077953742,
+        1040884768,
+        1074872586,
+        -1104193742,
+        1065507077,
+        -1059208297,
+        -1064254710,
+        1091809520,
+        -1071471785,
+        -1075953556,
+        -1071223329,
+        1048283325,
+        -1079759547,
+        -1079347825,
+        -1083860240,
+        -1067157841,
+        1065862838,
+        -1123320963,
+        1085833230,
+        1058810542,
+        -1080399454,
+        1057973550,
+        -1059340256,
+        1078236818,
+        1025963881,
+        1077379307,
+        -1066948521,
+        1088364889,
+        -1062007568,
+        -1097622412,
+        -1086140905,
+        -1079987561,
+        1058713828,
+        -1072826578,
+        -1063357068,
+        -1092586228,
+        -1058807896,
+        -1070130999,
+        -1117881488,
+        1087057729,
+        1074434924,
+        -1095352741,
+        -1089086986,
+        1058786774,
+        -1072428422,
+        1079353993,
+        -1107135386,
+        -1073416379,
+        -1092751894,
+        -1093430963,
+        -1079840030,
+        -1076950135,
+        1068617955,
+        1051460916,
+        -1071745992,
+        -1067527030,
+        1036745888,
+        -1120691339,
+        1078422956,
+        -1071132970,
+        1066930847,
+        -1087035884,
+        1065796550,
+        1070953630,
+        1078401318,
+        -1082429505,
+        -1091753574,
+        1080241222,
+        -1080892654,
+        -1083511885,
+        1079698207,
+        1068654665,
+        1066894765,
+        1088795027,
+        -1068354463,
+        1069655114,
+        -1088376194,
+        1086426765,
+        -1090818467,
+        1091078368,
+        1071915059,
+        1088355241,
+        1061965037,
+        1074835118,
+        -1105308280,
+        1074661431,
+        -1074278404,
+        -1059827717,
+        -1070238644,
+        -1098788451,
+        1047150151,
+        1070701448,
+        1066819283,
+        1073863099,
+        -1090853082,
+        -1080231962,
+        1066041912,
+        -1083486887,
+        -1106007678,
+        -1084341958,
+        1049406230,
+        1080557295,
+        1068303277,
+        1072353400,
+        1065994672,
+        1063456333,
+        -1073556538,
+        1081185278,
+        -1089478082,
+        -1075903876,
+        1078854545,
+        -1096620341,
+        1083844576,
+        1073473604,
+        1061439176,
+        -1081989339,
+        1060397849,
+        -1099877985,
+        -1072967646,
+        -1068938687,
+        1058957959,
+        -1054970571,
+        -1085761998,
+        -1067584873,
+        -1071120824,
+        1079818609,
+        1076457251,
+        -1087563952,
+        -1071571962,
+        -1059169910,
+        -1104478240,
+        -1090336787,
+        1081849301,
+        1092843379,
+        -1101093087,
+        -1104217437,
+        1071447104,
+        1057796878,
+        1061103507,
+        -1063986640,
+        -1077538568,
+        1088068209,
+        1070187284,
+        1077508648,
+        -1083775704,
+        -1083679909,
+        -1077568924,
+        -1114359257,
+        -1085957769,
+        -1069162640,
+        -1071468339,
+        -1075641541,
+        1057632824,
+        1038199468,
+        1066763138,
+        -1073566380,
+        -1087865857,
+        -1068774448,
+        -1087806538,
+        1059749478,
+        1055404228,
+        1070288649,
+        1068063332,
+        1072748679,
+        1063416185,
+        -1108380299,
+        1076451046,
+        1054292371,
+        -1071550752,
+        -1067486313,
+        -1085767839,
+        1071620291,
+        -1069420737,
+        -1063403191,
+        -1074338919,
+        -1082660739,
+        -1094307655,
+        1065151346,
+        -1074757832,
+        1073357708,
+        -1090430451,
+        1085574900,
+        -1079488100,
+        -1078796358,
+        1078294718,
+        1052313860,
+        -1121506008,
+        1067830545,
+        -1090611660,
+        -1090130044,
+        -1103457600,
+        -1137621163,
+        -1085627743,
+        -1094096077,
+        -1093745405,
+        1031132217,
+        1012812612,
+        1063593163,
+        1070268947,
+        -1081328281,
+        -1088708943,
+        1053966216,
+        -1088653963,
+        1073213836,
+        -1103101908,
+        1040705240,
+        1046168374,
+        1042519117,
+        1056306706,
+        -1085964583,
+        1067216830,
+        -1074802812,
+        1086254109,
+        -1091804998,
+        1084568017,
+        -1072690387,
+        -1076588172,
+        1054975404,
+        1066827268,
+        1067014384,
+        1073855724,
+        -1071255062,
+        -1081893485,
+        1062880687,
+        -1071542829,
+        -1076181843,
+        -1089302121,
+        1050697729,
+        -1075375023,
+        -1064479518,
+        -1106912377,
+        1074669298,
+        -1090304223,
+        -1102028063,
+        -1117335928,
+        1063359913,
+        -1106027709,
+        -1080467364,
+        1019774411,
+        -1077784642,
+        -1101767673,
+        -1084364854,
+        -1101269072,
+        -1081235370,
+        -1081956121,
+        994566015,
+        -1084800251,
+        -1068111685,
+        -1071132288,
+        -1111376573,
+        1076618781,
+        1058051982,
+        -1084806633,
+        -1081678328,
+        1049687933,
+        -1071177424,
+        1054725980,
+        -1082550615,
+        -1072937929,
+        -1078291679,
+        1068799103,
+        1045553756,
+        1063009791,
+        -1082493438,
+        1033075602,
+        -1087798624,
+        1066203511,
+        1066075325,
+        -1095586691,
+        -1078816330,
+        -1095251978,
+        1074354310,
+        -1083934334,
+        -1081978583,
+        1073490536,
+        1075173297,
+        -1088935664,
+        -1084878678,
+        -1080194961,
+        1063386968,
+        1046940090,
+        1061086287,
+        1059771420,
+        -1080744035,
+        -1097445741,
+        1065967720,
+        -1071050655,
+        -1082421218,
+        1061464502,
+        1049745661,
+        1059298133,
+        -1081750217,
+        1056642022,
+        1065565295,
+        -1071123786,
+        -1092943020,
+        1061729083,
+        1077103782,
+        -1097361187,
+        -1088030988,
+        -1082953214,
+        -1080261779,
+        1068648708,
+        1068038653,
+        -1080754111,
+        -1073423795,
+        -1073466072,
+        1073124867,
+        1072164387,
+        -1075928765,
+        1056683750,
+        1056619656,
+        1049360004,
+        -1075796939,
+        -1070465335,
+        1071326937,
+        1071067055,
+        -1070208955,
+        -1070344688,
+        1083691269,
+        1083714968,
+        -1084661507,
+        -1088512516,
+        1077417051,
+        -1103592968,
+        -1087996369,
+        1060691850,
+        1061584403,
+        -1089696425,
+        -1096689055,
+        1074226586,
+        999226581,
+        -1087461885,
+        1083103447,
+        -1076435015,
+        -1076192815,
+        1076674728,
+        -1088519593,
+        1066717819,
+        1068132215,
+        -1094782288,
+        -1080590472,
+        -1078679975,
+        1053853057,
+        1075403742,
+        -1080852249,
+        -1081758889,
+        1076324339,
+        1050605278,
+        1066500353,
+        -1099518553,
+        1048264037,
+        -1084826643,
+        -1117053290,
+        1032251776,
+        1051043181,
+        -1105778025,
+    }
+}
diff --git a/icu4c/source/test/testdata/Burmese_graphclust_model5_heavy_Test.txt b/icu4c/source/test/testdata/Burmese_graphclust_model5_heavy_Test.txt
new file mode 100644 (file)
index 0000000..a559cd7
--- /dev/null
@@ -0,0 +1,8 @@
+# Copyright (C) 2021 and later: Unicode, Inc. and others.
+# License & terms of use: http://www.unicode.org/copyright.html
+Model: Burmese_graphclust_model5_heavy
+Embedding:     grapheme_clusters_tf
+Input: အပြည်ပြည်ဆိုင်ရာလူ့အခွင့်အရေးကြေညာစာတမ်း
+Output:        |အပြည်|ပြည်|ဆိုင်ရာ|လူ့|အခွင့်အရေး|ကြေညာစာတမ်း|
+Input: မျိုးရိုးဂုဏ်သိက္ခာနှင့်တကွ
+Output:        |မျိုး|ရိုး|ဂုဏ်|သိက္ခာ|နှင့်|တ|ကွ|
diff --git a/icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy.txt b/icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy.txt
new file mode 100644 (file)
index 0000000..5e4ee8e
--- /dev/null
@@ -0,0 +1,6009 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+Thai_codepoints_exclusive_model5_heavy:table(nofallback){
+    model{"Thai_codepoints_exclusive_model5_heavy"}
+    type{"codepoints"}
+    embeddings:int{20}
+    hunits:int{15}
+    dict{
+        "ก",
+        "ข",
+        "ฃ",
+        "ค",
+        "ฅ",
+        "ฆ",
+        "ง",
+        "จ",
+        "ฉ",
+        "ช",
+        "ซ",
+        "ฌ",
+        "ญ",
+        "ฎ",
+        "ฏ",
+        "ฐ",
+        "ฑ",
+        "ฒ",
+        "ณ",
+        "ด",
+        "ต",
+        "ถ",
+        "ท",
+        "ธ",
+        "น",
+        "บ",
+        "ป",
+        "ผ",
+        "ฝ",
+        "พ",
+        "ฟ",
+        "ภ",
+        "ม",
+        "ย",
+        "ร",
+        "ฤ",
+        "ล",
+        "ฦ",
+        "ว",
+        "ศ",
+        "ษ",
+        "ส",
+        "ห",
+        "ฬ",
+        "อ",
+        "ฮ",
+        "ฯ",
+        "ะ",
+        "ั",
+        "า",
+        "ำ",
+        "ิ",
+        "ี",
+        "ึ",
+        "ื",
+        "ุ",
+        "ู",
+        "ฺ",
+        "เ",
+        "แ",
+        "โ",
+        "ใ",
+        "ไ",
+        "ๅ",
+        "ๆ",
+        "็",
+        "่",
+        "้",
+        "๊",
+        "๋",
+        "์",
+        "ํ",
+        "๎",
+    }
+    data:intvector{
+        -1112142886,
+        1022015995,
+        -1125173248,
+        -1100799408,
+        1023132438,
+        1050484808,
+        1026205999,
+        1032710067,
+        1046378394,
+        1020985791,
+        1036159587,
+        -1136782966,
+        -1099992628,
+        -1114608928,
+        -1131786450,
+        -1123270559,
+        1039102136,
+        -1144039147,
+        1019520363,
+        1041361138,
+        -1114142348,
+        1053217804,
+        1030216786,
+        -1082938607,
+        -1084500897,
+        1032756706,
+        1064206118,
+        1039151957,
+        -1130631323,
+        1051035319,
+        1034731880,
+        1032110134,
+        -1137977531,
+        1044988933,
+        -1140733360,
+        -1122779265,
+        1030946466,
+        -1127687766,
+        -1139363102,
+        -1140108208,
+        -1128283161,
+        1018376486,
+        1006332800,
+        -1125087891,
+        981337728,
+        -1131553280,
+        -1119960025,
+        1001190936,
+        -1122468115,
+        1011213568,
+        1000366720,
+        -1126342208,
+        -1122565971,
+        -1149961520,
+        -1161720416,
+        1025239545,
+        1028108593,
+        1027989965,
+        1012367732,
+        -1134732492,
+        -1119317919,
+        1047083276,
+        1032333784,
+        -1097422528,
+        -1098579845,
+        -1094249518,
+        1072435681,
+        1038815900,
+        -1098761610,
+        1048719446,
+        1057011082,
+        1025825300,
+        1033498510,
+        -1100001246,
+        -1138092260,
+        1024004387,
+        1005619315,
+        -1089740171,
+        -1091731239,
+        -1112538356,
+        -1119921286,
+        1006826880,
+        -1120119958,
+        1007617676,
+        1021615770,
+        1017793730,
+        -1122502208,
+        -1132701772,
+        -1120923027,
+        1021989582,
+        -1126083840,
+        -1128161913,
+        1025794513,
+        1023805127,
+        -1165613472,
+        1007917556,
+        1024604055,
+        1023859761,
+        -1135187224,
+        -1121362029,
+        1053450272,
+        1039147779,
+        1031611782,
+        1046032625,
+        1035485208,
+        1066180234,
+        1055203351,
+        1060722108,
+        1067398205,
+        1067248418,
+        1060338368,
+        1054951594,
+        1053672679,
+        1060245644,
+        -1089463057,
+        1042720369,
+        -1098665812,
+        991643040,
+        1052434216,
+        1057303437,
+        1045577562,
+        -1110305368,
+        -1127665672,
+        -1117972763,
+        1028429541,
+        1050608468,
+        1042282064,
+        1001667408,
+        1062603745,
+        -1111946928,
+        1007493638,
+        994038276,
+        1060222968,
+        1045588839,
+        1015730978,
+        1029298010,
+        1008413085,
+        -1087007400,
+        -1076414892,
+        1040695695,
+        -1098111929,
+        1048011403,
+        -1127013559,
+        1010093040,
+        -1096417427,
+        1009117872,
+        1058602660,
+        1046393001,
+        1036576320,
+        1042714411,
+        1067008565,
+        985100184,
+        1027297703,
+        -1086931026,
+        1034391360,
+        -1103684384,
+        1047329601,
+        -1111618698,
+        -1100391220,
+        1078105105,
+        -1085587846,
+        993694838,
+        1058324137,
+        1032681814,
+        1042935163,
+        1063074685,
+        1063141103,
+        1070855881,
+        -1094134873,
+        -1103805514,
+        1063166420,
+        1067476872,
+        1066647305,
+        -1096818071,
+        -1117425502,
+        -1106371417,
+        -1098917838,
+        1058358246,
+        1046936337,
+        -1098750062,
+        -1109595326,
+        1055323791,
+        1043746546,
+        -1114915950,
+        -1136085366,
+        -1125086548,
+        1034585216,
+        -1101874078,
+        -1124216465,
+        1049108823,
+        1030164839,
+        1040486633,
+        1035743102,
+        -1097326976,
+        -1111017020,
+        -1115467981,
+        -1168197240,
+        -1112996497,
+        1060090255,
+        -1127638945,
+        -1101576250,
+        -1102361840,
+        -1124440148,
+        -1093806600,
+        -1096495350,
+        1050133774,
+        1050888557,
+        1047331694,
+        -1082145670,
+        -1124306310,
+        1068189358,
+        -1105824738,
+        1033999031,
+        -1094699242,
+        1040291690,
+        -1096048849,
+        1049336560,
+        -1112766686,
+        -1106792774,
+        1056462717,
+        -1076324112,
+        -1079313428,
+        1086831672,
+        1064009469,
+        1058107462,
+        1060449591,
+        1056786761,
+        -1083662356,
+        -1084614668,
+        -1089832108,
+        1062515103,
+        1075761788,
+        1073179411,
+        1050059337,
+        -1073197030,
+        -1072731868,
+        -1076240289,
+        1063031569,
+        1047677013,
+        -1081173102,
+        1067561167,
+        1045872868,
+        -1112308279,
+        -1098168946,
+        -1098328137,
+        -1099421055,
+        1046157095,
+        -1083736549,
+        1049972032,
+        1047009250,
+        -1118211699,
+        1028385208,
+        1060697477,
+        1032941944,
+        -1096597404,
+        1042221963,
+        -1101318484,
+        -1102143343,
+        -1137422076,
+        1049932231,
+        1064408586,
+        -1118537258,
+        1030282246,
+        -1109387106,
+        1021529631,
+        -1108379587,
+        -1112963520,
+        -1102719742,
+        -1097036827,
+        1050027534,
+        -1099956183,
+        -1169663760,
+        -1093334446,
+        1011158517,
+        -1097490100,
+        1049127366,
+        -1112947286,
+        -1079023204,
+        1052799915,
+        -1106276452,
+        1059198605,
+        -1127910006,
+        -1133714057,
+        1059739926,
+        1015687803,
+        -1106074871,
+        1031187596,
+        -1092299807,
+        1039173944,
+        1036688610,
+        -1113810959,
+        1052937595,
+        -1109007573,
+        1046000128,
+        1032229353,
+        -1150896180,
+        1005846394,
+        -1106396410,
+        1050956673,
+        1024130450,
+        1046659963,
+        -1096387337,
+        1028377889,
+        1048428578,
+        -1103208885,
+        1056381111,
+        1022698025,
+        -1087977657,
+        -1063114902,
+        -1102519833,
+        1040815297,
+        -1113821673,
+        -1116410140,
+        1049706791,
+        1034727879,
+        -1109436885,
+        -1113715132,
+        1070543343,
+        -1100691233,
+        -1104698221,
+        -1089349215,
+        1062448120,
+        -1107038086,
+        1081735807,
+        -1101037024,
+        1058396081,
+        1051068175,
+        1057830431,
+        1066704444,
+        1058316471,
+        -1064766866,
+        1055332076,
+        -1077262660,
+        -1071393093,
+        -1082359043,
+        1049350879,
+        1056152663,
+        1068117957,
+        1074315373,
+        1078355364,
+        -1077924161,
+        -1113396736,
+        1015949809,
+        -1084823421,
+        1031517475,
+        -1089817230,
+        -1133045992,
+        -1082593211,
+        1064626576,
+        1061099477,
+        1072093629,
+        1063524548,
+        1056764674,
+        1018307844,
+        -1078829891,
+        1059204563,
+        -1062632876,
+        1026839174,
+        1054021142,
+        1060397676,
+        1048365992,
+        -1129808592,
+        -1113133888,
+        1076508122,
+        -1108599130,
+        -1107486940,
+        -1090253452,
+        1053535181,
+        1042672601,
+        1029961747,
+        -1106719800,
+        -1108361723,
+        -1092918873,
+        1050729703,
+        1026397855,
+        1061916068,
+        1045446195,
+        -1098033376,
+        1067152172,
+        1046255054,
+        1028309489,
+        996220676,
+        1008417548,
+        -1134436375,
+        1009526264,
+        -1096216927,
+        1020043295,
+        1049988494,
+        1076038547,
+        -1098204869,
+        1031071426,
+        -1132982748,
+        1041392893,
+        1025589103,
+        -1117858950,
+        1007457380,
+        1043084330,
+        1045764805,
+        1023101121,
+        1031601696,
+        1036206282,
+        1038824655,
+        -1128251993,
+        -1092046290,
+        -1110727526,
+        -1107149911,
+        1053450757,
+        -1094550681,
+        1034477318,
+        1050480069,
+        1075548692,
+        982712072,
+        1044227159,
+        -1086832604,
+        -1117519365,
+        1029302186,
+        -1114806777,
+        1025222987,
+        1020221606,
+        1054665285,
+        1032564337,
+        1037981030,
+        1037728198,
+        -1105288195,
+        -1123438924,
+        1049762423,
+        1040101862,
+        -1117416321,
+        1026661546,
+        1013157053,
+        1026215998,
+        1040865932,
+        1049264606,
+        -1125505568,
+        -1078136163,
+        1036097545,
+        1031076305,
+        -1091440737,
+        1056540945,
+        982065336,
+        1032419740,
+        1046623378,
+        1026133441,
+        -1113794757,
+        -1109465378,
+        -1102224728,
+        1037496815,
+        1046023761,
+        -1084559173,
+        1016827292,
+        -1112048036,
+        1031883279,
+        1030074689,
+        -1096001197,
+        -1092406715,
+        1025211910,
+        1023865732,
+        -1095428734,
+        -1105089966,
+        -1111812516,
+        1033954734,
+        1055944100,
+        -1130926620,
+        -1082801756,
+        -1085938523,
+        -1103658415,
+        -1105868257,
+        991788760,
+        1049289519,
+        -1117061338,
+        -1112533965,
+        1046292013,
+        -1122601016,
+        -1102695003,
+        1043325012,
+        -1136293669,
+        -1135618564,
+        1044087704,
+        1042142930,
+        1047878450,
+        1037695728,
+        991555604,
+        1015721543,
+        1040947455,
+        1016622332,
+        1044393689,
+        1039541183,
+        1020912721,
+        1041041701,
+        -1079986399,
+        996483758,
+        1015397180,
+        1075933341,
+        1027690631,
+        -1107625806,
+        1023040890,
+        990648860,
+        -1107217956,
+        -1106109484,
+        1042203660,
+        -1098735155,
+        -1139303445,
+        1002398272,
+        1046542239,
+        -1151191140,
+        -1087802245,
+        1035637639,
+        1053123212,
+        1037749066,
+        1029601324,
+        -1129172868,
+        1011008383,
+        1043665745,
+        1029571770,
+        -1111617096,
+        -1113451765,
+        1036683638,
+        1062038436,
+        -1080062124,
+        1034909239,
+        -1113107468,
+        -1114093412,
+        1038130918,
+        1032374956,
+        -1123850759,
+        1050654558,
+        1043410937,
+        1069499289,
+        1032487622,
+        -1109588636,
+        1043552731,
+        1045453626,
+        1024279868,
+        -1105847845,
+        -1089181841,
+        -1116255962,
+        -1101558140,
+        1041412961,
+        1032867215,
+        1043781178,
+        -1086371588,
+        1036848380,
+        -1123310774,
+        -1116149174,
+        -1095023843,
+        1032608464,
+        1062808440,
+        1044841121,
+        -1073366711,
+        1046058438,
+        -1112445192,
+        1053592138,
+        -1123670785,
+        -1087748983,
+        -1089549859,
+        -1104113333,
+        -1095571224,
+        1062921561,
+        -1097459519,
+        -1103412706,
+        -1098924635,
+        -1111240610,
+        1049147653,
+        -1089997365,
+        1025167041,
+        -1098897195,
+        1057310525,
+        1047772542,
+        -1072410265,
+        1069306827,
+        -1116996462,
+        1054018744,
+        1043958767,
+        -1132260547,
+        -1095353842,
+        -1106192743,
+        -1096047203,
+        -1104187117,
+        -1095326068,
+        1036434121,
+        -1099305704,
+        1031988361,
+        1016161599,
+        -1104819156,
+        -1097489565,
+        -1098385753,
+        968425106,
+        1055833249,
+        1051809991,
+        1044933577,
+        1056960383,
+        1039430864,
+        1018653589,
+        -1091685824,
+        -1106210796,
+        -1111687961,
+        -1147407865,
+        1059541007,
+        988984874,
+        1055026064,
+        1051128238,
+        1044204721,
+        -1117126028,
+        -1081307207,
+        -1112332414,
+        1049913714,
+        1042672021,
+        -1080834611,
+        1045458848,
+        -1096407894,
+        1051945347,
+        -1114476288,
+        1057350775,
+        -1100992246,
+        -1121192423,
+        1048975306,
+        1045547342,
+        1049265110,
+        -1084480057,
+        1036745924,
+        -1090054093,
+        1058655949,
+        1038881452,
+        -1106118085,
+        1033293246,
+        -1117933067,
+        1050716794,
+        -1081118715,
+        -1101672007,
+        1030539599,
+        -1097731291,
+        1042375023,
+        -1107020970,
+        -1114993674,
+        -1095830391,
+        -1099527256,
+        -1123518057,
+        1012010606,
+        -1122457730,
+        -1095746157,
+        -1122154772,
+        -1105548053,
+        1035186166,
+        1044157338,
+        -1105563005,
+        -1111009280,
+        -1149980260,
+        -1137136897,
+        1050163870,
+        -1103243771,
+        1063065214,
+        -1123420480,
+        -1107738468,
+        1040775585,
+        996723658,
+        -1119711139,
+        1043946628,
+        1011039588,
+        1008098413,
+        1048765167,
+        1040632503,
+        1030360491,
+        -1151705195,
+        1012436928,
+        1026781769,
+        -1105341064,
+        -1121741584,
+        -1078453765,
+        -1134705050,
+        -1107279375,
+        -1148308189,
+        -1143660328,
+        -1129112269,
+        1022253427,
+        1028153652,
+        1005081690,
+        1048817730,
+        -1117724615,
+        -1123310453,
+        1003667636,
+        1043097228,
+        1018047333,
+        1023538839,
+        1044330352,
+        -1120010905,
+        1016496220,
+        -1121034623,
+        -1096494176,
+        -1112263297,
+        -1107664001,
+        -1122101147,
+        1018932563,
+        -1097747548,
+        1034600934,
+        1024335727,
+        1024378335,
+        -1089997467,
+        1047290487,
+        1040732808,
+        -1111862285,
+        996269492,
+        1062131365,
+        1051163373,
+        -1097245131,
+        1026476065,
+        -1097950128,
+        -1181491648,
+        1057319639,
+        1054717902,
+        1068243850,
+        1070458036,
+        1040614968,
+        1057712619,
+        1041891477,
+        996873130,
+        -1085678190,
+        1037051098,
+        -1084390041,
+        1071189356,
+        1051389434,
+        1059945562,
+        1029713604,
+        1035379758,
+        -1111776196,
+        -1110151337,
+        -1112944775,
+        -1115194531,
+        -1145688998,
+        1035482170,
+        1044183193,
+        1017845127,
+        1042463653,
+        1048639746,
+        1042416746,
+        1017397020,
+        1038096860,
+        -1148144850,
+        1075454425,
+        1004341604,
+        1028735898,
+        -1126402637,
+        1011163096,
+        1019915794,
+        -1119811465,
+        1002262144,
+        -1123458796,
+        -1129996781,
+        -1122013011,
+        1003142064,
+        1026657395,
+        -1120710166,
+        1027121863,
+        -1139361140,
+        -1126353011,
+        1025753249,
+        1025311809,
+        -1132116858,
+        -1142567888,
+        -1148347472,
+        -1123523318,
+        1035702878,
+        -1114058388,
+        -1140927010,
+        -1106280552,
+        1033371368,
+        -1095717737,
+        -1123671827,
+        -1124274879,
+        -1129140638,
+        1028502112,
+        1022938241,
+        -1128542878,
+        1010613179,
+        1060725547,
+        1023232113,
+        1010423983,
+        1026265552,
+        -1113100489,
+        -1134564466,
+        -1127300113,
+        -1132009810,
+        1049596084,
+        1034080175,
+        1058400369,
+        -1127163186,
+        -1099431986,
+        1047119197,
+        -1105068035,
+        -1123983835,
+        -1101799513,
+        -1112466792,
+        1043275617,
+        1044177748,
+        -1098165892,
+        -1098412394,
+        1012215367,
+        1007930070,
+        1048940544,
+        1036086205,
+        -1123995260,
+        1042212524,
+        1048907853,
+        -1103152485,
+        1089370340,
+        1026699487,
+        1055671923,
+        -1089787522,
+        -1093440024,
+        -1087569724,
+        1025239388,
+        1078473007,
+        -1090450901,
+        -1106755259,
+        -1102699953,
+        1063832016,
+        1063754515,
+        1038524079,
+        -1078766962,
+        1068697821,
+        1061026109,
+        -1092588602,
+        1033163390,
+        1022050802,
+        -1115019936,
+        -1098343325,
+        1058696575,
+        1041439457,
+        -1083501436,
+        -1117723542,
+        1033850029,
+        1040956104,
+        1035130155,
+        -1098581350,
+        -1100090268,
+        -1098120736,
+        -1109851470,
+        -1105608959,
+        1033608343,
+        1032647664,
+        -1128627588,
+        -1086492775,
+        1071666056,
+        1055633947,
+        -1100458192,
+        -1067731643,
+        -1095821801,
+        1007586139,
+        -1104777445,
+        1031160515,
+        1060668869,
+        -1129872890,
+        1065642984,
+        1050032203,
+        -1112900738,
+        -1124549289,
+        -1123217122,
+        -1123719173,
+        1033139985,
+        1023480135,
+        1027831889,
+        1068437169,
+        -1090152050,
+        -1095912478,
+        1069844952,
+        1076964924,
+        1069234215,
+        1053153550,
+        1062096591,
+        1059064214,
+        -1071739536,
+        -1114364263,
+        -1081590277,
+        1085216321,
+        -1116255690,
+        -1091824161,
+        1058499361,
+        1025188955,
+        1063156907,
+        1047391398,
+        1047389155,
+        -1111613033,
+        -1138623972,
+        -1189061440,
+        1024283229,
+        1014779455,
+        1058413314,
+        1024668701,
+        1065365917,
+        -1096963820,
+        1040719493,
+        1008394816,
+        941291776,
+        -1102163784,
+        -1113586441,
+        -1126765560,
+        -1114872148,
+        1032724239,
+        -1123949754,
+        -1120342081,
+        -1114626181,
+        -1084887221,
+        1036741376,
+        1007255306,
+        1066767093,
+        -1091640560,
+        1048879832,
+        1068679971,
+        1051008719,
+        1056054221,
+        -1122391018,
+        1083316140,
+        1067427715,
+        1049501912,
+        -1088618965,
+        -1107706735,
+        -1083905156,
+        1045284725,
+        1061369758,
+        1059119792,
+        1064570427,
+        -1097926866,
+        -1073674680,
+        1067660927,
+        1079107292,
+        -1066140356,
+        1085839841,
+        -1074316543,
+        -1089217614,
+        1075872248,
+        1054492330,
+        -1111432007,
+        1070975506,
+        -1075403801,
+        1064495663,
+        1060419457,
+        -1076545200,
+        1060874285,
+        1048707575,
+        1029544818,
+        1057267184,
+        1037782530,
+        -1086364447,
+        -1053104307,
+        -1127106244,
+        1084060317,
+        1022439476,
+        989609152,
+        1017066198,
+        -1125145024,
+        -1127703760,
+        -1094469174,
+        -1112926140,
+        1048678792,
+        -1127970346,
+        -1115109395,
+        1063853578,
+        -1092313358,
+        -1104283752,
+        -1143055518,
+        -1097246267,
+        -1106961859,
+        -1120988658,
+        -1090123167,
+        1033044539,
+        1037713133,
+        -1101324370,
+        -1108799458,
+        -1112827804,
+        -1118816563,
+        1064140640,
+        -1106828742,
+        -1082471461,
+        1042876664,
+        1039561414,
+        1092654239,
+        1061889611,
+        -1107273254,
+        1018112462,
+        1036017542,
+        -1053121651,
+        1034501448,
+        -1150367220,
+        -1083779609,
+        1042197168,
+        1032940413,
+        1016256333,
+        -1087799928,
+        1034636268,
+        -1089757166,
+        -1118686450,
+        -1077897279,
+        -1081460274,
+        -1130388019,
+        -1112999843,
+        1062029009,
+        1061616629,
+        1022167120,
+        -1122548007,
+        -1111441711,
+        -1101611621,
+        1032173396,
+        -1088586271,
+        -1114868480,
+        -1093738795,
+        1056345318,
+        1038862738,
+        1042289595,
+        -1118250294,
+        -1103467253,
+        1025694397,
+        1029797752,
+        -1098202518,
+        1067540857,
+        1034586028,
+        -1108401285,
+        1051037688,
+        -1153727288,
+        1048156866,
+        1051117949,
+        -1125389590,
+        -1110370626,
+        1039080686,
+        -1086814014,
+        -1104973801,
+        1030890222,
+        1038791401,
+        -1096879288,
+        954808192,
+        -1091807427,
+        1047357388,
+        -1101502900,
+        -1055621002,
+        -1093887384,
+        -1128269778,
+        1061258439,
+        1061504127,
+        -1106249573,
+        -1098893537,
+        1015050648,
+        -1097688475,
+        1067006435,
+        -1098482597,
+        -1081758707,
+        1063982329,
+        1054205060,
+        -1100893539,
+        -1071578205,
+        1055905306,
+        -1079709095,
+        -1076194686,
+        1044879912,
+        -1074595880,
+        1042929878,
+        -1099658044,
+        1061211727,
+        1056388658,
+        -1152657679,
+        -1120561002,
+        -1098227599,
+        -1098272650,
+        -1078323290,
+        1032971226,
+        -1089677392,
+        -1105506372,
+        -1121781756,
+        1047391948,
+        -1055240080,
+        1003412848,
+        1035833832,
+        1054314870,
+        -1082257396,
+        -1067718493,
+        -1103818090,
+        -1112627982,
+        1080186471,
+        1062439556,
+        1026146332,
+        1049093237,
+        1088204726,
+        -1092341663,
+        -1098456055,
+        -1148594911,
+        -1078666696,
+        -1098653957,
+        -1098586798,
+        -1105733192,
+        -1046097944,
+        -1108378088,
+        -1095390121,
+        1057204768,
+        -1113330806,
+        -1074605496,
+        -1101093867,
+        1043781781,
+        1067108097,
+        1062508503,
+        -1064505704,
+        -1087170847,
+        1096964638,
+        -1088371415,
+        -1098435709,
+        1033541419,
+        -1099805808,
+        -1107483636,
+        1049158481,
+        -1116577042,
+        -1104928424,
+        -1116326696,
+        -1098239444,
+        1042477236,
+        -1148790480,
+        -1098755778,
+        -1094992264,
+        1040057688,
+        1053130357,
+        1050971016,
+        -1106098134,
+        -1083876968,
+        1031900248,
+        -1103520174,
+        1038711608,
+        -1100924600,
+        -1108904850,
+        1078713854,
+        1050444655,
+        1071333022,
+        -1085112574,
+        1018596324,
+        1030349732,
+        -1101655842,
+        -1074078890,
+        -1113738218,
+        1044695671,
+        -1127891352,
+        1049283376,
+        1040311657,
+        1015275615,
+        1044904931,
+        -1137142484,
+        -1087703920,
+        -1079022386,
+        1065559052,
+        1085144133,
+        -1060952690,
+        -1067294846,
+        -1072207705,
+        1074947839,
+        -1071728660,
+        1081496020,
+        1083501184,
+        -1071725027,
+        1073209959,
+        1087116105,
+        -1073583691,
+        1082654230,
+        1077871273,
+        -1083433007,
+        -1071002250,
+        1097555253,
+        1067904877,
+        -1073497745,
+        1084156302,
+        1066568511,
+        -1124724697,
+        -1088995175,
+        1009941114,
+        1040575721,
+        -1107944044,
+        -1112731713,
+        1041625836,
+        -1135683889,
+        1069637422,
+        1016421618,
+        -1111718551,
+        -1106212688,
+        -1088301223,
+        -1098080176,
+        1044130421,
+        1043258136,
+        -1111375787,
+        -1060145853,
+        1076085295,
+        1067508619,
+        -1111691368,
+        -1064587125,
+        -1117434350,
+        1046349103,
+        -1116825988,
+        -1116314431,
+        -1131050203,
+        -1173325504,
+        1063826676,
+        1015706191,
+        -1096722756,
+        -1102973541,
+        -1097605564,
+        -1122775641,
+        -1141874679,
+        -1138787618,
+        -1107110775,
+        -1081249742,
+        1092999827,
+        1069496896,
+        -1092956545,
+        -1094393010,
+        -1108801143,
+        1057732655,
+        -1112727767,
+        -1101766945,
+        1046525526,
+        -1119775326,
+        1062537567,
+        1014696856,
+        -1107982092,
+        -1109346028,
+        -1078220807,
+        -1127889738,
+        1048583950,
+        1046974108,
+        -1102223436,
+        -1076971169,
+        1067111829,
+        1077021861,
+        -1106768011,
+        -1085716262,
+        1040676378,
+        1090287988,
+        1034310097,
+        -1080353111,
+        -1105105728,
+        1070827244,
+        1074698027,
+        -1115826258,
+        1020482726,
+        -1114869375,
+        -1080039761,
+        1049420800,
+        -1087453501,
+        -1098305355,
+        -1103533518,
+        -1074628380,
+        1079432278,
+        1084218902,
+        -1109672758,
+        -1094337205,
+        -1126413192,
+        1076177944,
+        1056044669,
+        -1079240771,
+        1047862569,
+        1053744602,
+        1064575772,
+        1021461806,
+        -1094128634,
+        1025164030,
+        -1079218891,
+        1055657242,
+        -1101369629,
+        -1093353650,
+        -1111705638,
+        -1128145472,
+        -1137250176,
+        1019937326,
+        1000111744,
+        -1143076456,
+        -1131195756,
+        -1139991528,
+        1024378001,
+        -1134660264,
+        -1141602096,
+        -1135507416,
+        -1126676013,
+        -1119829805,
+        -1169554240,
+        1024450801,
+        1023621303,
+        1022883066,
+        -1128009075,
+        -1170426240,
+        -1132665292,
+        -1112533934,
+        -1086527521,
+        1047526444,
+        -1109108328,
+        -1088626627,
+        1044716888,
+        1042539478,
+        1048259999,
+        1048879571,
+        -1103962017,
+        1047312143,
+        1047412994,
+        -1092571556,
+        1073710677,
+        -1092457413,
+        -1061185604,
+        1110986393,
+        -1153033472,
+        1071919540,
+        1057757671,
+        1062702233,
+        -1092269532,
+        -1113817593,
+        1069300936,
+        1037085384,
+        -1068603892,
+        -1091011058,
+        1071304330,
+        -1109541750,
+        -1082016029,
+        -1103324610,
+        -1114364756,
+        1068343444,
+        -1100263541,
+        -1099988897,
+        1074943545,
+        1018757866,
+        1045203594,
+        -1106521275,
+        1022305126,
+        1012325600,
+        -1102220535,
+        -1101855042,
+        991739120,
+        1051674020,
+        -1099547477,
+        -1102256887,
+        -1128380454,
+        1053646696,
+        1029659006,
+        -1100287537,
+        -1101680491,
+        1036475144,
+        1038245264,
+        1054412075,
+        1036761096,
+        -1105931674,
+        -1115756566,
+        1020637679,
+        -1096798452,
+        -1124183847,
+        -1113699971,
+        -1101947741,
+        1024460414,
+        1046074389,
+        1031982101,
+        -1106329366,
+        -1123877593,
+        -1110687236,
+        1015550489,
+        -1129002228,
+        -1102774656,
+        1029337312,
+        1038358661,
+        1048682931,
+        1083596602,
+        -1100180031,
+        -1097624759,
+        1023093199,
+        -1103346971,
+        1016286259,
+        -1081755598,
+        -1065040396,
+        -1103175742,
+        1074328674,
+        1064300945,
+        -1076613881,
+        1066638055,
+        -1098024316,
+        1058997433,
+        -1072700177,
+        -1090886027,
+        -1078109023,
+        -1104578605,
+        1039109280,
+        -1088791302,
+        -1116697248,
+        1083141792,
+        1065554509,
+        1061833734,
+        -1089097794,
+        -1111745699,
+        -1076260754,
+        1071466765,
+        1032168637,
+        1050078938,
+        -1076401012,
+        -1093235609,
+        1054720234,
+        1054022435,
+        -1079052506,
+        -1077406095,
+        -1110979491,
+        -1108827709,
+        -1088300442,
+        1066974396,
+        -1106856888,
+        1066103170,
+        -1080849546,
+        -1091860549,
+        1074276619,
+        1060120849,
+        -1093159275,
+        1058443125,
+        1052812953,
+        -1087312837,
+        -1123018315,
+        -1074833496,
+        1050835132,
+        -1056049490,
+        1069794163,
+        1057896888,
+        -1085721579,
+        -1096480758,
+        1063457785,
+        1060181960,
+        -1107262610,
+        -1108171862,
+        -1100751638,
+        1079422871,
+        -1121881616,
+        1015932802,
+        1024437273,
+        1023649273,
+        -1138251956,
+        -1124369094,
+        -1138196520,
+        1024804169,
+        -1124672006,
+        1001400472,
+        1023470897,
+        -1129768365,
+        -1128296998,
+        -1155497312,
+        1020973314,
+        -1122695827,
+        1004203624,
+        1011138304,
+        992872448,
+        1025950385,
+        -1124387808,
+        -1121101219,
+        -1134101800,
+        1027086385,
+        -1121641760,
+        -1127134041,
+        -1121530496,
+        1015289338,
+        -1138171148,
+        -1150036272,
+        1019474842,
+        -1121223920,
+        -1131136268,
+        -1119516208,
+        1011518872,
+        -1128380864,
+        -1138555596,
+        1027287959,
+        -1138775832,
+        -1120532845,
+        -1076776426,
+        -1068753966,
+        1026851696,
+        1065114679,
+        -1080209479,
+        1073303520,
+        -1078607455,
+        -1063734957,
+        1068468651,
+        1061997649,
+        1040377631,
+        1049338907,
+        -1065173173,
+        1100487291,
+        1049546709,
+        -1081642857,
+        1096760986,
+        -1058217861,
+        -1051548473,
+        1062059416,
+        -1086136706,
+        1040518680,
+        -1085777355,
+        1048517798,
+        -1093253849,
+        -1060007016,
+        -1078404789,
+        1032403177,
+        -1129424934,
+        -1072873590,
+        -1089332334,
+        1041319054,
+        -1080345393,
+        -1105101776,
+        -1081734509,
+        1089543724,
+        1021458090,
+        1050480135,
+        1033433398,
+        1077335149,
+        1091282827,
+        1076395028,
+        1051979199,
+        1066791605,
+        1082620490,
+        -1097001291,
+        -1076237500,
+        1059574381,
+        -1081506209,
+        1074376860,
+        -1092724497,
+        1040290837,
+        -1100521243,
+        1039059487,
+        1038136838,
+        1022379574,
+        1054658544,
+        1038009073,
+        -1142504948,
+        -1109625903,
+        1048893970,
+        -1096453981,
+        1068696444,
+        -1097253680,
+        1040145799,
+        -1056876617,
+        1043214598,
+        -1088736510,
+        -1122278838,
+        -1076133629,
+        1055886200,
+        1045809780,
+        -1077394358,
+        -1111363940,
+        1000133972,
+        -1096634430,
+        -1113128519,
+        -1160693530,
+        1033688319,
+        1067677940,
+        1059590666,
+        1038824812,
+        1064071232,
+        -1097426716,
+        1063003534,
+        1076407941,
+        1053592567,
+        -1106751777,
+        1010786314,
+        -1077799804,
+        1055164930,
+        -1115283956,
+        1058733906,
+        1047232938,
+        -1114179656,
+        -1077565612,
+        -1090507647,
+        1048809787,
+        -1105733237,
+        -1056002724,
+        -1074700939,
+        -1069086205,
+        -1120465447,
+        -1085016100,
+        -1066471054,
+        -1119333921,
+        -1075266836,
+        1036083725,
+        1059121875,
+        1090621000,
+        1070569148,
+        -1121371819,
+        1037912940,
+        -1115350445,
+        -1091334697,
+        -1104314364,
+        -1099629801,
+        1043010753,
+        971378272,
+        1037393575,
+        -1099178262,
+        -1085307143,
+        -1098740425,
+        -1114024627,
+        -1093408855,
+        1053903662,
+        1045881997,
+        1050547290,
+        1051150264,
+        1087093160,
+        -1092317649,
+        -1114780283,
+        -1109942498,
+        1063883153,
+        -1093981679,
+        1061453742,
+        -1119215386,
+        1033617209,
+        -1122702860,
+        -1077901206,
+        1078907062,
+        -1091533790,
+        1082462597,
+        -1119237959,
+        1067954962,
+        1059521332,
+        -1089167110,
+        -1100254913,
+        1027895023,
+        1059327438,
+        1069822859,
+        1054593222,
+        1073517215,
+        -1097665655,
+        1027578567,
+        -1104444091,
+        1054046107,
+        -1098873808,
+        1033663584,
+        1052243907,
+        1053724008,
+        1042615881,
+        -1102134389,
+        -1061805344,
+        -1090111569,
+        -1090059625,
+        -1071574022,
+        1048895109,
+        1098860204,
+        1026038242,
+        -1107378525,
+        1046704944,
+        1059737890,
+        -1094719456,
+        -1094714899,
+        990635502,
+        -1148308832,
+        -1084709027,
+        -1148318652,
+        -1093689192,
+        -1072322695,
+        -1073689554,
+        -1077038663,
+        -1153407730,
+        -1077374934,
+        1072484038,
+        1015979614,
+        1067497822,
+        977676612,
+        1030661302,
+        -1072754113,
+        -1114653553,
+        1047724224,
+        1079709926,
+        -1059472659,
+        1085157999,
+        -1102656622,
+        -1109219002,
+        -1098622132,
+        -1084284216,
+        -1093090461,
+        -1073795745,
+        -1070941955,
+        1058202501,
+        -1101511318,
+        1025725599,
+        -1097732654,
+        -1090049044,
+        -1098329293,
+        1045850289,
+        -1083353312,
+        1054784523,
+        -1090395494,
+        -1086629132,
+        -1096498434,
+        -1078439126,
+        -1108646662,
+        -1097536532,
+        1061418855,
+        -1088869168,
+        1052494574,
+        1050905542,
+        1064926876,
+        1066027486,
+        1058505378,
+        -1095240532,
+        1076675252,
+        -1098516335,
+        -1101534988,
+        -1089472515,
+        -1092425426,
+        1052374562,
+        1059051189,
+        1040343600,
+        1050100637,
+        -1127812846,
+        -1126641701,
+        1044779806,
+        1033012230,
+        -1094455025,
+        1073758049,
+        -1108511542,
+        1046297209,
+        -1077671683,
+        1061967884,
+        -1094073263,
+        1069708962,
+        -1099794981,
+        1015307400,
+        -1070713193,
+        1060278500,
+        1054640671,
+        1074365598,
+        1056973122,
+        -1087137620,
+        1061218125,
+        -1112099491,
+        -1090074255,
+        1042323645,
+        1063044205,
+        -1079729458,
+        1068166951,
+        -1082722785,
+        1037286701,
+        -1095469714,
+        -1089085075,
+        -1092322099,
+        -1135905427,
+        -1121133484,
+        -1062983146,
+        -1102584076,
+        -1088303303,
+        -1079129930,
+        1062430659,
+        -1108380969,
+        1074071065,
+        -1117711325,
+        -1114490322,
+        -1115671090,
+        1084443497,
+        -1117290878,
+        -1097206300,
+        1023561118,
+        1078864276,
+        1063126254,
+        -1104170232,
+        1065233243,
+        -1098881707,
+        -1051568408,
+        -1064594130,
+        1024756962,
+        -1105146706,
+        -1104830217,
+        1031357873,
+        1059900624,
+        -1171702904,
+        1018772535,
+        -1123132580,
+        1000544924,
+        1071666943,
+        1070723112,
+        1064704878,
+        1065620813,
+        1021277512,
+        1056772379,
+        -1092338561,
+        -1157300745,
+        1050088271,
+        -1154330639,
+        -1069435959,
+        -1095936875,
+        1046671098,
+        -1103997422,
+        -1078224444,
+        1077312986,
+        -1088381096,
+        1024297364,
+        -1123275351,
+        1062952217,
+        1057257953,
+        -1091150401,
+        -1098399414,
+        1034851227,
+        -1104820405,
+        -1087699720,
+        1072895709,
+        1059632617,
+        1043960173,
+        -1103135882,
+        -1074139329,
+        1070509289,
+        -1079356492,
+        1057810633,
+        1045311499,
+        1050991234,
+        -1090981273,
+        1040796924,
+        -1098431776,
+        1058552284,
+        -1083694266,
+        -1067754836,
+        -1094437603,
+        -1071281374,
+        1021402473,
+        -1062773640,
+        1046837090,
+        1075111427,
+        -1105915356,
+        1070292934,
+        -1072063591,
+        1056306312,
+        -1118197038,
+        -1117068570,
+        1010488035,
+        1044472756,
+        1015444060,
+        -1154727720,
+        -1081374536,
+        1028434840,
+        1040801757,
+        -1084320543,
+        1040704751,
+        -1129618454,
+        1041004351,
+        -1100568983,
+        1074038985,
+        -1083427883,
+        1066419516,
+        -1118155596,
+        -1086846822,
+        -1098255205,
+        -1103549152,
+        -1073043011,
+        1041896915,
+        1068307934,
+        -1097206540,
+        -1127599814,
+        1051315501,
+        -1121266909,
+        1062879850,
+        -1101842630,
+        1057008995,
+        1091809875,
+        -1149263750,
+        1059868316,
+        -1107284171,
+        -1080686633,
+        -1113828551,
+        -1131445952,
+        -1100201821,
+        1029205967,
+        -1086886287,
+        1075992600,
+        -1126726129,
+        1060227641,
+        -1079298818,
+        1047808643,
+        -1131444958,
+        1043469769,
+        -1079146261,
+        -1100769695,
+        -1077804106,
+        -1128625084,
+        -1083388174,
+        -1104340366,
+        -1107882837,
+        -1080621265,
+        1014317111,
+        1071451071,
+        1064934547,
+        1079519851,
+        -1154353504,
+        -1129394350,
+        -1104715888,
+        -1114911465,
+        1034260087,
+        1008961006,
+        -1113007949,
+        1015530374,
+        -1106087356,
+        -1095473111,
+        -1100625038,
+        1062766837,
+        1044344680,
+        -1096999290,
+        -1096848110,
+        1008793418,
+        1059152310,
+        -1101269349,
+        1024538726,
+        -1071590200,
+        -1114352740,
+        -1105563066,
+        1075977560,
+        -1075258869,
+        1047205877,
+        -1098514488,
+        -1087817427,
+        1039796765,
+        -1070784382,
+        -1097794867,
+        -1121016782,
+        1033923239,
+        1046732145,
+        1051246769,
+        -1093594985,
+        -1061707311,
+        1026580312,
+        -1099058477,
+        1050414886,
+        -1088292784,
+        1050290886,
+        -1161120474,
+        -1097284228,
+        -1075941822,
+        1053430800,
+        1056617490,
+        -1091051392,
+        -1095239226,
+        1037420212,
+        -1091973708,
+        1049884815,
+        1076399682,
+        -1092239797,
+        1062492627,
+        -1119415806,
+        -1076790480,
+        -1077768220,
+        1041180590,
+        -1085341219,
+        1052879692,
+        1027073606,
+        -1134392080,
+        1012212229,
+        1053716919,
+        -1092846515,
+        1088322020,
+        -1121061061,
+        -1127040596,
+        1036851237,
+        -1140484760,
+        -1145466706,
+        -1113969314,
+        -1138660126,
+        1050242309,
+        1059738181,
+        1061053936,
+        -1121844915,
+        -1100135503,
+        -1084563141,
+        -1088572316,
+        1070991745,
+        -1081069809,
+        1059262048,
+        -1081092185,
+        -1109144600,
+        1054577935,
+        -1097612367,
+        1046307637,
+        1068434021,
+        -1096740521,
+        1054376638,
+        1043628404,
+        1056156729,
+        -1082893113,
+        1038998114,
+        -1089532167,
+        1046374850,
+        1046461574,
+        1054381293,
+        1041706699,
+        1055751373,
+        1048109313,
+        -1113706021,
+        1055089251,
+        1058975944,
+        1060411139,
+        -1098101305,
+        1057224589,
+        -1098617074,
+        1041497031,
+        -1093135092,
+        1053450854,
+        1057185560,
+        1040351569,
+        -1084262175,
+        -1087457692,
+        -1098498016,
+        -1082954296,
+        1048546609,
+        -1097178355,
+        1058135845,
+        1031319413,
+        1028105489,
+        1043481292,
+        1040778335,
+        -1084916966,
+        -1117060762,
+        1032139362,
+        -1115470770,
+        -1078724949,
+        1008676346,
+        1018881076,
+        -1125682945,
+        1015806373,
+        -1101024228,
+        -1083638368,
+        -1045289442,
+        -1088504827,
+        1026365336,
+        -1106782586,
+        1057680568,
+        -1095839471,
+        1027066426,
+        -1073369157,
+        1048448330,
+        -1121125182,
+        1071415891,
+        1033725375,
+        -1096163570,
+        1039113747,
+        1050002785,
+        1050127420,
+        -1109369387,
+        1063207871,
+        1089629881,
+        1077267315,
+        -1122315187,
+        -1101141546,
+        1073150160,
+        -1114194069,
+        1057023309,
+        -1083036334,
+        1048120523,
+        1051324008,
+        -1086124011,
+        1044901208,
+        1028643402,
+        1057771195,
+        -1077537136,
+        -1067515826,
+        -1090391875,
+        1067192534,
+        1053591075,
+        -1079119892,
+        1044348474,
+        -1099108936,
+        1046240307,
+        1041580459,
+        -1083931162,
+        1067508686,
+        1009776564,
+        -1090791293,
+        -1113258072,
+        -1098094610,
+        -1079366779,
+        -1091388148,
+        1027430106,
+        1029099611,
+        1057283699,
+        -1116803848,
+        -1089652788,
+        -1087501660,
+        1067569729,
+        -1090225994,
+        1067902306,
+        -1091976765,
+        1059825700,
+        -1102239545,
+        1076277626,
+        1018519046,
+        1050462204,
+        -1082646321,
+        -1082581762,
+        1084249376,
+        -1122081336,
+        1044551611,
+        1058161868,
+        -1090250472,
+        1052125678,
+        1045108238,
+        1052144620,
+        1088746634,
+        -1104487169,
+        -1120351132,
+        1006857664,
+        -1055713214,
+        -1101907647,
+        -1120262183,
+        1044381356,
+        -1117094210,
+        1057135799,
+        1059044940,
+        -1108959260,
+        -1106088394,
+        1038906467,
+        1059122238,
+        -1104822378,
+        -1097212085,
+        -1113527346,
+        1062766339,
+        1021556280,
+        1057552876,
+        -1067047199,
+        -1098328508,
+        1041011120,
+        -1080585365,
+        1055935500,
+        1075786681,
+        -1086110507,
+        -1100617028,
+        1043863011,
+        -1100104093,
+        -1117783390,
+        -1102653272,
+        1048175719,
+        -1102980766,
+        1045528553,
+        -1125159663,
+        -1111554832,
+        -1053139493,
+        -1126469851,
+        -1097433686,
+        1043476480,
+        -1123701348,
+        -1102395573,
+        1018729848,
+        -1074674582,
+        1036770914,
+        1038675777,
+        -1069881148,
+        1057294326,
+        1075778891,
+        1070521707,
+        -1107203853,
+        1030059080,
+        -1110828397,
+        -1113598695,
+        -1095457363,
+        -1076246276,
+        1068917466,
+        1041303307,
+        1071628147,
+        1042155002,
+        -1116689521,
+        -1106510147,
+        1055009129,
+        1028016012,
+        -1114606752,
+        1050998911,
+        1058181755,
+        -1115207801,
+        1071301130,
+        -1106783182,
+        1032728185,
+        1029931124,
+        -1103358071,
+        -1111341440,
+        1057400672,
+        1044776135,
+        -1089700281,
+        1050559516,
+        -1110940155,
+        -1064398182,
+        -1112115732,
+        1049070416,
+        -1065831907,
+        1038444223,
+        1083870666,
+        1040538907,
+        1059076100,
+        1043335408,
+        1058481306,
+        -1096867324,
+        986176632,
+        1039839060,
+        -1122512580,
+        -1104351450,
+        1019150543,
+        -1100276389,
+        -1080012205,
+        -1066573929,
+        -1080936991,
+        -1113068897,
+        -1074336627,
+        1076597519,
+        -1094951772,
+        -1089145332,
+        -1088539096,
+        1057487683,
+        -1080655104,
+        1029075388,
+        -1097569736,
+        1076124608,
+        -1065273427,
+        1073347862,
+        -1102443180,
+        1045343551,
+        1027301799,
+        -1123290634,
+        -1079368639,
+        1067635765,
+        1058340092,
+        1047363605,
+        1065689216,
+        -1064413774,
+        -1082553211,
+        1001234374,
+        1010377188,
+        -1094467713,
+        1033526688,
+        -1076217997,
+        -1080572331,
+        -1139267577,
+        1040213815,
+        -1082004927,
+        1045127053,
+        -1066836007,
+        1050166380,
+        1078577332,
+        1071856680,
+        -1097482814,
+        -1094349403,
+        1040246533,
+        -1089969685,
+        1045968053,
+        -1120143875,
+        1053582713,
+        -1107868137,
+        1053432305,
+        1065070263,
+        1032675647,
+        -1145812666,
+        1034578019,
+        -1092416435,
+        -1084687339,
+        -1098509205,
+        -1104567896,
+        -1138618283,
+        1044820678,
+        -1097007611,
+        -1113361769,
+        1038766850,
+        -1093851655,
+        1043750271,
+        -1064691005,
+        1044788983,
+        -1080471275,
+        -1096618011,
+        -1073390549,
+        -1087782184,
+        1071036871,
+        1055906679,
+        1058031238,
+        -1084237544,
+        -1136041143,
+        1058056876,
+        -1130356754,
+        1049343559,
+        -1094543351,
+        1067894705,
+        1073975214,
+        -1105030236,
+        1067196699,
+        1041357427,
+        1056648330,
+        -1074682149,
+        1056589532,
+        1050725566,
+        1058825411,
+        1057917846,
+        -1083043358,
+        -1078060954,
+        -1089076502,
+        1072070062,
+        -1087683196,
+        -1111616387,
+        1072040426,
+        1035730370,
+        1088200335,
+        -1090136870,
+        -1086263405,
+        -1076034988,
+        1067264014,
+        1049671719,
+        1040647012,
+        -1076455395,
+        -1093882649,
+        -1077851543,
+        -1074407252,
+        -1078688858,
+        -1129244389,
+        1052126792,
+        1027943141,
+        1058423050,
+        1061777350,
+        -1084192094,
+        -1128970460,
+        1022269016,
+        -1119070785,
+        -1087428236,
+        1026052593,
+        1051232663,
+        1054747204,
+        -1110507192,
+        -1096946041,
+        -1076840485,
+        -1125418256,
+        -1088447973,
+        -1072025603,
+        1073061502,
+        1077603018,
+        1046201396,
+        -1090456361,
+        1050734390,
+        1062401764,
+        1025521708,
+        1051086456,
+        1061572407,
+        1055113539,
+        -1069478622,
+        -1111759819,
+        -1061732886,
+        1047828017,
+        1050100133,
+        1055802175,
+        1061983393,
+        1028782168,
+        -1097965182,
+        1051039190,
+        -1075993561,
+        -1089045606,
+        -1092945897,
+        1059757146,
+        1024771983,
+        1028018612,
+        -1106881278,
+        -1119011613,
+        -1079567275,
+        -1106923118,
+        -1105931641,
+        1009403864,
+        1036997876,
+        1065169712,
+        1050942181,
+        1041699810,
+        1067436447,
+        -1128786698,
+        -1078047469,
+        -1121820194,
+        -1087347508,
+        -1106758326,
+        -1137860208,
+        1058395170,
+        1028754710,
+        -1118280590,
+        -1120191863,
+        1062878818,
+        1024198223,
+        1044335018,
+        -1109926548,
+        1069422594,
+        1028675226,
+        1033159308,
+        1051743787,
+        -1101742364,
+        1061579704,
+        1034480940,
+        1061303380,
+        -1086790547,
+        1067500795,
+        1045434994,
+        1009010253,
+        -1080377807,
+        1078066078,
+        -1105929243,
+        1061065268,
+        -1156238212,
+        -1093169160,
+        -1119834279,
+        -1082021458,
+        1044137537,
+        -1069247006,
+        1050377642,
+        -1094401698,
+        -1088763823,
+        1062651887,
+        1040204870,
+        -1097431786,
+        -1098756159,
+        -1083005251,
+        -1092422961,
+        -1066900112,
+        1063142176,
+        -1107371597,
+        1068217130,
+        -1095231878,
+        1040202935,
+        -1112643906,
+        1051720675,
+        -1095588720,
+        1026329227,
+        1042208084,
+        1049688618,
+        -1104573847,
+        1070591720,
+        1031978166,
+        1051280940,
+        -1081472229,
+        1028226197,
+        1050191890,
+        1028585724,
+        -1089619339,
+        1038235108,
+        1033683900,
+        -1105544845,
+        -1131937670,
+        -1148179391,
+        1007099285,
+        1029610866,
+        1067705972,
+        1018828786,
+        -1088585830,
+        1014063544,
+        1068238935,
+        -1045037867,
+        1042181032,
+        1054299697,
+        1009715047,
+        -1121472379,
+        1041325848,
+        1044822047,
+        -1132885932,
+        1050221383,
+        -1126397312,
+        -1074221670,
+        1057254046,
+        -1090213226,
+        -1085854268,
+        1049520335,
+        1059216466,
+        -1061028472,
+        1069628724,
+        1042219566,
+        1038538011,
+        1031421541,
+        -1048645382,
+        1042734110,
+        1050887822,
+        1034185080,
+        -1100843765,
+        -1082307893,
+        1062468404,
+        -1061696524,
+        1057840823,
+        1052654869,
+        1087460083,
+        -1101331830,
+        -1096235118,
+        -1073722803,
+        1058695312,
+        -1080182488,
+        -1097705027,
+        1063654922,
+        1046162447,
+        -1080409052,
+        1059526525,
+        -1095324041,
+        1033945475,
+        1071275584,
+        -1086898377,
+        -1081576955,
+        1048642406,
+        -1113068764,
+        -1132095198,
+        -1141226140,
+        1052605695,
+        -1105541686,
+        1043294808,
+        -1131399758,
+        -1085109897,
+        1045898604,
+        1051077094,
+        1032033610,
+        -1088887730,
+        1075130900,
+        -1098777566,
+        -1071036342,
+        -1092204440,
+        -1097396928,
+        -1111678653,
+        -1090820484,
+        1010666146,
+        -1089136606,
+        1051559073,
+        1058171135,
+        -1071586511,
+        -1068894815,
+        -1139826174,
+        -1118612398,
+        -1077068946,
+        1064015277,
+        1057710262,
+        1063936640,
+        1043257690,
+        -1103761710,
+        1061988948,
+        -1085435280,
+        -1115357824,
+        -1093065668,
+        -1095135775,
+        956354848,
+        -1078569158,
+        -1091280222,
+        -1099335524,
+        -1094296585,
+        -1085990414,
+        -1090267920,
+        -1083193669,
+        1061923945,
+        1077792954,
+        -1105050939,
+        1052237872,
+        -1082548051,
+        1056690152,
+        999810075,
+        -1105643876,
+        -1118276077,
+        1039038464,
+        1046107474,
+        1049382776,
+        1040546156,
+        1021880058,
+        -1120690762,
+        1023714491,
+        -1108777472,
+        999880287,
+        1009619399,
+        -1108345408,
+        -1106297621,
+        1031087646,
+        -1095426874,
+        -1094448171,
+        1038355233,
+        1027113996,
+        1067939744,
+        1061928385,
+        -1080069839,
+        -1099892034,
+        -1085768015,
+        -1116411326,
+        -1085471433,
+        -1098641555,
+        -1118079928,
+        -1097813986,
+        -1105620870,
+        -1101269020,
+        1095957527,
+        1061245044,
+        -1079976494,
+        -1086798159,
+        1069053387,
+        -1066746488,
+        -1131806845,
+        1009903444,
+        1049830646,
+        1061820288,
+        -1134787805,
+        1037076348,
+        1049880544,
+        -1101035297,
+        1061880625,
+        -1064919978,
+        -1103720384,
+        -1096765657,
+        1091204721,
+        -1088521051,
+        1017746144,
+        -1102072082,
+        1056356099,
+        1034843755,
+        -1113279780,
+        1022097768,
+        -1095632069,
+        1040985366,
+        1064703104,
+        1055381202,
+        1023446828,
+        1048703942,
+        1070404381,
+        -1097027573,
+        1049036754,
+        -1097838125,
+        -1108959069,
+        -1111909899,
+        -1101209677,
+        -1062801819,
+        1026507377,
+        -1137018202,
+        1034293644,
+        1045502456,
+        1053473962,
+        1034468501,
+        1035390213,
+        -1130809976,
+        -1088610400,
+        -1154873816,
+        1068950519,
+        1041697506,
+        1035738526,
+        -1102545923,
+        1012218267,
+        -1122618623,
+        -1113691826,
+        -1114698216,
+        -1121634413,
+        1048834276,
+        1098678446,
+        1008467404,
+        -1086271722,
+        -1111523418,
+        1016364617,
+        1085976194,
+        -1104238112,
+        -1105997138,
+        -1088733779,
+        -1055970440,
+        -1129326178,
+        1044985082,
+        -1095654738,
+        -1116152386,
+        1057061270,
+        1072169535,
+        -1102338918,
+        -1124220232,
+        -1120875624,
+        1025849952,
+        1026255553,
+        1052459829,
+        1046607219,
+        -1099423693,
+        -1129789567,
+        -1111679452,
+        -1094743695,
+        995818526,
+        -1104411820,
+        -1080769096,
+        1011007781,
+        1057706147,
+        -1098383556,
+        -1127609364,
+        -1150658752,
+        1019632393,
+        -1107883581,
+        -1125081732,
+        1029805004,
+        1035917712,
+        -1106979284,
+        1032451994,
+        -1094124206,
+        -1063374894,
+        -1122981377,
+        -1099332354,
+        -1109008674,
+        -1110615735,
+        1066899783,
+        -1096257140,
+        -1044340179,
+        -1098303095,
+        1048084042,
+        -1077999849,
+        -1103162706,
+        1026704922,
+        1072506224,
+        -1081555130,
+        1015513561,
+        -1088250143,
+        -1118395672,
+        1050442176,
+        1023069232,
+        1060769224,
+        -1076890508,
+        1070265467,
+        1046410594,
+        -1085646773,
+        1075697007,
+        1079198686,
+        1061452855,
+        1066173988,
+        1088242023,
+        1070134005,
+        -1067676980,
+        -1086036764,
+        1074886201,
+        1068425673,
+        1082485237,
+        1072576458,
+        1083870137,
+        1049015685,
+        1070949277,
+        -1067660553,
+        1092721194,
+        -1059520503,
+        1092514417,
+        -1079772700,
+        -1107017113,
+        1084749690,
+        1062031305,
+        -1056374984,
+        1079974074,
+        -1094485972,
+        1067608636,
+        1058415532,
+        1057432245,
+        -1076367586,
+        -1080041807,
+        1057178920,
+        1068385466,
+        -1088569973,
+        1058323424,
+        1049483942,
+        1048866149,
+        1044147988,
+        1028301135,
+        1044761640,
+        -1058091890,
+        -1076203774,
+        -1135995544,
+        1070877324,
+        -1088227942,
+        -1066435532,
+        -1079153810,
+        1078456181,
+        -1073755295,
+        1074434968,
+        1046387755,
+        -1062717141,
+        1007282622,
+        -1072018528,
+        -1065260007,
+        1076735686,
+        1065952933,
+        1066889906,
+        -1098014897,
+        1062690991,
+        1075566080,
+        -1100106876,
+        -1080664433,
+        -1080229602,
+        1059659774,
+        1060198916,
+        1064126808,
+        -1083532637,
+        -1078289035,
+        1056327616,
+        -1072812454,
+        -1095700493,
+        -1088872370,
+        -1112605280,
+        -1074306019,
+        1064189687,
+        1044450287,
+        -1078006586,
+        1064863578,
+        1052451283,
+        1061708334,
+        -1078766107,
+        -1071599579,
+        1055632856,
+        1079971864,
+        1049538532,
+        1073080405,
+        -1112554920,
+        -1078873504,
+        1068928616,
+        1073990143,
+        -1136324284,
+        -1105801215,
+        1065738004,
+        -1092356980,
+        1034584154,
+        -1091392121,
+        -1087854038,
+        1036345827,
+        -1100948573,
+        -1076402023,
+        1080028399,
+        -1071652679,
+        1032075306,
+        1075774600,
+        -1090754841,
+        -1083136212,
+        -1066530546,
+        1063397682,
+        1061684090,
+        1057582454,
+        1062621006,
+        1066029731,
+        1065327998,
+        -1140734260,
+        -1069785540,
+        1087488993,
+        -1078775974,
+        1071329514,
+        -1066454728,
+        -1122838091,
+        -1066503111,
+        1067587186,
+        -1110228298,
+        1057456982,
+        1047849867,
+        -1069699601,
+        -1119970637,
+        -1069909361,
+        1083026227,
+        -1078661419,
+        1087116985,
+        -1081995433,
+        1068482966,
+        -1071633621,
+        1077565021,
+        1063480917,
+        -1078385385,
+        -1123784787,
+        1067339464,
+        -1137501929,
+        1055736185,
+        -1056006834,
+        1056925952,
+        1053501806,
+        -1089422204,
+        -1072853332,
+        -1097378998,
+        1062234595,
+        1063119015,
+        -1079522614,
+        -1073303368,
+        1036838796,
+        -1086443430,
+        1058493710,
+        -1091492465,
+        1004585638,
+        1054761047,
+        1067294791,
+        1052181171,
+        -1081668235,
+        -1064919034,
+        -1074251690,
+        1040257544,
+        1067211795,
+        1072643035,
+        1064204292,
+        1082355383,
+        1066871279,
+        -1086005345,
+        -1071276423,
+        1020403381,
+        -1069129015,
+        1079627883,
+        -1080805257,
+        1066111544,
+        1094234146,
+        -1073535617,
+        -1093818432,
+        1067258205,
+        -1053648219,
+        1058248029,
+        1073864931,
+        1061557055,
+        1044755358,
+        1070828946,
+        1066992158,
+        -1079468921,
+        -1088982654,
+        -1066736546,
+        -1076109989,
+        1076079133,
+        -1072528746,
+        -1066256370,
+        -1065424755,
+        -1081443727,
+        -1069553727,
+        -1057799231,
+        1055027521,
+        -1078408861,
+        -1074661672,
+        -1080238969,
+        -1064900020,
+        1082448343,
+        -1063429600,
+        1053707478,
+        -1068308930,
+        1058091465,
+        1042635727,
+        1061312882,
+        1050709715,
+        1059671860,
+        -1079884339,
+        1047057611,
+        1015214238,
+        -1081551950,
+        1026967091,
+        -1090516213,
+        -1073435373,
+        1071315281,
+        -1080390637,
+        -1063713855,
+        -1092349359,
+        1066207318,
+        1058143051,
+        1065206939,
+        -1061793336,
+        1068270402,
+        1068942228,
+        1061601814,
+        1051590109,
+        1071208577,
+        1059230405,
+        1011247586,
+        1066564111,
+        -1066681962,
+        1089904954,
+        1090797750,
+        -1078502816,
+        -1089109941,
+        1087245299,
+        1071011898,
+        -1083862514,
+        -1085952079,
+        -1120592113,
+        1078394949,
+        1067621616,
+        1078725849,
+        1078711890,
+        1068321634,
+        1089700219,
+        1083939308,
+        1079614296,
+        -1075534587,
+        1077892978,
+        -1086458113,
+        1069940802,
+        1089371190,
+        -1089849649,
+        -1073570319,
+        -1089828236,
+        -1065013400,
+        1066862048,
+        1087172508,
+        1074767310,
+        1037029046,
+        1049405961,
+        -1096953767,
+        -1086248773,
+        -1100884666,
+        1050136239,
+        -1086065045,
+        -1084417489,
+        1065290865,
+        1057368650,
+        -1076437124,
+        -1095636829,
+        1067167414,
+        1046512899,
+        -1081539164,
+        1077573551,
+        1088587598,
+        1073668319,
+        -1083877985,
+        1074046781,
+        -1065212815,
+        -1072191094,
+        -1086997419,
+        -1070280096,
+        1049401974,
+        -1096873167,
+        1078160337,
+        1077650414,
+        1068670314,
+        1083491088,
+        1074727270,
+        -1073595466,
+        1052723480,
+        -1075840469,
+        1067755008,
+        1056289080,
+        -1096368907,
+        1072926301,
+        1052450367,
+        -1079551372,
+        1082714949,
+        1065201860,
+        1079540239,
+        -1076849528,
+        1065546712,
+        -1062071907,
+        1082190245,
+        1074189107,
+        -1086031445,
+        -1063908152,
+        -1084877264,
+        1058058036,
+        -1073859222,
+        -1080823112,
+        1074492055,
+        -1093730163,
+        1065763433,
+        -1074777145,
+        1079121047,
+        1050344297,
+        1056736781,
+        1046691014,
+        1053380764,
+        -1082824193,
+        -1078281137,
+        -1101209509,
+        -1113534303,
+        1060815350,
+        1048917084,
+        1059383128,
+        1042810161,
+        1017514320,
+        1058373745,
+        1058423454,
+        1061180562,
+        -1106764001,
+        1070706845,
+        1062247969,
+        1058454024,
+        -1073210891,
+        -1080035860,
+        -1074130945,
+        -1077977888,
+        -1106608737,
+        -1072431556,
+        1060607517,
+        1068413982,
+        1070629772,
+        1069390761,
+        1052186531,
+        1088756573,
+        1076618987,
+        1038897707,
+        1066517810,
+        1061355549,
+        1084281133,
+        -1087946115,
+        1080721469,
+        1048334042,
+        -1084853801,
+        1042956382,
+        1081943943,
+        1067722159,
+        1078074026,
+        -1086066891,
+        1064529254,
+        1077476152,
+        -1070487389,
+        -1074125564,
+        -1090165849,
+        -1073724619,
+        -1075864581,
+        -1074876568,
+        -1069553737,
+        -1089292005,
+        -1073247450,
+        -1068433541,
+        -1073513394,
+        1081535439,
+        -1073952231,
+        -1120384240,
+        1050672631,
+        1062327799,
+        -1101301654,
+        -1096587673,
+        1048023548,
+        -1124692403,
+        -1114672270,
+        1049347010,
+        -1090928947,
+        -1093135941,
+        -1102243790,
+        1066152227,
+        -1075899831,
+        -1085954963,
+        -1097002040,
+        1076391390,
+        -1077074420,
+        -1083248838,
+        -1068308708,
+        -1077045927,
+        -1064200893,
+        -1076418791,
+        -1130928304,
+        -1106701175,
+        1066966367,
+        1068808045,
+        1064285849,
+        -1071617683,
+        -1085648829,
+        -1084839220,
+        1075722375,
+        -1075227029,
+        -1076991103,
+        -1102181329,
+        -1085974287,
+        1035460311,
+        -1082523720,
+        -1093507817,
+        -1073595268,
+        -1080825268,
+        -1102814833,
+        -1085742672,
+        1032057614,
+        1067219607,
+        -1089083538,
+        1060693244,
+        1050523210,
+        1077647222,
+        1072456964,
+        1054645815,
+        1079389936,
+        -1092051366,
+        1054911232,
+        1076067027,
+        1069801777,
+        1078401391,
+        1060509203,
+        1082231820,
+        -1096079047,
+        -1098850661,
+        1064794010,
+        1051778113,
+        1065813563,
+        1058029473,
+        -1115980307,
+        1045719169,
+        1044645971,
+        -1090183692,
+        -1096822499,
+        1035143591,
+        1035006112,
+        -1097619439,
+        1067966278,
+        1056179605,
+        -1093978594,
+        -1072194192,
+        -1081911739,
+        1061662057,
+        -1082024861,
+        -1081977101,
+        1053596612,
+        -1075015646,
+        -1082676199,
+        -1083216015,
+        -1106107516,
+        -1073262468,
+        -1092849850,
+        1060319801,
+        -1081000845,
+        1041199036,
+        1085067385,
+        1078261337,
+        1053149600,
+        1057519721,
+        -1069121657,
+        1074268471,
+        1068732386,
+        1044705074,
+        1073226855,
+        1057487061,
+        1078268994,
+        -1074206725,
+        -1064109222,
+        -1109697426,
+        -1073607463,
+        -1110606900,
+        -1068950889,
+        1067798841,
+        1083148371,
+        1090043030,
+        1082712819,
+        -1066377380,
+        1065160933,
+        -1071649446,
+        -1066790601,
+        -1076750713,
+        1069838332,
+        -1090798990,
+        -1082330457,
+        -1087823630,
+        -1082095674,
+        1053932511,
+        1056386208,
+        1056247178,
+        1063377095,
+        1057877093,
+        1061943159,
+        -1098767670,
+        -1101586138,
+        -1088127403,
+        -1101447408,
+        -1086247101,
+        -1082609657,
+        1079084482,
+        -1156771842,
+        -1063995634,
+        1062377902,
+        -1092234759,
+        1068867059,
+        1071134455,
+        -1081828114,
+        -1059919627,
+        -1091579351,
+        1068206302,
+        1041297160,
+        -1079063981,
+        -1089664143,
+        1078436659,
+        1065229015,
+        -1066237902,
+        -1072980041,
+        -1069084095,
+        -1094043570,
+        -1095657875,
+        -1072810624,
+        -1067622880,
+        1071148506,
+        1024574881,
+        1083968244,
+        1075350777,
+        -1071641477,
+        -1087684948,
+        1075604126,
+        -1081747451,
+        -1082508160,
+        1084405195,
+        -1090794481,
+        1076030367,
+        -1107129634,
+        -1070835138,
+        -1090195048,
+        1093829923,
+        1050743684,
+        -1098514348,
+        -1077892275,
+        -1069653917,
+        -1084383914,
+        -1072478409,
+        -1080609272,
+        -1093473989,
+        1061433177,
+        -1104327244,
+        1060752161,
+        1044341335,
+        1061756987,
+        -1094945053,
+        -1093661988,
+        -1082714903,
+        -1132324365,
+        -1087039621,
+        -1114721102,
+        1049199931,
+        1028119668,
+        -1104740833,
+        -1081777963,
+        -1064257866,
+        -1080928043,
+        1051246013,
+        -1081179341,
+        -1070688243,
+        -1091799259,
+        -1068287038,
+        1073778343,
+        1049610191,
+        -1085743075,
+        -1074440777,
+        1033613920,
+        1074905071,
+        1069356513,
+        -1060825784,
+        -1065528538,
+        -1073292391,
+        -1078194132,
+        -1083207957,
+        1076597497,
+        1080425058,
+        -1068958909,
+        -1071602404,
+        1076880835,
+        -1080253683,
+        1071750553,
+        1081665376,
+        -1058286301,
+        1091122866,
+        1084975577,
+        -1062873607,
+        1086945357,
+        1072174356,
+        -1076793924,
+        -1065167485,
+        -1056616077,
+        -1064826650,
+        1098465054,
+        1093135615,
+        -1115833298,
+        1082414959,
+        1057700805,
+        1099681734,
+        1091335969,
+        1032421026,
+        1083975635,
+        -1090196147,
+        -1074244936,
+        1062937567,
+        1071365347,
+        -1075671179,
+        1067607300,
+        1074163292,
+        1066689692,
+        1072279745,
+        -1103552819,
+        1051394884,
+        1059486828,
+        1075051506,
+        1093433556,
+        1090477571,
+        1070061387,
+        -1063918002,
+        -1075123675,
+        -1058428867,
+        -1105399600,
+        1075745983,
+        1085383141,
+        -1070717823,
+        -1096022597,
+        -1081065836,
+        1076325162,
+        -1084886491,
+        1066333850,
+        1064651186,
+        -1087383458,
+        1076837229,
+        1071466165,
+        1037509557,
+        -1055020035,
+        -1103352108,
+        -1079764188,
+        1059867377,
+        1074764019,
+        1052033771,
+        -1103942715,
+        -1129753792,
+        -1103733156,
+        -1066168683,
+        -1079407006,
+        -1072929154,
+        -1114038066,
+        1069355646,
+        1061380628,
+        1092428593,
+        -1062931900,
+        1077016981,
+        1067954562,
+        -1066022515,
+        -1069296532,
+        -1065165532,
+        1066418199,
+        -1083198990,
+        -1062138642,
+        1039412213,
+        1054566951,
+        1058544442,
+        -1080854214,
+        1062828221,
+        1060381878,
+        1051383759,
+        1025557752,
+        1061767893,
+        1053472396,
+        -1087318098,
+        1024213391,
+        -1091642702,
+        -1073703032,
+        1064901599,
+        1060707749,
+        1067576020,
+        1066122966,
+        1029035677,
+        1066514439,
+        1078659184,
+        -1079360755,
+        1077760563,
+        -1070782406,
+        1077384140,
+        1048153590,
+        1065142806,
+        1048963740,
+        -1090009560,
+        1074584296,
+        1081014261,
+        1084532795,
+        -1081591304,
+        1068270282,
+        -1068869299,
+        -1060313283,
+        -1063790161,
+        1077732317,
+        -1084811134,
+        1050196203,
+        1081176258,
+        -1068945659,
+        1076327026,
+        -1071702377,
+        -1079793990,
+        -1065706719,
+        1097143985,
+        1075234409,
+        -1087303414,
+        1029635393,
+        -1071688807,
+        1067167436,
+        -1058232174,
+        1085130710,
+        1084606446,
+        1075080696,
+        1050187012,
+        -1072261402,
+        1040776284,
+        1075217674,
+        -1075838278,
+        -1080468608,
+        -1103938421,
+        -1085653733,
+        1045705385,
+        1054455484,
+        1066391003,
+        -1068948732,
+        1043419423,
+        1058142933,
+        1050026934,
+        -1154467788,
+        1024860803,
+        -1079309845,
+        -1105733590,
+        1073903750,
+        -1049934934,
+        -1060697818,
+        -1073837240,
+        1088521027,
+        -1072911598,
+        -1063644368,
+        -1102921206,
+        -1065114610,
+        -1073519502,
+        -1063622734,
+        1056728416,
+        1060395380,
+        -1080796350,
+        -1067806445,
+        -1090424350,
+        -1077196829,
+        -1083465245,
+        -1074737753,
+        -1097841212,
+        1083934404,
+        -1117691169,
+        -1072291745,
+        1034484760,
+        1059835874,
+        -1072968093,
+        -1080434766,
+        1050066111,
+        -1068215254,
+        1065926750,
+        1082869813,
+        -1070256691,
+        1068535412,
+        1079717196,
+        1065384790,
+        1025102881,
+        1075840818,
+        1068631687,
+        1049592193,
+        1087658718,
+        -1086232391,
+        -1078522365,
+        -1084149956,
+        1083481034,
+        1083887146,
+        -1126231393,
+        1060129811,
+        1022413845,
+        1058066590,
+        1066025573,
+        -1090433445,
+        1061882544,
+        -1099326408,
+        -1089712089,
+        1036884381,
+        -1109770950,
+        1047747587,
+        1049510393,
+        -1090009773,
+        1060216121,
+        1063294688,
+        -1075826194,
+        1035702705,
+        1060187339,
+        1049833865,
+        1076620654,
+        1043803001,
+        -1061847505,
+        -1106825593,
+        1067836940,
+        1068895148,
+        -1072903669,
+        -1095328821,
+        -1097327901,
+        -1087735790,
+        -1080335941,
+        -1062360779,
+        1077035501,
+        1058794348,
+        1075165510,
+        -1067363599,
+        -1076075856,
+        -1069900917,
+        1054628224,
+        -1061574712,
+        -1069842450,
+        1080343508,
+        1074273897,
+        -1096184976,
+        -1062963380,
+        1067636789,
+        1083427123,
+        1079395460,
+        1078842257,
+        -1054195161,
+        -1043905372,
+        1065813592,
+        -1110516617,
+        -1068339006,
+        -1057021894,
+        -1074807624,
+        1078071715,
+        1051158311,
+        1076472727,
+        -1084578836,
+        1063117850,
+        1011834892,
+        -1109628788,
+        1026753026,
+        -1082826487,
+        -1094438531,
+        1069653113,
+        1054869206,
+        -1077900087,
+        -1106426291,
+        -1080065472,
+        -1115986311,
+        -1117245279,
+        1058594291,
+        -1078749506,
+        -1090329222,
+        -1062993043,
+        1068819668,
+        1056825712,
+        1075388354,
+        1084966478,
+        1075208338,
+        -1056993281,
+        -1064707401,
+        1091669216,
+        1066544150,
+        -1062604491,
+        -1085631322,
+        1075907951,
+        1074212097,
+        1074777345,
+        -1085491900,
+        1083112976,
+        -1097060002,
+        -1117180055,
+        1086746883,
+        -1092656792,
+        -1077119376,
+        -1079890267,
+        -1089081131,
+        1065398088,
+        1077826452,
+        -1156959612,
+        -1077475540,
+        -1080563435,
+        -1069433148,
+        1030480392,
+        -1080872613,
+        -1072689895,
+        -1071598955,
+        -1064668279,
+        -1067102783,
+        -1071890249,
+        -1066278250,
+        -1071501388,
+        -1090069096,
+        -1066727137,
+        -1077423863,
+        -1087047673,
+        -1075249091,
+        1057286366,
+        -1094000813,
+        1064942477,
+        -1090008846,
+        -1081455003,
+        -1100719995,
+        -1089206325,
+        -1089409245,
+        1050408049,
+        -1131338168,
+        -1095443294,
+        -1088650953,
+        -1081737050,
+        -1093821661,
+        -1106793231,
+        -1146738372,
+        1054872181,
+        -1094079372,
+        -1083664966,
+        -1084952918,
+        -1068652225,
+        -1074001135,
+        -1074665560,
+        1071124302,
+        -1078363945,
+        -1073191007,
+        -1077449805,
+        1060629567,
+        -1109321916,
+        1062887600,
+        1012671747,
+        1080107749,
+        1059042461,
+        1075142621,
+        1046653511,
+        1074752564,
+        -1073818768,
+        1053882406,
+        1095860894,
+        1057528124,
+        1065282045,
+        1064309811,
+        -1103831819,
+        1035173658,
+        1049467656,
+        -1101120960,
+        1070415741,
+        1045917006,
+        -1143883796,
+        1076137357,
+        -1094317942,
+        -1080562194,
+        -1080851059,
+        1036275378,
+        -1118278354,
+        1031196950,
+        1075521742,
+        1079990820,
+        -1088582829,
+        -1097975711,
+        -1098537600,
+        1058212506,
+        1056653853,
+        1051455788,
+        1020870095,
+        -1112321050,
+        -1092812180,
+        1050221286,
+        -1110285162,
+        1005945048,
+        1009789000,
+        -1098152556,
+        1052439131,
+        -1106427938,
+        1033809489,
+        1025770532,
+        -1073694825,
+        1034103574,
+        -1076461704,
+        1046660922,
+        1055824666,
+        1037233620,
+        1017461040,
+        -1092415486,
+        -1113636480,
+        -1101207449,
+        -1098615563,
+        -1078797285,
+        -1098245423,
+        -1097823666,
+        1036233459,
+        -1069045946,
+        -1088035948,
+        -1083414111,
+        -1100142347,
+        -1098170803,
+        1061294368,
+        -1113063995,
+        -1055968431,
+        -1079933026,
+        -1095965147,
+        -1088818767,
+        -1131910954,
+        -1088449737,
+        -1123783565,
+        1034081064,
+        1067133570,
+        -1096896817,
+        -1111884906,
+        -1073637740,
+        1061593585,
+        1054029410,
+        -1098484988,
+        -1100628946,
+        -1096090407,
+        -1116848590,
+        1032476319,
+        1040593813,
+        -1069995587,
+        -1130731664,
+        1035913995,
+        1070427690,
+        1044843567,
+        -1095835600,
+        -1140463270,
+        1042245762,
+        1063441406,
+        -1129668303,
+        1065011193,
+        -1083669928,
+        1016771306,
+        -1082098902,
+        -1104608563,
+        -1065349807,
+        -1117213831,
+        -1110902306,
+        -1067538753,
+        -1118162344,
+        1061811691,
+        1027821147,
+        1008886678,
+        -1111043862,
+        -1105992425,
+        1067999355,
+        1079077994,
+        1059091827,
+        -1079451589,
+        1069493094,
+        -1079317800,
+        1062207382,
+        1029450432,
+        -1083725947,
+        -1060151093,
+        -1062754096,
+        1039847147,
+        1043007777,
+        1082842101,
+        -1125434366,
+        -1077469092,
+        -1098855413,
+        -1088552645,
+        -1076246575,
+        1038793462,
+        1043293790,
+        -1108642528,
+        1016576866,
+        1052485577,
+        -1096296548,
+        -1111570281,
+        -1088004010,
+        -1085254162,
+        -1089758734,
+        -1106051266,
+        -1096229032,
+        1032150365,
+        1023157842,
+        -1082048549,
+        -1086953413,
+        -1055933048,
+        1026027629,
+        1066821279,
+        -1074945707,
+        -1073265380,
+        -1098024649,
+        1037012156,
+        1042600366,
+        1065419516,
+        1008779449,
+        1021036749,
+        -1112849663,
+        1016340896,
+        -1069928415,
+        -1098046083,
+        -1072002293,
+        -1139984195,
+        -1105686300,
+        -1067598860,
+        -1070642109,
+        1073736923,
+        -1112316909,
+        1036760059,
+        1040197259,
+        1026116069,
+        -1099917785,
+        1032977355,
+        1029746153,
+        -1080083046,
+        1051503274,
+        -1056450088,
+        1026294795,
+        -1148039337,
+        1073428281,
+        -1104495006,
+        -1069775398,
+        1083962475,
+        1070848071,
+        1040545949,
+        1058612022,
+        1094487159,
+        -1106766762,
+        1035081711,
+        1066232205,
+        -1114364932,
+        1068379946,
+        989396664,
+        1045754620,
+        -1108751558,
+        1066714659,
+        1069587267,
+        -1062621663,
+        1054676735,
+        -1093548272,
+        -1080219576,
+        -1083588913,
+        1065769242,
+        1001109332,
+        1062369919,
+        -1087924095,
+        1068683839,
+        -1081431869,
+        -1097563746,
+        1021963412,
+        -1107786873,
+        1051424904,
+        1026688234,
+        1034486426,
+        1044381860,
+        1009521747,
+        -1112206457,
+        1009276670,
+        968081504,
+        1029198196,
+        -1142710885,
+        1061770066,
+        1009886522,
+        1074836474,
+        1057761818,
+        -1102483745,
+        -1063116380,
+        -1081180032,
+        1054589221,
+        -1086509063,
+        -1121187228,
+        -1090560198,
+        1019068286,
+        1043481168,
+        1063714784,
+        -1094326873,
+        -1104688272,
+        1050426253,
+        -1076816211,
+        1085608691,
+        1068759274,
+        1056636285,
+        -1103120040,
+        -1104573482,
+        -1100795974,
+        -1094762187,
+        1090929037,
+        1048779756,
+        1034325665,
+        1051518193,
+        -1097500483,
+        1059333620,
+        -1104576273,
+        -1079780843,
+        -1134210166,
+        1057923645,
+        -1110014136,
+        1066496837,
+        1073256528,
+        -1078908274,
+        -1114870975,
+        -1162040136,
+        1032685434,
+        -1121683732,
+        1038630784,
+        1049666220,
+        1066704815,
+        1061105999,
+        -1080802693,
+        1067618337,
+        1059314098,
+        1049276887,
+        -1111261961,
+        -1104920288,
+        -1139114953,
+        1033417269,
+        -1095002069,
+        1049245152,
+        -1126707995,
+        1073767974,
+        1029721952,
+        1079059266,
+        1027677416,
+        1066413678,
+        -1108878514,
+        -1097385058,
+        -1089681908,
+        1048338378,
+        -1103063756,
+        1049360922,
+        1014771189,
+        1047323930,
+        -1102826136,
+        -1116874530,
+        1060376646,
+        -1081709552,
+        1081550965,
+        -1120140906,
+        1059080831,
+        -1085276407,
+        1061232029,
+        1046312594,
+        1077756255,
+        -1073996415,
+        -1091076001,
+        -1094039904,
+        -1064471634,
+        1056534629,
+        1049825347,
+        -1127205501,
+        -1092856071,
+        -1115120081,
+        1035305972,
+        1031904125,
+        1038215337,
+        1054529105,
+        -1086429520,
+        1073509161,
+        -1065130149,
+        -1069385164,
+        -1075323512,
+        -1075579681,
+        1052673161,
+        -1102409588,
+        -1083384773,
+        1066375463,
+        1065540281,
+        1045813188,
+        1032119451,
+        1038490380,
+        -1112382085,
+        1055827782,
+        -1091856215,
+        -1096446360,
+        -1100343966,
+        -1109314859,
+        1043264181,
+        995519009,
+        -1116689234,
+        -1100105504,
+        -1090354621,
+        -1116790582,
+        -1146776125,
+        1086283871,
+        1074421317,
+        1031182193,
+        -1074652621,
+        -1094854618,
+        1072662419,
+        -1087073131,
+        1041295469,
+        1045596906,
+        -1085315949,
+        1046684804,
+        1052694849,
+        -1087707564,
+        -1102352805,
+        994333880,
+        -1111019566,
+        -1072882721,
+        -1106972509,
+        -1094310602,
+        -1095848134,
+        -1042810724,
+        -1106742274,
+        -1081779818,
+        1023224274,
+        -1108999367,
+        -1091045979,
+        -1077612531,
+        1015928244,
+        1034184336,
+        -1105495701,
+        -1080955483,
+        1081020606,
+        -1094116545,
+        -1109317248,
+        1076726457,
+        -1105922070,
+        1068191843,
+        -1089857630,
+        -1092191526,
+        -1155659428,
+        1042803768,
+        -1051195897,
+        1041403174,
+        -1060767075,
+        -1095004849,
+        1059151143,
+        -1109499350,
+        -1116944223,
+        1029753618,
+        1045720759,
+        -1140282182,
+        1040708237,
+        1023454634,
+        -1125250467,
+        -1120476985,
+        1019525753,
+        -1087354491,
+        -1129880628,
+        -1070706324,
+        1025075891,
+        -1109223383,
+        -1072082899,
+        -1096118188,
+        1066278561,
+        1054006844,
+        1042263396,
+        1051582742,
+        1038243248,
+        -1089385836,
+        1035322572,
+        1031266090,
+        -1079780996,
+        -1122251795,
+        -1079018616,
+        1020096336,
+        1052388459,
+        1046453686,
+        -1089257529,
+        -1085441077,
+        -1084887411,
+        -1076939418,
+        1077231925,
+        -1129445824,
+        -1069833659,
+        -1095584582,
+        -1096264362,
+        1023724410,
+        -1115327044,
+        -1109153199,
+        -1116264636,
+        -1093051457,
+        1033325906,
+        -1099305077,
+        -1081564929,
+        1048347774,
+        1050394659,
+        -1066254862,
+        -1121440311,
+        -1068906145,
+        1071818861,
+        -1111273403,
+        1013667466,
+        -1135806490,
+        1059755247,
+        -1085609179,
+        -1116573375,
+        -1108497859,
+        988493944,
+        1050912899,
+        1050353061,
+        -1091185954,
+        1032643522,
+        1029772696,
+        999528251,
+        1054764156,
+        1033966038,
+        -1113804358,
+        -1100134170,
+        -1118964261,
+        1025851864,
+        -1100311623,
+        1064234782,
+        -1078826372,
+        1016921231,
+        1040340762,
+        -1088796173,
+        -1095796292,
+        -1098116397,
+        1058561117,
+        -1102601892,
+        1039652318,
+        1066288705,
+        1041402944,
+        1049555860,
+        1023039061,
+        -1095725815,
+        1063219048,
+        1069656512,
+        1044492474,
+        1058499408,
+        -1088217882,
+        1058627409,
+        1050946663,
+        1063555874,
+        1052243273,
+        -1100643076,
+        -1103509887,
+        1047366464,
+        1067772487,
+        1046056514,
+        -1093762089,
+        1057292530,
+        1046140249,
+        1052543745,
+        1054469336,
+        -1087026448,
+        1047343971,
+        -1140417937,
+        1069316435,
+        -1113584613,
+        -1115671374,
+        1063526812,
+        -1127147682,
+        1042317031,
+        -1104472001,
+        1044317175,
+        -1114235506,
+        1051474366,
+        1033419960,
+        1043787013,
+        -1118096392,
+        1016135278,
+        1037955613,
+        1009256418,
+        -1128166665,
+        1025260648,
+        1042087575,
+        1040044418,
+        -1110761022,
+        -1125173269,
+        1049397967,
+        1041037912,
+        -1074008375,
+        1060582175,
+        -1102352680,
+        -1102529558,
+        -1109656784,
+        1014232974,
+        -1125639928,
+        -1138300092,
+        -1101767872,
+        -1063152830,
+        -1092361416,
+        -1103001045,
+        -1093264931,
+        1081726981,
+        -1066324633,
+        -1098332876,
+        -1135853668,
+        -1068283484,
+        -1105194686,
+        -1098672157,
+        -1188226048,
+        -1054619068,
+        -1096678908,
+        -1099861615,
+        -1094517888,
+        1047234861,
+        -1072172757,
+        1034156319,
+        1058039512,
+        -1132204056,
+        1057041961,
+        -1096751975,
+        -1060451968,
+        990663340,
+        1049117095,
+        -1115760171,
+        1071298529,
+        1050407281,
+        -1121965834,
+        1046742675,
+        1036877871,
+        1081353628,
+        1083166230,
+        1055905528,
+        1014478344,
+        -1095434948,
+        -1096807770,
+        1023642014,
+        1007652908,
+        1016467853,
+        1026167346,
+        1026241388,
+        1024716916,
+        1009263438,
+        -1100923949,
+        1039141649,
+        1019141153,
+        -1154600414,
+        -1064077207,
+        1065349327,
+        1046062186,
+        1069652559,
+        -1122512185,
+        -1087962709,
+        1033480961,
+        1030707133,
+        -1107290514,
+        -1105306163,
+        1024956446,
+        1049043710,
+        -1115090108,
+        1057313762,
+        1015132238,
+        -1133792200,
+        -1081350800,
+        -1096556987,
+        -1097780736,
+        1040922960,
+        -1095385967,
+        1075399060,
+        -1091198005,
+        -1085657576,
+        1044250337,
+        -1109058577,
+        -1064320541,
+        1048463021,
+        1070971084,
+        -1110908229,
+        -1104680129,
+        1050274581,
+        -1122573264,
+        -1092161197,
+        1093847267,
+        -1114441453,
+        1068325041,
+        -1103613503,
+        -1110892490,
+        -1146855686,
+        -1122903300,
+        -1072201294,
+        -1099858436,
+        -1069581533,
+        -1087365770,
+        1042354092,
+        -1098268286,
+        -1106246744,
+        1009353454,
+        1041888973,
+        1048127340,
+        -1098805476,
+        1038778874,
+        -1163874732,
+        -1112861490,
+        1024964310,
+        -1071211787,
+        1046254300,
+        -1098106537,
+        1003869038,
+        -1100386433,
+        -1087496191,
+        1045620767,
+        1048618698,
+        1050155775,
+        1047541596,
+        1064033910,
+        1043537127,
+        1048748278,
+        -1128558893,
+        1041141738,
+        -1081933600,
+        1040923529,
+        -1079218733,
+        1041633084,
+        1010016700,
+        -1071576159,
+        -1069950010,
+        -1067574262,
+        -1083816196,
+        -1081791817,
+        1082224907,
+        -1094194048,
+        -1114960478,
+        1049145416,
+        -1098874192,
+        -1075864756,
+        1040548445,
+        1035261858,
+        -1114809469,
+        -1112931236,
+        1054464306,
+        1052392971,
+        -1110465824,
+        -1080137274,
+        1048408421,
+        -1087479402,
+        -1096974068,
+        -1099899227,
+        1034048578,
+        1044292342,
+        1073314714,
+        -1092732712,
+        -1069482678,
+        -1089285726,
+        1074082435,
+        -1113138873,
+        -1076132205,
+        1028849655,
+        1043743154,
+        -1110058602,
+        1078495121,
+        -1124196514,
+        -1119391625,
+        1013678443,
+        1017365227,
+        -1070519590,
+        -1107832206,
+        -1056149188,
+        -1128750967,
+        -1098454631,
+        -1070463108,
+        -1070962198,
+        -1134525387,
+        1028241776,
+        -1121256300,
+        1042193347,
+        -1133776328,
+        -1104309782,
+        -1110887390,
+        -1159278860,
+        -1073882715,
+        1026697931,
+        -1061244388,
+        1032620983,
+        -1081911059,
+        1070028800,
+        1035633267,
+        1057520786,
+        -1076168138,
+        -1067928588,
+        -1109174311,
+        -1120851167,
+        1080456296,
+        -1100756666,
+        1038265539,
+        1042352949,
+        -1095571013,
+        1060653693,
+        1027077756,
+        -1081454708,
+        -1080541889,
+        -1080706171,
+        1046273030,
+        -1107330002,
+        1042637298,
+        -1094761920,
+        -1107452257,
+        1074640302,
+        1032463658,
+        1034718950,
+        -1096594083,
+        1034814304,
+        -1084109209,
+        -1083306614,
+        1044347486,
+        -1129979008,
+        1057083462,
+        -1098167469,
+        1040678078,
+        -1094886848,
+        -1125769728,
+        -1123450964,
+        982132520,
+        1016522622,
+        1023654486,
+        1037493617,
+        -1098610920,
+        -1109276867,
+        -1115083031,
+        -1048040293,
+        -1097796845,
+        -1086944358,
+        -1092921713,
+        1034303516,
+        1032126697,
+        987624556,
+        1013020825,
+        1043689476,
+        -1100767350,
+        -1102535321,
+        -1100808737,
+        -1109887555,
+        -1132344954,
+        -1100886549,
+        1047997617,
+        1082483178,
+        1040579610,
+        1060790515,
+        -1086236375,
+        1065151234,
+        -1076840354,
+        1072208923,
+        1101383977,
+        -1088301852,
+        1041938316,
+        -1088848687,
+        -1090855338,
+        -1081261641,
+        -1093000516,
+        1041471566,
+        1040298794,
+        -1088290199,
+        -1095616012,
+        -1097070405,
+        -1087007972,
+        -1071930078,
+        -1081511406,
+        -1103799606,
+        -1137168042,
+        1033630283,
+        1065158598,
+        -1099675657,
+        1060739092,
+        1064837457,
+        1042079286,
+        -1098903474,
+        -1119008790,
+        1032246349,
+        -1113373416,
+        1066104399,
+        1023774672,
+        -1113898222,
+        -1094310895,
+        1052152475,
+        -1098749228,
+        -1084345013,
+        1053094651,
+        1056960113,
+        -1116307468,
+        1061624352,
+        1027159872,
+        1042933883,
+        1067802552,
+        -1107604936,
+        1033016960,
+        -1092664144,
+        1057771978,
+        -1072094652,
+        -1082955198,
+        -1077320939,
+        -1065293639,
+        -1082886840,
+        -1089676614,
+        -1095782407,
+        1057241814,
+        1048190079,
+        1077115080,
+        1067505511,
+        -1091227649,
+        1105075155,
+        -1071766402,
+        1048856434,
+        1049031469,
+        -1098857067,
+        1045422408,
+        1055207212,
+        -1115122357,
+        -1095061320,
+        -1133095655,
+        1055550539,
+        1048811184,
+        1034124811,
+        1048835059,
+        -1056644317,
+        1062288026,
+        -1082197712,
+        -1085570290,
+        1065651610,
+        1030530498,
+        1031200626,
+        1090705590,
+        1043366214,
+        1091079496,
+        1060247623,
+        -1087651946,
+        1030437690,
+        1063182906,
+        1045327719,
+        -1105588619,
+        -1096300046,
+        -1086250117,
+        1026020703,
+        1016503211,
+        -1109977896,
+        1001067655,
+        1048675556,
+        -1086933808,
+        1075302320,
+        -1128105311,
+        -1093534001,
+        1061680967,
+        1060238569,
+        1056591683,
+        1053155886,
+        -1098219909,
+        1069842651,
+        -1137306212,
+        -1142382733,
+        1061095347,
+        -1105597656,
+        1042390959,
+        -1137502930,
+        1071549698,
+        1026087628,
+        -1094245518,
+        1082068268,
+        1033557922,
+        1033916128,
+        1048876221,
+        1069913878,
+        -1110394253,
+        1051709874,
+        1074811940,
+        1038831397,
+        1061337028,
+        -1106933941,
+        -1104510613,
+        -1104911957,
+        1042737234,
+        -1088491754,
+        1068643139,
+        -1113316744,
+        1040888761,
+        1078951474,
+        1067154212,
+        1061943722,
+        1050144835,
+        -1106212636,
+        -1105938238,
+        1024581259,
+        1091985702,
+        1033704036,
+        1023767756,
+        1051239009,
+        -1081540147,
+        1077014680,
+        1069264901,
+        -1125609744,
+        -1123730114,
+        1055532569,
+        -1095827325,
+        -1132085416,
+        1017458242,
+        1018739068,
+        -1131770423,
+        1068502187,
+        -1104018971,
+        1053209515,
+        -1139031838,
+        -1122585477,
+        1046443358,
+        1079392894,
+        -1080439252,
+        1045634505,
+        -1123718382,
+        1040203287,
+        -1112337418,
+        1051570174,
+        1020373895,
+        -1103130437,
+        1078045080,
+        1041554993,
+        1058426261,
+        -1105076678,
+        1049355307,
+        1076201494,
+        -1119099290,
+        1053207675,
+        1069440963,
+        1060427936,
+        -1076238873,
+        1052883645,
+        1070482780,
+        -1086053069,
+        -1084460593,
+        -1080047559,
+        -1090352170,
+        -1058063114,
+        -1086921893,
+        -1077915253,
+        -1069512105,
+        -1089802680,
+        -1100682506,
+        1069669387,
+        1060513141,
+        1075125286,
+        -1101251750,
+        -1071716216,
+        -1104070617,
+        -1089132481,
+        -1073154148,
+        -1084784208,
+        1055060797,
+        -1087536442,
+        1051276034,
+        -1088195190,
+        -1127710292,
+        1046914119,
+        1037579884,
+        1042135758,
+        -1079711212,
+        -1108602591,
+        -1107733440,
+        -1085344093,
+        -1107697506,
+        1048184653,
+        1074117960,
+        1039428236,
+        -1116835301,
+        1032553510,
+        -1095116446,
+        1046203710,
+        1077289693,
+        -1073260876,
+        -1113791118,
+        -1090096782,
+        1055064942,
+        -1085653402,
+        1061715963,
+        1053889876,
+        1056963632,
+        -1110502078,
+        -1098402846,
+        1032111162,
+        -1088309322,
+        -1081828413,
+        -1078393640,
+        -1094852903,
+        -1079831854,
+        1061086550,
+        -1098734193,
+        -1097904672,
+        1078424707,
+        1040388223,
+        1061741404,
+        -1113986180,
+        1044045556,
+        -1095649366,
+        1050470009,
+        1049735759,
+        -1087300887,
+        1037829555,
+        -1087763448,
+        -1091825834,
+        -1092133022,
+        -1088491757,
+        1063235779,
+        1060016889,
+        1049929792,
+        1026285210,
+        1072702848,
+        1041334744,
+        -1075565492,
+        -1070172286,
+        1028971757,
+        -1112524333,
+        1011654513,
+        -1110590262,
+        1057534411,
+        -1100654514,
+        1062707314,
+        1032220453,
+        -1159772744,
+        1019541216,
+        1010901058,
+        -1085070749,
+        1057233620,
+        -1092582174,
+        -1121251116,
+        -1079672062,
+        -1098094663,
+        -1086910885,
+        -1084293970,
+        -1110004833,
+        -1110494549,
+        -1084527832,
+        -1095761963,
+        -1091338272,
+        -1117530634,
+        1047880417,
+        -1089127120,
+        -1121551424,
+        991652140,
+        1049344691,
+        1046990280,
+        -1086135028,
+        -1096746049,
+        -1099701659,
+        -1071013054,
+        1050985756,
+        -1076198825,
+        1033375632,
+        -1069835654,
+        1066729683,
+        1061085435,
+        1071695896,
+        1044800143,
+        1086684694,
+        1057626859,
+        1061231091,
+        1083927829,
+        1058195076,
+        1065887882,
+        1042642097,
+        1062752333,
+        -1080744643,
+        1065820676,
+        1054354940,
+        1041534206,
+        1052434846,
+        1072897666,
+        -1089823763,
+        1042737833,
+        1079116653,
+        -1082291857,
+        1040891180,
+        1020491653,
+        -1100951857,
+        1014562208,
+        1041643696,
+        1049305375,
+        994275076,
+        1059170068,
+        999854826,
+        -1113999902,
+        1040734394,
+        -1114786184,
+        -1130226180,
+        1031898579,
+        1053724169,
+        -1118747622,
+        -1102619890,
+        -1079509471,
+        1036452396,
+        -1101317824,
+        1030514921,
+        -1098431648,
+        1057774310,
+        -1114251326,
+        -1098253426,
+        1067513769,
+        1034218985,
+        1044185499,
+        -1128016534,
+        1005472800,
+        -1088759611,
+        -1124965948,
+        1074500636,
+        1075703777,
+        -1081367004,
+        1075837697,
+        -1104080613,
+        1060763020,
+        1060890354,
+        1029540106,
+        -1075488432,
+        -1128423987,
+        -1097219486,
+        1030891556,
+        -1085940117,
+        1041487871,
+        -1093979919,
+        -1102105546,
+        1075817483,
+        -1087678952,
+        1063208822,
+        -1103414159,
+        -1083856904,
+        -1107055449,
+        -1104604636,
+        -1064623273,
+        -1098338183,
+        -1057171075,
+        -1091326318,
+        1049370304,
+        -1095225598,
+        -1114243934,
+        1034971111,
+        -1110717887,
+        1062257923,
+        -1135330065,
+        -1124817042,
+        -1128518755,
+        -1090955151,
+        -1121752796,
+        -1098186061,
+        -1112007375,
+        -1080293454,
+        1021070694,
+        1046118589,
+        -1070059557,
+        -1100284911,
+        -1089146842,
+        -1124995886,
+        1059998935,
+        1043473236,
+        -1122928510,
+        1026959553,
+        1058803787,
+        -1139860726,
+        -1101692400,
+        1038855160,
+        -1070837770,
+        -1117272865,
+        -1072457461,
+        1075668035,
+        1052856705,
+        1051132668,
+        1084469309,
+        -1104577368,
+        -1062072088,
+        1070905923,
+        1055072332,
+        1080995029,
+        1064796380,
+        1067102640,
+        1055207607,
+        -1084950051,
+        1054366166,
+        -1067816598,
+        -1057254067,
+        -1080779850,
+        -1062125565,
+        -1089354059,
+        -1067729196,
+        1059301625,
+        1066280387,
+        -1070442543,
+        -1076017152,
+        -1084306000,
+        -1102247205,
+        -1073619199,
+        1060983776,
+        -1082647657,
+        -1085174619,
+        1050940452,
+        1055700487,
+        1068370562,
+        -1087161341,
+        1071546051,
+        -1090142284,
+        -1091880168,
+        -1079508100,
+        -1088129479,
+        1062283648,
+        -1104490094,
+        1041730425,
+        1062860734,
+        1059047162,
+        1062660648,
+        1086014902,
+        -1077815510,
+        -1099686170,
+        1072683655,
+        1077112219,
+        1079435147,
+        1065446760,
+        1070426429,
+        -1090141701,
+        1043656753,
+        -1085154873,
+        -1069408347,
+        1068213106,
+        1061959674,
+        1070057876,
+        1075639211,
+        1035799408,
+        1038374459,
+        1066690647,
+        1039661209,
+        1044647203,
+        1062023173,
+        -1088468043,
+        -1079165925,
+        -1080336498,
+        1068130569,
+        -1077493406,
+        1074217257,
+        -1101727172,
+        -1085379174,
+        -1070481672,
+        1057529522,
+        -1076522193,
+        -1073924795,
+        1082312198,
+        -1064314607,
+        1067061448,
+        1068218316,
+        -1079222876,
+        -1119617023,
+        1069930539,
+        -1090924901,
+        1075182877,
+        1079708151,
+        -1100065892,
+        -1089600121,
+        -1116492203,
+        -1086472107,
+        1032157576,
+        -1072230606,
+        -1079439244,
+        1059474144,
+        -1088502908,
+        1047501927,
+        -1094320071,
+        1068087040,
+        -1087532275,
+        -1097996011,
+        -1082432729,
+        1079834747,
+        -1070564609,
+        -1068847264,
+        -1072725058,
+        -1067951169,
+        -1069765987,
+        1081507675,
+        1052176603,
+        -1068918124,
+        1064777857,
+        -1102908869,
+        -1105072458,
+        1077574212,
+        1060566264,
+        1055658928,
+        -1102809937,
+        -1063898364,
+        -1078424254,
+        1069856456,
+        1080230047,
+        1082102894,
+        1085825073,
+        1075013346,
+        1075686667,
+        -1075678085,
+        1036979328,
+        1057776047,
+        1073308450,
+        -1098665897,
+        1068835544,
+        1062026186,
+        1073115015,
+        -1108835930,
+        1059194909,
+        -1073264910,
+        1080909556,
+        -1062755957,
+        -1057186943,
+        -1079805436,
+        -1090052576,
+        -1094985070,
+        -1082234213,
+        1061738033,
+        1058858038,
+        1033335443,
+        -1092867209,
+        1051746309,
+        -1070732239,
+        1059876194,
+        -1089599015,
+        -1097807493,
+        1058252370,
+        1068758970,
+        1056092463,
+        1054205382,
+        -1078621136,
+        -1082559630,
+        -1071670612,
+        1055675893,
+        -1086963788,
+        -1066927582,
+        1085374430,
+        -1092045876,
+        -1089239053,
+        -1062177169,
+        1074714216,
+        -1063238637,
+        1074199777,
+        1025053201,
+        -1081436824,
+        1066916555,
+        1074783687,
+        1074020846,
+        -1085577315,
+        1065482474,
+        1077138633,
+        1054498494,
+        -1114828571,
+        -1070442607,
+        -1064385934,
+        -1089735557,
+        1093796263,
+        -1068759439,
+        1071490382,
+        1042018930,
+        -1097971822,
+        1038348488,
+        1040032887,
+        -1070880443,
+        -1116903647,
+        1074268567,
+        -1086812810,
+        -1069807455,
+        1078684860,
+        -1082836394,
+        1071746535,
+        1041542471,
+        1074310491,
+        -1091968963,
+        1073791918,
+        1001317682,
+        -1082375516,
+        -1081603396,
+        -1078587263,
+        -1072273634,
+        1049284485,
+        1043446264,
+        -1121610917,
+        -1079834545,
+        1044252087,
+        -1090838379,
+        1066022288,
+        1068104825,
+        1051795406,
+        1065935796,
+        -1090488493,
+        -1091327171,
+        -1075273149,
+        1026565785,
+        -1092721748,
+        -1068118543,
+        -1080128501,
+        -1077559912,
+        -1068232755,
+        -1073195588,
+        -1080534792,
+        -1057676851,
+        1072770856,
+        -1075114170,
+        1066544368,
+        1061367904,
+        -1102189169,
+        1051872010,
+        1067567478,
+        1065976570,
+        -1089309914,
+        -1062197738,
+        -1083836863,
+        1074973060,
+        1073854473,
+        1043022865,
+        -1098974295,
+        -1081132748,
+        -1059501560,
+        1040631691,
+        1056646734,
+        -1102933001,
+        -1069334873,
+        1073890909,
+        -1113630628,
+        -1076035932,
+        -1069397950,
+        -1071300977,
+        1053943262,
+        1078091462,
+        -1085796399,
+        1089658550,
+        -1073288455,
+        1080248330,
+        -1086351284,
+        1078693386,
+        1064406302,
+        -1077766119,
+        -1064731484,
+        1087660804,
+        1067732981,
+        1045203754,
+        -1103048335,
+        1060545913,
+        -1096332107,
+        -1083293377,
+        1057611205,
+        -1087034823,
+        1042901203,
+        1056715956,
+        1057174656,
+        -1103188499,
+        1044453092,
+        -1096816437,
+        1062349173,
+        -1073740860,
+        -1071759336,
+        1055419708,
+        -1142092534,
+        1071502777,
+        1064246014,
+        1078990907,
+        -1086152414,
+        -1096040036,
+        -1075924931,
+        -1080978512,
+        1055199559,
+        -1081392276,
+        1035288904,
+        -1089680737,
+        -1076337896,
+        1073423898,
+        1069292535,
+        -1064055954,
+        1090960417,
+        1079942060,
+        -1066963987,
+        -1096319162,
+        -1089876921,
+        1053123604,
+        1053708252,
+        -1073513132,
+        -1090291890,
+        1074096972,
+        1073676769,
+        -1087719621,
+        1085962835,
+        1079469569,
+        1071264268,
+        1082484662,
+        1084166605,
+        1077004204,
+        -1082573634,
+        1070066035,
+        1066697933,
+        -1094468185,
+        -1077585897,
+        -1075600768,
+        1088320289,
+        1065452455,
+        1049821475,
+        -1083507825,
+        1051754205,
+        1081333053,
+        1063331691,
+        -1081514753,
+        1066432444,
+        1059677844,
+        -1099913465,
+        -1079249069,
+        -1088251951,
+        1070335310,
+        1063342158,
+        -1105555777,
+        -1094005138,
+        -1061701238,
+        1098772169,
+        1073824053,
+        -1070702592,
+        -1071528531,
+        -1104601247,
+        -1044236884,
+        1070937415,
+        1060115132,
+        -1123217926,
+        1077418536,
+        1075860698,
+        1064319370,
+        -1091063118,
+        1074950458,
+        -1089148562,
+        1066586982,
+        -1121727677,
+        1077161927,
+        1089399528,
+        -1104495507,
+        -1069586212,
+        1053993420,
+        1059807630,
+        -1100580144,
+        1040110421,
+        -1093179374,
+        -1087651939,
+        1074426855,
+        1045797782,
+        -1069086230,
+        1055969570,
+        -1089861015,
+        1060312633,
+        -1077745793,
+        1034752961,
+        1084326421,
+        1064133403,
+        -1091538243,
+        1058076150,
+        -1083637363,
+        -1085222946,
+        1059485423,
+        -1099107020,
+        1017448082,
+        1050929193,
+        1055097846,
+        1055051818,
+        1064228520,
+        -1097026773,
+        1061423312,
+        1050837763,
+        -1087424574,
+        -1101651767,
+        -1107600209,
+        1057738770,
+        1056163057,
+        1055550837,
+        1048774136,
+        1052738826,
+        1040922466,
+        1065825890,
+        1056333210,
+        -1119838246,
+        1069707566,
+        -1108739607,
+        1061411245,
+        1053608268,
+        1073681397,
+        1052530285,
+        1051010186,
+        -1097740460,
+        -1094115110,
+        1044118279,
+        -1129600054,
+        1082289039,
+        1066799129,
+        1078781300,
+        -1081013937,
+        -1069937030,
+        -1077860004,
+        1086676616,
+        -1080932789,
+        1044418821,
+        1081256636,
+        1066194730,
+        -1084906390,
+        -1112480383,
+        -1058456757,
+        1065746114,
+        -1094890171,
+        1083060853,
+        -1086869728,
+        -1069706041,
+        1076896493,
+        -1069282161,
+        -1061755306,
+        -1075010779,
+        -1072189133,
+        1068738612,
+        -1090575121,
+        -1086529456,
+        -1072268957,
+        1067443427,
+        -1069194492,
+        1032826221,
+        -1085284060,
+        -1088078224,
+        -1090596209,
+        1058834569,
+        -1077178107,
+        1066621338,
+        -1103344414,
+        1025311783,
+        -1089034178,
+        -1090262211,
+        1057579528,
+        1052416261,
+        -1082386193,
+        -1097536223,
+        -1081452489,
+        1071328832,
+        -1078697763,
+        -1069751364,
+        1048476747,
+        -1080760528,
+        1084960029,
+        -1080516085,
+        -1098594893,
+        1069006490,
+        -1113326964,
+        1076454499,
+        1073927745,
+        1065418353,
+        -1083032016,
+        -1059474833,
+        -1056831127,
+        -1086276730,
+        -1072960495,
+        -1056810954,
+        -1080969042,
+        1083495315,
+        1074173798,
+        1091086404,
+        1081474700,
+        -1070528780,
+        1062482265,
+        1059888858,
+        1083892629,
+        -1076483659,
+        1091708866,
+        1084965657,
+        1075566853,
+        -1081756227,
+        -1081726568,
+        1063923864,
+        -1053578524,
+        1085067103,
+        -1066970430,
+        -1083775032,
+        1075590482,
+        -1098283473,
+        -1078407137,
+        1084098755,
+        -1071807240,
+        1049497446,
+        -1078560716,
+        -1065954341,
+        1057357022,
+        -1119486527,
+        1056565510,
+        -1079490839,
+        -1080869038,
+        -1105622600,
+        1058209036,
+        1068123949,
+        1060977542,
+        1078309340,
+        -1094666916,
+        1074709781,
+        -1084508139,
+        1080427985,
+        1054225965,
+        -1089017114,
+        1098855881,
+        -1085398374,
+        -1080907252,
+        1058747819,
+        1082151659,
+        1060124483,
+        -1076996780,
+        -1056428997,
+        -1071022659,
+        -1072123294,
+        -1067373293,
+        1064252298,
+        -1084192165,
+        -1090065379,
+        -1083993137,
+        1089425398,
+        -1091006077,
+        -1072929550,
+        1024820864,
+        1058497880,
+        -1071577660,
+        1051966835,
+        1050043658,
+        -1106608742,
+        1083499783,
+        -1089054165,
+        1077581178,
+        -1071895762,
+        -1071164651,
+        -1063540228,
+        1070111774,
+        -1064910621,
+        -1073185636,
+        -1081562553,
+        -1089502809,
+        -1101995000,
+        -1076566685,
+        1065421852,
+        1070815279,
+        1078898784,
+        -1070864012,
+        1058736451,
+        1026346456,
+        1030707198,
+        -1095063965,
+        1037951821,
+        -1081549970,
+        1077948848,
+        -1084705999,
+        1056658700,
+        -1086630310,
+        1060296850,
+        -1081803996,
+        1058110021,
+        1055441119,
+        1060470789,
+        1087243485,
+        1065968091,
+        -1079217907,
+        1070775987,
+        1074142778,
+        -1092917914,
+        1082791424,
+        -1090854598,
+        1073019018,
+        -1064461095,
+        1026096769,
+        -1075591491,
+        -1073530054,
+        1057490083,
+        1040019626,
+        1082688949,
+        1084269438,
+        1076504678,
+        1082279372,
+        -1058232986,
+        -1101219398,
+        -1069952070,
+        1086735896,
+        1074776146,
+        1083685327,
+        1075356329,
+        -1089412311,
+        1070347698,
+        1017281343,
+        1074115187,
+        -1086442894,
+        1077037901,
+        -1084846846,
+        -1054522320,
+        1057274264,
+        -1076055886,
+        -1056854700,
+        1053972924,
+        1090049700,
+        1069473845,
+        1062434913,
+        -1070332800,
+        1044817203,
+        1049380759,
+        1062896914,
+        1069129469,
+        -1075875029,
+        -1097413617,
+        1072334223,
+        -1094204378,
+        -1074300443,
+        -1109424842,
+        1030434806,
+        1072216405,
+        -1081891711,
+        -1079117077,
+        1068797868,
+        1059575965,
+        -1077931322,
+        -1107455564,
+        -1062989448,
+        -1057366451,
+        -1065814248,
+        -1077106280,
+        1073407228,
+        -1071639693,
+        1074913040,
+        -1066559117,
+        -1074016647,
+        -1087190687,
+        -1092916957,
+        1041756694,
+        -1097362733,
+        -1094341084,
+        -1074989988,
+        -1074430611,
+        -1060272623,
+        -1073661695,
+        -1054909418,
+        -1079696192,
+        -1072254210,
+        1071217498,
+        1054465367,
+        -1079539621,
+        -1070857187,
+        -1099428378,
+        -1072634749,
+        1074532894,
+        -1053999040,
+        -1085286595,
+        1058772264,
+        -1094023953,
+        -1078825117,
+        -1078492867,
+        -1069574890,
+        -1063442059,
+        -1063783541,
+        1081791252,
+        1087808476,
+        1073876199,
+        -1104108170,
+        1059115298,
+        -1074062867,
+        -1071859545,
+        -1079193842,
+        1074305058,
+        -1078276926,
+        -1081826277,
+        1053141834,
+        -1097412698,
+        -1089721662,
+        1061456928,
+        -1110259277,
+        1045044774,
+        1037455330,
+        -1091902715,
+        -1079960883,
+        -1087866459,
+        -1070915648,
+        -1095952207,
+        1041937738,
+        1068160141,
+        -1063662656,
+        -1081156166,
+        -1072979161,
+        -1113811316,
+        -1111634157,
+        1068370190,
+        -1069960887,
+        1068303824,
+        1073594478,
+        1076882095,
+        1074322174,
+        -1076778539,
+        1068946286,
+        1076054654,
+        -1069288350,
+        1053155915,
+        -1059539660,
+        1039329960,
+        -1080709293,
+        1088497558,
+        -1081214997,
+        -1113462385,
+        -1080679476,
+        1060144289,
+        1061740277,
+        1041131162,
+        -1064156667,
+        -1097003393,
+        -1118766824,
+        -1090152778,
+        -1091052903,
+        1080766008,
+        -1073382417,
+        1088875648,
+        1081277980,
+        1075909640,
+        -1081993958,
+        1042141260,
+        -1097474981,
+        1066198760,
+        -1075941409,
+        -1071803565,
+        1082265933,
+        -1079712163,
+        -1081755886,
+        -1077928831,
+        -1068269940,
+        1075322391,
+        -1082055303,
+        1061117289,
+        -1086288445,
+        1067937632,
+        1063605507,
+        -1090393486,
+        1048505206,
+        -1077012559,
+        -1076892492,
+        -1099263084,
+        1068758761,
+        -1053398025,
+        -1059895211,
+        1063097062,
+        1050713656,
+        -1061078659,
+        1074447782,
+        1054041571,
+        -1076271799,
+        1069500446,
+        -1097294543,
+        1073595340,
+        1060631532,
+        -1092333596,
+        -1075835936,
+        -1096840352,
+        1034364037,
+        1075494906,
+        1067380035,
+        1069759058,
+        -1060545009,
+        -1093709388,
+        -1101356991,
+        -1082398499,
+        -1094643747,
+        1051775043,
+        1060684773,
+        -1080747781,
+        1056831527,
+        -1080570091,
+        -1081437154,
+        1058755844,
+        1056049211,
+        1065832345,
+        1065328568,
+        1066604660,
+        1074388591,
+        1075486132,
+        -1078192543,
+        -1137023356,
+        1068873348,
+        1070719029,
+        1080182947,
+        -1074093107,
+        1073507733,
+        1062460734,
+        -1084848626,
+        1050378822,
+        -1095139310,
+        1059272266,
+        -1088623080,
+        1034943000,
+        1062874456,
+        1064050465,
+        1059366211,
+        -1079619711,
+        -1081236918,
+        -1085325820,
+        -1079211766,
+        -1073747243,
+        -1075800663,
+        -1063667360,
+        -1076936449,
+        -1067808084,
+        -1060257053,
+        -1079854365,
+        1074427786,
+        1077876532,
+        -1067103714,
+        1060526042,
+        1069675528,
+        1076049222,
+        1065567505,
+        1065459553,
+        1074261360,
+        -1084276542,
+        -1071259550,
+        1054460423,
+        -1075229919,
+        -1064493728,
+        1074012149,
+        1078747321,
+        -1062228492,
+        -1106498344,
+        1085498178,
+        -1086944311,
+        -1092691833,
+        1050199716,
+        -1050213469,
+        1043002996,
+        1082108686,
+        1076770879,
+        1060041972,
+        1092621262,
+        -1058380159,
+        -1064767238,
+        -1065759210,
+        -1061069687,
+        -1069190901,
+        -1073681401,
+        -1083919144,
+        1081334508,
+        -1079812154,
+        -1089449821,
+        -1078166082,
+        -1071932716,
+        1073993126,
+        1060292808,
+        1049130204,
+        -1115347208,
+        -1072332734,
+        1071451452,
+        1061964921,
+        -1079938076,
+        -1094563432,
+        1047408745,
+        -1079387208,
+        1059630497,
+        1068295956,
+        1040297449,
+        -1075886015,
+        1094713741,
+        1083582037,
+        -1077673444,
+        1056276851,
+        1082750847,
+        -1073309362,
+        1070626228,
+        1069006533,
+        -1080080685,
+        1049681293,
+        1055760024,
+        1074307485,
+        1064783469,
+        1062314109,
+        -1070104828,
+        1070555709,
+        -1091400623,
+        -1112516869,
+        -1071525317,
+        -1075015534,
+        -1070940415,
+        1069773289,
+        1040841934,
+        1076131258,
+        1042614295,
+        -1088141139,
+        1065374771,
+        1094285756,
+        1017068122,
+        -1072808760,
+        -1061880539,
+        -1080712196,
+        1058634945,
+        -1079518730,
+        -1066906217,
+        1062924165,
+        -1067542576,
+        -1064483304,
+        -1085326798,
+        -1084067716,
+        -1073400848,
+        -1072429767,
+        -1069109494,
+        -1066943220,
+        -1089457808,
+        1069069582,
+        -1117659879,
+        1034492160,
+        -1091799514,
+        1069710965,
+        1064032673,
+        -1097096787,
+        -1113300251,
+        1053319517,
+        -1106458097,
+        1060726107,
+        -1079783297,
+        1041529710,
+        -1135183991,
+        1077810022,
+        -1111950806,
+        1069372559,
+        1064548503,
+        -1079905508,
+        -1080536162,
+        -1081405226,
+        -1077104911,
+        1060146884,
+        -1075031932,
+        -1098786972,
+        -1089305195,
+        -1072122659,
+        -1077422284,
+        -1074207277,
+        1066214727,
+        1063817636,
+        -1087076915,
+        -1070789027,
+        -1079419299,
+        -1102326704,
+        1074719023,
+        1058215432,
+        1065117788,
+        1064151005,
+        -1084897377,
+        -1072227976,
+        -1067069183,
+        1074635513,
+        1075410143,
+        -1068671458,
+        -1082182838,
+        -1085141288,
+        1074447194,
+        1057732998,
+        1070054614,
+        -1075719191,
+        -1092943862,
+        1081129863,
+        1067016035,
+        -1074841132,
+        1038589549,
+        1069382796,
+        -1080463733,
+        1072751666,
+        -1088642594,
+        -1064781076,
+        1077395104,
+        -1073298823,
+        -1070966289,
+        1076633669,
+        1071122826,
+        1066627963,
+        -1089299302,
+        -1073396632,
+        -1080615966,
+        -1081495440,
+        1078165299,
+        1062684374,
+        -1074249545,
+        1009146638,
+        1070474734,
+        1062495624,
+        -1085201985,
+        -1086456817,
+        1068069425,
+        1072555562,
+        -1079076254,
+        1059770243,
+        -1073043435,
+        1048308902,
+        -1085143719,
+        1075043138,
+        -1080765521,
+        -1068280264,
+        1059123057,
+        -1073565669,
+        1060705313,
+        1074116891,
+        -1076198562,
+        1061291760,
+        1061739723,
+        -1073168396,
+        -1069386543,
+        1073932891,
+        1073727749,
+        -1064701917,
+        -1071225708,
+        -1121996336,
+        1040337279,
+        1061039848,
+        1071055349,
+        -1118815737,
+        -1073997438,
+        1039975550,
+        -1068950127,
+        1022486332,
+        1050701981,
+        1065267866,
+        1070119429,
+        -1118909672,
+        1065802630,
+        -1078657212,
+        1074890831,
+        1075232126,
+        -1069379922,
+        -1064920696,
+        1082598372,
+        -1080402689,
+        -1078587987,
+        1080431609,
+        1069725744,
+        -1081104770,
+        -1084686570,
+        1062445098,
+        -1074242879,
+        -1073979052,
+        1077085178,
+        1080102900,
+        -1082019710,
+        1055962666,
+        1049986043,
+        1057393316,
+        -1078108093,
+        -1078281035,
+        1075125839,
+        1084069292,
+        -1073054274,
+        1071679103,
+        1064979946,
+        -1077073298,
+        -1069682066,
+        -1069271317,
+        1083435508,
+        1083855843,
+        1060212571,
+        1055148732,
+        1072376825,
+        -1071045753,
+    }
+}
diff --git a/icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy_Test.txt b/icu4c/source/test/testdata/Thai_codepoints_exclusive_model5_heavy_Test.txt
new file mode 100644 (file)
index 0000000..d47ceea
--- /dev/null
@@ -0,0 +1,97 @@
+# Copyright (C) 2020 and later: Unicode, Inc. and others.
+# License & terms of use: http://www.unicode.org/copyright.html
+Note: model Thai_codepoints_exclusive_model5_heavy has been trained using an exclusive data set. However, if you like you can still test it by other types of data sets (not recommended).
+Model: Thai_codepoints_exclusive_model5_heavy
+Embedding:     codepoints
+Input: ปฏิญญาสากลว่าด้วยสิทธิมนุษยชน
+Output:        |ปฏิญญา|สากลว่า|ด้วย|สิทธิ|มนุษย|ชน|
+Input: คำปรารภ
+Output:        |คำ|ปรารภ|
+Input: โดยที่การยอมรับนับถือเกียรติศักดิ์ประจำตัว
+Output:        |โดย|ที่|การ|ยอม|รับ|นับ|ถือ|เกียรติศักดิ์|ประจำ|ตัว|
+Input: และสิทธิเท่าเทียมกันและโอนมิได้ของบรรดา
+Output:        |และ|สิทธิ|เท่า|เทียม|กัน|และ|โอน|มิ|ได้|ของ|บรรดา|
+Input: สมาชิก
+Output:        |สมา|ชิก|
+Input: ทั้ง
+Output:        |ทั้ง|
+Input: หลายแห่งครอบครัว
+Output:        |หลาย|แห่ง|ครอบครัว|
+Input: มนุษย์เป็นหลักมูลเหตุแห่งอิสรภาพ
+Output:        |มนุษย์|เป็น|หลักมูล|เหตุ|แห่ง|อิสรภาพ|
+Input: ความยุติธรรม
+Output:        |ความ|ยุติ|ธรรม|
+Input: และสันติภาพในโลก
+Output:        |และ|สันติภาพ|ใน|โลก|
+Input: โดยที่การไม่นำพาและการเหยียดหยามต่อสิทธิมนุษยชน
+Output:        |โดย|ที่|การ|ไม่|นำ|พา|และ|การ|เหยียด|หยาม|ต่อ|สิทธิ|มนุษยชน|
+Input: ยังผลให้มีการหระทำอันป่าเถื่อน
+Output:        |ยัง|ผล|ให้|มี|การ|หระทำ|อัน|ป่า|เถื่อ|น|
+Input: ซี่งเป็นการละเมิดมโนธรรมของมนุษยชาติอย่างร้ายแรง
+Output:        |ซี่ง|เป็น|การ|ละเมิดมโนธรรม|ของ|มนุษยชาติ|อย่าง|ร้าย|แรง|
+Input: และใต้
+Output:        |และ|ใต้|
+Input: ได้
+Output:        |ได้|
+Input: มีการประกาศว่า
+Output:        |มี|การ|ประกาศ|ว่า|
+Input: ปณิธานสูงสุดของสามัญชนได้แก่ความต้องการให้มนุษย์มีชีวิตอยู่ในโลกด้วยอิสรภาพในการพูด
+Output:        |ปณิธาน|สูงสุด|ของ|สามัญชน|ได้|แก่|ความ|ต้องการ|ให้|มนุษย์|มี|ชีวิต|อยู่|ใน|โลก|ด้วย|อิสรภาพ|ใน|การ|พูด|
+Input: และความเชื่อถือ
+Output:        |และ|ความ|เชื่อถือ|
+Input: และอิสรภาพพ้นจากความหวาดกลัวและความต้องการ
+Output:        |และ|อิสรภาพ|พ้น|จาก|ความ|หวาด|กลัว|และ|ความ|ต้องการ|
+Input: โดยที่เป็นการจำเป็นอย่างยิ่งที่สิทธิมนุษยชนควรได้รับความคุ้มครองโดยหลักบังคับของกฎหมาย
+Output:        |โดย|ที่|เป็น|การ|จำเป็น|อย่าง|ยิ่ง|ที่|สิทธิ|มนุษยชน|ควร|ได้|รับ|ความ|คุ้มครอง|โดย|หลัก|บังคับ|ของ|กฎหมาย|
+Input: ถ้าไม่ประสงค์จะให้คนตกอยู่ในบังคับให้หันเข้าหาการขบถขัดขืนต่อทรราชและการกดขี่เป็นวิถีทางสุดท้าย
+Output:        |ถ้า|ไม่|ประสงค์|จะ|ให้|คน|ตก|อยู่|ใน|บังคับ|ให้|หัน|เข้า|หา|การ|ขบถ|ขัด|ขืน|ต่อทรราช|และ|การ|กด|ขี่|เป็น|วิถี|ทาง|สุด|ท้าย|
+Input: โดยที่ประชากรแห่งสหประชาชาติได้ยืนยันไว้ในกฎบัตรถึงความเชื่อมั่นในสิทธิมนุษยชนอันเป็นหลักมูล
+Output:        |โดย|ที่|ประชากร|แห่ง|สหประชา|ชาติ|ได้|ยืน|ยัน|ไว้|ใน|กฎบัตร|ถึง|ความ|เชื่อมั่น|ใน|สิทธิ|มนุษยชน|อัน|เป็น|หลัก|มู|ล|
+Input: ในเกียรติศักดิ์และคุณค่าของมนุษย์และในสิทธิเท่าเทียมกันของบรรดาชายและหญิง
+Output:        |ใน|เกียรติศักดิ์|และ|คุณค่า|ของ|มนุษย์|และ|ใน|สิทธิ|เท่า|เทียม|กัน|ของ|บรรดา|ชาย|และ|หญิง|
+Input: และได้ตกลงใจที่จะส่งเสริมความก้าวหน้าทางสังคม
+Output:        |และ|ได้|ตก|ลงใจ|ที่|จะ|ส่ง|เสริม|ความ|ก้าว|หน้า|ทาง|สังคม|
+Input: และมาตรฐานแห่งชีวิตที่ดีขึ้นด้วยในอิสรภาพ
+Output:        |และ|มาตรฐาน|แห่ง|ชีวิต|ที่|ดี|ขึ้น|ด้วย|ใน|อิสรภาพ|
+Input: อันกว้างขวางยิ่งขึ้น
+Output:        |อัน|กว้าง|ขวาง|ยิ่ง|ขึ้น|
+Input: โดยที่รัฐสมาชิกต่างปฎิญาณจะให้บรรลุถึงซึ่งการส่งเสริมการเคารพและการปฎิบัติตามทั่วสากลต่อสิทธิมนุษยชนและอิสรภาพหลักมูล
+Output:        |โดย|ที่|รัฐสมา|ชิก|ต่าง|ปฎิญาณ|จะ|ให้|บรรลุ|ถึง|ซึ่ง|การ|ส่ง|เสริม|การ|เคารพ|และ|การ|ปฎิบัติ|ตาม|ทั่วสากล|ต่อ|สิทธิ|มนุษยชน|และ|อิสรภาพ|หลัก|มู|ล|
+Input: โดยร่วมมือกับสหประชาชาติ
+Output:        |โดย|ร่วม|มือ|กับ|สหประชา|ชาติ|
+Input: โดยที่ความเข้าใจร่วมกันในสิทธิ
+Output:        |โดย|ที่|ความ|เข้าใจ|ร่วม|กัน|ใน|สิทธิ|
+Input: และอิสรภาพเหล่านี้เป็นสิ่งสำคัญอย่างยิ่ง
+Output:        |และ|อิสรภาพ|เหล่า|นี้|เป็น|สิ่ง|สำคัญ|อย่าง|ยิ่ง|
+Input: เพื่อให้ปฏิญาณนี้สำเร็จผลเต็มบริบูรณ์
+Output:        |เพื่อ|ให้|ปฏิญาณ|นี้|สำเร็จ|ผล|เต็ม|บริบูรณ์|
+Input: ฉะนั้น
+Output:        |ฉะนั้น|
+Input: บัดนี้สมัชชาจึงประกาศว่า
+Output:        |บัด|นี้|สมัชชา|จึง|ประกาศ|ว่า|
+Input: ปฏิญญาสากลว่าด้วยสิทธิมนุษยชนนี้
+Output:        |ปฏิญญา|สากลว่า|ด้วย|สิทธิ|มนุษยชน|นี้|
+Input: เป็นมาตรฐานร่วมกันแห่งความสำเร็จสำหรับบรรดาประชากรและประชาชาติทั้งหลาย
+Output:        |เป็น|มาตรฐาน|ร่วม|กัน|แห่ง|ความ|สำเร็จ|สำหรับ|บรรดา|ประชากร|และ|ประชาชาติ|ทั้ง|หลาย|
+Input: เพื่อจุดหมายปลายทางที่ว่า
+Output:        |เพื่อ|จุดหมาย|ปลาย|ทาง|ที่|ว่า|
+Input: เอกชนทุกคนและองค์การชองสังคมทุกองค์การ
+Output:        |เอกชน|ทุก|คน|และ|องค์|การ|ชอง|สังคม|ทุก|องค์|การ|
+Input: โดยการรำลึกถึงปฏิญญานี้เป็นเนืองนิจ
+Output:        |โดย|การ|รำลึก|ถึง|ปฏิญญา|นี้|เป็น|เนือง|นิจ|
+Input: จะบากบั่นพยายามด้วยการสอนและศึกษา
+Output:        |จะ|บาก|บั่นพยายาม|ด้วย|การ|สอน|และ|ศึกษา|
+Input: ในอันที่จะส่งเสริมการเคารพสิทธิและอิสรภาพเหล่านี้
+Output:        |ใน|อัน|ที่|จะ|ส่ง|เสริม|การ|เคารพ|สิทธิ|และ|อิสรภาพ|เหล่า|นี้|
+Input: และด้วยมาตรการอันก้าวหน้าทั้งในประเทศและระหว่างประเทศ
+Output:        |และ|ด้วย|มาตรการ|อัน|ก้าว|หน้า|ทั้ง|ใน|ประเทศ|และ|ระหว่าง|ประเทศ|
+Input: ในอันที่จะให้มีการยอมรับนับถือ
+Output:        |ใน|อัน|ที่|จะ|ให้|มี|การ|ยอม|รับ|นับ|ถือ|
+Input: และการปฏิบัติตามโดยสากลและอย่างเป็นผลจริงจัง
+Output:        |และ|การ|ปฏิบัติ|ตาม|โดย|สากล|และ|อย่าง|เป็น|ผล|จริง|จัง|
+Input: ทั้งในบรรดาประชาชนของรัฐสมาชิกด้วยกันเอง
+Output:        |ทั้ง|ใน|บรรดา|ประชาชน|ของ|รัฐสมา|ชิก|ด้วย|กัน|เอง|
+Input: และในบรรดาประชาชนของดินแดนที่อยู่ใตัอำนาจของรัฐนั้น
+Output:        |และ|ใน|บรรดา|ประชาชน|ของ|ดิน|แดน|ที่|อยู่|ใตัอำนาจ|ของ|รัฐ|นั้น|
+Input: ๆ
+Output:        |ๆ|
diff --git a/icu4c/source/test/testdata/Thai_graphclust_model4_heavy.txt b/icu4c/source/test/testdata/Thai_graphclust_model4_heavy.txt
new file mode 100644 (file)
index 0000000..e0b50fa
--- /dev/null
@@ -0,0 +1,13509 @@
+// © 2021 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+Thai_graphclust_model4_heavy:table(nofallback){
+    model{"Thai_graphclust_model4_heavy"}
+    type{"graphclust"}
+    embeddings:int{16}
+    hunits:int{23}
+    dict{
+        "า",
+        "น",
+        "อ",
+        "ง",
+        "เ",
+        " ",
+        "ก",
+        "ร",
+        "ย",
+        "ม",
+        "ว",
+        "ะ",
+        "ห",
+        "ไ",
+        "แ",
+        "บ",
+        "ล",
+        "ด",
+        "ใ",
+        "ค",
+        "จ",
+        "ป",
+        "ส",
+        "ที่",
+        "ต",
+        "ข",
+        "พ",
+        "ท",
+        "ด้",
+        "ม่",
+        "\"",
+        "ว่",
+        "ป็",
+        "โ",
+        "มี",
+        "ช",
+        "ห้",
+        ".",
+        "กั",
+        "ต่",
+        "รั",
+        "ก็",
+        "ณ",
+        "ล้",
+        "ข้",
+        "ล่",
+        "ลั",
+        "ต้",
+        "ถ",
+        "นี้",
+        "ทำ",
+        "ย่",
+        "วั",
+        "ษ",
+        "ผ",
+        "ๆ",
+        "ศ",
+        "ยู่",
+        "น้",
+        "ภ",
+        "ติ",
+        "ผู้",
+        "ดี",
+        "รื",
+        "ญ",
+        "รี",
+        "ร้",
+        "ช่",
+        "ธ",
+        "ริ",
+        "ตั",
+        "นั้",
+        "ยั",
+        "ส่",
+        "สี",
+        "กิ",
+        "นั",
+        "รื่",
+        "สั",
+        "มื",
+        "ช้",
+        "ขึ้",
+        "ก่",
+        "จั",
+        "0",
+        "1",
+        "วิ",
+        "ดิ",
+        "ฐ",
+        "ทั้",
+        "มั",
+        "บ้",
+        "ร่",
+        "2",
+        "ซึ่",
+        "ถึ",
+        "พื่",
+        "นิ",
+        "น้ำ",
+        "คุ",
+        "ท่",
+        "น่",
+        "อี",
+        "ดั",
+        "มื่",
+        ")",
+        "(",
+        "บั",
+        "รู้",
+        "จ้",
+        "ว้",
+        "คื",
+        "ทุ",
+        "พั",
+        "ลื",
+        "ม้",
+        "สำ",
+        "5",
+        "สุ",
+        "จำ",
+        "ค่",
+        "พิ",
+        "นำ",
+        "ห็",
+        "ตั้",
+        "จึ",
+        "ดู",
+        "ลู",
+        "ปั",
+        "หั",
+        "สิ",
+        "ณ์",
+        "3",
+        "ปี",
+        "นึ่",
+        "ร์",
+        "-",
+        "กำ",
+        "ที",
+        "ฉ",
+        "ยุ",
+        "อั",
+        "4",
+        "ตุ",
+        "ลิ",
+        "ย์",
+        "ฉั",
+        "ถู",
+        "ด็",
+        "๒",
+        "ผ่",
+        "คำ",
+        "ชี",
+        "ข่",
+        "ถ้",
+        "ชื่",
+        "คั",
+        "รั้",
+        "e",
+        "พื้",
+        "ชุ",
+        "ญ่",
+        "รู",
+        "๑",
+        "ธิ",
+        "นุ",
+        "ท้",
+        "สู",
+        "ปิ",
+        "คิ",
+        "พู",
+        ",",
+        "a",
+        "ก้",
+        "ทั",
+        "ค้",
+        "?",
+        "มิ",
+        "ห่",
+        "i",
+        "ฟ",
+        "บุ",
+        "ล็",
+        "ญิ",
+        "รุ",
+        "งิ",
+        "นั่",
+        "o",
+        "ซ",
+        "๐",
+        "ชิ",
+        "จุ",
+        "ดำ",
+        "ขั",
+        "พี",
+        "6",
+        "n",
+        "ลุ่",
+        "พ่",
+        "t",
+        "ลี่",
+        "ตำ",
+        "ผิ",
+        "อ่",
+        "สิ่",
+        "r",
+        "ร็",
+        "กี่",
+        "อุ",
+        "ฯ",
+        "สื",
+        "ฎ",
+        "๕",
+        "อื่",
+        "9",
+        "ค์",
+        "บิ",
+        "นี่",
+        "7",
+        "ฝ",
+        "๓",
+        "ฏิ",
+        "8",
+        "ฒ",
+        "น์",
+        "s",
+        "อ้",
+        "ฝ่",
+        "นื่",
+        "ทั่",
+        "ศั",
+        "มู",
+        "ยื",
+        "พิ่",
+        "ธี",
+        "ป่",
+        "ยิ",
+        "อำ",
+        "ศึ",
+        "บ่",
+        "ชั",
+        "ป้",
+        "ฤ",
+        "ถื",
+        "l",
+        "๔",
+        "ลุ",
+        "นี",
+        "สื่",
+        "ณี",
+        "ดื",
+        "ย้",
+        "สั่",
+        "ภั",
+        "ลำ",
+        "ว์",
+        "อิ",
+        "นุ่",
+        "มุ",
+        "ผ้",
+        "c",
+        "พี่",
+        "ขี",
+        "ยิ่",
+        "ริ่",
+        "ลื่",
+        "ลี้",
+        "ฟั",
+        "ฟ้",
+        "สึ",
+        "ต์",
+        "ลี",
+        "ชั้",
+        "พื",
+        "!",
+        "นึ",
+        "u",
+        "กุ",
+        "พ์",
+        "ส้",
+        "สู่",
+        "ถุ",
+        "ซื้",
+        "มั่",
+        "ง่",
+        "ธุ์",
+        "นู",
+        "ภู",
+        "นื้",
+        "ตี",
+        "มู่",
+        "ชื้",
+        "รุ่",
+        "ต็",
+        "m",
+        "นื",
+        "บี",
+        "ทิ",
+        "h",
+        "ซี",
+        "d",
+        "ย็",
+        "ห์",
+        "ข็",
+        "ชี้",
+        "ธ์",
+        "ผั",
+        "สื้",
+        "๖",
+        "ชั่",
+        "จิ",
+        "ซิ",
+        "๘",
+        "ท์",
+        "คู่",
+        "ยิ้",
+        "ฏ",
+        "จ็",
+        "ษั",
+        "ตู",
+        "จ่",
+        "ศิ",
+        "รึ",
+        "p",
+        "ถ่",
+        "ลึ",
+        "๙",
+        "๗",
+        "พุ",
+        "ฮ",
+        ":",
+        "g",
+        "ด่",
+        "ขั้",
+        "สิ้",
+        "กี",
+        "ยื่",
+        "ซ้",
+        "ต่ำ",
+        "วี",
+        "หิ",
+        "ถิ่",
+        "อ็",
+        "ดุ",
+        "กื",
+        "พ้",
+        "ฆ",
+        "ธุ",
+        "บู",
+    }
+    data:intvector{
+        1022389126,
+        1067251134,
+        -1073298609,
+        1084522537,
+        -1118974035,
+        -1113849258,
+        1017677956,
+        1003942845,
+        -1128137457,
+        -1106745766,
+        -1121591513,
+        1081715487,
+        -1160773200,
+        983284104,
+        996444050,
+        1040931358,
+        -1102594288,
+        1041068351,
+        -1117156308,
+        1048763822,
+        1052063507,
+        -1095517424,
+        1025198600,
+        -1111586221,
+        1023583435,
+        1038210699,
+        1025665246,
+        1045239867,
+        1052854629,
+        1028029035,
+        -1130359118,
+        -1084587469,
+        -1113607735,
+        1038640454,
+        -1115640705,
+        1019854654,
+        -1100191095,
+        -1113138990,
+        -1122162195,
+        1038173258,
+        -1103889257,
+        1035578006,
+        -1111880739,
+        1016167278,
+        993663504,
+        -1106012803,
+        1041057636,
+        1059184655,
+        1039731968,
+        1049553679,
+        -1110833391,
+        1064786229,
+        1042739722,
+        -1104274168,
+        -1103707718,
+        -1121830245,
+        1044006212,
+        1047028787,
+        1057010133,
+        1051941722,
+        1069353836,
+        1037909304,
+        -1132299692,
+        -1102988690,
+        -1105201510,
+        -1083913607,
+        1067326521,
+        -1082464066,
+        -1077014153,
+        1052819874,
+        1054293710,
+        1038150002,
+        -1065289217,
+        1017665917,
+        -1090350225,
+        1036135834,
+        1053683078,
+        -1074902006,
+        1051370600,
+        1029803694,
+        -1055513148,
+        -1098457250,
+        -1069170350,
+        -1084840380,
+        1091272482,
+        1062605510,
+        1051814971,
+        -1055561551,
+        1048591550,
+        1087257952,
+        1084232049,
+        -1088714442,
+        -1072640372,
+        1081032624,
+        1047651008,
+        1075322291,
+        -1115360846,
+        -1110634075,
+        1035518506,
+        1041419165,
+        -1113622378,
+        1027633066,
+        1040261513,
+        1019990204,
+        -1141630700,
+        1024160644,
+        -1073990107,
+        1043080313,
+        1063331644,
+        998542050,
+        -1117348381,
+        -1101532131,
+        1060921578,
+        1011895193,
+        -1115120330,
+        -1110646092,
+        -1121361776,
+        1041992091,
+        -1106590224,
+        -1103854023,
+        -1112270157,
+        1036714402,
+        1018710850,
+        -1117854635,
+        -1128921562,
+        -1109253397,
+        -1096280733,
+        -1115534618,
+        1050480529,
+        1025436503,
+        -1106188402,
+        1048394931,
+        1035734714,
+        -1094317578,
+        -1120986377,
+        -1099176311,
+        1043090526,
+        -1110338941,
+        -1105980415,
+        1024570215,
+        -1119991718,
+        -1143114794,
+        1039929364,
+        1008501931,
+        1027253194,
+        -1115969487,
+        1030441640,
+        1026929836,
+        1046448752,
+        -1115510612,
+        -1104087282,
+        1023421141,
+        -1140811960,
+        1045660662,
+        1060626092,
+        -1121173469,
+        -1118911550,
+        1040337304,
+        1044549262,
+        -1112864828,
+        1057280108,
+        1035531520,
+        -1114492687,
+        1039942963,
+        -1104931936,
+        -1085430645,
+        -1101827251,
+        1043955092,
+        -1097611099,
+        -1114945310,
+        1049479203,
+        1052806415,
+        1049808644,
+        -1121876116,
+        -1096392774,
+        1045585367,
+        1031831105,
+        1091422960,
+        -1089326424,
+        1073934820,
+        -1130556357,
+        1040440790,
+        -1060245750,
+        1047934933,
+        -1108345423,
+        1034607819,
+        -1100099689,
+        1076202274,
+        1046016805,
+        1049236000,
+        -1091725034,
+        -1102555399,
+        -1112292306,
+        -1089892967,
+        1054947831,
+        1008074836,
+        -1104578773,
+        -1119391358,
+        1060125262,
+        1056576720,
+        -1068399993,
+        -1069346654,
+        1023778675,
+        -1105007919,
+        -1096898284,
+        -1084621044,
+        -1094030100,
+        1044166152,
+        1032772288,
+        1014724080,
+        1059347843,
+        -1137150312,
+        1041151788,
+        1065480904,
+        1082871750,
+        1077928232,
+        -1080798848,
+        -1096480843,
+        1043814536,
+        -1091853688,
+        -1083580812,
+        -1086276838,
+        1076784946,
+        -1120795612,
+        -1106752746,
+        -1073596733,
+        1061285760,
+        -1097265948,
+        -1098804871,
+        -1129917644,
+        1075017064,
+        1065604638,
+        -1069356686,
+        -1080614681,
+        -1099988799,
+        1049641120,
+        1040423940,
+        -1091442821,
+        1060020096,
+        1032790390,
+        -1114597615,
+        1012268192,
+        -1108519762,
+        1046797086,
+        1033708897,
+        1039129778,
+        1038726421,
+        1043153820,
+        -1142008527,
+        -1136784122,
+        -1083614921,
+        1036266979,
+        1075766245,
+        1021621682,
+        -1092847361,
+        -1080610933,
+        1055933966,
+        1047937868,
+        -1111723827,
+        -1105482073,
+        1035450752,
+        -1114790268,
+        1047805589,
+        -1105890267,
+        1049195277,
+        1027929368,
+        1050592500,
+        -1096094826,
+        -1096454433,
+        -1153026270,
+        -1091733587,
+        1044984589,
+        -1117553538,
+        1046224506,
+        991391852,
+        1033852518,
+        1007440138,
+        -1116380979,
+        -1114694037,
+        1030143406,
+        1049606146,
+        -1111122136,
+        1045604710,
+        1046365980,
+        1078239591,
+        1038380082,
+        1047744829,
+        -1102188114,
+        1026159600,
+        -1098440008,
+        1074638088,
+        -1122822034,
+        1048797602,
+        1057201470,
+        1067614496,
+        1079378854,
+        -1089267293,
+        1063294316,
+        1043692236,
+        1028025728,
+        -1121920755,
+        -1095571863,
+        1076738374,
+        -1120807555,
+        999125231,
+        -1107197460,
+        1042955267,
+        -1113933445,
+        1026563040,
+        1050414338,
+        1050262156,
+        1061357286,
+        -1116489390,
+        -1120862924,
+        1035976754,
+        1004983080,
+        -1129664245,
+        -1108070843,
+        1054627697,
+        1035953146,
+        1024000183,
+        -1099730729,
+        1020266571,
+        1050649735,
+        1037625762,
+        1073136027,
+        -1115183678,
+        -1108596886,
+        -1095420589,
+        -1110908824,
+        1049009843,
+        -1097157612,
+        -1106142932,
+        1041924646,
+        1067008080,
+        -1131796483,
+        -1087991497,
+        1026719933,
+        -1139663232,
+        -1096161133,
+        -1118738392,
+        1042742170,
+        1041409952,
+        1003519884,
+        -1097998285,
+        1041120168,
+        -1084550656,
+        1008948200,
+        1049273181,
+        -1095730157,
+        1046918092,
+        -1132748003,
+        -1097472286,
+        -1117535563,
+        1041421007,
+        -1104465758,
+        -1099594535,
+        1044516018,
+        1045640538,
+        -1113375230,
+        -1103078709,
+        -1104401802,
+        -1060962935,
+        -1093593469,
+        1059333894,
+        -1107339316,
+        1050713471,
+        1049127649,
+        -1087348447,
+        -1095067496,
+        -1079662087,
+        -1090292883,
+        1064292680,
+        1082176310,
+        -1096419465,
+        -1085365514,
+        1054321934,
+        1067051600,
+        1041961381,
+        1039225198,
+        1033767781,
+        1082015490,
+        -1091843100,
+        1062801719,
+        -1123750511,
+        -1138001791,
+        1032292274,
+        1016439434,
+        -1172354176,
+        -1103697441,
+        1044982612,
+        -1102645420,
+        1032158610,
+        -1097155008,
+        -1118913357,
+        1023704189,
+        -1153747839,
+        -1103869704,
+        1063932412,
+        1029483062,
+        1032910664,
+        -1114522025,
+        -1130581966,
+        1046705753,
+        1041000189,
+        1066644846,
+        1018648740,
+        1039339382,
+        -1097978108,
+        -1070241245,
+        -1101839343,
+        -1093511938,
+        -1097998556,
+        -1111822546,
+        1085467699,
+        1026380238,
+        -1104582862,
+        -1089342893,
+        1031933087,
+        -1110641883,
+        -1108616903,
+        1027142951,
+        1040847367,
+        -1123201448,
+        1029604926,
+        1035681286,
+        -1112728041,
+        -1144404148,
+        1040640819,
+        -1128401168,
+        1057730239,
+        1032186954,
+        -1109602776,
+        -1097978738,
+        1045082517,
+        -1112654090,
+        1023940919,
+        1055125694,
+        1046308411,
+        1017244208,
+        -1112592590,
+        -1094637620,
+        -1135612618,
+        -1106212740,
+        -1121402741,
+        -1113983482,
+        1044479138,
+        1014339208,
+        -1096740567,
+        1053670407,
+        -1102133501,
+        -1114465610,
+        1073094087,
+        1074231509,
+        1040845423,
+        1037219027,
+        -1098192676,
+        1058569595,
+        -1098103097,
+        -1095450515,
+        1061168047,
+        -1129086100,
+        1056208494,
+        -1067422008,
+        -1062531727,
+        1044505662,
+        -1089045496,
+        -1130116506,
+        1079581946,
+        1052657340,
+        -1074971461,
+        -1076736916,
+        -1091737464,
+        1067288956,
+        1065745424,
+        1037136683,
+        -1099866656,
+        1083797940,
+        -1076465094,
+        -1097304562,
+        -1081943183,
+        1074336768,
+        -1079717683,
+        -1100752079,
+        1073843764,
+        -1106650010,
+        -1104296084,
+        1035763240,
+        -1112467894,
+        1052002853,
+        -1079903903,
+        1060984976,
+        -1121234236,
+        -1101933751,
+        1057898022,
+        -1064364352,
+        1053127743,
+        1046157899,
+        1064924298,
+        -1118399159,
+        1054774036,
+        -1095872295,
+        -1114838646,
+        1083746977,
+        1045839431,
+        1041441966,
+        1060894422,
+        -1097710819,
+        -1080120815,
+        1043996308,
+        -1089289613,
+        -1094677705,
+        1056814741,
+        -1132112333,
+        -1096088071,
+        1024167686,
+        -1070549094,
+        -1111577886,
+        1040825750,
+        1080502837,
+        -1081968178,
+        -1060502714,
+        1049174873,
+        -1088382260,
+        -1107179080,
+        -1101041901,
+        1033142471,
+        -1119869204,
+        -1114383287,
+        -1084812316,
+        1059558562,
+        -1103489396,
+        -1096533944,
+        1050275514,
+        1055115036,
+        1027523263,
+        -1067016118,
+        -1111669635,
+        -1097984476,
+        1017137404,
+        998926074,
+        -1059192628,
+        1053397070,
+        -1093654978,
+        -1089198085,
+        -1105621616,
+        -1077228236,
+        -1092194636,
+        1073973786,
+        1069506468,
+        -1079769581,
+        -1086284050,
+        1059280797,
+        1066026340,
+        1058919823,
+        1032504205,
+        -1131177853,
+        1071347168,
+        -1113883567,
+        1048935414,
+        1015059818,
+        -1106159995,
+        -1102248646,
+        -1106385043,
+        -1101870598,
+        1032729385,
+        1049278223,
+        1046258510,
+        -1084682746,
+        -1095448370,
+        -1093002821,
+        1015740095,
+        1031542712,
+        -1091802945,
+        1049379104,
+        -1139122912,
+        1053655202,
+        -1068570085,
+        1045773591,
+        -1113640200,
+        1069497917,
+        1067737582,
+        1051238633,
+        -1071275113,
+        1070917396,
+        1056977899,
+        1073815233,
+        -1105571216,
+        -1051968693,
+        -1112451252,
+        -1086510633,
+        1056824376,
+        -1139640639,
+        1035223860,
+        -1132310236,
+        1054473346,
+        1047314472,
+        1035032361,
+        -1119664671,
+        1044191902,
+        -1107142543,
+        1060307588,
+        -1097964197,
+        1048950448,
+        -1111460763,
+        -1116082332,
+        1038854133,
+        -1072852368,
+        1023898172,
+        -1104335899,
+        1090920703,
+        -1114862554,
+        1046330102,
+        1049597756,
+        1058814307,
+        1071502403,
+        1032549421,
+        1042820165,
+        1045269170,
+        -1099020760,
+        -1093649008,
+        -1101934344,
+        1037711174,
+        -1113716179,
+        -1114985058,
+        -1093874974,
+        1058874181,
+        -1116560551,
+        1051989589,
+        -1097179241,
+        1010176853,
+        -1110685542,
+        1066510341,
+        -1095783857,
+        1027268737,
+        1051028128,
+        -1118938058,
+        1046223745,
+        1077127978,
+        -1062203306,
+        -1095071753,
+        -1123778221,
+        1042661923,
+        1039017644,
+        -1099516216,
+        1034066287,
+        1045164678,
+        1050891622,
+        -1072584438,
+        -1087116935,
+        -1127743258,
+        -1100999111,
+        -1106171467,
+        -1080376539,
+        1040266004,
+        1041038860,
+        -1083313167,
+        -1100860432,
+        -1106070658,
+        -1086617880,
+        1072159619,
+        1066137902,
+        -1080687242,
+        1048442842,
+        -1179254336,
+        1073965129,
+        1034690304,
+        -1117828854,
+        -1129386888,
+        1075215199,
+        -1104724990,
+        1044665618,
+        1045351858,
+        1067926581,
+        -1094438352,
+        1048794241,
+        -1094318394,
+        1051789365,
+        -1088196240,
+        1050927398,
+        1031092900,
+        -1097000008,
+        1041539763,
+        1066722614,
+        -1097076672,
+        1054018859,
+        1043773891,
+        1057491760,
+        1045111815,
+        1034416147,
+        -1104176302,
+        1039977063,
+        -1113702492,
+        1026664324,
+        -1120975133,
+        -1109362535,
+        1052147431,
+        -1079827834,
+        -1134287145,
+        -1110376399,
+        -1106309420,
+        1044271324,
+        -1100782234,
+        -1083460469,
+        -1088607100,
+        1015447693,
+        1031901326,
+        -1097574959,
+        1051200607,
+        1055411526,
+        1051955489,
+        1052717886,
+        1068863700,
+        1042339497,
+        -1103492484,
+        -1106670504,
+        -1094179326,
+        1044896027,
+        1050649624,
+        -1082059766,
+        -1121319629,
+        1024510265,
+        -1113475335,
+        1059370703,
+        -1106140955,
+        -1079912584,
+        1045966335,
+        1034709660,
+        -1094918574,
+        -1082374366,
+        1031782616,
+        -1077607172,
+        -1087640684,
+        1052368082,
+        -1088110374,
+        -1100046990,
+        -1123025974,
+        -1111338782,
+        -1104814607,
+        -1098423583,
+        1024772918,
+        1050081804,
+        1041358855,
+        1026507906,
+        1047694933,
+        1057110925,
+        -1083882318,
+        -1100653929,
+        1046039044,
+        -1100614993,
+        1025808432,
+        -1080855680,
+        -1111052706,
+        1042714326,
+        -1111963405,
+        -1109790140,
+        -1076024916,
+        -1083480442,
+        -1112870197,
+        1063731183,
+        1035025260,
+        -1135516598,
+        -1131958046,
+        -1099370418,
+        -1095524867,
+        -1104207077,
+        1031017151,
+        1044681596,
+        -1094980579,
+        -1080761460,
+        -1107846337,
+        -1098057880,
+        1029872329,
+        -1091203961,
+        1056019413,
+        1025097310,
+        -1105812803,
+        -1140473668,
+        -1101191592,
+        1051664216,
+        1055594987,
+        -1117451824,
+        1057936259,
+        -1052165465,
+        -1087861934,
+        -1096313100,
+        -1076016584,
+        -1096946313,
+        1063469637,
+        1077808731,
+        -1082651089,
+        -1074713799,
+        1052325739,
+        -1106042884,
+        -1112513665,
+        1041408487,
+        -1104871098,
+        1088751753,
+        -1090182330,
+        1055495150,
+        -1077017047,
+        -1092478591,
+        -1098332080,
+        -1086750560,
+        1064535604,
+        1057988369,
+        -1082573228,
+        -1092792099,
+        1062925248,
+        1066432504,
+        -1105976949,
+        -1128293664,
+        1033079569,
+        1077359064,
+        -1106944162,
+        1058090631,
+        -1095874246,
+        -1101548746,
+        -1094515052,
+        1010756008,
+        1044815464,
+        -1092319626,
+        1049560143,
+        1042420885,
+        1041340533,
+        -1104087382,
+        1040942862,
+        -1087510896,
+        -1105704094,
+        -1120060650,
+        -1072698314,
+        -1109633863,
+        1030977992,
+        -1097866886,
+        -1096359072,
+        -1105801835,
+        1031922871,
+        1069522226,
+        1068218869,
+        1064015033,
+        -1088809311,
+        1040482952,
+        -1109814799,
+        1034322262,
+        1034057290,
+        -1085228821,
+        1054291679,
+        -1105707888,
+        1042505441,
+        -1073198546,
+        1061728755,
+        -1103782539,
+        1045187643,
+        -1101748360,
+        1067303247,
+        -1121254141,
+        -1091085846,
+        -1095324418,
+        1019914295,
+        -1110798141,
+        1018740467,
+        -1080076869,
+        1040643577,
+        -1089176483,
+        1060125533,
+        1068798206,
+        -1065460687,
+        1027462892,
+        1047935899,
+        -1101284506,
+        -1113437083,
+        -1096793088,
+        1043564588,
+        -1086404633,
+        1055282566,
+        1069928662,
+        -1097380741,
+        1028639919,
+        1054757612,
+        -1105626801,
+        -1088824734,
+        1018115294,
+        -1057282814,
+        -1086180102,
+        1031740724,
+        1064334097,
+        1043662229,
+        -1084729315,
+        1058010322,
+        1064434190,
+        1049256501,
+        1036833778,
+        -1110294183,
+        1102520808,
+        -1125883300,
+        1051360035,
+        1065641062,
+        -1113519747,
+        1016471224,
+        -1102919034,
+        -1107025373,
+        -1143848204,
+        1045304934,
+        -1113942279,
+        1042238648,
+        1042177617,
+        1046344287,
+        1035907492,
+        -1138763462,
+        -1135214067,
+        -1106224370,
+        1033999925,
+        -1089007179,
+        1066391589,
+        1047540654,
+        1071026907,
+        1086139419,
+        1066190758,
+        989913944,
+        1041972710,
+        1042122040,
+        1068982701,
+        -1073267522,
+        1065355820,
+        1078687427,
+        1052185526,
+        -1115586080,
+        -1092157660,
+        -1109651691,
+        -1101688213,
+        1030024320,
+        1025811052,
+        -1106368908,
+        1043278567,
+        -1097985914,
+        1047946781,
+        -1074764627,
+        -1106511321,
+        -1063762067,
+        1036390717,
+        1069886139,
+        -1095435010,
+        1057003812,
+        -1101443109,
+        -1121365002,
+        -1115115521,
+        -1112551763,
+        1028408105,
+        1020719308,
+        -1098647785,
+        1068179037,
+        -1135127949,
+        1048222351,
+        -1101798783,
+        1065492612,
+        -1110953074,
+        -1100202379,
+        -1118545196,
+        1056604854,
+        -1159102376,
+        -1109903855,
+        -1119201408,
+        -1119153632,
+        -1137591912,
+        1048169270,
+        1032430338,
+        1034758462,
+        -1094330559,
+        1067262478,
+        -1081779643,
+        1063924587,
+        1039384358,
+        1058808312,
+        1051207305,
+        1052088697,
+        -1121944519,
+        -1077341522,
+        -1096695519,
+        -1089514639,
+        -1089237587,
+        1068567020,
+        1084670569,
+        -1066628764,
+        -1083538017,
+        -1108724879,
+        1069342412,
+        -1106719362,
+        1016197408,
+        1042183515,
+        1051767767,
+        -1104766450,
+        1045958446,
+        -1094372447,
+        1026000832,
+        -1082605548,
+        -1097468897,
+        1045199926,
+        1044085416,
+        -1090415199,
+        -1098294453,
+        1044526094,
+        1050384655,
+        1023628064,
+        -1100865916,
+        -1078040485,
+        1050711748,
+        -1086836926,
+        1061885010,
+        -1113221797,
+        1043465252,
+        -1088067014,
+        -1099767807,
+        1032786663,
+        -1088460042,
+        -1090131113,
+        1059524169,
+        -1075687938,
+        -1093067773,
+        1048216075,
+        1019741785,
+        -1103857132,
+        -1080782851,
+        -1094274025,
+        -1091574030,
+        1055153955,
+        -1129457544,
+        1041518177,
+        -1108232315,
+        -1115828116,
+        -1112340264,
+        -1103535292,
+        -1106212470,
+        -1102175532,
+        -1109211847,
+        1016682236,
+        -1130716340,
+        1028363560,
+        -1100277528,
+        -1083557477,
+        1054628975,
+        -1144541884,
+        -1102676486,
+        1049426305,
+        1056526020,
+        -1104898594,
+        -1097792273,
+        -1118298461,
+        -1097617641,
+        -1104090432,
+        -1099026858,
+        1022905060,
+        -1081757523,
+        -1071782371,
+        -1110646486,
+        1043943815,
+        1016595900,
+        -1098052581,
+        -1111029962,
+        -1092754333,
+        -1104650305,
+        1033265564,
+        -1106611753,
+        1031192857,
+        -1108196290,
+        1054902078,
+        -1103329200,
+        1021782134,
+        -1093360242,
+        -1152279012,
+        -1088284901,
+        -1114723494,
+        1074889339,
+        -1100454734,
+        1022363638,
+        -1121424374,
+        -1114305424,
+        1041305723,
+        -1120488653,
+        -1149114025,
+        1057868538,
+        1042812650,
+        1049468597,
+        1040277486,
+        -1089593599,
+        -1107007202,
+        1037656113,
+        1054620501,
+        -1064774508,
+        1048315268,
+        1042044168,
+        -1105334446,
+        -1103230173,
+        -1090387219,
+        982528480,
+        -1113889597,
+        1048719235,
+        1033459820,
+        -1090259316,
+        1032988030,
+        -1131086930,
+        1060062502,
+        -1112005671,
+        1040287466,
+        -1076291491,
+        1053786651,
+        1056702608,
+        1021940289,
+        1049113784,
+        -1066443617,
+        -1103494375,
+        -1115863930,
+        -1136799488,
+        -1087993047,
+        -1077215405,
+        -1123360312,
+        -1117488893,
+        -1080691538,
+        -1144327042,
+        -1077216501,
+        1071034597,
+        -1116847375,
+        -1070986943,
+        1069743315,
+        1026058492,
+        1025438728,
+        1038590701,
+        -1120213671,
+        -1095800355,
+        1060255774,
+        -1080151109,
+        1056970875,
+        -1086306989,
+        -1114282162,
+        1054598390,
+        1061623709,
+        -1077688878,
+        1057107855,
+        -1083265044,
+        1059155853,
+        -1105386021,
+        1068221427,
+        -1096348913,
+        1074838269,
+        1068713598,
+        1042630074,
+        -1102684139,
+        1066146082,
+        1054083433,
+        -1105707637,
+        -1101533515,
+        -1078305699,
+        -1085781589,
+        1046100171,
+        -1073038571,
+        1078282369,
+        -1083440158,
+        1038813678,
+        1049101925,
+        1066560449,
+        1050873457,
+        1070387153,
+        1032814391,
+        1058081700,
+        1058287933,
+        1060870696,
+        1060585257,
+        1021640235,
+        -1064726187,
+        -1083735110,
+        -1083286707,
+        -1102293006,
+        1050955345,
+        1055736686,
+        -1119474343,
+        1050085822,
+        -1140591218,
+        994061368,
+        -1093449937,
+        -1106624979,
+        1040842267,
+        1079611273,
+        1040625646,
+        1074960591,
+        -1081595318,
+        -1087487008,
+        -1084207993,
+        -1086268540,
+        -1092503578,
+        1055680820,
+        1060911937,
+        -1081329640,
+        -1098867892,
+        1056382888,
+        1040312233,
+        -1107030053,
+        -1081419030,
+        -1093519303,
+        1055117760,
+        -1101270781,
+        1060510450,
+        1051381383,
+        -1116151218,
+        -1101987856,
+        -1120327394,
+        1042822671,
+        999930816,
+        1065642983,
+        1075020137,
+        -1064515132,
+        -1078399069,
+        1053029813,
+        -1093860790,
+        -1085929067,
+        -1088621951,
+        1084058837,
+        -1102548981,
+        1038543223,
+        -1081436922,
+        1049583389,
+        1041931140,
+        -1163385068,
+        1047688448,
+        1069046426,
+        -1089489688,
+        -1084013931,
+        -1080114557,
+        -1155689352,
+        -1087166984,
+        -1110218761,
+        1021377867,
+        -1099145306,
+        -1087484905,
+        -1074629779,
+        1043570942,
+        -1101928006,
+        1055947645,
+        -1064364012,
+        -1073937192,
+        1041340513,
+        -1088424190,
+        -1068086951,
+        -1086998808,
+        -1095131018,
+        1031389424,
+        -1077573808,
+        -1077312019,
+        -1072301452,
+        1068512505,
+        -1087374540,
+        -1088856487,
+        1058413661,
+        -1104207084,
+        -1104462524,
+        1069138556,
+        1041048044,
+        1075904816,
+        -1079099432,
+        -1090213347,
+        -1094790200,
+        -1093715360,
+        -1089177860,
+        -1085045723,
+        -1098822572,
+        1050772843,
+        1057084755,
+        -1086702285,
+        1054774667,
+        -1102495130,
+        1004113411,
+        1046459425,
+        1090762496,
+        1035914882,
+        -1094090470,
+        -1081216220,
+        1062401813,
+        1041783312,
+        1029970156,
+        -1101882336,
+        1049834620,
+        1058068482,
+        -1083437109,
+        1040603949,
+        1020426122,
+        -1111421049,
+        1058284163,
+        -1091888623,
+        1048398839,
+        1044502887,
+        -1120674962,
+        1036556962,
+        1053076148,
+        -1097885394,
+        -1127031508,
+        1053376810,
+        1058479600,
+        -1064976341,
+        1011958810,
+        -1085954816,
+        1064055442,
+        1024528785,
+        1062008606,
+        1074100087,
+        1066722220,
+        1078826432,
+        -1094281540,
+        1054196716,
+        1032208428,
+        -1089863538,
+        -1093489795,
+        -1086426092,
+        1076544562,
+        -1083666740,
+        -1123392245,
+        1046363283,
+        1012150490,
+        1045535421,
+        1074979147,
+        1074766689,
+        -1107401134,
+        1025231078,
+        1041604626,
+        1058747559,
+        -1078873659,
+        -1097191827,
+        -1112017505,
+        1047474415,
+        1058023215,
+        -1063225199,
+        -1100296221,
+        -1107009693,
+        -1101238878,
+        1040686337,
+        -1087784548,
+        -1082169969,
+        1049148712,
+        1074325422,
+        -1064787515,
+        -1083014586,
+        1040517690,
+        -1105277421,
+        -1112452062,
+        -1125416254,
+        1028710391,
+        1013852066,
+        -1081986965,
+        -1083747441,
+        1048744238,
+        -1113946568,
+        1075188744,
+        1070525883,
+        1031858443,
+        -1087381608,
+        -1128359983,
+        1042594144,
+        1066515390,
+        -1083885761,
+        -1068676680,
+        -1107563280,
+        -1078350682,
+        -1089513526,
+        -1118172822,
+        1041920251,
+        -1098047329,
+        1046061006,
+        1048739457,
+        -1090092842,
+        -1074260161,
+        1050699109,
+        1066258082,
+        -1081622183,
+        -1075132670,
+        -1106961637,
+        -1093300564,
+        1038184035,
+        -1105885052,
+        1053579110,
+        -1130378266,
+        -1134283841,
+        -1100397615,
+        -1115981048,
+        1009261498,
+        -1088329107,
+        -1072762174,
+        1053779847,
+        1066921918,
+        -1070869349,
+        -1078104211,
+        -1093807783,
+        -1088970151,
+        1059914296,
+        1048129739,
+        1058853571,
+        -1087078639,
+        -1095131245,
+        1048653707,
+        -1104802210,
+        -1090409762,
+        1044261773,
+        1059539610,
+        -1097661566,
+        -1081174282,
+        1048040328,
+        -1118427935,
+        -1107146088,
+        -1098456475,
+        -1077781251,
+        1058736191,
+        1050389565,
+        -1096411903,
+        1035471220,
+        -1098923324,
+        1007436053,
+        -1102200555,
+        -1087259794,
+        1058844497,
+        1042041002,
+        -1086504313,
+        -1081160652,
+        1066999313,
+        -1088651398,
+        -1077738135,
+        -1082799807,
+        1077961108,
+        1034486585,
+        -1092007780,
+        -1109311176,
+        1049404441,
+        -1095456401,
+        -1070720663,
+        1042418628,
+        -1094644206,
+        -1099286532,
+        -1100905264,
+        1044589678,
+        -1080048775,
+        1048862452,
+        1067084954,
+        978634976,
+        -1090703981,
+        -1097044590,
+        -1074077315,
+        1039282474,
+        -1098645960,
+        -1086492817,
+        1046186586,
+        1022952245,
+        -1117721551,
+        -1097585741,
+        1023667086,
+        -1093050526,
+        -1075439504,
+        -1059024690,
+        -1092115159,
+        1049070109,
+        1064746073,
+        -1081563224,
+        -1098288658,
+        1021503268,
+        -1117647479,
+        -1150841469,
+        -1097872092,
+        -1090059244,
+        -1073156631,
+        1036246895,
+        1063221391,
+        -1070051522,
+        -1078620339,
+        -1096704551,
+        -1086066286,
+        1059919237,
+        1052486517,
+        1055431489,
+        1045069942,
+        -1104708399,
+        1022534038,
+        -1135723646,
+        -1123421323,
+        -1098878893,
+        -1112252984,
+        1059434567,
+        -1070966283,
+        -1096656934,
+        1059663270,
+        -1150976900,
+        1011628514,
+        -1108845043,
+        -1093353595,
+        -1082082640,
+        1050035584,
+        -1091368438,
+        1029279737,
+        1054727071,
+        -1089731419,
+        -1083904069,
+        1036035678,
+        -1119422910,
+        1050564938,
+        1029971791,
+        1018957670,
+        -1061135082,
+        1053222185,
+        -1119546396,
+        1046888289,
+        -1111836357,
+        -1086566381,
+        -1105411448,
+        1053660504,
+        -1105982782,
+        -1114012008,
+        -1135616604,
+        -1104107103,
+        1039884892,
+        1041603934,
+        1054962344,
+        -1107216307,
+        1052963626,
+        -1092741274,
+        1051020461,
+        -1102515213,
+        -1127591974,
+        1060542359,
+        -1088274951,
+        1067792997,
+        -1096808996,
+        1070805012,
+        1074669144,
+        1067618473,
+        1078788289,
+        1052092567,
+        1063911219,
+        1053676632,
+        1008113906,
+        -1112124864,
+        -1073498836,
+        -1095211312,
+        -1086003281,
+        1058848877,
+        -1073276452,
+        1071565291,
+        -1105974036,
+        1048177056,
+        1073320214,
+        1079072598,
+        1046168386,
+        1059322493,
+        1044768878,
+        1050215138,
+        -1091696333,
+        -1088099624,
+        -1097004828,
+        -1083655114,
+        -1106624701,
+        -1063927784,
+        1040159059,
+        -1089202594,
+        1048804175,
+        1076563441,
+        -1081631040,
+        -1080631019,
+        -1074492891,
+        1035970563,
+        1071255277,
+        1064735702,
+        -1119238833,
+        -1093403187,
+        1079480877,
+        -1081973818,
+        1058296490,
+        1076809948,
+        -1135580635,
+        -1095955591,
+        1057799176,
+        -1075481450,
+        -1088784908,
+        -1084626588,
+        1068164762,
+        -1070920375,
+        -1080364630,
+        -1095602000,
+        -1097049094,
+        -1097858295,
+        -1113057006,
+        -1108683760,
+        -1099739468,
+        -1097577252,
+        -1137452882,
+        -1159088756,
+        -1091787027,
+        -1077809991,
+        -1098057331,
+        1033766380,
+        1040894625,
+        -1093106623,
+        -1087391602,
+        -1092218276,
+        -1123859300,
+        1045118674,
+        -1111403865,
+        1057668305,
+        -1093239459,
+        1036562356,
+        -1081529934,
+        -1096722646,
+        -1118539424,
+        -1103565932,
+        1091237478,
+        -1094890230,
+        1045506286,
+        1019390438,
+        1053541163,
+        1031924657,
+        -1071699584,
+        -1074092135,
+        1050097183,
+        -1092530648,
+        1073911254,
+        1050260954,
+        -1090747588,
+        1069276769,
+        -1103947839,
+        1040709151,
+        1050947694,
+        -1090239971,
+        1078302438,
+        1076086000,
+        -1089207949,
+        -1113059450,
+        1035715497,
+        1011328498,
+        1062194325,
+        1040829469,
+        1033547279,
+        -1134041160,
+        -1112382570,
+        -1120738699,
+        1026786253,
+        1035246655,
+        -1086626374,
+        1038319041,
+        1057381051,
+        -1115333070,
+        1048761924,
+        1051094867,
+        -1059968689,
+        1035207794,
+        1043830983,
+        1044211614,
+        -1106211021,
+        1042451792,
+        -1084034947,
+        1059567085,
+        1009662771,
+        1056516006,
+        -1082892932,
+        1021249426,
+        1046660531,
+        1049458923,
+        -1093842422,
+        1032944398,
+        -1078411277,
+        -1089670356,
+        1054040210,
+        -1093148310,
+        1033124048,
+        1047391813,
+        1063411634,
+        1065123025,
+        -1094780260,
+        1055636478,
+        1082306567,
+        1060339562,
+        1068393490,
+        -1131546692,
+        1040300026,
+        1041285256,
+        -1082700214,
+        -1080268847,
+        -1076743779,
+        -1097250505,
+        -1089758894,
+        1055812962,
+        -1073630247,
+        1046738243,
+        -1106538775,
+        1053011131,
+        -1081448810,
+        1079469754,
+        1057164328,
+        1050863660,
+        1051816951,
+        1062978315,
+        1023987344,
+        1060214216,
+        1023464328,
+        1042683198,
+        -1097697353,
+        1063667676,
+        1052695574,
+        -1080519961,
+        1044510184,
+        1044391354,
+        -1081910218,
+        -1090097904,
+        1069841313,
+        -1061400606,
+        -1101263219,
+        1043214598,
+        -1113762125,
+        -1121709895,
+        -1104707272,
+        1059793032,
+        -1087344625,
+        -1104005290,
+        -1072718233,
+        1022941213,
+        -1088036343,
+        -1077932528,
+        -1111953107,
+        1044616552,
+        1071379958,
+        -1115723260,
+        -1074288004,
+        -1078402557,
+        1036231939,
+        1040697180,
+        -1096936479,
+        1045800857,
+        1057473704,
+        -1095944258,
+        -1109317274,
+        -1099905481,
+        -1107475077,
+        1045950125,
+        1082629558,
+        -1087208697,
+        1023595688,
+        1058623368,
+        -1130859401,
+        -1102880744,
+        -1101202268,
+        -1080464601,
+        1070391727,
+        -1092421463,
+        1049704729,
+        -1091689147,
+        -1132831921,
+        1050371674,
+        1038904388,
+        -1087953126,
+        -1079529841,
+        1038947934,
+        -1093515926,
+        -1063516773,
+        1035470630,
+        -1084743680,
+        1041190296,
+        1065269370,
+        1086996453,
+        1059471782,
+        -1079485033,
+        -1094032790,
+        1067053282,
+        -1057454671,
+        1074287772,
+        -1104587865,
+        1035138928,
+        1051332492,
+        1050380010,
+        1051411572,
+        1050975287,
+        1043239463,
+        1078123394,
+        -1089332205,
+        1035551450,
+        1042307927,
+        -1089154986,
+        1040414764,
+        -1068923278,
+        1073401311,
+        -1108867508,
+        1052250354,
+        -1080230054,
+        1027239769,
+        1063368447,
+        -1096785651,
+        -1097894006,
+        1031287900,
+        -1103942036,
+        -1106118231,
+        -1114783765,
+        1061765579,
+        -1072477148,
+        -1111010687,
+        -1096109791,
+        1046858986,
+        1044017949,
+        1025040006,
+        1051357746,
+        1060779470,
+        1048769097,
+        -1121926305,
+        -1104991672,
+        1048914712,
+        -1100444382,
+        -1100196098,
+        -1094832222,
+        1042436138,
+        1032240215,
+        1020306676,
+        -1087675260,
+        -1113161926,
+        -1100728550,
+        -1110266198,
+        1070475064,
+        1067663401,
+        -1092270334,
+        -1087302179,
+        -1089838337,
+        1036712510,
+        -1102749878,
+        -1087219692,
+        -1088475152,
+        1061467054,
+        1052043441,
+        -1129951534,
+        -1105445527,
+        -1101711751,
+        1033952341,
+        1058753786,
+        1053430291,
+        1085188845,
+        -1096385218,
+        1071507316,
+        -1106741441,
+        -1089013821,
+        -1111135393,
+        -1097679347,
+        -1086726324,
+        -1076881663,
+        -1140034942,
+        -1095498970,
+        -1091302480,
+        -1097693923,
+        -1094743091,
+        1049893297,
+        -1105833899,
+        1057311247,
+        -1104462179,
+        1060713290,
+        1032001744,
+        -1088529794,
+        1053205938,
+        1050424000,
+        -1134676428,
+        1070294285,
+        -1063993272,
+        -1076883289,
+        -1102920805,
+        1072457608,
+        -1096071911,
+        -1092808923,
+        1090723381,
+        1066722129,
+        1082782575,
+        -1080956700,
+        1040431207,
+        -1090873842,
+        -1066053135,
+        -1085080784,
+        -1056740305,
+        -1087743925,
+        1076474418,
+        -1101755208,
+        1045840181,
+        -1089425895,
+        -1109495501,
+        1043207603,
+        -1083851953,
+        -1074809209,
+        1054337585,
+        1065718430,
+        -1070373502,
+        -1075241237,
+        -1099975529,
+        -1086993843,
+        1061350818,
+        -1151145104,
+        1059708713,
+        1006604424,
+        1048152729,
+        -1112936784,
+        1020134845,
+        -1103491697,
+        -1070529412,
+        1077529577,
+        1056407889,
+        -1086034553,
+        -1057457079,
+        1054065994,
+        1040348105,
+        -1072776928,
+        1052353615,
+        1085979700,
+        1053912462,
+        -1084056406,
+        -1092723091,
+        1058731302,
+        1037981552,
+        -1095669415,
+        1063224549,
+        -1096780390,
+        1053763301,
+        -1092119763,
+        1058915573,
+        -1088664874,
+        -1107171186,
+        -1073526758,
+        1057978966,
+        1065944966,
+        1058334202,
+        -1095173975,
+        -1108666529,
+        1064140367,
+        1041084942,
+        1050541034,
+        -1096634275,
+        -1094844936,
+        1057451762,
+        1058044390,
+        1062111381,
+        -1095518263,
+        1049290892,
+        1031030184,
+        1056170832,
+        1073545760,
+        -1057131706,
+        -1094296520,
+        -1091768874,
+        1072506057,
+        -1106432754,
+        -1098382399,
+        -1084323511,
+        1085396225,
+        1043576319,
+        -1102904245,
+        -1083319795,
+        -1103316872,
+        -1086492015,
+        -1087483117,
+        -1069227130,
+        -1088647131,
+        1051497986,
+        -1108251259,
+        -1112687730,
+        -1081546339,
+        -1093463052,
+        1050442565,
+        1072657247,
+        -1083769760,
+        -1104380802,
+        1064886481,
+        1055507322,
+        1060802572,
+        -1095173729,
+        -1155157402,
+        1094615971,
+        -1081689268,
+        1055455263,
+        -1124602770,
+        -1088631331,
+        -1077251231,
+        -1098200196,
+        1058459289,
+        -1061502972,
+        -1090820838,
+        1051861547,
+        -1075703266,
+        1035777193,
+        1044377255,
+        1033150069,
+        1055673800,
+        -1103282953,
+        -1084246178,
+        -1081821420,
+        -1097858027,
+        -1096643095,
+        -1094739414,
+        1049060956,
+        1022688388,
+        1071347871,
+        1069601398,
+        1067908736,
+        -1125540288,
+        -1089491961,
+        -1086473176,
+        -1093090919,
+        -1106243181,
+        -1087677601,
+        -1073546101,
+        1050495592,
+        1036800908,
+        -1106805144,
+        1062320147,
+        -1101568190,
+        1065042644,
+        1072865495,
+        1065744948,
+        1079347161,
+        -1095946298,
+        1054807603,
+        1053183241,
+        1033970566,
+        -1105931435,
+        -1074160655,
+        -1107426517,
+        -1089237907,
+        -1082655148,
+        1030370394,
+        -1103346274,
+        1032313432,
+        1056312466,
+        1088683838,
+        -1086252531,
+        -1121709795,
+        1058684283,
+        -1097976793,
+        -1101002198,
+        -1098599302,
+        -1072278629,
+        1074740017,
+        -1088540543,
+        1057076773,
+        1041205108,
+        -1100981508,
+        -1119747878,
+        -1097454000,
+        1039723284,
+        -1101651004,
+        1023810744,
+        1053783821,
+        -1093313451,
+        -1086539655,
+        1043513795,
+        -1078452864,
+        -1106418037,
+        -1104985440,
+        -1096324864,
+        -1082658694,
+        -1073225044,
+        -1082358609,
+        1075680230,
+        -1097181557,
+        -1072025691,
+        1023842998,
+        1055895899,
+        1067648620,
+        -1073245720,
+        -1080610746,
+        -1096775654,
+        -1081611526,
+        -1100279739,
+        -1068996425,
+        1059080934,
+        1029614587,
+        -1074146570,
+        -1114338292,
+        -1080957099,
+        -1081982087,
+        1073860220,
+        -1091868575,
+        -1101328787,
+        -1073800081,
+        1066329418,
+        1068799274,
+        1073838155,
+        -1065202645,
+        -1089793084,
+        1077564694,
+        -1090341883,
+        1061334776,
+        1032038502,
+        1031272050,
+        -1165778336,
+        1051562239,
+        1036328740,
+        1069638379,
+        1048281413,
+        1057443471,
+        -1090181698,
+        -1080562347,
+        1029212198,
+        -1065435214,
+        -1097266534,
+        -1083856011,
+        -1099685383,
+        1041987521,
+        -1105042659,
+        1038821836,
+        -1111251434,
+        1053042672,
+        -1093318835,
+        -1089040772,
+        -1075925199,
+        1035538951,
+        1065856278,
+        -1073952912,
+        -1073900187,
+        -1099681774,
+        -1086918522,
+        1062370024,
+        -1110436973,
+        1060318087,
+        -1084027081,
+        -1068816104,
+        1066342155,
+        1031252577,
+        -1089848033,
+        1067902436,
+        1030585588,
+        1032216069,
+        1061930346,
+        -1081369427,
+        1037831893,
+        -1100939652,
+        -1080684484,
+        1043316542,
+        -1079793048,
+        1060194061,
+        -1172315120,
+        1040411683,
+        -1098613260,
+        1022194152,
+        1052751985,
+        -1087598955,
+        -1074990859,
+        1052327407,
+        1061653786,
+        -1074136652,
+        -1075664750,
+        -1096977443,
+        -1087029056,
+        1060327991,
+        1054570249,
+        1058773359,
+        1074417795,
+        1057865836,
+        -1059797830,
+        1083387342,
+        1069756706,
+        -1079701970,
+        -1074172006,
+        -1074246993,
+        1067052129,
+        -1096745025,
+        -1065578626,
+        1092776373,
+        1094443328,
+        1056892631,
+        1075073941,
+        -1068521399,
+        -1080951911,
+        1040340138,
+        -1098265623,
+        -1094670334,
+        1066911766,
+        1088244616,
+        -1088509675,
+        -1104988034,
+        1061020372,
+        -1115885178,
+        -1099638654,
+        -1081564375,
+        -1071565879,
+        1049977861,
+        -1080525591,
+        -1101700451,
+        -1076559418,
+        -1083520886,
+        1071720638,
+        -1075591534,
+        -1082125312,
+        1063432964,
+        1054370445,
+        1035411359,
+        -1071772195,
+        -1110612310,
+        -1072985382,
+        -1097895656,
+        1064133001,
+        -1080047419,
+        1055699512,
+        1050008843,
+        1048732097,
+        1026366608,
+        -1083325783,
+        -1095139957,
+        -1123929692,
+        -1083823152,
+        -1090559409,
+        1073509671,
+        -1064994210,
+        -1092686772,
+        1056938533,
+        -1089569561,
+        -1102865778,
+        -1081005289,
+        1051880080,
+        -1079216193,
+        1065334459,
+        1065308546,
+        -1079732848,
+        1080631662,
+        1033763718,
+        -1101744891,
+        -1128493598,
+        -1081586680,
+        1058110723,
+        -1094634651,
+        -1112541847,
+        -1082076328,
+        -1126783154,
+        -1101873836,
+        1070209117,
+        1050368351,
+        -1081176050,
+        -1107832914,
+        1046358156,
+        1014780230,
+        -1071384973,
+        -1097017776,
+        1041980173,
+        1045672696,
+        -1100424164,
+        1052741603,
+        -1106794172,
+        -1091407698,
+        -1095955670,
+        1016421881,
+        -1111403134,
+        1021637170,
+        -1096580653,
+        -1095278984,
+        1049084723,
+        1048748560,
+        -1090638059,
+        1076004063,
+        1067168468,
+        1030388512,
+        -1098546675,
+        1072516400,
+        -1111587816,
+        -1089715135,
+        1059333821,
+        -1089898828,
+        1076142098,
+        1063403595,
+        -1128200688,
+        1023945766,
+        1042553137,
+        -1124954412,
+        1024191183,
+        1050704684,
+        -1088296928,
+        -1084214551,
+        1069103608,
+        -1121889002,
+        1043652690,
+        -1101447583,
+        -1096040769,
+        1054342471,
+        -1097086635,
+        -1102053330,
+        -1104819127,
+        1036498396,
+        -1100240982,
+        1041441742,
+        -1131415068,
+        -1085609324,
+        -1073191592,
+        -1144455982,
+        1067476444,
+        -1074334373,
+        -1075868943,
+        -1103232832,
+        -1086136585,
+        1057790504,
+        -1106851119,
+        1056362850,
+        1050021897,
+        -1093686713,
+        1031101228,
+        1044809287,
+        1019104561,
+        -1091229316,
+        1044988328,
+        1055847189,
+        -1097350623,
+        1056923775,
+        -1094382724,
+        -1094978650,
+        -1077485551,
+        1035929302,
+        1063046765,
+        -1091809927,
+        -1083453763,
+        -1089874578,
+        1052147378,
+        -1085327816,
+        -1088561115,
+        1068362805,
+        1075942249,
+        1077055440,
+        -1081464256,
+        1047230850,
+        -1081938448,
+        -1074369005,
+        -1082566850,
+        -1105669021,
+        1070080298,
+        1060924244,
+        1060914023,
+        -1103895289,
+        1024231768,
+        -1097619894,
+        -1108738610,
+        -1098211911,
+        1042978540,
+        -1101129486,
+        1024774085,
+        1047652906,
+        -1096119728,
+        1042719719,
+        1057748205,
+        1052295199,
+        1019656094,
+        -1086444406,
+        1061718234,
+        -1098132864,
+        -1112095602,
+        -1090259805,
+        -1089251898,
+        1043367862,
+        -1121177480,
+        1068880559,
+        -1080588832,
+        -1080796173,
+        -1085757384,
+        -1134376294,
+        -1097065108,
+        1027726329,
+        -1091009964,
+        1056335077,
+        -1075869227,
+        -1096312609,
+        1053610293,
+        1015968838,
+        1082471283,
+        1057238229,
+        -1115944090,
+        -1076103737,
+        -1119110862,
+        1056687130,
+        1070201866,
+        -1075393952,
+        -1085533074,
+        -1097628270,
+        -1077030758,
+        -1134517554,
+        1065339855,
+        -1113062046,
+        -1126049056,
+        1069525231,
+        1047621839,
+        -1081762072,
+        -1084643224,
+        -1091678393,
+        1062097323,
+        -1083992020,
+        -1095183870,
+        1067457236,
+        1066075302,
+        1059842340,
+        1061321944,
+        -1072418702,
+        -1138517444,
+        -1088933577,
+        1040796077,
+        1044381695,
+        1063901715,
+        -1085435665,
+        1059148431,
+        1078874491,
+        -1072215103,
+        1060712533,
+        1067980193,
+        -1099614486,
+        1043527088,
+        -1095459320,
+        1073892704,
+        -1110885517,
+        1058710770,
+        -1081847143,
+        1061208730,
+        -1098689188,
+        1058139214,
+        -1099441204,
+        -1097345294,
+        -1114304002,
+        1058720040,
+        -1083699038,
+        1012118298,
+        -1061289021,
+        -1070998997,
+        -1106351767,
+        -1091788093,
+        1035033481,
+        1036963302,
+        -1112847832,
+        -1070060596,
+        -1097213462,
+        -1072329917,
+        -1084698408,
+        -1087208197,
+        -1094559612,
+        -1068632608,
+        -1067017497,
+        -1119733552,
+        -1082198260,
+        -1074121800,
+        1059568086,
+        1059034994,
+        -1086785829,
+        -1106341192,
+        1058041328,
+        1042025266,
+        -1106153562,
+        1033721377,
+        1057370618,
+        -1082785876,
+        -1098307622,
+        -1085679876,
+        1041262590,
+        1053981171,
+        -1085116360,
+        1033075374,
+        1059339696,
+        1067326250,
+        -1064982199,
+        -1103350865,
+        -1103226645,
+        -1105364306,
+        -1082487914,
+        1044890337,
+        1084511183,
+        -1083805307,
+        -1093119714,
+        1066317031,
+        1052124795,
+        1052035662,
+        1008843602,
+        -1088429766,
+        1074445946,
+        -1089636553,
+        1065850233,
+        -1110146130,
+        1048969492,
+        1046531797,
+        -1113245045,
+        1033076962,
+        1073935023,
+        1054202697,
+        1055314926,
+        -1090312474,
+        -1081637653,
+        -1119965972,
+        -1085248861,
+        -1078604267,
+        -1098020082,
+        1055752670,
+        1053266780,
+        -1138162704,
+        1017771187,
+        -1124304587,
+        1026703648,
+        1055271401,
+        -1103581204,
+        1023893561,
+        1022419569,
+        -1097429751,
+        -1120698721,
+        -1080409269,
+        -1090167070,
+        1061784756,
+        1032190545,
+        1060363522,
+        1037140116,
+        1037682082,
+        -1083720754,
+        1048814394,
+        1024026925,
+        1058952410,
+        -1081659079,
+        1027889332,
+        1032938943,
+        -1122406745,
+        -1087648736,
+        1053163078,
+        -1084751705,
+        -1071627190,
+        1056423864,
+        1053746767,
+        -1070830777,
+        -1115106256,
+        -1084265615,
+        1078926189,
+        -1129895546,
+        1061887016,
+        -1101227946,
+        1023199165,
+        1066839890,
+        1063155064,
+        -1083238384,
+        1043447123,
+        -1078654544,
+        -1097635443,
+        1054270324,
+        1072132815,
+        -1080306967,
+        -1095318209,
+        -1087145462,
+        -1080553188,
+        -1090863406,
+        1055400074,
+        -1097861701,
+        1060499448,
+        1074221713,
+        -1080658034,
+        -1078909315,
+        -1088756315,
+        -1124733485,
+        1025430326,
+        1030622701,
+        1066338488,
+        1033271182,
+        1061452841,
+        -1103303589,
+        1020432068,
+        -1112593950,
+        -1101060978,
+        -1079407500,
+        -1091872404,
+        1058751084,
+        -1087224744,
+        -1100080172,
+        1039775739,
+        -1086750997,
+        -1107073969,
+        -1095960529,
+        -1081161980,
+        -1079464508,
+        1066968550,
+        1045340435,
+        -1110527038,
+        1062222043,
+        -1088707402,
+        -1076770303,
+        -1087331334,
+        -1091261253,
+        -1096044961,
+        -1078147268,
+        -1087104832,
+        1060152742,
+        -1096244398,
+        1066470572,
+        -1106458313,
+        1034077930,
+        -1101516648,
+        1034114546,
+        -1101361450,
+        1041673599,
+        -1093195996,
+        -1092215090,
+        -1071310593,
+        1017177119,
+        1068625780,
+        -1073927045,
+        -1076208532,
+        -1102159824,
+        -1088778985,
+        1063492075,
+        1039935666,
+        1060684926,
+        -1074390804,
+        1064637928,
+        1068541583,
+        -1077589716,
+        -1099699596,
+        1107934289,
+        1068152882,
+        1080184752,
+        -1097466401,
+        1075719820,
+        -1087633518,
+        -1073627231,
+        1028884967,
+        -1081100762,
+        1052997655,
+        1079756735,
+        -1138754338,
+        -1075667905,
+        1066353970,
+        -1102703211,
+        -1115384042,
+        1075464773,
+        1066715118,
+        1063482852,
+        -1102635924,
+        1059224528,
+        -1119640042,
+        -1096482991,
+        -1109540933,
+        -1078042718,
+        -1123466528,
+        1039665011,
+        -1102772035,
+        1055328115,
+        -1097715079,
+        1066823762,
+        -1106702957,
+        1036411096,
+        1030588645,
+        -1136413630,
+        1056977498,
+        1050974936,
+        -1088735221,
+        1043650611,
+        1074981547,
+        1010211888,
+        -1106414910,
+        -1084307568,
+        -1116302865,
+        -1120249702,
+        -1101963321,
+        -1097111195,
+        -1118457408,
+        1071001821,
+        1049948670,
+        -1122962736,
+        1061799543,
+        -1088228560,
+        -1098406185,
+        -1073215934,
+        -1081311131,
+        -1103947762,
+        -1090225750,
+        -1103175276,
+        1057158663,
+        1044698359,
+        1053481128,
+        1061465526,
+        -1078133618,
+        1064087779,
+        -1084122198,
+        -1077811964,
+        -1090421349,
+        -1082725514,
+        -1124819532,
+        1062484653,
+        1068524509,
+        -1140209548,
+        -1113700341,
+        1067009486,
+        -1086443757,
+        1034759119,
+        -1065049479,
+        1067255382,
+        -1087008393,
+        -1082320470,
+        -1121299632,
+        -1077419552,
+        -1078815504,
+        -1091513260,
+        -1092498726,
+        1066167555,
+        1085306251,
+        -1073694642,
+        -1088820891,
+        1088790705,
+        -1080264753,
+        -1092002755,
+        -1095716721,
+        -1095242590,
+        -1073415692,
+        1024129048,
+        -1108776420,
+        1029992310,
+        1068140425,
+        -1081643244,
+        -1085513083,
+        -1089441990,
+        1062348875,
+        1059941786,
+        -1095285624,
+        -1086890475,
+        1052798751,
+        -1103471177,
+        -1110165482,
+        1053298386,
+        1060037824,
+        1069232585,
+        1072368498,
+        1074325579,
+        -1094643514,
+        -1089011701,
+        -1094720745,
+        -1080363012,
+        1082194541,
+        1041954308,
+        1076791675,
+        -1080827594,
+        1056245082,
+        -1095309338,
+        1058775007,
+        1032282996,
+        1044435428,
+        -1078385674,
+        1049803477,
+        1050111947,
+        1065115629,
+        -1079272433,
+        1048573653,
+        -1081663553,
+        -1076641866,
+        -1148780406,
+        -1087935174,
+        -1086405309,
+        -1077855917,
+        1040317471,
+        -1088270683,
+        -1077551502,
+        1077828300,
+        1079763752,
+        -1096458326,
+        -1089683328,
+        1080200441,
+        1082453389,
+        1048817306,
+        -1146756708,
+        1044061615,
+        1092079183,
+        -1087975737,
+        -1094773078,
+        1042370976,
+        -1080554586,
+        1063807294,
+        -1095561883,
+        1045039598,
+        -1095969371,
+        1069126713,
+        1050994829,
+        -1105047029,
+        -1095223006,
+        1014611638,
+        -1079488314,
+        -1060662945,
+        -1086801010,
+        1049317159,
+        -1078240326,
+        1046847186,
+        -1094432265,
+        1031164794,
+        -1116675309,
+        -1112982560,
+        1074660265,
+        1056561975,
+        1045758917,
+        -1100919034,
+        1033553736,
+        -1101868185,
+        1044393030,
+        1049141899,
+        -1147261347,
+        1063041917,
+        -1135791798,
+        1058938059,
+        1032565982,
+        1040769791,
+        1037608199,
+        1052153541,
+        1058764597,
+        -1140617146,
+        1062477356,
+        1034524054,
+        1043804783,
+        1054638300,
+        -1095172011,
+        -1083900726,
+        1033601283,
+        1041771834,
+        -1146771136,
+        1061717829,
+        -1125690505,
+        -1098675622,
+        1059911258,
+        -1089364302,
+        -1080991056,
+        -1090314718,
+        -1085660863,
+        -1077436242,
+        -1087079938,
+        -1084818846,
+        1061000670,
+        -1092914124,
+        1059492189,
+        -1114266934,
+        1057363068,
+        -1084218738,
+        1042470998,
+        1035356196,
+        -1107063377,
+        1036266956,
+        -1080451812,
+        1049514405,
+        1015227879,
+        -1095414699,
+        1061486944,
+        -1085189654,
+        -1077933318,
+        1066356213,
+        1047522946,
+        1055826025,
+        1038304658,
+        1031794544,
+        -1088173233,
+        1050188113,
+        -1097872659,
+        -1121901655,
+        1033486763,
+        1073358258,
+        1067664029,
+        1046834137,
+        -1083402142,
+        -1103308663,
+        -1094716399,
+        -1095138929,
+        -1080321295,
+        -1072184325,
+        -1126935360,
+        -1073382269,
+        -1081480424,
+        -1123432899,
+        -1130992809,
+        -1092277327,
+        -1079053625,
+        1081721953,
+        -1141467879,
+        1064698887,
+        -1095135075,
+        -1086617661,
+        1018941222,
+        -1109968121,
+        1054728187,
+        1054352853,
+        -1101194102,
+        -1096293945,
+        -1098322404,
+        -1096203804,
+        -1089379717,
+        1041105977,
+        1046906254,
+        990179278,
+        -1123048885,
+        1072789275,
+        -1092138418,
+        -1100462251,
+        1037260550,
+        1041588327,
+        1058995072,
+        1061626605,
+        1064139425,
+        1065636324,
+        -1096222604,
+        -1100932172,
+        -1097316689,
+        -1071549882,
+        -1078095726,
+        1063463392,
+        1058556929,
+        1070774109,
+        -1115038827,
+        -1119003205,
+        -1084529251,
+        1073632289,
+        1046750049,
+        1059163491,
+        -1062040554,
+        -1103060941,
+        -1090323135,
+        1045984440,
+        1042964504,
+        1042711503,
+        1041916303,
+        -1096181931,
+        1059998524,
+        -1111522042,
+        -1093869952,
+        1063034780,
+        -1076861621,
+        1073456622,
+        1030860822,
+        1056268521,
+        -1092839751,
+        1062687381,
+        -1095004919,
+        1028536199,
+        -1110429960,
+        -1075035284,
+        -1079771017,
+        -1077343160,
+        -1079912074,
+        -1086789817,
+        -1077435434,
+        -1091417581,
+        1061561615,
+        -1103934145,
+        1061973445,
+        -1104940048,
+        1060248497,
+        -1106230593,
+        -1107431806,
+        1046890528,
+        1030919308,
+        -1095628507,
+        1026355018,
+        -1081620782,
+        1030917676,
+        -1099757289,
+        1047481998,
+        -1123758627,
+        -1098171046,
+        -1075721375,
+        1062623907,
+        1061999985,
+        -1102633247,
+        1044163567,
+        1060407199,
+        -1109279931,
+        -1085482279,
+        -1115618973,
+        1047204417,
+        1018764578,
+        1059548225,
+        -1102890551,
+        -1056589294,
+        -1102925760,
+        1047080040,
+        -1084057185,
+        -1075579325,
+        1076840723,
+        1050066673,
+        1088859550,
+        1025846257,
+        -1087831227,
+        1043580844,
+        -1103284358,
+        -1089796974,
+        -1093519152,
+        -1114447723,
+        -1083456309,
+        -1096405765,
+        -1124509148,
+        1052545180,
+        1050537389,
+        -1098229324,
+        -1089734970,
+        -1098118373,
+        1000737926,
+        -1125221227,
+        -1115191755,
+        -1088591394,
+        -1079671556,
+        -1080656902,
+        1049665349,
+        1072732302,
+        1070909040,
+        -1108966448,
+        -1098469108,
+        -1095460900,
+        1023453948,
+        1031320581,
+        -1098126087,
+        1059771327,
+        1033803288,
+        1047164128,
+        -1077729692,
+        -1105002078,
+        -1100535307,
+        1048722878,
+        1076891586,
+        1046919384,
+        1025235734,
+        -1070309466,
+        -1109047938,
+        -1088536412,
+        -1083411997,
+        -1110329597,
+        1085095348,
+        1061880442,
+        1053155404,
+        -1100606009,
+        1060351424,
+        -1112409095,
+        1075164903,
+        -1107541227,
+        1073064379,
+        1067515178,
+        1064821534,
+        1059855784,
+        1067009810,
+        1051230670,
+        -1122522083,
+        -1074298595,
+        -1086126562,
+        -1085620903,
+        1065648839,
+        -1109932216,
+        -1105438383,
+        1032746351,
+        -1093193913,
+        -1070175728,
+        -1089374088,
+        -1080503676,
+        -1069837835,
+        -1086872453,
+        -1102401564,
+        1056239549,
+        -1126355617,
+        -1090272973,
+        1054032867,
+        1067403802,
+        1035145396,
+        1053776853,
+        -1097854786,
+        1038559624,
+        991179568,
+        1045094702,
+        -1075891852,
+        1032231627,
+        1065804762,
+        -1077389404,
+        -1072472372,
+        -1111236745,
+        -1087632621,
+        1054501023,
+        -1095782627,
+        1056031106,
+        1068294417,
+        -1095625510,
+        -1090494360,
+        1054283900,
+        -1090121099,
+        1049255386,
+        1037405036,
+        1052378271,
+        1066438216,
+        -1098088141,
+        -1081685976,
+        -1101814736,
+        -1075801749,
+        -1171258688,
+        1071568787,
+        -1127765620,
+        -1105397564,
+        -1115228578,
+        -1094008384,
+        -1098934734,
+        1056369164,
+        1062631339,
+        1043782050,
+        1067194739,
+        1056664401,
+        -1081765652,
+        1054972195,
+        1039752061,
+        -1122753413,
+        1037949111,
+        -1100972468,
+        -1099776392,
+        -1094294309,
+        -1080875790,
+        1045332672,
+        -1148205857,
+        -1091424366,
+        1052625175,
+        -1077012362,
+        1057398883,
+        1031171760,
+        -1106205632,
+        -1101813547,
+        -1089069889,
+        -1075711234,
+        1064962663,
+        -1129589298,
+        1059670737,
+        -1127848826,
+        1035720932,
+        -1102970840,
+        1040837285,
+        -1107005618,
+        -1083443928,
+        -1076819055,
+        1040225802,
+        1066042055,
+        -1076564162,
+        -1080397970,
+        -1110483697,
+        -1086920079,
+        1055494624,
+        -1093147187,
+        1055822993,
+        -1101834991,
+        -1130563874,
+        -1088265302,
+        1063720087,
+        1018513490,
+        1078491993,
+        1069105744,
+        1050210857,
+        -1084742767,
+        -1089287945,
+        -1099890380,
+        -1089181407,
+        -1081072954,
+        -1087030387,
+        1057685494,
+        1040765465,
+        -1086750408,
+        1066212825,
+        -1098625692,
+        1064044907,
+        -1064574008,
+        -1081250296,
+        1058581568,
+        -1106795306,
+        -1096097364,
+        1034028806,
+        -1082034821,
+        -1062796057,
+        -1072881250,
+        1070554785,
+        -1076530262,
+        1078332045,
+        1060168774,
+        1037918554,
+        -1096580413,
+        -1093268450,
+        -1087517667,
+        -1083771092,
+        1048744983,
+        -1083080279,
+        1071395705,
+        -1083055735,
+        -1096930838,
+        1043421684,
+        -1076575758,
+        1068647956,
+        1048895396,
+        1063154947,
+        1054560350,
+        1051617311,
+        1038192438,
+        1032929159,
+        -1113812216,
+        -1080549388,
+        -1121847790,
+        1060501244,
+        1044998931,
+        -1104345382,
+        1036202058,
+        1056977561,
+        1052945120,
+        -1077339320,
+        -1088951242,
+        -1083136530,
+        -1089743871,
+        -1117073598,
+        1015728602,
+        1044633101,
+        1077464605,
+        1083805105,
+        1063399359,
+        1071355243,
+        -1096082636,
+        1013233361,
+        1051211244,
+        -1096554527,
+        -1096016276,
+        -1113875048,
+        1022124168,
+        -1063427685,
+        1061625998,
+        -1103895551,
+        1046182156,
+        1052864795,
+        -1081490724,
+        -1075772699,
+        -1084401788,
+        -1087220045,
+        -1090839033,
+        1045895823,
+        -1081946755,
+        -1095988213,
+        1030566285,
+        -1097271599,
+        1065617486,
+        1070497590,
+        -1099661471,
+        1055596399,
+        -1090165723,
+        -1138900960,
+        -1097187712,
+        1042898077,
+        -1111312831,
+        -1081616637,
+        -1112539722,
+        -1103877370,
+        1065914784,
+        -1140006986,
+        1032023297,
+        1045755288,
+        -1083123494,
+        1046514523,
+        -1093874497,
+        -1098608882,
+        1053850966,
+        1015672558,
+        -1122051443,
+        1082943719,
+        -1101985394,
+        1058349512,
+        -1089569774,
+        1042326549,
+        -1095882953,
+        -1085101862,
+        -1083761273,
+        -1108932649,
+        1059243068,
+        1079999545,
+        -1097534600,
+        -1091509526,
+        1059793159,
+        1040225970,
+        1055990635,
+        1093050201,
+        1058736671,
+        -1102194583,
+        -1096755329,
+        -1077660162,
+        1048211227,
+        1040268621,
+        -1089736132,
+        1059714120,
+        -1066095200,
+        -1076841225,
+        -1128326682,
+        -1104205704,
+        -1098434380,
+        -1093188533,
+        -1081082359,
+        -1109407100,
+        -1094804183,
+        1075230030,
+        -1071834026,
+        -1098025800,
+        -1117689641,
+        -1078365194,
+        1052001416,
+        1059879049,
+        1032078421,
+        -1080413190,
+        1058534854,
+        1042879045,
+        1061261749,
+        -1093981358,
+        1032598978,
+        1086754338,
+        1039868144,
+        -1095418562,
+        -1110596885,
+        -1095738374,
+        1068215220,
+        -1097875857,
+        -1066901161,
+        1062236156,
+        -1073071441,
+        -1088197201,
+        1065743664,
+        -1099416350,
+        -1112524159,
+        1062853920,
+        -1084020478,
+        -1076467703,
+        -1089738011,
+        -1089502310,
+        -1120828034,
+        -1081263735,
+        -1083558729,
+        1052221230,
+        -1092943814,
+        1067316915,
+        1040756871,
+        1063637570,
+        -1079813858,
+        -1087656393,
+        -1097149792,
+        -1095548515,
+        1059488034,
+        1060588594,
+        1028367364,
+        -1097669782,
+        -1111949720,
+        1057312029,
+        1063936079,
+        -1083351951,
+        1065866437,
+        1026965869,
+        1028594057,
+        1062215821,
+        1076985310,
+        1068656446,
+        -1063504953,
+        1074287274,
+        1040223436,
+        -1063114370,
+        -1141086876,
+        1054502210,
+        -1122374906,
+        -1089868589,
+        1054967267,
+        1066947385,
+        -1079168091,
+        1043226244,
+        1061514399,
+        1028938145,
+        -1087159145,
+        -1098537747,
+        -1122088176,
+        -1077926853,
+        -1133463471,
+        1055206349,
+        -1103575402,
+        -1083323193,
+        1044145389,
+        1047475260,
+        1053268945,
+        -1114702670,
+        -1076372667,
+        1052511825,
+        -1091955006,
+        1065852543,
+        -1077555402,
+        -1086647759,
+        1057299992,
+        -1082534633,
+        -1080696818,
+        1073858755,
+        1050656659,
+        1067070367,
+        -1063748947,
+        1073392531,
+        -1076751204,
+        -1070356892,
+        1060851785,
+        -1069043451,
+        1051140977,
+        1053037340,
+        -1077198631,
+        -1093327652,
+        -1099127962,
+        -1094384894,
+        -1088084102,
+        -1071796876,
+        1085453446,
+        1044245310,
+        -1087440586,
+        -1093134815,
+        1060747772,
+        1072105156,
+        -1081880032,
+        1058297099,
+        1066138325,
+        1052291799,
+        1040318157,
+        1050852212,
+        -1096754546,
+        1041031452,
+        -1113432246,
+        -1085005790,
+        -1074409826,
+        1044165275,
+        1065668372,
+        -1075242660,
+        -1076020758,
+        -1102375098,
+        -1095500207,
+        1059650756,
+        -1105952028,
+        1058000232,
+        1045804184,
+        1066581347,
+        1054192791,
+        1047277624,
+        -1089102536,
+        1059979951,
+        -1073012864,
+        1031486334,
+        -1097892908,
+        -1110844950,
+        1035810910,
+        1074286669,
+        1060157092,
+        1048760056,
+        -1075407166,
+        1033858398,
+        1050340890,
+        -1089277071,
+        1073519087,
+        1044261254,
+        1074265372,
+        1080428529,
+        1067234084,
+        1081899041,
+        -1081290290,
+        1063763041,
+        1062667144,
+        1032294554,
+        1054327354,
+        -1072485832,
+        1067100250,
+        -1093187513,
+        -1112769654,
+        1047374260,
+        -1103798265,
+        1049994267,
+        -1095904358,
+        -1093996851,
+        -1075963071,
+        1051053420,
+        1066145041,
+        -1075924418,
+        -1077905731,
+        -1155087567,
+        -1089862167,
+        1060744691,
+        -1102698077,
+        1064800118,
+        1068293814,
+        1068447361,
+        -1074272402,
+        1082928320,
+        1061192720,
+        1044962564,
+        -1091153036,
+        -1081650314,
+        1063637969,
+        -1079902614,
+        -1120862986,
+        1074547920,
+        -1089375575,
+        1048933536,
+        1070807677,
+        -1089115396,
+        1049733883,
+        -1073275918,
+        1054973377,
+        -1094434458,
+        1051830075,
+        1052004643,
+        1074587417,
+        1079065627,
+        -1074505071,
+        -1086917116,
+        1072966465,
+        1030980734,
+        1059228561,
+        -1080325018,
+        1076350400,
+        -1085805275,
+        -1145685056,
+        -1090093559,
+        -1087273144,
+        -1108690492,
+        1036701196,
+        1061535985,
+        1071165521,
+        1077300276,
+        -1076528312,
+        1055509825,
+        -1090051414,
+        -1108757472,
+        1042661093,
+        1047853126,
+        1057955247,
+        -1078081243,
+        -1087201057,
+        -1096893965,
+        -1083086488,
+        -1087365214,
+        1066095432,
+        1064029056,
+        -1071151552,
+        1049303848,
+        1059642111,
+        1064778243,
+        1060795370,
+        1039129232,
+        -1085621976,
+        1071138944,
+        -1078994185,
+        -1102355275,
+        -1121919577,
+        1042937493,
+        -1091259583,
+        -1117671828,
+        -1118871619,
+        -1087872845,
+        -1074297985,
+        1056504446,
+        1065476398,
+        -1073077768,
+        -1077486788,
+        -1098297937,
+        -1086356735,
+        1053471242,
+        -1102559384,
+        1050559261,
+        -1100735640,
+        1054001984,
+        -1098145198,
+        -1122383541,
+        1023579656,
+        -1080124173,
+        -1074467096,
+        1049279592,
+        1067335683,
+        -1071831187,
+        -1076582048,
+        -1103926716,
+        -1093031139,
+        1062673941,
+        1046811223,
+        1056772434,
+        -1100226685,
+        1038324624,
+        -1097163128,
+        1048247490,
+        1046549600,
+        -1092288675,
+        -1073512726,
+        1057057863,
+        1068202848,
+        -1077574135,
+        -1074223565,
+        1033404554,
+        -1087953484,
+        1051586314,
+        -1120243107,
+        1059499258,
+        -1078897745,
+        1060866360,
+        -1107697596,
+        1063183489,
+        -1093037920,
+        -1071294591,
+        -1093352389,
+        1059712972,
+        -1075530952,
+        -1084442997,
+        1057246149,
+        1068799015,
+        1044130035,
+        -1072878989,
+        -1078431159,
+        -1081683770,
+        1042121781,
+        -1121634795,
+        1041388799,
+        1051320982,
+        -1095660679,
+        1053038040,
+        1057957445,
+        1072394640,
+        -1057584908,
+        -1075135520,
+        1062359393,
+        -1079820405,
+        -1074950768,
+        -1055480276,
+        -1072324129,
+        1081099105,
+        1063499743,
+        -1089015869,
+        1036543031,
+        1058111861,
+        -1089206833,
+        -1105932186,
+        -1088431660,
+        -1082386530,
+        -1094272423,
+        -1081366901,
+        -1079261155,
+        1047037205,
+        -1090409077,
+        1034923521,
+        -1114814792,
+        1057087077,
+        1070765140,
+        1056425076,
+        -1106944366,
+        -1127000330,
+        1057569990,
+        -1094676843,
+        -1102451545,
+        -1088681940,
+        1060776510,
+        -1087625672,
+        -1097552923,
+        -1106960511,
+        1074178260,
+        1023927137,
+        1080300820,
+        -1077903509,
+        -1082026558,
+        1034443379,
+        1055241964,
+        -1153532229,
+        -1081269222,
+        -1096128558,
+        1053009963,
+        1034100044,
+        -1090224165,
+        -1105458255,
+        -1095954501,
+        -1115023748,
+        -1103360444,
+        -1106524031,
+        1054024752,
+        -1106866474,
+        -1121217050,
+        -1107268195,
+        -1090075821,
+        1052551600,
+        -1096937071,
+        1083910451,
+        1036443823,
+        1066923852,
+        -1100612254,
+        -1114022888,
+        -1098132110,
+        -1083973775,
+        1057576744,
+        -1097430498,
+        1074562786,
+        -1092977036,
+        1052639048,
+        1081096601,
+        1061049548,
+        1072826230,
+        -1072090914,
+        -1089107032,
+        -1061568794,
+        -1085509572,
+        -1077686417,
+        -1096374285,
+        1027628952,
+        1080117848,
+        -1091845116,
+        1094524950,
+        -1069293504,
+        1070546636,
+        -1082301014,
+        1050428942,
+        1093588164,
+        1006651746,
+        -1093808750,
+        1076584235,
+        1058058544,
+        1074274867,
+        -1102721393,
+        1057467011,
+        -1092571878,
+        -1083843380,
+        -1086048897,
+        -1091094705,
+        -1089777941,
+        1066454211,
+        -1096401339,
+        1045042845,
+        -1096622292,
+        1029964745,
+        -1092398852,
+        1052947126,
+        1061921791,
+        -1170682209,
+        1037610959,
+        -1114735263,
+        -1059968261,
+        -1106008794,
+        1056991867,
+        -1091366662,
+        1023515659,
+        1065130377,
+        -1089584449,
+        1051368168,
+        -1066680736,
+        1050948695,
+        -1125479416,
+        1049294758,
+        -1111636528,
+        1068063636,
+        1066268362,
+        -1117585895,
+        -1079232403,
+        -1096460603,
+        -1084401137,
+        -1095707514,
+        1064687535,
+        1058264580,
+        -1097873393,
+        -1096991254,
+        1034960614,
+        1060265650,
+        -1104009368,
+        1060169749,
+        1047920366,
+        1062843436,
+        -1055764073,
+        1057668488,
+        1041007138,
+        -1064716620,
+        -1106478686,
+        -1056620788,
+        -1073905273,
+        1068845738,
+        1073366862,
+        1036489847,
+        -1097620347,
+        1057089555,
+        1020234297,
+        -1068054324,
+        1067857389,
+        1058776576,
+        -1070578433,
+        -1060721051,
+        1034610535,
+        -1079638890,
+        -1096889744,
+        -1106128304,
+        -1084270833,
+        -1076023474,
+        -1079564153,
+        -1081486055,
+        1043840488,
+        1057059233,
+        1079802769,
+        -1083143026,
+        -1091267868,
+        1067711869,
+        1073325558,
+        1065664728,
+        -1068472532,
+        1056253644,
+        1076888139,
+        1054512215,
+        1071621384,
+        -1062392978,
+        -1091717544,
+        -1085287856,
+        -1089387794,
+        1053481562,
+        1047398467,
+        -1108471004,
+        1059138759,
+        1055284806,
+        -1103698505,
+        -1102132682,
+        1053607304,
+        -1132051362,
+        -1108197488,
+        -1092538497,
+        -1105835537,
+        -1054882752,
+        1043921306,
+        1057490618,
+        -1103508108,
+        1041108365,
+        -1054758024,
+        -1079084532,
+        -1117411170,
+        -1086401297,
+        1066028208,
+        -1095102118,
+        -1114508668,
+        -1123009306,
+        -1093314744,
+        1044800464,
+        -1105239506,
+        -1104566286,
+        -1078386862,
+        1037788791,
+        -1102282864,
+        -1109581320,
+        -1093258847,
+        1069331949,
+        1062824541,
+        -1104524762,
+        -1096856944,
+        -1048746543,
+        -1079136416,
+        -1076947396,
+        -1093947459,
+        -1089868175,
+        1066724529,
+        1050888806,
+        -1088084023,
+        -1084041765,
+        1052376304,
+        1022327316,
+        -1101981906,
+        1070224387,
+        1050583838,
+        1069310703,
+        -1089319219,
+        1064583292,
+        -1088719889,
+        -1090121066,
+        1064869802,
+        -1088962461,
+        1062088720,
+        1029271608,
+        1052836620,
+        -1122485228,
+        -1087379015,
+        1042283539,
+        1077095868,
+        1077663159,
+        -1094155306,
+        1072905705,
+        -1118027818,
+        1054121072,
+        -1084027595,
+        -1079359692,
+        -1071008836,
+        -1096906649,
+        1053654226,
+        1061456633,
+        1038154526,
+        -1104854632,
+        1065815718,
+        -1105583746,
+        -1120718840,
+        1038334673,
+        -1095342387,
+        1052778792,
+        -1065993867,
+        -1078562338,
+        -1083600453,
+        -1095076202,
+        -1089140705,
+        -1078103529,
+        1034923114,
+        1054173097,
+        -1056482975,
+        -1093398651,
+        1068445034,
+        -1109963228,
+        1058598951,
+        -1091280438,
+        -1081729158,
+        -1119122834,
+        -1106957273,
+        -1088824555,
+        -1085816048,
+        -1062699235,
+        -1090230148,
+        1055960430,
+        1061338623,
+        -1073062002,
+        -1068432676,
+        -1098558291,
+        1048465556,
+        -1103769260,
+        -1094895232,
+        -1079585405,
+        1064573208,
+        1058650775,
+        -1088681948,
+        -1080681863,
+        1035754834,
+        1062423709,
+        1015136750,
+        -1066744596,
+        -1092108342,
+        1065067488,
+        1059624839,
+        -1105888144,
+        1048309480,
+        -1090037541,
+        1032739746,
+        1085423393,
+        1068244262,
+        -1094897900,
+        1067045629,
+        -1072158084,
+        1052873586,
+        1033419331,
+        -1083062288,
+        1037938543,
+        -1086175292,
+        -1063970328,
+        -1104242052,
+        1051480839,
+        1051963692,
+        1014670004,
+        -1111723872,
+        -1075830867,
+        -1077098272,
+        1048829436,
+        1064055613,
+        -1072460841,
+        -1076446728,
+        989580576,
+        -1088634744,
+        1067431388,
+        -1089908135,
+        1054201644,
+        1058993939,
+        -1098385018,
+        -1104206938,
+        -1096659146,
+        -1091904666,
+        -1073391801,
+        1047647684,
+        -1105885981,
+        -1103414738,
+        -1090064057,
+        -1088669230,
+        974766400,
+        1041866100,
+        1070343769,
+        1059801483,
+        -1092333095,
+        -1100006276,
+        -1089724390,
+        1046809224,
+        -1111562076,
+        -1094858811,
+        1056987120,
+        -1095486264,
+        1071087610,
+        1074832658,
+        1046673019,
+        1065971528,
+        -1085739544,
+        1057071055,
+        1057928254,
+        -1097989083,
+        -1093573195,
+        -1134147898,
+        1061626789,
+        1027917142,
+        -1109934532,
+        -1087469179,
+        -1097606981,
+        -1089466972,
+        -1075560893,
+        1056678890,
+        -1092914774,
+        -1080701456,
+        1067408903,
+        1061705534,
+        1068803149,
+        1058998407,
+        -1056493178,
+        1039463204,
+        -1095176220,
+        1046058865,
+        1029223604,
+        1060849669,
+        1073591984,
+        1060789682,
+        1067216519,
+        -1109554637,
+        1047406711,
+        1049974620,
+        1048949419,
+        -1107018999,
+        -1091146354,
+        -1098013319,
+        -1101746240,
+        1057867233,
+        1061316692,
+        -1119751743,
+        1053753756,
+        1056774677,
+        -1101243114,
+        1059391160,
+        1041562924,
+        1061007427,
+        1057621627,
+        -1093981752,
+        1040424615,
+        1075677130,
+        -1111578681,
+        -1117588405,
+        1045268430,
+        -1088308985,
+        -1082390176,
+        1058267487,
+        -1110731324,
+        -1079168045,
+        -1070422740,
+        1077436031,
+        -1084631179,
+        -1081694456,
+        -1067277962,
+        -1072347014,
+        -1093222986,
+        -1084914545,
+        -1076550619,
+        -1078739753,
+        1070693518,
+        1044703964,
+        -1072990502,
+        -1113692037,
+        -1094153651,
+        -1090507482,
+        1044832502,
+        1057612081,
+        -1090668341,
+        1060043039,
+        -1097770099,
+        -1080035826,
+        1058891493,
+        1039563368,
+        -1102751785,
+        1073973430,
+        1043968185,
+        -1102193664,
+        -1085267533,
+        -1093614722,
+        -1120168079,
+        1040805238,
+        1083484794,
+        1057535244,
+        -1112488610,
+        1068945729,
+        -1072183180,
+        -1104874060,
+        1045523203,
+        1048082409,
+        -1129171178,
+        -1081738841,
+        -1062930607,
+        1066753538,
+        1034942858,
+        -1103740449,
+        -1118374557,
+        1016437637,
+        1049987383,
+        1060023903,
+        -1095378231,
+        1060967421,
+        1037313720,
+        1055743064,
+        -1115682943,
+        -1104239841,
+        -1084832310,
+        -1079517476,
+        -1095376634,
+        -1081021082,
+        1028646408,
+        -1104983035,
+        -1070700584,
+        1049311367,
+        -1072181595,
+        -1078644504,
+        -1112377776,
+        1069492182,
+        -1090632342,
+        -1089955633,
+        1041784553,
+        -1102690036,
+        1067110798,
+        1064588910,
+        1074275760,
+        1063142171,
+        -1086699382,
+        -1063826046,
+        1064272055,
+        1058833164,
+        -1098519109,
+        -1079192578,
+        -1105868775,
+        1061701842,
+        1065795218,
+        -1112102397,
+        1067001540,
+        1073091101,
+        1058660092,
+        1051362370,
+        -1081049392,
+        -1076818578,
+        -1072343982,
+        1065170607,
+        -1074400084,
+        -1079736736,
+        -1100505622,
+        -1128817908,
+        1083704964,
+        -1078150220,
+        -1085396706,
+        -1085375763,
+        -1090643720,
+        -1096747725,
+        -1089610668,
+        1070968892,
+        1060342413,
+        -1102306905,
+        -1081582215,
+        -1099877923,
+        -1104616045,
+        1053800602,
+        -1081825527,
+        1058315257,
+        -1099569518,
+        1065521574,
+        -1078622416,
+        1044747896,
+        -1068782972,
+        -1092004990,
+        -1081134128,
+        -1093386355,
+        -1097251534,
+        1059733055,
+        -1071978865,
+        1069344948,
+        1042709617,
+        1040303437,
+        1069248631,
+        1070143954,
+        1057079063,
+        1082631591,
+        1043708746,
+        -1087337683,
+        -1083111718,
+        -1081564804,
+        1066437358,
+        1024895252,
+        -1084785386,
+        -1108215038,
+        -1092296946,
+        1082011184,
+        -1125838198,
+        1065485272,
+        -1078403580,
+        1082942911,
+        1073877871,
+        1034192158,
+        1074112032,
+        1055956937,
+        1052133140,
+        -1109885882,
+        1075382766,
+        1078792321,
+        -1064559472,
+        1044042640,
+        1039264607,
+        -1102220187,
+        -1124101624,
+        -1095611807,
+        -1069493436,
+        1066596316,
+        -1103588785,
+        1050254794,
+        -1081561496,
+        -1071520948,
+        1029381641,
+        1024953134,
+        1065965894,
+        -1074796423,
+        -1086178671,
+        -1078215245,
+        -1095948861,
+        -1081046375,
+        -1081243613,
+        1044739552,
+        -1087407219,
+        -1073152161,
+        -1082415056,
+        -1103019498,
+        1077003386,
+        -1082836111,
+        1046597240,
+        -1123443012,
+        1073997042,
+        -1098791122,
+        1065562247,
+        -1092987362,
+        -1086405638,
+        -1107992162,
+        1058597005,
+        -1109266724,
+        1053305036,
+        1049559492,
+        1076035238,
+        -1074529542,
+        -1094799490,
+        -1093418764,
+        -1070817681,
+        -1079800341,
+        -1086180854,
+        -1075487767,
+        1073994985,
+        1056109123,
+        -1104852775,
+        1053186005,
+        -1100782824,
+        1082872692,
+        1073151006,
+        -1099358574,
+        1071415156,
+        -1089887174,
+        1055142268,
+        1047811599,
+        -1088926180,
+        -1078851556,
+        -1093624095,
+        1068361005,
+        -1075420188,
+        1059607668,
+        1052049810,
+        -1092075471,
+        -1099585188,
+        -1061354737,
+        -1094481285,
+        -1111214153,
+        1064467407,
+        1050508270,
+        -1082123428,
+        -1155260926,
+        -1086411993,
+        -1088931207,
+        1028976316,
+        -1106803409,
+        1037801286,
+        -1112304682,
+        1067314666,
+        -1089589636,
+        1022493862,
+        -1076032152,
+        1062240368,
+        -1096440515,
+        -1121802112,
+        -1085425972,
+        1057636653,
+        -1090698746,
+        -1076986971,
+        -1090175492,
+        -1073514730,
+        -1061113125,
+        -1073133932,
+        -1080155112,
+        1071767595,
+        1066182739,
+        1066114681,
+        1062190083,
+        -1078114309,
+        -1070538798,
+        1050104409,
+        -1066949019,
+        1049946473,
+        -1085844635,
+        -1077154104,
+        -1088794082,
+        -1071269635,
+        -1077060716,
+        1048737515,
+        -1122247106,
+        -1081359682,
+        1067947450,
+        -1111426970,
+        -1121352355,
+        1051255128,
+        1078322855,
+        1068157287,
+        -1091998608,
+        -1086711581,
+        1027784836,
+        1031248683,
+        1061022864,
+        1072090519,
+        -1128786941,
+        -1071990164,
+        -1071929642,
+        -1059812748,
+        -1066088888,
+        1068706289,
+        1082188084,
+        1093010580,
+        -1066767546,
+        -1082182979,
+        -1079719230,
+        1076843868,
+        -1079293058,
+        -1064503881,
+        -1064235164,
+        1090064061,
+        -1071850508,
+        -1077818917,
+        -1082328802,
+        -1069878548,
+        -1115388473,
+        -1096954695,
+        -1098160987,
+        1072267375,
+        -1102467670,
+        1070521397,
+        1076027235,
+        1055998619,
+        1073352590,
+        1059483949,
+        1066404090,
+        1074345245,
+        1034725666,
+        -1106290840,
+        1057353306,
+        1046237922,
+        -1076059426,
+        -1099784821,
+        -1088006546,
+        -1076847160,
+        1034602365,
+        1068934680,
+        -1079225267,
+        -1084287241,
+        1054408764,
+        1064682930,
+        -1090439808,
+        1036596979,
+        1059561721,
+        1054205308,
+        1069175562,
+        1050709731,
+        -1077546158,
+        1076796516,
+        1057439782,
+        -1100627946,
+        -1082871116,
+        -1071587303,
+        1056284197,
+        -1087178238,
+        -1091095335,
+        1072204569,
+        1066171326,
+        1049201966,
+        1061906242,
+        -1078824181,
+        1049106116,
+        -1102563206,
+        1054407682,
+        -1098838720,
+        -1100137652,
+        1042430467,
+        1028345536,
+        -1080578087,
+        1042867425,
+        -1111720831,
+        1032440694,
+        -1087707130,
+        -1137444448,
+        -1088634808,
+        -1086433823,
+        -1123394164,
+        -1095024167,
+        -1089873108,
+        1018448791,
+        1040177558,
+        1060354185,
+        -1117016965,
+        1070649470,
+        1060441355,
+        -1073440720,
+        1063332840,
+        1067089538,
+        -1075840539,
+        1083690520,
+        -1101987414,
+        1076204213,
+        -1084851752,
+        1058054441,
+        -1089634304,
+        1067318711,
+        -1095843076,
+        1059392453,
+        1034848766,
+        1063815459,
+        1053626804,
+        1041348440,
+        -1080575422,
+        1057142175,
+        -1093810168,
+        -1083182863,
+        -1071431199,
+        -1090272756,
+        -1088730805,
+        -1110812005,
+        -1096163851,
+        1040459116,
+        -1097037328,
+        1063662727,
+        -1072092407,
+        1085374849,
+        1066783342,
+        -1078022635,
+        -1073355345,
+        1060640778,
+        -1088298302,
+        -1081690268,
+        1044115733,
+        -1139617666,
+        -1104198305,
+        1073909143,
+        1065144486,
+        1043875441,
+        1058506714,
+        -1087394006,
+        1056744286,
+        -1074502771,
+        -1078261490,
+        -1073946290,
+        -1075296230,
+        -1090054045,
+        1068152810,
+        1056420304,
+        -1095129259,
+        1067828937,
+        1077366049,
+        -1092195739,
+        1041868091,
+        -1083143258,
+        -1094046192,
+        -1093662362,
+        -1093758959,
+        1064631897,
+        1088285508,
+        -1079331348,
+        -1078980960,
+        -1096327709,
+        1045388705,
+        1063209515,
+        -1070647526,
+        1043356963,
+        1053992241,
+        -1110175680,
+        1061997092,
+        1061568531,
+        1078548696,
+        1065052114,
+        -1078776785,
+        1057151107,
+        -1094424624,
+        1092649356,
+        -1103141207,
+        -1056472088,
+        1082746901,
+        1077402407,
+        1065636839,
+        1019854160,
+        -1072587931,
+        1058920241,
+        -1110000762,
+        1002518768,
+        -1102841027,
+        -1086079310,
+        1081744377,
+        1040821101,
+        1053370280,
+        1052157538,
+        1049202830,
+        1045785098,
+        -1081653435,
+        -1077760828,
+        1062064634,
+        -1104173488,
+        -1103608550,
+        -1068157040,
+        -1074100601,
+        -1072130192,
+        1062335536,
+        1074736507,
+        1091832501,
+        -1076609690,
+        -1086273306,
+        1048016296,
+        1072493442,
+        1082629723,
+        1043190432,
+        -1072832311,
+        1094384908,
+        -1081588853,
+        1065733930,
+        1057677542,
+        -1095146264,
+        1049732423,
+        -1137847498,
+        1036306845,
+        -1067122633,
+        -1103224984,
+        1043757565,
+        -1111395300,
+        -1099560782,
+        -1107837435,
+        1050892699,
+        -1117813771,
+        1023022432,
+        -1112968968,
+        -1099330908,
+        1042766392,
+        -1085125207,
+        1066349994,
+        -1101544418,
+        1053970934,
+        1080270073,
+        1065462730,
+        1075607852,
+        1071339804,
+        -1098518801,
+        1034873375,
+        -1096952680,
+        -1075596645,
+        1048815869,
+        -1080445237,
+        -1087559597,
+        1044631612,
+        -1101184985,
+        1034024650,
+        -1083565984,
+        -1078059907,
+        -1095983778,
+        -1118091594,
+        1066855289,
+        1066911665,
+        -1070286601,
+        -1075935842,
+        1039615124,
+        -1084654912,
+        -1098705069,
+        -1086720352,
+        1040700962,
+        -1096548096,
+        -1084332989,
+        -1100168323,
+        1053211448,
+        1062011891,
+        -1081131852,
+        -1120473686,
+        1063112025,
+        1056918371,
+        -1098099878,
+        1036453863,
+        -1074740686,
+        1065384406,
+        1062358917,
+        1065480560,
+        -1110188052,
+        1059085471,
+        1075684999,
+        -1060775019,
+        1072763283,
+        1063645367,
+        -1091161446,
+        -1080784623,
+        -1085691510,
+        1040776122,
+        1058707985,
+        -1076853210,
+        1071355744,
+        1084233157,
+        1062190737,
+        1052326920,
+        -1089827407,
+        -1095657530,
+        1047504134,
+        1062462411,
+        1007065088,
+        1058751690,
+        -1082831810,
+        -1122931254,
+        1071036708,
+        1038551704,
+        1037879998,
+        -1095200771,
+        1065518593,
+        -1106897767,
+        1068416532,
+        1065528611,
+        1032738934,
+        -1095171827,
+        -1093816707,
+        1067472696,
+        -1081242783,
+        -1066899954,
+        1054538197,
+        1044822947,
+        1064856896,
+        -1078443579,
+        1060094648,
+        -1081015293,
+        1052758725,
+        1059056932,
+        -1068474308,
+        1044623410,
+        1049855879,
+        1049803014,
+        -1094826119,
+        -1092862875,
+        -1077163622,
+        -1062910788,
+        -1073861855,
+        1074471646,
+        1038363002,
+        1039542570,
+        -1078960402,
+        1072433874,
+        -1088262667,
+        -1080210559,
+        1071032209,
+        1057889253,
+        1060827223,
+        -1095098493,
+        -1097827838,
+        -1095354587,
+        1032804013,
+        -1111573819,
+        1051435975,
+        -1084804937,
+        1027846290,
+        -1122088872,
+        1045889162,
+        1057123670,
+        -1095207551,
+        -1107155400,
+        1052129430,
+        -1081055587,
+        1070674856,
+        -1087866304,
+        1042027942,
+        -1079991023,
+        1071227430,
+        1076142075,
+        1044739268,
+        -1092423097,
+        1075830271,
+        1059737213,
+        1066799034,
+        1028762368,
+        -1111440974,
+        1094663397,
+        1049887322,
+        -1076209350,
+        -1064519486,
+        1067443740,
+        -1101421262,
+        1061721689,
+        -1114073250,
+        1045453047,
+        1050751092,
+        1044807437,
+        1077340994,
+        1053637313,
+        1062093438,
+        -1109082906,
+        -1085480082,
+        -1099089654,
+        -1118699049,
+        1032517828,
+        -1093001905,
+        -1097035394,
+        1015812101,
+        1035017580,
+        1011253698,
+        1039690936,
+        1045413893,
+        1051147421,
+        1069700691,
+        -1106671330,
+        1026122800,
+        1060501787,
+        -1081652243,
+        1070581225,
+        1053849910,
+        -1100604901,
+        -1075669635,
+        -1091178390,
+        -1094741872,
+        1045377466,
+        1055974508,
+        -1079437084,
+        -1083760443,
+        1068871079,
+        1068191829,
+        1053556096,
+        -1086993629,
+        1049800671,
+        -1070564302,
+        -1095243512,
+        -1059913571,
+        -1071098652,
+        1071836486,
+        1058615226,
+        -1107204785,
+        1056368035,
+        1054954744,
+        -1073435727,
+        -1072832700,
+        -1089596483,
+        -1085094509,
+        1059427946,
+        1026051664,
+        -1088967679,
+        1059721573,
+        1051520304,
+        1046258044,
+        -1117676727,
+        1071231394,
+        1091686563,
+        1052079392,
+        -1096093247,
+        1082390156,
+        -1101654736,
+        -1081836723,
+        -1086993229,
+        -1098349963,
+        -1080987693,
+        -1066761819,
+        -1086503894,
+        -1088836273,
+        -1085847618,
+        -1085532875,
+        1075005663,
+        -1152470516,
+        -1093385960,
+        -1079730951,
+        1070211636,
+        -1097177916,
+        -1097211466,
+        1062684297,
+        -1063676817,
+        1052424522,
+        -1078721222,
+        -1082019461,
+        1041489959,
+        -1073756394,
+        -1095357984,
+        1066164531,
+        -1074689730,
+        1077725134,
+        -1090324001,
+        -1104781638,
+        -1101423454,
+        1005553656,
+        1043338752,
+        1053019392,
+        1061094871,
+        -1104407761,
+        1078018010,
+        -1096938228,
+        -1115172146,
+        -1094790420,
+        -1085434087,
+        1059447995,
+        -1118344540,
+        -1086938691,
+        1063896577,
+        -1093996425,
+        -1091302054,
+        1042038435,
+        -1084028931,
+        -1078405851,
+        -1079631810,
+        -1083774964,
+        -1092157902,
+        -1090463013,
+        -1083981237,
+        1057338064,
+        1061166037,
+        1055192566,
+        -1088177561,
+        1065380601,
+        1040236597,
+        -1071467105,
+        1068117014,
+        -1084529870,
+        -1087509954,
+        1050377191,
+        -1122615954,
+        1067587283,
+        1072532246,
+        -1092586912,
+        1061162537,
+        1058409039,
+        -1072128892,
+        1061752524,
+        -1076482327,
+        1067592472,
+        1065706878,
+        1051281233,
+        1049051724,
+        1054676935,
+        -1091786266,
+        -1126450489,
+        -1093638245,
+        -1082210010,
+        1042864190,
+        -1075436625,
+        -1082499784,
+        1059689274,
+        -1099570274,
+        1048156249,
+        -1089836547,
+        1054903477,
+        -1091874738,
+        -1069403332,
+        -1089153232,
+        1025134666,
+        -1091499303,
+        1046284322,
+        1068356641,
+        1079392583,
+        -1078968815,
+        -1089912076,
+        -1086976088,
+        1063615336,
+        1053219813,
+        -1088103115,
+        1078575948,
+        1070604878,
+        1078019800,
+        1070431413,
+        -1066447444,
+        1075483819,
+        1063140140,
+        -1075487297,
+        -1073538071,
+        -1073739294,
+        1067277505,
+        985682744,
+        -1063705215,
+        1087552191,
+        1095430171,
+        1055155607,
+        1061492627,
+        -1071314552,
+        -1071289180,
+        -1083007705,
+        -1069387387,
+        1056988708,
+        -1079970264,
+        1076467251,
+        1067844771,
+        1063661026,
+        -1075418323,
+        -1099186631,
+        1018058413,
+        -1076291202,
+        -1075972466,
+        -1094356948,
+        1050378557,
+        1079139904,
+        -1077096391,
+        1045552541,
+        1050736562,
+        -1099081226,
+        -1093922188,
+        1084783061,
+        -1081807142,
+        1056589598,
+        -1109818622,
+        1036703069,
+        -1084996821,
+        -1089447695,
+        -1078928485,
+        1053617252,
+        1040743151,
+        1069450816,
+        1073234856,
+        -1112370374,
+        -1057628563,
+        1067390598,
+        1066606763,
+        -1077485436,
+        -1079930053,
+        -1071499805,
+        1072732530,
+        -1091348209,
+        -1070584945,
+        1093526384,
+        1090720468,
+        1051028313,
+        1074958850,
+        -1070388038,
+        -1111936455,
+        -1090353831,
+        1052804272,
+        -1094222576,
+        1046470490,
+        -1106436270,
+        1038413042,
+        1062260684,
+        -1076228838,
+        -1086412094,
+        1015441412,
+        -1141998349,
+        -1130775736,
+        -1076828302,
+        1058076874,
+        -1081465898,
+        -1156790622,
+        1039379164,
+        -1098034765,
+        1049376094,
+        -1125839108,
+        -1080160406,
+        -1075955069,
+        -1112851921,
+        1066661785,
+        -1072596724,
+        -1076406566,
+        -1096151664,
+        -1083985291,
+        1023483324,
+        -1088651799,
+        1057709397,
+        1065727914,
+        -1074338489,
+        1033560578,
+        1056499383,
+        -1080923285,
+        -1097199668,
+        1066234202,
+        1076787584,
+        1074254399,
+        -1073013065,
+        -1106208406,
+        -1082337216,
+        -1109502586,
+        -1064781429,
+        -1064278521,
+        1073829851,
+        -1073622472,
+        -1092177136,
+        1057967459,
+        1034061160,
+        -1081930961,
+        1079388425,
+        1049421574,
+        -1114643676,
+        -1084362959,
+        -1092842473,
+        1049806686,
+        -1085036995,
+        -1113300506,
+        -1085847508,
+        -1092221642,
+        1073779007,
+        -1089952840,
+        -1098751879,
+        -1119226245,
+        -1089868636,
+        -1104550244,
+        1074699725,
+        1055952528,
+        -1095836766,
+        -1083948043,
+        -1074099749,
+        1050146921,
+        -1095534976,
+        -1089466614,
+        -1095115951,
+        -1083871046,
+        1043358466,
+        1022304316,
+        -1087125247,
+        1050617789,
+        -1091020784,
+        -1090443952,
+        1073816190,
+        1040198487,
+        -1096534602,
+        1073513961,
+        -1090229792,
+        -1096977062,
+        1057572728,
+        -1067217670,
+        1063963706,
+        -1089848091,
+        1063061220,
+        1044939314,
+        1051075533,
+        -1094046255,
+        1051305571,
+        -1115168055,
+        -1086702904,
+        -1074567503,
+        1040819594,
+        1069154987,
+        -1073890563,
+        -1076923581,
+        1029672622,
+        -1087291231,
+        1061925960,
+        -1100194623,
+        1059864043,
+        1076132744,
+        1064950786,
+        -1065584210,
+        1078817352,
+        1070792100,
+        -1071976119,
+        -1072511134,
+        -1073876471,
+        1081451119,
+        -1093924653,
+        -1060026171,
+        1090338983,
+        1098115746,
+        1067032418,
+        1090647568,
+        -1064318077,
+        -1090038459,
+        -1091067289,
+        -1083001875,
+        -1127959045,
+        1057675112,
+        1075796565,
+        -1080493222,
+        -1086198831,
+        1067156807,
+        1059615526,
+        -1099018892,
+        -1102959980,
+        -1082476683,
+        1073741936,
+        -1113285493,
+        1048020304,
+        1056628663,
+        -1074950806,
+        1055892555,
+        -1097455499,
+        1060394274,
+        -1109227346,
+        -1088511815,
+        1073339494,
+        1060955703,
+        -1083257760,
+        1028044644,
+        -1078487728,
+        -1081851732,
+        1057256020,
+        -1074052215,
+        -1086517358,
+        1049553145,
+        1060650401,
+        -1083430813,
+        1093683715,
+        1060374745,
+        1060418515,
+        -1107037657,
+        -1096650550,
+        1075625396,
+        -1088341663,
+        -1086267156,
+        1084701626,
+        1060932882,
+        1067216141,
+        -1089746054,
+        -1085373699,
+        -1096479815,
+        1061576708,
+        -1117126216,
+        -1098689793,
+        -1089313743,
+        1064459729,
+        1063139325,
+        1053299300,
+        1066904970,
+        1059834947,
+        -1086145225,
+        -1095148306,
+        1054567152,
+        1045703562,
+        1069613689,
+        1083512735,
+        -1092861010,
+        1057032745,
+        -1071159076,
+        1084872371,
+        1028782956,
+        -1073505050,
+        1080095938,
+        -1093487895,
+        -1079249574,
+        -1064075820,
+        1057000971,
+        1079893467,
+        -1100183378,
+        -1076767770,
+        1069046602,
+        -1082291746,
+        -1097451099,
+        1059983873,
+        -1076287587,
+        1050673939,
+        -1089152773,
+        1069904723,
+        -1093988350,
+        1052520521,
+        -1090352609,
+        1064396532,
+        1058627268,
+        1071595750,
+        -1082887414,
+        1083981748,
+        -1106535785,
+        1051651981,
+        1042537203,
+        1061607704,
+        1061739745,
+        1049677709,
+        -1055629957,
+        -1084229916,
+        1067034295,
+        -1087249259,
+        1050456202,
+        -1096901887,
+        -1107352054,
+        -1081500386,
+        -1086499465,
+        1041375295,
+        1043540510,
+        1049418181,
+        -1085001050,
+        -1081816102,
+        1053353703,
+        -1081036464,
+        -1068942711,
+        1079562050,
+        -1105097202,
+        1054816088,
+        -1072545863,
+        -1081457869,
+        -1080067928,
+        -1079484524,
+        1084284541,
+        -1091367524,
+        -1097688225,
+        1053364961,
+        -1084253870,
+        -1092066635,
+        1048088066,
+        -1092196604,
+        1065306886,
+        1060870509,
+        1048896943,
+        -1098227342,
+        1063606905,
+        1047660723,
+        1065181317,
+        -1085389429,
+        -1071342856,
+        1053640707,
+        -1076223816,
+        -1104459007,
+        -1080453095,
+        1062913499,
+        -1062233270,
+        -1085474774,
+        -1086900068,
+        -1068108022,
+        1072616918,
+        -1075146079,
+        1046843891,
+        -1087583726,
+        1071656201,
+        1085115427,
+        -1066557169,
+        1057144813,
+        -1084929477,
+        1093520370,
+        1071813455,
+        -1109024391,
+        1019127925,
+        -1107653790,
+        -1080191569,
+        1058322150,
+        -1081725195,
+        -1072461953,
+        -1088469789,
+        -1088641212,
+        -1089064887,
+        1060128831,
+        1056970180,
+        -1084454664,
+        1025104841,
+        1069553409,
+        -1088921150,
+        -1120110442,
+        -1091532923,
+        -1089817935,
+        -1110238350,
+        1079793970,
+        1055272684,
+        -1170166492,
+        -1085104861,
+        -1081702368,
+        -1051544993,
+        -1088129784,
+        1069289705,
+        -1107773364,
+        1060965490,
+        1064278722,
+        -1097397721,
+        -1089302200,
+        1060606251,
+        1040510082,
+        1052015871,
+        1079105830,
+        -1084609850,
+        1058041076,
+        1056874509,
+        -1102548666,
+        1050557594,
+        -1093960972,
+        -1098166373,
+        1055471875,
+        1075436110,
+        -1116471388,
+        -1096291730,
+        1040857869,
+        -1096708540,
+        1035719786,
+        -1102612002,
+        -1086215962,
+        -1072320731,
+        1047276136,
+        1068549536,
+        -1074864584,
+        -1074632459,
+        1016146018,
+        -1087601836,
+        1055147750,
+        -1097738423,
+        1056281108,
+        1050284345,
+        1046009742,
+        -1110336370,
+        1053671026,
+        -1092618519,
+        -1082096001,
+        -1073963355,
+        1024797864,
+        1070869849,
+        -1070982327,
+        -1075922293,
+        -1134271238,
+        -1091853954,
+        1066706609,
+        -1098167474,
+        1054154444,
+        -1088389862,
+        -1110592509,
+        1085113843,
+        1058901783,
+        -1071355453,
+        1067128598,
+        -1102893353,
+        1043137405,
+        -1064203572,
+        -1083445317,
+        -1068628124,
+        -1077907100,
+        1054792161,
+        -1062295083,
+        -1089202282,
+        1058183775,
+        1054485532,
+        -1088867449,
+        1072896775,
+        1052067701,
+        -1078667305,
+        1080612994,
+        -1073046988,
+        -1076986623,
+        1065409329,
+        -1065127765,
+        -1096661876,
+        1049129094,
+        -1088873609,
+        1084273780,
+        1070270414,
+        1066009233,
+        1065639014,
+        -1117935113,
+        -1091835354,
+        1042758244,
+        -1097594047,
+        -1074251222,
+        -1086046230,
+        -1088389384,
+        1065358316,
+        -1078915783,
+        1059062227,
+        -1090370490,
+        -1089103030,
+        1063868361,
+        -1080298756,
+        -1099129562,
+        1051074789,
+        -1092907543,
+        1051583303,
+        1046239158,
+        -1100337309,
+        -1086996322,
+        -1089502476,
+        1037005241,
+        1021200686,
+        -1128129862,
+        -1101733400,
+        1041513387,
+        1042036694,
+        1050950465,
+        1063609342,
+        -1059666440,
+        -1096995920,
+        -1077358747,
+        1082885425,
+        -1108973132,
+        -1096763358,
+        1089363305,
+        1051135386,
+        -1086783765,
+        1050942365,
+        -1080263183,
+        -1081613264,
+        -1070203018,
+        -1076898416,
+        1060662798,
+        -1081547523,
+        1051549142,
+        1025648022,
+        -1090432155,
+        1050705332,
+        -1095435212,
+        -1097235358,
+        -1099680341,
+        1070307680,
+        -1088193251,
+        -1065214670,
+        -1068069773,
+        -1080044083,
+        1047633893,
+        -1089748526,
+        -1096814807,
+        -1089739599,
+        1068725361,
+        -1114523036,
+        -1090298508,
+        1061041874,
+        1055031363,
+        -1093930762,
+        1087711943,
+        1058171654,
+        -1103146355,
+        -1107268204,
+        -1088964131,
+        -1086613379,
+        -1100624109,
+        1064796898,
+        1007668928,
+        -1105251138,
+        1041294305,
+        -1107415098,
+        -1072318538,
+        1071664767,
+        -1094108354,
+        1069577929,
+        1062622090,
+        1066230529,
+        1078009718,
+        -1096568871,
+        -1092040428,
+        1041341213,
+        -1083979898,
+        -1069833062,
+        1050179906,
+        -1111679386,
+        -1080164382,
+        1052258881,
+        1033792342,
+        1052668402,
+        -1120771812,
+        -1078458040,
+        1052597778,
+        -1092086888,
+        1049114158,
+        -1087598188,
+        -1094496511,
+        1042571479,
+        -1075161324,
+        1089946360,
+        -1084880562,
+        1065399659,
+        -1099479295,
+        -1102744861,
+        -1089424622,
+        -1092625292,
+        -1087452962,
+        1066664966,
+        1037677593,
+        -1069800960,
+        -1080001638,
+        1075524530,
+        1075513961,
+        -1072526445,
+        1053471975,
+        -1095993899,
+        1083704244,
+        -1073212904,
+        1067441865,
+        -1087206679,
+        1066133642,
+        -1069428425,
+        1090188606,
+        1047605300,
+        1010822604,
+        1034139585,
+        -1099032788,
+        -1111344719,
+        -1095507662,
+        -1071925527,
+        1049760171,
+        1051942999,
+        -1146384477,
+        -1096167522,
+        1056109035,
+        1019859146,
+        -1080396691,
+        1083989172,
+        1051675361,
+        1076237965,
+        1061402372,
+        1064241602,
+        1080076640,
+        1067667409,
+        -1094215018,
+        1055330873,
+        1043383024,
+        -1092262453,
+        -1097376044,
+        1041110080,
+        -1102573102,
+        -1089422902,
+        -1090220229,
+        -1090331058,
+        1051051890,
+        -1098259979,
+        -1085771080,
+        1052829361,
+        1051762927,
+        -1093967068,
+        -1063327407,
+        -1079714254,
+        1045447282,
+        -1098837884,
+        -1098024430,
+        1068038360,
+        -1115672304,
+        -1083502155,
+        1062754944,
+        1066483016,
+        -1094483996,
+        -1085826553,
+        -1080777040,
+        1075778943,
+        1059939254,
+        1062442232,
+        -1059288684,
+        1058160662,
+        -1089671209,
+        -1074754009,
+        -1066902569,
+        -1095628993,
+        1078332521,
+        1039598522,
+        -1098658275,
+        1055051308,
+        -1105621445,
+        1069695983,
+        1024914610,
+        -1095308244,
+        1064611235,
+        1065026143,
+        -1091912801,
+        -1072276338,
+        -1071524063,
+        -1102011897,
+        1023390812,
+        -1098678666,
+        1067016224,
+        -1089640666,
+        -1095904352,
+        1046738839,
+        1056407791,
+        -1078640143,
+        1061008792,
+        -1062509412,
+        -1098364991,
+        -1071938403,
+        -1075625158,
+        -1095868740,
+        -1105430788,
+        -1077106628,
+        -1079646208,
+        -1063935333,
+        1064210741,
+        1051851364,
+        -1090709782,
+        1050600131,
+        1060412238,
+        1058059283,
+        -1079760121,
+        1060310526,
+        -1099274240,
+        1058702623,
+        1058117306,
+        -1061630937,
+        -1113443439,
+        1081940244,
+        -1116446866,
+        1068111218,
+        1078968837,
+        -1086402891,
+        -1081905548,
+        1062647107,
+        1028507514,
+        1053600394,
+        -1089822914,
+        -1098313952,
+        1043685233,
+        1073993408,
+        -1084319572,
+        -1074374909,
+        1058219873,
+        1047799595,
+        1050292098,
+        1074674978,
+        -1063116049,
+        1057137505,
+        -1092448190,
+        1043940731,
+        -1110914649,
+        -1073554653,
+        1056782364,
+        1076209754,
+        1072843189,
+        -1050533451,
+        -1088528743,
+        -1082248811,
+        1042643810,
+        1054641264,
+        -1085904633,
+        1043849712,
+        1008956580,
+        -1102608949,
+        -1106128192,
+        -1118415532,
+        -1110708227,
+        1025425530,
+        1044902888,
+        1034655661,
+        1015983700,
+        1075094025,
+        -1115507959,
+        1048795442,
+        -1095623071,
+        -1084218032,
+        1057508835,
+        -1088397221,
+        1025411773,
+        1055687015,
+        -1130045398,
+        -1101718300,
+        1057611142,
+        1066175964,
+        1062724907,
+        -1121844168,
+        -1072758192,
+        -1136916453,
+        -1094002288,
+        1065081601,
+        1062169207,
+        1064487599,
+        1046069854,
+        1067796319,
+        1043443374,
+        -1093073633,
+        -1103574547,
+        1059467131,
+        -1101436653,
+        -1090081519,
+        -1101018724,
+        1009715729,
+        1072745562,
+        -1105443694,
+        -1071886835,
+        1079830724,
+        -1129805850,
+        1057455272,
+        1025207432,
+        1049302097,
+        1059266155,
+        1063271276,
+        1046965649,
+        1081864757,
+        1064067330,
+        -1087504035,
+        1053367996,
+        -1120090694,
+        1067457932,
+        1061845776,
+        1048821220,
+        1030843170,
+        -1080990114,
+        -1079690006,
+        1050764484,
+        1042759697,
+        -1098343739,
+        -1106174692,
+        1078065195,
+        1042824056,
+        1029087873,
+        -1093445729,
+        -1087364145,
+        1033569868,
+        1064253399,
+        -1126412514,
+        -1079959743,
+        1043089346,
+        -1102241338,
+        -1181808888,
+        -1104478900,
+        -1106613499,
+        1031657746,
+        -1087437718,
+        -1115755465,
+        -1090044698,
+        -1086869625,
+        1031817220,
+        1046055419,
+        1045433767,
+        1051208426,
+        -1071505224,
+        1045573546,
+        1070286583,
+        -1097263953,
+        1061034849,
+        -1091847405,
+        -1113893396,
+        1069837126,
+        1057934400,
+        1072372996,
+        1046536186,
+        1035611279,
+        -1091627963,
+        1028884543,
+        -1090877466,
+        1068115697,
+        -1123446160,
+        -1086850502,
+        1055325566,
+        1025155868,
+        -1072458908,
+        1049498372,
+        1052179133,
+        -1089020475,
+        1075630756,
+        1057437771,
+        -1089190805,
+        -1097922046,
+        1059071573,
+        1048153557,
+        1088046471,
+        -1115427246,
+        -1089073800,
+        1053312645,
+        1043587663,
+        -1072863467,
+        1049590351,
+        -1089703553,
+        1063275515,
+        1035347260,
+        1081337900,
+        1068263318,
+        -1082268705,
+        -1064755522,
+        -1096894092,
+        -1141273812,
+        1044962590,
+        -1076626962,
+        1038564061,
+        1045596794,
+        1077623116,
+        -1097129899,
+        -1096401456,
+        1075818204,
+        -1091866705,
+        -1079351797,
+        1047842657,
+        -1098503270,
+        -1115378975,
+        1077758019,
+        -1093842379,
+        -1087015064,
+        -1085125152,
+        1061702710,
+        1070847833,
+        1050830550,
+        1040270962,
+        -1105470546,
+        -1092134389,
+        1040262753,
+        -1180663160,
+        1007814972,
+        -1097575043,
+        1039976750,
+        1045151146,
+        1009551162,
+        1065853601,
+        1017998736,
+        1043347229,
+        1014312452,
+        -1111944692,
+        1014254878,
+        1007050100,
+        -1117387155,
+        -1094758484,
+        -1080192940,
+        -1131849794,
+        1072108501,
+        1028089891,
+        -1075010367,
+        1048773425,
+        -1111037601,
+        -1064790645,
+        1053526122,
+        1027401194,
+        -1086277499,
+        1045934229,
+        -1102721437,
+        1025191335,
+        -1068287690,
+        -1088498633,
+        -1107125369,
+        1054317512,
+        1055115388,
+        -1092340675,
+        -1066438906,
+        1052877528,
+        1059849497,
+        1072650839,
+        1024967300,
+        1059352006,
+        1024016511,
+        1082480441,
+        -1100631366,
+        1060710701,
+        1074195681,
+        -1070497444,
+        -1098721138,
+        1055251703,
+        -1132315367,
+        -1098442804,
+        -1070547338,
+        -1098172405,
+        -1080937877,
+        1050203011,
+        -1070396764,
+        -1127645024,
+        -1095334842,
+        1054587874,
+        1047541767,
+        -1097555379,
+        -1112266614,
+        1044267070,
+        -1082114883,
+        1031843622,
+        -1088409362,
+        1047606272,
+        -1120739690,
+        1074116186,
+        1057393448,
+        -1090915532,
+        -1092982026,
+        -1107168574,
+        1066650637,
+        -1106511415,
+        -1095668234,
+        1046065269,
+        -1082422679,
+        -1095020010,
+        1038928930,
+        -1090688039,
+        1067508816,
+        1050640379,
+        1044386778,
+        -1108503451,
+        -1116664280,
+        1024934761,
+        1042405868,
+        -1091909864,
+        -1108482659,
+        -1107024607,
+        1032354898,
+        1024768353,
+        1032576057,
+        -1129791518,
+        -1129128300,
+        1024902173,
+        1035370312,
+        1038847016,
+        -1093289106,
+        1046300991,
+        1036144017,
+        1040564242,
+        -1088027800,
+        1032826560,
+        1040079788,
+        1035128071,
+        -1101339333,
+        1034407011,
+        -1129385853,
+        -1147299492,
+        1077145422,
+        1060648787,
+        1029775325,
+        1094453826,
+        -1090910813,
+        -1106327939,
+        1046618219,
+        -1103693216,
+        -1090665492,
+        1034255056,
+        1066809953,
+        1058047119,
+        1046510428,
+        1045482847,
+        -1083080104,
+        -1097830961,
+        1041860422,
+        1048795332,
+        1017091966,
+        1031334205,
+        1046087985,
+        -1138537514,
+        -1168199176,
+        -1079726987,
+        -1082720472,
+        1069009318,
+        -1078274617,
+        1064922232,
+        -1121871400,
+        -1074823702,
+        -1121561205,
+        -1102751089,
+        1059675118,
+        -1079587020,
+        1054311358,
+        1075756797,
+        1051676193,
+        1010229163,
+        -1086412962,
+        -1089477236,
+        -1088513500,
+        1050330920,
+        1040827917,
+        1057951946,
+        1079215458,
+        -1105407526,
+        -1064408234,
+        1057955338,
+        -1088721006,
+        1071862113,
+        -1090017010,
+        1048338537,
+        -1081094753,
+        1057888113,
+        -1085018654,
+        1037485578,
+        -1095775138,
+        -1079041277,
+        -1082769232,
+        1038341583,
+        1042434292,
+        -1069057881,
+        -1084750809,
+        -1074213227,
+        1053789340,
+        1019070966,
+        1040518587,
+        -1081713738,
+        1069449226,
+        1069238712,
+        -1087591858,
+        -1081864214,
+        1054702954,
+        -1161436212,
+        -1126495012,
+        -1097474684,
+        -1082965529,
+        1032880414,
+        1009164371,
+        -1109903761,
+        1044903995,
+        -1113037076,
+        -1122279265,
+        -1103823944,
+        -1104674451,
+        -1113697007,
+        1056281933,
+        -1106239582,
+        -1095106273,
+        -1132404808,
+        1069518628,
+        -1129515614,
+        -1100172786,
+        1047644574,
+        1021350777,
+        -1087044685,
+        1048066599,
+        1036630800,
+        -1074640303,
+        -1122848060,
+        1050404929,
+        -1111388281,
+        -1065651677,
+        -1103530349,
+        -1120619889,
+        1037473744,
+        1053866333,
+        -1085921679,
+        1068266105,
+        1071987492,
+        1060578227,
+        1061791040,
+        -1111985620,
+        1074026927,
+        -1129032544,
+        -1087398700,
+        1058347729,
+        -1087810373,
+        -1095419132,
+        -1099072328,
+        1046003196,
+        -1090270774,
+        1076983468,
+        1034241185,
+        1029110651,
+        -1060875127,
+        -1113726770,
+        1042031929,
+        1068844461,
+        -1097080534,
+        -1106160292,
+        1039115306,
+        1050149083,
+        1045998279,
+        1053488867,
+        1057508678,
+        -1096467358,
+        -1119101547,
+        1062022306,
+        -1098688403,
+        1060210351,
+        1046385454,
+        -1081346560,
+        -1093655938,
+        -1114722782,
+        -1089391172,
+        -1077104944,
+        -1103716973,
+        -1085071630,
+        -1092424319,
+        1053557768,
+        -1099531311,
+        -1097114119,
+        -1123546363,
+        -1091426927,
+        -1088046427,
+        1063751237,
+        1025939027,
+        1072830509,
+        1065329233,
+        -1083909084,
+        1031840572,
+        1056167331,
+        1053784810,
+        1084691395,
+        1024349430,
+        -1078451902,
+        -1090447093,
+        -1129112498,
+        -1109748272,
+        -1100330698,
+        1073674924,
+        1043294442,
+        -1105632860,
+        1062115625,
+        1018704108,
+        -1131484880,
+        1035147332,
+        -1107229777,
+        -1104724226,
+        1028334627,
+        1059245601,
+        1056195784,
+        -1115709971,
+        1042247088,
+        -1113479482,
+        -1094994943,
+        1062764492,
+        -1093126328,
+        -1080701102,
+        1067028921,
+        -1102501706,
+        1044963218,
+        1037691958,
+        1033146068,
+        -1096224942,
+        -1069785796,
+        1033612092,
+        -1138329694,
+        1074592462,
+        -1114217540,
+        1028268405,
+        -1104166406,
+        1011763782,
+        1053870988,
+        1026738983,
+        1039442079,
+        1043645907,
+        1050146137,
+        1049590691,
+        1026380668,
+        -1105755699,
+        1080516848,
+        -1103543194,
+        1061907756,
+        1054294338,
+        1049302666,
+        -1065484395,
+        1049399905,
+        -1098446521,
+        -1094503650,
+        -1091753172,
+        1048890211,
+        -1118099335,
+        1039484291,
+        -1156967082,
+        -1115976406,
+        1048582426,
+        1064779220,
+        1057468439,
+        1077908900,
+        1015057667,
+        1081924287,
+        1006816006,
+        1049185188,
+        -1073853278,
+        -1090335122,
+        1057120995,
+        -1077747940,
+        1057364403,
+        -1075157995,
+        1050316774,
+        -1081283220,
+        1047699539,
+        1057181877,
+        1058265359,
+        1030247590,
+        -1089196379,
+        -1078280079,
+        1052012481,
+        -1118615372,
+        -1090370605,
+        1048543714,
+        -1110410413,
+        1036678886,
+        -1117760409,
+        -1122617599,
+        -1110943156,
+        1076842096,
+        -1098721663,
+        -1166389472,
+        -1122463350,
+        -1104202197,
+        1026754206,
+        -1116449509,
+        1028444795,
+        1057375068,
+        1007821417,
+        1036338307,
+        1031293672,
+        1036429343,
+        -1084741501,
+        1051249583,
+        1025267264,
+        -1101058734,
+        -1121398855,
+        -1093010679,
+        -1107316949,
+        -1137383610,
+        1024433951,
+        1049147655,
+        -1065248949,
+        1085436419,
+        -1120270402,
+        1024809100,
+        -1100161409,
+        1091730517,
+        -1089704034,
+        -1087518451,
+        1054106290,
+        -1098884080,
+        1066966460,
+        -1144108804,
+        1049639448,
+        -1078986933,
+        -1090413339,
+        1057737139,
+        -1097149968,
+        -1117959408,
+        1069143516,
+        -1097091255,
+        1071071627,
+        1044029352,
+        -1097659032,
+        -1086342398,
+        -1100519930,
+        1053725967,
+        1059382465,
+        -1090112589,
+        1058080319,
+        1047316563,
+        1063234320,
+        -1102844932,
+        -1104884659,
+        1051820069,
+        1048194334,
+        1056557853,
+        -1100596088,
+        -1122883261,
+        -1101686600,
+        -1065077170,
+        1066667074,
+        1053485836,
+        -1100125171,
+        -1097853535,
+        1033959077,
+        -1084638897,
+        -1115482282,
+        1018691646,
+        -1108425845,
+        -1123347049,
+        1067866192,
+        1054528145,
+        1047103832,
+        -1081358990,
+        -1101467730,
+        1046966218,
+        1060571672,
+        -1132564506,
+        -1113857322,
+        1074779377,
+        1052964973,
+        -1087722943,
+        1048265436,
+        -1081649039,
+        -1101481965,
+        -1122419852,
+        -1083546544,
+        1040338312,
+        1008143503,
+        -1134231848,
+        1054736434,
+        -1103642878,
+        -1126396835,
+        -1121757083,
+        1061922138,
+        -1149681580,
+        -1123976581,
+        -1121263403,
+        1042155906,
+        -1081892635,
+        -1120705863,
+        -1138113800,
+        -1108080500,
+        1039254395,
+        1024000080,
+        -1100737021,
+        -1115216444,
+        1049921994,
+        -1089314872,
+        1076883282,
+        1055199753,
+        -1092248450,
+        -1126033642,
+        1069186255,
+        1042288426,
+        1044378050,
+        -1111217738,
+        -1070623035,
+        1050993956,
+        1082010064,
+        -1056609835,
+        -1107489582,
+        1059445070,
+        -1099987832,
+        1031868346,
+        -1080830884,
+        -1083430632,
+        -1089030675,
+        -1106703888,
+        -1106879949,
+        1069526500,
+        -1106514194,
+        1062658849,
+        1058251629,
+        1056315198,
+        1071949916,
+        -1130166178,
+        1016732034,
+        -1113713111,
+        -1084254133,
+        -1087160907,
+        1048797973,
+        -1097067348,
+        -1086228679,
+        -1109758019,
+        -1104947480,
+        -1114886036,
+        -1093451978,
+        1068135908,
+        -1103030569,
+        -1110068614,
+        -1078778561,
+        1021330862,
+        1074071389,
+        -1099082853,
+        1059867779,
+        -1098463980,
+        -1091937609,
+        1058792408,
+        -1106369811,
+        1046161352,
+        1068251867,
+        -1072794363,
+        1058801358,
+        1057283369,
+        -1070336466,
+        1032611490,
+        -1099767230,
+        -1137618454,
+        1056208105,
+        -1089654248,
+        1085521667,
+        1032823312,
+        -1074990071,
+        -1099052751,
+        1058186736,
+        -1122268328,
+        1024246043,
+        -1094304683,
+        1038219951,
+        -1147609785,
+        1043385408,
+        -1126255853,
+        -1136878720,
+        1043485810,
+        1060948973,
+        -1131742993,
+        -1102028250,
+        -1121240728,
+        -1094346399,
+        1008088172,
+        -1147080708,
+        1028449225,
+        1050644748,
+        -1093935180,
+        -1107475415,
+        -1112151149,
+        -1088941745,
+        1026212167,
+        1057075548,
+        1052635536,
+        1066801229,
+        1054105502,
+        1060258468,
+        1052783445,
+        1046838268,
+        1043188730,
+        -1093030995,
+        -1115248247,
+        -1063267038,
+        1054559157,
+        1069007262,
+        1048967043,
+        1060510019,
+        -1079949372,
+        1034731060,
+        -1089597354,
+        -1087954788,
+        1021648712,
+        -1093594960,
+        -1113859809,
+        -1102461853,
+        -1104704594,
+        1049658978,
+        -1094984090,
+        -1099135389,
+        1055384259,
+        1065392653,
+        -1097883604,
+        1034820356,
+        -1076035544,
+        -1074802291,
+        -1072429863,
+        -1110232231,
+        -1104272544,
+        1046425888,
+        1036994328,
+        1086042000,
+        -1103005158,
+        -1107052666,
+        1025611723,
+        -1125987724,
+        1059423195,
+        -1109613178,
+        -1088158336,
+        -1081924590,
+        1040851177,
+        1054571022,
+        1051110169,
+        -1078093276,
+        -1132318700,
+        1057215469,
+        1065935153,
+        1060393952,
+        1046636121,
+        -1085786657,
+        1029114976,
+        1063195317,
+        1045370689,
+        1048713756,
+        1065668116,
+        1056118807,
+        1041909862,
+        1054001774,
+        -1109487520,
+        1062410903,
+        -1076518209,
+        1051736183,
+        1017143970,
+        1048709782,
+        1066966807,
+        1049086920,
+        -1115425321,
+        -1099239251,
+        -1120357791,
+        1033810189,
+        -1101828932,
+        1040737259,
+        1052523013,
+        1020774876,
+        -1118812681,
+        1061009656,
+        -1134006216,
+        -1098249402,
+        -1134607968,
+        -1111486995,
+        -1114215148,
+        -1122246346,
+        1067708400,
+        -1088590888,
+        1015036572,
+        -1087898722,
+        -1093376778,
+        -1069987293,
+        -1096790902,
+        1044108466,
+        1027789570,
+        -1119570109,
+        -1089935388,
+        981720392,
+        1035068670,
+        -1119955215,
+        -1181150976,
+        -1072323456,
+        -1071302918,
+        1052877780,
+        -1070817761,
+        -1112053877,
+        1041065833,
+        -1123479364,
+        1053095279,
+        -1056350667,
+        1032924292,
+        1038454156,
+        -1110087995,
+        1041502961,
+        -1107765328,
+        -1104466765,
+        -1090155050,
+        -1079430505,
+        -1081710993,
+        1041582337,
+        1036802351,
+        1060435576,
+        -1083570050,
+        -1102491341,
+        1036526778,
+        1073152894,
+        -1093328080,
+        1030013299,
+        1055006897,
+        -1100656781,
+        -1121599757,
+        1042851602,
+        1057712234,
+        1066598539,
+        -1122034030,
+        1041255361,
+        -1120120272,
+        -1089117115,
+        -1094419675,
+        -1133210459,
+        -1062646165,
+        1004371032,
+        1066429569,
+        -1085761586,
+        -1082615305,
+        -1097427178,
+        1062292957,
+        1083973510,
+        -1081124869,
+        -1085144614,
+        1036646229,
+        1067426240,
+        -1089101584,
+        1054944316,
+        -1101988333,
+        -1095082210,
+        -1095530884,
+        -1094807081,
+        1009207665,
+        1034977629,
+        1020194074,
+        1044147685,
+        -1111613708,
+        -1119582871,
+        1041126740,
+        1009982966,
+        -1105236063,
+        -1111740516,
+        1054560448,
+        1023713181,
+        1030923383,
+        1059258175,
+        1030949415,
+        1060148150,
+        1010015850,
+        -1090029250,
+        -1097900427,
+        1031126853,
+        1058764711,
+        1033869813,
+        -1103150593,
+        -1118388674,
+        -1100529368,
+        -1088219344,
+        1058628949,
+        1052476224,
+        1053386158,
+        1067963040,
+        -1090469249,
+        1040381010,
+        1040290917,
+        1084171423,
+        -1075250882,
+        -1100377221,
+        -1086759211,
+        1016977718,
+        1077559831,
+        -1112032019,
+        -1085337301,
+        1047301988,
+        -1118693202,
+        1068863203,
+        -1105232004,
+        1049134387,
+        1065089998,
+        1041035823,
+        -1112444488,
+        1002216554,
+        1050208400,
+        -1075595329,
+        -1118004832,
+        -1088669990,
+        1035372049,
+        1063745959,
+        -1080393081,
+        1071764751,
+        -1082976958,
+        1037501694,
+        -1083178613,
+        1038109647,
+        -1100318982,
+        -1108564672,
+        1043190622,
+        1041476506,
+        1042024479,
+        -1082129322,
+        1034196152,
+        1054387858,
+        -1096397768,
+        -1105883617,
+        -1105880266,
+        -1086864956,
+        -1087990418,
+        1027105629,
+        -1101530087,
+        -1073409393,
+        1036521817,
+        1050151594,
+        -1079341277,
+        983229060,
+        -1109231741,
+        -1073921021,
+        -1126500680,
+        -1100464158,
+        -1094760275,
+        -1081210471,
+        1039480023,
+        -1104875882,
+        -1091283534,
+        -1091210963,
+        1042057905,
+        1046813780,
+        -1118745781,
+        1075338045,
+        1053612986,
+        -1096698585,
+        -1097295978,
+        -1112907462,
+        -1101754937,
+        1009967781,
+        -1113227028,
+        -1090900749,
+        -1104829502,
+        -1103985451,
+        1043255388,
+        1036573248,
+        -1140085424,
+        -1095228630,
+        1034750206,
+        1021785746,
+        1015284978,
+        -1110630643,
+        -1109555662,
+        1020393434,
+        -1095615393,
+        -1119013345,
+        -1093885608,
+        -1135068741,
+        1055276359,
+        -1128271070,
+        1044245605,
+        1049950756,
+        1046111178,
+        1053970602,
+        1017597214,
+        -1086143286,
+        -1093673531,
+        1039505791,
+        -1095014217,
+        -1093448292,
+        1067331365,
+        -1113282817,
+        -1106348832,
+        -1092143654,
+        1008529746,
+        1041993944,
+        -1095882762,
+        1051639363,
+        1065529518,
+        -1109684837,
+        1067536459,
+        1035640795,
+        -1098298958,
+        1027370381,
+        1018094460,
+        1063290165,
+        -1093241607,
+        -1106570704,
+        -1141554680,
+        1060443609,
+        987121781,
+        -1109878315,
+        -1100226834,
+        -1075275617,
+        1048750119,
+        -1146094604,
+        1061051228,
+        1075406467,
+        1042469639,
+        -1053559376,
+        1035371214,
+        992104886,
+        1047736411,
+        -1075414957,
+        1051474397,
+        -1092641260,
+        1058507536,
+        -1086612863,
+        -1079825029,
+        -1087678173,
+        -1096719453,
+        1060185434,
+        1049190725,
+        1042611236,
+        -1094986753,
+        -1065974264,
+        -1114514671,
+        1055209472,
+        1062883956,
+        -1122223144,
+        1068975898,
+        1074181406,
+        -1098450957,
+        -1102442609,
+        -1100737104,
+        -1106005444,
+        -1135245802,
+        -1134788419,
+        -1122989064,
+        -1092512910,
+        1040227134,
+        -1135507595,
+        -1097339692,
+        1043993368,
+        1024658448,
+        -1122294709,
+        -1098413112,
+        1047822346,
+        -1114130156,
+        -1106754435,
+        -1089911062,
+        -1107302814,
+        -1126556097,
+        1065515052,
+        -1146809632,
+        1076173162,
+        -1095567567,
+        -1132872406,
+        -1087811785,
+        1049780981,
+        1030265843,
+        -1088618821,
+        -1107561095,
+        1044249830,
+        -1107138332,
+        1055122589,
+        -1103852342,
+        -1106171399,
+        1042962558,
+        1056326337,
+        -1080647161,
+        1051310439,
+        -1054816494,
+        1058811850,
+        1068139492,
+        -1110959591,
+        1059599843,
+        -1117887101,
+        -1073923317,
+        -1094992197,
+        1068945852,
+        -1095679641,
+        -1104293414,
+        1044966703,
+        -1094994460,
+        1050485938,
+        1060500803,
+        -1097050368,
+        1081552604,
+        -1120229886,
+        1061193337,
+        -1107161977,
+        -1088506729,
+        -1099973858,
+        1045028387,
+        -1082063163,
+        1061241950,
+        -1118510532,
+        -1103056995,
+        1061167545,
+        -1086536056,
+        -1067881011,
+        1048829680,
+        -1068021162,
+        -1082908260,
+        1048142762,
+        -1072765564,
+        1033740732,
+        -1099752003,
+        1056099842,
+        1051324249,
+        1061901419,
+        -1151190048,
+        1088560818,
+        1058207283,
+        1068704682,
+        1028677843,
+        -1129269632,
+        -1108835099,
+        1069389669,
+        1045683751,
+        1069753937,
+        1049101425,
+        1038915115,
+        -1138410998,
+        -1092615937,
+        -1078561042,
+        -1112857020,
+        -1103623904,
+        1029284132,
+        1067178288,
+        -1107049872,
+        1039870477,
+        1053155889,
+        1050811933,
+        1029385477,
+        -1114747716,
+        1023476078,
+        -1111419888,
+        -1123101425,
+        -1115620498,
+        1006841204,
+        997642235,
+        -1117845252,
+        1038387813,
+        1042721541,
+        -1140197314,
+        -1098038916,
+        1050396398,
+        1048996856,
+        -1115459548,
+        1024310124,
+        1039032488,
+        -1113326743,
+        1062089658,
+        -1092497356,
+        1026871107,
+        -1089583742,
+        1026695050,
+        -1105779594,
+        1054078332,
+        -1087645177,
+        -1115392348,
+        1056327009,
+        -1053766498,
+        -1125990757,
+        -1109830140,
+        -1090739080,
+        1044618119,
+        -1105594174,
+        -1088113133,
+        1049343067,
+        -1075076707,
+        -1092357289,
+        -1089336145,
+        -1071073331,
+        -1087315040,
+        -1108452282,
+        1043269804,
+        -1080810652,
+        -1064573535,
+        1047374464,
+        1059970323,
+        1057425602,
+        1061675310,
+        1035563702,
+        1028375932,
+        -1094930685,
+        -1087206653,
+        -1123409085,
+        1049834719,
+        1066650077,
+        -1111178393,
+        -1079273393,
+        -1109969192,
+        1074998134,
+        -1117597063,
+        -1074545973,
+        -1085912956,
+        1043852655,
+        -1130839763,
+        -1099049360,
+        -1082825100,
+        -1104909231,
+        1044450008,
+        -1117624937,
+        -1104387914,
+        1041721821,
+        -1111841846,
+        1051437165,
+        -1095674404,
+        -1103991461,
+        1038570672,
+        -1103178207,
+        1053558342,
+        -1116583017,
+        1032442585,
+        1046293094,
+        1073376879,
+        1046404137,
+        -1173176521,
+        1057312507,
+        1018303140,
+        1035568717,
+        -1136685868,
+        1049389646,
+        1056323494,
+        1025703904,
+        -1113182416,
+        1049185966,
+        -1113141891,
+        1065306522,
+        1031450018,
+        -1133949480,
+        1046762411,
+        1016287901,
+        -1106495036,
+        1041346829,
+        -1130235504,
+        -1099977072,
+        1007896940,
+        -1060750611,
+        -1073036276,
+        1026701581,
+        1078676862,
+        1016823298,
+        1033689323,
+        1030956140,
+        1045259953,
+        -1084981797,
+        -1091619370,
+        -1054237143,
+        -1105985795,
+        -1090460062,
+        1063264366,
+        -1110493978,
+        1015619962,
+        1051987568,
+        1033061759,
+        -1093422293,
+        -1110924208,
+        -1111039386,
+        1055289796,
+        -1081277893,
+        1057711968,
+        1025599770,
+        -1063230824,
+        1047362777,
+        -1092632264,
+        1069018118,
+        -1085850236,
+        -1081259876,
+        -1074752604,
+        1012396028,
+        -1089317073,
+        -1095879328,
+        -1114002107,
+        -1113216599,
+        1063986975,
+        -1132338848,
+        1038199344,
+        -1102934943,
+        1043418985,
+        1042949181,
+        1071394337,
+        -1090607427,
+        -1093609382,
+        -1115748559,
+        1053073386,
+        -1062795083,
+        1054968946,
+        -1084807203,
+        -1096443929,
+        -1090281535,
+        1029767554,
+        -1109301390,
+        -1106064606,
+        1066240253,
+        -1082140528,
+        -1116421811,
+        -1087215959,
+        -1086088874,
+        -1078095146,
+        1067453679,
+        -1122319070,
+        -1101122832,
+        1057011043,
+        1049453304,
+        -1117807920,
+        -1100257889,
+        -1089727630,
+        1048627187,
+        -1114254017,
+        -1111220128,
+        1065071917,
+        -1101437537,
+        1040437570,
+        -1083934254,
+        1050824906,
+        -1144442970,
+        -1077896076,
+        1053569341,
+        -1131695200,
+        1049538176,
+        1028048046,
+        1039534735,
+        1031484818,
+        1035127261,
+        1044941643,
+        1050231126,
+        1029702278,
+        1017450452,
+        -1100044897,
+        1057206521,
+        -1104085492,
+        -1098528069,
+        -1097709948,
+        1047924307,
+        1062432754,
+        -1100014078,
+        1032255481,
+        -1091112777,
+        1050581265,
+        -1090045241,
+        -1075186265,
+        1041989940,
+        -1071435937,
+        -1096810298,
+        -1101200100,
+        -1096882547,
+        -1084417681,
+        -1081386915,
+        -1104913384,
+        -1115265966,
+        -1096059552,
+        1041514899,
+        -1098898850,
+        1040533842,
+        -1095075584,
+        -1113616665,
+        -1087130337,
+        1043199304,
+        1046393462,
+        1038740366,
+        -1093729882,
+        1060245190,
+        -1074450825,
+        -1105509093,
+        1009027721,
+        1060569333,
+        1037645215,
+        1060842212,
+        -1207503872,
+        -1151424532,
+        -1105281420,
+        1054634256,
+        -1104203949,
+        1077623863,
+        -1096085548,
+        1075061393,
+        1052065562,
+        1057537026,
+        1060230289,
+        -1103314027,
+        -1136674778,
+        -1088639093,
+        -1102257933,
+        -1102975794,
+        -1092109947,
+        -1074780649,
+        994681688,
+        1060480519,
+        -1098476254,
+        1060270530,
+        1049920223,
+        -1097627217,
+        1035740218,
+        -1069129318,
+        -1079047758,
+        -1090121219,
+        1031841269,
+        -1130160146,
+        1044721617,
+        -1077104403,
+        -1136312760,
+        1029704941,
+        -1085304400,
+        1060310848,
+        -1111323206,
+        -1093419645,
+        1036674176,
+        -1103055304,
+        1069355440,
+        -1095212080,
+        -1133510048,
+        1053708498,
+        1024077428,
+        -1101711580,
+        1044793419,
+        -1122072479,
+        -1146026843,
+        1057803306,
+        -1122894547,
+        -1072699006,
+        -1095105679,
+        1036106904,
+        -1112306892,
+        -1096554394,
+        1055067619,
+        1064577670,
+        -1081430352,
+        1019576365,
+        1050487720,
+        -1103616544,
+        -1081063270,
+        1061720907,
+        -1085477060,
+        -1117229658,
+        -1074758356,
+        -1114318498,
+        1059902361,
+        1037753483,
+        -1103784583,
+        1053166919,
+        1042087169,
+        -1147345644,
+        1074554673,
+        -1063651181,
+        -1066335303,
+        1066408857,
+        -1060665381,
+        -1083674830,
+        1062944961,
+        1058973602,
+        -1075807612,
+        -1073137859,
+        1079560985,
+        1073227848,
+        1078744398,
+        -1081551649,
+        -1089046982,
+        1073086933,
+        1064235655,
+        1069734744,
+        -1078442664,
+        1046707341,
+        1075134062,
+        -1074644346,
+        1064473025,
+        1065935157,
+        -1088076986,
+        1084139076,
+        1037753757,
+        -1098108355,
+        1081036488,
+        1076216256,
+        -1075518055,
+        -1079118426,
+        1067259640,
+        1075653326,
+        1088354069,
+        1084067991,
+        1074939208,
+        -1077886944,
+        1079359294,
+        1072082026,
+        -1081204426,
+        -1059872625,
+        1058340680,
+        -1101036101,
+        -1074526240,
+        1079947098,
+        -1076518295,
+        1050408058,
+        1062102837,
+        1053097768,
+        1065902359,
+        1062592257,
+        1049622415,
+        1065499885,
+        -1075393717,
+        1054730665,
+        -1108230914,
+        -1107125086,
+        -1127875233,
+        -1100112833,
+        1063755564,
+        1065983558,
+        1065394821,
+        1066239537,
+        -1091908036,
+        1071884749,
+        1052031889,
+        1065373723,
+        -1081365896,
+        1075041580,
+        -1089744735,
+        1087095363,
+        -1089025914,
+        1031316807,
+        -1062268502,
+        1061880198,
+        1077053094,
+        -1082904100,
+        1085543985,
+        1065488158,
+        -1063838704,
+        -1072741084,
+        1074839523,
+        -1083018082,
+        -1070190075,
+        1075171524,
+        -1076289892,
+        -1063204308,
+        -1090394623,
+        -1087827061,
+        -1076977464,
+        -1069305784,
+        1057746459,
+        1063140874,
+        -1084832610,
+        1062897517,
+        1074274945,
+        -1093415025,
+        1038576590,
+        1061092145,
+        1089001619,
+        -1070658660,
+        -1078496166,
+        1058106887,
+        -1067052905,
+        1064353675,
+        1070834893,
+        -1077133889,
+        -1080579457,
+        1048926092,
+        1057640404,
+        1048219476,
+        -1090007227,
+        1065091033,
+        1054993356,
+        1022285517,
+        -1080463197,
+        -1073594613,
+        1062694298,
+        -1070630535,
+        -1098368416,
+        1026083180,
+        1071996685,
+        1063519260,
+        -1076141391,
+        -1070440153,
+        -1069209497,
+        -1096646489,
+        -1065271957,
+        -1062144882,
+        -1078262046,
+        -1109991740,
+        -1089308407,
+        1080504469,
+        1049691139,
+        -1100081368,
+        1052667217,
+        -1078073443,
+        1053713024,
+        1034206093,
+        -1081894380,
+        -1103134953,
+        -1088072490,
+        -1088221587,
+        1032598163,
+        -1130556299,
+        -1123240112,
+        -1086125463,
+        1059551197,
+        1065671201,
+        -1086503984,
+        1047226414,
+        -1086775718,
+        -1111861986,
+        -1122790635,
+        -1120182438,
+        -1139575981,
+        -1090459300,
+        -1091963660,
+        1064556548,
+        -1113966100,
+        1051260827,
+        -1096096649,
+        -1076263734,
+        -1080836303,
+        -1078460911,
+        1076426444,
+        -1079979590,
+        1053428617,
+        -1097419933,
+        -1079366581,
+        -1093410234,
+        1062181259,
+        -1096449187,
+        -1085978055,
+        1049158372,
+        -1076401483,
+        -1086925501,
+        -1092127136,
+        1059957429,
+        -1078490037,
+        -1072616485,
+        1057580187,
+        -1095315328,
+        1077143475,
+        -1072068138,
+        1070753738,
+        1042139471,
+        1058138090,
+        -1097809694,
+        1055194040,
+        1054856419,
+        -1053279029,
+        1079835273,
+        1076084715,
+        -1068163765,
+        1066100769,
+        -1066597409,
+        -1068738436,
+        -1074042472,
+        -1111510672,
+        1068485875,
+        -1080936107,
+        -1071587419,
+        -1081676755,
+        1075637719,
+        1062309873,
+        -1071418604,
+        -1069319174,
+        -1066305960,
+        -1069529372,
+        1080858712,
+        1063227876,
+        1075809494,
+        -1073611346,
+        -1092568874,
+        1062122407,
+        -1088644499,
+        1075776019,
+        1064684316,
+        -1093716517,
+        1067119883,
+        1082138535,
+        1083462075,
+        1022836246,
+        -1069630661,
+        1073306903,
+        -1086893154,
+        1057215505,
+        -1064351485,
+        -1089609406,
+        1079922416,
+        1074292381,
+        -1090900893,
+        -1105063847,
+        1040158229,
+        -1077461783,
+        1072513013,
+        -1133539367,
+        1054284389,
+        1070408171,
+        1063286725,
+        -1126031306,
+        1043561169,
+        1066048056,
+        -1087608411,
+        1067062798,
+        -1086136146,
+        1067582901,
+        1082436993,
+        1047528823,
+        -1076259964,
+        -1091847371,
+        -1109455446,
+        -1070943921,
+        -1076894352,
+        1058849802,
+        -1090371701,
+        -1114596581,
+        1068062822,
+        -1064036339,
+        -1074440350,
+        -1074361877,
+        1032799354,
+        -1100656717,
+        1050271032,
+        1062078057,
+        -1081631795,
+        1079656564,
+        1075119704,
+        -1079534328,
+        -1067897141,
+        -1056762737,
+        -1089436003,
+        -1078395578,
+        -1079616198,
+        -1075871781,
+        -1080845097,
+        1082261460,
+        -1084198105,
+        -1068655706,
+        1073048074,
+        -1077193084,
+        1067890812,
+        -1082936755,
+        -1067201290,
+        1067620237,
+        1065911901,
+        -1075870013,
+        -1072779239,
+        1064326372,
+        1082992719,
+        -1072386531,
+        1057010668,
+        -1078380952,
+        -1079162961,
+        1060561552,
+        -1098229243,
+        1084975563,
+        -1069519511,
+        1075765444,
+        -1064389671,
+        1066448250,
+        -1086947801,
+        1079316358,
+        1065691709,
+        1060926838,
+        -1066227071,
+        1053103817,
+        1065944301,
+        -1067993673,
+        1082419790,
+        -1087588636,
+        -1076743642,
+        -1082339837,
+        -1078863497,
+        -1066844626,
+        1070815750,
+        -1073245414,
+        -1063437998,
+        1049160358,
+        -1099864993,
+        -1105026778,
+        1033721013,
+        1054029791,
+        -1082299881,
+        -1083576168,
+        1041175875,
+        -1082482793,
+        -1104319515,
+        -1088914676,
+        1066740500,
+        1067114977,
+        1061460043,
+        -1078134051,
+        1069248299,
+        -1087756436,
+        1066751003,
+        -1090267715,
+        -1088460460,
+        1066442950,
+        1045613684,
+        1074716838,
+        -1094660326,
+        1060970210,
+        -1090026086,
+        1074572135,
+        -1071361510,
+        -1070889767,
+        -1078395569,
+        1060883685,
+        1067979164,
+        1067228967,
+        1037424464,
+        -1065491989,
+        -1082300058,
+        1059429486,
+        -1069492669,
+        1068247017,
+        -1077561939,
+        1060955142,
+        1083847703,
+        1067764877,
+        -1093821380,
+        1071500050,
+        1076501641,
+        1071940244,
+        1065100469,
+        1058244464,
+        1051776732,
+        1084516603,
+        -1090452745,
+        1057829707,
+        1078829322,
+        -1083918765,
+        1042547012,
+        -1072792091,
+        -1081239388,
+        -1113281688,
+        -1072033765,
+        -1076079915,
+        -1089103968,
+        -1096886121,
+        -1093477643,
+        -1075288026,
+        -1070662574,
+        1062182262,
+        -1082825229,
+        -1096436549,
+        -1081884947,
+        -1066661566,
+        -1074706179,
+        1074593541,
+        -1075771602,
+        1066452144,
+        1070077387,
+        -1068674444,
+        -1079006784,
+        1078273962,
+        1066542704,
+        1063150880,
+        -1131216672,
+        1061774065,
+        -1073112991,
+        -1086017283,
+        1073630370,
+        -1080672605,
+        1076922476,
+        1058127277,
+        1065978740,
+        1076081001,
+        1059890640,
+        1064432730,
+        1079678569,
+        1052820063,
+        -1101403914,
+        -1089045740,
+        1061084148,
+        -1077886375,
+        -1097258532,
+        1051441222,
+        -1096040827,
+        1061886150,
+        1060876524,
+        1048617498,
+        -1131953302,
+        1018352820,
+        1059330755,
+        -1105621682,
+        -1088780443,
+        -1088929767,
+        -1099188289,
+        1076807963,
+        -1094678808,
+        1066723161,
+        -1090543824,
+        1054946355,
+        -1079391199,
+        -1089268986,
+        -1081432098,
+        -1081941474,
+        1056524345,
+        1068951551,
+        1043597672,
+        1057913202,
+        1065963598,
+        -1079993979,
+        -1085282696,
+        1067505795,
+        -1081976659,
+        1044084590,
+        1073392539,
+        1064083779,
+        -1072622069,
+        1064719326,
+        1082186790,
+        -1071944920,
+        1052748410,
+        1071634447,
+        1051670234,
+        -1094223379,
+        1069265369,
+        1070627139,
+        -1105806828,
+        -1076916265,
+        1065995091,
+        -1092402311,
+        1050050665,
+        -1098839941,
+        1055397790,
+        -1080472964,
+        -1071429143,
+        1067029046,
+        1058960395,
+        1074622903,
+        1060471620,
+        -1098800771,
+        -1088166294,
+        -1078631322,
+        -1072371232,
+        1060559807,
+        1072656909,
+        1080111424,
+        -1086357828,
+        1077686406,
+        -1072726091,
+        1074387564,
+        -1104469965,
+        1058870318,
+        1073324286,
+        1069471301,
+        1079033893,
+        1059016128,
+        1077776746,
+        1073106751,
+        1071889636,
+        -1070927005,
+        -1086868002,
+        1068090115,
+        -1070448594,
+        -1090540757,
+        1070685485,
+        1063129718,
+        1070536108,
+        1074742700,
+        -1081690179,
+        1027443884,
+        -1091145739,
+        -1088123336,
+        1015139420,
+        -1087910814,
+        -1088752349,
+        1035780621,
+        -1110306830,
+        -1092136102,
+        -1141437109,
+        1063930496,
+        1053900401,
+        -1100210020,
+        1050805032,
+        -1083286907,
+        1038911196,
+        -1086569470,
+        -1118679918,
+        1041246402,
+        1050618548,
+        1058776300,
+        -1095207486,
+        1056445550,
+        1052520755,
+        -1113185923,
+        -1077022190,
+        -1074914107,
+        1060129460,
+        1060914277,
+        -1073836487,
+        1037639755,
+        1073280781,
+        1064535672,
+        -1099835086,
+        1050732521,
+        -1145982262,
+        -1078674577,
+        1067917529,
+        -1111299671,
+        -1078932948,
+        1057018084,
+        1079648633,
+        1040894660,
+        -1081662412,
+        1071425533,
+        -1098410133,
+        1059948420,
+        -1074910302,
+        -1106098008,
+        1055692824,
+        1074953479,
+        -1093039866,
+        -1084484701,
+        -1066849315,
+        -1058464798,
+        -1106884193,
+        -1097542792,
+        -1067536520,
+        -1070532849,
+        -1091076043,
+        1076927405,
+        -1061465847,
+        1038113567,
+        -1091003015,
+        -1085550416,
+        1073297080,
+        1070583290,
+        -1090438651,
+        -1080147427,
+        1056176459,
+        -1083624779,
+        1057498665,
+        1069074685,
+        -1076825989,
+        1077900028,
+        1076064108,
+        1052791385,
+        1052739090,
+        1043848517,
+        -1082193690,
+        -1090512009,
+        -1079305834,
+        1060398879,
+        1044494978,
+        -1087022812,
+        1081054820,
+        1023798805,
+        1076628316,
+        1058662376,
+        1075006331,
+        -1078105880,
+        -1065487749,
+        -1086798122,
+        -1071922500,
+        1058218202,
+        -1118409550,
+        1042074469,
+        1063969552,
+        -1101909227,
+        -1118558563,
+        1049274557,
+        1060371437,
+        -1081302415,
+        -1093806435,
+        1054114691,
+        -1081963917,
+        1065425577,
+        1045714678,
+        -1090026209,
+        -1114527138,
+        -1072479502,
+        -1104934435,
+        -1088269025,
+        1062302407,
+        -1100524342,
+        1056792105,
+        1069726958,
+        1062492720,
+        -1071696569,
+        -1098367244,
+        1077806283,
+        1062137254,
+        -1108057900,
+        1075817318,
+        1072875893,
+        -1103179019,
+        -1072411691,
+        1070457970,
+        1067356701,
+        1068806667,
+        1059437122,
+        -1064520512,
+        1038320033,
+        -1082939190,
+        -1079434469,
+        -1078505115,
+        1054456405,
+        1071121615,
+        1036171774,
+        -1079804911,
+        -1068572805,
+        1048992125,
+        -1093493012,
+        -1088319687,
+        1066636287,
+        1057589839,
+        -1067716732,
+        -1091445912,
+        1031851041,
+        -1069122582,
+        1069835055,
+        1055035016,
+        -1066720856,
+        -1079341344,
+        -1079136946,
+        -1080816790,
+        -1096844749,
+        1061266738,
+        -1085436371,
+        -1082804856,
+        -1067691676,
+        1066346209,
+        1077929327,
+        1073582666,
+        1058087463,
+        1068094126,
+        -1080729906,
+        1083445492,
+        -1089142629,
+        -1077962962,
+        1065804781,
+        1060468413,
+        1059386101,
+        1040535256,
+        1068502301,
+        1071214824,
+        -1062823698,
+        1082711365,
+        1040808639,
+        -1077040913,
+        1055794046,
+        1075281927,
+        -1067516350,
+        1080706161,
+        -1120092601,
+        -1092185549,
+        -1094395848,
+        1050304627,
+        1063429672,
+        1064436717,
+        1038611863,
+        -1095538412,
+        1034240734,
+        -1083541787,
+        1065670052,
+        -1109993473,
+        1045756328,
+        -1094092034,
+        -1109717362,
+        -1123867786,
+        1039106561,
+        -1135606702,
+        -1095844439,
+        -1090579289,
+        -1089632757,
+        -1082066023,
+        -1097526499,
+        1065726260,
+        1051030258,
+        1066301019,
+        -1089060150,
+        1078037320,
+        -1073601163,
+        -1076050242,
+        -1106307239,
+        1062314035,
+        1066777313,
+        -1104143093,
+        -1096020297,
+        -1076629339,
+        -1073232493,
+        -1113689330,
+        1035490317,
+        -1078229519,
+        1054911588,
+        1062795466,
+        -1071797101,
+        -1107390453,
+        1057870548,
+        1059810384,
+        -1097912845,
+        1072721686,
+        -1081315313,
+        -1118230428,
+        1072184375,
+        -1074209133,
+        -1110688340,
+        1074444724,
+        -1073061006,
+        1058417124,
+        -1087908948,
+        -1075962559,
+        1062156694,
+        -1092270433,
+        -1078247465,
+        -1072170574,
+        -1080218612,
+        1021463946,
+        1057586136,
+        -1106114563,
+        -1089108299,
+        1065158945,
+        1053705852,
+        1057485790,
+        1037649662,
+        -1087360820,
+        1038432063,
+        1065787557,
+        1064799982,
+        -1108874220,
+        -1072869961,
+        1075057781,
+        -1075184425,
+        -1080566625,
+        -1099436339,
+        -1106332889,
+        -1087537092,
+        -1070425011,
+        -1063942737,
+        -1083373792,
+        1070229091,
+        1072130700,
+        1053046986,
+        1055283477,
+        1066102796,
+        -1062204780,
+        -1099755415,
+        1028168514,
+        -1101491336,
+        -1101247213,
+        -1087649515,
+        1051221335,
+        1015329731,
+        1007861842,
+        1056629218,
+        -1093480262,
+        -1181156804,
+        -1076635631,
+        1055698206,
+        1043665238,
+        -1080760646,
+        1056222191,
+        1039130571,
+        -1108265495,
+        -1069116168,
+        -1093288481,
+        -1077825943,
+        1063053327,
+        -1142269376,
+        1024246483,
+        -1083470935,
+        -1081242171,
+        -1088392132,
+        1065098265,
+        -1105649250,
+        -1114254707,
+        -1076067680,
+        -1112920211,
+        -1078422884,
+        -1090003740,
+        1067001275,
+        -1088260488,
+        -1090667158,
+        -1097993581,
+        -1080277704,
+        1023007337,
+        -1106354240,
+        -1080553973,
+        1058960699,
+        1052265081,
+        -1085737549,
+        -1081756391,
+        1056941090,
+        -1079025424,
+        -1078093313,
+        1065385216,
+        1068038776,
+        1060379100,
+        1056678637,
+        -1070704353,
+        -1077357144,
+        1064048451,
+        1050362135,
+        -1079040819,
+        -1087825055,
+        -1075880495,
+        1069890056,
+        -1066985953,
+        -1087414216,
+        1058971076,
+        1054023714,
+        1073090865,
+        -1096295800,
+        1066099241,
+        1072605185,
+        1068017232,
+        -1096539426,
+        -1083025636,
+        1064079118,
+        1063778392,
+        -1079614176,
+        1072267501,
+        -1083262523,
+        -1090629751,
+        -1081971621,
+        1064029646,
+        1059825110,
+        -1100577131,
+        1066793193,
+        -1075449969,
+        -1074796400,
+        -1076368976,
+        1072055397,
+        -1081247526,
+        -1069414791,
+        -1106166847,
+        -1073596755,
+        -1075113036,
+        1052355903,
+        1057495020,
+        1051434632,
+        -1111377444,
+        1050292798,
+        1051507720,
+        1037700787,
+        1049917292,
+        -1094537388,
+        1051081961,
+        1059509960,
+        -1085260832,
+        1052326688,
+        -1096479103,
+        1045829697,
+        1051582475,
+        1067118345,
+        1049742172,
+        1042357487,
+        1042597534,
+        -1085042105,
+        1063914415,
+        -1088521312,
+        1060104086,
+        -1078745381,
+        1067862638,
+        -1091821852,
+        1051493498,
+        -1086539370,
+        1062819898,
+        1050626483,
+        -1090383461,
+        1068854792,
+        -1110753177,
+        -1078044493,
+        1050604404,
+        -1079502360,
+        -1079547675,
+        -1100404348,
+        -1109844228,
+        -1087366197,
+        -1073056293,
+        -1088964247,
+        -1073016966,
+        -1072988698,
+        -1083327623,
+        1066751318,
+        -1088263219,
+        1078675351,
+        -1075498670,
+        1066767257,
+        1074404560,
+        1072359046,
+        1077706039,
+        -1055780335,
+        -1082365356,
+        -1086682118,
+        -1062915146,
+        -1070837926,
+        -1072396457,
+        1056392122,
+        1083335821,
+        -1092607195,
+        -1128790456,
+        1071658907,
+        -1079819868,
+        -1068170642,
+        1044806844,
+        -1084112626,
+        1065341433,
+        1062572661,
+        1052618566,
+        1046453122,
+        -1084834536,
+        -1063268894,
+        -1063013858,
+        -1098263564,
+        -1071253224,
+        1059108515,
+        -1098292513,
+        -1064038835,
+        1056370560,
+        -1080149920,
+        1060107973,
+        1059854414,
+        1075438190,
+        1073203142,
+        -1081212374,
+        1074122928,
+        -1084418379,
+        -1106244900,
+        1065294153,
+        -1098081457,
+        -1112309194,
+        -1096444036,
+        -1099283486,
+        -1072569816,
+        -1084164188,
+        1039608809,
+        1044922765,
+        -1092578083,
+        1080891979,
+        -1082015717,
+        -1091828211,
+        1076560066,
+        1073666007,
+        -1103142142,
+        -1074127597,
+        -1088041982,
+        -1086523590,
+        -1096920567,
+        1067103740,
+        1069577620,
+        -1092996918,
+        -1101901137,
+        -1080886977,
+        -1072142758,
+        1072862495,
+        1070764882,
+        -1072449078,
+        -1063771106,
+        -1087835809,
+        -1083045286,
+        -1106804453,
+        -1076699311,
+        -1084672075,
+        1060548767,
+        -1141334938,
+        1071725775,
+        -1105541449,
+        -1056948165,
+        -1069899696,
+        1062451139,
+        -1072673612,
+        -1074367545,
+        -1070710571,
+        1075512231,
+        -1078943868,
+        -1137387067,
+        -1098330572,
+        1060184652,
+        1063110307,
+        -1104350244,
+        -1093964957,
+        -1087306482,
+        -1078523234,
+        1080102815,
+        1061973498,
+        -1097142129,
+        -1080792453,
+        -1114825126,
+        -1085077645,
+        1074038815,
+        -1087951953,
+        -1115813873,
+        -1111513569,
+        -1098622205,
+        1067728629,
+        1059067352,
+        1059237627,
+        1068342465,
+        -1088965748,
+        -1079451105,
+        1059387771,
+        -1097097098,
+        1057448393,
+        -1085643523,
+        1069454665,
+        -1101110974,
+        1074448998,
+        1052041247,
+        1015965924,
+        -1075834522,
+        -1071639512,
+        -1086454941,
+        1041043132,
+        1078092140,
+        -1079205332,
+        1067377271,
+        -1094732255,
+        -1070893474,
+        1060681374,
+        -1085636506,
+        -1071577181,
+        -1115820121,
+        1055197746,
+        1033600919,
+        -1105980877,
+        1035308775,
+        1053215144,
+        1053334834,
+        1032579576,
+        -1087582404,
+        1047272362,
+        1038448145,
+        -1098588044,
+        1060049522,
+        -1100071790,
+        1059615328,
+        1058043781,
+        1058936069,
+        -1097375953,
+        -1099138783,
+        1063901187,
+        -1102307502,
+        -1120394153,
+        -1095390898,
+        1058633628,
+        1051203889,
+        1042691558,
+        1059771796,
+        1061141828,
+        -1095719020,
+        1053168302,
+        1040999395,
+        -1107508926,
+        1057732882,
+        -1107032191,
+        -1085295167,
+        1049823881,
+        -1083656834,
+        -1096950110,
+        -1074721388,
+        -1062935671,
+        1051858961,
+        -1079456362,
+        1057663274,
+        -1093836302,
+        -1083413360,
+        1066767231,
+        1066120138,
+        -1100142068,
+        1071092702,
+        1050853403,
+        -1091784999,
+        -1065092435,
+        1060483931,
+        1027588835,
+        -1080643582,
+        -1072942065,
+        -1093031570,
+        -1097429957,
+        -1106437518,
+        -1085087123,
+        1050642071,
+        -1101616431,
+        -1080983213,
+        1056730893,
+        -1078043188,
+        1057483670,
+        -1073460453,
+        -1080394141,
+        -1093599999,
+        1054325276,
+        1082702169,
+        1074933176,
+        -1080851978,
+        1057201273,
+        -1094053711,
+        -1089205804,
+        1057363672,
+        -1086904792,
+        1055096528,
+        1039993163,
+        1076173944,
+        1017537907,
+        1059997908,
+        1051374293,
+        1080935481,
+        -1086323838,
+        -1084795252,
+        1070666929,
+        1075955951,
+        1072608271,
+        -1111016475,
+        1078829729,
+        -1118112077,
+        1053719360,
+        -1097598562,
+        1043968850,
+        -1080894013,
+        -1089956825,
+        1048850772,
+        -1110058767,
+        1028756370,
+        1059222566,
+        992572400,
+        -1080995251,
+        1057373314,
+        1059347033,
+        1052956837,
+        -1073002248,
+        -1105385537,
+        -1107579077,
+        1061841397,
+        1056446341,
+        1060245710,
+        -1081879406,
+        -1119849904,
+        -1076043681,
+        1054975994,
+        1049032829,
+        1068424433,
+        -1086804754,
+        -1078506643,
+        1036424930,
+        1026225862,
+        1021157284,
+        1063752590,
+        -1105460322,
+        -1079324592,
+        1058021316,
+        -1082557243,
+        1054762773,
+        1034194208,
+        -1090182571,
+        1042311615,
+        -1103507660,
+        -1065817621,
+        -1083786711,
+        -1084877867,
+        1057513001,
+        1056710905,
+        -1100497262,
+        1074143471,
+        -1173110424,
+        1048795089,
+        -1107453991,
+        -1084675998,
+        -1097878445,
+        1094386998,
+        1074100791,
+        1071665464,
+        -1079220094,
+        1065525343,
+        -1079378304,
+        -1077218364,
+        -1079239048,
+        -1091286507,
+        1053591845,
+        -1078787131,
+        1065274560,
+        -1072547713,
+        -1084363942,
+        1088071741,
+        -1082005017,
+        -1130717432,
+        1045061671,
+        1045970539,
+        1061395651,
+        -1075316693,
+        -1096732053,
+        -1084625613,
+        -1084841604,
+        1068526952,
+        1065701666,
+        1072113436,
+        1061586888,
+        -1077861006,
+        -1070716565,
+        -1062815971,
+        -1072789358,
+        -1078691616,
+        1052750813,
+        -1074866267,
+        -1089759526,
+        -1074054034,
+        -1072042640,
+        -1094116030,
+        1043636580,
+        -1127046630,
+        1053351244,
+        -1128324567,
+        1061694916,
+        1023978779,
+        1028475744,
+        1046467070,
+        -1098825639,
+        -1080302859,
+        -1104173264,
+        1050571474,
+        -1085517353,
+        1043262684,
+        -1097407615,
+        1059954989,
+        -1128914416,
+        -1082842823,
+        1036947223,
+        -1098907349,
+        1060392493,
+        -1089371398,
+        -1091721343,
+        -1085626562,
+        1071328160,
+        1076938337,
+        1066428116,
+        -1066231198,
+        1076965740,
+        -1098159092,
+        -1082605584,
+        -1092218819,
+        1058108174,
+        1038501423,
+        -1098523559,
+        1073834517,
+        1046375510,
+        -1079047677,
+        -1096125648,
+        1037880225,
+        -1078342541,
+        1090373474,
+        1049585311,
+        -1079127512,
+        1038124228,
+        -1082273110,
+        1069463525,
+        1067217267,
+        -1118651219,
+        -1078376545,
+        -1088719598,
+        1058776478,
+        1043814497,
+        -1075277863,
+        1072701174,
+        1065671071,
+        -1070147413,
+        -1062325087,
+        -1092822098,
+        1028671060,
+        -1066037934,
+        -1082878966,
+        -1087837465,
+        -1073520334,
+        -1079638235,
+        -1085813499,
+        -1073349234,
+        -1080965754,
+        1075303292,
+        -1089140897,
+        1045832609,
+        1058469932,
+        1083044860,
+        1081352661,
+        1064599351,
+        -1074172303,
+        -1098890486,
+        1078253002,
+        -1081016418,
+        1061707522,
+        1072257712,
+        1066112287,
+        1076346609,
+        -1080203738,
+        1077340514,
+        -1078482260,
+        -1121469108,
+        1077812279,
+        1073379446,
+        1057914863,
+        -1097092524,
+        -1082577663,
+        1058813128,
+        1067286884,
+        -1090284780,
+        1064471773,
+        1060765787,
+        -1092344039,
+        -1105751320,
+        1063137941,
+        -1088409371,
+        1050516259,
+        -1078062607,
+        1034960755,
+        -1085300060,
+        1047593412,
+        -1081998199,
+        -1112063697,
+        1043004159,
+        -1080865040,
+        1062238789,
+        -1073429797,
+        -1114046409,
+        1034066803,
+        1053526894,
+        -1066340970,
+        1079847339,
+        -1098038034,
+        1065519090,
+        1084134460,
+        1078200614,
+        -1072002787,
+        1052132949,
+        1060950449,
+        1031974903,
+        -1082936294,
+        1066035564,
+        1066205661,
+        -1079442876,
+        1051687540,
+        -1089182828,
+        -1094314806,
+        -1071663019,
+        -1064504209,
+        1065803646,
+        -1079651884,
+        -1127917510,
+        1059386849,
+        -1078145176,
+        1083588848,
+        1053073555,
+        -1075001263,
+        -1105448057,
+        1046593813,
+        1046698476,
+        -1067106100,
+        1049395370,
+        -1079274140,
+        1068269028,
+        1066066946,
+        -1080387143,
+        -1079413821,
+        1060262189,
+        1072219935,
+        1069068577,
+        -1081510358,
+        -1107994358,
+        -1089632744,
+        -1080216655,
+        -1069256382,
+        -1094937085,
+        -1124264035,
+        1050418768,
+        -1085529642,
+        1076382848,
+        1047866889,
+        -1079068321,
+        -1080695433,
+        1056980204,
+        1075228646,
+        1060650786,
+        1067699597,
+        1068225902,
+        1074892027,
+        -1068146744,
+        -1072729233,
+        1069171041,
+        -1080931652,
+        1063734670,
+        -1105900704,
+        1062615000,
+        1064994664,
+        1071026709,
+        -1088583026,
+        1058298554,
+        1048750208,
+        1038273748,
+        -1097111654,
+        1043001059,
+        1033823156,
+        1049852168,
+        -1097004050,
+        -1077690253,
+        -1083473801,
+        -1100818160,
+        1045059120,
+        -1131288198,
+        1062066120,
+        -1082573257,
+        1061658506,
+        1042328589,
+        1054523355,
+        1064695961,
+        -1094529896,
+        -1128447718,
+        -1090146102,
+        1054095564,
+        1068928800,
+        1070890990,
+        1067889423,
+        1059810470,
+        -1078801236,
+        1076211723,
+        -1086990841,
+        -1072812256,
+        -1069774114,
+        -1107137389,
+        1061354488,
+        1052598831,
+        1066721661,
+        -1083827843,
+        -1072561742,
+        1072273925,
+        -1090689440,
+        -1076850452,
+        -1077067336,
+        1074189733,
+        -1071796510,
+        -1121781591,
+        -1084382359,
+        1075040821,
+        1067936800,
+        -1117279311,
+        -1081800307,
+        1055559042,
+        -1106497686,
+        -1085665064,
+        -1070267888,
+        -1096137513,
+        1064396064,
+        1076296796,
+        1073428277,
+        -1085397353,
+        -1078428262,
+        1075078800,
+        1060586600,
+        1033667475,
+        -1081124424,
+        -1089040810,
+        1069133695,
+        1063091111,
+        -1089980658,
+        1065688007,
+        1065159819,
+        1052850957,
+        1029827737,
+        -1071121949,
+        1066611455,
+        1060609855,
+        1063613171,
+        -1085843159,
+        1079489968,
+        1063438902,
+        -1068079474,
+        1066756648,
+        -1079235222,
+        1073220314,
+        1075670363,
+        1068252272,
+        -1080173517,
+        1049783955,
+        -1091460991,
+        -1085550130,
+        1073062699,
+        1065121778,
+        -1102180674,
+        -1081445123,
+        1050323152,
+        -1112264922,
+        1056370985,
+        -1110735526,
+        1042257797,
+        1036416908,
+        1057319553,
+        1039766371,
+        1023895701,
+        -1088344787,
+        1055116002,
+        1041559023,
+        1048460456,
+        -1095968679,
+        -1088657497,
+        1015584156,
+        -1079036885,
+        -1088134234,
+        1042530454,
+        1026539929,
+        1062629094,
+        1060824774,
+        -1116711256,
+        1059214983,
+        -1140723932,
+        1041759641,
+        1072900300,
+        1070172407,
+        -1084478780,
+        1069793606,
+        1069636792,
+        -1086970887,
+        1058191720,
+        1042538768,
+        -1096626815,
+        1049934202,
+        1051992865,
+        -1075147332,
+        -1105467895,
+        1069712163,
+        1057541225,
+        1060863600,
+        1068668591,
+        1030245396,
+        -1075313577,
+        1069828117,
+        1066748271,
+        -1073216923,
+        -1059833707,
+        -1057886730,
+        -1094486530,
+        -1081723305,
+        1091512643,
+        1074060112,
+        1053979037,
+        -1086578035,
+        1074242936,
+        -1093535243,
+        1079032081,
+        -1080391017,
+        -1065346283,
+        -1079768166,
+        1060052874,
+        1070517331,
+        -1084152981,
+        1073164781,
+        1085548572,
+        1055862797,
+        -1074772110,
+        -1084642654,
+        -1082264765,
+        1055776769,
+        -1073435220,
+        1053341304,
+        1071676675,
+        1034558460,
+        -1073465831,
+        1068210489,
+        -1070762416,
+        1063002769,
+        -1069919745,
+        -1117382277,
+        -1078475949,
+        -1072469773,
+        -1077804181,
+        1091747999,
+        -1068535874,
+        -1080022918,
+        -1077027037,
+        -1072793905,
+        1048942360,
+        1048672087,
+        -1093286310,
+        -1089226685,
+        -1087006467,
+        -1069278240,
+        1042746953,
+        -1106020225,
+        -1080516978,
+        1069315172,
+        1066470505,
+        -1090094249,
+        -1077749296,
+        -1088926731,
+        1060909259,
+        1054072230,
+        -1075335481,
+        -1104235191,
+        -1089952329,
+        1057325522,
+        1074183152,
+        -1112345906,
+        -1093719133,
+        -1097374394,
+        -1110389348,
+        -1062058098,
+        989817808,
+        -1072101202,
+        1087993604,
+        -1079023249,
+        1074187512,
+        1074805933,
+        1085622986,
+        1057442599,
+        1072818094,
+        1057615790,
+        -1066515503,
+        -1106960203,
+        -1079419072,
+        1066504278,
+        1059891316,
+        1075901755,
+        1076918500,
+        -1079287430,
+        1078294861,
+        1047411412,
+        -1088131344,
+        1065659355,
+        -1073452965,
+        -1089412323,
+        1073943716,
+        -1073218820,
+        -1096939301,
+        -1068212967,
+        1050048101,
+        1070821132,
+        1058805728,
+        -1078171489,
+        -1089184873,
+        1059816648,
+        1080159526,
+        -1094591867,
+        1049017407,
+        1056103691,
+        -1120194648,
+        1051796827,
+        1051095114,
+        1072438720,
+        -1067324671,
+        1076721887,
+        -1089485961,
+        1068771164,
+        1054569171,
+        1081159343,
+        1074247594,
+        1073913459,
+        -1086259559,
+        -1087815558,
+        -1085980563,
+        1080799366,
+        -1085240255,
+        -1104285991,
+        1079567177,
+        1064774308,
+        1074951581,
+        1043992380,
+        1063988881,
+        1075911189,
+        1058407739,
+        -1080135483,
+        -1070524555,
+        1064219972,
+        1055560380,
+        -1086457775,
+        1069564014,
+        1038848349,
+        1022997659,
+        1061203655,
+        -1115285378,
+        1030718282,
+        1058665727,
+        -1083093326,
+        1049704618,
+        -1069887327,
+        1033206762,
+        -1082632453,
+        1056139317,
+        1066083707,
+        1055834409,
+        1030231902,
+        1055504744,
+        -1100858354,
+        -1079785141,
+        -1090275468,
+        1049935591,
+        1037178289,
+        -1096725787,
+        1064724328,
+        1059167637,
+        -1081027947,
+        1065901137,
+        -1073683471,
+        1063434206,
+        1059700257,
+        1070892322,
+        1063020352,
+        -1091851347,
+        -1087712274,
+        1066310705,
+        1069459970,
+        -1066414298,
+        -1060168052,
+        -1130874822,
+        1066671684,
+        -1076068234,
+        -1091824704,
+        1058313492,
+        1043007317,
+        -1098130956,
+        1064198382,
+        -1087330866,
+        -1098165622,
+        1069027816,
+        -1102465397,
+        1058032336,
+        -1089714021,
+        -1083265070,
+        1059004139,
+        -1145791189,
+        1075868664,
+        -1080643453,
+        -1078337017,
+        1048706856,
+        -1091602751,
+        1041383077,
+        1044870391,
+        -1088036065,
+        -1121264714,
+        -1075803708,
+        1062976098,
+        1074833747,
+        1019481845,
+        1074026507,
+        -1135809234,
+        1058165298,
+        -1070262899,
+        1069181744,
+        1049124971,
+        1050918062,
+        1049921300,
+        -1072661475,
+        -1097717064,
+        1066352515,
+        1074469015,
+        1068371294,
+        1066732094,
+        1047322900,
+        1072323784,
+        1054096748,
+        1042188484,
+        1071748351,
+        -1087040665,
+        -1086826561,
+        -1106061445,
+        -1131599924,
+        -1136733301,
+        1033010956,
+        1045151722,
+        -1083658347,
+        -1139407389,
+        1030441194,
+        1052833271,
+        -1086093153,
+        1047376067,
+        1058248834,
+        1064066706,
+        1057832229,
+        -1097842309,
+        -1090358535,
+        1057239135,
+        1025563238,
+        -1111810692,
+        1051055676,
+        -1090774758,
+        1049649702,
+        -1087402843,
+        1049451132,
+        -1084715943,
+        1063316097,
+        -1089222433,
+        1051289353,
+        1020530784,
+        -1091893836,
+        1038314995,
+        1057915071,
+        1059739013,
+        -1129140422,
+        1054661767,
+        1049531140,
+        1042085063,
+        1053736325,
+        1050776763,
+        -1087736858,
+        1080250469,
+        -1097768811,
+        1077270964,
+        1059398132,
+        -1073558161,
+        1042394275,
+        1063467157,
+        -1087384055,
+        -1086100928,
+        1072238087,
+        -1087874109,
+        -1084976552,
+        1058935755,
+        1059346721,
+        1067381987,
+        -1060640682,
+        1051798667,
+        -1081835489,
+        1077282417,
+        1070058302,
+        1078054639,
+        -1103786610,
+        1057015959,
+        1074192303,
+        1054244378,
+        -1114746465,
+        1072189642,
+        -1105389517,
+        1051645720,
+        -1067292943,
+        1074119068,
+        1065654852,
+        1055084164,
+        -1077110118,
+        -1076429851,
+        -1081154745,
+        -1098361758,
+        -1077831776,
+        -1085309512,
+        -1092710776,
+        -1068323759,
+        1063425677,
+        -1089290720,
+        -1092731294,
+        1044450117,
+        -1071929362,
+        1076691652,
+        -1073303997,
+        1071365547,
+        1049450772,
+        -1080135230,
+        1065531318,
+        1047343227,
+        -1085912829,
+        -1095531717,
+        -1096483839,
+        -1098291551,
+        -1096582750,
+        1057528185,
+        -1094765668,
+        -1130937439,
+        1041239242,
+        1060434404,
+        -1084839248,
+        1056168027,
+        -1081332479,
+        1062129783,
+        1050998439,
+        1061868978,
+        1051093099,
+        1027811806,
+        -1081892001,
+        -1087642772,
+        1052728422,
+        1069627446,
+        -1097239757,
+        1059405526,
+        1065540454,
+        -1108452266,
+        -1084509379,
+        -1072042437,
+        1080334207,
+        1049726335,
+        1063934303,
+        -1086075327,
+        -1066288362,
+        1034769390,
+        1082167150,
+        1034674592,
+        1069406906,
+        -1075334153,
+        1063222686,
+        1065011399,
+        -1097713874,
+        1054168552,
+        996598478,
+        1057795099,
+        -1096616000,
+        1059912476,
+        1063155938,
+        1070022761,
+        1070252487,
+        -1099170210,
+        1024948668,
+        1057545364,
+        -1112376539,
+        -1084724482,
+        1081181182,
+        1076856031,
+        -1076999189,
+        -1071979928,
+        1065916187,
+        -1089541296,
+        -1119465279,
+        -1090025563,
+        -1086302919,
+        -1097884197,
+        -1076883662,
+        -1122830138,
+        -1097760068,
+        1050811702,
+        1075657696,
+        1077111462,
+        -1069450730,
+        1063702521,
+        -1079026344,
+        -1079172362,
+        1076863942,
+        -1089446338,
+        -1092291367,
+        1068319796,
+        1070299351,
+        -1067619940,
+        1076432093,
+        1082438341,
+        1061905519,
+        1045899223,
+        -1069403809,
+        1061825689,
+        -1089908375,
+        -1084113681,
+        1068113740,
+        1043752921,
+        1067406727,
+        -1078116404,
+        -1094377061,
+        1061374358,
+        1059182535,
+        1052713845,
+        1063767966,
+        1049198757,
+        1015529955,
+        1045231471,
+        1056110116,
+        -1100211758,
+        -1080167702,
+        1061977840,
+        -1094011416,
+        -1085651691,
+        1070811642,
+        1030044626,
+        1011368587,
+        1042285467,
+        1069099347,
+        1059604468,
+        -1088987851,
+        1036810911,
+        -1098102461,
+        1043905112,
+        -1089302326,
+        1079220934,
+        1064904023,
+        1075130581,
+        -1105502032,
+        1076175749,
+        1062693993,
+        1053562940,
+        1079427456,
+        1053571293,
+        -1074816039,
+        1066964210,
+        1077824011,
+        1069543377,
+        -1075430945,
+        1087583643,
+        1055090187,
+        -1121130780,
+        1082153805,
+        1067971164,
+        -1115216743,
+        1062695322,
+        -1087125380,
+        -1081394990,
+        -1096129085,
+        1051320882,
+        -1079915962,
+        1009326294,
+        1062984442,
+        -1088142827,
+        -1098075949,
+        -1105991780,
+        1053628048,
+        1062570027,
+        -1075853145,
+        -1106052622,
+        -1084364813,
+        -1076764498,
+        -1082919886,
+        -1100546239,
+        -1092162832,
+        1065754380,
+        -1079122977,
+        1062082178,
+        1079791242,
+        1058820284,
+        -1097111547,
+        -1073104270,
+        -1081569000,
+        -1100053450,
+        1057083298,
+        1055460980,
+        -1079388009,
+        1080263417,
+        1066723057,
+        -1073889218,
+        1072049027,
+        -1094469241,
+        1054416300,
+        -1092349820,
+        -1075916110,
+        1074787659,
+        1065018660,
+        -1087712576,
+        -1107183884,
+        1066282623,
+        -1089377835,
+        1058540088,
+        -1109674127,
+        -1095109721,
+        1057108337,
+        1029947759,
+        1051057047,
+        -1101063588,
+        -1100764707,
+        -1106404193,
+        -1079398288,
+        1043287130,
+        -1084342333,
+        1045211208,
+        -1110723498,
+        -1090127026,
+        1060998742,
+        1042428042,
+        1058936758,
+        1027605986,
+        -1080246843,
+        -1103925062,
+        -1093858567,
+        1060600242,
+        -1112412663,
+        1052279111,
+        -1093359339,
+        1066936034,
+        1050473132,
+        1044896125,
+        1072862170,
+        1069051258,
+        1040726610,
+        -1103394132,
+        1039559907,
+        -1090856022,
+        -1102439611,
+        -1079789594,
+        -1087082008,
+        -1080627388,
+        -1088244084,
+        1068485135,
+        -1083820343,
+        1068866157,
+        1063835369,
+        -1076998123,
+        1061823438,
+        1047732325,
+        -1075277012,
+        -1076143589,
+        -1069225315,
+        -1076475828,
+        -1072277558,
+        -1077784588,
+        1045834425,
+        1036898898,
+        1077796666,
+        -1065163610,
+        1068716402,
+        -1070584515,
+        1083143232,
+        -1080511017,
+        1047636193,
+        -1090308998,
+        -1081042208,
+        1051500701,
+        -1093695855,
+        -1071490874,
+        -1071932585,
+        1067438291,
+        1077176203,
+        -1073324455,
+        -1073270408,
+        1077901961,
+        -1074363652,
+        -1089589896,
+        -1068664765,
+        1037886391,
+        -1072267647,
+        -1062239817,
+        -1076102600,
+        1061237869,
+        -1075355154,
+        1072502609,
+        -1076122212,
+        1049649254,
+        -1060049271,
+        -1086888413,
+        -1068525713,
+        -1070516757,
+        -1072954996,
+        -1072864002,
+        1077220429,
+        -1081956996,
+        -1106823618,
+        -1080484344,
+        -1079128125,
+        -1106187294,
+        -1109807041,
+        1059338146,
+        -1111229714,
+        -1084366594,
+        1065448792,
+        -1077722902,
+        -1093398503,
+        -1103860959,
+        -1072813310,
+        1052696603,
+        -1081264506,
+        1041185275,
+        1025589296,
+        1059147169,
+        -1071970658,
+        -1109514546,
+        1049648430,
+        1068824322,
+        1052300678,
+        1053441577,
+        -1083951105,
+        -1073528746,
+        1070165405,
+        -1074509338,
+        -1069650190,
+        -1101574226,
+        1071726235,
+        -1078744965,
+        -1081777466,
+        -1074351936,
+        -1074738575,
+        -1096927855,
+        1065410081,
+        -1078841165,
+        1060093448,
+        -1090261930,
+        -1103732211,
+        -1103082452,
+        1072879360,
+        -1090728047,
+        -1076817813,
+        -1088050288,
+        960200096,
+        1057747155,
+        -1093215534,
+        -1076287887,
+        -1114492307,
+        -1094302951,
+        -1084265999,
+        1085799203,
+        1065931186,
+        -1079859845,
+        -1081824184,
+        1057473392,
+        1068721327,
+        1056379806,
+        1037885829,
+        1058936699,
+        -1109400993,
+        1075991364,
+        -1084773216,
+        -1097401934,
+        -1072685187,
+        1025877342,
+        -1111390026,
+        1036256353,
+        1056133693,
+        1062308266,
+        1076936714,
+        1042340001,
+        -1080723366,
+        1074410803,
+        1054151101,
+        -1109539950,
+        -1111453005,
+        1062964356,
+        1072842889,
+        -1100115428,
+        1035015390,
+        1060187045,
+        -1077703371,
+        1034905317,
+        1077064223,
+        1068263932,
+        1034081516,
+        1042885324,
+        1067844014,
+        -1104897833,
+        1038122798,
+        -1154924606,
+        -1134885507,
+        -1097574610,
+        -1105389021,
+        1048850209,
+        -1092394734,
+        -1076292874,
+        -1097806949,
+        1049623473,
+        -1094028515,
+        -1096647821,
+        -1101561918,
+        -1094062927,
+        -1095613819,
+        -1115820016,
+        1037556636,
+        -1081042757,
+        1018314812,
+        1048324746,
+        1061512804,
+        1056824359,
+        1040991922,
+        -1082568390,
+        -1097714424,
+        -1097169327,
+        -1095035072,
+        -1095987498,
+        1060248078,
+        -1086381156,
+        1038173768,
+        1065066663,
+        1047202672,
+        1019328908,
+        1050907180,
+        1053945622,
+        1073834505,
+        -1108286342,
+        1094900707,
+        -1096733299,
+        1059530154,
+        -1079697245,
+        1062415453,
+        -1115669649,
+        -1070356621,
+        -1128587981,
+        -1094431229,
+        1013746908,
+        1084174807,
+        -1087130409,
+        1050433893,
+        -1102864114,
+        1032922673,
+        -1102941369,
+        1061081632,
+        -1071891467,
+        -1113471904,
+        1056561457,
+        1053104717,
+        1041300982,
+        1009234668,
+        1023675928,
+        -1084670817,
+        1078735690,
+        1053605258,
+        -1110358497,
+        1025373968,
+        -1116078548,
+        1027562857,
+        -1121584828,
+        1046158104,
+        -1081358781,
+        -1110037619,
+        -1105307285,
+        -1122486452,
+        -1090445624,
+        1068699370,
+        1040512540,
+        -1085381811,
+        -1081188507,
+        -1110308525,
+        -1078451678,
+        -1089808172,
+        -1101120663,
+        -1111921156,
+        -1088981719,
+        1054517670,
+        1040107251,
+        1034106958,
+        -1123267300,
+        -1071755850,
+        -1101767479,
+        -1142922256,
+        1033446719,
+        -1075961761,
+        1044237780,
+        -1111536372,
+        -1086023281,
+        -1104044817,
+        -1096703815,
+        -1086861745,
+        -1126115714,
+        1058404141,
+        -1071094407,
+        -1096869231,
+        1043050737,
+        1069539684,
+        -1122158982,
+        1001370896,
+        1063359756,
+        1012273580,
+        1035036093,
+        1067224760,
+        1000720338,
+        -1093023655,
+        1037713164,
+        1070801452,
+        1043983816,
+        1070060986,
+        -1085728551,
+        1064781873,
+        -1098463470,
+        -1101790683,
+        1027310086,
+        -1137715420,
+        1058514789,
+        1066977055,
+        1046953491,
+        1065219505,
+        1082236860,
+        1050026711,
+        -1120819025,
+        1073781725,
+        -1138269872,
+        1063183513,
+        1019689065,
+        -1122404190,
+        -1106579301,
+        1040388384,
+        -1124922018,
+        -1060445151,
+        1055588505,
+        -1109578488,
+        1042300054,
+        1042515581,
+        -1119012728,
+        -1087273634,
+        1059317789,
+        -1095273052,
+        -1096569991,
+        -1095801395,
+        1050973240,
+        -1104293576,
+        1049615864,
+        -1091320724,
+        1061604123,
+        -1112493770,
+        1015033244,
+        1045383760,
+        1049939008,
+        -1123784058,
+        -1092003049,
+        -1110371139,
+        1044463157,
+        1019985138,
+        1047595923,
+        1033475488,
+        1049987299,
+        1050272505,
+        -1121942709,
+        1052674457,
+        1059055508,
+        1034398901,
+        1064431334,
+        1063313601,
+        1056097335,
+        -1101251683,
+        1073796227,
+        -1079642609,
+        1050505963,
+        1041454051,
+        1042578389,
+        1087117245,
+        -1114154206,
+        1043775900,
+        1033925416,
+        -1135446495,
+        -1094264596,
+        -1102390012,
+        1075018800,
+        1039075500,
+        -1105641631,
+        1064643320,
+        -1092297431,
+        -1097437569,
+        1062869392,
+        1051019385,
+        1041517702,
+        -1074080100,
+        1011567256,
+        1032393153,
+        -1097449813,
+        1019964591,
+        1019088404,
+        1032390479,
+        -1106452364,
+        -1100498865,
+        -1096754791,
+        1037570646,
+        -1088298828,
+        -1071341024,
+        1046835290,
+        -1086618959,
+        -1078690392,
+        998224535,
+        1010068917,
+        1074151146,
+        1048772874,
+        1042054658,
+        -1081580921,
+        1044280936,
+        -1096413011,
+        -1107530820,
+        -1103683056,
+        -1080135341,
+        1041898437,
+        -1080691847,
+        -1092447878,
+        1044972413,
+        1033740165,
+        -1128530358,
+        1014012435,
+        1074411369,
+        -1086211124,
+        1073181266,
+        -1110936204,
+        -1112304530,
+        -1093567724,
+        1061319867,
+        -1074932378,
+        -1088710239,
+        1051376511,
+        1064430071,
+        1079631639,
+        1033200331,
+        -1123620980,
+        1033308595,
+        1090146106,
+        1066879281,
+        -1131867070,
+        -1109071132,
+        -1128516410,
+        -1119275513,
+        1006889538,
+        -1060007580,
+        -1067557528,
+        1031687599,
+        -1074967941,
+        1010091694,
+        -1098458429,
+        1042180525,
+        1032889288,
+        1065519565,
+        -1102645118,
+        -1068310385,
+        -1076806196,
+        -1085649784,
+        -1066741281,
+        -1060344143,
+        -1105311600,
+        1072689977,
+        -1103859754,
+        1037010526,
+        -1135505620,
+        -1087822616,
+        1019539432,
+        1054090759,
+        -1126560408,
+        -1087246622,
+        1043096853,
+        -1087384044,
+        1032531278,
+        -1115577231,
+        -1076266635,
+        -1078453039,
+        1042189782,
+        1035028298,
+        -1095023847,
+        -1096930821,
+        1072943772,
+        1052533201,
+        1010972628,
+        975567080,
+        1063961584,
+        1028844432,
+        -1150436046,
+        1063168668,
+        -1114266718,
+        -1081903612,
+        -1110279673,
+        1054565100,
+        1045466142,
+        1081021853,
+        -1077013854,
+        1065547996,
+        1048213386,
+        -1125489238,
+        -1130017672,
+        -1080463949,
+        1063981926,
+        1047079221,
+        1052369095,
+        -1056752343,
+        1067623090,
+        1074384291,
+        -1127000843,
+        1054835573,
+        1063317966,
+        1036985280,
+        1045069777,
+        -1112752882,
+        1040341528,
+        1024512519,
+        -1082030072,
+        1049713686,
+        1066799456,
+        1035348492,
+        1079137178,
+        1068432425,
+        1045025805,
+        1049838155,
+        -1124308392,
+        1066632714,
+        -1089512819,
+        1050428347,
+        -1097991327,
+        1057871383,
+        1087389431,
+        1035154843,
+        -1102734503,
+        1072709916,
+        1066408720,
+        1047742646,
+        -1077868959,
+        1010423052,
+        -1137251772,
+        -1126992745,
+        1035779464,
+        -1070739294,
+        -1139563732,
+        1052563252,
+        1092204293,
+        1058714562,
+        1026173523,
+        -1099681202,
+        1022746124,
+        1067136480,
+        -1087872231,
+        -1083929037,
+        1051419025,
+        -1104472802,
+        -1091389256,
+        -1096564910,
+        -1092514202,
+        1049806192,
+        -1095598352,
+        -1078156211,
+        -1087149859,
+        -1106945344,
+        -1123651420,
+        1041508947,
+        1046840305,
+        1049485381,
+        1070895437,
+        1054240548,
+        1060387236,
+        -1109076247,
+        1046400608,
+        1055401277,
+        1057356659,
+        -1120818165,
+        -1101155887,
+        1072967855,
+        1051506819,
+        -1108997068,
+        -1089842578,
+        -1119857364,
+        -1089071715,
+        1028295942,
+        1048280994,
+        -1114276160,
+        1067603939,
+        1025558355,
+        1052124135,
+        1075499604,
+        1046958689,
+        -1063373485,
+        1032294434,
+        -1120764604,
+        -1079273854,
+        -1094303882,
+        1046806116,
+        -1064280035,
+        -1071199793,
+        -1079475163,
+        1002985564,
+        -1094244583,
+        1050336286,
+        1049183698,
+        1051518050,
+        -1079870951,
+        1050144925,
+        -1099326432,
+        -1142618464,
+        -1114665863,
+        1042524477,
+        -1081923305,
+        1055945401,
+        -1086987519,
+        -1104726525,
+        1010522480,
+        1033893369,
+        -1092051876,
+        1052970643,
+        1049179437,
+        1067390167,
+        1025229745,
+        1053859737,
+        1053555319,
+        -1087024987,
+        1038629677,
+        -1069277438,
+        -1108613095,
+        1020156728,
+        1047961724,
+        1046007047,
+        -1092646356,
+        1056507182,
+        1048478806,
+        -1083861153,
+        -1095309066,
+        -1104718654,
+        -1081741217,
+        -1092363949,
+        1055567398,
+        1054052282,
+        1049555378,
+        -1072326830,
+        1058593638,
+        -1102060970,
+        -1103504325,
+        1062424639,
+        1042286729,
+        -1089708655,
+        -1088966599,
+        -1106281295,
+        -1110977896,
+        -1111246791,
+        1054244280,
+        -1094312887,
+        -1122360467,
+        1023552339,
+        1025735436,
+        1032600489,
+        1020112385,
+        1040818732,
+        1040947167,
+        1015141385,
+        1055420577,
+        1035728094,
+        1061650514,
+        1058052162,
+        -1108613300,
+        1028189967,
+        -1106643376,
+        -1138151026,
+        1029110404,
+        1032348198,
+        -1090436352,
+        -1176502928,
+        -1091887033,
+        1036620841,
+        1054690065,
+        -1108406094,
+        -1118674457,
+        -1086164650,
+        1034343555,
+        1055975573,
+        -1071877808,
+        -1086233562,
+        -1087467262,
+        -1091298342,
+        1041157970,
+        1075858573,
+        1061525221,
+        1067235614,
+        -1105591544,
+        -1099585902,
+        -1106364904,
+        1024569794,
+        1062905013,
+        1035618408,
+        -1094343602,
+        1051675419,
+        1046489478,
+        1057615368,
+        -1073170069,
+        1022694580,
+        -1060371314,
+        1060749534,
+        1060338171,
+        1071392860,
+        1067980590,
+        -1053917394,
+        -1083854728,
+        1048746588,
+        1049495813,
+        -1107691223,
+        -1097998035,
+        -1103721969,
+        1030038348,
+        -1121724490,
+        1077042718,
+        -1127093702,
+        -1096162461,
+        1041442074,
+        -1097916707,
+        -1091571615,
+        -1116193384,
+        -1087548815,
+        1054611067,
+        1040929978,
+        1063037472,
+        -1095349223,
+        -1127549002,
+        1061844549,
+        1057522840,
+        -1090692624,
+        1025669889,
+        1070987142,
+        -1106876817,
+        -1125548086,
+        1062814475,
+        1034060386,
+        1058319656,
+        -1125508482,
+        1034831203,
+        -1096194649,
+        -1108343647,
+        -1137683684,
+        -1090091058,
+        1048778988,
+        -1080373042,
+        -1111712662,
+        1045220954,
+        -1089107298,
+        -1111193267,
+        -1078818263,
+        -1107051452,
+        -1092973389,
+        1059669928,
+        -1089835738,
+        -1094361862,
+        1071922694,
+        1037533228,
+        1016432656,
+        -1110146087,
+        1029554998,
+        1020154908,
+        -1076604149,
+        -1124028416,
+        1036869284,
+        -1108388771,
+        -1139822977,
+        1028313487,
+        1079680213,
+        -1081132384,
+        1039874131,
+        -1065246521,
+        -1094419466,
+        -1071733639,
+        -1084925845,
+        1056577957,
+        -1109966898,
+        1060673952,
+        1048970334,
+        -1095878726,
+        -1091712429,
+        1028599394,
+        -1106062516,
+        1032327345,
+        1040653875,
+        -1095042321,
+        -1108645551,
+        -1106165089,
+        -1125556241,
+        -1109471523,
+        1047775404,
+        -1150831386,
+        1036288677,
+        -1088212477,
+        -1088887497,
+        1026811718,
+        1057393113,
+        -1054507412,
+        -1074760756,
+        1041319624,
+        1036434839,
+        -1113938645,
+        1026892952,
+        -1077941982,
+        1055951198,
+        -1079556334,
+        1035573111,
+        -1103137222,
+        1057161024,
+        -1093781993,
+        1027078854,
+        -1100348445,
+        1098902625,
+        1055118072,
+        -1106234704,
+        1044437783,
+        -1097343545,
+        1077566532,
+        1044676765,
+        -1073200871,
+        -1058011290,
+        1046181829,
+        -1089043698,
+        1020017590,
+        1070001968,
+        1051777124,
+        -1089640470,
+        1068198279,
+        1045842544,
+        -1103012447,
+        1066582131,
+        1006941991,
+        -1099538917,
+        1042473764,
+        1075661808,
+        -1082539608,
+        1067744171,
+        1042375009,
+        -1097760982,
+        -1102679198,
+        -1103761081,
+        -1097527587,
+        1018784545,
+        -1104674733,
+        1058680036,
+        -1074394194,
+        -1096088029,
+        1040628670,
+        1056681304,
+        1066941237,
+        1044180773,
+        998742514,
+        1045785794,
+        1033207555,
+        1057142146,
+        1020611598,
+        1047996759,
+        1056579172,
+        1061326250,
+        -1099122137,
+        -1097776533,
+        -1115286673,
+        -1096939740,
+        -1080679974,
+        -1100054925,
+        -1087985438,
+        -1059298708,
+        1054063995,
+        1058912591,
+        1074365517,
+        1040051456,
+        1072228442,
+        1037523553,
+        1055553994,
+        1039613858,
+        -1137214892,
+        -1101713795,
+        -1089649172,
+        1040471753,
+        1055445303,
+        -1087264510,
+        -1150551670,
+        -1113675353,
+        -1123118122,
+        1058881947,
+        -1088324546,
+        -1083134137,
+        -1095378427,
+        -1117028853,
+        1083066040,
+        1071895095,
+        1002095948,
+        -1092732985,
+        1058613436,
+        -1094542429,
+        1026144461,
+        1038576774,
+        1072868214,
+        -1137347382,
+        -1096060184,
+        1068056494,
+        1053525361,
+        1040942795,
+        1067529236,
+        -1078566220,
+        -1088691493,
+        1056046389,
+        1047454964,
+        -1110974057,
+        -1096351851,
+        1029445627,
+        1068366942,
+        1077821919,
+        1037562234,
+        1041876770,
+        -1082780837,
+        -1092506475,
+        1077805955,
+        -1100978881,
+        -1107178683,
+        1078137123,
+        -1106895403,
+        -1090274166,
+        1040252310,
+        1011436393,
+        1057962219,
+        1064922536,
+        -1064961782,
+        1037119288,
+        -1122448123,
+        1018002358,
+        -1096008828,
+        1025755367,
+        986033088,
+        1050112115,
+        1055387943,
+        1054063309,
+        1065340867,
+        1037889397,
+        -1104492376,
+        -1098453016,
+        -1112893716,
+        -1155831794,
+        1063116258,
+        -1096250485,
+        -1117176977,
+        -1075243640,
+        -1095859938,
+        1012363498,
+        -1098435387,
+        1000856951,
+        1059032697,
+        1058467072,
+        1053973824,
+        -1110389724,
+        1070233181,
+        -1126107413,
+        -1085806370,
+        -1084862301,
+        -1084953562,
+        1048828511,
+        -1093016660,
+        1045273688,
+        -1055982633,
+        -1080731677,
+        -1089505943,
+        -1098554559,
+        1044654304,
+        -1114226010,
+        -1103182745,
+        -1095662276,
+        -1108775896,
+        -1109361782,
+        -1160292530,
+        -1110284009,
+        -1123679636,
+        -1080969638,
+        1068844192,
+        1070422560,
+        1033990671,
+        -1103957777,
+        -1084216044,
+        -1100153370,
+        1042238931,
+        -1087605772,
+        1079132332,
+        -1107000568,
+        1036156756,
+        -1086827511,
+        -1085834128,
+        1016553235,
+        -1129918868,
+        -1104881085,
+        1038124514,
+        -1115519134,
+        1068742276,
+        -1078867554,
+        1059063415,
+        -1107151849,
+        -1081710847,
+        -1096081143,
+        1035566467,
+        1041809545,
+        1045088524,
+        1059353253,
+        -1119037746,
+        -1117875085,
+        -1087836810,
+        -1097829357,
+        1088173289,
+        1041363987,
+        1058763748,
+        -1086346608,
+        -1084699541,
+        -1092088892,
+        -1080056826,
+        -1111840091,
+        1051256296,
+        -1108444478,
+        -1052779885,
+        -1082593282,
+        -1103870113,
+        1044059286,
+        1048587963,
+        1051361962,
+        1052123116,
+        1075203498,
+        986672274,
+        -1115563892,
+        1058115283,
+        1033124247,
+        1075970232,
+        -1089832001,
+        -1123779548,
+        -1106747763,
+        1042158266,
+        -1156547324,
+        -1104444658,
+        1026548068,
+        -1118583465,
+        -1110152303,
+        -1091848150,
+        1052366706,
+        1007786005,
+        1068359195,
+        1057959856,
+        -1098404633,
+        1073585782,
+        1048922473,
+        -1136871010,
+        -1088340135,
+        -1095340596,
+        -1083341451,
+        -1070612441,
+        1041309272,
+        -1072556611,
+        -1076353974,
+        -1100606209,
+        -1105579112,
+        -1089995161,
+        -1105518002,
+        1070070545,
+        1066316432,
+        -1062238559,
+        1051535494,
+        1054908276,
+        -1092968143,
+        1027446777,
+        1042478949,
+        -1091625530,
+        -1086979787,
+        1025303559,
+        1089195819,
+        -1104909363,
+        1072269441,
+        -1094477954,
+        -1110423890,
+        -1084755345,
+        1016396822,
+        1038564519,
+        1093482883,
+        1040805017,
+        1068812881,
+        1048045006,
+        -1095399347,
+        1074976714,
+        1034633753,
+        1051341762,
+        -1095720691,
+        -1119533970,
+        1017689948,
+        1058737687,
+        -1096171698,
+        -1121321037,
+        -1074745716,
+        1043211682,
+        1052322270,
+        1072221637,
+        -1085078517,
+        1060001984,
+        -1113828882,
+        1066883971,
+        1015558093,
+        1069507156,
+        1039657916,
+        -1077908470,
+        -1089462841,
+        -1106007930,
+        1049208239,
+        1033874915,
+        -1108517432,
+        -1088117399,
+        -1076457500,
+        -1102869574,
+        1044080557,
+        1049823734,
+        1005765759,
+        1048389393,
+        1068448378,
+        -1112087622,
+        -1101177624,
+        1023354124,
+        -1129601378,
+        1047535117,
+        -1101980026,
+        -1144141398,
+        -1073386570,
+        1032982092,
+        -1116409011,
+        -1146145956,
+        -1096011582,
+        -1123786310,
+        1043131631,
+        -1093296632,
+        -1112907496,
+        1049063262,
+        1074346039,
+        -1078985417,
+        1061445053,
+        -1107056499,
+        1052462164,
+        -1080940414,
+        1026175972,
+        -1098987100,
+        -1101904967,
+        -1095607470,
+        1062075527,
+        -1130722453,
+        -1056089628,
+        -1066829970,
+        -1132323824,
+        1054322132,
+        -1133710168,
+        1045042965,
+        1059092363,
+        -1081249219,
+        -1121335765,
+        1050001777,
+        -1110514479,
+        -1098046910,
+        -1116293167,
+        1076609981,
+        -1081566288,
+        1011850036,
+        -1107163658,
+        -1115284460,
+        -1090362884,
+        1060354045,
+        -1079033992,
+        1054834618,
+        1068004817,
+        1061423075,
+        -1062339007,
+        1044578476,
+        -1112405961,
+        1040095499,
+        1093136592,
+        1071813370,
+        -1146877255,
+        -1108653923,
+        1019790793,
+        1032731668,
+        1031385670,
+        -1073271546,
+        -1087326354,
+        1032661671,
+        1068426298,
+        -1119338572,
+        -1095972228,
+        1049307128,
+        1036293383,
+        -1120606267,
+        1041231992,
+        -1082535176,
+        1063525065,
+        -1102143889,
+        -1084660772,
+        -1074672771,
+        -1105398728,
+        1069855538,
+        1049180524,
+        1041627428,
+        -1123696375,
+        1050916441,
+        -1102616991,
+        1036948648,
+        -1123275051,
+        -1072454111,
+        1051352751,
+        1015202807,
+        -1106180428,
+        -1120957653,
+        -1099096601,
+        -1098102522,
+        -1114575445,
+        -1095892910,
+        -1083906161,
+        -1093308824,
+        -1109297598,
+        1051239324,
+        -1110900786,
+        1014044290,
+        1069502211,
+        1032805133,
+        1024305678,
+        1036326884,
+        -1115602962,
+        -1101167831,
+        1043483264,
+        1061768632,
+        1090049230,
+        1061911456,
+        -1083318070,
+        1065269143,
+        1052025815,
+        -1116873992,
+        -1119960147,
+        -1099503804,
+        -1076371987,
+        1058219062,
+        1059566851,
+        1050724221,
+        1067571965,
+        1070234713,
+        -1114613986,
+        1059865423,
+        1065859693,
+        1054783741,
+        1047396449,
+        -1107549468,
+        1044789537,
+        -1117677262,
+        -1099778343,
+        1054408133,
+        1042189166,
+        1031916060,
+        -1070736690,
+        1051041306,
+        -1131023634,
+        1060764329,
+        -1108958868,
+        1045322842,
+        1051396747,
+        -1091455459,
+        -1049488734,
+        1027980894,
+        1056693221,
+        -1095018128,
+        1078360860,
+        -1111103259,
+        -1074740082,
+        1023794761,
+        1059644964,
+        1040857102,
+        -1115217186,
+        -1088420758,
+        1070342893,
+        -1117555610,
+        1048122006,
+        -1116679166,
+        -1100873655,
+        -1070350827,
+        -1105326015,
+        1044622953,
+        -1098176681,
+        -1083557071,
+        -1101079509,
+        1066287403,
+        -1109437795,
+        -1105925916,
+        1052744014,
+        1062993922,
+        1062457532,
+        -1094758344,
+        1049481930,
+        1049708137,
+        1041641095,
+        1022667036,
+        1032234176,
+        -1084723532,
+        1030615782,
+        -1135164235,
+        1049167690,
+        1041571312,
+        -1110404216,
+        -1097290323,
+        981792112,
+        -1116290780,
+        1040931479,
+        999607313,
+        -1122900218,
+        1041750794,
+        -1113799250,
+        1024301497,
+        1074575874,
+        1041536844,
+        1038321383,
+        1053625403,
+        1047348600,
+        -1089060948,
+        -1079996278,
+        1057791038,
+        -1100761484,
+        -1147572252,
+        1033706264,
+        1060196844,
+        -1093361352,
+        1050778837,
+        -1114945022,
+        1050388920,
+        1041142146,
+        -1089111699,
+        1046476562,
+        -1081679874,
+        1054877183,
+        -1098390771,
+        -1112144368,
+        -1092723543,
+        -1096362191,
+        1033298757,
+        -1117278177,
+        1045676634,
+        -1086061473,
+        -1106644136,
+        -1109504420,
+        1073509689,
+        1058243939,
+        1040953702,
+        1036356830,
+        1069254067,
+        1075001020,
+        1051077121,
+        -1083729598,
+        -1119615195,
+        -1075770007,
+        1039899836,
+        -1113304520,
+        1066763009,
+        -1084165619,
+        -1125269556,
+        1083373410,
+        -1105458559,
+        1050006332,
+        1070386728,
+        -1092118911,
+        1052279644,
+        -1097149596,
+        -1094265900,
+        -1080152264,
+        -1107163496,
+        -1166933152,
+        1065041368,
+        1053898706,
+        1055855144,
+        -1090741265,
+        -1127163715,
+        -1083354019,
+        -1089111554,
+        -1092414600,
+        1035558150,
+        -1077647343,
+        -1084838305,
+        -1094842131,
+        1070036832,
+        -1103619772,
+        1055523861,
+        1034806145,
+        -1068629623,
+        -1104286818,
+        1038415682,
+        -1145375423,
+        1008280276,
+        1051048259,
+        1016925709,
+        1072655794,
+        1051308214,
+        1061217469,
+        -1089823600,
+        1058390960,
+        1046359245,
+        -1095874990,
+        -1108400196,
+        -1107902413,
+        1066301669,
+        -1085634886,
+        -1110168718,
+        1065481726,
+        -1125604608,
+        1041001713,
+        -1089787284,
+        -1123783026,
+        1036278933,
+        1067557668,
+        1059001852,
+        1065974672,
+        1069558845,
+        1057712767,
+        -1079755657,
+        1044171021,
+        -1097977922,
+        -1096910792,
+        -1088849261,
+        1031969691,
+        -1073619664,
+        1050262083,
+        -1080241989,
+        1044142814,
+        -1095291628,
+        996294622,
+        -1060006839,
+        1026847706,
+        -1085773080,
+        1008735305,
+        -1197554176,
+        -1108515890,
+        -1079890460,
+        1022975477,
+        1067734975,
+        -1076611103,
+        -1095246144,
+        -1090339660,
+        1067773141,
+        -1120822287,
+        -1134686440,
+        1062232932,
+        1028671397,
+        1057208891,
+        990627188,
+        1049491806,
+        1047538380,
+        1054035425,
+        1049722188,
+        -1117265503,
+        1063925504,
+        1054964146,
+        -1067306075,
+        -1105097592,
+        1033275498,
+        -1096639519,
+        1049456826,
+        1078215858,
+        -1107851288,
+        1047335701,
+        -1066131535,
+        -1090542477,
+        1043275538,
+        -1102743731,
+        -1095269912,
+        -1108005951,
+        -1073538540,
+        -1102647327,
+        1072994573,
+        1065721656,
+        -1112747769,
+        -1086715977,
+        -1110564884,
+        -1087976820,
+        -1093112579,
+        -1080743208,
+        1052541072,
+        1053463916,
+        1034829814,
+        -1111412539,
+        1065724678,
+        1008335060,
+        -1104871144,
+        1048728637,
+        1036447170,
+        1000520848,
+        -1163264380,
+        -1119151847,
+        -1124636968,
+        1058653750,
+        1029219749,
+        1037655127,
+        -1106651460,
+        -1162681864,
+        1007026051,
+        1060105265,
+        1043101362,
+        -1119040412,
+        1060544910,
+        -1126479836,
+        -1088441867,
+        -1088055346,
+        1032990136,
+        -1065718043,
+        1043566672,
+        -1110016326,
+        1052019193,
+        1066025529,
+        1068444076,
+        -1108784502,
+        1028511671,
+        1041448145,
+        1054618010,
+        1069005260,
+        1003805565,
+        -1111047884,
+        -1109672503,
+        -1096507592,
+        -1112010755,
+        1042158221,
+        1031823288,
+        1042636069,
+        1017507417,
+        1044090169,
+        1036707459,
+        1060952354,
+        1066531862,
+        1040947650,
+        1032369378,
+        -1088512625,
+        1062342445,
+        1072678091,
+        -1077611526,
+        -1098644817,
+        -1103682744,
+        1069344207,
+        -1134580510,
+        1044627620,
+        1065214528,
+        -1071811547,
+        -1100555204,
+        -1071738533,
+        -1073215116,
+        1059536856,
+        -1106628113,
+        -1145801092,
+        -1097615384,
+        1039379456,
+        -1112552694,
+        -1103213364,
+        1065262442,
+        -1101073914,
+        1042904574,
+        -1124052223,
+        1078097280,
+        -1094355462,
+        -1116073410,
+        1039255635,
+        -1086392019,
+        -1104183382,
+        1035178126,
+        1074856616,
+        1049086268,
+        -1088424542,
+        1046921233,
+        -1060792066,
+        -1088348379,
+        -1098487468,
+        -1080349351,
+        -1080035562,
+        -1095066695,
+        1012551606,
+        1057475399,
+        1005053523,
+        -1123956819,
+        -1089563527,
+        -1096737409,
+        1064650449,
+        -1107123497,
+        -1122098352,
+        -1113667159,
+        -1090970929,
+        1021479568,
+        1029170036,
+        -1083092855,
+        1037273936,
+        -1124044682,
+        -1080290457,
+        -1109138766,
+        1020390783,
+        -1095387021,
+        -1113621528,
+        1051657212,
+        -1075440752,
+        -1098359472,
+        1059698196,
+        -1080692453,
+        -1111436877,
+        1062316466,
+        1048736081,
+        -1090076400,
+        1051373417,
+        -1093641159,
+        1033344171,
+        1060778901,
+        -1103895872,
+        1053196029,
+        -1080569919,
+        1057895536,
+        1030849638,
+        1057014270,
+        1091299415,
+        1051778126,
+        1055793134,
+        -1107245289,
+        -1112079342,
+        1057113851,
+        1020171625,
+        -1069093363,
+        -1072899700,
+        -1113063224,
+        -1078087809,
+        -1068221433,
+        1050343573,
+        -1074407622,
+        1042108263,
+        1065818225,
+        1057966315,
+        -1076281286,
+        -1069396436,
+        -1089934434,
+        -1099693514,
+        -1080432655,
+        -1081408012,
+        1103598164,
+        -1087957249,
+        -1120355155,
+        1072365727,
+        -1081162608,
+        1050891347,
+        -1069691130,
+        1049208186,
+        1066789008,
+        -1074828380,
+        1066387272,
+        1057960519,
+        -1080816689,
+        1067010820,
+        -1061136188,
+        -1087087645,
+        1081521228,
+        -1070328184,
+        -1063864921,
+        1070101193,
+        -1059205133,
+        1079302118,
+        -1077102504,
+        1093488607,
+        -1087825611,
+        1052723087,
+        1054425150,
+        -1094368377,
+        -1087313054,
+        -1081373498,
+        -1104543077,
+        -1141728384,
+        1057483879,
+        -1095307948,
+        -1078217441,
+        1032848043,
+        1065602653,
+        1040816318,
+        1048835405,
+        -1093463054,
+        -1080862999,
+        -1106186527,
+        -1093856421,
+        -1087323806,
+        -1080354862,
+        1062769646,
+        1059351187,
+        -1086098439,
+        1042422675,
+        -1086068964,
+        -1071846770,
+        -1069494418,
+        -1099273684,
+        1074107318,
+        1071510803,
+        -1093505329,
+        1069806411,
+        1046391191,
+        1044178248,
+        -1077738334,
+        1059229640,
+        -1109506935,
+        1050983212,
+        -1090913324,
+        1037033400,
+        -1080873354,
+        -1086057244,
+        -1098322783,
+        1057187037,
+        1052774777,
+        -1086749729,
+        1049455628,
+        1063701849,
+        1081470362,
+        1072763052,
+        1042682575,
+        -1068537932,
+        -1073027122,
+        -1072449709,
+        1032166048,
+        1069849588,
+        1040574129,
+        -1077914619,
+        1068141752,
+        1065076891,
+        -1094737606,
+        -1078128033,
+        1062643551,
+        1085327991,
+        -1094554560,
+        1061101920,
+        1034615018,
+        -1067370958,
+        -1080154803,
+        1049881079,
+        -1069809885,
+        -1088432108,
+        1069905492,
+        1043420823,
+        1072714552,
+        1072027294,
+        -1089612735,
+        -1104201651,
+        -1074262696,
+        -1080903740,
+        1073901978,
+        1082615585,
+        -1070972418,
+        1084298156,
+        1085563380,
+        -1061620965,
+        1078026413,
+        -1070542873,
+        1086034812,
+        -1084011456,
+        1079062479,
+        1082108540,
+        -1073048936,
+        1076434318,
+        -1090347719,
+        1071151703,
+        -1096046595,
+        -1087509741,
+        1040301018,
+        1024106254,
+        -1092725838,
+        -1114500231,
+        -1105044764,
+        -1131886969,
+        -1103163440,
+        -1106432979,
+        1051416923,
+        1054289921,
+        -1081475183,
+        -1104152127,
+        -1080610592,
+        -1095277912,
+        1065581321,
+        1067402527,
+        -1091386573,
+        1051296464,
+        1051456143,
+        -1111815412,
+        -1074865091,
+        -1096398306,
+        -1082899853,
+        1071556137,
+        -1088893848,
+        1067212476,
+        1053376484,
+        -1088293672,
+        -1081867943,
+        1061161478,
+        1085338462,
+        -1079588669,
+        1069000475,
+        1075799456,
+        1055829449,
+        -1119460151,
+        -1121740708,
+        1018961122,
+        1075428478,
+        1054872314,
+        -1083061565,
+        -1069863208,
+        -1098446392,
+        1078228881,
+        1072342564,
+        1077969438,
+        1067950739,
+        -1086008379,
+        -1072303977,
+        1077629393,
+        1052346730,
+        -1080782165,
+        1060080749,
+        1056274202,
+        1045181314,
+        1071829325,
+        1061820964,
+        1082533705,
+        1072355359,
+        -1058997694,
+        -1097262409,
+        1044006178,
+        -1089291873,
+        1068106545,
+        -1083691314,
+        1050799927,
+        -1073977595,
+        -1081749601,
+        1057949192,
+        -1093875128,
+        -1083086884,
+        1032763204,
+        1057818851,
+        1042218103,
+        -1092220580,
+        -1075098821,
+        1081267980,
+        -1084474623,
+        1067517067,
+        1074973238,
+        1069315846,
+        1053630831,
+        1091487207,
+        1070083415,
+        -1097392241,
+        1049672646,
+        -1065980937,
+        1059082787,
+        -1079637018,
+        1071018546,
+        -1084560863,
+        1052206988,
+        -1096081433,
+        1028133475,
+        1061930115,
+        1058356652,
+        -1100087304,
+        1060627801,
+        1058234359,
+        -1105282170,
+        -1121654480,
+        -1089965618,
+        -1086733935,
+        -1096321924,
+        -1114903036,
+        -1095892954,
+        -1098058234,
+        1068492679,
+        -1100540353,
+        1031390431,
+        1058769968,
+        1055688251,
+        -1076535533,
+        -1080870607,
+        1070222286,
+        1069317252,
+        -1083655443,
+        1064972850,
+        -1094182584,
+        -1098629385,
+        1053624951,
+        1058608362,
+        -1058881333,
+        -1094903727,
+        -1082435354,
+        -1061245994,
+        1059098001,
+        -1073701287,
+        1059723406,
+        1061986926,
+        1059837617,
+        1074136861,
+        1061964350,
+        1051336426,
+        -1076177765,
+        -1074430064,
+        1062930967,
+        -1142809240,
+        1067377143,
+        -1084937580,
+        -1066424579,
+        -1069066153,
+        -1095452552,
+        -1076130472,
+        -1078364584,
+        1056601111,
+        -1089353555,
+        1061858374,
+        1065562607,
+        -1092630987,
+        -1086850325,
+        -1067569495,
+        1049455452,
+        -1075041303,
+        -1081117451,
+        1065701463,
+        -1066949859,
+        -1098813873,
+        1068743595,
+        1077692172,
+        -1070286243,
+        -1071114662,
+        1072350377,
+        -1074776512,
+        -1072894657,
+        -1063702601,
+        1067650773,
+        -1064646502,
+        -1087619668,
+        -1104496134,
+        -1061865326,
+        -1062860423,
+        1075120587,
+        -1092041617,
+        1077438536,
+        -1083672950,
+        1069666979,
+        -1075049127,
+        -1068948318,
+        1081283422,
+        -1072630420,
+        1062048548,
+        -1079071133,
+        1057920997,
+        -1087669555,
+        -1157182453,
+        1066249228,
+        1064621649,
+        -1121442619,
+        1060683415,
+        1059054078,
+        1074620541,
+        1053281215,
+        1060963271,
+        -1111452449,
+        -1074458416,
+        -1080045516,
+        -1077386732,
+        1021221460,
+        1064901131,
+        1042495119,
+        -1115822216,
+        1062289311,
+        1061883671,
+        1084824001,
+        -1079396855,
+        -1074029355,
+        1081357924,
+        -1084027336,
+        1063582888,
+        1071888958,
+        1049978115,
+        -1088959728,
+        1056104358,
+        -1095913968,
+        -1087891830,
+        1077879029,
+        1076457714,
+        -1077826455,
+        -1081162067,
+        1055064640,
+        1045444448,
+        -1071696498,
+        1047437489,
+        1063898246,
+        1076433743,
+        -1086520907,
+        1073876095,
+        1031292481,
+        1066690539,
+        1043922754,
+        -1060291080,
+        1057575827,
+        -1068708649,
+        1023209069,
+        1076552352,
+        -1088594514,
+        -1096404165,
+        1063128587,
+        1042999678,
+        1062510578,
+        -1066457780,
+        -1086701730,
+        -1081023255,
+        1043502708,
+        1071868020,
+        1061840979,
+        1013908578,
+        1051003603,
+        1063812198,
+        1049620933,
+        -1071919296,
+        1069484547,
+        -1070242171,
+        1037850846,
+        -1074842780,
+        1076616512,
+        1053231038,
+        -1084781827,
+        -1083315838,
+        -1072349344,
+        -1072805499,
+        -1084667992,
+        1084426549,
+        1059049470,
+        -1081695725,
+        1076227001,
+        -1078361805,
+        1052003202,
+        -1087977344,
+        -1079971576,
+        1081447284,
+        1065408710,
+        -1106670892,
+        1035725467,
+        1054261096,
+        1032474746,
+        -1081074611,
+        -1109942835,
+        1037712490,
+        1010665972,
+        1033023604,
+        -1095203419,
+        -1091454024,
+        1042095258,
+        1055518640,
+        -1087916253,
+        1052859595,
+        1054437958,
+        1037506254,
+        1048608599,
+        1049038444,
+        -1092788106,
+        1025660563,
+        1067939162,
+        1054759401,
+        1079106019,
+        1057581658,
+        -1078420046,
+        1075058096,
+        1058447913,
+        1080027276,
+        1048760776,
+        -1098486840,
+        1045301740,
+        1069088939,
+        -1067957655,
+        -1078185795,
+        1073250953,
+        1057819284,
+        1056698827,
+        1064623006,
+        1049201478,
+        -1089408872,
+        -1063746290,
+        1069135649,
+        -1103497120,
+        1046519011,
+        1059622090,
+        1006108406,
+        -1099639477,
+        1066766790,
+        1061937643,
+        -1061479554,
+        -1103897071,
+        1066076110,
+        1064781803,
+        -1084743586,
+        -1074240672,
+        1062481274,
+        -1086312523,
+        -1081014744,
+        -1087106496,
+        1044706322,
+        1084974089,
+        -1109521391,
+        -1082328476,
+        1085142040,
+        1076906904,
+        1070136810,
+        -1112255281,
+        1044748131,
+        -1080481602,
+        -1083853913,
+        1084146904,
+        -1090056789,
+        -1069466077,
+        -1116103520,
+        1078924733,
+        1074824865,
+        -1082331629,
+        -1076539381,
+        1064572473,
+        1067320829,
+        -1091653584,
+        -1070646775,
+        -1065127595,
+        -1079693203,
+        1065770906,
+        1057212192,
+        1057552217,
+        -1071140546,
+        -1078487605,
+        -1065083160,
+        -1061359692,
+        1064161804,
+        -1090354595,
+        -1079511393,
+        -1096492053,
+        1066112053,
+        1048469247,
+        1055868644,
+        -1092548323,
+        -1077367287,
+        1058274252,
+        1069873312,
+        -1085006948,
+        -1079704479,
+        -1074330345,
+        1039969813,
+        -1121041833,
+        -1088727590,
+        1075042805,
+        1061879001,
+        -1092751105,
+        1059030014,
+        -1108981283,
+        1003745912,
+        1076113331,
+        1066219229,
+        1083610369,
+        1077711940,
+        -1111474314,
+        -1094116336,
+        1059889371,
+        1052411363,
+        -1089913705,
+        -1078032447,
+        -1075294262,
+        1068293829,
+        -1067879690,
+        1069483395,
+        -1105559976,
+        -1079828036,
+        1064208739,
+        1080582937,
+        1057080676,
+        -1093915030,
+        1059043526,
+        1051280936,
+        1065160413,
+        1049586367,
+        1054735548,
+        -1118546215,
+        -1091109377,
+        -1074980941,
+        -1089939742,
+        1059349523,
+        1057331909,
+        -1120462844,
+        -1084289945,
+        -1089666567,
+        -1088716612,
+        -1092926604,
+        -1085385710,
+        1038944501,
+        1071479941,
+        -1078989299,
+        1052006212,
+        1077182500,
+        -1116267885,
+        -1086144995,
+        1073945644,
+        1060580077,
+        -1084451892,
+        -1087337961,
+        -1066153112,
+        -1089751909,
+        -1070278059,
+        -1070050017,
+        -1076861296,
+        -1065983156,
+        -1081560734,
+        -1085560495,
+        1074601213,
+        -1096577200,
+        -1093641421,
+        1060004985,
+        1073840254,
+        -1095520248,
+        -1123587622,
+        -1094570388,
+        1069000864,
+        -1086841936,
+        -1076878467,
+        -1062136403,
+        1065345466,
+        1041127564,
+        -1104988699,
+        -1081896896,
+        -1096779938,
+        1052668161,
+        -1088424926,
+        -1098138817,
+        1014779780,
+        -1085878946,
+        1049267013,
+        1058027103,
+        -1088263605,
+        -1089557729,
+        -1092906900,
+        -1126448348,
+        -1083811828,
+        -1097941121,
+        1062437838,
+        1058626679,
+        1034292995,
+        -1118736947,
+        1050520407,
+        -1096465542,
+        1076269780,
+        1059973551,
+        1065220281,
+        1078388397,
+        1024670930,
+        1064464488,
+        -1088279923,
+        1051920622,
+        -1071698979,
+        1068521125,
+        -1072404450,
+        1069035741,
+        1077060422,
+        -1063884426,
+        1042768750,
+        -1073662495,
+        -1085020371,
+        1074187366,
+        1078179852,
+        1068312119,
+        1050797442,
+        -1071311731,
+        -1105345610,
+        -1139444562,
+        1048126421,
+        1090226688,
+        -1068479589,
+        -1076492572,
+        -1065390119,
+        1037726215,
+        1075161358,
+        1071853102,
+        -1065306585,
+        1076674783,
+        978097264,
+        -1106038904,
+        1085348568,
+        1077443012,
+        1076035565,
+        1061419416,
+        -1060407234,
+        1080664692,
+        -1097979519,
+        1071616299,
+        1079746964,
+        1077895542,
+        1084524534,
+        1043845664,
+        1090846259,
+        -1075401016,
+        -1118805443,
+        -1062727210,
+        1063432429,
+        -1065170752,
+        1058133693,
+        1059180451,
+        -1083056015,
+        -1072913705,
+        -1078841347,
+        1075192057,
+        1058296318,
+        1033067838,
+        -1077827933,
+        1076835372,
+        1075946600,
+        -1086998050,
+        1083434764,
+        1075331023,
+        -1088069234,
+        1055213089,
+        -1097863364,
+        -1078881303,
+        -1110579442,
+        1067402980,
+        1074869003,
+        1055617166,
+        1060045137,
+        1067635448,
+        1071482245,
+        -1089541442,
+        1068357514,
+        1058111114,
+        -1111877814,
+        -1090712330,
+        -1079436309,
+        -1077738044,
+        -1066492046,
+        1073581370,
+        -1092473371,
+        -1105883784,
+        -1095382150,
+        1049599064,
+        1078742386,
+        -1070503465,
+        -1067739243,
+        -1113017475,
+        -1089731692,
+        1058166463,
+        -1064287668,
+        1074097567,
+        -1079388784,
+        1070691622,
+        -1060659612,
+        -1067922734,
+        1066059859,
+        -1089101793,
+        1043028223,
+        1083730261,
+        -1084712860,
+        -1070311033,
+        -1058104323,
+        -1071849324,
+        1075111632,
+        1063896521,
+        -1101971273,
+        -1077885420,
+        1059454137,
+        -1074399748,
+        -1086326960,
+        -1075716780,
+        1065953746,
+        -1064691861,
+        -1095569018,
+        -1105522269,
+        1059889742,
+        -1079549403,
+        991114650,
+        -1066001789,
+        -1122856094,
+        -1080853132,
+        1067727690,
+        -1088084269,
+        1076384349,
+        -1069352146,
+        -1085271802,
+        1065048378,
+        -1077003641,
+        -1072547159,
+        -1071611498,
+        1076240320,
+        1077821855,
+        1052209359,
+        1080658211,
+        -1080071469,
+        1071416318,
+        1074337825,
+        -1102335750,
+        1057474243,
+        1062580288,
+        -1073758083,
+        1077099182,
+        -1055260154,
+        1063493337,
+        1068763083,
+        1079978319,
+        -1103328281,
+        1059409749,
+        1075773357,
+        -1095085263,
+        1079974028,
+        1055889011,
+        -1079875333,
+        -1087578065,
+        1073373375,
+        1051249932,
+        -1089594021,
+        -1086042095,
+        1063722069,
+        -1116324514,
+        1048776570,
+        1057314558,
+        -1074945384,
+        -1102143686,
+        -1101205397,
+        -1082135976,
+        -1094444320,
+        -1118964251,
+        -1105831036,
+        -1074182680,
+        1047313494,
+        -1080111912,
+        1036821086,
+        -1083375121,
+        -1091751065,
+        1067138871,
+        -1117822111,
+        1070974258,
+        1053479059,
+        -1084457676,
+        -1066209647,
+        -1073917542,
+        -1104417347,
+        -1079018030,
+        1047729835,
+        1085635834,
+        -1079174252,
+        -1063644292,
+        1053163423,
+        -1089453013,
+        1062275354,
+        -1093531755,
+        1056052194,
+        -1072293249,
+        -1081899521,
+        -1081457073,
+        -1065609062,
+        -1073658647,
+        -1078903095,
+        -1090888134,
+        -1073624144,
+        -1082600194,
+        -1073112504,
+        1081266190,
+        1081304356,
+        -1103377688,
+        1061319428,
+        -1103523680,
+        -1075419257,
+        1047077505,
+        -1065124730,
+        -1078347707,
+        -1074162269,
+        1073921009,
+        1080562504,
+        1072394434,
+        1083289410,
+        -1093400788,
+        -1085104902,
+        -1079016254,
+        -1099039448,
+        1070241425,
+        1079915165,
+        -1071184329,
+        1080101628,
+        1066259303,
+        -1086379839,
+        1080092201,
+        1074450203,
+        -1078995939,
+        -1087011675,
+        1058501099,
+        1090223052,
+        1067774963,
+        -1065233734,
+        998053856,
+        -1078457770,
+        -1092486222,
+        1063986781,
+        1051254989,
+        1047540789,
+        1050967457,
+        1074242062,
+        1049830887,
+        -1108758998,
+        1025218823,
+        -1086332040,
+        -1102836091,
+        1031243747,
+        1074296868,
+        -1074712219,
+        1023366534,
+        -1097160206,
+        -1086150264,
+        1049549686,
+        -1093336090,
+        1035776621,
+        1044929836,
+        -1084396248,
+        1056255011,
+        1039799363,
+        -1099742489,
+        -1081344737,
+        1076378326,
+        -1105383127,
+        -1068547222,
+        -1087661769,
+        1040197526,
+        1058255870,
+        1068141481,
+        -1074481833,
+        -1085874093,
+        1075652873,
+        1066887862,
+        -1080554079,
+        -1122262422,
+        1048839002,
+        1081100144,
+        1056303557,
+        1024234553,
+        -1071568954,
+        -1099861634,
+        1052298744,
+        -1080298629,
+        -1070595755,
+        -1068848787,
+        1075826595,
+        1057541862,
+        1033906765,
+        -1094929968,
+        1066394803,
+        -1100361514,
+        -1086232965,
+        -1080928439,
+        -1126822810,
+        -1069473533,
+        1083105183,
+        -1095641893,
+        -1082794878,
+        1068296926,
+        1067775845,
+        1064055696,
+        1067418768,
+        -1076396306,
+        1078339724,
+        1078715869,
+        1071641876,
+        -1105226822,
+        -1073373902,
+        -1092265833,
+        1058339029,
+        1074685865,
+        1076039111,
+        1068686407,
+        -1107601363,
+        1086217443,
+        -1073338228,
+        1044287428,
+        -1064996620,
+        -1086047226,
+        -1063925762,
+        -1075528889,
+        -1080550643,
+        -1076011713,
+        -1072930613,
+        -1067129770,
+        1056302027,
+        -1087588079,
+        -1057523737,
+        -1068880822,
+        -1068817502,
+        -1066057475,
+        -1077664714,
+        -1082493250,
+        1072632501,
+        -1071765326,
+        1056136349,
+        -1088007779,
+        -1087306866,
+        -1096507230,
+        -1095951424,
+        1066662494,
+        1069006538,
+        -1113397866,
+        1054718158,
+        1057531488,
+        1059591360,
+        1049782424,
+        -1092981760,
+        1052884656,
+        -1105628865,
+        -1084023920,
+        -1089009282,
+        1054141937,
+        1035552917,
+        -1079958404,
+        1041972667,
+        1071100773,
+        1050583998,
+        1089684194,
+        1073927038,
+        -1092250700,
+        1081812056,
+        -1074611506,
+        1032099559,
+        1061293331,
+        -1090235411,
+        -1085693157,
+        1070503578,
+        -1071927697,
+        -1082302789,
+        -1097151814,
+        1060378098,
+        1059336707,
+        -1120271181,
+        1052291356,
+        -1082629813,
+        -1059338536,
+        1067900865,
+        1066222187,
+        1080482919,
+        1040411252,
+        -1071096081,
+        1055021599,
+        1073042984,
+        1071004670,
+        -1072331951,
+        1081235598,
+        1087197134,
+        1064829457,
+        1053524678,
+        -1120811206,
+        -1072864313,
+        -1087311933,
+        -1076295737,
+        -1064759585,
+        1077655295,
+        1067870455,
+        1080264094,
+        1066615251,
+        1070247790,
+        -1091210684,
+        1030112545,
+        1065149033,
+        1065868714,
+        1048785555,
+        -1075602099,
+        -1062465295,
+        -1080447043,
+        -1100602048,
+        1051586652,
+        1081033248,
+        1068517219,
+        -1086510582,
+        1073774623,
+        -1089703849,
+        1080270887,
+        -1086206965,
+        -1078659942,
+        -1063820569,
+        1065491724,
+        -1080859243,
+        1045042702,
+        1061002344,
+        -1075947395,
+        1076142393,
+        1070429882,
+        1070548991,
+        1067766269,
+        -1105873912,
+        -1085838147,
+        -1098532126,
+        -1115402277,
+        -1088295693,
+        1027634606,
+        1024113333,
+        -1069172418,
+        1066071441,
+        1051863987,
+        -1082692168,
+        -1097623046,
+        1058186014,
+        1059256495,
+        1046909671,
+        -1094871931,
+        1071332834,
+        -1086938908,
+        1061460366,
+        -1103254371,
+        -1104619616,
+        -1130339240,
+        1066472996,
+        -1080026708,
+        1079036182,
+        1053215953,
+        -1078520392,
+        -1069823342,
+        -1081867576,
+        1058539749,
+        -1075322522,
+        -1078582317,
+        1089625495,
+        1055641776,
+        -1093857540,
+        -1070824118,
+        -1082112120,
+        -1077892094,
+        -1097939940,
+        1080920563,
+        1086280078,
+        -1062078489,
+        -1097144828,
+        -1071022942,
+        -1073313043,
+        1069770232,
+        -1096535665,
+        -1073130925,
+        -1092848406,
+        -1088167358,
+        1077045128,
+        1049473113,
+        1038374640,
+        -1072721311,
+        1063958333,
+        -1081363774,
+        1068327127,
+        1053988386,
+        -1072775890,
+        -1103566743,
+        1058278470,
+        1079251726,
+        -1095677031,
+        -1069009071,
+        -1083506792,
+        1060407894,
+        1072878428,
+        1057310539,
+        1051455672,
+        -1070815414,
+        -1070902035,
+        1068995515,
+        -1093476570,
+        1068979554,
+        1070053819,
+        -1085573775,
+        -1081524434,
+        -1069361713,
+        -1098597933,
+        -1105363854,
+        -1083755628,
+        1061489505,
+        -1068537176,
+        1065889769,
+        -1085741998,
+        -1072533542,
+        1035149605,
+        1058694866,
+        1070470566,
+        -1073786008,
+        -1077400079,
+        -1107822770,
+        -1081821606,
+        -1083847004,
+        -1089878100,
+        1064054449,
+        1058916180,
+        1063465508,
+        1052783296,
+        1066885073,
+        1040785921,
+        1061800501,
+        -1086044061,
+        -1107114862,
+        1051751499,
+        -1085664987,
+        -1089170684,
+        -1089073391,
+        -1090912761,
+        1051865480,
+        -1089170749,
+        1043895308,
+        1062102784,
+        -1085725827,
+        -1102107508,
+        1050731590,
+        -1084000633,
+        1068484545,
+        -1072873456,
+        -1073014944,
+        1069758189,
+        -1090917403,
+        -1078377288,
+        -1125040415,
+        1074660460,
+        -1071403411,
+        -1071836523,
+        -1089049718,
+        1049483923,
+        1078564502,
+        -1087006437,
+        -1074705371,
+        1050550752,
+        -1085103423,
+        1054648886,
+        1045238271,
+        -1075350244,
+        -1091899885,
+        1050816412,
+        1074594641,
+        -1095429629,
+        -1071477805,
+        -1079722976,
+        -1076257851,
+        1051466005,
+        -1079653661,
+        -1100850669,
+        -1095589241,
+        1038899002,
+        1068114066,
+        -1103837830,
+        1069330568,
+        1070563048,
+        -1077525382,
+        1043052758,
+        -1085276239,
+        -1074576709,
+        1055717286,
+        -1083843792,
+        1062818083,
+        -1088528704,
+        1067807867,
+        -1056638402,
+        -1075416977,
+        1064526004,
+        1064469294,
+        1058088139,
+        -1079637513,
+        -1100732238,
+        -1082582534,
+        -1086689646,
+        -1081434181,
+        -1090136296,
+        1063909664,
+        1063350812,
+        -1087042839,
+        -1082810173,
+        -1100194731,
+        -1061521654,
+        -1080268311,
+        1040908961,
+        -1081057725,
+        -1072181369,
+        1059140100,
+        -1094466635,
+        -1093678455,
+        -1099881733,
+        1055296429,
+        1051308423,
+        1050811719,
+        1032164361,
+        1045903706,
+        1049356767,
+        1053255632,
+        -1144274974,
+        -1119295318,
+        -1081919869,
+        1052571788,
+        -1090313179,
+        -1098452420,
+        1035792104,
+        1058472566,
+        1025142876,
+        1049453018,
+        1067348971,
+        1038469679,
+        1083187438,
+        -1082373316,
+        -1087173893,
+        1070232893,
+        -1085521225,
+        -1086267273,
+        1063594479,
+        1057008761,
+        -1084913906,
+        1057195995,
+        1063561011,
+        1060668750,
+        -1085509517,
+        -1078241919,
+        1055860452,
+        1000278688,
+        1050276145,
+        1058619342,
+        -1082005496,
+        -1087768879,
+        -1100402861,
+        1082354056,
+        1057370675,
+        1064449744,
+        1078412138,
+        -1074283803,
+        1057715670,
+        -1077829543,
+        1054922528,
+        1081356305,
+        1062154540,
+        1073728588,
+        -1086928506,
+        -1065220764,
+        1068275718,
+        1075276153,
+        -1072949165,
+        -1071104549,
+        -1089357844,
+        -1073723458,
+        1069149854,
+        1075049295,
+        1069819985,
+        1071321190,
+        -1071792911,
+        1071647210,
+        1075055795,
+        1061376693,
+        -1074879771,
+        -1086488386,
+        1074277014,
+        1083030143,
+        1067976218,
+        -1064195098,
+        1059911411,
+        1072493597,
+        1087162389,
+        1087675603,
+        1061187478,
+        -1080921349,
+        1078070630,
+        1074818563,
+        1085162444,
+        1060095357,
+        -1076729279,
+        1066135684,
+        -1079482568,
+        -1073645537,
+        1074180026,
+        -1062538342,
+        1074827640,
+        1080781484,
+        1054929402,
+        -1097807417,
+        -1079893387,
+        -1170668656,
+        -1093915011,
+        -1080512165,
+        -1085936747,
+        1074494843,
+        1050034537,
+        -1092016150,
+        1069357230,
+        1033841804,
+        1065479475,
+        1069923126,
+        1039649777,
+        -1094104355,
+        -1106840553,
+        1041846179,
+        -1088179626,
+        -1084070932,
+        1074865440,
+        -1085473835,
+        1089124095,
+        -1083474790,
+        1073661982,
+        1061055750,
+        -1069380656,
+        -1080417273,
+        -1100387358,
+        1072705460,
+        1077259835,
+        1054726177,
+        -1080509838,
+        -1073321892,
+        -1069239977,
+        1059999958,
+        1074822733,
+        -1072492945,
+        -1072386798,
+        1083154485,
+        -1096374932,
+        1071179841,
+        1082513791,
+        1022727166,
+        1061280071,
+        1072548450,
+        -1090205384,
+        -1062524872,
+        -1063553203,
+        1065394318,
+        1045214051,
+        -1080730282,
+        993878958,
+        -1090969197,
+        -1091006124,
+        -1111457538,
+        1047313153,
+        -1074388716,
+        -1081557621,
+        1074903726,
+        -1089351784,
+        -1070868766,
+        -1069428298,
+        1063401564,
+        1067117669,
+        -1088656631,
+        1052025902,
+        1066001701,
+        -1087300015,
+        1058053835,
+        1051978570,
+        1055873796,
+        -1086522987,
+        -1084947300,
+        -1093346963,
+        -1072457144,
+        -1077441372,
+        -1068837573,
+        -1093002680,
+        1059683037,
+        -1088309069,
+        1073906322,
+        -1072400007,
+        -1066101086,
+        1033667345,
+        1071762051,
+        -1090242100,
+        1057150170,
+        -1087809593,
+        1043044255,
+        -1079116119,
+        -1088733988,
+        -1092529278,
+        1061179655,
+        1053741352,
+        1056595117,
+        -1098223566,
+        -1105510942,
+        1041308055,
+        1059500354,
+        -1091479454,
+        -1104075674,
+        -1078407395,
+        -1086310156,
+        -1081865738,
+        -1095464728,
+        -1098464254,
+        1064046946,
+        -1087396174,
+        1045424009,
+        1068378081,
+        -1085880653,
+        -1088407062,
+        -1082000655,
+        -1095463317,
+        1063739719,
+        -1080642808,
+        -1079794531,
+        1079427258,
+        1051074679,
+        -1079334103,
+        -1076635366,
+        1059470804,
+        -1097375877,
+        1053503429,
+        1068398562,
+        1052645277,
+        -1112857779,
+        -1111353742,
+        -1072232055,
+        1062969570,
+        -1085390347,
+        1067382318,
+        1070310288,
+        -1111362556,
+        -1104799802,
+        -1081391383,
+        -1083565363,
+        -1083057355,
+        1080307085,
+        1069593417,
+        -1076897210,
+        -1091678203,
+        1063866889,
+        -1086330463,
+        -1093920745,
+        1056735163,
+        -1088878829,
+        -1076234835,
+        -1056915369,
+        1065528840,
+        1070691527,
+        -1084223780,
+        1067002991,
+        1058095602,
+        1057063911,
+        1075690292,
+        -1085378498,
+        1047405683,
+        -1069452209,
+        -1095204325,
+        -1115083501,
+        1063286064,
+        -1067439696,
+        -1103381867,
+        -1131783735,
+        -1083087210,
+        -1072203120,
+        1063950566,
+        1075310008,
+        -1072461800,
+        -1081514708,
+        -1081755868,
+        -1081875643,
+        1045795305,
+        -1083987411,
+        -1081820865,
+        -1070674438,
+        1072275315,
+        1082580825,
+        1067943895,
+        989189276,
+        -1097297549,
+        1038497768,
+        1033315890,
+        1065728176,
+        -1089800268,
+        -1091524600,
+        1049254494,
+        1059341403,
+        -1087759907,
+        1059643952,
+        -1118260217,
+        1051988919,
+        1052290155,
+        -1093727692,
+        1046506453,
+        -1093259102,
+        -1086675929,
+        -1081517994,
+        1037755038,
+        1024775072,
+        -1090919736,
+        -1094468204,
+        1071408205,
+        1072208075,
+        -1135781952,
+        1063855049,
+        -1076590454,
+        1067084782,
+        -1092331400,
+        1042254400,
+        -1085038145,
+        1058365118,
+        1057591300,
+        -1078974951,
+        -1093709736,
+        -1076212592,
+        1040829242,
+        1040255569,
+        -1081584765,
+        -1095101868,
+        1037446974,
+        -1083018097,
+        1057829770,
+        1058318612,
+        -1088398303,
+        1082088259,
+        1074347393,
+        1056059812,
+        1061962678,
+        1069358262,
+        1083562241,
+        1063331888,
+        -1061549630,
+        1032466943,
+        1059327663,
+        1081660551,
+        -1110696914,
+        -1097445422,
+        1077225465,
+        1045795584,
+        1067319415,
+        -1083933631,
+        -1080321550,
+        1082240510,
+        1065847662,
+        -1068117398,
+        -1078326695,
+        1074793291,
+        -1067653259,
+        -1089756163,
+        -1095742473,
+        -1060915086,
+        -1113555075,
+        1066125943,
+        1056870325,
+        1049475653,
+        -1089803126,
+        -1063420192,
+        1072554150,
+        -1079372341,
+        -1070049111,
+        -1060154890,
+        -1129796861,
+        -1072794582,
+        1076319755,
+        1082279901,
+        1069428725,
+        1073385946,
+        1074899027,
+        1076615586,
+        1049035166,
+        -1083748837,
+        1075306744,
+        -1099398367,
+        -1129949287,
+        -1081727124,
+        -1095953738,
+        -1089829283,
+        1061698401,
+        -1098881004,
+        -1070054653,
+        1055300882,
+        -1102279462,
+        -1081638218,
+        1066176539,
+        -1112200331,
+        1034994601,
+        1064387113,
+        -1080253469,
+        1070732471,
+        1056489142,
+        -1087912346,
+        -1080964807,
+        -1077481049,
+        -1078839279,
+        1076170627,
+        -1088176133,
+        1051988800,
+        1066780375,
+        1069417983,
+        1072285962,
+        -1131252872,
+        1072943668,
+        1067069715,
+        -1063275160,
+        1075296885,
+        1065557928,
+        -1076750872,
+        1063075911,
+        1058367586,
+        1074134136,
+        -1080249094,
+        -1079395887,
+        -1081458491,
+        -1089615477,
+        1074072933,
+        1073874728,
+        -1106141737,
+        -1106331762,
+        -1089272408,
+        1059058700,
+        1066074021,
+        1051378334,
+        1064137989,
+        1059123309,
+        -1097903050,
+        -1086624314,
+        1066164451,
+        -1097001737,
+        -1086421760,
+        -1096747181,
+        -1095383913,
+        1052606814,
+        -1100251607,
+        1054403196,
+        1010086639,
+        -1081165600,
+        -1083830492,
+        -1096982837,
+        -1086709327,
+        -1082189156,
+        1057589290,
+        -1085316980,
+        1075953776,
+        -1070744584,
+        1057403902,
+        1048807784,
+        -1089615741,
+        1052949112,
+        -1072887273,
+        1065418877,
+        1037033917,
+        1074060336,
+        -1100975674,
+        1070054631,
+        -1063499511,
+        -1064234549,
+        -1102263553,
+        1065897821,
+        1060061081,
+        -1089513068,
+        -1082075745,
+        -1079835338,
+        1055826315,
+        -1077082422,
+        1015230996,
+        -1102618490,
+        1050653681,
+        -1104528663,
+        -1095248642,
+        -1088983828,
+        -1101140029,
+        1031841541,
+        -1096569467,
+        1045368232,
+        -1095674537,
+        -1097929857,
+        1044987789,
+        -1081398055,
+        -1089743965,
+        -1082718815,
+        -1106216100,
+        1018568174,
+        1032533064,
+        1047030259,
+        1053474064,
+        1049610784,
+        -1111217164,
+        1071917028,
+        1054621682,
+        -1080486458,
+        -1093456954,
+        1053914687,
+        -1098150523,
+        -1074358300,
+        -1080650700,
+        -1069363581,
+        1057543099,
+        1074750051,
+        1035596862,
+        -1112009779,
+        -1068108041,
+        -1074976964,
+        1065525997,
+        -1093396330,
+        1044367899,
+        1052837725,
+        -1068423432,
+        -1087488799,
+        -1082351233,
+        1049070926,
+        1057605971,
+        1053659890,
+        -1074707364,
+        -1087388062,
+        -1068014618,
+        1058388602,
+        1081079877,
+        -1073203117,
+        -1089123775,
+        -1124794486,
+        -1064200616,
+        -1070734102,
+        1070885752,
+        1067995850,
+        -1066557720,
+        -1081140961,
+        -1069282785,
+        1059660883,
+        1062339603,
+        1083040460,
+        -1082791321,
+        1065761784,
+        1084917805,
+        1059209352,
+        1052299314,
+        1084952638,
+        1083727058,
+        1078763549,
+        1069249344,
+        -1088707476,
+        1068594726,
+        1069939833,
+        -1086409900,
+        1083668175,
+        -1073448804,
+        1075696199,
+        1078965640,
+        1062173766,
+        1082803907,
+        1061724466,
+        -1083172242,
+        -1082603936,
+        -1054779878,
+        1048318180,
+        -1105684136,
+        -1092363827,
+        1069681851,
+        1052156668,
+        -1092065332,
+        -1090764505,
+        1066650086,
+        1044284979,
+        -1088158456,
+        1061269921,
+        -1073590453,
+        -1095526150,
+        1033956425,
+        -1066627898,
+        1048725647,
+        1063528705,
+        1049075300,
+        1065514019,
+        1033281335,
+        -1081936635,
+        -1112314130,
+        -1078546221,
+        1017188917,
+        -1124771562,
+        -1088922486,
+        -1078285777,
+        -1086565098,
+        1062100356,
+        1078399172,
+        -1075483588,
+        1059104091,
+        1055566490,
+        -1088595464,
+        1075706661,
+        1049993066,
+        -1063558069,
+        -1072502093,
+        -1082023132,
+        -1101109062,
+        1048424897,
+        1057666054,
+        -1076213197,
+        1070058111,
+        1058798611,
+        -1078692479,
+        1058277474,
+        -1068446722,
+        1065803164,
+        -1073611262,
+        -1066635266,
+        1089810215,
+        1083792591,
+        -1089228967,
+        -1080863518,
+        -1081069307,
+        1046442563,
+        1067655058,
+        1066324452,
+        1059229432,
+        1080581783,
+        -1057023586,
+        1051915121,
+        1083439939,
+        1074992287,
+        1074584231,
+        1063814866,
+        -1101773258,
+        -1074810438,
+        1078464460,
+        1081823360,
+        1078681668,
+        1087753182,
+        1068856610,
+        -1090060331,
+        -1061875731,
+        -1066412403,
+        1054708923,
+        -1077119313,
+        -1071163115,
+        1080784726,
+        1082314332,
+        1056932121,
+        1081478608,
+        -1104109143,
+        1059034643,
+        -1070548382,
+        -1072238869,
+        -1068269717,
+        -1058128973,
+        1072789329,
+        1068337351,
+        1081477237,
+        -1084463572,
+        1076131295,
+        1066870170,
+        -1108087519,
+        -1137179995,
+        1070136128,
+        1052892083,
+        -1100998351,
+        -1071004109,
+        -1073512909,
+        1076686610,
+        1061826290,
+        1071078017,
+        1083465602,
+        -1075300331,
+        1051799339,
+        -1080598073,
+        -1072790398,
+        -1076397806,
+        1076834981,
+        -1089183270,
+        -1072035690,
+        -1098897013,
+        -1056453742,
+        -1086901791,
+        -1073215421,
+        -1079713303,
+        -1075337537,
+        -1094816787,
+        1046996205,
+        -1080842951,
+        1080548919,
+        1025667110,
+        1079204826,
+        -1112793427,
+        -1070967002,
+        1084118587,
+        -1106125534,
+        1088748632,
+        -1092317501,
+        -1068440416,
+        -1080484450,
+        1052433575,
+        -1103891258,
+        1067617693,
+        1061594554,
+        1056845516,
+        -1102582873,
+        -1083602663,
+        -1087964720,
+        1084543262,
+        -1076510881,
+        1061929624,
+        1056817428,
+        1067443582,
+        -1082881120,
+        1047546839,
+        -1109875683,
+        -1079501993,
+        -1091008731,
+        1057962271,
+        1067344279,
+        1058296432,
+        1029083250,
+        -1098014777,
+        -1086233502,
+        1063934951,
+        1052971900,
+        -1103052850,
+        -1085582711,
+        -1073476394,
+        -1083003831,
+        -1070818016,
+        -1075601617,
+        -1066980479,
+        1054841441,
+        1066869278,
+        -1086079479,
+        -1068819329,
+        -1077444711,
+        -1068975668,
+        -1078061318,
+        -1063056311,
+        -1072435864,
+        -1070084637,
+        -1079049694,
+        1059178170,
+        -1073434804,
+        -1078502073,
+        -1091127870,
+        1080407732,
+        -1111273103,
+        1067890739,
+        -1080566634,
+        -1085031134,
+        -1099830358,
+        1061577480,
+        1042690771,
+        1062180518,
+        -1093576256,
+        -1092249443,
+        1035425711,
+        1044318386,
+        -1103956172,
+        -1094602779,
+        -1124859494,
+        -1097032344,
+        -1086250489,
+        -1091288320,
+        -1091147097,
+        1032180194,
+        -1088647791,
+        1042725179,
+        -1096535439,
+        1059136654,
+        -1093921602,
+        1049793104,
+        1033213170,
+        1075048650,
+        -1103889832,
+        -1081178084,
+        1059468656,
+        1053473204,
+        -1076915111,
+        1051036950,
+        1061989459,
+        1061971852,
+        -1090429111,
+        -1092379984,
+        1042719802,
+        1053031050,
+        1065574490,
+        -1095859977,
+        -1089322682,
+        -1106860033,
+        1065636512,
+        1067409312,
+        -1077621035,
+        -1100261388,
+        -1106899214,
+        -1090239919,
+        -1073228216,
+        1054672433,
+        1066306007,
+        1061828666,
+        1050115107,
+        1060489966,
+        -1095420532,
+        1073340396,
+        -1086064468,
+        1067420498,
+        -1060674048,
+        1067037472,
+        1070309058,
+        -1076908494,
+        -1080402486,
+        1058340329,
+        1074658445,
+        -1127618244,
+        1066749748,
+        1067755519,
+        1085796422,
+        -1100775352,
+        1044495437,
+        1074804225,
+        1059018973,
+        1045870811,
+        -1077599314,
+        -1089116025,
+        1073043230,
+        1077274672,
+        1067165815,
+        1045135743,
+        1081396235,
+        -1086073459,
+        1036012062,
+        1081637935,
+        1071100959,
+        1066048504,
+        1067036146,
+        -1078505413,
+        1066889484,
+        1067610275,
+        1077665300,
+        1041839278,
+        1004830330,
+        -1093940783,
+        -1107238856,
+        1054864217,
+        1053163268,
+        -1116644549,
+        1009852662,
+        -1111411717,
+        -1102921210,
+        1058246075,
+        -1108224913,
+        1050985119,
+        1055953407,
+        1041749651,
+        -1098229438,
+        -1109951639,
+        -1114108507,
+        -1087826343,
+        -1096421497,
+        1033945805,
+        -1072112382,
+        -1085391347,
+        -1062206119,
+        -1084591932,
+        1063913405,
+        -1081121919,
+        1042043293,
+        1072620404,
+        -1093577766,
+        -1091608752,
+        1067761395,
+        -1072859916,
+        1058755137,
+        1067802772,
+        1052428272,
+        -1081036407,
+        -1087195449,
+        1069699067,
+        -1090322053,
+        1051359711,
+        -1080458464,
+        -1073425946,
+        1062697919,
+        1072459691,
+        1056724330,
+        -1066897733,
+        -1081782855,
+        1080087939,
+        -1114182903,
+        1082674247,
+        -1075465016,
+        1077354752,
+        -1089427855,
+        -1081827396,
+        -1080682816,
+        -1069390202,
+        1057144529,
+        1031380090,
+        -1080234080,
+        1059697069,
+        -1089189976,
+        1050607492,
+        -1079587699,
+        1060875282,
+        -1074878570,
+        1062801997,
+        -1084359469,
+        1059295453,
+        -1072432788,
+        -1063005751,
+        -1061451051,
+        -1078911240,
+        -1068703212,
+        -1060376152,
+        1067858492,
+        -1072024741,
+        -1110924126,
+        -1070095664,
+        -1073592863,
+        -1061388671,
+        -1088372564,
+        -1068021535,
+        -1065096758,
+        -1071186190,
+        -1069495840,
+        -1066246552,
+        -1082705540,
+        -1061141228,
+        -1068398823,
+        -1066743868,
+        999217995,
+        1050324767,
+        1047245033,
+        -1068767313,
+        -1101585850,
+        -1083582976,
+        1042821406,
+        1058713493,
+        -1079723201,
+        -1081139849,
+        -1094401551,
+        -1107871677,
+        1047142414,
+        1041836213,
+        1012012876,
+        -1096777173,
+        1051327683,
+        1055227570,
+        1056644981,
+        -1081384966,
+        1054890533,
+        1062126424,
+        1066733962,
+        -1081288767,
+        -1081626521,
+        1063167998,
+        1082095698,
+        -1093035527,
+        -1079307149,
+        -1095711242,
+        -1105104324,
+        1057799343,
+        -1074310861,
+        -1118860163,
+        1039868549,
+        1049284167,
+        1062391177,
+        1057463755,
+        -1080348778,
+        -1122421936,
+        -1081753434,
+        1038025752,
+        -1061138936,
+        -1110595516,
+        1036124758,
+        -1080166174,
+        -1069991310,
+        -1077962771,
+        -1078156620,
+        1069846690,
+        1047969739,
+        1075164391,
+        -1078396233,
+        -1076946736,
+        1074143463,
+        -1078317293,
+        -1079108858,
+        1073743165,
+        1067244749,
+        1048664359,
+        1048064502,
+        1049034289,
+        -1093993650,
+        1020441067,
+        1068566537,
+        -1091754605,
+        -1098308074,
+        1015955247,
+        1068175418,
+        -1090540422,
+        -1090921276,
+        1063188157,
+        1064580661,
+        -1112697542,
+        -1085834468,
+        -1103514528,
+        -1099830831,
+        -1089979188,
+        1074082548,
+        -1076818607,
+        1065931668,
+        1066158869,
+        -1070083898,
+        1051476951,
+        -1079553085,
+        1067915041,
+        -1079205752,
+        -1091920938,
+        -1094030646,
+        1041581986,
+        1057532067,
+        1052204054,
+        -1078134888,
+        1057862060,
+        -1088487513,
+        -1105210726,
+        -1112324608,
+        -1109200617,
+        1070380002,
+        1051611107,
+        -1079387664,
+        -1114984263,
+        1057760745,
+        1071957679,
+        -1086033301,
+        -1085955171,
+        1054467848,
+        -1085837881,
+        -1082101699,
+        1057458150,
+        1042091852,
+        1069176752,
+        -1131220618,
+        -1073714758,
+        1065026950,
+        1054024331,
+        1053105769,
+        -1099378581,
+        1051857805,
+        1065408134,
+        -1092706149,
+        -1088985551,
+        1067790963,
+        1077522059,
+        -1075047178,
+        -1077599332,
+        1079398255,
+        -1096876424,
+        -1083688823,
+        1057760757,
+        -1097660978,
+        -1087991444,
+        1057323560,
+        1059214426,
+        -1078412002,
+        -1072244339,
+        1068130231,
+        1071918344,
+        -1070869439,
+        -1076624416,
+        -1066022268,
+        1071483639,
+        1073938797,
+        1070254617,
+        1069999860,
+        -1079051242,
+        -1084058149,
+        1060669959,
+        -1112409711,
+        -1111211938,
+        -1098304048,
+        1034278688,
+        1065410503,
+        -1095068695,
+        1044038325,
+        -1078995233,
+        -1079389371,
+        1068527901,
+        1070494933,
+        -1106171611,
+        -1078627430,
+        1043480926,
+        1051528366,
+        -1108191550,
+        -1086988631,
+        -1104546881,
+        -1106177859,
+        1061893688,
+        -1084700299,
+        -1084756263,
+        1074254432,
+        -1078186805,
+        -1080450838,
+        1069639067,
+        1060414701,
+        -1079325337,
+        -1079519497,
+        1065992067,
+        1068640544,
+        1034333291,
+        -1080099443,
+        1049420980,
+        1061355664,
+        1049184678,
+        -1123350493,
+        -1099103710,
+        -1099241729,
+        1068048639,
+        -1087477009,
+        -1088441272,
+        -1086607109,
+        1063388094,
+        1028838776,
+        -1093417677,
+        -1093934346,
+        -1069687329,
+        1055507654,
+        1057789100,
+        1057425444,
+        1070079942,
+        1058507405,
+        -1083036611,
+        -1102228439,
+        1073070292,
+        1071079713,
+        -1077968439,
+        -1081687554,
+        -1076543691,
+        1066427358,
+        1065627262,
+        -1070849274,
+        1075689343,
+        -1088159663,
+        1044078694,
+        1039395237,
+        1073621144,
+        1075186590,
+        -1073497655,
+        -1074230910,
+        1049282544,
+        -1089848391,
+        1037250970,
+        -1096583802,
+        1062545242,
+        -1087261948,
+        1050058029,
+        1053920031,
+        -1076641422,
+        -1077861200,
+        1061274763,
+        1077370156,
+        1063023364,
+        -1112771689,
+        1050995926,
+        -1089937807,
+    }
+}
diff --git a/icu4c/source/test/testdata/Thai_graphclust_model4_heavy_Test.txt b/icu4c/source/test/testdata/Thai_graphclust_model4_heavy_Test.txt
new file mode 100644 (file)
index 0000000..e8fc2c0
--- /dev/null
@@ -0,0 +1,96 @@
+# Copyright (C) 2018 and later: Unicode, Inc. and others.
+# License & terms of use: http://www.unicode.org/copyright.html
+Model: Thai_graphclust_model4_heavy
+Embedding:     grapheme_clusters_tf
+Input: ปฏิญญาสากลว่าด้วยสิทธิมนุษยชน
+Output:        |ปฏิญญา|สากลว่า|ด้วย|สิทธิ|มนุ|ษย|ชน|
+Input: คำปรารภ
+Output:        คำปราร|ภ|
+Input: โดยที่การยอมรับนับถือเกียรติศักดิ์ประจำตัว
+Output:        |โดย|ที่|การ|ยอม|รับ|นับถือเกียรติ|ศักดิ์|ประจำ|ตัว|
+Input: และสิทธิเท่าเทียมกันและโอนมิได้ของบรรดา
+Output:        |และ|สิทธิ|เท่า|เทีย|มกัน|และ|โอน|มิได้|ของ|บรรดา|
+Input: สมาชิก
+Output:        |สมาชิก|
+Input: ทั้ง
+Output:        ทั้ง|
+Input: หลายแห่งครอบครัว
+Output:        |หลาย|แห่ง|ครอบ|ครัว|
+Input: มนุษย์เป็นหลักมูลเหตุแห่งอิสรภาพ
+Output:        ม|นุ|ษย์|เป็น|หลักมูล|เหตุแห่งอิ|สรภาพ|
+Input: ความยุติธรรม
+Output:        |ความ|ยุติธรรม|
+Input: และสันติภาพในโลก
+Output:        |และ|สันติภาพ|ใน|โลก|
+Input: โดยที่การไม่นำพาและการเหยียดหยามต่อสิทธิมนุษยชน
+Output:        |โดย|ที่|การ|ไม่|นำ|พา|และ|การ|เหยียด|หยาม|ต่อ|สิทธิ|มนุ|ษย|ชน|
+Input: ยังผลให้มีการหระทำอันป่าเถื่อน
+Output:        |ยังผล|ให้|มี|การ|หระทำ|อัน|ป่า|เถื่อน|
+Input: ซี่งเป็นการละเมิดมโนธรรมของมนุษยชาติอย่างร้ายแรง
+Output:        |ซี่ง|เป็น|การ|ละเมิดม|โนธรรม|ของ|มนุษย|ชาติ|อย่าง|ร้าย|แรง|
+Input: และใต้
+Output:        |และ|ใต้|
+Input: ได้
+Output:        |ได้|
+Input: มีการประกาศว่า
+Output:        |มี|การ|ประกาศ|ว่า|
+Input: ปณิธานสูงสุดของสามัญชนได้แก่ความต้องการให้มนุษย์มีชีวิตอยู่ในโลกด้วยอิสรภาพในการพูด
+Output:        |ปณิธา|นสูงสุด|ของ|สามัญชน|ได้|แก่|ความ|ต้อง|การ|ให้|ม|นุษย์|มี|ชีวิต|อยู่|ใน|โลก|ด้วยอิ|สรภาพ|ใน|การ|พูด|
+Input: และความเชื่อถือ
+Output:        |และ|ความ|เชื่อถือ|
+Input: และอิสรภาพพ้นจากความหวาดกลัวและความต้องการ
+Output:        และอิ|สรภาพพ้น|จาก|ความ|หวาดกลัว|และ|ความ|ต้องการ|
+Input: โดยที่เป็นการจำเป็นอย่างยิ่งที่สิทธิมนุษยชนควรได้รับความคุ้มครองโดยหลักบังคับของกฎหมาย
+Output:        |โดย|ที่|เป็น|การ|จำเป็น|อย่าง|ยิ่งที่|สิทธิม|นุ|ษย|ชน|ควร|ได้|รับ|ความ|คุ้มครอง|โดย|หลักบัง|คับ|ของ|กฎหมา|ย|
+Input: ถ้าไม่ประสงค์จะให้คนตกอยู่ในบังคับให้หันเข้าหาการขบถขัดขืนต่อทรราชและการกดขี่เป็นวิถีทางสุดท้าย
+Output:        |ถ้า|ไม่|ประสงค์|จะ|ให้|คน|ตก|อยู่|ใน|บังคับ|ให้|หั|นเข้า|หา|การ|ขบ|ถขัด|ขืน|ต่อ|ทรราช|และ|การ|กดขี่|เป็น|วิ|ถี|ทาง|สุดท้าย|
+Input: โดยที่ประชากรแห่งสหประชาชาติได้ยืนยันไว้ในกฎบัตรถึงความเชื่อมั่นในสิทธิมนุษยชนอันเป็นหลักมูล
+Output:        |โดย|ที่|ประชากร|แห่ง|สหประชาชาติ|ได้|ยืนยัน|ไว้|ใน|กฎบัตร|ถึง|ความ|เชื่อมั่น|ใน|สิทธิ|มนุ|ษย|ชน|อัน|เป็น|หลักมูล|
+Input: ในเกียรติศักดิ์และคุณค่าของมนุษย์และในสิทธิเท่าเทียมกันของบรรดาชายและหญิง
+Output:        |ใน|เกียรติ|ศักดิ์|และ|คุณค่า|ของ|มนุษย์|และ|ใน|สิทธิ|เท่า|เทีย|มกัน|ของ|บรรดา|ชาย|และ|หญิง|
+Input: และได้ตกลงใจที่จะส่งเสริมความก้าวหน้าทางสังคม
+Output:        |และ|ได้|ตกลงใจ|ที่|จะ|ส่ง|เสริม|ความ|ก้าว|หน้าทาง|สังคม|
+Input: และมาตรฐานแห่งชีวิตที่ดีขึ้นด้วยในอิสรภาพ
+Output:        |และ|มาตรฐาน|แห่งชีวิต|ที่|ดี|ขึ้น|ด้วย|ในอิ|สรภาพ|
+Input: อันกว้างขวางยิ่งขึ้น
+Output:        |อัน|กว้าง|ขวาง|ยิ่ง|ขึ้น|
+Input: โดยที่รัฐสมาชิกต่างปฎิญาณจะให้บรรลุถึงซึ่งการส่งเสริมการเคารพและการปฎิบัติตามทั่วสากลต่อสิทธิมนุษยชนและอิสรภาพหลักมูล
+Output:        |โดย|ที่|รัฐส|มา|ชิก|ต่าง|ปฎิญาณ|จะ|ให้|บรรลุ|ถึง|ซึ่ง|การ|ส่ง|เสริม|การ|เคา|รพ|และ|การ|ปฎิบัติ|ตา|มทั่วสาก|ล|ต่อ|สิทธิม|นุ|ษย|ชนและอิ|สรภาพ|หลักมูล|
+Input: โดยร่วมมือกับสหประชาชาติ
+Output:        |โดย|ร่วมมือ|กับ|สหประชาชาติ|
+Input: โดยที่ความเข้าใจร่วมกันในสิทธิ
+Output:        |โดย|ที่|ความ|เข้าใจ|ร่วม|กัน|ใน|สิทธิ|
+Input: และอิสรภาพเหล่านี้เป็นสิ่งสำคัญอย่างยิ่ง
+Output:        และอิ|สรภาพ|เหล่า|นี้|เป็น|สิ่ง|สำคัญ|อย่าง|ยิ่ง|
+Input: เพื่อให้ปฏิญาณนี้สำเร็จผลเต็มบริบูรณ์
+Output:        |เพื่อ|ให้|ปฏิญาณ|นี้|สำเร็จผล|เต็ม|บริบูรณ์|
+Input: ฉะนั้น
+Output:        ฉะนั้น|
+Input: บัดนี้สมัชชาจึงประกาศว่า
+Output:        |บัด|นี้|สมัชชา|จึง|ประกาศ|ว่า|
+Input: ปฏิญญาสากลว่าด้วยสิทธิมนุษยชนนี้
+Output:        |ปฏิญญา|สากลว่า|ด้วย|สิทธิ|มนุ|ษย|ชน|นี้|
+Input: เป็นมาตรฐานร่วมกันแห่งความสำเร็จสำหรับบรรดาประชากรและประชาชาติทั้งหลาย
+Output:        |เป็น|มาตรฐาน|ร่วม|กัน|แห่ง|ความ|สำเร็จ|สำหรับ|บรรดา|ประชากร|และ|ประชาชาติ|ทั้งหลา|ย|
+Input: เพื่อจุดหมายปลายทางที่ว่า
+Output:        |เพื่อจุดหมาย|ปลาย|ทาง|ที่|ว่า|
+Input: เอกชนทุกคนและองค์การชองสังคมทุกองค์การ
+Output:        |เอกชน|ทุก|คน|และ|องค์การ|ชอง|สังคม|ทุกองค์การ|
+Input: โดยการรำลึกถึงปฏิญญานี้เป็นเนืองนิจ
+Output:        |โดย|การ|รำลึก|ถึง|ปฏิญญานี้|เป็น|เนือง|นิ|จ|
+Input: จะบากบั่นพยายามด้วยการสอนและศึกษา
+Output:        |จะ|บาก|บั่น|พยายาม|ด้วย|การ|สอน|และ|ศึก|ษา|
+Input: ในอันที่จะส่งเสริมการเคารพสิทธิและอิสรภาพเหล่านี้
+Output:        |ใน|อัน|ที่|จะ|ส่ง|เสริม|การ|เคารพ|สิทธิ|และอิ|สรภาพ|เหล่า|นี้|
+Input: และด้วยมาตรการอันก้าวหน้าทั้งในประเทศและระหว่างประเทศ
+Output:        |และ|ด้วย|มาตรการ|อัน|ก้าว|หน้าทั้ง|ใน|ประเทศ|และ|ระหว่าง|ประเทศ|
+Input: ในอันที่จะให้มีการยอมรับนับถือ
+Output:        |ใน|อัน|ที่|จะ|ให้|มี|การ|ยอม|รับ|นับถือ|
+Input: และการปฏิบัติตามโดยสากลและอย่างเป็นผลจริงจัง
+Output:        |และ|การ|ปฏิบัติตาม|โดย|สากล|และ|อย่าง|เป็นผล|จริง|จัง|
+Input: ทั้งในบรรดาประชาชนของรัฐสมาชิกด้วยกันเอง
+Output:        ทั้ง|ใน|บรรดา|ประชาชน|ของ|รัฐส|มาชิก|ด้วย|กัน|เอง|
+Input: และในบรรดาประชาชนของดินแดนที่อยู่ใตัอำนาจของรัฐนั้น
+Output:        |และ|ใน|บรรดา|ประชาชน|ของ|ดินแดน|ที่|อยู่|ใตัอำนาจ|ของ|รัฐนั้น|
+Input: ๆ
+Output:        |ๆ|