// Copyright 2020 Jan-Henrik Bruhn // // Author: Jan-Henrik Bruhn (hi@jhbruhn.de) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. // // See http://creativecommons.org/licenses/MIT/ for more information. // // ----------------------------------------------------------------------------- // // Resources definitions. // // Automatically generated with: // make resources #include "stereo_mix/resources.h" namespace stereo_mix { const uint16_t lut_linear_to_exp[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 23, 23, 24, 25, 25, 26, 26, 27, 28, 28, 29, 30, 30, 31, 32, 33, 33, 34, 35, 36, 36, 37, 38, 39, 39, 40, 41, 42, 43, 43, 44, 45, 46, 47, 48, 49, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 81, 82, 83, 84, 85, 86, 87, 89, 90, 91, 92, 93, 95, 96, 97, 98, 100, 101, 102, 103, 105, 106, 107, 108, 110, 111, 112, 114, 115, 116, 118, 119, 121, 122, 123, 125, 126, 128, 129, 130, 132, 133, 135, 136, 138, 139, 141, 142, 144, 145, 147, 148, 150, 151, 153, 154, 156, 157, 159, 161, 162, 164, 165, 167, 169, 170, 172, 173, 175, 177, 178, 180, 182, 184, 185, 187, 189, 190, 192, 194, 196, 197, 199, 201, 203, 204, 206, 208, 210, 212, 213, 215, 217, 219, 221, 223, 225, 226, 228, 230, 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, 252, 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 287, 289, 291, 293, 295, 297, 299, 302, 304, 306, 308, 310, 312, 315, 317, 319, 321, 324, 326, 328, 330, 333, 335, 337, 340, 342, 344, 347, 349, 351, 354, 356, 358, 361, 363, 365, 368, 370, 373, 375, 377, 380, 382, 385, 387, 390, 392, 395, 397, 400, 402, 405, 407, 410, 412, 415, 417, 420, 423, 425, 428, 430, 433, 435, 438, 441, 443, 446, 449, 451, 454, 457, 459, 462, 465, 467, 470, 473, 476, 478, 481, 484, 486, 489, 492, 495, 498, 500, 503, 506, 509, 512, 514, 517, 520, 523, 526, 529, 532, 535, 537, 540, 543, 546, 549, 552, 555, 558, 561, 564, 567, 570, 573, 576, 579, 582, 585, 588, 591, 594, 597, 600, 603, 606, 609, 612, 615, 619, 622, 625, 628, 631, 634, 637, 641, 644, 647, 650, 653, 656, 660, 663, 666, 669, 673, 676, 679, 682, 686, 689, 692, 695, 699, 702, 705, 709, 712, 715, 719, 722, 725, 729, 732, 736, 739, 742, 746, 749, 753, 756, 760, 763, 766, 770, 773, 777, 780, 784, 787, 791, 794, 798, 801, 805, 809, 812, 816, 819, 823, 826, 830, 834, 837, 841, 845, 848, 852, 855, 859, 863, 866, 870, 874, 878, 881, 885, 889, 892, 896, 900, 904, 907, 911, 915, 919, 923, 926, 930, 934, 938, 942, 946, 949, 953, 957, 961, 965, 969, 973, 977, 980, 984, 988, 992, 996, 1000, 1004, 1008, 1012, 1016, 1020, 1024, 1028, 1032, 1036, 1040, 1044, 1048, 1052, 1056, 1060, 1064, 1068, 1073, 1077, 1081, 1085, 1089, 1093, 1097, 1101, 1106, 1110, 1114, 1118, 1122, 1126, 1131, 1135, 1139, 1143, 1148, 1152, 1156, 1160, 1165, 1169, 1173, 1177, 1182, 1186, 1190, 1195, 1199, 1203, 1208, 1212, 1216, 1221, 1225, 1229, 1234, 1238, 1243, 1247, 1251, 1256, 1260, 1265, 1269, 1274, 1278, 1283, 1287, 1292, 1296, 1301, 1305, 1310, 1314, 1319, 1323, 1328, 1332, 1337, 1342, 1346, 1351, 1355, 1360, 1365, 1369, 1374, 1378, 1383, 1388, 1392, 1397, 1402, 1406, 1411, 1416, 1421, 1425, 1430, 1435, 1439, 1444, 1449, 1454, 1458, 1463, 1468, 1473, 1478, 1482, 1487, 1492, 1497, 1502, 1507, 1511, 1516, 1521, 1526, 1531, 1536, 1541, 1546, 1551, 1556, 1560, 1565, 1570, 1575, 1580, 1585, 1590, 1595, 1600, 1605, 1610, 1615, 1620, 1625, 1630, 1635, 1641, 1646, 1651, 1656, 1661, 1666, 1671, 1676, 1681, 1686, 1692, 1697, 1702, 1707, 1712, 1717, 1723, 1728, 1733, 1738, 1743, 1749, 1754, 1759, 1764, 1770, 1775, 1780, 1785, 1791, 1796, 1801, 1807, 1812, 1817, 1823, 1828, 1833, 1839, 1844, 1849, 1855, 1860, 1866, 1871, 1876, 1882, 1887, 1893, 1898, 1904, 1909, 1914, 1920, 1925, 1931, 1936, 1942, 1947, 1953, 1958, 1964, 1970, 1975, 1981, 1986, 1992, 1997, 2003, 2009, 2014, 2020, 2025, 2031, 2037, 2042, 2048, 2054, 2059, 2065, 2071, 2076, 2082, 2088, 2094, 2099, 2105, 2111, 2117, 2122, 2128, 2134, 2140, 2145, 2151, 2157, 2163, 2169, 2174, 2180, 2186, 2192, 2198, 2204, 2210, 2215, 2221, 2227, 2233, 2239, 2245, 2251, 2257, 2263, 2269, 2275, 2281, 2287, 2293, 2299, 2305, 2311, 2317, 2323, 2329, 2335, 2341, 2347, 2353, 2359, 2365, 2371, 2377, 2383, 2389, 2396, 2402, 2408, 2414, 2420, 2426, 2432, 2439, 2445, 2451, 2457, 2463, 2470, 2476, 2482, 2488, 2494, 2501, 2507, 2513, 2519, 2526, 2532, 2538, 2545, 2551, 2557, 2564, 2570, 2576, 2583, 2589, 2595, 2602, 2608, 2615, 2621, 2627, 2634, 2640, 2647, 2653, 2659, 2666, 2672, 2679, 2685, 2692, 2698, 2705, 2711, 2718, 2724, 2731, 2737, 2744, 2750, 2757, 2764, 2770, 2777, 2783, 2790, 2797, 2803, 2810, 2816, 2823, 2830, 2836, 2843, 2850, 2856, 2863, 2870, 2877, 2883, 2890, 2897, 2903, 2910, 2917, 2924, 2930, 2937, 2944, 2951, 2958, 2964, 2971, 2978, 2985, 2992, 2998, 3005, 3012, 3019, 3026, 3033, 3040, 3047, 3054, 3060, 3067, 3074, 3081, 3088, 3095, 3102, 3109, 3116, 3123, 3130, 3137, 3144, 3151, 3158, 3165, 3172, 3179, 3186, 3193, 3200, 3207, 3214, 3222, 3229, 3236, 3243, 3250, 3257, 3264, 3271, 3279, 3286, 3293, 3300, 3307, 3315, 3322, 3329, 3336, 3343, 3351, 3358, 3365, 3372, 3380, 3387, 3394, 3401, 3409, 3416, 3423, 3431, 3438, 3445, 3453, 3460, 3467, 3475, 3482, 3490, 3497, 3504, 3512, 3519, 3527, 3534, 3541, 3549, 3556, 3564, 3571, 3579, 3586, 3594, 3601, 3609, 3616, 3624, 3631, 3639, 3646, 3654, 3661, 3669, 3677, 3684, 3692, 3699, 3707, 3715, 3722, 3730, 3738, 3745, 3753, 3761, 3768, 3776, 3784, 3791, 3799, 3807, 3814, 3822, 3830, 3838, 3845, 3853, 3861, 3869, 3876, 3884, 3892, 3900, 3908, 3915, 3923, 3931, 3939, 3947, 3955, 3963, 3970, 3978, 3986, 3994, 4002, 4010, 4018, 4026, 4034, 4042, 4050, 4058, 4065, 4073, 4081, 4089, 4097, 4105, 4113, 4121, 4130, 4138, 4146, 4154, 4162, 4170, 4178, 4186, 4194, 4202, 4210, 4218, 4226, 4235, 4243, 4251, 4259, 4267, 4275, 4284, 4292, 4300, 4308, 4316, 4325, 4333, 4341, 4349, 4358, 4366, 4374, 4382, 4391, 4399, 4407, 4416, 4424, 4432, 4440, 4449, 4457, 4466, 4474, 4482, 4491, 4499, 4507, 4516, 4524, 4533, 4541, 4549, 4558, 4566, 4575, 4583, 4592, 4600, 4609, 4617, 4626, 4634, 4643, 4651, 4660, 4668, 4677, 4685, 4694, 4703, 4711, 4720, 4728, 4737, 4746, 4754, 4763, 4771, 4780, 4789, 4797, 4806, 4815, 4823, 4832, 4841, 4849, 4858, 4867, 4876, 4884, 4893, 4902, 4911, 4919, 4928, 4937, 4946, 4954, 4963, 4972, 4981, 4990, 4999, 5007, 5016, 5025, 5034, 5043, 5052, 5061, 5070, 5078, 5087, 5096, 5105, 5114, 5123, 5132, 5141, 5150, 5159, 5168, 5177, 5186, 5195, 5204, 5213, 5222, 5231, 5240, 5249, 5258, 5267, 5276, 5285, 5295, 5304, 5313, 5322, 5331, 5340, 5349, 5358, 5368, 5377, 5386, 5395, 5404, 5414, 5423, 5432, 5441, 5450, 5460, 5469, 5478, 5487, 5497, 5506, 5515, 5524, 5534, 5543, 5552, 5562, 5571, 5580, 5590, 5599, 5608, 5618, 5627, 5637, 5646, 5655, 5665, 5674, 5684, 5693, 5702, 5712, 5721, 5731, 5740, 5750, 5759, 5769, 5778, 5788, 5797, 5807, 5816, 5826, 5835, 5845, 5855, 5864, 5874, 5883, 5893, 5902, 5912, 5922, 5931, 5941, 5951, 5960, 5970, 5980, 5989, 5999, 6009, 6018, 6028, 6038, 6047, 6057, 6067, 6077, 6086, 6096, 6106, 6116, 6125, 6135, 6145, 6155, 6165, 6174, 6184, 6194, 6204, 6214, 6224, 6234, 6243, 6253, 6263, 6273, 6283, 6293, 6303, 6313, 6323, 6333, 6343, 6353, 6363, 6373, 6383, 6393, 6403, 6413, 6423, 6433, 6443, 6453, 6463, 6473, 6483, 6493, 6503, 6513, 6523, 6533, 6543, 6553, 6564, 6574, 6584, 6594, 6604, 6614, 6625, 6635, 6645, 6655, 6665, 6676, 6686, 6696, 6706, 6716, 6727, 6737, 6747, 6757, 6768, 6778, 6788, 6799, 6809, 6819, 6830, 6840, 6850, 6861, 6871, 6881, 6892, 6902, 6913, 6923, 6933, 6944, 6954, 6965, 6975, 6985, 6996, 7006, 7017, 7027, 7038, 7048, 7059, 7069, 7080, 7090, 7101, 7111, 7122, 7133, 7143, 7154, 7164, 7175, 7185, 7196, 7207, 7217, 7228, 7239, 7249, 7260, 7271, 7281, 7292, 7303, 7313, 7324, 7335, 7345, 7356, 7367, 7378, 7388, 7399, 7410, 7421, 7431, 7442, 7453, 7464, 7474, 7485, 7496, 7507, 7518, 7529, 7539, 7550, 7561, 7572, 7583, 7594, 7605, 7616, 7627, 7638, 7648, 7659, 7670, 7681, 7692, 7703, 7714, 7725, 7736, 7747, 7758, 7769, 7780, 7791, 7802, 7813, 7824, 7835, 7847, 7858, 7869, 7880, 7891, 7902, 7913, 7924, 7935, 7947, 7958, 7969, 7980, 7991, 8002, 8014, 8025, 8036, 8047, 8058, 8070, 8081, 8092, 8103, 8115, 8126, 8137, 8148, 8160, 8171, 8182, 8194, 8205, 8216, 8228, 8239, 8250, 8262, 8273, 8284, 8296, 8307, 8319, 8330, 8341, 8353, 8364, 8376, 8387, 8399, 8410, 8422, 8433, 8445, 8456, 8468, 8479, 8491, 8502, 8514, 8525, 8537, 8548, 8560, 8571, 8583, 8595, 8606, 8618, 8629, 8641, 8653, 8664, 8676, 8688, 8699, 8711, 8723, 8734, 8746, 8758, 8769, 8781, 8793, 8804, 8816, 8828, 8840, 8851, 8863, 8875, 8887, 8899, 8910, 8922, 8934, 8946, 8958, 8969, 8981, 8993, 9005, 9017, 9029, 9041, 9053, 9064, 9076, 9088, 9100, 9112, 9124, 9136, 9148, 9160, 9172, 9184, 9196, 9208, 9220, 9232, 9244, 9256, 9268, 9280, 9292, 9304, 9316, 9328, 9340, 9352, 9364, 9377, 9389, 9401, 9413, 9425, 9437, 9449, 9462, 9474, 9486, 9498, 9510, 9522, 9535, 9547, 9559, 9571, 9584, 9596, 9608, 9620, 9633, 9645, 9657, 9669, 9682, 9694, 9706, 9719, 9731, 9743, 9756, 9768, 9780, 9793, 9805, 9818, 9830, 9842, 9855, 9867, 9880, 9892, 9904, 9917, 9929, 9942, 9954, 9967, 9979, 9992, 10004, 10017, 10029, 10042, 10054, 10067, 10079, 10092, 10105, 10117, 10130, 10142, 10155, 10167, 10180, 10193, 10205, 10218, 10231, 10243, 10256, 10269, 10281, 10294, 10307, 10319, 10332, 10345, 10357, 10370, 10383, 10396, 10408, 10421, 10434, 10447, 10460, 10472, 10485, 10498, 10511, 10524, 10536, 10549, 10562, 10575, 10588, 10601, 10614, 10626, 10639, 10652, 10665, 10678, 10691, 10704, 10717, 10730, 10743, 10756, 10769, 10782, 10795, 10808, 10821, 10834, 10847, 10860, 10873, 10886, 10899, 10912, 10925, 10938, 10951, 10964, 10977, 10990, 11003, 11017, 11030, 11043, 11056, 11069, 11082, 11095, 11109, 11122, 11135, 11148, 11161, 11175, 11188, 11201, 11214, 11228, 11241, 11254, 11267, 11281, 11294, 11307, 11320, 11334, 11347, 11360, 11374, 11387, 11400, 11414, 11427, 11441, 11454, 11467, 11481, 11494, 11508, 11521, 11534, 11548, 11561, 11575, 11588, 11602, 11615, 11629, 11642, 11656, 11669, 11683, 11696, 11710, 11723, 11737, 11750, 11764, 11777, 11791, 11804, 11818, 11832, 11845, 11859, 11872, 11886, 11900, 11913, 11927, 11941, 11954, 11968, 11982, 11995, 12009, 12023, 12037, 12050, 12064, 12078, 12091, 12105, 12119, 12133, 12147, 12160, 12174, 12188, 12202, 12216, 12229, 12243, 12257, 12271, 12285, 12299, 12312, 12326, 12340, 12354, 12368, 12382, 12396, 12410, 12424, 12438, 12452, 12466, 12480, 12493, 12507, 12521, 12535, 12549, 12563, 12577, 12591, 12606, 12620, 12634, 12648, 12662, 12676, 12690, 12704, 12718, 12732, 12746, 12760, 12775, 12789, 12803, 12817, 12831, 12845, 12859, 12874, 12888, 12902, 12916, 12930, 12945, 12959, 12973, 12987, 13002, 13016, 13030, 13044, 13059, 13073, 13087, 13102, 13116, 13130, 13145, 13159, 13173, 13188, 13202, 13216, 13231, 13245, 13260, 13274, 13288, 13303, 13317, 13332, 13346, 13361, 13375, 13389, 13404, 13418, 13433, 13447, 13462, 13476, 13491, 13505, 13520, 13534, 13549, 13564, 13578, 13593, 13607, 13622, 13637, 13651, 13666, 13680, 13695, 13710, 13724, 13739, 13754, 13768, 13783, 13798, 13812, 13827, 13842, 13856, 13871, 13886, 13901, 13915, 13930, 13945, 13960, 13974, 13989, 14004, 14019, 14034, 14048, 14063, 14078, 14093, 14108, 14123, 14137, 14152, 14167, 14182, 14197, 14212, 14227, 14242, 14257, 14272, 14287, 14301, 14316, 14331, 14346, 14361, 14376, 14391, 14406, 14421, 14436, 14451, 14466, 14481, 14496, 14512, 14527, 14542, 14557, 14572, 14587, 14602, 14617, 14632, 14647, 14663, 14678, 14693, 14708, 14723, 14738, 14754, 14769, 14784, 14799, 14814, 14830, 14845, 14860, 14875, 14891, 14906, 14921, 14936, 14952, 14967, 14982, 14998, 15013, 15028, 15044, 15059, 15074, 15090, 15105, 15120, 15136, 15151, 15166, 15182, 15197, 15213, 15228, 15244, 15259, 15274, 15290, 15305, 15321, 15336, 15352, 15367, 15383, 15398, 15414, 15429, 15445, 15460, 15476, 15492, 15507, 15523, 15538, 15554, 15569, 15585, 15601, 15616, 15632, 15648, 15663, 15679, 15694, 15710, 15726, 15742, 15757, 15773, 15789, 15804, 15820, 15836, 15852, 15867, 15883, 15899, 15915, 15930, 15946, 15962, 15978, 15994, 16009, 16025, 16041, 16057, 16073, 16089, 16104, 16120, 16136, 16152, 16168, 16184, 16200, 16216, 16232, 16248, 16263, 16279, 16295, 16311, 16327, 16343, 16359, 16375, 16391, 16407, 16423, 16439, 16455, 16471, 16487, 16503, 16520, 16536, 16552, 16568, 16584, 16600, 16616, 16632, 16648, 16665, 16681, 16697, 16713, 16729, 16745, 16761, 16778, 16794, 16810, 16826, 16843, 16859, 16875, 16891, 16907, 16924, 16940, 16956, 16973, 16989, 17005, 17021, 17038, 17054, 17070, 17087, 17103, 17120, 17136, 17152, 17169, 17185, 17201, 17218, 17234, 17251, 17267, 17283, 17300, 17316, 17333, 17349, 17366, 17382, 17399, 17415, 17432, 17448, 17465, 17481, 17498, 17514, 17531, 17547, 17564, 17581, 17597, 17614, 17630, 17647, 17664, 17680, 17697, 17714, 17730, 17747, 17763, 17780, 17797, 17813, 17830, 17847, 17864, 17880, 17897, 17914, 17930, 17947, 17964, 17981, 17998, 18014, 18031, 18048, 18065, 18081, 18098, 18115, 18132, 18149, 18166, 18183, 18199, 18216, 18233, 18250, 18267, 18284, 18301, 18318, 18335, 18351, 18368, 18385, 18402, 18419, 18436, 18453, 18470, 18487, 18504, 18521, 18538, 18555, 18572, 18589, 18606, 18624, 18641, 18658, 18675, 18692, 18709, 18726, 18743, 18760, 18777, 18795, 18812, 18829, 18846, 18863, 18880, 18898, 18915, 18932, 18949, 18966, 18984, 19001, 19018, 19035, 19053, 19070, 19087, 19104, 19122, 19139, 19156, 19174, 19191, 19208, 19225, 19243, 19260, 19278, 19295, 19312, 19330, 19347, 19364, 19382, 19399, 19417, 19434, 19452, 19469, 19486, 19504, 19521, 19539, 19556, 19574, 19591, 19609, 19626, 19644, 19661, 19679, 19696, 19714, 19732, 19749, 19767, 19784, 19802, 19819, 19837, 19855, 19872, 19890, 19908, 19925, 19943, 19961, 19978, 19996, 20014, 20031, 20049, 20067, 20084, 20102, 20120, 20138, 20155, 20173, 20191, 20209, 20226, 20244, 20262, 20280, 20298, 20315, 20333, 20351, 20369, 20387, 20405, 20422, 20440, 20458, 20476, 20494, 20512, 20530, 20548, 20566, 20584, 20601, 20619, 20637, 20655, 20673, 20691, 20709, 20727, 20745, 20763, 20781, 20799, 20817, 20835, 20854, 20872, 20890, 20908, 20926, 20944, 20962, 20980, 20998, 21016, 21034, 21053, 21071, 21089, 21107, 21125, 21143, 21162, 21180, 21198, 21216, 21234, 21253, 21271, 21289, 21307, 21326, 21344, 21362, 21380, 21399, 21417, 21435, 21454, 21472, 21490, 21509, 21527, 21545, 21564, 21582, 21600, 21619, 21637, 21656, 21674, 21692, 21711, 21729, 21748, 21766, 21784, 21803, 21821, 21840, 21858, 21877, 21895, 21914, 21932, 21951, 21969, 21988, 22007, 22025, 22044, 22062, 22081, 22099, 22118, 22137, 22155, 22174, 22192, 22211, 22230, 22248, 22267, 22286, 22304, 22323, 22342, 22360, 22379, 22398, 22416, 22435, 22454, 22473, 22491, 22510, 22529, 22548, 22566, 22585, 22604, 22623, 22642, 22660, 22679, 22698, 22717, 22736, 22755, 22774, 22792, 22811, 22830, 22849, 22868, 22887, 22906, 22925, 22944, 22963, 22982, 23001, 23019, 23038, 23057, 23076, 23095, 23114, 23133, 23152, 23171, 23191, 23210, 23229, 23248, 23267, 23286, 23305, 23324, 23343, 23362, 23381, 23400, 23420, 23439, 23458, 23477, 23496, 23515, 23535, 23554, 23573, 23592, 23611, 23631, 23650, 23669, 23688, 23707, 23727, 23746, 23765, 23785, 23804, 23823, 23842, 23862, 23881, 23900, 23920, 23939, 23958, 23978, 23997, 24016, 24036, 24055, 24075, 24094, 24113, 24133, 24152, 24172, 24191, 24211, 24230, 24250, 24269, 24289, 24308, 24328, 24347, 24367, 24386, 24406, 24425, 24445, 24464, 24484, 24503, 24523, 24542, 24562, 24582, 24601, 24621, 24641, 24660, 24680, 24699, 24719, 24739, 24758, 24778, 24798, 24817, 24837, 24857, 24877, 24896, 24916, 24936, 24956, 24975, 24995, 25015, 25035, 25054, 25074, 25094, 25114, 25134, 25153, 25173, 25193, 25213, 25233, 25253, 25273, 25292, 25312, 25332, 25352, 25372, 25392, 25412, 25432, 25452, 25472, 25492, 25512, 25532, 25552, 25572, 25592, 25612, 25632, 25652, 25672, 25692, 25712, 25732, 25752, 25772, 25792, 25812, 25832, 25852, 25872, 25893, 25913, 25933, 25953, 25973, 25993, 26013, 26034, 26054, 26074, 26094, 26114, 26135, 26155, 26175, 26195, 26215, 26236, 26256, 26276, 26296, 26317, 26337, 26357, 26378, 26398, 26418, 26439, 26459, 26479, 26500, 26520, 26540, 26561, 26581, 26601, 26622, 26642, 26663, 26683, 26704, 26724, 26744, 26765, 26785, 26806, 26826, 26847, 26867, 26888, 26908, 26929, 26949, 26970, 26990, 27011, 27031, 27052, 27073, 27093, 27114, 27134, 27155, 27176, 27196, 27217, 27237, 27258, 27279, 27299, 27320, 27341, 27361, 27382, 27403, 27423, 27444, 27465, 27486, 27506, 27527, 27548, 27569, 27589, 27610, 27631, 27652, 27672, 27693, 27714, 27735, 27756, 27777, 27797, 27818, 27839, 27860, 27881, 27902, 27923, 27943, 27964, 27985, 28006, 28027, 28048, 28069, 28090, 28111, 28132, 28153, 28174, 28195, 28216, 28237, 28258, 28279, 28300, 28321, 28342, 28363, 28384, 28405, 28426, 28447, 28468, 28490, 28511, 28532, 28553, 28574, 28595, 28616, 28637, 28659, 28680, 28701, 28722, 28743, 28765, 28786, 28807, 28828, 28849, 28871, 28892, 28913, 28934, 28956, 28977, 28998, 29020, 29041, 29062, 29084, 29105, 29126, 29148, 29169, 29190, 29212, 29233, 29254, 29276, 29297, 29319, 29340, 29361, 29383, 29404, 29426, 29447, 29469, 29490, 29512, 29533, 29554, 29576, 29597, 29619, 29641, 29662, 29684, 29705, 29727, 29748, 29770, 29791, 29813, 29835, 29856, 29878, 29899, 29921, 29943, 29964, 29986, 30008, 30029, 30051, 30073, 30094, 30116, 30138, 30159, 30181, 30203, 30225, 30246, 30268, 30290, 30312, 30333, 30355, 30377, 30399, 30421, 30442, 30464, 30486, 30508, 30530, 30552, 30573, 30595, 30617, 30639, 30661, 30683, 30705, 30727, 30749, 30770, 30792, 30814, 30836, 30858, 30880, 30902, 30924, 30946, 30968, 30990, 31012, 31034, 31056, 31078, 31100, 31122, 31144, 31166, 31189, 31211, 31233, 31255, 31277, 31299, 31321, 31343, 31365, 31388, 31410, 31432, 31454, 31476, 31498, 31521, 31543, 31565, 31587, 31610, 31632, 31654, 31676, 31698, 31721, 31743, 31765, 31788, 31810, 31832, 31855, 31877, 31899, 31921, 31944, 31966, 31989, 32011, 32033, 32056, 32078, 32100, 32123, 32145, 32168, 32190, 32213, 32235, 32257, 32280, 32302, 32325, 32347, 32370, 32392, 32415, 32437, 32460, 32482, 32505, 32527, 32550, 32573, 32595, 32618, 32640, 32663, 32686, 32708, 32731, 32753, 32776, 32799, 32821, 32844, 32867, 32889, 32912, 32935, 32957, 32980, 33003, 33025, 33048, 33071, 33094, 33116, 33139, 33162, 33185, 33207, 33230, 33253, 33276, 33299, 33322, 33344, 33367, 33390, 33413, 33436, 33459, 33481, 33504, 33527, 33550, 33573, 33596, 33619, 33642, 33665, 33688, 33711, 33734, 33757, 33780, 33803, 33826, 33849, 33872, 33895, 33918, 33941, 33964, 33987, 34010, 34033, 34056, 34079, 34102, 34125, 34148, 34171, 34194, 34218, 34241, 34264, 34287, 34310, 34333, 34356, 34380, 34403, 34426, 34449, 34472, 34496, 34519, 34542, 34565, 34589, 34612, 34635, 34658, 34682, 34705, 34728, 34752, 34775, 34798, 34822, 34845, 34868, 34892, 34915, 34938, 34962, 34985, 35008, 35032, 35055, 35079, 35102, 35126, 35149, 35172, 35196, 35219, 35243, 35266, 35290, 35313, 35337, 35360, 35384, 35407, 35431, 35454, 35478, 35501, 35525, 35549, 35572, 35596, 35619, 35643, 35667, 35690, 35714, 35737, 35761, 35785, 35808, 35832, 35856, 35879, 35903, 35927, 35950, 35974, 35998, 36022, 36045, 36069, 36093, 36117, 36140, 36164, 36188, 36212, 36235, 36259, 36283, 36307, 36331, 36355, 36378, 36402, 36426, 36450, 36474, 36498, 36522, 36546, 36569, 36593, 36617, 36641, 36665, 36689, 36713, 36737, 36761, 36785, 36809, 36833, 36857, 36881, 36905, 36929, 36953, 36977, 37001, 37025, 37049, 37073, 37097, 37121, 37146, 37170, 37194, 37218, 37242, 37266, 37290, 37314, 37339, 37363, 37387, 37411, 37435, 37459, 37484, 37508, 37532, 37556, 37581, 37605, 37629, 37653, 37678, 37702, 37726, 37750, 37775, 37799, 37823, 37848, 37872, 37896, 37921, 37945, 37969, 37994, 38018, 38042, 38067, 38091, 38116, 38140, 38165, 38189, 38213, 38238, 38262, 38287, 38311, 38336, 38360, 38385, 38409, 38434, 38458, 38483, 38507, 38532, 38556, 38581, 38605, 38630, 38655, 38679, 38704, 38728, 38753, 38778, 38802, 38827, 38852, 38876, 38901, 38925, 38950, 38975, 39000, 39024, 39049, 39074, 39098, 39123, 39148, 39173, 39197, 39222, 39247, 39272, 39296, 39321, 39346, 39371, 39396, 39420, 39445, 39470, 39495, 39520, 39545, 39569, 39594, 39619, 39644, 39669, 39694, 39719, 39744, 39769, 39794, 39819, 39844, 39868, 39893, 39918, 39943, 39968, 39993, 40018, 40043, 40068, 40093, 40119, 40144, 40169, 40194, 40219, 40244, 40269, 40294, 40319, 40344, 40369, 40394, 40420, 40445, 40470, 40495, 40520, 40545, 40571, 40596, 40621, 40646, 40671, 40697, 40722, 40747, 40772, 40798, 40823, 40848, 40873, 40899, 40924, 40949, 40975, 41000, 41025, 41050, 41076, 41101, 41127, 41152, 41177, 41203, 41228, 41253, 41279, 41304, 41330, 41355, 41380, 41406, 41431, 41457, 41482, 41508, 41533, 41559, 41584, 41610, 41635, 41661, 41686, 41712, 41737, 41763, 41788, 41814, 41840, 41865, 41891, 41916, 41942, 41968, 41993, 42019, 42044, 42070, 42096, 42121, 42147, 42173, 42198, 42224, 42250, 42275, 42301, 42327, 42353, 42378, 42404, 42430, 42456, 42481, 42507, 42533, 42559, 42584, 42610, 42636, 42662, 42688, 42714, 42739, 42765, 42791, 42817, 42843, 42869, 42895, 42921, 42946, 42972, 42998, 43024, 43050, 43076, 43102, 43128, 43154, 43180, 43206, 43232, 43258, 43284, 43310, 43336, 43362, 43388, 43414, 43440, 43466, 43492, 43518, 43544, 43571, 43597, 43623, 43649, 43675, 43701, 43727, 43753, 43780, 43806, 43832, 43858, 43884, 43911, 43937, 43963, 43989, 44015, 44042, 44068, 44094, 44120, 44147, 44173, 44199, 44225, 44252, 44278, 44304, 44331, 44357, 44383, 44410, 44436, 44462, 44489, 44515, 44542, 44568, 44594, 44621, 44647, 44674, 44700, 44726, 44753, 44779, 44806, 44832, 44859, 44885, 44912, 44938, 44965, 44991, 45018, 45044, 45071, 45097, 45124, 45151, 45177, 45204, 45230, 45257, 45283, 45310, 45337, 45363, 45390, 45417, 45443, 45470, 45497, 45523, 45550, 45577, 45603, 45630, 45657, 45683, 45710, 45737, 45764, 45790, 45817, 45844, 45871, 45897, 45924, 45951, 45978, 46005, 46032, 46058, 46085, 46112, 46139, 46166, 46193, 46219, 46246, 46273, 46300, 46327, 46354, 46381, 46408, 46435, 46462, 46489, 46516, 46543, 46570, 46597, 46624, 46651, 46678, 46705, 46732, 46759, 46786, 46813, 46840, 46867, 46894, 46921, 46948, 46975, 47002, 47029, 47057, 47084, 47111, 47138, 47165, 47192, 47219, 47247, 47274, 47301, 47328, 47355, 47383, 47410, 47437, 47464, 47491, 47519, 47546, 47573, 47601, 47628, 47655, 47682, 47710, 47737, 47764, 47792, 47819, 47846, 47874, 47901, 47928, 47956, 47983, 48011, 48038, 48065, 48093, 48120, 48148, 48175, 48203, 48230, 48257, 48285, 48312, 48340, 48367, 48395, 48422, 48450, 48477, 48505, 48533, 48560, 48588, 48615, 48643, 48670, 48698, 48726, 48753, 48781, 48808, 48836, 48864, 48891, 48919, 48947, 48974, 49002, 49030, 49057, 49085, 49113, 49140, 49168, 49196, 49224, 49251, 49279, 49307, 49335, 49362, 49390, 49418, 49446, 49474, 49501, 49529, 49557, 49585, 49613, 49641, 49668, 49696, 49724, 49752, 49780, 49808, 49836, 49864, 49892, 49920, 49947, 49975, 50003, 50031, 50059, 50087, 50115, 50143, 50171, 50199, 50227, 50255, 50283, 50311, 50339, 50367, 50396, 50424, 50452, 50480, 50508, 50536, 50564, 50592, 50620, 50648, 50677, 50705, 50733, 50761, 50789, 50817, 50846, 50874, 50902, 50930, 50958, 50987, 51015, 51043, 51071, 51100, 51128, 51156, 51184, 51213, 51241, 51269, 51298, 51326, 51354, 51383, 51411, 51439, 51468, 51496, 51524, 51553, 51581, 51610, 51638, 51666, 51695, 51723, 51752, 51780, 51809, 51837, 51866, 51894, 51923, 51951, 51980, 52008, 52037, 52065, 52094, 52122, 52151, 52179, 52208, 52236, 52265, 52294, 52322, 52351, 52379, 52408, 52437, 52465, 52494, 52523, 52551, 52580, 52609, 52637, 52666, 52695, 52723, 52752, 52781, 52810, 52838, 52867, 52896, 52925, 52953, 52982, 53011, 53040, 53068, 53097, 53126, 53155, 53184, 53213, 53241, 53270, 53299, 53328, 53357, 53386, 53415, 53444, 53472, 53501, 53530, 53559, 53588, 53617, 53646, 53675, 53704, 53733, 53762, 53791, 53820, 53849, 53878, 53907, 53936, 53965, 53994, 54023, 54052, 54081, 54110, 54139, 54169, 54198, 54227, 54256, 54285, 54314, 54343, 54372, 54402, 54431, 54460, 54489, 54518, 54548, 54577, 54606, 54635, 54664, 54694, 54723, 54752, 54781, 54811, 54840, 54869, 54899, 54928, 54957, 54986, 55016, 55045, 55074, 55104, 55133, 55163, 55192, 55221, 55251, 55280, 55309, 55339, 55368, 55398, 55427, 55457, 55486, 55515, 55545, 55574, 55604, 55633, 55663, 55692, 55722, 55751, 55781, 55810, 55840, 55870, 55899, 55929, 55958, 55988, 56017, 56047, 56077, 56106, 56136, 56165, 56195, 56225, 56254, 56284, 56314, 56343, 56373, 56403, 56432, 56462, 56492, 56522, 56551, 56581, 56611, 56641, 56670, 56700, 56730, 56760, 56789, 56819, 56849, 56879, 56909, 56938, 56968, 56998, 57028, 57058, 57088, 57118, 57148, 57177, 57207, 57237, 57267, 57297, 57327, 57357, 57387, 57417, 57447, 57477, 57507, 57537, 57567, 57597, 57627, 57657, 57687, 57717, 57747, 57777, 57807, 57837, 57867, 57897, 57927, 57957, 57987, 58018, 58048, 58078, 58108, 58138, 58168, 58198, 58229, 58259, 58289, 58319, 58349, 58380, 58410, 58440, 58470, 58500, 58531, 58561, 58591, 58621, 58652, 58682, 58712, 58743, 58773, 58803, 58834, 58864, 58894, 58925, 58955, 58985, 59016, 59046, 59076, 59107, 59137, 59168, 59198, 59228, 59259, 59289, 59320, 59350, 59381, 59411, 59442, 59472, 59503, 59533, 59564, 59594, 59625, 59655, 59686, 59716, 59747, 59777, 59808, 59839, 59869, 59900, 59930, 59961, 59992, 60022, 60053, 60084, 60114, 60145, 60176, 60206, 60237, 60268, 60298, 60329, 60360, 60390, 60421, 60452, 60483, 60513, 60544, 60575, 60606, 60636, 60667, 60698, 60729, 60760, 60791, 60821, 60852, 60883, 60914, 60945, 60976, 61006, 61037, 61068, 61099, 61130, 61161, 61192, 61223, 61254, 61285, 61316, 61347, 61378, 61409, 61440, 61471, 61502, 61533, 61564, 61595, 61626, 61657, 61688, 61719, 61750, 61781, 61812, 61843, 61874, 61905, 61936, 61968, 61999, 62030, 62061, 62092, 62123, 62154, 62186, 62217, 62248, 62279, 62310, 62342, 62373, 62404, 62435, 62467, 62498, 62529, 62560, 62592, 62623, 62654, 62685, 62717, 62748, 62779, 62811, 62842, 62873, 62905, 62936, 62968, 62999, 63030, 63062, 63093, 63125, 63156, 63187, 63219, 63250, 63282, 63313, 63345, 63376, 63408, 63439, 63471, 63502, 63534, 63565, 63597, 63628, 63660, 63691, 63723, 63754, 63786, 63818, 63849, 63881, 63912, 63944, 63976, 64007, 64039, 64070, 64102, 64134, 64165, 64197, 64229, 64260, 64292, 64324, 64356, 64387, 64419, 64451, 64483, 64514, 64546, 64578, 64610, 64641, 64673, 64705, 64737, 64769, 64800, 64832, 64864, 64896, 64928, 64960, 64992, 65023, 65055, 65087, 65119, 65151, 65183, 65215, 65247, 65279, 65311, 65343, 65375, 65407, 65439, 65471, 65502, 65535, }; const uint16_t lut_left_sin_pan[] = { 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, 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_red_gamma[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 7, 7, 8, 9, 9, 10, 10, 11, 12, 12, 13, 14, 15, 16, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 32, 33, 34, 36, 37, 39, 40, 42, 44, 45, 47, 49, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 73, 75, 77, 80, 82, 84, 87, 89, 92, 95, 97, 100, 103, 106, 109, 112, 115, 118, 121, 124, 127, 131, 134, 137, 141, 144, 148, 151, 155, 159, 162, 166, 170, 174, 178, 182, 186, 190, 195, 199, 203, 208, 212, 217, 221, 226, 231, 235, 240, 245, 250, 255, 260, 265, 271, 276, 281, 287, 292, 298, 303, 309, 315, 321, 326, 332, 339, 345, 351, 357, 363, 370, 376, 383, 389, 396, 403, 410, 417, 424, 431, 438, 445, 452, 460, 467, 475, 482, 490, 498, 505, 513, 521, 529, 537, 546, 554, 562, 571, 579, 588, 597, 605, 614, 623, 632, 641, 651, 660, 669, 679, 688, 698, 708, 717, 727, 737, 747, 758, 768, 778, 789, 799, 810, 820, 831, 842, 853, 864, 875, 886, 898, 909, 921, 932, 944, 956, 968, 980, 992, 1004, 1016, 1028, 1041, 1053, 1066, 1079, 1092, 1105, 1118, 1131, 1144, 1157, 1171, 1184, 1198, 1212, 1226, 1240, 1254, 1268, 1282, 1296, 1311, 1325, 1340, 1355, 1370, 1385, 1400, 1415, 1430, 1446, 1461, 1477, 1492, 1508, 1524, 1540, 1556, 1573, 1589, 1606, 1622, 1639, 1656, 1673, 1690, 1707, 1724, 1741, 1759, 1776, 1794, 1812, 1830, 1848, 1866, 1884, 1903, 1921, 1940, 1958, 1977, 1996, 2015, 2034, 2054, 2073, 2093, 2112, 2132, 2152, 2172, 2192, 2212, 2233, 2253, 2274, 2295, 2315, 2336, 2358, 2379, 2400, 2422, 2443, 2465, 2487, 2509, 2531, 2553, 2575, 2598, 2620, 2643, 2666, 2689, 2712, 2735, 2758, 2782, 2805, 2829, 2853, 2877, 2901, 2925, 2950, 2974, 2999, 3024, 3049, 3074, 3099, 3124, 3149, 3175, 3201, 3227, 3252, 3279, 3305, 3331, 3358, 3384, 3411, 3438, 3465, 3492, 3519, 3547, 3574, 3602, 3630, 3658, 3686, 3714, 3743, 3771, 3800, 3829, 3858, 3887, 3916, 3946, 3975, 4005, 4035, 4065, 4095, 4125, 4155, 4186, 4216, 4247, 4278, 4309, 4341, 4372, 4404, 4435, 4467, 4499, 4531, 4563, 4596, 4628, 4661, 4694, 4727, 4760, 4794, 4827, 4861, 4894, 4928, 4962, 4997, 5031, 5065, 5100, 5135, 5170, 5205, 5240, 5276, 5311, 5347, 5383, 5419, 5455, 5492, 5528, 5565, 5602, 5639, 5676, 5713, 5750, 5788, 5826, 5864, 5902, 5940, 5978, 6017, 6056, 6095, 6134, 6173, 6212, 6252, 6291, 6331, 6371, 6411, 6452, 6492, 6533, 6574, 6615, 6656, 6697, 6739, 6780, 6822, 6864, 6906, 6949, 6991, 7034, 7077, 7119, 7163, 7206, 7249, 7293, 7337, 7381, 7425, 7469, 7514, 7558, 7603, 7648, 7693, 7739, 7784, 7830, 7876, 7922, 7968, 8014, 8061, 8108, 8155, 8202, 8249, 8296, 8344, 8392, 8440, 8488, 8536, 8585, 8633, 8682, 8731, 8780, 8830, 8879, 8929, 8979, 9029, 9079, 9129, 9180, 9231, 9282, 9333, 9384, 9436, 9487, 9539, 9591, 9644, 9696, 9749, 9801, 9854, 9908, 9961, 10014, 10068, 10122, 10176, 10230, 10285, 10339, 10394, 10449, 10504, 10560, 10615, 10671, 10727, 10783, 10840, 10896, 10953, 11010, 11067, 11124, 11181, 11239, 11297, 11355, 11413, 11472, 11530, 11589, 11648, 11707, 11767, 11826, 11886, 11946, 12006, 12066, 12127, 12188, 12249, 12310, 12371, 12432, 12494, 12556, 12618, 12680, 12743, 12806, 12869, 12932, 12995, 13058, 13122, 13186, 13250, 13314, 13379, 13444, 13508, 13574, 13639, 13704, 13770, 13836, 13902, 13968, 14035, 14102, 14168, 14236, 14303, 14370, 14438, 14506, 14574, 14643, 14711, 14780, 14849, 14918, 14987, 15057, 15127, 15197, 15267, 15337, 15408, 15479, 15550, 15621, 15693, 15764, 15836, 15908, 15980, 16053, 16126, 16199, 16272, 16345, 16419, 16492, 16566, 16641, 16715, 16790, 16865, 16940, 17015, 17090, 17166, 17242, 17318, 17394, 17471, 17548, 17625, 17702, 17780, 17857, 17935, 18013, 18091, 18170, 18249, 18328, 18407, 18486, 18566, 18646, 18726, 18806, 18887, 18967, 19048, 19129, 19211, 19292, 19374, 19456, 19539, 19621, 19704, 19787, 19870, 19953, 20037, 20121, 20205, 20289, 20374, 20458, 20543, 20629, 20714, 20800, 20886, 20972, 21058, 21145, 21231, 21318, 21406, 21493, 21581, 21669, 21757, 21845, 21934, 22023, 22112, 22201, 22291, 22381, 22471, 22561, 22651, 22742, 22833, 22924, 23016, 23107, 23199, 23291, 23384, 23476, 23569, 23662, 23756, 23849, 23943, 24037, 24131, 24226, 24320, 24415, 24511, 24606, 24702, 24798, 24894, 24990, 25087, 25184, 25281, 25378, 25476, 25574, 25672, 25770, 25868, 25967, 26066, 26166, 26265, 26365, 26465, 26565, 26666, 26766, 26867, 26969, 27070, 27172, 27274, 27376, 27479, 27581, 27684, 27787, 27891, 27995, 28098, 28203, 28307, 28412, 28517, 28622, 28727, 28833, 28939, 29045, 29152, 29258, 29365, 29472, 29580, 29688, 29795, 29904, 30012, 30121, 30230, 30339, 30448, 30558, 30668, 30778, 30889, 30999, 31110, 31222, 31333, 31445, 31557, 31669, 31782, 31894, 32008, 32121, 32234, 32348, 32462, 32577, 32691, 32806, 32921, 33036, 33152, 33268, 33384, 33500, 33617, 33734, 33851, 33969, 34086, 34204, 34322, 34441, 34560, 34679, 34798, 34918, 35037, 35157, 35278, 35398, 35519, 35640, 35762, 35883, 36005, 36127, 36250, 36373, 36496, 36619, 36742, 36866, 36990, 37115, 37239, 37364, 37489, 37614, 37740, 37866, 37992, 38119, 38246, 38373, 38500, 38627, 38755, 38883, 39012, 39140, 39269, 39398, 39528, 39658, 39788, 39918, 40048, 40179, 40310, 40442, 40573, 40705, 40838, 40970, 41103, 41236, 41369, 41503, 41637, 41771, 41905, 42040, 42175, 42310, 42446, 42581, 42718, 42854, 42991, 43127, 43265, 43402, 43540, 43678, 43816, 43955, 44094, 44233, 44372, 44512, 44652, 44793, 44933, 45074, 45215, 45357, 45498, 45640, 45783, 45925, 46068, 46211, 46355, 46498, 46642, 46787, 46931, 47076, 47221, 47367, 47512, 47658, 47805, 47951, 48098, 48245, 48393, 48541, 48689, 48837, 48986, 49134, 49284, 49433, 49583, 49733, 49883, 50034, 50185, 50336, 50488, 50640, 50792, 50944, 51097, 51250, 51403, 51557, 51711, 51865, 52019, 52174, 52329, 52484, 52640, 52796, 52952, 53109, 53266, 53423, 53580, 53738, 53896, 54054, 54213, 54372, 54531, 54691, 54851, 55011, 55171, 55332, 55493, 55654, 55816, 55978, 56140, 56303, 56465, 56629, 56792, 56956, 57120, 57284, 57449, 57614, 57779, 57945, 58110, 58277, 58443, 58610, 58777, 58944, 59112, 59280, 59449, 59617, 59786, 59955, 60125, 60295, 60465, 60635, 60806, 60977, 61149, 61320, 61492, 61665, 61837, 62010, 62184, 62357, 62531, 62705, 62880, 63055, 63230, 63405, 63581, 63757, 63933, 64110, 64287, 64464, 64642, 64820, 64998, 65177, 65356, 65535, }; const uint16_t lut_led_green_gamma[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 10, 10, 11, 12, 13, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 31, 32, 34, 35, 37, 38, 40, 42, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 70, 72, 74, 77, 79, 82, 84, 87, 90, 93, 95, 98, 101, 104, 107, 110, 113, 116, 120, 123, 126, 130, 133, 137, 140, 144, 148, 151, 155, 159, 163, 167, 171, 175, 179, 184, 188, 192, 197, 201, 206, 210, 215, 220, 225, 230, 234, 239, 245, 250, 255, 260, 266, 271, 277, 282, 288, 293, 299, 305, 311, 317, 323, 329, 335, 342, 348, 354, 361, 367, 374, 381, 388, 395, 402, 409, 416, 423, 430, 437, 445, 452, 460, 468, 475, 483, 491, 499, 507, 515, 523, 532, 540, 549, 557, 566, 575, 583, 592, 601, 610, 619, 629, 638, 647, 657, 666, 676, 686, 696, 706, 716, 726, 736, 746, 757, 767, 778, 788, 799, 810, 821, 832, 843, 854, 865, 877, 888, 900, 912, 923, 935, 947, 959, 971, 984, 996, 1008, 1021, 1034, 1046, 1059, 1072, 1085, 1098, 1111, 1125, 1138, 1152, 1165, 1179, 1193, 1207, 1221, 1235, 1249, 1264, 1278, 1293, 1307, 1322, 1337, 1352, 1367, 1382, 1397, 1413, 1428, 1444, 1460, 1475, 1491, 1507, 1524, 1540, 1556, 1573, 1589, 1606, 1623, 1640, 1657, 1674, 1691, 1708, 1726, 1743, 1761, 1779, 1797, 1815, 1833, 1851, 1870, 1888, 1907, 1925, 1944, 1963, 1982, 2001, 2021, 2040, 2060, 2079, 2099, 2119, 2139, 2159, 2179, 2199, 2220, 2241, 2261, 2282, 2303, 2324, 2345, 2367, 2388, 2410, 2431, 2453, 2475, 2497, 2519, 2541, 2564, 2586, 2609, 2632, 2655, 2678, 2701, 2724, 2748, 2771, 2795, 2819, 2843, 2867, 2891, 2915, 2940, 2964, 2989, 3014, 3039, 3064, 3089, 3114, 3140, 3165, 3191, 3217, 3243, 3269, 3295, 3322, 3348, 3375, 3402, 3428, 3456, 3483, 3510, 3538, 3565, 3593, 3621, 3649, 3677, 3705, 3734, 3762, 3791, 3820, 3849, 3878, 3907, 3936, 3966, 3995, 4025, 4055, 4085, 4115, 4146, 4176, 4207, 4238, 4268, 4300, 4331, 4362, 4394, 4425, 4457, 4489, 4521, 4553, 4585, 4618, 4651, 4683, 4716, 4749, 4782, 4816, 4849, 4883, 4917, 4951, 4985, 5019, 5053, 5088, 5123, 5157, 5192, 5228, 5263, 5298, 5334, 5370, 5405, 5441, 5478, 5514, 5550, 5587, 5624, 5661, 5698, 5735, 5772, 5810, 5848, 5886, 5924, 5962, 6000, 6038, 6077, 6116, 6155, 6194, 6233, 6273, 6312, 6352, 6392, 6432, 6472, 6512, 6553, 6593, 6634, 6675, 6716, 6758, 6799, 6841, 6882, 6924, 6966, 7009, 7051, 7094, 7136, 7179, 7222, 7266, 7309, 7353, 7396, 7440, 7484, 7528, 7573, 7617, 7662, 7707, 7752, 7797, 7842, 7888, 7934, 7980, 8026, 8072, 8118, 8165, 8211, 8258, 8305, 8352, 8400, 8447, 8495, 8543, 8591, 8639, 8687, 8736, 8785, 8834, 8883, 8932, 8981, 9031, 9081, 9131, 9181, 9231, 9281, 9332, 9383, 9434, 9485, 9536, 9588, 9639, 9691, 9743, 9795, 9848, 9900, 9953, 10006, 10059, 10112, 10165, 10219, 10273, 10327, 10381, 10435, 10490, 10544, 10599, 10654, 10709, 10765, 10820, 10876, 10932, 10988, 11044, 11101, 11157, 11214, 11271, 11328, 11386, 11443, 11501, 11559, 11617, 11675, 11734, 11793, 11851, 11910, 11970, 12029, 12089, 12148, 12208, 12268, 12329, 12389, 12450, 12511, 12572, 12633, 12695, 12756, 12818, 12880, 12942, 13005, 13067, 13130, 13193, 13256, 13319, 13383, 13447, 13510, 13575, 13639, 13703, 13768, 13833, 13898, 13963, 14029, 14094, 14160, 14226, 14292, 14359, 14425, 14492, 14559, 14626, 14694, 14761, 14829, 14897, 14965, 15033, 15102, 15171, 15240, 15309, 15378, 15448, 15517, 15587, 15657, 15728, 15798, 15869, 15940, 16011, 16082, 16154, 16226, 16297, 16370, 16442, 16514, 16587, 16660, 16733, 16807, 16880, 16954, 17028, 17102, 17176, 17251, 17325, 17400, 17476, 17551, 17626, 17702, 17778, 17854, 17931, 18007, 18084, 18161, 18238, 18316, 18393, 18471, 18549, 18627, 18706, 18785, 18863, 18942, 19022, 19101, 19181, 19261, 19341, 19421, 19502, 19583, 19663, 19745, 19826, 19908, 19989, 20071, 20154, 20236, 20319, 20402, 20485, 20568, 20651, 20735, 20819, 20903, 20987, 21072, 21157, 21242, 21327, 21412, 21498, 21584, 21670, 21756, 21843, 21929, 22016, 22103, 22191, 22278, 22366, 22454, 22542, 22631, 22720, 22808, 22898, 22987, 23076, 23166, 23256, 23346, 23437, 23527, 23618, 23709, 23801, 23892, 23984, 24076, 24168, 24260, 24353, 24446, 24539, 24632, 24726, 24820, 24914, 25008, 25102, 25197, 25292, 25387, 25482, 25578, 25673, 25769, 25866, 25962, 26059, 26156, 26253, 26350, 26448, 26545, 26643, 26742, 26840, 26939, 27038, 27137, 27236, 27336, 27436, 27536, 27636, 27737, 27838, 27939, 28040, 28141, 28243, 28345, 28447, 28549, 28652, 28755, 28858, 28961, 29065, 29169, 29273, 29377, 29481, 29586, 29691, 29796, 29902, 30007, 30113, 30219, 30326, 30432, 30539, 30646, 30753, 30861, 30969, 31077, 31185, 31293, 31402, 31511, 31620, 31730, 31839, 31949, 32060, 32170, 32281, 32391, 32503, 32614, 32725, 32837, 32949, 33062, 33174, 33287, 33400, 33513, 33627, 33741, 33855, 33969, 34083, 34198, 34313, 34428, 34544, 34659, 34775, 34891, 35008, 35125, 35241, 35359, 35476, 35594, 35712, 35830, 35948, 36067, 36186, 36305, 36424, 36544, 36664, 36784, 36904, 37025, 37146, 37267, 37388, 37510, 37631, 37754, 37876, 37998, 38121, 38244, 38368, 38491, 38615, 38739, 38864, 38988, 39113, 39238, 39364, 39489, 39615, 39741, 39867, 39994, 40121, 40248, 40375, 40503, 40631, 40759, 40888, 41016, 41145, 41274, 41404, 41533, 41663, 41793, 41924, 42054, 42185, 42317, 42448, 42580, 42712, 42844, 42976, 43109, 43242, 43375, 43509, 43643, 43777, 43911, 44046, 44180, 44316, 44451, 44586, 44722, 44858, 44995, 45131, 45268, 45405, 45543, 45681, 45818, 45957, 46095, 46234, 46373, 46512, 46652, 46791, 46931, 47072, 47212, 47353, 47494, 47636, 47777, 47919, 48061, 48204, 48346, 48489, 48633, 48776, 48920, 49064, 49208, 49353, 49497, 49643, 49788, 49933, 50079, 50226, 50372, 50519, 50666, 50813, 50960, 51108, 51256, 51404, 51553, 51702, 51851, 52000, 52150, 52300, 52450, 52601, 52751, 52902, 53054, 53205, 53357, 53509, 53662, 53814, 53967, 54120, 54274, 54427, 54581, 54736, 54890, 55045, 55200, 55356, 55511, 55667, 55824, 55980, 56137, 56294, 56451, 56609, 56767, 56925, 57083, 57242, 57401, 57560, 57720, 57879, 58040, 58200, 58361, 58521, 58683, 58844, 59006, 59168, 59330, 59493, 59656, 59819, 59982, 60146, 60310, 60474, 60639, 60804, 60969, 61134, 61300, 61466, 61632, 61799, 61966, 62133, 62300, 62468, 62636, 62804, 62973, 63142, 63311, 63480, 63650, 63820, 63990, 64160, 64331, 64502, 64674, 64845, 65017, 65190, 65362, 65535, }; const uint16_t* lookup_table_u16_table[] = { lut_linear_to_exp, lut_left_sin_pan, lut_right_cos_pan, lut_led_red_gamma, lut_led_green_gamma, }; const uint8_t* lookup_table_u8_table[] = { }; } // namespace stereo_mix