
extern const signed short sinetable[1024] = {
 0, 201, 402, 603, 804, 1005, 1206, 1406, 1607, 1808, 2009, 2209, 2410, 2610,
 2811, 3011, 3211, 3411, 3611, 3811, 4011, 4210, 4409, 4608, 4807, 5006, 5205,
 5403, 5601, 5799, 5997, 6195, 6392, 6589, 6786, 6982, 7179, 7375, 7571, 7766,
 7961, 8156, 8351, 8545, 8739, 8932, 9126, 9319, 9511, 9703, 9895, 10087, 10278,
 10469, 10659, 10849, 11038, 11227, 11416, 11604, 11792, 11980, 12166, 12353,
 12539, 12724, 12909, 13094, 13278, 13462, 13645, 13827, 14009, 14191, 14372,
 14552, 14732, 14911, 15090, 15268, 15446, 15623, 15799, 15975, 16150, 16325,
 16499, 16672, 16845, 17017, 17189, 17360, 17530, 17699, 17868, 18036, 18204,
 18371, 18537, 18702, 18867, 19031, 19194, 19357, 19519, 19680, 19840, 20000,
 20159, 20317, 20474, 20631, 20787, 20942, 21096, 21249, 21402, 21554, 21705,
 21855, 22004, 22153, 22301, 22448, 22594, 22739, 22883, 23027, 23169, 23311,
 23452, 23592, 23731, 23869, 24006, 24143, 24278, 24413, 24546, 24679, 24811,
 24942, 25072, 25201, 25329, 25456, 25582, 25707, 25831, 25954, 26077, 26198,
 26318, 26437, 26556, 26673, 26789, 26905, 27019, 27132, 27244, 27355, 27466,
 27575, 27683, 27790, 27896, 28001, 28105, 28208, 28309, 28410, 28510, 28608,
 28706, 28802, 28897, 28992, 29085, 29177, 29268, 29358, 29446, 29534, 29621,
 29706, 29790, 29873, 29955, 30036, 30116, 30195, 30272, 30349, 30424, 30498,
 30571, 30643, 30713, 30783, 30851, 30918, 30984, 31049, 31113, 31175, 31236,
 31297, 31356, 31413, 31470, 31525, 31580, 31633, 31684, 31735, 31785, 31833,
 31880, 31926, 31970, 32014, 32056, 32097, 32137, 32176, 32213, 32249, 32284,
 32318, 32350, 32382, 32412, 32441, 32468, 32495, 32520, 32544, 32567, 32588,
 32609, 32628, 32646, 32662, 32678, 32692, 32705, 32717, 32727, 32736, 32744,
 32751, 32757, 32761, 32764, 32766, 32766, 32766, 32764, 32761, 32757, 32751,
 32744, 32736, 32727, 32717, 32705, 32692, 32678, 32662, 32646, 32628, 32609,
 32588, 32567, 32544, 32520, 32495, 32468, 32441, 32412, 32382, 32350, 32318,
 32284, 32249, 32213, 32176, 32137, 32097, 32056, 32014, 31970, 31926, 31880,
 31833, 31785, 31735, 31684, 31633, 31580, 31525, 31470, 31413, 31356, 31297,
 31236, 31175, 31113, 31049, 30984, 30918, 30851, 30783, 30713, 30643, 30571,
 30498, 30424, 30349, 30272, 30195, 30116, 30036, 29955, 29873, 29790, 29706,
 29621, 29534, 29446, 29358, 29268, 29177, 29085, 28992, 28897, 28802, 28706,
 28608, 28510, 28410, 28309, 28208, 28105, 28001, 27896, 27790, 27683, 27575,
 27466, 27355, 27244, 27132, 27019, 26905, 26789, 26673, 26556, 26437, 26318,
 26198, 26077, 25954, 25831, 25707, 25582, 25456, 25329, 25201, 25072, 24942,
 24811, 24679, 24546, 24413, 24278, 24143, 24006, 23869, 23731, 23592, 23452,
 23311, 23169, 23027, 22883, 22739, 22594, 22448, 22301, 22153, 22004, 21855,
 21705, 21554, 21402, 21249, 21096, 20942, 20787, 20631, 20474, 20317, 20159,
 20000, 19840, 19680, 19519, 19357, 19194, 19031, 18867, 18702, 18537, 18371,
 18204, 18036, 17868, 17699, 17530, 17360, 17189, 17017, 16845, 16672, 16499,
 16325, 16150, 15975, 15799, 15623, 15446, 15268, 15090, 14911, 14732, 14552,
 14372, 14191, 14009, 13827, 13645, 13462, 13278, 13094, 12909, 12724, 12539,
 12353, 12166, 11980, 11792, 11604, 11416, 11227, 11038, 10849, 10659, 10469,
 10278, 10087, 9895, 9703, 9511, 9319, 9126, 8932, 8739, 8545, 8351, 8156,
 7961, 7766, 7571, 7375, 7179, 6982, 6786, 6589, 6392, 6195, 5997, 5799, 5601,
 5403, 5205, 5006, 4807, 4608, 4409, 4210, 4011, 3811, 3611, 3411, 3211, 3011,
 2811, 2610, 2410, 2209, 2009, 1808, 1607, 1406, 1206, 1005, 804, 603, 402,
 201, 0, -202, -403, -604, -805, -1006, -1207, -1407, -1608, -1809, -2010,
 -2210, -2411, -2611, -2812, -3012, -3212, -3412, -3612, -3812, -4012, -4211,
 -4410, -4609, -4808, -5007, -5206, -5404, -5602, -5800, -5998, -6196, -6393,
 -6590, -6787, -6983, -7180, -7376, -7572, -7767, -7962, -8157, -8352, -8546,
 -8740, -8933, -9127, -9320, -9512, -9704, -9896, -10088, -10279, -10470,
 -10660, -10850, -11039, -11228, -11417, -11605, -11793, -11981, -12167,
 -12354, -12540, -12725, -12910, -13095, -13279, -13463, -13646, -13828,
 -14010, -14192, -14373, -14553, -14733, -14912, -15091, -15269, -15447,
 -15624, -15800, -15976, -16151, -16326, -16500, -16673, -16846, -17018,
 -17190, -17361, -17531, -17700, -17869, -18037, -18205, -18372, -18538,
 -18703, -18868, -19032, -19195, -19358, -19520, -19681, -19841, -20001,
 -20160, -20318, -20475, -20632, -20788, -20943, -21097, -21250, -21403,
 -21555, -21706, -21856, -22005, -22154, -22302, -22449, -22595, -22740,
 -22884, -23028, -23170, -23312, -23453, -23593, -23732, -23870, -24007,
 -24144, -24279, -24414, -24547, -24680, -24812, -24943, -25073, -25202,
 -25330, -25457, -25583, -25708, -25832, -25955, -26078, -26199, -26319,
 -26438, -26557, -26674, -26790, -26906, -27020, -27133, -27245, -27356,
 -27467, -27576, -27684, -27791, -27897, -28002, -28106, -28209, -28310,
 -28411, -28511, -28609, -28707, -28803, -28898, -28993, -29086, -29178,
 -29269, -29359, -29447, -29535, -29622, -29707, -29791, -29874, -29956,
 -30037, -30117, -30196, -30273, -30350, -30425, -30499, -30572, -30644,
 -30714, -30784, -30852, -30919, -30985, -31050, -31114, -31176, -31237,
 -31298, -31357, -31414, -31471, -31526, -31581, -31634, -31685, -31736,
 -31786, -31834, -31881, -31927, -31971, -32015, -32057, -32098, -32138,
 -32177, -32214, -32250, -32285, -32319, -32351, -32383, -32413, -32442,
 -32469, -32496, -32521, -32545, -32568, -32589, -32610, -32629, -32647,
 -32663, -32679, -32693, -32706, -32718, -32728, -32737, -32745, -32752,
 -32758, -32762, -32765, -32767, -32767, -32767, -32765, -32762, -32758,
 -32752, -32745, -32737, -32728, -32718, -32706, -32693, -32679, -32663,
 -32647, -32629, -32610, -32589, -32568, -32545, -32521, -32496, -32469,
 -32442, -32413, -32383, -32351, -32319, -32285, -32250, -32214, -32177,
 -32138, -32098, -32057, -32015, -31971, -31927, -31881, -31834, -31786,
 -31736, -31685, -31634, -31581, -31526, -31471, -31414, -31357, -31298,
 -31237, -31176, -31114, -31050, -30985, -30919, -30852, -30784, -30714,
 -30644, -30572, -30499, -30425, -30350, -30273, -30196, -30117, -30037,
 -29956, -29874, -29791, -29707, -29622, -29535, -29447, -29359, -29269,
 -29178, -29086, -28993, -28898, -28803, -28707, -28609, -28511, -28411,
 -28310, -28209, -28106, -28002, -27897, -27791, -27684, -27576, -27467,
 -27356, -27245, -27133, -27020, -26906, -26790, -26674, -26557, -26438,
 -26319, -26199, -26078, -25955, -25832, -25708, -25583, -25457, -25330,
 -25202, -25073, -24943, -24812, -24680, -24547, -24414, -24279, -24144,
 -24007, -23870, -23732, -23593, -23453, -23312, -23170, -23028, -22884,
 -22740, -22595, -22449, -22302, -22154, -22005, -21856, -21706, -21555,
 -21403, -21250, -21097, -20943, -20788, -20632, -20475, -20318, -20160,
 -20001, -19841, -19681, -19520, -19358, -19195, -19032, -18868, -18703,
 -18538, -18372, -18205, -18037, -17869, -17700, -17531, -17361, -17190,
 -17018, -16846, -16673, -16500, -16326, -16151, -15976, -15800, -15624,
 -15447, -15269, -15091, -14912, -14733, -14553, -14373, -14192, -14010,
 -13828, -13646, -13463, -13279, -13095, -12910, -12725, -12540, -12354,
 -12167, -11981, -11793, -11605, -11417, -11228, -11039, -10850, -10660,
 -10470, -10279, -10088, -9896, -9704, -9512, -9320, -9127, -8933, -8740,
 -8546, -8352, -8157, -7962, -7767, -7572, -7376, -7180, -6983, -6787,
 -6590, -6393, -6196, -5998, -5800, -5602, -5404, -5206, -5007, -4808,
 -4609, -4410, -4211, -4012, -3812, -3612, -3412, -3212, -3012, -2812,
 -2611, -2411, -2210, -2010, -1809, -1608, -1407, -1207, -1006, -805,
 -604, -403, -202 };



