You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1667 lines
54KB

  1. // Copyright 2013 Olivier Gillet.
  2. //
  3. // Author: Olivier Gillet (ol.gillet@gmail.com)
  4. //
  5. // Permission is hereby granted, free of charge, to any person obtaining a copy
  6. // of this software and associated documentation files (the "Software"), to deal
  7. // in the Software without restriction, including without limitation the rights
  8. // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  9. // copies of the Software, and to permit persons to whom the Software is
  10. // furnished to do so, subject to the following conditions:
  11. //
  12. // The above copyright notice and this permission notice shall be included in
  13. // all copies or substantial portions of the Software.
  14. //
  15. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  16. // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  17. // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  18. // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  19. // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  20. // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  21. // THE SOFTWARE.
  22. //
  23. // See http://creativecommons.org/licenses/MIT/ for more information.
  24. //
  25. // -----------------------------------------------------------------------------
  26. //
  27. // Resources definitions.
  28. //
  29. // Automatically generated with:
  30. // make resources
  31. #include "yarns/resources.h"
  32. namespace yarns {
  33. static const char str_dummy[] = "dummy";
  34. const char* string_table[] = {
  35. str_dummy,
  36. };
  37. const uint16_t lut_env_expo[] = {
  38. 0, 1035, 2054, 3057,
  39. 4045, 5018, 5975, 6918,
  40. 7846, 8760, 9659, 10545,
  41. 11416, 12275, 13120, 13952,
  42. 14771, 15577, 16371, 17152,
  43. 17921, 18679, 19425, 20159,
  44. 20881, 21593, 22294, 22983,
  45. 23662, 24331, 24989, 25637,
  46. 26274, 26902, 27520, 28129,
  47. 28728, 29318, 29899, 30471,
  48. 31034, 31588, 32133, 32670,
  49. 33199, 33720, 34232, 34737,
  50. 35233, 35722, 36204, 36678,
  51. 37145, 37604, 38056, 38502,
  52. 38940, 39371, 39796, 40215,
  53. 40626, 41032, 41431, 41824,
  54. 42211, 42592, 42967, 43336,
  55. 43699, 44057, 44409, 44756,
  56. 45097, 45434, 45764, 46090,
  57. 46411, 46727, 47037, 47344,
  58. 47645, 47941, 48233, 48521,
  59. 48804, 49083, 49357, 49627,
  60. 49893, 50155, 50412, 50666,
  61. 50916, 51162, 51404, 51642,
  62. 51877, 52108, 52335, 52559,
  63. 52780, 52997, 53210, 53421,
  64. 53628, 53831, 54032, 54230,
  65. 54424, 54616, 54804, 54990,
  66. 55173, 55353, 55530, 55704,
  67. 55876, 56045, 56211, 56375,
  68. 56536, 56695, 56851, 57005,
  69. 57157, 57306, 57453, 57597,
  70. 57740, 57880, 58018, 58153,
  71. 58287, 58419, 58548, 58676,
  72. 58801, 58925, 59047, 59167,
  73. 59285, 59401, 59515, 59628,
  74. 59739, 59848, 59955, 60061,
  75. 60165, 60267, 60368, 60468,
  76. 60566, 60662, 60757, 60850,
  77. 60942, 61032, 61121, 61209,
  78. 61295, 61380, 61464, 61546,
  79. 61628, 61707, 61786, 61863,
  80. 61939, 62014, 62088, 62161,
  81. 62233, 62303, 62372, 62441,
  82. 62508, 62574, 62639, 62703,
  83. 62767, 62829, 62890, 62950,
  84. 63010, 63068, 63125, 63182,
  85. 63238, 63293, 63347, 63400,
  86. 63452, 63504, 63554, 63604,
  87. 63654, 63702, 63750, 63797,
  88. 63843, 63888, 63933, 63977,
  89. 64021, 64063, 64105, 64147,
  90. 64188, 64228, 64267, 64306,
  91. 64344, 64382, 64419, 64456,
  92. 64492, 64527, 64562, 64596,
  93. 64630, 64664, 64696, 64729,
  94. 64760, 64792, 64822, 64853,
  95. 64883, 64912, 64941, 64969,
  96. 64997, 65025, 65052, 65079,
  97. 65105, 65131, 65157, 65182,
  98. 65206, 65231, 65255, 65278,
  99. 65302, 65324, 65347, 65369,
  100. 65391, 65412, 65434, 65454,
  101. 65475, 65495, 65515, 65535,
  102. 65535,
  103. };
  104. const uint16_t lut_arpeggiator_patterns[] = {
  105. 21845, 62965, 46517, 54741,
  106. 43861, 22869, 38293, 2313,
  107. 37449, 21065, 18761, 54553,
  108. 27499, 23387, 30583, 28087,
  109. 22359, 28527, 30431, 43281,
  110. 28609, 53505,
  111. };
  112. const uint16_t lut_consonance[] = {
  113. 0, 1, 4, 9,
  114. 16, 25, 36, 49,
  115. 64, 81, 100, 121,
  116. 144, 169, 196, 225,
  117. 256, 289, 324, 361,
  118. 400, 441, 484, 529,
  119. 576, 625, 676, 729,
  120. 784, 841, 900, 961,
  121. 1024, 1089, 1156, 1225,
  122. 1296, 1369, 1444, 1521,
  123. 1600, 1681, 1764, 1849,
  124. 1936, 2025, 2116, 2209,
  125. 2304, 2401, 2500, 2601,
  126. 2704, 2809, 2916, 3025,
  127. 3136, 3249, 3502, 3389,
  128. 3278, 3169, 3062, 2957,
  129. 2854, 2753, 2654, 2557,
  130. 2462, 2369, 2278, 2189,
  131. 2102, 2017, 1934, 1853,
  132. 1774, 1697, 1622, 1549,
  133. 1478, 1409, 1342, 1277,
  134. 1214, 1153, 1094, 1037,
  135. 982, 929, 878, 829,
  136. 782, 737, 694, 653,
  137. 614, 577, 542, 509,
  138. 478, 449, 422, 397,
  139. 374, 353, 334, 317,
  140. 302, 289, 278, 269,
  141. 262, 257, 254, 253,
  142. 254, 257, 262, 269,
  143. 278, 289, 302, 317,
  144. 334, 353, 374, 397,
  145. 422, 449, 231, 206,
  146. 183, 162, 143, 126,
  147. 111, 98, 87, 78,
  148. 71, 66, 63, 62,
  149. 63, 66, 71, 78,
  150. 87, 98, 111, 126,
  151. 143, 162, 183, 206,
  152. 231, 258, 287, 318,
  153. 351, 386, 423, 462,
  154. 503, 546, 591, 638,
  155. 687, 738, 791, 846,
  156. 903, 962, 1023, 1086,
  157. 1151, 1218, 1287, 1358,
  158. 1431, 1506, 1583, 1662,
  159. 1743, 1826, 1911, 1998,
  160. 2087, 1978, 1891, 1806,
  161. 1723, 1642, 1563, 1486,
  162. 1411, 1338, 1267, 1198,
  163. 1131, 1066, 1003, 942,
  164. 883, 826, 771, 718,
  165. 667, 618, 571, 526,
  166. 483, 442, 403, 366,
  167. 331, 298, 267, 238,
  168. 211, 186, 163, 142,
  169. 123, 106, 91, 78,
  170. 67, 58, 51, 46,
  171. 43, 42, 43, 46,
  172. 51, 58, 67, 78,
  173. 91, 106, 123, 142,
  174. 163, 186, 211, 234,
  175. 207, 182, 159, 138,
  176. 119, 102, 87, 74,
  177. 63, 54, 47, 42,
  178. 39, 38, 39, 42,
  179. 47, 54, 63, 74,
  180. 87, 102, 119, 138,
  181. 159, 182, 207, 234,
  182. 263, 294, 327, 362,
  183. 399, 438, 479, 522,
  184. 567, 614, 663, 714,
  185. 767, 822, 879, 938,
  186. 999, 1062, 1127, 1194,
  187. 1263, 1334, 1407, 1482,
  188. 1559, 1638, 1719, 1802,
  189. 1887, 1974, 2063, 2154,
  190. 2247, 2342, 2439, 2538,
  191. 2639, 2742, 2847, 2954,
  192. 3063, 3174, 3287, 3344,
  193. 3231, 3120, 3011, 2904,
  194. 2799, 2696, 2595, 2496,
  195. 2399, 2304, 2211, 2120,
  196. 2031, 1944, 1859, 1776,
  197. 1695, 1616, 1539, 1464,
  198. 1391, 1320, 1251, 1184,
  199. 1119, 1056, 995, 936,
  200. 879, 824, 771, 720,
  201. 671, 624, 579, 536,
  202. 495, 456, 419, 384,
  203. 351, 320, 291, 264,
  204. 239, 216, 195, 176,
  205. 159, 144, 131, 120,
  206. 111, 104, 99, 96,
  207. 95, 96, 99, 104,
  208. 111, 120, 131, 144,
  209. 159, 176, 195, 216,
  210. 239, 264, 291, 193,
  211. 168, 145, 124, 105,
  212. 88, 73, 60, 49,
  213. 40, 33, 28, 25,
  214. 24, 25, 28, 33,
  215. 40, 49, 60, 73,
  216. 88, 105, 124, 145,
  217. 168, 193, 220, 249,
  218. 280, 313, 348, 385,
  219. 424, 465, 508, 553,
  220. 600, 649, 700, 753,
  221. 808, 865, 924, 985,
  222. 1048, 1113, 1180, 1249,
  223. 1320, 1393, 1468, 1545,
  224. 1624, 1705, 1788, 1873,
  225. 1960, 2043, 1954, 1867,
  226. 1782, 1699, 1618, 1539,
  227. 1462, 1387, 1314, 1243,
  228. 1174, 1107, 1042, 979,
  229. 918, 859, 802, 747,
  230. 694, 643, 594, 547,
  231. 502, 459, 418, 379,
  232. 342, 307, 274, 243,
  233. 214, 187, 162, 139,
  234. 118, 99, 82, 67,
  235. 54, 43, 34, 27,
  236. 22, 19, 18, 19,
  237. 22, 27, 34, 43,
  238. 54, 67, 82, 99,
  239. 118, 139, 162, 187,
  240. 214, 321, 296, 273,
  241. 252, 233, 216, 201,
  242. 188, 177, 168, 161,
  243. 156, 153, 152, 153,
  244. 156, 161, 168, 177,
  245. 188, 201, 216, 233,
  246. 252, 273, 296, 321,
  247. 348, 377, 408, 441,
  248. 476, 513, 552, 593,
  249. 636, 681, 728, 777,
  250. 828, 881, 936, 993,
  251. 1052, 1113, 1176, 1241,
  252. 1308, 1377, 1448, 1521,
  253. 1596, 1673, 1752, 1833,
  254. 1916, 2001, 2088, 2177,
  255. 2268, 2361, 2456, 2553,
  256. 2652, 2753, 2856, 2961,
  257. 3068, 3177, 3288, 3401,
  258. 3261, 3148, 3037, 2928,
  259. 2821, 2716, 2613, 2512,
  260. 2413, 2316, 2221, 2128,
  261. 2037, 1948, 1861, 1776,
  262. 1693, 1612, 1533, 1456,
  263. 1381, 1308, 1237, 1168,
  264. 1101, 1036, 973, 912,
  265. 853, 796, 741, 688,
  266. 637, 588, 541, 496,
  267. 453, 412, 373, 336,
  268. 301, 268, 237, 208,
  269. 181, 156, 133, 112,
  270. 93, 76, 61, 48,
  271. 37, 28, 21, 16,
  272. 13, 12, 13, 16,
  273. 21, 28, 37, 48,
  274. 61, 76, 93, 112,
  275. 133, 156, 181, 208,
  276. 237, 268, 301, 336,
  277. 373, 412, 453, 496,
  278. 541, 588, 637, 688,
  279. 741, 796, 853, 912,
  280. 973, 1036, 1101, 1168,
  281. 1237, 1308, 1381, 1456,
  282. 1533, 1612, 1693, 1776,
  283. 1861, 1948, 2037, 2128,
  284. 2221, 2316, 2413, 2512,
  285. 2613, 2716, 2821, 2928,
  286. 3037, 3148, 3261, 3376,
  287. 3629, 3516, 3405, 3296,
  288. 3189, 3084, 2981, 2880,
  289. 2781, 2684, 2589, 2496,
  290. 2405, 2316, 2229, 2144,
  291. 2061, 1980, 1901, 1824,
  292. 1749, 1676, 1605, 1536,
  293. 1469, 1404, 1341, 1280,
  294. 1221, 1164, 1109, 1056,
  295. 1005, 956, 909, 864,
  296. 821, 780, 741, 704,
  297. 669, 636, 605, 576,
  298. 549, 524, 501, 480,
  299. 461, 444, 429, 416,
  300. 405, 396, 389, 384,
  301. 381, 380, 111, 110,
  302. 111, 114, 119, 126,
  303. 135, 146, 159, 174,
  304. 191, 210, 231, 254,
  305. 279, 276, 253, 232,
  306. 213, 196, 181, 168,
  307. 157, 148, 141, 136,
  308. 133, 132, 133, 342,
  309. 343, 346, 351, 358,
  310. 367, 378, 391, 406,
  311. 423, 442, 463, 486,
  312. 511, 538, 567, 598,
  313. 631, 666, 703, 742,
  314. 783, 826, 871, 918,
  315. 967, 1018, 1071, 1126,
  316. 1183, 1242, 1303, 1366,
  317. 1431, 1498, 1567, 1638,
  318. 1711, 1786, 1863, 1942,
  319. 2023, 2106, 2191, 2278,
  320. 2367, 2458, 2551, 2646,
  321. 2743, 2842, 2943, 3046,
  322. 3151, 3258, 3367, 3478,
  323. 3591, 3370, 3255, 3142,
  324. 3031, 2922, 2815, 2710,
  325. 2607, 2506, 2407, 2310,
  326. 2215, 2122, 2031, 1942,
  327. 1855, 1770, 1687, 1606,
  328. 1527, 1450, 1375, 1302,
  329. 1231, 1162, 1095, 1030,
  330. 967, 906, 847, 790,
  331. 735, 682, 631, 582,
  332. 535, 490, 447, 406,
  333. 367, 330, 295, 262,
  334. 231, 202, 175, 150,
  335. 127, 106, 87, 70,
  336. 55, 42, 31, 22,
  337. 15, 10, 7, 6,
  338. 7, 10, 15, 22,
  339. 31, 42, 55, 70,
  340. 87, 106, 127, 150,
  341. 175, 202, 231, 262,
  342. 295, 330, 367, 406,
  343. 447, 490, 535, 582,
  344. 631, 682, 735, 790,
  345. 847, 906, 967, 1030,
  346. 1095, 1162, 1231, 1302,
  347. 1375, 1450, 1527, 1606,
  348. 1687, 1770, 1855, 1942,
  349. 2031, 2122, 2215, 2310,
  350. 2407, 2506, 2607, 2710,
  351. 2815, 2922, 3031, 3142,
  352. 3255, 3426, 3313, 3202,
  353. 3093, 2986, 2881, 2778,
  354. 2677, 2578, 2481, 2386,
  355. 2293, 2202, 2113, 2026,
  356. 1941, 1858, 1777, 1698,
  357. 1621, 1546, 1473, 1402,
  358. 1333, 1266, 1201, 1138,
  359. 1077, 1018, 961, 906,
  360. 853, 802, 753, 706,
  361. 661, 618, 577, 538,
  362. 501, 466, 433, 402,
  363. 373, 346, 321, 298,
  364. 277, 258, 241, 226,
  365. 213, 202, 193, 186,
  366. 181, 178, 177, 178,
  367. 181, 186, 193, 202,
  368. 213, 226, 241, 258,
  369. 277, 298, 321, 346,
  370. 373, 197, 172, 149,
  371. 128, 109, 92, 77,
  372. 64, 53, 44, 37,
  373. 32, 29, 28, 29,
  374. 32, 37, 44, 53,
  375. 64, 77, 92, 109,
  376. 128, 149, 172, 197,
  377. 224, 253, 284, 317,
  378. 352, 389, 428, 469,
  379. 512, 557, 604, 653,
  380. 704, 757, 812, 869,
  381. 928, 989, 1052, 1117,
  382. 1184, 1253, 1324, 1397,
  383. 1472, 1549, 1628, 1709,
  384. 1792, 1877, 1964, 2040,
  385. 1951, 1864, 1779, 1696,
  386. 1615, 1536, 1459, 1384,
  387. 1311, 1240, 1171, 1104,
  388. 1039, 976, 915, 856,
  389. 799, 744, 691, 640,
  390. 591, 544, 499, 456,
  391. 415, 376, 339, 304,
  392. 271, 240, 211, 184,
  393. 159, 136, 115, 96,
  394. 79, 64, 51, 40,
  395. 31, 24, 19, 16,
  396. 15, 16, 19, 24,
  397. 31, 40, 51, 64,
  398. 79, 96, 115, 136,
  399. 159, 184, 211, 245,
  400. 220, 197, 176, 157,
  401. 140, 125, 112, 101,
  402. 92, 85, 80, 77,
  403. 76, 77, 80, 85,
  404. 92, 101, 112, 125,
  405. 140, 157, 176, 197,
  406. 220, 245, 272, 301,
  407. 332, 365, 400, 437,
  408. 476, 517, 560, 605,
  409. 652, 701, 752, 805,
  410. 860, 917, 976, 1037,
  411. 1100, 1165, 1232, 1301,
  412. 1372, 1445, 1520, 1597,
  413. 1676, 1757, 1840, 1925,
  414. 2012, 2101, 2192, 2285,
  415. 2380, 2477, 2576, 2677,
  416. 2780, 2885, 2992, 3101,
  417. 3212, 3325, 3300, 3187,
  418. 3076, 2967, 2860, 2755,
  419. 2652, 2551, 2452, 2355,
  420. 2260, 2167, 2076, 1987,
  421. 1900, 1815, 1732, 1651,
  422. 1572, 1495, 1420, 1347,
  423. 1276, 1207, 1140, 1075,
  424. 1012, 951, 892, 835,
  425. 780, 727, 676, 627,
  426. 580, 535, 492, 451,
  427. 412, 375, 340, 307,
  428. 276, 247, 220, 195,
  429. 172, 151, 132, 115,
  430. 100, 87, 76, 67,
  431. 60, 55, 52, 51,
  432. 52, 55, 60, 67,
  433. 76, 87, 100, 115,
  434. 132, 151, 172, 195,
  435. 220, 247, 199, 174,
  436. 151, 130, 111, 94,
  437. 79, 66, 55, 46,
  438. 39, 34, 31, 30,
  439. 31, 34, 39, 46,
  440. 55, 66, 79, 94,
  441. 111, 130, 151, 174,
  442. 199, 226, 255, 286,
  443. 319, 354, 391, 430,
  444. 471, 514, 559, 606,
  445. 655, 706, 759, 814,
  446. 871, 930, 991, 1054,
  447. 1119, 1186, 1255, 1326,
  448. 1399, 1474, 1551, 1630,
  449. 1711, 1794, 1879, 1966,
  450. 2072, 1983, 1896, 1811,
  451. 1728, 1647, 1568, 1491,
  452. 1416, 1343, 1272, 1203,
  453. 1136, 1071, 1008, 947,
  454. 888, 831, 776, 723,
  455. 672, 623, 576, 531,
  456. 488, 447, 408, 371,
  457. 336, 303, 272, 243,
  458. 216, 191, 168, 147,
  459. 128, 111, 96, 83,
  460. 72, 63, 56, 51,
  461. 48, 47, 48, 51,
  462. 56, 63, 72, 83,
  463. 96, 111, 128, 147,
  464. 168, 191, 216, 243,
  465. 391, 366, 343, 322,
  466. 303, 286, 271, 258,
  467. 247, 238, 231, 226,
  468. 223, 222, 223, 226,
  469. 231, 238, 247, 258,
  470. 271, 286, 303, 322,
  471. 343, 366, 391, 418,
  472. 447, 478, 511, 546,
  473. 583, 622, 663, 706,
  474. 751, 798, 847, 898,
  475. 951, 1006, 1063, 1122,
  476. 1183, 1246, 1311, 1378,
  477. 1447, 1518, 1591, 1666,
  478. 1743, 1822, 1903, 1986,
  479. 2071, 2158, 2247, 2338,
  480. 2431, 2526, 2623, 2722,
  481. 2823, 2926, 3031, 3138,
  482. 3247, 3358, 3471, 3249,
  483. 3136, 3025, 2916, 2809,
  484. 2704, 2601, 2500, 2401,
  485. 2304, 2209, 2116, 2025,
  486. 1936, 1849, 1764, 1681,
  487. 1600, 1521, 1444, 1369,
  488. 1296, 1225, 1156, 1089,
  489. 1024, 961, 900, 841,
  490. 784, 729, 676, 625,
  491. 576, 529, 484, 441,
  492. 400, 361, 324, 289,
  493. 256, 225, 196, 169,
  494. 144, 121, 100, 81,
  495. 64, 49, 36, 25,
  496. 16, 9, 4, 1,
  497. };
  498. const uint16_t* lookup_table_table[] = {
  499. lut_env_expo,
  500. lut_arpeggiator_patterns,
  501. lut_consonance,
  502. };
  503. const int16_t lut_scale_pythagorean[] = {
  504. 0, -13, 5, -8,
  505. 10, -3, 15, 3,
  506. -10, 8, -5, 13,
  507. };
  508. const int16_t lut_scale_1_4_eb[] = {
  509. 0, 0, 0, 0,
  510. -64, 0, 0, 0,
  511. 0, 0, 0, -64,
  512. };
  513. const int16_t lut_scale_1_4_e[] = {
  514. 0, 0, 0, 0,
  515. -64, 0, 0, 0,
  516. 0, 0, 0, 0,
  517. };
  518. const int16_t lut_scale_1_4_ea[] = {
  519. 0, 0, 0, 0,
  520. -64, 0, 0, 0,
  521. 0, -64, 0, 0,
  522. };
  523. const int16_t lut_scale_bhairav[] = {
  524. 0, -13, -141, -269,
  525. -18, -3, -131, 3,
  526. -10, -138, -266, -15,
  527. };
  528. const int16_t lut_scale_gunakri[] = {
  529. 0, 15, -113, -241,
  530. -369, -3, -131, 3,
  531. 18, -110, -238, -366,
  532. };
  533. const int16_t lut_scale_marwa[] = {
  534. 0, 15, -113, -241,
  535. -18, -146, -13, -141,
  536. -269, -20, -148, -15,
  537. };
  538. const int16_t lut_scale_shree[] = {
  539. 0, -13, -141, -269,
  540. -18, -146, -13, 3,
  541. -10, -138, -266, -15,
  542. };
  543. const int16_t lut_scale_purvi[] = {
  544. 0, 15, -113, -241,
  545. -18, -146, -13, 3,
  546. 18, -110, -238, -15,
  547. };
  548. const int16_t lut_scale_bilawal[] = {
  549. 0, -128, 5, -123,
  550. -18, -3, -131, 3,
  551. -125, 8, -120, -15,
  552. };
  553. const int16_t lut_scale_yaman[] = {
  554. 0, -128, 5, -123,
  555. 10, -118, 15, 3,
  556. -125, 8, -120, 13,
  557. };
  558. const int16_t lut_scale_kafi[] = {
  559. 0, -128, -23, -8,
  560. -136, -3, -131, 3,
  561. -125, -20, -5, -133,
  562. };
  563. const int16_t lut_scale_bhimpalasree[] = {
  564. 0, -128, 5, 20,
  565. -108, -3, -131, 3,
  566. -125, 8, 23, -105,
  567. };
  568. const int16_t lut_scale_darbari[] = {
  569. 0, -128, 5, -8,
  570. -136, -3, -131, 3,
  571. -10, -138, -5, -133,
  572. };
  573. const int16_t lut_scale_rageshree[] = {
  574. 0, -128, 5, -123,
  575. -18, -3, -131, 3,
  576. -125, -20, -5, -133,
  577. };
  578. const int16_t lut_scale_khamaj[] = {
  579. 0, -128, 5, -123,
  580. -18, -3, -131, 3,
  581. -125, 8, -5, 13,
  582. };
  583. const int16_t lut_scale_mimal[] = {
  584. 0, -128, 5, -8,
  585. -136, -3, -131, 3,
  586. -125, -20, -5, -15,
  587. };
  588. const int16_t lut_scale_parameshwari[] = {
  589. 0, -13, -141, -8,
  590. -136, -3, -131, -259,
  591. -387, -20, -5, -133,
  592. };
  593. const int16_t lut_scale_rangeshwari[] = {
  594. 0, -128, 5, -8,
  595. -136, -3, -131, 3,
  596. -125, -253, -381, -15,
  597. };
  598. const int16_t lut_scale_gangeshwari[] = {
  599. 0, -128, -256, -384,
  600. -18, -3, -131, 3,
  601. -10, -138, -5, -133,
  602. };
  603. const int16_t lut_scale_kameshwari[] = {
  604. 0, -128, 5, -123,
  605. -251, -379, -13, 3,
  606. -125, -20, -5, -133,
  607. };
  608. const int16_t lut_scale_pa__kafi[] = {
  609. 0, -128, 5, -8,
  610. -136, -3, -131, 3,
  611. -125, 8, -5, -133,
  612. };
  613. const int16_t lut_scale_natbhairav[] = {
  614. 0, -128, 5, -123,
  615. -18, -3, -131, 3,
  616. -10, -138, -266, -15,
  617. };
  618. const int16_t lut_scale_m_kauns[] = {
  619. 0, -128, 5, -123,
  620. 10, -3, -131, -259,
  621. -10, -138, -5, -133,
  622. };
  623. const int16_t lut_scale_bairagi[] = {
  624. 0, -13, -141, -269,
  625. -397, -3, -131, 3,
  626. -125, -253, -5, -133,
  627. };
  628. const int16_t lut_scale_b_todi[] = {
  629. 0, -13, -141, -8,
  630. -136, -264, -392, 3,
  631. -125, -253, -5, -133,
  632. };
  633. const int16_t lut_scale_chandradeep[] = {
  634. 0, -128, -256, -8,
  635. -136, -3, -131, 3,
  636. -125, -253, -5, -133,
  637. };
  638. const int16_t lut_scale_kaushik_todi[] = {
  639. 0, -128, -256, -8,
  640. -136, -3, -13, -141,
  641. -10, -138, -266, -394,
  642. };
  643. const int16_t lut_scale_jogeshwari[] = {
  644. 0, -128, -256, -8,
  645. -18, -3, -131, -259,
  646. -387, -20, -5, -133,
  647. };
  648. const int16_t* lookup_table_signed_table[] = {
  649. lut_scale_pythagorean,
  650. lut_scale_1_4_eb,
  651. lut_scale_1_4_e,
  652. lut_scale_1_4_ea,
  653. lut_scale_bhairav,
  654. lut_scale_gunakri,
  655. lut_scale_marwa,
  656. lut_scale_shree,
  657. lut_scale_purvi,
  658. lut_scale_bilawal,
  659. lut_scale_yaman,
  660. lut_scale_kafi,
  661. lut_scale_bhimpalasree,
  662. lut_scale_darbari,
  663. lut_scale_kafi,
  664. lut_scale_rageshree,
  665. lut_scale_khamaj,
  666. lut_scale_mimal,
  667. lut_scale_parameshwari,
  668. lut_scale_rangeshwari,
  669. lut_scale_gangeshwari,
  670. lut_scale_kameshwari,
  671. lut_scale_pa__kafi,
  672. lut_scale_natbhairav,
  673. lut_scale_m_kauns,
  674. lut_scale_bairagi,
  675. lut_scale_b_todi,
  676. lut_scale_chandradeep,
  677. lut_scale_kaushik_todi,
  678. lut_scale_jogeshwari,
  679. lut_scale_yaman,
  680. };
  681. const int16_t wav_exponential[] = {
  682. 32767, 32250, 31740, 31238,
  683. 30745, 30259, 29780, 29309,
  684. 28845, 28388, 27939, 27496,
  685. 27060, 26631, 26209, 25793,
  686. 25384, 24981, 24584, 24193,
  687. 23809, 23430, 23057, 22690,
  688. 22329, 21974, 21623, 21279,
  689. 20939, 20605, 20276, 19952,
  690. 19634, 19320, 19011, 18707,
  691. 18407, 18112, 17822, 17536,
  692. 17255, 16978, 16705, 16437,
  693. 16172, 15912, 15656, 15404,
  694. 15155, 14911, 14670, 14433,
  695. 14200, 13971, 13745, 13522,
  696. 13303, 13087, 12875, 12666,
  697. 12460, 12257, 12058, 11861,
  698. 11668, 11477, 11290, 11106,
  699. 10924, 10745, 10569, 10396,
  700. 10225, 10057, 9892, 9729,
  701. 9568, 9411, 9255, 9102,
  702. 8952, 8803, 8657, 8514,
  703. 8372, 8233, 8096, 7961,
  704. 7828, 7697, 7568, 7442,
  705. 7317, 7194, 7073, 6954,
  706. 6836, 6721, 6607, 6495,
  707. 6385, 6277, 6170, 6065,
  708. 5961, 5859, 5759, 5660,
  709. 5563, 5467, 5373, 5280,
  710. 5189, 5099, 5010, 4923,
  711. 4838, 4753, 4670, 4588,
  712. 4507, 4428, 4350, 4273,
  713. 4197, 4123, 4049, 3977,
  714. 3906, 3836, 3767, 3699,
  715. 3632, 3566, 3502, 3438,
  716. 3375, 3313, 3252, 3193,
  717. 3134, 3076, 3018, 2962,
  718. 2907, 2852, 2798, 2746,
  719. 2694, 2642, 2592, 2542,
  720. 2493, 2445, 2398, 2351,
  721. 2305, 2260, 2215, 2172,
  722. 2129, 2086, 2044, 2003,
  723. 1963, 1923, 1883, 1845,
  724. 1807, 1769, 1732, 1696,
  725. 1660, 1625, 1590, 1556,
  726. 1522, 1489, 1457, 1425,
  727. 1393, 1362, 1332, 1301,
  728. 1272, 1243, 1214, 1185,
  729. 1158, 1130, 1103, 1077,
  730. 1050, 1025, 999, 974,
  731. 950, 926, 902, 878,
  732. 855, 832, 810, 788,
  733. 766, 745, 724, 703,
  734. 683, 663, 643, 624,
  735. 604, 586, 567, 549,
  736. 531, 513, 496, 478,
  737. 462, 445, 429, 412,
  738. 397, 381, 366, 350,
  739. 336, 321, 306, 292,
  740. 278, 264, 251, 237,
  741. 224, 211, 199, 186,
  742. 174, 161, 149, 138,
  743. 126, 115, 103, 92,
  744. 81, 71, 60, 50,
  745. 39, 29, 19, 10,
  746. 0,
  747. };
  748. const int16_t wav_ring[] = {
  749. 32767, 32229, 31393, 30273,
  750. 28886, 27253, 25395, 23334,
  751. 21096, 18706, 16191, 13578,
  752. 10894, 8168, 5425, 2694,
  753. 0, -2632, -5177, -7613,
  754. -9919, -12077, -14067, -15876,
  755. -17489, -18897, -20089, -21060,
  756. -21805, -22322, -22611, -22676,
  757. -22520, -22151, -21576, -20806,
  758. -19853, -18731, -17454, -16037,
  759. -14499, -12857, -11128, -9332,
  760. -7488, -5614, -3729, -1852,
  761. 0, 1809, 3558, 5232,
  762. 6818, 8300, 9668, 10911,
  763. 12020, 12988, 13807, 14474,
  764. 14986, 15342, 15541, 15585,
  765. 15478, 15224, 14829, 14300,
  766. 13645, 12874, 11996, 11022,
  767. 9965, 8836, 7648, 6414,
  768. 5146, 3858, 2563, 1273,
  769. 0, -1243, -2445, -3596,
  770. -4686, -5705, -6645, -7499,
  771. -8261, -8926, -9489, -9948,
  772. -10300, -10544, -10681, -10711,
  773. -10638, -10463, -10192, -9828,
  774. -9378, -8848, -8245, -7576,
  775. -6849, -6073, -5257, -4408,
  776. -3537, -2652, -1761, -875,
  777. 0, 854, 1681, 2472,
  778. 3220, 3921, 4567, 5154,
  779. 5678, 6135, 6522, 6837,
  780. 7079, 7247, 7341, 7362,
  781. 7311, 7191, 7005, 6755,
  782. 6445, 6081, 5666, 5207,
  783. 4707, 4174, 3613, 3030,
  784. 2431, 1822, 1211, 601,
  785. 0, -587, -1155, -1699,
  786. -2213, -2695, -3139, -3542,
  787. -3902, -4216, -4482, -4699,
  788. -4865, -4981, -5045, -5060,
  789. -5025, -4943, -4814, -4642,
  790. -4430, -4179, -3894, -3578,
  791. -3235, -2869, -2483, -2082,
  792. -1671, -1253, -832, -413,
  793. 0, 404, 794, 1168,
  794. 1521, 1852, 2157, 2435,
  795. 2682, 2898, 3081, 3230,
  796. 3344, 3423, 3468, 3478,
  797. 3454, 3397, 3309, 3191,
  798. 3045, 2872, 2677, 2459,
  799. 2224, 1972, 1707, 1431,
  800. 1148, 861, 572, 284,
  801. 0, -277, -546, -802,
  802. -1046, -1273, -1483, -1673,
  803. -1843, -1992, -2117, -2220,
  804. -2298, -2353, -2383, -2390,
  805. -2374, -2335, -2274, -2193,
  806. -2093, -1974, -1840, -1690,
  807. -1528, -1355, -1173, -984,
  808. -789, -592, -393, -195,
  809. 0, 191, 375, 551,
  810. 719, 875, 1019, 1150,
  811. 1267, 1369, 1455, 1526,
  812. 1580, 1617, 1638, 1643,
  813. 1631,
  814. };
  815. const int16_t wav_steps[] = {
  816. 0, 32767, 32767, 32767,
  817. 32767, 32767, 32767, 32767,
  818. 32767, 32767, 32767, 32767,
  819. 32767, 32767, 32767, 32767,
  820. 32767, 32767, 32767, 32767,
  821. 32767, 32767, 32767, 32767,
  822. 32767, 32767, 32767, 32767,
  823. 32767, 32767, 32767, 32767,
  824. 32767, 32767, 32767, 32767,
  825. 32767, 32767, 32767, 32767,
  826. 32767, 32767, 32767, 32767,
  827. 32767, 32767, 32767, 32767,
  828. 32767, 32767, 32767, 32767,
  829. 32767, 32767, 32767, 32767,
  830. 32767, 32767, 32767, 32767,
  831. 32767, 32767, 32767, 32767,
  832. 32767, -16384, -16384, -16384,
  833. -16384, -16384, -16384, -16384,
  834. -16384, -16384, -16384, -16384,
  835. -16384, -16384, -16384, -16384,
  836. -16384, -16384, -16384, -16384,
  837. -16384, -16384, -16384, -16384,
  838. -16384, -16384, -16384, -16384,
  839. -16384, -16384, -16384, -16384,
  840. -16384, -16384, -16384, -16384,
  841. -16384, -16384, -16384, -16384,
  842. -16384, -16384, -16384, -16384,
  843. -16384, -16384, -16384, -16384,
  844. -16384, -16384, -16384, -16384,
  845. -16384, -16384, -16384, -16384,
  846. -16384, -16384, -16384, -16384,
  847. -16384, -16384, -16384, -16384,
  848. -16384, 16384, 16384, 16384,
  849. 16384, 16384, 16384, 16384,
  850. 16384, 16384, 16384, 16384,
  851. 16384, 16384, 16384, 16384,
  852. 16384, 16384, 16384, 16384,
  853. 16384, 16384, 16384, 16384,
  854. 16384, 16384, 16384, 16384,
  855. 16384, 16384, 16384, 16384,
  856. 16384, 16384, 16384, 16384,
  857. 16384, 16384, 16384, 16384,
  858. 16384, 16384, 16384, 16384,
  859. 16384, 16384, 16384, 16384,
  860. 16384, 16384, 16384, 16384,
  861. 16384, 16384, 16384, 16384,
  862. 16384, 16384, 16384, 16384,
  863. 16384, 16384, 16384, 16384,
  864. 8192, -8192, -8192, -8192,
  865. -8192, -8192, -8192, -8192,
  866. -8192, -8192, -8192, -8192,
  867. -8192, -8192, -8192, -8192,
  868. -8192, -8192, -8192, -8192,
  869. -8192, -8192, -8192, -8192,
  870. -8192, -8192, -8192, -8192,
  871. -8192, -8192, -8192, -8192,
  872. -8192, -8192, -8192, -8192,
  873. -8192, -8192, -8192, -8192,
  874. -8192, -8192, -8192, -8192,
  875. -8192, -8192, -8192, -8192,
  876. -8192, -8192, -8192, -8192,
  877. -8192, -8192, -8192, -8192,
  878. -8192, -8192, -8192, -8192,
  879. -8192, -8192, -8192, -8192,
  880. -8192,
  881. };
  882. const int16_t wav_noise[] = {
  883. 13716, 7925, 19225, 14776,
  884. -9219, -1752, 302, -14859,
  885. 10004, -12184, 9356, -14191,
  886. 14789, -11050, -4443, -6793,
  887. -15925, -8351, -24206, 3269,
  888. -24844, 11845, 3855, 11758,
  889. 2660, 17759, 20738, -7045,
  890. -8666, -2637, -9087, 8833,
  891. -332, -10478, 3711, -3878,
  892. -7513, -10008, 10826, 1627,
  893. -3064, 13038, -2191, -478,
  894. -11239, -15288, 2176, 2964,
  895. -4685, 15752, -2115, 16201,
  896. 816, -670, 9801, 12353,
  897. -4583, -15963, -18605, 989,
  898. -30191, 32767, -1211, -8864,
  899. 5294, 2926, -7294, 4581,
  900. 2915, 8532, 266, 5006,
  901. -601, 5489, -5094, 14469,
  902. 5854, -1388, 6438, 5392,
  903. -7476, -444, 2764, 3974,
  904. -6866, -4343, -4285, -52,
  905. -13925, -1559, -10989, -1288,
  906. 1820, -4110, -7203, 10333,
  907. -595, -5758, 7185, 10779,
  908. 3766, 3602, -3824, 11074,
  909. -5103, -4542, -2329, 5936,
  910. -3550, 12485, 9837, -333,
  911. 1324, 431, 1856, -430,
  912. 4398, -9774, -290, -3732,
  913. -7579, -8316, -1394, 3009,
  914. 6207, -4046, 1178, -6466,
  915. 4795, -3700, 748, 814,
  916. 1874, 4395, -2306, 1054,
  917. 5236, -1481, 11375, -3876,
  918. -2250, 1255, -3723, -481,
  919. -3767, -2221, -8481, 854,
  920. 3222, 313, -594, -1866,
  921. -1799, 3864, -932, -2634,
  922. 1558, -454, 766, 2099,
  923. -999, 2109, 2329, 989,
  924. 4429, 927, -3405, 3288,
  925. 1454, -2031, 314, 2094,
  926. -2280, -537, 3018, -1312,
  927. 1277, -590, 1563, 424,
  928. -716, 365, 110, 1780,
  929. 101, -1317, -1419, 882,
  930. -932, 378, 1670, -1524,
  931. -813, -460, 359, -1433,
  932. 188, 343, -1138, 1133,
  933. -1389, -1309, 727, -385,
  934. 498, -5, -157, -1029,
  935. -584, 1036, 622, 117,
  936. 226, -497, -134, 212,
  937. -1298, -24, 298, -507,
  938. -99, -333, 394, 489,
  939. 551, 419, -164, 142,
  940. 2, 86, 206, -5,
  941. 149, -84, 145, 70,
  942. -15, -86, -3, -4,
  943. 74, 95, -54, -4,
  944. 29, -22, 40, 35,
  945. -12, -15, -17, -11,
  946. -1, 0, 0, 0,
  947. 0,
  948. };
  949. const int16_t wav_sine[] = {
  950. 0, -201, -402, -603,
  951. -804, -1005, -1206, -1407,
  952. -1608, -1809, -2009, -2210,
  953. -2410, -2611, -2811, -3012,
  954. -3212, -3412, -3612, -3811,
  955. -4011, -4210, -4410, -4609,
  956. -4808, -5007, -5205, -5404,
  957. -5602, -5800, -5998, -6195,
  958. -6393, -6590, -6786, -6983,
  959. -7179, -7375, -7571, -7767,
  960. -7962, -8157, -8351, -8545,
  961. -8739, -8933, -9126, -9319,
  962. -9512, -9704, -9896, -10087,
  963. -10278, -10469, -10659, -10849,
  964. -11039, -11228, -11417, -11605,
  965. -11793, -11980, -12167, -12353,
  966. -12539, -12725, -12910, -13094,
  967. -13279, -13462, -13645, -13828,
  968. -14010, -14191, -14372, -14553,
  969. -14732, -14912, -15090, -15269,
  970. -15446, -15623, -15800, -15976,
  971. -16151, -16325, -16499, -16673,
  972. -16846, -17018, -17189, -17360,
  973. -17530, -17700, -17869, -18037,
  974. -18204, -18371, -18537, -18703,
  975. -18868, -19032, -19195, -19357,
  976. -19519, -19680, -19841, -20000,
  977. -20159, -20317, -20475, -20631,
  978. -20787, -20942, -21096, -21250,
  979. -21403, -21554, -21705, -21856,
  980. -22005, -22154, -22301, -22448,
  981. -22594, -22739, -22884, -23027,
  982. -23170, -23311, -23452, -23592,
  983. -23731, -23870, -24007, -24143,
  984. -24279, -24413, -24547, -24680,
  985. -24811, -24942, -25072, -25201,
  986. -25329, -25456, -25582, -25708,
  987. -25832, -25955, -26077, -26198,
  988. -26319, -26438, -26556, -26674,
  989. -26790, -26905, -27019, -27133,
  990. -27245, -27356, -27466, -27575,
  991. -27683, -27790, -27896, -28001,
  992. -28105, -28208, -28310, -28411,
  993. -28510, -28609, -28706, -28803,
  994. -28898, -28992, -29085, -29177,
  995. -29268, -29358, -29447, -29534,
  996. -29621, -29706, -29791, -29874,
  997. -29956, -30037, -30117, -30195,
  998. -30273, -30349, -30424, -30498,
  999. -30571, -30643, -30714, -30783,
  1000. -30852, -30919, -30985, -31050,
  1001. -31113, -31176, -31237, -31297,
  1002. -31356, -31414, -31470, -31526,
  1003. -31580, -31633, -31685, -31736,
  1004. -31785, -31833, -31880, -31926,
  1005. -31971, -32014, -32057, -32098,
  1006. -32137, -32176, -32213, -32250,
  1007. -32285, -32318, -32351, -32382,
  1008. -32412, -32441, -32469, -32495,
  1009. -32521, -32545, -32567, -32589,
  1010. -32609, -32628, -32646, -32663,
  1011. -32678, -32692, -32705, -32717,
  1012. -32728, -32737, -32745, -32752,
  1013. -32757, -32761, -32765, -32766,
  1014. -32767, -32766, -32765, -32761,
  1015. -32757, -32752, -32745, -32737,
  1016. -32728, -32717, -32705, -32692,
  1017. -32678, -32663, -32646, -32628,
  1018. -32609, -32589, -32567, -32545,
  1019. -32521, -32495, -32469, -32441,
  1020. -32412, -32382, -32351, -32318,
  1021. -32285, -32250, -32213, -32176,
  1022. -32137, -32098, -32057, -32014,
  1023. -31971, -31926, -31880, -31833,
  1024. -31785, -31736, -31685, -31633,
  1025. -31580, -31526, -31470, -31414,
  1026. -31356, -31297, -31237, -31176,
  1027. -31113, -31050, -30985, -30919,
  1028. -30852, -30783, -30714, -30643,
  1029. -30571, -30498, -30424, -30349,
  1030. -30273, -30195, -30117, -30037,
  1031. -29956, -29874, -29791, -29706,
  1032. -29621, -29534, -29447, -29358,
  1033. -29268, -29177, -29085, -28992,
  1034. -28898, -28803, -28706, -28609,
  1035. -28510, -28411, -28310, -28208,
  1036. -28105, -28001, -27896, -27790,
  1037. -27683, -27575, -27466, -27356,
  1038. -27245, -27133, -27019, -26905,
  1039. -26790, -26674, -26556, -26438,
  1040. -26319, -26198, -26077, -25955,
  1041. -25832, -25708, -25582, -25456,
  1042. -25329, -25201, -25072, -24942,
  1043. -24811, -24680, -24547, -24413,
  1044. -24279, -24143, -24007, -23870,
  1045. -23731, -23592, -23452, -23311,
  1046. -23170, -23027, -22884, -22739,
  1047. -22594, -22448, -22301, -22154,
  1048. -22005, -21856, -21705, -21554,
  1049. -21403, -21250, -21096, -20942,
  1050. -20787, -20631, -20475, -20317,
  1051. -20159, -20000, -19841, -19680,
  1052. -19519, -19357, -19195, -19032,
  1053. -18868, -18703, -18537, -18371,
  1054. -18204, -18037, -17869, -17700,
  1055. -17530, -17360, -17189, -17018,
  1056. -16846, -16673, -16499, -16325,
  1057. -16151, -15976, -15800, -15623,
  1058. -15446, -15269, -15090, -14912,
  1059. -14732, -14553, -14372, -14191,
  1060. -14010, -13828, -13645, -13462,
  1061. -13279, -13094, -12910, -12725,
  1062. -12539, -12353, -12167, -11980,
  1063. -11793, -11605, -11417, -11228,
  1064. -11039, -10849, -10659, -10469,
  1065. -10278, -10087, -9896, -9704,
  1066. -9512, -9319, -9126, -8933,
  1067. -8739, -8545, -8351, -8157,
  1068. -7962, -7767, -7571, -7375,
  1069. -7179, -6983, -6786, -6590,
  1070. -6393, -6195, -5998, -5800,
  1071. -5602, -5404, -5205, -5007,
  1072. -4808, -4609, -4410, -4210,
  1073. -4011, -3811, -3612, -3412,
  1074. -3212, -3012, -2811, -2611,
  1075. -2410, -2210, -2009, -1809,
  1076. -1608, -1407, -1206, -1005,
  1077. -804, -603, -402, -201,
  1078. 0, 201, 402, 603,
  1079. 804, 1005, 1206, 1407,
  1080. 1608, 1809, 2009, 2210,
  1081. 2410, 2611, 2811, 3012,
  1082. 3212, 3412, 3612, 3811,
  1083. 4011, 4210, 4410, 4609,
  1084. 4808, 5007, 5205, 5404,
  1085. 5602, 5800, 5998, 6195,
  1086. 6393, 6590, 6786, 6983,
  1087. 7179, 7375, 7571, 7767,
  1088. 7962, 8157, 8351, 8545,
  1089. 8739, 8933, 9126, 9319,
  1090. 9512, 9704, 9896, 10087,
  1091. 10278, 10469, 10659, 10849,
  1092. 11039, 11228, 11417, 11605,
  1093. 11793, 11980, 12167, 12353,
  1094. 12539, 12725, 12910, 13094,
  1095. 13279, 13462, 13645, 13828,
  1096. 14010, 14191, 14372, 14553,
  1097. 14732, 14912, 15090, 15269,
  1098. 15446, 15623, 15800, 15976,
  1099. 16151, 16325, 16499, 16673,
  1100. 16846, 17018, 17189, 17360,
  1101. 17530, 17700, 17869, 18037,
  1102. 18204, 18371, 18537, 18703,
  1103. 18868, 19032, 19195, 19357,
  1104. 19519, 19680, 19841, 20000,
  1105. 20159, 20317, 20475, 20631,
  1106. 20787, 20942, 21096, 21250,
  1107. 21403, 21554, 21705, 21856,
  1108. 22005, 22154, 22301, 22448,
  1109. 22594, 22739, 22884, 23027,
  1110. 23170, 23311, 23452, 23592,
  1111. 23731, 23870, 24007, 24143,
  1112. 24279, 24413, 24547, 24680,
  1113. 24811, 24942, 25072, 25201,
  1114. 25329, 25456, 25582, 25708,
  1115. 25832, 25955, 26077, 26198,
  1116. 26319, 26438, 26556, 26674,
  1117. 26790, 26905, 27019, 27133,
  1118. 27245, 27356, 27466, 27575,
  1119. 27683, 27790, 27896, 28001,
  1120. 28105, 28208, 28310, 28411,
  1121. 28510, 28609, 28706, 28803,
  1122. 28898, 28992, 29085, 29177,
  1123. 29268, 29358, 29447, 29534,
  1124. 29621, 29706, 29791, 29874,
  1125. 29956, 30037, 30117, 30195,
  1126. 30273, 30349, 30424, 30498,
  1127. 30571, 30643, 30714, 30783,
  1128. 30852, 30919, 30985, 31050,
  1129. 31113, 31176, 31237, 31297,
  1130. 31356, 31414, 31470, 31526,
  1131. 31580, 31633, 31685, 31736,
  1132. 31785, 31833, 31880, 31926,
  1133. 31971, 32014, 32057, 32098,
  1134. 32137, 32176, 32213, 32250,
  1135. 32285, 32318, 32351, 32382,
  1136. 32412, 32441, 32469, 32495,
  1137. 32521, 32545, 32567, 32589,
  1138. 32609, 32628, 32646, 32663,
  1139. 32678, 32692, 32705, 32717,
  1140. 32728, 32737, 32745, 32752,
  1141. 32757, 32761, 32765, 32766,
  1142. 32767, 32766, 32765, 32761,
  1143. 32757, 32752, 32745, 32737,
  1144. 32728, 32717, 32705, 32692,
  1145. 32678, 32663, 32646, 32628,
  1146. 32609, 32589, 32567, 32545,
  1147. 32521, 32495, 32469, 32441,
  1148. 32412, 32382, 32351, 32318,
  1149. 32285, 32250, 32213, 32176,
  1150. 32137, 32098, 32057, 32014,
  1151. 31971, 31926, 31880, 31833,
  1152. 31785, 31736, 31685, 31633,
  1153. 31580, 31526, 31470, 31414,
  1154. 31356, 31297, 31237, 31176,
  1155. 31113, 31050, 30985, 30919,
  1156. 30852, 30783, 30714, 30643,
  1157. 30571, 30498, 30424, 30349,
  1158. 30273, 30195, 30117, 30037,
  1159. 29956, 29874, 29791, 29706,
  1160. 29621, 29534, 29447, 29358,
  1161. 29268, 29177, 29085, 28992,
  1162. 28898, 28803, 28706, 28609,
  1163. 28510, 28411, 28310, 28208,
  1164. 28105, 28001, 27896, 27790,
  1165. 27683, 27575, 27466, 27356,
  1166. 27245, 27133, 27019, 26905,
  1167. 26790, 26674, 26556, 26438,
  1168. 26319, 26198, 26077, 25955,
  1169. 25832, 25708, 25582, 25456,
  1170. 25329, 25201, 25072, 24942,
  1171. 24811, 24680, 24547, 24413,
  1172. 24279, 24143, 24007, 23870,
  1173. 23731, 23592, 23452, 23311,
  1174. 23170, 23027, 22884, 22739,
  1175. 22594, 22448, 22301, 22154,
  1176. 22005, 21856, 21705, 21554,
  1177. 21403, 21250, 21096, 20942,
  1178. 20787, 20631, 20475, 20317,
  1179. 20159, 20000, 19841, 19680,
  1180. 19519, 19357, 19195, 19032,
  1181. 18868, 18703, 18537, 18371,
  1182. 18204, 18037, 17869, 17700,
  1183. 17530, 17360, 17189, 17018,
  1184. 16846, 16673, 16499, 16325,
  1185. 16151, 15976, 15800, 15623,
  1186. 15446, 15269, 15090, 14912,
  1187. 14732, 14553, 14372, 14191,
  1188. 14010, 13828, 13645, 13462,
  1189. 13279, 13094, 12910, 12725,
  1190. 12539, 12353, 12167, 11980,
  1191. 11793, 11605, 11417, 11228,
  1192. 11039, 10849, 10659, 10469,
  1193. 10278, 10087, 9896, 9704,
  1194. 9512, 9319, 9126, 8933,
  1195. 8739, 8545, 8351, 8157,
  1196. 7962, 7767, 7571, 7375,
  1197. 7179, 6983, 6786, 6590,
  1198. 6393, 6195, 5998, 5800,
  1199. 5602, 5404, 5205, 5007,
  1200. 4808, 4609, 4410, 4210,
  1201. 4011, 3811, 3612, 3412,
  1202. 3212, 3012, 2811, 2611,
  1203. 2410, 2210, 2009, 1809,
  1204. 1608, 1407, 1206, 1005,
  1205. 804, 603, 402, 201,
  1206. 0,
  1207. };
  1208. const int16_t* waveform_table[] = {
  1209. wav_exponential,
  1210. wav_ring,
  1211. wav_steps,
  1212. wav_noise,
  1213. wav_sine,
  1214. };
  1215. const uint32_t lut_lfo_increments[] = {
  1216. 536870, 551723, 566986, 582672,
  1217. 598792, 615357, 632381, 649876,
  1218. 667855, 686331, 705319, 724831,
  1219. 744884, 765491, 786668, 808431,
  1220. 830797, 853781, 877401, 901674,
  1221. 926619, 952254, 978598, 1005671,
  1222. 1033493, 1062084, 1091467, 1121662,
  1223. 1152693, 1184583, 1217354, 1251032,
  1224. 1285642, 1321209, 1357761, 1395323,
  1225. 1433925, 1473594, 1514362, 1556256,
  1226. 1599310, 1643555, 1689024, 1735751,
  1227. 1783771, 1833119, 1883832, 1935948,
  1228. 1989506, 2044546, 2101109, 2159236,
  1229. 2218971, 2280359, 2343445, 2408277,
  1230. 2474902, 2543370, 2613732, 2686041,
  1231. 2760351, 2836716, 2915194, 2995843,
  1232. 3078723, 3163896, 3251425, 3341376,
  1233. 3433815, 3528812, 3626436, 3726762,
  1234. 3829863, 3935816, 4044700, 4156597,
  1235. 4271589, 4389763, 4511206, 4636008,
  1236. 4764264, 4896067, 5031517, 5170714,
  1237. 5313762, 5460767, 5611840, 5767091,
  1238. 5926638, 6090599, 6259095, 6432253,
  1239. 6610202, 6793073, 6981004, 7174133,
  1240. 7372606, 7576569, 7786175, 8001580,
  1241. 8222944, 8450432, 8684213, 8924462,
  1242. 9171357, 9425083, 9685828, 9953787,
  1243. 10229159, 10512149, 10802967, 11101832,
  1244. 11408964, 11724593, 12048954, 12382289,
  1245. 12724845, 13076879, 13438651, 13810431,
  1246. 14192497, 14585133, 14988631, 15403292,
  1247. 15829424, 16267345, 16717382, 17179869,
  1248. };
  1249. const uint32_t lut_portamento_increments[] = {
  1250. 1431655765, 1106222130, 868222962, 690923537,
  1251. 556658529, 453480095, 373137450, 309825343,
  1252. 259389627, 218811719, 185867296, 158896175,
  1253. 136644562, 118155233, 102690005, 89674278,
  1254. 78656889, 69280712, 61260914, 54368700,
  1255. 48419063, 43261459, 38772666, 34851256,
  1256. 31413304, 28389016, 25720076, 23357538,
  1257. 21260142, 19392971, 17726353, 16234984,
  1258. 14897210, 13694433, 12610630, 11631955,
  1259. 10746405, 9943546, 9214282, 8550665,
  1260. 7945730, 7393357, 6888161, 6425388,
  1261. 6000834, 5610773, 5251896, 4921259,
  1262. 4616237, 4334485, 4073904, 3832614,
  1263. 3608927, 3401323, 3208435, 3029028,
  1264. 2861988, 2706306, 2561066, 2425440,
  1265. 2298675, 2180084, 2069043, 1964983,
  1266. 1867383, 1775769, 1689704, 1608791,
  1267. 1532664, 1460986, 1393451, 1329773,
  1268. 1269691, 1212964, 1159371, 1108705,
  1269. 1060776, 1015410, 972443, 931725,
  1270. 893116, 856487, 821716, 788692,
  1271. 757310, 727474, 699093, 672082,
  1272. 646363, 621863, 598513, 576249,
  1273. 555010, 534741, 515389, 496904,
  1274. 479241, 462355, 446207, 430757,
  1275. 415971, 401813, 388253, 375260,
  1276. 362806, 350865, 339410, 328420,
  1277. 317870, 307741, 298012, 288665,
  1278. 279681, 271044, 262738, 254747,
  1279. 247058, 239657, 232531, 225668,
  1280. 219056, 212685, 206543, 200622,
  1281. 194911, 189403, 184087, 178956,
  1282. };
  1283. const uint32_t lut_oscillator_increments[] = {
  1284. 594570139, 598878640, 603218361, 607589530,
  1285. 611992374, 616427123, 620894008, 625393262,
  1286. 629925120, 634489817, 639087591, 643718683,
  1287. 648383334, 653081787, 657814287, 662581081,
  1288. 667382416, 672218544, 677089717, 681996188,
  1289. 686938214, 691916051, 696929960, 701980202,
  1290. 707067040, 712190739, 717351567, 722549792,
  1291. 727785686, 733059521, 738371572, 743722117,
  1292. 749111434, 754539804, 760007511, 765514839,
  1293. 771062075, 776649508, 782277431, 787946136,
  1294. 793655918, 799407076, 805199909, 811034720,
  1295. 816911812, 822831491, 828794068, 834799851,
  1296. 840849155, 846942294, 853079587, 859261354,
  1297. 865487916, 871759598, 878076727, 884439633,
  1298. 890848647, 897304104, 903806339, 910355693,
  1299. 916952505, 923597121, 930289887, 937031151,
  1300. 943821265, 950660583, 957549461, 964488259,
  1301. 971477339, 978517064, 985607802, 992749922,
  1302. 999943798, 1007189803, 1014488315, 1021839716,
  1303. 1029244387, 1036702717, 1044215092, 1051781905,
  1304. 1059403550, 1067080425, 1074812930, 1082601467,
  1305. 1090446444, 1098348268, 1106307352, 1114324111,
  1306. 1122398963, 1130532329, 1138724632, 1146976300,
  1307. 1155287763, 1163659455, 1172091811, 1180585271,
  1308. 1189140279,
  1309. };
  1310. const uint32_t lut_euclidean[] = {
  1311. 0, 1, 1, 1,
  1312. 1, 1, 1, 1,
  1313. 1, 1, 1, 1,
  1314. 1, 1, 1, 1,
  1315. 1, 1, 1, 1,
  1316. 1, 1, 1, 1,
  1317. 1, 1, 1, 1,
  1318. 1, 1, 1, 1,
  1319. 0, 1, 3, 3,
  1320. 3, 3, 3, 3,
  1321. 3, 3, 3, 3,
  1322. 3, 3, 3, 3,
  1323. 3, 3, 3, 3,
  1324. 3, 3, 3, 3,
  1325. 3, 3, 3, 3,
  1326. 3, 3, 3, 3,
  1327. 0, 1, 5, 7,
  1328. 7, 7, 7, 7,
  1329. 7, 7, 7, 7,
  1330. 7, 7, 7, 7,
  1331. 7, 7, 7, 7,
  1332. 7, 7, 7, 7,
  1333. 7, 7, 7, 7,
  1334. 7, 7, 7, 7,
  1335. 0, 1, 5, 13,
  1336. 15, 15, 15, 15,
  1337. 15, 15, 15, 15,
  1338. 15, 15, 15, 15,
  1339. 15, 15, 15, 15,
  1340. 15, 15, 15, 15,
  1341. 15, 15, 15, 15,
  1342. 15, 15, 15, 15,
  1343. 0, 1, 9, 13,
  1344. 29, 31, 31, 31,
  1345. 31, 31, 31, 31,
  1346. 31, 31, 31, 31,
  1347. 31, 31, 31, 31,
  1348. 31, 31, 31, 31,
  1349. 31, 31, 31, 31,
  1350. 31, 31, 31, 31,
  1351. 0, 1, 9, 21,
  1352. 45, 61, 63, 63,
  1353. 63, 63, 63, 63,
  1354. 63, 63, 63, 63,
  1355. 63, 63, 63, 63,
  1356. 63, 63, 63, 63,
  1357. 63, 63, 63, 63,
  1358. 63, 63, 63, 63,
  1359. 0, 1, 17, 41,
  1360. 45, 93, 125, 127,
  1361. 127, 127, 127, 127,
  1362. 127, 127, 127, 127,
  1363. 127, 127, 127, 127,
  1364. 127, 127, 127, 127,
  1365. 127, 127, 127, 127,
  1366. 127, 127, 127, 127,
  1367. 0, 1, 17, 41,
  1368. 85, 173, 221, 253,
  1369. 255, 255, 255, 255,
  1370. 255, 255, 255, 255,
  1371. 255, 255, 255, 255,
  1372. 255, 255, 255, 255,
  1373. 255, 255, 255, 255,
  1374. 255, 255, 255, 255,
  1375. 0, 1, 33, 73,
  1376. 169, 173, 365, 445,
  1377. 509, 511, 511, 511,
  1378. 511, 511, 511, 511,
  1379. 511, 511, 511, 511,
  1380. 511, 511, 511, 511,
  1381. 511, 511, 511, 511,
  1382. 511, 511, 511, 511,
  1383. 0, 1, 33, 145,
  1384. 297, 341, 429, 733,
  1385. 957, 1021, 1023, 1023,
  1386. 1023, 1023, 1023, 1023,
  1387. 1023, 1023, 1023, 1023,
  1388. 1023, 1023, 1023, 1023,
  1389. 1023, 1023, 1023, 1023,
  1390. 1023, 1023, 1023, 1023,
  1391. 0, 1, 65, 145,
  1392. 297, 681, 685, 1453,
  1393. 1757, 1917, 2045, 2047,
  1394. 2047, 2047, 2047, 2047,
  1395. 2047, 2047, 2047, 2047,
  1396. 2047, 2047, 2047, 2047,
  1397. 2047, 2047, 2047, 2047,
  1398. 2047, 2047, 2047, 2047,
  1399. 0, 1, 65, 273,
  1400. 585, 1193, 1365, 1709,
  1401. 2925, 3549, 3965, 4093,
  1402. 4095, 4095, 4095, 4095,
  1403. 4095, 4095, 4095, 4095,
  1404. 4095, 4095, 4095, 4095,
  1405. 4095, 4095, 4095, 4095,
  1406. 4095, 4095, 4095, 4095,
  1407. 0, 1, 129, 545,
  1408. 1169, 2345, 2729, 2733,
  1409. 3501, 5853, 7101, 7933,
  1410. 8189, 8191, 8191, 8191,
  1411. 8191, 8191, 8191, 8191,
  1412. 8191, 8191, 8191, 8191,
  1413. 8191, 8191, 8191, 8191,
  1414. 8191, 8191, 8191, 8191,
  1415. 0, 1, 129, 545,
  1416. 2193, 2345, 5289, 5461,
  1417. 5805, 11693, 11997, 15293,
  1418. 16125, 16381, 16383, 16383,
  1419. 16383, 16383, 16383, 16383,
  1420. 16383, 16383, 16383, 16383,
  1421. 16383, 16383, 16383, 16383,
  1422. 16383, 16383, 16383, 16383,
  1423. 0, 1, 257, 1057,
  1424. 2193, 4681, 9513, 10921,
  1425. 10925, 13741, 23405, 28381,
  1426. 30653, 32253, 32765, 32767,
  1427. 32767, 32767, 32767, 32767,
  1428. 32767, 32767, 32767, 32767,
  1429. 32767, 32767, 32767, 32767,
  1430. 32767, 32767, 32767, 32767,
  1431. 0, 1, 257, 2113,
  1432. 4369, 9361, 10537, 21161,
  1433. 21845, 23213, 44461, 46813,
  1434. 56797, 61309, 65021, 65533,
  1435. 65535, 65535, 65535, 65535,
  1436. 65535, 65535, 65535, 65535,
  1437. 65535, 65535, 65535, 65535,
  1438. 65535, 65535, 65535, 65535,
  1439. 0, 1, 513, 2113,
  1440. 8737, 17553, 18729, 38057,
  1441. 43689, 43693, 54957, 93613,
  1442. 95965, 113597, 126845, 130045,
  1443. 131069, 131071, 131071, 131071,
  1444. 131071, 131071, 131071, 131071,
  1445. 131071, 131071, 131071, 131071,
  1446. 131071, 131071, 131071, 131071,
  1447. 0, 1, 513, 4161,
  1448. 16929, 34961, 37449, 76073,
  1449. 86697, 87381, 88749, 109997,
  1450. 187245, 192221, 228285, 253821,
  1451. 261117, 262141, 262143, 262143,
  1452. 262143, 262143, 262143, 262143,
  1453. 262143, 262143, 262143, 262143,
  1454. 262143, 262143, 262143, 262143,
  1455. 0, 1, 1025, 8321,
  1456. 16929, 34961, 74897, 84265,
  1457. 169129, 174761, 174765, 186029,
  1458. 355757, 374493, 454365, 490429,
  1459. 507645, 522237, 524285, 524287,
  1460. 524287, 524287, 524287, 524287,
  1461. 524287, 524287, 524287, 524287,
  1462. 524287, 524287, 524287, 524287,
  1463. 0, 1, 1025, 8321,
  1464. 33825, 69905, 148625, 149801,
  1465. 304425, 346793, 349525, 354989,
  1466. 439725, 748973, 751325, 908765,
  1467. 980925, 1031933, 1046525, 1048573,
  1468. 1048575, 1048575, 1048575, 1048575,
  1469. 1048575, 1048575, 1048575, 1048575,
  1470. 1048575, 1048575, 1048575, 1048575,
  1471. 0, 1, 2049, 16513,
  1472. 67649, 139809, 280721, 299593,
  1473. 338217, 677033, 699049, 699053,
  1474. 743085, 1420717, 1497965, 1535709,
  1475. 1817533, 1961853, 2064125, 2093053,
  1476. 2097149, 2097151, 2097151, 2097151,
  1477. 2097151, 2097151, 2097151, 2097151,
  1478. 2097151, 2097151, 2097151, 2097151,
  1479. 0, 1, 2049, 33025,
  1480. 133185, 270881, 297105, 599185,
  1481. 608553, 1217705, 1395369, 1398101,
  1482. 1403565, 1758893, 2977197, 2995933,
  1483. 3600093, 3652541, 3927933, 4128253,
  1484. 4190205, 4194301, 4194303, 4194303,
  1485. 4194303, 4194303, 4194303, 4194303,
  1486. 4194303, 4194303, 4194303, 4194303,
  1487. 0, 1, 4097, 33025,
  1488. 133185, 541217, 559249, 1189009,
  1489. 1198377, 2435369, 2708137, 2796201,
  1490. 2796205, 2972333, 3517869, 5991853,
  1491. 6010589, 7270109, 7306173, 8122237,
  1492. 8322557, 8380413, 8388605, 8388607,
  1493. 8388607, 8388607, 8388607, 8388607,
  1494. 8388607, 8388607, 8388607, 8388607,
  1495. 0, 1, 4097, 65793,
  1496. 266305, 541217, 1118481, 2245777,
  1497. 2396745, 2697513, 4887721, 5581481,
  1498. 5592405, 5614253, 7001773, 11382189,
  1499. 11983725, 12285661, 14540253, 15694781,
  1500. 16244605, 16645629, 16769021, 16777213,
  1501. 16777215, 16777215, 16777215, 16777215,
  1502. 16777215, 16777215, 16777215, 16777215,
  1503. 0, 1, 8193, 131585,
  1504. 532609, 1082401, 2236961, 4491409,
  1505. 4793489, 4868393, 9741609, 11096745,
  1506. 11184809, 11184813, 11360941, 14071213,
  1507. 23817645, 23967453, 24571613, 29080509,
  1508. 31389629, 32489213, 33291261, 33538045,
  1509. 33554429, 33554431, 33554431, 33554431,
  1510. 33554431, 33554431, 33554431, 33554431,
  1511. 0, 1, 8193, 131585,
  1512. 1056897, 2164801, 4465185, 4753553,
  1513. 9577617, 9586985, 19212585, 21664937,
  1514. 22358697, 22369621, 22391469, 23778989,
  1515. 28683693, 47934893, 47953629, 57601757,
  1516. 58178493, 62779261, 64995069, 66845693,
  1517. 67092477, 67108861, 67108863, 67108863,
  1518. 67108863, 67108863, 67108863, 67108863,
  1519. 0, 1, 16385, 262657,
  1520. 1056897, 4261953, 8667681, 8947857,
  1521. 19022993, 19173961, 21580073, 38966441,
  1522. 44389033, 44739241, 44739245, 45439661,
  1523. 56284845, 91057581, 95869805, 96171741,
  1524. 116322013, 116882365, 125693821, 132103933,
  1525. 133692413, 134184957, 134217725, 134217727,
  1526. 134217727, 134217727, 134217727, 134217727,
  1527. 0, 1, 16385, 525313,
  1528. 2113665, 8521793, 8929825, 17895697,
  1529. 35932305, 38347921, 38422825, 77932841,
  1530. 86660265, 89434793, 89478485, 89565869,
  1531. 95114925, 112569773, 191589805, 191739613,
  1532. 196570845, 232644061, 250575805, 251391869,
  1533. 264208125, 267384829, 268402685, 268435453,
  1534. 268435455, 268435455, 268435455, 268435455,
  1535. 0, 1, 32769, 525313,
  1536. 4227329, 8521793, 17318433, 35791393,
  1537. 38045841, 76620945, 76695849, 86321449,
  1538. 156406953, 177556137, 178956969, 178956973,
  1539. 181758637, 224057005, 364228013, 383479213,
  1540. 383629021, 460779229, 465288125, 502234045,
  1541. 519827325, 528416253, 535820285, 536805373,
  1542. 536870909, 536870911, 536870911, 536870911,
  1543. 0, 1, 32769, 1049601,
  1544. 8421633, 17043521, 34636833, 71442977,
  1545. 71862417, 152192145, 153391689, 155797801,
  1546. 311731497, 346641065, 357870249, 357913941,
  1547. 358001325, 380459693, 450278829, 762146221,
  1548. 766958445, 769357533, 930016989, 930855869,
  1549. 1004468157, 1039654781, 1056898557, 1071642621,
  1550. 1073676285, 1073741821, 1073741823, 1073741823,
  1551. 0, 1, 65537, 2099201,
  1552. 8421633, 34087041, 69273665, 138682913,
  1553. 143165585, 287458449, 306783377, 307382569,
  1554. 614803753, 625644713, 714427049, 715827881,
  1555. 715827885, 718629549, 896194221, 917876141,
  1556. 1532718509, 1533916893, 1572566749, 1861152477,
  1557. 1870117821, 2008936317, 2079309565, 2130640381,
  1558. 2143285245, 2147352573, 2147483645, 2147483647,
  1559. 0, 1, 65537, 2099201,
  1560. 16843009, 67641473, 138479681, 277365281,
  1561. 286331153, 574916753, 613491857, 613566761,
  1562. 690563369, 1246925993, 1386828457, 1431481001,
  1563. 1431655765, 1432005293, 1521310381, 1801115309,
  1564. 2913840557UL, 3067833773UL, 3067983581UL, 3145133789UL,
  1565. 3722304989UL, 3740236733UL, 4018007933UL, 4159684349UL,
  1566. 4261281277UL, 4290768893UL, 4294836221UL, 4294967293UL,
  1567. };
  1568. const uint32_t* lookup_table_32_table[] = {
  1569. lut_lfo_increments,
  1570. lut_portamento_increments,
  1571. lut_oscillator_increments,
  1572. lut_euclidean,
  1573. };
  1574. const uint16_t chr_characters[] = {
  1575. 0, 0, 0, 0,
  1576. 0, 0, 0, 0,
  1577. 0, 0, 0, 0,
  1578. 0, 0, 0, 0,
  1579. 0, 0, 0, 0,
  1580. 0, 0, 0, 0,
  1581. 0, 0, 0, 0,
  1582. 0, 0, 0, 0,
  1583. 0, 272, 1280, 29012,
  1584. 46420, 9352, 39716, 256,
  1585. 39936, 61440, 1020, 340,
  1586. 8, 68, 16, 136,
  1587. 64512, 24576, 55364, 61508,
  1588. 25668, 46148, 48196, 57344,
  1589. 64580, 62532, 272, 264,
  1590. 160, 4164, 520, 33936,
  1591. 64592, 60484, 61776, 39936,
  1592. 61712, 40004, 35908, 48192,
  1593. 27716, 37136, 30720, 3236,
  1594. 7168, 28288, 28192, 64512,
  1595. 52292, 64544, 52324, 46148,
  1596. 33040, 31744, 3208, 27688,
  1597. 680, 656, 37000, 39936,
  1598. 544, 61440, 40, 4096,
  1599. 512, 63556, 7204, 6212,
  1600. 28744, 39940, 35844, 62016,
  1601. 11332, 4180, 12352, 432,
  1602. 272, 10324, 8272, 14404,
  1603. 35972, 50276, 80, 45632,
  1604. 7172, 14336, 2056, 10280,
  1605. 680, 29248, 4108, 37388,
  1606. 272, 37088, 68, 0,
  1607. 24736, 3592, 33408, 4136,
  1608. 224, 524, 896, 56,
  1609. 24712, 18568, 24, 40,
  1610. 60416, 10308, 4368, 11840,
  1611. 64520, 64516, 65024, 64768,
  1612. 64640, 64576, 64544, 64528,
  1613. 49152, 57344, 28672, 14336,
  1614. 6144, 7168, 35840, 50176,
  1615. 65532, 0, 0, 0,
  1616. 0, 0, 0, 0,
  1617. 0, 0, 0, 0,
  1618. 0, 0, 0, 0,
  1619. 0, 0, 0, 0,
  1620. 0, 0, 0, 0,
  1621. 0, 0, 0, 0,
  1622. 0, 0, 0, 0,
  1623. 0, 0, 0, 0,
  1624. 0, 0, 0, 0,
  1625. 0, 0, 0, 0,
  1626. 0, 0, 0, 0,
  1627. 0, 0, 0, 0,
  1628. 0, 0, 0, 0,
  1629. 0, 0, 0, 0,
  1630. 0, 0, 0, 0,
  1631. 0, 0, 0, 0,
  1632. 0, 0, 0, 0,
  1633. 0, 0, 0, 0,
  1634. 0, 0, 0, 0,
  1635. 0, 0, 0, 0,
  1636. 0, 0, 0, 0,
  1637. 0, 0, 0, 0,
  1638. 0, 0, 0, 65532,
  1639. };
  1640. const uint16_t* char_table[] = {
  1641. chr_characters,
  1642. };
  1643. } // namespace yarns