music mixer code
Dependencies: mbed wave_player mbed-rtos SimpleRGB 4DGL-uLCD-SE PinDetect
Revision 10:5f5e199e1b9c, committed 2019-12-09
- Comitter:
- vamsatoor
- Date:
- Mon Dec 09 16:43:04 2019 +0000
- Parent:
- 9:d6343146d23e
- Commit message:
- commit 1;
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PinDetect.lib Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/AjK/code/PinDetect/#cb3afc45028b
--- a/SDFileSystem.lib Tue Oct 11 03:42:42 2016 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -http://mbed.org/users/mbed_official/code/SDFileSystem/#c8f66dc765d4
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dixiehorn.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,583 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 05:20:10 PM +* FileName: dixiehorn_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 4424 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 4424 + +const unsigned char data[NUM_ELEMENTS] = { +128, 126, 128, 126, 128, 128, 126, 128, /* 0-7 */ +127, 126, 126, 126, 127, 130, 127, 129, /* 8-15 */ +127, 136, 127, 114, 118, 118, 126, 142, /* 16-23 */ +138, 132, 140, 120, 120, 116, 111, 110, /* 24-31 */ +128, 144, 139, 153, 144, 113, 115, 125, /* 32-39 */ +111, 99, 126, 139, 133, 174, 183, 125, /* 40-47 */ + 82, 117, 105, 62, 98, 142, 127, 163, /* 48-55 */ +238, 151, 41, 124, 121, 51, 82, 143, /* 56-63 */ +129, 164, 34, 184, 60, 106, 138, 83, /* 64-71 */ + 33, 102, 139, 140, 30, 212, 56, 87, /* 72-79 */ +122, 108, 17, 30, 145, 149, 255, 34, /* 80-87 */ + 60, 52, 150, 133, 39, 217, 112, 156, /* 88-95 */ +221, 98, 88, 25, 152, 127, 79, 200, /* 96-103 */ + 41, 152, 206, 106, 186, 25, 109, 159, /* 104-111 */ +123, 254, 12, 120, 185, 83, 243, 43, /* 112-119 */ + 93, 139, 160, 64, 229, 71, 144, 29, /* 120-127 */ + 50, 72, 80, 144, 154, 117, 245, 39, /* 128-135 */ +121, 220, 80, 126, 53, 158, 143, 143, /* 136-143 */ + 17, 3, 110, 188, 73, 194, 26, 130, /* 144-151 */ +159, 166, 69, 229, 72, 152, 41, 15, /* 152-159 */ + 39, 93, 151, 164, 135, 237, 33, 127, /* 160-167 */ +251, 70, 99, 49, 141, 156, 175, 25, /* 168-175 */ +241, 91, 195, 81, 182, 14, 118, 147, /* 176-183 */ +179, 87, 230, 68, 142, 49, 3, 43, /* 184-191 */ + 99, 139, 173, 136, 240, 40, 125, 254, /* 192-199 */ + 68, 84, 72, 136, 151, 186, 9, 1, /* 200-207 */ +111, 176, 73, 177, 16, 133, 135, 169, /* 208-215 */ + 74, 232, 82, 152, 38, 254, 42, 95, /* 216-223 */ +145, 162, 124, 231, 47, 122, 234, 54, /* 224-231 */ + 96, 57, 139, 163, 157, 22, 23, 112, /* 232-239 */ +177, 66, 173, 49, 123, 142, 173, 68, /* 240-247 */ +255, 88, 149, 42, 249, 52, 106, 126, /* 248-255 */ +173, 126, 251, 49, 123, 248, 52, 85, /* 256-263 */ + 73, 144, 140, 158, 17, 17, 109, 188, /* 264-271 */ + 65, 162, 50, 146, 138, 167, 59, 244, /* 272-279 */ + 86, 162, 60, 236, 31, 110, 146, 173, /* 280-287 */ +106, 223, 43, 132, 13, 46, 62, 67, /* 288-295 */ +163, 163, 148, 242, 7, 113, 207, 78, /* 296-303 */ +133, 29, 149, 153, 181, 50, 230, 91, /* 304-311 */ +161, 59, 230, 17, 112, 148, 171, 116, /* 312-319 */ +225, 52, 123, 255, 44, 57, 72, 140, /* 320-327 */ +153, 165, 4, 17, 104, 194, 76, 132, /* 328-335 */ + 34, 138, 135, 184, 61, 233, 87, 145, /* 336-343 */ + 47, 228, 22, 121, 144, 164, 119, 234, /* 344-351 */ + 63, 139, 252, 37, 61, 81, 152, 155, /* 352-359 */ +169, 4, 13, 126, 207, 66, 137, 19, /* 360-367 */ +143, 151, 167, 48, 228, 96, 161, 53, /* 368-375 */ +228, 24, 113, 141, 180, 115, 227, 54, /* 376-383 */ +138, 8, 47, 60, 65, 149, 157, 150, /* 384-391 */ +248, 8, 120, 205, 66, 138, 29, 153, /* 392-399 */ +149, 166, 45, 222, 94, 174, 46, 240, /* 400-407 */ + 24, 118, 173, 167, 106, 205, 29, 158, /* 408-415 */ + 12, 45, 73, 57, 173, 170, 145, 243, /* 416-423 */ +239, 123, 212, 64, 161, 25, 135, 174, /* 424-431 */ +172, 46, 213, 76, 184, 52, 240, 23, /* 432-439 */ + 96, 186, 175, 99, 193, 2, 165, 23, /* 440-447 */ + 49, 72, 59, 171, 183, 142, 213, 202, /* 448-455 */ +138, 246, 67, 164, 9, 140, 202, 179, /* 456-463 */ + 19, 160, 74, 219, 54, 254, 19, 80, /* 464-471 */ +200, 194, 78, 157, 239, 199, 34, 54, /* 472-479 */ + 87, 27, 174, 206, 149, 202, 180, 146, /* 480-487 */ +254, 62, 194, 20, 120, 205, 189, 10, /* 488-495 */ +147, 68, 226, 39, 20, 38, 60, 192, /* 496-503 */ +205, 81, 147, 237, 211, 19, 52, 129, /* 504-511 */ + 24, 171, 208, 140, 197, 177, 136, 241, /* 512-519 */ + 56, 221, 28, 100, 207, 189, 17, 173, /* 520-527 */ + 66, 227, 38, 19, 65, 50, 185, 199, /* 528-535 */ + 94, 177, 233, 183, 12, 56, 154, 26, /* 536-543 */ +129, 208, 148, 212, 187, 123, 12, 65, /* 544-551 */ +222, 36, 79, 205, 195, 9, 152, 48, /* 552-559 */ +246, 40, 28, 99, 36, 160, 210, 68, /* 560-567 */ +158, 231, 188, 46, 54, 180, 32, 110, /* 568-575 */ +208, 141, 201, 185, 127, 10, 51, 247, /* 576-583 */ + 90, 69, 157, 184, 0, 165, 65, 231, /* 584-591 */ + 44, 42, 155, 36, 113, 202, 71, 170, /* 592-599 */ + 3, 190, 17, 59, 210, 60, 88, 172, /* 600-607 */ +125, 192, 209, 126, 239, 49, 11, 109, /* 608-615 */ + 51, 142, 168, 2, 197, 73, 226, 37, /* 616-623 */ + 45, 160, 49, 110, 167, 61, 191, 11, /* 624-631 */ +179, 4, 41, 242, 79, 71, 153, 101, /* 632-639 */ +208, 243, 139, 255, 44, 5, 113, 51, /* 640-647 */ +142, 147, 240, 200, 77, 224, 31, 19, /* 648-655 */ +178, 63, 106, 163, 35, 188, 28, 184, /* 656-663 */ + 18, 27, 223, 87, 71, 162, 100, 195, /* 664-671 */ +233, 129, 237, 23, 1, 148, 66, 129, /* 672-679 */ +139, 237, 200, 78, 213, 18, 29, 191, /* 680-687 */ + 61, 89, 157, 39, 200, 36, 178, 15, /* 688-695 */ + 37, 235, 94, 72, 153, 96, 207, 238, /* 696-703 */ +122, 234, 21, 6, 146, 52, 123, 124, /* 704-711 */ +236, 230, 78, 205, 30, 20, 179, 63, /* 712-719 */ + 99, 159, 39, 204, 24, 147, 253, 29, /* 720-727 */ +230, 105, 79, 154, 78, 211, 10, 109, /* 728-735 */ +233, 37, 244, 132, 61, 141, 139, 239, /* 736-743 */ +246, 78, 185, 29, 5, 171, 70, 110, /* 744-751 */ +165, 22, 221, 51, 147, 12, 22, 199, /* 752-759 */ + 70, 67, 180, 73, 222, 32, 97, 239, /* 760-767 */ + 27, 220, 136, 62, 149, 135, 228, 1, /* 768-775 */ + 79, 186, 40, 249, 163, 58, 102, 166, /* 776-783 */ + 27, 255, 66, 150, 22, 1, 191, 98, /* 784-791 */ + 67, 165, 69, 225, 47, 99, 238, 26, /* 792-799 */ +214, 125, 47, 151, 105, 224, 45, 94, /* 800-807 */ +214, 44, 214, 163, 62, 101, 144, 255, /* 808-815 */ + 12, 71, 146, 25, 245, 193, 91, 74, /* 816-823 */ +150, 30, 238, 72, 117, 255, 23, 203, /* 824-831 */ +137, 62, 144, 76, 229, 62, 99, 193, /* 832-839 */ + 35, 220, 158, 79, 101, 94, 237, 45, /* 840-847 */ +106, 160, 17, 255, 179, 88, 63, 98, /* 848-855 */ + 9, 20, 104, 127, 254, 21, 195, 137, /* 856-863 */ + 71, 101, 23, 250, 78, 98, 208, 29, /* 864-871 */ +246, 162, 78, 88, 50, 6, 69, 96, /* 872-879 */ +179, 9, 248, 183, 107, 93, 63, 4, /* 880-887 */ + 36, 90, 140, 239, 16, 206, 128, 81, /* 888-895 */ + 53, 8, 31, 88, 118, 218, 13, 212, /* 896-903 */ +140, 83, 61, 14, 28, 75, 90, 186, /* 904-911 */ + 14, 238, 171, 121, 86, 33, 27, 68, /* 912-919 */ + 87, 154, 247, 5, 178, 120, 103, 52, /* 920-927 */ + 30, 70, 75, 115, 221, 253, 200, 150, /* 928-935 */ +119, 71, 34, 48, 62, 104, 207, 7, /* 936-943 */ +237, 154, 115, 77, 27, 66, 79, 90, /* 944-951 */ +161, 225, 230, 165, 123, 90, 51, 58, /* 952-959 */ + 68, 68, 132, 218, 239, 194, 139, 99, /* 960-967 */ + 45, 42, 77, 85, 123, 193, 224, 199, /* 968-975 */ +144, 113, 75, 56, 96, 88, 86, 156, /* 976-983 */ +212, 196, 158, 140, 96, 48, 68, 80, /* 984-991 */ + 84, 142, 200, 203, 159, 139, 98, 43, /* 992-999 */ + 65, 99, 105, 135, 189, 209, 168, 138, /* 1000-1007 */ +116, 61, 60, 96, 101, 124, 178, 205, /* 1008-1015 */ +179, 136, 115, 70, 60, 99, 109, 127, /* 1016-1023 */ +171, 197, 179, 137, 128, 104, 73, 99, /* 1024-1031 */ +104, 108, 141, 186, 197, 160, 121, 106, /* 1032-1039 */ + 72, 82, 109, 111, 139, 179, 188, 153, /* 1040-1047 */ +128, 107, 79, 84, 109, 106, 131, 155, /* 1048-1055 */ +170, 176, 136, 117, 78, 59, 91, 108, /* 1056-1063 */ +138, 161, 187, 189, 147, 106, 65, 48, /* 1064-1071 */ + 78, 113, 149, 167, 162, 172, 158, 138, /* 1072-1079 */ + 98, 59, 68, 102, 140, 154, 152, 178, /* 1080-1087 */ +172, 144, 114, 73, 64, 81, 116, 152, /* 1088-1095 */ +157, 173, 184, 151, 125, 83, 58, 78, /* 1096-1103 */ +103, 131, 140, 154, 187, 171, 139, 101, /* 1104-1111 */ + 62, 65, 91, 135, 155, 148, 177, 170, /* 1112-1119 */ +140, 113, 72, 73, 92, 132, 143, 130, /* 1120-1127 */ +154, 162, 149, 130, 102, 79, 86, 113, /* 1128-1135 */ +137, 145, 151, 174, 166, 126, 89, 67, /* 1136-1143 */ + 89, 125, 144, 141, 125, 157, 173, 139, /* 1144-1151 */ +121, 94, 92, 117, 139, 131, 109, 143, /* 1152-1159 */ +180, 168, 136, 90, 72, 104, 134, 144, /* 1160-1167 */ +122, 130, 166, 173, 131, 80, 73, 103, /* 1168-1175 */ +153, 163, 139, 118, 155, 172, 132, 110, /* 1176-1183 */ + 78, 87, 131, 154, 139, 108, 152, 166, /* 1184-1191 */ +128, 109, 73, 86, 117, 149, 152, 129, /* 1192-1199 */ +132, 160, 174, 155, 103, 72, 93, 109, /* 1200-1207 */ +117, 91, 115, 174, 197, 167, 117, 87, /* 1208-1215 */ + 89, 101, 110, 101, 87, 124, 151, 155, /* 1216-1223 */ +161, 141, 133, 140, 116, 93, 60, 69, /* 1224-1231 */ +128, 147, 151, 139, 137, 177, 175, 180, /* 1232-1239 */ +124, 73, 101, 88, 71, 80, 114, 169, /* 1240-1247 */ +230, 248, 187, 133, 138, 97, 40, 10, /* 1248-1255 */ + 27, 78, 163, 226, 213, 199, 204, 216, /* 1256-1263 */ +148, 48, 214, 178, 11, 112, 191, 229, /* 1264-1271 */ +238, 11, 32, 7, 137, 227, 164, 144, /* 1272-1279 */ +206, 69, 151, 9, 68, 43, 12, 38, /* 1280-1287 */ +172, 243, 223, 209, 202, 31, 161, 235, /* 1288-1295 */ + 4, 217, 217, 73, 200, 220, 220, 191, /* 1296-1303 */ +171, 35, 172, 226, 7, 246, 216, 96, /* 1304-1311 */ +235, 228, 250, 227, 170, 20, 138, 187, /* 1312-1319 */ + 0, 3, 203, 70, 253, 33, 53, 6, /* 1320-1327 */ +174, 38, 154, 133, 194, 0, 205, 51, /* 1328-1335 */ + 35, 63, 54, 11, 176, 55, 157, 101, /* 1336-1343 */ +168, 251, 171, 13, 30, 62, 50, 31, /* 1344-1351 */ +156, 25, 187, 125, 152, 247, 172, 227, /* 1352-1359 */ + 32, 104, 63, 60, 161, 18, 205, 130, /* 1360-1367 */ +116, 228, 173, 199, 56, 141, 55, 93, /* 1368-1375 */ +197, 221, 196, 160, 76, 188, 181, 145, /* 1376-1383 */ + 43, 205, 30, 95, 240, 189, 156, 181, /* 1384-1391 */ + 73, 160, 183, 114, 1, 234, 25, 94, /* 1392-1399 */ + 30, 163, 98, 211, 108, 132, 197, 134, /* 1400-1407 */ +229, 9, 86, 82, 68, 161, 35, 223, /* 1408-1415 */ +147, 118, 209, 145, 171, 55, 156, 63, /* 1416-1423 */ +110, 193, 226, 224, 187, 98, 174, 153, /* 1424-1431 */ +116, 34, 212, 45, 106, 245, 169, 157, /* 1432-1439 */ +231, 96, 130, 184, 119, 225, 24, 67, /* 1440-1447 */ + 75, 50, 153, 72, 233, 115, 85, 185, /* 1448-1455 */ +149, 180, 54, 137, 55, 95, 171, 239, /* 1456-1463 */ +225, 169, 73, 180, 182, 136, 40, 223, /* 1464-1471 */ + 50, 109, 239, 171, 156, 230, 82, 134, /* 1472-1479 */ +201, 117, 237, 13, 85, 99, 51, 161, /* 1480-1487 */ + 93, 247, 129, 109, 205, 143, 186, 42, /* 1488-1495 */ +107, 68, 112, 184, 1, 245, 168, 84, /* 1496-1503 */ +198, 173, 129, 38, 202, 39, 124, 12, /* 1504-1511 */ +175, 169, 241, 78, 127, 201, 130, 230, /* 1512-1519 */ + 13, 67, 97, 59, 157, 85, 1, 129, /* 1520-1527 */ + 99, 205, 151, 181, 45, 117, 59, 108, /* 1528-1535 */ +171, 248, 231, 177, 77, 177, 164, 137, /* 1536-1543 */ + 28, 178, 40, 117, 239, 189, 191, 221, /* 1544-1551 */ + 91, 165, 200, 109, 234, 242, 41, 93, /* 1552-1559 */ + 56, 161, 95, 245, 113, 115, 208, 113, /* 1560-1567 */ +174, 32, 86, 57, 102, 180, 6, 239, /* 1568-1575 */ +166, 86, 185, 154, 126, 30, 173, 30, /* 1576-1583 */ +118, 240, 193, 192, 221, 88, 165, 189, /* 1584-1591 */ +111, 253, 248, 38, 110, 64, 158, 107, /* 1592-1599 */ +254, 105, 110, 206, 121, 194, 30, 87, /* 1600-1607 */ + 74, 115, 181, 18, 253, 157, 80, 194, /* 1608-1615 */ +151, 139, 32, 151, 35, 134, 237, 196, /* 1616-1623 */ +205, 212, 71, 156, 178, 122, 249, 223, /* 1624-1631 */ + 51, 115, 48, 173, 139, 239, 92, 123, /* 1632-1639 */ +192, 114, 206, 16, 88, 77, 95, 177, /* 1640-1647 */ + 49, 5, 138, 89, 184, 131, 155, 46, /* 1648-1655 */ +142, 35, 117, 222, 217, 220, 200, 77, /* 1656-1663 */ +146, 154, 137, 26, 224, 33, 110, 38, /* 1664-1671 */ +163, 142, 254, 95, 106, 178, 132, 231, /* 1672-1679 */ + 28, 70, 75, 100, 172, 43, 10, 146, /* 1680-1687 */ + 79, 166, 146, 187, 47, 141, 34, 118, /* 1688-1695 */ +221, 218, 228, 201, 63, 146, 167, 148, /* 1696-1703 */ + 31, 216, 15, 108, 34, 170, 157, 241, /* 1704-1711 */ + 82, 114, 183, 137, 246, 10, 44, 68, /* 1712-1719 */ + 96, 163, 64, 5, 128, 87, 190, 147, /* 1720-1727 */ +187, 46, 108, 30, 122, 210, 228, 227, /* 1728-1735 */ +177, 76, 171, 169, 149, 41, 188, 15, /* 1736-1743 */ +123, 23, 168, 158, 223, 82, 139, 189, /* 1744-1751 */ +136, 252, 6, 39, 93, 92, 163, 58, /* 1752-1759 */ +240, 111, 90, 183, 143, 200, 33, 109, /* 1760-1767 */ + 59, 130, 197, 240, 215, 147, 66, 165, /* 1768-1775 */ +163, 160, 36, 184, 36, 133, 6, 178, /* 1776-1783 */ +164, 192, 65, 139, 183, 144, 6, 251, /* 1784-1791 */ + 51, 110, 80, 160, 91, 221, 86, 105, /* 1792-1799 */ +193, 138, 220, 35, 89, 74, 131, 184, /* 1800-1807 */ + 11, 234, 122, 70, 185, 148, 171, 46, /* 1808-1815 */ +157, 46, 141, 242, 194, 203, 176, 53, /* 1816-1823 */ +152, 172, 128, 25, 241, 38, 127, 61, /* 1824-1831 */ +159, 126, 224, 64, 110, 186, 128, 231, /* 1832-1839 */ + 40, 80, 81, 114, 174, 30, 236, 121, /* 1840-1847 */ + 71, 181, 151, 181, 54, 154, 51, 138, /* 1848-1855 */ +221, 209, 210, 169, 59, 159, 162, 141, /* 1856-1863 */ + 30, 221, 45, 126, 33, 158, 151, 221, /* 1864-1871 */ + 74, 131, 177, 126, 242, 15, 59, 85, /* 1872-1879 */ + 94, 159, 70, 244, 104, 107, 189, 134, /* 1880-1887 */ +201, 41, 106, 46, 131, 198, 247, 239, /* 1888-1895 */ +151, 74, 176, 156, 154, 49, 182, 23, /* 1896-1903 */ +131, 0, 185, 201, 203, 61, 145, 177, /* 1904-1911 */ +128, 15, 3, 26, 91, 58, 152, 119, /* 1912-1919 */ +240, 75, 106, 198, 134, 223, 62, 72, /* 1920-1927 */ + 48, 112, 164, 29, 244, 125, 73, 189, /* 1928-1935 */ +165, 183, 50, 152, 30, 118, 222, 206, /* 1936-1943 */ +209, 176, 70, 168, 179, 145, 26, 220, /* 1944-1951 */ + 35, 104, 22, 163, 148, 219, 85, 139, /* 1952-1959 */ +186, 134, 227, 15, 72, 72, 73, 159, /* 1960-1967 */ + 72, 245, 126, 125, 190, 134, 190, 36, /* 1968-1975 */ +121, 47, 111, 189, 255, 228, 152, 97, /* 1976-1983 */ +181, 158, 161, 42, 188, 33, 112, 235, /* 1984-1991 */ +185, 192, 195, 79, 143, 171, 143, 8, /* 1992-1999 */ + 6, 51, 89, 31, 152, 127, 220, 100, /* 2000-2007 */ +129, 181, 141, 234, 38, 79, 62, 66, /* 2008-2015 */ +150, 51, 217, 118, 114, 197, 169, 213, /* 2016-2023 */ + 54, 131, 42, 99, 182, 235, 204, 145, /* 2024-2031 */ + 99, 183, 175, 182, 34, 184, 36, 96, /* 2032-2039 */ +223, 185, 173, 181, 108, 174, 187, 160, /* 2040-2047 */ + 12, 232, 59, 92, 6, 155, 114, 197, /* 2048-2055 */ +125, 171, 184, 146, 236, 27, 90, 75, /* 2056-2063 */ + 65, 157, 47, 209, 142, 146, 195, 157, /* 2064-2071 */ +209, 58, 147, 45, 78, 175, 230, 170, /* 2072-2079 */ +159, 130, 173, 167, 187, 54, 203, 46, /* 2080-2087 */ + 76, 203, 184, 129, 166, 134, 155, 164, /* 2088-2095 */ +173, 34, 255, 57, 61, 240, 160, 87, /* 2096-2103 */ +190, 141, 166, 199, 174, 11, 14, 66, /* 2104-2111 */ + 48, 17, 148, 38, 188, 152, 158, 222, /* 2112-2119 */ +183, 246, 48, 112, 62, 49, 166, 3, /* 2120-2127 */ +187, 164, 161, 223, 175, 210, 42, 150, /* 2128-2135 */ + 42, 50, 187, 206, 138, 180, 149, 202, /* 2136-2143 */ +197, 184, 42, 210, 54, 48, 216, 190, /* 2144-2151 */ + 79, 177, 149, 186, 205, 187, 42, 244, /* 2152-2159 */ + 85, 53, 226, 187, 54, 169, 155, 165, /* 2160-2167 */ +204, 172, 12, 11, 101, 39, 231, 179, /* 2168-2175 */ + 9, 156, 180, 160, 202, 199, 1, 33, /* 2176-2183 */ +156, 43, 221, 182, 237, 111, 180, 172, /* 2184-2191 */ +213, 213, 3, 34, 169, 68, 229, 168, /* 2192-2199 */ +218, 76, 166, 175, 197, 192, 224, 34, /* 2200-2207 */ +205, 90, 248, 181, 218, 68, 183, 197, /* 2208-2215 */ +194, 194, 208, 13, 214, 104, 6, 195, /* 2216-2223 */ +219, 57, 184, 204, 179, 179, 178, 234, /* 2224-2231 */ +218, 116, 19, 211, 240, 57, 167, 199, /* 2232-2239 */ +165, 170, 172, 232, 228, 138, 45, 222, /* 2240-2247 */ +236, 33, 144, 202, 156, 156, 177, 216, /* 2248-2255 */ +228, 168, 74, 250, 246, 41, 132, 196, /* 2256-2263 */ +174, 156, 161, 198, 213, 163, 100, 15, /* 2264-2271 */ +246, 39, 119, 193, 188, 169, 179, 197, /* 2272-2279 */ +210, 173, 92, 7, 236, 28, 121, 200, /* 2280-2287 */ +195, 172, 162, 171, 206, 176, 105, 25, /* 2288-2295 */ +241, 39, 127, 203, 221, 197, 175, 173, /* 2296-2303 */ +180, 147, 93, 26, 233, 4, 87, 184, /* 2304-2311 */ +222, 209, 191, 182, 185, 156, 107, 40, /* 2312-2319 */ +254, 26, 96, 173, 190, 179, 159, 159, /* 2320-2327 */ +171, 163, 131, 81, 52, 58, 107, 164, /* 2328-2335 */ +191, 172, 128, 112, 120, 118, 125, 115, /* 2336-2343 */ + 84, 92, 141, 180, 200, 177, 137, 119, /* 2344-2351 */ + 97, 87, 95, 78, 65, 95, 138, 200, /* 2352-2359 */ +244, 230, 178, 137, 105, 99, 100, 52, /* 2360-2367 */ +253, 27, 89, 147, 216, 227, 208, 201, /* 2368-2375 */ +173, 138, 111, 56, 37, 41, 41, 74, /* 2376-2383 */ +157, 192, 184, 185, 166, 175, 188, 146, /* 2384-2391 */ + 92, 55, 64, 129, 149, 105, 82, 107, /* 2392-2399 */ +122, 136, 130, 123, 133, 148, 185, 205, /* 2400-2407 */ +160, 160, 178, 95, 11, 249, 20, 79, /* 2408-2415 */ +127, 125, 167, 1, 14, 13, 223, 101, /* 2416-2423 */ + 69, 54, 254, 232, 255, 29, 150, 253, /* 2424-2431 */ +229, 244, 1, 181, 155, 134, 253, 22, /* 2432-2439 */ +115, 22, 11, 107, 135, 225, 14, 174, /* 2440-2447 */ +155, 174, 118, 149, 150, 25, 71, 179, /* 2448-2455 */ + 83, 64, 116, 76, 142, 176, 123, 138, /* 2456-2463 */ +165, 142, 207, 195, 100, 172, 208, 71, /* 2464-2471 */ +254, 36, 22, 67, 145, 149, 164, 200, /* 2472-2479 */ +205, 27, 216, 68, 113, 145, 22, 224, /* 2480-2487 */ + 38, 54, 115, 177, 200, 240, 243, 191, /* 2488-2495 */ +234, 147, 231, 63, 142, 26, 2, 70, /* 2496-2503 */ +111, 195, 211, 206, 193, 133, 104, 151, /* 2504-2511 */ + 97, 245, 108, 204, 80, 60, 107, 117, /* 2512-2519 */ +154, 96, 130, 153, 90, 118, 187, 161, /* 2520-2527 */ + 78, 160, 217, 92, 10, 18, 29, 70, /* 2528-2535 */ + 45, 141, 237, 153, 170, 18, 210, 72, /* 2536-2543 */ +145, 161, 20, 221, 8, 47, 119, 109, /* 2544-2551 */ +187, 49, 201, 176, 0, 184, 23, 88, /* 2552-2559 */ +182, 78, 10, 81, 102, 164, 156, 192, /* 2560-2567 */ + 45, 135, 68, 154, 138, 36, 78, 216, /* 2568-2575 */ +124, 29, 107, 97, 138, 123, 101, 0, /* 2576-2583 */ +126, 39, 171, 180, 86, 89, 225, 150, /* 2584-2591 */ + 30, 88, 36, 38, 84, 73, 243, 195, /* 2592-2599 */ + 91, 207, 240, 131, 98, 216, 115, 235, /* 2600-2607 */ + 39, 10, 13, 104, 120, 13, 6, 120, /* 2608-2615 */ +215, 5, 110, 16, 161, 154, 255, 62, /* 2616-2623 */ + 93, 70, 155, 158, 14, 25, 77, 119, /* 2624-2631 */ +177, 96, 8, 132, 235, 56, 66, 124, /* 2632-2639 */ + 56, 140, 121, 171, 254, 70, 89, 185, /* 2640-2647 */ +151, 57, 101, 253, 78, 16, 107, 11, /* 2648-2655 */ + 49, 86, 136, 29, 146, 120, 228, 179, /* 2656-2663 */ + 69, 66, 242, 78, 230, 98, 25, 38, /* 2664-2671 */ +125, 143, 48, 223, 88, 226, 195, 68, /* 2672-2679 */ + 18, 224, 157, 245, 119, 85, 39, 117, /* 2680-2687 */ +135, 32, 9, 56, 166, 164, 79, 20, /* 2688-2695 */ +187, 210, 3, 114, 101, 11, 102, 94, /* 2696-2703 */ +215, 24, 43, 156, 188, 105, 67, 154, /* 2704-2711 */ + 4, 47, 83, 112, 242, 42, 80, 174, /* 2712-2719 */ + 70, 101, 142, 245, 138, 96, 103, 255, /* 2720-2727 */ + 69, 30, 93, 249, 36, 91, 153, 83, /* 2728-2735 */ +189, 89, 239, 153, 110, 41, 217, 152, /* 2736-2743 */ + 6, 114, 38, 42, 86, 122, 47, 248, /* 2744-2751 */ + 47, 175, 158, 123, 53, 175, 247, 18, /* 2752-2759 */ + 99, 69, 11, 47, 68, 243, 36, 66, /* 2760-2767 */ +149, 208, 135, 68, 99, 21, 53, 41, /* 2768-2775 */ +106, 5, 20, 57, 194, 77, 138, 98, /* 2776-2783 */ +234, 141, 89, 51, 245, 147, 244, 114, /* 2784-2791 */ + 59, 18, 53, 148, 61, 222, 47, 214, /* 2792-2799 */ +177, 92, 36, 171, 228, 242, 99, 103, /* 2800-2807 */ + 11, 38, 110, 27, 32, 57, 154, 211, /* 2808-2815 */ +100, 66, 105, 38, 53, 32, 152, 23, /* 2816-2823 */ + 20, 58, 215, 58, 100, 83, 238, 120, /* 2824-2831 */ + 77, 59, 5, 167, 241, 141, 51, 14, /* 2832-2839 */ + 38, 155, 72, 194, 51, 221, 178, 87, /* 2840-2847 */ + 30, 176, 251, 230, 91, 107, 21, 42, /* 2848-2855 */ +108, 44, 24, 52, 157, 218, 94, 50, /* 2856-2863 */ + 96, 49, 75, 30, 150, 43, 26, 65, /* 2864-2871 */ +231, 66, 107, 73, 249, 131, 51, 43, /* 2872-2879 */ + 11, 165, 216, 131, 77, 20, 48, 169, /* 2880-2887 */ + 71, 208, 45, 220, 187, 70, 19, 176, /* 2888-2895 */ + 27, 241, 77, 143, 27, 36, 110, 30, /* 2896-2903 */ + 29, 49, 151, 231, 87, 33, 79, 41, /* 2904-2911 */ + 81, 252, 153, 54, 25, 78, 209, 72, /* 2912-2919 */ +130, 82, 0, 130, 43, 29, 240, 204, /* 2920-2927 */ +232, 135, 111, 19, 70, 157, 50, 227, /* 2928-2935 */ + 43, 204, 186, 60, 29, 147, 21, 31, /* 2936-2943 */ + 63, 135, 22, 33, 107, 252, 31, 80, /* 2944-2951 */ +143, 240, 91, 24, 65, 16, 105, 5, /* 2952-2959 */ +147, 53, 30, 80, 203, 71, 153, 76, /* 2960-2967 */ +238, 138, 62, 34, 215, 238, 252, 122, /* 2968-2975 */ +111, 13, 47, 141, 46, 238, 49, 205, /* 2976-2983 */ +215, 62, 26, 113, 17, 39, 41, 137, /* 2984-2991 */ + 31, 30, 100, 13, 57, 106, 128, 4, /* 2992-2999 */ +112, 36, 27, 0, 163, 241, 143, 75, /* 3000-3007 */ + 18, 60, 207, 70, 181, 70, 246, 176, /* 3008-3015 */ + 64, 25, 150, 248, 252, 73, 102, 11, /* 3016-3023 */ + 25, 143, 53, 6, 86, 191, 231, 80, /* 3024-3031 */ + 25, 54, 19, 87, 12, 144, 44, 19, /* 3032-3039 */ + 87, 248, 47, 126, 102, 244, 116, 55, /* 3040-3047 */ + 24, 206, 208, 249, 115, 80, 9, 52, /* 3048-3055 */ +188, 52, 216, 78, 217, 187, 61, 10, /* 3056-3063 */ +104, 13, 28, 68, 140, 26, 46, 136, /* 3064-3071 */ + 16, 24, 95, 134, 231, 94, 48, 35, /* 3072-3079 */ + 1, 149, 3, 144, 51, 15, 89, 214, /* 3080-3087 */ + 34, 167, 80, 239, 161, 59, 0, 160, /* 3088-3095 */ +244, 250, 112, 106, 15, 77, 177, 29, /* 3096-3103 */ +243, 84, 182, 200, 71, 27, 55, 29, /* 3104-3111 */ + 89, 45, 150, 28, 39, 121, 235, 21, /* 3112-3119 */ +129, 110, 241, 104, 34, 255, 202, 186, /* 3120-3127 */ + 4, 144, 71, 33, 98, 204, 40, 210, /* 3128-3135 */ + 89, 211, 146, 42, 1, 101, 18, 44, /* 3136-3143 */ +107, 143, 28, 60, 145, 12, 249, 85, /* 3144-3151 */ +145, 209, 59, 27, 22, 240, 122, 30, /* 3152-3159 */ +158, 43, 40, 113, 234, 31, 164, 103, /* 3160-3167 */ +226, 114, 43, 252, 158, 245, 17, 143, /* 3168-3175 */ +112, 26, 83, 187, 19, 211, 82, 184, /* 3176-3183 */ +181, 55, 31, 66, 14, 82, 63, 144, /* 3184-3191 */ + 21, 49, 138, 246, 0, 128, 131, 226, /* 3192-3199 */ + 84, 29, 253, 216, 199, 16, 166, 86, /* 3200-3207 */ + 33, 108, 207, 5, 173, 85, 208, 138, /* 3208-3215 */ + 36, 13, 117, 14, 47, 109, 133, 17, /* 3216-3223 */ + 64, 159, 250, 228, 104, 165, 207, 60, /* 3224-3231 */ + 14, 28, 8, 126, 34, 181, 54, 42, /* 3232-3239 */ +128, 229, 3, 143, 108, 217, 101, 44, /* 3240-3247 */ + 12, 185, 250, 18, 143, 108, 14, 86, /* 3248-3255 */ +181, 254, 204, 91, 186, 173, 57, 13, /* 3256-3263 */ + 75, 23, 66, 65, 167, 33, 62, 154, /* 3264-3271 */ +236, 243, 124, 130, 199, 74, 32, 13, /* 3272-3279 */ +238, 199, 22, 166, 87, 31, 106, 192, /* 3280-3287 */ +249, 179, 90, 194, 144, 46, 251, 132, /* 3288-3295 */ + 2, 24, 107, 136, 26, 84, 175, 250, /* 3296-3303 */ +237, 109, 156, 185, 59, 11, 47, 31, /* 3304-3311 */ +128, 44, 184, 63, 37, 133, 220, 249, /* 3312-3319 */ +145, 100, 205, 108, 35, 255, 199, 213, /* 3320-3327 */ +253, 147, 105, 14, 102, 196, 255, 218, /* 3328-3335 */ +111, 192, 152, 50, 1, 94, 34, 53, /* 3336-3343 */ + 84, 179, 27, 54, 157, 228, 247, 123, /* 3344-3351 */ +135, 209, 85, 28, 20, 248, 152, 7, /* 3352-3359 */ +164, 64, 16, 120, 206, 10, 200, 115, /* 3360-3367 */ +209, 128, 38, 246, 160, 255, 13, 127, /* 3368-3375 */ +131, 13, 84, 173, 248, 238, 99, 159, /* 3376-3383 */ +178, 65, 21, 73, 17, 77, 41, 153, /* 3384-3391 */ + 20, 39, 144, 230, 20, 157, 124, 214, /* 3392-3399 */ + 95, 22, 3, 223, 180, 254, 165, 81, /* 3400-3407 */ + 19, 119, 197, 15, 211, 90, 206, 161, /* 3408-3415 */ + 50, 7, 129, 9, 21, 86, 130, 2, /* 3416-3423 */ + 65, 164, 247, 7, 125, 169, 214, 65, /* 3424-3431 */ +255, 37, 13, 104, 21, 172, 45, 38, /* 3432-3439 */ +137, 219, 34, 166, 92, 215, 107, 33, /* 3440-3447 */ + 10, 205, 230, 4, 125, 97, 8, 87, /* 3448-3455 */ +183, 20, 231, 89, 194, 167, 40, 246, /* 3456-3463 */ +102, 1, 24, 71, 141, 22, 76, 162, /* 3464-3471 */ + 11, 41, 103, 132, 206, 69, 25, 45, /* 3472-3479 */ + 10, 131, 14, 160, 46, 17, 119, 208, /* 3480-3487 */ + 46, 168, 90, 244, 127, 21, 250, 187, /* 3488-3495 */ +203, 239, 127, 108, 15, 105, 185, 39, /* 3496-3503 */ + 9, 81, 196, 184, 47, 255, 99, 25, /* 3504-3511 */ + 61, 57, 149, 34, 47, 134, 247, 42, /* 3512-3519 */ +118, 137, 231, 87, 11, 26, 241, 128, /* 3520-3527 */ +253, 124, 56, 34, 104, 214, 82, 200, /* 3528-3535 */ + 84, 233, 140, 29, 255, 182, 237, 9, /* 3536-3543 */ + 92, 103, 25, 57, 150, 48, 7, 59, /* 3544-3551 */ +182, 217, 74, 12, 115, 11, 48, 31, /* 3552-3559 */ +105, 24, 42, 116, 8, 77, 125, 120, /* 3560-3567 */ +248, 123, 17, 24, 255, 151, 254, 130, /* 3568-3575 */ + 78, 28, 78, 211, 78, 176, 67, 245, /* 3576-3583 */ +173, 46, 12, 184, 224, 251, 64, 88, /* 3584-3591 */ + 22, 45, 146, 62, 30, 78, 198, 240, /* 3592-3599 */ + 73, 242, 99, 17, 55, 19, 123, 51, /* 3600-3607 */ + 28, 91, 15, 81, 106, 114, 252, 124, /* 3608-3615 */ + 32, 63, 0, 142, 235, 85, 51, 2, /* 3616-3623 */ + 47, 192, 100, 206, 72, 254, 209, 50, /* 3624-3631 */ + 10, 197, 214, 229, 57, 112, 25, 24, /* 3632-3639 */ +134, 83, 27, 49, 183, 0, 106, 31, /* 3640-3647 */ +136, 11, 46, 252, 102, 29, 250, 75, /* 3648-3655 */ + 9, 97, 124, 124, 45, 167, 10, 48, /* 3656-3663 */ +251, 114, 212, 92, 80, 7, 50, 211, /* 3664-3671 */ +117, 200, 57, 2, 211, 47, 29, 209, /* 3672-3679 */ +209, 231, 40, 91, 255, 14, 140, 76, /* 3680-3687 */ + 44, 66, 207, 30, 85, 251, 145, 229, /* 3688-3695 */ +248, 252, 100, 32, 25, 104, 37, 104, /* 3696-3703 */ + 97, 118, 28, 143, 20, 95, 4, 85, /* 3704-3711 */ +221, 107, 60, 254, 48, 214, 118, 172, /* 3712-3719 */ + 59, 31, 238, 45, 45, 218, 141, 200, /* 3720-3727 */ + 59, 80, 25, 51, 152, 107, 14, 40, /* 3728-3735 */ +208, 15, 80, 9, 157, 223, 9, 26, /* 3736-3743 */ +114, 47, 33, 87, 40, 75, 71, 134, /* 3744-3751 */ + 44, 146, 7, 103, 227, 42, 233, 81, /* 3752-3759 */ + 40, 44, 67, 226, 122, 154, 78, 22, /* 3760-3767 */ +196, 19, 44, 216, 140, 226, 79, 93, /* 3768-3775 */ + 52, 46, 157, 111, 211, 31, 216, 3, /* 3776-3783 */ + 73, 39, 184, 176, 236, 32, 76, 40, /* 3784-3791 */ + 62, 107, 78, 53, 74, 163, 24, 124, /* 3792-3799 */ + 16, 122, 206, 26, 241, 107, 72, 69, /* 3800-3807 */ + 81, 26, 96, 90, 99, 10, 180, 31, /* 3808-3815 */ + 91, 210, 81, 220, 74, 65, 63, 68, /* 3816-3823 */ +185, 118, 186, 82, 248, 236, 63, 30, /* 3824-3831 */ +168, 134, 220, 43, 97, 71, 84, 131, /* 3832-3839 */ + 90, 245, 46, 182, 236, 91, 22, 134, /* 3840-3847 */ +178, 12, 19, 100, 59, 82, 82, 25, /* 3848-3855 */ + 70, 90, 142, 10, 147, 23, 92, 174, /* 3856-3863 */ + 44, 230, 97, 83, 97, 89, 228, 110, /* 3864-3871 */ +140, 85, 233, 181, 26, 70, 173, 105, /* 3872-3879 */ +233, 82, 104, 86, 88, 162, 115, 204, /* 3880-3887 */ + 64, 212, 237, 56, 45, 161, 119, 215, /* 3888-3895 */ + 37, 123, 82, 117, 137, 84, 25, 80, /* 3896-3903 */ +169, 235, 80, 7, 120, 149, 251, 12, /* 3904-3911 */ +147, 100, 113, 114, 24, 73, 103, 128, /* 3912-3919 */ +246, 110, 252, 93, 149, 4, 210, 122, /* 3920-3927 */ + 90, 93, 122, 230, 111, 182, 106, 246, /* 3928-3935 */ +162, 243, 43, 149, 55, 191, 102, 132, /* 3936-3943 */ +100, 124, 189, 94, 223, 83, 198, 192, /* 3944-3951 */ + 16, 43, 145, 90, 203, 58, 126, 71, /* 3952-3959 */ +123, 156, 58, 42, 110, 184, 237, 40, /* 3960-3967 */ + 25, 139, 105, 191, 5, 152, 96, 122, /* 3968-3975 */ +165, 31, 61, 136, 127, 234, 83, 4, /* 3976-3983 */ +136, 144, 233, 231, 122, 114, 96, 129, /* 3984-3991 */ +228, 50, 200, 132, 253, 135, 4, 107, /* 3992-3999 */ +135, 234, 188, 92, 124, 115, 133, 228, /* 4000-4007 */ + 51, 232, 136, 216, 156, 249, 61, 140, /* 4008-4015 */ + 21, 195, 75, 145, 141, 115, 189, 18, /* 4016-4023 */ +243, 162, 207, 191, 35, 77, 132, 33, /* 4024-4031 */ +188, 12, 104, 124, 103, 176, 28, 10, /* 4032-4039 */ +200, 212, 187, 42, 55, 125, 48, 206, /* 4040-4047 */ + 20, 93, 160, 128, 143, 9, 252, 208, /* 4048-4055 */ +201, 171, 75, 81, 136, 76, 227, 6, /* 4056-4063 */ + 57, 119, 122, 129, 251, 16, 238, 239, /* 4064-4071 */ +195, 71, 76, 104, 50, 207, 231, 52, /* 4072-4079 */ +141, 176, 136, 254, 36, 227, 222, 188, /* 4080-4087 */ + 66, 69, 109, 76, 240, 235, 41, 118, /* 4088-4095 */ +174, 122, 211, 21, 232, 228, 216, 99, /* 4096-4103 */ + 95, 123, 55, 228, 207, 3, 92, 189, /* 4104-4111 */ +144, 203, 45, 247, 223, 219, 80, 66, /* 4112-4119 */ +117, 61, 238, 234, 35, 103, 197, 161, /* 4120-4127 */ +176, 12, 237, 210, 224, 97, 77, 137, /* 4128-4135 */ + 73, 234, 229, 6, 71, 171, 152, 164, /* 4136-4143 */ + 15, 13, 225, 250, 112, 62, 118, 53, /* 4144-4151 */ +221, 238, 26, 83, 192, 185, 174, 246, /* 4152-4159 */ +255, 207, 224, 102, 36, 135, 93, 236, /* 4160-4167 */ + 8, 48, 67, 176, 172, 155, 231, 253, /* 4168-4175 */ +220, 228, 131, 49, 132, 104, 232, 245, /* 4176-4183 */ + 48, 45, 144, 180, 169, 243, 6, 232, /* 4184-4191 */ +221, 124, 31, 101, 112, 249, 251, 75, /* 4192-4199 */ + 68, 143, 186, 161, 218, 240, 224, 210, /* 4200-4207 */ +125, 57, 115, 126, 18, 241, 63, 61, /* 4208-4215 */ +101, 172, 168, 219, 251, 240, 223, 126, /* 4216-4223 */ + 60, 107, 109, 31, 233, 41, 86, 110, /* 4224-4231 */ +169, 184, 213, 233, 224, 212, 120, 65, /* 4232-4239 */ +125, 116, 49, 16, 45, 91, 107, 137, /* 4240-4247 */ +163, 199, 221, 219, 229, 145, 70, 131, /* 4248-4255 */ +105, 34, 25, 25, 80, 132, 147, 172, /* 4256-4263 */ +211, 222, 212, 218, 145, 62, 128, 104, /* 4264-4271 */ + 9, 31, 39, 79, 147, 149, 160, 209, /* 4272-4279 */ +209, 198, 200, 155, 82, 131, 124, 17, /* 4280-4287 */ + 49, 54, 44, 128, 153, 137, 195, 219, /* 4288-4295 */ +217, 206, 158, 92, 124, 113, 254, 29, /* 4296-4303 */ + 76, 60, 125, 185, 156, 181, 211, 205, /* 4304-4311 */ +181, 140, 92, 110, 109, 14, 41, 113, /* 4312-4319 */ + 78, 100, 186, 162, 159, 201, 206, 180, /* 4320-4327 */ +140, 112, 125, 121, 29, 18, 101, 89, /* 4328-4335 */ + 79, 172, 174, 158, 202, 206, 177, 132, /* 4336-4343 */ +109, 120, 116, 43, 21, 113, 121, 74, /* 4344-4351 */ +148, 194, 159, 182, 198, 172, 130, 100, /* 4352-4359 */ +119, 116, 48, 27, 108, 143, 87, 119, /* 4360-4367 */ +194, 162, 160, 204, 186, 135, 99, 136, /* 4368-4375 */ +129, 40, 18, 97, 141, 101, 100, 189, /* 4376-4383 */ +197, 154, 191, 195, 128, 83, 131, 126, /* 4384-4391 */ + 43, 30, 101, 152, 127, 94, 161, 206, /* 4392-4399 */ +147, 167, 193, 123, 80, 135, 138, 50, /* 4400-4407 */ + 37, 98, 138, 141, 93, 134, 220, 168, /* 4408-4415 */ +161, 200, 133, 89, 133, 120, 42, 33}; /* 4416-4423 */ + +//get and set the frequency from wav conversion tool GUI +int i=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_dixiehorn () +{ + + speaker = data[i]/255.0;//scale to 0.0 to 1.0 for PWM + i++; + if (i>= NUM_ELEMENTS) { + i = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/guitarjazz.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,1426 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 05:30:51 PM +* FileName: guitarjazz_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 11166 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 11166 + +const unsigned char data_j[NUM_ELEMENTS] = { +127, 127, 127, 127, 126, 127, 126, 127, /* 0-7 */ +127, 127, 126, 127, 127, 127, 127, 126, /* 8-15 */ +127, 127, 127, 127, 126, 126, 128, 127, /* 16-23 */ +126, 126, 126, 127, 126, 126, 126, 126, /* 24-31 */ +126, 126, 126, 127, 127, 127, 127, 128, /* 32-39 */ +126, 127, 128, 126, 127, 126, 127, 126, /* 40-47 */ +127, 127, 126, 127, 128, 127, 126, 127, /* 48-55 */ +128, 126, 128, 127, 127, 127, 128, 127, /* 56-63 */ +126, 128, 126, 127, 126, 128, 127, 126, /* 64-71 */ +127, 127, 127, 128, 127, 128, 128, 128, /* 72-79 */ +128, 128, 127, 128, 127, 128, 127, 127, /* 80-87 */ +128, 128, 128, 127, 128, 128, 128, 128, /* 88-95 */ +128, 128, 128, 128, 127, 128, 127, 128, /* 96-103 */ +128, 128, 128, 127, 128, 128, 128, 128, /* 104-111 */ +128, 128, 128, 126, 128, 127, 128, 126, /* 112-119 */ +126, 127, 127, 127, 127, 126, 126, 127, /* 120-127 */ +127, 126, 128, 128, 127, 128, 128, 127, /* 128-135 */ +127, 126, 126, 127, 126, 126, 126, 126, /* 136-143 */ +126, 126, 126, 126, 126, 126, 127, 126, /* 144-151 */ +126, 127, 126, 126, 127, 126, 126, 126, /* 152-159 */ +126, 126, 126, 126, 126, 127, 126, 127, /* 160-167 */ +126, 126, 127, 126, 127, 127, 127, 128, /* 168-175 */ +128, 128, 128, 126, 126, 126, 128, 127, /* 176-183 */ +128, 128, 127, 128, 127, 127, 127, 128, /* 184-191 */ +128, 127, 127, 128, 128, 128, 127, 128, /* 192-199 */ +127, 126, 127, 127, 128, 127, 127, 127, /* 200-207 */ +128, 128, 127, 128, 128, 128, 128, 128, /* 208-215 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 216-223 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 224-231 */ +128, 128, 128, 128, 127, 128, 128, 128, /* 232-239 */ +128, 128, 127, 128, 128, 128, 126, 128, /* 240-247 */ +132, 133, 130, 121, 109, 96, 85, 83, /* 248-255 */ + 91, 102, 115, 124, 128, 129, 130, 134, /* 256-263 */ +145, 158, 172, 182, 182, 175, 161, 146, /* 264-271 */ +133, 126, 122, 120, 119, 118, 117, 115, /* 272-279 */ +115, 114, 115, 117, 119, 122, 124, 126, /* 280-287 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 288-295 */ +128, 126, 128, 128, 130, 130, 131, 131, /* 296-303 */ +130, 130, 129, 129, 128, 128, 128, 126, /* 304-311 */ +126, 126, 124, 124, 124, 124, 126, 128, /* 312-319 */ +130, 132, 132, 126, 115, 102, 90, 83, /* 320-327 */ + 87, 96, 108, 119, 126, 128, 128, 131, /* 328-335 */ +138, 149, 164, 177, 182, 179, 167, 152, /* 336-343 */ +139, 129, 123, 120, 119, 118, 117, 116, /* 344-351 */ +115, 114, 115, 116, 118, 121, 123, 125, /* 352-359 */ +126, 126, 126, 126, 128, 128, 128, 128, /* 360-367 */ +128, 126, 126, 128, 129, 130, 130, 130, /* 368-375 */ +130, 130, 130, 128, 128, 128, 128, 127, /* 376-383 */ +126, 126, 124, 124, 124, 124, 124, 126, /* 384-391 */ +128, 131, 132, 128, 121, 109, 96, 86, /* 392-399 */ + 85, 91, 102, 114, 123, 128, 128, 130, /* 400-407 */ +134, 143, 156, 170, 180, 181, 173, 160, /* 408-415 */ +146, 133, 126, 122, 120, 119, 118, 117, /* 416-423 */ +115, 114, 113, 115, 117, 119, 122, 124, /* 424-431 */ +125, 126, 126, 126, 126, 128, 128, 128, /* 432-439 */ +128, 128, 126, 128, 128, 130, 130, 130, /* 440-447 */ +130, 130, 130, 128, 128, 128, 128, 128, /* 448-455 */ +126, 126, 126, 124, 124, 124, 124, 126, /* 456-463 */ +128, 130, 132, 131, 126, 115, 103, 91, /* 464-471 */ + 85, 87, 96, 108, 119, 126, 128, 128, /* 472-479 */ +130, 138, 149, 162, 175, 181, 177, 167, /* 480-487 */ +152, 139, 129, 123, 120, 120, 118, 118, /* 488-495 */ +116, 115, 115, 115, 116, 118, 121, 123, /* 496-503 */ +125, 126, 126, 126, 126, 127, 128, 128, /* 504-511 */ +128, 128, 126, 127, 128, 128, 130, 130, /* 512-519 */ +130, 130, 130, 130, 129, 128, 128, 128, /* 520-527 */ +126, 126, 126, 124, 124, 124, 124, 125, /* 528-535 */ +126, 130, 131, 132, 130, 121, 110, 98, /* 536-543 */ + 87, 85, 91, 102, 113, 123, 127, 128, /* 544-551 */ +130, 133, 143, 155, 169, 178, 180, 172, /* 552-559 */ +159, 146, 133, 126, 122, 120, 119, 119, /* 560-567 */ +117, 116, 115, 115, 115, 117, 120, 122, /* 568-575 */ +124, 126, 126, 126, 126, 126, 128, 128, /* 576-583 */ +128, 128, 126, 126, 126, 128, 128, 130, /* 584-591 */ +130, 130, 130, 130, 129, 128, 128, 128, /* 592-599 */ +128, 126, 126, 125, 124, 124, 125, 125, /* 600-607 */ +126, 128, 130, 132, 131, 126, 116, 104, /* 608-615 */ + 92, 86, 88, 96, 108, 119, 126, 128, /* 616-623 */ +129, 131, 138, 149, 162, 173, 179, 176, /* 624-631 */ +166, 152, 139, 129, 124, 121, 120, 119, /* 632-639 */ +118, 117, 115, 115, 115, 117, 119, 121, /* 640-647 */ +123, 125, 126, 126, 126, 126, 127, 128, /* 648-655 */ +128, 128, 128, 126, 126, 126, 128, 128, /* 656-663 */ +130, 136, 134, 121, 98, 81, 85, 103, /* 664-671 */ +121, 127, 127, 134, 153, 176, 186, 174, /* 672-679 */ +150, 133, 125, 125, 124, 119, 109, 97, /* 680-687 */ + 87, 81, 83, 90, 100, 113, 123, 129, /* 688-695 */ +130, 130, 134, 143, 158, 171, 181, 181, /* 696-703 */ +174, 162, 147, 135, 126, 120, 118, 117, /* 704-711 */ +119, 122, 122, 114, 94, 75, 70, 85, /* 712-719 */ +107, 122, 125, 128, 143, 166, 185, 184, /* 720-727 */ +165, 143, 128, 121, 119, 117, 115, 114, /* 728-735 */ +116, 120, 124, 128, 128, 128, 128, 130, /* 736-743 */ +130, 129, 128, 128, 130, 130, 130, 129, /* 744-751 */ +128, 128, 130, 131, 132, 129, 123, 114, /* 752-759 */ +102, 96, 92, 92, 86, 75, 71, 83, /* 760-767 */ +103, 121, 130, 136, 154, 187, 222, 237, /* 768-775 */ +223, 190, 158, 136, 124, 116, 111, 108, /* 776-783 */ +107, 108, 111, 113, 114, 114, 116, 120, /* 784-791 */ +122, 124, 125, 125, 127, 130, 130, 130, /* 792-799 */ +130, 130, 129, 128, 126, 124, 124, 125, /* 800-807 */ +126, 129, 135, 136, 128, 108, 87, 81, /* 808-815 */ + 93, 113, 125, 127, 130, 142, 165, 183, /* 816-823 */ +181, 161, 141, 129, 126, 125, 120, 111, /* 824-831 */ + 99, 87, 81, 81, 89, 100, 111, 122, /* 832-839 */ +128, 130, 130, 132, 141, 155, 169, 179, /* 840-847 */ +181, 174, 162, 149, 136, 126, 121, 118, /* 848-855 */ +117, 117, 121, 123, 119, 105, 84, 71, /* 856-863 */ + 77, 98, 117, 124, 125, 134, 154, 176, /* 864-871 */ +185, 174, 151, 131, 122, 118, 118, 116, /* 872-879 */ +116, 116, 118, 123, 127, 129, 129, 129, /* 880-887 */ +129, 131, 130, 128, 128, 128, 129, 129, /* 888-895 */ +128, 128, 128, 129, 131, 131, 130, 124, /* 896-903 */ +116, 104, 95, 92, 94, 94, 87, 77, /* 904-911 */ + 79, 94, 113, 127, 134, 147, 174, 208, /* 912-919 */ +232, 228, 201, 167, 140, 125, 117, 112, /* 920-927 */ +109, 107, 107, 109, 113, 115, 116, 117, /* 928-935 */ +120, 123, 125, 125, 125, 126, 128, 130, /* 936-943 */ +129, 129, 128, 127, 126, 125, 124, 124, /* 944-951 */ +125, 127, 127, 133, 135, 133, 119, 98, /* 952-959 */ + 84, 88, 105, 121, 127, 127, 134, 152, /* 960-967 */ +174, 181, 170, 150, 134, 127, 125, 122, /* 968-975 */ +114, 101, 90, 82, 82, 88, 100, 111, /* 976-983 */ +122, 128, 130, 130, 132, 139, 151, 166, /* 984-991 */ +177, 179, 173, 162, 149, 137, 128, 122, /* 992-999 */ +118, 122, 120, 102, 83, 85, 98, 94, /* 1000-1007 */ + 78, 86, 127, 160, 156, 135, 127, 138, /* 1008-1015 */ +158, 171, 169, 153, 137, 124, 119, 119, /* 1016-1023 */ +119, 117, 116, 119, 124, 128, 130, 131, /* 1024-1031 */ +131, 131, 129, 129, 128, 132, 135, 124, /* 1032-1039 */ + 99, 88, 104, 121, 127, 133, 157, 179, /* 1040-1047 */ +168, 134, 106, 90, 86, 87, 89, 88, /* 1048-1055 */ + 82, 78, 86, 105, 123, 134, 144, 165, /* 1056-1063 */ +197, 225, 232, 213, 179, 148, 127, 116, /* 1064-1071 */ +112, 112, 114, 109, 88, 70, 79, 103, /* 1072-1079 */ +114, 118, 136, 166, 176, 156, 133, 125, /* 1080-1087 */ +124, 123, 119, 119, 121, 124, 124, 124, /* 1088-1095 */ +124, 126, 124, 126, 132, 138, 138, 129, /* 1096-1103 */ +111, 91, 83, 94, 110, 123, 131, 135, /* 1104-1111 */ +134, 130, 140, 157, 156, 140, 136, 156, /* 1112-1119 */ +172, 156, 119, 91, 77, 74, 77, 89, /* 1120-1127 */ +103, 117, 126, 128, 131, 133, 139, 150, /* 1128-1135 */ +165, 178, 180, 174, 162, 149, 137, 127, /* 1136-1143 */ +121, 117, 120, 124, 118, 97, 83, 89, /* 1144-1151 */ + 97, 86, 78, 101, 146, 167, 152, 133, /* 1152-1159 */ +132, 148, 165, 170, 160, 143, 128, 119, /* 1160-1167 */ +117, 117, 118, 116, 117, 122, 126, 129, /* 1168-1175 */ +130, 130, 130, 128, 128, 126, 128, 133, /* 1176-1183 */ +133, 117, 93, 91, 111, 126, 129, 140, /* 1184-1191 */ +164, 175, 153, 119, 95, 87, 89, 93, /* 1192-1199 */ + 93, 88, 82, 83, 95, 116, 133, 143, /* 1200-1207 */ +158, 184, 213, 228, 217, 188, 156, 132, /* 1208-1215 */ +119, 113, 111, 114, 115, 104, 81, 71, /* 1216-1223 */ + 88, 109, 116, 123, 146, 172, 171, 148, /* 1224-1231 */ +130, 125, 124, 120, 118, 119, 122, 124, /* 1232-1239 */ +123, 123, 124, 125, 126, 129, 135, 139, /* 1240-1247 */ +135, 122, 102, 87, 89, 103, 117, 126, /* 1248-1255 */ +132, 137, 136, 135, 145, 155, 149, 135, /* 1256-1263 */ +140, 161, 165, 138, 103, 82, 75, 79, /* 1264-1271 */ + 88, 100, 113, 123, 127, 129, 133, 139, /* 1272-1279 */ +148, 162, 175, 180, 175, 164, 151, 140, /* 1280-1287 */ +129, 122, 118, 117, 121, 123, 113, 92, /* 1288-1295 */ + 84, 92, 94, 82, 84, 120, 159, 164, /* 1296-1303 */ +143, 130, 138, 156, 168, 163, 148, 131, /* 1304-1311 */ +121, 116, 116, 117, 118, 118, 120, 126, /* 1312-1319 */ +129, 132, 132, 132, 131, 130, 128, 126, /* 1320-1327 */ +128, 133, 130, 110, 91, 98, 118, 128, /* 1328-1335 */ +132, 145, 166, 163, 134, 104, 89, 91, /* 1336-1343 */ + 97, 100, 97, 89, 83, 89, 106, 125, /* 1344-1351 */ +140, 152, 172, 198, 218, 217, 196, 165, /* 1352-1359 */ +139, 123, 116, 112, 113, 115, 115, 100, /* 1360-1367 */ + 79, 77, 97, 114, 119, 130, 156, 174, /* 1368-1375 */ +164, 141, 128, 125, 122, 119, 116, 116, /* 1376-1383 */ +120, 121, 120, 122, 123, 125, 126, 132, /* 1384-1391 */ +139, 140, 132, 115, 96, 90, 99, 112, /* 1392-1399 */ +122, 127, 136, 142, 139, 138, 146, 149, /* 1400-1407 */ +139, 131, 142, 158, 151, 119, 91, 80, /* 1408-1415 */ + 83, 90, 101, 111, 121, 125, 127, 130, /* 1416-1423 */ +137, 147, 158, 170, 176, 174, 164, 152, /* 1424-1431 */ +141, 133, 125, 121, 118, 119, 124, 124, /* 1432-1439 */ +109, 89, 85, 91, 87, 78, 95, 137, /* 1440-1447 */ +165, 158, 139, 135, 149, 164, 167, 154, /* 1448-1455 */ +136, 123, 122, 105, 74, 81, 109, 117, /* 1456-1463 */ +136, 176, 183, 150, 132, 127, 121, 117, /* 1464-1471 */ +120, 123, 127, 133, 125, 100, 91, 106, /* 1472-1479 */ +124, 130, 134, 149, 162, 150, 124, 104, /* 1480-1487 */ + 77, 56, 75, 99, 93, 104, 137, 140, /* 1488-1495 */ +127, 133, 145, 155, 176, 203, 215, 203, /* 1496-1503 */ +177, 148, 127, 119, 118, 115, 115, 118, /* 1504-1511 */ +112, 91, 74, 87, 107, 92, 76, 113, /* 1512-1519 */ +159, 171, 184, 191, 163, 129, 117, 110, /* 1520-1527 */ +105, 108, 116, 119, 121, 126, 128, 129, /* 1528-1535 */ +134, 141, 144, 139, 124, 102, 87, 90, /* 1536-1543 */ +110, 117, 92, 87, 124, 141, 141, 171, /* 1544-1551 */ +195, 169, 132, 123, 135, 143, 129, 105, /* 1552-1559 */ + 86, 85, 94, 102, 112, 122, 127, 128, /* 1560-1567 */ +130, 136, 145, 154, 167, 179, 167, 126, /* 1568-1575 */ +113, 129, 131, 135, 165, 170, 138, 119, /* 1576-1583 */ +120, 112, 91, 77, 81, 86, 81, 83, /* 1584-1591 */ +109, 151, 170, 157, 141, 143, 156, 163, /* 1592-1599 */ +158, 146, 135, 108, 73, 83, 111, 118, /* 1600-1607 */ +134, 171, 174, 146, 131, 127, 123, 119, /* 1608-1615 */ +121, 123, 122, 125, 131, 132, 119, 97, /* 1616-1623 */ + 92, 110, 125, 129, 133, 150, 162, 146, /* 1624-1631 */ + 94, 55, 74, 102, 108, 125, 142, 122, /* 1632-1639 */ + 97, 102, 121, 136, 149, 170, 193, 208, /* 1640-1647 */ +209, 189, 160, 139, 126, 117, 113, 111, /* 1648-1655 */ +111, 112, 105, 92, 80, 64, 67, 98, /* 1656-1663 */ +121, 146, 199, 224, 184, 139, 121, 113, /* 1664-1671 */ +105, 104, 110, 117, 121, 124, 124, 126, /* 1672-1679 */ +131, 135, 138, 144, 142, 131, 113, 96, /* 1680-1687 */ + 95, 94, 75, 76, 106, 126, 146, 181, /* 1688-1695 */ +189, 163, 144, 133, 119, 117, 136, 145, /* 1696-1703 */ +125, 101, 91, 93, 103, 114, 120, 123, /* 1704-1711 */ +127, 128, 131, 139, 154, 170, 162, 132, /* 1712-1719 */ +128, 143, 140, 146, 175, 174, 141, 117, /* 1720-1727 */ +110, 111, 113, 110, 93, 79, 82, 86, /* 1728-1735 */ + 82, 94, 132, 167, 170, 151, 138, 143, /* 1736-1743 */ +156, 164, 159, 121, 82, 86, 106, 113, /* 1744-1751 */ +136, 169, 164, 139, 129, 129, 127, 125, /* 1752-1759 */ +128, 128, 127, 124, 122, 124, 131, 130, /* 1760-1767 */ +109, 89, 94, 114, 124, 127, 141, 156, /* 1768-1775 */ +129, 87, 83, 96, 106, 138, 163, 137, /* 1776-1783 */ + 98, 84, 92, 109, 131, 151, 165, 181, /* 1784-1791 */ +198, 206, 196, 175, 151, 131, 119, 114, /* 1792-1799 */ +109, 107, 111, 119, 105, 56, 39, 78, /* 1800-1807 */ +110, 124, 164, 204, 201, 171, 141, 121, /* 1808-1815 */ +110, 109, 111, 113, 116, 122, 123, 124, /* 1816-1823 */ +127, 130, 131, 132, 137, 140, 136, 126, /* 1824-1831 */ +116, 92, 60, 65, 98, 113, 129, 174, /* 1832-1839 */ +195, 167, 139, 132, 130, 120, 114, 125, /* 1840-1847 */ +139, 138, 118, 98, 96, 106, 116, 122, /* 1848-1855 */ +123, 125, 127, 130, 140, 156, 150, 126, /* 1856-1863 */ +132, 151, 148, 155, 180, 177, 145, 127, /* 1864-1871 */ +112, 75, 78, 111, 122, 141, 134, 95, /* 1872-1879 */ + 83, 83, 81, 102, 142, 167, 161, 142, /* 1880-1887 */ +136, 155, 169, 145, 106, 101, 111, 114, /* 1888-1895 */ +136, 143, 128, 127, 121, 141, 167, 145, /* 1896-1903 */ +127, 124, 121, 122, 123, 121, 123, 127, /* 1904-1911 */ +132, 127, 106, 91, 101, 117, 128, 128, /* 1912-1919 */ +115, 92, 83, 100, 104, 146, 208, 182, /* 1920-1927 */ +121, 91, 76, 77, 100, 128, 150, 164, /* 1928-1935 */ +173, 187, 200, 202, 187, 161, 138, 123, /* 1936-1943 */ +117, 102, 74, 92, 110, 88, 97, 103, /* 1944-1951 */ + 87, 104, 146, 165, 161, 164, 166, 150, /* 1952-1959 */ +127, 116, 118, 116, 116, 116, 118, 123, /* 1960-1967 */ +130, 126, 100, 99, 124, 130, 160, 180, /* 1968-1975 */ +153, 110, 63, 50, 77, 99, 122, 160, /* 1976-1983 */ +175, 164, 154, 140, 129, 127, 126, 118, /* 1984-1991 */ +115, 129, 121, 99, 106, 105, 124, 156, /* 1992-1999 */ +142, 118, 115, 116, 128, 144, 136, 120, /* 2000-2007 */ +134, 152, 157, 171, 193, 183, 149, 128, /* 2008-2015 */ +118, 113, 93, 72, 94, 118, 131, 146, /* 2016-2023 */ +120, 89, 87, 82, 85, 113, 149, 163, /* 2024-2031 */ +154, 147, 150, 139, 123, 130, 131, 122, /* 2032-2039 */ +141, 169, 152, 103, 97, 112, 116, 150, /* 2040-2047 */ +164, 139, 127, 125, 121, 121, 124, 123, /* 2048-2055 */ +124, 129, 132, 121, 99, 95, 113, 120, /* 2056-2063 */ + 93, 82, 109, 108, 103, 140, 161, 171, /* 2064-2071 */ +172, 133, 98, 82, 78, 95, 122, 146, /* 2072-2079 */ +161, 167, 175, 190, 198, 191, 171, 147, /* 2080-2087 */ +127, 117, 115, 101, 76, 70, 80, 111, /* 2088-2095 */ +130, 113, 126, 149, 134, 119, 132, 152, /* 2096-2103 */ +155, 145, 131, 124, 122, 120, 117, 118, /* 2104-2111 */ +122, 126, 129, 116, 92, 103, 122, 139, /* 2112-2119 */ +181, 164, 100, 78, 81, 82, 107, 150, /* 2120-2127 */ +162, 146, 138, 144, 144, 132, 128, 129, /* 2128-2135 */ +122, 111, 115, 124, 112, 109, 117, 116, /* 2136-2143 */ +142, 154, 126, 112, 118, 127, 119, 110, /* 2144-2151 */ +128, 153, 158, 176, 202, 191, 156, 133, /* 2152-2159 */ +122, 115, 114, 111, 89, 81, 109, 125, /* 2160-2167 */ +140, 145, 110, 86, 83, 77, 88, 122, /* 2168-2175 */ +155, 170, 158, 124, 113, 135, 149, 146, /* 2176-2183 */ +157, 169, 154, 132, 104, 83, 98, 112, /* 2184-2191 */ +132, 166, 159, 134, 127, 125, 125, 127, /* 2192-2199 */ +125, 124, 126, 129, 129, 118, 106, 100, /* 2200-2207 */ + 83, 75, 89, 106, 122, 137, 156, 150, /* 2208-2215 */ +135, 156, 153, 115, 94, 86, 91, 112, /* 2216-2223 */ +137, 155, 166, 171, 179, 189, 190, 178, /* 2224-2231 */ +156, 135, 125, 126, 109, 56, 50, 92, /* 2232-2239 */ +111, 138, 163, 142, 117, 109, 105, 113, /* 2240-2247 */ +136, 159, 163, 148, 132, 125, 121, 119, /* 2248-2255 */ +119, 119, 122, 123, 119, 100, 91, 116, /* 2256-2263 */ +136, 145, 147, 127, 111, 99, 104, 132, /* 2264-2271 */ +145, 135, 123, 122, 132, 145, 145, 135, /* 2272-2279 */ +130, 124, 112, 105, 116, 122, 114, 122, /* 2280-2287 */ +124, 126, 150, 142, 121, 119, 104, 91, /* 2288-2295 */ +114, 141, 158, 183, 204, 193, 167, 145, /* 2296-2303 */ +130, 123, 117, 117, 118, 108, 83, 89, /* 2304-2311 */ +116, 133, 149, 136, 97, 84, 78, 77, /* 2312-2319 */ + 97, 140, 165, 143, 116, 93, 126, 158, /* 2320-2327 */ +205, 218, 157, 128, 108, 106, 89, 90, /* 2328-2335 */ +112, 125, 150, 168, 148, 129, 140, 108, /* 2336-2343 */ +101, 121, 141, 158, 128, 125, 126, 106, /* 2344-2351 */ + 71, 64, 87, 98, 114, 149, 167, 139, /* 2352-2359 */ +141, 111, 103, 147, 149, 143, 101, 82, /* 2360-2367 */ + 94, 119, 151, 165, 173, 171, 181, 182, /* 2368-2375 */ +182, 161, 154, 133, 85, 74, 74, 100, /* 2376-2383 */ +103, 117, 155, 172, 145, 99, 97, 100, /* 2384-2391 */ +108, 122, 151, 161, 162, 142, 99, 108, /* 2392-2399 */ +124, 150, 143, 112, 111, 109, 111, 99, /* 2400-2407 */ +109, 112, 104, 135, 161, 137, 129, 145, /* 2408-2415 */ +106, 97, 112, 138, 148, 124, 137, 144, /* 2416-2423 */ +142, 131, 125, 117, 110, 112, 121, 120, /* 2424-2431 */ +111, 131, 104, 109, 152, 159, 135, 86, /* 2432-2439 */ + 93, 115, 139, 178, 208, 199, 169, 152, /* 2440-2447 */ +138, 132, 121, 130, 108, 89, 105, 109, /* 2448-2455 */ +117, 112, 120, 133, 143, 122, 89, 81, /* 2456-2463 */ + 79, 99, 119, 129, 125, 143, 135, 120, /* 2464-2471 */ +171, 207, 215, 165, 117, 104, 96, 97, /* 2472-2479 */ + 86, 100, 117, 134, 157, 168, 143, 137, /* 2480-2487 */ +133, 98, 104, 121, 147, 148, 133, 125, /* 2488-2495 */ + 88, 71, 75, 90, 106, 137, 152, 149, /* 2496-2503 */ +127, 117, 129, 102, 121, 153, 153, 134, /* 2504-2511 */ + 96, 94, 109, 139, 159, 166, 164, 165, /* 2512-2519 */ +174, 177, 177, 165, 142, 77, 60, 85, /* 2520-2527 */ + 98, 122, 143, 155, 146, 137, 110, 89, /* 2528-2535 */ + 96, 106, 117, 135, 159, 161, 162, 132, /* 2536-2543 */ +105, 115, 131, 150, 127, 110, 108, 113, /* 2544-2551 */ +113, 83, 76, 99, 131, 163, 184, 171, /* 2552-2559 */ +154, 111, 69, 84, 110, 143, 140, 135, /* 2560-2567 */ +148, 147, 141, 127, 121, 111, 106, 109, /* 2568-2575 */ +120, 113, 121, 131, 110, 133, 133, 119, /* 2576-2583 */ +119, 114, 126, 156, 191, 193, 175, 154, /* 2584-2591 */ +144, 135, 132, 129, 127, 128, 97, 93, /* 2592-2599 */ +105, 113, 119, 118, 128, 135, 140, 110, /* 2600-2607 */ + 84, 85, 84, 75, 92, 135, 151, 164, /* 2608-2615 */ +164, 174, 184, 182, 174, 132, 109, 101, /* 2616-2623 */ +103, 99, 92, 109, 124, 141, 164, 163, /* 2624-2631 */ +137, 136, 114, 93, 108, 130, 162, 142, /* 2632-2639 */ +108, 97, 95, 89, 95, 127, 139, 129, /* 2640-2647 */ +119, 124, 111, 123, 126, 111, 139, 154, /* 2648-2655 */ +149, 122, 99, 106, 124, 149, 158, 160, /* 2656-2663 */ +159, 165, 174, 185, 159, 121, 102, 77, /* 2664-2671 */ + 83, 111, 147, 153, 139, 129, 127, 123, /* 2672-2679 */ + 96, 90, 101, 109, 117, 140, 158, 164, /* 2680-2687 */ +160, 125, 113, 117, 135, 143, 120, 118, /* 2688-2695 */ +117, 100, 69, 68, 100, 127, 168, 211, /* 2696-2703 */ +194, 140, 113, 76, 66, 91, 127, 153, /* 2704-2711 */ +141, 145, 151, 147, 135, 121, 113, 103, /* 2712-2719 */ + 99, 109, 122, 116, 140, 133, 93, 101, /* 2720-2727 */ +126, 141, 135, 152, 175, 176, 165, 156, /* 2728-2735 */ +150, 141, 137, 133, 133, 124, 129, 121, /* 2736-2743 */ + 96, 103, 114, 122, 116, 119, 131, 140, /* 2744-2751 */ +134, 106, 83, 55, 50, 81, 125, 157, /* 2752-2759 */ +192, 201, 164, 152, 157, 168, 153, 121, /* 2760-2767 */ +110, 102, 104, 98, 99, 119, 134, 150, /* 2768-2775 */ +167, 150, 129, 131, 103, 99, 123, 138, /* 2776-2783 */ +127, 108, 115, 113, 113, 124, 130, 120, /* 2784-2791 */ +106, 102, 112, 117, 115, 135, 124, 120, /* 2792-2799 */ +148, 158, 148, 121, 110, 115, 128, 145, /* 2800-2807 */ +153, 153, 159, 172, 164, 141, 125, 127, /* 2808-2815 */ +109, 103, 135, 149, 142, 124, 121, 120, /* 2816-2823 */ +123, 115, 93, 93, 101, 110, 123, 149, /* 2824-2831 */ +161, 168, 152, 114, 108, 119, 139, 141, /* 2832-2839 */ +129, 103, 78, 82, 81, 95, 139, 177, /* 2840-2847 */ +195, 190, 147, 113, 93, 66, 76, 105, /* 2848-2855 */ +138, 153, 146, 154, 157, 149, 132, 116, /* 2856-2863 */ +101, 97, 99, 115, 130, 130, 121, 87, /* 2864-2871 */ + 93, 126, 153, 178, 183, 171, 150, 142, /* 2872-2879 */ +141, 140, 137, 134, 129, 128, 127, 125, /* 2880-2887 */ +132, 118, 105, 112, 118, 122, 120, 128, /* 2888-2895 */ +136, 149, 125, 66, 44, 54, 74, 114, /* 2896-2903 */ +174, 202, 198, 167, 138, 141, 150, 164, /* 2904-2911 */ +145, 117, 103, 98, 101, 98, 109, 129, /* 2912-2919 */ +140, 153, 161, 140, 130, 125, 110, 101, /* 2920-2927 */ + 93, 116, 129, 125, 138, 151, 142, 115, /* 2928-2935 */ + 98, 95, 94, 100, 120, 124, 126, 137, /* 2936-2943 */ +123, 130, 155, 162, 148, 124, 113, 116, /* 2944-2951 */ +129, 138, 147, 156, 145, 130, 139, 145, /* 2952-2959 */ +141, 152, 149, 137, 126, 121, 118, 111, /* 2960-2967 */ +116, 123, 127, 110, 94, 98, 108, 117, /* 2968-2975 */ +137, 160, 166, 163, 136, 110, 109, 131, /* 2976-2983 */ +151, 120, 89, 86, 90, 97, 114, 147, /* 2984-2991 */ +163, 159, 165, 160, 123, 103, 86, 72, /* 2992-2999 */ + 88, 115, 146, 150, 150, 159, 158, 141, /* 3000-3007 */ +116, 106, 99, 98, 115, 131, 110, 101, /* 3008-3015 */ +113, 103, 123, 173, 205, 192, 159, 141, /* 3016-3023 */ +130, 126, 128, 134, 133, 129, 127, 132, /* 3024-3031 */ +130, 134, 137, 117, 106, 107, 118, 117, /* 3032-3039 */ +120, 140, 140, 116, 79, 60, 61, 83, /* 3040-3047 */ +128, 170, 183, 173, 167, 142, 128, 140, /* 3048-3055 */ +159, 162, 136, 115, 104, 104, 103, 104, /* 3056-3063 */ +117, 128, 135, 153, 152, 136, 142, 113, /* 3064-3071 */ + 72, 75, 107, 137, 153, 172, 173, 142, /* 3072-3079 */ +105, 84, 82, 87, 97, 113, 128, 123, /* 3080-3087 */ +133, 137, 125, 142, 166, 167, 141, 118, /* 3088-3095 */ +113, 115, 131, 144, 132, 115, 125, 144, /* 3096-3103 */ +158, 170, 187, 175, 129, 104, 103, 109, /* 3104-3111 */ +107, 115, 123, 125, 123, 104, 96, 103, /* 3112-3119 */ +114, 128, 147, 156, 160, 153, 123, 115, /* 3120-3127 */ +122, 121, 115, 106, 103, 103, 125, 142, /* 3128-3135 */ +136, 130, 134, 144, 156, 142, 116, 104, /* 3136-3143 */ + 83, 77, 96, 127, 152, 155, 161, 160, /* 3144-3151 */ +146, 125, 104, 96, 103, 103, 97, 99, /* 3152-3159 */ +105, 124, 132, 147, 182, 196, 186, 161, /* 3160-3167 */ +142, 125, 117, 124, 127, 128, 125, 126, /* 3168-3175 */ +132, 136, 136, 144, 134, 107, 103, 106, /* 3176-3183 */ +117, 126, 126, 112, 109, 108, 83, 79, /* 3184-3191 */ +105, 127, 136, 147, 154, 159, 155, 138, /* 3192-3199 */ +141, 151, 163, 156, 134, 117, 106, 109, /* 3200-3207 */ +107, 102, 113, 127, 140, 162, 160, 133, /* 3208-3215 */ +104, 79, 76, 95, 141, 183, 184, 162, /* 3216-3223 */ +131, 104, 80, 73, 82, 94, 104, 118, /* 3224-3231 */ +127, 128, 142, 142, 143, 161, 168, 158, /* 3232-3239 */ +131, 115, 116, 123, 115, 101, 109, 125, /* 3240-3247 */ +148, 183, 205, 194, 170, 132, 97, 89, /* 3248-3255 */ + 99, 112, 114, 121, 124, 127, 124, 105, /* 3256-3263 */ +103, 112, 118, 123, 139, 149, 156, 153, /* 3264-3271 */ +126, 97, 92, 116, 126, 127, 141, 151, /* 3272-3279 */ +144, 116, 104, 113, 128, 146, 158, 134, /* 3280-3287 */ +108, 92, 77, 83, 106, 144, 164, 162, /* 3288-3295 */ +161, 154, 137, 115, 108, 97, 74, 72, /* 3296-3303 */ + 95, 113, 131, 169, 176, 163, 165, 173, /* 3304-3311 */ +168, 150, 138, 124, 118, 118, 120, 124, /* 3312-3319 */ +126, 131, 140, 142, 137, 139, 123, 103, /* 3320-3327 */ +105, 121, 117, 95, 101, 115, 125, 124, /* 3328-3335 */ +116, 113, 103, 101, 113, 134, 148, 161, /* 3336-3343 */ +156, 142, 143, 152, 164, 154, 135, 121, /* 3344-3351 */ +111, 106, 98, 101, 114, 133, 156, 151, /* 3352-3359 */ +117, 106, 104, 94, 111, 148, 180, 171, /* 3360-3367 */ +149, 131, 108, 90, 77, 80, 87, 95, /* 3368-3375 */ +108, 127, 135, 142, 154, 147, 145, 158, /* 3376-3383 */ +161, 146, 132, 122, 97, 86, 96, 110, /* 3384-3391 */ +131, 166, 201, 208, 185, 158, 138, 109, /* 3392-3399 */ + 90, 94, 107, 113, 114, 126, 131, 133, /* 3400-3407 */ +124, 110, 107, 106, 110, 123, 142, 159, /* 3408-3415 */ +160, 121, 87, 89, 110, 141, 163, 172, /* 3416-3423 */ +154, 130, 111, 95, 96, 113, 132, 152, /* 3424-3431 */ +151, 123, 104, 92, 85, 99, 125, 151, /* 3432-3439 */ +156, 160, 158, 149, 135, 106, 74, 65, /* 3440-3447 */ + 72, 92, 128, 160, 178, 174, 149, 142, /* 3448-3455 */ +155, 166, 161, 147, 133, 118, 112, 116, /* 3456-3463 */ +122, 126, 131, 137, 139, 136, 138, 134, /* 3464-3471 */ +119, 114, 104, 92, 88, 101, 122, 146, /* 3472-3479 */ +164, 146, 107, 82, 77, 87, 113, 140, /* 3480-3487 */ +158, 165, 153, 146, 152, 164, 166, 153, /* 3488-3495 */ +134, 112, 103, 99, 94, 109, 127, 125, /* 3496-3503 */ +125, 128, 121, 122, 129, 139, 144, 147, /* 3504-3511 */ +151, 140, 130, 117, 102, 87, 78, 83, /* 3512-3519 */ + 94, 105, 120, 140, 145, 149, 148, 141, /* 3520-3527 */ +148, 160, 164, 144, 108, 85, 84, 94, /* 3528-3535 */ +113, 147, 181, 192, 188, 176, 157, 141, /* 3536-3543 */ +124, 100, 90, 98, 111, 115, 123, 133, /* 3544-3551 */ +138, 140, 121, 103, 103, 104, 112, 136, /* 3552-3559 */ +146, 136, 122, 103, 95, 114, 158, 185, /* 3560-3567 */ +174, 148, 122, 109, 98, 91, 104, 123, /* 3568-3575 */ +138, 149, 140, 117, 104, 94, 94, 106, /* 3576-3583 */ +130, 152, 156, 161, 163, 140, 97, 72, /* 3584-3591 */ + 70, 77, 100, 141, 171, 168, 160, 146, /* 3592-3599 */ +130, 141, 162, 169, 159, 143, 126, 115, /* 3600-3607 */ +115, 118, 126, 129, 129, 131, 136, 132, /* 3608-3615 */ +142, 139, 106, 82, 86, 97, 104, 135, /* 3616-3623 */ +170, 177, 154, 109, 74, 64, 73, 94, /* 3624-3631 */ +122, 146, 163, 165, 154, 151, 157, 168, /* 3632-3639 */ +163, 144, 124, 106, 102, 106, 106, 100, /* 3640-3647 */ + 99, 112, 131, 139, 152, 167, 152, 128, /* 3648-3655 */ +119, 128, 132, 128, 123, 111, 97, 81, /* 3656-3663 */ + 78, 89, 103, 118, 137, 148, 146, 151, /* 3664-3671 */ +147, 144, 162, 168, 137, 102, 89, 85, /* 3672-3679 */ + 97, 131, 161, 171, 170, 168, 164, 156, /* 3680-3687 */ +146, 138, 119, 96, 91, 105, 116, 120, /* 3688-3695 */ +132, 140, 140, 132, 113, 99, 102, 113, /* 3696-3703 */ +115, 111, 119, 130, 124, 119, 137, 163, /* 3704-3711 */ +175, 164, 146, 125, 109, 104, 97, 96, /* 3712-3719 */ +109, 126, 140, 150, 136, 120, 110, 95, /* 3720-3727 */ + 93, 110, 134, 154, 163, 153, 127, 106, /* 3728-3735 */ + 86, 78, 96, 125, 145, 155, 152, 145, /* 3736-3743 */ +142, 133, 132, 152, 172, 168, 152, 136, /* 3744-3751 */ +120, 112, 116, 121, 123, 126, 128, 130, /* 3752-3759 */ +140, 145, 133, 103, 85, 89, 104, 127, /* 3760-3767 */ +152, 168, 162, 146, 118, 82, 62, 65, /* 3768-3775 */ + 80, 104, 129, 150, 167, 167, 158, 160, /* 3776-3783 */ +167, 165, 154, 134, 115, 111, 108, 87, /* 3784-3791 */ + 72, 87, 105, 130, 166, 187, 181, 154, /* 3792-3799 */ +120, 103, 107, 122, 128, 126, 118, 105, /* 3800-3807 */ + 91, 83, 88, 103, 117, 129, 142, 146, /* 3808-3815 */ +143, 148, 150, 147, 142, 136, 122, 104, /* 3816-3823 */ +103, 124, 145, 150, 146, 148, 154, 156, /* 3824-3831 */ +155, 151, 145, 135, 111, 94, 102, 117, /* 3832-3839 */ +123, 128, 133, 133, 133, 123, 108, 107, /* 3840-3847 */ +102, 87, 90, 110, 128, 150, 162, 159, /* 3848-3855 */ +151, 149, 150, 143, 128, 115, 109, 105, /* 3856-3863 */ + 95, 94, 113, 132, 146, 154, 141, 122, /* 3864-3871 */ +106, 92, 94, 120, 149, 147, 132, 126, /* 3872-3879 */ +118, 105, 104, 123, 137, 132, 128, 135, /* 3880-3887 */ +137, 135, 138, 134, 139, 159, 175, 167, /* 3888-3895 */ +150, 133, 121, 115, 112, 114, 118, 123, /* 3896-3903 */ +133, 140, 128, 117, 115, 100, 95, 122, /* 3904-3911 */ +157, 161, 148, 140, 132, 122, 98, 73, /* 3912-3919 */ + 65, 74, 88, 111, 140, 165, 179, 175, /* 3920-3927 */ +161, 156, 161, 157, 143, 132, 114, 91, /* 3928-3935 */ + 75, 70, 78, 105, 143, 179, 192, 177, /* 3936-3943 */ +156, 128, 101, 95, 111, 128, 127, 119, /* 3944-3951 */ +111, 103, 95, 91, 102, 113, 119, 128, /* 3952-3959 */ +139, 147, 158, 154, 126, 120, 135, 139, /* 3960-3967 */ +134, 139, 144, 136, 126, 121, 125, 136, /* 3968-3975 */ +148, 155, 155, 149, 143, 134, 111, 100, /* 3976-3983 */ +114, 130, 127, 125, 127, 125, 128, 125, /* 3984-3991 */ +102, 80, 76, 85, 101, 138, 179, 193, /* 3992-3999 */ +166, 135, 127, 134, 138, 135, 126, 114, /* 4000-4007 */ +109, 101, 96, 103, 123, 139, 148, 147, /* 4008-4015 */ +132, 116, 100, 96, 110, 121, 123, 125, /* 4016-4023 */ +130, 132, 139, 145, 136, 124, 115, 110, /* 4024-4031 */ +114, 129, 138, 144, 142, 133, 143, 168, /* 4032-4039 */ +177, 165, 148, 130, 114, 110, 108, 111, /* 4040-4047 */ +124, 129, 116, 107, 112, 122, 128, 129, /* 4048-4055 */ +144, 155, 151, 135, 125, 122, 117, 113, /* 4056-4063 */ + 93, 71, 66, 77, 97, 124, 154, 178, /* 4064-4071 */ +183, 169, 156, 153, 157, 158, 142, 106, /* 4072-4079 */ + 81, 81, 82, 90, 121, 153, 164, 167, /* 4080-4087 */ +165, 152, 134, 113, 100, 103, 117, 125, /* 4088-4095 */ +122, 117, 110, 106, 100, 96, 105, 116, /* 4096-4103 */ +120, 135, 153, 152, 134, 121, 118, 129, /* 4104-4111 */ +156, 176, 167, 144, 121, 110, 106, 111, /* 4112-4119 */ +125, 144, 155, 156, 152, 146, 143, 130, /* 4120-4127 */ +113, 112, 122, 128, 122, 118, 124, 132, /* 4128-4135 */ +122, 95, 77, 77, 86, 112, 152, 181, /* 4136-4143 */ +185, 166, 134, 114, 119, 134, 142, 139, /* 4144-4151 */ +124, 112, 107, 103, 101, 115, 131, 139, /* 4152-4159 */ +144, 141, 125, 115, 103, 88, 85, 105, /* 4160-4167 */ +122, 133, 156, 173, 166, 139, 114, 104, /* 4168-4175 */ +101, 103, 121, 138, 147, 146, 138, 134, /* 4176-4183 */ +150, 177, 184, 162, 137, 118, 104, 100, /* 4184-4191 */ +111, 120, 112, 102, 104, 112, 131, 159, /* 4192-4199 */ +169, 153, 138, 133, 126, 113, 112, 118, /* 4200-4207 */ +117, 108, 87, 71, 72, 88, 112, 141, /* 4208-4215 */ +166, 181, 178, 159, 149, 158, 157, 134, /* 4216-4223 */ +108, 92, 86, 100, 121, 136, 142, 142, /* 4224-4231 */ +141, 146, 149, 145, 130, 111, 99, 103, /* 4232-4239 */ +116, 124, 122, 122, 118, 107, 98, 100, /* 4240-4247 */ +107, 117, 131, 137, 132, 128, 127, 125, /* 4248-4255 */ +138, 172, 195, 182, 144, 114, 98, 93, /* 4256-4263 */ +102, 119, 137, 150, 154, 153, 151, 149, /* 4264-4271 */ +147, 132, 112, 112, 122, 121, 120, 126, /* 4272-4279 */ +118, 102, 98, 90, 85, 103, 132, 152, /* 4280-4287 */ +160, 163, 158, 137, 114, 112, 128, 143, /* 4288-4295 */ +144, 135, 121, 114, 113, 112, 111, 118, /* 4296-4303 */ +130, 133, 135, 141, 131, 100, 74, 72, /* 4304-4311 */ + 90, 120, 154, 178, 184, 166, 136, 109, /* 4312-4319 */ + 93, 94, 101, 113, 130, 143, 147, 145, /* 4320-4327 */ +140, 144, 168, 188, 179, 151, 122, 105, /* 4328-4335 */ +106, 108, 98, 94, 99, 105, 120, 150, /* 4336-4343 */ +178, 182, 155, 125, 115, 117, 116, 113, /* 4344-4351 */ +118, 119, 111, 100, 83, 75, 85, 103, /* 4352-4359 */ +122, 145, 168, 175, 170, 163, 153, 141, /* 4360-4367 */ +129, 119, 106, 106, 125, 142, 139, 123, /* 4368-4375 */ +118, 120, 125, 142, 153, 148, 127, 104, /* 4376-4383 */ + 96, 105, 122, 130, 129, 122, 113, 102, /* 4384-4391 */ + 93, 104, 122, 119, 110, 116, 127, 136, /* 4392-4399 */ +149, 167, 177, 183, 174, 146, 113, 94, /* 4400-4407 */ + 93, 100, 113, 126, 140, 153, 156, 157, /* 4408-4415 */ +156, 155, 145, 122, 106, 110, 128, 132, /* 4416-4423 */ +113, 97, 96, 97, 103, 116, 130, 139, /* 4424-4431 */ +135, 132, 137, 142, 140, 130, 120, 123, /* 4432-4439 */ +134, 142, 142, 133, 123, 122, 118, 110, /* 4440-4447 */ +107, 113, 123, 136, 145, 129, 101, 82, /* 4448-4455 */ + 74, 89, 128, 168, 182, 175, 159, 136, /* 4456-4463 */ +110, 93, 95, 104, 108, 116, 135, 148, /* 4464-4471 */ +151, 148, 146, 151, 170, 181, 163, 138, /* 4472-4479 */ +124, 109, 87, 80, 87, 99, 117, 143, /* 4480-4487 */ +167, 174, 169, 152, 124, 105, 109, 121, /* 4488-4495 */ +121, 116, 114, 112, 105, 96, 89, 88, /* 4496-4503 */ + 96, 107, 126, 147, 171, 183, 169, 139, /* 4504-4511 */ +127, 128, 129, 136, 144, 146, 141, 125, /* 4512-4519 */ +110, 100, 103, 115, 134, 154, 157, 143, /* 4520-4527 */ +120, 102, 101, 116, 129, 128, 124, 116, /* 4528-4535 */ +106, 102, 106, 106, 100, 98, 108, 129, /* 4536-4543 */ +157, 181, 182, 168, 154, 152, 145, 125, /* 4544-4551 */ +107, 100, 100, 101, 113, 131, 147, 159, /* 4552-4559 */ +163, 163, 156, 150, 133, 111, 111, 124, /* 4560-4567 */ +120, 102, 93, 93, 104, 123, 146, 149, /* 4568-4575 */ +132, 117, 109, 115, 131, 146, 145, 130, /* 4576-4583 */ +119, 123, 136, 143, 146, 139, 128, 118, /* 4584-4591 */ +112, 106, 106, 120, 127, 121, 116, 112, /* 4592-4599 */ + 99, 93, 109, 136, 159, 163, 158, 151, /* 4600-4607 */ +138, 121, 106, 101, 101, 103, 106, 123, /* 4608-4615 */ +145, 162, 165, 153, 144, 150, 164, 170, /* 4616-4623 */ +161, 134, 98, 77, 73, 86, 108, 139, /* 4624-4631 */ +161, 163, 158, 151, 145, 130, 111, 110, /* 4632-4639 */ +120, 123, 116, 114, 114, 111, 106, 102, /* 4640-4647 */ + 94, 89, 94, 105, 132, 165, 176, 161, /* 4648-4655 */ +140, 128, 129, 145, 163, 170, 152, 129, /* 4656-4663 */ +112, 102, 98, 97, 110, 123, 139, 154, /* 4664-4671 */ +156, 140, 117, 108, 112, 120, 124, 123, /* 4672-4679 */ +118, 117, 113, 96, 85, 88, 95, 106, /* 4680-4687 */ +138, 178, 197, 188, 161, 139, 132, 135, /* 4688-4695 */ +135, 123, 108, 97, 97, 105, 124, 143, /* 4696-4703 */ +163, 167, 160, 156, 148, 140, 130, 116, /* 4704-4711 */ +103, 99, 100, 97, 102, 123, 144, 151, /* 4712-4719 */ +142, 123, 106, 98, 100, 121, 143, 151, /* 4720-4727 */ +140, 124, 118, 129, 145, 155, 150, 134, /* 4728-4735 */ +121, 111, 108, 115, 115, 106, 100, 106, /* 4736-4743 */ +115, 124, 131, 134, 133, 134, 137, 141, /* 4744-4751 */ +142, 142, 137, 122, 106, 99, 101, 105, /* 4752-4759 */ +114, 137, 160, 170, 161, 144, 136, 148, /* 4760-4767 */ +170, 166, 134, 101, 83, 79, 96, 128, /* 4768-4775 */ +152, 160, 148, 138, 136, 138, 139, 129, /* 4776-4783 */ +116, 112, 117, 119, 117, 116, 119, 115, /* 4784-4791 */ +104, 95, 88, 86, 99, 121, 140, 151, /* 4792-4799 */ +156, 151, 141, 147, 168, 180, 171, 148, /* 4800-4807 */ +121, 106, 97, 99, 103, 108, 114, 123, /* 4808-4815 */ +140, 156, 159, 143, 121, 107, 109, 116, /* 4816-4823 */ +119, 125, 128, 111, 87, 78, 83, 99, /* 4824-4831 */ +123, 150, 175, 184, 179, 160, 136, 123, /* 4832-4839 */ +127, 136, 132, 118, 103, 99, 103, 118, /* 4840-4847 */ +140, 154, 164, 162, 153, 150, 153, 145, /* 4848-4855 */ +115, 89, 87, 97, 110, 128, 142, 148, /* 4856-4863 */ +139, 125, 116, 104, 97, 99, 112, 130, /* 4864-4871 */ +146, 149, 138, 125, 127, 143, 152, 152, /* 4872-4879 */ +141, 124, 115, 116, 113, 98, 89, 92, /* 4880-4887 */ +101, 122, 150, 164, 150, 125, 110, 114, /* 4888-4895 */ +124, 137, 147, 148, 136, 116, 102, 99, /* 4896-4903 */ +105, 114, 129, 146, 162, 167, 150, 138, /* 4904-4911 */ +142, 148, 147, 138, 117, 99, 100, 118, /* 4912-4919 */ +137, 144, 140, 136, 129, 128, 135, 144, /* 4920-4927 */ +143, 125, 110, 110, 118, 124, 125, 122, /* 4928-4935 */ +117, 108, 95, 88, 91, 100, 102, 106, /* 4936-4943 */ +124, 146, 160, 169, 177, 180, 176, 162, /* 4944-4951 */ +145, 122, 105, 101, 102, 105, 103, 103, /* 4952-4959 */ +113, 129, 151, 169, 165, 139, 114, 99, /* 4960-4967 */ +104, 118, 127, 117, 103, 91, 83, 89, /* 4968-4975 */ +113, 142, 156, 158, 162, 165, 161, 142, /* 4976-4983 */ +126, 122, 126, 131, 128, 115, 105, 107, /* 4984-4991 */ +118, 129, 142, 155, 157, 154, 157, 155, /* 4992-4999 */ +138, 115, 92, 83, 97, 128, 152, 153, /* 5000-5007 */ +138, 127, 115, 106, 106, 105, 104, 105, /* 5008-5015 */ +115, 133, 145, 148, 141, 134, 134, 144, /* 5016-5023 */ +149, 145, 133, 128, 118, 99, 90, 87, /* 5024-5031 */ + 90, 108, 137, 162, 171, 155, 126, 101, /* 5032-5039 */ + 95, 108, 128, 144, 149, 144, 130, 112, /* 5040-5047 */ +105, 109, 116, 121, 134, 149, 160, 164, /* 5048-5055 */ +152, 132, 119, 124, 135, 136, 133, 134, /* 5056-5063 */ +139, 132, 126, 122, 121, 121, 123, 132, /* 5064-5071 */ +142, 143, 134, 117, 109, 116, 130, 136, /* 5072-5079 */ +128, 120, 111, 95, 93, 97, 89, 81, /* 5080-5087 */ + 86, 106, 136, 173, 198, 199, 180, 162, /* 5088-5095 */ +151, 140, 128, 114, 108, 104, 101, 101, /* 5096-5103 */ +101, 107, 123, 144, 162, 170, 159, 128, /* 5104-5111 */ +101, 102, 111, 109, 104, 101, 98, 99, /* 5112-5119 */ +110, 131, 144, 144, 140, 141, 149, 158, /* 5120-5127 */ +157, 142, 125, 117, 120, 129, 130, 121, /* 5128-5135 */ +116, 116, 119, 129, 139, 153, 164, 159, /* 5136-5143 */ +141, 127, 118, 106, 100, 116, 142, 155, /* 5144-5151 */ +150, 131, 115, 108, 102, 106, 112, 108, /* 5152-5159 */ +103, 107, 121, 139, 153, 155, 142, 132, /* 5160-5167 */ +134, 139, 146, 148, 131, 108, 92, 86, /* 5168-5175 */ + 89, 102, 126, 149, 156, 153, 148, 130, /* 5176-5183 */ +106, 93, 101, 117, 134, 144, 148, 142, /* 5184-5191 */ +130, 118, 112, 113, 116, 121, 133, 155, /* 5192-5199 */ +171, 157, 125, 105, 108, 126, 155, 173, /* 5200-5207 */ +164, 144, 123, 110, 106, 109, 118, 126, /* 5208-5215 */ +131, 135, 139, 139, 130, 118, 119, 126, /* 5216-5223 */ +133, 133, 119, 108, 105, 98, 85, 77, /* 5224-5231 */ + 74, 80, 101, 141, 186, 208, 202, 177, /* 5232-5239 */ +152, 139, 135, 134, 128, 114, 106, 101, /* 5240-5247 */ +102, 105, 109, 119, 133, 148, 162, 162, /* 5248-5255 */ +146, 124, 105, 90, 88, 93, 100, 111, /* 5256-5263 */ +129, 140, 140, 134, 129, 124, 124, 137, /* 5264-5271 */ +155, 165, 155, 130, 112, 110, 119, 136, /* 5272-5279 */ +139, 127, 120, 118, 119, 131, 150, 158, /* 5280-5287 */ +147, 133, 125, 122, 125, 133, 136, 139, /* 5288-5295 */ +139, 136, 126, 109, 104, 106, 107, 109, /* 5296-5303 */ +111, 106, 104, 114, 136, 155, 160, 152, /* 5304-5311 */ +136, 123, 132, 147, 145, 125, 104, 94, /* 5312-5319 */ + 92, 105, 128, 141, 142, 139, 134, 132, /* 5320-5327 */ +130, 120, 104, 98, 104, 119, 137, 148, /* 5328-5335 */ +154, 149, 134, 118, 110, 108, 110, 126, /* 5336-5343 */ +148, 157, 150, 132, 109, 105, 130, 166, /* 5344-5351 */ +189, 179, 147, 119, 102, 97, 103, 116, /* 5352-5359 */ +125, 129, 131, 135, 140, 141, 134, 124, /* 5360-5367 */ +121, 126, 130, 124, 117, 110, 90, 69, /* 5368-5375 */ + 66, 73, 85, 113, 151, 183, 197, 194, /* 5376-5383 */ +177, 152, 136, 134, 137, 134, 121, 109, /* 5384-5391 */ +104, 103, 110, 117, 119, 124, 136, 146, /* 5392-5399 */ +156, 161, 142, 102, 76, 75, 86, 107, /* 5400-5407 */ +134, 156, 155, 138, 121, 112, 110, 115, /* 5408-5415 */ +130, 148, 161, 162, 145, 120, 109, 116, /* 5416-5423 */ +131, 142, 140, 127, 114, 116, 128, 136, /* 5424-5431 */ +136, 136, 134, 130, 137, 152, 161, 149, /* 5432-5439 */ +130, 122, 118, 119, 115, 109, 107, 105, /* 5440-5447 */ +103, 107, 110, 110, 116, 130, 146, 158, /* 5448-5455 */ +156, 140, 129, 131, 131, 128, 122, 111, /* 5456-5463 */ +103, 111, 129, 143, 144, 133, 122, 117, /* 5464-5471 */ +118, 126, 130, 120, 102, 97, 106, 124, /* 5472-5479 */ +145, 161, 164, 149, 129, 110, 102, 108, /* 5480-5487 */ +120, 127, 133, 143, 141, 129, 125, 142, /* 5488-5495 */ +163, 176, 175, 153, 122, 103, 97, 102, /* 5496-5503 */ +110, 118, 125, 127, 132, 142, 149, 147, /* 5504-5511 */ +133, 122, 116, 119, 131, 126, 104, 83, /* 5512-5519 */ + 67, 63, 77, 106, 133, 151, 163, 173, /* 5520-5527 */ +177, 172, 159, 145, 137, 135, 134, 127, /* 5528-5535 */ +116, 109, 110, 115, 120, 122, 119, 120, /* 5536-5543 */ +130, 150, 157, 142, 110, 81, 73, 88, /* 5544-5551 */ +121, 151, 163, 155, 134, 113, 101, 104, /* 5552-5559 */ +111, 123, 137, 152, 162, 159, 140, 121, /* 5560-5567 */ +116, 120, 133, 140, 130, 121, 120, 117, /* 5568-5575 */ +114, 119, 128, 136, 146, 163, 173, 168, /* 5576-5583 */ +150, 125, 108, 106, 113, 121, 118, 110, /* 5584-5591 */ +102, 99, 100, 111, 120, 122, 125, 137, /* 5592-5599 */ +148, 150, 150, 142, 124, 113, 114, 120, /* 5600-5607 */ +122, 126, 137, 143, 142, 137, 125, 110, /* 5608-5615 */ +105, 110, 120, 131, 131, 114, 98, 98, /* 5616-5623 */ +116, 141, 160, 168, 160, 135, 112, 106, /* 5624-5631 */ +108, 105, 106, 118, 133, 149, 162, 161, /* 5632-5639 */ +153, 149, 150, 154, 150, 133, 114, 103, /* 5640-5647 */ +101, 104, 111, 119, 127, 136, 146, 152, /* 5648-5655 */ +152, 142, 122, 113, 119, 125, 119, 102, /* 5656-5663 */ + 85, 72, 70, 90, 121, 140, 141, 142, /* 5664-5671 */ +147, 157, 167, 168, 157, 142, 133, 131, /* 5672-5679 */ +130, 125, 122, 119, 117, 119, 121, 115, /* 5680-5687 */ +114, 126, 134, 136, 135, 124, 100, 90, /* 5688-5695 */ +105, 130, 149, 153, 147, 131, 112, 102, /* 5696-5703 */ +103, 110, 118, 127, 139, 153, 164, 162, /* 5704-5711 */ +141, 120, 114, 117, 128, 138, 137, 120, /* 5712-5719 */ +104, 100, 107, 123, 145, 169, 180, 178, /* 5720-5727 */ +164, 146, 123, 104, 101, 107, 119, 122, /* 5728-5735 */ +113, 103, 98, 101, 112, 126, 129, 126, /* 5736-5743 */ +125, 132, 146, 154, 142, 119, 104, 104, /* 5744-5751 */ +118, 139, 156, 159, 148, 134, 121, 116, /* 5752-5759 */ +108, 104, 106, 113, 121, 127, 124, 109, /* 5760-5767 */ +103, 114, 133, 152, 166, 163, 147, 129, /* 5768-5775 */ +113, 97, 89, 92, 104, 128, 160, 186, /* 5776-5783 */ +186, 161, 137, 127, 131, 143, 145, 133, /* 5784-5791 */ +114, 102, 98, 102, 113, 129, 139, 146, /* 5792-5799 */ +151, 150, 141, 128, 120, 114, 108, 107, /* 5800-5807 */ +104, 94, 89, 95, 107, 120, 130, 130, /* 5808-5815 */ +125, 127, 142, 160, 170, 167, 151, 135, /* 5816-5823 */ +128, 132, 136, 136, 129, 122, 116, 111, /* 5824-5831 */ +115, 120, 117, 113, 117, 124, 129, 129, /* 5832-5839 */ +125, 125, 129, 134, 137, 135, 130, 118, /* 5840-5847 */ +108, 104, 106, 112, 118, 129, 147, 165, /* 5848-5855 */ +173, 162, 134, 111, 102, 115, 136, 137, /* 5856-5863 */ +120, 102, 95, 102, 127, 161, 184, 186, /* 5864-5871 */ +172, 155, 137, 124, 110, 104, 105, 111, /* 5872-5879 */ +118, 118, 112, 107, 107, 111, 121, 130, /* 5880-5887 */ +125, 119, 127, 140, 142, 134, 121, 108, /* 5888-5895 */ +108, 128, 157, 173, 165, 146, 126, 110, /* 5896-5903 */ +106, 111, 111, 108, 106, 110, 118, 126, /* 5904-5911 */ +127, 118, 115, 123, 140, 152, 159, 160, /* 5912-5919 */ +143, 112, 89, 82, 87, 104, 136, 171, /* 5920-5927 */ +192, 191, 167, 132, 112, 114, 130, 146, /* 5928-5935 */ +145, 129, 110, 99, 102, 114, 128, 140, /* 5936-5943 */ +144, 144, 142, 141, 140, 125, 105, 95, /* 5944-5951 */ + 96, 103, 113, 121, 123, 118, 110, 109, /* 5952-5959 */ +113, 114, 118, 131, 150, 165, 168, 158, /* 5960-5967 */ +142, 134, 137, 142, 141, 135, 124, 113, /* 5968-5975 */ +111, 118, 117, 107, 100, 102, 115, 135, /* 5976-5983 */ +156, 158, 141, 124, 116, 116, 121, 127, /* 5984-5991 */ +128, 119, 109, 103, 105, 113, 126, 143, /* 5992-5999 */ +162, 174, 171, 148, 117, 103, 107, 114, /* 6000-6007 */ +120, 119, 109, 103, 115, 142, 167, 180, /* 6008-6015 */ +178, 163, 145, 133, 126, 120, 111, 104, /* 6016-6023 */ +106, 111, 118, 122, 121, 116, 113, 113, /* 6024-6031 */ +117, 121, 125, 125, 123, 124, 125, 122, /* 6032-6039 */ +120, 127, 146, 164, 170, 161, 141, 120, /* 6040-6047 */ +109, 106, 112, 116, 111, 105, 103, 109, /* 6048-6055 */ +123, 135, 131, 122, 118, 123, 139, 158, /* 6056-6063 */ +163, 146, 117, 93, 81, 91, 117, 148, /* 6064-6071 */ +170, 182, 180, 164, 137, 113, 108, 119, /* 6072-6079 */ +136, 145, 139, 123, 110, 109, 115, 124, /* 6080-6087 */ +135, 139, 137, 140, 144, 139, 122, 103, /* 6088-6095 */ + 90, 91, 108, 133, 148, 142, 122, 99, /* 6096-6103 */ + 87, 93, 106, 116, 126, 140, 154, 163, /* 6104-6111 */ +163, 155, 147, 144, 144, 144, 137, 125, /* 6112-6119 */ +119, 117, 111, 104, 100, 97, 100, 117, /* 6120-6127 */ +146, 168, 170, 149, 121, 103, 101, 112, /* 6128-6135 */ +125, 133, 129, 117, 104, 102, 112, 127, /* 6136-6143 */ +140, 155, 166, 166, 156, 137, 113, 95, /* 6144-6151 */ + 91, 101, 113, 119, 126, 140, 153, 162, /* 6152-6159 */ +166, 162, 153, 141, 134, 130, 126, 118, /* 6160-6167 */ +108, 102, 106, 117, 129, 133, 127, 116, /* 6168-6175 */ +105, 105, 118, 125, 118, 109, 111, 118, /* 6176-6183 */ +129, 142, 153, 158, 159, 156, 148, 135, /* 6184-6191 */ +122, 114, 111, 111, 114, 114, 108, 102, /* 6192-6199 */ +107, 119, 131, 139, 129, 115, 116, 132, /* 6200-6207 */ +147, 150, 142, 124, 105, 95, 107, 131, /* 6208-6215 */ +151, 160, 163, 162, 155, 145, 127, 113, /* 6216-6223 */ +111, 121, 134, 140, 136, 126, 120, 119, /* 6224-6231 */ +122, 126, 129, 135, 140, 139, 129, 117, /* 6232-6239 */ +104, 94, 100, 122, 147, 158, 149, 122, /* 6240-6247 */ + 95, 78, 79, 96, 114, 123, 129, 141, /* 6248-6255 */ +156, 166, 169, 162, 152, 145, 140, 133, /* 6256-6263 */ +131, 126, 115, 102, 93, 94, 99, 112, /* 6264-6271 */ +132, 153, 165, 164, 147, 121, 101, 97, /* 6272-6279 */ +108, 122, 131, 130, 121, 111, 106, 115, /* 6280-6287 */ +126, 138, 147, 153, 158, 163, 154, 123, /* 6288-6295 */ + 91, 77, 83, 105, 132, 153, 159, 156, /* 6296-6303 */ +149, 146, 146, 146, 145, 140, 135, 130, /* 6304-6311 */ +122, 113, 105, 108, 118, 128, 136, 132, /* 6312-6319 */ +118, 107, 105, 110, 111, 108, 103, 102, /* 6320-6327 */ +117, 142, 165, 172, 163, 149, 140, 136, /* 6328-6335 */ +132, 128, 121, 117, 112, 110, 111, 114, /* 6336-6343 */ +113, 111, 115, 124, 131, 129, 121, 119, /* 6344-6351 */ +122, 127, 134, 138, 133, 127, 125, 129, /* 6352-6359 */ +136, 141, 142, 141, 144, 148, 149, 142, /* 6360-6367 */ +126, 111, 111, 122, 136, 146, 143, 132, /* 6368-6375 */ +124, 116, 116, 124, 134, 134, 126, 120, /* 6376-6383 */ +114, 111, 113, 122, 137, 148, 150, 142, /* 6384-6391 */ +122, 99, 80, 75, 87, 104, 117, 123, /* 6392-6399 */ +131, 149, 167, 178, 175, 162, 144, 134, /* 6400-6407 */ +135, 135, 124, 109, 98, 90, 93, 111, /* 6408-6415 */ +133, 148, 151, 150, 144, 136, 124, 109, /* 6416-6423 */ +101, 105, 115, 123, 127, 127, 122, 118, /* 6424-6431 */ +119, 126, 133, 137, 142, 154, 160, 151, /* 6432-6439 */ +129, 100, 78, 79, 106, 142, 166, 166, /* 6440-6447 */ +152, 137, 129, 133, 141, 147, 146, 139, /* 6448-6455 */ +130, 123, 118, 115, 114, 119, 126, 131, /* 6456-6463 */ +129, 124, 118, 107, 95, 94, 97, 100, /* 6464-6471 */ +108, 129, 157, 174, 175, 160, 140, 127, /* 6472-6479 */ +127, 132, 134, 129, 120, 112, 107, 111, /* 6480-6487 */ +120, 125, 121, 115, 114, 116, 124, 128, /* 6488-6495 */ +120, 109, 109, 119, 132, 146, 156, 156, /* 6496-6503 */ +146, 135, 127, 124, 127, 133, 143, 151, /* 6504-6511 */ +149, 137, 119, 106, 114, 131, 147, 152, /* 6512-6519 */ +145, 128, 115, 115, 121, 124, 121, 116, /* 6520-6527 */ +114, 116, 125, 138, 145, 142, 138, 134, /* 6528-6535 */ +128, 123, 111, 94, 81, 79, 89, 103, /* 6536-6543 */ +116, 128, 144, 164, 178, 180, 167, 149, /* 6544-6551 */ +139, 136, 128, 117, 106, 98, 96, 108, /* 6552-6559 */ +129, 146, 152, 144, 133, 126, 125, 124, /* 6560-6567 */ +120, 111, 105, 108, 116, 125, 133, 135, /* 6568-6575 */ +130, 125, 123, 122, 127, 137, 144, 146, /* 6576-6583 */ +142, 132, 115, 97, 96, 117, 140, 158, /* 6584-6591 */ +159, 147, 131, 122, 126, 137, 146, 147, /* 6592-6599 */ +140, 131, 126, 126, 125, 122, 121, 121, /* 6600-6607 */ +122, 126, 132, 124, 106, 87, 81, 87, /* 6608-6615 */ +102, 124, 145, 160, 169, 166, 154, 137, /* 6616-6623 */ +125, 124, 130, 134, 131, 124, 116, 112, /* 6624-6631 */ +116, 124, 131, 130, 117, 105, 107, 117, /* 6632-6639 */ +121, 115, 104, 101, 111, 133, 162, 180, /* 6640-6647 */ +176, 156, 130, 115, 111, 116, 126, 137, /* 6648-6655 */ +147, 148, 142, 130, 118, 115, 125, 141, /* 6656-6663 */ +150, 146, 134, 123, 117, 113, 110, 109, /* 6664-6671 */ +109, 113, 127, 144, 157, 155, 142, 127, /* 6672-6679 */ +119, 117, 121, 122, 112, 93, 78, 76, /* 6680-6687 */ + 90, 110, 128, 143, 157, 171, 175, 170, /* 6688-6695 */ +161, 146, 131, 118, 111, 106, 105, 114, /* 6696-6703 */ +128, 140, 147, 146, 136, 123, 114, 116, /* 6704-6711 */ +121, 124, 119, 109, 105, 112, 124, 137, /* 6712-6719 */ +143, 141, 130, 120, 118, 125, 130, 129, /* 6720-6727 */ +130, 130, 130, 131, 129, 126, 126, 129, /* 6728-6735 */ +136, 140, 138, 131, 125, 125, 133, 140, /* 6736-6743 */ +144, 141, 137, 134, 134, 133, 130, 121, /* 6744-6751 */ +115, 116, 123, 128, 122, 107, 89, 79, /* 6752-6759 */ + 87, 110, 137, 152, 155, 154, 151, 146, /* 6760-6767 */ +139, 131, 127, 128, 131, 130, 126, 122, /* 6768-6775 */ +122, 122, 126, 131, 130, 120, 109, 104, /* 6776-6783 */ +103, 103, 104, 103, 103, 115, 143, 171, /* 6784-6791 */ +186, 181, 159, 131, 110, 105, 111, 121, /* 6792-6799 */ +130, 138, 142, 143, 142, 136, 127, 124, /* 6800-6807 */ +131, 137, 140, 140, 134, 118, 104, 99, /* 6808-6815 */ +100, 108, 124, 144, 159, 163, 154, 137, /* 6816-6823 */ +118, 110, 111, 118, 125, 123, 108, 86, /* 6824-6831 */ + 74, 82, 102, 123, 139, 150, 157, 166, /* 6832-6839 */ +173, 170, 150, 127, 113, 107, 111, 123, /* 6840-6847 */ +137, 145, 144, 138, 131, 126, 119, 113, /* 6848-6855 */ +113, 117, 119, 120, 115, 111, 114, 124, /* 6856-6863 */ +138, 145, 144, 133, 123, 122, 121, 118, /* 6864-6871 */ +115, 115, 122, 134, 150, 161, 154, 134, /* 6872-6879 */ +117, 113, 117, 127, 133, 133, 129, 128, /* 6880-6887 */ +133, 138, 143, 145, 143, 141, 137, 130, /* 6888-6895 */ +120, 115, 117, 117, 115, 114, 109, 100, /* 6896-6903 */ + 94, 103, 120, 136, 144, 143, 137, 137, /* 6904-6911 */ +140, 143, 140, 132, 126, 125, 127, 131, /* 6912-6919 */ +132, 130, 129, 128, 125, 124, 125, 118, /* 6920-6927 */ +103, 89, 86, 92, 102, 115, 134, 153, /* 6928-6935 */ +170, 177, 173, 157, 136, 118, 109, 110, /* 6936-6943 */ +115, 121, 128, 136, 144, 150, 149, 140, /* 6944-6951 */ +129, 120, 124, 134, 141, 135, 118, 102, /* 6952-6959 */ + 94, 99, 116, 139, 156, 162, 158, 145, /* 6960-6967 */ +131, 117, 108, 110, 117, 123, 125, 117, /* 6968-6975 */ +101, 86, 83, 93, 113, 129, 137, 146, /* 6976-6983 */ +160, 170, 165, 151, 130, 114, 112, 125, /* 6984-6991 */ +142, 152, 150, 141, 128, 119, 118, 119, /* 6992-6999 */ +118, 114, 112, 113, 115, 118, 120, 122, /* 7000-7007 */ +126, 134, 139, 139, 138, 133, 124, 114, /* 7008-7015 */ +106, 104, 107, 120, 144, 166, 175, 166, /* 7016-7023 */ +141, 113, 97, 101, 116, 131, 138, 133, /* 7024-7031 */ +126, 126, 134, 145, 151, 151, 147, 137, /* 7032-7039 */ +128, 123, 120, 113, 107, 104, 106, 110, /* 7040-7047 */ +117, 122, 123, 124, 126, 126, 126, 126, /* 7048-7055 */ +129, 138, 144, 144, 137, 128, 124, 128, /* 7056-7063 */ +134, 139, 138, 133, 126, 121, 124, 126, /* 7064-7071 */ +119, 101, 84, 76, 84, 105, 132, 151, /* 7072-7079 */ +157, 158, 159, 159, 155, 145, 132, 118, /* 7080-7087 */ +111, 110, 113, 120, 131, 145, 154, 156, /* 7088-7095 */ +150, 134, 120, 119, 126, 129, 125, 117, /* 7096-7103 */ +105, 100, 111, 130, 150, 158, 156, 147, /* 7104-7111 */ +135, 127, 119, 113, 110, 113, 118, 122, /* 7112-7119 */ +123, 119, 106, 92, 90, 99, 111, 126, /* 7120-7127 */ +141, 152, 156, 155, 149, 137, 127, 131, /* 7128-7135 */ +142, 153, 154, 146, 133, 121, 114, 114, /* 7136-7143 */ +119, 121, 115, 109, 107, 111, 120, 128, /* 7144-7151 */ +130, 130, 129, 131, 137, 141, 138, 123, /* 7152-7159 */ +109, 100, 99, 108, 129, 154, 172, 176, /* 7160-7167 */ +165, 144, 116, 97, 94, 105, 121, 132, /* 7168-7175 */ +135, 130, 128, 135, 147, 155, 156, 147, /* 7176-7183 */ +137, 130, 127, 119, 107, 98, 96, 101, /* 7184-7191 */ +116, 136, 148, 140, 126, 113, 107, 109, /* 7192-7199 */ +117, 126, 135, 142, 145, 140, 133, 129, /* 7200-7207 */ +131, 137, 142, 141, 133, 126, 124, 125, /* 7208-7215 */ +120, 113, 101, 86, 78, 87, 114, 139, /* 7216-7223 */ +154, 154, 147, 142, 145, 150, 152, 145, /* 7224-7231 */ +130, 115, 108, 109, 116, 128, 143, 154, /* 7232-7239 */ +157, 151, 140, 129, 120, 114, 113, 113, /* 7240-7247 */ +115, 115, 119, 130, 142, 149, 148, 143, /* 7248-7255 */ +137, 130, 126, 124, 119, 112, 110, 113, /* 7256-7263 */ +119, 128, 132, 124, 107, 92, 86, 95, /* 7264-7271 */ +113, 130, 137, 140, 145, 149, 150, 152, /* 7272-7279 */ +155, 156, 154, 146, 136, 125, 118, 116, /* 7280-7287 */ +116, 117, 120, 117, 111, 107, 111, 120, /* 7288-7295 */ +130, 134, 131, 125, 127, 135, 138, 133, /* 7296-7303 */ +123, 109, 102, 105, 120, 138, 154, 164, /* 7304-7311 */ +165, 157, 144, 127, 108, 97, 98, 108, /* 7312-7319 */ +121, 131, 134, 135, 138, 146, 153, 153, /* 7320-7327 */ +147, 142, 135, 125, 114, 102, 94, 95, /* 7328-7335 */ +107, 128, 150, 159, 150, 127, 105, 94, /* 7336-7343 */ + 95, 107, 120, 131, 138, 142, 143, 142, /* 7344-7351 */ +139, 138, 139, 140, 137, 132, 129, 127, /* 7352-7359 */ +120, 111, 105, 99, 94, 94, 104, 120, /* 7360-7367 */ +135, 144, 143, 136, 132, 137, 147, 155, /* 7368-7375 */ +154, 141, 123, 112, 110, 115, 125, 137, /* 7376-7383 */ +148, 150, 150, 148, 138, 120, 105, 99, /* 7384-7391 */ +103, 114, 129, 144, 147, 146, 141, 135, /* 7392-7399 */ +130, 128, 128, 128, 126, 122, 115, 109, /* 7400-7407 */ +111, 119, 130, 138, 138, 122, 98, 85, /* 7408-7415 */ + 87, 98, 109, 118, 127, 136, 151, 168, /* 7416-7423 */ +178, 175, 163, 149, 137, 127, 122, 120, /* 7424-7431 */ +119, 118, 117, 115, 116, 114, 114, 115, /* 7432-7439 */ +120, 127, 131, 129, 127, 128, 129, 127, /* 7440-7447 */ +125, 122, 115, 114, 122, 134, 142, 146, /* 7448-7455 */ +147, 148, 146, 144, 137, 123, 107, 97, /* 7456-7463 */ + 98, 108, 124, 138, 143, 143, 145, 146, /* 7464-7471 */ +147, 149, 146, 135, 120, 108, 100, 96, /* 7472-7479 */ +103, 122, 141, 153, 156, 148, 128, 105, /* 7480-7487 */ + 92, 91, 99, 111, 122, 131, 139, 145, /* 7488-7495 */ +151, 149, 145, 141, 135, 134, 134, 133, /* 7496-7503 */ +123, 113, 105, 100, 102, 109, 117, 121, /* 7504-7511 */ +122, 122, 125, 127, 128, 129, 133, 142, /* 7512-7519 */ +152, 155, 150, 136, 124, 118, 118, 122, /* 7520-7527 */ +128, 135, 143, 150, 150, 139, 121, 104, /* 7528-7535 */ + 95, 102, 120, 143, 157, 156, 144, 132, /* 7536-7543 */ +123, 122, 125, 129, 129, 126, 122, 117, /* 7544-7551 */ +113, 114, 122, 131, 139, 139, 130, 112, /* 7552-7559 */ + 95, 84, 80, 86, 98, 115, 135, 159, /* 7560-7567 */ +183, 193, 186, 167, 144, 129, 122, 122, /* 7568-7575 */ +123, 121, 119, 115, 113, 115, 119, 121, /* 7576-7583 */ +121, 121, 120, 122, 126, 130, 125, 119, /* 7584-7591 */ +116, 118, 122, 129, 137, 144, 144, 141, /* 7592-7599 */ +134, 129, 132, 138, 142, 143, 135, 118, /* 7600-7607 */ +101, 94, 102, 118, 135, 146, 147, 142, /* 7608-7615 */ +140, 145, 148, 143, 132, 117, 105, 102, /* 7616-7623 */ +109, 122, 135, 144, 147, 144, 139, 130, /* 7624-7631 */ +114, 100, 92, 92, 99, 110, 123, 137, /* 7632-7639 */ +148, 156, 158, 151, 140, 133, 134, 133, /* 7640-7647 */ +128, 118, 109, 103, 105, 114, 127, 135, /* 7648-7655 */ +132, 120, 110, 107, 112, 121, 128, 133, /* 7656-7663 */ +137, 145, 152, 155, 151, 140, 131, 123, /* 7664-7671 */ +119, 118, 124, 136, 144, 142, 134, 122, /* 7672-7679 */ +108, 103, 113, 131, 148, 156, 153, 140, /* 7680-7687 */ +126, 119, 119, 123, 127, 128, 126, 122, /* 7688-7695 */ +120, 120, 120, 124, 131, 134, 135, 134, /* 7696-7703 */ +126, 106, 83, 70, 69, 81, 107, 140, /* 7704-7711 */ +168, 187, 194, 186, 165, 143, 128, 123, /* 7712-7719 */ +123, 123, 122, 119, 116, 116, 117, 122, /* 7720-7727 */ +126, 125, 120, 114, 117, 123, 125, 119, /* 7728-7735 */ +113, 109, 114, 128, 147, 158, 158, 148, /* 7736-7743 */ +133, 120, 115, 119, 131, 141, 144, 140, /* 7744-7751 */ +128, 112, 101, 103, 112, 128, 140, 144, /* 7752-7759 */ +141, 141, 143, 142, 136, 127, 117, 111, /* 7760-7767 */ +115, 127, 138, 140, 139, 135, 131, 130, /* 7768-7775 */ +130, 125, 112, 99, 90, 89, 98, 115, /* 7776-7783 */ +135, 149, 158, 160, 153, 143, 137, 133, /* 7784-7791 */ +127, 120, 113, 107, 107, 117, 130, 140, /* 7792-7799 */ +141, 133, 116, 102, 96, 101, 113, 124, /* 7800-7807 */ +130, 133, 138, 147, 158, 163, 157, 144, /* 7808-7815 */ +129, 116, 113, 117, 124, 131, 131, 128, /* 7816-7823 */ +124, 122, 124, 131, 139, 144, 144, 140, /* 7824-7831 */ +133, 125, 120, 120, 121, 124, 125, 125, /* 7832-7839 */ +124, 125, 127, 126, 126, 127, 128, 132, /* 7840-7847 */ +137, 131, 113, 88, 68, 63, 76, 106, /* 7848-7855 */ +140, 168, 182, 185, 179, 165, 148, 134, /* 7856-7863 */ +126, 123, 123, 121, 118, 119, 121, 123, /* 7864-7871 */ +126, 127, 124, 119, 116, 116, 115, 113, /* 7872-7879 */ +110, 107, 108, 120, 141, 161, 170, 164, /* 7880-7887 */ +147, 128, 114, 108, 111, 121, 134, 141, /* 7888-7895 */ +141, 135, 126, 116, 109, 112, 120, 127, /* 7896-7903 */ +135, 141, 141, 137, 132, 128, 123, 121, /* 7904-7911 */ +126, 134, 142, 145, 140, 130, 123, 121, /* 7912-7919 */ +124, 129, 130, 123, 108, 93, 87, 93, /* 7920-7927 */ +108, 129, 147, 155, 156, 155, 150, 140, /* 7928-7935 */ +129, 119, 112, 110, 112, 121, 134, 144, /* 7936-7943 */ +146, 139, 126, 112, 101, 95, 96, 106, /* 7944-7951 */ +116, 123, 129, 136, 146, 161, 170, 168, /* 7952-7959 */ +154, 135, 121, 114, 111, 110, 114, 119, /* 7960-7967 */ +123, 130, 140, 147, 148, 143, 136, 130, /* 7968-7975 */ +126, 126, 126, 125, 122, 120, 121, 121, /* 7976-7983 */ +125, 129, 132, 133, 132, 126, 121, 124, /* 7984-7991 */ +130, 132, 126, 115, 96, 77, 72, 84, /* 7992-7999 */ +108, 134, 155, 167, 170, 170, 166, 157, /* 8000-8007 */ +144, 132, 123, 120, 120, 122, 125, 126, /* 8008-8015 */ +128, 128, 123, 121, 121, 119, 113, 105, /* 8016-8023 */ +102, 101, 105, 116, 134, 153, 167, 170, /* 8024-8031 */ +162, 145, 127, 115, 108, 108, 113, 123, /* 8032-8039 */ +133, 140, 142, 139, 131, 121, 113, 111, /* 8040-8047 */ +116, 127, 135, 135, 130, 125, 123, 125, /* 8048-8055 */ +134, 145, 151, 150, 143, 133, 122, 116, /* 8056-8063 */ +116, 122, 127, 131, 128, 117, 103, 94, /* 8064-8071 */ + 94, 102, 119, 136, 147, 153, 157, 154, /* 8072-8079 */ +140, 126, 113, 109, 113, 124, 137, 146, /* 8080-8087 */ +148, 142, 131, 118, 110, 104, 99, 97, /* 8088-8095 */ +100, 107, 115, 124, 135, 147, 160, 172, /* 8096-8103 */ +172, 161, 146, 129, 115, 102, 96, 98, /* 8104-8111 */ +108, 124, 143, 158, 163, 157, 143, 128, /* 8112-8119 */ +119, 117, 120, 124, 126, 124, 120, 119, /* 8120-8127 */ +121, 127, 133, 138, 137, 132, 126, 122, /* 8128-8135 */ +122, 123, 123, 119, 113, 105, 97, 95, /* 8136-8143 */ + 99, 107, 119, 132, 144, 155, 162, 167, /* 8144-8151 */ +165, 154, 139, 126, 121, 122, 126, 130, /* 8152-8159 */ +131, 131, 126, 121, 119, 121, 117, 108, /* 8160-8167 */ + 99, 94, 98, 110, 129, 147, 158, 162, /* 8168-8175 */ +161, 155, 144, 132, 121, 111, 106, 106, /* 8176-8183 */ +112, 123, 138, 148, 150, 145, 131, 116, /* 8184-8191 */ +108, 110, 117, 123, 124, 123, 121, 124, /* 8192-8199 */ +136, 151, 160, 160, 151, 138, 126, 118, /* 8200-8207 */ +113, 114, 119, 124, 127, 128, 125, 117, /* 8208-8215 */ +107, 101, 101, 106, 119, 135, 149, 154, /* 8216-8223 */ +150, 139, 124, 114, 113, 125, 139, 150, /* 8224-8231 */ +151, 144, 134, 124, 116, 109, 107, 104, /* 8232-8239 */ +100, 96, 99, 108, 121, 134, 147, 158, /* 8240-8247 */ +166, 170, 168, 157, 137, 117, 98, 88, /* 8248-8255 */ + 89, 104, 128, 153, 167, 169, 158, 141, /* 8256-8263 */ +124, 115, 113, 116, 121, 123, 124, 122, /* 8264-8271 */ +122, 124, 130, 136, 139, 136, 131, 128, /* 8272-8279 */ +124, 118, 112, 111, 111, 114, 119, 123, /* 8280-8287 */ +121, 114, 106, 103, 107, 120, 139, 154, /* 8288-8295 */ +164, 168, 161, 146, 133, 125, 127, 130, /* 8296-8303 */ +134, 134, 129, 124, 123, 119, 115, 110, /* 8304-8311 */ +104, 97, 96, 104, 120, 137, 150, 154, /* 8312-8319 */ +153, 150, 149, 146, 139, 129, 118, 107, /* 8320-8327 */ +102, 104, 116, 133, 147, 156, 152, 138, /* 8328-8335 */ +123, 113, 108, 106, 106, 110, 115, 122, /* 8336-8343 */ +135, 151, 163, 166, 159, 147, 132, 122, /* 8344-8351 */ +118, 115, 114, 116, 119, 123, 128, 132, /* 8352-8359 */ +130, 122, 112, 102, 97, 105, 122, 137, /* 8360-8367 */ +145, 143, 137, 128, 123, 127, 140, 150, /* 8368-8375 */ +153, 148, 136, 125, 119, 115, 112, 109, /* 8376-8383 */ +106, 102, 98, 99, 107, 117, 131, 143, /* 8384-8391 */ +152, 159, 167, 171, 162, 142, 119, 98, /* 8392-8399 */ + 87, 91, 109, 133, 155, 165, 165, 153, /* 8400-8407 */ +139, 126, 118, 113, 114, 116, 118, 122, /* 8408-8415 */ +125, 128, 131, 134, 136, 135, 134, 132, /* 8416-8423 */ +130, 124, 114, 105, 102, 108, 120, 135, /* 8424-8431 */ +144, 141, 125, 106, 92, 90, 101, 122, /* 8432-8439 */ +143, 159, 166, 164, 155, 143, 135, 133, /* 8440-8447 */ +135, 135, 132, 128, 125, 122, 115, 107, /* 8448-8455 */ +101, 99, 101, 108, 120, 131, 140, 143, /* 8456-8463 */ +143, 142, 142, 145, 148, 145, 135, 123, /* 8464-8471 */ +111, 103, 103, 112, 127, 143, 153, 152, /* 8472-8479 */ +145, 134, 120, 106, 96, 95, 99, 110, /* 8480-8487 */ +129, 149, 161, 167, 163, 154, 141, 130, /* 8488-8495 */ +123, 120, 118, 115, 113, 115, 120, 128, /* 8496-8503 */ +136, 139, 134, 121, 105, 97, 97, 106, /* 8504-8511 */ +118, 129, 134, 136, 138, 141, 147, 151, /* 8512-8519 */ +153, 149, 141, 130, 122, 117, 116, 114, /* 8520-8527 */ +111, 106, 103, 102, 104, 108, 117, 125, /* 8528-8535 */ +133, 143, 153, 163, 167, 162, 145, 125, /* 8536-8543 */ +106, 99, 104, 117, 133, 146, 153, 153, /* 8544-8551 */ +148, 140, 131, 124, 118, 113, 111, 112, /* 8552-8559 */ +119, 127, 134, 137, 136, 134, 131, 133, /* 8560-8567 */ +133, 128, 119, 109, 100, 100, 111, 130, /* 8568-8575 */ +148, 155, 149, 130, 106, 88, 83, 89, /* 8576-8583 */ +106, 128, 146, 159, 165, 164, 157, 147, /* 8584-8591 */ +141, 137, 132, 130, 129, 125, 118, 109, /* 8592-8599 */ +100, 96, 99, 111, 125, 135, 138, 135, /* 8600-8607 */ +130, 128, 131, 137, 143, 148, 149, 141, /* 8608-8615 */ +128, 117, 110, 108, 111, 121, 133, 143, /* 8616-8623 */ +150, 151, 141, 124, 105, 92, 87, 95, /* 8624-8631 */ +114, 136, 155, 164, 163, 156, 147, 138, /* 8632-8639 */ +131, 126, 122, 119, 115, 111, 113, 120, /* 8640-8647 */ +130, 139, 144, 140, 128, 114, 102, 94, /* 8648-8655 */ + 91, 97, 110, 125, 138, 153, 162, 163, /* 8656-8663 */ +157, 149, 141, 133, 126, 121, 118, 116, /* 8664-8671 */ +114, 111, 108, 107, 109, 110, 112, 115, /* 8672-8679 */ +119, 123, 134, 146, 154, 158, 156, 148, /* 8680-8687 */ +134, 124, 120, 122, 124, 128, 131, 136, /* 8688-8695 */ +139, 144, 143, 138, 130, 121, 113, 110, /* 8696-8703 */ +111, 118, 127, 136, 139, 136, 132, 132, /* 8704-8711 */ +131, 129, 123, 114, 107, 103, 107, 122, /* 8712-8719 */ +139, 152, 155, 147, 132, 111, 94, 84, /* 8720-8727 */ + 84, 93, 109, 130, 150, 163, 171, 170, /* 8728-8735 */ +160, 148, 137, 133, 131, 129, 123, 112, /* 8736-8743 */ +103, 97, 98, 108, 123, 137, 143, 137, /* 8744-8751 */ +128, 119, 117, 122, 132, 142, 146, 148, /* 8752-8759 */ +145, 137, 128, 120, 115, 113, 114, 121, /* 8760-8767 */ +133, 145, 150, 143, 126, 108, 94, 91, /* 8768-8775 */ +102, 121, 139, 152, 157, 154, 149, 142, /* 8776-8783 */ +138, 135, 131, 125, 120, 115, 114, 115, /* 8784-8791 */ +120, 130, 138, 142, 140, 134, 124, 108, /* 8792-8799 */ + 92, 81, 80, 93, 117, 144, 166, 176, /* 8800-8807 */ +171, 158, 143, 133, 129, 126, 123, 120, /* 8808-8815 */ +115, 112, 111, 111, 113, 116, 119, 117, /* 8816-8823 */ +113, 112, 116, 124, 134, 142, 146, 148, /* 8824-8831 */ +151, 150, 147, 144, 137, 128, 119, 115, /* 8832-8839 */ +118, 127, 138, 143, 142, 134, 125, 117, /* 8840-8847 */ +114, 115, 120, 127, 132, 135, 135, 134, /* 8848-8855 */ +132, 127, 122, 116, 111, 109, 114, 122, /* 8856-8863 */ +132, 142, 147, 146, 141, 132, 119, 105, /* 8864-8871 */ + 93, 86, 86, 94, 111, 134, 155, 171, /* 8872-8879 */ +178, 171, 156, 143, 136, 132, 126, 117, /* 8880-8887 */ +107, 99, 99, 107, 121, 134, 143, 143, /* 8888-8895 */ +136, 126, 118, 114, 116, 123, 131, 139, /* 8896-8903 */ +144, 148, 147, 140, 133, 124, 115, 108, /* 8904-8911 */ +112, 121, 133, 139, 138, 128, 114, 107, /* 8912-8919 */ +109, 121, 133, 140, 141, 138, 135, 134, /* 8920-8927 */ +136, 139, 139, 136, 129, 123, 120, 119, /* 8928-8935 */ +121, 123, 128, 132, 136, 139, 138, 130, /* 8936-8943 */ +114, 98, 84, 79, 88, 112, 140, 162, /* 8944-8951 */ +172, 170, 158, 143, 133, 129, 128, 125, /* 8952-8959 */ +120, 114, 110, 110, 114, 119, 122, 122, /* 8960-8967 */ +120, 118, 118, 120, 118, 117, 119, 124, /* 8968-8975 */ +136, 152, 169, 174, 166, 148, 129, 112, /* 8976-8983 */ +104, 106, 115, 128, 139, 142, 137, 130, /* 8984-8991 */ +126, 125, 128, 130, 130, 126, 124, 124, /* 8992-8999 */ +125, 124, 121, 117, 113, 114, 120, 131, /* 9000-9007 */ +137, 139, 138, 135, 134, 133, 132, 127, /* 9008-9015 */ +117, 104, 93, 88, 90, 101, 120, 142, /* 9016-9023 */ +160, 170, 171, 165, 153, 142, 131, 121, /* 9024-9031 */ +112, 105, 102, 107, 120, 131, 138, 138, /* 9032-9039 */ +135, 130, 124, 120, 119, 116, 117, 121, /* 9040-9047 */ +127, 137, 147, 154, 153, 145, 132, 118, /* 9048-9055 */ +109, 107, 111, 117, 124, 128, 128, 125, /* 9056-9063 */ +126, 128, 133, 136, 136, 131, 126, 123, /* 9064-9071 */ +126, 130, 135, 139, 137, 133, 129, 127, /* 9072-9079 */ +127, 126, 126, 124, 126, 131, 136, 137, /* 9080-9087 */ +129, 115, 100, 89, 89, 98, 116, 136, /* 9088-9095 */ +152, 160, 159, 153, 144, 137, 132, 130, /* 9096-9103 */ +126, 121, 116, 111, 112, 118, 124, 125, /* 9104-9111 */ +122, 120, 119, 117, 115, 113, 108, 108, /* 9112-9119 */ +116, 133, 156, 178, 187, 178, 156, 131, /* 9120-9127 */ +112, 101, 101, 108, 119, 129, 137, 140, /* 9128-9135 */ +139, 135, 134, 133, 131, 128, 126, 124, /* 9136-9143 */ +122, 120, 115, 112, 110, 113, 122, 135, /* 9144-9151 */ +145, 147, 142, 134, 126, 124, 126, 129, /* 9152-9159 */ +129, 124, 112, 99, 92, 93, 99, 114, /* 9160-9167 */ +131, 147, 158, 167, 170, 163, 148, 132, /* 9168-9175 */ +117, 108, 106, 112, 121, 130, 136, 135, /* 9176-9183 */ +131, 125, 123, 122, 121, 121, 119, 119, /* 9184-9191 */ +120, 125, 133, 142, 153, 157, 150, 137, /* 9192-9199 */ +125, 115, 106, 101, 102, 108, 118, 131, /* 9200-9207 */ +142, 151, 153, 147, 138, 129, 122, 119, /* 9208-9215 */ +119, 121, 124, 126, 129, 130, 132, 132, /* 9216-9223 */ +133, 133, 132, 130, 128, 127, 128, 129, /* 9224-9231 */ +127, 122, 114, 106, 101, 104, 113, 121, /* 9232-9239 */ +129, 137, 142, 145, 147, 148, 145, 139, /* 9240-9247 */ +131, 124, 119, 116, 116, 118, 121, 124, /* 9248-9255 */ +124, 124, 124, 124, 122, 116, 111, 108, /* 9256-9263 */ +110, 120, 137, 154, 166, 173, 167, 151, /* 9264-9271 */ +132, 116, 105, 101, 103, 111, 121, 132, /* 9272-9279 */ +142, 147, 148, 146, 139, 131, 125, 123, /* 9280-9287 */ +121, 118, 112, 107, 105, 109, 118, 133, /* 9288-9295 */ +145, 151, 148, 140, 130, 123, 121, 122, /* 9296-9303 */ +126, 129, 128, 123, 116, 109, 106, 108, /* 9304-9311 */ +113, 121, 130, 141, 150, 155, 151, 141, /* 9312-9319 */ +127, 115, 111, 116, 126, 136, 138, 136, /* 9320-9327 */ +131, 125, 121, 120, 121, 121, 120, 119, /* 9328-9335 */ +118, 121, 127, 134, 142, 149, 152, 151, /* 9336-9343 */ +142, 132, 119, 105, 95, 90, 96, 111, /* 9344-9351 */ +134, 155, 166, 165, 155, 141, 129, 121, /* 9352-9359 */ +119, 119, 118, 119, 117, 118, 122, 127, /* 9360-9367 */ +132, 135, 135, 133, 130, 130, 130, 128, /* 9368-9375 */ +124, 120, 117, 115, 116, 119, 123, 125, /* 9376-9383 */ +123, 121, 121, 126, 134, 141, 147, 148, /* 9384-9391 */ +142, 135, 128, 123, 121, 121, 122, 121, /* 9392-9399 */ +121, 122, 124, 126, 124, 120, 114, 110, /* 9400-9407 */ +110, 117, 131, 146, 156, 159, 158, 154, /* 9408-9415 */ +145, 132, 121, 110, 103, 101, 104, 114, /* 9416-9423 */ +127, 142, 153, 156, 152, 142, 134, 127, /* 9424-9431 */ +123, 118, 111, 106, 102, 104, 114, 128, /* 9432-9439 */ +142, 150, 151, 144, 134, 126, 122, 120, /* 9440-9447 */ +121, 123, 125, 127, 127, 126, 123, 119, /* 9448-9455 */ +117, 114, 115, 120, 131, 140, 143, 141, /* 9456-9463 */ +135, 126, 121, 123, 130, 138, 141, 137, /* 9464-9471 */ +133, 126, 122, 122, 122, 122, 122, 120, /* 9472-9479 */ +118, 119, 122, 128, 134, 139, 142, 144, /* 9480-9487 */ +146, 144, 135, 120, 105, 91, 86, 93, /* 9488-9495 */ +113, 138, 160, 170, 167, 156, 142, 132, /* 9496-9503 */ +124, 123, 122, 119, 117, 116, 117, 120, /* 9504-9511 */ +126, 132, 134, 133, 130, 130, 130, 127, /* 9512-9519 */ +123, 117, 114, 113, 119, 129, 137, 139, /* 9520-9527 */ +134, 126, 116, 113, 116, 123, 132, 138, /* 9528-9535 */ +141, 140, 135, 133, 130, 130, 130, 127, /* 9536-9543 */ +124, 124, 125, 127, 126, 121, 116, 112, /* 9544-9551 */ +110, 116, 127, 140, 148, 150, 146, 142, /* 9552-9559 */ +137, 135, 131, 125, 119, 112, 108, 107, /* 9560-9567 */ +115, 126, 137, 146, 149, 146, 141, 136, /* 9568-9575 */ +130, 123, 117, 109, 103, 104, 111, 125, /* 9576-9583 */ +138, 146, 148, 144, 137, 129, 123, 120, /* 9584-9591 */ +119, 119, 119, 121, 125, 129, 132, 133, /* 9592-9599 */ +132, 129, 124, 121, 122, 126, 126, 125, /* 9600-9607 */ +122, 120, 121, 127, 136, 143, 147, 145, /* 9608-9615 */ +138, 131, 125, 124, 124, 124, 123, 121, /* 9616-9623 */ +119, 118, 119, 123, 128, 130, 132, 133, /* 9624-9631 */ +136, 140, 139, 133, 123, 112, 102, 100, /* 9632-9639 */ +109, 124, 141, 151, 153, 150, 142, 135, /* 9640-9647 */ +131, 128, 125, 124, 122, 119, 119, 121, /* 9648-9655 */ +124, 129, 132, 132, 131, 130, 129, 126, /* 9656-9663 */ +121, 116, 111, 110, 116, 129, 142, 148, /* 9664-9671 */ +148, 140, 129, 118, 113, 114, 118, 123, /* 9672-9679 */ +127, 129, 131, 134, 136, 137, 138, 135, /* 9680-9687 */ +131, 127, 126, 126, 126, 122, 117, 112, /* 9688-9695 */ +111, 117, 126, 139, 146, 146, 142, 136, /* 9696-9703 */ +131, 129, 130, 130, 127, 122, 117, 114, /* 9704-9711 */ +114, 120, 128, 136, 140, 142, 142, 140, /* 9712-9719 */ +136, 129, 120, 112, 106, 105, 110, 122, /* 9720-9727 */ +134, 143, 145, 142, 137, 132, 127, 124, /* 9728-9735 */ +121, 118, 116, 116, 119, 125, 131, 136, /* 9736-9743 */ +138, 136, 132, 128, 125, 124, 121, 118, /* 9744-9751 */ +115, 113, 116, 125, 137, 145, 150, 147, /* 9752-9759 */ +141, 134, 129, 125, 125, 125, 125, 123, /* 9760-9767 */ +121, 121, 122, 124, 127, 128, 128, 127, /* 9768-9775 */ +128, 131, 133, 132, 129, 123, 117, 114, /* 9776-9783 */ +117, 122, 130, 136, 139, 140, 138, 136, /* 9784-9791 */ +134, 132, 129, 126, 123, 123, 122, 123, /* 9792-9799 */ +126, 129, 130, 130, 130, 129, 128, 126, /* 9800-9807 */ +123, 119, 116, 116, 119, 127, 136, 143, /* 9808-9815 */ +144, 140, 133, 126, 120, 116, 115, 116, /* 9816-9823 */ +119, 122, 125, 130, 134, 138, 140, 139, /* 9824-9831 */ +136, 132, 128, 126, 124, 122, 122, 121, /* 9832-9839 */ +120, 123, 128, 133, 137, 137, 134, 131, /* 9840-9847 */ +127, 126, 127, 128, 129, 127, 124, 120, /* 9848-9855 */ +119, 120, 122, 128, 133, 135, 136, 139, /* 9856-9863 */ +137, 133, 128, 124, 119, 118, 120, 123, /* 9864-9871 */ +127, 130, 131, 131, 129, 130, 130, 130, /* 9872-9879 */ +128, 125, 120, 116, 116, 120, 125, 132, /* 9880-9887 */ +136, 138, 135, 132, 129, 125, 121, 119, /* 9888-9895 */ +119, 121, 124, 128, 134, 139, 140, 138, /* 9896-9903 */ +134, 130, 128, 128, 128, 127, 126, 124, /* 9904-9911 */ +123, 124, 124, 126, 128, 129, 128, 126, /* 9912-9919 */ +125, 124, 126, 127, 128, 129, 130, 129, /* 9920-9927 */ +130, 128, 127, 125, 125, 126, 128, 132, /* 9928-9935 */ +134, 135, 134, 130, 127, 124, 123, 126, /* 9936-9943 */ +128, 129, 130, 129, 128, 127, 127, 126, /* 9944-9951 */ +124, 123, 122, 121, 123, 126, 130, 134, /* 9952-9959 */ +137, 137, 134, 130, 126, 123, 120, 116, /* 9960-9967 */ +114, 115, 118, 123, 129, 136, 140, 142, /* 9968-9975 */ +140, 137, 133, 129, 125, 122, 121, 122, /* 9976-9983 */ +123, 126, 128, 131, 133, 134, 132, 129, /* 9984-9991 */ +127, 127, 126, 127, 126, 126, 125, 125, /* 9992-9999 */ +125, 124, 126, 125, 127, 128, 131, 133, /* 10000-10007 */ +134, 134, 133, 130, 127, 125, 124, 126, /* 10008-10015 */ +127, 127, 127, 125, 125, 126, 128, 129, /* 10016-10023 */ +130, 129, 125, 121, 118, 118, 122, 126, /* 10024-10031 */ +130, 134, 136, 134, 132, 129, 125, 122, /* 10032-10039 */ +119, 119, 122, 126, 131, 135, 137, 137, /* 10040-10047 */ +135, 132, 130, 129, 129, 128, 126, 124, /* 10048-10055 */ +122, 124, 126, 127, 129, 130, 130, 128, /* 10056-10063 */ +125, 124, 122, 122, 123, 125, 128, 131, /* 10064-10071 */ +134, 135, 133, 129, 124, 121, 121, 124, /* 10072-10079 */ +128, 132, 134, 132, 129, 126, 125, 127, /* 10080-10087 */ +129, 131, 131, 130, 128, 127, 126, 124, /* 10088-10095 */ +124, 124, 124, 123, 125, 127, 128, 130, /* 10096-10103 */ +132, 132, 133, 132, 131, 129, 126, 121, /* 10104-10111 */ +117, 113, 113, 117, 124, 131, 137, 140, /* 10112-10119 */ +142, 140, 136, 133, 128, 125, 122, 121, /* 10120-10127 */ +121, 124, 128, 131, 132, 131, 131, 129, /* 10128-10135 */ +129, 127, 127, 127, 125, 124, 123, 124, /* 10136-10143 */ +126, 129, 130, 130, 129, 126, 126, 127, /* 10144-10151 */ +129, 130, 131, 132, 131, 130, 129, 129, /* 10152-10159 */ +129, 128, 127, 124, 123, 123, 126, 127, /* 10160-10167 */ +128, 128, 126, 124, 122, 122, 123, 124, /* 10168-10175 */ +127, 129, 131, 132, 133, 131, 129, 126, /* 10176-10183 */ +124, 121, 121, 124, 128, 131, 134, 134, /* 10184-10191 */ +135, 134, 132, 131, 130, 129, 127, 125, /* 10192-10199 */ +122, 122, 124, 127, 131, 132, 130, 129, /* 10200-10207 */ +127, 125, 122, 121, 120, 121, 124, 128, /* 10208-10215 */ +132, 136, 137, 136, 131, 126, 121, 120, /* 10216-10223 */ +122, 125, 129, 129, 130, 128, 128, 129, /* 10224-10231 */ +132, 133, 134, 133, 130, 127, 125, 124, /* 10232-10239 */ +122, 122, 123, 124, 126, 128, 129, 130, /* 10240-10247 */ +130, 129, 128, 129, 131, 132, 130, 127, /* 10248-10255 */ +123, 117, 114, 114, 119, 124, 130, 135, /* 10256-10263 */ +138, 138, 138, 136, 133, 129, 126, 123, /* 10264-10271 */ +121, 122, 125, 128, 131, 131, 129, 128, /* 10272-10279 */ +129, 129, 130, 129, 127, 123, 121, 121, /* 10280-10287 */ +124, 128, 132, 133, 133, 131, 127, 125, /* 10288-10295 */ +124, 125, 126, 127, 130, 132, 132, 133, /* 10296-10303 */ +132, 131, 129, 126, 124, 122, 123, 124, /* 10304-10311 */ +126, 125, 125, 125, 124, 126, 127, 128, /* 10312-10319 */ +128, 127, 126, 126, 129, 129, 130, 128, /* 10320-10327 */ +126, 126, 125, 124, 126, 128, 130, 131, /* 10328-10335 */ +132, 132, 132, 133, 132, 131, 129, 125, /* 10336-10343 */ +124, 122, 123, 126, 129, 132, 132, 130, /* 10344-10351 */ +129, 127, 125, 123, 122, 120, 121, 123, /* 10352-10359 */ +128, 132, 136, 137, 135, 132, 128, 124, /* 10360-10367 */ +121, 121, 122, 123, 124, 126, 129, 131, /* 10368-10375 */ +133, 134, 135, 134, 132, 129, 127, 124, /* 10376-10383 */ +123, 121, 121, 122, 125, 127, 130, 132, /* 10384-10391 */ +131, 129, 127, 126, 126, 129, 131, 130, /* 10392-10399 */ +127, 123, 119, 118, 117, 121, 125, 130, /* 10400-10407 */ +133, 136, 136, 136, 136, 133, 130, 127, /* 10408-10415 */ +125, 124, 124, 126, 127, 129, 128, 129, /* 10416-10423 */ +128, 129, 130, 129, 128, 125, 122, 120, /* 10424-10431 */ +123, 126, 130, 134, 134, 133, 130, 128, /* 10432-10439 */ +124, 122, 122, 124, 125, 127, 131, 134, /* 10440-10447 */ +136, 135, 132, 128, 126, 124, 124, 123, /* 10448-10455 */ +124, 124, 123, 123, 124, 127, 129, 132, /* 10456-10463 */ +132, 130, 127, 124, 124, 124, 126, 128, /* 10464-10471 */ +128, 127, 127, 128, 128, 128, 129, 129, /* 10472-10479 */ +129, 130, 130, 132, 133, 132, 129, 126, /* 10480-10487 */ +125, 124, 125, 127, 128, 129, 130, 131, /* 10488-10495 */ +130, 128, 126, 124, 123, 122, 121, 122, /* 10496-10503 */ +124, 128, 133, 136, 136, 135, 132, 130, /* 10504-10511 */ +127, 124, 121, 119, 118, 120, 123, 129, /* 10512-10519 */ +133, 136, 136, 135, 133, 131, 129, 126, /* 10520-10527 */ +124, 122, 121, 121, 124, 126, 129, 131, /* 10528-10535 */ +132, 131, 129, 126, 125, 125, 126, 128, /* 10536-10543 */ +127, 125, 123, 122, 122, 123, 125, 126, /* 10544-10551 */ +128, 129, 132, 134, 134, 134, 133, 131, /* 10552-10559 */ +129, 129, 129, 129, 127, 126, 125, 125, /* 10560-10567 */ +126, 127, 128, 128, 128, 126, 124, 123, /* 10568-10575 */ +123, 125, 128, 131, 133, 134, 132, 130, /* 10576-10583 */ +128, 125, 122, 121, 121, 124, 127, 132, /* 10584-10591 */ +135, 137, 135, 131, 129, 126, 126, 125, /* 10592-10599 */ +123, 122, 120, 120, 121, 124, 129, 132, /* 10600-10607 */ +134, 134, 132, 128, 124, 122, 121, 122, /* 10608-10615 */ +124, 126, 127, 129, 130, 130, 130, 128, /* 10616-10623 */ +128, 127, 129, 131, 132, 132, 129, 126, /* 10624-10631 */ +124, 124, 125, 128, 130, 131, 130, 129, /* 10632-10639 */ +128, 127, 126, 125, 125, 124, 124, 124, /* 10640-10647 */ +124, 126, 128, 131, 132, 132, 132, 132, /* 10648-10655 */ +131, 130, 126, 121, 118, 118, 120, 124, /* 10656-10663 */ +130, 134, 137, 136, 133, 131, 130, 128, /* 10664-10671 */ +127, 125, 124, 123, 123, 125, 127, 130, /* 10672-10679 */ +130, 130, 129, 127, 127, 126, 124, 124, /* 10680-10687 */ +124, 124, 125, 125, 127, 127, 128, 127, /* 10688-10695 */ +126, 126, 128, 129, 130, 131, 132, 131, /* 10696-10703 */ +131, 131, 131, 132, 131, 128, 125, 123, /* 10704-10711 */ +123, 124, 126, 127, 126, 126, 125, 124, /* 10712-10719 */ +125, 127, 129, 131, 131, 131, 132, 130, /* 10720-10727 */ +129, 127, 125, 123, 122, 123, 125, 129, /* 10728-10735 */ +132, 134, 135, 134, 131, 128, 126, 126, /* 10736-10743 */ +125, 123, 121, 120, 120, 123, 127, 130, /* 10744-10751 */ +134, 135, 135, 132, 129, 124, 121, 119, /* 10752-10759 */ +120, 122, 126, 129, 131, 132, 132, 130, /* 10760-10767 */ +127, 127, 128, 129, 130, 131, 129, 127, /* 10768-10775 */ +125, 125, 126, 127, 131, 132, 131, 130, /* 10776-10783 */ +128, 127, 126, 126, 125, 124, 124, 125, /* 10784-10791 */ +126, 128, 128, 129, 128, 128, 129, 131, /* 10792-10799 */ +132, 133, 131, 128, 123, 120, 118, 121, /* 10800-10807 */ +125, 130, 133, 135, 133, 131, 129, 127, /* 10808-10815 */ +127, 127, 127, 126, 126, 127, 128, 129, /* 10816-10823 */ +128, 128, 127, 127, 126, 127, 126, 124, /* 10824-10831 */ +122, 121, 122, 125, 128, 131, 132, 131, /* 10832-10839 */ +129, 126, 125, 125, 125, 127, 129, 130, /* 10840-10847 */ +131, 132, 133, 134, 134, 133, 129, 126, /* 10848-10855 */ +123, 124, 124, 125, 125, 124, 123, 123, /* 10856-10863 */ +126, 129, 132, 133, 132, 131, 130, 130, /* 10864-10871 */ +128, 127, 126, 125, 124, 123, 124, 127, /* 10872-10879 */ +130, 132, 133, 132, 131, 130, 128, 127, /* 10880-10887 */ +125, 124, 123, 122, 121, 124, 127, 130, /* 10888-10895 */ +132, 133, 133, 132, 130, 128, 125, 122, /* 10896-10903 */ +119, 119, 122, 126, 130, 132, 133, 131, /* 10904-10911 */ +129, 127, 126, 128, 129, 129, 128, 127, /* 10912-10919 */ +126, 126, 126, 129, 131, 132, 133, 132, /* 10920-10927 */ +129, 127, 125, 125, 125, 124, 124, 125, /* 10928-10935 */ +127, 128, 128, 129, 127, 126, 126, 129, /* 10936-10943 */ +131, 132, 131, 130, 128, 124, 122, 122, /* 10944-10951 */ +125, 127, 130, 131, 132, 131, 129, 127, /* 10952-10959 */ +125, 125, 126, 128, 129, 130, 131, 131, /* 10960-10967 */ +129, 127, 125, 125, 126, 126, 126, 125, /* 10968-10975 */ +123, 120, 120, 122, 127, 132, 134, 134, /* 10976-10983 */ +132, 129, 124, 122, 122, 124, 125, 127, /* 10984-10991 */ +130, 132, 134, 136, 135, 134, 132, 130, /* 10992-10999 */ +127, 125, 124, 124, 123, 122, 121, 121, /* 11000-11007 */ +123, 127, 130, 132, 133, 132, 130, 129, /* 11008-11015 */ +127, 127, 127, 126, 126, 126, 127, 127, /* 11016-11023 */ +128, 129, 130, 129, 129, 130, 129, 129, /* 11024-11031 */ +127, 125, 123, 122, 122, 125, 127, 130, /* 11032-11039 */ +132, 132, 131, 131, 130, 128, 127, 125, /* 11040-11047 */ +123, 122, 121, 123, 127, 131, 133, 133, /* 11048-11055 */ +130, 128, 127, 126, 126, 127, 127, 126, /* 11056-11063 */ +126, 126, 128, 130, 130, 132, 132, 132, /* 11064-11071 */ +131, 129, 127, 125, 124, 124, 125, 125, /* 11072-11079 */ +126, 128, 129, 128, 127, 125, 125, 125, /* 11080-11087 */ +128, 130, 131, 131, 129, 128, 127, 127, /* 11088-11095 */ +127, 128, 128, 128, 128, 127, 127, 126, /* 11096-11103 */ +125, 124, 125, 126, 129, 132, 134, 133, /* 11104-11111 */ +132, 129, 125, 123, 123, 125, 126, 125, /* 11112-11119 */ +124, 123, 121, 122, 125, 129, 133, 135, /* 11120-11127 */ +134, 131, 128, 125, 121, 121, 121, 124, /* 11128-11135 */ +126, 130, 134, 136, 135, 134, 132, 130, /* 11136-11143 */ +129, 128, 128, 127, 124, 122, 120, 120, /* 11144-11151 */ +122, 124, 127, 131, 132, 132, 131, 129, /* 11152-11159 */ +127, 126, 126, 126, 126, 128}; /* 11160-11165 */ + +//get and set the frequency from wav conversion tool GUI +int j=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_guitarjazz() +{ + + speaker = data_j[j]/255.0;//scale to 0.0 to 1.0 for PWM + j++; + if (j>= NUM_ELEMENTS) { + j = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kick.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,1347 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 07:32:06 PM +* FileName: kick_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 10523 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 10523 + +unsigned char data_k[NUM_ELEMENTS] = { +132, 131, 133, 131, 134, 131, 134, 131, /* 0-7 */ +132, 132, 128, 132, 126, 132, 119, 157, /* 8-15 */ +213, 205, 185, 255, 153, 179, 224, 226, /* 16-23 */ +231, 242, 252, 155, 189, 173, 194, 206, /* 24-31 */ +238, 219, 207, 230, 223, 224, 207, 138, /* 32-39 */ + 57, 14, 179, 194, 182, 220, 76, 249, /* 40-47 */ +199, 175, 178, 173, 154, 174, 172, 155, /* 48-55 */ +135, 161, 149, 170, 186, 209, 224, 24, /* 56-63 */ + 77, 118, 172, 196, 234, 10, 238, 252, /* 64-71 */ + 10, 8, 39, 3, 51, 98, 84, 68, /* 72-79 */ + 90, 70, 83, 108, 93, 96, 79, 82, /* 80-87 */ + 85, 115, 115, 109, 101, 104, 87, 80, /* 88-95 */ + 57, 9, 1, 235, 210, 163, 125, 66, /* 96-103 */ + 14, 2, 234, 206, 195, 165, 143, 146, /* 104-111 */ +172, 192, 190, 183, 182, 191, 202, 181, /* 112-119 */ +173, 182, 186, 199, 192, 224, 239, 250, /* 120-127 */ +215, 210, 217, 208, 226, 237, 4, 5, /* 128-135 */ + 23, 27, 20, 18, 46, 51, 71, 88, /* 136-143 */ +101, 115, 125, 177, 192, 205, 205, 186, /* 144-151 */ +178, 188, 191, 198, 213, 222, 211, 208, /* 152-159 */ +213, 222, 218, 198, 201, 192, 210, 208, /* 160-167 */ +186, 181, 174, 150, 163, 166, 159, 177, /* 168-175 */ +183, 193, 201, 224, 232, 250, 18, 33, /* 176-183 */ + 24, 10, 7, 16, 34, 14, 230, 228, /* 184-191 */ +240, 226, 211, 193, 177, 170, 156, 112, /* 192-199 */ + 90, 96, 92, 66, 50, 73, 64, 38, /* 200-207 */ + 37, 23, 0, 253, 244, 244, 10, 16, /* 208-215 */ + 17, 20, 36, 47, 52, 56, 54, 53, /* 216-223 */ + 66, 74, 78, 91, 81, 66, 72, 93, /* 224-231 */ + 93, 87, 100, 105, 100, 108, 125, 124, /* 232-239 */ +126, 137, 139, 131, 124, 128, 112, 108, /* 240-247 */ +122, 116, 115, 120, 105, 114, 121, 111, /* 248-255 */ +118, 130, 145, 134, 134, 136, 146, 159, /* 256-263 */ +163, 181, 206, 215, 249, 22, 22, 32, /* 264-271 */ + 43, 46, 37, 43, 35, 40, 38, 9, /* 272-279 */ + 1, 239, 223, 222, 203, 191, 162, 130, /* 280-287 */ +114, 90, 72, 53, 23, 1, 250, 248, /* 288-295 */ +238, 226, 218, 206, 221, 219, 220, 223, /* 296-303 */ +231, 241, 243, 250, 251, 248, 10, 37, /* 304-311 */ + 46, 74, 97, 114, 133, 162, 168, 182, /* 312-319 */ +191, 207, 220, 240, 8, 8, 4, 237, /* 320-327 */ +230, 218, 222, 217, 217, 214, 204, 203, /* 328-335 */ +211, 194, 167, 165, 154, 143, 130, 133, /* 336-343 */ +131, 129, 128, 116, 108, 107, 105, 106, /* 344-351 */ +107, 116, 129, 131, 125, 117, 123, 128, /* 352-359 */ +126, 142, 157, 154, 143, 134, 126, 116, /* 360-367 */ +110, 89, 79, 77, 72, 70, 59, 58, /* 368-375 */ + 40, 25, 28, 21, 26, 10, 5, 28, /* 376-383 */ + 33, 41, 57, 53, 64, 74, 86, 91, /* 384-391 */ + 86, 113, 129, 128, 126, 150, 180, 182, /* 392-399 */ +176, 184, 204, 197, 196, 201, 194, 211, /* 400-407 */ +219, 212, 208, 210, 204, 195, 196, 190, /* 408-415 */ +188, 180, 165, 155, 164, 147, 111, 105, /* 416-423 */ +104, 101, 91, 90, 94, 86, 87, 83, /* 424-431 */ + 77, 82, 94, 95, 91, 105, 112, 128, /* 432-439 */ +140, 142, 148, 155, 152, 146, 153, 147, /* 440-447 */ +153, 157, 173, 173, 160, 154, 150, 158, /* 448-455 */ +159, 159, 144, 145, 154, 159, 164, 172, /* 456-463 */ +176, 167, 168, 171, 151, 135, 118, 104, /* 464-471 */ + 96, 89, 95, 79, 62, 55, 51, 55, /* 472-479 */ + 57, 60, 71, 78, 78, 74, 71, 63, /* 480-487 */ + 72, 93, 116, 134, 139, 142, 123, 123, /* 488-495 */ +123, 119, 108, 105, 112, 112, 118, 110, /* 496-503 */ +109, 91, 87, 94, 90, 89, 99, 103, /* 504-511 */ +101, 100, 86, 101, 114, 120, 116, 113, /* 512-519 */ +122, 137, 142, 140, 150, 161, 173, 181, /* 520-527 */ +187, 190, 193, 195, 203, 212, 221, 218, /* 528-535 */ +223, 229, 233, 237, 220, 213, 213, 207, /* 536-543 */ +194, 184, 170, 158, 151, 138, 116, 94, /* 544-551 */ + 78, 78, 80, 74, 63, 53, 56, 52, /* 552-559 */ + 53, 52, 67, 71, 78, 82, 92, 111, /* 560-567 */ +123, 138, 141, 147, 141, 143, 140, 160, /* 568-575 */ +168, 166, 175, 176, 177, 180, 182, 172, /* 576-583 */ +169, 166, 167, 160, 149, 130, 116, 111, /* 584-591 */ +100, 88, 75, 70, 64, 62, 52, 47, /* 592-599 */ + 43, 49, 47, 31, 35, 37, 42, 52, /* 600-607 */ + 49, 57, 62, 67, 74, 80, 91, 95, /* 608-615 */ +102, 113, 121, 125, 138, 138, 140, 144, /* 616-623 */ +139, 147, 154, 161, 160, 164, 178, 183, /* 624-631 */ +188, 198, 198, 184, 183, 188, 177, 170, /* 632-639 */ +166, 170, 184, 194, 187, 180, 182, 175, /* 640-647 */ +165, 156, 153, 146, 137, 132, 115, 109, /* 648-655 */ +112, 117, 125, 118, 102, 104, 111, 118, /* 656-663 */ +115, 118, 119, 116, 118, 122, 125, 125, /* 664-671 */ +124, 127, 134, 138, 148, 146, 145, 136, /* 672-679 */ +138, 150, 144, 135, 135, 133, 127, 122, /* 680-687 */ +105, 108, 116, 113, 102, 99, 98, 97, /* 688-695 */ + 91, 92, 104, 107, 103, 94, 81, 81, /* 696-703 */ + 86, 82, 91, 94, 102, 97, 99, 108, /* 704-711 */ +111, 110, 111, 117, 125, 137, 140, 152, /* 712-719 */ +164, 178, 182, 195, 204, 200, 197, 196, /* 720-727 */ +200, 184, 167, 155, 148, 141, 129, 112, /* 728-735 */ +107, 98, 90, 89, 82, 81, 76, 85, /* 736-743 */ + 94, 92, 92, 91, 95, 105, 111, 108, /* 744-751 */ +114, 119, 127, 129, 129, 132, 131, 129, /* 752-759 */ +120, 125, 123, 129, 136, 123, 117, 114, /* 760-767 */ +120, 129, 137, 141, 141, 134, 140, 142, /* 768-775 */ +152, 151, 156, 160, 145, 142, 152, 160, /* 776-783 */ +151, 144, 143, 145, 136, 130, 131, 128, /* 784-791 */ +120, 115, 108, 108, 115, 116, 127, 129, /* 792-799 */ +128, 125, 124, 124, 124, 120, 113, 111, /* 800-807 */ +108, 102, 106, 115, 118, 118, 113, 114, /* 808-815 */ +115, 126, 133, 137, 131, 125, 137, 142, /* 816-823 */ +143, 147, 154, 157, 154, 149, 147, 146, /* 824-831 */ +147, 147, 143, 140, 138, 141, 140, 140, /* 832-839 */ +144, 142, 140, 141, 139, 129, 128, 130, /* 840-847 */ +133, 132, 127, 131, 130, 123, 127, 130, /* 848-855 */ +126, 128, 122, 117, 112, 114, 111, 106, /* 856-863 */ + 98, 89, 87, 84, 85, 80, 73, 61, /* 864-871 */ + 61, 62, 64, 70, 81, 88, 92, 100, /* 872-879 */ +108, 119, 128, 139, 148, 164, 173, 177, /* 880-887 */ +175, 186, 202, 209, 207, 202, 200, 193, /* 888-895 */ +187, 180, 177, 169, 162, 155, 146, 135, /* 896-903 */ +124, 115, 110, 101, 85, 81, 72, 68, /* 904-911 */ + 69, 70, 73, 72, 73, 75, 74, 76, /* 912-919 */ + 84, 95, 105, 109, 113, 117, 116, 121, /* 920-927 */ +130, 141, 152, 158, 155, 161, 174, 181, /* 928-935 */ +179, 179, 184, 179, 176, 172, 174, 173, /* 936-943 */ +171, 167, 158, 152, 150, 135, 128, 132, /* 944-951 */ +129, 124, 120, 123, 119, 119, 120, 115, /* 952-959 */ +113, 109, 104, 105, 106, 110, 104, 96, /* 960-967 */ + 96, 92, 93, 97, 96, 96, 101, 98, /* 968-975 */ +100, 107, 114, 117, 125, 122, 123, 124, /* 976-983 */ +120, 118, 112, 119, 116, 113, 113, 112, /* 984-991 */ +117, 116, 115, 114, 118, 118, 118, 117, /* 992-999 */ +124, 131, 128, 131, 134, 136, 138, 137, /* 1000-1007 */ +137, 139, 139, 136, 133, 131, 128, 128, /* 1008-1015 */ +129, 129, 128, 122, 115, 115, 121, 121, /* 1016-1023 */ +121, 127, 137, 144, 151, 162, 167, 175, /* 1024-1031 */ +185, 189, 195, 197, 195, 196, 190, 184, /* 1032-1039 */ +180, 175, 167, 156, 150, 145, 137, 123, /* 1040-1047 */ +115, 114, 101, 95, 88, 85, 87, 85, /* 1048-1055 */ + 85, 86, 87, 87, 86, 85, 88, 88, /* 1056-1063 */ + 85, 85, 85, 89, 92, 96, 101, 109, /* 1064-1071 */ +106, 102, 108, 111, 114, 111, 111, 112, /* 1072-1079 */ +110, 112, 109, 111, 110, 115, 118, 121, /* 1080-1087 */ +124, 126, 129, 131, 134, 140, 147, 149, /* 1088-1095 */ +149, 151, 158, 162, 162, 166, 162, 163, /* 1096-1103 */ +167, 166, 165, 160, 161, 162, 160, 160, /* 1104-1111 */ +158, 155, 156, 154, 154, 156, 152, 150, /* 1112-1119 */ +146, 137, 131, 131, 123, 113, 107, 101, /* 1120-1127 */ +100, 100, 95, 94, 97, 96, 95, 98, /* 1128-1135 */ +103, 108, 114, 122, 130, 134, 137, 142, /* 1136-1143 */ +145, 150, 155, 157, 158, 156, 153, 153, /* 1144-1151 */ +146, 144, 141, 133, 126, 123, 117, 115, /* 1152-1159 */ +110, 103, 105, 107, 104, 100, 99, 98, /* 1160-1167 */ + 93, 92, 94, 92, 89, 89, 92, 91, /* 1168-1175 */ + 89, 88, 87, 82, 81, 85, 87, 91, /* 1176-1183 */ + 94, 99, 104, 112, 123, 136, 145, 151, /* 1184-1191 */ +157, 167, 175, 179, 184, 187, 187, 187, /* 1192-1199 */ +185, 188, 185, 178, 175, 169, 167, 161, /* 1200-1207 */ +158, 155, 147, 146, 148, 143, 139, 135, /* 1208-1215 */ +131, 130, 127, 123, 118, 112, 110, 103, /* 1216-1223 */ + 97, 92, 87, 83, 80, 75, 69, 66, /* 1224-1231 */ + 67, 71, 72, 76, 81, 83, 90, 101, /* 1232-1239 */ +104, 112, 117, 119, 125, 138, 148, 150, /* 1240-1247 */ +157, 158, 160, 164, 164, 163, 164, 167, /* 1248-1255 */ +165, 161, 158, 160, 159, 154, 151, 144, /* 1256-1263 */ +139, 136, 132, 129, 126, 121, 118, 118, /* 1264-1271 */ +117, 111, 111, 117, 119, 124, 127, 126, /* 1272-1279 */ +129, 130, 128, 129, 130, 134, 136, 139, /* 1280-1287 */ +144, 143, 144, 140, 140, 138, 135, 132, /* 1288-1295 */ +132, 132, 130, 131, 130, 129, 124, 121, /* 1296-1303 */ +116, 110, 104, 100, 101, 100, 98, 98, /* 1304-1311 */ + 99, 97, 93, 93, 98, 99, 98, 101, /* 1312-1319 */ +101, 105, 109, 110, 115, 117, 115, 113, /* 1320-1327 */ +116, 118, 121, 124, 123, 126, 131, 134, /* 1328-1335 */ +134, 132, 136, 136, 135, 135, 134, 134, /* 1336-1343 */ +140, 140, 144, 145, 149, 155, 158, 164, /* 1344-1351 */ +166, 166, 170, 175, 175, 168, 160, 160, /* 1352-1359 */ +157, 154, 153, 148, 143, 140, 134, 130, /* 1360-1367 */ +125, 122, 119, 116, 112, 110, 107, 104, /* 1368-1375 */ +107, 107, 106, 103, 105, 107, 108, 109, /* 1376-1383 */ +108, 109, 111, 109, 110, 117, 118, 121, /* 1384-1391 */ +122, 126, 130, 132, 138, 138, 135, 138, /* 1392-1399 */ +141, 145, 149, 147, 144, 141, 137, 135, /* 1400-1407 */ +134, 133, 128, 123, 121, 117, 116, 116, /* 1408-1415 */ +117, 116, 118, 117, 115, 118, 119, 119, /* 1416-1423 */ +120, 122, 121, 123, 123, 120, 123, 128, /* 1424-1431 */ +128, 127, 129, 130, 129, 129, 128, 129, /* 1432-1439 */ +127, 129, 128, 124, 125, 121, 117, 118, /* 1440-1447 */ +123, 123, 123, 122, 123, 127, 132, 136, /* 1448-1455 */ +137, 140, 140, 138, 139, 139, 137, 135, /* 1456-1463 */ +134, 132, 130, 127, 123, 123, 122, 121, /* 1464-1471 */ +117, 115, 115, 112, 113, 114, 115, 114, /* 1472-1479 */ +113, 112, 108, 110, 108, 108, 107, 104, /* 1480-1487 */ +104, 107, 111, 113, 113, 116, 119, 124, /* 1488-1495 */ +131, 136, 140, 142, 140, 144, 147, 149, /* 1496-1503 */ +150, 147, 148, 151, 152, 152, 151, 154, /* 1504-1511 */ +155, 156, 155, 153, 150, 148, 146, 146, /* 1512-1519 */ +147, 145, 145, 142, 140, 138, 134, 132, /* 1520-1527 */ +132, 129, 129, 129, 129, 128, 125, 123, /* 1528-1535 */ +121, 124, 119, 115, 112, 110, 108, 106, /* 1536-1543 */ +103, 101, 99, 95, 93, 92, 93, 92, /* 1544-1551 */ + 96, 95, 95, 96, 98, 100, 99, 102, /* 1552-1559 */ +104, 108, 112, 115, 120, 122, 126, 127, /* 1560-1567 */ +130, 132, 132, 133, 136, 139, 137, 138, /* 1568-1575 */ +139, 138, 139, 140, 140, 143, 143, 143, /* 1576-1583 */ +144, 143, 143, 140, 137, 137, 137, 139, /* 1584-1591 */ +138, 138, 139, 139, 142, 139, 136, 138, /* 1592-1599 */ +141, 141, 139, 139, 141, 144, 145, 147, /* 1600-1607 */ +148, 149, 150, 147, 146, 146, 144, 140, /* 1608-1615 */ +135, 129, 126, 124, 120, 115, 109, 105, /* 1616-1623 */ +100, 98, 95, 93, 92, 91, 92, 95, /* 1624-1631 */ +100, 106, 108, 112, 119, 124, 128, 133, /* 1632-1639 */ +137, 138, 141, 141, 141, 138, 134, 131, /* 1640-1647 */ +129, 128, 125, 119, 112, 112, 114, 112, /* 1648-1655 */ +110, 110, 108, 107, 110, 113, 115, 116, /* 1656-1663 */ +118, 121, 122, 125, 128, 134, 137, 139, /* 1664-1671 */ +143, 147, 148, 149, 152, 154, 155, 154, /* 1672-1679 */ +154, 156, 157, 157, 155, 153, 152, 151, /* 1680-1687 */ +149, 147, 145, 142, 139, 133, 129, 123, /* 1688-1695 */ +118, 116, 113, 111, 108, 104, 104, 103, /* 1696-1703 */ +103, 102, 102, 105, 108, 110, 114, 115, /* 1704-1711 */ +118, 123, 125, 126, 128, 130, 131, 134, /* 1712-1719 */ +136, 136, 138, 139, 140, 139, 140, 138, /* 1720-1727 */ +137, 135, 136, 136, 132, 129, 127, 123, /* 1728-1735 */ +118, 113, 111, 109, 106, 104, 104, 101, /* 1736-1743 */ +102, 103, 102, 105, 109, 111, 112, 114, /* 1744-1751 */ +117, 120, 124, 125, 124, 124, 124, 124, /* 1752-1759 */ +124, 126, 127, 129, 128, 128, 126, 129, /* 1760-1767 */ +132, 134, 135, 136, 136, 139, 145, 147, /* 1768-1775 */ +151, 152, 154, 156, 159, 161, 160, 161, /* 1776-1783 */ +159, 155, 153, 151, 150, 148, 145, 143, /* 1784-1791 */ +139, 136, 131, 128, 124, 120, 117, 112, /* 1792-1799 */ +108, 103, 100, 97, 94, 91, 86, 82, /* 1800-1807 */ + 81, 80, 82, 83, 86, 90, 95, 99, /* 1808-1815 */ +103, 110, 116, 119, 123, 130, 135, 139, /* 1816-1823 */ +143, 149, 154, 158, 159, 160, 160, 160, /* 1824-1831 */ +160, 158, 158, 155, 152, 151, 146, 144, /* 1832-1839 */ +141, 137, 135, 135, 132, 130, 129, 129, /* 1840-1847 */ +128, 126, 124, 122, 123, 123, 122, 122, /* 1848-1855 */ +121, 121, 120, 118, 117, 115, 114, 115, /* 1856-1863 */ +116, 115, 114, 112, 110, 111, 111, 110, /* 1864-1871 */ +112, 113, 113, 114, 116, 118, 121, 124, /* 1872-1879 */ +127, 130, 132, 136, 137, 140, 144, 147, /* 1880-1887 */ +148, 151, 153, 153, 152, 149, 146, 143, /* 1888-1895 */ +139, 137, 135, 132, 129, 125, 124, 121, /* 1896-1903 */ +119, 115, 113, 111, 109, 108, 109, 110, /* 1904-1911 */ +110, 110, 109, 112, 114, 116, 118, 121, /* 1912-1919 */ +122, 124, 128, 131, 132, 135, 137, 138, /* 1920-1927 */ +138, 138, 139, 141, 140, 140, 140, 140, /* 1928-1935 */ +139, 136, 133, 132, 131, 130, 126, 126, /* 1936-1943 */ +125, 126, 124, 121, 122, 123, 123, 122, /* 1944-1951 */ +123, 123, 121, 122, 123, 120, 119, 120, /* 1952-1959 */ +121, 121, 122, 123, 125, 127, 129, 130, /* 1960-1967 */ +131, 132, 134, 135, 134, 131, 131, 132, /* 1968-1975 */ +130, 129, 127, 125, 125, 124, 124, 125, /* 1976-1983 */ +125, 127, 128, 128, 129, 129, 131, 134, /* 1984-1991 */ +136, 136, 137, 135, 134, 134, 136, 137, /* 1992-1999 */ +134, 131, 129, 127, 123, 122, 122, 122, /* 2000-2007 */ +119, 119, 120, 119, 118, 118, 118, 117, /* 2008-2015 */ +115, 114, 113, 111, 112, 111, 109, 110, /* 2016-2023 */ +111, 112, 114, 117, 118, 119, 121, 122, /* 2024-2031 */ +124, 127, 130, 131, 131, 132, 134, 136, /* 2032-2039 */ +139, 141, 143, 142, 142, 142, 142, 142, /* 2040-2047 */ +141, 139, 137, 135, 132, 130, 129, 128, /* 2048-2055 */ +129, 129, 128, 129, 128, 128, 128, 128, /* 2056-2063 */ +126, 124, 123, 122, 122, 121, 119, 117, /* 2064-2071 */ +117, 114, 113, 114, 114, 115, 116, 116, /* 2072-2079 */ +118, 118, 122, 124, 126, 129, 131, 134, /* 2080-2087 */ +136, 139, 140, 142, 143, 145, 148, 149, /* 2088-2095 */ +150, 152, 152, 152, 152, 153, 156, 156, /* 2096-2103 */ +155, 153, 151, 148, 143, 140, 136, 133, /* 2104-2111 */ +129, 122, 118, 112, 108, 101, 96, 91, /* 2112-2119 */ + 86, 81, 77, 73, 73, 73, 75, 76, /* 2120-2127 */ + 78, 81, 85, 92, 98, 103, 111, 117, /* 2128-2135 */ +122, 127, 133, 137, 141, 147, 150, 155, /* 2136-2143 */ +158, 161, 164, 167, 168, 169, 171, 170, /* 2144-2151 */ +170, 168, 166, 163, 159, 155, 152, 147, /* 2152-2159 */ +141, 136, 132, 127, 122, 118, 113, 110, /* 2160-2167 */ +108, 107, 106, 105, 104, 105, 106, 107, /* 2168-2175 */ +108, 110, 112, 111, 113, 116, 116, 118, /* 2176-2183 */ +120, 123, 126, 126, 127, 128, 128, 130, /* 2184-2191 */ +131, 132, 131, 131, 129, 129, 130, 131, /* 2192-2199 */ +130, 130, 131, 130, 132, 134, 135, 136, /* 2200-2207 */ +138, 137, 138, 137, 136, 137, 137, 136, /* 2208-2215 */ +133, 132, 129, 127, 126, 124, 123, 121, /* 2216-2223 */ +118, 117, 113, 112, 112, 110, 108, 107, /* 2224-2231 */ +106, 106, 106, 108, 109, 111, 113, 116, /* 2232-2239 */ +119, 122, 127, 131, 133, 135, 139, 142, /* 2240-2247 */ +146, 148, 150, 152, 153, 153, 153, 151, /* 2248-2255 */ +149, 148, 148, 143, 140, 136, 133, 129, /* 2256-2263 */ +126, 123, 120, 118, 117, 116, 113, 114, /* 2264-2271 */ +114, 113, 114, 113, 114, 114, 115, 116, /* 2272-2279 */ +116, 116, 116, 117, 117, 119, 120, 124, /* 2280-2287 */ +126, 127, 130, 132, 136, 138, 140, 140, /* 2288-2295 */ +141, 141, 141, 140, 138, 137, 134, 131, /* 2296-2303 */ +128, 127, 124, 122, 121, 120, 119, 117, /* 2304-2311 */ +117, 119, 120, 120, 120, 120, 121, 122, /* 2312-2319 */ +122, 123, 122, 122, 120, 119, 119, 118, /* 2320-2327 */ +116, 116, 116, 114, 114, 114, 114, 115, /* 2328-2335 */ +115, 117, 120, 122, 124, 126, 129, 132, /* 2336-2343 */ +136, 139, 142, 145, 146, 149, 151, 153, /* 2344-2351 */ +153, 153, 152, 152, 152, 151, 151, 150, /* 2352-2359 */ +149, 147, 146, 144, 142, 139, 137, 134, /* 2360-2367 */ +130, 127, 125, 122, 117, 114, 111, 107, /* 2368-2375 */ +103, 101, 100, 98, 96, 95, 96, 97, /* 2376-2383 */ + 98, 102, 104, 109, 111, 115, 119, 123, /* 2384-2391 */ +127, 131, 135, 137, 138, 139, 141, 142, /* 2392-2399 */ +142, 142, 142, 141, 139, 138, 137, 136, /* 2400-2407 */ +134, 134, 132, 132, 133, 132, 131, 129, /* 2408-2415 */ +129, 128, 128, 127, 127, 127, 125, 124, /* 2416-2423 */ +124, 122, 120, 119, 118, 118, 118, 118, /* 2424-2431 */ +117, 118, 118, 119, 119, 121, 120, 120, /* 2432-2439 */ +121, 120, 120, 120, 120, 120, 121, 122, /* 2440-2447 */ +121, 123, 124, 125, 129, 131, 133, 136, /* 2448-2455 */ +138, 141, 145, 149, 151, 152, 153, 154, /* 2456-2463 */ +156, 155, 154, 152, 151, 149, 146, 144, /* 2464-2471 */ +139, 135, 132, 129, 126, 122, 119, 118, /* 2472-2479 */ +116, 114, 113, 112, 111, 110, 109, 109, /* 2480-2487 */ +109, 108, 107, 105, 103, 103, 103, 103, /* 2488-2495 */ +104, 104, 107, 109, 111, 113, 114, 117, /* 2496-2503 */ +120, 123, 124, 127, 130, 130, 131, 132, /* 2504-2511 */ +133, 133, 132, 134, 135, 135, 135, 135, /* 2512-2519 */ +134, 134, 135, 136, 136, 136, 136, 136, /* 2520-2527 */ +137, 138, 139, 139, 139, 140, 139, 139, /* 2528-2535 */ +138, 137, 136, 135, 133, 132, 131, 129, /* 2536-2543 */ +127, 125, 124, 122, 122, 121, 121, 120, /* 2544-2551 */ +120, 120, 122, 123, 124, 125, 127, 128, /* 2552-2559 */ +129, 131, 131, 132, 131, 132, 131, 132, /* 2560-2567 */ +132, 131, 131, 131, 131, 130, 130, 130, /* 2568-2575 */ +129, 127, 126, 125, 122, 121, 119, 117, /* 2576-2583 */ +114, 112, 109, 107, 106, 104, 104, 104, /* 2584-2591 */ +104, 103, 105, 106, 108, 109, 112, 114, /* 2592-2599 */ +118, 120, 123, 127, 130, 132, 136, 140, /* 2600-2607 */ +143, 146, 148, 149, 152, 153, 153, 154, /* 2608-2615 */ +153, 152, 150, 148, 146, 143, 141, 138, /* 2616-2623 */ +136, 134, 131, 129, 128, 128, 126, 126, /* 2624-2631 */ +124, 123, 122, 121, 121, 121, 120, 119, /* 2632-2639 */ +119, 119, 119, 119, 119, 120, 120, 120, /* 2640-2647 */ +120, 120, 120, 122, 122, 122, 123, 124, /* 2648-2655 */ +124, 126, 126, 127, 129, 130, 132, 133, /* 2656-2663 */ +133, 134, 135, 136, 137, 137, 136, 137, /* 2664-2671 */ +136, 135, 134, 134, 132, 131, 129, 127, /* 2672-2679 */ +125, 124, 122, 120, 118, 116, 114, 113, /* 2680-2687 */ +111, 109, 108, 108, 109, 109, 110, 110, /* 2688-2695 */ +112, 113, 115, 117, 120, 123, 125, 126, /* 2696-2703 */ +127, 130, 131, 133, 135, 136, 137, 138, /* 2704-2711 */ +140, 143, 145, 145, 148, 150, 151, 151, /* 2712-2719 */ +151, 152, 151, 150, 148, 145, 142, 139, /* 2720-2727 */ +136, 133, 129, 127, 124, 122, 119, 117, /* 2728-2735 */ +117, 116, 115, 113, 112, 112, 113, 112, /* 2736-2743 */ +112, 113, 113, 113, 113, 113, 113, 114, /* 2744-2751 */ +114, 115, 114, 115, 115, 115, 114, 115, /* 2752-2759 */ +116, 117, 117, 118, 119, 120, 122, 123, /* 2760-2767 */ +125, 126, 129, 131, 134, 135, 138, 139, /* 2768-2775 */ +141, 142, 144, 145, 146, 146, 146, 146, /* 2776-2783 */ +146, 146, 145, 145, 144, 142, 142, 141, /* 2784-2791 */ +139, 138, 135, 132, 131, 128, 126, 123, /* 2792-2799 */ +120, 118, 116, 114, 112, 110, 107, 107, /* 2800-2807 */ +107, 108, 109, 109, 110, 112, 115, 118, /* 2808-2815 */ +119, 120, 121, 124, 125, 127, 128, 131, /* 2816-2823 */ +132, 132, 133, 133, 133, 134, 133, 132, /* 2824-2831 */ +132, 131, 130, 131, 131, 129, 129, 127, /* 2832-2839 */ +127, 127, 127, 128, 127, 127, 127, 127, /* 2840-2847 */ +127, 127, 128, 128, 128, 129, 128, 128, /* 2848-2855 */ +129, 129, 130, 131, 131, 132, 132, 132, /* 2856-2863 */ +132, 133, 133, 132, 132, 132, 131, 131, /* 2864-2871 */ +130, 130, 130, 129, 129, 128, 128, 127, /* 2872-2879 */ +127, 126, 126, 125, 125, 124, 125, 124, /* 2880-2887 */ +123, 122, 121, 120, 119, 118, 118, 118, /* 2888-2895 */ +116, 116, 116, 117, 117, 117, 118, 119, /* 2896-2903 */ +120, 119, 121, 122, 123, 123, 124, 125, /* 2904-2911 */ +126, 126, 127, 128, 129, 129, 131, 132, /* 2912-2919 */ +133, 133, 134, 135, 136, 136, 137, 137, /* 2920-2927 */ +137, 138, 136, 136, 136, 136, 136, 135, /* 2928-2935 */ +135, 134, 133, 132, 131, 130, 129, 128, /* 2936-2943 */ +128, 128, 127, 127, 126, 127, 127, 127, /* 2944-2951 */ +128, 130, 130, 132, 133, 133, 134, 135, /* 2952-2959 */ +136, 136, 134, 134, 132, 132, 130, 128, /* 2960-2967 */ +126, 124, 123, 121, 119, 118, 117, 117, /* 2968-2975 */ +115, 115, 114, 112, 112, 111, 111, 111, /* 2976-2983 */ +110, 110, 111, 111, 109, 110, 111, 111, /* 2984-2991 */ +112, 113, 115, 117, 120, 122, 124, 127, /* 2992-2999 */ +129, 132, 134, 137, 138, 138, 139, 138, /* 3000-3007 */ +139, 139, 139, 138, 138, 137, 136, 136, /* 3008-3015 */ +135, 135, 135, 134, 134, 133, 133, 133, /* 3016-3023 */ +132, 132, 131, 132, 131, 132, 132, 133, /* 3024-3031 */ +134, 135, 135, 135, 136, 137, 137, 137, /* 3032-3039 */ +136, 136, 135, 135, 134, 134, 134, 134, /* 3040-3047 */ +134, 133, 132, 130, 129, 127, 126, 124, /* 3048-3055 */ +122, 120, 118, 116, 114, 112, 111, 109, /* 3056-3063 */ +107, 106, 104, 104, 104, 104, 104, 103, /* 3064-3071 */ +103, 103, 104, 104, 104, 105, 105, 106, /* 3072-3079 */ +109, 109, 111, 114, 117, 119, 122, 126, /* 3080-3087 */ +129, 132, 135, 139, 142, 145, 148, 150, /* 3088-3095 */ +152, 155, 156, 157, 158, 158, 157, 157, /* 3096-3103 */ +156, 156, 154, 152, 151, 149, 147, 143, /* 3104-3111 */ +141, 138, 136, 134, 131, 129, 128, 126, /* 3112-3119 */ +123, 123, 122, 120, 120, 119, 117, 117, /* 3120-3127 */ +116, 116, 115, 115, 114, 114, 114, 114, /* 3128-3135 */ +115, 116, 116, 117, 118, 119, 120, 120, /* 3136-3143 */ +121, 122, 121, 122, 122, 121, 122, 121, /* 3144-3151 */ +120, 119, 119, 119, 118, 118, 118, 117, /* 3152-3159 */ +118, 118, 118, 119, 119, 120, 122, 123, /* 3160-3167 */ +123, 125, 127, 127, 128, 129, 130, 131, /* 3168-3175 */ +133, 134, 134, 135, 136, 136, 137, 137, /* 3176-3183 */ +138, 138, 137, 137, 137, 137, 137, 137, /* 3184-3191 */ +137, 136, 135, 135, 134, 134, 133, 134, /* 3192-3199 */ +133, 134, 133, 134, 133, 134, 133, 133, /* 3200-3207 */ +133, 133, 133, 133, 132, 132, 132, 132, /* 3208-3215 */ +131, 130, 130, 129, 127, 126, 125, 124, /* 3216-3223 */ +122, 120, 118, 117, 116, 116, 114, 115, /* 3224-3231 */ +115, 114, 114, 114, 114, 115, 116, 116, /* 3232-3239 */ +117, 117, 117, 118, 118, 118, 118, 119, /* 3240-3247 */ +118, 118, 120, 120, 120, 120, 122, 122, /* 3248-3255 */ +122, 123, 124, 125, 126, 127, 129, 130, /* 3256-3263 */ +132, 133, 135, 137, 138, 140, 140, 141, /* 3264-3271 */ +142, 143, 143, 144, 144, 143, 144, 144, /* 3272-3279 */ +143, 142, 142, 140, 139, 137, 135, 133, /* 3280-3287 */ +131, 130, 129, 127, 125, 123, 121, 120, /* 3288-3295 */ +119, 119, 119, 117, 117, 116, 117, 117, /* 3296-3303 */ +118, 118, 118, 118, 117, 118, 118, 119, /* 3304-3311 */ +118, 118, 119, 119, 119, 120, 120, 120, /* 3312-3319 */ +122, 123, 124, 125, 125, 126, 127, 128, /* 3320-3327 */ +128, 128, 129, 128, 128, 128, 129, 128, /* 3328-3335 */ +127, 128, 128, 127, 129, 129, 129, 129, /* 3336-3343 */ +129, 129, 129, 130, 130, 130, 131, 131, /* 3344-3351 */ +131, 132, 133, 133, 134, 134, 134, 134, /* 3352-3359 */ +134, 134, 134, 133, 133, 133, 132, 131, /* 3360-3367 */ +131, 130, 130, 131, 131, 131, 132, 132, /* 3368-3375 */ +132, 131, 132, 131, 130, 130, 128, 126, /* 3376-3383 */ +124, 123, 120, 118, 116, 114, 113, 113, /* 3384-3391 */ +111, 111, 111, 111, 111, 111, 112, 114, /* 3392-3399 */ +114, 115, 115, 117, 119, 120, 122, 123, /* 3400-3407 */ +125, 126, 128, 130, 132, 134, 135, 138, /* 3408-3415 */ +140, 142, 143, 145, 147, 147, 147, 147, /* 3416-3423 */ +146, 145, 144, 143, 140, 138, 136, 135, /* 3424-3431 */ +132, 130, 128, 126, 123, 122, 121, 120, /* 3432-3439 */ +119, 119, 118, 117, 117, 117, 117, 117, /* 3440-3447 */ +117, 118, 118, 120, 121, 122, 122, 124, /* 3448-3455 */ +125, 124, 124, 125, 125, 125, 126, 126, /* 3456-3463 */ +126, 126, 127, 128, 128, 129, 129, 130, /* 3464-3471 */ +130, 130, 130, 130, 129, 129, 130, 130, /* 3472-3479 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 3480-3487 */ +128, 128, 127, 127, 126, 125, 125, 124, /* 3488-3495 */ +122, 121, 120, 120, 119, 119, 118, 118, /* 3496-3503 */ +118, 119, 120, 120, 122, 123, 125, 127, /* 3504-3511 */ +128, 130, 132, 134, 137, 139, 141, 142, /* 3512-3519 */ +144, 145, 146, 147, 147, 148, 148, 148, /* 3520-3527 */ +148, 147, 146, 144, 141, 139, 137, 134, /* 3528-3535 */ +131, 129, 126, 123, 120, 118, 114, 111, /* 3536-3543 */ +109, 107, 106, 104, 102, 101, 100, 99, /* 3544-3551 */ +100, 100, 101, 102, 104, 106, 108, 110, /* 3552-3559 */ +113, 115, 118, 122, 124, 127, 129, 131, /* 3560-3567 */ +132, 134, 134, 136, 136, 137, 138, 138, /* 3568-3575 */ +138, 139, 140, 140, 140, 140, 140, 140, /* 3576-3583 */ +139, 138, 138, 138, 137, 136, 135, 134, /* 3584-3591 */ +132, 132, 130, 130, 129, 129, 129, 129, /* 3592-3599 */ +129, 129, 130, 130, 131, 130, 131, 131, /* 3600-3607 */ +132, 132, 132, 131, 132, 132, 132, 131, /* 3608-3615 */ +131, 131, 130, 129, 128, 127, 126, 125, /* 3616-3623 */ +125, 123, 122, 121, 120, 120, 119, 119, /* 3624-3631 */ +119, 119, 119, 118, 119, 119, 118, 118, /* 3632-3639 */ +117, 116, 115, 114, 114, 112, 111, 111, /* 3640-3647 */ +111, 111, 112, 112, 114, 115, 117, 118, /* 3648-3655 */ +121, 123, 126, 128, 130, 133, 135, 136, /* 3656-3663 */ +138, 140, 141, 142, 142, 143, 144, 144, /* 3664-3671 */ +144, 144, 143, 143, 143, 143, 143, 141, /* 3672-3679 */ +141, 139, 139, 138, 137, 136, 135, 133, /* 3680-3687 */ +133, 131, 130, 129, 128, 127, 125, 125, /* 3688-3695 */ +124, 123, 123, 123, 122, 122, 122, 121, /* 3696-3703 */ +121, 121, 121, 121, 121, 121, 121, 122, /* 3704-3711 */ +121, 121, 121, 120, 120, 119, 119, 119, /* 3712-3719 */ +118, 118, 118, 118, 119, 119, 120, 121, /* 3720-3727 */ +122, 124, 124, 124, 126, 126, 127, 128, /* 3728-3735 */ +128, 128, 128, 129, 129, 129, 129, 130, /* 3736-3743 */ +130, 129, 130, 130, 129, 129, 128, 128, /* 3744-3751 */ +127, 127, 126, 126, 125, 125, 125, 125, /* 3752-3759 */ +125, 125, 125, 125, 126, 126, 128, 130, /* 3760-3767 */ +130, 131, 133, 135, 136, 138, 139, 140, /* 3768-3775 */ +141, 142, 142, 142, 141, 141, 140, 140, /* 3776-3783 */ +139, 137, 136, 135, 134, 132, 131, 130, /* 3784-3791 */ +129, 128, 127, 125, 124, 123, 123, 121, /* 3792-3799 */ +120, 120, 118, 117, 116, 115, 113, 113, /* 3800-3807 */ +111, 111, 110, 110, 110, 110, 110, 110, /* 3808-3815 */ +111, 111, 112, 114, 114, 115, 117, 118, /* 3816-3823 */ +119, 120, 121, 122, 123, 125, 126, 127, /* 3824-3831 */ +128, 130, 132, 134, 135, 137, 139, 141, /* 3832-3839 */ +143, 145, 147, 148, 150, 151, 151, 151, /* 3840-3847 */ +150, 150, 149, 147, 145, 142, 140, 136, /* 3848-3855 */ +134, 131, 127, 125, 122, 119, 117, 115, /* 3856-3863 */ +114, 113, 112, 112, 112, 112, 113, 113, /* 3864-3871 */ +114, 116, 116, 117, 118, 119, 120, 121, /* 3872-3879 */ +123, 123, 124, 125, 126, 127, 128, 130, /* 3880-3887 */ +130, 132, 132, 134, 134, 134, 136, 135, /* 3888-3895 */ +135, 134, 134, 133, 131, 130, 129, 127, /* 3896-3903 */ +125, 124, 122, 122, 121, 120, 119, 119, /* 3904-3911 */ +120, 120, 120, 121, 121, 123, 123, 124, /* 3912-3919 */ +124, 125, 126, 126, 128, 128, 128, 129, /* 3920-3927 */ +130, 130, 131, 131, 132, 132, 132, 133, /* 3928-3935 */ +133, 134, 134, 134, 134, 135, 135, 135, /* 3936-3943 */ +135, 134, 134, 133, 133, 131, 131, 129, /* 3944-3951 */ +128, 127, 126, 125, 124, 123, 122, 121, /* 3952-3959 */ +120, 120, 119, 118, 118, 118, 117, 117, /* 3960-3967 */ +117, 118, 118, 118, 118, 119, 120, 121, /* 3968-3975 */ +122, 124, 126, 127, 129, 131, 133, 135, /* 3976-3983 */ +137, 139, 139, 141, 142, 142, 143, 141, /* 3984-3991 */ +141, 140, 138, 136, 134, 132, 130, 127, /* 3992-3999 */ +125, 124, 122, 120, 119, 119, 117, 116, /* 4000-4007 */ +116, 116, 116, 116, 116, 116, 116, 117, /* 4008-4015 */ +118, 118, 120, 120, 121, 121, 123, 125, /* 4016-4023 */ +126, 127, 128, 130, 130, 132, 132, 134, /* 4024-4031 */ +135, 136, 136, 136, 136, 136, 136, 135, /* 4032-4039 */ +134, 133, 133, 131, 129, 129, 127, 126, /* 4040-4047 */ +125, 124, 124, 124, 123, 123, 123, 125, /* 4048-4055 */ +125, 126, 126, 126, 127, 127, 127, 127, /* 4056-4063 */ +126, 125, 125, 123, 123, 121, 121, 121, /* 4064-4071 */ +119, 119, 119, 120, 121, 121, 123, 123, /* 4072-4079 */ +125, 126, 127, 128, 128, 130, 131, 131, /* 4080-4087 */ +133, 134, 135, 136, 137, 138, 140, 140, /* 4088-4095 */ +140, 140, 141, 140, 140, 138, 138, 137, /* 4096-4103 */ +135, 134, 132, 130, 129, 127, 124, 122, /* 4104-4111 */ +120, 117, 115, 114, 112, 110, 109, 108, /* 4112-4119 */ +108, 108, 108, 108, 110, 111, 113, 115, /* 4120-4127 */ +116, 119, 121, 123, 125, 127, 128, 130, /* 4128-4135 */ +131, 131, 132, 133, 134, 133, 133, 133, /* 4136-4143 */ +133, 133, 133, 133, 133, 133, 133, 133, /* 4144-4151 */ +134, 134, 134, 134, 134, 134, 134, 134, /* 4152-4159 */ +134, 134, 134, 134, 133, 133, 133, 133, /* 4160-4167 */ +133, 133, 132, 132, 131, 131, 129, 128, /* 4168-4175 */ +127, 127, 126, 125, 124, 123, 122, 121, /* 4176-4183 */ +120, 119, 119, 118, 118, 118, 118, 118, /* 4184-4191 */ +119, 119, 120, 121, 123, 124, 125, 126, /* 4192-4199 */ +127, 128, 129, 130, 130, 129, 129, 129, /* 4200-4207 */ +129, 129, 129, 127, 127, 126, 125, 124, /* 4208-4215 */ +123, 122, 122, 121, 121, 120, 121, 121, /* 4216-4223 */ +120, 120, 121, 121, 122, 123, 124, 126, /* 4224-4231 */ +126, 128, 130, 132, 132, 134, 136, 137, /* 4232-4239 */ +138, 139, 140, 140, 141, 141, 141, 139, /* 4240-4247 */ +139, 138, 136, 134, 134, 132, 130, 128, /* 4248-4255 */ +127, 125, 123, 122, 121, 120, 120, 119, /* 4256-4263 */ +119, 119, 120, 120, 121, 122, 122, 124, /* 4264-4271 */ +124, 126, 126, 126, 127, 128, 128, 128, /* 4272-4279 */ +127, 127, 127, 127, 126, 126, 126, 125, /* 4280-4287 */ +125, 125, 125, 126, 126, 127, 128, 128, /* 4288-4295 */ +129, 129, 129, 130, 130, 130, 129, 129, /* 4296-4303 */ +129, 128, 128, 128, 128, 128, 127, 127, /* 4304-4311 */ +127, 127, 127, 125, 125, 124, 123, 123, /* 4312-4319 */ +122, 122, 121, 119, 119, 119, 118, 118, /* 4320-4327 */ +118, 118, 118, 119, 120, 121, 122, 123, /* 4328-4335 */ +125, 126, 129, 131, 132, 134, 135, 137, /* 4336-4343 */ +138, 139, 140, 140, 141, 141, 141, 141, /* 4344-4351 */ +139, 139, 137, 137, 136, 134, 133, 131, /* 4352-4359 */ +130, 129, 129, 127, 126, 125, 125, 123, /* 4360-4367 */ +122, 122, 122, 122, 121, 121, 121, 121, /* 4368-4375 */ +121, 121, 121, 121, 121, 121, 122, 122, /* 4376-4383 */ +122, 123, 123, 123, 123, 124, 123, 122, /* 4384-4391 */ +122, 122, 121, 121, 121, 120, 120, 120, /* 4392-4399 */ +120, 120, 122, 122, 124, 126, 126, 128, /* 4400-4407 */ +130, 132, 134, 136, 137, 138, 139, 139, /* 4408-4415 */ +141, 141, 140, 140, 139, 138, 136, 136, /* 4416-4423 */ +134, 133, 131, 130, 128, 127, 126, 124, /* 4424-4431 */ +123, 121, 121, 119, 119, 117, 117, 117, /* 4432-4439 */ +117, 116, 117, 117, 117, 118, 118, 120, /* 4440-4447 */ +120, 122, 123, 125, 127, 129, 131, 132, /* 4448-4455 */ +134, 135, 137, 138, 139, 140, 141, 141, /* 4456-4463 */ +141, 141, 139, 139, 137, 135, 133, 132, /* 4464-4471 */ +131, 129, 127, 127, 125, 125, 123, 123, /* 4472-4479 */ +122, 121, 121, 121, 120, 119, 119, 119, /* 4480-4487 */ +119, 119, 119, 119, 119, 119, 120, 120, /* 4488-4495 */ +120, 121, 120, 121, 122, 122, 123, 123, /* 4496-4503 */ +123, 124, 125, 125, 126, 126, 127, 127, /* 4504-4511 */ +129, 129, 130, 130, 131, 131, 132, 132, /* 4512-4519 */ +132, 132, 132, 132, 133, 133, 132, 132, /* 4520-4527 */ +132, 132, 132, 132, 132, 132, 130, 130, /* 4528-4535 */ +129, 129, 128, 128, 127, 127, 127, 127, /* 4536-4543 */ +127, 126, 127, 127, 128, 129, 130, 131, /* 4544-4551 */ +132, 134, 134, 135, 136, 136, 135, 135, /* 4552-4559 */ +135, 134, 134, 133, 131, 130, 128, 127, /* 4560-4567 */ +126, 124, 123, 121, 119, 118, 116, 115, /* 4568-4575 */ +114, 112, 112, 110, 110, 109, 109, 110, /* 4576-4583 */ +110, 110, 111, 113, 114, 116, 118, 120, /* 4584-4591 */ +122, 124, 126, 128, 130, 132, 134, 136, /* 4592-4599 */ +136, 138, 138, 139, 140, 140, 140, 140, /* 4600-4607 */ +139, 138, 138, 137, 135, 135, 133, 133, /* 4608-4615 */ +131, 131, 130, 129, 129, 129, 128, 128, /* 4616-4623 */ +128, 128, 129, 129, 128, 129, 128, 129, /* 4624-4631 */ +129, 129, 129, 129, 128, 127, 127, 127, /* 4632-4639 */ +127, 127, 126, 126, 126, 126, 125, 124, /* 4640-4647 */ +124, 123, 122, 122, 122, 121, 121, 121, /* 4648-4655 */ +121, 122, 122, 123, 123, 124, 125, 125, /* 4656-4663 */ +126, 128, 128, 129, 129, 129, 129, 129, /* 4664-4671 */ +129, 129, 128, 127, 126, 126, 125, 124, /* 4672-4679 */ +123, 122, 122, 121, 120, 120, 120, 120, /* 4680-4687 */ +120, 121, 121, 123, 123, 124, 126, 127, /* 4688-4695 */ +128, 129, 131, 132, 133, 133, 134, 135, /* 4696-4703 */ +135, 136, 136, 136, 135, 134, 134, 134, /* 4704-4711 */ +134, 133, 133, 133, 131, 131, 130, 129, /* 4712-4719 */ +128, 128, 126, 126, 125, 125, 125, 125, /* 4720-4727 */ +125, 125, 125, 126, 126, 128, 128, 129, /* 4728-4735 */ +130, 130, 130, 132, 132, 131, 131, 130, /* 4736-4743 */ +129, 129, 128, 127, 126, 124, 124, 122, /* 4744-4751 */ +121, 120, 119, 117, 117, 116, 115, 115, /* 4752-4759 */ +115, 115, 115, 115, 117, 117, 118, 120, /* 4760-4767 */ +121, 123, 124, 126, 128, 128, 130, 131, /* 4768-4775 */ +132, 133, 133, 134, 134, 134, 134, 135, /* 4776-4783 */ +135, 135, 135, 135, 134, 133, 133, 132, /* 4784-4791 */ +132, 132, 131, 131, 131, 131, 131, 130, /* 4792-4799 */ +130, 130, 130, 131, 132, 132, 132, 132, /* 4800-4807 */ +132, 132, 132, 132, 131, 131, 129, 129, /* 4808-4815 */ +127, 126, 125, 123, 122, 121, 119, 118, /* 4816-4823 */ +117, 116, 116, 114, 114, 113, 113, 113, /* 4824-4831 */ +114, 114, 114, 115, 116, 118, 119, 120, /* 4832-4839 */ +122, 124, 125, 127, 129, 130, 132, 134, /* 4840-4847 */ +136, 136, 138, 138, 139, 139, 140, 140, /* 4848-4855 */ +139, 139, 138, 137, 137, 135, 134, 133, /* 4856-4863 */ +132, 131, 130, 129, 127, 127, 126, 126, /* 4864-4871 */ +125, 124, 124, 124, 124, 124, 124, 124, /* 4872-4879 */ +124, 125, 125, 125, 125, 124, 124, 124, /* 4880-4887 */ +124, 124, 124, 124, 123, 123, 123, 123, /* 4888-4895 */ +123, 123, 123, 123, 124, 124, 124, 124, /* 4896-4903 */ +124, 124, 125, 124, 124, 124, 124, 126, /* 4904-4911 */ +126, 126, 127, 127, 128, 129, 129, 130, /* 4912-4919 */ +131, 131, 131, 132, 132, 132, 132, 132, /* 4920-4927 */ +131, 131, 131, 130, 130, 129, 129, 129, /* 4928-4935 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4936-4943 */ +127, 128, 128, 129, 129, 129, 130, 130, /* 4944-4951 */ +130, 131, 131, 131, 131, 131, 130, 129, /* 4952-4959 */ +129, 129, 128, 127, 126, 126, 124, 124, /* 4960-4967 */ +123, 123, 122, 121, 121, 121, 122, 122, /* 4968-4975 */ +122, 122, 122, 122, 124, 124, 124, 124, /* 4976-4983 */ +124, 125, 125, 125, 126, 126, 126, 127, /* 4984-4991 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4992-4999 */ +126, 126, 126, 125, 125, 125, 124, 124, /* 5000-5007 */ +124, 124, 124, 124, 125, 125, 126, 127, /* 5008-5015 */ +127, 128, 129, 130, 131, 132, 133, 134, /* 5016-5023 */ +135, 136, 137, 137, 138, 139, 139, 138, /* 5024-5031 */ +138, 137, 136, 136, 134, 132, 132, 130, /* 5032-5039 */ +130, 128, 127, 125, 125, 124, 123, 122, /* 5040-5047 */ +122, 121, 121, 121, 122, 122, 122, 122, /* 5048-5055 */ +122, 123, 123, 123, 123, 123, 123, 124, /* 5056-5063 */ +124, 124, 124, 124, 124, 124, 123, 124, /* 5064-5071 */ +123, 123, 123, 121, 121, 120, 120, 120, /* 5072-5079 */ +120, 120, 120, 120, 121, 121, 121, 122, /* 5080-5087 */ +123, 123, 124, 125, 126, 127, 128, 128, /* 5088-5095 */ +129, 130, 131, 132, 132, 133, 134, 134, /* 5096-5103 */ +136, 136, 136, 137, 137, 137, 138, 138, /* 5104-5111 */ +138, 139, 139, 139, 139, 139, 139, 139, /* 5112-5119 */ +138, 138, 137, 136, 136, 135, 134, 133, /* 5120-5127 */ +132, 131, 129, 128, 127, 126, 125, 123, /* 5128-5135 */ +121, 120, 119, 117, 115, 114, 112, 111, /* 5136-5143 */ +110, 109, 109, 108, 108, 107, 107, 107, /* 5144-5151 */ +109, 110, 110, 112, 114, 116, 118, 121, /* 5152-5159 */ +122, 124, 126, 128, 130, 132, 134, 136, /* 5160-5167 */ +136, 138, 139, 140, 140, 141, 141, 140, /* 5168-5175 */ +140, 139, 139, 138, 136, 135, 134, 133, /* 5176-5183 */ +132, 130, 129, 128, 127, 126, 125, 125, /* 5184-5191 */ +125, 124, 123, 123, 123, 125, 125, 125, /* 5192-5199 */ +125, 126, 127, 128, 130, 130, 132, 132, /* 5200-5207 */ +134, 134, 135, 135, 135, 135, 135, 134, /* 5208-5215 */ +134, 134, 132, 131, 131, 129, 129, 128, /* 5216-5223 */ +127, 126, 126, 124, 124, 122, 122, 121, /* 5224-5231 */ +121, 120, 119, 118, 118, 117, 116, 116, /* 5232-5239 */ +116, 115, 114, 115, 115, 115, 115, 115, /* 5240-5247 */ +116, 116, 117, 118, 119, 119, 121, 122, /* 5248-5255 */ +123, 124, 126, 127, 129, 130, 131, 133, /* 5256-5263 */ +134, 135, 136, 138, 139, 139, 141, 141, /* 5264-5271 */ +141, 141, 141, 141, 141, 141, 139, 139, /* 5272-5279 */ +138, 137, 136, 134, 133, 131, 130, 128, /* 5280-5287 */ +126, 126, 124, 123, 121, 121, 121, 120, /* 5288-5295 */ +120, 120, 121, 121, 121, 123, 124, 124, /* 5296-5303 */ +125, 126, 127, 128, 128, 129, 129, 129, /* 5304-5311 */ +130, 130, 130, 130, 130, 129, 129, 128, /* 5312-5319 */ +127, 127, 127, 125, 125, 123, 123, 121, /* 5320-5327 */ +120, 119, 118, 118, 116, 116, 115, 115, /* 5328-5335 */ +115, 115, 117, 117, 117, 118, 120, 120, /* 5336-5343 */ +122, 123, 125, 127, 127, 129, 130, 131, /* 5344-5351 */ +132, 133, 134, 135, 135, 135, 136, 136, /* 5352-5359 */ +136, 136, 136, 137, 136, 136, 137, 137, /* 5360-5367 */ +137, 137, 137, 137, 137, 136, 136, 136, /* 5368-5375 */ +136, 134, 134, 133, 132, 131, 130, 128, /* 5376-5383 */ +128, 126, 125, 124, 123, 122, 120, 120, /* 5384-5391 */ +119, 118, 117, 116, 115, 115, 114, 113, /* 5392-5399 */ +113, 113, 113, 112, 112, 113, 114, 114, /* 5400-5407 */ +116, 117, 118, 120, 122, 124, 126, 128, /* 5408-5415 */ +130, 131, 133, 135, 135, 137, 137, 139, /* 5416-5423 */ +139, 139, 139, 138, 138, 138, 137, 137, /* 5424-5431 */ +136, 134, 134, 133, 132, 131, 130, 129, /* 5432-5439 */ +128, 128, 127, 127, 126, 125, 125, 125, /* 5440-5447 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 5448-5455 */ +124, 125, 125, 125, 125, 125, 125, 125, /* 5456-5463 */ +125, 126, 126, 126, 126, 126, 125, 125, /* 5464-5471 */ +125, 126, 125, 125, 125, 125, 125, 126, /* 5472-5479 */ +125, 126, 127, 127, 128, 128, 130, 130, /* 5480-5487 */ +130, 131, 131, 131, 131, 131, 130, 130, /* 5488-5495 */ +129, 129, 127, 126, 126, 125, 123, 123, /* 5496-5503 */ +122, 122, 122, 121, 121, 121, 121, 121, /* 5504-5511 */ +121, 122, 122, 122, 124, 125, 125, 127, /* 5512-5519 */ +128, 129, 131, 131, 132, 134, 135, 136, /* 5520-5527 */ +137, 138, 138, 139, 139, 139, 139, 138, /* 5528-5535 */ +138, 137, 137, 136, 135, 134, 132, 131, /* 5536-5543 */ +129, 127, 126, 124, 123, 122, 120, 119, /* 5544-5551 */ +118, 117, 116, 116, 115, 115, 115, 114, /* 5552-5559 */ +115, 115, 115, 115, 116, 117, 117, 117, /* 5560-5567 */ +118, 118, 119, 120, 120, 122, 123, 123, /* 5568-5575 */ +125, 127, 128, 129, 131, 132, 134, 134, /* 5576-5583 */ +136, 136, 138, 138, 138, 139, 139, 139, /* 5584-5591 */ +139, 138, 138, 138, 137, 136, 135, 135, /* 5592-5599 */ +134, 132, 132, 131, 129, 129, 128, 127, /* 5600-5607 */ +126, 126, 124, 124, 123, 122, 122, 122, /* 5608-5615 */ +122, 121, 121, 121, 121, 121, 122, 122, /* 5616-5623 */ +123, 124, 124, 126, 126, 127, 128, 129, /* 5624-5631 */ +129, 129, 130, 130, 130, 129, 129, 129, /* 5632-5639 */ +129, 127, 127, 125, 124, 124, 122, 122, /* 5640-5647 */ +120, 120, 119, 119, 118, 117, 117, 117, /* 5648-5655 */ +117, 117, 118, 119, 119, 119, 119, 121, /* 5656-5663 */ +121, 122, 124, 124, 126, 127, 129, 130, /* 5664-5671 */ +131, 133, 134, 135, 137, 137, 139, 139, /* 5672-5679 */ +139, 141, 141, 141, 141, 141, 141, 141, /* 5680-5687 */ +140, 139, 139, 138, 138, 137, 136, 135, /* 5688-5695 */ +134, 133, 132, 131, 130, 129, 128, 127, /* 5696-5703 */ +125, 125, 123, 121, 120, 119, 117, 116, /* 5704-5711 */ +115, 114, 113, 112, 112, 111, 111, 111, /* 5712-5719 */ +112, 113, 113, 114, 115, 116, 118, 119, /* 5720-5727 */ +120, 121, 123, 124, 125, 126, 127, 128, /* 5728-5735 */ +129, 130, 131, 132, 133, 133, 134, 134, /* 5736-5743 */ +135, 136, 136, 135, 135, 135, 135, 135, /* 5744-5751 */ +134, 134, 133, 132, 131, 131, 129, 129, /* 5752-5759 */ +128, 127, 127, 126, 125, 125, 125, 125, /* 5760-5767 */ +125, 125, 126, 126, 126, 127, 128, 128, /* 5768-5775 */ +129, 130, 130, 131, 131, 131, 131, 131, /* 5776-5783 */ +132, 132, 132, 132, 132, 132, 132, 132, /* 5784-5791 */ +131, 131, 131, 130, 129, 129, 129, 128, /* 5792-5799 */ +127, 126, 125, 124, 123, 122, 121, 120, /* 5800-5807 */ +119, 118, 118, 117, 116, 116, 116, 117, /* 5808-5815 */ +117, 117, 117, 118, 118, 119, 119, 119, /* 5816-5823 */ +120, 120, 122, 122, 122, 123, 124, 124, /* 5824-5831 */ +126, 126, 128, 129, 130, 131, 131, 133, /* 5832-5839 */ +133, 134, 135, 136, 136, 137, 137, 137, /* 5840-5847 */ +137, 138, 138, 138, 136, 136, 136, 135, /* 5848-5855 */ +134, 134, 133, 132, 131, 131, 130, 130, /* 5856-5863 */ +129, 129, 129, 129, 128, 128, 127, 126, /* 5864-5871 */ +126, 126, 124, 124, 124, 124, 122, 122, /* 5872-5879 */ +122, 122, 122, 122, 121, 121, 121, 121, /* 5880-5887 */ +122, 123, 123, 123, 122, 122, 123, 123, /* 5888-5895 */ +123, 123, 122, 122, 122, 122, 122, 122, /* 5896-5903 */ +123, 123, 123, 124, 125, 125, 126, 127, /* 5904-5911 */ +127, 128, 129, 129, 130, 130, 130, 130, /* 5912-5919 */ +131, 131, 131, 131, 130, 131, 131, 131, /* 5920-5927 */ +131, 130, 130, 130, 131, 131, 130, 130, /* 5928-5935 */ +130, 130, 130, 130, 130, 131, 130, 130, /* 5936-5943 */ +130, 130, 129, 129, 129, 129, 128, 128, /* 5944-5951 */ +128, 128, 127, 127, 127, 127, 127, 126, /* 5952-5959 */ +126, 125, 125, 125, 125, 125, 124, 123, /* 5960-5967 */ +123, 123, 123, 122, 122, 122, 122, 122, /* 5968-5975 */ +122, 123, 124, 124, 124, 126, 126, 126, /* 5976-5983 */ +128, 128, 128, 129, 129, 130, 130, 130, /* 5984-5991 */ +129, 129, 129, 129, 129, 129, 128, 127, /* 5992-5999 */ +127, 127, 127, 127, 126, 126, 126, 126, /* 6000-6007 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6008-6015 */ +126, 127, 127, 127, 127, 128, 128, 128, /* 6016-6023 */ +128, 128, 128, 129, 129, 129, 129, 129, /* 6024-6031 */ +129, 129, 129, 129, 128, 128, 128, 127, /* 6032-6039 */ +127, 127, 126, 125, 125, 125, 125, 125, /* 6040-6047 */ +126, 126, 126, 126, 126, 127, 128, 128, /* 6048-6055 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 6056-6063 */ +129, 129, 129, 128, 128, 127, 127, 126, /* 6064-6071 */ +126, 126, 126, 126, 124, 124, 124, 124, /* 6072-6079 */ +124, 124, 124, 124, 124, 124, 124, 125, /* 6080-6087 */ +125, 125, 125, 125, 126, 127, 127, 127, /* 6088-6095 */ +127, 129, 129, 129, 129, 130, 130, 130, /* 6096-6103 */ +130, 129, 129, 129, 129, 129, 129, 128, /* 6104-6111 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 6112-6119 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 6120-6127 */ +127, 127, 127, 127, 127, 126, 126, 125, /* 6128-6135 */ +125, 124, 124, 124, 124, 124, 123, 123, /* 6136-6143 */ +124, 124, 125, 125, 126, 126, 126, 126, /* 6144-6151 */ +128, 128, 128, 128, 129, 129, 129, 129, /* 6152-6159 */ +130, 130, 130, 130, 131, 131, 131, 130, /* 6160-6167 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 6168-6175 */ +129, 128, 128, 128, 128, 128, 128, 126, /* 6176-6183 */ +126, 126, 126, 125, 125, 125, 125, 124, /* 6184-6191 */ +124, 125, 125, 125, 125, 125, 125, 125, /* 6192-6199 */ +126, 126, 125, 125, 125, 124, 124, 124, /* 6200-6207 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 6208-6215 */ +124, 125, 125, 125, 126, 126, 126, 127, /* 6216-6223 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 6224-6231 */ +129, 129, 129, 130, 130, 130, 130, 130, /* 6232-6239 */ +130, 131, 131, 131, 131, 131, 131, 131, /* 6240-6247 */ +131, 131, 130, 130, 130, 128, 128, 128, /* 6248-6255 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 6256-6263 */ +126, 126, 126, 126, 127, 126, 126, 126, /* 6264-6271 */ +126, 125, 125, 125, 124, 124, 123, 123, /* 6272-6279 */ +123, 123, 123, 122, 123, 123, 123, 123, /* 6280-6287 */ +124, 124, 125, 126, 126, 127, 127, 127, /* 6288-6295 */ +128, 128, 129, 130, 130, 130, 131, 131, /* 6296-6303 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 6304-6311 */ +130, 130, 129, 129, 128, 127, 127, 127, /* 6312-6319 */ +126, 126, 125, 124, 124, 123, 123, 123, /* 6320-6327 */ +123, 122, 122, 123, 123, 123, 123, 124, /* 6328-6335 */ +125, 125, 126, 126, 127, 128, 128, 128, /* 6336-6343 */ +129, 130, 130, 130, 131, 131, 131, 131, /* 6344-6351 */ +131, 132, 132, 131, 131, 131, 131, 131, /* 6352-6359 */ +131, 131, 130, 130, 130, 130, 129, 128, /* 6360-6367 */ +128, 128, 127, 127, 126, 125, 125, 125, /* 6368-6375 */ +123, 123, 123, 123, 123, 123, 123, 123, /* 6376-6383 */ +123, 123, 124, 124, 124, 124, 124, 124, /* 6384-6391 */ +125, 125, 125, 125, 125, 126, 126, 127, /* 6392-6399 */ +127, 127, 127, 128, 128, 128, 129, 129, /* 6400-6407 */ +129, 129, 128, 128, 128, 128, 128, 126, /* 6408-6415 */ +126, 126, 126, 126, 125, 125, 125, 125, /* 6416-6423 */ +125, 125, 126, 126, 127, 127, 127, 127, /* 6424-6431 */ +128, 128, 128, 128, 129, 130, 130, 130, /* 6432-6439 */ +131, 132, 132, 132, 132, 132, 132, 132, /* 6440-6447 */ +132, 132, 132, 131, 131, 130, 130, 130, /* 6448-6455 */ +129, 128, 127, 126, 126, 125, 124, 123, /* 6456-6463 */ +122, 122, 121, 121, 121, 120, 120, 120, /* 6464-6471 */ +120, 121, 122, 122, 122, 123, 124, 125, /* 6472-6479 */ +125, 126, 127, 127, 127, 128, 129, 129, /* 6480-6487 */ +129, 129, 129, 129, 130, 130, 130, 130, /* 6488-6495 */ +130, 130, 130, 130, 129, 129, 129, 129, /* 6496-6503 */ +129, 128, 128, 127, 127, 126, 126, 126, /* 6504-6511 */ +125, 124, 124, 124, 124, 123, 123, 123, /* 6512-6519 */ +123, 123, 123, 123, 123, 123, 124, 125, /* 6520-6527 */ +125, 126, 126, 127, 128, 128, 128, 130, /* 6528-6535 */ +130, 130, 131, 131, 131, 132, 133, 133, /* 6536-6543 */ +133, 133, 133, 133, 134, 134, 134, 134, /* 6544-6551 */ +134, 133, 133, 133, 132, 131, 131, 130, /* 6552-6559 */ +129, 128, 127, 126, 125, 124, 123, 123, /* 6560-6567 */ +121, 121, 120, 120, 120, 118, 118, 118, /* 6568-6575 */ +118, 118, 118, 119, 120, 120, 120, 120, /* 6576-6583 */ +121, 122, 123, 123, 124, 124, 124, 125, /* 6584-6591 */ +126, 127, 127, 127, 128, 128, 128, 129, /* 6592-6599 */ +130, 130, 130, 131, 131, 131, 131, 131, /* 6600-6607 */ +131, 131, 131, 131, 131, 131, 131, 131, /* 6608-6615 */ +131, 132, 132, 131, 131, 131, 131, 131, /* 6616-6623 */ +131, 131, 131, 130, 130, 130, 130, 130, /* 6624-6631 */ +129, 129, 128, 128, 128, 128, 127, 126, /* 6632-6639 */ +126, 126, 125, 125, 125, 125, 124, 124, /* 6640-6647 */ +124, 124, 123, 123, 123, 123, 123, 123, /* 6648-6655 */ +123, 123, 124, 124, 124, 124, 124, 124, /* 6656-6663 */ +124, 124, 125, 125, 125, 125, 125, 125, /* 6664-6671 */ +125, 125, 125, 125, 125, 126, 126, 126, /* 6672-6679 */ +126, 126, 126, 126, 126, 127, 127, 128, /* 6680-6687 */ +128, 128, 128, 128, 128, 130, 130, 130, /* 6688-6695 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 6696-6703 */ +130, 130, 130, 130, 129, 129, 129, 129, /* 6704-6711 */ +130, 130, 130, 130, 130, 128, 128, 128, /* 6712-6719 */ +128, 128, 128, 128, 128, 128, 127, 127, /* 6720-6727 */ +127, 127, 127, 128, 128, 128, 127, 127, /* 6728-6735 */ +127, 127, 127, 126, 126, 125, 124, 124, /* 6736-6743 */ +124, 124, 123, 122, 122, 122, 122, 122, /* 6744-6751 */ +123, 123, 123, 123, 123, 124, 125, 125, /* 6752-6759 */ +126, 126, 126, 126, 127, 128, 128, 128, /* 6760-6767 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 6768-6775 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 6776-6783 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 6784-6791 */ +127, 128, 128, 128, 128, 128, 128, 128, /* 6792-6799 */ +129, 129, 130, 130, 130, 131, 131, 131, /* 6800-6807 */ +132, 132, 132, 132, 132, 132, 132, 131, /* 6808-6815 */ +131, 131, 131, 130, 129, 129, 129, 128, /* 6816-6823 */ +127, 127, 126, 126, 125, 125, 124, 123, /* 6824-6831 */ +123, 122, 121, 121, 120, 120, 120, 120, /* 6832-6839 */ +119, 119, 119, 119, 119, 119, 120, 120, /* 6840-6847 */ +120, 120, 122, 122, 122, 123, 124, 124, /* 6848-6855 */ +126, 126, 128, 128, 130, 130, 132, 133, /* 6856-6863 */ +134, 135, 135, 135, 137, 137, 137, 138, /* 6864-6871 */ +138, 138, 138, 137, 137, 137, 135, 135, /* 6872-6879 */ +133, 132, 131, 130, 128, 128, 126, 125, /* 6880-6887 */ +124, 123, 121, 121, 121, 119, 119, 119, /* 6888-6895 */ +119, 119, 119, 120, 120, 120, 121, 121, /* 6896-6903 */ +121, 122, 122, 124, 124, 125, 125, 127, /* 6904-6911 */ +127, 128, 128, 129, 130, 130, 130, 130, /* 6912-6919 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 6920-6927 */ +129, 128, 128, 128, 128, 127, 127, 126, /* 6928-6935 */ +126, 126, 126, 127, 127, 127, 126, 126, /* 6936-6943 */ +126, 126, 126, 126, 127, 127, 127, 127, /* 6944-6951 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 6952-6959 */ +128, 128, 128, 128, 128, 128, 128, 130, /* 6960-6967 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 6968-6975 */ +128, 128, 128, 128, 127, 127, 126, 125, /* 6976-6983 */ +125, 125, 125, 124, 123, 123, 123, 123, /* 6984-6991 */ +123, 123, 123, 122, 122, 122, 122, 122, /* 6992-6999 */ +123, 124, 124, 124, 124, 126, 126, 126, /* 7000-7007 */ +128, 128, 130, 130, 130, 131, 132, 132, /* 7008-7015 */ +132, 132, 132, 132, 132, 132, 131, 131, /* 7016-7023 */ +131, 130, 129, 129, 128, 128, 127, 126, /* 7024-7031 */ +126, 126, 126, 125, 124, 124, 124, 125, /* 7032-7039 */ +125, 125, 126, 126, 126, 126, 127, 128, /* 7040-7047 */ +128, 128, 128, 128, 129, 130, 130, 130, /* 7048-7055 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 7056-7063 */ +129, 128, 128, 127, 126, 126, 125, 124, /* 7064-7071 */ +124, 123, 123, 122, 122, 122, 121, 121, /* 7072-7079 */ +121, 121, 121, 122, 122, 122, 122, 122, /* 7080-7087 */ +122, 122, 124, 124, 124, 124, 125, 126, /* 7088-7095 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 7096-7103 */ +129, 130, 130, 130, 131, 132, 132, 132, /* 7104-7111 */ +133, 133, 133, 134, 135, 135, 135, 135, /* 7112-7119 */ +135, 135, 135, 134, 133, 133, 133, 133, /* 7120-7127 */ +132, 132, 131, 131, 130, 130, 129, 128, /* 7128-7135 */ +127, 127, 126, 125, 124, 124, 122, 122, /* 7136-7143 */ +122, 120, 120, 120, 120, 120, 120, 120, /* 7144-7151 */ +120, 120, 120, 121, 121, 121, 121, 122, /* 7152-7159 */ +122, 122, 121, 121, 121, 121, 121, 122, /* 7160-7167 */ +122, 122, 122, 122, 124, 124, 124, 125, /* 7168-7175 */ +126, 126, 127, 128, 129, 130, 131, 131, /* 7176-7183 */ +133, 133, 134, 135, 135, 135, 136, 136, /* 7184-7191 */ +136, 136, 136, 136, 136, 136, 135, 135, /* 7192-7199 */ +135, 134, 133, 132, 132, 131, 130, 130, /* 7200-7207 */ +128, 128, 126, 126, 125, 124, 124, 123, /* 7208-7215 */ +122, 122, 122, 122, 123, 123, 123, 123, /* 7216-7223 */ +124, 124, 124, 126, 126, 126, 127, 127, /* 7224-7231 */ +127, 127, 127, 126, 126, 126, 125, 124, /* 7232-7239 */ +124, 124, 123, 123, 122, 122, 122, 121, /* 7240-7247 */ +121, 121, 121, 121, 121, 121, 121, 122, /* 7248-7255 */ +122, 122, 122, 123, 124, 124, 125, 126, /* 7256-7263 */ +126, 128, 128, 129, 130, 130, 132, 132, /* 7264-7271 */ +133, 133, 134, 135, 135, 135, 135, 135, /* 7272-7279 */ +135, 135, 135, 135, 134, 134, 133, 133, /* 7280-7287 */ +133, 132, 131, 131, 131, 131, 130, 130, /* 7288-7295 */ +129, 129, 129, 128, 128, 128, 128, 127, /* 7296-7303 */ +126, 126, 125, 124, 124, 123, 123, 122, /* 7304-7311 */ +122, 122, 122, 121, 121, 121, 122, 122, /* 7312-7319 */ +122, 122, 122, 122, 122, 122, 122, 123, /* 7320-7327 */ +123, 124, 124, 124, 124, 125, 125, 125, /* 7328-7335 */ +125, 125, 127, 127, 127, 127, 127, 127, /* 7336-7343 */ +127, 127, 126, 126, 126, 126, 126, 126, /* 7344-7351 */ +126, 126, 126, 126, 126, 126, 126, 127, /* 7352-7359 */ +127, 128, 128, 129, 129, 130, 130, 132, /* 7360-7367 */ +132, 132, 134, 134, 134, 135, 136, 136, /* 7368-7375 */ +136, 136, 136, 136, 136, 135, 134, 134, /* 7376-7383 */ +133, 133, 132, 131, 131, 130, 129, 129, /* 7384-7391 */ +127, 127, 126, 125, 124, 123, 122, 121, /* 7392-7399 */ +120, 119, 119, 117, 117, 117, 116, 116, /* 7400-7407 */ +116, 116, 116, 116, 117, 117, 117, 119, /* 7408-7415 */ +119, 119, 120, 121, 122, 122, 124, 124, /* 7416-7423 */ +125, 126, 127, 128, 129, 130, 130, 132, /* 7424-7431 */ +132, 134, 134, 134, 135, 136, 136, 137, /* 7432-7439 */ +137, 137, 137, 137, 137, 136, 136, 136, /* 7440-7447 */ +135, 134, 133, 133, 131, 130, 130, 128, /* 7448-7455 */ +128, 126, 126, 125, 124, 124, 123, 123, /* 7456-7463 */ +123, 122, 122, 122, 122, 122, 122, 122, /* 7464-7471 */ +122, 122, 123, 123, 123, 123, 124, 124, /* 7472-7479 */ +126, 126, 126, 127, 127, 127, 128, 129, /* 7480-7487 */ +129, 129, 128, 128, 128, 128, 128, 128, /* 7488-7495 */ +127, 126, 126, 126, 126, 126, 125, 125, /* 7496-7503 */ +125, 125, 125, 125, 125, 125, 125, 126, /* 7504-7511 */ +126, 127, 127, 127, 127, 128, 128, 128, /* 7512-7519 */ +128, 128, 128, 128, 128, 129, 129, 129, /* 7520-7527 */ +129, 129, 129, 130, 130, 130, 130, 130, /* 7528-7535 */ +130, 130, 130, 130, 130, 131, 131, 131, /* 7536-7543 */ +130, 130, 130, 129, 129, 128, 128, 128, /* 7544-7551 */ +128, 128, 127, 127, 126, 126, 125, 125, /* 7552-7559 */ +124, 123, 123, 122, 122, 121, 120, 120, /* 7560-7567 */ +120, 120, 120, 120, 120, 120, 121, 122, /* 7568-7575 */ +122, 123, 124, 125, 126, 127, 128, 128, /* 7576-7583 */ +130, 130, 130, 131, 132, 132, 132, 132, /* 7584-7591 */ +132, 132, 132, 131, 131, 131, 131, 131, /* 7592-7599 */ +131, 129, 129, 129, 129, 129, 127, 127, /* 7600-7607 */ +127, 127, 127, 127, 126, 126, 126, 126, /* 7608-7615 */ +126, 126, 126, 126, 126, 127, 127, 128, /* 7616-7623 */ +128, 129, 129, 129, 129, 129, 129, 129, /* 7624-7631 */ +129, 129, 129, 128, 127, 127, 127, 126, /* 7632-7639 */ +125, 125, 125, 124, 124, 124, 124, 124, /* 7640-7647 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 7648-7655 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 7656-7663 */ +125, 125, 125, 125, 126, 126, 126, 126, /* 7664-7671 */ +126, 127, 127, 127, 127, 129, 129, 129, /* 7672-7679 */ +129, 130, 130, 130, 132, 132, 132, 132, /* 7680-7687 */ +133, 133, 133, 133, 133, 133, 134, 134, /* 7688-7695 */ +133, 133, 133, 133, 132, 131, 131, 131, /* 7696-7703 */ +130, 129, 128, 128, 126, 126, 125, 125, /* 7704-7711 */ +123, 123, 122, 122, 122, 122, 122, 122, /* 7712-7719 */ +122, 122, 122, 122, 122, 122, 122, 122, /* 7720-7727 */ +122, 121, 121, 122, 122, 122, 122, 122, /* 7728-7735 */ +123, 123, 123, 123, 125, 125, 125, 125, /* 7736-7743 */ +126, 127, 127, 127, 128, 129, 129, 129, /* 7744-7751 */ +130, 131, 131, 131, 132, 132, 133, 133, /* 7752-7759 */ +133, 133, 134, 134, 134, 134, 134, 133, /* 7760-7767 */ +133, 133, 132, 131, 131, 131, 130, 129, /* 7768-7775 */ +128, 128, 127, 126, 126, 125, 124, 124, /* 7776-7783 */ +124, 123, 123, 123, 123, 123, 124, 124, /* 7784-7791 */ +125, 126, 126, 126, 126, 127, 127, 127, /* 7792-7799 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 7800-7807 */ +127, 127, 127, 127, 127, 126, 125, 125, /* 7808-7815 */ +125, 124, 124, 124, 123, 123, 122, 122, /* 7816-7823 */ +122, 122, 122, 122, 122, 122, 123, 123, /* 7824-7831 */ +124, 124, 124, 126, 126, 126, 127, 128, /* 7832-7839 */ +128, 129, 129, 130, 130, 131, 131, 131, /* 7840-7847 */ +131, 131, 131, 131, 131, 131, 131, 131, /* 7848-7855 */ +131, 131, 131, 131, 131, 131, 131, 131, /* 7856-7863 */ +131, 130, 131, 131, 131, 130, 130, 129, /* 7864-7871 */ +129, 129, 129, 127, 127, 127, 127, 125, /* 7872-7879 */ +125, 125, 125, 124, 124, 124, 124, 123, /* 7880-7887 */ +122, 122, 123, 123, 123, 123, 123, 123, /* 7888-7895 */ +123, 123, 123, 123, 123, 124, 124, 125, /* 7896-7903 */ +125, 126, 126, 126, 126, 126, 128, 128, /* 7904-7911 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 7912-7919 */ +127, 127, 127, 127, 126, 125, 125, 125, /* 7920-7927 */ +125, 125, 125, 125, 126, 126, 126, 126, /* 7928-7935 */ +127, 128, 128, 128, 130, 130, 130, 131, /* 7936-7943 */ +132, 132, 133, 133, 133, 133, 133, 133, /* 7944-7951 */ +133, 133, 133, 133, 133, 132, 132, 131, /* 7952-7959 */ +130, 129, 129, 129, 127, 127, 126, 125, /* 7960-7967 */ +124, 124, 123, 122, 122, 121, 121, 121, /* 7968-7975 */ +121, 121, 121, 122, 122, 122, 122, 122, /* 7976-7983 */ +122, 123, 123, 123, 123, 124, 125, 125, /* 7984-7991 */ +125, 125, 126, 126, 126, 126, 127, 127, /* 7992-7999 */ +127, 127, 128, 129, 129, 129, 129, 129, /* 8000-8007 */ +129, 130, 130, 130, 130, 130, 130, 130, /* 8008-8015 */ +130, 130, 130, 129, 129, 129, 129, 129, /* 8016-8023 */ +129, 128, 128, 128, 128, 127, 127, 126, /* 8024-8031 */ +126, 126, 126, 126, 126, 126, 126, 125, /* 8032-8039 */ +125, 126, 126, 126, 127, 127, 127, 127, /* 8040-8047 */ +127, 128, 129, 129, 129, 129, 129, 129, /* 8048-8055 */ +129, 129, 129, 128, 128, 128, 128, 127, /* 8056-8063 */ +127, 127, 126, 125, 125, 125, 125, 125, /* 8064-8071 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 8072-8079 */ +125, 125, 125, 126, 127, 127, 127, 127, /* 8080-8087 */ +127, 127, 126, 126, 126, 126, 126, 126, /* 8088-8095 */ +126, 127, 127, 127, 127, 126, 126, 126, /* 8096-8103 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 8104-8111 */ +127, 127, 128, 128, 128, 128, 129, 130, /* 8112-8119 */ +130, 130, 131, 131, 131, 131, 131, 131, /* 8120-8127 */ +131, 131, 129, 129, 129, 129, 128, 128, /* 8128-8135 */ +127, 126, 126, 126, 126, 126, 125, 125, /* 8136-8143 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 8144-8151 */ +125, 125, 125, 126, 127, 127, 127, 127, /* 8152-8159 */ +127, 127, 127, 127, 126, 126, 126, 126, /* 8160-8167 */ +126, 126, 126, 126, 126, 125, 125, 125, /* 8168-8175 */ +125, 125, 125, 125, 126, 126, 126, 126, /* 8176-8183 */ +127, 127, 127, 128, 128, 129, 129, 129, /* 8184-8191 */ +129, 130, 131, 131, 131, 131, 131, 130, /* 8192-8199 */ +130, 130, 130, 129, 129, 129, 128, 127, /* 8200-8207 */ +127, 126, 126, 126, 126, 125, 124, 124, /* 8208-8215 */ +124, 124, 124, 124, 124, 123, 124, 124, /* 8216-8223 */ +124, 124, 124, 124, 125, 125, 126, 126, /* 8224-8231 */ +127, 127, 127, 127, 128, 129, 129, 129, /* 8232-8239 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 8240-8247 */ +129, 129, 129, 129, 129, 129, 128, 128, /* 8248-8255 */ +128, 128, 128, 128, 128, 128, 126, 126, /* 8256-8263 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 8264-8271 */ +126, 125, 125, 125, 125, 125, 125, 125, /* 8272-8279 */ +125, 125, 125, 126, 126, 126, 126, 126, /* 8280-8287 */ +128, 128, 128, 128, 128, 129, 129, 129, /* 8288-8295 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 8296-8303 */ +129, 129, 128, 128, 128, 128, 127, 126, /* 8304-8311 */ +126, 126, 125, 125, 125, 125, 125, 125, /* 8312-8319 */ +124, 124, 124, 125, 125, 125, 125, 125, /* 8320-8327 */ +125, 126, 127, 127, 127, 127, 128, 128, /* 8328-8335 */ +128, 128, 129, 129, 129, 129, 129, 129, /* 8336-8343 */ +129, 129, 129, 129, 129, 129, 128, 128, /* 8344-8351 */ +127, 127, 127, 127, 127, 127, 125, 125, /* 8352-8359 */ +125, 125, 125, 125, 126, 126, 126, 126, /* 8360-8367 */ +126, 126, 126, 126, 126, 126, 127, 127, /* 8368-8375 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 8376-8383 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 8384-8391 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 8392-8399 */ +127, 127, 127, 127, 127, 127, 127, 126, /* 8400-8407 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 8408-8415 */ +126, 126, 125, 125, 125, 125, 125, 125, /* 8416-8423 */ +125, 126, 125, 126, 126, 126, 127, 127, /* 8424-8431 */ +127, 127, 128, 128, 128, 128, 129, 129, /* 8432-8439 */ +129, 129, 130, 130, 130, 130, 130, 130, /* 8440-8447 */ +130, 130, 130, 130, 130, 130, 130, 129, /* 8448-8455 */ +129, 129, 129, 128, 128, 128, 127, 127, /* 8456-8463 */ +127, 127, 126, 126, 126, 126, 126, 126, /* 8464-8471 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 8472-8479 */ +126, 125, 125, 125, 125, 125, 125, 124, /* 8480-8487 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 8488-8495 */ +124, 124, 125, 125, 125, 126, 126, 126, /* 8496-8503 */ +127, 128, 128, 128, 129, 130, 130, 131, /* 8504-8511 */ +131, 131, 132, 132, 132, 132, 132, 132, /* 8512-8519 */ +133, 131, 131, 131, 130, 130, 129, 128, /* 8520-8527 */ +128, 127, 126, 126, 125, 124, 124, 123, /* 8528-8535 */ +123, 123, 122, 122, 122, 122, 122, 123, /* 8536-8543 */ +123, 123, 124, 125, 125, 126, 126, 126, /* 8544-8551 */ +127, 128, 128, 129, 130, 130, 131, 131, /* 8552-8559 */ +131, 131, 132, 132, 132, 132, 132, 132, /* 8560-8567 */ +132, 131, 131, 131, 129, 129, 129, 128, /* 8568-8575 */ +127, 127, 125, 125, 125, 123, 123, 123, /* 8576-8583 */ +123, 122, 121, 121, 121, 121, 121, 120, /* 8584-8591 */ +120, 120, 120, 120, 121, 122, 122, 122, /* 8592-8599 */ +122, 124, 124, 125, 126, 126, 127, 128, /* 8600-8607 */ +129, 130, 131, 131, 133, 133, 133, 134, /* 8608-8615 */ +135, 135, 135, 135, 135, 135, 135, 134, /* 8616-8623 */ +133, 133, 133, 132, 131, 130, 130, 128, /* 8624-8631 */ +128, 127, 127, 126, 125, 125, 125, 125, /* 8632-8639 */ +124, 124, 123, 123, 123, 123, 123, 123, /* 8640-8647 */ +123, 123, 124, 125, 125, 125, 125, 126, /* 8648-8655 */ +126, 126, 126, 128, 128, 128, 128, 128, /* 8656-8663 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 8664-8671 */ +127, 127, 126, 126, 125, 125, 125, 125, /* 8672-8679 */ +125, 125, 125, 124, 124, 124, 124, 124, /* 8680-8687 */ +124, 124, 125, 126, 126, 126, 126, 126, /* 8688-8695 */ +127, 127, 127, 128, 128, 129, 129, 129, /* 8696-8703 */ +129, 130, 131, 131, 131, 131, 131, 132, /* 8704-8711 */ +132, 132, 132, 132, 132, 132, 132, 131, /* 8712-8719 */ +130, 130, 130, 130, 130, 130, 130, 128, /* 8720-8727 */ +128, 128, 128, 127, 126, 126, 126, 125, /* 8728-8735 */ +125, 124, 124, 123, 123, 123, 123, 123, /* 8736-8743 */ +123, 123, 122, 122, 122, 123, 123, 123, /* 8744-8751 */ +124, 124, 124, 124, 125, 125, 125, 125, /* 8752-8759 */ +126, 127, 127, 127, 128, 128, 128, 128, /* 8760-8767 */ +128, 128, 128, 129, 129, 129, 129, 129, /* 8768-8775 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 8776-8783 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 8784-8791 */ +127, 127, 127, 127, 128, 128, 128, 129, /* 8792-8799 */ +129, 129, 129, 129, 129, 129, 129, 130, /* 8800-8807 */ +130, 130, 130, 130, 130, 129, 129, 129, /* 8808-8815 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 8816-8823 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 8824-8831 */ +127, 126, 126, 126, 126, 125, 125, 125, /* 8832-8839 */ +124, 124, 124, 124, 124, 123, 123, 123, /* 8840-8847 */ +123, 122, 122, 122, 122, 122, 122, 122, /* 8848-8855 */ +122, 122, 122, 123, 124, 124, 124, 125, /* 8856-8863 */ +125, 126, 127, 127, 129, 129, 129, 131, /* 8864-8871 */ +131, 131, 132, 133, 133, 133, 133, 133, /* 8872-8879 */ +133, 134, 134, 134, 133, 132, 132, 132, /* 8880-8887 */ +132, 131, 131, 131, 131, 129, 129, 129, /* 8888-8895 */ +128, 128, 128, 127, 126, 126, 126, 125, /* 8896-8903 */ +125, 125, 124, 124, 124, 123, 123, 123, /* 8904-8911 */ +123, 123, 123, 123, 123, 123, 123, 122, /* 8912-8919 */ +122, 122, 122, 123, 123, 123, 123, 123, /* 8920-8927 */ +123, 124, 124, 124, 125, 126, 126, 126, /* 8928-8935 */ +127, 128, 128, 128, 129, 130, 130, 130, /* 8936-8943 */ +130, 130, 130, 131, 131, 131, 131, 131, /* 8944-8951 */ +130, 130, 130, 130, 129, 129, 129, 129, /* 8952-8959 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 8960-8967 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 8968-8975 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 8976-8983 */ +128, 128, 128, 128, 128, 128, 127, 127, /* 8984-8991 */ +127, 126, 126, 126, 125, 125, 125, 125, /* 8992-8999 */ +125, 124, 124, 123, 123, 123, 124, 124, /* 9000-9007 */ +124, 124, 125, 125, 125, 125, 125, 125, /* 9008-9015 */ +126, 126, 126, 127, 127, 127, 127, 127, /* 9016-9023 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9024-9031 */ +129, 130, 130, 130, 130, 130, 130, 130, /* 9032-9039 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 9040-9047 */ +130, 130, 129, 128, 128, 128, 128, 128, /* 9048-9055 */ +127, 126, 126, 126, 126, 126, 125, 125, /* 9056-9063 */ +125, 124, 124, 124, 124, 124, 124, 124, /* 9064-9071 */ +124, 124, 125, 125, 126, 126, 126, 126, /* 9072-9079 */ +126, 127, 127, 128, 128, 128, 128, 128, /* 9080-9087 */ +128, 128, 128, 128, 128, 128, 127, 126, /* 9088-9095 */ +126, 126, 126, 126, 125, 125, 125, 125, /* 9096-9103 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 9104-9111 */ +125, 125, 127, 127, 127, 127, 127, 128, /* 9112-9119 */ +129, 129, 129, 130, 131, 131, 132, 132, /* 9120-9127 */ +132, 132, 132, 133, 133, 133, 133, 133, /* 9128-9135 */ +133, 132, 131, 131, 131, 130, 129, 129, /* 9136-9143 */ +129, 127, 127, 127, 126, 125, 125, 124, /* 9144-9151 */ +124, 123, 123, 122, 122, 122, 121, 120, /* 9152-9159 */ +120, 120, 120, 120, 120, 120, 120, 120, /* 9160-9167 */ +120, 122, 122, 122, 122, 123, 124, 124, /* 9168-9175 */ +124, 126, 126, 126, 128, 128, 128, 129, /* 9176-9183 */ +130, 130, 130, 131, 131, 131, 131, 132, /* 9184-9191 */ +133, 133, 133, 133, 133, 133, 133, 133, /* 9192-9199 */ +133, 133, 132, 131, 131, 131, 131, 131, /* 9200-9207 */ +130, 130, 130, 128, 128, 128, 128, 127, /* 9208-9215 */ +127, 127, 127, 127, 126, 126, 126, 126, /* 9216-9223 */ +126, 126, 126, 126, 126, 126, 125, 125, /* 9224-9231 */ +125, 125, 125, 125, 125, 123, 123, 123, /* 9232-9239 */ +123, 123, 124, 124, 123, 123, 123, 123, /* 9240-9247 */ +123, 123, 123, 123, 123, 123, 123, 124, /* 9248-9255 */ +124, 124, 124, 124, 125, 126, 126, 126, /* 9256-9263 */ +126, 127, 128, 128, 129, 129, 130, 130, /* 9264-9271 */ +130, 132, 132, 132, 132, 132, 133, 133, /* 9272-9279 */ +133, 133, 132, 132, 132, 132, 131, 131, /* 9280-9287 */ +131, 130, 130, 130, 130, 129, 129, 129, /* 9288-9295 */ +129, 129, 128, 128, 128, 128, 128, 126, /* 9296-9303 */ +126, 126, 126, 126, 126, 125, 125, 125, /* 9304-9311 */ +125, 125, 125, 125, 125, 125, 124, 124, /* 9312-9319 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 9320-9327 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 9328-9335 */ +124, 124, 124, 124, 125, 125, 125, 126, /* 9336-9343 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 9344-9351 */ +128, 128, 128, 128, 128, 128, 128, 129, /* 9352-9359 */ +130, 130, 130, 130, 130, 130, 132, 132, /* 9360-9367 */ +132, 132, 132, 132, 132, 132, 130, 130, /* 9368-9375 */ +130, 130, 130, 130, 130, 129, 129, 128, /* 9376-9383 */ +128, 128, 128, 128, 128, 128, 127, 127, /* 9384-9391 */ +127, 127, 127, 127, 127, 126, 126, 126, /* 9392-9399 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 9400-9407 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 9408-9415 */ +124, 123, 122, 122, 122, 122, 122, 122, /* 9416-9423 */ +122, 122, 122, 122, 123, 123, 123, 123, /* 9424-9431 */ +124, 125, 125, 125, 127, 127, 128, 129, /* 9432-9439 */ +129, 129, 131, 131, 131, 132, 132, 132, /* 9440-9447 */ +133, 133, 133, 133, 132, 133, 133, 133, /* 9448-9455 */ +133, 133, 132, 132, 132, 131, 131, 131, /* 9456-9463 */ +131, 130, 129, 129, 129, 129, 127, 127, /* 9464-9471 */ +127, 127, 127, 125, 125, 125, 125, 125, /* 9472-9479 */ +124, 123, 123, 123, 123, 123, 123, 123, /* 9480-9487 */ +123, 122, 122, 122, 122, 122, 123, 123, /* 9488-9495 */ +123, 123, 123, 124, 125, 125, 125, 125, /* 9496-9503 */ +126, 126, 126, 127, 127, 128, 128, 128, /* 9504-9511 */ +128, 128, 128, 128, 128, 128, 128, 129, /* 9512-9519 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 9520-9527 */ +128, 129, 129, 129, 129, 129, 129, 129, /* 9528-9535 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 9536-9543 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 9544-9551 */ +129, 128, 127, 127, 127, 127, 127, 127, /* 9552-9559 */ +127, 126, 126, 126, 126, 126, 126, 125, /* 9560-9567 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 9568-9575 */ +125, 125, 125, 125, 125, 125, 125, 126, /* 9576-9583 */ +126, 126, 127, 127, 127, 127, 127, 127, /* 9584-9591 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 9592-9599 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 9600-9607 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9608-9615 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9616-9623 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9624-9631 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9632-9639 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9640-9647 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 9648-9655 */ +127, 126, 126, 126, 125, 125, 125, 125, /* 9656-9663 */ +125, 124, 124, 124, 124, 124, 124, 124, /* 9664-9671 */ +124, 124, 124, 124, 124, 124, 125, 125, /* 9672-9679 */ +125, 125, 125, 126, 127, 127, 127, 127, /* 9680-9687 */ +127, 128, 129, 129, 129, 129, 129, 130, /* 9688-9695 */ +131, 131, 131, 131, 131, 132, 132, 132, /* 9696-9703 */ +131, 131, 131, 131, 131, 130, 130, 129, /* 9704-9711 */ +129, 129, 129, 129, 128, 127, 127, 127, /* 9712-9719 */ +127, 127, 126, 125, 125, 125, 125, 124, /* 9720-9727 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 9728-9735 */ +124, 124, 124, 124, 124, 124, 124, 124, /* 9736-9743 */ +124, 124, 125, 125, 126, 126, 126, 126, /* 9744-9751 */ +126, 127, 128, 128, 128, 128, 128, 128, /* 9752-9759 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 9760-9767 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 9768-9775 */ +129, 128, 128, 128, 128, 128, 128, 128, /* 9776-9783 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 9784-9791 */ +128, 128, 128, 128, 129, 129, 129, 128, /* 9792-9799 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 9800-9807 */ +127, 127, 127, 126, 126, 126, 126, 126, /* 9808-9815 */ +126, 124, 124, 124, 124, 124, 123, 123, /* 9816-9823 */ +123, 123, 123, 123, 123, 123, 123, 123, /* 9824-9831 */ +124, 125, 125, 125, 125, 126, 126, 126, /* 9832-9839 */ +127, 128, 128, 128, 128, 129, 129, 129, /* 9840-9847 */ +129, 129, 129, 130, 130, 130, 130, 131, /* 9848-9855 */ +131, 131, 130, 130, 130, 130, 130, 130, /* 9856-9863 */ +130, 130, 130, 129, 128, 128, 128, 128, /* 9864-9871 */ +127, 127, 127, 126, 126, 126, 126, 126, /* 9872-9879 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 9880-9887 */ +126, 126, 126, 126, 126, 126, 127, 127, /* 9888-9895 */ +127, 127, 126, 126, 126, 126, 126, 126, /* 9896-9903 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 9904-9911 */ +126, 124, 124, 124, 124, 124, 124, 124, /* 9912-9919 */ +124, 124, 124, 124, 124, 124, 125, 125, /* 9920-9927 */ +125, 126, 126, 126, 127, 127, 127, 128, /* 9928-9935 */ +128, 128, 129, 129, 130, 130, 130, 130, /* 9936-9943 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 9944-9951 */ +130, 131, 131, 131, 131, 130, 130, 130, /* 9952-9959 */ +130, 129, 129, 129, 129, 129, 128, 128, /* 9960-9967 */ +128, 128, 128, 128, 127, 127, 127, 126, /* 9968-9975 */ +126, 125, 125, 125, 125, 125, 125, 124, /* 9976-9983 */ +123, 123, 123, 123, 123, 123, 123, 123, /* 9984-9991 */ +123, 123, 124, 124, 124, 124, 124, 124, /* 9992-9999 */ +124, 125, 125, 125, 125, 125, 127, 127, /* 10000-10007 */ +127, 127, 127, 127, 127, 128, 129, 129, /* 10008-10015 */ +129, 129, 129, 129, 129, 130, 130, 130, /* 10016-10023 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 10024-10031 */ +130, 130, 130, 130, 129, 129, 129, 129, /* 10032-10039 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 10040-10047 */ +128, 127, 126, 126, 126, 126, 126, 126, /* 10048-10055 */ +126, 124, 124, 124, 124, 124, 124, 124, /* 10056-10063 */ +124, 124, 124, 125, 126, 126, 126, 126, /* 10064-10071 */ +126, 126, 126, 126, 126, 126, 127, 127, /* 10072-10079 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 10080-10087 */ +127, 127, 127, 127, 127, 126, 126, 126, /* 10088-10095 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10096-10103 */ +126, 126, 126, 126, 126, 127, 127, 127, /* 10104-10111 */ +127, 127, 128, 128, 128, 129, 129, 129, /* 10112-10119 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 10120-10127 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 10128-10135 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 10136-10143 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10144-10151 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10152-10159 */ +126, 126, 126, 126, 126, 126, 126, 127, /* 10160-10167 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 10168-10175 */ +127, 127, 126, 126, 126, 126, 126, 126, /* 10176-10183 */ +126, 126, 126, 127, 127, 127, 127, 127, /* 10184-10191 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 10192-10199 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 10200-10207 */ +128, 128, 129, 129, 129, 129, 129, 129, /* 10208-10215 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 10216-10223 */ +129, 129, 128, 128, 127, 127, 127, 126, /* 10224-10231 */ +126, 126, 126, 125, 125, 124, 124, 124, /* 10232-10239 */ +124, 124, 124, 124, 124, 124, 124, 125, /* 10240-10247 */ +125, 125, 125, 126, 126, 126, 127, 127, /* 10248-10255 */ +127, 128, 128, 128, 128, 129, 129, 129, /* 10256-10263 */ +129, 129, 129, 129, 129, 129, 129, 128, /* 10264-10271 */ +128, 128, 128, 128, 128, 128, 127, 126, /* 10272-10279 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10280-10287 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10288-10295 */ +126, 126, 126, 126, 126, 126, 127, 127, /* 10296-10303 */ +127, 128, 128, 128, 128, 128, 128, 128, /* 10304-10311 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 10312-10319 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 10320-10327 */ +128, 128, 128, 126, 126, 126, 126, 126, /* 10328-10335 */ +126, 126, 126, 126, 126, 126, 125, 126, /* 10336-10343 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10344-10351 */ +126, 126, 127, 127, 128, 128, 128, 128, /* 10352-10359 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 10360-10367 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 10368-10375 */ +128, 127, 126, 126, 126, 126, 126, 126, /* 10376-10383 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 10384-10391 */ +126, 126, 126, 126, 126, 127, 127, 128, /* 10392-10399 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 10400-10407 */ +128, 128, 129, 129, 129, 129, 129, 129, /* 10408-10415 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 10416-10423 */ +127, 127, 127, 126, 126, 126, 126, 126, /* 10424-10431 */ +126, 126, 125, 124, 124, 124, 124, 124, /* 10432-10439 */ +124, 125, 125, 125, 125, 125, 125, 126, /* 10440-10447 */ +126, 126, 127, 127, 127, 127, 127, 128, /* 10448-10455 */ +129, 129, 129, 129, 129, 129, 129, 130, /* 10456-10463 */ +130, 130, 130, 130, 130, 130, 130, 130, /* 10464-10471 */ +130, 130, 128, 128, 128, 128, 127, 127, /* 10472-10479 */ +127, 127, 126, 125, 125, 125, 125, 125, /* 10480-10487 */ +125, 125, 124, 124, 124, 125, 125, 125, /* 10488-10495 */ +125, 125, 125, 125, 125, 126, 126, 126, /* 10496-10503 */ +126, 126, 127, 127, 127, 128, 128, 128, /* 10504-10511 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 10512-10519 */ +129, 129, 129}; /* 10520-10522 */ + + +//get and set the frequency from wav conversion tool GUI +int k=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_kick() +{ + + speaker = data_k[k]/255.0;//scale to 0.0 to 1.0 for PWM + k++; + if (k>= NUM_ELEMENTS) { + k = 0; + sampletick.detach(); + myled = 0; + } +}
--- a/main.cpp Tue Oct 11 03:42:42 2016 +0000 +++ b/main.cpp Mon Dec 09 16:43:04 2019 +0000 @@ -1,207 +1,236 @@ #include "mbed.h" #include "rtos.h" -#include <string> +#include "mpr121.h" +#include "wave_player.h" #include "uLCD_4DGL.h" -#include "SimpleRGB.h" -#include "SDFileSystem.h" -#include "wave_player.h" +#include "PinDetect.h" +#include <vector> + +PwmOut speaker(p25); +Ticker sampletick; +DigitalOut myled(LED1); -#define SECOND 1000 // used with threads -DigitalOut led(LED1); // test led - +#include "dixiehorn.h" +#include "guitarjazz.h" +#include "marimbaAmin.h" +#include "marimbaChimeC.h" +#include "marimbaFmaj.h" +#include "marimbaGmaj.h" +#include "marimbaHighD.h" +#include "marimbaLowC.h" +#include "snare.h" +#include "splash.h" +#include "tomHigh.h" +#include "kick.h" -/* 1 init/declare +#define sample_freq 8000.0 +#define SECOND 1000 +#define RED 0xFF0000 +#define BLACK 0x000000 -Ticker first; -Ticker second; -Ticker third; -Ticker fourth; +using namespace std; + DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DigitalOut led4(LED4); +PinDetect pbRec(p17); +PinDetect pbPlay(p16); +DigitalOut led(p23); -void one() { // attached to ticker object. will be called after time given - led1 = !led1; // flip the value of the led -} // nothing returned +// Create the interrupt receiver object on pin 26 +InterruptIn interrupt(p26); +// Setup the i2c bus on pins 9 and 10 +I2C i2c(p9, p10); +// Setup the Mpr121: +// constructor(i2c object, i2c address of the mpr121) + +int key_code; + +//Bluetooth + +Serial pc(USBTX, USBRX); + +// initialize recording capability +vector<int> sequence; +volatile bool isrec = false; +volatile bool play = false; -void two() { - led2 = !led2; -} +Mpr121 mpr121(&i2c, Mpr121::ADD_VSS); + +uLCD_4DGL uLCD(p13, p14, p29); // lcd used by the following threads +Mutex stdio_mutex; -void three() { - led3 = !led3; -} - -void four() { - led4 = !led4; +void fallInterrupt() +{ + int i=0; + int value=mpr121.read(0x00); + value +=mpr121.read(0x01)<<8; + // LED demo mod + i=0; + // puts key number out to LEDs for demo + for (i=0; i<12; i++) { + if (((value>>i)&0x01)==1) key_code=i+1; + } + led4=key_code & 0x01; + led3=(key_code>>1) & 0x01; + led2=(key_code>>2) & 0x01; + led1=(key_code>>3) & 0x01; + +// fclose(wave_file); } -*/// - 1 - - -/* 2 init/declare */ - -uLCD_4DGL lcd(p9, p10, p11); // lcd used by the following threads -Mutex stdio_mutex; // mutex lock, ensure safe use of lcd - -// lcd thread -void uLCD_reboot_thread(void const *args) { - // show reboot process, associated with clip of apple restart - while (true) { - // lock, print 'Rebooting!' to uLCD with "progress_bar" underneath - stdio_mutex.lock(); - lcd.text_string("Rebooting", 2, 5, FONT_7X8, WHITE); - // draw progress bar 8 sec - for (int i = 0; i < 8; i++) { - lcd.text_string("|", 2 + i, 6, FONT_7X8, WHITE); - // progress[i+1] += arr[i]; - Thread::wait(SECOND); - } - // draw an ascii 'apple' - lcd.text_string(" .:' ", 2, 4, FONT_7X8, WHITE); - lcd.text_string(" :' ", 2, 5, FONT_7X8, WHITE); - lcd.text_string(" .'` `-' ``. ", 2, 6, FONT_7X8, WHITE); - lcd.text_string(": .-' ", 2, 7, FONT_7X8, WHITE); - lcd.text_string(": : ", 2, 8, FONT_7X8, WHITE); - lcd.text_string(" : `-; ", 2, 9, FONT_7X8, WHITE); - lcd.text_string(" `.__.-.__.' ", 2, 10, FONT_7X8, WHITE); - // unlock, wait for 52 - stdio_mutex.unlock(); - Thread::wait(52 * SECOND); - // clear screen - stdio_mutex.lock(); - lcd.cls(); - stdio_mutex.unlock(); - } -} - -// lcd thread -void uLCD_status_thread(void const *args) { - // show time with smile, frown, sad face at top right - set_time(1476146921); - while (true) { - char buffer[32]; - time_t seconds = time(NULL); - strftime(buffer, 32, "%I:%M %p\n", localtime(&seconds)); - // lock, update time at top right with smiley at top left - stdio_mutex.lock(); - lcd.text_string(buffer, 8, 1, FONT_7X8, BLUE); - lcd.text_string(":-)", 1, 1, FONT_7X8, WHITE); - // unlock, wait for 20 sec - stdio_mutex.unlock(); - Thread::wait(20 * SECOND); - // lock, change to frown - stdio_mutex.lock(); - lcd.text_string(">:|", 1, 1, FONT_7X8, WHITE); - // unlock, wait for 20 sec - stdio_mutex.unlock(); - Thread::wait(20 * SECOND); - // lock, change to sad - stdio_mutex.lock(); - lcd.text_string(":-(", 1, 1, FONT_7X8, WHITE); - // unlock, wait for 20 sec - stdio_mutex.unlock(); - Thread::wait(20 * SECOND); +void ledRecord(void const *args) { + while(1) { + if(isrec) led = !led; + else led = 0; + Thread::wait(1 * SECOND); } } - -/* extra credit - video */ -void uLCD_video_thread(void const *args) { - lcd.media_init(); - lcd.set_sector_address(0x001D, 0x4C42); - lcd.display_video(0,0); +void pbRec_hit_callback (void) { + if (!isrec) {isrec = true; sequence.clear();} + else if(isrec) {isrec = false;} } -// - extra - -RGBLed rgbLED(p21, p22, p23); // object to use the RGB LED -const LightColor green(0.0, 1.0, 0.0); -const LightColor yellow(1.0, 1.0, 0.0); -const LightColor orange(1.0, 0.6, 0.0); -const LightColor red(1.0,0.0,0.0); -const LightColor violet(1.0, 0.0, 0.8); -const LightColor blue(0.0, 0.0, 1.0); +void pbPlay_hit_callback (void) { + if (!play) {play = true;} + else if(play) {play = false;} +} -// rgb led thread -void rainbow_led_thread(void const *args) { - // reboot with white (6 sec), then cycle through apple colors (54 sec) - while (true) { - rgbLED.write(1.0, 1.0, 1.0); // bright white - Thread::wait(2 * SECOND); - // dim to nothing over 4 seconds - for (float c = 1.0; c > 0.0; c = c - 0.01) { - rgbLED.write(c, c, c); - Thread::wait(40); // 40 * 100 = 4000 = 4 secs - } - // rotate through other colors over 54 seconds - rgbLED = green; - Thread::wait(9 * SECOND); - rgbLED = yellow; - Thread::wait(9 * SECOND); - rgbLED = orange; - Thread::wait(9 * SECOND); - rgbLED = red; - Thread::wait(9 * SECOND); - rgbLED = violet; - Thread::wait(9 * SECOND); - rgbLED = blue; - Thread::wait(9 * SECOND); +void playback(int num) { + switch(num) { //uses a case statement for each individual touch sensor + case 1: + led = 1; + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(0,93,42,124,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_dixiehorn, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 2: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(0,62,42,93,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_guitarjazz, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 3: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(0,31,42,62,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaA, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 4: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(0,0,42,31,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaChime, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 5: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(42,93,84,124,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaF, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 6: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(42,62,84,93,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaG, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 7: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(42,31,84,62,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaD, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 8: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(42,0,84,31,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_marimbaC, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 9: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(84,93,127,124,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_snare, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 10: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(84,62,127,93,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_splash, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 11: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(84,31,127,62,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_tomHigh, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; + case 12: + if (isrec) sequence.push_back(num); + stdio_mutex.lock(); + uLCD.filled_rectangle(84,0,127,31,RED); + stdio_mutex.unlock(); + sampletick.attach(&audio_sample_kick, 1.0 / sample_freq); + Thread::wait(.75 * SECOND); + break; } } -SDFileSystem sd(p5, p6, p7, p8, "sd"); // SD card with .wav files -AnalogOut DACout(p18); // DAC for producing sound -wave_player waver(&DACout); // wavplayer object -// - 2 +void initialize() { + speaker.period(1.0/250000.0); //PWM freq >10X audio sample rate + pbRec.mode(PullUp); + pbPlay.mode(PullUp); + wait(.001); + pbRec.attach_deasserted(&pbRec_hit_callback); + pbPlay.attach_deasserted(&pbPlay_hit_callback); + pbRec.setSampleFrequency(); + pbPlay.setSampleFrequency(); + interrupt.fall(&fallInterrupt); + interrupt.mode(PullUp); +} -int main() { - /* 1 calls - led1 = 1, led2 = 1, led3 = 1, led4 = 1; - - first.attach(&one, 1.0); // attach the function and when to call it - second.attach(&two, 2.0); - third.attach(&three, 3.0); - fourth.attach(&four, 4.0); - */// - 1 - - - /* 2 calls */ - Thread thread2(uLCD_reboot_thread); - Thread thread3(uLCD_status_thread); - Thread thread4(rainbow_led_thread); - //Thread thread5(uLCD_video_thread); - - FILE *wave_file; - - // - 2 - - - led = 1; - - while(true) { - - /* 2 speaker 'thread' calls */ - // speaker plays mac reboot sound, error sound occasionally - // play reboot sound - wave_file = fopen("/sd/reboot.wav","r"); - waver.play(wave_file); - fclose(wave_file); - // wait 20 - Thread::wait(20 * SECOND); - // error - wave_file = fopen("/sd/error.wav","r"); - waver.play(wave_file); - fclose(wave_file); - // wait 20 - Thread::wait(20 * SECOND); - // error - waver.play(wave_file); - fclose(wave_file); - // wait 20 - Thread::wait(20 * SECOND); - // - 2 - } // interupts will occur automatically -} +int main() +{ + initialize(); +// Thread thread2(bluetooth, NULL, osPriorityNormal, 2000, NULL); + Thread thread2(ledRecord, NULL, osPriorityNormal, 2000, NULL); +// Thread thread3(bluetooth, NULL, osPriorityNormal, 2000, NULL); + //defaultscreen(); + while (1) { + //uLCD.printf("play = %i", (int)play); + if (play) { + for (int j=0; j < sequence.size(); j++) { + if (play) playback(sequence[j]); + else break; + } + } +// Thread thread2(layeredAudio); + playback(key_code); + uLCD.cls(); + } +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaAmin.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,380 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 05:41:37 PM +* FileName: marimbaAmin_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 2800 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 2800 + +const unsigned char data_a[NUM_ELEMENTS] = { +127, 127, 127, 127, 127, 127, 127, 127, /* 0-7 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 8-15 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 16-23 */ +128, 127, 128, 127, 128, 127, 128, 127, /* 24-31 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 32-39 */ +127, 127, 127, 128, 127, 128, 127, 128, /* 40-47 */ +127, 128, 127, 128, 127, 128, 127, 127, /* 48-55 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 56-63 */ +127, 128, 130, 127, 124, 125, 129, 130, /* 64-71 */ +133, 135, 136, 110, 103, 125, 146, 147, /* 72-79 */ +124, 99, 102, 110, 146, 166, 160, 119, /* 80-87 */ + 88, 89, 129, 203, 139, 121, 113, 105, /* 88-95 */ +107, 115, 142, 163, 164, 136, 88, 58, /* 96-103 */ +102, 159, 212, 173, 93, 37, 69, 147, /* 104-111 */ +209, 190, 120, 66, 77, 143, 187, 177, /* 112-119 */ +116, 68, 68, 120, 175, 172, 141, 113, /* 120-127 */ +111, 116, 104, 110, 124, 152, 177, 169, /* 128-135 */ +107, 57, 53, 129, 202, 202, 130, 57, /* 136-143 */ + 62, 143, 213, 199, 106, 24, 35, 135, /* 144-151 */ +232, 236, 153, 56, 40, 92, 157, 171, /* 152-159 */ +148, 115, 127, 149, 146, 107, 75, 88, /* 160-167 */ +143, 178, 162, 108, 82, 113, 168, 180, /* 168-175 */ +120, 47, 40, 126, 221, 251, 166, 49, /* 176-183 */ + 0, 66, 172, 224, 182, 104, 70, 109, /* 184-191 */ +159, 167, 118, 71, 82, 139, 180, 171, /* 192-199 */ +129, 95, 103, 128, 130, 104, 86, 121, /* 200-207 */ +187, 210, 161, 67, 19, 63, 166, 229, /* 208-215 */ +200, 107, 51, 79, 157, 194, 157, 81, /* 216-223 */ + 53, 104, 182, 213, 168, 91, 54, 83, /* 224-231 */ +136, 162, 149, 131, 131, 146, 139, 107, /* 232-239 */ + 74, 91, 148, 198, 188, 127, 68, 78, /* 240-247 */ +138, 188, 172, 104, 57, 88, 172, 223, /* 248-255 */ +189, 88, 24, 48, 135, 207, 203, 135, /* 256-263 */ + 77, 71, 110, 142, 136, 115, 115, 140, /* 264-271 */ +160, 144, 105, 84, 104, 149, 163, 132, /* 272-279 */ + 91, 96, 146, 191, 176, 101, 35, 51, /* 280-287 */ +139, 223, 224, 142, 51, 32, 95, 172, /* 288-295 */ +189, 143, 89, 85, 126, 162, 152, 109, /* 296-303 */ + 80, 98, 137, 154, 139, 119, 120, 140, /* 304-311 */ +142, 113, 77, 79, 137, 201, 209, 140, /* 312-319 */ + 55, 32, 94, 183, 216, 166, 85, 57, /* 320-327 */ +106, 175, 193, 143, 75, 61, 113, 179, /* 328-335 */ +199, 156, 99, 80, 104, 135, 142, 132, /* 336-343 */ +131, 150, 162, 138, 93, 68, 99, 165, /* 344-351 */ +200, 170, 97, 57, 89, 163, 200, 163, /* 352-359 */ + 86, 49, 95, 178, 223, 179, 92, 45, /* 360-367 */ + 75, 148, 199, 182, 131, 99, 107, 131, /* 368-375 */ +139, 122, 113, 131, 157, 160, 126, 86, /* 376-383 */ + 85, 127, 166, 159, 107, 70, 89, 151, /* 384-391 */ +196, 168, 86, 31, 58, 145, 214, 203, /* 392-399 */ +126, 58, 60, 118, 172, 173, 131, 101, /* 400-407 */ +110, 144, 160, 140, 106, 99, 123, 147, /* 408-415 */ +145, 121, 113, 131, 156, 148, 103, 63, /* 416-423 */ + 74, 138, 202, 198, 124, 50, 41, 105, /* 424-431 */ +179, 194, 140, 82, 74, 123, 171, 168, /* 432-439 */ +118, 77, 85, 135, 175, 169, 134, 107, /* 440-447 */ +111, 127, 131, 118, 113, 135, 171, 177, /* 448-455 */ +136, 79, 63, 105, 170, 195, 155, 92, /* 456-463 */ + 68, 108, 167, 181, 134, 73, 62, 115, /* 464-471 */ +181, 196, 146, 84, 61, 96, 145, 166, /* 472-479 */ +148, 121, 117, 132, 136, 118, 101, 108, /* 480-487 */ +142, 167, 158, 118, 90, 105, 147, 168, /* 488-495 */ +146, 97, 77, 114, 175, 198, 154, 82, /* 496-503 */ + 47, 85, 157, 199, 175, 115, 75, 89, /* 504-511 */ +131, 154, 141, 113, 107, 128, 149, 144, /* 512-519 */ +120, 104, 115, 138, 143, 126, 108, 119, /* 520-527 */ +152, 171, 149, 97, 66, 93, 158, 201, /* 528-535 */ +182, 116, 65, 75, 130, 177, 169, 122, /* 536-543 */ + 88, 98, 138, 163, 146, 107, 86, 102, /* 544-551 */ +134, 152, 141, 122, 115, 123, 125, 113, /* 552-559 */ + 99, 109, 142, 171, 163, 118, 74, 75, /* 560-567 */ +123, 174, 177, 133, 88, 86, 129, 170, /* 568-575 */ +166, 119, 79, 85, 133, 176, 175, 134, /* 576-583 */ + 93, 85, 110, 137, 143, 134, 127, 133, /* 584-591 */ +135, 122, 102, 96, 117, 151, 163, 140, /* 592-599 */ +104, 91, 118, 154, 161, 129, 89, 86, /* 600-607 */ +129, 179, 186, 142, 85, 67, 102, 157, /* 608-615 */ +183, 162, 123, 102, 111, 132, 139, 130, /* 616-623 */ +121, 129, 143, 146, 132, 114, 114, 132, /* 624-631 */ +144, 135, 112, 105, 129, 164, 173, 138, /* 632-639 */ + 88, 69, 103, 161, 192, 168, 114, 80, /* 640-647 */ + 94, 135, 163, 152, 121, 104, 118, 146, /* 648-655 */ +154, 138, 111, 104, 117, 135, 140, 134, /* 656-663 */ +129, 135, 139, 127, 104, 91, 110, 149, /* 664-671 */ +176, 160, 112, 77, 87, 130, 166, 160, /* 672-679 */ +120, 90, 100, 138, 163, 150, 110, 84, /* 680-687 */ + 96, 134, 163, 157, 129, 106, 104, 118, /* 688-695 */ +127, 127, 126, 134, 144, 142, 121, 98, /* 696-703 */ + 98, 124, 154, 156, 129, 100, 100, 129, /* 704-711 */ +157, 153, 116, 85, 91, 132, 171, 171, /* 712-719 */ +131, 89, 82, 112, 147, 159, 141, 119, /* 720-727 */ +114, 123, 131, 127, 118, 119, 132, 143, /* 728-735 */ +138, 122, 113, 121, 138, 142, 124, 104, /* 736-743 */ +104, 132, 163, 164, 129, 88, 79, 112, /* 744-751 */ +157, 174, 149, 110, 92, 108, 137, 149, /* 752-759 */ +135, 115, 111, 126, 143, 143, 127, 114, /* 760-767 */ +115, 125, 132, 129, 126, 131, 143, 144, /* 768-775 */ +127, 102, 95, 118, 154, 169, 149, 110, /* 776-783 */ + 89, 103, 138, 158, 146, 115, 100, 115, /* 784-791 */ +144, 156, 139, 109, 96, 110, 138, 152, /* 792-799 */ +145, 128, 117, 118, 122, 121, 120, 127, /* 800-807 */ +142, 151, 141, 117, 100, 107, 134, 154, /* 808-815 */ +149, 123, 105, 114, 141, 157, 143, 112, /* 816-823 */ + 93, 107, 143, 167, 158, 126, 99, 99, /* 824-831 */ +121, 142, 144, 135, 126, 126, 129, 127, /* 832-839 */ +118, 115, 122, 135, 141, 131, 118, 116, /* 840-847 */ +128, 140, 134, 115, 101, 110, 141, 162, /* 848-855 */ +154, 119, 90, 91, 121, 152, 157, 138, /* 856-863 */ +112, 107, 120, 136, 136, 124, 115, 121, /* 864-871 */ +135, 142, 136, 124, 118, 121, 127, 127, /* 872-879 */ +123, 125, 137, 148, 143, 121, 99, 100, /* 880-887 */ +126, 154, 162, 140, 110, 100, 116, 141, /* 888-895 */ +148, 132, 113, 111, 129, 149, 149, 129, /* 896-903 */ +108, 106, 121, 138, 144, 138, 130, 127, /* 904-911 */ +127, 123, 116, 116, 128, 146, 152, 139, /* 912-919 */ +116, 105, 115, 137, 148, 137, 117, 110, /* 920-927 */ +125, 146, 150, 131, 105, 97, 115, 144, /* 928-935 */ +157, 145, 121, 107, 111, 124, 133, 132, /* 936-943 */ +128, 130, 135, 134, 125, 115, 115, 127, /* 944-951 */ +138, 138, 128, 119, 124, 136, 141, 129, /* 952-959 */ +110, 103, 118, 145, 158, 145, 115, 96, /* 960-967 */ +102, 126, 144, 143, 128, 116, 118, 127, /* 968-975 */ +132, 124, 116, 115, 125, 135, 136, 129, /* 976-983 */ +122, 122, 127, 126, 121, 117, 124, 140, /* 984-991 */ +149, 140, 117, 100, 105, 129, 149, 150, /* 992-999 */ +131, 113, 111, 124, 138, 135, 122, 113, /* 1000-1007 */ +118, 134, 144, 138, 123, 111, 113, 124, /* 1008-1015 */ +132, 133, 131, 131, 133, 130, 121, 112, /* 1016-1023 */ +115, 129, 145, 147, 134, 115, 111, 122, /* 1024-1031 */ +137, 140, 129, 116, 118, 132, 146, 143, /* 1032-1039 */ +124, 108, 107, 123, 141, 147, 137, 124, /* 1040-1047 */ +116, 119, 124, 126, 126, 128, 135, 138, /* 1048-1055 */ +133, 121, 115, 119, 130, 137, 133, 124, /* 1056-1063 */ +122, 129, 141, 140, 126, 110, 109, 126, /* 1064-1071 */ +146, 153, 141, 119, 108, 115, 129, 139, /* 1072-1079 */ +137, 128, 124, 128, 132, 129, 122, 118, /* 1080-1087 */ +122, 131, 135, 132, 127, 125, 129, 129, /* 1088-1095 */ +124, 116, 116, 128, 143, 148, 135, 116, /* 1096-1103 */ +105, 113, 131, 145, 141, 128, 118, 121, /* 1104-1111 */ +129, 135, 129, 119, 116, 124, 136, 140, /* 1112-1119 */ +134, 123, 117, 118, 124, 127, 127, 129, /* 1120-1127 */ +134, 135, 129, 117, 110, 115, 129, 142, /* 1128-1135 */ +141, 128, 115, 116, 126, 135, 132, 122, /* 1136-1143 */ +115, 121, 135, 143, 138, 123, 111, 113, /* 1144-1151 */ +125, 138, 140, 134, 127, 124, 124, 124, /* 1152-1159 */ +121, 123, 129, 136, 137, 129, 121, 118, /* 1160-1167 */ +124, 131, 132, 127, 121, 124, 134, 141, /* 1168-1175 */ +137, 123, 111, 113, 128, 143, 147, 136, /* 1176-1183 */ +122, 115, 121, 129, 134, 132, 129, 129, /* 1184-1191 */ +132, 133, 129, 124, 122, 126, 130, 132, /* 1192-1199 */ +129, 129, 130, 132, 130, 122, 115, 117, /* 1200-1207 */ +129, 141, 144, 132, 117, 111, 118, 131, /* 1208-1215 */ +138, 135, 125, 121, 126, 132, 132, 126, /* 1216-1223 */ +119, 119, 127, 134, 136, 131, 125, 122, /* 1224-1231 */ +122, 123, 124, 125, 130, 136, 136, 128, /* 1232-1239 */ +117, 113, 118, 131, 138, 135, 125, 118, /* 1240-1247 */ +121, 129, 132, 127, 118, 116, 124, 135, /* 1248-1255 */ +139, 132, 121, 114, 116, 124, 132, 133, /* 1256-1263 */ +132, 129, 127, 125, 121, 119, 123, 129, /* 1264-1271 */ +135, 134, 127, 122, 121, 127, 130, 128, /* 1272-1279 */ +122, 120, 126, 135, 138, 132, 119, 112, /* 1280-1287 */ +115, 128, 138, 139, 131, 122, 120, 123, /* 1288-1295 */ +127, 127, 127, 127, 130, 132, 131, 127, /* 1296-1303 */ +123, 124, 127, 129, 128, 127, 129, 133, /* 1304-1311 */ +135, 129, 121, 115, 119, 131, 141, 140, /* 1312-1319 */ +130, 119, 117, 123, 131, 134, 130, 126, /* 1320-1327 */ +126, 129, 132, 130, 124, 121, 122, 128, /* 1328-1335 */ +133, 134, 131, 128, 127, 125, 123, 123, /* 1336-1343 */ +125, 132, 138, 137, 129, 120, 117, 124, /* 1344-1351 */ +132, 136, 132, 126, 124, 128, 132, 132, /* 1352-1359 */ +126, 120, 121, 128, 136, 138, 132, 124, /* 1360-1367 */ +120, 121, 126, 129, 131, 132, 132, 130, /* 1368-1375 */ +127, 122, 120, 124, 130, 134, 132, 127, /* 1376-1383 */ +124, 125, 129, 129, 126, 121, 122, 128, /* 1384-1391 */ +135, 138, 130, 120, 115, 119, 129, 135, /* 1392-1399 */ +134, 129, 124, 124, 124, 125, 124, 124, /* 1400-1407 */ +127, 130, 131, 129, 125, 124, 124, 126, /* 1408-1415 */ +127, 125, 125, 129, 134, 134, 128, 120, /* 1416-1423 */ +117, 121, 132, 138, 137, 129, 122, 121, /* 1424-1431 */ +125, 130, 130, 127, 127, 128, 132, 132, /* 1432-1439 */ +129, 124, 122, 124, 128, 130, 132, 131, /* 1440-1447 */ +130, 128, 125, 122, 121, 125, 132, 137, /* 1448-1455 */ +135, 127, 121, 120, 125, 131, 132, 129, /* 1456-1463 */ +127, 127, 130, 132, 130, 125, 121, 123, /* 1464-1471 */ +129, 135, 135, 131, 125, 123, 123, 125, /* 1472-1479 */ +127, 129, 131, 132, 130, 125, 121, 120, /* 1480-1487 */ +124, 129, 132, 129, 125, 124, 127, 129, /* 1488-1495 */ +127, 123, 121, 122, 128, 135, 134, 128, /* 1496-1503 */ +121, 118, 121, 127, 131, 132, 129, 127, /* 1504-1511 */ +126, 124, 124, 123, 124, 127, 129, 129, /* 1512-1519 */ +127, 125, 124, 125, 125, 124, 122, 124, /* 1520-1527 */ +129, 132, 132, 126, 119, 118, 122, 129, /* 1528-1535 */ +134, 132, 127, 124, 123, 126, 127, 127, /* 1536-1543 */ +127, 127, 129, 131, 130, 127, 124, 124, /* 1544-1551 */ +125, 127, 128, 129, 130, 131, 129, 125, /* 1552-1559 */ +121, 121, 125, 132, 135, 132, 127, 122, /* 1560-1567 */ +122, 126, 130, 129, 127, 126, 127, 131, /* 1568-1575 */ +131, 129, 124, 123, 124, 129, 132, 133, /* 1576-1583 */ +131, 128, 126, 125, 125, 126, 129, 132, /* 1584-1591 */ +133, 131, 127, 123, 124, 127, 131, 131, /* 1592-1599 */ +129, 127, 127, 130, 131, 129, 124, 123, /* 1600-1607 */ +125, 130, 135, 134, 129, 124, 123, 125, /* 1608-1615 */ +128, 131, 132, 131, 129, 129, 127, 125, /* 1616-1623 */ +125, 127, 129, 130, 129, 129, 128, 128, /* 1624-1631 */ +128, 127, 124, 124, 127, 130, 134, 132, /* 1632-1639 */ +127, 121, 121, 124, 129, 132, 131, 127, /* 1640-1647 */ +126, 126, 126, 127, 126, 126, 127, 129, /* 1648-1655 */ +129, 129, 127, 125, 125, 125, 126, 127, /* 1656-1663 */ +129, 131, 131, 129, 125, 121, 121, 126, /* 1664-1671 */ +130, 132, 129, 126, 123, 124, 126, 128, /* 1672-1679 */ +127, 126, 125, 127, 129, 129, 127, 124, /* 1680-1687 */ +123, 124, 127, 129, 129, 129, 128, 126, /* 1688-1695 */ +124, 123, 124, 127, 130, 132, 129, 126, /* 1696-1703 */ +124, 124, 127, 129, 129, 127, 127, 128, /* 1704-1711 */ +130, 130, 127, 124, 123, 125, 129, 132, /* 1712-1719 */ +132, 128, 125, 124, 125, 127, 129, 129, /* 1720-1727 */ +129, 129, 129, 127, 125, 125, 127, 129, /* 1728-1735 */ +129, 129, 128, 129, 129, 128, 126, 124, /* 1736-1743 */ +124, 127, 131, 133, 131, 127, 123, 123, /* 1744-1751 */ +126, 129, 130, 129, 128, 127, 127, 127, /* 1752-1759 */ +126, 126, 126, 127, 129, 129, 129, 127, /* 1760-1767 */ +127, 126, 125, 124, 126, 127, 129, 131, /* 1768-1775 */ +129, 125, 122, 123, 126, 129, 131, 129, /* 1776-1783 */ +127, 125, 126, 127, 127, 126, 126, 127, /* 1784-1791 */ +129, 129, 129, 127, 125, 124, 124, 127, /* 1792-1799 */ +129, 129, 129, 129, 127, 124, 123, 125, /* 1800-1807 */ +127, 129, 130, 129, 126, 125, 126, 127, /* 1808-1815 */ +128, 127, 127, 127, 129, 130, 129, 127, /* 1816-1823 */ +124, 124, 127, 129, 132, 131, 129, 127, /* 1824-1831 */ +126, 126, 126, 128, 129, 129, 129, 129, /* 1832-1839 */ +127, 126, 126, 127, 128, 127, 127, 128, /* 1840-1847 */ +129, 129, 128, 126, 124, 124, 127, 130, /* 1848-1855 */ +132, 131, 127, 125, 125, 126, 128, 129, /* 1856-1863 */ +129, 129, 129, 128, 127, 127, 126, 127, /* 1864-1871 */ +128, 129, 129, 129, 129, 128, 127, 126, /* 1872-1879 */ +125, 127, 129, 131, 131, 129, 126, 124, /* 1880-1887 */ +124, 127, 129, 129, 129, 127, 127, 127, /* 1888-1895 */ +127, 127, 126, 127, 127, 129, 129, 129, /* 1896-1903 */ +128, 126, 125, 126, 127, 129, 129, 129, /* 1904-1911 */ +129, 127, 125, 124, 125, 127, 129, 129, /* 1912-1919 */ +129, 127, 126, 126, 127, 127, 126, 126, /* 1920-1927 */ +127, 129, 129, 128, 126, 124, 124, 126, /* 1928-1935 */ +128, 129, 129, 129, 127, 126, 125, 125, /* 1936-1943 */ +127, 128, 129, 129, 128, 127, 126, 126, /* 1944-1951 */ +127, 127, 127, 127, 127, 129, 129, 128, /* 1952-1959 */ +125, 124, 124, 127, 129, 129, 129, 127, /* 1960-1967 */ +125, 125, 126, 127, 128, 129, 129, 129, /* 1968-1975 */ +128, 127, 126, 126, 127, 127, 129, 129, /* 1976-1983 */ +129, 129, 129, 127, 126, 125, 126, 129, /* 1984-1991 */ +131, 131, 129, 126, 125, 125, 127, 129, /* 1992-1999 */ +129, 129, 127, 128, 128, 127, 126, 126, /* 2000-2007 */ +126, 127, 129, 129, 129, 128, 127, 126, /* 2008-2015 */ +126, 126, 127, 129, 129, 129, 128, 125, /* 2016-2023 */ +125, 126, 128, 129, 129, 128, 127, 127, /* 2024-2031 */ +127, 127, 126, 126, 126, 127, 129, 129, /* 2032-2039 */ +128, 126, 125, 125, 126, 127, 129, 129, /* 2040-2047 */ +129, 128, 126, 125, 125, 126, 127, 129, /* 2048-2055 */ +129, 128, 127, 126, 127, 127, 127, 126, /* 2056-2063 */ +127, 127, 129, 129, 128, 126, 124, 125, /* 2064-2071 */ +127, 129, 129, 129, 127, 126, 126, 126, /* 2072-2079 */ +126, 127, 128, 129, 129, 128, 127, 126, /* 2080-2087 */ +126, 127, 127, 127, 127, 129, 129, 129, /* 2088-2095 */ +127, 126, 125, 126, 129, 129, 129, 129, /* 2096-2103 */ +127, 126, 126, 127, 128, 129, 129, 129, /* 2104-2111 */ +129, 128, 128, 127, 126, 127, 127, 129, /* 2112-2119 */ +129, 129, 128, 128, 127, 126, 126, 127, /* 2120-2127 */ +129, 129, 129, 128, 126, 126, 127, 128, /* 2128-2135 */ +129, 129, 128, 128, 128, 128, 128, 127, /* 2136-2143 */ +126, 127, 129, 129, 129, 129, 127, 126, /* 2144-2151 */ +126, 127, 128, 129, 129, 129, 129, 127, /* 2152-2159 */ +126, 126, 127, 128, 129, 129, 128, 127, /* 2160-2167 */ +127, 127, 127, 127, 127, 127, 129, 129, /* 2168-2175 */ +129, 128, 126, 125, 126, 127, 129, 129, /* 2176-2183 */ +129, 128, 127, 127, 126, 127, 127, 128, /* 2184-2191 */ +129, 129, 128, 127, 127, 127, 127, 127, /* 2192-2199 */ +127, 127, 129, 129, 128, 127, 125, 125, /* 2200-2207 */ +126, 128, 129, 129, 128, 127, 126, 126, /* 2208-2215 */ +127, 127, 127, 127, 127, 128, 128, 127, /* 2216-2223 */ +126, 126, 126, 127, 127, 128, 128, 128, /* 2224-2231 */ +127, 126, 125, 126, 127, 128, 129, 129, /* 2232-2239 */ +127, 126, 125, 126, 127, 127, 127, 127, /* 2240-2247 */ +127, 128, 128, 127, 126, 126, 126, 127, /* 2248-2255 */ +129, 129, 128, 127, 126, 126, 126, 127, /* 2256-2263 */ +127, 129, 129, 128, 127, 126, 126, 126, /* 2264-2271 */ +127, 128, 128, 127, 127, 127, 127, 127, /* 2272-2279 */ +126, 126, 127, 127, 129, 129, 127, 126, /* 2280-2287 */ +125, 126, 127, 127, 128, 128, 128, 127, /* 2288-2295 */ +127, 126, 126, 127, 128, 128, 129, 128, /* 2296-2303 */ +127, 127, 127, 127, 127, 127, 127, 129, /* 2304-2311 */ +129, 129, 127, 126, 125, 126, 128, 129, /* 2312-2319 */ +129, 128, 127, 127, 127, 127, 127, 127, /* 2320-2327 */ +127, 128, 128, 128, 127, 127, 127, 127, /* 2328-2335 */ +127, 128, 129, 129, 129, 128, 127, 126, /* 2336-2343 */ +127, 128, 129, 129, 129, 128, 127, 127, /* 2344-2351 */ +127, 128, 128, 128, 128, 129, 129, 128, /* 2352-2359 */ +128, 127, 127, 127, 128, 129, 129, 129, /* 2360-2367 */ +128, 127, 127, 127, 127, 128, 129, 129, /* 2368-2375 */ +129, 128, 127, 127, 128, 128, 129, 129, /* 2376-2383 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 2384-2391 */ +129, 129, 129, 128, 127, 126, 127, 127, /* 2392-2399 */ +127, 128, 129, 128, 128, 127, 126, 126, /* 2400-2407 */ +127, 128, 128, 128, 128, 128, 128, 127, /* 2408-2415 */ +127, 127, 127, 127, 129, 129, 129, 127, /* 2416-2423 */ +126, 126, 127, 128, 128, 128, 128, 127, /* 2424-2431 */ +127, 127, 127, 127, 127, 127, 127, 128, /* 2432-2439 */ +128, 127, 127, 126, 126, 127, 127, 127, /* 2440-2447 */ +128, 128, 128, 127, 126, 126, 127, 128, /* 2448-2455 */ +129, 128, 127, 127, 127, 127, 127, 127, /* 2456-2463 */ +127, 127, 128, 128, 128, 127, 126, 126, /* 2464-2471 */ +127, 127, 127, 128, 128, 127, 127, 126, /* 2472-2479 */ +126, 126, 127, 128, 128, 128, 127, 126, /* 2480-2487 */ +126, 127, 127, 127, 127, 127, 128, 128, /* 2488-2495 */ +128, 127, 126, 126, 127, 128, 129, 128, /* 2496-2503 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 2504-2511 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 2512-2519 */ +127, 128, 128, 128, 127, 127, 126, 127, /* 2520-2527 */ +127, 128, 129, 128, 127, 126, 126, 127, /* 2528-2535 */ +128, 128, 128, 128, 128, 128, 127, 127, /* 2536-2543 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 2544-2551 */ +127, 127, 127, 127, 128, 128, 129, 128, /* 2552-2559 */ +127, 126, 126, 127, 128, 128, 128, 128, /* 2560-2567 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 2568-2575 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 2576-2583 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 2584-2591 */ +128, 129, 128, 128, 127, 127, 127, 127, /* 2592-2599 */ +127, 127, 128, 128, 128, 128, 127, 127, /* 2600-2607 */ +127, 127, 128, 129, 129, 128, 128, 127, /* 2608-2615 */ +127, 127, 127, 128, 129, 129, 128, 128, /* 2616-2623 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 2624-2631 */ +128, 128, 127, 127, 127, 127, 128, 129, /* 2632-2639 */ +128, 128, 127, 127, 127, 127, 128, 128, /* 2640-2647 */ +128, 128, 128, 127, 127, 127, 127, 128, /* 2648-2655 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 2656-2663 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 2664-2671 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 2672-2679 */ +127, 127, 127, 127, 128, 128, 128, 127, /* 2680-2687 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 2688-2695 */ +128, 127, 127, 127, 127, 128, 128, 128, /* 2696-2703 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 2704-2711 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 2712-2719 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 2720-2727 */ +127, 128, 128, 128, 127, 127, 127, 127, /* 2728-2735 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 2736-2743 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 2744-2751 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 2752-2759 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 2760-2767 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 2768-2775 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 2776-2783 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 2784-2791 */ +127, 127, 128, 128, 127, 127, 127, 127}; /* 2792-2799 */ + +//get and set the frequency from wav conversion tool GUI +int a=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaA() +{ + + speaker = data_a[a]/255.0;//scale to 0.0 to 1.0 for PWM + a++; + if (a>= NUM_ELEMENTS) { + a = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaChimeC.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,583 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:47:23 PM +* FileName: marimbaChimeC_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 4411 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 4411 + +const unsigned char data_chime[NUM_ELEMENTS] = { +126, 126, 126, 126, 126, 126, 128, 126, /* 0-7 */ +128, 126, 126, 127, 126, 127, 126, 127, /* 8-15 */ +126, 127, 127, 127, 127, 127, 127, 127, /* 16-23 */ +126, 128, 127, 127, 127, 127, 128, 127, /* 24-31 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 32-39 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 40-47 */ +127, 128, 126, 128, 128, 127, 127, 127, /* 48-55 */ +126, 128, 128, 128, 128, 128, 128, 127, /* 56-63 */ +128, 127, 128, 127, 128, 127, 127, 127, /* 64-71 */ +128, 128, 128, 127, 128, 127, 128, 127, /* 72-79 */ +127, 127, 128, 128, 127, 127, 126, 127, /* 80-87 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 88-95 */ +127, 127, 126, 126, 128, 129, 131, 125, /* 96-103 */ +119, 125, 131, 133, 134, 145, 136, 92, /* 104-111 */ + 90, 129, 156, 156, 114, 79, 81, 120, /* 112-119 */ +170, 190, 158, 104, 63, 79, 134, 189, /* 120-127 */ +190, 151, 89, 68, 86, 136, 195, 186, /* 128-135 */ +145, 66, 64, 79, 217, 200, 104, 114, /* 136-143 */ + 80, 86, 98, 145, 176, 191, 159, 103, /* 144-151 */ + 40, 59, 136, 230, 227, 123, 10, 6, /* 152-159 */ +108, 231, 7, 157, 32, 242, 75, 201, /* 160-167 */ +247, 179, 77, 27, 76, 157, 191, 146, /* 168-175 */ +109, 105, 140, 139, 120, 101, 120, 171, /* 176-183 */ +197, 146, 59, 14, 90, 230, 19, 191, /* 184-191 */ + 26, 217, 58, 231, 46, 213, 39, 211, /* 192-199 */ + 38, 206, 25, 206, 60, 252, 59, 178, /* 200-207 */ +223, 167, 78, 57, 121, 171, 156, 93, /* 208-215 */ + 68, 123, 197, 191, 106, 22, 50, 161, /* 216-223 */ + 4, 218, 81, 234, 25, 175, 33, 244, /* 224-231 */ + 81, 222, 10, 174, 28, 235, 86, 243, /* 232-239 */ + 32, 162, 241, 197, 85, 36, 86, 168, /* 240-247 */ +185, 133, 77, 89, 156, 192, 148, 64, /* 248-255 */ + 43, 125, 221, 231, 128, 14, 12, 137, /* 256-263 */ + 6, 3, 123, 245, 250, 131, 6, 0, /* 264-271 */ +125, 1, 11, 128, 234, 227, 129, 44, /* 272-279 */ + 61, 140, 192, 169, 111, 89, 129, 171, /* 280-287 */ +160, 101, 70, 115, 194, 213, 142, 42, /* 288-295 */ + 17, 110, 228, 253, 146, 6, 230, 89, /* 296-303 */ +230, 13, 159, 17, 240, 80, 210, 242, /* 304-311 */ +157, 49, 27, 98, 183, 192, 132, 84, /* 312-319 */ +100, 149, 166, 126, 84, 96, 165, 210, /* 320-327 */ +168, 72, 23, 87, 201, 254, 182, 41, /* 328-335 */ +237, 60, 205, 15, 194, 46, 228, 41, /* 336-343 */ +182, 251, 190, 69, 13, 68, 164, 206, /* 344-351 */ +162, 93, 79, 125, 164, 149, 105, 94, /* 352-359 */ +141, 192, 177, 106, 44, 72, 174, 248, /* 360-367 */ +206, 82, 253, 41, 177, 15, 225, 83, /* 368-375 */ +238, 23, 161, 2, 223, 99, 11, 42, /* 376-383 */ +145, 217, 193, 107, 61, 91, 156, 173, /* 384-391 */ +134, 94, 111, 168, 186, 134, 65, 57, /* 392-399 */ +139, 226, 225, 123, 17, 21, 137, 253, /* 400-407 */ +250, 130, 6, 5, 122, 244, 248, 132, /* 408-415 */ + 22, 20, 115, 210, 207, 124, 58, 68, /* 416-423 */ +131, 171, 147, 95, 87, 128, 166, 148, /* 424-431 */ + 86, 52, 100, 185, 213, 145, 44, 19, /* 432-439 */ + 99, 218, 252, 159, 31, 1, 95, 224, /* 440-447 */ + 2, 167, 45, 13, 94, 202, 228, 156, /* 448-455 */ + 69, 52, 111, 172, 172, 120, 84, 105, /* 456-463 */ +150, 159, 112, 69, 86, 156, 200, 164, /* 464-471 */ + 74, 25, 77, 185, 242, 182, 63, 5, /* 472-479 */ + 70, 194, 255, 193, 74, 19, 77, 189, /* 480-487 */ +237, 180, 87, 55, 105, 177, 191, 141, /* 488-495 */ + 88, 94, 143, 168, 138, 86, 77, 129, /* 496-503 */ +185, 174, 100, 38, 59, 150, 219, 190, /* 504-511 */ + 86, 11, 46, 158, 237, 203, 90, 15, /* 512-519 */ + 51, 159, 230, 195, 103, 45, 77, 157, /* 520-527 */ +200, 171, 107, 82, 117, 162, 162, 122, /* 528-535 */ + 96, 118, 163, 173, 128, 69, 70, 135, /* 536-543 */ +201, 192, 112, 34, 42, 136, 220, 211, /* 544-551 */ +113, 26, 35, 129, 217, 210, 124, 47, /* 552-559 */ + 53, 130, 194, 186, 125, 83, 97, 144, /* 560-567 */ +167, 143, 107, 108, 144, 169, 143, 93, /* 568-575 */ + 76, 118, 180, 194, 136, 57, 43, 112, /* 576-583 */ +198, 211, 136, 43, 26, 102, 194, 211, /* 584-591 */ +139, 56, 40, 103, 178, 192, 140, 81, /* 592-599 */ + 78, 122, 161, 156, 121, 104, 125, 154, /* 600-607 */ +150, 115, 88, 109, 162, 187, 150, 82, /* 608-615 */ + 52, 99, 179, 212, 158, 69, 31, 87, /* 616-623 */ +178, 215, 163, 76, 38, 84, 164, 197, /* 624-631 */ +159, 94, 69, 103, 151, 165, 138, 108, /* 632-639 */ +113, 139, 151, 130, 104, 108, 148, 180, /* 640-647 */ +162, 106, 67, 94, 165, 209, 179, 99, /* 648-655 */ + 46, 77, 160, 217, 189, 107, 50, 72, /* 656-663 */ +147, 199, 181, 117, 72, 88, 138, 169, /* 664-671 */ +155, 119, 104, 122, 144, 139, 116, 106, /* 672-679 */ +130, 163, 161, 120, 78, 84, 140, 191, /* 680-687 */ +181, 115, 56, 64, 135, 199, 192, 120, /* 688-695 */ + 55, 59, 126, 188, 187, 127, 71, 73, /* 696-703 */ +123, 167, 163, 124, 96, 104, 133, 144, /* 704-711 */ +127, 108, 114, 141, 155, 131, 91, 82, /* 712-719 */ +120, 171, 179, 129, 67, 59, 117, 183, /* 720-727 */ +194, 135, 64, 52, 109, 179, 193, 141, /* 728-735 */ + 78, 66, 110, 165, 175, 138, 99, 96, /* 736-743 */ +124, 149, 144, 121, 112, 129, 148, 142, /* 744-751 */ +111, 93, 113, 158, 175, 144, 89, 67, /* 752-759 */ +106, 169, 194, 153, 84, 55, 95, 165, /* 760-767 */ +196, 159, 94, 64, 96, 154, 181, 154, /* 768-775 */ +107, 89, 111, 144, 153, 133, 114, 118, /* 776-783 */ +137, 143, 125, 104, 110, 141, 165, 150, /* 784-791 */ +106, 77, 96, 151, 184, 162, 102, 64, /* 792-799 */ + 86, 148, 190, 170, 110, 68, 85, 141, /* 800-807 */ +178, 165, 119, 88, 100, 135, 156, 144, /* 808-815 */ +119, 111, 124, 138, 133, 114, 110, 128, /* 816-823 */ +152, 150, 117, 87, 94, 135, 172, 165, /* 824-831 */ +115, 72, 81, 134, 182, 176, 123, 76, /* 832-839 */ + 80, 129, 175, 173, 130, 91, 93, 128, /* 840-847 */ +158, 156, 129, 110, 116, 135, 140, 127, /* 848-855 */ +115, 123, 142, 148, 127, 99, 97, 126, /* 856-863 */ +162, 164, 127, 84, 80, 122, 170, 176, /* 864-871 */ +133, 84, 75, 117, 166, 175, 139, 95, /* 872-879 */ + 86, 117, 153, 161, 135, 109, 106, 125, /* 880-887 */ +139, 135, 122, 119, 130, 141, 132, 111, /* 888-895 */ +102, 119, 148, 159, 134, 96, 84, 113, /* 896-903 */ +158, 172, 141, 94, 77, 108, 157, 176, /* 904-911 */ +148, 102, 85, 110, 150, 165, 144, 113, /* 912-919 */ +104, 120, 142, 145, 131, 118, 124, 137, /* 920-927 */ +139, 124, 109, 117, 140, 156, 142, 110, /* 928-935 */ + 91, 109, 149, 170, 150, 106, 82, 103, /* 936-943 */ +149, 174, 155, 110, 86, 104, 144, 167, /* 944-951 */ +151, 117, 100, 113, 138, 150, 138, 120, /* 952-959 */ +117, 129, 139, 133, 118, 115, 130, 147, /* 960-967 */ +143, 119, 97, 105, 136, 160, 151, 113, /* 968-975 */ + 85, 96, 136, 165, 155, 116, 85, 94, /* 976-983 */ +131, 161, 153, 120, 95, 102, 130, 148, /* 984-991 */ +142, 121, 110, 119, 133, 135, 123, 116, /* 992-999 */ +123, 138, 141, 125, 106, 105, 127, 151, /* 1000-1007 */ +151, 122, 93, 93, 125, 157, 157, 124, /* 1008-1015 */ + 91, 90, 121, 154, 156, 127, 98, 97, /* 1016-1023 */ +122, 146, 146, 127, 111, 114, 128, 138, /* 1024-1031 */ +132, 121, 120, 132, 141, 134, 117, 111, /* 1032-1039 */ +124, 148, 154, 135, 107, 99, 123, 154, /* 1040-1047 */ +162, 137, 104, 94, 119, 151, 161, 137, /* 1048-1055 */ +108, 99, 118, 144, 151, 135, 114, 111, /* 1056-1063 */ +124, 138, 137, 126, 119, 126, 135, 135, /* 1064-1071 */ +123, 114, 121, 139, 149, 138, 114, 102, /* 1072-1079 */ +117, 146, 158, 142, 111, 97, 114, 144, /* 1080-1087 */ +159, 144, 114, 99, 112, 139, 152, 140, /* 1088-1095 */ +118, 109, 117, 133, 138, 130, 121, 120, /* 1096-1103 */ +128, 133, 126, 117, 118, 131, 142, 136, /* 1104-1111 */ +118, 105, 113, 137, 153, 144, 118, 99, /* 1112-1119 */ +109, 137, 156, 148, 121, 102, 109, 133, /* 1120-1127 */ +151, 146, 124, 109, 114, 130, 141, 136, /* 1128-1135 */ +123, 118, 124, 131, 130, 121, 118, 125, /* 1136-1143 */ +136, 136, 123, 109, 111, 129, 146, 144, /* 1144-1151 */ +123, 104, 106, 129, 152, 150, 127, 105, /* 1152-1159 */ +106, 127, 149, 149, 130, 111, 110, 127, /* 1160-1167 */ +141, 140, 127, 118, 120, 128, 132, 127, /* 1168-1175 */ +121, 122, 131, 135, 128, 114, 112, 125, /* 1176-1183 */ +141, 144, 129, 108, 105, 124, 149, 157, /* 1184-1191 */ +135, 104, 90, 111, 143, 156, 144, 120, /* 1192-1199 */ +106, 111, 126, 133, 132, 130, 134, 142, /* 1200-1207 */ +143, 132, 116, 109, 116, 129, 139, 139, /* 1208-1215 */ +135, 136, 137, 130, 114, 99, 101, 126, /* 1216-1223 */ +157, 169, 151, 115, 92, 97, 120, 141, /* 1224-1231 */ +145, 137, 133, 137, 142, 134, 113, 95, /* 1232-1239 */ + 97, 120, 146, 160, 154, 134, 116, 106, /* 1240-1247 */ +101, 103, 114, 134, 158, 165, 148, 116, /* 1248-1255 */ + 88, 86, 108, 134, 147, 143, 136, 132, /* 1256-1263 */ +132, 126, 108, 92, 94, 120, 155, 174, /* 1264-1271 */ +162, 130, 100, 88, 99, 118, 136, 149, /* 1272-1279 */ +156, 154, 141, 117, 95, 91, 107, 132, /* 1280-1287 */ +153, 154, 143, 131, 122, 114, 104, 96, /* 1288-1295 */ +102, 127, 156, 171, 156, 119, 86, 79, /* 1296-1303 */ + 99, 129, 149, 152, 143, 134, 126, 116, /* 1304-1311 */ +107, 102, 111, 132, 152, 159, 150, 129, /* 1312-1319 */ +113, 108, 108, 116, 126, 142, 158, 162, /* 1320-1327 */ +145, 116, 91, 89, 113, 145, 161, 155, /* 1328-1335 */ +135, 118, 113, 116, 117, 116, 119, 131, /* 1336-1343 */ +149, 157, 147, 122, 102, 98, 111, 132, /* 1344-1351 */ +146, 151, 148, 140, 127, 111, 100, 106, /* 1352-1359 */ +127, 152, 164, 155, 132, 113, 107, 115, /* 1360-1367 */ +125, 130, 131, 135, 144, 150, 140, 117, /* 1368-1375 */ + 96, 95, 115, 142, 157, 153, 134, 116, /* 1376-1383 */ +106, 105, 110, 118, 130, 143, 149, 141, /* 1384-1391 */ +124, 106, 100, 110, 123, 133, 135, 133, /* 1392-1399 */ +133, 132, 125, 110, 98, 101, 120, 147, /* 1400-1407 */ +159, 148, 125, 103, 98, 110, 125, 136, /* 1408-1415 */ +140, 140, 138, 135, 125, 113, 108, 114, /* 1416-1423 */ +129, 143, 147, 142, 133, 124, 119, 115, /* 1424-1431 */ +113, 118, 133, 148, 154, 143, 120, 102, /* 1432-1439 */ +101, 117, 136, 146, 141, 132, 126, 125, /* 1440-1447 */ +125, 121, 116, 118, 130, 144, 150, 142, /* 1448-1455 */ +127, 115, 113, 119, 128, 137, 143, 145, /* 1456-1463 */ +141, 131, 116, 106, 110, 126, 145, 150, /* 1464-1471 */ +142, 126, 114, 114, 120, 124, 125, 124, /* 1472-1479 */ +131, 141, 145, 135, 118, 104, 105, 120, /* 1480-1487 */ +139, 149, 148, 137, 126, 118, 113, 115, /* 1488-1495 */ +121, 133, 144, 147, 139, 123, 111, 109, /* 1496-1503 */ +116, 124, 128, 129, 132, 134, 134, 125, /* 1504-1511 */ +109, 98, 103, 120, 140, 150, 142, 123, /* 1512-1519 */ +107, 102, 109, 120, 128, 135, 139, 139, /* 1520-1527 */ +133, 123, 111, 108, 114, 127, 138, 143, /* 1528-1535 */ +140, 135, 127, 118, 109, 107, 116, 133, /* 1536-1543 */ +150, 154, 141, 120, 104, 104, 116, 132, /* 1544-1551 */ +141, 140, 137, 133, 129, 122, 114, 111, /* 1552-1559 */ +116, 129, 143, 147, 141, 129, 117, 111, /* 1560-1567 */ +112, 119, 130, 140, 148, 146, 133, 116, /* 1568-1575 */ +107, 110, 124, 140, 146, 142, 134, 127, /* 1576-1583 */ +123, 122, 119, 118, 122, 133, 145, 146, /* 1584-1591 */ +137, 120, 107, 106, 115, 129, 138, 141, /* 1592-1599 */ +138, 130, 120, 111, 108, 114, 127, 139, /* 1600-1607 */ +145, 139, 128, 120, 118, 120, 124, 127, /* 1608-1615 */ +131, 138, 144, 145, 134, 119, 109, 112, /* 1616-1623 */ +126, 142, 149, 144, 132, 120, 115, 115, /* 1624-1631 */ +119, 124, 131, 136, 138, 133, 122, 114, /* 1632-1639 */ +111, 116, 124, 131, 135, 137, 136, 132, /* 1640-1647 */ +123, 115, 111, 119, 134, 148, 151, 141, /* 1648-1655 */ +125, 114, 113, 121, 130, 136, 137, 136, /* 1656-1663 */ +134, 130, 121, 114, 111, 115, 126, 135, /* 1664-1671 */ +137, 134, 126, 117, 110, 109, 114, 122, /* 1672-1679 */ +135, 142, 141, 130, 116, 108, 111, 124, /* 1680-1687 */ +135, 141, 138, 134, 129, 125, 122, 119, /* 1688-1695 */ +117, 124, 134, 143, 144, 135, 122, 112, /* 1696-1703 */ +110, 117, 127, 136, 141, 140, 133, 122, /* 1704-1711 */ +113, 110, 115, 127, 138, 142, 139, 130, /* 1712-1719 */ +124, 120, 120, 120, 123, 129, 138, 145, /* 1720-1727 */ +144, 133, 119, 110, 113, 124, 137, 145, /* 1728-1735 */ +143, 136, 127, 120, 117, 118, 123, 132, /* 1736-1743 */ +139, 142, 138, 129, 120, 117, 118, 122, /* 1744-1751 */ +127, 133, 138, 140, 135, 124, 113, 108, /* 1752-1759 */ +115, 128, 140, 144, 137, 126, 117, 114, /* 1760-1767 */ +117, 121, 127, 131, 135, 136, 132, 125, /* 1768-1775 */ +116, 113, 117, 124, 132, 137, 137, 132, /* 1776-1783 */ +125, 117, 112, 113, 121, 132, 140, 139, /* 1784-1791 */ +131, 119, 112, 113, 120, 127, 130, 131, /* 1792-1799 */ +132, 130, 128, 121, 116, 114, 119, 129, /* 1800-1807 */ +137, 140, 135, 126, 118, 115, 117, 123, /* 1808-1815 */ +130, 137, 139, 136, 127, 118, 114, 118, /* 1816-1823 */ +126, 133, 136, 134, 130, 127, 124, 120, /* 1824-1831 */ +118, 119, 125, 134, 140, 140, 132, 121, /* 1832-1839 */ +114, 116, 123, 132, 139, 140, 137, 130, /* 1840-1847 */ +124, 120, 119, 124, 131, 137, 139, 137, /* 1848-1855 */ +130, 125, 121, 121, 121, 125, 130, 136, /* 1856-1863 */ +139, 135, 125, 116, 112, 117, 127, 137, /* 1864-1871 */ +140, 136, 129, 122, 120, 120, 123, 127, /* 1872-1879 */ +132, 137, 137, 135, 128, 121, 118, 120, /* 1880-1887 */ +126, 132, 137, 138, 135, 129, 121, 115, /* 1888-1895 */ +116, 122, 132, 139, 139, 132, 122, 117, /* 1896-1903 */ +117, 120, 125, 129, 132, 133, 133, 129, /* 1904-1911 */ +123, 117, 116, 120, 129, 136, 139, 136, /* 1912-1919 */ +129, 121, 117, 116, 122, 129, 137, 140, /* 1920-1927 */ +137, 128, 120, 116, 118, 124, 131, 134, /* 1928-1935 */ +134, 133, 130, 125, 120, 116, 118, 124, /* 1936-1943 */ +133, 139, 138, 131, 122, 115, 115, 120, /* 1944-1951 */ +128, 134, 137, 135, 131, 123, 118, 117, /* 1952-1959 */ +120, 127, 133, 136, 135, 131, 126, 121, /* 1960-1967 */ +119, 119, 123, 129, 136, 139, 136, 126, /* 1968-1975 */ +118, 114, 117, 126, 133, 137, 135, 130, /* 1976-1983 */ +124, 120, 118, 119, 123, 129, 134, 136, /* 1984-1991 */ +133, 127, 121, 118, 119, 123, 129, 135, /* 1992-1999 */ +139, 137, 131, 123, 117, 116, 123, 132, /* 2000-2007 */ +139, 139, 134, 127, 122, 119, 120, 123, /* 2008-2015 */ +127, 132, 135, 135, 131, 124, 118, 116, /* 2016-2023 */ +119, 127, 133, 136, 136, 131, 125, 119, /* 2024-2031 */ +116, 120, 127, 135, 139, 138, 131, 124, /* 2032-2039 */ +119, 120, 124, 128, 132, 135, 135, 133, /* 2040-2047 */ +128, 121, 116, 117, 122, 129, 136, 135, /* 2048-2055 */ +131, 123, 117, 115, 117, 122, 128, 133, /* 2056-2063 */ +134, 130, 123, 118, 115, 117, 123, 129, /* 2064-2071 */ +132, 134, 132, 128, 123, 119, 117, 121, /* 2072-2079 */ +128, 135, 139, 136, 128, 121, 117, 119, /* 2080-2087 */ +124, 131, 135, 135, 133, 128, 122, 119, /* 2088-2095 */ +118, 121, 127, 132, 134, 133, 128, 123, /* 2096-2103 */ +119, 117, 119, 124, 131, 135, 136, 131, /* 2104-2111 */ +123, 118, 117, 122, 130, 135, 138, 134, /* 2112-2119 */ +131, 126, 123, 123, 124, 128, 133, 138, /* 2120-2127 */ +138, 135, 129, 123, 120, 122, 127, 132, /* 2128-2135 */ +136, 137, 134, 127, 121, 118, 120, 126, /* 2136-2143 */ +132, 136, 135, 130, 124, 121, 120, 122, /* 2144-2151 */ +125, 128, 132, 135, 133, 130, 123, 119, /* 2152-2159 */ +120, 124, 131, 136, 137, 134, 128, 123, /* 2160-2167 */ +120, 120, 125, 130, 135, 135, 133, 127, /* 2168-2175 */ +122, 119, 120, 123, 127, 130, 131, 131, /* 2176-2183 */ +128, 123, 119, 117, 119, 125, 132, 135, /* 2184-2191 */ +134, 128, 122, 119, 120, 124, 128, 132, /* 2192-2199 */ +135, 134, 131, 126, 122, 120, 122, 127, /* 2200-2207 */ +132, 135, 134, 131, 126, 122, 119, 119, /* 2208-2215 */ +123, 129, 134, 135, 131, 124, 119, 117, /* 2216-2223 */ +121, 126, 131, 133, 132, 129, 126, 123, /* 2224-2231 */ +120, 121, 124, 129, 134, 135, 133, 128, /* 2232-2239 */ +123, 120, 121, 125, 130, 134, 135, 133, /* 2240-2247 */ +128, 122, 119, 120, 124, 130, 134, 134, /* 2248-2255 */ +130, 127, 123, 122, 121, 123, 126, 131, /* 2256-2263 */ +134, 133, 130, 124, 120, 120, 123, 128, /* 2264-2271 */ +134, 135, 133, 130, 125, 122, 121, 123, /* 2272-2279 */ +128, 132, 135, 133, 129, 124, 122, 121, /* 2280-2287 */ +123, 127, 129, 132, 133, 131, 127, 123, /* 2288-2295 */ +119, 120, 124, 131, 134, 134, 131, 125, /* 2296-2303 */ +120, 119, 123, 128, 129, 133, 133, 131, /* 2304-2311 */ +127, 121, 124, 124, 124, 127, 133, 136, /* 2312-2319 */ +135, 131, 123, 114, 119, 126, 133, 138, /* 2320-2327 */ +142, 135, 108, 88, 127, 146, 144, 120, /* 2328-2335 */ + 81, 85, 113, 171, 188, 226, 72, 229, /* 2336-2343 */ + 72, 195, 240, 165, 81, 63, 85, 150, /* 2344-2351 */ +192, 146, 99, 87, 156, 157, 128, 91, /* 2352-2359 */ +105, 136, 177, 159, 91, 47, 104, 207, /* 2360-2367 */ +231, 158, 61, 13, 71, 190, 2, 191, /* 2368-2375 */ + 46, 249, 67, 198, 230, 192, 79, 29, /* 2376-2383 */ + 69, 169, 197, 148, 65, 69, 136, 174, /* 2384-2391 */ +159, 95, 71, 129, 195, 186, 101, 34, /* 2392-2399 */ + 72, 185, 8, 209, 78, 235, 50, 196, /* 2400-2407 */ + 35, 215, 82, 242, 45, 188, 4, 192, /* 2408-2415 */ + 59, 7, 87, 197, 223, 146, 46, 44, /* 2416-2423 */ +127, 208, 174, 75, 29, 103, 204, 237, /* 2424-2431 */ +140, 8, 242, 120, 16, 30, 137, 235, /* 2432-2439 */ +223, 123, 25, 38, 131, 223, 233, 140, /* 2440-2447 */ + 25, 8, 117, 236, 251, 131, 249, 227, /* 2448-2455 */ + 98, 11, 56, 153, 207, 151, 64, 46, /* 2456-2463 */ +131, 209, 198, 94, 24, 65, 183, 249, /* 2464-2471 */ +193, 69, 11, 89, 218, 9, 177, 47, /* 2472-2479 */ + 3, 94, 220, 2, 168, 55, 18, 92, /* 2480-2487 */ +182, 204, 135, 71, 71, 132, 175, 155, /* 2488-2495 */ +101, 80, 126, 178, 175, 111, 67, 93, /* 2496-2503 */ +182, 228, 178, 65, 23, 98, 220, 15, /* 2504-2511 */ +182, 39, 237, 66, 208, 10, 177, 35, /* 2512-2519 */ +243, 67, 190, 224, 138, 31, 15, 103, /* 2520-2527 */ +193, 192, 104, 38, 69, 153, 199, 151, /* 2528-2535 */ + 64, 49, 137, 230, 225, 120, 18, 29, /* 2536-2543 */ +158, 18, 249, 111, 244, 16, 157, 12, /* 2544-2551 */ +234, 91, 232, 12, 151, 246, 206, 79, /* 2552-2559 */ +252, 34, 139, 204, 177, 91, 55, 97, /* 2560-2567 */ +160, 165, 121, 79, 104, 176, 207, 156, /* 2568-2575 */ + 76, 58, 131, 223, 229, 144, 47, 43, /* 2576-2583 */ +141, 240, 236, 125, 19, 21, 127, 232, /* 2584-2591 */ +226, 123, 31, 41, 130, 195, 177, 107, /* 2592-2599 */ + 65, 103, 163, 180, 125, 72, 92, 166, /* 2600-2607 */ +208, 165, 79, 42, 111, 217, 251, 159, /* 2608-2615 */ + 28, 255, 107, 244, 22, 164, 16, 239, /* 2616-2623 */ + 93, 232, 6, 155, 27, 9, 105, 213, /* 2624-2631 */ +219, 125, 34, 48, 138, 202, 174, 93, /* 2632-2639 */ + 51, 93, 171, 187, 119, 44, 53, 144, /* 2640-2647 */ +216, 187, 83, 5, 42, 163, 244, 198, /* 2648-2655 */ + 78, 5, 52, 172, 241, 194, 82, 22, /* 2656-2663 */ + 76, 183, 229, 176, 93, 58, 108, 172, /* 2664-2671 */ +185, 139, 94, 107, 154, 174, 128, 73, /* 2672-2679 */ + 70, 138, 201, 188, 96, 26, 49, 152, /* 2680-2687 */ +226, 189, 81, 9, 54, 170, 243, 193, /* 2688-2695 */ + 82, 18, 72, 178, 233, 185, 95, 55, /* 2696-2703 */ +109, 185, 199, 141, 80, 90, 156, 202, /* 2704-2711 */ +168, 90, 49, 101, 185, 209, 139, 44, /* 2712-2719 */ + 28, 116, 212, 218, 116, 12, 12, 121, /* 2720-2727 */ +226, 226, 122, 18, 22, 124, 222, 214, /* 2728-2735 */ +124, 48, 64, 144, 206, 184, 110, 71, /* 2736-2743 */ +102, 163, 185, 147, 94, 90, 139, 178, /* 2744-2751 */ +158, 94, 60, 101, 175, 203, 146, 61, /* 2752-2759 */ + 35, 97, 188, 214, 146, 58, 41, 109, /* 2760-2767 */ +191, 205, 140, 70, 63, 126, 188, 184, /* 2768-2775 */ +130, 88, 100, 143, 168, 142, 102, 101, /* 2776-2783 */ +143, 179, 156, 94, 59, 94, 169, 204, /* 2784-2791 */ +155, 67, 35, 90, 179, 213, 151, 55, /* 2792-2799 */ + 24, 92, 187, 216, 149, 58, 34, 97, /* 2800-2807 */ +179, 199, 143, 76, 69, 122, 174, 166, /* 2808-2815 */ +112, 77, 104, 159, 180, 137, 80, 71, /* 2816-2823 */ +128, 186, 181, 114, 54, 68, 146, 209, /* 2824-2831 */ +186, 101, 35, 59, 146, 210, 189, 108, /* 2832-2839 */ + 47, 67, 138, 190, 171, 112, 73, 96, /* 2840-2847 */ +145, 167, 145, 108, 100, 128, 155, 146, /* 2848-2855 */ +117, 103, 130, 167, 170, 127, 84, 86, /* 2856-2863 */ +142, 195, 189, 124, 63, 71, 138, 199, /* 2864-2871 */ +192, 127, 67, 75, 138, 189, 175, 117, /* 2872-2879 */ + 77, 95, 146, 173, 152, 110, 99, 127, /* 2880-2887 */ +159, 154, 116, 92, 117, 165, 184, 146, /* 2888-2895 */ + 84, 66, 114, 183, 202, 148, 71, 50, /* 2896-2903 */ +107, 184, 201, 140, 62, 45, 103, 177, /* 2904-2911 */ +194, 137, 68, 55, 107, 164, 171, 128, /* 2912-2919 */ + 87, 92, 132, 157, 140, 106, 96, 129, /* 2920-2927 */ +165, 162, 120, 86, 100, 151, 183, 160, /* 2928-2935 */ +101, 68, 98, 161, 194, 158, 89, 56, /* 2936-2943 */ + 87, 152, 184, 153, 94, 67, 93, 142, /* 2944-2951 */ +161, 134, 98, 93, 121, 147, 142, 115, /* 2952-2959 */ +103, 121, 150, 154, 126, 97, 106, 148, /* 2960-2967 */ +181, 164, 108, 72, 95, 157, 199, 175, /* 2968-2975 */ +105, 60, 82, 148, 190, 166, 103, 66, /* 2976-2983 */ + 88, 144, 174, 150, 100, 78, 103, 145, /* 2984-2991 */ +158, 132, 102, 102, 132, 153, 138, 106, /* 2992-2999 */ + 94, 124, 165, 173, 133, 87, 80, 127, /* 3000-3007 */ +181, 184, 134, 80, 77, 128, 180, 180, /* 3008-3015 */ +130, 78, 78, 126, 172, 171, 129, 89, /* 3016-3023 */ + 91, 125, 153, 147, 121, 106, 119, 138, /* 3024-3031 */ +138, 119, 103, 113, 142, 157, 136, 101, /* 3032-3039 */ + 89, 118, 158, 168, 133, 89, 81, 123, /* 3040-3047 */ +169, 177, 136, 87, 81, 120, 166, 172, /* 3048-3055 */ +138, 99, 97, 127, 153, 149, 124, 107, /* 3056-3063 */ +118, 141, 148, 128, 106, 109, 134, 153, /* 3064-3071 */ +141, 108, 89, 111, 153, 171, 143, 93, /* 3072-3079 */ + 73, 107, 161, 184, 152, 98, 75, 105, /* 3080-3087 */ +158, 177, 148, 103, 87, 114, 153, 164, /* 3088-3095 */ +137, 104, 97, 121, 146, 144, 121, 105, /* 3096-3103 */ +114, 136, 141, 120, 97, 100, 130, 157, /* 3104-3111 */ +149, 113, 84, 94, 135, 167, 156, 115, /* 3112-3119 */ + 87, 100, 141, 169, 156, 118, 94, 106, /* 3120-3127 */ +143, 163, 151, 121, 107, 118, 138, 144, /* 3128-3135 */ +130, 118, 122, 137, 142, 127, 106, 105, /* 3136-3143 */ +128, 151, 148, 118, 93, 99, 134, 162, /* 3144-3151 */ +154, 114, 85, 97, 140, 171, 160, 118, /* 3152-3159 */ + 89, 100, 139, 165, 155, 122, 102, 116, /* 3160-3167 */ +143, 155, 138, 115, 111, 132, 150, 146, /* 3168-3175 */ +122, 105, 117, 144, 154, 135, 104, 96, /* 3176-3183 */ +121, 156, 163, 131, 91, 84, 118, 158, /* 3184-3191 */ +166, 133, 95, 88, 118, 153, 158, 131, /* 3192-3199 */ +102, 101, 126, 149, 148, 127, 110, 115, /* 3200-3207 */ +132, 142, 133, 120, 119, 132, 144, 135, /* 3208-3215 */ +114, 103, 118, 143, 154, 135, 105, 93, /* 3216-3223 */ +112, 143, 153, 131, 101, 92, 114, 143, /* 3224-3231 */ +149, 129, 103, 98, 118, 141, 144, 127, /* 3232-3239 */ +111, 113, 130, 139, 131, 117, 116, 133, /* 3240-3247 */ +147, 143, 121, 105, 113, 140, 157, 145, /* 3248-3255 */ +115, 97, 111, 144, 161, 143, 108, 90, /* 3256-3263 */ +108, 143, 161, 143, 110, 94, 110, 139, /* 3264-3271 */ +151, 137, 115, 109, 123, 142, 143, 128, /* 3272-3279 */ +115, 121, 138, 147, 137, 120, 115, 130, /* 3280-3287 */ +147, 148, 128, 109, 111, 135, 154, 150, /* 3288-3295 */ +122, 100, 103, 129, 151, 147, 122, 102, /* 3296-3303 */ +106, 127, 143, 139, 120, 109, 117, 132, /* 3304-3311 */ +139, 133, 122, 120, 129, 137, 133, 123, /* 3312-3319 */ +120, 131, 144, 145, 128, 111, 111, 132, /* 3320-3327 */ +151, 150, 128, 105, 105, 128, 148, 146, /* 3328-3335 */ +123, 103, 106, 127, 145, 141, 120, 105, /* 3336-3343 */ +110, 128, 139, 134, 119, 115, 123, 135, /* 3344-3351 */ +134, 123, 114, 120, 137, 146, 135, 116, /* 3352-3359 */ +107, 120, 143, 151, 135, 111, 104, 121, /* 3360-3367 */ +146, 151, 133, 107, 100, 118, 143, 149, /* 3368-3375 */ +132, 111, 104, 118, 136, 139, 127, 115, /* 3376-3383 */ +116, 127, 135, 130, 119, 117, 125, 136, /* 3384-3391 */ +136, 124, 114, 119, 134, 144, 136, 118, /* 3392-3399 */ +109, 119, 140, 150, 139, 117, 107, 116, /* 3400-3407 */ +136, 146, 138, 120, 112, 119, 133, 139, /* 3408-3415 */ +131, 120, 118, 126, 134, 133, 125, 121, /* 3416-3423 */ +125, 133, 134, 126, 118, 122, 135, 146, /* 3424-3431 */ +140, 123, 111, 118, 138, 152, 145, 125, /* 3432-3439 */ +112, 117, 136, 150, 144, 125, 113, 120, /* 3440-3447 */ +136, 145, 138, 124, 114, 120, 132, 136, /* 3448-3455 */ +130, 121, 120, 127, 132, 127, 117, 114, /* 3456-3463 */ +123, 136, 139, 127, 113, 111, 124, 140, /* 3464-3471 */ +142, 128, 112, 112, 128, 144, 144, 129, /* 3472-3479 */ +112, 112, 127, 141, 141, 129, 117, 116, /* 3480-3487 */ +124, 132, 131, 123, 119, 123, 127, 126, /* 3488-3495 */ +120, 116, 119, 127, 131, 125, 115, 113, /* 3496-3503 */ +122, 135, 136, 125, 111, 111, 123, 139, /* 3504-3511 */ +142, 130, 115, 112, 123, 137, 140, 131, /* 3512-3519 */ +119, 119, 127, 135, 134, 125, 121, 123, /* 3520-3527 */ +130, 132, 128, 121, 122, 129, 133, 129, /* 3528-3535 */ +120, 115, 122, 135, 141, 132, 117, 111, /* 3536-3543 */ +120, 136, 144, 135, 119, 113, 121, 136, /* 3544-3551 */ +143, 134, 121, 116, 124, 136, 140, 133, /* 3552-3559 */ +122, 120, 126, 133, 134, 127, 124, 127, /* 3560-3567 */ +133, 133, 127, 120, 121, 130, 138, 136, /* 3568-3575 */ +125, 117, 119, 132, 140, 137, 125, 116, /* 3576-3583 */ +120, 133, 142, 137, 124, 117, 120, 131, /* 3584-3591 */ +138, 135, 127, 122, 125, 130, 132, 128, /* 3592-3599 */ +125, 126, 131, 133, 129, 122, 121, 128, /* 3600-3607 */ +135, 133, 125, 118, 119, 129, 138, 135, /* 3608-3615 */ +123, 114, 116, 129, 138, 136, 125, 115, /* 3616-3623 */ +116, 126, 135, 133, 125, 119, 121, 129, /* 3624-3631 */ +132, 128, 122, 122, 126, 130, 130, 125, /* 3632-3639 */ +122, 125, 132, 133, 127, 118, 116, 124, /* 3640-3647 */ +135, 137, 127, 116, 113, 122, 133, 136, /* 3648-3655 */ +128, 118, 115, 123, 132, 134, 127, 119, /* 3656-3663 */ +119, 125, 133, 134, 128, 124, 124, 128, /* 3664-3671 */ +130, 129, 127, 128, 132, 134, 132, 125, /* 3672-3679 */ +122, 126, 134, 137, 132, 124, 120, 125, /* 3680-3687 */ +133, 136, 131, 122, 119, 125, 133, 136, /* 3688-3695 */ +131, 122, 119, 123, 130, 132, 129, 125, /* 3696-3703 */ +125, 128, 129, 128, 125, 125, 129, 132, /* 3704-3711 */ +132, 126, 122, 125, 131, 135, 132, 124, /* 3712-3719 */ +120, 124, 133, 138, 134, 124, 118, 122, /* 3720-3727 */ +132, 138, 134, 125, 119, 122, 129, 132, /* 3728-3735 */ +130, 124, 122, 124, 129, 129, 125, 122, /* 3736-3743 */ +123, 127, 129, 126, 122, 122, 126, 130, /* 3744-3751 */ +130, 124, 119, 120, 127, 134, 133, 126, /* 3752-3759 */ +118, 119, 126, 133, 133, 127, 121, 121, /* 3760-3767 */ +126, 131, 131, 125, 121, 122, 126, 129, /* 3768-3775 */ +128, 125, 124, 125, 126, 125, 122, 122, /* 3776-3783 */ +126, 130, 129, 125, 120, 120, 126, 132, /* 3784-3791 */ +132, 126, 121, 121, 128, 133, 133, 127, /* 3792-3799 */ +121, 122, 127, 133, 133, 128, 123, 122, /* 3800-3807 */ +126, 129, 129, 126, 126, 127, 129, 128, /* 3808-3815 */ +125, 123, 125, 130, 132, 129, 124, 122, /* 3816-3823 */ +126, 132, 135, 130, 124, 122, 127, 135, /* 3824-3831 */ +137, 132, 124, 121, 126, 133, 136, 132, /* 3832-3839 */ +127, 124, 126, 130, 132, 130, 126, 126, /* 3840-3847 */ +128, 129, 129, 127, 126, 128, 129, 129, /* 3848-3855 */ +126, 125, 126, 131, 133, 130, 125, 122, /* 3856-3863 */ +125, 132, 135, 133, 127, 124, 125, 130, /* 3864-3871 */ +133, 132, 127, 125, 126, 129, 130, 129, /* 3872-3879 */ +125, 125, 125, 126, 126, 125, 125, 126, /* 3880-3887 */ +126, 126, 122, 121, 123, 128, 130, 128, /* 3888-3895 */ +122, 119, 122, 128, 131, 129, 125, 121, /* 3896-3903 */ +122, 128, 132, 130, 125, 122, 123, 128, /* 3904-3911 */ +131, 131, 127, 124, 125, 126, 128, 127, /* 3912-3919 */ +125, 126, 127, 128, 126, 124, 123, 126, /* 3920-3927 */ +129, 129, 126, 122, 122, 126, 130, 131, /* 3928-3935 */ +126, 122, 122, 127, 132, 132, 128, 124, /* 3936-3943 */ +122, 126, 130, 132, 129, 126, 125, 126, /* 3944-3951 */ +129, 129, 128, 127, 128, 129, 128, 126, /* 3952-3959 */ +126, 128, 129, 129, 126, 125, 125, 128, /* 3960-3967 */ +131, 131, 128, 123, 123, 126, 132, 132, /* 3968-3975 */ +129, 125, 124, 126, 130, 131, 129, 126, /* 3976-3983 */ +126, 128, 130, 130, 128, 127, 128, 128, /* 3984-3991 */ +129, 128, 127, 128, 129, 129, 128, 125, /* 3992-3999 */ +123, 126, 130, 132, 129, 124, 122, 125, /* 4000-4007 */ +129, 131, 129, 125, 122, 125, 129, 131, /* 4008-4015 */ +128, 125, 122, 124, 127, 129, 128, 127, /* 4016-4023 */ +125, 125, 126, 126, 126, 126, 127, 128, /* 4024-4031 */ +127, 125, 124, 125, 127, 129, 128, 125, /* 4032-4039 */ +123, 125, 128, 129, 128, 125, 122, 123, /* 4040-4047 */ +127, 130, 129, 126, 124, 123, 126, 128, /* 4048-4055 */ +128, 127, 126, 126, 126, 126, 126, 126, /* 4056-4063 */ +126, 128, 127, 126, 125, 125, 128, 129, /* 4064-4071 */ +128, 126, 124, 125, 129, 131, 130, 126, /* 4072-4079 */ +124, 124, 128, 131, 131, 128, 125, 125, /* 4080-4087 */ +128, 129, 129, 128, 126, 126, 128, 129, /* 4088-4095 */ +128, 128, 126, 126, 127, 127, 126, 126, /* 4096-4103 */ +128, 129, 129, 126, 125, 125, 127, 130, /* 4104-4111 */ +130, 128, 125, 125, 126, 129, 131, 129, /* 4112-4119 */ +126, 126, 127, 130, 131, 129, 127, 126, /* 4120-4127 */ +126, 129, 129, 129, 128, 128, 126, 126, /* 4128-4135 */ +126, 126, 128, 128, 128, 126, 125, 125, /* 4136-4143 */ +126, 128, 129, 127, 125, 125, 126, 129, /* 4144-4151 */ +129, 128, 125, 125, 126, 129, 130, 129, /* 4152-4159 */ +127, 125, 126, 128, 128, 128, 128, 127, /* 4160-4167 */ +127, 127, 126, 126, 126, 126, 128, 126, /* 4168-4175 */ +125, 125, 125, 128, 128, 126, 125, 123, /* 4176-4183 */ +125, 128, 129, 128, 125, 124, 125, 128, /* 4184-4191 */ +129, 129, 128, 125, 126, 128, 128, 128, /* 4192-4199 */ +127, 126, 126, 127, 128, 128, 127, 126, /* 4200-4207 */ +126, 126, 126, 125, 126, 128, 128, 128, /* 4208-4215 */ +125, 124, 125, 127, 129, 129, 128, 125, /* 4216-4223 */ +125, 127, 129, 129, 128, 126, 126, 128, /* 4224-4231 */ +129, 129, 128, 128, 126, 128, 128, 129, /* 4232-4239 */ +129, 129, 128, 128, 126, 126, 126, 128, /* 4240-4247 */ +129, 129, 126, 125, 125, 128, 129, 129, /* 4248-4255 */ +126, 125, 125, 127, 129, 129, 127, 125, /* 4256-4263 */ +125, 126, 129, 129, 128, 126, 126, 126, /* 4264-4271 */ +128, 128, 128, 128, 128, 128, 128, 126, /* 4272-4279 */ +126, 126, 128, 128, 126, 125, 125, 126, /* 4280-4287 */ +128, 128, 126, 125, 124, 125, 128, 128, /* 4288-4295 */ +127, 125, 124, 125, 126, 128, 128, 126, /* 4296-4303 */ +125, 126, 126, 127, 127, 126, 126, 126, /* 4304-4311 */ +126, 126, 126, 127, 128, 128, 126, 125, /* 4312-4319 */ +125, 126, 128, 129, 128, 125, 125, 126, /* 4320-4327 */ +128, 129, 128, 126, 126, 126, 128, 128, /* 4328-4335 */ +128, 126, 126, 126, 128, 128, 128, 128, /* 4336-4343 */ +127, 128, 128, 128, 128, 128, 128, 128, /* 4344-4351 */ +128, 126, 126, 126, 128, 129, 128, 126, /* 4352-4359 */ +125, 126, 128, 129, 128, 126, 125, 126, /* 4360-4367 */ +128, 129, 128, 126, 125, 126, 128, 128, /* 4368-4375 */ +128, 128, 126, 126, 128, 128, 128, 128, /* 4376-4383 */ +128, 128, 128, 128, 126, 126, 128, 128, /* 4384-4391 */ +128, 126, 126, 126, 128, 129, 128, 126, /* 4392-4399 */ +125, 126, 128, 129, 129, 128, 126, 126, /* 4400-4407 */ +127, 128, 129}; /* 4408-4410 */ + + +//get and set the frequency from wav conversion tool GUI +int ch=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaChime() +{ + + speaker = data_chime[ch]/255.0;//scale to 0.0 to 1.0 for PWM + ch++; + if (ch>= NUM_ELEMENTS) { + ch = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaFmaj.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,684 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 05:57:34 PM +* FileName: marimbaFmaj_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 5229 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 5229 + +const unsigned char data_f[NUM_ELEMENTS] = { +127, 128, 127, 127, 127, 127, 127, 127, /* 0-7 */ +128, 127, 128, 127, 127, 128, 127, 128, /* 8-15 */ +127, 128, 128, 127, 128, 127, 128, 127, /* 16-23 */ +128, 128, 127, 128, 127, 128, 127, 127, /* 24-31 */ +128, 127, 128, 128, 127, 128, 127, 128, /* 32-39 */ +128, 127, 128, 127, 127, 127, 127, 128, /* 40-47 */ +127, 128, 127, 127, 127, 127, 127, 127, /* 48-55 */ +127, 128, 127, 127, 127, 127, 127, 127, /* 56-63 */ +128, 128, 128, 128, 127, 127, 128, 128, /* 64-71 */ +128, 128, 127, 128, 127, 128, 127, 127, /* 72-79 */ +127, 127, 128, 127, 127, 127, 127, 127, /* 80-87 */ +128, 127, 127, 127, 127, 128, 127, 127, /* 88-95 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 96-103 */ +127, 127, 127, 127, 127, 127, 128, 127, /* 104-111 */ +128, 127, 127, 128, 128, 128, 128, 127, /* 112-119 */ +127, 128, 127, 127, 127, 127, 127, 127, /* 120-127 */ +127, 127, 127, 128, 127, 127, 128, 127, /* 128-135 */ +127, 127, 128, 127, 127, 127, 127, 128, /* 136-143 */ +127, 128, 127, 128, 127, 127, 128, 127, /* 144-151 */ +128, 127, 127, 128, 127, 128, 128, 127, /* 152-159 */ +128, 127, 128, 127, 128, 127, 128, 127, /* 160-167 */ +127, 127, 127, 127, 127, 128, 127, 127, /* 168-175 */ +128, 127, 128, 127, 127, 127, 127, 128, /* 176-183 */ +127, 128, 127, 128, 127, 128, 127, 128, /* 184-191 */ +127, 127, 128, 127, 128, 127, 128, 127, /* 192-199 */ +128, 128, 128, 128, 128, 128, 127, 128, /* 200-207 */ +127, 128, 127, 128, 127, 128, 127, 128, /* 208-215 */ +127, 128, 127, 128, 127, 128, 127, 127, /* 216-223 */ +127, 128, 127, 127, 127, 127, 127, 127, /* 224-231 */ +127, 127, 127, 127, 127, 127, 128, 127, /* 232-239 */ +128, 127, 128, 127, 128, 127, 128, 127, /* 240-247 */ +128, 127, 128, 127, 128, 127, 127, 127, /* 248-255 */ +127, 127, 127, 128, 127, 128, 127, 128, /* 256-263 */ +127, 128, 127, 128, 127, 128, 127, 128, /* 264-271 */ +127, 128, 127, 128, 127, 127, 127, 127, /* 272-279 */ +127, 127, 128, 127, 128, 127, 128, 127, /* 280-287 */ +128, 127, 128, 127, 128, 127, 128, 127, /* 288-295 */ +128, 127, 130, 129, 134, 125, 114, 134, /* 296-303 */ +146, 148, 100, 142, 124, 70, 116, 131, /* 304-311 */ +170, 154, 105, 97, 82, 83, 138, 180, /* 312-319 */ +204, 196, 126, 69, 52, 59, 129, 197, /* 320-327 */ +211, 195, 137, 75, 37, 65, 122, 166, /* 328-335 */ +203, 176, 129, 94, 60, 97, 132, 147, /* 336-343 */ +164, 159, 124, 105, 119, 140, 165, 152, /* 344-351 */ +108, 73, 71, 97, 155, 203, 194, 161, /* 352-359 */ + 93, 29, 30, 73, 153, 230, 238, 186, /* 360-367 */ +103, 24, 0, 51, 143, 211, 244, 206, /* 368-375 */ +124, 61, 34, 59, 127, 186, 202, 184, /* 376-383 */ +132, 89, 86, 104, 129, 148, 148, 133, /* 384-391 */ +121, 122, 137, 157, 146, 121, 93, 63, /* 392-399 */ + 80, 132, 185, 223, 210, 143, 64, 7, /* 400-407 */ + 8, 77, 170, 233, 244, 196, 102, 30, /* 408-415 */ + 22, 61, 143, 208, 220, 189, 120, 56, /* 416-423 */ + 42, 77, 135, 189, 206, 180, 132, 89, /* 424-431 */ + 69, 85, 113, 129, 143, 141, 131, 138, /* 432-439 */ +148, 153, 144, 113, 78, 61, 77, 120, /* 440-447 */ +174, 212, 201, 154, 91, 45, 54, 105, /* 448-455 */ +170, 219, 208, 151, 81, 28, 36, 97, /* 456-463 */ +173, 233, 235, 176, 93, 31, 16, 54, /* 464-471 */ +130, 193, 218, 203, 151, 105, 86, 88, /* 472-479 */ +111, 142, 150, 143, 135, 129, 132, 143, /* 480-487 */ +144, 130, 118, 106, 108, 132, 150, 155, /* 488-495 */ +138, 102, 69, 59, 81, 132, 188, 211, /* 496-503 */ +186, 128, 61, 20, 30, 86, 162, 214, /* 504-511 */ +222, 187, 120, 66, 50, 77, 131, 176, /* 512-519 */ +190, 170, 128, 94, 80, 95, 131, 156, /* 520-527 */ +166, 156, 133, 114, 99, 92, 95, 102, /* 528-535 */ +109, 117, 135, 156, 164, 156, 129, 94, /* 536-543 */ + 69, 66, 92, 139, 185, 206, 186, 138, /* 544-551 */ + 94, 67, 77, 124, 172, 200, 187, 146, /* 552-559 */ + 97, 74, 82, 114, 161, 190, 187, 154, /* 560-567 */ +107, 73, 69, 88, 123, 156, 173, 164, /* 568-575 */ +144, 127, 107, 100, 101, 110, 121, 136, /* 576-583 */ +151, 160, 155, 143, 123, 105, 98, 104, /* 584-591 */ +124, 151, 170, 167, 142, 110, 84, 83, /* 592-599 */ +113, 152, 184, 191, 159, 111, 70, 52, /* 600-607 */ + 78, 132, 180, 203, 192, 152, 97, 63, /* 608-615 */ + 61, 90, 129, 157, 167, 158, 132, 110, /* 616-623 */ + 99, 97, 108, 115, 119, 124, 127, 134, /* 624-631 */ +133, 125, 116, 105, 103, 115, 140, 164, /* 632-639 */ +169, 154, 120, 85, 73, 88, 131, 183, /* 640-647 */ +211, 203, 159, 100, 54, 44, 77, 130, /* 648-655 */ +182, 202, 179, 137, 89, 64, 72, 102, /* 656-663 */ +138, 155, 151, 130, 107, 95, 99, 117, /* 664-671 */ +135, 145, 147, 142, 136, 135, 127, 118, /* 672-679 */ +110, 108, 118, 139, 166, 188, 189, 164, /* 680-687 */ +120, 79, 59, 75, 121, 171, 199, 195, /* 688-695 */ +151, 97, 60, 56, 91, 138, 173, 178, /* 696-703 */ +146, 102, 69, 67, 94, 139, 177, 182, /* 704-711 */ +163, 127, 94, 83, 91, 116, 140, 155, /* 712-719 */ +159, 157, 149, 140, 132, 119, 104, 98, /* 720-727 */ +102, 118, 146, 168, 173, 154, 119, 86, /* 728-735 */ + 71, 87, 122, 159, 177, 160, 124, 85, /* 736-743 */ + 65, 83, 124, 170, 194, 182, 142, 91, /* 744-751 */ + 59, 63, 97, 145, 181, 192, 172, 136, /* 752-759 */ +105, 87, 91, 113, 132, 143, 146, 140, /* 760-767 */ +135, 132, 130, 127, 120, 113, 112, 121, /* 768-775 */ +134, 144, 145, 129, 108, 94, 95, 116, /* 776-783 */ +148, 170, 172, 146, 104, 69, 59, 83, /* 784-791 */ +130, 176, 197, 185, 143, 95, 67, 69, /* 792-799 */ +100, 140, 167, 173, 154, 125, 104, 98, /* 800-807 */ +110, 129, 146, 150, 140, 127, 117, 113, /* 808-815 */ +116, 120, 125, 131, 135, 140, 143, 140, /* 816-823 */ +130, 110, 93, 87, 99, 128, 159, 180, /* 824-831 */ +176, 147, 107, 75, 70, 94, 135, 174, /* 832-839 */ +187, 171, 137, 101, 84, 94, 124, 155, /* 840-847 */ +171, 163, 138, 109, 93, 96, 117, 143, /* 848-855 */ +161, 162, 149, 130, 115, 105, 106, 113, /* 856-863 */ +122, 133, 145, 153, 157, 152, 138, 117, /* 864-871 */ + 99, 92, 103, 129, 155, 171, 166, 140, /* 872-879 */ +109, 89, 89, 111, 141, 163, 163, 140, /* 880-887 */ +107, 83, 81, 104, 139, 168, 174, 155, /* 888-895 */ +122, 92, 79, 90, 115, 143, 161, 161, /* 896-903 */ +148, 132, 119, 113, 113, 117, 121, 124, /* 904-911 */ +129, 136, 142, 142, 134, 121, 108, 103, /* 912-919 */ +111, 125, 140, 146, 135, 115, 96, 89, /* 920-927 */ +102, 129, 157, 167, 157, 126, 92, 73, /* 928-935 */ + 80, 108, 146, 173, 177, 158, 127, 100, /* 936-943 */ + 90, 101, 122, 143, 151, 146, 135, 122, /* 944-951 */ +117, 121, 129, 134, 134, 131, 125, 122, /* 952-959 */ +124, 124, 122, 120, 118, 121, 130, 143, /* 960-967 */ +151, 147, 130, 108, 90, 89, 107, 137, /* 968-975 */ +165, 176, 163, 132, 99, 82, 89, 115, /* 976-983 */ +146, 167, 165, 145, 118, 102, 102, 119, /* 984-991 */ +141, 156, 154, 140, 121, 106, 105, 116, /* 992-999 */ +131, 143, 148, 144, 135, 126, 119, 115, /* 1000-1007 */ +111, 110, 113, 121, 135, 146, 152, 146, /* 1008-1015 */ +129, 107, 91, 92, 109, 135, 157, 164, /* 1016-1023 */ +151, 127, 104, 97, 108, 132, 155, 163, /* 1024-1031 */ +152, 127, 105, 94, 103, 128, 154, 166, /* 1032-1039 */ +160, 139, 113, 95, 91, 102, 121, 137, /* 1040-1047 */ +145, 144, 137, 127, 119, 113, 110, 109, /* 1048-1055 */ +113, 121, 132, 143, 148, 143, 130, 117, /* 1056-1063 */ +110, 115, 129, 146, 155, 150, 133, 113, /* 1064-1071 */ +102, 106, 126, 151, 167, 164, 143, 113, /* 1072-1079 */ + 89, 83, 97, 124, 150, 162, 157, 137, /* 1080-1087 */ +114, 99, 96, 106, 121, 134, 140, 138, /* 1088-1095 */ +132, 127, 124, 124, 124, 127, 129, 132, /* 1096-1103 */ +135, 137, 135, 127, 120, 116, 119, 130, /* 1104-1111 */ +146, 155, 154, 140, 116, 97, 89, 101, /* 1112-1119 */ +125, 152, 167, 164, 143, 114, 92, 88, /* 1120-1127 */ +102, 126, 146, 154, 147, 130, 113, 106, /* 1128-1135 */ +111, 125, 139, 146, 141, 131, 121, 113, /* 1136-1143 */ +114, 121, 130, 138, 143, 145, 142, 136, /* 1144-1151 */ +127, 117, 110, 109, 117, 132, 148, 159, /* 1152-1159 */ +157, 141, 119, 99, 93, 103, 124, 146, /* 1160-1167 */ +157, 150, 131, 109, 97, 100, 116, 137, /* 1168-1175 */ +150, 147, 132, 112, 99, 99, 114, 134, /* 1176-1183 */ +151, 156, 148, 132, 116, 108, 108, 116, /* 1184-1191 */ +127, 138, 145, 146, 143, 136, 127, 117, /* 1192-1199 */ +110, 108, 113, 124, 136, 143, 140, 129, /* 1200-1207 */ +114, 103, 102, 112, 128, 141, 142, 131, /* 1208-1215 */ +113, 98, 97, 109, 131, 151, 159, 151, /* 1216-1223 */ +130, 108, 95, 98, 116, 138, 155, 159, /* 1224-1231 */ +151, 136, 121, 112, 113, 120, 128, 135, /* 1232-1239 */ +137, 135, 133, 129, 127, 123, 120, 120, /* 1240-1247 */ +123, 128, 132, 134, 129, 121, 113, 111, /* 1248-1255 */ +118, 132, 146, 154, 147, 131, 111, 99, /* 1256-1263 */ +100, 117, 140, 159, 165, 155, 133, 112, /* 1264-1271 */ +102, 105, 121, 138, 148, 148, 138, 124, /* 1272-1279 */ +116, 116, 122, 131, 136, 136, 131, 124, /* 1280-1287 */ +119, 118, 119, 123, 127, 132, 136, 139, /* 1288-1295 */ +138, 132, 124, 113, 107, 110, 120, 136, /* 1296-1303 */ +151, 156, 148, 130, 111, 100, 102, 116, /* 1304-1311 */ +136, 149, 151, 140, 122, 110, 106, 116, /* 1312-1319 */ +130, 142, 145, 137, 122, 110, 105, 111, /* 1320-1327 */ +124, 138, 145, 143, 135, 124, 116, 112, /* 1328-1335 */ +113, 117, 124, 132, 138, 142, 142, 136, /* 1336-1343 */ +127, 116, 110, 111, 120, 132, 143, 147, /* 1344-1351 */ +140, 127, 114, 109, 115, 128, 140, 146, /* 1352-1359 */ +140, 126, 110, 104, 108, 123, 140, 151, /* 1360-1367 */ +151, 138, 121, 106, 102, 110, 124, 138, /* 1368-1375 */ +146, 146, 140, 130, 122, 118, 119, 122, /* 1376-1383 */ +126, 130, 134, 136, 136, 133, 128, 123, /* 1384-1391 */ +119, 121, 127, 133, 138, 135, 127, 117, /* 1392-1399 */ +110, 113, 124, 138, 148, 149, 138, 121, /* 1400-1407 */ +105, 100, 107, 124, 143, 154, 153, 140, /* 1408-1415 */ +124, 112, 108, 116, 127, 138, 143, 140, /* 1416-1423 */ +132, 125, 123, 123, 127, 131, 132, 132, /* 1424-1431 */ +129, 127, 124, 121, 120, 121, 123, 128, /* 1432-1439 */ +133, 138, 137, 130, 119, 110, 105, 110, /* 1440-1447 */ +124, 140, 150, 150, 139, 122, 108, 104, /* 1448-1455 */ +110, 126, 141, 148, 145, 132, 120, 113, /* 1456-1463 */ +114, 123, 134, 140, 138, 129, 119, 113, /* 1464-1471 */ +112, 118, 127, 133, 137, 135, 129, 124, /* 1472-1479 */ +117, 114, 113, 116, 121, 129, 137, 141, /* 1480-1487 */ +140, 132, 122, 113, 109, 114, 125, 138, /* 1488-1495 */ +146, 144, 135, 122, 113, 113, 121, 132, /* 1496-1503 */ +142, 143, 135, 121, 111, 110, 116, 130, /* 1504-1511 */ +142, 146, 141, 129, 116, 109, 109, 116, /* 1512-1519 */ +127, 135, 140, 140, 135, 128, 123, 119, /* 1520-1527 */ +118, 120, 124, 130, 135, 139, 138, 133, /* 1528-1535 */ +127, 121, 120, 124, 132, 139, 140, 135, /* 1536-1543 */ +126, 117, 114, 119, 131, 143, 148, 143, /* 1544-1551 */ +132, 116, 107, 107, 116, 132, 143, 148, /* 1552-1559 */ +143, 131, 119, 113, 113, 119, 127, 133, /* 1560-1567 */ +136, 133, 130, 127, 125, 125, 126, 127, /* 1568-1575 */ +129, 130, 132, 131, 129, 126, 122, 122, /* 1576-1583 */ +126, 132, 139, 141, 138, 129, 118, 109, /* 1584-1591 */ +109, 117, 130, 143, 147, 142, 129, 115, /* 1592-1599 */ +107, 108, 117, 129, 138, 140, 135, 126, /* 1600-1607 */ +118, 116, 121, 128, 134, 136, 132, 128, /* 1608-1615 */ +123, 121, 121, 126, 131, 134, 136, 135, /* 1616-1623 */ +133, 128, 123, 118, 116, 118, 124, 132, /* 1624-1631 */ +139, 141, 137, 127, 117, 110, 110, 118, /* 1632-1639 */ +129, 138, 142, 136, 127, 118, 115, 118, /* 1640-1647 */ +128, 136, 140, 137, 129, 120, 116, 118, /* 1648-1655 */ +127, 136, 143, 143, 137, 128, 120, 116, /* 1656-1663 */ +118, 124, 130, 135, 137, 137, 134, 129, /* 1664-1671 */ +124, 120, 117, 118, 124, 129, 135, 137, /* 1672-1679 */ +134, 127, 121, 116, 118, 125, 132, 137, /* 1680-1687 */ +135, 128, 120, 115, 116, 124, 135, 143, /* 1688-1695 */ +143, 136, 124, 114, 110, 115, 125, 135, /* 1696-1703 */ +142, 142, 136, 127, 120, 117, 118, 122, /* 1704-1711 */ +127, 129, 131, 131, 129, 127, 125, 123, /* 1712-1719 */ +122, 123, 125, 128, 129, 129, 125, 121, /* 1720-1727 */ +118, 119, 124, 132, 138, 138, 133, 124, /* 1728-1735 */ +115, 111, 115, 125, 136, 143, 143, 136, /* 1736-1743 */ +125, 116, 113, 117, 125, 133, 137, 135, /* 1744-1751 */ +130, 124, 120, 121, 124, 128, 129, 130, /* 1752-1759 */ +127, 124, 121, 121, 122, 124, 127, 129, /* 1760-1767 */ +132, 132, 131, 127, 123, 118, 117, 121, /* 1768-1775 */ +127, 135, 141, 141, 135, 126, 117, 114, /* 1776-1783 */ +117, 126, 135, 139, 138, 132, 124, 118, /* 1784-1791 */ +119, 124, 131, 135, 135, 130, 124, 119, /* 1792-1799 */ +118, 122, 129, 135, 137, 136, 131, 125, /* 1800-1807 */ +122, 120, 121, 125, 129, 133, 135, 136, /* 1808-1815 */ +135, 131, 126, 121, 118, 121, 127, 133, /* 1816-1823 */ +138, 138, 132, 126, 121, 120, 124, 129, /* 1824-1831 */ +135, 136, 132, 126, 120, 118, 122, 129, /* 1832-1839 */ +138, 140, 138, 130, 122, 116, 116, 121, /* 1840-1847 */ +129, 135, 138, 137, 132, 127, 123, 121, /* 1848-1855 */ +121, 124, 127, 129, 131, 132, 131, 128, /* 1856-1863 */ +125, 123, 122, 124, 127, 129, 131, 129, /* 1864-1871 */ +125, 121, 119, 121, 127, 134, 137, 135, /* 1872-1879 */ +128, 120, 114, 114, 120, 129, 137, 140, /* 1880-1887 */ +138, 130, 122, 117, 117, 121, 128, 132, /* 1888-1895 */ +134, 132, 128, 126, 124, 125, 127, 127, /* 1896-1903 */ +129, 128, 127, 126, 125, 125, 124, 125, /* 1904-1911 */ +127, 129, 132, 132, 130, 127, 121, 118, /* 1912-1919 */ +118, 123, 129, 136, 140, 138, 130, 123, /* 1920-1927 */ +117, 116, 122, 129, 136, 138, 135, 129, /* 1928-1935 */ +124, 121, 123, 127, 132, 133, 132, 127, /* 1936-1943 */ +123, 121, 122, 126, 130, 132, 133, 132, /* 1944-1951 */ +128, 124, 122, 121, 121, 124, 128, 131, /* 1952-1959 */ +135, 135, 133, 128, 123, 119, 119, 122, /* 1960-1967 */ +128, 135, 136, 134, 129, 124, 120, 121, /* 1968-1975 */ +126, 130, 134, 132, 127, 121, 118, 119, /* 1976-1983 */ +124, 130, 135, 135, 131, 125, 119, 117, /* 1984-1991 */ +118, 123, 128, 132, 134, 132, 129, 127, /* 1992-1999 */ +124, 122, 122, 124, 125, 129, 132, 132, /* 2000-2007 */ +131, 129, 125, 123, 123, 125, 129, 132, /* 2008-2015 */ +131, 128, 124, 121, 121, 125, 131, 135, /* 2016-2023 */ +135, 132, 125, 119, 116, 118, 124, 131, /* 2024-2031 */ +137, 137, 133, 127, 122, 120, 121, 125, /* 2032-2039 */ +128, 131, 132, 130, 129, 127, 127, 127, /* 2040-2047 */ +127, 127, 128, 129, 129, 128, 127, 125, /* 2048-2055 */ +125, 126, 128, 131, 133, 133, 130, 125, /* 2056-2063 */ +121, 118, 120, 126, 132, 137, 138, 133, /* 2064-2071 */ +127, 121, 118, 120, 125, 131, 135, 134, /* 2072-2079 */ +131, 127, 124, 124, 127, 130, 132, 131, /* 2080-2087 */ +129, 127, 124, 124, 126, 128, 131, 132, /* 2088-2095 */ +132, 131, 129, 126, 124, 122, 122, 124, /* 2096-2103 */ +128, 132, 135, 134, 131, 127, 121, 119, /* 2104-2111 */ +121, 125, 130, 134, 134, 131, 127, 123, /* 2112-2119 */ +122, 124, 129, 132, 132, 130, 125, 122, /* 2120-2127 */ +122, 124, 129, 133, 135, 133, 129, 125, /* 2128-2135 */ +122, 121, 122, 126, 129, 132, 132, 132, /* 2136-2143 */ +129, 127, 124, 122, 121, 123, 126, 129, /* 2144-2151 */ +132, 132, 129, 127, 124, 122, 124, 127, /* 2152-2159 */ +130, 131, 129, 127, 123, 122, 124, 128, /* 2160-2167 */ +133, 135, 134, 129, 124, 119, 119, 123, /* 2168-2175 */ +128, 132, 135, 134, 129, 125, 122, 121, /* 2176-2183 */ +123, 125, 127, 129, 129, 129, 128, 127, /* 2184-2191 */ +127, 126, 126, 127, 127, 128, 128, 127, /* 2192-2199 */ +126, 125, 124, 127, 129, 132, 134, 132, /* 2200-2207 */ +129, 124, 120, 121, 124, 129, 134, 136, /* 2208-2215 */ +135, 130, 125, 121, 121, 123, 127, 130, /* 2216-2223 */ +132, 131, 128, 126, 124, 125, 127, 128, /* 2224-2231 */ +129, 128, 127, 125, 124, 124, 125, 127, /* 2232-2239 */ +129, 130, 131, 130, 128, 125, 123, 122, /* 2240-2247 */ +123, 125, 129, 133, 134, 132, 129, 124, /* 2248-2255 */ +121, 121, 123, 127, 131, 132, 131, 127, /* 2256-2263 */ +124, 122, 124, 126, 129, 129, 129, 127, /* 2264-2271 */ +124, 122, 123, 125, 129, 131, 132, 130, /* 2272-2279 */ +127, 124, 122, 122, 124, 127, 129, 131, /* 2280-2287 */ +132, 131, 129, 127, 124, 122, 123, 125, /* 2288-2295 */ +128, 131, 132, 131, 128, 126, 124, 124, /* 2296-2303 */ +127, 129, 130, 129, 127, 124, 123, 124, /* 2304-2311 */ +126, 130, 133, 133, 131, 127, 124, 121, /* 2312-2319 */ +122, 126, 129, 133, 134, 132, 129, 127, /* 2320-2327 */ +125, 124, 125, 127, 128, 129, 130, 130, /* 2328-2335 */ +129, 128, 127, 127, 127, 127, 128, 129, /* 2336-2343 */ +128, 128, 126, 124, 125, 127, 130, 132, /* 2344-2351 */ +132, 130, 127, 123, 121, 123, 127, 130, /* 2352-2359 */ +134, 135, 132, 128, 124, 123, 124, 126, /* 2360-2367 */ +129, 130, 130, 129, 128, 127, 127, 127, /* 2368-2375 */ +127, 129, 128, 128, 127, 127, 127, 127, /* 2376-2383 */ +127, 128, 129, 130, 131, 130, 128, 126, /* 2384-2391 */ +124, 123, 124, 127, 130, 133, 133, 131, /* 2392-2399 */ +127, 123, 122, 123, 126, 129, 131, 132, /* 2400-2407 */ +129, 127, 125, 124, 126, 128, 129, 129, /* 2408-2415 */ +128, 126, 124, 124, 125, 127, 129, 130, /* 2416-2423 */ +130, 129, 127, 125, 124, 124, 124, 127, /* 2424-2431 */ +129, 130, 131, 131, 129, 126, 124, 123, /* 2432-2439 */ +124, 126, 129, 131, 131, 129, 127, 125, /* 2440-2447 */ +124, 125, 127, 129, 129, 128, 126, 124, /* 2448-2455 */ +123, 124, 127, 130, 131, 130, 128, 125, /* 2456-2463 */ +122, 122, 123, 126, 129, 131, 131, 129, /* 2464-2471 */ +128, 127, 124, 124, 125, 126, 127, 129, /* 2472-2479 */ +129, 129, 129, 127, 126, 126, 127, 127, /* 2480-2487 */ +129, 129, 128, 127, 124, 124, 125, 128, /* 2488-2495 */ +130, 131, 130, 128, 124, 121, 121, 124, /* 2496-2503 */ +127, 130, 132, 132, 129, 126, 124, 124, /* 2504-2511 */ +124, 126, 128, 129, 129, 128, 128, 127, /* 2512-2519 */ +127, 127, 127, 127, 128, 128, 127, 127, /* 2520-2527 */ +127, 127, 126, 127, 129, 129, 130, 129, /* 2528-2535 */ +127, 124, 123, 123, 125, 127, 130, 132, /* 2536-2543 */ +132, 129, 126, 123, 123, 124, 127, 129, /* 2544-2551 */ +130, 130, 128, 127, 126, 126, 127, 129, /* 2552-2559 */ +129, 129, 127, 127, 125, 126, 127, 129, /* 2560-2567 */ +129, 130, 130, 129, 127, 126, 125, 124, /* 2568-2575 */ +125, 127, 129, 130, 131, 130, 129, 126, /* 2576-2583 */ +124, 124, 125, 127, 129, 131, 130, 128, /* 2584-2591 */ +127, 126, 126, 127, 129, 129, 129, 128, /* 2592-2599 */ +126, 125, 126, 127, 129, 131, 132, 130, /* 2600-2607 */ +128, 126, 124, 124, 126, 128, 129, 131, /* 2608-2615 */ +130, 129, 128, 127, 126, 125, 125, 126, /* 2616-2623 */ +128, 129, 129, 129, 128, 127, 126, 125, /* 2624-2631 */ +127, 128, 129, 128, 127, 126, 124, 125, /* 2632-2639 */ +127, 129, 131, 132, 129, 127, 124, 123, /* 2640-2647 */ +124, 126, 129, 131, 132, 131, 129, 127, /* 2648-2655 */ +124, 124, 126, 127, 128, 128, 128, 128, /* 2656-2663 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 2664-2671 */ +127, 127, 126, 125, 126, 127, 129, 130, /* 2672-2679 */ +129, 129, 127, 124, 124, 124, 127, 129, /* 2680-2687 */ +132, 132, 130, 128, 125, 124, 124, 126, /* 2688-2695 */ +128, 129, 129, 128, 127, 126, 127, 127, /* 2696-2703 */ +127, 127, 128, 127, 126, 125, 125, 126, /* 2704-2711 */ +127, 127, 129, 129, 129, 127, 127, 125, /* 2712-2719 */ +124, 124, 125, 127, 129, 130, 130, 129, /* 2720-2727 */ +127, 125, 124, 124, 126, 128, 129, 130, /* 2728-2735 */ +129, 127, 126, 125, 126, 127, 129, 129, /* 2736-2743 */ +127, 127, 125, 125, 126, 127, 129, 129, /* 2744-2751 */ +129, 128, 127, 125, 124, 125, 126, 127, /* 2752-2759 */ +129, 129, 129, 129, 127, 127, 125, 125, /* 2760-2767 */ +125, 127, 128, 129, 129, 129, 128, 127, /* 2768-2775 */ +126, 127, 127, 129, 129, 128, 127, 125, /* 2776-2783 */ +125, 126, 128, 129, 130, 129, 128, 126, /* 2784-2791 */ +124, 124, 125, 127, 129, 131, 131, 129, /* 2792-2799 */ +128, 127, 126, 126, 126, 127, 128, 128, /* 2800-2807 */ +129, 129, 128, 128, 127, 127, 127, 127, /* 2808-2815 */ +128, 128, 127, 127, 126, 126, 127, 128, /* 2816-2823 */ +129, 130, 129, 128, 125, 124, 124, 125, /* 2824-2831 */ +127, 129, 131, 131, 129, 127, 126, 124, /* 2832-2839 */ +126, 127, 128, 129, 129, 128, 128, 127, /* 2840-2847 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 2848-2855 */ +127, 127, 128, 129, 129, 129, 129, 129, /* 2856-2863 */ +127, 125, 125, 125, 126, 128, 129, 130, /* 2864-2871 */ +130, 129, 127, 125, 125, 126, 127, 129, /* 2872-2879 */ +129, 129, 128, 127, 127, 127, 127, 129, /* 2880-2887 */ +129, 128, 127, 127, 125, 126, 127, 129, /* 2888-2895 */ +129, 129, 129, 128, 127, 126, 125, 125, /* 2896-2903 */ +126, 127, 129, 129, 129, 129, 128, 126, /* 2904-2911 */ +125, 125, 126, 127, 128, 129, 129, 128, /* 2912-2919 */ +127, 127, 127, 127, 127, 129, 128, 127, /* 2920-2927 */ +127, 125, 126, 127, 128, 129, 129, 129, /* 2928-2935 */ +127, 125, 124, 125, 126, 127, 129, 129, /* 2936-2943 */ +129, 129, 127, 127, 126, 126, 126, 127, /* 2944-2951 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 2952-2959 */ +127, 127, 128, 127, 127, 127, 126, 126, /* 2960-2967 */ +127, 128, 129, 129, 129, 127, 125, 124, /* 2968-2975 */ +125, 126, 128, 129, 129, 129, 128, 127, /* 2976-2983 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 2984-2991 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 2992-2999 */ +127, 126, 126, 127, 127, 127, 128, 129, /* 3000-3007 */ +129, 128, 126, 125, 124, 125, 127, 128, /* 3008-3015 */ +129, 129, 129, 128, 126, 124, 124, 126, /* 3016-3023 */ +127, 128, 128, 128, 127, 127, 127, 127, /* 3024-3031 */ +127, 128, 128, 127, 127, 126, 126, 127, /* 3032-3039 */ +127, 129, 129, 129, 129, 128, 127, 126, /* 3040-3047 */ +125, 126, 127, 128, 129, 129, 129, 129, /* 3048-3055 */ +127, 126, 126, 126, 127, 128, 129, 129, /* 3056-3063 */ +128, 128, 127, 127, 127, 127, 129, 128, /* 3064-3071 */ +128, 127, 126, 126, 127, 127, 129, 129, /* 3072-3079 */ +129, 129, 127, 126, 126, 126, 127, 128, /* 3080-3087 */ +129, 129, 129, 129, 128, 127, 127, 126, /* 3088-3095 */ +127, 127, 128, 129, 129, 128, 128, 127, /* 3096-3103 */ +127, 127, 127, 128, 128, 127, 127, 127, /* 3104-3111 */ +126, 127, 127, 129, 129, 129, 128, 127, /* 3112-3119 */ +125, 125, 126, 127, 129, 129, 129, 129, /* 3120-3127 */ +128, 127, 126, 126, 127, 127, 128, 128, /* 3128-3135 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 3136-3143 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 3144-3151 */ +129, 129, 129, 128, 126, 125, 125, 126, /* 3152-3159 */ +128, 129, 129, 129, 129, 127, 126, 126, /* 3160-3167 */ +126, 127, 128, 128, 128, 128, 127, 127, /* 3168-3175 */ +127, 127, 127, 128, 128, 127, 126, 126, /* 3176-3183 */ +126, 127, 127, 127, 129, 129, 128, 127, /* 3184-3191 */ +127, 126, 125, 126, 127, 128, 129, 129, /* 3192-3199 */ +129, 128, 127, 126, 126, 126, 127, 128, /* 3200-3207 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 3208-3215 */ +128, 128, 127, 126, 126, 126, 127, 127, /* 3216-3223 */ +129, 129, 128, 127, 126, 126, 126, 126, /* 3224-3231 */ +127, 128, 128, 129, 129, 128, 127, 127, /* 3232-3239 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 3240-3247 */ +127, 127, 127, 127, 127, 128, 127, 127, /* 3248-3255 */ +126, 126, 126, 127, 127, 129, 129, 128, /* 3256-3263 */ +127, 126, 125, 126, 126, 127, 128, 129, /* 3264-3271 */ +129, 128, 127, 127, 127, 127, 127, 127, /* 3272-3279 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 3280-3287 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3288-3295 */ +127, 128, 129, 129, 128, 127, 126, 125, /* 3296-3303 */ +126, 127, 128, 129, 129, 129, 128, 127, /* 3304-3311 */ +127, 126, 127, 127, 128, 128, 128, 128, /* 3312-3319 */ +128, 127, 127, 127, 128, 128, 128, 127, /* 3320-3327 */ +127, 127, 127, 128, 128, 129, 129, 129, /* 3328-3335 */ +129, 128, 127, 126, 126, 127, 128, 129, /* 3336-3343 */ +129, 129, 129, 128, 127, 127, 127, 127, /* 3344-3351 */ +128, 128, 129, 128, 128, 127, 127, 127, /* 3352-3359 */ +127, 128, 128, 128, 127, 127, 127, 127, /* 3360-3367 */ +128, 129, 129, 129, 128, 128, 127, 126, /* 3368-3375 */ +126, 127, 127, 128, 129, 129, 129, 128, /* 3376-3383 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 3384-3391 */ +128, 128, 127, 127, 127, 127, 128, 128, /* 3392-3399 */ +127, 127, 126, 126, 127, 127, 129, 129, /* 3400-3407 */ +129, 128, 127, 126, 126, 126, 127, 128, /* 3408-3415 */ +128, 129, 128, 127, 127, 127, 127, 127, /* 3416-3423 */ +127, 127, 127, 128, 128, 128, 127, 127, /* 3424-3431 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3432-3439 */ +127, 127, 127, 128, 129, 128, 128, 127, /* 3440-3447 */ +126, 126, 126, 127, 128, 129, 129, 128, /* 3448-3455 */ +127, 127, 126, 126, 127, 127, 128, 128, /* 3456-3463 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 3464-3471 */ +127, 127, 127, 127, 127, 127, 127, 128, /* 3472-3479 */ +128, 128, 128, 127, 127, 126, 126, 127, /* 3480-3487 */ +127, 128, 129, 129, 128, 127, 127, 126, /* 3488-3495 */ +126, 127, 127, 128, 128, 128, 127, 127, /* 3496-3503 */ +127, 127, 127, 128, 128, 127, 127, 126, /* 3504-3511 */ +127, 127, 127, 128, 129, 128, 128, 127, /* 3512-3519 */ +127, 126, 126, 127, 127, 128, 128, 129, /* 3520-3527 */ +128, 127, 127, 127, 126, 127, 127, 128, /* 3528-3535 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 3536-3543 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 3544-3551 */ +129, 129, 128, 128, 127, 126, 126, 127, /* 3552-3559 */ +127, 128, 129, 129, 128, 128, 127, 127, /* 3560-3567 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 3568-3575 */ +127, 127, 127, 127, 128, 128, 128, 127, /* 3576-3583 */ +127, 127, 127, 128, 129, 129, 129, 128, /* 3584-3591 */ +128, 127, 127, 127, 127, 128, 129, 129, /* 3592-3599 */ +129, 128, 127, 127, 127, 127, 127, 128, /* 3600-3607 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 3608-3615 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 3616-3623 */ +128, 129, 129, 128, 128, 127, 127, 126, /* 3624-3631 */ +127, 127, 128, 129, 129, 129, 128, 127, /* 3632-3639 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 3640-3647 */ +127, 127, 127, 127, 127, 128, 127, 127, /* 3648-3655 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 3656-3663 */ +127, 127, 127, 126, 126, 127, 127, 128, /* 3664-3671 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 3672-3679 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 3680-3687 */ +127, 127, 128, 127, 127, 127, 127, 127, /* 3688-3695 */ +127, 128, 128, 128, 128, 127, 127, 126, /* 3696-3703 */ +126, 127, 127, 128, 128, 128, 128, 127, /* 3704-3711 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 3712-3719 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 3720-3727 */ +127, 127, 127, 127, 127, 127, 128, 129, /* 3728-3735 */ +128, 128, 127, 127, 126, 127, 127, 128, /* 3736-3743 */ +128, 129, 128, 128, 127, 127, 127, 127, /* 3744-3751 */ +127, 127, 128, 128, 128, 128, 127, 127, /* 3752-3759 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3760-3767 */ +127, 127, 127, 128, 128, 128, 127, 127, /* 3768-3775 */ +126, 126, 127, 127, 128, 128, 128, 128, /* 3776-3783 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 3784-3791 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 3792-3799 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 3800-3807 */ +128, 127, 127, 127, 127, 126, 127, 127, /* 3808-3815 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 3816-3823 */ +127, 127, 128, 128, 128, 128, 128, 127, /* 3824-3831 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 3832-3839 */ +127, 127, 128, 128, 129, 128, 128, 127, /* 3840-3847 */ +127, 127, 127, 127, 128, 128, 129, 129, /* 3848-3855 */ +128, 128, 127, 127, 127, 127, 128, 128, /* 3856-3863 */ +128, 128, 128, 128, 128, 127, 128, 128, /* 3864-3871 */ +128, 128, 127, 127, 127, 127, 128, 128, /* 3872-3879 */ +129, 129, 128, 128, 127, 127, 127, 127, /* 3880-3887 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 3888-3895 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 3896-3903 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3904-3911 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 3912-3919 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 3920-3927 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 3928-3935 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 3936-3943 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3944-3951 */ +128, 128, 128, 127, 127, 127, 127, 126, /* 3952-3959 */ +127, 127, 128, 128, 128, 128, 127, 127, /* 3960-3967 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 3968-3975 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 3976-3983 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 3984-3991 */ +127, 127, 127, 127, 127, 127, 127, 128, /* 3992-3999 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 4000-4007 */ +127, 127, 128, 128, 127, 127, 127, 127, /* 4008-4015 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4016-4023 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4024-4031 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 4032-4039 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 4040-4047 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 4048-4055 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4056-4063 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 4064-4071 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4072-4079 */ +127, 127, 128, 128, 128, 128, 127, 127, /* 4080-4087 */ +127, 127, 128, 128, 127, 127, 127, 127, /* 4088-4095 */ +128, 128, 128, 128, 128, 128, 128, 127, /* 4096-4103 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4104-4111 */ +128, 127, 127, 127, 127, 128, 128, 128, /* 4112-4119 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 4120-4127 */ +128, 127, 127, 127, 128, 128, 128, 128, /* 4128-4135 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4136-4143 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 4144-4151 */ +127, 127, 128, 128, 128, 128, 128, 127, /* 4152-4159 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 4160-4167 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 4168-4175 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4176-4183 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4184-4191 */ +127, 128, 127, 127, 127, 127, 127, 127, /* 4192-4199 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4200-4207 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 4208-4215 */ +127, 128, 128, 128, 127, 127, 127, 127, /* 4216-4223 */ +127, 127, 127, 127, 127, 128, 127, 127, /* 4224-4231 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4232-4239 */ +127, 127, 127, 127, 128, 128, 127, 127, /* 4240-4247 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 4248-4255 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 4256-4263 */ +127, 128, 128, 127, 127, 127, 127, 127, /* 4264-4271 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 4272-4279 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4280-4287 */ +127, 128, 128, 128, 128, 128, 127, 127, /* 4288-4295 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 4296-4303 */ +127, 127, 127, 127, 128, 128, 127, 127, /* 4304-4311 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4312-4319 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 4320-4327 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4328-4335 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 4336-4343 */ +128, 128, 128, 128, 127, 127, 127, 128, /* 4344-4351 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 4352-4359 */ +127, 127, 128, 128, 128, 128, 128, 127, /* 4360-4367 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4368-4375 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 4376-4383 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 4384-4391 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 4392-4399 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4400-4407 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 4408-4415 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4416-4423 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 4424-4431 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 4432-4439 */ +127, 127, 127, 127, 127, 127, 127, 128, /* 4440-4447 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 4448-4455 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 4456-4463 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 4464-4471 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4472-4479 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4480-4487 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4488-4495 */ +127, 127, 127, 128, 128, 127, 127, 127, /* 4496-4503 */ +127, 127, 127, 127, 127, 128, 128, 127, /* 4504-4511 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4512-4519 */ +128, 127, 127, 127, 127, 127, 128, 128, /* 4520-4527 */ +128, 127, 127, 127, 127, 127, 128, 128, /* 4528-4535 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4536-4543 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 4544-4551 */ +127, 127, 127, 128, 128, 128, 127, 127, /* 4552-4559 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 4560-4567 */ +127, 127, 128, 128, 128, 128, 128, 127, /* 4568-4575 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4576-4583 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 4584-4591 */ +128, 128, 128, 127, 127, 127, 128, 128, /* 4592-4599 */ +128, 128, 127, 127, 127, 127, 127, 128, /* 4600-4607 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4608-4615 */ +127, 128, 128, 128, 128, 128, 127, 127, /* 4616-4623 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4624-4631 */ +128, 127, 128, 128, 128, 128, 128, 127, /* 4632-4639 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4640-4647 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 4648-4655 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 4656-4663 */ +128, 128, 128, 128, 127, 128, 128, 128, /* 4664-4671 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4672-4679 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4680-4687 */ +127, 127, 128, 128, 128, 128, 127, 127, /* 4688-4695 */ +127, 127, 127, 127, 127, 127, 128, 127, /* 4696-4703 */ +127, 127, 127, 127, 128, 128, 127, 127, /* 4704-4711 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4712-4719 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4720-4727 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 4728-4735 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4736-4743 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4744-4751 */ +127, 127, 128, 127, 127, 127, 127, 127, /* 4752-4759 */ +127, 127, 127, 127, 128, 128, 127, 127, /* 4760-4767 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4768-4775 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4776-4783 */ +127, 127, 127, 127, 127, 128, 128, 128, /* 4784-4791 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4792-4799 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 4800-4807 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4808-4815 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4816-4823 */ +127, 128, 128, 128, 128, 128, 127, 127, /* 4824-4831 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 4832-4839 */ +127, 127, 128, 128, 127, 128, 128, 128, /* 4840-4847 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 4848-4855 */ +128, 128, 127, 127, 127, 128, 128, 128, /* 4856-4863 */ +128, 128, 128, 127, 127, 127, 127, 128, /* 4864-4871 */ +128, 128, 128, 128, 127, 127, 127, 128, /* 4872-4879 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 4880-4887 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 4888-4895 */ +127, 128, 128, 128, 128, 128, 128, 127, /* 4896-4903 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 4904-4911 */ +128, 127, 127, 127, 127, 127, 127, 128, /* 4912-4919 */ +128, 128, 127, 127, 127, 128, 128, 128, /* 4920-4927 */ +128, 127, 127, 127, 127, 127, 128, 128, /* 4928-4935 */ +128, 128, 127, 127, 127, 127, 127, 127, /* 4936-4943 */ +127, 128, 128, 127, 127, 127, 127, 127, /* 4944-4951 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4952-4959 */ +127, 127, 127, 128, 127, 127, 127, 127, /* 4960-4967 */ +127, 127, 127, 128, 128, 128, 127, 127, /* 4968-4975 */ +127, 127, 127, 127, 127, 127, 128, 127, /* 4976-4983 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4984-4991 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 4992-4999 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 5000-5007 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 5008-5015 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 5016-5023 */ +127, 127, 127, 127, 127, 127, 127, 127, /* 5024-5031 */ +127, 127, 128, 128, 128, 127, 127, 127, /* 5032-5039 */ +127, 127, 127, 127, 128, 128, 128, 127, /* 5040-5047 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 5048-5055 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 5056-5063 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5064-5071 */ +128, 128, 128, 127, 127, 127, 127, 128, /* 5072-5079 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 5080-5087 */ +127, 127, 128, 128, 128, 128, 128, 128, /* 5088-5095 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5096-5103 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5104-5111 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 5112-5119 */ +128, 128, 127, 127, 127, 127, 128, 128, /* 5120-5127 */ +128, 128, 128, 128, 127, 127, 127, 127, /* 5128-5135 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 5136-5143 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 5144-5151 */ +127, 128, 128, 128, 128, 127, 127, 127, /* 5152-5159 */ +127, 127, 127, 128, 128, 128, 128, 127, /* 5160-5167 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 5168-5175 */ +127, 127, 127, 128, 127, 128, 127, 127, /* 5176-5183 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 5184-5191 */ +128, 127, 127, 127, 127, 127, 127, 127, /* 5192-5199 */ +127, 128, 128, 127, 127, 127, 127, 127, /* 5200-5207 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 5208-5215 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 5216-5223 */ +127, 127, 128, 128, 128}; /* 5224-5228 */ + +//get and set the frequency from wav conversion tool GUI +int f=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaF() +{ + + speaker = data_f[f]/255.0;//scale to 0.0 to 1.0 for PWM + f++; + if (f>= NUM_ELEMENTS) { + f = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaGmaj.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,361 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:46:46 PM +* FileName: marimbaGmaj_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 2645 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 2645 + +const unsigned char data_g[NUM_ELEMENTS] = { +126, 126, 127, 126, 127, 127, 127, 127, /* 0-7 */ +127, 129, 132, 129, 119, 122, 130, 145, /* 8-15 */ +167, 147, 86, 67, 97, 140, 161, 151, /* 16-23 */ +144, 100, 156, 96, 249, 138, 236, 225, /* 24-31 */ +135, 43, 9, 40, 122, 238, 29, 209, /* 32-39 */ + 99, 241, 240, 106, 221, 8, 216, 125, /* 40-47 */ + 65, 52, 112, 152, 122, 103, 94, 114, /* 48-55 */ +183, 233, 206, 146, 41, 222, 5, 157, /* 56-63 */ + 44, 16, 175, 57, 238, 40, 138, 229, /* 64-71 */ +249, 162, 35, 225, 20, 151, 247, 6, /* 72-79 */ +181, 33, 225, 9, 101, 206, 244, 193, /* 80-87 */ +111, 60, 73, 118, 163, 171, 116, 95, /* 88-95 */ +123, 163, 202, 198, 135, 62, 33, 76, /* 96-103 */ +161, 237, 240, 150, 52, 20, 60, 155, /* 104-111 */ +241, 226, 135, 27, 238, 34, 159, 17, /* 112-119 */ + 13, 166, 35, 203, 234, 106, 226, 15, /* 120-127 */ +223, 115, 34, 31, 93, 163, 183, 167, /* 128-135 */ +125, 95, 132, 171, 178, 151, 83, 45, /* 136-143 */ + 80, 149, 212, 208, 141, 66, 23, 74, /* 144-151 */ +173, 228, 211, 117, 6, 238, 61, 193, /* 152-159 */ + 32, 16, 156, 9, 208, 14, 134, 3, /* 160-167 */ + 41, 220, 105, 25, 27, 101, 175, 193, /* 168-175 */ +155, 102, 91, 123, 156, 170, 128, 73, /* 176-183 */ + 59, 79, 149, 209, 196, 134, 55, 40, /* 184-191 */ +109, 200, 252, 203, 99, 19, 13, 111, /* 192-199 */ +246, 53, 4, 122, 248, 219, 41, 181, /* 200-207 */ + 14, 243, 151, 47, 1, 41, 117, 173, /* 208-215 */ +163, 106, 58, 57, 109, 159, 156, 117, /* 216-223 */ + 63, 46, 97, 165, 205, 188, 119, 57, /* 224-231 */ + 54, 121, 210, 237, 198, 106, 17, 18, /* 232-239 */ +109, 221, 17, 227, 115, 5, 238, 58, /* 240-247 */ +158, 228, 213, 130, 47, 26, 73, 144, /* 248-255 */ +183, 159, 105, 66, 81, 143, 194, 194, /* 256-263 */ +141, 77, 71, 115, 182, 224, 194, 118, /* 264-271 */ + 47, 48, 131, 216, 250, 192, 80, 15, /* 272-279 */ + 24, 101, 204, 255, 212, 107, 19, 9, /* 280-287 */ + 86, 184, 235, 206, 126, 59, 51, 113, /* 288-295 */ +184, 207, 171, 110, 78, 99, 154, 192, /* 296-303 */ +178, 126, 78, 73, 123, 185, 202, 161, /* 304-311 */ + 87, 32, 49, 128, 212, 236, 177, 78, /* 312-319 */ + 4, 21, 118, 218, 0, 201, 93, 14, /* 320-327 */ + 17, 99, 198, 248, 210, 115, 34, 23, /* 328-335 */ + 79, 153, 198, 174, 106, 57, 56, 95, /* 336-343 */ +139, 146, 113, 79, 80, 112, 157, 175, /* 344-351 */ +143, 81, 46, 79, 154, 225, 237, 171, /* 352-359 */ + 78, 24, 58, 152, 246, 12, 198, 86, /* 360-367 */ + 13, 24, 114, 213, 246, 201, 103, 27, /* 368-375 */ + 21, 79, 158, 191, 162, 105, 62, 63, /* 376-383 */ +107, 145, 151, 128, 97, 96, 127, 167, /* 384-391 */ +178, 145, 98, 73, 99, 162, 219, 221, /* 392-399 */ +164, 80, 30, 64, 154, 235, 245, 177, /* 400-407 */ + 75, 9, 31, 113, 198, 226, 179, 87, /* 408-415 */ + 26, 31, 95, 168, 195, 164, 100, 63, /* 416-423 */ + 74, 117, 159, 169, 143, 106, 99, 125, /* 424-431 */ +159, 171, 146, 103, 82, 111, 167, 209, /* 432-439 */ +196, 131, 58, 32, 78, 165, 229, 224, /* 440-447 */ +150, 54, 11, 48, 131, 210, 221, 159, /* 448-455 */ + 76, 28, 55, 124, 190, 204, 158, 95, /* 456-463 */ + 67, 85, 133, 168, 165, 140, 109, 108, /* 464-471 */ +136, 160, 157, 125, 85, 77, 115, 171, /* 472-479 */ +206, 182, 116, 49, 29, 85, 169, 223, /* 480-487 */ +210, 131, 46, 14, 57, 148, 214, 213, /* 488-495 */ +147, 62, 25, 57, 128, 191, 201, 154, /* 496-503 */ + 95, 62, 80, 126, 161, 164, 135, 108, /* 504-511 */ +109, 132, 152, 148, 118, 88, 86, 126, /* 512-519 */ +177, 198, 171, 107, 47, 44, 101, 178, /* 520-527 */ +224, 201, 120, 41, 22, 75, 161, 221, /* 528-535 */ +212, 142, 61, 29, 65, 140, 200, 206, /* 536-543 */ +157, 95, 66, 84, 130, 169, 171, 145, /* 544-551 */ +118, 115, 134, 152, 150, 126, 100, 101, /* 552-559 */ +135, 177, 195, 164, 103, 53, 56, 115, /* 560-567 */ +191, 226, 194, 113, 41, 32, 93, 179, /* 568-575 */ +230, 211, 138, 60, 38, 84, 161, 216, /* 576-583 */ +211, 153, 90, 66, 93, 144, 180, 179, /* 584-591 */ +144, 109, 102, 118, 142, 145, 122, 99, /* 592-599 */ + 96, 121, 156, 167, 141, 89, 52, 63, /* 600-607 */ +116, 174, 198, 163, 93, 42, 43, 104, /* 608-615 */ +181, 215, 187, 117, 56, 49, 99, 171, /* 616-623 */ +213, 198, 140, 80, 61, 94, 148, 181, /* 624-631 */ +173, 135, 101, 91, 107, 131, 135, 121, /* 632-639 */ +100, 96, 118, 144, 148, 122, 81, 57, /* 640-647 */ + 74, 124, 174, 185, 146, 85, 45, 58, /* 648-655 */ +121, 185, 207, 174, 108, 56, 61, 116, /* 656-663 */ +181, 212, 187, 126, 75, 69, 107, 158, /* 664-671 */ +185, 173, 133, 98, 93, 114, 135, 140, /* 672-679 */ +126, 106, 106, 128, 148, 151, 123, 85, /* 680-687 */ + 65, 86, 135, 177, 182, 141, 84, 51, /* 688-695 */ + 71, 128, 185, 201, 164, 101, 61, 74, /* 696-703 */ +129, 188, 209, 179, 121, 78, 79, 120, /* 704-711 */ +169, 191, 174, 135, 103, 101, 121, 142, /* 712-719 */ +148, 133, 115, 113, 128, 147, 145, 120, /* 720-727 */ + 89, 75, 94, 136, 169, 167, 129, 80, /* 728-735 */ + 58, 80, 135, 181, 186, 147, 92, 62, /* 736-743 */ + 82, 138, 189, 202, 167, 112, 75, 81, /* 744-751 */ +124, 171, 188, 169, 129, 101, 99, 117, /* 752-759 */ +137, 143, 131, 117, 116, 129, 142, 136, /* 760-767 */ +114, 90, 83, 107, 145, 169, 161, 123, /* 768-775 */ + 83, 70, 100, 151, 187, 183, 140, 89, /* 776-783 */ + 70, 95, 149, 193, 196, 157, 104, 75, /* 784-791 */ + 86, 126, 167, 179, 157, 121, 95, 94, /* 792-799 */ +113, 130, 136, 127, 116, 117, 126, 133, /* 800-807 */ +128, 111, 95, 97, 121, 150, 163, 148, /* 808-815 */ +115, 86, 85, 117, 160, 184, 171, 128, /* 816-823 */ + 85, 76, 107, 157, 190, 183, 143, 96, /* 824-831 */ + 74, 90, 131, 166, 172, 150, 116, 94, /* 832-839 */ + 97, 114, 133, 138, 130, 121, 119, 126, /* 840-847 */ +130, 125, 113, 104, 109, 129, 151, 157, /* 848-855 */ +140, 111, 92, 99, 132, 167, 179, 159, /* 856-863 */ +118, 86, 88, 122, 166, 188, 174, 133, /* 864-871 */ + 93, 82, 104, 144, 170, 169, 143, 112, /* 872-879 */ + 96, 103, 120, 136, 137, 128, 120, 118, /* 880-887 */ +123, 125, 120, 110, 106, 113, 130, 145, /* 888-895 */ +145, 128, 105, 95, 108, 138, 163, 168, /* 896-903 */ +142, 108, 88, 97, 132, 169, 181, 161, /* 904-911 */ +120, 87, 84, 109, 145, 165, 158, 131, /* 912-919 */ +102, 89, 98, 116, 131, 131, 121, 112, /* 920-927 */ +109, 114, 118, 116, 110, 106, 113, 127, /* 928-935 */ +138, 136, 122, 105, 101, 116, 142, 161, /* 936-943 */ +159, 134, 104, 92, 107, 141, 171, 176, /* 944-951 */ +152, 114, 88, 91, 118, 152, 167, 157, /* 952-959 */ +129, 104, 95, 107, 127, 139, 140, 129, /* 960-967 */ +119, 118, 122, 128, 128, 124, 123, 127, /* 968-975 */ +136, 144, 139, 127, 115, 115, 130, 151, /* 976-983 */ +162, 154, 129, 104, 97, 115, 146, 170, /* 984-991 */ +168, 141, 106, 86, 94, 124, 153, 163, /* 992-999 */ +149, 122, 101, 98, 113, 133, 143, 140, /* 1000-1007 */ +128, 118, 117, 125, 131, 131, 128, 124, /* 1008-1015 */ +128, 135, 139, 135, 123, 114, 117, 131, /* 1016-1023 */ +148, 154, 142, 118, 98, 97, 118, 147, /* 1024-1031 */ +165, 157, 128, 98, 85, 99, 128, 153, /* 1032-1039 */ +158, 141, 114, 97, 99, 117, 136, 145, /* 1040-1047 */ +138, 124, 115, 115, 123, 130, 132, 129, /* 1048-1055 */ +126, 127, 132, 134, 130, 122, 117, 121, /* 1056-1063 */ +134, 147, 149, 135, 114, 99, 103, 125, /* 1064-1071 */ +150, 162, 151, 123, 96, 89, 105, 134, /* 1072-1079 */ +156, 155, 136, 111, 97, 102, 121, 139, /* 1080-1087 */ +145, 136, 123, 115, 117, 125, 133, 135, /* 1088-1095 */ +131, 128, 128, 132, 132, 129, 124, 121, /* 1096-1103 */ +125, 137, 146, 144, 130, 111, 101, 108, /* 1104-1111 */ +130, 152, 157, 142, 115, 93, 92, 112, /* 1112-1119 */ +139, 156, 151, 129, 107, 99, 110, 130, /* 1120-1127 */ +145, 147, 136, 123, 117, 121, 132, 140, /* 1128-1135 */ +140, 136, 131, 130, 132, 133, 132, 127, /* 1136-1143 */ +125, 130, 139, 143, 139, 125, 109, 103, /* 1144-1151 */ +113, 134, 150, 150, 133, 107, 92, 96, /* 1152-1159 */ +119, 142, 153, 144, 122, 104, 100, 114, /* 1160-1167 */ +133, 146, 144, 132, 118, 114, 121, 131, /* 1168-1175 */ +139, 138, 131, 125, 124, 125, 127, 126, /* 1176-1183 */ +123, 123, 126, 133, 135, 129, 116, 105, /* 1184-1191 */ +103, 115, 133, 145, 142, 124, 102, 93, /* 1192-1199 */ +101, 124, 144, 149, 138, 116, 102, 103, /* 1200-1207 */ +118, 137, 146, 141, 126, 115, 113, 122, /* 1208-1215 */ +132, 139, 137, 130, 124, 122, 125, 127, /* 1216-1223 */ +127, 125, 127, 131, 136, 136, 129, 117, /* 1224-1231 */ +109, 112, 126, 141, 149, 142, 123, 105, /* 1232-1239 */ +101, 113, 133, 149, 149, 135, 117, 106, /* 1240-1247 */ +110, 126, 143, 148, 141, 126, 116, 116, /* 1248-1255 */ +126, 138, 144, 141, 133, 127, 125, 127, /* 1256-1263 */ +130, 132, 131, 133, 136, 137, 135, 129, /* 1264-1271 */ +119, 115, 119, 131, 144, 148, 138, 121, /* 1272-1279 */ +106, 106, 119, 137, 149, 146, 131, 114, /* 1280-1287 */ +107, 114, 130, 145, 147, 138, 123, 115, /* 1288-1295 */ +117, 127, 138, 142, 138, 130, 124, 122, /* 1296-1303 */ +124, 127, 129, 129, 130, 131, 131, 128, /* 1304-1311 */ +121, 114, 112, 118, 130, 139, 139, 129, /* 1312-1319 */ +114, 105, 107, 121, 138, 146, 140, 124, /* 1320-1327 */ +110, 107, 117, 133, 144, 144, 132, 119, /* 1328-1335 */ +112, 117, 127, 138, 140, 134, 126, 119, /* 1336-1343 */ +118, 122, 126, 128, 129, 129, 128, 128, /* 1344-1351 */ +124, 119, 116, 117, 123, 133, 139, 137, /* 1352-1359 */ +127, 115, 109, 115, 130, 143, 147, 139, /* 1360-1367 */ +124, 113, 113, 124, 139, 148, 144, 131, /* 1368-1375 */ +119, 115, 121, 133, 142, 142, 135, 124, /* 1376-1383 */ +119, 120, 125, 130, 132, 131, 129, 128, /* 1384-1391 */ +127, 125, 121, 118, 120, 126, 134, 138, /* 1392-1399 */ +134, 124, 113, 110, 117, 130, 141, 143, /* 1400-1407 */ +133, 119, 110, 114, 126, 140, 144, 138, /* 1408-1415 */ +125, 115, 114, 123, 135, 141, 139, 130, /* 1416-1423 */ +121, 116, 119, 125, 130, 132, 130, 127, /* 1424-1431 */ +125, 123, 122, 119, 117, 119, 125, 132, /* 1432-1439 */ +134, 129, 120, 111, 111, 118, 131, 138, /* 1440-1447 */ +137, 128, 116, 110, 116, 128, 140, 142, /* 1448-1455 */ +134, 122, 113, 115, 124, 136, 141, 137, /* 1456-1463 */ +127, 118, 116, 119, 126, 131, 132, 129, /* 1464-1471 */ +125, 124, 123, 122, 120, 120, 122, 127, /* 1472-1479 */ +132, 132, 129, 120, 114, 115, 123, 134, /* 1480-1487 */ +140, 137, 126, 116, 113, 120, 132, 142, /* 1488-1495 */ +141, 132, 120, 114, 118, 129, 139, 143, /* 1496-1503 */ +136, 126, 118, 117, 123, 131, 135, 135, /* 1504-1511 */ +131, 128, 126, 125, 126, 126, 126, 128, /* 1512-1519 */ +132, 136, 135, 131, 124, 120, 122, 130, /* 1520-1527 */ +138, 142, 137, 127, 119, 118, 126, 137, /* 1528-1535 */ +144, 141, 131, 120, 115, 121, 132, 141, /* 1536-1543 */ +143, 136, 125, 119, 119, 125, 133, 137, /* 1544-1551 */ +135, 131, 127, 126, 125, 127, 127, 128, /* 1552-1559 */ +129, 132, 133, 133, 128, 122, 120, 123, /* 1560-1567 */ +130, 137, 137, 131, 122, 115, 117, 125, /* 1568-1575 */ +135, 139, 134, 124, 114, 112, 118, 130, /* 1576-1583 */ +137, 137, 129, 118, 113, 115, 122, 130, /* 1584-1591 */ +133, 131, 126, 122, 120, 122, 123, 124, /* 1592-1599 */ +125, 126, 128, 129, 127, 124, 120, 120, /* 1600-1607 */ +123, 129, 135, 134, 128, 120, 117, 120, /* 1608-1615 */ +128, 137, 139, 133, 123, 115, 115, 123, /* 1616-1623 */ +133, 139, 136, 128, 118, 114, 118, 126, /* 1624-1631 */ +133, 135, 131, 126, 123, 122, 124, 126, /* 1632-1639 */ +127, 128, 129, 130, 130, 128, 126, 123, /* 1640-1647 */ +123, 127, 132, 135, 134, 128, 121, 120, /* 1648-1655 */ +123, 132, 139, 139, 131, 121, 115, 118, /* 1656-1663 */ +127, 136, 140, 136, 126, 118, 116, 121, /* 1664-1671 */ +128, 134, 135, 130, 125, 122, 122, 125, /* 1672-1679 */ +127, 128, 129, 128, 128, 128, 127, 125, /* 1680-1687 */ +123, 124, 128, 131, 133, 131, 124, 119, /* 1688-1695 */ +119, 123, 131, 136, 134, 126, 117, 114, /* 1696-1703 */ +118, 126, 134, 136, 132, 123, 115, 115, /* 1704-1711 */ +121, 128, 133, 132, 127, 123, 120, 122, /* 1712-1719 */ +125, 127, 129, 128, 127, 127, 127, 125, /* 1720-1727 */ +124, 123, 125, 128, 130, 131, 128, 123, /* 1728-1735 */ +120, 120, 125, 133, 135, 132, 125, 117, /* 1736-1743 */ +115, 121, 130, 137, 137, 130, 122, 117, /* 1744-1751 */ +118, 125, 133, 136, 134, 129, 124, 122, /* 1752-1759 */ +125, 127, 130, 131, 130, 128, 128, 128, /* 1760-1767 */ +128, 126, 127, 128, 131, 132, 131, 129, /* 1768-1775 */ +124, 123, 125, 130, 136, 137, 133, 126, /* 1776-1783 */ +120, 121, 126, 134, 139, 138, 131, 124, /* 1784-1791 */ +120, 121, 128, 135, 137, 134, 128, 124, /* 1792-1799 */ +123, 126, 129, 132, 132, 129, 128, 127, /* 1800-1807 */ +127, 127, 127, 128, 129, 131, 131, 129, /* 1808-1815 */ +127, 124, 123, 126, 130, 134, 134, 129, /* 1816-1823 */ +123, 119, 120, 126, 132, 136, 133, 127, /* 1824-1831 */ +120, 117, 121, 128, 133, 134, 131, 125, /* 1832-1839 */ +121, 122, 125, 129, 130, 130, 128, 125, /* 1840-1847 */ +125, 125, 126, 127, 128, 128, 128, 128, /* 1848-1855 */ +127, 124, 123, 123, 126, 130, 132, 131, /* 1856-1863 */ +126, 120, 118, 121, 126, 132, 134, 130, /* 1864-1871 */ +124, 119, 117, 121, 128, 133, 132, 128, /* 1872-1879 */ +123, 121, 122, 125, 129, 130, 129, 126, /* 1880-1887 */ +125, 124, 125, 126, 128, 128, 128, 128, /* 1888-1895 */ +128, 126, 124, 124, 125, 128, 131, 132, /* 1896-1903 */ +130, 125, 121, 120, 123, 129, 134, 134, /* 1904-1911 */ +130, 124, 119, 120, 124, 130, 133, 132, /* 1912-1919 */ +128, 123, 121, 123, 128, 132, 132, 129, /* 1920-1927 */ +126, 125, 125, 126, 129, 129, 130, 130, /* 1928-1935 */ +128, 128, 126, 126, 126, 126, 129, 131, /* 1936-1943 */ +132, 129, 125, 121, 121, 124, 129, 133, /* 1944-1951 */ +133, 128, 122, 119, 120, 126, 130, 132, /* 1952-1959 */ +131, 125, 122, 121, 123, 128, 131, 131, /* 1960-1967 */ +128, 125, 123, 123, 126, 128, 129, 128, /* 1968-1975 */ +127, 126, 125, 124, 124, 124, 126, 128, /* 1976-1983 */ +130, 129, 126, 123, 120, 121, 125, 129, /* 1984-1991 */ +131, 130, 126, 121, 119, 121, 126, 131, /* 1992-1999 */ +132, 129, 125, 122, 122, 125, 129, 132, /* 2000-2007 */ +131, 128, 125, 123, 125, 128, 130, 131, /* 2008-2015 */ +130, 128, 128, 126, 126, 127, 127, 129, /* 2016-2023 */ +130, 131, 130, 128, 125, 124, 125, 129, /* 2024-2031 */ +132, 134, 131, 127, 123, 123, 126, 130, /* 2032-2039 */ +133, 134, 131, 126, 123, 125, 129, 132, /* 2040-2047 */ +133, 132, 128, 126, 125, 127, 129, 131, /* 2048-2055 */ +131, 130, 128, 127, 126, 126, 127, 127, /* 2056-2063 */ +129, 130, 130, 129, 126, 124, 123, 126, /* 2064-2071 */ +129, 131, 133, 130, 125, 122, 123, 126, /* 2072-2079 */ +130, 132, 131, 128, 124, 122, 124, 128, /* 2080-2087 */ +131, 131, 129, 126, 123, 123, 126, 129, /* 2088-2095 */ +129, 130, 128, 126, 125, 125, 125, 126, /* 2096-2103 */ +127, 128, 129, 128, 127, 125, 123, 123, /* 2104-2111 */ +126, 128, 131, 130, 127, 124, 122, 123, /* 2112-2119 */ +126, 129, 131, 129, 126, 123, 122, 125, /* 2120-2127 */ +128, 131, 131, 128, 125, 123, 123, 126, /* 2128-2135 */ +129, 130, 130, 127, 125, 125, 124, 126, /* 2136-2143 */ +127, 128, 128, 128, 128, 126, 125, 123, /* 2144-2151 */ +124, 126, 129, 130, 130, 127, 123, 122, /* 2152-2159 */ +124, 127, 130, 131, 128, 125, 123, 123, /* 2160-2167 */ +126, 129, 131, 130, 127, 124, 123, 124, /* 2168-2175 */ +126, 129, 130, 128, 127, 125, 124, 124, /* 2176-2183 */ +126, 127, 128, 128, 128, 127, 125, 124, /* 2184-2191 */ +124, 126, 127, 129, 130, 128, 126, 123, /* 2192-2199 */ +123, 125, 128, 131, 131, 128, 125, 123, /* 2200-2207 */ +123, 126, 129, 131, 129, 126, 123, 123, /* 2208-2215 */ +125, 128, 129, 130, 128, 125, 124, 123, /* 2216-2223 */ +124, 126, 127, 128, 128, 127, 127, 125, /* 2224-2231 */ +124, 124, 126, 128, 129, 129, 128, 125, /* 2232-2239 */ +123, 123, 126, 129, 131, 129, 126, 125, /* 2240-2247 */ +123, 125, 128, 131, 131, 129, 126, 123, /* 2248-2255 */ +124, 126, 129, 131, 130, 128, 126, 125, /* 2256-2263 */ +125, 126, 127, 129, 129, 128, 128, 127, /* 2264-2271 */ +126, 126, 126, 127, 129, 130, 130, 128, /* 2272-2279 */ +126, 125, 126, 128, 131, 131, 130, 128, /* 2280-2287 */ +126, 125, 126, 129, 132, 132, 129, 126, /* 2288-2295 */ +125, 126, 128, 131, 132, 131, 129, 127, /* 2296-2303 */ +126, 126, 128, 129, 130, 130, 129, 128, /* 2304-2311 */ +127, 126, 127, 127, 129, 129, 130, 129, /* 2312-2319 */ +128, 126, 126, 126, 129, 131, 131, 129, /* 2320-2327 */ +127, 126, 126, 128, 131, 131, 131, 128, /* 2328-2335 */ +126, 125, 126, 128, 130, 131, 130, 127, /* 2336-2343 */ +125, 125, 125, 127, 128, 128, 128, 127, /* 2344-2351 */ +125, 125, 125, 125, 126, 126, 128, 128, /* 2352-2359 */ +126, 125, 125, 125, 125, 128, 128, 128, /* 2360-2367 */ +126, 125, 123, 125, 126, 129, 130, 128, /* 2368-2375 */ +126, 123, 123, 125, 127, 129, 129, 127, /* 2376-2383 */ +125, 123, 123, 124, 126, 127, 128, 127, /* 2384-2391 */ +125, 125, 125, 125, 125, 126, 126, 128, /* 2392-2399 */ +127, 126, 125, 125, 125, 126, 128, 128, /* 2400-2407 */ +128, 126, 125, 125, 125, 128, 129, 129, /* 2408-2415 */ +128, 126, 124, 124, 126, 128, 129, 129, /* 2416-2423 */ +128, 125, 125, 125, 126, 127, 129, 128, /* 2424-2431 */ +128, 127, 125, 126, 126, 127, 128, 128, /* 2432-2439 */ +128, 128, 127, 126, 126, 126, 128, 129, /* 2440-2447 */ +129, 128, 126, 126, 126, 126, 129, 130, /* 2448-2455 */ +129, 128, 125, 124, 124, 126, 128, 129, /* 2456-2463 */ +128, 127, 125, 124, 125, 126, 127, 128, /* 2464-2471 */ +128, 127, 125, 125, 125, 126, 126, 128, /* 2472-2479 */ +128, 128, 127, 126, 126, 126, 126, 128, /* 2480-2487 */ +129, 128, 128, 126, 125, 126, 128, 129, /* 2488-2495 */ +130, 129, 127, 125, 124, 126, 127, 129, /* 2496-2503 */ +129, 128, 127, 125, 125, 126, 127, 129, /* 2504-2511 */ +129, 128, 127, 126, 126, 126, 127, 128, /* 2512-2519 */ +128, 128, 128, 128, 126, 126, 126, 128, /* 2520-2527 */ +128, 129, 128, 127, 126, 126, 126, 128, /* 2528-2535 */ +129, 130, 129, 126, 126, 126, 126, 129, /* 2536-2543 */ +129, 130, 129, 127, 126, 126, 127, 129, /* 2544-2551 */ +129, 129, 129, 128, 127, 127, 128, 129, /* 2552-2559 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 2560-2567 */ +129, 129, 129, 129, 127, 126, 126, 128, /* 2568-2575 */ +129, 130, 130, 128, 126, 126, 126, 127, /* 2576-2583 */ +129, 129, 129, 128, 127, 125, 126, 127, /* 2584-2591 */ +128, 129, 129, 128, 127, 126, 126, 126, /* 2592-2599 */ +128, 128, 128, 128, 126, 126, 126, 126, /* 2600-2607 */ +128, 128, 128, 128, 126, 126, 125, 126, /* 2608-2615 */ +126, 128, 128, 128, 127, 125, 124, 125, /* 2616-2623 */ +126, 128, 128, 128, 127, 125, 125, 125, /* 2624-2631 */ +126, 127, 128, 127, 126, 125, 125, 125, /* 2632-2639 */ +126, 126, 126, 126, 126}; /* 2640-2644 */ + +//get and set the frequency from wav conversion tool GUI +int g=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaG() +{ + + speaker = data_g[g]/255.0;//scale to 0.0 to 1.0 for PWM + g++; + if (g>= NUM_ELEMENTS) { + g = 0; + sampletick.detach(); + myled = 0; + } +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaHighD.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,577 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:43:54 PM +* FileName: marimbaHighD_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 4367 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 4367 + +const unsigned char data_d[NUM_ELEMENTS] = { +126, 127, 126, 127, 126, 127, 126, 127, /* 0-7 */ +126, 127, 126, 126, 127, 126, 126, 127, /* 8-15 */ +126, 128, 126, 128, 127, 128, 127, 128, /* 16-23 */ +127, 128, 126, 128, 127, 128, 126, 127, /* 24-31 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 32-39 */ +127, 126, 126, 127, 126, 128, 126, 128, /* 40-47 */ +127, 128, 126, 128, 126, 128, 126, 128, /* 48-55 */ +126, 128, 127, 128, 126, 126, 127, 126, /* 56-63 */ +128, 127, 128, 126, 128, 126, 128, 126, /* 64-71 */ +128, 126, 128, 126, 128, 126, 128, 126, /* 72-79 */ +128, 126, 127, 127, 127, 127, 127, 128, /* 80-87 */ +126, 128, 128, 133, 126, 126, 146, 150, /* 88-95 */ +105, 85, 103, 124, 140, 144, 143, 140, /* 96-103 */ +131, 119, 112, 105, 98, 111, 132, 147, /* 104-111 */ +158, 171, 153, 127, 131, 97, 156, 122, /* 112-119 */ + 17, 93, 138, 150, 200, 189, 136, 134, /* 120-127 */ + 97, 62, 69, 72, 125, 181, 188, 180, /* 128-135 */ +162, 118, 100, 104, 95, 122, 148, 134, /* 136-143 */ +127, 119, 92, 105, 135, 148, 182, 179, /* 144-151 */ +153, 133, 67, 15, 53, 104, 130, 194, /* 152-159 */ +236, 219, 187, 124, 40, 14, 17, 54, /* 160-167 */ +150, 214, 231, 240, 171, 82, 59, 29, /* 168-175 */ + 37, 108, 166, 195, 223, 180, 115, 92, /* 176-183 */ + 63, 63, 112, 140, 165, 184, 145, 113, /* 184-191 */ +103, 79, 100, 163, 185, 192, 187, 124, /* 192-199 */ + 56, 31, 8, 50, 142, 210, 6, 14, /* 200-207 */ +205, 123, 52, 234, 243, 57, 128, 207, /* 208-215 */ + 5, 237, 183, 123, 49, 29, 55, 97, /* 216-223 */ +157, 194, 179, 156, 118, 55, 63, 98, /* 224-231 */ +126, 173, 202, 177, 139, 99, 45, 53, /* 232-239 */ + 90, 128, 189, 216, 188, 157, 101, 41, /* 240-247 */ + 51, 86, 131, 207, 232, 200, 165, 95, /* 248-255 */ + 17, 8, 37, 96, 190, 244, 249, 228, /* 256-263 */ +154, 69, 35, 18, 37, 110, 160, 185, /* 264-271 */ +206, 177, 127, 117, 110, 117, 154, 158, /* 272-279 */ +144, 123, 75, 46, 59, 81, 142, 219, /* 280-287 */ +243, 235, 196, 107, 26, 251, 255, 52, /* 288-295 */ +138, 200, 235, 228, 171, 106, 57, 28, /* 296-303 */ + 56, 118, 157, 196, 198, 143, 96, 66, /* 304-311 */ + 43, 73, 133, 176, 213, 220, 172, 121, /* 312-319 */ + 77, 42, 62, 101, 132, 174, 180, 142, /* 320-327 */ +119, 98, 79, 110, 151, 170, 187, 171, /* 328-335 */ +110, 59, 22, 14, 68, 138, 207, 10, /* 336-343 */ + 7, 206, 144, 59, 255, 13, 51, 105, /* 344-351 */ +187, 232, 224, 196, 152, 108, 95, 95, /* 352-359 */ +112, 142, 142, 132, 121, 86, 77, 107, /* 360-367 */ +136, 172, 210, 201, 158, 114, 52, 25, /* 368-375 */ + 43, 73, 131, 191, 210, 200, 168, 110, /* 376-383 */ + 76, 71, 83, 125, 177, 184, 177, 156, /* 384-391 */ +102, 69, 73, 92, 135, 185, 204, 201, /* 392-399 */ +166, 111, 76, 61, 59, 96, 138, 154, /* 400-407 */ +163, 153, 117, 98, 98, 104, 131, 160, /* 408-415 */ +160, 145, 108, 62, 44, 53, 89, 161, /* 416-423 */ +215, 230, 227, 181, 103, 49, 24, 25, /* 424-431 */ + 78, 143, 192, 225, 215, 170, 127, 85, /* 432-439 */ + 67, 89, 111, 130, 153, 144, 115, 99, /* 440-447 */ + 84, 91, 132, 164, 179, 184, 152, 102, /* 448-455 */ + 67, 45, 56, 101, 149, 191, 213, 189, /* 456-463 */ +146, 107, 69, 67, 104, 146, 184, 204, /* 464-471 */ +182, 139, 93, 55, 53, 88, 140, 191, /* 472-479 */ +223, 214, 174, 117, 58, 33, 43, 71, /* 480-487 */ +119, 166, 183, 176, 153, 118, 96, 98, /* 488-495 */ +109, 129, 140, 130, 115, 91, 71, 82, /* 496-503 */ +119, 159, 203, 226, 206, 162, 102, 44, /* 504-511 */ + 24, 44, 91, 158, 210, 229, 216, 168, /* 512-519 */ +109, 73, 56, 70, 111, 145, 163, 163, /* 520-527 */ +140, 104, 84, 82, 101, 135, 165, 177, /* 528-535 */ +167, 132, 93, 71, 64, 83, 125, 159, /* 536-543 */ +179, 182, 154, 123, 106, 99, 116, 149, /* 544-551 */ +170, 175, 160, 122, 80, 59, 64, 100, /* 552-559 */ +156, 200, 226, 219, 170, 104, 51, 16, /* 560-567 */ + 18, 58, 111, 163, 198, 195, 170, 138, /* 568-575 */ +101, 84, 89, 101, 116, 123, 116, 108, /* 576-583 */ +106, 109, 133, 166, 189, 200, 188, 145, /* 584-591 */ + 97, 59, 41, 61, 104, 152, 197, 214, /* 592-599 */ +192, 153, 106, 65, 60, 78, 110, 149, /* 600-607 */ +168, 157, 134, 98, 67, 69, 91, 126, /* 608-615 */ +167, 187, 182, 159, 119, 82, 71, 77, /* 616-623 */ +101, 141, 165, 173, 169, 152, 135, 133, /* 624-631 */ +136, 149, 161, 155, 134, 110, 79, 66, /* 632-639 */ + 85, 122, 170, 214, 224, 205, 158, 92, /* 640-647 */ + 39, 18, 28, 73, 136, 184, 210, 207, /* 648-655 */ +170, 129, 94, 75, 83, 108, 127, 142, /* 656-663 */ +146, 132, 120, 115, 122, 144, 167, 176, /* 664-671 */ +173, 151, 114, 84, 73, 80, 110, 145, /* 672-679 */ +170, 180, 164, 130, 101, 81, 80, 105, /* 680-687 */ +136, 157, 166, 150, 114, 79, 57, 58, /* 688-695 */ + 91, 137, 178, 206, 201, 166, 123, 78, /* 696-703 */ + 53, 59, 84, 122, 160, 179, 178, 166, /* 704-711 */ +145, 127, 122, 122, 124, 125, 114, 99, /* 712-719 */ + 90, 85, 99, 132, 163, 186, 193, 171, /* 720-727 */ +129, 84, 45, 36, 57, 97, 147, 187, /* 728-735 */ +199, 188, 157, 114, 86, 79, 90, 118, /* 736-743 */ +148, 161, 160, 144, 120, 106, 106, 119, /* 744-751 */ +140, 161, 166, 158, 136, 108, 91, 88, /* 752-759 */ + 98, 119, 139, 146, 144, 130, 114, 107, /* 760-767 */ +111, 125, 144, 154, 147, 128, 99, 71, /* 768-775 */ + 65, 80, 114, 161, 197, 210, 198, 160, /* 776-783 */ +109, 68, 49, 56, 89, 132, 169, 192, /* 784-791 */ +190, 169, 142, 116, 102, 103, 108, 115, /* 792-799 */ +118, 114, 110, 111, 118, 134, 155, 168, /* 800-807 */ +168, 152, 121, 88, 67, 64, 86, 120, /* 808-815 */ +156, 180, 185, 165, 136, 106, 87, 90, /* 816-823 */ +112, 138, 160, 167, 153, 128, 103, 88, /* 824-831 */ + 93, 115, 143, 170, 181, 171, 145, 113, /* 832-839 */ + 86, 76, 84, 102, 127, 146, 151, 147, /* 840-847 */ +138, 127, 125, 129, 133, 134, 126, 109, /* 848-855 */ + 92, 81, 83, 107, 142, 177, 201, 201, /* 856-863 */ +174, 132, 87, 54, 48, 70, 108, 154, /* 864-871 */ +188, 198, 184, 154, 119, 95, 87, 94, /* 872-879 */ +111, 126, 132, 131, 123, 113, 113, 122, /* 880-887 */ +137, 151, 156, 146, 129, 106, 88, 86, /* 888-895 */ + 98, 122, 147, 163, 164, 152, 130, 111, /* 896-903 */ +106, 114, 132, 154, 164, 157, 137, 109, /* 904-911 */ + 86, 80, 94, 126, 162, 188, 194, 178, /* 912-919 */ +142, 101, 71, 59, 70, 99, 132, 159, /* 920-927 */ +172, 167, 153, 135, 122, 116, 118, 119, /* 928-935 */ +117, 112, 105, 102, 109, 127, 153, 176, /* 936-943 */ +188, 181, 156, 119, 84, 64, 66, 90, /* 944-951 */ +127, 162, 185, 186, 165, 134, 105, 86, /* 952-959 */ + 87, 103, 124, 142, 147, 137, 120, 104, /* 960-967 */ + 96, 104, 122, 141, 156, 158, 144, 125, /* 968-975 */ +103, 90, 94, 107, 125, 142, 149, 145, /* 976-983 */ +136, 127, 123, 128, 138, 145, 147, 134, /* 984-991 */ +113, 92, 78, 82, 103, 136, 169, 189, /* 992-999 */ +187, 162, 125, 84, 56, 53, 70, 104, /* 1000-1007 */ +142, 169, 177, 170, 148, 125, 109, 103, /* 1008-1015 */ +106, 114, 120, 123, 121, 118, 120, 130, /* 1016-1023 */ +144, 159, 167, 161, 143, 118, 95, 82, /* 1024-1031 */ + 86, 105, 131, 155, 166, 162, 145, 120, /* 1032-1039 */ +101, 96, 104, 122, 141, 150, 146, 130, /* 1040-1047 */ +108, 93, 90, 103, 128, 155, 173, 175, /* 1048-1055 */ +160, 134, 108, 90, 85, 97, 118, 139, /* 1056-1063 */ +153, 156, 152, 144, 136, 133, 133, 133, /* 1064-1071 */ +128, 119, 104, 93, 90, 101, 124, 152, /* 1072-1079 */ +175, 184, 173, 146, 110, 78, 61, 66, /* 1080-1087 */ + 92, 126, 158, 178, 178, 161, 137, 114, /* 1088-1095 */ +101, 101, 110, 125, 135, 137, 132, 124, /* 1096-1103 */ +119, 122, 132, 143, 153, 154, 144, 127, /* 1104-1111 */ +109, 98, 98, 109, 125, 141, 149, 146, /* 1112-1119 */ +135, 121, 112, 113, 123, 136, 146, 146, /* 1120-1127 */ +134, 114, 96, 85, 89, 111, 140, 167, /* 1128-1135 */ +182, 177, 156, 125, 94, 75, 75, 91, /* 1136-1143 */ +117, 143, 161, 166, 159, 145, 131, 122, /* 1144-1151 */ +118, 117, 117, 114, 109, 106, 108, 116, /* 1152-1159 */ +133, 152, 166, 168, 156, 133, 105, 83, /* 1160-1167 */ + 76, 85, 108, 137, 160, 169, 163, 145, /* 1168-1175 */ +124, 106, 100, 108, 123, 138, 146, 143, /* 1176-1183 */ +131, 117, 107, 107, 118, 135, 151, 160, /* 1184-1191 */ +156, 142, 123, 106, 98, 101, 112, 127, /* 1192-1199 */ +138, 143, 141, 135, 131, 129, 133, 137, /* 1200-1207 */ +139, 133, 121, 105, 94, 92, 103, 125, /* 1208-1215 */ +153, 174, 181, 171, 145, 114, 86, 73, /* 1216-1223 */ + 77, 98, 127, 153, 168, 169, 157, 138, /* 1224-1231 */ +120, 110, 108, 112, 118, 122, 122, 119, /* 1232-1239 */ +118, 121, 129, 140, 149, 152, 145, 129, /* 1240-1247 */ +112, 97, 92, 99, 115, 133, 147, 152, /* 1248-1255 */ +145, 132, 117, 109, 110, 120, 133, 143, /* 1256-1263 */ +145, 135, 119, 103, 95, 99, 115, 137, /* 1264-1271 */ +157, 166, 161, 145, 121, 100, 89, 90, /* 1272-1279 */ +101, 119, 136, 146, 148, 144, 137, 132, /* 1280-1287 */ +129, 127, 125, 120, 113, 105, 100, 103, /* 1288-1295 */ +116, 136, 157, 170, 171, 157, 133, 106, /* 1296-1303 */ + 86, 79, 90, 112, 138, 159, 167, 161, /* 1304-1311 */ +146, 126, 111, 105, 108, 118, 128, 134, /* 1312-1319 */ +132, 127, 119, 116, 120, 129, 139, 146, /* 1320-1327 */ +146, 139, 126, 114, 107, 108, 116, 128, /* 1328-1335 */ +138, 142, 139, 132, 125, 122, 126, 134, /* 1336-1343 */ +141, 144, 139, 127, 110, 98, 95, 105, /* 1344-1351 */ +125, 149, 167, 173, 163, 143, 116, 94, /* 1352-1359 */ + 83, 87, 104, 125, 145, 157, 158, 150, /* 1360-1367 */ +139, 127, 121, 118, 118, 118, 117, 114, /* 1368-1375 */ +114, 117, 126, 139, 151, 158, 156, 144, /* 1376-1383 */ +125, 105, 93, 93, 104, 122, 141, 154, /* 1384-1391 */ +157, 148, 132, 118, 109, 109, 118, 130, /* 1392-1399 */ +138, 140, 134, 123, 112, 107, 110, 122, /* 1400-1407 */ +137, 149, 153, 148, 135, 120, 108, 103, /* 1408-1415 */ +107, 116, 127, 135, 138, 138, 135, 133, /* 1416-1423 */ +133, 135, 136, 134, 126, 114, 103, 98, /* 1424-1431 */ +102, 116, 135, 155, 167, 167, 153, 130, /* 1432-1439 */ +106, 89, 84, 93, 112, 135, 152, 160, /* 1440-1447 */ +156, 144, 130, 119, 113, 115, 119, 124, /* 1448-1455 */ +126, 126, 123, 123, 126, 133, 141, 146, /* 1456-1463 */ +145, 139, 127, 115, 107, 106, 112, 125, /* 1464-1471 */ +136, 143, 143, 135, 126, 118, 116, 120, /* 1472-1479 */ +129, 138, 141, 137, 126, 113, 103, 101, /* 1480-1487 */ +110, 126, 144, 157, 160, 152, 135, 117, /* 1488-1495 */ +102, 96, 100, 111, 125, 137, 144, 145, /* 1496-1503 */ +141, 136, 131, 128, 125, 122, 117, 111, /* 1504-1511 */ +106, 106, 113, 125, 140, 154, 159, 154, /* 1512-1519 */ +139, 120, 101, 91, 91, 104, 122, 140, /* 1520-1527 */ +152, 154, 146, 134, 120, 113, 112, 117, /* 1528-1535 */ +125, 130, 132, 128, 122, 117, 117, 121, /* 1536-1543 */ +129, 138, 142, 141, 133, 123, 114, 110, /* 1544-1551 */ +111, 118, 125, 131, 133, 131, 128, 126, /* 1552-1559 */ +126, 130, 135, 137, 135, 127, 116, 105, /* 1560-1567 */ +100, 105, 117, 135, 151, 161, 160, 148, /* 1568-1575 */ +129, 110, 96, 93, 101, 115, 132, 145, /* 1576-1583 */ +151, 150, 143, 134, 126, 122, 120, 119, /* 1584-1591 */ +119, 117, 117, 118, 122, 131, 140, 147, /* 1592-1599 */ +150, 145, 134, 121, 109, 103, 106, 117, /* 1600-1607 */ +130, 142, 148, 146, 139, 128, 120, 118, /* 1608-1615 */ +121, 128, 135, 139, 135, 128, 119, 113, /* 1616-1623 */ +113, 120, 130, 142, 149, 149, 143, 130, /* 1624-1631 */ +119, 111, 108, 112, 120, 128, 134, 137, /* 1632-1639 */ +137, 136, 135, 135, 134, 132, 127, 120, /* 1640-1647 */ +111, 106, 106, 114, 127, 142, 154, 159, /* 1648-1655 */ +154, 139, 121, 105, 95, 96, 107, 123, /* 1656-1663 */ +138, 148, 151, 145, 136, 126, 118, 116, /* 1664-1671 */ +118, 121, 124, 125, 124, 123, 123, 126, /* 1672-1679 */ +132, 137, 140, 139, 133, 125, 116, 112, /* 1680-1687 */ +113, 118, 126, 133, 136, 135, 130, 125, /* 1688-1695 */ +122, 124, 128, 134, 137, 136, 129, 120, /* 1696-1703 */ +112, 107, 110, 120, 134, 147, 154, 152, /* 1704-1711 */ +142, 128, 114, 104, 102, 108, 118, 130, /* 1712-1719 */ +139, 142, 142, 139, 135, 130, 127, 124, /* 1720-1727 */ +120, 116, 113, 112, 115, 121, 132, 142, /* 1728-1735 */ +150, 151, 143, 131, 116, 105, 101, 106, /* 1736-1743 */ +116, 129, 141, 146, 144, 138, 128, 120, /* 1744-1751 */ +118, 118, 123, 128, 130, 129, 124, 120, /* 1752-1759 */ +117, 119, 124, 131, 138, 140, 138, 131, /* 1760-1767 */ +123, 116, 114, 115, 119, 125, 129, 131, /* 1768-1775 */ +130, 129, 130, 131, 134, 135, 133, 129, /* 1776-1783 */ +121, 113, 107, 107, 114, 125, 139, 150, /* 1784-1791 */ +153, 149, 136, 120, 107, 100, 100, 108, /* 1792-1799 */ +121, 133, 142, 145, 141, 135, 129, 123, /* 1800-1807 */ +120, 119, 120, 119, 119, 119, 122, 126, /* 1808-1815 */ +132, 138, 142, 142, 137, 129, 119, 112, /* 1816-1823 */ +110, 115, 122, 131, 137, 139, 137, 131, /* 1824-1831 */ +125, 120, 121, 125, 131, 134, 133, 128, /* 1832-1839 */ +121, 115, 112, 115, 123, 133, 141, 146, /* 1840-1847 */ +143, 136, 126, 117, 111, 111, 116, 122, /* 1848-1855 */ +130, 135, 137, 138, 137, 136, 135, 132, /* 1856-1863 */ +129, 124, 118, 113, 111, 115, 123, 134, /* 1864-1871 */ +144, 151, 151, 143, 131, 117, 107, 103, /* 1872-1879 */ +107, 118, 130, 140, 145, 145, 138, 131, /* 1880-1887 */ +125, 122, 122, 124, 126, 127, 126, 125, /* 1888-1895 */ +124, 125, 129, 133, 137, 139, 137, 132, /* 1896-1903 */ +126, 120, 118, 118, 122, 127, 131, 132, /* 1904-1911 */ +131, 129, 126, 126, 128, 131, 134, 134, /* 1912-1919 */ +130, 122, 115, 111, 110, 117, 126, 138, /* 1920-1927 */ +146, 149, 145, 134, 123, 112, 107, 108, /* 1928-1935 */ +115, 124, 132, 139, 140, 140, 136, 132, /* 1936-1943 */ +128, 126, 122, 120, 117, 115, 115, 119, /* 1944-1951 */ +126, 134, 141, 144, 142, 134, 125, 115, /* 1952-1959 */ +109, 109, 114, 122, 132, 138, 140, 136, /* 1960-1967 */ +130, 125, 122, 121, 124, 128, 130, 129, /* 1968-1975 */ +127, 123, 119, 119, 121, 127, 134, 138, /* 1976-1983 */ +139, 135, 129, 123, 118, 116, 118, 121, /* 1984-1991 */ +125, 128, 130, 130, 131, 132, 133, 133, /* 1992-1999 */ +133, 130, 125, 118, 113, 111, 114, 122, /* 2000-2007 */ +133, 143, 148, 148, 141, 130, 118, 108, /* 2008-2015 */ +106, 110, 118, 128, 136, 141, 141, 137, /* 2016-2023 */ +131, 126, 123, 121, 121, 121, 121, 120, /* 2024-2031 */ +121, 123, 126, 131, 135, 137, 136, 132, /* 2032-2039 */ +126, 119, 116, 115, 118, 125, 130, 133, /* 2040-2047 */ +133, 130, 127, 124, 124, 126, 130, 132, /* 2048-2055 */ +133, 129, 124, 118, 114, 115, 120, 127, /* 2056-2063 */ +135, 142, 143, 139, 131, 123, 116, 113, /* 2064-2071 */ +113, 118, 124, 129, 133, 135, 135, 134, /* 2072-2079 */ +133, 131, 129, 125, 120, 117, 113, 115, /* 2080-2087 */ +119, 127, 136, 142, 145, 142, 136, 125, /* 2088-2095 */ +116, 110, 110, 115, 124, 132, 138, 140, /* 2096-2103 */ +138, 133, 127, 124, 124, 124, 126, 127, /* 2104-2111 */ +127, 125, 124, 123, 124, 128, 132, 135, /* 2112-2119 */ +135, 134, 130, 125, 122, 120, 121, 123, /* 2120-2127 */ +126, 129, 130, 129, 128, 129, 130, 132, /* 2128-2135 */ +134, 134, 131, 126, 120, 116, 114, 117, /* 2136-2143 */ +123, 133, 141, 145, 144, 138, 129, 120, /* 2144-2151 */ +113, 111, 114, 119, 127, 134, 137, 138, /* 2152-2159 */ +137, 133, 130, 128, 125, 123, 121, 120, /* 2160-2167 */ +119, 120, 124, 130, 136, 140, 141, 137, /* 2168-2175 */ +132, 124, 119, 116, 117, 121, 128, 133, /* 2176-2183 */ +136, 136, 133, 129, 126, 125, 125, 127, /* 2184-2191 */ +130, 129, 128, 124, 121, 119, 120, 124, /* 2192-2199 */ +129, 134, 137, 136, 133, 128, 123, 118, /* 2200-2207 */ +118, 118, 122, 125, 128, 129, 131, 132, /* 2208-2215 */ +132, 133, 133, 130, 126, 121, 117, 114, /* 2216-2223 */ +115, 119, 127, 135, 141, 143, 140, 133, /* 2224-2231 */ +124, 115, 111, 111, 115, 122, 129, 135, /* 2232-2239 */ +136, 135, 132, 128, 125, 123, 123, 123, /* 2240-2247 */ +123, 122, 122, 122, 125, 128, 132, 134, /* 2248-2255 */ +135, 134, 130, 126, 121, 119, 120, 122, /* 2256-2263 */ +126, 129, 130, 130, 128, 126, 125, 127, /* 2264-2271 */ +129, 131, 131, 129, 125, 120, 117, 116, /* 2272-2279 */ +119, 123, 131, 136, 139, 139, 134, 127, /* 2280-2287 */ +120, 116, 115, 117, 121, 125, 130, 133, /* 2288-2295 */ +134, 134, 133, 131, 129, 126, 123, 119, /* 2296-2303 */ +117, 116, 119, 123, 129, 136, 140, 140, /* 2304-2311 */ +136, 129, 121, 116, 114, 115, 120, 126, /* 2312-2319 */ +131, 134, 135, 132, 129, 126, 125, 125, /* 2320-2327 */ +126, 127, 127, 126, 124, 123, 123, 125, /* 2328-2335 */ +128, 132, 134, 134, 132, 129, 125, 123, /* 2336-2343 */ +121, 122, 124, 126, 128, 128, 129, 129, /* 2344-2351 */ +130, 131, 133, 132, 131, 128, 123, 119, /* 2352-2359 */ +117, 117, 122, 128, 135, 140, 141, 139, /* 2360-2367 */ +133, 126, 119, 116, 115, 119, 125, 129, /* 2368-2375 */ +134, 135, 135, 134, 132, 129, 127, 124, /* 2376-2383 */ +123, 122, 121, 121, 123, 127, 130, 134, /* 2384-2391 */ +137, 136, 133, 128, 123, 120, 119, 120, /* 2392-2399 */ +124, 128, 131, 133, 132, 130, 128, 127, /* 2400-2407 */ +127, 129, 130, 131, 129, 127, 123, 121, /* 2408-2415 */ +121, 123, 127, 131, 135, 137, 135, 132, /* 2416-2423 */ +127, 123, 120, 120, 121, 123, 127, 129, /* 2424-2431 */ +130, 132, 133, 133, 133, 131, 128, 124, /* 2432-2439 */ +120, 118, 117, 119, 124, 131, 136, 140, /* 2440-2447 */ +140, 136, 129, 122, 117, 115, 117, 121, /* 2448-2455 */ +126, 131, 133, 135, 132, 131, 128, 126, /* 2456-2463 */ +125, 125, 125, 123, 123, 123, 123, 125, /* 2464-2471 */ +128, 130, 132, 132, 131, 128, 125, 122, /* 2472-2479 */ +122, 121, 124, 125, 127, 128, 127, 127, /* 2480-2487 */ +126, 127, 129, 130, 131, 129, 127, 123, /* 2488-2495 */ +119, 117, 118, 122, 127, 132, 136, 137, /* 2496-2503 */ +135, 130, 124, 119, 117, 117, 119, 123, /* 2504-2511 */ +127, 130, 133, 133, 132, 131, 130, 127, /* 2512-2519 */ +124, 122, 120, 118, 120, 123, 127, 132, /* 2520-2527 */ +135, 137, 136, 132, 127, 121, 118, 118, /* 2528-2535 */ +120, 124, 128, 131, 132, 131, 130, 127, /* 2536-2543 */ +126, 125, 126, 127, 127, 126, 125, 123, /* 2544-2551 */ +122, 123, 125, 128, 131, 132, 132, 131, /* 2552-2559 */ +128, 125, 123, 121, 122, 123, 125, 127, /* 2560-2567 */ +127, 129, 130, 131, 132, 131, 131, 128, /* 2568-2575 */ +125, 122, 118, 118, 120, 124, 131, 135, /* 2576-2583 */ +139, 137, 134, 129, 123, 119, 118, 118, /* 2584-2591 */ +122, 126, 131, 132, 134, 132, 131, 129, /* 2592-2599 */ +128, 126, 125, 123, 122, 122, 123, 125, /* 2600-2607 */ +128, 130, 133, 134, 133, 131, 127, 124, /* 2608-2615 */ +122, 122, 123, 126, 128, 130, 130, 130, /* 2616-2623 */ +128, 127, 127, 128, 130, 130, 130, 127, /* 2624-2631 */ +124, 122, 121, 122, 125, 128, 132, 135, /* 2632-2639 */ +135, 133, 130, 126, 123, 121, 121, 123, /* 2640-2647 */ +125, 128, 130, 131, 133, 133, 133, 131, /* 2648-2655 */ +130, 127, 123, 121, 120, 120, 123, 128, /* 2656-2663 */ +132, 136, 137, 136, 132, 126, 122, 119, /* 2664-2671 */ +118, 121, 125, 129, 132, 132, 132, 131, /* 2672-2679 */ +129, 128, 126, 126, 126, 126, 125, 125, /* 2680-2687 */ +125, 125, 126, 129, 131, 132, 132, 131, /* 2688-2695 */ +128, 126, 125, 123, 124, 124, 126, 126, /* 2696-2703 */ +127, 127, 127, 127, 129, 130, 130, 130, /* 2704-2711 */ +128, 126, 122, 119, 120, 121, 125, 129, /* 2712-2719 */ +134, 136, 135, 132, 128, 123, 120, 119, /* 2720-2727 */ +119, 122, 125, 128, 131, 132, 132, 131, /* 2728-2735 */ +130, 128, 126, 124, 122, 121, 121, 121, /* 2736-2743 */ +124, 128, 131, 133, 133, 132, 128, 124, /* 2744-2751 */ +121, 120, 120, 123, 126, 128, 130, 129, /* 2752-2759 */ +129, 128, 127, 127, 127, 128, 127, 127, /* 2760-2767 */ +126, 125, 123, 122, 124, 126, 128, 131, /* 2768-2775 */ +132, 132, 129, 127, 124, 123, 122, 123, /* 2776-2783 */ +123, 125, 126, 127, 129, 130, 130, 130, /* 2784-2791 */ +130, 128, 126, 123, 121, 120, 120, 123, /* 2792-2799 */ +127, 131, 135, 136, 134, 130, 126, 122, /* 2800-2807 */ +119, 119, 121, 125, 128, 130, 132, 132, /* 2808-2815 */ +131, 129, 128, 126, 126, 125, 124, 123, /* 2816-2823 */ +123, 124, 125, 128, 130, 132, 132, 131, /* 2824-2831 */ +128, 127, 124, 123, 123, 124, 127, 127, /* 2832-2839 */ +129, 128, 128, 127, 128, 128, 129, 130, /* 2840-2847 */ +130, 128, 126, 123, 122, 122, 124, 127, /* 2848-2855 */ +130, 132, 134, 133, 131, 127, 124, 122, /* 2856-2863 */ +122, 122, 124, 125, 128, 130, 131, 132, /* 2864-2871 */ +132, 131, 130, 127, 126, 123, 121, 121, /* 2872-2879 */ +123, 125, 129, 133, 135, 135, 133, 129, /* 2880-2887 */ +125, 122, 121, 122, 123, 127, 129, 131, /* 2888-2895 */ +131, 131, 129, 128, 128, 128, 128, 127, /* 2896-2903 */ +126, 126, 125, 125, 125, 126, 129, 131, /* 2904-2911 */ +131, 131, 130, 128, 126, 125, 124, 124, /* 2912-2919 */ +126, 126, 127, 127, 128, 128, 130, 131, /* 2920-2927 */ +131, 131, 130, 127, 125, 122, 121, 121, /* 2928-2935 */ +124, 128, 131, 134, 135, 133, 130, 126, /* 2936-2943 */ +123, 122, 121, 122, 125, 127, 129, 131, /* 2944-2951 */ +131, 131, 130, 129, 127, 126, 125, 124, /* 2952-2959 */ +122, 122, 124, 126, 129, 132, 132, 132, /* 2960-2967 */ +131, 128, 125, 123, 122, 123, 124, 127, /* 2968-2975 */ +128, 129, 128, 128, 127, 127, 127, 128, /* 2976-2983 */ +128, 127, 127, 125, 123, 123, 123, 124, /* 2984-2991 */ +127, 129, 131, 131, 131, 129, 126, 124, /* 2992-2999 */ +123, 123, 123, 124, 125, 127, 128, 129, /* 3000-3007 */ +130, 130, 130, 129, 127, 125, 122, 121, /* 3008-3015 */ +121, 122, 125, 128, 132, 133, 133, 131, /* 3016-3023 */ +128, 125, 122, 121, 121, 122, 125, 128, /* 3024-3031 */ +129, 129, 129, 129, 128, 126, 126, 125, /* 3032-3039 */ +125, 125, 124, 124, 125, 126, 128, 129, /* 3040-3047 */ +130, 131, 129, 128, 126, 125, 124, 124, /* 3048-3055 */ +126, 126, 126, 127, 127, 127, 127, 128, /* 3056-3063 */ +129, 129, 129, 128, 126, 125, 123, 122, /* 3064-3071 */ +122, 125, 127, 130, 132, 132, 132, 129, /* 3072-3079 */ +126, 124, 123, 122, 123, 125, 127, 128, /* 3080-3087 */ +130, 131, 131, 130, 130, 129, 126, 125, /* 3088-3095 */ +123, 122, 122, 125, 127, 129, 132, 133, /* 3096-3103 */ +132, 130, 128, 125, 123, 122, 123, 125, /* 3104-3111 */ +127, 129, 129, 129, 129, 128, 128, 128, /* 3112-3119 */ +128, 128, 127, 126, 126, 125, 125, 126, /* 3120-3127 */ +128, 129, 131, 131, 131, 129, 128, 127, /* 3128-3135 */ +126, 126, 125, 126, 126, 127, 127, 128, /* 3136-3143 */ +129, 129, 130, 130, 130, 128, 126, 124, /* 3144-3151 */ +122, 122, 124, 126, 129, 132, 133, 133, /* 3152-3159 */ +132, 129, 126, 123, 122, 123, 125, 126, /* 3160-3167 */ +128, 129, 131, 131, 130, 130, 129, 128, /* 3168-3175 */ +126, 125, 124, 124, 125, 126, 128, 129, /* 3176-3183 */ +130, 131, 131, 129, 127, 125, 125, 124, /* 3184-3191 */ +125, 126, 127, 128, 128, 128, 128, 128, /* 3192-3199 */ +128, 128, 129, 129, 127, 126, 125, 125, /* 3200-3207 */ +124, 125, 126, 128, 130, 131, 131, 130, /* 3208-3215 */ +128, 126, 124, 123, 123, 124, 125, 127, /* 3216-3223 */ +127, 128, 129, 129, 130, 129, 129, 126, /* 3224-3231 */ +125, 122, 122, 122, 124, 126, 129, 132, /* 3232-3239 */ +132, 132, 129, 126, 125, 123, 122, 123, /* 3240-3247 */ +125, 126, 128, 129, 129, 129, 128, 128, /* 3248-3255 */ +127, 126, 126, 125, 125, 125, 125, 125, /* 3256-3263 */ +126, 128, 128, 129, 129, 128, 127, 126, /* 3264-3271 */ +125, 124, 124, 125, 126, 126, 127, 127, /* 3272-3279 */ +127, 128, 128, 129, 129, 129, 127, 126, /* 3280-3287 */ +123, 122, 122, 124, 125, 128, 131, 131, /* 3288-3295 */ +131, 129, 127, 125, 123, 123, 123, 124, /* 3296-3303 */ +125, 127, 128, 129, 129, 129, 129, 129, /* 3304-3311 */ +127, 126, 125, 124, 124, 124, 126, 128, /* 3312-3319 */ +129, 131, 131, 130, 128, 126, 125, 124, /* 3320-3327 */ +124, 125, 126, 127, 128, 129, 128, 128, /* 3328-3335 */ +128, 128, 128, 128, 128, 127, 126, 125, /* 3336-3343 */ +125, 125, 126, 127, 128, 129, 130, 129, /* 3344-3351 */ +129, 128, 126, 126, 125, 125, 125, 126, /* 3352-3359 */ +127, 128, 128, 129, 130, 130, 130, 129, /* 3360-3367 */ +127, 126, 124, 124, 124, 125, 128, 130, /* 3368-3375 */ +132, 132, 132, 129, 127, 125, 124, 124, /* 3376-3383 */ +125, 125, 128, 128, 129, 129, 129, 129, /* 3384-3391 */ +129, 128, 128, 126, 125, 125, 125, 126, /* 3392-3399 */ +126, 128, 129, 130, 131, 129, 128, 127, /* 3400-3407 */ +126, 126, 126, 126, 127, 127, 128, 128, /* 3408-3415 */ +128, 128, 128, 128, 129, 129, 129, 127, /* 3416-3423 */ +126, 125, 125, 125, 125, 127, 129, 131, /* 3424-3431 */ +131, 130, 129, 127, 126, 125, 125, 125, /* 3432-3439 */ +125, 126, 127, 128, 129, 129, 130, 130, /* 3440-3447 */ +129, 127, 126, 125, 124, 124, 124, 126, /* 3448-3455 */ +128, 129, 131, 131, 129, 128, 126, 125, /* 3456-3463 */ +124, 124, 125, 126, 127, 128, 128, 128, /* 3464-3471 */ +128, 128, 128, 128, 126, 126, 126, 125, /* 3472-3479 */ +125, 125, 126, 126, 128, 129, 129, 129, /* 3480-3487 */ +128, 128, 126, 126, 126, 126, 126, 126, /* 3488-3495 */ +126, 127, 127, 128, 128, 129, 129, 129, /* 3496-3503 */ +127, 126, 125, 123, 123, 124, 125, 127, /* 3504-3511 */ +129, 130, 130, 130, 128, 126, 125, 123, /* 3512-3519 */ +123, 124, 125, 126, 128, 128, 129, 129, /* 3520-3527 */ +129, 129, 128, 126, 125, 125, 124, 124, /* 3528-3535 */ +125, 126, 128, 129, 129, 129, 128, 127, /* 3536-3543 */ +125, 125, 125, 125, 125, 126, 126, 128, /* 3544-3551 */ +128, 128, 127, 128, 128, 128, 128, 127, /* 3552-3559 */ +126, 126, 125, 125, 125, 126, 128, 128, /* 3560-3567 */ +129, 129, 129, 128, 127, 126, 126, 125, /* 3568-3575 */ +125, 125, 126, 127, 128, 128, 129, 129, /* 3576-3583 */ +129, 129, 127, 126, 125, 124, 124, 125, /* 3584-3591 */ +126, 128, 129, 131, 130, 129, 128, 126, /* 3592-3599 */ +125, 125, 125, 125, 126, 128, 128, 129, /* 3600-3607 */ +129, 129, 129, 128, 128, 128, 126, 126, /* 3608-3615 */ +125, 125, 126, 126, 128, 129, 129, 129, /* 3616-3623 */ +129, 128, 126, 126, 126, 126, 126, 127, /* 3624-3631 */ +127, 128, 128, 128, 128, 128, 129, 129, /* 3632-3639 */ +129, 129, 127, 126, 125, 125, 125, 127, /* 3640-3647 */ +128, 129, 130, 130, 130, 129, 127, 126, /* 3648-3655 */ +125, 125, 125, 126, 126, 128, 128, 129, /* 3656-3663 */ +129, 129, 129, 128, 127, 126, 125, 125, /* 3664-3671 */ +125, 125, 128, 129, 130, 130, 130, 129, /* 3672-3679 */ +128, 126, 125, 125, 125, 126, 126, 128, /* 3680-3687 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 3688-3695 */ +126, 126, 126, 125, 126, 126, 127, 128, /* 3696-3703 */ +128, 129, 129, 128, 128, 126, 126, 126, /* 3704-3711 */ +126, 126, 126, 126, 127, 127, 128, 128, /* 3712-3719 */ +129, 129, 129, 127, 126, 125, 124, 124, /* 3720-3727 */ +125, 126, 128, 129, 130, 129, 129, 128, /* 3728-3735 */ +126, 125, 125, 125, 125, 126, 126, 128, /* 3736-3743 */ +128, 128, 128, 128, 128, 126, 126, 125, /* 3744-3751 */ +125, 125, 125, 126, 126, 128, 129, 129, /* 3752-3759 */ +129, 128, 126, 126, 125, 125, 126, 126, /* 3760-3767 */ +126, 126, 127, 127, 127, 127, 128, 128, /* 3768-3775 */ +128, 127, 126, 126, 125, 125, 125, 125, /* 3776-3783 */ +126, 128, 128, 129, 129, 128, 127, 126, /* 3784-3791 */ +126, 125, 125, 125, 125, 126, 127, 128, /* 3792-3799 */ +128, 129, 129, 129, 128, 126, 125, 125, /* 3800-3807 */ +124, 124, 125, 127, 128, 129, 129, 129, /* 3808-3815 */ +128, 126, 126, 125, 125, 125, 126, 126, /* 3816-3823 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 3824-3831 */ +126, 126, 126, 126, 126, 126, 126, 128, /* 3832-3839 */ +128, 129, 128, 128, 128, 126, 126, 126, /* 3840-3847 */ +126, 126, 126, 126, 127, 127, 128, 128, /* 3848-3855 */ +128, 129, 129, 129, 127, 126, 125, 125, /* 3856-3863 */ +125, 125, 127, 128, 129, 129, 129, 129, /* 3864-3871 */ +128, 126, 126, 125, 125, 125, 126, 128, /* 3872-3879 */ +128, 129, 129, 129, 129, 129, 128, 126, /* 3880-3887 */ +126, 125, 125, 126, 126, 128, 129, 129, /* 3888-3895 */ +129, 129, 128, 128, 126, 126, 126, 126, /* 3896-3903 */ +126, 127, 128, 128, 128, 128, 128, 128, /* 3904-3911 */ +128, 128, 128, 127, 126, 126, 126, 126, /* 3912-3919 */ +126, 128, 128, 129, 129, 129, 128, 128, /* 3920-3927 */ +127, 126, 126, 126, 126, 126, 127, 127, /* 3928-3935 */ +128, 128, 129, 129, 129, 128, 127, 126, /* 3936-3943 */ +125, 125, 125, 126, 127, 128, 129, 129, /* 3944-3951 */ +129, 129, 127, 126, 125, 125, 125, 126, /* 3952-3959 */ +126, 128, 128, 128, 129, 129, 128, 128, /* 3960-3967 */ +126, 126, 126, 125, 125, 126, 126, 128, /* 3968-3975 */ +128, 128, 128, 128, 128, 126, 126, 126, /* 3976-3983 */ +126, 126, 126, 126, 126, 127, 127, 127, /* 3984-3991 */ +128, 128, 128, 128, 127, 126, 126, 125, /* 3992-3999 */ +125, 125, 126, 127, 128, 128, 129, 128, /* 4000-4007 */ +128, 127, 126, 126, 125, 125, 125, 126, /* 4008-4015 */ +126, 127, 128, 128, 128, 128, 128, 127, /* 4016-4023 */ +126, 125, 125, 125, 125, 126, 128, 128, /* 4024-4031 */ +129, 129, 128, 128, 126, 125, 125, 125, /* 4032-4039 */ +125, 126, 126, 127, 128, 128, 128, 128, /* 4040-4047 */ +128, 128, 126, 126, 126, 126, 126, 126, /* 4048-4055 */ +126, 126, 128, 128, 128, 128, 128, 128, /* 4056-4063 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 4064-4071 */ +127, 128, 128, 128, 129, 128, 128, 126, /* 4072-4079 */ +126, 125, 125, 125, 126, 128, 128, 129, /* 4080-4087 */ +129, 129, 128, 127, 126, 126, 125, 125, /* 4088-4095 */ +126, 126, 128, 128, 128, 129, 129, 128, /* 4096-4103 */ +128, 127, 126, 126, 125, 125, 126, 127, /* 4104-4111 */ +128, 129, 129, 129, 128, 128, 126, 126, /* 4112-4119 */ +126, 126, 126, 126, 128, 128, 128, 128, /* 4120-4127 */ +128, 128, 128, 128, 128, 128, 126, 126, /* 4128-4135 */ +126, 126, 126, 127, 128, 128, 129, 129, /* 4136-4143 */ +129, 128, 127, 127, 126, 126, 126, 126, /* 4144-4151 */ +126, 127, 128, 128, 129, 129, 129, 129, /* 4152-4159 */ +128, 126, 126, 125, 125, 126, 127, 128, /* 4160-4167 */ +129, 129, 129, 129, 128, 126, 126, 126, /* 4168-4175 */ +126, 126, 126, 128, 128, 128, 128, 128, /* 4176-4183 */ +128, 128, 128, 128, 126, 126, 126, 126, /* 4184-4191 */ +126, 126, 128, 128, 128, 128, 128, 128, /* 4192-4199 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 4200-4207 */ +127, 128, 128, 128, 128, 128, 128, 127, /* 4208-4215 */ +126, 126, 126, 125, 126, 127, 128, 128, /* 4216-4223 */ +128, 129, 128, 128, 126, 126, 126, 125, /* 4224-4231 */ +125, 126, 126, 127, 128, 128, 128, 128, /* 4232-4239 */ +128, 128, 126, 126, 125, 125, 125, 126, /* 4240-4247 */ +126, 128, 128, 129, 128, 128, 127, 126, /* 4248-4255 */ +126, 125, 126, 126, 126, 126, 127, 128, /* 4256-4263 */ +128, 128, 128, 128, 128, 126, 126, 126, /* 4264-4271 */ +126, 126, 126, 126, 127, 128, 128, 128, /* 4272-4279 */ +128, 128, 126, 126, 126, 126, 126, 126, /* 4280-4287 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 4288-4295 */ +128, 127, 126, 125, 125, 125, 125, 127, /* 4296-4303 */ +128, 128, 129, 129, 128, 127, 126, 126, /* 4304-4311 */ +126, 126, 126, 126, 126, 128, 128, 128, /* 4312-4319 */ +128, 128, 128, 128, 126, 126, 126, 125, /* 4320-4327 */ +126, 126, 127, 128, 128, 128, 128, 128, /* 4328-4335 */ +127, 126, 126, 126, 126, 126, 126, 127, /* 4336-4343 */ +127, 128, 128, 128, 128, 128, 128, 128, /* 4344-4351 */ +127, 126, 126, 126, 126, 126, 127, 128, /* 4352-4359 */ +128, 128, 128, 128, 128, 127, 126}; /* 4360-4366 */ + + +//get and set the frequency from wav conversion tool GUI +int d=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaD() +{ + + speaker = data_d[d]/255.0;//scale to 0.0 to 1.0 for PWM + d++; + if (d>= NUM_ELEMENTS) { + d = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/marimbaLowC.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,914 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:38:30 PM +* FileName: marimbaLowC_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 7068 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 7068 + +const unsigned char data_c[NUM_ELEMENTS] = { +128, 128, 126, 128, 127, 128, 126, 128, /* 0-7 */ +126, 128, 126, 128, 126, 128, 126, 127, /* 8-15 */ +127, 127, 127, 127, 128, 127, 128, 127, /* 16-23 */ +127, 127, 127, 127, 127, 127, 128, 126, /* 24-31 */ +128, 126, 128, 126, 127, 126, 127, 126, /* 32-39 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 40-47 */ +126, 126, 126, 126, 126, 126, 127, 128, /* 48-55 */ +127, 128, 127, 128, 127, 128, 128, 127, /* 56-63 */ +128, 127, 128, 127, 128, 128, 128, 128, /* 64-71 */ +128, 128, 127, 128, 127, 127, 127, 128, /* 72-79 */ +127, 128, 126, 128, 126, 127, 127, 127, /* 80-87 */ +127, 127, 126, 127, 126, 127, 126, 126, /* 88-95 */ +127, 126, 127, 126, 127, 126, 128, 126, /* 96-103 */ +128, 126, 128, 126, 128, 126, 128, 128, /* 104-111 */ +128, 128, 128, 128, 128, 128, 127, 128, /* 112-119 */ +127, 128, 126, 128, 126, 128, 126, 128, /* 120-127 */ +126, 128, 126, 128, 126, 128, 126, 128, /* 128-135 */ +126, 129, 129, 143, 184, 152, 78, 83, /* 136-143 */ +102, 98, 116, 89, 128, 145, 154, 130, /* 144-151 */ +211, 191, 11, 127, 136, 133, 162, 66, /* 152-159 */ +157, 182, 88, 123, 72, 159, 202, 75, /* 160-167 */ +114, 43, 107, 246, 108, 117, 84, 12, /* 168-175 */ +217, 205, 122, 152, 71, 172, 25, 226, /* 176-183 */ +161, 17, 93, 145, 63, 135, 247, 255, /* 184-191 */ +190, 101, 113, 78, 20, 152, 183, 171, /* 192-199 */ +118, 115, 250, 236, 226, 242, 69, 55, /* 200-207 */ +166, 184, 173, 94, 45, 74, 43, 33, /* 208-215 */ + 50, 13, 71, 150, 148, 86, 50, 169, /* 216-223 */ + 9, 237, 10, 217, 144, 208, 214, 202, /* 224-231 */ +145, 63, 86, 68, 83, 91, 8, 23, /* 232-239 */ + 30, 67, 128, 85, 126, 155, 138, 172, /* 240-247 */ +141, 174, 202, 198, 230, 164, 119, 96, /* 248-255 */ + 83, 154, 146, 109, 111, 79, 100, 145, /* 256-263 */ +129, 102, 114, 143, 158, 145, 151, 143, /* 264-271 */ +100, 123, 137, 110, 94, 88, 104, 91, /* 272-279 */ + 68, 93, 98, 115, 165, 170, 144, 96, /* 280-287 */ +105, 172, 191, 198, 190, 131, 111, 127, /* 288-295 */ +127, 136, 122, 132, 130, 111, 133, 113, /* 296-303 */ +116, 132, 127, 139, 110, 92, 114, 106, /* 304-311 */ +113, 97, 66, 72, 91, 135, 136, 111, /* 312-319 */ +110, 113, 157, 220, 232, 210, 181, 160, /* 320-327 */ +171, 179, 156, 132, 102, 80, 54, 25, /* 328-335 */ + 9, 254, 23, 52, 47, 63, 100, 136, /* 336-343 */ +196, 217, 208, 202, 219, 15, 24, 250, /* 344-351 */ +203, 152, 135, 134, 121, 93, 46, 22, /* 352-359 */ + 8, 1, 14, 43, 91, 119, 126, 132, /* 360-367 */ +130, 148, 198, 232, 220, 185, 156, 140, /* 368-375 */ +143, 137, 117, 89, 61, 77, 92, 97, /* 376-383 */ +106, 104, 123, 140, 164, 196, 192, 195, /* 384-391 */ +201, 172, 158, 141, 130, 138, 119, 96, /* 392-399 */ + 60, 25, 33, 63, 101, 114, 90, 88, /* 400-407 */ +103, 139, 192, 204, 201, 198, 194, 202, /* 408-415 */ +184, 162, 145, 134, 136, 112, 97, 91, /* 416-423 */ + 76, 81, 76, 58, 64, 83, 111, 124, /* 424-431 */ +105, 89, 80, 96, 136, 157, 163, 138, /* 432-439 */ +116, 144, 155, 174, 195, 191, 202, 194, /* 440-447 */ +194, 188, 161, 173, 161, 123, 109, 63, /* 448-455 */ + 46, 38, 20, 21, 239, 245, 29, 57, /* 456-463 */ + 90, 91, 100, 136, 162, 226, 17, 7, /* 464-471 */ +251, 233, 224, 217, 201, 187, 152, 104, /* 472-479 */ + 81, 49, 24, 28, 38, 60, 53, 53, /* 480-487 */ + 77, 93, 132, 178, 180, 169, 166, 188, /* 488-495 */ +206, 177, 153, 120, 79, 93, 108, 105, /* 496-503 */ + 89, 59, 77, 86, 91, 147, 172, 187, /* 504-511 */ +203, 198, 193, 171, 190, 219, 182, 154, /* 512-519 */ +110, 67, 64, 59, 72, 49, 21, 41, /* 520-527 */ + 65, 89, 111, 129, 145, 156, 191, 233, /* 528-535 */ +229, 215, 213, 185, 163, 160, 148, 138, /* 536-543 */ +115, 91, 68, 27, 29, 62, 81, 89, /* 544-551 */ + 75, 71, 78, 90, 136, 163, 146, 145, /* 552-559 */ +145, 151, 160, 168, 185, 168, 159, 177, /* 560-567 */ +173, 170, 176, 173, 169, 144, 138, 133, /* 568-575 */ +114, 112, 86, 51, 18, 8, 36, 46, /* 576-583 */ + 48, 51, 36, 50, 91, 140, 175, 182, /* 584-591 */ +207, 225, 220, 229, 239, 230, 211, 192, /* 592-599 */ +163, 120, 92, 88, 78, 55, 43, 34, /* 600-607 */ + 36, 63, 95, 112, 110, 118, 153, 182, /* 608-615 */ +193, 196, 178, 154, 140, 134, 130, 109, /* 616-623 */ + 98, 92, 72, 61, 64, 83, 111, 132, /* 624-631 */ +157, 165, 165, 192, 212, 219, 210, 191, /* 632-639 */ +168, 139, 131, 120, 86, 55, 33, 30, /* 640-647 */ + 31, 36, 54, 62, 70, 103, 143, 170, /* 648-655 */ +196, 228, 240, 226, 221, 222, 210, 201, /* 656-663 */ +195, 164, 119, 86, 72, 69, 56, 52, /* 664-671 */ + 50, 35, 47, 78, 96, 105, 112, 133, /* 672-679 */ +146, 154, 177, 180, 171, 175, 174, 175, /* 680-687 */ +170, 172, 179, 160, 146, 143, 136, 140, /* 688-695 */ +143, 144, 123, 84, 78, 74, 66, 70, /* 696-703 */ + 62, 55, 49, 51, 71, 80, 96, 121, /* 704-711 */ +138, 157, 175, 200, 214, 211, 216, 214, /* 712-719 */ +193, 182, 174, 154, 125, 98, 82, 64, /* 720-727 */ + 54, 66, 67, 59, 60, 70, 94, 118, /* 728-735 */ +143, 162, 156, 157, 163, 157, 152, 145, /* 736-743 */ +140, 122, 101, 94, 85, 80, 87, 96, /* 744-751 */ + 99, 104, 126, 158, 174, 186, 197, 192, /* 752-759 */ +188, 192, 187, 168, 136, 111, 87, 61, /* 760-767 */ + 53, 46, 37, 28, 27, 41, 55, 85, /* 768-775 */ +132, 163, 181, 198, 215, 225, 235, 249, /* 776-783 */ +240, 209, 186, 167, 142, 119, 97, 71, /* 784-791 */ + 46, 27, 32, 37, 37, 56, 70, 81, /* 792-799 */ + 95, 117, 144, 159, 174, 182, 174, 173, /* 800-807 */ +181, 192, 189, 173, 160, 147, 138, 144, /* 808-815 */ +150, 142, 129, 121, 116, 107, 104, 105, /* 816-823 */ + 94, 85, 82, 79, 79, 81, 89, 96, /* 824-831 */ + 97, 107, 124, 141, 158, 174, 187, 184, /* 832-839 */ +182, 191, 192, 185, 173, 150, 125, 107, /* 840-847 */ +104, 100, 86, 73, 68, 63, 68, 83, /* 848-855 */ + 99, 113, 125, 139, 147, 148, 157, 161, /* 856-863 */ +157, 148, 136, 126, 115, 113, 114, 101, /* 864-871 */ + 92, 93, 103, 122, 138, 152, 159, 164, /* 872-879 */ +176, 187, 189, 182, 171, 154, 130, 108, /* 880-887 */ + 91, 72, 55, 45, 31, 19, 20, 38, /* 888-895 */ + 64, 88, 113, 136, 160, 189, 218, 240, /* 896-903 */ +244, 237, 231, 222, 208, 192, 166, 131, /* 904-911 */ + 99, 75, 56, 41, 36, 35, 34, 38, /* 912-919 */ + 54, 71, 93, 117, 140, 152, 158, 169, /* 920-927 */ +183, 192, 196, 190, 179, 167, 160, 158, /* 928-935 */ +148, 137, 132, 124, 121, 120, 119, 115, /* 936-943 */ +108, 107, 104, 100, 102, 105, 105, 101, /* 944-951 */ + 97, 97, 100, 111, 126, 134, 136, 142, /* 952-959 */ +153, 164, 174, 181, 178, 166, 160, 154, /* 960-967 */ +146, 138, 127, 115, 102, 92, 88, 86, /* 968-975 */ + 86, 92, 99, 102, 109, 122, 136, 142, /* 976-983 */ +143, 141, 137, 135, 140, 138, 129, 116, /* 984-991 */ +109, 107, 107, 113, 120, 124, 130, 139, /* 992-999 */ +152, 162, 171, 181, 182, 173, 161, 147, /* 1000-1007 */ +133, 120, 106, 83, 58, 42, 35, 34, /* 1008-1015 */ + 37, 43, 53, 70, 97, 130, 159, 184, /* 1016-1023 */ +202, 217, 230, 235, 237, 231, 214, 195, /* 1024-1031 */ +169, 138, 110, 87, 69, 51, 33, 21, /* 1032-1039 */ + 18, 28, 48, 67, 83, 98, 115, 139, /* 1040-1047 */ +159, 174, 185, 187, 188, 188, 183, 176, /* 1048-1055 */ +164, 154, 143, 131, 125, 121, 119, 119, /* 1056-1063 */ +116, 113, 108, 108, 115, 118, 119, 113, /* 1064-1071 */ +106, 103, 104, 110, 112, 109, 108, 110, /* 1072-1079 */ +117, 130, 139, 148, 155, 160, 164, 164, /* 1080-1087 */ +164, 163, 158, 154, 144, 134, 125, 118, /* 1088-1095 */ +113, 108, 98, 93, 94, 102, 112, 117, /* 1096-1103 */ +118, 120, 122, 130, 135, 136, 134, 127, /* 1104-1111 */ +124, 122, 120, 120, 119, 123, 125, 128, /* 1112-1119 */ +133, 140, 153, 165, 171, 176, 172, 166, /* 1120-1127 */ +164, 157, 144, 125, 105, 88, 73, 63, /* 1128-1135 */ + 53, 39, 34, 40, 53, 73, 94, 118, /* 1136-1143 */ +140, 164, 187, 206, 221, 231, 233, 227, /* 1144-1151 */ +212, 193, 173, 152, 129, 104, 75, 51, /* 1152-1159 */ + 36, 29, 30, 35, 41, 53, 71, 95, /* 1160-1167 */ +117, 135, 152, 166, 178, 188, 192, 192, /* 1168-1175 */ +186, 176, 166, 153, 140, 132, 125, 121, /* 1176-1183 */ +116, 110, 107, 109, 116, 121, 121, 119, /* 1184-1191 */ +116, 118, 121, 121, 118, 113, 108, 106, /* 1192-1199 */ +106, 108, 109, 115, 122, 129, 136, 144, /* 1200-1207 */ +151, 159, 163, 165, 163, 160, 159, 157, /* 1208-1215 */ +153, 142, 130, 119, 112, 111, 108, 104, /* 1216-1223 */ +100, 99, 104, 110, 114, 117, 118, 120, /* 1224-1231 */ +122, 123, 122, 123, 126, 129, 128, 128, /* 1232-1239 */ +129, 135, 143, 149, 153, 157, 163, 169, /* 1240-1247 */ +174, 172, 164, 152, 140, 129, 118, 103, /* 1248-1255 */ + 85, 70, 59, 50, 46, 49, 56, 68, /* 1256-1263 */ + 85, 104, 125, 146, 171, 193, 208, 218, /* 1264-1271 */ +219, 216, 210, 201, 186, 162, 135, 110, /* 1272-1279 */ + 89, 70, 54, 40, 32, 32, 41, 55, /* 1280-1287 */ + 71, 89, 109, 128, 145, 160, 173, 184, /* 1288-1295 */ +189, 190, 183, 172, 162, 152, 142, 132, /* 1296-1303 */ +119, 107, 100, 101, 105, 108, 111, 113, /* 1304-1311 */ +115, 122, 126, 130, 129, 126, 125, 121, /* 1312-1319 */ +117, 112, 108, 107, 105, 105, 108, 113, /* 1320-1327 */ +123, 135, 143, 148, 152, 158, 166, 171, /* 1328-1335 */ +172, 167, 160, 152, 145, 138, 129, 118, /* 1336-1343 */ +108, 100, 95, 94, 93, 95, 98, 101, /* 1344-1351 */ +104, 107, 110, 116, 121, 125, 128, 130, /* 1352-1359 */ +133, 137, 142, 146, 145, 147, 151, 158, /* 1360-1367 */ +166, 168, 166, 161, 157, 153, 145, 134, /* 1368-1375 */ +123, 109, 95, 82, 70, 63, 60, 61, /* 1376-1383 */ + 65, 70, 81, 98, 119, 141, 161, 178, /* 1384-1391 */ +191, 202, 212, 215, 210, 197, 183, 166, /* 1392-1399 */ +147, 127, 106, 83, 64, 51, 44, 44, /* 1400-1407 */ + 48, 58, 71, 86, 104, 122, 140, 157, /* 1408-1415 */ +172, 181, 184, 183, 180, 176, 167, 156, /* 1416-1423 */ +142, 126, 116, 108, 104, 101, 100, 103, /* 1424-1431 */ +107, 115, 121, 127, 131, 135, 138, 137, /* 1432-1439 */ +134, 131, 127, 121, 114, 105, 99, 98, /* 1440-1447 */ +100, 106, 110, 115, 123, 132, 143, 155, /* 1448-1455 */ +162, 167, 168, 170, 171, 166, 160, 150, /* 1456-1463 */ +138, 128, 117, 107, 98, 92, 89, 86, /* 1464-1471 */ + 86, 89, 95, 101, 106, 111, 117, 121, /* 1472-1479 */ +129, 140, 146, 148, 149, 150, 153, 156, /* 1480-1487 */ +160, 161, 160, 160, 159, 156, 153, 148, /* 1488-1495 */ +141, 131, 120, 110, 98, 89, 81, 76, /* 1496-1503 */ + 70, 68, 69, 75, 86, 100, 114, 128, /* 1504-1511 */ +145, 164, 181, 194, 199, 201, 198, 193, /* 1512-1519 */ +185, 173, 156, 137, 116, 97, 78, 65, /* 1520-1527 */ + 57, 54, 56, 60, 68, 80, 97, 116, /* 1528-1535 */ +133, 146, 158, 167, 174, 178, 179, 173, /* 1536-1543 */ +162, 151, 141, 130, 120, 111, 102, 97, /* 1544-1551 */ + 97, 101, 106, 112, 119, 126, 130, 134, /* 1552-1559 */ +137, 140, 141, 137, 130, 120, 112, 106, /* 1560-1567 */ +101, 97, 94, 93, 95, 103, 113, 124, /* 1568-1575 */ +134, 144, 155, 165, 172, 176, 177, 175, /* 1576-1583 */ +170, 161, 150, 138, 127, 114, 102, 90, /* 1584-1591 */ + 82, 79, 78, 81, 85, 89, 93, 101, /* 1592-1599 */ +111, 123, 133, 142, 148, 152, 156, 160, /* 1600-1607 */ +161, 162, 161, 160, 157, 155, 153, 150, /* 1608-1615 */ +145, 141, 133, 125, 117, 111, 105, 97, /* 1616-1623 */ + 89, 82, 79, 80, 83, 85, 90, 98, /* 1624-1631 */ +110, 125, 140, 156, 169, 178, 186, 190, /* 1632-1639 */ +192, 189, 184, 174, 161, 144, 127, 110, /* 1640-1647 */ + 96, 83, 73, 65, 63, 65, 73, 84, /* 1648-1655 */ + 96, 109, 122, 138, 150, 162, 169, 171, /* 1656-1663 */ +171, 168, 164, 156, 146, 136, 124, 115, /* 1664-1671 */ +107, 102, 102, 106, 110, 116, 120, 126, /* 1672-1679 */ +133, 139, 144, 146, 144, 140, 134, 128, /* 1680-1687 */ +120, 112, 102, 95, 91, 91, 92, 97, /* 1688-1695 */ +103, 113, 123, 136, 148, 160, 169, 176, /* 1696-1703 */ +179, 178, 175, 170, 163, 151, 136, 120, /* 1704-1711 */ +105, 94, 86, 80, 76, 73, 74, 79, /* 1712-1719 */ + 87, 97, 106, 117, 128, 139, 149, 156, /* 1720-1727 */ +162, 165, 166, 165, 164, 161, 158, 154, /* 1728-1735 */ +150, 144, 137, 132, 128, 123, 117, 111, /* 1736-1743 */ +103, 98, 94, 91, 90, 89, 89, 90, /* 1744-1751 */ + 95, 102, 111, 122, 133, 146, 157, 166, /* 1752-1759 */ +174, 180, 183, 183, 179, 172, 162, 151, /* 1760-1767 */ +139, 125, 110, 96, 86, 79, 75, 74, /* 1768-1775 */ + 77, 81, 89, 101, 114, 128, 139, 148, /* 1776-1783 */ +155, 160, 163, 163, 161, 156, 149, 139, /* 1784-1791 */ +128, 121, 115, 111, 109, 109, 111, 116, /* 1792-1799 */ +121, 128, 134, 139, 142, 143, 143, 142, /* 1800-1807 */ +137, 130, 121, 112, 104, 96, 90, 86, /* 1808-1815 */ + 86, 88, 94, 103, 114, 127, 141, 154, /* 1816-1823 */ +163, 170, 176, 180, 181, 178, 169, 157, /* 1824-1831 */ +143, 129, 114, 101, 89, 79, 72, 69, /* 1832-1839 */ + 70, 73, 79, 88, 98, 110, 123, 136, /* 1840-1847 */ +147, 156, 163, 167, 168, 168, 167, 165, /* 1848-1855 */ +159, 151, 144, 137, 133, 128, 123, 117, /* 1856-1863 */ +111, 106, 103, 100, 98, 97, 97, 97, /* 1864-1871 */ + 98, 100, 103, 108, 114, 122, 130, 138, /* 1872-1879 */ +148, 156, 163, 168, 171, 172, 171, 169, /* 1880-1887 */ +163, 155, 144, 132, 120, 110, 102, 93, /* 1888-1895 */ + 87, 83, 83, 86, 92, 101, 110, 121, /* 1896-1903 */ +130, 139, 145, 152, 156, 159, 158, 153, /* 1904-1911 */ +148, 142, 135, 129, 122, 117, 114, 113, /* 1912-1919 */ +116, 120, 124, 129, 133, 139, 142, 145, /* 1920-1927 */ +146, 144, 140, 133, 125, 117, 109, 101, /* 1928-1935 */ + 95, 89, 86, 86, 91, 99, 110, 122, /* 1936-1943 */ +134, 146, 158, 169, 177, 182, 183, 180, /* 1944-1951 */ +176, 167, 155, 140, 124, 109, 95, 83, /* 1952-1959 */ + 76, 70, 68, 70, 74, 81, 93, 105, /* 1960-1967 */ +118, 131, 143, 153, 161, 168, 172, 173, /* 1968-1975 */ +170, 166, 159, 152, 145, 138, 131, 125, /* 1976-1983 */ +118, 114, 110, 107, 104, 103, 102, 102, /* 1984-1991 */ +103, 105, 106, 107, 110, 112, 116, 120, /* 1992-1999 */ +126, 132, 139, 144, 149, 153, 158, 162, /* 2000-2007 */ +162, 161, 157, 152, 145, 139, 130, 122, /* 2008-2015 */ +113, 105, 98, 93, 91, 92, 95, 98, /* 2016-2023 */ +105, 112, 120, 128, 135, 141, 145, 148, /* 2024-2031 */ +149, 149, 147, 144, 138, 132, 127, 124, /* 2032-2039 */ +122, 120, 121, 123, 124, 129, 133, 137, /* 2040-2047 */ +141, 142, 143, 141, 137, 132, 126, 119, /* 2048-2055 */ +111, 104, 95, 90, 87, 87, 90, 96, /* 2056-2063 */ +105, 115, 128, 141, 153, 163, 172, 178, /* 2064-2071 */ +181, 181, 178, 170, 160, 145, 130, 115, /* 2072-2079 */ +102, 89, 79, 73, 68, 67, 71, 78, /* 2080-2087 */ + 88, 100, 113, 125, 138, 150, 161, 167, /* 2088-2095 */ +171, 172, 171, 167, 161, 154, 145, 136, /* 2096-2103 */ +128, 121, 115, 110, 106, 104, 102, 102, /* 2104-2111 */ +102, 104, 107, 110, 111, 112, 114, 117, /* 2112-2119 */ +119, 122, 126, 129, 133, 136, 140, 145, /* 2120-2127 */ +149, 151, 153, 153, 153, 150, 147, 142, /* 2128-2135 */ +137, 130, 123, 116, 110, 105, 101, 98, /* 2136-2143 */ + 98, 100, 103, 109, 114, 121, 126, 131, /* 2144-2151 */ +136, 141, 144, 146, 145, 143, 140, 136, /* 2152-2159 */ +133, 131, 128, 126, 126, 126, 127, 130, /* 2160-2167 */ +133, 136, 139, 141, 141, 140, 137, 134, /* 2168-2175 */ +128, 122, 115, 108, 102, 96, 92, 90, /* 2176-2183 */ + 91, 96, 103, 113, 124, 135, 147, 158, /* 2184-2191 */ +167, 176, 180, 181, 179, 174, 165, 153, /* 2192-2199 */ +139, 126, 112, 98, 86, 77, 72, 70, /* 2200-2207 */ + 72, 76, 85, 95, 107, 121, 134, 146, /* 2208-2215 */ +156, 164, 170, 173, 172, 169, 164, 156, /* 2216-2223 */ +147, 138, 130, 122, 116, 110, 106, 103, /* 2224-2231 */ +102, 103, 105, 108, 111, 113, 116, 118, /* 2232-2239 */ +121, 123, 124, 125, 126, 128, 130, 132, /* 2240-2247 */ +134, 136, 140, 142, 144, 146, 147, 147, /* 2248-2255 */ +145, 143, 140, 136, 132, 126, 121, 114, /* 2256-2263 */ +109, 105, 103, 103, 103, 105, 107, 111, /* 2264-2271 */ +116, 121, 126, 131, 135, 138, 140, 141, /* 2272-2279 */ +141, 139, 137, 136, 134, 132, 130, 130, /* 2280-2287 */ +130, 132, 133, 134, 135, 137, 137, 135, /* 2288-2295 */ +133, 129, 124, 120, 115, 109, 103, 98, /* 2296-2303 */ + 94, 93, 94, 97, 103, 112, 121, 131, /* 2304-2311 */ +142, 153, 162, 170, 175, 178, 177, 173, /* 2312-2319 */ +166, 156, 144, 131, 117, 103, 91, 82, /* 2320-2327 */ + 75, 72, 70, 74, 82, 92, 103, 115, /* 2328-2335 */ +127, 140, 151, 160, 167, 171, 172, 170, /* 2336-2343 */ +164, 157, 150, 141, 132, 124, 116, 110, /* 2344-2351 */ +106, 104, 102, 103, 105, 108, 112, 116, /* 2352-2359 */ +119, 122, 124, 126, 127, 127, 127, 128, /* 2360-2367 */ +127, 127, 128, 130, 132, 134, 136, 139, /* 2368-2375 */ +141, 142, 143, 143, 144, 142, 140, 135, /* 2376-2383 */ +130, 125, 120, 115, 111, 108, 105, 105, /* 2384-2391 */ +106, 107, 110, 113, 118, 123, 127, 132, /* 2392-2399 */ +135, 138, 139, 141, 141, 140, 140, 139, /* 2400-2407 */ +138, 136, 136, 134, 135, 135, 136, 135, /* 2408-2415 */ +134, 133, 130, 127, 124, 121, 116, 111, /* 2416-2423 */ +107, 102, 99, 97, 98, 100, 104, 111, /* 2424-2431 */ +119, 128, 137, 147, 156, 164, 169, 173, /* 2432-2439 */ +174, 172, 167, 159, 149, 138, 126, 114, /* 2440-2447 */ +101, 91, 83, 78, 76, 78, 83, 90, /* 2448-2455 */ + 99, 111, 122, 134, 145, 155, 162, 168, /* 2456-2463 */ +169, 168, 164, 159, 152, 144, 135, 126, /* 2464-2471 */ +119, 113, 108, 105, 104, 104, 107, 111, /* 2472-2479 */ +114, 118, 122, 125, 127, 129, 130, 130, /* 2480-2487 */ +129, 128, 127, 125, 125, 125, 126, 128, /* 2488-2495 */ +130, 132, 134, 139, 141, 143, 144, 145, /* 2496-2503 */ +143, 141, 138, 133, 128, 122, 117, 113, /* 2504-2511 */ +108, 105, 103, 103, 104, 107, 110, 114, /* 2512-2519 */ +118, 124, 129, 132, 136, 139, 142, 143, /* 2520-2527 */ +144, 144, 142, 141, 139, 138, 136, 135, /* 2528-2535 */ +134, 132, 131, 129, 127, 124, 121, 118, /* 2536-2543 */ +115, 111, 107, 104, 102, 100, 100, 102, /* 2544-2551 */ +105, 111, 117, 125, 133, 140, 149, 156, /* 2552-2559 */ +163, 167, 168, 167, 164, 158, 151, 141, /* 2560-2567 */ +131, 120, 108, 98, 89, 84, 80, 80, /* 2568-2575 */ + 83, 89, 96, 105, 116, 127, 137, 147, /* 2576-2583 */ +155, 161, 164, 165, 163, 159, 152, 146, /* 2584-2591 */ +138, 129, 122, 115, 110, 106, 105, 106, /* 2592-2599 */ +107, 111, 114, 118, 122, 125, 129, 131, /* 2600-2607 */ +132, 132, 131, 128, 126, 124, 122, 121, /* 2608-2615 */ +121, 121, 123, 126, 129, 133, 137, 140, /* 2616-2623 */ +142, 145, 146, 146, 144, 140, 136, 131, /* 2624-2631 */ +125, 119, 114, 110, 106, 103, 102, 102, /* 2632-2639 */ +105, 109, 113, 118, 123, 129, 133, 139, /* 2640-2647 */ +142, 144, 147, 147, 147, 146, 144, 142, /* 2648-2655 */ +139, 138, 135, 132, 130, 127, 124, 123, /* 2656-2663 */ +120, 117, 115, 112, 110, 108, 107, 106, /* 2664-2671 */ +106, 107, 110, 114, 119, 124, 131, 138, /* 2672-2679 */ +145, 151, 157, 161, 163, 164, 161, 158, /* 2680-2687 */ +152, 144, 135, 126, 115, 106, 98, 92, /* 2688-2695 */ + 88, 86, 87, 90, 96, 104, 113, 122, /* 2696-2703 */ +132, 142, 150, 156, 159, 161, 160, 158, /* 2704-2711 */ +153, 147, 141, 134, 126, 120, 114, 111, /* 2712-2719 */ +109, 108, 110, 112, 115, 118, 122, 126, /* 2720-2727 */ +129, 131, 132, 132, 131, 129, 127, 123, /* 2728-2735 */ +120, 119, 118, 118, 120, 122, 125, 129, /* 2736-2743 */ +133, 138, 142, 145, 148, 149, 148, 145, /* 2744-2751 */ +142, 137, 132, 125, 119, 113, 108, 103, /* 2752-2759 */ +101, 99, 100, 103, 106, 111, 117, 122, /* 2760-2767 */ +128, 134, 140, 144, 148, 150, 150, 149, /* 2768-2775 */ +148, 145, 142, 139, 135, 132, 128, 125, /* 2776-2783 */ +121, 120, 117, 115, 114, 112, 110, 109, /* 2784-2791 */ +108, 109, 110, 111, 113, 116, 120, 123, /* 2792-2799 */ +129, 134, 139, 145, 150, 154, 156, 158, /* 2800-2807 */ +156, 154, 149, 144, 137, 129, 121, 113, /* 2808-2815 */ +105, 99, 94, 92, 92, 93, 96, 102, /* 2816-2823 */ +109, 117, 126, 134, 142, 148, 152, 155, /* 2824-2831 */ +157, 155, 152, 147, 141, 135, 129, 123, /* 2832-2839 */ +117, 113, 110, 110, 110, 111, 114, 118, /* 2840-2847 */ +121, 124, 127, 130, 131, 131, 131, 129, /* 2848-2855 */ +127, 124, 122, 119, 118, 117, 118, 119, /* 2856-2863 */ +121, 126, 130, 135, 139, 143, 146, 149, /* 2864-2871 */ +149, 148, 145, 142, 136, 130, 124, 117, /* 2872-2879 */ +111, 105, 101, 98, 98, 99, 102, 106, /* 2880-2887 */ +112, 118, 125, 131, 138, 144, 148, 151, /* 2888-2895 */ +153, 153, 151, 148, 145, 141, 137, 133, /* 2896-2903 */ +128, 124, 121, 118, 115, 114, 112, 112, /* 2904-2911 */ +112, 111, 111, 112, 113, 115, 117, 119, /* 2912-2919 */ +122, 125, 128, 133, 137, 141, 146, 148, /* 2920-2927 */ +151, 152, 152, 151, 148, 145, 140, 134, /* 2928-2935 */ +127, 120, 113, 108, 103, 99, 98, 98, /* 2936-2943 */ + 99, 103, 108, 114, 122, 129, 136, 142, /* 2944-2951 */ +147, 151, 153, 153, 152, 149, 145, 140, /* 2952-2959 */ +135, 129, 124, 119, 116, 114, 114, 115, /* 2960-2967 */ +117, 119, 121, 124, 127, 130, 130, 131, /* 2968-2975 */ +130, 129, 127, 125, 122, 119, 117, 116, /* 2976-2983 */ +116, 116, 119, 122, 127, 131, 137, 142, /* 2984-2991 */ +146, 149, 150, 150, 149, 146, 141, 136, /* 2992-2999 */ +129, 122, 115, 108, 104, 99, 98, 98, /* 3000-3007 */ + 99, 102, 107, 113, 120, 126, 134, 141, /* 3008-3015 */ +146, 150, 153, 154, 153, 151, 148, 144, /* 3016-3023 */ +139, 134, 130, 124, 120, 117, 114, 112, /* 3024-3031 */ +111, 110, 110, 111, 111, 113, 115, 116, /* 3032-3039 */ +119, 121, 123, 125, 128, 131, 134, 138, /* 3040-3047 */ +140, 143, 145, 146, 147, 146, 145, 143, /* 3048-3055 */ +139, 135, 130, 124, 119, 114, 109, 106, /* 3056-3063 */ +103, 102, 102, 104, 107, 111, 117, 123, /* 3064-3071 */ +129, 135, 140, 143, 146, 148, 148, 147, /* 3072-3079 */ +144, 141, 136, 132, 127, 122, 120, 117, /* 3080-3087 */ +116, 116, 117, 118, 121, 123, 125, 127, /* 3088-3095 */ +129, 129, 129, 128, 126, 125, 122, 119, /* 3096-3103 */ +117, 116, 116, 116, 118, 121, 124, 129, /* 3104-3111 */ +134, 139, 143, 146, 149, 150, 150, 147, /* 3112-3119 */ +144, 139, 132, 126, 119, 112, 107, 101, /* 3120-3127 */ + 98, 96, 98, 99, 104, 110, 116, 123, /* 3128-3135 */ +130, 137, 144, 148, 152, 154, 154, 153, /* 3136-3143 */ +150, 146, 141, 137, 131, 126, 121, 117, /* 3144-3151 */ +114, 112, 111, 110, 110, 111, 113, 115, /* 3152-3159 */ +117, 119, 122, 124, 126, 128, 129, 131, /* 3160-3167 */ +133, 135, 137, 139, 140, 142, 142, 143, /* 3168-3175 */ +143, 141, 140, 137, 133, 130, 125, 122, /* 3176-3183 */ +117, 113, 110, 108, 108, 108, 108, 111, /* 3184-3191 */ +115, 119, 124, 129, 134, 137, 141, 144, /* 3192-3199 */ +145, 145, 144, 142, 139, 136, 133, 129, /* 3200-3207 */ +125, 123, 121, 120, 120, 121, 121, 123, /* 3208-3215 */ +124, 126, 127, 128, 128, 128, 126, 125, /* 3216-3223 */ +123, 121, 119, 117, 117, 117, 117, 120, /* 3224-3231 */ +123, 128, 132, 137, 141, 144, 147, 149, /* 3232-3239 */ +149, 148, 146, 141, 136, 129, 123, 116, /* 3240-3247 */ +110, 105, 101, 98, 98, 99, 102, 107, /* 3248-3255 */ +112, 119, 126, 133, 140, 145, 150, 153, /* 3256-3263 */ +153, 153, 152, 148, 143, 139, 133, 127, /* 3264-3271 */ +122, 118, 114, 112, 110, 110, 110, 111, /* 3272-3279 */ +113, 115, 117, 120, 122, 125, 126, 128, /* 3280-3287 */ +130, 130, 131, 132, 134, 134, 136, 136, /* 3288-3295 */ +138, 138, 138, 138, 137, 135, 133, 131, /* 3296-3303 */ +128, 125, 122, 118, 115, 113, 111, 110, /* 3304-3311 */ +110, 111, 113, 116, 120, 123, 128, 131, /* 3312-3319 */ +135, 138, 139, 141, 142, 141, 139, 137, /* 3320-3327 */ +134, 131, 129, 126, 124, 123, 121, 121, /* 3328-3335 */ +121, 121, 123, 123, 125, 125, 126, 125, /* 3336-3343 */ +125, 124, 123, 122, 120, 119, 117, 117, /* 3344-3351 */ +119, 120, 123, 126, 129, 134, 138, 141, /* 3352-3359 */ +144, 147, 148, 147, 146, 143, 138, 133, /* 3360-3367 */ +127, 120, 114, 108, 104, 101, 99, 99, /* 3368-3375 */ +102, 105, 111, 117, 123, 130, 136, 142, /* 3376-3383 */ +147, 150, 152, 153, 152, 149, 145, 140, /* 3384-3391 */ +134, 130, 124, 119, 115, 112, 110, 110, /* 3392-3399 */ +110, 111, 113, 116, 118, 121, 124, 127, /* 3400-3407 */ +128, 130, 131, 131, 132, 132, 132, 133, /* 3408-3415 */ +133, 134, 135, 135, 135, 136, 136, 135, /* 3416-3423 */ +135, 133, 131, 129, 126, 124, 121, 119, /* 3424-3431 */ +116, 114, 113, 113, 113, 115, 117, 120, /* 3432-3439 */ +123, 127, 130, 133, 136, 139, 140, 141, /* 3440-3447 */ +141, 140, 138, 137, 134, 131, 129, 126, /* 3448-3455 */ +124, 124, 123, 123, 123, 123, 123, 123, /* 3456-3463 */ +124, 124, 124, 123, 122, 122, 122, 120, /* 3464-3471 */ +120, 120, 120, 121, 123, 126, 129, 132, /* 3472-3479 */ +137, 140, 143, 145, 146, 146, 145, 143, /* 3480-3487 */ +139, 134, 130, 124, 118, 113, 108, 104, /* 3488-3495 */ +102, 101, 102, 105, 108, 114, 120, 126, /* 3496-3503 */ +132, 138, 144, 147, 150, 152, 152, 149, /* 3504-3511 */ +146, 142, 137, 132, 127, 121, 118, 115, /* 3512-3519 */ +112, 110, 110, 111, 113, 115, 118, 120, /* 3520-3527 */ +123, 125, 127, 130, 130, 131, 131, 130, /* 3528-3535 */ +131, 131, 131, 130, 130, 132, 132, 133, /* 3536-3543 */ +133, 133, 133, 133, 133, 131, 129, 128, /* 3544-3551 */ +126, 123, 121, 118, 116, 115, 113, 114, /* 3552-3559 */ +115, 117, 119, 122, 125, 128, 131, 134, /* 3560-3567 */ +136, 139, 139, 140, 139, 138, 137, 135, /* 3568-3575 */ +132, 129, 127, 126, 124, 123, 122, 122, /* 3576-3583 */ +122, 122, 122, 122, 122, 122, 122, 122, /* 3584-3591 */ +121, 120, 120, 120, 121, 122, 123, 126, /* 3592-3599 */ +128, 131, 134, 137, 140, 142, 143, 143, /* 3600-3607 */ +143, 142, 139, 136, 131, 127, 122, 116, /* 3608-3615 */ +111, 108, 105, 103, 103, 105, 108, 112, /* 3616-3623 */ +117, 123, 129, 134, 139, 143, 146, 149, /* 3624-3631 */ +149, 148, 146, 143, 139, 134, 128, 124, /* 3632-3639 */ +119, 116, 113, 113, 111, 113, 114, 115, /* 3640-3647 */ +118, 120, 123, 126, 127, 130, 130, 131, /* 3648-3655 */ +132, 131, 131, 129, 129, 129, 130, 130, /* 3656-3663 */ +130, 131, 132, 133, 133, 134, 134, 134, /* 3664-3671 */ +132, 132, 129, 127, 124, 122, 119, 118, /* 3672-3679 */ +115, 115, 114, 115, 117, 119, 122, 124, /* 3680-3687 */ +128, 131, 134, 136, 139, 140, 140, 140, /* 3688-3695 */ +140, 138, 136, 133, 131, 129, 126, 125, /* 3696-3703 */ +123, 122, 122, 122, 121, 121, 121, 121, /* 3704-3711 */ +122, 122, 122, 122, 122, 123, 123, 124, /* 3712-3719 */ +124, 126, 129, 130, 133, 135, 138, 140, /* 3720-3727 */ +141, 142, 142, 142, 139, 137, 134, 130, /* 3728-3735 */ +125, 121, 117, 113, 109, 108, 106, 106, /* 3736-3743 */ +109, 111, 115, 120, 124, 130, 135, 140, /* 3744-3751 */ +143, 146, 147, 147, 146, 143, 140, 136, /* 3752-3759 */ +131, 127, 124, 119, 116, 114, 114, 114, /* 3760-3767 */ +114, 116, 118, 120, 123, 124, 127, 129, /* 3768-3775 */ +130, 130, 130, 130, 129, 129, 128, 127, /* 3776-3783 */ +127, 127, 127, 128, 130, 130, 131, 133, /* 3784-3791 */ +133, 134, 134, 132, 132, 130, 127, 125, /* 3792-3799 */ +122, 120, 117, 115, 114, 114, 114, 116, /* 3800-3807 */ +117, 120, 123, 127, 130, 133, 136, 137, /* 3808-3815 */ +139, 140, 140, 139, 138, 135, 133, 130, /* 3816-3823 */ +128, 125, 123, 122, 120, 119, 119, 119, /* 3824-3831 */ +119, 119, 119, 120, 121, 122, 122, 123, /* 3832-3839 */ +124, 124, 126, 126, 127, 129, 131, 133, /* 3840-3847 */ +135, 137, 138, 139, 139, 139, 137, 136, /* 3848-3855 */ +133, 130, 127, 123, 120, 116, 113, 111, /* 3856-3863 */ +109, 109, 109, 112, 115, 118, 123, 127, /* 3864-3871 */ +132, 135, 140, 142, 143, 145, 145, 143, /* 3872-3879 */ +140, 137, 134, 130, 125, 122, 119, 117, /* 3880-3887 */ +116, 115, 115, 117, 118, 120, 121, 124, /* 3888-3895 */ +126, 128, 129, 130, 131, 130, 129, 129, /* 3896-3903 */ +128, 127, 127, 127, 127, 127, 128, 130, /* 3904-3911 */ +131, 132, 134, 134, 134, 134, 134, 132, /* 3912-3919 */ +130, 129, 126, 123, 120, 118, 115, 114, /* 3920-3927 */ +114, 114, 116, 119, 121, 124, 127, 131, /* 3928-3935 */ +134, 137, 139, 140, 141, 141, 140, 138, /* 3936-3943 */ +136, 134, 131, 128, 125, 123, 122, 120, /* 3944-3951 */ +119, 119, 119, 119, 120, 120, 122, 122, /* 3952-3959 */ +123, 125, 126, 126, 127, 128, 129, 130, /* 3960-3967 */ +131, 132, 134, 135, 137, 137, 137, 137, /* 3968-3975 */ +137, 136, 134, 131, 129, 126, 123, 120, /* 3976-3983 */ +117, 115, 112, 112, 112, 112, 115, 117, /* 3984-3991 */ +121, 124, 129, 132, 135, 138, 140, 142, /* 3992-3999 */ +142, 142, 140, 139, 136, 131, 128, 125, /* 4000-4007 */ +122, 119, 117, 117, 117, 117, 118, 120, /* 4008-4015 */ +121, 123, 125, 127, 128, 129, 129, 129, /* 4016-4023 */ +129, 129, 128, 127, 126, 126, 126, 127, /* 4024-4031 */ +127, 128, 130, 131, 132, 133, 134, 134, /* 4032-4039 */ +134, 132, 132, 129, 127, 124, 121, 119, /* 4040-4047 */ +117, 114, 114, 114, 114, 116, 117, 120, /* 4048-4055 */ +124, 127, 131, 134, 137, 138, 140, 140, /* 4056-4063 */ +140, 140, 137, 135, 132, 129, 126, 123, /* 4064-4071 */ +122, 120, 119, 117, 117, 117, 119, 119, /* 4072-4079 */ +120, 122, 123, 124, 126, 126, 127, 129, /* 4080-4087 */ +129, 129, 131, 131, 132, 133, 134, 134, /* 4088-4095 */ +134, 134, 134, 134, 133, 131, 130, 128, /* 4096-4103 */ +125, 123, 120, 118, 117, 115, 114, 114, /* 4104-4111 */ +115, 117, 120, 123, 126, 129, 132, 135, /* 4112-4119 */ +137, 139, 140, 140, 140, 139, 136, 134, /* 4120-4127 */ +131, 128, 125, 122, 120, 119, 118, 118, /* 4128-4135 */ +118, 120, 121, 123, 124, 126, 127, 128, /* 4136-4143 */ +129, 129, 129, 129, 128, 128, 127, 126, /* 4144-4151 */ +126, 126, 127, 128, 129, 131, 131, 133, /* 4152-4159 */ +134, 134, 134, 134, 133, 132, 129, 127, /* 4160-4167 */ +124, 122, 120, 117, 116, 114, 114, 116, /* 4168-4175 */ +117, 119, 122, 125, 128, 131, 134, 137, /* 4176-4183 */ +139, 140, 141, 140, 139, 137, 134, 132, /* 4184-4191 */ +129, 126, 123, 121, 119, 119, 117, 117, /* 4192-4199 */ +118, 119, 120, 122, 123, 125, 126, 127, /* 4200-4207 */ +129, 129, 130, 130, 131, 131, 131, 132, /* 4208-4215 */ +132, 133, 133, 133, 133, 133, 133, 131, /* 4216-4223 */ +130, 128, 127, 125, 123, 121, 120, 118, /* 4224-4231 */ +117, 116, 116, 117, 118, 121, 123, 126, /* 4232-4239 */ +129, 131, 134, 136, 137, 139, 139, 138, /* 4240-4247 */ +137, 135, 133, 130, 128, 125, 123, 122, /* 4248-4255 */ +120, 120, 120, 120, 121, 121, 123, 124, /* 4256-4263 */ +126, 126, 128, 128, 129, 128, 128, 128, /* 4264-4271 */ +127, 126, 126, 126, 126, 127, 128, 129, /* 4272-4279 */ +131, 132, 133, 134, 134, 134, 134, 132, /* 4280-4287 */ +131, 129, 126, 123, 121, 119, 117, 115, /* 4288-4295 */ +114, 114, 116, 117, 120, 123, 126, 129, /* 4296-4303 */ +132, 135, 137, 139, 140, 140, 140, 138, /* 4304-4311 */ +135, 133, 130, 127, 125, 122, 120, 119, /* 4312-4319 */ +117, 117, 117, 119, 119, 120, 122, 124, /* 4320-4327 */ +126, 127, 129, 129, 130, 130, 130, 131, /* 4328-4335 */ +131, 131, 131, 131, 131, 131, 131, 131, /* 4336-4343 */ +131, 130, 130, 129, 128, 126, 125, 123, /* 4344-4351 */ +122, 120, 119, 118, 118, 118, 118, 120, /* 4352-4359 */ +121, 123, 126, 128, 131, 133, 134, 136, /* 4360-4367 */ +136, 137, 136, 136, 134, 132, 130, 128, /* 4368-4375 */ +125, 123, 122, 121, 120, 120, 121, 121, /* 4376-4383 */ +123, 123, 125, 126, 126, 128, 128, 128, /* 4384-4391 */ +128, 128, 128, 126, 126, 126, 126, 127, /* 4392-4399 */ +128, 128, 129, 131, 132, 133, 134, 134, /* 4400-4407 */ +134, 132, 132, 130, 128, 126, 123, 121, /* 4408-4415 */ +119, 117, 116, 116, 116, 117, 119, 122, /* 4416-4423 */ +125, 128, 131, 133, 135, 137, 139, 140, /* 4424-4431 */ +140, 138, 137, 134, 132, 129, 126, 123, /* 4432-4439 */ +122, 120, 119, 119, 119, 119, 119, 120, /* 4440-4447 */ +122, 123, 126, 127, 129, 129, 130, 130, /* 4448-4455 */ +131, 131, 131, 131, 131, 130, 130, 130, /* 4456-4463 */ +130, 131, 130, 130, 130, 130, 129, 128, /* 4464-4471 */ +127, 126, 124, 123, 122, 121, 120, 120, /* 4472-4479 */ +120, 120, 121, 123, 125, 126, 128, 131, /* 4480-4487 */ +132, 134, 134, 136, 136, 136, 134, 134, /* 4488-4495 */ +132, 129, 128, 126, 124, 123, 122, 121, /* 4496-4503 */ +121, 122, 122, 123, 123, 125, 126, 126, /* 4504-4511 */ +126, 128, 128, 128, 128, 128, 127, 126, /* 4512-4519 */ +127, 127, 128, 128, 129, 131, 131, 132, /* 4520-4527 */ +132, 133, 133, 132, 132, 131, 129, 126, /* 4528-4535 */ +125, 123, 120, 119, 117, 117, 117, 117, /* 4536-4543 */ +119, 120, 123, 125, 128, 131, 134, 135, /* 4544-4551 */ +137, 138, 138, 138, 137, 135, 133, 131, /* 4552-4559 */ +128, 125, 123, 121, 119, 119, 119, 119, /* 4560-4567 */ +119, 120, 122, 123, 125, 126, 127, 129, /* 4568-4575 */ +129, 130, 130, 130, 129, 129, 129, 129, /* 4576-4583 */ +128, 128, 128, 128, 128, 129, 129, 129, /* 4584-4591 */ +128, 128, 128, 127, 126, 125, 124, 123, /* 4592-4599 */ +121, 121, 120, 120, 120, 122, 123, 125, /* 4600-4607 */ +126, 128, 130, 131, 133, 134, 134, 134, /* 4608-4615 */ +134, 134, 133, 131, 129, 128, 126, 125, /* 4616-4623 */ +123, 123, 122, 122, 122, 122, 123, 123, /* 4624-4631 */ +125, 125, 126, 126, 128, 128, 128, 128, /* 4632-4639 */ +128, 128, 128, 128, 128, 128, 129, 129, /* 4640-4647 */ +131, 131, 131, 132, 132, 132, 131, 131, /* 4648-4655 */ +129, 128, 126, 125, 123, 120, 119, 118, /* 4656-4663 */ +118, 118, 119, 120, 122, 124, 126, 129, /* 4664-4671 */ +132, 134, 135, 137, 137, 137, 137, 136, /* 4672-4679 */ +134, 132, 129, 128, 125, 123, 122, 120, /* 4680-4687 */ +120, 120, 120, 120, 122, 123, 125, 126, /* 4688-4695 */ +128, 129, 130, 130, 131, 131, 131, 131, /* 4696-4703 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 4704-4711 */ +129, 129, 129, 129, 129, 129, 128, 127, /* 4712-4719 */ +126, 124, 124, 123, 122, 121, 121, 121, /* 4720-4727 */ +122, 123, 125, 126, 128, 130, 131, 133, /* 4728-4735 */ +134, 134, 134, 134, 134, 132, 131, 129, /* 4736-4743 */ +128, 126, 125, 124, 123, 123, 122, 122, /* 4744-4751 */ +122, 123, 123, 125, 125, 126, 126, 128, /* 4752-4759 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 4760-4767 */ +128, 129, 129, 130, 131, 131, 131, 131, /* 4768-4775 */ +131, 131, 129, 128, 128, 126, 123, 122, /* 4776-4783 */ +120, 120, 119, 118, 119, 120, 121, 123, /* 4784-4791 */ +125, 126, 129, 131, 133, 134, 136, 136, /* 4792-4799 */ +136, 135, 134, 132, 131, 128, 126, 123, /* 4800-4807 */ +122, 120, 120, 120, 120, 120, 121, 122, /* 4808-4815 */ +123, 125, 126, 128, 129, 129, 130, 130, /* 4816-4823 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 4824-4831 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 4832-4839 */ +128, 128, 126, 126, 124, 123, 123, 121, /* 4840-4847 */ +121, 121, 121, 122, 123, 125, 125, 127, /* 4848-4855 */ +128, 130, 131, 133, 134, 134, 134, 134, /* 4856-4863 */ +132, 131, 129, 128, 126, 125, 123, 123, /* 4864-4871 */ +122, 122, 122, 122, 123, 123, 125, 125, /* 4872-4879 */ +126, 126, 128, 128, 128, 128, 128, 128, /* 4880-4887 */ +128, 128, 128, 129, 129, 129, 130, 130, /* 4888-4895 */ +131, 131, 131, 130, 129, 129, 128, 126, /* 4896-4903 */ +125, 124, 123, 121, 120, 120, 120, 120, /* 4904-4911 */ +121, 123, 124, 126, 128, 130, 132, 134, /* 4912-4919 */ +134, 135, 136, 135, 134, 133, 131, 129, /* 4920-4927 */ +128, 126, 123, 122, 122, 120, 120, 121, /* 4928-4935 */ +122, 123, 123, 125, 126, 128, 129, 129, /* 4936-4943 */ +130, 131, 131, 129, 129, 129, 128, 128, /* 4944-4951 */ +128, 128, 128, 128, 128, 128, 128, 129, /* 4952-4959 */ +129, 129, 129, 129, 128, 128, 126, 126, /* 4960-4967 */ +124, 123, 123, 122, 122, 122, 122, 123, /* 4968-4975 */ +125, 126, 128, 129, 130, 131, 133, 134, /* 4976-4983 */ +134, 134, 133, 132, 131, 129, 128, 126, /* 4984-4991 */ +125, 123, 123, 122, 122, 122, 123, 123, /* 4992-4999 */ +123, 125, 125, 126, 127, 128, 128, 128, /* 5000-5007 */ +129, 129, 129, 128, 128, 128, 129, 129, /* 5008-5015 */ +129, 129, 130, 130, 130, 130, 129, 129, /* 5016-5023 */ +128, 128, 126, 125, 124, 123, 122, 121, /* 5024-5031 */ +120, 120, 121, 122, 123, 125, 126, 128, /* 5032-5039 */ +129, 131, 133, 134, 134, 134, 134, 133, /* 5040-5047 */ +132, 131, 128, 126, 125, 123, 122, 122, /* 5048-5055 */ +121, 121, 121, 122, 123, 124, 125, 126, /* 5056-5063 */ +128, 129, 129, 129, 129, 129, 129, 129, /* 5064-5071 */ +128, 128, 128, 127, 127, 127, 127, 128, /* 5072-5079 */ +128, 128, 128, 129, 129, 129, 129, 128, /* 5080-5087 */ +127, 126, 125, 124, 123, 123, 122, 122, /* 5088-5095 */ +122, 123, 123, 125, 126, 128, 129, 130, /* 5096-5103 */ +131, 132, 133, 134, 133, 132, 131, 131, /* 5104-5111 */ +129, 128, 126, 125, 123, 123, 122, 122, /* 5112-5119 */ +122, 122, 123, 123, 125, 125, 126, 128, /* 5120-5127 */ +128, 128, 129, 129, 129, 129, 129, 128, /* 5128-5135 */ +128, 128, 128, 128, 129, 129, 129, 129, /* 5136-5143 */ +129, 129, 128, 128, 128, 126, 125, 124, /* 5144-5151 */ +123, 123, 122, 122, 122, 122, 123, 124, /* 5152-5159 */ +125, 126, 128, 129, 131, 132, 133, 134, /* 5160-5167 */ +134, 133, 132, 131, 129, 128, 126, 125, /* 5168-5175 */ +123, 123, 122, 122, 122, 122, 123, 123, /* 5176-5183 */ +125, 126, 126, 128, 129, 129, 129, 129, /* 5184-5191 */ +129, 129, 128, 128, 128, 128, 127, 127, /* 5192-5199 */ +127, 128, 128, 128, 128, 129, 129, 129, /* 5200-5207 */ +129, 129, 128, 128, 126, 126, 125, 123, /* 5208-5215 */ +123, 123, 122, 123, 123, 123, 125, 126, /* 5216-5223 */ +128, 129, 131, 132, 132, 133, 134, 133, /* 5224-5231 */ +132, 131, 131, 129, 128, 126, 125, 123, /* 5232-5239 */ +123, 122, 122, 122, 123, 123, 125, 125, /* 5240-5247 */ +126, 127, 128, 129, 129, 129, 129, 129, /* 5248-5255 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 5256-5263 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5264-5271 */ +126, 126, 125, 124, 123, 123, 123, 123, /* 5272-5279 */ +123, 123, 125, 126, 127, 128, 129, 131, /* 5280-5287 */ +131, 132, 133, 133, 132, 131, 131, 129, /* 5288-5295 */ +128, 126, 125, 123, 123, 123, 122, 122, /* 5296-5303 */ +123, 123, 124, 125, 126, 127, 128, 129, /* 5304-5311 */ +129, 129, 129, 129, 129, 128, 128, 128, /* 5312-5319 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 5320-5327 */ +128, 129, 129, 129, 128, 128, 127, 126, /* 5328-5335 */ +125, 124, 123, 123, 123, 122, 123, 123, /* 5336-5343 */ +124, 125, 126, 128, 129, 131, 131, 132, /* 5344-5351 */ +132, 132, 132, 132, 131, 129, 128, 126, /* 5352-5359 */ +125, 125, 123, 123, 122, 122, 122, 123, /* 5360-5367 */ +123, 125, 125, 126, 127, 128, 128, 129, /* 5368-5375 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 5376-5383 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5384-5391 */ +128, 128, 127, 126, 126, 125, 124, 124, /* 5392-5399 */ +123, 123, 123, 123, 125, 125, 126, 127, /* 5400-5407 */ +128, 129, 131, 131, 131, 132, 132, 131, /* 5408-5415 */ +131, 130, 129, 128, 126, 125, 125, 123, /* 5416-5423 */ +123, 123, 123, 123, 124, 125, 126, 126, /* 5424-5431 */ +128, 128, 129, 129, 129, 129, 129, 129, /* 5432-5439 */ +128, 128, 128, 128, 127, 127, 127, 128, /* 5440-5447 */ +128, 128, 128, 129, 129, 129, 129, 129, /* 5448-5455 */ +128, 127, 126, 126, 125, 123, 123, 123, /* 5456-5463 */ +123, 123, 123, 125, 126, 126, 128, 129, /* 5464-5471 */ +131, 131, 132, 132, 132, 132, 131, 131, /* 5472-5479 */ +129, 128, 126, 125, 125, 123, 123, 123, /* 5480-5487 */ +123, 123, 123, 124, 125, 126, 127, 128, /* 5488-5495 */ +129, 129, 129, 129, 129, 129, 129, 129, /* 5496-5503 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5504-5511 */ +128, 128, 128, 128, 128, 127, 126, 126, /* 5512-5519 */ +126, 125, 124, 124, 124, 124, 124, 125, /* 5520-5527 */ +125, 126, 127, 128, 129, 130, 131, 131, /* 5528-5535 */ +131, 131, 131, 131, 129, 128, 128, 126, /* 5536-5543 */ +125, 125, 123, 123, 123, 123, 123, 124, /* 5544-5551 */ +125, 126, 126, 127, 128, 128, 129, 129, /* 5552-5559 */ +129, 129, 128, 128, 128, 127, 127, 127, /* 5560-5567 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 5568-5575 */ +128, 128, 128, 128, 126, 126, 125, 125, /* 5576-5583 */ +123, 123, 123, 123, 123, 124, 125, 126, /* 5584-5591 */ +127, 128, 129, 131, 131, 131, 132, 132, /* 5592-5599 */ +131, 131, 129, 128, 128, 126, 125, 123, /* 5600-5607 */ +123, 123, 123, 123, 123, 123, 125, 125, /* 5608-5615 */ +126, 127, 128, 129, 129, 129, 129, 129, /* 5616-5623 */ +129, 129, 128, 128, 128, 128, 127, 127, /* 5624-5631 */ +127, 127, 127, 128, 128, 128, 128, 128, /* 5632-5639 */ +127, 126, 126, 126, 125, 125, 124, 124, /* 5640-5647 */ +124, 125, 125, 125, 126, 127, 128, 129, /* 5648-5655 */ +129, 130, 131, 131, 131, 131, 131, 129, /* 5656-5663 */ +128, 128, 126, 126, 125, 125, 123, 123, /* 5664-5671 */ +123, 124, 125, 125, 126, 126, 128, 128, /* 5672-5679 */ +128, 129, 129, 129, 129, 128, 128, 128, /* 5680-5687 */ +128, 128, 127, 127, 127, 128, 128, 128, /* 5688-5695 */ +128, 128, 128, 128, 128, 128, 128, 126, /* 5696-5703 */ +126, 126, 125, 124, 123, 123, 123, 124, /* 5704-5711 */ +125, 125, 126, 128, 128, 129, 131, 131, /* 5712-5719 */ +131, 132, 131, 131, 131, 129, 128, 128, /* 5720-5727 */ +126, 125, 124, 123, 123, 123, 123, 123, /* 5728-5735 */ +125, 125, 126, 126, 128, 129, 129, 129, /* 5736-5743 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 5744-5751 */ +127, 127, 127, 127, 127, 127, 128, 128, /* 5752-5759 */ +128, 128, 128, 128, 127, 126, 126, 126, /* 5760-5767 */ +125, 125, 125, 125, 125, 125, 125, 126, /* 5768-5775 */ +127, 128, 128, 129, 130, 131, 131, 131, /* 5776-5783 */ +131, 129, 129, 128, 128, 126, 126, 125, /* 5784-5791 */ +125, 124, 123, 123, 125, 125, 125, 126, /* 5792-5799 */ +126, 128, 128, 128, 129, 129, 129, 129, /* 5800-5807 */ +128, 128, 128, 128, 128, 127, 127, 127, /* 5808-5815 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 5816-5823 */ +128, 127, 126, 126, 126, 125, 124, 124, /* 5824-5831 */ +124, 124, 125, 125, 126, 126, 128, 128, /* 5832-5839 */ +129, 130, 131, 131, 131, 131, 131, 129, /* 5840-5847 */ +129, 128, 126, 126, 125, 124, 123, 123, /* 5848-5855 */ +123, 123, 123, 125, 125, 126, 127, 128, /* 5856-5863 */ +129, 129, 129, 129, 129, 129, 129, 128, /* 5864-5871 */ +128, 128, 127, 126, 126, 126, 126, 126, /* 5872-5879 */ +127, 127, 128, 128, 128, 128, 128, 127, /* 5880-5887 */ +126, 126, 126, 126, 125, 125, 125, 125, /* 5888-5895 */ +125, 126, 126, 127, 128, 128, 129, 129, /* 5896-5903 */ +130, 131, 131, 130, 129, 129, 128, 128, /* 5904-5911 */ +126, 126, 125, 125, 124, 123, 123, 125, /* 5912-5919 */ +125, 125, 126, 126, 128, 128, 128, 129, /* 5920-5927 */ +129, 129, 129, 128, 128, 128, 128, 128, /* 5928-5935 */ +127, 127, 127, 127, 128, 128, 128, 128, /* 5936-5943 */ +128, 128, 128, 128, 127, 126, 126, 126, /* 5944-5951 */ +125, 125, 125, 125, 125, 125, 125, 126, /* 5952-5959 */ +127, 128, 128, 129, 130, 131, 131, 131, /* 5960-5967 */ +131, 130, 129, 128, 128, 126, 126, 125, /* 5968-5975 */ +125, 123, 123, 123, 123, 125, 125, 126, /* 5976-5983 */ +126, 128, 128, 129, 129, 129, 129, 129, /* 5984-5991 */ +129, 129, 128, 128, 128, 127, 126, 126, /* 5992-5999 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 6000-6007 */ +128, 128, 128, 127, 126, 126, 126, 125, /* 6008-6015 */ +125, 125, 125, 125, 126, 126, 127, 128, /* 6016-6023 */ +128, 129, 129, 130, 131, 131, 129, 129, /* 6024-6031 */ +129, 128, 128, 126, 126, 125, 125, 125, /* 6032-6039 */ +124, 125, 125, 125, 125, 126, 126, 128, /* 6040-6047 */ +128, 128, 129, 129, 129, 129, 128, 128, /* 6048-6055 */ +128, 128, 128, 127, 127, 127, 127, 127, /* 6056-6063 */ +127, 128, 128, 128, 128, 128, 127, 127, /* 6064-6071 */ +126, 126, 126, 125, 125, 125, 125, 125, /* 6072-6079 */ +125, 126, 126, 127, 128, 128, 129, 129, /* 6080-6087 */ +130, 131, 131, 130, 129, 129, 128, 128, /* 6088-6095 */ +126, 125, 125, 124, 123, 123, 123, 124, /* 6096-6103 */ +125, 125, 126, 126, 128, 128, 129, 129, /* 6104-6111 */ +129, 129, 129, 129, 128, 128, 128, 127, /* 6112-6119 */ +126, 126, 126, 126, 126, 126, 126, 127, /* 6120-6127 */ +128, 128, 128, 128, 128, 127, 127, 126, /* 6128-6135 */ +126, 126, 125, 125, 125, 125, 125, 126, /* 6136-6143 */ +126, 126, 128, 128, 128, 129, 129, 129, /* 6144-6151 */ +129, 129, 129, 129, 128, 128, 126, 126, /* 6152-6159 */ +125, 125, 125, 125, 125, 125, 125, 125, /* 6160-6167 */ +126, 126, 128, 128, 128, 129, 129, 129, /* 6168-6175 */ +129, 128, 128, 128, 128, 127, 127, 126, /* 6176-6183 */ +126, 126, 127, 127, 127, 128, 128, 128, /* 6184-6191 */ +128, 128, 127, 126, 126, 126, 126, 126, /* 6192-6199 */ +125, 125, 125, 126, 126, 126, 128, 128, /* 6200-6207 */ +128, 129, 129, 130, 130, 130, 129, 129, /* 6208-6215 */ +129, 128, 128, 126, 126, 125, 125, 125, /* 6216-6223 */ +125, 125, 125, 125, 126, 126, 128, 128, /* 6224-6231 */ +128, 129, 129, 129, 129, 129, 129, 128, /* 6232-6239 */ +128, 128, 127, 126, 126, 126, 126, 126, /* 6240-6247 */ +126, 127, 128, 128, 128, 128, 128, 128, /* 6248-6255 */ +128, 127, 126, 126, 126, 126, 126, 125, /* 6256-6263 */ +125, 126, 126, 126, 127, 128, 128, 129, /* 6264-6271 */ +129, 129, 129, 129, 129, 129, 129, 128, /* 6272-6279 */ +128, 126, 126, 125, 125, 125, 125, 125, /* 6280-6287 */ +125, 125, 126, 126, 126, 128, 128, 128, /* 6288-6295 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 6296-6303 */ +127, 126, 126, 126, 126, 126, 126, 126, /* 6304-6311 */ +126, 127, 128, 127, 127, 127, 126, 126, /* 6312-6319 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6320-6327 */ +126, 127, 128, 128, 128, 129, 129, 129, /* 6328-6335 */ +129, 129, 129, 128, 128, 126, 126, 126, /* 6336-6343 */ +125, 125, 125, 125, 125, 125, 125, 126, /* 6344-6351 */ +126, 126, 128, 128, 129, 129, 129, 129, /* 6352-6359 */ +129, 128, 128, 128, 128, 126, 126, 126, /* 6360-6367 */ +126, 126, 126, 126, 126, 127, 128, 128, /* 6368-6375 */ +128, 128, 128, 128, 127, 126, 126, 126, /* 6376-6383 */ +126, 126, 125, 125, 126, 126, 126, 127, /* 6384-6391 */ +128, 128, 128, 129, 129, 129, 129, 129, /* 6392-6399 */ +129, 128, 128, 127, 126, 126, 125, 125, /* 6400-6407 */ +125, 125, 125, 125, 125, 126, 126, 127, /* 6408-6415 */ +128, 128, 128, 129, 129, 129, 129, 128, /* 6416-6423 */ +128, 128, 128, 127, 126, 126, 126, 126, /* 6424-6431 */ +126, 126, 126, 126, 128, 128, 128, 127, /* 6432-6439 */ +127, 126, 126, 126, 126, 126, 126, 126, /* 6440-6447 */ +126, 126, 126, 126, 127, 128, 128, 128, /* 6448-6455 */ +129, 129, 129, 129, 129, 129, 128, 128, /* 6456-6463 */ +126, 126, 126, 125, 125, 125, 125, 125, /* 6464-6471 */ +125, 126, 126, 126, 128, 128, 128, 128, /* 6472-6479 */ +129, 129, 129, 129, 128, 128, 128, 128, /* 6480-6487 */ +126, 126, 126, 126, 126, 126, 126, 127, /* 6488-6495 */ +128, 128, 128, 128, 128, 128, 128, 127, /* 6496-6503 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6504-6511 */ +126, 126, 128, 128, 128, 128, 129, 129, /* 6512-6519 */ +129, 129, 129, 129, 128, 128, 127, 126, /* 6520-6527 */ +126, 125, 125, 125, 125, 125, 125, 126, /* 6528-6535 */ +126, 126, 128, 128, 128, 128, 129, 129, /* 6536-6543 */ +129, 129, 128, 128, 128, 128, 127, 126, /* 6544-6551 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6552-6559 */ +128, 128, 128, 127, 127, 126, 126, 126, /* 6560-6567 */ +126, 126, 126, 126, 126, 126, 126, 127, /* 6568-6575 */ +128, 128, 128, 128, 129, 129, 129, 129, /* 6576-6583 */ +128, 128, 128, 126, 126, 126, 125, 125, /* 6584-6591 */ +125, 125, 125, 125, 126, 126, 126, 128, /* 6592-6599 */ +128, 128, 128, 128, 129, 128, 128, 128, /* 6600-6607 */ +128, 128, 127, 126, 126, 126, 126, 126, /* 6608-6615 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 6616-6623 */ +128, 128, 127, 126, 126, 126, 126, 126, /* 6624-6631 */ +126, 126, 126, 126, 126, 127, 128, 128, /* 6632-6639 */ +128, 129, 129, 129, 129, 129, 128, 128, /* 6640-6647 */ +128, 126, 126, 126, 125, 125, 125, 125, /* 6648-6655 */ +125, 125, 126, 126, 126, 128, 128, 128, /* 6656-6663 */ +128, 129, 129, 129, 128, 128, 128, 128, /* 6664-6671 */ +128, 126, 126, 126, 126, 126, 126, 126, /* 6672-6679 */ +126, 126, 126, 127, 128, 128, 127, 127, /* 6680-6687 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6688-6695 */ +126, 126, 127, 128, 128, 128, 128, 128, /* 6696-6703 */ +129, 128, 128, 128, 128, 128, 126, 126, /* 6704-6711 */ +126, 126, 125, 125, 125, 125, 125, 126, /* 6712-6719 */ +126, 126, 128, 128, 128, 128, 128, 128, /* 6720-6727 */ +128, 128, 128, 128, 128, 128, 126, 126, /* 6728-6735 */ +126, 126, 126, 126, 126, 126, 128, 128, /* 6736-6743 */ +128, 128, 128, 128, 127, 127, 127, 126, /* 6744-6751 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6752-6759 */ +128, 128, 128, 128, 129, 129, 129, 129, /* 6760-6767 */ +129, 128, 128, 128, 126, 126, 126, 126, /* 6768-6775 */ +125, 125, 125, 125, 126, 126, 126, 126, /* 6776-6783 */ +128, 128, 128, 129, 129, 129, 129, 128, /* 6784-6791 */ +128, 128, 128, 128, 126, 126, 126, 126, /* 6792-6799 */ +126, 126, 126, 126, 126, 126, 128, 128, /* 6800-6807 */ +128, 128, 127, 127, 126, 126, 126, 126, /* 6808-6815 */ +126, 126, 126, 126, 126, 127, 128, 128, /* 6816-6823 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 6824-6831 */ +128, 126, 126, 126, 126, 125, 125, 125, /* 6832-6839 */ +125, 126, 126, 126, 126, 127, 128, 128, /* 6840-6847 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 6848-6855 */ +127, 126, 126, 126, 126, 126, 126, 126, /* 6856-6863 */ +126, 126, 128, 128, 128, 128, 128, 127, /* 6864-6871 */ +127, 126, 126, 126, 126, 126, 126, 126, /* 6872-6879 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 6880-6887 */ +128, 128, 128, 128, 128, 128, 127, 126, /* 6888-6895 */ +126, 126, 126, 125, 125, 125, 125, 126, /* 6896-6903 */ +126, 126, 126, 128, 128, 128, 128, 128, /* 6904-6911 */ +128, 128, 128, 128, 128, 128, 126, 126, /* 6912-6919 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6920-6927 */ +126, 128, 128, 128, 128, 128, 127, 127, /* 6928-6935 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6936-6943 */ +127, 128, 128, 128, 128, 128, 128, 128, /* 6944-6951 */ +128, 128, 128, 128, 126, 126, 126, 126, /* 6952-6959 */ +126, 126, 126, 126, 126, 126, 126, 126, /* 6960-6967 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 6968-6975 */ +128, 128, 128, 128, 126, 126, 126, 126, /* 6976-6983 */ +126, 126, 126, 126, 126, 128, 128, 128, /* 6984-6991 */ +128, 128, 128, 127, 127, 126, 126, 126, /* 6992-6999 */ +126, 126, 126, 126, 126, 127, 128, 128, /* 7000-7007 */ +128, 128, 128, 128, 128, 128, 128, 128, /* 7008-7015 */ +128, 127, 126, 126, 126, 126, 126, 125, /* 7016-7023 */ +126, 126, 126, 126, 126, 128, 128, 128, /* 7024-7031 */ +128, 129, 129, 129, 129, 128, 128, 128, /* 7032-7039 */ +128, 128, 126, 126, 126, 126, 126, 126, /* 7040-7047 */ +126, 126, 126, 127, 128, 128, 128, 128, /* 7048-7055 */ +128, 127, 127, 127, 126, 126, 126, 126, /* 7056-7063 */ +126, 126, 126, 128}; /* 7064-7067 */ + +//get and set the frequency from wav conversion tool GUI +int c=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_marimbaC() +{ + + speaker = data_c[c]/255.0;//scale to 0.0 to 1.0 for PWM + c++; + if (c>= NUM_ELEMENTS) { + c = 0; + sampletick.detach(); + myled = 0; + } +}
--- a/mbed.bld Tue Oct 11 03:42:42 2016 +0000 +++ b/mbed.bld Mon Dec 09 16:43:04 2019 +0000 @@ -1,1 +1,1 @@ -http://mbed.org/users/mbed_official/code/mbed/builds/25aea2a3f4e3 \ No newline at end of file +https://os.mbed.com/users/mbed_official/code/mbed/builds/0ab6a29f35bf \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed_config.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,30 @@ +/* + * mbed SDK + * Copyright (c) 2017 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Automatically generated configuration file. +// DO NOT EDIT, content will be overwritten. + +#ifndef __MBED_CONFIG_DATA__ +#define __MBED_CONFIG_DATA__ + +// Configuration parameters +#define MBED_CONF_PLATFORM_DEFAULT_SERIAL_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_CONVERT_NEWLINES 0 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_FLUSH_AT_EXIT 1 // set by library:platform + +#endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mpr121.cpp Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,221 @@ +/* +Copyright (c) 2011 Anthony Buckton (abuckton [at] blackink [dot} net {dot} au) + +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. +*/ + +#include <mbed.h> +#include <sstream> +#include <string> +#include <list> + +#include <mpr121.h> + +Mpr121::Mpr121(I2C *i2c, Address i2cAddress) +{ + this->i2c = i2c; + + address = i2cAddress; + + // Configure the MPR121 settings to default + this->configureSettings(); +} + + +void Mpr121::configureSettings() +{ + // Put the MPR into setup mode + this->write(ELE_CFG,0x00); + + // Electrode filters for when data is > baseline + unsigned char gtBaseline[] = { + 0x01, //MHD_R + 0x01, //NHD_R + 0x00, //NCL_R + 0x00 //FDL_R + }; + + writeMany(MHD_R,gtBaseline,4); + + // Electrode filters for when data is < baseline + unsigned char ltBaseline[] = { + 0x01, //MHD_F + 0x01, //NHD_F + 0xFF, //NCL_F + 0x02 //FDL_F + }; + + writeMany(MHD_F,ltBaseline,4); + + // Electrode touch and release thresholds + unsigned char electrodeThresholds[] = { + E_THR_T, // Touch Threshhold + E_THR_R // Release Threshold + }; + + for(int i=0; i<12; i++){ + int result = writeMany((ELE0_T+(i*2)),electrodeThresholds,2); + } + + // Proximity Settings + unsigned char proximitySettings[] = { + 0xff, //MHD_Prox_R + 0xff, //NHD_Prox_R + 0x00, //NCL_Prox_R + 0x00, //FDL_Prox_R + 0x01, //MHD_Prox_F + 0x01, //NHD_Prox_F + 0xFF, //NCL_Prox_F + 0xff, //FDL_Prox_F + 0x00, //NHD_Prox_T + 0x00, //NCL_Prox_T + 0x00 //NFD_Prox_T + }; + writeMany(MHDPROXR,proximitySettings,11); + + unsigned char proxThresh[] = { + PROX_THR_T, // Touch Threshold + PROX_THR_R // Release Threshold + }; + writeMany(EPROXTTH,proxThresh,2); + + this->write(FIL_CFG,0x04); + + // Set the electrode config to transition to active mode + this->write(ELE_CFG,0x0c); +} + +void Mpr121::setElectrodeThreshold(int electrode, unsigned char touch, unsigned char release){ + + if(electrode > 11) return; + + // Get the current mode + unsigned char mode = this->read(ELE_CFG); + + // Put the MPR into setup mode + this->write(ELE_CFG,0x00); + + // Write the new threshold + this->write((ELE0_T+(electrode*2)), touch); + this->write((ELE0_T+(electrode*2)+1), release); + + //Restore the operating mode + this->write(ELE_CFG, mode); +} + + +unsigned char Mpr121::read(int key){ + + unsigned char data[2]; + + //Start the command + i2c->start(); + + // Address the target (Write mode) + int ack1= i2c->write(address); + + // Set the register key to read + int ack2 = i2c->write(key); + + // Re-start for read of data + i2c->start(); + + // Re-send the target address in read mode + int ack3 = i2c->write(address+1); + + // Read in the result + data[0] = i2c->read(0); + + // Reset the bus + i2c->stop(); + + return data[0]; +} + + +int Mpr121::write(int key, unsigned char value){ + + //Start the command + i2c->start(); + + // Address the target (Write mode) + int ack1= i2c->write(address); + + // Set the register key to write + int ack2 = i2c->write(key); + + // Read in the result + int ack3 = i2c->write(value); + + // Reset the bus + i2c->stop(); + + return (ack1+ack2+ack3)-3; +} + + +int Mpr121::writeMany(int start, unsigned char* dataSet, int length){ + //Start the command + i2c->start(); + + // Address the target (Write mode) + int ack= i2c->write(address); + if(ack!=1){ + return -1; + } + + // Set the register key to write + ack = i2c->write(start); + if(ack!=1){ + return -1; + } + + // Write the date set + int count = 0; + while(ack==1 && (count < length)){ + ack = i2c->write(dataSet[count]); + count++; + } + // Stop the cmd + i2c->stop(); + + return count; +} + + +bool Mpr121::getProximityMode(){ + if(this->read(ELE_CFG) > 0x0c) + return true; + else + return false; +} + +void Mpr121::setProximityMode(bool mode){ + this->write(ELE_CFG,0x00); + if(mode){ + this->write(ELE_CFG,0x30); //Sense proximity from ALL pads + } else { + this->write(ELE_CFG,0x0c); //Sense touch, all 12 pads active. + } +} + + +int Mpr121::readTouchData(){ + return this->read(0x00); +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mpr121.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,157 @@ +/* +Copyright (c) 2011 Anthony Buckton (abuckton [at] blackink [dot} net {dot} au) + + +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. + + Parts written by Jim Lindblom of Sparkfun + Ported to mbed by A.Buckton, Feb 2011 +*/ + +#ifndef MPR121_H +#define MPR121_H + +//using namespace std; + +class Mpr121 +{ + +public: + // i2c Addresses, bit-shifted + enum Address { ADD_VSS = 0xb4,// ADD->VSS = 0x5a <-wiring on Sparkfun board + ADD_VDD = 0xb6,// ADD->VDD = 0x5b + ADD_SCL = 0xb8,// ADD->SDA = 0x5c + ADD_SDA = 0xba // ADD->SCL = 0x5d + }; + + // Real initialiser, takes the i2c address of the device. + Mpr121(I2C *i2c, Address i2cAddress); + + bool getProximityMode(); + + void setProximityMode(bool mode); + + int readTouchData(); + + unsigned char read(int key); + + int write(int address, unsigned char value); + int writeMany(int start, unsigned char* dataSet, int length); + + void setElectrodeThreshold(int electrodeId, unsigned char touchThreshold, unsigned char releaseThreshold); + +protected: + // Configures the MPR with standard settings. This is permitted to be overwritten by sub-classes. + void configureSettings(); + +private: + // The I2C bus instance. + I2C *i2c; + + // i2c address of this mpr121 + Address address; +}; + + +// MPR121 Register Defines +#define MHD_R 0x2B +#define NHD_R 0x2C +#define NCL_R 0x2D +#define FDL_R 0x2E +#define MHD_F 0x2F +#define NHD_F 0x30 +#define NCL_F 0x31 +#define FDL_F 0x32 +#define NHDT 0x33 +#define NCLT 0x34 +#define FDLT 0x35 +// Proximity sensing controls +#define MHDPROXR 0x36 +#define NHDPROXR 0x37 +#define NCLPROXR 0x38 +#define FDLPROXR 0x39 +#define MHDPROXF 0x3A +#define NHDPROXF 0x3B +#define NCLPROXF 0x3C +#define FDLPROXF 0x3D +#define NHDPROXT 0x3E +#define NCLPROXT 0x3F +#define FDLPROXT 0x40 +// Electrode Touch/Release thresholds +#define ELE0_T 0x41 +#define ELE0_R 0x42 +#define ELE1_T 0x43 +#define ELE1_R 0x44 +#define ELE2_T 0x45 +#define ELE2_R 0x46 +#define ELE3_T 0x47 +#define ELE3_R 0x48 +#define ELE4_T 0x49 +#define ELE4_R 0x4A +#define ELE5_T 0x4B +#define ELE5_R 0x4C +#define ELE6_T 0x4D +#define ELE6_R 0x4E +#define ELE7_T 0x4F +#define ELE7_R 0x50 +#define ELE8_T 0x51 +#define ELE8_R 0x52 +#define ELE9_T 0x53 +#define ELE9_R 0x54 +#define ELE10_T 0x55 +#define ELE10_R 0x56 +#define ELE11_T 0x57 +#define ELE11_R 0x58 +// Proximity Touch/Release thresholds +#define EPROXTTH 0x59 +#define EPROXRTH 0x5A +// Debounce configuration +#define DEB_CFG 0x5B +// AFE- Analogue Front End configuration +#define AFE_CFG 0x5C +// Filter configuration +#define FIL_CFG 0x5D +// Electrode configuration - transistions to "active mode" +#define ELE_CFG 0x5E + +#define GPIO_CTRL0 0x73 +#define GPIO_CTRL1 0x74 +#define GPIO_DATA 0x75 +#define GPIO_DIR 0x76 +#define GPIO_EN 0x77 +#define GPIO_SET 0x78 +#define GPIO_CLEAR 0x79 +#define GPIO_TOGGLE 0x7A +// Auto configration registers +#define AUTO_CFG_0 0x7B +#define AUTO_CFG_U 0x7D +#define AUTO_CFG_L 0x7E +#define AUTO_CFG_T 0x7F + +// Threshold defaults +// Electrode touch threshold +#define E_THR_T 0x0F +// Electrode release threshold +#define E_THR_R 0x0A +// Prox touch threshold +#define PROX_THR_T 0x02 +// Prox release threshold +#define PROX_THR_R 0x02 + +#endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/snare.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,307 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:00:17 PM +* FileName: snare_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 2203 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 2203 + +const unsigned char data_snare[NUM_ELEMENTS] = { +126, 118, 118, 119, 122, 116, 113, 110, /* 0-7 */ +110, 108, 107, 112, 105, 105, 123, 139, /* 8-15 */ +150, 156, 164, 172, 173, 179, 183, 182, /* 16-23 */ +171, 163, 160, 155, 150, 145, 139, 136, /* 24-31 */ +132, 127, 123, 115, 107, 100, 101, 93, /* 32-39 */ + 89, 85, 74, 75, 78, 70, 56, 54, /* 40-47 */ + 63, 74, 81, 84, 83, 87, 97, 110, /* 48-55 */ +125, 143, 156, 164, 170, 176, 174, 171, /* 56-63 */ +177, 177, 170, 166, 161, 163, 170, 176, /* 64-71 */ +179, 178, 177, 169, 161, 160, 157, 148, /* 72-79 */ +140, 133, 125, 126, 126, 123, 117, 111, /* 80-87 */ +103, 96, 92, 85, 81, 79, 76, 74, /* 88-95 */ + 76, 81, 79, 76, 76, 80, 80, 85, /* 96-103 */ + 88, 90, 98, 109, 120, 126, 135, 150, /* 104-111 */ +160, 164, 167, 168, 174, 185, 200, 198, /* 112-119 */ +182, 181, 179, 184, 174, 163, 165, 154, /* 120-127 */ +153, 140, 138, 139, 128, 117, 121, 120, /* 128-135 */ +107, 108, 95, 96, 92, 94, 84, 72, /* 136-143 */ + 80, 77, 77, 73, 78, 76, 77, 86, /* 144-151 */ + 99, 114, 121, 125, 130, 141, 154, 162, /* 152-159 */ +165, 160, 149, 153, 153, 151, 153, 154, /* 160-167 */ +143, 147, 154, 150, 154, 151, 156, 147, /* 168-175 */ +152, 157, 151, 146, 143, 149, 144, 131, /* 176-183 */ +118, 116, 119, 110, 102, 102, 102, 99, /* 184-191 */ + 95, 94, 100, 96, 109, 106, 100, 110, /* 192-199 */ +102, 109, 104, 102, 109, 108, 109, 116, /* 200-207 */ +126, 129, 127, 133, 133, 141, 145, 148, /* 208-215 */ +149, 143, 148, 140, 143, 139, 142, 142, /* 216-223 */ +142, 149, 147, 154, 154, 149, 152, 153, /* 224-231 */ +141, 130, 128, 130, 125, 130, 129, 113, /* 232-239 */ +108, 103, 99, 103, 100, 89, 92, 92, /* 240-247 */ + 90, 96, 107, 127, 122, 114, 123, 126, /* 248-255 */ +129, 147, 147, 139, 145, 153, 150, 153, /* 256-263 */ +148, 151, 146, 137, 152, 144, 148, 134, /* 264-271 */ +130, 129, 133, 125, 119, 119, 118, 127, /* 272-279 */ +126, 128, 118, 124, 118, 122, 124, 122, /* 280-287 */ +112, 121, 110, 105, 118, 112, 108, 108, /* 288-295 */ +115, 113, 117, 110, 118, 120, 122, 129, /* 296-303 */ +131, 145, 138, 135, 146, 141, 148, 146, /* 304-311 */ +148, 139, 129, 137, 132, 138, 141, 142, /* 312-319 */ +138, 127, 121, 118, 117, 124, 117, 117, /* 320-327 */ +115, 115, 123, 126, 117, 121, 122, 109, /* 328-335 */ +121, 129, 144, 136, 135, 141, 126, 116, /* 336-343 */ +120, 118, 121, 114, 108, 113, 114, 134, /* 344-351 */ +123, 125, 134, 147, 139, 137, 144, 145, /* 352-359 */ +147, 144, 144, 136, 139, 140, 133, 127, /* 360-367 */ +138, 121, 120, 120, 122, 124, 114, 111, /* 368-375 */ +111, 115, 120, 118, 116, 129, 113, 118, /* 376-383 */ +121, 114, 121, 131, 130, 125, 118, 123, /* 384-391 */ +126, 113, 130, 135, 124, 120, 118, 124, /* 392-399 */ +126, 119, 122, 128, 124, 129, 135, 139, /* 400-407 */ +150, 146, 141, 142, 148, 144, 142, 144, /* 408-415 */ +133, 138, 139, 135, 130, 132, 129, 121, /* 416-423 */ +121, 117, 114, 107, 114, 123, 114, 121, /* 424-431 */ +109, 116, 121, 110, 127, 118, 115, 121, /* 432-439 */ +121, 125, 132, 127, 119, 129, 130, 125, /* 440-447 */ +136, 130, 125, 123, 126, 130, 119, 135, /* 448-455 */ +142, 135, 148, 145, 131, 135, 143, 142, /* 456-463 */ +131, 136, 135, 129, 124, 119, 125, 128, /* 464-471 */ +121, 112, 113, 126, 120, 115, 120, 122, /* 472-479 */ +126, 124, 119, 120, 137, 130, 121, 129, /* 480-487 */ +122, 124, 127, 123, 119, 117, 126, 126, /* 488-495 */ +130, 138, 130, 134, 132, 132, 135, 129, /* 496-503 */ +128, 127, 124, 119, 121, 118, 117, 121, /* 504-511 */ +138, 137, 128, 137, 144, 140, 145, 146, /* 512-519 */ +133, 132, 129, 129, 130, 126, 132, 130, /* 520-527 */ +120, 124, 126, 116, 116, 126, 118, 120, /* 528-535 */ +115, 113, 112, 112, 116, 114, 115, 113, /* 536-543 */ +112, 111, 120, 121, 119, 123, 132, 132, /* 544-551 */ +136, 134, 139, 140, 145, 143, 132, 140, /* 552-559 */ +136, 140, 141, 139, 136, 140, 134, 136, /* 560-567 */ +141, 132, 137, 139, 134, 134, 132, 127, /* 568-575 */ +119, 116, 120, 111, 108, 111, 109, 111, /* 576-583 */ +111, 111, 116, 113, 124, 125, 118, 125, /* 584-591 */ +129, 126, 128, 131, 133, 133, 130, 136, /* 592-599 */ +135, 134, 136, 136, 131, 138, 127, 129, /* 600-607 */ +132, 124, 129, 124, 128, 124, 129, 127, /* 608-615 */ +125, 132, 122, 123, 121, 129, 132, 126, /* 616-623 */ +128, 132, 134, 135, 138, 123, 122, 121, /* 624-631 */ +122, 123, 115, 127, 118, 121, 125, 123, /* 632-639 */ +129, 127, 127, 127, 128, 126, 122, 125, /* 640-647 */ +124, 121, 123, 124, 121, 129, 131, 126, /* 648-655 */ +126, 125, 127, 133, 130, 130, 139, 135, /* 656-663 */ +140, 140, 137, 140, 128, 135, 133, 130, /* 664-671 */ +131, 131, 133, 128, 128, 125, 133, 122, /* 672-679 */ +116, 121, 124, 116, 112, 117, 114, 118, /* 680-687 */ +113, 119, 116, 113, 122, 125, 126, 133, /* 688-695 */ +136, 132, 127, 137, 138, 135, 129, 131, /* 696-703 */ +135, 126, 129, 128, 126, 130, 126, 124, /* 704-711 */ +134, 125, 128, 130, 126, 125, 130, 128, /* 712-719 */ +124, 128, 123, 126, 125, 124, 125, 122, /* 720-727 */ +126, 130, 124, 128, 127, 128, 128, 124, /* 728-735 */ +126, 128, 124, 123, 125, 128, 133, 131, /* 736-743 */ +126, 130, 136, 126, 130, 133, 128, 131, /* 744-751 */ +129, 134, 131, 128, 131, 124, 122, 126, /* 752-759 */ +123, 120, 120, 121, 122, 123, 128, 129, /* 760-767 */ +127, 131, 134, 132, 130, 132, 131, 128, /* 768-775 */ +128, 127, 123, 124, 122, 120, 127, 121, /* 776-783 */ +125, 126, 123, 128, 125, 128, 126, 125, /* 784-791 */ +127, 126, 126, 125, 128, 126, 125, 132, /* 792-799 */ +127, 131, 129, 131, 131, 129, 133, 131, /* 800-807 */ +132, 130, 132, 133, 130, 127, 128, 125, /* 808-815 */ +126, 126, 124, 126, 126, 128, 123, 123, /* 816-823 */ +121, 123, 130, 126, 125, 122, 121, 125, /* 824-831 */ +121, 124, 122, 122, 123, 123, 124, 126, /* 832-839 */ +128, 131, 132, 133, 132, 133, 135, 131, /* 840-847 */ +134, 136, 133, 131, 132, 128, 129, 132, /* 848-855 */ +127, 127, 126, 130, 128, 126, 131, 124, /* 856-863 */ +121, 119, 116, 121, 124, 124, 122, 125, /* 864-871 */ +120, 121, 127, 127, 126, 123, 123, 124, /* 872-879 */ +126, 128, 128, 129, 130, 125, 127, 128, /* 880-887 */ +129, 132, 130, 129, 130, 129, 132, 130, /* 888-895 */ +133, 133, 132, 133, 130, 131, 130, 130, /* 896-903 */ +125, 128, 122, 121, 124, 121, 127, 130, /* 904-911 */ +125, 125, 123, 126, 128, 130, 129, 125, /* 912-919 */ +124, 123, 128, 126, 128, 123, 120, 121, /* 920-927 */ +124, 125, 124, 126, 123, 127, 126, 124, /* 928-935 */ +127, 127, 126, 130, 131, 130, 130, 131, /* 936-943 */ +129, 130, 128, 130, 129, 131, 130, 134, /* 944-951 */ +133, 130, 134, 127, 128, 126, 128, 127, /* 952-959 */ +127, 123, 124, 125, 125, 126, 123, 122, /* 960-967 */ +123, 124, 126, 132, 129, 128, 122, 128, /* 968-975 */ +124, 120, 122, 119, 120, 121, 125, 122, /* 976-983 */ +124, 130, 127, 130, 132, 132, 130, 132, /* 984-991 */ +132, 131, 133, 131, 133, 128, 128, 131, /* 992-999 */ +130, 128, 126, 128, 124, 123, 129, 128, /* 1000-1007 */ +126, 127, 128, 129, 132, 130, 127, 128, /* 1008-1015 */ +126, 123, 123, 123, 124, 122, 122, 121, /* 1016-1023 */ +123, 129, 126, 128, 130, 126, 126, 128, /* 1024-1031 */ +125, 128, 127, 124, 124, 122, 125, 123, /* 1032-1039 */ +124, 128, 127, 129, 129, 127, 131, 127, /* 1040-1047 */ +127, 131, 127, 130, 128, 128, 128, 128, /* 1048-1055 */ +128, 130, 130, 127, 129, 129, 132, 133, /* 1056-1063 */ +133, 132, 130, 130, 129, 126, 125, 123, /* 1064-1071 */ +120, 118, 120, 123, 120, 118, 123, 124, /* 1072-1079 */ +124, 124, 129, 129, 125, 128, 127, 130, /* 1080-1087 */ +128, 128, 127, 129, 128, 126, 128, 126, /* 1088-1095 */ +129, 130, 127, 128, 130, 132, 132, 131, /* 1096-1103 */ +133, 131, 131, 128, 126, 126, 127, 124, /* 1104-1111 */ +123, 124, 123, 124, 124, 125, 124, 125, /* 1112-1119 */ +122, 124, 124, 121, 126, 123, 122, 126, /* 1120-1127 */ +127, 126, 127, 130, 131, 132, 132, 131, /* 1128-1135 */ +133, 136, 135, 132, 133, 133, 130, 129, /* 1136-1143 */ +127, 127, 128, 126, 123, 125, 125, 123, /* 1144-1151 */ +124, 127, 126, 128, 125, 126, 128, 127, /* 1152-1159 */ +126, 123, 125, 124, 121, 122, 126, 125, /* 1160-1167 */ +123, 124, 125, 127, 125, 125, 126, 126, /* 1168-1175 */ +125, 127, 127, 128, 131, 129, 133, 133, /* 1176-1183 */ +131, 135, 132, 129, 132, 133, 133, 131, /* 1184-1191 */ +131, 130, 129, 128, 125, 127, 126, 125, /* 1192-1199 */ +124, 122, 121, 120, 120, 124, 123, 125, /* 1200-1207 */ +127, 127, 128, 127, 129, 127, 125, 124, /* 1208-1215 */ +125, 125, 123, 123, 124, 125, 127, 125, /* 1216-1223 */ +125, 128, 128, 130, 131, 134, 134, 132, /* 1224-1231 */ +129, 131, 131, 128, 129, 129, 129, 130, /* 1232-1239 */ +129, 127, 129, 127, 128, 128, 127, 127, /* 1240-1247 */ +126, 126, 127, 126, 125, 126, 125, 125, /* 1248-1255 */ +125, 124, 125, 124, 125, 124, 125, 123, /* 1256-1263 */ +120, 125, 126, 125, 127, 127, 127, 127, /* 1264-1271 */ +127, 129, 126, 127, 126, 125, 126, 128, /* 1272-1279 */ +129, 129, 133, 131, 134, 134, 132, 132, /* 1280-1287 */ +131, 126, 129, 128, 128, 127, 126, 126, /* 1288-1295 */ +124, 127, 128, 128, 130, 127, 124, 128, /* 1296-1303 */ +124, 123, 126, 128, 126, 125, 124, 124, /* 1304-1311 */ +125, 126, 125, 123, 124, 124, 124, 126, /* 1312-1319 */ +129, 127, 127, 127, 129, 130, 129, 128, /* 1320-1327 */ +130, 131, 130, 127, 127, 128, 128, 127, /* 1328-1335 */ +127, 129, 126, 127, 128, 129, 129, 127, /* 1336-1343 */ +127, 129, 128, 127, 128, 127, 127, 126, /* 1344-1351 */ +127, 126, 124, 125, 126, 125, 125, 124, /* 1352-1359 */ +125, 126, 126, 127, 125, 126, 126, 125, /* 1360-1367 */ +126, 124, 125, 128, 127, 125, 128, 131, /* 1368-1375 */ +130, 131, 130, 132, 131, 131, 132, 129, /* 1376-1383 */ +129, 129, 128, 127, 129, 128, 129, 127, /* 1384-1391 */ +126, 127, 128, 128, 129, 128, 126, 129, /* 1392-1399 */ +127, 129, 127, 124, 122, 121, 120, 120, /* 1400-1407 */ +123, 119, 121, 124, 124, 126, 126, 125, /* 1408-1415 */ +128, 128, 127, 128, 125, 129, 130, 129, /* 1416-1423 */ +131, 131, 131, 131, 132, 131, 130, 130, /* 1424-1431 */ +130, 130, 128, 129, 130, 129, 131, 129, /* 1432-1439 */ +128, 125, 126, 125, 123, 124, 122, 123, /* 1440-1447 */ +123, 124, 126, 126, 127, 126, 126, 126, /* 1448-1455 */ +126, 124, 122, 123, 122, 124, 123, 125, /* 1456-1463 */ +126, 127, 129, 130, 131, 132, 133, 134, /* 1464-1471 */ +133, 132, 133, 130, 128, 129, 128, 127, /* 1472-1479 */ +126, 126, 126, 125, 125, 126, 127, 128, /* 1480-1487 */ +127, 126, 125, 125, 126, 126, 126, 125, /* 1488-1495 */ +124, 125, 124, 125, 126, 124, 124, 124, /* 1496-1503 */ +125, 128, 128, 127, 128, 127, 126, 127, /* 1504-1511 */ +127, 126, 127, 129, 127, 126, 126, 128, /* 1512-1519 */ +128, 128, 129, 130, 130, 131, 130, 132, /* 1520-1527 */ +130, 130, 130, 128, 128, 125, 126, 126, /* 1528-1535 */ +125, 124, 124, 127, 127, 129, 129, 129, /* 1536-1543 */ +129, 129, 128, 126, 125, 124, 122, 121, /* 1544-1551 */ +121, 121, 121, 123, 125, 125, 126, 126, /* 1552-1559 */ +128, 127, 129, 130, 130, 130, 131, 132, /* 1560-1567 */ +130, 130, 130, 131, 129, 129, 129, 129, /* 1568-1575 */ +128, 128, 130, 129, 128, 128, 129, 126, /* 1576-1583 */ +126, 126, 124, 124, 123, 123, 122, 122, /* 1584-1591 */ +122, 121, 125, 124, 124, 125, 125, 124, /* 1592-1599 */ +124, 127, 126, 128, 127, 128, 128, 127, /* 1600-1607 */ +128, 127, 127, 127, 129, 130, 129, 131, /* 1608-1615 */ +132, 131, 133, 133, 131, 130, 129, 129, /* 1616-1623 */ +128, 126, 126, 125, 126, 126, 125, 127, /* 1624-1631 */ +126, 127, 127, 127, 127, 127, 127, 125, /* 1632-1639 */ +125, 124, 123, 124, 124, 124, 124, 123, /* 1640-1647 */ +123, 123, 125, 126, 126, 126, 127, 127, /* 1648-1655 */ +128, 129, 128, 128, 128, 128, 127, 128, /* 1656-1663 */ +127, 129, 130, 130, 130, 129, 130, 130, /* 1664-1671 */ +129, 130, 129, 128, 128, 127, 127, 125, /* 1672-1679 */ +125, 124, 125, 125, 125, 126, 125, 125, /* 1680-1687 */ +126, 125, 124, 125, 124, 125, 125, 127, /* 1688-1695 */ +126, 127, 127, 126, 125, 125, 126, 126, /* 1696-1703 */ +127, 128, 129, 131, 131, 133, 133, 133, /* 1704-1711 */ +132, 131, 130, 130, 129, 127, 128, 126, /* 1712-1719 */ +126, 126, 127, 127, 127, 128, 128, 127, /* 1720-1727 */ +126, 126, 124, 122, 122, 122, 122, 123, /* 1728-1735 */ +123, 124, 124, 124, 125, 126, 125, 127, /* 1736-1743 */ +127, 129, 129, 130, 129, 130, 129, 128, /* 1744-1751 */ +128, 128, 127, 127, 127, 128, 128, 128, /* 1752-1759 */ +130, 130, 129, 129, 129, 129, 128, 128, /* 1760-1767 */ +128, 127, 127, 126, 126, 125, 126, 126, /* 1768-1775 */ +125, 125, 125, 125, 126, 127, 127, 127, /* 1776-1783 */ +127, 128, 130, 128, 127, 126, 125, 124, /* 1784-1791 */ +124, 124, 125, 125, 126, 128, 127, 130, /* 1792-1799 */ +129, 129, 129, 129, 128, 125, 127, 126, /* 1800-1807 */ +125, 126, 127, 128, 127, 128, 128, 129, /* 1808-1815 */ +130, 131, 130, 130, 130, 128, 127, 127, /* 1816-1823 */ +126, 126, 125, 124, 124, 124, 124, 124, /* 1824-1831 */ +125, 125, 124, 125, 125, 125, 127, 127, /* 1832-1839 */ +127, 126, 127, 126, 126, 127, 125, 125, /* 1840-1847 */ +127, 127, 127, 129, 129, 130, 131, 131, /* 1848-1855 */ +130, 131, 129, 129, 131, 129, 129, 128, /* 1856-1863 */ +128, 127, 127, 126, 127, 125, 125, 125, /* 1864-1871 */ +125, 126, 127, 127, 127, 127, 126, 126, /* 1872-1879 */ +124, 124, 124, 124, 124, 124, 124, 126, /* 1880-1887 */ +126, 127, 129, 130, 128, 130, 130, 130, /* 1888-1895 */ +129, 128, 128, 126, 127, 128, 128, 128, /* 1896-1903 */ +128, 128, 129, 128, 129, 129, 129, 127, /* 1904-1911 */ +128, 127, 127, 128, 126, 125, 124, 124, /* 1912-1919 */ +123, 123, 123, 124, 125, 126, 125, 126, /* 1920-1927 */ +126, 127, 127, 128, 128, 128, 126, 127, /* 1928-1935 */ +127, 126, 126, 126, 127, 129, 129, 128, /* 1936-1943 */ +130, 130, 130, 130, 130, 130, 129, 131, /* 1944-1951 */ +130, 131, 130, 129, 128, 127, 128, 126, /* 1952-1959 */ +125, 125, 126, 126, 127, 128, 128, 127, /* 1960-1967 */ +128, 127, 126, 125, 124, 122, 122, 122, /* 1968-1975 */ +123, 124, 124, 125, 126, 126, 128, 128, /* 1976-1983 */ +128, 128, 128, 128, 126, 126, 125, 126, /* 1984-1991 */ +126, 128, 128, 129, 129, 129, 130, 131, /* 1992-1999 */ +131, 130, 131, 131, 131, 131, 131, 130, /* 2000-2007 */ +129, 128, 127, 126, 126, 125, 125, 125, /* 2008-2015 */ +125, 125, 126, 124, 124, 124, 125, 125, /* 2016-2023 */ +124, 123, 124, 124, 124, 124, 124, 125, /* 2024-2031 */ +125, 127, 127, 128, 128, 128, 129, 129, /* 2032-2039 */ +131, 131, 131, 132, 132, 132, 131, 130, /* 2040-2047 */ +129, 129, 128, 128, 128, 129, 129, 129, /* 2048-2055 */ +130, 129, 128, 128, 126, 125, 124, 123, /* 2056-2063 */ +122, 121, 121, 122, 122, 122, 124, 124, /* 2064-2071 */ +124, 125, 126, 127, 127, 127, 127, 128, /* 2072-2079 */ +127, 127, 128, 128, 128, 129, 128, 129, /* 2080-2087 */ +128, 128, 128, 128, 129, 130, 130, 130, /* 2088-2095 */ +131, 132, 131, 129, 129, 128, 127, 128, /* 2096-2103 */ +127, 125, 125, 125, 126, 126, 126, 126, /* 2104-2111 */ +126, 125, 125, 126, 127, 125, 125, 126, /* 2112-2119 */ +126, 124, 124, 125, 125, 125, 126, 126, /* 2120-2127 */ +125, 126, 126, 128, 127, 128, 130, 128, /* 2128-2135 */ +129, 128, 128, 128, 127, 127, 127, 127, /* 2136-2143 */ +128, 128, 129, 130, 129, 130, 130, 130, /* 2144-2151 */ +129, 129, 127, 127, 125, 126, 125, 125, /* 2152-2159 */ +125, 125, 123, 123, 125, 125, 125, 125, /* 2160-2167 */ +125, 125, 125, 125, 125, 126, 126, 126, /* 2168-2175 */ +126, 126, 126, 127, 127, 127, 127, 128, /* 2176-2183 */ +129, 130, 130, 130, 130, 130, 130, 130, /* 2184-2191 */ +129, 129, 129, 129, 128, 128, 128, 127, /* 2192-2199 */ +127, 128, 127}; /* 2200-2202 */ + + +//get and set the frequency from wav conversion tool GUI +int sn=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_snare() +{ + + speaker = data_snare[sn]/255.0;//scale to 0.0 to 1.0 for PWM + sn++; + if (sn>= NUM_ELEMENTS) { + sn = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sound.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,21 @@ +#include "mbed.h" +#include "rtos.h" +#include "SDFileSystem.h" +#include "wave_player.h" +#include <string> + +using namespace std; + + +//debugging + +//string current; + +void sound(string wavefilename) { + FILE *wave_file; + // wave_file=fopen("/sd/sunflower_clip.wav","r"); + // current = "/sd/" + + wave_file=fopen(wavefilename,"r"); + waver.play(wave_file); + fclose(wave_file); +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/splash.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,845 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 06:01:47 PM +* FileName: splash_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 6525 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 6525 + +const unsigned char data_splash[NUM_ELEMENTS] = { +128, 129, 125, 128, 126, 125, 128, 122, /* 0-7 */ +128, 127, 125, 131, 128, 130, 130, 125, /* 8-15 */ +125, 125, 129, 124, 129, 130, 127, 126, /* 16-23 */ +126, 127, 128, 128, 126, 128, 126, 128, /* 24-31 */ +127, 127, 130, 128, 127, 127, 126, 124, /* 32-39 */ +126, 126, 127, 124, 126, 131, 134, 133, /* 40-47 */ +125, 128, 125, 117, 118, 118, 128, 135, /* 48-55 */ +136, 135, 138, 128, 124, 119, 115, 125, /* 56-63 */ +124, 124, 132, 131, 129, 128, 128, 132, /* 64-71 */ +128, 126, 127, 126, 124, 124, 126, 126, /* 72-79 */ +126, 125, 123, 130, 134, 131, 129, 128, /* 80-87 */ +126, 120, 118, 126, 131, 132, 135, 133, /* 88-95 */ +129, 130, 124, 119, 122, 122, 124, 124, /* 96-103 */ +127, 135, 133, 127, 128, 133, 127, 123, /* 104-111 */ +123, 125, 126, 121, 128, 132, 130, 129, /* 112-119 */ +128, 125, 126, 124, 122, 129, 130, 128, /* 120-127 */ +127, 127, 128, 125, 124, 132, 135, 125, /* 128-135 */ +121, 125, 121, 121, 124, 127, 136, 140, /* 136-143 */ +130, 127, 127, 128, 120, 114, 123, 131, /* 144-151 */ +130, 127, 131, 132, 129, 123, 122, 124, /* 152-159 */ +126, 125, 125, 128, 133, 131, 124, 128, /* 160-167 */ +129, 126, 120, 125, 129, 128, 123, 121, /* 168-175 */ +129, 124, 130, 132, 133, 135, 126, 125, /* 176-183 */ +123, 125, 125, 122, 124, 128, 125, 129, /* 184-191 */ +130, 129, 130, 130, 129, 122, 122, 123, /* 192-199 */ +124, 123, 132, 136, 131, 133, 132, 129, /* 200-207 */ +116, 116, 119, 117, 120, 135, 137, 137, /* 208-215 */ +136, 137, 131, 121, 115, 112, 118, 118, /* 216-223 */ +129, 133, 140, 142, 132, 125, 120, 121, /* 224-231 */ +120, 122, 130, 136, 129, 124, 132, 129, /* 232-239 */ +123, 129, 129, 124, 121, 119, 118, 123, /* 240-247 */ +130, 138, 136, 135, 133, 128, 118, 122, /* 248-255 */ +125, 120, 122, 120, 130, 131, 131, 132, /* 256-263 */ +134, 135, 136, 118, 115, 124, 119, 121, /* 264-271 */ +126, 131, 135, 133, 127, 145, 135, 118, /* 272-279 */ +121, 115, 119, 119, 123, 133, 138, 136, /* 280-287 */ +130, 131, 131, 132, 120, 118, 128, 126, /* 288-295 */ +118, 120, 128, 129, 134, 125, 130, 137, /* 296-303 */ +136, 132, 123, 119, 120, 124, 111, 124, /* 304-311 */ +135, 135, 130, 134, 137, 128, 126, 118, /* 312-319 */ +121, 121, 126, 129, 128, 126, 133, 126, /* 320-327 */ +125, 138, 132, 127, 125, 126, 111, 124, /* 328-335 */ +130, 128, 127, 124, 138, 130, 113, 129, /* 336-343 */ +138, 124, 127, 126, 122, 131, 125, 126, /* 344-351 */ +130, 125, 127, 121, 119, 139, 138, 118, /* 352-359 */ +133, 134, 126, 120, 118, 124, 129, 128, /* 360-367 */ +123, 130, 134, 135, 125, 120, 126, 132, /* 368-375 */ +119, 118, 134, 135, 130, 124, 120, 123, /* 376-383 */ +131, 123, 124, 131, 135, 133, 123, 125, /* 384-391 */ +128, 129, 115, 119, 135, 134, 136, 132, /* 392-399 */ +125, 127, 120, 115, 125, 119, 129, 135, /* 400-407 */ +129, 135, 137, 131, 117, 122, 125, 121, /* 408-415 */ +129, 129, 124, 136, 135, 124, 126, 123, /* 416-423 */ +129, 128, 116, 125, 134, 127, 130, 131, /* 424-431 */ +126, 131, 129, 119, 123, 133, 131, 122, /* 432-439 */ +116, 126, 136, 124, 119, 134, 135, 134, /* 440-447 */ +133, 120, 129, 130, 107, 111, 128, 139, /* 448-455 */ +135, 122, 136, 142, 128, 116, 117, 124, /* 456-463 */ +125, 121, 124, 134, 140, 132, 124, 127, /* 464-471 */ +127, 129, 120, 120, 125, 130, 126, 125, /* 472-479 */ +127, 128, 131, 128, 131, 131, 128, 124, /* 480-487 */ +116, 120, 124, 128, 132, 127, 135, 134, /* 488-495 */ +129, 128, 122, 123, 128, 121, 118, 128, /* 496-503 */ +132, 128, 131, 126, 135, 136, 120, 122, /* 504-511 */ +125, 126, 124, 122, 124, 137, 135, 117, /* 512-519 */ +121, 134, 135, 133, 124, 122, 132, 119, /* 520-527 */ +109, 125, 132, 139, 132, 122, 133, 140, /* 528-535 */ +124, 121, 125, 117, 125, 122, 128, 133, /* 536-543 */ +134, 128, 127, 125, 125, 126, 118, 125, /* 544-551 */ +133, 128, 128, 133, 129, 129, 117, 122, /* 552-559 */ +124, 132, 136, 129, 119, 124, 129, 126, /* 560-567 */ +126, 129, 136, 127, 120, 126, 124, 127, /* 568-575 */ +135, 121, 127, 137, 125, 125, 128, 124, /* 576-583 */ +133, 116, 121, 136, 135, 124, 129, 129, /* 584-591 */ +122, 136, 122, 125, 126, 121, 129, 125, /* 592-599 */ +121, 138, 132, 117, 136, 128, 118, 131, /* 600-607 */ +122, 125, 134, 128, 127, 122, 121, 137, /* 608-615 */ +130, 122, 134, 129, 122, 117, 129, 130, /* 616-623 */ +129, 124, 128, 133, 129, 131, 119, 121, /* 624-631 */ +123, 127, 125, 131, 140, 133, 122, 119, /* 632-639 */ +130, 120, 122, 131, 126, 131, 131, 121, /* 640-647 */ +126, 132, 129, 129, 123, 127, 130, 123, /* 648-655 */ +126, 127, 124, 125, 127, 123, 126, 136, /* 656-663 */ +134, 126, 128, 128, 123, 124, 117, 126, /* 664-671 */ +132, 130, 134, 124, 128, 133, 122, 125, /* 672-679 */ +130, 129, 130, 115, 118, 129, 127, 134, /* 680-687 */ +136, 132, 129, 125, 123, 121, 125, 124, /* 688-695 */ +124, 130, 126, 129, 131, 127, 136, 136, /* 696-703 */ +118, 129, 121, 118, 124, 110, 131, 142, /* 704-711 */ +132, 139, 134, 127, 125, 118, 116, 122, /* 712-719 */ +129, 125, 132, 134, 130, 127, 126, 128, /* 720-727 */ +123, 121, 130, 142, 128, 122, 123, 119, /* 728-735 */ +125, 125, 127, 135, 136, 136, 123, 119, /* 736-743 */ +126, 123, 112, 119, 131, 136, 136, 136, /* 744-751 */ +138, 130, 125, 112, 119, 115, 122, 128, /* 752-759 */ +125, 140, 139, 129, 130, 127, 121, 125, /* 760-767 */ +113, 121, 140, 128, 125, 135, 128, 134, /* 768-775 */ +129, 114, 125, 126, 125, 123, 129, 134, /* 776-783 */ +129, 127, 118, 132, 128, 124, 139, 130, /* 784-791 */ +120, 125, 124, 126, 130, 124, 131, 129, /* 792-799 */ +121, 126, 132, 126, 127, 125, 129, 132, /* 800-807 */ +125, 127, 120, 126, 135, 117, 124, 138, /* 808-815 */ +133, 129, 123, 127, 130, 128, 121, 122, /* 816-823 */ +126, 129, 130, 122, 132, 138, 130, 120, /* 824-831 */ +120, 131, 127, 120, 125, 133, 127, 129, /* 832-839 */ +127, 122, 133, 130, 119, 133, 132, 124, /* 840-847 */ +134, 118, 118, 127, 118, 127, 139, 129, /* 848-855 */ +136, 137, 122, 126, 131, 117, 119, 126, /* 856-863 */ +116, 133, 134, 126, 143, 134, 119, 127, /* 864-871 */ +113, 117, 139, 122, 126, 143, 127, 127, /* 872-879 */ +128, 124, 128, 130, 116, 122, 131, 126, /* 880-887 */ +135, 120, 125, 137, 133, 119, 127, 129, /* 888-895 */ +126, 123, 115, 130, 139, 129, 128, 126, /* 896-903 */ +118, 133, 128, 121, 126, 132, 132, 120, /* 904-911 */ +128, 129, 130, 131, 119, 127, 129, 120, /* 912-919 */ +129, 125, 126, 136, 122, 116, 137, 135, /* 920-927 */ +126, 136, 124, 126, 135, 113, 122, 132, /* 928-935 */ +122, 129, 125, 124, 140, 133, 114, 136, /* 936-943 */ +133, 116, 134, 125, 120, 130, 121, 118, /* 944-951 */ +134, 130, 126, 136, 126, 127, 133, 120, /* 952-959 */ +122, 134, 122, 126, 130, 117, 130, 137, /* 960-967 */ +125, 124, 131, 128, 130, 126, 114, 129, /* 968-975 */ +126, 120, 131, 134, 129, 137, 127, 114, /* 976-983 */ +131, 132, 126, 124, 119, 128, 134, 118, /* 984-991 */ +128, 135, 128, 133, 127, 122, 129, 130, /* 992-999 */ +119, 122, 127, 129, 128, 122, 131, 131, /* 1000-1007 */ +119, 127, 133, 130, 127, 129, 120, 127, /* 1008-1015 */ +131, 123, 124, 123, 131, 132, 120, 121, /* 1016-1023 */ +138, 128, 130, 131, 120, 125, 131, 118, /* 1024-1031 */ +119, 137, 125, 128, 127, 128, 136, 129, /* 1032-1039 */ +117, 121, 128, 121, 132, 129, 124, 140, /* 1040-1047 */ +129, 122, 126, 125, 126, 125, 122, 127, /* 1048-1055 */ +134, 130, 129, 123, 125, 123, 120, 126, /* 1056-1063 */ +130, 140, 133, 118, 129, 126, 120, 126, /* 1064-1071 */ +122, 128, 136, 131, 124, 134, 130, 126, /* 1072-1079 */ +121, 113, 126, 131, 124, 126, 136, 135, /* 1080-1087 */ +136, 126, 120, 125, 120, 113, 119, 136, /* 1088-1095 */ +140, 136, 126, 131, 132, 120, 125, 118, /* 1096-1103 */ +132, 128, 120, 125, 124, 133, 132, 128, /* 1104-1111 */ +126, 132, 124, 125, 129, 126, 127, 129, /* 1112-1119 */ +120, 123, 128, 133, 135, 119, 129, 130, /* 1120-1127 */ +128, 128, 122, 125, 127, 126, 121, 128, /* 1128-1135 */ +132, 134, 131, 121, 132, 131, 120, 124, /* 1136-1143 */ +120, 124, 130, 124, 129, 138, 135, 125, /* 1144-1151 */ +127, 127, 124, 127, 116, 125, 131, 128, /* 1152-1159 */ +131, 131, 137, 128, 125, 118, 122, 127, /* 1160-1167 */ +123, 127, 128, 133, 134, 125, 126, 128, /* 1168-1175 */ +124, 120, 118, 130, 130, 130, 130, 121, /* 1176-1183 */ +132, 133, 126, 123, 126, 132, 126, 124, /* 1184-1191 */ +119, 131, 125, 121, 128, 129, 130, 133, /* 1192-1199 */ +130, 120, 135, 131, 122, 123, 121, 124, /* 1200-1207 */ +126, 122, 136, 135, 130, 135, 126, 122, /* 1208-1215 */ +126, 128, 115, 119, 135, 130, 132, 131, /* 1216-1223 */ +128, 130, 118, 124, 124, 122, 135, 128, /* 1224-1231 */ +120, 134, 129, 130, 124, 121, 134, 129, /* 1232-1239 */ +123, 130, 125, 124, 133, 119, 122, 134, /* 1240-1247 */ +129, 124, 125, 130, 132, 129, 124, 128, /* 1248-1255 */ +131, 121, 121, 127, 127, 128, 130, 126, /* 1256-1263 */ +128, 132, 128, 123, 129, 131, 120, 127, /* 1264-1271 */ +123, 128, 132, 124, 129, 133, 124, 126, /* 1272-1279 */ +130, 117, 130, 130, 120, 130, 132, 124, /* 1280-1287 */ +128, 129, 125, 132, 127, 127, 129, 119, /* 1288-1295 */ +126, 131, 123, 122, 135, 129, 132, 130, /* 1296-1303 */ +120, 126, 127, 126, 128, 125, 129, 132, /* 1304-1311 */ +117, 123, 130, 130, 127, 126, 129, 124, /* 1312-1319 */ +128, 124, 126, 132, 125, 129, 122, 129, /* 1320-1327 */ +137, 122, 119, 130, 130, 122, 124, 125, /* 1328-1335 */ +129, 132, 130, 122, 131, 127, 124, 119, /* 1336-1343 */ +126, 132, 130, 127, 126, 136, 121, 123, /* 1344-1351 */ +124, 120, 134, 131, 127, 132, 131, 127, /* 1352-1359 */ +122, 124, 122, 128, 125, 117, 136, 135, /* 1360-1367 */ +122, 137, 126, 119, 131, 122, 120, 131, /* 1368-1375 */ +127, 128, 141, 124, 131, 130, 112, 129, /* 1376-1383 */ +124, 119, 130, 132, 124, 129, 132, 125, /* 1384-1391 */ +129, 126, 121, 129, 123, 121, 133, 131, /* 1392-1399 */ +134, 126, 121, 125, 126, 129, 122, 130, /* 1400-1407 */ +132, 133, 123, 126, 132, 127, 123, 117, /* 1408-1415 */ +127, 131, 129, 131, 127, 133, 129, 118, /* 1416-1423 */ +125, 127, 130, 126, 123, 132, 129, 131, /* 1424-1431 */ +126, 128, 129, 124, 124, 117, 132, 128, /* 1432-1439 */ +124, 130, 130, 133, 127, 123, 126, 131, /* 1440-1447 */ +119, 127, 128, 121, 131, 127, 124, 134, /* 1448-1455 */ +129, 126, 128, 125, 133, 124, 123, 129, /* 1456-1463 */ +122, 131, 123, 128, 133, 127, 127, 126, /* 1464-1471 */ +123, 123, 131, 119, 131, 137, 124, 127, /* 1472-1479 */ +130, 121, 130, 126, 120, 134, 125, 123, /* 1480-1487 */ +131, 127, 125, 134, 122, 126, 131, 121, /* 1488-1495 */ +131, 132, 126, 123, 126, 125, 122, 128, /* 1496-1503 */ +126, 131, 133, 129, 122, 125, 131, 122, /* 1504-1511 */ +129, 125, 130, 132, 127, 124, 131, 126, /* 1512-1519 */ +122, 126, 122, 132, 129, 125, 131, 138, /* 1520-1527 */ +120, 125, 128, 122, 131, 118, 120, 135, /* 1528-1535 */ +129, 125, 132, 129, 132, 131, 120, 127, /* 1536-1543 */ +126, 124, 129, 125, 129, 128, 125, 123, /* 1544-1551 */ +129, 137, 131, 128, 126, 125, 126, 116, /* 1552-1559 */ +123, 133, 122, 133, 129, 130, 136, 129, /* 1560-1567 */ +125, 124, 119, 122, 128, 119, 129, 135, /* 1568-1575 */ +129, 129, 129, 126, 127, 129, 125, 127, /* 1576-1583 */ +126, 122, 128, 125, 126, 130, 128, 125, /* 1584-1591 */ +134, 128, 131, 131, 126, 125, 120, 131, /* 1592-1599 */ +125, 123, 124, 127, 132, 129, 128, 131, /* 1600-1607 */ +130, 120, 123, 127, 125, 127, 128, 125, /* 1608-1615 */ +131, 129, 124, 134, 131, 125, 126, 121, /* 1616-1623 */ +128, 129, 119, 122, 137, 127, 130, 125, /* 1624-1631 */ +122, 138, 124, 125, 132, 124, 124, 129, /* 1632-1639 */ +113, 130, 132, 123, 132, 131, 129, 132, /* 1640-1647 */ +118, 118, 137, 123, 127, 131, 125, 130, /* 1648-1655 */ +129, 122, 131, 135, 116, 124, 124, 124, /* 1656-1663 */ +137, 130, 125, 134, 127, 122, 130, 123, /* 1664-1671 */ +123, 128, 123, 125, 130, 132, 123, 130, /* 1672-1679 */ +128, 128, 134, 124, 123, 128, 121, 122, /* 1680-1687 */ +132, 121, 132, 133, 129, 130, 126, 128, /* 1688-1695 */ +126, 124, 121, 131, 127, 124, 129, 130, /* 1696-1703 */ +128, 131, 129, 122, 131, 128, 120, 122, /* 1704-1711 */ +125, 126, 128, 130, 131, 134, 130, 127, /* 1712-1719 */ +119, 127, 129, 124, 124, 121, 135, 129, /* 1720-1727 */ +126, 131, 127, 127, 123, 123, 127, 130, /* 1728-1735 */ +126, 128, 125, 129, 132, 123, 122, 126, /* 1736-1743 */ +127, 129, 129, 127, 129, 121, 124, 127, /* 1744-1751 */ +135, 128, 123, 127, 124, 137, 125, 118, /* 1752-1759 */ +134, 128, 123, 127, 124, 129, 132, 121, /* 1760-1767 */ +125, 130, 128, 130, 132, 121, 127, 132, /* 1768-1775 */ +115, 127, 127, 127, 135, 127, 125, 128, /* 1776-1783 */ +126, 124, 130, 119, 133, 135, 120, 126, /* 1784-1791 */ +126, 127, 127, 125, 132, 130, 126, 128, /* 1792-1799 */ +123, 127, 128, 126, 125, 125, 128, 125, /* 1800-1807 */ +124, 127, 136, 131, 118, 131, 129, 124, /* 1808-1815 */ +122, 121, 125, 129, 131, 125, 131, 134, /* 1816-1823 */ +135, 125, 119, 125, 125, 122, 127, 127, /* 1824-1831 */ +128, 134, 125, 128, 127, 127, 129, 125, /* 1832-1839 */ +122, 130, 131, 122, 130, 125, 121, 127, /* 1840-1847 */ +123, 126, 134, 128, 130, 132, 124, 128, /* 1848-1855 */ +120, 114, 127, 132, 125, 131, 131, 132, /* 1856-1863 */ +137, 121, 120, 124, 125, 121, 122, 130, /* 1864-1871 */ +135, 138, 123, 126, 131, 129, 128, 122, /* 1872-1879 */ +122, 129, 128, 125, 129, 127, 133, 127, /* 1880-1887 */ +123, 126, 129, 129, 126, 123, 126, 129, /* 1888-1895 */ +125, 127, 129, 130, 127, 124, 124, 127, /* 1896-1903 */ +129, 127, 125, 125, 129, 131, 124, 130, /* 1904-1911 */ +131, 124, 127, 122, 125, 134, 122, 122, /* 1912-1919 */ +128, 129, 135, 129, 126, 129, 128, 120, /* 1920-1927 */ +123, 124, 128, 134, 123, 125, 132, 130, /* 1928-1935 */ +130, 128, 120, 130, 126, 121, 130, 126, /* 1936-1943 */ +128, 129, 124, 129, 132, 126, 127, 127, /* 1944-1951 */ +121, 128, 122, 123, 130, 131, 126, 127, /* 1952-1959 */ +131, 133, 129, 120, 126, 125, 125, 121, /* 1960-1967 */ +129, 133, 127, 129, 126, 123, 130, 133, /* 1968-1975 */ +121, 127, 130, 125, 128, 123, 130, 135, /* 1976-1983 */ +127, 123, 128, 125, 124, 130, 121, 126, /* 1984-1991 */ +136, 127, 127, 131, 124, 128, 120, 122, /* 1992-1999 */ +128, 126, 132, 129, 128, 126, 131, 127, /* 2000-2007 */ +121, 125, 130, 128, 126, 130, 131, 128, /* 2008-2015 */ +122, 123, 127, 127, 129, 128, 127, 128, /* 2016-2023 */ +129, 123, 126, 127, 130, 126, 122, 133, /* 2024-2031 */ +131, 132, 123, 125, 126, 126, 126, 117, /* 2032-2039 */ +132, 133, 127, 127, 127, 132, 132, 119, /* 2040-2047 */ +124, 127, 128, 128, 120, 130, 131, 129, /* 2048-2055 */ +121, 124, 133, 126, 129, 128, 126, 128, /* 2056-2063 */ +129, 125, 126, 128, 123, 129, 123, 130, /* 2064-2071 */ +134, 125, 128, 129, 125, 120, 123, 133, /* 2072-2079 */ +131, 126, 127, 127, 128, 127, 129, 126, /* 2080-2087 */ +120, 132, 128, 120, 126, 131, 130, 124, /* 2088-2095 */ +125, 131, 128, 128, 133, 123, 122, 131, /* 2096-2103 */ +128, 120, 125, 128, 128, 128, 127, 131, /* 2104-2111 */ +129, 129, 127, 122, 121, 131, 130, 120, /* 2112-2119 */ +127, 132, 129, 125, 127, 129, 126, 126, /* 2120-2127 */ +126, 130, 129, 124, 121, 130, 126, 127, /* 2128-2135 */ +127, 124, 138, 129, 116, 127, 130, 126, /* 2136-2143 */ +127, 122, 128, 134, 125, 124, 127, 128, /* 2144-2151 */ +129, 126, 119, 131, 135, 121, 127, 125, /* 2152-2159 */ +131, 126, 122, 127, 129, 127, 126, 131, /* 2160-2167 */ +126, 131, 125, 123, 126, 128, 124, 128, /* 2168-2175 */ +126, 128, 129, 122, 131, 130, 130, 128, /* 2176-2183 */ +125, 125, 124, 131, 125, 126, 128, 129, /* 2184-2191 */ +127, 125, 133, 126, 131, 130, 121, 118, /* 2192-2199 */ +124, 131, 131, 123, 129, 136, 128, 126, /* 2200-2207 */ +128, 124, 122, 132, 115, 125, 129, 127, /* 2208-2215 */ +133, 122, 132, 137, 125, 126, 129, 121, /* 2216-2223 */ +120, 126, 122, 131, 129, 127, 129, 128, /* 2224-2231 */ +131, 132, 127, 125, 130, 120, 121, 124, /* 2232-2239 */ +135, 123, 129, 130, 128, 134, 120, 128, /* 2240-2247 */ +127, 128, 124, 122, 125, 130, 131, 121, /* 2248-2255 */ +126, 131, 128, 130, 124, 128, 131, 120, /* 2256-2263 */ +124, 128, 121, 131, 127, 129, 133, 129, /* 2264-2271 */ +127, 132, 124, 117, 127, 115, 129, 135, /* 2272-2279 */ +126, 133, 130, 126, 127, 126, 123, 130, /* 2280-2287 */ +126, 122, 132, 129, 127, 131, 124, 124, /* 2288-2295 */ +126, 125, 130, 127, 130, 128, 127, 128, /* 2296-2303 */ +125, 128, 122, 129, 127, 129, 126, 128, /* 2304-2311 */ +132, 120, 126, 124, 126, 129, 128, 126, /* 2312-2319 */ +135, 127, 125, 128, 123, 128, 126, 119, /* 2320-2327 */ +128, 130, 126, 132, 129, 130, 129, 120, /* 2328-2335 */ +128, 125, 128, 125, 124, 130, 129, 130, /* 2336-2343 */ +126, 128, 128, 124, 122, 127, 125, 132, /* 2344-2351 */ +127, 123, 129, 131, 127, 128, 128, 121, /* 2352-2359 */ +132, 119, 122, 134, 126, 130, 129, 126, /* 2360-2367 */ +127, 127, 125, 127, 127, 121, 132, 124, /* 2368-2375 */ +129, 135, 124, 125, 129, 122, 124, 129, /* 2376-2383 */ +129, 129, 128, 125, 131, 128, 121, 131, /* 2384-2391 */ +124, 124, 131, 126, 129, 131, 125, 125, /* 2392-2399 */ +122, 127, 128, 124, 127, 134, 128, 124, /* 2400-2407 */ +131, 125, 126, 125, 123, 130, 126, 128, /* 2408-2415 */ +133, 124, 129, 128, 120, 125, 131, 125, /* 2416-2423 */ +125, 130, 126, 133, 125, 125, 132, 123, /* 2424-2431 */ +124, 123, 129, 129, 130, 127, 125, 130, /* 2432-2439 */ +124, 127, 126, 129, 126, 124, 127, 132, /* 2440-2447 */ +128, 127, 125, 125, 129, 121, 128, 126, /* 2448-2455 */ +129, 130, 129, 125, 130, 134, 123, 123, /* 2456-2463 */ +125, 124, 127, 125, 128, 130, 130, 129, /* 2464-2471 */ +124, 125, 128, 129, 121, 126, 130, 129, /* 2472-2479 */ +128, 130, 126, 125, 125, 128, 124, 126, /* 2480-2487 */ +129, 128, 128, 125, 132, 126, 127, 129, /* 2488-2495 */ +126, 122, 125, 129, 131, 130, 124, 129, /* 2496-2503 */ +127, 124, 126, 120, 128, 135, 124, 128, /* 2504-2511 */ +130, 127, 129, 122, 122, 128, 125, 130, /* 2512-2519 */ +126, 125, 128, 132, 128, 124, 127, 128, /* 2520-2527 */ +130, 124, 127, 123, 124, 128, 127, 127, /* 2528-2535 */ +127, 127, 129, 127, 125, 126, 128, 129, /* 2536-2543 */ +127, 127, 125, 129, 124, 125, 132, 125, /* 2544-2551 */ +130, 130, 128, 126, 123, 123, 128, 130, /* 2552-2559 */ +121, 128, 132, 131, 130, 126, 126, 127, /* 2560-2567 */ +125, 124, 121, 126, 135, 129, 126, 128, /* 2568-2575 */ +130, 129, 125, 125, 125, 127, 125, 129, /* 2576-2583 */ +127, 128, 135, 126, 125, 123, 126, 129, /* 2584-2591 */ +127, 128, 125, 126, 128, 128, 127, 123, /* 2592-2599 */ +130, 128, 125, 127, 126, 133, 126, 131, /* 2600-2607 */ +125, 118, 129, 125, 127, 126, 128, 130, /* 2608-2615 */ +133, 128, 123, 127, 124, 129, 125, 121, /* 2616-2623 */ +128, 135, 128, 129, 124, 124, 131, 124, /* 2624-2631 */ +123, 128, 133, 129, 131, 121, 121, 132, /* 2632-2639 */ +122, 128, 128, 127, 130, 127, 126, 128, /* 2640-2647 */ +128, 124, 127, 126, 124, 128, 128, 128, /* 2648-2655 */ +132, 128, 128, 127, 127, 125, 119, 127, /* 2656-2663 */ +127, 132, 127, 127, 130, 128, 131, 123, /* 2664-2671 */ +124, 129, 131, 125, 123, 126, 127, 128, /* 2672-2679 */ +127, 127, 126, 131, 127, 126, 124, 128, /* 2680-2687 */ +132, 125, 126, 125, 125, 127, 131, 124, /* 2688-2695 */ +126, 132, 126, 130, 125, 128, 125, 125, /* 2696-2703 */ +126, 125, 127, 125, 134, 130, 123, 129, /* 2704-2711 */ +130, 122, 128, 125, 120, 128, 131, 128, /* 2712-2719 */ +128, 129, 128, 132, 122, 122, 129, 126, /* 2720-2727 */ +126, 126, 127, 125, 134, 130, 122, 125, /* 2728-2735 */ +128, 128, 126, 127, 127, 131, 124, 127, /* 2736-2743 */ +127, 125, 126, 133, 123, 124, 134, 127, /* 2744-2751 */ +131, 127, 125, 128, 122, 128, 128, 125, /* 2752-2759 */ +126, 134, 128, 125, 131, 122, 127, 124, /* 2760-2767 */ +124, 125, 126, 132, 135, 125, 124, 130, /* 2768-2775 */ +125, 127, 126, 124, 130, 132, 124, 126, /* 2776-2783 */ +125, 127, 130, 121, 125, 132, 127, 130, /* 2784-2791 */ +128, 122, 130, 128, 122, 125, 123, 129, /* 2792-2799 */ +130, 126, 128, 131, 129, 128, 127, 121, /* 2800-2807 */ +127, 122, 126, 127, 128, 132, 129, 131, /* 2808-2815 */ +128, 125, 121, 128, 126, 127, 129, 123, /* 2816-2823 */ +130, 128, 125, 125, 130, 126, 133, 128, /* 2824-2831 */ +120, 130, 127, 126, 123, 126, 126, 130, /* 2832-2839 */ +125, 126, 136, 130, 130, 127, 120, 124, /* 2840-2847 */ +128, 123, 125, 126, 128, 133, 125, 130, /* 2848-2855 */ +132, 124, 127, 127, 121, 125, 129, 125, /* 2856-2863 */ +129, 125, 133, 131, 126, 130, 131, 121, /* 2864-2871 */ +124, 130, 123, 126, 126, 127, 128, 129, /* 2872-2879 */ +127, 132, 126, 128, 131, 120, 123, 129, /* 2880-2887 */ +128, 123, 126, 127, 128, 130, 125, 131, /* 2888-2895 */ +128, 128, 128, 121, 123, 127, 128, 124, /* 2896-2903 */ +127, 128, 129, 127, 131, 128, 126, 129, /* 2904-2911 */ +126, 124, 123, 126, 127, 130, 126, 130, /* 2912-2919 */ +130, 124, 131, 128, 122, 127, 126, 123, /* 2920-2927 */ +129, 127, 127, 132, 125, 127, 128, 123, /* 2928-2935 */ +127, 130, 123, 127, 130, 123, 127, 125, /* 2936-2943 */ +125, 130, 131, 127, 133, 126, 125, 128, /* 2944-2951 */ +121, 124, 128, 126, 127, 129, 129, 131, /* 2952-2959 */ +129, 125, 123, 125, 127, 126, 128, 126, /* 2960-2967 */ +130, 128, 125, 128, 126, 127, 130, 127, /* 2968-2975 */ +124, 126, 127, 126, 126, 127, 126, 128, /* 2976-2983 */ +130, 127, 128, 125, 126, 127, 126, 127, /* 2984-2991 */ +127, 127, 125, 128, 125, 128, 131, 126, /* 2992-2999 */ +128, 127, 125, 128, 127, 125, 129, 125, /* 3000-3007 */ +126, 128, 129, 124, 129, 126, 124, 132, /* 3008-3015 */ +125, 130, 128, 123, 126, 126, 127, 128, /* 3016-3023 */ +127, 125, 130, 131, 126, 128, 126, 127, /* 3024-3031 */ +128, 123, 126, 128, 128, 128, 127, 126, /* 3032-3039 */ +126, 130, 130, 125, 127, 126, 126, 124, /* 3040-3047 */ +125, 127, 128, 131, 128, 128, 126, 126, /* 3048-3055 */ +130, 123, 125, 130, 125, 128, 128, 129, /* 3056-3063 */ +128, 126, 128, 128, 125, 124, 130, 126, /* 3064-3071 */ +127, 128, 124, 128, 127, 126, 127, 126, /* 3072-3079 */ +131, 130, 123, 123, 129, 129, 125, 127, /* 3080-3087 */ +126, 129, 127, 125, 127, 126, 129, 130, /* 3088-3095 */ +125, 126, 127, 125, 126, 124, 129, 128, /* 3096-3103 */ +129, 129, 127, 126, 126, 133, 122, 127, /* 3104-3111 */ +124, 127, 130, 126, 127, 131, 125, 127, /* 3112-3119 */ +130, 123, 127, 126, 126, 127, 125, 125, /* 3120-3127 */ +130, 129, 127, 128, 121, 127, 133, 124, /* 3128-3135 */ +126, 127, 129, 129, 128, 124, 130, 128, /* 3136-3143 */ +123, 126, 124, 127, 132, 129, 123, 130, /* 3144-3151 */ +125, 129, 126, 125, 126, 127, 129, 129, /* 3152-3159 */ +129, 125, 129, 127, 126, 124, 129, 130, /* 3160-3167 */ +127, 126, 125, 125, 129, 131, 125, 127, /* 3168-3175 */ +128, 127, 129, 122, 126, 128, 127, 127, /* 3176-3183 */ +127, 124, 126, 133, 126, 127, 127, 124, /* 3184-3191 */ +127, 128, 120, 129, 129, 127, 130, 124, /* 3192-3199 */ +127, 132, 128, 123, 131, 124, 125, 132, /* 3200-3207 */ +122, 126, 131, 127, 129, 128, 124, 127, /* 3208-3215 */ +128, 125, 133, 125, 122, 130, 127, 123, /* 3216-3223 */ +129, 130, 129, 131, 122, 126, 124, 127, /* 3224-3231 */ +127, 125, 129, 130, 132, 124, 123, 126, /* 3232-3239 */ +131, 126, 124, 127, 124, 133, 131, 122, /* 3240-3247 */ +128, 127, 126, 128, 122, 129, 133, 130, /* 3248-3255 */ +126, 127, 124, 125, 130, 124, 128, 129, /* 3256-3263 */ +129, 133, 124, 124, 125, 125, 128, 128, /* 3264-3271 */ +123, 128, 132, 127, 127, 125, 127, 127, /* 3272-3279 */ +129, 125, 128, 123, 128, 132, 125, 127, /* 3280-3287 */ +124, 132, 125, 124, 125, 129, 132, 127, /* 3288-3295 */ +123, 124, 129, 128, 124, 124, 126, 131, /* 3296-3303 */ +129, 123, 131, 129, 126, 128, 123, 126, /* 3304-3311 */ +132, 125, 128, 128, 123, 129, 129, 125, /* 3312-3319 */ +131, 127, 123, 130, 126, 125, 126, 125, /* 3320-3327 */ +130, 131, 123, 128, 131, 130, 126, 124, /* 3328-3335 */ +121, 127, 132, 128, 127, 125, 131, 128, /* 3336-3343 */ +123, 124, 129, 131, 131, 123, 125, 128, /* 3344-3351 */ +129, 128, 122, 122, 132, 131, 128, 129, /* 3352-3359 */ +126, 128, 128, 123, 123, 128, 126, 130, /* 3360-3367 */ +128, 126, 132, 128, 125, 127, 125, 124, /* 3368-3375 */ +128, 125, 127, 127, 126, 128, 130, 127, /* 3376-3383 */ +126, 125, 126, 130, 126, 122, 127, 130, /* 3384-3391 */ +131, 126, 123, 126, 132, 129, 122, 126, /* 3392-3399 */ +130, 131, 126, 120, 127, 130, 127, 122, /* 3400-3407 */ +125, 130, 133, 129, 124, 126, 130, 127, /* 3408-3415 */ +126, 124, 126, 128, 126, 128, 128, 130, /* 3416-3423 */ +125, 129, 129, 123, 125, 126, 128, 130, /* 3424-3431 */ +124, 125, 129, 129, 126, 124, 127, 127, /* 3432-3439 */ +131, 127, 124, 126, 128, 128, 126, 127, /* 3440-3447 */ +125, 129, 132, 126, 127, 125, 128, 131, /* 3448-3455 */ +123, 123, 128, 130, 126, 126, 124, 128, /* 3456-3463 */ +131, 127, 122, 129, 130, 130, 124, 121, /* 3464-3471 */ +128, 129, 128, 125, 131, 131, 127, 127, /* 3472-3479 */ +123, 126, 127, 127, 127, 127, 127, 125, /* 3480-3487 */ +127, 128, 129, 126, 124, 130, 128, 124, /* 3488-3495 */ +124, 127, 131, 127, 125, 128, 128, 130, /* 3496-3503 */ +126, 124, 125, 130, 133, 125, 125, 126, /* 3504-3511 */ +126, 126, 126, 125, 128, 128, 129, 128, /* 3512-3519 */ +124, 128, 129, 128, 123, 125, 124, 129, /* 3520-3527 */ +130, 128, 127, 129, 131, 123, 126, 126, /* 3528-3535 */ +127, 129, 124, 128, 129, 126, 127, 129, /* 3536-3543 */ +124, 128, 128, 123, 129, 129, 124, 128, /* 3544-3551 */ +129, 125, 131, 123, 126, 133, 124, 127, /* 3552-3559 */ +130, 126, 130, 127, 119, 129, 129, 126, /* 3560-3567 */ +128, 125, 129, 132, 125, 123, 129, 124, /* 3568-3575 */ +127, 124, 125, 129, 128, 128, 128, 126, /* 3576-3583 */ +126, 127, 126, 129, 128, 126, 128, 129, /* 3584-3591 */ +127, 126, 124, 127, 129, 124, 126, 132, /* 3592-3599 */ +127, 130, 124, 125, 129, 125, 127, 129, /* 3600-3607 */ +126, 130, 129, 126, 131, 124, 124, 129, /* 3608-3615 */ +124, 126, 131, 125, 130, 130, 121, 128, /* 3616-3623 */ +130, 126, 127, 126, 123, 130, 127, 121, /* 3624-3631 */ +132, 127, 126, 131, 122, 126, 131, 127, /* 3632-3639 */ +126, 130, 126, 126, 127, 127, 132, 129, /* 3640-3647 */ +124, 125, 127, 124, 127, 128, 129, 130, /* 3648-3655 */ +128, 125, 124, 131, 126, 126, 125, 128, /* 3656-3663 */ +129, 125, 126, 129, 129, 126, 127, 126, /* 3664-3671 */ +127, 127, 126, 126, 127, 129, 127, 125, /* 3672-3679 */ +128, 129, 124, 126, 126, 127, 126, 126, /* 3680-3687 */ +130, 128, 128, 127, 127, 125, 128, 128, /* 3688-3695 */ +126, 130, 126, 128, 126, 126, 127, 128, /* 3696-3703 */ +125, 128, 128, 124, 129, 129, 129, 124, /* 3704-3711 */ +125, 125, 127, 126, 126, 131, 127, 129, /* 3712-3719 */ +127, 124, 126, 128, 127, 128, 130, 126, /* 3720-3727 */ +128, 124, 126, 129, 127, 128, 129, 128, /* 3728-3735 */ +124, 126, 126, 128, 128, 126, 124, 129, /* 3736-3743 */ +130, 127, 125, 127, 131, 128, 125, 123, /* 3744-3751 */ +129, 128, 126, 127, 126, 132, 131, 126, /* 3752-3759 */ +124, 129, 126, 124, 125, 125, 128, 126, /* 3760-3767 */ +129, 129, 128, 126, 127, 127, 122, 126, /* 3768-3775 */ +128, 127, 128, 131, 126, 128, 129, 126, /* 3776-3783 */ +127, 123, 125, 127, 128, 126, 130, 128, /* 3784-3791 */ +128, 129, 124, 124, 125, 126, 127, 127, /* 3792-3799 */ +126, 130, 130, 128, 128, 124, 126, 128, /* 3800-3807 */ +126, 124, 129, 130, 128, 126, 123, 128, /* 3808-3815 */ +128, 125, 127, 128, 129, 130, 128, 122, /* 3816-3823 */ +127, 126, 127, 125, 125, 128, 131, 130, /* 3824-3831 */ +127, 129, 123, 127, 126, 126, 125, 128, /* 3832-3839 */ +129, 130, 130, 125, 126, 127, 128, 126, /* 3840-3847 */ +124, 125, 127, 129, 126, 126, 129, 130, /* 3848-3855 */ +127, 126, 124, 127, 131, 125, 126, 127, /* 3856-3863 */ +126, 128, 128, 123, 128, 129, 126, 129, /* 3864-3871 */ +126, 126, 129, 126, 123, 126, 125, 128, /* 3872-3879 */ +129, 126, 130, 130, 127, 127, 127, 124, /* 3880-3887 */ +126, 127, 128, 130, 126, 129, 128, 128, /* 3888-3895 */ +128, 128, 125, 128, 128, 123, 125, 127, /* 3896-3903 */ +131, 129, 126, 126, 127, 128, 126, 125, /* 3904-3911 */ +124, 130, 130, 124, 124, 129, 131, 127, /* 3912-3919 */ +126, 126, 127, 127, 128, 125, 126, 131, /* 3920-3927 */ +129, 128, 125, 126, 126, 126, 126, 128, /* 3928-3935 */ +127, 127, 130, 128, 126, 126, 130, 127, /* 3936-3943 */ +126, 125, 127, 128, 130, 128, 125, 129, /* 3944-3951 */ +127, 128, 124, 123, 130, 129, 126, 125, /* 3952-3959 */ +129, 125, 128, 129, 124, 125, 126, 127, /* 3960-3967 */ +128, 129, 126, 131, 126, 125, 125, 124, /* 3968-3975 */ +130, 132, 128, 123, 127, 127, 128, 127, /* 3976-3983 */ +126, 128, 128, 127, 125, 127, 127, 128, /* 3984-3991 */ +129, 125, 126, 126, 126, 128, 130, 127, /* 3992-3999 */ +129, 129, 127, 125, 124, 125, 132, 128, /* 4000-4007 */ +123, 128, 127, 130, 128, 125, 126, 130, /* 4008-4015 */ +126, 123, 126, 126, 131, 128, 125, 128, /* 4016-4023 */ +128, 125, 126, 126, 125, 129, 129, 129, /* 4024-4031 */ +129, 128, 124, 129, 127, 126, 127, 124, /* 4032-4039 */ +129, 131, 127, 126, 129, 127, 123, 124, /* 4040-4047 */ +124, 128, 130, 128, 130, 127, 128, 129, /* 4048-4055 */ +126, 123, 127, 126, 125, 130, 126, 127, /* 4056-4063 */ +133, 129, 123, 125, 124, 130, 127, 123, /* 4064-4071 */ +130, 131, 126, 125, 126, 124, 129, 127, /* 4072-4079 */ +126, 129, 128, 128, 128, 125, 128, 127, /* 4080-4087 */ +126, 128, 129, 127, 123, 128, 132, 128, /* 4088-4095 */ +124, 125, 126, 127, 129, 124, 129, 131, /* 4096-4103 */ +128, 128, 122, 126, 130, 125, 123, 127, /* 4104-4111 */ +129, 129, 131, 125, 125, 127, 127, 126, /* 4112-4119 */ +126, 127, 132, 127, 123, 128, 125, 126, /* 4120-4127 */ +128, 125, 125, 128, 127, 128, 129, 127, /* 4128-4135 */ +130, 126, 125, 130, 126, 125, 127, 127, /* 4136-4143 */ +128, 127, 128, 128, 127, 127, 123, 124, /* 4144-4151 */ +128, 130, 128, 125, 126, 130, 127, 122, /* 4152-4159 */ +127, 127, 127, 130, 125, 125, 129, 127, /* 4160-4167 */ +124, 123, 127, 132, 133, 126, 126, 128, /* 4168-4175 */ +125, 125, 125, 124, 132, 129, 124, 126, /* 4176-4183 */ +127, 129, 126, 126, 129, 127, 125, 127, /* 4184-4191 */ +129, 130, 129, 126, 125, 126, 125, 125, /* 4192-4199 */ +127, 133, 133, 126, 124, 126, 128, 125, /* 4200-4207 */ +122, 126, 131, 128, 126, 126, 127, 129, /* 4208-4215 */ +126, 124, 128, 127, 128, 129, 125, 128, /* 4216-4223 */ +130, 126, 128, 129, 125, 128, 128, 126, /* 4224-4231 */ +128, 126, 126, 130, 124, 125, 128, 127, /* 4232-4239 */ +128, 128, 127, 131, 127, 125, 128, 127, /* 4240-4247 */ +127, 124, 126, 129, 129, 126, 126, 129, /* 4248-4255 */ +131, 126, 124, 130, 130, 125, 123, 123, /* 4256-4263 */ +128, 130, 124, 126, 131, 128, 127, 126, /* 4264-4271 */ +125, 131, 128, 122, 125, 127, 129, 129, /* 4272-4279 */ +128, 129, 129, 124, 125, 128, 125, 127, /* 4280-4287 */ +126, 127, 128, 127, 128, 126, 128, 128, /* 4288-4295 */ +125, 124, 128, 128, 125, 128, 127, 127, /* 4296-4303 */ +126, 127, 125, 126, 129, 131, 129, 125, /* 4304-4311 */ +127, 127, 125, 123, 127, 125, 130, 133, /* 4312-4319 */ +124, 126, 129, 126, 126, 125, 126, 130, /* 4320-4327 */ +129, 125, 129, 129, 126, 129, 125, 124, /* 4328-4335 */ +127, 126, 127, 129, 128, 129, 127, 126, /* 4336-4343 */ +128, 125, 124, 128, 128, 127, 127, 126, /* 4344-4351 */ +128, 127, 127, 127, 126, 126, 130, 126, /* 4352-4359 */ +125, 129, 127, 129, 126, 126, 129, 130, /* 4360-4367 */ +127, 125, 125, 127, 129, 122, 126, 129, /* 4368-4375 */ +130, 129, 126, 127, 127, 125, 125, 128, /* 4376-4383 */ +126, 128, 128, 126, 130, 127, 126, 129, /* 4384-4391 */ +127, 127, 129, 124, 130, 132, 121, 124, /* 4392-4399 */ +127, 126, 129, 128, 124, 129, 126, 125, /* 4400-4407 */ +128, 124, 126, 131, 126, 126, 130, 126, /* 4408-4415 */ +129, 130, 126, 126, 128, 128, 128, 124, /* 4416-4423 */ +123, 132, 130, 125, 127, 127, 130, 128, /* 4424-4431 */ +126, 124, 125, 129, 125, 124, 129, 130, /* 4432-4439 */ +128, 127, 126, 128, 126, 125, 129, 128, /* 4440-4447 */ +124, 129, 130, 125, 129, 127, 124, 128, /* 4448-4455 */ +127, 124, 124, 127, 131, 130, 123, 127, /* 4456-4463 */ +130, 124, 124, 128, 127, 129, 129, 125, /* 4464-4471 */ +128, 126, 128, 129, 124, 126, 129, 125, /* 4472-4479 */ +126, 130, 126, 127, 131, 127, 126, 123, /* 4480-4487 */ +125, 129, 126, 124, 129, 130, 127, 128, /* 4488-4495 */ +127, 127, 127, 127, 124, 129, 130, 129, /* 4496-4503 */ +128, 127, 126, 124, 126, 126, 129, 128, /* 4504-4511 */ +125, 130, 128, 125, 126, 125, 127, 130, /* 4512-4519 */ +126, 123, 130, 130, 128, 126, 124, 127, /* 4520-4527 */ +130, 124, 127, 127, 129, 130, 128, 124, /* 4528-4535 */ +127, 130, 124, 126, 125, 126, 128, 126, /* 4536-4543 */ +126, 128, 126, 129, 128, 124, 128, 128, /* 4544-4551 */ +126, 127, 128, 127, 128, 127, 125, 128, /* 4552-4559 */ +125, 127, 128, 126, 130, 126, 127, 128, /* 4560-4567 */ +128, 126, 126, 126, 129, 128, 124, 127, /* 4568-4575 */ +127, 129, 128, 125, 126, 128, 126, 127, /* 4576-4583 */ +127, 128, 131, 129, 124, 125, 127, 127, /* 4584-4591 */ +127, 124, 125, 130, 126, 128, 129, 124, /* 4592-4599 */ +128, 128, 126, 125, 127, 128, 129, 126, /* 4600-4607 */ +128, 128, 125, 125, 128, 127, 126, 129, /* 4608-4615 */ +128, 129, 127, 127, 126, 128, 130, 125, /* 4616-4623 */ +124, 129, 130, 126, 122, 126, 131, 129, /* 4624-4631 */ +125, 127, 127, 127, 128, 125, 125, 130, /* 4632-4639 */ +130, 126, 127, 127, 128, 124, 123, 129, /* 4640-4647 */ +129, 126, 129, 129, 124, 128, 126, 126, /* 4648-4655 */ +126, 127, 127, 126, 127, 128, 128, 126, /* 4656-4663 */ +127, 128, 127, 127, 128, 125, 127, 132, /* 4664-4671 */ +128, 125, 125, 130, 127, 122, 124, 129, /* 4672-4679 */ +130, 125, 126, 128, 130, 128, 125, 122, /* 4680-4687 */ +127, 131, 125, 126, 128, 132, 129, 123, /* 4688-4695 */ +124, 128, 125, 124, 130, 128, 131, 130, /* 4696-4703 */ +124, 127, 129, 124, 123, 126, 126, 130, /* 4704-4711 */ +127, 127, 132, 128, 122, 125, 127, 126, /* 4712-4719 */ +131, 125, 127, 131, 130, 129, 126, 124, /* 4720-4727 */ +126, 127, 123, 126, 127, 130, 130, 127, /* 4728-4735 */ +125, 123, 128, 125, 123, 128, 130, 129, /* 4736-4743 */ +129, 126, 128, 129, 123, 124, 126, 127, /* 4744-4751 */ +128, 129, 126, 131, 131, 123, 126, 128, /* 4752-4759 */ +126, 125, 123, 127, 133, 127, 124, 126, /* 4760-4767 */ +128, 128, 126, 125, 129, 132, 126, 124, /* 4768-4775 */ +128, 131, 130, 124, 123, 126, 129, 127, /* 4776-4783 */ +127, 128, 129, 129, 124, 125, 125, 128, /* 4784-4791 */ +130, 126, 125, 128, 128, 126, 125, 126, /* 4792-4799 */ +128, 127, 126, 128, 129, 128, 127, 126, /* 4800-4807 */ +127, 130, 125, 126, 130, 129, 128, 123, /* 4808-4815 */ +127, 131, 129, 122, 126, 130, 127, 129, /* 4816-4823 */ +124, 125, 132, 129, 125, 127, 126, 130, /* 4824-4831 */ +127, 121, 128, 129, 126, 128, 127, 124, /* 4832-4839 */ +129, 129, 125, 127, 127, 128, 127, 123, /* 4840-4847 */ +124, 127, 126, 127, 129, 126, 128, 129, /* 4848-4855 */ +127, 125, 129, 128, 126, 126, 129, 126, /* 4856-4863 */ +126, 127, 127, 131, 123, 124, 131, 128, /* 4864-4871 */ +127, 125, 125, 128, 131, 123, 123, 130, /* 4872-4879 */ +131, 130, 123, 125, 131, 128, 118, 126, /* 4880-4887 */ +128, 127, 132, 125, 126, 132, 129, 125, /* 4888-4895 */ +128, 125, 127, 127, 120, 129, 128, 124, /* 4896-4903 */ +128, 133, 124, 125, 129, 126, 129, 127, /* 4904-4911 */ +125, 127, 129, 126, 130, 125, 125, 131, /* 4912-4919 */ +126, 125, 130, 127, 125, 132, 124, 123, /* 4920-4927 */ +129, 128, 131, 124, 123, 129, 132, 121, /* 4928-4935 */ +124, 127, 126, 131, 126, 123, 129, 132, /* 4936-4943 */ +124, 124, 125, 131, 131, 124, 128, 129, /* 4944-4951 */ +125, 123, 126, 126, 126, 128, 127, 128, /* 4952-4959 */ +129, 128, 125, 130, 126, 126, 123, 127, /* 4960-4967 */ +131, 128, 125, 125, 130, 128, 128, 127, /* 4968-4975 */ +126, 130, 129, 125, 124, 128, 128, 130, /* 4976-4983 */ +125, 125, 128, 128, 126, 127, 124, 126, /* 4984-4991 */ +132, 124, 126, 128, 129, 131, 126, 126, /* 4992-4999 */ +126, 127, 125, 130, 125, 126, 133, 126, /* 5000-5007 */ +126, 127, 126, 125, 128, 128, 127, 128, /* 5008-5015 */ +127, 131, 127, 122, 128, 130, 123, 128, /* 5016-5023 */ +127, 127, 132, 129, 128, 124, 128, 129, /* 5024-5031 */ +126, 124, 127, 129, 128, 128, 125, 126, /* 5032-5039 */ +127, 128, 126, 122, 125, 132, 127, 126, /* 5040-5047 */ +128, 127, 131, 127, 123, 125, 128, 127, /* 5048-5055 */ +128, 126, 125, 133, 126, 126, 129, 125, /* 5056-5063 */ +127, 127, 127, 128, 129, 124, 128, 129, /* 5064-5071 */ +125, 124, 128, 129, 130, 125, 123, 129, /* 5072-5079 */ +128, 126, 127, 127, 130, 128, 125, 125, /* 5080-5087 */ +130, 127, 126, 125, 125, 129, 126, 128, /* 5088-5095 */ +128, 127, 125, 127, 129, 125, 125, 127, /* 5096-5103 */ +130, 128, 127, 125, 127, 130, 125, 125, /* 5104-5111 */ +128, 130, 130, 126, 123, 131, 129, 123, /* 5112-5119 */ +129, 128, 126, 126, 127, 126, 128, 123, /* 5120-5127 */ +124, 131, 126, 127, 129, 126, 131, 130, /* 5128-5135 */ +119, 126, 129, 123, 127, 128, 128, 132, /* 5136-5143 */ +125, 121, 131, 126, 126, 129, 123, 128, /* 5144-5151 */ +129, 125, 127, 131, 124, 126, 129, 125, /* 5152-5159 */ +127, 126, 127, 128, 129, 125, 128, 130, /* 5160-5167 */ +127, 126, 126, 127, 129, 129, 122, 129, /* 5168-5175 */ +129, 122, 126, 126, 126, 128, 127, 125, /* 5176-5183 */ +131, 126, 124, 131, 126, 126, 126, 125, /* 5184-5191 */ +126, 131, 124, 126, 131, 127, 129, 124, /* 5192-5199 */ +126, 130, 128, 122, 127, 129, 129, 129, /* 5200-5207 */ +124, 127, 128, 126, 123, 128, 127, 128, /* 5208-5215 */ +129, 126, 128, 127, 128, 127, 128, 124, /* 5216-5223 */ +128, 130, 126, 127, 126, 127, 124, 126, /* 5224-5231 */ +126, 128, 130, 126, 128, 127, 124, 128, /* 5232-5239 */ +127, 124, 131, 125, 124, 129, 126, 128, /* 5240-5247 */ +128, 128, 129, 130, 123, 127, 129, 124, /* 5248-5255 */ +130, 126, 125, 131, 127, 124, 126, 127, /* 5256-5263 */ +124, 127, 125, 127, 130, 127, 127, 130, /* 5264-5271 */ +124, 128, 129, 124, 128, 126, 129, 128, /* 5272-5279 */ +125, 125, 128, 128, 126, 130, 127, 129, /* 5280-5287 */ +125, 124, 125, 128, 129, 126, 128, 129, /* 5288-5295 */ +128, 125, 125, 127, 129, 125, 126, 130, /* 5296-5303 */ +130, 130, 125, 127, 126, 128, 126, 124, /* 5304-5311 */ +131, 128, 127, 123, 128, 128, 126, 124, /* 5312-5319 */ +125, 132, 128, 125, 129, 130, 129, 127, /* 5320-5327 */ +122, 125, 126, 124, 127, 127, 130, 129, /* 5328-5335 */ +129, 126, 129, 126, 124, 127, 124, 128, /* 5336-5343 */ +127, 129, 130, 127, 126, 127, 127, 124, /* 5344-5351 */ +124, 127, 129, 127, 127, 129, 130, 128, /* 5352-5359 */ +124, 124, 126, 130, 124, 128, 129, 128, /* 5360-5367 */ +126, 121, 127, 130, 128, 124, 130, 128, /* 5368-5375 */ +129, 127, 123, 129, 128, 122, 125, 130, /* 5376-5383 */ +130, 130, 124, 126, 132, 126, 125, 128, /* 5384-5391 */ +129, 126, 127, 124, 126, 130, 127, 127, /* 5392-5399 */ +125, 129, 127, 125, 125, 126, 127, 126, /* 5400-5407 */ +130, 130, 127, 126, 131, 123, 124, 128, /* 5408-5415 */ +125, 128, 128, 127, 129, 127, 123, 130, /* 5416-5423 */ +127, 126, 130, 124, 126, 132, 127, 123, /* 5424-5431 */ +129, 125, 124, 125, 124, 132, 130, 124, /* 5432-5439 */ +127, 130, 125, 130, 126, 122, 130, 128, /* 5440-5447 */ +125, 125, 128, 129, 129, 124, 126, 130, /* 5448-5455 */ +126, 127, 126, 124, 126, 130, 128, 128, /* 5456-5463 */ +128, 128, 127, 124, 127, 124, 129, 128, /* 5464-5471 */ +127, 127, 126, 127, 126, 127, 127, 129, /* 5472-5479 */ +126, 127, 130, 124, 124, 128, 125, 125, /* 5480-5487 */ +126, 125, 131, 131, 128, 127, 125, 128, /* 5488-5495 */ +128, 125, 122, 130, 127, 124, 128, 126, /* 5496-5503 */ +132, 130, 127, 124, 127, 126, 126, 124, /* 5504-5511 */ +125, 130, 128, 126, 131, 128, 123, 125, /* 5512-5519 */ +124, 127, 126, 127, 131, 127, 128, 126, /* 5520-5527 */ +127, 126, 128, 126, 125, 130, 128, 129, /* 5528-5535 */ +126, 126, 127, 123, 128, 128, 126, 128, /* 5536-5543 */ +130, 127, 126, 126, 128, 129, 127, 124, /* 5544-5551 */ +128, 127, 126, 129, 122, 129, 131, 126, /* 5552-5559 */ +127, 127, 128, 129, 125, 122, 127, 126, /* 5560-5567 */ +126, 130, 127, 127, 130, 123, 124, 129, /* 5568-5575 */ +126, 127, 128, 130, 128, 126, 124, 128, /* 5576-5583 */ +130, 124, 128, 127, 129, 128, 125, 125, /* 5584-5591 */ +128, 131, 125, 125, 128, 128, 128, 127, /* 5592-5599 */ +126, 129, 128, 126, 127, 124, 126, 130, /* 5600-5607 */ +128, 125, 129, 128, 126, 129, 126, 127, /* 5608-5615 */ +128, 127, 127, 126, 125, 129, 128, 122, /* 5616-5623 */ +127, 127, 124, 128, 130, 127, 127, 127, /* 5624-5631 */ +127, 127, 124, 125, 129, 129, 128, 128, /* 5632-5639 */ +125, 129, 130, 124, 125, 128, 129, 125, /* 5640-5647 */ +127, 126, 128, 129, 127, 126, 126, 126, /* 5648-5655 */ +127, 127, 125, 128, 131, 126, 128, 127, /* 5656-5663 */ +123, 130, 129, 126, 130, 126, 128, 128, /* 5664-5671 */ +122, 125, 130, 125, 125, 129, 126, 130, /* 5672-5679 */ +129, 124, 128, 127, 125, 128, 126, 127, /* 5680-5687 */ +129, 126, 126, 131, 125, 124, 129, 128, /* 5688-5695 */ +129, 126, 123, 132, 128, 125, 125, 126, /* 5696-5703 */ +130, 128, 125, 127, 130, 126, 126, 126, /* 5704-5711 */ +127, 128, 124, 126, 130, 124, 129, 131, /* 5712-5719 */ +128, 129, 123, 123, 128, 127, 123, 127, /* 5720-5727 */ +128, 130, 128, 122, 128, 131, 123, 126, /* 5728-5735 */ +126, 126, 130, 127, 126, 128, 128, 125, /* 5736-5743 */ +128, 127, 128, 130, 126, 127, 129, 126, /* 5744-5751 */ +127, 127, 127, 126, 126, 127, 128, 129, /* 5752-5759 */ +124, 128, 129, 126, 128, 124, 128, 128, /* 5760-5767 */ +126, 128, 128, 131, 127, 126, 129, 125, /* 5768-5775 */ +125, 126, 127, 129, 128, 124, 129, 131, /* 5776-5783 */ +126, 127, 125, 126, 128, 123, 123, 129, /* 5784-5791 */ +130, 127, 126, 127, 128, 129, 123, 124, /* 5792-5799 */ +130, 127, 126, 128, 126, 130, 128, 124, /* 5800-5807 */ +128, 127, 125, 126, 127, 126, 129, 125, /* 5808-5815 */ +125, 131, 124, 125, 128, 127, 130, 129, /* 5816-5823 */ +127, 126, 127, 125, 125, 126, 126, 130, /* 5824-5831 */ +128, 126, 128, 129, 128, 126, 126, 126, /* 5832-5839 */ +128, 128, 122, 127, 130, 127, 128, 125, /* 5840-5847 */ +126, 129, 127, 126, 130, 127, 126, 130, /* 5848-5855 */ +124, 127, 129, 125, 127, 126, 125, 128, /* 5856-5863 */ +128, 130, 128, 128, 124, 126, 126, 123, /* 5864-5871 */ +130, 129, 129, 131, 126, 127, 126, 124, /* 5872-5879 */ +127, 127, 127, 126, 130, 127, 131, 126, /* 5880-5887 */ +125, 130, 127, 127, 124, 127, 129, 127, /* 5888-5895 */ +127, 126, 130, 128, 125, 127, 127, 127, /* 5896-5903 */ +128, 127, 124, 128, 130, 124, 126, 130, /* 5904-5911 */ +127, 128, 123, 127, 130, 124, 128, 129, /* 5912-5919 */ +128, 126, 128, 125, 128, 129, 125, 127, /* 5920-5927 */ +128, 128, 127, 125, 128, 132, 124, 124, /* 5928-5935 */ +128, 129, 126, 128, 126, 126, 129, 124, /* 5936-5943 */ +129, 126, 125, 129, 125, 127, 126, 126, /* 5944-5951 */ +126, 128, 128, 126, 129, 128, 128, 124, /* 5952-5959 */ +126, 127, 126, 126, 126, 129, 130, 126, /* 5960-5967 */ +126, 127, 126, 128, 125, 127, 130, 128, /* 5968-5975 */ +124, 126, 130, 126, 127, 125, 127, 130, /* 5976-5983 */ +126, 127, 128, 127, 127, 123, 123, 132, /* 5984-5991 */ +129, 125, 128, 131, 128, 127, 124, 126, /* 5992-5999 */ +128, 123, 126, 127, 129, 130, 127, 127, /* 6000-6007 */ +126, 128, 123, 125, 129, 125, 127, 125, /* 6008-6015 */ +129, 128, 124, 126, 130, 125, 126, 128, /* 6016-6023 */ +127, 128, 127, 129, 126, 126, 126, 124, /* 6024-6031 */ +126, 128, 127, 128, 129, 128, 128, 122, /* 6032-6039 */ +127, 128, 124, 128, 129, 130, 128, 126, /* 6040-6047 */ +128, 126, 124, 125, 127, 127, 130, 128, /* 6048-6055 */ +126, 126, 129, 125, 124, 127, 129, 129, /* 6056-6063 */ +128, 128, 128, 128, 123, 125, 124, 127, /* 6064-6071 */ +128, 126, 128, 130, 128, 125, 127, 128, /* 6072-6079 */ +128, 125, 126, 128, 127, 126, 126, 128, /* 6080-6087 */ +126, 129, 126, 125, 129, 127, 128, 125, /* 6088-6095 */ +128, 126, 126, 128, 128, 128, 128, 129, /* 6096-6103 */ +126, 127, 127, 129, 127, 122, 128, 128, /* 6104-6111 */ +126, 127, 128, 128, 129, 126, 125, 126, /* 6112-6119 */ +128, 128, 124, 125, 128, 130, 126, 128, /* 6120-6127 */ +131, 125, 125, 127, 125, 127, 129, 125, /* 6128-6135 */ +127, 126, 126, 128, 125, 128, 131, 126, /* 6136-6143 */ +126, 130, 126, 127, 127, 126, 126, 127, /* 6144-6151 */ +128, 127, 127, 127, 130, 124, 124, 128, /* 6152-6159 */ +126, 128, 128, 130, 129, 127, 124, 125, /* 6160-6167 */ +127, 126, 129, 126, 128, 129, 128, 125, /* 6168-6175 */ +126, 127, 126, 126, 127, 128, 128, 128, /* 6176-6183 */ +127, 128, 130, 126, 126, 124, 126, 128, /* 6184-6191 */ +126, 126, 130, 130, 126, 124, 129, 128, /* 6192-6199 */ +125, 126, 124, 130, 128, 127, 128, 127, /* 6200-6207 */ +130, 126, 123, 126, 128, 125, 128, 129, /* 6208-6215 */ +129, 128, 124, 128, 125, 128, 127, 126, /* 6216-6223 */ +127, 127, 129, 128, 130, 126, 126, 125, /* 6224-6231 */ +127, 126, 127, 128, 128, 129, 123, 127, /* 6232-6239 */ +128, 128, 125, 128, 128, 126, 128, 125, /* 6240-6247 */ +128, 129, 128, 125, 128, 129, 128, 126, /* 6248-6255 */ +125, 129, 127, 124, 126, 129, 129, 127, /* 6256-6263 */ +124, 127, 130, 126, 126, 126, 128, 126, /* 6264-6271 */ +127, 125, 128, 130, 126, 126, 126, 128, /* 6272-6279 */ +127, 126, 126, 128, 127, 126, 128, 126, /* 6280-6287 */ +128, 126, 125, 128, 128, 128, 126, 127, /* 6288-6295 */ +125, 128, 123, 127, 128, 128, 128, 126, /* 6296-6303 */ +127, 125, 128, 125, 126, 126, 128, 129, /* 6304-6311 */ +127, 126, 129, 130, 126, 126, 124, 126, /* 6312-6319 */ +130, 125, 128, 128, 129, 127, 126, 126, /* 6320-6327 */ +128, 126, 126, 127, 128, 128, 126, 128, /* 6328-6335 */ +125, 128, 126, 128, 126, 127, 128, 127, /* 6336-6343 */ +126, 126, 129, 124, 129, 127, 129, 127, /* 6344-6351 */ +126, 128, 126, 128, 126, 125, 126, 129, /* 6352-6359 */ +127, 129, 127, 126, 128, 124, 128, 125, /* 6360-6367 */ +128, 128, 127, 127, 124, 130, 127, 125, /* 6368-6375 */ +126, 128, 128, 127, 126, 128, 130, 125, /* 6376-6383 */ +128, 126, 128, 128, 124, 126, 128, 127, /* 6384-6391 */ +127, 126, 128, 129, 125, 128, 127, 128, /* 6392-6399 */ +127, 126, 127, 126, 128, 125, 128, 128, /* 6400-6407 */ +128, 126, 126, 127, 126, 126, 126, 130, /* 6408-6415 */ +127, 127, 128, 126, 128, 125, 128, 128, /* 6416-6423 */ +127, 125, 128, 126, 129, 126, 124, 131, /* 6424-6431 */ +126, 126, 125, 128, 130, 126, 126, 126, /* 6432-6439 */ +129, 126, 127, 126, 127, 127, 126, 126, /* 6440-6447 */ +128, 128, 125, 126, 126, 127, 127, 124, /* 6448-6455 */ +126, 130, 128, 127, 126, 128, 129, 123, /* 6456-6463 */ +126, 126, 127, 130, 125, 128, 130, 126, /* 6464-6471 */ +126, 126, 126, 130, 126, 127, 129, 126, /* 6472-6479 */ +126, 126, 128, 126, 129, 126, 127, 130, /* 6480-6487 */ +127, 128, 126, 126, 126, 128, 126, 130, /* 6488-6495 */ +128, 123, 130, 126, 127, 128, 126, 128, /* 6496-6503 */ +127, 127, 126, 128, 127, 128, 126, 126, /* 6504-6511 */ +128, 128, 124, 127, 127, 124, 127, 127, /* 6512-6519 */ +129, 128, 126, 129, 128}; /* 6520-6524 */ + +//get and set the frequency from wav conversion tool GUI +int sp=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_splash() +{ + speaker = data_splash[sp]/255.0;//scale to 0.0 to 1.0 for PWM + sp++; + if (sp>= NUM_ELEMENTS) { + sp = 0; + sampletick.detach(); + myled = 0; + } +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomHigh.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,952 @@ +/********************************************************************** +* Written by WAVToCode +* Date: Sat Dec 07 07:31:24 PM +* FileName: tomHigh_8k_8bit_unsigned.C +* Interleaved: N/A +* Signed: No +* No. of channels: 1 +* No. of samples: 7361 +* Bits/Sample: 8 +**********************************************************************/ + +#define NUM_ELEMENTS 7361 + +unsigned char data_h[NUM_ELEMENTS] = { +125, 123, 123, 124, 124, 125, 124, 126, /* 0-7 */ +124, 128, 123, 133, 102, 232, 223, 239, /* 8-15 */ +228, 232, 245, 47, 72, 118, 104, 201, /* 16-23 */ + 27, 39, 23, 26, 22, 248, 43, 29, /* 24-31 */ + 8, 233, 49, 247, 198, 215, 184, 164, /* 32-39 */ +116, 38, 16, 8, 243, 17, 2, 229, /* 40-47 */ + 4, 36, 15, 6, 236, 204, 222, 36, /* 48-55 */ + 15, 15, 227, 253, 34, 30, 6, 6, /* 56-63 */ +235, 195, 248, 247, 46, 63, 102, 136, /* 64-71 */ +189, 226, 5, 19, 5, 9, 24, 31, /* 72-79 */ + 45, 52, 43, 66, 36, 49, 46, 53, /* 80-87 */ + 30, 7, 15, 236, 220, 192, 146, 112, /* 88-95 */ + 83, 15, 16, 16, 234, 231, 211, 222, /* 96-103 */ +233, 218, 197, 214, 13, 44, 7, 247, /* 104-111 */ + 1, 242, 4, 236, 225, 249, 215, 197, /* 112-119 */ +193, 185, 228, 21, 9, 20, 61, 124, /* 120-127 */ +178, 216, 253, 24, 37, 56, 80, 71, /* 128-135 */ + 83, 71, 76, 103, 111, 87, 65, 52, /* 136-143 */ + 48, 37, 26, 15, 18, 5, 231, 237, /* 144-151 */ +195, 164, 128, 90, 65, 40, 18, 249, /* 152-159 */ +243, 214, 181, 174, 158, 161, 157, 167, /* 160-167 */ +167, 166, 170, 200, 211, 209, 243, 239, /* 168-175 */ + 5, 37, 78, 106, 135, 153, 180, 208, /* 176-183 */ +214, 215, 246, 4, 2, 3, 251, 253, /* 184-191 */ + 5, 250, 234, 230, 223, 235, 221, 235, /* 192-199 */ +218, 236, 1, 255, 13, 252, 18, 31, /* 200-207 */ + 32, 23, 43, 18, 250, 232, 198, 188, /* 208-215 */ +125, 68, 17, 238, 213, 200, 190, 181, /* 216-223 */ +165, 155, 150, 142, 170, 166, 171, 213, /* 224-231 */ +237, 23, 28, 40, 53, 50, 75, 71, /* 232-239 */ +113, 162, 185, 176, 190, 225, 10, 32, /* 240-247 */ + 40, 35, 44, 76, 54, 59, 78, 90, /* 248-255 */ + 67, 54, 24, 248, 214, 182, 183, 158, /* 256-263 */ +153, 144, 131, 126, 114, 88, 54, 38, /* 264-271 */ + 59, 55, 63, 78, 82, 60, 83, 99, /* 272-279 */ + 75, 60, 84, 87, 77, 94, 55, 53, /* 280-287 */ + 27, 10, 241, 237, 5, 11, 243, 221, /* 288-295 */ +248, 6, 27, 37, 33, 26, 49, 83, /* 296-303 */ +104, 145, 213, 11, 33, 61, 76, 77, /* 304-311 */ + 79, 65, 64, 55, 58, 29, 4, 252, /* 312-319 */ +219, 168, 139, 109, 90, 80, 91, 103, /* 320-327 */ + 89, 90, 60, 82, 72, 108, 106, 99, /* 328-335 */ + 97, 107, 120, 99, 138, 141, 114, 119, /* 336-343 */ +141, 113, 118, 127, 132, 114, 115, 107, /* 344-351 */ +112, 112, 113, 86, 56, 59, 50, 75, /* 352-359 */ + 97, 93, 76, 87, 57, 52, 41, 37, /* 360-367 */ + 25, 32, 24, 39, 72, 88, 105, 113, /* 368-375 */ +146, 164, 192, 221, 238, 236, 8, 11, /* 376-383 */ + 8, 237, 221, 222, 233, 226, 223, 202, /* 384-391 */ +185, 199, 197, 229, 202, 203, 180, 146, /* 392-399 */ +122, 127, 129, 110, 83, 74, 92, 74, /* 400-407 */ + 86, 70, 68, 69, 63, 71, 69, 74, /* 408-415 */ + 73, 61, 60, 58, 52, 46, 54, 59, /* 416-423 */ + 56, 52, 71, 79, 70, 79, 73, 96, /* 424-431 */ + 97, 97, 104, 71, 62, 55, 71, 89, /* 432-439 */ + 69, 56, 63, 105, 124, 158, 226, 248, /* 440-447 */ + 0, 23, 40, 79, 85, 83, 80, 84, /* 448-455 */ + 64, 29, 28, 254, 239, 207, 192, 173, /* 456-463 */ +161, 137, 113, 106, 67, 53, 54, 47, /* 464-471 */ + 47, 42, 13, 31, 40, 35, 33, 11, /* 472-479 */ + 23, 19, 32, 39, 40, 49, 45, 25, /* 480-487 */ + 4, 40, 22, 46, 63, 46, 63, 52, /* 488-495 */ + 72, 90, 98, 104, 110, 126, 146, 158, /* 496-503 */ +190, 200, 216, 236, 229, 226, 238, 234, /* 504-511 */ +232, 228, 227, 219, 205, 210, 180, 161, /* 512-519 */ +169, 176, 161, 170, 174, 184, 183, 174, /* 520-527 */ +184, 194, 171, 176, 184, 183, 175, 160, /* 528-535 */ +185, 153, 146, 130, 112, 69, 42, 14, /* 536-543 */ + 0, 9, 255, 13, 251, 244, 238, 0, /* 544-551 */ +251, 4, 19, 25, 35, 40, 46, 58, /* 552-559 */ + 83, 83, 88, 106, 117, 141, 163, 162, /* 560-567 */ +194, 210, 214, 220, 217, 203, 227, 234, /* 568-575 */ +216, 207, 209, 212, 191, 194, 180, 184, /* 576-583 */ +147, 126, 138, 138, 156, 172, 161, 162, /* 584-591 */ +160, 126, 110, 113, 117, 127, 138, 128, /* 592-599 */ +123, 143, 146, 128, 116, 105, 131, 140, /* 600-607 */ +132, 125, 120, 137, 134, 133, 131, 123, /* 608-615 */ +113, 115, 101, 68, 65, 71, 72, 73, /* 616-623 */ + 61, 45, 35, 20, 252, 240, 230, 240, /* 624-631 */ + 14, 17, 37, 57, 69, 81, 118, 143, /* 632-639 */ +181, 214, 219, 242, 249, 17, 13, 243, /* 640-647 */ +234, 255, 8, 3, 250, 234, 221, 214, /* 648-655 */ +198, 165, 140, 146, 123, 111, 135, 113, /* 656-663 */ + 94, 95, 104, 98, 107, 97, 97, 100, /* 664-671 */ + 97, 133, 141, 130, 127, 125, 119, 133, /* 672-679 */ +138, 117, 125, 133, 131, 118, 115, 127, /* 680-687 */ +104, 75, 70, 59, 51, 53, 59, 72, /* 688-695 */ + 59, 51, 25, 19, 27, 25, 14, 25, /* 696-703 */ + 34, 54, 68, 66, 89, 83, 123, 140, /* 704-711 */ +152, 164, 184, 206, 211, 230, 222, 228, /* 712-719 */ +243, 245, 5, 5, 7, 11, 252, 14, /* 720-727 */ + 7, 10, 2, 239, 227, 218, 216, 206, /* 728-735 */ +198, 170, 152, 113, 93, 86, 53, 51, /* 736-743 */ + 33, 20, 12, 14, 16, 10, 8, 7, /* 744-751 */ + 24, 6, 14, 35, 44, 54, 62, 71, /* 752-759 */ + 69, 79, 85, 105, 111, 111, 111, 103, /* 760-767 */ +106, 117, 125, 117, 97, 100, 104, 94, /* 768-775 */ + 98, 98, 104, 104, 111, 115, 127, 137, /* 776-783 */ +143, 151, 163, 189, 204, 209, 224, 248, /* 784-791 */ +251, 244, 251, 245, 0, 27, 31, 52, /* 792-799 */ + 42, 30, 20, 251, 235, 231, 210, 178, /* 800-807 */ +144, 123, 98, 68, 68, 39, 21, 12, /* 808-815 */ +252, 253, 2, 255, 0, 2, 250, 254, /* 816-823 */ + 17, 15, 26, 25, 15, 7, 5, 25, /* 824-831 */ + 33, 42, 39, 43, 57, 62, 60, 76, /* 832-839 */ + 98, 123, 132, 150, 158, 173, 180, 185, /* 840-847 */ +188, 199, 215, 221, 231, 227, 252, 243, /* 848-855 */ +237, 236, 239, 236, 234, 228, 227, 224, /* 856-863 */ +193, 192, 185, 171, 170, 173, 163, 159, /* 864-871 */ +161, 168, 155, 150, 149, 147, 146, 147, /* 872-879 */ +150, 141, 137, 136, 120, 104, 90, 73, /* 880-887 */ + 67, 60, 55, 32, 23, 5, 253, 8, /* 888-895 */ +254, 252, 248, 248, 245, 252, 247, 2, /* 896-903 */ + 20, 26, 43, 51, 58, 70, 98, 111, /* 904-911 */ +127, 142, 160, 179, 198, 199, 191, 209, /* 912-919 */ +220, 232, 231, 238, 254, 248, 237, 243, /* 920-927 */ +241, 249, 4, 247, 231, 231, 225, 227, /* 928-935 */ +223, 207, 201, 191, 181, 162, 161, 169, /* 936-943 */ +161, 156, 152, 142, 133, 123, 95, 87, /* 944-951 */ + 74, 58, 47, 41, 37, 29, 33, 32, /* 952-959 */ + 32, 31, 30, 26, 33, 35, 23, 25, /* 960-967 */ + 29, 32, 28, 30, 35, 33, 36, 46, /* 968-975 */ + 40, 57, 68, 59, 57, 63, 89, 95, /* 976-983 */ +105, 114, 140, 167, 187, 207, 217, 245, /* 984-991 */ + 2, 8, 17, 32, 42, 43, 43, 44, /* 992-999 */ + 32, 33, 29, 8, 247, 242, 235, 206, /* 1000-1007 */ +189, 173, 154, 135, 114, 102, 87, 78, /* 1008-1015 */ + 67, 53, 53, 39, 29, 35, 43, 49, /* 1016-1023 */ + 48, 41, 40, 58, 65, 60, 60, 69, /* 1024-1031 */ + 67, 60, 56, 58, 50, 51, 56, 50, /* 1032-1039 */ + 49, 55, 58, 64, 66, 65, 77, 70, /* 1040-1047 */ + 80, 98, 99, 112, 126, 141, 149, 153, /* 1048-1055 */ +167, 167, 191, 195, 198, 220, 220, 215, /* 1056-1063 */ +211, 215, 214, 217, 209, 209, 195, 195, /* 1064-1071 */ +197, 197, 195, 189, 186, 190, 199, 188, /* 1072-1079 */ +199, 178, 175, 177, 172, 172, 166, 150, /* 1080-1087 */ +137, 135, 118, 112, 107, 90, 88, 82, /* 1088-1095 */ + 71, 66, 54, 54, 39, 35, 32, 32, /* 1096-1103 */ + 27, 22, 35, 39, 39, 32, 32, 36, /* 1104-1111 */ + 31, 38, 55, 62, 70, 86, 85, 96, /* 1112-1119 */ +118, 119, 122, 133, 145, 155, 161, 158, /* 1120-1127 */ +164, 165, 166, 170, 171, 184, 187, 182, /* 1128-1135 */ +186, 185, 192, 197, 197, 190, 189, 195, /* 1136-1143 */ +187, 196, 197, 201, 194, 188, 184, 179, /* 1144-1151 */ +172, 178, 194, 187, 176, 166, 162, 157, /* 1152-1159 */ +166, 158, 155, 157, 140, 127, 114, 108, /* 1160-1167 */ + 98, 86, 65, 49, 49, 38, 21, 25, /* 1168-1175 */ + 18, 17, 17, 19, 16, 16, 31, 43, /* 1176-1183 */ + 54, 57, 74, 78, 89, 93, 92, 91, /* 1184-1191 */ + 90, 88, 89, 91, 95, 101, 97, 105, /* 1192-1199 */ +117, 128, 137, 151, 170, 183, 193, 210, /* 1200-1207 */ +211, 227, 237, 231, 235, 243, 242, 240, /* 1208-1215 */ +240, 237, 235, 232, 231, 213, 213, 202, /* 1216-1223 */ +189, 180, 165, 144, 145, 138, 119, 108, /* 1224-1231 */ +101, 97, 82, 80, 75, 66, 62, 67, /* 1232-1239 */ + 56, 53, 57, 58, 66, 66, 73, 83, /* 1240-1247 */ + 79, 87, 93, 97, 95, 101, 101, 98, /* 1248-1255 */ +101, 100, 103, 98, 108, 99, 99, 98, /* 1256-1263 */ + 91, 86, 88, 71, 61, 62, 56, 59, /* 1264-1271 */ + 53, 69, 75, 82, 87, 103, 127, 144, /* 1272-1279 */ +164, 182, 198, 216, 232, 240, 253, 236, /* 1280-1287 */ +236, 250, 244, 245, 239, 238, 226, 215, /* 1288-1295 */ +210, 193, 181, 176, 183, 161, 161, 163, /* 1296-1303 */ +155, 153, 153, 148, 142, 139, 140, 129, /* 1304-1311 */ +113, 102, 87, 92, 83, 63, 54, 49, /* 1312-1319 */ + 42, 42, 31, 30, 36, 45, 40, 40, /* 1320-1327 */ + 37, 31, 34, 34, 35, 40, 52, 49, /* 1328-1335 */ + 51, 60, 77, 70, 80, 97, 99, 114, /* 1336-1343 */ +133, 141, 146, 162, 166, 166, 171, 178, /* 1344-1351 */ +184, 187, 186, 187, 189, 183, 186, 185, /* 1352-1359 */ +186, 199, 202, 206, 217, 225, 229, 225, /* 1360-1367 */ +210, 209, 207, 213, 205, 194, 188, 180, /* 1368-1375 */ +171, 157, 152, 138, 130, 123, 128, 123, /* 1376-1383 */ +119, 117, 115, 110, 102, 96, 87, 93, /* 1384-1391 */ + 89, 82, 72, 53, 40, 40, 37, 29, /* 1392-1399 */ + 18, 11, 5, 3, 11, 9, 6, 8, /* 1400-1407 */ + 16, 31, 39, 47, 65, 69, 84, 95, /* 1408-1415 */ +109, 129, 141, 156, 166, 183, 189, 198, /* 1416-1423 */ +204, 206, 217, 220, 221, 226, 227, 237, /* 1424-1431 */ +237, 235, 235, 234, 235, 223, 216, 203, /* 1432-1439 */ +191, 187, 182, 177, 166, 161, 150, 135, /* 1440-1447 */ +127, 126, 126, 124, 129, 114, 110, 114, /* 1448-1455 */ +108, 99, 92, 86, 83, 76, 77, 81, /* 1456-1463 */ + 73, 70, 73, 75, 75, 77, 85, 84, /* 1464-1471 */ + 79, 85, 92, 97, 92, 94, 79, 75, /* 1472-1479 */ + 76, 69, 73, 68, 68, 62, 56, 61, /* 1480-1487 */ + 55, 51, 62, 74, 87, 97, 111, 125, /* 1488-1495 */ +136, 151, 165, 181, 190, 200, 209, 215, /* 1496-1503 */ +221, 223, 219, 228, 222, 219, 224, 223, /* 1504-1511 */ +223, 215, 211, 209, 216, 206, 190, 185, /* 1512-1519 */ +179, 170, 167, 159, 148, 136, 124, 124, /* 1520-1527 */ +117, 107, 100, 89, 76, 69, 68, 71, /* 1528-1535 */ + 69, 64, 71, 64, 61, 68, 71, 68, /* 1536-1543 */ + 65, 73, 70, 77, 74, 81, 72, 65, /* 1544-1551 */ + 73, 74, 92, 94, 101, 95, 102, 110, /* 1552-1559 */ +107, 112, 109, 106, 113, 119, 115, 112, /* 1560-1567 */ +107, 109, 113, 117, 113, 115, 124, 140, /* 1568-1575 */ +148, 155, 167, 175, 175, 181, 196, 201, /* 1576-1583 */ +209, 209, 204, 202, 200, 204, 207, 203, /* 1584-1591 */ +205, 200, 199, 206, 203, 202, 200, 193, /* 1592-1599 */ +187, 176, 173, 168, 155, 143, 136, 115, /* 1600-1607 */ + 97, 101, 89, 78, 70, 64, 64, 57, /* 1608-1615 */ + 44, 37, 33, 38, 37, 29, 28, 29, /* 1616-1623 */ + 32, 31, 33, 39, 50, 53, 58, 65, /* 1624-1631 */ + 75, 82, 93, 97, 109, 117, 124, 133, /* 1632-1639 */ +135, 145, 143, 146, 150, 164, 162, 162, /* 1640-1647 */ +163, 164, 163, 165, 172, 176, 177, 175, /* 1648-1655 */ +179, 174, 182, 185, 189, 187, 189, 182, /* 1656-1663 */ +181, 184, 185, 183, 174, 173, 175, 177, /* 1664-1671 */ +175, 175, 177, 178, 175, 177, 175, 173, /* 1672-1679 */ +173, 168, 155, 153, 149, 143, 132, 112, /* 1680-1687 */ + 97, 89, 71, 54, 48, 32, 24, 14, /* 1688-1695 */ + 10, 10, 9, 9, 7, 13, 15, 19, /* 1696-1703 */ + 17, 13, 21, 33, 37, 54, 62, 67, /* 1704-1711 */ + 79, 86, 101, 116, 130, 143, 154, 168, /* 1712-1719 */ +176, 186, 200, 210, 217, 220, 223, 234, /* 1720-1727 */ +232, 225, 221, 224, 226, 220, 221, 218, /* 1728-1735 */ +212, 211, 202, 204, 200, 197, 193, 183, /* 1736-1743 */ +183, 175, 165, 152, 144, 139, 138, 128, /* 1744-1751 */ +118, 112, 107, 103, 104, 96, 95, 94, /* 1752-1759 */ + 86, 81, 67, 65, 60, 56, 50, 51, /* 1760-1767 */ + 46, 42, 37, 35, 38, 37, 46, 49, /* 1768-1775 */ + 55, 56, 58, 59, 58, 60, 72, 80, /* 1776-1783 */ + 86, 91, 96, 105, 106, 112, 117, 123, /* 1784-1791 */ +134, 144, 150, 157, 167, 174, 180, 193, /* 1792-1799 */ +207, 210, 214, 219, 222, 226, 231, 231, /* 1800-1807 */ +233, 235, 235, 233, 228, 220, 213, 209, /* 1808-1815 */ +198, 190, 181, 168, 160, 155, 144, 135, /* 1816-1823 */ +129, 118, 113, 104, 94, 92, 77, 69, /* 1824-1831 */ + 67, 57, 49, 46, 42, 37, 38, 34, /* 1832-1839 */ + 39, 39, 41, 51, 55, 58, 61, 72, /* 1840-1847 */ + 80, 83, 88, 94, 103, 106, 112, 116, /* 1848-1855 */ +118, 122, 124, 125, 127, 130, 127, 131, /* 1856-1863 */ +129, 121, 122, 127, 128, 134, 139, 148, /* 1864-1871 */ +160, 163, 168, 167, 173, 177, 181, 177, /* 1872-1879 */ +181, 188, 190, 190, 186, 187, 186, 188, /* 1880-1887 */ +189, 190, 182, 181, 180, 179, 178, 174, /* 1888-1895 */ +170, 161, 157, 153, 151, 140, 135, 130, /* 1896-1903 */ +124, 117, 110, 108, 99, 91, 84, 82, /* 1904-1911 */ + 76, 72, 67, 64, 57, 49, 50, 48, /* 1912-1919 */ + 47, 49, 46, 43, 40, 44, 48, 49, /* 1920-1927 */ + 57, 65, 78, 83, 91, 102, 111, 120, /* 1928-1935 */ +127, 138, 146, 154, 157, 160, 165, 171, /* 1936-1943 */ +174, 175, 180, 181, 180, 181, 181, 179, /* 1944-1951 */ +177, 174, 177, 178, 175, 178, 176, 173, /* 1952-1959 */ +166, 157, 153, 153, 155, 153, 150, 148, /* 1960-1967 */ +150, 150, 152, 152, 150, 146, 145, 141, /* 1968-1975 */ +143, 144, 145, 150, 140, 139, 135, 126, /* 1976-1983 */ +117, 110, 107, 98, 90, 84, 81, 79, /* 1984-1991 */ + 72, 67, 62, 55, 58, 62, 63, 65, /* 1992-1999 */ + 69, 74, 78, 78, 86, 84, 90, 97, /* 2000-2007 */ + 98, 100, 96, 99, 103, 109, 109, 110, /* 2008-2015 */ +111, 113, 120, 118, 124, 127, 128, 131, /* 2016-2023 */ +137, 140, 148, 157, 169, 181, 184, 188, /* 2024-2031 */ +198, 210, 213, 217, 221, 222, 223, 218, /* 2032-2039 */ +216, 210, 202, 196, 183, 176, 168, 160, /* 2040-2047 */ +151, 143, 138, 129, 125, 115, 113, 112, /* 2048-2055 */ +105, 105, 99, 93, 88, 85, 83, 81, /* 2056-2063 */ + 75, 69, 65, 64, 69, 66, 68, 67, /* 2064-2071 */ + 69, 75, 77, 83, 87, 86, 88, 93, /* 2072-2079 */ + 95, 94, 96, 96, 95, 96, 97, 98, /* 2080-2087 */ + 94, 94, 93, 89, 89, 93, 95, 100, /* 2088-2095 */ +107, 111, 121, 131, 143, 150, 162, 175, /* 2096-2103 */ +187, 199, 209, 219, 225, 229, 234, 239, /* 2104-2111 */ +241, 237, 228, 225, 216, 210, 205, 198, /* 2112-2119 */ +191, 181, 169, 162, 154, 148, 142, 131, /* 2120-2127 */ +129, 125, 121, 118, 110, 100, 90, 82, /* 2128-2135 */ + 77, 71, 61, 55, 53, 50, 45, 37, /* 2136-2143 */ + 38, 42, 42, 40, 42, 40, 44, 47, /* 2144-2151 */ + 51, 53, 58, 68, 74, 81, 91, 100, /* 2152-2159 */ +106, 114, 122, 129, 132, 142, 149, 157, /* 2160-2167 */ +165, 169, 172, 177, 180, 178, 180, 182, /* 2168-2175 */ +183, 182, 185, 182, 179, 175, 176, 178, /* 2176-2183 */ +174, 172, 172, 171, 173, 172, 171, 169, /* 2184-2191 */ +167, 162, 161, 164, 157, 155, 148, 146, /* 2192-2199 */ +144, 141, 137, 134, 134, 132, 132, 130, /* 2200-2207 */ +129, 124, 120, 115, 111, 104, 96, 91, /* 2208-2215 */ + 87, 80, 72, 67, 66, 61, 59, 55, /* 2216-2223 */ + 54, 55, 51, 53, 54, 60, 65, 72, /* 2224-2231 */ + 75, 73, 75, 83, 91, 94, 101, 105, /* 2232-2239 */ +113, 121, 124, 130, 141, 143, 150, 158, /* 2240-2247 */ +167, 179, 186, 194, 198, 202, 201, 199, /* 2248-2255 */ +202, 200, 197, 200, 199, 195, 187, 183, /* 2256-2263 */ +177, 171, 168, 160, 152, 145, 139, 136, /* 2264-2271 */ +132, 129, 125, 120, 118, 117, 114, 109, /* 2272-2279 */ +106, 103, 101, 103, 104, 105, 107, 103, /* 2280-2287 */ +104, 106, 112, 114, 115, 117, 116, 121, /* 2288-2295 */ +120, 116, 115, 113, 110, 107, 105, 103, /* 2296-2303 */ + 99, 91, 88, 82, 78, 76, 73, 71, /* 2304-2311 */ + 69, 68, 67, 70, 73, 78, 78, 85, /* 2312-2319 */ + 90, 98, 106, 111, 120, 128, 139, 149, /* 2320-2327 */ +160, 168, 178, 188, 198, 201, 207, 210, /* 2328-2335 */ +209, 218, 220, 213, 211, 207, 200, 198, /* 2336-2343 */ +192, 186, 181, 174, 169, 158, 154, 148, /* 2344-2351 */ +141, 134, 126, 122, 116, 114, 111, 106, /* 2352-2359 */ +104, 100, 97, 96, 96, 95, 93, 91, /* 2360-2367 */ + 90, 91, 88, 88, 87, 87, 85, 81, /* 2368-2375 */ + 80, 79, 79, 79, 79, 80, 79, 79, /* 2376-2383 */ + 80, 79, 82, 85, 91, 99, 101, 105, /* 2384-2391 */ +106, 105, 106, 108, 110, 114, 119, 118, /* 2392-2399 */ +126, 131, 136, 138, 143, 149, 154, 164, /* 2400-2407 */ +170, 178, 185, 186, 187, 188, 190, 193, /* 2408-2415 */ +195, 193, 193, 194, 194, 194, 192, 189, /* 2416-2423 */ +191, 191, 186, 183, 181, 180, 175, 171, /* 2424-2431 */ +168, 159, 149, 139, 131, 123, 112, 101, /* 2432-2439 */ + 92, 81, 74, 67, 58, 52, 46, 40, /* 2440-2447 */ + 34, 33, 35, 33, 36, 36, 40, 46, /* 2448-2455 */ + 51, 55, 59, 65, 70, 75, 80, 89, /* 2456-2463 */ + 99, 109, 118, 123, 127, 133, 138, 141, /* 2464-2471 */ +147, 154, 161, 167, 171, 172, 176, 178, /* 2472-2479 */ +181, 181, 182, 180, 180, 181, 180, 178, /* 2480-2487 */ +177, 172, 170, 171, 169, 170, 168, 165, /* 2488-2495 */ +164, 163, 163, 161, 158, 156, 155, 158, /* 2496-2503 */ +156, 152, 151, 150, 152, 147, 145, 142, /* 2504-2511 */ +133, 129, 121, 116, 111, 105, 96, 90, /* 2512-2519 */ + 86, 77, 71, 66, 62, 59, 57, 53, /* 2520-2527 */ + 55, 54, 50, 51, 53, 57, 59, 61, /* 2528-2535 */ + 64, 68, 73, 77, 82, 90, 95, 103, /* 2536-2543 */ +109, 117, 123, 130, 142, 151, 157, 163, /* 2544-2551 */ +169, 177, 182, 187, 194, 192, 191, 194, /* 2552-2559 */ +197, 195, 192, 192, 189, 188, 185, 182, /* 2560-2567 */ +183, 179, 176, 173, 169, 161, 155, 152, /* 2568-2575 */ +143, 141, 134, 129, 122, 117, 116, 114, /* 2576-2583 */ +114, 110, 111, 109, 108, 108, 110, 110, /* 2584-2591 */ +107, 106, 102, 100, 101, 99, 98, 94, /* 2592-2599 */ + 95, 93, 89, 89, 88, 87, 88, 90, /* 2600-2607 */ + 90, 93, 93, 93, 92, 91, 89, 88, /* 2608-2615 */ + 90, 90, 93, 97, 98, 103, 107, 109, /* 2616-2623 */ +114, 120, 127, 132, 138, 139, 144, 152, /* 2624-2631 */ +159, 161, 164, 169, 169, 172, 176, 178, /* 2632-2639 */ +180, 178, 181, 180, 180, 179, 177, 175, /* 2640-2647 */ +173, 170, 166, 166, 161, 162, 157, 151, /* 2648-2655 */ +147, 142, 139, 136, 133, 130, 126, 121, /* 2656-2663 */ +117, 112, 112, 108, 110, 109, 104, 101, /* 2664-2671 */ +103, 100, 101, 97, 93, 93, 91, 93, /* 2672-2679 */ + 90, 88, 89, 89, 85, 87, 90, 94, /* 2680-2687 */ + 98, 98, 100, 102, 101, 104, 107, 107, /* 2688-2695 */ +106, 107, 107, 104, 103, 103, 106, 107, /* 2696-2703 */ +109, 112, 117, 121, 125, 127, 133, 138, /* 2704-2711 */ +143, 149, 155, 163, 168, 170, 172, 174, /* 2712-2719 */ +174, 176, 180, 181, 179, 182, 179, 179, /* 2720-2727 */ +181, 177, 176, 176, 175, 176, 175, 172, /* 2728-2735 */ +172, 166, 166, 163, 156, 148, 142, 136, /* 2736-2743 */ +128, 122, 114, 107, 101, 97, 90, 85, /* 2744-2751 */ + 82, 78, 73, 71, 67, 67, 65, 65, /* 2752-2759 */ + 63, 61, 61, 60, 62, 63, 61, 61, /* 2760-2767 */ + 64, 68, 72, 75, 77, 79, 82, 86, /* 2768-2775 */ + 93, 97, 103, 112, 120, 124, 135, 144, /* 2776-2783 */ +151, 159, 168, 178, 184, 194, 202, 209, /* 2784-2791 */ +213, 212, 212, 212, 213, 213, 209, 207, /* 2792-2799 */ +205, 200, 193, 189, 182, 175, 170, 162, /* 2800-2807 */ +158, 152, 144, 139, 136, 129, 122, 114, /* 2808-2815 */ +110, 103, 100, 97, 91, 88, 83, 80, /* 2816-2823 */ + 79, 76, 73, 74, 74, 75, 76, 77, /* 2824-2831 */ + 79, 81, 82, 83, 81, 85, 87, 89, /* 2832-2839 */ + 92, 92, 94, 95, 98, 97, 102, 105, /* 2840-2847 */ +105, 104, 106, 108, 111, 113, 116, 116, /* 2848-2855 */ +118, 121, 126, 130, 137, 146, 153, 159, /* 2856-2863 */ +166, 174, 177, 184, 188, 191, 194, 195, /* 2864-2871 */ +194, 194, 192, 190, 187, 184, 181, 177, /* 2872-2879 */ +174, 168, 166, 163, 158, 154, 149, 145, /* 2880-2887 */ +144, 137, 132, 128, 124, 118, 115, 113, /* 2888-2895 */ +110, 105, 100, 95, 92, 89, 85, 85, /* 2896-2903 */ + 81, 78, 76, 77, 71, 70, 68, 69, /* 2904-2911 */ + 70, 70, 72, 76, 79, 80, 85, 90, /* 2912-2919 */ + 96, 100, 106, 110, 115, 117, 122, 126, /* 2920-2927 */ +128, 134, 136, 140, 142, 146, 146, 146, /* 2928-2935 */ +149, 152, 154, 153, 154, 155, 158, 159, /* 2936-2943 */ +160, 163, 165, 168, 169, 168, 165, 166, /* 2944-2951 */ +168, 163, 162, 163, 161, 157, 157, 153, /* 2952-2959 */ +150, 147, 144, 144, 142, 141, 141, 139, /* 2960-2967 */ +139, 138, 137, 136, 132, 130, 127, 124, /* 2968-2975 */ +118, 115, 111, 104, 99, 96, 90, 88, /* 2976-2983 */ + 82, 81, 79, 78, 75, 75, 75, 75, /* 2984-2991 */ + 77, 77, 81, 86, 87, 89, 94, 94, /* 2992-2999 */ +100, 104, 107, 111, 113, 118, 120, 125, /* 3000-3007 */ +130, 134, 138, 142, 146, 148, 153, 156, /* 3008-3015 */ +154, 156, 158, 163, 164, 164, 161, 160, /* 3016-3023 */ +159, 156, 155, 155, 155, 153, 151, 150, /* 3024-3031 */ +151, 146, 146, 144, 143, 141, 139, 139, /* 3032-3039 */ +139, 137, 139, 140, 140, 142, 143, 146, /* 3040-3047 */ +146, 148, 150, 149, 149, 147, 144, 142, /* 3048-3055 */ +141, 139, 133, 128, 123, 118, 111, 106, /* 3056-3063 */ +101, 93, 89, 84, 79, 74, 70, 66, /* 3064-3071 */ + 63, 60, 58, 56, 57, 60, 60, 61, /* 3072-3079 */ + 66, 70, 75, 80, 85, 92, 96, 101, /* 3080-3087 */ +109, 117, 122, 131, 139, 148, 156, 162, /* 3088-3095 */ +169, 178, 182, 188, 193, 197, 201, 203, /* 3096-3103 */ +205, 205, 204, 203, 199, 196, 191, 186, /* 3104-3111 */ +183, 176, 171, 166, 161, 156, 151, 144, /* 3112-3119 */ +141, 138, 132, 128, 124, 121, 116, 112, /* 3120-3127 */ +110, 105, 100, 99, 95, 95, 94, 89, /* 3128-3135 */ + 86, 85, 83, 82, 83, 81, 80, 79, /* 3136-3143 */ + 79, 77, 78, 76, 74, 75, 77, 81, /* 3144-3151 */ + 81, 82, 83, 89, 95, 98, 102, 109, /* 3152-3159 */ +114, 117, 119, 124, 128, 129, 134, 137, /* 3160-3167 */ +142, 146, 150, 151, 154, 159, 162, 166, /* 3168-3175 */ +171, 176, 179, 183, 187, 190, 191, 194, /* 3176-3183 */ +191, 192, 193, 192, 189, 185, 180, 178, /* 3184-3191 */ +175, 170, 164, 157, 153, 144, 139, 133, /* 3192-3199 */ +124, 118, 112, 105, 98, 94, 91, 86, /* 3200-3207 */ + 82, 78, 74, 71, 69, 70, 70, 70, /* 3208-3215 */ + 72, 73, 74, 77, 79, 82, 85, 89, /* 3216-3223 */ + 93, 95, 100, 104, 109, 114, 116, 119, /* 3224-3231 */ +121, 122, 123, 127, 127, 128, 129, 130, /* 3232-3239 */ +130, 131, 133, 132, 133, 136, 135, 139, /* 3240-3247 */ +140, 143, 147, 148, 154, 154, 157, 161, /* 3248-3255 */ +164, 164, 167, 168, 167, 166, 167, 171, /* 3256-3263 */ +166, 167, 165, 164, 161, 159, 158, 157, /* 3264-3271 */ +153, 149, 146, 141, 139, 138, 133, 127, /* 3272-3279 */ +124, 121, 118, 116, 113, 107, 104, 101, /* 3280-3287 */ +102, 99, 97, 96, 95, 91, 92, 91, /* 3288-3295 */ + 88, 87, 85, 86, 86, 87, 89, 89, /* 3296-3303 */ + 92, 96, 95, 98, 100, 103, 105, 106, /* 3304-3311 */ +107, 110, 113, 113, 119, 123, 126, 130, /* 3312-3319 */ +132, 136, 138, 140, 145, 147, 150, 151, /* 3320-3327 */ +153, 154, 156, 157, 156, 158, 159, 160, /* 3328-3335 */ +157, 160, 159, 157, 159, 158, 158, 156, /* 3336-3343 */ +153, 153, 152, 148, 148, 145, 144, 143, /* 3344-3351 */ +141, 141, 140, 141, 139, 138, 135, 135, /* 3352-3359 */ +132, 130, 130, 126, 124, 122, 118, 118, /* 3360-3367 */ +113, 109, 108, 105, 102, 99, 97, 96, /* 3368-3375 */ + 94, 94, 92, 94, 92, 91, 92, 92, /* 3376-3383 */ + 92, 93, 93, 94, 96, 94, 94, 96, /* 3384-3391 */ + 96, 96, 97, 99, 101, 103, 106, 111, /* 3392-3399 */ +115, 117, 122, 126, 130, 136, 139, 144, /* 3400-3407 */ +147, 152, 156, 161, 166, 167, 170, 173, /* 3408-3415 */ +175, 179, 181, 181, 184, 184, 186, 184, /* 3416-3423 */ +183, 182, 179, 178, 175, 171, 168, 165, /* 3424-3431 */ +159, 154, 150, 145, 139, 135, 129, 125, /* 3432-3439 */ +121, 116, 111, 106, 98, 94, 91, 87, /* 3440-3447 */ + 84, 80, 79, 75, 73, 71, 68, 67, /* 3448-3455 */ + 67, 67, 67, 69, 69, 71, 70, 73, /* 3456-3463 */ + 73, 78, 80, 84, 91, 95, 100, 106, /* 3464-3471 */ +113, 119, 124, 132, 138, 142, 148, 152, /* 3472-3479 */ +157, 162, 167, 170, 172, 175, 178, 182, /* 3480-3487 */ +182, 182, 182, 183, 183, 182, 181, 179, /* 3488-3495 */ +178, 174, 172, 169, 166, 164, 159, 155, /* 3496-3503 */ +150, 147, 144, 141, 138, 132, 129, 128, /* 3504-3511 */ +125, 123, 121, 119, 119, 116, 113, 112, /* 3512-3519 */ +109, 107, 105, 101, 97, 95, 93, 88, /* 3520-3527 */ + 85, 82, 78, 76, 75, 73, 75, 75, /* 3528-3535 */ + 76, 76, 77, 78, 80, 83, 87, 92, /* 3536-3543 */ + 97, 101, 105, 113, 118, 122, 127, 130, /* 3544-3551 */ +136, 142, 146, 150, 155, 158, 162, 166, /* 3552-3559 */ +167, 170, 172, 173, 173, 175, 172, 171, /* 3560-3567 */ +173, 170, 167, 165, 164, 161, 159, 156, /* 3568-3575 */ +155, 151, 147, 146, 141, 140, 137, 134, /* 3576-3583 */ +132, 129, 128, 123, 124, 123, 119, 117, /* 3584-3591 */ +118, 113, 113, 114, 112, 113, 111, 111, /* 3592-3599 */ +111, 110, 108, 107, 105, 105, 105, 103, /* 3600-3607 */ +104, 104, 104, 105, 105, 105, 105, 105, /* 3608-3615 */ +105, 106, 106, 106, 106, 105, 105, 105, /* 3616-3623 */ +107, 107, 106, 106, 106, 107, 111, 111, /* 3624-3631 */ +113, 117, 119, 121, 126, 129, 134, 138, /* 3632-3639 */ +141, 146, 151, 156, 160, 165, 168, 170, /* 3640-3647 */ +171, 173, 174, 172, 174, 174, 171, 171, /* 3648-3655 */ +168, 166, 165, 161, 160, 156, 151, 149, /* 3656-3663 */ +144, 140, 135, 132, 127, 123, 119, 117, /* 3664-3671 */ +113, 110, 107, 102, 104, 102, 100, 100, /* 3672-3679 */ + 98, 100, 99, 97, 99, 99, 99, 99, /* 3680-3687 */ +100, 102, 102, 103, 102, 102, 104, 104, /* 3688-3695 */ +106, 106, 107, 107, 110, 110, 112, 113, /* 3696-3703 */ +113, 113, 114, 114, 117, 118, 116, 118, /* 3704-3711 */ +119, 121, 122, 123, 125, 128, 131, 131, /* 3712-3719 */ +135, 139, 141, 145, 148, 151, 153, 155, /* 3720-3727 */ +160, 161, 165, 167, 168, 170, 170, 172, /* 3728-3735 */ +173, 173, 173, 173, 173, 171, 169, 168, /* 3736-3743 */ +166, 163, 161, 156, 152, 148, 143, 136, /* 3744-3751 */ +129, 124, 119, 112, 109, 103, 98, 93, /* 3752-3759 */ + 88, 84, 80, 77, 75, 73, 71, 70, /* 3760-3767 */ + 70, 67, 69, 70, 72, 73, 76, 79, /* 3768-3775 */ + 81, 87, 92, 95, 98, 102, 105, 109, /* 3776-3783 */ +113, 117, 120, 122, 126, 130, 134, 140, /* 3784-3791 */ +142, 147, 151, 155, 158, 161, 164, 167, /* 3792-3799 */ +169, 171, 172, 174, 176, 174, 174, 176, /* 3800-3807 */ +176, 174, 174, 173, 171, 171, 168, 167, /* 3808-3815 */ +166, 164, 161, 157, 155, 151, 148, 143, /* 3816-3823 */ +137, 132, 127, 124, 118, 111, 109, 104, /* 3824-3831 */ +100, 97, 93, 90, 86, 83, 80, 78, /* 3832-3839 */ + 78, 76, 76, 75, 75, 77, 79, 80, /* 3840-3847 */ + 81, 83, 86, 91, 92, 94, 98, 101, /* 3848-3855 */ +103, 106, 109, 111, 114, 117, 122, 125, /* 3856-3863 */ +130, 133, 137, 142, 147, 152, 155, 161, /* 3864-3871 */ +166, 168, 172, 175, 176, 178, 177, 177, /* 3872-3879 */ +175, 173, 173, 170, 167, 165, 161, 156, /* 3880-3887 */ +155, 150, 146, 141, 138, 134, 130, 127, /* 3888-3895 */ +124, 120, 119, 116, 113, 113, 113, 112, /* 3896-3903 */ +112, 114, 114, 113, 115, 115, 114, 115, /* 3904-3911 */ +115, 115, 115, 114, 114, 115, 113, 114, /* 3912-3919 */ +114, 114, 113, 112, 112, 111, 110, 108, /* 3920-3927 */ +106, 105, 104, 103, 101, 102, 101, 100, /* 3928-3935 */ +102, 101, 103, 106, 107, 109, 111, 114, /* 3936-3943 */ +118, 123, 126, 129, 133, 135, 136, 139, /* 3944-3951 */ +142, 144, 147, 148, 152, 152, 152, 155, /* 3952-3959 */ +157, 159, 159, 160, 159, 161, 161, 161, /* 3960-3967 */ +161, 159, 154, 153, 154, 151, 151, 150, /* 3968-3975 */ +147, 145, 143, 142, 141, 138, 136, 136, /* 3976-3983 */ +132, 129, 127, 125, 122, 119, 116, 113, /* 3984-3991 */ +111, 107, 105, 102, 100, 98, 98, 95, /* 3992-3999 */ + 93, 92, 92, 92, 91, 92, 92, 92, /* 4000-4007 */ + 94, 96, 97, 98, 99, 101, 102, 104, /* 4008-4015 */ +107, 109, 111, 113, 115, 118, 120, 122, /* 4016-4023 */ +125, 127, 130, 130, 133, 136, 138, 141, /* 4024-4031 */ +144, 146, 149, 152, 154, 157, 157, 160, /* 4032-4039 */ +162, 162, 162, 164, 164, 164, 163, 164, /* 4040-4047 */ +164, 162, 163, 163, 160, 158, 158, 155, /* 4048-4055 */ +152, 150, 147, 144, 140, 136, 132, 129, /* 4056-4063 */ +125, 122, 119, 114, 112, 108, 108, 106, /* 4064-4071 */ +103, 104, 101, 99, 98, 97, 96, 95, /* 4072-4079 */ + 93, 91, 89, 87, 87, 88, 86, 86, /* 4080-4087 */ + 86, 86, 88, 88, 89, 91, 92, 94, /* 4088-4095 */ + 97, 100, 103, 107, 111, 116, 119, 125, /* 4096-4103 */ +130, 135, 141, 146, 151, 156, 160, 165, /* 4104-4111 */ +167, 171, 173, 175, 176, 177, 179, 178, /* 4112-4119 */ +178, 177, 176, 176, 172, 172, 168, 164, /* 4120-4127 */ +161, 160, 158, 154, 150, 146, 144, 139, /* 4128-4135 */ +137, 133, 128, 124, 121, 117, 113, 110, /* 4136-4143 */ +107, 103, 99, 96, 95, 93, 91, 90, /* 4144-4151 */ + 87, 86, 85, 85, 85, 85, 86, 86, /* 4152-4159 */ + 88, 88, 91, 92, 93, 96, 97, 100, /* 4160-4167 */ +102, 106, 107, 111, 112, 116, 119, 120, /* 4168-4175 */ +123, 125, 128, 131, 135, 138, 140, 145, /* 4176-4183 */ +147, 149, 152, 154, 156, 157, 160, 160, /* 4184-4191 */ +163, 164, 163, 164, 165, 164, 164, 164, /* 4192-4199 */ +163, 163, 162, 162, 160, 159, 156, 154, /* 4200-4207 */ +152, 148, 146, 142, 139, 136, 132, 129, /* 4208-4215 */ +125, 123, 120, 115, 112, 107, 104, 102, /* 4216-4223 */ + 99, 96, 93, 92, 90, 89, 89, 88, /* 4224-4231 */ + 88, 90, 90, 92, 94, 96, 99, 102, /* 4232-4239 */ +105, 108, 111, 114, 116, 121, 123, 123, /* 4240-4247 */ +125, 127, 127, 129, 130, 130, 130, 131, /* 4248-4255 */ +132, 130, 132, 132, 132, 133, 132, 133, /* 4256-4263 */ +133, 134, 135, 135, 135, 137, 138, 140, /* 4264-4271 */ +142, 143, 145, 146, 146, 148, 149, 150, /* 4272-4279 */ +150, 150, 150, 149, 148, 146, 146, 145, /* 4280-4287 */ +144, 144, 143, 143, 142, 141, 140, 140, /* 4288-4295 */ +140, 140, 138, 137, 136, 134, 132, 130, /* 4296-4303 */ +129, 126, 123, 120, 117, 116, 113, 110, /* 4304-4311 */ +107, 106, 103, 101, 100, 97, 96, 94, /* 4312-4319 */ + 92, 90, 90, 89, 88, 88, 87, 88, /* 4320-4327 */ + 89, 91, 93, 95, 98, 101, 103, 106, /* 4328-4335 */ +110, 114, 119, 123, 127, 132, 135, 140, /* 4336-4343 */ +145, 148, 152, 155, 159, 161, 165, 164, /* 4344-4351 */ +166, 168, 167, 167, 167, 166, 166, 165, /* 4352-4359 */ +163, 161, 159, 158, 156, 154, 154, 151, /* 4360-4367 */ +151, 148, 147, 146, 143, 142, 140, 139, /* 4368-4375 */ +137, 134, 131, 128, 126, 122, 120, 118, /* 4376-4383 */ +114, 111, 109, 106, 102, 99, 96, 92, /* 4384-4391 */ + 90, 89, 85, 84, 84, 82, 82, 82, /* 4392-4399 */ + 82, 81, 83, 83, 85, 87, 90, 92, /* 4400-4407 */ + 95, 99, 101, 105, 108, 113, 117, 121, /* 4408-4415 */ +126, 130, 135, 140, 143, 147, 151, 154, /* 4416-4423 */ +158, 161, 165, 168, 172, 174, 175, 176, /* 4424-4431 */ +176, 177, 175, 175, 174, 172, 170, 169, /* 4432-4439 */ +166, 163, 160, 157, 153, 150, 147, 144, /* 4440-4447 */ +140, 135, 133, 129, 125, 121, 118, 115, /* 4448-4455 */ +111, 109, 106, 104, 102, 100, 97, 95, /* 4456-4463 */ + 94, 94, 92, 92, 91, 91, 90, 91, /* 4464-4471 */ + 91, 91, 92, 94, 95, 97, 99, 100, /* 4472-4479 */ +103, 105, 108, 111, 113, 114, 117, 118, /* 4480-4487 */ +121, 122, 124, 125, 127, 128, 130, 131, /* 4488-4495 */ +134, 136, 138, 141, 141, 144, 147, 150, /* 4496-4503 */ +152, 156, 158, 159, 160, 162, 163, 164, /* 4504-4511 */ +163, 162, 162, 160, 160, 159, 156, 155, /* 4512-4519 */ +153, 150, 146, 144, 142, 139, 138, 134, /* 4520-4527 */ +133, 131, 128, 125, 124, 121, 119, 117, /* 4528-4535 */ +115, 114, 112, 109, 108, 107, 106, 104, /* 4536-4543 */ +103, 101, 100, 101, 99, 99, 99, 99, /* 4544-4551 */ + 99, 99, 100, 100, 102, 103, 105, 107, /* 4552-4559 */ +108, 109, 111, 113, 114, 115, 116, 118, /* 4560-4567 */ +120, 121, 122, 124, 126, 128, 132, 134, /* 4568-4575 */ +134, 136, 138, 140, 141, 143, 145, 146, /* 4576-4583 */ +148, 148, 149, 150, 150, 149, 149, 148, /* 4584-4591 */ +149, 148, 148, 148, 147, 147, 146, 146, /* 4592-4599 */ +146, 144, 142, 144, 144, 143, 143, 142, /* 4600-4607 */ +141, 140, 140, 137, 136, 134, 132, 131, /* 4608-4615 */ +129, 127, 125, 123, 121, 118, 116, 115, /* 4616-4623 */ +113, 110, 108, 107, 105, 103, 102, 101, /* 4624-4631 */ + 99, 99, 98, 98, 99, 99, 98, 99, /* 4632-4639 */ +100, 100, 100, 101, 102, 103, 104, 105, /* 4640-4647 */ +106, 108, 109, 111, 114, 114, 117, 120, /* 4648-4655 */ +122, 125, 129, 131, 134, 137, 141, 143, /* 4656-4663 */ +147, 149, 153, 155, 158, 162, 164, 166, /* 4664-4671 */ +168, 171, 171, 172, 172, 171, 170, 168, /* 4672-4679 */ +167, 163, 162, 159, 155, 152, 150, 147, /* 4680-4687 */ +143, 140, 136, 134, 130, 126, 123, 121, /* 4688-4695 */ +117, 115, 111, 108, 105, 102, 99, 97, /* 4696-4703 */ + 95, 92, 91, 90, 89, 89, 89, 88, /* 4704-4711 */ + 89, 89, 90, 92, 92, 92, 94, 95, /* 4712-4719 */ + 96, 98, 100, 102, 102, 104, 108, 110, /* 4720-4727 */ +112, 115, 118, 120, 125, 127, 131, 133, /* 4728-4735 */ +137, 141, 143, 147, 150, 154, 157, 161, /* 4736-4743 */ +164, 166, 168, 170, 174, 173, 175, 174, /* 4744-4751 */ +173, 173, 172, 170, 167, 165, 162, 160, /* 4752-4759 */ +157, 153, 149, 147, 145, 141, 138, 133, /* 4760-4767 */ +131, 127, 124, 121, 116, 113, 109, 106, /* 4768-4775 */ +102, 99, 96, 93, 90, 89, 86, 85, /* 4776-4783 */ + 84, 82, 82, 81, 84, 85, 86, 87, /* 4784-4791 */ + 89, 91, 93, 96, 99, 102, 105, 109, /* 4792-4799 */ +112, 115, 119, 123, 127, 129, 133, 137, /* 4800-4807 */ +140, 143, 146, 149, 150, 152, 153, 154, /* 4808-4815 */ +155, 157, 157, 156, 157, 156, 155, 155, /* 4816-4823 */ +154, 152, 150, 149, 148, 146, 144, 142, /* 4824-4831 */ +141, 140, 139, 137, 136, 135, 134, 132, /* 4832-4839 */ +132, 131, 131, 131, 130, 130, 128, 128, /* 4840-4847 */ +127, 126, 125, 125, 124, 124, 124, 122, /* 4848-4855 */ +122, 121, 121, 120, 120, 119, 117, 116, /* 4856-4863 */ +113, 113, 110, 109, 106, 105, 102, 101, /* 4864-4871 */ +101, 100, 100, 99, 101, 101, 101, 102, /* 4872-4879 */ +104, 106, 108, 110, 111, 112, 114, 117, /* 4880-4887 */ +119, 121, 123, 125, 128, 131, 133, 136, /* 4888-4895 */ +138, 140, 143, 146, 148, 149, 151, 152, /* 4896-4903 */ +153, 153, 155, 155, 155, 155, 154, 154, /* 4904-4911 */ +153, 152, 151, 150, 149, 149, 147, 145, /* 4912-4919 */ +144, 142, 140, 139, 138, 135, 133, 132, /* 4920-4927 */ +130, 129, 127, 127, 125, 123, 122, 121, /* 4928-4935 */ +121, 119, 117, 116, 114, 112, 111, 110, /* 4936-4943 */ +108, 107, 106, 106, 105, 104, 104, 105, /* 4944-4951 */ +104, 103, 103, 102, 102, 102, 102, 102, /* 4952-4959 */ +101, 102, 101, 101, 103, 103, 105, 106, /* 4960-4967 */ +109, 111, 113, 117, 120, 124, 127, 130, /* 4968-4975 */ +133, 137, 141, 144, 147, 150, 153, 155, /* 4976-4983 */ +158, 161, 163, 163, 165, 166, 168, 168, /* 4984-4991 */ +168, 168, 166, 166, 165, 163, 161, 160, /* 4992-4999 */ +158, 155, 152, 150, 147, 143, 140, 137, /* 5000-5007 */ +134, 131, 127, 124, 120, 118, 114, 110, /* 5008-5015 */ +106, 103, 99, 97, 94, 92, 90, 88, /* 5016-5023 */ + 87, 87, 85, 86, 87, 87, 88, 88, /* 5024-5031 */ + 89, 91, 92, 94, 97, 98, 100, 103, /* 5032-5039 */ +106, 108, 111, 115, 118, 122, 125, 127, /* 5040-5047 */ +131, 134, 137, 140, 142, 144, 147, 149, /* 5048-5055 */ +151, 153, 156, 157, 159, 161, 162, 164, /* 5056-5063 */ +164, 165, 166, 166, 167, 165, 164, 164, /* 5064-5071 */ +163, 160, 158, 155, 152, 150, 147, 144, /* 5072-5079 */ +141, 138, 136, 133, 130, 127, 125, 123, /* 5080-5087 */ +119, 117, 114, 111, 107, 104, 101, 98, /* 5088-5095 */ + 97, 95, 94, 91, 90, 91, 90, 90, /* 5096-5103 */ + 91, 91, 92, 93, 94, 95, 97, 100, /* 5104-5111 */ +102, 105, 108, 110, 113, 115, 117, 121, /* 5112-5119 */ +124, 127, 129, 132, 135, 136, 138, 140, /* 5120-5127 */ +141, 142, 144, 146, 146, 147, 147, 148, /* 5128-5135 */ +150, 150, 151, 152, 152, 153, 153, 152, /* 5136-5143 */ +151, 150, 149, 148, 146, 146, 143, 141, /* 5144-5151 */ +139, 137, 136, 134, 133, 132, 131, 130, /* 5152-5159 */ +130, 128, 128, 127, 127, 126, 125, 124, /* 5160-5167 */ +123, 122, 122, 121, 120, 119, 118, 118, /* 5168-5175 */ +117, 116, 116, 115, 114, 113, 113, 112, /* 5176-5183 */ +112, 111, 110, 109, 109, 108, 108, 108, /* 5184-5191 */ +108, 108, 108, 108, 109, 109, 110, 111, /* 5192-5199 */ +111, 112, 113, 113, 115, 116, 118, 119, /* 5200-5207 */ +121, 123, 125, 127, 130, 133, 137, 139, /* 5208-5215 */ +141, 145, 146, 148, 150, 152, 152, 154, /* 5216-5223 */ +154, 155, 155, 155, 154, 154, 153, 152, /* 5224-5231 */ +152, 150, 149, 147, 146, 144, 142, 142, /* 5232-5239 */ +140, 138, 137, 135, 133, 131, 129, 128, /* 5240-5247 */ +127, 125, 124, 123, 121, 120, 119, 118, /* 5248-5255 */ +116, 114, 113, 111, 109, 107, 106, 105, /* 5256-5263 */ +103, 102, 101, 100, 99, 99, 100, 100, /* 5264-5271 */ +101, 102, 102, 102, 104, 104, 106, 106, /* 5272-5279 */ +108, 108, 110, 113, 113, 115, 117, 119, /* 5280-5287 */ +121, 124, 127, 128, 132, 134, 136, 139, /* 5288-5295 */ +141, 143, 146, 148, 150, 152, 154, 156, /* 5296-5303 */ +157, 159, 161, 161, 162, 162, 163, 163, /* 5304-5311 */ +163, 163, 162, 162, 160, 158, 156, 154, /* 5312-5319 */ +152, 148, 146, 142, 140, 136, 134, 130, /* 5320-5327 */ +127, 124, 120, 116, 112, 108, 105, 102, /* 5328-5335 */ + 98, 96, 92, 89, 89, 87, 85, 85, /* 5336-5343 */ + 84, 84, 84, 84, 85, 86, 88, 90, /* 5344-5351 */ + 92, 94, 97, 99, 103, 106, 110, 112, /* 5352-5359 */ +116, 119, 123, 126, 130, 134, 137, 140, /* 5360-5367 */ +144, 147, 149, 152, 154, 156, 159, 161, /* 5368-5375 */ +162, 163, 164, 165, 165, 165, 165, 165, /* 5376-5383 */ +164, 164, 162, 160, 158, 157, 153, 151, /* 5384-5391 */ +149, 146, 142, 139, 136, 134, 130, 128, /* 5392-5399 */ +124, 122, 120, 118, 116, 114, 112, 110, /* 5400-5407 */ +109, 107, 106, 104, 103, 101, 101, 100, /* 5408-5415 */ + 99, 99, 100, 99, 100, 102, 102, 102, /* 5416-5423 */ +104, 105, 107, 108, 110, 111, 113, 114, /* 5424-5431 */ +114, 116, 117, 118, 119, 120, 121, 124, /* 5432-5439 */ +124, 126, 127, 130, 131, 133, 134, 136, /* 5440-5447 */ +139, 140, 141, 143, 145, 146, 148, 149, /* 5448-5455 */ +149, 150, 151, 151, 151, 152, 150, 150, /* 5456-5463 */ +149, 148, 147, 146, 145, 144, 143, 141, /* 5464-5471 */ +139, 138, 136, 134, 132, 130, 129, 127, /* 5472-5479 */ +126, 124, 123, 121, 121, 120, 119, 118, /* 5480-5487 */ +118, 117, 116, 116, 115, 115, 114, 114, /* 5488-5495 */ +114, 114, 115, 115, 115, 115, 115, 115, /* 5496-5503 */ +114, 114, 113, 113, 113, 113, 113, 113, /* 5504-5511 */ +114, 113, 113, 115, 115, 116, 116, 117, /* 5512-5519 */ +118, 118, 119, 120, 120, 120, 120, 122, /* 5520-5527 */ +123, 125, 126, 127, 129, 131, 132, 134, /* 5528-5535 */ +136, 138, 140, 142, 143, 145, 147, 148, /* 5536-5543 */ +149, 151, 151, 153, 153, 154, 155, 155, /* 5544-5551 */ +155, 155, 154, 154, 154, 152, 152, 150, /* 5552-5559 */ +149, 147, 145, 142, 139, 136, 132, 128, /* 5560-5567 */ +125, 121, 119, 115, 112, 109, 107, 105, /* 5568-5575 */ +102, 100, 98, 96, 95, 93, 93, 92, /* 5576-5583 */ + 92, 92, 92, 94, 94, 96, 97, 98, /* 5584-5591 */ +100, 101, 104, 106, 108, 112, 114, 116, /* 5592-5599 */ +119, 121, 124, 126, 128, 131, 133, 135, /* 5600-5607 */ +138, 140, 142, 144, 147, 149, 151, 153, /* 5608-5615 */ +155, 155, 157, 157, 158, 158, 158, 158, /* 5616-5623 */ +158, 156, 155, 155, 153, 152, 151, 150, /* 5624-5631 */ +148, 147, 145, 143, 141, 138, 137, 134, /* 5632-5639 */ +133, 131, 129, 127, 125, 123, 121, 119, /* 5640-5647 */ +118, 117, 114, 113, 111, 109, 107, 106, /* 5648-5655 */ +104, 101, 100, 98, 97, 97, 96, 96, /* 5656-5663 */ + 95, 96, 96, 96, 97, 98, 98, 99, /* 5664-5671 */ +100, 102, 103, 105, 107, 110, 112, 115, /* 5672-5679 */ +117, 120, 124, 128, 131, 135, 139, 144, /* 5680-5687 */ +147, 151, 154, 156, 159, 161, 163, 163, /* 5688-5695 */ +165, 165, 165, 164, 164, 164, 162, 160, /* 5696-5703 */ +159, 157, 155, 153, 151, 147, 145, 143, /* 5704-5711 */ +140, 138, 135, 132, 129, 127, 125, 122, /* 5712-5719 */ +120, 117, 115, 113, 112, 110, 108, 108, /* 5720-5727 */ +106, 105, 103, 103, 102, 102, 101, 101, /* 5728-5735 */ +101, 101, 102, 102, 102, 103, 104, 106, /* 5736-5743 */ +107, 109, 111, 112, 113, 115, 116, 118, /* 5744-5751 */ +119, 121, 122, 124, 126, 127, 129, 131, /* 5752-5759 */ +133, 133, 135, 136, 137, 138, 139, 140, /* 5760-5767 */ +141, 141, 142, 143, 142, 143, 144, 144, /* 5768-5775 */ +145, 146, 146, 147, 148, 148, 147, 146, /* 5776-5783 */ +146, 146, 145, 143, 142, 140, 138, 137, /* 5784-5791 */ +135, 133, 131, 130, 129, 126, 125, 124, /* 5792-5799 */ +123, 121, 120, 120, 118, 117, 117, 117, /* 5800-5807 */ +116, 115, 115, 114, 114, 114, 114, 114, /* 5808-5815 */ +114, 116, 116, 116, 117, 117, 117, 118, /* 5816-5823 */ +118, 119, 119, 119, 120, 120, 120, 119, /* 5824-5831 */ +119, 119, 119, 118, 118, 117, 118, 117, /* 5832-5839 */ +116, 116, 117, 116, 116, 117, 118, 119, /* 5840-5847 */ +120, 121, 123, 125, 127, 129, 131, 133, /* 5848-5855 */ +137, 139, 141, 143, 147, 147, 150, 151, /* 5856-5863 */ +153, 155, 155, 156, 157, 157, 157, 157, /* 5864-5871 */ +157, 156, 156, 154, 152, 152, 150, 147, /* 5872-5879 */ +144, 142, 139, 136, 132, 130, 126, 123, /* 5880-5887 */ +121, 117, 114, 112, 108, 106, 104, 102, /* 5888-5895 */ +100, 98, 96, 94, 93, 92, 90, 90, /* 5896-5903 */ + 89, 89, 91, 91, 91, 93, 95, 97, /* 5904-5911 */ +100, 102, 105, 108, 112, 114, 118, 122, /* 5912-5919 */ +125, 129, 133, 135, 139, 142, 144, 146, /* 5920-5927 */ +150, 152, 154, 156, 157, 158, 159, 159, /* 5928-5935 */ +159, 158, 158, 158, 157, 156, 156, 155, /* 5936-5943 */ +153, 152, 151, 148, 146, 145, 143, 141, /* 5944-5951 */ +139, 137, 136, 134, 132, 130, 128, 126, /* 5952-5959 */ +124, 121, 119, 117, 116, 114, 113, 111, /* 5960-5967 */ +111, 109, 108, 106, 106, 105, 104, 104, /* 5968-5975 */ +103, 103, 102, 102, 101, 102, 102, 103, /* 5976-5983 */ +104, 105, 106, 107, 109, 110, 110, 113, /* 5984-5991 */ +114, 116, 118, 120, 122, 123, 125, 127, /* 5992-5999 */ +128, 130, 132, 133, 135, 137, 139, 141, /* 6000-6007 */ +142, 144, 146, 148, 149, 151, 152, 152, /* 6008-6015 */ +153, 155, 155, 155, 153, 153, 153, 153, /* 6016-6023 */ +151, 151, 149, 148, 146, 144, 142, 140, /* 6024-6031 */ +138, 136, 134, 131, 130, 127, 124, 122, /* 6032-6039 */ +120, 118, 116, 114, 112, 111, 109, 108, /* 6040-6047 */ +107, 106, 104, 104, 104, 104, 104, 103, /* 6048-6055 */ +103, 105, 105, 106, 107, 109, 109, 110, /* 6056-6063 */ +112, 113, 115, 116, 118, 118, 120, 121, /* 6064-6071 */ +123, 123, 125, 126, 127, 128, 130, 132, /* 6072-6079 */ +133, 134, 136, 137, 138, 139, 140, 141, /* 6080-6087 */ +142, 142, 142, 141, 142, 142, 142, 141, /* 6088-6095 */ +141, 140, 140, 139, 139, 139, 138, 138, /* 6096-6103 */ +137, 137, 136, 135, 134, 134, 134, 132, /* 6104-6111 */ +133, 133, 133, 132, 132, 131, 131, 131, /* 6112-6119 */ +130, 130, 129, 129, 128, 128, 127, 126, /* 6120-6127 */ +126, 125, 123, 123, 120, 120, 118, 117, /* 6128-6135 */ +116, 115, 113, 113, 111, 111, 110, 109, /* 6136-6143 */ +108, 108, 108, 108, 108, 108, 108, 109, /* 6144-6151 */ +109, 110, 111, 112, 113, 115, 115, 117, /* 6152-6159 */ +119, 120, 121, 123, 126, 128, 130, 131, /* 6160-6167 */ +133, 135, 136, 138, 139, 141, 142, 144, /* 6168-6175 */ +145, 146, 147, 147, 149, 149, 150, 150, /* 6176-6183 */ +151, 151, 150, 150, 150, 150, 149, 149, /* 6184-6191 */ +149, 147, 146, 145, 143, 141, 140, 137, /* 6192-6199 */ +135, 133, 132, 130, 127, 124, 121, 119, /* 6200-6207 */ +117, 114, 112, 110, 109, 107, 105, 104, /* 6208-6215 */ +104, 102, 101, 101, 99, 99, 98, 98, /* 6216-6223 */ + 99, 98, 100, 99, 101, 101, 102, 103, /* 6224-6231 */ +105, 106, 109, 111, 113, 115, 117, 120, /* 6232-6239 */ +122, 126, 128, 130, 134, 137, 139, 142, /* 6240-6247 */ +145, 148, 150, 153, 154, 156, 157, 159, /* 6248-6255 */ +160, 161, 161, 161, 162, 160, 159, 159, /* 6256-6263 */ +157, 156, 154, 151, 149, 147, 145, 142, /* 6264-6271 */ +139, 136, 134, 130, 128, 125, 122, 119, /* 6272-6279 */ +117, 115, 112, 110, 108, 107, 105, 102, /* 6280-6287 */ +102, 101, 101, 100, 100, 101, 101, 101, /* 6288-6295 */ +102, 102, 104, 104, 106, 107, 109, 111, /* 6296-6303 */ +113, 114, 116, 118, 118, 120, 122, 123, /* 6304-6311 */ +125, 126, 127, 129, 130, 130, 131, 132, /* 6312-6319 */ +133, 133, 135, 135, 136, 138, 139, 139, /* 6320-6327 */ +140, 141, 141, 142, 143, 144, 144, 144, /* 6328-6335 */ +145, 144, 144, 144, 143, 143, 143, 142, /* 6336-6343 */ +142, 142, 141, 141, 140, 139, 138, 137, /* 6344-6351 */ +136, 134, 133, 131, 130, 128, 126, 125, /* 6352-6359 */ +124, 122, 121, 120, 118, 117, 115, 114, /* 6360-6367 */ +114, 113, 111, 111, 111, 110, 110, 110, /* 6368-6375 */ +109, 109, 109, 108, 109, 110, 111, 112, /* 6376-6383 */ +113, 114, 115, 117, 117, 119, 120, 121, /* 6384-6391 */ +122, 123, 124, 125, 126, 127, 129, 131, /* 6392-6399 */ +131, 131, 132, 133, 134, 134, 135, 136, /* 6400-6407 */ +136, 136, 136, 137, 137, 137, 137, 137, /* 6408-6415 */ +137, 137, 138, 138, 138, 138, 138, 138, /* 6416-6423 */ +138, 138, 138, 138, 138, 137, 137, 137, /* 6424-6431 */ +137, 137, 137, 136, 136, 136, 136, 136, /* 6432-6439 */ +135, 135, 134, 133, 132, 130, 130, 128, /* 6440-6447 */ +127, 124, 123, 121, 119, 118, 115, 113, /* 6448-6455 */ +112, 112, 110, 110, 109, 108, 107, 107, /* 6456-6463 */ +106, 105, 105, 104, 104, 104, 104, 105, /* 6464-6471 */ +105, 107, 108, 109, 111, 113, 115, 116, /* 6472-6479 */ +119, 121, 123, 126, 128, 130, 132, 136, /* 6480-6487 */ +137, 139, 141, 143, 145, 146, 148, 150, /* 6488-6495 */ +152, 152, 153, 154, 154, 154, 153, 153, /* 6496-6503 */ +153, 151, 150, 148, 148, 146, 145, 144, /* 6504-6511 */ +142, 141, 139, 138, 136, 134, 132, 131, /* 6512-6519 */ +129, 127, 125, 123, 122, 120, 118, 116, /* 6520-6527 */ +114, 112, 110, 108, 108, 106, 105, 104, /* 6528-6535 */ +104, 102, 102, 102, 102, 102, 102, 102, /* 6536-6543 */ +102, 102, 103, 105, 106, 106, 108, 109, /* 6544-6551 */ +111, 112, 114, 117, 118, 120, 122, 124, /* 6552-6559 */ +126, 129, 131, 133, 135, 138, 140, 142, /* 6560-6567 */ +145, 147, 149, 150, 153, 155, 156, 157, /* 6568-6575 */ +157, 158, 158, 158, 157, 157, 156, 154, /* 6576-6583 */ +153, 151, 150, 148, 145, 143, 141, 138, /* 6584-6591 */ +135, 133, 130, 127, 125, 123, 121, 117, /* 6592-6599 */ +115, 113, 112, 109, 107, 106, 105, 104, /* 6600-6607 */ +104, 103, 103, 103, 103, 103, 103, 104, /* 6608-6615 */ +105, 105, 107, 108, 108, 110, 111, 113, /* 6616-6623 */ +114, 115, 117, 118, 120, 122, 124, 126, /* 6624-6631 */ +128, 130, 131, 133, 133, 134, 135, 136, /* 6632-6639 */ +137, 137, 137, 138, 139, 139, 139, 140, /* 6640-6647 */ +140, 141, 141, 140, 140, 140, 139, 139, /* 6648-6655 */ +138, 138, 137, 137, 137, 137, 136, 135, /* 6656-6663 */ +135, 135, 134, 133, 133, 132, 132, 132, /* 6664-6671 */ +132, 130, 131, 131, 130, 130, 130, 129, /* 6672-6679 */ +129, 128, 128, 127, 126, 125, 125, 124, /* 6680-6687 */ +122, 120, 120, 119, 118, 117, 117, 116, /* 6688-6695 */ +115, 114, 113, 113, 113, 112, 112, 112, /* 6696-6703 */ +113, 113, 113, 113, 113, 114, 114, 114, /* 6704-6711 */ +115, 116, 116, 116, 118, 118, 120, 121, /* 6712-6719 */ +123, 125, 126, 127, 128, 130, 132, 133, /* 6720-6727 */ +135, 135, 137, 138, 140, 140, 142, 142, /* 6728-6735 */ +143, 144, 144, 145, 145, 145, 145, 145, /* 6736-6743 */ +145, 145, 145, 145, 144, 143, 142, 141, /* 6744-6751 */ +141, 139, 137, 136, 135, 134, 132, 130, /* 6752-6759 */ +130, 128, 126, 126, 124, 123, 122, 120, /* 6760-6767 */ +119, 118, 118, 116, 114, 114, 113, 112, /* 6768-6775 */ +112, 111, 110, 110, 110, 109, 108, 108, /* 6776-6783 */ +108, 108, 107, 107, 108, 108, 108, 108, /* 6784-6791 */ +110, 110, 111, 112, 114, 115, 116, 118, /* 6792-6799 */ +120, 122, 124, 126, 128, 131, 133, 135, /* 6800-6807 */ +137, 139, 142, 144, 146, 148, 150, 150, /* 6808-6815 */ +152, 153, 153, 155, 155, 154, 154, 154, /* 6816-6823 */ +154, 152, 151, 150, 148, 147, 145, 143, /* 6824-6831 */ +141, 139, 139, 137, 135, 133, 131, 129, /* 6832-6839 */ +127, 125, 123, 121, 119, 117, 115, 113, /* 6840-6847 */ +111, 109, 107, 105, 104, 102, 100, 100, /* 6848-6855 */ + 99, 99, 99, 99, 99, 101, 101, 102, /* 6856-6863 */ +103, 104, 106, 108, 110, 111, 113, 116, /* 6864-6871 */ +117, 121, 123, 125, 127, 129, 132, 134, /* 6872-6879 */ +136, 138, 140, 140, 142, 144, 144, 145, /* 6880-6887 */ +147, 147, 148, 148, 150, 150, 149, 150, /* 6888-6895 */ +150, 150, 149, 148, 148, 147, 145, 145, /* 6896-6903 */ +144, 142, 141, 139, 137, 136, 135, 133, /* 6904-6911 */ +132, 130, 128, 128, 126, 124, 123, 121, /* 6912-6919 */ +119, 119, 116, 114, 113, 111, 110, 110, /* 6920-6927 */ +108, 107, 106, 106, 105, 106, 106, 106, /* 6928-6935 */ +107, 108, 108, 109, 111, 112, 113, 114, /* 6936-6943 */ +116, 118, 119, 120, 122, 124, 126, 126, /* 6944-6951 */ +128, 130, 131, 132, 132, 134, 135, 135, /* 6952-6959 */ +136, 136, 137, 137, 138, 138, 138, 138, /* 6960-6967 */ +139, 139, 139, 139, 140, 139, 138, 138, /* 6968-6975 */ +138, 137, 137, 137, 135, 135, 134, 134, /* 6976-6983 */ +133, 132, 131, 129, 129, 130, 128, 128, /* 6984-6991 */ +128, 127, 127, 127, 127, 127, 126, 127, /* 6992-6999 */ +126, 126, 127, 127, 128, 128, 128, 128, /* 7000-7007 */ +128, 127, 127, 127, 127, 126, 125, 124, /* 7008-7015 */ +123, 122, 120, 119, 117, 117, 115, 113, /* 7016-7023 */ +113, 113, 113, 111, 111, 111, 111, 111, /* 7024-7031 */ +110, 110, 112, 111, 112, 113, 113, 115, /* 7032-7039 */ +116, 118, 120, 122, 123, 125, 127, 130, /* 7040-7047 */ +131, 134, 136, 139, 140, 142, 144, 146, /* 7048-7055 */ +147, 148, 150, 150, 150, 150, 150, 151, /* 7056-7063 */ +151, 150, 149, 149, 147, 147, 145, 144, /* 7064-7071 */ +142, 140, 139, 138, 136, 134, 133, 132, /* 7072-7079 */ +130, 128, 126, 124, 122, 121, 119, 117, /* 7080-7087 */ +115, 113, 111, 109, 107, 106, 105, 104, /* 7088-7095 */ +103, 103, 103, 103, 103, 103, 105, 105, /* 7096-7103 */ +106, 108, 108, 110, 111, 111, 113, 114, /* 7104-7111 */ +116, 118, 119, 120, 122, 124, 125, 127, /* 7112-7119 */ +128, 130, 131, 133, 134, 136, 138, 138, /* 7120-7127 */ +140, 141, 143, 144, 144, 146, 147, 148, /* 7128-7135 */ +148, 149, 151, 151, 152, 152, 151, 152, /* 7136-7143 */ +151, 150, 150, 148, 147, 145, 143, 141, /* 7144-7151 */ +139, 137, 134, 132, 129, 128, 124, 122, /* 7152-7159 */ +120, 117, 115, 114, 113, 111, 110, 108, /* 7160-7167 */ +107, 106, 105, 104, 104, 103, 103, 103, /* 7168-7175 */ +104, 104, 105, 105, 106, 107, 108, 110, /* 7176-7183 */ +110, 112, 112, 114, 116, 118, 120, 122, /* 7184-7191 */ +123, 125, 127, 129, 131, 131, 133, 135, /* 7192-7199 */ +136, 137, 139, 140, 140, 142, 142, 144, /* 7200-7207 */ +144, 145, 145, 146, 147, 146, 146, 147, /* 7208-7215 */ +147, 146, 146, 145, 144, 143, 141, 140, /* 7216-7223 */ +138, 136, 134, 133, 131, 130, 128, 127, /* 7224-7231 */ +125, 124, 123, 122, 121, 121, 120, 120, /* 7232-7239 */ +120, 119, 119, 119, 119, 118, 118, 118, /* 7240-7247 */ +117, 118, 117, 117, 117, 116, 116, 115, /* 7248-7255 */ +115, 115, 116, 115, 115, 115, 115, 115, /* 7256-7263 */ +115, 116, 117, 117, 118, 119, 120, 121, /* 7264-7271 */ +123, 123, 124, 126, 126, 127, 129, 130, /* 7272-7279 */ +130, 132, 133, 134, 135, 135, 135, 137, /* 7280-7287 */ +137, 138, 137, 138, 139, 138, 138, 138, /* 7288-7295 */ +139, 139, 138, 138, 137, 137, 137, 137, /* 7296-7303 */ +137, 136, 136, 136, 135, 135, 133, 133, /* 7304-7311 */ +132, 132, 131, 129, 129, 128, 128, 127, /* 7312-7319 */ +126, 125, 125, 124, 124, 123, 123, 122, /* 7320-7327 */ +122, 122, 121, 120, 120, 120, 120, 118, /* 7328-7335 */ +118, 118, 118, 118, 118, 117, 117, 116, /* 7336-7343 */ +116, 116, 116, 116, 117, 117, 117, 117, /* 7344-7351 */ +117, 117, 117, 117, 117, 118, 118, 118, /* 7352-7359 */ +118}; /* 7360-7360 */ + + +//get and set the frequency from wav conversion tool GUI +int h=0; + +//interrupt routine to play next audio sample from array in flash +void audio_sample_tomHigh () +{ + + speaker = data_h[h]/255.0;//scale to 0.0 to 1.0 for PWM + h++; + if (h>= NUM_ELEMENTS) { + h = 0; + sampletick.detach(); + myled = 0; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/touchpad.h Mon Dec 09 16:43:04 2019 +0000 @@ -0,0 +1,26 @@ +// Touch Pad Sensor with I2C +#include <mbed.h> +#include <mpr121.h> + +// Key hit/release interrupt routine + +int key_code=0; + +Mpr121 mpr121(&i2c, Mpr121::ADD_VSS); + +void fallInterrupt() +{ + int i=0; + int value=mpr121.read(0x00); + value +=mpr121.read(0x01)<<8; + // LED demo mod + i=0; + // puts key number out to LEDs for demo + for (i=0; i<12; i++) { + if (((value>>i)&0x01)==1) key_code=i+1; + } + led4=key_code & 0x01; + led3=(key_code>>1) & 0x01; + led2=(key_code>>2) & 0x01; + led1=(key_code>>3) & 0x01; +}