// converts from 10 bit log (1023=0db, +-128=6db) to lin (65535=0db)
extern const unsigned short log2lin_volume[1024] = {
 // (int)(65535*pow(2.0, (i-1023)/128))
 0, 0, 64, 128, 263, 264, 265, 267, 268, 270, 271, 273, 274, 276,
 277, 279, 280, 282, 283, 285, 286, 288, 289, 291, 293, 294, 296, 297,
 299, 301, 302, 304, 306, 307, 309, 311, 312, 314, 316, 317, 319, 321,
 323, 324, 326, 328, 330, 331, 333, 335, 337, 339, 341, 342, 344, 346,
 348, 350, 352, 354, 356, 358, 360, 362, 363, 365, 367, 369, 371, 373,
 376, 378, 380, 382, 384, 386, 388, 390, 392, 394, 396, 399, 401, 403,
 405, 407, 410, 412, 414, 416, 419, 421, 423, 425, 428, 430, 432, 435,
 437, 439, 442, 444, 447, 449, 452, 454, 456, 459, 461, 464, 466, 469,
 472, 474, 477, 479, 482, 485, 487, 490, 492, 495, 498, 501, 503, 506,
 509, 511, 514, 517, 520, 523, 526, 528, 531, 534, 537, 540, 543, 546,
 549, 552, 555, 558, 561, 564, 567, 570, 573, 576, 579, 583, 586, 589,
 592, 595, 599, 602, 605, 608, 612, 615, 618, 622, 625, 628, 632, 635,
 639, 642, 646, 649, 653, 656, 660, 663, 667, 671, 674, 678, 682, 685,
 689, 693, 697, 700, 704, 708, 712, 716, 720, 724, 727, 731, 735, 739,
 743, 747, 752, 756, 760, 764, 768, 772, 776, 781, 785, 789, 793, 798,
 802, 806, 811, 815, 820, 824, 829, 833, 838, 842, 847, 851, 856, 861,
 865, 870, 875, 879, 884, 889, 894, 899, 904, 908, 913, 918, 923, 928,
 933, 938, 944, 949, 954, 959, 964, 970, 975, 980, 985, 991, 996, 1002,
 1007, 1012, 1018, 1023, 1029, 1035, 1040, 1046, 1052, 1057, 1063, 1069,
 1075, 1080, 1086, 1092, 1098, 1104, 1110, 1116, 1122, 1128, 1134, 1141,
 1147, 1153, 1159, 1166, 1172, 1178, 1185, 1191, 1198, 1204, 1211, 1217,
 1224, 1230, 1237, 1244, 1251, 1257, 1264, 1271, 1278, 1285, 1292, 1299,
 1306, 1313, 1320, 1327, 1335, 1342, 1349, 1357, 1364, 1371, 1379, 1386,
 1394, 1401, 1409, 1417, 1424, 1432, 1440, 1448, 1455, 1463, 1471, 1479,
 1487, 1495, 1504, 1512, 1520, 1528, 1537, 1545, 1553, 1562, 1570, 1579,
 1587, 1596, 1605, 1613, 1622, 1631, 1640, 1649, 1658, 1667, 1676, 1685,
 1694, 1703, 1712, 1722, 1731, 1740, 1750, 1759, 1769, 1779, 1788, 1798,
 1808, 1817, 1827, 1837, 1847, 1857, 1867, 1877, 1888, 1898, 1908, 1919,
 1929, 1940, 1950, 1961, 1971, 1982, 1993, 2004, 2014, 2025, 2036, 2047,
 2059, 2070, 2081, 2092, 2104, 2115, 2127, 2138, 2150, 2161, 2173, 2185,
 2197, 2209, 2221, 2233, 2245, 2257, 2269, 2282, 2294, 2307, 2319, 2332,
 2344, 2357, 2370, 2383, 2396, 2409, 2422, 2435, 2448, 2461, 2475, 2488,
 2502, 2515, 2529, 2543, 2557, 2570, 2584, 2598, 2613, 2627, 2641, 2655,
 2670, 2684, 2699, 2714, 2728, 2743, 2758, 2773, 2788, 2803, 2818, 2834,
 2849, 2865, 2880, 2896, 2911, 2927, 2943, 2959, 2975, 2991, 3008, 3024,
 3040, 3057, 3074, 3090, 3107, 3124, 3141, 3158, 3175, 3192, 3210, 3227,
 3245, 3262, 3280, 3298, 3316, 3334, 3352, 3370, 3388, 3407, 3425, 3444,
 3462, 3481, 3500, 3519, 3538, 3558, 3577, 3596, 3616, 3635, 3655, 3675,
 3695, 3715, 3735, 3755, 3776, 3796, 3817, 3838, 3859, 3880, 3901, 3922,
 3943, 3964, 3986, 4008, 4029, 4051, 4073, 4095, 4118, 4140, 4163, 4185,
 4208, 4231, 4254, 4277, 4300, 4323, 4347, 4370, 4394, 4418, 4442, 4466,
 4490, 4515, 4539, 4564, 4589, 4614, 4639, 4664, 4689, 4715, 4740, 4766,
 4792, 4818, 4844, 4870, 4897, 4923, 4950, 4977, 5004, 5031, 5059, 5086,
 5114, 5141, 5169, 5197, 5226, 5254, 5283, 5311, 5340, 5369, 5398, 5428,
 5457, 5487, 5516, 5546, 5577, 5607, 5637, 5668, 5699, 5730, 5761, 5792,
 5823, 5855, 5887, 5919, 5951, 5983, 6016, 6048, 6081, 6114, 6148, 6181,
 6215, 6248, 6282, 6316, 6351, 6385, 6420, 6455, 6490, 6525, 6560, 6596,
 6632, 6668, 6704, 6740, 6777, 6814, 6851, 6888, 6925, 6963, 7001, 7039,
 7077, 7116, 7154, 7193, 7232, 7271, 7311, 7351, 7390, 7431, 7471, 7511,
 7552, 7593, 7635, 7676, 7718, 7760, 7802, 7844, 7887, 7929, 7973, 8016,
 8059, 8103, 8147, 8191, 8236, 8281, 8326, 8371, 8416, 8462, 8508, 8554,
 8601, 8647, 8694, 8741, 8789, 8837, 8885, 8933, 8981, 9030, 9079, 9128,
 9178, 9228, 9278, 9328, 9379, 9430, 9481, 9533, 9584, 9636, 9689, 9741,
 9794, 9847, 9901, 9955, 10009, 10063, 10118, 10173, 10228, 10283, 10339,
 10395, 10452, 10509, 10566, 10623, 10681, 10739, 10797, 10856, 10915,
 10974, 11033, 11093, 11154, 11214, 11275, 11336, 11398, 11460, 11522,
 11585, 11647, 11711, 11774, 11838, 11903, 11967, 12032, 12097, 12163,
 12229, 12296, 12362, 12430, 12497, 12565, 12633, 12702, 12771, 12840,
 12910, 12980, 13050, 13121, 13192, 13264, 13336, 13409, 13481, 13555,
 13628, 13702, 13777, 13851, 13927, 14002, 14078, 14155, 14232, 14309,
 14386, 14465, 14543, 14622, 14702, 14781, 14862, 14942, 15023, 15105,
 15187, 15270, 15352, 15436, 15520, 15604, 15689, 15774, 15859, 15946,
 16032, 16119, 16207, 16295, 16383, 16472, 16562, 16652, 16742, 16833,
 16924, 17016, 17109, 17202, 17295, 17389, 17483, 17578, 17674, 17770,
 17866, 17963, 18061, 18159, 18257, 18356, 18456, 18556, 18657, 18758,
 18860, 18963, 19066, 19169, 19273, 19378, 19483, 19589, 19695, 19802,
 19910, 20018, 20127, 20236, 20346, 20456, 20567, 20679, 20791, 20904,
 21018, 21132, 21247, 21362, 21478, 21595, 21712, 21830, 21948, 22067,
 22187, 22308, 22429, 22551, 22673, 22796, 22920, 23044, 23170, 23295,
 23422, 23549, 23677, 23806, 23935, 24065, 24195, 24327, 24459, 24592,
 24725, 24860, 24995, 25130, 25267, 25404, 25542, 25681, 25820, 25960,
 26101, 26243, 26385, 26529, 26673, 26818, 26963, 27110, 27257, 27405,
 27554, 27703, 27854, 28005, 28157, 28310, 28464, 28618, 28773, 28930,
 29087, 29245, 29404, 29563, 29724, 29885, 30047, 30211, 30375, 30540,
 30705, 30872, 31040, 31208, 31378, 31548, 31719, 31892, 32065, 32239,
 32414, 32590, 32767, 32945, 33124, 33304, 33485, 33666, 33849, 34033,
 34218, 34404, 34590, 34778, 34967, 35157, 35348, 35540, 35733, 35927,
 36122, 36318, 36515, 36713, 36913, 37113, 37315, 37517, 37721, 37926,
 38132, 38339, 38547, 38756, 38967, 39178, 39391, 39605, 39820, 40036,
 40254, 40472, 40692, 40913, 41135, 41359, 41583, 41809, 42036, 42264,
 42494, 42724, 42956, 43190, 43424, 43660, 43897, 44135, 44375, 44616,
 44858, 45102, 45347, 45593, 45841, 46089, 46340, 46591, 46844, 47099,
 47354, 47612, 47870, 48130, 48391, 48654, 48918, 49184, 49451, 49720,
 49990, 50261, 50534, 50808, 51084, 51362, 51640, 51921, 52203, 52486,
 52771, 53058, 53346, 53636, 53927, 54220, 54514, 54810, 55108, 55407,
 55708, 56010, 56314, 56620, 56928, 57237, 57547, 57860, 58174, 58490,
 58808, 59127, 59448, 59771, 60095, 60422, 60750, 61080, 61411, 61745,
 62080, 62417, 62756, 63097, 63439, 63784, 64130, 64478, 64829, 65181,
 65535 };


