diff --git a/stereo_mix/makefile b/stereo_mix/makefile index 42a8280..571f399 100644 --- a/stereo_mix/makefile +++ b/stereo_mix/makefile @@ -32,7 +32,7 @@ FAMILY = f0xx #APPLICATION = true #BOOTLOADER = midi2cv_bootloader OPTIMIZE = TRUE -OPTIMIZE_FLAG = 1 +OPTIMIZE_FLAG = 2 # Preferred upload command UPLOAD_COMMAND = upload_jtag diff --git a/stereo_mix/processor.cc b/stereo_mix/processor.cc index b671c2d..6a8d686 100644 --- a/stereo_mix/processor.cc +++ b/stereo_mix/processor.cc @@ -18,6 +18,8 @@ void Processor::Process(int16_t cvs[], uint16_t* outs) int16_t pan_cv = cvs[0] >> (16 - 12); int16_t vol_cv = cvs[1] >> (16 - 12); int32_t pan = pan_pot + pan_cv; + + // calculate value for ui int32_t lin = volume_offset + (cvs[1] * 2); CONSTRAIN(lin, 0, 65535); lin *= !mute; @@ -27,18 +29,18 @@ void Processor::Process(int16_t cvs[], uint16_t* outs) uint16_t vol_pot_log = 65535 - lut_linear_to_exp[LUT_LINEAR_TO_EXP_SIZE - 1 - vol_pot]; vol_pot = Mix(vol_pot_exp, vol_pot_log, log_exp_mix_pot); + vol_pot = vol_pot_exp; + int32_t vol = vol_pot; - uint16_t vol_cv_absu16 = abs(vol_cv) << 1; + uint16_t vol_cv_absu16 = abs(vol_cv); uint16_t vol_cv_exp = lut_linear_to_exp[vol_cv_absu16]; uint16_t vol_cv_log = 65535 - lut_linear_to_exp[LUT_LINEAR_TO_EXP_SIZE - 1 - vol_cv_absu16]; uint16_t vol_cv_pre = Mix(vol_cv_exp, vol_cv_log, log_exp_mix_cv); - int32_t vol = vol_pot; vol += vol_cv > 0 ? vol_cv_pre : -vol_cv_pre; - vol *= !mute; - CONSTRAIN(pan, 0, (1 << 16) - 1); - CONSTRAIN(vol, 0, (1 << 16) - 1); + CONSTRAIN(pan, 0, 4095); + CONSTRAIN(vol, 0, 65535); previous_vol = vol; diff --git a/stereo_mix/resources.cc b/stereo_mix/resources.cc index 5c655b1..1b2a7db 100644 --- a/stereo_mix/resources.cc +++ b/stereo_mix/resources.cc @@ -1061,2056 +1061,2056 @@ const uint16_t lut_linear_to_exp[] = { 65439, 65471, 65502, 65535, }; const uint16_t lut_left_sin_pan[] = { - 0, 25, 50, 75, - 101, 126, 151, 176, - 201, 226, 251, 277, - 302, 327, 352, 377, - 402, 427, 452, 478, - 503, 528, 553, 578, - 603, 628, 654, 679, - 704, 729, 754, 779, - 804, 830, 855, 880, - 905, 930, 955, 980, - 1006, 1031, 1056, 1081, - 1106, 1131, 1156, 1181, - 1207, 1232, 1257, 1282, - 1307, 1332, 1357, 1383, - 1408, 1433, 1458, 1483, - 1508, 1533, 1558, 1584, - 1609, 1634, 1659, 1684, - 1709, 1734, 1759, 1785, - 1810, 1835, 1860, 1885, - 1910, 1935, 1961, 1986, - 2011, 2036, 2061, 2086, - 2111, 2136, 2162, 2187, - 2212, 2237, 2262, 2287, - 2312, 2337, 2363, 2388, - 2413, 2438, 2463, 2488, - 2513, 2538, 2563, 2589, - 2614, 2639, 2664, 2689, - 2714, 2739, 2764, 2790, - 2815, 2840, 2865, 2890, - 2915, 2940, 2965, 2990, - 3016, 3041, 3066, 3091, - 3116, 3141, 3166, 3191, - 3216, 3242, 3267, 3292, - 3317, 3342, 3367, 3392, - 3417, 3442, 3467, 3493, - 3518, 3543, 3568, 3593, - 3618, 3643, 3668, 3693, - 3718, 3744, 3769, 3794, - 3819, 3844, 3869, 3894, - 3919, 3944, 3969, 3995, - 4020, 4045, 4070, 4095, - 4120, 4145, 4170, 4195, - 4220, 4245, 4271, 4296, - 4321, 4346, 4371, 4396, - 4421, 4446, 4471, 4496, - 4521, 4546, 4571, 4597, - 4622, 4647, 4672, 4697, - 4722, 4747, 4772, 4797, - 4822, 4847, 4872, 4897, - 4923, 4948, 4973, 4998, - 5023, 5048, 5073, 5098, - 5123, 5148, 5173, 5198, - 5223, 5248, 5273, 5298, - 5323, 5349, 5374, 5399, - 5424, 5449, 5474, 5499, - 5524, 5549, 5574, 5599, - 5624, 5649, 5674, 5699, - 5724, 5749, 5774, 5799, - 5824, 5849, 5875, 5900, - 5925, 5950, 5975, 6000, - 6025, 6050, 6075, 6100, - 6125, 6150, 6175, 6200, - 6225, 6250, 6275, 6300, - 6325, 6350, 6375, 6400, - 6425, 6450, 6475, 6500, - 6525, 6550, 6575, 6600, - 6625, 6650, 6675, 6700, - 6725, 6750, 6775, 6800, - 6825, 6850, 6875, 6900, - 6925, 6950, 6975, 7000, - 7025, 7050, 7075, 7100, - 7125, 7150, 7175, 7200, - 7225, 7250, 7275, 7300, - 7325, 7350, 7375, 7400, - 7425, 7450, 7475, 7500, - 7525, 7550, 7575, 7600, - 7625, 7650, 7675, 7700, - 7725, 7750, 7775, 7800, - 7825, 7849, 7874, 7899, - 7924, 7949, 7974, 7999, - 8024, 8049, 8074, 8099, - 8124, 8149, 8174, 8199, - 8224, 8249, 8274, 8299, - 8323, 8348, 8373, 8398, - 8423, 8448, 8473, 8498, - 8523, 8548, 8573, 8598, - 8623, 8647, 8672, 8697, - 8722, 8747, 8772, 8797, - 8822, 8847, 8872, 8897, - 8922, 8946, 8971, 8996, - 9021, 9046, 9071, 9096, - 9121, 9146, 9170, 9195, - 9220, 9245, 9270, 9295, - 9320, 9345, 9370, 9394, - 9419, 9444, 9469, 9494, - 9519, 9544, 9569, 9593, - 9618, 9643, 9668, 9693, - 9718, 9743, 9767, 9792, - 9817, 9842, 9867, 9892, - 9917, 9941, 9966, 9991, - 10016, 10041, 10066, 10091, - 10115, 10140, 10165, 10190, - 10215, 10240, 10264, 10289, - 10314, 10339, 10364, 10388, - 10413, 10438, 10463, 10488, - 10513, 10537, 10562, 10587, - 10612, 10637, 10661, 10686, - 10711, 10736, 10761, 10785, - 10810, 10835, 10860, 10885, - 10909, 10934, 10959, 10984, - 11008, 11033, 11058, 11083, - 11108, 11132, 11157, 11182, - 11207, 11231, 11256, 11281, - 11306, 11331, 11355, 11380, - 11405, 11430, 11454, 11479, - 11504, 11529, 11553, 11578, - 11603, 11628, 11652, 11677, - 11702, 11726, 11751, 11776, - 11801, 11825, 11850, 11875, - 11900, 11924, 11949, 11974, - 11998, 12023, 12048, 12073, - 12097, 12122, 12147, 12171, - 12196, 12221, 12245, 12270, - 12295, 12320, 12344, 12369, - 12394, 12418, 12443, 12468, - 12492, 12517, 12542, 12566, - 12591, 12616, 12640, 12665, - 12690, 12714, 12739, 12764, - 12788, 12813, 12838, 12862, - 12887, 12912, 12936, 12961, - 12986, 13010, 13035, 13059, - 13084, 13109, 13133, 13158, - 13183, 13207, 13232, 13256, - 13281, 13306, 13330, 13355, - 13380, 13404, 13429, 13453, - 13478, 13503, 13527, 13552, - 13576, 13601, 13625, 13650, - 13675, 13699, 13724, 13748, - 13773, 13798, 13822, 13847, - 13871, 13896, 13920, 13945, - 13970, 13994, 14019, 14043, - 14068, 14092, 14117, 14141, - 14166, 14191, 14215, 14240, - 14264, 14289, 14313, 14338, - 14362, 14387, 14411, 14436, - 14460, 14485, 14509, 14534, - 14558, 14583, 14607, 14632, - 14656, 14681, 14705, 14730, - 14754, 14779, 14803, 14828, - 14852, 14877, 14901, 14926, - 14950, 14975, 14999, 15024, - 15048, 15073, 15097, 15122, - 15146, 15170, 15195, 15219, - 15244, 15268, 15293, 15317, - 15342, 15366, 15390, 15415, - 15439, 15464, 15488, 15513, - 15537, 15561, 15586, 15610, - 15635, 15659, 15684, 15708, - 15732, 15757, 15781, 15806, - 15830, 15854, 15879, 15903, - 15928, 15952, 15976, 16001, - 16025, 16049, 16074, 16098, - 16123, 16147, 16171, 16196, - 16220, 16244, 16269, 16293, - 16317, 16342, 16366, 16390, - 16415, 16439, 16463, 16488, - 16512, 16536, 16561, 16585, - 16609, 16634, 16658, 16682, - 16707, 16731, 16755, 16780, - 16804, 16828, 16852, 16877, - 16901, 16925, 16950, 16974, - 16998, 17022, 17047, 17071, - 17095, 17119, 17144, 17168, - 17192, 17217, 17241, 17265, - 17289, 17314, 17338, 17362, - 17386, 17410, 17435, 17459, - 17483, 17507, 17532, 17556, - 17580, 17604, 17629, 17653, - 17677, 17701, 17725, 17750, - 17774, 17798, 17822, 17846, - 17870, 17895, 17919, 17943, - 17967, 17991, 18016, 18040, - 18064, 18088, 18112, 18136, - 18161, 18185, 18209, 18233, - 18257, 18281, 18305, 18330, - 18354, 18378, 18402, 18426, - 18450, 18474, 18498, 18523, - 18547, 18571, 18595, 18619, - 18643, 18667, 18691, 18715, - 18739, 18764, 18788, 18812, - 18836, 18860, 18884, 18908, - 18932, 18956, 18980, 19004, - 19028, 19052, 19076, 19100, - 19125, 19149, 19173, 19197, - 19221, 19245, 19269, 19293, - 19317, 19341, 19365, 19389, - 19413, 19437, 19461, 19485, - 19509, 19533, 19557, 19581, - 19605, 19629, 19653, 19677, - 19701, 19725, 19749, 19773, - 19797, 19821, 19845, 19869, - 19892, 19916, 19940, 19964, - 19988, 20012, 20036, 20060, - 20084, 20108, 20132, 20156, - 20180, 20204, 20228, 20251, - 20275, 20299, 20323, 20347, - 20371, 20395, 20419, 20443, - 20466, 20490, 20514, 20538, - 20562, 20586, 20610, 20634, - 20657, 20681, 20705, 20729, - 20753, 20777, 20801, 20824, - 20848, 20872, 20896, 20920, - 20943, 20967, 20991, 21015, - 21039, 21063, 21086, 21110, - 21134, 21158, 21182, 21205, - 21229, 21253, 21277, 21300, - 21324, 21348, 21372, 21396, - 21419, 21443, 21467, 21491, - 21514, 21538, 21562, 21586, - 21609, 21633, 21657, 21680, - 21704, 21728, 21752, 21775, - 21799, 21823, 21846, 21870, - 21894, 21917, 21941, 21965, - 21989, 22012, 22036, 22060, - 22083, 22107, 22131, 22154, - 22178, 22202, 22225, 22249, - 22272, 22296, 22320, 22343, - 22367, 22391, 22414, 22438, - 22462, 22485, 22509, 22532, - 22556, 22580, 22603, 22627, - 22650, 22674, 22698, 22721, - 22745, 22768, 22792, 22815, - 22839, 22863, 22886, 22910, - 22933, 22957, 22980, 23004, - 23027, 23051, 23074, 23098, - 23121, 23145, 23169, 23192, - 23216, 23239, 23263, 23286, - 23310, 23333, 23357, 23380, - 23403, 23427, 23450, 23474, - 23497, 23521, 23544, 23568, - 23591, 23615, 23638, 23662, - 23685, 23708, 23732, 23755, - 23779, 23802, 23826, 23849, - 23872, 23896, 23919, 23943, - 23966, 23989, 24013, 24036, - 24060, 24083, 24106, 24130, - 24153, 24176, 24200, 24223, - 24247, 24270, 24293, 24317, - 24340, 24363, 24387, 24410, - 24433, 24457, 24480, 24503, - 24527, 24550, 24573, 24596, - 24620, 24643, 24666, 24690, - 24713, 24736, 24759, 24783, - 24806, 24829, 24853, 24876, - 24899, 24922, 24946, 24969, - 24992, 25015, 25039, 25062, - 25085, 25108, 25131, 25155, - 25178, 25201, 25224, 25247, - 25271, 25294, 25317, 25340, - 25363, 25387, 25410, 25433, - 25456, 25479, 25502, 25526, - 25549, 25572, 25595, 25618, - 25641, 25664, 25688, 25711, - 25734, 25757, 25780, 25803, - 25826, 25849, 25872, 25896, - 25919, 25942, 25965, 25988, - 26011, 26034, 26057, 26080, - 26103, 26126, 26149, 26172, - 26195, 26218, 26241, 26265, - 26288, 26311, 26334, 26357, - 26380, 26403, 26426, 26449, - 26472, 26495, 26518, 26541, - 26564, 26587, 26610, 26633, - 26655, 26678, 26701, 26724, - 26747, 26770, 26793, 26816, - 26839, 26862, 26885, 26908, - 26931, 26954, 26977, 27000, - 27022, 27045, 27068, 27091, - 27114, 27137, 27160, 27183, - 27206, 27228, 27251, 27274, - 27297, 27320, 27343, 27366, - 27388, 27411, 27434, 27457, - 27480, 27502, 27525, 27548, - 27571, 27594, 27617, 27639, - 27662, 27685, 27708, 27730, - 27753, 27776, 27799, 27822, - 27844, 27867, 27890, 27913, - 27935, 27958, 27981, 28003, - 28026, 28049, 28072, 28094, - 28117, 28140, 28162, 28185, - 28208, 28231, 28253, 28276, - 28299, 28321, 28344, 28367, - 28389, 28412, 28435, 28457, - 28480, 28502, 28525, 28548, - 28570, 28593, 28616, 28638, - 28661, 28683, 28706, 28729, - 28751, 28774, 28796, 28819, - 28842, 28864, 28887, 28909, - 28932, 28954, 28977, 28999, - 29022, 29045, 29067, 29090, - 29112, 29135, 29157, 29180, - 29202, 29225, 29247, 29270, - 29292, 29315, 29337, 29360, - 29382, 29405, 29427, 29449, - 29472, 29494, 29517, 29539, - 29562, 29584, 29607, 29629, - 29651, 29674, 29696, 29719, - 29741, 29763, 29786, 29808, - 29831, 29853, 29875, 29898, - 29920, 29942, 29965, 29987, - 30010, 30032, 30054, 30077, - 30099, 30121, 30144, 30166, - 30188, 30211, 30233, 30255, - 30277, 30300, 30322, 30344, - 30367, 30389, 30411, 30433, - 30456, 30478, 30500, 30522, - 30545, 30567, 30589, 30611, - 30634, 30656, 30678, 30700, - 30722, 30745, 30767, 30789, - 30811, 30833, 30856, 30878, - 30900, 30922, 30944, 30966, - 30989, 31011, 31033, 31055, - 31077, 31099, 31121, 31143, - 31166, 31188, 31210, 31232, - 31254, 31276, 31298, 31320, - 31342, 31364, 31387, 31409, - 31431, 31453, 31475, 31497, - 31519, 31541, 31563, 31585, - 31607, 31629, 31651, 31673, - 31695, 31717, 31739, 31761, - 31783, 31805, 31827, 31849, - 31871, 31893, 31915, 31937, - 31959, 31981, 32003, 32025, - 32046, 32068, 32090, 32112, - 32134, 32156, 32178, 32200, - 32222, 32244, 32266, 32287, - 32309, 32331, 32353, 32375, - 32397, 32419, 32440, 32462, - 32484, 32506, 32528, 32550, - 32571, 32593, 32615, 32637, - 32659, 32680, 32702, 32724, - 32746, 32767, 32789, 32811, - 32833, 32855, 32876, 32898, - 32920, 32942, 32963, 32985, - 33007, 33028, 33050, 33072, - 33094, 33115, 33137, 33159, - 33180, 33202, 33224, 33245, - 33267, 33289, 33310, 33332, - 33354, 33375, 33397, 33418, - 33440, 33462, 33483, 33505, - 33526, 33548, 33570, 33591, - 33613, 33634, 33656, 33678, - 33699, 33721, 33742, 33764, - 33785, 33807, 33828, 33850, - 33871, 33893, 33914, 33936, - 33958, 33979, 34000, 34022, - 34043, 34065, 34086, 34108, - 34129, 34151, 34172, 34194, - 34215, 34237, 34258, 34279, - 34301, 34322, 34344, 34365, - 34387, 34408, 34429, 34451, - 34472, 34493, 34515, 34536, - 34558, 34579, 34600, 34622, - 34643, 34664, 34686, 34707, - 34728, 34750, 34771, 34792, - 34813, 34835, 34856, 34877, - 34899, 34920, 34941, 34962, - 34984, 35005, 35026, 35047, - 35069, 35090, 35111, 35132, - 35154, 35175, 35196, 35217, - 35238, 35260, 35281, 35302, - 35323, 35344, 35366, 35387, - 35408, 35429, 35450, 35471, - 35492, 35514, 35535, 35556, - 35577, 35598, 35619, 35640, - 35661, 35682, 35703, 35725, - 35746, 35767, 35788, 35809, - 35830, 35851, 35872, 35893, - 35914, 35935, 35956, 35977, - 35998, 36019, 36040, 36061, - 36082, 36103, 36124, 36145, - 36166, 36187, 36208, 36229, - 36250, 36271, 36292, 36313, - 36333, 36354, 36375, 36396, - 36417, 36438, 36459, 36480, - 36501, 36522, 36542, 36563, - 36584, 36605, 36626, 36647, - 36668, 36688, 36709, 36730, - 36751, 36772, 36792, 36813, - 36834, 36855, 36876, 36896, - 36917, 36938, 36959, 36979, - 37000, 37021, 37042, 37062, - 37083, 37104, 37125, 37145, - 37166, 37187, 37207, 37228, - 37249, 37269, 37290, 37311, - 37331, 37352, 37373, 37393, - 37414, 37435, 37455, 37476, - 37497, 37517, 37538, 37558, - 37579, 37600, 37620, 37641, - 37661, 37682, 37703, 37723, - 37744, 37764, 37785, 37805, - 37826, 37846, 37867, 37887, - 37908, 37928, 37949, 37969, - 37990, 38010, 38031, 38051, - 38072, 38092, 38113, 38133, - 38154, 38174, 38194, 38215, - 38235, 38256, 38276, 38296, - 38317, 38337, 38358, 38378, - 38398, 38419, 38439, 38459, - 38480, 38500, 38521, 38541, - 38561, 38581, 38602, 38622, - 38642, 38663, 38683, 38703, - 38724, 38744, 38764, 38784, - 38805, 38825, 38845, 38865, - 38886, 38906, 38926, 38946, - 38967, 38987, 39007, 39027, - 39047, 39068, 39088, 39108, - 39128, 39148, 39168, 39189, - 39209, 39229, 39249, 39269, - 39289, 39309, 39329, 39350, - 39370, 39390, 39410, 39430, - 39450, 39470, 39490, 39510, - 39530, 39550, 39570, 39590, - 39610, 39630, 39650, 39670, - 39690, 39710, 39730, 39750, - 39770, 39790, 39810, 39830, - 39850, 39870, 39890, 39910, - 39930, 39950, 39970, 39990, - 40010, 40030, 40050, 40069, - 40089, 40109, 40129, 40149, - 40169, 40189, 40209, 40228, - 40248, 40268, 40288, 40308, - 40328, 40347, 40367, 40387, - 40407, 40427, 40446, 40466, - 40486, 40506, 40525, 40545, - 40565, 40585, 40604, 40624, - 40644, 40664, 40683, 40703, - 40723, 40742, 40762, 40782, - 40801, 40821, 40841, 40860, - 40880, 40900, 40919, 40939, - 40959, 40978, 40998, 41017, - 41037, 41057, 41076, 41096, - 41115, 41135, 41155, 41174, - 41194, 41213, 41233, 41252, - 41272, 41291, 41311, 41330, - 41350, 41369, 41389, 41408, - 41428, 41447, 41467, 41486, - 41506, 41525, 41545, 41564, - 41583, 41603, 41622, 41642, - 41661, 41681, 41700, 41719, - 41739, 41758, 41777, 41797, - 41816, 41836, 41855, 41874, - 41894, 41913, 41932, 41952, - 41971, 41990, 42009, 42029, - 42048, 42067, 42087, 42106, - 42125, 42144, 42164, 42183, - 42202, 42221, 42241, 42260, - 42279, 42298, 42317, 42337, - 42356, 42375, 42394, 42413, - 42432, 42452, 42471, 42490, - 42509, 42528, 42547, 42566, - 42585, 42605, 42624, 42643, - 42662, 42681, 42700, 42719, - 42738, 42757, 42776, 42795, - 42814, 42833, 42852, 42871, - 42890, 42909, 42928, 42947, - 42966, 42985, 43004, 43023, - 43042, 43061, 43080, 43099, - 43118, 43137, 43156, 43175, - 43194, 43213, 43231, 43250, - 43269, 43288, 43307, 43326, - 43345, 43364, 43382, 43401, - 43420, 43439, 43458, 43477, - 43495, 43514, 43533, 43552, - 43571, 43589, 43608, 43627, - 43646, 43664, 43683, 43702, - 43721, 43739, 43758, 43777, - 43795, 43814, 43833, 43851, - 43870, 43889, 43907, 43926, - 43945, 43963, 43982, 44001, - 44019, 44038, 44057, 44075, - 44094, 44112, 44131, 44150, - 44168, 44187, 44205, 44224, - 44242, 44261, 44279, 44298, - 44316, 44335, 44354, 44372, - 44391, 44409, 44427, 44446, - 44464, 44483, 44501, 44520, - 44538, 44557, 44575, 44594, - 44612, 44630, 44649, 44667, - 44686, 44704, 44722, 44741, - 44759, 44777, 44796, 44814, - 44832, 44851, 44869, 44887, - 44906, 44924, 44942, 44961, - 44979, 44997, 45015, 45034, - 45052, 45070, 45089, 45107, - 45125, 45143, 45161, 45180, - 45198, 45216, 45234, 45252, - 45271, 45289, 45307, 45325, - 45343, 45361, 45380, 45398, - 45416, 45434, 45452, 45470, - 45488, 45506, 45524, 45543, - 45561, 45579, 45597, 45615, - 45633, 45651, 45669, 45687, - 45705, 45723, 45741, 45759, - 45777, 45795, 45813, 45831, - 45849, 45867, 45885, 45903, - 45921, 45939, 45956, 45974, - 45992, 46010, 46028, 46046, - 46064, 46082, 46100, 46118, - 46135, 46153, 46171, 46189, - 46207, 46225, 46242, 46260, - 46278, 46296, 46314, 46331, - 46349, 46367, 46385, 46402, - 46420, 46438, 46456, 46473, - 46491, 46509, 46527, 46544, - 46562, 46580, 46597, 46615, - 46633, 46650, 46668, 46686, - 46703, 46721, 46738, 46756, - 46774, 46791, 46809, 46826, - 46844, 46862, 46879, 46897, - 46914, 46932, 46949, 46967, - 46984, 47002, 47020, 47037, - 47055, 47072, 47090, 47107, - 47124, 47142, 47159, 47177, - 47194, 47212, 47229, 47247, - 47264, 47281, 47299, 47316, - 47334, 47351, 47368, 47386, - 47403, 47420, 47438, 47455, - 47472, 47490, 47507, 47524, - 47542, 47559, 47576, 47594, - 47611, 47628, 47645, 47663, - 47680, 47697, 47714, 47732, - 47749, 47766, 47783, 47800, - 47818, 47835, 47852, 47869, - 47886, 47904, 47921, 47938, - 47955, 47972, 47989, 48006, - 48023, 48041, 48058, 48075, - 48092, 48109, 48126, 48143, - 48160, 48177, 48194, 48211, - 48228, 48245, 48262, 48279, - 48296, 48313, 48330, 48347, - 48364, 48381, 48398, 48415, - 48432, 48449, 48466, 48483, - 48500, 48517, 48533, 48550, - 48567, 48584, 48601, 48618, - 48635, 48652, 48668, 48685, - 48702, 48719, 48736, 48752, - 48769, 48786, 48803, 48820, - 48836, 48853, 48870, 48887, - 48903, 48920, 48937, 48954, - 48970, 48987, 49004, 49020, - 49037, 49054, 49070, 49087, - 49104, 49120, 49137, 49154, - 49170, 49187, 49203, 49220, - 49237, 49253, 49270, 49286, - 49303, 49319, 49336, 49353, - 49369, 49386, 49402, 49419, - 49435, 49452, 49468, 49485, - 49501, 49518, 49534, 49550, - 49567, 49583, 49600, 49616, - 49633, 49649, 49665, 49682, - 49698, 49715, 49731, 49747, - 49764, 49780, 49796, 49813, - 49829, 49845, 49862, 49878, - 49894, 49911, 49927, 49943, - 49960, 49976, 49992, 50008, - 50025, 50041, 50057, 50073, - 50089, 50106, 50122, 50138, - 50154, 50170, 50187, 50203, - 50219, 50235, 50251, 50267, - 50283, 50300, 50316, 50332, - 50348, 50364, 50380, 50396, - 50412, 50428, 50444, 50460, - 50476, 50492, 50508, 50524, - 50540, 50556, 50572, 50588, - 50604, 50620, 50636, 50652, - 50668, 50684, 50700, 50716, - 50732, 50748, 50764, 50780, - 50796, 50811, 50827, 50843, - 50859, 50875, 50891, 50907, - 50922, 50938, 50954, 50970, - 50986, 51001, 51017, 51033, - 51049, 51064, 51080, 51096, - 51112, 51127, 51143, 51159, - 51175, 51190, 51206, 51222, - 51237, 51253, 51269, 51284, - 51300, 51316, 51331, 51347, - 51362, 51378, 51394, 51409, - 51425, 51440, 51456, 51472, - 51487, 51503, 51518, 51534, - 51549, 51565, 51580, 51596, - 51611, 51627, 51642, 51658, - 51673, 51689, 51704, 51720, - 51735, 51750, 51766, 51781, - 51797, 51812, 51827, 51843, - 51858, 51874, 51889, 51904, - 51920, 51935, 51950, 51966, - 51981, 51996, 52012, 52027, - 52042, 52057, 52073, 52088, - 52103, 52118, 52134, 52149, - 52164, 52179, 52195, 52210, - 52225, 52240, 52255, 52270, - 52286, 52301, 52316, 52331, - 52346, 52361, 52376, 52391, - 52407, 52422, 52437, 52452, - 52467, 52482, 52497, 52512, - 52527, 52542, 52557, 52572, - 52587, 52602, 52617, 52632, - 52647, 52662, 52677, 52692, - 52707, 52722, 52737, 52752, - 52767, 52782, 52796, 52811, - 52826, 52841, 52856, 52871, - 52886, 52900, 52915, 52930, - 52945, 52960, 52975, 52989, - 53004, 53019, 53034, 53048, - 53063, 53078, 53093, 53107, - 53122, 53137, 53152, 53166, - 53181, 53196, 53210, 53225, - 53240, 53254, 53269, 53284, - 53298, 53313, 53328, 53342, - 53357, 53371, 53386, 53400, - 53415, 53430, 53444, 53459, - 53473, 53488, 53502, 53517, - 53531, 53546, 53560, 53575, - 53589, 53604, 53618, 53633, - 53647, 53661, 53676, 53690, - 53705, 53719, 53734, 53748, - 53762, 53777, 53791, 53805, - 53820, 53834, 53848, 53863, - 53877, 53891, 53906, 53920, - 53934, 53949, 53963, 53977, - 53991, 54006, 54020, 54034, - 54048, 54062, 54077, 54091, - 54105, 54119, 54133, 54148, - 54162, 54176, 54190, 54204, - 54218, 54232, 54246, 54261, - 54275, 54289, 54303, 54317, - 54331, 54345, 54359, 54373, - 54387, 54401, 54415, 54429, - 54443, 54457, 54471, 54485, - 54499, 54513, 54527, 54541, - 54555, 54569, 54583, 54597, - 54611, 54624, 54638, 54652, - 54666, 54680, 54694, 54708, - 54721, 54735, 54749, 54763, - 54777, 54791, 54804, 54818, - 54832, 54846, 54859, 54873, - 54887, 54901, 54914, 54928, - 54942, 54955, 54969, 54983, - 54996, 55010, 55024, 55037, - 55051, 55065, 55078, 55092, - 55106, 55119, 55133, 55146, - 55160, 55174, 55187, 55201, - 55214, 55228, 55241, 55255, - 55268, 55282, 55295, 55309, - 55322, 55336, 55349, 55363, - 55376, 55390, 55403, 55416, - 55430, 55443, 55457, 55470, - 55483, 55497, 55510, 55523, - 55537, 55550, 55564, 55577, - 55590, 55603, 55617, 55630, - 55643, 55657, 55670, 55683, - 55696, 55710, 55723, 55736, - 55749, 55763, 55776, 55789, - 55802, 55815, 55828, 55842, - 55855, 55868, 55881, 55894, - 55907, 55920, 55934, 55947, - 55960, 55973, 55986, 55999, - 56012, 56025, 56038, 56051, - 56064, 56077, 56090, 56103, - 56116, 56129, 56142, 56155, - 56168, 56181, 56194, 56207, - 56220, 56233, 56246, 56258, - 56271, 56284, 56297, 56310, - 56323, 56336, 56348, 56361, - 56374, 56387, 56400, 56413, - 56425, 56438, 56451, 56464, - 56476, 56489, 56502, 56515, - 56527, 56540, 56553, 56565, - 56578, 56591, 56604, 56616, - 56629, 56642, 56654, 56667, - 56679, 56692, 56705, 56717, - 56730, 56742, 56755, 56768, - 56780, 56793, 56805, 56818, - 56830, 56843, 56855, 56868, - 56880, 56893, 56905, 56918, - 56930, 56943, 56955, 56967, - 56980, 56992, 57005, 57017, - 57029, 57042, 57054, 57067, - 57079, 57091, 57104, 57116, - 57128, 57141, 57153, 57165, - 57177, 57190, 57202, 57214, - 57227, 57239, 57251, 57263, - 57275, 57288, 57300, 57312, - 57324, 57336, 57349, 57361, - 57373, 57385, 57397, 57409, - 57421, 57434, 57446, 57458, - 57470, 57482, 57494, 57506, - 57518, 57530, 57542, 57554, - 57566, 57578, 57590, 57602, - 57614, 57626, 57638, 57650, - 57662, 57674, 57686, 57698, - 57710, 57722, 57734, 57746, - 57757, 57769, 57781, 57793, - 57805, 57817, 57829, 57840, - 57852, 57864, 57876, 57888, - 57899, 57911, 57923, 57935, - 57946, 57958, 57970, 57982, - 57993, 58005, 58017, 58028, - 58040, 58052, 58063, 58075, - 58087, 58098, 58110, 58122, - 58133, 58145, 58156, 58168, - 58180, 58191, 58203, 58214, - 58226, 58237, 58249, 58260, - 58272, 58283, 58295, 58306, - 58318, 58329, 58341, 58352, - 58364, 58375, 58386, 58398, - 58409, 58421, 58432, 58443, - 58455, 58466, 58477, 58489, - 58500, 58511, 58523, 58534, - 58545, 58557, 58568, 58579, - 58591, 58602, 58613, 58624, - 58635, 58647, 58658, 58669, - 58680, 58692, 58703, 58714, - 58725, 58736, 58747, 58758, - 58770, 58781, 58792, 58803, - 58814, 58825, 58836, 58847, - 58858, 58869, 58880, 58891, - 58902, 58913, 58924, 58935, - 58946, 58957, 58968, 58979, - 58990, 59001, 59012, 59023, - 59034, 59045, 59056, 59067, - 59078, 59089, 59099, 59110, - 59121, 59132, 59143, 59154, - 59164, 59175, 59186, 59197, - 59208, 59218, 59229, 59240, - 59251, 59261, 59272, 59283, - 59294, 59304, 59315, 59326, - 59336, 59347, 59358, 59368, - 59379, 59390, 59400, 59411, - 59421, 59432, 59443, 59453, - 59464, 59474, 59485, 59495, - 59506, 59516, 59527, 59538, - 59548, 59559, 59569, 59579, - 59590, 59600, 59611, 59621, - 59632, 59642, 59653, 59663, - 59673, 59684, 59694, 59704, - 59715, 59725, 59736, 59746, - 59756, 59767, 59777, 59787, - 59797, 59808, 59818, 59828, - 59838, 59849, 59859, 59869, - 59879, 59890, 59900, 59910, - 59920, 59930, 59941, 59951, - 59961, 59971, 59981, 59991, - 60001, 60011, 60022, 60032, - 60042, 60052, 60062, 60072, - 60082, 60092, 60102, 60112, - 60122, 60132, 60142, 60152, - 60162, 60172, 60182, 60192, - 60202, 60212, 60222, 60232, - 60241, 60251, 60261, 60271, - 60281, 60291, 60301, 60311, - 60320, 60330, 60340, 60350, - 60360, 60369, 60379, 60389, - 60399, 60408, 60418, 60428, - 60438, 60447, 60457, 60467, - 60476, 60486, 60496, 60505, - 60515, 60525, 60534, 60544, - 60554, 60563, 60573, 60582, - 60592, 60602, 60611, 60621, - 60630, 60640, 60649, 60659, - 60668, 60678, 60687, 60697, - 60706, 60716, 60725, 60735, - 60744, 60754, 60763, 60772, - 60782, 60791, 60801, 60810, - 60819, 60829, 60838, 60847, - 60857, 60866, 60875, 60885, - 60894, 60903, 60913, 60922, - 60931, 60940, 60950, 60959, - 60968, 60977, 60986, 60996, - 61005, 61014, 61023, 61032, - 61041, 61051, 61060, 61069, - 61078, 61087, 61096, 61105, - 61114, 61123, 61133, 61142, - 61151, 61160, 61169, 61178, - 61187, 61196, 61205, 61214, - 61223, 61232, 61241, 61250, - 61258, 61267, 61276, 61285, - 61294, 61303, 61312, 61321, - 61330, 61338, 61347, 61356, - 61365, 61374, 61383, 61391, - 61400, 61409, 61418, 61427, - 61435, 61444, 61453, 61461, - 61470, 61479, 61488, 61496, - 61505, 61514, 61522, 61531, - 61540, 61548, 61557, 61566, - 61574, 61583, 61591, 61600, - 61609, 61617, 61626, 61634, - 61643, 61651, 61660, 61668, - 61677, 61685, 61694, 61702, - 61711, 61719, 61728, 61736, - 61744, 61753, 61761, 61770, - 61778, 61786, 61795, 61803, - 61812, 61820, 61828, 61837, - 61845, 61853, 61862, 61870, - 61878, 61886, 61895, 61903, - 61911, 61919, 61928, 61936, - 61944, 61952, 61960, 61969, - 61977, 61985, 61993, 62001, - 62009, 62018, 62026, 62034, - 62042, 62050, 62058, 62066, - 62074, 62082, 62090, 62098, - 62106, 62114, 62122, 62130, - 62138, 62146, 62154, 62162, - 62170, 62178, 62186, 62194, - 62202, 62210, 62218, 62226, - 62234, 62241, 62249, 62257, - 62265, 62273, 62281, 62289, - 62296, 62304, 62312, 62320, - 62327, 62335, 62343, 62351, - 62358, 62366, 62374, 62382, - 62389, 62397, 62405, 62412, - 62420, 62428, 62435, 62443, - 62451, 62458, 62466, 62473, - 62481, 62489, 62496, 62504, - 62511, 62519, 62526, 62534, - 62541, 62549, 62556, 62564, - 62571, 62579, 62586, 62594, - 62601, 62609, 62616, 62623, - 62631, 62638, 62646, 62653, - 62660, 62668, 62675, 62682, - 62690, 62697, 62704, 62712, - 62719, 62726, 62734, 62741, - 62748, 62755, 62763, 62770, - 62777, 62784, 62791, 62799, - 62806, 62813, 62820, 62827, - 62834, 62842, 62849, 62856, - 62863, 62870, 62877, 62884, - 62891, 62898, 62905, 62912, - 62920, 62927, 62934, 62941, - 62948, 62955, 62962, 62968, - 62975, 62982, 62989, 62996, - 63003, 63010, 63017, 63024, - 63031, 63038, 63045, 63051, - 63058, 63065, 63072, 63079, - 63086, 63092, 63099, 63106, - 63113, 63120, 63126, 63133, - 63140, 63146, 63153, 63160, - 63167, 63173, 63180, 63187, - 63193, 63200, 63207, 63213, - 63220, 63227, 63233, 63240, - 63246, 63253, 63259, 63266, - 63273, 63279, 63286, 63292, - 63299, 63305, 63312, 63318, - 63325, 63331, 63338, 63344, - 63350, 63357, 63363, 63370, - 63376, 63383, 63389, 63395, - 63402, 63408, 63414, 63421, - 63427, 63433, 63440, 63446, - 63452, 63459, 63465, 63471, - 63477, 63484, 63490, 63496, - 63502, 63508, 63515, 63521, - 63527, 63533, 63539, 63546, - 63552, 63558, 63564, 63570, - 63576, 63582, 63588, 63594, - 63600, 63607, 63613, 63619, - 63625, 63631, 63637, 63643, - 63649, 63655, 63661, 63667, - 63673, 63679, 63684, 63690, - 63696, 63702, 63708, 63714, - 63720, 63726, 63732, 63737, - 63743, 63749, 63755, 63761, - 63767, 63772, 63778, 63784, - 63790, 63795, 63801, 63807, - 63813, 63818, 63824, 63830, - 63835, 63841, 63847, 63853, - 63858, 63864, 63869, 63875, - 63881, 63886, 63892, 63897, - 63903, 63909, 63914, 63920, - 63925, 63931, 63936, 63942, - 63947, 63953, 63958, 63964, - 63969, 63975, 63980, 63986, - 63991, 63996, 64002, 64007, - 64013, 64018, 64023, 64029, - 64034, 64040, 64045, 64050, - 64055, 64061, 64066, 64071, - 64077, 64082, 64087, 64092, - 64098, 64103, 64108, 64113, - 64119, 64124, 64129, 64134, - 64139, 64144, 64150, 64155, - 64160, 64165, 64170, 64175, - 64180, 64185, 64190, 64195, - 64201, 64206, 64211, 64216, - 64221, 64226, 64231, 64236, - 64241, 64246, 64251, 64255, - 64260, 64265, 64270, 64275, - 64280, 64285, 64290, 64295, - 64300, 64304, 64309, 64314, - 64319, 64324, 64329, 64333, - 64338, 64343, 64348, 64352, - 64357, 64362, 64367, 64371, - 64376, 64381, 64385, 64390, - 64395, 64399, 64404, 64409, - 64413, 64418, 64423, 64427, - 64432, 64436, 64441, 64446, - 64450, 64455, 64459, 64464, - 64468, 64473, 64477, 64482, - 64486, 64491, 64495, 64500, - 64504, 64509, 64513, 64517, - 64522, 64526, 64531, 64535, - 64539, 64544, 64548, 64552, - 64557, 64561, 64565, 64570, - 64574, 64578, 64583, 64587, - 64591, 64595, 64600, 64604, - 64608, 64612, 64616, 64621, - 64625, 64629, 64633, 64637, - 64641, 64646, 64650, 64654, - 64658, 64662, 64666, 64670, - 64674, 64678, 64682, 64686, - 64690, 64694, 64698, 64702, - 64706, 64710, 64714, 64718, - 64722, 64726, 64730, 64734, - 64738, 64742, 64746, 64750, - 64754, 64757, 64761, 64765, - 64769, 64773, 64777, 64780, - 64784, 64788, 64792, 64796, - 64799, 64803, 64807, 64811, - 64814, 64818, 64822, 64825, - 64829, 64833, 64836, 64840, - 64844, 64847, 64851, 64855, - 64858, 64862, 64865, 64869, - 64872, 64876, 64880, 64883, - 64887, 64890, 64894, 64897, - 64901, 64904, 64908, 64911, - 64915, 64918, 64921, 64925, - 64928, 64932, 64935, 64939, - 64942, 64945, 64949, 64952, - 64955, 64959, 64962, 64965, - 64969, 64972, 64975, 64978, - 64982, 64985, 64988, 64991, - 64995, 64998, 65001, 65004, - 65007, 65011, 65014, 65017, - 65020, 65023, 65026, 65030, - 65033, 65036, 65039, 65042, - 65045, 65048, 65051, 65054, - 65057, 65060, 65063, 65066, - 65069, 65072, 65075, 65078, - 65081, 65084, 65087, 65090, - 65093, 65096, 65099, 65102, - 65104, 65107, 65110, 65113, - 65116, 65119, 65122, 65124, - 65127, 65130, 65133, 65135, - 65138, 65141, 65144, 65147, - 65149, 65152, 65155, 65157, - 65160, 65163, 65165, 65168, - 65171, 65173, 65176, 65179, - 65181, 65184, 65186, 65189, - 65192, 65194, 65197, 65199, - 65202, 65204, 65207, 65209, - 65212, 65214, 65217, 65219, - 65222, 65224, 65227, 65229, - 65231, 65234, 65236, 65239, - 65241, 65243, 65246, 65248, - 65251, 65253, 65255, 65257, - 65260, 65262, 65264, 65267, - 65269, 65271, 65273, 65276, - 65278, 65280, 65282, 65285, - 65287, 65289, 65291, 65293, - 65295, 65298, 65300, 65302, - 65304, 65306, 65308, 65310, - 65312, 65314, 65316, 65318, - 65320, 65322, 65325, 65327, - 65329, 65331, 65332, 65334, - 65336, 65338, 65340, 65342, - 65344, 65346, 65348, 65350, - 65352, 65354, 65355, 65357, - 65359, 65361, 65363, 65365, - 65366, 65368, 65370, 65372, - 65374, 65375, 65377, 65379, - 65381, 65382, 65384, 65386, - 65387, 65389, 65391, 65392, - 65394, 65396, 65397, 65399, - 65401, 65402, 65404, 65405, - 65407, 65409, 65410, 65412, - 65413, 65415, 65416, 65418, - 65419, 65421, 65422, 65424, - 65425, 65427, 65428, 65429, - 65431, 65432, 65434, 65435, - 65436, 65438, 65439, 65441, - 65442, 65443, 65445, 65446, - 65447, 65448, 65450, 65451, - 65452, 65454, 65455, 65456, - 65457, 65458, 65460, 65461, - 65462, 65463, 65464, 65466, - 65467, 65468, 65469, 65470, - 65471, 65472, 65473, 65475, - 65476, 65477, 65478, 65479, - 65480, 65481, 65482, 65483, - 65484, 65485, 65486, 65487, - 65488, 65489, 65490, 65491, - 65491, 65492, 65493, 65494, - 65495, 65496, 65497, 65498, - 65499, 65499, 65500, 65501, - 65502, 65503, 65503, 65504, - 65505, 65506, 65506, 65507, - 65508, 65509, 65509, 65510, - 65511, 65511, 65512, 65513, - 65513, 65514, 65515, 65515, - 65516, 65516, 65517, 65518, - 65518, 65519, 65519, 65520, - 65520, 65521, 65521, 65522, - 65522, 65523, 65523, 65524, - 65524, 65525, 65525, 65526, - 65526, 65526, 65527, 65527, - 65528, 65528, 65528, 65529, - 65529, 65529, 65530, 65530, - 65530, 65531, 65531, 65531, - 65531, 65532, 65532, 65532, - 65532, 65533, 65533, 65533, - 65533, 65533, 65534, 65534, - 65534, 65534, 65534, 65534, - 65534, 65535, 65535, 65535, - 65535, 65535, 65535, 65535, - 65535, 65535, 65535, 65535, + 0, 20, 40, 60, + 80, 100, 120, 140, + 160, 180, 200, 220, + 240, 260, 280, 300, + 320, 340, 361, 381, + 401, 421, 441, 461, + 481, 501, 521, 541, + 561, 581, 601, 621, + 641, 661, 681, 702, + 722, 742, 762, 782, + 802, 822, 842, 862, + 882, 902, 922, 942, + 962, 982, 1002, 1022, + 1042, 1063, 1083, 1103, + 1123, 1143, 1163, 1183, + 1203, 1223, 1243, 1263, + 1283, 1303, 1323, 1343, + 1363, 1383, 1403, 1424, + 1444, 1464, 1484, 1504, + 1524, 1544, 1564, 1584, + 1604, 1624, 1644, 1664, + 1684, 1704, 1724, 1744, + 1764, 1784, 1805, 1825, + 1845, 1865, 1885, 1905, + 1925, 1945, 1965, 1985, + 2005, 2025, 2045, 2065, + 2085, 2105, 2125, 2145, + 2165, 2185, 2206, 2226, + 2246, 2266, 2286, 2306, + 2326, 2346, 2366, 2386, + 2406, 2426, 2446, 2466, + 2486, 2506, 2526, 2546, + 2566, 2586, 2606, 2626, + 2647, 2667, 2687, 2707, + 2727, 2747, 2767, 2787, + 2807, 2827, 2847, 2867, + 2887, 2907, 2927, 2947, + 2967, 2987, 3007, 3027, + 3047, 3067, 3087, 3108, + 3128, 3148, 3168, 3188, + 3208, 3228, 3248, 3268, + 3288, 3308, 3328, 3348, + 3368, 3388, 3408, 3428, + 3448, 3468, 3488, 3508, + 3528, 3548, 3568, 3588, + 3608, 3628, 3649, 3669, + 3689, 3709, 3729, 3749, + 3769, 3789, 3809, 3829, + 3849, 3869, 3889, 3909, + 3929, 3949, 3969, 3989, + 4009, 4029, 4049, 4069, + 4089, 4109, 4129, 4149, + 4169, 4189, 4209, 4229, + 4249, 4269, 4289, 4309, + 4329, 4349, 4370, 4390, + 4410, 4430, 4450, 4470, + 4490, 4510, 4530, 4550, + 4570, 4590, 4610, 4630, + 4650, 4670, 4690, 4710, + 4730, 4750, 4770, 4790, + 4810, 4830, 4850, 4870, + 4890, 4910, 4930, 4950, + 4970, 4990, 5010, 5030, + 5050, 5070, 5090, 5110, + 5130, 5150, 5170, 5190, + 5210, 5230, 5250, 5270, + 5290, 5310, 5330, 5350, + 5370, 5390, 5410, 5430, + 5450, 5470, 5490, 5510, + 5530, 5550, 5570, 5590, + 5610, 5630, 5650, 5670, + 5690, 5710, 5730, 5750, + 5770, 5790, 5810, 5830, + 5850, 5870, 5890, 5910, + 5930, 5950, 5970, 5990, + 6010, 6030, 6050, 6070, + 6090, 6110, 6130, 6150, + 6170, 6190, 6210, 6230, + 6250, 6270, 6290, 6310, + 6330, 6350, 6370, 6390, + 6410, 6430, 6450, 6470, + 6490, 6510, 6530, 6550, + 6570, 6590, 6610, 6630, + 6650, 6670, 6690, 6710, + 6730, 6750, 6769, 6789, + 6809, 6829, 6849, 6869, + 6889, 6909, 6929, 6949, + 6969, 6989, 7009, 7029, + 7049, 7069, 7089, 7109, + 7129, 7149, 7169, 7189, + 7209, 7229, 7249, 7269, + 7289, 7309, 7329, 7348, + 7368, 7388, 7408, 7428, + 7448, 7468, 7488, 7508, + 7528, 7548, 7568, 7588, + 7608, 7628, 7648, 7668, + 7688, 7708, 7728, 7748, + 7767, 7787, 7807, 7827, + 7847, 7867, 7887, 7907, + 7927, 7947, 7967, 7987, + 8007, 8027, 8047, 8067, + 8087, 8107, 8126, 8146, + 8166, 8186, 8206, 8226, + 8246, 8266, 8286, 8306, + 8326, 8346, 8366, 8386, + 8405, 8425, 8445, 8465, + 8485, 8505, 8525, 8545, + 8565, 8585, 8605, 8625, + 8645, 8664, 8684, 8704, + 8724, 8744, 8764, 8784, + 8804, 8824, 8844, 8864, + 8884, 8903, 8923, 8943, + 8963, 8983, 9003, 9023, + 9043, 9063, 9083, 9103, + 9122, 9142, 9162, 9182, + 9202, 9222, 9242, 9262, + 9282, 9302, 9321, 9341, + 9361, 9381, 9401, 9421, + 9441, 9461, 9481, 9501, + 9520, 9540, 9560, 9580, + 9600, 9620, 9640, 9660, + 9680, 9699, 9719, 9739, + 9759, 9779, 9799, 9819, + 9839, 9858, 9878, 9898, + 9918, 9938, 9958, 9978, + 9998, 10017, 10037, 10057, + 10077, 10097, 10117, 10137, + 10157, 10176, 10196, 10216, + 10236, 10256, 10276, 10296, + 10315, 10335, 10355, 10375, + 10395, 10415, 10435, 10454, + 10474, 10494, 10514, 10534, + 10554, 10574, 10593, 10613, + 10633, 10653, 10673, 10693, + 10713, 10732, 10752, 10772, + 10792, 10812, 10832, 10851, + 10871, 10891, 10911, 10931, + 10951, 10970, 10990, 11010, + 11030, 11050, 11070, 11089, + 11109, 11129, 11149, 11169, + 11189, 11208, 11228, 11248, + 11268, 11288, 11308, 11327, + 11347, 11367, 11387, 11407, + 11426, 11446, 11466, 11486, + 11506, 11526, 11545, 11565, + 11585, 11605, 11625, 11644, + 11664, 11684, 11704, 11724, + 11743, 11763, 11783, 11803, + 11823, 11842, 11862, 11882, + 11902, 11922, 11941, 11961, + 11981, 12001, 12021, 12040, + 12060, 12080, 12100, 12119, + 12139, 12159, 12179, 12199, + 12218, 12238, 12258, 12278, + 12298, 12317, 12337, 12357, + 12377, 12396, 12416, 12436, + 12456, 12475, 12495, 12515, + 12535, 12555, 12574, 12594, + 12614, 12634, 12653, 12673, + 12693, 12713, 12732, 12752, + 12772, 12792, 12811, 12831, + 12851, 12871, 12890, 12910, + 12930, 12950, 12969, 12989, + 13009, 13029, 13048, 13068, + 13088, 13108, 13127, 13147, + 13167, 13187, 13206, 13226, + 13246, 13266, 13285, 13305, + 13325, 13344, 13364, 13384, + 13404, 13423, 13443, 13463, + 13483, 13502, 13522, 13542, + 13561, 13581, 13601, 13621, + 13640, 13660, 13680, 13699, + 13719, 13739, 13759, 13778, + 13798, 13818, 13837, 13857, + 13877, 13896, 13916, 13936, + 13956, 13975, 13995, 14015, + 14034, 14054, 14074, 14093, + 14113, 14133, 14152, 14172, + 14192, 14211, 14231, 14251, + 14271, 14290, 14310, 14330, + 14349, 14369, 14389, 14408, + 14428, 14448, 14467, 14487, + 14507, 14526, 14546, 14566, + 14585, 14605, 14625, 14644, + 14664, 14684, 14703, 14723, + 14743, 14762, 14782, 14801, + 14821, 14841, 14860, 14880, + 14900, 14919, 14939, 14959, + 14978, 14998, 15018, 15037, + 15057, 15077, 15096, 15116, + 15135, 15155, 15175, 15194, + 15214, 15234, 15253, 15273, + 15292, 15312, 15332, 15351, + 15371, 15391, 15410, 15430, + 15449, 15469, 15489, 15508, + 15528, 15547, 15567, 15587, + 15606, 15626, 15645, 15665, + 15685, 15704, 15724, 15743, + 15763, 15783, 15802, 15822, + 15841, 15861, 15881, 15900, + 15920, 15939, 15959, 15979, + 15998, 16018, 16037, 16057, + 16076, 16096, 16116, 16135, + 16155, 16174, 16194, 16213, + 16233, 16253, 16272, 16292, + 16311, 16331, 16350, 16370, + 16389, 16409, 16429, 16448, + 16468, 16487, 16507, 16526, + 16546, 16565, 16585, 16605, + 16624, 16644, 16663, 16683, + 16702, 16722, 16741, 16761, + 16780, 16800, 16819, 16839, + 16859, 16878, 16898, 16917, + 16937, 16956, 16976, 16995, + 17015, 17034, 17054, 17073, + 17093, 17112, 17132, 17151, + 17171, 17190, 17210, 17229, + 17249, 17268, 17288, 17307, + 17327, 17346, 17366, 17385, + 17405, 17424, 17444, 17463, + 17483, 17502, 17522, 17541, + 17561, 17580, 17600, 17619, + 17639, 17658, 17678, 17697, + 17717, 17736, 17755, 17775, + 17794, 17814, 17833, 17853, + 17872, 17892, 17911, 17931, + 17950, 17970, 17989, 18008, + 18028, 18047, 18067, 18086, + 18106, 18125, 18145, 18164, + 18183, 18203, 18222, 18242, + 18261, 18281, 18300, 18319, + 18339, 18358, 18378, 18397, + 18417, 18436, 18455, 18475, + 18494, 18514, 18533, 18553, + 18572, 18591, 18611, 18630, + 18650, 18669, 18688, 18708, + 18727, 18747, 18766, 18785, + 18805, 18824, 18844, 18863, + 18882, 18902, 18921, 18941, + 18960, 18979, 18999, 19018, + 19037, 19057, 19076, 19096, + 19115, 19134, 19154, 19173, + 19192, 19212, 19231, 19251, + 19270, 19289, 19309, 19328, + 19347, 19367, 19386, 19405, + 19425, 19444, 19463, 19483, + 19502, 19521, 19541, 19560, + 19580, 19599, 19618, 19638, + 19657, 19676, 19696, 19715, + 19734, 19754, 19773, 19792, + 19811, 19831, 19850, 19869, + 19889, 19908, 19927, 19947, + 19966, 19985, 20005, 20024, + 20043, 20063, 20082, 20101, + 20120, 20140, 20159, 20178, + 20198, 20217, 20236, 20255, + 20275, 20294, 20313, 20333, + 20352, 20371, 20390, 20410, + 20429, 20448, 20468, 20487, + 20506, 20525, 20545, 20564, + 20583, 20602, 20622, 20641, + 20660, 20679, 20699, 20718, + 20737, 20756, 20776, 20795, + 20814, 20833, 20853, 20872, + 20891, 20910, 20930, 20949, + 20968, 20987, 21007, 21026, + 21045, 21064, 21083, 21103, + 21122, 21141, 21160, 21179, + 21199, 21218, 21237, 21256, + 21276, 21295, 21314, 21333, + 21352, 21372, 21391, 21410, + 21429, 21448, 21468, 21487, + 21506, 21525, 21544, 21563, + 21583, 21602, 21621, 21640, + 21659, 21679, 21698, 21717, + 21736, 21755, 21774, 21794, + 21813, 21832, 21851, 21870, + 21889, 21908, 21928, 21947, + 21966, 21985, 22004, 22023, + 22042, 22062, 22081, 22100, + 22119, 22138, 22157, 22176, + 22196, 22215, 22234, 22253, + 22272, 22291, 22310, 22329, + 22349, 22368, 22387, 22406, + 22425, 22444, 22463, 22482, + 22501, 22520, 22540, 22559, + 22578, 22597, 22616, 22635, + 22654, 22673, 22692, 22711, + 22730, 22750, 22769, 22788, + 22807, 22826, 22845, 22864, + 22883, 22902, 22921, 22940, + 22959, 22978, 22997, 23017, + 23036, 23055, 23074, 23093, + 23112, 23131, 23150, 23169, + 23188, 23207, 23226, 23245, + 23264, 23283, 23302, 23321, + 23340, 23359, 23378, 23397, + 23416, 23435, 23454, 23473, + 23492, 23511, 23530, 23549, + 23568, 23587, 23606, 23625, + 23644, 23663, 23682, 23701, + 23720, 23739, 23758, 23777, + 23796, 23815, 23834, 23853, + 23872, 23891, 23910, 23929, + 23948, 23967, 23986, 24005, + 24024, 24043, 24062, 24081, + 24100, 24119, 24138, 24157, + 24176, 24195, 24214, 24232, + 24251, 24270, 24289, 24308, + 24327, 24346, 24365, 24384, + 24403, 24422, 24441, 24460, + 24479, 24498, 24516, 24535, + 24554, 24573, 24592, 24611, + 24630, 24649, 24668, 24687, + 24705, 24724, 24743, 24762, + 24781, 24800, 24819, 24838, + 24857, 24875, 24894, 24913, + 24932, 24951, 24970, 24989, + 25008, 25026, 25045, 25064, + 25083, 25102, 25121, 25140, + 25158, 25177, 25196, 25215, + 25234, 25253, 25272, 25290, + 25309, 25328, 25347, 25366, + 25385, 25403, 25422, 25441, + 25460, 25479, 25498, 25516, + 25535, 25554, 25573, 25592, + 25610, 25629, 25648, 25667, + 25686, 25704, 25723, 25742, + 25761, 25780, 25798, 25817, + 25836, 25855, 25874, 25892, + 25911, 25930, 25949, 25967, + 25986, 26005, 26024, 26042, + 26061, 26080, 26099, 26118, + 26136, 26155, 26174, 26193, + 26211, 26230, 26249, 26267, + 26286, 26305, 26324, 26342, + 26361, 26380, 26399, 26417, + 26436, 26455, 26474, 26492, + 26511, 26530, 26548, 26567, + 26586, 26604, 26623, 26642, + 26661, 26679, 26698, 26717, + 26735, 26754, 26773, 26791, + 26810, 26829, 26847, 26866, + 26885, 26903, 26922, 26941, + 26959, 26978, 26997, 27015, + 27034, 27053, 27071, 27090, + 27109, 27127, 27146, 27165, + 27183, 27202, 27221, 27239, + 27258, 27277, 27295, 27314, + 27332, 27351, 27370, 27388, + 27407, 27426, 27444, 27463, + 27481, 27500, 27519, 27537, + 27556, 27574, 27593, 27612, + 27630, 27649, 27667, 27686, + 27705, 27723, 27742, 27760, + 27779, 27797, 27816, 27835, + 27853, 27872, 27890, 27909, + 27927, 27946, 27964, 27983, + 28002, 28020, 28039, 28057, + 28076, 28094, 28113, 28131, + 28150, 28168, 28187, 28206, + 28224, 28243, 28261, 28280, + 28298, 28317, 28335, 28354, + 28372, 28391, 28409, 28428, + 28446, 28465, 28483, 28502, + 28520, 28539, 28557, 28576, + 28594, 28613, 28631, 28650, + 28668, 28687, 28705, 28723, + 28742, 28760, 28779, 28797, + 28816, 28834, 28853, 28871, + 28890, 28908, 28926, 28945, + 28963, 28982, 29000, 29019, + 29037, 29056, 29074, 29092, + 29111, 29129, 29148, 29166, + 29184, 29203, 29221, 29240, + 29258, 29277, 29295, 29313, + 29332, 29350, 29369, 29387, + 29405, 29424, 29442, 29460, + 29479, 29497, 29516, 29534, + 29552, 29571, 29589, 29607, + 29626, 29644, 29662, 29681, + 29699, 29718, 29736, 29754, + 29773, 29791, 29809, 29828, + 29846, 29864, 29883, 29901, + 29919, 29938, 29956, 29974, + 29993, 30011, 30029, 30047, + 30066, 30084, 30102, 30121, + 30139, 30157, 30176, 30194, + 30212, 30230, 30249, 30267, + 30285, 30304, 30322, 30340, + 30358, 30377, 30395, 30413, + 30431, 30450, 30468, 30486, + 30505, 30523, 30541, 30559, + 30577, 30596, 30614, 30632, + 30650, 30669, 30687, 30705, + 30723, 30742, 30760, 30778, + 30796, 30814, 30833, 30851, + 30869, 30887, 30906, 30924, + 30942, 30960, 30978, 30996, + 31015, 31033, 31051, 31069, + 31087, 31106, 31124, 31142, + 31160, 31178, 31196, 31215, + 31233, 31251, 31269, 31287, + 31305, 31324, 31342, 31360, + 31378, 31396, 31414, 31432, + 31451, 31469, 31487, 31505, + 31523, 31541, 31559, 31577, + 31595, 31614, 31632, 31650, + 31668, 31686, 31704, 31722, + 31740, 31758, 31776, 31795, + 31813, 31831, 31849, 31867, + 31885, 31903, 31921, 31939, + 31957, 31975, 31993, 32011, + 32029, 32048, 32066, 32084, + 32102, 32120, 32138, 32156, + 32174, 32192, 32210, 32228, + 32246, 32264, 32282, 32300, + 32318, 32336, 32354, 32372, + 32390, 32408, 32426, 32444, + 32462, 32480, 32498, 32516, + 32534, 32552, 32570, 32588, + 32606, 32624, 32642, 32660, + 32678, 32696, 32714, 32732, + 32750, 32768, 32786, 32804, + 32822, 32839, 32857, 32875, + 32893, 32911, 32929, 32947, + 32965, 32983, 33001, 33019, + 33037, 33055, 33073, 33090, + 33108, 33126, 33144, 33162, + 33180, 33198, 33216, 33234, + 33252, 33269, 33287, 33305, + 33323, 33341, 33359, 33377, + 33395, 33412, 33430, 33448, + 33466, 33484, 33502, 33520, + 33537, 33555, 33573, 33591, + 33609, 33627, 33644, 33662, + 33680, 33698, 33716, 33734, + 33751, 33769, 33787, 33805, + 33823, 33840, 33858, 33876, + 33894, 33912, 33929, 33947, + 33965, 33983, 34001, 34018, + 34036, 34054, 34072, 34089, + 34107, 34125, 34143, 34161, + 34178, 34196, 34214, 34232, + 34249, 34267, 34285, 34303, + 34320, 34338, 34356, 34373, + 34391, 34409, 34427, 34444, + 34462, 34480, 34497, 34515, + 34533, 34551, 34568, 34586, + 34604, 34621, 34639, 34657, + 34674, 34692, 34710, 34727, + 34745, 34763, 34780, 34798, + 34816, 34833, 34851, 34869, + 34886, 34904, 34922, 34939, + 34957, 34975, 34992, 35010, + 35028, 35045, 35063, 35080, + 35098, 35116, 35133, 35151, + 35168, 35186, 35204, 35221, + 35239, 35256, 35274, 35292, + 35309, 35327, 35344, 35362, + 35380, 35397, 35415, 35432, + 35450, 35467, 35485, 35503, + 35520, 35538, 35555, 35573, + 35590, 35608, 35625, 35643, + 35660, 35678, 35696, 35713, + 35731, 35748, 35766, 35783, + 35801, 35818, 35836, 35853, + 35871, 35888, 35906, 35923, + 35941, 35958, 35976, 35993, + 36011, 36028, 36046, 36063, + 36080, 36098, 36115, 36133, + 36150, 36168, 36185, 36203, + 36220, 36238, 36255, 36272, + 36290, 36307, 36325, 36342, + 36360, 36377, 36394, 36412, + 36429, 36447, 36464, 36482, + 36499, 36516, 36534, 36551, + 36569, 36586, 36603, 36621, + 36638, 36655, 36673, 36690, + 36708, 36725, 36742, 36760, + 36777, 36794, 36812, 36829, + 36846, 36864, 36881, 36898, + 36916, 36933, 36950, 36968, + 36985, 37002, 37020, 37037, + 37054, 37072, 37089, 37106, + 37124, 37141, 37158, 37175, + 37193, 37210, 37227, 37245, + 37262, 37279, 37296, 37314, + 37331, 37348, 37366, 37383, + 37400, 37417, 37435, 37452, + 37469, 37486, 37504, 37521, + 37538, 37555, 37572, 37590, + 37607, 37624, 37641, 37659, + 37676, 37693, 37710, 37727, + 37745, 37762, 37779, 37796, + 37813, 37831, 37848, 37865, + 37882, 37899, 37916, 37934, + 37951, 37968, 37985, 38002, + 38019, 38037, 38054, 38071, + 38088, 38105, 38122, 38139, + 38157, 38174, 38191, 38208, + 38225, 38242, 38259, 38276, + 38293, 38311, 38328, 38345, + 38362, 38379, 38396, 38413, + 38430, 38447, 38464, 38481, + 38499, 38516, 38533, 38550, + 38567, 38584, 38601, 38618, + 38635, 38652, 38669, 38686, + 38703, 38720, 38737, 38754, + 38771, 38788, 38805, 38822, + 38839, 38856, 38873, 38890, + 38907, 38924, 38941, 38958, + 38975, 38992, 39009, 39026, + 39043, 39060, 39077, 39094, + 39111, 39128, 39145, 39162, + 39179, 39196, 39213, 39230, + 39247, 39264, 39281, 39298, + 39315, 39331, 39348, 39365, + 39382, 39399, 39416, 39433, + 39450, 39467, 39484, 39501, + 39517, 39534, 39551, 39568, + 39585, 39602, 39619, 39636, + 39652, 39669, 39686, 39703, + 39720, 39737, 39754, 39770, + 39787, 39804, 39821, 39838, + 39855, 39871, 39888, 39905, + 39922, 39939, 39956, 39972, + 39989, 40006, 40023, 40040, + 40056, 40073, 40090, 40107, + 40124, 40140, 40157, 40174, + 40191, 40207, 40224, 40241, + 40258, 40274, 40291, 40308, + 40325, 40341, 40358, 40375, + 40392, 40408, 40425, 40442, + 40459, 40475, 40492, 40509, + 40525, 40542, 40559, 40576, + 40592, 40609, 40626, 40642, + 40659, 40676, 40692, 40709, + 40726, 40742, 40759, 40776, + 40792, 40809, 40826, 40842, + 40859, 40876, 40892, 40909, + 40926, 40942, 40959, 40975, + 40992, 41009, 41025, 41042, + 41059, 41075, 41092, 41108, + 41125, 41142, 41158, 41175, + 41191, 41208, 41224, 41241, + 41258, 41274, 41291, 41307, + 41324, 41340, 41357, 41374, + 41390, 41407, 41423, 41440, + 41456, 41473, 41489, 41506, + 41522, 41539, 41555, 41572, + 41588, 41605, 41621, 41638, + 41654, 41671, 41687, 41704, + 41720, 41737, 41753, 41770, + 41786, 41803, 41819, 41836, + 41852, 41869, 41885, 41901, + 41918, 41934, 41951, 41967, + 41984, 42000, 42016, 42033, + 42049, 42066, 42082, 42099, + 42115, 42131, 42148, 42164, + 42181, 42197, 42213, 42230, + 42246, 42262, 42279, 42295, + 42312, 42328, 42344, 42361, + 42377, 42393, 42410, 42426, + 42442, 42459, 42475, 42491, + 42508, 42524, 42540, 42557, + 42573, 42589, 42606, 42622, + 42638, 42655, 42671, 42687, + 42703, 42720, 42736, 42752, + 42769, 42785, 42801, 42817, + 42834, 42850, 42866, 42882, + 42899, 42915, 42931, 42947, + 42964, 42980, 42996, 43012, + 43028, 43045, 43061, 43077, + 43093, 43110, 43126, 43142, + 43158, 43174, 43191, 43207, + 43223, 43239, 43255, 43271, + 43288, 43304, 43320, 43336, + 43352, 43368, 43385, 43401, + 43417, 43433, 43449, 43465, + 43481, 43497, 43514, 43530, + 43546, 43562, 43578, 43594, + 43610, 43626, 43642, 43659, + 43675, 43691, 43707, 43723, + 43739, 43755, 43771, 43787, + 43803, 43819, 43835, 43851, + 43867, 43883, 43900, 43916, + 43932, 43948, 43964, 43980, + 43996, 44012, 44028, 44044, + 44060, 44076, 44092, 44108, + 44124, 44140, 44156, 44172, + 44188, 44204, 44220, 44236, + 44252, 44268, 44283, 44299, + 44315, 44331, 44347, 44363, + 44379, 44395, 44411, 44427, + 44443, 44459, 44475, 44491, + 44507, 44522, 44538, 44554, + 44570, 44586, 44602, 44618, + 44634, 44650, 44665, 44681, + 44697, 44713, 44729, 44745, + 44761, 44776, 44792, 44808, + 44824, 44840, 44856, 44872, + 44887, 44903, 44919, 44935, + 44951, 44966, 44982, 44998, + 45014, 45030, 45045, 45061, + 45077, 45093, 45109, 45124, + 45140, 45156, 45172, 45187, + 45203, 45219, 45235, 45250, + 45266, 45282, 45298, 45313, + 45329, 45345, 45361, 45376, + 45392, 45408, 45423, 45439, + 45455, 45471, 45486, 45502, + 45518, 45533, 45549, 45565, + 45580, 45596, 45612, 45627, + 45643, 45659, 45674, 45690, + 45706, 45721, 45737, 45753, + 45768, 45784, 45799, 45815, + 45831, 45846, 45862, 45877, + 45893, 45909, 45924, 45940, + 45955, 45971, 45987, 46002, + 46018, 46033, 46049, 46064, + 46080, 46096, 46111, 46127, + 46142, 46158, 46173, 46189, + 46204, 46220, 46235, 46251, + 46266, 46282, 46297, 46313, + 46328, 46344, 46359, 46375, + 46390, 46406, 46421, 46437, + 46452, 46468, 46483, 46499, + 46514, 46530, 46545, 46561, + 46576, 46591, 46607, 46622, + 46638, 46653, 46669, 46684, + 46699, 46715, 46730, 46746, + 46761, 46776, 46792, 46807, + 46823, 46838, 46853, 46869, + 46884, 46900, 46915, 46930, + 46946, 46961, 46976, 46992, + 47007, 47022, 47038, 47053, + 47068, 47084, 47099, 47114, + 47130, 47145, 47160, 47175, + 47191, 47206, 47221, 47237, + 47252, 47267, 47283, 47298, + 47313, 47328, 47344, 47359, + 47374, 47389, 47405, 47420, + 47435, 47450, 47466, 47481, + 47496, 47511, 47526, 47542, + 47557, 47572, 47587, 47602, + 47618, 47633, 47648, 47663, + 47678, 47694, 47709, 47724, + 47739, 47754, 47769, 47785, + 47800, 47815, 47830, 47845, + 47860, 47875, 47890, 47906, + 47921, 47936, 47951, 47966, + 47981, 47996, 48011, 48026, + 48042, 48057, 48072, 48087, + 48102, 48117, 48132, 48147, + 48162, 48177, 48192, 48207, + 48222, 48237, 48252, 48267, + 48282, 48298, 48313, 48328, + 48343, 48358, 48373, 48388, + 48403, 48418, 48433, 48448, + 48463, 48478, 48492, 48507, + 48522, 48537, 48552, 48567, + 48582, 48597, 48612, 48627, + 48642, 48657, 48672, 48687, + 48702, 48717, 48732, 48746, + 48761, 48776, 48791, 48806, + 48821, 48836, 48851, 48866, + 48881, 48895, 48910, 48925, + 48940, 48955, 48970, 48985, + 48999, 49014, 49029, 49044, + 49059, 49074, 49088, 49103, + 49118, 49133, 49148, 49162, + 49177, 49192, 49207, 49222, + 49236, 49251, 49266, 49281, + 49296, 49310, 49325, 49340, + 49355, 49369, 49384, 49399, + 49414, 49428, 49443, 49458, + 49472, 49487, 49502, 49517, + 49531, 49546, 49561, 49575, + 49590, 49605, 49619, 49634, + 49649, 49663, 49678, 49693, + 49707, 49722, 49737, 49751, + 49766, 49781, 49795, 49810, + 49825, 49839, 49854, 49868, + 49883, 49898, 49912, 49927, + 49941, 49956, 49971, 49985, + 50000, 50014, 50029, 50044, + 50058, 50073, 50087, 50102, + 50116, 50131, 50145, 50160, + 50174, 50189, 50204, 50218, + 50233, 50247, 50262, 50276, + 50291, 50305, 50320, 50334, + 50349, 50363, 50378, 50392, + 50406, 50421, 50435, 50450, + 50464, 50479, 50493, 50508, + 50522, 50537, 50551, 50565, + 50580, 50594, 50609, 50623, + 50637, 50652, 50666, 50681, + 50695, 50709, 50724, 50738, + 50753, 50767, 50781, 50796, + 50810, 50824, 50839, 50853, + 50867, 50882, 50896, 50910, + 50925, 50939, 50953, 50968, + 50982, 50996, 51011, 51025, + 51039, 51053, 51068, 51082, + 51096, 51111, 51125, 51139, + 51153, 51168, 51182, 51196, + 51210, 51225, 51239, 51253, + 51267, 51282, 51296, 51310, + 51324, 51338, 51353, 51367, + 51381, 51395, 51409, 51424, + 51438, 51452, 51466, 51480, + 51494, 51509, 51523, 51537, + 51551, 51565, 51579, 51593, + 51608, 51622, 51636, 51650, + 51664, 51678, 51692, 51706, + 51721, 51735, 51749, 51763, + 51777, 51791, 51805, 51819, + 51833, 51847, 51861, 51875, + 51889, 51903, 51917, 51931, + 51946, 51960, 51974, 51988, + 52002, 52016, 52030, 52044, + 52058, 52072, 52086, 52100, + 52114, 52128, 52142, 52156, + 52169, 52183, 52197, 52211, + 52225, 52239, 52253, 52267, + 52281, 52295, 52309, 52323, + 52337, 52351, 52365, 52378, + 52392, 52406, 52420, 52434, + 52448, 52462, 52476, 52490, + 52503, 52517, 52531, 52545, + 52559, 52573, 52587, 52600, + 52614, 52628, 52642, 52656, + 52669, 52683, 52697, 52711, + 52725, 52738, 52752, 52766, + 52780, 52794, 52807, 52821, + 52835, 52849, 52862, 52876, + 52890, 52904, 52917, 52931, + 52945, 52959, 52972, 52986, + 53000, 53013, 53027, 53041, + 53055, 53068, 53082, 53096, + 53109, 53123, 53137, 53150, + 53164, 53178, 53191, 53205, + 53219, 53232, 53246, 53260, + 53273, 53287, 53300, 53314, + 53328, 53341, 53355, 53368, + 53382, 53396, 53409, 53423, + 53436, 53450, 53464, 53477, + 53491, 53504, 53518, 53531, + 53545, 53558, 53572, 53585, + 53599, 53613, 53626, 53640, + 53653, 53667, 53680, 53694, + 53707, 53721, 53734, 53747, + 53761, 53774, 53788, 53801, + 53815, 53828, 53842, 53855, + 53869, 53882, 53895, 53909, + 53922, 53936, 53949, 53963, + 53976, 53989, 54003, 54016, + 54030, 54043, 54056, 54070, + 54083, 54096, 54110, 54123, + 54137, 54150, 54163, 54177, + 54190, 54203, 54217, 54230, + 54243, 54257, 54270, 54283, + 54296, 54310, 54323, 54336, + 54350, 54363, 54376, 54389, + 54403, 54416, 54429, 54442, + 54456, 54469, 54482, 54495, + 54509, 54522, 54535, 54548, + 54562, 54575, 54588, 54601, + 54614, 54628, 54641, 54654, + 54667, 54680, 54693, 54707, + 54720, 54733, 54746, 54759, + 54772, 54785, 54799, 54812, + 54825, 54838, 54851, 54864, + 54877, 54890, 54904, 54917, + 54930, 54943, 54956, 54969, + 54982, 54995, 55008, 55021, + 55034, 55047, 55060, 55073, + 55086, 55099, 55113, 55126, + 55139, 55152, 55165, 55178, + 55191, 55204, 55217, 55230, + 55243, 55256, 55269, 55281, + 55294, 55307, 55320, 55333, + 55346, 55359, 55372, 55385, + 55398, 55411, 55424, 55437, + 55450, 55463, 55475, 55488, + 55501, 55514, 55527, 55540, + 55553, 55566, 55579, 55591, + 55604, 55617, 55630, 55643, + 55656, 55669, 55681, 55694, + 55707, 55720, 55733, 55745, + 55758, 55771, 55784, 55797, + 55809, 55822, 55835, 55848, + 55860, 55873, 55886, 55899, + 55912, 55924, 55937, 55950, + 55962, 55975, 55988, 56001, + 56013, 56026, 56039, 56051, + 56064, 56077, 56090, 56102, + 56115, 56128, 56140, 56153, + 56166, 56178, 56191, 56204, + 56216, 56229, 56241, 56254, + 56267, 56279, 56292, 56305, + 56317, 56330, 56342, 56355, + 56367, 56380, 56393, 56405, + 56418, 56430, 56443, 56455, + 56468, 56481, 56493, 56506, + 56518, 56531, 56543, 56556, + 56568, 56581, 56593, 56606, + 56618, 56631, 56643, 56656, + 56668, 56681, 56693, 56706, + 56718, 56730, 56743, 56755, + 56768, 56780, 56793, 56805, + 56817, 56830, 56842, 56855, + 56867, 56880, 56892, 56904, + 56917, 56929, 56941, 56954, + 56966, 56979, 56991, 57003, + 57016, 57028, 57040, 57053, + 57065, 57077, 57090, 57102, + 57114, 57126, 57139, 57151, + 57163, 57176, 57188, 57200, + 57212, 57225, 57237, 57249, + 57261, 57274, 57286, 57298, + 57310, 57323, 57335, 57347, + 57359, 57372, 57384, 57396, + 57408, 57420, 57433, 57445, + 57457, 57469, 57481, 57493, + 57506, 57518, 57530, 57542, + 57554, 57566, 57578, 57591, + 57603, 57615, 57627, 57639, + 57651, 57663, 57675, 57687, + 57699, 57712, 57724, 57736, + 57748, 57760, 57772, 57784, + 57796, 57808, 57820, 57832, + 57844, 57856, 57868, 57880, + 57892, 57904, 57916, 57928, + 57940, 57952, 57964, 57976, + 57988, 58000, 58012, 58024, + 58036, 58048, 58060, 58072, + 58084, 58095, 58107, 58119, + 58131, 58143, 58155, 58167, + 58179, 58191, 58203, 58214, + 58226, 58238, 58250, 58262, + 58274, 58286, 58297, 58309, + 58321, 58333, 58345, 58357, + 58368, 58380, 58392, 58404, + 58416, 58427, 58439, 58451, + 58463, 58475, 58486, 58498, + 58510, 58522, 58533, 58545, + 58557, 58569, 58580, 58592, + 58604, 58615, 58627, 58639, + 58651, 58662, 58674, 58686, + 58697, 58709, 58721, 58732, + 58744, 58756, 58767, 58779, + 58791, 58802, 58814, 58825, + 58837, 58849, 58860, 58872, + 58884, 58895, 58907, 58918, + 58930, 58941, 58953, 58965, + 58976, 58988, 58999, 59011, + 59022, 59034, 59045, 59057, + 59069, 59080, 59092, 59103, + 59115, 59126, 59138, 59149, + 59161, 59172, 59184, 59195, + 59206, 59218, 59229, 59241, + 59252, 59264, 59275, 59287, + 59298, 59309, 59321, 59332, + 59344, 59355, 59366, 59378, + 59389, 59401, 59412, 59423, + 59435, 59446, 59457, 59469, + 59480, 59491, 59503, 59514, + 59525, 59537, 59548, 59559, + 59571, 59582, 59593, 59605, + 59616, 59627, 59638, 59650, + 59661, 59672, 59684, 59695, + 59706, 59717, 59729, 59740, + 59751, 59762, 59773, 59785, + 59796, 59807, 59818, 59829, + 59841, 59852, 59863, 59874, + 59885, 59897, 59908, 59919, + 59930, 59941, 59952, 59963, + 59975, 59986, 59997, 60008, + 60019, 60030, 60041, 60052, + 60063, 60074, 60086, 60097, + 60108, 60119, 60130, 60141, + 60152, 60163, 60174, 60185, + 60196, 60207, 60218, 60229, + 60240, 60251, 60262, 60273, + 60284, 60295, 60306, 60317, + 60328, 60339, 60350, 60361, + 60372, 60383, 60394, 60405, + 60416, 60427, 60437, 60448, + 60459, 60470, 60481, 60492, + 60503, 60514, 60525, 60535, + 60546, 60557, 60568, 60579, + 60590, 60601, 60611, 60622, + 60633, 60644, 60655, 60666, + 60676, 60687, 60698, 60709, + 60720, 60730, 60741, 60752, + 60763, 60773, 60784, 60795, + 60806, 60816, 60827, 60838, + 60849, 60859, 60870, 60881, + 60891, 60902, 60913, 60923, + 60934, 60945, 60956, 60966, + 60977, 60987, 60998, 61009, + 61019, 61030, 61041, 61051, + 61062, 61073, 61083, 61094, + 61104, 61115, 61126, 61136, + 61147, 61157, 61168, 61178, + 61189, 61200, 61210, 61221, + 61231, 61242, 61252, 61263, + 61273, 61284, 61294, 61305, + 61315, 61326, 61336, 61347, + 61357, 61368, 61378, 61389, + 61399, 61410, 61420, 61430, + 61441, 61451, 61462, 61472, + 61483, 61493, 61503, 61514, + 61524, 61535, 61545, 61555, + 61566, 61576, 61587, 61597, + 61607, 61618, 61628, 61638, + 61649, 61659, 61669, 61680, + 61690, 61700, 61710, 61721, + 61731, 61741, 61752, 61762, + 61772, 61782, 61793, 61803, + 61813, 61823, 61834, 61844, + 61854, 61864, 61875, 61885, + 61895, 61905, 61915, 61926, + 61936, 61946, 61956, 61966, + 61976, 61987, 61997, 62007, + 62017, 62027, 62037, 62047, + 62058, 62068, 62078, 62088, + 62098, 62108, 62118, 62128, + 62138, 62148, 62159, 62169, + 62179, 62189, 62199, 62209, + 62219, 62229, 62239, 62249, + 62259, 62269, 62279, 62289, + 62299, 62309, 62319, 62329, + 62339, 62349, 62359, 62369, + 62379, 62389, 62399, 62409, + 62419, 62428, 62438, 62448, + 62458, 62468, 62478, 62488, + 62498, 62508, 62518, 62527, + 62537, 62547, 62557, 62567, + 62577, 62587, 62596, 62606, + 62616, 62626, 62636, 62645, + 62655, 62665, 62675, 62685, + 62694, 62704, 62714, 62724, + 62734, 62743, 62753, 62763, + 62773, 62782, 62792, 62802, + 62811, 62821, 62831, 62841, + 62850, 62860, 62870, 62879, + 62889, 62899, 62908, 62918, + 62928, 62937, 62947, 62957, + 62966, 62976, 62985, 62995, + 63005, 63014, 63024, 63033, + 63043, 63053, 63062, 63072, + 63081, 63091, 63100, 63110, + 63120, 63129, 63139, 63148, + 63158, 63167, 63177, 63186, + 63196, 63205, 63215, 63224, + 63234, 63243, 63253, 63262, + 63272, 63281, 63290, 63300, + 63309, 63319, 63328, 63338, + 63347, 63356, 63366, 63375, + 63385, 63394, 63403, 63413, + 63422, 63432, 63441, 63450, + 63460, 63469, 63478, 63488, + 63497, 63506, 63516, 63525, + 63534, 63544, 63553, 63562, + 63571, 63581, 63590, 63599, + 63609, 63618, 63627, 63636, + 63646, 63655, 63664, 63673, + 63682, 63692, 63701, 63710, + 63719, 63728, 63738, 63747, + 63756, 63765, 63774, 63783, + 63793, 63802, 63811, 63820, + 63829, 63838, 63847, 63857, + 63866, 63875, 63884, 63893, + 63902, 63911, 63920, 63929, + 63938, 63947, 63956, 63965, + 63975, 63984, 63993, 64002, + 64011, 64020, 64029, 64038, + 64047, 64056, 64065, 64074, + 64083, 64092, 64101, 64109, + 64118, 64127, 64136, 64145, + 64154, 64163, 64172, 64181, + 64190, 64199, 64208, 64217, + 64225, 64234, 64243, 64252, + 64261, 64270, 64279, 64287, + 64296, 64305, 64314, 64323, + 64332, 64340, 64349, 64358, + 64367, 64376, 64384, 64393, + 64402, 64411, 64420, 64428, + 64437, 64446, 64455, 64463, + 64472, 64481, 64489, 64498, + 64507, 64516, 64524, 64533, + 64542, 64550, 64559, 64568, + 64576, 64585, 64594, 64602, + 64611, 64620, 64628, 64637, + 64645, 64654, 64663, 64671, + 64680, 64688, 64697, 64706, + 64714, 64723, 64731, 64740, + 64748, 64757, 64765, 64774, + 64783, 64791, 64800, 64808, + 64817, 64825, 64834, 64842, + 64851, 64859, 64867, 64876, + 64884, 64893, 64901, 64910, + 64918, 64927, 64935, 64943, + 64952, 64960, 64969, 64977, + 64985, 64994, 65002, 65011, + 65019, 65027, 65036, 65044, + 65052, 65061, 65069, 65077, + 65086, 65094, 65102, 65111, + 65119, 65127, 65135, 65144, + 65152, 65160, 65169, 65177, + 65185, 65193, 65202, 65210, + 65218, 65226, 65234, 65243, + 65251, 65259, 65267, 65275, + 65284, 65292, 65300, 65308, + 65316, 65324, 65333, 65341, + 65349, 65357, 65365, 65373, + 65381, 65390, 65398, 65406, + 65414, 65422, 65430, 65438, + 65446, 65454, 65462, 65470, + 65478, 65486, 65494, 65502, + 65510, 65518, 65526, 65535, }; const uint16_t lut_right_cos_pan[] = { - 65535, 65535, 65535, 65535, - 65535, 65535, 65535, 65535, - 65535, 65535, 65535, 65534, - 65534, 65534, 65534, 65534, - 65534, 65534, 65533, 65533, - 65533, 65533, 65533, 65532, - 65532, 65532, 65532, 65531, - 65531, 65531, 65531, 65530, - 65530, 65530, 65529, 65529, - 65529, 65528, 65528, 65528, - 65527, 65527, 65526, 65526, - 65526, 65525, 65525, 65524, - 65524, 65523, 65523, 65522, - 65522, 65521, 65521, 65520, - 65520, 65519, 65519, 65518, - 65518, 65517, 65516, 65516, - 65515, 65515, 65514, 65513, - 65513, 65512, 65511, 65511, - 65510, 65509, 65509, 65508, - 65507, 65506, 65506, 65505, - 65504, 65503, 65503, 65502, - 65501, 65500, 65499, 65499, - 65498, 65497, 65496, 65495, - 65494, 65493, 65492, 65491, - 65491, 65490, 65489, 65488, - 65487, 65486, 65485, 65484, - 65483, 65482, 65481, 65480, - 65479, 65478, 65477, 65476, - 65475, 65473, 65472, 65471, - 65470, 65469, 65468, 65467, - 65466, 65464, 65463, 65462, - 65461, 65460, 65458, 65457, - 65456, 65455, 65454, 65452, - 65451, 65450, 65448, 65447, - 65446, 65445, 65443, 65442, - 65441, 65439, 65438, 65436, - 65435, 65434, 65432, 65431, - 65429, 65428, 65427, 65425, - 65424, 65422, 65421, 65419, - 65418, 65416, 65415, 65413, - 65412, 65410, 65409, 65407, - 65405, 65404, 65402, 65401, - 65399, 65397, 65396, 65394, - 65392, 65391, 65389, 65387, - 65386, 65384, 65382, 65381, - 65379, 65377, 65375, 65374, - 65372, 65370, 65368, 65366, - 65365, 65363, 65361, 65359, - 65357, 65355, 65354, 65352, - 65350, 65348, 65346, 65344, - 65342, 65340, 65338, 65336, - 65334, 65332, 65331, 65329, - 65327, 65325, 65322, 65320, - 65318, 65316, 65314, 65312, - 65310, 65308, 65306, 65304, - 65302, 65300, 65298, 65295, - 65293, 65291, 65289, 65287, - 65285, 65282, 65280, 65278, - 65276, 65273, 65271, 65269, - 65267, 65264, 65262, 65260, - 65257, 65255, 65253, 65251, - 65248, 65246, 65243, 65241, - 65239, 65236, 65234, 65231, - 65229, 65227, 65224, 65222, - 65219, 65217, 65214, 65212, - 65209, 65207, 65204, 65202, - 65199, 65197, 65194, 65192, - 65189, 65186, 65184, 65181, - 65179, 65176, 65173, 65171, - 65168, 65165, 65163, 65160, - 65157, 65155, 65152, 65149, - 65147, 65144, 65141, 65138, - 65135, 65133, 65130, 65127, - 65124, 65122, 65119, 65116, - 65113, 65110, 65107, 65104, - 65102, 65099, 65096, 65093, - 65090, 65087, 65084, 65081, - 65078, 65075, 65072, 65069, - 65066, 65063, 65060, 65057, - 65054, 65051, 65048, 65045, - 65042, 65039, 65036, 65033, - 65030, 65026, 65023, 65020, - 65017, 65014, 65011, 65007, - 65004, 65001, 64998, 64995, - 64991, 64988, 64985, 64982, - 64978, 64975, 64972, 64969, - 64965, 64962, 64959, 64955, - 64952, 64949, 64945, 64942, - 64939, 64935, 64932, 64928, - 64925, 64921, 64918, 64915, - 64911, 64908, 64904, 64901, - 64897, 64894, 64890, 64887, - 64883, 64880, 64876, 64872, - 64869, 64865, 64862, 64858, - 64855, 64851, 64847, 64844, - 64840, 64836, 64833, 64829, - 64825, 64822, 64818, 64814, - 64811, 64807, 64803, 64799, - 64796, 64792, 64788, 64784, - 64780, 64777, 64773, 64769, - 64765, 64761, 64757, 64754, - 64750, 64746, 64742, 64738, - 64734, 64730, 64726, 64722, - 64718, 64714, 64710, 64706, - 64702, 64698, 64694, 64690, - 64686, 64682, 64678, 64674, - 64670, 64666, 64662, 64658, - 64654, 64650, 64646, 64641, - 64637, 64633, 64629, 64625, - 64621, 64616, 64612, 64608, - 64604, 64600, 64595, 64591, - 64587, 64583, 64578, 64574, - 64570, 64565, 64561, 64557, - 64552, 64548, 64544, 64539, - 64535, 64531, 64526, 64522, - 64517, 64513, 64509, 64504, - 64500, 64495, 64491, 64486, - 64482, 64477, 64473, 64468, - 64464, 64459, 64455, 64450, - 64446, 64441, 64436, 64432, - 64427, 64423, 64418, 64413, - 64409, 64404, 64399, 64395, - 64390, 64385, 64381, 64376, - 64371, 64367, 64362, 64357, - 64352, 64348, 64343, 64338, - 64333, 64329, 64324, 64319, - 64314, 64309, 64304, 64300, - 64295, 64290, 64285, 64280, - 64275, 64270, 64265, 64260, - 64255, 64251, 64246, 64241, - 64236, 64231, 64226, 64221, - 64216, 64211, 64206, 64201, - 64195, 64190, 64185, 64180, - 64175, 64170, 64165, 64160, - 64155, 64150, 64144, 64139, - 64134, 64129, 64124, 64119, - 64113, 64108, 64103, 64098, - 64092, 64087, 64082, 64077, - 64071, 64066, 64061, 64055, - 64050, 64045, 64040, 64034, - 64029, 64023, 64018, 64013, - 64007, 64002, 63996, 63991, - 63986, 63980, 63975, 63969, - 63964, 63958, 63953, 63947, - 63942, 63936, 63931, 63925, - 63920, 63914, 63909, 63903, - 63897, 63892, 63886, 63881, - 63875, 63869, 63864, 63858, - 63853, 63847, 63841, 63835, - 63830, 63824, 63818, 63813, - 63807, 63801, 63795, 63790, - 63784, 63778, 63772, 63767, - 63761, 63755, 63749, 63743, - 63737, 63732, 63726, 63720, - 63714, 63708, 63702, 63696, - 63690, 63684, 63679, 63673, - 63667, 63661, 63655, 63649, - 63643, 63637, 63631, 63625, - 63619, 63613, 63607, 63600, - 63594, 63588, 63582, 63576, - 63570, 63564, 63558, 63552, - 63546, 63539, 63533, 63527, - 63521, 63515, 63508, 63502, - 63496, 63490, 63484, 63477, - 63471, 63465, 63459, 63452, - 63446, 63440, 63433, 63427, - 63421, 63414, 63408, 63402, - 63395, 63389, 63383, 63376, - 63370, 63363, 63357, 63350, - 63344, 63338, 63331, 63325, - 63318, 63312, 63305, 63299, - 63292, 63286, 63279, 63273, - 63266, 63259, 63253, 63246, - 63240, 63233, 63227, 63220, - 63213, 63207, 63200, 63193, - 63187, 63180, 63173, 63167, - 63160, 63153, 63146, 63140, - 63133, 63126, 63120, 63113, - 63106, 63099, 63092, 63086, - 63079, 63072, 63065, 63058, - 63051, 63045, 63038, 63031, - 63024, 63017, 63010, 63003, - 62996, 62989, 62982, 62975, - 62968, 62962, 62955, 62948, - 62941, 62934, 62927, 62920, - 62912, 62905, 62898, 62891, - 62884, 62877, 62870, 62863, - 62856, 62849, 62842, 62834, - 62827, 62820, 62813, 62806, - 62799, 62791, 62784, 62777, - 62770, 62763, 62755, 62748, - 62741, 62734, 62726, 62719, - 62712, 62704, 62697, 62690, - 62682, 62675, 62668, 62660, - 62653, 62646, 62638, 62631, - 62623, 62616, 62609, 62601, - 62594, 62586, 62579, 62571, - 62564, 62556, 62549, 62541, - 62534, 62526, 62519, 62511, - 62504, 62496, 62489, 62481, - 62473, 62466, 62458, 62451, - 62443, 62435, 62428, 62420, - 62412, 62405, 62397, 62389, - 62382, 62374, 62366, 62358, - 62351, 62343, 62335, 62327, - 62320, 62312, 62304, 62296, - 62289, 62281, 62273, 62265, - 62257, 62249, 62241, 62234, - 62226, 62218, 62210, 62202, - 62194, 62186, 62178, 62170, - 62162, 62154, 62146, 62138, - 62130, 62122, 62114, 62106, - 62098, 62090, 62082, 62074, - 62066, 62058, 62050, 62042, - 62034, 62026, 62018, 62009, - 62001, 61993, 61985, 61977, - 61969, 61960, 61952, 61944, - 61936, 61928, 61919, 61911, - 61903, 61895, 61886, 61878, - 61870, 61862, 61853, 61845, - 61837, 61828, 61820, 61812, - 61803, 61795, 61786, 61778, - 61770, 61761, 61753, 61744, - 61736, 61728, 61719, 61711, - 61702, 61694, 61685, 61677, - 61668, 61660, 61651, 61643, - 61634, 61626, 61617, 61609, - 61600, 61591, 61583, 61574, - 61566, 61557, 61548, 61540, - 61531, 61522, 61514, 61505, - 61496, 61488, 61479, 61470, - 61461, 61453, 61444, 61435, - 61427, 61418, 61409, 61400, - 61391, 61383, 61374, 61365, - 61356, 61347, 61338, 61330, - 61321, 61312, 61303, 61294, - 61285, 61276, 61267, 61258, - 61250, 61241, 61232, 61223, - 61214, 61205, 61196, 61187, - 61178, 61169, 61160, 61151, - 61142, 61133, 61123, 61114, - 61105, 61096, 61087, 61078, - 61069, 61060, 61051, 61041, - 61032, 61023, 61014, 61005, - 60996, 60986, 60977, 60968, - 60959, 60950, 60940, 60931, - 60922, 60913, 60903, 60894, - 60885, 60875, 60866, 60857, - 60847, 60838, 60829, 60819, - 60810, 60801, 60791, 60782, - 60772, 60763, 60754, 60744, - 60735, 60725, 60716, 60706, - 60697, 60687, 60678, 60668, - 60659, 60649, 60640, 60630, - 60621, 60611, 60602, 60592, - 60582, 60573, 60563, 60554, - 60544, 60534, 60525, 60515, - 60505, 60496, 60486, 60476, - 60467, 60457, 60447, 60438, - 60428, 60418, 60408, 60399, - 60389, 60379, 60369, 60360, - 60350, 60340, 60330, 60320, - 60311, 60301, 60291, 60281, - 60271, 60261, 60251, 60241, - 60232, 60222, 60212, 60202, - 60192, 60182, 60172, 60162, - 60152, 60142, 60132, 60122, - 60112, 60102, 60092, 60082, - 60072, 60062, 60052, 60042, - 60032, 60022, 60011, 60001, - 59991, 59981, 59971, 59961, - 59951, 59941, 59930, 59920, - 59910, 59900, 59890, 59879, - 59869, 59859, 59849, 59838, - 59828, 59818, 59808, 59797, - 59787, 59777, 59767, 59756, - 59746, 59736, 59725, 59715, - 59704, 59694, 59684, 59673, - 59663, 59653, 59642, 59632, - 59621, 59611, 59600, 59590, - 59579, 59569, 59559, 59548, - 59538, 59527, 59516, 59506, - 59495, 59485, 59474, 59464, - 59453, 59443, 59432, 59421, - 59411, 59400, 59390, 59379, - 59368, 59358, 59347, 59336, - 59326, 59315, 59304, 59294, - 59283, 59272, 59261, 59251, - 59240, 59229, 59218, 59208, - 59197, 59186, 59175, 59164, - 59154, 59143, 59132, 59121, - 59110, 59099, 59089, 59078, - 59067, 59056, 59045, 59034, - 59023, 59012, 59001, 58990, - 58979, 58968, 58957, 58946, - 58935, 58924, 58913, 58902, - 58891, 58880, 58869, 58858, - 58847, 58836, 58825, 58814, - 58803, 58792, 58781, 58770, - 58758, 58747, 58736, 58725, - 58714, 58703, 58692, 58680, - 58669, 58658, 58647, 58635, - 58624, 58613, 58602, 58591, - 58579, 58568, 58557, 58545, - 58534, 58523, 58511, 58500, - 58489, 58477, 58466, 58455, - 58443, 58432, 58421, 58409, - 58398, 58386, 58375, 58364, - 58352, 58341, 58329, 58318, - 58306, 58295, 58283, 58272, - 58260, 58249, 58237, 58226, - 58214, 58203, 58191, 58180, - 58168, 58156, 58145, 58133, - 58122, 58110, 58098, 58087, - 58075, 58063, 58052, 58040, - 58028, 58017, 58005, 57993, - 57982, 57970, 57958, 57946, - 57935, 57923, 57911, 57899, - 57888, 57876, 57864, 57852, - 57840, 57829, 57817, 57805, - 57793, 57781, 57769, 57757, - 57746, 57734, 57722, 57710, - 57698, 57686, 57674, 57662, - 57650, 57638, 57626, 57614, - 57602, 57590, 57578, 57566, - 57554, 57542, 57530, 57518, - 57506, 57494, 57482, 57470, - 57458, 57446, 57434, 57421, - 57409, 57397, 57385, 57373, - 57361, 57349, 57336, 57324, - 57312, 57300, 57288, 57275, - 57263, 57251, 57239, 57227, - 57214, 57202, 57190, 57177, - 57165, 57153, 57141, 57128, - 57116, 57104, 57091, 57079, - 57067, 57054, 57042, 57029, - 57017, 57005, 56992, 56980, - 56967, 56955, 56943, 56930, - 56918, 56905, 56893, 56880, - 56868, 56855, 56843, 56830, - 56818, 56805, 56793, 56780, - 56768, 56755, 56742, 56730, - 56717, 56705, 56692, 56679, - 56667, 56654, 56642, 56629, - 56616, 56604, 56591, 56578, - 56565, 56553, 56540, 56527, - 56515, 56502, 56489, 56476, - 56464, 56451, 56438, 56425, - 56413, 56400, 56387, 56374, - 56361, 56348, 56336, 56323, - 56310, 56297, 56284, 56271, - 56258, 56246, 56233, 56220, - 56207, 56194, 56181, 56168, - 56155, 56142, 56129, 56116, - 56103, 56090, 56077, 56064, - 56051, 56038, 56025, 56012, - 55999, 55986, 55973, 55960, - 55947, 55934, 55920, 55907, - 55894, 55881, 55868, 55855, - 55842, 55828, 55815, 55802, - 55789, 55776, 55763, 55749, - 55736, 55723, 55710, 55696, - 55683, 55670, 55657, 55643, - 55630, 55617, 55603, 55590, - 55577, 55564, 55550, 55537, - 55523, 55510, 55497, 55483, - 55470, 55457, 55443, 55430, - 55416, 55403, 55390, 55376, - 55363, 55349, 55336, 55322, - 55309, 55295, 55282, 55268, - 55255, 55241, 55228, 55214, - 55201, 55187, 55174, 55160, - 55146, 55133, 55119, 55106, - 55092, 55078, 55065, 55051, - 55037, 55024, 55010, 54996, - 54983, 54969, 54955, 54942, - 54928, 54914, 54901, 54887, - 54873, 54859, 54846, 54832, - 54818, 54804, 54791, 54777, - 54763, 54749, 54735, 54721, - 54708, 54694, 54680, 54666, - 54652, 54638, 54624, 54611, - 54597, 54583, 54569, 54555, - 54541, 54527, 54513, 54499, - 54485, 54471, 54457, 54443, - 54429, 54415, 54401, 54387, - 54373, 54359, 54345, 54331, - 54317, 54303, 54289, 54275, - 54261, 54246, 54232, 54218, - 54204, 54190, 54176, 54162, - 54148, 54133, 54119, 54105, - 54091, 54077, 54062, 54048, - 54034, 54020, 54006, 53991, - 53977, 53963, 53949, 53934, - 53920, 53906, 53891, 53877, - 53863, 53848, 53834, 53820, - 53805, 53791, 53777, 53762, - 53748, 53734, 53719, 53705, - 53690, 53676, 53661, 53647, - 53633, 53618, 53604, 53589, - 53575, 53560, 53546, 53531, - 53517, 53502, 53488, 53473, - 53459, 53444, 53430, 53415, - 53400, 53386, 53371, 53357, - 53342, 53328, 53313, 53298, - 53284, 53269, 53254, 53240, - 53225, 53210, 53196, 53181, - 53166, 53152, 53137, 53122, - 53107, 53093, 53078, 53063, - 53048, 53034, 53019, 53004, - 52989, 52975, 52960, 52945, - 52930, 52915, 52900, 52886, - 52871, 52856, 52841, 52826, - 52811, 52796, 52782, 52767, - 52752, 52737, 52722, 52707, - 52692, 52677, 52662, 52647, - 52632, 52617, 52602, 52587, - 52572, 52557, 52542, 52527, - 52512, 52497, 52482, 52467, - 52452, 52437, 52422, 52407, - 52391, 52376, 52361, 52346, - 52331, 52316, 52301, 52286, - 52270, 52255, 52240, 52225, - 52210, 52195, 52179, 52164, - 52149, 52134, 52118, 52103, - 52088, 52073, 52057, 52042, - 52027, 52012, 51996, 51981, - 51966, 51950, 51935, 51920, - 51904, 51889, 51874, 51858, - 51843, 51827, 51812, 51797, - 51781, 51766, 51750, 51735, - 51720, 51704, 51689, 51673, - 51658, 51642, 51627, 51611, - 51596, 51580, 51565, 51549, - 51534, 51518, 51503, 51487, - 51472, 51456, 51440, 51425, - 51409, 51394, 51378, 51362, - 51347, 51331, 51316, 51300, - 51284, 51269, 51253, 51237, - 51222, 51206, 51190, 51175, - 51159, 51143, 51127, 51112, - 51096, 51080, 51064, 51049, - 51033, 51017, 51001, 50986, - 50970, 50954, 50938, 50922, - 50907, 50891, 50875, 50859, - 50843, 50827, 50811, 50796, - 50780, 50764, 50748, 50732, - 50716, 50700, 50684, 50668, - 50652, 50636, 50620, 50604, - 50588, 50572, 50556, 50540, - 50524, 50508, 50492, 50476, - 50460, 50444, 50428, 50412, - 50396, 50380, 50364, 50348, - 50332, 50316, 50300, 50283, - 50267, 50251, 50235, 50219, - 50203, 50187, 50170, 50154, - 50138, 50122, 50106, 50089, - 50073, 50057, 50041, 50025, - 50008, 49992, 49976, 49960, - 49943, 49927, 49911, 49894, - 49878, 49862, 49845, 49829, - 49813, 49796, 49780, 49764, - 49747, 49731, 49715, 49698, - 49682, 49665, 49649, 49633, - 49616, 49600, 49583, 49567, - 49550, 49534, 49518, 49501, - 49485, 49468, 49452, 49435, - 49419, 49402, 49386, 49369, - 49353, 49336, 49319, 49303, - 49286, 49270, 49253, 49237, - 49220, 49203, 49187, 49170, - 49154, 49137, 49120, 49104, - 49087, 49070, 49054, 49037, - 49020, 49004, 48987, 48970, - 48954, 48937, 48920, 48903, - 48887, 48870, 48853, 48836, - 48820, 48803, 48786, 48769, - 48752, 48736, 48719, 48702, - 48685, 48668, 48652, 48635, - 48618, 48601, 48584, 48567, - 48550, 48533, 48517, 48500, - 48483, 48466, 48449, 48432, - 48415, 48398, 48381, 48364, - 48347, 48330, 48313, 48296, - 48279, 48262, 48245, 48228, - 48211, 48194, 48177, 48160, - 48143, 48126, 48109, 48092, - 48075, 48058, 48041, 48023, - 48006, 47989, 47972, 47955, - 47938, 47921, 47904, 47886, - 47869, 47852, 47835, 47818, - 47800, 47783, 47766, 47749, - 47732, 47714, 47697, 47680, - 47663, 47645, 47628, 47611, - 47594, 47576, 47559, 47542, - 47524, 47507, 47490, 47472, - 47455, 47438, 47420, 47403, - 47386, 47368, 47351, 47334, - 47316, 47299, 47281, 47264, - 47247, 47229, 47212, 47194, - 47177, 47159, 47142, 47124, - 47107, 47090, 47072, 47055, - 47037, 47020, 47002, 46984, - 46967, 46949, 46932, 46914, - 46897, 46879, 46862, 46844, - 46826, 46809, 46791, 46774, - 46756, 46738, 46721, 46703, - 46686, 46668, 46650, 46633, - 46615, 46597, 46580, 46562, - 46544, 46527, 46509, 46491, - 46473, 46456, 46438, 46420, - 46402, 46385, 46367, 46349, - 46331, 46314, 46296, 46278, - 46260, 46242, 46225, 46207, - 46189, 46171, 46153, 46135, - 46118, 46100, 46082, 46064, - 46046, 46028, 46010, 45992, - 45974, 45956, 45939, 45921, - 45903, 45885, 45867, 45849, - 45831, 45813, 45795, 45777, - 45759, 45741, 45723, 45705, - 45687, 45669, 45651, 45633, - 45615, 45597, 45579, 45561, - 45543, 45524, 45506, 45488, - 45470, 45452, 45434, 45416, - 45398, 45380, 45361, 45343, - 45325, 45307, 45289, 45271, - 45252, 45234, 45216, 45198, - 45180, 45161, 45143, 45125, - 45107, 45089, 45070, 45052, - 45034, 45015, 44997, 44979, - 44961, 44942, 44924, 44906, - 44887, 44869, 44851, 44832, - 44814, 44796, 44777, 44759, - 44741, 44722, 44704, 44686, - 44667, 44649, 44630, 44612, - 44594, 44575, 44557, 44538, - 44520, 44501, 44483, 44464, - 44446, 44427, 44409, 44391, - 44372, 44354, 44335, 44316, - 44298, 44279, 44261, 44242, - 44224, 44205, 44187, 44168, - 44150, 44131, 44112, 44094, - 44075, 44057, 44038, 44019, - 44001, 43982, 43963, 43945, - 43926, 43907, 43889, 43870, - 43851, 43833, 43814, 43795, - 43777, 43758, 43739, 43721, - 43702, 43683, 43664, 43646, - 43627, 43608, 43589, 43571, - 43552, 43533, 43514, 43495, - 43477, 43458, 43439, 43420, - 43401, 43382, 43364, 43345, - 43326, 43307, 43288, 43269, - 43250, 43231, 43213, 43194, - 43175, 43156, 43137, 43118, - 43099, 43080, 43061, 43042, - 43023, 43004, 42985, 42966, - 42947, 42928, 42909, 42890, - 42871, 42852, 42833, 42814, - 42795, 42776, 42757, 42738, - 42719, 42700, 42681, 42662, - 42643, 42624, 42605, 42585, - 42566, 42547, 42528, 42509, - 42490, 42471, 42452, 42432, - 42413, 42394, 42375, 42356, - 42337, 42317, 42298, 42279, - 42260, 42241, 42221, 42202, - 42183, 42164, 42144, 42125, - 42106, 42087, 42067, 42048, - 42029, 42009, 41990, 41971, - 41952, 41932, 41913, 41894, - 41874, 41855, 41836, 41816, - 41797, 41777, 41758, 41739, - 41719, 41700, 41681, 41661, - 41642, 41622, 41603, 41583, - 41564, 41545, 41525, 41506, - 41486, 41467, 41447, 41428, - 41408, 41389, 41369, 41350, - 41330, 41311, 41291, 41272, - 41252, 41233, 41213, 41194, - 41174, 41155, 41135, 41115, - 41096, 41076, 41057, 41037, - 41017, 40998, 40978, 40959, - 40939, 40919, 40900, 40880, - 40860, 40841, 40821, 40801, - 40782, 40762, 40742, 40723, - 40703, 40683, 40664, 40644, - 40624, 40604, 40585, 40565, - 40545, 40525, 40506, 40486, - 40466, 40446, 40427, 40407, - 40387, 40367, 40347, 40328, - 40308, 40288, 40268, 40248, - 40228, 40209, 40189, 40169, - 40149, 40129, 40109, 40089, - 40069, 40050, 40030, 40010, - 39990, 39970, 39950, 39930, - 39910, 39890, 39870, 39850, - 39830, 39810, 39790, 39770, - 39750, 39730, 39710, 39690, - 39670, 39650, 39630, 39610, - 39590, 39570, 39550, 39530, - 39510, 39490, 39470, 39450, - 39430, 39410, 39390, 39370, - 39350, 39329, 39309, 39289, - 39269, 39249, 39229, 39209, - 39189, 39168, 39148, 39128, - 39108, 39088, 39068, 39047, - 39027, 39007, 38987, 38967, - 38946, 38926, 38906, 38886, - 38865, 38845, 38825, 38805, - 38784, 38764, 38744, 38724, - 38703, 38683, 38663, 38642, - 38622, 38602, 38581, 38561, - 38541, 38521, 38500, 38480, - 38459, 38439, 38419, 38398, - 38378, 38358, 38337, 38317, - 38296, 38276, 38256, 38235, - 38215, 38194, 38174, 38154, - 38133, 38113, 38092, 38072, - 38051, 38031, 38010, 37990, - 37969, 37949, 37928, 37908, - 37887, 37867, 37846, 37826, - 37805, 37785, 37764, 37744, - 37723, 37703, 37682, 37661, - 37641, 37620, 37600, 37579, - 37558, 37538, 37517, 37497, - 37476, 37455, 37435, 37414, - 37393, 37373, 37352, 37331, - 37311, 37290, 37269, 37249, - 37228, 37207, 37187, 37166, - 37145, 37125, 37104, 37083, - 37062, 37042, 37021, 37000, - 36979, 36959, 36938, 36917, - 36896, 36876, 36855, 36834, - 36813, 36792, 36772, 36751, - 36730, 36709, 36688, 36668, - 36647, 36626, 36605, 36584, - 36563, 36542, 36522, 36501, - 36480, 36459, 36438, 36417, - 36396, 36375, 36354, 36333, - 36313, 36292, 36271, 36250, - 36229, 36208, 36187, 36166, - 36145, 36124, 36103, 36082, - 36061, 36040, 36019, 35998, - 35977, 35956, 35935, 35914, - 35893, 35872, 35851, 35830, - 35809, 35788, 35767, 35746, - 35725, 35703, 35682, 35661, - 35640, 35619, 35598, 35577, - 35556, 35535, 35514, 35492, - 35471, 35450, 35429, 35408, - 35387, 35366, 35344, 35323, - 35302, 35281, 35260, 35238, - 35217, 35196, 35175, 35154, - 35132, 35111, 35090, 35069, - 35047, 35026, 35005, 34984, - 34962, 34941, 34920, 34899, - 34877, 34856, 34835, 34813, - 34792, 34771, 34750, 34728, - 34707, 34686, 34664, 34643, - 34622, 34600, 34579, 34558, - 34536, 34515, 34493, 34472, - 34451, 34429, 34408, 34387, - 34365, 34344, 34322, 34301, - 34279, 34258, 34237, 34215, - 34194, 34172, 34151, 34129, - 34108, 34086, 34065, 34043, - 34022, 34000, 33979, 33958, - 33936, 33914, 33893, 33871, - 33850, 33828, 33807, 33785, - 33764, 33742, 33721, 33699, - 33678, 33656, 33634, 33613, - 33591, 33570, 33548, 33526, - 33505, 33483, 33462, 33440, - 33418, 33397, 33375, 33354, - 33332, 33310, 33289, 33267, - 33245, 33224, 33202, 33180, - 33159, 33137, 33115, 33094, - 33072, 33050, 33028, 33007, - 32985, 32963, 32942, 32920, - 32898, 32876, 32855, 32833, - 32811, 32789, 32768, 32746, - 32724, 32702, 32680, 32659, - 32637, 32615, 32593, 32571, - 32550, 32528, 32506, 32484, - 32462, 32440, 32419, 32397, - 32375, 32353, 32331, 32309, - 32287, 32266, 32244, 32222, - 32200, 32178, 32156, 32134, - 32112, 32090, 32068, 32046, - 32025, 32003, 31981, 31959, - 31937, 31915, 31893, 31871, - 31849, 31827, 31805, 31783, - 31761, 31739, 31717, 31695, - 31673, 31651, 31629, 31607, - 31585, 31563, 31541, 31519, - 31497, 31475, 31453, 31431, - 31409, 31387, 31364, 31342, - 31320, 31298, 31276, 31254, - 31232, 31210, 31188, 31166, - 31143, 31121, 31099, 31077, - 31055, 31033, 31011, 30989, - 30966, 30944, 30922, 30900, - 30878, 30856, 30833, 30811, - 30789, 30767, 30745, 30722, - 30700, 30678, 30656, 30634, - 30611, 30589, 30567, 30545, - 30522, 30500, 30478, 30456, - 30433, 30411, 30389, 30367, - 30344, 30322, 30300, 30277, - 30255, 30233, 30211, 30188, - 30166, 30144, 30121, 30099, - 30077, 30054, 30032, 30010, - 29987, 29965, 29942, 29920, - 29898, 29875, 29853, 29831, - 29808, 29786, 29763, 29741, - 29719, 29696, 29674, 29651, - 29629, 29607, 29584, 29562, - 29539, 29517, 29494, 29472, - 29449, 29427, 29405, 29382, - 29360, 29337, 29315, 29292, - 29270, 29247, 29225, 29202, - 29180, 29157, 29135, 29112, - 29090, 29067, 29045, 29022, - 28999, 28977, 28954, 28932, - 28909, 28887, 28864, 28842, - 28819, 28796, 28774, 28751, - 28729, 28706, 28683, 28661, - 28638, 28616, 28593, 28570, - 28548, 28525, 28502, 28480, - 28457, 28435, 28412, 28389, - 28367, 28344, 28321, 28299, - 28276, 28253, 28231, 28208, - 28185, 28162, 28140, 28117, - 28094, 28072, 28049, 28026, - 28003, 27981, 27958, 27935, - 27913, 27890, 27867, 27844, - 27822, 27799, 27776, 27753, - 27730, 27708, 27685, 27662, - 27639, 27617, 27594, 27571, - 27548, 27525, 27502, 27480, - 27457, 27434, 27411, 27388, - 27366, 27343, 27320, 27297, - 27274, 27251, 27228, 27206, - 27183, 27160, 27137, 27114, - 27091, 27068, 27045, 27022, - 27000, 26977, 26954, 26931, - 26908, 26885, 26862, 26839, - 26816, 26793, 26770, 26747, - 26724, 26701, 26678, 26655, - 26633, 26610, 26587, 26564, - 26541, 26518, 26495, 26472, - 26449, 26426, 26403, 26380, - 26357, 26334, 26311, 26288, - 26265, 26241, 26218, 26195, - 26172, 26149, 26126, 26103, - 26080, 26057, 26034, 26011, - 25988, 25965, 25942, 25919, - 25896, 25872, 25849, 25826, - 25803, 25780, 25757, 25734, - 25711, 25688, 25664, 25641, - 25618, 25595, 25572, 25549, - 25526, 25502, 25479, 25456, - 25433, 25410, 25387, 25363, - 25340, 25317, 25294, 25271, - 25247, 25224, 25201, 25178, - 25155, 25131, 25108, 25085, - 25062, 25039, 25015, 24992, - 24969, 24946, 24922, 24899, - 24876, 24853, 24829, 24806, - 24783, 24759, 24736, 24713, - 24690, 24666, 24643, 24620, - 24596, 24573, 24550, 24527, - 24503, 24480, 24457, 24433, - 24410, 24387, 24363, 24340, - 24317, 24293, 24270, 24247, - 24223, 24200, 24176, 24153, - 24130, 24106, 24083, 24060, - 24036, 24013, 23989, 23966, - 23943, 23919, 23896, 23872, - 23849, 23826, 23802, 23779, - 23755, 23732, 23708, 23685, - 23662, 23638, 23615, 23591, - 23568, 23544, 23521, 23497, - 23474, 23450, 23427, 23403, - 23380, 23357, 23333, 23310, - 23286, 23263, 23239, 23216, - 23192, 23169, 23145, 23121, - 23098, 23074, 23051, 23027, - 23004, 22980, 22957, 22933, - 22910, 22886, 22863, 22839, - 22815, 22792, 22768, 22745, - 22721, 22698, 22674, 22650, - 22627, 22603, 22580, 22556, - 22532, 22509, 22485, 22462, - 22438, 22414, 22391, 22367, - 22343, 22320, 22296, 22272, - 22249, 22225, 22202, 22178, - 22154, 22131, 22107, 22083, - 22060, 22036, 22012, 21989, - 21965, 21941, 21917, 21894, - 21870, 21846, 21823, 21799, - 21775, 21752, 21728, 21704, - 21680, 21657, 21633, 21609, - 21586, 21562, 21538, 21514, - 21491, 21467, 21443, 21419, - 21396, 21372, 21348, 21324, - 21300, 21277, 21253, 21229, - 21205, 21182, 21158, 21134, - 21110, 21086, 21063, 21039, - 21015, 20991, 20967, 20943, - 20920, 20896, 20872, 20848, - 20824, 20801, 20777, 20753, - 20729, 20705, 20681, 20657, - 20634, 20610, 20586, 20562, - 20538, 20514, 20490, 20466, - 20443, 20419, 20395, 20371, - 20347, 20323, 20299, 20275, - 20251, 20228, 20204, 20180, - 20156, 20132, 20108, 20084, - 20060, 20036, 20012, 19988, - 19964, 19940, 19916, 19892, - 19869, 19845, 19821, 19797, - 19773, 19749, 19725, 19701, - 19677, 19653, 19629, 19605, - 19581, 19557, 19533, 19509, - 19485, 19461, 19437, 19413, - 19389, 19365, 19341, 19317, - 19293, 19269, 19245, 19221, - 19197, 19173, 19149, 19125, - 19100, 19076, 19052, 19028, - 19004, 18980, 18956, 18932, - 18908, 18884, 18860, 18836, - 18812, 18788, 18764, 18739, - 18715, 18691, 18667, 18643, - 18619, 18595, 18571, 18547, - 18523, 18498, 18474, 18450, - 18426, 18402, 18378, 18354, - 18330, 18305, 18281, 18257, - 18233, 18209, 18185, 18161, - 18136, 18112, 18088, 18064, - 18040, 18016, 17991, 17967, - 17943, 17919, 17895, 17870, - 17846, 17822, 17798, 17774, - 17750, 17725, 17701, 17677, - 17653, 17629, 17604, 17580, - 17556, 17532, 17507, 17483, - 17459, 17435, 17410, 17386, - 17362, 17338, 17314, 17289, - 17265, 17241, 17217, 17192, - 17168, 17144, 17119, 17095, - 17071, 17047, 17022, 16998, - 16974, 16950, 16925, 16901, - 16877, 16852, 16828, 16804, - 16780, 16755, 16731, 16707, - 16682, 16658, 16634, 16609, - 16585, 16561, 16536, 16512, - 16488, 16463, 16439, 16415, - 16390, 16366, 16342, 16317, - 16293, 16269, 16244, 16220, - 16196, 16171, 16147, 16123, - 16098, 16074, 16049, 16025, - 16001, 15976, 15952, 15928, - 15903, 15879, 15854, 15830, - 15806, 15781, 15757, 15732, - 15708, 15684, 15659, 15635, - 15610, 15586, 15561, 15537, - 15513, 15488, 15464, 15439, - 15415, 15390, 15366, 15342, - 15317, 15293, 15268, 15244, - 15219, 15195, 15170, 15146, - 15122, 15097, 15073, 15048, - 15024, 14999, 14975, 14950, - 14926, 14901, 14877, 14852, - 14828, 14803, 14779, 14754, - 14730, 14705, 14681, 14656, - 14632, 14607, 14583, 14558, - 14534, 14509, 14485, 14460, - 14436, 14411, 14387, 14362, - 14338, 14313, 14289, 14264, - 14240, 14215, 14191, 14166, - 14141, 14117, 14092, 14068, - 14043, 14019, 13994, 13970, - 13945, 13920, 13896, 13871, - 13847, 13822, 13798, 13773, - 13748, 13724, 13699, 13675, - 13650, 13625, 13601, 13576, - 13552, 13527, 13503, 13478, - 13453, 13429, 13404, 13380, - 13355, 13330, 13306, 13281, - 13256, 13232, 13207, 13183, - 13158, 13133, 13109, 13084, - 13059, 13035, 13010, 12986, - 12961, 12936, 12912, 12887, - 12862, 12838, 12813, 12788, - 12764, 12739, 12714, 12690, - 12665, 12640, 12616, 12591, - 12566, 12542, 12517, 12492, - 12468, 12443, 12418, 12394, - 12369, 12344, 12320, 12295, - 12270, 12245, 12221, 12196, - 12171, 12147, 12122, 12097, - 12073, 12048, 12023, 11998, - 11974, 11949, 11924, 11900, - 11875, 11850, 11825, 11801, - 11776, 11751, 11726, 11702, - 11677, 11652, 11628, 11603, - 11578, 11553, 11529, 11504, - 11479, 11454, 11430, 11405, - 11380, 11355, 11331, 11306, - 11281, 11256, 11231, 11207, - 11182, 11157, 11132, 11108, - 11083, 11058, 11033, 11008, - 10984, 10959, 10934, 10909, - 10885, 10860, 10835, 10810, - 10785, 10761, 10736, 10711, - 10686, 10661, 10637, 10612, - 10587, 10562, 10537, 10513, - 10488, 10463, 10438, 10413, - 10388, 10364, 10339, 10314, - 10289, 10264, 10240, 10215, - 10190, 10165, 10140, 10115, - 10091, 10066, 10041, 10016, - 9991, 9966, 9941, 9917, - 9892, 9867, 9842, 9817, - 9792, 9767, 9743, 9718, - 9693, 9668, 9643, 9618, - 9593, 9569, 9544, 9519, - 9494, 9469, 9444, 9419, - 9394, 9370, 9345, 9320, - 9295, 9270, 9245, 9220, - 9195, 9170, 9146, 9121, - 9096, 9071, 9046, 9021, - 8996, 8971, 8946, 8922, - 8897, 8872, 8847, 8822, - 8797, 8772, 8747, 8722, - 8697, 8672, 8647, 8623, - 8598, 8573, 8548, 8523, - 8498, 8473, 8448, 8423, - 8398, 8373, 8348, 8323, - 8299, 8274, 8249, 8224, - 8199, 8174, 8149, 8124, - 8099, 8074, 8049, 8024, - 7999, 7974, 7949, 7924, - 7899, 7874, 7849, 7825, - 7800, 7775, 7750, 7725, - 7700, 7675, 7650, 7625, - 7600, 7575, 7550, 7525, - 7500, 7475, 7450, 7425, - 7400, 7375, 7350, 7325, - 7300, 7275, 7250, 7225, - 7200, 7175, 7150, 7125, - 7100, 7075, 7050, 7025, - 7000, 6975, 6950, 6925, - 6900, 6875, 6850, 6825, - 6800, 6775, 6750, 6725, - 6700, 6675, 6650, 6625, - 6600, 6575, 6550, 6525, - 6500, 6475, 6450, 6425, - 6400, 6375, 6350, 6325, - 6300, 6275, 6250, 6225, - 6200, 6175, 6150, 6125, - 6100, 6075, 6050, 6025, - 6000, 5975, 5950, 5925, - 5900, 5875, 5849, 5824, - 5799, 5774, 5749, 5724, - 5699, 5674, 5649, 5624, - 5599, 5574, 5549, 5524, - 5499, 5474, 5449, 5424, - 5399, 5374, 5349, 5323, - 5298, 5273, 5248, 5223, - 5198, 5173, 5148, 5123, - 5098, 5073, 5048, 5023, - 4998, 4973, 4948, 4923, - 4897, 4872, 4847, 4822, - 4797, 4772, 4747, 4722, - 4697, 4672, 4647, 4622, - 4597, 4571, 4546, 4521, - 4496, 4471, 4446, 4421, - 4396, 4371, 4346, 4321, - 4296, 4271, 4245, 4220, - 4195, 4170, 4145, 4120, - 4095, 4070, 4045, 4020, - 3995, 3969, 3944, 3919, - 3894, 3869, 3844, 3819, - 3794, 3769, 3744, 3718, - 3693, 3668, 3643, 3618, - 3593, 3568, 3543, 3518, - 3493, 3467, 3442, 3417, - 3392, 3367, 3342, 3317, - 3292, 3267, 3242, 3216, - 3191, 3166, 3141, 3116, - 3091, 3066, 3041, 3016, - 2990, 2965, 2940, 2915, - 2890, 2865, 2840, 2815, - 2790, 2764, 2739, 2714, - 2689, 2664, 2639, 2614, - 2589, 2563, 2538, 2513, - 2488, 2463, 2438, 2413, - 2388, 2363, 2337, 2312, - 2287, 2262, 2237, 2212, - 2187, 2162, 2136, 2111, - 2086, 2061, 2036, 2011, - 1986, 1961, 1935, 1910, - 1885, 1860, 1835, 1810, - 1785, 1759, 1734, 1709, - 1684, 1659, 1634, 1609, - 1584, 1558, 1533, 1508, - 1483, 1458, 1433, 1408, - 1383, 1357, 1332, 1307, - 1282, 1257, 1232, 1207, - 1181, 1156, 1131, 1106, - 1081, 1056, 1031, 1006, - 980, 955, 930, 905, - 880, 855, 830, 804, - 779, 754, 729, 704, - 679, 654, 628, 603, - 578, 553, 528, 503, - 478, 452, 427, 402, - 377, 352, 327, 302, - 277, 251, 226, 201, - 176, 151, 126, 101, - 75, 50, 25, 0, + 65535, 65526, 65518, 65510, + 65502, 65494, 65486, 65478, + 65470, 65462, 65454, 65446, + 65438, 65430, 65422, 65414, + 65406, 65398, 65390, 65381, + 65373, 65365, 65357, 65349, + 65341, 65333, 65324, 65316, + 65308, 65300, 65292, 65284, + 65275, 65267, 65259, 65251, + 65243, 65234, 65226, 65218, + 65210, 65202, 65193, 65185, + 65177, 65169, 65160, 65152, + 65144, 65135, 65127, 65119, + 65111, 65102, 65094, 65086, + 65077, 65069, 65061, 65052, + 65044, 65036, 65027, 65019, + 65011, 65002, 64994, 64985, + 64977, 64969, 64960, 64952, + 64943, 64935, 64927, 64918, + 64910, 64901, 64893, 64884, + 64876, 64867, 64859, 64851, + 64842, 64834, 64825, 64817, + 64808, 64800, 64791, 64783, + 64774, 64765, 64757, 64748, + 64740, 64731, 64723, 64714, + 64706, 64697, 64688, 64680, + 64671, 64663, 64654, 64645, + 64637, 64628, 64620, 64611, + 64602, 64594, 64585, 64576, + 64568, 64559, 64550, 64542, + 64533, 64524, 64516, 64507, + 64498, 64489, 64481, 64472, + 64463, 64455, 64446, 64437, + 64428, 64420, 64411, 64402, + 64393, 64384, 64376, 64367, + 64358, 64349, 64340, 64332, + 64323, 64314, 64305, 64296, + 64287, 64279, 64270, 64261, + 64252, 64243, 64234, 64225, + 64217, 64208, 64199, 64190, + 64181, 64172, 64163, 64154, + 64145, 64136, 64127, 64118, + 64109, 64101, 64092, 64083, + 64074, 64065, 64056, 64047, + 64038, 64029, 64020, 64011, + 64002, 63993, 63984, 63975, + 63965, 63956, 63947, 63938, + 63929, 63920, 63911, 63902, + 63893, 63884, 63875, 63866, + 63857, 63847, 63838, 63829, + 63820, 63811, 63802, 63793, + 63783, 63774, 63765, 63756, + 63747, 63738, 63728, 63719, + 63710, 63701, 63692, 63682, + 63673, 63664, 63655, 63646, + 63636, 63627, 63618, 63609, + 63599, 63590, 63581, 63571, + 63562, 63553, 63544, 63534, + 63525, 63516, 63506, 63497, + 63488, 63478, 63469, 63460, + 63450, 63441, 63432, 63422, + 63413, 63403, 63394, 63385, + 63375, 63366, 63356, 63347, + 63338, 63328, 63319, 63309, + 63300, 63290, 63281, 63272, + 63262, 63253, 63243, 63234, + 63224, 63215, 63205, 63196, + 63186, 63177, 63167, 63158, + 63148, 63139, 63129, 63120, + 63110, 63100, 63091, 63081, + 63072, 63062, 63053, 63043, + 63033, 63024, 63014, 63005, + 62995, 62985, 62976, 62966, + 62957, 62947, 62937, 62928, + 62918, 62908, 62899, 62889, + 62879, 62870, 62860, 62850, + 62841, 62831, 62821, 62811, + 62802, 62792, 62782, 62773, + 62763, 62753, 62743, 62734, + 62724, 62714, 62704, 62694, + 62685, 62675, 62665, 62655, + 62645, 62636, 62626, 62616, + 62606, 62596, 62587, 62577, + 62567, 62557, 62547, 62537, + 62527, 62518, 62508, 62498, + 62488, 62478, 62468, 62458, + 62448, 62438, 62428, 62419, + 62409, 62399, 62389, 62379, + 62369, 62359, 62349, 62339, + 62329, 62319, 62309, 62299, + 62289, 62279, 62269, 62259, + 62249, 62239, 62229, 62219, + 62209, 62199, 62189, 62179, + 62169, 62159, 62148, 62138, + 62128, 62118, 62108, 62098, + 62088, 62078, 62068, 62058, + 62047, 62037, 62027, 62017, + 62007, 61997, 61987, 61976, + 61966, 61956, 61946, 61936, + 61926, 61915, 61905, 61895, + 61885, 61875, 61864, 61854, + 61844, 61834, 61823, 61813, + 61803, 61793, 61782, 61772, + 61762, 61752, 61741, 61731, + 61721, 61710, 61700, 61690, + 61680, 61669, 61659, 61649, + 61638, 61628, 61618, 61607, + 61597, 61587, 61576, 61566, + 61555, 61545, 61535, 61524, + 61514, 61503, 61493, 61483, + 61472, 61462, 61451, 61441, + 61430, 61420, 61410, 61399, + 61389, 61378, 61368, 61357, + 61347, 61336, 61326, 61315, + 61305, 61294, 61284, 61273, + 61263, 61252, 61242, 61231, + 61221, 61210, 61200, 61189, + 61178, 61168, 61157, 61147, + 61136, 61126, 61115, 61104, + 61094, 61083, 61073, 61062, + 61051, 61041, 61030, 61019, + 61009, 60998, 60987, 60977, + 60966, 60956, 60945, 60934, + 60923, 60913, 60902, 60891, + 60881, 60870, 60859, 60849, + 60838, 60827, 60816, 60806, + 60795, 60784, 60773, 60763, + 60752, 60741, 60730, 60720, + 60709, 60698, 60687, 60676, + 60666, 60655, 60644, 60633, + 60622, 60611, 60601, 60590, + 60579, 60568, 60557, 60546, + 60535, 60525, 60514, 60503, + 60492, 60481, 60470, 60459, + 60448, 60437, 60427, 60416, + 60405, 60394, 60383, 60372, + 60361, 60350, 60339, 60328, + 60317, 60306, 60295, 60284, + 60273, 60262, 60251, 60240, + 60229, 60218, 60207, 60196, + 60185, 60174, 60163, 60152, + 60141, 60130, 60119, 60108, + 60097, 60086, 60074, 60063, + 60052, 60041, 60030, 60019, + 60008, 59997, 59986, 59975, + 59963, 59952, 59941, 59930, + 59919, 59908, 59897, 59885, + 59874, 59863, 59852, 59841, + 59829, 59818, 59807, 59796, + 59785, 59773, 59762, 59751, + 59740, 59729, 59717, 59706, + 59695, 59684, 59672, 59661, + 59650, 59638, 59627, 59616, + 59605, 59593, 59582, 59571, + 59559, 59548, 59537, 59525, + 59514, 59503, 59491, 59480, + 59469, 59457, 59446, 59435, + 59423, 59412, 59401, 59389, + 59378, 59366, 59355, 59344, + 59332, 59321, 59309, 59298, + 59287, 59275, 59264, 59252, + 59241, 59229, 59218, 59206, + 59195, 59184, 59172, 59161, + 59149, 59138, 59126, 59115, + 59103, 59092, 59080, 59069, + 59057, 59045, 59034, 59022, + 59011, 58999, 58988, 58976, + 58965, 58953, 58941, 58930, + 58918, 58907, 58895, 58884, + 58872, 58860, 58849, 58837, + 58825, 58814, 58802, 58791, + 58779, 58767, 58756, 58744, + 58732, 58721, 58709, 58697, + 58686, 58674, 58662, 58651, + 58639, 58627, 58615, 58604, + 58592, 58580, 58569, 58557, + 58545, 58533, 58522, 58510, + 58498, 58486, 58475, 58463, + 58451, 58439, 58427, 58416, + 58404, 58392, 58380, 58368, + 58357, 58345, 58333, 58321, + 58309, 58297, 58286, 58274, + 58262, 58250, 58238, 58226, + 58214, 58203, 58191, 58179, + 58167, 58155, 58143, 58131, + 58119, 58107, 58095, 58084, + 58072, 58060, 58048, 58036, + 58024, 58012, 58000, 57988, + 57976, 57964, 57952, 57940, + 57928, 57916, 57904, 57892, + 57880, 57868, 57856, 57844, + 57832, 57820, 57808, 57796, + 57784, 57772, 57760, 57748, + 57736, 57724, 57712, 57699, + 57687, 57675, 57663, 57651, + 57639, 57627, 57615, 57603, + 57591, 57578, 57566, 57554, + 57542, 57530, 57518, 57506, + 57493, 57481, 57469, 57457, + 57445, 57433, 57420, 57408, + 57396, 57384, 57372, 57359, + 57347, 57335, 57323, 57310, + 57298, 57286, 57274, 57261, + 57249, 57237, 57225, 57212, + 57200, 57188, 57176, 57163, + 57151, 57139, 57126, 57114, + 57102, 57090, 57077, 57065, + 57053, 57040, 57028, 57016, + 57003, 56991, 56979, 56966, + 56954, 56941, 56929, 56917, + 56904, 56892, 56880, 56867, + 56855, 56842, 56830, 56817, + 56805, 56793, 56780, 56768, + 56755, 56743, 56730, 56718, + 56706, 56693, 56681, 56668, + 56656, 56643, 56631, 56618, + 56606, 56593, 56581, 56568, + 56556, 56543, 56531, 56518, + 56506, 56493, 56481, 56468, + 56455, 56443, 56430, 56418, + 56405, 56393, 56380, 56367, + 56355, 56342, 56330, 56317, + 56305, 56292, 56279, 56267, + 56254, 56241, 56229, 56216, + 56204, 56191, 56178, 56166, + 56153, 56140, 56128, 56115, + 56102, 56090, 56077, 56064, + 56051, 56039, 56026, 56013, + 56001, 55988, 55975, 55962, + 55950, 55937, 55924, 55912, + 55899, 55886, 55873, 55860, + 55848, 55835, 55822, 55809, + 55797, 55784, 55771, 55758, + 55745, 55733, 55720, 55707, + 55694, 55681, 55669, 55656, + 55643, 55630, 55617, 55604, + 55591, 55579, 55566, 55553, + 55540, 55527, 55514, 55501, + 55488, 55475, 55463, 55450, + 55437, 55424, 55411, 55398, + 55385, 55372, 55359, 55346, + 55333, 55320, 55307, 55294, + 55281, 55269, 55256, 55243, + 55230, 55217, 55204, 55191, + 55178, 55165, 55152, 55139, + 55126, 55113, 55099, 55086, + 55073, 55060, 55047, 55034, + 55021, 55008, 54995, 54982, + 54969, 54956, 54943, 54930, + 54917, 54904, 54890, 54877, + 54864, 54851, 54838, 54825, + 54812, 54799, 54785, 54772, + 54759, 54746, 54733, 54720, + 54707, 54693, 54680, 54667, + 54654, 54641, 54628, 54614, + 54601, 54588, 54575, 54562, + 54548, 54535, 54522, 54509, + 54495, 54482, 54469, 54456, + 54442, 54429, 54416, 54403, + 54389, 54376, 54363, 54350, + 54336, 54323, 54310, 54296, + 54283, 54270, 54257, 54243, + 54230, 54217, 54203, 54190, + 54177, 54163, 54150, 54137, + 54123, 54110, 54096, 54083, + 54070, 54056, 54043, 54030, + 54016, 54003, 53989, 53976, + 53963, 53949, 53936, 53922, + 53909, 53895, 53882, 53869, + 53855, 53842, 53828, 53815, + 53801, 53788, 53774, 53761, + 53747, 53734, 53721, 53707, + 53694, 53680, 53667, 53653, + 53640, 53626, 53613, 53599, + 53585, 53572, 53558, 53545, + 53531, 53518, 53504, 53491, + 53477, 53464, 53450, 53436, + 53423, 53409, 53396, 53382, + 53368, 53355, 53341, 53328, + 53314, 53300, 53287, 53273, + 53260, 53246, 53232, 53219, + 53205, 53191, 53178, 53164, + 53150, 53137, 53123, 53109, + 53096, 53082, 53068, 53055, + 53041, 53027, 53013, 53000, + 52986, 52972, 52959, 52945, + 52931, 52917, 52904, 52890, + 52876, 52862, 52849, 52835, + 52821, 52807, 52794, 52780, + 52766, 52752, 52738, 52725, + 52711, 52697, 52683, 52669, + 52656, 52642, 52628, 52614, + 52600, 52587, 52573, 52559, + 52545, 52531, 52517, 52503, + 52490, 52476, 52462, 52448, + 52434, 52420, 52406, 52392, + 52378, 52365, 52351, 52337, + 52323, 52309, 52295, 52281, + 52267, 52253, 52239, 52225, + 52211, 52197, 52183, 52169, + 52156, 52142, 52128, 52114, + 52100, 52086, 52072, 52058, + 52044, 52030, 52016, 52002, + 51988, 51974, 51960, 51946, + 51931, 51917, 51903, 51889, + 51875, 51861, 51847, 51833, + 51819, 51805, 51791, 51777, + 51763, 51749, 51735, 51721, + 51706, 51692, 51678, 51664, + 51650, 51636, 51622, 51608, + 51593, 51579, 51565, 51551, + 51537, 51523, 51509, 51494, + 51480, 51466, 51452, 51438, + 51424, 51409, 51395, 51381, + 51367, 51353, 51338, 51324, + 51310, 51296, 51282, 51267, + 51253, 51239, 51225, 51210, + 51196, 51182, 51168, 51153, + 51139, 51125, 51111, 51096, + 51082, 51068, 51053, 51039, + 51025, 51011, 50996, 50982, + 50968, 50953, 50939, 50925, + 50910, 50896, 50882, 50867, + 50853, 50839, 50824, 50810, + 50796, 50781, 50767, 50753, + 50738, 50724, 50709, 50695, + 50681, 50666, 50652, 50637, + 50623, 50609, 50594, 50580, + 50565, 50551, 50537, 50522, + 50508, 50493, 50479, 50464, + 50450, 50435, 50421, 50406, + 50392, 50378, 50363, 50349, + 50334, 50320, 50305, 50291, + 50276, 50262, 50247, 50233, + 50218, 50204, 50189, 50174, + 50160, 50145, 50131, 50116, + 50102, 50087, 50073, 50058, + 50044, 50029, 50014, 50000, + 49985, 49971, 49956, 49941, + 49927, 49912, 49898, 49883, + 49868, 49854, 49839, 49825, + 49810, 49795, 49781, 49766, + 49751, 49737, 49722, 49707, + 49693, 49678, 49663, 49649, + 49634, 49619, 49605, 49590, + 49575, 49561, 49546, 49531, + 49517, 49502, 49487, 49472, + 49458, 49443, 49428, 49414, + 49399, 49384, 49369, 49355, + 49340, 49325, 49310, 49296, + 49281, 49266, 49251, 49236, + 49222, 49207, 49192, 49177, + 49162, 49148, 49133, 49118, + 49103, 49088, 49074, 49059, + 49044, 49029, 49014, 48999, + 48985, 48970, 48955, 48940, + 48925, 48910, 48895, 48881, + 48866, 48851, 48836, 48821, + 48806, 48791, 48776, 48761, + 48746, 48732, 48717, 48702, + 48687, 48672, 48657, 48642, + 48627, 48612, 48597, 48582, + 48567, 48552, 48537, 48522, + 48507, 48492, 48478, 48463, + 48448, 48433, 48418, 48403, + 48388, 48373, 48358, 48343, + 48328, 48313, 48298, 48282, + 48267, 48252, 48237, 48222, + 48207, 48192, 48177, 48162, + 48147, 48132, 48117, 48102, + 48087, 48072, 48057, 48042, + 48026, 48011, 47996, 47981, + 47966, 47951, 47936, 47921, + 47906, 47890, 47875, 47860, + 47845, 47830, 47815, 47800, + 47785, 47769, 47754, 47739, + 47724, 47709, 47694, 47678, + 47663, 47648, 47633, 47618, + 47602, 47587, 47572, 47557, + 47542, 47526, 47511, 47496, + 47481, 47466, 47450, 47435, + 47420, 47405, 47389, 47374, + 47359, 47344, 47328, 47313, + 47298, 47283, 47267, 47252, + 47237, 47221, 47206, 47191, + 47175, 47160, 47145, 47130, + 47114, 47099, 47084, 47068, + 47053, 47038, 47022, 47007, + 46992, 46976, 46961, 46946, + 46930, 46915, 46900, 46884, + 46869, 46853, 46838, 46823, + 46807, 46792, 46776, 46761, + 46746, 46730, 46715, 46699, + 46684, 46669, 46653, 46638, + 46622, 46607, 46591, 46576, + 46561, 46545, 46530, 46514, + 46499, 46483, 46468, 46452, + 46437, 46421, 46406, 46390, + 46375, 46359, 46344, 46328, + 46313, 46297, 46282, 46266, + 46251, 46235, 46220, 46204, + 46189, 46173, 46158, 46142, + 46127, 46111, 46096, 46080, + 46064, 46049, 46033, 46018, + 46002, 45987, 45971, 45955, + 45940, 45924, 45909, 45893, + 45877, 45862, 45846, 45831, + 45815, 45799, 45784, 45768, + 45753, 45737, 45721, 45706, + 45690, 45674, 45659, 45643, + 45627, 45612, 45596, 45580, + 45565, 45549, 45533, 45518, + 45502, 45486, 45471, 45455, + 45439, 45423, 45408, 45392, + 45376, 45361, 45345, 45329, + 45313, 45298, 45282, 45266, + 45250, 45235, 45219, 45203, + 45187, 45172, 45156, 45140, + 45124, 45109, 45093, 45077, + 45061, 45045, 45030, 45014, + 44998, 44982, 44966, 44951, + 44935, 44919, 44903, 44887, + 44872, 44856, 44840, 44824, + 44808, 44792, 44776, 44761, + 44745, 44729, 44713, 44697, + 44681, 44665, 44650, 44634, + 44618, 44602, 44586, 44570, + 44554, 44538, 44522, 44507, + 44491, 44475, 44459, 44443, + 44427, 44411, 44395, 44379, + 44363, 44347, 44331, 44315, + 44299, 44283, 44268, 44252, + 44236, 44220, 44204, 44188, + 44172, 44156, 44140, 44124, + 44108, 44092, 44076, 44060, + 44044, 44028, 44012, 43996, + 43980, 43964, 43948, 43932, + 43916, 43900, 43883, 43867, + 43851, 43835, 43819, 43803, + 43787, 43771, 43755, 43739, + 43723, 43707, 43691, 43675, + 43659, 43642, 43626, 43610, + 43594, 43578, 43562, 43546, + 43530, 43514, 43497, 43481, + 43465, 43449, 43433, 43417, + 43401, 43385, 43368, 43352, + 43336, 43320, 43304, 43288, + 43271, 43255, 43239, 43223, + 43207, 43191, 43174, 43158, + 43142, 43126, 43110, 43093, + 43077, 43061, 43045, 43028, + 43012, 42996, 42980, 42964, + 42947, 42931, 42915, 42899, + 42882, 42866, 42850, 42834, + 42817, 42801, 42785, 42769, + 42752, 42736, 42720, 42703, + 42687, 42671, 42655, 42638, + 42622, 42606, 42589, 42573, + 42557, 42540, 42524, 42508, + 42491, 42475, 42459, 42442, + 42426, 42410, 42393, 42377, + 42361, 42344, 42328, 42312, + 42295, 42279, 42262, 42246, + 42230, 42213, 42197, 42181, + 42164, 42148, 42131, 42115, + 42099, 42082, 42066, 42049, + 42033, 42016, 42000, 41984, + 41967, 41951, 41934, 41918, + 41901, 41885, 41869, 41852, + 41836, 41819, 41803, 41786, + 41770, 41753, 41737, 41720, + 41704, 41687, 41671, 41654, + 41638, 41621, 41605, 41588, + 41572, 41555, 41539, 41522, + 41506, 41489, 41473, 41456, + 41440, 41423, 41407, 41390, + 41374, 41357, 41340, 41324, + 41307, 41291, 41274, 41258, + 41241, 41224, 41208, 41191, + 41175, 41158, 41142, 41125, + 41108, 41092, 41075, 41059, + 41042, 41025, 41009, 40992, + 40975, 40959, 40942, 40926, + 40909, 40892, 40876, 40859, + 40842, 40826, 40809, 40792, + 40776, 40759, 40742, 40726, + 40709, 40692, 40676, 40659, + 40642, 40626, 40609, 40592, + 40576, 40559, 40542, 40525, + 40509, 40492, 40475, 40459, + 40442, 40425, 40408, 40392, + 40375, 40358, 40341, 40325, + 40308, 40291, 40274, 40258, + 40241, 40224, 40207, 40191, + 40174, 40157, 40140, 40124, + 40107, 40090, 40073, 40056, + 40040, 40023, 40006, 39989, + 39972, 39956, 39939, 39922, + 39905, 39888, 39871, 39855, + 39838, 39821, 39804, 39787, + 39770, 39754, 39737, 39720, + 39703, 39686, 39669, 39652, + 39636, 39619, 39602, 39585, + 39568, 39551, 39534, 39517, + 39501, 39484, 39467, 39450, + 39433, 39416, 39399, 39382, + 39365, 39348, 39331, 39315, + 39298, 39281, 39264, 39247, + 39230, 39213, 39196, 39179, + 39162, 39145, 39128, 39111, + 39094, 39077, 39060, 39043, + 39026, 39009, 38992, 38975, + 38958, 38941, 38924, 38907, + 38890, 38873, 38856, 38839, + 38822, 38805, 38788, 38771, + 38754, 38737, 38720, 38703, + 38686, 38669, 38652, 38635, + 38618, 38601, 38584, 38567, + 38550, 38533, 38516, 38499, + 38481, 38464, 38447, 38430, + 38413, 38396, 38379, 38362, + 38345, 38328, 38311, 38293, + 38276, 38259, 38242, 38225, + 38208, 38191, 38174, 38157, + 38139, 38122, 38105, 38088, + 38071, 38054, 38037, 38019, + 38002, 37985, 37968, 37951, + 37934, 37916, 37899, 37882, + 37865, 37848, 37831, 37813, + 37796, 37779, 37762, 37745, + 37727, 37710, 37693, 37676, + 37659, 37641, 37624, 37607, + 37590, 37572, 37555, 37538, + 37521, 37504, 37486, 37469, + 37452, 37435, 37417, 37400, + 37383, 37366, 37348, 37331, + 37314, 37296, 37279, 37262, + 37245, 37227, 37210, 37193, + 37175, 37158, 37141, 37124, + 37106, 37089, 37072, 37054, + 37037, 37020, 37002, 36985, + 36968, 36950, 36933, 36916, + 36898, 36881, 36864, 36846, + 36829, 36812, 36794, 36777, + 36760, 36742, 36725, 36708, + 36690, 36673, 36655, 36638, + 36621, 36603, 36586, 36569, + 36551, 36534, 36516, 36499, + 36482, 36464, 36447, 36429, + 36412, 36394, 36377, 36360, + 36342, 36325, 36307, 36290, + 36272, 36255, 36238, 36220, + 36203, 36185, 36168, 36150, + 36133, 36115, 36098, 36080, + 36063, 36046, 36028, 36011, + 35993, 35976, 35958, 35941, + 35923, 35906, 35888, 35871, + 35853, 35836, 35818, 35801, + 35783, 35766, 35748, 35731, + 35713, 35696, 35678, 35660, + 35643, 35625, 35608, 35590, + 35573, 35555, 35538, 35520, + 35503, 35485, 35467, 35450, + 35432, 35415, 35397, 35380, + 35362, 35344, 35327, 35309, + 35292, 35274, 35256, 35239, + 35221, 35204, 35186, 35168, + 35151, 35133, 35116, 35098, + 35080, 35063, 35045, 35028, + 35010, 34992, 34975, 34957, + 34939, 34922, 34904, 34886, + 34869, 34851, 34833, 34816, + 34798, 34780, 34763, 34745, + 34727, 34710, 34692, 34674, + 34657, 34639, 34621, 34604, + 34586, 34568, 34551, 34533, + 34515, 34497, 34480, 34462, + 34444, 34427, 34409, 34391, + 34373, 34356, 34338, 34320, + 34303, 34285, 34267, 34249, + 34232, 34214, 34196, 34178, + 34161, 34143, 34125, 34107, + 34089, 34072, 34054, 34036, + 34018, 34001, 33983, 33965, + 33947, 33929, 33912, 33894, + 33876, 33858, 33840, 33823, + 33805, 33787, 33769, 33751, + 33734, 33716, 33698, 33680, + 33662, 33644, 33627, 33609, + 33591, 33573, 33555, 33537, + 33520, 33502, 33484, 33466, + 33448, 33430, 33412, 33395, + 33377, 33359, 33341, 33323, + 33305, 33287, 33269, 33252, + 33234, 33216, 33198, 33180, + 33162, 33144, 33126, 33108, + 33090, 33073, 33055, 33037, + 33019, 33001, 32983, 32965, + 32947, 32929, 32911, 32893, + 32875, 32857, 32839, 32822, + 32804, 32786, 32768, 32750, + 32732, 32714, 32696, 32678, + 32660, 32642, 32624, 32606, + 32588, 32570, 32552, 32534, + 32516, 32498, 32480, 32462, + 32444, 32426, 32408, 32390, + 32372, 32354, 32336, 32318, + 32300, 32282, 32264, 32246, + 32228, 32210, 32192, 32174, + 32156, 32138, 32120, 32102, + 32084, 32066, 32048, 32029, + 32011, 31993, 31975, 31957, + 31939, 31921, 31903, 31885, + 31867, 31849, 31831, 31813, + 31795, 31776, 31758, 31740, + 31722, 31704, 31686, 31668, + 31650, 31632, 31614, 31595, + 31577, 31559, 31541, 31523, + 31505, 31487, 31469, 31451, + 31432, 31414, 31396, 31378, + 31360, 31342, 31324, 31305, + 31287, 31269, 31251, 31233, + 31215, 31196, 31178, 31160, + 31142, 31124, 31106, 31087, + 31069, 31051, 31033, 31015, + 30996, 30978, 30960, 30942, + 30924, 30906, 30887, 30869, + 30851, 30833, 30814, 30796, + 30778, 30760, 30742, 30723, + 30705, 30687, 30669, 30650, + 30632, 30614, 30596, 30577, + 30559, 30541, 30523, 30505, + 30486, 30468, 30450, 30431, + 30413, 30395, 30377, 30358, + 30340, 30322, 30304, 30285, + 30267, 30249, 30230, 30212, + 30194, 30176, 30157, 30139, + 30121, 30102, 30084, 30066, + 30047, 30029, 30011, 29993, + 29974, 29956, 29938, 29919, + 29901, 29883, 29864, 29846, + 29828, 29809, 29791, 29773, + 29754, 29736, 29718, 29699, + 29681, 29662, 29644, 29626, + 29607, 29589, 29571, 29552, + 29534, 29516, 29497, 29479, + 29460, 29442, 29424, 29405, + 29387, 29369, 29350, 29332, + 29313, 29295, 29277, 29258, + 29240, 29221, 29203, 29184, + 29166, 29148, 29129, 29111, + 29092, 29074, 29056, 29037, + 29019, 29000, 28982, 28963, + 28945, 28926, 28908, 28890, + 28871, 28853, 28834, 28816, + 28797, 28779, 28760, 28742, + 28723, 28705, 28687, 28668, + 28650, 28631, 28613, 28594, + 28576, 28557, 28539, 28520, + 28502, 28483, 28465, 28446, + 28428, 28409, 28391, 28372, + 28354, 28335, 28317, 28298, + 28280, 28261, 28243, 28224, + 28206, 28187, 28168, 28150, + 28131, 28113, 28094, 28076, + 28057, 28039, 28020, 28002, + 27983, 27964, 27946, 27927, + 27909, 27890, 27872, 27853, + 27835, 27816, 27797, 27779, + 27760, 27742, 27723, 27705, + 27686, 27667, 27649, 27630, + 27612, 27593, 27574, 27556, + 27537, 27519, 27500, 27481, + 27463, 27444, 27426, 27407, + 27388, 27370, 27351, 27332, + 27314, 27295, 27277, 27258, + 27239, 27221, 27202, 27183, + 27165, 27146, 27127, 27109, + 27090, 27071, 27053, 27034, + 27015, 26997, 26978, 26959, + 26941, 26922, 26903, 26885, + 26866, 26847, 26829, 26810, + 26791, 26773, 26754, 26735, + 26717, 26698, 26679, 26661, + 26642, 26623, 26604, 26586, + 26567, 26548, 26530, 26511, + 26492, 26474, 26455, 26436, + 26417, 26399, 26380, 26361, + 26342, 26324, 26305, 26286, + 26267, 26249, 26230, 26211, + 26193, 26174, 26155, 26136, + 26118, 26099, 26080, 26061, + 26042, 26024, 26005, 25986, + 25967, 25949, 25930, 25911, + 25892, 25874, 25855, 25836, + 25817, 25798, 25780, 25761, + 25742, 25723, 25704, 25686, + 25667, 25648, 25629, 25610, + 25592, 25573, 25554, 25535, + 25516, 25498, 25479, 25460, + 25441, 25422, 25403, 25385, + 25366, 25347, 25328, 25309, + 25290, 25272, 25253, 25234, + 25215, 25196, 25177, 25158, + 25140, 25121, 25102, 25083, + 25064, 25045, 25026, 25008, + 24989, 24970, 24951, 24932, + 24913, 24894, 24875, 24857, + 24838, 24819, 24800, 24781, + 24762, 24743, 24724, 24705, + 24687, 24668, 24649, 24630, + 24611, 24592, 24573, 24554, + 24535, 24516, 24498, 24479, + 24460, 24441, 24422, 24403, + 24384, 24365, 24346, 24327, + 24308, 24289, 24270, 24251, + 24232, 24214, 24195, 24176, + 24157, 24138, 24119, 24100, + 24081, 24062, 24043, 24024, + 24005, 23986, 23967, 23948, + 23929, 23910, 23891, 23872, + 23853, 23834, 23815, 23796, + 23777, 23758, 23739, 23720, + 23701, 23682, 23663, 23644, + 23625, 23606, 23587, 23568, + 23549, 23530, 23511, 23492, + 23473, 23454, 23435, 23416, + 23397, 23378, 23359, 23340, + 23321, 23302, 23283, 23264, + 23245, 23226, 23207, 23188, + 23169, 23150, 23131, 23112, + 23093, 23074, 23055, 23036, + 23017, 22997, 22978, 22959, + 22940, 22921, 22902, 22883, + 22864, 22845, 22826, 22807, + 22788, 22769, 22750, 22730, + 22711, 22692, 22673, 22654, + 22635, 22616, 22597, 22578, + 22559, 22540, 22520, 22501, + 22482, 22463, 22444, 22425, + 22406, 22387, 22368, 22349, + 22329, 22310, 22291, 22272, + 22253, 22234, 22215, 22196, + 22176, 22157, 22138, 22119, + 22100, 22081, 22062, 22042, + 22023, 22004, 21985, 21966, + 21947, 21928, 21908, 21889, + 21870, 21851, 21832, 21813, + 21794, 21774, 21755, 21736, + 21717, 21698, 21679, 21659, + 21640, 21621, 21602, 21583, + 21563, 21544, 21525, 21506, + 21487, 21468, 21448, 21429, + 21410, 21391, 21372, 21352, + 21333, 21314, 21295, 21276, + 21256, 21237, 21218, 21199, + 21179, 21160, 21141, 21122, + 21103, 21083, 21064, 21045, + 21026, 21007, 20987, 20968, + 20949, 20930, 20910, 20891, + 20872, 20853, 20833, 20814, + 20795, 20776, 20756, 20737, + 20718, 20699, 20679, 20660, + 20641, 20622, 20602, 20583, + 20564, 20545, 20525, 20506, + 20487, 20468, 20448, 20429, + 20410, 20390, 20371, 20352, + 20333, 20313, 20294, 20275, + 20255, 20236, 20217, 20198, + 20178, 20159, 20140, 20120, + 20101, 20082, 20063, 20043, + 20024, 20005, 19985, 19966, + 19947, 19927, 19908, 19889, + 19869, 19850, 19831, 19811, + 19792, 19773, 19754, 19734, + 19715, 19696, 19676, 19657, + 19638, 19618, 19599, 19580, + 19560, 19541, 19521, 19502, + 19483, 19463, 19444, 19425, + 19405, 19386, 19367, 19347, + 19328, 19309, 19289, 19270, + 19251, 19231, 19212, 19192, + 19173, 19154, 19134, 19115, + 19096, 19076, 19057, 19037, + 19018, 18999, 18979, 18960, + 18941, 18921, 18902, 18882, + 18863, 18844, 18824, 18805, + 18785, 18766, 18747, 18727, + 18708, 18688, 18669, 18650, + 18630, 18611, 18591, 18572, + 18553, 18533, 18514, 18494, + 18475, 18455, 18436, 18417, + 18397, 18378, 18358, 18339, + 18319, 18300, 18281, 18261, + 18242, 18222, 18203, 18183, + 18164, 18145, 18125, 18106, + 18086, 18067, 18047, 18028, + 18008, 17989, 17970, 17950, + 17931, 17911, 17892, 17872, + 17853, 17833, 17814, 17794, + 17775, 17755, 17736, 17717, + 17697, 17678, 17658, 17639, + 17619, 17600, 17580, 17561, + 17541, 17522, 17502, 17483, + 17463, 17444, 17424, 17405, + 17385, 17366, 17346, 17327, + 17307, 17288, 17268, 17249, + 17229, 17210, 17190, 17171, + 17151, 17132, 17112, 17093, + 17073, 17054, 17034, 17015, + 16995, 16976, 16956, 16937, + 16917, 16898, 16878, 16859, + 16839, 16819, 16800, 16780, + 16761, 16741, 16722, 16702, + 16683, 16663, 16644, 16624, + 16605, 16585, 16565, 16546, + 16526, 16507, 16487, 16468, + 16448, 16429, 16409, 16389, + 16370, 16350, 16331, 16311, + 16292, 16272, 16253, 16233, + 16213, 16194, 16174, 16155, + 16135, 16116, 16096, 16076, + 16057, 16037, 16018, 15998, + 15979, 15959, 15939, 15920, + 15900, 15881, 15861, 15841, + 15822, 15802, 15783, 15763, + 15743, 15724, 15704, 15685, + 15665, 15645, 15626, 15606, + 15587, 15567, 15547, 15528, + 15508, 15489, 15469, 15449, + 15430, 15410, 15391, 15371, + 15351, 15332, 15312, 15292, + 15273, 15253, 15234, 15214, + 15194, 15175, 15155, 15135, + 15116, 15096, 15077, 15057, + 15037, 15018, 14998, 14978, + 14959, 14939, 14919, 14900, + 14880, 14860, 14841, 14821, + 14801, 14782, 14762, 14743, + 14723, 14703, 14684, 14664, + 14644, 14625, 14605, 14585, + 14566, 14546, 14526, 14507, + 14487, 14467, 14448, 14428, + 14408, 14389, 14369, 14349, + 14330, 14310, 14290, 14271, + 14251, 14231, 14211, 14192, + 14172, 14152, 14133, 14113, + 14093, 14074, 14054, 14034, + 14015, 13995, 13975, 13956, + 13936, 13916, 13896, 13877, + 13857, 13837, 13818, 13798, + 13778, 13759, 13739, 13719, + 13699, 13680, 13660, 13640, + 13621, 13601, 13581, 13561, + 13542, 13522, 13502, 13483, + 13463, 13443, 13423, 13404, + 13384, 13364, 13344, 13325, + 13305, 13285, 13266, 13246, + 13226, 13206, 13187, 13167, + 13147, 13127, 13108, 13088, + 13068, 13048, 13029, 13009, + 12989, 12969, 12950, 12930, + 12910, 12890, 12871, 12851, + 12831, 12811, 12792, 12772, + 12752, 12732, 12713, 12693, + 12673, 12653, 12634, 12614, + 12594, 12574, 12555, 12535, + 12515, 12495, 12475, 12456, + 12436, 12416, 12396, 12377, + 12357, 12337, 12317, 12298, + 12278, 12258, 12238, 12218, + 12199, 12179, 12159, 12139, + 12119, 12100, 12080, 12060, + 12040, 12021, 12001, 11981, + 11961, 11941, 11922, 11902, + 11882, 11862, 11842, 11823, + 11803, 11783, 11763, 11743, + 11724, 11704, 11684, 11664, + 11644, 11625, 11605, 11585, + 11565, 11545, 11526, 11506, + 11486, 11466, 11446, 11426, + 11407, 11387, 11367, 11347, + 11327, 11308, 11288, 11268, + 11248, 11228, 11208, 11189, + 11169, 11149, 11129, 11109, + 11089, 11070, 11050, 11030, + 11010, 10990, 10970, 10951, + 10931, 10911, 10891, 10871, + 10851, 10832, 10812, 10792, + 10772, 10752, 10732, 10713, + 10693, 10673, 10653, 10633, + 10613, 10593, 10574, 10554, + 10534, 10514, 10494, 10474, + 10454, 10435, 10415, 10395, + 10375, 10355, 10335, 10315, + 10296, 10276, 10256, 10236, + 10216, 10196, 10176, 10157, + 10137, 10117, 10097, 10077, + 10057, 10037, 10017, 9998, + 9978, 9958, 9938, 9918, + 9898, 9878, 9858, 9839, + 9819, 9799, 9779, 9759, + 9739, 9719, 9699, 9680, + 9660, 9640, 9620, 9600, + 9580, 9560, 9540, 9520, + 9501, 9481, 9461, 9441, + 9421, 9401, 9381, 9361, + 9341, 9321, 9302, 9282, + 9262, 9242, 9222, 9202, + 9182, 9162, 9142, 9122, + 9103, 9083, 9063, 9043, + 9023, 9003, 8983, 8963, + 8943, 8923, 8903, 8884, + 8864, 8844, 8824, 8804, + 8784, 8764, 8744, 8724, + 8704, 8684, 8664, 8645, + 8625, 8605, 8585, 8565, + 8545, 8525, 8505, 8485, + 8465, 8445, 8425, 8405, + 8386, 8366, 8346, 8326, + 8306, 8286, 8266, 8246, + 8226, 8206, 8186, 8166, + 8146, 8126, 8107, 8087, + 8067, 8047, 8027, 8007, + 7987, 7967, 7947, 7927, + 7907, 7887, 7867, 7847, + 7827, 7807, 7787, 7767, + 7748, 7728, 7708, 7688, + 7668, 7648, 7628, 7608, + 7588, 7568, 7548, 7528, + 7508, 7488, 7468, 7448, + 7428, 7408, 7388, 7368, + 7348, 7329, 7309, 7289, + 7269, 7249, 7229, 7209, + 7189, 7169, 7149, 7129, + 7109, 7089, 7069, 7049, + 7029, 7009, 6989, 6969, + 6949, 6929, 6909, 6889, + 6869, 6849, 6829, 6809, + 6789, 6769, 6750, 6730, + 6710, 6690, 6670, 6650, + 6630, 6610, 6590, 6570, + 6550, 6530, 6510, 6490, + 6470, 6450, 6430, 6410, + 6390, 6370, 6350, 6330, + 6310, 6290, 6270, 6250, + 6230, 6210, 6190, 6170, + 6150, 6130, 6110, 6090, + 6070, 6050, 6030, 6010, + 5990, 5970, 5950, 5930, + 5910, 5890, 5870, 5850, + 5830, 5810, 5790, 5770, + 5750, 5730, 5710, 5690, + 5670, 5650, 5630, 5610, + 5590, 5570, 5550, 5530, + 5510, 5490, 5470, 5450, + 5430, 5410, 5390, 5370, + 5350, 5330, 5310, 5290, + 5270, 5250, 5230, 5210, + 5190, 5170, 5150, 5130, + 5110, 5090, 5070, 5050, + 5030, 5010, 4990, 4970, + 4950, 4930, 4910, 4890, + 4870, 4850, 4830, 4810, + 4790, 4770, 4750, 4730, + 4710, 4690, 4670, 4650, + 4630, 4610, 4590, 4570, + 4550, 4530, 4510, 4490, + 4470, 4450, 4430, 4410, + 4390, 4370, 4349, 4329, + 4309, 4289, 4269, 4249, + 4229, 4209, 4189, 4169, + 4149, 4129, 4109, 4089, + 4069, 4049, 4029, 4009, + 3989, 3969, 3949, 3929, + 3909, 3889, 3869, 3849, + 3829, 3809, 3789, 3769, + 3749, 3729, 3709, 3689, + 3669, 3649, 3628, 3608, + 3588, 3568, 3548, 3528, + 3508, 3488, 3468, 3448, + 3428, 3408, 3388, 3368, + 3348, 3328, 3308, 3288, + 3268, 3248, 3228, 3208, + 3188, 3168, 3148, 3128, + 3108, 3087, 3067, 3047, + 3027, 3007, 2987, 2967, + 2947, 2927, 2907, 2887, + 2867, 2847, 2827, 2807, + 2787, 2767, 2747, 2727, + 2707, 2687, 2667, 2647, + 2626, 2606, 2586, 2566, + 2546, 2526, 2506, 2486, + 2466, 2446, 2426, 2406, + 2386, 2366, 2346, 2326, + 2306, 2286, 2266, 2246, + 2226, 2206, 2185, 2165, + 2145, 2125, 2105, 2085, + 2065, 2045, 2025, 2005, + 1985, 1965, 1945, 1925, + 1905, 1885, 1865, 1845, + 1825, 1805, 1784, 1764, + 1744, 1724, 1704, 1684, + 1664, 1644, 1624, 1604, + 1584, 1564, 1544, 1524, + 1504, 1484, 1464, 1444, + 1424, 1403, 1383, 1363, + 1343, 1323, 1303, 1283, + 1263, 1243, 1223, 1203, + 1183, 1163, 1143, 1123, + 1103, 1083, 1063, 1042, + 1022, 1002, 982, 962, + 942, 922, 902, 882, + 862, 842, 822, 802, + 782, 762, 742, 722, + 702, 681, 661, 641, + 621, 601, 581, 561, + 541, 521, 501, 481, + 461, 441, 421, 401, + 381, 361, 340, 320, + 300, 280, 260, 240, + 220, 200, 180, 160, + 140, 120, 100, 80, + 60, 40, 20, 0, }; const uint16_t lut_led_gamma[] = { 0, 0, 0, 0, diff --git a/stereo_mix/resources/lookup_tables.py b/stereo_mix/resources/lookup_tables.py index 649a82b..0813d07 100644 --- a/stereo_mix/resources/lookup_tables.py +++ b/stereo_mix/resources/lookup_tables.py @@ -14,6 +14,7 @@ space = np.linspace(0, 1, num=ADC_RESOLUTION) values = np.power(space, 2) * OUTPUT_RESOLUTION lookup_tables_u16.append(('linear_to_exp', values)) +print(values.size) fig, ax = plt.subplots() ax.plot(space, values) @@ -24,22 +25,32 @@ ax.plot(space, values / 2 + other_values / 2) ax.set(xlabel='space', ylabel='values') ax.grid() -#plt.show() +# plt.show() # Left pan Lookup table -l_pan = np.linspace(0, 1, num=ADC_RESOLUTION) -r_pan = np.linspace(0, 1, num=ADC_RESOLUTION) +space = np.linspace(0, (np.pi / 2.0), num=ADC_RESOLUTION) -l_pan = np.sin(l_pan * (np.pi / 2.0)) -r_pan = np.cos(r_pan * (np.pi / 2.0)) +l_pan = np.sqrt(space * (2.0 / np.pi) * np.sin(space)) +r_pan = np.sqrt(((np.pi / 2.0) - space) * (2.0 / np.pi) * np.cos(space)) -l_pan = np.round(l_pan * OUTPUT_RESOLUTION) -r_pan = np.round(r_pan * OUTPUT_RESOLUTION) +l_pan = np.floor(l_pan * OUTPUT_RESOLUTION) +r_pan = np.floor(r_pan * OUTPUT_RESOLUTION) + +fig, ax = plt.subplots() +ax.plot(space, l_pan) +ax.plot(space, r_pan) + +ax.set(xlabel='space', ylabel='values') +ax.grid() + +#plt.show() lookup_tables_u16.append(('left_sin_pan', l_pan)) +print(l_pan.size) lookup_tables_u16.append(('right_cos_pan', r_pan)) +print(r_pan.size) # led gamma correction gamma = 2.4