Speed up benchmarks that take a long time to run
authorAndrew Waterman <waterman@cs.berkeley.edu>
Wed, 4 May 2016 07:56:42 +0000 (00:56 -0700)
committerAndrew Waterman <waterman@cs.berkeley.edu>
Wed, 4 May 2016 07:56:58 +0000 (00:56 -0700)
benchmarks/mm/gen.scala
benchmarks/mm/mm_main.c
benchmarks/mm/rb.h
benchmarks/mt-matmul/matmul.c
benchmarks/mt-matmul/mt-matmul.c
benchmarks/spmv/dataset1.h

index 38d9e6badb9ab478234febc6796dd004d49feb9c..982daa86d7375995b30c5686877a98e32ecd09a9 100644 (file)
@@ -74,7 +74,7 @@ object MMGen {
     ("cp a.out " + Seq("b", m, n, p, m1, n1, p1, "run").reduce(_+"."+_))!
   }
   def main(args: Array[String]): Unit = {
-    test1(4, 5, 6, 36, 35, 36)
+    test1(4, 5, 6, 24, 25, 24)
     //for (i <- 4 to 6; j <- 4 to 6; k <- 4 to 6)
     //  test1(i, j, k, if (i == 5) 35 else 36, if (j == 5) 35 else 36, if (k == 5) 35 else 36)
   }
index 4d08b152350e33fc2a5419375a825cacce2d8acb..133b5a2d73a17434e8aefef7d8e4ebf4ba8d402e 100644 (file)
@@ -6,6 +6,8 @@
 #include <stdio.h>
 #include "util.h"
 