// bendtable max a pitchwheel value (scaled to 0..255) to a
// change in resample-rate
// bendtable[128]  -> no change (=2048)
// bendtable[+-64] -> one semi-tone up/down
const bendtable[256] = {
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048,
                         2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 };


extern const int note2resamplerate[128] = {
  // (int)((1<<RESAMPLE_BITS)*pow(2.0,((i-60.0)/12.0))+0.5)
  128, 136, 144, 152, 161, 171, 181, 192, 203, 215, 228, 242,
  256, 271, 287, 304, 323, 342, 362, 384, 406, 431, 456, 483,
  512, 542, 575, 609, 645, 683, 724, 767, 813, 861, 912, 967,
  1024, 1085, 1149, 1218, 1290, 1367, 1448, 1534, 1625, 1722, 1825, 1933,
  2048, 2170, 2299, 2435, 2580, 2734, 2896, 3069, 3251, 3444, 3649, 3866,
  4096, 4340, 4598, 4871, 5161, 5468, 5793, 6137, 6502, 6889, 7298, 7732,
  8192, 8679, 9195, 9742, 10321, 10935, 11585, 12274, 13004, 13777, 14596, 15464,
  16384, 17358, 18390, 19484, 20643, 21870, 23170, 24548, 26008, 27554, 29193, 30929,
  32768, 34716, 36781, 38968, 41285, 43740, 46341, 49097, 52016, 55109, 58386, 61858,
  65536, 69433, 73562, 77936, 82570, 87480, 92682, 98193, 104032, 110218, 116772, 123715,
  131072, 138866, 147123, 155872, 165140, 174960, 185364, 196386 };



// converts from 7-bit pan/balance value to 7-bit left volume
extern const unsigned char panvolume[128] = {
// (int)(128*((256*cos(i*pi/255))/(256*cos(64*pi/255)))
   0, 2, 4, 6, 8, 11, 13, 15, 17, 20, 22, 24, 26, 28, 31, 33,
   35, 37, 39, 42, 44, 46, 48, 50, 52, 55, 57, 59, 61, 63, 65,
   67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95,
   97, 99, 101, 103, 104, 106, 108, 110, 112, 113, 115, 117,
   118, 120, 122, 123, 125, 127, 128, 130, 131, 133, 134, 136,
   137, 139, 140, 142, 143, 144, 146, 147, 148, 150, 151, 152,
   153, 154, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
   166, 167, 168, 168, 169, 170, 171, 171, 172, 173, 174, 174,
   175, 175, 176, 176, 177, 177, 178, 178, 179, 179, 179, 180,
   180, 180, 180, 180, 181, 181, 181, 181, 181, 181 };
