diff --git a/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.cc b/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.cc
new file mode 100644
index 0000000000000000000000000000000000000000..0e518d3946c45c9b43604ec8bff5bd7571f3632c
--- /dev/null
+++ b/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.cc
@@ -0,0 +1,2142 @@
+//# Always #include <lofar_config.h> first!
+#include <lofar_config.h>
+
+#include <BandPass.h>
+#include <CS1_Interface/AlignedStdAllocator.h>
+#include <CS1_Interface/CS1_Config.h>
+
+#include <vector>
+
+#if defined HAVE_FFTW3
+#include <fftw3.h>
+#elif defined HAVE_FFTW2
+#include <fftw.h>
+#else
+#error Should have FFTW3 or FFTW2 installed
+#endif
+
+#include <complex> // FIXME
+#include <iostream> // FIXME
+
+typedef std::complex<float> fcomplex;
+
+
+namespace LOFAR {
+namespace CS1 {
+
+
+const float BandPass::stationFilterConstants[65536] =
+{
+     36,    36,    35,    35,    34,    33,    32,    31,
+     29,    28,    26,    25,    23,    21,    20,    18,
+     17,    15,    14,    12,    11,    10,     9,     9,
+      8,     8,     7,     7,     7,     7,     7,     7,
+      7,     7,     8,     8,     8,     9,     9,     9,
+     10,    10,    10,    10,    11,    11,    11,    11,
+     11,    11,    11,    11,    11,    11,    11,    11,
+     11,    11,    11,    11,    11,    11,    11,    11,
+     11,    11,    12,    12,    12,    12,    12,    12,
+     13,    13,    13,    13,    13,    13,    13,    13,
+     14,    14,    14,    14,    14,    14,    14,    14,
+     14,    14,    14,    14,    14,    14,    15,    15,
+     15,    15,    15,    15,    15,    15,    16,    16,
+     16,    16,    16,    16,    16,    17,    17,    17,
+     17,    17,    17,    17,    17,    17,    17,    18,
+     18,    18,    18,    18,    18,    18,    18,    18,
+     19,    19,    19,    19,    19,    19,    19,    20,
+     20,    20,    20,    20,    20,    20,    21,    21,
+     21,    21,    21,    21,    21,    21,    22,    22,
+     22,    22,    22,    22,    22,    22,    23,    23,
+     23,    23,    23,    23,    23,    24,    24,    24,
+     24,    24,    24,    25,    25,    25,    25,    25,
+     25,    26,    26,    26,    26,    26,    26,    26,
+     27,    27,    27,    27,    27,    27,    27,    28,
+     28,    28,    28,    28,    28,    29,    29,    29,
+     29,    29,    29,    30,    30,    30,    30,    30,
+     31,    31,    31,    31,    31,    31,    32,    32,
+     32,    32,    32,    32,    33,    33,    33,    33,
+     33,    33,    34,    34,    34,    34,    34,    35,
+     35,    35,    35,    35,    36,    36,    36,    36,
+     36,    37,    37,    37,    37,    37,    37,    38,
+     38,    38,    38,    38,    39,    39,    39,    39,
+     39,    40,    40,    40,    40,    40,    41,    41,
+     41,    41,    42,    42,    42,    42,    42,    43,
+     43,    43,    43,    43,    44,    44,    44,    44,
+     44,    45,    45,    45,    45,    46,    46,    46,
+     46,    46,    47,    47,    47,    47,    48,    48,
+     48,    48,    49,    49,    49,    49,    50,    50,
+     50,    50,    50,    51,    51,    51,    51,    52,
+     52,    52,    52,    53,    53,    53,    53,    54,
+     54,    54,    54,    55,    55,    55,    55,    56,
+     56,    56,    56,    57,    57,    57,    57,    58,
+     58,    58,    58,    59,    59,    59,    59,    60,
+     60,    60,    60,    61,    61,    61,    62,    62,
+     62,    62,    63,    63,    63,    63,    64,    64,
+     64,    65,    65,    65,    65,    66,    66,    66,
+     67,    67,    67,    67,    68,    68,    68,    69,
+     69,    69,    69,    70,    70,    70,    71,    71,
+     71,    71,    72,    72,    72,    73,    73,    73,
+     74,    74,    74,    74,    75,    75,    75,    76,
+     76,    76,    77,    77,    77,    77,    78,    78,
+     78,    79,    79,    79,    80,    80,    80,    81,
+     81,    81,    82,    82,    82,    83,    83,    83,
+     84,    84,    84,    85,    85,    85,    85,    86,
+     86,    86,    87,    87,    87,    88,    88,    88,
+     89,    89,    89,    90,    90,    90,    91,    91,
+     92,    92,    92,    93,    93,    93,    94,    94,
+     94,    95,    95,    95,    96,    96,    96,    97,
+     97,    97,    98,    98,    99,    99,    99,   100,
+    100,   100,   101,   101,   101,   102,   102,   103,
+    103,   103,   104,   104,   104,   105,   105,   105,
+    106,   106,   107,   107,   107,   108,   108,   108,
+    109,   109,   110,   110,   110,   111,   111,   112,
+    112,   112,   113,   113,   113,   114,   114,   115,
+    115,   115,   116,   116,   117,   117,   117,   118,
+    118,   119,   119,   119,   120,   120,   121,   121,
+    121,   122,   122,   123,   123,   123,   124,   124,
+    125,   125,   125,   126,   126,   127,   127,   127,
+    128,   128,   129,   129,   130,   130,   130,   131,
+    131,   132,   132,   132,   133,   133,   134,   134,
+    135,   135,   135,   136,   136,   137,   137,   138,
+    138,   138,   139,   139,   140,   140,   141,   141,
+    141,   142,   142,   143,   143,   144,   144,   145,
+    145,   145,   146,   146,   147,   147,   148,   148,
+    149,   149,   149,   150,   150,   151,   151,   152,
+    152,   153,   153,   153,   154,   154,   155,   155,
+    156,   156,   157,   157,   158,   158,   159,   159,
+    159,   160,   160,   161,   161,   162,   162,   163,
+    163,   164,   164,   165,   165,   165,   166,   166,
+    167,   167,   168,   168,   169,   169,   170,   170,
+    171,   171,   172,   172,   173,   173,   174,   174,
+    174,   175,   175,   176,   176,   177,   177,   178,
+    178,   179,   179,   180,   180,   181,   181,   182,
+    182,   183,   183,   184,   184,   185,   185,   186,
+    186,   187,   187,   188,   188,   189,   189,   190,
+    190,   191,   191,   192,   192,   193,   193,   194,
+    194,   195,   195,   196,   196,   197,   197,   198,
+    198,   199,   199,   200,   200,   201,   201,   202,
+    202,   203,   203,   204,   204,   205,   205,   206,
+    206,   207,   207,   208,   208,   209,   209,   210,
+    210,   211,   211,   212,   212,   213,   213,   214,
+    214,   215,   215,   216,   217,   217,   218,   218,
+    219,   219,   220,   220,   221,   221,   222,   222,
+    223,   223,   224,   224,   225,   225,   226,   226,
+    227,   227,   228,   229,   229,   230,   230,   231,
+    231,   232,   232,   233,   233,   234,   234,   235,
+    235,   236,   236,   237,   237,   238,   239,   239,
+    240,   240,   241,   241,   242,   242,   243,   243,
+    244,   244,   245,   245,   246,   247,   247,   248,
+    248,   249,   249,   250,   250,   251,   251,   252,
+    252,   253,   253,   254,   255,   255,   256,   256,
+    257,   257,   258,   258,   259,   259,   260,   260,
+    261,   261,   262,   263,   263,   264,   264,   265,
+    265,   266,   266,   267,   267,   268,   268,   269,
+    270,   270,   271,   271,   272,   272,   273,   273,
+    274,   274,   275,   275,   276,   277,   277,   278,
+    278,   279,   279,   280,   280,   281,   281,   282,
+    282,   283,   283,   284,   285,   285,   286,   286,
+    287,   287,   288,   288,   289,   289,   290,   290,
+    291,   291,   292,   293,   293,   294,   294,   295,
+    295,   296,   296,   297,   297,   298,   298,   299,
+    299,   300,   300,   301,   302,   302,   303,   303,
+    304,   304,   305,   305,   306,   306,   307,   307,
+    308,   308,   309,   309,   310,   311,   311,   312,
+    312,   313,   313,   314,   314,   315,   315,   316,
+    316,   317,   317,   318,   318,   319,   319,   320,
+    320,   321,   321,   322,   322,   323,   323,   324,
+    325,   325,   326,   326,   327,   327,   328,   328,
+    329,   329,   330,   330,   331,   331,   332,   332,
+    333,   333,   334,   334,   335,   335,   336,   336,
+    337,   337,   338,   338,   339,   339,   340,   340,
+    341,   341,   342,   342,   343,   343,   344,   344,
+    345,   345,   346,   346,   347,   347,   348,   348,
+    348,   349,   349,   350,   350,   351,   351,   352,
+    352,   353,   353,   354,   354,   355,   355,   356,
+    356,   357,   357,   358,   358,   359,   359,   359,
+    360,   360,   361,   361,   362,   362,   363,   363,
+    364,   364,   365,   365,   365,   366,   366,   367,
+    367,   368,   368,   369,   369,   370,   370,   370,
+    371,   371,   372,   372,   373,   373,   373,   374,
+    374,   375,   375,   376,   376,   377,   377,   377,
+    378,   378,   379,   379,   380,   380,   380,   381,
+    381,   382,   382,   382,   383,   383,   384,   384,
+    385,   385,   385,   386,   386,   387,   387,   387,
+    388,   388,   389,   389,   389,   390,   390,   391,
+    391,   391,   392,   392,   393,   393,   393,   394,
+    394,   394,   395,   395,   396,   396,   396,   397,
+    397,   397,   398,   398,   399,   399,   399,   400,
+    400,   400,   401,   401,   401,   402,   402,   402,
+    403,   403,   404,   404,   404,   405,   405,   405,
+    406,   406,   406,   407,   407,   407,   408,   408,
+    408,   409,   409,   409,   409,   410,   410,   410,
+    411,   411,   411,   412,   412,   412,   413,   413,
+    413,   414,   414,   414,   414,   415,   415,   415,
+    416,   416,   416,   416,   417,   417,   417,   418,
+    418,   418,   418,   419,   419,   419,   419,   420,
+    420,   420,   420,   421,   421,   421,   421,   422,
+    422,   422,   422,   423,   423,   423,   423,   424,
+    424,   424,   424,   425,   425,   425,   425,   425,
+    426,   426,   426,   426,   427,   427,   427,   427,
+    427,   428,   428,   428,   428,   428,   429,   429,
+    429,   429,   429,   429,   430,   430,   430,   430,
+    430,   430,   431,   431,   431,   431,   431,   431,
+    432,   432,   432,   432,   432,   432,   432,   433,
+    433,   433,   433,   433,   433,   433,   434,   434,
+    434,   434,   434,   434,   434,   434,   434,   435,
+    435,   435,   435,   435,   435,   435,   435,   435,
+    435,   436,   436,   436,   436,   436,   436,   436,
+    436,   436,   436,   436,   436,   436,   436,   436,
+    436,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    436,   436,   436,   436,   436,   436,   436,   436,
+    436,   436,   436,   436,   436,   436,   436,   435,
+    435,   435,   435,   435,   435,   435,   435,   435,
+    435,   434,   434,   434,   434,   434,   434,   434,
+    434,   433,   433,   433,   433,   433,   433,   433,
+    432,   432,   432,   432,   432,   432,   432,   431,
+    431,   431,   431,   431,   430,   430,   430,   430,
+    430,   429,   429,   429,   429,   429,   428,   428,
+    428,   428,   428,   427,   427,   427,   427,   426,
+    426,   426,   426,   425,   425,   425,   425,   424,
+    424,   424,   424,   423,   423,   423,   423,   422,
+    422,   422,   421,   421,   421,   420,   420,   420,
+    420,   419,   419,   419,   418,   418,   418,   417,
+    417,   417,   416,   416,   416,   415,   415,   415,
+    414,   414,   413,   413,   413,   412,   412,   412,
+    411,   411,   410,   410,   410,   409,   409,   409,
+    408,   408,   407,   407,   406,   406,   406,   405,
+    405,   404,   404,   403,   403,   403,   402,   402,
+    401,   401,   400,   400,   399,   399,   398,   398,
+    398,   397,   397,   396,   396,   395,   395,   394,
+    394,   393,   393,   392,   392,   391,   391,   390,
+    389,   389,   388,   388,   387,   387,   386,   386,
+    385,   385,   384,   383,   383,   382,   382,   381,
+    381,   380,   379,   379,   378,   378,   377,   376,
+    376,   375,   375,   374,   373,   373,   372,   372,
+    371,   370,   370,   369,   368,   368,   367,   367,
+    366,   365,   365,   364,   363,   363,   362,   361,
+    361,   360,   359,   358,   358,   357,   356,   356,
+    355,   354,   354,   353,   352,   351,   351,   350,
+    349,   349,   348,   347,   346,   346,   345,   344,
+    343,   343,   342,   341,   340,   339,   339,   338,
+    337,   336,   336,   335,   334,   333,   332,   332,
+    331,   330,   329,   328,   328,   327,   326,   325,
+    324,   323,   323,   322,   321,   320,   319,   318,
+    318,   317,   316,   315,   314,   313,   312,   311,
+    311,   310,   309,   308,   307,   306,   305,   304,
+    303,   302,   302,   301,   300,   299,   298,   297,
+    296,   295,   294,   293,   292,   291,   290,   289,
+    288,   288,   287,   286,   285,   284,   283,   282,
+    281,   280,   279,   278,   277,   276,   275,   274,
+    273,   272,   271,   270,   269,   268,   267,   266,
+    265,   264,   262,   261,   260,   259,   258,   257,
+    256,   255,   254,   253,   252,   251,   250,   249,
+    248,   247,   245,   244,   243,   242,   241,   240,
+    239,   238,   237,   236,   234,   233,   232,   231,
+    230,   229,   228,   227,   225,   224,   223,   222,
+    221,   220,   218,   217,   216,   215,   214,   213,
+    211,   210,   209,   208,   207,   206,   204,   203,
+    202,   201,   200,   198,   197,   196,   195,   193,
+    192,   191,   190,   189,   187,   186,   185,   184,
+    182,   181,   180,   179,   177,   176,   175,   174,
+    172,   171,   170,   168,   167,   166,   165,   163,
+    162,   161,   159,   158,   157,   155,   154,   153,
+    152,   150,   149,   148,   146,   145,   144,   142,
+    141,   140,   138,   137,   136,   134,   133,   132,
+    130,   129,   127,   126,   125,   123,   122,   121,
+    119,   118,   116,   115,   114,   112,   111,   109,
+    108,   107,   105,   104,   102,   101,   100,    98,
+     97,    95,    94,    93,    91,    90,    88,    87,
+     85,    84,    82,    81,    80,    78,    77,    75,
+     74,    72,    71,    69,    68,    66,    65,    64,
+     62,    61,    59,    58,    56,    55,    53,    52,
+     50,    49,    47,    46,    44,    43,    41,    40,
+     38,    37,    35,    34,    32,    30,    29,    27,
+     26,    24,    23,    21,    20,    18,    17,    15,
+     14,    12,    10,     9,     7,     6,     4,     3,
+      1,     0,    -2,    -4,    -5,    -7,    -8,   -10,
+    -11,   -13,   -15,   -16,   -18,   -19,   -21,   -23,
+    -24,   -26,   -27,   -29,   -31,   -32,   -34,   -35,
+    -37,   -39,   -40,   -42,   -43,   -45,   -47,   -48,
+    -50,   -52,   -53,   -55,   -57,   -58,   -60,   -61,
+    -63,   -65,   -66,   -68,   -70,   -71,   -73,   -75,
+    -76,   -78,   -80,   -81,   -83,   -84,   -86,   -88,
+    -89,   -91,   -93,   -94,   -96,   -98,   -99,  -101,
+   -103,  -105,  -106,  -108,  -110,  -111,  -113,  -115,
+   -116,  -118,  -120,  -121,  -123,  -125,  -126,  -128,
+   -130,  -132,  -133,  -135,  -137,  -138,  -140,  -142,
+   -143,  -145,  -147,  -149,  -150,  -152,  -154,  -155,
+   -157,  -159,  -161,  -162,  -164,  -166,  -167,  -169,
+   -171,  -173,  -174,  -176,  -178,  -180,  -181,  -183,
+   -185,  -186,  -188,  -190,  -192,  -193,  -195,  -197,
+   -199,  -200,  -202,  -204,  -206,  -207,  -209,  -211,
+   -213,  -214,  -216,  -218,  -219,  -221,  -223,  -225,
+   -226,  -228,  -230,  -232,  -233,  -235,  -237,  -239,
+   -240,  -242,  -244,  -246,  -247,  -249,  -251,  -253,
+   -255,  -256,  -258,  -260,  -262,  -263,  -265,  -267,
+   -269,  -270,  -272,  -274,  -276,  -277,  -279,  -281,
+   -283,  -284,  -286,  -288,  -290,  -291,  -293,  -295,
+   -297,  -299,  -300,  -302,  -304,  -306,  -307,  -309,
+   -311,  -313,  -314,  -316,  -318,  -320,  -321,  -323,
+   -325,  -327,  -328,  -330,  -332,  -334,  -336,  -337,
+   -339,  -341,  -343,  -344,  -346,  -348,  -350,  -351,
+   -353,  -355,  -357,  -358,  -360,  -362,  -364,  -365,
+   -367,  -369,  -371,  -372,  -374,  -376,  -378,  -379,
+   -381,  -383,  -385,  -386,  -388,  -390,  -392,  -393,
+   -395,  -397,  -399,  -400,  -402,  -404,  -406,  -407,
+   -409,  -411,  -413,  -414,  -416,  -418,  -419,  -421,
+   -423,  -425,  -426,  -428,  -430,  -432,  -433,  -435,
+   -437,  -438,  -440,  -442,  -444,  -445,  -447,  -449,
+   -450,  -452,  -454,  -456,  -457,  -459,  -461,  -462,
+   -464,  -466,  -468,  -469,  -471,  -473,  -474,  -476,
+   -478,  -479,  -481,  -483,  -485,  -486,  -488,  -490,
+   -491,  -493,  -495,  -496,  -498,  -500,  -501,  -503,
+   -505,  -506,  -508,  -510,  -511,  -513,  -515,  -516,
+   -518,  -520,  -521,  -523,  -525,  -526,  -528,  -530,
+   -531,  -533,  -534,  -536,  -538,  -539,  -541,  -543,
+   -544,  -546,  -547,  -549,  -551,  -552,  -554,  -556,
+   -557,  -559,  -560,  -562,  -564,  -565,  -567,  -568,
+   -570,  -572,  -573,  -575,  -576,  -578,  -579,  -581,
+   -583,  -584,  -586,  -587,  -589,  -590,  -592,  -594,
+   -595,  -597,  -598,  -600,  -601,  -603,  -604,  -606,
+   -607,  -609,  -610,  -612,  -614,  -615,  -617,  -618,
+   -620,  -621,  -623,  -624,  -626,  -627,  -629,  -630,
+   -632,  -633,  -635,  -636,  -638,  -639,  -640,  -642,
+   -643,  -645,  -646,  -648,  -649,  -651,  -652,  -654,
+   -655,  -656,  -658,  -659,  -661,  -662,  -664,  -665,
+   -666,  -668,  -669,  -671,  -672,  -673,  -675,  -676,
+   -678,  -679,  -680,  -682,  -683,  -685,  -686,  -687,
+   -689,  -690,  -691,  -693,  -694,  -695,  -697,  -698,
+   -699,  -701,  -702,  -703,  -705,  -706,  -707,  -709,
+   -710,  -711,  -713,  -714,  -715,  -716,  -718,  -719,
+   -720,  -722,  -723,  -724,  -725,  -727,  -728,  -729,
+   -730,  -732,  -733,  -734,  -735,  -736,  -738,  -739,
+   -740,  -741,  -743,  -744,  -745,  -746,  -747,  -748,
+   -750,  -751,  -752,  -753,  -754,  -755,  -757,  -758,
+   -759,  -760,  -761,  -762,  -763,  -765,  -766,  -767,
+   -768,  -769,  -770,  -771,  -772,  -773,  -774,  -776,
+   -777,  -778,  -779,  -780,  -781,  -782,  -783,  -784,
+   -785,  -786,  -787,  -788,  -789,  -790,  -791,  -792,
+   -793,  -794,  -795,  -796,  -797,  -798,  -799,  -800,
+   -801,  -802,  -803,  -804,  -805,  -806,  -807,  -808,
+   -808,  -809,  -810,  -811,  -812,  -813,  -814,  -815,
+   -816,  -816,  -817,  -818,  -819,  -820,  -821,  -822,
+   -822,  -823,  -824,  -825,  -826,  -827,  -827,  -828,
+   -829,  -830,  -831,  -831,  -832,  -833,  -834,  -834,
+   -835,  -836,  -837,  -837,  -838,  -839,  -840,  -840,
+   -841,  -842,  -842,  -843,  -844,  -844,  -845,  -846,
+   -846,  -847,  -848,  -848,  -849,  -850,  -850,  -851,
+   -852,  -852,  -853,  -853,  -854,  -855,  -855,  -856,
+   -856,  -857,  -857,  -858,  -859,  -859,  -860,  -860,
+   -861,  -861,  -862,  -862,  -863,  -863,  -864,  -864,
+   -865,  -865,  -866,  -866,  -867,  -867,  -867,  -868,
+   -868,  -869,  -869,  -870,  -870,  -870,  -871,  -871,
+   -871,  -872,  -872,  -873,  -873,  -873,  -874,  -874,
+   -874,  -875,  -875,  -875,  -876,  -876,  -876,  -876,
+   -877,  -877,  -877,  -878,  -878,  -878,  -878,  -879,
+   -879,  -879,  -879,  -879,  -880,  -880,  -880,  -880,
+   -880,  -881,  -881,  -881,  -881,  -881,  -881,  -881,
+   -882,  -882,  -882,  -882,  -882,  -882,  -882,  -882,
+   -882,  -882,  -882,  -882,  -883,  -883,  -883,  -883,
+   -883,  -883,  -883,  -883,  -883,  -883,  -883,  -883,
+   -883,  -883,  -882,  -882,  -882,  -882,  -882,  -882,
+   -882,  -882,  -882,  -882,  -882,  -882,  -881,  -881,
+   -881,  -881,  -881,  -881,  -880,  -880,  -880,  -880,
+   -880,  -879,  -879,  -879,  -879,  -879,  -878,  -878,
+   -878,  -878,  -877,  -877,  -877,  -876,  -876,  -876,
+   -876,  -875,  -875,  -875,  -874,  -874,  -874,  -873,
+   -873,  -872,  -872,  -872,  -871,  -871,  -870,  -870,
+   -870,  -869,  -869,  -868,  -868,  -867,  -867,  -866,
+   -866,  -865,  -865,  -864,  -864,  -863,  -863,  -862,
+   -862,  -861,  -861,  -860,  -860,  -859,  -858,  -858,
+   -857,  -857,  -856,  -855,  -855,  -854,  -854,  -853,
+   -852,  -852,  -851,  -850,  -850,  -849,  -848,  -847,
+   -847,  -846,  -845,  -845,  -844,  -843,  -842,  -842,
+   -841,  -840,  -839,  -838,  -838,  -837,  -836,  -835,
+   -834,  -833,  -833,  -832,  -831,  -830,  -829,  -828,
+   -827,  -827,  -826,  -825,  -824,  -823,  -822,  -821,
+   -820,  -819,  -818,  -817,  -816,  -815,  -814,  -813,
+   -812,  -811,  -810,  -809,  -808,  -807,  -806,  -805,
+   -804,  -803,  -802,  -801,  -800,  -798,  -797,  -796,
+   -795,  -794,  -793,  -792,  -791,  -789,  -788,  -787,
+   -786,  -785,  -783,  -782,  -781,  -780,  -779,  -777,
+   -776,  -775,  -774,  -772,  -771,  -770,  -769,  -767,
+   -766,  -765,  -763,  -762,  -761,  -759,  -758,  -757,
+   -755,  -754,  -753,  -751,  -750,  -748,  -747,  -746,
+   -744,  -743,  -741,  -740,  -738,  -737,  -735,  -734,
+   -733,  -731,  -730,  -728,  -727,  -725,  -724,  -722,
+   -720,  -719,  -717,  -716,  -714,  -713,  -711,  -710,
+   -708,  -706,  -705,  -703,  -702,  -700,  -698,  -697,
+   -695,  -693,  -692,  -690,  -688,  -687,  -685,  -683,
+   -682,  -680,  -678,  -676,  -675,  -673,  -671,  -669,
+   -668,  -666,  -664,  -662,  -661,  -659,  -657,  -655,
+   -653,  -651,  -650,  -648,  -646,  -644,  -642,  -640,
+   -639,  -637,  -635,  -633,  -631,  -629,  -627,  -625,
+   -623,  -621,  -619,  -617,  -615,  -614,  -612,  -610,
+   -608,  -606,  -604,  -602,  -600,  -598,  -596,  -594,
+   -592,  -589,  -587,  -585,  -583,  -581,  -579,  -577,
+   -575,  -573,  -571,  -569,  -567,  -564,  -562,  -560,
+   -558,  -556,  -554,  -552,  -549,  -547,  -545,  -543,
+   -541,  -538,  -536,  -534,  -532,  -530,  -527,  -525,
+   -523,  -521,  -518,  -516,  -514,  -512,  -509,  -507,
+   -505,  -502,  -500,  -498,  -495,  -493,  -491,  -488,
+   -486,  -484,  -481,  -479,  -477,  -474,  -472,  -469,
+   -467,  -465,  -462,  -460,  -457,  -455,  -453,  -450,
+   -448,  -445,  -443,  -440,  -438,  -435,  -433,  -430,
+   -428,  -425,  -423,  -420,  -418,  -415,  -413,  -410,
+   -408,  -405,  -403,  -400,  -398,  -395,  -392,  -390,
+   -387,  -385,  -382,  -380,  -377,  -374,  -372,  -369,
+   -366,  -364,  -361,  -359,  -356,  -353,  -351,  -348,
+   -345,  -343,  -340,  -337,  -334,  -332,  -329,  -326,
+   -324,  -321,  -318,  -315,  -313,  -310,  -307,  -305,
+   -302,  -299,  -296,  -293,  -291,  -288,  -285,  -282,
+   -280,  -277,  -274,  -271,  -268,  -266,  -263,  -260,
+   -257,  -254,  -251,  -248,  -246,  -243,  -240,  -237,
+   -234,  -231,  -228,  -226,  -223,  -220,  -217,  -214,
+   -211,  -208,  -205,  -202,  -199,  -196,  -194,  -191,
+   -188,  -185,  -182,  -179,  -176,  -173,  -170,  -167,
+   -164,  -161,  -158,  -155,  -152,  -149,  -146,  -143,
+   -140,  -137,  -134,  -131,  -128,  -125,  -122,  -119,
+   -116,  -113,  -110,  -107,  -104,  -100,   -97,   -94,
+    -91,   -88,   -85,   -82,   -79,   -76,   -73,   -70,
+    -67,   -63,   -60,   -57,   -54,   -51,   -48,   -45,
+    -42,   -39,   -35,   -32,   -29,   -26,   -23,   -20,
+    -16,   -13,   -10,    -7,    -4,    -1,     2,     6,
+      9,    12,    15,    18,    22,    25,    28,    31,
+     34,    38,    41,    44,    47,    50,    54,    57,
+     60,    63,    67,    70,    73,    76,    79,    83,
+     86,    89,    92,    96,    99,   102,   105,   109,
+    112,   115,   118,   122,   125,   128,   132,   135,
+    138,   141,   145,   148,   151,   154,   158,   161,
+    164,   168,   171,   174,   178,   181,   184,   187,
+    191,   194,   197,   201,   204,   207,   211,   214,
+    217,   221,   224,   227,   230,   234,   237,   240,
+    244,   247,   250,   254,   257,   260,   264,   267,
+    270,   274,   277,   280,   284,   287,   290,   294,
+    297,   300,   304,   307,   310,   314,   317,   320,
+    324,   327,   330,   334,   337,   341,   344,   347,
+    351,   354,   357,   361,   364,   367,   371,   374,
+    377,   381,   384,   387,   391,   394,   397,   401,
+    404,   407,   411,   414,   417,   421,   424,   427,
+    431,   434,   437,   441,   444,   448,   451,   454,
+    458,   461,   464,   468,   471,   474,   478,   481,
+    484,   488,   491,   494,   498,   501,   504,   507,
+    511,   514,   517,   521,   524,   527,   531,   534,
+    537,   541,   544,   547,   551,   554,   557,   560,
+    564,   567,   570,   574,   577,   580,   584,   587,
+    590,   593,   597,   600,   603,   606,   610,   613,
+    616,   620,   623,   626,   629,   633,   636,   639,
+    642,   646,   649,   652,   655,   659,   662,   665,
+    668,   671,   675,   678,   681,   684,   688,   691,
+    694,   697,   700,   704,   707,   710,   713,   716,
+    720,   723,   726,   729,   732,   735,   739,   742,
+    745,   748,   751,   754,   758,   761,   764,   767,
+    770,   773,   776,   779,   783,   786,   789,   792,
+    795,   798,   801,   804,   807,   810,   813,   817,
+    820,   823,   826,   829,   832,   835,   838,   841,
+    844,   847,   850,   853,   856,   859,   862,   865,
+    868,   871,   874,   877,   880,   883,   886,   889,
+    892,   895,   898,   901,   904,   907,   910,   913,
+    915,   918,   921,   924,   927,   930,   933,   936,
+    939,   942,   944,   947,   950,   953,   956,   959,
+    961,   964,   967,   970,   973,   976,   978,   981,
+    984,   987,   990,   992,   995,   998,  1001,  1003,
+   1006,  1009,  1012,  1014,  1017,  1020,  1022,  1025,
+   1028,  1030,  1033,  1036,  1038,  1041,  1044,  1046,
+   1049,  1052,  1054,  1057,  1060,  1062,  1065,  1067,
+   1070,  1073,  1075,  1078,  1080,  1083,  1085,  1088,
+   1090,  1093,  1095,  1098,  1100,  1103,  1105,  1108,
+   1110,  1113,  1115,  1118,  1120,  1123,  1125,  1128,
+   1130,  1132,  1135,  1137,  1140,  1142,  1144,  1147,
+   1149,  1151,  1154,  1156,  1158,  1161,  1163,  1165,
+   1168,  1170,  1172,  1174,  1177,  1179,  1181,  1183,
+   1186,  1188,  1190,  1192,  1195,  1197,  1199,  1201,
+   1203,  1205,  1208,  1210,  1212,  1214,  1216,  1218,
+   1220,  1222,  1224,  1227,  1229,  1231,  1233,  1235,
+   1237,  1239,  1241,  1243,  1245,  1247,  1249,  1251,
+   1253,  1255,  1257,  1258,  1260,  1262,  1264,  1266,
+   1268,  1270,  1272,  1274,  1275,  1277,  1279,  1281,
+   1283,  1284,  1286,  1288,  1290,  1292,  1293,  1295,
+   1297,  1299,  1300,  1302,  1304,  1305,  1307,  1309,
+   1310,  1312,  1314,  1315,  1317,  1318,  1320,  1322,
+   1323,  1325,  1326,  1328,  1329,  1331,  1332,  1334,
+   1335,  1337,  1338,  1340,  1341,  1343,  1344,  1346,
+   1347,  1348,  1350,  1351,  1353,  1354,  1355,  1357,
+   1358,  1359,  1361,  1362,  1363,  1364,  1366,  1367,
+   1368,  1369,  1371,  1372,  1373,  1374,  1375,  1377,
+   1378,  1379,  1380,  1381,  1382,  1383,  1384,  1386,
+   1387,  1388,  1389,  1390,  1391,  1392,  1393,  1394,
+   1395,  1396,  1397,  1398,  1399,  1400,  1400,  1401,
+   1402,  1403,  1404,  1405,  1406,  1406,  1407,  1408,
+   1409,  1410,  1410,  1411,  1412,  1413,  1413,  1414,
+   1415,  1416,  1416,  1417,  1418,  1418,  1419,  1420,
+   1420,  1421,  1421,  1422,  1422,  1423,  1424,  1424,
+   1425,  1425,  1426,  1426,  1427,  1427,  1427,  1428,
+   1428,  1429,  1429,  1429,  1430,  1430,  1431,  1431,
+   1431,  1432,  1432,  1432,  1432,  1433,  1433,  1433,
+   1433,  1434,  1434,  1434,  1434,  1434,  1434,  1435,
+   1435,  1435,  1435,  1435,  1435,  1435,  1435,  1435,
+   1435,  1435,  1435,  1435,  1435,  1435,  1435,  1435,
+   1435,  1435,  1435,  1435,  1435,  1434,  1434,  1434,
+   1434,  1434,  1434,  1433,  1433,  1433,  1433,  1432,
+   1432,  1432,  1432,  1431,  1431,  1431,  1430,  1430,
+   1429,  1429,  1429,  1428,  1428,  1427,  1427,  1426,
+   1426,  1425,  1425,  1424,  1424,  1423,  1423,  1422,
+   1422,  1421,  1420,  1420,  1419,  1419,  1418,  1417,
+   1416,  1416,  1415,  1414,  1414,  1413,  1412,  1411,
+   1410,  1410,  1409,  1408,  1407,  1406,  1405,  1405,
+   1404,  1403,  1402,  1401,  1400,  1399,  1398,  1397,
+   1396,  1395,  1394,  1393,  1392,  1391,  1390,  1389,
+   1387,  1386,  1385,  1384,  1383,  1382,  1380,  1379,
+   1378,  1377,  1376,  1374,  1373,  1372,  1370,  1369,
+   1368,  1367,  1365,  1364,  1362,  1361,  1360,  1358,
+   1357,  1355,  1354,  1352,  1351,  1349,  1348,  1346,
+   1345,  1343,  1342,  1340,  1339,  1337,  1335,  1334,
+   1332,  1330,  1329,  1327,  1325,  1324,  1322,  1320,
+   1319,  1317,  1315,  1313,  1311,  1310,  1308,  1306,
+   1304,  1302,  1300,  1298,  1297,  1295,  1293,  1291,
+   1289,  1287,  1285,  1283,  1281,  1279,  1277,  1275,
+   1273,  1271,  1268,  1266,  1264,  1262,  1260,  1258,
+   1256,  1253,  1251,  1249,  1247,  1245,  1242,  1240,
+   1238,  1236,  1233,  1231,  1229,  1226,  1224,  1222,
+   1219,  1217,  1214,  1212,  1210,  1207,  1205,  1202,
+   1200,  1197,  1195,  1192,  1190,  1187,  1185,  1182,
+   1179,  1177,  1174,  1172,  1169,  1166,  1164,  1161,
+   1158,  1156,  1153,  1150,  1148,  1145,  1142,  1139,
+   1136,  1134,  1131,  1128,  1125,  1122,  1119,  1117,
+   1114,  1111,  1108,  1105,  1102,  1099,  1096,  1093,
+   1090,  1087,  1084,  1081,  1078,  1075,  1072,  1069,
+   1066,  1063,  1060,  1057,  1053,  1050,  1047,  1044,
+   1041,  1038,  1034,  1031,  1028,  1025,  1021,  1018,
+   1015,  1012,  1008,  1005,  1002,   998,   995,   992,
+    988,   985,   981,   978,   975,   971,   968,   964,
+    961,   957,   954,   950,   947,   943,   940,   936,
+    933,   929,   926,   922,   918,   915,   911,   908,
+    904,   900,   897,   893,   889,   885,   882,   878,
+    874,   871,   867,   863,   859,   855,   852,   848,
+    844,   840,   836,   832,   829,   825,   821,   817,
+    813,   809,   805,   801,   797,   793,   789,   785,
+    781,   777,   773,   769,   765,   761,   757,   753,
+    749,   745,   741,   737,   732,   728,   724,   720,
+    716,   712,   707,   703,   699,   695,   691,   686,
+    682,   678,   674,   669,   665,   661,   656,   652,
+    648,   643,   639,   635,   630,   626,   622,   617,
+    613,   608,   604,   600,   595,   591,   586,   582,
+    577,   573,   568,   564,   559,   555,   550,   546,
+    541,   537,   532,   528,   523,   518,   514,   509,
+    505,   500,   495,   491,   486,   481,   477,   472,
+    467,   463,   458,   453,   448,   444,   439,   434,
+    429,   425,   420,   415,   410,   406,   401,   396,
+    391,   386,   382,   377,   372,   367,   362,   357,
+    352,   347,   343,   338,   333,   328,   323,   318,
+    313,   308,   303,   298,   293,   288,   283,   278,
+    273,   268,   263,   258,   253,   248,   243,   238,
+    233,   228,   223,   218,   213,   208,   203,   198,
+    193,   187,   182,   177,   172,   167,   162,   157,
+    152,   146,   141,   136,   131,   126,   121,   115,
+    110,   105,   100,    95,    89,    84,    79,    74,
+     68,    63,    58,    53,    47,    42,    37,    32,
+     26,    21,    16,    10,     5,     0,    -5,   -11,
+    -16,   -21,   -27,   -32,   -37,   -43,   -48,   -53,
+    -59,   -64,   -70,   -75,   -80,   -86,   -91,   -96,
+   -102,  -107,  -113,  -118,  -123,  -129,  -134,  -140,
+   -145,  -150,  -156,  -161,  -167,  -172,  -178,  -183,
+   -188,  -194,  -199,  -205,  -210,  -216,  -221,  -227,
+   -232,  -238,  -243,  -248,  -254,  -259,  -265,  -270,
+   -276,  -281,  -287,  -292,  -298,  -303,  -309,  -314,
+   -320,  -325,  -331,  -336,  -342,  -347,  -353,  -358,
+   -364,  -369,  -375,  -381,  -386,  -392,  -397,  -403,
+   -408,  -414,  -419,  -425,  -430,  -436,  -441,  -447,
+   -452,  -458,  -464,  -469,  -475,  -480,  -486,  -491,
+   -497,  -502,  -508,  -513,  -519,  -524,  -530,  -536,
+   -541,  -547,  -552,  -558,  -563,  -569,  -574,  -580,
+   -585,  -591,  -597,  -602,  -608,  -613,  -619,  -624,
+   -630,  -635,  -641,  -646,  -652,  -658,  -663,  -669,
+   -674,  -680,  -685,  -691,  -696,  -702,  -707,  -713,
+   -718,  -724,  -729,  -735,  -740,  -746,  -751,  -757,
+   -762,  -768,  -773,  -779,  -784,  -790,  -795,  -801,
+   -806,  -812,  -817,  -823,  -828,  -834,  -839,  -845,
+   -850,  -856,  -861,  -867,  -872,  -877,  -883,  -888,
+   -894,  -899,  -905,  -910,  -916,  -921,  -926,  -932,
+   -937,  -943,  -948,  -953,  -959,  -964,  -970,  -975,
+   -980,  -986,  -991,  -997, -1002, -1007, -1013, -1018,
+  -1023, -1029, -1034, -1039, -1045, -1050, -1055, -1061,
+  -1066, -1071, -1077, -1082, -1087, -1092, -1098, -1103,
+  -1108, -1114, -1119, -1124, -1129, -1135, -1140, -1145,
+  -1150, -1155, -1161, -1166, -1171, -1176, -1181, -1187,
+  -1192, -1197, -1202, -1207, -1212, -1218, -1223, -1228,
+  -1233, -1238, -1243, -1248, -1253, -1258, -1264, -1269,
+  -1274, -1279, -1284, -1289, -1294, -1299, -1304, -1309,
+  -1314, -1319, -1324, -1329, -1334, -1339, -1344, -1349,
+  -1354, -1359, -1364, -1369, -1374, -1378, -1383, -1388,
+  -1393, -1398, -1403, -1408, -1413, -1417, -1422, -1427,
+  -1432, -1437, -1441, -1446, -1451, -1456, -1461, -1465,
+  -1470, -1475, -1480, -1484, -1489, -1494, -1498, -1503,
+  -1508, -1512, -1517, -1522, -1526, -1531, -1535, -1540,
+  -1545, -1549, -1554, -1558, -1563, -1567, -1572, -1577,
+  -1581, -1586, -1590, -1594, -1599, -1603, -1608, -1612,
+  -1617, -1621, -1625, -1630, -1634, -1639, -1643, -1647,
+  -1652, -1656, -1660, -1665, -1669, -1673, -1677, -1682,
+  -1686, -1690, -1694, -1699, -1703, -1707, -1711, -1715,
+  -1719, -1724, -1728, -1732, -1736, -1740, -1744, -1748,
+  -1752, -1756, -1760, -1764, -1768, -1772, -1776, -1780,
+  -1784, -1788, -1792, -1796, -1800, -1804, -1807, -1811,
+  -1815, -1819, -1823, -1827, -1830, -1834, -1838, -1842,
+  -1845, -1849, -1853, -1857, -1860, -1864, -1868, -1871,
+  -1875, -1878, -1882, -1886, -1889, -1893, -1896, -1900,
+  -1903, -1907, -1910, -1914, -1917, -1921, -1924, -1927,
+  -1931, -1934, -1938, -1941, -1944, -1948, -1951, -1954,
+  -1957, -1961, -1964, -1967, -1970, -1974, -1977, -1980,
+  -1983, -1986, -1989, -1992, -1996, -1999, -2002, -2005,
+  -2008, -2011, -2014, -2017, -2020, -2023, -2026, -2029,
+  -2031, -2034, -2037, -2040, -2043, -2046, -2049, -2051,
+  -2054, -2057, -2060, -2062, -2065, -2068, -2070, -2073,
+  -2076, -2078, -2081, -2083, -2086, -2089, -2091, -2094,
+  -2096, -2099, -2101, -2104, -2106, -2108, -2111, -2113,
+  -2116, -2118, -2120, -2122, -2125, -2127, -2129, -2132,
+  -2134, -2136, -2138, -2140, -2142, -2145, -2147, -2149,
+  -2151, -2153, -2155, -2157, -2159, -2161, -2163, -2165,
+  -2167, -2169, -2171, -2173, -2174, -2176, -2178, -2180,
+  -2182, -2184, -2185, -2187, -2189, -2190, -2192, -2194,
+  -2195, -2197, -2199, -2200, -2202, -2203, -2205, -2206,
+  -2208, -2209, -2211, -2212, -2214, -2215, -2216, -2218,
+  -2219, -2220, -2222, -2223, -2224, -2225, -2227, -2228,
+  -2229, -2230, -2231, -2232, -2233, -2235, -2236, -2237,
+  -2238, -2239, -2240, -2241, -2242, -2242, -2243, -2244,
+  -2245, -2246, -2247, -2248, -2248, -2249, -2250, -2251,
+  -2251, -2252, -2253, -2253, -2254, -2254, -2255, -2256,
+  -2256, -2257, -2257, -2258, -2258, -2259, -2259, -2259,
+  -2260, -2260, -2260, -2261, -2261, -2261, -2261, -2262,
+  -2262, -2262, -2262, -2262, -2263, -2263, -2263, -2263,
+  -2263, -2263, -2263, -2263, -2263, -2263, -2263, -2263,
+  -2262, -2262, -2262, -2262, -2262, -2261, -2261, -2261,
+  -2261, -2260, -2260, -2260, -2259, -2259, -2258, -2258,
+  -2257, -2257, -2256, -2256, -2255, -2255, -2254, -2254,
+  -2253, -2252, -2252, -2251, -2250, -2249, -2249, -2248,
+  -2247, -2246, -2245, -2244, -2244, -2243, -2242, -2241,
+  -2240, -2239, -2238, -2237, -2236, -2234, -2233, -2232,
+  -2231, -2230, -2229, -2227, -2226, -2225, -2224, -2222,
+  -2221, -2220, -2218, -2217, -2215, -2214, -2212, -2211,
+  -2209, -2208, -2206, -2205, -2203, -2202, -2200, -2198,
+  -2197, -2195, -2193, -2191, -2190, -2188, -2186, -2184,
+  -2182, -2180, -2179, -2177, -2175, -2173, -2171, -2169,
+  -2167, -2165, -2162, -2160, -2158, -2156, -2154, -2152,
+  -2150, -2147, -2145, -2143, -2140, -2138, -2136, -2133,
+  -2131, -2129, -2126, -2124, -2121, -2119, -2116, -2114,
+  -2111, -2108, -2106, -2103, -2101, -2098, -2095, -2092,
+  -2090, -2087, -2084, -2081, -2079, -2076, -2073, -2070,
+  -2067, -2064, -2061, -2058, -2055, -2052, -2049, -2046,
+  -2043, -2040, -2037, -2033, -2030, -2027, -2024, -2021,
+  -2017, -2014, -2011, -2007, -2004, -2001, -1997, -1994,
+  -1990, -1987, -1983, -1980, -1976, -1973, -1969, -1966,
+  -1962, -1958, -1955, -1951, -1947, -1944, -1940, -1936,
+  -1932, -1928, -1925, -1921, -1917, -1913, -1909, -1905,
+  -1901, -1897, -1893, -1889, -1885, -1881, -1877, -1873,
+  -1869, -1864, -1860, -1856, -1852, -1848, -1843, -1839,
+  -1835, -1830, -1826, -1822, -1817, -1813, -1809, -1804,
+  -1800, -1795, -1791, -1786, -1782, -1777, -1772, -1768,
+  -1763, -1758, -1754, -1749, -1744, -1740, -1735, -1730,
+  -1725, -1720, -1716, -1711, -1706, -1701, -1696, -1691,
+  -1686, -1681, -1676, -1671, -1666, -1661, -1656, -1651,
+  -1646, -1640, -1635, -1630, -1625, -1620, -1614, -1609,
+  -1604, -1599, -1593, -1588, -1582, -1577, -1572, -1566,
+  -1561, -1555, -1550, -1544, -1539, -1533, -1528, -1522,
+  -1516, -1511, -1505, -1500, -1494, -1488, -1482, -1477,
+  -1471, -1465, -1459, -1454, -1448, -1442, -1436, -1430,
+  -1424, -1418, -1412, -1406, -1400, -1394, -1388, -1382,
+  -1376, -1370, -1364, -1358, -1352, -1346, -1339, -1333,
+  -1327, -1321, -1315, -1308, -1302, -1296, -1289, -1283,
+  -1277, -1270, -1264, -1258, -1251, -1245, -1238, -1232,
+  -1225, -1219, -1212, -1206, -1199, -1193, -1186, -1179,
+  -1173, -1166, -1159, -1153, -1146, -1139, -1133, -1126,
+  -1119, -1112, -1105, -1099, -1092, -1085, -1078, -1071,
+  -1064, -1057, -1050, -1044, -1037, -1030, -1023, -1016,
+  -1009, -1001,  -994,  -987,  -980,  -973,  -966,  -959,
+   -952,  -945,  -937,  -930,  -923,  -916,  -908,  -901,
+   -894,  -887,  -879,  -872,  -865,  -857,  -850,  -842,
+   -835,  -828,  -820,  -813,  -805,  -798,  -790,  -783,
+   -775,  -768,  -760,  -753,  -745,  -738,  -730,  -722,
+   -715,  -707,  -699,  -692,  -684,  -676,  -669,  -661,
+   -653,  -645,  -638,  -630,  -622,  -614,  -606,  -599,
+   -591,  -583,  -575,  -567,  -559,  -551,  -543,  -536,
+   -528,  -520,  -512,  -504,  -496,  -488,  -480,  -472,
+   -464,  -456,  -447,  -439,  -431,  -423,  -415,  -407,
+   -399,  -391,  -382,  -374,  -366,  -358,  -350,  -342,
+   -333,  -325,  -317,  -309,  -300,  -292,  -284,  -275,
+   -267,  -259,  -250,  -242,  -234,  -225,  -217,  -209,
+   -200,  -192,  -183,  -175,  -167,  -158,  -150,  -141,
+   -133,  -124,  -116,  -107,   -99,   -90,   -82,   -73,
+    -65,   -56,   -48,   -39,   -30,   -22,   -13,    -5,
+      4,    12,    21,    30,    38,    47,    56,    64,
+     73,    82,    90,    99,   108,   116,   125,   134,
+    143,   151,   160,   169,   178,   186,   195,   204,
+    213,   221,   230,   239,   248,   257,   265,   274,
+    283,   292,   301,   310,   318,   327,   336,   345,
+    354,   363,   372,   381,   389,   398,   407,   416,
+    425,   434,   443,   452,   461,   470,   479,   488,
+    496,   505,   514,   523,   532,   541,   550,   559,
+    568,   577,   586,   595,   604,   613,   622,   631,
+    640,   649,   658,   667,   676,   685,   694,   703,
+    712,   721,   730,   739,   748,   757,   766,   775,
+    784,   793,   802,   811,   820,   829,   838,   847,
+    856,   865,   874,   883,   892,   901,   910,   920,
+    929,   938,   947,   956,   965,   974,   983,   992,
+   1001,  1010,  1019,  1028,  1037,  1046,  1055,  1064,
+   1073,  1082,  1091,  1100,  1109,  1118,  1127,  1136,
+   1145,  1154,  1163,  1172,  1181,  1190,  1199,  1208,
+   1217,  1226,  1235,  1244,  1253,  1262,  1271,  1280,
+   1289,  1298,  1307,  1316,  1324,  1333,  1342,  1351,
+   1360,  1369,  1378,  1387,  1396,  1405,  1414,  1423,
+   1431,  1440,  1449,  1458,  1467,  1476,  1485,  1493,
+   1502,  1511,  1520,  1529,  1538,  1546,  1555,  1564,
+   1573,  1582,  1590,  1599,  1608,  1617,  1625,  1634,
+   1643,  1652,  1660,  1669,  1678,  1687,  1695,  1704,
+   1713,  1721,  1730,  1739,  1747,  1756,  1765,  1773,
+   1782,  1790,  1799,  1808,  1816,  1825,  1833,  1842,
+   1850,  1859,  1867,  1876,  1884,  1893,  1901,  1910,
+   1918,  1927,  1935,  1944,  1952,  1961,  1969,  1977,
+   1986,  1994,  2002,  2011,  2019,  2027,  2036,  2044,
+   2052,  2061,  2069,  2077,  2085,  2094,  2102,  2110,
+   2118,  2127,  2135,  2143,  2151,  2159,  2167,  2175,
+   2183,  2192,  2200,  2208,  2216,  2224,  2232,  2240,
+   2248,  2256,  2264,  2272,  2280,  2288,  2296,  2303,
+   2311,  2319,  2327,  2335,  2343,  2351,  2358,  2366,
+   2374,  2382,  2389,  2397,  2405,  2412,  2420,  2428,
+   2435,  2443,  2451,  2458,  2466,  2473,  2481,  2489,
+   2496,  2504,  2511,  2518,  2526,  2533,  2541,  2548,
+   2556,  2563,  2570,  2578,  2585,  2592,  2599,  2607,
+   2614,  2621,  2628,  2636,  2643,  2650,  2657,  2664,
+   2671,  2678,  2685,  2692,  2700,  2707,  2714,  2720,
+   2727,  2734,  2741,  2748,  2755,  2762,  2769,  2776,
+   2782,  2789,  2796,  2803,  2809,  2816,  2823,  2829,
+   2836,  2843,  2849,  2856,  2862,  2869,  2875,  2882,
+   2888,  2895,  2901,  2908,  2914,  2920,  2927,  2933,
+   2939,  2945,  2952,  2958,  2964,  2970,  2977,  2983,
+   2989,  2995,  3001,  3007,  3013,  3019,  3025,  3031,
+   3037,  3043,  3049,  3055,  3060,  3066,  3072,  3078,
+   3084,  3089,  3095,  3101,  3106,  3112,  3118,  3123,
+   3129,  3134,  3140,  3145,  3151,  3156,  3162,  3167,
+   3172,  3178,  3183,  3188,  3193,  3199,  3204,  3209,
+   3214,  3219,  3224,  3230,  3235,  3240,  3245,  3250,
+   3255,  3260,  3264,  3269,  3274,  3279,  3284,  3289,
+   3293,  3298,  3303,  3307,  3312,  3317,  3321,  3326,
+   3330,  3335,  3339,  3344,  3348,  3352,  3357,  3361,
+   3365,  3370,  3374,  3378,  3382,  3387,  3391,  3395,
+   3399,  3403,  3407,  3411,  3415,  3419,  3423,  3427,
+   3430,  3434,  3438,  3442,  3446,  3449,  3453,  3457,
+   3460,  3464,  3467,  3471,  3474,  3478,  3481,  3485,
+   3488,  3491,  3495,  3498,  3501,  3505,  3508,  3511,
+   3514,  3517,  3520,  3523,  3526,  3529,  3532,  3535,
+   3538,  3541,  3544,  3547,  3549,  3552,  3555,  3557,
+   3560,  3563,  3565,  3568,  3570,  3573,  3575,  3578,
+   3580,  3583,  3585,  3587,  3589,  3592,  3594,  3596,
+   3598,  3600,  3602,  3604,  3606,  3608,  3610,  3612,
+   3614,  3616,  3618,  3620,  3621,  3623,  3625,  3626,
+   3628,  3630,  3631,  3633,  3634,  3635,  3637,  3638,
+   3640,  3641,  3642,  3643,  3645,  3646,  3647,  3648,
+   3649,  3650,  3651,  3652,  3653,  3654,  3655,  3656,
+   3657,  3657,  3658,  3659,  3659,  3660,  3661,  3661,
+   3662,  3662,  3663,  3663,  3664,  3664,  3664,  3665,
+   3665,  3665,  3665,  3665,  3665,  3666,  3666,  3666,
+   3666,  3666,  3665,  3665,  3665,  3665,  3665,  3664,
+   3664,  3664,  3663,  3663,  3663,  3662,  3662,  3661,
+   3660,  3660,  3659,  3658,  3658,  3657,  3656,  3655,
+   3654,  3653,  3652,  3651,  3650,  3649,  3648,  3647,
+   3646,  3645,  3644,  3642,  3641,  3640,  3638,  3637,
+   3635,  3634,  3632,  3631,  3629,  3627,  3626,  3624,
+   3622,  3621,  3619,  3617,  3615,  3613,  3611,  3609,
+   3607,  3605,  3603,  3601,  3598,  3596,  3594,  3592,
+   3589,  3587,  3585,  3582,  3580,  3577,  3575,  3572,
+   3569,  3567,  3564,  3561,  3558,  3556,  3553,  3550,
+   3547,  3544,  3541,  3538,  3535,  3532,  3528,  3525,
+   3522,  3519,  3515,  3512,  3509,  3505,  3502,  3498,
+   3495,  3491,  3488,  3484,  3480,  3477,  3473,  3469,
+   3465,  3461,  3458,  3454,  3450,  3446,  3442,  3437,
+   3433,  3429,  3425,  3421,  3416,  3412,  3408,  3403,
+   3399,  3395,  3390,  3385,  3381,  3376,  3372,  3367,
+   3362,  3357,  3353,  3348,  3343,  3338,  3333,  3328,
+   3323,  3318,  3313,  3308,  3303,  3297,  3292,  3287,
+   3282,  3276,  3271,  3265,  3260,  3254,  3249,  3243,
+   3238,  3232,  3226,  3221,  3215,  3209,  3203,  3197,
+   3191,  3185,  3179,  3173,  3167,  3161,  3155,  3149,
+   3143,  3136,  3130,  3124,  3117,  3111,  3105,  3098,
+   3092,  3085,  3079,  3072,  3065,  3059,  3052,  3045,
+   3038,  3031,  3025,  3018,  3011,  3004,  2997,  2990,
+   2983,  2975,  2968,  2961,  2954,  2947,  2939,  2932,
+   2925,  2917,  2910,  2902,  2895,  2887,  2879,  2872,
+   2864,  2856,  2849,  2841,  2833,  2825,  2817,  2809,
+   2801,  2793,  2785,  2777,  2769,  2761,  2753,  2745,
+   2737,  2728,  2720,  2712,  2703,  2695,  2686,  2678,
+   2669,  2661,  2652,  2644,  2635,  2626,  2617,  2609,
+   2600,  2591,  2582,  2573,  2564,  2555,  2546,  2537,
+   2528,  2519,  2510,  2501,  2491,  2482,  2473,  2464,
+   2454,  2445,  2435,  2426,  2417,  2407,  2397,  2388,
+   2378,  2369,  2359,  2349,  2339,  2330,  2320,  2310,
+   2300,  2290,  2280,  2270,  2260,  2250,  2240,  2230,
+   2220,  2209,  2199,  2189,  2179,  2168,  2158,  2148,
+   2137,  2127,  2116,  2106,  2095,  2085,  2074,  2063,
+   2053,  2042,  2031,  2021,  2010,  1999,  1988,  1977,
+   1966,  1955,  1944,  1933,  1922,  1911,  1900,  1889,
+   1878,  1867,  1855,  1844,  1833,  1821,  1810,  1799,
+   1787,  1776,  1764,  1753,  1741,  1730,  1718,  1707,
+   1695,  1683,  1671,  1660,  1648,  1636,  1624,  1612,
+   1601,  1589,  1577,  1565,  1553,  1541,  1529,  1517,
+   1504,  1492,  1480,  1468,  1456,  1443,  1431,  1419,
+   1407,  1394,  1382,  1369,  1357,  1344,  1332,  1319,
+   1307,  1294,  1282,  1269,  1256,  1244,  1231,  1218,
+   1205,  1193,  1180,  1167,  1154,  1141,  1128,  1115,
+   1102,  1089,  1076,  1063,  1050,  1037,  1024,  1011,
+    998,   984,   971,   958,   945,   931,   918,   905,
+    891,   878,   864,   851,   838,   824,   811,   797,
+    783,   770,   756,   743,   729,   715,   702,   688,
+    674,   660,   647,   633,   619,   605,   591,   577,
+    563,   549,   535,   521,   507,   493,   479,   465,
+    451,   437,   423,   409,   395,   380,   366,   352,
+    338,   323,   309,   295,   280,   266,   252,   237,
+    223,   209,   194,   180,   165,   151,   136,   122,
+    107,    92,    78,    63,    49,    34,    19,     5,
+    -10,   -25,   -40,   -54,   -69,   -84,   -99,  -114,
+   -128,  -143,  -158,  -173,  -188,  -203,  -218,  -233,
+   -248,  -263,  -278,  -293,  -308,  -323,  -338,  -353,
+   -368,  -383,  -398,  -413,  -428,  -443,  -459,  -474,
+   -489,  -504,  -519,  -535,  -550,  -565,  -580,  -596,
+   -611,  -626,  -642,  -657,  -672,  -688,  -703,  -718,
+   -734,  -749,  -765,  -780,  -795,  -811,  -826,  -842,
+   -857,  -873,  -888,  -904,  -919,  -935,  -950,  -966,
+   -981,  -997, -1013, -1028, -1044, -1059, -1075, -1091,
+  -1106, -1122, -1137, -1153, -1169, -1184, -1200, -1216,
+  -1231, -1247, -1263, -1278, -1294, -1310, -1326, -1341,
+  -1357, -1373, -1389, -1404, -1420, -1436, -1452, -1467,
+  -1483, -1499, -1515, -1531, -1546, -1562, -1578, -1594,
+  -1610, -1625, -1641, -1657, -1673, -1689, -1705, -1720,
+  -1736, -1752, -1768, -1784, -1800, -1815, -1831, -1847,
+  -1863, -1879, -1895, -1911, -1926, -1942, -1958, -1974,
+  -1990, -2006, -2022, -2037, -2053, -2069, -2085, -2101,
+  -2117, -2133, -2148, -2164, -2180, -2196, -2212, -2228,
+  -2244, -2259, -2275, -2291, -2307, -2323, -2339, -2354,
+  -2370, -2386, -2402, -2418, -2433, -2449, -2465, -2481,
+  -2497, -2512, -2528, -2544, -2560, -2576, -2591, -2607,
+  -2623, -2639, -2654, -2670, -2686, -2701, -2717, -2733,
+  -2749, -2764, -2780, -2796, -2811, -2827, -2843, -2858,
+  -2874, -2890, -2905, -2921, -2936, -2952, -2968, -2983,
+  -2999, -3014, -3030, -3045, -3061, -3076, -3092, -3107,
+  -3123, -3138, -3154, -3169, -3185, -3200, -3216, -3231,
+  -3246, -3262, -3277, -3293, -3308, -3323, -3339, -3354,
+  -3369, -3385, -3400, -3415, -3430, -3446, -3461, -3476,
+  -3491, -3506, -3521, -3537, -3552, -3567, -3582, -3597,
+  -3612, -3627, -3642, -3657, -3672, -3687, -3702, -3717,
+  -3732, -3747, -3762, -3777, -3792, -3807, -3821, -3836,
+  -3851, -3866, -3881, -3895, -3910, -3925, -3939, -3954,
+  -3969, -3983, -3998, -4012, -4027, -4042, -4056, -4071,
+  -4085, -4100, -4114, -4128, -4143, -4157, -4172, -4186,
+  -4200, -4215, -4229, -4243, -4257, -4271, -4286, -4300,
+  -4314, -4328, -4342, -4356, -4370, -4384, -4398, -4412,
+  -4426, -4440, -4454, -4468, -4482, -4495, -4509, -4523,
+  -4537, -4550, -4564, -4578, -4591, -4605, -4619, -4632,
+  -4646, -4659, -4673, -4686, -4699, -4713, -4726, -4740,
+  -4753, -4766, -4779, -4793, -4806, -4819, -4832, -4845,
+  -4858, -4871, -4884, -4897, -4910, -4923, -4936, -4949,
+  -4962, -4974, -4987, -5000, -5013, -5025, -5038, -5051,
+  -5063, -5076, -5088, -5101, -5113, -5125, -5138, -5150,
+  -5162, -5175, -5187, -5199, -5211, -5224, -5236, -5248,
+  -5260, -5272, -5284, -5296, -5308, -5319, -5331, -5343,
+  -5355, -5366, -5378, -5390, -5401, -5413, -5424, -5436,
+  -5447, -5459, -5470, -5482, -5493, -5504, -5515, -5527,
+  -5538, -5549, -5560, -5571, -5582, -5593, -5604, -5615,
+  -5626, -5636, -5647, -5658, -5668, -5679, -5690, -5700,
+  -5711, -5721, -5732, -5742, -5752, -5763, -5773, -5783,
+  -5793, -5804, -5814, -5824, -5834, -5844, -5854, -5863,
+  -5873, -5883, -5893, -5903, -5912, -5922, -5931, -5941,
+  -5950, -5960, -5969, -5979, -5988, -5997, -6006, -6016,
+  -6025, -6034, -6043, -6052, -6061, -6070, -6078, -6087,
+  -6096, -6105, -6113, -6122, -6131, -6139, -6148, -6156,
+  -6164, -6173, -6181, -6189, -6197, -6205, -6214, -6222,
+  -6230, -6238, -6245, -6253, -6261, -6269, -6276, -6284,
+  -6292, -6299, -6307, -6314, -6321, -6329, -6336, -6343,
+  -6350, -6358, -6365, -6372, -6379, -6386, -6392, -6399,
+  -6406, -6413, -6419, -6426, -6433, -6439, -6445, -6452,
+  -6458, -6464, -6471, -6477, -6483, -6489, -6495, -6501,
+  -6507, -6513, -6519, -6524, -6530, -6536, -6541, -6547,
+  -6552, -6558, -6563, -6568, -6573, -6579, -6584, -6589,
+  -6594, -6599, -6604, -6608, -6613, -6618, -6623, -6627,
+  -6632, -6636, -6641, -6645, -6649, -6654, -6658, -6662,
+  -6666, -6670, -6674, -6678, -6682, -6685, -6689, -6693,
+  -6696, -6700, -6703, -6707, -6710, -6714, -6717, -6720,
+  -6723, -6726, -6729, -6732, -6735, -6738, -6741, -6743,
+  -6746, -6748, -6751, -6753, -6756, -6758, -6760, -6763,
+  -6765, -6767, -6769, -6771, -6773, -6774, -6776, -6778,
+  -6779, -6781, -6783, -6784, -6785, -6787, -6788, -6789,
+  -6790, -6791, -6792, -6793, -6794, -6795, -6795, -6796,
+  -6797, -6797, -6798, -6798, -6798, -6799, -6799, -6799,
+  -6799, -6799, -6799, -6799, -6799, -6798, -6798, -6798,
+  -6797, -6797, -6796, -6795, -6795, -6794, -6793, -6792,
+  -6791, -6790, -6789, -6788, -6786, -6785, -6784, -6782,
+  -6781, -6779, -6777, -6776, -6774, -6772, -6770, -6768,
+  -6766, -6764, -6761, -6759, -6757, -6754, -6752, -6749,
+  -6747, -6744, -6741, -6738, -6735, -6732, -6729, -6726,
+  -6723, -6719, -6716, -6713, -6709, -6706, -6702, -6698,
+  -6694, -6691, -6687, -6683, -6679, -6674, -6670, -6666,
+  -6662, -6657, -6653, -6648, -6643, -6639, -6634, -6629,
+  -6624, -6619, -6614, -6609, -6604, -6598, -6593, -6588,
+  -6582, -6576, -6571, -6565, -6559, -6553, -6547, -6541,
+  -6535, -6529, -6523, -6517, -6510, -6504, -6497, -6491,
+  -6484, -6477, -6470, -6463, -6456, -6449, -6442, -6435,
+  -6428, -6420, -6413, -6405, -6398, -6390, -6382, -6374,
+  -6367, -6359, -6351, -6343, -6334, -6326, -6318, -6309,
+  -6301, -6292, -6284, -6275, -6266, -6257, -6248, -6239,
+  -6230, -6221, -6212, -6202, -6193, -6184, -6174, -6164,
+  -6155, -6145, -6135, -6125, -6115, -6105, -6095, -6085,
+  -6074, -6064, -6054, -6043, -6032, -6022, -6011, -6000,
+  -5989, -5978, -5967, -5956, -5945, -5933, -5922, -5911,
+  -5899, -5887, -5876, -5864, -5852, -5840, -5828, -5816,
+  -5804, -5792, -5779, -5767, -5755, -5742, -5729, -5717,
+  -5704, -5691, -5678, -5665, -5652, -5639, -5626, -5612,
+  -5599, -5585, -5572, -5558, -5545, -5531, -5517, -5503,
+  -5489, -5475, -5461, -5447, -5432, -5418, -5403, -5389,
+  -5374, -5359, -5345, -5330, -5315, -5300, -5285, -5269,
+  -5254, -5239, -5223, -5208, -5192, -5177, -5161, -5145,
+  -5129, -5113, -5097, -5081, -5065, -5049, -5032, -5016,
+  -4999, -4983, -4966, -4950, -4933, -4916, -4899, -4882,
+  -4865, -4847, -4830, -4813, -4795, -4778, -4760, -4743,
+  -4725, -4707, -4689, -4671, -4653, -4635, -4617, -4598,
+  -4580, -4562, -4543, -4524, -4506, -4487, -4468, -4449,
+  -4430, -4411, -4392, -4373, -4354, -4334, -4315, -4295,
+  -4276, -4256, -4236, -4216, -4196, -4176, -4156, -4136,
+  -4116, -4096, -4075, -4055, -4034, -4014, -3993, -3972,
+  -3951, -3930, -3909, -3888, -3867, -3846, -3825, -3803,
+  -3782, -3760, -3739, -3717, -3695, -3673, -3651, -3629,
+  -3607, -3585, -3563, -3541, -3518, -3496, -3473, -3451,
+  -3428, -3405, -3383, -3360, -3337, -3314, -3290, -3267,
+  -3244, -3221, -3197, -3174, -3150, -3126, -3103, -3079,
+  -3055, -3031, -3007, -2983, -2959, -2934, -2910, -2886,
+  -2861, -2837, -2812, -2787, -2763, -2738, -2713, -2688,
+  -2663, -2638, -2612, -2587, -2562, -2536, -2511, -2485,
+  -2459, -2434, -2408, -2382, -2356, -2330, -2304, -2278,
+  -2251, -2225, -2199, -2172, -2146, -2119, -2092, -2066,
+  -2039, -2012, -1985, -1958, -1931, -1904, -1876, -1849,
+  -1822, -1794, -1767, -1739, -1711, -1683, -1656, -1628,
+  -1600, -1572, -1544, -1515, -1487, -1459, -1430, -1402,
+  -1373, -1345, -1316, -1287, -1258, -1230, -1201, -1172,
+  -1142, -1113, -1084, -1055, -1025,  -996,  -966,  -937,
+   -907,  -877,  -848,  -818,  -788,  -758,  -728,  -698,
+   -667,  -637,  -607,  -576,  -546,  -515,  -485,  -454,
+   -423,  -392,  -362,  -331,  -300,  -268,  -237,  -206,
+   -175,  -143,  -112,   -81,   -49,   -17,    14,    46,
+     78,   110,   142,   174,   206,   238,   270,   302,
+    335,   367,   399,   432,   465,   497,   530,   563,
+    596,   628,   661,   694,   728,   761,   794,   827,
+    861,   894,   927,   961,   995,  1028,  1062,  1096,
+   1130,  1163,  1197,  1231,  1266,  1300,  1334,  1368,
+   1402,  1437,  1471,  1506,  1540,  1575,  1610,  1644,
+   1679,  1714,  1749,  1784,  1819,  1854,  1889,  1925,
+   1960,  1995,  2031,  2066,  2101,  2137,  2173,  2208,
+   2244,  2280,  2316,  2352,  2388,  2424,  2460,  2496,
+   2532,  2568,  2604,  2641,  2677,  2714,  2750,  2787,
+   2823,  2860,  2897,  2934,  2970,  3007,  3044,  3081,
+   3118,  3155,  3193,  3230,  3267,  3304,  3342,  3379,
+   3417,  3454,  3492,  3529,  3567,  3605,  3643,  3681,
+   3718,  3756,  3794,  3832,  3870,  3909,  3947,  3985,
+   4023,  4062,  4100,  4138,  4177,  4216,  4254,  4293,
+   4331,  4370,  4409,  4448,  4487,  4526,  4564,  4603,
+   4643,  4682,  4721,  4760,  4799,  4839,  4878,  4917,
+   4957,  4996,  5036,  5075,  5115,  5154,  5194,  5234,
+   5274,  5313,  5353,  5393,  5433,  5473,  5513,  5553,
+   5593,  5634,  5674,  5714,  5754,  5795,  5835,  5875,
+   5916,  5956,  5997,  6037,  6078,  6119,  6159,  6200,
+   6241,  6282,  6323,  6364,  6404,  6445,  6486,  6527,
+   6569,  6610,  6651,  6692,  6733,  6774,  6816,  6857,
+   6899,  6940,  6981,  7023,  7064,  7106,  7148,  7189,
+   7231,  7272,  7314,  7356,  7398,  7440,  7481,  7523,
+   7565,  7607,  7649,  7691,  7733,  7775,  7818,  7860,
+   7902,  7944,  7986,  8029,  8071,  8113,  8156,  8198,
+   8240,  8283,  8325,  8368,  8410,  8453,  8496,  8538,
+   8581,  8624,  8666,  8709,  8752,  8795,  8837,  8880,
+   8923,  8966,  9009,  9052,  9095,  9138,  9181,  9224,
+   9267,  9310,  9353,  9396,  9440,  9483,  9526,  9569,
+   9613,  9656,  9699,  9743,  9786,  9829,  9873,  9916,
+   9960, 10003, 10046, 10090, 10133, 10177, 10221, 10264,
+  10308, 10351, 10395, 10439, 10482, 10526, 10570, 10614,
+  10657, 10701, 10745, 10789, 10832, 10876, 10920, 10964,
+  11008, 11052, 11096, 11140, 11184, 11228, 11272, 11316,
+  11360, 11404, 11448, 11492, 11536, 11580, 11624, 11668,
+  11712, 11756, 11800, 11844, 11889, 11933, 11977, 12021,
+  12065, 12110, 12154, 12198, 12242, 12286, 12331, 12375,
+  12419, 12464, 12508, 12552, 12596, 12641, 12685, 12729,
+  12774, 12818, 12862, 12907, 12951, 12995, 13040, 13084,
+  13129, 13173, 13217, 13262, 13306, 13351, 13395, 13439,
+  13484, 13528, 13573, 13617, 13661, 13706, 13750, 13795,
+  13839, 13883, 13928, 13972, 14017, 14061, 14106, 14150,
+  14194, 14239, 14283, 14328, 14372, 14417, 14461, 14505,
+  14550, 14594, 14639, 14683, 14727, 14772, 14816, 14861,
+  14905, 14949, 14994, 15038, 15082, 15127, 15171, 15215,
+  15260, 15304, 15348, 15393, 15437, 15481, 15526, 15570,
+  15614, 15658, 15703, 15747, 15791, 15835, 15880, 15924,
+  15968, 16012, 16056, 16100, 16145, 16189, 16233, 16277,
+  16321, 16365, 16409, 16453, 16497, 16541, 16585, 16629,
+  16673, 16717, 16761, 16805, 16849, 16893, 16937, 16981,
+  17025, 17069, 17113, 17156, 17200, 17244, 17288, 17332,
+  17375, 17419, 17463, 17506, 17550, 17594, 17637, 17681,
+  17725, 17768, 17812, 17855, 17899, 17942, 17986, 18029,
+  18072, 18116, 18159, 18203, 18246, 18289, 18332, 18376,
+  18419, 18462, 18505, 18549, 18592, 18635, 18678, 18721,
+  18764, 18807, 18850, 18893, 18936, 18979, 19022, 19064,
+  19107, 19150, 19193, 19236, 19278, 19321, 19364, 19406,
+  19449, 19491, 19534, 19576, 19619, 19661, 19704, 19746,
+  19788, 19831, 19873, 19915, 19957, 20000, 20042, 20084,
+  20126, 20168, 20210, 20252, 20294, 20336, 20378, 20420,
+  20461, 20503, 20545, 20587, 20628, 20670, 20712, 20753,
+  20795, 20836, 20878, 20919, 20960, 21002, 21043, 21084,
+  21125, 21167, 21208, 21249, 21290, 21331, 21372, 21413,
+  21454, 21495, 21535, 21576, 21617, 21658, 21698, 21739,
+  21779, 21820, 21860, 21901, 21941, 21982, 22022, 22062,
+  22102, 22142, 22183, 22223, 22263, 22303, 22343, 22383,
+  22422, 22462, 22502, 22542, 22581, 22621, 22660, 22700,
+  22739, 22779, 22818, 22858, 22897, 22936, 22975, 23014,
+  23053, 23092, 23131, 23170, 23209, 23248, 23287, 23326,
+  23364, 23403, 23441, 23480, 23518, 23557, 23595, 23633,
+  23672, 23710, 23748, 23786, 23824, 23862, 23900, 23938,
+  23976, 24013, 24051, 24089, 24126, 24164, 24201, 24239,
+  24276, 24313, 24351, 24388, 24425, 24462, 24499, 24536,
+  24573, 24610, 24647, 24683, 24720, 24756, 24793, 24830,
+  24866, 24902, 24939, 24975, 25011, 25047, 25083, 25119,
+  25155, 25191, 25227, 25262, 25298, 25334, 25369, 25405,
+  25440, 25476, 25511, 25546, 25581, 25616, 25651, 25686,
+  25721, 25756, 25791, 25826, 25860, 25895, 25929, 25964,
+  25998, 26033, 26067, 26101, 26135, 26169, 26203, 26237,
+  26271, 26305, 26338, 26372, 26405, 26439, 26472, 26506,
+  26539, 26572, 26605, 26638, 26671, 26704, 26737, 26770,
+  26803, 26835, 26868, 26900, 26933, 26965, 26997, 27030,
+  27062, 27094, 27126, 27158, 27189, 27221, 27253, 27285,
+  27316, 27348, 27379, 27410, 27441, 27473, 27504, 27535,
+  27566, 27597, 27627, 27658, 27689, 27719, 27750, 27780,
+  27810, 27841, 27871, 27901, 27931, 27961, 27991, 28020,
+  28050, 28080, 28109, 28139, 28168, 28197, 28227, 28256,
+  28285, 28314, 28343, 28371, 28400, 28429, 28457, 28486,
+  28514, 28543, 28571, 28599, 28627, 28655, 28683, 28711,
+  28738, 28766, 28794, 28821, 28849, 28876, 28903, 28930,
+  28957, 28984, 29011, 29038, 29065, 29092, 29118, 29145,
+  29171, 29197, 29223, 29250, 29276, 29302, 29327, 29353,
+  29379, 29405, 29430, 29456, 29481, 29506, 29531, 29556,
+  29581, 29606, 29631, 29656, 29681, 29705, 29730, 29754,
+  29778, 29802, 29827, 29851, 29874, 29898, 29922, 29946,
+  29969, 29993, 30016, 30039, 30063, 30086, 30109, 30132,
+  30155, 30177, 30200, 30223, 30245, 30267, 30290, 30312,
+  30334, 30356, 30378, 30400, 30422, 30443, 30465, 30486,
+  30508, 30529, 30550, 30571, 30592, 30613, 30634, 30654,
+  30675, 30696, 30716, 30736, 30756, 30777, 30797, 30817,
+  30836, 30856, 30876, 30895, 30915, 30934, 30953, 30973,
+  30992, 31011, 31030, 31048, 31067, 31086, 31104, 31123,
+  31141, 31159, 31177, 31195, 31213, 31231, 31249, 31266,
+  31284, 31301, 31318, 31336, 31353, 31370, 31387, 31404,
+  31420, 31437, 31453, 31470, 31486, 31502, 31519, 31535,
+  31551, 31566, 31582, 31598, 31613, 31629, 31644, 31659,
+  31674, 31689, 31704, 31719, 31734, 31749, 31763, 31777,
+  31792, 31806, 31820, 31834, 31848, 31862, 31876, 31889,
+  31903, 31916, 31929, 31943, 31956, 31969, 31982, 31994,
+  32007, 32020, 32032, 32045, 32057, 32069, 32081, 32093,
+  32105, 32117, 32128, 32140, 32151, 32163, 32174, 32185,
+  32196, 32207, 32218, 32229, 32239, 32250, 32260, 32270,
+  32281, 32291, 32301, 32311, 32320, 32330, 32340, 32349,
+  32358, 32368, 32377, 32386, 32395, 32404, 32412, 32421,
+  32430, 32438, 32446, 32455, 32463, 32471, 32479, 32486,
+  32494, 32502, 32509, 32516, 32524, 32531, 32538, 32545,
+  32552, 32558, 32565, 32572, 32578, 32584, 32590, 32597,
+  32603, 32608, 32614, 32620, 32625, 32631, 32636, 32642,
+  32647, 32652, 32657, 32661, 32666, 32671, 32675, 32680,
+  32684, 32688, 32692, 32696, 32700, 32704, 32707, 32711,
+  32714, 32718, 32721, 32724, 32727, 32730, 32733, 32735,
+  32738, 32740, 32743, 32745, 32747, 32749, 32751, 32753,
+  32755, 32756, 32758, 32759, 32760, 32762, 32763, 32764,
+  32764, 32765, 32766, 32766, 32767, 32767, 32767, 32767,
+  32767, 32767, 32767, 32767, 32766, 32766, 32765, 32764,
+  32764, 32763, 32762, 32760, 32759, 32758, 32756, 32755,
+  32753, 32751, 32749, 32747, 32745, 32743, 32740, 32738,
+  32735, 32733, 32730, 32727, 32724, 32721, 32718, 32714,
+  32711, 32707, 32704, 32700, 32696, 32692, 32688, 32684,
+  32680, 32675, 32671, 32666, 32661, 32657, 32652, 32647,
+  32642, 32636, 32631, 32625, 32620, 32614, 32608, 32603,
+  32597, 32590, 32584, 32578, 32572, 32565, 32558, 32552,
+  32545, 32538, 32531, 32524, 32516, 32509, 32502, 32494,
+  32486, 32479, 32471, 32463, 32455, 32446, 32438, 32430,
+  32421, 32412, 32404, 32395, 32386, 32377, 32368, 32358,
+  32349, 32340, 32330, 32320, 32311, 32301, 32291, 32281,
+  32270, 32260, 32250, 32239, 32229, 32218, 32207, 32196,
+  32185, 32174, 32163, 32151, 32140, 32128, 32117, 32105,
+  32093, 32081, 32069, 32057, 32045, 32032, 32020, 32007,
+  31994, 31982, 31969, 31956, 31943, 31929, 31916, 31903,
+  31889, 31876, 31862, 31848, 31834, 31820, 31806, 31792,
+  31777, 31763, 31749, 31734, 31719, 31704, 31689, 31674,
+  31659, 31644, 31629, 31613, 31598, 31582, 31566, 31551,
+  31535, 31519, 31502, 31486, 31470, 31453, 31437, 31420,
+  31404, 31387, 31370, 31353, 31336, 31318, 31301, 31284,
+  31266, 31249, 31231, 31213, 31195, 31177, 31159, 31141,
+  31123, 31104, 31086, 31067, 31048, 31030, 31011, 30992,
+  30973, 30953, 30934, 30915, 30895, 30876, 30856, 30836,
+  30817, 30797, 30777, 30756, 30736, 30716, 30696, 30675,
+  30654, 30634, 30613, 30592, 30571, 30550, 30529, 30508,
+  30486, 30465, 30443, 30422, 30400, 30378, 30356, 30334,
+  30312, 30290, 30267, 30245, 30223, 30200, 30177, 30155,
+  30132, 30109, 30086, 30063, 30039, 30016, 29993, 29969,
+  29946, 29922, 29898, 29874, 29851, 29827, 29802, 29778,
+  29754, 29730, 29705, 29681, 29656, 29631, 29606, 29581,
+  29556, 29531, 29506, 29481, 29456, 29430, 29405, 29379,
+  29353, 29327, 29302, 29276, 29250, 29223, 29197, 29171,
+  29145, 29118, 29092, 29065, 29038, 29011, 28984, 28957,
+  28930, 28903, 28876, 28849, 28821, 28794, 28766, 28738,
+  28711, 28683, 28655, 28627, 28599, 28571, 28543, 28514,
+  28486, 28457, 28429, 28400, 28371, 28343, 28314, 28285,
+  28256, 28227, 28197, 28168, 28139, 28109, 28080, 28050,
+  28020, 27991, 27961, 27931, 27901, 27871, 27841, 27810,
+  27780, 27750, 27719, 27689, 27658, 27627, 27597, 27566,
+  27535, 27504, 27473, 27441, 27410, 27379, 27348, 27316,
+  27285, 27253, 27221, 27189, 27158, 27126, 27094, 27062,
+  27030, 26997, 26965, 26933, 26900, 26868, 26835, 26803,
+  26770, 26737, 26704, 26671, 26638, 26605, 26572, 26539,
+  26506, 26472, 26439, 26405, 26372, 26338, 26305, 26271,
+  26237, 26203, 26169, 26135, 26101, 26067, 26033, 25998,
+  25964, 25929, 25895, 25860, 25826, 25791, 25756, 25721,
+  25686, 25651, 25616, 25581, 25546, 25511, 25476, 25440,
+  25405, 25369, 25334, 25298, 25262, 25227, 25191, 25155,
+  25119, 25083, 25047, 25011, 24975, 24939, 24902, 24866,
+  24830, 24793, 24756, 24720, 24683, 24647, 24610, 24573,
+  24536, 24499, 24462, 24425, 24388, 24351, 24313, 24276,
+  24239, 24201, 24164, 24126, 24089, 24051, 24013, 23976,
+  23938, 23900, 23862, 23824, 23786, 23748, 23710, 23672,
+  23633, 23595, 23557, 23518, 23480, 23441, 23403, 23364,
+  23326, 23287, 23248, 23209, 23170, 23131, 23092, 23053,
+  23014, 22975, 22936, 22897, 22858, 22818, 22779, 22739,
+  22700, 22660, 22621, 22581, 22542, 22502, 22462, 22422,
+  22383, 22343, 22303, 22263, 22223, 22183, 22142, 22102,
+  22062, 22022, 21982, 21941, 21901, 21860, 21820, 21779,
+  21739, 21698, 21658, 21617, 21576, 21535, 21495, 21454,
+  21413, 21372, 21331, 21290, 21249, 21208, 21167, 21125,
+  21084, 21043, 21002, 20960, 20919, 20878, 20836, 20795,
+  20753, 20712, 20670, 20628, 20587, 20545, 20503, 20461,
+  20420, 20378, 20336, 20294, 20252, 20210, 20168, 20126,
+  20084, 20042, 20000, 19957, 19915, 19873, 19831, 19788,
+  19746, 19704, 19661, 19619, 19576, 19534, 19491, 19449,
+  19406, 19364, 19321, 19278, 19236, 19193, 19150, 19107,
+  19064, 19022, 18979, 18936, 18893, 18850, 18807, 18764,
+  18721, 18678, 18635, 18592, 18549, 18505, 18462, 18419,
+  18376, 18332, 18289, 18246, 18203, 18159, 18116, 18072,
+  18029, 17986, 17942, 17899, 17855, 17812, 17768, 17725,
+  17681, 17637, 17594, 17550, 17506, 17463, 17419, 17375,
+  17332, 17288, 17244, 17200, 17156, 17113, 17069, 17025,
+  16981, 16937, 16893, 16849, 16805, 16761, 16717, 16673,
+  16629, 16585, 16541, 16497, 16453, 16409, 16365, 16321,
+  16277, 16233, 16189, 16145, 16100, 16056, 16012, 15968,
+  15924, 15880, 15835, 15791, 15747, 15703, 15658, 15614,
+  15570, 15526, 15481, 15437, 15393, 15348, 15304, 15260,
+  15215, 15171, 15127, 15082, 15038, 14994, 14949, 14905,
+  14861, 14816, 14772, 14727, 14683, 14639, 14594, 14550,
+  14505, 14461, 14417, 14372, 14328, 14283, 14239, 14194,
+  14150, 14106, 14061, 14017, 13972, 13928, 13883, 13839,
+  13795, 13750, 13706, 13661, 13617, 13573, 13528, 13484,
+  13439, 13395, 13351, 13306, 13262, 13217, 13173, 13129,
+  13084, 13040, 12995, 12951, 12907, 12862, 12818, 12774,
+  12729, 12685, 12641, 12596, 12552, 12508, 12464, 12419,
+  12375, 12331, 12286, 12242, 12198, 12154, 12110, 12065,
+  12021, 11977, 11933, 11889, 11844, 11800, 11756, 11712,
+  11668, 11624, 11580, 11536, 11492, 11448, 11404, 11360,
+  11316, 11272, 11228, 11184, 11140, 11096, 11052, 11008,
+  10964, 10920, 10876, 10832, 10789, 10745, 10701, 10657,
+  10614, 10570, 10526, 10482, 10439, 10395, 10351, 10308,
+  10264, 10221, 10177, 10133, 10090, 10046, 10003,  9960,
+   9916,  9873,  9829,  9786,  9743,  9699,  9656,  9613,
+   9569,  9526,  9483,  9440,  9396,  9353,  9310,  9267,
+   9224,  9181,  9138,  9095,  9052,  9009,  8966,  8923,
+   8880,  8837,  8795,  8752,  8709,  8666,  8624,  8581,
+   8538,  8496,  8453,  8410,  8368,  8325,  8283,  8240,
+   8198,  8156,  8113,  8071,  8029,  7986,  7944,  7902,
+   7860,  7818,  7775,  7733,  7691,  7649,  7607,  7565,
+   7523,  7481,  7440,  7398,  7356,  7314,  7272,  7231,
+   7189,  7148,  7106,  7064,  7023,  6981,  6940,  6899,
+   6857,  6816,  6774,  6733,  6692,  6651,  6610,  6569,
+   6527,  6486,  6445,  6404,  6364,  6323,  6282,  6241,
+   6200,  6159,  6119,  6078,  6037,  5997,  5956,  5916,
+   5875,  5835,  5795,  5754,  5714,  5674,  5634,  5593,
+   5553,  5513,  5473,  5433,  5393,  5353,  5313,  5274,
+   5234,  5194,  5154,  5115,  5075,  5036,  4996,  4957,
+   4917,  4878,  4839,  4799,  4760,  4721,  4682,  4643,
+   4603,  4564,  4526,  4487,  4448,  4409,  4370,  4331,
+   4293,  4254,  4216,  4177,  4138,  4100,  4062,  4023,
+   3985,  3947,  3909,  3870,  3832,  3794,  3756,  3718,
+   3681,  3643,  3605,  3567,  3529,  3492,  3454,  3417,
+   3379,  3342,  3304,  3267,  3230,  3193,  3155,  3118,
+   3081,  3044,  3007,  2970,  2934,  2897,  2860,  2823,
+   2787,  2750,  2714,  2677,  2641,  2604,  2568,  2532,
+   2496,  2460,  2424,  2388,  2352,  2316,  2280,  2244,
+   2208,  2173,  2137,  2101,  2066,  2031,  1995,  1960,
+   1925,  1889,  1854,  1819,  1784,  1749,  1714,  1679,
+   1644,  1610,  1575,  1540,  1506,  1471,  1437,  1402,
+   1368,  1334,  1300,  1266,  1231,  1197,  1163,  1130,
+   1096,  1062,  1028,   995,   961,   927,   894,   861,
+    827,   794,   761,   728,   694,   661,   628,   596,
+    563,   530,   497,   465,   432,   399,   367,   335,
+    302,   270,   238,   206,   174,   142,   110,    78,
+     46,    14,   -17,   -49,   -81,  -112,  -143,  -175,
+   -206,  -237,  -268,  -300,  -331,  -362,  -392,  -423,
+   -454,  -485,  -515,  -546,  -576,  -607,  -637,  -667,
+   -698,  -728,  -758,  -788,  -818,  -848,  -877,  -907,
+   -937,  -966,  -996, -1025, -1055, -1084, -1113, -1142,
+  -1172, -1201, -1230, -1258, -1287, -1316, -1345, -1373,
+  -1402, -1430, -1459, -1487, -1515, -1544, -1572, -1600,
+  -1628, -1656, -1683, -1711, -1739, -1767, -1794, -1822,
+  -1849, -1876, -1904, -1931, -1958, -1985, -2012, -2039,
+  -2066, -2092, -2119, -2146, -2172, -2199, -2225, -2251,
+  -2278, -2304, -2330, -2356, -2382, -2408, -2434, -2459,
+  -2485, -2511, -2536, -2562, -2587, -2612, -2638, -2663,
+  -2688, -2713, -2738, -2763, -2787, -2812, -2837, -2861,
+  -2886, -2910, -2934, -2959, -2983, -3007, -3031, -3055,
+  -3079, -3103, -3126, -3150, -3174, -3197, -3221, -3244,
+  -3267, -3290, -3314, -3337, -3360, -3383, -3405, -3428,
+  -3451, -3473, -3496, -3518, -3541, -3563, -3585, -3607,
+  -3629, -3651, -3673, -3695, -3717, -3739, -3760, -3782,
+  -3803, -3825, -3846, -3867, -3888, -3909, -3930, -3951,
+  -3972, -3993, -4014, -4034, -4055, -4075, -4096, -4116,
+  -4136, -4156, -4176, -4196, -4216, -4236, -4256, -4276,
+  -4295, -4315, -4334, -4354, -4373, -4392, -4411, -4430,
+  -4449, -4468, -4487, -4506, -4524, -4543, -4562, -4580,
+  -4598, -4617, -4635, -4653, -4671, -4689, -4707, -4725,
+  -4743, -4760, -4778, -4795, -4813, -4830, -4847, -4865,
+  -4882, -4899, -4916, -4933, -4950, -4966, -4983, -4999,
+  -5016, -5032, -5049, -5065, -5081, -5097, -5113, -5129,
+  -5145, -5161, -5177, -5192, -5208, -5223, -5239, -5254,
+  -5269, -5285, -5300, -5315, -5330, -5345, -5359, -5374,
+  -5389, -5403, -5418, -5432, -5447, -5461, -5475, -5489,
+  -5503, -5517, -5531, -5545, -5558, -5572, -5585, -5599,
+  -5612, -5626, -5639, -5652, -5665, -5678, -5691, -5704,
+  -5717, -5729, -5742, -5755, -5767, -5779, -5792, -5804,
+  -5816, -5828, -5840, -5852, -5864, -5876, -5887, -5899,
+  -5911, -5922, -5933, -5945, -5956, -5967, -5978, -5989,
+  -6000, -6011, -6022, -6032, -6043, -6054, -6064, -6074,
+  -6085, -6095, -6105, -6115, -6125, -6135, -6145, -6155,
+  -6164, -6174, -6184, -6193, -6202, -6212, -6221, -6230,
+  -6239, -6248, -6257, -6266, -6275, -6284, -6292, -6301,
+  -6309, -6318, -6326, -6334, -6343, -6351, -6359, -6367,
+  -6374, -6382, -6390, -6398, -6405, -6413, -6420, -6428,
+  -6435, -6442, -6449, -6456, -6463, -6470, -6477, -6484,
+  -6491, -6497, -6504, -6510, -6517, -6523, -6529, -6535,
+  -6541, -6547, -6553, -6559, -6565, -6571, -6576, -6582,
+  -6588, -6593, -6598, -6604, -6609, -6614, -6619, -6624,
+  -6629, -6634, -6639, -6643, -6648, -6653, -6657, -6662,
+  -6666, -6670, -6674, -6679, -6683, -6687, -6691, -6694,
+  -6698, -6702, -6706, -6709, -6713, -6716, -6719, -6723,
+  -6726, -6729, -6732, -6735, -6738, -6741, -6744, -6747,
+  -6749, -6752, -6754, -6757, -6759, -6761, -6764, -6766,
+  -6768, -6770, -6772, -6774, -6776, -6777, -6779, -6781,
+  -6782, -6784, -6785, -6786, -6788, -6789, -6790, -6791,
+  -6792, -6793, -6794, -6795, -6795, -6796, -6797, -6797,
+  -6798, -6798, -6798, -6799, -6799, -6799, -6799, -6799,
+  -6799, -6799, -6799, -6798, -6798, -6798, -6797, -6797,
+  -6796, -6795, -6795, -6794, -6793, -6792, -6791, -6790,
+  -6789, -6788, -6787, -6785, -6784, -6783, -6781, -6779,
+  -6778, -6776, -6774, -6773, -6771, -6769, -6767, -6765,
+  -6763, -6760, -6758, -6756, -6753, -6751, -6748, -6746,
+  -6743, -6741, -6738, -6735, -6732, -6729, -6726, -6723,
+  -6720, -6717, -6714, -6710, -6707, -6703, -6700, -6696,
+  -6693, -6689, -6685, -6682, -6678, -6674, -6670, -6666,
+  -6662, -6658, -6654, -6649, -6645, -6641, -6636, -6632,
+  -6627, -6623, -6618, -6613, -6608, -6604, -6599, -6594,
+  -6589, -6584, -6579, -6573, -6568, -6563, -6558, -6552,
+  -6547, -6541, -6536, -6530, -6524, -6519, -6513, -6507,
+  -6501, -6495, -6489, -6483, -6477, -6471, -6464, -6458,
+  -6452, -6445, -6439, -6433, -6426, -6419, -6413, -6406,
+  -6399, -6392, -6386, -6379, -6372, -6365, -6358, -6350,
+  -6343, -6336, -6329, -6321, -6314, -6307, -6299, -6292,
+  -6284, -6276, -6269, -6261, -6253, -6245, -6238, -6230,
+  -6222, -6214, -6205, -6197, -6189, -6181, -6173, -6164,
+  -6156, -6148, -6139, -6131, -6122, -6113, -6105, -6096,
+  -6087, -6078, -6070, -6061, -6052, -6043, -6034, -6025,
+  -6016, -6006, -5997, -5988, -5979, -5969, -5960, -5950,
+  -5941, -5931, -5922, -5912, -5903, -5893, -5883, -5873,
+  -5863, -5854, -5844, -5834, -5824, -5814, -5804, -5793,
+  -5783, -5773, -5763, -5752, -5742, -5732, -5721, -5711,
+  -5700, -5690, -5679, -5668, -5658, -5647, -5636, -5626,
+  -5615, -5604, -5593, -5582, -5571, -5560, -5549, -5538,
+  -5527, -5515, -5504, -5493, -5482, -5470, -5459, -5447,
+  -5436, -5424, -5413, -5401, -5390, -5378, -5366, -5355,
+  -5343, -5331, -5319, -5308, -5296, -5284, -5272, -5260,
+  -5248, -5236, -5224, -5211, -5199, -5187, -5175, -5162,
+  -5150, -5138, -5125, -5113, -5101, -5088, -5076, -5063,
+  -5051, -5038, -5025, -5013, -5000, -4987, -4974, -4962,
+  -4949, -4936, -4923, -4910, -4897, -4884, -4871, -4858,
+  -4845, -4832, -4819, -4806, -4793, -4779, -4766, -4753,
+  -4740, -4726, -4713, -4699, -4686, -4673, -4659, -4646,
+  -4632, -4619, -4605, -4591, -4578, -4564, -4550, -4537,
+  -4523, -4509, -4495, -4482, -4468, -4454, -4440, -4426,
+  -4412, -4398, -4384, -4370, -4356, -4342, -4328, -4314,
+  -4300, -4286, -4271, -4257, -4243, -4229, -4215, -4200,
+  -4186, -4172, -4157, -4143, -4128, -4114, -4100, -4085,
+  -4071, -4056, -4042, -4027, -4012, -3998, -3983, -3969,
+  -3954, -3939, -3925, -3910, -3895, -3881, -3866, -3851,
+  -3836, -3821, -3807, -3792, -3777, -3762, -3747, -3732,
+  -3717, -3702, -3687, -3672, -3657, -3642, -3627, -3612,
+  -3597, -3582, -3567, -3552, -3537, -3521, -3506, -3491,
+  -3476, -3461, -3446, -3430, -3415, -3400, -3385, -3369,
+  -3354, -3339, -3323, -3308, -3293, -3277, -3262, -3246,
+  -3231, -3216, -3200, -3185, -3169, -3154, -3138, -3123,
+  -3107, -3092, -3076, -3061, -3045, -3030, -3014, -2999,
+  -2983, -2968, -2952, -2936, -2921, -2905, -2890, -2874,
+  -2858, -2843, -2827, -2811, -2796, -2780, -2764, -2749,
+  -2733, -2717, -2701, -2686, -2670, -2654, -2639, -2623,
+  -2607, -2591, -2576, -2560, -2544, -2528, -2512, -2497,
+  -2481, -2465, -2449, -2433, -2418, -2402, -2386, -2370,
+  -2354, -2339, -2323, -2307, -2291, -2275, -2259, -2244,
+  -2228, -2212, -2196, -2180, -2164, -2148, -2133, -2117,
+  -2101, -2085, -2069, -2053, -2037, -2022, -2006, -1990,
+  -1974, -1958, -1942, -1926, -1911, -1895, -1879, -1863,
+  -1847, -1831, -1815, -1800, -1784, -1768, -1752, -1736,
+  -1720, -1705, -1689, -1673, -1657, -1641, -1625, -1610,
+  -1594, -1578, -1562, -1546, -1531, -1515, -1499, -1483,
+  -1467, -1452, -1436, -1420, -1404, -1389, -1373, -1357,
+  -1341, -1326, -1310, -1294, -1278, -1263, -1247, -1231,
+  -1216, -1200, -1184, -1169, -1153, -1137, -1122, -1106,
+  -1091, -1075, -1059, -1044, -1028, -1013,  -997,  -981,
+   -966,  -950,  -935,  -919,  -904,  -888,  -873,  -857,
+   -842,  -826,  -811,  -795,  -780,  -765,  -749,  -734,
+   -718,  -703,  -688,  -672,  -657,  -642,  -626,  -611,
+   -596,  -580,  -565,  -550,  -535,  -519,  -504,  -489,
+   -474,  -459,  -443,  -428,  -413,  -398,  -383,  -368,
+   -353,  -338,  -323,  -308,  -293,  -278,  -263,  -248,
+   -233,  -218,  -203,  -188,  -173,  -158,  -143,  -128,
+   -114,   -99,   -84,   -69,   -54,   -40,   -25,   -10,
+      5,    19,    34,    49,    63,    78,    92,   107,
+    122,   136,   151,   165,   180,   194,   209,   223,
+    237,   252,   266,   280,   295,   309,   323,   338,
+    352,   366,   380,   395,   409,   423,   437,   451,
+    465,   479,   493,   507,   521,   535,   549,   563,
+    577,   591,   605,   619,   633,   647,   660,   674,
+    688,   702,   715,   729,   743,   756,   770,   783,
+    797,   811,   824,   838,   851,   864,   878,   891,
+    905,   918,   931,   945,   958,   971,   984,   998,
+   1011,  1024,  1037,  1050,  1063,  1076,  1089,  1102,
+   1115,  1128,  1141,  1154,  1167,  1180,  1193,  1205,
+   1218,  1231,  1244,  1256,  1269,  1282,  1294,  1307,
+   1319,  1332,  1344,  1357,  1369,  1382,  1394,  1407,
+   1419,  1431,  1443,  1456,  1468,  1480,  1492,  1504,
+   1517,  1529,  1541,  1553,  1565,  1577,  1589,  1601,
+   1612,  1624,  1636,  1648,  1660,  1671,  1683,  1695,
+   1707,  1718,  1730,  1741,  1753,  1764,  1776,  1787,
+   1799,  1810,  1821,  1833,  1844,  1855,  1867,  1878,
+   1889,  1900,  1911,  1922,  1933,  1944,  1955,  1966,
+   1977,  1988,  1999,  2010,  2021,  2031,  2042,  2053,
+   2063,  2074,  2085,  2095,  2106,  2116,  2127,  2137,
+   2148,  2158,  2168,  2179,  2189,  2199,  2209,  2220,
+   2230,  2240,  2250,  2260,  2270,  2280,  2290,  2300,
+   2310,  2320,  2330,  2339,  2349,  2359,  2369,  2378,
+   2388,  2397,  2407,  2417,  2426,  2435,  2445,  2454,
+   2464,  2473,  2482,  2491,  2501,  2510,  2519,  2528,
+   2537,  2546,  2555,  2564,  2573,  2582,  2591,  2600,
+   2609,  2617,  2626,  2635,  2644,  2652,  2661,  2669,
+   2678,  2686,  2695,  2703,  2712,  2720,  2728,  2737,
+   2745,  2753,  2761,  2769,  2777,  2785,  2793,  2801,
+   2809,  2817,  2825,  2833,  2841,  2849,  2856,  2864,
+   2872,  2879,  2887,  2895,  2902,  2910,  2917,  2925,
+   2932,  2939,  2947,  2954,  2961,  2968,  2975,  2983,
+   2990,  2997,  3004,  3011,  3018,  3025,  3031,  3038,
+   3045,  3052,  3059,  3065,  3072,  3079,  3085,  3092,
+   3098,  3105,  3111,  3117,  3124,  3130,  3136,  3143,
+   3149,  3155,  3161,  3167,  3173,  3179,  3185,  3191,
+   3197,  3203,  3209,  3215,  3221,  3226,  3232,  3238,
+   3243,  3249,  3254,  3260,  3265,  3271,  3276,  3282,
+   3287,  3292,  3297,  3303,  3308,  3313,  3318,  3323,
+   3328,  3333,  3338,  3343,  3348,  3353,  3357,  3362,
+   3367,  3372,  3376,  3381,  3385,  3390,  3395,  3399,
+   3403,  3408,  3412,  3416,  3421,  3425,  3429,  3433,
+   3437,  3442,  3446,  3450,  3454,  3458,  3461,  3465,
+   3469,  3473,  3477,  3480,  3484,  3488,  3491,  3495,
+   3498,  3502,  3505,  3509,  3512,  3515,  3519,  3522,
+   3525,  3528,  3532,  3535,  3538,  3541,  3544,  3547,
+   3550,  3553,  3556,  3558,  3561,  3564,  3567,  3569,
+   3572,  3575,  3577,  3580,  3582,  3585,  3587,  3589,
+   3592,  3594,  3596,  3598,  3601,  3603,  3605,  3607,
+   3609,  3611,  3613,  3615,  3617,  3619,  3621,  3622,
+   3624,  3626,  3627,  3629,  3631,  3632,  3634,  3635,
+   3637,  3638,  3640,  3641,  3642,  3644,  3645,  3646,
+   3647,  3648,  3649,  3650,  3651,  3652,  3653,  3654,
+   3655,  3656,  3657,  3658,  3658,  3659,  3660,  3660,
+   3661,  3662,  3662,  3663,  3663,  3663,  3664,  3664,
+   3664,  3665,  3665,  3665,  3665,  3665,  3666,  3666,
+   3666,  3666,  3666,  3665,  3665,  3665,  3665,  3665,
+   3665,  3664,  3664,  3664,  3663,  3663,  3662,  3662,
+   3661,  3661,  3660,  3659,  3659,  3658,  3657,  3657,
+   3656,  3655,  3654,  3653,  3652,  3651,  3650,  3649,
+   3648,  3647,  3646,  3645,  3643,  3642,  3641,  3640,
+   3638,  3637,  3635,  3634,  3633,  3631,  3630,  3628,
+   3626,  3625,  3623,  3621,  3620,  3618,  3616,  3614,
+   3612,  3610,  3608,  3606,  3604,  3602,  3600,  3598,
+   3596,  3594,  3592,  3589,  3587,  3585,  3583,  3580,
+   3578,  3575,  3573,  3570,  3568,  3565,  3563,  3560,
+   3557,  3555,  3552,  3549,  3547,  3544,  3541,  3538,
+   3535,  3532,  3529,  3526,  3523,  3520,  3517,  3514,
+   3511,  3508,  3505,  3501,  3498,  3495,  3491,  3488,
+   3485,  3481,  3478,  3474,  3471,  3467,  3464,  3460,
+   3457,  3453,  3449,  3446,  3442,  3438,  3434,  3430,
+   3427,  3423,  3419,  3415,  3411,  3407,  3403,  3399,
+   3395,  3391,  3387,  3382,  3378,  3374,  3370,  3365,
+   3361,  3357,  3352,  3348,  3344,  3339,  3335,  3330,
+   3326,  3321,  3317,  3312,  3307,  3303,  3298,  3293,
+   3289,  3284,  3279,  3274,  3269,  3264,  3260,  3255,
+   3250,  3245,  3240,  3235,  3230,  3224,  3219,  3214,
+   3209,  3204,  3199,  3193,  3188,  3183,  3178,  3172,
+   3167,  3162,  3156,  3151,  3145,  3140,  3134,  3129,
+   3123,  3118,  3112,  3106,  3101,  3095,  3089,  3084,
+   3078,  3072,  3066,  3060,  3055,  3049,  3043,  3037,
+   3031,  3025,  3019,  3013,  3007,  3001,  2995,  2989,
+   2983,  2977,  2970,  2964,  2958,  2952,  2945,  2939,
+   2933,  2927,  2920,  2914,  2908,  2901,  2895,  2888,
+   2882,  2875,  2869,  2862,  2856,  2849,  2843,  2836,
+   2829,  2823,  2816,  2809,  2803,  2796,  2789,  2782,
+   2776,  2769,  2762,  2755,  2748,  2741,  2734,  2727,
+   2720,  2714,  2707,  2700,  2692,  2685,  2678,  2671,
+   2664,  2657,  2650,  2643,  2636,  2628,  2621,  2614,
+   2607,  2599,  2592,  2585,  2578,  2570,  2563,  2556,
+   2548,  2541,  2533,  2526,  2518,  2511,  2504,  2496,
+   2489,  2481,  2473,  2466,  2458,  2451,  2443,  2435,
+   2428,  2420,  2412,  2405,  2397,  2389,  2382,  2374,
+   2366,  2358,  2351,  2343,  2335,  2327,  2319,  2311,
+   2303,  2296,  2288,  2280,  2272,  2264,  2256,  2248,
+   2240,  2232,  2224,  2216,  2208,  2200,  2192,  2183,
+   2175,  2167,  2159,  2151,  2143,  2135,  2127,  2118,
+   2110,  2102,  2094,  2085,  2077,  2069,  2061,  2052,
+   2044,  2036,  2027,  2019,  2011,  2002,  1994,  1986,
+   1977,  1969,  1961,  1952,  1944,  1935,  1927,  1918,
+   1910,  1901,  1893,  1884,  1876,  1867,  1859,  1850,
+   1842,  1833,  1825,  1816,  1808,  1799,  1790,  1782,
+   1773,  1765,  1756,  1747,  1739,  1730,  1721,  1713,
+   1704,  1695,  1687,  1678,  1669,  1660,  1652,  1643,
+   1634,  1625,  1617,  1608,  1599,  1590,  1582,  1573,
+   1564,  1555,  1546,  1538,  1529,  1520,  1511,  1502,
+   1493,  1485,  1476,  1467,  1458,  1449,  1440,  1431,
+   1423,  1414,  1405,  1396,  1387,  1378,  1369,  1360,
+   1351,  1342,  1333,  1324,  1316,  1307,  1298,  1289,
+   1280,  1271,  1262,  1253,  1244,  1235,  1226,  1217,
+   1208,  1199,  1190,  1181,  1172,  1163,  1154,  1145,
+   1136,  1127,  1118,  1109,  1100,  1091,  1082,  1073,
+   1064,  1055,  1046,  1037,  1028,  1019,  1010,  1001,
+    992,   983,   974,   965,   956,   947,   938,   929,
+    920,   910,   901,   892,   883,   874,   865,   856,
+    847,   838,   829,   820,   811,   802,   793,   784,
+    775,   766,   757,   748,   739,   730,   721,   712,
+    703,   694,   685,   676,   667,   658,   649,   640,
+    631,   622,   613,   604,   595,   586,   577,   568,
+    559,   550,   541,   532,   523,   514,   505,   496,
+    488,   479,   470,   461,   452,   443,   434,   425,
+    416,   407,   398,   389,   381,   372,   363,   354,
+    345,   336,   327,   318,   310,   301,   292,   283,
+    274,   265,   257,   248,   239,   230,   221,   213,
+    204,   195,   186,   178,   169,   160,   151,   143,
+    134,   125,   116,   108,    99,    90,    82,    73,
+     64,    56,    47,    38,    30,    21,    12,     4,
+     -5,   -13,   -22,   -30,   -39,   -48,   -56,   -65,
+    -73,   -82,   -90,   -99,  -107,  -116,  -124,  -133,
+   -141,  -150,  -158,  -167,  -175,  -183,  -192,  -200,
+   -209,  -217,  -225,  -234,  -242,  -250,  -259,  -267,
+   -275,  -284,  -292,  -300,  -309,  -317,  -325,  -333,
+   -342,  -350,  -358,  -366,  -374,  -382,  -391,  -399,
+   -407,  -415,  -423,  -431,  -439,  -447,  -456,  -464,
+   -472,  -480,  -488,  -496,  -504,  -512,  -520,  -528,
+   -536,  -543,  -551,  -559,  -567,  -575,  -583,  -591,
+   -599,  -606,  -614,  -622,  -630,  -638,  -645,  -653,
+   -661,  -669,  -676,  -684,  -692,  -699,  -707,  -715,
+   -722,  -730,  -738,  -745,  -753,  -760,  -768,  -775,
+   -783,  -790,  -798,  -805,  -813,  -820,  -828,  -835,
+   -842,  -850,  -857,  -865,  -872,  -879,  -887,  -894,
+   -901,  -908,  -916,  -923,  -930,  -937,  -945,  -952,
+   -959,  -966,  -973,  -980,  -987,  -994, -1001, -1009,
+  -1016, -1023, -1030, -1037, -1044, -1050, -1057, -1064,
+  -1071, -1078, -1085, -1092, -1099, -1105, -1112, -1119,
+  -1126, -1133, -1139, -1146, -1153, -1159, -1166, -1173,
+  -1179, -1186, -1193, -1199, -1206, -1212, -1219, -1225,
+  -1232, -1238, -1245, -1251, -1258, -1264, -1270, -1277,
+  -1283, -1289, -1296, -1302, -1308, -1315, -1321, -1327,
+  -1333, -1339, -1346, -1352, -1358, -1364, -1370, -1376,
+  -1382, -1388, -1394, -1400, -1406, -1412, -1418, -1424,
+  -1430, -1436, -1442, -1448, -1454, -1459, -1465, -1471,
+  -1477, -1482, -1488, -1494, -1500, -1505, -1511, -1516,
+  -1522, -1528, -1533, -1539, -1544, -1550, -1555, -1561,
+  -1566, -1572, -1577, -1582, -1588, -1593, -1599, -1604,
+  -1609, -1614, -1620, -1625, -1630, -1635, -1640, -1646,
+  -1651, -1656, -1661, -1666, -1671, -1676, -1681, -1686,
+  -1691, -1696, -1701, -1706, -1711, -1716, -1720, -1725,
+  -1730, -1735, -1740, -1744, -1749, -1754, -1758, -1763,
+  -1768, -1772, -1777, -1782, -1786, -1791, -1795, -1800,
+  -1804, -1809, -1813, -1817, -1822, -1826, -1830, -1835,
+  -1839, -1843, -1848, -1852, -1856, -1860, -1864, -1869,
+  -1873, -1877, -1881, -1885, -1889, -1893, -1897, -1901,
+  -1905, -1909, -1913, -1917, -1921, -1925, -1928, -1932,
+  -1936, -1940, -1944, -1947, -1951, -1955, -1958, -1962,
+  -1966, -1969, -1973, -1976, -1980, -1983, -1987, -1990,
+  -1994, -1997, -2001, -2004, -2007, -2011, -2014, -2017,
+  -2021, -2024, -2027, -2030, -2033, -2037, -2040, -2043,
+  -2046, -2049, -2052, -2055, -2058, -2061, -2064, -2067,
+  -2070, -2073, -2076, -2079, -2081, -2084, -2087, -2090,
+  -2092, -2095, -2098, -2101, -2103, -2106, -2108, -2111,
+  -2114, -2116, -2119, -2121, -2124, -2126, -2129, -2131,
+  -2133, -2136, -2138, -2140, -2143, -2145, -2147, -2150,
+  -2152, -2154, -2156, -2158, -2160, -2162, -2165, -2167,
+  -2169, -2171, -2173, -2175, -2177, -2179, -2180, -2182,
+  -2184, -2186, -2188, -2190, -2191, -2193, -2195, -2197,
+  -2198, -2200, -2202, -2203, -2205, -2206, -2208, -2209,
+  -2211, -2212, -2214, -2215, -2217, -2218, -2220, -2221,
+  -2222, -2224, -2225, -2226, -2227, -2229, -2230, -2231,
+  -2232, -2233, -2234, -2236, -2237, -2238, -2239, -2240,
+  -2241, -2242, -2243, -2244, -2244, -2245, -2246, -2247,
+  -2248, -2249, -2249, -2250, -2251, -2252, -2252, -2253,
+  -2254, -2254, -2255, -2255, -2256, -2256, -2257, -2257,
+  -2258, -2258, -2259, -2259, -2260, -2260, -2260, -2261,
+  -2261, -2261, -2261, -2262, -2262, -2262, -2262, -2262,
+  -2263, -2263, -2263, -2263, -2263, -2263, -2263, -2263,
+  -2263, -2263, -2263, -2263, -2262, -2262, -2262, -2262,
+  -2262, -2261, -2261, -2261, -2261, -2260, -2260, -2260,
+  -2259, -2259, -2259, -2258, -2258, -2257, -2257, -2256,
+  -2256, -2255, -2254, -2254, -2253, -2253, -2252, -2251,
+  -2251, -2250, -2249, -2248, -2248, -2247, -2246, -2245,
+  -2244, -2243, -2242, -2242, -2241, -2240, -2239, -2238,
+  -2237, -2236, -2235, -2233, -2232, -2231, -2230, -2229,
+  -2228, -2227, -2225, -2224, -2223, -2222, -2220, -2219,
+  -2218, -2216, -2215, -2214, -2212, -2211, -2209, -2208,
+  -2206, -2205, -2203, -2202, -2200, -2199, -2197, -2195,
+  -2194, -2192, -2190, -2189, -2187, -2185, -2184, -2182,
+  -2180, -2178, -2176, -2174, -2173, -2171, -2169, -2167,
+  -2165, -2163, -2161, -2159, -2157, -2155, -2153, -2151,
+  -2149, -2147, -2145, -2142, -2140, -2138, -2136, -2134,
+  -2132, -2129, -2127, -2125, -2122, -2120, -2118, -2116,
+  -2113, -2111, -2108, -2106, -2104, -2101, -2099, -2096,
+  -2094, -2091, -2089, -2086, -2083, -2081, -2078, -2076,
+  -2073, -2070, -2068, -2065, -2062, -2060, -2057, -2054,
+  -2051, -2049, -2046, -2043, -2040, -2037, -2034, -2031,
+  -2029, -2026, -2023, -2020, -2017, -2014, -2011, -2008,
+  -2005, -2002, -1999, -1996, -1992, -1989, -1986, -1983,
+  -1980, -1977, -1974, -1970, -1967, -1964, -1961, -1957,
+  -1954, -1951, -1948, -1944, -1941, -1938, -1934, -1931,
+  -1927, -1924, -1921, -1917, -1914, -1910, -1907, -1903,
+  -1900, -1896, -1893, -1889, -1886, -1882, -1878, -1875,
+  -1871, -1868, -1864, -1860, -1857, -1853, -1849, -1845,
+  -1842, -1838, -1834, -1830, -1827, -1823, -1819, -1815,
+  -1811, -1807, -1804, -1800, -1796, -1792, -1788, -1784,
+  -1780, -1776, -1772, -1768, -1764, -1760, -1756, -1752,
+  -1748, -1744, -1740, -1736, -1732, -1728, -1724, -1719,
+  -1715, -1711, -1707, -1703, -1699, -1694, -1690, -1686,
+  -1682, -1677, -1673, -1669, -1665, -1660, -1656, -1652,
+  -1647, -1643, -1639, -1634, -1630, -1625, -1621, -1617,
+  -1612, -1608, -1603, -1599, -1594, -1590, -1586, -1581,
+  -1577, -1572, -1567, -1563, -1558, -1554, -1549, -1545,
+  -1540, -1535, -1531, -1526, -1522, -1517, -1512, -1508,
+  -1503, -1498, -1494, -1489, -1484, -1480, -1475, -1470,
+  -1465, -1461, -1456, -1451, -1446, -1441, -1437, -1432,
+  -1427, -1422, -1417, -1413, -1408, -1403, -1398, -1393,
+  -1388, -1383, -1378, -1374, -1369, -1364, -1359, -1354,
+  -1349, -1344, -1339, -1334, -1329, -1324, -1319, -1314,
+  -1309, -1304, -1299, -1294, -1289, -1284, -1279, -1274,
+  -1269, -1264, -1258, -1253, -1248, -1243, -1238, -1233,
+  -1228, -1223, -1218, -1212, -1207, -1202, -1197, -1192,
+  -1187, -1181, -1176, -1171, -1166, -1161, -1155, -1150,
+  -1145, -1140, -1135, -1129, -1124, -1119, -1114, -1108,
+  -1103, -1098, -1092, -1087, -1082, -1077, -1071, -1066,
+  -1061, -1055, -1050, -1045, -1039, -1034, -1029, -1023,
+  -1018, -1013, -1007, -1002,  -997,  -991,  -986,  -980,
+   -975,  -970,  -964,  -959,  -953,  -948,  -943,  -937,
+   -932,  -926,  -921,  -916,  -910,  -905,  -899,  -894,
+   -888,  -883,  -877,  -872,  -867,  -861,  -856,  -850,
+   -845,  -839,  -834,  -828,  -823,  -817,  -812,  -806,
+   -801,  -795,  -790,  -784,  -779,  -773,  -768,  -762,
+   -757,  -751,  -746,  -740,  -735,  -729,  -724,  -718,
+   -713,  -707,  -702,  -696,  -691,  -685,  -680,  -674,
+   -669,  -663,  -658,  -652,  -646,  -641,  -635,  -630,
+   -624,  -619,  -613,  -608,  -602,  -597,  -591,  -585,
+   -580,  -574,  -569,  -563,  -558,  -552,  -547,  -541,
+   -536,  -530,  -524,  -519,  -513,  -508,  -502,  -497,
+   -491,  -486,  -480,  -475,  -469,  -464,  -458,  -452,
+   -447,  -441,  -436,  -430,  -425,  -419,  -414,  -408,
+   -403,  -397,  -392,  -386,  -381,  -375,  -369,  -364,
+   -358,  -353,  -347,  -342,  -336,  -331,  -325,  -320,
+   -314,  -309,  -303,  -298,  -292,  -287,  -281,  -276,
+   -270,  -265,  -259,  -254,  -248,  -243,  -238,  -232,
+   -227,  -221,  -216,  -210,  -205,  -199,  -194,  -188,
+   -183,  -178,  -172,  -167,  -161,  -156,  -150,  -145,
+   -140,  -134,  -129,  -123,  -118,  -113,  -107,  -102,
+    -96,   -91,   -86,   -80,   -75,   -70,   -64,   -59,
+    -53,   -48,   -43,   -37,   -32,   -27,   -21,   -16,
+    -11,    -5,     0,     5,    10,    16,    21,    26,
+     32,    37,    42,    47,    53,    58,    63,    68,
+     74,    79,    84,    89,    95,   100,   105,   110,
+    115,   121,   126,   131,   136,   141,   146,   152,
+    157,   162,   167,   172,   177,   182,   187,   193,
+    198,   203,   208,   213,   218,   223,   228,   233,
+    238,   243,   248,   253,   258,   263,   268,   273,
+    278,   283,   288,   293,   298,   303,   308,   313,
+    318,   323,   328,   333,   338,   343,   347,   352,
+    357,   362,   367,   372,   377,   382,   386,   391,
+    396,   401,   406,   410,   415,   420,   425,   429,
+    434,   439,   444,   448,   453,   458,   463,   467,
+    472,   477,   481,   486,   491,   495,   500,   505,
+    509,   514,   518,   523,   528,   532,   537,   541,
+    546,   550,   555,   559,   564,   568,   573,   577,
+    582,   586,   591,   595,   600,   604,   608,   613,
+    617,   622,   626,   630,   635,   639,   643,   648,
+    652,   656,   661,   665,   669,   674,   678,   682,
+    686,   691,   695,   699,   703,   707,   712,   716,
+    720,   724,   728,   732,   737,   741,   745,   749,
+    753,   757,   761,   765,   769,   773,   777,   781,
+    785,   789,   793,   797,   801,   805,   809,   813,
+    817,   821,   825,   829,   832,   836,   840,   844,
+    848,   852,   855,   859,   863,   867,   871,   874,
+    878,   882,   885,   889,   893,   897,   900,   904,
+    908,   911,   915,   918,   922,   926,   929,   933,
+    936,   940,   943,   947,   950,   954,   957,   961,
+    964,   968,   971,   975,   978,   981,   985,   988,
+    992,   995,   998,  1002,  1005,  1008,  1012,  1015,
+   1018,  1021,  1025,  1028,  1031,  1034,  1038,  1041,
+   1044,  1047,  1050,  1053,  1057,  1060,  1063,  1066,
+   1069,  1072,  1075,  1078,  1081,  1084,  1087,  1090,
+   1093,  1096,  1099,  1102,  1105,  1108,  1111,  1114,
+   1117,  1119,  1122,  1125,  1128,  1131,  1134,  1136,
+   1139,  1142,  1145,  1148,  1150,  1153,  1156,  1158,
+   1161,  1164,  1166,  1169,  1172,  1174,  1177,  1179,
+   1182,  1185,  1187,  1190,  1192,  1195,  1197,  1200,
+   1202,  1205,  1207,  1210,  1212,  1214,  1217,  1219,
+   1222,  1224,  1226,  1229,  1231,  1233,  1236,  1238,
+   1240,  1242,  1245,  1247,  1249,  1251,  1253,  1256,
+   1258,  1260,  1262,  1264,  1266,  1268,  1271,  1273,
+   1275,  1277,  1279,  1281,  1283,  1285,  1287,  1289,
+   1291,  1293,  1295,  1297,  1298,  1300,  1302,  1304,
+   1306,  1308,  1310,  1311,  1313,  1315,  1317,  1319,
+   1320,  1322,  1324,  1325,  1327,  1329,  1330,  1332,
+   1334,  1335,  1337,  1339,  1340,  1342,  1343,  1345,
+   1346,  1348,  1349,  1351,  1352,  1354,  1355,  1357,
+   1358,  1360,  1361,  1362,  1364,  1365,  1367,  1368,
+   1369,  1370,  1372,  1373,  1374,  1376,  1377,  1378,
+   1379,  1380,  1382,  1383,  1384,  1385,  1386,  1387,
+   1389,  1390,  1391,  1392,  1393,  1394,  1395,  1396,
+   1397,  1398,  1399,  1400,  1401,  1402,  1403,  1404,
+   1405,  1405,  1406,  1407,  1408,  1409,  1410,  1410,
+   1411,  1412,  1413,  1414,  1414,  1415,  1416,  1416,
+   1417,  1418,  1419,  1419,  1420,  1420,  1421,  1422,
+   1422,  1423,  1423,  1424,  1424,  1425,  1425,  1426,
+   1426,  1427,  1427,  1428,  1428,  1429,  1429,  1429,
+   1430,  1430,  1431,  1431,  1431,  1432,  1432,  1432,
+   1432,  1433,  1433,  1433,  1433,  1434,  1434,  1434,
+   1434,  1434,  1434,  1435,  1435,  1435,  1435,  1435,
+   1435,  1435,  1435,  1435,  1435,  1435,  1435,  1435,
+   1435,  1435,  1435,  1435,  1435,  1435,  1435,  1435,
+   1435,  1434,  1434,  1434,  1434,  1434,  1434,  1433,
+   1433,  1433,  1433,  1432,  1432,  1432,  1432,  1431,
+   1431,  1431,  1430,  1430,  1429,  1429,  1429,  1428,
+   1428,  1427,  1427,  1427,  1426,  1426,  1425,  1425,
+   1424,  1424,  1423,  1422,  1422,  1421,  1421,  1420,
+   1420,  1419,  1418,  1418,  1417,  1416,  1416,  1415,
+   1414,  1413,  1413,  1412,  1411,  1410,  1410,  1409,
+   1408,  1407,  1406,  1406,  1405,  1404,  1403,  1402,
+   1401,  1400,  1400,  1399,  1398,  1397,  1396,  1395,
+   1394,  1393,  1392,  1391,  1390,  1389,  1388,  1387,
+   1386,  1384,  1383,  1382,  1381,  1380,  1379,  1378,
+   1377,  1375,  1374,  1373,  1372,  1371,  1369,  1368,
+   1367,  1366,  1364,  1363,  1362,  1361,  1359,  1358,
+   1357,  1355,  1354,  1353,  1351,  1350,  1348,  1347,
+   1346,  1344,  1343,  1341,  1340,  1338,  1337,  1335,
+   1334,  1332,  1331,  1329,  1328,  1326,  1325,  1323,
+   1322,  1320,  1318,  1317,  1315,  1314,  1312,  1310,
+   1309,  1307,  1305,  1304,  1302,  1300,  1299,  1297,
+   1295,  1293,  1292,  1290,  1288,  1286,  1284,  1283,
+   1281,  1279,  1277,  1275,  1274,  1272,  1270,  1268,
+   1266,  1264,  1262,  1260,  1258,  1257,  1255,  1253,
+   1251,  1249,  1247,  1245,  1243,  1241,  1239,  1237,
+   1235,  1233,  1231,  1229,  1227,  1224,  1222,  1220,
+   1218,  1216,  1214,  1212,  1210,  1208,  1205,  1203,
+   1201,  1199,  1197,  1195,  1192,  1190,  1188,  1186,
+   1183,  1181,  1179,  1177,  1174,  1172,  1170,  1168,
+   1165,  1163,  1161,  1158,  1156,  1154,  1151,  1149,
+   1147,  1144,  1142,  1140,  1137,  1135,  1132,  1130,
+   1128,  1125,  1123,  1120,  1118,  1115,  1113,  1110,
+   1108,  1105,  1103,  1100,  1098,  1095,  1093,  1090,
+   1088,  1085,  1083,  1080,  1078,  1075,  1073,  1070,
+   1067,  1065,  1062,  1060,  1057,  1054,  1052,  1049,
+   1046,  1044,  1041,  1038,  1036,  1033,  1030,  1028,
+   1025,  1022,  1020,  1017,  1014,  1012,  1009,  1006,
+   1003,  1001,   998,   995,   992,   990,   987,   984,
+    981,   978,   976,   973,   970,   967,   964,   961,
+    959,   956,   953,   950,   947,   944,   942,   939,
+    936,   933,   930,   927,   924,   921,   918,   915,
+    913,   910,   907,   904,   901,   898,   895,   892,
+    889,   886,   883,   880,   877,   874,   871,   868,
+    865,   862,   859,   856,   853,   850,   847,   844,
+    841,   838,   835,   832,   829,   826,   823,   820,
+    817,   813,   810,   807,   804,   801,   798,   795,
+    792,   789,   786,   783,   779,   776,   773,   770,
+    767,   764,   761,   758,   754,   751,   748,   745,
+    742,   739,   735,   732,   729,   726,   723,   720,
+    716,   713,   710,   707,   704,   700,   697,   694,
+    691,   688,   684,   681,   678,   675,   671,   668,
+    665,   662,   659,   655,   652,   649,   646,   642,
+    639,   636,   633,   629,   626,   623,   620,   616,
+    613,   610,   606,   603,   600,   597,   593,   590,
+    587,   584,   580,   577,   574,   570,   567,   564,
+    560,   557,   554,   551,   547,   544,   541,   537,
+    534,   531,   527,   524,   521,   517,   514,   511,
+    507,   504,   501,   498,   494,   491,   488,   484,
+    481,   478,   474,   471,   468,   464,   461,   458,
+    454,   451,   448,   444,   441,   437,   434,   431,
+    427,   424,   421,   417,   414,   411,   407,   404,
+    401,   397,   394,   391,   387,   384,   381,   377,
+    374,   371,   367,   364,   361,   357,   354,   351,
+    347,   344,   341,   337,   334,   330,   327,   324,
+    320,   317,   314,   310,   307,   304,   300,   297,
+    294,   290,   287,   284,   280,   277,   274,   270,
+    267,   264,   260,   257,   254,   250,   247,   244,
+    240,   237,   234,   230,   227,   224,   221,   217,
+    214,   211,   207,   204,   201,   197,   194,   191,
+    187,   184,   181,   178,   174,   171,   168,   164,
+    161,   158,   154,   151,   148,   145,   141,   138,
+    135,   132,   128,   125,   122,   118,   115,   112,
+    109,   105,   102,    99,    96,    92,    89,    86,
+     83,    79,    76,    73,    70,    67,    63,    60,
+     57,    54,    50,    47,    44,    41,    38,    34,
+     31,    28,    25,    22,    18,    15,    12,     9,
+      6,     2,    -1,    -4,    -7,   -10,   -13,   -16,
+    -20,   -23,   -26,   -29,   -32,   -35,   -39,   -42,
+    -45,   -48,   -51,   -54,   -57,   -60,   -63,   -67,
+    -70,   -73,   -76,   -79,   -82,   -85,   -88,   -91,
+    -94,   -97,  -100,  -104,  -107,  -110,  -113,  -116,
+   -119,  -122,  -125,  -128,  -131,  -134,  -137,  -140,
+   -143,  -146,  -149,  -152,  -155,  -158,  -161,  -164,
+   -167,  -170,  -173,  -176,  -179,  -182,  -185,  -188,
+   -191,  -194,  -196,  -199,  -202,  -205,  -208,  -211,
+   -214,  -217,  -220,  -223,  -226,  -228,  -231,  -234,
+   -237,  -240,  -243,  -246,  -248,  -251,  -254,  -257,
+   -260,  -263,  -266,  -268,  -271,  -274,  -277,  -280,
+   -282,  -285,  -288,  -291,  -293,  -296,  -299,  -302,
+   -305,  -307,  -310,  -313,  -315,  -318,  -321,  -324,
+   -326,  -329,  -332,  -334,  -337,  -340,  -343,  -345,
+   -348,  -351,  -353,  -356,  -359,  -361,  -364,  -366,
+   -369,  -372,  -374,  -377,  -380,  -382,  -385,  -387,
+   -390,  -392,  -395,  -398,  -400,  -403,  -405,  -408,
+   -410,  -413,  -415,  -418,  -420,  -423,  -425,  -428,
+   -430,  -433,  -435,  -438,  -440,  -443,  -445,  -448,
+   -450,  -453,  -455,  -457,  -460,  -462,  -465,  -467,
+   -469,  -472,  -474,  -477,  -479,  -481,  -484,  -486,
+   -488,  -491,  -493,  -495,  -498,  -500,  -502,  -505,
+   -507,  -509,  -512,  -514,  -516,  -518,  -521,  -523,
+   -525,  -527,  -530,  -532,  -534,  -536,  -538,  -541,
+   -543,  -545,  -547,  -549,  -552,  -554,  -556,  -558,
+   -560,  -562,  -564,  -567,  -569,  -571,  -573,  -575,
+   -577,  -579,  -581,  -583,  -585,  -587,  -589,  -592,
+   -594,  -596,  -598,  -600,  -602,  -604,  -606,  -608,
+   -610,  -612,  -614,  -615,  -617,  -619,  -621,  -623,
+   -625,  -627,  -629,  -631,  -633,  -635,  -637,  -639,
+   -640,  -642,  -644,  -646,  -648,  -650,  -651,  -653,
+   -655,  -657,  -659,  -661,  -662,  -664,  -666,  -668,
+   -669,  -671,  -673,  -675,  -676,  -678,  -680,  -682,
+   -683,  -685,  -687,  -688,  -690,  -692,  -693,  -695,
+   -697,  -698,  -700,  -702,  -703,  -705,  -706,  -708,
+   -710,  -711,  -713,  -714,  -716,  -717,  -719,  -720,
+   -722,  -724,  -725,  -727,  -728,  -730,  -731,  -733,
+   -734,  -735,  -737,  -738,  -740,  -741,  -743,  -744,
+   -746,  -747,  -748,  -750,  -751,  -753,  -754,  -755,
+   -757,  -758,  -759,  -761,  -762,  -763,  -765,  -766,
+   -767,  -769,  -770,  -771,  -772,  -774,  -775,  -776,
+   -777,  -779,  -780,  -781,  -782,  -783,  -785,  -786,
+   -787,  -788,  -789,  -791,  -792,  -793,  -794,  -795,
+   -796,  -797,  -798,  -800,  -801,  -802,  -803,  -804,
+   -805,  -806,  -807,  -808,  -809,  -810,  -811,  -812,
+   -813,  -814,  -815,  -816,  -817,  -818,  -819,  -820,
+   -821,  -822,  -823,  -824,  -825,  -826,  -827,  -827,
+   -828,  -829,  -830,  -831,  -832,  -833,  -833,  -834,
+   -835,  -836,  -837,  -838,  -838,  -839,  -840,  -841,
+   -842,  -842,  -843,  -844,  -845,  -845,  -846,  -847,
+   -847,  -848,  -849,  -850,  -850,  -851,  -852,  -852,
+   -853,  -854,  -854,  -855,  -855,  -856,  -857,  -857,
+   -858,  -858,  -859,  -860,  -860,  -861,  -861,  -862,
+   -862,  -863,  -863,  -864,  -864,  -865,  -865,  -866,
+   -866,  -867,  -867,  -868,  -868,  -869,  -869,  -870,
+   -870,  -870,  -871,  -871,  -872,  -872,  -872,  -873,
+   -873,  -874,  -874,  -874,  -875,  -875,  -875,  -876,
+   -876,  -876,  -876,  -877,  -877,  -877,  -878,  -878,
+   -878,  -878,  -879,  -879,  -879,  -879,  -879,  -880,
+   -880,  -880,  -880,  -880,  -881,  -881,  -881,  -881,
+   -881,  -881,  -882,  -882,  -882,  -882,  -882,  -882,
+   -882,  -882,  -882,  -882,  -882,  -882,  -883,  -883,
+   -883,  -883,  -883,  -883,  -883,  -883,  -883,  -883,
+   -883,  -883,  -883,  -883,  -882,  -882,  -882,  -882,
+   -882,  -882,  -882,  -882,  -882,  -882,  -882,  -882,
+   -881,  -881,  -881,  -881,  -881,  -881,  -881,  -880,
+   -880,  -880,  -880,  -880,  -879,  -879,  -879,  -879,
+   -879,  -878,  -878,  -878,  -878,  -877,  -877,  -877,
+   -876,  -876,  -876,  -876,  -875,  -875,  -875,  -874,
+   -874,  -874,  -873,  -873,  -873,  -872,  -872,  -871,
+   -871,  -871,  -870,  -870,  -870,  -869,  -869,  -868,
+   -868,  -867,  -867,  -867,  -866,  -866,  -865,  -865,
+   -864,  -864,  -863,  -863,  -862,  -862,  -861,  -861,
+   -860,  -860,  -859,  -859,  -858,  -857,  -857,  -856,
+   -856,  -855,  -855,  -854,  -853,  -853,  -852,  -852,
+   -851,  -850,  -850,  -849,  -848,  -848,  -847,  -846,
+   -846,  -845,  -844,  -844,  -843,  -842,  -842,  -841,
+   -840,  -840,  -839,  -838,  -837,  -837,  -836,  -835,
+   -834,  -834,  -833,  -832,  -831,  -831,  -830,  -829,
+   -828,  -827,  -827,  -826,  -825,  -824,  -823,  -822,
+   -822,  -821,  -820,  -819,  -818,  -817,  -816,  -816,
+   -815,  -814,  -813,  -812,  -811,  -810,  -809,  -808,
+   -808,  -807,  -806,  -805,  -804,  -803,  -802,  -801,
+   -800,  -799,  -798,  -797,  -796,  -795,  -794,  -793,
+   -792,  -791,  -790,  -789,  -788,  -787,  -786,  -785,
+   -784,  -783,  -782,  -781,  -780,  -779,  -778,  -777,
+   -776,  -774,  -773,  -772,  -771,  -770,  -769,  -768,
+   -767,  -766,  -765,  -763,  -762,  -761,  -760,  -759,
+   -758,  -757,  -755,  -754,  -753,  -752,  -751,  -750,
+   -748,  -747,  -746,  -745,  -744,  -743,  -741,  -740,
+   -739,  -738,  -736,  -735,  -734,  -733,  -732,  -730,
+   -729,  -728,  -727,  -725,  -724,  -723,  -722,  -720,
+   -719,  -718,  -716,  -715,  -714,  -713,  -711,  -710,
+   -709,  -707,  -706,  -705,  -703,  -702,  -701,  -699,
+   -698,  -697,  -695,  -694,  -693,  -691,  -690,  -689,
+   -687,  -686,  -685,  -683,  -682,  -680,  -679,  -678,
+   -676,  -675,  -673,  -672,  -671,  -669,  -668,  -666,
+   -665,  -664,  -662,  -661,  -659,  -658,  -656,  -655,
+   -654,  -652,  -651,  -649,  -648,  -646,  -645,  -643,
+   -642,  -640,  -639,  -638,  -636,  -635,  -633,  -632,
+   -630,  -629,  -627,  -626,  -624,  -623,  -621,  -620,
+   -618,  -617,  -615,  -614,  -612,  -610,  -609,  -607,
+   -606,  -604,  -603,  -601,  -600,  -598,  -597,  -595,
+   -594,  -592,  -590,  -589,  -587,  -586,  -584,  -583,
+   -581,  -579,  -578,  -576,  -575,  -573,  -572,  -570,
+   -568,  -567,  -565,  -564,  -562,  -560,  -559,  -557,
+   -556,  -554,  -552,  -551,  -549,  -547,  -546,  -544,
+   -543,  -541,  -539,  -538,  -536,  -534,  -533,  -531,
+   -530,  -528,  -526,  -525,  -523,  -521,  -520,  -518,
+   -516,  -515,  -513,  -511,  -510,  -508,  -506,  -505,
+   -503,  -501,  -500,  -498,  -496,  -495,  -493,  -491,
+   -490,  -488,  -486,  -485,  -483,  -481,  -479,  -478,
+   -476,  -474,  -473,  -471,  -469,  -468,  -466,  -464,
+   -462,  -461,  -459,  -457,  -456,  -454,  -452,  -450,
+   -449,  -447,  -445,  -444,  -442,  -440,  -438,  -437,
+   -435,  -433,  -432,  -430,  -428,  -426,  -425,  -423,
+   -421,  -419,  -418,  -416,  -414,  -413,  -411,  -409,
+   -407,  -406,  -404,  -402,  -400,  -399,  -397,  -395,
+   -393,  -392,  -390,  -388,  -386,  -385,  -383,  -381,
+   -379,  -378,  -376,  -374,  -372,  -371,  -369,  -367,
+   -365,  -364,  -362,  -360,  -358,  -357,  -355,  -353,
+   -351,  -350,  -348,  -346,  -344,  -343,  -341,  -339,
+   -337,  -336,  -334,  -332,  -330,  -328,  -327,  -325,
+   -323,  -321,  -320,  -318,  -316,  -314,  -313,  -311,
+   -309,  -307,  -306,  -304,  -302,  -300,  -299,  -297,
+   -295,  -293,  -291,  -290,  -288,  -286,  -284,  -283,
+   -281,  -279,  -277,  -276,  -274,  -272,  -270,  -269,
+   -267,  -265,  -263,  -262,  -260,  -258,  -256,  -255,
+   -253,  -251,  -249,  -247,  -246,  -244,  -242,  -240,
+   -239,  -237,  -235,  -233,  -232,  -230,  -228,  -226,
+   -225,  -223,  -221,  -219,  -218,  -216,  -214,  -213,
+   -211,  -209,  -207,  -206,  -204,  -202,  -200,  -199,
+   -197,  -195,  -193,  -192,  -190,  -188,  -186,  -185,
+   -183,  -181,  -180,  -178,  -176,  -174,  -173,  -171,
+   -169,  -167,  -166,  -164,  -162,  -161,  -159,  -157,
+   -155,  -154,  -152,  -150,  -149,  -147,  -145,  -143,
+   -142,  -140,  -138,  -137,  -135,  -133,  -132,  -130,
+   -128,  -126,  -125,  -123,  -121,  -120,  -118,  -116,
+   -115,  -113,  -111,  -110,  -108,  -106,  -105,  -103,
+   -101,   -99,   -98,   -96,   -94,   -93,   -91,   -89,
+    -88,   -86,   -84,   -83,   -81,   -80,   -78,   -76,
+    -75,   -73,   -71,   -70,   -68,   -66,   -65,   -63,
+    -61,   -60,   -58,   -57,   -55,   -53,   -52,   -50,
+    -48,   -47,   -45,   -43,   -42,   -40,   -39,   -37,
+    -35,   -34,   -32,   -31,   -29,   -27,   -26,   -24,
+    -23,   -21,   -19,   -18,   -16,   -15,   -13,   -11,
+    -10,    -8,    -7,    -5,    -4,    -2,     0,     1,
+      3,     4,     6,     7,     9,    10,    12,    14,
+     15,    17,    18,    20,    21,    23,    24,    26,
+     27,    29,    30,    32,    34,    35,    37,    38,
+     40,    41,    43,    44,    46,    47,    49,    50,
+     52,    53,    55,    56,    58,    59,    61,    62,
+     64,    65,    66,    68,    69,    71,    72,    74,
+     75,    77,    78,    80,    81,    82,    84,    85,
+     87,    88,    90,    91,    93,    94,    95,    97,
+     98,   100,   101,   102,   104,   105,   107,   108,
+    109,   111,   112,   114,   115,   116,   118,   119,
+    121,   122,   123,   125,   126,   127,   129,   130,
+    132,   133,   134,   136,   137,   138,   140,   141,
+    142,   144,   145,   146,   148,   149,   150,   152,
+    153,   154,   155,   157,   158,   159,   161,   162,
+    163,   165,   166,   167,   168,   170,   171,   172,
+    174,   175,   176,   177,   179,   180,   181,   182,
+    184,   185,   186,   187,   189,   190,   191,   192,
+    193,   195,   196,   197,   198,   200,   201,   202,
+    203,   204,   206,   207,   208,   209,   210,   211,
+    213,   214,   215,   216,   217,   218,   220,   221,
+    222,   223,   224,   225,   227,   228,   229,   230,
+    231,   232,   233,   234,   236,   237,   238,   239,
+    240,   241,   242,   243,   244,   245,   247,   248,
+    249,   250,   251,   252,   253,   254,   255,   256,
+    257,   258,   259,   260,   261,   262,   264,   265,
+    266,   267,   268,   269,   270,   271,   272,   273,
+    274,   275,   276,   277,   278,   279,   280,   281,
+    282,   283,   284,   285,   286,   287,   288,   288,
+    289,   290,   291,   292,   293,   294,   295,   296,
+    297,   298,   299,   300,   301,   302,   302,   303,
+    304,   305,   306,   307,   308,   309,   310,   311,
+    311,   312,   313,   314,   315,   316,   317,   318,
+    318,   319,   320,   321,   322,   323,   323,   324,
+    325,   326,   327,   328,   328,   329,   330,   331,
+    332,   332,   333,   334,   335,   336,   336,   337,
+    338,   339,   339,   340,   341,   342,   343,   343,
+    344,   345,   346,   346,   347,   348,   349,   349,
+    350,   351,   351,   352,   353,   354,   354,   355,
+    356,   356,   357,   358,   358,   359,   360,   361,
+    361,   362,   363,   363,   364,   365,   365,   366,
+    367,   367,   368,   368,   369,   370,   370,   371,
+    372,   372,   373,   373,   374,   375,   375,   376,
+    376,   377,   378,   378,   379,   379,   380,   381,
+    381,   382,   382,   383,   383,   384,   385,   385,
+    386,   386,   387,   387,   388,   388,   389,   389,
+    390,   391,   391,   392,   392,   393,   393,   394,
+    394,   395,   395,   396,   396,   397,   397,   398,
+    398,   398,   399,   399,   400,   400,   401,   401,
+    402,   402,   403,   403,   403,   404,   404,   405,
+    405,   406,   406,   406,   407,   407,   408,   408,
+    409,   409,   409,   410,   410,   410,   411,   411,
+    412,   412,   412,   413,   413,   413,   414,   414,
+    415,   415,   415,   416,   416,   416,   417,   417,
+    417,   418,   418,   418,   419,   419,   419,   420,
+    420,   420,   420,   421,   421,   421,   422,   422,
+    422,   423,   423,   423,   423,   424,   424,   424,
+    424,   425,   425,   425,   425,   426,   426,   426,
+    426,   427,   427,   427,   427,   428,   428,   428,
+    428,   428,   429,   429,   429,   429,   429,   430,
+    430,   430,   430,   430,   431,   431,   431,   431,
+    431,   432,   432,   432,   432,   432,   432,   432,
+    433,   433,   433,   433,   433,   433,   433,   434,
+    434,   434,   434,   434,   434,   434,   434,   435,
+    435,   435,   435,   435,   435,   435,   435,   435,
+    435,   436,   436,   436,   436,   436,   436,   436,
+    436,   436,   436,   436,   436,   436,   436,   436,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   437,
+    437,   437,   437,   437,   437,   437,   437,   436,
+    436,   436,   436,   436,   436,   436,   436,   436,
+    436,   436,   436,   436,   436,   436,   436,   435,
+    435,   435,   435,   435,   435,   435,   435,   435,
+    435,   434,   434,   434,   434,   434,   434,   434,
+    434,   434,   433,   433,   433,   433,   433,   433,
+    433,   432,   432,   432,   432,   432,   432,   432,
+    431,   431,   431,   431,   431,   431,   430,   430,
+    430,   430,   430,   430,   429,   429,   429,   429,
+    429,   429,   428,   428,   428,   428,   428,   427,
+    427,   427,   427,   427,   426,   426,   426,   426,
+    425,   425,   425,   425,   425,   424,   424,   424,
+    424,   423,   423,   423,   423,   422,   422,   422,
+    422,   421,   421,   421,   421,   420,   420,   420,
+    420,   419,   419,   419,   419,   418,   418,   418,
+    418,   417,   417,   417,   416,   416,   416,   416,
+    415,   415,   415,   414,   414,   414,   414,   413,
+    413,   413,   412,   412,   412,   411,   411,   411,
+    410,   410,   410,   409,   409,   409,   409,   408,
+    408,   408,   407,   407,   407,   406,   406,   406,
+    405,   405,   405,   404,   404,   404,   403,   403,
+    402,   402,   402,   401,   401,   401,   400,   400,
+    400,   399,   399,   399,   398,   398,   397,   397,
+    397,   396,   396,   396,   395,   395,   394,   394,
+    394,   393,   393,   393,   392,   392,   391,   391,
+    391,   390,   390,   389,   389,   389,   388,   388,
+    387,   387,   387,   386,   386,   385,   385,   385,
+    384,   384,   383,   383,   382,   382,   382,   381,
+    381,   380,   380,   380,   379,   379,   378,   378,
+    377,   377,   377,   376,   376,   375,   375,   374,
+    374,   373,   373,   373,   372,   372,   371,   371,
+    370,   370,   370,   369,   369,   368,   368,   367,
+    367,   366,   366,   365,   365,   365,   364,   364,
+    363,   363,   362,   362,   361,   361,   360,   360,
+    359,   359,   359,   358,   358,   357,   357,   356,
+    356,   355,   355,   354,   354,   353,   353,   352,
+    352,   351,   351,   350,   350,   349,   349,   348,
+    348,   348,   347,   347,   346,   346,   345,   345,
+    344,   344,   343,   343,   342,   342,   341,   341,
+    340,   340,   339,   339,   338,   338,   337,   337,
+    336,   336,   335,   335,   334,   334,   333,   333,
+    332,   332,   331,   331,   330,   330,   329,   329,
+    328,   328,   327,   327,   326,   326,   325,   325,
+    324,   323,   323,   322,   322,   321,   321,   320,
+    320,   319,   319,   318,   318,   317,   317,   316,
+    316,   315,   315,   314,   314,   313,   313,   312,
+    312,   311,   311,   310,   309,   309,   308,   308,
+    307,   307,   306,   306,   305,   305,   304,   304,
+    303,   303,   302,   302,   301,   300,   300,   299,
+    299,   298,   298,   297,   297,   296,   296,   295,
+    295,   294,   294,   293,   293,   292,   291,   291,
+    290,   290,   289,   289,   288,   288,   287,   287,
+    286,   286,   285,   285,   284,   283,   283,   282,
+    282,   281,   281,   280,   280,   279,   279,   278,
+    278,   277,   277,   276,   275,   275,   274,   274,
+    273,   273,   272,   272,   271,   271,   270,   270,
+    269,   268,   268,   267,   267,   266,   266,   265,
+    265,   264,   264,   263,   263,   262,   261,   261,
+    260,   260,   259,   259,   258,   258,   257,   257,
+    256,   256,   255,   255,   254,   253,   253,   252,
+    252,   251,   251,   250,   250,   249,   249,   248,
+    248,   247,   247,   246,   245,   245,   244,   244,
+    243,   243,   242,   242,   241,   241,   240,   240,
+    239,   239,   238,   237,   237,   236,   236,   235,
+    235,   234,   234,   233,   233,   232,   232,   231,
+    231,   230,   230,   229,   229,   228,   227,   227,
+    226,   226,   225,   225,   224,   224,   223,   223,
+    222,   222,   221,   221,   220,   220,   219,   219,
+    218,   218,   217,   217,   216,   215,   215,   214,
+    214,   213,   213,   212,   212,   211,   211,   210,
+    210,   209,   209,   208,   208,   207,   207,   206,
+    206,   205,   205,   204,   204,   203,   203,   202,
+    202,   201,   201,   200,   200,   199,   199,   198,
+    198,   197,   197,   196,   196,   195,   195,   194,
+    194,   193,   193,   192,   192,   191,   191,   190,
+    190,   189,   189,   188,   188,   187,   187,   186,
+    186,   185,   185,   184,   184,   183,   183,   182,
+    182,   181,   181,   180,   180,   179,   179,   178,
+    178,   177,   177,   176,   176,   175,   175,   174,
+    174,   174,   173,   173,   172,   172,   171,   171,
+    170,   170,   169,   169,   168,   168,   167,   167,
+    166,   166,   165,   165,   165,   164,   164,   163,
+    163,   162,   162,   161,   161,   160,   160,   159,
+    159,   159,   158,   158,   157,   157,   156,   156,
+    155,   155,   154,   154,   153,   153,   153,   152,
+    152,   151,   151,   150,   150,   149,   149,   149,
+    148,   148,   147,   147,   146,   146,   145,   145,
+    145,   144,   144,   143,   143,   142,   142,   141,
+    141,   141,   140,   140,   139,   139,   138,   138,
+    138,   137,   137,   136,   136,   135,   135,   135,
+    134,   134,   133,   133,   132,   132,   132,   131,
+    131,   130,   130,   130,   129,   129,   128,   128,
+    127,   127,   127,   126,   126,   125,   125,   125,
+    124,   124,   123,   123,   123,   122,   122,   121,
+    121,   121,   120,   120,   119,   119,   119,   118,
+    118,   117,   117,   117,   116,   116,   115,   115,
+    115,   114,   114,   113,   113,   113,   112,   112,
+    112,   111,   111,   110,   110,   110,   109,   109,
+    108,   108,   108,   107,   107,   107,   106,   106,
+    105,   105,   105,   104,   104,   104,   103,   103,
+    103,   102,   102,   101,   101,   101,   100,   100,
+    100,    99,    99,    99,    98,    98,    97,    97,
+     97,    96,    96,    96,    95,    95,    95,    94,
+     94,    94,    93,    93,    93,    92,    92,    92,
+     91,    91,    90,    90,    90,    89,    89,    89,
+     88,    88,    88,    87,    87,    87,    86,    86,
+     86,    85,    85,    85,    85,    84,    84,    84,
+     83,    83,    83,    82,    82,    82,    81,    81,
+     81,    80,    80,    80,    79,    79,    79,    78,
+     78,    78,    77,    77,    77,    77,    76,    76,
+     76,    75,    75,    75,    74,    74,    74,    74,
+     73,    73,    73,    72,    72,    72,    71,    71,
+     71,    71,    70,    70,    70,    69,    69,    69,
+     69,    68,    68,    68,    67,    67,    67,    67,
+     66,    66,    66,    65,    65,    65,    65,    64,
+     64,    64,    63,    63,    63,    63,    62,    62,
+     62,    62,    61,    61,    61,    60,    60,    60,
+     60,    59,    59,    59,    59,    58,    58,    58,
+     58,    57,    57,    57,    57,    56,    56,    56,
+     56,    55,    55,    55,    55,    54,    54,    54,
+     54,    53,    53,    53,    53,    52,    52,    52,
+     52,    51,    51,    51,    51,    50,    50,    50,
+     50,    50,    49,    49,    49,    49,    48,    48,
+     48,    48,    47,    47,    47,    47,    46,    46,
+     46,    46,    46,    45,    45,    45,    45,    44,
+     44,    44,    44,    44,    43,    43,    43,    43,
+     43,    42,    42,    42,    42,    42,    41,    41,
+     41,    41,    40,    40,    40,    40,    40,    39,
+     39,    39,    39,    39,    38,    38,    38,    38,
+     38,    37,    37,    37,    37,    37,    37,    36,
+     36,    36,    36,    36,    35,    35,    35,    35,
+     35,    34,    34,    34,    34,    34,    33,    33,
+     33,    33,    33,    33,    32,    32,    32,    32,
+     32,    32,    31,    31,    31,    31,    31,    31,
+     30,    30,    30,    30,    30,    29,    29,    29,
+     29,    29,    29,    28,    28,    28,    28,    28,
+     28,    27,    27,    27,    27,    27,    27,    27,
+     26,    26,    26,    26,    26,    26,    26,    25,
+     25,    25,    25,    25,    25,    24,    24,    24,
+     24,    24,    24,    23,    23,    23,    23,    23,
+     23,    23,    22,    22,    22,    22,    22,    22,
+     22,    22,    21,    21,    21,    21,    21,    21,
+     21,    21,    20,    20,    20,    20,    20,    20,
+     20,    19,    19,    19,    19,    19,    19,    19,
+     18,    18,    18,    18,    18,    18,    18,    18,
+     18,    17,    17,    17,    17,    17,    17,    17,
+     17,    17,    17,    16,    16,    16,    16,    16,
+     16,    16,    15,    15,    15,    15,    15,    15,
+     15,    15,    14,    14,    14,    14,    14,    14,
+     14,    14,    14,    14,    14,    14,    14,    14,
+     13,    13,    13,    13,    13,    13,    13,    13,
+     12,    12,    12,    12,    12,    12,    11,    11,
+     11,    11,    11,    11,    11,    11,    11,    11,
+     11,    11,    11,    11,    11,    11,    11,    11,
+     11,    11,    11,    11,    10,    10,    10,    10,
+      9,     9,     9,     8,     8,     8,     7,     7,
+      7,     7,     7,     7,     7,     7,     8,     8,
+      9,     9,    10,    11,    12,    14,    15,    17,
+     18,    20,    21,    23,    25,    26,    28,    29,
+     31,    32,    33,    34,    35,    35,    36,    36,
+};
+
+
+BandPass::BandPass()
+{
+  // This is the square of the bandpass, since the correlator multiplies two
+  // bandpasses.  The following matlab functions are used:
+
+  // f=fftshift(fft(Coeffs16384Kaiser-quant,262144))
+  // m=f(131073-128:131073+127)
+  // r=f(131073-128+256:131073+127+256)
+  // l=f(131073-128-256:131073+127-256)
+  // plot(2^50./((abs(m).^2+abs(l).^2+abs(r).^2)./2.^50))
+
+  // it is not worth to use the more complex R2C FFTW method
+  std::vector<fcomplex, AlignedStdAllocator<fcomplex, 16> > in(262144, 0.0), out(262144);
+
+  for (unsigned i = 0; i < 16384; i ++)
+    in[i] = stationFilterConstants[i];
+
+#if defined HAVE_FFTW3
+  fftwf_plan plan = fftwf_plan_dft_1d(262144, reinterpret_cast<fftwf_complex *>(&in[0]), reinterpret_cast<fftwf_complex *>(&out[0]), FFTW_FORWARD, FFTW_ESTIMATE);
+  fftwf_execute(plan);
+  fftwf_destroy_plan(plan);
+#elif defined HAVE_FFTW2
+  fftw_plan plan = fftw_create_plan(262144, FFTW_FORWARD, FFTW_ESTIMATE);
+  fftw_one(plan, reinterpret_cast<fftw_complex *>(&in[0]), reinterpret_cast<fftw_complex *>(&out[0]));
+  fftw_destroy_plan(plan);
+#else
+#error need FFTW2 or FFTW3
+#endif
+
+  factors = new float[NR_SUBBAND_CHANNELS];
+
+  for (unsigned i = 0; i < NR_SUBBAND_CHANNELS; i ++) {
+    fcomplex m = out[(i - NR_SUBBAND_CHANNELS / 2) % 262144U];
+    fcomplex l = out[(i - 3 * NR_SUBBAND_CHANNELS / 2) % 262144U];
+    fcomplex r = out[i + NR_SUBBAND_CHANNELS / 2];
+
+    factors[i] = pow(2, 50) / abs(m * m + l * l + r * r);
+  }
+}
+
+
+BandPass::~BandPass()
+{
+  delete [] factors;
+}
+
+} // namespace CS1
+} // namespace LOFAR
+
+
+#if 0
+int main()
+{
+  LOFAR::CS1::BandPass bandpass;
+  const float *f = bandpass.correctionFactors();
+
+  for (unsigned i = 0; i < NR_SUBBAND_CHANNELS; i ++)
+    std::clog << i << ' ' << f[i] << std::endl;
+
+  return 0;
+}
+#endif
diff --git a/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.h b/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.h
new file mode 100644
index 0000000000000000000000000000000000000000..4702634040d148a175d5839c99bc8caff5623f61
--- /dev/null
+++ b/Appl/CEP/CS1/CS1_BGLProc/src/BandPass.h
@@ -0,0 +1,30 @@
+#ifndef LOFAR_APPL_CEP_CS1_CS1_BGL_PROC_BANDPASS_H
+#define LOFAR_APPL_CEP_CS1_CS1_BGL_PROC_BANDPASS_H
+
+
+namespace LOFAR {
+namespace CS1 {
+
+class BandPass {
+  public:
+			BandPass();
+			~BandPass();
+
+    const float		*correctionFactors() const;
+
+  private:
+    static const float	stationFilterConstants[65536];
+    
+    float		*factors;
+};
+
+
+inline const float *BandPass::correctionFactors() const
+{
+  return factors;
+}
+
+} // namespace CS1
+} // namespace LOFAR
+
+#endif