+#pragma GCC optimize ("unroll-loops")
+
 void thread_entry(int cid, int nc)
 {
   const int R = 8;
index 593b54f134f2b5818c74711708c37da93e56a092..421c9648fb47118a886dadd14b29955f943b21b3 100644 (file)
@@ -1,7 +1,5 @@
-// See LICENSE for license details.
-
 static const int RBM = 4, RBN = 5, RBK = 6;
-static const int CBM = 36, CBN = 35, CBK = 36;
+static const int CBM = 24, CBN = 25, CBK = 24;
 static inline void kloop(size_t p, t* a0, size_t lda, t* b0, size_t ldb, t* c, size_t ldc)
 {
   t* c_0 = &c[ldc*0];
index 7c23309aab654a7f539a56a0bd6a30f174b2c43b..6d7b97863a5a023ffffa2f04e4152b736a900784 100644 (file)
@@ -2,21 +2,22 @@
 
 #include "dataset.h"
 #include "util.h"
+#include <stddef.h>
 
-void __attribute__((noinline)) matmul(const int coreid, const int ncores, const int lda,  const data_t A[], const data_t B[], data_t C[] )
+#pragma GCC optimize ("unroll-loops")
+
+void matmul(const size_t coreid, const size_t ncores, const size_t lda,  const data_t A[], const data_t B[], data_t C[])
 {
-   int i, j, k;
-   int block = lda / ncores;
-   int start = block * coreid;
+  size_t i, j, k;
+  size_t block = lda / ncores;
+  size_t start = block * coreid;
  
-   for ( j = start; j < (start+block); j++ ) 
-   {
-      for ( k = 0; k < lda; k++ )  
-      {
-         for ( i = 0; i < lda; i++ ) 
-         {
-            C[i + j*lda] += A[j*lda + k] * B[k*lda + i];
-         }
-      }
-   }
+  for (i = 0; i < lda; i++) {
+    for (j = start; j < (start+block); j++) {
+      data_t sum = 0;
+      for (k = 0; k < lda; k++)
+        sum += A[j*lda + k] * B[k*lda + i];
+      C[i + j*lda] = sum;
+    }
+  }
 }
index 9cc3f20bbb39d71f511ae8794cb4a2c08cb3c2e8..349e47e0fb07bbf8af9aad8f105de7d34a37baba 100644 (file)
@@ -22,6 +22,7 @@
 #include <string.h>
 #include <stdlib.h>
 #include <stdio.h>
+#include <stddef.h>
 
 
 //--------------------------------------------------------------------------
@@ -39,7 +40,7 @@
 //--------------------------------------------------------------------------
 // matmul function
  
- extern void __attribute__((noinline)) matmul(const int coreid, const int ncores, const int lda,  const data_t A[], const data_t B[], data_t C[] );
+extern void matmul(const size_t coreid, const size_t ncores, const size_t lda,  const data_t A[], const data_t B[], data_t C[] );
 
 
 //--------------------------------------------------------------------------
index de430e03394b9f985491d8d21b816c65c4823123..4c871d58c33dd62627a748ee7d2e3ce52feed38e 100644 (file)
 // See LICENSE for license details.
 
-#define R 1000
-#define C 1000
-#define NNZ 10004
-const double val[10004] = {
-  658,
-  279,
-  587,
-  255,
-  359,
-  844,
-  905,
-  456,
-  897,
-  837,
+#define R 500
+#define C 500
+#define NNZ 4998
+const double val[4998] = {
+  644,
+  344,
+  346,
+  101,
+  553,
+  823,
+  33,
+  274,
+  179,
+  575,
+  529,
+  820,
   652,
-  398,
-  885,
-  21,
-  669,
-  738,
-  365,
-  928,
-  713,
+  401,
+  887,
+  736,
+  660,
+  728,
+  65,
+  230,
+  664,
+  131,
+  819,
+  499,
+  450,
+  11,
+  958,
+  535,
+  468,
+  748,
+  539,
+  494,
+  469,
+  834,
+  733,
+  509,
+  86,
+  824,
   771,
-  536,
-  987,
-  917,
-  823,
-  544,
-  40,
-  80,
-  636,
-  263,
-  929,
-  757,
-  677,
-  151,
-  500,
-  875,
-  720,
-  205,
-  292,
-  859,
-  980,
-  97,
-  608,
-  813,
-  840,
-  397,
-  765,
-  294,
-  718,
-  751,
-  7,
-  482,
+  546,
+  662,
+  184,
+  541,
+  344,
+  329,
+  986,
+  910,
   166,
-  653,
+  784,
+  131,
+  120,
+  75,
+  346,
   172,
-  187,
-  79,
+  710,
+  601,
+  777,
+  51,
+  282,
+  395,
+  375,
+  379,
+  551,
+  843,
+  278,
+  259,
+  304,
+  988,
+  975,
+  125,
+  719,
+  193,
+  18,
+  245,
+  754,
+  585,
   228,
-  857,
-  540,
-  760,
-  509,
-  190,
-  396,
-  765,
-  37,
-  85,
-  866,
-  981,
-  999,
-  793,
-  921,
-  664,
-  208,
-  856,
-  528,
-  782,
-  318,
-  170,
-  521,
-  691,
-  726,
-  996,
-  947,
-  326,
-  825,
-  77,
-  823,
-  752,
-  266,
-  834,
-  196,
-  58,
-  430,
-  764,
-  807,
-  568,
-  665,
-  583,
-  178,
-  250,
-  273,
-  654,
-  487,
-  504,
-  729,
-  338,
-  866,
-  981,
   852,
-  842,
-  785,
-  13,
-  588,
-  44,
-  432,
-  408,
-  374,
-  761,
-  653,
-  752,
-  684,
-  6,
-  357,
-  703,
-  447,
-  966,
-  457,
-  738,
-  646,
-  646,
-  217,
-  522,
-  839,
-  417,
-  506,
-  801,
-  233,
-  929,
-  487,
+  840,
+  888,
+  711,
+  960,
+  674,
+  523,
+  339,
+  737,
+  796,
+  607,
+  394,
+  219,
+  370,
+  854,
   353,
-  660,
-  751,
-  738,
-  512,
-  566,
-  130,
-  61,
-  128,
-  698,
-  467,
-  362,
-  867,
-  639,
-  289,
-  371,
-  427,
-  650,
-  16,
-  878,
-  967,
-  369,
-  517,
-  161,
-  330,
-  294,
-  396,
-  606,
-  638,
-  171,
-  602,
-  531,
-  14,
-  968,
-  15,
-  193,
-  225,
-  863,
-  171,
-  254,
-  714,
-  256,
-  873,
-  353,
-  35,
-  910,
-  849,
-  658,
-  546,
-  389,
-  239,
-  355,
-  540,
-  494,
-  968,
-  319,
-  590,
-  608,
-  445,
-  806,
-  51,
-  117,
-  401,
-  314,
-  280,
-  334,
-  44,
-  17,
-  107,
-  108,
-  650,
-  807,
-  385,
-  748,
-  942,
-  719,
-  110,
-  630,
-  559,
+  195,
+  624,
+  951,
+  755,
+  64,
+  825,
+  145,
+  296,
+  456,
+  585,
+  884,
+  242,
+  484,
+  902,
+  884,
+  224,
+  689,
+  321,
+  578,
+  835,
+  891,
+  347,
+  273,
+  285,
+  415,
+  586,
+  402,
+  890,
+  414,
+  723,
   717,
-  375,
-  963,
-  45,
-  403,
-  476,
-  408,
-  732,
-  87,
+  383,
+  530,
+  993,
+  884,
+  887,
+  246,
+  219,
+  61,
+  845,
+  430,
+  636,
+  773,
+  371,
+  63,
+  596,
+  492,
+  976,
+  253,
+  92,
+  744,
+  465,
+  848,
+  967,
+  529,
+  646,
+  802,
+  363,
+  30,
+  789,
+  312,
+  191,
+  155,
+  220,
+  394,
+  527,
+  392,
+  207,
+  832,
+  930,
+  687,
   874,
-  635,
-  119,
-  190,
-  949,
-  777,
-  201,
-  503,
-  658,
-  777,
-  564,
-  830,
-  122,
-  929,
-  68,
-  11,
-  354,
-  395,
-  213,
-  766,
-  40,
+  306,
+  805,
+  233,
+  97,
+  348,
+  616,
+  309,
+  99,
+  341,
+  862,
+  6,
+  524,
   995,
-  577,
-  514,
-  568,
-  56,
-  439,
-  91,
-  148,
-  612,
-  717,
-  157,
-  538,
-  682,
-  190,
-  571,
-  847,
-  275,
-  190,
+  786,
+  696,
+  81,
+  517,
+  428,
+  663,
+  895,
+  469,
+  619,
+  620,
+  941,
+  351,
+  285,
+  229,
+  808,
+  18,
+  986,
   824,
-  985,
-  29,
-  426,
-  173,
-  898,
-  297,
-  156,
-  936,
-  1,
-  455,
-  812,
-  173,
-  131,
-  376,
-  947,
-  596,
-  783,
-  800,
-  361,
-  798,
-  598,
+  764,
+  481,
+  519,
+  524,
+  815,
+  910,
+  878,
+  436,
+  810,
+  597,
+  418,
+  64,
+  354,
+  17,
+  72,
+  465,
+  387,
+  445,
+  89,
+  721,
+  75,
+  921,
+  948,
+  725,
+  236,
   710,
-  86,
-  149,
-  457,
-  129,
-  437,
-  352,
-  933,
-  320,
-  709,
-  167,
-  793,
-  46,
-  49,
-  305,
-  704,
-  577,
-  855,
+  456,
+  993,
+  451,
   336,
-  978,
-  206,
-  662,
-  230,
-  93,
-  898,
-  368,
-  422,
-  689,
-  351,
-  87,
-  465,
-  576,
-  33,
-  884,
-  675,
-  548,
-  116,
-  730,
-  385,
-  483,
-  340,
-  809,
-  938,
-  342,
-  576,
-  887,
-  479,
-  455,
-  820,
-  521,
-  320,
-  488,
-  506,
-  591,
-  901,
-  505,
-  525,
-  5,
-  133,
-  705,
-  561,
-  285,
-  95,
-  918,
-  410,
-  578,
-  347,
-  375,
-  735,
-  624,
-  491,
-  494,
-  931,
-  655,
-  819,
-  883,
-  328,
-  527,
-  194,
-  580,
-  584,
-  837,
-  700,
-  681,
-  249,
-  643,
-  958,
-  363,
-  316,
-  397,
-  638,
-  261,
-  459,
-  960,
-  636,
-  458,
-  84,
-  797,
-  696,
-  782,
-  831,
-  419,
-  393,
-  649,
-  312,
-  811,
-  703,
+  223,
+  766,
+  86,
+  927,
   70,
-  688,
-  285,
-  39,
-  617,
-  935,
-  495,
-  392,
-  143,
-  734,
-  166,
-  406,
-  464,
-  732,
-  709,
-  379,
-  143,
-  527,
-  514,
-  709,
-  130,
-  965,
-  632,
-  448,
-  836,
-  62,
-  567,
-  600,
-  520,
-  519,
-  16,
-  394,
-  705,
-  438,
-  548,
-  696,
-  140,
+  402,
+  435,
+  314,
+  666,
+  420,
+  755,
+  145,
+  676,
+  122,
   573,
-  509,
-  968,
-  935,
-  165,
-  868,
-  577,
-  451,
-  865,
-  304,
-  777,
-  828,
-  147,
-  704,
-  821,
-  641,
-  783,
-  376,
-  757,
-  391,
-  170,
-  592,
-  235,
-  920,
-  846,
-  683,
-  249,
+  213,
+  309,
   697,
-  253,
-  386,
-  244,
-  889,
-  607,
-  768,
-  88,
-  836,
-  259,
-  945,
-  33,
-  352,
-  70,
-  83,
-  996,
-  791,
-  18,
-  599,
-  488,
-  43,
-  582,
-  993,
-  692,
-  841,
-  558,
-  530,
-  350,
-  187,
-  295,
-  215,
-  869,
-  593,
-  385,
-  722,
-  724,
-  282,
-  681,
-  534,
-  788,
-  836,
-  378,
-  825,
-  93,
-  539,
+  383,
+  430,
+  805,
+  192,
+  567,
+  192,
+  212,
+  81,
+  431,
+  467,
+  323,
+  62,
+  55,
+  30,
+  973,
+  532,
+  773,
+  960,
   120,
-  794,
-  384,
-  798,
-  505,
-  833,
-  27,
-  181,
-  951,
-  966,
-  498,
-  375,
-  22,
+  670,
+  207,
+  906,
+  560,
+  265,
+  897,
+  812,
+  434,
+  943,
+  818,
+  658,
+  773,
+  227,
+  409,
+  787,
+  676,
+  752,
+  717,
+  687,
+  841,
+  813,
   545,
-  62,
-  816,
-  119,
-  712,
-  813,
-  783,
-  655,
-  832,
-  143,
-  501,
-  519,
-  43,
-  760,
-  17,
-  896,
-  96,
-  390,
-  121,
-  458,
-  736,
-  649,
-  227,
-  778,
-  283,
-  657,
-  434,
-  214,
-  123,
-  929,
-  548,
-  206,
-  993,
-  463,
-  824,
-  369,
-  260,
-  868,
-  645,
-  857,
-  184,
-  198,
+  34,
+  851,
+  457,
+  838,
+  856,
+  392,
+  287,
+  99,
+  183,
+  86,
+  614,
+  616,
+  36,
+  852,
+  136,
+  632,
+  67,
   349,
-  652,
-  522,
-  23,
-  208,
-  968,
-  290,
-  770,
-  109,
-  978,
-  513,
-  298,
-  675,
-  306,
+  309,
+  117,
+  590,
+  884,
+  763,
+  69,
+  921,
+  323,
+  28,
+  714,
+  416,
+  661,
+  380,
+  783,
+  182,
+  580,
+  230,
+  678,
+  35,
+  68,
+  938,
+  886,
+  408,
+  327,
+  77,
+  514,
   866,
-  927,
+  66,
+  228,
+  981,
+  9,
+  932,
+  270,
+  617,
+  373,
   822,
-  495,
-  653,
-  134,
-  702,
-  147,
-  366,
-  947,
-  65,
-  586,
-  412,
-  638,
-  760,
-  541,
   118,
+  231,
+  812,
+  982,
+  242,
+  937,
+  889,
+  502,
+  483,
+  956,
+  196,
+  857,
+  697,
+  481,
+  346,
+  326,
+  394,
+  569,
+  697,
+  900,
+  718,
+  88,
+  82,
+  278,
+  930,
+  643,
+  964,
+  808,
+  991,
+  124,
+  521,
+  159,
+  119,
+  684,
+  311,
+  232,
+  356,
+  648,
+  501,
+  502,
+  405,
+  148,
+  407,
+  439,
+  389,
+  355,
+  713,
+  936,
+  57,
+  377,
+  428,
+  68,
+  678,
+  432,
+  23,
+  636,
+  149,
+  78,
+  885,
+  648,
+  741,
+  168,
   551,
-  574,
-  85,
-  736,
-  999,
-  917,
-  478,
-  35,
-  629,
+  627,
+  619,
+  287,
+  199,
+  533,
+  71,
+  297,
+  920,
+  667,
+  958,
   963,
-  898,
-  826,
-  113,
-  298,
-  606,
-  568,
-  152,
-  926,
-  277,
-  984,
-  549,
-  279,
-  839,
-  348,
-  672,
+  532,
+  1,
+  256,
+  378,
+  820,
+  287,
   278,
-  94,
-  455,
-  590,
-  843,
-  85,
-  222,
-  901,
-  621,
-  30,
-  880,
-  914,
-  27,
-  974,
+  785,
+  382,
+  321,
+  602,
+  756,
+  878,
+  752,
+  986,
+  267,
+  19,
+  550,
+  634,
+  594,
+  404,
+  791,
+  125,
+  189,
   399,
-  873,
-  968,
-  870,
-  479,
-  696,
-  964,
-  929,
-  499,
-  121,
-  812,
-  933,
-  799,
-  506,
-  412,
-  712,
-  791,
+  154,
+  736,
+  937,
+  734,
+  831,
+  163,
+  254,
+  391,
+  683,
+  525,
+  928,
+  455,
+  127,
+  91,
+  373,
+  722,
+  663,
+  532,
+  745,
+  601,
+  238,
+  812,
+  972,
+  256,
+  422,
+  195,
+  437,
+  339,
+  149,
+  881,
+  777,
+  68,
+  611,
+  633,
+  196,
+  500,
+  464,
+  119,
+  375,
+  540,
+  659,
+  463,
+  922,
+  646,
+  132,
+  620,
+  369,
+  117,
+  611,
+  817,
+  906,
+  725,
+  746,
+  807,
+  855,
+  561,
+  549,
+  4,
+  503,
+  944,
+  258,
+  460,
+  511,
+  378,
+  331,
+  247,
+  941,
+  180,
+  345,
+  671,
+  909,
+  766,
+  250,
+  268,
+  948,
+  766,
+  923,
+  309,
   426,
-  835,
-  488,
+  523,
+  144,
+  421,
+  765,
+  767,
+  224,
+  496,
+  680,
+  337,
+  494,
+  345,
+  402,
+  727,
+  114,
+  377,
+  27,
+  285,
+  703,
+  606,
+  921,
+  212,
+  613,
   910,
+  865,
+  258,
+  502,
+  382,
+  906,
+  353,
+  550,
+  219,
+  251,
+  751,
+  731,
+  820,
+  644,
   522,
-  332,
-  967,
   380,
-  61,
-  5,
-  282,
-  119,
-  22,
-  136,
-  436,
+  442,
+  257,
+  565,
+  14,
+  941,
+  123,
+  172,
+  722,
+  997,
+  121,
+  528,
+  826,
+  546,
+  797,
+  143,
+  698,
+  232,
+  529,
+  747,
+  355,
+  594,
+  663,
+  869,
+  970,
+  506,
+  472,
+  406,
+  544,
   730,
-  341,
-  687,
-  371,
-  19,
-  893,
-  20,
-  327,
-  221,
-  221,
-  966,
-  354,
-  198,
-  985,
-  56,
-  305,
-  691,
-  980,
-  12,
-  790,
-  64,
-  484,
-  621,
-  214,
-  332,
-  898,
-  898,
-  318,
-  416,
-  445,
+  460,
+  738,
+  475,
+  242,
+  768,
+  937,
+  489,
+  46,
+  470,
+  563,
+  276,
+  867,
+  470,
+  376,
+  113,
   350,
-  317,
-  336,
+  738,
+  953,
+  131,
   714,
-  788,
+  896,
+  454,
+  28,
+  84,
+  440,
+  37,
+  508,
+  964,
   541,
-  890,
-  42,
-  111,
-  596,
-  164,
-  424,
-  448,
-  666,
-  362,
-  429,
-  617,
-  910,
-  917,
-  970,
-  526,
-  321,
-  551,
-  481,
-  83,
-  46,
-  146,
-  569,
-  856,
-  85,
-  192,
-  724,
-  378,
-  299,
-  13,
-  422,
-  411,
-  552,
-  569,
-  100,
-  849,
-  484,
-  906,
-  47,
-  532,
-  742,
+  900,
+  914,
+  530,
+  289,
+  251,
+  559,
+  27,
+  240,
+  945,
+  530,
+  503,
+  791,
+  737,
+  958,
+  400,
+  765,
+  656,
+  887,
+  832,
+  423,
+  950,
+  19,
+  855,
+  522,
   415,
-  228,
-  897,
-  715,
-  807,
+  662,
+  672,
+  929,
+  581,
+  190,
+  703,
+  983,
+  540,
+  278,
+  226,
+  182,
+  441,
+  693,
+  617,
+  110,
+  728,
+  886,
+  499,
+  705,
+  953,
+  914,
+  222,
+  939,
+  365,
+  129,
+  507,
+  647,
+  291,
+  464,
+  588,
+  380,
+  73,
+  701,
+  186,
+  550,
+  513,
+  374,
+  583,
   329,
-  244,
-  312,
-  903,
-  758,
-  34,
-  172,
-  18,
-  917,
-  700,
-  108,
-  611,
-  567,
-  616,
-  572,
-  174,
-  925,
-  553,
-  903,
-  268,
-  544,
+  235,
+  431,
+  989,
+  41,
+  337,
+  369,
+  481,
+  996,
+  283,
+  632,
+  200,
+  697,
+  638,
+  93,
+  284,
+  858,
+  323,
+  627,
+  82,
+  685,
+  538,
+  389,
+  356,
+  881,
+  90,
+  940,
+  974,
+  907,
+  854,
   998,
-  708,
-  133,
-  717,
-  584,
-  517,
-  608,
-  680,
-  597,
-  316,
-  470,
-  764,
-  530,
-  221,
-  405,
-  133,
+  135,
+  103,
+  85,
+  961,
   406,
-  506,
-  56,
-  458,
-  721,
-  935,
-  356,
-  130,
+  916,
+  205,
+  208,
+  46,
+  912,
+  909,
+  476,
+  992,
+  131,
+  846,
+  620,
+  571,
+  408,
+  462,
+  863,
   99,
-  395,
-  117,
-  34,
-  881,
-  231,
-  214,
-  248,
-  458,
-  246,
-  632,
-  471,
-  279,
-  385,
-  594,
-  855,
-  305,
+  462,
+  33,
+  614,
+  107,
+  909,
+  59,
+  487,
+  888,
+  563,
   30,
-  542,
-  144,
-  509,
-  548,
-  364,
-  171,
-  386,
+  132,
+  195,
   382,
-  616,
-  997,
-  28,
-  361,
-  855,
-  449,
-  992,
-  956,
-  439,
-  569,
-  383,
-  523,
-  852,
-  337,
-  112,
-  24,
-  902,
-  352,
-  542,
-  231,
-  664,
-  411,
-  457,
-  572,
-  52,
-  760,
-  88,
-  907,
-  345,
-  284,
-  636,
-  219,
-  975,
-  713,
-  231,
-  888,
-  49,
-  624,
-  179,
-  579,
-  401,
-  694,
-  984,
-  905,
-  673,
-  414,
-  773,
-  165,
   349,
-  436,
-  128,
-  186,
-  487,
-  17,
-  552,
-  833,
-  98,
+  233,
+  90,
+  556,
+  443,
+  452,
+  821,
+  686,
+  891,
   424,
-  791,
-  220,
-  352,
-  75,
-  470,
-  405,
-  679,
-  939,
-  792,
-  653,
-  142,
-  226,
-  208,
-  629,
-  429,
-  55,
-  455,
-  362,
-  210,
-  765,
+  264,
+  595,
   693,
-  113,
-  656,
-  824,
-  441,
-  191,
-  50,
-  957,
-  99,
-  27,
-  582,
-  461,
-  279,
-  299,
-  492,
-  678,
-  452,
-  640,
-  349,
-  758,
-  298,
-  903,
-  361,
-  333,
-  339,
-  60,
-  824,
-  773,
-  184,
-  621,
-  66,
-  49,
-  228,
-  608,
-  523,
-  591,
-  533,
-  234,
-  566,
-  291,
-  646,
-  93,
-  42,
-  810,
-  154,
-  846,
-  426,
-  32,
-  828,
-  360,
-  917,
-  182,
-  50,
-  40,
-  182,
+  314,
+  938,
+  392,
+  105,
+  668,
+  896,
+  278,
+  59,
+  935,
+  598,
+  796,
+  323,
+  755,
+  707,
   19,
-  127,
-  614,
-  951,
-  662,
-  591,
-  140,
-  110,
+  415,
+  34,
+  72,
+  217,
+  912,
+  27,
+  510,
+  716,
+  598,
+  147,
+  809,
+  0,
+  897,
+  13,
+  684,
+  132,
+  269,
+  458,
+  594,
+  471,
+  768,
+  948,
+  70,
+  288,
+  468,
+  796,
+  128,
+  939,
+  516,
+  883,
   685,
-  549,
-  6,
-  346,
-  766,
-  689,
-  743,
-  414,
-  135,
-  61,
+  175,
+  300,
+  974,
+  777,
+  172,
+  865,
+  602,
+  476,
+  82,
+  170,
+  519,
+  438,
+  820,
+  426,
+  274,
+  120,
+  412,
+  203,
+  770,
+  953,
+  864,
+  881,
+  891,
+  793,
+  602,
+  48,
+  433,
+  774,
+  133,
+  914,
   548,
-  363,
-  915,
-  462,
-  526,
-  405,
-  524,
+  696,
+  419,
+  841,
+  154,
+  331,
+  75,
+  774,
+  307,
+  689,
+  360,
+  235,
+  822,
+  545,
+  77,
+  571,
   192,
-  754,
+  712,
+  877,
+  732,
+  92,
+  842,
+  607,
+  150,
+  494,
+  565,
+  70,
+  107,
+  794,
+  459,
+  310,
+  115,
+  34,
+  938,
+  722,
+  498,
+  748,
+  297,
+  995,
+  592,
+  369,
+  625,
+  803,
+  270,
+  250,
+  941,
+  984,
+  472,
+  662,
+  824,
+  667,
+  195,
+  518,
+  122,
+  648,
   796,
-  616,
+  961,
+  590,
+  585,
   98,
-  341,
-  786,
-  778,
-  929,
-  6,
-  388,
-  293,
-  513,
-  148,
-  298,
-  311,
-  29,
-  456,
-  960,
+  931,
+  819,
+  755,
+  25,
   560,
-  895,
-  121,
-  511,
-  141,
-  732,
-  762,
-  774,
-  261,
-  287,
-  314,
-  801,
-  320,
-  173,
-  616,
-  356,
-  783,
-  256,
-  129,
-  513,
-  212,
-  293,
-  168,
-  813,
-  279,
-  65,
-  784,
-  360,
-  921,
-  320,
-  177,
-  923,
-  385,
-  142,
-  380,
-  772,
-  929,
-  718,
-  277,
-  61,
-  620,
-  575,
-  772,
-  356,
-  414,
-  775,
-  392,
-  523,
-  760,
-  192,
-  905,
-  606,
-  134,
-  695,
-  784,
-  540,
-  63,
-  939,
-  941,
-  887,
-  217,
-  290,
-  893,
-  206,
-  662,
-  63,
-  102,
-  74,
-  943,
-  288,
-  8,
-  254,
-  131,
-  420,
-  841,
-  79,
-  139,
-  362,
-  221,
-  915,
-  6,
-  28,
-  417,
-  846,
-  996,
-  794,
-  522,
+  693,
+  361,
+  964,
   391,
-  513,
-  715,
+  279,
+  23,
+  198,
+  473,
+  792,
   87,
-  449,
-  801,
-  823,
-  16,
-  485,
-  874,
-  8,
-  601,
-  885,
-  146,
-  886,
-  318,
-  235,
-  390,
-  561,
-  869,
-  640,
-  860,
-  433,
-  651,
-  145,
   149,
-  682,
-  612,
-  580,
-  946,
-  572,
-  155,
-  736,
-  898,
-  774,
-  81,
-  882,
-  286,
-  362,
-  982,
-  788,
-  658,
-  452,
-  889,
-  688,
-  384,
-  948,
-  342,
-  402,
-  777,
-  403,
-  547,
-  123,
-  187,
-  394,
-  470,
-  978,
-  234,
-  461,
-  127,
-  349,
-  476,
-  927,
-  837,
-  997,
-  494,
-  167,
-  920,
-  911,
-  84,
-  432,
-  339,
-  87,
-  841,
-  535,
-  972,
+  969,
   671,
-  395,
-  445,
-  681,
-  494,
-  737,
-  492,
-  96,
-  84,
-  261,
-  871,
-  91,
-  696,
-  960,
-  346,
-  430,
-  796,
-  326,
-  272,
-  982,
-  25,
+  367,
+  140,
+  421,
+  260,
+  652,
+  44,
+  419,
+  564,
+  72,
+  710,
+  671,
+  880,
+  350,
+  399,
+  984,
+  851,
+  790,
+  80,
+  763,
+  350,
+  420,
+  657,
+  374,
+  354,
+  523,
+  994,
   927,
-  923,
-  528,
+  738,
+  263,
+  462,
+  693,
+  442,
+  280,
   924,
-  215,
-  789,
-  691,
-  898,
-  811,
-  189,
-  284,
-  856,
-  200,
-  278,
-  436,
+  700,
+  7,
+  971,
+  147,
+  254,
+  597,
+  698,
+  905,
+  541,
+  279,
+  83,
+  552,
+  469,
+  518,
+  582,
+  662,
+  78,
+  433,
+  903,
+  471,
+  767,
+  166,
+  356,
+  593,
+  502,
   354,
-  114,
-  978,
-  648,
-  797,
-  437,
-  916,
-  220,
-  449,
-  740,
-  179,
-  484,
-  470,
-  332,
-  178,
-  65,
-  807,
-  860,
+  481,
+  124,
+  660,
+  170,
+  871,
+  804,
+  37,
+  487,
+  355,
+  732,
+  109,
+  848,
+  106,
+  593,
+  430,
+  622,
+  946,
+  296,
+  270,
+  385,
   180,
-  421,
-  148,
-  563,
-  253,
-  691,
-  121,
-  837,
-  851,
-  341,
-  948,
-  563,
-  635,
-  780,
-  148,
-  567,
-  713,
-  118,
-  877,
-  505,
-  519,
-  975,
-  504,
-  745,
-  190,
-  958,
-  134,
-  898,
-  723,
-  546,
-  781,
-  46,
-  760,
-  530,
-  572,
-  163,
-  227,
-  886,
-  408,
-  586,
-  4,
-  901,
-  233,
-  753,
-  720,
-  203,
-  575,
-  748,
-  443,
-  207,
-  838,
-  492,
-  290,
-  223,
-  256,
-  715,
-  830,
-  432,
-  97,
-  99,
-  477,
-  725,
-  574,
-  91,
-  746,
-  731,
-  615,
-  629,
-  437,
-  320,
-  843,
-  559,
-  13,
-  902,
-  779,
-  564,
-  689,
-  207,
-  599,
-  726,
-  598,
-  606,
-  148,
-  58,
-  115,
-  536,
-  319,
-  279,
-  944,
-  485,
-  699,
-  948,
-  13,
-  895,
-  766,
-  582,
-  559,
-  998,
-  250,
-  788,
-  869,
-  877,
-  23,
-  647,
-  488,
-  164,
-  845,
-  344,
-  545,
-  307,
-  991,
-  0,
-  805,
-  152,
-  412,
-  534,
-  323,
-  614,
-  415,
-  865,
-  847,
-  210,
-  743,
+  309,
+  981,
   122,
-  943,
-  594,
-  320,
-  268,
-  154,
-  253,
-  816,
-  347,
-  768,
-  953,
-  982,
-  606,
-  131,
-  813,
-  92,
-  339,
-  5,
-  707,
-  517,
-  526,
+  54,
+  193,
   469,
-  537,
-  89,
   141,
-  537,
-  557,
-  190,
-  659,
-  87,
-  659,
-  401,
-  367,
-  414,
-  460,
+  453,
+  223,
   34,
-  96,
-  895,
-  740,
+  246,
+  479,
+  587,
+  577,
+  684,
   694,
-  352,
-  537,
-  592,
-  877,
-  137,
-  922,
-  915,
-  99,
-  216,
+  751,
+  508,
+  790,
+  369,
+  924,
+  371,
+  961,
+  852,
+  961,
+  999,
+  819,
+  64,
+  707,
+  879,
+  743,
+  94,
   969,
-  716,
-  44,
-  869,
-  856,
-  853,
-  352,
-  556,
-  216,
+  838,
+  365,
+  100,
+  603,
+  788,
+  597,
   426,
-  231,
-  259,
-  172,
-  67,
-  694,
-  488,
-  311,
-  712,
-  767,
-  279,
-  962,
-  265,
-  615,
-  141,
-  454,
-  711,
-  384,
-  452,
-  135,
-  90,
-  391,
-  787,
-  665,
-  528,
-  296,
-  824,
-  820,
-  455,
-  885,
-  301,
-  155,
-  647,
-  6,
-  973,
-  627,
-  663,
-  922,
-  969,
-  799,
-  698,
-  523,
-  404,
-  784,
-  422,
-  128,
-  103,
-  233,
-  601,
-  812,
-  281,
-  600,
-  336,
-  11,
-  743,
-  288,
-  925,
-  181,
-  228,
-  508,
-  308,
-  3,
+  207,
+  936,
+  968,
+  390,
+  831,
+  423,
+  428,
+  771,
+  498,
+  838,
+  18,
+  944,
+  789,
+  124,
+  917,
+  645,
+  878,
+  963,
+  896,
+  825,
   141,
-  711,
-  602,
-  71,
-  868,
-  255,
-  307,
-  24,
-  862,
+  989,
+  341,
   567,
-  134,
-  74,
-  755,
-  947,
-  111,
+  400,
+  194,
+  902,
+  94,
+  177,
+  527,
+  498,
+  175,
+  470,
+  651,
+  870,
+  482,
+  892,
+  884,
+  564,
+  601,
+  905,
+  151,
+  605,
+  910,
+  573,
+  164,
+  863,
+  64,
+  292,
+  799,
+  547,
+  648,
+  979,
+  738,
+  85,
+  155,
+  596,
+  744,
+  993,
+  232,
+  55,
+  20,
+  751,
+  473,
+  463,
+  768,
+  802,
+  334,
+  343,
+  923,
+  194,
   812,
+  439,
+  482,
+  100,
+  629,
+  271,
+  430,
+  451,
+  946,
+  206,
+  254,
+  174,
+  307,
+  119,
+  611,
+  462,
+  126,
+  433,
+  377,
+  57,
+  974,
   42,
-  295,
-  650,
-  859,
   78,
-  128,
-  462,
-  308,
-  290,
-  372,
-  166,
-  111,
-  364,
-  469,
-  591,
-  127,
-  56,
-  840,
-  758,
-  781,
-  756,
-  548,
-  658,
-  412,
+  808,
+  659,
+  471,
+  275,
+  305,
+  423,
+  954,
+  47,
+  914,
+  361,
+  905,
+  947,
+  579,
+  874,
+  671,
+  120,
+  206,
+  717,
+  57,
+  381,
+  438,
+  708,
+  983,
+  284,
+  217,
+  453,
+  396,
+  852,
+  20,
+  827,
+  260,
+  705,
+  321,
+  553,
+  690,
+  695,
+  327,
+  193,
   851,
-  134,
+  958,
+  247,
+  587,
+  634,
+  895,
+  566,
+  977,
+  513,
+  397,
+  764,
+  879,
+  609,
+  359,
+  359,
+  824,
+  262,
+  826,
+  653,
+  739,
   233,
-  432,
-  257,
-  138,
-  210,
-  184,
-  986,
-  51,
-  806,
-  442,
-  711,
-  243,
-  571,
+  11,
+  508,
   861,
-  550,
-  111,
-  798,
-  138,
-  316,
-  746,
-  549,
-  276,
-  458,
-  866,
-  335,
-  334,
-  178,
-  191,
-  473,
-  452,
-  764,
-  487,
-  525,
-  273,
-  457,
-  902,
+  619,
+  97,
+  880,
   888,
-  519,
-  203,
-  891,
-  497,
-  998,
-  535,
-  382,
-  673,
+  627,
+  481,
+  48,
+  424,
+  197,
+  347,
+  309,
+  950,
+  928,
+  122,
+  889,
+  102,
+  169,
+  657,
+  15,
+  139,
+  9,
+  25,
+  101,
   787,
-  112,
-  846,
-  836,
-  898,
-  681,
-  607,
-  546,
-  863,
-  639,
-  896,
-  281,
-  845,
-  305,
-  410,
-  835,
-  985,
-  245,
-  781,
-  208,
-  337,
-  248,
-  205,
-  264,
-  198,
-  305,
+  472,
+  847,
+  403,
+  333,
+  684,
+  506,
+  519,
+  950,
+  522,
+  330,
+  558,
+  842,
+  632,
+  60,
+  424,
+  792,
+  892,
+  970,
+  937,
+  735,
+  957,
+  143,
+  224,
+  332,
+  204,
+  576,
+  182,
+  974,
+  902,
+  486,
+  540,
+  536,
   665,
-  351,
-  609,
-  186,
-  444,
-  589,
-  130,
-  292,
-  668,
-  617,
-  611,
-  111,
-  80,
+  712,
   9,
-  267,
-  275,
-  135,
-  201,
-  926,
-  789,
-  835,
-  221,
-  290,
-  297,
-  93,
-  437,
-  892,
-  921,
-  994,
-  748,
-  321,
-  23,
-  394,
-  725,
-  377,
-  581,
-  57,
-  219,
-  461,
-  54,
-  183,
-  506,
-  889,
-  920,
-  714,
-  639,
-  836,
-  585,
-  787,
-  929,
-  597,
-  307,
-  678,
-  35,
-  296,
-  46,
-  459,
-  368,
-  342,
-  200,
+  613,
+  672,
+  430,
+  175,
+  571,
+  317,
+  280,
   609,
-  265,
-  11,
-  315,
-  10,
-  29,
-  32,
-  339,
-  250,
+  917,
+  90,
+  901,
+  427,
+  964,
+  636,
+  927,
   974,
-  736,
-  834,
-  281,
-  332,
-  656,
-  530,
-  384,
-  96,
-  544,
-  775,
-  208,
-  375,
-  230,
-  31,
-  589,
-  385,
-  130,
-  718,
-  82,
-  909,
-  267,
-  482,
-  503,
-  875,
-  824,
-  488,
-  837,
-  757,
-  19,
-  121,
-  129,
-  531,
-  712,
-  76,
-  183,
-  137,
-  764,
-  617,
-  846,
-  64,
-  65,
-  775,
-  593,
-  526,
-  53,
-  923,
-  142,
+  376,
+  213,
+  699,
+  263,
+  457,
+  45,
+  118,
+  858,
+  450,
+  811,
+  555,
+  104,
+  525,
+  237,
+  290,
   330,
-  153,
-  199,
-  71,
-  584,
-  423,
-  770,
-  318,
-  965,
-  493,
-  953,
-  238,
-  416,
-  471,
-  978,
-  436,
-  501,
-  505,
-  264,
-  789,
-  199,
-  241,
-  800,
-  168,
-  34,
-  291,
-  399,
-  972,
-  890,
-  462,
-  670,
-  628,
-  19,
-  204,
-  99,
-  751,
-  742,
-  231,
-  397,
-  5,
-  204,
-  886,
-  763,
-  706,
-  218,
-  775,
-  730,
-  231,
-  425,
-  118,
-  778,
-  886,
-  537,
-  364,
-  691,
-  19,
-  114,
-  195,
-  665,
-  675,
+  225,
+  162,
+  498,
+  305,
+  567,
+  64,
   359,
-  653,
-  185,
-  76,
-  351,
-  221,
-  695,
-  147,
-  1,
-  109,
-  790,
-  749,
-  299,
-  358,
-  11,
-  581,
-  511,
-  614,
-  950,
-  916,
-  923,
-  764,
-  245,
-  487,
-  508,
-  471,
-  71,
-  482,
-  614,
-  660,
-  834,
-  875,
-  433,
-  470,
-  650,
-  753,
-  828,
-  360,
-  551,
-  946,
-  215,
-  358,
-  689,
-  468,
-  280,
-  98,
-  363,
-  451,
-  20,
-  842,
-  913,
-  105,
-  575,
-  798,
-  199,
-  612,
-  778,
-  959,
-  295,
-  322,
-  760,
-  963,
-  854,
-  191,
-  629,
-  165,
-  420,
-  127,
-  515,
-  858,
-  783,
-  487,
-  499,
-  534,
-  451,
-  373,
-  116,
-  973,
-  576,
-  184,
-  587,
-  765,
-  975,
-  945,
-  960,
-  801,
-  802,
-  793,
-  32,
-  608,
-  312,
-  533,
-  916,
-  92,
-  625,
-  661,
-  374,
-  967,
-  332,
-  554,
-  259,
-  838,
-  475,
-  765,
-  833,
-  74,
-  39,
-  780,
-  446,
-  132,
-  270,
+  444,
+  445,
+  112,
   583,
-  378,
-  677,
-  805,
-  921,
-  723,
-  624,
-  67,
-  434,
+  933,
+  817,
+  2,
+  510,
+  912,
+  760,
+  125,
+  313,
+  233,
+  455,
+  479,
+  271,
+  513,
+  645,
+  286,
+  452,
+  877,
+  972,
+  489,
+  55,
+  43,
+  188,
+  998,
+  739,
+  929,
+  520,
+  504,
   875,
-  847,
-  149,
-  881,
-  104,
-  729,
-  327,
-  239,
-  791,
-  22,
-  717,
-  647,
-  118,
-  353,
-  791,
-  129,
-  253,
-  60,
-  938,
-  533,
-  408,
-  994,
-  849,
-  789,
+  388,
+  196,
   764,
-  797,
-  687,
-  892,
-  203,
-  880,
-  903,
-  946,
-  294,
-  830,
-  698,
-  297,
-  478,
-  305,
-  452,
-  258,
+  238,
+  730,
+  907,
+  872,
+  667,
+  468,
+  896,
+  273,
   30,
+  860,
+  978,
+  24,
   799,
-  756,
-  793,
-  937,
-  775,
-  14,
-  383,
-  276,
-  481,
-  215,
-  317,
-  879,
-  52,
-  628,
-  654,
-  429,
-  753,
-  848,
-  606,
-  629,
-  748,
-  832,
+  367,
+  435,
+  737,
+  788,
+  846,
+  697,
   335,
-  733,
-  90,
-  396,
-  690,
-  482,
-  54,
-  12,
-  306,
-  535,
-  750,
-  116,
-  524,
-  383,
-  475,
-  214,
-  178,
-  784,
-  798,
-  563,
-  935,
-  806,
-  949,
+  261,
+  799,
+  603,
+  887,
+  437,
+  931,
+  200,
+  991,
+  872,
+  796,
+  872,
+  259,
+  888,
+  581,
+  174,
+  60,
+  626,
+  846,
   53,
-  694,
-  273,
-  124,
-  284,
-  619,
-  45,
-  521,
-  715,
-  851,
-  132,
-  424,
-  438,
-  319,
-  538,
-  981,
-  802,
-  986,
-  340,
-  600,
-  353,
-  980,
-  637,
-  505,
-  17,
-  280,
-  855,
+  309,
+  261,
+  26,
+  648,
+  468,
+  962,
+  198,
+  358,
+  320,
+  823,
+  769,
+  522,
   237,
-  432,
-  184,
-  955,
-  538,
-  935,
-  480,
-  421,
-  580,
-  423,
-  928,
-  926,
-  930,
-  732,
-  210,
-  351,
-  346,
-  469,
-  100,
-  288,
-  353,
-  788,
-  232,
-  130,
+  990,
+  651,
+  121,
+  778,
+  635,
+  571,
+  700,
+  339,
+  946,
+  649,
+  741,
+  48,
+  311,
+  468,
+  958,
+  65,
   79,
+  64,
+  492,
+  884,
+  403,
   360,
-  870,
-  439,
-  47,
-  661,
-  595,
-  636,
-  52,
-  389,
-  986,
-  159,
-  454,
-  317,
+  523,
+  821,
+  717,
+  597,
+  324,
+  400,
+  594,
+  64,
+  521,
+  54,
+  520,
+  434,
+  474,
+  434,
+  729,
+  477,
+  167,
+  511,
+  174,
+  325,
+  621,
+  696,
+  999,
+  769,
+  430,
+  419,
+  102,
+  89,
+  833,
+  283,
+  619,
+  859,
+  96,
+  912,
+  530,
+  245,
+  976,
+  701,
   961,
+  977,
+  796,
+  230,
+  437,
+  640,
+  770,
+  644,
+  141,
+  308,
+  863,
+  335,
+  974,
+  743,
+  334,
+  127,
+  349,
+  385,
   915,
-  76,
-  342,
-  895,
-  53,
-  396,
-  15,
-  66,
-  139,
-  310,
-  636,
-  549,
-  440,
-  926,
+  286,
+  3,
+  906,
+  326,
+  117,
+  802,
+  501,
+  683,
+  274,
+  158,
   132,
-  734,
-  726,
-  696,
+  199,
+  691,
+  991,
+  174,
+  573,
+  610,
+  307,
+  434,
+  30,
   332,
-  229,
-  896,
-  486,
-  316,
-  840,
-  403,
-  557,
-  963,
-  67,
-  401,
-  318,
-  13,
-  109,
-  745,
+  664,
+  774,
+  118,
+  719,
+  663,
+  969,
+  179,
   296,
-  653,
-  711,
-  718,
-  2,
-  951,
-  853,
-  130,
-  22,
-  879,
-  878,
-  759,
-  466,
-  520,
-  25,
-  403,
-  952,
-  914,
-  29,
-  133,
-  156,
-  467,
-  435,
-  896,
-  78,
-  488,
-  55,
-  739,
-  861,
-  521,
-  904,
-  498,
-  748,
-  703,
-  489,
-  21,
-  377,
-  322,
-  248,
-  818,
-  176,
-  531,
-  564,
-  1,
-  694,
-  362,
-  876,
-  165,
-  881,
-  325,
-  475,
-  810,
-  181,
-  30,
-  455,
+  396,
+  209,
+  993,
+  479,
+  722,
+  113,
+  985,
+  855,
+  123,
+  555,
+  352,
+  190,
+  613,
+  614,
+  155,
+  709,
+  745,
+  668,
+  48,
+  820,
+  685,
+  43,
+  656,
+  62,
+  256,
+  854,
+  969,
+  476,
+  533,
   255,
-  673,
-  320,
-  600,
-  602,
-  568,
-  974,
-  350,
-  826,
-  212,
-  504,
-  91,
-  21,
-  317,
-  275,
-  775,
-  422,
-  278,
-  795,
-  826,
-  818,
-  377,
-  295,
+  472,
+  592,
+  865,
+  547,
+  12,
+  840,
+  919,
+  913,
+  685,
+  45,
+  339,
+  745,
+  658,
+  112,
+  628,
+  750,
+  890,
+  680,
+  618,
+  655,
+  155,
+  346,
+  142,
+  815,
+  447,
   165,
-  496,
-  753,
-  425,
-  554,
-  243,
-  964,
-  169,
-  281,
-  109,
-  884,
+  33,
+  727,
+  988,
+  408,
+  565,
+  661,
+  538,
+  899,
+  687,
+  940,
+  87,
+  287,
+  390,
+  399,
+  942,
+  499,
   334,
-  692,
-  641,
-  411,
-  352,
-  66,
-  765,
-  196,
-  508,
-  696,
-  866,
-  369,
-  725,
-  838,
-  82,
-  62,
-  300,
-  637,
-  29,
-  108,
-  859,
+  939,
+  143,
+  756,
+  661,
+  976,
+  168,
+  159,
+  919,
+  899,
+  8,
+  574,
+  884,
+  707,
+  124,
+  598,
   222,
-  768,
-  442,
-  891,
-  38,
-  523,
-  158,
-  856,
-  949,
-  852,
-  145,
-  630,
-  686,
-  109,
-  577,
+  726,
+  899,
+  897,
+  481,
+  520,
+  92,
+  796,
   371,
-  673,
-  807,
-  224,
-  169,
-  148,
-  890,
-  329,
-  653,
-  720,
-  898,
-  771,
-  65,
-  712,
-  735,
-  606,
-  578,
-  836,
-  17,
-  498,
-  31,
-  275,
-  54,
-  494,
-  831,
-  255,
-  266,
-  574,
-  693,
-  418,
-  226,
-  351,
-  867,
+  464,
   287,
-  717,
-  708,
-  104,
-  131,
-  863,
-  474,
-  600,
-  323,
-  235,
-  80,
-  710,
-  719,
-  924,
-  168,
-  168,
-  979,
-  24,
-  755,
-  935,
-  78,
-  386,
-  41,
-  546,
-  155,
-  306,
-  366,
-  814,
-  445,
-  883,
-  504,
-  332,
-  920,
-  265,
-  484,
-  591,
-  98,
-  981,
-  576,
-  392,
-  905,
-  927,
-  715,
-  264,
-  598,
-  847,
-  753,
-  329,
-  350,
-  983,
-  179,
-  993,
-  810,
-  809,
-  155,
-  508,
-  564,
-  896,
-  733,
-  734,
-  714,
-  637,
-  560,
-  186,
-  751,
-  601,
+  679,
   636,
-  361,
-  916,
-  10,
-  542,
-  258,
-  286,
-  756,
-  471,
-  858,
-  97,
-  373,
-  699,
-  1,
-  707,
-  260,
-  900,
-  145,
-  979,
-  143,
-  487,
-  427,
-  863,
-  472,
-  638,
-  672,
-  309,
-  980,
+  766,
+  961,
+  116,
+  895,
+  404,
+  353,
+  918,
+  813,
+  513,
+  447,
+  968,
+  3,
+  164,
+  396,
+  310,
+  426,
+  803,
+  469,
+  660,
   332,
+  7,
+  873,
+  562,
+  270,
+  252,
+  210,
   480,
-  26,
-  184,
-  40,
-  723,
-  102,
-  856,
-  785,
-  298,
-  816,
-  525,
-  160,
-  897,
-  421,
-  697,
-  122,
-  571,
-  372,
+  489,
+  554,
+  992,
+  940,
+  459,
+  347,
+  1,
+  949,
+  546,
+  642,
+  797,
+  746,
+  761,
+  220,
+  821,
+  268,
+  107,
+  302,
+  483,
+  429,
+  515,
   138,
-  892,
-  370,
-  805,
-  754,
-  113,
-  993,
-  448,
-  471,
-  423,
-  96,
-  331,
-  419,
-  144,
-  172,
-  987,
-  170,
-  788,
-  400,
-  346,
-  139,
-  676,
-  380,
-  257,
-  350,
-  89,
-  592,
-  501,
+  973,
+  220,
+  694,
+  231,
+  75,
+  367,
+  161,
+  595,
+  40,
+  3,
+  772,
+  656,
+  46,
+  898,
   664,
-  19,
-  957,
-  462,
-  302,
-  430,
-  880,
-  869,
-  99,
-  70,
-  356,
-  931,
-  751,
-  43,
-  531,
-  790,
-  559,
-  455,
-  64,
-  846,
-  139,
-  685,
-  876,
-  166,
-  361,
-  28,
-  876,
-  223,
-  147,
-  928,
-  619,
-  734,
-  870,
-  738,
-  393,
-  293,
-  722,
-  301,
-  936,
-  566,
-  57,
-  881,
-  398,
+  689,
+  74,
+  273,
+  612,
+  376,
+  662,
+  717,
+  467,
+  909,
+  85,
+  474,
+  922,
   796,
-  134,
-  566,
-  932,
-  756,
-  860,
-  638,
-  546,
-  33,
-  144,
-  29,
-  628,
-  254,
-  764,
-  604,
-  357,
-  987,
+  257,
+  816,
+  413,
+  20,
+  736,
+  730,
+  857,
+  848,
+  293,
+  44,
+  652,
+  803,
+  915,
+  48,
+  569,
+  869,
+  661,
+  949,
+  79,
+  692,
   552,
-  400,
-  663,
+  717,
+  337,
+  473,
   874,
-  727,
-  586,
-  988,
-  684,
-  867,
-  343,
-  733,
-  349,
-  534,
-  976,
-  708,
-  998,
-  871,
-  564,
-  271,
-  105,
-  397,
-  40,
-  884,
-  62,
-  43,
-  361,
-  451,
-  188,
-  520,
-  953,
-  709,
-  796,
-  522,
-  365,
-  263,
-  807,
-  14,
-  439,
-  395,
-  800,
-  614,
-  831,
-  675,
-  532,
-  95,
-  332,
-  538,
-  318,
-  526,
-  1,
+  490,
+  864,
+  33,
+  51,
+  892,
+  333,
+  36,
+  305,
+  697,
+  411,
+  317,
+  243,
   689,
-  111,
-  487,
-  370,
-  203,
-  211,
-  642,
-  549,
-  158,
-  206,
-  298,
-  846,
-  87,
-  717,
-  363,
-  83,
-  200,
-  769,
-  504,
-  670,
-  536,
-  349,
-  294,
-  441,
-  239,
-  721,
-  400,
-  355,
-  212,
-  120,
-  623,
-  664,
-  94,
-  116,
-  126,
-  904,
+  128,
+  287,
   947,
-  938,
-  152,
-  542,
+  13,
+  709,
+  768,
+  630,
+  916,
+  963,
+  68,
   464,
-  735,
-  926,
-  112,
-  590,
-  1,
-  209,
-  102,
-  237,
-  258,
-  552,
-  427,
-  808,
-  319,
-  631,
-  769,
-  884,
+  329,
+  381,
+  849,
+  568,
+  397,
+  124,
+  434,
+  859,
+  820,
+  845,
+  715,
+  716,
+  311,
+  431,
   24,
-  132,
-  697,
-  878,
-  344,
-  335,
-  391,
-  384,
-  27,
-  533,
-  900,
-  96,
-  279,
-  121,
-  998,
-  558,
+  929,
+  597,
+  529,
+  818,
+  81,
+  790,
+  784,
+  559,
+  353,
+  678,
+  118,
+  869,
+  941,
+  99,
+  606,
+  435,
+  76,
   987,
-  848,
-  426,
-  191,
-  925,
-  623,
-  850,
-  163,
-  184,
-  819,
-  881,
-  279,
-  850,
-  517,
-  178,
+  652,
+  539,
+  749,
+  460,
+  946,
+  344,
+  6,
+  577,
+  444,
+  696,
+  75,
+  214,
+  157,
+  598,
+  467,
+  633,
+  283,
+  911,
+  78,
+  325,
+  725,
+  766,
+  546,
+  868,
+  85,
+  294,
+  581,
+  712,
+  752,
+  44,
+  165,
+  510,
+  985,
   727,
-  603,
-  152,
-  657,
-  412,
-  17,
-  120,
-  241,
-  718,
-  785,
-  921,
-  237,
-  982,
-  936,
-  745,
-  810,
-  507,
-  207,
-  267,
-  17,
-  967,
-  133,
-  73,
-  627,
-  20,
-  158,
-  69,
-  829,
-  769,
-  457,
-  436,
-  986,
-  723,
-  248,
-  784,
-  704,
-  146,
-  408,
-  0,
-  170,
-  209,
-  720,
-  958,
+  323,
+  471,
+  870,
   149,
-  321,
-  919,
-  924,
-  223,
-  35,
-  326,
-  196,
-  513,
-  992,
-  884,
-  467,
-  877,
-  695,
-  432,
-  281,
-  722,
-  633,
-  209,
-  616,
-  140,
-  93,
-  274,
-  31,
-  401,
-  971,
-  177,
-  946,
-  782,
-  271,
-  934,
-  159,
-  416,
-  861,
-  9,
-  607,
-  415,
-  747,
-  444,
-  487,
-  701,
-  191,
-  88,
-  850,
-  580,
-  93,
-  59,
-  309,
-  477,
-  613,
-  974,
-  126,
-  348,
-  256,
-  573,
-  578,
-  865,
-  805,
-  280,
-  90,
-  858,
-  924,
-  455,
-  681,
+  238,
+  533,
+  411,
   307,
-  581,
-  714,
-  156,
-  224,
-  534,
-  198,
-  63,
-  489,
-  144,
-  123,
-  288,
-  500,
-  221,
-  618,
-  674,
-  233,
-  440,
-  788,
-  569,
-  70,
-  472,
-  166,
-  12,
-  979,
-  722,
-  929,
-  108,
-  736,
-  666,
-  525,
-  631,
-  554,
-  287,
-  742,
-  65,
-  324,
-  248,
-  710,
+  260,
+  398,
+  106,
+  136,
+  131,
+  608,
+  629,
+  407,
+  846,
+  161,
+  386,
+  911,
+  531,
+  946,
+  508,
+  432,
   489,
-  834,
-  199,
-  338,
-  851,
-  793,
-  960,
-  761,
-  383,
+  872,
+  810,
+  684,
+  343,
+  966,
+  409,
+  360,
+  503,
+  370,
+  701,
+  462,
+  113,
+  18,
+  245,
+  25,
+  804,
+  403,
+  723,
   891,
-  973,
-  943,
-  853,
-  422,
-  178,
-  600,
-  890,
-  732,
-  384,
-  431,
-  476,
-  237,
-  104,
-  622,
-  839,
-  904,
-  805,
-  512,
-  57,
-  17,
-  630,
-  378,
+  647,
+  326,
+  387,
+  22,
+  334,
+  336,
+  803,
+  317,
   32,
-  996,
-  247,
-  209,
-  254,
-  119,
-  396,
-  565,
-  630,
-  782,
-  633,
-  138,
-  318,
-  112,
-  545,
-  743,
-  616,
-  663,
-  89,
-  367,
-  495,
-  845,
-  127,
-  597,
-  434,
-  129,
-  692,
-  109,
-  168,
-  953,
-  668,
-  590,
-  177,
-  578,
-  46,
-  707,
+  364,
+  553,
+  382,
+  749,
+  278,
+  819,
+  568,
   413,
-  115,
-  788,
-  513,
-  243,
-  935,
-  953,
-  58,
-  584,
-  64,
-  569,
-  367,
-  978,
-  249,
-  290,
-  125,
+  855,
+  430,
+  283,
+  772,
+  32,
+  442,
+  759,
+  145,
+  173,
+  101,
+  460,
+  278,
+  456,
+  900,
+  643,
+  41,
   183,
+  489,
+  833,
+  545,
+  619,
+  341,
+  414,
+  557,
+  998,
+  678,
+  301,
+  206,
+  336,
   852,
-  485,
-  847,
-  895,
-  835,
-  25,
-  289,
-  995,
-  226,
-  156,
-  980,
-  520,
-  656,
-  255,
-  37,
-  852,
-  719,
-  493,
-  473,
-  900,
-  417,
-  647,
+  266,
+  516,
+  845,
+  334,
+  90,
+  270,
+  718,
+  170,
+  436,
   363,
-  759,
-  778,
-  735,
-  349,
-  627,
-  525,
-  255,
-  13,
-  58,
-  399,
-  222,
-  70,
-  304,
-  663,
-  158,
-  152,
-  788,
-  103,
-  693,
-  274,
-  873,
+  779,
+  761,
+  43,
+  118,
+  531,
+  368,
+  676,
+  7,
+  791,
+  115,
+  923,
+  507,
+  649,
+  164,
   116,
-  837,
-  876,
-  367,
-  272,
-  778,
-  65,
-  363,
-  625,
-  696,
-  809,
-  16,
-  491,
-  615,
-  196,
-  88,
-  0,
-  204,
-  418,
-  203,
-  952,
-  205,
-  240,
-  962,
-  899,
-  872,
-  222,
-  961,
-  363,
-  920,
-  659,
-  935,
-  943,
-  198,
-  385,
+  429,
+  516,
+  185,
+  160,
+  246,
+  888,
+  572,
+  767,
+  104,
+  692,
+  907,
+  500,
+  673,
+  160,
+  432,
+  449,
+  683,
+  959,
+  147,
+  79,
+  232,
+  853,
+  852,
+  898,
+  946,
   475,
-  298,
-  936,
-  22,
-  204,
-  947,
-  776,
-  911,
-  581,
-  661,
-  340,
-  433,
-  188,
-  622,
-  117,
-  154,
-  150,
-  388,
-  214,
-  513,
-  625,
-  875,
-  779,
-  262,
-  972,
-  396,
-  803,
-  396,
-  991,
-  976,
-  900,
-  387,
-  371,
-  522,
-  162,
-  234,
-  733,
-  314,
-  331,
-  666,
-  44,
-  205,
-  66,
-  422,
-  780,
-  978,
-  661,
-  775,
-  647,
-  511,
-  670,
-  515,
-  88,
-  714,
-  579,
   133,
-  499,
-  837,
-  506,
-  904,
+  640,
+  57,
+  324,
+  19,
   172,
-  248,
-  476,
-  836,
-  898,
-  514,
-  396,
-  852,
-  568,
-  706,
-  533,
-  54,
-  72,
-  167,
-  493,
-  809,
-  588,
-  792,
-  34,
-  325,
-  827,
-  878,
-  440,
-  708,
-  348,
-  589,
-  708,
-  271,
-  577,
-  857,
-  999,
-  547,
-  579,
-  502,
-  298,
-  330,
-  790,
-  687,
-  99,
-  245,
-  721,
-  264,
-  826,
-  487,
-  501,
-  783,
-  194,
-  469,
-  991,
-  653,
-  87,
-  946,
-  556,
+  781,
+  178,
+  461,
+  875,
+  875,
+  730,
+  660,
+  418,
+  925,
+  113,
+  867,
+  362,
+  930,
+  17,
+  113,
+  346,
+  213,
+  301,
+  169,
+  807,
+  513,
+  349,
+  547,
+  409,
+  353,
+  389,
+  187,
+  877,
+  629,
+  472,
+  230,
+  515,
+  809,
+  781,
+  981,
+  723,
+  992,
+  203,
+  987,
+  977,
+  135,
+  375,
+  656,
+  138,
+  972,
+  270,
+  656,
+  106,
+  620,
+  201,
+  630,
+  820,
   707,
-  104,
-  879,
-  160,
-  15,
-  1,
-  95,
+  365,
+  825,
+  677,
+  815,
+  35,
+  201,
+  493,
+  518,
+  843,
+  75,
+  107,
+  581,
+  215,
+  831,
+  364,
+  554,
+  855,
+  123,
+  23,
+  825,
+  306,
+  408,
+  776,
+  99,
+  443,
+  866,
+  615,
+  597,
+  327,
+  574,
+  844,
+  493,
+  89,
+  563,
+  458,
+  55,
+  632,
+  771,
+  397,
+  373,
+  599,
+  347,
+  25,
+  333,
+  878,
+  326,
+  744,
+  68,
+  74,
+  824,
+  776,
+  920,
+  22,
+  166,
+  639,
+  692,
+  59,
+  123,
+  531,
+  276,
+  660,
+  772,
+  994,
+  200,
+  551,
+  693,
   323,
-  870,
-  521,
-  897,
-  840,
-  699,
-  410,
-  751,
-  42,
+  14,
+  128,
+  157,
+  896,
+  936,
+  552,
+  148,
+  569,
+  796,
+  509,
   342,
-  802,
-  547,
-  862,
-  168,
-  5,
-  561,
+  77,
+  194,
+  903,
+  815,
+  207,
   488,
-  170,
+  607,
+  733,
+  547,
+  481,
+  171,
+  709,
+  908,
+  741,
+  594,
+  518,
+  507,
+  42,
+  65,
+  322,
+  230,
+  736,
+  183,
+  443,
+  2,
+  362,
+  140,
+  746,
+  86,
+  367,
+  64,
+  746,
+  935,
+  976,
+  475,
+  404,
+  217,
   237,
-  655,
-  179,
-  909,
-  847,
-  536,
-  360,
-  44,
-  371,
-  9,
-  473,
-  253,
-  400,
-  563,
-  683,
-  471,
-  625,
-  823,
-  414,
-  590,
-  312,
-  407,
-  971,
-  929,
-  614,
-  705,
-  249,
-  69,
-  348,
-  527,
+  217,
   915,
-  978,
-  728,
-  593,
-  641,
-  627,
-  144,
-  653,
-  818,
-  763,
-  116,
-  676,
-  611,
-  451,
-  203,
-  589,
-  62,
-  984,
-  165,
-  631,
-  42,
-  873,
-  56,
-  256,
-  459,
-  134,
-  722,
-  235,
-  798,
-  291,
-  977,
-  646,
-  36,
-  156,
-  546,
-  113,
-  96,
-  964,
-  156,
-  570,
-  366,
-  718,
+  457,
+  913,
+  879,
+  671,
+  852,
+  196,
+  919,
+  855,
+  722,
+  398,
+  747,
+  543,
+  101,
   816,
-  726,
-  385,
-  188,
-  184,
-  154,
+  786,
+  129,
+  232,
+  959,
+  244,
+  936,
+  630,
+  362,
+  260,
+  112,
+  825,
+  363,
   921,
-  821,
-  329,
-  928,
-  176,
-  688,
-  942,
-  204,
-  240,
-  423,
+  178,
+  275,
   498,
-  422,
-  115,
-  696,
-  1,
-  850,
-  309,
-  733,
-  628,
-  595,
-  930,
-  467,
-  888,
-  638,
-  448,
-  895,
-  10,
-  938,
-  848,
-  116,
-  193,
-  390,
-  415,
-  330,
-  359,
-  115,
+  600,
+  843,
+  716,
+  949,
+  274,
   371,
-  432,
-  229,
-  264,
-  141,
-  162,
-  491,
-  397,
-  2,
-  141,
-  761,
-  471,
-  68,
-  55,
-  628,
-  593,
-  891,
-  84,
-  808,
-  740,
-  196,
-  196,
-  511,
-  901,
-  324,
-  464,
-  627,
-  461,
-  900,
-  995,
-  118,
-  486,
-  960,
-  709,
-  451,
-  432,
-  997,
-  785,
-  480,
-  20,
-  351,
-  25,
-  955,
-  40,
-  788,
-  56,
-  254,
-  329,
-  601,
-  293,
-  704,
+  232,
+  524,
+  726,
+  355,
+  588,
+  248,
+  939,
   639,
-  743,
-  983,
-  177,
-  722,
-  193,
-  708,
-  34,
-  202,
-  364,
-  404,
-  487,
-  436,
-  867,
-  906,
-  442,
-  472,
-  718,
-  610,
+  453,
+  660,
+  843,
+  244,
+  838,
+  747,
+  7,
+  963,
+  228,
+  409,
+  75,
+  251,
+  127,
+  878,
   366,
-  991,
-  639,
-  821,
-  604,
+  293,
+  231,
+  973,
+  281,
+  753,
+  496,
+  843,
+  913,
+  934,
+  724,
   618,
-  538,
-  266,
-  781,
-  958,
-  542,
-  744,
-  116,
-  604,
-  835,
-  310,
-  847,
-  277,
-  138,
-  979,
-  930,
-  962,
-  3,
-  641,
-  976,
-  673,
-  928,
-  851,
-  456,
-  963,
-  604,
-  336,
-  360,
-  467,
-  374,
-  536,
-  56,
-  729,
-  272,
-  563,
-  205,
-  301,
-  583,
-  329,
-  632,
-  151,
-  678,
-  100,
-  234,
-  74,
-  315,
-  289,
-  759,
-  313,
-  854,
-  558,
-  997,
-  905,
-  186,
-  261,
-  863,
-  607,
-  41,
-  70,
-  234,
-  147,
-  448,
-  619,
-  179,
-  65,
-  716,
-  309,
-  858,
-  408,
-  143,
-  61,
-  760,
-  308,
-  115,
-  116,
-  233,
-  598,
-  170,
-  675,
-  117,
-  147,
-  511,
-  935,
-  857,
-  761,
-  397,
-  692,
-  940,
-  606,
-  235,
-  50,
-  297,
-  219,
-  216,
-  501,
-  489,
-  22,
-  792,
-  878,
-  722,
-  293,
-  667,
-  71,
-  663,
-  870,
-  294,
-  596,
-  885,
-  140,
-  169,
-  325,
-  8,
-  107,
-  780,
-  536,
-  320,
-  652,
-  975,
-  155,
-  371,
-  901,
-  716,
-  175,
-  240,
-  296,
-  355,
-  416,
-  277,
-  187,
-  178,
-  977,
-  254,
-  679,
-  799,
-  428,
-  123,
-  66,
-  195,
-  143,
-  700,
-  648,
-  653,
-  570,
-  363,
-  942,
-  352,
-  981,
-  175,
-  815,
-  618,
-  479,
-  760,
-  663,
-  298,
-  944,
-  716,
-  925,
-  796,
-  312,
-  509,
-  365,
-  165,
-  945,
-  52,
-  787,
-  270,
-  663,
-  358,
-  452,
-  103,
-  809,
-  345,
-  62,
-  545,
-  863,
-  116,
-  952,
-  951,
-  810,
-  297,
-  884,
-  386,
-  683,
-  991,
-  161,
-  48,
   267,
-  672,
-  558,
-  977,
-  2,
-  827,
-  848,
-  293,
-  860,
-  247,
-  564,
-  141,
-  285,
-  134,
-  736,
-  604,
-  789,
-  441,
-  723,
-  714,
-  911,
-  957,
-  597,
-  510,
-  547,
-  274,
-  761,
-  684,
-  747,
-  652,
-  536,
-  114,
-  555,
-  176,
-  743,
-  923,
-  442,
-  629,
-  984,
-  703,
-  957,
-  620,
-  822,
-  47,
-  186,
-  669,
-  17,
-  168,
-  377,
-  271,
-  562,
-  420,
-  799,
-  820,
-  73,
+  798,
+  364,
+  613,
+  451,
+  447,
+  218,
+  886,
+  648,
+  886,
+  830,
+  259,
+  239,
+  879,
+  99,
+  279,
+  819,
   439,
-  884,
-  919,
+  974,
+  877,
+  118,
   306,
-  164,
-  749,
-  123,
-  830,
-  461,
-  452,
-  353,
-  589,
+  730,
+  200,
+  47,
+  736,
+  914,
+  829,
+  232,
+  739,
+  660,
+  170,
+  210,
+  284,
+  494,
+  544,
+  855,
+  411,
+  833,
+  547,
+  372,
+  348,
+  662,
+  810,
+  417,
+  278,
   305,
-  907,
-  949,
-  288,
-  733,
-  975,
-  454,
-  821,
-  394,
-  329,
-  776,
-  69,
-  134,
-  808,
-  888,
-  663,
-  594,
-  378,
-  691,
-  175,
-  951,
-  234,
-  635,
+  562,
+  335,
+  688,
   969,
-  838,
-  443,
-  447,
-  399,
-  563,
-  442,
-  750,
-  523,
-  909,
-  889,
-  768,
-  390,
-  61,
-  896,
-  865,
-  534,
-  72,
-  558,
-  267,
-  678,
-  930,
-  662,
-  655,
-  15,
-  153,
-  885,
-  631,
-  724,
-  475,
-  919,
-  691,
-  260,
-  925,
-  49,
-  798,
-  761,
-  314,
-  497,
-  116,
-  789,
-  548,
-  1,
-  258,
-  388,
-  137,
-  467,
-  706,
-  580,
-  717,
-  110,
-  290,
-  513,
-  408,
-  639,
-  72,
-  629,
-  772,
-  67,
-  460,
-  612,
-  46,
-  88,
-  330,
-  790,
-  854,
-  708,
-  610,
-  334,
-  180,
-  901,
-  718,
-  647,
-  281,
-  135,
-  80,
-  583,
-  591,
-  828,
-  405,
-  843,
-  30,
-  709,
-  657,
-  329,
-  53,
-  351,
-  336,
-  445,
-  249,
-  761,
-  14,
-  187,
-  628,
-  154,
-  381,
-  915,
-  589,
-  911,
-  849,
-  515,
-  39,
-  58,
-  17,
-  790,
-  825,
+  437,
+  221,
+  613,
+  848,
+  384,
+  326,
+  350,
+  213,
+  730,
+  970,
   446,
-  99,
-  674,
-  155,
-  407,
-  324,
-  888,
-  447,
-  662,
-  324,
-  588,
-  659,
-  898,
-  234,
+  868,
+  920,
+  543,
+  953,
+  383,
+  421,
+  653,
+  85,
+  3,
+  551,
+  843,
+  963,
+  122,
+  533,
+  577,
+  535,
+  168,
   12,
-  418,
-  514,
-  833,
-  149,
-  241,
-  655,
-  350,
-  256,
-  869,
-  127,
-  629,
-  236,
-  334,
-  940,
-  175,
-  685,
-  224,
-  243,
-  866,
-  979,
-  495,
-  375,
-  525,
-  869,
-  524,
-  894,
-  919,
+  995,
+  666,
+  724,
+  457,
+  150,
+  417,
+  733,
+  464,
+  754,
+  86,
+  398,
+  755,
   4,
-  184,
-  348,
-  75,
-  892,
-  379,
-  899,
-  177,
-  709,
-  762,
-  356,
-  612,
-  992,
-  723,
-  47,
-  227,
-  317,
-  542,
-  703,
-  279,
-  969,
-  946,
-  473,
-  208,
-  60,
-  872,
-  674,
-  116,
-  360,
-  616,
-  976,
-  253,
-  862,
-  119,
-  649,
-  710,
-  851,
+  76,
+  552,
+  87,
+  767,
+  193,
   690,
-  448,
-  714,
-  152,
-  489,
-  62,
-  833,
+  504,
+  534,
+  748,
   207,
-  594,
-  100,
-  375,
-  9,
-  497,
-  111,
-  442,
-  116,
-  818,
-  749,
-  177,
-  898,
-  403,
-  243,
-  228,
-  741,
-  680,
-  393,
-  292,
-  726,
-  628,
-  149,
-  127,
-  525,
-  320,
-  404,
-  831,
-  842,
-  852,
-  367,
-  849,
-  66,
-  448,
-  978,
-  941,
-  165,
-  565,
-  960,
-  631,
-  220,
-  220,
-  154,
-  584,
-  841,
-  386,
-  582,
-  233,
-  22,
-  608,
-  508,
-  454,
-  503,
-  267,
-  660,
-  899,
-  404,
-  660,
-  451,
-  86,
-  966,
-  694,
-  133,
-  320,
-  811,
-  966,
-  556,
-  377,
-  653,
-  244,
-  718,
-  255,
-  748,
-  6,
-  237,
-  11,
-  668,
-  411,
-  351,
-  360,
-  833,
-  91,
-  414,
-  264,
-  447,
-  816,
-  962,
-  197,
-  774,
-  504,
-  426,
-  161,
-  42,
-  714,
-  130,
-  699,
-  64,
-  307,
-  15,
-  719,
-  917,
-  452,
-  573,
-  184,
-  297,
-  10,
-  249,
-  628,
-  440,
-  761,
-  170,
-  588,
-  537,
-  318,
-  130,
-  207,
-  376,
-  696,
-  203,
-  202,
-  790,
-  737,
-  133,
-  966,
-  24,
-  127,
-  820,
-  109,
-  53,
+  245,
+  593,
+  61,
+  997,
+  358,
+  602,
+  420,
+  541,
+  98,
+  723,
   185,
-  38,
-  946,
-  96,
-  352,
-  529,
+  476,
+  469,
   349,
-  678,
-  309,
-  51,
-  680,
-  881,
-  489,
-  940,
-  962,
-  163,
-  900,
-  797,
-  461,
-  431,
-  973,
-  204,
-  597,
-  681,
-  483,
-  903,
-  351,
-  885,
-  646,
-  358,
-  891,
-  564,
-  405,
-  989,
-  656,
-  628,
-  749,
-  23,
-  243,
-  407,
-  178,
-  22,
-  132,
-  883,
-  365,
-  471,
-  941,
-  762,
-  226,
-  403,
-  87,
-  231,
-  589,
-  543,
-  346,
-  737,
-  817,
-  261,
-  857,
-  869,
-  996,
-  27,
-  280,
+  843,
+  773,
+  374,
+  223,
+  868,
+  576,
+  998,
+  482,
+  321,
+  979,
+  316,
+  845,
+  400,
+  420,
+  30,
+  289,
+  42,
+  752,
+  986,
   595,
-  538,
-  113,
-  628,
-  587,
-  677,
-  641,
-  421,
-  176,
-  262,
-  399,
-  786,
+  999,
+  715,
+  763,
+  305,
+  209,
+  492,
+  335,
+  747,
+  505,
+  52,
+  829,
+  840,
+  814,
+  356,
+  836,
+  882,
+  300,
+  992,
+  830,
+  367,
+  856,
+  451,
+  971,
+  388,
+  874,
+  48,
   970,
+  576,
+  731,
   330,
-  936,
-  633,
-  690,
-  156,
-  855,
-  313,
-  550,
-  707,
-  201,
+  258,
+  99,
+  606,
+  881,
+  687,
+  193,
+  67,
+  890,
+  705,
+  847,
+  222,
+  553,
   910,
-  556,
-  248,
-  34,
-  432,
-  547,
-  622,
-  737,
-  233,
-  941,
-  694,
-  526,
-  409,
-  458,
-  133,
-  900,
-  248,
-  670,
-  109,
-  802,
-  295,
-  233,
-  117,
-  923,
-  139,
-  855,
-  382,
-  757,
-  399,
-  462,
-  115,
-  447,
-  444,
-  53,
-  235,
-  163,
+  201,
+  303,
+  973,
+  927,
+  669,
+  234,
+  641,
+  983,
   232,
-  333,
-  335,
-  219,
-  625,
+  590,
+  315,
+  72,
+  546,
+  971,
+  922,
+  40,
+  400,
+  604,
+  81,
+  145,
+  391,
+  508,
+  250,
+  935,
+  144,
+  206,
+  241,
+  858,
+  36,
+  844,
+  750,
+  563,
+  869,
+  417,
+  102,
+  659,
+  990,
+  906,
+  999,
+  950,
+  512,
+  558,
+  486,
+  639,
+  290,
+  391,
+  111,
+  965,
+  325,
+  17,
+  848,
+  3,
+  529,
+  591,
+  898,
+  566,
+  352,
+  381,
+  301,
+  167,
+  749,
+  543,
+  720,
+  752,
+  975,
+  785,
+  185,
+  267,
+  32,
+  576,
   95,
-  674,
-  879,
-  204,
-  460,
+  6,
+  772,
+  109,
+  609,
+  83,
+  889,
   370,
-  829,
-  943,
-  420,
-  10,
-  538,
-  863,
-  694,
-  537,
-  124,
-  406,
-  294,
+  986,
+  988,
+  514,
+  237,
+  596,
+  763,
+  7,
+  625,
+  238,
+  472,
+  245,
+  812,
+  532,
+  452,
+  862,
+  596,
+  490,
+  345,
+  796,
+  610,
+  44,
+  340,
+  815,
+  848,
+  860,
+  795,
+  504,
+  382,
+  497,
+  897,
+  833,
+  64,
+  328,
+  345,
+  812,
+  4,
+  314,
+  807,
+  397,
+  32,
+  762,
+  129,
+  620,
+  88,
+  561,
+  900,
+  995,
+  757,
+  808,
   131,
-  306,
-  420,
-  12,
-  385,
-  107,
+  336,
+  617,
+  977,
+  2,
+  943,
+  382,
+  250,
+  114,
+  920,
+  374,
+  192,
+  205,
+  64,
+  374,
+  628,
+  632,
+  166,
+  204,
+  780,
+  281,
+  205,
+  55,
+  393,
+  942,
   33,
-  153,
-  815,
-  899,
-  989,
   845,
-  875,
-  772,
-  172,
-  308,
-  285,
-  1,
-  721,
-  487,
-  495,
-  310,
+  959,
+  484,
+  992,
+  863,
+  799,
+  937,
   222,
-  950,
-  874,
-  211,
-  837,
-  723,
-  834,
-  407,
-  327,
-  658,
-  647,
-  1,
-  278,
-  524,
-  266,
-  906,
-  312,
-  955,
-  632,
-  631,
-  515,
-  440,
-  334,
-  122,
-  559,
-  72,
-  785,
-  431,
-  621,
-  61,
-  584,
-  588,
-  594,
-  16,
-  217,
-  50,
-  831,
-  188,
-  52,
-  393,
-  993,
-  495,
-  848,
-  480,
-  456,
-  370,
-  424,
-  777,
-  718,
-  39,
-  186,
-  466,
-  773,
-  185,
-  508,
-  464,
-  989,
-  135,
-  971,
-  470,
-  682,
-  443,
-  97,
-  124,
+  945,
+  165,
+  121,
+  140,
+  694,
+  350,
+  677,
+  703,
+  409,
+  851,
+  795,
+  889,
+  70,
+  730,
   838,
-  135,
-  186,
-  427,
-  544,
-  719,
-  411,
-  244,
-  64,
-  273,
-  568,
-  160,
-  173,
-  273,
-  185,
-  826,
-  238,
-  841,
-  840,
-  553,
-  33,
-  758,
-  873,
-  162,
-  707,
-  158,
-  166,
-  714,
-  461,
+  982,
+  30,
+  231,
+  637,
+  892,
+  585,
+  511,
+  521,
+  639,
+  134,
+  324,
+  696,
+  801,
+  422,
+  218,
+  32,
+  499,
+  359,
+  132,
   573,
-  566,
-  256,
-  903,
-  798,
-  242,
-  561,
-  763,
-  334,
-  164,
-  781,
-  73,
+  971,
+  756,
+  412,
+  498,
+  514,
+  138,
+  134,
+  14,
+  440,
+  421,
+  391,
+  214,
+  517,
+  160,
+  127,
+  265,
+  575,
+  996,
+  640,
+  153,
+  900,
+  104,
+  962,
+  540,
+  363,
+  431,
+  301,
+  978,
+  859,
+  167,
+  378,
+  401,
+  159,
+  109,
+  63,
+  5,
+  804,
+  541,
+  341,
+  723,
+  937,
+  599,
+  46,
+  220,
+  514,
+  62,
+  0,
+  983,
+  889,
+  803,
+  865,
+  727,
+  473,
+  886,
+  887,
+  140,
+  64,
+  532,
+  677,
   309,
-  228,
-  71,
-  643,
-  774,
-  672,
-  507,
-  676,
+  585,
+  748,
+  131,
+  515,
+  35,
+  699,
+  451,
+  952,
+  978,
+  863,
+  779,
+  422,
+  8,
+  345,
+  388,
+  789,
+  455,
+  11,
+  150,
+  396,
+  709,
+  561,
+  982,
+  737,
+  405,
+  37,
+  117,
+  67,
+  38,
+  50,
   406,
-  695,
-  623,
-  993,
-  729,
-  898,
-  324,
-  420,
-  903,
-  599,
-  622,
-  129,
+  468,
+  642,
+  442,
+  339,
+  685,
+  405,
+  475,
+  964,
+  953,
+  680,
+  252,
   694,
-  716,
-  742,
-  632,
-  89,
-  740,
-  417,
-  606,
-  494,
-  697,
-  697,
-  655,
-  30,
-  87,
-  617,
-  604,
-  101,
-  537,
-  566,
-  828,
-  969,
+  251,
+  17,
+  173,
+  260,
+  236,
+  929,
+  956,
+  85,
+  996,
   570,
-  993,
-  883,
-  127,
-  625,
-  985,
-  804,
-  553,
-  874,
-  758,
-  396,
-  875,
-  133,
-  224,
-  853,
-  877,
-  710,
-  782,
-  155,
-  923,
-  416,
-  794,
-  663,
-  200,
-  30,
-  689,
+  836,
+  657,
+  34,
+  498,
+  72,
+  641,
+  823,
+  248,
+  662,
+  82,
+  516,
+  714,
+  862,
+  358,
+  27,
+  904,
+  297,
+  591,
+  163,
+  201,
+  871,
+  129,
+  390,
+  489,
+  432,
+  195,
+  141,
+  571,
+  324,
+  809,
+  531,
+  929,
+  639,
+  977,
+  182,
+  501,
+  724,
+  983,
+  978,
+  138,
+  698,
+  128,
+  47,
+  388,
+  100,
+  879,
+  491,
+  297,
+  658,
+  280,
+  811,
+  594,
+  884,
+  535,
+  290,
+  186,
+  791,
+  788,
+  892,
+  531,
+  384,
   77,
-  218,
-  632,
-  849,
-  60,
-  270,
+  364,
+  903,
+  814,
+  415,
+  986,
+  201,
+  348,
+  371,
+  288,
+  296,
+  684,
+  785,
+  339,
+  941,
+  951,
+  924,
+  175,
+  82,
+  776,
+  866,
+  643,
+  383,
+  448,
+  485,
+  828,
+  714,
+  36,
+  955,
+  942,
+  794,
+  660,
+  631,
+  861,
+  329,
+  21,
+  777,
+  73,
+  963,
+  421,
+  625,
+  119,
+  271,
   446,
-  419,
-  697,
+  307,
+  596,
+  433,
+  147,
+  759,
+  12,
+  705,
+  96,
+  1,
+  177,
   980,
-  892,
-  935,
-  24,
-  717,
-  178,
-  471,
-  497,
-  209,
-  743,
-  284,
-  3,
-  813,
-  234,
-  76,
-  527,
-  145,
-  684,
-  742,
-  500,
-  832,
-  533,
-  780,
-  226,
-  800,
-  897,
-  102,
-  309,
-  994,
-  775,
-  888,
-  944,
-  243,
-  54,
-  17,
-  107,
-  929,
+  631,
+  664,
+  48,
   52,
-  244,
-  843,
-  553,
-  701,
-  236,
-  53,
-  909,
+  661,
   972,
-  753,
-  927,
-  796,
-  81,
-  679,
-  394,
-  649,
-  991,
-  973,
-  903,
-  797,
-  321,
-  763,
-  37,
-  991,
-  544,
-  268,
-  236,
-  10,
-  923,
-  443,
-  394,
-  720,
-  76,
-  434,
-  280,
-  314,
-  91,
-  934,
-  848,
-  217,
-  697,
-  646,
-  53,
-  647,
-  723,
-  154,
-  894,
-  943,
-  217,
-  641,
-  64,
-  987,
-  58,
-  98,
-  191,
+  206,
+  335,
+  971,
+  801,
+  464,
+  505,
+  127,
+  803,
+  431,
+  247,
   819,
-  510,
-  708,
-  33,
-  747,
-  400,
-  513,
-  360,
-  526,
-  173,
-  733,
-  234,
-  759,
-  525,
-  485,
-  463,
-  382,
-  261,
-  826,
-  870,
-  999,
-  655,
-  564,
-  947,
-  334,
-  479,
-  963,
-  641,
-  647,
-  554,
-  497,
-  688,
-  818,
   941,
-  20,
-  235,
-  523,
-  847,
-  527,
-  290,
-  535,
-  244,
-  312,
-  703,
-  779,
-  768,
-  732,
-  734,
+  73,
+  345,
+  37,
+  849,
+  420,
+  179,
+  70,
+  830,
+  518,
+  241,
+  159,
+  73,
+  201,
+  276,
+  636,
+  370,
+  898,
+  741,
+  756,
+  509,
+  712,
+  652,
+  809,
+  856,
+  689,
+  517,
+  146,
+  439,
+  408,
+  88,
+  665,
+  338,
+  643,
+  580,
+  246,
+  200,
+  801,
+  704,
+  833,
+  979,
+  609,
+  445,
+  631,
+  351,
+  669,
+  659,
+  364,
+  600,
+  486,
   759,
-  228,
-  671,
-  245,
-  304,
-  191,
-  808,
-  502,
+  175,
+  679,
+  320,
+  190,
+  227,
+  144,
+  462,
+  528,
+  577,
+  436,
+  185,
+  451,
+  779,
+  6,
+  121,
+  51,
+  380,
   219,
-  948,
-  24,
-  398,
-  268,
-  540,
-  243,
-  691,
-  966,
-  768,
-  631,
-  38,
-  446,
-  446,
-  697,
-  82,
+  910,
+  604,
+  27,
+  19,
+  544,
+  524,
+  550,
+  711,
+  99,
+  967,
+  514,
+  638,
+  215,
+  463,
+  873,
+  264,
+  227,
+  912,
+  5,
+  550,
+  825,
+  302,
+  704,
+  131,
+  725,
+  596,
+  934,
+  827,
+  119,
+  58,
+  810,
+  519,
   824,
-  893,
-  696,
-  553,
-  563,
-  502,
-  25,
+  650,
+  229,
+  538,
+  937,
+  495,
+  886,
+  884,
+  54,
+  562,
+  379,
+  984,
+  386,
+  994,
+  869,
+  667,
+  132,
+  287,
   34,
+  340,
+  999,
+  108,
+  835,
+  202,
+  72,
+  670,
+  654,
+  879,
+  56,
+  237,
+  918,
+  95,
+  353,
+  807,
+  662,
+  828,
+  126,
+  451,
+  269,
+  402,
+  243,
   648,
-  753,
-  857,
-  8,
-  341,
-  801,
-  913,
-  802,
+  698,
+  626,
+  787,
+  611,
+  817,
+  909,
+  712,
+  783,
+  334,
+  215,
+  236,
+  548,
+  606,
+  677,
+  775,
+  206,
+  342,
+  220,
+  610,
   177,
-  805,
-  155,
-  242,
-  920,
-  148,
-  139,
-  517,
-  413,
-  252,
-  225,
-  766,
-  663,
-  767,
-  179,
-  615,
-  212,
-  299,
-  424,
-  125,
-  155,
-  717,
-  263,
-  174,
-  390,
-  849,
-  645,
-  242,
-  572,
-  768,
-  821,
   739,
-  12,
-  398,
-  617,
-  875,
-  957,
-  14,
-  791,
-  633,
-  539,
-  221,
-  80,
-  487,
-  467,
-  88,
-  234,
-  770,
-  816,
-  947,
-  220,
-  967,
-  942,
-  344,
-  993,
+  256,
+  391,
+  374,
   79,
-  388,
+  333,
+  620,
+  301,
+  917,
+  950,
+  188,
   415,
-  886,
-  335,
-  967,
-  560,
-  486,
-  606,
-  49,
-  114,
-  582,
-  891,
-  544,
-  623,
-  858,
-  875,
-  986,
-  486,
-  549,
-  196,
-  198,
-  108,
-  152,
-  545,
-  430,
-  569,
-  122,
-  123,
-  386,
-  163,
-  269,
-  400,
-  774,
-  65,
-  689,
-  802,
-  35,
-  629,
-  738,
-  662,
-  930,
-  494,
-  45,
-  816,
-  412,
-  401,
-  728,
-  336,
-  584,
-  876,
-  14,
-  27,
-  12,
-  224,
-  482,
+  812,
+  703,
+  989,
+  446,
+  112,
+  9,
+  233,
+  587,
+  990,
+  266,
+  356,
+  20,
+  821,
+  255,
+  596,
   304,
-  852,
-  352,
-  163,
-  300,
-  545,
-  554,
-  958,
-  621,
-  872,
-  192,
-  450,
+  378,
+  63,
+  367,
   400,
-  195,
-  339,
+  236,
+  388,
+  830,
   916,
-  344,
-  341,
-  814,
-  450,
-  292,
-  783,
-  818,
-  573,
-  187,
-  992,
-  219,
-  103,
-  894,
-  857,
-  262,
-  204,
-  570,
-  30,
-  293,
-  454,
-  72,
-  568,
-  273,
-  112,
-  923,
-  247,
-  251,
-  780,
-  590,
-  349,
+  799,
+  49,
+  70,
+  159,
+  900,
+  411,
+  271,
+  409,
+  917,
+  685,
+  46,
+  479,
+  205,
+  404,
+  885,
+  672,
+  14,
+  675,
+  211,
+  38,
+  60,
+  772,
+  822,
   311,
+  767,
+  124,
+  963,
+  208,
+  167,
+  546,
+  936,
+  93,
   856,
-  583,
-  566,
+  796,
+  202,
+  119,
+  308,
+  381,
+  456,
+  634,
+  799,
+  711,
+  184,
+  634,
+  702,
+  641,
+  7,
+  378,
+  369,
   965,
-  74,
-  260,
-  523,
-  413,
-  892,
-  640,
-  718,
-  646,
-  244,
-  2,
-  440,
-  492,
-  906,
-  619,
-  94,
   124,
-  732,
-  250,
-  906,
-  669,
-  903,
-  885,
-  494,
-  972,
-  619,
-  414,
-  627,
-  131,
-  249,
-  528,
-  447,
-  992,
+  656,
+  232,
+  745,
+  918,
+  952,
   345,
-  940,
-  765,
-  238,
-  131,
-  900,
-  327,
-  554,
-  975,
-  547,
-  630,
-  428,
-  673,
-  144,
-  690,
-  200,
-  148,
-  405,
-  29,
-  680,
-  559,
-  896,
-  321,
-  736,
-  540,
-  197,
-  154,
-  373,
-  221,
-  78,
-  134,
-  443,
-  514,
-  40,
-  577,
-  529,
-  205,
-  83,
-  366,
-  475,
-  703,
-  166,
-  31,
-  340,
-  803,
-  940,
-  181,
-  134,
-  520,
-  159,
-  99,
-  168,
-  404,
-  343,
-  317,
-  298,
-  715,
-  303,
-  990,
-  32,
-  999,
-  653,
-  151,
-  913,
-  449,
-  884,
-  571,
-  139,
-  806,
-  296,
-  375,
-  476,
-  206,
-  45,
-  991,
-  607,
-  5,
-  851,
-  283,
-  642,
+  55,
+  556,
+  420,
+  863,
+  811,
+  659,
+  389,
+  758,
+  905,
+  810,
+  720,
+  419,
+  137,
+  513,
+  992,
+  977,
+  856,
+  552,
   396,
-  370,
-  25,
-  24,
-  418,
-  679,
-  469,
-  607,
-  355,
-  600,
-  83,
-  32,
-  787,
-  834,
-  972,
-  351,
-  948,
-  356,
-  270,
-  606,
-  322,
-  279,
-  966,
-  138,
-  832,
-  428,
-  306,
-  889,
-  828,
-  34,
-  449,
-  879,
-  205,
-  227,
-  67,
-  132,
+  710,
+  516,
+  516,
+  212,
+  388,
+  515,
+  484,
+  805,
+  19,
+  169,
+  666,
+  431,
+  723,
+  708,
+  124,
+  736,
+  664,
+  613,
+  274,
+  447,
+  670,
+  558,
+  939,
+  206,
+  460,
+  490,
+  48,
   845,
-  506,
-  317,
-  867,
-  353,
-  804,
-  532,
-  41,
-  157,
-  400,
-  691,
+  421,
+  621,
+  666,
+  599,
+  681,
+  602,
+  399,
+  411,
+  698,
+  411,
+  87,
+  858,
+  146,
+  992,
+  701,
+  503,
+  370,
+  239,
+  744,
+  648,
+  861,
+  156,
+  74,
+  896,
+  484,
+  701,
   424,
+  614,
+  602,
+  213,
+  312,
+  61,
+  815,
+  635,
+  553,
+  689,
+  506,
+  694,
+  644,
+  251,
+  80,
+  247,
+  336,
+  521,
+  777,
+  307,
+  947,
+  413,
+  961,
+  636,
+  244,
+  264,
   812,
-  523,
-  232,
-  584,
-  885,
-  556,
-  504,
-  985,
-  322,
-  969,
-  371,
-  391,
-  98,
-  941,
-  26,
-  178,
-  774,
-  463,
-  997,
-  240,
-  265,
-  783,
-  393,
-  970,
-  984,
-  767,
-  198,
-  352,
-  641,
-  75,
-  295,
-  130,
-  103,
-  967,
-  755,
-  140,
-  35,
-  36,
-  632,
-  140,
-  31,
-  343,
-  311,
-  875,
-  957,
-  214,
-  594,
-  102,
+  515,
+  157,
+  779,
+  971,
+  267,
+  743,
+  922,
+  155,
+  869,
+  877,
+  942,
+  388,
+  172,
+  955,
+  501,
+  47,
   708,
-  704,
-  42,
-  385,
-  66,
-  207,
-  462,
-  7,
-  629,
-  996,
-  45,
-  239,
-  67,
-  320,
-  572,
-  870,
-  745,
-  491,
-  347,
+  591,
+  287,
+  537,
+  148,
+  717,
+  712,
+  732,
+  805,
+  744,
+  557,
+  165,
+  622,
+  108,
+  93,
+  280,
+  318,
+  393,
+  237,
+  583,
+  917,
+  802,
+  464,
+  330,
   526,
-  400,
-  699,
-  754,
-  976,
-  956,
+  748,
+  26,
+  640,
+  357,
+  866,
+  919,
+  563,
+  313,
+  365,
+  996,
+  706,
+  815,
+  840,
+  705,
+  896,
+  435,
+  993,
   954,
-  794,
-  539,
-  303,
-  659,
-  358,
-  240,
-  499,
-  659,
+  161,
+  619,
+  764,
+  385,
+  173,
+  498,
+  482,
+  330,
+  925,
+  429,
+  630,
+  803,
+  915,
+  509,
+  920,
+  85,
+  110,
+  826,
+  139,
+  891,
+  394,
+  81,
+  137,
+  878,
+  182,
+  946,
+  286,
+  210,
   623,
-  633,
-  84,
-  969,
-  47,
-  38,
-  147,
-  473,
-  237,
-  108,
-  223,
-  587,
-  983,
-  835,
-  709,
-  650,
-  654,
-  290,
-  457,
-  508,
-  179,
+  64,
+  289,
   41,
-  861,
+  426,
+  205,
+  951,
+  682,
+  511,
+  698,
+  466,
+  166,
+  225,
+  976,
+  895,
+  39,
+  577,
+  974,
   141,
-  415,
-  338,
-  134,
-  768,
-  896,
-  332,
-  774,
-  619,
-  168,
-  326,
-  995,
+  236,
+  99,
+  903,
+  17,
+  429,
+  728,
+  543,
+  119,
+  480,
+  610,
+  586,
+  722,
+  126,
   974,
-  888,
-  405,
-  863,
-  48,
-  321,
-  634,
-  321,
-  270,
-  859,
-  323,
-  320,
-  737,
-  558,
-  628,
-  600,
-  523,
-  806,
-  90,
-  149,
-  997,
-  588,
-  708,
-  940,
-  616,
-  975,
-  302,
-  113,
-  670,
-  369,
-  987,
-  171,
-  900,
-  669,
-  758,
-  668,
-  439,
-  111,
-  749,
-  85,
-  423,
-  868,
-  299,
-  854,
-  861,
-  512,
-  673,
-  594,
-  180,
-  719,
-  880,
-  377,
-  927,
-  123,
-  93,
-  351,
-  135,
-  116,
-  681,
-  353,
-  159,
-  981,
-  788,
-  232,
-  670,
-  43,
-  414,
-  383,
-  448,
-  113,
-  401,
-  103,
-  514,
-  158,
-  22,
-  537,
-  72,
-  392,
-  763,
-  35,
+  657,
+  357,
+  86,
   420,
-  434,
-  526,
-  732,
-  53,
-  193,
-  681,
-  185,
   586,
-  476,
-  362,
-  274,
-  409,
-  658,
-  165,
-  767,
-  233,
-  389,
-  776,
-  179,
-  432,
-  84,
-  27,
-  691,
-  946,
-  470,
-  906,
-  144,
-  423,
-  226,
-  616,
-  247,
-  503,
-  52,
-  921,
-  450,
-  596,
-  634,
-  189,
-  640,
-  812,
-  892,
-  964,
-  903,
-  866,
-  914,
-  506,
-  858,
-  104,
-  335,
-  545,
-  557,
-  515,
-  707,
-  797,
-  965,
-  331,
-  927,
-  376,
-  757,
-  886,
-  154,
-  827,
+  698,
   675,
-  744,
-  712,
-  717,
-  977,
-  168,
-  49,
-  739,
-  407,
-  50,
-  224,
-  180,
-  317,
-  364,
-  594,
-  696,
-  318,
-  336,
-  734,
-  293,
-  497,
-  469,
-  988,
-  653,
-  241,
-  114,
-  982,
+  506,
+  682,
+  71,
+  932,
+  182,
+  394,
+  193,
+  896,
+  554,
+  947,
+  64,
+  291,
+  962,
+  816,
+  602,
+  730,
+  561,
+  175,
+  275,
+  719,
+  913,
+  955,
+  242,
+  521,
+  554,
+  921,
+  599,
+  164,
+  778,
+  780,
+  209,
+  272,
+  618,
+  343,
+  132,
+  65,
+  705,
   927,
-  708,
-  609,
-  851,
-  256,
-  225,
-  51,
-  194,
-  14,
-  282,
-  557,
-  892,
-  905,
-  457,
-  759,
+  295,
+  570,
+  489,
+  179,
+  651,
+  638,
+  63,
+  904,
+  432,
+  701,
+  729,
+  709,
   466,
-  622,
-  351,
-  245,
-  5,
-  449,
+  231,
+  344,
+  440,
+  200,
+  352,
+  101,
+  524,
+  189,
+  464,
+  408,
+  648,
+  655,
+  981,
+  795,
+  244,
+  189,
   80,
-  548,
-  213,
-  711,
-  458,
+  837,
+  674,
+  982,
+  545,
+  898,
+  687,
+  573,
+  952,
+  64,
+  277,
+  944,
+  129,
+  388,
+  894,
+  831,
+  19,
+  395,
+  135,
+  329,
+  581,
+  101,
+  911,
+  794,
+  445,
+  443,
+  642,
   106,
-  713,
-  94,
-  587,
-  650,
-  853,
-  41,
-  578,
-  515,
-  946,
-  3,
-  758,
-  437,
-  935,
-  967,
-  284,
+  735,
+  281,
+  582,
   783,
-  525,
-  306,
-  820,
-  175,
-  216,
-  350,
-  866,
-  535,
+  246,
+  815,
+  273,
+  74,
+  818,
+  545,
+  661,
+  903,
+  438,
+  806,
+  513,
+  862,
+  964,
+  846,
+  582,
+  734,
+  968,
+  341,
+  531,
   369,
-  843,
-  642,
-  848,
-  648,
-  44,
-  796,
+  214,
+  804,
+  317,
+  547,
+  681,
   390,
-  983,
-  292,
-  352,
-  992,
-  122,
-  715,
-  123,
-  2,
-  83,
-  193,
-  711,
-  329,
-  242,
-  453,
-  600,
-  770,
-  969,
-  90,
-  259,
-  71,
-  253,
-  311,
-  865,
-  679,
-  120,
-  409,
-  329,
-  113,
-  636,
+  150,
+  836,
+  144,
+  240,
+  216,
+  77,
+  511,
+  370,
+  815,
+  751,
+  904,
+  922,
+  872,
+  463,
+  195,
   784,
-  548,
-  5,
-  162,
-  555,
-  82,
-  479,
-  168,
-  984,
-  802,
-  681,
-  497,
-  996,
-  382,
-  339,
-  55,
-  947,
-  117,
-  162,
-  275,
-  493,
-  410,
-  234,
-  69,
-  54,
-  817,
-  985,
-  639,
-  479,
-  362,
-  394,
-  939,
-  494,
-  462,
-  642,
-  301,
-  983,
-  350,
-  923,
-  244,
-  565,
-  587,
-  811,
-  130,
-  2,
-  249,
-  56,
-  722,
-  814,
-  940,
-  346,
-  233,
-  575,
-  764,
-  917,
-  981,
-  350,
-  589,
-  969,
-  834,
-  506,
+  706,
+  701,
+  9,
+  787,
+  800,
+  652,
+  577,
+  818,
+  647,
+  900,
+  78,
+  256,
+  218,
+  371,
+  901,
+  606,
+  160,
+  482,
+  846,
+  428,
+  287,
+  243,
+  214,
+  347,
+  943,
+  128,
   623,
-  448,
-  515,
-  715,
+  809,
+  381,
+  463,
+  229,
+  367,
+  898,
+  507,
+  253,
+  384,
+  968,
+  972,
+  340,
+  807,
+  193,
   397,
-  395,
-  174,
-  196,
-  337,
-  713,
-  560,
-  686,
-  836,
-  837,
-  544,
+  945,
+  267,
+  163,
+  886,
+  728,
+  503,
+  516,
+  928,
+  516,
+  626,
+  142,
+  470,
+  632,
+  437,
+  470,
+  659,
+  651,
+  290,
+  55,
+  790,
   582,
-  586,
-  883,
+  746,
+  974,
+  218,
+  906,
+  79,
+  338,
+  794,
+  859,
+  648,
+  691,
+  913,
+  627,
+  43,
+  668,
+  96,
+  252,
+  668,
+  901,
+  329,
+  142,
+  172,
+  33,
   968,
-  810,
-  164,
-  568,
-  109,
-  333,
-  703,
-  3,
-  719,
+  377,
+  525,
+  241,
+  546,
+  88,
+  625,
+  435,
+  237,
+  242,
+  907,
+  835,
+  47,
+  78,
+  869,
+  523,
+  882,
+  794,
+  224,
+  586,
   500,
-  530,
-  11,
-  628,
-  164,
-  246,
-  446,
-  472,
-  883,
-  142,
-  978,
-  127,
-  127,
-  837,
-  156,
-  66,
-  142,
-  382,
-  852,
-  608,
-  956,
-  287,
-  553,
-  284,
-  347,
-  23,
+  704,
+  162,
+  735,
   358,
-  964,
-  746,
-  894,
-  32,
-  258,
-  788,
-  404,
-  75,
-  587,
-  955,
-  593,
-  640,
-  828,
-  977,
-  428,
-  189,
-  421,
-  587,
-  31,
-  41,
-  718,
-  490,
-  535,
-  330,
-  589,
-  256,
-  762,
-  629,
-  586,
-  916,
-  745,
-  353,
-  114,
-  385,
-  517,
-  1,
-  279,
-  673,
-  638,
-  516,
-  273,
-  953,
-  822,
-  323,
-  973,
+  542,
   946,
-  715,
-  414,
-  811,
-  28,
-  804,
-  139,
-  254,
-  110,
-  811,
-  684,
-  405,
-  174,
-  97,
-  444,
-  222,
-  329,
-  911,
-  670,
-  642,
-  424,
-  24,
-  129,
-  772,
-  432,
-  372,
-  124,
-  43,
-  396,
-  319,
-  386,
-  934,
-  153,
-  697,
-  562,
+  657,
+  986,
+  96,
   375,
-  838,
-  510,
-  574,
-  8,
-  870,
-  677,
-  326,
-  410,
-  19,
-  510,
-  433,
-  893,
-  768,
-  853,
-  775,
-  994,
-  851,
-  611,
-  885,
-  212,
-  885,
-  411,
-  597,
-  36,
-  951,
-  482,
-  530,
-  572,
-  492,
-  583,
-  749,
-  579,
-  293,
-  315,
-  783,
-  31,
-  789,
-  298,
-  772,
-  697,
-  113,
-  87,
-  624,
-  402,
-  939,
-  214,
-  569,
-  92,
-  324,
-  338,
-  680,
-  627,
-  979,
-  679,
-  685,
-  954,
-  247,
-  130,
-  718,
-  993,
-  444,
-  692,
-  459,
-  652,
-  877,
-  733,
-  689,
-  848,
-  63,
-  325,
-  90,
-  638,
-  494,
+  109,
+  663,
+  740,
   278,
+  514,
+  338,
+  626,
+  914,
+  468,
+  498,
+  694,
+  46,
+  315,
+  949,
+  100,
+  590,
+  527,
+  673,
+  550,
+  236,
+  426,
+  610,
+  876,
   454,
-  490,
-  807,
-  30,
-  904,
-  133,
-  648,
-  201,
-  990,
-  662,
-  647,
-  987,
-  94,
-  103,
-  886,
-  386,
-  578,
-  667,
+  570,
+  706,
+  225,
+  20,
+  434,
   536,
+  983,
+  559,
+  893,
+  343,
+  894,
+  981,
+  526,
+  478,
+  606,
+  634,
+  422,
+  176,
+  238,
+  840,
+  915,
   754,
-  56,
-  382,
-  963,
-  506,
+  248,
+  294,
   825,
-  173,
-  850,
-  635,
-  796,
-  229,
-  893,
-  785,
-  30,
+  786,
+  899,
+  175,
+  79,
+  71,
+  244,
+  338,
+  545,
+  371,
+  882,
   143,
-  375,
-  306,
-  367,
-  888,
-  996,
-  908,
-  332,
-  239,
-  925,
-  603,
-  189,
-  160,
-  738,
-  16,
-  403,
-  222,
-  546,
-  469,
-  416,
-  29,
+  814,
+  396,
+  229,
+  689,
+  229,
   914,
-  212,
-  666,
-  260,
-  352,
-  592,
-  389,
-  793,
-  834,
-  43,
-  260,
-  583,
-  984,
-  590,
-  508,
-  347,
-  115,
-  199,
-  309,
-  508,
-  400,
-  669,
-  110,
-  201,
-  5,
-  575,
+  627,
+  686,
+  937,
+  332,
+  966,
+  779,
+  430,
+  883,
+  605,
+  140,
+  102,
+  624,
+  710,
+  114,
+  117,
+  833,
+  349,
+  334,
+  453,
+  150,
+  859,
+  649,
+  135,
+  330,
+  645,
+  830,
+  983,
+  597,
+  992,
+  631,
+  658,
+  350,
+  806,
+  476,
+  567,
+  278,
+  976,
+  642,
+  967,
+  792,
+  585,
+  775,
+  778,
+  348,
+  538,
+  788,
+  592,
+  843,
+  983,
   500,
-  292,
-  759,
-  898,
+  416,
+  604,
+  21,
+  881,
+  224,
+  5,
+  350,
+  54,
+  26,
+  37,
+  323,
+  942,
+  848,
+  918,
+  804,
+  587,
+  724,
+  577,
   671,
-  612,
-  438,
-  33,
-  561,
+  619,
+  798,
+  322,
+  643,
+  589,
+  370,
+  850,
+  184,
+  274,
+  45,
+  218,
+  398,
+  998,
+  332,
+  701,
+  974,
+  365,
+  433,
+  415,
   560,
-  205,
-  719,
-  987,
-  263,
-  313,
-  144,
-  189,
+  698,
+  699,
+  242,
+  537,
+  107,
+  921,
+  807,
+  409,
+  640,
+  523,
+  249,
+  903,
+  874,
+  262,
+  45,
+  378,
+  65,
+  441,
+  877,
+  221,
+  550,
+  752,
   429,
-  366,
-  229,
-  618,
-  384,
-  865,
-  278,
-  926,
-  329,
-  869,
-  930,
-  789,
-  925,
-  797,
-  554,
-  442,
-  595,
-  979,
-  276,
-  72,
-  960,
-  883,
-  436,
-  816,
-  70,
-  631,
-  956,
-  704,
-  691,
-  775,
-  67,
-  196,
-  246,
-  324,
-  260,
-  252,
-  68,
-  442,
-  493,
-  266,
+  277,
+  823,
+  573,
+  173,
+  570,
   873,
-  264,
-  920,
-  686,
-  970,
-  661,
-  807,
-  496,
-  214,
-  225,
-  80,
-  505,
-  837,
-  965,
-  360,
-  494,
-  233,
-  584,
-  268,
-  618,
-  633,
-  894,
-  994,
-  110,
-  917,
-  711,
-  214,
-  832,
-  291,
-  354,
+  237,
+  804,
+  552,
+  159,
+  798,
+  606,
   961,
-  142,
-  343,
-  548,
-  803,
-  661,
-  706,
-  969,
-  201,
-  938,
-  706,
-  438,
-  922,
-  228,
-  775,
-  736,
-  91,
-  948,
-  581,
+  184,
+  788,
+  796,
+  752,
+  839,
+  986,
+  73,
   564,
-  370,
-  995,
-  653,
-  252,
-  872,
-  70,
-  990,
-  323,
-  392,
-  48,
-  737,
-  957,
-  660,
-  405,
-  290,
-  886,
-  550,
-  86,
-  426,
-  678,
-  908,
-  325,
-  65,
-  845,
-  933,
-  918,
-  393,
-  504,
-  272,
-  785,
-  526,
-  480,
-  331,
-  400,
-  514,
-  940,
-  121,
-  9,
-  965,
-  907,
-  165,
-  521,
-  825,
-  40,
-  251,
-  227,
-  739,
-  370,
-  606,
   572,
-  70,
-  118,
-  684,
-  236,
-  809,
-  947,
-  221,
-  588,
-  369,
-  826,
-  554,
-  206,
-  353,
-  168,
-  995,
-  549,
-  733,
-  42,
-  297,
-  346,
+  83,
+  205,
+  440,
+  416,
+  821,
+  859,
+  627,
+  621,
+  422,
+  765,
+  601,
+  756,
+  350,
+  607,
+  757,
+  992,
+  393,
+  865,
+  393,
+  208,
   495,
-  684,
-  266,
-  672,
-  400,
-  150,
-  178,
+  613,
+  348,
+  858,
+  362,
+  801,
+  318,
+  171,
+  180,
+  959,
+  179,
+  667,
+  410,
+  383,
+  290,
+  325,
+  648,
+  102,
+  912,
+  828,
+  434,
+  240,
+  438,
+  120,
   45,
+  768,
+  204,
+  32,
   40,
-  723,
-  527,
-  349,
+  425,
+  240,
+  354,
+  562,
+  717,
+  799,
+  358,
+  89,
+  690,
+  967,
   985,
-  279,
-  965,
-  668,
-  29,
-  684,
-  447,
-  152,
-  241,
-  801,
+  308,
+  485,
   335,
-  777,
-  601,
-  968,
-  997,
-  614,
-  762,
-  586,
-  540,
-  429,
-  174,
-  626,
-  770,
-  855,
-  522,
-  250,
-  846,
-  878,
-  412,
-  566,
-  995,
-  715,
-  880,
-  819,
-  67,
+  324,
+  486,
+  494,
+  3,
+  28,
+  704,
+  347,
+  223,
+  421,
+  513,
+  904,
+  831,
   152,
-  154,
-  331,
-  191,
-  879,
-  869,
-  201,
-  642,
-  229,
-  298,
-  251,
-  182,
-  871,
-  757,
-  905,
-  462,
-  7,
-  9,
-  896,
-  234,
+  628,
+  300,
+  98,
+  108,
+  646,
+  496,
+  417,
+  168,
+  83,
+  776,
+  815,
+  774,
+  413,
+  748,
+  150,
+  452,
+  215,
+  112,
+  115,
+  780,
+  148,
+  102,
+  568,
   51,
-  579,
-  603,
-  265,
-  850,
-  203,
-  62,
-  577,
-  812,
-  511,
-  816,
-  498,
-  805,
-  35,
-  358,
-  144,
-  77,
-  731,
-  198,
-  647,
-  679,
-  697,
-  766,
-  553,
-  980,
-  49,
-  337,
-  803,
-  387,
-  593,
-  459,
-  286,
-  352,
-  798,
-  154,
-  888,
-  494,
-  914,
-  961,
-  547,
-  154,
-  802,
-  889,
-  726,
-  638,
-  740,
-  710,
-  263,
-  126,
-  509,
-  220,
-  626,
-  650,
-  40,
-  821,
-  979,
-  240,
-  371,
-  936,
-  7,
-  926,
-  252,
-  142,
-  200,
-  1,
-  801,
-  252,
-  208,
-  605,
-  516,
-  777,
-  997,
-  370,
-  869,
-  523,
-  651,
-  799,
-  321,
-  938,
-  575,
-  397,
-  289,
-  704,
-  359,
-  99,
-  245,
-  635,
-  79,
-  849,
-  375,
-  753,
-  806,
-  315,
-  21,
-  871,
-  991,
-  828,
+  783,
+  606,
+  981,
+  30,
+  94,
+  548,
+  513,
+  16,
+  992,
+  599,
+  210,
+  296,
+  560,
+  434,
+  599,
+  999,
   942,
-  478,
-  651,
-  532,
-  357,
-  482,
-  76,
-  536,
-  603,
-  8,
+  459,
+  559,
+  88,
+  192,
+  929,
+  976,
+  576,
+  58,
+  691,
+  317,
   941,
-  541,
-  639,
-  924,
-  709,
-  648,
-  169,
-  84,
-  810,
-  836,
-  724,
-  997,
-  346,
-  945,
-  961,
-  296,
-  708,
-  790,
-  640,
-  0,
-  829,
-  692,
-  178,
-  258,
-  727,
-  958,
-  490,
-  169,
-  612,
-  232,
-  33,
-  526,
-  776,
-  947,
-  161,
-  697,
-  20,
-  930,
-  57,
-  630,
-  359,
-  716,
   247,
-  214,
-  839,
-  662,
-  141,
-  401,
-  157,
-  436,
-  98,
-  173,
-  390,
-  620,
-  608,
-  14,
-  518,
-  880,
-  749,
-  218,
-  704,
-  902,
-  131,
-  663,
-  288,
-  797,
+  772,
+  461,
+  403,
+  114,
+  578,
+  868,
+  217,
+  550,
+  925,
+  472,
+  795,
+  838,
+  293,
+  770,
+  376,
+  233,
+  404,
+  319,
   171,
-  316,
-  89,
-  806,
-  367,
+  742,
+  314,
+  491,
+  407,
+  369,
+  8,
+  873,
+  923,
+  743,
+  36,
+  904,
+  381,
+  363,
+  563,
+  5,
+  371,
+  285,
+  244,
   513,
-  666,
-  917,
-  660,
-  891,
-  835,
-  610,
-  822,
-  88,
-  765,
-  760,
-  69,
-  579,
-  16,
-  202,
-  470,
-  973,
-  542,
-  21,
+  340,
+  148,
+  17,
+  584,
+  581,
+  944,
+  369,
+  22,
+  584,
+  294,
+  601,
   853,
-  905,
-  108,
-  62,
-  285,
-  313,
-  337,
-  488,
-  546,
-  482,
-  575,
-  385,
-  997,
-  73,
-  919,
-  939,
-  503,
-  888,
-  345,
-  666,
-  425,
-  722,
-  864,
-  831,
-  432,
-  542,
-  196,
-  536,
-  582,
-  275,
-  489,
-  793,
-  835,
-  457,
-  645,
-  275,
-  499,
-  7,
-  759,
-  959,
-  400,
-  983,
-  387,
-  768,
-  928,
-  858,
-  938,
-  938,
-  258,
-  457,
-  166,
-  547,
-  954,
-  505,
-  483,
-  868,
-  556,
-  994,
-  752,
-  163,
-  301,
+  343,
+  209,
+  97,
+  391,
+  614,
+  329,
+  154,
+  564,
+  350,
+  963,
+  861,
+  361,
+  302,
+  389,
+  383,
+  605,
+  884,
   340,
-  445,
-  641,
-  436,
-  439,
-  935,
-  91,
-  736,
-  277,
-  895,
-  935,
-  139,
-  582,
-  208,
-  309,
-  468,
-  784,
-  847,
-  991,
-  571,
-  561,
-  573,
-  143,
-  181,
-  99,
-  232,
-  691,
+  217,
+  177,
+  554,
+  884,
+  3,
+  396,
+  203,
+  355,
+  320,
+  296,
+  308,
+  274,
+  541,
+  796,
+  823,
+  129,
+  363,
   567,
-  634,
-  352,
-  775,
-  39,
-  173,
-  877,
-  688,
-  845,
-  102,
-  565,
-  760,
-  585,
-  920,
-  979,
-  563,
+  67,
+  118,
+  469,
+  366,
+  416,
+  218,
+  787,
+  466,
+  126,
+  640,
+  724,
+  817,
+  245,
+  795,
+  786,
+  311,
+  894,
+  867,
   839,
-  324,
-  987,
-  541,
-  557,
   904,
-  658,
-  830,
-  141,
-  77,
-  955,
+  809,
+  763,
+  934,
+  237,
+  904,
+  554,
+  109,
+  841,
+  96,
   19,
-  357,
-  939,
-  324,
-  793,
-  604,
-  731,
-  535,
-  848,
-  527,
-  392,
-  804,
-  771,
-  202,
-  955,
+  318,
+  695,
+  456,
+  644,
+  244,
+  18,
+  779,
+  432,
+  122,
+  488,
+  231,
+  601,
+  663,
   996,
-  904,
+  135,
+  933,
+  142,
+  351,
+  902,
+  924,
+  738,
+  442,
+  498,
+  44,
+  399,
+  130,
+  584,
+  664,
+  555,
+  648,
+  134,
+  219,
+  444,
+  788,
+  483,
+  541,
+  931,
+  485,
+  571,
+  97,
+  406,
+  688,
+  319,
+  251,
+  187,
+  83,
+  873,
+  800,
+  295,
+  917,
+  573,
+  243,
+  487,
+  132,
   290,
-  762,
-  368,
-  552,
-  30,
-  277,
-  784,
-  204,
-  446,
-  829,
-  367,
-  857,
-  180,
-  880,
-  148,
-  946,
-  447,
-  309,
-  315,
-  858,
+  233,
+  814,
+  322,
+  592,
+  683,
+  22,
+  748,
+  36,
+  286,
+  114,
+  960,
   231,
-  664,
-  490,
-  946,
-  242,
-  443,
-  448,
-  309,
-  869,
-  650,
-  431,
-  141,
-  990,
-  745,
-  850,
-  593,
-  62,
-  580,
-  690,
-  158,
-  28,
-  98,
-  371,
-  567,
-  309,
-  647,
-  651,
+  816,
+  327,
+  827,
+  125,
+  64,
+  626,
+  237,
+  224,
+  210,
+  140,
+  850,
+  413,
+  343,
+  811,
+  597,
+  22,
+  517,
+  954,
+  107,
+  423,
+  528,
+  201,
+  457,
+  396,
+  108,
+  303,
   602,
+  807,
+  998,
+  907,
+  161,
+  592,
+  710,
+  626,
+  504,
+  476,
+  219,
+  195,
+  803,
+  168,
+  579,
+  847,
+  156,
+  479,
+  493,
+  780,
+  788,
   647,
-  949,
-  938,
-  848,
-  612,
-  239,
-  812,
-  521,
-  37,
-  121,
-  756,
-  674,
-  948,
-  735,
-  779,
-  668,
-  515,
-  320,
-  142,
-  154,
-  266,
-  582,
-  941,
-  887,
-  171,
-  277,
-  392,
-  489,
-  603,
-  654,
-  492,
-  670,
-  313,
-  768,
-  51,
-  545,
-  424,
-  497,
-  834,
-  457,
-  577,
-  798,
-  243,
+  598,
+  560,
+  882,
+  402,
+  851,
+  730,
+  155,
+  56,
+  593,
+  436,
+  446,
+  50,
+  255,
+  388,
+  162,
+  377,
+  189,
+  587,
   695,
-  722,
-  429,
-  691,
-  209,
-  363,
+  357,
+  852,
+  821,
+  198,
+  754,
+  185,
+  646,
+  854,
+  804,
+  47,
+  950,
+  524,
+  11,
+  8,
+  523,
+  902,
+  449,
+  912,
+  638,
+  204,
+  185,
+  694,
+  48,
   179,
-  302,
-  152,
-  647,
-  743,
-  158,
-  234,
-  127,
-  993,
-  971,
-  477,
-  26,
-  345,
-  84,
-  737,
+  506,
+  815,
+  650,
+  47,
+  552,
+  57,
+  19,
+  405,
+  668,
+  753,
+  156,
+  98,
+  474,
+  937,
+  168,
+  516,
+  248,
+  242,
+  159,
+  259,
+  454,
+  673,
+  9,
+  779,
+  160,
+  177,
+  880,
+  144,
+  617,
+  398,
+  951,
+  102,
+  210,
+  41,
+  423,
+  725,
+  208,
+  981,
+  984,
+  525,
+  844,
+  108,
+  507,
+  420,
+  707,
+  582,
+  102,
   585,
-  496,
-  220,
-  465,
-  126,
-  125,
-  991,
-  870,
-  645,
-  502,
-  531,
-  63,
-  347,
-  616,
-  580,
-  96,
-  315,
+  270,
+  16,
+  41,
+  740,
+  724,
+  853,
+  878,
+  924,
+  35,
+  172,
+  302,
+  308,
+  861,
+  453,
+  909,
+  339,
+  31,
+  961,
+  735,
   286,
-  264,
-  230,
-  432,
-  274,
-  537,
-  733,
-  708,
-  931,
-  224,
-  871,
-  886,
-  843,
-  727,
-  249,
-  306,
-  691,
-  887,
-  763,
-  899,
   717,
-  480,
-  411,
-  124,
-  990,
-  895,
-  767,
-  252,
-  398,
-  713,
-  893,
-  935,
-  773,
-  998,
-  625,
-  849,
-  380,
-  761,
-  627,
-  125,
-  541,
-  108,
-  177,
-  508,
-  824,
-  640,
-  320,
-  809,
-  788,
-  513,
-  115,
-  65,
-  270,
-  584,
-  422,
-  17,
-  840,
-  587,
-  778,
-  703,
-  433,
-  399,
-  92,
-  570,
-  325,
-  22,
-  452,
-  950,
-  105,
-  459,
-  671,
-  7,
-  357,
-  713,
-  106,
-  871,
-  94,
-  404,
-  948,
-  530,
-  631,
-  679,
-  806,
-  774,
-  371,
-  124,
-  529,
-  513,
-  26,
-  859,
-  172,
-  331,
-  566,
-  434,
-  1,
-  970,
-  56,
-  18,
-  411,
-  123,
-  316,
-  194,
-  574,
-  190,
-  302,
-  548,
-  643,
-  635,
-  871,
-  630,
-  207,
-  193,
-  984,
-  963,
-  623,
-  742,
-  257,
-  336,
-  153,
-  792,
-  967,
-  235,
-  506,
-  401,
-  408,
-  45,
-  648,
-  153,
-  364,
-  320,
-  619,
-  949,
-  354,
-  243,
-  437,
-  646,
-  675,
-  74,
-  658,
-  781,
-  24,
-  282,
-  902,
-  530,
-  403,
-  499,
-  962,
-  787,
-  980,
-  815,
-  163,
+  157,
+  853,
+  741,
+  649,
+  234,
+  735,
+  415,
+  3,
+  461,
+  718,
+  818,
+  930,
+  734,
+  385,
+  779,
   921,
-  355,
-  375,
-  103,
-  223,
-  556,
-  860,
-  636,
-  420,
-  212,
-  690,
-  559,
-  39,
-  222,
-  201,
-  70,
-  282,
-  83,
+  831,
+  980,
+  950,
+  692,
+  563,
+  954,
+  363,
+  889,
+  120,
+  407,
   53,
-  83,
-  520,
-  716,
+  700,
+  930,
+  8,
+  40,
+  867,
   286,
-  149,
-  456,
-  277,
-  130,
-  500,
-  379,
-  495,
-  485,
-  729,
-  922,
-  762,
-  59,
-  880,
-  432,
-  6,
-  500,
-  19,
-  982,
-  612,
-  22,
-  812,
-  278,
+  294,
+  798,
+  328,
+  191,
+  341,
+  182,
+  389,
+  73,
+  338,
+  203,
+  1,
+  480,
+  187,
+  420,
+  169,
+  387,
+  417,
+  332,
+  546,
+  403,
+  281,
+  608,
+  778,
+  298,
+  888,
+  873,
+  54,
+  898,
+  228,
   222,
-  897,
-  854,
-  360,
-  719,
-  923,
-  264,
-  120,
-  760,
-  427,
-  520,
+  934,
+  371,
+  775,
+  455,
+  605,
+  95,
+  846,
+  143,
+  301,
+  750,
+  801,
+  815,
+  255,
+  570,
+  995,
+  755,
   304,
-  800,
-  411,
-  720,
-  729,
-  399,
-  207,
-  336,
-  917,
-  368,
-  763,
-  560,
-  568,
-  609,
-  361,
-  359,
-  253,
-  672,
-  742,
-  141,
-  397,
-  292,
-  262,
-  881,
-  258,
-  564,
-  566,
-  72,
-  633,
-  920,
-  904,
-  419,
-  990,
-  10,
-  812,
-  547,
-  545,
-  232,
-  129,
-  284,
-  975,
-  178,
-  483,
-  75,
-  780,
-  562,
-  910,
-  277,
-  107,
-  836,
-  912,
-  638,
-  896,
-  204,
-  861,
-  507,
-  604,
-  103,
-  868,
-  644,
-  496,
-  215,
-  215,
-  553,
-  645,
-  398,
-  752,
-  352,
-  984,
-  6,
-  846,
-  49,
-  811,
-  354,
-  263,
-  286,
-  518,
-  269,
-  639,
-  74,
-  637,
-  917,
-  15,
-  244,
-  539,
-  595,
-  545,
-  856,
-  68,
-  354,
-  968,
-  10,
-  256,
-  106,
-  124,
-  864,
-  595,
-  936,
-  194,
-  956,
-  201,
-  612,
-  603,
-  546,
-  703,
-  582,
-  139,
+  502,
+  744,
   436,
-  716,
-  605,
-  65,
-  832,
-  103,
-  742,
-  511,
-  26,
-  122,
-  309,
-  599,
-  251,
-  324,
-  507,
-  125,
-  294,
-  877,
-  45,
-  956,
-  27,
-  330,
-  36,
-  80,
-  298,
+  863,
   272,
-  438,
-  243,
-  437,
-  741,
-  121,
+  694,
+  777,
+  154,
+  855,
+  885,
+  883,
+  416,
+  91,
+  680,
+  660,
+  386,
+  0,
+  413,
+  842,
   507,
-  674,
-  194,
-  263,
-  440,
+  262,
+  841,
+  277,
+  615,
+  273,
+  116,
+  987,
+  399,
+  48,
   772,
-  93,
-  3,
-  139,
+  29,
+  290,
+  731,
+  142,
+  744,
+  991,
+  630,
+  479,
+  530,
+  606,
+  628,
+  728,
+  582,
+  711,
+  546,
+  640,
+  654,
+  171,
+  394,
+  211,
+  916,
+  503,
+  640,
+  384,
+  85,
+  702,
+  997,
+  577,
+  226,
+  6,
   173,
-  594,
-  174,
-  770,
-  954,
-  393,
-  549,
-  33,
-  435,
-  836,
-  75,
-  842,
-  469,
-  887,
-  919,
-  901,
+  643,
+  909,
+  595,
+  559,
+  718,
+  268,
+  215,
+  89,
   326,
-  898,
-  346,
-  314,
-  389,
-  818,
-  663,
-  371,
-  843,
-  363,
+  861,
+  859,
+  253,
+  855,
+  119,
   959,
-  215,
-  802,
-  218,
-  776,
-  153,
-  648,
-  150,
-  257,
-  31,
-  711,
-  335,
-  516,
-  582,
-  317,
-  999,
-  393,
-  435,
-  371,
-  926,
-  507,
-  933,
-  925,
-  825,
-  554,
-  870,
-  845,
-  194,
-  588,
-  423,
-  819,
-  698,
-  312,
-  107,
-  541,
-  443,
-  833,
-  20,
-  79,
-  147,
-  331,
-  986,
-  784,
-  130,
-  261,
-  714,
-  537,
-  500,
-  363,
-  259,
-  122,
-  506,
-  550,
-  204,
-  466,
-  763,
-  650,
-  360,
-  826,
-  385,
-  189,
-  836,
-  807,
-  862,
-  943,
-  431,
-  547,
-  300,
-  682,
-  336,
-  71,
-  467,
-  871,
-  6,
-  207,
-  214,
-  482,
-  128,
-  42,
-  151,
-  788,
-  597,
-  644,
-  217,
-  507,
-  653,
-  330,
-  660,
-  696,
-  287,
-  513,
-  506,
-  124,
-  348,
-  195,
+  707,
+  32,
   344,
-  480,
-  112,
-  839,
-  497,
-  751,
-  689,
-  579,
+  229,
   820,
-  490,
-  903,
-  809,
-  790,
-  409,
-  684,
-  708,
-  538,
-  177,
-  77,
-  702,
-  997,
-  846,
-  958,
-  767,
-  174,
-  206,
+  406,
+  328,
   236,
-  340,
-  66,
-  495,
-  364,
-  833,
-  710,
-  598,
-  889,
-  36,
-  413,
-  485,
-  27,
-  824,
-  138,
-  864,
-  146,
-  890,
-  855,
-  133,
-  57,
-  788,
-  755,
-  597,
-  256,
-  76,
-  75,
-  795,
-  970,
-  384,
-  463,
-  528,
-  142,
-  232,
-  973,
-  961,
-  696,
-  231,
-  251,
-  918,
-  383,
+  185,
+  185,
+  849,
+  944,
+  686,
+  419,
+  857,
+  143,
+  711,
+  156,
+  766,
+  591,
+  29,
+  236,
+  590,
+  826,
+  284,
+  200,
+  911,
+  299,
+  332,
+  581,
+  785,
+  331,
+  162,
+  347,
+  574,
+  108,
+  187,
+  568,
+  563,
+  983,
+  525,
+  662,
+  679,
+  560,
+  745,
+  870,
+  244,
+  367,
   264,
-  229,
-  103,
-  610,
-  505,
-  311,
-  725,
-  203,
-  414,
-  53,
-  258,
-  973,
-  293,
-  254,
-  782,
-  26,
-  490,
-  190,
-  927,
-  341,
-  479,
-  858,
+  427,
+  998,
+  82,
+  761,
+  276,
+  703,
+  125,
+  853,
+  241,
+  461,
+  460,
+  607,
+  767,
+  785,
+  815,
+  563,
+  878,
+  669,
+  932,
+  522,
+  391,
+  961,
+  115,
+  455,
+  795,
+  905,
+  306,
+  914,
+  999,
+  791,
+  401,
+  894,
   804,
-  463,
-  457,
-  47,
-  718,
-  205,
-  521,
-  107,
-  171,
-  414,
-  845,
+  760,
+  96,
+  768,
+  874,
+  630,
+  100,
+  894,
   941,
-  865,
-  778,
-  315,
-  513,
-  236,
-  669,
-  681,
+  458,
+  792,
+  162,
+  880,
+  971,
+  440,
+  34,
+  509,
+  112,
+  585,
+  294,
+  470,
+  413,
+  229,
+  429,
+  622,
+  445,
+  82,
+  195,
+  409,
+  173,
+  418,
+  299,
+  762,
+  57,
+  637,
+  485,
   187,
-  964,
-  875,
-  548,
-  869,
-  157,
-  782,
-  876,
-  820,
-  436,
+  477,
+  218,
+  301,
+  7,
+  66,
+  101,
+  112,
+  20,
+  35,
+  882,
   595,
-  304,
-  452,
-  667,
-  827,
-  803,
-  227,
-  466,
-  253,
-  874,
-  43,
-  987,
-  416,
-  64,
-  529,
-  943,
-  471,
-  753,
-  259,
-  81,
-  693,
-  231,
-  159,
-  143,
-  399,
-  492,
-  510,
-  257,
-  825,
-  557,
-  263,
-  536,
-  200,
-  71,
-  744,
-  132,
-  231,
-  842,
-  159,
-  49,
-  302,
-  806,
-  870,
-  999,
-  580,
-  941,
-  437,
-  261,
-  861,
-  423,
-  929,
-  994,
-  534,
-  396,
-  315,
-  783,
-  765,
-  930,
-  644,
-  756,
-  462,
-  195,
-  564,
-  22,
-  384,
-  521,
-  730,
-  505,
-  63,
-  457,
-  709,
-  976,
-  314,
-  282,
-  864,
-  118,
-  724,
-  440,
-  316,
-  776,
-  848,
-  506,
-  48,
-  233,
-  789,
-  380,
   580,
-  889,
-  81,
-  697,
-  763,
-  59,
-  234,
-  408,
-  647,
-  306,
-  431,
-  170,
-  942,
-  7,
-  854,
-  406,
-  217,
-  257,
-  654,
-  945,
-  846,
-  874,
-  436,
-  621,
-  787,
-  538,
-  556,
-  245,
-  891,
-  675,
-  141,
-  746,
-  646,
-  56,
-  919,
-  717,
-  816,
-  234,
-  712,
-  458,
-  339,
-  680,
-  705,
+  898,
+  303,
+  490,
+  122,
+  668,
+  984,
+  281,
+  89,
+  982,
+  700,
+  770,
+  144,
+  163,
   485,
-  616,
-  610,
+  172,
+  266,
+  987,
+  37,
+  309,
+  282,
+  137,
+  196,
+  980,
+  204,
+  393,
+  325,
+  613,
+  991,
+  244,
   208,
-  251,
-  273,
-  242,
-  151,
-  560,
-  362,
-  520,
-  417,
-  760,
-  758,
-  89,
-  229,
-  964,
-  150,
-  683,
-  851,
-  620,
-  180,
-  304,
-  339,
-  923,
-  78,
-  12,
-  253,
-  307,
-  854,
-  692,
-  339,
-  854,
-  773,
-  925,
+  834,
+  902,
+  329,
+  667,
+  890,
+  902,
   938,
-  926,
-  680,
-  358,
-  592,
-  522,
-  3,
-  916,
-  431,
-  61,
-  649,
-  448,
-  463,
-  508,
-  758,
-  646,
-  122,
-  644,
-  508,
-  85,
-  945,
-  934,
-  473,
-  86,
+  441,
+  248,
+  985,
+  872,
   380,
-  856,
-  26,
-  642,
-  831,
-  889,
-  592,
-  669,
-  896,
-  665,
-  897,
-  497,
-  740,
-  987,
-  530,
-  217,
-  945,
-  800,
-  104,
+  435,
+  865,
+  460,
+  303,
+  765,
+  768,
+  828,
+  44,
+  995,
+  364,
+  214,
+  397,
+  480,
+  880,
+  555,
+  982,
+  422,
+  262,
+  467,
+  655,
+  2,
+  145,
+  177,
+  703,
+  931,
+  990,
+  298,
+  331,
+  927,
+  114,
+  184,
+  647,
+  969,
+  398,
+  582,
+  419,
+  795,
+  320,
+  103,
+  807,
   267,
-  558,
-  688,
-  806,
-  944,
-  79,
+  124,
+  991,
+  97,
+  566,
   119,
-  416,
-  715,
-  389,
-  267,
-  333,
-  579,
-  882,
-  278,
-  972,
-  767,
-  890,
-  412,
-  110,
-  525,
-  605,
-  273,
-  857,
-  312,
+  493,
+  491,
+  886,
+  803,
+  387,
+  906,
+  601,
+  775,
+  700,
+  560,
+  984,
+  206,
+  393,
+  475,
+  648,
+  584,
+  792,
+  543,
+  624,
+  213,
+  106,
+  606,
+  391,
+  621,
+  527,
+  112,
+  50,
+  118,
+  745,
+  734,
+  600,
+  285,
+  401,
+  567,
+  490,
+  709,
+  529,
+  93,
+  681,
+  373,
+  576,
+  66,
+  413,
+  427,
+  987,
+  261,
+  80,
+  710,
+  910,
+  65,
+  413,
+  210,
+  871,
+  420,
+  688,
+  181,
+  371,
+  708,
+  628,
+  270,
+  279,
+  253,
+  11,
+  429,
+  805,
+  968,
+  181,
+  205,
   841,
-  312,
-  76,
-  596,
-  956,
+  246,
+  103,
+  798,
+  431,
+  562,
+  695,
+  168,
+  763,
+  788,
+  779,
+  793,
+  149,
+  801,
+  403,
+  247,
+  983,
+  696,
+  321,
+  818,
+  572,
+  584,
+  355,
+  272,
+  158,
+  325,
+  786,
+  852,
   484,
-  30,
-  230,
-  319,
-  789,
-  586,
-  44,
-  341,
-  434,
+  425,
+  899,
+  505,
+  423,
+  934,
+  456,
+  376,
+  999,
+  546,
+  722,
+  441,
+  734,
+  372,
+  964,
   565,
-  238,
-  907,
-  581,
-  719,
-  944,
-  19,
-  447,
-  599,
-  966,
-  776,
-  472,
-  393,
-  179,
-  350,
-  59,
-  291,
-  317,
-  585,
-  868,
+  833,
+  899,
+  55,
+  66,
+  319,
+  102,
   750,
-  464,
-  35,
-  79,
-  888,
+  168,
+  319,
+  734,
   245,
-  972,
-  150,
-  190,
-  511,
-  785,
-  79,
-  726,
-  51,
-  655,
-  456,
-  474,
-  441,
-  257,
-  664,
-  257,
-  683,
-  70,
-  763,
-  743,
-  208,
-  190,
-  857,
+  481,
+  218,
+  127,
+  939,
+  878,
+  210,
   693,
-  574,
-  626,
-  411,
-  484,
-  434,
-  507,
-  779,
-  306,
-  549,
-  778,
-  512,
-  343,
-  549,
-  679,
-  259,
-  793,
-  492,
-  966,
-  281,
-  787,
-  858,
-  419,
-  580,
-  588,
-  626,
-  166,
-  360,
+  129,
+  364,
+  590,
   780,
-  747,
-  249,
-  856,
-  305,
-  861,
-  383,
-  938,
+  814,
+  45,
+  411,
+  504,
   520,
-  78,
-  311,
-  334,
-  592,
-  8,
-  629,
-  606,
-  623,
-  217,
-  466,
-  378,
-  856,
-  551,
-  458,
-  243,
-  484,
-  294,
-  587,
-  953,
-  749,
-  287,
-  733,
-  796,
+  74,
+  376,
+  714,
+  249,
+  342,
+  790,
+  428,
+  140,
+  814,
+  658,
+  571,
+  850,
+  997,
+  49,
+  723,
+  694,
+  116,
+  535,
+  58,
+  353,
+  671,
+  523,
   498,
+  522,
+  866,
+  378,
+  970,
+  334,
+  714,
+  519,
+  878,
+  456,
+  544,
+  948,
+  314,
+  237,
+  368,
+  448,
+  470,
+  366,
+  672,
+  485,
+  83,
+  675,
+  395,
+  12,
+  548,
+  785,
   534,
-  989,
-  379,
-  804,
-  560,
-  971,
-  333,
-  384,
-  367,
+  40,
+  71,
+  895,
+  378,
+  724,
+  531,
+  675,
+  104,
+  609,
+  820,
+  980,
+  931,
+  359,
+  113,
+  435,
+  974,
+  671,
+  423,
+  131,
+  454,
+  60,
+  78,
+  274,
+  858,
+  188,
+  681,
+  427,
+  440,
+  622,
+  995,
+  90,
+  873,
+  170,
+  237,
+  27,
+  908,
+  959,
   292,
-  898,
+  735,
+  673,
   277,
-  508,
-  58,
-  636,
-  37,
-  312,
+  647,
+  972,
+  275,
+  344,
+  790,
+  767,
+  704,
+  845,
+  78,
+  865,
+  869,
+  172,
+  681,
+  315,
+  258,
+  626,
+  898,
+  776,
+  254,
+  362,
+  734,
+  750,
+  835,
+  920,
+  518,
+  503,
+  33,
+  418,
+  505,
+  570,
+  177,
+  691,
+  142,
+  129,
+  199,
+  244,
+  991,
+  152,
+  971,
+  529,
+  426,
+  585,
+  297,
+  526,
+  217,
   742,
-  879,
-  536,
-  239,
-  240,
-  730,
-  3,
-  593,
-  301,
-  66,
-  144,
-  62,
-  248,
-  634,
-  863,
-  14,
-  579,
-  120,
-  250,
-  322,
-  964,
-  447,
-  727,
-  322,
-  765,
-  268,
-  206,
-  364,
-  515,
-  471,
-  858,
-  438,
+  428,
+  876,
+  297,
+  508,
+  9,
+  884,
+  175,
+  584,
+  535,
+  247,
+  526,
+  745,
+  181,
+  320,
+  558,
+  601,
+  84,
+  806,
+  62,
+  345,
+  940,
+  89,
+  194,
   840,
-  968,
-  13,
-  264,
-  388,
-  75,
-  163,
-  137,
-  999,
-  866,
-  153,
-  356,
-  193,
-  854,
-  718,
-  606,
-  730,
-  162,
+  506,
+  112,
   431,
-  375,
-  917,
-  548,
-  825,
-  99,
-  271,
-  0,
-  303,
-  228,
-  894,
-  370,
-  644,
-  38,
-  532,
-  512,
-  546,
+  552,
+  678,
+  421,
+  83,
+  366,
+  698,
+  30,
+  891,
+  284,
+  983,
+  337,
+  252,
+  244,
+  786,
+  451,
+  266,
+  243,
+  612,
+  13,
+  759,
+  247,
+  815,
+  955,
+  603,
+  727,
+  691,
+  722,
+  202,
+  878,
+  249,
+  30,
+  763,
+  563,
   303,
-  923,
-  170,
-  489,
-  40,
-  82,
-  479,
-  971,
-  452,
   637,
-  557,
-  940,
-  132,
-  908,
-  268,
-  774,
-  932,
-  786,
-  976,
-  491,
-  710,
-  197,
-  554,
-  532,
+  284,
+  439,
+  890,
+  835,
+  211,
+  732,
+  418,
+  27,
+  615,
+  807,
+  215,
+  663,
+  510,
+  114,
+  353,
+  573,
+  248,
+  153,
+  605,
+  310,
+  144,
+  94,
+  691,
+  219,
+  714,
+  691,
+  276,
+  838,
+  687,
+  260,
+  90,
+  826,
+  966,
+  630,
+  415,
   265,
-  909,
-  18,
-  758,
-  213,
-  45,
+  310,
+  696,
+  279,
+  392,
+  862,
+  532,
   698,
-  180,
-  990,
-  471,
-  610,
-  575,
-  659,
-  412,
-  595,
-  275,
-  498,
-  713,
-  306,
-  259,
-  1,
-  253,
-  316,
-  357,
-  155,
-  55,
-  520,
-  687,
-  350,
-  644,
-  974,
-  945,
-  277,
-  654,
-  850,
-  412,
-  847,
-  384,
-  820,
-  512,
-  979,
-  21,
-  823,
-  299,
-  93,
-  793,
-  204,
-  925,
-  130,
-  103,
-  314,
-  105,
-  564,
-  762,
-  524,
-  478,
-  178,
-  807,
-  56,
-  916,
-  711,
-  511,
-  111,
-  865,
-  110,
-  195,
-  982,
-  171,
-  631,
-  960,
-  640,
-  584,
-  600,
-  770,
-  669,
-  649,
-  51,
-  212,
-  828,
-  973,
   448,
+  205,
+  434,
+  153,
+  212,
+  149,
+  970,
+  66,
+  850,
+  553,
+  739,
+  319,
+  616,
+  16,
   101,
-  856,
-  801,
-  679,
-  694,
-  242,
-  334,
-  620,
-  160,
-  667,
-  891,
-  791,
-  659,
-  107,
-  865,
-  126,
-  882,
-  675,
-  726,
-  234,
-  346,
-  875,
-  88,
-  115,
-  592,
-  729,
-  299,
-  177,
-  210,
-  456,
-  766,
-  928,
-  837,
-  417,
-  856,
-  631,
-  142,
-  640,
+  600,
+  845,
+  226,
   848,
-  805,
-  989,
-  509,
-  106,
-  440,
-  276,
-  581,
-  117,
-  187,
-  565,
-  620,
-  433,
-  475,
-  873,
-  626,
-  342,
-  455,
-  373,
-  767,
-  855,
-  866,
-  942,
-  108,
-  117,
-  799,
-  85,
-  936,
-  665,
+  921,
+  625,
+  239,
+  414,
+  822,
+  217,
+  527,
+  12,
+  458,
+  835,
+  420,
+  584,
+  335,
+  98,
+  347,
   975,
-  750,
-  35,
-  769,
-  889,
-  610,
-  210,
-  220,
-  359,
-  981,
-  728,
-  649,
-  0,
-  826,
-  950,
-  120,
-  648,
-  58,
-  383,
-  436,
-  737,
-  11,
-  714,
-  424,
-  251,
-  301,
-  204,
-  287,
-  183,
-  472,
-  265,
-  120,
-  780,
-  369,
-  695,
-  758,
-  740,
-  107,
-  831,
-  93,
-  535,
-  306,
-  777,
-  976,
-  562,
-  59,
-  956,
-  304,
-  83,
-  576,
-  399,
-  999,
-  899,
-  824,
-  350,
-  635,
-  896,
-  802,
-  332,
-  421,
-  878,
-  433,
-  193,
-  353,
-  802,
-  683,
-  456,
-  88,
-  211,
-  132,
   432,
-  354,
-  421,
-  616,
-  53,
-  231,
-  915,
-  510,
-  106,
+  966,
+  138,
+  454,
+  523,
+  660,
+  171,
+  75,
+  50,
+  734,
+  110,
+  584,
+  368,
+  406
+};
+const int idx[4998] = {
+  34,
+  56,
+  132,
+  163,
+  256,
+  260,
+  418,
+  431,
+  466,
+  494,
+  497,
+  49,
+  64,
+  103,
+  165,
+  225,
+  330,
+  339,
+  469,
+  478,
+  494,
+  497,
+  9,
   28,
-  32,
-  600,
+  82,
+  111,
+  155,
+  282,
+  365,
+  451,
+  453,
   461,
-  131,
-  594,
-  678,
-  744,
-  674,
-  620,
-  290,
-  535,
-  534,
-  543,
-  62,
-  971,
-  905,
-  180,
-  10,
-  234,
-  166,
-  272,
-  73,
-  128,
-  437,
-  613,
-  291,
-  638,
-  610,
-  225,
-  630,
-  309,
-  112,
-  868,
-  557,
-  439,
-  355,
-  555,
-  579,
-  443,
-  843,
-  20,
-  464,
-  987,
-  284,
-  302,
-  450,
+  49,
+  74,
+  81,
+  241,
+  349,
   355,
-  83,
-  407,
-  711,
-  752,
-  187,
-  249,
-  807,
-  883,
-  924,
-  858,
-  110,
-  409,
-  189,
-  998,
-  439,
-  120,
-  321,
-  875,
-  140,
-  640,
-  285,
-  561,
-  873,
+  448,
+  473,
+  51,
+  59,
+  122,
+  258,
+  283,
+  381,
+  18,
+  50,
+  193,
+  227,
+  257,
+  356,
+  467,
+  1,
+  32,
+  43,
+  61,
+  81,
+  210,
+  245,
+  298,
+  362,
+  373,
+  442,
+  18,
+  133,
+  163,
+  211,
+  230,
+  279,
+  326,
+  387,
+  408,
+  472,
+  60,
+  94,
+  143,
+  246,
+  262,
+  297,
+  309,
+  324,
+  327,
+  351,
+  361,
   371,
-  73,
-  4,
-  169,
-  771,
+  380,
+  455,
+  463,
+  25,
+  80,
+  126,
+  128,
+  173,
+  217,
+  220,
+  233,
+  242,
+  293,
+  348,
   413,
   447,
-  985,
-  206,
-  635,
-  943,
-  960,
-  240,
-  554,
-  209,
-  576,
-  254,
+  125,
   163,
-  977,
-  846,
-  610,
-  596,
-  920,
-  524,
-  608,
-  402,
-  249,
-  624,
-  180,
-  875,
-  240,
-  670,
-  421,
-  1,
-  911,
-  505,
-  474,
-  979,
-  623,
-  678,
-  952,
-  909,
-  751,
-  241,
-  269,
-  968,
-  396,
-  641,
-  516,
-  965,
-  406,
-  54,
-  853,
+  179,
+  217,
+  342,
   346,
-  650,
-  787,
-  400,
-  175,
-  929,
-  662,
-  870,
-  170,
-  468,
-  173,
-  620,
-  318,
-  170,
-  995,
-  525,
-  138,
-  520,
-  151,
-  851,
-  30,
-  596,
-  605,
-  802,
-  449,
-  174,
-  518,
-  633,
-  293,
-  652,
-  779,
-  606,
-  444,
-  472,
-  359,
-  204,
-  308,
-  104,
-  274,
-  707,
-  638,
-  193,
-  577,
-  125,
-  28,
-  537,
-  987,
-  521,
-  80,
-  56,
-  111,
-  589,
-  81,
-  794,
-  377,
-  36,
-  680,
-  476,
-  227,
-  778,
-  138,
+  352,
+  389,
+  434,
+  493,
+  18,
+  26,
+  182,
+  220,
+  226,
+  263,
+  332,
+  340,
+  403,
+  1,
   24,
-  752,
-  160,
-  590,
-  855,
-  396,
-  289,
-  142,
-  785,
-  551,
-  696,
-  514,
-  268,
-  536,
-  547,
-  207,
-  943,
-  166,
-  0,
-  959,
-  114,
-  322,
-  906,
-  322,
-  892,
-  960,
+  27,
+  71,
+  127,
+  140,
+  263,
+  374,
+  380,
+  424,
+  426,
+  231,
+  237,
+  243,
+  319,
+  353,
+  431,
+  437,
+  441,
+  35,
+  91,
+  233,
+  271,
+  272,
+  292,
+  381,
+  83,
+  117,
+  121,
+  149,
   152,
-  219,
-  944,
-  540,
-  874,
-  965,
-  269,
-  858,
-  681,
-  764,
-  673,
-  30,
-  954,
-  88,
-  521,
-  729,
   159,
-  275,
-  56,
-  125,
-  755,
-  556,
-  505,
-  72,
-  919,
-  180,
-  714,
-  476,
-  557,
-  286,
-  639,
-  983,
-  152,
-  572,
-  584,
-  774,
-  510,
-  716,
-  601,
-  148,
-  732,
-  601,
-  940,
-  969,
-  20,
-  190,
-  364,
-  622,
-  685,
-  61,
-  344,
-  196,
-  7,
-  990,
-  899,
-  252,
-  754,
-  435,
-  284,
+  412,
+  484,
+  489,
+  63,
+  164,
+  170,
+  311,
+  32,
+  68,
+  82,
+  91,
+  115,
+  120,
   201,
-  722,
-  552,
-  343,
-  657,
-  969,
-  888,
-  215,
-  691,
-  409,
-  26,
-  814,
-  955,
-  756,
-  555,
-  490,
-  721,
-  618,
-  204,
-  30,
-  599,
-  134,
-  692,
-  978,
-  825,
-  270,
-  841,
-  504,
-  774,
-  525,
-  384,
-  45,
-  973,
-  630,
-  292,
-  407,
-  67,
-  655,
-  51,
-  321,
-  712,
-  920,
-  987,
-  848,
-  722,
-  54,
-  844,
-  881,
-  2,
-  745,
-  543,
-  18,
-  346,
-  886,
-  284,
-  553,
-  327,
-  745,
-  802,
-  253,
-  852,
-  636,
+  236,
+  252,
+  275,
   390,
-  455,
-  868,
-  740,
-  663,
-  964,
-  729,
-  838,
-  160,
-  466,
-  658,
-  934,
-  788,
-  92,
-  286,
-  175,
-  248,
-  540,
-  880,
-  948,
-  738,
-  221,
-  979,
-  785,
-  992,
-  482,
-  300,
-  55,
-  307,
-  541,
-  695,
-  226,
-  659,
-  648,
-  922,
-  441,
-  203,
-  794,
-  22,
-  970,
-  164,
+  437,
+  20,
   46,
-  259,
-  951,
-  704,
-  886,
-  299,
-  673,
-  173,
-  240,
-  807,
-  719,
-  658,
-  194,
-  357,
-  971,
-  821,
-  711,
-  707,
-  225,
-  482,
-  734,
+  72,
+  77,
+  80,
+  108,
+  118,
+  150,
+  249,
+  282,
+  384,
+  458,
+  486,
+  28,
+  70,
   77,
-  917,
-  665,
-  867,
-  755,
-  544,
-  326,
-  524,
-  598,
   78,
-  244,
-  906,
-  617,
-  928,
-  395,
-  658,
-  732,
-  601,
-  421,
-  359,
-  459,
-  727,
-  409,
-  806,
+  100,
+  261,
+  311,
+  318,
+  394,
+  465,
+  469,
+  489,
+  21,
+  159,
+  250,
+  386,
+  478,
+  57,
+  70,
+  180,
+  217,
+  276,
   285,
-  943,
-  207,
-  630,
-  752,
-  85,
-  819,
-  81,
-  714,
-  599,
-  44,
-  892,
-  139,
-  813,
-  684,
-  175,
-  718,
-  720,
-  697,
-  401,
-  310,
-  84,
-  666,
-  259,
-  357,
-  939,
-  246,
-  527,
-  856,
-  455,
-  533,
-  717,
-  790,
-  923,
-  962,
-  105,
-  447,
-  598,
-  8,
-  941,
-  409,
-  510,
-  130,
-  823,
-  606,
-  773,
-  511,
-  574,
+  291,
+  303,
+  312,
+  318,
+  370,
+  371,
+  426,
+  477,
+  86,
+  122,
+  128,
+  292,
+  309,
+  314,
+  335,
+  421,
+  422,
+  427,
+  452,
+  480,
+  488,
+  45,
+  97,
   98,
-  731,
-  402,
-  862,
-  752,
-  623,
-  991,
-  46,
+  106,
+  302,
+  364,
+  437,
+  7,
+  96,
+  100,
+  130,
+  174,
   307,
-  347,
-  826,
-  698,
-  658,
-  35,
-  642,
-  770,
-  293,
-  385,
-  50,
-  470,
-  908,
-  177,
-  919,
-  460,
-  783,
-  812,
-  885,
-  144,
-  408,
-  659,
-  741,
-  639,
-  741,
-  234,
-  361,
-  975,
-  361,
-  934,
-  345,
-  46,
-  370,
-  804,
-  357,
-  22,
-  797,
-  24,
-  698,
-  274,
-  669,
-  711,
-  610,
+  89,
+  317,
+  354,
+  390,
+  406,
+  498,
+  61,
+  64,
+  130,
+  268,
+  312,
+  349,
+  480,
+  9,
+  47,
   104,
-  699,
-  121,
-  724,
-  99,
-  296,
-  870,
-  786,
-  907,
-  517,
-  300,
-  369,
-  115,
-  987,
-  98,
-  420,
-  792,
-  167,
-  589,
-  81,
-  929,
-  901,
+  169,
+  170,
+  315,
+  399,
+  437,
   444,
-  109,
-  382,
-  693,
-  593,
-  875,
-  545,
-  683,
-  487,
-  631,
-  35,
-  664,
-  35,
-  465,
-  381,
-  502,
-  512,
-  213,
-  325,
-  921,
-  435,
-  368,
+  469,
+  117,
+  183,
+  192,
+  225,
   265,
-  897,
-  888,
-  773,
-  659,
-  636,
-  822,
-  940,
-  704,
-  937,
-  990,
-  380,
-  22,
-  806,
+  371,
+  43,
+  81,
+  123,
+  224,
+  257,
+  285,
+  321,
+  329,
+  338,
+  436,
+  446,
+  475,
+  11,
+  23,
+  141,
+  163,
+  268,
+  398,
+  408,
+  416,
+  430,
+  8,
+  84,
+  318,
+  389,
   443,
-  272,
+  488,
+  8,
+  53,
+  149,
+  172,
   226,
-  75,
-  390,
-  701,
-  604,
-  103,
-  834,
-  836,
-  128,
-  776,
-  390,
-  490,
-  761,
-  481,
-  372,
-  204,
-  99,
-  91,
-  22,
-  808,
-  253,
-  230,
-  576,
-  111,
-  530,
-  569,
-  205,
-  79,
-  723,
-  69,
-  129,
-  157,
-  690,
-  663,
-  960,
-  928,
-  549,
-  861,
-  858,
-  688,
-  269,
-  88,
-  740,
-  156,
-  907,
-  39,
-  916,
-  907,
-  334,
-  924,
-  489,
-  523,
-  243,
-  832,
-  196,
-  238,
-  353,
-  1,
-  7,
-  314,
-  127,
-  188,
-  96,
-  15,
-  805,
-  54,
+  308,
+  362,
+  466,
   9,
-  827,
-  404,
-  908,
-  152,
-  993,
-  739,
-  18,
-  830,
-  225,
-  119,
-  544,
-  559,
-  312,
-  438,
-  641,
-  301,
-  560,
-  392,
-  365,
-  576,
-  955,
-  898,
-  503,
+  12,
+  32,
+  114,
+  134,
+  226,
+  240,
+  393,
+  138,
+  153,
+  202,
+  216,
+  227,
+  322,
+  358,
+  369,
+  396,
+  427,
+  455,
+  490,
+  22,
+  85,
   118,
-  601,
-  848,
-  464,
-  83,
-  817,
-  190,
-  930,
-  333,
-  675,
-  660,
-  97,
-  975,
-  412,
-  292,
+  181,
+  237,
+  321,
+  338,
+  348,
+  480,
+  0,
+  5,
+  9,
+  12,
+  119,
+  163,
+  226,
+  231,
+  246,
+  259,
+  383,
   419,
+  451,
+  144,
+  146,
+  174,
+  225,
+  309,
+  366,
+  368,
+  395,
   456,
-  795,
-  937,
-  793,
-  775,
-  168,
-  22,
+  117,
+  157,
+  169,
+  178,
+  221,
+  229,
+  244,
+  255,
   285,
-  446,
-  516,
-  479,
-  419,
-  80,
-  724,
-  440,
-  812,
-  799,
-  215,
-  257,
-  254,
-  998,
-  103,
-  914,
-  559,
-  536,
-  588,
-  833,
-  464,
-  188,
-  548,
-  869,
-  359,
-  478,
-  711,
-  413,
-  236,
-  826,
-  534,
-  811,
-  997,
-  919,
-  179,
-  790,
-  869,
-  958,
-  428,
-  792,
-  503,
-  118,
-  329,
-  350,
-  240,
-  390,
-  989,
+  296,
+  328,
+  358,
+  375,
+  429,
+  454,
+  468,
+  473,
+  13,
+  18,
+  84,
+  202,
+  211,
+  370,
+  425,
+  441,
+  456,
+  45,
+  174,
+  177,
+  219,
+  234,
+  304,
+  309,
+  319,
+  418,
+  39,
+  69,
+  161,
+  190,
+  277,
+  289,
+  319,
+  340,
   365,
-  170,
-  270,
-  362,
-  823,
+  429,
+  486,
+  74,
+  130,
+  175,
+  280,
+  306,
+  326,
+  443,
+  450,
+  457,
+  487,
+  497,
+  25,
+  45,
+  138,
+  275,
   277,
-  978,
-  293,
-  777,
-  833,
-  515,
-  336,
-  976,
-  174,
-  532,
-  206,
-  600,
-  236,
-  270,
-  737,
-  513,
-  511,
-  672,
-  679,
-  854,
-  554,
-  295,
-  755,
-  523,
-  932,
-  750,
-  520,
-  450,
-  535,
-  586,
-  41,
-  2,
-  357,
-  349,
-  195,
-  5,
-  421,
-  165,
-  148,
-  341,
-  548,
-  200,
-  620,
-  554,
-  759,
-  518,
-  145,
-  722,
-  932,
-  586,
-  186,
-  189,
-  713,
-  830,
-  193,
-  436,
-  92,
-  883,
+  288,
+  388,
+  398,
+  459,
+  461,
+  463,
+  8,
+  52,
+  59,
+  70,
+  90,
+  98,
+  153,
+  171,
+  237,
+  422,
+  468,
+  1,
+  43,
+  83,
+  119,
+  222,
+  251,
+  325,
+  375,
+  391,
+  498,
+  29,
+  37,
+  73,
+  77,
+  93,
+  95,
   115,
-  46,
-  257,
-  114,
-  244,
-  303,
-  658,
-  66,
-  395,
-  469,
-  697,
-  430,
-  317,
-  184,
-  224,
-  362,
-  429,
-  493,
-  506,
-  218,
-  593,
-  279,
-  450,
-  567,
-  823,
-  411,
-  889,
-  871,
-  439,
-  366,
-  693,
-  160,
-  602,
-  813,
-  85,
-  824,
-  224,
-  144,
-  721,
-  540,
-  880,
+  128,
+  162,
+  282,
+  349,
+  376,
+  381,
+  434,
   444,
-  222,
-  843,
-  704,
-  285,
-  480,
-  71,
-  556,
+  449,
+  51,
+  116,
+  142,
+  292,
+  310,
+  331,
+  392,
+  417,
+  143,
+  261,
+  307,
+  368,
+  377,
+  386,
+  0,
+  156,
+  159,
+  170,
+  179,
+  226,
+  230,
+  274,
+  374,
+  386,
+  439,
+  464,
+  108,
+  117,
+  120,
+  180,
+  191,
+  230,
+  250,
+  264,
+  278,
+  286,
+  291,
+  306,
+  309,
+  363,
   404,
-  959,
-  31,
-  235,
-  826,
-  228,
-  372,
-  477,
-  993,
-  269,
-  254,
-  432,
-  643,
+  427,
+  443,
+  451,
+  10,
+  13,
+  26,
+  39,
+  49,
+  69,
+  115,
+  210,
+  226,
+  262,
+  348,
   380,
+  416,
+  418,
+  38,
+  85,
+  170,
+  179,
+  180,
+  221,
+  325,
+  460,
+  65,
+  249,
+  276,
+  448,
+  449,
+  474,
+  99,
+  124,
+  407,
+  411,
+  423,
+  438,
+  440,
+  41,
+  52,
+  152,
+  226,
+  229,
+  400,
+  408,
+  415,
+  450,
   81,
-  642,
-  794,
-  462,
-  386,
-  625,
-  787,
-  623,
-  528,
-  718,
-  472,
+  102,
+  116,
+  138,
+  145,
+  169,
+  180,
+  213,
+  224,
+  262,
+  268,
+  312,
+  344,
+  356,
+  454,
+  28,
+  40,
   82,
-  225,
-  488,
-  488,
-  382,
-  114,
-  741,
-  356,
+  110,
+  143,
+  175,
+  241,
+  251,
+  286,
+  360,
+  424,
+  450,
+  18,
+  94,
+  127,
+  144,
+  153,
+  227,
   237,
-  434,
-  915,
-  593,
-  334,
-  875,
-  525,
-  846,
-  418,
-  726,
-  633,
-  9,
-  228,
-  131,
-  198,
-  922,
-  681,
-  218,
-  435,
-  803,
-  310,
-  641,
+  282,
+  300,
+  385,
+  395,
+  396,
+  424,
+  453,
+  115,
+  121,
+  212,
+  221,
+  246,
   258,
-  90,
-  521,
-  538,
-  971,
-  301,
-  904,
-  31,
-  805,
-  745,
-  702,
-  285,
-  511,
-  591,
+  358,
+  370,
+  426,
+  30,
+  78,
+  88,
+  137,
+  288,
+  380,
+  384,
+  391,
+  392,
+  9,
+  110,
+  196,
+  312,
+  356,
+  419,
+  40,
+  52,
+  106,
+  171,
+  213,
+  253,
+  278,
+  364,
+  367,
+  375,
+  460,
+  474,
+  488,
+  490,
+  3,
+  14,
+  115,
+  260,
+  414,
+  490,
+  25,
+  52,
+  98,
+  102,
+  109,
+  146,
+  160,
+  168,
+  205,
+  235,
+  332,
+  390,
+  400,
+  75,
+  146,
+  209,
+  262,
+  276,
+  307,
+  330,
+  337,
+  384,
+  401,
   404,
-  739,
-  157,
-  12,
-  212,
-  69,
-  478,
-  627,
-  720,
-  177,
-  290,
-  417,
-  585,
-  965,
-  881,
-  508,
-  92,
-  443,
-  655,
-  217,
-  758,
-  203,
-  491,
-  497,
-  753,
-  347,
-  582,
-  15,
-  142,
-  301,
-  481,
-  728,
-  242,
-  325,
-  272,
-  127,
-  694,
-  174,
-  851,
-  309,
-  486,
-  520,
+  433,
   498,
-  794,
+  19,
+  44,
+  58,
+  101,
+  136,
   155,
-  671,
-  872,
-  698,
-  579,
-  771,
-  665,
-  591,
-  806,
-  984,
-  37,
-  886,
-  580,
-  305,
-  103,
-  585,
-  234,
-  918,
-  62,
-  857,
-  548,
-  295,
-  618,
-  901,
-  12,
-  20,
-  59,
-  291,
-  376,
-  299,
-  339,
-  10,
-  586,
-  540,
-  972,
-  682,
+  314,
+  349,
+  383,
+  400,
+  463,
+  472,
   473,
-  340,
-  820,
-  752,
-  332,
-  93,
-  973,
-  434,
-  39,
-  526,
-  841,
-  955,
-  270,
+  103,
+  274,
+  322,
+  370,
+  375,
+  416,
+  445,
+  480,
+  67,
+  152,
+  228,
+  238,
+  298,
+  303,
+  324,
+  400,
+  419,
+  442,
+  455,
+  474,
+  22,
+  40,
+  70,
+  101,
   116,
-  778,
-  140,
-  878,
-  509,
-  760,
-  216,
-  851,
-  836,
+  221,
+  244,
+  276,
+  286,
+  328,
+  337,
+  379,
+  417,
+  428,
+  480,
+  22,
+  101,
+  168,
+  222,
+  239,
+  290,
+  404,
+  482,
+  18,
+  54,
+  242,
+  289,
+  303,
+  358,
+  388,
+  409,
+  486,
+  499,
+  14,
+  102,
+  240,
+  261,
+  441,
   475,
-  33,
-  884,
-  382,
-  264,
-  324,
-  787,
-  640,
-  793,
-  686,
-  280,
-  115,
-  461,
-  258,
-  5,
-  461,
-  527,
-  672,
-  196,
-  813,
-  585,
-  387,
-  413,
-  339,
-  113,
-  767,
-  564,
-  10,
-  332,
-  500,
-  311,
-  282,
-  143,
-  108,
-  29,
-  966,
-  13,
-  837,
-  241,
-  431,
-  51,
-  564,
-  414,
-  835,
-  855,
-  71,
-  885,
-  990,
   86,
-  340,
-  225,
+  103,
+  115,
+  126,
+  203,
+  216,
+  280,
+  335,
+  368,
+  449,
+  15,
+  111,
+  325,
+  352,
+  365,
+  377,
+  420,
+  449,
+  454,
+  492,
+  76,
+  87,
+  139,
+  166,
   179,
-  12,
-  795,
-  628,
-  615,
-  167,
-  756,
+  186,
+  368,
+  376,
+  434,
+  176,
+  190,
+  192,
+  214,
+  225,
+  229,
   274,
-  154,
-  484,
-  607,
-  155,
-  522,
-  699,
+  300,
+  313,
+  321,
+  324,
+  455,
+  468,
+  494,
+  48,
+  79,
+  148,
+  178,
+  282,
+  333,
+  433,
+  0,
+  23,
+  44,
+  49,
+  227,
+  249,
+  389,
+  397,
+  402,
+  439,
+  461,
+  16,
+  63,
+  68,
+  81,
+  100,
+  109,
+  138,
+  139,
+  210,
+  231,
+  277,
+  304,
+  124,
+  266,
+  329,
+  358,
+  388,
   407,
-  582,
-  710,
-  535,
-  153,
-  417,
-  349,
-  37,
-  743,
-  966,
-  840,
-  230,
-  83,
-  759,
-  610,
-  31,
-  962,
-  561,
-  19,
-  702,
+  482,
+  24,
+  55,
+  63,
+  111,
+  249,
+  21,
+  61,
+  105,
+  146,
+  243,
+  274,
+  362,
+  396,
+  487,
+  64,
+  85,
+  130,
+  228,
+  359,
+  404,
+  446,
+  487,
+  2,
+  13,
+  60,
+  74,
+  127,
+  181,
+  209,
+  308,
+  410,
+  418,
+  110,
+  206,
+  207,
+  227,
+  264,
+  301,
+  325,
+  370,
+  382,
+  395,
+  398,
+  436,
   56,
-  838,
-  235,
-  47,
-  393,
-  700,
-  873,
-  548,
-  419,
-  508,
-  320,
   91,
-  70,
-  693,
-  587,
-  889,
-  716,
-  7,
-  213,
-  628,
-  603,
-  411,
-  351,
-  79,
-  220,
-  823,
-  919,
-  430,
-  423,
+  134,
+  192,
+  206,
+  219,
+  222,
+  300,
+  403,
+  482,
+  30,
+  168,
+  210,
+  234,
+  260,
+  330,
+  340,
+  350,
+  498,
+  21,
+  116,
+  317,
+  318,
   336,
-  265,
-  161,
-  357,
-  184,
-  821,
-  598,
-  529,
-  663,
-  197,
-  655,
-  620,
-  749,
-  488,
-  130,
+  433,
+  487,
+  494,
+  497,
+  75,
+  127,
+  268,
+  287,
+  385,
+  407,
+  446,
+  484,
+  157,
+  207,
+  256,
+  363,
+  472,
+  484,
+  11,
+  116,
+  124,
+  137,
+  175,
+  471,
+  71,
+  74,
+  132,
+  180,
+  297,
+  355,
+  363,
+  382,
+  469,
+  84,
+  119,
+  239,
+  339,
+  437,
+  8,
   45,
-  861,
-  912,
-  383,
-  273,
-  357,
-  285,
-  244,
-  860,
-  867,
-  156,
-  540,
-  428,
-  250,
-  383,
-  327,
-  125,
-  170,
-  226,
-  163,
-  295,
-  901,
-  703,
-  992,
-  625,
-  805,
-  143,
-  416,
-  488,
   83,
-  838,
-  901,
-  832,
-  722,
-  33,
-  565,
-  957,
-  386,
-  255,
-  529,
-  22,
-  385,
-  641,
-  3,
-  975,
-  43,
-  360,
-  374,
-  26,
-  50,
-  513,
-  623,
-  498,
-  962,
+  110,
+  141,
+  211,
+  224,
+  269,
+  271,
+  344,
+  444,
+  449,
+  488,
+  13,
+  53,
+  76,
+  219,
+  235,
+  243,
+  292,
+  317,
+  381,
+  494,
+  85,
+  120,
+  121,
+  162,
+  181,
+  192,
+  219,
+  242,
+  247,
+  293,
+  306,
+  484,
   47,
-  824,
-  955,
-  947,
-  877,
-  718,
-  305,
-  433,
-  838,
-  16,
-  971,
-  56,
-  315,
+  53,
+  202,
+  223,
+  238,
+  284,
+  323,
+  394,
+  395,
+  53,
+  58,
+  61,
+  72,
+  73,
+  138,
+  146,
+  216,
+  291,
+  25,
+  39,
+  100,
+  184,
+  222,
+  239,
+  287,
+  331,
+  438,
+  24,
   40,
-  251,
-  32,
-  776,
-  910,
-  502,
-  872,
-  404,
+  48,
+  76,
+  91,
+  119,
+  142,
+  143,
+  156,
+  258,
+  332,
+  398,
+  493,
+  25,
+  63,
+  228,
+  313,
+  339,
+  363,
+  385,
+  90,
+  109,
+  124,
+  159,
+  229,
+  478,
   24,
-  266,
-  655,
-  444,
   38,
-  433,
-  166,
-  251,
-  737,
-  585,
-  802,
-  879,
-  316,
-  909,
-  85,
-  530,
-  162,
-  819,
-  420,
-  995,
-  655,
-  546,
-  83,
-  666,
-  491,
-  224,
-  436,
-  981,
-  473,
-  206,
-  574,
-  977,
-  573,
-  905,
-  370,
-  928,
-  524,
-  974,
-  177,
-  667,
-  662,
-  121,
-  514,
-  916,
-  830,
-  801,
-  455,
-  43,
-  986,
-  364,
-  479,
-  667,
-  157,
-  546,
-  927,
-  120,
-  882,
-  184,
-  769,
-  480,
-  892,
-  324,
-  822,
-  947,
-  608,
-  704,
-  503,
-  888,
-  28,
-  741,
-  735,
-  189,
-  673,
-  549,
-  13,
-  594,
-  331,
-  965,
-  430,
-  323,
-  625,
-  845,
-  487,
-  704,
-  232,
-  774,
-  239,
-  323,
-  458,
-  415,
-  843,
-  822,
-  500,
-  699,
-  940,
-  198,
-  205,
-  274,
-  723,
-  728,
-  817,
-  307,
-  500,
-  942,
-  294,
-  475,
-  840,
-  245,
-  863,
-  692,
-  884,
-  15,
-  43,
-  589,
-  639,
-  584,
-  66,
-  194,
-  473,
-  487,
-  382,
-  984,
-  855,
-  19,
-  764,
-  751,
-  420,
-  783,
-  774,
-  692,
-  537,
-  467,
-  185,
-  506,
+  98,
+  131,
+  225,
+  265,
+  293,
+  339,
+  422,
+  18,
+  51,
+  76,
+  170,
   348,
-  617,
-  961,
-  109,
-  118,
-  833,
-  725,
-  706,
+  390,
+  437,
+  41,
   47,
-  641,
-  69,
-  382,
-  892,
-  613,
-  168,
-  546,
-  72,
-  287,
-  658,
-  280,
-  961,
-  11,
-  786,
-  468,
-  65,
-  25,
-  145,
-  746,
-  846,
-  911,
-  574,
-  392,
-  779,
-  746,
-  711,
-  935,
-  796,
-  482,
-  506,
-  772,
-  873,
-  712,
-  546,
-  93,
-  546,
-  28,
-  757,
-  858,
-  313,
-  663,
-  914,
-  858,
-  508,
-  945,
-  912,
-  223,
-  945,
-  200,
-  313,
-  367,
+  303,
   309,
-  487,
-  637,
-  824,
-  869,
-  534,
-  699,
-  79,
-  510,
-  860,
-  34,
-  420,
-  255,
-  493,
-  790,
-  310,
-  444,
-  113,
-  719,
-  695,
-  358,
-  148,
-  947,
+  317,
+  347,
+  352,
+  407,
+  149,
+  219,
+  242,
+  254,
+  304,
+  339,
   483,
-  821,
-  59,
-  835,
-  434,
-  903,
-  41,
-  634,
-  592,
-  594,
-  150,
-  410,
-  598,
-  14,
-  961,
-  97,
-  942,
-  79,
-  466,
-  17,
-  112,
-  830,
-  751,
-  454,
-  84,
-  374,
-  264,
-  624,
-  963,
-  372,
+  488,
+  42,
   81,
-  536,
-  775,
-  159,
-  372,
-  174,
-  707,
-  399,
-  984,
-  57,
-  648,
-  923,
-  258,
-  417,
-  86,
-  978,
-  982,
-  414,
-  147,
-  403,
-  610,
-  251,
-  571,
-  656,
-  151,
-  156,
-  812,
-  621,
-  669,
+  97,
+  100,
+  103,
+  221,
+  288,
+  369,
+  423,
+  434,
+  19,
+  98,
+  208,
+  240,
+  248,
+  349,
+  486,
+  495,
+  1,
+  12,
+  100,
+  134,
+  181,
+  186,
+  226,
+  246,
+  284,
+  335,
+  384,
+  450,
+  67,
+  95,
+  101,
+  207,
+  215,
+  217,
+  245,
+  254,
+  300,
+  325,
+  384,
+  400,
+  430,
+  14,
   21,
-  148,
-  31,
+  36,
+  39,
   74,
-  77,
-  49,
-  175,
-  263,
-  527,
-  797,
-  797,
-  775,
-  553,
-  981,
-  898,
-  725,
-  357,
-  116,
-  678,
-  297,
-  357,
-  496,
-  159,
-  750,
-  979,
   145,
-  331,
-  691,
-  711,
-  921,
-  829,
-  284,
-  217,
-  581,
-  203,
-  124,
-  670,
-  62,
-  544,
-  289,
+  173,
+  190,
   240,
-  308,
-  333,
-  829,
-  758,
-  48,
-  339,
-  468,
-  795,
-  844,
-  212,
-  623,
-  954,
-  946,
-  951,
-  531,
-  119,
-  806,
-  153,
-  382,
-  632,
-  472,
-  665,
-  241,
-  794,
-  786,
-  436,
-  323,
-  840,
-  594,
-  95,
-  175,
-  134,
-  796,
-  940,
-  747,
-  997,
-  360,
-  755,
-  467,
-  711,
-  275,
-  449,
-  291,
-  217,
-  677,
-  446,
-  422,
-  225,
-  302,
-  8,
-  957,
-  836,
-  901,
-  37,
-  919,
+  343,
+  364,
+  374,
+  385,
   426,
-  623,
-  94,
-  105,
-  654,
-  752,
+  451,
+  490,
+  495,
+  76,
+  87,
+  89,
+  102,
+  150,
+  285,
   464,
-  323,
-  877,
-  954,
-  228,
-  375,
-  752,
-  743,
-  349,
-  350,
-  181,
-  532,
-  97,
-  777,
-  935,
-  148,
-  433,
-  153,
-  973,
-  525,
-  131,
-  947,
-  752,
-  692,
-  927,
-  84,
-  270,
+  494,
+  3,
+  88,
   152,
-  62,
-  676,
-  772,
-  301,
-  542,
-  874,
-  841,
-  976,
-  442,
-  540,
-  397,
-  922,
-  430,
-  729,
-  328,
-  779,
-  624,
-  430,
-  783,
-  852,
-  691,
-  657,
-  553,
-  216,
-  941,
-  965,
+  173,
+  229,
+  284,
+  290,
+  303,
+  411,
+  468,
+  165,
+  167,
+  193,
+  199,
+  209,
+  295,
+  302,
+  322,
+  362,
+  365,
+  455,
+  462,
+  142,
+  155,
+  205,
   248,
-  656,
-  952,
-  514,
-  250,
-  890,
-  502,
-  392,
-  951,
-  357,
-  453,
-  744,
-  557,
-  940,
-  738,
-  207,
-  960,
-  612,
-  410,
-  688,
-  517,
-  612,
-  723,
-  773,
-  269,
-  176,
-  305,
-  210,
-  455,
-  178,
-  764,
-  414,
-  918,
-  958,
-  727,
-  54,
-  74,
-  191,
-  371,
-  376,
-  770,
+  255,
+  271,
   275,
-  82,
-  913,
-  527,
-  249,
-  800,
-  675,
-  387,
-  810,
-  388,
-  503,
-  240,
-  491,
-  28,
-  491,
-  110,
-  133,
-  734,
-  720,
-  476,
-  943,
-  315,
-  810,
-  672,
-  761,
-  421,
-  269,
-  449,
-  677,
-  98,
-  912,
-  873,
-  36,
-  313,
-  585,
-  401,
-  35,
-  248,
-  301,
-  668,
-  136,
-  88,
-  514,
-  765,
+  18,
   68,
-  160,
-  267,
-  325,
-  663,
-  511,
-  927,
-  524,
-  243,
-  22,
-  126,
-  193,
-  846,
-  233,
-  289,
-  676,
-  783,
-  957,
-  845,
-  673,
-  692,
-  285,
-  763,
-  575,
-  742,
-  791,
-  744,
-  630,
-  650,
-  435,
-  748,
-  128,
-  612,
-  892,
-  729,
-  230,
-  818,
-  271,
-  634,
-  875,
-  930,
-  576,
-  333,
-  589,
-  849,
-  116,
-  143,
+  130,
+  180,
+  207,
+  284,
+  286,
+  299,
+  346,
+  379,
   383,
-  705,
-  321,
-  218,
-  620,
-  142,
-  602,
-  477,
-  31,
-  550,
-  407,
-  552,
-  766,
-  851,
-  17,
-  123,
-  828,
-  678,
-  986,
-  66,
-  629,
-  393,
-  595,
-  319,
-  404,
-  352,
-  95,
-  140,
-  329,
-  357,
-  197,
-  571,
-  46,
-  8,
-  251,
-  628,
-  0,
+  478,
+  21,
+  60,
+  63,
+  168,
+  171,
+  220,
+  273,
+  279,
+  308,
+  324,
   327,
-  965,
-  938,
-  187,
-  95,
-  925,
-  514,
-  566,
-  95,
-  301,
-  153,
-  166,
-  526,
-  648,
-  41,
-  663,
-  145,
-  534,
-  712,
-  452,
-  770,
-  326,
-  518,
-  767,
-  743,
-  726,
-  560,
-  301,
-  198,
-  253,
-  702,
-  177,
-  619,
-  698,
-  645,
-  696,
-  622,
-  686,
-  401,
-  644,
-  124,
-  276,
-  707,
-  746,
+  355,
+  490,
+  88,
+  103,
   136,
+  252,
+  274,
+  310,
+  320,
+  369,
+  391,
+  407,
+  18,
   48,
-  275,
-  263,
-  285,
-  301,
-  59,
-  367,
-  802,
-  225,
-  719,
-  334,
-  91,
-  899,
-  836,
-  39,
-  801,
-  797,
   52,
-  769,
-  941,
-  404,
-  667,
-  842,
-  726,
-  652,
-  538,
-  68,
-  780,
-  305,
-  694,
-  212,
-  208,
-  576,
-  35,
-  505,
-  26,
-  939,
-  402,
-  977,
+  81,
+  99,
+  116,
+  140,
+  156,
+  176,
+  183,
+  186,
+  224,
+  45,
+  172,
+  318,
+  411,
+  428,
+  496,
+  11,
+  12,
+  44,
+  85,
+  144,
+  175,
+  214,
+  242,
   342,
-  4,
-  436,
+  344,
+  383,
+  426,
+  446,
+  491,
+  495,
+  46,
+  59,
+  77,
+  147,
+  175,
+  192,
+  314,
+  315,
+  329,
+  342,
+  393,
+  405,
+  440,
+  45,
+  59,
+  66,
+  108,
+  184,
+  199,
+  211,
+  234,
+  283,
+  343,
+  388,
+  476,
+  25,
+  54,
+  162,
+  164,
+  232,
   287,
-  861,
-  465,
-  898,
-  593,
-  691,
-  341,
-  595,
-  526,
-  722,
-  464,
-  273,
-  301,
-  51,
-  148,
-  888,
-  16,
-  548,
-  760,
-  252,
-  855,
-  690,
-  754,
-  886,
-  625,
-  404,
-  861,
-  546,
-  558,
-  201,
-  715,
-  800,
-  24,
-  464,
-  763,
-  181,
-  111,
+  358,
+  439,
+  467,
+  15,
+  30,
+  66,
+  72,
+  106,
+  156,
+  172,
+  309,
+  311,
+  343,
+  350,
+  453,
+  468,
+  89,
+  175,
+  232,
+  308,
+  326,
+  426,
+  496,
   42,
-  899,
-  398,
-  995,
-  166,
-  769,
-  737,
-  196,
-  1,
-  99,
-  136,
-  62,
+  58,
+  128,
+  157,
+  349,
+  352,
+  408,
+  328,
+  24,
+  35,
+  37,
+  77,
+  81,
+  143,
+  202,
+  230,
+  282,
+  371,
+  382,
+  392,
+  407,
+  470,
+  489,
+  64,
+  65,
+  76,
+  89,
+  189,
+  200,
+  224,
+  384,
+  388,
+  391,
+  36,
+  213,
+  225,
+  231,
+  256,
+  260,
+  283,
+  343,
+  372,
+  488,
+  34,
+  137,
+  220,
+  292,
   335,
-  351,
-  346,
-  289,
-  899,
-  124,
-  607,
+  344,
+  361,
+  382,
+  495,
+  111,
+  235,
+  249,
+  254,
+  259,
+  301,
+  326,
+  409,
+  465,
+  252,
+  301,
+  433,
+  452,
   468,
-  686,
-  775,
-  991,
-  561,
-  335,
-  250,
-  880,
+  109,
+  216,
   252,
-  56,
-  390,
-  363,
-  965,
-  233,
-  98,
-  954,
-  669,
-  596,
-  836,
-  912,
-  645,
-  516,
-  891,
-  340,
-  529,
-  722,
-  391,
-  580,
-  212,
-  501,
-  961,
-  154,
-  117,
-  877,
-  956,
+  284,
+  409,
+  419,
+  486,
+  9,
+  44,
+  64,
+  66,
+  94,
+  161,
+  162,
+  323,
+  469,
+  18,
+  43,
+  61,
+  193,
+  238,
+  247,
+  394,
+  469,
+  483,
+  0,
+  68,
+  96,
   245,
-  543,
-  749,
-  229,
-  959,
-  415,
-  3,
-  886,
-  430,
+  372,
+  406,
+  419,
+  485,
+  31,
+  223,
+  227,
+  261,
+  274,
+  278,
+  281,
+  304,
+  396,
+  466,
+  26,
+  45,
+  76,
+  202,
+  203,
+  247,
+  317,
+  334,
+  345,
+  359,
+  408,
+  487,
+  83,
+  114,
+  151,
+  199,
+  200,
+  246,
+  336,
+  464,
+  482,
+  86,
+  92,
+  190,
+  217,
+  286,
+  328,
+  332,
+  370,
+  373,
+  437,
+  46,
+  114,
+  188,
+  236,
+  290,
+  292,
   294,
-  501,
-  957,
-  218,
-  686,
-  825,
-  508,
-  746,
+  323,
+  335,
+  345,
+  367,
+  401,
+  444,
+  480,
+  1,
+  164,
+  217,
+  257,
+  305,
+  379,
   186,
-  624,
-  450,
-  123,
-  310,
-  161,
-  775,
-  581,
-  541,
-  630,
-  788,
-  652,
-  849,
+  365,
+  441,
+  481,
+  486,
+  12,
+  192,
+  226,
+  1,
+  2,
+  67,
+  107,
+  225,
+  52,
+  124,
+  241,
+  270,
+  278,
+  317,
+  357,
+  371,
+  417,
+  427,
+  449,
+  453,
+  489,
+  73,
+  173,
+  174,
+  188,
+  189,
+  242,
+  291,
+  314,
+  360,
+  92,
+  118,
+  135,
+  152,
+  182,
+  210,
+  215,
+  228,
+  230,
+  263,
+  353,
+  398,
+  489,
+  28,
+  36,
+  157,
+  159,
+  226,
+  238,
+  312,
+  423,
+  427,
+  7,
+  24,
+  79,
+  171,
+  223,
+  256,
+  483,
+  24,
+  31,
+  38,
+  70,
+  179,
+  239,
+  259,
+  292,
+  307,
+  312,
+  359,
+  367,
+  386,
+  417,
+  451,
+  476,
+  15,
+  64,
   101,
-  81,
-  872,
-  316,
-  621,
-  8,
-  17,
-  934,
-  555,
-  326,
-  252,
-  104,
-  720,
-  706,
-  130,
-  364,
-  56,
-  558,
-  83,
-  928,
-  538,
-  227,
+  164,
+  168,
+  174,
+  271,
+  317,
+  370,
+  390,
+  433,
+  61,
+  62,
+  71,
+  302,
+  447,
+  105,
+  134,
+  151,
+  165,
+  254,
+  283,
   366,
-  463,
-  527,
-  769,
-  19,
-  815,
-  801,
-  899,
+  380,
+  5,
+  57,
+  71,
   72,
-  970,
-  25,
-  993,
-  340,
-  724,
-  765,
-  167,
-  347,
-  803,
-  148,
-  363,
-  967,
-  325,
-  927,
-  588,
-  791,
-  579,
-  647,
-  245,
-  767,
-  522,
-  989,
-  49,
-  619,
-  794,
-  385,
-  865,
-  665,
-  136,
-  426,
-  849,
+  105,
+  117,
+  159,
+  167,
+  253,
+  376,
+  409,
+  463,
+  0,
+  71,
+  119,
+  184,
+  211,
+  255,
+  317,
+  330,
+  342,
+  446,
+  489,
+  497,
+  39,
+  80,
+  250,
+  251,
+  271,
+  285,
+  314,
+  322,
+  355,
+  406,
+  460,
+  17,
+  20,
+  38,
+  175,
+  180,
+  273,
+  280,
+  322,
   354,
-  982,
-  870,
-  328,
-  181,
-  922,
-  304,
-  822,
-  665,
-  956,
-  324,
-  168,
-  412,
-  785,
-  919,
-  486,
-  340,
-  677,
-  751,
-  646,
-  857,
-  629,
-  108,
-  650,
-  366,
-  931,
-  195,
-  684,
-  498,
-  266,
-  669,
+  369,
+  420,
+  429,
+  433,
+  444,
+  464,
+  21,
+  33,
   73,
-  103,
-  512,
-  456,
-  187,
-  190,
+  93,
+  94,
+  125,
+  126,
+  133,
+  143,
+  217,
   356,
-  146,
-  361,
-  597,
-  277,
-  261,
-  993,
-  479,
-  850,
-  883,
-  950,
-  622,
-  192,
-  351,
-  293,
-  375,
-  86,
-  141,
-  824,
-  714,
-  492,
-  48,
-  589,
-  564,
-  266,
-  359,
-  425,
-  75,
-  797,
-  538,
-  550,
-  885,
-  404,
-  863,
-  468,
-  301,
-  321,
-  475,
-  876,
-  916,
-  666,
-  927,
+  406,
   31,
-  256,
-  839,
-  177,
   61,
-  875,
-  23,
-  348,
-  257,
-  939,
-  931,
-  533,
-  473,
-  865,
-  108,
-  130,
-  772,
-  296,
-  768,
-  721,
-  908,
-  108,
-  727,
-  659,
-  811,
-  821,
-  971,
-  652,
-  546,
-  727,
-  678,
-  767,
-  229,
-  606,
-  503,
-  298,
-  186,
-  539,
-  4,
-  203,
-  752,
-  630,
-  179,
-  182,
-  476,
-  366,
-  651,
-  924,
-  38,
-  925,
-  37,
-  177,
-  658,
-  489,
-  816,
+  189,
+  226,
+  235,
+  249,
+  256,
+  275,
+  302,
+  360,
+  427,
+  64,
+  270,
+  388,
+  417,
+  446,
+  69,
+  71,
+  113,
+  214,
+  272,
+  337,
+  402,
+  406,
+  414,
+  453,
+  468,
+  147,
+  148,
+  184,
+  221,
+  228,
+  264,
   322,
-  963,
-  928,
-  818,
+  344,
+  352,
+  455,
+  11,
+  88,
+  118,
+  167,
   169,
-  602,
-  403,
-  506,
-  127,
-  844,
-  749,
-  674,
-  845,
-  529,
-  865,
-  635,
-  791,
-  776,
-  334,
-  136,
-  342,
-  593,
-  512,
-  660,
-  640,
-  787,
-  139,
-  544,
-  181,
-  43,
-  46,
-  413,
-  337,
-  854,
-  986,
-  815,
-  121,
-  877,
-  294,
-  218,
-  4,
-  136,
-  225,
-  766,
-  992,
-  910,
-  530,
-  646,
-  213,
-  695,
-  271,
-  967,
-  986,
-  628,
-  777,
-  180,
-  866,
-  599,
-  664,
-  46,
-  994,
-  396,
-  56,
-  256,
-  739,
-  481,
-  608,
-  360,
-  134,
-  970,
-  282,
-  898,
-  417,
-  948,
-  956,
-  230,
-  884,
-  748,
-  74,
-  938,
-  224,
-  920,
-  974,
-  475,
-  405,
-  442,
-  630,
-  596,
-  118,
-  398,
+  304,
+  353,
+  6,
+  191,
+  239,
+  333,
+  456,
+  457,
+  460,
+  469,
+  499,
+  59,
+  94,
+  143,
+  144,
+  168,
   439,
-  969,
-  188,
-  169,
-  251,
-  630,
-  835,
-  480,
-  557,
-  904,
   461,
-  371,
-  885,
-  197,
-  305,
-  678,
-  12,
-  663,
-  960,
-  311,
-  877,
-  747,
-  20,
-  271,
-  622,
-  48,
-  621,
-  135,
-  59,
-  179,
-  377,
-  684,
-  861,
-  760,
-  38,
-  780,
-  91,
-  18,
-  23,
-  432,
-  37,
-  443,
-  450,
-  508,
-  193,
-  960,
-  986,
-  761,
-  605,
-  788,
-  86,
-  436,
-  23,
-  581,
-  605,
-  128,
-  84,
-  979,
-  732,
-  230,
-  787,
-  836,
-  261,
-  677,
-  117,
-  292,
-  477,
-  388,
+  69,
+  100,
+  217,
+  237,
+  263,
+  269,
+  462,
+  474,
+  488,
+  3,
   20,
-  962,
-  707,
-  979,
-  933,
-  662,
-  112,
+  33,
+  62,
+  83,
+  134,
+  150,
+  168,
+  192,
+  198,
+  215,
   234,
-  771,
-  167,
-  31,
-  673,
-  42,
-  705,
-  675,
-  151,
-  452,
-  875,
-  655,
-  399,
-  59,
-  702,
-  502,
-  444,
-  892,
+  275,
+  324,
+  370,
+  383,
+  388,
+  401,
+  439,
+  3,
+  81,
+  145,
+  156,
+  284,
+  388,
+  405,
+  406,
+  435,
+  50,
+  88,
+  148,
+  200,
   290,
-  856,
-  53,
-  260,
-  19,
-  221,
-  987,
-  330,
-  80,
-  665,
-  551,
-  377,
-  540,
+  301,
+  325,
+  24,
+  141,
+  145,
   188,
-  920,
-  680,
-  133,
+  205,
+  234,
+  326,
+  353,
+  355,
+  391,
+  412,
+  462,
+  494,
+  58,
+  63,
   77,
-  466,
-  439,
-  258,
-  570,
-  659,
+  117,
+  246,
+  249,
+  277,
+  325,
+  356,
+  375,
+  384,
+  430,
+  483,
+  44,
+  166,
+  212,
+  258,
+  269,
+  310,
+  358,
+  368,
+  371,
+  413,
+  448,
+  477,
+  489,
+  499,
   56,
-  10,
-  615,
-  504,
-  336,
-  655,
-  720,
-  156,
-  289,
-  354,
-  637,
-  184,
-  853,
-  944,
-  177,
-  973,
+  105,
+  154,
+  366,
+  369,
+  398,
+  409,
+  436,
+  464,
+  187,
+  223,
+  344,
+  427,
+  440,
+  31,
+  116,
+  126,
+  140,
+  150,
   177,
-  537,
-  934,
-  78,
-  267,
-  209,
-  898,
-  115,
-  986,
-  920,
-  926,
+  246,
+  323,
+  336,
+  355,
+  403,
+  475,
+  484,
+  16,
+  71,
+  202,
+  214,
+  252,
+  311,
+  318,
   393,
-  217,
-  204,
-  312,
-  989,
-  655,
+  399,
+  433,
+  498,
+  13,
+  132,
+  207,
   214,
-  47,
-  231,
-  278,
-  866,
-  734,
-  707,
-  605,
-  208,
-  232,
-  506,
-  116,
-  383,
-  662,
-  151,
+  268,
+  277,
+  322,
+  415,
+  485,
   92,
-  785,
-  431,
-  614,
-  585,
-  682,
-  781,
-  343,
-  590,
+  131,
+  201,
+  277,
+  299,
+  388,
+  419,
+  450,
   458,
-  232,
-  360,
-  187,
-  18,
-  769,
-  704,
-  620,
-  67,
-  109,
-  88,
-  353,
+  115,
+  188,
+  236,
+  334,
+  417,
+  31,
+  34,
+  54,
+  61,
+  90,
+  127,
+  244,
+  368,
+  398,
+  420,
+  45,
+  84,
+  124,
+  162,
+  192,
+  287,
+  334,
+  348,
+  354,
+  358,
+  386,
+  480,
+  497,
+  28,
+  74,
+  98,
+  130,
+  207,
+  377,
+  460,
+  62,
+  244,
+  280,
+  305,
+  385,
+  397,
+  434,
+  2,
+  46,
+  71,
+  170,
+  183,
+  445,
+  63,
+  69,
+  100,
+  120,
+  127,
+  130,
+  154,
+  160,
+  350,
+  384,
+  396,
   401,
-  228,
-  508,
-  406,
+  404,
+  21,
+  39,
+  91,
+  202,
+  238,
   255,
-  989,
-  151,
-  702,
   277,
-  376,
+  341,
+  345,
+  347,
   381,
-  409,
-  932,
-  31,
-  761,
-  783,
-  233,
-  154,
-  871,
-  55,
-  648,
-  5,
-  12,
-  465,
-  96,
-  904,
-  169,
-  325,
-  428,
-  572,
-  47,
-  78,
-  258,
-  525,
-  276,
-  502,
-  972,
-  488,
-  763,
-  798,
-  973,
-  186,
-  490,
-  362,
-  205,
-  154,
+  443,
+  53,
+  131,
+  156,
+  173,
   245,
-  784,
-  493,
-  76,
-  975,
-  459,
-  598,
-  227,
-  161,
-  752,
-  243,
-  858,
-  931,
-  996,
-  543,
-  488,
-  560,
-  240,
-  49,
-  318,
-  374,
-  914,
-  52,
-  693,
-  762,
-  329,
-  691,
-  193,
-  122,
-  925,
-  577,
-  748,
-  236,
-  8,
-  591,
-  640,
-  61,
-  77,
-  295,
-  117,
-  323,
-  732,
+  347,
+  359,
+  387,
+  404,
+  449,
+  462,
   493,
-  811,
-  67,
-  694,
-  158,
-  589,
-  247,
-  115,
-  184,
-  682,
-  927,
-  918,
-  353,
+  33,
+  38,
+  51,
+  56,
+  87,
+  132,
+  256,
+  261,
+  270,
+  295,
+  411,
+  439,
+  2,
+  23,
+  82,
+  149,
+  179,
+  196,
   217,
-  904,
-  834,
-  107,
-  728,
-  683,
-  908,
-  596,
-  721,
-  44,
-  412,
-  780,
-  882,
-  682,
-  497,
-  832,
-  559,
-  126,
-  303,
-  100,
-  214,
-  829,
+  240,
+  260,
+  328,
+  332,
+  350,
+  416,
+  422,
+  425,
+  438,
+  494,
+  30,
+  61,
+  97,
+  209,
+  211,
+  283,
+  288,
   344,
-  654,
-  679,
-  336,
-  148,
-  213,
-  982,
-  859,
-  558,
-  855,
-  999,
-  698,
-  38,
-  490,
-  340,
-  846,
-  852,
-  26,
-  942,
-  575,
+  429,
+  441,
+  25,
+  55,
+  92,
+  120,
+  214,
+  264,
+  289,
+  396,
+  409,
+  432,
+  4,
+  27,
+  39,
+  66,
+  140,
+  177,
+  212,
+  246,
+  332,
+  356,
+  382,
+  480,
+  0,
+  42,
+  48,
+  154,
+  170,
+  214,
+  219,
+  261,
+  459,
+  476,
+  495,
+  60,
+  140,
+  171,
+  333,
+  343,
+  375,
   383,
-  1,
-  198,
-  836,
-  570,
-  893,
-  950,
-  7,
-  527,
-  628,
-  753,
-  660,
-  180,
-  354,
-  819,
-  775,
-  271,
-  187,
-  374,
-  532,
-  374,
-  900
-};
-const int idx[10004] = {
-  13,
-  111,
-  124,
-  218,
-  316,
-  502,
-  34,
+  405,
   119,
+  130,
   167,
-  180,
-  186,
-  346,
-  511,
-  543,
-  755,
-  788,
-  833,
-  929,
-  46,
-  109,
+  207,
+  316,
+  373,
+  399,
+  442,
+  32,
+  91,
+  281,
+  289,
+  404,
+  415,
+  469,
+  115,
+  182,
+  301,
+  312,
+  350,
+  359,
+  414,
+  419,
+  7,
+  49,
+  181,
+  191,
+  203,
+  299,
+  311,
+  467,
+  477,
+  7,
+  57,
+  171,
+  199,
+  232,
+  240,
+  254,
+  284,
+  361,
+  411,
+  430,
+  478,
   154,
-  220,
-  248,
-  448,
-  509,
-  517,
-  530,
-  557,
-  639,
-  643,
-  720,
-  137,
-  189,
-  424,
-  480,
-  570,
-  642,
-  849,
-  896,
-  968,
-  117,
-  136,
-  208,
-  248,
-  347,
-  410,
-  433,
-  515,
-  747,
-  144,
-  148,
-  375,
-  405,
-  444,
-  532,
-  788,
-  808,
-  987,
-  110,
-  112,
-  403,
-  415,
-  596,
-  612,
-  669,
-  794,
-  851,
-  80,
-  285,
-  288,
-  433,
-  500,
-  628,
-  982,
-  999,
-  57,
-  237,
-  252,
-  304,
-  469,
-  600,
-  609,
-  621,
-  741,
-  798,
-  251,
-  322,
-  369,
-  374,
-  376,
-  507,
-  623,
-  666,
-  669,
-  677,
-  707,
-  823,
-  919,
-  63,
+  186,
+  216,
+  277,
+  466,
+  76,
   187,
-  266,
-  360,
-  396,
-  439,
-  459,
-  526,
-  623,
-  804,
-  857,
-  881,
-  948,
-  160,
-  165,
-  226,
-  446,
-  538,
-  585,
-  624,
-  866,
-  975,
-  979,
-  18,
-  54,
-  151,
-  180,
-  230,
-  298,
-  480,
-  678,
-  688,
-  696,
-  742,
-  757,
-  889,
-  979,
-  100,
-  245,
-  513,
-  925,
-  162,
-  413,
-  427,
-  588,
-  645,
-  807,
-  853,
+  196,
+  198,
+  222,
+  368,
+  125,
+  164,
   194,
-  313,
-  339,
-  466,
-  539,
-  581,
-  732,
-  791,
-  832,
-  927,
-  954,
-  962,
-  966,
-  42,
-  45,
-  138,
-  141,
-  239,
-  338,
-  584,
-  696,
-  912,
-  929,
-  269,
-  352,
-  443,
-  463,
-  896,
-  962,
-  60,
+  299,
+  315,
+  361,
+  374,
+  433,
+  445,
+  471,
+  19,
+  116,
+  158,
+  168,
+  189,
+  312,
+  340,
+  373,
+  425,
+  453,
+  492,
   92,
-  273,
-  568,
-  591,
-  851,
-  38,
-  77,
-  281,
-  362,
-  544,
-  614,
-  651,
-  836,
-  871,
-  873,
-  45,
-  61,
-  140,
-  153,
+  96,
+  275,
+  332,
+  346,
+  401,
+  436,
+  451,
+  499,
+  5,
+  35,
+  55,
+  64,
+  107,
+  121,
+  142,
+  233,
   234,
-  439,
-  472,
-  509,
-  588,
-  675,
-  760,
-  777,
-  178,
-  198,
-  248,
-  517,
-  566,
-  679,
-  700,
-  289,
-  455,
-  602,
-  695,
-  711,
-  853,
-  923,
-  179,
-  199,
-  214,
+  264,
   280,
-  343,
-  405,
-  435,
-  504,
-  898,
-  910,
-  939,
-  130,
-  219,
   296,
-  445,
-  508,
-  634,
-  763,
-  918,
-  922,
-  978,
-  87,
-  285,
-  614,
-  667,
-  679,
-  739,
-  834,
-  192,
-  347,
-  549,
-  557,
-  724,
-  764,
-  928,
-  929,
-  976,
-  17,
+  307,
+  333,
+  5,
+  24,
+  80,
+  87,
+  90,
+  232,
+  294,
+  346,
+  355,
+  358,
+  404,
+  445,
+  87,
+  102,
+  176,
+  270,
   283,
-  413,
-  429,
-  612,
-  683,
-  707,
-  725,
-  743,
-  833,
-  856,
-  165,
-  267,
-  304,
-  361,
-  397,
-  410,
-  570,
-  683,
-  766,
-  788,
-  849,
-  882,
-  885,
-  30,
-  58,
-  221,
-  254,
-  453,
-  457,
-  470,
-  674,
-  687,
-  745,
-  809,
-  819,
-  55,
-  121,
-  231,
-  538,
-  604,
-  718,
-  768,
-  960,
-  71,
-  77,
-  104,
-  186,
-  205,
-  234,
+  286,
+  408,
+  31,
+  101,
+  247,
+  430,
+  434,
   456,
-  467,
-  579,
-  682,
-  733,
-  767,
-  947,
-  66,
+  43,
+  47,
+  102,
+  115,
+  146,
+  183,
+  206,
+  207,
+  264,
+  268,
+  329,
+  365,
+  491,
+  497,
+  183,
+  187,
+  214,
+  366,
+  382,
   86,
-  157,
+  106,
+  174,
+  179,
+  197,
+  277,
+  305,
+  416,
+  463,
+  67,
+  77,
+  110,
+  136,
+  223,
+  240,
+  324,
+  339,
+  393,
+  451,
+  1,
+  81,
+  82,
+  99,
+  200,
+  271,
+  298,
+  420,
+  491,
+  21,
+  57,
+  60,
+  158,
+  182,
+  188,
+  328,
+  338,
+  484,
   290,
-  422,
-  441,
-  473,
-  560,
-  607,
-  640,
-  682,
-  888,
-  37,
-  296,
-  439,
-  629,
-  642,
-  733,
-  824,
-  917,
-  969,
+  380,
+  405,
+  413,
+  480,
+  48,
+  73,
+  139,
+  157,
+  298,
+  358,
+  435,
   4,
-  25,
-  580,
-  622,
-  636,
-  666,
-  672,
-  732,
-  802,
-  921,
-  943,
-  130,
-  194,
-  245,
+  29,
+  65,
+  169,
+  339,
+  364,
+  473,
+  486,
+  33,
+  47,
+  160,
+  212,
+  223,
   273,
-  323,
-  344,
-  603,
-  740,
-  795,
-  974,
-  189,
-  422,
-  445,
-  446,
-  831,
-  905,
-  912,
-  36,
-  60,
-  218,
-  428,
-  455,
-  627,
-  743,
-  796,
-  801,
-  903,
-  136,
-  152,
-  166,
-  352,
+  304,
+  354,
   364,
+  444,
+  481,
+  1,
+  22,
+  83,
+  160,
+  275,
+  296,
+  324,
+  332,
+  357,
   369,
-  382,
-  466,
-  521,
-  577,
-  665,
-  746,
-  910,
-  294,
-  345,
-  445,
-  645,
-  686,
-  718,
-  757,
-  762,
-  796,
-  817,
-  832,
-  836,
-  997,
+  380,
+  467,
+  28,
+  198,
+  256,
+  272,
+  319,
+  357,
+  480,
+  122,
+  185,
+  202,
+  252,
+  277,
+  329,
+  403,
+  408,
+  445,
+  492,
+  80,
+  138,
+  221,
+  239,
+  371,
+  406,
+  413,
+  481,
+  495,
+  63,
   127,
-  258,
-  259,
-  449,
-  541,
-  643,
-  665,
-  756,
-  817,
-  854,
-  870,
-  89,
-  134,
-  188,
+  145,
+  172,
+  316,
+  338,
+  412,
+  414,
+  419,
+  430,
+  444,
+  482,
+  29,
+  144,
+  161,
+  276,
+  333,
   362,
+  366,
+  464,
+  48,
+  84,
+  118,
+  144,
+  209,
+  240,
+  329,
+  376,
   408,
-  531,
-  566,
-  816,
-  127,
-  170,
-  302,
-  336,
-  426,
-  434,
-  601,
-  708,
-  774,
-  780,
-  900,
-  935,
-  377,
-  469,
-  618,
-  650,
-  790,
-  809,
+  411,
+  454,
+  456,
+  102,
+  231,
+  234,
+  255,
+  262,
+  281,
+  307,
+  54,
+  87,
+  179,
+  223,
+  293,
+  325,
+  331,
+  335,
+  344,
+  417,
+  481,
+  489,
+  1,
+  9,
+  55,
+  86,
+  120,
+  244,
+  287,
+  396,
+  427,
+  452,
+  79,
+  107,
+  187,
+  248,
+  258,
+  262,
+  329,
+  360,
+  474,
+  480,
+  482,
+  6,
+  61,
+  122,
+  163,
+  184,
+  261,
+  387,
+  494,
+  16,
+  38,
   78,
-  253,
-  340,
-  382,
-  586,
-  673,
-  684,
-  282,
-  354,
-  363,
+  125,
+  165,
+  264,
+  347,
+  352,
+  443,
+  6,
+  223,
+  243,
+  307,
+  371,
   398,
-  636,
-  655,
-  729,
-  885,
-  911,
-  10,
-  175,
-  195,
-  229,
-  273,
-  339,
-  380,
-  531,
-  660,
-  681,
-  794,
-  800,
-  236,
-  416,
-  646,
-  679,
-  685,
-  885,
-  7,
-  116,
-  299,
-  481,
-  702,
-  747,
-  922,
-  64,
-  153,
-  374,
-  391,
-  532,
-  558,
-  602,
-  655,
-  662,
-  804,
-  847,
-  867,
-  998,
-  45,
-  66,
+  32,
+  46,
   97,
-  106,
-  236,
-  240,
-  247,
-  453,
-  641,
-  646,
-  711,
-  712,
-  715,
-  855,
-  906,
-  923,
-  37,
-  65,
-  122,
-  331,
-  578,
-  589,
-  610,
+  121,
+  162,
+  221,
+  251,
+  256,
+  304,
+  320,
+  371,
+  386,
+  440,
+  441,
+  463,
+  474,
+  60,
+  85,
+  131,
   139,
-  293,
-  354,
-  395,
-  430,
-  486,
-  589,
-  614,
-  661,
-  699,
-  846,
-  910,
-  18,
-  53,
-  78,
-  234,
-  296,
-  690,
-  828,
-  923,
-  87,
-  115,
-  156,
-  161,
-  173,
-  201,
-  400,
-  474,
-  501,
-  526,
-  782,
-  861,
-  63,
+  142,
+  146,
+  227,
+  240,
+  255,
+  260,
   271,
-  427,
-  552,
-  590,
-  657,
-  920,
-  41,
-  194,
-  281,
-  571,
-  640,
-  681,
-  696,
-  301,
-  306,
-  514,
-  553,
-  560,
-  641,
-  683,
-  762,
-  812,
-  818,
-  876,
-  904,
-  932,
-  978,
-  38,
-  62,
-  98,
-  103,
-  370,
+  280,
+  282,
+  376,
   390,
-  531,
-  559,
-  693,
-  813,
-  924,
-  943,
-  955,
-  973,
-  13,
-  40,
-  62,
-  75,
-  396,
-  419,
-  615,
-  773,
-  968,
-  989,
-  150,
-  183,
-  241,
-  261,
-  407,
-  476,
-  492,
-  524,
-  541,
-  863,
-  994,
-  156,
-  195,
+  10,
+  157,
+  196,
   197,
-  278,
-  457,
-  467,
-  610,
-  621,
-  956,
-  49,
-  343,
-  454,
-  477,
-  572,
-  600,
-  700,
-  759,
-  804,
-  923,
-  92,
-  194,
-  455,
-  842,
-  968,
-  160,
-  211,
-  461,
-  463,
-  467,
-  622,
-  854,
-  972,
-  333,
-  469,
-  563,
-  571,
-  639,
-  838,
-  977,
-  18,
-  105,
-  133,
-  258,
-  572,
-  720,
-  804,
-  851,
-  930,
-  19,
-  139,
-  158,
-  301,
-  354,
-  407,
-  589,
-  726,
-  846,
-  904,
-  26,
-  54,
-  155,
-  212,
-  216,
+  231,
+  356,
+  374,
+  388,
+  422,
+  487,
+  83,
+  223,
+  264,
+  315,
+  364,
+  428,
+  492,
+  23,
+  60,
+  73,
+  75,
+  85,
+  102,
+  109,
+  172,
+  193,
+  257,
+  286,
+  304,
+  370,
+  379,
+  402,
+  434,
+  465,
+  481,
+  3,
+  65,
+  232,
+  290,
+  299,
+  353,
   418,
-  534,
-  647,
-  792,
-  862,
-  889,
-  101,
-  216,
-  228,
-  396,
-  470,
+  425,
   473,
-  592,
-  706,
-  799,
-  913,
-  922,
-  98,
-  324,
-  524,
-  672,
-  685,
-  856,
-  213,
-  224,
-  228,
+  0,
+  16,
+  194,
+  274,
   300,
-  395,
-  604,
-  631,
-  651,
-  835,
-  944,
-  289,
-  574,
-  613,
-  657,
-  671,
-  748,
-  763,
-  768,
-  815,
-  843,
-  908,
-  74,
-  79,
-  203,
-  218,
-  245,
-  249,
-  390,
-  548,
-  616,
-  804,
-  986,
-  49,
-  196,
-  585,
-  591,
-  608,
-  728,
-  750,
-  810,
-  836,
-  920,
-  980,
-  38,
-  41,
-  93,
-  94,
-  320,
-  360,
-  502,
-  555,
-  729,
-  742,
-  814,
-  984,
-  89,
-  131,
-  499,
-  677,
-  825,
-  846,
-  919,
-  966,
-  17,
-  37,
-  121,
-  168,
-  560,
-  585,
-  691,
-  788,
-  892,
-  925,
-  951,
-  995,
-  13,
+  365,
+  388,
+  407,
+  50,
+  144,
+  157,
+  228,
+  286,
+  298,
+  379,
+  15,
+  33,
+  51,
+  123,
+  200,
+  215,
+  241,
+  282,
+  303,
+  28,
   69,
-  124,
+  87,
+  152,
+  154,
+  254,
+  268,
+  275,
+  411,
+  443,
+  28,
   229,
-  308,
-  554,
-  643,
-  668,
-  717,
-  747,
-  813,
-  814,
-  864,
-  298,
-  327,
-  386,
-  425,
-  586,
-  600,
-  725,
-  730,
-  832,
-  12,
-  38,
-  94,
+  305,
+  328,
+  415,
+  448,
+  26,
+  66,
+  97,
+  118,
+  192,
+  203,
+  223,
+  343,
+  360,
+  121,
   150,
-  175,
-  501,
-  538,
-  552,
-  571,
-  606,
-  624,
-  650,
-  686,
-  728,
-  157,
-  605,
-  630,
-  713,
-  784,
-  850,
-  954,
-  181,
-  234,
-  610,
-  612,
-  661,
-  663,
-  677,
-  688,
-  726,
-  809,
-  818,
-  67,
-  77,
-  164,
-  193,
+  187,
+  192,
+  248,
+  260,
+  478,
+  487,
+  96,
+  132,
+  133,
+  167,
+  187,
   214,
-  345,
+  219,
+  321,
+  389,
+  465,
+  31,
+  39,
+  50,
+  77,
+  113,
+  147,
+  212,
+  333,
+  367,
+  8,
+  102,
+  242,
+  275,
+  341,
   352,
-  551,
-  696,
-  919,
-  994,
-  12,
+  455,
+  3,
+  20,
+  27,
+  117,
+  156,
+  182,
+  226,
+  234,
+  272,
   311,
-  404,
-  454,
+  367,
+  370,
+  389,
+  421,
+  117,
+  127,
+  234,
+  236,
+  315,
+  322,
+  350,
+  402,
+  407,
+  57,
+  100,
+  213,
+  361,
+  377,
+  82,
+  120,
+  159,
+  201,
+  206,
+  255,
+  286,
+  338,
+  389,
+  496,
+  27,
+  41,
+  50,
+  99,
+  151,
+  165,
+  222,
+  434,
+  453,
   473,
-  521,
-  581,
-  651,
-  677,
-  717,
-  850,
-  873,
-  880,
-  892,
-  945,
-  54,
-  138,
-  210,
-  219,
-  248,
+  0,
+  13,
+  15,
+  96,
+  224,
+  277,
+  387,
+  399,
+  401,
   413,
-  480,
-  491,
-  639,
-  652,
-  773,
-  807,
-  824,
-  962,
-  79,
-  211,
-  499,
-  560,
-  561,
-  759,
-  774,
-  800,
-  865,
-  35,
-  146,
-  619,
-  746,
-  754,
-  81,
-  237,
-  258,
-  388,
+  434,
+  61,
+  68,
+  366,
+  400,
+  437,
+  465,
   477,
-  658,
-  704,
-  712,
-  781,
-  109,
-  720,
-  758,
-  98,
-  209,
-  252,
-  311,
-  410,
-  532,
-  611,
-  656,
-  722,
-  772,
-  822,
-  828,
-  912,
-  980,
-  95,
-  107,
-  167,
-  287,
-  289,
-  303,
-  441,
-  446,
-  580,
-  600,
-  630,
-  632,
-  658,
-  682,
-  847,
-  92,
-  137,
-  177,
-  238,
-  262,
-  324,
-  438,
-  479,
-  534,
-  539,
-  689,
-  846,
-  956,
-  962,
-  200,
-  496,
-  521,
-  656,
-  714,
-  785,
-  814,
-  857,
-  184,
-  204,
-  455,
-  702,
-  754,
-  803,
-  887,
-  928,
-  993,
-  42,
-  51,
-  189,
-  204,
-  358,
-  572,
-  601,
-  665,
-  867,
-  71,
-  108,
-  208,
-  243,
-  263,
-  314,
-  359,
-  418,
   482,
-  556,
-  680,
-  945,
-  958,
-  964,
-  97,
+  6,
+  45,
+  123,
   200,
-  202,
-  223,
-  230,
-  428,
-  447,
-  537,
-  574,
-  635,
-  663,
-  728,
-  737,
-  858,
-  861,
-  930,
-  71,
-  84,
-  85,
-  196,
-  199,
-  242,
-  513,
-  761,
-  48,
-  98,
-  127,
-  194,
-  233,
-  283,
-  334,
-  420,
-  627,
-  632,
-  931,
-  34,
-  82,
-  176,
-  197,
-  217,
-  235,
-  237,
-  358,
-  462,
-  947,
-  10,
-  178,
-  265,
-  350,
-  396,
-  468,
-  539,
-  586,
-  612,
-  628,
-  644,
-  791,
-  40,
-  234,
+  271,
   292,
-  299,
-  375,
-  396,
-  410,
-  429,
-  728,
-  36,
-  360,
-  475,
-  562,
-  962,
-  5,
-  60,
-  169,
-  509,
-  558,
-  594,
-  613,
-  648,
-  654,
-  726,
-  769,
-  773,
-  777,
-  40,
+  315,
+  355,
+  357,
+  365,
+  368,
+  384,
+  392,
+  430,
+  471,
+  487,
+  12,
+  30,
+  33,
+  98,
+  180,
+  263,
+  373,
+  43,
+  46,
   49,
-  403,
-  446,
-  524,
-  548,
-  730,
-  774,
-  938,
-  978,
-  997,
-  221,
-  248,
+  130,
+  143,
+  158,
+  166,
+  184,
+  239,
+  278,
+  295,
+  314,
+  337,
+  374,
   407,
-  447,
-  585,
-  756,
-  824,
-  894,
-  972,
+  499,
+  16,
+  94,
+  108,
+  109,
   121,
-  189,
-  364,
-  537,
-  563,
-  179,
-  328,
-  344,
-  692,
-  711,
-  750,
-  760,
-  780,
-  810,
-  929,
-  942,
-  106,
-  336,
-  551,
-  616,
-  640,
-  654,
-  726,
-  890,
+  141,
+  142,
+  156,
+  213,
+  352,
+  123,
+  153,
+  228,
+  325,
+  365,
+  401,
+  418,
+  473,
+  475,
   74,
-  200,
+  88,
+  90,
+  115,
   233,
-  254,
-  382,
-  396,
-  895,
-  971,
-  283,
-  614,
-  898,
-  87,
-  122,
-  172,
-  255,
-  324,
-  383,
-  498,
-  525,
-  699,
-  817,
-  825,
-  3,
-  41,
-  104,
-  280,
-  399,
-  617,
-  641,
-  769,
-  789,
-  817,
-  891,
-  937,
-  143,
-  175,
-  185,
-  217,
-  222,
-  362,
-  391,
-  465,
-  515,
-  544,
-  818,
-  868,
-  35,
-  44,
-  122,
-  235,
-  345,
-  415,
-  479,
-  569,
-  575,
-  740,
-  765,
-  867,
-  967,
-  78,
-  107,
-  265,
-  358,
-  524,
-  646,
-  716,
-  720,
-  840,
-  76,
-  77,
-  353,
-  406,
-  533,
-  648,
-  726,
-  733,
-  906,
-  979,
-  65,
-  133,
-  182,
-  187,
-  191,
-  424,
-  430,
-  520,
-  674,
-  776,
-  945,
-  975,
+  349,
+  366,
+  384,
+  463,
+  482,
   18,
-  242,
-  393,
-  458,
-  468,
-  530,
-  599,
-  717,
-  933,
-  278,
-  297,
-  465,
-  476,
-  579,
-  591,
-  633,
-  643,
-  937,
-  271,
-  481,
-  618,
-  890,
-  5,
-  126,
-  171,
-  192,
+  51,
+  112,
+  172,
+  245,
+  303,
+  471,
+  499,
+  1,
+  9,
+  66,
+  70,
+  112,
+  128,
+  201,
   209,
-  259,
-  367,
-  840,
-  861,
-  6,
-  26,
-  47,
-  90,
-  225,
-  239,
-  385,
-  577,
-  782,
-  795,
-  797,
-  893,
-  76,
-  82,
-  309,
-  348,
-  450,
-  583,
-  677,
-  696,
-  752,
-  785,
-  800,
-  991,
-  2,
-  191,
-  211,
-  279,
-  280,
-  556,
-  591,
-  774,
-  785,
-  822,
-  913,
-  34,
-  117,
-  159,
-  204,
+  243,
   266,
-  418,
-  547,
-  565,
-  962,
-  992,
-  33,
-  72,
-  140,
-  141,
-  157,
-  254,
-  513,
-  558,
-  643,
-  695,
-  779,
-  791,
-  882,
-  978,
-  13,
-  53,
-  65,
-  479,
-  513,
-  674,
-  687,
-  711,
-  785,
-  811,
-  830,
-  4,
-  5,
-  9,
-  34,
-  77,
-  137,
-  265,
-  270,
-  542,
-  552,
-  622,
-  632,
-  634,
-  647,
-  783,
-  895,
-  951,
-  995,
-  89,
-  113,
-  174,
-  225,
-  231,
-  258,
-  294,
-  347,
-  383,
-  414,
-  444,
-  463,
-  467,
-  493,
-  535,
-  612,
-  688,
-  107,
-  111,
-  213,
-  238,
-  494,
-  555,
-  572,
-  676,
-  40,
-  50,
-  59,
-  119,
-  291,
-  365,
-  416,
-  565,
-  607,
-  613,
-  631,
-  902,
-  908,
-  998,
-  63,
-  495,
-  534,
-  581,
-  601,
-  694,
-  719,
-  731,
-  790,
-  969,
-  176,
-  262,
-  481,
-  545,
-  694,
-  737,
-  853,
-  202,
-  267,
-  269,
-  302,
-  466,
-  727,
-  786,
-  816,
-  858,
-  923,
-  14,
-  241,
-  387,
-  416,
-  468,
-  501,
-  513,
-  599,
-  48,
-  157,
-  318,
-  426,
-  589,
-  632,
-  871,
-  882,
-  87,
-  444,
-  486,
-  558,
-  618,
-  773,
-  794,
-  73,
-  116,
-  199,
-  229,
-  233,
-  255,
-  360,
-  400,
-  425,
-  468,
-  474,
-  540,
-  589,
-  786,
-  834,
-  868,
-  888,
-  85,
-  112,
-  162,
-  185,
-  316,
-  331,
-  346,
-  410,
-  611,
-  729,
-  798,
-  863,
-  234,
-  591,
-  637,
-  933,
-  8,
-  12,
-  32,
-  43,
-  101,
-  339,
-  436,
-  708,
-  88,
-  111,
-  115,
-  790,
-  841,
-  935,
-  976,
-  12,
-  175,
-  245,
-  447,
-  449,
-  548,
-  581,
-  652,
-  743,
-  763,
-  773,
-  776,
-  828,
-  951,
-  58,
-  62,
-  68,
-  277,
-  297,
-  401,
-  418,
-  460,
-  482,
-  561,
-  656,
-  734,
-  812,
-  818,
-  837,
-  861,
-  118,
-  192,
-  254,
-  267,
-  270,
-  276,
-  347,
-  463,
-  509,
-  514,
-  714,
-  717,
-  788,
-  905,
-  924,
-  100,
-  256,
-  334,
-  335,
-  465,
-  627,
-  803,
-  815,
-  884,
-  996,
-  15,
-  140,
-  172,
-  197,
-  227,
-  300,
-  310,
-  466,
-  530,
-  560,
-  567,
-  784,
-  860,
-  15,
-  108,
-  132,
-  188,
-  310,
-  621,
-  838,
-  839,
-  988,
-  8,
-  130,
-  289,
-  462,
-  472,
-  549,
-  557,
-  561,
-  643,
-  753,
-  755,
-  841,
-  955,
-  40,
-  325,
-  334,
-  371,
-  375,
-  417,
-  573,
-  872,
-  921,
-  989,
-  25,
-  94,
-  138,
-  217,
-  312,
-  370,
-  528,
-  585,
-  603,
-  630,
-  729,
-  803,
-  810,
-  73,
-  424,
-  570,
-  624,
-  630,
-  642,
-  671,
-  697,
-  873,
-  935,
-  987,
-  94,
-  174,
-  318,
-  415,
-  507,
-  516,
-  676,
-  779,
-  821,
-  941,
-  973,
-  73,
-  78,
-  97,
-  148,
-  237,
-  269,
-  293,
-  304,
-  483,
-  575,
-  591,
-  916,
-  64,
-  228,
-  238,
-  269,
-  287,
-  400,
-  633,
-  749,
-  114,
-  173,
-  311,
-  400,
-  454,
-  634,
-  644,
-  726,
-  731,
-  860,
-  921,
-  224,
-  262,
-  367,
-  401,
-  504,
-  589,
-  630,
-  727,
-  848,
-  161,
-  392,
-  401,
-  410,
-  530,
-  548,
-  787,
-  894,
-  989,
-  121,
-  372,
-  437,
-  676,
-  929,
-  976,
-  980,
-  111,
-  365,
-  706,
-  954,
-  82,
-  379,
-  563,
-  728,
-  949,
-  124,
-  227,
-  540,
-  671,
-  767,
-  861,
-  484,
-  678,
-  840,
-  864,
-  916,
-  304,
-  348,
-  502,
-  599,
-  617,
-  657,
-  82,
-  149,
-  163,
-  216,
-  229,
-  449,
-  612,
-  620,
-  636,
-  673,
-  679,
-  756,
-  802,
-  859,
-  953,
-  142,
-  176,
-  215,
-  273,
-  335,
-  415,
-  586,
-  658,
-  682,
-  764,
-  865,
-  896,
-  923,
-  76,
-  283,
-  284,
-  464,
-  481,
-  588,
-  625,
-  742,
-  790,
-  947,
-  119,
-  186,
-  309,
-  320,
-  404,
-  407,
-  440,
-  496,
-  692,
-  853,
-  884,
-  901,
-  980,
-  990,
-  345,
-  493,
-  503,
-  691,
-  738,
-  743,
-  890,
-  929,
-  993,
-  998,
-  45,
-  272,
-  313,
-  350,
-  384,
-  452,
-  499,
-  569,
-  248,
-  346,
-  515,
-  676,
-  751,
-  755,
-  775,
-  778,
-  17,
-  491,
-  522,
-  538,
-  622,
-  672,
-  919,
-  961,
-  54,
-  126,
-  207,
-  301,
-  375,
-  447,
-  500,
-  599,
-  651,
-  683,
-  890,
-  947,
-  93,
-  317,
-  482,
-  656,
-  774,
-  865,
-  904,
-  96,
-  224,
-  260,
-  313,
-  340,
-  372,
-  410,
-  437,
-  452,
-  511,
-  512,
-  718,
-  911,
-  77,
-  100,
-  176,
-  232,
-  418,
-  661,
-  689,
-  805,
-  956,
-  51,
-  262,
-  280,
-  352,
-  380,
-  413,
-  461,
-  538,
-  616,
-  769,
-  783,
-  821,
-  855,
-  946,
-  956,
-  73,
-  169,
-  238,
-  246,
-  319,
-  391,
-  392,
-  669,
-  769,
-  770,
-  786,
-  946,
-  415,
-  453,
-  590,
-  628,
-  630,
-  684,
-  852,
-  52,
-  258,
-  318,
-  322,
-  535,
-  545,
-  561,
-  610,
-  621,
-  662,
-  687,
-  839,
-  87,
-  98,
-  181,
-  269,
-  454,
-  666,
-  667,
-  684,
-  891,
-  142,
-  270,
-  300,
-  396,
-  398,
-  443,
-  652,
-  677,
-  821,
-  0,
-  77,
-  85,
-  163,
-  180,
-  281,
-  470,
-  491,
-  665,
-  694,
-  760,
-  899,
-  992,
-  32,
-  51,
-  73,
-  75,
-  157,
-  216,
-  224,
-  301,
-  376,
-  433,
-  536,
-  612,
-  703,
-  11,
-  228,
-  456,
-  471,
-  543,
-  627,
-  650,
-  873,
-  898,
-  144,
-  258,
-  597,
-  796,
-  36,
-  394,
-  486,
-  492,
-  497,
-  681,
-  710,
-  963,
-  522,
-  582,
-  709,
-  769,
-  775,
-  987,
-  80,
-  129,
-  156,
-  281,
-  339,
-  346,
-  402,
-  777,
-  789,
-  812,
-  822,
-  859,
-  108,
-  127,
-  207,
-  293,
-  337,
-  385,
-  415,
-  479,
-  509,
-  539,
-  746,
-  785,
-  929,
-  934,
-  943,
-  27,
-  52,
-  55,
-  67,
-  124,
-  298,
-  381,
-  625,
-  690,
-  741,
-  975,
-  26,
-  112,
-  127,
-  152,
-  225,
-  513,
-  534,
-  672,
-  734,
-  766,
-  968,
-  26,
-  87,
-  123,
-  198,
-  266,
-  279,
-  410,
-  445,
-  612,
-  791,
-  807,
-  946,
-  996,
-  287,
-  417,
-  458,
-  515,
-  562,
-  576,
-  725,
-  750,
-  779,
-  92,
-  136,
-  168,
-  174,
-  213,
-  300,
-  392,
-  541,
-  602,
-  618,
-  729,
-  761,
-  960,
-  2,
-  340,
-  378,
-  414,
-  441,
-  575,
-  632,
-  731,
-  791,
-  870,
-  875,
-  2,
-  176,
-  241,
-  307,
-  436,
-  707,
-  912,
-  929,
-  962,
-  232,
-  300,
-  389,
-  397,
-  400,
-  483,
-  547,
-  628,
-  766,
-  781,
-  783,
-  833,
-  981,
-  193,
-  200,
-  224,
-  681,
-  739,
-  750,
-  25,
-  404,
-  409,
-  420,
-  511,
-  621,
-  623,
-  857,
-  909,
-  144,
-  179,
-  221,
-  223,
-  400,
-  413,
-  483,
-  507,
-  516,
-  609,
-  806,
-  869,
-  995,
-  1,
-  194,
-  270,
-  433,
-  450,
-  549,
-  591,
-  794,
-  872,
-  106,
-  125,
-  136,
-  207,
-  239,
-  432,
-  529,
-  588,
-  634,
-  869,
-  936,
-  61,
-  70,
-  156,
-  171,
-  172,
-  272,
-  582,
-  594,
-  943,
-  310,
-  445,
-  589,
-  752,
-  769,
-  775,
-  778,
-  901,
-  76,
-  130,
-  151,
-  165,
-  236,
-  473,
-  503,
-  558,
-  794,
-  804,
-  945,
-  953,
-  971,
-  2,
-  4,
-  44,
-  150,
-  167,
-  190,
-  209,
-  658,
-  747,
-  934,
-  75,
-  156,
-  315,
-  528,
-  697,
-  760,
-  156,
-  165,
-  232,
-  644,
-  680,
-  686,
-  771,
-  846,
-  100,
-  197,
-  377,
-  497,
-  658,
-  674,
-  685,
-  716,
-  759,
-  890,
-  1,
-  18,
-  104,
-  318,
-  462,
-  643,
-  793,
-  930,
-  999,
-  104,
-  112,
-  141,
-  231,
-  255,
-  414,
-  419,
-  651,
-  754,
-  900,
-  914,
-  965,
-  969,
-  43,
-  275,
-  386,
-  410,
-  419,
-  480,
-  607,
-  649,
-  688,
-  763,
-  850,
-  149,
-  184,
-  326,
-  434,
-  485,
-  599,
-  618,
-  786,
-  915,
-  54,
-  113,
-  195,
-  358,
-  383,
-  489,
-  564,
-  788,
-  840,
-  887,
-  219,
-  232,
-  351,
-  373,
-  691,
-  777,
-  42,
-  58,
-  124,
-  272,
-  297,
-  571,
-  583,
-  590,
-  618,
-  734,
-  867,
-  60,
-  90,
-  174,
-  217,
-  339,
-  423,
-  531,
-  640,
-  707,
-  767,
-  798,
-  896,
-  981,
-  208,
-  304,
-  402,
-  657,
-  959,
-  197,
-  242,
-  348,
-  373,
-  409,
-  449,
-  489,
-  529,
-  545,
-  577,
-  812,
-  844,
-  853,
-  956,
-  114,
-  128,
-  137,
-  254,
-  386,
-  401,
-  424,
-  425,
-  470,
-  509,
-  735,
-  835,
-  872,
-  899,
-  29,
-  49,
-  189,
-  201,
-  495,
-  517,
-  598,
-  669,
-  712,
-  734,
-  794,
-  903,
-  32,
-  34,
-  191,
-  411,
-  499,
-  542,
-  581,
-  593,
-  748,
-  823,
-  878,
-  99,
-  169,
-  439,
-  522,
-  729,
-  879,
-  31,
-  97,
-  195,
-  273,
-  314,
-  496,
-  498,
-  863,
-  55,
-  75,
-  100,
-  153,
-  198,
-  404,
-  459,
-  664,
-  800,
-  877,
-  919,
-  999,
-  97,
-  252,
-  330,
-  477,
-  572,
-  663,
-  687,
-  707,
-  726,
-  778,
-  822,
-  905,
-  909,
-  62,
-  285,
-  353,
-  384,
-  564,
-  578,
-  626,
-  669,
-  34,
-  82,
-  303,
-  585,
-  614,
-  682,
-  816,
-  896,
-  917,
-  971,
-  198,
-  200,
-  255,
-  508,
-  524,
-  640,
-  789,
-  840,
-  855,
-  125,
-  177,
-  277,
-  332,
-  491,
-  513,
-  514,
-  526,
-  619,
-  626,
-  651,
-  730,
-  735,
-  795,
-  999,
-  91,
-  141,
-  279,
-  457,
-  617,
-  717,
-  24,
-  26,
-  255,
-  270,
-  314,
-  333,
-  425,
-  493,
-  518,
-  626,
-  900,
-  943,
-  161,
-  381,
-  386,
-  412,
-  688,
-  795,
-  970,
-  999,
-  51,
-  77,
-  123,
-  193,
-  225,
-  227,
-  340,
-  757,
-  826,
-  901,
-  927,
-  938,
-  972,
-  180,
-  304,
-  358,
-  508,
-  531,
-  997,
-  46,
-  99,
-  182,
-  354,
-  653,
-  661,
-  749,
-  765,
-  766,
-  911,
-  50,
-  320,
-  365,
-  604,
-  720,
-  812,
-  60,
-  91,
-  196,
-  249,
-  492,
-  525,
-  671,
-  681,
-  724,
-  801,
-  813,
-  936,
-  34,
-  221,
-  318,
-  353,
-  490,
-  557,
-  584,
-  640,
-  801,
-  152,
-  253,
-  264,
-  314,
-  567,
-  587,
-  888,
-  898,
-  238,
-  263,
-  269,
-  386,
-  446,
-  578,
-  613,
-  632,
-  853,
-  893,
-  193,
-  311,
-  391,
-  604,
-  638,
-  780,
-  786,
-  890,
-  909,
-  931,
-  25,
-  152,
-  201,
-  221,
-  222,
-  345,
-  358,
-  442,
-  578,
-  622,
-  640,
-  711,
-  748,
-  979,
-  474,
-  479,
-  541,
-  963,
-  193,
-  202,
-  264,
-  365,
-  512,
-  648,
-  992,
-  60,
-  135,
-  327,
-  330,
-  355,
-  400,
-  434,
-  556,
-  561,
-  691,
-  760,
-  810,
-  848,
-  3,
-  25,
-  372,
-  421,
-  555,
-  618,
-  678,
-  723,
-  790,
-  850,
-  876,
-  947,
-  47,
-  179,
-  253,
-  284,
-  588,
-  608,
-  615,
-  688,
-  732,
-  746,
-  753,
-  923,
-  997,
-  70,
-  197,
-  212,
-  281,
-  360,
-  588,
-  897,
-  994,
-  140,
-  146,
-  209,
-  212,
-  321,
-  427,
-  581,
-  736,
-  744,
-  755,
-  848,
-  913,
-  15,
-  183,
-  733,
-  792,
-  804,
-  848,
-  854,
-  6,
-  13,
-  42,
-  187,
-  211,
-  465,
-  567,
-  741,
-  755,
-  858,
-  955,
-  36,
-  56,
-  131,
-  213,
-  352,
-  377,
-  393,
-  405,
-  520,
-  543,
-  729,
-  826,
-  865,
-  42,
-  66,
-  80,
-  116,
-  322,
-  463,
-  768,
-  866,
-  981,
-  105,
-  252,
-  513,
-  613,
-  652,
-  788,
-  199,
-  245,
-  609,
-  673,
-  703,
-  770,
-  863,
-  868,
-  34,
-  432,
-  522,
-  571,
-  641,
-  649,
-  804,
-  842,
-  934,
-  24,
-  25,
-  88,
-  322,
-  369,
-  423,
-  598,
-  632,
-  675,
-  711,
-  969,
-  161,
-  274,
-  320,
-  377,
-  434,
-  705,
-  749,
-  753,
-  850,
-  881,
-  134,
-  158,
-  235,
-  245,
-  346,
-  383,
-  422,
-  425,
-  594,
-  598,
-  735,
-  750,
-  876,
-  988,
-  144,
-  183,
-  191,
-  344,
-  460,
-  522,
-  527,
-  529,
-  537,
-  619,
-  711,
-  812,
-  852,
-  901,
-  979,
-  100,
-  143,
-  653,
-  755,
-  759,
-  816,
-  23,
-  161,
-  188,
-  223,
-  266,
-  326,
-  726,
-  750,
-  802,
-  898,
-  998,
-  27,
-  178,
-  242,
-  269,
-  604,
-  870,
-  990,
-  137,
-  350,
-  424,
-  447,
-  553,
-  559,
-  580,
-  624,
-  677,
-  690,
-  751,
-  894,
-  922,
-  995,
-  41,
-  147,
-  178,
-  272,
-  357,
-  361,
-  415,
-  782,
-  891,
-  124,
-  149,
-  194,
-  473,
-  542,
-  687,
-  758,
-  776,
-  852,
-  935,
-  33,
-  63,
-  420,
-  25,
-  54,
-  134,
-  169,
-  216,
-  217,
-  315,
-  367,
-  378,
-  452,
-  535,
-  549,
-  598,
-  624,
-  683,
-  731,
-  882,
-  893,
-  203,
-  277,
-  470,
-  676,
-  686,
-  688,
-  711,
-  805,
-  880,
-  943,
-  74,
-  139,
-  158,
-  190,
-  216,
-  295,
-  380,
-  431,
-  436,
-  445,
-  514,
-  683,
-  713,
-  807,
-  809,
-  820,
-  845,
-  897,
-  991,
-  46,
-  227,
-  290,
-  462,
-  672,
-  901,
-  10,
-  76,
-  108,
-  110,
-  111,
-  160,
-  168,
-  257,
-  453,
-  533,
-  739,
-  746,
-  764,
-  846,
-  946,
-  999,
-  36,
-  136,
-  311,
-  392,
-  724,
-  908,
-  30,
-  450,
-  495,
-  648,
-  672,
-  726,
-  878,
-  881,
-  984,
-  80,
-  208,
-  329,
-  502,
-  511,
-  515,
-  553,
-  560,
-  694,
-  824,
-  938,
-  70,
-  110,
-  144,
-  183,
-  309,
-  332,
-  337,
-  342,
-  398,
-  591,
-  635,
-  811,
-  842,
-  192,
-  339,
-  449,
-  504,
-  570,
-  594,
-  644,
-  666,
-  692,
-  779,
-  847,
-  32,
-  138,
-  155,
-  279,
-  296,
-  409,
-  427,
-  524,
-  605,
-  837,
-  919,
-  993,
-  38,
-  72,
-  139,
-  173,
-  279,
-  281,
-  285,
-  306,
-  375,
-  390,
-  426,
-  734,
-  909,
-  958,
-  17,
-  61,
-  451,
-  523,
-  573,
-  622,
-  935,
-  16,
-  74,
-  97,
-  139,
-  149,
-  193,
-  268,
-  353,
-  433,
-  475,
-  481,
-  508,
-  752,
-  881,
-  919,
-  9,
-  93,
-  292,
-  406,
-  543,
-  573,
-  610,
-  612,
-  642,
-  855,
-  326,
-  327,
-  428,
-  430,
-  677,
-  781,
-  796,
-  906,
-  918,
-  93,
-  191,
-  206,
-  467,
-  654,
-  704,
-  707,
-  709,
-  813,
-  908,
-  87,
-  212,
-  252,
-  315,
-  586,
-  755,
-  777,
-  801,
-  809,
-  838,
-  982,
-  479,
-  491,
-  499,
-  681,
-  887,
-  996,
-  37,
-  378,
-  408,
-  456,
-  460,
-  493,
-  568,
-  601,
-  616,
-  684,
-  820,
-  866,
-  915,
-  153,
-  186,
-  593,
-  781,
-  878,
-  48,
-  262,
-  320,
-  361,
-  599,
-  696,
-  698,
-  871,
-  17,
-  104,
-  128,
-  142,
-  216,
-  347,
-  468,
-  583,
-  656,
-  737,
-  752,
-  759,
-  767,
-  848,
-  860,
-  885,
-  105,
-  151,
-  173,
-  198,
-  412,
-  467,
-  701,
-  709,
-  967,
-  65,
-  165,
-  315,
-  431,
-  523,
-  562,
-  633,
-  694,
-  780,
-  782,
-  795,
-  943,
-  991,
-  28,
-  125,
-  223,
-  283,
-  384,
-  460,
-  586,
-  589,
-  600,
-  743,
-  754,
-  846,
-  907,
-  983,
-  12,
-  26,
-  94,
-  190,
-  256,
-  282,
-  380,
-  385,
-  450,
-  570,
-  582,
-  669,
-  672,
-  751,
-  804,
-  892,
-  26,
-  167,
-  259,
-  337,
-  409,
-  425,
-  121,
-  133,
-  305,
-  332,
-  408,
-  432,
-  531,
-  582,
-  598,
-  680,
-  716,
-  778,
-  790,
-  907,
-  942,
-  224,
-  240,
-  394,
-  449,
-  489,
-  503,
-  575,
-  594,
-  618,
-  653,
-  711,
-  736,
-  744,
-  821,
-  961,
-  536,
-  603,
-  781,
-  866,
-  901,
-  911,
-  916,
-  970,
-  42,
-  110,
-  186,
-  276,
-  396,
-  565,
-  573,
-  677,
-  738,
-  918,
-  956,
-  965,
-  978,
-  160,
-  191,
-  338,
-  502,
-  572,
-  721,
-  731,
-  45,
-  209,
-  224,
-  226,
-  623,
-  718,
-  721,
-  725,
-  840,
-  953,
-  977,
-  24,
-  77,
-  117,
-  290,
-  941,
-  945,
-  84,
-  200,
-  254,
-  374,
-  591,
-  635,
-  652,
-  765,
-  826,
-  949,
-  104,
-  257,
-  715,
-  162,
-  456,
-  479,
-  892,
-  34,
-  110,
-  142,
-  645,
-  664,
-  840,
-  950,
-  139,
-  313,
-  453,
-  615,
-  792,
-  798,
-  47,
-  133,
-  170,
-  350,
-  605,
-  757,
-  922,
-  940,
-  45,
-  204,
-  274,
-  369,
-  411,
-  809,
-  888,
-  903,
-  969,
-  151,
-  318,
-  354,
-  375,
-  629,
-  758,
-  881,
-  917,
-  972,
-  185,
-  238,
-  397,
-  405,
-  422,
-  450,
-  500,
-  532,
-  625,
-  677,
-  708,
-  755,
-  780,
-  824,
-  845,
-  931,
-  963,
-  975,
-  18,
-  245,
-  447,
-  519,
-  700,
-  21,
-  49,
-  130,
-  133,
-  185,
-  191,
-  388,
-  654,
-  760,
-  812,
-  817,
-  858,
-  906,
-  982,
-  997,
-  209,
-  508,
-  611,
-  691,
-  725,
-  79,
-  232,
-  320,
-  367,
-  481,
-  559,
-  649,
-  656,
-  830,
-  960,
-  40,
-  288,
-  542,
-  644,
-  646,
-  749,
-  827,
-  894,
-  929,
-  956,
-  73,
-  87,
-  215,
-  261,
-  377,
-  517,
-  822,
-  906,
-  997,
-  56,
-  267,
-  276,
-  375,
-  415,
-  528,
-  660,
-  670,
-  892,
-  959,
-  998,
-  999,
-  146,
-  329,
-  331,
-  332,
-  400,
-  510,
-  623,
-  653,
-  822,
-  18,
-  375,
-  394,
-  477,
-  482,
-  596,
-  665,
-  724,
-  847,
-  872,
-  935,
-  40,
-  136,
-  320,
-  332,
-  408,
-  767,
-  975,
-  24,
-  49,
-  156,
-  246,
-  378,
-  578,
-  627,
-  916,
-  965,
-  998,
-  123,
-  285,
-  305,
-  438,
-  476,
-  538,
-  554,
-  773,
-  804,
-  968,
-  4,
-  181,
-  240,
-  411,
-  715,
-  797,
-  802,
-  896,
-  904,
-  985,
-  68,
-  118,
-  185,
-  326,
-  645,
-  690,
-  736,
-  744,
-  961,
-  3,
-  404,
-  437,
-  572,
-  812,
-  902,
-  917,
-  921,
-  180,
-  291,
-  327,
-  328,
-  389,
-  407,
-  408,
-  530,
-  650,
-  727,
-  996,
-  230,
-  313,
-  506,
-  579,
-  593,
-  610,
-  814,
-  832,
-  840,
-  876,
-  951,
-  251,
-  327,
-  353,
-  581,
-  588,
-  711,
-  837,
-  2,
-  60,
-  165,
-  275,
-  291,
-  320,
-  735,
-  796,
-  63,
-  78,
-  165,
-  318,
-  433,
-  439,
-  456,
-  466,
-  529,
-  765,
-  144,
-  221,
-  259,
-  686,
-  793,
-  7,
-  242,
-  265,
-  433,
-  474,
-  664,
-  840,
-  954,
-  95,
-  161,
-  165,
-  209,
-  396,
-  820,
-  947,
-  36,
-  198,
-  262,
-  342,
-  449,
-  482,
-  621,
-  742,
-  756,
-  822,
-  972,
-  145,
-  339,
-  342,
-  479,
-  523,
-  811,
-  916,
-  199,
-  318,
-  323,
-  363,
-  491,
-  496,
-  562,
-  570,
-  612,
-  719,
-  739,
-  836,
-  168,
-  216,
-  252,
-  319,
-  760,
-  841,
-  845,
-  955,
-  144,
-  354,
-  442,
-  443,
-  662,
-  752,
-  936,
-  77,
-  185,
-  315,
-  473,
-  512,
-  596,
-  612,
-  634,
-  900,
-  936,
-  974,
-  166,
-  189,
-  428,
-  498,
-  755,
-  922,
-  23,
-  100,
-  204,
-  534,
-  719,
-  738,
-  854,
-  44,
-  120,
-  273,
-  407,
-  988,
-  50,
-  386,
-  460,
-  472,
-  513,
-  552,
-  811,
-  912,
-  981,
-  995,
-  24,
-  113,
-  129,
-  302,
-  442,
-  512,
-  685,
-  726,
-  966,
-  161,
-  413,
-  491,
-  498,
-  499,
-  543,
-  688,
-  690,
-  809,
-  843,
-  888,
-  564,
-  624,
-  756,
-  815,
-  832,
-  866,
-  932,
-  1,
-  13,
-  26,
-  39,
-  87,
-  176,
-  279,
-  284,
-  317,
-  344,
-  397,
-  442,
-  507,
-  591,
-  663,
-  691,
-  800,
-  803,
-  865,
-  925,
-  987,
-  995,
-  996,
-  315,
-  541,
-  557,
-  664,
-  679,
-  754,
-  808,
-  851,
-  918,
-  0,
-  117,
-  131,
-  262,
-  442,
-  627,
-  702,
-  799,
-  945,
-  281,
-  313,
-  314,
-  384,
-  427,
-  558,
-  669,
-  706,
-  720,
-  721,
-  766,
-  786,
-  840,
-  842,
-  923,
-  58,
-  119,
-  317,
-  411,
-  415,
-  416,
-  680,
-  997,
-  84,
-  442,
-  487,
-  689,
-  811,
-  833,
-  940,
-  22,
-  431,
-  515,
-  598,
-  605,
-  738,
-  876,
-  919,
-  960,
-  980,
-  3,
-  38,
-  130,
-  716,
-  854,
-  885,
-  51,
-  93,
-  141,
-  153,
-  195,
-  258,
-  329,
-  390,
-  497,
-  508,
-  680,
-  863,
-  169,
-  211,
-  335,
-  423,
-  442,
-  479,
-  864,
-  169,
-  239,
-  534,
-  605,
-  708,
-  743,
-  772,
-  814,
-  832,
-  54,
-  110,
-  167,
-  171,
-  290,
-  370,
-  433,
-  652,
-  661,
-  677,
-  710,
-  726,
-  829,
-  902,
-  915,
-  44,
-  88,
-  104,
-  214,
-  313,
-  346,
-  487,
-  555,
-  582,
-  660,
-  674,
-  713,
-  721,
-  762,
-  785,
-  797,
-  986,
-  998,
-  50,
-  143,
-  158,
-  281,
-  488,
-  566,
-  579,
-  584,
-  596,
-  846,
-  876,
-  42,
-  64,
-  71,
-  73,
-  105,
-  170,
-  171,
-  210,
-  276,
-  531,
-  577,
-  699,
-  879,
-  889,
-  925,
-  932,
-  442,
-  447,
-  462,
-  504,
-  530,
-  687,
-  714,
-  838,
-  120,
-  171,
-  280,
-  358,
-  644,
-  735,
-  765,
-  964,
-  988,
-  993,
-  80,
-  352,
-  740,
-  813,
-  999,
-  133,
-  155,
-  192,
-  196,
-  442,
-  456,
-  504,
-  519,
-  530,
-  606,
-  777,
-  916,
-  985,
-  24,
-  42,
-  351,
-  407,
-  504,
-  516,
-  682,
-  879,
-  67,
-  69,
-  145,
-  152,
-  492,
-  515,
-  562,
-  575,
-  658,
-  668,
-  700,
-  722,
-  811,
-  956,
-  18,
-  126,
-  283,
-  289,
-  297,
-  307,
-  337,
-  368,
-  519,
-  615,
-  789,
-  838,
-  876,
-  970,
-  38,
-  137,
-  307,
-  378,
-  436,
-  437,
-  453,
-  520,
-  793,
-  844,
-  893,
-  168,
-  179,
-  230,
-  327,
-  487,
-  662,
-  727,
-  126,
-  320,
-  584,
-  707,
-  864,
-  895,
-  295,
-  309,
-  781,
-  823,
-  988,
-  18,
-  42,
-  151,
-  163,
-  259,
-  324,
-  349,
-  416,
-  521,
-  659,
-  689,
-  912,
-  24,
-  87,
-  201,
-  319,
-  406,
-  434,
-  488,
-  554,
-  576,
-  624,
-  714,
-  851,
-  995,
-  49,
-  142,
-  236,
-  300,
-  416,
-  497,
-  586,
-  708,
-  777,
-  962,
-  969,
-  217,
-  235,
-  279,
-  316,
-  430,
-  491,
-  630,
-  842,
-  907,
-  124,
-  143,
-  180,
-  455,
-  672,
-  695,
-  891,
-  971,
-  90,
-  173,
-  363,
-  410,
-  446,
-  480,
-  528,
-  631,
-  690,
-  777,
-  792,
-  143,
-  187,
-  261,
-  268,
-  292,
-  410,
-  524,
-  557,
-  618,
-  643,
-  656,
-  680,
-  807,
-  812,
-  824,
-  900,
-  2,
-  5,
-  117,
-  216,
-  329,
-  355,
-  400,
-  493,
-  606,
-  631,
-  850,
-  875,
-  947,
-  93,
-  134,
-  172,
-  427,
-  477,
-  508,
-  540,
-  585,
-  878,
-  123,
-  302,
-  594,
-  678,
-  697,
-  747,
-  824,
-  868,
-  965,
-  14,
-  21,
-  178,
-  180,
-  227,
-  281,
-  379,
-  412,
-  417,
-  450,
-  456,
-  465,
-  589,
-  596,
-  736,
-  760,
-  844,
-  13,
-  81,
-  177,
-  276,
-  327,
-  359,
-  623,
-  674,
-  676,
-  3,
-  6,
-  34,
-  144,
-  150,
-  202,
-  219,
-  376,
-  429,
-  539,
-  648,
-  663,
-  885,
-  944,
-  997,
-  31,
-  259,
-  263,
-  291,
-  646,
-  783,
-  820,
-  836,
-  903,
-  929,
-  83,
-  145,
-  193,
-  372,
-  392,
-  422,
-  564,
-  734,
-  740,
-  846,
-  868,
-  945,
-  185,
-  277,
-  325,
-  394,
-  499,
-  649,
-  656,
-  748,
-  841,
-  922,
-  958,
-  19,
-  43,
-  51,
-  96,
-  291,
-  397,
-  680,
-  729,
-  913,
-  943,
-  978,
-  151,
-  179,
-  234,
-  248,
-  358,
-  692,
-  704,
-  778,
-  809,
-  847,
-  850,
-  873,
-  969,
-  242,
-  327,
-  340,
-  552,
-  736,
-  742,
-  837,
-  959,
-  179,
-  216,
-  355,
-  356,
-  443,
-  447,
-  512,
-  515,
-  529,
-  634,
-  786,
-  47,
-  142,
-  203,
-  223,
-  606,
-  623,
-  815,
-  24,
-  37,
-  67,
-  199,
-  272,
-  349,
-  380,
-  512,
-  574,
-  586,
-  743,
-  847,
-  890,
-  897,
-  25,
-  107,
-  347,
-  474,
-  476,
-  621,
-  642,
-  734,
-  755,
-  142,
-  211,
-  273,
-  526,
-  528,
-  602,
-  632,
-  761,
-  765,
-  776,
-  847,
-  112,
-  118,
-  140,
-  153,
-  229,
-  313,
-  448,
-  469,
-  619,
-  627,
-  637,
-  672,
-  751,
-  900,
-  906,
-  297,
-  411,
-  464,
-  497,
-  691,
-  740,
-  886,
-  14,
-  109,
-  125,
-  187,
-  194,
-  241,
-  263,
-  379,
-  552,
-  615,
-  657,
-  670,
-  750,
-  47,
-  133,
-  386,
-  482,
-  517,
-  641,
-  696,
-  734,
-  951,
-  1,
-  101,
-  103,
-  134,
-  205,
-  526,
-  533,
-  538,
-  559,
-  594,
-  680,
-  835,
-  4,
-  224,
-  526,
-  600,
-  769,
-  885,
-  991,
-  2,
-  292,
-  326,
-  380,
-  393,
-  539,
-  798,
-  907,
-  465,
-  641,
-  727,
-  763,
-  794,
-  854,
-  44,
-  92,
-  235,
-  381,
-  420,
-  430,
-  461,
-  538,
-  555,
-  725,
-  756,
-  849,
-  177,
-  180,
-  337,
-  353,
-  540,
-  571,
-  588,
-  706,
-  734,
-  753,
-  776,
-  786,
-  982,
-  999,
-  10,
-  159,
-  258,
-  428,
-  449,
-  505,
-  588,
-  888,
-  998,
-  55,
-  79,
-  95,
-  211,
-  226,
-  432,
-  435,
-  560,
-  563,
-  613,
-  694,
-  806,
-  968,
-  90,
-  165,
-  207,
-  422,
-  439,
-  489,
-  674,
-  693,
-  985,
-  8,
-  111,
-  336,
-  474,
-  489,
-  554,
-  715,
-  742,
-  772,
-  889,
-  906,
-  918,
-  102,
-  197,
-  236,
-  294,
-  345,
-  562,
-  568,
-  697,
-  850,
-  950,
-  113,
-  151,
-  204,
-  226,
-  235,
-  267,
-  302,
-  380,
-  407,
-  499,
-  813,
-  916,
-  956,
-  200,
-  275,
-  403,
-  546,
-  607,
-  697,
-  734,
-  187,
-  211,
-  255,
-  329,
-  359,
-  421,
-  495,
-  555,
-  581,
-  696,
-  961,
-  973,
-  231,
-  318,
-  359,
-  388,
-  422,
-  643,
-  707,
-  932,
-  940,
-  949,
-  3,
-  65,
-  128,
-  134,
-  172,
-  231,
-  349,
-  728,
-  749,
-  757,
-  772,
-  891,
-  150,
-  185,
-  551,
-  599,
-  617,
-  709,
-  816,
-  170,
-  339,
-  406,
-  487,
-  800,
-  887,
-  71,
-  196,
-  209,
-  449,
-  497,
-  517,
-  518,
-  529,
-  629,
-  661,
-  715,
-  869,
-  20,
-  37,
-  96,
-  99,
-  214,
-  273,
-  400,
-  555,
-  917,
-  31,
-  227,
-  228,
-  246,
-  353,
-  379,
-  507,
-  534,
-  590,
-  620,
-  680,
-  734,
-  830,
-  876,
-  955,
-  996,
-  5,
-  361,
-  364,
-  559,
-  699,
-  882,
-  920,
-  11,
-  114,
-  119,
-  154,
-  161,
-  319,
-  467,
-  533,
-  570,
-  787,
-  827,
-  995,
-  23,
-  171,
-  240,
-  254,
-  268,
-  287,
-  455,
-  580,
-  672,
-  726,
-  977,
-  982,
-  203,
-  239,
-  298,
-  407,
-  579,
-  594,
-  610,
-  624,
-  672,
-  756,
-  161,
-  228,
-  437,
-  465,
-  552,
-  861,
-  879,
-  968,
-  987,
-  989,
-  59,
-  79,
-  143,
-  149,
-  166,
-  271,
-  300,
-  411,
-  641,
-  677,
-  757,
-  868,
-  918,
-  994,
-  0,
-  321,
-  340,
-  346,
-  548,
-  788,
-  821,
-  953,
-  59,
-  120,
-  230,
-  344,
-  726,
-  823,
-  850,
-  83,
-  121,
-  201,
-  345,
-  355,
-  369,
-  398,
-  422,
-  507,
-  527,
-  554,
-  599,
-  712,
-  735,
-  874,
-  900,
-  28,
-  40,
-  149,
-  243,
-  344,
-  494,
-  759,
-  902,
-  979,
-  9,
-  168,
-  493,
-  610,
-  655,
-  747,
-  806,
-  975,
-  8,
-  29,
-  56,
-  150,
-  177,
-  207,
-  268,
-  364,
-  368,
-  458,
-  473,
-  719,
-  796,
-  862,
-  865,
-  45,
-  52,
-  115,
-  198,
-  285,
-  377,
-  396,
-  548,
-  682,
-  705,
-  807,
-  833,
-  957,
-  36,
-  149,
-  150,
-  278,
-  440,
-  451,
-  558,
-  575,
-  625,
-  630,
-  689,
-  932,
-  953,
-  985,
-  16,
-  106,
-  338,
-  342,
-  667,
-  675,
-  723,
-  745,
-  973,
-  86,
-  175,
-  207,
-  262,
-  385,
-  496,
-  774,
-  33,
-  222,
-  265,
-  295,
-  297,
-  410,
-  412,
-  500,
-  526,
-  595,
-  813,
-  899,
-  87,
-  155,
-  168,
-  505,
-  612,
-  650,
-  753,
-  819,
-  830,
-  103,
-  147,
-  237,
-  278,
-  438,
-  480,
-  490,
-  648,
-  671,
-  748,
-  822,
-  183,
-  246,
-  400,
-  541,
-  582,
-  614,
-  622,
-  745,
-  807,
-  80,
-  137,
-  430,
-  461,
-  541,
-  724,
-  6,
-  142,
-  168,
-  183,
-  196,
-  313,
-  484,
-  594,
-  635,
-  716,
-  803,
-  825,
-  861,
-  972,
-  981,
-  83,
-  164,
-  202,
-  232,
-  270,
-  311,
-  404,
-  431,
-  688,
-  729,
-  867,
-  903,
-  925,
-  69,
-  283,
-  295,
-  363,
-  410,
-  434,
-  457,
-  481,
-  574,
-  578,
-  587,
-  600,
-  664,
-  803,
-  858,
-  76,
-  205,
-  334,
-  441,
-  553,
-  590,
-  944,
-  69,
-  272,
-  486,
-  513,
-  604,
-  749,
-  842,
-  852,
-  954,
-  17,
-  86,
-  115,
-  203,
-  343,
-  355,
-  467,
-  478,
-  629,
-  646,
-  748,
-  811,
-  900,
-  13,
-  25,
-  120,
-  353,
-  608,
-  612,
-  747,
-  766,
-  856,
-  109,
-  234,
-  265,
-  279,
-  325,
-  379,
-  418,
-  464,
-  550,
-  552,
-  571,
-  344,
-  448,
-  517,
-  682,
-  895,
-  173,
-  242,
-  281,
-  314,
-  350,
-  502,
-  518,
-  552,
-  745,
-  19,
-  70,
-  75,
-  80,
-  695,
-  697,
-  793,
-  877,
-  85,
-  189,
-  248,
-  300,
-  417,
-  433,
-  507,
-  936,
-  947,
-  8,
-  351,
-  368,
-  400,
-  450,
-  470,
-  474,
-  501,
-  518,
-  524,
-  558,
-  616,
-  666,
-  712,
-  953,
-  172,
-  398,
-  644,
-  680,
-  785,
-  71,
-  116,
-  288,
-  314,
-  327,
-  488,
-  724,
-  770,
-  858,
-  934,
-  958,
-  67,
-  115,
-  279,
-  654,
-  689,
-  707,
-  752,
-  888,
-  966,
-  208,
-  544,
-  679,
-  719,
-  789,
-  831,
-  49,
-  263,
-  420,
-  433,
-  502,
-  602,
-  651,
-  678,
-  730,
-  756,
-  762,
-  900,
-  100,
-  113,
-  177,
-  198,
-  509,
-  516,
-  596,
-  645,
-  783,
-  939,
-  987,
-  335,
-  429,
-  437,
-  543,
-  566,
-  695,
-  707,
-  747,
-  868,
-  921,
-  0,
-  84,
-  203,
-  215,
-  477,
-  523,
-  526,
-  612,
-  627,
-  766,
-  778,
-  809,
-  126,
-  203,
-  373,
-  590,
-  640,
-  863,
-  871,
-  937,
-  201,
-  221,
-  729,
-  746,
-  772,
-  924,
-  937,
-  964,
-  78,
-  339,
-  406,
-  424,
-  475,
-  679,
-  869,
-  938,
-  64,
-  147,
-  163,
-  171,
-  293,
-  381,
-  390,
-  511,
-  989,
-  63,
-  85,
-  208,
-  335,
-  441,
-  510,
-  566,
-  586,
-  909,
-  935,
-  970,
-  50,
-  100,
-  351,
-  354,
-  397,
-  442,
-  448,
-  580,
-  657,
-  789,
-  836,
-  293,
-  311,
-  456,
-  795,
-  796,
-  799,
-  909,
-  972,
-  984,
-  28,
-  132,
-  226,
-  361,
-  473,
-  493,
-  586,
-  611,
-  676,
-  693,
-  939,
-  948,
-  150,
-  185,
-  269,
-  362,
-  648,
-  650,
-  870,
-  307,
-  330,
-  438,
-  756,
-  852,
-  99,
-  223,
-  285,
-  371,
-  767,
-  912,
-  966,
-  1,
-  3,
-  111,
-  583,
-  733,
-  841,
-  959,
-  977,
-  115,
-  263,
-  283,
-  498,
-  517,
-  534,
-  604,
-  656,
-  661,
-  769,
-  876,
-  974,
-  59,
-  123,
-  291,
-  343,
-  473,
-  565,
-  634,
-  834,
-  898,
-  923,
-  962,
-  75,
-  85,
-  92,
-  125,
-  305,
-  827,
-  836,
-  901,
-  936,
-  28,
-  124,
-  316,
-  541,
-  636,
-  694,
-&n